@charset "UTF-8";
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0; }

html {
  font-size: 62.5%; }

body {
  width: 100%;
  font-family: HelveticaNeue, "Helvetica Neue", Helvetica, Arial, Roboto, "Droid Sans", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  color: #FFFFFF;
  margin: 0;
  padding: 0;
  background: #161616;
  position: relative;
  font-size: 14px;
  font-size: 1.4em;
  line-height: 1.4; }
  body .red {
    color: #FF0067; }
  body .orange {
    color: #FFED00 !important; }
  body .blue {
    color: #B7FF91; }
  body .small {
    font-size: 1.2rem; }
  body .img_sp {
    display: none; }
    @media screen and (max-width: 959px) {
      body .img_sp {
        display: block; } }
  body .img_pc {
    display: block; }
    @media screen and (max-width: 959px) {
      body .img_pc {
        display: none; } }
  body p {
    width: 95%;
    text-align: left;
    line-height: 1.5;
    margin: 0 auto 0.5rem;
    font-size: 1.4rem; }
  body .finish {
    padding: 2%;
    text-align: center;
    border: 1px solid #FF003F;
    color: #FF003F;
    margin: 5% auto;
    font-size: 1.8rem; }
  body .period {
    padding: 10px;
    border: 1px solid #FFFFFF; }
  body .price {
    font-size: 2.2rem;
    margin: 0 auto 0.5rem;
    font-weight: bold; }
  body .text_center {
    text-align: center; }
    @media screen and (max-width: 959px) {
      body .text_center {
        text-align: left; } }
  body .notice {
    font-size: 1.2rem;
    color: #A2A2A2; }
  body .new {
    color: #FF003F;
    animation: new 0.5s ease alternate infinite; }
@keyframes new {
  0% {
    color: #FF003F; }
  100% {
    color: #FFFD00; } }
  body a {
    width: 95%;
    margin: 0 auto;
    display: block;
    color: #E8FF00; }
    body a.btn_buy {
      width: 400px;
      margin: 10px 0 20px;
      display: block;
      background: #FF005F;
      text-align: center;
      padding: 20px 0;
      border-radius: 0.5rem;
      font-weight: bold; }
      @media screen and (max-width: 959px) {
        body a.btn_buy {
          width: 100%;
          margin: 2vw 0 4vw;
          padding: 8vw 0; } }
    body a:hover {
      opacity: 0.7; }
  body .centering {
    width: 960px;
    margin: 0 auto;
    position: relative; }
    @media screen and (max-width: 959px) {
      body .centering {
        width: 96%; } }
    @media screen and (max-width: 478px) {
      body .centering {
        width: 96%; } }
  body .text_none {
    text-indent: -9999px; }
  body #loading {
    width: 100%;
    height: 100%;
    background: #000000;
    position: fixed;
    z-index: 210; }
    body #loading .img_container {
      width: 400px;
      height: 400px;
      background: url("../images/loading.gif");
      top: 50%;
      left: 50%;
      margin: -200px 0 0 -200px;
      position: absolute; }
      @media screen and (max-width: 478px) {
        body #loading .img_container {
          width: 60vw;
          height: 60vw;
          background-size: 100% auto;
          margin: -30vw 0 0 -30vw; } }
      body #loading .img_container .spinner {
        width: 12.5%;
        height: 10%;
        position: absolute;
        bottom: 10%;
        left: 50%;
        margin: 0 0 0 -6%; }
        body #loading .img_container .spinner > div {
          background-color: #FFFFFF;
          height: 100%;
          width: 12%;
          display: inline-block;
          -webkit-animation: sk-stretchdelay 1.2s infinite ease-in-out;
          animation: sk-stretchdelay 1.2s infinite ease-in-out; }
        body #loading .img_container .spinner .rect2 {
          -webkit-animation-delay: -1.1s;
          animation-delay: -1.1s; }
        body #loading .img_container .spinner .rect3 {
          -webkit-animation-delay: -1.0s;
          animation-delay: -1.0s; }
        body #loading .img_container .spinner .rect4 {
          -webkit-animation-delay: -0.9s;
          animation-delay: -0.9s; }
        body #loading .img_container .spinner .rect5 {
          -webkit-animation-delay: -0.8s;
          animation-delay: -0.8s; }
@-webkit-keyframes sk-stretchdelay {
  0%, 40%, 100% {
    -webkit-transform: scaleY(0.4); }
  20% {
    -webkit-transform: scaleY(1); } }
@keyframes sk-stretchdelay {
  0%, 40%, 100% {
    transform: scaleY(0.4);
    -webkit-transform: scaleY(0.4); }
  20% {
    transform: scaleY(1);
    -webkit-transform: scaleY(1); } }
  body .container--all {
    width: 100%;
    background: #000000 url("../images/all_bg.jpg") center bottom no-repeat;
    background-size: 100% auto;
    background-attachment: fixed; }
    @media screen and (max-width: 959px) {
      body .container--all {
        background: #000000 url("../images/sp_all_bg.jpg") center top no-repeat;
        background-size: 100% auto; } }
    body .container--all .light_L {
      width: 40vw;
      height: 35vw;
      background: url("../images/light_L.png") center bottom no-repeat;
      background-size: 100% auto;
      left: 0;
      top: 0;
      position: absolute; }
      @media screen and (max-width: 959px) {
        body .container--all .light_L {
          top: 10vh; } }
    body .container--all .light_R {
      width: 40vw;
      height: 35vw;
      background: url("../images/light_R.png") center bottom no-repeat;
      background-size: 100% auto;
      right: 0;
      top: 0;
      position: absolute; }
      @media screen and (max-width: 959px) {
        body .container--all .light_R {
          top: 10vh; } }
    body .container--all .light_L, body .container--all .light_R {
      animation: 0.5s beat ease infinite; }
@keyframes beat {
  0%, 100% {
    transform: scale(0.8);
    -webkit-transform: scale(0.8); }
  20% {
    transform: scale(1);
    -webkit-transform: scale(1); } }
    body .container--all .nav--top {
      width: 100%;
      height: 60px;
      padding: 10px 0;
      background: #1f1f1f;
      border-bottom: 1px solid #4A4A4A;
      position: relative;
      z-index: 202;
      overflow: hidden; }
      @media screen and (max-width: 959px) {
        body .container--all .nav--top {
          padding: 2vh; } }
      body .container--all .nav--top h1 {
        width: 60px;
        height: 40px;
        background: url("../images/btn_goma.png") no-repeat;
        background-size: 100% auto;
        float: left;
        margin: 0 auto; }
        @media screen and (max-width: 959px) {
          body .container--all .nav--top h1 {
            width: 6vh;
            height: 4vh;
            background-size: 100% auto; } }
        body .container--all .nav--top h1 .link--official {
          width: 100%;
          height: 100%; }
      body .container--all .nav--top .link--others {
        float: right; }
        body .container--all .nav--top .link--others .link--appstore {
          width: 100px;
          height: 40px;
          background: url("../images/btn_appstore.png") no-repeat left center;
          background-size: 100% auto;
          float: left;
          margin: 0 10px 0 0; }
          @media screen and (max-width: 959px) {
            body .container--all .nav--top .link--others .link--appstore {
              width: 13.6vh;
              height: 4vh;
              margin: 0 1vh 0 0;
              background-size: 100% auto;
              display: none; } }
        body .container--all .nav--top .link--others .link--googleplay {
          width: 100px;
          height: 40px;
          background: url("../images/btn_googleplay.png") no-repeat left center;
          background-size: 100% auto;
          float: left;
          margin: 0 10px 0 0; }
          @media screen and (max-width: 959px) {
            body .container--all .nav--top .link--others .link--googleplay {
              width: 13.6vh;
              height: 4vh;
              margin: 0 1vh 0 0;
              background-size: 100% auto;
              display: none; } }
        body .container--all .nav--top .link--others .link--amazon {
          width: 100px;
          height: 40px;
          background: url("../images/btn_amazon.png") no-repeat left center;
          background-size: 100% auto;
          float: left;
          margin: 0 10px 0 0; }
          @media screen and (max-width: 959px) {
            body .container--all .nav--top .link--others .link--amazon {
              width: 11.6vh;
              height: 4vh;
              margin: 0 1vh 0 0;
              background-size: 100% auto;
              display: none; } }
        body .container--all .nav--top .link--others .link--twitter {
          width: 40px;
          height: 40px;
          background: url("../images/btn_twitter.png") no-repeat;
          background-size: 100% auto;
          float: left; }
          @media screen and (max-width: 959px) {
            body .container--all .nav--top .link--others .link--twitter {
              width: 4vh;
              height: 4vh;
              background-size: 100% auto; } }
      body .container--all .nav--top:after {
        content: "";
        clear: both; }
    body .container--all article {
      width: 100%;
      padding: 50px 0 0; }
      @media screen and (max-width: 959px) {
        body .container--all article {
          padding: 5vw 0 0; } }
      body .container--all article h1 {
        width: 100%;
        height: 282px;
        margin: 0 0 20px;
        background: url("../images/title_logo.png") center top no-repeat;
        background-size: 100% auto;
        text-indent: -9999px; }
        @media screen and (max-width: 959px) {
          body .container--all article h1 {
            width: 100%;
            height: 26vw;
            margin: 0 0 2vw;
            background: url("../images/sp_title_logo.png") center top no-repeat;
            background-size: 100% auto; } }
      body .container--all article .report_imgcon {
        width: 60%;
        margin: 2rem auto; }
        @media screen and (max-width: 959px) {
          body .container--all article .report_imgcon {
            width: 80%; } }
        @media screen and (max-width: 767px) {
          body .container--all article .report_imgcon {
            width: 100%; } }
      body .container--all article .main_text_180529 {
        margin: 0 0 100px; }
        body .container--all article .main_text_180529 h1 {
          height: auto;
          background: none;
          text-indent: 0; }
        body .container--all article .main_text_180529 h2 {
          width: 100%;
          height: 100px;
          text-indent: -9999px;
          margin: 10% 0 4%; }
          @media screen and (max-width: 959px) {
            body .container--all article .main_text_180529 h2 {
              height: 20vw; } }
          body .container--all article .main_text_180529 h2.h2_1_180529 {
            background: url("../images/h2_1_180529.png") center top no-repeat;
            background-size: 100% auto; }
            @media screen and (max-width: 959px) {
              body .container--all article .main_text_180529 h2.h2_1_180529 {
                background: url("../images/sp_h2_1_180529.png") center top no-repeat;
                background-size: 100% auto; } }
          body .container--all article .main_text_180529 h2.h2_2_180529 {
            background: url("../images/h2_2_180529.png") center top no-repeat;
            background-size: 100% auto; }
            @media screen and (max-width: 959px) {
              body .container--all article .main_text_180529 h2.h2_2_180529 {
                background: url("../images/sp_h2_2_180529.png") center top no-repeat;
                background-size: 100% auto; } }
          body .container--all article .main_text_180529 h2.h2_3_180529 {
            background: url("../images/h2_3_180529.png") center top no-repeat;
            background-size: 100% auto; }
            @media screen and (max-width: 959px) {
              body .container--all article .main_text_180529 h2.h2_3_180529 {
                background: url("../images/sp_h2_3_180529.png") center top no-repeat;
                background-size: 100% auto; } }
          body .container--all article .main_text_180529 h2.h2_4_180529 {
            background: url("../images/h2_4_180529.png") center top no-repeat;
            background-size: 100% auto; }
            @media screen and (max-width: 959px) {
              body .container--all article .main_text_180529 h2.h2_4_180529 {
                background: url("../images/sp_h2_4_180529.png") center top no-repeat;
                background-size: 100% auto; } }
          body .container--all article .main_text_180529 h2.h2_5_180710 {
            background: url("../images/h2_5_180710.png") center top no-repeat;
            background-size: 100% auto; }
            @media screen and (max-width: 959px) {
              body .container--all article .main_text_180529 h2.h2_5_180710 {
                background: url("../images/sp_h2_5_180710.png") center top no-repeat;
                background-size: 100% auto; } }
          body .container--all article .main_text_180529 h2.h2_6_180710 {
            background: url("../images/h2_6_180710.png") center top no-repeat;
            background-size: 100% auto; }
            @media screen and (max-width: 959px) {
              body .container--all article .main_text_180529 h2.h2_6_180710 {
                background: url("../images/sp_h2_6_180710.png") center top no-repeat;
                background-size: 100% auto; } }
          body .container--all article .main_text_180529 h2.h2_7_180727 {
            background: url("../images/h2_7_180727.png") center top no-repeat;
            background-size: 100% auto; }
            @media screen and (max-width: 959px) {
              body .container--all article .main_text_180529 h2.h2_7_180727 {
                background: url("../images/sp_h2_7_180727.png") center top no-repeat;
                background-size: 100% auto; } }
          body .container--all article .main_text_180529 h2.h2_8_180727 {
            background: url("../images/h2_8_180727.png") center top no-repeat;
            background-size: 100% auto; }
            @media screen and (max-width: 959px) {
              body .container--all article .main_text_180529 h2.h2_8_180727 {
                background: url("../images/sp_h2_8_180727.png") center top no-repeat;
                background-size: 100% auto; } }
        body .container--all article .main_text_180529 h3 {
          width: 80%;
          font-size: 2.2rem;
          margin: 5% 0 3%;
          font-weight: bold;
          border-bottom: 1px solid #FFFFFF; }
          @media screen and (max-width: 959px) {
            body .container--all article .main_text_180529 h3 {
              width: 100%; } }
          body .container--all article .main_text_180529 h3.top {
            margin: 0 0 5%; }
        body .container--all article .main_text_180529 h4 {
          width: 50%;
          font-size: 1.8rem;
          margin: 4% 0 2%;
          font-weight: bold;
          color: #E8FF00;
          border-bottom: 1px solid #E8FF00; }
          @media screen and (max-width: 959px) {
            body .container--all article .main_text_180529 h4 {
              width: 90%;
              margin: 5vw 0 2vw; } }
        body .container--all article .main_text_180529 .ev_banner {
          width: 750px;
          margin: 0 auto 2rem; }
          @media screen and (max-width: 959px) {
            body .container--all article .main_text_180529 .ev_banner {
              width: 100%; } }
        body .container--all article .main_text_180529 .form_container {
          width: 100%;
          margin: 1rem 0;
          padding: 3rem; }
          body .container--all article .main_text_180529 .form_container form {
            width: 100%; }
            body .container--all article .main_text_180529 .form_container form .code_form {
              width: 100%;
              height: 4rem;
              font-size: 3rem;
              line-height: 4rem;
              margin: 0 0 2rem;
              text-align: center; }
            body .container--all article .main_text_180529 .form_container form .code_submit {
              width: 60%;
              padding: 1rem;
              border-radius: 0.5rem;
              background: #FF005F;
              margin: 0 auto;
              display: block;
              color: #E8FF00;
              font-size: 1.6rem; }
        body .container--all article .main_text_180529 .sp_caution {
          width: 80%;
          font-weight: bold;
          color: #FF005F;
          text-align: center;
          padding: 1rem;
          margin: 0 auto 2rem;
          border: 1px solid #FF005F;
          display: none; }
        body .container--all article .main_text_180529 .item_container {
          width: 100%;
          margin: 1rem auto;
          display: flex;
          flex-wrap: wrap;
          justify-content: center;
          position: relative; }
          body .container--all article .main_text_180529 .item_container h1 {
            width: 100%;
            color: #FFED00;
            font-weight: bold;
            font-size: 2rem;
            line-height: 1.2;
            min-height: 7rem; }
            @media screen and (max-width: 767px) {
              body .container--all article .main_text_180529 .item_container h1 {
                font-size: 1.6rem; } }
          body .container--all article .main_text_180529 .item_container h2 {
            width: 100%;
            height: auto;
            text-indent: 0;
            margin: 1% 0;
            color: #FFED00; }
          body .container--all article .main_text_180529 .item_container h3 {
            width: 100%;
            font-size: 2rem; }
            @media screen and (max-width: 767px) {
              body .container--all article .main_text_180529 .item_container h3 {
                font-size: 1.4rem; } }
          body .container--all article .main_text_180529 .item_container .box_l {
            width: 100%;
            padding: 2%;
            margin: 0 0 10%;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            background: rgba(86, 86, 86, 0.7); }
            @media screen and (max-width: 959px) {
              body .container--all article .main_text_180529 .item_container .box_l {
                display: block; } }
            body .container--all article .main_text_180529 .item_container .box_l .img_box {
              width: 49%; }
              @media screen and (max-width: 959px) {
                body .container--all article .main_text_180529 .item_container .box_l .img_box {
                  width: 100%; } }
            body .container--all article .main_text_180529 .item_container .box_l .explain_box {
              width: 49%; }
              @media screen and (max-width: 959px) {
                body .container--all article .main_text_180529 .item_container .box_l .explain_box {
                  width: 100%; } }
            body .container--all article .main_text_180529 .item_container .box_l h1 {
              min-height: 2rem; }
            body .container--all article .main_text_180529 .item_container .box_l ul li {
              font-size: 1.2rem;
              padding-left: 1em;
              text-indent: -1em; }
            body .container--all article .main_text_180529 .item_container .box_l .img_pc {
              width: 100%; }
              @media screen and (max-width: 767px) {
                body .container--all article .main_text_180529 .item_container .box_l .img_pc {
                  display: none; } }
            body .container--all article .main_text_180529 .item_container .box_l .img_sp {
              width: 100%;
              display: none; }
              @media screen and (max-width: 767px) {
                body .container--all article .main_text_180529 .item_container .box_l .img_sp {
                  display: block; } }
            body .container--all article .main_text_180529 .item_container .box_l p.one_line {
              width: 100%; }
          body .container--all article .main_text_180529 .item_container .box_m {
            width: 100%;
            padding: 2%;
            margin: 0 0 10%;
            background: rgba(86, 86, 86, 0.7); }
            body .container--all article .main_text_180529 .item_container .box_m .box_m_flex {
              width: 100%;
              display: flex;
              justify-content: space-between; }
              @media screen and (max-width: 767px) {
                body .container--all article .main_text_180529 .item_container .box_m .box_m_flex {
                  justify-content: center; } }
              body .container--all article .main_text_180529 .item_container .box_m .box_m_flex .explain_box_s {
                width: 33%; }
                @media screen and (max-width: 767px) {
                  body .container--all article .main_text_180529 .item_container .box_m .box_m_flex .explain_box_s {
                    width: 48%;
                    margin: 0 1% 2%; } }
            body .container--all article .main_text_180529 .item_container .box_m h1 {
              min-height: 2rem; }
          body .container--all article .main_text_180529 .item_container .box {
            width: 31%;
            padding: 2%;
            margin: 0 1% 10%;
            background: rgba(86, 86, 86, 0.7); }
            @media screen and (max-width: 767px) {
              body .container--all article .main_text_180529 .item_container .box {
                width: 48%; } }
            body .container--all article .main_text_180529 .item_container .box .img_box {
              width: 100%; }
            @media screen and (max-width: 767px) {
              body .container--all article .main_text_180529 .item_container .box.sp {
                width: 100%; } }
        body .container--all article .main_text_180529 .ticket_container {
          width: 100%;
          margin: 1rem 0;
          padding: 2rem;
          border: 1px solid #FF0067;
          border-radius: 2rem;
          position: relative; }
          body .container--all article .main_text_180529 .ticket_container p {
            width: 100%; }
          body .container--all article .main_text_180529 .ticket_container ul {
            width: 100%; }
          body .container--all article .main_text_180529 .ticket_container .soldout {
            width: 40%;
            position: absolute;
            right: 5%;
            top: 10%;
            transform: rotate(15deg); }
        body .container--all article .main_text_180529 ul {
          width: 95%;
          list-style: none;
          margin: 0 auto 2%; }
          body .container--all article .main_text_180529 ul li {
            font-size: 1.6rem;
            text-indent: -1rem;
            padding-left: 2rem; }
        body .container--all article .main_text_180529 .flex_container {
          width: 100%;
          margin: 2rem 0;
          display: flex;
          flex-wrap: wrap; }
          body .container--all article .main_text_180529 .flex_container .box {
            width: 32%;
            margin: 0 1% 1% 0; }
            body .container--all article .main_text_180529 .flex_container .box dl {
              width: 100%; }
              body .container--all article .main_text_180529 .flex_container .box dl dt {
                width: 100%;
                font-size: 1.8rem;
                margin: 0 0 1rem;
                line-height: 1; }
              body .container--all article .main_text_180529 .flex_container .box dl dd {
                width: 100%; }
          body .container--all article .main_text_180529 .flex_container .movie_box {
            width: 32%;
            margin: 0 1% 1% 0; }
            @media screen and (max-width: 959px) {
              body .container--all article .main_text_180529 .flex_container .movie_box {
                width: 49%; } }
            @media screen and (max-width: 478px) {
              body .container--all article .main_text_180529 .flex_container .movie_box {
                width: 99%; } }
            body .container--all article .main_text_180529 .flex_container .movie_box .movie_container {
              position: relative;
              width: 100%;
              padding-top: 56.25%; }
              body .container--all article .main_text_180529 .flex_container .movie_box .movie_container iframe {
                position: absolute;
                top: 0;
                right: 0;
                width: 100% !important;
                height: 100% !important; }
        body .container--all article .main_text_180529 .map {
          width: 960px;
          height: 450px;
          position: relative;
          margin: 20px 0; }
          @media screen and (max-width: 959px) {
            body .container--all article .main_text_180529 .map {
              width: 100%;
              height: 48vw;
              margin: 10vw 0 20vw; } }
          body .container--all article .main_text_180529 .map .container {
            width: 960px;
            height: 450px;
            position: absolute; }
            @media screen and (max-width: 959px) {
              body .container--all article .main_text_180529 .map .container {
                width: 100%;
                height: 100%;
                position: releative;
                top: 0;
                left: 0;
                margin: 4vw 0 0; } }
            body .container--all article .main_text_180529 .map .container iframe {
              width: 100%;
              height: 100%; }
      body .container--all article .main_text_180526 {
        width: 100%;
        height: 538px;
        margin: 0 0 20px;
        background: url("../images/main_text_180526.png") center top no-repeat;
        background-size: 100% auto; }
        @media screen and (max-width: 959px) {
          body .container--all article .main_text_180526 {
            width: 100vw;
            height: 87.3vw;
            margin: 0 0 2vw;
            background: url("../images/sp_main_text_180526.png") center top no-repeat;
            background-size: 100% auto; } }
      body .container--all article .link_180526 {
        width: 100%;
        height: 103px;
        margin: 0 0 20px;
        background: url("../images/link_btn_180526.jpg") center top no-repeat;
        background-size: 100% auto; }
        @media screen and (max-width: 959px) {
          body .container--all article .link_180526 {
            width: 100%;
            height: 19vw;
            margin: 0 0 2vw;
            background: url("../images/sp_link_btn_180526.jpg") center top no-repeat;
            background-size: 100% auto; } }
      body .container--all article .main_text {
        width: 100%;
        height: 443px;
        background: url("../images/main_text.jpg") center top no-repeat;
        background-size: 100% auto; }
        @media screen and (max-width: 959px) {
          body .container--all article .main_text {
            width: 100%;
            height: 181vw;
            background: url("../images/sp_main_text.jpg") center top no-repeat;
            background-size: 100% auto; } }
      body .container--all article #twitter_feed {
        width: 540px;
        height: 300px;
        margin: 0 auto 4em; }
        @media screen and (max-width: 959px) {
          body .container--all article #twitter_feed {
            width: 95vw;
            height: 300px; } }
  body footer {
    width: 100%;
    padding: 50px 0 100px;
    margin: 100px 0 0;
    background: rgba(229, 9, 70, 0.8); }
    @media screen and (max-width: 959px) {
      body footer {
        margin: 10vw 0 0;
        padding: 10vw 0 50vw; } }
    body footer .site-notice {
      width: 960px;
      padding: 0;
      margin: 0 auto 2em; }
      @media screen and (max-width: 959px) {
        body footer .site-notice {
          width: 100%;
          padding: 2em 0.5em 0;
          box-sizing: border-box;
          margin: 0 0 2em; } }
      body footer .site-notice p {
        text-align: left;
        margin: 0; }
    body footer .app-info {
      width: 960px;
      padding: 0;
      margin: 0 auto 2em;
      box-sizing: border-box;
      overflow: hidden; }
      @media screen and (max-width: 959px) {
        body footer .app-info {
          width: 100%;
          padding: 2em 0.5em;
          margin: 0 0 2em; }
          body footer .app-info:after {
            content: "";
            clear: both; } }
      body footer .app-info .app-icon {
        width: 120px;
        height: 120px;
        background: url("../images/app_icon.png") center center no-repeat;
        background-size: 100% 100%;
        margin: 0 10px 0 0;
        float: left; }
        @media screen and (max-width: 959px) {
          body footer .app-info .app-icon {
            width: 20vw;
            height: 20vw;
            background-size: 100% 100%;
            margin: 0; } }
      body footer .app-info .app-explain {
        width: 365px;
        float: left;
        margin-bottom: 2em;
        display: flex;
        justify-content: center;
        flex-direction: column; }
        @media screen and (max-width: 959px) {
          body footer .app-info .app-explain {
            width: 75vw;
            float: right; } }
        body footer .app-info .app-explain p {
          text-align: left;
          margin: 0; }
          body footer .app-info .app-explain p:first-child {
            font-size: 1.6rem; }
          body footer .app-info .app-explain p span.notice {
            font-size: 1rem; }
      body footer .app-info .app-badge {
        width: 435px;
        height: 149px;
        float: right; }
        @media screen and (max-width: 959px) {
          body footer .app-info .app-badge {
            width: 100%;
            height: 29px;
            clear: both;
            box-sizing: border-box;
            padding: 0;
            display: flex;
            justify-content: center; }
            body footer .app-info .app-badge:after {
              content: "";
              clear: both; } }
        body footer .app-info .app-badge .appstoreBtn {
          width: 111px;
          height: 149px;
          background: url("../images/app_badge_barcode.png") center center no-repeat;
          background-size: 100% 100%;
          margin: 0 10px 0 0;
          float: left; }
          @media screen and (max-width: 959px) {
            body footer .app-info .app-badge .appstoreBtn {
              width: 30vw;
              height: 9vw;
              background: url("../images/btn_appstore.png") center center no-repeat;
              background-size: 100% auto;
              display: none;
              float: none;
              margin: 0 auto;
              padding: 0; } }
        body footer .app-info .app-badge .googleplayBtn {
          width: 111px;
          height: 149px;
          background: url("../images/gp_badge_barcode.png") center center no-repeat;
          background-size: 100% 100%;
          margin: 0 10px 0 0;
          float: left; }
          @media screen and (max-width: 959px) {
            body footer .app-info .app-badge .googleplayBtn {
              width: 30vw;
              height: 9vw;
              background: url("../images/btn_googleplay.png") center center no-repeat;
              background-size: 100% auto;
              display: none;
              float: none;
              margin: 0 1vw;
              padding: 0; } }
        body footer .app-info .app-badge .amazonBtn {
          width: 111px;
          height: 149px;
          background: url("../images/ama_badge_barcode.png") center center no-repeat;
          background-size: 100% 100%;
          float: left; }
          @media screen and (max-width: 959px) {
            body footer .app-info .app-badge .amazonBtn {
              width: 30vw;
              height: 10vw;
              background: url("../images/btn_amazon.png") center center no-repeat;
              background-size: 100% auto;
              display: none;
              float: none;
              margin: 0 1vw;
              padding: 0; } }
    body footer .cave_logo {
      width: 160px;
      height: 160px;
      margin: 0 auto 30px; }
      @media screen and (max-width: 959px) {
        body footer .cave_logo {
          width: 30vw;
          height: 30vw;
          margin: 0 auto 10vw; } }
      @media screen and (max-width: 478px) {
        body footer .cave_logo {
          width: 30vw;
          height: 30vw;
          margin: 0 auto 10vw; } }
    body footer .copy {
      width: 100%;
      text-align: center; }
