@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
.main-img {
	margin-bottom: 280px;
}
.main-img__sub {
	align-items: flex-end;
}
.main-img__ul {
	order: 2;
	width: calc(50% + 354px);
}
.main-img__ul li {
	width: 100% !important;
}
.main-img__ul img {
	width: 100%;
	height: auto;
}
.main-img__txt-box {
	margin: 0 -500px -137px 0;
	padding-left: 70px;
	flex: 1;
	position: relative;
	z-index: 10;
	display: flex;
	justify-content: flex-end;
}
.main-img__txt-box__sub {
	max-width: 900px;
	width: 100%;
}
.main-img__head {
	margin-right: -50%;
	margin-bottom: 15px;
	font-size: 5.5rem;
	letter-spacing: 0.08em;
	line-height: 1;
	color: var(--sub-color03);
	font-weight: normal;
	text-align: left;
	font-family: var(--en-font);
}
.main-img__txt-box__txt {
	font-size: 3.4rem;
	color: var(--sub-color03);
}
/*
.news {
	padding: 67px 0;
}
*/
.news {
	padding: 0 0 67px;
}
.news-sub {
	width: 48%;
}
/*
.news-sub {
	width: 80%;
}
*/
.news__head {
	margin-bottom: -4px;
	font-size: 3rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.025em;
	color: var(--sub-color03);
}
.news-sub__box {
	padding: 20px 15px 6px;
	border-top: 1px solid var(--sub-color01);
	border-bottom: 1px solid var(--sub-color01);
	background-color: rgba(246, 242, 239, 0.6);
}
.news-dl {
	letter-spacing: 0.1em;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.news-dl__dt {
	width: 110px;
	margin-right: 12px;
}
.news-dl__dd {
	margin-bottom: 7px;
	width: calc(100% - 122px);
}
.news-dl__dd__link {
	text-decoration: none;
}
.news-link {
	margin-top: -6px;
	text-align: right;
}
.news-link__txt {
	padding: 0 23px 2px 0;
	display: inline-block;
	letter-spacing: 0.01em;
	background: url(../images/common/webp/icon04.webp) no-repeat right center;
	background-size: 7px auto;
}
.no-webp .news-link__txt { 
	background-image: url(../images/common/icon04.png);
}
.big-photo {
    height: 500px;
    background: url("../images/index/webp/photo02.webp");
    background-size: cover;
    background-attachment: fixed;
    background-repeat:no-repeat; 
    background-position: center center;
}
.no-webp .big-photo {
    background-image: url("../images/index/photo02.jpg");
}
.big-photo02 {
    background-image: url("../images/index/webp/photo22.webp");
}
.no-webp .big-photo02 {
    background-image: url("../images/index/photo22.jpg");
}
.big-photo03 {
	height: 191px;
    background-image: url("../images/index/webp/bg08.webp");
}
.no-webp .big-photo03 {
    background-image: url("../images/index/bg08.jpg");
}
.healthy {
	padding: 133px 0 0;
	box-sizing: border-box;
	border-top: 3px solid #F1EC67;
	background: url(../images/index/webp/bg01.webp) no-repeat center bottom -91px;
	background-size: 1020px auto;
}
.no-webp .healthy {
	background-image: url(../images/index/bg01.png);
}
.healthy__photo {
	order: 2;
	margin: -9px -260px 0 40px;
}
.healthy__text {
	flex: 1;
}
.healthy__head {
	margin: 0 -40px 37px 0;
	font-size: 3rem;
	letter-spacing: 0.05em;
	line-height: 1.733;
	color: var(--sub-color01);
}
.treatment {
	padding: 87px 0 103px;
	margin-top: -29px;
	position: relative;
	z-index: 1;
	background: url(../images/index/webp/bg02.webp) no-repeat center;
	background-size: cover;
}
.no-webp .treatment {
	background-image: url(../images/index/bg02.jpg);
}
.treatment__head {
	margin-bottom: 32px;
	text-align: center;
	font-size: 3.4rem;
	color: var(--sub-color02);
}
.treatment__txt {
	margin-bottom: 71px;
	text-align: center;
	line-height: 2.125;
	font-weight: bold;
	color: var(--sub-color02);
	font-size: 1.6rem;
}
.treatment__ul {
	display: flex;
	justify-content: center;
}
.treatment__ul__item {
	margin: 0 8px;
}
.intro {
	position: relative;
	padding: 162px 0 27px;
}
.intro:after {
	width: 100%;  
	height: 85px;
	background: url(../images/index/webp/bg07.webp) no-repeat center bottom;
	background-size: 100% 100%;
	position: absolute;  
	bottom: -85px;
	left: 0;  
	content: ""; 
}
.no-webp .intro:after {
	background-image: url(../images/index/bg07.png);
}
.intro-inner {
	margin-bottom: 94px;
	align-items: center;
}
.intro-inner + .intro-photo {
	margin-top: -60px;
}
.intro-inner__photo {
	position: relative;
	order: 2;
	width: calc(50% - 140px);
	height: 409px;
}
.intro-inner__photo__sub-photo02 {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.intro-inner__photo__img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.intro-inner__photo img {
	width: 100%;
}
.intro-inner__photo__sub-photo {
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 410px;
	transform: translateX(-50%);
}
.intro-inner__text {
	width: calc(50% + 80px);
	padding: 40px 140px 53px 50px;
	flex: 1;
	display: flex;
	justify-content: flex-end;
	border-radius: 0 20px 20px 0;
	background-color: var(--sub-color02);
}
.intro-inner__text02 {
	padding-top: 70px;
	padding-bottom: 53px;
}
.intro-inner__sub {
	max-width: 610px;
	width: 100%;
}
.intro-inner__sub__name {
	letter-spacing: 0.1em;
	color: var(--sub-color01);
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid var(--sub-color01);
}
.intro-inner__txt-span {
	margin-top: 3px;
	font-size: 1.7rem;
	font-weight: bold;
	display: block;
}
.intro-inner__txt-span02 {
	display: block;
	font-size: 1.5rem;
	line-height: 1.2;
	font-weight: 500;
}
.intro-inner__txt-span02 span {
	font-size: 3rem;
	font-weight: bold;
	margin-right: 19px;
}
.intro-inner__sub__txt {
	letter-spacing: 0.05em;
	margin-bottom: 30px;
}
.intro-inner__sub__txt:last-child {
	margin-bottom: 0;
}
.intro .reservation-link {
	width: 224px;
	margin: 40px 0 0 0;
}
.intro-photo {
	text-align: center;
	margin: 0 0 53px 41px;
}
.scroll-photo {
	margin-bottom: 145px;
}
.scroll-photo__list {
	display: flex;
}
.scroll-photo__item {
	margin-right: 15px;
}
.intro-inner--left .intro-inner__photo {
	order: 0;
}
.intro-inner--left .intro-inner__text {
	border-radius: 20px 0 0 20px;
	padding: 40px 50px 53px 140px;
	display: block;
}
.intro-inner--left .intro-inner__photo__sub-photo {
	width: 437px;
}
.intro-inner02 .intro-inner__photo__sub-photo {
	bottom: -1px;
	width: 605px;
	left: 54%;
}
.intro-inner + .com-link02 {
	margin-top: -42px;
}
.features {
	padding: 265px 0 132px;
}
.features__heading01 {
	margin-bottom: 4px;
}
.features__ttl {
	margin-bottom: 18px;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.875;
	color: var(--sub-color01);
	text-align: center;
}
.features__txt {
	margin-bottom: 85px;
	text-align: center;
	line-height: 2;
}
.features__list {
	margin: 0 -25px -12px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.features__list__item {
	margin: 0 53px 91px;
	width: 270px;
}
.features__list__p {
	margin-bottom: 15px;
}
.features__list__photo {
	margin-bottom: 10px;
	position: relative;
}
.features__list__txt {
	margin-bottom: 0;
	min-height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.67;
	text-align: center;
	color: var(--sub-color01);
}
.features__list__num {
	position: absolute;
	top: -20px;
	left: -24px;
	width: 60px;
	height: 60px;
	line-height: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 100%;
	font-size: 2.8rem;
	letter-spacing: 0.1em;
	color: var(--sub-color01);
	background-color: var(--sub-color04);
}
.trouble {
	padding: 73px 0 92px;
	background: url(../images/index/webp/bg04.webp) no-repeat left top var(--sub-color01);
	position: relative;
	z-index: 1;
	background-size: 650px auto;
	background-blend-mode:multiply;
}
.no-webp .trouble {
	background-image: url(../images/index/bg04.png);
}
.trouble:after {
	width: 1013px;  
	height: 676px;
	background: url(../images/index/webp/bg09.webp) no-repeat;
	background-size: 100% auto;
	position: absolute;  
	bottom: 0;
	right: -105px;  
	content: ""; 
	mix-blend-mode: multiply;
	z-index: -1;
}
.no-webp .trouble:after {
	background-image: url(../images/index/bg09.png);
}
.trouble__head {
	width: 400px;
	margin-right: 67px;
	font-size: 2rem;
	letter-spacing: 0.1em;
	font-weight: 500;
	color: var(--sub-color02);
}
.trouble__head__txt {
	margin-top: 14px;
	display: block;
	font-size: 4.2rem;
	line-height: 1.57;
}
.trouble__right {
	margin-right: -20px;
	padding-top: 7px;
	flex: 1;
}
.trouble__list {
	margin-bottom: 31px;
	display: flex;
	flex-wrap: wrap;
}
.trouble__list__item {
	margin: 0 20px 20px 0;
	width: 302px;
}
.trouble__list__item:nth-child(2n) {
	margin-right: 0;
}
.trouble__list__link {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 5px;
	min-height: 120px;
	border-radius: 5px;
	font-size: 2rem;
	font-weight: bold;
	letter-spacing: 0.1em;
	color: var(--sub-color01);
	background-color: var(--bg-color01);
}
.trouble__reservation-link {
	width: 230px;
	margin: 0 8px 0 auto;
}
.medical {
	padding: 167px 0 102px;
	position: relative;
	background-color: var(--sub-color02);
}
.medical__bg {
	position: absolute;
	bottom: -247px;
	right: 48px;
}
.medical-heading01 {
	margin-bottom: 3px;
}
.medical__ttl {
	margin-bottom: 18px;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.875;
	color: var(--sub-color01);
	text-align: center;
}
.medical__txt {
	margin-bottom: 52px;
	text-align: center;
	line-height: 2;
}
.medical-link {
	margin-bottom: 38px;
}
.medical-link__link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-radius: 10px;
	background-color: var(--bg-color01);
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.15),0 -0px 5px rgba(0, 0, 0, 0.15);
}
.medical__left img {
	border-radius: 10px 0 0 10px;
}
.medical__right {
	flex: 1;
	padding: 40px 20px 40PX 72px;
}
.medical-link__head {
	font-size: 2.4rem;
	color: var(--sub-color01);
	margin-bottom: 0;
	line-height: 1.6;
	letter-spacing: 0.1em;
}
.medical__list {
	display: flex;
	flex-wrap: wrap;
}
.medical__list__item {
	margin: 0 30px 30px 0;
	width: 192px;
}
.medical__list__item:nth-child(5n) {
	margin-right: 0;
}
.medical__list__link {
	display: flex;
	height: 192px;
	padding: 10px;
	box-sizing: border-box;
	text-align: center;
	background-color: var(--bg-color01);
	align-items: center;
	border-radius: 10px;
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
}
.medical__list__sub {
	padding-bottom: 14px;
	width: 100%;
}
.medical__list__img {
	min-height: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.medical__list__txt {
	margin: 0;
	font-size: 1.3rem;
	line-height: 1.5;
}
.medical__list__ttl {
	line-height: 1.5;
	margin-bottom: 4px;
	font-weight: bold;
	font-size: 1.8rem;
	color: var(--sub-color01);
}
.clinic {
	margin: 0 auto;
	padding: 54px 20px 20px;
	width: 958px;
	min-height: 448px;
	box-sizing: border-box;
	border-radius: 15px;
	position: relative;
	z-index: 1;
	background: url(../images/index/webp/photo24.webp) no-repeat left top #fff;
	background-size: 317px auto; 
	border: 1px solid #C1AE93;
	box-shadow: 0 0 15px rgba(193, 174, 147, 0.2) inset;
}
.no-webp .clinic {
	background-image: url(../images/index/photo24.png);
}
.clinic__inner {
	margin: 0 auto;
	width: 500px;
}
.clinic__txt {
	margin-bottom: 41px;
	text-align: center;
	font-size: 1.4rem;
	line-height: 1.93;
}
.clinic__txt01 {
	line-height: 1.93;
	margin-bottom: 7px;
	padding-bottom: 2px;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
	border-bottom: 1px solid var(--sub-color01);
}
.clinic__txt01__small {
	font-size: 1.4rem;
}
.clinic__head {
	margin-bottom: 36px;
	font-size: 2.3rem;
	color: var(--sub-color01);
	text-align: center;
	line-height: 1.2;
	letter-spacing: 0.1em;
}
.clinic__head__txt-span {
	margin-top: 10px;
	display: block;
	font-size: 1.7rem;
	font-weight: 500;
	letter-spacing: 0.1em;
}
.staff {
	padding-bottom: 232px;
	margin: -286px 0 0;
}
.staff__photo-big {
	margin-bottom: 172px;
}
.staff__photo-big img {
	width: 100%;
}
.staff__box__inner {
	max-height: 0px;
	transition: .5s;
	overflow: hidden;
}
.swiper-slide-active .staff__box__inner {
	max-height: 500px;
	transition: 1s;
}
.staff .heading01 {
	margin-bottom: 2px;
}
.staff .heading01__txt-span {
	margin-top: 14px;
}
.staff__ttl {
	margin-bottom: 18px;
	letter-spacing: 0.1em;
	text-align: center;
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 1.875;
	color: var(--sub-color01);
}
.staff__txt {
	margin-bottom: 43px;
	text-align: center;
}
.staff__list {
	margin-bottom: 64px;
}
.staff__list li {
	width: 560px;
	margin: 0 70px;
	flex-shrink: 0;
	transform: scale(0.7) !important;
	transition: .8s;
	transform-origin: 50% 30%;
}
.staff__list li.swiper-slide-active {
	transform: scale(1) !important;
}
.staff__box__txt-box {
	padding: 20px 40px 31px;
	background-color: var(--sub-color02);
}
.staff__box__txt {
	font-size: 1.4rem;
	line-height: 1.93;
}
.staff__box__ttl {
	margin-bottom: 14px;
	text-align: center;
	font-size: 1.7rem;
	font-weight: bold;
	color: var(--sub-color01);
}
.staff__box {
	position: relative;
}
.staff__prev {
	position: absolute;
	top: 130px;
	cursor: pointer;
	left: calc(50% - 405px);
	z-index: 2;
	transition: all ease 0.3s;
}
.staff__next {
	position: absolute;
	top: 130px	;
	right: calc(50% - 405px);
	cursor: pointer;
	z-index: 2;
	transition: all ease 0.3s;
}
.infection__banner {
	margin: -93px auto -64px;
	position: relative;
	z-index: 1;
	width: 800px;
}
.infection__banner__link {
	padding: 40px;
	display: flex;
	min-height: 157px;
	align-items: center;
	background: url(../images/index/webp/photo25.webp) no-repeat right bottom white;
	background-size: 247px auto;
	border-radius: 14px;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}
.no-webp .infection__banner__link {
	background-image: url(../images/index/photo25.png);
}
.infection__txt {
	letter-spacing: 0.05em;
	font-size: 1.4rem;
}
.infection__txt img {
	vertical-align: middle;
	margin-left: 10px;
}
.infection__ttl {
	margin-bottom:2px;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 0.1em;
	color: var(--sub-color01);
}
.infection__sub {
	padding-top: 3px;
}
.infection .scroll-photo__item {
	margin: 0;
}
.infection .scroll-photo {
	margin-bottom: 0;
}
.infection {
	padding-bottom: 115px;
}
.sec__logo {
	margin-bottom: 65px;
	text-align: center;
}
.sec__logo__span {
	display: block;
	font-size: 1.4rem;
	margin-top: 12px;
	color: var(--sub-color01);
	letter-spacing: 0.1em;
}
.sec .com-walk__left {
	margin-top: 0;
}
.sec__walk-inner {
	align-items: flex-end;
}




@media all and (min-width: 769px) {
	.news-dl__dd__link:hover {
		text-decoration: underline;
	}
	.features__heading01 .heading01__txt-span {
		margin-top: -10px;
	}
	.trouble__list__link:hover {
		background-color: #C1AE93;
	}
	.trouble__reservation-link .reservation-link__btn {
		min-height: 50px;
		padding-right: 5px;
	}
	/* .trouble__reservation-link .reservation-link__btn:hover {
		color: var(--sub-color01);
		opacity: 0.7;
		background-image: url(../images/common/webp/icon01.webp);
		background-color: var(--sub-color02);
	} 
	.no-webp .trouble__reservation-link .reservation-link__btn:hover {
		background-image: url(../images/common/icon01.png);
	}*/
	.medical-link__link:hover {
		background-color: var(--sub-color04);
	}
	.medical__list__link:hover {
		background-color: var(--sub-color04);
	}
	.infection__banner__link:hover {
		background-color: var(--sub-color04);
	}
	.sec__walk-inner {
		margin-top: -78px;
	}
	.sec__walk-inner .walk-inner__text {
		margin-bottom: -10px;
	}
	.staff__next:hover,
	.staff__prev:hover {
		opacity: 0.7;
	}
	.news-link__txt:hover {
		text-decoration: underline;
	}
}
.scroll-photo {
	position: relative;
	display: inline-flex;
}
.scroll-photo__item {
	flex-shrink: 0;
}
.scroll-photo__list {
	flex-shrink: 0;
	will-change: transform;
	animation: toleft 15s linear infinite;
}
@keyframes toleft {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-100%);
	}
}

/*20230419*/
.h1_title {
    font-size: 1.5rem;
    color: var(--sub-color03);
}
.main-img__txt-box {
    margin: 0 -500px -167px 0;
}

/*//20230419*/