@charset "UTF-8";
.text-animation span {
  opacity: 0;
}

/* CSS Document */
.mainV{
    margin:0 calc(50% - 50vw);
    width:100vw;
    position:relative;
}
.mainV .image_inner{
    width:100vw;
    height:100vh;
    position:sticky;
    top:0;
    z-index:-1;
    overflow:hidden;
}
.mainV .image_inner:after{
	content:"";
	display:block;
	position:absolute;
	background:#000;
	opacity:0.5;
	height:100%;
	width:100%;
	top:0;
	left:0;
}
.mainV .image_inner video{
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index:-1;
}

.mainV .inner{
    width:50%;
    max-width:600px;
    margin:auto;
    display:block;
    padding:300px 0;
}
.mainV .inner dt{
    width:80%;
    margin:0 auto 200px;
}
.mainV .inner dt h1{
	font-size:1.0rem;
	text-align:center;
	border-radius:20px;
	padding:0.2em 0;
	color:#fff;
    display: flex;
    align-items: center;
}
.mainV .inner dt h1:before,
.mainV .inner dt h1:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #fff;
}
.mainV .inner dt h1:before {
    margin-right: 1rem;
}
.mainV .inner dt h1:after {
    margin-left: 1rem;
}
.mainV .inner h2{
    color:#fff;
    font-size:1.5rem;
    margin:0 0 2em 0;
    text-align:center;
}
.mainV .inner p{
     color:#fff;
    font-size:1.1rem;
    line-height:2.5em;
    text-align:center;
}

/* ----------959px–---------- */
@media screen and (max-width: 959px) {
	.mainV .inner{
	    width:96%;
	    max-width:600px;
	    margin:auto;
	    display:block;
	    padding:300px 0;
	}
}
/* ----------599px–---------- */
@media screen and (max-width: 599px) {
	.mainV .inner dt{
	    width:90%;
	    margin:0 auto 200px;
	}
	.mainV .inner h2 span{
	    display:block;
	}
	.mainV .inner p{
	    font-size:1.0rem;
	    line-height:2.3em;
	}
}


/*-- ep --*/
.ep{
    margin:0 calc(50% - 50vw);
    width:100vw;
    position:relative;
}
.ep_block{
    position:relative;
}
.ep_block:after{
	content:"";
	display:block;
	width:100%;
	height:100%;
	background:#000;
	position:absolute;
	top:0;
	left:0;
	opacity:0.4;
}
.ep_block .image_sub_inner{
    width:100vw;
    height:100vh;
    position:sticky;
    top:0;
    z-index:-1;
    background:#000;
}
.ep_block .image_sub_inner img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.ep_block .image_sub_title{
    position:sticky;
	top:0;
	right:0;
	width:50%;
	height:100vh;
	margin:0 0 0 auto;
	z-index:1;
	align-items:center;
	display:flex;
}
.ep_block .image_sub_title h3{
	font-size:2rem;
	color:#fff;
	margin:auto;
	display: flex;
	align-items: center;
	width:50%;
}
.ep_block .image_sub_title h3:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #fff;
	margin-left: 1rem;
}

.ep_block .sub_inner{
	padding:0 0 300px;
    display:block;
    width:fit-content;
	color:#fff;
	z-index:1;
	position:relative;
}
.ep_block.first .sub_inner,
.ep_block.third .sub_inner{
    margin:0 auto 0 10%;
}
.ep_block.second .sub_inner{
    margin:0 10% 0 auto;
}
.ep_block.second .image_sub_title{
    	margin:0 auto 0 0;
}
.ep_block .sub_inner h2{
    font-size:1.5rem;
    margin:0 0 2em 0;
}
.ep_block .sub_inner p{
    font-size:1.1rem;
    line-height:2.5em;
}
/* ----------959px–---------- */
@media screen and (max-width: 959px) {
	.ep_block.first .sub_inner,
	.ep_block.second .sub_inner,
	.ep_block.third .sub_inner{
		margin:0 auto;
		width:90%;
		max-width:600px;
	}
	.ep_block .image_sub_title{
	    position:relative;
		top:unset;
		right:unset;
		height:unset;
		margin:0 auto 100px 0;
		z-index:1;
		width:100%;
		align-items:unset;
		display:block;
	}
	.ep_block.second .image_sub_title{
	    margin:0 auto 100px 0;
	}
	.ep_block .image_sub_title h3{
		font-size:1.2rem;
		width:90%;
		max-width:600px;
	}
}
/* ----------599px–---------- */
@media screen and (max-width: 599px) {
	.ep_block.second .sub_inner{
	}
	.ep_block .sub_inner p{
	    font-size:1.0rem;
	    line-height:2.3em;
	}
}



/*-- architect --*/
.architect{
    margin:0 calc(50% - 50vw);
    width:100vw;
    display:flex;
    justify-content:space-between;
    background: linear-gradient(270deg, #515c89, #1d1f34);
    background-size: 200% 200%;
    animation: Grad 5s ease infinite;
}
@keyframes Grad {
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
}
.architect .detail_inner{
    color:#ffff;
    width:50%;
    align-items:center;
    display:flex;
}
.architect .detail_inner .detail_sub_inner{
    width:fit-content;
    height:fit-content;
    margin:auto;
}
.architect .detail_inner .detail_sub_inner h2{
    font-size:1.5rem;
    margin:0 0 1.5em 0;
}
.architect .image_inner{
     width:50%;
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
}
.architect .image_inner dt{
    width:33.333%;
    overflow:hidden;
    aspect-ratio:1 / 1;
}
.architect .image_inner dt img{
    object-fit:cover;
    height:100%;
    width:100%;
}
/* ----------1099px–---------- */
@media screen and (max-width: 1099px) {
	.architect{
	    display:block;
	    justify-content:unset;
	}
	.architect .detail_inner{
	    width:100%;
		aspect-ratio:1 / 1;
	}
	.architect .image_inner{
	     width:100%;
	    display:flex;
	    justify-content:space-between;
	    flex-wrap:wrap;
	}
}
/* --------- 599px–---------- */
@media screen and (max-width: 599px) {
	.architect .detail_inner .detail_sub_inner{
	    width:80%;
	}
	.architect .detail_inner{
	    width:100%;
		aspect-ratio:unset;
		padding:100px 0;
	}
	.architect .detail_inner .detail_sub_inner h2{
	}
	.architect .detail_inner .detail_sub_inner h2 span{
	    display:block
	}
}
/* --------- 519px–---------- */
	@media screen and (max-width: 519px) {
	.architect .image_inner dt span{
		font-size:2.5vw;
		padding:0.3em 0.7em;
	}
}


/*-- works --*/
.works{
    margin:0 calc(50% - 50vw);
    width:100vw;
    display:flex;
    justify-content:space-between;
    flex-direction: row-reverse;
    background: linear-gradient(270deg, #352c1e, #897247);
    background-size: 200% 200%;
    animation: Grad 5s ease infinite;
}
.works .detail_inner{
    width:50%;
    align-items:center;
    display:flex;
    color:#fff;
}
.works .detail_inner .detail_sub_inner{
    width:fit-content;
    height:fit-content;
    margin:auto;
}
.works .detail_inner .detail_sub_inner h2{
    font-size:1.5rem;
    margin:0 0 1.5em 0;
}
.works .image_inner{
     width:50%;
    display:flex;
    justify-content:space-between;
    flex-wrap:wrap;
}
.works .image_inner dt{
    width:33.333%;
    overflow:hidden;
    aspect-ratio:1 / 1;
}
.works .image_inner dt img{
    object-fit:cover;
    height:100%;
    width:100%;
}
/* ----------1099px–---------- */
@media screen and (max-width: 1099px) {
	.works{
	    display:block;
	    justify-content:unset;
	    flex-direction: unset;
	}
	.works .detail_inner{
	    width:100%;
	    aspect-ratio:1 / 1;
	}
	.works .image_inner{
	     width:100%;
	}
}
/* ----------599px–---------- */
@media screen and (max-width: 599px) {
	.works .detail_inner .detail_sub_inner h2{
	}
	.works .detail_inner .detail_sub_inner{
	    width:80%;
	    margin:auto;
	}
	.works .detail_inner{
	    aspect-ratio:unset;
		padding:100px 0;
	}
}


/* -- cta -- */
.cta{
	margin:0 calc(50% - 50vw) 0;
	width:100vw;
	padding:15vh 0;
	background:url("../../../../../img/lineup/architectcollaboration/lp_architect_cta_01.webp") center / cover;
	position:relative;
}
.cta:after{
	content:"";
	display:block;
	background:#000;
	position:absolute;
	height:100%;
	width:100%;
	position:absolute;
	top:0;
	left:0;
	opacity:0.5
}
.cta .inner{
	width:80%;
	max-width:600px;
	margin:auto;
	box-sizing:border-box;
	/* background:#fff; */
	z-index:1;
	position:relative;
	color:#fff;
}
.cta .inner h4{
	font-size:2rem;
	display: flex;
    align-items: center;
}
.cta .inner h4:after {
    content: "";
    height: 1px;
    flex-grow: 1;
    background-color: #ccc;
	margin-left: 1rem;
}
.cta .inner h2{
	font-size:1.3rem;
	margin:0 0 1em 0;
	line-height:2em;
}
.cta .inner h2 strong{
	font-weight:lighter;
	font-size:120%;
}
.cta .inner .ctr_box{
	display:flex;
	justify-content:space-between;
	margin:30px 0 0 0;
}
.cta .inner .ctr_box .btn{
	width:48%;
}
.cta .inner .ctr_box .btn a{
	width:100%;
	display:block;
	padding:10px 20px;
	box-sizing:border-box;
	border-radius:50px;
	background:#948977;
		box-shadow: 1rem 1rem 1rem -1rem hsl(200 50% 20% / 40%);
	background: linear-gradient(139deg, #948977, #7d6f57);
	color:#fff;
	text-align:center;
}


/* ----------839px–---------- */
@media screen and (max-width: 839px) {
	.cta .inner .ctr_box{
		display:block;
		justify-content:unset;
		margin:30px 0 0 0;
	}
	.cta .inner .ctr_box .btn{
		width:100%;
		margin:0 0 20px 0;
	}
}
/* ----------768px–---------- */
@media screen and (max-width: 768px) {
	.cta{
		padding:10vh 0;
	}
	.cta .inner h2{
		font-size:1.2rem;
		line-height:unset;
	}
	.cta .inner{
		width:80%;
		max-width:unset;
		margin:auto;
	}
}
