@charset "utf-8";
/* ==================================================================
CSS information
style info :RESET
================================================================== */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent;
}
body { line-height:1; }
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section { display:block; }
nav ul { list-style:none; }
blockquote, q { quotes:none; }
blockquote:before, blockquote:after,q:before, q:after { content:''; content:none; }
a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent; }
ins { background-color:#ff9; color:#000; text-decoration:none; }
mark { background-color:#ff9; color:#000;  font-style:italic; font-weight:bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }
table { border-collapse:collapse; border-spacing:0; }
hr { display:block; height:1px; border:0; border-top:1px solid #cccccc; margin:1em 0; padding:0; }
input, select { vertical-align:middle; }

h1 , h2 , h3 , h4 { line-height:1; }
ul { list-style:none; }
p { line-height:1; }
img { vertical-align:bottom; border:none; }
table { font-size:inherit; font:100%;}




/* ==================================================================
CSS information
style info :共通
================================================================== */
html,body { -webkit-text-size-adjust: none; }
html { font-size: 62.5%; }
body { font-size: 14px; font-size: 1.4rem; }
div, h1, h2, h3, h4, h5, p { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
#contents ul, #contents li, #contents ol, #contents dl, #contents dt, #contents dd, #contents a, #contents span { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
#contents header, #contents section, #contents aside, #contents article { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }


#contents img { max-width: 100%; height: auto; display: block;}
@media screen and (max-width: 640px) {
}
#sqexHeader-black_rsp , #sqexFooter { z-index: 991; position: relative;}




/* --------------------------------------------------------
#contents
-------------------------------------------------------- */
#contents:after { content: ""; display: block; clear: both; }
#contents { zoom:1; overflow: hidden; background: #000; color: #fff;}
#contents { font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif; }
@media screen and (min-width: 1367px) {
}
#allWrap { position: relative; }

.sp_logo { display: block; position: absolute; top: 0; left: calc(37/750*100%); margin-top: calc(9/750*100%); width: calc(359/750*100%); z-index: 10;}
.sp_logo a::after { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 2;}
.sp_logo.nodisp { display: none;}
@media screen and (min-width: 641px) {
	.sp_logo { display: none; }
}


/* --------------------------------------------------------
nowloading
-------------------------------------------------------- */
#nowloading { position: fixed; width: 100%; height: 100%; top: 0px; left: 0px; background: #161616; z-index: 9990; }
#nowloading_icon { position: absolute; top: 50%; left: 50%; width: 100px; height: 100px; margin-top: -50px; margin-left: -50px; text-align: center;  z-index: 9991; }
#nowloading_icon { border-radius: 50%; border: solid 1px #161616; }
#nowloading_icon img { animation: nowloadingAnime 2s infinite linear both; width: 65%; }
@keyframes nowloadingAnime {
	from { transform: rotateY(0deg); }
	to { transform: rotateY(360deg); }
}
@media screen and (min-width: 641px) {
}



/* --------------------------------------------------------
#soundController
-------------------------------------------------------- */
#soundController { display: -webkit-flex; display: flex; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: space-between; justify-content: space-between; }
#soundController { width: calc(490/750*100%); margin: 0; border: 5px solid #3d3d3d; border-radius: 8px; background: #000; padding: calc(10/750*100%);}
#soundController { position: absolute; bottom: 0; left: calc(130/750*100%); margin-bottom: calc(95/750*100%);}
#soundController .state { width: calc(240/460*100%); position: relative; cursor: pointer;}
#soundController .state .on { position: absolute; top: 0; left: 0; opacity: 0; }
#soundController .state.active .off { opacity: 0; }
#soundController .state.active .on { opacity: 1; }
#soundController .sound_list { display: -webkit-flex; display: flex; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: right; justify-content: right; position: relative;}
#soundController .sound_list { width: calc(210/460*100%); }
#soundController .sound_list li { width: calc(56/210*100%); background: #141516; border: 1px solid #212223; margin-left: calc(14/210*100%); border-radius: 6px; cursor: pointer;}
#soundController .sound_list li.active { background: #a0a0a0; border: 1px solid #adadad;}
@media screen and (min-width: 641px) {
	#soundController { width: calc(225/1366*100%); border: none; padding: 0; z-index: 9001; left: 50%; margin-bottom: calc(30/1366*100%); margin-left: calc(378/1366*100%); background: none;}
	#soundController .state { width: calc(120/225*100%); }
	#soundController .sound_list { width: calc(105/241*100%); }
	#soundController .sound_list li { width: calc(28/105*100%); margin-left: calc(7/105*100%); border-radius: 6px;}
}
@media screen and (min-width: 1367px) {
	#soundController { width: 225px; margin-bottom: 30px; margin-left: 378px; }
}




/* --------------------------------------------------------
#spmenu
-------------------------------------------------------- */
#spmenu { display: block; cursor: pointer; position: absolute; top: 0; right: 0; border: 1px solid #313131; background: rgba(12,12,12,0.8); width: calc(100/750*100%); padding: calc(47/750*100%) calc(22/750*100%); z-index: 9001;}
#spmenu::before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 3px solid rgba(0,0,0,0.8);
	-webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
#spmenu.fixed { position: fixed; top: 0; right: 0; }

#spmenu .spmenu_icon { position: relative; margin: 0 auto; }
#spmenu .spmenu_icon, #spmenu .spmenu_icon:after, #spmenu .spmenu_icon:before { display: block; width: 100%; height: auto; padding-top: calc(4/54*100%); background-color: #fff;
	-webkit-transition: all .3s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	transition: all .3s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}
#spmenu .spmenu_icon:after, #spmenu .spmenu_icon:before { position: absolute; top: 0; left: 0; content: ' ';}
#spmenu .spmenu_icon:before { margin-top: calc(-17/54*100%);}
#spmenu .spmenu_icon:after { margin-top: calc(17/54*100%);}

#spmenu.active .spmenu_icon { background-color: transparent;}
#spmenu.active .spmenu_icon:after, #spmenu.active .spmenu_icon:before { margin-top: 0; }
#spmenu.active .spmenu_icon:before { -webkit-transform: rotate(45deg); transform: rotate(45deg);}
#spmenu.active .spmenu_icon:after { -webkit-transform: rotate(-45deg); transform: rotate(-45deg);}

@media screen and (min-width: 641px) {
	#spmenu { display: none;}
}



/* --------------------------------------------------------
#Sec_gNav.sec_gNav
-------------------------------------------------------- */
.sec_gNav { display: block; position: absolute; width: 100%; z-index: 9000;}
.sec_gNav .sec_gNav_inner { position: relative;}
.sec_gNav .sec_gNav_logo { display: block; z-index: 999;}
.sec_gNav .sec_gNav_logo a::after { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 2;}

.gNav { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; position: relative;}
.gNav li { display: block; position: relative; }
.gNav li a { display: block; width: 100%; position: relative; }
.gNav li span { position: absolute; overflow: hidden; width: 1px; height: 1px; margin: -1px; clip: rect(0, 0, 0, 0);}

@media screen and (max-width: 640px) {
.sec_gNav { top: 0; left: 0; height: 100%; }
.sec_gNav .sec_gNav_inner { height: 100%; width: 100%;}
.sec_gNav .sec_gNav_logo { position: absolute; top: 0; left: calc(42/750*100%); margin-top: calc(9/750*100%); width: calc(260/750*100%);}
.sec_gNav.fixed { position: fixed;}

.sec_gNav { transition: opacity .5s, visibility 0s ease .5s; opacity: 0; visibility: hidden; }
.sec_gNav.gNav_open { transition-delay: 0s; opacity: 1; visibility: visible; }

.gNav_wrap { width: 100%; height: 100%; background: rgba(0,0,0,0.9); padding-top: calc(180/750*100%); display: block;}
.gNav { width: calc(650/750*100%); margin: 0 auto;}
.gNav { -webkit-transform-origin: top left; transform-origin: top left; -webkit-transform: translateY(10px); transform: translateY(10px); -webkit-transition: .1s ease-in-out; transition: .1s ease-in-out; }
.sec_gNav.gNav_open .gNav { transition-delay: 0.4s; -webkit-transform: translateY(0px); transform: translateY(0px); }

.gNav li { width: calc(310/650*100%); margin-bottom: calc(20/650*100vw); }
.gNav li a { height: 100%; padding-top: calc(100/310*100%);}

.gNav .gNav_btn01 a { background: url(../img/gnav/gNav_btn01_sp.png) center center no-repeat; background-size: 100% auto; }
.gNav .gNav_btn02 a { background: url(../img/gnav/gNav_btn02_sp.png) center center no-repeat; background-size: 100% auto; }
.gNav .gNav_btn03 a { background: url(../img/gnav/gNav_btn03_sp.png) center center no-repeat; background-size: 100% auto; }
.gNav .gNav_btn04 a { background: url(../img/gnav/gNav_btn04_sp.png) center center no-repeat; background-size: 100% auto; }
.gNav .gNav_btn05 a { background: url(../img/gnav/gNav_btn05_sp.png) center center no-repeat; background-size: 100% auto; }
.gNav .gNav_btn06 a { background: url(../img/gnav/gNav_btn06_sp.png) center center no-repeat; background-size: 100% auto; }
.gNav .gNav_btn07 a { background: url(../img/gnav/gNav_btn07_sp.png) center center no-repeat; background-size: 100% auto; }
.gNav li.gNav_btn07 { width: 100%; margin-bottom: 0; }
.gNav li.gNav_btn07 a { padding-top: calc(80/650*100%);}
.gNav li.stateActive { }

}
@media screen and (min-width: 641px) {
	.sec_gNav { bottom: 0; left: 0; background: url(../img/gnav/gnav_bg_pc.png) top center no-repeat; background-size: calc(1920/1366*100%);}
	.sec_gNav .sec_gNav_inner { width: calc(1206/1366*100%); margin: 0 auto; padding-top: calc(246/1366*100%); }

	.sec_gNav .sec_gNav_logo { width: calc(289/1206*100%); position: absolute; bottom: 0; left: 0; margin-bottom: calc(12/1206*100%); margin-left: calc(-11/1206*100%);}

	.gNav_wrap { width: 100%; display: block; position: absolute; bottom: 0; left: 0; }
	.gNav { width: 100%; margin-bottom: calc(22/1206*100%); }
	.gNav { -webkit-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: flex-end; justify-content: flex-end; align-items: flex-start; }
	.gNav li { margin-left: calc(3/1206*100%); }
	
	.gNav .gNav_btn01 { width: calc(102/1206*100%); margin-top: calc(130/1366*100vw);}
	.gNav .gNav_btn01 a { background: url(../img/gnav/gNav_btn01_pc.png) center center no-repeat; background-size: 100% auto; padding-top: calc(94/102*100%); }
	.gNav .gNav_btn01:hover ,
	.gNav .gNav_btn01.stateActive { background: url(../img/gnav/gNav_btn01_on_pc.png) center center no-repeat; background-size: 100% auto; }
	.gNav .gNav_btn02 { width: calc(203/1206*100%); margin-top: calc(108/1366*100vw);}
	.gNav .gNav_btn02 a { background: url(../img/gnav/gNav_btn02_pc.png) center center no-repeat; background-size: 100% auto; padding-top: calc(105/203*100%); }
	.gNav .gNav_btn02:hover ,
	.gNav .gNav_btn02.stateActive { background: url(../img/gnav/gNav_btn02_on_pc.png) center center no-repeat; background-size: 100% auto; }
	.gNav .gNav_btn03 { width: calc(176/1206*100%); margin-top: calc(89/1366*100vw);}
	.gNav .gNav_btn03 a { background: url(../img/gnav/gNav_btn03_pc.png) center center no-repeat; background-size: 100% auto; padding-top: calc(102/176*100%); }
	.gNav .gNav_btn03:hover ,
	.gNav .gNav_btn03.stateActive { background: url(../img/gnav/gNav_btn03_on_pc.png) center center no-repeat; background-size: 100% auto; }
	.gNav .gNav_btn04 { width: calc(121/1206*100%); margin-top: calc(76/1366*100vw);}
	.gNav .gNav_btn04 a { background: url(../img/gnav/gNav_btn04_pc.png) center center no-repeat; background-size: 100% auto; padding-top: calc(96/121*100%); }
	.gNav .gNav_btn04:hover ,
	.gNav .gNav_btn04.stateActive { background: url(../img/gnav/gNav_btn04_on_pc.png) center center no-repeat; background-size: 100% auto; }
	.gNav .gNav_btn05 { width: calc(100/1206*100%); margin-top: calc(65/1366*100vw);}
	.gNav .gNav_btn05 a { background: url(../img/gnav/gNav_btn05_pc.png) center center no-repeat; background-size: 100% auto; padding-top: calc(94/100*100%); }
	.gNav .gNav_btn05:hover ,
	.gNav .gNav_btn05.stateActive { background: url(../img/gnav/gNav_btn05_on_pc.png) center center no-repeat; background-size: 100% auto; }
	.gNav .gNav_btn06 { width: calc(121/1206*100%); margin-top: calc(52/1366*100vw);}
	.gNav .gNav_btn06 a { background: url(../img/gnav/gNav_btn06_pc.png) center center no-repeat; background-size: 100% auto; padding-top: calc(96/121*100%); }
	.gNav .gNav_btn06:hover ,
	.gNav .gNav_btn06.stateActive { background: url(../img/gnav/gNav_btn06_on_pc.png) center center no-repeat; background-size: 100% auto; }
	.gNav .gNav_btn07 { width: calc(82/1206*100%); margin-top: calc(43/1366*100vw); margin-right: calc(-7/1206*100%); }
	.gNav .gNav_btn07 a { background: url(../img/gnav/gNav_btn07_pc.png) center center no-repeat; background-size: 100% auto; padding-top: calc(92/82*100%); }
	.gNav .gNav_btn07:hover ,
	.gNav .gNav_btn07.stateActive { background: url(../img/gnav/gNav_btn07_on_pc.png) center center no-repeat; background-size: 100% auto; }

}
@media screen and (min-width: 1367px) {
	.sec_gNav { background-size: 1920px;}
	.sec_gNav .sec_gNav_inner { width: 1206px; padding-top: 246px; }

	.gNav .gNav_btn01 { margin-top: 130px;}
	.gNav .gNav_btn02 { margin-top: 108px;}
	.gNav .gNav_btn03 { margin-top: 89px;}
	.gNav .gNav_btn04 { margin-top: 76px;}
	.gNav .gNav_btn05 { margin-top: 65px;}
	.gNav .gNav_btn06 { margin-top: 52px;}
	.gNav .gNav_btn07 { margin-top: 43px;}
}





/* ----------------------------------------------------------------------------------------------------------------
#colorbox
---------------------------------------------------------------------------------------------------------------- */
#colorbox.forMV , .forMV #cboxWrapper ,
#colorbox.forIMG , .forIMG #cboxWrapper { overflow: visible!important; }
.forMV #cboxContent ,
.forIMG #cboxContent { background: none; }
#cboxOverlay { background: #000!important; }
#cboxLoadingOverlay{ background: #000!important; display: none!important;}
#cboxLoadingGraphic{ /*background:url(images/loading.gif) no-repeat center center;*/ display: none!important;}
.forMV #cboxLoadedContent ,
.forIMG #cboxLoadedContent { background: none; padding: 0; background-color: #000;}
.forMV #cboxLoadedContent ,
.forIMG #cboxLoadedContent { -webkit-box-sizing: border-box!important; -moz-box-sizing: border-box!important; -ms-box-sizing: border-box!important; box-sizing: border-box!important;}
.forMV #cboxClose ,
.forIMG #cboxClose { width: 35px; height: 35px; background: url(../img/btn_close.png) center center no-repeat; background-size: cover; top: -45px; right: 0px;}
.forMV #cboxClose:hover ,
.forIMG #cboxClose:hover { background-position: center center;}
@media screen and (min-width: 641px) {
	.forMV #cboxLoadedContent ,
	.forIMG #cboxLoadedContent { border: 0px solid #1f5dfa; }
	.forMV #cboxClose ,
	.forIMG #cboxClose { width: 35px; height: 35px; top: -45px; right: 0px; opacity: 0.7;}
}

/* #colorbox.forMV
---------------------------------------------------------------------------------------------------------------- */
.forMV .cboxIframe { background: none; }
.forMV .cboxIframe { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
@media screen and (min-width: 641px) {
}

/* #colorbox.forIMG
---------------------------------------------------------------------------------------------------------------- */
.forIMG #cboxLoadedContent { height: auto!important;}
.forIMG #cboxLoadedContent .cboxPhoto { width: 100%!important; height: auto!important;}
@media screen and (min-width: 641px) {
}




/* --------------------------------------------------------
汎用クラス
-------------------------------------------------------- */
@media screen and (max-width: 640px) {
.sp { display: block; }
.pc { display: none; }
}
.sp { display: none; }

/*clearfix
----------------------------------------------------*/
.clearfix:after { content: ""; display: block; clear: both; }
.clearfix { zoom:1; }
.cr { clear:both; }

/*pagetop
----------------------------------------------------*/
#pageTop { width: 100%; text-align: center; padding: calc(20/750*100%) 0 0; position: absolute; bottom: 0; left: 0; }
#pageTop a { display: block; width: 100%; height: auto; padding-top: calc(75/750*100%); margin: 0 auto; position: relative; background: url(../img/t2/btn_pagetop.png) center center no-repeat; background-size: calc(100/750*100%);}
#pageTop a span { position: absolute; overflow: hidden; width: 1px; height: 1px; margin: -1px; clip: rect(0, 0, 0, 0);}
@media screen and (min-width: 641px) {
	#pageTop { display: none; }
}



