@charset "utf-8";

img{
	max-width: 100%;
	height: auto;
}

/********************
/* WORKS
********************/
#top_works{
	margin-top: 5.36rem;
}
#top_works .vm{
	margin-top: 2.67rem;
}
@media screen and (min-width: 768px){
	#top_works{
		margin-top: 6.81rem;
	}
	#top_works .works_block li{
		width: calc((100% - 60px)/3);
		margin-right: 30px;
	}
	#top_works .works_block li:nth-child(3){
		margin-top: 0;
	}
	#top_works .works_block li:nth-child(3n){
		margin-right: 0;
	}
	#top_works .vm{
		margin-top: 3.42rem;
	}
}
@media screen and (min-width: 992px){
	#top_works{
		margin-top: 8.26rem;
	}
	#top_works .works_block li{
		width: calc((100% - 80px)/3);
		margin-right: 40px;
	}
	#top_works .vm{
		margin-top: 4.17rem;
	}
}
@media screen and (min-width: 1200px) {
	#top_works .c-title1 {
        margin-bottom: 3.79rem;
    }
}
@media screen and (min-width: 1400px){
	#top_works{
		margin-top: 9.73rem;
	}
	#top_works .works_block li{
		width: calc((100% - 100px)/3);
		margin-right: 50px;
	}
	#top_works .vm{
		margin-top: 4.93rem;
	}
}
@media screen and (min-width: 1600px) {
	    #top_works .c-title1 {
        margin-bottom: 4.43rem;
    }
}
/*トップページのみ*/
.works_block.works_top_slider li {
    margin-top: 0;
    margin-right: 0;
    padding: 0 10px;
}
@media screen and (min-width: 768px) {
    #top_works .works_block.works_top_slider li {
        margin-right: 0;
    }
	.works_block.works_top_slider li {
    padding: 0 15px;
}
}
@media screen and (min-width: 1400px) {
	.works_block.works_top_slider li {
    padding: 0 20px;
}
}
/********************
/* DETAIL GALLERY
********************/
#top_detailgallery{
	position: relative;
	margin-top: 5.76rem;
}
.dg_back{
	width: 100%;
	height: 400px;
	position: relative;
	overflow: hidden;
}
.dg_back::after{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.2);
}
.dg_back .inner{
	width: 100%;
	height: 115%;
	margin-top: -6%;
}
.dg_back img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: 1.9s cubic-bezier(0.19, 1, 0.22, 1);
}
.dg_inner{
	position: absolute;
	content: "";
	width: 81.25%;
	top: 50%;
	left: 50%;
	color: #fff;
	text-align: center;
	transform: translate(-50%,-50%);
}
.dg_flex p{
	margin-bottom: 0;
}
#top_detailgallery .vm{
	color: #fff;
	margin-top: 2.57rem;
}
@media screen and (min-width: 768px){
	#top_detailgallery{
		margin-top: 7.17rem;
	}
	.dg_back{
		height: 100%;
		max-height: 800px;
		aspect-ratio: 2 / 1;
	}
	.dg_inner{
		text-align: left;
	}
	#top_detailgallery .vm{
		margin-top: 3.28rem;
	}
}
@media screen and (min-width: 992px){
	#top_detailgallery{
		margin-top: 8.58rem;
	}
	.dg_flex{
		display: flex;
	}
	.dg_flex .c-title1{
		margin-right: 4.42rem;
		margin-bottom: 0;
	}
	#top_detailgallery .vm{
		margin-top: 3.99rem;
	}
}
@media screen and (min-width: 1200px){
	.dg_flex .c-title1{
		margin-right: 6.04rem;
	}
}
@media screen and (min-width: 1400px){
	#top_detailgallery{
		margin-top: 10rem;
	}
	.dg_back .inner{
		height: 120%;
	}
	.dg_flex .c-title1{
		margin-right: 7.66rem;
	}
	#top_detailgallery .vm{
		margin-top: 4.7rem;
	}
}

/********************
/* YOUTUBE
********************/
#top_yt{
	margin-top: 4.76rem;
}
.yt_tit{
	text-align: center;
}
.yt_slider .item{
	padding: 0 10px;
}
#top_yt .vm{
	margin-top: 3.07rem;
}
@media screen and (min-width: 768px){
	#top_yt{
		margin-top: 6.29rem;
	}
	.yt_tit{
		display: flex;
		align-items: center;
		justify-content: space-between;
		text-align: left;
		margin-bottom: 3.58rem;
	}
	.yt_tit .c-title1{
		margin-bottom: 0;
	}
	#top_yt .vm{
		margin-top: 0;
	}
}
@media screen and (min-width: 992px){
	#top_yt{
		margin-top: 7.82rem;
	}
}
@media screen and (min-width: 1200px){
	.yt_slider .item{
		padding: 0 15px;
	}
	.yt_tit{
		margin-bottom: 4.66rem;
	}
}
@media screen and (min-width: 1400px){
	#top_yt{
		margin-top: 9.36rem;
	}
}
@media screen and (max-width: 767px){
	.yt_tit .vm{
		display: none;
	}
}

/********************
/* STYLE / SPEC
********************/
#top_style{
	width: 100%;
	position: relative;
	padding: 6.53rem 0 6.92rem;
	margin-top: 6.53rem;
}
#top_style::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background-color: #f5f5f5;
	top: 0;
	left: 0;
	z-index: -1;
}
.style_block .img{
	margin-bottom: 2.77rem;
}
.en_txt{
	font-size: 1.07rem;
	font-weight: 400;
	margin-bottom: 2.07rem;
}
.style_tit{
	font-size: 1.692rem;
	letter-spacing: 0.06em;
	line-height: 1.9;
	margin-bottom: 0.7rem;
}
.style_block .txtArea .txt_block{
	text-align: justify;
	color: #505050;
}
.style_block.spec{
	margin-top: 5.76rem;
}
.style_block .vm{
	margin-top: 2.19rem;
}
@media screen and (min-width: 768px){
	#top_style{
		padding: 8.13rem 0 8.61rem;
		margin-top: 8.13rem;
	}
	#top_style::before{
		width: 94.11%;
		left: 50%;
		transform: translateX(-50%);
	}
	.style_block{
		display: flex;
		justify-content: space-between;
		flex-direction: row-reverse;
	}
	.style_block .img{
		width: 42.84%;
		margin: 0;
	}
	.style_block .txtArea{
		width: 45.76%;
		align-self: center;
	}
	.style_block.spec{
		flex-direction: row;
		margin-top: 7.17rem;
	}
	.style_block.spec .img{
		width: 53.33%;
	}
	.style_block .img img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.style_block.spec .txtArea{
		width: 38.66%;
	}
	.en_txt{
		margin-bottom: 3.05rem;
	}
	.style_tit{
		margin-bottom: 1.33rem;
	}
	.style_block.spec .txtArea .spec_txt{
		width: 90%;
		max-width: 480px;
	}
	.style_block .vm{
		margin-top: 2.81rem;
	}
}
@media screen and (min-width: 992px){
	#top_style{
		padding: 9.73rem 0 10.3rem;
		margin-top: 9.73rem;
	}
	.style_block .img{
		width: 48.84%;
	}
	.style_block .txtArea{
		width: 35.76%;
	}
	.style_block.spec{
		margin-top: 8.58rem;
	}
	.style_block .vm{
		margin-top: 3.47rem;
	}
}
@media screen and (min-width: 1200px){
	.style_block .img{
		width: 43.84%;
	}
	.style_block .txtArea{
		width: 40.76%;
	}
	.en_txt{
		font-size: 1.13rem;
		margin-bottom: 4.03rem;
	}
	.style_tit{
		font-size: 2.13rem;
		margin-bottom: 1.96rem;
	}
}
@media screen and (min-width: 1400px){
	#top_style{
		padding: 11.33rem 0 12rem;
		margin-top: 11.33rem;
	}
	.style_block .img{
		height: 700px;
	}
	.style_block.spec{
		margin-top: 10rem;
	}
	.style_block.spec .img{
		height: 497px;
	}
	.style_block .vm{
		margin-top: 4.16rem;
	}
}
@media screen and (min-width: 1600px){
	.style_block .img{
		width: 53.84%;
		height: 800px;
	}
	.style_block .txtArea{
		width: 30.76%;
	}
	.style_block.spec .img{
		height: 570px;
	}
}
/* MOUSE FOLLOW */
#mouse-follow {
	width: 150px;
	height: 150px;
	margin-top: -80px;
	margin-left: -90px;
	border-radius: 50%;
	background-color: rgba(255,255,255,0.5);
	position: absolute;
	z-index: 2000;
	pointer-events: none;
	will-change: transform;
	opacity: 0;
	transform: scale(0);
	transition: transform 0.2s, opacity 0.4s, -webkit-transform 0.2s;
}
#mouse-follow.is-show {
	opacity: 1;
	transform: scale(1);
}
@media screen and (max-width: 1023px) {
	#mouse-follow {
		display: none;
	}
}

/********************
/* REFORM & RENOVATION
********************/
#top_reno{
	margin-top: 5.78rem;
}
#top_reno .c-title1{
	margin-bottom: 3.16rem;
}
.reno_img{
	margin-bottom: 2.47rem;
}
.reno_txt{
	font-size: 1.538rem;
	line-height: 1.7;
	letter-spacing: 0.06em;
	margin-bottom: 0.976rem;
}
.reno_txtArea .txt_block{
	color: #505050;
	text-align: justify;
}
#top_reno .vm{
	margin-top: 1.8rem;
}
@media screen and (min-width: 768px){
	#top_reno{
		margin-top: 6.16rem;
	}
	#top_reno .c-title1{
		margin-bottom: 4.48rem;
	}
	.reno_flex{
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
	}
	.reno_img{
		width: 46.14%;
		margin: 0;
	}
	.reno_txtArea{
		width: 45.28%;
		align-self: center;
	}
	.reno_txt{
		margin-bottom: 1.55rem;
	}
	#top_reno .vm{
		margin-top: 2.36rem;
	}
}
@media screen and (min-width: 992px){
	#top_reno{
		margin-top: 7.7rem;
	}
	.reno_img{
		width: 57.14%;
	}
	.reno_txtArea{
		width: 34.28%;
	}
	#top_reno .vm{
		margin-top: 2.92rem;
	}
}
@media screen and (min-width: 1200px){
	#top_reno .c-title1{
		margin-bottom: 5.8rem;
	}
	.reno_img{
		width: 49.14%;
	}
	.reno_txtArea{
		width: 42.28%;
	}
	.reno_txt{
		font-size: 1.86rem;
		margin-bottom: 2.13rem;
	}
}
@media screen and (min-width: 1400px){
	#top_reno{
		margin-top: 10.4rem;
	}
	.reno_img{
		width: 55.14%;
	}
	.reno_txtArea{
		width: 36.28%;
	}
	#top_reno .vm{
		margin-top: 3.5rem;
	}
}
@media screen and (min-width: 1500px){
	.reno_img{
		width: 57.14%;
	}
	.reno_txtArea{
		width: 34.28%;
	}
}

/********************
/* STAFF
********************/
#top_staff{
	margin-top: 5.16rem;
}
#top_staff .c-title1{
	margin-bottom: 1.73rem;
}
#top_staff .txt_block{
	font-size: 0.84rem;
	line-height: 1.8;
	color: #505050;
	text-align: center;
	margin-bottom: 2.29rem;
}
.staff_slider .item{
	padding: 0 5px;
}
.staff_slider .item a{
	display: block;
}
.staff_slider .item a:hover{
	text-decoration: none;
}
.staff_slider .zoom{
	margin-bottom: 0.94rem;
}
#top_staff .vm{
	margin-top: 2.19rem;
}
@media screen and (min-width: 768px){
	#top_staff{
		margin-top: 6.57rem;
	}
	#top_staff .c-title1{
		margin-bottom: 2.54rem;
	}
	#top_staff .txt_block{
		margin-bottom: 2.94rem;
	}
	.staff_slider .zoom{
		margin-bottom: 1.27rem;
	}
	#top_staff .vm{
		margin-top: 2.88rem;
	}
}
@media screen and (min-width: 992px){
	#top_staff{
		margin-top: 7.98rem;
	}
	#top_staff .txt_block{
		margin-bottom: 3.59rem;
	}
	.staff_slider .zoom{
		margin-bottom: 1.6rem;
	}
	#top_staff .vm{
		margin-top: 3.57rem;
	}
}
@media screen and (min-width: 1200px){
	#top_staff .c-title1{
		margin-bottom: 3.36rem;
	}
	#top_staff .txt_block{
		font-size: 0.86rem;
	}
	.staff_slider .item{
		padding: 0 10px;
	}
}
@media screen and (min-width: 1400px){
	#top_staff{
		margin-top: 9.4rem;
	}
	#top_staff .txt_block{
		margin-bottom: 4.26rem;
	}
	.staff_slider .zoom{
		margin-bottom: 1.93rem;
	}
	#top_staff .vm{
		margin-top: 4.26rem;
	}
}

/********************
/* RECRUIT
********************/
#top_recruit{
	position: relative;
	width: 100%;
	overflow: hidden;
	padding: 4.46rem 0 5.38rem;
	margin-top: 5.88rem;
}
#top_recruit::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #f5f5f5;
	z-index: -1;
}
#top_recruit::after{
	position: absolute;
	content: "";
	width: 81px;
	height: 129%;
	background-image: url("../images/joinus.svg");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	bottom: -20px;
	left: 0;
	z-index: -1;
}
.rec_img{
	margin-bottom: 2.57rem;
}
.rec_txtArea .txt_block{
	text-align: justify;
	color: #505050;
}
#top_recruit .vm{
	margin-top: 2rem;
}
@media screen and (min-width: 768px){
	#top_recruit{
		padding: 5.68rem 0 6.69rem;
		margin-top: 7.32rem;
	}
	#top_recruit::before{
		width: 94.11%;
		left: 50%;
		transform: translateX(-50%);
	}
	#top_recruit::after{
		width: 68px;
		left: calc(2.945% - 2px);
	}
	.rec_flex{
		display: flex;
		justify-content: space-between;
		flex-direction: row-reverse;
	}
	.rec_img{
		margin: 0;
		width: 48.33%;
	}
	.rec_txtArea{
		width: 43.66%;
		align-self: center;
	}
	.rec_txtArea .inner{
		width: 82.76%;
		max-width: 480px;
		margin-left: auto;
	}
	#top_recruit .vm{
		margin-top: 2.57rem;
	}
}
@media screen and (min-width: 992px){
	#top_recruit{
		padding: 6.9rem 0 8rem;
		margin-top: 8.76rem;
	}
	#top_recruit::after{
		width: 79px;
	}
	.rec_img{
		width: 53.33%;
	}
	.rec_txtArea{
		width: 38.66%;
	}
	#top_recruit .vm{
		margin-top: 3.14rem;
	}
}
@media screen and (min-width: 1200px){
	#top_recruit::after{
		width: 92px;
	}
}
@media screen and (min-width: 1400px){
	#top_recruit{
		padding: 8.13rem 0 9.33rem;
		margin-top: 10.2rem;
	}
	#top_recruit::after{
		width: 107px;
	}
	.rec_img{
		height: 570px;
	}
	.rec_img img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	#top_recruit .vm{
		margin-top: 3.73rem;
	}
}
@media screen and (min-width: 1600px){
	#top_recruit::after{
		width: 111px;
		height: 130%;
		bottom: -35px;
	}
}

/********************
/* INSTAGRAM
********************/
#top_insta{
	margin-top: 4.2rem;
}
.insta_tit .c-title1{
	text-align: center;
	margin-bottom: 1.65rem;
}
.insta_tit .c-title1 .f-eng{
	margin-bottom: 0;
}
.insta_tit .vm2{
	display: none;
}
#top_insta .vm2{
	margin-top: 2.3rem;
}
@media screen and (min-width: 768px){
	#top_insta{
		margin-top: 5.37rem;
	}
	.insta_tit{
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 2.54rem;
	}
	.insta_tit .c-title1{
		margin-bottom: 0;
	}
	.insta_tit .vm2{
		display: inline-flex;
	}
	#top_insta .vm2{
		margin-top: 0;
	}
}
@media screen and (min-width: 992px){
	#top_insta{
		margin-top: 6.54rem;
	}
}
@media screen and (min-width: 1200px){
	.insta_tit{
		margin-bottom: 3.43rem;
	}
}
@media screen and (min-width: 1400px){
	#top_insta{
		margin-top: 7.73rem;
	}
}

/********************
/* EVENT
********************/
#top_event{
	margin-top: 4.87rem;
	width: 100%;
}
#top_event a:hover{
	text-decoration: none;
}
.top_event_tit .c-title1{
	text-align: center;
}
.top_event_tit .vm2{
	display: none;
}
.ev_vm2{
	margin-top: 2rem;
}
@media screen and (min-width: 768px){
	#top_event{
		width: 76.47%;
		margin-top: 6.46rem;
		margin-right: auto;
		margin-left: auto;
	}
	.ev_vm2{
		margin-top: 2.29rem;
	}
}
@media screen and (min-width: 992px){
	#top_event{
		margin-top: 8.05rem;
	}
	.ev_vm2{
		margin-top: 2.67rem;
	}
}
@media screen and (min-width: 1200px){
	#top_event{
		display: flex;
		justify-content: space-between;
	}
	.top_event_tit{
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}
	.top_event_tit .c-title1{
		text-align: left;
		margin-top: -0.6rem;
	}
	.top_event_tit .vm2{
		display: inline-flex;
	}
	#top_event .event_block{
		width: 73.84%;
	}
	.ev_vm2{
		display: none;
	}
	#top_event .no-post_wrap{
		width: 73.84%;
	}
}
@media screen and (min-width: 1400px){
	#top_event{
		margin-top: 9.66rem;
	}
}
@media screen and (max-width: 767px){
	#top_event .event_block li.slick-slide{
		margin: 0;
		padding: 0 5px;
	}
}