@charset "UTF-8";
/*animation*/
@keyframes scrollAnime {
  0% {
    transform: translateX(0); }
  100% {
    transform: translateX(-100%); } }
html,
body {
  overflow-x: hidden; }

/*公開前*/
.invisible {
  display: none !important; }

/*color*/
/*BG*/
.bg-indigo {
  background-color: #123565; }

.bg-orange {
  background-color: #fbb400; }

.bg-gray {
  background-color: #aaabab; }

.bg-black {
  background-color: #000; }

.bg-white {
  background-color: #fff; }

.bg-grad-indigo {
  background: #132643;
  background: -moz-linear-gradient(top, #132643 0%, #12365c 100%);
  background: -webkit-linear-gradient(top, #132643 0%, #12365c 100%);
  background: linear-gradient(to bottom, #132643 0%, #12365c 100%); }

.bg-grad-yellow {
  background: #fbcf3b;
  background: -moz-linear-gradient(top, #ffffff 0%, #fff03b 33%, #fbcf3b 100%);
  background: -webkit-linear-gradient(top, #ffffff 0%, #fff03b 33%, #fbcf3b 100%);
  background: linear-gradient(to bottom, #ffffff 0%, #fff03b 33%, #fbcf3b 100%); }

.bg-grad-gray {
  background: #000000;
  background: -moz-linear-gradient(left, #000000 0%, #ffffff 70%);
  background: -webkit-linear-gradient(left, #000000 0%, #ffffff 70%);
  background: linear-gradient(to right, #000000 0%, #ffffff 70%); }

/*TX*/
.tx-indigo {
  color: #123565; }

.tx-orange {
  color: #fbb400; }

.tx-red {
  color: #ed1c24; }

.tx-white {
  color: #fff; }

.tx-black {
  color: #000; }

.tx-gray {
  color: #aaabab; }

/*common*/
body.lock {
  overflow-y: hidden; }

section {
  width: 100%;
  height: auto;
  position: relative;
  padding: 100px 0; }
  section.pt0 {
    padding-top: 0; }
  section.pb0 {
    padding-bottom: 0; }

.inner-wrap {
  width: 94%;
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
  z-index: 1; }

.bt-wrap {
  text-align: center;
  padding: 80px 0; }
  .bt-wrap .bt {
    display: inline-block;
    padding: 20px 60px;
    background-color: #fff;
    border-radius: 10px;
    font-size: 27px;
    color: #123565;
    font-weight: 700;
    box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.8); }

.inner-bt {
  display: block;
  text-align: center;
  padding: 8px;
  background-color: #123565;
  color: #fff;
  max-width: 300px;
  margin-top: 18px;
  margin-left: auto;
  position: relative;
  font-size: 16px;
  border-radius: 4px; }

.movie-wrap {
  width: 100%;
  padding-top: 56.25%;
  position: relative; }
  .movie-wrap iframe {
    width: calc(100% - 16px);
    height: calc(100% - 16px);
    position: absolute;
    top: 0;
    left: 0;
    border: 8px solid #fbb400; }

.zombie-wrap {
  width: calc(100% - 16px);
  max-width: calc(600px - 16px);
  margin: auto;
  border: 8px solid #fbb400; }
  .zombie-wrap img {
    width: 100%;
    height: auto;
    display: block; }

.click:hover {
  opacity: 0.8; }

/*load*/
#load {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  background-color: #000;
  z-index: 9999;
  overflow: hidden; }
  #load.hide {
    display: none; }
  #load .prison-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 100vh;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1; }
    #load .prison-wrap .prison {
      width: 50%;
      display: block;
      position: relative;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      transition: all 0.3s; }
      #load .prison-wrap .prison .prison-border {
        width: 100%;
        height: 40px;
        display: block; }
      #load .prison-wrap .prison ul {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; }
        #load .prison-wrap .prison ul li {
          display: inline-block;
          width: 100%;
          height: calc(100vh - 80px); }
          #load .prison-wrap .prison ul li:nth-child(odd) {
            width: 20px;
            flex-shrink: 0; }
      #load .prison-wrap .prison.prison-left {
        padding-right: 50%;
        margin-left: -50%; }
      #load .prison-wrap .prison.prison-right {
        padding-left: 50%;
        margin-right: -50%; }
      #load .prison-wrap .prison.close {
        padding: 0;
        margin: 0; }
  #load .load-wrap {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center; }
    #load .load-wrap .op-copy {
      width: 90%;
      max-width: 800px;
      margin: 0 auto;
      display: block; }
      #load .load-wrap .op-copy img {
        width: 100%;
        height: auto;
        opacity: 1;
        display: block; }
        #load .load-wrap .op-copy img.hide {
          opacity: 0; }
    #load .load-wrap .load-img {
      width: 150px;
      height: 150px;
      margin: auto;
      margin-top: 60px;
      display: block; }
      #load .load-wrap .load-img img {
        width: 100%;
        height: auto;
        display: block; }

.menu-switch,
.close-switch {
  position: fixed;
  top: -120px;
  right: 0;
  z-index: 999;
  width: 150px;
  display: block;
  -webkit-transition: all 1s;
  -moz-transition: all 1s;
  -ms-transition: all 1s;
  transition: all 1s; }
  .menu-switch.top-menu,
  .close-switch.top-menu {
    top: -320px; }
  .menu-switch img,
  .close-switch img {
    width: 100%;
    height: auto;
    display: block; }
  .menu-switch:hover,
  .close-switch:hover {
    top: -80px; }
  .menu-switch.hide,
  .close-switch.hide {
    top: -400px; }

#welcome-movie {
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.6);
  position: fixed;
  z-index: 1000;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  opacity: 0; }
  #welcome-movie .movie-close {
    background-color: rgba(255, 255, 255, 0.75);
    width: 240px;
    padding: 12px 0px;
    text-align: center;
    margin: 20px auto 0; }
    #welcome-movie .movie-close:hover {
      background-color: #fff; }

/*header*/
header {
  width: 100%;
  height: auto;
  position: relative; }
  header .dgame {
    position: absolute;
    top: 0;
    left: 0;
    width: 20%;
    max-width: 200px;
    z-index: 89; }
    header .dgame img {
      width: 100%;
      height: auto; }
  header .dome-city {
    position: absolute;
    top: 0;
    left: 0;
    width: 20%;
    max-width: 200px;
    z-index: 89; }
    header .dome-city img {
      width: 100%;
      height: auto; }
  header .re-logo {
    position: absolute;
    top: 0;
    right: 0;
    width: 30%;
    max-width: 320px;
    z-index: 89; }
    header .re-logo img {
      width: 100%;
      height: auto; }
  header #main-visual {
    position: relative;
    width: 100%;
    height: auto;
    z-index: 0;
    display: block;
    overflow-x: hidden; }
    header #main-visual .main-visual-back {
      width: 100%;
      margin: 0 auto;
      height: auto;
      position: relative;
      display: block; }
      header #main-visual .main-visual-back img {
        width: 100%;
        height: auto;
        opacity: 1;
        display: block; }
        header #main-visual .main-visual-back img.hide {
          opacity: 0; }
    header #main-visual h1 {
      position: absolute;
      z-index: 1;
      width: 100%;
      height: auto;
      margin: auto;
      top: 0;
      left: 25%;
      display: block;
      -webkit-transition: all 1s;
      -moz-transition: all 1s;
      -ms-transition: all 1s;
      transition: all 1s; }
      header #main-visual h1 img {
        width: 55%;
        max-width: 1030px;
        height: auto;
        margin: auto 22.5%;
        display: block;
        -webkit-transition: all 0.5s;
        -moz-transition: all 0.5s;
        -ms-transition: all 0.5s;
        transition: all 0.5s; }
        header #main-visual h1 img.end {
          margin-left: 0; }
      header #main-visual h1.hide {
        display: none; }
    header #main-visual .main-visual-img {
      width: 55%;
      z-index: 2;
      position: absolute;
      top: 20%;
      display: block;
      right: 0;
      left: 0;
      margin: 0 auto; }
      header #main-visual .main-visual-img img {
        width: 100%;
        height: auto;
        margin: auto;
        display: block;
        opacity: 1; }
        header #main-visual .main-visual-img img.mv-parts {
          display: block;
          position: absolute;
          top: 0;
          left: 0; }
          header #main-visual .main-visual-img img.mv-parts:nth-child(1) {
            position: relative; }
        header #main-visual .main-visual-img img.hide {
          opacity: 0; }
  header .page-date {
    width: 96%;
    margin: 0 auto;
    max-width: 800px; }
    header .page-date img {
      width: 100%; }
  header .page-title {
    width: 96%;
    margin: -25% auto 0;
    padding: 4% 2% 2%;
    position: relative;
    z-index: 1; }
    header .page-title .dog {
      display: inline-block;
      width: 10%;
      min-width: 60px; }
    header .page-title h2 {
      display: inline-block;
      width: 50%; }
      header .page-title h2 img {
        width: 100%;
        height: auto; }
  header.stage-page {
    margin-bottom: -100px; }

/*slider*/
#photo-slider {
  width: 100%;
  z-index: 0;
  padding: 12px 0;
  overflow-x: hidden; }
  #photo-slider .photo-slider-wrap .slide {
    margin: 0 6px; }
    #photo-slider .photo-slider-wrap .slide img {
      width: 100%;
      max-width: 400px;
      height: auto;
      border: 1px solid #fff; }

/*main*/
main.main {
  padding-top: 120px; }

h5.catch {
  color: #182946;
  padding: 1em 0;
  border-top: solid 2px #182946;
  border-bottom: solid 2px #182946;
  font-feature-settings: "palt";
  letter-spacing: 2px; }

.date-table-wrap {
  max-width: 800px;
  margin: 0 auto; }

#next-stage .next-stage-wrap,
#infomation .next-stage-wrap {
  width: 100%;
  height: auto;
  overflow: hidden;
  margin-top: -100px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  flex-wrap: nowrap; }
  #next-stage .next-stage-wrap .next-stage-content,
  #infomation .next-stage-wrap .next-stage-content {
    flex-shrink: 0;
    width: 210px;
    height: 210px;
    border-radius: 50%;
    background-image: url("../images/stage_img.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    margin: 0 20px;
    text-align: center; }
    #next-stage .next-stage-wrap .next-stage-content .next-stage-area,
    #infomation .next-stage-wrap .next-stage-content .next-stage-area {
      color: #fff;
      font-size: 33px;
      margin-top: 52%;
      line-height: 1.2em; }
    #next-stage .next-stage-wrap .next-stage-content .next-stage-park,
    #infomation .next-stage-wrap .next-stage-content .next-stage-park {
      color: #fff;
      font-size: 12px;
      font-weight: 900; }
    #next-stage .next-stage-wrap .next-stage-content.active,
    #infomation .next-stage-wrap .next-stage-content.active {
      width: 300px;
      height: 300px;
      border: 12px solid #fbb400;
      margin-bottom: 40px; }
      #next-stage .next-stage-wrap .next-stage-content.active .next-stage-area,
      #infomation .next-stage-wrap .next-stage-content.active .next-stage-area {
        font-size: 50px; }
      #next-stage .next-stage-wrap .next-stage-content.active .next-stage-park,
      #infomation .next-stage-wrap .next-stage-content.active .next-stage-park {
        font-size: 18px; }
    #next-stage .next-stage-wrap .next-stage-content.prepare,
    #infomation .next-stage-wrap .next-stage-content.prepare {
      background-image: url("../images/stage_img_off.png"); }
#next-stage .news-terop,
#infomation .news-terop {
  display: none;
  width: calc(100% - 40px);
  padding: 24px 12px;
  border: 8px solid #fbb400;
  margin-top: 40px;
  text-align: center;
  overflow: hidden; }
  #next-stage .news-terop h5,
  #infomation .news-terop h5 {
    font-weight: 500;
    display: inline-block;
    white-space: nowrap;
    padding-left: 100%;
    line-height: 1em;
    animation: scrollAnime 10s linear infinite; }
#next-stage .schedule-wrap,
#infomation .schedule-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 60px; }
  #next-stage .schedule-wrap .schedule,
  #infomation .schedule-wrap .schedule {
    border-left: 2px solid #ddd;
    margin-left: 40px;
    padding-left: 40px;
    width: calc(100% - 84px); }
    #next-stage .schedule-wrap .schedule ul .time,
    #infomation .schedule-wrap .schedule ul .time {
      background-color: #aaabab;
      display: block;
      padding: 4px 8px;
      margin: 8px 0; }
      #next-stage .schedule-wrap .schedule ul .time.late,
      #infomation .schedule-wrap .schedule ul .time.late {
        background-color: #fbb400; }
      #next-stage .schedule-wrap .schedule ul .time.early,
      #infomation .schedule-wrap .schedule ul .time.early {
        background-color: #fff794; }
    #next-stage .schedule-wrap .schedule .plus,
    #infomation .schedule-wrap .schedule .plus {
      font-size: 24px;
      font-weight: 600;
      color: #123565;
      width: calc(100% - 54px);
      text-align: center;
      margin: auto;
      margin-bottom: 18px;
      border: 12px solid #123565;
      padding: 36px 16px;
      line-height: 1em; }
    #next-stage .schedule-wrap .schedule .month,
    #infomation .schedule-wrap .schedule .month {
      font-size: 24px; }
    #next-stage .schedule-wrap .schedule table,
    #infomation .schedule-wrap .schedule table {
      width: 100%;
      height: auto;
      font-size: 18px;
      margin-bottom: 30px; }
      #next-stage .schedule-wrap .schedule table tr,
      #infomation .schedule-wrap .schedule table tr {
        text-align: center; }
        #next-stage .schedule-wrap .schedule table tr th,
        #next-stage .schedule-wrap .schedule table tr td,
        #infomation .schedule-wrap .schedule table tr th,
        #infomation .schedule-wrap .schedule table tr td {
          text-align: center;
          border: 1px solid #aaa;
          position: relative; }
          #next-stage .schedule-wrap .schedule table tr th span,
          #next-stage .schedule-wrap .schedule table tr td span,
          #infomation .schedule-wrap .schedule table tr th span,
          #infomation .schedule-wrap .schedule table tr td span {
            display: inline-block;
            height: 40px;
            width: 40px;
            line-height: 1.8em; }
            #next-stage .schedule-wrap .schedule table tr th span.on,
            #next-stage .schedule-wrap .schedule table tr td span.on,
            #infomation .schedule-wrap .schedule table tr th span.on,
            #infomation .schedule-wrap .schedule table tr td span.on {
              background-color: #fbb400;
              border-radius: 50%;
              box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4); }
            #next-stage .schedule-wrap .schedule table tr th span.so:before,
            #next-stage .schedule-wrap .schedule table tr td span.so:before,
            #infomation .schedule-wrap .schedule table tr th span.so:before,
            #infomation .schedule-wrap .schedule table tr td span.so:before {
              content: "";
              display: block;
              width: 100%;
              height: 100%;
              background-color: rgba(0, 0, 0, 0.6);
              position: absolute;
              top: 0;
              left: 0; }
            #next-stage .schedule-wrap .schedule table tr th span.so:after,
            #next-stage .schedule-wrap .schedule table tr td span.so:after,
            #infomation .schedule-wrap .schedule table tr th span.so:after,
            #infomation .schedule-wrap .schedule table tr td span.so:after {
              content: "SOLD\AOUT";
              width: 100%;
              position: absolute;
              top: 0;
              bottom: 0;
              left: 0;
              display: block;
              font-size: 12px;
              line-height: 1em;
              color: #fff;
              font-weight: 500;
              text-align: center;
              padding-top: 20px;
              transform: rotate(-12deg); }
          #next-stage .schedule-wrap .schedule table tr th:nth-child(7),
          #next-stage .schedule-wrap .schedule table tr td:nth-child(7),
          #infomation .schedule-wrap .schedule table tr th:nth-child(7),
          #infomation .schedule-wrap .schedule table tr td:nth-child(7) {
            background-color: #f7c5b2; }
            #next-stage .schedule-wrap .schedule table tr th:nth-child(7) span.on,
            #next-stage .schedule-wrap .schedule table tr td:nth-child(7) span.on,
            #infomation .schedule-wrap .schedule table tr th:nth-child(7) span.on,
            #infomation .schedule-wrap .schedule table tr td:nth-child(7) span.on {
              background-color: #fff794; }
          #next-stage .schedule-wrap .schedule table tr th:nth-child(6),
          #next-stage .schedule-wrap .schedule table tr td:nth-child(6),
          #infomation .schedule-wrap .schedule table tr th:nth-child(6),
          #infomation .schedule-wrap .schedule table tr td:nth-child(6) {
            background-color: #c0d4ff; }
            #next-stage .schedule-wrap .schedule table tr th:nth-child(6) span.on,
            #next-stage .schedule-wrap .schedule table tr td:nth-child(6) span.on,
            #infomation .schedule-wrap .schedule table tr th:nth-child(6) span.on,
            #infomation .schedule-wrap .schedule table tr td:nth-child(6) span.on {
              background-color: #fff794; }
          #next-stage .schedule-wrap .schedule table tr th.syuku,
          #next-stage .schedule-wrap .schedule table tr td.syuku,
          #infomation .schedule-wrap .schedule table tr th.syuku,
          #infomation .schedule-wrap .schedule table tr td.syuku {
            background-color: #f7c5b2; }
            #next-stage .schedule-wrap .schedule table tr th.syuku span.on,
            #next-stage .schedule-wrap .schedule table tr td.syuku span.on,
            #infomation .schedule-wrap .schedule table tr th.syuku span.on,
            #infomation .schedule-wrap .schedule table tr td.syuku span.on {
              background-color: #fff794; }
        #next-stage .schedule-wrap .schedule table tr th,
        #infomation .schedule-wrap .schedule table tr th {
          padding: 4px 0; }
        #next-stage .schedule-wrap .schedule table tr td,
        #infomation .schedule-wrap .schedule table tr td {
          padding: 12px 0;
          font-size: 21px; }

#stage-info {
  text-align: center;
  margin: 200px 0; }
  #stage-info.mt0 {
    margin-top: 0; }
  #stage-info .stageinfo-bg-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    margin: 0 -50% 0;
    transform: rotate(-10deg); }
  #stage-info h5 a {
    border-bottom: 2px solid #fff; }

.bt-to-ticket {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 180px;
  height: 180px;
  z-index: 80;
  background-image: url(../images/ticket_bk.png);
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  display: block; }
  .bt-to-ticket a {
    display: block;
    width: 100%;
    height: 100%; }
    .bt-to-ticket a img {
      width: 120%;
      height: 120%;
      position: absolute;
      bottom: -15%;
      right: -15%;
      -webkit-transition: all 0.2s;
      -moz-transition: all 0.2s;
      -ms-transition: all 0.2s;
      transition: all 0.2s; }
    .bt-to-ticket a:hover img {
      bottom: 0;
      right: 0; }

#staff-title {
  text-align: center;
  margin: 180px 0; }
  #staff-title .staff-title-bg-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    margin: 0 -50% 0;
    transform: rotate(-10deg); }

.staff-content .staff-form-wrap {
  width: 100%;
  height: auto;
  margin-bottom: 180px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center; }
  .staff-content .staff-form-wrap .staff-link {
    width: 30%;
    margin: 1%; }
    .staff-content .staff-form-wrap .staff-link a {
      width: 100%;
      height: auto;
      text-align: center;
      display: block;
      color: #fff;
      font-weight: 500;
      font-size: 20px;
      padding: 40px 0;
      border-radius: 6px;
      -webkit-transition: all 0.5s;
      -moz-transition: all 0.5s;
      -ms-transition: all 0.5s;
      transition: all 0.5s; }
      .staff-content .staff-form-wrap .staff-link a:hover {
        opacity: 0.7; }
      .staff-content .staff-form-wrap .staff-link a span {
        display: block;
        font-size: 32px;
        color: #fff; }

#caution-title {
  text-align: center;
  margin: 180px 0; }
  #caution-title .caution-title-bg-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    margin: 0 -50% 0;
    transform: rotate(-10deg); }

#faq-title {
  text-align: center;
  margin: 180px 0; }
  #faq-title .faq-title-bg-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    margin: 0 -50% 0;
    transform: rotate(-10deg); }

.faq-content p:before {
  content: "\025a0"; }
.faq-content p.ans:before {
  content: "A:";
  font-weight: 700; }
.faq-content ul {
  display: block;
  background-color: #eee;
  padding: 12px;
  margin: 16px 0 40px;
  border-radius: 6px; }
  .faq-content ul li {
    border-top: 1px dashed #aaa;
    margin-bottom: 0px;
    padding: 12px 8px; }
    .faq-content ul li:nth-child(1) {
      border: none; }

.goods-content .goods-wrap {
  width: 100%;
  margin-bottom: 60px;
  padding-bottom: 50px;
  border-bottom: 1px dashed #ddd;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center; }
  .goods-content .goods-wrap:nth-of-type(2n) {
    -ms-flex-direction: row-reverse;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse; }
  .goods-content .goods-wrap .image-box {
    width: 50%;
    padding: 20px; }
    .goods-content .goods-wrap .image-box img {
      width: 100%;
      height: auto; }
  .goods-content .goods-wrap .text-box {
    width: 50%;
    padding: 30px 20px; }
    .goods-content .goods-wrap .text-box .detail {
      display: block;
      background-color: #143565;
      color: #fff;
      padding: 12px 8px;
      line-height: 1em;
      font-size: 15px;
      font-weight: 500; }
    .goods-content .goods-wrap .text-box .price {
      display: block;
      line-height: 1em;
      padding: 8px;
      padding-bottom: 12px;
      border-bottom: 1px solid #ddd;
      text-align: right;
      font-size: 21px;
      font-weight: 500; }
    .goods-content .goods-wrap .text-box p {
      padding-top: 12px; }
    .goods-content .goods-wrap .text-box .store {
      display: block;
      background-color: #b70e0e;
      color: #fff;
      padding: 16px 10px;
      padding-left: 46px;
      line-height: 1em;
      border-radius: 4px;
      position: relative;
      width: 200px;
      margin-left: auto;
      font-size: 15px;
      text-align: center; }
      .goods-content .goods-wrap .text-box .store:before {
        content: "";
        background-image: url(../images/icon_cart.png);
        display: block;
        width: 30px;
        height: 30px;
        background-size: 100%;
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        top: 8px;
        left: 11px; }
      .goods-content .goods-wrap .text-box .store:hover {
        opacity: 0.75; }
    .goods-content .goods-wrap .text-box h5 {
      color: #143565;
      padding-bottom: 20px; }
    .goods-content .goods-wrap .text-box form input[type="text"] {
      border-radius: 4px;
      width: calc(100% - 110px);
      border: 3px solid #143565;
      padding: 8px;
      background-color: #eee; }
    .goods-content .goods-wrap .text-box form button {
      width: 70px;
      border: none;
      background: #fbb400;
      color: #fff;
      padding: 10px;
      border-radius: 4px;
      margin-left: 10px; }
    .goods-content .goods-wrap .text-box .result-img {
      width: 100%;
      display: none; }
      .goods-content .goods-wrap .text-box .result-img img {
        width: 100%;
        height: auto; }
      .goods-content .goods-wrap .text-box .result-img.compleate {
        display: block; }
  .goods-content .goods-wrap.last-wrap {
    border-bottom: none;
    padding: 20px 0;
    background-color: #143565;
    border-radius: 12px; }
    .goods-content .goods-wrap.last-wrap .text-box h5 {
      color: #fbb400; }
    .goods-content .goods-wrap.last-wrap .text-box form input[type="text"] {
      border: 3px solid #fbb400; }
    .goods-content .goods-wrap.last-wrap.hide {
      display: none; }

#caution {
  text-align: left;
  padding: 250px 0; }

.faq-navi .faq-navi-wrap,
.faq-navi .goods-navi-wrap,
.goods-navi .faq-navi-wrap,
.goods-navi .goods-navi-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center; }
  .faq-navi .faq-navi-wrap a,
  .faq-navi .goods-navi-wrap a,
  .goods-navi .faq-navi-wrap a,
  .goods-navi .goods-navi-wrap a {
    display: block;
    width: 50%;
    max-width: 300px;
    text-align: center;
    border: 1px solid #123565;
    padding: 20px 8px; }
    .faq-navi .faq-navi-wrap a span,
    .faq-navi .goods-navi-wrap a span,
    .goods-navi .faq-navi-wrap a span,
    .goods-navi .goods-navi-wrap a span {
      font-size: 21px; }
    .faq-navi .faq-navi-wrap a:nth-child(2),
    .faq-navi .goods-navi-wrap a:nth-child(2),
    .goods-navi .faq-navi-wrap a:nth-child(2),
    .goods-navi .goods-navi-wrap a:nth-child(2) {
      border-left: none; }

.practice-wrap {
  width: 100%;
  max-width: 800px;
  height: auto;
  margin: auto;
  margin-bottom: 80px; }
  .practice-wrap .practice-img {
    width: 100%;
    height: auto; }
    .practice-wrap .practice-img img {
      width: 100%;
      height: auto; }
  .practice-wrap .practice-challenge {
    width: 90%;
    max-width: 800px;
    height: auto;
    margin: auto;
    padding: 0 4%;
    margin-top: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center; }
    .practice-wrap .practice-challenge .practice-num {
      width: 200px;
      min-width: 90px;
      height: auto; }
      .practice-wrap .practice-challenge .practice-num img {
        width: 100%;
        height: auto; }
    .practice-wrap .practice-challenge .practice-form {
      width: 98%;
      min-width: 210px;
      padding-right: 2%; }
      .practice-wrap .practice-challenge .practice-form input {
        width: calc(96% - 28px);
        border: 2px solid #123565;
        display: block;
        padding: 12px;
        margin-left: 4%; }
      .practice-wrap .practice-challenge .practice-form button {
        width: 96%;
        background-color: #123565;
        text-align: center;
        color: #fff;
        border: none;
        padding: 12px 0;
        margin-top: 12px;
        margin-left: 4%; }

.practice-hint {
  margin-top: 20px; }
  .practice-hint .hint-ac {
    width: calc(90% - 2em);
    max-width: 800px;
    background-color: #123565;
    text-align: center;
    color: #fff;
    margin: 0 auto;
    padding: 1em;
    position: relative; }
    .practice-hint .hint-ac:after {
      content: "";
      position: absolute;
      width: 1em;
      height: 1em;
      right: 1em;
      top: 50%;
      transform: translateY(-50%);
      background: url(../images/arrow-w.svg);
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
      transition-duration: .3s; }
    .practice-hint .hint-ac.ac-active:after {
      transform: translateY(-50%) rotate(180deg); }
  .practice-hint .hint-text {
    width: calc(90% - 2em);
    max-width: 800px;
    margin: 0 auto;
    padding: 1em;
    text-align: left;
    display: none; }

.music-wrap {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .music-wrap .music-text {
    width: calc(50% - 20px);
    margin-right: 20px; }
  .music-wrap .music-image {
    width: calc(50% - 20px);
    margin-left: 20px; }
    .music-wrap .music-image img {
      width: 100%; }
  .music-wrap.intokyo {
    margin: 0 auto 0;
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column; }
    .music-wrap.intokyo .music-text,
    .music-wrap.intokyo .music-image {
      margin: 0 auto;
      width: 100%;
      text-align: center; }
      .music-wrap.intokyo .music-text img,
      .music-wrap.intokyo .music-image img {
        width: 100%;
        max-width: 480px;
        margin: auto;
        display: block; }
    .music-wrap.intokyo .music-image {
      padding-top: 40px; }
    .music-wrap.intokyo .music-text {
      max-width: 600px;
      margin: 40px auto; }
      .music-wrap.intokyo .music-text .inner-bt {
        margin: 18px auto; }

#splive {
  text-align: center;
  margin: 20px 0 0; }
  #splive .splive-bg-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    margin: 0 -50% 0;
    transform: rotate(-10deg); }

.baloon-comment {
  position: absolute;
  top: -220px;
  left: -45px;
  width: 290px; }
  .baloon-comment img {
    width: 100%;
    height: auto; }

.live-box {
  text-align: center;
  padding: 40px 0; }
  .live-box .live-wrap {
    text-align: center;
    border: 2px solid #fbb400;
    padding: 20px;
    margin: 60px auto; }
    .live-box .live-wrap legend {
      padding: 0 1em; }
    .live-box .live-wrap h4 {
      margin-bottom: 0; }
  .live-box .live-btn {
    padding: .5em 1em;
    margin: 20px auto;
    width: calc(100% - 2em);
    max-width: 320px;
    background: #122e50;
    color: #fff;
    border: solid 2px #fff;
    border-radius: 4px;
    transition-duration: .3s;
    display: block; }
    .live-box .live-btn:hover {
      background: #fff;
      color: #122e50;
      border: solid 2px #122e50; }

.music-cm {
  margin-bottom: 100px; }

#music-info {
  padding: 200px 0 150px;
  margin-bottom: 100px;
  margin-top: 50px;
  padding-bottom: 400px; }
  #music-info .about-wrap .about-wrap-comment {
    width: 100%;
    height: auto;
    position: relative;
    padding-top: 00px;
    margin-bottom: 40px; }
    #music-info .about-wrap .about-wrap-comment .comment-inner {
      border: 8px solid #fbb400;
      padding: 30px;
      background-color: #fff; }
  #music-info .about-wrap .about-wrap-text {
    width: 100%; }
  #music-info .music-bg-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    margin: 0 -50% 0;
    transform: rotate(-10deg); }

.practice-clear,
.practice-false {
  display: none;
  z-index: 0;
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -ms-transition: all 0.5s;
  transition: all 0.5s; }
  .practice-clear.result-push,
  .practice-false.result-push {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    z-index: 1000; }
  .practice-clear .clear-wrap,
  .practice-false .clear-wrap {
    display: block;
    position: relative;
    margin: auto;
    z-index: 10; }
    .practice-clear .clear-wrap img,
    .practice-false .clear-wrap img {
      width: 100%;
      max-width: 420px; }
    .practice-clear .clear-wrap .clear-wrap-inner,
    .practice-false .clear-wrap .clear-wrap-inner {
      width: 80%;
      max-width: 500px;
      display: block;
      margin: auto;
      background-image: url(../images/back_block.jpg);
      background-size: 100%;
      border-radius: 8px;
      padding: 20px;
      border: 4px solid #12365c;
      box-shadow: 4px 4px 8px rgba(0, 0, 0, 0.5);
      overflow: hidden; }
      .practice-clear .clear-wrap .clear-wrap-inner .cf-clear-img,
      .practice-false .clear-wrap .clear-wrap-inner .cf-clear-img {
        width: 100%;
        height: auto; }
        .practice-clear .clear-wrap .clear-wrap-inner .cf-clear-img img,
        .practice-false .clear-wrap .clear-wrap-inner .cf-clear-img img {
          width: 100%;
          height: auto;
          max-width: initial; }
      .practice-clear .clear-wrap .clear-wrap-inner .cf-nav p,
      .practice-false .clear-wrap .clear-wrap-inner .cf-nav p {
        text-align: center;
        font-size: 18px;
        font-weight: 600;
        margin-bottom: 0; }
      .practice-clear .clear-wrap .clear-wrap-inner .cf-tw,
      .practice-false .clear-wrap .clear-wrap-inner .cf-tw {
        width: 100%;
        margin: 20px auto 30px; }
        .practice-clear .clear-wrap .clear-wrap-inner .cf-tw a,
        .practice-false .clear-wrap .clear-wrap-inner .cf-tw a {
          display: block;
          width: 200px;
          text-align: center;
          color: #fff;
          padding: 16px 0;
          margin: auto;
          border-radius: 4px;
          background-color: #00aced;
          border: 1px solid #51ccfb;
          box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.4); }
          .practice-clear .clear-wrap .clear-wrap-inner .cf-tw a:hover,
          .practice-false .clear-wrap .clear-wrap-inner .cf-tw a:hover {
            background-color: #28c1fb; }
          .practice-clear .clear-wrap .clear-wrap-inner .cf-tw a i,
          .practice-false .clear-wrap .clear-wrap-inner .cf-tw a i {
            font-size: 24px;
            vertical-align: sub; }
      .practice-clear .clear-wrap .clear-wrap-inner .cf-close,
      .practice-false .clear-wrap .clear-wrap-inner .cf-close {
        width: 100%;
        color: #fff;
        text-align: center;
        margin: 0 -20px -20px;
        padding: 10px 20px; }
  .practice-clear .result-back,
  .practice-false .result-back {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9;
    background-color: rgba(0, 0, 0, 0.5); }

.u22 {
  width: fit-content;
  margin: 40px auto;
  border: 2px solid #fff;
  margin-top: 5em;
  position: relative;
  padding: 2em;
  padding-top: 70px; }
  .u22 .u22-logo {
    width: 240px;
    margin: auto;
    position: absolute;
    top: -60px;
    left: 0;
    right: 0;
    background: #122e50; }
    .u22 .u22-logo img {
      width: 100%; }
  .u22 .u22-inner {
    color: #fff; }

#ticket {
  text-align: center;
  margin-top: 400px;
  padding: 180px 0; }
  #ticket h3 {
    position: absolute;
    top: -230px;
    right: 0;
    text-align: right; }
  #ticket h5 a {
    border-bottom: 2px solid #fff; }
  #ticket .comment-wrap {
    border: 2px solid #fff;
    padding: 40px;
    margin: 60px auto;
    text-align: left; }
    #ticket .comment-wrap p {
      line-height: 2em; }
  #ticket .ticket-bg-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 150%;
    margin: 0 -50% 0;
    transform: rotate(10deg); }
  #ticket .top-ticket-bg-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    margin: 0 -50% 0;
    transform: rotate(-10deg); }
  #ticket.top-ticket {
    margin-top: 0;
    padding: 60px 0 120px; }
    #ticket.top-ticket h3 {
      text-align: center;
      position: relative;
      top: initial;
      right: initial; }
  #ticket .ti-btn-box {
    display: flex;
    align-items: center;
    max-width: 500px;
    margin: 0 auto; }
    #ticket .ti-btn-box .ticket-btn {
      width: calc(48% - 2em);
      padding: .5em 1em;
      margin: 1%;
      font-size: 27px;
      font-weight: bold;
      color: #fff;
      cursor: pointer;
      border: solid 2px #fff;
      border-radius: 8px; }
    #ticket .ti-btn-box .ti-btn-active {
      background: #89672c;
      background: -moz-linear-gradient(top, #ffffff 0%, #f1b63f 10%, #e8b142 90%, #89672c 100%);
      background: -webkit-linear-gradient(top, #ffffff 0%, #f1b63f 10%, #e8b142 90%, #89672c 100%);
      background: linear-gradient(to bottom, #ffffff 0%, #f1b63f 10%, #e8b142 90%, #89672c 100%);
      border: none;
      color: #182946;
      overflow: hidden;
      border-radius: 8px;
      padding: calc(.5em + 2px) calc(1em + 2px); }
  #ticket table {
    width: 100%;
    margin: 40px auto; }
    #ticket table th,
    #ticket table td {
      text-align: center;
      width: 33%;
      color: #fff;
      border: solid 1px #fff;
      padding: 1em; }
      #ticket table th span,
      #ticket table td span {
        color: #fff; }
    #ticket table th {
      color: #182946;
      background: #cccccc;
      font-weight: bold; }
    #ticket table .ft24 {
      font-size: 24px; }
    #ticket table .min {
      font-size: 12px; }
  #ticket .notice {
    text-align: left; }
  #ticket .fc-bnr {
    display: block;
    max-width: 400px;
    margin: 20px auto; }
    #ticket .fc-bnr img {
      width: 100%; }

#buy {
  padding-bottom: 200px; }
  #buy #pg-scrap {
    border-bottom: 4px solid #477df0; }
  #buy #pg-eplus {
    border-bottom: 4px solid #ff9504; }
  #buy #pg-lowson {
    border-bottom: 4px solid #47b280; }
  #buy #pg-pia {
    border-bottom: 4px solid #fbb400; }
  #buy #pg-seven {
    border-bottom: 4px solid #39d257; }
  #buy #pg-live {
    background: #fff;
    color: #123565;
    display: block;
    padding: 1em;
    width: fit-content;
    margin: 0 auto;
    font-size: 1.2em;
    font-weight: bold;
    border-radius: 4px;
    border: solid 4px #123565;
    transition-duration: .3s; }
    #buy #pg-live:hover {
      background: #123565;
      color: #fff; }
  #buy .playguide-wrap {
    width: calc(100% - 24px);
    height: auto;
    padding: 12px;
    margin-bottom: 40px;
    position: relative; }
    #buy .playguide-wrap .playguide-header {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      -webkit-align-items: center;
      align-items: center;
      -webkit-transition: all 0.5s;
      -moz-transition: all 0.5s;
      -ms-transition: all 0.5s;
      transition: all 0.5s;
      padding: 8px 0;
      margin-bottom: 16px; }
      #buy .playguide-wrap .playguide-header:before {
        content: "";
        display: block;
        background-image: url("../images/icon_playguide.png");
        background-repeat: no-repeat;
        background-size: 100%;
        width: 60px;
        height: 80px;
        position: absolute;
        top: 0;
        left: 0; }
      #buy .playguide-wrap .playguide-header h4 {
        width: calc(100% - 350px);
        margin-bottom: 0;
        padding-left: 50px; }
        #buy .playguide-wrap .playguide-header h4.top-buy-btn {
          width: calc(100% - 200px); }
      #buy .playguide-wrap .playguide-header .playguide-bt-wrap {
        width: 300px; }
        #buy .playguide-wrap .playguide-header .playguide-bt-wrap.top-playguide-bt-wrap {
          width: 190px; }
          #buy .playguide-wrap .playguide-header .playguide-bt-wrap.top-playguide-bt-wrap a {
            font-size: 16px; }
          #buy .playguide-wrap .playguide-header .playguide-bt-wrap.top-playguide-bt-wrap span {
            font-size: 16px;
            line-height: 1em;
            padding: 4px 8px;
            margin: 0 4px;
            position: relative;
            z-index: 1;
            border-bottom: 2px solid #fff;
            color: #fff; }
        #buy .playguide-wrap .playguide-header .playguide-bt-wrap a {
          font-size: 21px;
          line-height: 1em;
          padding: 4px 8px;
          margin: 0 4px;
          border-bottom: 2px solid #fff;
          position: relative;
          z-index: 1; }
          #buy .playguide-wrap .playguide-header .playguide-bt-wrap a:after {
            content: "";
            height: 60px;
            width: 60px;
            display: block;
            background-color: rgba(255, 255, 120, 0);
            position: absolute;
            top: -8px;
            left: 20px;
            border-radius: 50%;
            z-index: 0;
            -webkit-transition: all 0.5s;
            -moz-transition: all 0.5s;
            -ms-transition: all 0.5s;
            transition: all 0.5s; }
          #buy .playguide-wrap .playguide-header .playguide-bt-wrap a:hover:after {
            background-color: rgba(255, 255, 120, 0.5);
            top: -8px;
            left: -10px; }
          #buy .playguide-wrap .playguide-header .playguide-bt-wrap a.coming {
            color: #6e91bf; }
            #buy .playguide-wrap .playguide-header .playguide-bt-wrap a.coming:after {
              content: "ComingSoon";
              position: absolute;
              width: 100%;
              height: 50%;
              font-size: 15px;
              text-align: center;
              top: 30%;
              left: 0;
              color: #fff;
              display: block;
              line-height: 15px;
              background: none;
              font-weight: 700; }
    #buy .playguide-wrap .playguide-body {
      padding: 20px;
      -webkit-transition: all 0.5s;
      -moz-transition: all 0.5s;
      -ms-transition: all 0.5s;
      transition: all 0.5s; }
      #buy .playguide-wrap .playguide-body .link-bnr {
        width: 100%;
        max-width: 420px;
        height: auto;
        display: block;
        margin: 20px auto; }
        #buy .playguide-wrap .playguide-body .link-bnr img {
          width: 100%;
          height: auto; }
    #buy .playguide-wrap.fold .playguide-header {
      margin-bottom: 0; }
    #buy .playguide-wrap.fold .playguide-body {
      padding: 0;
      height: 0;
      overflow: hidden; }
  #buy .buy-bg-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    margin: 0 -50% 0;
    transform: rotate(10deg);
    overflow: hidden; }
    #buy .buy-bg-wrap .buy-bg {
      background-image: url("../images/back_block.jpg");
      background-position: center;
      width: 100%;
      height: 200%;
      display: block;
      transform: rotate(-10deg);
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      margin: auto; }
  #buy.top-buy {
    padding: 180px 0 120px; }
    #buy.top-buy .buy-bg-wrap {
      transform: rotate(-10deg); }
      #buy.top-buy .buy-bg-wrap .buy-bg {
        transform: rotate(10deg); }

#rdg-pop {
  position: fixed;
  background: rgba(0, 0, 0, 0.4);
  z-index: 9999;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  display: none; }
  #rdg-pop .pop-close {
    position: fixed;
    right: 0;
    top: 0;
    z-index: 5;
    width: 50px;
    height: 50px;
    background: #ff9504;
    display: flex;
    align-items: center;
    justify-content: center; }
    #rdg-pop .pop-close img {
      width: 50%; }
  #rdg-pop .rdg-in {
    max-width: 600px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    background-color: #123565;
    overflow-y: auto;
    padding: 40px 0;
    height: 50%;
    width: 90%; }
  #rdg-pop .bt-wrap {
    padding: 40px 0; }
  #rdg-pop .about-wrap-text {
    margin-top: 1em; }

#goods {
  padding: 120px 0 0; }
  #goods .goods-box {
    margin-bottom: 80px; }
  #goods h3 {
    text-align: center; }
  #goods .rdg-bnr {
    max-width: 400px;
    margin: 40px auto 20px;
    cursor: pointer; }
    #goods .rdg-bnr img {
      width: 100%; }
  #goods .goods-flex {
    display: flex;
    flex-flow: wrap; }
    #goods .goods-flex .goods-wrap {
      width: 48%;
      margin: 1%;
      border-bottom: 1px dashed #ddd;
      padding-bottom: 1em; }
      #goods .goods-flex .goods-wrap img {
        width: 100%; }
  #goods .detail {
    display: block;
    background-color: #143565;
    color: #fff;
    padding: 12px 8px;
    line-height: 1em;
    font-size: 15px;
    font-weight: 500; }
  #goods .price {
    display: block;
    line-height: 1em;
    padding: 8px;
    padding-bottom: 12px;
    border-bottom: 1px solid #ddd;
    text-align: right;
    font-size: 21px;
    font-weight: 500; }
  #goods .store {
    display: block;
    background-color: #b70e0e;
    color: #fff;
    padding: 16px 10px;
    padding-left: 46px;
    line-height: 1em;
    border-radius: 4px;
    position: relative;
    width: 200px;
    margin-left: auto;
    font-size: 15px;
    text-align: center; }
    #goods .store:before {
      content: "";
      background-image: url(../images/icon_cart.png);
      display: block;
      width: 30px;
      height: 30px;
      background-size: 100%;
      background-repeat: no-repeat;
      background-position: center;
      position: absolute;
      top: 8px;
      left: 11px; }
    #goods .store:hover {
      opacity: 0.75; }
  #goods .goods-ac {
    background: #ff9504;
    color: #182946;
    padding: .5em 2em;
    width: calc(100% - 4.5em);
    position: relative;
    margin: 40px auto 1em;
    text-align: center; }
    #goods .goods-ac:after {
      content: "";
      position: absolute;
      width: 1em;
      height: 1em;
      right: .5em;
      top: 50%;
      transform: translateY(-50%) rotate(180deg);
      background: url(../images/arrow.svg);
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
      transition-duration: .3s; }
    #goods .goods-ac.ac-active:after {
      transform: translateY(-50%); }
  #goods .goods-ac-box {
    display: none; }
    #goods .goods-ac-box p {
      color: #182946; }
    #goods .goods-ac-box h4 {
      margin-bottom: 16px; }
    #goods .goods-ac-box ul {
      margin-bottom: 1em;
      padding-bottom: 1em;
      border-bottom: dashed 1px #ccc; }
    #goods .goods-ac-box.goods-ac-event ul {
      margin-bottom: 0;
      padding-bottom: 0;
      border-bottom: 0px;
      margin-bottom: 40px; }
    #goods .goods-ac-box li.mark {
      position: relative;
      padding-left: 1em; }
      #goods .goods-ac-box li.mark::after {
        content: "・";
        position: absolute;
        left: 0;
        top: 0; }
    #goods .goods-ac-box .min {
      font-size: .8em; }

#special .special-wrap {
  padding: 120px 0;
  width: 140%;
  margin: -210px -20% 0;
  transform: rotate(-10deg); }
  #special .special-wrap .special-slider {
    width: 60%;
    max-width: 1400px;
    margin: auto; }
    #special .special-wrap .special-slider div {
      margin: 0 10px; }
      #special .special-wrap .special-slider div a {
        display: block; }
        #special .special-wrap .special-slider div a img {
          width: 100%;
          height: auto; }

#news .inner-wrap {
  text-align: right; }
#news h3 {
  background-color: #fff;
  display: inline-block;
  z-index: 1;
  position: relative;
  right: 0; }
#news .news-wrap {
  width: 94%;
  height: 400px;
  border-top: 4px solid #123565;
  border-bottom: 4px solid #123565;
  overflow-x: hidden;
  overflow-y: scroll;
  margin: -150px auto 0; }
  #news .news-wrap ul {
    padding: 0 20px;
    text-align: left; }
    #news .news-wrap ul li {
      padding: 40px 0;
      border-top: 2px solid #aaabab;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      font-size: 21px; }
      #news .news-wrap ul li:nth-child(1) {
        border: none; }
      #news .news-wrap ul li span {
        margin-right: 30px; }

.spbn-wrap {
  width: 94%;
  padding: 40px 3%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  .spbn-wrap a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    transition: all 0.5s;
    position: relative;
    width: calc(100% - 64px);
    height: 80px;
    border: 8px solid #013569;
    padding: 0px 30px 0 10px;
    margin: 4px; }
    .spbn-wrap a span {
      text-align: center;
      color: #013569; }
    .spbn-wrap a:hover {
      background-color: #fbb400; }
    .spbn-wrap a:after {
      content: "\0bb";
      position: absolute;
      top: calc(50% - 15px);
      right: 20px;
      font-size: 30px;
      line-height: 1em;
      color: #013569;
      -webkit-transition: all 0.5s;
      -moz-transition: all 0.5s;
      -ms-transition: all 0.5s;
      transition: all 0.5s; }
    .spbn-wrap a:hover:after {
      right: 10px; }

.bn-wrap {
  width: 100%;
  margin: 40px auto -80px;
  display: block;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  flex-wrap: wrap; }
  .bn-wrap a {
    display: block;
    width: calc(48% - 38px);
    max-width: 400px;
    margin: 12px;
    border: 8px solid #fbb400;
    position: relative;
    overflow: hidden; }
    .bn-wrap a:after {
      content: "";
      display: block;
      width: 110%;
      padding-top: 110%;
      position: absolute;
      top: 25%;
      left: 110%;
      background-color: rgba(255, 245, 0, 0.3);
      border-radius: 50%;
      opacity: 0;
      -webkit-transition: all 0.5s;
      -moz-transition: all 0.5s;
      -ms-transition: all 0.5s;
      transition: all 0.5s; }
    .bn-wrap a img {
      width: 100%;
      height: auto;
      display: block; }
    .bn-wrap a:hover:after {
      top: -25%;
      left: -5%;
      opacity: 1; }
    .bn-wrap a .new-bn {
      width: 80px;
      height: 80px;
      background-color: #fbb400;
      display: block;
      position: absolute;
      top: -40px;
      left: -40px;
      transform: rotate(-45deg); }
      .bn-wrap a .new-bn:after {
        content: "NEW";
        position: absolute;
        bottom: 4px;
        top: auto;
        line-height: 1em;
        font-size: 16px;
        text-align: center;
        display: block;
        margin: auto;
        left: 0;
        right: 0;
        font-weight: 800; }

#point {
  position: relative;
  z-index: 0;
  padding: 120px 0 180px; }
  #point .inner-wrap {
    max-width: 1200px; }
  #point h3 {
    text-align: center; }
  #point .point-bg-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    margin: 0 -50% 0;
    transform: rotate(-10deg); }
  #point .point-wrap {
    display: flex; }
    #point .point-wrap.point-wrap2 {
      max-width: 700px;
      margin: 0 auto; }
    #point .point-wrap .point-item {
      width: 31%;
      margin: 1%;
      text-align: center; }
      #point .point-wrap .point-item img {
        width: 100%; }
      #point .point-wrap .point-item .min {
        line-height: 1.5rem; }
  #point h4 {
    text-align: center; }
  #point .comment-wrap {
    text-align: center;
    border: solid 1px #fff;
    padding: 0 1em; }
    #point .comment-wrap h4 {
      font-size: 24px; }

#point-slide .point-slider {
  width: 600px;
  height: auto;
  display: block; }
  #point-slide .point-slider img {
    width: 600px;
    height: auto;
    margin: auto;
    display: block;
    border: 8px solid #fbb400; }
  #point-slide .point-slider .slick-dots li button:before {
    color: #fff; }
  #point-slide .point-slider .slick-dots li.slick-active button:before {
    color: #fff; }

#story {
  padding: 200px 0;
  margin: 200px auto 200px; }
  #story .inner-wrap {
    max-width: 1800px; }
  #story .story-bg-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    margin: 0 -50%;
    transform: rotate(10deg);
    overflow: hidden; }
    #story .story-bg-wrap .story-bg {
      background-image: url("../images/back_story.jpg");
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center;
      width: 100%;
      height: 140%;
      display: block;
      transform: rotate(-10deg);
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      margin: auto; }
  #story .story-img-wrap {
    width: 100%;
    height: auto;
    position: relative; }
  #story .story-img-a {
    display: block;
    width: 35%;
    max-width: 500px;
    height: auto;
    position: absolute;
    top: -50%;
    right: 0%;
    pointer-events: none; }
    #story .story-img-a.active {
      top: -20%; }
    #story .story-img-a .story-img-01,
    #story .story-img-a .story-img-02,
    #story .story-img-a .story-img-03 {
      display: block;
      width: 100%;
      height: auto;
      position: absolute;
      top: 0;
      left: 0; }
  #story .story-img-b {
    display: block;
    width: 25%;
    max-width: 350px;
    height: auto;
    position: absolute;
    top: 45%;
    left: 0%;
    pointer-events: none; }
    #story .story-img-b .story-img-01,
    #story .story-img-b .story-img-02,
    #story .story-img-b .story-img-03 {
      display: block;
      width: 100%;
      height: auto;
      position: absolute;
      top: 0;
      left: 0; }
  #story .story-img-c {
    display: block;
    width: 45%;
    max-width: 600px;
    height: auto;
    position: absolute;
    bottom: -5%;
    right: 15%;
    pointer-events: none; }
    #story .story-img-c .story-img-01,
    #story .story-img-c .story-img-02 {
      display: block;
      width: 100%;
      height: auto;
      position: absolute;
      top: 0;
      left: 0; }
  #story .readmore {
    text-align: center;
    background: #fbb400;
    color: #132643;
    width: 100%;
    padding: .25em 1em;
    margin: 0 auto;
    border-radius: 4px;
    max-width: 120px;
    cursor: pointer; }

#play .play-card {
  width: 100%;
  height: auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  margin: 40px auto; }
  #play .play-card img {
    width: 40%;
    max-width: 320px;
    margin-bottom: 1em; }
  #play .play-card .play-card-text {
    width: 100%;
    padding: 1% 2%; }
#play .play-movie {
  position: absolute;
  top: -30px;
  right: 120px;
  width: 400px; }
  #play .play-movie .baloon-cm {
    position: absolute;
    top: -100px;
    right: -140px;
    width: 200px;
    height: auto;
    z-index: 0; }
    #play .play-movie .baloon-cm img {
      width: 100%;
      height: auto; }

#stage .stage-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
  width: 94%;
  max-width: 1080px;
  margin: 200px auto; }
#stage .stage-wrap-single {
  width: 210px;
  height: 210px;
  background-image: url("../images/stage_img.png");
  background-repeat: no-repeat;
  background-size: 150%;
  background-position: center;
  border-radius: 10px;
  border: 2px solid #123565;
  box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.8);
  text-align: center;
  margin: 8px;
  position: relative;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -ms-transition: all 0.5s;
  transition: all 0.5s; }
  #stage .stage-wrap-single:hover {
    background-size: 200%; }
  #stage .stage-wrap-single .stage-name {
    font-size: 18px;
    color: #fff;
    font-weight: 700; }
  #stage .stage-wrap-single .stage-area {
    font-size: 35px;
    color: #fff; }
  #stage .stage-wrap-single .stage-plus {
    display: block;
    width: 220px;
    background-color: #ff0000;
    color: #fff;
    line-height: 1em;
    padding: 8px 0;
    position: absolute;
    top: 20px;
    left: -70px;
    transform: rotate(-40deg);
    font-size: 15px;
    font-weight: 600;
    box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.5); }
    #stage .stage-wrap-single .stage-plus.gray {
      background-color: #aaabab; }
  #stage .stage-wrap-single .stage-date {
    font-size: 24px;
    color: #fff;
    line-height: 1em; }
  #stage .stage-wrap-single.gray {
    background-image: url("../images/stage_img_off.png");
    border: 2px solid #aaabab; }
  #stage .stage-wrap-single.comming {
    background-image: url("../images/stage_img_off.png");
    border: 2px solid #aaabab; }
    #stage .stage-wrap-single.comming:hover {
      background-size: 150%; }
    #stage .stage-wrap-single.comming .next {
      font-size: 18px;
      font-weight: 700;
      color: #fff; }
#stage .stage-bg-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 200%;
  height: 100%;
  margin: 300px -50% 0;
  transform: rotate(-10deg);
  overflow: hidden; }
  #stage .stage-bg-wrap .stage-bg {
    background-image: url("../images/back_block.jpg");
    background-position: center;
    width: 100%;
    height: 140%;
    display: block;
    transform: rotate(10deg);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto; }

#about,
#contact {
  padding: 300px 0;
  margin-bottom: -550px; }
  #about .about-wrap,
  #contact .about-wrap {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center; }
    #about .about-wrap .about-wrap-img,
    #contact .about-wrap .about-wrap-img {
      width: calc(50% - 20px);
      height: auto;
      margin-right: 20px; }
    #about .about-wrap .about-wrap-text,
    #contact .about-wrap .about-wrap-text {
      width: calc(50% - 20px);
      margin-left: 20px; }
  #about .about-bg-wrap,
  #contact .about-bg-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 130%;
    margin: 0 -50% 0;
    transform: rotate(-10deg); }
  #about .link-bnr,
  #contact .link-bnr {
    display: block;
    margin: 80px auto 60px;
    widows: 90%;
    max-width: 320px;
    height: auto; }
    #about .link-bnr img,
    #contact .link-bnr img {
      width: 100%;
      height: auto; }

.tx-link {
  text-decoration: underline; }
  .tx-link:hover {
    text-decoration: initial; }

#event {
  position: relative;
  z-index: 0;
  margin-top: 120px;
  padding-bottom: 60px; }
  #event .live-box .live-wrap {
    margin: 0 auto; }
  #event .live-box .live-btn {
    background: #fbb400;
    border: solid 2px #fbb400;
    color: #182946; }
    #event .live-box .live-btn:hover {
      background: #fff;
      border: solid 2px #fbb400;
      color: #fbb400; }
  #event .event-bg-wrap {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 100%;
    margin: 0 -50% 0;
    transform: rotate(-10deg);
    background: #182946; }
  #event ul {
    text-align: left; }
  #event .event-ac {
    background: #ff9504;
    color: #182946;
    padding: .5em;
    width: calc(100% - 2.5em);
    position: relative;
    margin-bottom: 1em;
    padding-right: 2em; }
    #event .event-ac:after {
      content: "";
      position: absolute;
      width: 1em;
      height: 1em;
      right: .5em;
      top: 50%;
      transform: translateY(-50%);
      background: url(../images/arrow.svg);
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain;
      transition-duration: .3s; }
    #event .event-ac.ac-active:after {
      transform: translateY(-50%) rotate(180deg); }
  #event .stage {
    text-align: center; }
  #event.mt0 {
    margin-top: 0; }
  #event h5 a {
    border-bottom: 2px solid #fff; }
  #event i {
    display: block;
    font-size: 14px;
    color: #fff;
    font-style: normal; }
  #event .date-head {
    padding: 1em;
    width: calc(100% - 2em);
    border-top: solid 1px #fbb400;
    border-bottom: solid 1px #fbb400;
    color: #fbb400;
    font-weight: bold; }
  #event .schedule {
    color: #fff; }
    #event .schedule ul .time {
      background-color: #aaabab;
      display: block;
      padding: 4px 8px;
      margin: 8px 0; }
      #event .schedule ul .time.late {
        background-color: #fbb400; }
      #event .schedule ul .time.early {
        background-color: #fff794; }
    #event .schedule .plus {
      font-size: 24px;
      font-weight: 600;
      color: #123565;
      width: calc(100% - 54px);
      text-align: center;
      margin: auto;
      margin-bottom: 18px;
      border: 12px solid #123565;
      padding: 36px 16px;
      line-height: 1em; }
    #event .schedule .month {
      font-size: 18px;
      text-align: left;
      color: #fff; }
    #event .schedule table {
      width: 100%;
      height: auto;
      font-size: 18px;
      margin-bottom: 30px; }
      #event .schedule table tr {
        text-align: center; }
        #event .schedule table tr th,
        #event .schedule table tr td {
          text-align: center;
          border: 1px solid #aaa;
          position: relative; }
          #event .schedule table tr th span,
          #event .schedule table tr td span {
            display: inline-block;
            height: 40px;
            width: 40px;
            line-height: 1.8em; }
            #event .schedule table tr th span.on,
            #event .schedule table tr td span.on {
              background-color: #fbb400;
              border-radius: 50%;
              box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4);
              color: #182946; }
            #event .schedule table tr th span.so:before,
            #event .schedule table tr td span.so:before {
              content: "";
              display: block;
              width: 100%;
              height: 100%;
              background-color: rgba(0, 0, 0, 0.6);
              position: absolute;
              top: 0;
              left: 0; }
            #event .schedule table tr th span.so:after,
            #event .schedule table tr td span.so:after {
              content: "SOLD\AOUT";
              width: 100%;
              position: absolute;
              top: 0;
              bottom: 0;
              left: 0;
              display: block;
              font-size: 12px;
              line-height: 1em;
              color: #fff;
              font-weight: 500;
              text-align: center;
              padding-top: 20px;
              transform: rotate(-12deg); }
          #event .schedule table tr th:nth-child(7),
          #event .schedule table tr td:nth-child(7) {
            background-color: #f7c5b2;
            color: #182946; }
            #event .schedule table tr th:nth-child(7) span,
            #event .schedule table tr td:nth-child(7) span {
              color: #182946; }
            #event .schedule table tr th:nth-child(7) span.on,
            #event .schedule table tr td:nth-child(7) span.on {
              background-color: #fbb400; }
          #event .schedule table tr th:nth-child(6),
          #event .schedule table tr td:nth-child(6) {
            background-color: #c0d4ff;
            color: #182946; }
            #event .schedule table tr th:nth-child(6) span,
            #event .schedule table tr td:nth-child(6) span {
              color: #182946; }
            #event .schedule table tr th:nth-child(6) span.on,
            #event .schedule table tr td:nth-child(6) span.on {
              background-color: #fbb400; }
          #event .schedule table tr th.syuku,
          #event .schedule table tr td.syuku {
            background-color: #f7c5b2;
            color: #182946; }
            #event .schedule table tr th.syuku span,
            #event .schedule table tr td.syuku span {
              color: #182946; }
            #event .schedule table tr th.syuku span.on,
            #event .schedule table tr td.syuku span.on {
              background-color: #fbb400; }
        #event .schedule table tr th {
          padding: 4px 0;
          color: #fff; }
        #event .schedule table tr td {
          padding: 12px 0;
          font-size: 21px;
          color: #fff; }
        #event .schedule table tr span {
          color: #fff; }

/*footer*/
.music-footer {
  margin-top: -600px; }

#footer-menu h3 {
  position: absolute;
  top: -100px;
  left: 0;
  text-shadow: 4px 4px 4px rgba(0, 0, 0, 0.5); }

#share ul {
  text-align: center; }
  #share ul li {
    display: inline-block;
    margin: 0 12px; }
    #share ul li a {
      font-size: 60px;
      width: 80px;
      height: 80px;
      border-radius: 10px;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -ms-flex-align: center;
      -webkit-align-items: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      /* 
      i {
          @include transitions;
      } */ }
      #share ul li a img {
        width: 100%; }
      #share ul li a:hover i {
        color: #fbb400; }

#share-nav {
  position: fixed;
  right: 1em;
  bottom: calc(180px + 1em);
  z-index: 10; }
  #share-nav ul {
    text-align: center;
    display: flex;
    flex-direction: column;
    max-width: 60px; }
    #share-nav ul li {
      display: inline-block;
      margin: 1em auto 0; }
      #share-nav ul li a {
        font-size: 60px;
        width: 60px;
        height: 60px;
        border-radius: 10px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        -webkit-align-items: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        /* 
        i {
            @include transitions;
        } */ }
        #share-nav ul li a img {
          width: 100%; }
        #share-nav ul li a:hover i {
          color: #fbb400; }

.twitter-embed {
  width: 100%;
  max-width: 600px;
  margin: 120px auto 0;
  border-top: 6px solid #123565;
  border-bottom: 6px solid #123565;
  padding-top: 6px; }

#credit {
  text-align: center;
  overflow: hidden;
  padding-top: 500px; }
  #credit .mail-mag {
    width: 90%;
    max-width: 400px;
    margin: 20px auto 40px; }
    #credit .mail-mag a {
      display: block; }
      #credit .mail-mag a img {
        width: 100%;
        height: auto; }
  #credit .realdgame {
    width: 360px;
    height: auto; }
  #credit .scrap {
    width: 400px;
    height: auto; }
  #credit .copyright {
    font-size: 15px; }
  #credit .credit-bg-wrap {
    position: absolute;
    top: 300px;
    left: 0;
    width: 200%;
    height: 100%;
    margin: 0 -50% 0;
    transform: rotate(10deg);
    border-top: 12px solid #fbb400; }

/*float-navi*/
#float-navi {
  display: block;
  position: fixed;
  width: 0;
  height: 100vh;
  top: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.9);
  z-index: 90;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  -webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -ms-transition: all 0.5s;
  transition: all 0.5s; }
  #float-navi * {
    opacity: 0;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    transition: all 0.5s; }
  #float-navi.active {
    width: 100%; }
    #float-navi.active * {
      opacity: 1; }

#float-navi {
  background: #000; }

.menu-main nav {
  max-width: 800px;
  width: calc(90% - 2em);
  padding: 1em;
  margin: 0 auto;
  text-align: center; }
  .menu-main nav ul li a {
    display: block;
    color: #fff;
    padding: 1em;
    border-bottom: solid 1px #ccc;
    transition-duration: .3s; }
    .menu-main nav ul li a:hover {
      background: #ff9504; }

.menu-wrap {
  width: 100%;
  display: block; }
  .menu-wrap .menu-border {
    width: 100%;
    height: 20px;
    display: block; }
  .menu-wrap nav {
    width: 100%;
    max-width: 1030px;
    margin: auto;
    display: block; }
    .menu-wrap nav ul {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      -webkit-align-items: center;
      align-items: center;
      height: 610px; }
      .menu-wrap nav ul li {
        display: block; }
        .menu-wrap nav ul li.sp {
          display: none; }
        .menu-wrap nav ul li a {
          -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
          -webkit-text-orientation: upright;
          text-orientation: upright;
          margin: 4px;
          height: 600px;
          padding: 0 14px;
          font-size: 32px;
          text-align: center; }
          .menu-wrap nav ul li a span {
            -webkit-transition: all 0.5s;
            -moz-transition: all 0.5s;
            -ms-transition: all 0.5s;
            transition: all 0.5s;
            color: #fff; }
          .menu-wrap nav ul li a:hover {
            text-shadow: 0 0 4px #f00; }
            .menu-wrap nav ul li a:hover span {
              color: #fff794; }
          .menu-wrap nav ul li a.coming {
            position: relative; }
            .menu-wrap nav ul li a.coming span {
              color: #777; }
            .menu-wrap nav ul li a.coming:hover {
              text-shadow: none; }
            .menu-wrap nav ul li a.coming:after {
              content: "Coming Soon";
              display: block;
              position: absolute;
              top: -26px;
              left: 0;
              color: #777;
              width: 100%;
              height: 100%;
              font-size: 14px;
              line-height: 100%;
              font-weight: 700; }
        .menu-wrap nav ul li:nth-child(odd) {
          width: 14px;
          height: 610px;
          flex-shrink: 0; }

br.sp {
  display: none; }

.sns-icon-wrap {
  display: flex;
  width: 80%;
  max-width: 240px;
  justify-content: space-between;
  margin: 0.5em auto; }
  .sns-icon-wrap a {
    display: block;
    width: 30%;
    max-width: 60px;
    overflow: hidden;
    border-radius: 0.2em; }
  .sns-icon-wrap img {
    width: 100%; }

@media screen and (max-width: 1200px) {
  #story .story-img-a {
    width: 33%;
    top: -40%; }
    #story .story-img-a.active {
      top: -15%; }
    #story .story-img-a .story-img-01,
    #story .story-img-a .story-img-02,
    #story .story-img-a .story-img-03 {
      top: 0;
      left: 0; }
  #story .story-img-b {
    width: 23%;
    top: 53%; }
    #story .story-img-b .story-img-01,
    #story .story-img-b .story-img-02,
    #story .story-img-b .story-img-03 {
      top: 0;
      left: 0; }
  #story .story-img-c {
    width: 42%;
    bottom: -5%; }
    #story .story-img-c .story-img-01,
    #story .story-img-c .story-img-02 {
      top: 0;
      left: 0; } }
@media screen and (max-width: 900px) {
  main.main {
    padding-top: 90px; }

  #story .story-img-a {
    width: 33%;
    top: -5%; }
    #story .story-img-a .story-img-01,
    #story .story-img-a .story-img-02,
    #story .story-img-a .story-img-03 {
      top: 0;
      left: 0; }
  #story .story-img-b {
    width: 23%;
    top: 60%; }
    #story .story-img-b .story-img-01,
    #story .story-img-b .story-img-02,
    #story .story-img-b .story-img-03 {
      top: 0;
      left: 0; }
  #story .story-img-c {
    width: 42%;
    bottom: -5%; }
    #story .story-img-c .story-img-01,
    #story .story-img-c .story-img-02 {
      top: 0;
      left: 0; } }
.sp {
  display: none; }

@media screen and (max-width: 767px) {
  /*common*/
  section {
    padding: 60px 0; }

  .pc {
    display: none; }

  .bt-wrap {
    padding: 40px 0; }
    .bt-wrap .bt {
      display: inline-block;
      padding: 16px 20px;
      border-radius: 8px;
      font-size: 18px; }

  .inner-bt {
    margin-right: auto; }

  /*load*/
  #load .prison-wrap .prison .prison-border {
    height: 30px; }
  #load .prison-wrap .prison ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    flex-wrap: wrap; }
    #load .prison-wrap .prison ul li {
      display: inline-block;
      width: calc(50% - 30px);
      height: calc(50vh - 45px); }
      #load .prison-wrap .prison ul li:nth-child(odd) {
        width: 20px; }
      #load .prison-wrap .prison ul li:nth-child(7) {
        display: block;
        width: 100%;
        height: 30px; }
      #load .prison-wrap .prison ul li:nth-child(6), #load .prison-wrap .prison ul li:nth-child(8) {
        display: none; }
  #load .prison-wrap .prison.prison-left {
    padding-right: 50%;
    margin-left: -50%; }
  #load .prison-wrap .prison.prison-right {
    padding-left: 50%;
    margin-right: -50%; }
  #load .prison-wrap .prison.close {
    padding: 0;
    margin: 0; }

  .menu-switch,
  .close-switch {
    top: -120px;
    width: 120px; }
    .menu-switch.hide,
    .close-switch.hide {
      top: -300px; }

  /*header*/
  header #main-visual .main-visual-back {
    width: 180%;
    margin: 0 -40%; }
  header #main-visual h1 {
    width: 95%;
    right: 0;
    left: 0;
    top: 90px; }
    header #main-visual h1 img {
      width: 100%;
      margin-left: 0; }
  header #main-visual .main-visual-img {
    width: 95%;
    position: relative;
    right: 0;
    left: 0;
    top: initial;
    margin: auto;
    margin-top: -65%; }
  header .page-title {
    width: 96%;
    margin: -10% auto 0;
    padding: 8% 2% 0%;
    position: relative;
    z-index: 1; }
    header .page-title .dog {
      display: none; }
    header .page-title h2 {
      width: 100%;
      margin: auto; }
  header.stage-page {
    margin-bottom: -100px; }

  /*slider*/
  #photo-slider {
    padding: 12px 0; }
    #photo-slider .photo-slider-wrap .slide {
      margin: 0 8px; }

  /*main*/
  #next-stage h3,
  #infomation h3 {
    text-align: center; }
  #next-stage .news-terop,
  #infomation .news-terop {
    border: 6px solid #fbb400;
    margin-top: 20px; }
  #next-stage .schedule-wrap,
  #infomation .schedule-wrap {
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column; }
    #next-stage .schedule-wrap .schedule,
    #infomation .schedule-wrap .schedule {
      border-left: none;
      margin-left: initial;
      padding-left: initial;
      width: 100%; }

  #stage-info {
    margin: 60px 0; }

  #point-slide .point-slider {
    width: 320px;
    height: auto;
    display: block; }
    #point-slide .point-slider img {
      width: 320px;
      height: auto;
      margin: auto;
      display: block; }

  .music-wrap {
    -ms-flex-direction: column-reverse;
    -webkit-flex-direction: column-reverse;
    flex-direction: column-reverse; }
    .music-wrap .music-text {
      width: 100%;
      margin-right: 0px; }
    .music-wrap .music-image {
      width: 100%;
      margin-left: 0px;
      margin-bottom: 40px; }

  .baloon-comment {
    width: 180px;
    top: -140px;
    left: -30px; }

  #music-info {
    padding: 100px 0 50px;
    margin-bottom: 0px;
    margin: 50px 0 80px;
    padding-bottom: 600px; }
    #music-info .about-wrap {
      -ms-flex-direction: column;
      -webkit-flex-direction: column;
      flex-direction: column; }
      #music-info .about-wrap .about-wrap-img {
        width: 100%;
        margin: 0px;
        margin-bottom: 40px;
        padding-top: 0; }
      #music-info .about-wrap .about-wrap-text {
        width: 100%;
        margin: 0px; }
    #music-info .music-bg-wrap {
      position: absolute;
      top: 0;
      left: 0;
      width: 200%;
      height: 100%;
      margin: 0 -50% 0;
      transform: rotate(-10deg); }

  .bt-to-ticket {
    width: 150px;
    height: 150px; }

  #staff-title {
    margin: 120px 0; }

  .staff-content .staff-form-wrap {
    margin-bottom: 80px;
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column; }
    .staff-content .staff-form-wrap .staff-link {
      width: 90%;
      margin: 8px auto; }
      .staff-content .staff-form-wrap .staff-link a {
        width: 100%; }

  #caution-title {
    margin: 120px 0 60px; }

  #faq-title {
    text-align: center;
    margin: 180px 0 60px; }

  #caution {
    padding: 100px 0; }

  .faq-navi {
    margin-bottom: 140px; }

  #ticket {
    text-align: center;
    margin-top: 200px;
    padding: 150px 0; }
    #ticket.top-ticket {
      padding: 20px 0 60px; }
    #ticket h3 {
      position: absolute;
      top: -230px;
      right: 0;
      text-align: right; }
    #ticket .comment-wrap {
      border: 2px solid #fff;
      padding: 20px;
      margin: 60px auto;
      text-align: left; }
      #ticket .comment-wrap p {
        line-height: 2em; }
    #ticket .ticket-bg-wrap {
      position: absolute;
      top: 0;
      left: 0;
      width: 300%;
      height: 150%;
      margin: 0 -100% 0;
      transform: rotate(10deg); }

  #buy {
    padding-bottom: 100px; }
    #buy #pg-scrap {
      border-bottom: 4px solid #477df0; }
    #buy #pg-eplus {
      border-bottom: 4px solid #ff9504; }
    #buy #pg-lowson {
      border-bottom: 4px solid #47b280; }
    #buy #pg-pia {
      border-bottom: 4px solid #fbb400; }
    #buy #pg-seven {
      border-bottom: 4px solid #39d257; }
    #buy .playguide-wrap {
      margin-bottom: 20px; }
      #buy .playguide-wrap .playguide-header {
        -ms-flex-direction: column;
        -webkit-flex-direction: column;
        flex-direction: column; }
        #buy .playguide-wrap .playguide-header:before {
          width: 50px;
          height: 70px; }
        #buy .playguide-wrap .playguide-header h4 {
          width: calc(100% - 50px);
          margin-bottom: 20px;
          padding-left: 50px; }
          #buy .playguide-wrap .playguide-header h4.top-buy-btn {
            width: calc(100% - 50px); }
        #buy .playguide-wrap .playguide-header .playguide-bt-wrap {
          width: 100%;
          text-align: center; }
          #buy .playguide-wrap .playguide-header .playguide-bt-wrap.top-playguide-bt-wrap {
            width: 100%; }
            #buy .playguide-wrap .playguide-header .playguide-bt-wrap.top-playguide-bt-wrap a {
              width: calc(58% - 26px); }
            #buy .playguide-wrap .playguide-header .playguide-bt-wrap.top-playguide-bt-wrap span {
              width: calc(58% - 26px); }
          #buy .playguide-wrap .playguide-header .playguide-bt-wrap a {
            width: calc(48% - 26px);
            text-align: center;
            display: inline-block; }
      #buy .playguide-wrap .playguide-body {
        padding: 10px; }
    #buy.top-buy {
      padding: 80px 0 60px; }

  #special {
    padding-top: 0; }
    #special .special-wrap {
      padding: 60px 0;
      margin: -100px -20% 0; }
      #special .special-wrap .special-slider {
        width: 140%;
        margin: auto -20%; }

  #news h3 {
    top: -70px; }
  #news .news-wrap {
    width: 100%; }
    #news .news-wrap ul {
      padding: 0 10px;
      text-align: left; }
      #news .news-wrap ul li {
        padding: 30px 0;
        -ms-flex-direction: column;
        -webkit-flex-direction: column;
        flex-direction: column;
        font-size: 16px; }
        #news .news-wrap ul li span {
          margin-right: 30px;
          display: block; }

  .spbn-wrap {
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column; }

  .bn-wrap {
    width: 100%; }
    .bn-wrap a {
      width: calc(50% - 16px);
      margin: 4px auto;
      border: 4px solid #fbb400; }

  #story {
    padding: 100px 0;
    margin: 100px auto 60px;
    position: relative; }
    #story .story-bg-wrap {
      width: 240%;
      margin: 0 -70%; }
    #story .story-img-wrap {
      margin: 40px auto; }
    #story .story-img-a {
      display: block;
      width: 80%;
      max-width: 500px;
      height: auto;
      position: relative;
      margin: auto;
      left: initial;
      right: initial;
      top: initial; }
      #story .story-img-a.active {
        top: initial; }
      #story .story-img-a .story-img-02,
      #story .story-img-a .story-img-03 {
        display: block;
        width: 100%;
        height: auto;
        position: absolute;
        top: 0;
        left: 0; }
      #story .story-img-a .story-img-01 {
        position: relative; }
    #story .story-img-b {
      display: block;
      width: 70%;
      max-width: 350px;
      height: auto;
      position: relative;
      margin: auto;
      left: initial;
      right: initial; }
      #story .story-img-b .story-img-02,
      #story .story-img-b .story-img-03 {
        display: block;
        width: 100%;
        height: auto;
        position: absolute; }
      #story .story-img-b .story-img-01 {
        position: relative; }
    #story .story-img-c {
      display: block;
      width: 100%;
      max-width: 600px;
      height: auto;
      position: relative;
      margin: auto;
      left: initial;
      right: initial; }
      #story .story-img-c .story-img-02 {
        display: block;
        width: 100%;
        height: auto;
        position: absolute;
        top: 0;
        left: 0; }
      #story .story-img-c .story-img-01 {
        position: relative; }

  #play {
    padding-top: 0; }
    #play .play-card {
      -ms-flex-direction: column;
      -webkit-flex-direction: column;
      flex-direction: column;
      margin: 40px auto 60px;
      text-align: center; }
      #play .play-card img {
        width: 100%;
        max-width: 400px; }
    #play .play-movie {
      position: relative;
      top: initial;
      right: initial;
      width: 100%;
      margin-bottom: 60px; }
      #play .play-movie .baloon-cm {
        position: absolute;
        top: -148px;
        right: 0px; }

  #stage .stage-wrap {
    margin: 60px auto; }
  #stage .stage-wrap-single {
    width: 100%;
    height: 180px;
    border-radius: 8px; }
    #stage .stage-wrap-single .stage-name {
      font-size: 15px; }
    #stage .stage-wrap-single .stage-area {
      font-size: 29px; }
    #stage .stage-wrap-single .stage-date {
      font-size: 21px; }
    #stage .stage-wrap-single.comming .next {
      font-size: 18px; }
  #stage .stage-bg-wrap {
    margin: 160px -50% 0; }

  #about,
  #contact {
    padding: 100px 0 150px;
    margin-bottom: -200px; }
    #about .about-wrap,
    #contact .about-wrap {
      -ms-flex-direction: column;
      -webkit-flex-direction: column;
      flex-direction: column; }
      #about .about-wrap .about-wrap-img,
      #contact .about-wrap .about-wrap-img {
        width: 100%;
        margin: 0px;
        margin-bottom: 40px; }
      #about .about-wrap .about-wrap-text,
      #contact .about-wrap .about-wrap-text {
        width: 100%;
        margin: 0px; }
    #about .about-bg-wrap,
    #contact .about-bg-wrap {
      position: absolute;
      top: 0;
      left: 0;
      width: 200%;
      height: 100%;
      margin: 0 -50% 0;
      transform: rotate(-10deg); }
    #about .link-bnr,
    #contact .link-bnr {
      display: block;
      margin: 80px auto 60px;
      widows: 90%;
      max-width: 320px;
      height: auto; }
      #about .link-bnr img,
      #contact .link-bnr img {
        width: 100%;
        height: auto; }

  .goods-content .goods-wrap {
    margin-bottom: 40px;
    padding-bottom: 20px;
    -ms-flex-direction: column;
    -webkit-flex-direction: column;
    flex-direction: column; }
    .goods-content .goods-wrap:nth-of-type(2n) {
      -ms-flex-direction: column;
      -webkit-flex-direction: column;
      flex-direction: column; }
    .goods-content .goods-wrap .image-box {
      width: calc(100% - 40px); }
    .goods-content .goods-wrap .text-box {
      width: calc(100% - 40px); }

  /*footer*/
  #footer-menu h3 {
    position: absolute;
    top: -100px;
    left: 0;
    text-shadow: 4px 4px 4px rgba(0, 0, 0, 0.5); }

  #share ul {
    text-align: center; }
    #share ul li {
      display: inline-block;
      margin: 0 8px; }
      #share ul li a {
        font-size: 40px;
        width: 60px;
        height: 60px;
        border-radius: 8px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        -webkit-align-items: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        -webkit-justify-content: center;
        justify-content: center;
        /* i {
            @include transitions;
        } */ }
        #share ul li a img {
          width: 100%; }
        #share ul li a:hover i {
          color: #fbb400; }

  #credit {
    padding-top: 200px;
    padding-bottom: 160px; }
    #credit .realdgame {
      width: 300px; }
    #credit .scrap {
      width: 300px; }
    #credit .copyright {
      font-size: 15px; }
    #credit .credit-bg-wrap {
      top: 100px; }

  /*float-navi*/
  #float-navi {
    display: block;
    position: fixed;
    width: 0;
    height: 100vh;
    top: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.9);
    z-index: 90;
    overflow: scroll;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    transition: all 0.5s; }
    #float-navi.active {
      width: 100%; }
    #float-navi h3 {
      margin-bottom: 0; }

  .menu-wrap {
    width: 100%; }
    .menu-wrap .menu-border {
      width: 100%;
      height: 20px; }
    .menu-wrap nav {
      width: 100%; }
      .menu-wrap nav ul {
        height: 516px;
        flex-wrap: wrap; }
        .menu-wrap nav ul li {
          display: block;
          width: calc(25% - 8px); }
          .menu-wrap nav ul li.sp {
            display: block; }
          .menu-wrap nav ul li a {
            width: 100%;
            margin: 0;
            height: 240px;
            padding: 0;
            font-size: 18px;
            -webkit-text-orientation: initial;
            text-orientation: initial;
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: center;
            -ms-flex-pack: center;
            -webkit-justify-content: center;
            justify-content: center; }
            .menu-wrap nav ul li a:hover {
              text-shadow: 0 0 20px #fbb400;
              color: #ddd; }
            .menu-wrap nav ul li a span {
              display: block;
              margin: auto; }
          .menu-wrap nav ul li:nth-child(odd) {
            width: 8px;
            height: 250px; }
          .menu-wrap nav ul li:nth-child(1), .menu-wrap nav ul li:nth-child(17) {
            display: none; }
          .menu-wrap nav ul li:nth-child(9) {
            display: block;
            width: 100%;
            height: 16px; }

  br.sp {
    display: block; }

  .u22 .u22-logo {
    width: 180px;
    top: -40px; }

  #goods .goods-flex {
    flex-direction: column; }
    #goods .goods-flex .goods-wrap {
      width: 98%; }
  #goods .goods-ac-box.goods-ac-event ul {
    margin-bottom: 30px; }

  #share-nav {
    bottom: calc(150px + 1em); }

  #point {
    padding: 100px 0; }

  #event {
    padding-bottom: 20px; } }
@media screen and (max-width: 425px) {
  #share-nav {
    bottom: calc(100px + 1em); }
    #share-nav ul {
      max-width: 50px; }
      #share-nav ul li a {
        width: 50px;
        height: 50px; }

  main.main {
    padding-top: 40px; }

  .bt-to-ticket {
    width: 100px;
    height: 100px; }

  #point .point-wrap {
    flex-direction: column; }
    #point .point-wrap.point-wrap2 {
      flex-direction: row; }
      #point .point-wrap.point-wrap2 .point-item .min {
        font-size: 12.5px; }
    #point .point-wrap .point-item {
      width: 100%;
      margin: 1em auto; }
  #point .point-bg-wrap {
    width: 300%;
    margin: 0 -60% 0; }

  #ticket table th,
  #ticket table td {
    padding: .5em; } }
/*# sourceMappingURL=style.css.map */

/*# sourceMappingURL=style.css.map */
