
@font-face {
font-family: "Decora-Softiva";
src: url("../font/Decora-Softiva.woff") format('woff');
}





* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}


ul, li{
  list-style:none;
}



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



video{
	display:block;
  width:100%;
  height:auto;
}

::selection {
  background-color: #000;
  color:#fff;
}


.loading {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  bottom: 0;
  z-index: 999999;
  opacity: 1;
  background: #fff;
}


.loader
{
  position: absolute;
  display: inline-block;
  top:50%;
  left:50%;
  margin-left:-17px;
  margin-top:-30px;
  width: 30px;
  height: 30px;
  border-radius: 30px;
  border: 1px solid #ccc;
  border-right-color: transparent;
  -webkit-animation: spin 1s infinite linear;
  -moz-animation: spin 1s infinite linear;
}


@-webkit-keyframes spin
{
0% { -webkit-transform: rotate(0deg); opacity: 0.4; }
50%  { -webkit-transform: rotate(180deg); opacity: 1; }
100%   { -webkit-transform: rotate(360deg); opacity: 0.4; }
}

@-moz-keyframes spin
{
0% { -moz-transform: rotate(0deg); opacity: 0.4; }
50%  { -moz-transform: rotate(180deg); opacity: 1; }
100%   { -moz-transform: rotate(360deg); opacity: 0.4; }
}



.font_bold{
  font-weight:bold;
}

.text_left{
	text-align:left;
}

.text_right{
	text-align:right;
}


html{
	overflow-x: hidden;
}




.fw25 {
	color:#000;
	line-height:150%;
	font-family: "mr-eaves-modern", sans-serif;	
	color: #000000;
}


.fw25 a{
	color: #241E74;
	text-decoration:none;
}











/* 共通ページ */

.st_sec{
		position:relative;;
	}
	
	
	
	
	#main_img{
	position:relative;
	max-width:1480px;
	margin:0 auto;
	padding:0px 100px;
}

	
	.main_img_p{
	padding:0 80px;
	}



.main_t{
	position:relative;
	text-align: center;
	z-index: 99;
	margin-top:-100px;
}


.open .main_copy .ani_text01 span {
  opacity: 0;
  display: inline-block;
  animation: fadeIn 0.6s forwards;
}

@keyframes fadeIn {
  to {
    opacity: 1;
  }
}

.main_copy {
	margin-top:40px;
}


.main_copy h4{
	width: 100%;
	white-space: nowrap; /* 改行しない */
	font-family: "Decora-Softiva";
	font-size:9vw;
	letter-spacing:3px;
	font-weight:500;
	line-height:80%;
	color:#feecd2;
}



#main_info{
	margin-top:60px;
}

.logo_house {
	text-align:center;
	margin-top:80px;
}

.logo_house p{
	opacity:0;
}

.open .logo_house p{
	opacity:1;
	-webkit-transition: .6s cubic-bezier(0.78, .18, .34, .98) 1s;
	-moz-transition: .6s cubic-bezier(0.78, .18, .34, .98) 1s;
	-ms-transition: .6s cubic-bezier(0.78, .18, .34, .98) 1s;
	-o-transition: .6s cubic-bezier(0.78, .18, .34, .98) 1s;
	transition: .6s cubic-bezier(0.78, .18, .34, .98) 1s;
}

.logo_house p{
	display:inline-block;
	width:320px;
}

.item_banner{
	margin-top:120px;
	text-align:center;
}

.item_banner a{
	position:relative;
	display:inline-block;
	width:420px;
	height:100px;
	background-image:url(../images/banner01.jpg);
	background-size: cover;
}

.item_banner a span{
	position:absolute;
	top:55%;
	left:50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	font-size:36px;
	letter-spacing:3px;
	font-weight:500;
	color:#fff;
}


.season_collection{
	opacity:0;
}


.open .season_collection{
	opacity:1;
	-webkit-transition: 1s cubic-bezier(0.78, .18, .34, .98) .6s;
	-moz-transition: 1s cubic-bezier(0.78, .18, .34, .98) .6s;
	-ms-transition: 1s cubic-bezier(0.78, .18, .34, .98) .6s;
	-o-transition: 1s cubic-bezier(0.78, .18, .34, .98) .6s;
	transition: 1s cubic-bezier(0.78, .18, .34, .98) .6s;
}

.season_collection p{
	text-align:center;
	font-size: 2vw;
	letter-spacing: 1px;
	color:#feecd2;
}





#sub_img{
	margin-top:150px;
	overflow: hidden;
}



.scroll-infinity__wrap {
  overflow: hidden;
}

.scroll-infinity__list {
	display: flex;
	align-items: center;
  width: max-content;
  animation: infinity-scroll 40s linear infinite;
  list-style: none;
  padding: 0;
  margin: 0;
}

.scroll-infinity__list > li {
	width: calc(100vw / 6);
	max-width:500px;
	padding:0 25px;
}


	@keyframes infinity-scroll {
	from {
		transform: translateX(-50%);
	}
	to {
		transform: translateX(0%);
	}
	}
	

	




.lp_sec{
	position:relative;
}




.sec_detail{
	display:inline-block;
	position:absolute;
}


.num{
	text-align:right;
}


.num p{
	font-size: 138px;
	letter-spacing:1px;
	line-height:100%;
}


.item_cresit{
	margin-top:40px;
}


.item_cresit > a{
	display:block;
	font-size:16px;
	letter-spacing:1px;
	font-weight:500;
	color:#000000;
	margin-bottom:10px;
}


.copy_en{
	z-index: 99;
}


.copy_en p{
	font-size: 7.2vw;
	letter-spacing: 3px;
	line-height: 100%;
	font-weight: 400;
}


.ani_text01 span {
	opacity:0;
}


.ani_text02 span {
	opacity:0;
}

.scroll_ani.active .ani_text02 span {
  opacity: 0;
  display: inline-block;
  animation: fadeIn02 0.6s forwards;
}


@keyframes fadeIn02 {
  to {
    opacity: 1;
  }
}








.sec_bk{
	opacity: 0;
}


.active .sec_bk{
	opacity: 1;
	-webkit-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) .4s;
	-moz-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) .4s;
	-ms-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) .4s;
	-o-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) .4s;
	transition: 1.5s cubic-bezier(0.78, .18, .34, .98) .4s;
}


.fade01{
	opacity: 0;
}


.active .fade01{
	opacity: 1;
	-webkit-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.2s;
	-moz-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.2s;
	-ms-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.2s;
	-o-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.2s;
	transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.2s;
}


.fade02{
	opacity: 0;
}

.active .fade02{
	opacity: 1;
	-webkit-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.8s;
	-moz-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.8s;
	-ms-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.8s;
	-o-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.8s;
	transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.8s;
}




.sub_title p{
	font-family: "Decora-Softiva";
	font-size: 5vw;
	letter-spacing: 3px;
	line-height:120%;
	color:#feecd2;
}





.st_sec{
	position:relative;
}



#bk01{
	padding:120px 0 80px;
	background-image: 
	linear-gradient(to bottom, rgba(255,255,255,0) 90%, rgba(255,255,255,1) 100%),
	url(../images/bk01.jpg);
	background-size: cover;
	background-repeat: no-repeat;
}



#sec01{
	max-width: 1480px;
	margin: 180px auto 0;
	padding: 0px 120px;
}

.sec01_01{
	width:60%;
}

.sec01_02{
	margin-top:100px;
	padding-left:30%;
}

.sec01_copy {
	position:absolute;
	right: 10%;
	z-index:99;
	top:14%;
	text-align:right;
}



#sec02{
	max-width: 1280px;
	margin: 300px auto 0;
	padding: 0px 240px;
}


#sec03{
	max-width: 1280px;
	margin: 150px auto 0;
	padding: 0px 100px;
}

.sec03_01{
	padding-left:5%;
	width:80%;
}

.sec03_02{
	margin-top:150px;
	display:flex;
	gap:100px;
	align-items: center;
}

.sec03_02 > div{
	width:50%;
}


.sec03_04{
	margin-top:150px;
	padding:0 120px;
}


#sec04{
	max-width: 1280px;
	margin: 150px auto 0;
	padding: 0px 100px;
}

.sec04_01{
	padding-left:25%;
}

.sec04_copy{
	position:absolute;
	top:15%;
	left:5%;
}


.sec04_02{
		margin-top:150px;
	display:flex;
	gap:100px;
	align-items: center;
}

.sec04_02 > div{
	width:50%;
}



#sec05{
	max-width: 1280px;
	margin: 150px auto 0;
	padding: 0px 180px;
}

#sec06{
	max-width: 1280px;
	margin: 150px auto 0;
	padding: 0px 280px;
}




#sec07{
	max-width: 1280px;
	margin: 150px auto 0;
	padding: 0px 100px;
}


.sec07_01{
	margin-top:150px;
	display:flex;
	gap:100px;
	align-items: center;
}

.sec07_01 > div{
	width:50%;
}





#sec08 {
    max-width: 1280px;
    margin: 150px auto 0;
    padding: 0px 280px;
}


#sec09 {
    max-width: 1280px;
    margin: 150px auto 0;
    padding: 0px 180px;
}



#sec10{
    max-width: 1280px;
    margin: 150px auto 0;
    padding: 0px 120px;
}

.sec10_01{
	padding-left:50%;
}

.sec10_copy{
	position:absolute;
	top:15%;
	left:5%;
}







#bk02{
 background-image:
    linear-gradient(to top, rgba(255,255,255,0) 90%, rgba(255,255,255,1) 100%),
    url(../images/bk02.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
  padding: 80px 0 200px;
}




#sec11 {
    max-width: 1280px;
    margin: 150px auto 0;
    padding: 0px 200px;
}


.sec11_01{
	
}



#sec12 {
    max-width: 1280px;
    margin: 150px auto 0;
    padding: 0px 120px;
}


.sec12_01{
	padding-right:50%;
}

.sec12_copy {
    position: absolute;
    right: 10%;
    z-index: 99;
    top: 14%;
    text-align: right;
}




#sec13 {
    max-width: 1280px;
    margin: 200px auto 0;
    padding: 0px 120px;
}

.sec13_01{
	padding-left:20%;
}



#sec14 {
    max-width: 1280px;
    margin: 100px auto 0;
    padding: 0px 280px;
}



#sec15{
	max-width: 1280px;
	margin: 150px auto 0;
	padding: 0px 100px;
}


.sec15_01{
	margin-top:150px;
	display:flex;
	gap:100px;
	align-items: center;
}


.sec15_01 > div:first-child{
	width:55%;
}

.sec15_01 > div:last-child{
	width:40%;
}


#sec16{
	max-width: 1280px;
	margin: 150px auto 0;
	padding: 0px 200px;
}



#sec17{
	max-width: 1280px;
	margin: 150px auto 0;
	padding: 0px 120px;
}

.sec17_01{
padding-right:30%;
}


#sec18{
	max-width: 1280px;
	margin: 150px auto 0;
	padding: 0px 120px;
}


.sec18_01{
	padding-left:45%;
}

.sec18_copy {
    position: absolute;
    left: 2%;
    z-index: 99;
    top: 25%;
}


#sec19{
	max-width: 1280px;
	margin: 150px auto 0;
	padding: 0px 200px;
}


.sec19_01{
	padding-left:10%;
}


#sec20{
	max-width: 1280px;
	margin: 150px auto 0;
	padding: 0px 100px;
}


.sec20_01{
	margin-top:150px;
	display:flex;
	gap:100px;
	align-items: center;
}


.sec20_01 > div:first-child{
	width:55%;
}

.sec20_01 > div:last-child{
	width:40%;
}




#sec21{
	max-width: 1280px;
	margin: 150px auto 0;
	padding: 0px 100px;
}


.sec21_copy {
    position: absolute;
    right: 2%;
    z-index: 99;
    top: 25%;
}

.sec21_01{
	padding-right:35%;
}



#sec22{
	max-width: 1280px;
	margin: 150px auto 0;
	padding: 0px 200px;
}


#sec23{
	max-width: 1280px;
	margin: 150px auto 0;
	padding: 0px 120px;
	text-align: center;
}

.sec23_copy {
	display:inline-block;
	text-align:left;
}

.sec23_copy p {
	font-size: 8.2vw;
	letter-spacing: 3px;
}




#footer_lp{
	max-width: 1280px;
	margin: 100px auto 0;
	padding: 0px 120px;
	}


.f_item_list {
	text-align:center;
}

.f_item_list a{
	width:240px;
	display:inline-block;
}

.f_archive{
	text-align:center;
	margin-top:30px;
}

.f_archive div{
	cursor: pointer;
	width:240px;
	display: block;
	margin: 0 auto;
	}


.f_cresit{
	text-align:center;
	margin-top:100px;
}

.f_cresit p{
	font-size:16px;
	letter-spacing: 1px;
}

















.sp_img{
  display:none!important;
}







@media screen and (max-width: 768px) {
  
  
  
	img{
		width:100%;
		height:auto;
	}
	
	.sp_img{
		display:block!important;
	}
	
	.pc_img{
		display:none!important;
	}
	
	
	
	.nowrap{
		white-space: nowrap;
	}
	
	
	#bk01 {
		padding: 80px 0 80px;
	}
	
	.main_copy {
		margin-top: 20px;
		padding: 0 10px;
	}
	
	
	
	#main_img {
		padding: 0px 30px;
	}
	
	
	.main_img_p {
		padding: 0 0px;
	}
	
	
	
	
	
	.item_banner a {
		width: 60%;
		height: 50px;
	}
	
	.item_banner a span{
		font-size:22px;
	}
	
	
	
	.logo_house p {
		width: 40%;
	}
	
	
	
	.main_t {
		margin-top: -72px;
	}
	
	
	#sub_img {
		margin-top: 100px;
	}
	
	
	
	.season_collection p {
		font-size: 16px;
		letter-spacing:2px;
	}
	
	.open .season_collection{
	opacity:1;
	-webkit-transition: 1s cubic-bezier(0.78, .18, .34, .98) .3s;
	-moz-transition: 1s cubic-bezier(0.78, .18, .34, .98) .3s;
	-ms-transition: 1s cubic-bezier(0.78, .18, .34, .98) .3s;
	-o-transition: 1s cubic-bezier(0.78, .18, .34, .98) .3s;
	transition: 1s cubic-bezier(0.78, .18, .34, .98) .3s;
	}
	
	
	.logo_house {
		margin-top: 20px;
	}
	
	.open .logo_house p{
		opacity:1;
		-webkit-transition: .6s cubic-bezier(0.78, .18, .34, .98) 2.4s;
		-moz-transition: .6s cubic-bezier(0.78, .18, .34, .98) 2.4s;
		-ms-transition: .6s cubic-bezier(0.78, .18, .34, .98) 2.4s;
		-o-transition: .6s cubic-bezier(0.78, .18, .34, .98) 2.4s;
		transition: .6s cubic-bezier(0.78, .18, .34, .98) 2.4s;
	}
	
	
	
	.f_cresit {
		margin-top: 100px;
	}
	
	.f_cresit p {
		font-size: 11px;
		letter-spacing: 0;
	}
	
	.item_cresit > a {
		font-size: 13px;
		line-height: 200%;
		margin-bottom: 0;
	}
	
	.item_cresit {
		margin-top: 20px;
	}
	
	
	
	.main_copy h4 {
		font-size: 55px;
		letter-spacing: 3px;
		line-height: 100%;
	}
	
	
	
	.copy_en p {
		font-size: 42px;
		letter-spacing: 2px;
		line-height: 100%;
	}
	
	
	
	.open .main_copy .ani_text01 span {
		animation: fadeIn 0.6s forwards;
	}
	
	
	
	
	
	.num p {
		font-size: 118px;
	}
	
	
	
	.active .fade01{
	opacity: 1;
	-webkit-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) .6s;
	-moz-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) .6s;
	-ms-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) .6s;
	-o-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) .6s;
	transition: 1.5s cubic-bezier(0.78, .18, .34, .98) .6s;
	}
	
	.active .fade02{
	opacity: 1;
	-webkit-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.2s;
	-moz-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.2s;
	-ms-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.2s;
	-o-transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.2s;
	transition: 1.5s cubic-bezier(0.78, .18, .34, .98) 1.2s;
	}
	
	
	.scroll-infinity__list > li {
		width: calc(100vw / 3);
		padding: 0 10px;
	}
	
	
	
	
	
	
	.sub_title p {
		font-size: 6.8vw;
		line-height: 100%;
	}
	
	
	#sec01 {
		margin: 100px auto 0;
		padding: 0px 50px;
	}
	
	.sec01_copy {
		position: static;
		margin-top:40px;
	}
	
	
	
	
	
	#sec02 {
		margin: 100px auto 0;
		padding: 0px 35px;
	}
	
	
	#sec03 {
		margin: 100px auto 0;
		padding: 0px 30px;
	}
	
	.sec03_01 {
		padding-left: 0;
		width: 100%;
	}
	
	
	
	
	.sec03_02 {
		margin-top: 100px;
		display: block;
	}
	
	
	.sec03_02 > div {
		width: 70%;
	}
	
	
	.sec03_04{
		margin-top:50px;
		padding:0 0px;
	}
	
	
	#sec04 {
		padding: 0px 20px;
		margin: 100px auto 0;
	}
	
	
	
	.sec04_01_sp{
		padding:0 20px;
	}
	
	.sec04_01_cresit_sp{
		padding:0 20px;
	}
	
	
	.sec04_02 > div {
		width: 100%;
		padding-left:40%;
	}
	
	
	.sec04_02 {
		margin-top: 100px;
	}
	
	
		#sec05 {
		margin: 100px auto 0;
		padding: 0px 20px;
	}
	
	.sec05_01 .item_cresit{
		padding:0 20px;
	}
	
	
	
	
	#sec06 {
		margin: 100px auto 0;
	padding: 0px 35px;
	}
	
	
	
	
	#sec07 {
		margin: 100px auto 0;
		padding: 0px 35px;
	}
	
	
	.sec07_01 {
		margin-top: 0px;
		display: block;
	}
	
	
	
	.sec07_01 > div {
		width: 60%;
	}
	
	
	.sec07_01 > div:last-child {
		width: 100%;
		padding-left: 22%;
		margin-top:50px;
	}
	
	
	
	#sec08 {
		margin: 100px auto 0;
		padding: 0px 35px;
	}
	
	#sec09 {
		margin: 50px auto 0;
		padding: 0px 20px;
	}
	
	#sec09 .item_cresit{
		padding: 0px 15px;
	}
	
	
	#sec10 {
		margin: 100px auto 0;
		padding: 0px 35px;
	}
	
	
	
	.sec10_01 {
		padding-left: 30%;
	}
	
	
	
	
	
	
	#bk02 {
		padding: 80px 0 200px;
		
	}
	
	
	
	#sec11 {
		padding: 0px 35px;
		margin: 0px auto;
	}
	
	
	#sec12 {
		margin: 100px auto 0;
		padding: 0px 20px;
	}
	
	
	
	#sec13 {
		margin: 100px auto 0;
		padding: 0px 35px;
	}
	
	
	#sec15 {
		margin: 100px auto 0;
		padding: 0px 25% 0 35px;
	}
	
	
	#sec16 {
		margin: 100px auto 0;
		padding: 0px 35px;
	}
	
	
	#sec17 {
		margin: 100px auto 0;
		padding: 0px 35px;
	}
	
	#sec18 {
		margin: 100px auto 0;
		padding: 0px 35px;
	}
	
	
	
	.sec18_copy {
		position: static;
	}
	
	
	#sec19 {
    margin: 100px auto 0;
    padding: 0px 35px;
	}
	
	
	
	#sec20 {
		margin: 100px auto 0;
		padding: 0px 35px;
	}
	
	.sec20_01 {
		margin-top: 0px;
		display: block;
	}
	
	.sec20_01 > div:last-child {
		width: 100%;
		padding-left: 30%;
	}
	
	
	#sec21 {
		margin: 100px auto 0;
		padding: 0px 20px;
	}
	
	
	.sec21_copy {
		position: static;
	}
	
	.sec21_01 {
		padding-right: 0%;
		padding:0 15px;
		margin-top:80px;
	}
	
	#sec22 {
		margin: 100px auto 0;
		padding: 0px 35px;
	}
	
	
	#sec23 {
		margin: 100px auto 0;
		padding: 0px 20px;
	}
	
		.sec23_copy p {
		font-size: 9vw;
		letter-spacing: 3px;
	}
	
	
	#footer_lp {
		margin: 80px auto 0;
		padding: 0px 20px;
	}
	
	
	
	.f_item_list a{
	width:190px;
}

.f_archive div{
	width:190px;
	}
	
	
	
	
	
	
}




@media screen and (max-width: 320px) {
  
  
  
}












