@charset "UTF-8";
/* ==========================================================
  フォント
========================================================== */
/* ==========================================================
  テキストシャドウ
========================================================== */
/* ===================================================================
CSS information
 file name  :top.css
 style info :トップページのスタイル
=================================================================== */
/* ==========================================================
    VISUAL
  ========================================================== */
#topVisual {
  width: 100%;
}
@media screen and (min-width: 751px) {
  #topVisual {
    background-color: #004169;
    background-image: url(../img/bg_visual_pc.png), url(../img/bg_visual.jpg);
    background-repeat: no-repeat;
    background-position: left calc(50% - -306px) top 14px, center top;
  }
}
@media screen and (max-width: 750px) {
  #topVisual {
    background: url(../img/bg_visual_sp.jpg) no-repeat center top/100%;
  }
}
#topVisual .inner {
  position: relative;
}
@media screen and (min-width: 751px) {
  #topVisual .inner {
    width: 1160px;
    height: 808px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 750px) {
  #topVisual .inner {
    height: 137vw;
  }
}
#topVisual .inner .logo {
  position: absolute;
}
@media screen and (min-width: 751px) {
  #topVisual .inner .logo {
    top: 30px;
    left: 40px;
  }
}
@media screen and (max-width: 750px) {
  #topVisual .inner .logo {
    width: 66%;
    top: 4vw;
    right: 2vw;
  }
}
#topVisual .inner .ss {
  position: absolute;
  z-index: 2;
}
@media screen and (min-width: 751px) {
  #topVisual .inner .ss {
    bottom: -50px;
    left: -6px;
  }
}
@media screen and (max-width: 750px) {
  #topVisual .inner .ss {
    width: 32%;
    bottom: -6vw;
    left: 0;
  }
}
#topVisual .inner .txt {
  position: absolute;
}
@media screen and (min-width: 751px) {
  #topVisual .inner .txt {
    bottom: 118px;
    left: 254px;
  }
}
@media screen and (max-width: 750px) {
  #topVisual .inner .txt {
    width: 66%;
    bottom: 1vw;
    right: 2vw;
  }
}
#topVisual .inner .storeBtn {
  opacity: 0;
}
@media screen and (min-width: 751px) {
  #topVisual .inner .storeBtn {
    width: 502px;
    position: absolute;
    z-index: 1;
    bottom: 8px;
    left: 244px;
    padding: 50px 42px 22px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background-repeat: no-repeat;
    background-position: center top;
  }
}
@media screen and (max-width: 750px) {
  #topVisual .inner .storeBtn {
    display: none;
  }
}
@media screen and (min-width: 751px) {
  #topVisual .inner .storeBtn:lang(en-US), #topVisual .inner .storeBtn:lang(en-GB) {
    background-image: url(/diabolicalbox/us/img/bg_ribbon.png);
  }
}
@media screen and (min-width: 751px) {
  #topVisual .inner .storeBtn:lang(fr) {
    background-image: url(/pandorasbox/fr/img/bg_ribbon.png);
  }
}
@media screen and (min-width: 751px) {
  #topVisual .inner .storeBtn:lang(de) {
    background-image: url(/pandorasbox/de/img/bg_ribbon.png);
  }
}
@media screen and (min-width: 751px) {
  #topVisual .inner .storeBtn:lang(it) {
    background-image: url(/pandorasbox/it/img/bg_ribbon.png);
  }
}
@media screen and (min-width: 751px) {
  #topVisual .inner .storeBtn:lang(ko) {
    background-image: url(/pandorasbox/ko/img/bg_ribbon.png);
    padding: 52px 42px 20px;
  }
}
@media screen and (min-width: 751px) {
  #topVisual .inner .storeBtn:lang(ko) li:nth-child(1) {
    width: 204px;
  }
  #topVisual .inner .storeBtn:lang(ko) li:nth-child(2) {
    width: 206px;
  }
}
@media screen and (min-width: 751px) {
  #topVisual .inner .storeBtn:lang(es) {
    background-image: url(/pandorasbox/es/img/bg_ribbon.png);
  }
}
@media screen and (min-width: 751px) {
  #topVisual .inner .storeBtn li:nth-child(1) {
    width: 192px;
  }
  #topVisual .inner .storeBtn li:nth-child(2) {
    width: 214px;
  }
}
#topVisual .inner .storeBtn li img {
  width: 100%;
}
@media screen and (min-width: 751px) {
  #topVisual.subscription .inner .txt {
    bottom: 34px !important;
  }
}
#topVisual.subscription .inner .storeBtn {
  display: none !important;
}

/* ==========================================================
    CONTENT
  ========================================================== */
#content {
  position: relative;
  z-index: 10;
  text-align: center;
  background-color: #197381;
  background-image: url(../img/bg_light.png);
  background-repeat: no-repeat;
}
@media screen and (min-width: 751px) {
  #content {
    background-position: center top -400px;
    padding-top: 80px;
  }
}
@media screen and (max-width: 750px) {
  #content {
    background-position: center top -40vw;
    background-size: 120%;
    padding-top: 10vw;
  }
}
#content:before {
  display: block;
  content: "";
  width: 100%;
  position: absolute;
  top: 0;
  background: #b98934;
  border-top: solid 2px #49120d;
  border-bottom: solid 4px #49120d;
  -webkit-box-shadow: 0 0 3px #eebf6b inset;
          box-shadow: 0 0 3px #eebf6b inset;
}
@media screen and (min-width: 751px) {
  #content:before {
    height: 20px;
  }
}
@media screen and (max-width: 750px) {
  #content:before {
    height: 3vw;
  }
}
@media screen and (min-width: 751px) {
  #content .bnrArea {
    width: 960px;
    margin: 0 auto 60px;
  }
}
@media screen and (max-width: 750px) {
  #content .bnrArea {
    width: 96%;
    margin: 0 auto 6vw;
  }
}
#content .bnrArea h1 {
  position: relative;
  background: none;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
}
@media screen and (min-width: 751px) {
  #content .bnrArea h1 {
    width: auto;
    height: auto;
    margin: 0 auto 10px;
  }
}
@media screen and (max-width: 750px) {
  #content .bnrArea h1 {
    margin-bottom: 2vw;
  }
}
#content .bnrArea h1:before {
  display: none;
}
@media screen and (min-width: 751px) {
  #content .bnrArea h1.new:after {
    top: 0;
    right: 64px;
  }
}
@media screen and (max-width: 750px) {
  #content .bnrArea h1.new:after {
    right: 4vw;
    top: 0;
  }
}
@media screen and (min-width: 751px) {
  #content .bnrArea ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
#content .bnrArea ul li {
  position: relative;
}
@media screen and (min-width: 751px) {
  #content .bnrArea ul li {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 750px) {
  #content .bnrArea ul li {
    width: 96%;
    margin: 0 auto 3vw;
  }
}
@media screen and (min-width: 751px) {
  #content .bnrArea ul li.new:after {
    top: -20px;
    right: 10px;
  }
}
@media screen and (max-width: 750px) {
  #content .bnrArea ul li.new:after {
    right: 1vw;
    top: -3vw;
  }
}
@media screen and (min-width: 751px) {
  #content #movieArea {
    margin-bottom: 120px;
  }
}
@media screen and (max-width: 750px) {
  #content #movieArea {
    margin-bottom: 20vw;
  }
}
#content #movieArea ul {
  margin: 0 auto;
}
@media screen and (min-width: 751px) {
  #content #movieArea ul {
    width: 1140px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
@media screen and (max-width: 750px) {
  #content #movieArea ul {
    width: 96%;
  }
}
@media screen and (min-width: 751px) {
  #content #movieArea ul li {
    width: 48.6%;
  }
  #content #movieArea ul li img {
    width: 100%;
  }
}
@media screen and (max-width: 750px) {
  #content #movieArea ul li {
    margin-bottom: 4vw;
  }
}
#content .inner {
  margin: 0 auto;
  border: solid 1px #1ecfdb;
  border-top: none;
  position: relative;
  background: #175c67 url(../img/bg_inner.jpg) no-repeat center top;
}
@media screen and (min-width: 751px) {
  #content .inner {
    max-width: 1450px;
    padding: 30px 0px 60px;
    margin-top: 60px;
  }
}
@media screen and (max-width: 750px) {
  #content .inner {
    border-left: none;
    border-right: none;
    padding: 0.4vw 0 8vw;
  }
}
#content .inner h1 {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 751px) {
  #content .inner h1 {
    background: url(../img/bg_h1_pc.png) no-repeat center;
    height: 108px;
    padding-bottom: 10px;
    margin: -70px auto 30px;
  }
}
@media screen and (max-width: 750px) {
  #content .inner h1 {
    background: url(../img/bg_h1_sp.png) no-repeat center/contain;
    line-height: 1.2;
    height: 21vw;
    margin: -10.6vw 0 4vw;
  }
}
@media screen and (min-width: 751px) {
  #content .inner h1:lang(ko) {
    padding-bottom: 0;
  }
}
#content .inner h1 .icn {
  position: absolute;
}
@media screen and (min-width: 751px) {
  #content .inner h1 .icn {
    top: -40px;
  }
}
@media screen and (max-width: 750px) {
  #content .inner h1 .icn {
    width: 20vw;
    top: -8vw;
  }
}
#content .inner h1 span {
  color: #fff2d5;
}
@media screen and (min-width: 751px) {
  #content .inner h1 span {
    font-size: 44px;
    text-shadow: 4px 4px 0px #49120d;
  }
}
@media screen and (max-width: 750px) {
  #content .inner h1 span {
    font-size: 7vw;
    text-shadow: 2px 2px 0px #49120d;
  }
}
#content .inner h1 span:lang(ko) {
  position: relative;
}
@media screen and (min-width: 751px) {
  #content .inner h1 span:lang(ko) {
    top: -4px;
  }
}
@media screen and (max-width: 750px) {
  #content .inner h1 span:lang(ko) {
    font-size: 6.4vw;
    top: -0.6vw;
  }
}
#content .inner .txt {
  position: relative;
  z-index: 1;
  color: #fff2d5;
}
@media screen and (min-width: 751px) {
  #content .inner .txt {
    font-size: 32px;
    text-shadow: 4px 4px 0px #431e00;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 750px) {
  #content .inner .txt {
    font-size: 5.6vw;
    text-shadow: 2px 2px 0px #431e00;
    width: 96%;
    margin: 0 auto 2vw;
    line-height: 1.4;
  }
}
#content .inner .txt em {
  color: #ffd200;
}
@media screen and (min-width: 751px) {
  #content .about {
    margin-bottom: 100px;
  }
}
@media screen and (max-width: 750px) {
  #content .about {
    padding-bottom: 10vw;
  }
}
#content .about .inner:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  z-index: 0;
  width: 100%;
  height: 100vh;
  background-image: url(../img/bg_chara01.png), url(../img/bg_chara02.png);
  background-repeat: no-repeat;
}
@media screen and (min-width: 751px) {
  #content .about .inner:before {
    background-position: top 170px left calc(50% - 420px), top 250px left calc(50% - 180px);
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner:before {
    background-position: top 26vw left -10vw, top 52vw right -9vw;
    background-size: 34%;
  }
}
@media screen and (min-width: 751px) {
  #content .about .inner h1:lang(en-US) .icn, #content .about .inner h1:lang(en-GB) .icn {
    left: calc(50% - 470px);
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner h1:lang(en-US) .icn, #content .about .inner h1:lang(en-GB) .icn {
    left: calc(50% - 40vw);
  }
}
@media screen and (min-width: 751px) {
  #content .about .inner h1:lang(fr) .icn {
    left: calc(50% - 380px);
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner h1:lang(fr) .icn {
    left: calc(50% - 48vw);
  }
}
@media screen and (min-width: 751px) {
  #content .about .inner h1:lang(de) .icn {
    left: calc(50% - 460px);
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner h1:lang(de) .icn {
    left: calc(50% - 36vw);
  }
}
@media screen and (min-width: 751px) {
  #content .about .inner h1:lang(it) .icn {
    left: calc(50% - 380px);
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner h1:lang(it) .icn {
    left: calc(50% - 44vw);
  }
}
@media screen and (min-width: 751px) {
  #content .about .inner h1:lang(ko) .icn {
    left: calc(50% - 460px);
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner h1:lang(ko) .icn {
    left: calc(50% - 49vw);
  }
}
@media screen and (min-width: 751px) {
  #content .about .inner h1:lang(es) .icn {
    left: calc(50% - 490px);
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner h1:lang(es) .icn {
    top: -4vw;
    left: calc(50% - 44vw);
  }
}
@media screen and (min-width: 751px) {
  #content .about .inner .imgBox {
    margin-top: 20px;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .imgBox {
    position: relative;
    z-index: 1;
  }
}
#content .about .inner .imgBox ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media screen and (min-width: 751px) {
  #content .about .inner .imgBox ul {
    width: 576px;
    margin: 0 auto 50px;
    position: relative;
    left: 230px;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .imgBox ul {
    width: 76%;
    margin: 0 auto 6vw;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .imgBox ul li {
    width: 49.6%;
  }
}
#content .about .inner .tagoArea {
  position: relative;
  z-index: 9999;
  overflow: hidden;
}
@media screen and (min-width: 751px) {
  #content .about .inner .tagoArea {
    width: 1000px;
    margin: 0 auto 40px;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea {
    width: 96%;
    margin: 0 auto 6vw;
  }
}
#content .about .inner .tagoArea:before, #content .about .inner .tagoArea:after {
  content: "";
  display: block;
  width: 100%;
  background-repeat: no-repeat;
  background-position: center top;
}
@media screen and (min-width: 751px) {
  #content .about .inner .tagoArea:before, #content .about .inner .tagoArea:after {
    background-image: url(../img/bg_tago_pc.png);
    height: 21px;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea:before, #content .about .inner .tagoArea:after {
    background-image: url(../img/bg_tago_sp.png);
    background-size: 100%;
    height: 2.7vw;
  }
}
#content .about .inner .tagoArea:after {
  -webkit-transform: scale(1, -1);
      -ms-transform: scale(1, -1);
          transform: scale(1, -1);
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea:after {
    position: relative;
    top: -0.2vw;
  }
}
#content .about .inner .tagoArea .inBox {
  background-repeat: repeat-y;
  background-position: center top;
}
@media screen and (min-width: 751px) {
  #content .about .inner .tagoArea .inBox {
    background-image: url(../img/bg_tago_rep_pc.png);
    padding: 30px 60px;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea .inBox {
    background-image: url(../img/bg_tago_rep_sp.png);
    background-size: 100%;
    padding: 2vw 4vw 6vw;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea .inBox:lang(it) {
    padding-bottom: 10vw;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea .inBox:lang(ko) {
    padding-bottom: 20vw;
  }
}
#content .about .inner .tagoArea .inBox:before {
  pointer-events: none;
  position: absolute;
  z-index: 1;
  content: "";
  display: block;
  background: url(../img/bg_mark.png) no-repeat 0 0/100%;
}
@media screen and (min-width: 751px) {
  #content .about .inner .tagoArea .inBox:before {
    width: 319px;
    height: 319px;
    bottom: -20px;
    right: -20px;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea .inBox:before {
    width: 40vw;
    height: 40vw;
    bottom: -2vw;
    right: -2vw;
  }
}
#content .about .inner .tagoArea .inBox figure {
  float: left;
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea .inBox figure {
    width: 40%;
  }
}
#content .about .inner .tagoArea .inBox .tagoBox {
  float: right;
  text-align: left;
}
@media screen and (min-width: 751px) {
  #content .about .inner .tagoArea .inBox .tagoBox {
    width: 620px;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea .inBox .tagoBox {
    width: 56%;
  }
}
#content .about .inner .tagoArea .inBox .tagoBox h2 {
  color: #c60000;
  line-height: 1.4;
}
@media screen and (min-width: 751px) {
  #content .about .inner .tagoArea .inBox .tagoBox h2 {
    font-size: 26px;
    text-shadow: 2px 3px 0 #e4d4ba;
    height: 58px;
    margin: -10px 0 0 20px;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea .inBox .tagoBox h2 {
    font-size: 4.2vw;
    text-shadow: 1px 2px 0 #e4d4ba;
    margin-bottom: 2vw;
  }
}
#content .about .inner .tagoArea .inBox .tagoBox h3 {
  line-height: 1.6;
}
@media screen and (min-width: 751px) {
  #content .about .inner .tagoArea .inBox .tagoBox h3 {
    font-size: 18px;
    text-shadow: 2px 3px 0 #e4d4ba;
    margin: 0 0 10px 20px;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea .inBox .tagoBox h3 {
    font-size: 3vw;
    text-shadow: 1px 2px 0 #e4d4ba;
    margin-bottom: 2vw;
  }
}
#content .about .inner .tagoArea .inBox .tagoBox dl {
  line-height: 1.6;
}
@media screen and (min-width: 751px) {
  #content .about .inner .tagoArea .inBox .tagoBox dl {
    margin: -10px 0px 0px 20px;
  }
}
#content .about .inner .tagoArea .inBox .tagoBox dl dt {
  text-shadow: 2px 3px 0 #e4d4ba;
}
@media screen and (min-width: 751px) {
  #content .about .inner .tagoArea .inBox .tagoBox dl dt {
    font-size: 40px;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea .inBox .tagoBox dl dt {
    font-size: 6vw;
  }
}
@media screen and (min-width: 751px) {
  #content .about .inner .tagoArea .inBox .tagoBox dl dt span {
    font-size: 20px;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea .inBox .tagoBox dl dt span {
    font-size: 4vw;
  }
}
#content .about .inner .tagoArea .inBox .tagoBox dl dd {
  line-height: 1.8;
}
@media screen and (min-width: 751px) {
  #content .about .inner .tagoArea .inBox .tagoBox dl dd {
    font-size: 18px;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea .inBox .tagoBox dl dd {
    position: relative;
    width: 88vw;
    font-size: 2.8vw;
    top: 4vw;
    left: -38vw;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea .inBox .tagoBox dl dd:lang(it) {
    top: 8vw;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .tagoArea .inBox .tagoBox dl dd:lang(ko) {
    top: 19vw;
  }
}
@media screen and (min-width: 751px) {
  #content .about .inner .flexslider {
    margin-top: 40px;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .flexslider {
    margin-top: 4vw;
  }
}
#content .about .inner .flexslider .slides li {
  display: inline-block;
}
#content .about .inner .flexslider .slides li:after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  pointer-events: none;
}
@media screen and (min-width: 751px) {
  #content .about .inner .flexslider .slides li:after {
    height: calc(100% + 8px);
    top: 0;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .flexslider .slides li:after {
    height: 105%;
    top: -0.2vw;
  }
}
#content .about .inner .flexslider .slides li img {
  border: 2px solid #ffd200;
  border-radius: 10px;
}
@media screen and (min-width: 751px) {
  #content .about .inner .flexslider .slides li img {
    width: 820px;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .flexslider .slides li img {
    width: 96%;
  }
}
#content .about .inner .flexslider .slides li:nth-child(n+2) {
  display: none;
}
@media screen and (max-width: 750px) {
  #content .about .inner .flexslider .flex-control-paging li {
    margin: 0 1vw;
  }
}
@media screen and (max-width: 750px) {
  #content .about .inner .flexslider .flex-control-paging li a {
    width: 3vw;
    height: 3vw;
  }
}
#content .story h2,
#content .story2 h2 {
  color: #fff4db;
  text-align: center;
  background: url(../img/bg_tit_story.png) no-repeat center center;
}
@media screen and (min-width: 751px) {
  #content .story h2,
#content .story2 h2 {
    font-size: 40px;
    text-shadow: 4px 4px 0px #49120d;
    height: 84px;
    margin-bottom: 20px;
    padding-top: 2px;
  }
}
@media screen and (max-width: 750px) {
  #content .story h2,
#content .story2 h2 {
    font-size: 8vw;
    text-shadow: 2px 2px 0px #49120d;
    background-size: contain;
    width: 70%;
    padding: 3vw 0 4vw;
    margin: 0 auto 4vw;
  }
}
#content .story h2:lang(ko),
#content .story2 h2:lang(ko) {
  position: relative;
}
@media screen and (min-width: 751px) {
  #content .story h2:lang(ko),
#content .story2 h2:lang(ko) {
    top: -4px;
  }
}
@media screen and (max-width: 750px) {
  #content .story h2:lang(ko),
#content .story2 h2:lang(ko) {
    font-size: 6.4vw;
    top: -0.6vw;
  }
}
#content .story {
  width: 100%;
  background-color: #fff4db;
  background-image: url(../img/bg_story.png);
  background-repeat: no-repeat;
}
@media screen and (min-width: 751px) {
  #content .story {
    background-position: center 100px;
    padding: 50px 0 80px;
  }
}
@media screen and (max-width: 750px) {
  #content .story {
    background-position: center 18vw;
    background-size: 100%;
    padding: 6vw 0 12vw;
  }
}
#content .story .inBox {
  position: relative;
  text-align: left;
  margin: 0 auto;
}
@media screen and (min-width: 751px) {
  #content .story .inBox {
    width: 1200px;
    padding-bottom: 180px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
@media screen and (max-width: 750px) {
  #content .story .inBox {
    width: 90%;
  }
}
@media screen and (min-width: 751px) {
  #content .story .inBox:lang(it) {
    padding-bottom: 260px;
  }
}
@media screen and (min-width: 751px) {
  #content .story .inBox .boxL {
    width: 820px;
    padding-top: 10px;
  }
}
#content .story .inBox .boxL p {
  text-shadow: 2px 2px 1px #fbf8eb, -2px 2px 1px #fbf8eb, 2px -2px 1px #fbf8eb, -2px -2px 1px #fbf8eb;
}
@media screen and (min-width: 751px) {
  #content .story .inBox .boxL p {
    font-size: 19px;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 750px) {
  #content .story .inBox .boxL p {
    font-size: 3.4vw;
    margin-bottom: 4vw;
  }
}
#content .story .inBox .boxL p em {
  color: #054072;
}
@media screen and (min-width: 751px) {
  #content .story .inBox .chara {
    position: absolute;
    top: 570px;
    right: 20px;
  }
}
@media screen and (max-width: 750px) {
  #content .story .inBox .boxR {
    width: 70%;
    margin: 2vw auto;
  }
}
@media screen and (min-width: 751px) {
  #content .story .inBox .ss {
    position: absolute;
    bottom: 0;
    left: 0;
  }
}
@media screen and (max-width: 750px) {
  #content .story .inBox .ss {
    width: 80%;
    margin: 0 auto 6vw;
  }
}
@media screen and (min-width: 751px) {
  #content .story .inBox .ss:lang(it) {
    bottom: 80px;
  }
}

@media screen and (min-width: 751px) {
  .story2 {
    margin: 120px 0;
  }
}
@media screen and (min-width: 751px) {
  .story2 .inner h1 span:lang(fr) {
    letter-spacing: -0.04em;
  }
}
@media screen and (min-width: 751px) {
  .story2 .inner .explanation {
    margin: 30px 0 60px;
  }
}
@media screen and (max-width: 750px) {
  .story2 .inner .explanation {
    width: 90%;
    margin: 4vw auto 6vw;
  }
}
@media screen and (min-width: 751px) {
  .story2 .inner .minigame {
    width: 1180px;
    margin: 30px auto 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
@media screen and (max-width: 750px) {
  .story2 .inner .minigame {
    margin-bottom: 10vw;
  }
}
.story2 .inner .minigame li {
  background: #ffffef;
  border-radius: 10px;
  border: solid 3px #541500;
  -webkit-box-shadow: 0 0 0 3px #fff, 0 0 8px #d38e3c inset;
          box-shadow: 0 0 0 3px #fff, 0 0 8px #d38e3c inset;
}
@media screen and (min-width: 751px) {
  .story2 .inner .minigame li {
    width: 374px;
    padding: 20px;
  }
}
@media screen and (max-width: 750px) {
  .story2 .inner .minigame li {
    width: 80%;
    padding: 4vw 6vw;
    margin: 0 auto 6vw;
  }
}
.story2 .inner .minigame li h3 {
  color: #ffd200;
  text-shadow: 0 0 3px #49120d, 0 0 3px #49120d, 0 0 3px #49120d, 0 0 3px #49120d, 0 0 3px #49120d, 0 0 3px #49120d, 0 0 3px #49120d, 0 0 3px #49120d, 0 0 3px #49120d, 0 0 3px #49120d, 0 0 3px #49120d, 0 0 3px #49120d, 0 0 3px #49120d, 0 0 3px #49120d, 0 0 3px #49120d, 0 0 3px #49120d, #49120d 3px 3px 3px;
  line-height: 1.2;
}
@media screen and (min-width: 751px) {
  .story2 .inner .minigame li h3 {
    font-size: 32px;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 750px) {
  .story2 .inner .minigame li h3 {
    font-size: 6vw;
    margin-bottom: 3vw;
  }
}
@media screen and (min-width: 751px) {
  .story2 .inner .minigame li figure {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 750px) {
  .story2 .inner .minigame li figure {
    width: 70%;
    margin: 0 auto 4vw;
  }
}
.story2 .inner .minigame li p {
  color: #541500;
  text-align: left;
  line-height: 1.4;
}
@media screen and (min-width: 751px) {
  .story2 .inner .minigame li p {
    font-size: 19px;
  }
}
@media screen and (max-width: 750px) {
  .story2 .inner .minigame li p {
    font-size: 4vw;
  }
}

@media screen and (max-width: 750px) {
  .character .inner {
    border-bottom: none !important;
  }
}
.character .inner .charaBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin: 0 auto;
}
@media screen and (min-width: 751px) {
  .character .inner .charaBox {
    width: 1160px;
  }
}
@media screen and (max-width: 750px) {
  .character .inner .charaBox {
    width: 96%;
  }
}
@media screen and (min-width: 751px) {
  .character .inner .charaBox li {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 750px) {
  .character .inner .charaBox li {
    width: 49%;
    margin-bottom: 3vw;
  }
}
@media screen and (min-width: 751px) {
  .character .inner .charaBox li:nth-child(1) {
    margin-left: 198px;
  }
}
@media screen and (min-width: 751px) {
  .character .inner .charaBox li:nth-child(2) {
    margin-right: 198px;
  }
}