@charset "UTF-8";
/* Scss Document */
html, body, p, ol, ul, li, dl, dt, dd, blockquote, figure, fieldset, legend, textarea, pre, iframe, hr, h1, h2, h3, h4, h5, h6 { margin: 0; padding: 0; }
h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal; }
ul { list-style: none; }
button, input, select, textarea { margin: 0; }
html { box-sizing: border-box; }
*, *:before, *:after { box-sizing: inherit; }
img, embed, iframe, object, video { height: auto; /* max-width: 100%; */ }
audio { max-width: 100%; }
iframe { border: 0; }
table { border-collapse: collapse; border-spacing: 0; }
td, th { padding: 0; text-align: left; }
textarea, input[type="email"], input[type="password"], input[type="text"], input[type="button"], input[type="submit"] { -webkit-appearance: none; }
textarea { resize: vertical; }
input:-webkit-autofill { -webkit-box-shadow: 0 0 1000px white inset; outline: none; }
input, button { outline: none; }
area { border: none; outline: none; }
img { -ms-interpolation-mode: bicubic; }
* { -webkit-tap-highlight-color: rgba(0, 255, 208, 0.3); max-height: 999999px; }
*::before, *::after { will-change: all; box-sizing: border-box; }
em, i, b { font-weight: normal; font-style: normal; }
body { -webkit-text-size-adjust: 100%; -webkit-font-smoothing: antialiased; font-family: "M PLUS Rounded 1c","Roboto", "Droid Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif; }
input, textarea, select { font-family: "M PLUS Rounded 1c","Roboto", "Droid Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif; }
a { cursor: pointer; text-decoration: none; }
a:link { color: #00ffd0; }
a:visited { color: #00ffd0; }
a:hover { color: #fff; text-decoration: none; }
a:active { color: #fff; }
.clr { clear: both; }
.hide { position: absolute !important; left: -9999px !important; top: -9999px !important; }
section { clear: both; zoom: 1; }
article:after, section:after, .clrFx:after { content: ''; clear: both; display: block; }
h2 { font-family: 'Black Ops One'; }

@media screen and (min-width: 781px) { .sp-item { display: none !important; }
  /*  	PC STYLE  *************************************************************/
  body { position: static; overflow: auto; width: auto; *overflow-y: hidden; color: #000; font-size: 20px; line-height: 1.5; z-index: 0; min-width: 1280px; }
  body main { width: 100%; height: 100%; padding: 0; position: relative; overflow: hidden; display: block; }
  /*body main::after { content: ""; width: 1223px; height: 850px; position: absolute; top: 95px; left: 30px; right: 0; margin: auto; z-index: 0; background: url("/ms/img/kv_bg.png") no-repeat center bottom; background-size: contain; }*/
  body main .info { position: absolute; right: 0; top: 73px; z-index: 200; }
  body main .info .inner { display: flex; transform: translateX(411px); transition: 0.5s; }
  body main .info .inner .btn { cursor: pointer; width: 79px; height: 226px; transform: translateX(12px); text-indent: 200%; white-space: nowrap; overflow: hidden; transition: filter 0.3s; }
  body main .info .inner .btn:hover { filter: brightness(1.2); }
  body main .info .inner .box { width: 411px; height: 394px; background: url("/ms/img/news_bg.png") no-repeat left top; background-size: auto 100%; padding: 35px 30px 35px 42px; }
  body main .info .news .btn { background: url("/ms/img/news_close.png") no-repeat left bottom; background-size: auto 100%; align-self: flex-end; }
  body main .info .news .btn .date { width: 36px; height: 36px; background: #f33651; color: #fff; font-size: 11px; font-weight: bold; border-radius: 50%; text-align: center; line-height: 36px; margin: 0 auto; display: block; text-indent: 0; white-space: wrap; overflow: visible; }
  body main .info .news .box div { height: 308px; overflow: scroll; overflow-x: hidden; }
  body main .info .news .box div dl { width: 332px; padding: 0 20px 25px 0; border-bottom: 1px #fff solid; }
  body main .info .news .box div dl + dl { padding: 25px 20px 25px 0; }
  body main .info .news .box div dl dt { font-size: 16.7px; font-weight: bold; line-height: 1.44; letter-spacing: 0.7px; color: #00ffd0; transform: rotate(0.05deg)}
  body main .info .news .box div dl dd { font-size: 15.7px; line-height: 1.6; letter-spacing: 0.3px; text-align: left; color: #ffffff; transform: rotate(0.05deg)}
  body main .info .twitter { margin-top: 20px; }
  body main .info .twitter .btn { background: url("/ms/img/twitter_close.png") no-repeat left bottom; background-size: auto 100%; }
  body main .info .twitter .box .timeline { width: 411px; height: 394px; overflow: hidden; }
  body main .info .twitter .box iframe.twitter-timeline { max-width: inherit !important; width: 351px !important; margin-left: -11px; }
  body main .info .twitter .twitter_bnr { display: none; }
  body main .info .news.active, body main .info .twitter.active { transform: translateX(12px); }
  body main .info .news.active .btn { background: url("/ms/img/news_open.png") no-repeat left bottom; }
  body main .info .twitter.active .btn { background: url("/ms/img/twitter_open.png") no-repeat left bottom; }
  .spbr { display: none; }
  .pc_none { display: none; }
  .youtubeloaded #bg { opacity: 1; }
  #bg { position: fixed; left: 0; top: 0; z-index: -1; transform: scale(1.17); opacity: 0; transition: 1s 1s ease-out; }
  #bg #bg_img { width: 100%; height: 100%; background: url("/ms/img/bg.jpg") center top no-repeat; background-size: cover; }
  #kvcontents { width: 100%; margin: 0 auto; position: relative; z-index: 200; min-height: 995px; }
  #kvcontents .inner { max-width: 1920px; margin: 0 auto; position: relative; }
  #kvcontents .inner h1 { width: 393px; position: absolute; top: 38px; left: 22px; }
  #kvcontents .inner h1 span { display: block; width: 268px; height: 44px; margin: 17px 0 0 40px; background: url("/ms/img/logo-bg.png") no-repeat left top; background-size: 100% auto; font-family: 'Oswald'; font-size: 25px; font-weight: bold; color: #fff; text-align: center; line-height: 44px; letter-spacing: 2.3px; }
  #kvcontents .inner .kv { width: 721px; min-height: 943px; margin: 0 auto; position: relative; }
  #kvcontents .inner .kv picture { position: absolute; left: 50px; top: 0; }
  #kvcontents .inner .kv + h2 { width: 300px; height: 943px; text-indent: 100%; position: absolute; top: 0; right: 0; background: url("/ms/img/kv_text01.png") no-repeat; text-indent: 150%; white-space: nowrap; overflow: hidden; }
  #kvcontents #dl_btn{position: absolute;left:67px;top:260px;}
  #kvcontents #dl_btn .pc-item a{display: block;transition: opacity 0.2s}
  #kvcontents #dl_btn .pc-item a:hover{opacity: 0.7}
  body main #kvcontents::after { content: ""; width: 1223px; height: 850px; position: absolute; top: 95px; left: 30px; right: 0; margin: auto; z-index: -1; background: url("/ms/img/kv_bg.png") no-repeat center bottom; background-size: contain; }
  .sp_menu { display: none; }
  nav { position: absolute; z-index: 9999999; bottom: 0; width: 100vw; min-width: 1280px; height: 52px; background: #000; border-top: 2px solid #00ffd0; overflow: hidden; transform: translate3d(0, 0, 0); }
  nav ul { min-width: 1280px; display: flex; justify-content: center; align-items: center; }
  nav ul li a { display: block; padding: 4px 25px 0; font-family: 'Black Ops One'; font-size: 30px; transition: 0.3s;letter-spacing: 0.06em }
  nav.fixed { min-width: 1280px; position: fixed; top: 0 !important; z-index: 9999999; }
  nav ul li a:hover, nav ul li a.current { color: #fff !important; }
  #about { width: 100vw; height: 764px; margin: 0 auto; background: url("/ms/img/about/about_bg.png") no-repeat left top; display: flex; background-size: 100% auto; min-width: 1280px; }
  #about .wrap { position: relative; min-width: 1280px; margin: 0 auto; }
  #about .wrap picture { position: absolute; top: 18px; left: -220px; }
  #about .wrap div { position: absolute; top: 230px; right: 65px; z-index: 100; }
  #about .wrap div h2 { font-size: 121.5px; line-height: 1.0; letter-spacing: -2.4px; }
  #about .wrap div .catch { width: 615px; height: 115px; background: url("/ms/img/about/about_text.png") no-repeat left top; text-indent: 200%; white-space: nowrap; overflow: hidden; margin-top: 10px; }
  #about .wrap div p { text-shadow: 0 0 17.5px #ffffff; font-size: 21px; line-height: 1.88; letter-spacing: -0.4px; text-align: left; }
  #about .wrap div p + p { margin-top: 35px; }
  #about .wrap div + div { margin-left: 35px; }
  #character { position: relative; }
  #character .chara_wrap .swiper-container.character { position: relative; overflow: visible; }
  #character .chara_wrap .swiper-container.character .swiper-button-prev { position: absolute; top: 366px; left: 0 !important; right: 1255px !important; margin: auto; }
  #character .chara_wrap .swiper-container.character .swiper-button-next { position: absolute; top: 366px !important; right: 0 !important; left: 1150px !important; margin: auto; }
  #character .chara_wrap .swiper-container.character .swiper-slide { height: 1053px; overflow: visible; min-width: 1280px; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner { width: 1280px; margin: 0 auto; position: relative; z-index: 1; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner:after { content: ""; width: 951px; height: 1006px; background: url("/ms/img/character/arase/character_bg.png") no-repeat left top; background-size: 100% auto; position: absolute; top: -115px; right: 0; padding-top: 65px; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner div { width: 618px; position: absolute; top: 183px; left: 0; text-align: center; z-index: 1; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner div h2 { font-size: 41px; line-height: 1.0; letter-spacing: -0.8px; text-shadow: 0 0 31px #ffffff; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner div h3 { width: 337px; height: 67px; margin: 13px auto 0; background: url("/ms/img/character/arase/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; white-space: nowrap; overflow: hidden; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner div .title { width: 296px; height: 49px; margin: 25px auto 0; background: url("/ms/img/character/series_title.png") no-repeat left top; background-size: 100% auto; text-align: center; line-height: 49px; color: #fff; font-family: 'Oswald'; font-weight: bold; font-weight: bold; letter-spacing: 3.2px; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner div .introduction { margin-top: 17px; font-size: 25px; line-height: 1.76; letter-spacing: -0.5px; text-align: center; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner .bg_name { width: 1280px; font-family: 'Orbitron'; font-size: 140px; -webkit-text-stroke: 3px #f33651; color: transparent; font-weight: bold; line-height: 1.16; letter-spacing: -3.1px; text-align: left; position: absolute; top: 584px; left: 120px; z-index: 1; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner .bg_name span:nth-of-type(even) { -webkit-text-stroke: 3px #949494; text-stroke: 3px #949494; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner img { position: absolute; top: 30px; right: 110px; z-index: 5; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.secret:after { content: ""; width: 1055px; height: 1006px; background: url("/ms/img/character/secret/character_bg.png") no-repeat left top; background-size: 100% auto; top: -90px; right: 0; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.secret h3 { width: 463px; height: 65px; background: url("/ms/img/character/secret/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.secret img { top: -5px; right: -50px; }
	#character .chara_wrap .swiper-container.character .swiper-slide .inner.secret .bg_name{font-size: 140px;}
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.hisaki:after { content: ""; width: 951px; height: 1006px; background: url("/ms/img/character/hisaki/character_bg.png") no-repeat left top; background-size: 100% auto; top: -110px; right: 0; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.hisaki h3 { width: 337px; height: 67px; background: url("/ms/img/character/hisaki/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.hisaki img { top: 80px; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.hikaru:after { content: ""; width: 951px; height: 1006px; background: url("/ms/img/character/hikaru/character_bg.png") no-repeat left top; background-size: 100% auto; top: -95px; right: 20px; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.hikaru h3 { width: 191px; height: 63px; background: url("/ms/img/character/hikaru/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.hikaru img { top: 90px; right: 125px; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.ikki:after { content: ""; width: 951px; height: 1006px; background: url("/ms/img/character/ikki/character_bg.png") no-repeat left top; background-size: 100% auto; top: -90px; right: 0; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.ikki h3 { width: 239px; height: 66px; background: url("/ms/img/character/ikki/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.ikki img { top: 100px; right: 150px; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.ikki .bg_name { left: 162px; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.koishimaru:after { content: ""; width: 1028px; height: 1006px; background: url("/ms/img/character/koishimaru/character_bg.png") no-repeat left top; background-size: 100% auto; top: -90px; right: 0; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.koishimaru h3 { width: 329px; height: 70px; background: url("/ms/img/character/koishimaru/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.koishimaru img { top: 105px; right: 145px; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.azuma:after { content: ""; width: 951px; height: 1006px; background: url("/ms/img/character/azuma/character_bg.png") no-repeat left top; background-size: 100% auto; top: -100px; right: 0; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.azuma h3 { width: 200px; height: 66px; background: url("/ms/img/character/azuma/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.azuma img { top: 38px; right: 168px; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.soruto:after { content: ""; width: 951px; height: 1006px; background: url("/ms/img/character/soruto/character_bg.png") no-repeat left top; background-size: 100% auto; top: -95px; right: 0; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.soruto h3 { width: 196px; height: 64px; background: url("/ms/img/character/soruto/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.soruto img { top: 40px; right: 124px; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.tenma:after { content: ""; width: 951px; height: 1006px; background: url("/ms/img/character/tenma/character_bg.png") no-repeat left top; background-size: 100% auto; top: -95px; right: 5px; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.tenma h3 { width: 195px; height: 61px; background: url("/ms/img/character/tenma/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.tenma img { right: 150px; top: 20px; }
  #character .character_nav { position: absolute; width: 726px; bottom: 140px; right: 470px; left: 0; margin: auto; }
  #character .character_nav .frame { position: relative; width: 100vw; height: 100%; }
  #character .character_nav .frame:before { content: ""; width: 85px; height: 108px; background: url("/ms/img/character/character_nav_left.png") no-repeat left top; background-size: 100% auto; position: absolute; top: -5px; left: -6px; z-index: 1; }
  #character .character_nav .frame:after { content: ""; width: 85px; height: 108px; background: url("/ms/img/character/character_nav_right.png") no-repeat left top; background-size: 100% auto; position: absolute; bottom: -5px; left: 646px; z-index: 0; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs { overflow: visible; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper { align-content: center; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide { overflow: hidden; position: relative; width: 72px !important; height: 155px; overflow: hidden; border: 2px solid #858585; transform: skewX(-17deg); transition: filter 0.2s; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide:hover { filter: brightness(1.2); }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide span { display: block; cursor: pointer; width: 125px !important; height: 159px; background: url("/ms/img/character/nav_bg.png") no-repeat right top; background-size: auto 100%; transform: skewX(17deg); position: absolute; right: -26px; transition: 0.3s; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide span img { max-width: inherit; width: auto; height: 159px; position: absolute; right: 0; bottom: 0; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide + .swiper-slide { margin-left: 5px; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide.swiper-slide-thumb-active { transition: none; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide.swiper-slide-thumb-active span { background: url("/ms/img/character/nav_bg_on.png") no-repeat right top; background-size: auto 100%; position: absolute; right: -26px; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide.swiper-slide-thumb-active:hover { filter: brightness(1); }
  #system { width: 100vw; position: relative; overflow: hidden; min-width: 1280px;padding-bottom: 70px }
  #system div { width: 1024px; overflow: visible; margin: 0 auto; position: relative; }
  #system div h2 { font-size: 121.5px; line-height: 154.5px; letter-spacing: -2.4px; position: absolute; left: 0; top: -4px;}
  #system div .swiper-container.system-thumbs { width: 50%; position: absolute; top: 25px; right: -20px; }
  #system div .swiper-container.system-thumbs .swiper-slide { width: 100%; opacity: 0 !important; }
  #system div .swiper-container.system-thumbs .swiper-slide h3 { width: 427px; height: 48px; background: url("/ms/img/system/system_text01.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; white-space: nowrap; overflow: hidden; }
  #system div .swiper-container.system-thumbs .swiper-slide:nth-child(2) h3 { background: url("/ms/img/system/system_text02.png") no-repeat left top; background-size: 100% auto; }
  #system div .swiper-container.system-thumbs .swiper-slide:nth-child(3) h3 { background: url("/ms/img/system/system_text03.png") no-repeat left top; background-size: 100% auto; }
  #system div .swiper-container.system-thumbs .swiper-slide:nth-child(4) h3 { background: url("/ms/img/system/system_text04.png") no-repeat left top; }
  #system div .swiper-container.system-thumbs .swiper-slide:nth-child(5) h3 { background: url("/ms/img/system/system_text05.png") no-repeat left top; }
  #system div .swiper-container.system-thumbs .swiper-slide p { font-size: 18px; line-height: 1.69; letter-spacing: -0.5px; margin-top: 10px; width: 600px;transform: rotate(0.05deg)}
  #system div .swiper-container.system-thumbs .swiper-slide.swiper-slide-active { opacity: 1 !important; }
  #system div .swiper-container.system-thumbs .swiper-pagination.system { opacity: 0; }
  #system .swiper-container.system { overflow: visible; margin-top: 170px; }
  #system .swiper-container.system .swiper-slide { margin: 0 8px; }
  #system .swiper-container.system .swiper-button-prev { position: absolute; top: 10px; bottom: 0; right: 0; left: -1041px !important; margin: auto; }
  #system .swiper-container.system .swiper-button-next { position: absolute; top: 10px; bottom: 0; right: -1041px !important; left: 0; margin: auto; }
  #special {min-width: 1280px}
  #special .wrap {padding-top: 30px;}
  #special .wrap h2{font-size: 121px;letter-spacing: -0.02em;text-align: center}
  #special .inner{width:1400px;margin: 0 auto;text-align: center;display: flex;flex-wrap: wrap;justify-content: center ;padding:0 10px}
  #special .youtubelink {max-width:690px;padding:0 30px;margin-top: 50px;}
  #special .youtubelink p{transform: rotate(0.05deg);font-size: 31px;letter-spacing: 0.04em;padding-top: 20px;line-height: 1.2}
  #special .youtubelink a{display: block;width:630px;height: 354px;position: relative;overflow: hidden;}
  #special .youtubelink a:after{content:"";width:158px;height: 158px;background: url("/ms/img/play_btn.png")no-repeat left top;background-size: 100% auto;position: absolute;top:0;left:0;right: 0;bottom:0;margin: auto;filter: brightness(1);transition: filter 0.2s }
  #special .youtubelink a:hover:after{filter:brightness(1.1)}
  #special a img{width: 100%;transition: transform 0.2s ease}
  #special a:hover img{transform: scale(1.1);transition: transform 0.3s ease}
  .bg_wrap { position: relative; z-index: 199; width: 100vw; overflow: hidden; min-width: 1280px; margin: 0 auto; }
  .swiper-container .swiper-button-prev { content: ""; width: 137px; height: 127px; background: url("/ms/img/btn_prev.png") no-repeat center; background-size: contain; transition: filter 0.3s; }
  .swiper-container .swiper-button-prev:hover { filter: brightness(1.2); }
  .swiper-container .swiper-button-next { content: ""; width: 137px; height: 127px; background: url("/ms/img/btn_next.png") no-repeat center; background-size: contain; transition: filter 0.3s; }
  .swiper-container .swiper-button-next:hover { filter: brightness(1.2); }
  footer { overflow: hidden;padding-top: 100px }
  footer a { transition: filter 0.3s; }
  footer a:hover { filter: brightness(1.2); }
  footer .spec { text-align: center; }
  footer .spec dl { display: flex; justify-content: center; font-size: 16px; }
  footer .spec dl dt { margin: 0; height: 28px; line-height: 28px; padding: 0 9px; background: #000000; color: #00ffe1; position: relative; }
  footer .spec dl dt:before { content: ""; width: 0; height: 0; border-style: solid; border-width: 14px 8px 14px 0; border-color: transparent #000000 transparent transparent; position: absolute; top: 0; left: -8px; }
  footer .spec dl dt:after { content: ""; width: 0; height: 0; border-style: solid; border-width: 14px 0 14px 8px; border-color: transparent transparent transparent #000000; position: absolute; top: 0; right: -8px; }
  footer .spec dl dd { margin-left: 16px; letter-spacing: 0.32px; transform: rotate(0.05deg)}
  footer .spec dl dd + dt { margin-left: 28px; }
  footer .spec .company { width: 344px; height: 91px; display: flex; align-items: flex-end; margin: 50px auto 0; background: url("/ms/img/company_bg.png") no-repeat left top; background-size: 100% auto; padding-left: 65px; }
  footer .spec .company a { display: block; padding: 12px 0; }
  footer .spec .company a + a { margin-left: 30px; }
  
  footer .contact{display: block;width:270px;height:53px;line-height: 53px; margin:53px auto 0;background: url("/ms/img/contact_btn.png")no-repeat left top;background-size: 100% auto;}
  footer .contact a{display: block;width:100%;height: 100%; background: url("/ms/img/contact_btn.png")no-repeat left top;background-size: 100% auto;}
  footer .contact a span{display: block;margin-left: 42px;color:#fff;font-size: 26px;letter-spacing: 0.1em;}
  
  footer .scroll_top { width: 58px; height: 45px; margin: 40px auto 0; background: #f33651; transition: filter 0.3s; }
  footer .scroll_top:hover { filter: brightness(1.2); }
  footer .scroll_top a { display: block; width: 100%; height: 100%; background: url("/ms/img/scroll_arrow.png") no-repeat center bottom; background-size: contain; position: relative; }
  footer .scroll_top a:before { content: ""; display: block; width: 0; height: 0; border-style: solid; border-width: 0 0 45px 27px; border-color: transparent transparent #f33653 transparent; position: absolute; top: 0; left: -27px; }
  footer .scroll_top a:after { content: ""; display: block; width: 0; height: 0; border-style: solid; border-width: 45px 0 0 27px; border-color: transparent transparent transparent #f33653; position: absolute; top: 0; right: -27px; }
  footer .scroll_top a:hover { filter: brightness(1); }
  footer .bnr { margin: 0; background: url("/ms/img/bnr_bg.jpg") center top no-repeat; background-color: #686868; position: relative; }
  footer .bnr ul { display: flex; justify-content: center; align-content: center; flex-wrap: wrap; padding: 15px 0; width: 1280px; margin: 0 auto; flex-wrap: wrap; }
  footer .bnr ul li { margin: 15px 12.5px; }
  footer .bnr ul li a { display: block; transition: filter 0.3s; }
  footer .bnr ul li a:hover { filter: brightness(1.2); }
  footer .bnr ul img { width: 372px; height: auto; vertical-align: bottom; }
  footer .wrap { background: #fff; }
  footer .sns { display: flex; width: 183px; padding-top: 40px; margin: 0 auto; }
  footer .sns a { display: block; margin: 0 6px; transition: filter 0.3s; }
  footer .sns a:hover img { filter: brightness(1.2); }
  footer .sns a img { width: 49px; height: auto; }
  footer .copyrights { font-size: 13px; color: #000; text-align: center; padding: 16px 0 32px; letter-spacing: 0.1em; transform: rotate(0.05deg)}
  /*ie*/
  .ie11 .bg_name span { opacity: 0.5; color: #f33651; }
  .ie11 .bg_name span:nth-of-type(even) { color: #949494; }
  .ie11 .btn { transition: opacity 0.3s !important; }
  .ie11 .btn:hover { opacity: 0.6; }
/*  .ie11 .campaign a, .ie11 #campaign a { transition: opacity 0.3s !important; }
  .ie11 .campaign a:hover, .ie11 #campaign a:hover { opacity: 0.6; }*/
  .ie11 .scroll_top { transition: opacity 0.3s !important; }
  .ie11 .scroll_top:hover { opacity: 0.6; }
  .ie11 .scroll_top a:hover { opacity: 1.0; }
  .ie11 .swiper-container .swiper-button-prev, .ie11 .swiper-container .swiper-button-next { transition: opacity 0.3s !important; }
  .ie11 .swiper-container .swiper-button-prev:hover, .ie11 .swiper-container .swiper-button-next:hover { opacity: 0.6; }
  .ie11 .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide { background-color: #949494; transition: opacity 0.3s !important; }
  .ie11 .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide:hover img { opacity: 0.6; }
  .ie11 .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide span { transition: 0.3s; }
  .ie11 .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide.swiper-slide-thumb-active { transition: opacity 0.3s !important; }
  .ie11 .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide.swiper-slide-thumb-active:hover img { opacity: 0.6; }
  .ie11 footer a { transition: opacity 0.3s !important; }
  .ie11 footer a:hover { opacity: 0.6; } }
@media screen and (min-width: 1401px) and (max-width: 1530px) {
  body main #character .chara_wrap .swiper-container.character .swiper-button-next { position: absolute; top: 366px !important; right: 0 !important; left: auto !important; margin: auto; }
}

@media screen and (min-width: 781px) and (max-width: 1400px) {
  #special .inner {width:1280px}
  #special .youtubelink{max-width:630px}
  #special .youtubelink a {width: 570px;height: 320px}
  #special .youtubelink a:after{width:142px;height: 142px;}
}
@media screen and (min-width: 781px) and (max-width: 1370px) {

}
@media screen and (min-width: 781px) and (max-width: 1280px) {
  body main::after { content: none; }
  body main #kvcontents::after { content: none; }
  #character .chara_wrap .swiper-container.character .swiper-button-next { position: absolute; top: 366px !important; right: 0 !important; left: 1150px !important; margin: auto; }
}
@media screen and (max-width: 780px) { /*  	SP STYLE  *************************************************************/
  img, embed, iframe, object, video { max-width: 100%; }
  body { position: static; overflow: auto; width: auto; *overflow-y: hidden; color: #000; font-size: 20px; line-height: 1.5; z-index: 0; }
  body main { padding: 0; position: relative; overflow: hidden; }
  body main .info { margin: 6.0256410256vw 5.1282051282vw 0; }
  body main .info .inner { position: relative; }
  body main .info .inner .btn { width: 35.8974358974vw; height: 6.5384615385vw; line-height: 1.21; background: url("/ms/img/sp/news_title.png") no-repeat center top; background-size: 100% auto; font-weight: bold; position: absolute; top: -6.5384615385vw; left: 0; right: 0; margin: auto; font-family: 'Oswald'; font-size: 5.1282051282vw; color: #fff; text-align: center; }
  body main .info .inner .btn span { position: relative; top: 0.1282051282vw; }
  body main .info .inner .btn span:before, body main .info .inner .btn span:after { content: ""; width: 1.9230769231vw; height: 1.7948717949vw; background: url("/ms/img/sp/news_title_dot.png") repeat-y center top; background-size: 100% auto; position: absolute; left: -4.4871794872vw; top: 0.5128205128vw; bottom: 0; margin: auto; }
  body main .info .inner .btn span:after { left: auto; right: -4.4871794872vw; }
  body main .info .inner .btn .date { display: none; }
  body main .info .news { width: 100%; height: 50.5128205128vw; background: url("/ms/img/sp/news_bg.png") no-repeat center top; background-size: 100% auto; top: 7.5641025641vw; left: 0; right: 0; margin: auto; }
  body main .info .news .box { width: 87.9487179487vw; margin: 0 auto; position: absolute; right: 0.8974358974vw; top: 0.641025641vw; }
  body main .info .news .box div { height: 42.8205128205vw; margin: 3.8461538462vw 5.641025641vw; overflow-y: scroll; overflow-x: hidden; }
  body main .info .news .box div dl { width: 100%; padding: 0 0 3.2051282051vw; border-bottom: 1px #fff solid; font-size: 2.8205128205vw; line-height: 1.59; letter-spacing: 0.0512820513vw; }
  body main .info .news .box div dl dt { font-weight: bold; line-height: 1.44; color: #00ffd0;transform: rotate(0.05deg) }
  body main .info .news .box div dl dd { line-height: 1.6; text-align: left; color: #ffffff; transform: rotate(0.05deg)}
  body main .info .news .box div dl + dl { padding: 3.2051282051vw 0; }
  body main .info .twitter { width: 100%; height: 58.8461538462vw; background: url("/ms/img/sp/twitter_bg.png") no-repeat center top; background-size: 100% auto; top: 7.5641025641vw; left: 0; right: 0; margin: auto; margin-top: 11.5384615385vw; }
  body main .info .twitter .box { margin: 0 6.4102564103vw; }
  body main .info .twitter .box .timeline { width: 76.9230769231vw; padding: 4.4871794872vw 0 0; overflow: hidden; }
  body main .info .twitter .box iframe.twitter-timeline { width: 79.4871794872vw !important; max-width: inherit !important; min-height: inherit !important; height: 51.6666666667vw !important; margin-left: -2.3076923077vw; }
  body main .info .twitter .twitter_bnr { width: 40vw; height: 10.8974358974vw; background: url("/ms/img/sp/twitter.png") no-repeat left top; background-size: 100% auto; position: absolute; z-index: 10; bottom: -5.1282051282vw; left: 0; right: 0; margin: auto; text-indent: 100%; white-space: nowrap; overflow: hidden; }
  body main .info .news.active, body main .info .twitter.active { transform: translateX(0); }
  body main .info .news.active .btn { background: url("/ms/img/news_open.png") no-repeat left bottom; }
  body main .info .twitter.active .btn { background: url("/ms/img/twitter_open.png") no-repeat left bottom; }
  .spbr { display: block; }
  .pcbr { display: none; }
  #bg { position: fixed; width: 100vw; height: 100%; background: url("/ms/img/sp/bg.jpg") repeat-y left top; background-size: 100% auto; }
  #kvcontents { width: 100vw; margin: 0 auto; position: relative; }
  #kvcontents .inner { margin: 0 auto; position: relative; }
  #kvcontents .inner h1 { width: 100vw; position: absolute; top: 96.1538461538vw; }
  #kvcontents .inner h1 span { display: block; width: 44.615384615400004vw; height: 7.3076923077vw; line-height: 7.3076923077vw; margin: 0 auto; background: url("/ms/img/logo-bg.png") no-repeat left top; background-size: 100% auto; font-family: 'Oswald'; font-size: 4.2179487179vw; font-weight: bold; color: #fff; text-align: center; letter-spacing: 0.14em}
  #kvcontents .inner .kv { width: 100vw; margin: 0 auto; bottom: 0; }
  #kvcontents .inner .kv picture { width: 100vw; }
  #kvcontents .inner .kv + h2 { text-indent: 150%; white-space: nowrap; overflow: hidden; position: absolute}
  #kvcontents #dl_btn{position:inherit;padding-top: 2.56vw}
  #kvcontents #dl_btn .pc-item{display: none}
  #kvcontents #dl_btn .sp-item {padding-left: 10.25641vw}
  #kvcontents #dl_btn .sp-item a:nth-child(1) img{width:41.53vw}
  #kvcontents #dl_btn .sp-item a:nth-child(2) img{width:33.71vw}
  #kvcontents #sp_menu { position: fixed; top: 0; right: 0; z-index: 500; width: 20.641025641vw; height: 19.2307692308vw; background: url("/ms/img/sp/menu.png") no-repeat left bottom; background-size: contain; cursor: pointer; }
  #kvcontents nav { width: 100vw; height: 100%;transition: height 0.2s; position: fixed; top: 0; left: 0; z-index: -50; background: #000; text-align: center; font-size: 6.4102564103vw; font-family: 'Black Ops One'; color: #00ffd0; opacity: 0; transition: 0.3s; }
  #kvcontents nav .inner{height:100%;/*overflow-y: scroll*/}
  #kvcontents nav .inner .scroll_box{height:100%;/*min-height: 160vw;*/position: relative;padding-bottom: 67vw;}
  #kvcontents nav:before { content: ""; position: absolute; top: 0; left: 0; background: url("/ms/img/sp/menu_bg.png") no-repeat left top; background-size: 100% auto; z-index: 10; width: 100%; height: 100%; }
  #kvcontents nav ul { padding-top: 7.6923vw; position: relative; opacity: 0;}
  #kvcontents nav ul li.close { position: absolute; right: 7.0512820513vw; top: 7.3846153846vw; width: 5.8974358974vw; height: 6.0256410256vw; background: url("/ms/img/sp/menu_close.png") no-repeat left bottom; background-size: contain; text-indent: 200%; white-space: nowrap; overflow: hidden; cursor: pointer; }
  #kvcontents nav ul a { display: block; padding:3.355vw}
  #kvcontents nav ul li:last-of-type a { display: block; }
  #kvcontents nav ul li a.current { color: #fff !important; }  
  .menuopen { overflow: hidden; }
  .menuopen #kvcontents { transition: 0.3s; }
  .menuopen #kvcontents #sp_menu { opacity: 0; z-index: 10; }
  .menuopen #kvcontents nav { opacity: 1.0; z-index: 300; }
  .menuopen #kvcontents nav ul { z-index: 350; opacity: 1.0; }
  #about { width: 100vw; height: 130.1282051282vw; padding-top: 51.2820512821vw; background: url("/ms/img/sp/about/about_bg.png") no-repeat left top; background-size: 100% auto; position: relative; }
  #about .wrap { width: 100vw; margin: 0 auto; position: relative; }
  #about .wrap picture { position: absolute; top: -5.7692307692vw; }
  #about .wrap div { position: absolute; left: 0; right: 0; margin: auto; }
  #about .wrap div h2 { font-size: 13.9743589744vw; line-height: 1.0; letter-spacing: -2.2px; text-align: center; }
  #about .wrap div .catch { width: 65.2564102564vw; height: 23.4615384615vw; background: url("/ms/img/sp/about/about_text.png") no-repeat left top; background-size: 100% auto; margin: 0 auto; text-indent: 200%; white-space: nowrap; overflow: hidden; margin-top: 2.5641025641vw; }
  #about .wrap div p + p { width: 72.4358974359vw; height: 40.2564102564vw; margin: 2.5641025641vw auto 0; padding: 0 12.5vw; background: url("/ms/img/sp/about/about_text_bg.png") no-repeat left top; background-size: 100% auto; font-size: 2.8205128205vw; line-height: 1.88; letter-spacing: -0.4px; text-align: left; position: relative; z-index: 10; }
  #about .wrap div p + p span { position: absolute; top: 7.6923076923vw; text-align: center;transform: rotate(0.05deg) }
  #character { position: relative; }
  #character:before { content: ""; width: 100vw; height: 3.0769230769vw; background: url("/ms/img/sp/line01.png") no-repeat left top; background-size: 100% auto; position: absolute; top: 14.7435897436vw; }
  #character .chara_wrap .swiper-container.character { position: relative; overflow: visible; }
  #character .chara_wrap .swiper-container.character .swiper-button-prev { position: absolute; top: 90vw !important; left: -5.7692307692vw !important; right: auto !important; }
  #character .chara_wrap .swiper-container.character .swiper-button-next { position: absolute; top: 90vw !important; right: -5.7692307692vw !important; left: auto !important; }
  #character .chara_wrap .swiper-container.character .swiper-slide { height: 153.8461538462vw; overflow: hidden; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner { width: 100vw; margin: 0 auto; position: relative; z-index: 1; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner div { width: 60.2564102564vw; margin: 26.9230769231vw 0 0 5.1282051282vw; text-align: center; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner div h2 { font-size: 5.2564102564vw; line-height: 1.0; letter-spacing: -0.8px; text-shadow: 0 0 31px #ffffff; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner div h3 { width: 43.2051282051vw; height: 8.5897435897vw; margin: 13px auto 0; background: url("/ms/img/character/arase/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; white-space: nowrap; overflow: hidden; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner div .title { width: 37.9487179487vw; height: 6.2820512821vw; margin: 3.8461538462vw auto 0; background: url("/ms/img/character/series_title.png") no-repeat left top; background-size: 100% auto; text-align: center; line-height: 6.2820512821vw; color: #fff; font-family: 'Oswald'; font-size: 3.0769230769vw; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner div .introduction { margin-top: 3.8461538462vw; font-size: 3.2051282051vw; line-height: 1.76; letter-spacing: -0.5px; text-align: center;transform: rotate(0.05deg)}
  #character .chara_wrap .swiper-container.character .swiper-slide .inner .bg_name { width: 100vw; margin: 6.4102564103vw 0 0 -7.0512820513vw; padding-top: 1.2820512821vw; overflow: hidden; font-family: 'Orbitron'; font-size: 19.7435897436vw; -webkit-text-stroke: 0.3846153846vw #f33651; color: transparent; font-weight: bold; line-height: 0.87; letter-spacing: -0.3974358974vw; text-align: left; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner .bg_name span:nth-of-type(even) { -webkit-text-stroke: 0.3846153846vw #949494; text-stroke: 0.3846153846vw #949494; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner img { height: 129.4358974359vw; position: absolute; right: -6.8461538462vw; top: -10.6923076923vw; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.secret h3 { width: 60.92105vw; height: 8.3333333vw; background: url("/ms/img/character/secret/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.secret img { height: 114.8205128205vw; right: -26.9230769231vw; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.hisaki h3 { width: 43.2051282051vw; height: 8.5897435897vw; background: url("/ms/img/character/hisaki/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.hisaki img { height: 120.641025641vw; top: -3.8461538462vw; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.hikaru h3 { width: 24.4871794872vw; height: 8.0769230769vw; background: url("/ms/img/character/hikaru/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.hikaru img { height: 112.5128205128vw; top: -3.2564102564vw; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.ikki h3 { width: 30.641025641vw; height: 8.4615384615vw; background: url("/ms/img/character/ikki/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.ikki img { height: 112.9487179487vw; top: -4.9743589744vw; right: -5.1282051282vw; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.ikki .bg_name { margin-left: 15vw; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.koishimaru h3 { width: 42.1794871795vw; height: 8.9743589744vw; background: url("/ms/img/character/koishimaru/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.koishimaru img { height: 115.23076923080001vw; top: -4vw; right: -3.8461538462vw; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.azuma h3 { width: 25.641025641vw; height: 8.4615384615vw; background: url("/ms/img/character/azuma/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.azuma img { height: 125.641025641vw; top: -5.1282051282vw; right: 0; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.soruto h3 { width: 25.1282051282vw; height: 8.2051282051vw; background: url("/ms/img/character/soruto/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.soruto img { height: 127.9487179487vw; top: -10.4102564103vw; right: -1.2820512821vw; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.tenma h3 { width: 25vw; height: 7.8205128205vw; background: url("/ms/img/character/tenma/name.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; }
  #character .chara_wrap .swiper-container.character .swiper-slide .inner.tenma img { height: 133.0769230769vw; top: -14.1025641026vw; right: -1.2820512821vw; }
  #character .character_nav { width: 100vw; position: absolute; bottom: 16.6666666667vw; left: 0; z-index: 100; }
  #character .character_nav .frame { position: relative; width: 100vw; height: 21.7948717949vw; background: url("/ms/img/sp/character_nav_bg.png") no-repeat left top; background-size: 100% auto; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs { width: 100vw; overflow: visible; left: 3.3333333333vw; top: 0.7051282051vw; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide { overflow: hidden; position: relative; width: 9.4871794872vw !important; height: 19.8717948718vw; overflow: hidden; border: 0.2564102564vw solid #858585; -webkit-transform: skewY(-17deg); transform: skewX(-17deg); }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide span { display: block; cursor: pointer; width: 16.1538461538vw !important; height: 20.3846153846vw; background: url("/ms/img/character/nav_bg.png") no-repeat right top; background-size: auto 100%; -webkit-transform: skewY(17deg); transform: skewX(17deg); position: absolute; right: -3.3333333333vw; transition: 0.3s; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide span img { max-width: inherit; width: auto; height: 20.3846153846vw; position: absolute; right: 0; bottom: 0; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide + .swiper-slide { margin-left: 0.3846153846vw; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide.swiper-slide-thumb-active { transition: none; }
  #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide.swiper-slide-thumb-active span { background: url("/ms/img/character/nav_bg_on.png") no-repeat right top; background-size: auto 100%; position: absolute; right: -3.3333333333vw; }
  #system { width: 100vw; margin: 0 auto; position: relative; }
  #system:before { content: ""; width: 100vw; height: 3.0769230769vw; background: url("/ms/img/sp/line02.png") no-repeat left top; background-size: 100% auto; position: absolute; top: -3.8461538462vw; }
  #system h2 { width: 100vw; padding-top: 10.2564102564vw; text-align: center; font-size: 13.8461538462vw; line-height: 1.0; letter-spacing: -0.2820512821vw; }
  #system .system_text { margin-top: 2.5641025641vw; }
  #system .swiper-container.system-thumbs { text-align: center; }
  #system .swiper-container.system-thumbs .swiper-slide { width: 100%; opacity: 0 !important; }
  #system .swiper-container.system-thumbs .swiper-slide h3 { width: 54.7435897436vw; height: 6.1538461538vw; margin: 0 auto; background: url("/ms/img/system/system_text01.png") no-repeat left top; background-size: 100% auto; text-indent: 100%; white-space: nowrap; overflow: hidden; }
  #system .swiper-container.system-thumbs .swiper-slide:nth-child(2) h3 { background: url("/ms/img/system/system_text02.png") no-repeat left top; background-size: 100% auto; }
  #system .swiper-container.system-thumbs .swiper-slide:nth-child(3) h3 { background: url("/ms/img/system/system_text03.png") no-repeat left top; background-size: 100% auto; }
  #system .swiper-container.system-thumbs .swiper-slide:nth-child(4) h3 { background: url("/ms/img/system/system_text04.png") no-repeat left top; background-size: 100% auto; width: 37vw;}
  #system .swiper-container.system-thumbs .swiper-slide:nth-child(5) h3 { background: url("/ms/img/system/system_text05.png") no-repeat left top; background-size: 100% auto; width: 36vw;}
  #system .swiper-container.system-thumbs .swiper-slide p { font-size: 3.3333333333vw; line-height: 1.69; letter-spacing: -0.0641025641vw; margin-top: 3.3333333333vw; transform: rotate(0.05deg)}
  #system .swiper-container.system-thumbs .swiper-slide.swiper-slide-active { opacity: 1 !important; }
  #system .swiper-container.system-thumbs .swiper-pagination.system { opacity: 0; }
  #system .swiper-container.system { overflow: visible; margin-top: 2.5641025641vw; }
  #system .swiper-container.system .swiper-slide { width: 89.7435897436vw; margin: 0 0.7692307692vw; }
  #system .swiper-container.system .swiper-button-prev { position: absolute; top: 1.2820512821vw; bottom: 0; left: -5.7692307692vw !important; margin: auto; }
  #system .swiper-container.system .swiper-button-next { position: absolute; top: 1.2820512821vw; bottom: 0; right: -5.7692307692vw !important; margin: auto; }
  #special { margin: 16.4102564103vw 0 0; position: relative; padding: 10.25641vw 0 0}
  #special:before {content: "";width: 100vw;height: 3.0769230769vw;background: url(/ms/img/sp/line01.png) no-repeat left top;background-size: 100% auto;position: absolute;top: -1vw;}
  #special h2{text-align: center;font-size: 13.84615vw;letter-spacing: -0.02em;}
  #special .inner{width:100%;text-align: center;}
  #special .youtubelink {padding: 6.41025vw 5.1282vw 0}
  #special .youtubelink p{transform: rotate(0.05deg);font-size: 5.1282vw;letter-spacing: 0.04em;padding-top: 2.5641vw;line-height: 1.2}
  #special .youtubelink a{display: block;width:100%;height:auto;position: relative;overflow: hidden;}
  #special .youtubelink a:after{content:"";width:20vw;height:20vw;background: url("/ms/img/play_btn.png")no-repeat left top;background-size: 100% auto;position: absolute;top:0;left:0;right: 0;bottom:0;margin: auto;}
  #special a img{width: 100%;vertical-align: bottom}
  
  footer { position: relative; }
  footer .spec { padding-top: 15.1282vw; }
  footer .spec dl { padding: 0 0 0 24.6153846154vw; font-size: 2.8205128205vw; line-height: 4.1025641026vw; overflow: hidden; }
  footer .spec dl dt { max-width: 14.1025641026vw; width: 100%; height: 4.1025641026vw; margin: 4.6153846154vw 0 0; clear: left; float: left; text-align: center; padding: 0 1.1538461538vw; color: #00ffe1; position: relative; z-index: 10; }
  footer .spec dl dt:before { content: ""; width: 15.8974358974vw; height: 4.1025641026vw; background: url("/ms/img/sp/spec_bg.png") no-repeat left top; background-size: 100% auto; position: absolute; bottom: 0; left: -1.0256410256vw; z-index: -1; }
  footer .spec dl dd { min-height: 4.1025641026vw; margin: 4.6153846154vw 0 0 19.8717948718vw; letter-spacing: 0.041025641vw;transform: rotate(0.05deg)}
  footer .spec .company { width: 61.7948717949vw; height: 16.2820512821vw; display: flex; align-items: flex-end; margin: 7.6923076923vw auto 0; background: url("/ms/img/company_bg.png") no-repeat left top; background-size: 100% auto; padding-left: 13.4615384615vw;padding-bottom: 1vw }
  footer .spec .company a { display: block; padding: 1.4102564103vw 0; }
  footer .spec .company a img { width: 15.1282051282vw; }
  footer .spec .company a + a { margin-left: 3.2051282051vw; }
  footer .spec .company a + a img { width: 21.1538461538vw; }
  footer .contact{display: block;width:43.07vw;height:8.33vw;line-height:8.33vw; margin:8.33vw auto 0;background: url("/ms/img/contact_btn.png")no-repeat left top;background-size: 100% auto;}
  footer .contact a{display: block;width:100%;height: 100%; background: url("/ms/img/contact_btn.png")no-repeat left top;background-size: 100% auto;}
  footer .contact a span{display: block;margin-left: 12vw;color:#fff;font-size: 3.9vw;letter-spacing: 0.1em;}
  footer .scroll_top { width: 22.692307692299998vw; height: 9.6153846154vw; margin: 10.2564102564vw auto 0; }
  footer .scroll_top a { display: block; width: 100%; height: 100%; background: url("/ms/img/sp/scroll_arrow.png") no-repeat center bottom; background-size: contain; }
  footer .bnr { width: 100vw; margin: 0; background: url("/ms/img/sp/bnr_bg.jpg") center top no-repeat; background-color: #686868; position: relative; }
  footer .bnr ul { display: flex; justify-content: center; align-content: center; padding: 7vw 0 3vw; width: 100vw; margin: 0 auto; flex-wrap: wrap; }
  footer .bnr li { margin: 0 auto 4.358974359vw; }
  footer .bnr ul img { width:87.1794871795vw; height: auto; vertical-align: bottom; }
  footer .wrap { background: #fff; padding-top: 8.0769230769vw; }
  footer .sns { display: flex; justify-content: center; margin: 0 auto; }
  footer .sns a { margin: 0 0.5128205128vw; }
  footer .sns a img { width: 12.9487179487vw; height: auto; }
  footer .copyrights { font-size: 2.0512820513vw; color: #000; text-align: center; padding: 2.5641025641vw 0 8.9743589744vw; letter-spacing: 0.1em; }
  .swiper-container .swiper-button-prev { content: ""; width: 17.5641025641vw; height: 16.2820512821vw; background: url("/ms/img/btn_prev.png") no-repeat center; background-size: contain; outline: none; }
  .swiper-container .swiper-button-next { content: ""; width: 17.5641025641vw; height: 16.2820512821vw; background: url("/ms/img/btn_next.png") no-repeat center; background-size: contain; outline: none; }
  .android #kvcontents .info .inner .btn span { top: 0.5128205128vw; }
  .android footer { /*    .spec{padding-top:vw(92); dl{padding:0 0 0 vw(192); dt{max-width: vw(110); width:100%;height:vw(33);margin:vw(36) 0 0;line-height: vw(33);clear: left; float: left;text-align: center;padding:vw(3) vw(9) 0;} dd{margin:vw(36) 0 0 vw(155);letter-spacing: vw(0.32);padding-top:vw(3)} } }*/ }
  .ios #kvcontents .info .inner .btn span { top: 0.3846153846vw; }
  .ios #character .character_nav .frame .gallery-thumbs.character-thumbs .swiper-wrapper .swiper-slide { border: 0.3846153846vw solid #858585; } }

/*
movie modal
******************************/

#modalContent { position: fixed; left: 0; top: 0; width: 100%; height: 100%; z-index: 1000010; display: none; cursor: pointer;background:rgba(0,0,0,0.8) }
#modalContent div.mc { width: 1160px; height: 752px; position: fixed; left: 50%; top: 50%; margin-left: 0px; margin-top: 0; z-index: 10; padding: 100px 0; transition: 0.8s ease; -webkit-transform: scale(0, 0); -moz-transform: scale(0, 0); -o-transform: scale(0, 0); -ms-transform: scale(0, 0); transform: scale(0, 0); }
#modalContent.view div.mc { -webkit-transform: scale(1, 1); -moz-transform: scale(1, 1); -o-transform: scale(1, 1); -ms-transform: scale(1, 1); transform: scale(1, 1); }
#modalContent div.mc iframe { width: 1160px; height: 652px; position: relative; z-index: 0; }
#modalContent .close { position: absolute; right: 0px; top: 9px; opacity: 0; transition: 0.3s; z-index: 20; }
#modalContent.view .close { opacity: 1; }
#modalContent .close a { display: block; width: 46px; height: 47px; overflow: hidden; text-indent: 200%; white-space: nowrap;background: url("/ms/img/modal_close.png") center center no-repeat; position: relative; transition: 0.5s; background-size: 58px auto; }
#modalContent .close a:hover { opacity: 0.5; }
@media screen and (max-width: 780px) {
  #modalContent{background:rgba(0,0,0,0.9) }
  #modalContent div.mc { padding: 7.8125vw 0; }
  #modalContent .close { top: 0.703125vw; }
  #modalContent .close a { display: block; width: 4.53125vw; height: 4.53125vw; overflow: hidden; text-indent: 200%; white-space: nowrap; background-size: 4.53125vw auto; }
}

/*
	js styles
******************************/
#baseVW { width: 100vw; position: fixed; left: -9999px; opacity: 0; }
#imageloaded, .imageloaded { position: fixed; left: -9999px; font-size: 0; line-height: 1; height: 1px; width: 1px; overflow: hidden; }
.analytics { position: fixed; left: -9999px; top: -9999px; height: 0; width: 0; overflow: hidden; }
#ascrail2000, div[class='nicescroll-rails'], div[class='nicescroll-rails'] div { z-index: 999999 !important; cursor: pointer; }
#gridJSSW { z-index: 1000000000 !important; }
[data-src] { opacity: 0; width: 0; height: 0; }
[data-src].lazyimgload { opacity: 1; width: inherit; height: inherit; transition: opacity 0.3s; }

/* 
	loader
*********************/
#loader { background: black; width: 100vw; height: 100vh; z-index: 100000; position: fixed; left: 0; top: 0; }
#loader .loader { width: 48px; height: 48px; position: fixed; left: 50%; top: 50%; margin: -24px 0 0 -24px; }
.imgloaded #loader .loader { transform: scale(0.5); opacity: 0; transition: transform 1s , opacity 0.4s; }
.la-ball-clip-rotate, .la-ball-clip-rotate > div { position: relative; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.la-ball-clip-rotate { display: block; font-size: 0; color: #fff; }
.la-ball-clip-rotate.la-dark { color: #333; }
.la-ball-clip-rotate > div { display: inline-block; float: none; background-color: currentColor; border: 0 solid currentColor; }
.la-ball-clip-rotate { width: 32px; height: 32px; }
.la-ball-clip-rotate > div { width: 32px; height: 32px; background: transparent; border-width: 2px; border-bottom-color: transparent; border-radius: 100%; -webkit-animation: ball-clip-rotate .75s linear infinite; -moz-animation: ball-clip-rotate .75s linear infinite; -o-animation: ball-clip-rotate .75s linear infinite; animation: ball-clip-rotate .75s linear infinite; }

.la-ball-clip-rotate.la-sm { width: 16px; height: 16px; }
.la-ball-clip-rotate.la-sm > div { width: 16px; height: 16px; border-width: 2px; }
.la-ball-clip-rotate.la-2x { width: 48px; height: 48px; }
.la-ball-clip-rotate.la-2x > div { width: 48px; height: 48px; border-width: 2px; }
.la-ball-clip-rotate.la-3x { width: 96px; height: 96px; }
.la-ball-clip-rotate.la-3x > div { width: 96px; height: 96px; border-width: 2px; }

/* Animation */
@-webkit-keyframes ball-clip-rotate { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  50% { -webkit-transform: rotate(180deg); transform: rotate(180deg); }
  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
@-moz-keyframes ball-clip-rotate { 0% { -moz-transform: rotate(0deg); transform: rotate(0deg); }
  50% { -moz-transform: rotate(180deg); transform: rotate(180deg); }
  100% { -moz-transform: rotate(360deg); transform: rotate(360deg); } }
@-o-keyframes ball-clip-rotate { 0% { -o-transform: rotate(0deg); transform: rotate(0deg); }
  50% { -o-transform: rotate(180deg); transform: rotate(180deg); }
  100% { -o-transform: rotate(360deg); transform: rotate(360deg); } }
@keyframes ball-clip-rotate { 0% { -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); }
  50% { -webkit-transform: rotate(180deg); -moz-transform: rotate(180deg); -o-transform: rotate(180deg); transform: rotate(180deg); }
  100% { -webkit-transform: rotate(360deg); -moz-transform: rotate(360deg); -o-transform: rotate(360deg); transform: rotate(360deg); } }
[data-anim] { opacity: 0; transform: translateY(30px); transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1); }

@media screen and (max-width: 780px) { [data-anim] { opacity: 0; transform: translateY(4vh); transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1); } }
[data-anim].animated { opacity: 1; transform: translateY(0); }

.bnr_area{
  display: flex;
  justify-content: center;
  align-content: center;
  flex-wrap: wrap;
  padding: 15px 0;
  width: 1280px;
  margin: 0 auto;
  flex-wrap: wrap;
}
.bnr_img{
  width: 372px;
  height: auto;
  vertical-align: bottom;
  margin: 15px 12.5px;
}
@media screen and (max-width: 780px) {
  .bnr_area{
    display: flex;
    justify-content: center;
    align-content: center;
    padding: 7vw 0 3vw;
    width: 100vw;
    margin: 0 auto;
    flex-wrap: wrap;
  }
  .bnr_img{
    width: 87vw;
    height: auto;
    vertical-align: bottom;
    margin: 0 6.5vw 4.358974359vw;
  }
}