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


#esthe h3{
	font-size:80px;
	width:90%;
  	font-family:'Roboto Condensed',"游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
	font-weight:300;
	margin:auto;
}

#esthe h3 span{
	width:90%;
	display:block;
	font-size:16px;
	margin:10px auto 0;
}


#esthe .comm_box{
	width:90%;
	max-width:1000px;
	margin:80px auto;
}


#esthe .hero{
	position:relative;
}

#esthe .hero img{
	object-fit:cover;
	height:870px;
}
#esthe #sugar.hero img{
	object-position:left;
}

#esthe .hero dl{
	position:absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width:86%;
	max-width:400px;
	left:10%;
	background:rgba(255, 255, 255, .7);
	padding:5% 2%;
	font-size:25px;
	font-weight:bold;
}


#esthe .hero dl#right{
	width:34%;
	left:62%;
}

#esthe .hero dt{
	font-size:80px;
	font-weight:300;
	margin-bottom:20px;
}

@media only screen and (max-width:1200px) {
#esthe .hero dl#right{
	width:34%;
	left:55%;
}
#esthe .hero dt{
	font-size:60px;
}
}

@media only screen and (max-width:880px) { 
#esthe h3{
	font-size:60px;
}

#esthe .hero img{
	height:560px;
}

#esthe .hero dl{
	padding:10% 2%;
	font-size:20px;
}

#esthe .hero dl#right{
	width:60%;
	left:25%;
}

}

@media only screen and (max-width:460px) { 

#esthe .hero dl#right{
	width:85%;
	left:5%;
}
}









#esthe .about{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
}

#esthe .about .text{
	width:50%;
}

#esthe .about .text h3{
	width:100%;
	margin-bottom:30px;
	border-bottom:2px solid #000;
	padding-bottom:30px;
	font-weight:300;
}

#esthe .about .text p{
	text-align:left;
	line-height:1.6;
}

#esthe .about .text p:nth-of-type(1){
	font-size:20px;
	margin:35px auto 30px;
	text-align:center;
	font-weight:500;
}

#esthe .about .image{
	width:48%;
}

@media only screen and (max-width:680px) { 
	#esthe .about .text{
		width:100%;
		margin-bottom:30px;
	}
	
	#esthe .about .text h3{
		width:100%;
	}
	
	#esthe .about .image{
		width:100%;
	}
	
	#esthe .about .text p:nth-of-type(1) br{
		display:none;
	}

	#esthe .about .text p:nth-of-type(1){
	  	font-size:18px;
		text-align:left;
	}

}








.report{
	background:#eee;
	padding:100px 0 50px;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
	/*flex-direction:row-reverse;*/
}


.report .inner{
	width:90%;
	max-width:1000px;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:top;
	margin:60px auto;
}

.report .inner .box{
	width:48%;
	max-width:450px;
	margin-bottom:90px;
}

.report .inner .box p{
	background:#ddd;
	font-size:13px;
	padding:8px 0;
	margin:5px auto;
}

.report .inner .box dl{
	text-align:left;
	font-size:16px;
}

.report .inner .box dt{
	font-size:20px;
	margin:30px auto 15px
}

.report .inner .box dd:last-child{
	margin-top:30px;
	font-size:18px;
	letter-spacing:1px;
}
	
.report .inner .box dd a{
	border-bottom:1px solid #000;
	padding:0 0 15px 3px;
}

@media only screen and (max-width:580px) { 
	.report{
		padding:60px 0;
	}
	
	.report .inner{
		margin:40px auto;
	}
	
	.report .inner .box{
		width:100%;
		margin:0 auto 80px;
	}
	
	.report .inner .box p{
		margin:5px auto 0;
		font-size:14px;
	}
	
	.report .inner .box dt{
		font-size:20px;
		margin:20px auto 10px
	}
	
	.report .inner .box dd:last-child{
		margin-top:20px;
	}
		
	.report .inner .box dd a{
		padding:0 0 10px 3px;
	}
}










/*
POINT
------------------------------------------------------------------------------------*/
.point{
	position:relative;
	background:url(../img/esthe/brazilian/point.jpg) no-repeat #BEE5F7;
	background-position:61% 0;
	padding:80px 0;
}

/* .point img{
	object-fit:cover;
	height:800px;
} */

.point .inner{
	width:90%;
	/* position:absolute;
	top:0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%); */
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:top;
	counter-reset: number;
}

.point .inner h3{
	margin-bottom:60px !important;
}

.point .inner dl{
	width:26%;
	background:rgba(255, 255, 255, .3);
	padding:50px 3% 60px;
}

.point .inner dt{
	font-size:20px;
	font-weight:bold;
	margin-bottom:15px;
	counter-increment: number;
}

.point .inner dt:before{
	content:  counter(number , decimal-leading-zero);
	display:block;
	font-size:40px;
	font-weight:300;
	margin-bottom:10px;
}

.point .inner dd{
	text-align:left;
	line-height:1.6;
}

@media only screen and (max-width:760px) { 
.point{
	padding:10px 0;
}
.point h3,
.point h3 span{
	width:100%;
	margin-bottom:20px !important;
}

.point .inner dl{
	width:94%;
	margin-bottom:30px;
}



}













/*
HOWTO
------------------------------------------------------------------------------------*/
#howto #box{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
	/*flex-direction:row-reverse;*/
	counter-reset: number;
	margin-top:60px;
}

#howto p{
	width:40%;
}

#howto dl{
	width:56%;
	text-align:left;
}

#howto dl dt{
	font-size:18px;
	font-weight:bold;
	counter-increment: number;
	margin-bottom:15px;
}

#howto dl dt:before{
	content: "STEP" counter(number , decimal-leading-zero);
	font-size:40px;
	font-weight:300;
	vertical-align:middle;
	margin-right:20px;
}

#howto dl dd{
	margin-bottom:40px;
}



@media only screen and (max-width:760px) { 
#howto p{
	width:100%;
	margin-bottom:30px;
}

#howto dl{
	width:100%;
}

#howto dl dt:before{
	font-size:32px;
	margin-right:15px;
}

}




















/*
Q&A
------------------------------------------------------------------------------------*/
.faq{
	margin:80px auto 0;
}

.faq .inner{
	width:92%;
	max-width:1000px;
	margin:80px auto;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

.faq .inner dl{
	width:48%;
	max-width:570px;
	text-align:left;
}

.faq .inner dt{
	font-size:20px;
	font-weight:bold;
	text-indent:-48px;
	padding-left:48px;
	margin-bottom:15px;
}

.faq .inner dt:before{
	content:"Q ";
	font-size:60px;
	vertical-align:middle;
	line-height:0.6;
}

.faq .inner dd{
	margin:0 0 30px 50px;
	line-height:1.6;
}



@media only screen and (max-width: 640px) { 
	.faq .inner dl{
		width:100%;
	}
	.faq .inner dt:before{
		font-size:36px;
	}
	.faq .inner dt{
		font-size:18px;
		text-indent:-30px;
		padding-left:30px;
	}
	.faq .inner dd{
		margin:0 0 30px 30px;
	}
}





















/*
エステページTOP
-------------------------------------------------------------------------------------------*/

#esthe #top_hero{
	position:relative;
}

#esthe #top_hero img{
	object-fit:cover;
	height:870px;
	object-position:67% 0;
}

#esthe #top_hero dl{
	position:absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width:80%;
	max-width:420px;
	left:5%;
	background:rgba(255, 255, 255, .7);
	padding:6%;
	text-align:left;
}

#esthe #top_hero dt{
	font-size:25px;
	font-weight:bold;
}

#esthe #top_hero dt h2{
	margin-bottom:15px;
	font-size:70px;
}

#esthe #top_hero dd{
	margin-top:15px;
}

#esthe #top_menu{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
}

#esthe #top_menu dl{
	width:45%;
	text-align:left;
	margin-top:50px;
}

#esthe #top_menu dt{
	font-size:20px;
	font-weight:bold;
	margin-bottom:15px;
}

#esthe #top_menu dd{
	line-height:1.6;
}

#esthe #top_menu dd p{
	border:1px #000 solid;
	text-align:center;
	margin-top:20px;
}

#esthe #top_menu dd p a{
	padding:8px 0;
	display:block;
}


@media only screen and (max-width:880px) { 
	#esthe #top_hero dl{
	top: 70%;
	left: 50%;
	-webkit-transform: translate(-50%, -70%);
	transform: translate(-50%, -70%);
	}
  
	#esthe #top_hero img{
		height:840px;
	}
}


@media only screen and (max-width:640px) { 
	#esthe #top_hero img{
		height:550px;
		/* object-position:78% 0; */
	}
	
	#esthe #top_hero dl{
		position:static;
		left:0;
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
		margin:-180px auto 0;
	background:rgba(245, 245, 245, .3);
	}
	
	#esthe #top_hero dt{
		font-size:20px;
	}
	
	#esthe #top_hero dt h2{
		font-size:28px;
	}
	
	#esthe #top_menu dl{
		width:100%;
	}
	
	#esthe #top_menu dt{
		margin-bottom:10px;
	}

}









/*
コース
------------------------------------------------------------------------------------*/
#course{
	background:#f1f1f1;
	padding:90px 0;
}

#course #list{
	max-width:1200px;
	display:flex;
	flex-wrap:wrap;
	justify-content:center/* space-between */;
	margin:80px auto 120px;
}


#course .box{
	width:31%;
	background:#ccc;
	padding:15% 0;
	position:relative;
	margin:0 1% 30px;
}

#course .box .inner{
	width:80%;
	position:absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	font-size:13px;
}

#course .box .inner h3{
	font-size:36px;
	font-weight:300;
}

#course .box .inner h3:after{
	width:50px;
	content:"";
	display:block;
	border-bottom:1px solid #000;
	margin:30px auto;
}
	
#course .box .inner dt{
	font-size:18px;
	font-weight:bold;
	margin-bottom:10px;
}

#course .box .inner dd{
	width:85%;
	margin:auto;
}


@media only screen and (max-width: 915px) {  

#course .box .inner{
	width:90%;
}

#course .box .inner h3{
	font-size:24px;
}

#course .box .inner h3:after{
	margin:15px auto;
}
	
#course .box .inner dt{
	font-size:15px;
}

}

@media only screen and (max-width: 680px) {  
#course h2{
	font-size:60px;
}

#course .box{
	width:48%;
	padding:24% 0;
}
}


@media only screen and (max-width: 480px) {  
#course .box{
	width:70%;
	padding:35% 0;
	margin:0 auto 30px;
}
}










