body {
  background: #fff;
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
}

img {
  image-rendering: -webkit-optimize-contrast;
}

/**
 * mv
 */
.mv {
  position: relative;
  padding-bottom: 10.4vw;
  background: #000;
}
.mv::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 186.6666666667vw;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(40%, rgba(0, 0, 0, 0.04)), to(#000));
  background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.04) 40%, #000 100%);
}
.mv > * {
  position: relative;
  z-index: 1;
}
.mv .mv-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.mv .mv-copy1 {
  position: absolute;
  top: 20.5333333333vw;
  right: 10.4vw;
  width: 6.4vw;
}
.mv .mv-copy2 {
  position: absolute;
  top: 33.0666666667vw;
  left: 50%;
  width: 16vw;
  translate: -50%;
}
.mv .mv-logo {
  width: 90.1333333333vw;
  padding-top: 104.8vw;
  margin-inline: auto;
}
.mv .mv-date {
  width: 26.6666666667vw;
  margin-top: 1.8666666667vw;
  margin-inline: auto;
}
.mv .mv-billing {
  width: 89.6vw;
  margin-top: 4.2666666667vw;
  margin-inline: auto;
}
.mv .nav {
  width: 92.2666666667vw;
  margin-top: 12vw;
  margin-inline: auto;
}
.mv .nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.6vw;
}
.mv .nav-list-item {
  width: calc(50% - 0.8vw);
}
.mv .nav-btn {
  width: 92.2666666667vw;
  margin-top: 4vw;
  margin-inline: auto;
}
.mv .nav-btn-item + .nav-btn-item {
  margin-top: 4vw;
}
.mv .mv-barrierfree {
  width: 48vw;
  margin-top: 6.6666666667vw;
  margin-inline: auto;
}
.mv .mv-bnr1 {
  width: 55.4666666667vw;
  margin-top: 12vw;
  margin-inline: auto;
}
.mv .mv-bnr2 {
  width: 55.4666666667vw;
  margin-top: 4vw;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .mv {
    padding-bottom: 28.6969253294vw;
  }
  .mv::after {
    display: none;
  }
  .mv .mv-copy1 {
    top: 3.074670571vw;
    right: 15.5197657394vw;
    width: 3.074670571vw;
  }
  .mv .mv-copy2 {
    top: 6.0029282577vw;
    width: 7.6134699854vw;
  }
  .mv .mv-logo {
    width: 50vw;
    padding-top: 37.8477306003vw;
  }
  .mv .mv-date {
    width: 14.4216691069vw;
    margin-top: 0.5124450952vw;
  }
  .mv .mv-billing {
    position: absolute;
    bottom: 5.8565153734vw;
    left: 50%;
    width: 54.5387994143vw;
    margin-top: 0;
    translate: -50%;
  }
  .mv .nav {
    width: 78.4773060029vw;
    margin-top: 2.3426061493vw;
  }
  .mv .nav-list {
    gap: 0.7320644217vw;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .mv .nav-list-item {
    width: calc(16.66% - 0.6100536847vw);
  }
  .mv .nav-list-link {
    display: block;
    -webkit-transition: scale 0.3s;
    transition: scale 0.3s;
    will-change: scale;
  }
  .mv .nav-list-link:hover {
    scale: 1.09;
  }
  .mv .nav-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.4641288433vw;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 68.5212298682vw;
    margin-top: 1.6105417277vw;
  }
  .mv .nav-btn-item {
    width: 33.5285505124vw;
  }
  .mv .nav-btn-item + .nav-btn-item {
    margin-top: 0;
  }
  .mv .nav-btn-link {
    display: block;
    -webkit-transition: scale 0.3s;
    transition: scale 0.3s;
    will-change: scale;
  }
  .mv .nav-btn-link:hover {
    scale: 1.05;
  }
  .mv .mv-barrierfree {
    width: 20.7174231332vw;
    max-width: 283px;
    margin-top: 3.2942898975vw;
  }
  .mv .mv-barrierfree-link {
    display: block;
    -webkit-transition: scale 0.3s;
    transition: scale 0.3s;
    will-change: scale;
  }
  .mv .mv-barrierfree-link:hover {
    scale: 1.09;
  }
  .mv .mv-bnr1 {
    position: absolute;
    top: 49.1947291362vw;
    right: 12.6647144949vw;
    width: 12.4450951684vw;
    margin-top: 0;
  }
  .mv .mv-bnr1-link {
    display: block;
    -webkit-transition: scale 0.3s;
    transition: scale 0.3s;
    will-change: scale;
  }
  .mv .mv-bnr1-link:hover {
    scale: 1.09;
  }
  .mv .mv-bnr2 {
    position: absolute;
    top: 48.8286969253vw;
    left: 12.6647144949vw;
    width: 12.9575402635vw;
    margin-top: 0;
  }
  .mv .mv-bnr2-link {
    display: block;
    -webkit-transition: scale 0.3s;
    transition: scale 0.3s;
    will-change: scale;
  }
  .mv .mv-bnr2-link:hover {
    scale: 1.09;
  }
}

/**
 * bg
 */
.fixed-bg-area {
  position: relative;
  margin-top: -1px;
}

.fixed-bg-wrap {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
          clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.fixed-bg {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: url(../img/bg_fixed01_sp.jpg) no-repeat center bottom/cover;
}
@media (min-width: 768px) {
  .fixed-bg {
    background-image: url(../img/bg_fixed01_pc.jpg);
  }
}

/**
 * trailer
 */
.trailer {
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  padding-top: 21.0666666667vw;
  padding-bottom: 40.8vw;
}
.trailer .trailer-head {
  width: 63.4666666667vw;
  margin-inline: auto;
}
.trailer .trailer-box {
  position: relative;
  width: 86.6666666667vw;
  margin-top: 6.9333333333vw;
  margin-inline: auto;
}
.trailer .trailer-yt {
  position: absolute;
  top: 9.6vw;
  left: 50%;
  width: 71.2vw;
  translate: -50%;
}
.trailer .trailer-yt iframe {
  width: 100%;
  aspect-ratio: 16/9;
}
.trailer .trailer-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 1.3333333333vw 1.8666666667vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  top: 52vw;
  left: 50%;
  width: 71.2vw;
  translate: -50%;
}
.trailer .trailer-list-item {
  width: calc(50% - 0.9333333333vw);
}
@media (min-width: 768px) {
  .trailer {
    padding-top: 6.0761346999vw;
    padding-bottom: 4.39238653vw;
  }
  .trailer .trailer-head {
    width: 27.6720351391vw;
  }
  .trailer .trailer-box {
    width: 66.9838945827vw;
    margin-top: 0.7320644217vw;
  }
  .trailer .trailer-yt {
    top: 7.1742313324vw;
    width: 47.2181551977vw;
  }
  .trailer .trailer-list {
    gap: 0.7320644217vw;
    top: 34.6998535871vw;
    width: 47.2181551977vw;
  }
  .trailer .trailer-list-item {
    width: 10.2489019034vw;
  }
  .trailer .trailer-list-link {
    display: block;
    -webkit-transition: scale 0.3s;
    transition: scale 0.3s;
    will-change: scale;
  }
  .trailer .trailer-list-link:hover {
    scale: 1.05;
  }
}

/**
 * intro
 */
.intro {
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  padding-top: 20.5333333333vw;
}
.intro .intro-head {
  width: 88.5333333333vw;
  margin-inline: auto;
}
.intro .intro-txt1 {
  width: 88.5333333333vw;
  margin-top: 5.8666666667vw;
  margin-inline: auto;
}
.intro .intro-txt-bg {
  position: relative;
  margin-top: 73.3333333333vw;
  padding-top: 23.7333333333vw;
  padding-bottom: 21.6vw;
  background: #000;
}
.intro .intro-txt-bg::before {
  content: "";
  position: absolute;
  top: -13.3333333333vw;
  left: 0;
  width: 100%;
  height: 13.3333333333vw;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(#000));
  background: linear-gradient(rgba(0, 0, 0, 0) 0%, #000 100%);
}
.intro .intro-txt-bg::after {
  content: "";
  position: absolute;
  top: 58.6666666667vw;
  left: 50%;
  width: 92vw;
  height: 105.0666666667vw;
  background: url(../img/bg_intro01.png) no-repeat center/cover;
  translate: -50%;
}
.intro .intro-txt2 {
  position: relative;
  z-index: 1;
  width: 89.6vw;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .intro {
    padding-top: 4.39238653vw;
  }
  .intro .intro-head {
    width: 35.7247437775vw;
  }
  .intro .intro-txt1 {
    width: 55.7833089312vw;
    margin-top: 3.4407027818vw;
  }
  .intro .intro-txt-bg {
    position: relative;
    margin-top: 27.8184480234vw;
    padding-top: 12.8111273792vw;
    padding-bottom: 13.2503660322vw;
  }
  .intro .intro-txt-bg::before {
    top: -3.6603221083vw;
    height: 3.6603221083vw;
  }
  .intro .intro-txt-bg::after {
    top: 4.2459736457vw;
    width: 41.654465593vw;
    height: 47.4377745242vw;
  }
  .intro .intro-txt2 {
    width: 55.1976573939vw;
  }
}

/**
 * story
 */
.story {
  position: relative;
  margin-top: -1px;
  padding-top: 21.3333333333vw;
  padding-bottom: 34.4vw;
  background: url(../img/bg_story01_sp.jpg) no-repeat center/cover;
}
.story::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 13.3333333333vw;
  background: -webkit-gradient(linear, left top, left bottom, from(#000), to(rgba(0, 0, 0, 0)));
  background: linear-gradient(#000 0%, rgba(0, 0, 0, 0) 100%);
}
.story .story-head {
  width: 61.3333333333vw;
  margin-inline: auto;
}
.story .story-gallery {
  margin-top: 7.7333333333vw;
}
.story .story-box {
  position: relative;
  width: 95.7333333333vw;
  margin-top: -5.3333333333vw;
  padding-top: 11.4666666667vw;
  margin-inline: auto;
}
.story .story-box-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.story .story-txt1 {
  position: relative;
  width: 89.6vw;
  margin-inline: auto;
}
.story .story-txt2 {
  position: relative;
  width: 89.6vw;
  margin-top: 4vw;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .story {
    padding-top: 6.2225475842vw;
    padding-bottom: 12.5183016105vw;
    background-image: url(../img/bg_story01_pc.jpg);
  }
  .story::before {
    height: 3.6603221083vw;
  }
  .story .story-head {
    width: 24.0117130307vw;
  }
  .story .story-gallery {
    margin-top: 2.4890190337vw;
  }
  .story .story-box {
    width: 71.3762811127vw;
    margin-top: -5.4904831625vw;
    padding-top: 6.4421669107vw;
  }
  .story .story-txt1 {
    width: 64.1288433382vw;
  }
  .story .story-txt2 {
    width: 58.9311859444vw;
    margin-top: 2.196193265vw;
  }
}

/**
 * character
 */
.character {
  position: relative;
  padding-top: 22.6666666667vw;
  padding-bottom: 60.2666666667vw;
  background: url(../img/bg_character01_sp.jpg) no-repeat center/cover;
}
.character .character-head {
  width: 80.2666666667vw;
  margin-inline: auto;
}
.character .character-list {
  width: 94.9333333333vw;
  margin-top: 6.9333333333vw;
  margin-inline: auto;
}
.character .guest {
  position: relative;
  position: relative;
  width: 91.2vw;
  margin-top: 10.1333333333vw;
  padding-top: 13.6vw;
  margin-inline: auto;
}
.character .guest-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.character .guest-head {
  position: relative;
  width: 57.0666666667vw;
  margin-inline: auto;
}
.character .guest-photo {
  position: relative;
  width: 73.0666666667vw;
  margin-top: 5.8666666667vw;
  margin-inline: auto;
}
.character .guest-comment {
  position: relative;
  width: 82.1333333333vw;
  margin-top: 4.8vw;
  margin-inline: auto;
}
.character .guest-deco {
  position: absolute;
  right: -1.0666666667vw;
  bottom: -33.6vw;
  width: 30.1333333333vw;
}
@media (min-width: 768px) {
  .character {
    padding-top: 7.1010248902vw;
    padding-bottom: 18.5212298682vw;
    background-image: url(../img/bg_character01_pc.jpg);
    background-image: url(../img/bg_character01_pc.jpg);
  }
  .character .character-head {
    width: 31.3323572474vw;
  }
  .character .character-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2.7086383602vw 1.8301610542vw;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 67.4963396779vw;
    margin-top: 2.4890190337vw;
  }
  .character .character-list-item {
    width: calc(50% - 0.9150805271vw);
  }
  .character .guest {
    width: 75.2562225476vw;
    margin-top: 6.0029282577vw;
    padding-top: 5.0512445095vw;
  }
  .character .guest-head {
    width: 22.8404099561vw;
  }
  .character .guest-photo {
    width: 23.1332357247vw;
    margin-top: 2.1229868228vw;
  }
  .character .guest-comment {
    width: 46.7057101025vw;
    margin-top: 2.1229868228vw;
  }
  .character .guest-deco {
    right: 0.2928257687vw;
    bottom: -6.149341142vw;
    width: 9.3704245974vw;
  }
}

/**
 * footer
 */
.footer {
  position: relative;
  padding-top: 32.8vw;
  padding-bottom: 9.0666666667vw;
  background: #000;
}
.footer .footer-logo {
  width: 84vw;
  margin-inline: auto;
}
.footer .footer-date {
  width: 32vw;
  margin-top: 4.8vw;
  margin-inline: auto;
}
.footer .footer-sns {
  width: 82.9333333333vw;
  margin-top: 23.7333333333vw;
  margin-inline: auto;
}
.footer .footer-bnr {
  margin-top: 14.9333333333vw;
}
.footer .footer-bnr-item {
  width: 45.6vw;
  margin-inline: auto;
}
.footer .footer-bnr-item + .footer-bnr-item {
  margin-top: 3.4666666667vw;
}
.footer .footer-bnr-item.-large {
  width: 82.9333333333vw;
}
.footer .footer-bnr-item.-medium {
  width: 68vw;
}
.footer .footer-ticket {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 5.8666666667vw;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 7.2vw;
}
.footer .footer-ticket-item {
  width: 32.8vw;
}
.footer .footer-ticket-item.-large {
  width: 35.2vw;
}
.footer .footer-cr {
  margin-top: 14.6666666667vw;
  color: #fff;
  font-size: 3.2vw;
  text-align: center;
}
@media (min-width: 768px) {
  .footer {
    padding-top: 9.0775988287vw;
    padding-bottom: 3.8799414348vw;
  }
  .footer .footer-logo {
    width: 35.6515373353vw;
  }
  .footer .footer-date {
    width: 8.7115666179vw;
    margin-top: 1.317715959vw;
  }
  .footer .footer-sns {
    width: 30.3806734993vw;
    margin-top: 5.8565153734vw;
  }
  .footer .footer-sns-link {
    display: block;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .footer .footer-sns-link:hover {
    opacity: 0.6;
  }
  .footer .footer-bnr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.0980966325vw;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 2.8550512445vw;
  }
  .footer .footer-bnr-item {
    width: 17.5695461201vw;
    margin-inline: 0;
  }
  .footer .footer-bnr-item + .footer-bnr-item {
    margin-top: 0;
  }
  .footer .footer-bnr-item.-large {
    width: 31.8448023426vw;
  }
  .footer .footer-bnr-item.-medium {
    width: 25.9882869693vw;
  }
  .footer .footer-bnr-link {
    display: block;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .footer .footer-bnr-link:hover {
    opacity: 0.6;
  }
  .footer .footer-ticket {
    gap: 1.6105417277vw;
    margin-top: 1.317715959vw;
  }
  .footer .footer-ticket-item {
    width: 9.0043923865vw;
  }
  .footer .footer-ticket-item.-large {
    width: 9.663250366vw;
  }
  .footer .footer-ticket-link {
    display: block;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .footer .footer-ticket-link:hover {
    opacity: 0.6;
  }
  .footer .footer-cr {
    margin-top: 1.8301610542vw;
    font-size: 0.878477306vw;
  }
}

/**
 * top btn
 */
.footer-topbtn {
  opacity: 0;
  position: fixed;
  right: 3.4666666667vw;
  bottom: 3.4666666667vw;
  z-index: 10;
  width: 15.2vw;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.footer-topbtn.is-show {
  opacity: 1;
}
.footer-topbtn.is-stop {
  position: absolute;
  top: -20vw;
  bottom: auto;
}
@media (min-width: 768px) {
  .footer-topbtn {
    right: 2.4158125915vw;
    bottom: 2.8550512445vw;
    width: 7.6866764275vw;
  }
  .footer-topbtn .footer-topbtn-item {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .footer-topbtn .footer-topbtn-item:hover {
    opacity: 0.6;
  }
  .footer-topbtn.is-stop {
    top: -10.6881405564vw;
  }
}

/**
 * feature modal
 */
.feature {
  min-height: 100vh;
  min-height: 100svh;
  padding: 21.6vw 3.4666666667vw;
  background: url(../../full/img/bg_feature01.jpg) repeat center top/14.6666666667vw;
}
.feature .feature-box {
  padding: 10.4vw 0 13.6vw;
  border-radius: 4.2666666667vw;
  background-color: #fff540;
}
.feature .feature-head {
  width: 39.2vw;
  margin-inline: auto;
}
.feature .feature-img {
  width: 54.9333333333vw;
  margin-top: -1.3333333333vw;
  margin-inline: auto;
}
.feature .feature-txt01 {
  width: 86.6666666667vw;
  margin-top: 9.8666666667vw;
  margin-inline: auto;
}
.feature .feature-txt02 {
  width: 84.2666666667vw;
  margin-top: 3.2vw;
  margin-inline: auto;
}
.feature .feature-captures {
  margin-top: 8vw;
}
.feature .feature-capture {
  width: 82.4vw;
  margin: 0;
  margin-inline: auto;
}
.feature .feature-capture + .feature-capture {
  margin-top: 5.8666666667vw;
}
@media (min-width: 768px) {
  .feature {
    padding: 9.5900439239vw 0 8.7115666179vw;
    background-size: 6.588579795vw;
  }
  .feature .feature-box {
    max-width: 81.7715959004vw;
    padding: 5.7833089312vw 0 4.5387994143vw;
    border-radius: 1.6105417277vw;
    background-color: #fff540;
    margin-inline: auto;
  }
  .feature .feature-head {
    width: 20.5710102489vw;
  }
  .feature .feature-img {
    width: 30.7467057101vw;
    margin-top: -1.3909224012vw;
  }
  .feature .feature-txt01 {
    width: 72.9868228404vw;
    margin-top: 2.5622254758vw;
  }
  .feature .feature-txt02 {
    width: 62.1522693997vw;
    margin-top: 1.9033674963vw;
  }
  .feature .feature-captures {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.9033674963vw;
    width: 72.9868228404vw;
    margin-top: 4.0263543192vw;
    margin-inline: auto;
  }
  .feature .feature-capture {
    width: 100%;
    margin: 0;
    margin-inline: 0;
  }
  .feature .feature-capture + .feature-capture {
    margin-top: 0;
  }
}

/**
 * present modal
 */
.present {
  min-height: 100vh;
  min-height: 100svh;
  padding: 16.5333333333vw 2.6666666667vw;
  background: url(../../full/img/bg_present01.jpg) repeat center top/14.6666666667vw;
}
.present .present-title {
  width: 53.0666666667vw;
  margin-inline: auto;
}
.present .present-box {
  margin-top: 8.2666666667vw;
  padding: 11.4666666667vw 0 14.4vw;
  border-radius: 8.5333333333vw;
  background: url(../../full/img/bg_texture01.jpg) no-repeat center/cover;
}
.present .present-head {
  width: 71.2vw;
  margin-inline: auto;
}
.present .present-txt01 {
  width: 83.4666666667vw;
  margin-top: 8vw;
  margin-inline: auto;
}
.present .present-img {
  width: 87.4666666667vw;
  margin-top: 4.2666666667vw;
  margin-inline: auto;
}
.present .present-txt02 {
  width: 88vw;
  margin-inline: auto;
}
.present .present-txt03 {
  width: 86.6666666667vw;
  margin-top: 6.4vw;
  margin-inline: auto;
}
.present .present-txt04 {
  width: 88.8vw;
  margin-top: 5.6vw;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .present {
    padding: 7.1742313324vw 0 4.0995607613vw;
    background-size: 6.588579795vw;
  }
  .present .present-title {
    width: 41.1420204978vw;
  }
  .present .present-box {
    width: 86.82284041vw;
    margin-top: 5.710102489vw;
    padding: 6.588579795vw 0 6.6617862372vw;
    border-radius: 2.3426061493vw;
    margin-inline: auto;
  }
  .present .present-head {
    width: 42.8989751098vw;
  }
  .present .present-txt01 {
    width: 60.541727672vw;
    margin-top: 5.4172767204vw;
  }
  .present .present-img {
    width: 68.2284040996vw;
    margin-top: 1.6105417277vw;
    translate: 0.9516837482vw;
  }
  .present .present-txt02 {
    width: 73.9385065886vw;
    margin-top: -0.9516837482vw;
  }
  .present .present-txt03 {
    width: 75.1098096633vw;
    margin-top: 2.7818448023vw;
  }
  .present .present-txt04 {
    width: 46.1200585652vw;
    margin-top: 2.2693997072vw;
  }
}

/**
 * ticket modal
 */
.ticket {
  min-height: 100vh;
  min-height: 100svh;
  padding: 16.5333333333vw 2.6666666667vw;
  background: url(../../full/img/bg_ticket01.jpg) repeat center top/14.6666666667vw;
}
.ticket .ticket-title {
  width: 53.0666666667vw;
  margin-inline: auto;
}
.ticket .ticket-box {
  margin-top: 8.2666666667vw;
  padding: 11.4666666667vw 0 10.1333333333vw;
  border-radius: 8.5333333333vw;
  background: url(../../full/img/bg_texture01.jpg) no-repeat center/cover;
}
.ticket .ticket-head {
  width: 71.2vw;
  margin-inline: auto;
}
.ticket .ticket-txt01 {
  width: 85.3333333333vw;
  margin-top: 5.0666666667vw;
  margin-inline: auto;
}
.ticket .ticket-txt02 {
  width: 84vw;
  margin-top: 0.8vw;
  margin-inline: auto;
}
.ticket .ticket-img {
  width: 80.2666666667vw;
  margin-top: 5.0666666667vw;
  margin-inline: auto;
}
.ticket .ticket-txt03 {
  width: 88.8vw;
  margin-top: 9.8666666667vw;
  margin-inline: auto;
}
.ticket .ticket-txt04 {
  width: 90.6666666667vw;
  margin-top: 3.7333333333vw;
  margin-inline: auto;
}
.ticket .ticket-btns {
  width: 88.8vw;
  margin-top: 4vw;
  margin-inline: auto;
}
.ticket .ticket-btn + .ticket-btn {
  margin-top: 2.1333333333vw;
}
.ticket .ticket-txt05 {
  width: 88.2666666667vw;
  margin-top: 11.7333333333vw;
  margin-inline: auto;
}
.ticket .ticket-txt06 {
  width: 65.8666666667vw;
  margin-top: 1.3333333333vw;
  margin-inline: auto;
}
.ticket .ticket-txt07 {
  width: 83.4666666667vw;
  margin-top: 7.4666666667vw;
  margin-inline: auto;
}
.ticket .ticket-widgets {
  margin-top: 3.7333333333vw;
}
.ticket .ticket-widgets #mvtk-widgets-container {
  text-align: center;
  margin-inline: auto;
}
@media (max-width: 375px) {
  .ticket .ticket-widgets {
    margin-top: 2.6666666667vw;
  }
  .ticket .ticket-widgets #mvtk-widgets-container {
    scale: 0.9;
  }
}
@media (min-width: 768px) {
  .ticket {
    padding: 7.1742313324vw 0 4.0995607613vw;
    background-size: 6.588579795vw;
  }
  .ticket .ticket-title {
    width: 41.1420204978vw;
  }
  .ticket .ticket-box {
    width: 86.82284041vw;
    margin-top: 5.710102489vw;
    padding: 6.588579795vw 0 6.6617862372vw;
    border-radius: 2.3426061493vw;
    margin-inline: auto;
  }
  .ticket .ticket-head {
    width: 42.8989751098vw;
  }
  .ticket .ticket-txt01 {
    width: 55.9297218155vw;
    margin-top: 4.3191800878vw;
  }
  .ticket .ticket-txt02 {
    width: 57.3938506589vw;
    margin-top: 0.5856515373vw;
  }
  .ticket .ticket-img {
    width: 52.7086383602vw;
    margin-top: 2.2693997072vw;
    translate: -1.0980966325vw;
  }
  .ticket .ticket-txt03 {
    width: 51.5373352855vw;
    margin-top: 5.710102489vw;
  }
  .ticket .ticket-txt04 {
    width: 70.6442166911vw;
    margin-top: 2.2693997072vw;
  }
  .ticket .ticket-btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 1.6105417277vw;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 81.6251830161vw;
    margin-top: 4.2459736457vw;
  }
  .ticket .ticket-btns.-top-narrow {
    margin-top: 2.3426061493vw;
  }
  .ticket .ticket-btn {
    width: 39.9707174231vw;
  }
  .ticket .ticket-btn + .ticket-btn {
    margin-top: 0;
  }
  .ticket .ticket-btn-link {
    display: block;
    -webkit-transition: scale 0.3s;
    transition: scale 0.3s;
    will-change: scale;
  }
  .ticket .ticket-btn-link:hover {
    scale: 1.05;
  }
  .ticket .ticket-txt05 {
    width: 61.7862371889vw;
    margin-top: 9.5168374817vw;
  }
  .ticket .ticket-txt06 {
    width: 41.7276720351vw;
    margin-top: 1.0980966325vw;
  }
  .ticket .ticket-txt07 {
    width: 36.8960468521vw;
    margin-top: 4.9048316252vw;
  }
  .ticket .ticket-widgets {
    margin-top: 4.9048316252vw;
  }
}
@media (min-width: 830px) and (max-width: 1080px) {
  .ticket .ticket-widgets #mvtk-widgets-container {
    scale: 0.9;
  }
}

/**
 * staff modal
 */
.staff {
  min-height: 100vh;
  min-height: 100svh;
  padding: 9.8828696925vw 0 6.3689604685vw 4.39238653vw;
  background-color: #004020;
  color: #fff;
  font-size: 1.6105417277vw;
}
.staff .staff-head {
  width: 33.9677891654vw;
  margin-inline: auto;
}
.staff .staff-sec {
  margin-top: 3.75em;
  margin-inline: auto;
}
.staff .staff-sec + .staff-sec {
  margin-top: 6.25em;
}
.staff .staff-dl {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 1.25em;
}
.staff .staff-dl.-col3 {
  grid-template-columns: repeat(3, 1fr);
  padding-right: 25%;
}
.staff .staff-dl.-col3 .staff-dd.-return {
  grid-column: 1/2;
}
.staff .staff-dl.-gap1 {
  margin-top: 1.25em;
}
.staff .staff-dl.-gap2 {
  margin-top: 2.5em;
}
.staff .staff-dl.-gap3 {
  margin-top: 3.75em;
}
.staff .staff-dl.-gap4 {
  margin-top: 5em;
}
.staff .staff-dl.-gap5 {
  margin-top: 6.25em;
}
.staff .staff-dl.-gap6 {
  margin-top: 7.5em;
}
.staff .staff-dl.-gap7 {
  margin-top: 8.75em;
}
.staff .staff-dl.-gap8 {
  margin-top: 10em;
}
.staff .staff-dl.-gap9 {
  margin-top: 11.25em;
}
.staff .staff-dl.-gap10 {
  margin-top: 12.5em;
}
.staff .staff-dl.-gap11 {
  margin-top: 13.75em;
}
.staff .staff-dl.-gap12 {
  margin-top: 15em;
}
.staff .staff-dl.-gap13 {
  margin-top: 16.25em;
}
.staff .staff-dl.-gap14 {
  margin-top: 17.5em;
}
.staff .staff-dl.-gap15 {
  margin-top: 18.75em;
}
.staff .staff-dl.-gap16 {
  margin-top: 20em;
}
.staff .staff-dl.-gap17 {
  margin-top: 21.25em;
}
.staff .staff-dl.-gap18 {
  margin-top: 22.5em;
}
.staff .staff-dl.-gap19 {
  margin-top: 23.75em;
}
.staff .staff-dl.-gap20 {
  margin-top: 25em;
}
.staff .staff-dl.-gap21 {
  margin-top: 26.25em;
}
.staff .staff-dl.-gap22 {
  margin-top: 27.5em;
}
.staff .staff-dl.-gap23 {
  margin-top: 28.75em;
}
.staff .staff-dl.-gap24 {
  margin-top: 30em;
}
.staff .staff-dl.-gap25 {
  margin-top: 31.25em;
}
.staff .staff-dl.-gap26 {
  margin-top: 32.5em;
}
.staff .staff-dl.-gap27 {
  margin-top: 33.75em;
}
.staff .staff-dl.-gap28 {
  margin-top: 35em;
}
.staff .staff-dl.-gap29 {
  margin-top: 36.25em;
}
.staff .staff-dl.-gap30 {
  margin-top: 37.5em;
}
.staff .staff-dt {
  grid-row: 1/99;
  grid-column: 1/2;
  font-weight: 500;
}
.staff .staff-dd {
  -ms-flex-item-align: end;
      align-self: end;
  font-weight: 500;
}
.staff .staff-dd.-return {
  grid-column: 2/3;
}
.staff .staff-dt.-col-1-4,
.staff .staff-dd.-col-1-4 {
  grid-column: 1/4;
}
.staff .staff-dt.-col-1-4.-col-center,
.staff .staff-dd.-col-1-4.-col-center {
  padding-left: 33.33%;
}
.staff .staff-dt.-col-1-5,
.staff .staff-dd.-col-1-5 {
  grid-column: 1/5;
}
.staff .staff-dt.-col-1-5 span,
.staff .staff-dd.-col-1-5 span {
  display: inline-block;
  width: 25%;
}
.staff .staff-dt.-col-2-3,
.staff .staff-dd.-col-2-3 {
  grid-column: 2/3;
}
.staff .staff-dt.-col-2-5,
.staff .staff-dd.-col-2-5 {
  grid-column: 2/5;
}
.staff .staff-dt.-col-2-5 span,
.staff .staff-dd.-col-2-5 span {
  display: inline-block;
  width: 33.33%;
}
.staff .staff-dt.-col-3-4,
.staff .staff-dd.-col-3-4 {
  grid-column: 3/4;
}
.staff .staff-dt.-col-4-5,
.staff .staff-dd.-col-4-5 {
  grid-column: 4/5;
}
.staff .staff-dt.-row-1-2,
.staff .staff-dd.-row-1-2 {
  grid-row: 1/2;
}
.staff .staff-dt.-center,
.staff .staff-dd.-center {
  text-align: center;
}
.staff .staff-dt.-gap05,
.staff .staff-dd.-gap05 {
  padding-top: 0.5em;
}
.staff .staff-dt.-gap1,
.staff .staff-dd.-gap1 {
  padding-top: 1.25em;
}
.staff .staff-dt.-gap2,
.staff .staff-dd.-gap2 {
  padding-top: 2.5em;
}
.staff .staff-dt.-gap3,
.staff .staff-dd.-gap3 {
  padding-top: 3.75em;
}
.staff .staff-dt.-gap4,
.staff .staff-dd.-gap4 {
  padding-top: 5em;
}
.staff .staff-dt.-gap5,
.staff .staff-dd.-gap5 {
  padding-top: 6.25em;
}
.staff .staff-dt.-gap6,
.staff .staff-dd.-gap6 {
  padding-top: 7.5em;
}
.staff .staff-title {
  font-weight: 700;
  font-size: 1.33em;
}
.staff .staff-cr {
  margin-top: 6.25em;
}
@media (max-width: 767px) {
  .staff {
    padding: 21.3333333333vw 5.3333333333vw 14.4vw;
    font-size: 3.7333333333vw;
    letter-spacing: 0;
  }
  .staff .staff-head {
    width: 54.9333333333vw;
  }
  .staff .staff-sec {
    margin-top: 2.625em;
  }
  .staff .staff-sec + .staff-sec {
    margin-top: 4.35em;
  }
  .staff .staff-dl {
    grid-template-columns: repeat(2, 1fr);
  }
  .staff .staff-dl.-col3 {
    grid-template-columns: repeat(2, 1fr);
    padding-right: 0;
  }
  .staff .staff-dt {
    grid-row: 1/1;
    grid-column: 1/3;
  }
  .staff .staff-dd.-return {
    grid-column: 1/2;
  }
  .staff .staff-dt,
  .staff .staff-dd {
    white-space: nowrap;
  }
  .staff .staff-dt.-col-1-4,
  .staff .staff-dd.-col-1-4 {
    grid-column: 1/3;
  }
  .staff .staff-dt.-col-1-4.-col-center,
  .staff .staff-dd.-col-1-4.-col-center {
    padding-left: 0;
  }
  .staff .staff-dt.-col-1-5,
  .staff .staff-dd.-col-1-5 {
    grid-column: 1/5;
  }
  .staff .staff-dt.-col-1-5 span,
  .staff .staff-dd.-col-1-5 span {
    width: 50%;
  }
  .staff .staff-dt.-col-2-3,
  .staff .staff-dd.-col-2-3 {
    grid-column: 2/3;
  }
  .staff .staff-dt.-col-2-5,
  .staff .staff-dd.-col-2-5 {
    grid-column: 1/3;
  }
  .staff .staff-dt.-col-2-5 span,
  .staff .staff-dd.-col-2-5 span {
    width: 50%;
  }
  .staff .staff-dt.-col-3-4,
  .staff .staff-dd.-col-3-4 {
    grid-column: 1/2;
  }
  .staff .staff-dt.-col-3-4 + .-col-3-4,
  .staff .staff-dd.-col-3-4 + .-col-3-4 {
    grid-column: 2/3;
  }
  .staff .staff-dt.-col-4-5,
  .staff .staff-dd.-col-4-5 {
    grid-column: 1/2;
  }
  .staff .staff-dt.-gap05,
  .staff .staff-dd.-gap05 {
    padding-top: 0.5em;
  }
  .staff .staff-title {
    font-size: 1.1em;
  }
  .staff .staff-cr {
    margin-top: 5em;
  }
}

/**
 * cp release
 */
.release {
  min-height: 100vh;
  min-height: 100svh;
  padding: 14.1333333333vw 3.4666666667vw;
  background: url(../../full/img/bg_release01.jpg) repeat center top/14.6666666667vw;
}
.release .release-head {
  width: 90.6666666667vw;
  margin-inline: auto;
}
.release .release-box {
  margin-top: 12.2666666667vw;
  padding: 7.4666666667vw 0 9.6vw;
  border-radius: 8.5333333333vw;
  background: url(../../full/img/bg_texture01.jpg) no-repeat center/cover;
}
.release .release-img01 {
  width: 89.6vw;
  margin-inline: auto;
}
.release .release-img02 {
  width: 89.6vw;
  margin-top: 2.1333333333vw;
  margin-inline: auto;
}
.release .release-btn-list {
  width: 83.7333333333vw;
  margin-top: 7.7333333333vw;
  margin-inline: auto;
}
.release .release-btn-item + .release-btn-item {
  margin-top: 2.4vw;
}
.release .release-img03 {
  width: 84vw;
  margin-top: 8vw;
  margin-inline: auto;
}
.release .release-cr {
  width: 82.1333333333vw;
  margin-top: 3.2vw;
  margin-inline: auto;
}
@media (min-width: 768px) {
  .release {
    padding: 3.513909224vw 0 6.5153733529vw;
    background-size: 6.588579795vw;
  }
  .release .release-head {
    width: 41.8740849195vw;
  }
  .release .release-box {
    width: 83.1625183016vw;
    margin-top: 3.1478770132vw;
    padding: 4.1727672035vw 0 3.8067349927vw;
    border-radius: 2.3426061493vw;
    margin-inline: auto;
  }
  .release .release-img01 {
    width: 55.7833089312vw;
    translate: 5.8565153734vw;
  }
  .release .release-img02 {
    width: 65.3001464129vw;
    margin-top: 2.4158125915vw;
    translate: -2.9282576867vw;
  }
  .release .release-btn-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.2693997072vw;
    width: 63.7628111274vw;
    margin-top: 3.3674963397vw;
  }
  .release .release-btn-item + .release-btn-item {
    margin-top: 0;
  }
  .release .release-btn-link {
    display: block;
    -webkit-transition: scale 0.3s;
    transition: scale 0.3s;
    will-change: scale;
  }
  .release .release-btn-link:hover {
    scale: 1.09;
  }
  .release .release-img03 {
    width: 66.6178623719vw;
    margin-top: 4.5387994143vw;
  }
  .release .release-cr {
    width: 28.8433382138vw;
    margin-top: 1.5373352855vw;
  }
}
@media (min-width: 1136px) {
  .release {
    padding: 48px 0 89px;
    background-size: 90px;
  }
  .release .release-head {
    width: 572px;
  }
  .release .release-box {
    width: 1136px;
    margin-top: 43px;
    padding: 57px 0 52px;
    border-radius: 32px;
  }
  .release .release-img01 {
    width: 762px;
    translate: 80px;
  }
  .release .release-img02 {
    width: 892px;
    margin-top: 33px;
    translate: -40px;
  }
  .release .release-btn-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 31px;
    width: 871px;
    margin-top: 46px;
  }
  .release .release-btn-item + .release-btn-item {
    margin-top: 0;
  }
  .release .release-btn-link {
    display: block;
    -webkit-transition: scale 0.3s;
    transition: scale 0.3s;
    will-change: scale;
  }
  .release .release-btn-link:hover {
    scale: 1.09;
  }
  .release .release-img03 {
    width: 910px;
    margin-top: 62px;
  }
  .release .release-cr {
    width: 394px;
    margin-top: 21px;
  }
}