@charset "utf-8";
/* CSS Document */

/* base
-----------------------------------------------*/
/* ========== base style ========== */

/* common parts
-----------------------------------------------*/
/* ========== text ========== */
/* ========== border ========== */
/* ========== float ========== */
/* ========== display ========== */
/* ========== position ========== */
/* ========== overflow ========== */
/* ========== width ========== */
/* ========== margin ========== */
/* ========== background ========== */
/* ========== device displaying ========== */
/* ========== animation for ScrollTrigger.min.js  ========== */

/* other style
-----------------------------------------------*/



/* base
-----------------------------------------------*/
picture {
display: block;
}

/* ========== base style ========== */
.allwrapper,
.modal {
width: 100%;
min-height: 100vh;
color: #000;
font-family: the-seasons, sans-serif;
font-style: normal;
font-weight: 700;
font-size: 3.33333333vw;
line-height: 100%;
font-feature-settings: "palt";
letter-spacing: 0.02em;
background: #fff;
animation-delay: 0.75s;
}
.modal {
min-height: auto;
}
.allwrapper *,
.modal * {
box-sizing: border-box;
}
.allwrapper a:link,
.allwrapper a:visited,
.allwrapper .acordion_btn {
color: #000;
text-decoration: none;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}
.allwrapper a:hover,
.allwrapper a:hover img,
.allwrapper button:hover img {
opacity: 0.80;
filter: alpha(opacity=80);
}
.allwrapper ol,
.allwrapper ul {
list-style:none;
}
.allwrapper img, 
.allwrapper video,
.allwrapper button {
width: 100%;
height: auto;
display: block;
margin-left: auto;
margin-right: auto;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}
@media (min-width:768px){
	.allwrapper {
	width: 100vw;
	}
	.allwrapper,
	.modal {
	font-size: 17.5px;
	}
}

/* common parts
-----------------------------------------------*/
/* ========== text ========== */
/* align */
.al_left { text-align: left; }
.al_center { text-align: center; }
.al_right { text-align: right; }

/* size */
.fs8 { font-size: 2.133333vw; }
.fs9 { font-size: 2.4vw; }
.fs10 { font-size: 2.666666vw; }
.fs11 { font-size: 2.933333vw; }
.fs11_5 { font-size: 3.066666vw; }
.fs12 { font-size: 3.2vw; }
.fs12_5 { font-size: 3.33333333vw; }
.fs13 { font-size: 3.466666vw; }
.fs13_5 { font-size: 3.6vw; }
.fs14 { font-size: 3.733333vw; }
.fs15 { font-size: 4vw; }
.fs16 { font-size: 4.266666vw; }
.fs17 { font-size: 4.533333vw; }
.fs18 { font-size: 4.8vw; }
.fs19 { font-size: 5.066666vw; }
.fs20 { font-size: 5.333333vw; }
@media (min-width:768px){
	.fs11 { font-size: 11px; }
	.fs14 { font-size: 14px; }
}

/* weight */
.fw200 { font-weight: 200 !important; }
.fw300 { font-weight: 300 !important; }
.fw400 { font-weight: 400 !important; }
.fw500 { font-weight: 500 !important; }
.fw600 { font-weight: 600 !important; }
.fw700 { font-weight: 700 !important; }

/* line height */
.lh100 { line-height: 100%; }
.lh110 { line-height: 110%; }
.lh120 { line-height: 120%; }
.lh130 { line-height: 130%; }
.lh140 { line-height: 140%; }
.lh150 { line-height: 150%; }
.lh160 { line-height: 160%; }
.lh170 { line-height: 170%; }
.lh180 { line-height: 180%; }
.lh190 { line-height: 190%; }
.lh200 { line-height: 200%; }
.lh210 { line-height: 210%; }

/* letter space */
.ltrspace0 { letter-spacing: 0; }
.ltrspace0025 { letter-spacing: 0.025em; }
.ltrspace005 { letter-spacing: 0.05em; }
.ltrspace0075 { letter-spacing: 0.075em; }
.ltrspace01 { letter-spacing: 0.1em; }
.ltrspace0125 { letter-spacing: 0.125em; }
.ltrspace015 { letter-spacing: 0.15em; }


/* ========== float ========== */
/* clearfix */
.clearfix:before,
.clearfix:after {
display: table;
content: " ";
}
.clearfix:after { clear: both; }

/* float */
.float_left { float: left; }
.float_right { float: right; }


/* ========== display ========== */
.disp_block { display: block !important; }
.disp_iblock { display: inline-block !important; }
.disp_inline { display: inline !important; }
.disp_none { display: none; }
.disp_flex { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }


/* ========== position ========== */
.posi_relative { position: relative !important; }
.posi_absolute { position: absolute !important; }
.posi_fixed { position: fixed !important; }


/* ========== overflow ========== */
.overflow_hidden { overflow: hidden !important; }


/* ========== margin ========== */
/* margin-auto */
.mx_auto { margin-left: auto; margin-right: auto; }


/* ========== device displaying ========== */
.sp_none{ display: none; }
img.sp_none{ display: none; }
.sp_only{ display: block; }
img.sp_only{ display: block; }
@media (min-width:768px){
	.sp_none{display: block;}
	img.sp_none{display: block;}
	.tab_none { display: none; }
	img.tab_none { display: none; }
	.sp_only{display: none;}
	img.sp_only{display: none;}
	.sp_only{display: none;}
	img.sp_only{display: none;}
}
.spc_none{ display: block; }
@media (min-width:1099px){.pc_none{display: block;}}
.pc_only{ display: none; }
@media (min-width:1100px){.pc_none{display: none;}
.pc_only{display: block;}
.tab_none{ display: block; }
}


/* ========== animation for ScrollTrigger.min.js  ========== */
.invisible {
transition: opacity 1s ease;
opacity: 0.0;
}
.visible {
transition: opacity 1s ease;
opacity: 1.0;
}



/* other style
-----------------------------------------------*/
body.static .wrapper {
margin-top: 0;
}
.footer {
position: relative;
background: #fff;
z-index: 2;
}

.ff_shipporimin {
font-family: shippori-mincho, sans-serif;
font-weight: 500;
}
.fc_red {
color: #ae240c;
}

.mv {
min-height: 140vw;
}
.mv_title {
top: 58.93vw;
left: 12%;
width: 76%;
animation-delay: 1.25s;
}
img.mv_logo {
top: 2.66vw;
left: 2.66%;
width: 15.2%;
}
@media (min-width:768px){
	.mv {
	min-height: 46vw;
	}
	.mv_title {
	top: auto;
	bottom: 4vw;
	left: 36.32%;
	width: 27.36%;
	}
	img.mv_logo {
	top: 2.4vw;
	left: 2.4%;
	width: 6.8%;
	}
}

.modal_open {
cursor: pointer;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}
.modal_open:hover {
opacity: 0.70;
filter: alpha(opacity=70);
}
img.modal_open_viewall {
bottom: 1.86vw;
right: 1.86vw;
width: 9.6vw;
}
@media (min-width:768px){
	img.modal_open_viewall {
	bottom: 10px;
	right: 8px;
	width: 43px;
	}
}


video.intro_movie {
width: 66.66666666%;
margin-top: 18vw;
}
.sec01_flex { width: 100%; margin-top: 10vw; align-items: flex-start; }
.sec01_img01 { width: 50%; }
.sec01_img02 { width: 50%; margin: -66.66666666vw 0 0 auto; animation-delay: 0.2s; }
.sec01_img03 { width: 72.53333333%; margin-top: 4vw; }
.sec01_img03 picture { z-index: 2; }
.sec01_img03::before { content: ""; position: absolute; left: -13.6vw; top: 29vw; display: block; width: 100vw; height: 54.66vw; background: #013d5a; }
.sec02 { margin-top: 4vw; }
.sec02_box { width: 50%; height: 66.66666666vw; overflow: hidden;}
.sec02_box:nth-child(even) { animation-delay: 0.2s; }
.sec03 { margin-top: 4vw; }
.sec03::before { content: ""; position: absolute; left: 0; top: 14.13vw; display: block; width: 100vw; height: 72.26vw; background: #013d5a; }
.sec03_01 { width: 53.6%; margin: 0 auto 0 0; z-index: 2; }
.sec03_02 { width: 46.4%; margin: -36.26vw 0 0 auto; z-index: 2; }
.sec03_flex { margin-top: 4vw; }
.sec03_flex .modal_open { width: 50%; height: 66.66666666vw; overflow: hidden; }
.sec03_flex .modal_open:nth-child(2) { animation-delay: 0.2s; }
.sec04_img01 { margin-top: 4vw; }
.sec04_flex { width: 77.33333333%; margin-top: 4vw; }
.sec04_flex div { width: 50%; }
.sec04_flex div:nth-child(2) { animation-delay: 0.2s; }
@media (min-width:768px){
	video.intro_movie { width: 250px; margin-top: 95px; }
	.sec01_flex { display: flex; width: 450px; margin: 100px auto 0; }
	.sec01_img02 { margin: 70px 0 0; }
	.sec01_img03 { width: 326px; margin-top: 65px; }
	.sec01_img03::before { left: -95px; top: 130px; width: 516px; height: 245px; }
	.sec02 { width: 768px; margin: 25px auto 0; }
	.sec02_box { width: 25%; height: 256px; }
	.sec02_box:nth-child(2) { animation-delay: 0.15s; }
	.sec02_box:nth-child(3) { animation-delay: 0.3s; }
	.sec02_box:nth-child(4) { animation-delay: 0.45s; }
	.sec03 { margin-top: 25px; }
	.sec03::before { top: 65px; height: 325px; }
	.sec03_01 { width: 241px; margin: 0 auto 0 calc(50% - 225px); }
	.sec03_02 { width: 209px; margin: -163px auto 0 calc(50% + 16px); }
	.sec03_flex { width: 450px; margin-top: 25px; }
	.sec03_flex .modal_open { height: 300px; }
	.sec04_img01 { width: 450px; margin: 25px auto 0 calc(50% - 330px); }
	.sec04_flex { width: 346px; margin-top: 25px; }
	.sec04_flex div:last-child { margin-top: 45px; }
}
@media (min-width:1000px){
	video.intro_movie { margin-left: calc(50% + 125px) }
	.sec01_flex { margin: -410px auto 0 calc(50% - 375px); }
	.sec02 { width: 900px; }
	.sec02_box { height: 300px; }
	.sec04_img01 { margin-left: calc(50% - 415px); }
	.sec04_flex { margin: -260px auto 0 calc(50% + 68px); }
}

.staffcredit {
margin-top: 18.66vw;
}
.brandlogo {
padding-bottom: 10vw;
margin-top: 20vw;
}
.brandlogo img {
width: 50px;
margin-bottom: 10px;
}
@media (min-width:768px){
	.staffcredit {
	margin-top: 100px;
	font-size: 15px;
	}
	.brandlogo {
	margin-top: 50px;
	padding-bottom: 100px;
	font-size: 15px;
	}
	.brandlogo img {
	width: 85px;
	margin-bottom: 12px;
	}
}

.modal {
z-index: 200;
}
.modal__container{
z-index:9000;
position: fixed;
top: -150vh;
left: 0;
width: 100%;
height: 101%;
text-align: center;
background: rgba(255,255,255,90%);
padding: 70px 0 32.27vw;
overflow: auto;
opacity: 0;
visibility: hidden;
box-sizing: border-box;
}
.modal__container.is-active{
visibility: visible;
top: 0;
}
.modal__close-btn {
position: fixed;
top: 6vw;
right: 3.7vw;
width: 22px;
cursor: pointer;
}
img.modal__close-btn-img {
width: 100%;
height: auto;
}
.modal__content{
text-align: left;
color: #000;
}
.modal_item {
width: 93.33333333%;
}
.modal_box + .modal_box,
.modal_item + .modal_item {
padding-top: 50px;
}
.modal_pricebox {
margin-top: 4vw;
}
.modal_pricebox li {
border-bottom: 1px solid #524e50;
}
.modal_pricebox li:last-child {
border: none;
}
.modal_pricebox li a {
align-items: flex-end;
padding: 1.6vw 0;
}
.modal_itemname {
width: 34%;
padding-left: 0.5em;
}
.modal_price {
width: 53.15%;
}
.modal_buy {
width: 12.85%;
}
@media (min-width:768px){
	.modal__container{
	padding-bottom: 100px;
	}
	.modal__close-btn {
	top: 30px;
	right: 30px;
	}
	.modal_item {
	width: 350px;
	}
	.modal_box + .modal_box,
	.modal_item + .modal_item {
	padding-top: 75px;
	}
	.modal_pricebox {
	margin-top: 10px;
	}
	.modal_pricebox li a {
	padding: 4px 0;
	}
	.modal_itemname {
	width: 140px;
	padding-left: 0;
	}
	.modal_price {
	width: 158px;
	}
	.modal_buy {
	width: 52px;
	}
}
@media (min-width:1000px){
	.modal__content {
	width: 730px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	}
	.modal__close-btn {
	top: 50px;
	right: calc(50% - 450px);
	}
	#modal02 {
	padding-top: 0;
	}
}

