#main{
	overflow: inherit !important;
}
body{
	background-color: #F0EFEE !important;
}
button{
	color: #2E3429;
}
.table table{
	table-layout: fixed;
}
.table thead th{
	text-align: left;
}
.w_box{
	background-color: #fff !important;
}
.l-2col{
	display:flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: flex-start;
	width: min(90%,1470px);
	margin-inline: auto;
	padding-block: clamp(40px, 4.9vw, 95px) clamp(50px, 6.8vw, 130px);
}
.l-2col__side{
	width: 310px;
	position: sticky;
	left: 0;
	top: clamp(80px, 7.8vw, 150px);
}
.l-2col__body{
	width: calc(100% - 310px);
	padding-left: clamp(30px, 5.5vw, 105px);
}
.l-2col__section:not(:last-of-type){
	margin-bottom: clamp(50px, 6.8vw, 130px);
}
.c-beauty-sub-green{
	color: #528D00;
}
.u-text-green{
	color: #528D00;
}
.c-beauty-sub-fv{
	position: relative;
	z-index: 0;
	background-image: url("../images/beauty-sub-fv-bg.jpg");
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	overflow: hidden;
}
.c-beauty-sub-fv::before{
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	background-image: url("../images/beauty-sub-fv-btm.png");
	background-size: contain;
	background-position: center bottom;
	background-repeat: no-repeat;
}
.c-beauty-sub-fv__title{
	width: min(90%,1540px);
	margin-inline: auto;
	padding-block: clamp(150px, 13vw, 250px) clamp(70px, 7.3vw, 140px);
	color: #fff;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.c-beauty-sub-fv__en{
	font-family: "Marcellus", serif;
	font-size: clamp(35px, 4.1vw, 80px);
	letter-spacing: 0.1em;
}
.c-beauty-sub-fv__jp{
	font-size: 20px;
	font-family: "Shippori Mincho", serif;
	margin-left: clamp(15px, 1.6vw, 30px);
}
.c-beauty-sub-fv__line{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	pointer-events: none;
}
.c-beauty-sub-fv__line li{
	position: absolute;
	left: 8%;
	bottom: -30%;
	opacity: 0;
	will-change: transform, opacity;
	animation-name: beautyLineFloat;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
	width: 67px;
	height: 100vh;
	background-size: 100% auto;
	background-position: center top;
	background-repeat: repeat-y;
}
.c-beauty-sub-fv__line li:nth-child(1){
	/*background-image: url("../images/beauty-sub-fv-bgline01.png");*/
	left: 8%;
	animation-duration: 10s;
	animation-delay: 0s;
}
.c-beauty-sub-fv__line li:nth-child(2){
	/*background-image: url("../images/beauty-sub-fv-bgline02.png");*/
	left: calc(8% + 10px);
	animation-duration: 14s;
	animation-delay: -7s;
}
.c-beauty-sub-fv__line li:nth-child(3){
	/*background-image: url("../images/beauty-sub-fv-bgline03.png");*/
	left: calc(8% + 18px);
	animation-duration: 8s;
	animation-delay: -3s;
}
.c-beauty-sub-fv__line li:nth-child(4){
	/*background-image: url("../images/beauty-sub-fv-bgline04.png");*/
	animation-duration: 20s;
	animation-delay: -15s;
	z-index: 1;
}
@keyframes beautyLineFloat {
	0% {
		transform: translateY(0);
		opacity: 0;
	}
	10% {
		opacity: 0.8;
	}
	85% {
		opacity: 0.8;
	}
	100% {
		transform: translateY(-100vh);
		opacity: 0;
	}
}
.s-sub-pagenav{
	background-color: #E0DCDA;
	padding: 30px 30px 40px;
	border-radius: 4px;
}
.s-sub-pagenav__title{
	font-family: "Marcellus", serif;
	font-size: 17px;
	color: #BFB8B4;
	line-height: 1.4;
	letter-spacing: 0.1em;
	margin-bottom: clamp(15px, 1.6vw, 30px);
}
.s-sub-pagenav__item:not(:last-child){
	margin-bottom: 15px;
}
.s-sub-pagenav__link{
	font-family: "Shippori Mincho", serif;
	padding-left: 18px;
	position: relative;
	transition: color 0.5s ease;
}
.s-sub-pagenav__link:hover,
.s-sub-pagenav__link.is-active{
	color: #528D00;
}
.s-sub-pagenav__link::before{
	content:"";
	position:absolute;
	top:50%;
	left:0;
	transform:translateY(-50%);	
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 3px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 6px solid #528D00;
	border-right: 0;
}
.c-beauty-sub-en-title{
	font-family: "Marcellus", serif;
	color: #528D00;
	letter-spacing: 0.1em;
	padding-left: 28px;
	position: relative;
	display: flex;
	align-items: center;
	margin-bottom: clamp(30px, 3.4vw, 65px);
}
.c-beauty-sub-en-title::before{
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background: url("../images/logo-icon.svg") center center / contain no-repeat;
	width: 1em;
	height: 1em;
}
.c-beauty-sub-en-title::after{
	content: '';
	flex-grow: 1;
	margin-left: clamp(25px, 2.6vw, 50px);
	height: 1px;
	background-color: #BFB8B4;
}
.c-beauty-sub-jp-title{
	font-family: "Shippori Mincho", serif;
	font-size: clamp(22px, 1.5vw, 28px);
	margin-bottom: clamp(20px, 2vw, 40px);
}
.c-beauty-sub-flex{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.c-beauty-sub-flex.c-beauty-sub-flex--reverse{
	flex-direction: row-reverse;
}
.c-beauty-sub-flex__text{
	width: 49%;
}
.c-beauty-sub-flex__img{
	width: 46.5%;
}
.c-beauty-sub-flex__img img{
	width: 100;
	height: auto;
	filter: drop-shadow(0 0 10px rgba(0,0,0,0.08));
}
.c-beauty-sub-flex__text > p:not(:first-of-type){
	margin-top: 1.8em;
}
.c-beauty-sub-icon-title{
	color: #528D00;
	padding-left: 30px;
	position: relative;
	display: flex;
	align-items: center;
	font-size: 18px;
}
.c-beauty-sub-icon-title::before{
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background: url("../images/logo-icon.svg") center center / contain no-repeat;
	width: 20px;
	height: 20px;
}
.c-beauty-sub-text{
	font-size: 15px;
	color: #717170;
}
.c-beauty-sub-about-box{
	border: 1px solid #CECECB;
	background-color: #EDEBEA;
	padding: clamp(20px, 2vw, 40px);
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
}
.c-beauty-sub-about-box .c-beauty-sub-icon-title{
	width: 270px;
}
.c-beauty-sub-about-box__text{
	width: calc(100% - 270px);
}
.c-beauty-sub-about-box__text .c-beauty-sub-text{
	margin-top: 15px;
}
.c-beauty-sub-about-box__text .c-reservation-links{
	margin-top: 24px;
}
.c-reservation-links{
	display: flex;
	gap: 10px;
	align-items: center;
	flex-wrap: wrap;
}
.c-reservation-links a{
	width: min(100%,140px);
	padding: 10px;
	border-radius: 5px;
	border: 1px solid #DE6A06;
	background-color: #DE6A06;
	color: #fff;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1.3;
}
.c-reservation-links a svg{
	height: clamp(16px, 0.93vw, 18px);
	width: auto;
	margin-right: 10px;
}
.c-reservation-links a svg path{
	transition:all ease 0.5s;
}
.c-reservation-links a:nth-child(2){
	border: 1px solid #549502;
	background-color: #549502;
}
.c-reservation-links a:nth-child(2) i{
	color: #549502;
}
@media (any-hover: hover) {
	.c-reservation-links a:hover{
		background-color: transparent;
		color: #DE6A06;
	}
	.c-reservation-links a:nth-child(2):hover{
		background-color: transparent;
		color: #549502;
	}
	.c-reservation-links a:hover svg path{
		fill: #DE6A06;
	}
	.c-reservation-links a:nth-child(2):hover svg path{
		fill: #549502;
	}
}
.c-beauty-sub-green-box{
	background: url("../images/beauty-sub-green-box-bg.jpg") center bottom / cover no-repeat;
	padding: clamp(20px, 3.1vw, 60px) clamp(20px, 4.9vw, 95px) clamp(20px, 4.1vw, 80px);
}
.c-beauty-sub-green-box .c-beauty-sub-jp-title{
	text-align: center;
	color: #fff;
	margin-bottom: clamp(15px, 1.6vw, 30px);
}
.c-beauty-sub-green-box__text{
	text-align: center;
	color: #fff;
	margin-bottom: clamp(20px, 2vw, 40px);
}
.c-beauty-sub-maru-list{
	display: grid;
	grid-column-gap: 24px;
	grid-row-gap: 20px;
	grid-template-columns: repeat(3, 1fr);
}
.c-beauty-sub-maru-list.c-beauty-sub-maru-list--2col{
	grid-template-columns: repeat(2, 1fr);
}
.c-beauty-sub-maru-list__item{
	padding: 10px 24px;
	background-color: #F0EFEE;
	border-radius: 4px;
	display: grid;
	place-items: center start;
}
.c-beauty-sub-maru-list__text{
	padding-left: 28px;
	position: relative;
}
.c-beauty-sub-maru-list__text::before{
	content: '・';
	color: #528D00;
	position: absolute;
	left: 0;
	top: 0;
}
.c-beauty-sub-introduce{
	display: grid;
	gap: 30px;
	grid-template-columns: repeat(2, 1fr);
}
.c-beauty-sub-introduce.c-beauty-sub-introduce--1col{
	grid-template-columns: repeat(1, 1fr);
}
.c-beauty-sub-introduce__item{
	border: 1px solid #CECECB;
	background-color: #EDEBEA;
	padding: clamp(20px, 2.3vw, 45px) clamp(20px, 1.6vw, 30px);
}
.c-beauty-sub-introduce__title{
	font-size: 20px;
	margin-bottom: clamp(15px, 1.3vw, 25px);
	font-family: "Shippori Mincho", serif;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	column-gap: clamp(15px, 1.3vw, 25px);
}
.c-beauty-sub-introduce__title-en{
	font-size: 14px;
	letter-spacing: 0.1em;
	color: #528D00;
	font-family: "Marcellus", serif;
}
.c-beauty-sub-introduce__item .c-beauty-sub-bg-list__item{
	margin-bottom: clamp(15px, 1.6vw, 30px);
}
.c-beauty-sub-introduce__green{
	color: #528D00;
	font-size: 18px;
	margin-bottom: 15px;
	line-height: 1.6;
}
.c-beauty-sub-introduce__text{
	font-size: 14px;
	color: #717170;
}
.c-beauty-sub-flow__item:not(:last-child){
	margin-bottom: 45px;
}
.c-beauty-sub-flow__item{
	position: relative;
	border: 1px solid #CECECB;
	background-color: #EDEBEA;
	padding: clamp(20px, 2vw, 40px) clamp(20px, 1.6vw, 30px);
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.c-beauty-sub-flow__item:not(:last-child)::before{
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -30px;
	display: block;
	width: 16px;
	height: 14px;
	background: url("../images/beauty-sub-flow-arrow.svg") center bottom / contain no-repeat;
}
.c-beauty-sub-flow__img{
	width: clamp(50px, 4.1vw, 80px);
}
.c-beauty-sub-flow__text{
	width: calc(100% - clamp(50px, 4.1vw, 80px) - clamp(15px, 1.3vw, 25px));
}
.c-beauty-sub-flow__img img{
	width: 100%;
	height: auto;
}
.c-beauty-sub-flow__title{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
	margin-bottom: 8px;
}
.c-beauty-sub-flow__title-en{
	color: #BFB8B4;
	font-family: "Marcellus", serif;
}
.c-beauty-sub-flow__title-jp{
	color: #528D00;
	font-size: 18px;
}
.c-beauty-sub-flow__explain{
	color: #717170;
	font-size: 14px;
}
.c-beauty-sub-caution-list__item:not(:last-child){
	margin-bottom: clamp(20px, 1.6vw, 30px);
}
.c-beauty-sub-caution-list__title{
	color: #528D00;
	margin-bottom: 8px;
}
.c-beauty-sub-geen-title{
	font-size: 20px;
	color: #528D00;
	margin-bottom: 1em;
	font-family: "Shippori Mincho", serif;
}

/* 汎用accordion */
.c-accordion__item{
	border-radius: 4px;
	overflow: hidden;
}
.c-accordion__item:not(:last-child){
	margin-bottom: 24px;
}
.c-accordion__trigger{
	border: none;
	background-color: transparent;
	display: block;
	cursor: pointer;
	width: 100%;
	text-align: justify;
	position: relative;
	padding: 0;
}
.c-accordion__title{
	padding-right: 25px;
	padding: 20px 50px 20px 40px;
	position: relative;
	font-size: 16px;
	background-color: #E0DCDA;
}
.c-accordion__title::before{
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 20px;
	height: 2px;
	background-color: #528D00;
}
.c-accordion__icon{
	position: absolute;
	right: clamp(15px, 1.6vw, 30px);
	top: 50%;
	transform: translateY(-50%);
	display: block;
	width: 16px;
	height: 16px;
}
.c-accordion__icon::before,
.c-accordion__icon::after{
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 16px;
	height: 2px;
	transform: translate(-50%,-50%);
	transition: transform ease 0.5s;
	background-color: #528D00;
}
.c-accordion__item .c-accordion__icon::after {
	transform: translate(-50%,-50%) rotate(-90deg);
}
.c-accordion__trigger.is-open .c-accordion__icon::after {
	transform: translate(-50%,-50%) rotate(0);
}
.c-accordion__panel[hidden] { 
	display: none;
}
.c-accordion__panel {
	overflow: hidden;
}
.c-accordion__inner {
	transform-origin: top;
	transform: scaleY(0);
	transition: transform ease 0.5s;
	background-color: #E0DCDA;
	padding: 20px 40px clamp(20px, 1.6vw, 30px);
	border-top: 1px solid #BFB8B4;
	color: #717170;
}
.c-accordion__panel.is-open .c-accordion__inner {
	transform: scaleY(1);
}
.c-accordion__inner > p:not(:first-of-type) {
	margin-top: 1.8em;
}
.c-beauty-sub-polynucleotide .c-beauty-sub-green{
	margin-top: 24px;
}
.c-beauty-sub-comparison{
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(2, 1fr);
}
.c-beauty-sub-comparison.c-beauty-sub-comparison--1col{
	grid-template-columns: repeat(1, 1fr);
}
.c-beauty-sub-comparison__item{
	background-color: #E0DCDA;
	position: relative;
	padding: clamp(20px, 1.6vw, 30px) clamp(20px, 2vw, 40px);
	border-radius: 4px;
}
.c-beauty-sub-comparison__item:not(:last-child)::before{
	content: '';
	position: absolute;
	right: -29px;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	width: 34px;
	height: 12px;
	background: url("../images/beauty-sub-comparison-arrow.svg") center center / contain no-repeat;
	z-index: 1;
}
.c-beauty-sub-comparison__title{
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px solid #BFB8B4;
	font-size: 16px;
}
.c-beauty-sub-comparison__row{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.c-beauty-sub-comparison__row:not(:last-of-type){
	margin-bottom: 5px;
}
.c-beauty-sub-comparison__term{
	width: clamp(100px, 8.3vw, 160px);
}
.c-beauty-sub-comparison__description{
	width: calc(100% - clamp(100px, 8.3vw, 160px));
	color: #717170;
}

/* 共通 */
.c-beauty-sub-about .c-beauty-sub-flex{
	margin-bottom: clamp(30px, 2.6vw, 50px);
}
.c-beauty-sub-fees .c-beauty-sub-jp-title{
	margin-bottom: 24px;
}
.c-beauty-sub-fees .w_box{
	margin-top: 30px;
}
.c-beauty-sub-fees .w_box p{
	text-align: left;
}
.c-beauty-sub-fees .w_box .c-beauty-sub-green{
	margin-top: 10px;
}
.c-beauty-sub-fees .w_box .maru_list li .ttl{
	margin-bottom: 5px;
}

/* pluryal */
.p-pluryal-preparation__section:not(:last-of-type){
	margin-bottom: clamp(40px, 4.1vw, 80px);
}
.p-pluryal-preparation__section .c-beauty-sub-introduce{
	margin-bottom: clamp(25px, 2.3vw, 45px);
}
.p-pluryal-preparation__section .c-beauty-sub-bg-list{
	margin-bottom: clamp(25px, 2.6vw, 50px)
}
.p-pluryal-comparison .c-beauty-sub-comparison{
	margin-block: clamp(20px, 1.6vw, 30px);
}

/* sunekos */
.p-sunekos-comparison > p:not(:first-of-type){
	margin-top: 1.8em;
}
.p-sunekos-comparison .c-beauty-sub-comparison{
	margin-bottom: clamp(20px, 1.6vw, 30px);
}

/* treatment */
.p-jalupro-comparison .c-beauty-sub-comparison{
	margin-block: clamp(25px, 1.8vw, 35px) clamp(20px, 1.6vw, 30px);
}
@media screen and (max-width: 1600px) {
	.s-sub-pagenav{
		padding: 20px;
	}
	.l-2col__side{
		width: 270px;
	}
	.l-2col__body{
		width: calc(100% - 270px);
		padding-left: 5%;
	}
	.c-beauty-sub-green-box{
		padding: 30px;
	}
}
@media screen and (max-width: 1400px) {
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 1100px) {
	.l-2col__side{
		width: 100%;
		position: inherit;
		top: auto;
		margin-bottom: 30px;
	}
	.l-2col__body{
		width: 100%;
		padding-left: 0%;
	}
	.s-sub-pagenav__list{
		display: grid;
		gap: 10px;
		grid-template-columns: repeat(2, 1fr);
	}
	.s-sub-pagenav__item{
		margin-bottom: 0 !important;
	}
}
@media screen and (max-width:820px) {
	.c-beauty-sub-fv__jp{
		font-size: 18px;
	}
	.c-beauty-sub-jp-title{
		font-size: 20px;
	}
	.c-beauty-sub-icon-title{
		font-size: 16px;
		padding-left: 25px;
	}
	.c-beauty-sub-icon-title::before{
		width: 1em;
		height: 1em;
	}
	.c-beauty-sub-about-box .c-beauty-sub-icon-title{
		width: 100%;
		margin-bottom: 15px;
	}
	.c-beauty-sub-about-box__text{
		width: 100%;
	}
	.c-beauty-sub-text{
		font-size: 14px;
	}
	.c-beauty-sub-maru-list{
		gap: 20px;
		grid-template-columns: repeat(2, 1fr);
	}
	.c-beauty-sub-maru-list__text{
		padding-left: 15px;
	}
	.c-beauty-sub-maru-list__item{
		padding: 10px 15px;
	}
	.c-beauty-sub-introduce{
		grid-template-columns: repeat(1, 1fr);
	}
	.c-beauty-sub-flow__title-jp{
		font-size: 16px;
	}
	.c-beauty-sub-introduce__title{
		font-size: 18px;
	}
	.c-accordion__title{
		font-size: 15px;
		padding: 15px 50px 15px 30px;
	}
	.c-beauty-sub-caution-list__title{
		font-size: 15px;
	}
	.c-accordion__inner{
		padding: 20px 30px clamp(20px, 1.6vw, 30px);
	}
	.c-beauty-sub-geen-title{
		font-size: 18px;
	}
	
	/* 共通 */
	.c-beauty-sub-fees .c-beauty-sub-jp-title{
		margin-bottom: 10px;
	}
}
@media screen and (max-width:640px) {
	.s-sub-pagenav__list{
		grid-template-columns: repeat(1, 1fr) !important;
	}
	.c-beauty-sub-flex__text{
		width: 100%;
		margin-bottom: 20px;
	}
	.c-beauty-sub-flex__img{
		width: 100%;
	}
	.c-beauty-sub-green-box{
		padding: 20px;
	}
	.c-beauty-sub-maru-list{
		grid-template-columns: repeat(1, 1fr) !important;
	}
	.c-beauty-sub-green-box__text{
		text-align: justify;
	}
	.c-beauty-sub-flow__title{
		gap: 0;
	}
	.c-beauty-sub-flow__title-en{
		width: 100%;
		font-size: 14px;
	}
	.c-beauty-sub-flow__title-jp{
		width: 100%;
	}
	.c-beauty-sub-introduce__title-en{
		display: block;
		width: 100%;
	}
	.c-beauty-sub-comparison{
		grid-template-columns: repeat(1, 1fr) !important;
	}
	.c-beauty-sub-comparison__item:not(:last-child)::before{
		right: auto;
		left: 50%;
		transform: translate(-50%,0%) rotate(90deg);
		top: auto;
		bottom: -18px;
	}
}