html, body,
div, span,
object, iframe,
h1, h2, h3, h4, h5, h6,
p, blockquote, pre,
a, abbr, acronym, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, strong, sub, sup, tt, var,
ul, ol, li, dl, dt, dd,
form, fieldset, legend, label,
table, caption, tbody, tfoot, thead, tr, th, td,
header, main, nav, footer {
  margin: 0;
  padding: 0;
  font-size: 100%;
}

header, main, nav, footer, section {
  display: block;
}

ul {
  list-style-type: none;
}

ol {
  list-style-type: decimal;
}

img {
  border: 0;
  line-height: 1;
}

/* Scss Document */
a {
  color: #fff;
  text-decoration: none;
}

.fll {
  float: left;
}

.flr {
  float: right;
}

/* Scss Document */
@media screen and (max-width: 960px) {
  #movie-wrap {
    max-width: 780px !important;
    height: 451px !important;
  }
  #movie-wrap #player {
    max-width: 740px !important;
    height: 432px !important;
  }

  .content-top {
    height: 895px !important;
  }

  .content-top-inner {
    height: 895px !important;
    background-position: 50% 100% !important;
    background-size: contain !important;
  }

  #header {
    width: 82% !important;
    margin: 0 auto !important;
  }

  #header .header-utility {
    width: 730px !important;
  }

  .title-area {
    width: 880px !important;
    height: 258px !important;
  }

  .dig-wrap {
    float: left !important;
    margin-right: 0 !important;
    width: 251px !important;
  }

  .content-bottom {
    background-size: 80px auto !important;
    background-position: 48.8% 1% !important;
    width: 100% !important;
    padding-top: 35px !important;
  }

  .content-bottom-inner {
    height: auto !important;
    width: 100% !important;
    background-size: 960px auto !important;
    padding-top: 0 !important;
  }

  .update {
    background-size: 770px auto !important;
    width: 748px !important;
    background-position: 50% 4px !important;
    height: 181px !important;
    padding-top: 0 !important;
  }
  .content-bottom .content-bottom-inner .hide {
      position: absolute !important;
      right: 133px !important;
      top: 42px !important;
  }
  .content-bottom .update .main{
    padding: 10px 10px !important;
    width: 650px;
    margin: 0 auto;
  }
  .update-sec.vol2{
    height: 80px !important;
  }
.content-bottom .update .update-sec.vol2 h2 {
    margin-top: 30px !important;
}
.update-sec.vol1 a {
    padding: 5px 20px !important;
}
.content-bottom .update .update-sec.vol1 h2 {
    margin: 10px 0 0 !important;
}
.update-sec.vol2 a {
    height: 73px!important;
    padding: 0 6px!important;
}
  .update-sec,
  .update-sec a{
    margin: 0 auto;
    width: 650px !important;
  }
  .update .vol2 .media img {
    width: 130px !important;
    margin-top: 10px;
  }

  .info {
    width: 770px !important;
    height: 203px !important;
  }
  .info .theme ul {
    margin-top: 16px !important;
  }
  .info .theme h3 {
    padding-top: 36px !important;
  }

  h2 {
    margin: 46px auto 12px !important;
  }

  .list-lineup {
    margin: 0 auto !important;
    padding-bottom: 0 !important;
    width: 773px !important;
  }

  .list-lineup li {
    width: 253px !important;
  }

  .footer {
    width: 750px !important;
    margin-bottom: 30px !important;
  }

  .footer-utility {
    padding: 25px 0 0 !important;
  }

  .footer .fll {
    width: 550px !important;
  }

  .copyright img {
    width: 550px !important;
  }
  .theme,
  .list-countdown {
    width: 713px !important;
    margin: 0 auto !important;
  }
  .theme-main {
    background-position: 100% 100% !important;
    background-size: 300px auto !important;
  }
  .content-bottom .content-bottom-inner .info .list-countdown li:first-child,
  .content-bottom .content-bottom-inner .info .list-countdown li {
      width: 150px !important;
  }
  .content-bottom .content-bottom-inner .info .list-countdown li h3{
      text-align: left !important;
      padding-left: 0 !important;
  }
  .content-bottom .content-bottom-inner .info .list-countdown li h3 img{
      width: 130px !important;
  }
  .content-bottom .content-bottom-inner .info .list-countdown li a img {
      padding-bottom: 0 !important;
      padding-left: 5px !important;
  }
}
/* --------------------------------------------------------
header
-------------------------------------------------------- */
#header {
  width: 100%;
  height: 38px;
  padding-top: 12px;
  overflow: hidden;
}
#header .header-utility {
  width: 920px;
  margin: 0 auto;
}
#header .header-utility .list-hard {
  float: left;
  width: 289px;
  padding: 8px 22px 12px 10px;
  vertical-align: top;
}
#header .header-utility .list-hard li {
  display: inline-block;
  margin-left: 8px;
}
#header .header-utility .list-hard li:first-child {
  margin-left: 0;
  padding-right: 8px;
  border-right: 1px solid #fff;
}
#header .header-utility .sound-cont {
  float: right;
  width: 134px;
  height: 30px;
}
#header .header-utility .sound-cont p {
  display: inline-block;
  color: #b2b2b2;
  font-weight: bold;
}
#header .header-utility .sound-cont p.sound {
  padding-right: 10px;
}
#header .header-utility .sound-cont #play, #header .header-utility .sound-cont #stop {
  cursor: pointer;
}
#header .header-utility .sound-cont #play:hover img, #header .header-utility .sound-cont #stop:hover img {
  opacity: 0.8;
}

/* --------------------------------------------------------
 loader
-------------------------------------------------------- */
#loader-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  z-index: 30;
  background: url(../images/loading_bg.png) no-repeat 50% #131c3b;
}

#loader {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 449px;
  height: 73px;
  margin-top: -37px;
  margin-left: -225px;
  text-align: center;
  color: #fff;
  z-index: 31;
  animation: Flash1 1.5s infinite;
}

@keyframes Flash1 {
  50% {
    opacity: 0.5;
  }
}
#wrapper {
  width: 100%;
}

/* BGM PLAYER
=================================================================== */
.hero-soundBox {
  float: right;
}

.soundBox-wrapper {
  width: 125px;
  height: 19px;
  position: relative;
}

.soundBox-title {
  position: absolute;
  left: 0;
  top: 0;
  font-size: 0.01%;
  line-height: 0.01%;
  margin: 0;
}

.soundBox-onBtn {
  position: absolute;
  left: 53px;
  top: 0;
}

.soundBox-offBtn {
  position: absolute;
  left: 89px;
  top: 0;
}

.soundBox-onBtn a,
.soundBox-offBtn a {
  display: block;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  font-size: 0px;
  line-height: 0px;
  width: 36px;
  height: 19px;
  background-image: url(../images/soundbox-btn.png);
  background-repeat: no-repeat;
}

.soundBox-onBtn a {
  background-position: 0 -19px;
}

.soundBox-offBtn a {
  background-position: -36px -19px;
}

.is-bgm-off .soundBox-onBtn a {
  background-position: 0 -19px;
}

.is-bgm-off .soundBox-offBtn a {
  background-position: -36px 0;
}

.is-bgm-on .soundBox-onBtn a {
  background-position: 0 0;
}

.is-bgm-on .soundBox-offBtn a {
  background-position: -36px -19px;
}

.is-bgm-off .soundBox-onBtn a:hover {
  background-position: 0 -36px;
}

.is-bgm-on .soundBox-offBtn a:hover {
  background-position: -36px -36px;
}

/* --------------------------------------------------------
mainVisual
-------------------------------------------------------- */
.content-top {
  background: url("../images/index_bg_02.png") repeat 50% 0;
  overflow: hidden;
  padding: 0;
  height: 960px;
  width: 100%;
  min-width: 960px;
}

.content-top-inner {
  max-width: 1102px;
  height: 960px;
  margin: 0 auto;
  position: relative;
  background-image: url("../images/index_bg_01.png");
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-color: #131c3b;
}
.content-top-inner #movie-wrap {
  margin: 20px auto 0;
  max-width: 920px;
  height: 517px;
  position: relative;
}
.content-top-inner #movie-wrap #player {
  background: #000;
  max-width: 897px;
  height: 497px;
  z-index: 1;
  margin: 0 auto;
  padding: 10px;
}
.content-top-inner #movie-wrap #player iframe {
  max-width: 897px;
}
.content-top-inner #movie-wrap .credits {
  width: 267px;
  margin: 10px 28px 0 0;
  color: #fff;
  position: absolute;
  right: -45px;
  bottom: -52px;
}
.content-top-inner #movie-wrap .credits p {
  display: inline-block;
  vertical-align: top;
}
.content-top-inner #movie-wrap .credits ul {
  margin-left: 17px;
  cursor: pointer;
  overflow: hidden;
  display: inline-block;
}
.content-top-inner #movie-wrap .credits ul li {
  display: inline-block;
  margin-left: 10px;
}
.content-top-inner #movie-wrap .credits ul li.current {
  background: url("../images/index_comment_bg.png") no-repeat 0 0;
}
.content-top-inner #movie-wrap .credits ul li.current a {
  cursor: default;
}
.content-top-inner #movie-wrap .credits ul li:not(.current):hover img {
  opacity: 0.8;
  pointer-events: none;
}
.content-top-inner #movie-wrap .credits a {
  display: block;
}
.content-top-inner .title-area {
  margin: 0 auto;
}
.content-top-inner .title-area h1 {
  width: 530px;
  margin: 0 auto;
  padding-right: 110px;
}
.content-top-inner .title-area .about {
  width: 591px;
  margin: -10px auto 0;
}
.content-top-inner .title-area .about a:hover{
  opacity: 0.9;
}

.dig-wrap {
  float: right;
  margin-right: 58px;
  margin-top: 44px;
  position: relative;
  width: 256px;
  height: 235px;
}
.dig-wrap #dig-inner {
  cursor: url("../images/cursor.cur"), pointer;
}
.dig-wrap #dig {
  position: absolute;
  top: -43px;
  right: 9px;
  height: 111px;
  display: none;
}
.dig-wrap #rock {
  position: absolute;
  top: 67px;
  left: 77px;
  width: 105px;
  height: 60px;
  text-align: center;
}
.dig-wrap .found {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 132px;
}
.dig-wrap .found .found-inner {
  position: absolute;
  left: 32px;
  top: 39px;
}

/* --------------------------------------------------------
information
-------------------------------------------------------- */
.content-bottom {
  background: url("../images/index_bg_04.png") repeat-x 48.8% 5px;
  overflow: hidden;
  min-width: 960px;
  margin: -5px auto;
  padding-top: 53px;
}
.content-bottom .update {
  width: 828px;
  height: 378px;
  margin: 0 auto;
  background: url(../images/update_bg.png) no-repeat 50% 0;
  padding: 31px 46px 21px;
  position: relative;
}
.update-sec{
   display: table;
   width: 828px;
}
.update-sec a{
  display: block;
  outline: none;
}
.update-sec a:hover{
  opacity: 0.9;
}
.content-bottom .update .update-sec.vol2 {
  height: 56px;
  border-bottom: 1px solid #fff;
}
.content-bottom .update .update-sec.vol2 h2 {
  display: inline-block;
  margin-top: 10px;
  margin-top: 15px;
}
.content-bottom .update .update-sec h2 span {
  margin-left: 12px;
  vertical-align: top;
  display: inline-block;
}
.content-bottom .update .vol2 .media {
  float: right;
  line-height: 0;
}
.update-sec.vol3{
  padding-top: 20px;
  height: 127px;
  border-bottom: 1px solid #fff;
}
.content-bottom .update .update-sec.vol3 .update-ttl{
  width: 352px;
  padding-left: 18px;
  float: left;
}
.content-bottom .update .update-sec.vol3 .update-ttl span.notice{
  color:#999;
  font-size: 12px;
  font-weight: normal;
  text-indent: -1em;
  padding-left: calc(80px + 1em);
  padding-top: 15px;
}
.content-bottom .update .update-sec.vol3 .update-img{
  float: left;
  margin-left: 38px;
}
.content-bottom .update .update-sec.vol3 .update-img .img{
  float: left;
}
.content-bottom .update .update-sec.vol3 .update-img .img:first-child{
  padding-right: 20px;
}
.content-bottom .update .update-sec.vol3 .update-img .img span{
  display: block;
  color: #999;
  font-size: 12px;
}
.content-bottom .update .update-sec.vol3 h2 span{
  display: block;
  padding-left: 80px;
}
.update-sec.vol2 a{
  height: 66px;
  padding: 10px 18px 0;
  width: 792px;
}
.update-sec.vol1{
  height: 83px;
}
.update-sec.vol1 a{
  padding: 20px 18px;
}
.content-bottom .update .update-sec h2 img{
  position: relative;
}
.content-bottom .update .update-sec h2 img:after {
    background: #fff none repeat scroll 0 0;
    bottom: 3px;
    content: "";
    height: 1px;
    left: 87px;
    position: absolute;
    width: 100%
}
.content-bottom .update .main {
  position: relative;
  padding-bottom: 20px;
  border-bottom: 3px solid #fff;
}
.content-bottom .update .main > img{
  padding-left: 20px;
}
.content-bottom .update .main .hard {
  position: absolute;
  right: 10px;
  bottom: 18px;
}

.content-bottom .update .main .hard > span{
  margin-right: 17px;
}
.content-bottom .update .media a{
  display: block;
}


.content-bottom .content-bottom-inner {
  position: relative;
  max-width: 1153px;
  height: 670px;
  padding-top: 0;
  margin: 0 auto;
  overflow: hidden;
  background: url("../images/index_bg_03.png") no-repeat 50% 1px;
}
.content-bottom .content-bottom-inner .hide {
  position: absolute;
  top: 62px;
  right: 173px;
}
.content-bottom .content-bottom-inner h2 {
  margin: 50px auto 38px;
  text-align: center;
  color: #fff;
}
.content-bottom .content-bottom-inner .list-lineup {
  width: 855px;
  margin: 0 auto 21px;
  padding-bottom: 20px;
  overflow: hidden;
}
.content-bottom .content-bottom-inner .list-lineup li {
  width: 283px;
  float: left;
  border-left: 3px solid #FFFFFF;
  text-align: center;
  padding: 5px 0 10px;
}
.content-bottom .content-bottom-inner .list-lineup li:hover img {
  opacity: 0.8;
}
.content-bottom .content-bottom-inner .list-lineup li.wiiu:hover img,
.content-bottom .content-bottom-inner .list-lineup li.n3ds:hover img,
.content-bottom .content-bottom-inner .list-lineup li.wiiu .btn:hover,
.content-bottom .content-bottom-inner .list-lineup li.n3ds .btn:hover {
  opacity: 1;
}
.content-bottom .content-bottom-inner .list-lineup li .btn:hover {
    opacity: 0.8;
}
.content-bottom .content-bottom-inner .list-lineup li:first-child {
  border: none;
}
.content-bottom .content-bottom-inner .list-lineup li .logo {
  height: 64px;
}
.content-bottom .content-bottom-inner .list-lineup li .btn {
  margin: 0 auto;
  width: 163px;
  border-radius: 10px;
  position: relative;
}
.content-bottom .content-bottom-inner .list-lineup li .btn a {
  display: block;
  height: 100%;
  vertical-align: middle;
  font-size: 10px;
  font-weight: bold;
  padding: 0.3em 0;
}
.content-bottom .content-bottom-inner .info {
  width: 840px;
  height: 242px;
  margin: 0 auto;
  padding: 0 15px 25px;
}

.content-bottom .content-bottom-inner .info .theme h3 {
  margin: 0 auto;
  padding: 28px 0 0 10px;

}
.content-bottom .content-bottom-inner .info .theme .theme-main {
  background: url(../images/theme_img.png) no-repeat 87% 81%;
  height: 129px;
  border-bottom: 2px solid #fff;
  padding: 24px 65px 13px;
}
.content-bottom .content-bottom-inner .info .theme .theme-main .btn{
  margin-top: 10px;
  padding-left: 10px;
  display: inline-block;
}
.content-bottom .content-bottom-inner .info .theme .theme-main .btn:hover{
  opacity: 0.8;
}
.content-bottom .content-bottom-inner .info .theme ul {
  margin-top: 10px;
}
.content-bottom .content-bottom-inner .info .list-countdown {
  margin: 16px auto 0;
  padding-left: 5px;
  display: table;
}
.content-bottom .content-bottom-inner .info .list-countdown li:first-child {
  border:none;
  background: url(../images/countdown_bg.png) no-repeat 100% 0;
  width: 200px;
  text-align: left;
  padding-left: 10px;
 }
.content-bottom .content-bottom-inner .info .list-countdown li:last-child {
  border:none;
 }
.content-bottom .content-bottom-inner .info .list-countdown li {
  display: table-cell;
  vertical-align: middle;
  width: 190px;
  line-height: 2.5;
  border-right: 1px solid #fff;
  text-align: center;
}
.content-bottom .content-bottom-inner .info .list-countdown li a {
  display: block;
  position: relative;
}
.content-bottom .content-bottom-inner .info .list-countdown li a img {
  padding-left: 17px;
  padding-bottom: 2px;
  vertical-align: middle;
}
.content-bottom .content-bottom-inner .info .list-countdown li a:hover:after {
  content: "";
  bottom: 0;
  left: 5%;
  position: absolute;
  border-bottom: 1px solid #fff;
  width: 90%;
  height: 1px;
}
.content-bottom .footer {
  display: block;
  width: 872px;
  height: 77px;
  margin: 0 auto;
  padding-bottom: 24px;
}
.content-bottom .footer .fll {
  width: 675px;
}
.content-bottom .footer .flr {
  width: 111px;
  padding-right: 20px;
}
.content-bottom .footer .footer-utility {
  overflow: hidden;
  padding: 15px 0;
}
.content-bottom .footer .footer-utility .footer-list {
  width: 441px;
  padding: 5px 14px 18px;
  float: left;
  width: 100%;
}
.content-bottom .footer .footer-utility .footer-list li {
  float: left;
  padding-left: 14px;
  margin-left: 35px;
}
.content-bottom .footer .footer-utility .footer-list li:hover img {
  opacity: 0.8;
}
.content-bottom .footer .footer-utility .footer-list li:first-child {
  margin-left: 0;
}
.content-bottom .footer .footer-utility .footer-list li a {
  display: block;
}
.content-bottom .footer .footer-utility .page-top {
  display: block;
  padding: 0 14px 0 14px;
}
.content-bottom .footer .footer-utility #sns {
  display: block;
  margin: 7px 0 0 23px;
}
.content-bottom .footer .footer-utility #sns li {
  display: inline-block;
  float: left;
  width: 27px;
  margin-left: 15px;
}
.content-bottom .footer .footer-utility #sns li a:hover {
  opacity: 0.8;
}
.content-bottom .footer .copyright {
  display: block;
  color: #fff;
  font-weight: bold;
  font-size: 10px;
  text-align: left;
  padding-left: 26px;
  margin-top: 23px;
}


/* --------------------------------------------------------
Switcbnr
-------------------------------------------------------- */

.switchBnr{
	background: #000;
	width: 100%;
	padding: 40px 0;
}
.switchBnr_inner{
	width: 675px;
	margin: 0 auto;
}
.switchBnr_inner a{
	position: relative;
}
.switchBnr_inner img{
	max-width: 100%;
}
.switchBnr_inner a:hover:after{
	position: absolute;
	content: "";
	bottom: 0;
	right: -5px;
	width: 585px;
	height: 2px;
	background: #fff;
}

.header-utility:after,
.content-top:after,
.title-area:after,
.list-lineup:after,
.header-inner:after,
.footer-utility:after,
.footer-list:after,
.page-top:after,
.update-sec.vol3:after,
#sns:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
