@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;
overflow: hidden;
color: #000;
font-family: "Noto Serif JP", serif;
font-optical-sizing: auto;
font-style: normal;
font-weight: 400;
font-size: 3.2vw;
line-height: 100%;
letter-spacing: 0.05em;
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:415px){
	.allwrapper,
	.modal {
	font-size: 13.278px;
	}
}

/* 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; }

/* line */
.deco_line { text-decoration: underline; }


/* ========== 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:1199px){.pc_none{display: block;}}
.pc_only{ display: none; }
@media (min-width:1200px){.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;
}
.pc-menu {
position: relative;
z-index: 2;
}

.mv {
width: 100%;
min-height: 177.7493333333vw;
}
.mv video {
top: 0;
left: 0;
}
@media (min-width:768px){
	.allwrapper {
	width: 100vw;
	}
	.mv {
	min-height: 48vw;
	}
	.mv_title {
	top: 20%;
	left: 5%;
	width: 50%;
	}
}
@media (min-width:1200px){
	body,
	.allwrapper,
	.contents,
	.main {
	width: 100%;
	overflow: visible !important;
	}
	.mv_title {
	top: 30%;
	left: 10%;
	width: 38.96%;
	}
}

.lineup {
padding-top: 14.13vw;
}
.lineup_title {
width: 27.2%;
}
.lineup_itemwrapper {
width: 88.8%;
justify-content: center;
gap: 4vw 1.8666666666vw;
margin-top: 5.6vw;
}
.lineup_item {
width: 43.466666666vw;
}
.btn_polobcs {
width: 75.7333333333%;
margin-top: 13.33vw;
}
@media (min-width:768px){
	.lineup {
	width: 608px;
	padding-top: 70px;
	}
	.lineup_title {
	width: 122px;
	}
	.lineup_itemwrapper {
	width: 100%;
	gap: 27px 10px;
	margin-top: 27px;
	}
	.lineup_item {
	width: 196px;
	}
	.btn_polobcs {
	width: 340px;
	margin-top: 65px;
	}
}
@media (min-width:1200px){
	.lineup {
	width: 100%;
	padding-top: 115px;
	padding-bottom: 115px;
	border-bottom: 15px solid #b32331;
	}
	.lineup_itemwrapper {
	width: 1020px;
	}
}

.pc_leftarea {
display: none;
}
@media (min-width:1200px){
	.pc_leftarea {
	display: block;
	width: 50%;
	min-height: 100vh;
	background: #fbf4f4;
	animation-delay: 1s;
	}
	.pc_leftarea_inner {
	position: sticky;
	top: 0;
	width: 600px;
	margin: 0 0 0 auto;
	padding: 30px 0 200px;
	}
	.pc_rightarea {
	width: 50%;
	margin-left: 50%;
	}
	.leftarea_itemlist_wrapper {
	width: 361px;
	justify-content: flex-start;
	gap: 5px;
	margin-top: 35px;
	}
	.leftarea_credit_wrapper {
	width: 361px;
	}
	.leftarea_itemlist_wrapper li {
	width: 117px;
	}
	.leftarea_credit_wrapper {
	margin: 33px auto 0 0;
	}
	.leftarea_credit * {
	color: #b32331;
	}
	.leftarea_credit_wrapper li + li {
	margin-top: 14px;
	}
	.leftarea_credit .credit_itemname {
	width: 186px;
	}
	.leftarea_credit .credit_price {
	width: 142px;
	}
}

.item_title img {
width: auto;
height: 11.4666666666vw;
margin: 0 auto 0 3.2%;
}
@media (min-width:768px){
	.item_title img {
	height: 52px;
	margin: 0 auto 0 calc(50% - 193px);
	}
}
@media (min-width:1200px){
	.pc_rightarea .item_title {
	display: none;
	}
	.pc_leftarea .item_title img {
	margin: 0;
	}
}

.photosize_380 { width: 45.86666666666%; }
.photosize_630 { width: 76.53333333333%; }
.photosize_682 { width: 82.6666666666%; }
.photosize_650 { width: 78.6666666666%; }
.photosize_770 { width: 93.3333333333%; }
@media (min-width:768px){
	.photosize_380 { width: 190px; }
	.photosize_630 { width: 315px; }
	.photosize_682 { width: 341px; }
	.photosize_650 { width: 325px; }
	.photosize_770 { width: 385px; }
}

.bgloop {
width: 100%;
height: 66.1333333333vw;
margin-top: 4vw;
}
@media (min-width:768px){
	.bgloop {
	height: 273px;
	margin-top: 17px;
	}
}

button.creditopen {
display: block;
top: 10px;
right: 10px;
width: 25px;
height: 25px;
z-index: 3;
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;
}
button.creditopen:hover {
opacity: 0.6;
}
button.creditopen::before,
button.creditopen::after {
content: "";
position: absolute;
display: block;
background: #b32331;
-webkit-transition: all 0.5s ease-in;
-moz-transition: all 0.5s ease-in;
-o-transition: all 0.5s ease-in;
transition: all  0.5s ease-in;
}
button.creditopen::before {
top: 0;
left: 12px;
width: 1px;
height: 25px;
}
button.creditopen::after {
top: 12px;
left: 0;
width: 25px;
height: 1px;
}
button.creditopen.open::before,
button.creditopen.open::after {
transform: rotate(-45deg);
background: #fff;
}
.credit_wrapper {
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(46, 46, 46, 0.6);
z-index: 2;
}
.credit_inner {
align-items: center;
height: 100%;
width: 67vw;
}
.credit_inner * {
color: #fff;
}
.credit_inner ul {
width: 100%;
}
.credit_inner li + li {
margin-top: 3.2vw;
}
.credit_itemname {
width: 43vw;
}
.credit_itemname.indent {
margin-left: -0.5em;
margin-right: 0.5em;
}
.credit_price {
width: 13vw;
}
img.credit_buy {
width: 8vw;
margin: 0;
}
img.credit_buy.hidden {
opacity: 0;
}
@media (min-width:768px){
	.credit_inner {
	width: 280px;
	}
	.credit_inner li + li {
	margin-top: 13px;
	}
	.credit_itemname {
	width: 180px;
	}
	.credit_price {
	width: 50px;
	}
	img.credit_buy {
	width: 33px;
	}
}

.item01 { padding-top: 31.7333333333vw; }
.item01_01 { margin: 4vw auto 0 14.1333333333%; }
.item01_02 { margin: 4vw auto 0 0; }
.item01_03 { margin: 10.6666666666vw auto 0; }
.item01_04 { margin: 10.6666666666vw auto 0; }
.item01_06 { margin: 10.6666666666vw auto 0; }
.item01_07 { margin: 6.1333333333vw auto 0; }
.item01_08 { margin: 10.6666666666vw auto 0 0; }
.item01_09 { margin: 4vw auto 0 6.6666666666%; }
.item01_10 { margin: -61.0746666666vw 0 0 auto; animation-delay: 0.3s; }
.item01_05 {
background: url("../images/item01-05.jpg") repeat-x;
background-size: auto 100%;
animation: bgLoop05 15s linear infinite;
}
@media (min-width:768px){
	.item01 { padding-top: 90px; }
	.item01_01 { margin: 17px auto 0 calc(50% - 148px); }
	.item01_02 { margin: 17px auto 0 calc(50% - 210px); }
	.item01_03 { margin: 50px auto 0; }
	.item01_04 { margin: 50px auto 0; }
	.item01_06 { margin: 50px auto 0; }
	.item01_07 { margin: 25px auto 0; }
	.item01_08 { margin: 50px auto 0 calc(50% - 205px); }
	.item01_09 { margin: 18px auto 0 calc(50% - 180px); }
	.item01_10 { margin: -253px auto 0 calc(50% + 19px); }
	.item01_05 {
	animation: bgLoop05_pc 15s linear infinite;
	}
}
@media (min-width:1200px){
	.item01_01 { margin-top: 0; }
	.item01 .pc_leftarea {
	height: 3934.41px;
	margin-top: -3934.41px;
	}
}

.item02 { padding-top: 10.6666666666vw; }
.item02_01 { margin: 4vw auto 0; }
.item02_02 { margin: 10.6666666666vw auto 0; }
.item02_04 { margin: 10.6666666666vw auto 0 14.1333333333%; }
.item02_05 { margin: 4vw auto 0 4%; }
.item02_03 {
background: url("../images/item02-03.jpg") repeat-x;
background-size: auto 100%;
animation: bgLoop03 10s linear infinite;
}
@media (min-width:768px){
	.item02 { padding-top: 90px; }
	.item02_01 { margin: 17px auto 0; }
	.item02_02 { margin: 50px auto 0; }
	.item02_04 { margin: 50px auto 0 calc(50% - 150px); }
	.item02_05 { margin: 17px auto 0 calc(50% - 195px); }
	.item02_03 {
	animation: bgLoop03_pc 10s linear infinite;
	}
}
@media (min-width:1200px){
	.item02 { padding-top: 50px; }
	.item02_01 { margin-top: 0; }
	.item02 .pc_leftarea {
	height: 2101px;
	margin-top: -2101px;
	}
}

.item03 { padding-top: 10.6666666666vw; }
.item03_01 { margin: 4vw auto 0 4%; }
.item03_02 { margin: 4vw auto 0 18.1333333333%; }
.item03_03 { margin: 10.6666666666vw auto 0; }
.item03_04 { margin: 10.6666666666vw auto 0; }
.item03_06 { margin: 10.6666666666vw auto 0; }
.item03_07 { margin: 4vw auto 0 0; }
.item03_08 { margin: -61.0746666666vw 0 auto 47.4666666666%; animation-delay: 0.3s; }
.item03_05 {
background: url("../images/item03-05.jpg") repeat-x;
background-size: auto 100%;
animation: bgLoop04 12s linear infinite;
}
@media (min-width:768px){
	.item03 { padding-top: 90px; }
	.item03_01 { margin: 17px auto 0 calc(50% - 195px); }
	.item03_02 { margin: 17px auto 0 calc(50% - 133px); }
	.item03_03 { margin: 50px auto 0; }
	.item03_04 { margin: 50px auto 0; }
	.item03_06 { margin: 50px auto 0; }
	.item03_07 { margin: 17px auto 0 calc(50% - 210px); }
	.item03_08 { margin: -253px auto 0 calc(50% - 11px); }
	.item03_05 {
	animation: bgLoop04_pc 12s linear infinite;
	}
}
@media (min-width:1200px){
	.item03 { padding-top: 50px; }
	.item03_01 { margin-top: 0; }
	.item03 .pc_leftarea {
	height: 2937.84px;
	margin-top: -2937.84px;
	}
}

.item04 { padding-top: 10.6666666666vw; }
.item04_01 { margin: 4vw auto 0; }
.item04_02 { margin: 2.66666666vw auto 0 6.6666666666%; }
.item04_03 { margin: -61.0746666666vw 0 0 auto; animation-delay: 0.3s; }
.item04_04 { margin: 10.6666666666vw auto 0; }
.item04_05 { margin: 10.6666666666vw auto 0; }
.item04_07 { margin: 10.6666666666vw auto 0; }
.item04_08 { margin: 6.1333333333vw auto 0; }
.item04_09 { margin: 10.6666666666vw 0 0 auto; }
.item04_10 { margin: 4vw auto 0 0; }
.item04_11 { margin: -61.0746666666vw auto 0 47.4666666666%; animation-delay: 0.3s; }
.item04_06 {
background: url("../images/item04-06.jpg") repeat-x;
background-size: auto 100%;
animation: bgLoop04 12s linear infinite;
}
@media (min-width:768px){
	.item04 { padding-top: 90px; }
	.item04_01 { margin: 17px auto 0; }
	.item04_02 { margin: 12px auto 0 calc(50% - 180px); }
	.item04_03 { margin: -253px auto 0 calc(50% + 19px); }
	.item04_04 { margin: 50px auto 0; }
	.item04_05 { margin: 50px auto 0; }
	.item04_07 { margin: 50px auto 0; }
	.item04_08 { margin: 25px auto 0; }
	.item04_09 { margin: 50px auto 0 calc(50% - 135px); }
	.item04_10 { margin: 17px auto 0 calc(50% - 210px); }
	.item04_11 { margin: -253px auto 0 calc(50% - 11px); }
	.item04_06 {
	animation: bgLoop04_pc 12s linear infinite;
	}
}
@media (min-width:1200px){
	.item04 { padding-top: 50px; }
	.item04_01 { margin-top: 0; }
	.item04 .pc_leftarea {
	height: 3977.72px;
	margin-top: -3977.72px;
	}
}

.item05 { padding-top: 10.6666666666vw; }
.item05_01 { margin: 4vw auto 0 0; }
.item05_02 { margin: 4vw auto 0 6.6666666666%; }
.item05_03 { margin: -61.0746666666vw 0 0 auto; animation-delay: 0.3s; }
.item05_04 { margin: 10.6666666666vw auto 0; }
.item05_05 { margin: 10.6666666666vw auto 0; }
.item05_07 { margin: 10.6666666666vw auto 0; }
.item05_08 { margin: 10.6666666666vw 0 0 auto; }
.item05_09 { margin: 4vw auto 0 6.6666666666%; }
.item05_10 { margin: -61.0746666666vw 0 0 auto; animation-delay: 0.3s; }
.item05_06 {
background: url("../images/item05-06.jpg") repeat-x;
background-size: auto 100%;
animation: bgLoop04 12s linear infinite;
}
@media (min-width:768px){
	.item05 { padding-top: 90px; }
	.item05_01 { margin: 17px auto 0 calc(50% - 210px); }
	.item05_02 { margin: 17px auto 0 calc(50% - 180px); }
	.item05_03 { margin: -253px auto 0 calc(50% + 20px); }
	.item05_04 { margin: 50px auto 0; }
	.item05_05 { margin: 50px auto 0; }
	.item05_07 { margin: 50px auto 0; }
	.item05_08 { margin: 50px auto 0 calc(50% - 132px); }
	.item05_09 { margin: 17px auto 0 calc(50% - 210px); }
	.item05_10 { margin: -253px auto 0 calc(50% - 11px); }
	.item05_06 {
	animation: bgLoop04_pc 12s linear infinite;
	}
}
@media (min-width:1200px){
	.item05 { padding-top: 50px; }
	.item05 .pc_rightarea { padding-bottom: 75px; }
	.item05_01 { margin-top: 0; }
	.item05 .pc_leftarea {
	height: 3558.84px;
	margin-top: -3558.84px;
	}
}

@keyframes bgLoop05 {
	0% { background-position: 0 0; }
	100% { background-position: -254.8vw 0; }
}
@keyframes bgLoop04 {
	0% { background-position: 0 0; }
	100% { background-position: -204vw 0; }
}
@keyframes bgLoop03 {
	0% { background-position: 0 0; }
	100% { background-position: -153.0666666666vw 0; }
}

@keyframes bgLoop05_pc {
	0% { background-position: 0 0; }
	100% { background-position: -1052px 0; }
}
@keyframes bgLoop04_pc {
	0% { background-position: 0 0; }
	100% { background-position: -842px 0; }
}
@keyframes bgLoop03_pc {
	0% { background-position: 0 0; }
	100% { background-position: -632px 0; }
}

.about {
margin-top: 18.6666666666vw;
padding: 28vw 0 32vw;
background: url("../images/about-bg_sp.jpg") center top / cover;
}
.about_title {
width: 52.5333333333vw;
}
.about_text {
margin-top: 6.66vw;
}
video.bottom_movie {
display: none;
}
.btn_all {
width: 76vw;
margin-top: 14.66vw;
}
@media (min-width:768px){
	.about {
	margin-top: 75px;
	padding: 115px 0 125px;
	background: url("../images/about-bg_pc.jpg") center top / cover;
	}
	.about_title {
	width: 219px;
	}
	.about_text {
	margin-top: 45px;
	}
	video.bottom_movie {
	width: 225px;
	margin-top: 77px;
	}
	.btn_all {
	width: 340px;
	margin-top: 75px;
	}
}
@media (min-width:1200px){
	.about {
	margin-top: 0;
	}
}

.staffcredit {
margin-top: 16vw;
font-family: yu-gothic-pr6n, sans-serif;
font-size: 3.33vw;
}
.brandlogo {
padding-bottom: 10vw;
margin-top: 14vw;
font-family: yu-gothic-pr6n, sans-serif;
}
.brandlogo img {
width: 50px;
margin-bottom: 10px;
}
@media (min-width:768px){
	.staffcredit {
	margin-top: 60px;
	font-size: 13.8px;
	}
	.brandlogo {
	padding-bottom: 42px;
	margin-top: 60px;
	font-size: 11px;
	}
	.brandlogo img {
	width: 55px;
	margin-bottom: 11px;
	}
}
@media (min-width:1200px){
	.bottom_wrapper .pc_leftarea {
	height: 1053.14px;
	margin-top: -1053.14px;	
	}
}
