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

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

@font-face {
font-family: "Bodoni-72";
src: url("Bodoni-72.woff") format('woff');
}

@font-face {
font-family: "Butler-Free-Rmn";
src: url("Butler-Free-Rmn.woff") format('woff');
}

@font-face {
font-family: "KozGoPr6N-Regular";
src: url("KozGoPr6N-Regular.woff") format('woff');
}

@font-face {
font-family: "SF-Pro-Display-Light";
src: url("SF-Pro-Display-Light.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;
}




body{
	color:#7d191e;
	background:#fff;
	font-family: "zen-kaku-gothic-new", sans-serif;
	}


ul, li{
	list-style:none;
}


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

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

a{
	color:#000000;
	text-decoration:none;
}


.text_right{
	text-align:right;
}



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


.loader
{
display: block!important;
  position: absolute;
  display: inline-block;
  top:50%;
  left:50%;
  margin-left:-17px;
  margin-top:-30px;
  width: 30px;
  height: 30px;
  border-radius: 30px;
  border: 0.5px solid #fff;
  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; }
}


#p_top{
	position:absolute;
	top:0;
}


.bg_img{
	position:fixed;
	width:100%;
	height:100%;
	background-size:cover;
	background-position:center center;
	opacity: 0;
	-webkit-transition: .4s cubic-bezier(0.78, .18, .34, .98);
  -moz-transition: .4s cubic-bezier(0.78, .18, .34, .98);
  -ms-transition: .4s cubic-bezier(0.78, .18, .34, .98);
  -o-transition: .4s cubic-bezier(0.78, .18, .34, .98);
  transition: .4s cubic-bezier(0.78, .18, .34, .98);
}



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









header{
	display:none;
	z-index:9998;
	position:fixed;
	width: 32.2314049587vw;
	max-width:500px;
	margin: 0 auto;
	left:50%;
	padding: 10px 20px;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}

			.header_wrap{
				display: flex;
				justify-content: space-between;
				align-items: center;
				flex-direction: row-reverse;
			}


#title_season{
	position:absolute;
	z-index:99;
	top:30px;
	left:50%;
	width:220px;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}




.sub_grand_menu{
	width:25px;
}

.sub_grand_menu{
	position:relative;
  z-index: 9999;
	width: 25px;
  -webkit-transition: 1s cubic-bezier(0.78, .18, .34, .98);
  -moz-transition: 1s cubic-bezier(0.78, .18, .34, .98);
  -ms-transition: 1s cubic-bezier(0.78, .18, .34, .98);
  -o-transition: 1s cubic-bezier(0.78, .18, .34, .98);
  transition: 1s cubic-bezier(0.78, .18, .34, .98);
}

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


.sub_grand_menu p{
  text-align:center;
  color:#fff;
}


.sub_grand_menu.sub_grand_menu_ani{
  position:fixed;
  top:0px;
  z-index: 9999;
  -webkit-transition: 1s cubic-bezier(0.78, .18, .34, .98);
  -moz-transition: 1s cubic-bezier(0.78, .18, .34, .98);
  -ms-transition: 1s cubic-bezier(0.78, .18, .34, .98);
  -o-transition: 1s cubic-bezier(0.78, .18, .34, .98);
  transition: 1s cubic-bezier(0.78, .18, .34, .98);
}


.sub_grand_menu .button-navi-icon {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 22px;
  height: 2px;
  margin: 0px 0 0 -11px;
  background: #7d191e;
  -webkit-transition: 0.2s ease-out;
  -moz-transition: 0.2s ease-out;
  -ms-transition: 0.2s ease-out;
  -o-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
}


.sub_grand_menu .button-navi-icon:after, .sub_grand_menu .button-navi-icon:before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 22px;
  height: 2px;
  background: #7d191e;
  -webkit-transition: 0.3s ease-out;
  -moz-transition: 0.3s ease-out;
  -ms-transition: 0.3s ease-out;
  -o-transition: 0.3s ease-out;
  transition: 0.3s ease-out;
}



body.active .sub_grand_menu .button-navi-icon {
  background: #eacfcb;
}


body.active .sub_grand_menu .button-navi-icon:after, body.active .sub_grand_menu .button-navi-icon:before {
  background: #eacfcb;
}




.sub_grand_menu .button-navi-icon:before {
  margin-top: -8px;
}

.sub_grand_menu .button-navi-icon:after {
  margin-top: 7px;
}

.sub_grand_menu_top{
  padding: 15px 0px;
  overflow:hidden;
}

.sub_grand_menu_top .sub_menu ul li{
  display: inline-block;
  padding:0 20px;
}


.sub_grand_menu .button-navi-icon.close:before, .sub_grand_menu .button-navi-icon.close:after {
	margin-top: 0;
	background: #fff;
}

.sub_grand_menu .button-navi-icon.close:after {
  
}

.button-navi-icon.close:after {
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.button-navi-icon.close:before {
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}


.button-navi-icon.close {
  background: transparent!important;
}

.scroll .button-navi-icon.close {
  background: transparent!important;
}

.button-close{
	position:absolute;
	padding: 25px 0px 6px;
	width: 25px;
	top: 0;
	z-index:-9999;
	}


#menu_index{
	position: fixed;
	z-index:9997;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	width: 32.2314049587vw;
	max-width:500px;
	height: 100%;
	background-image: url(../img/menu_bk.webp);
	background-size: cover;
}

.menu_index_inner{
	width: auto;
	height: 100%;
	overflow: scroll;
	margin: 0 auto;
	position: relative;
	padding: 0 55px;
	overflow: scroll;
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.menu_index_inner::-webkit-scrollbar{
  display: none;
}



.menus{
	padding-top:120px;
}


.menus ul li{
	margin-bottom:10px;
}

			.menus ul li a{
				font-size:16px;
				color: #8bbad8;
				font-family: "Lexend", sans-serif;
			}
			
			
			.footer_sns_btn{
				display:flex;
				justify-content: center;
				gap:40px;
				margin-top: 60px;
			}
			
			.footer_sns_btn > a{
				height: 30px;
				fill: #7d191e;
			}
			
			.footer_sns_btn > a svg {
				width: auto;
				height: 100%;
			}
			
			
			.footer_btn{
				display:flex;
				justify-content: center;
				gap:15px;
				margin-top: 60px;
			}
			
			.footer_btn a{
				opacity:1;
				-webkit-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				-moz-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				-ms-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				-o-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				transition: .6s cubic-bezier(0.78, .18, .34, .98);
			}
			
			
			.footer_btn a:hover{
				opacity:.6;
				-webkit-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				-moz-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				-ms-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				-o-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				transition: .6s cubic-bezier(0.78, .18, .34, .98);
			}


#pc_content{
	position:fixed;
	left: 0;
	right: 0;
	height:100%;
	background-image:url(../img/pc_bk.webp);
	background-size: cover;
	background-position: center center;
	}
			
.pc_content_wrap{
	position: relative;
	max-width: 100%;
	padding: 0 0px;
	height: 100%;
	margin:0 auto;
}

.pc_left{
	width: 33.3333333%;
    height: 100%;
    position: absolute;
    left: 0;
}

			.left_img{
				position: absolute;
				background-size: cover;
				background-position: center center;
				width: 100%;
				height: 100%;
			}
			
			
			.left_img {
  opacity: 0;
  transition: opacity 0.6s ease;
}

.left_img.active {
  opacity: 1;
}



.top_sec02 .pc_left_view p, .top_sec02 .pc_left_view a{
	color:#fff;
	/*text-shadow: #000 1px 0 10px;*/
}

.pc_left_view_circle{
	margin-top:30px;
	width: 55%;
	max-width:300px;
	display:inline-block;
	position:relative;
}

.pc_left_view_circle02{
	position:absolute;
	top:0;
	left:0;
	opacity:0;
		-webkit-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-moz-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-ms-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-o-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	transition: .6s cubic-bezier(0.78, .18, .34, .98);
}

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


.top_sec02 .pc_left_view_circle01{
	opacity:0;
	-webkit-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-moz-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-ms-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-o-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	transition: .6s cubic-bezier(0.78, .18, .34, .98);
}

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


.logo_maison{
	position:absolute;
	width: 100%;
	bottom:80px;
	text-align:center;
}

.logo_maison p{
	display:inline-block;
	width: 45%;
	max-width:230px;
}
	
			
			
			
			.pc_right{
				width: 33.3333333%;
				height: 100%;
				position:absolute;
				right:0;
			}
			
			
.menu_wrap{
	display: flex;
	flex-direction: column;
	height: 100%;
	justify-content: space-between;
}

			.menu_box{
				margin: 50px 50px 0;
				padding: 40px 50px;
				text-align: center;
				background-image:url(../img/menu_m_bk.webp);
				background-size: contain;
				box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
			}
			
			
			
			.menu_list{
				display:inline-block;
				margin-top:40px;
			}
			
			.menu_list > a {
				font-family: "AppleGaramond";
				font-size:16px;
				position:relative;
				display:block;
				color:#7d191e;
				font-weight:400;
				margin-bottom: 15px;
			}
			
			
			.menu_list > a span{
				position:relative;
				-webkit-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				-moz-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				-ms-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				-o-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				transition: .6s cubic-bezier(0.78, .18, .34, .98);
			}
			
			.menu_list_title{
				border-bottom:1px solid #7d191e;
				padding-bottom:10px;
			}
			
			.menu_list_title p{
				font-family: "classic-script-mn", sans-serif;
				font-size:60px;
				color:#7d191e;
			}
				
			
			.menu_list .menu_mark{
				display:inline-block;
				margin-top: 50px;
				width: 40px;
			}
			
			
			.pc_right_sns{
				display:flex;
				gap: 30px;
				justify-content: center;
				align-items: center;
				margin-bottom: 40px;
				margin-bottom: 40px;
			}
			
			.pc_right_sns > a.icon{
				height:30px;
				fill: #fff;
			}
			
			.pc_right_sns > a svg{
				width:auto;
				height:100%;
			}
			
			.pc_right_sns > a{
				font-family: "AppleGaramond";
				font-size:28px;
				color:#fff;
			}
			
			
			.page_top{
				text-align: center;
			}
			
			.page_top a{
				position: relative;
				font-size: 28px;
				color: #fff;
				-webkit-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				-moz-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				-ms-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				-o-transition: .6s cubic-bezier(0.78, .18, .34, .98);
				transition: .6s cubic-bezier(0.78, .18, .34, .98);
			}

.page_top a:hover{
	background:#7dce85;
	color:#fff;
	-webkit-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-moz-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-ms-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-o-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	transition: .6s cubic-bezier(0.78, .18, .34, .98);
}

			
			
			
			
	.page_top .cls-1 {
	fill: #8bbad8;
		}
	
	.page_top .cls-2 {
	fill: none;
	stroke: #8bbad8;
	stroke-miterlimit: 10;
			}
			
			
			
			
			
			
			
			.menu_index_bottom{
				display:flex;
				margin-top: 40px;
			}
	
	
	#menu_index .icon_insta{
	left:30px;
}

	
#menu_index .menu_list > a.active span:after{
	display:none;
}











.top_sec02 .menu_list > a.active:after {
	border-bottom: 8px solid #fff;
}




.s_note {
	
}

.s_note p{
	font-family: "zen-kaku-gothic-new", sans-serif;
	font-size:14px;
	line-height:180%;
	text-align: center;
	color:#7d191e;
}



#top_movie video{
	width:100%;
}



/*
#top_movie video{
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
*/

.main_img{
	position:relative;
}


.first_view_maison{
	position:absolute;
	width: 100%;
	z-index:99;
	top:30px;
	text-align:center;
}


.first_view_maison p{
	width:140px;
	display: inline-block;
}


.first_view_season_logo{
	position:absolute;
	width: 100%;
	z-index:99;
	bottom:40px;
	text-align:center;
}


.first_view_season_logo p{
	width: 226px;
	display: inline-block;
}






	.banner_all{
	padding:0 20px;
	text-align: center;
	}
	
	.banner_all a{
	overflow: hidden;
	position: relative;
	font-family: "AeroliteCPtwo";
	font-size: 35px;
	padding: 12px 20px;
	text-align: center;
	color: #fff;
	background: #7d191e;
	transition: 0.3s;
	box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.5);
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	-moz-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	-ms-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	-o-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	transition: .4s cubic-bezier(0.78, .18, .34, .98);
	}
	
	.banner_all a:hover{
	
	transform: translateY(2px);
	box-shadow: 0 0 rgba(0, 0, 0, 0);
	-webkit-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	-moz-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	-ms-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	-o-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	transition: .4s cubic-bezier(0.78, .18, .34, .98);
}


	


.caption{
	margin-top:10px;
}

	.caption a{
	font-family: "zen-kaku-gothic-new", sans-serif;
	font-size:12px;
	line-height:140%;
	color:#7d191e;
	text-align: right;
	display: block;
	margin-bottom: 5px;
	position: relative;
	}
	
			.caption a:last-child{
				margin-bottom: 0px;
			}
			
			.caption span{
				margin-top:5px;
				font-size:26px;
				line-height:100%;
				font-family: "classic-script-mn", sans-serif;
				position: relative;
				display:block;
				transition: 0.5s;
			}
			
			
			
			
			.mute{
				position:absolute;
				z-index: 9;
				right:30px;
				bottom:30px;
				width:80px;
			}
			
			.mute span{
				position: absolute;
				z-index: -99;
				top: 10px;
				left: 10px;
				width: 18px;
				height: 1.5px;
				background: #7d191e;
				transform: translate(-50%, -50%) rotate(45deg);
				-webkit-transform: translate(-50%, -50%) rotate(45deg);
			}
			
			
			.mute .cls-1 {
				fill: #7d191e;
			}
			
			.mute .cls-2 {
				fill: none;
				stroke: #7d191e;
				stroke-miterlimit: 10;
				stroke-width: 2px;
			}
			
			
			
			
			
			.first_blank{
				height:150vh;
			}
			
			
			
#top_movie{
	z-index: 999;
	min-width:300px;
	max-width:500px;
	width: 33.33333333333%;
	height: 100%;
	position:fixed;
	top:0;
	left:50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-webkit-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-moz-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-ms-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	-o-transition: .6s cubic-bezier(0.78, .18, .34, .98);
	transition: .6s cubic-bezier(0.78, .18, .34, .98);
}




body.active #top_movie{
	left:0%;
	transform: translateX(0%);
	-webkit-transform: translateX(0%);
	-moz-transform: translateX(0%);
	-o-transform: translateX(0%);
	-ms-transform: translateX(0%);
	-webkit-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	-moz-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	-ms-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	-o-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	transition: .4s cubic-bezier(0.78, .18, .34, .98);
}


			
			
			
			.main_img01 {
				position: relative;
				z-index: 99;
				pointer-events: none;
			}
			
			
			
			#top_movie .top_movie_wrap video{
				position: absolute;
				top: 50%;
				left: 50%;
				width: 100%;
				height: 100%;
				object-fit: cover;
				object-position: center;
				transform: translate(-50%, -50%);
				-webkit-transform: translate(-50%, -50%);
				-moz-transform: translate(-50%, -50%);
				-o-transform: translate(-50%, -50%);
				-ms-transform: translate(-50%, -50%);
			}
			
			
			
	
			
			
			#bgc{
				content:"";
				position:fixed;
				top:0;
				left:50%;
				transform: translateX(-50%);
				-webkit-transform: translateX(-50%);
				-moz-transform: translateX(-50%);
				-o-transform: translateX(-50%);
				-ms-transform: translateX(-50%);
				width: 33.33333333333%;
				min-width:300px;
				max-width:500px;
				margin: 0 auto;
				height:100%;
				background: transparent;
			}





#content{
	width: 33.33333333333%;
	min-width:300px;
	max-width:500px;
	margin: 0 auto;
	height:100%;
	left:0;
	right:0;
	top: 0px;
	position:absolute;
}


	
	.wrap{
	background: #fff;
	}



	.wrap::-webkit-scrollbar{
	display: none;
	}


	.st_sec{
		position: relative;
	}

.view a{
	font-family: "arno-pro", serif;
	font-weight:400;
	border-bottom:1px solid #bbb;
	letter-spacing: 0.3px;
	font-size: 15px;
}







#top_sec01{
	background:#7d191e;
}

.top_sec01_wrap{
	margin: 0 20px;
	padding: 60px 0px;
	background: #fff;
}


#top_sec01 .banner_all{
	margin-top:40px;
	text-align: center;
}


.sec01_01{
	margin-top:100px;
	padding:0 40px;
}


.sec01_02{
	margin-top:80px;
	padding:0 40px;
}

	.sec01_02_img{
	position: relative;
	margin: 0 70px;
	}

	.sec01_02_img img{
		width: 100%;
		display: block;
	}

	.sec01_02_title{
		position: absolute;
		z-index: 2;
	top: -10px;
	left: -62px;
		line-height: 0.85;
		font-family: "classic-script-mn", sans-serif;
		font-size: 50px;
		color: #7d191e;
		text-align: left;
		transform: rotate(-20deg);
		-webkit-transform: rotate(-20deg);
	}

	.sec01_02_title span{
		display: block;
		margin-top: 6px;
		margin-left: 26px;
		font-size: 50px;
	}

	.sec01_02_title_mask{
		position: absolute;
		z-index: 3;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		overflow: hidden;
		pointer-events: none;
	}

	.sec01_02_title_mask .sec01_02_title{
		color: #fff;
	}

	.sec01_02_txt{
		margin-top: 25px;
	}

	.sec01_02_txt p{
	font-family: "zen-kaku-gothic-new", sans-serif;
		font-size: 14px;
		line-height: 180%;
		text-align: center;
		color: #7d191e;
	}


	.sec01_03{
	margin-top:60px;
	padding:0 60px;
}

	.sec01_03 .fade_img_frame,
	.sec01_05 .fade_img_frame{
	position: relative;
	line-height: 0;
	display: block;
}

.sec01_03 .slick-slide a, .sec01_03 .slick-slide img {
	line-height: 0;
	display: block;
}

	.sec01_03 .fade_img_frame::before,
	.sec01_05 .fade_img_frame::before{
		content: '';
		position: absolute;
		inset: 0;
		z-index: 2;
		pointer-events: none;
		background-repeat: no-repeat;
		background-image:
			linear-gradient(#7d191e, #7d191e),
			linear-gradient(#7d191e, #7d191e),
			linear-gradient(#7d191e, #7d191e),
			linear-gradient(#7d191e, #7d191e);
		background-position: top left, top right, bottom right, bottom left;
		background-size: 0% 3px, 3px 0%, 0% 3px, 3px 0%;
	}

	.sec01_03 .fade_img_frame.is-inview::before,
	.sec01_05 .fade_img_frame.is-inview::before{
		animation: sec01_03BorderDraw 1.6s linear forwards;
	}

	@keyframes sec01_03BorderDraw{
		0%{
			background-size: 0% 3px, 3px 0%, 0% 3px, 3px 0%;
		}
		25%{
			background-size: 100% 3px, 3px 0%, 0% 3px, 3px 0%;
		}
		50%{
			background-size: 100% 3px, 3px 100%, 0% 3px, 3px 0%;
		}
		75%{
			background-size: 100% 3px, 3px 100%, 100% 3px, 3px 0%;
		}
		100%{
			background-size: 100% 3px, 3px 100%, 100% 3px, 3px 100%;
		}
	}
	
	.sec01_04{
	position:relative;
	width:84%;
	margin-top:40px;
	}
	
	.sec01_illust01{
	position:absolute;
	right: -34px;
	top: -32px;
	width: 70px;
	}
	
	.sec01_05{
	margin-top:60px;
	padding:0 60px;
}




	

	.sec01_06{
	position:relative;
	margin-top:40px;
	margin-left:24%;
	}

	.sec01_illust02{
	position:absolute;
	left: -34px;
	bottom: 25px;
	width: 70px;
}

.sec01_06 .caption{
	margin-right:30px;
}


.sec01_07{
margin-top:60px;
}

.sec01_07_img{
	position: relative;
}

	.sec01_07_img::before,
	.sec01_07_img::after{
		content: '';
		position: absolute;
		left: 0;
		width: 0%;
		height: 3px;
		background: #7d191e;
		z-index: 2;
		pointer-events: none;
	}

	.sec01_07_img::before{
		top: 0;
	}

	.sec01_07_img::after{
		bottom: 0;
	}

	.sec01_07_img.is-inview::before,
	.sec01_07_img.is-inview::after{
		animation: sec01_07LineDraw 0.8s linear forwards;
	}

	.sec01_07_img.is-inview::after{
		animation-delay: 0.4s;
	}



.sec01_07_img_2c{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

.sec01_07_img_1c{
	
}


	@keyframes sec01_07LineDraw{
		from{
			width: 0%;
		}
		to{
			width: 100%;
		}
	}

.sec01_07 .caption{
	margin: 20px 12px 0 10px;
}

.sec01_07 .caption span{
	display:inline-block;
}


.sec01_08{
	margin-top:60px;
}

.sec01_08_01_img{
	position: relative;
    margin-left: 32%;
    margin-right: 7%;
}

.sec01_08_03_img{
	margin-left: 10%;
	width: 65%;
	margin-top:-30px;
}

.sec01_08_02_img{
	margin-left: 35%;
	margin-top:-30px;
}

.sec01_08 .caption {
	margin-top: 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.sec01_09{
	margin-top:50px;
}

.sec01_09 .caption {
	display: flex;
	justify-content: center;
}

.sec01_10{
	position:relative;
	margin:60px 80px 0;
}


	.sec01_illust03{
	position:absolute;
	right: -34px;
	bottom: -20px;
	width: 70px;
	}





#top_sec02{
	background:#fff;
}

.top_sec02_wrap{
	margin:20px 20px;
	padding: 60px 40px;
	background: #7d191e;
}

#top_sec02 .caption a{
	color:#fff;
}

.sec02_01{
	margin-top:40px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	position: relative;
}

.sec02_text{
	margin-top:20px;
}

.sec02_text p{
	color:#fff;
	font-size:12px;
	line-height:220%;
	text-align:center;
}


.sec02_02{
	margin:40px 30px;
}

.sec02_03{
	position:relative;
	margin:40px 30px 0;
}


.sec02_illust01{
    position: absolute;
    z-index: 99;
    left: 10px;
    top: 5px;
	width: 88px;
	animation: kurukuru 8s linear infinite;
}

.sec02_03_title{
	position:absolute;
	z-index:999;
	left: 0px;
	top: 20px;
}

.sec02_03_title p{
	font-family: "AppleGaramond";
	color:#7d191e;
	font-size:23px;
	line-height: 100%;
	text-align:center;
	transform: rotate(-20deg);
	-webkit-transform: rotate(-20deg);
}


.sec02_04{
	margin-top:60px;
	padding: 0 30px;
}

.sec02_04 .fade_img02{
	border:1px solid #fff;
	padding:10px;
}


.sec02_04 .fade_img02 p{
	position:absolute;
	z-index:99;
	width:100%;
	top:30px;
	color:#7d191e;
	text-align:center;
	font-size:17px;
	line-height: 100%;
	font-weight:bold;
}

.sec02_04 .fade_img02 p small{
	display:block;
	margin-top:5px;
	font-size:10px;
}

#top_sec02 .banner_all{
	margin-top:40px;
	padding:0 20px;
	text-align: center;
	}
	
	#top_sec02 .banner_all a{
	overflow: hidden;
	position: relative;
	font-family: "AeroliteCPtwo";
	font-size: 35px;
	padding: 12px 20px;
	text-align: center;
	color: #7d191e;
	background: #fff;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	-moz-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	-ms-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	-o-transition: .4s cubic-bezier(0.78, .18, .34, .98);
	transition: .4s cubic-bezier(0.78, .18, .34, .98);
	}









#top_sec03{
	background:#fff;
}

.top_sec03_wrap{
	
}

	.sec03_frame{
		position: relative;
		overflow: hidden;
		padding: 74px 34px 90px;
	}

	.sec03_frame::before{
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		left: 50%;
		width: 150%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		z-index: 3;
		pointer-events: none;
		border: 2px solid #7d191e;
		border-radius: 50%;
	}

	.sec03_title{
	position: absolute;
	left: 0;
	z-index: 99;
	text-align: center;
	width: 100%;
	}

	.sec03_title p{
		font-family: "classic-script-mn", sans-serif;
		font-size: 70px;
		line-height: 1;
		color: #7d191e;
	}

	.sec03_img{
		position: relative;
	margin: 26px 40px 0;
	}

	.sec03_img img{
		width: 100%;
		display: block;
	}

	.sec03_with{
		position: absolute;
		left: 50%;
		bottom: 64px;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		font-family: "AppleGaramond", serif;
		font-style: italic;
		font-size: 42px;
		letter-spacing: 2px;
		color: #fff;
	}

	.sec03_limited{
		position: relative;
		z-index: 2;
    margin-top: -80px;
	display: flex;
	justify-content: center;
	}

	.sec03_limited p{
	font-family: "classic-script-mn", sans-serif;
	font-size: 70px;
	line-height: 0.8;
		color: #7d191e;
	}

.sec03_limited p span{
	font-family: "AppleGaramond";
	font-style: normal;
	    font-size: 45px;
    line-height: 1;
	color: transparent;
	-webkit-text-stroke-width: 1px;
	-webkit-text-stroke-color: #fff;
	}

	.sec03_text{
		margin-top: 16px;
	}

	.sec03_text p{
	font-family: "zen-kaku-gothic-new", sans-serif;
		font-size: 14px;
		line-height: 200%;
		text-align: center;
		color: #7d191e;
	}
	
	#top_sec03 .banner_all{
		margin-top: 30px;
	}
	
	
	.sec03_annotation{
	margin-top: 30px;
	text-align: center;
	}
	
	.sec03_annotation p{
	font-family: "zen-kaku-gothic-new", sans-serif;
		font-size: 11px;
		color: #7d191e;
	}





#top_sec04 {
	
}

.top_sec04_wrap {
	position:relative;
	margin: 20px 30px;
	background-image: url(../img/menu_m_bk.webp);
	background-size: contain;
}

.top_sec04_top{
	padding: 60px 40px 0;
}

.top_sec04_maintitle {
	padding-bottom:20px;
	margin-bottom:20px;
	border-bottom:4px solid #7d191e;
	
}

.top_sec04_maintitle p{
	font-family: "classic-script-mn", sans-serif;
	font-size: 80px;
	line-height: 1;
}


.top_sec04_note p{
	font-size:13px;
}

.top_sec04_note p span{
	font-size:15px;
}


.top_sec04_warning{
	position:absolute;
	right:20px;
	bottom:20px;
}

.top_sec04_warning p{
	color:#7d191e;
	font-size:10px;
}



#top_sec04 .banner_all{
	margin-top:40px;
}



#top_sec05{
	position: relative;
	margin-top:80px;
	padding-bottom: 50px;
}


#top_sec05:before{
	content:"";
	position:sticky;
	z-index: -1;
	display: block;
	width: 100%;
	height: 100vh;
	top:0;
	margin-bottom: -100vh;
	background-image: url(../img/sec05_bk.webp);
	background-size: cover;
}




.top_sec05_wrap{
	padding: 0 50px;
}


.sec05_maintitle{
	padding: 0 20px;
}


.sec05_img{
	margin-top:40px;
	padding: 0 20px;
}


.sec05_date{
	margin-top:40px;
	text-align:center;
}


.sec05_date p{
	font-size:42px;
	font-family: "AppleGaramond";
	color:#7d191e;
}


.sec05_date p small{
	font-size:30px;
}

.sec05_date span{
	width:2px;
	height:25px;
	margin:5px 0; 
	display:inline-block;
	background:#7d191e;
}


.sec05_list{
	margin-top:60px;
}

.sec05_box{
	margin-bottom:20px;
}


.sec05_box .m_title{
	border-bottom:3px solid #7d191e;
	padding-bottom:10px;
	margin-bottom:10px;
}

.sec05_box .m_title p{
	font-size:18px;
	font-weight:bold;
}


.sec05_box .m_note p{
	font-size:13px;
	line-height:170%;
}


.sec05_insta{
	margin-top:40px;
	text-align:center;
}

.sec05_insta a{
	width:120px;
	display:inline-block;
}





#top_sec06 p{
	color:#fff;
}

.top_sec06_wrap {
    margin: 20px 20px;
    padding: 60px 40px;
	background: #7d191e;
	border-radius: 50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
}


.sec06_maintitle p{
	font-size:20px;
	font-weight:bold;
	text-align:center;
}

.sec06_note{
	margin-top:10px;
	text-align:center;
}

.sec06_note p{
	font-size:12px;
}

.sec06_line{
	margin-top:40px;
	text-align:center;
}

.sec06_line a{
	width:120px;
	display:inline-block;
}


.sec06_img{
	margin-top:40px;
	padding:0 50px;
}


.sec06_list{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 30px;
	margin-top: 40px;
}

	.sec06_box{
		width: 100%;
	}

	.sec06_box .m_title{
		display: flex;
		align-items: center;
				justify-content: space-around;
		gap: 16px;
	}

	.sec06_box .m_title::before,
	.sec06_box .m_title::after{
		content: '';
		width: 80px;
		height: 1px;
		background: #fff;
	}

	.sec06_box .m_title p{
		font-size: 16px;
		font-weight: bold;
		color: #fff;
		white-space: nowrap;
	}

	.sec06_box .m_note{
	margin-top: 22px;
	display: flex;
	flex-direction: column;
	align-items: center;
	}

	.sec06_box:first-child .m_note{
		text-align: center;
	}

	.sec06_box:first-child .m_note p{
		font-size: 13px;
		color: #fff;
	}

	.sec06_box .m_note > div{
	    width: 80%;
		display: flex;
		align-items: center;
		gap: 14px;
	}
	
	.sec06_box .m_note > div + div{
		margin-top: 26px;
}




	
	.num{
		position: relative;
		width: 48px;
		height: 48px;
	}
	
.num:after{
	content:"";
	width: 48px;
	height: 48px;
	position: absolute;
	top:0;
	left:0;
	background: url(../img/sec06_illust01.webp) center / contain no-repeat;
	flex-shrink: 0;
	animation: kurukuru 8s linear infinite;
	}

	#top_sec06 .num p{
	position: absolute;
	z-index: 9;
		inset: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 20px;
		font-weight: bold;
		color: #7d191e;
	}

	#top_sec06 .note p{
		font-size: 13px;
		line-height: 160%;
		text-align: left;
		color: #fff;
	}



#top_sec07{
	padding-top: 60px;
	padding-bottom: 100px;
	background-image: url(../img/sec07_bk.webp);
    background-size: cover;
}


.top_sec07_wrap{
	padding: 0 50px;
}


.sec07_maintitle p{
	font-family: "classic-script-mn", sans-serif;
	font-size: 70px;
	color:#7d191e;
	line-height:100%;
	min-height: 2em;
}

.sec07_maintitle p.is-typing::after,
.footer_img02_text p.is-typing::after{
	content: '|';
	display: inline-block;
	width: 0;
	overflow: visible;
	white-space: nowrap;
	animation: sec07TypeCaret .8s steps(1) infinite;
}

@keyframes sec07TypeCaret{
	50%{
		opacity: 0;
	}
}


.sec07_note {
	margin-top:30px;
}

.sec07_note p{
	color:#fff;
	font-size:12px;
	line-height:180%;
}






@keyframes kurukuru {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}








	
			.sec_about{
				padding: 60px 10px;
			}
			
			
			
			
			.look_btn a{
				overflow:hidden;
				position:relative;
				font-family: "ZTBros-Regular", sans-serif;
				font-size:28px;
					padding:5px 20px;
				text-align:center;
				color:#64caff;
				background:transparent;
				border: 1px solid #64caff;
				border-radius: 50%;
				padding: 10px 50px;
				-webkit-transition: .4s cubic-bezier(0.78, .18, .34, .98);
				-moz-transition: .4s cubic-bezier(0.78, .18, .34, .98);
				-ms-transition: .4s cubic-bezier(0.78, .18, .34, .98);
				-o-transition: .4s cubic-bezier(0.78, .18, .34, .98);
				transition: .4s cubic-bezier(0.78, .18, .34, .98);
			}
			
			.look_btn a:hover{
				color:#fff;
				background:#64caff;
				-webkit-transition: .4s cubic-bezier(0.78, .18, .34, .98);
				-moz-transition: .4s cubic-bezier(0.78, .18, .34, .98);
				-ms-transition: .4s cubic-bezier(0.78, .18, .34, .98);
				-o-transition: .4s cubic-bezier(0.78, .18, .34, .98);
				transition: .4s cubic-bezier(0.78, .18, .34, .98);
			}
			
			
			
			
			
			
			.main_img_img{
				position: relative;
				overflow: hidden;
				height: 100%;
			}
			
			.main_img01_video{
				position: absolute;
				top: 0;
				width: 100%;
				height: 100%;
			}
			
			.main_img01_video video{
			    position: absolute;
				top: 50%;
				left: 50%;
				width: 100%;
				height: 100%;
				object-fit: cover;
				object-position: center;
				transform: translate(-50%, -50%);
				-webkit-transform: translate(-50%, -50%);
				-moz-transform: translate(-50%, -50%);
				-o-transform: translate(-50%, -50%);
				-ms-transform: translate(-50%, -50%);
			}
			
			
			
			
			
			
			
			
			
			
			
	footer{
	padding: 20px 0;
	background:#eacfcb;
	}
			
			
			.footer_wrap{
				margin:0 20px;
				padding:60px 40px;
				background:#fff;
			}
			
			
			.footer_text{
				margin-top:50px;
			}
						
			.footer_text p{
				font-size:13px;
				text-align:center;
}


			
	.footer_img02{
	margin-top:50px;
	position:relative;
	}
	
	.footer_img02_text{
	position:absolute;
	width: 100%;
	top:20px;
	text-align:center;
}

	.footer_img02_text p{
	font-size:38px;
	font-family: "AeroliteCPtwo";
	min-height: 2.3em;
	}



			
			
			
			
			
			.onlyPc {
				display: block;
			}
			
			.onlySp {
				display: none;
			}
			
			
			
			
			
			
			
			
			@media screen and (max-width: 570px) {
				
				
				.onlyPc {
					display: none;
				}
				
				
				.onlySp {
					display: block;
				}
				
				#pc_content{
					display:none;
				}
				
				
				header {
					width:100%;
					display:block;
				}
				
				#menu_index {
					width:100%;
				}
				
				
				#content {
					width:100%;
				}
				
				#bgc{
					width:100%;
				}
				
				.menu_index_inner {
					padding: 0 40px;
				}
				
				.menu_box{
				margin: 50px 0px 0;
				padding: 20px 30px ;
				}
				
				.menu_list {
					margin-top: 20px;
				}
				
				.menu_list > a {
					margin-bottom: 8px;
				}
				
				
				.menu_list .menu_mark {
					margin-top: 20px;
				}
				
				.first_view_maison {
					top: 18px;
				}
				
				
				.caption a {
							font-size: 12px;
	}
	
	
	
		
				.mute {
					right: 20px;
					bottom: 20px;
					width: 70px;
				}
	
	
	
	
	.s_note p {
    font-size: 13px;
	}
	
	
	
	.sec01_02_img {
    margin: 0 40px;
}

.top_sec02_wrap {
    padding: 60px 20px;
	}
	
	.top_sec06_wrap {
    padding: 60px 20px;
	}
	
	.sec06_box .m_note > div {
		width: 100%;
	}
	
	.footer_wrap {
		padding: 60px 30px;
	}
				
				
			}
			
			
			@media screen and (max-width:400px) {
	
	
	.caption a {
		font-size: 11px;
	}
	
	.caption span {
		font-size: 20px;
	}
	
	
	
	
	

			}
















