/* 共通 */
@media screen and (max-width: 600px){
#wpadminbar {
    position: fixed !important;
}
}
body {
  color: #363636;
}

@media screen and (max-width: 768px){
	.cta_btn {
		bottom: 2px;
	}
}

.section_title h2 {
  color: #D8EFEE;
	font-family: sans-serif;
}
.section_title h2 span strong {
   color: #86C6C3;
}

/* cta_btn */
.cta_btn a {
  background-color: #86C6C3;
}

/* cta */
.flex.cta_content {
  background: rgb(239,170,170);
background: linear-gradient(60deg, rgba(239,170,170,1) 0%, rgba(255,175,64,1) 50%, rgba(242,214,60,1) 100%);
}

.flex.cta_content_right h2{
	border-bottom: none;
	margin-bottom: 0;
}

.cta_content_links a span {
  color: #FFFFFF;
}
.cta_content_links a span::before {
	background-color: #76B6DE;
}


/* header */

.header_btn {
  background-color: #76B6DE;
}

.header_inner .header_nav{
	background: rgb(82,181,226);
    background: linear-gradient(180deg, rgba(82,181,226,1) 0%, rgba(72,196,183,1) 100%);
	
}

.header_inner .header_nav ul.cta li a{
	font-weight: 600;
}

.header_inner .header_nav ul.cta li a.header_tel {
	background-color:#FFFFFF;
	border:2px solid #CC817F;
	
}

.header_inner .header_nav ul.cta li a.header_reserve {
	background-color: #FFFFFF;
	border:2px solid #CC817F;
}


/* mv */
.mv_text_width {
  margin-left: 28px;
  margin-top:60px;
  position: relative;
  z-index: 2;
}
.mv_text_width p {
  font-size: 3.4rem;
  color: #363636;
  letter-spacing: 0.17em;
	font-weight: 800;
	line-height: 1.76em;
}

.mv_text_width p > span{
	margin-top: .5em;
	display: block;
	font-size: 2rem;
	padding-left: .5em;
	font-weight: 500;
	line-height: 1.45em;
}
.mv_text_width::before {
  content: "";
  display: block;
  width: 425px;
  height: 145px;
  background-image:url("../../img/fv_deco.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  position: absolute;
  left:-16px;
  top: 0;
  transform: translate(0,-100%);
}
.mv_text_width .flex {
  display: flex;
  width: 555px;
  justify-content: space-between;
  margin-top: 100px;
  margin-left: 60px;
}
.mv_text_width .flex figure {
  width: 173px;
  height: auto;
  position: relative;
}
.mv_text_width .flex figure img {
  width: 100%;
  height: auto;
  position: relative;
  z-index: 1;
}
.mv_text_width .flex figure p {
  color: #fff;
  font-size: 2.3rem;
  letter-spacing: 0.17em;
  line-height: 1.5;
  white-space: nowrap;
  text-align: center;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  z-index: 2;
  padding-top: 0.8em;
  padding-left: 0.2em;
}
@media screen and (max-width: 1480px) {
  .mv_text_width::before {
    left: -24px;
  }
}
@media screen and (max-width: 768px) {
  .mv_text_width {
    width: 100%;
    margin: 30px 0 -20px 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  .mv_text_width::before {
    width: 100%;
    height: 148px;
    left: -10px;
    top: 14px;
  }
  .mv_text_width p {
    font-size: 3rem;
    line-height: 1.75;
  }
  .mv_text_width .flex {
    width: 374px;
    margin: 0;
    margin-top: 32px;
  }
  .mv_text_width .flex figure {
    width: 115px;
  }
  .mv_text_width .flex figure p {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 490px) {
  .mv_text_width {
    align-items: flex-start;
  }
  .mv_text_width .flex {
    width: 100%;
  }
  .mv_text_width .flex figure {
    width: calc(100% / 3 - 10px);
  }
  .mv_text_width p {
    font-size: 7vw;
  }
}

/* features */
.features .flex article .num {
  color: #86C6C3;
}
.features .flex article .card h3 {
  color: #747474;
}
.features .flex article .card h3 {
  color: #747474;
}

/*message*/
#message .flex .text a {
	background-color:#86C6C3;
}
#message .md-contents .doctor_wrap .md-close{
	background-color: #30B2AC;
	
}

#message .md-contents .doctor_contents .doctor_contents_item ol li{
	display: flex;
}
#message .md-contents .doctor_contents .doctor_contents_item ol li::before{
	content: "・";
	display: block;
	width: 1em;
	line-height: 2.25;
	font-size: 1.6rem;
}
#message .md-contents .doctor_contents .doctor_contents_item ol li p{
	width: calc(100% - 1em);
}

@media screen and (max-width: 490px){
	#message .md-contents .doctor_contents .doctor_contents_item ol li::before{
		font-size: 3.5vw;
	}
}

@media screen and (max-width: 490px){
	#message .md-contents .doctor_contents .doctor_contents_item ol li::before{
		font-size: 3.5vw;
	}
}

/* flow */

.flow .section_title{
	margin-bottom: 88px;
}
.flow article .text h3 span {
  color: #86C6C3;
}


/* case */

.md-inner {
  background-color: #76B6DE;
}
.case_slide_wrap .swiper-button-next, .case_slide_wrap .swiper-button-prev{
	background: #86C6C3;
}
.case_slide_wrap .swiper-pagination-bullet{
	background: #86C6C3;
}

/* plan */
.tab_btn.active{
	color: #30B2AC;
	border-bottom: 3px solid #30B2AC;
}
.tab_btn.active span{
	color: #30B2AC;
}
.tab_container{
	background-color:rgba(196,234,232,.38);
}
.tab_content .text h3{
	color: #30B2AC;
}

/* faq */

.faq_head h3::before {
  color: #86C6C3;
}
.faq_swich::before {
  background-color: #86C6C3;
}
.faq_swich::after {
  background-color: #86C6C3;
}

/* footer */
footer {
  background-color:rgba(195,234,232,1.00);
}
footer .info p{
	font-weight: 600;
}
footer .info p + p{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	margin-top: .8em;
}
footer .info p + p > span{
	display: flex;
	align-items: center;
	margin-right: 9px;
}

footer .info p + p > span::before{
	content: "";
	display: block;
	width: 30px;
	height: 30px;
	background: url("../../img/icon_train.png") no-repeat center / contain;
	margin-right: 9px;
}

footer .info p + p > a:not(.tel){
	display: block;
	padding: .4em 1.2em;
	background-color: #447DBD;
	border-radius: 40px;
	color: rgba(255,255,255,1.00);
	margin-top: 5px;
	margin-bottom: 5px;
	
	font-weight: 800;
}

footer .info p > a.tel{
	display: block;
	color: #363636;
	font-weight: 600;
	margin-top: .8em;
}

footer .schedule_content dl:first-of-type {
  background-color: #86C6C3;
}

footer .copy {
  border-top: 1px solid #86C6C3;
}

footer .schedule_content > p{
	text-align: center;
	padding-left: 0;
	margin-bottom: 18px;
}

footer .schedule_content .schedule_info_option {
	padding: 18px 10px 0;
	border-top: 1px solid #8B8B8B;	
}

footer .schedule_content .schedule_info_option li + li{
	margin-top:5px;
}

footer .schedule_content .schedule_info_option p {
	line-height: 1.78em;
}

footer .schedule_content .schedule_info_option p > span {
	font-weight: 500;;
}

/* fab */
.fab {
  background-color: #86C6C3;
}

/*flow*/
.flow_wrap::before{
	background-color:#F8FFFF;
	content: "";
	display: block;
	width: 100%;
	height: calc(100% + 100px);
	clip-path: polygon(100% 0, 100% 100%, 0 100%, 0 497px);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}

#flows_tab{text-align: center;}
#flows_tab .flows_tab_item > span,#flows_tab .flows_tab_item > p{
	font-weight: 600;
}
#flows_tab .flows_tab_item > span{
	display: block;
	margin-bottom: 8px;
}
#flows_tab .flows_tab_item > p{
	padding: .4em 1.5em;
	color: #86C6C3;
	background-color:#FFFFFF;
	border: 1px solid #86C6C3;
	transition: .2s ease-in;
	border-radius: 32px;
	cursor: pointer;
	caret-color: transparent;
}
#flows_tab .flows_tab_item.active > p{
	color: #FFFFFF;
	background-color:#86C6C3;	
}

#flows_wrap .flow_content01,#flows_wrap .flow_content02{
	display: none;
}

@media screen and (max-width:489px) {
	#flows_tab .flows_tab_item > span,#flows_tab .flows_tab_item > p{
		font-size: 4vw;
	}
}
@media screen and (max-width:767px) {
	#flows_tab{
		margin-bottom: 70px;
	}
	#flows_tab .flows_tab_item + .flows_tab_item{
		margin-top: 25px;
	}
	#flows_tab .flows_tab_item > span,#flows_tab .flows_tab_item > p{
		font-size: 1.6rem;
	}
}
@media screen and (min-width:768px) {
	#flows_tab{
		display: flex;
		align-items: center;
		justify-content: center;
		margin-bottom: 154px;
	}
	#flows_tab .flows_tab_item > span,#flows_tab .flows_tab_item > p{
		font-size: 1.6rem;
	}
	#flows_tab .flows_tab_item {
		width:324px;
		margin-left: 25px;
		margin-right: 25px;
		position: relative;
	}
	#flows_tab .flows_tab_item::after {
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-right: 12px solid transparent;
		border-left: 12px solid transparent;
		border-top: 19px solid rgba(134,198,195,0);
		border-bottom: 0;
		position: absolute;
		left:50%;
		bottom: 0;
		transform: translate(-50% , 100%);
		transition: .2s ease-in;
	}
	#flows_tab .flows_tab_item.active::after {
		border-right: 12px solid transparent;
		border-left: 12px solid transparent;
		border-top: 19px solid #86c6c3;
	}
}
@media screen and (min-width:991px) {
	#flows_tab .flows_tab_item {
		margin-left: 45px;
		margin-right: 45px;
	}
}

/*contact*/

#contact_form{
	padding-bottom: 145.6px;
	margin-bottom: 76.4px;
	position: relative;
}
#contact_form::after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: #F8FFFF;
	position: absolute;
	top:0;
	left: 0;
	z-index: -1;
	clip-path: polygon(0 190px, 100% 0%, 100% 100%, 0% 100%);
}
@media screen and (max-width:489px) {
	#contact_form{
		padding-bottom: 15vw;
		margin-bottom: 10vw;
	}
	#contact_form::after{
		clip-path: polygon(0 25vw, 100% 0%, 100% 100%, 0% 100%);
	}
}

#contactWrap{
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
}
#contactWrap dl dt{
	background-color: #86C6C3;
	color: #FFFFFF;
	font-weight: 600;
	text-align: center;
}
#contactWrap dl dd{
	margin-left: 0;
}
#contactWrap dl dd span{
	display: block;
	height: 100%;
	width: 100%;
}
#contactWrap dl dd input,#contactWrap dl dd textarea{
	box-shadow: 0px 4px 10px -3px rgba(0,0,0,.2);
	height: 100%;
	width: 100%;
	outline: none;
	border: none;
}
#contactWrap dl dd textarea{
	height: 250px;
}
@media screen and (max-width:489px) {
	#contactWrap dl{
	font-size: 4vw;
	}
	#contactWrap dl + dl{
	margin-top: 8vw;
	}	
	#contactWrap dl dt{
	padding: 4.5vw;
	margin-bottom: 3vw
	}
	#contactWrap dl dd input,#contactWrap dl dd textarea{
	padding: 4.5vw;
	font-size: 4.2vw;
	}
}
@media screen and (max-width:767px) {
	#contactWrap dl{
		font-size: 1.6rem;
	}
	#contactWrap dl + dl{
	margin-top: 8vw;
	}	
	#contactWrap dl dt{
	padding: 18px;
	margin-bottom: 10px;
	}
	#contactWrap dl dd input,#contactWrap dl dd textarea{
	padding: 18px;
	}
}
@media screen and (min-width:490px) {
	#contactWrap dl dd input,#contactWrap dl dd textarea{
	padding: 1.8rem;
	}
}
@media screen and (min-width:768px) {
	#contactWrap dl{
		display: flex;
		align-items: stretch;
		font-size: 1.6rem;
	}
	#contactWrap dl + dl{
	margin-top: 38px;
	}	
	#contactWrap dl dt{
		display: flex;
		align-items: center;
		justify-content: center;
		padding: 18px;}
	
	#contactWrap dl dt{
		width: 200px;
		margin-right: 15px;
	}
	#contactWrap dl dd{
		width: calc(100% - 215px);
	}
	#contactWrap dl dd input,#contactWrap dl dd textarea{
	padding: 18px;
	}
}
@media screen and (min-width:991px) {
	#contactWrap dl dt{
		width: 240px;
		margin-right: 25px;
	}
	#contactWrap dl dd{
		width: calc(100% - 265px);
	}
}

#contact_privacy{
	max-width: 715px;	
}

#contact_privacy span{
	width: 100%;
	height: 91px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 13px;
	border: 1px solid #434343;
}

#contact_privacy span::after{
	width: 40px;
	height: 40px;
	display: block;
	content: "";
	background: url("../../img/pop_open.png") no-repeat center / contain;
	margin-left:18px; 
	cursor: pointer;
}

#modal_privacy .privacy_wrap{
	position: fixed;
	 display: none;
    top: 50%;
    left: 50%;
    width: 90%;
    max-width: 715px;
    max-height: 90vh;
    transform: translate(-50%,-50%);
    z-index: 10000;
}

#modal_privacy .privacy_wrap .privacy_wrap_inner{
	position: relative;
	height: 100%;
}

#modal_privacy .privacy_wrap .privacy_wrap_inner span.privacy_close{
	position: absolute;
	top:25px;
	right: 28px;
	height: 40px;
	width: 40px;
	background-color: #30B2AC;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

#modal_privacy .privacy_wrap .privacy_wrap_inner span.privacy_close::after{
	display: block;
	content: "−";
	font-weight: 700;
	color: #FFFFFF;
	font-size: 2rem;
	transform: translateY(-1px);
}

#modal_privacy .privacy_wrap .privacy_contents{
	padding: 90px 20px 78px 30px;
	background-color: rgba(255,255,255,1.00);
	border-radius: 13px;
	height: 100%;
}
#modal_privacy .privacy_wrap .privacy_contents .privacy_contents_scl{
	overflow-y: auto;
	max-height: calc(90vh - 158px );
	padding-right: 10px;
}

#modal_privacy .privacy_wrap .privacy_contents .privacy_contents_scl::-webkit-scrollbar{
	width: 10px;
}
#modal_privacy .privacy_wrap .privacy_contents .privacy_contents_scl::-webkit-scrollbar-track{
	background-color: #D8D8D8;
	border-radius: 10px;
}

#modal_privacy .privacy_wrap .privacy_contents .privacy_contents_scl::-webkit-scrollbar-thumb{
	background-color:#ABABAB;
	border-radius: 10px;
}

.privacy_contents .privacy_item + .privacy_item{
	margin-top:63.5px;
}
.privacy_contents .privacy_item h3{
	font-size:2rem;
	margin-bottom: .5em;
	color: #30B2AC;
}

.privacy_contents .privacy_item p{
	font-size:1.6rem;
}

#contact_submit{margin-top: 71px;}
#contact_submit input {
	display: flex;
	align-items: center;
	justify-content: center;
	width:337px;
	margin-left: auto;
	margin-right: auto;
	border-radius:40px;
	height: 79px;
	color: #FFFFFF;
	background-color: #86C6C3;
	outline: none;
	border: none;
	font-size: 2rem;
	font-weight: 700;
}

@media screen and (max-width:489px) {
	#contact_privacy{
		height: 12vw;
		margin: 13vw auto ;
	}
	#contact_privacy span{
		font-size:4.5vw;
	}
	#modal_privacy .privacy_wrap .privacy_contents{
		padding: 15vw 3vw 10vw 5vw;
	}
	
	#modal_privacy .privacy_wrap .privacy_wrap_inner span.privacy_close{
		top:4vw;
		right: 4vw;
		width: 8vw;
		height: 8vw;
	}
	#modal_privacy .privacy_wrap .privacy_wrap_inner span.privacy_close::after{
		font-size: 4.5vw;
	}
	#modal_privacy .privacy_wrap .privacy_contents .privacy_contents_scl{ 
		max-height: calc(90vh - 25vw );
		padding-right: 4vw;
	}
	.privacy_contents .privacy_item h3{
		font-size:5vw;
	}
	.privacy_contents .privacy_item p{
		font-size:4vw;
	}
	#contact_submit input {
	width:80vw;
	height: 15vw;
	font-size: 5vw;
	}
}

@media screen and (max-width:991px) {
	#contact_privacy{
		margin: 60px auto ;
	}
	#contact_privacy span{
		font-size:1.8rem;
	}
}

@media screen and (min-width:991px) {
	#contact_privacy{
		margin: 86px auto ;
	}
	#contact_privacy span{
		font-size: 2rem;
	}
}

/*cta*/
.mv_cta li,.mv_cta li:first-child {
	border-radius: 0 13px 0 0;
}
.mv_cta li,.mv_cta li:last-child {
    background-color: #EFAAA9;
	border-radius: 13px 0 0 0;
}


/*contactform7*/

.wpcf7 form .wpcf7-response-output{
	text-align: center;
}
@media screen and (max-width:489px) {
	.wpcf7 form .wpcf7-response-output{
		font-size: 4.2vw;
	}
}

@media screen and (min-width:490px) {
	.wpcf7 form .wpcf7-response-output{
		font-size: 1.8rem;
	}
}

/*tel*/
@media screen and (max-width:489px) {
	.pctel{display: none !important;}
}
@media screen and (min-width:490px) {
	.sptel{display: none !important;}
}

.payment{padding-bottom: 0;}

/*404*/
.not_wrap{text-align: center;}
@media screen and (max-width:489px) {
	.not_wrap{padding-top: 50vw;padding-bottom: 50vw;}
}
@media screen and (min-width:490px) {
	.not_wrap{padding-top: 200px;padding-bottom: 100px;}
}

