@charset "UTF-8";

.btn01.large{
	width: 57.6rem;
	height: 9.6rem;
	font-size: 2.3rem;
	margin: 0 auto;
	font-weight: 700;
	background: linear-gradient(90deg, #ff700a, #ffa60a, #ff700a);
	background-size: 200% auto;
	background-position: right center;
	border-radius: 4.8rem;
	transition: .2s all ease;
	align-items: center;
	justify-content: center;
}
.btn01.large:after{
	width: 2.2rem;
	position: relative;
	left: auto;
	right: auto;
	top: auto;
	bottom: auto;
	margin-left: 1em;
}
#first-view .reserve-btn01:hover,
.btn01.large:hover{
	background-position: left center;
}


/* ++++++++++++++++#first-view+++++++++++++++++ */
#first-view{
	position: relative;
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
	z-index: 99;
	padding-top: 0;
}
#first-view-slide{
	width: 75%;
	border-radius: 1.6rem;
	overflow: hidden;
}
#first-view-slide .pic{
	display: flex;
}
#first-view-slide h3{
	letter-spacing: .15em;
	line-height: 2;
	color: #fff;
	padding-top: min(12rem, 6.25vw);
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	font-size: 2vw;
	writing-mode: vertical-rl;
	display: flex;
	align-items: center;
	background: linear-gradient(-90deg, rgba(162,123,100,.78), rgba(162,123,100,.3) 67%, rgba(162,123,100,0));
	padding-left: 2.5vw;
	padding-right: 2vw;
	text-shadow: 0 0 .2em rgba(162,123,100,.78);
	font-weight: 500;
}
#first-view .txt{
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-top: calc(min(12rem, 6.25vw) + 1.25vw);
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	z-index: 999;
	padding-left: 2.5vw;
}
#first-view .fukidashi{
	font-size: 1.354vw;
	line-height: 1.5;
	display: flex;
	flex-direction: column;
	align-items: center;
	font-weight: 700;
	position: relative;
	text-align: center;
	letter-spacing: .1em;
	position: relative;
	padding-left: 2.2em;
	padding-right: 2.2em;
}
#first-view .line{
	display: flex;
	justify-content: center;
	padding-left: .2em;
}


#first-view .fukidashi:before,
#first-view .fukidashi:after{
	content: "";
	display: block;
	position: absolute;
	bottom: -.15em;
	margin: auto;
	background: url(../images/fukidashi-bg01.svg) no-repeat;
	background-size: auto 100%;
	background-position: center bottom;
	width: 2.4em;
	height: 87%;
}
#first-view .fukidashi:before{
	left: 0;
}
#first-view .fukidashi:after{
	transform: scale(-1, 1);
	right: 0;
}

.review-icon{
	display: flex;
	justify-content: center;
	align-items: flex-start;
	padding: 1vw 0;
}
.review-icon li{
	width: 14vw;
	max-width: 24rem;
	margin: 0 .8rem;
}
.review-icon li a{
	display: block;
	width: 100%;
	transition: .3s all ease;
}
.review-icon li a:hover{
	opacity: .8;
}
#first-view h2{
	font-weight: 700;
	font-size: 2.25vw;
	line-height: 1.666;
	margin-bottom: 1.2vw;
	letter-spacing: .1em;
}
#first-view h2 span{
	background: #fff;
	padding: .1em .4em;
	line-height: 1.8;
}
#first-view h2 span:nth-of-type(2){
	padding-right: 0;
}
#first-view h2 span:nth-of-type(3){
	padding-left: 0;
}
#first-view h2 span:nth-of-type(4){
	padding-right: 0;
}
#first-view h2 span:nth-of-type(5){
	padding-left: 0;
}
#first-view .reserve-btn01{
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	position: relative;
	width: 25vw;
	height: 4.8vw;
	font-size: 1.354vw;
	font-weight: 700;
	background: linear-gradient(90deg, #ff700a, #ffa60a, #ff700a);
	background-size: 200% auto;
	background-position: right center;
	border-radius: 2.3vw;
	transition: .2s all ease;
}
#first-view .reserve-btn01:hover,
.btn01.large:hover{
	background-position: left center;
}
#first-view .reserve-btn01:before{
	content: "";
	display: block;
	width: 1.180vw;
	height: 100%;
	background: url(../images/reserve-icon01-back.svg) no-repeat;
	background-size: 100% auto;
	background-position: center center;
	margin-right: .6em;
}
#first-view .reserve-btn01:after{
	content: "";
	display: block;
	width: 1.180vw;
	height: 100%;
	background: url(../images/arrow01.svg) no-repeat;
	background-size: 100% auto;
	background-position: center center;
	margin-left: 1em;
	transition: .05s all ease;
}
.btn01.large{
	width: 57.6rem;
	height: 9.6rem;
	font-size: 2.6rem;
	margin: 0 auto;
	font-weight: 700;
	background: linear-gradient(90deg, #ff700a, #ffa60a, #ff700a);
	background-size: 200% auto;
	background-position: right center;
	border-radius: 4.8rem;
	transition: .2s all ease;
	align-items: center;
	justify-content: center;
}
.btn01.large:before{
	content: "";
	display: block;
	width: 2.2rem;
	height: 100%;
	position: relative;
	left: auto;
	right: auto;
	top: auto;
	bottom: auto;
	margin-right: .6em;
	background: url(../images/reserve-icon01-back.svg) no-repeat;
	background-position: center center;
}
.btn01.large:after{
	width: 2.2rem;
	position: relative;
	left: auto;
	right: auto;
	top: auto;
	bottom: auto;
	margin-left: 1em;

}
/* ++++++++++++++first-view animation+++++++++++++++ */
@keyframes zoomUp{
	0%{
		transform: scale(1);
	}
	100%{
		transform: scale(1.4);
	}
}
.add-animation .pic{
	animation: zoomUp 12s linear 0s normal both;
}

#first-view-slide h3 span{
	//opacity: 0;
	filter: blur(3em);
	transition: 4s all .5s cubic-bezier(0.19, 1, 0.22, 1);
}
#first-view-slide .add-animation h3 span{
	opacity: 1;
	filter: blur(0);
}

/* ++++++++++++++++#about+++++++++++++++++ */
#about{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	background-image: url(../images/about-section-bg01.svg);
	background-repeat: no-repeat;
	background-position: center top 9.8rem;
	background-size: auto 9.5rem;
	padding-top: 16rem;
	margin-top: -1.6rem;
}
#about h2{
	width: 100%;
}
.lead-element{
	display: flex;
	margin-bottom: 6rem;
}
#about .lead-txt{
	font-size: 2rem;
	padding-right: min(2.5vw, 3.6rem);
	text-align: center;
	margin: 8rem auto 6rem;
}
#about .lead-txt mark{
	background: linear-gradient(0deg, rgba(251,255,10,1), rgba(251,255,10,1) 45%, rgba(255,255,255,0) 45%, rgba(255,255,255,0) 100%);
	padding: 0 .25em;
}
.lead-flow,
.product-flow{
	width: calc(100% - 5vw);
	max-width: 136.8rem;
	margin: 0 auto 10rem;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
}
.lead-flow:before,
.product-flow:before{
	content: "";
	display: block;
	width: 100%;
	height: .1rem;
	position: absolute;
	left: 0;
	right: 0;
	top: 8rem;
	border-top: .1rem dashed #2bb1a9;
	z-index: 9;
}
.lead-flow dl,
.product-flow dl{
	display: flex;
	flex-direction: column-reverse;
	align-items: center;
	width: 16rem;
	position: relative;
	z-index: 9;
}
.lead-flow dd,
.product-flow dd{
	width: 100%;
	height: 16rem;
	position: relative;
	border-radius: 50%;
}
.lead-flow dd img,
.product-flow dd img{
	position: relative;
	z-index: 9;
}
.lead-flow dd:before,
.product-flow dd:before{
	content: "";
	display: block;
	width: calc(100% + .6rem);
	height: calc(100% + .6rem);
	position: absolute;
	left: -.4rem;
	top: -.4rem;
	border-radius: 50%;
	border: .1rem dashed #2bb1a9;
	background: #f3f9f9;
	z-index: 1;
}
.product-flow dd:before{
	background: rgba(243,249,249,1);
}
.lead-flow dt,
.product-flow dt{
	text-align: center;
	font-size: 1.6rem;
	margin-top: 1.5rem;
	line-height: 1.6;
	color: #108f88;
	font-weight: 500;
}
#about h3{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	font-weight: 700;
	font-size: 4rem;
	color: #108f88;
	letter-spacing: .175em;
	position: relative;
	z-index: 9;
	line-height: 1.75;
	padding: 0 .2em;
	position: relative;
}
.effect-ttl{
	border-bottom: .3rem dotted #108f88;
}
#about h3 span{
	border-bottom: .3rem dotted #188f88;
}
#about h3:nth-of-type(1):before{
	content: "";
	display: block;
	width: 16.6rem;
	height: 25.4rem;
	position: absolute;
	left: -11rem;
	bottom: -5.5rem;
	background: url(../images/about-bg-pic01.png) no-repeat;
	background-size: 100% auto;
	z-index: -1;
}
h3 .fukidashi{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 10em;
	height: 2.2em;
	border-radius: 1.1em;
	background: #108f88;
	position: relative;
	margin: 0 auto;
	color: #fff;
	font-size: 1.6rem;
	margin-bottom: 1.4rem;
}
h3 .fukidashi:after{
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 1.4rem solid #108f88;
	border-left: 1rem solid transparent;
	border-right: 1rem solid transparent;
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	margin: auto;
}
.effect-message{
	font-size: 2.2rem;
	font-weight: 700;
	text-align: left;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;
	border-radius: 1.2rem;
	position: relative;
	padding: min(3.6rem, 3.5vw) min(3.6rem, 3.5vw) min(4.8rem, 4.678vw);
	margin-bottom: 6rem;
	margin-top: 6rem;
}
.effect-message:before{
	content: "";
	display: block;
	width: calc(100% - 1.2rem);
	height: calc(100% - 1.2rem);
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	border: .1rem solid #108f88;
	border-radius: .8rem;
}
.effect-message:after{
	content: "";
	display: block;
	width: 30rem;
	height: 35.2rem;
	background: url(../images/effect-bg02.png) no-repeat;
	background-position: center top;
	background-size: 100% auto;
	position: absolute;
	right: -4.8rem;
	top: max(-3.6re, -3.5vw);
}
.effect-message p{
	padding-right: 25.2rem;
	line-height: 2;
}
@media screen and (max-width: 1240px){
	.effect-message:after{
		right: 1rem;
		width: 28rem;
	}
	.effect-message p{
		padding-right: 28.2rem;
	}
}

.effect-message .pic{
	width: 23.5rem;
	position: absolute;
	right: min(3.6rem, 3.5vw);
	bottom: max(-3.6rem, -3.5vw);
}
.effect-message mark{
	background: none;
	padding: 0 .05em;
	font-size: 135%;
	line-height: 1;
	color: #ff5757;
}
.effect-list{
	max-width: 144rem;
	margin: 0 auto;
}
.effect{
	background: #fff;
	border-radius: 2.4rem;
	display: flex;
	justify-content: space-between;
	position: relative;
}
.effect:nth-of-type(2n){
	flex-direction: row-reverse;
}
.effect:not(:last-of-type){
	margin-bottom: 7.2rem;
}
.effect .pic{
	overflow: hidden;
	margin: 0;
	width: 50%;
	display: flex;
}
.effect:nth-of-type(2n) .pic{
	padding-right: 2.4rem;
	border-radius: 2.4rem 0 0 2.4rem;
}
.effect:nth-of-type(2n+1) .pic{
	padding-left: 2.4rem;
	border-radius: 0 2.4rem 2.4rem 0;
}
.effect .txt{
	width: 50%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
}
.effect:nth-of-type(2n+1) .txt{
	padding: 3.6rem 3.6rem 6.6rem 4.8rem;
}
.effect:nth-of-type(2n) .txt{
	padding: 3.6rem 4.8rem 6.6rem 3.6rem;
}
.effect .parag{
	line-height: 2.25;
	letter-spacing: .1em;
	position: relative;
	z-index: 9;
	padding-left: 3.4rem;
}
.effect .parag li:not(:last-of-type){
	margin-bottom: 3rem;
}
.effect .parag li{
	padding-left: 3.4rem;
	position: relative;
}
.effect .parag li:before{
	content: "";
	display: block;
	width: 2.2rem;
	height: 2.2rem;
	background: url(../images/effect-icon01.svg) no-repeat;
	background-size: 100% auto;
	background-position: center center;
	position: absolute;
	left: 0;
	top: .5em;
}
.effect h4{
	font-size: 2.4rem;
	letter-spacing: .1em;
	margin-bottom: 3rem;
	line-height: 1.75;
	font-weight: 700;
	color: #108f88;
	z-index: 9;
	display: flex;
	align-items: center;
}
.effect h4 span{
	position: relative;
	display: block;
	padding: 0 .2em;
	margin-bottom: .2em;
}
.effect h4 span:after{
	content: "";
	display: block;
	width: 100%;
	height: .2rem;
	border-radius: .1rem;
	background: #108f88;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
}
.effect h4:before{
	content: attr(data-no);
	color: #fff;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #108f88;
	width: 9rem;
	height: 9rem;
	font-size: 3.6rem;
	margin-right: 1.2rem;
	font-family: 'Outfit', sans-serif;
	font-weight: 500;
	letter-spacing: 0;
	padding-top: .4em;
	background-image: url(../images/effect-txt01.svg);
	background-repeat: no-repeat;
	background-size: 55% auto;
	background-position: center 20%;
	box-sizing: border-box;
}

/* ++++++++++++++++++#earpick+++++++++++++++++ */
#earpick{
	padding: 0;
}
#earpick:before{
	content: "";
	display: block;
	width: 100%;
	height: 100vh;
	background: url(../images/earpick-bg01.jpg) no-repeat;
	background-position: center bottom;
	background-size: cover;
	position: sticky;
	left: 0;
	top: 0;
}
#earpick:after{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	background: linear-gradient(0deg, rgba(243,249,249,.85), rgba(243,249,249,.8), rgba(237,242,246,.3));
	opacity: 0;
	z-index: 2;
	transition: .6s all ease-out;
	backdrop-filter: blur(5px);
	-webkit-backdrop-filter: blur(5px);
}
#earpick.overlay:after{
	opacity: 1;
}
#earpick h2{
	line-height: 1.666;
	padding-top: 14.4rem;
	position: relative;
	z-index: 9;
	color: #108f88;
	font-size: min(4rem, 3.642vw);
	margin-bottom: 4rem;
	display: flex;
	justify-content: center;
	align-items: center;
	letter-spacing: .175em;
}
#earpick h2:before{
	content: "";
	display: block;
	width: min(33.9rem, 30.874vw);
	height: min(31.9rem, 29.052vw);
	background: url(../images/earpick-ttl-pic01.png) no-repeat;
	background-size: 100% auto;
	background-position: center center;
	transform: translateY(min(-1.5rem, 1.366vw));
}

#earpick .parag:not(:last-of-type){
	padding-bottom: 1.5em;
}

#earpick mark{
	background: none;
	font-weight: 700;
	color: #ff5757;
}
.effect mark{
	font-weight: 700;
	color: #ff5757;
	background: none;
}

.earpick-content{
	position: relative;
	z-index: 9;
	padding-bottom: 14.4rem;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 144rem;
	padding-left: 2.5vw;
	padding-right: 2.5vw;
}
.earpick-content .txt{
	width: 50%;
	padding-right: min(2.5vw, 3.6rem);
}
.earpick-content .pic-area{
	width: 50%;
	padding-left: min(2.5vw, 3.6rem);
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
}
#earpick .pic01{
	width: 70%;
	border-radius: 1.25vw;
	overflow: hidden;
}
#earpick .pic02{
	width: 51%;
	margin-left: -21%;
	margin-top: 51.7%;
	overflow: hidden;
	border-radius: .9107vw;
}
.product-flow{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
	max-width: 106.6rem;
}
.product-flow dl:last-of-type dd:after{
	content: "";
	display: block;
	width: 120%;
	height: 130%;
	position: absolute;
	left: -10%;
	top: -15%;
	background: url(../images/earpick-star01.png) no-repeat;
	background-position: center center;
	background-size: 100% auto;
}
h3 .fukidashi.long{
	width: 33em;
}
/* ++++++++++++++++before-after+++++++++++++++++ */
#before-after{
	background-image: url(../images/before-after-section-bg01.svg);
	background-repeat: no-repeat;
	background-size: auto 10.8rem;
	background-position: center top 7.5rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	overflow: hidden;
}
#before-after .sec-ttl01{
	margin-bottom: 4rem;
}
#before-after .description-area{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}
#before-after .description-area:before,
#before-after .description-area:after{
	content: "";
	display: block;
	width: min(10rem, 6.944vw);
	height: 100%;
	position: absolute;
	bottom: min(1.5rem, 1.041vw);
	background: url(../images/before-after-fukidashi01.svg) no-repeat;
	background-size: 100% auto;
}
#before-after .description-area:before{
	left: max(-12rem, -8.333vw);
	background-position: left bottom;
}
#before-after .description-area:after{
	right: max(-12rem, -8.333vw);
	background-position: right bottom;
	transform: scale(-1, 1);
}
#before-after .catch-copy{
	font-weight: 700;
	font-size: min(3.6rem, 2.5vw);
	line-height: 2;
}
#before-after .description-area .pic{
	margin-right: min(4rem, 2.777vw);
	width: min(26.5rem, 18.402vw);
}
#before-after .catch-copy mark{
	background: none;
	font-size: 150%;
	color: #ff5757;
	line-height: 1;
}

#before-after .comment{
	text-align: center;
	font-size: 1.8rem;
	margin-bottom: 2rem;
	letter-spacing: .1em;
	line-height: 1.8;
}
#before-after .caution{
	color: #fff;
	background: #d5000d;
	display: flex;
	align-items: center;
	padding: .5em 1.25em;
	margin-bottom: 4rem;
}
#before-after .caution:before{
	content: "";
	display: block;
	width: 1em;
	height: 1em;
	background: url(../images/caution-icon01.svg) no-repeat;
	background-position: center center;
	background-size: auto 100%;
	margin-right: .25em;
}
.before-after{
	width: 33.333%;
	padding: 0 2.5vw;
	display: flex;
	flex-direction: column;
	position: relative;
}
.before-after:nth-of-type(even){
	border-left: .1rem dashed #2bb1a9;
	border-right: .1rem dashed #2bb1a9;
}

.before-after .pic img{
	filter: blur(3rem);
}
.before-after .remove-blur .pic img{
	filter: blur(0);
}
.pic-outer{
	position: relative;
	overflow: hidden;
	border-radius: 1.25vw;
	margin-bottom: 0;
	margin-top: auto;
	cursor: pointer;
}
.before-after-area{
	padding: 5.4rem 0;
	border-radius: 2.4rem;
	background: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.before-after-outer{
	width: 100%;
	display: flex;
	justify-content: space-between;
	background: #fff;
	position: relative;
	z-index: 9;
}

.before-after{
	width: 33.333%;
	padding: 0 2.5vw;
	display: flex;
	flex-direction: column;
	position: relative;
}

.before-after:nth-of-type(even){
	border-left: .1rem dashed #2bb1a9;
	border-right: .1rem dashed #2bb1a9;
}
.pic-btn{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: #fff;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	background: rgba(0,0,0,.4);
	z-index: 999;
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: .1em;
	transition: .4s all ease;
	opacity: 0;
}
.remove-blur.pic-outer{
	cursor: auto;
}
.remove-blur .pic-btn{
	display: none;
}
.pic-outer:hover .pic-btn{
	opacity: 1;
}
.pic-btn .bg-white{
	font-size: 1.3rem;
	color: #222;
	padding: 0 .5em;
	margin-top: 1.5em;
	background: #fff;
	font-weight: 400;
	height: 2em;
	display: flex;
	align-items: center;
	justify-content: center;
}
.pic-btn .bg-white:before{
	content: "";
	display: block;
	width: 1.1em;
	height: 100%;
	background: url(../images/caution-icon02.svg) no-repeat;
	background-size: 100% auto;
	background-position: center center;
	margin-right: .5em;
}
.pic-btn:before{
	content: "";
	display: block;
	width: 100%;
	height: 2.25em;
	margin-bottom: 1.25em;
	background: url(../images/before-after-icon01.svg) no-repeat;
	background-position: center center;
	background-size: auto 100%;
}
/* ++++++++++++++++#features+++++++++++++++++ */
#features{
	background-color: #edf2f6;
	background-image: url(../images/features-section-bg01.svg);
	background-repeat: no-repeat;
	background-size: auto 9.8rem;
	background-position: center top 12.5rem;
}
#features .sec-ttl01 span{
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
#features .sec-ttl01 .en{
	font-size: 200%;
	transform: translateY(.12em);
	color: #108f88;
	display: block;
	line-height: 1;
	position: relative;
	padding-left: .1em;
}
#features .sec-ttl01 .en:after{
	content: "";
	display: block;
	width: 100%;
	height: 20%;
	background: #fbff0a;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 5%;
	z-index: -1;
}
.feature{
	background: #fff;
	max-width: 144rem;
	margin: 7.2rem auto 0;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	border-radius: 2.4rem;
	padding: 3.6rem;
	position: relative;
}
.feature:before{
	content: attr(data-no);
	color: #fff;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #108f88;
	width: 12.5rem;
	height: 12.5rem;
	font-size: 5rem;
	font-family: 'Outfit', sans-serif;
	font-weight: 500;
	letter-spacing: 0;
	padding-top: 0.5em;
	background-image: url(../images/feature-txt01.svg);
	background-repeat: no-repeat;
	background-size: 68% auto;
	background-position: center 25%;
	box-sizing: border-box;
	position: absolute;
	top: -3rem;
	z-index: 999;
}
.feature:nth-of-type(2n+1):before{
	right: -2rem;
}
.feature:nth-of-type(2n):before{
	left: -2rem;
}
.feature:nth-of-type(2n){
	flex-direction: row-reverse;
}
.feature .txt{
	width: calc(50% - min(2.5vw, 1.2rem));
	padding: .5vw 1.2rem 0;
}
.feature .pic{
	width: calc(50% - min(2.5vw, 3.6rem));
}
.feature h3{
	font-size: 3rem;
	line-height: 1.75;
	margin-bottom: 2rem;
	font-weight: 700;
	letter-spacing: .1em;
}
.feature h3 span{
	padding-left: .2em;
	padding-right: .2em;
	color: #108f88;
	background: linear-gradient(0deg, #fbff0a 0%, #fbff0a 32%, rgba(255,255,255,0) 32%, rgba(255,255,255,0) 100%);
}
.feature .parag:not(:last-of-type){
	padding-bottom: 1em;
}
.feature .pic{
	border-radius: 1.25vw;
	overflow: hidden;
}
#features .btn01{
	margin-top: 7.2rem;
}


/* +++#review+++ */
#review{
	display: flex;
	flex-direction: column;
	align-items: center;
	background-image: url(../images/review-section-bg01.svg);
	background-repeat: no-repeat;
	background-position: center top 8.1rem;
	background-size: auto 9.8rem;
}
#review .sec-ttl01{
	margin-bottom: 7.2rem;
}
#review h3{
	font-family: 'Outfit', "ヒラギノ角ゴ ProN W3", "Hiragino Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", 'Noto Sans JP', sans-serif;
	font-weight: 900;
	font-size: 3rem;
	display: flex;
	justify-content: center;
	align-items: center;
}
#review h3:before{
	content: "";
	display: block;
	width: 7.2rem;
	height: 7.2rem;
	background: url(https://services.google.com/fh/files/misc/google_g_icon_download.png);
	background-size: 100% auto;
	margin-right: 1.2rem;
}

.rating-area{
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 1.8rem auto 1.2rem;
}
.rating-area .review-stars{
	margin: 0;
}
.place-rating{
	font-size: 4.8rem;
	font-weight: 700;
	margin-right: .2em;
	letter-spacing: 0;
}
.review-stars{
	background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23.44 19'><polygon fill='%23dadce0' points='10,15.27 16.18,19 14.54,11.97 20,7.24 12.81,6.63 10,0 7.19,6.63 0,7.24 5.46,11.97 3.82,19'/></svg>");
}
.review-stars,
.review-stars span{
	background-size: auto 100%;
	height: 3.2rem;
	width: 19rem;
	background-repeat: repeat-x;
	overflow: hidden;
	position: relative;
	filter: none;
}
.review-stars span{
	display: block;
	background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 23.44 19'><polygon fill='%23fdd663' points='10,15.27 16.18,19 14.54,11.97 20,7.24 12.81,6.63 10,0 7.19,6.63 0,7.24 5.46,11.97 3.82,19'/></svg>");
}
.total-review{
	font-size: 2.2rem;
	margin: 0 auto 5rem;
	font-weight: 700;
	font-family: 'Outfit', "ヒラギノ角ゴ ProN W3", "Hiragino Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", 'Noto Sans JP', sans-serif;
}

.fukidashi02{
	display: flex;
	align-items: center;
	flex-direction: column;
	font-weight: 900;
	font-size: 4rem;
	letter-spacing: .1em;
	margin-bottom: 5.4rem;
	position: relative;
	line-height: 1.4;
	padding-left: 2.7em;
	padding-right: 2.7em;
}
.fukidashi02 span{
	display: block;
}

.fukidashi02:before,
.fukidashi02:after {
	content: "";
	display: block;
	position: absolute;
	bottom: -0.15em;
	margin: auto;
	background: url(../images/fukidashi-bg01.svg) no-repeat;
	background-size: auto 100%;
	background-position: center bottom;
	width: 2.4em;
	height: 87%;
}
.fukidashi02:before{
	left: 0;
}
.fukidashi02:after {
	transform: scale(-1, 1);
	right: 0;
}
.review-list{
	display: flex;
	justify-content: space-between;
	margin-bottom: 4rem;
}
.review-list li{
	background: #fff;
	padding: min(2.7rem, 1.875vw);
	padding-bottom: min(3.6rem, 2.5vw);
	border-radius: min(1.8rem, 1.25vw);
	display: flex;
	flex-direction: column;
	align-items: center;
	/* width: calc(20% - min(2.5vw, 2.88rem)); */
	width: calc(20% - 1.8rem);
}
.review-list p{
	font-size: 1.5rem;
	line-height: 2.2;
	width: 100%;
	margin-top: 2.4rem;
}
.review-area{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	margin-top: 1rem;
}
.review-area>span{
	font-size: 1.3rem;
	color: #666;
	margin-left: .75em;
	margin: 0 .4em;
	line-height: 1.75;
}
.review-stars{
	flex-shrink: 0;
	margin: 0 .4em;
}
.review-list .review-stars,
.review-list .review-stars span{
	background-size: 1.6rem auto;
	height: 1.4rem;
	width: 7.8rem;
	background-repeat: repeat-x;
	overflow: hidden;
	position: relative;
	filter: none;
}
.reviewer-profile{
	font-weight: 500;
	padding-top: 5rem;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 4rem auto;
	width: 100%;
	text-align: center;
}
.all-review{
	color: #108f88;
	border-bottom: .1rem solid #108f88;
	background: url(../images/new-window02.svg) no-repeat;
	background-size: auto .75em;
	background-position: right top .2em;
	padding-right: 1.25em;
	padding-bottom: .4em;
	transition: .2s all ease;
	margin-bottom: 6rem;
	font-size: 1.8rem;
}
.all-review:hover{
	border-bottom-color: transparent;
}
/* +++#flow+++ */
#flow{
	background-image: url(../images/flow-section-bg01.svg);
	background-repeat: no-repeat;
	background-size: auto 10.1rem;
	background-position: center top 7.8rem;
}
#flow ol{
	margin-bottom: 6rem;
}
#flow li{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	position: relative;
}
#flow li:not(:last-of-type){
	padding-bottom: 18.5rem;
}
#flow li:not(:last-of-type):after{
	content: "";
	display: block;
	width: 100%;
	height: 18.5rem;
	background: url(../images/flow-arrow01.svg) no-repeat;
	background-size: 34% auto;
	background-position: center top;
	position: absolute;
	left: 0;
	right: 0;
	top: min(31.8rem, 30.994vw);
}
#flow li:before{
	content: attr(data-step);
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-weight: 500;
	border-radius: 50%;
	background-color: #108f88;
	background-image: url(../images/flow-txt01.svg);
	background-repeat: no-repeat;
	background-size: 50% auto;
	background-position: center 30%;
	width: 10.8rem;
	height: 10.8rem;
	font-size: 3.6rem;
	font-family: 'Outfit', sans-serif;
	position: absolute;
	top: -2.4rem;
	z-index: 999;
	letter-spacing: 0;
	padding-top: .7em;
	box-sizing: border-box;
}
#flow li:nth-of-type(2n+1):before{
	left: -2.4rem;
}
#flow li:nth-of-type(2n):before{
	right: -2.4rem;
}
#flow li>.pic,
#flow .pic-area{
	width: 50%;
	height: min(31.8rem, 30.994vw);
}
#flow li>.pic img{
	border-radius: 1.25vw;
}
#flow .txt{
	width: 50%;
	padding-top: min(1.6rem,1.5594vw);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}
#flow li:nth-of-type(even){
	flex-direction: row-reverse;
}
#flow li:nth-of-type(even) .pic,
#flow li:nth-of-type(even) .pic-area{
	padding-left: min(2.5vw, 3.6rem);
}
#flow li:nth-of-type(even) .txt{
	padding-right: min(2.5vw, 3.6rem);
}
#flow li:nth-of-type(2n+1) .pic{
	padding-right: min(2.5vw, 3.6rem);
}
#flow li:nth-of-type(2n+1) .txt{
	padding-left: min(2.5vw, 3.6rem);
}
#flow h3{
	font-size: 2.4rem;
	line-height: 1.5;
	font-weight: 700;
	letter-spacing: .1em;
	color: #108f88;
	margin-bottom: 1.5rem;
}
#flow li p{
	font-size: min(1.5rem, 1.461vw);
}
#flow li:nth-of-type(even):after{
	transform: scale(-1,1);
}
#flow .pic-area{
	position: relative;
}
#flow .pic-area .pic:nth-of-type(1){
	position: absolute;
	left: min(3.6rem, 2.5vw);
	top: min(4.5rem, 4.385vw);
	border-radius: .4775vw;
	overflow: hidden;
	padding: 0;
	z-index: 9;
	width: 35.477%;
}
#flow .pic-area .pic:nth-of-type(2){
	margin-left: 19.3%;
	border-radius: 1.01125vw;
	overflow: hidden;
	padding: 0;
	width: 80.7%;
}
/* +++#menu+++ */
#menu{
	background-color: #fff;
	background-image: url(../images/menu-section-bg01.svg);
	background-repeat: no-repeat;
	background-size: auto 9.8rem;
	background-position: center top 8.1rem;
}

.menu-head{
	position: relative;
	min-height: 8rem;
	padding: 1rem 2rem;
	background: #f3f9f9;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-radius: 1.5rem 1.5rem 0 0;
}
.menu{
	margin-bottom: 6rem;
	border: .1rem solid #ccc;
	border-radius: 1.5rem;
}
.menu-head.laurel{
	padding-left: calc(14.4rem - 2.5vw);
}
#menu h3{
	font-weight: 700;
	font-size: min(2rem, 1.949vw);
	width: calc(100% - 24.5rem);
	padding-right: 2rem;
	line-height: 1.5;
}
.price{
	flex-shrink: 0;
	font-size: 2.8rem;
	vertical-align: bottom;
	color: #d5000d;
}
.price span{
	font-size: 2.2rem;
	padding-right: .15em;
}

#menu .icon{
	position: absolute;
	left: -2.5vw;
	top: -2.4rem;
	width: 12.4rem;
	height: 12.4rem;
	border-radius: 50%;
	color: #fff;
	font-weight: 700;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 2.4rem;
	line-height: 1.3;
}
#menu .icon:before{
	content: "";
	display: block;
	width: calc(100% - 1rem);
	height: calc(100% - 1rem);
	border-radius: 50%;
	background: url(../images/menu-bg01.png) no-repeat;
	background-position: center center;
	background-size: 100% auto;
	position: absolute;
	left: 0;
	right: 0;
	bottom: .2rem;
	margin: auto;
}
.recommend{
/*
	background-image: linear-gradient(90deg, #ffa5b0, #ff526a);
*/
	background: #ff526a;
}
.popular{
/*
	background-image: linear-gradient(90deg, #ffd303, #fea215);
*/
	background: #fea215;
}
.menu-element{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 3.6rem 2rem;
	font-size: 1.5rem;
}
.menu-element .pic{
	width: 18rem;
	margin: 1rem 0 auto;
	border-radius: 1rem;
	overflow: hidden;
}
.menu-element p{
	width: calc(100% - 40rem);
	padding-left: 2rem;
	padding-right: 3rem;
	font-weight: 500;
}
.menu-element a.btn01{
	background: linear-gradient(90deg, #ff700a, #ffa60a, #ff700a);
	width: 22rem;
	height: 5rem;
	border-radius: 3rem;
	background-size: 200% auto;
	background-position: right center;
	margin: 0;
}
.menu-element .btn01:hover{
	background-position: left center;
}
#menu .btn01.large:before{
	display: none;
}

/* +++#faq+++ */
#about,
#earpick,
#flow,
#faq{
	background-color: #edf2f6;
}
#faq{
	background-image: url(../images/faq-section-bg01.svg);
	background-repeat: no-repeat;
	background-size: auto 10.5rem;
	background-position: center top 8rem;
}
.faq-content{
	border-radius: 5.25rem;
	overflow: hidden;
	//border: .3rem solid #eee;
	padding: 3.6rem 3.6rem;
	background: #fff;
	cursor: pointer;
}
.faq-content:not(:last-of-type){
	margin-bottom: 3rem;
}
.faq-content dt{
	font-size: 2rem;
	line-height: 1.5;
	display: flex;
	align-items: center;
	position: relative;
	padding-left: 4.5rem;
	font-weight: 700;
}
.faq-content dt:before{
	content: "Q";
	display: block;
	font-size: 3.6rem;
	font-weight: 500;
	font-family: 'Outfit', sans-serif;
	color: #108f88;
	position: absolute;
	left: 0;
	top: -.15em;
	line-height: 1;
}
.faq-content dd{
	line-height: 2.2;
	padding: 2rem 3.6rem 2rem 4.5rem;
	display: none;
	background: #f3f9f9;
	margin-top: 3.6rem;
	border-radius: 2rem;
	font-size: 1.8rem;
}
.toggle-btn{
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 4.8rem;
	height: 4.8rem;
	border-radius: 50%;
	background: #f3f9f9;
}
.toggle-btn:before,
.toggle-btn:after{
	content: "";
	display: block;
	width: 36%;
	height: .3rem;
	background: #108f88;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	transition: .2s all ease;
	position: absolute;
}
.toggle-btn:after{
	transform: rotate(-90deg);
}
.active .toggle-btn:after{
	transform: rotate(0);
	opacity: 0;
}
/* +++#staff+++ */
#staff{
	background-image: url(../images/staff-section-bg01.svg);
	background-repeat: no-repeat;
	background-size: auto 10.2rem;
	background-position: center top 7.8rem;
}
#staff .inner.lead-txt{
	background: #fff;
	border-radius: 1.2rem;
	padding: 3.6rem;
	border: .2rem solid #2bb1a9;
	letter-spacing: .1em;
	margin-bottom: 8rem;
	font-size: 2rem;
	text-align: center;
}
#staff .inner.lead-txt mark{
	background: none;
	font-weight: 700;
	color: #fb6474;
}
#staff .message{
	text-align: center;
	font-size: min(4rem, 3.9vw);
	letter-spacing: .1em;
	color: #108f88;
	line-height: 2;
	padding: 0 2.5vw min(7rem, 6.8vw);
	background: url(../images/staff-bg01.png) no-repeat;
	background-position: center bottom;
	background-size: calc(100% - 5vw);
	margin-bottom: 4rem;
}
#staff ul{
	display: flex;
	justify-content: space-between;
}
#staff li{
	width: 50%;
	display: flex;
	flex-direction: column;
}
#staff li:nth-of-type(even){
	padding-left: min(2.5vw, 3.6rem);
}
#staff li:nth-of-type(2n+1){
	padding-right: min(2.5vw, 3.6rem);
}
#staff .pic{
	border-radius: 1.25vw;
	overflow: hidden;
}
#staff .status{
	text-align: center;
	letter-spacing: .1em;
	margin: 3rem 0 1.5rem;
	color: #108f88;
	font-size: 1.8rem;
}
#staff h3{
	text-align: center;
	font-size: 2.6rem;
	letter-spacing: .15em;
	margin-bottom: 2rem;
	font-weight: 700;
}
#staff li .parag{
	font-size: 1.5rem;
	margin-bottom: 3rem;
}
#staff .btn01{
	width: 100%;
	height: 6rem;
	max-width: 28.8rem;
	background-image: linear-gradient(90deg, #ff700a, #ffa60a, #ff700a);
	font-weight: 700;
	border-radius: 3rem;
	margin-top: auto;
}
/* +++#news+++ */
#news{
	background-color: #fff;
	background-image: url(../images/news-section-bg01.svg);
	background-repeat: no-repeat;
	background-size: auto 9.8rem;
	background-position: center top 8.1rem;
}
#news-list{
	margin: 0 auto;
}
#news-list article{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	border-top: .1rem solid #ccc;
	padding: 1.8rem 0;
}
#news-list article:last-of-type{
	border-bottom: .1rem solid #ccc;
}
#news-list article .pic{
	overflow: hidden;
	border-radius: .625vw;
	display: block;
	width: 20%;
}
#news-list article .txt{
	padding-left: 2.4rem;
	width: 80%;
}
#news-list article .pic img{
	transition: .2s all ease;
}
#news-list article .pic:hover img{
	transform: scale(1.1);
}
.date{
	padding: .625vw 0;
	font-size: 1.4rem;
	color: #666;
	display: block;
}
.cats{
	display: flex;
	flex-wrap: wrap;
	font-size: 1.3rem;
	padding: 0 0 1.8rem;
	line-height: 1.75;
}
.cats li:not(:last-of-type):after{
	content: "/";
	display: block;
	margin: 0 1em;
}
.cats li{
	display: flex;
	align-items: flex-start;
}
.cats li a{
	color: #108f88;
	border-bottom: .1rem solid #108f88;
	transition: .2s all ease;
}
.cats li a:hover{
	border-bottom-color: transparent;
}
article h3{
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.75;
}
article h3 a{
	transition: .2s all ease;
}
article h3 a:hover{
	opacity: .7;
}
#news .btn01{
	margin-top: 6rem;
}
/* +++#salon-info+++ */
#salon-info{
	background-color: #f3f9f9;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	background-image: url(../images/salon-section-bg01.svg);
	background-repeat: no-repeat;
	background-size: auto 10.2rem;
	background-position: center top 7.7rem;
}
#salon-info .sec-ttl01{
	width: 100%;
}
#googlemap{
	border-radius: 1.8rem;
	overflow: hidden;
	width: 50%;
	position: relative;
	z-index: 999;
}
#googlemap>iframe{
	display: block;
	width: 100%;
	height: 100%;
}
.salon-data{
	width: 50%;
	padding-right: 2.5vw;
	max-width: 51.3rem;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	position: relative;
	z-index: 999;
	padding-top: 4rem;
	padding-bottom: 6rem;
}
#salon-info h3{
	font-size: 3rem;
	font-weight: 700;
	margin-bottom: 3rem;
	position: relative;
}
.salon-data .btn02{
	margin-bottom: 4rem;
}
#salon-info .tel{
	font-size: 2.6rem;
	display: flex;
	align-items: flex-end;
	margin-bottom: 3.2rem;
}
#salon-info .tel:before{
	content: attr(data-en);
	font-size: 75%;
	margin-right: .2em;
}
.access-detail{
	padding: .9rem 1.8rem;
	border-radius: .9rem;
	background: rgba(255,255,255,1);
	font-size: 1.4rem;
	margin-top: 1rem;
	width: 100%;
}
#salon-info .open-close,
#salon-info .regular-holiday{
	display: flex;
	flex-wrap: wrap;
	padding: .9rem 1.8rem;
	border-radius: 1.2rem;
	background: rgba(255,255,255,1);
	width: 100%;
	font-size: 1.4rem;
}
#salon-info .open-close dt,
#salon-info .regular-holiday dt{
	width: 10rem;
	font-weight: 700;
}
#salon-info .open-close dd,
#salon-info .regular-holiday dd{
	width: calc(100% - 10rem);
	margin-left: auto;
	margin-right: 0;
}
#salon-info .btn02:after{
	content: "";
	display: block;
	width: 1rem;
	height: 100%;
	background: url(../images/new-window.svg) no-repeat;
	background-position: center center;
	background-size: 100% auto;
	margin-left: 1em;
}
/* ++++++++++++++++++++++ */
/* +++smartPhone style+++ */
/* ++++++++++++++++++++++ */
@media screen and (max-width: 768px){
	.btn01.large{
		width: 34rem;
		height: 5.666rem;
		font-size: 1.5rem;
		border-radius: 2.888rem;
	}
	.btn01.large:after{
		width: .8em;
		margin-left: .5em;
	}

/* ++++++++++++++++#first-view+++++++++++++++++ */
	#first-view{
		flex-direction: column-reverse;
		justify-content: flex-start;
		align-items: flex-start;
		padding-left: 0;
		padding-right: 0;
	}
	#first-view-slide{
		width: 100%;
		border-radius: 1rem;
		margin-top: -6rem;
		height: calc((100vw - 4rem) / 6 * 6.5);
		padding-left: 2rem;
		padding-right: 2rem;
	}
	.first-view-slider{
		overflow: hidden;
		border-radius: 1rem;
	}
	.first-view-slider, 
	.slick-slider .slick-track, 
	.slick-slider .slick-list, 
	.slick-slide, 
	.first-view-slider .pic{
		height: 100%;
	}
	#first-view-slide h3{
		padding-top: 4.7rem;
		font-size: 1.6rem;
		letter-spacing: .025em;
		padding-left: 2rem;
		padding-right: 1rem;
		font-weight: 700;
	}
	#first-view .txt{
		width: 100%;
		padding-top: 0;
		position: relative;
		top: auto;
		left: auto;
		bottom: auto;
		margin-top: -5.2rem;
		padding-bottom: 4rem;
		padding-left: 0;
	}
	#first-view .fukidashi{
		font-size: 1.7rem;
		line-height: 1.333;
		display: flex;
		flex-direction: column;
		align-items: center;
		font-weight: 700;
		position: relative;
		text-align: center;
		letter-spacing: .1em;
		position: relative;
		padding-left: 3.2rem;
		padding-right: 3.2rem;
		order: 2;
	}
	#first-view .line{
		display: flex;
		justify-content: center;
		padding-left: .2em;
	}
	.review-icon{
		display: flex;
		justify-content: center;
		align-items: flex-start;
		padding: .625vw 0 0;
		order: 3;
	}
	.review-icon li{
		width: 12rem;
		max-width: 12rem;
	}
	#first-view h2{
		font-size: 2rem;
		margin: 0 auto;
		letter-spacing: .1em;
		text-align: center;
		order: 1;
		padding: .4rem 1rem .5rem;
		width: 100%;
		line-height: 1.666;
	}
	#first-view h2 span{
		background: #fff;
		padding: .5rem .7rem;
		display: inline-blcok;
	}
	#first-view h2 span:nth-of-type(2){
		padding-right: .7rem;
	}
	#first-view h2 span:nth-of-type(3){
		padding-right: 0;
		padding-left: .7rem;
	}
	#first-view h2 span:nth-of-type(4){
		padding-left: 0;
	}
	#first-view .reserve-btn01{
		width: calc(100vw - 4rem);
		height: 5.666rem;
		font-size: 1.8rem;
		border-radius: 2.888rem;
		order: 4;
		margin-top: .8rem;
	}
	#first-view .reserve-btn01:hover,
	.btn01.large:hover{
		background-position: left center;
	}
	#first-view .reserve-btn01:before{
		width: 1em;
	}
	#first-view .reserve-btn01:after{
		width: .8em;
	}
	.btn01.large{
		width: 57.6rem;
		height: 9.6rem;
		font-size: 2.6rem;
		margin: 0 auto;
		font-weight: 700;
		background: linear-gradient(90deg, #ff700a, #ffa60a, #ff700a);
		background-size: 200% auto;
		background-position: right center;
		border-radius: 4.8rem;
		transition: .2s all ease;
		align-items: center;
		justify-content: center;
	}
	.btn01.large:after{
		width: 1.5rem;
		position: relative;
		left: auto;
		right: auto;
		top: auto;
		bottom: auto;
		margin-left: .8em;
	}
	.btn01.large:before{
		width: 1.8rem;
	}
/* ++++++++++++++++#about+++++++++++++++++ */
	#about{
		margin-top: 0;
		padding-top: 10.8rem;
		overflow: hidden;
		background-image: url(../images/sp-about-section-bg01.svg);
		background-position: center top .7rem;
		background-size: auto 13.096rem;
	}
	#about h3:nth-of-type(1){
		padding-left: 4rem;
		margin-top: 5rem;
		text-align: right;
		padding-right: 0;
	}
	#about h3:nth-of-type(1):before {
		width: 12.6rem;
		height: 19.4rem;
		left: -3rem;
		bottom: -1.5rem;
	}
	#about .lead-txt{
		font-size: 1.8rem;
		margin: 3rem auto 4.5rem;
		line-height: 2.5;
	}
	#about .lead-txt mark{
		background: linear-gradient(0deg, rgba(251,255,10,.8), rgba(251,255,10,.8) 45%, rgba(255,255,255,0) 45%, rgba(255,255,255,0) 100%);
		padding: 0 .15em;
	}


	.effect-list li{
		border-radius: 2rem;
		flex-direction: column-reverse;
		justify-content: flex-start;
		position: relative;
	}
	.effect-list li:not(:last-of-type){
		margin-bottom: 5rem;
	}
	.effect-message{
		font-size: 1.6rem;
		border-radius: 1rem;
		padding: 2rem 2.5rem 2.5rem;
		margin-bottom: 4.5rem;
		margin-top: 3rem;
		width: 100%;
	}
	.effect-message:before{
		width: calc(100% - 2rem);
		height: calc(100% - 2rem);
		border-radius: .8rem;
	}
	.effect-message:after{
		display: none;
	}
	.effect-list{
		position: relative;
	}
	.effect-message:after{
		content: "";
		display: block;
		width: 16rem;
		height: 18rem;
		background: url(../images/effect-bg02.png) no-repeat;
		background-position: center top;
		background-size: 100% auto;
		position: absolute;
		right: -2.5rem;
		top: auto;
		bottom: 0;
		margin: auto;
	}
	.effect-message p{
		padding-right: 6rem;
		line-height: 2.25;
	}

	.effect-list{
		max-width: 100%;
	}
	.effect{
		background: #fff;
		border-radius: 2rem;
		overflow: hidden;
		flex-direction: column;
		justify-content: flex-start;
		padding: 0;
	}
	.effect:nth-of-type(2n){
		flex-direction: column-reverse;
	}
	.effect:not(:last-of-type){
		margin-bottom: 3rem;
	}
	.effect .pic{
		width: 100%;
	}
	.effect:nth-of-type(2n) .pic{
		padding-right: 0;
		border-radius: 0;
	}
	.effect:nth-of-type(2n+1) .pic{
		padding-left: 0;
		border-radius: 0;
	}
	.effect .txt{
		width: 100%;
	}
	.effect:nth-of-type(2n+1) .txt{
		padding: 2rem 2rem 4rem;
	}
	.effect:nth-of-type(2n) .txt{
		padding: 2rem 2rem 4rem;
	}
	.effect .parag{
		line-height: 2.25;
		padding-left: 0;
	}
	.effect .parag li:not(:last-of-type){
		margin-bottom: 2rem;
	}
	.effect h4{
		font-size: 2.2rem;
		margin-bottom: 2rem;
		display: block;
		width: 100%;
	}
	.effect h4 span{
		margin-bottom: 0;
		text-align: center;
		padding-bottom: .2em;
	}
	.effect h4 span:after{
		content: "";
		display: block;
		width: 100%;
		height: .3rem;
		border-radius: .1rem;
		background: #108f88;
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
	}
	.effect h4:before{
		width: 7.2rem;
		height: 7.2rem;
		font-size: 2.4rem;
		margin: 0 auto .5rem;
		padding-top: .8em;
		background-size: 70% auto;
		background-position: center 24%;
	}
	.lead-flow dl,
	.product-flow dl{
		width: 14rem;
	}
	.lead-flow dl dd,
	.product-flow dl dd{
		height: 14rem;
	}
	.lead-flow,
	.product-flow{
		max-width: 100%;
		margin: 0 auto 7.5rem;
		flex-wrap: wrap;
	}
	.lead-flow:before,
	.product-flow:before{
		display: none;
	}
	.lead-flow dl:not(:last-of-type):before,
	.product-flow dl:not(:last-of-type):before{
		content: "";
		display: block;
		width: calc(100vw - 18rem);
		height: .1rem;
		position: absolute;
		top: 7rem;
		border-top: .1rem dashed #2bb1a9;
		z-index: 1;
	}
	.lead-flow dl:nth-of-type(2n+1):before,
	.product-flow dl:nth-of-type(2n+1):before{
		left: 7rem;
		transform-origin: left top;
		transform: rotate(30deg);
	}
	.lead-flow dl:nth-of-type(even):before,
	.product-flow dl:nth-of-type(even):before{
		right: 7rem;
		transform-origin: right top;
		transform: rotate(-30deg);
	}
	.lead-flow dl:nth-of-type(2),
	.product-flow dl:nth-of-type(2){
		margin-top: 14rem;
	}
	.lead-flow dl:nth-of-type(4),
	.product-flow dl:nth-of-type(4){
		margin-top: 9rem;
	}
	.lead-flow dl:nth-of-type(3),
	.product-flow dl:nth-of-type(3){
		margin-top: -5.5rem;
	}
	.lead-flow dl:nth-of-type(5){
		margin-top: -3rem;
	}
	.lead-flow dd:before,
	.product-flow dd:before{
		width: calc(100% + .8rem);
		height: calc(100% + .8rem);
		position: absolute;
		left: -.5rem;
		top: -.5rem;
	}
	.lead-flow dt,
	.product-flow dt{
		margin-top: 1rem;
		line-height: 1.5;
		font-size: 1.6rem;
	}
	#about h3{
		font-size: 3rem;
		line-height: 1.5;
	}

	h3 .fukidashi{
		font-size: 1.4rem;
		margin-bottom: 1rem;
	}
	h3 .fukidashi:after{
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-top: 1rem solid #108f88;
		border-left: .7rem solid transparent;
		border-right: .7rem solid transparent;
	}

/* ++++++++++++++++++#earpick+++++++++++++++++ */
	#earpick h2{
		padding-top: 10.8rem;
		font-size: 2.6rem;
		margin-bottom: 2rem;
		padding-left: 0;
		position: relative;
		letter-spacing: .1em;
		line-height: 1.4;
		display: block;
		text-align: center;
	}
	#earpick h2:before{
		position: relative;
		left: auto;
		top: auto;
		width: 100%;
		height: 16rem;
		background-position: center center;
		background-size: auto 100%;
		transform: translateY(0);
		margin-bottom: .8rem;
	}
	#earpick{
		padding: 0;
	}
	#earpick:before{
		background-position: left 40% bottom;
	}
	.product-flow dl{
		width: 12rem;
		padding: .5rem;
	}
	.product-flow dl dd{
		height: 11rem;
	}
	.product-flow dd:before{
		width: calc(100% + .5rem);
		height: calc(100% + .5rem);
		left: -.35rem;
		top: -.35rem;
	}
	.product-flow dl:nth-of-type(2){
		margin-top: 9rem;
	}
	.product-flow dl:nth-of-type(4){
		margin-top: 4rem;
	}
	.product-flow dl:nth-of-type(2n+1):before{
		transform: rotate(20deg);
	}
	.product-flow dl:nth-of-type(2n):before{
		transform: rotate(-20deg);
	}
	.product-flow{
		margin-bottom: 2rem;
	}
	#earpick .sec-ttl01{
		padding-top: 10.8rem;
	}
	#earpick .parag{
		text-align: left;
	}
	.earpick-content{
		padding-bottom: 10.8rem;
		padding-left: 2rem;
		padding-right: 2rem;
		display: block;
	}
	.earpick-content .txt{
		width: 100%;
		padding: 0 0 4.5rem;
	}
	#earpick .pic-area{
		width: 100%;
		padding: 0;
	}
	#earpick .pic01{
		border-radius: 1rem;
	}
	#earpick .pic02{
		border-radius: .728rem;
	}
	.product-flow{
		flex-wrap: wrap;
		width: 100%;
		padding-left: 2rem;
		padding-right: 2rem;
	}
	.product-flow dl:last-of-type dd:after{
		content: "";
		display: block;
		width: 130%;
		height: 130%;
		position: absolute;
		left: -20%;
		top: -15%;
		background: url(../images/earpick-star01.png) no-repeat;
		background-position: center center;
		background-size: 100% auto;
	}


/* ++++++++++++++++before-after+++++++++++++++++ */
	#before-after{
		display: flex;
		flex-direction: column;
		align-items: center;
		overflow: hidden;
		background-size: auto 13.096rem;
		background-position: center top .7rem;
		background-image: url(../images/sp-before-after-section-bg01.svg);
	}
	#before-after .sec-ttl01{
		line-height: 1.2;
		margin-bottom: 2.5rem;
	}
	#before-after .description-area:before,
	#before-after .description-area:after{
		width: 4rem;
		bottom: 1.5rem;
	}
	#before-after .description-area:before{
		left: -4rem;
	}
	#before-after .description-area:after{
		right: -4rem;
	}
	#before-after .catch-copy{
		font-size: 1.8rem;
	}
	#before-after .description-area .pic{
		margin-right: .5rem;
		width: 10rem;
	}


	#before-after .comment{
		font-size: 1.4rem;
		margin-bottom: 2rem;
		letter-spacing: .05em;
		line-height: 2;
		padding-left: 2rem;
		padding-right: 2rem;
		text-align: left;
	}

	.pic-outer{
		border-radius: 1rem;
	}
	.before-after-area{
		padding: 2rem 0 4rem;
		border-radius: 2rem;
	}
	.before-after-outer{
		display: block;
		padding: 0 2rem;
	}
	#before-after .caution{
		font-size: 1.4rem;
		margin: 0 auto 3rem;
		height: 3rem;
		align-items: center;
		padding: 0 1em;
	}
	.before-after-area .caution:before{
		width: 1.1em;
		height: 100%;
		background-position: center center;
		background-size: 100% auto;
		margin-right: .25em;
	}
	.pic-btn{
		font-size: 1.5rem;
		opacity: 1;
	}
	.pic-btn .bg-white{
		font-size: 1.2rem;
		padding: 0 .75em;
		margin-top: 1.5rem;
	}
	.pic-btn .bg-white:before{
		width: 1.2em;
	}
	.pic-btn:before{
		height: 2.0em;
		margin-bottom: 1.0em;
	}
	.before-after{
		width: 100%;
		padding: 0;
	}
	.before-after:nth-of-type(even){
		padding: 4rem 0;
		margin: 4rem 0;
		border: none;
		border-top: .1rem dashed #2bb1a9;
		border-bottom: .1rem dashed #2bb1a9;
	}

/* ++++++++++++++++#reason+++++++++++++++++ */
	#features{
		overflow: hidden;
		background-size: auto 5.9848rem;
		background-position: center 7.8rem;
	}
	#features .sec-ttl01 span{
		display: block;
		line-height: 1.2;
	}
	#features .sec-ttl01 .en{
		display: inline-block;
		transform: translateY(-.3rem);
		margin-right: .1em;
		font-size: 150%;
	}
	.feature:not(:last-of-type){
		margin-bottom: 4rem;
	}
	.feature{
		max-width: 100%;
		margin: 0 auto 0;
		flex-direction: column-reverse;
		justify-content: flex-start;
		align-items: flex-start;
		border-radius: 2rem;
		padding: 2rem 2rem 3rem;
	}
	.feature:nth-of-type(2n){
		flex-direction: column-reverse;
	}
	.feature:before{
		width: 10rem;
		height: 10rem;
		font-size: 3.6rem;
		left: -1.8rem !important;
		top: -1.8rem;
		right: auto !important;
		background-size: 80% auto;
		background-position: center 30%;
		padding-top: .8em;
	}
	.feature .txt{
		width: 100%;
		padding: 2rem 0 0;
	}
	.feature .pic{
		width: 100%;
		border-radius: 1rem;
	}
	.feature h3{
		font-size: 2.4rem;
		line-height: 1.75;
		margin-bottom: 2rem;
	}
	.feature h3 span{
		padding-left: .1em;
		padding-right: .1em;
	}
	.feature .parag{
		font-size: 1.7rem;
		font-weight: 700;
	}
	.feature .parag:not(:last-of-type){
		padding-bottom: 1.5em;
	}
	#features .btn01{
		margin-top: 4rem;
	}

	.btn01.large{
		width: 34rem;
		height: 5.666rem;
		font-size: 1.8rem;
		border-radius: 2.888rem;
	}


/* ++++++++++++++++#review+++++++++++++++++ */
	#review{
		background-size: auto 5.6rem;
		background-position: center top 8rem;
	}
	#review .sec-ttl01:before,
	#flow .sec-ttl01:before,
	#menu .sec-ttl01:before,
	#faq .sec-ttl01:before,
	#staff .sec-ttl01:before,
	#news .sec-ttl01:before,
	#salon-info .sec-ttl01:before{
		width: 100%;
		left: 0;
		right: 0;
		margin: auto;
	}
	#review .sec-ttl01{
		margin-bottom: 4rem;
	}
	#review h3:before {
		width: 6rem;
		height: 6rem;
		background: url(https://services.google.com/fh/files/misc/google_g_icon_download.png);
		background-size: 100% auto;
		margin-right: 1rem;
	}
	#review h3 {
		font-size: 2.6rem;
	}
	.google-icon{
		margin: 0 auto 1rem;
		width: 5rem;
	}
	.rating-area{
		margin: 1.5rem auto 1rem;
	}
	.place-rating {
		font-size: 4rem;
	}
	.review-stars,
	.review-stars span{
		width: 14.6rem;
		height: 2.4rem;
	}
	.review-stars{
		margin: 0 .4em 0 0;
	}

	.fukidashi02{
		font-size: 2rem;
		margin-bottom: 2rem;
		width: 100%;
		padding-left: 0;
		padding-right: 0;
		letter-spacing: .05em;
		line-height: 1.666;
	}
	.fukidashi02:before,
	.fukidashi02:after{
		background-size: 80% auto;
		bottom: 7.5%;
	}
	.fukidashi02:before{
		left: -1.5rem;
		background-position: left bottom 25%;
	}
	.fukidashi02:after{
		right: -2rem;
		background-position: right bottom 25%;
	}
	.total-review{
		margin: 0 auto 5rem;
		font-size: 1.8rem;
	}
	.review-list{
		display: block;
		margin-bottom: 1rem;
	}
	.review-list li{
		padding: 2rem;
		border-radius: 2rem;
		display: block;
		width: 100%;
		margin-bottom: 2rem;
	}
	.review-list p{
		font-size: 1.5rem;
		margin-top: 2rem;
	}
	.review-area{
		display: flex;
		justify-content: stretch;
		padding-left: 5.5rem;
		margin-top: -1.6rem;
	}

	.reviewer-profile{
		padding: 0 0 0 5.5rem;
		background-position: left bottom;
		height: 4rem;
		text-align: left;
		font-size: 1.6rem;
		display: flex;
		align-items: flex-start;
	}
	.all-review{
		margin-bottom: 4rem;
	}
/* ++++++++++++++++#flow+++++++++++++++++ */
	#flow{
		background-size: auto 5.9848rem;
		background-position: center top 7.8rem;
	}
	#flow ol{
		margin-bottom: 4rem;
		padding-left: 1rem;
		padding-right: 1rem;
	}
	#flow li{
		display: block;
/*
		width: 87.5%;
*/
	}
	#flow li:nth-of-type(2n){
		margin-left: auto;
		margin-right: 0;
	}
	#flow li:before{
		width: 8.1rem;
		height: 8.1rem;
		font-size: 2.7rem;
		left: -1.8rem !important;
		top: -1.8rem;
		right: auto !important;
	}
	#flow li>.pic,
	#flow .pic-area{
		width: 100%;
		height: calc((100vw - 7rem) / 3 * 2);
	}
	#flow li>.pic img{
		border-radius: 1rem;
	}
	#flow .txt{
		width: 100%;
		padding-top: 2rem;
	}

	#flow li:nth-of-type(even) .pic,
	#flow li:nth-of-type(even) .pic-area{
		padding-left: 0;
	}
	#flow li:nth-of-type(even) .txt{
		padding-right: 0;
	}
	#flow li:nth-of-type(2n+1) .pic{
		padding-right: 0;
	}
	#flow li:nth-of-type(2n+1) .txt{
		padding-left: 0;
	}
	#flow h3{
		font-size: 2.1rem;
		margin: 0 0 1rem;
		line-height: 1.5;
		letter-spacing: .05em;
	}
	#flow li p{
		font-size: 1.5rem;
	}
	#flow li:after{
		margin: 0 0 0 calc((100vw - 4rem) * .15);
	}
	#flow li:nth-of-type(2n):after{
		height: 6rem;
		margin: 0 calc((100vw - 4rem) * .15) 0 0;
	}
	#flow .pic-area .pic:nth-of-type(1){
		top: auto;
		bottom: 0;
		border-radius: .5rem;
		z-index: 9;
		width: 35.477%;
		left: 0;
	}
	#flow .pic-area .pic:nth-of-type(2){
		margin-left: auto;
		margin-right: 0;
		border-radius: .8rem;
	}

#flow li:not(:last-of-type){
	padding-bottom: 10rem;
}
#flow li:not(:last-of-type):after{
	width: .2rem;
	height: 10rem;
	background: none;
	position: absolute;
	left: 0;
	right: 0;
	top: calc(100% - 10rem);
	border-left: .2rem dotted #108f88;
	margin: auto;
}
/* ++++++++++++++++#menu+++++++++++++++++ */
	#menu{
		background-size: auto 5.6rem;
		background-position: center top 8rem;
	}
	.menu{
		border-radius: 1rem;
		border: .1rem solid #ccc;
	}
	.menu-head{
		min-height: auto;
		padding: 1.5rem;
		display: block;
		border-radius: 1rem 1rem 0 0;
	}
	.menu:not(:last-of-type){
		margin-bottom: 5rem;
	}
	.menu:last-of-type{
		margin-bottom: 4rem;
	}
	.menu-head.laurel{
		padding-left: 0;
	}
	#menu h3{
		font-size: 1.6rem;
		width: 100%;
		padding-right: 0;
		padding-bottom: .6rem;
		line-height: 1.75;
	}
	#menu .laurel h3{
		padding-left: 9rem
	}
	.price{
		text-align: right;
		font-size: 2.2rem;
	}
	.price span{
		font-size: 1.6rem;
	}
	#menu .icon{
		left: -1.25rem;
		top: -1.05rem;
		width: 9rem;
		height: 9rem;
		font-size: 1.7rem;
	}
	#menu .icon:before{
		transform: translateY(.2rem);
		width: calc(100% - 1rem);
		height: calc(100% - 1rem);
		background-size: 100% auto;
		bottom: 0;
		top: 0;
	}
	.menu-element{
		flex-direction: column;
		justify-content: flex-start;
		padding: 2.5rem;
	}
	.menu-element .pic{
		width: 100%;
		border-radius: .5rem;
		margin: 0 0 1.5rem;
	}
	.menu-element p{
		width: 100%;
		padding: 0 0 1.5rem;
	}
	.menu-element a.btn01{
		margin: 0 auto;
		width: 100%;
		height: 5.666rem;
		border-radius: 2.888rem;
	}

	.menu-element ul{
		width: 100%;
		text-align: center;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.menu-element li{
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
	}

/* ++++++++++++++++#faq+++++++++++++++++ */
	#faq{
		background-size: auto 6.16rem;
		background-position: center top 7.8rem;
	}

	.faq-content{
		border-radius: 4.6rem;
		padding: 2rem;
	}
	.faq-content:not(:last-of-type){
		margin-bottom: 2rem;
	}
	.faq-content dt{
		font-size: 1.5rem;
		line-height: 1.75;
		padding-left: 3.5rem;
		padding-right: 4.5rem;
	}
	.faq-content dt:before{
		font-size: 3rem;
		top: -.1em;
	}
	.faq-content dd{
		padding: 1.5rem 2rem;
		margin-top: 2.4rem;
		border-radius: 2rem;
		font-size: 1.6rem;
	}
	.toggle-btn{
		margin: auto;
		width: 3.6rem;
		height: 3.6rem;
	}
	.toggle-btn:before,
	.toggle-btn:after{
		width: 40%;
		border-radius: .1rem;
	}

/* ++++++++++++++++#staff+++++++++++++++++ */
	#staff{
		background-size: auto 6rem;
		background-position: center top 8rem;
	}
	#staff .inner.lead-txt{
		letter-spacing: .05em;
		border-radius: 1rem;
		padding: 6rem 4rem 7rem 4rem;
		margin-bottom: 4rem;
		font-size: 1.6rem;
		text-align: left;
	}
	#sp-staff-list{
		display: flex;
		justify-content: space-between;
	}
	#sp-staff-list li{
		width: calc(50vw - 3rem);

	}
	#staff #sp-staff-list .status{
		font-size: 1.2rem;
		line-height: 1.75;
		margin: 0;
		height: 6.5rem;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	#staff #sp-staff-list h3{
		font-size: 1.7rem;
		margin-bottom: 1.5rem;
	}
	#staff #sp-staff-list .btn01{
		background: linear-gradient(-90deg, #108f88,#2bb1a9, #108f88);
		background-size: 200% auto;
		background-position: right center;
		font-weight: 400;
		width: 12rem;
		height: 3.4rem;
		border-radius: 1.7rem;
		font-size: 1.4rem;
	}
	#staff #sp-staff-list .btn01:after{
		position: relative;
		right: auto;
		top: auto;
		width: .8em;
		height: 100%;
		margin-left: .6em;
	}
	#staff .message{
		font-size: 1.9rem;
		line-height: 2;
		padding: 0 0 3rem;
		background-size: 100%;
		margin-bottom: 2rem;
	}
	#staff ul#staff-list{
		display: block;
	}
	#staff #staff-list li{
		width: 100%;
		height: 100vh;
		overflow: auto;
		background: #fff;
		padding: 6rem 4rem 12rem;
		position: fixed;
		left: 0;
		top: 0;
		visibility: hidden;
		opacity: 0;
		transition: .4s all ease;
		display: block;
	}
	#staff #staff-list li.active{
		visibility: visible;
		opacity: 1;
		z-index: 999;
	}
	.staff-overlay-active#staff{
		z-index: 99999;
		position: relative;
	}
	#staff li:nth-of-type(even){
		padding-left: 0;
	}
	#staff li:nth-of-type(2n+1){
		padding-right: 0;
	}
	#staff #staff-list .pic{
		border-radius: 1rem;
	}
	#staff #staff-list .status{
		font-size: 1.3rem;
		margin: 2.4rem 0 1rem;
	}
	#staff #staff-list h3{
		font-size: 1.8rem;
		margin-bottom: 1.5rem;
	}
	#staff li .parag{
		margin-bottom: 2rem;
	}
	#staff #staff-list .btn01{
		width: 100%;
		height: 5.666rem;
		max-width: 100%;
		border-radius: 2.888rem;
		margin-top: 0;
	}
	#staff .close-btn{
		position: fixed;
		right: 0;
		top: 0;
		width: 6rem;
		height: 6rem;
	}
	#staff .close-btn:before,
	#staff .close-btn:after{
		content: "";
		display: block;
		width: 50%;
		height: .1rem;
		position: absolute;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		background: #222;
	}
	#staff .close-btn:before{
		transform: rotate(45deg);
	}
	#staff .close-btn:after{
		transform: rotate(-45deg);
	}

/* ++++++++++++++++#news+++++++++++++++++ */
	#news{
		background-size: auto 5.6rem;
		background-position: center top 8rem;
	}
	#news-list article{
		padding: 3rem 2rem;
		display: block;
	}
	#news-list article .pic{
		border-radius: 1rem;
		width: 100%;
	}
	#news-list article .txt{
		padding-left: 0;
		width: 100%;
	}

	.date{
		padding: 2rem 0 1rem;
		font-size: 1.3rem;
	}
	.cats{
		font-size: 1.3rem;
		padding: 0 0 1.5rem;
	}
	article h3{
		font-size: 1.7rem;
	}
	#news .btn01{
		margin-top: 3rem;
	}
/* ++++++++++++++++#salon-info+++++++++++++++++ */

	#salon-info{
		flex-direction: column;
		justify-content: flex-start;
		background-size: auto 13.096rem;
		background-position: center top .7rem;
		background-image: url(../images/sp-salon-section-bg01.svg);
	}
	#sp-googlemap{
		border-radius: 1rem;
		overflow: hidden;
		width: 100%;
		height: calc((100vw - 4rem) / 4 * 3);
		order: 2;
	}
	#sp-googlemap>iframe{
		display: block;
		width: 100%;
		height: 100%;
	}
	#salon-info .btn02{
		order: 3;
		margin: 2rem auto;
	}
	.salon-address{
		order: 4;
		width: 100%;
		text-align: center;
	}
	.salon-tel{
		order: 6;
		width: 100%;
		text-align: center;
	}
	#salon-info .tel{
		font-size: 2.4rem;
		letter-spacing: .1em;
		order: 6;
		margin: 0 auto 2rem;
	}
	.salon-data{
		order: 5;
		width: 100%;
		padding: 0;
		max-width: 100%;
	}
	#salon-info h3{
		width: 100%;
		text-align: center;
		font-size: 2.6rem;
		margin-bottom: 3rem;
		order: 1;
	}
	#salon-info .open-close dt,
	#salon-info .regular-holiday dt{
		width: 9rem;
	}
	#salon-info .open-close dd,
	#salon-info .regular-holiday dd{
		width: calc(100% - 9rem);
	}
	.access-detail{
		padding: 1.0rem 2rem;
		border-radius: 1rem;
		margin: 1rem 0 3.5rem;
		order: 5;
		width: 100%;
	}
	#salon-info .btn02:after{
		width: 1.2rem;
		margin-left: .6em;
	}
	#salon-info .open-close{
		order: 7;
	}
	#salon-info .regular-holiday{
		order: 8;
	}
}