@charset "UTF-8";
/* CSS Document */

header{position: inherit;padding: 10px 30px;}
.body-wrap{ overflow: hidden; position: relative;}
.wrap{ width: 800px; margin: 0 auto; position: relative; }

.row{ display: flex; justify-content: space-between; }

.mv{height: 330px;
	background-repeat: no-repeat; background-size: cover; background-position: center;
	background-color: #f2f2f2; }

.mv {background-image: url("../img/sample/mv.jpg");}
.mv.sample{background-image: url("../img/sample/mv.jpg");}
.mv.group-mv {background-image: url("../img/mv/group2.jpg");}
.mv.clinic-mv {background-image: url("../img/mv/clinic.jpg");}
.mv.case-mv {background-image: url("../img/mv/case.jpg");}
.mv.case2-mv {background-image: url("../img/mv/case2.jpg");}
.mv.flow-mv {background-image: url("../img/mv/flow.jpg");}
.mv.price-mv {background-image: url("../img/mv/price.jpg");}
.mv.faq-mv {background-image: url("../img/mv/faq.jpg");}
.mv.contact-mv {background-image: url("../img/mv/contact2.jpg");}
.mv.thanks-mv {background-image: url("../img/mv/thanks.jpg");}

p strong {font-weight: 600;}

.pankuzu{ width: 1000px; margin: 10px auto 0; }
.pankuzu li{ font-size: 1.2rem; display: inline-block; }
.pankuzu li:not(:last-of-type):after{ content: '-'; margin-left: .4em; }

main.container{ display: block; width: 800px; margin: 50px auto 0; }
.container img{ display: block; margin-bottom: 20px; }
.container a.btn{ margin: 20px 0; }

.container > *:first-child,
.container .side-img .content > *:first-child,
.container div.article .descL > *:first-child,
.container div.article .descR > *:first-child,
.container .side-img .img > *:first-child,
.container div.article .imgR > *:first-child,
.container div.article .imgL > *:first-child,
.container .flow-list .img > *:first-child,
.container .talk .content > *:first-child{ margin-top: 0 !important; }
.container > *:last-child,
.container .side-img .content > *:last-child,
.container .side-img .img > *:last-child,
.container div.article .descL > *:last-child,
.container div.article .descR > *:last-child,
.container div.article .imgR > *:last-child,
.container div.article .imgL > *:last-child,
.container .flow-list .img > *:last-child,
.container .talk .content > *:last-child{ margin-bottom: 0 !important; }

h1{font-family: fot-tsukubrdgothic-std,sans-serif;
	font-size: 4rem; text-align: center;color: #a0643c;margin: 75px auto 45px;}
h1:before{content: "";display: block;
	width: 45px;height: 50px;margin: 0 auto 15px;
	background: url("../img/common/ico-mark.png") center/100% no-repeat;}
h1:after{content: "";display: block;margin: 20px auto 0;
	width: 40px;height: 1px;background: #a0643c;}

h1 small{ display: block; text-align: center;font-weight: 400; font-size: 1.4rem; letter-spacing: .05em; }

.contents-list{ margin-bottom: 55px;}
.contents-list dt{ font-size: 1.6rem; color: #a0643c; font-weight: 700; text-align: center;
	background: #f6f6f6;border-radius: 100px;
	padding: 10px; margin-bottom: 30px;}
.contents-list dd{ display: flex; counter-reset: mkj; }
.contents-list dd ul{ width: 50%;}
.contents-list.non-half dd ul{ width: 100%;}
.contents-list dd ul li{font-size: 1.6rem; line-height: 1.6; font-weight: 700;
	padding-left: 50px; padding-right: 1em;
	position: relative; min-height: 30px; display: flex; align-items: center; }

.contents-list dd ul li:before{ counter-increment: mkj; content: counter(mkj);
	width: 30px; height: 30px; border-radius: 20px;
	display: flex; justify-content: center; align-items: center;
	font-size: 1.6rem; color: #fff;
	font-family: fot-tsukubrdgothic-std,sans-serif;font-weight: 700;
	background: #a0643c; line-height: 1; letter-spacing: 0; position: absolute; top: 0; left: 0; }
.contents-list dd ul li + li{ margin-top: 20px; }

.container img{border-radius: 10px;}

.container h2{ font-size: 2.4rem; font-weight: 700;
	color: #a0643c; text-align: center;border-radius: 100px;
	background: linear-gradient(50deg,#fdfdcc 10%,#faaabe 100%);
	padding: 15px; margin: 100px 0 35px; }

.container h3{ font-size: 2.2rem; font-weight: 700; color: #a0643c;
	border-bottom: solid 1px;padding-bottom: 10px; margin: 80px 0 30px; }
.container h3 span{font-size: .8em; display: block; padding-top: .1em;}
.container h4{font-size: 1.6rem; font-weight: 700;color: #a0643c;
	background: #f6f6f6;border-radius: 100px;
	padding: 8px 20px; margin: 60px 0 24px; }
.container h5{font-size: 1.6rem;font-weight: 700px;color: #a0643c;margin: 40px 0 24px;}
.container h5:before{content: "●";}
.container h6{font-size: 1.5rem;color: #faaabe;margin: 40px 0 24px;}

.container h2 + *,
.container h3 + *,
.container h4 + *{ margin-top: 0 !important; }
.container p{ line-height: 2; margin-bottom: 1em; }


.container .side-img,
.container div.article{ display: flex; justify-content: space-between; margin: 40px 0; }
.container .side-img img,
.container div.article img{ width: 100%; }
.container div.article .descL,
.container div.article .descR,
.container .side-img .content{ width: 400px; }

.container div.article .imgR,
.container div.article .imgL,
.container .side-img .img{ width: 350px; }

/* btn */
.container a.relation-link,
.container a.btn{display: flex;width: 320px;height: 60px;
	justify-content: center;align-items: center;position: relative;
	background: #fff;color: #a0643c;padding-right: 30px;font-size: 1.6rem;
	border: 1px solid #a0643c;border-radius: 10px;box-sizing: border-box;margin: 20px 0;}

.container a.relation-link:after,
.container a.btn:after{content: "";width: 7px;height: 13px;
	position: absolute;top: calc(50% - 6px);right: 25px;
	background: url("../img/common/arrow01.png") center/100%;}


.container ol{ counter-reset: num; margin: 35px 0; }
.container ol li{ font-size: 16px; padding-left: 70px; min-height: 40px;line-height: 1.75;
	display: flex; align-items: center; flex-wrap: wrap; position: relative; }
.container ol li:before{counter-increment: num; content: counter(num);
	width: 50px; height: 50px; border-radius: 50px; font-size: 2.4rem; 
	font-family: fot-tsukubrdgothic-std,sans-serif;font-weight: 700;
	letter-spacing: 0; line-height: 1;
	display: flex; justify-content: center; align-items: center;
	background: linear-gradient(50deg,#fdfdcc 10%,#faaabe 100%); color: #a0643c;
	position: absolute; left: 0; top: 50%; transform: translateY(-50%); }
.container ol li + li{ margin-top: 30px; }


.container ul.dice{ margin: 35px 0; }
.container ul.dice li{ padding-left: 28px; position: relative;font-size: 1.6rem;line-height: 1.75;}
.container ul.dice li:before{ content: '●'; color: #a0643c; position: absolute; left: 0; }
.container ul.dice li + li{ margin-top: 30px; }


.container .flow-list{ counter-reset: flow; margin: 50px 0; }
.container .flow-list .row + .row{ margin-top: 40px; }
.container .flow-list dl{ width: 400px; }
.container .flow-list .img{ width: 350px; }
.container .flow-list dl dt{ font-size: 1.8rem; font-weight: 700; padding-left: 40px; position: relative; }
.container .flow-list dl dt:before{ counter-increment: flow; content: counter(flow);
	width: 30px; height: 30px; font-size: 1.6rem; 
	font-family: fot-tsukubrdgothic-std,sans-serif;font-weight: 700;
	letter-spacing: 0; line-height: 1;color: #fff; background: #a0643c;border-radius: 50px;
	display: flex; justify-content: center; align-items: center; position: absolute; left: 0; }
.container .flow-list dl dd{ line-height: 2; margin-top: .7em; }



.container table:not(.no-default){ width: 100%; margin: 40px 0; }
.container table:not(.no-default) th{text-align: left;font-weight: 400; padding: 1em 1.5em;
	vertical-align: middle; }
.container table:not(.no-default) td{ padding: 1em 1.5em;vertical-align: middle; }

.container table:not(.no-default) tr{background: #f6f6f6;}
.container table:not(.no-default) tr:nth-child(even){background: #e1f3f7;}

.container table:not(.no-default) tr:first-child *:first-child{border-top-left-radius: 10px;}
.container table:not(.no-default) tr:first-child *:last-child{border-top-right-radius: 10px;}
.container table:not(.no-default) tr:last-child *:first-child{border-bottom-left-radius: 10px;}
.container table:not(.no-default) tr:last-child *:last-child{border-bottom-right-radius: 10px;}

.container table:not(.no-default) th:first-child{color: #808080;
	background: #d2eef4;mix-blend-mode: multiply;}


/*** dr ***/
.container h3.dr-name{ height: 260px; position: relative; font-size: 5rem;
	font-family: fot-tsukubrdgothic-std,sans-serif;font-weight: 700;
	padding-top: 50px; line-height: 1.5;text-align: right;padding-right:50%;}

.container h3.dr-name small{ display: block; font-weight: 500; font-size: 2rem; letter-spacing: .05em; }
.container h3.dr-name img{ width: 200px; position: absolute; bottom: 50px; right: 20%; margin-bottom: 0; }

.container .history-wrap{ margin-top: 80px; }
.container .history-wrap dl{ width: 370px; }
.container .history-wrap dl dt{ font-weight: 700; text-align: center;
	background: #f6f6f6; margin-bottom: 16px;border-radius: 50px;}
.container .history-wrap table{ border-collapse: separate; border-spacing: 0 10px; }
.container .history-wrap table th{ width: 1px; white-space: nowrap; padding-right: 1.5em; font-weight: 400; }
.container .history-wrap dl ul li{ padding-left: 1em; padding-top: 10px; position: relative; }
.container .history-wrap dl ul li:before{ content: '・'; position: absolute; left: 0; }
.container .shorei {display: flex;justify-content: space-between;flex-wrap: wrap;}
.container .shorei div {width: 39rem;margin-bottom: 2rem;padding: 1.5rem;}
.container .shorei p span {font-family: fot-tsukubrdgothic-std,sans-serif;font-size: 1.6rem;background: linear-gradient(50deg,#fdfdcc 10%,#faaabe 100%);border-radius: 50px;margin-bottom: 15px;padding: 5px 0;width: 100%;display: block;text-align: center;}
.case-list ul {width: 100%;display: flex;justify-content: center;flex-wrap: wrap;margin: 40px auto 0px;}
.case-list ul li {flex-basis: 33.33%;text-align: center;margin-bottom: 40px;}
.case-list ul li img {width: 50%;margin: 0 auto;}
.type article ul{display: flex;flex-wrap: wrap;justify-content: center;padding: 25px 0;
	position: relative;margin-bottom: 50px;width: 800px;}
.type article ul:before{border-radius: 10px 10px 0 0;border-bottom: none;top: 0;}
.type article ul:after{border-radius: 0 0 10px 10px;border-top: none;bottom: 0;}

.type article ul li{width: 180px;height: 180px;text-align: center;color: #a0643c;
	display: flex;flex-direction: column;justify-content: space-between;align-items: center;
	padding: 40px 0 35px;font-size: 1.4rem;position: relative;z-index: 0;margin-right: 10px;}
.type article ul li:after{content: ""; width: 100%;height: 100%;background: #fff;
	border-radius: 100px;box-shadow: 5px 5px 3px rgba(0,0,0,.1);
	position: absolute;left: 0;top: 0;z-index: -1;}
.type ul li img {margin: 0 auto;}
.type ul li p {line-height: 1.5;}
/* reserve------------------------- */
form input{ display: initial; margin-bottom: .4em; }
form input[type="text"],
form input[type="email"],
form input[type="tel"]{ width: 100%; height: 35px; display: block; box-sizing: border-box; border: solid 1px #979894; border-radius: 0; outline: none; -webkit-appearance: none; -moz-appearance: none;}
form .select-wrap{ position: relative; }
form .select-wrap:after{ position: absolute; top: 50%; right: 0.8em; width: 0; height: 0; padding: 0; content: ''; border-left: 6px solid transparent; border-right: 6px solid transparent; border-top: 6px solid #979894; pointer-events: none; transform: translateY(-50%); }
form * + .select-wrap{ margin-top: .8em; }
form select{ -webkit-appearance: none; -moz-appearance: none; appearance: none; background: transparent; border: solid 1px #979894;; border-radius: 0; font: inherit; outline: none; width: 100%; height: 35px; padding: 0 .5em;}
form textarea{ width: 100%; height: 200px; -webkit-appearance: none; -moz-appearance: none; appearance: none; resize: none; padding: 0; border: solid 1px #979894; outline: none; background: transparent; }
form input[type="submit"],
form input[type="button"]{ -webkit-appearance: none; -moz-appearance: none; appearance: none; padding: 0; border: none; outline: none;  font-size: 1em; display: flex; justify-content: center; align-items: center; width: 300px; height: 60px; color: #a0643c; background: linear-gradient(50deg,#fdfdcc 10%,#faaabe 100%);font-weight: 500; border-radius: 10px; position: relative; margin: 0 auto; cursor: pointer; margin-bottom: 1em; }
form table th span{ font-size: .6em; color: red; }
form table td small{ display: block; line-height: 1.5; margin-top: .4em; font-size: .8em; }

.range table{width: 100%;margin-bottom: 50px;}

.range table th,
.range table td{font-weight: 400; text-align: center;vertical-align: middle;height: 60px;}

.range table tr{background: #f6f6f6;}
.range table tr:nth-child(even){background: #e1f3f7;}

.range table tr:first-child th:first-child{border-top-left-radius: 10px;}
.range table tr:first-child th:last-child{border-top-right-radius: 10px;}
.range table tr:last-child th:first-child{border-bottom-left-radius: 10px;}
.range table tr:last-child td:last-child{border-bottom-right-radius: 10px;}

.range table th:first-child{color: #808080;width: 175px; background: #d2eef4;mix-blend-mode: multiply;}
.range table td:first-of-type{font-weight: 700;color: #faaabe;}
.range table tr:first-child th{height: 80px;font-size: 1.8rem;font-weight: 500;}
.flex-box{display:flex; margin:0 auto;justify-content:center;}
.flex-box2{display:flex; margin:0 auto;justify-content:space-around;flex-wrap: wrap;}

/* group---- */
.group{background: url("../img/index/reason-bg.jpg")center/cover repeat #fff; padding: 100px 0; margin: 100px auto 0;}
.group h2{font-family: fot-tsukubrdgothic-std,sans-serif;
	font-size: 3.2rem; text-align: center;color: #a0643c; }

.group h2.mark:before{content: "";display: block;
	width: 60px;height: 66px;margin: 0 auto 15px;
	background: url("../img/common/ico-mark.png") center/100% no-repeat;}

.group h2.mark:after{content: "";display: block;margin: 35px auto 0;
	width: 40px;height: 1px;background: #a0643c;}


.group .in{display: flex;justify-content:space-around;flex-wrap: wrap;color: #a0643c;}

.group .box{width: 250px; margin: 20px 0;}
.group .box a{display: block;position: relative;}
.group .box a:after{content: "";width: 15px;height: 15px;
	position: absolute;right: 0;bottom: 0;
	background: url("../img/common/webp/ico-tab.webp")center/100% no-repeat;}

.no-webp .group .box a:after{background: url("../img/common/ico-tab.png")center/100% no-repeat;}

.group .in .photo{line-height: 0;}
.group .in .photo img{border-radius: 10px;}

.group h3{font-size: 1.6rem;letter-spacing: 0.1em;font-feature-settings : "palt";margin: 0px;
	padding: 20px 0 10px 38px;border-bottom: 1px solid #a0643c;margin-bottom: 10px;position: relative;}
.group h3 img{mix-blend-mode: multiply;position: absolute;left: 0;top: 15px;}

.group .info{font-size: 1.4rem;letter-spacing: 0.07em;font-feature-settings : "palt";
	white-space: nowrap;}
.group .info p:not(:last-child){margin-bottom: 10px;}


/*	reason*/
.reason{position: relative;z-index: 4;margin-top: -100px;}
	.reason section{width: 800px!important;}

.reason h2{margin-bottom: 70px;}

.reason .in{margin-bottom: 50px;}
.reason .box{display: flex;justify-content: space-between;
	background: #fff;border-radius: 10px;padding: 30px;
	box-shadow: 5px 5px 3px rgb(0 0 0 / 10%);position: relative; border: 1px solid #808080;}
.reason .box:not(:last-child){margin-bottom: 40px;}

.reason .box .icon{font-family: fot-tsukubrdgothic-std,sans-serif;
	width: 60px;height: 60px;background: linear-gradient(50deg,#fdfdcc 10%,#faaabe 100%);
	color: #a0643c;border-radius: 100px;padding-top: 10px;
	display: flex;flex-direction: column;justify-content: center;align-items: center;
	font-size: 1.7rem;text-align: center;letter-spacing: normal;
	position: absolute;left: -20px;top: -18px;}
.reason .box .icon small{display: block;font-size: 0.7em;line-height: 1;}

.reason .box .txt{width: 450px;}

.reason h3{font-weight: 700;color: #faaabe;font-size: 2.8rem;padding: 13px 0 18px;
	border-bottom: 1px solid #f3f3f3;margin-bottom: 20px; margin: 0px;}
.reason .box .txt p{text-align: justify;line-height: 2; font-feature-settings : "palt";}

.reason .box .photo{width: 250px;line-height: 0;}
.reason .box .photo img{border-radius: 10px;}
	

/*reason-list*/
.reason-list{ display: flex; justify-content: center; flex-wrap: wrap; }
.reason-list li{ width: 24rem; margin-right: 4rem; background: #fff; position: relative; border-radius: 1rem; padding: 0 2rem 2rem; }
.reason-list li:nth-of-type(3n),
.reason-list li:last-of-type{ margin-right: 0; }
.reason-list li:nth-of-type(n+4){ margin-top: 6rem; }
.reason-list li .no{ width: 5rem; height: 5rem; border-radius: 2.5rem; background: linear-gradient(50deg,#fdfdcc 10%,#faaabe 100%); color: #a0643c; font-size: 1.2rem; position: absolute; top: -2.5rem; left: 50%; transform: translateX(-50%); display: flex; justify-content: center; align-items: center; }
.reason-list li .no span{ display: block; text-align: center; line-height: 1.4; }
.reason-list li .no strong{ display: block; font-size: 1.7rem; text-align: center; line-height: 1; }
.reason-list li img{ width: calc(100% + 4rem); margin-left: -2rem; border-radius: 1rem 1rem 0 0; max-width: initial; }
.reason-list li h3{ font-size: 1.8rem; text-align: center; line-height: 1.6; letter-spacing: 0.03em; height: 6.6rem; border-bottom: solid 1px #f3f3f3; margin-bottom: 1.2rem; margin-top: 0px;}
.reason-list li p{ letter-spacing: .05em; margin-bottom: 0; }


/*feature*/
.feature{margin-top: -100px;
	position: relative;z-index: 8;overflow: hidden;}
.feature .wrap{background: #f6f6f6;padding: 200px 0 100px;
	width: 110%;transform: translateX(-5%);border-radius: 0 0 50% 50%/0 0 150px 150px;}
.feature h2{margin-bottom: 65px;}

.feature .in{display: flex;flex-wrap: wrap;justify-content: space-between;padding-left: 10px;}
.feature .in .box{display: flex;flex-direction: column;justify-content: flex-end;
	background: #fff;border-radius: 10px;position: relative;
	width: 240px;min-height: 350px; counter-increment: feature;
	box-shadow: 5px 5px 3px rgb(0 0 0 / 10%);margin-bottom: 60px;}
.feature .in .box:before{content: "0" counter(feature);color: #a0643c;
	font-family: fot-tsukubrdgothic-std,sans-serif;font-size: 2rem;font-weight: 700;
	position: absolute;left: -10px;top: -10px;padding: 15px;box-sizing: border-box;
	width: 90px;height: 90px;background: url("../img/index/webp/feature-numbg.webp")left top/100% auto no-repeat;}
.no-webp .feature .in .box:before{background: url("../img/index/feature-numbg.png")left top/100% auto no-repeat;}

.feature .in .box .txt{text-align: center;margin-bottom: 22px;}
.feature .in .box .photo{line-height: 0; margin-bottom: 0px!important;}
.feature .in .box .photo img{width: 100%;border-radius: 0 0 10px 10px;margin-bottom: 0px!important;}

.feature .in .box h3{width: 220px; margin:0 auto 15px;padding-bottom: 25px;
	color: #faaabe;font-size: 1.6rem; font-weight: 700;
	border-bottom: 1px solid #f3f3f3;}
/*.feature .in .box:last-child h3{padding-bottom: 0px;line-height: 1.38;}*/
.feature .in .box h3 + p{font-size: 1.3rem; line-height: 1.75;}



/* diff---- */
.diff{overflow: hidden;position: relative;z-index: 7;}
.diff section{width: 800px;}
.diff table{width: 100%;margin-bottom: 50px;}

.diff table th,
.diff table td{font-weight: 400; vertical-align: middle;height: 60px; margin: 10px auto!important;
    text-align: center!important;}
.diff table th img{margin: 0 auto!important;}
.diff table tr{background: #f6f6f6;}
.diff table tr:nth-child(even){background: #fff;}

.diff table tr:first-child th:first-child{border-top-left-radius: 10px;}
.diff table tr:first-child th:last-child{border-top-right-radius: 10px;}
.diff table tr:last-child th:first-child{border-bottom-left-radius: 10px;}
.diff table tr:last-child td:last-child{border-bottom-right-radius: 10px;}

.diff table th:first-child{color: #808080;width: 125px; background: #d2eef4;mix-blend-mode: multiply;}
.diff table td:first-of-type{font-weight: 700;color: #faaabe;}

.diff table tr:first-child th{height: 80px;font-size: 1.8rem;font-weight: 500;}

.diff table tr > *:nth-child(2),
.diff table tr > *:nth-child(3){border-right: 1px solid #a0643c;}

/* qa---- */
.qa{overflow: hidden;position: relative;z-index: 4;}
.qa section{width: 780px;}
.qa .wrap{padding: 0px;width: 110%;transform: translateX(-5%);
	background: #fff;
	border-radius: 0 0 50% 50%/0 0 150px 150px;}

.qa .in{margin-bottom: 60px;}

.qa .box{border-bottom: 1px solid #f3f3f3;}

.qa input{display: none;}
.qa .q,
.qa .a{display: block; padding: 20px 60px;text-align: justify;
	position: relative;line-height: 1.7; padding-left: 100px;}

.qa .a{max-height: 0px;overflow: hidden;color: #faaabe;
	transition-duration: .4s;padding-top: 0;padding-bottom: 0;}

.qa .q:before,
.qa .a:before{display: flex;justify-content: center; align-items: center;
	font-family: fot-tsukubrdgothic-std,sans-serif;font-weight: 700;
	width: 45px;height: 45px;color: #fff;font-size: 2rem;letter-spacing: normal;
	border-radius: 50px;
	position: absolute;top: calc(50% - 22.5px);left: 45px;}
.qa .q:before{content: "Q";background: #6ac5d9;}
.qa .a:before{content: "A";background: #faaabe;}

.qa .a span{font-size: 1.05em;line-height: 3;border-bottom: dotted 1px;}

.qa .q:after{content: "";width: 7px;height: 13px;
	background: url("../img/common/arrow01.png")center/100%;
	position: absolute;top: 30px;right: 36px;transition-duration: .3s;}

.qa input:checked ~ .q:after{transform: rotate(90deg);}
.qa input:checked ~ .a{max-height: 500px;padding-top: 10px;padding-bottom: 20px;}

.qa .counseling{margin-top: 100px;}

/* dr---- */
.dr{margin-top: 100px;overflow: hidden;position: relative;z-index: 7;}
.dr .wrap{padding: 100px 0 150px;width: 110%;transform: translateX(-5%);
	border-radius: 0 0 50% 50%/0 0 150px 150px;
	background: url("../img/index/webp/dr-bg.webp") center top/cover;}
.no-webp .dr .wrap{background: url("../img/index/dr-bg.jpg") center top/cover;}

.dr h2{font-family: fot-tsukubrdgothic-std,sans-serif;
	font-size: 3.2rem; text-align: center;color: #a0643c; margin-bottom: 45px;}

.dr h2.mark:before{content: "";display: block;
	width: 60px;height: 66px;margin: 0 auto 15px;
	background: url("../img/common/ico-mark.png") center/100% no-repeat;}

.dr h2.mark:after{content: "";display: block;margin: 35px auto 0;
	width: 40px;height: 1px;background: #a0643c;}

.dr .in{display: flex;flex-wrap: wrap;justify-content: center;margin-bottom: 60px;}

.dr .box a{width: 280px;height: 250px;
	display: flex;flex-direction: column; align-items: center;justify-content: center;
	position: relative;z-index: 0;}
.dr .box a:before{content: "";width: 250px;height: 250px;background: #fff;
	border-radius: 100%;box-shadow: 5px 5px 3px rgb(0 0 0 / 10%);
	position: absolute;left: 15px;top: 0;z-index: -1;}
.dr .box a:after{content: "";display: block;width: 7px;height: 13px;
	transform: rotate(90deg);margin-top: 25px;
	background: url("../img/common/arrow01.png")center/100%;}

.dr .clinic{text-align: center;color: #faaabe;margin-bottom: 10px;}
.dr .clinic h3{font-weight: 700;font-size: 1.8rem;letter-spacing: 0.07em;white-space: nowrap;
	text-shadow    : 
       2px  2px 1px #fff,
      -2px  2px 1px #fff,
       2px -2px 1px #fff,
      -2px -2px 1px #fff,
       2px  0px 1px #fff,
       0px  2px 1px #fff,
      -2px  0px 1px #fff,
       0px -2px 1px #fff;}
.dr .clinic h3:after{content: "";display: block; width: 190px;height: 1px;background: #a0643c;
	margin: 15px auto 0;}

.dr .name{width: 190px;color: #a0643c;}
.dr .name p:last-child{font-size: 2.3rem;font-weight: 700;}

.dr .box .photo{position: absolute;right: -25px;bottom: -20px;}

@media screen and (min-width:600px){
	.dr .box:nth-child(1),
	.dr .box:nth-child(2),
	.dr .box:nth-child(6),
	.dr .box:nth-child(7){margin-right:30px;}
	.dr .box:nth-child(4){margin-left: 100px;margin-right:15px;}
	.dr .box:nth-child(5){margin-right: 100px;margin-left: 15px;}
	.dr .box:nth-last-child(n + 4){margin-bottom: 25px;}
}

.dr section > p{text-align: center;color: #a0643c;font-size: 1.6rem;line-height: 1.75;}

/* counseling-area---- */
.counseling{width: 900px;margin: auto;}
.counseling a{display: flex;align-items: center;padding-left: 40px;
	background: linear-gradient(50deg,#fdfdcc 10%,#faaabe 100%);
	height: 100px;font-size: 3.6rem;font-weight: 700;color: #a0643c;
	border-radius: 10px;position: relative;}
.counseling a img{margin-right: 15px;}
.counseling a:before{content: "";width: 200px;height: 125px;
	position: absolute;right: 0;bottom: 0;
	background: url("../img/index/counseling-img.png")right bottom/100%;}
.counseling a:after{content: "";width: 7px;height: 13px;
	position: absolute;top: calc(50% - 6px);right: 100px;
	background: url("../img/common/arrow01.png")center/100%;}

.counseling-area{padding: 70px 0 0;text-align: center;position: relative;}
.counseling-area:before{content: "";width: 100%;height: 148px;
	position: absolute;left: 0;top: -147px;z-index: 8;
	background: url("../img/index/ballon02.png")center top/100% 148px;}

.counseling-area h2{font-size: 5rem;color: #faaabe;margin-bottom: 45px;}
.counseling-area h2 + p{font-size: 1.8rem;line-height: 2;margin-bottom: 45px;}

/* fee---- */
.fee{overflow: hidden;position: relative;z-index: 6;margin-top: -100px; margin: 0 calc(50% - 50vw);
	width: 100vw;}
.fee .wrap{padding: 100px 0 100px;width: 110%;transform: translateX(-5%);
	border-radius: 0 0 50% 50%/0 0 150px 150px;
	background: url("../img/index/fee-bg.jpg")center/cover;}

.fee section{padding: 0 50px;color: #fff;}
.fee .in{border: 1px solid #fff;border-radius: 10px;padding: 40px 50px;margin-bottom: 50px;}

.fee h2{color: #fff;
	font-size: 3.5rem;
	border-bottom: 1px solid #fff;
	padding-bottom: 35px;
	margin-bottom: 30px;
	border-radius: 0;
	background: none;
	margin-top: 0;}
.fee h2 + p{text-align: center;color: #ffffc1;font-size: 1.8rem; font-weight: 700;}

.fee .bnr{line-height: 0;margin-top: -10px;margin-bottom: 30px;}
.fee .bnr img[src*="sp"]{display: none;}
.fee .bnr + p{text-align: center;font-size: 1.6rem;line-height: 1.75;margin-bottom: 50px;}

.fee .price{display: flex;justify-content: space-between;}
.fee .price .box{width: 320px; text-align: center; padding: 35px 40px;
	border: 1px solid #fff;border-radius: 10px;}

.fee .price h3{font-family: fot-tsukubrdgothic-std,sans-serif;font-size: 3.2rem;margin-bottom: 20px; margin-top: 0; color: #fff;}
.fee .price h4{font-weight: 400; color: #faaabe;background: #fff;
	padding: 5px; border-radius: 5px;margin-bottom: 10px; margin-top: 0;}
.fee .price h4 + p{font-family: YuMincho, "Yu Mincho",yu-mincho-pr6n,"serif";font-weight: 600;
	font-size: 6rem;letter-spacing: normal;position: relative;line-height: 1;margin-bottom: 15px;}
.fee .price h4 + p span{font-family: noto-sans-cjk-jp,sans-serif;font-weight: 700;
	font-size: 0.46em;display: inline-block;transform: translateY(-4px);}
.fee .price h4 + p sup{font-family: noto-sans-cjk-jp,sans-serif;font-weight: 700;
	font-size: 1rem;position: absolute;right: 3px;top: 10px;}

.fee .price .link a{display: block; background: #f8bdc0;color: #fff;
	text-align: left;border-radius: 5px;padding: 10px 15px;position: relative;}
.fee .price .link a:after{content: "";width: 7px;height: 13px;
	position: absolute;top: 13px;right: 15px;
	background: url("../img/common/arrow02.png")center/100%;}

.fee .price .link span{display: block; background: #f8bdc0;color: #fff;
	text-align: left;border-radius: 5px;padding: 10px 15px;position: relative;}
.fee .price .link span:after{content: "";width: 7px;height: 13px;
	position: absolute;top: 13px;right: 15px;
	background: url("../img/common/arrow02.png")center/100%;}
.fee .price .link span:hover{background: #ffffc1;color: #faaabe; cursor: pointer;}

.fee .price .monitor{color: #ffffc1;margin-bottom: 35px;}
.fee .price .monitor h4{background: #ffffc1;}




/*others*/
.mb0{margin-bottom: 0px!important;}
.mb50{margin-bottom: 50px!important;}
.mb100{margin-bottom: 100px!important;}

.container .number-list li{ font-size: 14px; padding-left: 40px; min-height: 40px;line-height: 1.75;
	display: flex; align-items: center; flex-wrap: wrap; position: relative; }
.container .number-list li:before{counter-increment: num; content: counter(num);
	width: 30px; height: 30px; border-radius: 50px; font-size: 1.8rem; 
	font-family: fot-tsukubrdgothic-std,sans-serif;font-weight: 700;
	letter-spacing: 0; line-height: 1;
	display: flex; justify-content: center; align-items: center;
	background: linear-gradient(50deg,#fdfdcc 10%,#faaabe 100%); color: #a0643c;
	position: absolute; left: 0; top: 50%; transform: translateY(-50%); }
.container .number-list li + li{ margin-top: 30px; }

.container .flow-list2{ counter-reset: flow; margin: 70px 0; }
.container .flow-list2 .row { margin-top: 70px; }
.container .flow-list2 dl{ width: 400px; }
.container .flow-list2 .img{ width: 350px; }
.container .flow-list2 dl dt{ font-size: 1.8rem; font-weight: 700; padding-left: 70px; position: relative;}
.container .flow-list2 dl dt:before{ counter-increment: flow; content: counter(flow);
	width: 50px; height: 50px; font-size: 2.4rem; 
	font-family: fot-tsukubrdgothic-std,sans-serif;font-weight: 700;
	letter-spacing: 0; line-height: 1;color: #fff; background: #a0643c;border-radius: 50px;
	display: flex; justify-content: center; align-items: center; position: absolute;top:-10px; left: 0; }
.container .flow-list2 dl dd{ line-height: 2; margin-top: 1.8em; }


.group .box  a.btn{display: flex;width: 100%;height: 50px;
	justify-content: center;align-items: center;position: relative;
	background: #fff;color: #a0643c;padding-right: 30px;font-size: 1.6rem;
	border: 1px solid #a0643c;border-radius: 10px;box-sizing: border-box;margin: 20px 0;}
.group .box  a.btn:after {
    content: "";
    width: 7px;
    height: 13px;
    position: absolute;
    top: calc(50% - 6px);
    right: 25px;
    background: url(../img/common/arrow01.png) center/100%;
}

/*clinic-table*/
.container table.clinic-table tr th {width: 200px!important;}


/*group-table*/
.container table.group_table {
    width: 100%;
	margin-bottom: 30px;
}
.container table.group_table tr th {
    text-align: center;
}
.container table.group_table tr td {
    text-align: center;
}

.btn2{
    justify-content:center!important;
}

.color-box {
    background-color: #fef7e5;
    border-radius: 10px;
    padding: 20px;
    margin: 20px 0px;
}

.color-box h3 {
    margin-top: 10px!important;
    text-align: center;
    color: #0b1b4b;
    border-bottom: 1px dashed #0b1b4b!important;
}
.color-box p {
    margin-top: 10px;
    text-align: center;
    color: #0b1b4b;
}

p.dots span{
/*
 padding-top: .4em;
    background-position: top left -2px;
    background-repeat: repeat-x;
    background-size: 1.3em .3em;
    background-image: radial-gradient(.15em .15em at center center,orange,orange 100%,transparent);
*/
    border-bottom: 1px dotted #FF0004;
    color:tomato;
}

.no-radio input{
	display: none;
}

.no-radio input:checked + label{
	 color: #fff;
font-weight: 700;
  background:#faaabe!important;
}

.no-radio label {
  border: 1px solid #999;
  border-radius: 5px;
  padding: 5px 20px;
  cursor: pointer;
  word-break:keep-all;
line-height: 20px; 
	margin: 5px;
	
}

.no-radio label:hover {
    color: #fff;
font-weight: 700;
  background:#faaabe;
	opacity: 0.8;
}

.checkbox{
	display: flex;
	flex-wrap: wrap;
}

.gray-box {
    background: #f3f3f3;
    border-radius: 1rem;
    padding: 1rem 3rem 4rem;
    margin: 2rem auto;
}

.gray-box h2{
    margin-top: 40px;
}

.gray-box h3{
    margin-top: 30px;
    text-align: center;
    color: #0b1b4b;
    border-bottom: 1px dashed #0b1b4b!important;
}

.gray-box p {
    margin-top: 10px;
    text-align: center;
    color: #0b1b4b;
}

.gray-box .before {
    margin-bottom: 50px;
    position: relative;
}

.gray-box .before:before {
    content: "";
    position: absolute;
    top: 180px;
    left: 360px;
    border-style: solid;
    border-width: 15px 15px 0 15px;
    border-color: #4a4a4a transparent transparent transparent;
}

.news-btn{
    background: #fff;
    color: #a0643c;
    border: 1px solid #a0643c;
    width: 100%;
    height: 50px;
    justify-content: center;
    align-items: center;
    display: block;
    padding-left: 15px;
    box-sizing: border-box;
    border-radius: 10px;
    margin: 20px auto;
}

.news-btn span{
    background: url(../img/common/news.svg) no-repeat left;
    background-size: 30px 30px;
    display: inline-block;
    color: #a0643c;
    letter-spacing: 1px;
    padding: 10px 0 6px 40px;
    margin-top: 5px;
    font-size: 14px;
}

.group .box a.news-btn:after {
    content: "";
    width: 7px;
    height: 13px;
    position: absolute;
    top: calc(50% - 6px);
    right:15px;
    background: url(../img/common/arrow01.png) center/100%;
}

.btn-underline{
    color:#faaabe ;
    border-bottom: 2px dashed #faaabe;
}





@media (hover: hover) {
.btn-underline:hover{
    opacity: 0.6;
}
}

    .age{width: 100%;text-align: center;}
    .age input{width: 30px;}
