@charset "UTF-8";
/*
Theme Name:AGENT child
Theme URI:
Description:WordPressテーマ「AGENT」の自作子テーマです。
Template:agent_tcd033
Author:TCD
Author URI:https://tcd-theme.com/
Version:4.1
*/


/* --------------------------------------------------------------------------------
 追加ここから↓
-------------------------------------------------------------------------------- */




/*--------------------------------------
WP Job Manager 
--------------------------------------*/
/* 非表示 */
body.single-job_listing .entry-content-thumbnail, .single_job_listing .company .tagline, .single_job_listing .meta li.date-posted, ul.job_listings li.job_listing a .meta li.date {display: none;}

/* font */
.single_job_listing .company .name a {font-size: 16px;}
.widget ul.job_listings li.job_listing .position {font-size: 110%;}

/* 色分け */
ul.job_listings li.job_listing a ul.meta li.job-type {color: #fff;text-align: center;padding: 0 0 3px 10px;line-height: 1.5;font-size: 15px;}
.n-full-time, .n-part-time, .single_job_listing .meta .job-type .n-full-time, .single_job_listing .meta .job-type .n-part-time {background-color: #5472CD !important;}
.r-full-time, .r-part-time, .single_job_listing .meta .job-type .r-full-time, .single_job_listing .meta .job-type .r-part-time {background-color: #00bcd4 !important;}
.ke-full-time, .ke-part-time, .single_job_listing .meta .job-type .ke-full-time, .single_job_listing .meta .job-type .ke-part-time {background-color: #016a35 !important;}
.c-full-time, .c-part-time, .single_job_listing .meta .job-type .c-full-time, .single_job_listing .meta .job-type .c-part-time {background-color: #b2162f !important;}
.ka-full-time, .ka-part-time, .single_job_listing .meta .job-type .ka-full-time, .single_job_listing .meta .job-type .ka-part-time {background-color: #e69d03 !important;}
.m-full-time, .m-part-time, .single_job_listing .meta .job-type .m-full-time, .single_job_listing .meta .job-type .m-part-time {background-color: #f08d3c !important;}
.nc-full-time, .nc-part-time, .single_job_listing .meta .job-type .nc-full-time, .single_job_listing .meta .job-type .nc-part-time {background-color: #E91E63 !important;}
.rnc-full-time, .rnc-part-time, .single_job_listing .meta .job-type .rnc-full-time, .single_job_listing .meta .job-type .rnc-part-time {background-color: #3e9d88 !important;}

.rp4wp-related-job_listing>ul li.job_listing.job_position_featured a, .rp4wp-related-job_listing>ul li.no_job_listings_found.job_position_featured a, ul.job_listings li.job_listing.job_position_featured a, ul.job_listings li.no_job_listings_found.job_position_featured a {background: none;}

/* 急募 */
ul.job_listings li.job_listing.job_position_featured a div.position h3::after {content: "急募！";margin: 0 5px;font-size: 12px;background-color: #e90000;padding: 0 3px 2px;border-radius: 3px;color: #fff;}

/* 求人一覧・検索 */
.job_filters .search_jobs .search_submit input[type=submit] {background-color: #007CFF;border-radius: 10px;border: none;padding: 10px 0;color: #fff;transition: all .3s;}
.job_filters .search_jobs .search_submit input[type=submit]:hover {background-color: #21d7ff;color: #007CFF;}
.job_filters .search_jobs div.search_remote_position {display: none;}

body.page-id-82 ul.job_listings li.job_listing a div.position {width: 45%;}
body.page-id-82 ul.job_listings li.job_listing a .meta {width: 30%;}
@media only screen and (max-width: 767px){
body.page-id-82 ul.job_listings li.job_listing a .meta, body.page-id-82 ul.job_listings li.no_job_listings_found a .meta {line-height: 2em;font-size: 1em !important;}
body.page-id-82 ul.job_listings li.job_listing a div.position, body.page-id-82 ul.job_listings li.job_listing a div.location, body.page-id-82 ul.job_listings li.job_listing a ul.meta {float: left;width: 100%;padding: 0;text-align: left;}
}

/* 西京都病院・介護施設の求人一覧 */
/*.widget ul.job_listings li.job_listing ul.meta li {display: inline-block;}
.widget ul.job_listings li.job_listing ul.meta {line-height: 1.5em;}
.recruit-list ul.job_listings li.job_listing a ul.meta li.company {display: none;}*/

.recruit-list ul.job_listings li.job_listing a div.position .company, .recruit-list ul.job_listings li.job_listing a img.company_logo {display: none;}
.recruit-list ul.job_listings li.job_listing a div.location {width: auto;}
.recruit-list .widget ul.job_listings li.job_listing ul.meta {
    float: right;
    text-align: center;
    width: auto;
}
.recruit-list .widget ul.job_listings li.job_listing ul.meta li:after {
    padding: 0;
}
.recruit-list .widget ul.job_listings li.job_listing ul.meta li {
    display: block;
	margin: 0;
	min-width: 270px;
}
@media only screen and (max-width: 767px) {
	.recruit-list ul.job_listings li.job_listing a div.location {
        float: none;
        line-height: 2.2em;
        padding: 0;
        width: auto;
        text-align: left;
    }
	.recruit-list .widget ul.job_listings li.job_listing ul.meta {
		float: left;
	}
}

/* サイドバーウィジェット */
.sidebar-padder .widget ul.job_listings li.job_listing a ul.meta li.job-type {display: inline-block;font-size: 12px;}
.sidebar-padder .widget ul.job_listings li.job_listing a ul.meta li.location, .home .widget ul.job_listings li.job_listing a ul.meta li.location {font-size: 12px;}
.sidebar-padder .widget ul.job_listings li.job_listing a ul.meta li.location::after, .sidebar-padder .widget ul.job_listings li.job_listing a ul.meta li.company, .home .widget ul.job_listings li.job_listing a ul.meta li.company, .home .widget ul.job_listings li.job_listing a ul.meta li.location::after {display: none;}
@media only screen and (max-width: 767px){
.widget ul.job_listings li.job_listing a img.company_logo {visibility: unset;}
.widget ul.job_listings li.job_listing ul.meta {line-height: 1.3em;font-size: 1em;}
.sidebar-padder .widget ul.job_listings li.job_listing a ul.meta li.location {font-size: 1em;}
.sidebar-padder .widget ul.job_listings li.job_listing a ul.meta li.job-type {font-size: 1em;}
}

/* 個別ページ */
.single_job_listing .company .company_header {
    margin: 0;
	min-height: unset;
}




/*--------------------------------------
WPJM Related Jobs
--------------------------------------*/
/* UL 余白 */
.relatedjobs ul {margin-left: 0 !important;padding-bottom: 10px !important;}

/* フォントサイズなど */
.relatedjobs {font-family: 'Noto Sans JP', sans-serif;}
.relatedjobs .title {padding-bottom: 0;min-height: unset;}
.relatedjobs .title a {color: #009688;font-size: 160%;}
.relatedjobs, .relatedjobs ul li {border: 1px solid #d5d5d5;border-radius: 5px;}


/*--------------------------------------
求人ページ
--------------------------------------*/
/* タイトル */
.r-ttl {
    border-bottom: solid 3px #cce4ff !important;
    position: relative;
    margin: 50px 0 15px !important;
}
.r-ttl:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #5472cd;
  bottom: -3px;
  width: 20%;
}

/* アンカーメニュー */
.r-menu { margin-bottom:100px; }
.r-menu ul {
    display: flex;
	flex-wrap: wrap;
    /*justify-content: center;*/
    margin: 0 !important;
    padding: 0 !important;
    margin-left: 0 !important;
	list-style: none !important;
}
.r-menu li{
    width: calc(25% - 4px);
    text-align: center;
}
.r-menu a{
    display: block;
    padding: 10px;
    border: 1px solid #fff;
    border-right: none;
    text-decoration: none;
    color: #333;
    background: #f2f2f2;
	font-weight: bold;
	transition-duration: .3s;
}
.r-menu li:last-child a{
    border-right: 1px solid #fff;
}
.r-menu a:hover { color: #5472cd;text-decoration: none; }
@media(max-width:750px){
    .r-menu ul{
        flex-wrap: wrap;
        border-bottom: 1px solid #fff;
        border-right: 1px solid #fff;
    }
    .r-menu li{
        width: 50%;
        margin: 0;
    }
    .r-menu a{
        border-bottom: none;
    }
    .r-menu li:last-child a{
        border-right: none;
    }
}

/* サイドバーのある固定ページ下余白（西京都病院の求人・介護施設の求人） */
article.post-146.hentry, article.post-227.hentry {
    margin: 0 0 7em;
}

/* トップへ戻る */
.to_top-r {
    margin-bottom: 2rem;
    padding-top: 0;
    text-align: right;
}

/* エントリー等ボタン */
.link-btn {
    border-radius: 50px;
    transition-duration: .3s;
    font-weight: 700;
    padding: 16px 30px 18px;
    color: #fff !important;
    background-color: #5472cd;
    font-size: 16px;
    min-width: 350px;
}
.link-btn:hover {
    background-color: #f2f9ff;
    border: 1px solid #2C73AB;
}
@media screen and (max-width: 750px) {
.link-btn {
    min-width: unset;
    width: 90%;
}}

/* 問合せBOX */
.box {
    margin: 5em 0;
    background: #ffe9ec;
}
.box .box-title {
    font-size: 1.2em;
    background: #ff5c67;
    padding: 15px 5px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box p {
    padding: 15px 20px;
    margin: 0;
    text-align: center;
}

/* 求人枠 */
table.recruit {
  width: 100%;
  border-collapse: collapse;
  margin: 0 auto 24px;
  padding: 0;
  table-layout: fixed;
}
table.recruit tr {
  background-color: #fff;
  border: 1px solid #bbb;
  padding: .35em;
}
table.recruit th,
table.recruit td {
  padding: 1em 10px 1em 1em;
  border-right: 1px solid #bbb;
  white-space: normal;
}
table.recruit tr:first-child {
	font-weight: bold;
	background-color: #f9f9f9;
}
table.recruit th {
	width:30%;
	font-weight: 100;	
	background-color: #f9f9f9 !important;
}
table.recruit td {
	width:70%;
}
table.recruit td ol {
    margin-bottom: 0 !important;
}
@media screen and (max-width: 750px) {
  table.recruit  {
    border: 0;
  }
  table.recruit th, table.recruit td {
    width:100%;
	border: none;
	padding: 0.3em 10px 0.3em 1em;
}
  table.recruit th {
    background-color: #eee;
    display: block;
    border-bottom: none;
  } 
  table.recruit tr {
    display: block;
    margin-bottom: .625em;
  }  
  table.recruit td {
    border-bottom: 1px solid #bbb;
    display: block;
    position: relative;
    padding: .625em;
    border-right: none;
  }  
  table.recruit td::before {
    content: attr(data-label);
    font-weight: bold;
    position: absolute;
    left: 10px;
  }  
  table.recruit td:last-child {
    border-bottom: 0;
  }
}

/* 横スクロールできる表 */
.table-wrap {
 overflow-y: hidden;
 overflow-x: auto;
 -ms-overflow-style: -ms-autohiding-scrollbar;
 -webkit-overflow-scrolling: touch;
}
table.table {
  width: 100%;
  border-collapse: collapse;
  white-space: nowrap;
  margin: 0 auto 24px;
  padding: 0;
  /*table-layout: fixed;*/
}
table.table tr {
  background-color: #fff;
  border: 1px solid #bbb;
  padding: .35em;
}
table.table th,
table.table td {
  padding: 1em 10px 1em 1em !important;
  border-right: 1px solid #bbb;
  vertical-align: middle !important;
  line-height: 1.5em;
}
table.table tr:first-child {
    font-weight: bold;
    background-color: #f9f9f9;
}
table.table th {
    width: 30%;
    font-weight: 100;
    background-color: #f9f9f9;
}

/* 応募の流れ */
.progressbar {
  display: flex;
  flex-wrap: wrap;
}
.progressbar .item {
    position: relative;
    width: 33%;
    text-align: center;
    position: relative;
    align-items: center;
    justify-content: center;
    padding: 13px 0;
    line-height: 1.5;
    background: #F5F5F5;
    color: #999999;
}
.progressbar .item:not(:last-child)::before,
.progressbar .item:not(:last-child)::after {
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    left: 100%;
    content: '';
    border: 37px solid transparent;
    border-left: 20px solid #F5F5F5;
    margin: auto;
}
.progressbar .item:not(:last-child)::before {
    margin-left: 1px;
    border-left-color: #FFF;
}

@media screen and (max-width: 767px) {
.progressbar .item {
    font-size: 11px;
    line-height: 1.4;
    padding: 10px 0;
}
.progressbar .item:not(:last-child)::before,
.progressbar .item:not(:last-child)::after {
    border-width: 25px;
    border-left-width: 12px;
}
}

/* active */
.progressbar .item.active {
    z-index: 1;
    background: #3aabd2;
    color: #FFF;
}
.progressbar .item.active:not(:last-child)::after {
    border-left-color: #3aabd2;
}
.progressbar .item.active:not(:last-child)::before {
    border-left: none;
}

/* コメントアウト */
span.comout {display: none;}



/*--------------------------------------
先輩からのメッセージ
--------------------------------------*/
/* 改行 */
.spbr {
  display: none;
}
.pcbr {
    display: block;
    height: 0;
    width: 0;
}
@media only screen and (max-width: 767px){
  .spbr {
    display: block;
    height: 0;
    width: 0;
  }
  .pcbr {
  display: none;
  }
}

/* SP並び順 */
@media only screen and (max-width: 767px){
.sp-sort {
  display: flex;
  flex-wrap: wrap; 
}
.item1 {
    order: 1;
    margin-bottom: 30px !important;
}
.item2 {
    order: 2;
}}

.single-staff .staff_name, .single-staff .staff_header_image { display: none;}
.single-staff h4 {
    font-weight: bold;
    margin-top: 30px;
    border-bottom: 1px dotted #9a9a9a;
    padding-bottom: 8px;
    line-height: 1.5;
	color: #c94e4e;
}
.single-staff .separator2 {
    margin-top: 0;
}
@media only screen and (max-width: 1200px){
.staff_column_margin {
    margin-bottom: 50px !important;
}}
.single-staff .headline2 {
    padding-top: 50px;
    font-weight: 500 !important;
}
@media only screen and (max-width: 767px){
.single-staff .headline2 {
    padding-top: 0;
}}
.single-staff .liner {
    font-family: "Droid Sans", 游明朝, YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", HG明朝E, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
	text-shadow: 2px 2px #222;
}
@media only screen and (max-width: 1200px){
.single-staff .liner {
    font-size: 30px;
}}
@media screen and (max-width: 479px){
.single-staff .liner {
    font-size: 24px !important;
}}

/* 写真 */
.corner::before,
.corner::after {
	content: '';
	position: absolute;
	transform: rotate(-35deg);
	width: 70px;
	height: 25px;
	background-color: #fff;
	z-index: 1;
}
.corner::before {
	top: -10px;
    left: -10px;
    border-bottom: 1px solid #aaa;
    box-shadow: 0 10px 5px -8px rgb(0 0 0 / 30%);
}
.corner::after {
	bottom: -10px;
    right: -10px;
    border-top: 1px solid #aaa;
    box-shadow: 0 -10px 5px -8px rgb(0 0 0 / 30%);
}

/* SPヘッダーライン */
@media only screen and (max-width: 1200px) {
  .single-staff #agent-header-outer {
    border-bottom: 1px solid lightgrey;
}}

/* 余白 */
.staff-mt {
    margin-top: 55px;
}
@media only screen and (min-width: 480px){
  .staff-mt {
    margin-top:110px;
}}
.staff-pt {
    margin-top: 20px;
}
@media only screen and (max-width: 1200px){
  .staff-pt {
    margin-top: 0;
}}

/* ページリンク */
.staff-link {
    background: #f9f9f9;
    padding: 50px;
	padding-bottom: 50px !important;
    border-top: 5px solid #d7d7d7;
}
@media only screen and (max-width: 991px) {
  .staff-link {
    padding: 20px;
	padding-bottom: 30px !important;
}}

/* アーカイブ */
.post-type-archive-staff h2.headline {
	position: relative;
	margin-top: 50px;
}
.post-type-archive-staff h2.headline::before {
  position: absolute;
  top: -100px;
  left: 20%;
  content: url(./img/staff_younger.png);
}
@media only screen and (max-width: 767px){
.post-type-archive-staff h2.headline::before {
  top: -90px;
  left: 20%;
  content: url(./img/staff_younger_sp.png);
}}
@media only screen and (max-width: 480px){
.post-type-archive-staff h2.headline::before {
  top: -90px;
  left: 0;
  content: url(./img/staff_younger_sp.png);
}}


/*--------------------------------------
HOME
--------------------------------------*/
/* 非表示section */
.home .section6 {display: none;}

/* section2 intro */
.section2-intro1 {margin-bottom: 80px;}
.section2-intro1 .flex-row-reverse {display: flex;flex-wrap: wrap;flex-direction: row-reverse!important;}
h2.section2-intro_title {font-size: 3rem !important;line-height: 130% !important;margin: 0 0 0.8rem !important;}
.section2-intro_title span {display: block;text-transform: uppercase;color: #09c1c1;font-size: 2rem;}
.section2-Intro_title {font-size: 1.5rem;font-weight: 700;padding: 0 15px 15px 0;}
@media only screen and (max-width: 1200px){
h2.section2-intro_title {margin-top: 30px !important;}
.section2-intro1 {margin-bottom: 30px;}}

/* INFORMATION */
.topPagePosts {
  border-top: 1px solid #aaa;
  margin-bottom: 28px;
}
.topPagePosts__item {
  border-bottom: 1px solid #aaa;
  padding: 15px 8px 3px;
  position: relative;
  margin-bottom: 0;
}
.topPagePosts__item dt {
    font-weight: normal;
}
.topPagePosts__category {
  background: #999;
  color: #fff;
  padding: 2px 4px;
  font-size: .8em;
}
.topPagePosts__category a {
  color: #fff;
}
.topPagePosts__category a:hover {
  color: #ffeb3b;
}
.topPagePosts__title {
  font-weight: bold;
  padding: 10px 0;
  font-size: 18px;
}
.topPagePosts__title a{
  display: block;
}
.topPagePosts__title::after {
  content: '';
  width: 8px;
  height: 8px;
  border: 1px solid;
  border-color: #666 #666 transparent transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  display: inline-block;
  text-align: right;
  position: absolute;
  top: 45%;
  right: 1%;
}
@media screen and (max-width: 991px){
.topPagePosts__item dt {
    font-size: 14px;
}
.topPagePosts__title {
    font-size: 16px;
}}


/* recruit(weight) */
.section-4-recruit {
    background-color: #fff;
    padding: 0 20px 20px;
    border-radius: 10px;
}
.home ul.job_listings li.job_listing a ul.meta li.job-type {
    font-size: 12px;
	display: inline-block;
}
.section-4-ttl {
	font-size: 18px;
    font-weight: bold;
    line-height: 1.5;
    padding: 20px 0 5px;
}
.section-4-ttl span {
	display: flex;
	align-items: center;
	color: #498ee0;
	font-size: 14px;
	text-transform: uppercase;
}
.section-4-ttl span::before {
	content: '';
	display: inline-block;
	margin-right: 20px;
	width: 40px;
	height: 1px;
	background-color: #498ee0;
}




/*--------------------------------------
ヘッダー
--------------------------------------*/
/* rogo */
#logo_image {
    max-width: 250px !important;
}
#logo_image h1#logo img {
    max-width: 100% !important;
}
@media (min-width: 1200px) {
	/* ヘッダーwidth100％ */
	#agent-header-outer .container {width: 100% !important;}}
@media (max-width: 1400px) {
	/* ヘッダー文字サイズ */
	#agent-header-outer .link-button-azure_top {font-size: 12px;}
	.agent-header-menu, .footer-menu {font-size: 14px !important;}}


/*--------------------------------------
フッダー
--------------------------------------*/
/* フッダー上余白 */
.home .recruit-splash {margin-top:0;}
.recruit-splash {margin-top: 200px;}

/* フッダー求人サイトマーク */
span.ft-sub {
    display: block;
    border: 1px solid #e9668b;
    width: 100px;
    margin: 5px auto 0;
    color: #e9668b;
    padding: 2px 5px;
    font-size: 12px;
}
@media (min-width: 768px){
span.ft-sub {
    display: unset;
    width: 150px;
    margin: 0 10px;
    padding: 2px 10px;
    font-size: 14px;
}}

/* フッダーメニュー */
.footer_menu_mobile .footer_widget.widget_nav_menu ul li {font-size: 14px !important;}

/* フッダーお問合せ */
  .ft-contact-ttl {
    padding: 5px 0 11px;
    font-size: 16px;
    line-height: 1.5;
    border-bottom: 1px solid #a9a9a9; }
  .ft-contact-tel {
    display: inline-block;
    margin: 0 0 3px;
    padding: 0 0 0 48px;
    color: #e4002b;
    font-size: 28px;
    font-weight: bold;
    line-height: 1.72;
    background: url(./img/tel_ico.png) no-repeat left center; }
  .ft-contact-web {
    max-width: 400px;
    margin: 18px auto 11px; }
  .ft-contact-web a {
    position: relative;
    display: block;
    padding: 6px 0 6px 20px;
    font-size: 16px;
	font-weight: bold;
    line-height: 2;
    border: 1px solid #39abd2;
    border-radius: 23px;
	transition-duration: .3s;
    background: url(./img/mail_ico.png) no-repeat 80px center; }
  .ft-contact-web a:hover {
    background-color: #ccf2ff;}
  .ft-contact-web a:after {
    position: absolute;
    top: 50%;
    right: 25px;
    content: '';
    text-indent: -99999px;
    width: 16px;
    height: 16px;
    margin: -7px 0 0;
    background: url(./img/arrow_ico.png) no-repeat center center; }
  .ft-contact-txt {
    color: #666;
    font-size: 12px;
    letter-spacing: 0.1em; }

@media screen and (max-width: 768px){
.ft-contact-web {
    max-width: 100%;
	margin: 4vw auto 2.4vw auto;
}
.ft-contact-web a {
    position: relative;
    display: block;
    padding: 0vw 0vw 0vw 7.73333vw;
    font-size: 3.73333vw;
    line-height: 10.66667vw;
    letter-spacing: 0.26667vw;
    border: solid #39abd2;
    border-width: 0.26667vw;
    border-radius: 5.33333vw;
    background: url(./img/mail_ico.png) no-repeat;
    background-position: 13.6vw center;
    background-size: 6.4vw auto;
}
}

/* footerメニュー
.ft-sp-menu ul{
    list-style: none;
    display: flex;
    padding: 0;
	margin: 0;
}
.ft-sp-menu li{
    width: 100%;
    display: flex;
    margin: 0;
}
.ft-sp-menu a{
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 100%;
    padding: 20px;
	font-weight: bold;
	color: black;
}
.ft-sp-menu a:hover{
	color: #5472CD;
}
.ft-sp-menu li+li{
    position: relative;
}
.ft-sp-menu li+li::before{
    content: "";
    display: block;
    height: 1em;
    border-left: 1px solid #999;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}

@media(max-width:750px){
	.ft-sp-menu a{padding: 10px 5px;font-size: 14px;}
} */

/* 施設メニュー */
/* 背景画像を表示 */
.ft-group {
  letter-spacing: 1.2px;
  background-color: #444444;
}
.ft-group .bg-image {
  background: url(./img/r-nkh-p01.jpg) no-repeat center;
  background-size: cover;
  height: 330px;
  position: relative;
}
/* 画像を暗くするオーバーレイ */
.ft-group .bg-image::before {
  content: '';
  background-color: rgba(0, 0, 0, 0.4);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}
/* テキストを中央寄せ */
.ft-group .bg-image .text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  width: 100%;
  text-align: center;
  padding: 0 20px;
}
.ft-group .text a.map { color: yellow;text-decoration: none; }
.ft-group .text a.map:hover { color: #e9668b;text-decoration: none; }
.ft-group-link {
    max-width: 400px;
    margin: 18px auto 11px;
}
.ft-group-link a {
    position: relative;
    display: block;
    padding: 6px 0 6px 20px;
    font-size: 16px;
	font-weight: bold;
    line-height: 2;
    border: 1px solid #39abd2;
    border-radius: 23px;
	transition-duration: .3s;
    background: url(./img/camera_ico.png) no-repeat 50px center;
	background-color: #fff;
}
.ft-group-link a:hover {
    background-color: #ccf2ff;
}
.ft-group-link a:after {
    position: absolute;
    top: 50%;
    right: 25px;
    content: '';
    text-indent: -99999px;
    width: 24px;
    height: 24px;
    margin: -12px 0 0;
    background: url(./img/link-ico.png) no-repeat center center;
}
.ft-group-ttl {
    padding: 5px 0 11px;
    font-size: 16px;
    line-height: 1.5;
    border-bottom: 1px solid #a9a9a9;
	font-weight: bold;
}
@media screen and (max-width: 768px){
.ft-group .bg-image {
	width: 100%;
	height: 280px;
}
.ft-group-link {
    max-width: 100%;
	margin: 4vw auto 2.4vw auto;
}
.ft-group-link a {
    position: relative;
    display: block;
    padding: 0vw 0vw 0vw 7.73333vw;
    font-size: 3.73333vw;
    line-height: 10.66667vw;
    letter-spacing: 0.26667vw;
    border: solid #39abd2;
    border-width: 0.26667vw;
    border-radius: 5.33333vw;
    background: url(./img/camera_ico.png) no-repeat;
    background-position: 13.6vw center;
    background-size: 6.4vw auto;
	background-color: #fff;
}}

/* GROUPメニュー */
.ft-group .link {padding: 10px 20px;color: #fff;}
.ft-group .link a.insta-link {vertical-align: bottom;}

.facility ul {
	margin: 0;
    padding: 0;
	display: block;
}
.facility li{
    list-style: none;
    margin-bottom: 10px;
    float: left;
}
.facility li:nth-child(odd) {
	width: 60%;
}
.facility li:nth-child(even) {
	width: 40%;
}
.facility li span {
    font-size: 12px;
    display: inline-block;
}
.ft-group-ttl a, .facility li a {color: #83d5f1;font-weight: bold;}
.ft-group-ttl a:hover, .facility li a:hover { color: #e9668b;}

@media (min-width: 1200px) {
    .ft-group .navi {
        padding-top: 10px;
    }
}
@media screen and (max-width: 1199px) {
    .facility li:last-child {
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 768px){
	.ft-group {padding-bottom: 20px;}
	.facility li:nth-child(odd), .facility li:nth-child(even) {
		width: 100%;
	}
	.facility li:last-child {
		margin-bottom: 0;
	}
}

/* returntop */
.returntop {
    display: none;
}




/*--------------------------------------
MW WP FORM
--------------------------------------*/

.cform th {
	border: none;
    width: 30%;
    border-bottom: solid 1px #d6d6d6 !important;
    text-align: right;
    padding-right: 60px !important;
}

.cform td {
	border: none;
    line-height: 200%;
    border-bottom: solid 1px #d6d6d6 !important;
    padding: 20px 5px !important;
}

.cform th.noborder, .cform td.noborder {
    border-bottom: none !important;
	padding-bottom: 0 !important;
}

.cform {
	border: none !important;
	width: 100%;
}

#primary .page .entry-content table.cform tbody tr:nth-child(2n) {
    background: none !important;
}

.cform input[type=submit] {
	display: inline-block;
	font-size: 20px;
	padding: 10px 30px;
	text-decoration: none;
	background: #ff8f00;
	color: #FFF;
	border-bottom: solid 4px #B17C00;
	border-radius: 3px;
}

.cform option,
.cform textarea,
.cform input[type=text],
.cform input[type=email],
.cform input[type=search],
.cform input[type=url] {
	width: 100%;
}

.cform span.mwform-tel-field input[type=text], .cform span.mwform-age-field input[type=text] { width:20% !important; }
.cform span.mwform-zip-field input[type=text] { width:20% !important; }

.cform span.mwform-checkbox-field.vertical-item {
    white-space: nowrap;
    padding-right: 10px;
    padding-bottom: 5px;
    display: inline-block;
}

.cform input[type=text], .cform textarea, .cform input[type=email] {
    border-radius: 7px;
    font-size: 14px;
    border: 1px solid #d8d8d8;
    padding: 5px 10px;
    outline: none;
}

.required-srt {
	font-size: 8pt;
	padding: 5px;
	background: #ce0000;
	color: #fff;
	border-radius: 3px;
	margin-left: 10px;
	vertical-align: middle;
}

.cform ::placeholder {
  color: #ccc;
}

.mw_wp_form .horizontal-item, .mw_wp_form .horizontal-item + .horizontal-item {
    white-space: nowrap;
    padding-right: 10px;
	margin-left: 0 !important;
}

@media only screen and (max-width:767px) {
	.cform th,
	.cform td {
		width: 100%;
		display: block;
		padding: 15px 0 0 5px !important;
	}
	.cform th {
		border-bottom: none !important;
		text-align: left;
	}
	.cform td {
		padding-bottom: 20px !important;
	}
	.cform span.mwform-tel-field input[type=text] {
		width: 30% !important;
	}
}

/* 送信・戻るボタン */
.return-btn input {
    background: #aaa;
	cursor: pointer;
    border: none;
	width: 40%;
	max-width: 150px;
	min-width: 100px;
	margin: 30px auto;
	display: block;
    color: #FFF;
    letter-spacing: 1px;
    text-transform: uppercase;
    line-height: 1;
    text-align: center;
    padding: 15px 5px;
    border-radius: 2px;
    box-shadow: 0 -1px 0 0 rgb(0 0 0 / 10%) inset;
    text-decoration: none;
    transition: all 0.4s ease;
	font-size: 100%;
    font-weight: normal;
}
.return-btn input:hover {
    opacity: 0.8;
    border: none;
}
.submit-btn input {
	background: #00142c;
	width: 60%;
	max-width: 550px;
	min-width: 220px;
	margin: 30px auto;
	display: block;
	border: 1px #00142c solid;
	text-align: center;
	padding: 15px 5px;
	color: #fff;
	letter-spacing: 1px;
	transition: all 0.4s ease;
	font-size: 100%;
    font-weight: normal;
}
.submit-btn input:hover {
	background: #fff;
	border: 1px solid #00142c;
	color: #00142c;
}

/* recaptcha */
.grecaptcha-badge { bottom: 60px !important; }

/* 送信完了画面 */
.thanks-box {
    border: 1px solid #818181;
    border-radius: 20px;
    padding: 30px;
    max-width: 900px;
    margin: 0 auto;
}

/* デフォルトを消す */
.entry-content table.cform th {
    background: none;
}
.entry-content table.cform td, .entry-content table.cform th {
    border: none;
}


/*--------------------------------------
CONTACT FORM
--------------------------------------*/
#contact .form {
	width: 100%;
	max-width: 970px;
    margin: 0 auto 0 0 !important;
}

/*コンタクトフォーム*/
.wpcf7 {
    background: none !important;
    border: none !important;
	margin-bottom: 10em !important;
}
span.wpcf7-list-item {
    display: inline-block !important;
	  margin: 0 1.5em 0 0 !important;
}
.wpcf7 p, .wpcf7 .wpcf7-list-item-label {
    font-size: 16px !important;
}
.wpcf7 form {
    margin: 0 !important;
}

/* table_form */
.wpcf7 .table_form {
  color: #666;
  font-size: 16px;
}
.wpcf7 .table_form a {
  margin: 0;
  padding: 0;
  text-decoration: underline;
  color: inherit;
  transition: opacity .25s;
}
.wpcf7 .table_form a:hover {
  opacity: .5;
  transition: opacity .25s;
}
.wpcf7 .table_form div.form__row {
  display: flex;
  margin: 0;
  padding: 0;
  border-top: 1px solid #efe8e5;
}
.wpcf7 .table_form div.form__row:first-child {
    border-top: none;
}
.wpcf7 .table_form div.form__row.row-privacy,
.wpcf7 .table_form div.form__row.row-submit {
  display: block;
  border-top: 0;
  margin-top: 1em;
  text-align: center;
}
.wpcf7 .table_form p.form__label,
.wpcf7 .table_form p.form__body {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
.wpcf7 .table_form p.form__label {
  width: 30%;
  padding: 1.5em 1em 1em;
}
.wpcf7 .table_form p.form__body {
  width: 70%;
  padding: 1.5em 1em 1em;
}
.wpcf7 .table_form div.form__row.row-privacy .form__body,
.wpcf7 .table_form div.form__row.row-submit .form__body {
  width: 100%;
  font-size: 90% !important;
}
.wpcf7 .table_form p.form__label label {
  position: relative;
  margin: 0;
  padding: 0;
  padding-left: 44px; 
  box-sizing: border-box;
}
.wpcf7 .table_form p.form__label label::after {
  content: "任意";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 36px;
  margin: 0;
  padding: 0 5px;
  border-radius: 2px;
  background-color: #f1f1f1;
  color: #929292;
  font-size: 11px;
  text-align: center;
  box-sizing: border-box;
}
.wpcf7 .table_form p.form__label.is-required label {
  position: relative;
}
.wpcf7 .table_form p.form__label.is-required label::after {
  content: "必須";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 36px;
  padding: 0 5px;
  background-color: #F44336;
  color: #fff;
  font-size: 11px;
  text-align: center;
}
/* テキストフィールド */
.wpcf7 .table_form input[type=text],
.wpcf7 .table_form input[type=tel],
.wpcf7 .table_form input[type=email],
.wpcf7 .table_form textarea {
  width: 100%;
  margin: 0;
  padding: .5em 1em;
  border: 1px solid #c4bbb8;
  border-radius: 4px;
  box-shadow: none;
  background-color: #fefefe;
  color: inherit;
  font-family: inherit;
  font-weight: inherit;
  font-size: 16px;
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  line-height: 1.5;
}
/* 年齢・郵便番号 */
.wpcf7 .table_form span.age-field input[type=text], .wpcf7 .table_form span.zip-field input[type=text] {
	width:20% !important;
}


/* 送信ボタン */
.wpcf7 .table_form .submit-btn, .wpcf7 .table_form .back_button {
  position: relative;
  width: 320px;
  height: 65px;
  max-width: 100%;
  margin: 0;
  padding: 0;
  margin-left: auto;
  margin-right: auto;
}
.wpcf7 .table_form input[type="submit"], .wpcf7 .table_form input[type="button"] {
  cursor: pointer;
  width: 320px;
  height: auto;
  max-width: 100%;
  padding: 18px;
  box-shadow: none;
  border: 1px #ee3c00 solid;
  border-radius: 8px;
  background-color: #ee3c00;
  color: #fff;
  font-size: 18px;
  text-align: center;
  box-sizing: border-box;
  transition: all .25s;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.wpcf7 .table_form input[type="submit"]:disabled, .wpcf7 .table_form input[type="button"]:disabled {
  cursor: not-allowed;
  box-shadow: none!important;
  border: 1px solid #f8f8f8!important;
  background-color: #f8f8f8!important;
  color: #929292!important;
}
.wpcf7 .table_form input[type="submit"]:hover, .wpcf7 .table_form input[type="button"]:hover {
  box-shadow: 0 0 2px 2px rgba(133, 112, 92, 0.5);
  background-color: #fff;
  color: #6c5d2f;
  transition: all .25s;
}
.wpcf7 .table_form input[type="submit"]:focus, .wpcf7 .table_form input[type="button"]:focus {
  outline: 0;
  border: 1px #9e2800 solid;
  box-shadow: 0 0 2px 2px rgba(133, 112, 92, 0.5);
}
.wpcf7 .table_form .back_button {
    background-color: #ccc !important;
    border: none !important;
}

@media only screen and (max-width: 767px) {
#contact .form {
    width: 98%;
    margin: 0 auto !important;
}
  .wpcf7 .table_form div.form__row {
    display: block;
  }
  .wpcf7 .table_form p.form__label {
    width: 100%;
    padding: 1.5em 0 0;
  }
  .wpcf7 .table_form p.form__body {
    width: 100%;
    padding: 1em 0 1.5em;
  }
}

/* プレースホルダーカラー変更 */
.wpcf7 .table_form input::placeholder, .wpcf7 .table_form textarea::placeholder {
  color: #ccc;
}

/* 青枠削除 */
.wpcf7 form .wpcf7-response-output {
    border: 2px solid #fff;
}

/*reCAPTCHAのロゴを非表示*/
.grecaptcha-badge {
	visibility: hidden; 
}





/*--------------------------------------
共通
--------------------------------------*/
/* container */
@media (min-width: 1200px){
.container {
    width: 1180px;
}}

/* ページトップ */
#page-top{
    position:fixed;
    right:16px;
    bottom:16px;
    display: none;
    z-index:9999;
}
#page-top a{
    color:#fff;
    padding:10px;
    text-decoration:none;
    display:block;
    cursor:pointer;
    text-align:center;
    background:#aaa;
    line-height:100%;
    border-radius: 5px;
    -webkit-border-radius: 5px;
     -moz-border-radius: 5px; 
}
#page-top a:hover{
    background:#8b8b8b;
    -webkit-transition:all 0.3s;
    -moz-transition:all 0.3s;
    transition:all 0.3s;
}
@media screen and (max-width: 479px){#page-top{display: none !important;}}


/* color */
.white{color:#fff !important;}
.red{color: #f44336 !important;}

/* bg */
.bg-white{background-color:#fff}
.bg-gray{background-color:#f2f2f2;}

/* 余白 */
.mb200{margin-bottom:200px !important}

.p15 { padding: 15px !important; }
.pt15 { padding-top: 15px !important; }
.pr15 { padding-right: 15px !important; }
.pb15 { padding-bottom: 15px !important; }
.pl15 { padding-left: 15px !important; }

.p20 { padding: 20px !important; }
.pt20 { padding-top: 20px !important; }
.pr20 { padding-right: 20px !important; }
.pb20 { padding-bottom: 20px !important; }
.pl20 { padding-left: 20px !important; }

.p25 { padding: 25px !important; }
.pt25 { padding-top: 25px !important; }
.pr25 { padding-right: 25px !important; }
.pb25 { padding-bottom: 25px !important; }
.pl25 { padding-left: 25px !important; }

.p30 { padding: 30px !important; }
.pt30 { padding-top: 30px !important; }
.pr30 { padding-right: 30px !important; }
.pb30 { padding-bottom: 30px !important; }
.pl30 { padding-left: 30px !important; }

.p35 { padding: 35px !important; }
.pt35 { padding-top: 35px !important; }
.pr35 { padding-right: 35px !important; }
.pb35 { padding-bottom: 35px !important; }
.pl35 { padding-left: 35px !important; }

.p40 { padding: 40px !important; }
.pt40 { padding-top: 40px !important; }
.pr40 { padding-right: 40px !important; }
.pb40 { padding-bottom: 40px !important; }
.pl40 { padding-left: 40px !important; }

.p45 { padding: 45px !important; }
.pt45 { padding-top: 45px !important; }
.pr45 { padding-right: 45px !important; }
.pb45 { padding-bottom: 45px !important; }
.pl45 { padding-left: 45px !important; }

.p50 { padding: 50px !important; }
.pt50 { padding-top: 50px !important; }
.pr50 { padding-right: 50px !important; }
.pb50 { padding-bottom: 50px !important; }
.pl50 { padding-left: 50px !important; }

.p55 { padding: 55px !important; }
.pt55 { padding-top: 55px !important; }
.pr55 { padding-right: 55px !important; }
.pb55 { padding-bottom: 55px !important; }
.pl55 { padding-left: 55px !important; }

.p60 { padding: 60px !important; }
.pt60 { padding-top: 60px !important; }
.pr60 { padding-right: 60px !important; }
.pb60 { padding-bottom: 60px !important; }
.pl60 { padding-left: 60px !important; }

.p65 { padding: 65px !important; }
.pt65 { padding-top: 65px !important; }
.pr65 { padding-right: 65px !important; }
.pb65 { padding-bottom: 65px !important; }
.pl65 { padding-left: 65px !important; }

.p70 { padding: 70px !important; }
.pt70 { padding-top: 70px !important; }
.pr70 { padding-right: 70px !important; }
.pb70 { padding-bottom: 70px !important; }
.pl70 { padding-left: 70px !important; }

.p75 { padding: 75px !important; }
.pt75 { padding-top: 75px !important; }
.pr75 { padding-right: 75px !important; }
.pb75 { padding-bottom: 75px !important; }
.pl75 { padding-left: 75px !important; }

.p80 { padding: 80px !important; }
.pt80 { padding-top: 80px !important; }
.pr80 { padding-right: 80px !important; }
.pb80 { padding-bottom: 80px !important; }
.pl80 { padding-left: 80px !important; }

/* width */
.w-100 { width : 100% !important;}
.mw-100 { max-width : 100% !important;}
.mh-100 { max-height : 100% !important;}
.vw-100 { width : 100vw !important;}
.vh-100 { height : 100vh !important;}
.min-vw-100 { min-width : 100vw !important;}
.min-vh-100 { min-height : 100vh !important;}



