

header.clone{ position: fixed; top: -7rem; left: 0; z-index: 9978; transition: .5s; }
header.clone.active{ top: 0; }
header.clone .logo img{ width: 24.7rem; }

.mincho{font-family: 'Noto Serif JP', serif;}

.modal-overlay{ width: 100vw; height: 100vh; position: fixed; top: 0; left: 0; z-index: 9994; background: #000; opacity: .5; cursor: pointer; transition: .5s; }
.modal{ max-width: 80rem; background: #fff; position: fixed; top: 50%; left: 50%; transform: translate(-50%,-50%); z-index: 9995; border-radius: 0 5rem 0 0; padding: 5rem; transition: .5s; }
.modal .close{ width: 2.5rem; height: 2.5rem; position: absolute; top: 2.5rem; right: 2.5rem; cursor: pointer; }
.modal .close:before{ content: ''; width: 100%; height: 1px; background: #4d4d4d; position: absolute; top: 50%; left: 0; transform: translateY(-50%) rotate(45deg); }
.modal .close:after{ content: ''; width: 100%; height: 1px; background: #4d4d4d; position: absolute; top: 50%; left: 0; transform: translateY(-50%) rotate(-45deg); }
.modal dt{ color: #644218; font-size: 3rem; text-align: center; padding-bottom: .4em; border-bottom: solid 1px; margin-bottom: 1em; }
.modal dd{ text-align: center; }
.modal dd strong{ background:linear-gradient(transparent 60%, #f0ce83 60%); font-weight: 700; }
.modal dd small{ display: block; font-size: 1.2rem; margin-top: 1em; }
.modal-overlay.remove,
.modal-overlay.remove + .modal{ opacity: 0; visibility: hidden; }

.clinic-meta{ line-height: 1.5; padding: 0 0 0 2.8rem; margin-bottom: 1rem; }
.clinic-meta h1{ font-size: 1.2rem; font-weight: 500; color: #aa8d77; }
.clinic-meta p{ font-size: 1.2rem; color: #aa8d77; line-height: inherit; }

.mv{ position: relative; z-index: 0; margin-bottom: 11rem; }
.mv:before{ content: ''; width: calc(50vw - 20.5rem); height: 100%; background: linear-gradient(0deg, rgba(254,213,211,1) 0%, rgba(255,248,228,1) 100%); position: absolute; bottom: -3.3rem; right: 0; z-index: -1; opacity: .5; }
.mv .shadow-box{ display: table; border-radius: 0 5rem 0 0; overflow: hidden; box-shadow: 5px 5px 16px -6px rgba(0,0,0,0.5); background: #ffedcb; }
.mv .shadow-box .main-slide{ width: calc(50vw + 32rem); margin-left: 0; }
.mv .shadow-box .main-slide li{ line-height: 0; }
.mv .shadow-box .main-slide li img{ width: 100%; height: 63.6rem; object-fit: cover; object-position: center;border-radius: 0px 50px 0px 0px; }
.mv .shadow-box .main-slide .pagenation{ position: absolute; left: 1.8rem; bottom: .8rem; z-index: 10; }
.mv .shadow-box .main-slide .pagenation .swiper-pagination-bullet{ width: 6px; height: 6px; border-radius: 3px; background: #fff; border: solid 1px #60431d; opacity: 1; transition: 3s; }
.mv .shadow-box .main-slide .pagenation .swiper-pagination-bullet.swiper-pagination-bullet-active{ background: #60431d; }
.mv .shadow-box .news{ width: 77rem; margin-left: auto; display: flex; align-items: center; position: relative; padding: .8rem 8.5rem .8rem 0; }
.mv .shadow-box .news dt{ font-size: 2.4rem; color: #644218; width: 10rem; }
.mv .shadow-box .news dd{ width: calc(100% - 10rem); letter-spacing: .07em; }
.mv .shadow-box .news dd a{ display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; -webkit-text-overflow: ellipsis; -o-text-overflow: ellipsis; }
.mv .shadow-box .news dd a .time{ display: inline-block; margin-right: 1.5em; }
.mv .shadow-box .news > a{ position: absolute; right: 2.4rem; display: inline-block; padding-right: 1.5rem; }
.mv .shadow-box .news > a:after{ content: ''; width: 0; height: 0; border-style: solid; border-width: .5rem 0 .5rem .5rem; border-color: transparent transparent transparent #644218; position: absolute; top: 50%; right: 0; transform: translateY(-50%); }
.mv .inner{ display: flex; justify-content: flex-end; align-items: center; width: 1220px; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); }
.mv .inner p{ -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-feature-settings: "liga" 0; line-height: 1.5; font-family: 'Noto Serif JP', serif;}
.mv .inner p:nth-of-type(1){ font-size: 1.7rem; color: #aa8d77; order: 2; margin-left: 2rem; }
.mv .inner p:nth-of-type(2){ font-size: 3.8rem; order: 1; }
.mv .inner.ads{width: 1375px;align-items: flex-start;}
.mv .inner.ads p:nth-of-type(1){ order: 3;}
/*.mv .inner.ads p:nth-of-type(2){ font-size: 1.7rem; color: #aa8d77; order: 2; margin-left: 2rem; }*/
.mv .inner.ads p:nth-of-type(2){ font-size: 4.2vh; order: 1; }

.mv + .banner-covid{ width: 77rem; height: 10rem; background: #fed5d3; display: flex; align-items: center; margin: 0 auto 18rem; position: relative; padding-left: 3.3rem; }
.mv + .banner-covid:hover{ opacity: 1; background: #ffacbd; }
.mv + .banner-covid dl{  }
.mv + .banner-covid dl dt{ font-size: 2.5rem; line-height: 1.7; }
.mv + .banner-covid dl dd{ font-size: 1.4rem; display: inline-block; position: relative; padding-right: 2.2rem; }
.mv + .banner-covid dl dd:after{ content: ''; width: 0; height: 0; border-style: solid; border-width: .5rem 0 .5rem .5rem; border-color: transparent transparent transparent #4d4d4d; position: absolute; top: 50%; right: 0; transform: translateY(-50%); }
.mv + .banner-covid img{ position: absolute; bottom: 0; right: 0; }

h2.vertical{ -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-feature-settings: "liga" 0; white-space: nowrap; font-size: 3.2rem; font-family: shippori-mincho, sans-serif; font-weight: 600; color: #644218; background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.8534007352941176) 62%, rgba(255,255,255,0) 100%); display: table; padding: 1.5rem 0 4rem; position: absolute; top: -6.4rem; letter-spacing: .11em;font-family: 'Noto Serif JP', serif; }
h2.vertical:before{ content: ''; width: .4rem; height: 15rem; background: #f0ce83; position: absolute; left: -.4rem; top: 0; }
h2.vertical:after{ content: attr(data-en); font-size: 1.8rem; color: #aa8d77; margin-top: 2rem; letter-spacing: .1em; }
h2.vertical.right{ right: -11rem; }
h2.vertical.left{ left: -11rem; }
h2.vertical .rotate{ display: inline-block; transform: rotate(-90deg); margin: .3rem 0; }

.sec-concept{ position: relative; z-index: 0; padding: 16.4rem 0 20rem; }
.sec-concept:before{ content: ''; width: 50%; height: 100%; background: url(../images/index/webp/concept-bg01.webp) no-repeat center/cover; position: absolute; top: 0; left: 0; z-index: -1; }
.sec-concept .wrap{ z-index: 0; padding-top: 5.5rem; padding-bottom: 6.5rem; }
.sec-concept .wrap:before{ content: ''; width: calc(50vw + 45rem); height: 100%; background: #fff; position: absolute; left: -10rem; top: 0; z-index: -2; border-radius: 5rem 0 0 0; }
.sec-concept .wrap:after{ content: ''; width: calc(50vw + 45rem); height: 100%; background: linear-gradient(90deg, rgba(254,213,211,1) 0%, rgba(254,213,211,1) 26%, rgba(255,248,228,1) 100%); position: absolute; top: 0; left: -10rem; z-index: -1; opacity: .5; border-radius: 5rem 0 0 0; }
.sec-concept .item01{ position: absolute; top: -1rem; right: -37rem; }
.sec-concept h3{ font-size: 2.8rem; margin-bottom: 2.2rem; white-space: nowrap; letter-spacing: .1em; }
.sec-concept h3 span{ font-size: 2.4rem; color: #ff92a0; display: inline-block; margin-bottom: 1rem; }
.sec-concept h3 .strong{ font-size: 4.6rem; color: #ff92a0; line-height: 1; display: inline-block; margin: 0 .5rem; }
.sec-concept .btn{ margin: 3.8rem auto 0; }

.sec-feature{ padding-bottom: 18rem; position: relative; z-index: 0; }
.sec-feature:before{ content: ''; width: 50vw; height: 71.1rem; background: url(../images/index/webp/feature-bg01.webp) no-repeat center/cover; position: absolute; bottom: 0; right: 0; z-index: -1; }
.sec-feature .wrap{ padding-top: 5.6rem; padding-bottom: 3.3rem; z-index: 0; }
.sec-feature .wrap:before{ content: ''; width: calc(50vw + 45rem); height: 100%; background: linear-gradient(90deg, rgba(254,252,245,1) 0%, rgba(252,239,237,1) 100%); position: absolute; top: 0; right: -10rem; z-index: -1; border-radius: 0 5rem 5rem 0; }
.sec-feature h3:nth-of-type(1){ font-size: 2.6rem; color: #ff92a0; text-align: center; margin-bottom: 5.4rem; }
.sec-feature ol{ display: flex; flex-wrap: wrap; justify-content: space-between; counter-reset: feature; padding-bottom: 4rem; border-bottom: solid 1px; margin-bottom: 2.8rem; }
.sec-feature ol li{ width: 21.6rem; position: relative; }
.sec-feature ol li:nth-of-type(n+4){ margin-top: 3.2rem; }
.sec-feature ol li:before{ counter-increment: feature; content: counter(feature); font-family: shippori-mincho, sans-serif; font-weight: 600; font-size: 5rem; color: #fff; line-height: 1; position: absolute; top: 12rem; left: 1.3rem; }
.sec-feature ol li img{ display: block; width: 100%; border-radius: 3.3rem 0 0 0; }
.sec-feature ol li h4{ font-size: 1.8rem; text-align: center; line-height: 1.4; background: linear-gradient(90deg, rgba(170,141,119,1) 0%, rgba(227,199,163,1) 100%); color: #fff; padding: .5rem 0; margin-bottom: 1rem; }
.sec-feature ol + h3{ font-size: 2.5rem; color: #644218; text-align: center; margin-bottom: 2.6rem; }
.sec-feature ol + h3 + .row{ align-items: center; }
.sec-feature ol + h3 + .row a.tel{ display: inline-block; font-size: 3.8rem; color: #644218; padding-left: 3.1rem; background: url(../images/common/icon-tel02.png) no-repeat center left/2.1rem; }

.sec-treatment{ padding-top: 4.7rem; z-index: 0; margin-bottom: 22rem; }
.sec-treatment:before{ content: ''; width: 100vw; height: 95rem; background: linear-gradient(180deg, rgba(255,248,228,1) 0%, rgba(255,255,255,0) 100%); position: absolute; top: 0; left: 50%; transform: translateX(-50%); z-index: -1; }
.sec-treatment h3{ font-size: 2.6rem; color: #ff92a0; line-height: 1.7; margin-bottom: 3.5rem; }
.sec-treatment .bg-grad{ margin-top: 2.5rem; background: linear-gradient(90deg, rgba(255,232,229,1) 0%, rgba(255,248,228,1) 83%, rgba(255,238,209,1) 100%); padding: 2.2rem 4.5rem 3.5rem; border-radius: 0 0 5rem 5rem; }
.sec-treatment .bg-grad h4{ font-size: 2.3rem; text-align: center; margin-bottom: 1rem; }
.sec-treatment .bg-grad h4 + p{ font-size: 1.4rem; text-align: center; margin-bottom: .4rem; }
.sec-treatment .bg-grad h4 + p .strong{ font-size: 2.2rem; font-weight: 600; line-height: 1.4; }
.sec-treatment .bg-grad h4 + p + small{ display: block; text-align: center; font-size: 1.3rem; margin-bottom: 2rem;font-family: 'Noto Serif JP', serif; }
.sec-treatment .bg-grad table{ width: 100%; line-height: 1.6; margin-bottom: 3.2rem; }
.sec-treatment .bg-grad table th{ width: 1px; white-space: nowrap; font-size: 1.4rem; background: #ffacbd; text-align: center; vertical-align: middle; color: #fff; padding: .5rem 1rem;font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; }
.sec-treatment .bg-grad table td{ background: #fff; padding: .5rem 1.3rem; }
.sec-treatment .bg-grad .btn{ margin: 0 auto; }

.sec-dr{ padding-top: 7rem; padding-bottom: 9rem; z-index: 0; }
.sec-dr:before{ content: ''; width: 50vw; height: 100%; background: linear-gradient(5deg, rgba(254,213,211,1) 0%, rgba(255,248,228,1) 50%, rgba(255,248,228,1) 100%); position: absolute; top: 0; right: 35rem; z-index: -1; opacity: .6; }
.sec-dr h2.vertical{ top: -13rem; }
.sec-dr .img{ width: 50vw; height: 44rem; background: url(../images/index/webp/dr01.webp) no-repeat center/cover; position: absolute; top: -5rem; left: 35rem; border-radius: 5rem 0 0 0; }
.sec-dr div.left{ width: 50%; padding-right: 3.5rem; }
.sec-dr div.left h3{ line-height: 0; margin-bottom: 2.8rem; }
.sec-dr div.left p + p{ margin-top: 3rem; }
.sec-dr div.left .name{ margin: 4rem 0 2.8rem; }
.sec-dr div.left .name dt{ font-size: 1.8rem; margin-bottom: 1rem; }
.sec-dr div.left .name dd{ line-height: 0; text-align: center; }
.sec-dr div.right{ width: 50%; padding: 38rem 0 0 5rem; }
.sec-dr div.right h3{ font-size: 1.7rem; text-align: center; border-top: solid .5px; border-bottom: solid .5px; margin-bottom: 1rem; }
.sec-dr div.right ul{ line-height: 2; }
.sec-dr div.right ul + h3{ margin-top: 2.8rem; }

.img-box01{ display: block; width: 100%; }

.sec-second{ padding-top: 14.5rem; padding-bottom: 9rem; z-index: 0; }
.sec-second:before{ content: ''; width: 100vw; height: 100%; background: url(../images/index/webp/second-bg01.webp) no-repeat center/auto 100%; position: absolute; top: 0; left: 50%; transform: translateX(-50%); z-index: -1; }
.sec-second h2{ font-size: 2.3rem; text-align: center; margin-bottom: 5rem; }
.sec-second h2 > span{ background: #fff; display: table; margin: 0 auto; padding: 0 1em; }
.sec-second h2 > span + span{ margin-top: 1.5rem; }
.sec-second h2 > span span{ color: #ff9629; }
.sec-second h2 > span .strong{ font-size: 3rem;color: #4d4d4d; }
.sec-second .second-list{ display: flex; justify-content: space-between; flex-wrap: wrap; margin-bottom: 6rem; }
.sec-second .second-list li{ width: 25rem; height: 17rem; background: url(../images/index/icon-check01.png) #fff no-repeat top 2.2rem center/2.7rem; border-radius: 5rem 0; border: solid .3rem #ffc66d; padding: 6rem 2rem 0; }
.sec-second .second-list li:nth-of-type(n+4){ margin-top: 2.5rem; }
.sec-second .second-list li span{ display: block; text-align: center; font-size: 2rem; line-height: 1.9; border-top: solid .5px #aa8d77; }
.sec-second .second-list li span:last-of-type{ border-bottom: solid .5px #aa8d77; }
.sec-second .second-list + .btn{ margin: 0 auto; border: solid 1px #ff9629; border-bottom: solid 3px #ff9629; }
.sec-second .second-list + .btn:after{ border-left-color: #ff9629; }
.sec-second .second-list + .btn:hover{ background: #ff9629; color: #fff; border-bottom-color: #ffacbd; }
.sec-second .second-list + .btn:hover:after{ border-left-color: #fff; }

.img-box02{ display: block; width: 100%; margin-bottom: 18rem; }

.sec-first{ z-index: 0; padding-top: 8rem; padding-bottom: 4.6rem; margin-bottom: 20rem; }
.sec-first:before{ content: ''; width: calc(60vw + 40rem); height: 100%; background: linear-gradient(-90deg, rgba(255,248,228,1) 0%, rgba(254,213,211,1) 77%, rgba(254,213,211,1) 100%); opacity: .4; position: absolute; top: 0; left: -5rem; z-index: -1; border-radius: 5rem 0 0 0; }
.sec-first .head{ align-items: center; margin-bottom: 2.4rem; }
.sec-first .head img{ display: block; border-radius: 0 5rem 0 0; }
.sec-first .head h3{ font-size: 2.3rem; color: #ff92a0; letter-spacing: .13em; }
.sec-first .btn{ margin: 3rem auto 0; }

.sec-clinic{ margin-bottom: 12rem; }
.sec-clinic h2{ z-index: 10; top: -11rem; }
.sec-clinic .clinic-slide{ width: 120rem; margin-left: -25rem; margin-bottom: 2.3rem; }
.sec-clinic .clinic-slide li{ transform: scale(.7) translateX(0); transition: 1s; opacity: .5; line-height: 0; }
.sec-clinic .clinic-slide li.swiper-slide-next{ transform: scale(.7) translateX(5rem); }
.sec-clinic .clinic-slide li.swiper-slide-prev{ transform: scale(.7) translateX(-5rem); }
.sec-clinic .clinic-slide li.swiper-slide-active{ transform: scale(1) translateX(0); opacity: 1; }
.sec-clinic .clinic-slide li img{ border-radius: 5rem 0; }
.sec-clinic .clinic-slide .next{ width: 0; height: 0; border-style: solid; border-width: .7rem 0 .7rem .7rem; border-color: transparent transparent transparent #ffacbd; position: absolute; top: 50%; right: 44rem; transform: translateY(-50%); z-index: 10; cursor: pointer; }
.sec-clinic .clinic-slide .prev{ width: 0; height: 0; border-style: solid; border-width: .7rem .7rem .7rem 0; border-color: transparent #ffacbd transparent transparent; position: absolute; top: 50%; left: 44rem; transform: translateY(-50%); z-index: 10; cursor: pointer; }
.sec-clinic .txt-slide{ width: 55rem; margin: 0 auto 3rem; position: relative; transition: 1s; }
.sec-clinic .txt-slide li{ position: absolute; top: 0; left: 0; transition: 1s; }
.sec-clinic .txt-slide li h3{ font-size: 2rem; text-align: center; margin-bottom: 1.4rem; }
.sec-clinic .txt-slide + .btn{ margin: 0 auto; border-top: solid 1px #ffacbd; border-left: solid 1px #ffacbd; border-right: solid 1px #ffacbd; }
.sec-clinic .txt-slide + .btn:hover{ border-color: #644218; }

.sec-jidv{ position: relative; z-index: 0; padding-bottom: 18rem; margin-bottom: 4rem; }
.sec-jidv:before{ content: ''; width: 100%; height: 48rem; background: url(../images/index/webp/jidv-bg01.webp) no-repeat center/cover; position: absolute; bottom: 0; left: 0; z-index: -1; }
.sec-jidv .wrap{ padding: 3.5rem 5rem 5rem; background: #d9e9fa; border-radius: 5rem 0; box-shadow: 5px 5px 16px -6px rgb(0 0 0 / 50%); }
.sec-jidv h2{ font-size: 2.2rem; color: #008bd4; line-height: 1.4; text-align: center; margin-bottom: 1.1rem; }
.sec-jidv h2 .strong{ font-size: 2.8rem; }
.sec-jidv p{ margin-bottom: 2.8rem; }
.sec-jidv .banner{ display: table; line-height: 0; position: relative; overflow: hidden; }
.sec-jidv .banner:before{ content: ''; width: 100%; height: 100%; background: #fff; opacity: .5; position: absolute; top: 0; transform-origin: right; transform: scaleX(0); transition: transform .4s cubic-bezier(.215,.61,.355,1),-webkit-transform .4s cubic-bezier(.215,.61,.355,1); }
.sec-jidv .banner:hover{ opacity: 1; }
.sec-jidv .banner:hover:before{ transform: scaleX(1); transform-origin: left; transition: transform .4s cubic-bezier(.215,.61,.355,1),-webkit-transform .4s cubic-bezier(.215,.61,.355,1); }

.mb20{margin-bottom: 20px;}
.nav-copy{display: block;font-size: 1.1rem;margin-top:4rem;}

.media{
	width: 750px;
	margin: auto;
	text-align: center;
	margin-bottom: 80px;
}

.media img{
	width: 750px;
}

.mv + .banner-covid2{
	width: 730px;
	margin-bottom: 5rem;
}

.media + .banner-covid{ width: 750px; height: 10rem; background: #fed5d3; display: flex; align-items: center; margin: 0 auto 18rem; position: relative; padding-left: 3.3rem; }

.media + .ortho_banner{
	    background: linear-gradient(50deg,#fdfdcc 10%,#faaabe 100%);

}

.media + .ortho_banner dl dt {
 
    color: #644218;
}

   


.media + .banner-covid:hover{ background: #ffacbd; }

.media + .ortho_banner:hover{ opacity: .7;transition: .3s;background: linear-gradient(50deg,#fdfdcc 10%,#faaabe 100%);}

.media + .banner-covid dl{  }
.media + .banner-covid dl dt{ font-size: 2.5rem; line-height: 1.7; }
.media + .banner-covid dl dd{ font-size: 1.4rem; display: inline-block; position: relative; padding-right: 2.2rem; }
.media + .banner-covid dl dd:after{ content: ''; width: 0; height: 0; border-style: solid; border-width: .5rem 0 .5rem .5rem; border-color: transparent transparent transparent #4d4d4d; position: absolute; top: 50%; right: 0; transform: translateY(-50%); }
.media + .banner-covid img{ position: absolute; bottom: 0; right: 0; }
.btn-resv{
	font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif !important;
}

header .btn-list li:nth-of-type(2) a{
	font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif !important;
}

.sec-second h3{
	font-size: 24px;
	text-align: center;
	margin-bottom: 10px;
	line-height: 1.6;
}

.sec-second h3 span{
	border-top: 0.5px solid #4d4d4d;
	padding-top: 10px;
	font-size: 16px;
}

a.checkup{
	border: 1px solid;
	display: block;
	padding: 30px;
	margin-top: 50px;
}

.btn2{
	text-align: center;
	margin-top: 10px;
	position: relative;
}

.btn2:after{
	content: "▶︎";
	font-size: 9px;
	padding-left: 8px;
	position: absolute;
	top: 5px;
}


.please{
	width: 760px;
	margin: auto;
	background: rgba(255,238,209,1);
	border-radius: 5rem 0 5rem 0;
	padding: 30px;
	margin-bottom: 30px;
}

.please_txt{
	    color: #644218;
    font-size: 22px;
    text-align: center;
    padding-bottom: 0.4em;
    border-bottom: solid 1px;
    margin-bottom: 0.8em;
    font-weight: 600;
	font-family: 'Noto Serif JP', serif;
}

.please strong{
	background: linear-gradient(transparent 60%, #f0ce83 60%);
    font-weight: 700;
}

.please p{
	line-height: 1.8;
	text-align: center;
}

.please small{
	font-size: 12px;
}

.media2{
	margin-bottom: 20px;
}


	.menu_txt{
		font-size: 18px;
		border-bottom: 1px solid;
	}
	
	nav .sub_menu{
		display: flex;
		justify-content: space-between;
		margin-bottom: 50px;
		margin-top: 10px;
	}
	
	nav .sub_menu ul li a{
		
	}
	
	nav .sub_menu ul li a:before{
		content: "-";
		padding-right: 10px;
	}

.treat{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 30px;
	margin-top: 30px;
}

.treat_banner{
	width: 400px;
	padding: 10px;
	height: 160px;
	margin-bottom: 20px;
	position: relative;
	padding-left: 165px;
	padding-top: 50px;
	color: #3f51b5;
	
}

.treat_banner a{
	width: 400px;
	height: 160px;
	display: block;
}

.treat_banner:nth-child(2){
	padding-left: 0px;
	text-align: center;
	padding-top: 58px;
	color: #fff;
}


.treat_banner p{
	font-size: 12px;
	font-weight: 500;
}

.treat_banner:before{
	content: "";
	background: url("../images/whitening_banner.jpg");
	position: absolute;
	width: 400px;
	height: 160px;
	top:0;
	left: 0;
		border-radius: 15px;
	z-index: -1;
	background-repeat: no-repeat;
	background-size: cover;
	box-shadow: 0 0 6px #ccc;
}

.treat_banner:hover{
	opacity: .7;
	transition: .3s;
}

.treat_banner h4{
	font-size: 24px;
	font-family: 'Noto Serif JP', serif;
}

.treat_banner:first-child h4{
	-webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-feature-settings: "liga" 0;
    white-space: nowrap;
    letter-spacing: 10px;
	color: #ee697a;
}

.treat_banner:first-child:before{
	content: "";
	background: url("../images/ortho_banner.jpg");
	position: absolute;
	width: 400px;
	height: 160px;
	top:0;
	left: 0;
		border-radius: 15px;
	z-index: -1;
	background-repeat: no-repeat;
	background-size: cover;
	box-shadow: 0 0 6px #ccc;
}

.treat_banner p{
	line-height: 1.6;
}

.treat_banner:first-child p{
	margin-top: -52px;
	text-align: left;
	margin-left: 195px;
	color: #4d4d4d;
	  font-family: 'Noto Serif JP', serif;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	text-shadow: 1px 1px 5px #fff, -1px -1px 5px #fff, -1px 1px 5px #fff, 1px -1px 5px #fff;
}

.treat_banner:first-child p span{
	font-size: 24px;
	color: #644218;
	letter-spacing: 0px;
}

.treat_banner:first-child{
	padding-left: 10px;
	text-align: center;
	padding-top: 18px;
	
}


/**/
.treat_banner:nth-child(2):before{
	content: "";
	background: url("../images/wisdom_banner.jpg");
	position: absolute;
	width: 400px;
	height: 160px;
	top:0;
	left: 0;
		border-radius: 15px;
	z-index: -1;
	background-repeat: no-repeat;
	background-size: cover;
	box-shadow: 0 0 6px #ccc;
}

.treat_banner:nth-child(2) p{
	line-height: 1.4;
}

.treat_banner:nth-child(3){
	padding-left: 215px;
}

.treat_banner:nth-child(3) h4{
    font-size: 21px;
    font-family: 'Noto Serif JP', serif;
    background: #fff;
    width: 125px;
    padding-left: 10px;
    line-height: 1.5;
	margin-bottom: 10px;
}

.treat_banner:nth-child(3) p{
	  color: #fff;
    font-weight: 600;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 2px;
    font-size: 13px;
}

  
.treat_banner:nth-child(3) p.en_treat{
	font-size: 30px;
	color: #fff;
	font-family: cursive;
	position: absolute;
	bottom: -15px;
	left: 0px;
	font-weight: 400;
}
/**/
	
.treat_banner:nth-child(4){
	padding-left: 25px;
	color: #4d4d4d;
	padding-top: 85px;
}



.treat_banner:nth-child(4):before{
	content: "";
	background: url("../images/implant_banner.jpg");
	position: absolute;
	width: 400px;
	height: 160px;
	top:0;
	left: 0;
		border-radius: 15px;
	z-index: -1;
	background-repeat: no-repeat;
	background-size: cover;
	box-shadow: 0 0 6px #ccc;
}

.treat_banner:nth-child(4) h4{
	font-size: 26px;
	line-height: 1.5;
	color: #fff;
}

.treat_banner:nth-child(4) p{
	background: #222;
	color: #fff;
	width: 140px;
    font-size: 11px;
    text-align: center;
	line-height: 1.4;
}

.media3 {
    margin-bottom: 120px;
}

.recommend{
	width: 100%;
	margin: auto;
	overflow: hidden;
	display: flex;
}

.recommend .treat {
  display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
  animation: loop-slide 30s infinite linear 0s both;
}
@keyframes loop-slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

/* ホバー時に動きを止める（パターン2・3）*/
.slide-paused:hover .treat {
  -webkit-animation-play-state: paused;
  animation-play-state: paused;
}
/* ホバー時の装飾（パターン3） */
.content-hover{
  transition: all 0.2s;
  margin-right: 20px;
}
.content-hover:hover {
  transform: translateY(-10px);
  border-radius: 25px;
  box-shadow: 0 3px 10px 0 #333;
  opacity: 0.8;
  cursor: pointer;
}

.recommend_area{
	padding-top: 60px;
	padding-bottom: 30px;
	background: linear-gradient(180deg, rgba(255,248,228,1) 0%, rgba(255,255,255,0) 100%);
}

.recommend_area h2{
	width: 700px;
	margin: auto;
	font-size: 28px;
	color: #644218;
}

.recommend_area h2 span{
	font-size: 18px;
	color: #aa8d77;
}

	.sec-treatment .treat_banner{
		width: 340px !important;
	}
	
	.sec-treatment .treat_banner:before{
		width: 340px !important;
	}
	
.sec-treatment .treat_banner:first-child p{
	margin-left: 135px !important;;
}

/*
.sec-treatment .treat_banner:nth-child(2){
	padding-left: 155px;
}
*/

.sec-first2{
	width: 800px;
}

/* ==================================================
.l-recommendSwiper
================================================== */

.l-recommendSwiper {
	width: 100%;
	height: 100%;
	overflow: visible;
}

/*
.l-recommendSwiper .swiper-button-next,
.l-recommendSwiper .swiper-button-prev {
	position: absolute;
	top: -10rem;
	width: 5rem;
	height: 5rem;
	background: var(--white);
	border-radius: 50%;
	margin-top: 0;
	z-index: 10;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--swiper-navigation-color, var(--swiper-theme-color));
	transition: all 0.5s;
}

.l-recommendSwiper .swiper-button-next,
.l-recommendSwiper .swiper-rtl .swiper-button-prev {
	right: calc(50% - 6rem);
	left: auto;
}

.l-recommendSwiper .swiper-button-prev,
.l-recommendSwiper .swiper-rtl .swiper-button-next {
	left: calc(50% - 6rem);
	right: auto;
}

.l-recommendSwiper .swiper-button-prev::after,
.l-recommendSwiper .swiper-button-next::after {
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 50px;
	margin: auto;
	width: 50px;
}

.l-recommendSwiper .swiper-button-prev::after {
	background: url(../img/swiper-prev.svg) no-repeat center center/2rem 2rem;
}

.l-recommendSwiper .swiper-button-next::after {
	background: url(../img/swiper-next.svg) no-repeat center center/2rem 2rem;
}

.l-recommendSwiper .swiper-button-prev:hover,
.l-recommendSwiper .swiper-button-next:hover {
	background: var(--main-light);
}
*/

.l-recommendSwiper .swiper-container {
    width: 100%;
    height: 100%;
}

.l-recommendSwiper .swiper-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 1;
	/*display: flex;*/
	transition-property: transform;
	box-sizing: content-box;
	margin: 4.8rem 0;
}

.l-recommendSwiper .swiper-slide {
	border-radius: 2rem;
	overflow: hidden;
	text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}

.l-recommendSwiper .swiper-slide a:hover {
	opacity: 0.7;
}

.clinic-meta p a span{
	background: #aa8d77;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 600;
    padding: 0.3rem 2.5rem;
}
/*20241030追加*/
.group{
    margin-top:12rem;
}
.sec-feature2 ul {
    display: block;
    flex-wrap: wrap;
    justify-content: space-between;
    counter-reset: feature;
    padding-bottom: 4rem;
    margin-bottom: 2.8rem;
}
.sec-feature2 ul li {
    width: 70%;
    margin:0 auto;
    position: relative;
}
.sec-feature2 ul li img {
    display: block;
    width: 100%;
    border-radius: 3.3rem 0 0 0;
}
.sec-feature2 ul li h4 {
    background: linear-gradient(90deg, #aa8d77, #e3c7a3);
    color: #fff;
    font-size: 1.8rem;
    line-height: 1.4;
    margin-bottom: 1rem;
    padding: 1.5rem 0;
    text-align: center;
    position: relative;
}
.sec-feature2 ul li h4:after{
    content: '';
    background: url("../images/index/group_icon.svg")no-repeat;
    width: 20px;
    height: 20px;
    border-width: .5rem 0 .5rem .5rem;
    border-color: transparent transparent transparent #fff;
    position: absolute;
    top: 35%;
    right:13.8rem;
    transition: .5s;
}
/*20250124 追加*/
.fadeIn2s {
    animation-name: fadeIn2s;
    animation-delay: 2.5s;
    animation-duration: 1s;
    animation-fill-mode: forwards;
    transform: translateX(-50px);
    opacity: 0;
}
.ani.move{
    opacity: 1;
}
@keyframes fadeIn2s {
    0% {
    }
    100% {
        transform: translateX(0);
        opacity: 1;
     }
}
.inner.mincho strong{
                font-size: 2.7rem;
                color: #644218;
            }    
.explanatory_text{
     width:100%; 
    margin-top:3rem;
}
.explanatory_text p{
    font-size: 1.2rem;
}
/* 予約ツール共通 */
.tab-wrap.pc,
.tab-wrap.sp {
  width: 100%;
  max-width: 100%;
  text-align: center;
}
.tab-wrap h3 {
  margin-bottom: 1rem;
}
.tab-wrap .rn02 {
  margin-bottom: 1rem;
}
.tab-wrap input[type="radio"] {
  display: none;
}
.tab-content {
  display: none;
  border: 1px solid #ddd;
  background: #fff;
  height: 230px;
  width: 100%;
  max-width: 100%;
}
.tab-content iframe {
  width: 100%;
  height: 230px;
  border: none;
  display: block;
}

/* PC用タブ */
.tab-wrap-tabs.pc {
  display: flex;
  flex-wrap: wrap;
  overflow-x: auto;
  white-space: nowrap;
  border-bottom: 1px solid #ddd;
}
.tab-wrap-tabs.pc label {
  flex: 1 1 auto;
  min-width: 0;
  padding: 12px;
  background: #f0f0f0;
  color: #333;
  border: 1px solid #ddd;
  border-bottom: none;
  cursor: pointer;
  margin-right: -1px;
  line-height: 1.5;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-size: 1.3rem;
    width:12%;
}
#tab_pc1:checked ~ #content_pc1,
#tab_pc2:checked ~ #content_pc2,
#tab_pc3:checked ~ #content_pc3,
#tab_pc4:checked ~ #content_pc4,
#tab_pc5:checked ~ #content_pc5,
#tab_pc6:checked ~ #content_pc6,
#tab_pc7:checked ~ #content_pc7,
#tab_pc8:checked ~ #content_pc8 {
  display: block;
}
#tab_pc1:checked ~ .tab-wrap-tabs.pc label[for="tab_pc1"],
#tab_pc2:checked ~ .tab-wrap-tabs.pc label[for="tab_pc2"],
#tab_pc3:checked ~ .tab-wrap-tabs.pc label[for="tab_pc3"],
#tab_pc4:checked ~ .tab-wrap-tabs.pc label[for="tab_pc4"],
#tab_pc5:checked ~ .tab-wrap-tabs.pc label[for="tab_pc5"],
#tab_pc6:checked ~ .tab-wrap-tabs.pc label[for="tab_pc6"],
#tab_pc7:checked ~ .tab-wrap-tabs.pc label[for="tab_pc7"],
#tab_pc8:checked ~ .tab-wrap-tabs.pc label[for="tab_pc8"] {
  background-color: #fff;
  color: #ffacbd;
  border-bottom: 2px solid #ffacbd;
  font-weight: bold;
  z-index: 1;
}
/*よくある質問アコーディオン*/
.accordion {
    margin: 30px auto;
}
.accordion_title {
    position: relative;
    border: none;
    display: block;
    list-style: none;
    width: 100%;
    cursor: pointer;
    background: #ffffff;
    border: 2px solid #d8d8d8;
    padding: 1.4em 1.6em 1.4em;
    line-height: 1.6em;
    font-weight: bold;
}
.accordion_title:after {
    content: "+";
    position: absolute;
    top: calc(50% - 0.5em);
    right: 20px;
    line-height: 1;
    padding: 0;
    pointer-events: none;
}
.accordion_title span{
    font-size:2.4rem;
    color:#ff92a0;
}
.accordion[open] .accordion_title:after {
    content: "-";
}
.accordion_contents{
    padding:1rem 2rem;
}
.accordion_coments_title{
    font-size: 2rem;
    padding: 0;
    border-bottom: 5px solid #fed5d3;
    display: inline;
}

/* SP用タブ */
.tab-wrap.sp h3{
 margin-top: 2rem;
}
.tab-wrap-tabs.sp {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2px;
}

.tab-wrap-tabs.sp label {
  padding: 7px;
  background: #f0f0f0;
  color: #333;
  border: 1px solid #ddd;
  border-bottom: none;
  cursor: pointer;
  line-height: 1.5;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-size: 1.1rem;
}
#tab_sp1:checked ~ #content_sp1,
#tab_sp2:checked ~ #content_sp2,
#tab_sp3:checked ~ #content_sp3,
#tab_sp4:checked ~ #content_sp4,
#tab_sp5:checked ~ #content_sp5,
#tab_sp6:checked ~ #content_sp6,
#tab_sp7:checked ~ #content_sp7,
#tab_sp8:checked ~ #content_sp8 {
  display: block;
}
#tab_sp1:checked ~ .tab-wrap-tabs.sp label[for="tab_sp1"],
#tab_sp2:checked ~ .tab-wrap-tabs.sp label[for="tab_sp2"],
#tab_sp3:checked ~ .tab-wrap-tabs.sp label[for="tab_sp3"],
#tab_sp4:checked ~ .tab-wrap-tabs.sp label[for="tab_sp4"],
#tab_sp5:checked ~ .tab-wrap-tabs.sp label[for="tab_sp5"],
#tab_sp6:checked ~ .tab-wrap-tabs.sp label[for="tab_sp6"],
#tab_sp7:checked ~ .tab-wrap-tabs.sp label[for="tab_sp7"],
#tab_sp8:checked ~ .tab-wrap-tabs.sp label[for="tab_sp8"] {
  background-color: #fff;
  color: #ffacbd;
  border-bottom: 2px solid #ffacbd;
  font-weight: bold;
  z-index: 1;
    font-size: 1rem;
}

/* メディアクエリで出し分け */
@media screen and (max-width: 768px) {
  .tab-wrap.pc { display: none; }
}
@media screen and (min-width: 769px) {
  .tab-wrap.sp { display: none; }
}  

.news-section {
	width: 700px;
    margin: 5rem auto;
}

.news-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.news-item {
  display: flex;
  justify-content: space-between;
  padding: 1em;
  border-bottom: 1px solid #ccc;
}

.news-date {
  font-weight: bold;
  color: #6b5a4e;
}

.news-title {
  color: #333;
}

.read-more {
  text-align: right;
  margin-top: 1em;
	width: 50%;
}
@media(max-width: 768px){
	.modal{ width: calc(100% - 2.4rem); max-width: none; padding: 3rem 2rem; }
	.modal dt{ font-size: 2rem; line-height: 1.5; }
	.modal dd{ text-align: justify; }

	.clinic-meta{ padding-left: 1.2rem; margin-bottom: 1.2rem; }
	.clinic-meta h1, .clinic-meta p{ font-size: 1.1rem;line-height: 1.6; }

	.mv{ margin-bottom: 4.5rem; }
	.mv:before{ width: 100%; height: calc(100% - 0.25rem); bottom: 0; }
	.mv .shadow-box{ box-shadow: none; background: transparent; display: block; }
	.mv .shadow-box .main-slide{ width: 35rem; border-radius: 0 2.5rem 0 0; box-shadow: 5px 5px 16px -6px rgb(0 0 0 / 50%); margin-top: 4rem;
    height: 60vw;}
	.mv .shadow-box .main-slide li img{ height: auto; border-radius: 0 2.5rem 0 0; }
	.mv .shadow-box .news{ background: #ffedcb; display: block; padding: 0.6rem 1.5rem 0.85rem;
    width: 100%;margin-top: 23rem; }
	.mv .shadow-box .news dt{ font-size: 2rem; width: auto; }
	.mv .shadow-box .news dd{ width: 100%; font-size: 1.3rem; }
	.mv .shadow-box .news > a{ position: relative; right: 0; margin-left: auto; display: table; font-size: 1.3rem; }
	.mv .inner{ width: auto;
    z-index: 10;
    transform: none;
    top: 29.3rem;
    left: 1rem;display: block; }
	.mv .inner p:nth-of-type(1){ font-size: 1.2rem;
    margin-left: 0rem;
    padding-top: 0rem;
    margin-bottom: 1rem;}
	.mv .inner p:nth-of-type(2){font-size: 2.2rem;
    line-height: 1.3;letter-spacing: 0.3rem; }	
    .mv .inner p:nth-of-type(3){font-size: 2.2rem;
    line-height: 1.3;letter-spacing: 0.3rem; }
	
	.mv .inner p {
    writing-mode: horizontal-tb;
	}
/*
    .mv .inner.ads p:nth-of-type(2){font-size: 1.2rem;
        margin-left: 0rem;
        padding-top: 0rem;
        margin-bottom: 1rem;
    letter-spacing: 0.1rem;}	
*/
	.mv .inner.ads p:nth-of-type(2) {
        font-size: 4vh;
        line-height: 1.3;
        letter-spacing: 0.3rem;
    }
    .mv .inner.ads {
        top: 37.5rem;
    }

	.mv + .banner-covid{ width: 34.5rem; height: 12.5rem; padding-left: 1.3rem; margin-bottom: 4.5rem; }
	.mv + .banner-covid dl dt{ font-size: 1.9rem; line-height: 1.4; margin-bottom: .5rem; }
	.mv + .banner-covid dl dd{ font-size: 1.3rem; line-height: 1.6; padding-right: .8rem; }
	.mv + .banner-covid dl dd:after{ top: auto; transform: none; bottom: .5rem; }
	.mv + .banner-covid img{ width: 15.7rem; }

	h2.vertical{ font-size: 2.2rem; padding: 1rem .6rem 0 1.2rem; line-height: 1.2; top: -7.35rem; }
	h2.vertical:before{ content: attr(data-en); font-size: 1.25rem; color: #aa8d77; position: static; background: none; display: block; margin-left: 1.4rem; }
	h2.vertical:after{ content: ''; width: .28rem; height: 10.65rem; background: #f0ce83; position: absolute; left: 0; top: 0; margin-top: 0; }
	h2.vertical.right{ right: 3.25rem; }
	h2.vertical.left{ left: 3.25rem; }
	_::-webkit-full-page-media, _:future, :root h2.vertical .rotate{ transform: rotate(-90deg) translateY(-1.8rem); }

	.sec-concept{ padding: 14.5rem 1.5rem 18.7rem; background: url(../images/index/webp/concept-bg01-sp.webp) #e3d4b5 no-repeat center top/100%; }
	.sec-concept:before{ content: none; }
	.sec-concept .wrap{ padding-top: 7rem; padding-bottom: 6.4rem; }
	.sec-concept .wrap:after, .sec-concept .wrap:before{ width: calc(100% + 1.5rem); left: 0; }
	.sec-concept h2.vertical.right{ right: 2.5rem; }
	.sec-concept .item01{ top: auto; right: -8.25rem; bottom: 0; width: 22.75rem; }
	.sec-concept h3{ font-size: 1.6rem; text-align: center; margin-bottom: 1.8rem; }
	.sec-concept h3 span{ font-size: 1.8rem; text-align: center; display: block; margin-bottom: 1.3rem; }
	.sec-concept h3 strong{ font-size: 2.75rem; }
	.sec-concept .btn{ margin-top: 6rem; }

	.sec-feature{ margin-top: -6.5rem; padding-bottom: 0; }
	.sec-feature:before{ content: none; }
	.sec-feature .wrap{ padding: 8rem 3rem 5rem }
	.sec-feature .wrap:before{ width: 36rem; right: 1.5rem; border-radius: 0 2.5rem 0 0; }
	.sec-feature h3:nth-of-type(1){ font-size: 2.2rem; line-height: 1.4; font-feature-settings: initial; margin-bottom: 2.6rem; }
	.sec-feature ol{ width: 100%; margin: 0 auto 4.2rem;display: flex;}
	.sec-feature ol li{ width: 48%; }
	.sec-feature ol li:nth-of-type(n+2){ margin-top: 0rem;margin-bottom: 2.5vw }
	.sec-feature ol li:before{ font-size: 3rem; top: 5.4rem; left: 0.8rem; }
	.sec-feature ol li img{ border-radius: 4.5rem 0 0 0; }
	.sec-feature ol li h4{ font-size: 1.3rem;font-weight: 900; }
	.sec-feature ol + h3{ font-size: 1.7rem; }
	.sec-feature ol + h3 + .row a.tel{ font-size: 3.5rem; margin-bottom: 2rem; }
	
	.sec-feature ol p{
		font-size: 3.2vw;
	}
	.sec-feature .bg01{ display: block; width: 100%; height: 43vw;object-fit: cover;}
	
	.sec-concept h3 .strong{font-size: 3rem;padding-top: 2vw;}

	.sec-treatment{ padding-top: 6rem; margin-bottom: 8rem; }
	.sec-treatment h3{ font-size: 2.2rem; padding-left: 1.5rem; }
	.sec-treatment .bg-grad{ margin-top: 1.8rem; padding: 2.5rem 1rem 5rem; border-radius: 0 0 2.5rem 2.5rem; }
	.sec-treatment .bg-grad h4{ font-size: 1.6rem; }
	.sec-treatment .bg-grad h4 + p{ font-size: 1.2rem; }
	.sec-treatment .bg-grad h4 + p strong{ font-size: 1.8rem; }
	.sec-treatment .bg-grad h4 + p + small{ font-size: 1.1rem; }
	.sec-treatment .bg-grad table th{ font-size: 1.2rem; }
	.sec-treatment .bg-grad table td{ font-size: 1.2rem; }

	.sec-dr{ padding-top: 0; padding-bottom: 4.75rem; }
	.sec-dr:before{ width: 100vw; height: calc(100% - 8rem); right: 0; top: auto; bottom: 0; }
	.sec-dr h2.vertical{ top: -5rem; }
	.sec-dr .item01{ max-width: none; border-radius: 3rem 0 0 0; display: block; width: calc(100vw - 1.5rem); margin-left: auto; margin-bottom: 6rem; }
	.sec-dr div.left{ width: 100%; padding: 0 2rem; }
	.sec-dr div.left h3{ margin-bottom: 2.2rem; }
	.sec-dr div.left h3 img{ width: 100%; }
	.sec-dr div.left .name dd img{ width: 19.1rem; }

	.sec-second{ padding-top: 7rem; padding-bottom: 4.5rem; }
	.sec-second:before{ background-image: url(../images/index/webp/second-bg01-sp.webp); }
	.sec-second h2{ font-size: 1.6rem; margin-bottom: 3.2rem; }
	.sec-second h2 > span:nth-of-type(1){ color: #ff9629; width: 100%;  }
	.sec-second h2 > span:nth-of-type(2){ width: 20rem; }
	.sec-second h2 > span:nth-of-type(4){ width: 20rem; }
	.sec-second h2 > span + span{ margin-top: .6rem; }
	.sec-second h2 > span:nth-of-type(3){ width: 28.5rem; margin-top: 1.5rem; }
	.sec-second h2 > span .strong{ font-size: 2.1rem; }
	.sec-second .second-list{ margin-bottom: 4.4rem; }
	.sec-second .second-list li{ width: 16.4rem; height: 11.2rem; padding-top: 4rem; background-size: 1.8rem; background-position: top 1.4rem center; border-radius: 3rem 0; }
	.sec-second .second-list li:nth-of-type(n+3){ margin-top: 1.8rem; }
	.sec-second .second-list li span{ font-size: 1.3rem; }

	.img-box02{ margin-bottom: 10rem; }

	.sec-first{ padding: 10.75rem 3.25rem 5rem; margin-bottom: 14.3rem; }
	.sec-first:before{ width: calc(100vw - 1.5rem); left: auto; right: 0; }
	.sec-first .head{ margin-bottom: 2rem; }
	.sec-first .head img{ width: 100%; border-radius: 0 4.4rem 0 0; margin-bottom: 2rem; }
	.sec-first .head h3{ font-size: 1.7rem; line-height: 1.6; }

	.sec-clinic{ margin-bottom: 7.5rem; }
	.sec-clinic h2{ top: -9.75rem; }
	.sec-clinic .clinic-slide{ width: 31rem; margin: 0 auto 2.25rem;  }
	.sec-clinic .clinic-slide li,
	.sec-clinic .clinic-slide li.swiper-slide-next,
	.sec-clinic .clinic-slide li.swiper-slide-prev{ transform: scale(1) translateX(0); opacity: 1; }
	.sec-clinic .clinic-slide li img{ width: 22.5rem; display: block; margin: 0 auto; border-radius: 4rem 0; }
	.sec-clinic .clinic-slide .next{ right: 0; border-width: .6rem 0 .6rem .6rem; }
	.sec-clinic .clinic-slide .prev{ left: 0; border-width: .6rem .6rem .6rem 0; }
	.sec-clinic .txt-slide{ width: 100%; }

	.sec-jidv{ padding-bottom: 13rem; margin-bottom: 3.5rem; }
	.sec-jidv:before{ height: 24rem; background-image: url(../images/index/webp/jidv-bg01-sp.webp); }
	.sec-jidv .wrap{ width: 33.5rem; padding: 3.5rem 2rem 3.6rem; border-radius: 2.5rem 0; }
	.sec-jidv h2{ font-size: 1.75rem; line-height: 1.6; margin-bottom: 2.75rem; }
	.sec-jidv h2 strong{ font-size: 2.2rem; }
	.sec-jidv .banner{ display: block; }
	.sec-jidv .banner img{ width: 100%; }
	
	.media + .banner-covid{ width: 34.5rem; height: 12.5rem; padding-left: 1.3rem; margin-bottom: 4.5rem; }
	.media + .banner-covid dl dt{ font-size: 1.9rem; line-height: 1.4; margin-bottom: .5rem; }
	.media + .banner-covid dl dd{ font-size: 1.3rem; line-height: 1.6; padding-right: .8rem; }
	.media + .banner-covid dl dd:after{ top: auto; transform: none; bottom: .5rem; }
	.media + .banner-covid img{ width: 15.7rem; }
	
	.media {
    width: 34.5rem;
    margin: auto;
    text-align: center;
    margin-bottom: 5vw;
}
	
	.sec-second h3{
		font-size: 5vw;
	}
	
	a.checkup {
    border: 1px solid;
    display: block;
    padding: 4vw;
    margin-top: 10vw;
		padding-bottom: 4vw;
		padding-top: 5vw;
}
	
	.sec-second h3 span {
    border-top: .5px solid #4d4d4d;
    padding-top: 2.2vw;
    font-size: 3.3vw;
}
	
	.btn2 {
    text-align: center;
    margin-top: 1vw;
    position: relative;
}
	
	.sec-jidv h2 .strong {
    font-size: 2.3rem;
}
	
	
	.please{
	width: 92%;
	margin: auto;
	background: rgba(255,238,209,1);
	border-radius: 5rem 0 5rem 0;
	padding: 5vw;
	margin-bottom: 5vw;
}
	
	.please p{
		font-size: 3.4vw;
	}

.please p.please_txt{
	    color: #644218;
    font-size: 4.7vw;
    text-align: center;
    padding-bottom: 0.4em;
    border-bottom: solid 1px;
    margin-bottom: 0.8em;
    font-weight: 600;
}

.please strong{
	background: linear-gradient(transparent 60%, #f0ce83 60%);
    font-weight: 700;
}

.please p{
	line-height: 1.8;
	text-align: center;
}

.please small{
	font-size: 3.2vw;
}
	
	.media {
    width: 34.5rem;
    margin: auto;
    text-align: center;
    margin-bottom: 15vw;
}
	
	.media2{
		margin-bottom: 4vw;
	}
	
	.menu_txt{
		font-size: 4vw;
		border-bottom: 1px solid;
	}
	
	nav .sub_menu{
		display: flex;
		justify-content: space-between;
		margin-bottom: 13vw;
		margin-top: 2vw;
	}
	
	nav .sub_menu ul li a{
		
	}
	
	nav .sub_menu ul li a:before{
		content: "-";
		padding-right: 1vw;
	}
	
	
	h2.sp_h2{
		font-size: 1.1em;
		writing-mode:revert;
		background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,0.8534007352941176) 62%, rgba(255,255,255,0) 100%);
		background: none;
		left: 0;
		top: -28vw;
	}
	
	h2.sp_h2:after{
		content: none;
	}
	
	h2.sp_h2:before{
		 height: 5.5rem;
		margin-left: 0;
		font-size: 4.4rem
	}
	
	h2.sp_h2.left{
		top: 9vw;
		left: 4vw;
	}
	
	.sec-feature2 .wrap{
padding: 16rem 3rem 5rem;
	}
	
	.sec-concept2 {
		padding: 7.5rem 1.5rem 14rem;}
	   
	.sec-concept h3 .h2_po{
		display:contents;
		color: #ee697a;
		border-bottom: 1px solid;
	}
	
	h2.sp_h2.doctor_h2{
		top: 35vw;
    left: 4vw;
	}
	
	h2.vertical.first_h2{
		    left: 5.4vw;
    top: 13vw;
	}
	.sec-first2 {
    padding: 14.75rem 3.25rem 5rem;
    margin-bottom: 14.3rem;
}
	
	h2.vertical.clinic_h2{
		top: -28vw;
    left: 4vw;
	}
	
	.recommend_area h2 {
    width: 100%;
    margin: auto;
    font-size: 6vw;
    color: #644218;
    padding: 5vw;
}
	
	.recommend_area h2 span {
    font-size: 4vw;
    color: #aa8d77;
}
	
	.recommend_area .treat{
		margin: 0;
	}
	
	.recommend_area {
    padding-top: 5vw;
		padding-bottom: 8vw;}
	
	.content-hover:hover {
  transform: translateY(0px);
  border-radius: 25px;
  box-shadow: 0 3px 10px 0 #333;
  opacity: 0.8;
  cursor: pointer;
}
	
	.treat_banner{
		width: 340px !important;
	}
	
	.treat_banner:before{
		width: 340px !important;
	}
	
	.treat_banner:first-child p{
		margin-left: 135px;
	}
	
	.treat_banner:nth-child(2) {
    padding-left: 165px;
}
	
	.treat_banner:nth-child(2) h4{
		width: auto;
        font-size:18px;
	}
	
	.treat_banner:nth-child(2) p{
		font-size: 12px;
	}
	
	.sec-treatment .treat_banner
	{
		width: 100% !important;
	}
	
	.sec-treatment .treat_banner:before
	{
		width: 100% !important;
	}
	
	.sec-treatment .treat_banner:first-child p {
    margin-left: 42vw;
}
	
	.sec-treatment .treat_banner:nth-child(2) {
    padding-left: 5vw;
}
	
	.sec-first2{
	width: 100%;
}
 .sec-feature2 ul {
        width: 100%;
        margin: 0 auto 4.2rem;
        display: flex;
    }
    .sec-feature2 ul li {
        width: 100%;
    }
        .sec-feature2 ul li img {
        border-radius: 4.5rem 0 0;
    }
    .sec-feature2 ul li h4 {
        font-size: 1.3rem;
        font-weight: 900;
    }
    .sec-feature2 ul li h4:after{
        right:7.8rem;
    }
    .group{
        margin-top:0;
    }
    .group .wrap{
        padding: 14rem 3rem 0;
    }
    .group h2.vertical.first_h2 {
        top:2rem;
    }
.inner.mincho strong {
    font-size: 1.5rem;
    }
/*  よくある質問アコーディオン  */
        h2.vertical.right {
        top: -4rem;
    }
    .accordion_coments_title{
    font-size: 1.65rem;
    }
	h2.vertical.first_h2.blog_title {
		left: 4vw;
		top: 0;
	}
	.news-list {
		padding-top: 10rem;
	}
	.news-item {
    	display: flex;
    	justify-content: space-between;
    	padding: 1em;
    	border-bottom: 1px solid #ccc;
    	width: 50%;
	}
	
}