@charset 'utf-8';

@import url('vegas.min.css');

/* ------ All ------ */
header img,
article img,
footer img{
	max-width: 100%;
	height: auto;
}
.menu-wrap.copy{
	display: none !important;
}

/* ------ Icon ------ */
.i_bg i{
	position: absolute;
	z-index: -1;
	opacity: 0;
}


/* =========================================================
Loading
========================================================= */
@-webkit-keyframes load_preloader{
	0%{
		z-index: 99999;
		background-color: #fff;
	}
	100%{
		background-color: transparent;
	}
}
@keyframes load_preloader{
	0%{
		z-index: 99999;
		background-color: #fff;
	}
	100%{
		background-color: transparent;
	}
}
@-webkit-keyframes load_logo{
	0%{
		opacity: 1;
	}
	100%{
		opacity: 0;
		visibility: hidden;
	}
}
@keyframes load_logo{
	0%{
		opacity: 1;
	}
	100%{
		opacity: 0;
		visibility: hidden;
	}
}
#preloader{
	position: fixed;
	z-index: 10000;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display:         flex;
	display: -webkit-flex;
	-webkit-justify-content: center;
	        justify-content: center;
	        align-items: center;
	-webkit-align-items: center;
	width: 0;
	height: 0;
	visibility: hidden;
}
#preloader.loading{
	width: 100%;
	height: 100%;
	-webkit-animation: load_preloader 0.5s linear both 1s;
	        animation: load_preloader 0.5s linear both 1s;
	visibility: visible;
}
#preloader img{
	position: absolute;
	z-index: 2;
	top: 50%;
	right: auto;
	left: auto;
	margin: 0 auto;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
	-webkit-animation: load_logo 1s linear both;
	        animation: load_logo 1s linear both;
	opacity: 1;
	width: auto;
	height: auto;
}
@media only screen and (max-width: 750px){
	#preloader img{
		width: 4rem;
	}
}

/* =========================================================
container
========================================================= */
#container .container{
	margin-top: 0;
}
section{
	position: relative;
	z-index: 1;
}


/* =========================================================
top_home
========================================================= */
#top_home{
	position: relative;
	display: inline-block;
	overflow: hidden;
	width: 100%;
	height: auto;
	padding-top: 56.21%;
	-webkit-transition: all 0.1s ease;
	        transition: all 0.1s ease;
	vertical-align: top;
}
/*#top_home .top_image{
	position: fixed;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	content: '';
	background-color: transparent;
	background-image: url(../../img/home/top_pc.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
#top_home .top_image:before{
	content:"";
	display: block;
	width: 100%;
	height: 0;
	padding-top: 56.21%;
}
*/
/*#top_home video{
	position: fixed;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#top_home video[data-dir='w']{
	top: 0;
	left: 50%;
	width: auto;
	height: 100vh;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
}
#top_home video[data-dir='h']{
	top: 50%;
	left: 0;
	width: 100vw;
	height: auto;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}
*/
.vegas-container{
	position: fixed !important;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100% !important;
	height: auto !important;
}
.vegas-container:before{
	content:"";
	display: block;
	width: 100%;
	height: 0;
	padding-top: 56.21%;
}
.vegas-overlay{
	background-color: transparent;
	background-image: none !important;
	background-repeat: repeat;
	background-position: 0 0;
	background-size: auto;
}
@media only screen and (max-width:750px){
	body,
	header,
	#top_home{
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		width: 100%;
	}
	#top_home{
		height: 100vh;
		padding-top: 0;
	}
/*	#top_home .top_image{
		background-image: url(../../img/home/top_sp.jpg);
		height: 100%;
	}
	#top_home .top_image:before{
		display: none;
	}
*/

	.vegas-container{
		height: 100% !important;
	}
	.vegas-container:before{
		display: none;
	}
	#top_home .scroll{
		position: absolute;
		bottom: 0.25rem;
		right: 0.25rem;
		width: 0.26rem;
		z-index: 1;
	}
	#top_home .scroll img{
		width: 100%;
		vertical-align: top;
	}
}


/* =========================================================
salon
========================================================= */
#salon {
	background-color: #fff;
	background-image: url(../../img/bubble_bg1_pc.jpg);
	background-repeat: repeat-x;
	background-position: center top;
	background-size: auto;
}
@media only screen and (max-width: 750px){
	#salon {
		background-image: url(../../img/bubble_bg1_sp.jpg);
		background-repeat: no-repeat;
		background-size: 100% auto;
	}
}

/* =========================================================
salon1
========================================================= */
#salon1 {
}
#salon1 .inner {
	padding-top: 10rem;
	padding-bottom: 12rem;
}
#salon1 .m_ttl {
	margin-bottom: 5.7rem;
}
#salon1 .salon_bloc {
	display:         flex;
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
	        flex-flow: row nowrap;
	-webkit-flex-flow: row nowrap;
	        align-items: flex-start;
	-webkit-align-items: flex-start;
}
#salon1 .salon_left_bloc {
	width: calc(100% - 400px);
}
#salon1 .salon_left_bloc picture {
}
#salon1 .salon_right_bloc {
	width: 400px;
	padding-left: 20px;
}
#salon1 .salon_right_bloc .txt_area {
}
#salon1 .salon_right_bloc .txt_area h3 {
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.4em;
	margin-bottom: 2.2rem;
	letter-spacing: 0;
}
#salon1 .salon_right_bloc .txt_area p {
	line-height: 1.7em;
}
#salon1 .salon_right_bloc .btn_area {
	margin-top: 6rem;
}
#salon1 .salon_right_bloc .btn_area .btn_def {
	margin:0 auto 0 0;
}
@media only screen and (max-width: 750px){
	#salon1 {
	}
	#salon1 .inner {
		padding-top: 0.98rem;
		padding-bottom: 1.2rem;
	}
	#salon1 .m_ttl {
		margin-bottom: 0.58rem;
	}
	#salon1 .salon_bloc {
		display: block;
	}
	#salon1 .salon_left_bloc {
		width: 100%;
	}
	#salon1 .salon_left_bloc picture {
	}
	#salon1 .salon_right_bloc {
		width: 100%;
		padding-left: 0;
		padding-top: 0.2rem;
	}
	#salon1 .salon_right_bloc .txt_area {
	}
	#salon1 .salon_right_bloc .txt_area h3 {
		font-size: 0.36rem;
		line-height: 1.3em;
		margin-bottom: 0.24rem;
	}
	#salon1 .salon_right_bloc .txt_area p {
		line-height: 1.4em;
	}
	#salon1 .salon_right_bloc .btn_area {
		margin-top: 0.62rem;
	}
	#salon1 .salon_right_bloc .btn_area .btn_def {
		margin:0 auto;
		width: 100%;
	}
}

/* =========================================================
salon2
========================================================= */
#salon2{
	position: relative;
	min-height: 830px;
	background-color: #414976;
}
#salon2 .inner {
	padding-top: 11.6rem;
}
#salon2 .img_area{
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	display:         flex;
	display: -webkit-flex;
	-webkit-justify-content: flex-end;
	        justify-content: flex-end;
	        flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
	        align-items: flex-start;
	-webkit-align-items: flex-start;
	width: 50%;
	height: 100%;
	background-color: transparent;
	background-image: url(../../img/home/beauty2_bg_pc.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
#salon2 .img_area h4{
	margin: 0 30px 0 auto;
}
#salon2 .point_list{
	width: calc(50% - 57px);
	margin-right: auto;
}
#salon2 .point_list li{
	padding-bottom: 2.6rem;
}
#salon2 .point_list li:last-child{
	padding-bottom: 0;
}
#salon2 .point_list li .point{
	position: relative;
	overflow: hidden;
	margin-bottom: 1.5rem;
	text-align: right;
}
#salon2 .point_list li .point span{
	font-weight: 500;
	position: relative;
	z-index: 1;
	color: #fff;
	letter-spacing: 0;
}
#salon2 .point_list li .point span:before{
	position: absolute;
	z-index: 0;
	top: 50%;
	right: calc(100% + 16px);
	display: block;
	width: 50vw;
	content: '';
	border-bottom: 1px solid #fff;
}
#salon2 .point_list li .txt_area h4{
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.3em;
	margin-bottom: 2.5rem;
	letter-spacing: 0;
	color: #fff;
}
#salon2 .point_list li .txt_area p{
	line-height: 1.7em;
	color: #fff;
}
@media print, screen and (max-width: 800px) and (min-width: 751px) {
	#salon2 .point_list {
		width: calc(50% - 20px);
	}
}
@media only screen and (max-width: 750px){
	#salon2{
		min-height: 0;
	}
	#salon2 .inner {
		padding-top: 0.76rem;
		padding-bottom: 1.2rem;
 	}
	#salon2 .img_area{
		position: relative;
		width: 100%;
		height: 8.3rem;
		background-image: url(../../img/home/beauty2_bg_sp.jpg);
	}
	#salon2 .img_area h4{
		margin: 0 0.55rem 0 auto;
	}
	#salon2 .point_list{
		width: 100%;
		margin-right: 0;
	}
	#salon2 .point_list li{
		padding-bottom: 0.53rem;
	}
	#salon2 .point_list li .point{
		margin-bottom: 0.15rem;
	}
	#salon2 .point_list li .point span:before{
		right: calc(100% + 0.2rem);
		width: 100vw;
	}
	#salon2 .point_list li .txt_area h4{
		font-size: 0.32rem;
		margin-bottom: 0.24rem;
	}
	#salon2 .point_list li .txt_area p{
		line-height: 1.4em;
	}
}


/* =========================================================
salon_menu
========================================================= */
#salon_menu {
	background-color: #fff;
	background-image: url(../../img/home/menu_bg_pc.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100% auto;
}
#salon_menu .inner {
	padding-top: 10.8rem;
	padding-bottom: 12rem;
}
#salon_menu .m_ttl {
	margin-bottom: 6rem;
}
#salon_menu .m_ttl .en{
	font-size: 4.2rem;
	margin-bottom: 1.1rem;
}
#salon_menu .m_ttl .jp{
	font-size: 1.8rem;
}
#salon_menu .btn_area {
	margin-top: 6rem;
}
@media only screen and (max-width: 750px){
	#salon_menu {
		background-image: url(../../img/home/menu_bg_sp.jpg);
	}
	#salon_menu .inner {
		padding-top: 1rem;
		padding-bottom: 1.2rem;
	}
	#salon_menu .m_ttl {
		margin-bottom: 0.6rem;
	}
	#salon_menu .m_ttl .en{
		font-size: 0.62rem;
		margin-bottom: 0.16rem;
	}
	#salon_menu .m_ttl .jp{
		font-size: 0.26rem;
	}

	#salon_menu .btn_area {
		margin-top: 0.56rem;
	}
}


/* =========================================================
blog_new
========================================================= */
#blog_new{
	background-color: #414976;
}
#blog_new .inner{
	padding-top: 10.8rem;
	padding-bottom: 12rem;
}
#blog_new .m_ttl{
	margin-bottom: 6rem;
}
#blog_new .m_ttl .en{
	font-size: 4.2rem;
	margin-bottom: 1.1rem;
}
#blog_new .m_ttl .jp{
	font-size: 1.8rem;
}
#blog_new .m_ttl *{
	color: #fff;
}
#blog_new .btn_area {
	margin-top: 6rem;
}
@media print,screen and (min-width: 751px) {
	#blog_new .article_list .clickable {
		width: 23.03%;
		max-width: 262.5px;
		margin-right: 2.62%;
	}
	#blog_new .article_list .clickable:nth-child(-n+4) {
		margin-top: 0;
	}
	#blog_new .article_list .clickable:nth-child(4n) {
		margin-right: 0;
	}
}
@media only screen and (max-width:750px){
	#blog_new .inner{
		padding-top: 1rem;
		padding-bottom: 1.2rem;
	}
	#blog_new .m_ttl{
		margin-bottom: 0.6rem;
	}
	#blog_new .m_ttl .en{
		font-size: 0.62rem;
		margin-bottom: 0.16rem;
	}
	#blog_new .m_ttl .jp{
		font-size: 0.26rem;
	}
	#blog_new .btn_area {
		margin-top: 0.54rem;
	}
}


/* =========================================================
media
========================================================= */
#media{
	background-color: #eee;
}
@media only screen and (max-width: 750px){
}


/* =========================================================
news
========================================================= */
#news{
}
#news .inner{
	display:         flex;
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
	        flex-flow: row nowrap;
	-webkit-flex-flow: row nowrap;
	        align-items: stretch;
	-webkit-align-items: stretch;
	padding-top: 12rem;
	padding-bottom: 6.7rem !important;
/*	border-bottom: 1px solid #ccc;*/
}
#news .news_left_bloc{
	width: 210px;
	padding-right: 20px;
}
#news .news_right_bloc{
	width: 77.193%;
}
#news .m_ttl{
	        align-items: flex-start;
	-webkit-align-items: flex-start;
	margin-bottom: 2.9rem;
}
#news .m_ttl .en {
	font-size: 3.2rem;
	margin-bottom: 1.1rem;
	margin-top: -0.9rem;
}
#news .m_ttl .jp{
	font-size: 1.4rem;
}
@media only screen and (max-width:750px){
	#news .inner{
		display: block;
		padding-top: 1.2rem;
		padding-bottom: 1.2rem !important;
	}
	#news .news_left_bloc{
		width: 100%;
		padding-right: 0;
		margin-bottom: 0.57rem;
		display:         flex;
		display: -webkit-flex;
		-webkit-justify-content: space-between;
		        justify-content: space-between;
		        flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		        align-items: flex-start;
		-webkit-align-items: flex-start;
	}
	#news .news_left_bloc .btn_area{
		width: 38.571%;
	}
	#news .news_right_bloc{
		width: 100%;
	}
	#news .m_ttl{
		        align-items: flex-start;
		-webkit-align-items: flex-start;
		margin-bottom: 0;
	}
	#news .m_ttl .en {
		font-size: 0.62rem;
		margin-top: -0.19rem;
		margin-bottom: 0.18rem;
	}
	#news .m_ttl .jp{
		font-size: 0.26rem;
	}
}


/* =========================================================
news_list
========================================================= */
#news_list .box{
	position: relative;
	display:         flex;
	display: -webkit-flex;
	-webkit-justify-content: flex-start;
	        justify-content: flex-start;
	        flex-flow: row nowrap;
	-webkit-flex-flow: row nowrap;
	        align-items: center;
	-webkit-align-items: center;
	width: 100%;
	border-bottom: 1px solid #ccc;
}
#news_list .box:first-child{
	border-top: 1px solid #ccc;
}
#news_list .box a.link{
	display:         flex;
	display: -webkit-flex;
	-webkit-justify-content: flex-end;
	        justify-content: flex-end;
	        flex-flow: row-reverse nowrap;
	-webkit-flex-flow: row-reverse nowrap;
	        align-items: center;
	-webkit-align-items: center;
	width: 100%;
	position: relative;
	padding: 1.6rem 3rem 1.5rem 1.1rem;
}
#news_list .box a.link::after{
	-webkit-transition-timing-function: linear;
	        transition-timing-function: linear;
	-webkit-transition-duration: 0.1s !important;
	        transition-duration: 0.1s !important;
	-webkit-transition-property: transform;
	        transition-property: transform;
	-webkit-transform: translateX(0);
	        transform: translateX(0);
}
#news_list .box a.link::after{
	font-family: themify;
	font-size: 1.4rem;
	font-weight: 400;
	font-style: normal;
	font-variant: normal;
	line-height: 1;
	position: absolute;
	top: 50%;
	right: 1rem;
	margin-top: -0.45em;
	content: '\e649';
	text-transform: none;
	color: #414976;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	speak: none;
}
#news_list .box a.link:hover:after{
	-webkit-transform: translateX(5px);
	        transform: translateX(5px);
}
#news_list .box a.link h3{
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.4em;
}
#news_list .box a.link .date{
	font-size: 1.4rem;
	font-weight: 400;
	width: 7.5rem;
	margin-right: 1.3rem;
}
@media only screen and (max-width:750px){
	#news_list .box a.link{
		padding: 0.23rem 0.35rem 0.25rem 0.1rem;
	}
	#news_list .box a.link::after{
		font-size: 0.26rem;
		right: 0.06rem;
	}
	#news_list .box a.link:hover:after{
		-webkit-transform: translateX(0.1rem);
		        transform: translateX(0.1rem);
	}
	#news_list .box a.link h3{
		font-size: 0.26rem;
	}
	#news_list .box a.link .date{
		font-size: 0.26rem;
		width: 1.44rem;
		margin-right: 0.2rem;
	}
}


/* =========================================================
instagram
========================================================= */
#instagram{
}
#instagram .inner{
	display:         flex;
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
	        flex-flow: row nowrap;
	-webkit-flex-flow: row nowrap;
	        align-items: stretch;
	-webkit-align-items: stretch;
	padding-top: 6rem;
	padding-bottom: 12rem !important;
}
#instagram .insta_left_bloc{
	width: 210px;
	padding-right: 20px;
}
#instagram .insta_right_bloc{
	width: 77.193%;
}
#instagram .m_ttl{
	        align-items: flex-start;
	-webkit-align-items: flex-start;
	margin-bottom: 2.9rem;
}
#instagram .m_ttl .en{
	font-size: 3.2rem;
	margin-bottom: 1.1rem;
	margin-top: -0.9rem;
}
#instagram .m_ttl .jp{
	font-size: 1.4rem;
}
#instagram .feed{
	width: 100%;
	margin: 0;
}
#instagram .feed #sb_instagram #sbi_images{
	display:         flex;
	display: -webkit-flex;
	-webkit-justify-content: flex-start;
	        justify-content: flex-start;
	        flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
	        align-items: flex-start;
	-webkit-align-items: flex-start;
	float: none;
}
@media print,screen and (min-width: 751px) {
	#instagram .feed #sb_instagram.sbi_col_4.sbi_disable_mobile #sbi_images .sbi_item{
		width: calc(20% - 8px);
		margin-top: 10px !important;
		margin-right: 10px !important;
		margin-left: 0 !important;
	}
	#instagram .feed #sb_instagram.sbi_col_4.sbi_disable_mobile #sbi_images .sbi_item a{
	}
	#instagram .feed #sb_instagram.sbi_col_4.sbi_disable_mobile #sbi_images .sbi_item:nth-child(-n+5){
		margin-top: 0 !important;
	}
	#instagram .feed #sb_instagram.sbi_col_4.sbi_disable_mobile #sbi_images .sbi_item:nth-child(5n){
		margin-right: 0 !important;
	}
}
@media only screen and (max-width:750px){
	#instagram .inner{
		display: block;
		padding-top: 1.2rem;
		padding-bottom: 1.2rem !important;
	}
	#instagram .insta_left_bloc{
		width: 100%;
		padding-right: 0;
		margin-bottom: 0.56rem;
		display:         flex;
		display: -webkit-flex;
		-webkit-justify-content: space-between;
		        justify-content: space-between;
		        flex-flow: row nowrap;
		-webkit-flex-flow: row nowrap;
		        align-items: flex-start;
		-webkit-align-items: flex-start;
	}
	#instagram .insta_left_bloc .btn_area{
		width: 38.571%;
	}
	#instagram .insta_right_bloc{
		width: 100%;
	}
	#instagram .m_ttl{
		        align-items: flex-start;
		-webkit-align-items: flex-start;
		margin-bottom: 0;
	}
	#instagram .m_ttl .en{
		font-size: 0.62rem;
		margin-top: -0.19rem;
		margin-bottom: 0.18rem;
	}
	#instagram .m_ttl .jp{
		font-size: 0.26rem;
	}
	#instagram .feed #sb_instagram.sbi_col_4.sbi_disable_mobile #sbi_images .sbi_item{
		width: calc(33.333% - 0.074rem);
		margin-top: 0.11rem !important;
		margin-right: 0.11rem !important;
		margin-left: 0 !important;
	}
	#instagram .feed #sb_instagram.sbi_col_4.sbi_disable_mobile #sbi_images .sbi_item a{
	}
	#instagram .feed #sb_instagram.sbi_col_4.sbi_disable_mobile #sbi_images .sbi_item:nth-child(-n+3){
		margin-top: 0 !important;
	}
	#instagram .feed #sb_instagram.sbi_col_4.sbi_disable_mobile #sbi_images .sbi_item:nth-child(3n){
		margin-right: 0 !important;
	}
}
