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

.body-wrap{ overflow: hidden; position: relative; }


.first-wrap{position: relative;}
.first-wrap:after{ content: ""; width: 100%; height: 100%; 
	background: url("../img/index/webp/bg-ill01.webp") no-repeat right top/100%;
	background-attachment: fixed; mix-blend-mode: multiply;
	position: absolute; top: 0; right: 0; z-index: -1; }
/*no*/.no-webp .first-wrap:after{ background: url("../img/index/bg-ill01.png") no-repeat right top/100%;
	background-attachment: fixed;}

h2.base{ font-family: fot-tsukuaoldmin-pr6n, sans-serif; font-size: 3.6rem; font-weight: normal;
	color: #df5156; letter-spacing: 0.1em; margin-bottom: 45px; }
h2.base small{ display: block; font-size: 1rem; color: #464546; letter-spacing: 0.05em; }

/* mv------------------------------------ */
.mv{ position: relative; padding-top: 75px; }

.mv .catch{ width: 330px; display: flex; align-items: center;
	font-family: fot-tsukuaoldmin-pr6n, sans-serif; font-size: 2.8rem;
	writing-mode: vertical-rl; letter-spacing: 0.1em;
	position: absolute; right: 0; top: 90px; }

.mv .txt{ width: 330px; position: absolute; right: 0; bottom: 0; }
.mv h1{ font-weight: normal; font-size: 1rem; text-align: center; margin-bottom: 25px; }
.mv h1 img{ display: block; margin: 0 auto 10px; }

.mv .txt ul{ display: table; margin: auto; font-family: fot-tsukuaoldmin-pr6n, sans-serif; font-size: 1.4rem; }
.mv .txt li:not(:last-child){margin-bottom: 10px;}
.mv .txt li:before{ content: ""; display: inline-block; vertical-align: middle;
	width: 28px; height: 28px; margin-right: 10px; }
.mv .txt li:nth-child(1):before{ background: url("../img/index/ill-ico01.png") no-repeat center/contain; }
.mv .txt li:nth-child(2):before{ background: url("../img/index/ill-ico02.png") no-repeat center/contain; }
.mv .txt li:nth-child(3):before{ background: url("../img/index/ill-ico03.png") no-repeat center/contain; }

.mv .photo{ position: relative; width: calc( 100vw - 330px ); height: calc(100vh - 200px); }
.mv .photo > p{ position: absolute; right: 5px; bottom: 10px; z-index: 1; }
.mv .photo > p a{ display: flex; flex-direction: column; align-items: center;
	width: 260px; height: 130px; font-size: 2rem; font-weight: bold;
	background: url("../img/index/mv-btn.png") no-repeat center/contain;
	padding: 35px 20px 0 0; box-sizing: border-box; position: relative; }
.mv .photo > p a span{ display: block; font-size: 1.4rem; }
.mv .photo > p a:after{ content: ""; display: block; width: 26px; height: 6px;
	background: url("../img/common/arrow01.png") no-repeat center/contain;
	position: absolute; right: 25px; top: 65px; }

.mv .photo ul,
.mv .photo li{ width: 100%; height: 100%; }
.mv .photo .slick-slider .slick-track,
.mv .photo .slick-slider .slick-list{ height: 100%; }

.mv .photo img{ width: 100%; height: 100%; object-fit: cover;
	border-radius: 0 50px 50px 0; }

.mv .photo img[src*="sp"]{ display: none; }


/* top-nav------------------------------------ */
.top-nav{ height: 125px; display: flex; justify-content: center; align-items: center;
	font-family: fot-tsukuaoldmin-pr6n, sans-serif; font-size: 1.6rem; }

.top-nav li{ margin-left: 35px; }

.top-nav li a{ display: block; position: relative; z-index: 0; mix-blend-mode: multiply; }
.top-nav li a:after{ content: ""; width: 100%; height: 10px;
	background: #f7d6ce; border-radius: 10px; opacity: 0; transition-duration: .4s;
	position: absolute; bottom: 0; left: 0; z-index: -1; }

.top-nav li a:hover{ opacity: 1; }
.top-nav li a:hover:after{ opacity: 1; }

/* news------------------------------------ */
.news { margin-bottom: 80px; }
.news a{ height: 60px; display: flex; align-items: center; position: relative; padding: 0 25px 0 30px;
	box-sizing: border-box; background: #efefef; mix-blend-mode: multiply; 
/*    border-radius: 100px; */
}
.news .tit{ font-family: fot-tsukuaoldmin-pr6n, sans-serif; font-size: 1.8rem;
	padding-right: 15px; margin-right: 15px; border-right: 1px solid #d2d2d2; }
.news .entry{ font-size: 1.4rem; }
.news .entry span{ padding-right: 1em; }
.news .more{ font-size: 1.2rem; margin-left: auto; }
.news .more:after{ content: ""; display: inline-block; width: 26px; height: 6px;
	background: url("../img/common/arrow01.png") no-repeat center/contain; vertical-align: 2px; }


/* top-info------------------------------------ */

.top-info{ display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 45px; }

.top-info .left,
.top-info .right{ flex-basis: 370px; }

.top-info .tit{ text-align: center; font-family: fot-tsukuaoldmin-pr6n, sans-serif; font-size: 2.4rem; }
.top-info .tit small{ font-size: 1.2rem; vertical-align: 3px; }
.top-info .tit span{ display: block; font-family: YuGothic, "Yu Gothic medium", "sans-serif"; font-size: 1.3rem; }

.top-info .tel{ font-family: fot-tsukuaoldmin-pr6n, sans-serif; font-size: 3.4rem; color: #df5156;
	padding-left: 85px; position: relative; margin: 30px 0 40px; }
.top-info .tel:before{ content: ""; width: 90px; height: 47px;
	position: absolute; top: 2px; left: -20px;
	background: url("../img/common/ill-prats01.png") no-repeat center/contain; }

.top-info .hour{ position: relative; }
.top-info table{ width: 100%; margin-bottom: 10px; }
.top-info table tr:first-child{ border: solid #464546; border-width: 1px 0; }
.top-info table tr:last-child{ border-bottom: 1px solid #464546; }

.top-info table th{ font-weight: normal; padding: 7px 5px; }

.top-info table td{ padding: 3px 5px; }
.top-info table tr:nth-child(2) td{ padding-top: 17px; }
.top-info table tr:nth-child(3) td{ padding-bottom: 17px; }

.top-info table td:first-child{ text-align: right; width: 120px; padding-right: 10px; }
.top-info table td:not(:first-child){ text-align: center; }
.top-info table td span{ color: #df5156; }

.top-info table + p{ font-size: 1.6rem; }
.top-info table + p span{ background: #464546; color: #fff; padding: 5px 10px; margin-right: 5px; border-radius: 20px; }

.top-info .hour > p:last-child{ position: absolute; right: 0; bottom: 0; letter-spacing: normal; }


.top-info .map{ position: relative; margin-bottom: 10px; }
.top-info .map p{ position: absolute; right: 0; top: 290px; z-index: 1; }
.top-info .map p a{ display: flex; justify-content: space-between; align-items: center;
	width: 100px; height: 20px; border-radius: 20px;
	background: #df5156; font-size: 1.2rem; color: #fff; padding: 0 6px 0 10px; box-sizing: border-box; }
.top-info .map p a:after{ content: ""; width: 5px; height: 7px;
	background: url("../img/common/arrow02.png") no-repeat center/contain; }

.top-info .right ul{ font-size: 1.6rem; font-weight: bold; }
.top-info .right ul li{ padding-left: 20px; position: relative; margin-bottom: 5px; }
.top-info .right ul li:before{ content: ""; position: absolute; left: 0; top: 5px; }
.top-info .right ul li:nth-child(1):before{ width: 14px; height: 15px; 
	background: url("../img/common/ico-train.png") no-repeat center/contain; }
.top-info .right ul li:nth-child(2):before{ width: 16px; height: 12px; 
	background: url("../img/common/ico-car.png") no-repeat center/contain; }

.top-info .right ul + p{ font-size: 1.3rem; }
.top-info .right ul + p:before{ content: ""; display: inline-block; width: 12px; height: 15px; 
	background: url("../img/common/ico-map.png") no-repeat center/contain; margin-right: 8px; }

.first-wrap .btn.yoyaku{ margin-bottom: 75px; }
.btn.yoyaku a{ width: 335px; height: 70px; font-size: 2.4rem; }
.btn.yoyaku a:before{ content: ""; width: 16.5px; height: 18.5px; margin-right: 10px;
	background: url("../img/common/ico-yoyaku.png") no-repeat center/contain; }


/* caring------------------------------------ */
.caring{ position: relative; padding-bottom: 50px; }

.caring:before{ content: ""; display: block; width: 1000px; height: 250px;
	border-radius: 50px; margin: 0 auto 50px;
	background: url("../img/index/webp/caring.webp") no-repeat center/cover; }
/*no*/.no-webp .caring:before{ background: url("../img/index/caring.jpg") no-repeat center/cover; }

.caring:after{ content: ""; width: 100%; height: 700px;
	background: url("../img/index/webp/bg-ill02.webp") no-repeat center bottom/100% 100%;
	position: absolute; left: 0; bottom: 0; z-index: -1; mix-blend-mode: multiply; }
/*no*/.no-webp .caring:after{ background: url("../img/index/bg-ill02.png") no-repeat center bottom/100% 100%; }

.caring .content{ display: flex; align-items: center; justify-content: space-between; 
	margin-bottom: 50px; position: relative; }
.caring .content:before{ content: ""; width: 170px; height: 203px;
	background: url("../img/index/ill-prats02.png") no-repeat center/contain;
	position: absolute; top: -110px; left: -165px; }
.caring .content:after{ content: ""; width: 180px; height: 100px;
	background: url("../img/index/ill-prats03.png") no-repeat center/contain;
	position: absolute; top: -105px; right: -175px; }

.caring .left{ text-align: center; }
.caring h2{ font-family: fot-tsukuaoldmin-pr6n, sans-serif; font-weight: normal; font-size: 3.6rem; margin-bottom: 20px; }
.caring h2 + p{ line-height: 1.6; }

.caring .right ul{ font-family: fot-tsukuaoldmin-pr6n, sans-serif; font-size: 1.8rem; }
.caring .right li:not(:last-child){margin-bottom: 10px;}
.caring .right li:before{ content: ""; display: inline-block; vertical-align: middle;
	width: 28px; height: 28px; margin-right: 10px; }
.caring .right li:nth-child(1):before{ background: url("../img/index/ill-ico04.png") no-repeat center/contain; }
.caring .right li:nth-child(2):before{ background: url("../img/index/ill-ico05.png") no-repeat center/contain; }
.caring .right li:nth-child(3):before{ background: url("../img/index/ill-ico06.png") no-repeat center/contain; }


/* doctor------------------------------------ */
.doctor{ padding: 100px 0; position: relative; overflow:hidden; }
.doctor:after{ content: ""; width: 284px; height: 227px; 
	background: url("../img/index/ill-prats04.png") no-repeat center bottom/contain;
	position: absolute; bottom: -10px; right: 10vw; }

.doctor .content{ display: flex; justify-content: space-between; align-items: flex-end; 
	position: relative; margin-bottom: 50px; }
.doctor .content:before{ content: ""; display: block; width: 400px; height: 690px;
	border-radius: 25px; flex-shrink: 0;
	background: url("../img/index/webp/doctor.webp") no-repeat center/cover;}
/*no*/.no-webp .doctor .content:before{ background: url("../img/index/doctor.jpg") no-repeat center/cover; }

.doctor .catch{ font-family: fot-tsukuaoldmin-pr6n, sans-serif; font-size: 3rem;
	writing-mode: vertical-rl; letter-spacing: 0.1em;
	position: absolute; top: -20px; right: 0; }
.doctor .txt{ flex-basis: 350px; }
.doctor .txt p{ text-align: justify; line-height: 1.6; }
.doctor .txt p:not(:last-child){ margin-bottom: 25px; }

.sec01{ height: 500px; background: url("../img/index/webp/sec01.webp") no-repeat center/cover;
	background-attachment: fixed; }
.no-webp .sec01{ background: url("../img/index/sec01.jpg") no-repeat center/cover;
	background-attachment: fixed;}

/* concept------------------------------------ */
.concept{ padding: 100px 0; }
.concept .content{ display: flex; justify-content: space-between; align-items: flex-end; 
	position: relative; margin-bottom: 50px; }
.concept .content:before{ content: ""; display: block; width: 400px; height: 600px;
	border-radius: 25px; flex-shrink: 0; order: 2;
	background: url("../img/index/webp/concept.webp") no-repeat center/cover; }
/*no*/.no-webp .concept .content:before{ background: url("../img/index/concept.jpg") no-repeat center/cover; }

.concept .catch{ font-family: fot-tsukuaoldmin-pr6n, sans-serif; font-size: 3rem;
	writing-mode: vertical-rl; letter-spacing: 0.1em;
	position: absolute; top: 0; right: 450px; }
.concept .txt{ flex-basis: 350px; order: 0; }
.concept .txt p{ text-align: justify; line-height: 1.6; }
.concept .txt p:not(:last-child){ margin-bottom: 50px; }

/* feature------------------------------------ */
.feature{ padding: 75px 0; position: relative; margin-bottom: 100px; }
.feature:after{ content: ""; width: calc(100% - 100px); height: 100%;
	background: url("../img/index/webp/bg-ill03.webp") no-repeat center/cover; 
	border-radius: 50px; position: absolute; top: 0; left: 50px; z-index: -1; mix-blend-mode: multiply; }
/*no*/.no-webp .feature:after{ background: url("../img/index/bg-ill03.jpg") no-repeat center/cover;  }

.feature h2{ text-align: center; position: relative; margin-bottom: 70px; }
.feature h2:after{ content: ""; width: 340px; height: 206px;
	background: url("../img/index/ill-prats05.png") no-repeat center/contain;
	position: absolute; top: -70px; left: calc( 50% - 170px ); z-index: -1; }

.feature .box{ display: flex; justify-content: space-between; counter-increment: feature; }
.feature .box:not(:last-child){ margin-bottom: 75px; }
.feature .box .photo{ flex-shrink: 0; line-height: 0; }
.feature .box .photo img{ border-radius: 25px; }

.feature .box .txt{ flex-basis: 400px; position: relative; padding: 10px 0 60px; }
.feature .box h3{ padding-left: 95px; font-size: 1.8rem; line-height: 1.5; margin-bottom: 30px; position: relative; }
.feature .box h3:before{ content: counter(feature); display: flex; align-items: center; justify-content: center;
	width: 75px; height: 75px; color: #fff; font-size: 6.4rem;
	font-family: fot-tsukuaoldmin-pr6n, sans-serif; font-weight: normal;
	background: url("../img/index/ico-bg01.png") no-repeat center/contain;
	position: absolute; left: 0; top: -10px; }

.feature .box:nth-child(even) h3:before{ background: url("../img/index/ico-bg02.png") no-repeat center/contain; }

.feature .box h3 + p{ line-height: 1.7; }
.feature .box .txt p{ text-align: justify; }
.feature .box .txt .btn{ position: absolute; left: 0; bottom: 0; }

@media screen and (min-width:600px){
	.feature .content{ width: 900px; }
	.feature .content .box{ width: 780px; }
	.feature .box:nth-child(odd){  }
	.feature .box:nth-child(even){ margin-left: auto ; }
}

.sec02{ height: 500px; background: url("../img/index/webp/sec02.webp") no-repeat center/cover;
	background-attachment: fixed; }
/*no*/.no-webp .sec02{ background: url("../img/index/sec02.jpg") no-repeat center/cover;
	background-attachment: fixed;}

/* treatment------------------------------------ */
.treatment{ padding: 95px 0 75px; }
.treatment h2{ text-align: center; }
.treatment h2 + p{ width: 700px; text-align: justify; font-feature-settings : "palt";
	line-height: 1.7; margin: 0 auto 65px; }

.treatment ul{ width: 1000px; margin: auto; display: flex; flex-wrap: wrap; justify-content: space-between; }
.treatment ul li{ flex-basis: calc(100%/6); text-align: center; }

.treatment h3{ font-family: fot-tsukuaoldmin-pr6n, sans-serif; font-weight: normal; 
	font-size: 1.8rem; color: #df5156; margin: 10px 0 2px; }
.treatment li a{ display: block; }
.treatment li p{ font-size: 1.2rem; }

@media screen and (min-width:600px){ .treatment li:nth-child(n+7){margin-top: 50px;} }


/* price------------------------------------ */
.price { margin-bottom: 100px; }
.price .content{ padding: 50px 0; position: relative; }

.price .content:after{ content: ""; width: 900px; height: 100%;
	background: url("../img/index/webp/bg-ill04.webp") no-repeat center/cover;
	border-radius: 50px; position: absolute; top: 0; left: -50px; z-index: -1; mix-blend-mode: multiply; }
/*no*/.no-webp .price .content:after{ background: url("../img/index/bg-ill04.png") no-repeat center/cover; }

.price .content:before{ content: ""; width: 175px; height: 292px; 
	background: url("../img/index/ill-prats06.png") no-repeat center/contain;
	position: absolute; right: -95px; bottom: -85px; }

.price .in{ display: flex; justify-content: space-between; }
.price .in .box{ flex-basis: 375px; padding-bottom: 80px; position: relative; }

.price h2{ text-align: center; font-family: fot-tsukuaoldmin-pr6n, sans-serif; 
	font-weight: normal; font-size: 2.4rem; margin-bottom: 50px; }
.price h3{ text-align: center; font-size: 1.6rem; background: #e4dfd5; border-radius: 5px;
	mix-blend-mode: multiply; padding: 5px; margin-bottom: 25px; }

.price .in .btn{ width: 100%; position: absolute; left: 0; bottom: 0; }

.price .in .box p:nth-of-type(1){ font-weight: bold; font-size: 1.8rem; margin-bottom: 20px;
	line-height: 1.6; font-feature-settings : "palt"; }
.price .in .box p:nth-of-type(2){ text-align: justify; font-size: 1.4rem; line-height: 1.8; }

.price .in .box p:nth-of-type(1) span{ font-size: 2.4rem; }
.price .in .box p:nth-of-type(1) small{ display: block; font-size: 1rem; margin-bottom: 24px; }

.price .in .box:nth-child(1) p:nth-of-type(1){ text-align: center; }
.price .in .box:nth-child(2) p:nth-of-type(1){ display: table; margin: 0 auto 20px; }


/* flow------------------------------------ */
.flow{ margin-bottom: 145px; }
.flow h2{ text-align: center; }

.flow .content{ display: flex; justify-content: space-between; position: relative; }
.flow .content:before{ content: ""; display: block; width: 325px; height: 650px;
	border-radius: 25px; flex-shrink: 0; margin: 0 25px 0 50px;
	background: url("../img/index/webp/flow.webp") no-repeat center/cover; }
/*no*/.no-webp .flow .content:before{ background: url("../img/index/flow.jpg") no-repeat center/cover; }

.flow .content .txt{ padding: 0 25px; position: relative; }
.flow .content .txt p:first-child{ text-align: justify; line-height: 1.7; margin-bottom: 50px; }

.flow .content .txt ul{ display: table; margin: auto; }
.flow .content .txt ul li{ font-size: 1.8rem; font-weight: bold; padding-left: 60px; 
	position: relative; counter-increment: flow; }
.flow .content .txt ul li:not(:last-child){ margin-bottom: 35px; }

.flow .content .txt ul li:before{ content: counter(flow); display: flex; align-items: center; justify-content: center; 
	width: 40px; height: 40px; font-family: fot-tsukuaoldmin-pr6n, sans-serif; font-size: 3rem;
	color: #fff; font-weight: normal; position: absolute; left: 0; top: -6px;
	background: url("../img/index/ico-bg01.png") no-repeat center/contain; }

.flow .content .txt .btn{ width: 100%; position: absolute; left: 0; bottom: 0; }


/* facility------------------------------------ */
.facility{ padding-bottom: 50px; position: relative; }

.facility:before{ content: ""; width: 222px; height: 110px; 
	background: url("../img/index/ill-prats07.png") no-repeat center/contain;
	position: absolute; left: 6vw; bottom: -5px; }

.facility h2{ text-align: center; margin-bottom: 70px; }

.facility .slider{ margin-bottom: 50px; }
.facility .slider li{ width: 600px; margin: 0 8vw; }
.facility .slider img{ border-radius: 25px; }

.facility h3{ min-height: 80px; display: flex; justify-content: center; align-items: center; flex-direction: column;
	text-align: center; font-size: 1.8rem; }
.facility h3 span{ display: block; font-size: 1.4rem; }
.facility h3 + p{ text-align: justify; line-height: 1.7; }

.slick-arrow{ mix-blend-mode: multiply; position: absolute; top: 10vw; z-index: 1; }
.prev-arrow{ left: 18vw; }
.next-arrow{ right: 18vw; }
.slick-arrow img{ width: 60px; }
img.jidv_bn{display: block; margin: 0 auto; width: 700px; padding-bottom: 30px;}
section.voice{text-align: center; padding: 75px 0 145px;}
p.jidv_voice{display: block; margin: 0 auto; width: 700px; padding-bottom: 10px; text-align: left;}
h3.jidv{color:#EC908E; margin-bottom: 10px; font-family: fot-tsukuaoldmin-pr6n, sans-serif;}
h3.jidv span{color:#FFEDB3;}
section.voice h2.base span{font-size: 20px!important; display: block; line-height: 1;
text-align: center; color:#EC908E; padding-top: 30px;}
section.voice h2.base{margin-bottom: 20px;}
section.voice p{display: block; margin: 0 auto; width: 700px; text-align: left; }
