@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; background: #000; }
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 table, #contents table *, #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 *::before, #contents *::after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }

#contents, 
.mfp-content, 
header.secHeader { font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Meiryo", "Helvetica Neue", Arial, sans-serif; }
/* IE HACK */
_:-ms-input-placeholder, :root #contents, 
_:-ms-input-placeholder, :root .mfp-content, 
_:-ms-input-placeholder, :root header.secHeader { font-family: "メイリオ", "Meiryo", sans-serif; }

#contents img { max-width: 100%; height: auto; }
#sqexHeader-black_rsp , #sqexFooter { z-index: 9000; position: relative; }

.fontSerif { font-family: "Hiragino Mincho ProN", "ヒラギノ明朝 ProN", "YuMincho", "Yu Mincho", "游明朝", serif; }



/* --------------------------------------------------------
#contents
-------------------------------------------------------- */
#contents::before ,
#contents::after { content: ""; display: block; clear: both; }
#contents { zoom:1; overflow: hidden; background: #000; color: #fff; position: relative;}
@media screen and (min-width: 641px) {
}
@media screen and (min-width: 1361px) {
}



/* --------------------------------------------------------
#nowloading
-------------------------------------------------------- */
#nowloading { position: fixed; width: 100%; height: 100%; top: 0; left: 0; background: #000; z-index: 9998; }
#nowloading_icon { position: absolute; top: 50%; left: 50%; width: 149px; height: 45px; margin-top: -22px; margin-left: -75px; text-align: center; z-index: 9991; }
#nowloading_icon { border-radius: 50%; border: solid 1px #000; }
#nowloading_icon img { animation: nowloadingAnime 2s infinite alternate forwards running; width: 100%; }
@keyframes nowloadingAnime {
	from { transform: scale(1); }
	to { transform: scale(0.9); }
}
@media screen and (min-width: 641px) {
}



/* --------------------------------------------------------
#allwrap
-------------------------------------------------------- */
#allwrap { background: #000; position: relative; }
@media screen and (min-width: 641px) {
	#allwrap { max-width: 1920px; margin: 0 auto; overflow: hidden; }
}



/* --------------------------------------------------------
.secInner
-------------------------------------------------------- */
.secInner { position: relative; }
/*.secInner { background: rgba(255,0,0,0.3); }*/
@media screen and (min-width: 641px) {
	.secInner { width: calc(1260/1360*100%); margin: auto; padding-top: 1px; }
}
@media screen and (min-width: 1361px) {
	.secInner { width: 1260px; }
}



/* --------------------------------------------------------
.btnOv
-------------------------------------------------------- */
@media screen and (min-width: 641px) {
	.btnOv a { -webkit-transform: scale(1.0); transform: scale(1.0); -webkit-transition: .1s ease-in-out; transition: .1s ease-in-out; -webkit-backface-visibility: hidden; display: block; }
	.btnOv a:hover { -webkit-transform: scale(1.05); transform: scale(1.05); }
}



/* --------------------------------------------------------
.basicFrame
-------------------------------------------------------- */
.basicFrame { display: -webkit-box; display: -ms-flexbox; display: flex; position: relative; width: 100%; height: auto; text-decoration: none; }
.basicFrame .bF__frame { width: 100%; display: block; position: relative; }
.basicFrame .bF__thumb { width: 100%; position: relative; background: #000; overflow: hidden; }
.basicFrame .bF__thumb::before ,
.basicFrame .bF__thumb::after { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; }
.basicFrame .bF__thumb::before { border-width: calc(2/750*100vw) calc(10/750*100vw); border-style: solid; border-color: #0d2c43; opacity: 0.5; }
.basicFrame .bF__thumb::after { border-width: 0 calc(4/750*100vw); border-style: solid; border-color: #439bb5; }
@media screen and (min-width: 641px) {
	.basicFrame {}
	.basicFrame .bF__frame {}
	.basicFrame .bF__thumb {}
	.basicFrame .bF__thumb::before ,
	.basicFrame .bF__thumb::after {}
	.basicFrame .bF__thumb::before { border-width: calc(2/1360*100vw) calc(10/1360*100vw); }
	.basicFrame .bF__thumb::after { border-width: 0 calc(4/1360*100vw); }

	a.basicFrame ,
	a.basicFrame .bF__thumb{ transition: all 0.2s ease 0s; transform-origin: center center; }
	a.basicFrame .bF__thumb { box-shadow: 0px 0px 60px 30px rgba(67,155,181,0); z-index: 0; }
	a.basicFrame .bF__frame .bF__thumb img { transition: all 0.2s ease 0s; -webkit-transition: all 0.2s ease 0s; }
	a.basicFrame:hover { -webkit-transform: scale(1.05); transform: scale(1.05); }
	a.basicFrame:hover .bF__thumb { box-shadow: 0px 0px 6px 3px rgba(67,155,181,0.7); }
	a.basicFrame:hover .bF__frame .bF__thumb img { opacity: 0.7; position: relative; z-index: -1; }
}
@media screen and (min-width: 1361px) {
	.basicFrame .bF__thumb::before { border-width: 2px 10px; }
	.basicFrame .bF__thumb::after { border-width: 0 4px; }
}



/* --------------------------------------------------------
.basicBtn
-------------------------------------------------------- */
.basicBtn a { display: block; background: #003e55; color: #fff; text-decoration: none; position: relative; overflow: hidden; }
.basicBtn a span { display: block; position: relative; z-index: 1; 
	border-width: 1px 4px; border-style: solid; border-color: #439bb5; }
.basicBtn a .bB__img { }
.basicBtn a .bB__text { color: #fff; text-align: center; padding: 0.8em 0.4em; font-size: 2.9333vw; font-feature-settings: "palt"; }/* font22pt */

.basicBtn a::after ,
.basicBtn a::before ,
.basicBtn a span::before { content: ""; display: block; position: absolute; }

.basicBtn a::after { width: 150%; height: 180%; top: 0; left: -25%; 
	transform-origin: top center; transform: translateY(-50%); 
	background-image: radial-gradient(ellipse farthest-side, rgba(0,82,132,1) 0%, rgba(0,82,132,0) 100%); }
.basicBtn a::before { width: 100%; height: 160%; bottom: 0; left: 0; 
	transform-origin: bottom center; transform: translateY(60%); 
	background-image: radial-gradient(ellipse farthest-side, rgba(0,74,173,1) 0%, rgba(0,74,173,0) 100%); }
.basicBtn a span::before { width: 80%; height: 160%; top: 0; left: 10%; z-index: -1; 
	transform-origin: top center; transform: translateY(-68%); 
	background-image: radial-gradient(ellipse farthest-side, rgba(43,130,131,1) 0%, rgba(43,130,131,0) 100%); }
@media screen and (min-width: 641px) {
	.basicBtn a {}
	.basicBtn a .bB__img { }
	.basicBtn a .bB__text { padding: 0.8em 0.4em; font-size: 1.17647vw; }/* font16pt */
	
	.basicBtn a { transition: all 0.2s ease 0s; }
	.basicBtn a:hover { transform: scale(1.1); }

	.basicBtn a::before { transition: all 0.3s ease 0s; }
	.basicBtn a:hover::before { transform: scale(1.3) translateY(50%); }

	.basicBtn a span::before { transition: all 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0s; }
	.basicBtn a:hover span::before { transform: scale(1.5) translateY(-30%); opacity: 0.8; }
}
@media screen and (min-width: 1361px) {
	.basicBtn a .bB__text { font-size: 1.6rem; }
}

/* --------------------------------------------------------
.basicBtnRed
-------------------------------------------------------- */
.basicBtnRed a { display: block; background: #550000; color: #fff; text-decoration: none; position: relative; overflow: hidden; }
.basicBtnRed a span { display: block; position: relative; z-index: 1; 
	border-width: 1px 4px; border-style: solid; border-color: rgb(181, 67, 67); }
.basicBtnRed a .bB__img { }
.basicBtnRed a .bB__text { color: #fff; text-align: center; padding: 0.8em 0.4em; font-size: 2.9333vw; font-feature-settings: "palt"; }/* font22pt */

.basicBtnRed a::after ,
.basicBtnRed a::before ,
.basicBtnRed a span::before { content: ""; display: block; position: absolute; }

.basicBtnRed a::after { width: 150%; height: 180%; top: 0; left: -25%; 
	transform-origin: top center; transform: translateY(-50%); 
	background-image: radial-gradient(ellipse farthest-side, rgb(132, 0, 0) 0%, rgba(132, 0, 0,0) 100%); }
.basicBtnRed a::before { width: 100%; height: 160%; bottom: 0; left: 0; 
	transform-origin: bottom center; transform: translateY(60%); 
	background-image: radial-gradient(ellipse farthest-side, rgb(173, 0, 0) 0%, rgba(173, 0, 0,0) 100%); }
.basicBtnRed a span::before { width: 80%; height: 160%; top: 0; left: 10%; z-index: -1; 
	transform-origin: top center; transform: translateY(-68%); 
	background-image: radial-gradient(ellipse farthest-side, rgb(131, 52, 43) 0%, rgba(131, 52, 43,0) 100%); }
@media screen and (min-width: 641px) {
	.basicBtnRed a {}
	.basicBtnRed a .bB__img { }
	.basicBtnRed a .bB__text { padding: 0.8em 0.4em; font-size: 1.17647vw; }/* font16pt */
	
	.basicBtnRed a { transition: all 0.2s ease 0s; }
	.basicBtnRed a:hover { transform: scale(1.1); }

	.basicBtnRed a::before { transition: all 0.3s ease 0s; }
	.basicBtnRed a:hover::before { transform: scale(1.3) translateY(50%); }

	.basicBtnRed a span::before { transition: all 0.1s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0s; }
	.basicBtnRed a:hover span::before { transform: scale(1.5) translateY(-30%); opacity: 0.8; }
}
@media screen and (min-width: 1361px) {
	.basicBtnRed a .bB__text { font-size: 1.6rem; }
}




/* --------------------------------------------------------
.movieBtn
-------------------------------------------------------- */
.movieBtn { display: block; background: rgba(4,64,75,0.9); color: #fff; position: relative; overflow: hidden; }
.movieBtn::after ,
.movieBtn::before { content: ""; display: block; position: absolute; }

.movieBtn::after { width: 100%; height: 100%; top: 0; left: 50%; 
	transform-origin: top center; transform: translate(-50%,-50%); 
	background-image: radial-gradient(ellipse farthest-side, rgba(65,146,174,0.6) 0%, rgba(65,146,174,0) 100%); }
.movieBtn::before { width: 150%; height: 150%; bottom: 0; left: 50%; 
	transform-origin: bottom center; transform: translate(-50%,50%); 
	background-image: radial-gradient(ellipse farthest-side, rgba(2,84,93,0.6) 0%, rgba(2,84,93,0) 100%); }

.movieBtn .mB__frame { display: block; position: relative; z-index: 1; }
.movieBtn .mB__frame { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: nowrap; flex-wrap: nowrap; 
	-webkit-box-pack: space-between; -ms-flex-pack: space-between; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.movieBtn .mB__frame::before { content: ""; display: block; height: 0; background-repeat: no-repeat; background-position: center; background-size: contain; }

.movieBtn .mB__text { line-height: 1.41; font-feature-settings: "palt"; }
@media screen and (min-width: 641px) {
}



/* --------------------------------------------------------
.-baseControl
-------------------------------------------------------- */
.-baseControl { display: block; width: 100%; height: 100%; top: 0; margin-top: 0; background: rgba(255,0,0,0); }
.swiper-button-prev.-baseControl { left: 0; right: 0; }
.swiper-button-next.-baseControl { left: 0; right: 0; }
.-baseControl::after { content: ""; width: 100%; height: 100%; display: block; position: absolute; top: 0; left: 0; }
.swiper-button-prev.-baseControl::after { background: url("../img/btn_prev.png") center center no-repeat; }
.swiper-button-next.-baseControl::after { background: url("../img/btn_next.png") center center no-repeat; }
.swiper-button-disabled.-baseControl { opacity: 0.5; }
@media screen and (min-width: 641px) {
	.-baseControl::after { transition: all 0.2s ease 0s; -webkit-transition: all 0.2s ease 0s; }
}



/* --------------------------------------------------------
.secTitle
-------------------------------------------------------- */
.secTitle { position: relative; width: 100%; margin: 0 auto; padding-top: calc(156/750*100%); padding-bottom: calc(80/750*100%); }

.secTitle .sTtl__catTtl { width: 100%; margin: 0 auto; }
.secTitle .sTtl__block { width: 100%; margin: calc(23/750*100%) auto 0; background: rgba(0,0,0,0.5); }
.secTitle .sTtl__blc__pagettl { width: 100%; margin: 0 auto; }
@media screen and (min-width: 641px) {
	.secTitle { padding-top: calc(128/1360*100%); padding-bottom: calc(90/1360*100%); }
	
	.secTitle .sTtl__catTtl { width: calc(750/1260*100%); }
	.secTitle .sTtl__block { margin: calc(23/1360*100%) auto 0; }
	.secTitle .sTtl__blc__pagettl { width: calc(750/1260*100%); }
}
@media screen and (min-width: 1361px) {
	.secTitle { padding-top: 128px; padding-bottom: 90px; }
	.secTitle .sTtl__block { margin: 23px auto 0; }
}



/* --------------------------------------------------------
.secHeader
-------------------------------------------------------- */
.secHeader { background: rgba(0,0,0,0.8); position: absolute; top: 0; left: 0; width: 100%; z-index: 9990; 
	display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
.secHeader::before { content: ""; display: block; width: 100%; height: 2px; background: rgba(255,255,255,0.3); position: absolute; bottom: -4px; left: 0; }
.secHeader.fixed { position: fixed; }
@media screen and (min-width: 641px) {
	.secHeader { background: rgba(0,0,0,0.5); }
}
@media screen and (min-width: 1361px) {
}


/* .sHeader__logo
-------------------------------------------------------- */
.sHeader__logo { width: calc(180/750*100%); height: 0; padding-top: calc(90/750*100%); background: #f0f5ff; position: relative; -ms-flex-item-align: start; align-self: flex-start; }
.sHeader__logo a { display: block; width: calc(120/180*100%); position: absolute; top: 0; left: 0; margin-top: calc(6/180*100%); margin-left: calc(20/180*100%); }

.sHeader__logo { transform-origin: right top; transform: skewX(-20deg); }
.sHeader__logo a { transform-origin: right top; transform: skewX(20deg); }
@media screen and (min-width: 641px) {
	.sHeader__logo { width: calc(224/1360*100%); padding-top: calc(118/1360*100%); position: absolute; top: 0; left: 0; }
	.sHeader__logo a { display: block; width: calc(166/224*100%); right: 0; margin-top: calc(3/224*100%); margin-left: auto; margin-right: calc(40/224*100%); }
	
	.sHeader__logo a img { transition: transform 0.2s ease 0s; cursor: pointer; }
	.sHeader__logo a:hover img { transform: scale(1.1); }
}
@media screen and (min-width: 1361px) {
	.sHeader__logo { width: 224px; padding-top: 118px; }
}


/* .sHeader__globalnavArea
-------------------------------------------------------- */
.sHeader__globalnavArea {}
.globalnav__wrap { position: absolute; top: 0; left: 0; transition: opacity .5s, transform .3s; }
.globalnav { margin-top: 2px; }
.globalnav li { display: block; }
.globalnav span { display: block; color: #fff; white-space: nowrap; position: relative; }
.globalnav a { display: block; text-decoration: none; }
.globalnav a:hover { text-decoration: none; }

.globalnav .gnav__item { display: block; width: 100%; border-bottom: 2px solid #333; }
.globalnav .gnav__item_gray { display: block; width: 100%; border-bottom: 2px solid #333; cursor: unset;}

.globalnav .gnav__item .gnav__btn,
.globalnav .gnav__item_gray .gnav__btn { padding: calc(24/750*100%) calc(50/750*100%); position: relative; }
.globalnav .gnav__item.current .gnav__btn{ background: #02143e; }

.globalnav .gnav__lowlistWrap { display: none; width: 100vw; }
.globalnav .gnav__lowlist { width: auto; border-top: 2px solid #333;
	display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
.globalnav .gnav__lowlist .gnav__llst__item { border-bottom: 1px solid #1c1c1c; }
.globalnav .gnav__lowlist .gnav__llst__item span { padding: calc(24/750*100%) calc(50/750*100%) calc(24/750*100%) calc(70/750*100%); }
.globalnav .gnav__lowlist .gnav__llst__item a { }
.globalnav .gnav__lowlist .gnav__llst__item.current { background: #021543; }

@media screen and (max-width: 640px) {
.sHeader__globalnavArea { transition: height .3s; height: 0; }
.sHeader__globalnavArea.open { height: 100vh; }
	
.globalnav__wrap { width: 100vw; height: 100vh; padding-bottom: calc(320/750*100%); margin-top: calc(92/750*100%); background: rgba(0,0,0,0.8); border-top: 2px solid #333; 
	overflow-x: hidden; overflow-y: auto; visibility: hidden; opacity: 0; transform: translateY(-100%); z-index: -1; }
.open .globalnav__wrap { visibility: visible; opacity: 1; transform: translateY(0%); }

.globalnav { width: 100vw; margin-bottom: calc(100/750*100%); }
.globalnav span { font-size: calc(24/750*100vw); }

.globalnav .gnav__item_gray { background: rgba(62, 62, 62, 0.4); }
.globalnav .gnav__item_gray .gnav__btn span { color: rgba(225, 225, 225, 0.5); }

.globalnav .gnav__item_gray div.gnav__btn span::before, 
.globalnav .gnav__item_gray div.gnav__btn span::after,
.globalnav .gnav__item div.gnav__btn span::before, 
.globalnav .gnav__item div.gnav__btn span::after { content: ""; display: block; width: calc(16/750*100vw); height: 2px; background: #fff; position: absolute; top: 50%; right: 0; 
	transition: transform .2s; }
.globalnav .gnav__item_gray div.gnav__btn span::before,
.globalnav .gnav__item div.gnav__btn span::before { transform-origin: center center; transform: rotate(45deg); right: calc(10/750*100vw); }
.globalnav .gnav__item_gray div.gnav__btn span::after,
.globalnav .gnav__item div.gnav__btn span::after { transform-origin: center center; transform: rotate(-45deg); right: calc(0/750*100vw); }

.globalnav .gnav__item div.gnav__btn.open span::before { transform: rotate(-45deg); } 
.globalnav .gnav__item div.gnav__btn.open span::after { transform: rotate(45deg); }

}
@media screen and (min-width: 641px) {
	.sHeader__globalnavArea { width: auto; margin-left: calc(227/1360*100%); position: relative; }
	.globalnav__wrap { width: 100%; height: 100%; position: relative; }
	.globalnav { height: 100%; margin-top: 0; 
		display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; 
		-ms-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; }
	.globalnav li { position: relative; cursor: pointer; }
	.globalnav span { font-feature-settings: "palt"; }
	.globalnav a {}
	.globalnav a:hover {}
	.globalnav .gnav__item_gray,
	.globalnav .gnav__item { width: auto; height: 100%; background: rgba(0,0,0,0.7); border-bottom: none; margin-right: calc(3/1360*100%); 
		transition: background .2s; 
		transform-origin: right top; transform: skewX(-20deg); 
		display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
	.globalnav .gnav__item_gray { background: rgba(62, 62, 62, 0.4); }
	.globalnav .gnav__item_gray .gnav__btn span,
	.globalnav .gnav__item .gnav__btn span { font-size: 1.17647vw; text-align: center; transform-origin: center; transform: skewX(20deg); }
	.globalnav .gnav__item_gray .gnav__btn span { color: rgba(225, 225, 225, 0.5); }
	.globalnav .gnav__item_gray .gnav__btn,
	.globalnav .gnav__item .gnav__btn { height: 100%; padding: calc(20/1360*100vw) calc(20/1360*100vw); border-bottom: 2px solid transparent; overflow: hidden; 
		transition: all .2s; 
		display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
	.globalnav .gnav__item_gray .gnav__btn::before,
	.globalnav .gnav__item .gnav__btn::before { content: ""; display: block; width: 100%; height: 100%; position: absolute; left: 0; bottom: 0; opacity: 0; 
		transition: all .3s; 
		transform-origin: bottom center; transform: translateY(50%) scale(0); 
		background-image: radial-gradient(ellipse farthest-side, rgba(222,250,255,1) 0%, rgba(97,231,255,0.5) 50%, rgba(0,24,79,0) 100%); }
	
	.globalnav .gnav__item.current, 
	.globalnav .gnav__item:hover { background: rgba(0,24,79,0.8); transform: skewX(-20deg); }
	.globalnav .gnav__item.current .gnav__btn, 
	.globalnav .gnav__item:hover .gnav__btn { border-bottom-color: #00c9ff; background: linear-gradient(to bottom,  rgba(0,22,73,0) 0%,rgba(0,156,255,0.7) 100%); }
	.globalnav .gnav__item.current .gnav__btn::before,
	.globalnav .gnav__item:hover .gnav__btn::before { opacity: 0.5; transform: translateY(50%) scale(1); }
	
	
	.globalnav .gnav__lowlistWrap { display: block!important; width: auto; opacity: 0; position: absolute; top: 100%; left: 0; padding-top: 4px; z-index: 1000; transform-origin: left top; transform: skewX(20deg); 
		transition: opacity .3s; pointer-events: none; }
	.globalnav .gnav__lowlistWrap.open { opacity: 1; pointer-events: auto; }
	
	.globalnav .gnav__lowlist { background: rgba(0,0,0,0.9); border-top: none; 
		pointer-events: none; transition: transform .2s; transform: translateY(20px); }
	
	.globalnav .gnav__lowlistWrap.open .gnav__lowlist { transform: translateY(0px); pointer-events: auto; }
	
	.globalnav .gnav__lowlist .gnav__llst__item { border-bottom: none; transition: background .3s; }
	.globalnav .gnav__lowlist .gnav__llst__item span { padding: 1.4em 1.8em; }
	.globalnav .gnav__lowlist .gnav__llst__item span { font-size: 1.02941vw; }
	.globalnav .gnav__lowlist .gnav__llst__item a { display: block; }
	.globalnav .gnav__lowlist .gnav__llst__item.current, 
	.globalnav .gnav__lowlist .gnav__llst__item:hover { background: #004180; }
	
	
}
@media screen and (min-width: 1361px) {
	.sHeader__globalnavArea { margin-left: 227px; }
	.globalnav .gnav__item_gray .gnav__btn ,
	.globalnav .gnav__item .gnav__btn { padding: 20px 20px; }
	.globalnav .gnav__item_gray .gnav__btn span,
	.globalnav .gnav__item .gnav__btn span { font-size: 1.6rem; }
	.globalnav .gnav__lowlist .gnav__llst__item span { font-size: 1.4rem; }
}




/* .sHeader__appArea
-------------------------------------------------------- */
.sHeader__appArea { width: calc(150/750*100%); position: relative; margin-right: calc(90/750*100%); background: rgba(248,65,40,0.8); }
.sHeader__appArea__inner { position: relative; width: 100%;
	display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }

.sH__appA__btn { width: 100%; position: relative; }
.sH__appA__btn__txt { width: 100%; line-height: 1.41; font-size: calc(18/750*100vw); text-align: center; z-index: 1; }

.sH__appA__select { width: 100%; opacity: 0; pointer-events: none; position: absolute; top: 0; right: 0; padding-top: calc(90/150*100% + 4px); padding-bottom: calc(30/150*100%); 
	transition: opacity .3s, transform .2s; transform: translateY(20px); }
.sH__appA__slct__list { width: calc(350/150*100%); padding: calc(30/150*100%) 0; margin-left: calc(-120/150*100%); background: rgba(248,65,40,0.8); }
.sH__appA__slct__item { width: calc(150/200*100%); margin: calc(20/200*100%) auto 0; position: relative; cursor: pointer; }
.sH__appA__slct__item:first-child { margin-top: 0; }

@media screen and (max-width:640px) {
.sHeader__appArea { height: 0; padding-top: calc(90/750*100%); }
.sHeader__appArea__inner { position: absolute; top: 0; left: 0; height: 100%; }
.open .sH__appA__select { opacity: 1; transform: translateY(0px); pointer-events: auto; }
}
@media screen and (min-width: 641px) {
	.sHeader__appArea { width: calc(180/1360*100%); margin: 0; }
	.sHeader__appArea__inner { height: 100%; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
	
	.sH__appA__btn { align-self: center; }
	.sH__appA__btn__txt { font-feature-settings: "palt"; font-size: 1.37867vw; transform-origin: center; transform: scale(0.8); }
	.sH__appA__btn__txt br { display: none; }
	
	.sH__appA__select { top: 100%; padding-top: 4px; padding-bottom: 0; }
	.sH__appA__slct__list { width: 100%; padding: calc(30/180*100%) 0; margin: 0; }
	.sH__appA__slct__item { width: calc(140/180*100%); margin: calc(20/180*100%) auto 0; }
	.sH__appA__slct__item:first-child { margin-top: 0; }
	
	.sH__appA__slct__item a { display: block; transition: transform 0.2s ease 0s; cursor: pointer; }
	.sH__appA__slct__item a:hover { transform: scale(1.1); }
	
	.sHeader__appArea:hover .sHeader__appArea__inner .sH__appA__select { opacity: 1; transform: translateY(0px); pointer-events: auto; }
}
@media screen and (min-width: 1361px) {
	.sHeader__appArea { width: 180px; }
	
	.sH__appA__btn__txt { font-size: 1.875rem; }
}


/* .sHeader__spBtn
-------------------------------------------------------- */
.sHeader__spBtn { background: #222222; display: block; width: calc(90/750*100%); height: 0; padding-top: calc(90/750*100%); position: absolute; top: 0; right: 0; z-index: 1000; }
.sHeader__spBtn__line { display: block; width: calc(36/90*100%); height: 2px; position: absolute; top: 50%; left: 50%; margin-top: -1px; background-color: #fff; 
	transform: translateX(-50%); }
.sHeader__spBtn__line::before, 
.sHeader__spBtn__line::after { content: ""; display: block; width: 100%; height: 100%; background-color: #fff; position: absolute; top: 0; left: 0; }
.sHeader__spBtn__line::before { margin-top: calc(-12/36*100%); }
.sHeader__spBtn__line::after { margin-top: calc(12/36*100%); }
.sHeader__spBtn__line, 
.sHeader__spBtn__line::before, 
.sHeader__spBtn__line::after { transition: all 0.2s; }

.active .sHeader__spBtn__line { background-color: transparent; }
.active .sHeader__spBtn__line::before { margin-top: 0; transform: rotate(-45deg); }
.active .sHeader__spBtn__line::after { margin-top: 0; transform: rotate(45deg); }
@media screen and (min-width: 641px) {
	.sHeader__spBtn { display: none; }
}



/* ----------------------------------------------------------------------------------------------------------------
.secSpec
---------------------------------------------------------------------------------------------------------------- */
.secSpec { position: relative; width: 100%; margin: calc(90/750*100%) auto 0; }
.sSpec__spec { width: calc(650/750*100%); margin: 0 auto; position: relative; }
@media screen and (min-width: 641px) {
	.secSpec { margin: calc(80/1360*100%) auto 0; }
	.sSpec__spec { width: 100%; }
}
@media screen and (min-width: 1361px) {
	.secSpec { margin-top: 80px; }
}



/* ----------------------------------------------------------------------------------------------------------------
.secLinks
---------------------------------------------------------------------------------------------------------------- */
.secLinks { position: relative; width: 100%; margin: auto; }
.sLink__relatedLinks { width: 100%; margin: calc(45/750*100%) auto 0; padding-bottom: calc(120/750*100%); position: relative; 
	display: -webkit-flex; display: flex; -webkit-flex-wrap: nowrap; flex-wrap: nowrap; -webkit-justify-content: center; justify-content: center; }
.sLink__relatedLinks::before { content: ""; display: block; width: 100%; height: 0; padding-top: calc(197/750*100%); background: rgba(0,17,30,1.0); position: absolute; left: 0; bottom: 0; }
.sLink__relatedLinks .sLink__rL__item { width: calc(210/750*100%); margin: 0 calc(5/750*100%); position: relative; }
.sLink__relatedLinks .sLink__rL__item .btn { display: block; position: relative; }
@media screen and (min-width: 641px) {
	.secLinks {}
	.sLink__relatedLinks { margin: calc(25/1360*100%) auto 0; padding-bottom: calc(24/1360*100%); }
	.sLink__relatedLinks::before { padding-top: calc(60/1360*100%); background: #051e31; }
	.sLink__relatedLinks .sLink__rL__item { width: calc(400/1360*100%); margin: 0 calc(15/1360*100%); }
	
	.sLink__relatedLinks .sLink__rL__item .btn::after { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; opacity: 0; }
	.sLink__relatedLinks .sLink__rL__item.-ig .btn::after { background: url("../img/bnr/ig_on_pc.png"); background-size: 100%; }
	.sLink__relatedLinks .sLink__rL__item.-re .btn::after { background: url("../img/bnr/re_on_pc.png"); background-size: 100%; }
	.sLink__relatedLinks .sLink__rL__item.-ec .btn::after { background: url("../img/bnr/ec_on_pc.png"); background-size: 100%; }
	
	.sLink__relatedLinks .sLink__rL__item .btn:hover::after { opacity: 1; }
}
@media screen and (min-width: 1361px) {
	.sLink__relatedLinks { margin: 25px auto 0; padding-bottom: 24px; }
	.sLink__relatedLinks::before { padding-top: 60px; }
	.sLink__relatedLinks .sLink__rL__item { width: 400px; margin: 0 15px; }
}



/* --------------------------------------------------------
#pageTop
-------------------------------------------------------- */
#pageTop { width: 100%; position: absolute; left: 0; bottom: 0; }
#pageTop a { display: block; width: 100%; height: 0; padding-top: calc(74/750*100%); background: url(../img/btn_pagetop_sp.png) center bottom no-repeat; background-size: 100%; position: relative; }
#pageTop a span { display: block; text-indent: 100%; white-space: nowrap; overflow: hidden; }
@media screen and (min-width: 641px) {
	#pageTop { width: calc(50/1360*100%); left: inherit; right: 0; -webkit-transition: .1s ease-in-out; transition: .1s ease-in-out; transform: translateX(0%);}
	#pageTop.bef { transform: translateX(150%); }
	#pageTop.fixed { position: fixed; z-index: 99; }
	#pageTop a { padding-top: 100%; background: url(../img/btn_pagetop_pc.png) center center no-repeat; background-size: 100%; }
	#pageTop a { -webkit-transform: scale(1.0); transform: scale(1.0); -webkit-transition: .1s ease-in-out; transition: .1s ease-in-out; -webkit-backface-visibility: hidden; display: block; transform-origin: right bottom; }
	#pageTop a:hover { -webkit-transform: scale(1.15); transform: scale(1.15); }

}
@media screen and (min-width: 1361px) {
	#pageTop { width: 50px; }
}



/* --------------------------------------------------------
汎用クラス
-------------------------------------------------------- */
@media screen and (max-width: 640px) {
.nosp { display: none; }
}
@media screen and (min-width: 641px) {
	.nopc { display: none; }
}

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



/* ----------------------------------------------------------------------------------------------------------------
magnific
---------------------------------------------------------------------------------------------------------------- */
.modal_mfpYt.mfp-bg ,
.modal_mfpImg.mfp-bg ,
.modal_mfpIframe.mfp-bg ,
.modal_mfpImgGallery.mfp-bg ,
.modal_mfpInline.mfp-bg { z-index: 9998; opacity: 0.9;}
.modal_mfpYt.mfp-wrap ,
.modal_mfpImg.mfp-wrap ,
.modal_mfpIframe.mfp-wrap ,
.modal_mfpImgGallery.mfp-wrap ,
.modal_mfpInline.mfp-wrap { z-index: 9999;}
.modal_mfpYt .mfp-iframe-holder .mfp-content { max-width: 1080px; }
.modal_mfpImg .mfp-iframe-holder .mfp-content ,
.modal_mfpImgGallery .mfp-iframe-holder .mfp-content { max-width: 1280px; }
.modal_mfpIframe .mfp-iframe-holder .mfp-content { max-width: 1280px; }

.modal_mfpYt .mfp-iframe-holder .mfp-close ,
.modal_mfpImg .mfp-image-holder .mfp-close ,
.modal_mfpIframe .mfp-iframe-holder .mfp-close ,
.modal_mfpImgGallery .mfp-image-holder .mfp-close ,
.modal_mfpInline .mfp-inline-holder .mfp-close { position: fixed; top: 0; right: 0; background: url(../img/btn_close.png) top right no-repeat; background-size: auto 100%; background-position: calc(100% - 10px) 0px;}
.modal_mfpImg img,
.modal_mfpIframe img,
.modal_mfpImgGallery img {
-webkit-touch-callout:none;
-webkit-user-select:none;
-moz-touch-callout:none;
-moz-user-select:none;
touch-callout:none;
user-select:none;
}

/* .modal_mfpImgGallery ---------------------------------------------------------------------------------------------------------------- */
.modal_mfpImgGallery .mfp-arrow { opacity: 0.5; width: 20%; height: 80%; top:10%; margin-top: 0;}
.modal_mfpImgGallery .mfp-arrow:active { margin-top: 0; }
.modal_mfpImgGallery .mfp-arrow:before,
.modal_mfpImgGallery .mfp-arrow:after { display: none; }
.modal_mfpImgGallery .mfp-arrow-left { background: url(../img/btn_prev.png) center center no-repeat; }
.modal_mfpImgGallery .mfp-arrow-right { background: url(../img/btn_next.png) center center no-repeat; }
@media screen and (min-width: 641px) {
	.modal_mfpImgGallery .mfp-arrow { opacity: 0.5; width: 100px;}
	.modal_mfpImgGallery .mfp-arrow:hover { opacity: 1; }
}

/* .modal_mfpIframe ---------------------------------------------------------------------------------------------------------------- */
.modal_mfpIframe .mfp-container { padding: 30px 0;}
.modal_mfpIframe .mfp-iframe-scaler { padding-top: calc(640/640*100%);}
.modal_mfpIframe .mfp-iframe-scaler .mfp-iframe { background: transparent!important; box-shadow: none;}
@media screen and (min-width: 641px) {
	.modal_mfpIframe .mfp-iframe-scaler { padding-top: calc(500/1360*100%);}
}
@media screen and (min-width: 1361px) {
	.modal_mfpIframe .mfp-iframe-scaler { padding-top: 500px;}
}

/* .modal_mfpInline ---------------------------------------------------------------------------------------------------------------- */
.modal_mfpInline .mfp-container { font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "Meiryo", "Helvetica Neue", Arial, sans-serif; }
.modal_mfpInline .mfp-container img { max-width: 100%; height: auto;}
.modal_mfpInline .mfp-container { padding: 0;}
.modal_mfpInline .mfp-inline-holder .mfp-close { width: 100%; }
.modal_mfpInline .mfp-arrow { opacity: 0.5; width: 20%; height: 80%; top:10%; margin-top: 0;}
.modal_mfpInline .mfp-arrow:active { margin-top: 0; }
.modal_mfpInline .mfp-arrow:before,
.modal_mfpInline .mfp-arrow:after { display: none; }
.modal_mfpInline .mfp-arrow-left { background: url(../img/btn_prev.png) 20% center no-repeat; }
.modal_mfpInline .mfp-arrow-right { background: url(../img/btn_next.png) 80% center no-repeat; }
@media screen and (min-width: 641px) {
	.modal_mfpInline .mfp-arrow { opacity: 0.5; width: 100px;}
}
@media screen and (min-width: 1361px) {
}



