@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Kaisei+Opti&display=swap');
:root {
  --grad-progress: 0;
  --intro-progress: 0;
  --g-padding-s: 32px;
  --g-padding-m: 64px;
  --g-padding-l: 136px;
  --g-color-base: #F5F2EC;
  --g-color-red: #FF4F45;
  --g-color-green: #63BC49;
  --g-color-black: #000;
  --g-color-blue: #14C7D6;
  --g-color-white: #fff;
  --g-color-border: #707070;
  --g-color-yellow: #F59E33;
}@media screen and (max-width: 1400px) {
  :root {
    --g-padding-s: 32rem;
    --g-padding-m: 64rem;
    --g-padding-l: 136rem;
  }
}@media screen and (max-width: 768px) {
  :root {
    --g-padding-s: 0;
    --g-padding-m: 0;
    --g-padding-l: 0;
  }
}._b {
  font-weight: bold;
}._m {
  font-weight: 500;
}._n {
  font-weight: normal;
}.c-font-xs {
  font-size: 12rem;
  letter-spacing: 0.05em;
}.c-font-s {
  font-size: 16rem;
  font-weight: 500;
  line-height: 1.4;
}.c-font-m {
  font-size: 25rem;
  line-height: 2;
  letter-spacing: 0.05em;
}.c-font-l {
  font-size: 45rem;
  font-weight: 500;
  line-height: 90rem;
  letter-spacing: 0.05em;
}.c-font-xl {
  font-size: 120rem;
  font-weight: normal;
  line-height: 1.2;
}@media (max-width: 768px) {
  ._pc {
    display: none !important;
  }
}@media (min-width: 1025px) {
  ._tablet {
    display: none !important;
  }
}@media (min-width: 768px) {
  ._sp {
    display: none !important;
  }
}.smooth-scroll {
  height: 100vh;
  width: 100%;
}.scrollbar-track {
  display: none !important;
}html.has-scroll-smooth {
  overflow: hidden;
}html.has-scroll-dragging {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}[data-scroll-container] {
  overflow: hidden !important;
}.has-scroll-smooth body {
  overflow: hidden;
}.has-scroll-smooth [data-scroll-container] {
  min-height: 100vh;
}.c-scrollbar {
  position: absolute;
  right: 0;
  top: 0;
  width: 11rem;
  height: 100vh;
  transform-origin: center right;
  transition: transform 0.3s, opacity 0.3s;
  opacity: 0;
}.c-scrollbar:hover {
  transform: scaleX(1.45);
}.c-scrollbar:hover,
.has-scroll-scrolling .c-scrollbar,
.has-scroll-dragging .c-scrollbar {
  opacity: 1;
}.c-scrollbar_thumb {
  position: absolute;
  top: 0;
  right: 0;
  background-color: black;
  opacity: 0.5;
  width: 7rem;
  border-radius: 10rem;
  margin: 2rem;
  cursor: grab;
}.has-scroll-dragging .c-scrollbar_thumb {
  cursor: grabbing;
}.cover-footer {
  z-index: 1;
}body.is-loading .js-cursor {
  display: none;
}* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}*:focus {
  outline: none;
}html {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-tap-highlight-color: transparent;
  -webkit-text-size-adjust: 100%;
}@media screen and (max-width: 1400px) {
  html {
    font-size: 0.0714285714vw;
  }
}@media screen and (max-width: 768px) {
  html {
    font-size: 0.2564102564vw;
  }
}html.lenis {
  height: auto;
}.lenis.lenis-smooth {
  scroll-behavior: auto;
}.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}.lenis.lenis-stopped {
  overflow: hidden;
}.lenis.lenis-scrolling iframe {
  pointer-events: none;
}.sec-youtube-modal-container iframe,
.sec-movie__elem-container iframe {
  pointer-events: auto !important;
}body._pinch-zoom {
  position: fixed;
  left: 0;
  right: 0;
  overflow-y: scroll;
}::before,
::after {
  box-sizing: inherit;
  margin: 0;
}::-moz-selection {
  background-color: #ccc;
}::selection {
  background-color: #ccc;
}body {
  overflow-wrap: break-word;
  width: 100%;
  min-height: 100%;
  line-height: 1.8;
  overflow-x: hidden;
}body.is-menu-active {
  overflow: hidden;
}h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: normal;
  font-size: 1em;
}a {
  background-color: transparent;
  color: inherit;
  text-decoration: none;
}audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}img {
  max-width: 100%;
  width: 100%;
  height: auto;
  border: 0;
}ul,
ol {
  padding: 0;
  list-style: none;
}dl {
  padding: 0;
}iframe {
  border-style: none;
}.black a,
.black p {
  color: #000;
}h1, h2, h3, h4, h5, a, p, span {
  color: var(--g-color-black);
}section {
  position: relative;
  overflow: hidden;
}span {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  color: inherit;
}body.mac-os .home-intro__ttl-icons-graphic {
  bottom: 1.9270833333vw !important;
}body.mac-os .home-footer__intro .home-intro__ttl-icons-graphic {
  bottom: 0.2083333333vw !important;
}.sec-ttl__wrap._show .sec-ttl span {
  transform: translateY(0);
}.js-menu .c-menu {
  display: flex;
  align-items: center;
  overflow: hidden;
}.js-menu .c-menu span {
  position: relative;
  display: inline-block;
  line-height: 1;
  color: inherit;
}@media screen and (max-width: 768px) {
  .js-menu .c-menu span {
    transform: unset !important;
  }
}.js-menu .c-menu span::after {
  position: absolute;
  top: 0;
  left: 0;
  color: inherit;
  content: attr(data-text);
  transform: translateY(100%);
}@media screen and (max-width: 768px) {
  .js-menu .c-menu span::after {
    content: unset;
  }
}.forpc {
  display: block;
}@media screen and (max-width: 768px) {
  .forpc {
    display: none;
  }
}.forsp {
  display: none;
}@media screen and (max-width: 768px) {
  .forsp {
    display: block;
  }
}.s-container {
  max-width: 648px;
  width: 100%;
  margin: auto;
}@media screen and (max-width: 768px) {
  .s-container {
    max-width: 350rem;
  }
}.container {
  max-width: 1570px;
  width: 100%;
  margin: auto;
}@media screen and (max-width: 1400px) {
  .container {
    max-width: 1570rem;
  }
}@media screen and (max-width: 768px) {
  .container {
    max-width: 350rem;
  }
}.l-container {
  max-width: 1152px;
  width: 100%;
  margin: auto;
}@media screen and (max-width: 1400px) {
  .l-container {
    max-width: 1152rem;
  }
}@media screen and (max-width: 768px) {
  .l-container {
    max-width: 370rem;
  }
}.slide-auto-loop-wrap {
  display: flex;
  align-items: center;
  overflow: hidden;
}.slide-auto-loop-area {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
  animation: none;
}@keyframes loop-area {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}.slide-auto-loop-img {
  width: 1980px;
  overflow: hidden;
}@media screen and (max-width: 1400px) {
  .slide-auto-loop-img {
    width: 1980rem;
  }
}@media screen and (max-width: 768px) {
  .slide-auto-loop-img {
    width: 800rem;
  }
}.slide-auto-loop-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}.js-cover-sec {
  margin-top: -40px;
}@media screen and (max-width: 1400px) {
  .js-cover-sec {
    margin-top: -40rem;
  }
}@media screen and (max-width: 768px) {
  .js-cover-sec {
    margin-top: -16rem;
  }
}.js-cover-elem {
  position: relative;
}.js-cover-shadow {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  background-color: rgba(0, 0, 0, 0.5019607843);
  opacity: 1;
  pointer-events: none;
  will-change: opacity;
}.sec-ttl {
  text-align: center;
  overflow: hidden;
}.sec-ttl h2 img {
  width: auto;
}
.lower-fv {
  padding-top: 100px;
}
@media screen and (max-width: 768px) {
  .lower-fv {
    padding-top: 80rem;
  }
}.lower-fv-ttl {
  overflow: hidden;
}.lower-fv-container {
  text-align: center;
}
.lower-fv-container h2 {
    width: 65%;
    max-width: 650px;
    margin: 80px auto 80px;
    position: relative;
    z-index: 5;
}
.lower-link {
  margin-top: 50px;
  background: rgba(255, 255, 255, 0.6980392157);
  padding: 0 50px;
}@media screen and (max-width: 1400px) {
  .lower-link {
    padding: 0 50rem;
  }
}
@media screen and (max-width: 768px) {
  .lower-fv-container h2 {
    width: 72%;
    margin: 0 auto 30rem;
  }
  .lower-link {
    padding: 10px 0;
  }
}.lower-link-container {
  max-width: 1200px;
  width: 100%;
  margin: auto;
  padding: 10px 0;
}@media screen and (max-width: 768px) {
  .lower-link-container {
    max-width: 334rem;
    padding: 4rem 0;
  }
}.lower-link ul {
  display: flex;
  align-items: center;
  justify-content: left;
}.lower-link ul li,
.lower-link ul a {
  line-height: 1.6;
  font-weight: 400;
  font-size: 14px;
  letter-spacing: 0.05em;
}@media screen and (max-width: 768px) {
  .lower-link ul li,
  .lower-link ul a {
    font-size: 12rem;
  }
}.lower-link ul li {
  margin-right: 8px;
}@media screen and (max-width: 768px) {
  .lower-link ul li {
    margin-right: 6rem;
  }
}.lower-link ul a {
  position: relative;
  display: block;
}.lower-link ul a::after {
  content: "";
  width: 100%;
  height: 1px;
  background: var(--g-color-black);
  position: absolute;
  left: 0;
  bottom: 0;
}
.lower-page {
  background: url(../img/lower-bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  background-attachment: fixed;
  position: relative;
  clip-path: inset(0);
}
.lower-page::after{
    content: "";
    width: 100%;
    height: 250px;
    background: linear-gradient(to bottom, #F4C1D8 0px, #F4C1D8 100px, transparent);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.lower-page::before{
  content: "";
  width: 100%;
  height: 100%;
  overflow: unset;
  overflow-x: hidden;
  z-index: -1;
  position: relative;
  background: url(../img/bg01.webp) center repeat;
  background-size: 36px;
  padding-bottom: 100px;
  background-attachment: fixed;
  position: fixed;
}
@media screen and (max-width: 768px) {
  .lower-page::after{
      content: "";
      width: 100%;
      height: 100px;
      background: linear-gradient(to bottom, #F4C1D8 0px, transparent);
      position: absolute;
      top: 0;
      left: 0;
      z-index: 1;
  }

}.a-link {
  text-align: center;
}.a-link a {
  margin: auto;
  position: relative;
  width: 435px;
  height: 90px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.a-link_btn{
  width: 80%;
  max-width: 390px;
  margin: 0 auto;
}
.a-link_btn:hover{
  opacity: .7;
  transform: scale(0.98);
}
@media screen and (max-width: 1400px) {
  .a-link_btn{
    max-width: 360px;
  }
  .a-link a {
    width: 435rem;
    height: 90rem;
  }
}@media screen and (max-width: 768px) {
  .a-link_btn{
    width: 80%;
    max-width: 260px;
    margin: 0 auto;
  }
  .a-link a {
    width: 85%;
    height: 70rem;
    padding: 0 15rem;
  }
}.a-link a::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  background: var(--g-color-black);
  z-index: 1;
  transform: translate(-50%, -50%) skewX(-13deg);
}.a-link a span {
  position: relative;
  z-index: 2;
  color: var(--g-color-white);
  font-weight: 800;
  font-size: 15px;
  line-height: 1.25;
  letter-spacing: 0.05em;
  margin-right: 20px;
  display: block;
}@media screen and (max-width: 1400px) {
  .a-link a span {
    font-size: 14rem;
    margin-right: 20rem;
  }
}@media screen and (max-width: 768px) {
  .a-link a span {
    font-size: 12.5rem;
  }
}.a-link a svg {
  width: 8px;
  height: auto;
  position: relative;
  z-index: 2;
}@media screen and (max-width: 768px) {
  .a-link a svg {
    width: 8rem;
  }
}.a-link a:hover {
  transform: scale(0.95);
}.more-btn button,
.more-btn a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 15px 32px;
  background: linear-gradient(93.67deg, #93ACFF 0.58%, #CF88F0 22.89%, #FF8460 72.68%, #DEE31E 100.6%);
  border-radius: 100px;
  border: unset;
  outline: unset;
  cursor: pointer;
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}@media screen and (max-width: 1400px) {
  .more-btn button,
  .more-btn a {
    padding: 15rem 32rem;
  }
}@media screen and (max-width: 768px) {
  .more-btn button,
  .more-btn a {
    padding: 11rem 23rem;
  }
}.more-btn button span,
.more-btn a span {
  color: var(--g-color-white);
  font-weight: 700;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.05em;
  display: block;
  margin-right: 10px;
  margin-bottom: 0 !important;
}@media screen and (max-width: 1400px) {
  .more-btn button span,
  .more-btn a span {
    margin-right: 10rem;
    font-size: 16rem;
  }
}@media screen and (max-width: 768px) {
  .more-btn button span,
  .more-btn a span {
    font-size: 15rem;
  }
}.more-btn button span svg,
.more-btn a span svg {
  width: 16px;
  margin-bottom: 0;
}@media screen and (max-width: 1400px) {
  .more-btn button span svg,
  .more-btn a span svg {
    width: 16rem;
  }
}.more-btn button:hover,
.more-btn a:hover {
  transform: scale(0.95);
}.swiper-button-next:after,
.swiper-button-prev:after {
  content: none !important;
}.sec-youtube-modal {
  max-width: 1300px;
  padding: 0 50px;
  width: 100%;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.9);
  opacity: 0;
  z-index: 1001;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  visibility: hidden;
}@media screen and (max-width: 1400px) {
  .sec-youtube-modal {
    padding: 0 50rem;
  }
}@media screen and (max-width: 768px) {
  .sec-youtube-modal {
    padding: 0;
    max-width: 335rem;
  }
}.sec-youtube-modal.open-modal {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, -50%) scale(1);
}.sec-youtube-modal-btn {
  visibility: visible;
}.sec-youtube-modal-btns {
  max-width: 1300px;
  padding: 0 17px;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  visibility: hidden;
  pointer-events: none;
}@media screen and (max-width: 1400px) {
  .sec-youtube-modal-btns {
    padding: 0 17rem;
  }
}@media screen and (max-width: 768px) {
  .sec-youtube-modal-btns {
    padding: 0;
    max-width: 375rem;
    width: 375rem;
  }
}.sec-youtube-modal-btns button {
  visibility: visible;
  pointer-events: auto;
  border-radius: 4px;
  background: var(--g-color-black);
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  width: 66px;
  height: 66px;
  box-shadow: 0px 0px 23px 0px #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border: unset;
  outline: unset;
}@media screen and (max-width: 768px) {
  .sec-youtube-modal-btns button {
    width: 42rem;
    height: 42rem;
  }
}.sec-youtube-modal-btns button svg {
  width: 18px;
  height: auto;
}@media screen and (max-width: 768px) {
  .sec-youtube-modal-btns button svg {
    width: 12rem;
  }
}.sec-youtube-modal-btns button:hover {
  transform: scale(0.95);
}.sec-youtube-modal-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  border: 5px solid;
  border-image-source: linear-gradient(122.91deg, #A2DF57 0%, #1FFF96 20%, #0087E3 45%, #3DFEE4 72%, #179700 100%);
  border-image-slice: 1;
  background: url(../img/modal-bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top;
  padding: 25px 50px;
}@media screen and (max-width: 1400px) {
  .sec-youtube-modal-container {
    padding: 25rem 50rem;
    /*height: 600rem;*/
  }
}@media screen and (max-width: 768px) {
  .sec-youtube-modal-container {
    padding: 36rem 24rem;
    /*height: auto;*/
  }
}@media screen and (max-width: 765px) {
  .sec-youtube-modal-container {
    padding: 36rem 24rem;
    /*height: auto;*/
  }
}.sec-youtube-modal-container iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  -o-object-fit: cover;
     object-fit: cover;
}.sec-youtube-modal-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  cursor: pointer;
  position: absolute;
  top: -40px;
  right: 50px;
}@media screen and (max-width: 1400px) {
  .sec-youtube-modal-close {
    right: 50rem;
  }
}@media screen and (max-width: 768px) {
  .sec-youtube-modal-close {
    top: -30rem;
    right: 0;
    gap: 9rem;
  }
}.sec-youtube-modal-close svg {
  width: 18px;
  height: auto;
}@media screen and (max-width: 768px) {
  .sec-youtube-modal-close svg {
    width: 13rem;
  }
}.sec-youtube-modal-close span {
  font-weight: 500;
  font-size: 18px;
  line-height: 1;
  letter-spacing: 0.05em;
  color: var(--g-color-white);
  display: inline-flex;
}@media screen and (max-width: 768px) {
  .sec-youtube-modal-close span {
    font-size: 15rem;
  }
}.full-bg {
  opacity: 0;
  visibility: hidden;
  z-index: 1000;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 200%;
  background: rgba(0, 0, 0, 0.5);
}.full-bg.open-modal {
  opacity: 1;
  visibility: visible;
}.home-news__pagenavi-wrap {
  display: none !important;
}html {
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
}._bold {
  font-weight: 700;
}.js-ttl,
.js-ttl-io {
  overflow: hidden;
  display: block;
  opacity: 0;
}.js-ttl.show,
.js-ttl-io.show {
  opacity: 1;
}.js-ttl > span,
.js-ttl-io > span {
  display: inline-flex;
  align-items: center;
}.js-ttl > span span,
.js-ttl-io > span span {
  display: inline-block;
  transform: translate(0, 101%);
  transition: transform 1.2s cubic-bezier(0.32, 0.1, 0, 1);
}.js-ttl > span span._delay._show,
.js-ttl-io > span span._delay._show {
  transform: translate(0);
}.js-ttl > span span._delay._show:nth-of-type(1),
.js-ttl-io > span span._delay._show:nth-of-type(1) {
  transition-delay: 0s;
}.js-ttl > span span._delay._show:nth-of-type(2),
.js-ttl-io > span span._delay._show:nth-of-type(2) {
  transition-delay: 0.1s;
}.js-ttl > span span._delay._show:nth-of-type(3),
.js-ttl-io > span span._delay._show:nth-of-type(3) {
  transition-delay: 0.18s;
}.js-ttl > span span._delay._show:nth-of-type(4),
.js-ttl-io > span span._delay._show:nth-of-type(4) {
  transition-delay: 0.26s;
}.js-ttl > span span._delay._show:nth-of-type(5),
.js-ttl-io > span span._delay._show:nth-of-type(5) {
  transition-delay: 0.34s;
}.js-ttl > span span._delay._show:nth-of-type(6),
.js-ttl-io > span span._delay._show:nth-of-type(6) {
  transition-delay: 0.42s;
}.js-ttl > span span._delay._show:nth-of-type(7),
.js-ttl-io > span span._delay._show:nth-of-type(7) {
  transition-delay: 0.5s;
}.js-ttl > span span._delay._show:nth-of-type(8),
.js-ttl-io > span span._delay._show:nth-of-type(8) {
  transition-delay: 0.58s;
}.js-ttl > span span._delay._show:nth-of-type(9),
.js-ttl-io > span span._delay._show:nth-of-type(9) {
  transition-delay: 0.66s;
}.js-ttl > span span._delay._show:nth-of-type(10),
.js-ttl-io > span span._delay._show:nth-of-type(10) {
  transition-delay: 0.74s;
}.js-ttl > span span._delay._show:nth-of-type(11),
.js-ttl-io > span span._delay._show:nth-of-type(11) {
  transition-delay: 0.82s;
}.js-ttl > span span._delay._show:nth-of-type(12),
.js-ttl-io > span span._delay._show:nth-of-type(12) {
  transition-delay: 0.9s;
}.js-ttl > span span._delay._show:nth-of-type(13),
.js-ttl-io > span span._delay._show:nth-of-type(13) {
  transition-delay: 0.98s;
}.js-ttl > span span._delay._show:nth-of-type(14),
.js-ttl-io > span span._delay._show:nth-of-type(14) {
  transition-delay: 1.06s;
}.js-ttl > span span._delay._show:nth-of-type(15),
.js-ttl-io > span span._delay._show:nth-of-type(15) {
  transition-delay: 1.12s;
}.js-ttl > span span._delay._show:nth-of-type(16),
.js-ttl-io > span span._delay._show:nth-of-type(16) {
  transition-delay: 1.2s;
}.js-ttl > span span._delay._show:nth-of-type(17),
.js-ttl-io > span span._delay._show:nth-of-type(17) {
  transition-delay: 1.28s;
}.js-ttl > span span._delay._show:nth-of-type(18),
.js-ttl-io > span span._delay._show:nth-of-type(18) {
  transition-delay: 1.36s;
}.js-ttl > span span._delay._show:nth-of-type(19),
.js-ttl-io > span span._delay._show:nth-of-type(19) {
  transition-delay: 1.44s;
}.js-ttl > span span._delay._show:nth-of-type(20),
.js-ttl-io > span span._delay._show:nth-of-type(20) {
  transition-delay: 1.52s;
}.js-ttl > span span._delay._show:nth-of-type(21),
.js-ttl-io > span span._delay._show:nth-of-type(21) {
  transition-delay: 1.6s;
}.js-ttl > span span._delay._show:nth-of-type(22),
.js-ttl-io > span span._delay._show:nth-of-type(22) {
  transition-delay: 1.68s;
}.js-ttl > span span._delay._show:nth-of-type(23),
.js-ttl-io > span span._delay._show:nth-of-type(23) {
  transition-delay: 1.74s;
}.js-ttl > span span._delay._show:nth-of-type(24),
.js-ttl-io > span span._delay._show:nth-of-type(24) {
  transition-delay: 1.82s;
}.js-ttl > span span._delay._show:nth-of-type(25),
.js-ttl-io > span span._delay._show:nth-of-type(25) {
  transition-delay: 1.9s;
}.js-ttl > span span._delay._show:nth-of-type(26),
.js-ttl-io > span span._delay._show:nth-of-type(26) {
  transition-delay: 1.98s;
}.js-ttl > span span._delay._show:nth-of-type(27),
.js-ttl-io > span span._delay._show:nth-of-type(27) {
  transition-delay: 2.04s;
}.js-ttl > span span._delay._show:nth-of-type(28),
.js-ttl-io > span span._delay._show:nth-of-type(28) {
  transition-delay: 2.12s;
}.js-ttl > span span._delay._show:nth-of-type(29),
.js-ttl-io > span span._delay._show:nth-of-type(29) {
  transition-delay: 2.2s;
}.js-ttl > span span._delay._show:nth-of-type(30),
.js-ttl-io > span span._delay._show:nth-of-type(30) {
  transition-delay: 2.28s;
}.js-ttl > span span._show,
.js-ttl-io > span span._show {
  transform: translate(0, 0);
}.js-io._fadeup {
  transform: translate(0, 36px);
  opacity: 0;
  transition: transform 1.2s cubic-bezier(0.32, 0.1, 0, 1), opacity 1.2s cubic-bezier(0.32, 0.1, 0, 1), background 1.2s cubic-bezier(0.32, 0.1, 0, 1);
}.js-io._fadetoup > h2, .js-io._fadetoup > div {
  transform: translate(0, 110%);
  transition: transform 1.2s cubic-bezier(0.32, 0.1, 0, 1);
}.js-io._fadetoup._show h2,
.js-io._fadetoup._show div {
  transform: translate(0, 0);

}.js-io._clip {
  transform: translateY(40px);
  opacity: 0;
  transition: transform 1.2s cubic-bezier(0.32, 0.1, 0, 1), opacity 1.2s cubic-bezier(0.32, 0.1, 0, 1);
}.js-io._clip._show {
  transform: translateY(0);
  opacity: 1;
}@media screen and (max-width: 1400px) {
  .js-io._clip._show {
    transform: translateY(0);
    opacity: 1;
  }
}@media screen and (max-width: 768px) {
  .js-io._clip._show {
    transform: translateY(0);
    opacity: 1;
  }
}.js-io._fadeleft {
  transform: translateX(100px) scale(1.1);
  transition: all 0.5s ease-in-out;
  visibility: hidden;
  filter: blur(10px);
  opacity: 0;
}@media screen and (max-width: 1400px) {
  .js-io._fadeleft {
    transform: translateX(100rem) scale(1.1);
  }
}@media screen and (max-width: 768px) {
  .js-io._fadeleft {
    transform: translateX(50rem) scale(1.1);
  }
}.js-io._fadexy {
  transform: translate3d(20px, 20px, 0);
  opacity: 0;
  transition: transform 1.2s cubic-bezier(0.32, 0.1, 0, 1), opacity 1.2s cubic-bezier(0.32, 0.1, 0, 1);
}.js-io._blur {
  transform: scale(1.1);
  transition: all 1.2s cubic-bezier(0.32, 0.1, 0, 1);
  visibility: hidden;
  filter: blur(10px);
  opacity: 0;
}.js-io._fadein {
  transform: scale(0.9);
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  opacity: 0;
}.js-io._zoomup {
  transform: scale(0.5);
  transition: all 1s ease-in-out;
  visibility: hidden;
  opacity: 0;
  transition-timing-function: cubic-bezier(1, -0.195, 0, 1.33);
}.js-io._show {
  transform: translate(0) scale(1);
  visibility: visible;
  filter: blur(0);
  opacity: 1;
}.js-io._delay.--fadein {
  transform: translateY(0);
}.js-io._delay._show {
  transform: translate(0) scale(1);
  visibility: visible;
  filter: blur(0);
  opacity: 1;
}@media screen and (max-width: 768px) {
  .js-io._delay._show {
    transform: translate(0) scale(1);
    visibility: visible;
    filter: blur(0);
    opacity: 1;
    margin: auto;
  }
}.js-io._delay._show:nth-of-type(1) {
  transition-delay: 0s;
}.js-io._delay._show:nth-of-type(2) {
  transition-delay: 0.05s;
}.js-io._delay._show:nth-of-type(3) {
  transition-delay: 0.09s;
}.js-io._delay._show:nth-of-type(4) {
  transition-delay: 0.13s;
}.js-io._delay._show:nth-of-type(5) {
  transition-delay: 0.17s;
}.js-io._delay._show:nth-of-type(6) {
  transition-delay: 0.21s;
}.js-io._delay._show:nth-of-type(7) {
  transition-delay: 0.25s;
}.js-io._delay._show:nth-of-type(8) {
  transition-delay: 0.29s;
}.js-io._delay._show:nth-of-type(9) {
  transition-delay: 0.33s;
}.js-io._delay._show:nth-of-type(10) {
  transition-delay: 0.37s;
}.js-io._delay._show:nth-of-type(11) {
  transition-delay: 0.41s;
}.js-io._delay._show:nth-of-type(12) {
  transition-delay: 0.45s;
}.js-io._delay._show:nth-of-type(13) {
  transition-delay: 0.49s;
}.js-io._delay._show:nth-of-type(14) {
  transition-delay: 0.53s;
}.js-io._delay._show:nth-of-type(15) {
  transition-delay: 0.57s;
}.js-io._delay._show:nth-of-type(16) {
  transition-delay: 0.61s;
}.js-io._delay._show:nth-of-type(17) {
  transition-delay: 0.65s;
}.js-io._delay._show:nth-of-type(18) {
  transition-delay: 0.69s;
}.js-io._delay._show:nth-of-type(19) {
  transition-delay: 0.73s;
}.js-io._delay._show:nth-of-type(20) {
  transition-delay: 0.77s;
}.js-io._delay._show:nth-of-type(21) {
  transition-delay: 0.81s;
}.js-io._delay._show:nth-of-type(22) {
  transition-delay: 0.85s;
}.js-io._delay._show:nth-of-type(23) {
  transition-delay: 0.89s;
}.js-io._delay._show:nth-of-type(24) {
  transition-delay: 0.93s;
}.js-io._delay._show:nth-of-type(25) {
  transition-delay: 0.97s;
}.js-io._delay._show:nth-of-type(26) {
  transition-delay: 1.01s;
}.js-io._delay._show:nth-of-type(27) {
  transition-delay: 1.05s;
}.js-io._delay._show:nth-of-type(28) {
  transition-delay: 1.09s;
}.js-io._delay._show:nth-of-type(29) {
  transition-delay: 1.13s;
}.js-io._delay._show:nth-of-type(30) {
  transition-delay: 1.17s;
}.js-menu .c-menu {
  display: flex;
  align-items: center;
  overflow: hidden;
}.js-menu .c-menu span {
  position: relative;
  display: inline-block;
  line-height: 1;
  color: inherit;
}.js-menu .c-menu span::after {
  position: absolute;
  top: 0;
  left: 0;
  color: inherit;
  content: attr(data-text);
  transform: translateY(100%);
}._cus-blur {
  transform: scale(1.1);
  transition: all 1s ease-in-out;
  filter: blur(10px);
  opacity: 0;
}._cus-blur._show {
  transform: scale(1);
  filter: blur(0);
  opacity: 1;
}._cus-fadeup {
  transform: translate(0, 36px);
  opacity: 0;
  transition: transform 1.2s cubic-bezier(0.32, 0.1, 0, 1), opacity 1.2s cubic-bezier(0.32, 0.1, 0, 1), background 1.2s cubic-bezier(0.32, 0.1, 0, 1);
}._cus-fadeup._show {
  transform: translate(0);
  opacity: 1;
}._cus-fadeup._delay._show {
  transform: translate(0) scale(1);
  visibility: visible;
  filter: blur(0);
  opacity: 1;
}._cus-fadeup._delay._show:nth-of-type(1) {
  transition-delay: 0s;
}._cus-fadeup._delay._show:nth-of-type(2) {
  transition-delay: 0.05s;
}._cus-fadeup._delay._show:nth-of-type(3) {
  transition-delay: 0.09s;
}._cus-fadeup._delay._show:nth-of-type(4) {
  transition-delay: 0.13s;
}._cus-fadeup._delay._show:nth-of-type(5) {
  transition-delay: 0.17s;
}.handle-anime-txt {
  animation-name: handle_anime_txt;
  animation-duration: 0.87s;
  animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  animation-iteration-count: 1;
  animation-fill-mode: both;
}@keyframes handle_anime_txt {
  0% {
    -webkit-clip-path: polygon(0% 100%, 0% 100%, 100% 100%, 100% 100%);
            clip-path: polygon(0% 100%, 0% 100%, 100% 100%, 100% 100%);
    transform: translate(0, 100%) scale(1, 3.6);
  }
  100% {
    -webkit-clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 0%);
            clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 0%);
    transform: translate(0, 0) scale(1);
  }
}.js-io-anime {
  -webkit-clip-path: polygon(0% 100%, 0% 100%, 100% 100%, 100% 100%);
          clip-path: polygon(0% 100%, 0% 100%, 100% 100%, 100% 100%);
}.handle-anime {
  animation-name: handle_anime;
  animation-duration: 0.653s;
  animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  animation-iteration-count: 1;
  animation-fill-mode: both;
  animation-delay: 0.776s;
}@keyframes handle_anime {
  0% {
    -webkit-clip-path: polygon(0% 100%, 0% 100%, 100% 100%, 100% 100%);
            clip-path: polygon(0% 100%, 0% 100%, 100% 100%, 100% 100%);
  }
  100% {
    -webkit-clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 0%);
            clip-path: polygon(0% 0%, 0% 100%, 100% 100%, 100% 0%);
    transform: translate(0, 0);
  }
}.parallax-img__wrap {
  position: relative;
}.parallax-img__wrap .parallax-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% + 150px);
}.loading {
  /*fixedで全面に固定*/
  position: fixed;
  z-index: 990;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: var(--g-color-blue);
  text-align: center;
  color: #fff;
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
  transition: opacity 0.9s, visibility 0.4s, transform 0.3s cubic-bezier(0.92, 0.46, 0.36, 0.98), -webkit-clip-path 1.4s cubic-bezier(0.92, 0.46, 0.36, 0.98);
  transition: clip-path 1.4s cubic-bezier(0.92, 0.46, 0.36, 0.98), opacity 0.9s, visibility 0.4s, transform 0.3s cubic-bezier(0.92, 0.46, 0.36, 0.98);
  transition: clip-path 1.4s cubic-bezier(0.92, 0.46, 0.36, 0.98), opacity 0.9s, visibility 0.4s, transform 0.3s cubic-bezier(0.92, 0.46, 0.36, 0.98), -webkit-clip-path 1.4s cubic-bezier(0.92, 0.46, 0.36, 0.98);
  overflow: hidden;
}.loading-content .loading-txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: all 0.5s ease-in-out;
}.loading-content .loading-txt.loading-animation {
  opacity: 1;
  filter: blur(0);
}.loading-content .loading-txt > p {
  font-size: 96px;
  color: var(--g-color-white);
  line-height: 1;
}.loading-content .loading-txt-progress {
  position: relative;
}.loading-content .loading-txt-progress p {
  text-align: center;
  font-size: 24px;
  line-height: 1;
  color: var(--g-color-white);
  transition: all 1.2s cubic-bezier(0.32, 0.1, 0, 1);
  margin-bottom: 20px;
}@media screen and (max-width: 1400px) {
  .loading-content .loading-txt-progress p {
    font-size: 24rem;
  }
}@media screen and (max-width: 768px) {
  .loading-content .loading-txt-progress p {
    font-size: 24rem;
  }
}.loading-content .loading-txt-progress p.loaded {
  opacity: 0;
}.loading-content .loading-txt-progress .loading-progress-bar {
  height: 1px;
  width: 200px;
  background-color: var(--g-color-blue);
  position: relative;
  transition: all 1.2s cubic-bezier(0.32, 0.1, 0, 1);
}@media screen and (max-width: 768px) {
  .loading-content .loading-txt-progress .loading-progress-bar {
    width: 200rem;
  }
}.loading-content .loading-txt-progress .loading-progress-bar span {
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 1px;
  background-color: var(--g-color-white);
}.loading-content .loading-txt-progress .loading-progress-bar.loaded {
  opacity: 0;
}.loading-content .loading-end {
  position: absolute;
  bottom: 1px;
  height: 1px;
  width: 0;
  left: 0;
  background: var(--g-color-base);
  transition: width 1.2s cubic-bezier(0.92, 0.46, 0.36, 0.98);
}.loading-content .loading-end.ended {
  width: 100%;
}.loading.hidden {
  -webkit-clip-path: inset(0 0 100% 0);
          clip-path: inset(0 0 100% 0);
  opacity: 0;
  visibility: hidden;
}.c-preloader__progress {
  color: var(--g-color-black);
  font-size: 12px;
  font-weight: bold;
  letter-spacing: 0.1em;
  font-family: MPLUS1;
}body.is-loading .js-cursor {
  display: none;
}.header {
  background: url(../img/hd_bg.webp) bottom center no-repeat;
  background-size: cover;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100px;
  z-index: 900;
  transition: all 0.4s ease-in-out;
  padding: 0 3%;
  display: flex;
  justify-content: center;
  align-items: center;
}.header.down {
  transform: translateY(-105%);
}.header-container {
  width: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header-logo {
  /*ロゴ非表示*/
  visibility: hidden;
  /*ロゴ表示*/
  /*  visibility: visible;*/
  transition: opacity 0.4s, visibility 0.4s;
}
@media screen and (max-width: 768px) {
  .header{
    background: none;
    height: auto;
  }
}
.header-logo img {
  width: 100px;
}.header-logo a {
  display: flex;
  align-items: center;
  justify-content: center;
}.header-logo span {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 1;
  color: var(--g-color-black);
}@media screen and (max-width: 1400px) {
  .header-logo span {
    font-size: 24rem;
  }
}
.header-link {
  width: 100%;
  visibility: visible;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
}@media screen and (max-width: 768px) {
  .header-link {
    flex-direction: column;
    align-items: start;
    gap: 7rem;
  }
}.header-link ul {
  display: flex;
  align-items: center;
  justify-content: right;
  flex-wrap: wrap;
  align-content: center;
}
@media screen and (max-width: 768px) {
  .header-link ul li {
    margin-left: 0;
  }
}@media screen and (max-width: 768px) {
  .header-link ul li:not(:last-child) {
    margin-right: 3rem;
  }
}.header-link ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  text-align: center;
  padding: 15px;
}.header-link ul li a span {
  font-family: "Kaisei Opti", serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 1;
  color: #B37165; /* 文字色 */
}
.header-link ul li a.current span{
  color: #F35789;
}
@media screen and (max-width: 1100px) {
  .header-link ul li a{
    padding: 10px;
  }
  .header-link ul li a span{
    font-size: 18px;
  }
}
.header-link ul li a span img{
  max-width: 50%;
}
@media screen and (max-width: 768px) {
  .header-link ul li a span {
    font-size: 14rem;
    text-shadow:
      -2px -2px 0 #fff,
      2px -2px 0 #fff,
      -2px  2px 0 #fff,
      2px  2px 0 #fff, /* ここまでが枠線 */
      0px  4px 2px rgba(223,194,180,1); /* 下側シャドウ */
    }
}.header-link ul li a:hover {
  transform: translateY(-5px);
  /*animation: bounce-up 0.4s ease;*/
}
@keyframes bounce-up {
  0%   { transform: translateY(0); }
  30%  { transform: translateY(-6px); }
  50%  { transform: translateY(-2px); }
  70%  { transform: translateY(-4px); }
  100% { transform: translateY(0); }
}/* ハンバーガーメニュー */
.header-hamburger {
  display: none;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  z-index: 1;
}.header-hamburger-menu,
.header-hamburger-close {
  display: block;
  width: 60px;
  height: auto;
}.header-hamburger-close {
  display: none;
}.header-hamburger.is-open .header-hamburger-menu {
  display: none;
}.header-hamburger.is-open .header-hamburger-close {
  display: block;
}@media screen and (max-width: 768px) {
  .header-hamburger {
    display: block;
    position: absolute;
    top: 5px;
    right: 5px;
  }
  .header-logo{
    opacity: 0;
    animation: fadeIn 2.5s ease forwards;
    animation-delay: 1s;
    animation-delay: 1.5s;
  }
  .lower-page .header-logo{
    animation-delay: 0s;
  }
  .header-hamburger.fade-in{
    animation-delay: 1.5s;
  }
  .lower-page .header-hamburger.fade-in{
    animation-delay: 0s;
  }
  .header-link {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: var(--g-color-white);
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 6vw;
    visibility: hidden;
    z-index: -1;
  }
  .header-link .header-logo{
    position: absolute;
    top: 3px; 
    left: 5px;
  }
  .header-link::before{
    content: "";
    width: 12.5%;
    height: 100%;
    background: url(../img/header-link_item01.webp) bottom center no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0;
    right: 0;
  }
  .header-link::after{
    content: "";
    width: 12.5%;
    height: 100%;
    background: url(../img/header-link_item02.webp) bottom center no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .header-link.is-open {
    animation: fadeIn .5s ease forwards;
    background: url(../img/header-link_bg.webp) top center no-repeat;
    background-size: contain;
    background-color: #fff;
    opacity: 1;
    visibility: visible;
  }
  .header-link.is-open.is-closing {
    animation: fadeOut .5s ease forwards;
  }
  .header-link.is-open .header-logo{
    /*ロゴ表示時には切り替え*/
    margin-top: 0;
    /*margin-top: 60rem;*/
    position: relative;
  }
  .header-link ul {
    flex-direction: column;
    align-items: center;
    gap: 1vw;
  }
  .header-link ul li.forsp {
    display: none;
  }
  .header-link ul li a span {
    font-size: max(7vw, 26px);
    font-weight: 700;
  }
}.cta-btn {
  position: fixed;
  right: 50px;
  bottom: 30px;
  z-index: 100;
}@media screen and (max-width: 1400px) {
  .cta-btn {
    right: 50rem;
    bottom: 30rem;
  }
}@media screen and (max-width: 768px) {
  .cta-btn {
    right: 16rem;
    bottom: 20rem;
  }
  body.front-page .cta-btn {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(36px);
  }
  body.front-page .cta-btn.is-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
    transition: transform 1.2s cubic-bezier(0.32, 0.1, 0, 1), opacity 1.2s cubic-bezier(0.32, 0.1, 0, 1), visibility 1.2s cubic-bezier(0.32, 0.1, 0, 1);
  }
}.cta-btn.is-hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}.cta-btn-container {
  position: relative;
}
.cta-btn-container.fade-in{
  animation-delay: 1.5s;
}
.cta-btn-container a {
  display: block;
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}.cta-btn-container a:hover {
  transform: scale(0.9) rotate(-15deg);
}.cta-btn-container a:nth-child(1) {
  position: absolute;
  top: -30px;
  right: -5px;
  z-index: 2;
  display: flex;
  justify-content: center;
  align-items: center;
  
}
.cta-btn-container a:nth-child(1) {
  width: 110px;
  height: 110px;
}
.cta-btn-container a:nth-child(1)::before{
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/btn_faq_gear.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  animation: rotateGear02 12s linear infinite;
  z-index: -1;
}
.cta-btn-container a:nth-child(1) img{
  width: 45%;
}
@media screen and (max-width: 1400px) {
  .cta-btn-container a:nth-child(1) {
    width: 120rem;
    height: 120rem;
  }
}
@media screen and (max-width: 768px) {
  .cta-btn-container a:nth-child(1) {
    width: 70rem;
    height: 70rem;
    top: -20rem;
    right: -10rem;
  }
}
.cta-btn-container a:nth-child(2) {
  z-index: 1;
  position: relative;
  margin-right: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.cta-btn-container a:nth-child(2)::before{
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/btn_tickets_gear.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  animation: rotateGear01 12s linear infinite;
  z-index: -1;
}
.cta-btn-container a:nth-child(2) {
  width: 220px;
  height: 220px;
}
.cta-btn-container a:nth-child(2) img{
  width: 55%;
}
@media screen and (max-width: 1400px) {
  .cta-btn-container a:nth-child(2) {
    width: 200rem;
    height: 200rem;
  }
}
@media screen and (max-width: 768px) {
  .cta-btn-container a:nth-child(2){
    padding-top: 0;
    padding-right: 0;
  }
  .cta-btn-container a:nth-child(2) {
    width: 130rem;
    height: 130rem;
    margin-right: 10rem;
  }
}
/* 回転アニメーション */
@keyframes rotateGear01 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes rotateGear02 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(-360deg);
  }
}
.footer {
  z-index: 8;
  position: relative;
}.footer-main {
  padding: 50px 0 30px;
  /*background: url(../img/footer-back.webp);*/
  background: #fff;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
}@media screen and (max-width: 768px) {
  .footer-main {
    padding: 41rem 0 90rem;
  }
}.footer-main > p {
  position: relative;
  z-index: 2;
  font-weight: 700;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
  color: var(--g-color-white);
  margin-top: 30px;
}@media screen and (max-width: 768px) {
  .footer-main > p {
    font-size: 14rem;
    margin-top: 30rem;
  }
}.footer-share {
  position: relative;
  z-index: 2;
  margin-bottom: 5rem;
  padding-bottom: 5rem;
}
.footer-share::after{
  content: "";
  width: 70%;
  height: 2px;
  border-bottom: 2px dashed #D0A996;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.footer-share-ttl {
  text-align: center;
  margin-bottom: 3rem;
}
.footer-share-ttl p {
  font-family: "Kaisei Opti", serif;
  font-weight: bold;
  font-size: 60px;
  line-height: 1;
  text-align: center;
  color: #BD9683;
  position: relative;
  padding: 0 100px;
  display: inline-block;
}
.footer-share-ttl p::before{
  content: "";
  width: 39px;
  height: 54px;
  background: url(../img/ft_ttl_item.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.footer-share-ttl p::after{
  content: "";
  width: 39px;
  height: 54px;
  background: url(../img/ft_ttl_item.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 1400px) {
  .footer-share-ttl {
    margin-bottom: 26px;
    margin-bottom: 30rem;
  }
  .footer-share {
    margin-bottom: 40rem;
    padding-bottom: 40rem;
  }
}
@media screen and (max-width: 768px) {
  .footer-share {
    margin-bottom: 25rem;
    padding-bottom: 25rem;
  }
  .footer-share-ttl {
    margin-bottom: 20rem;
  }
  .footer-share-ttl p {
    font-size: 28px;
    padding: 0 25px;
  }
  .footer-share-ttl p::before{
    content: "";
    width: 11px;
    height: 15px;
    background: url(../img/ft_ttl_item.webp) center no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
  .footer-share-ttl p::after{
    content: "";
    width: 11px;
    height: 15px;
    background: url(../img/ft_ttl_item.webp) center no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
  }
}
.footer-official-ttl {
  text-align: center;
  margin-bottom: 3rem;
}
.footer-official-ttl p {
  font-family: "Kaisei Opti", serif;
  font-weight: bold;
  font-size: 50px;
  line-height: 1;
  text-align: center;
  color: #BD9683;
  position: relative;
  padding: 0 100px;
  display: inline-block;
}
.footer-official-ttl p::before{
  content: "";
  width: 39px;
  height: 54px;
  background: url(../img/ft_ttl_item.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.footer-official-ttl p::after{
  content: "";
  width: 39px;
  height: 54px;
  background: url(../img/ft_ttl_item.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 1400px) {
  .footer-official-ttl {
    margin-bottom: 30rem;
  }
  .footer-official-ttl p {
    font-size: 50px;
  }
}
@media screen and (max-width: 768px) {
  .footer-official-ttl p {
    font-size: 18rem;
    padding: 0 25px;
  }
  .footer-official-ttl p::before{
    content: "";
    width: 11px;
    height: 15px;
    background: url(../img/ft_ttl_item.webp) center no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }
  .footer-official-ttl p::after{
    content: "";
    width: 11px;
    height: 15px;
    background: url(../img/ft_ttl_item.webp) center no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
  }
}.footer-share-list ul {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
}.footer-share-list ul li a img {
  width: 60px;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}@media screen and (max-width: 768px) {
  .footer-share-list ul li a img {
    width: 48rem;
  }
}.footer-share-list ul li a:hover img {
  transform: scale(0.9);
}
.footer-official-sns{
  margin-bottom: 6rem;
}
.footer-official-sns ul {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
}.footer-official-sns ul li a img {
  width: 60px;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}
@media screen and (max-width: 1400px) {
  .footer-official-sns{
    margin-bottom: 70rem;
  }
}
@media screen and (max-width: 768px) {
  .footer-official-sns{
    margin-bottom: 35rem;
  }
  .footer-official-sns ul li a img {
    width: 48rem;
  }
}.footer-official-sns ul li a:hover img {
  transform: scale(0.9);
}
.footer-img {
  position: relative;
  z-index: 2;
  text-align: center;
  margin-bottom: 12px;
}@media screen and (max-width: 768px) {
  .footer-img {
    margin-bottom: 12rem;
  }
}.footer-img img {
  width: 300px;
}@media screen and (max-width: 768px) {
  .footer-img img {
    width: 145rem;
  }
}.footer-copyright {
  text-align: center;
  padding: 20px 0;
  background: #fff;
}@media screen and (max-width: 768px) {
  .footer-copyright {
    padding: 15rem 0;
  }
}.footer-copyright p {
  font-weight: 400;
  font-size: 14px;
  line-height: 1;
  color: #BD9683;
}@media screen and (max-width: 768px) {
  .footer-copyright p {
    font-size: 14rem;
  }
}.news-single-date p {
  margin-bottom: 8px;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 100%;
  color: var(--g-color-black);
}@media screen and (max-width: 1400px) {
  .news-single-date p {
    margin-bottom: 8rem;
    font-size: 18rem;
  }
}.news-single-ttl {
  padding-bottom: 27px;
  margin-bottom: 40px;
  border-bottom: 3px solid;
  border-image-source: linear-gradient(90deg, #ec82af 0%, #eb8fb8 50%, #d296c2 70%, #d288c2 85%, #e27fc1 100%);
  border-image-slice: 1;
}@media screen and (max-width: 1400px) {
  .news-single-ttl {
    padding-bottom: 27rem;
    margin-bottom: 40rem;
  }
}@media screen and (max-width: 768px) {
  .news-single-ttl {
    padding-bottom: 20rem;
  }
}.news-single-ttl p {
  font-weight: 700;
  font-size: 30px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: var(--g-color-black);
}@media screen and (max-width: 1400px) {
  .news-single-ttl p {
    font-size: 30rem;
  }
}@media screen and (max-width: 768px) {
  .news-single-ttl p {
    font-size: 20rem;
  }
}.news-single-img {
  margin-bottom: 24px;
  width: 100%;
  overflow: hidden;
}@media screen and (max-width: 1400px) {
  .news-single-img {
    margin-bottom: 24rem;
  }
}@media screen and (max-width: 768px) {
  .news-single-img {
  }
}.news-single-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}.news-single-content {
  color: var(--g-color-black);
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 500;
}@media screen and (max-width: 1400px) {
  .news-single-content {
    font-size: 16rem;
  }
}.news-single-content * {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  color: inherit;
}@media screen and (max-width: 1400px) {
  .news-single-content * {
    font-size: 16rem;
  }
}.news-single-content *:not(:last-child) {
  margin-bottom: 40px;
}@media screen and (max-width: 1400px) {
  .news-single-content *:not(:last-child) {
    margin-bottom: 40rem;
  }
}.news-single-content h2 {
  padding: 10px 24px;
  color: var(--g-color-black);
  font-weight: 700;
  font-size: 24px;
  line-height: 1.4;
  background: linear-gradient(90deg, #ec82af 0%, #eb8fb8 50%, #d296c2 70%, #d288c2 85%, #e27fc1 100%);
}@media screen and (max-width: 1400px) {
  .news-single-content h2 {
    margin-bottom: 24rem !important;
    padding: 10rem 24rem;
    font-size: 24rem;
  }
}@media screen and (max-width: 768px) {
  .news-single-content h2 {
    padding: 8rem 11rem;
    font-size: 22rem;
  }
}.news-single-content h3 {
  padding-bottom: 18px;
  border-bottom: 2px solid #D5D1D1;
  font-weight: 700;
  font-size: 20px;
}@media screen and (max-width: 1400px) {
  .news-single-content h3 {
    font-size: 20rem;
    padding-bottom: 18rem;
  }
}@media screen and (max-width: 768px) {
  .news-single-content h3 {
    padding-bottom: 12rem;
  }
}.news-single-content h4 {
  font-weight: 700;
  font-size: 18px;
  position: relative;
  padding-left: 27px;
  margin-bottom: 24px !important;
}@media screen and (max-width: 1400px) {
  .news-single-content h4 {
    margin-bottom: 24rem !important;
    padding-left: 27rem;
    font-size: 18rem;
  }
}.news-single-content h4::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background: url(../img/txt-deco.webp);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}.news-single-content strong {
  font-weight: 700;
}@media screen and (max-width: 1400px) {
  .news-single-content h4::before {
    width: 20rem;
    height: 20rem;
  }
}/* 一覧に戻るボタン */
.news-single-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 60px;
}@media screen and (max-width: 1400px) {
  .news-single-btn {
    margin-top: 60rem;
  }
}@media screen and (max-width: 768px) {
  .news-single-btn {
    margin-top: 40rem;
  }
}.news-single-btn a {
  background: linear-gradient(90deg, #ec82af 0%, #eb8fb8 50%, #d296c2 70%, #d288c2 85%, #e27fc1 100%);
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  border-radius: 100px;
  padding: 18px 80px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}@media screen and (max-width: 1400px) {
  .news-single-btn a {
    padding: 18rem 80rem;
  }
}@media screen and (max-width: 768px) {
  .news-single-btn a {
    padding: 15rem 60rem;
  }
}.news-single-btn a span {
  color: var(--g-color-white);
  font-weight: 700;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
}@media screen and (max-width: 1400px) {
  .news-single-btn a span {
    font-size: 16rem;
  }
}@media screen and (max-width: 768px) {
  .news-single-btn a span {
    font-size: 14rem;
  }
}.news-single-btn a:hover {
  transform: scale(0.95);
}.sec-fv {
  z-index: 7;
  background: #F4C1D8;
  overflow: unset;
  -webkit-touch-callout: none;
  user-select: none;
}.sec-fv img {
  pointer-events: none;
}.sec-fv-container {
  padding: 100px 0 4vw;
  position: relative;
  height: 100%;
}@media screen and (max-width: 768px) {
  .sec-fv-container {
    padding: 55rem 0 0;
  }
}@media screen and (max-width: 765px) {
  .sec-fv{
    padding-bottom: 9vw;
  }
  .sec-fv-container {
    padding: 0;
  }
}.sec-fv-main {
  padding: 0;
  position: relative;
  overflow: hidden;
  height: 100%;
}@media screen and (max-width: 768px) {
  .sec-fv-main {
    padding: 0;
  }
}.sec-fv-main p {
  background: linear-gradient(122.91deg, #A2DF57 0%, #1FFF96 20%, #0087E3 45%, #3DFEE4 72%, #179700 100%);
  color: transparent;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  display: inline-block;
  font-family: "Montserrat", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 1;
  position: absolute;
  top: 50%;
  writing-mode: vertical-lr;
}@media screen and (max-width: 768px) {
  .sec-fv-main p {
    display: none;
  }
}.sec-fv-main p:nth-child(1) {
  transform: translateY(-50%) rotate(180deg);
  left: 0;
}.sec-fv-main p:nth-child(2) {
  transform: translateY(-50%);
  right: 0;
}.sec-fv-main-img {
  width: 100%;
  height: auto;
  position: relative;
}@media screen and (max-width: 1400px) {
  .sec-fv-main-img {
    height: auto;
  }
}@media screen and (max-width: 768px) {
  .sec-fv-main-img {
    height: auto;
  }
}.sec-fv-main img {
  width: 100%;
  height: auto;
  object-fit: contain;
  -o-object-fit: contain;
  object-position: center;
}
.sec-fv-main-img .hero_item{
  position: absolute;
  width: 100%;
  left: 50%;
  bottom: 0;
  opacity:0;
  transform: translate(-50%,50px);
  animation: hero_fadeInUp 2s ease forwards;
  animation-delay: 2s;
}
.fade-in {
  opacity: 0;
  animation: fadeIn 2.5s ease forwards;
  animation-delay: 1s;
}
@keyframes hero_fadeInUp{
  to{
    opacity:1;
    transform: translate(-50%,0);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.sec-fv-slide {
  background: var(--g-color-black);
  position: relative;
}
.sec-ttl-block{
  width: 65%;
  max-width: 650px;
  margin: 0 auto 80px;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .sec-ttl-block{
    width: 72%;
    margin: 0 auto 30rem;
  }
  .sec-fv-main-img .hero_item{
    bottom: -3%;
  }
}
.bg-wrapper {
  position: relative;
}.bg-wrapper > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
}.bg-wrapper--tokyo {
  clip-path: inset(0);
}.bg-wrapper--tokyo > img {
  position: fixed;
  height: 100vh;
}
.bg-wrapper--creator{
  background-color: #FFECEC;
  position: relative;
  overflow-y: clip;
}
.bg-wrapper.bg-wrapper--creator > img{
  mix-blend-mode: lighten;
  height: auto;
  position: absolute;
  will-change: transform;
}
.bg-wrapper--creator .bg_item{
  overflow: unset;
  overflow-x: clip;
  z-index: 5;
  position: relative;
  background: url(../img/bg01.webp) center repeat;
  background-size: 36px;
  padding-bottom: 100px;
  background-attachment: fixed;
}
/*
.bg-wrapper--creator::after{
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/bg01.webp) center repeat;
  background-size: 36px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
*/
.bg-wrapper--creator .bg02{
  mix-blend-mode: lighten;
}
.bg-wrapper--creator > img {
  object-position: center top;
}.bg-wrapper > section {
  position: relative;
  z-index: 2;
}/* グループ間余白 */
.bg-wrapper,
.sec-movie,
.sec-sponsor,
.sec-links {
  margin-top: 0;
}
.bg-wrapper--tokyo{
  margin-top: -5px;
  padding-top: 5px;
}
/* 同一wrapper内の隣接セクション間余白を詰める */
.bg-wrapper > section + section {
  padding-top: 0;
}.sec-schedule-container {
  position: relative;
  z-index: 2;
}
.sec-schedule__elem:not(:last-child) {  
  position: relative;
  margin-bottom: 65px;
  padding-bottom: 65px;
}
.sec-schedule__elem:not(:last-child)::after{
  content: "";
  width: 60%;
  height: 14px;
  background: url(../img/union.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 1400px) {
  .sec-schedule__elem:not(:last-child) {
    margin-bottom: 77rem;
  }
}
@media screen and (max-width: 768px) {
  .sec-schedule__elem:not(:last-child) {
    padding-bottom: 40rem;
    margin-bottom: 40rem;
  }
  .sec-schedule__elem:not(:last-child)::after{
    content: "";
    width: 60%;
    height: 6px;
    background: url(../img/union.webp) center no-repeat;
    background-size: contain;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
}.sec-schedule__elem-ttl__wrap {
  overflow: hidden;
}.sec-schedule__elem-ttl {
  text-align: center;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .sec-schedule__elem-ttl {
    margin-bottom: 5rem;
  }
}.sec-schedule__elem-ttl img {
  width: auto;
  height: 164px;
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-ttl img {
    height: 164rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-ttl img {
    height: 95rem;
  }
}

.sec-schedule__elem-day{
  width: 80%;
  max-width: 650px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 15px 4%;
}
.sec-schedule__elem-day .sec-schedule__elem-day_box{
  width: 48%;
  line-height: 1.2;
  text-align: center;
}
.sec-schedule__elem-day .sec-schedule__elem-day_box .date{
  white-space: nowrap;
}
.sec-schedule__elem-day .sec-schedule__elem-day_box .date .year{
  font-size: 34px;
  font-family: "Kaisei Opti", serif;
  color: #F5578B;
  font-weight: bold;
}
.sec-schedule__elem-day .sec-schedule__elem-day_box .date .day{
  font-size: 68px;
  font-family: "Kaisei Opti", serif;
  color: #F5578B;
  font-weight: bold;
}
.sec-schedule__elem-day .sec-schedule__elem-day_box .date .week{
  font-size: 30px;
  font-family: "Kaisei Opti", serif;
  color: #F5578B;
  font-weight: bold;
}
.sec-schedule__elem-day .sec-schedule__elem-day_box .info{
  font-size: 26px;
  color: #4F2821;
  font-weight: 500;
  margin-top: 10px;
}
@media screen and (max-width: 1400px) {
  .sec-schedule__elem-day{
    max-width: 600px;
  }
  .sec-schedule__elem-day .sec-schedule__elem-day_box .date .year{
    font-size: 28px;
  }
  .sec-schedule__elem-day .sec-schedule__elem-day_box .date .day{
    font-size: 52px;
  }
  .sec-schedule__elem-day .sec-schedule__elem-day_box .date .week{
    font-size: 24px;
  }
  .sec-schedule__elem-day .sec-schedule__elem-day_box .info{
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  .sec-schedule__elem-day{
    width: 100%;
  }
  .sec-schedule__elem-day .sec-schedule__elem-day_box{
    width: 48%;
    line-height: 1.2;
  }
  .sec-schedule__elem-day .sec-schedule__elem-day_box .date .year{
    font-size: 18rem;
    font-family: "Kaisei Opti", serif;
    color: #F5578B;
    font-weight: bold;
  }
  .sec-schedule__elem-day .sec-schedule__elem-day_box .date .day{
    font-size: 36rem;
    font-family: "Kaisei Opti", serif;
    color: #F5578B;
    font-weight: bold;
  }
  .sec-schedule__elem-day .sec-schedule__elem-day_box .date .week{
    font-size: 16rem;
    font-family: "Kaisei Opti", serif;
    color: #F5578B;
    font-weight: bold;
  }
  .sec-schedule__elem-day .sec-schedule__elem-day_box .info{
    font-size: 14rem;
    color: #4F2821;
    font-weight: 500;
    margin-top: 5rem;
  }
}
.sec-schedule__elem-guide{
  width: 80%;
  max-width: 510px;
  margin: 30px auto 0;
}

.sec-schedule__elem-guide .guide_ttl{
  font-size: 20px;
  color: #fff;
  background: url(../img/guide_ttl_bg.webp) center no-repeat;
  background-size: cover;
  cursor:pointer;
  position:relative;  padding: 3px 40px;
  text-align: center;
  letter-spacing: 4px;
}
/* 横線 */
.sec-schedule__elem-guide .guide_ttl::before,
.sec-schedule__elem-guide .guide_ttl::after{
  content:"";
  position:absolute;
  right:10px;
  top:50%;
  width:18px;
  height:2px;
  background:#fff;
  transform:translateY(-50%);
  transition:0.3s;
}

/* 縦線（＋の縦棒） */
.sec-schedule__elem-guide .guide_ttl::after{
  transform:translateY(-50%) rotate(90deg);
}

/* 開いている時 → － */
.sec-schedule__elem-guide .guide_ttl.is-open::after{
  transform:translateY(-50%) rotate(0deg);
  opacity:0;
}
.sec-schedule__elem-guide .guide_box {
  display: none;
  background: #fff;
  border: 2px solid #BD9683;
  border-top: none;
  padding: 25px;
  overflow: hidden;
  height: auto;
}
.sec-schedule__elem-guide .guide_box .address{
  font-size: 16px;
  text-align: center;
  color: #4F2821;
}
.sec-schedule__elem-guide .guide_box a{
  display: block;
  font-size: 20px;
  font-weight: 500;
  color: #F5578B;
  font-family: "Kaisei Opti", serif;
  text-align: center;
}
.sec-schedule__elem-guide .guide_box a:hover{
  opacity: .7;
}
.sec-schedule__elem-guide .guide_box a .map_icon{
  position: relative;
  padding: 0 20px;
}
.sec-schedule__elem-guide .guide_box a .map_icon::before{
  content: "";
  width: 16px;
  height: 19px;
  background: url(../img/map_icon.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.guide_box.is-close {
  display: none;
}
@media screen and (max-width: 768px) {
  .sec-schedule__elem-guide{
    width: 100%;
    margin: 20px auto 0;
  }
  .sec-schedule__elem-guide .guide_ttl{
    font-size: 16px;
  }
  .sec-schedule__elem-guide .guide_box .address{
    font-size: 14px;
    line-height: 1.5;
    margin-bottom: 5px;
  }
  .sec-schedule__elem-guide .guide_box a{
    font-size: 18px;
  }
  .sec-schedule__elem-guide .guide_box{
    padding: 20px 15px;
  }
}
.sec-schedule__elem-main {
  display: flex;
  align-items: start;
  justify-content: center;
  gap: 12px;
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-main {
    gap: 12rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-main {
    padding: 0 6rem;
    flex-direction: column;
    gap: 36rem;
  }
}.sec-schedule__elem-item {
  width: 485px;
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-item {
    width: 485rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-item {
    width: 100%;
  }
}.sec-schedule__elem-item-date {
  position: relative;
  margin-bottom: 14px;
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-item-date {
    margin-bottom: 14rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-item-date {
    margin-bottom: 13rem;
  }
}.sec-schedule__elem-item-date p {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 30px;
  line-height: 1;
  text-align: center;
  color: var(--g-color-white);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-item-date p {
    font-size: 30rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-item-date p {
    font-size: 18rem;
  }
}@media screen and (max-width: 765px) {
  .sec-schedule__elem-item-date p {
    font-size: 24rem;
  }
}.sec-schedule__elem-item-date img {
  width: 485px;
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-item-date img {
    width: 485rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-item-date img {
    width: 100%;
  }
}.sec-schedule__elem-item-ttl {
  margin-bottom: 17px;
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-item-ttl {
    margin-bottom: 17rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-item-ttl {
    margin-bottom: 12rem;
  }
}.sec-schedule__elem-item-ttl p {
  font-weight: 900;
  font-size: 38px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  color: var(--g-color-black);
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-item-ttl p {
    font-size: 38rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-item-ttl p {
    font-size: 32rem;
  }
}.sec-schedule__elem-item-time {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-item-time {
    gap: 18rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-item-time {
    gap: 14rem;
  }
}.sec-schedule__elem-item-time__elem {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-item-time__elem {
    gap: 7rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-item-time__elem {
    gap: 5rem;
  }
}.sec-schedule__elem-item-time__elem-ico {
  background: var(--g-color-black);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 3px 18px;
  transform: skewX(-12deg);
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-item-time__elem-ico {
    padding: 5rem 18rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-item-time__elem-ico {
    padding: 2rem 14rem;
  }
}.sec-schedule__elem-item-time__elem-ico span {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: 0.25em;
  text-align: center;
  color: var(--g-color-white);
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-item-time__elem-ico span {
    font-size: 14rem;
  }
}.sec-schedule__elem-item-time__elem p {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 22px;
  line-height: 1;
  text-align: center;
  color: var(--g-color-black);
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-item-time__elem p {
    font-size: 22rem;
  }
}.sec-schedule-container,
.sec-live .container,
.sec-live-ttl,
.sec-live-main,
.sec-movie-container,
.sec-sponsor .container,
.sec-sponsor-ttl {
  position: relative;
  z-index: 100;
}.l-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 1 !important;
  opacity: 0.1;
  pointer-events: none;
}.l-bg__main {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1 !important;
}/* コンテンツを前面に表示 */
.sec-schedule-container,
.sec-live .container,
.sec-movie-container,
.sec-sponsor .container {
  position: relative;
  z-index: 10 !important;
}
.line_block{
  width: 100%;
  height: 38px;
  background: #E7E7F4;
  border-top: 4px solid #BD9683;
  border-bottom: 4px solid #BD9683;
  position: relative;
  z-index: 5;
}
.sec-news {
  position: relative;
  z-index: 12;
  padding: 80px 0;
  background: #fff;
}@media screen and (max-width: 1400px) {
  .sec-news {
    padding: 80rem 0;
  }
}@media screen and (max-width: 768px) {
  .line_block{
    height: 10px;
    border-top: 1px solid #BD9683;
    border-bottom: 1px solid #BD9683;
  }
  .sec-news {
    padding: 50rem 0;
  }
}.sec-news .l-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 1;
  opacity: 0.1;
}.sec-news .l-bg__main {
  width: 100%;
  height: 100%;
  position: relative;
}.sec-news .l-bg__main canvas {
  width: 100% !important;
  height: 100% !important;
}.sec-news-container {
  position: relative;
  z-index: 7;
  max-width: 1000px;
  padding: 0 50px;
  margin: auto;
  width: 100%;
}@media screen and (max-width: 1400px) {
  .sec-news-container {
    padding: 0 50rem;
  }
}@media screen and (max-width: 768px) {
  .sec-news-container {
    padding: 0 28rem;
  }
}.sec-news-ttl {
  margin-bottom: 38px;
}@media screen and (max-width: 1400px) {
  .sec-news-ttl {
    margin-bottom: 38rem;
  }
}@media screen and (max-width: 768px) {
  .sec-news-ttl {
    margin-bottom: 20rem;
  }
}.sec-news-img {
  width: 100%;
  height: 471px;
}@media screen and (max-width: 1400px) {
  .sec-news-img {
    height: 471rem;
  }
}@media screen and (max-width: 768px) {
  .sec-news-img {
    height: 197rem;
  }
}.sec-news-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}.sec-news-list {
  margin-bottom: 57px;
}@media screen and (max-width: 1400px) {
  .sec-news-list {
    margin-bottom: 57rem;
  }
}@media screen and (max-width: 768px) {
  .sec-news-list {
    margin-bottom: 40rem;
  }
}.sec-news__elem a {
  display: flex;
  align-items: center;
  justify-content: left;
  padding: 34px 0;
  border-bottom: 2px dashed #D0A996;
}@media screen and (max-width: 1400px) {
  .sec-news__elem a {
    padding: 34rem 0;
  }
}@media screen and (max-width: 768px) {
  .sec-news__elem a {
    padding: 28rem 0;
    align-items: start;
    flex-direction: column;
  }
}.sec-news__elem-date {
  margin-right: 28px;
}@media screen and (max-width: 1400px) {
  .sec-news__elem-date {
    margin-right: 28rem;
  }
}@media screen and (max-width: 768px) {
  .sec-news__elem-date {
    margin-bottom: 7rem;
    margin-right: 0;
  }
}.sec-news__elem-date p {
  font-weight: 500;
  font-size: 18px;
  line-height: 1;
  color: #CFAE9E;
}@media screen and (max-width: 1400px) {
  .sec-news__elem-date p {
    font-size: 18px;
  }
}@media screen and (max-width: 768px) {
  .sec-news__elem-date p {
    font-size: 20px;
  }
}.sec-news__elem-ttl p {
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #4F2821;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: clip;
}@media screen and (max-width: 1400px) {
  .sec-news__elem-ttl p {
    font-size: 16rem;
  }
}@media screen and (max-width: 768px) {
  .sec-news__elem-ttl p {
    -webkit-line-clamp: 2;
    font-size: 14px;
    line-height: 1.5;
  }
}.sec-live {
  z-index: 2;
  padding: 80px 0;
  }@media screen and (max-width: 1400px) {
    .sec-live {
      padding: 80rem 0;
    }
  }@media screen and (max-width: 768px) {
    .sec-live {
      padding: 50rem 0;
    }
  }.sec-live-ttl {
  margin-bottom: 31px;
}@media screen and (max-width: 1400px) {
  .sec-live-ttl {
    margin-bottom: 31rem;
  }
}@media screen and (max-width: 768px) {
  .sec-live-ttl {
    margin-bottom: 20rem;
  }
}@media screen and (max-width: 768px) {
  .sec-live-ttl .sec-ttl h2 img {
    width: 100%;
    height: auto;
  }
}.sec-live-main {
  max-width: 900px;
  height: 231px;
  width: 100%;
  margin: auto;
  position: relative;
}@media screen and (max-width: 1400px) {
  .sec-live-main {
    max-width: 900rem;
    height: 231rem;
  }
}@media screen and (max-width: 768px) {
  .sec-live-main {
    max-width: 332rem;
    height: 114rem;
  }
}.sec-live-main::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
}.sec-live-main img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}.outline-1::after {
    background: linear-gradient(122.91deg, #F39BBE 0%, #EB1A71 20%, #F3A2C2 45%, #ED3984 72%, #FF5FAA 100%);
}.outline-2::after {
    background: linear-gradient(122.91deg, #BC8E4E 0%, #1E1E1F 50%, #BC8E4E 100%);
}.outline-3::after {
    background: linear-gradient(122.91deg, #FF64A0 0%, #FFD700 20%, #64E600 45%, #00AADC 72%, #7850FF 100%);
}.outline-4::after {
    background: linear-gradient(122.91deg, #D1DBE0 0%, #C1CBF4 20%, #FFF796 45%, #D1DBE0 72%, #C1CBF4 100%);
}.outline-1 {
    border-image-source: linear-gradient(122.91deg, #F39BBE 0%, #EB1A71 20%, #F3A2C2 45%, #ED3984 72%, #FF5FAA 100%);
}.outline-2 {
    border-image-source: linear-gradient(122.91deg, #BC8E4E 0%, #1E1E1F 50%, #BC8E4E 100%);
}.outline-3 {
    border-image-source: linear-gradient(122.91deg, #FF64A0 0%, #FFD700 20%, #64E600 45%, #00AADC 72%, #7850FF 100%);
}.outline-4 {
    border-image-source: linear-gradient(122.91deg, #D1DBE0 0%, #C1CBF4 20%, #FFF796 45%, #D1DBE0 72%, #C1CBF4 100%);
}.sec-movie > img {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  object-fit: cover;
  z-index: 1;
}.sec-movie-container {
  position: relative;
  z-index: 2;
}.sec-movie-ttl {
  margin-bottom: 40px;
}@media screen and (max-width: 1400px) {
  .sec-movie-ttl {
    margin-bottom: 40rem;
  }
}.sec-movie-main {
  position: relative;
}.sec-movie__elem {
  width: 1000px;
  height: 563px;
  cursor: pointer;
}@media screen and (max-width: 1400px) {
  .sec-movie__elem {
    width: 1000rem;
    height: 563rem;
  }
}@media screen and (max-width: 768px) {
  .sec-movie__elem {
    width: 312rem;
    height: 175rem;
  }
}.sec-movie__elem-container {
  width: 100%;
  height: 100%;
  border: 5px solid;
  border-image-source: linear-gradient(122.91deg, #A2DF57 0%, #1FFF96 20%, #0087E3 45%, #3DFEE4 72%, #179700 100%);
  border-image-slice: 1;
  transform: scale(0.85);
  position: relative;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}.sec-movie__elem-container::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5019607843);
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  width: 100%;
  height: 100%;
  z-index: 1;
}.sec-movie__elem img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}.sec-movie__elem iframe {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 2;
}.sec-movie__elem.swiper-slide-active .sec-movie__elem-container {
  transform: scale(1);
}.sec-movie__elem.swiper-slide-active .sec-movie__elem-container::after {
  opacity: 0;
  pointer-events: none;
}.sec-movie .swiper-controller {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  max-width: 1068px;
  width: 100%;
  visibility: hidden;
  z-index: 3;
  pointer-events: none;
}@media screen and (max-width: 1400px) {
  .sec-movie .swiper-controller {
    max-width: 1068rem;
  }
}@media screen and (max-width: 768px) {
  .sec-movie .swiper-controller {
    max-width: 281rem;
    transform: translate(-50%, 80%);
    top: 100%;
  }
}.sec-movie .swiper-controller .swiper-button-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}.sec-movie .swiper-controller .swiper-button {
  position: unset;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--g-color-black);
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  width: 66px;
  height: 66px;
  margin: 0;
  visibility: visible;
  border-radius: 4px;
  pointer-events: auto;
}@media screen and (max-width: 768px) {
  .sec-movie .swiper-controller .swiper-button {
    width: 42rem;
    height: 42rem;
  }
}.sec-movie .swiper-controller .swiper-button::before, .sec-movie .swiper-controller .swiper-button::after {
  display: none;
}.sec-movie .swiper-controller .swiper-button svg {
  width: 18px;
  height: auto;
}@media screen and (max-width: 768px) {
  .sec-movie .swiper-controller .swiper-button svg {
    width: 12rem;
  }
}.sec-movie .swiper-controller .swiper-button:hover {
  transform: scale(0.95);
}.sec-movie .swiper-pagination {
  bottom: -54px;
}@media screen and (max-width: 1400px) {
  .sec-movie .swiper-pagination {
    bottom: -54rem;
  }
}@media screen and (max-width: 768px) {
  .sec-movie .swiper-pagination {
    bottom: -55rem;
  }
}.sec-movie .swiper-pagination .swiper-pagination-bullet {
  width: 30px;
  height: 2px;
  margin: 0 5px;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  position: relative;
  opacity: 1;
  border-radius: 0;
  background: rgba(0, 0, 0, 0.2);
}@media screen and (max-width: 768px) {
  .sec-movie .swiper-pagination .swiper-pagination-bullet {
    width: 18rem;
    margin: 0 2rem;
  }
}.sec-movie .swiper-pagination .swiper-pagination-bullet::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  background: linear-gradient(90deg, #A2DF57 1.01%, #1FFF96 40.87%, #0087E3 90.7%, #3DFEE4 144.52%, #179700 200.34%);
  opacity: 0;
}.sec-movie .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 74px;
}@media screen and (max-width: 768px) {
  .sec-movie .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 42rem;
  }
}.sec-movie .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active::after {
  opacity: 1;
}.sec-sponsor {
  z-index: 5;
  padding: 80px 0;
}@media screen and (max-width: 1400px) {
  .sec-sponsor {
    padding: 80rem 0;
  }
}@media screen and (max-width: 768px) {
  .sec-sponsor {
    padding: 50rem 0;
  }
}.sec-sponsor::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, #fff 50%, transparent);
  z-index: -1;
}.sec-sponsor-ttl {
  margin-bottom: 51px;
}@media screen and (max-width: 1400px) {
  .sec-sponsor-ttl {
    margin-bottom: 51rem;
  }
}@media screen and (max-width: 768px) {
  .sec-sponsor-ttl {
    margin-bottom: 24rem;
  }
}.sec-sponsor-main {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 1200px;
  width: 100%;
  margin: auto;
  gap: 20px;
}@media screen and (max-width: 1400px) {
  .sec-sponsor-main {
    max-width: 1200rem;
    gap: 20rem;
  }
}@media screen and (max-width: 768px) {
  .sec-sponsor-main {
    max-width: 334rem;
    gap: 14rem;
    flex-wrap: wrap;
  }
}.sec-sponsor__elem {
  width: 100%;
  height: 90px;
  box-shadow: 0px 0px 17px rgba(220, 191, 255, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
}.sec-sponsor__elem a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}.sec-sponsor__elem img {
  max-width: 80%;
  max-height: 70%;
  object-fit: contain;
}@media screen and (max-width: 1400px) {
  .sec-sponsor__elem {
    height: 90rem;
  }
}@media screen and (max-width: 768px) {
  .sec-sponsor__elem {
    width: 160rem;
    height: 64rem;
  }
}.sec-links {
  z-index: 8;
  background: url(../img/links-bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding: 80px 0;
}@media screen and (max-width: 1400px) {
  .sec-links {
    padding: 80rem 0;
  }
}@media screen and (max-width: 768px) {
  .sec-links {
    padding: 50rem 0;
  }
}.sec-links-container {
  max-width: 1122px;
  width: 100%;
  margin: auto;
}@media screen and (max-width: 1400px) {
  .sec-links-container {
    max-width: 1122rem;
  }
}@media screen and (max-width: 768px) {
  .sec-links-container {
    max-width: 100%;
    padding: 0 26rem;
  }
}.sec-links-top {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-bottom: 20px;
  gap: 20px;
}@media screen and (max-width: 1400px) {
  .sec-links-top {
    gap: 20rem;
    margin-bottom: 20rem;
  }
}@media screen and (max-width: 768px) {
  .sec-links-top {
    grid-template-columns: repeat(1, 1fr);
    gap: 8rem;
    margin-bottom: 8rem;
  }
}.sec-links-btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 132px;
  max-width: 100%;
  width: 100%;
  background: var(--g-color-white);
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  transform: skewX(-13deg);
}@media screen and (max-width: 1400px) {
  .sec-links-btn a {
    height: 132rem;
  }
}@media screen and (max-width: 768px) {
  .sec-links-btn a {
    transform: skewX(-7deg);
    height: 109rem;
  }
}.sec-links-btn a p {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 44px;
  line-height: 1.4;
  text-align: center;
  display: inline-block;
  background: linear-gradient(124.6deg, #A2DF57 13.01%, #1FFF96 30.47%, #0087E3 52.31%, #3DFEE4 75.89%, #179700 100.34%);
  color: transparent;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}@media screen and (max-width: 1400px) {
  .sec-links-btn a p {
    font-size: 44rem;
  }
}@media screen and (max-width: 768px) {
  .sec-links-btn a p {
    font-size: 34rem;
  }
}.sec-links-btn a span {
  color: var(--g-color-black);
  font-weight: 700;
  font-size: 15px;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
}@media screen and (max-width: 768px) {
  .sec-links-btn a span {
    font-size: 14rem;
  }
}.sec-links-btn a:hover {
  transform: skewX(-13deg) scale(0.95);
}.news-main {
  padding: 0 50px;
  margin-bottom: 120px;
}@media screen and (max-width: 1400px) {
  .news-main {
    padding: 0 50rem;
    margin-bottom: 120rem;
  }
}@media screen and (max-width: 768px) {
  .news-main {
    padding: 0;
  }
}.news-main-container {
  max-width: 1100px;
  width: 100%;
  margin: auto;
  padding: 90px 100px;
  background: rgba(255, 255, 255, 0.6980392157);
}@media screen and (max-width: 1400px) {
  .news-main-container {
    padding: 90rem 100rem;
  }
}@media screen and (max-width: 768px) {
  .news-main-container {
    max-width: 372rem;
    padding: 34rem 19rem;
  }
}.news-main-thumb {
  margin-bottom: 57px;
}@media screen and (max-width: 1400px) {
  .news-main-thumb {
    margin-bottom: 57rem;
  }
}@media screen and (max-width: 768px) {
  .news-main-thumb {
    margin-bottom: 0;
  }
}.news-main-thumb-img {
  margin-bottom: 26px;
  width: 100%;
  height: auto;
}@media screen and (max-width: 1400px) {
  .news-main-thumb-img {
    height: auto;
    margin-bottom: 26rem;
  }
}@media screen and (max-width: 768px) {
  .news-main-thumb-img {
    height: auto;
    margin-bottom: 20rem;
  }
}.news-main-thumb-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.news-main-thumb-content {
  display: flex;
  align-items: center;
  justify-content: left;
  padding-bottom: 34px;
  /*
  border-bottom: 2px solid;
  border-image-source: linear-gradient(93.67deg, #93ACFF 0.58%, #CF88F0 22.89%, #FF8460 72.68%, #DEE31E 100.6%);
  border-image-slice: 1;
  */
  border-bottom: 2px dashed #D0A996;
}
@media screen and (max-width: 1400px) {
  .news-main-thumb-content {
    padding-bottom: 34rem;
  }
}@media screen and (max-width: 768px) {
  .news-main-thumb-content {
    align-items: start;
    flex-direction: column;
  }
}
.news-main-thumb-content span {
  font-weight: 500;
  font-size: 18px;
  line-height: 1;
  color: #CFAE9E;
}@media screen and (max-width: 1400px) {
  .news-main-thumb-content span {
    font-size: 18px;
    margin-bottom: 7rem;
  }
}@media screen and (max-width: 768px) {
  .news-main-thumb-content span {
    font-size: 20px;
  }
}
.news-main-thumb-content p {
    font-weight: 500;
    font-size: 16px;
    line-height: 1;
    letter-spacing: 0.05em;
    color: #4F2821;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: clip;
}
@media screen and (max-width: 1400px) {
  .news-main-thumb-content p {
    font-size: 16rem;
  }
}@media screen and (max-width: 768px) {
  .news-main-thumb-content p {
    -webkit-line-clamp: 2;
    font-size: 14px;
    line-height: 1.5;
  }
}
.news-main-list {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 40px;
}
.news-main-list .news-main__elem{
  width: calc((100% - 80px) / 3);
}

@media screen and (max-width: 768px) {
  .news-main-list {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0;
  }
  .news-main-list .news-main__elem{
    width: 100%;
  }
}.news-main__elem-img {
  width: 100%;
  height: 143px;
  overflow: hidden;
}@media screen and (max-width: 1400px) {
  .news-main__elem-img {
    height: 143rem;
  }
}@media screen and (max-width: 768px) {
  .news-main__elem-img {
    display: none;
  }
}.news-main__elem-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.news-main__elem-content {
  padding: 18px 0 14px;
  /*
  border-bottom: 2px solid;
  border-image-source: linear-gradient(93.67deg, #93ACFF 0.58%, #CF88F0 22.89%, #FF8460 72.68%, #DEE31E 100.6%);
  border-image-slice: 1;
  */
  border-bottom: 2px dashed #D0A996;
}
@media screen and (max-width: 1400px) {
  .news-main__elem-content {
    padding: 18rem 0 14rem;
  }
}@media screen and (max-width: 768px) {
  .news-main__elem-content {
    padding: 28rem 0;
  }
}
.news-main__elem-content span {
  font-weight: 500;
  font-size: 18px;
  line-height: 1;
  color: #CFAE9E;
  display: inline-block;
}@media screen and (max-width: 1400px) {
  .news-main__elem-content span {
    font-size: 18px;
    margin-bottom: 7rem;
  }
}@media screen and (max-width: 768px) {
  .news-main__elem-content span {
    font-size: 20px;
  }
}
.news-main__elem-content p {
    font-weight: 500;
    font-size: 16px;
    line-height: 1;
    letter-spacing: 0.05em;
    color: #4F2821;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: clip;
}
@media screen and (max-width: 1400px) {
  .news-main__elem-content p {
    font-size: 16rem;
  }
}@media screen and (max-width: 768px) {
  .news-main__elem-content p {
    -webkit-line-clamp: 2;
    font-size: 14px;
    line-height: 1.5;
  }
}
.faq-main {
  padding: 0 50px;
  margin-bottom: 120px;
}@media screen and (max-width: 1400px) {
  .faq-main {
    padding: 0 50rem;
    margin-bottom: 120rem;
  }
}@media screen and (max-width: 768px) {
  .faq-main {
    padding: 0;
  }
}.faq-main-container {
  max-width: 1100px;
  width: 100%;
  margin: auto;
}@media screen and (max-width: 768px) {
  .faq-main-container {
    max-width: 334rem;
  }
}.faq-main-inner {
  transition: all 0.4s ease-in-out;
}.faq-main-inner._change {
  opacity: 0;
  filter: blur(10px);
}.faq-main-ctg {
  margin-bottom: 61px;
}@media screen and (max-width: 1400px) {
  .faq-main-ctg {
    margin-bottom: 61rem;
  }
}@media screen and (max-width: 768px) {
  .faq-main-ctg {
    margin-bottom: 29rem;
  }
}.faq-main-ctg ul {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 22px 10px;
  max-width: 90%;
  margin: auto;
}@media screen and (max-width: 1400px) {
  .faq-main-ctg ul {
    gap: 22rem 12rem;
  }
}@media screen and (max-width: 768px) {
  .faq-main-ctg ul {
    max-width: 100%;
    gap: 10rem;
  }
}.faq-main-ctg li {
  display: flex;
  align-items: center;
  justify-content: center;
  /*width: 292px;*/
  width: 240px;
  height: 62px;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #F5578B;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  border: 1px solid #F5578B;
  position: relative;
  border-radius: 100px;
  cursor: pointer;
  text-align: center;
}@media screen and (max-width: 1400px) {
  .faq-main-ctg li {
    font-size: 16rem;
    width: 250rem;
    height: 62rem;
  }
}@media screen and (max-width: 768px) {
  .faq-main-ctg li {
    font-size: 12rem;
    width: 162rem;
    height: 62rem;
  }
}.faq-main-ctg li::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /*
  background: linear-gradient(93.67deg, #93ACFF 0.58%, #CF88F0 22.89%, #FF8460 72.68%, #DEE31E 100.6%);
  */
  background: linear-gradient(90deg, #ec82af 0%, #eb8fb8 50%, #d296c2 70%, #d288c2 85%, #e27fc1 100%);
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  opacity: 0;
  z-index: 1;
  border-radius: 100px;
}.faq-main-ctg li p {
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  position: relative;
  z-index: 2;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #F5578B;
  text-align: center;
}@media screen and (max-width: 1400px) {
  .faq-main-ctg li p {
    font-size: 16rem;
  }
}@media screen and (max-width: 768px) {
  .faq-main-ctg li p {
    font-size: 12rem;
  }
}.faq-main-ctg li:hover {
  transform: scale(0.95);
}.faq-main-ctg li.active {
  border: 0 solid #F5578B;
}.faq-main-ctg li.active::after {
  opacity: 1;
}.faq-main-ctg li.active p {
  color: var(--g-color-white);
}.faq-main-ttl {
  border-bottom: 3px solid;
  border-image-source: linear-gradient(90deg, #ec82af 0%, #eb8fb8 50%, #d296c2 70%, #d288c2 85%, #e27fc1 100%);
  border-image-slice: 1;
  padding-bottom: 27px;
  margin-bottom: 40px;
}@media screen and (max-width: 1400px) {
  .faq-main-ttl {
    padding-bottom: 27rem;
    margin-bottom: 40rem;
  }
}@media screen and (max-width: 768px) {
  .faq-main-ttl {
    padding-bottom: 20rem;
    margin-bottom: 20rem;
  }
}.faq-main-ttl._change {
  transition: opacity 0.4s ease-in-out, filter 0.4s ease-in-out;
}.faq-main-ttl._change._change {
  opacity: 0;
  filter: blur(10px);
}.faq-main-ttl p {
  color: var(--g-color-black);
  font-weight: 700;
  font-size: 30px;
  line-height: 1.5;
  letter-spacing: 0.05em;
}@media screen and (max-width: 1400px) {
  .faq-main-ttl p {
    font-size: 30rem;
  }
}@media screen and (max-width: 768px) {
  .faq-main-ttl p {
    font-size: 20rem;
  }
}.faq-main__elem {
  display: none;
}.faq-main__elem.active {
  display: block;
}.faq-main__elem:not(:last-child) {
  margin-bottom: 30px;
}@media screen and (max-width: 1400px) {
  .faq-main__elem:not(:last-child) {
    margin-bottom: 30rem;
  }
}@media screen and (max-width: 768px) {
  .faq-main__elem:not(:last-child) {
    margin-bottom: 18rem;
  }
}.faq-main__elem-q {
  /*
  background: linear-gradient(93.67deg, #D5C5FE 0.58%, #FCBCF3 22.89%, #FFA996 72.68%, #FFEA81 100.6%);
  */
  background: linear-gradient(90deg, #ec82af 0%, #eb8fb8 50%, #d296c2 70%, #d288c2 85%, #e27fc1 100%);
  padding: 12px 21px;
}@media screen and (max-width: 1400px) {
  .faq-main__elem-q {
    padding: 12rem 21rem;
  }
}@media screen and (max-width: 768px) {
  .faq-main__elem-q {
    padding: 11rem;
  }
}.faq-main__elem-q p {
  font-weight: 600;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #fff;
}@media screen and (max-width: 1400px) {
  .faq-main__elem-q p {
    font-size: 20rem;
  }
}@media screen and (max-width: 768px) {
  .faq-main__elem-q p {
    font-size: 14rem;
  }
}.faq-main__elem-a {
  padding: 21px;
  background: rgba(255, 255, 255, 0.6980392157);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.9;
  letter-spacing: 0.05em;
  color: var(--g-color-black);
}@media screen and (max-width: 1400px) {
  .faq-main__elem-a {
    font-size: 16rem;
    padding: 21rem;
  }
}@media screen and (max-width: 768px) {
  .faq-main__elem-a {
    font-size: 12rem;
    padding: 12rem;
  }
}.faq-main__elem-a * {
  font-weight: 400;
  font-size: 16px;
  line-height: 1.9;
  letter-spacing: 0.05em;
  color: var(--g-color-black);
}@media screen and (max-width: 1400px) {
  .faq-main__elem-a * {
    font-size: 16rem;
  }
}@media screen and (max-width: 768px) {
  .faq-main__elem-a * {
    font-size: 12rem;
  }
}._mt-section {
  margin-top: 90px;
}@media screen and (max-width: 1400px) {
  ._mt-section {
    margin-top: 90rem;
  }
}@media screen and (max-width: 768px) {
  ._mt-section {
    margin-top: 34rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head-ttl {
    border-bottom: 3px solid;
    border-image-source: linear-gradient(93.67deg, #93ACFF 0.58%, #CF88F0 22.89%, #FF8460 72.68%, #DEE31E 100.6%);
    border-image-slice: 1;
    padding-bottom: 20rem;
    margin-bottom: 20rem;
  }
}.tickets-main-head-ttl p {
  color: var(--g-color-black);
  font-weight: 700;
  font-size: 30px;
  line-height: 1;
  letter-spacing: 0.05em;
}@media screen and (max-width: 1400px) {
  .tickets-main-head-ttl p {
    font-size: 30rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head-ttl p {
    font-size: 20rem;
  }
}.tickets-main__elem:not(:last-child) {
  margin-bottom: 40px;
}@media screen and (max-width: 1400px) {
  .tickets-main__elem:not(:last-child) {
    margin-bottom: 40rem;
  }
}.tickets-main__elem-ttl {
  background: linear-gradient(93.67deg, #D5C5FE 0.58%, #FCBCF3 22.89%, #FFA996 72.68%, #FFEA81 100.6%);
  padding: 10px 24px;
  margin-bottom: 24px;
}@media screen and (max-width: 1400px) {
  .tickets-main__elem-ttl {
    margin-bottom: 24rem;
    padding: 10rem 24rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main__elem-ttl {
    padding: 8rem 11rem;
  }
}.tickets-main__elem-ttl h2 {
  color: var(--g-color-black);
  font-weight: 700;
  font-size: 24px;
  line-height: 1.4;
  letter-spacing: 0.05em;
}@media screen and (max-width: 1400px) {
  .tickets-main__elem-ttl h2 {
    font-size: 24rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main__elem-ttl h2 {
    font-size: 18rem;
  }
}.tickets-main__elem-content p {
  font-weight: 500;
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0.05em;
  color: var(--g-color-black);
  margin-bottom: 1em;
}@media screen and (max-width: 1400px) {
  .tickets-main__elem-content p {
    font-size: 16rem;
    margin-bottom: 1em;
  }
}@media screen and (max-width: 768px) {
  .tickets-main__elem-content p {
    font-size: 12rem;
    margin-bottom: .5em;
  }
}.tickets-main__elem-btns {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 18px 12px;
}@media screen and (max-width: 1400px) {
  .tickets-main__elem-btns {
    gap: 18rem 12rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main__elem-btns {
    gap: 12rem 11rem;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}@media screen and (max-width: 768px) {
  .tickets-main__elem-btns .more-btn a {
    padding: 9rem 21rem;
    text-align: center;
  }
}@media screen and (max-width: 768px) {
  .tickets-main__elem-btns .more-btn a span {
    line-height: 1.4;
    font-size: 12rem;
    padding: 0 10rem;
  }
}.tickets-btn a {
  margin: auto;
  border: 1px solid rgba(0, 0, 0, 0.1019607843);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 132px;
  max-width: 350px;
  width: 100%;
  background: var(--g-color-white);
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  transform: skewX(-13deg);
}@media screen and (max-width: 1400px) {
  .tickets-btn a {
    max-width: 350rem;
    height: 132rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-btn a {
    max-width: 336rem;
    transform: skewX(-7deg);
    height: 109rem;
  }
}.tickets-btn a p {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 44px;
  line-height: 1.4;
  text-align: center;
  display: inline-block;
  background: linear-gradient(124.6deg, #A2DF57 13.01%, #1FFF96 30.47%, #0087E3 52.31%, #3DFEE4 75.89%, #179700 100.34%);
  color: transparent;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}@media screen and (max-width: 1400px) {
  .tickets-btn a p {
    font-size: 44rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-btn a p {
    font-size: 34rem;
  }
}.tickets-btn a span {
  color: var(--g-color-black);
  font-weight: 700;
  font-size: 15px;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
}@media screen and (max-width: 768px) {
  .tickets-btn a span {
    font-size: 14rem;
  }
}.tickets-btn a:hover {
  transform: skewX(-13deg) scale(0.95);
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-ttl img {
    width: auto !important;
    height: 95rem !important;
    max-width: 100% !important;
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
}/* ========================================
   スライダーの複製スライド強制表示（修正版）
   ======================================== */

.link-text{
  font-weight: 700;
  color: #0E99E8;
  text-decoration: underline;
}.marker-text {
  background-color: #ff9;
}.tickets-main__elem-content h3 {
  border-bottom: 2px solid #D5D1D1;
  font-weight: 700;
  font-size: 20px;
  margin:  1em 0;
}@media screen and (max-width: 1400px) {
  .tickets-main__elem-content h3 {
  border-bottom: 2px solid #D5D1D1;
  font-weight: 700;
  font-size: 20rem;
  margin: 1em 0;
  }
}@media screen and (max-width: 768px) {
  .tickets-main__elem-content h3 {
  border-bottom: 2px solid #D5D1D1;
  font-weight: 700;
  font-size: 14rem;
  margin: 1em 0;
  }
}.tickets-main__elem-content h4 {
  font-weight: 700;
  font-size: 18px;
  margin: .5em 0 .25em;
}@media screen and (max-width: 1400px) {
  .tickets-main__elem-content h4 {
    font-weight: 700;
    font-size: 18rem;
    margin: .5em 0 .25em;
  }
}@media screen and (max-width: 768px) {
  .tickets-main__elem-content h4 {
    font-weight: 700;
    font-size: 13rem;
    margin: .5em 0 .25em;
  }
}/* チケットページ(追記) */

.tickets-main {
  padding: 0 50px;
  margin-bottom: 120px;
}@media screen and (max-width: 1400px) {
  .tickets-main {
    padding: 0 50rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main {
    padding: 0;
  }
}.tickets-main-container {
  background: rgba(255, 255, 255, 0.6980392157);
  max-width: 1100px;
  width: 100%;
  margin: auto;
  padding: 90px 100px;
  margin-bottom: 50px;
}@media screen and (max-width: 1400px) {
  .tickets-main-container {
    padding: 90rem 100rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-container {
    max-width: 372rem;
    padding: 34rem 5rem;
  }
}.tickets-main-head {
  margin-bottom: 40px;
}@media screen and (max-width: 1400px) {
  .tickets-main-head {
    margin-bottom: 40rem;
  }
}.tickets-main-head-top {
  display: grid;
  grid-template-columns: 430px 430px;
  justify-content: center;
  gap: 25px 40px;
  margin-bottom: 40px;
}@media screen and (max-width: 1400px) {
  .tickets-main-head-top {
    grid-template-columns: 430rem 430rem;
    gap: 25rem 40rem;
    margin-bottom: 40rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head-top {
    grid-template-columns: 1fr;
    gap: 20rem;
    margin-bottom: 20rem;
  }
}.tickets-main-head__elem {
  width: 430px;
}@media screen and (max-width: 1400px) {
  .tickets-main-head__elem {
    width: 430rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head__elem {
    width: 100%;
  }
}.tickets-main-head__elem:first-child {
  grid-column: 1 / -1;
  justify-self: center;
  width: 430px;
}@media screen and (max-width: 1400px) {
  .tickets-main-head__elem:first-child {
    width: 430rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head__elem:first-child {
    width: 100%;
  }
}.tickets-main-head__elem > p {
  font-weight: 990;
  font-size: 24px;
  line-height: 1.3;
  letter-spacing: 0.05em;
  text-align: center;
  margin-bottom: 24px;
  text-wrap: nowrap;
  color: var(--g-color-black);
  display: flex;
  align-items: center;
  justify-content: center;
}@media screen and (max-width: 1400px) {
  .tickets-main-head__elem > p {
    font-size: 24rem;
    margin-bottom: 24rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head__elem > p {
    font-size: 19rem;
    margin-bottom: 16rem;
  }
}
.tickets-main-head__elem > p span {
  display: block;
  margin: 0 7px;
}
@media screen and (max-width: 1400px) {
  .tickets-main-head__elem > p span {
    margin: 0 7rem;
  }
}
@media screen and (max-width: 768px) {
  .tickets-main-head__elem > p span {
    margin: 0 5rem;
  }
}
.tickets-main-head__elem > p img {
  width: 100px;
}
.tickets-main-head__elem > p img.r_icon{
  transform: scale(-1,1);
}
@media screen and (max-width: 1400px) {
  .tickets-main-head__elem > p img {
    width: 60rem;
  }
}
@media screen and (max-width: 768px) {
  .tickets-main-head__elem > p img {
    width: 30rem;
  }
}
.tickets-main-head__elem-ttl h3,
.tickets-main-head-btn-head h3,
.tickets-main-detail__elem h3,
.tickets-main-detail-btn-head h3,
.tickets-main-content-ttl h4 {
  margin: 0;
  padding: 0;
}.tickets-main-head__elem-ttl {
  background: linear-gradient(
  90deg,
  #ec82af 0%,
  #eb8fb8 50%,
  #d296c2 70%,
  #d288c2 85%,
  #e27fc1 100%
);
  padding: 14px;
}
@media screen and (max-width: 1400px) {
  .tickets-main-head__elem-ttl {
    padding: 14rem;
  }
}
@media screen and (max-width: 768px) {
  .tickets-main-head__elem-ttl {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    padding: 10px 5px;
  }
}
.tickets-main-head__elem-ttl h3 {
  font-weight: 700;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  color: #fff;
}
.tickets-main-head__elem-ttl .sub_txt{
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  color: #fff;
  font-weight: 500;
}
@media screen and (max-width: 1400px) {
  .tickets-main-head__elem-ttl h3 {
    font-size: 20rem;
  }
  .tickets-main-head__elem-ttl .sub_txt{
    font-size: 16rem;
  }
}
@media screen and (max-width: 768px) {
  .tickets-main-head__elem-ttl h3 {
    font-size: 18rem;
  }
  .tickets-main-head__elem-ttl .sub_txt{
    font-size: 14rem;
  }
}
.tickets-main-head__elem-txt {
  border: 2px solid #BD9683;
  padding: 15px 0;
}@media screen and (max-width: 1400px) {
  .tickets-main-head__elem-txt {
    padding: 15rem 0;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head__elem-txt {
    padding: 10px 0;
  }
}.tickets-main-head__elem-txt p {
  font-weight: 900;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}
.tickets-main-head__elem-txt p.sub_txt{
  font-size: 18px;
  color: #F5578B;
  font-weight: bold;
  text-align: center;
  line-height: 1.6;
  margin: 5px 0;
}
@media screen and (max-width: 1400px) {
  .tickets-main-head__elem-txt p {
    font-size: 18rem;
  }
  .tickets-main-head__elem-txt p.sub_txt{
    font-size: 18rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head__elem-txt p {
    font-size: 16rem;
  }
  .tickets-main-head__elem-txt p.sub_txt{
    font-size: 16rem;
  }
}.tickets-main-head__elem-txt p span {
  font-size: 28px;
  font-weight: bold;
  padding: 0 5px;
}@media screen and (max-width: 1400px) {
  .tickets-main-head__elem-txt p span {
    font-size: 28rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head__elem-txt p span {
    font-size: 24rem;
  }
}.tickets-main-head-btn-head {
  position: relative;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: #E7E7F4;
  padding: 10px 24px;
  border-top: 1px solid #BD9683;
  border-bottom: 1px solid #BD9683;
}
.tickets-main-head-btn-head.active{
  border-bottom: none;
}
@media screen and (max-width: 1400px) {
  .tickets-main-head-btn-head {
    padding: 10rem 24rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head-btn-head {
    padding: 8rem 10rem;
  }
}.tickets-main-head-btn-head h3 {
  color: #4F2821;
  font-weight: 700;
  font-size: 20px;
  line-height: 1.7;
  letter-spacing: 0.05em;
}@media screen and (max-width: 1400px) {
  .tickets-main-head-btn-head h3 {
    font-size: 20rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head-btn-head h3 {
    font-size: 16rem;
  }
}.tickets-main-head-btn-head::before, .tickets-main-head-btn-head::after {
  content: "";
  height: 2px;
  background: var(--g-color-black);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  right: 24px;
}@media screen and (max-width: 1400px) {
  .tickets-main-head-btn-head::before, .tickets-main-head-btn-head::after {
    width: 18rem;
    right: 24rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head-btn-head::before, .tickets-main-head-btn-head::after {
    width: 14rem;
    right: 11rem;
  }
}.tickets-main-head-btn-head::after {
  transition: all 0.4s ease-in-out;
  transform: translateY(-50%) rotate(90deg);
}.tickets-main-head-btn-head.active::after {
  transform: translateY(-50%) rotate(0);
}.tickets-main-head-btn-content {
  /*transition: all 0.4s ease-in-out;*/
  border: 0px solid #FFA996;
  padding: 0 24px;
  overflow: hidden;
  display: none;
  /*max-height: 0;*/
}@media screen and (max-width: 1400px) {
  .tickets-main-head-btn-content {
    padding: 0 24rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head-btn-content {
    padding: 0 14rem;
  }
}.tickets-main-head-btn-content {
  border: 2px solid #BD9683;
  padding: 17px 24px;
}@media screen and (max-width: 1400px) {
  .tickets-main-head-btn-content {
    padding: 17rem 24rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head-btn-content {
    padding: 17rem 14rem;
  }
}.tickets-main-head-btn-content p {
  font-weight: 500;
  font-size: 16px;
  line-height: 1.9;
  letter-spacing: 0.05em;
  color: var(--g-color-black);
}@media screen and (max-width: 1400px) {
  .tickets-main-head-btn-content p {
    font-size: 16rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head-btn-content p {
    font-size: 13rem;
  }
}.tickets-main-head-btn-content p span {
  font-size: 18px;
}@media screen and (max-width: 1400px) {
  .tickets-main-head-btn-content p span {
    font-size: 18rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-head-btn-content p span {
    font-size: 16rem;
  }
}.tickets-main-detail__elem {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 31px 0;
  position: relative;
}.tickets-main-detail__elem::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  background: #D0A996;
  -webkit-mask-image: repeating-linear-gradient(90deg, #000 0 8px, #000 8px, transparent 8px, transparent 16px);
  -webkit-mask-repeat: repeat-x;
  mask-image: repeating-linear-gradient(90deg, #000 0 8px, #000 8px, transparent 8px, transparent 16px);
  mask-repeat: repeat-x;
}@media screen and (max-width: 1400px) {
  .tickets-main-detail__elem {
    padding: 31rem 0;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-detail__elem {
    flex-direction: column;
    justify-content: center;
    padding: 30rem 0;
  }
}.tickets-main-detail__elem:first-child::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 3px;
  background: #D0A996;
  -webkit-mask-image: repeating-linear-gradient(90deg, #000 0 8px, #000 8px, transparent 8px, transparent 16px);
  -webkit-mask-repeat: repeat-x;
  mask-image: repeating-linear-gradient(90deg, #000 0 8px, #000 8px, transparent 8px, transparent 16px);
  mask-repeat: repeat-x;
}.tickets-main-detail__elem h3 {
  font-weight: 700;
  font-size: 28px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: var(--g-color-black);
}@media screen and (max-width: 1400px) {
  .tickets-main-detail__elem h3 {
    font-size: 28rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-detail__elem h3 {
    font-size: 22rem;
    margin-bottom: 15rem;
  }
}.tickets-main-detail__elem a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 15px 32px;
  background: linear-gradient(90deg, #ec82af 0%, #eb8fb8 50%, #d296c2 70%, #d288c2 85%, #e27fc1 100%);
  border-radius: 100px;
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}@media screen and (max-width: 1400px) {
  .tickets-main-detail__elem a {
    padding: 15rem 32rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-detail__elem a {
    width: 100%;
    padding: 19px 0;
  }
}.tickets-main-detail__elem a span {
  color: var(--g-color-white);
  font-weight: 700;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.05em;
  display: block;
  margin-right: 10px;
  margin-bottom: 0 !important;
}@media screen and (max-width: 1400px) {
  .tickets-main-detail__elem a span {
    margin-right: 10rem;
    font-size: 16rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-detail__elem a span {
    font-size: 16rem;
    line-height: 1.5;
  }
}.tickets-main-detail__elem a span svg {
  width: 16px;
  margin-bottom: 0;
}@media screen and (max-width: 1400px) {
  .tickets-main-detail__elem a span svg {
    width: 16rem;
  }
}.tickets-main-detail__elem a:hover {
  transform: scale(0.95);
}.tickets-main-detail-btn {
  margin-top: 40px;
}@media screen and (max-width: 1400px) {
  .tickets-main-detail-btn {
    margin-top: 40rem;
  }
}._mt-section + .tickets-main-detail-btn {
  margin-top: 0;
}.tickets-main-detail-btn-head {
  position: relative;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
      background: linear-gradient(90deg, #ec82af 0%, #eb8fb8 50%, #d296c2 70%, #d288c2 85%, #e27fc1 100%);
  padding: 10px 24px;
}@media screen and (max-width: 1400px) {
  .tickets-main-detail-btn-head {
    padding: 10rem 24rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-detail-btn-head {
    padding: 8rem 10rem;
  }
}.tickets-main-detail-btn-head h3 {
  color: #fff;
  font-weight: 700;
  font-size: 20px;
  line-height: 1.7;
  letter-spacing: 0.05em;
}@media screen and (max-width: 1400px) {
  .tickets-main-detail-btn-head h3 {
    font-size: 20rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-detail-btn-head h3 {
    font-size: 16rem;
  }
}.tickets-main-detail-btn-head::before, .tickets-main-detail-btn-head::after {
  content: "";
  height: 2px;
  background: var(--g-color-black);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  right: 24px;
}@media screen and (max-width: 1400px) {
  .tickets-main-detail-btn-head::before, .tickets-main-detail-btn-head::after {
    width: 18rem;
    right: 24rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-detail-btn-head::before, .tickets-main-detail-btn-head::after {
    width: 14rem;
    right: 11rem;
  }
}.tickets-main-detail-btn-head::after {
  transition: all 0.4s ease-in-out;
  transform: translateY(-50%) rotate(0);
}.tickets-main-detail-btn-head.active::after {
  transform: translateY(-50%) rotate(90deg);
}.tickets-main-detail-btn-head .status-closed {
  position: absolute;
  right: 60px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 14px;
  font-weight: 700;
  white-space: nowrap;
}@media screen and (max-width: 1400px) {
  .tickets-main-detail-btn-head .status-closed {
    font-size: 14rem;
    right: 60rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-detail-btn-head .status-closed {
    font-size: 10rem;
    right: 30rem;
  }
}.tickets-main-detail-btn-content {
  /*max-height: 0;*/
  overflow: hidden;
  /*transition: all 0.4s ease-in-out;*/
  padding: 0 24px;
  border: 0 solid;
  border-image-source: linear-gradient(90.53deg, #D5C5FE 0%, #FCBCF3 34.74%, #FFA996 74.85%, #FFEA81 100%);
  border-image-slice: 1;
}@media screen and (max-width: 1400px) {
  .tickets-main-detail-btn-content {
    padding: 0 24rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-detail-btn-content {
    padding: 0 14rem;
  }
}.tickets-main-detail-btn-content {
  padding: 17px 24px;
  border: 0 solid;
  border-image-source: linear-gradient(90.53deg, #D5C5FE 0%, #FCBCF3 34.74%, #FFA996 74.85%, #FFEA81 100%);
  border-image-slice: 1;
}@media screen and (max-width: 1400px) {
  .tickets-main-detail-btn-content {
    padding: 17rem 24rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-detail-btn-content {
    padding: 17rem 10rem;
  }
}.tickets-main-detail-btn-content > .tickets-main-head {
  margin-left: -24px;
  margin-right: -24px;
}@media screen and (max-width: 1400px) {
  .tickets-main-detail-btn-content > .tickets-main-head {
    margin-left: -24rem;
    margin-right: -24rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-detail-btn-content > .tickets-main-head {
    margin-left: -14rem;
    margin-right: -14rem;
  }
}.tickets-main-detail-btn-content-top {
  margin-bottom: 40px;
}@media screen and (max-width: 1400px) {
  .tickets-main-detail-btn-content-top {
    margin-bottom: 40rem;
  }
}.tickets-main-detail-btn-content-top span {
  font-weight: 700;
  font-size: 22px;
  line-height: 1.8;
  letter-spacing: 0.05em;
  display: block;
  color: var(--g-color-black);
}@media screen and (max-width: 1400px) {
  .tickets-main-detail-btn-content-top span {
    font-size: 22rem;
  }
}.tickets-main-detail-btn-content-top p {
  font-weight: 500;
  font-size: 20px;
  line-height: 1.9;
  letter-spacing: 0.05em;
  color: var(--g-color-black);
}@media screen and (max-width: 1400px) {
  .tickets-main-detail-btn-content-top p {
    font-size: 20rem;
  }
}.tickets-main-content {
  margin-bottom: 24px;
}.tickets-main-detail > .tickets-main-content {
  margin-top: 48px;
}@media screen and (max-width: 768px) {
  .tickets-main-detail > .tickets-main-content {
    margin-top: 60rem;
  }
}@media screen and (max-width: 1400px) {
  .tickets-main-content {
    margin-bottom: 24rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-content {
    margin-bottom: 40rem;
  }
}.tickets-main-content-ttl {
  padding-bottom: 10px;
  margin-bottom: 24px;
  border-bottom: 3px solid;
  border-image-source: linear-gradient(90deg, #ec82af 0%, #eb8fb8 50%, #d296c2 70%, #d288c2 85%, #e27fc1 100%);
  border-image-slice: 1;
}@media screen and (max-width: 1400px) {
  .tickets-main-content-ttl {
    padding-bottom: 10rem;
    margin-bottom: 24rem;
  }
}.tickets-main-content-ttl h4 {
  color: var(--g-color-black);
  font-weight: 700;
  font-size: 22px;
  line-height: 2;
  letter-spacing: 0.05em;
}
.tickets-main-content-ttl h4 .item{
  padding-left: 30px;
  position: relative;
}
.tickets-main-content-ttl h4 .item::before{
  content: "";
  width: 20px;
  height: 28px;
  background: url(../img/h4_item.svg) center no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 1400px) {
  .tickets-main-content-ttl h4 {
    font-size: 22rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-content-ttl h4 {
    font-size: 18rem;
  }
  .tickets-main-content-ttl h4 .item{
    padding-left: 20px;
  }
  .tickets-main-content-ttl h4 .item::before{
    width: 16px;
    height: 22px;
  }
}.tickets-main-content > p {
  font-weight: 500;
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0.05em;
  color: var(--g-color-black);
}@media screen and (max-width: 768px) {
  .tickets-main-content > p {
    font-size: 16rem;
  }
}.tickets-main-content > p:not(:last-child) {
  margin-bottom: 40px;
}@media screen and (max-width: 768px) {
  .tickets-main-content > p:not(:last-child) {
    margin-bottom: 40rem;
  }
}.tickets-main-content > p span {
  font-weight: bold;
  font-size: 18px;
}@media screen and (max-width: 768px) {
  .tickets-main-content > p span {
    font-size: 18rem;
  }
}
.tickets-main-content > p._gap {
  margin-bottom: 1.15em;
}.tickets-main-head-btn-content p._gap {
  margin-bottom: 1.05em;
}.tickets-main-content > p._sp-gap,
.tickets-main-head-btn-content p._sp-gap {
  margin-bottom: 0;
}@media screen and (max-width: 768px) {
  .tickets-main-content > p._sp-gap {
    margin-bottom: 1.15em;
  }
  .tickets-main-head-btn-content p._sp-gap {
    margin-bottom: 1.05em;
  }
}
.tickets-main-btns {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 32px;
}@media screen and (max-width: 1400px) {
  .tickets-main-btns {
    gap: 16rem;
  }
}.tickets-main-btns a {
  background: linear-gradient(90deg, #ec82af 0%, #eb8fb8 50%, #d296c2 70%, #d288c2 85%, #e27fc1 100%);
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  border-radius: 100px;
  position: relative;
  padding-right: 28px;
  padding: 19px 0;
  width: 405px;
}@media screen and (max-width: 1400px) {
  .tickets-main-btns a {
    width: 405rem;
    padding-right: 18rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-main-btns a {
    width: 100%;
    padding-right: 18rem;
    border-radius: 36rem;
  }
}.tickets-main-btns a p {
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  color: var(--g-color-white);
}@media screen and (max-width: 1400px) {
  .tickets-main-btns a p {
    font-size: 16rem;
  }
}.tickets-main-btns a span {
  color: var(--g-color-white);
  font-weight: 500;
  font-size: 13px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  display: block;
}@media screen and (max-width: 1400px) {
  .tickets-main-btns a span {
    font-size: 13rem;
  }
}.tickets-main-btns a svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 15px;
  height: auto;
  right: 24px;
}@media screen and (max-width: 1400px) {
  .tickets-main-btns a svg {
    width: 15rem;
    right: 24rem;
  }
}.tickets-main-btns a:hover {
  transform: scale(0.95);
}@media screen and (max-width: 768px) {
  .tickets-main-detail-btn-head._sp-small h3 {
    font-size: 13rem;
    padding-right: 2em;
  }
  .tickets-main-btns a._sp-small p {
    font-size: 14rem;
  }
}.tickets-main-detail-btn-head._closed {
  background: #dedede;
}.tickets-main-detail__elem._closed a {
  background: #dedede;
  pointer-events: none;
}._mm-btn-content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease-in-out;
}._no-auto-open ~ ._mm-btn-content {
  max-height: 0;
}._mm-btn:not(._no-auto-open) ~ ._mm-btn-content {
  max-height: 9999px;
}.footer-company-logo {
  position: relative;
  z-index: 2;
  margin-top: 20px;
  text-align: center;
}.footer-company-logo img {
  width: 600px;
}@media screen and (max-width: 1400px) {
  .footer-company-logo {
    margin-top: 20rem;
  }
  .footer-company-logo img {
    width: 600rem;
  }
}@media screen and (max-width: 768px) {
  .footer-company-logo {
    margin-top: 15rem;
  }
  .footer-company-logo img {
    width: 450rem;
  }
}.footer-dome-logo {
  position: relative;
  z-index: 2;
  text-align: center;
  margin-top: 20px;
  margin-bottom: 12px;
}.footer-dome-logo img {
  width: 300px;
}@media screen and (max-width: 768px) {
  .footer-dome-logo {
    margin-top: 15rem;
    margin-bottom: 12rem;
  }
  .footer-dome-logo img {
    width: 145rem;
  }
}.footer-sponsor-logo {
  position: relative;
  z-index: 2;
  margin-top: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
}.footer-sponsor-logo img {
  width: 160px;
  height: 60px;
  object-fit: contain;
}@media screen and (max-width: 1400px) {
  .footer-sponsor-logo {
    margin-top: 20rem;
    gap: 20rem;
  }
  .footer-sponsor-logo img {
    width: 160rem;
    height: 60rem;
  }
}@media screen and (max-width: 768px) {
  .footer-sponsor-logo {
    margin-top: 15rem;
    gap: 14rem;
    flex-wrap: wrap;
    max-width: 280rem;
    margin-left: auto;
    margin-right: auto;
  }
  .footer-sponsor-logo img {
    width: calc(50% - 7rem);
    height: 45rem;
  }
}.tickets-btn {
  text-align: center;
  padding: 70px 0;
}@media screen and (max-width: 1400px) {
  .tickets-btn {
    padding: 70rem 0;
  }
}@media screen and (max-width: 768px) {
  .tickets-btn {
    padding: 34em 0;
  }
}.tickets-btn a {
  margin: auto;
  border: 1px solid rgba(0, 0, 0, 0.1019607843);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 132px;
  max-width: 350px;
  width: 100%;
  background: var(--g-color-white);
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  transform: skewX(-13deg);
}@media screen and (max-width: 1400px) {
  .tickets-btn a {
    max-width: 350rem;
    height: 132rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-btn a {
    max-width: 336rem;
    transform: skewX(-7deg);
    height: 109rem;
  }
}.tickets-btn a p {
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 44px;
  line-height: 1.4;
  text-align: center;
  display: inline-block;
  background: linear-gradient(124.6deg, #A2DF57 13.01%, #1FFF96 30.47%, #0087E3 52.31%, #3DFEE4 75.89%, #179700 100.34%);
  color: transparent;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}@media screen and (max-width: 1400px) {
  .tickets-btn a p {
    font-size: 44rem;
  }
}@media screen and (max-width: 768px) {
  .tickets-btn a p {
    font-size: 34rem;
  }
}.tickets-btn a span {
  color: var(--g-color-black);
  font-weight: 700;
  font-size: 15px;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
}@media screen and (max-width: 768px) {
  .tickets-btn a span {
    font-size: 14rem;
  }
}.tickets-btn a:hover {
  transform: skewX(-13deg) scale(0.95);
}/* コンテンツ非表示*/
.display-none{
  display: none;
}/* コンテンツ非表示に伴う微調整*/
.sec-schedule {
  overflow: unset;
  overflow-x: clip;
  padding: 80px 0;
  z-index: 5;
  position: relative;
  background: url(../img/bg01.webp) center repeat;
  background-size: 36px;
  background-attachment: fixed;
}
.sec-schedule_bg{
  position: relative;
  background-color: #FFECEC;
  overflow-y: hidden;
  --schedule_bg-height: 100%;
}
.fv_bottom_line{
    position: absolute;
    width: 100%;
    z-index: 10;
    bottom: -2vw;
    left: 50%;
    transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .fv_bottom_line{
    bottom: -7.5vw;
  }
}
.bg-wrapper.sec-schedule_bg > img{
  mix-blend-mode: lighten;
  height: auto;
  position: absolute;
  will-change: transform;
}
.sec-schedule::before{
  content: "";
  width: 12.8%;
  height: var(--section-height);
  background: url(../img/sec-schedule_item.webp) bottom center no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 8%; 
}
.sec-schedule::after{
  content: "";
  width: 12.8%;
  height: var(--section-height);
  background: url(../img/sec-schedule_item.webp) bottom center no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  right: 8%;
}
@media screen and (max-width: 1400px) {
  .sec-schedule::before{
    content: "";
    width: 11vw;
    height: var(--section-height);
    background: url(../img/sec-schedule_item.webp) bottom center no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 1.5%; 
  }
  .sec-schedule::after{
    content: "";
    width: 11vw;
    height: var(--section-height);
    background: url(../img/sec-schedule_item.webp) bottom center no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    right: 1.5%; 
  }
}
@media screen and (max-width: 768px) {
  .sec-schedule::before{
    content: "";
    width: 20vw;
    height: var(--section-height);
    background: url(../img/sec-schedule_spitem.webp) bottom center no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0; 
  }
  .sec-schedule::after{
    content: "";
    width: 20vw;
    height: var(--section-height);
    background: url(../img/sec-schedule_spitem.webp) bottom center no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    right: -3%; 
  }
}
/*
.sec-schedule_bg::before{
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/bg01_item_pc.webp) center top no-repeat;
  background-size: cover;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0.9;
  mix-blend-mode: lighten;
}
  */
@media screen and (max-width: 768px) {
  .sec-schedule_bg::before{
    background: url(../img/bg01_item.webp) center top no-repeat;
  }
}
.sec-schedule_bg::after{
  content: "";
  width: 100%;
  height: 200px;
  background: linear-gradient(to bottom,#F4C1D8 0px,#F4C1D8 35px,transparent);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
@media screen and (max-width: 1400px) {
  .sec-schedule {
    padding: 80rem 0;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule {
    padding: calc(50rem + 7.5vw) 0 50rem;
  }
  .sec-schedule_bg::after{
    height: 150px;
  }
}.sec-movie {
  padding: 80px 0 150px;
  clip-path: inset(0);
  z-index: 10 !important;
}@media screen and (max-width: 1400px) {
  .sec-movie {
    padding: 80rem 0 150rem;
  }
}@media screen and (max-width: 768px) {
  .sec-movie {
    padding: 50rem 0 130rem;
  }
}@media screen and (max-width: 1400px) {
  .sec-movie-ttl {
    margin-bottom: 20rem;
  }
}/* 追従ボタン */
.floating-ticket-btns {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 1000;
  display: flex;
  flex-direction: column;
  gap: 12px;
}@media screen and (max-width: 768px) {
  .floating-ticket-btns {
    right: 0;
    bottom: 0;
    left: 0;
    flex-direction: row;
    gap: 0;
    width: 100%;
  }
}.floating-ticket-btns__item {
  background: var(--g-color-white);
  border-radius: 8px;
  padding: 12px 16px;
  text-align: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}@media screen and (max-width: 1400px) {
  .floating-ticket-btns__item {
    padding: 12rem 16rem;
    border-radius: 8rem;
  }
}@media screen and (max-width: 768px) {
  .floating-ticket-btns__item {
    flex: 1;
    border-radius: 0;
    padding: 10rem 8rem;
    box-shadow: none;
  }
}.floating-ticket-btns__label {
  color: var(--g-color-black);
  font-size: 14px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 8px;
}@media screen and (max-width: 1400px) {
  .floating-ticket-btns__label {
    font-size: 14rem;
    margin-bottom: 8rem;
  }
}@media screen and (max-width: 768px) {
  .floating-ticket-btns__label {
    font-size: 11rem;
    margin-bottom: 6rem;
  }
}.floating-ticket-btns__link {
  display: inline-block;
  background: linear-gradient(93.67deg, #93ACFF 0.58%, #CF88F0 22.89%, #FF8460 72.68%, #DEE31E 100.6%);
  color: var(--g-color-white);
  font-size: 13px;
  font-weight: bold;
  padding: 8px 20px;
  border-radius: 50px;
  text-decoration: none;
  transition: opacity 0.3s;
}.floating-ticket-btns__link:hover {
  opacity: 0.8;
}@media screen and (max-width: 1400px) {
  .floating-ticket-btns__link {
    font-size: 13rem;
    padding: 8rem 20rem;
    border-radius: 50rem;
  }
}@media screen and (max-width: 768px) {
  .floating-ticket-btns__link {
    font-size: 10rem;
    padding: 6rem 12rem;
    border-radius: 50rem;
  }
}/* 公演ロゴ */
.sec-schedule__elem-item-logo {
  text-align: center;
  margin-bottom: 20px;
}.sec-schedule__elem-item-logo img {
  max-width: 280px;
  width: 100%;
  height: auto;
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-item-logo {
    margin-bottom: 20rem;
  }
  .sec-schedule__elem-item-logo img {
    max-width: 280rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem{
    padding-left: 7%;
    padding-right: 7%;
  }
  .sec-schedule__elem-item-logo {
    margin-bottom: 14rem;
  }
  .sec-schedule__elem-item-logo img {
    max-width: 150rem;
  }
}/* 特設サイトボタン */
.sec-schedule__elem-item-btn {
  text-align: center;
  margin-top: 30px;
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-item-btn {
    margin-top: 30rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-item-btn {
    margin-top: 20rem;
  }
}/* 公演間のマージン */
.sec-schedule__elem-item-btn + .sec-schedule__elem-item-logo {
  margin-top: 60px;
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-item-btn + .sec-schedule__elem-item-logo {
    margin-top: 60rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-item-btn + .sec-schedule__elem-item-logo {
    margin-top: 40rem;
  }
}.sec-schedule__elem-item-btn a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(93.67deg, #93ACFF 0.58%, #CF88F0 22.89%, #FF8460 72.68%, #DEE31E 100.6%);
  color: var(--g-color-white);
  font-weight: 700;
  font-size: 11px;
  padding: 10px 24px;
  border-radius: 50px;
  text-decoration: none;
  transition: opacity 0.3s;
}.sec-schedule__elem-item-btn a:hover {
  opacity: 0.8;
}@media screen and (max-width: 1400px) {
  .sec-schedule__elem-item-btn a {
    font-size: 11rem;
    padding: 10rem 24rem;
    border-radius: 50rem;
  }
}@media screen and (max-width: 768px) {
  .sec-schedule__elem-item-btn a {
    font-size: 9rem;
    padding: 8rem 18rem;
    border-radius: 50rem;
  }
}/* ===================== */
/* GOODS / MAP 共通      */
/* CREATORと同じスタイル  */
/* ===================== */

/* セクション基本 */
.line_item{
  width: 100%;
  height: 48px;
  position: relative;
}
.line_item.left::after{
  content: "";
  width: 72%;
  height: 100%;
  background: url(../img/section_line01.webp) center left no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 0;
  transition: 1s;
}

.line_item.right::after{
  content: "";
  width: 72%;
  height: 100%;
  background: url(../img/section_line02.webp) center right no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  right: 0;
  transition: 1s;
}
.line_item.left._show::after,.line_item.right._show::after{
  width: 72%;
}
.sec-goods,
.sec-map {
  position: relative;
  z-index: 10 !important;
  overflow: unset;
  overflow-x: clip;
  padding: 100px 0;
}@media screen and (max-width: 1400px) {
  .sec-goods,
  .sec-map {
    padding: 80rem 0;
  }
}@media screen and (max-width: 768px) {
  .sec-goods,
  .sec-map {
    padding: 15rem 0 40rem;
  }
}.sec-map {
  z-index: 11 !important;
}
/* コンテナ */
.sec-goods-container,
.sec-map-container {
  position: relative;
  z-index: 7;
}/* タイトル */
.sec-goods-ttl,
.sec-map-ttl {
  text-align: center;
  margin-bottom: 30px;
  overflow: hidden;
}@media screen and (max-width: 1400px) {
  .sec-goods-ttl,
  .sec-map-ttl {
    margin-bottom: 30rem;
  }
}@media screen and (max-width: 768px) {
  .sec-goods-ttl,
  .sec-map-ttl {
    margin-bottom: 24rem;
  }
}.sec-goods-ttl h2 img,
.sec-map-ttl h2 img {
  width: auto;
  height: 164px;
  margin: auto;
}@media screen and (max-width: 1400px) {
  .sec-goods-ttl h2 img,
  .sec-map-ttl h2 img {
    height: 164rem;
  }
}@media screen and (max-width: 768px) {
  .sec-goods-ttl h2 img,
  .sec-map-ttl h2 img {
    height: 85rem;
    max-width: unset;
    width: auto;
  }
}/* スライダーメイン */
.sec-goods-slide-main {
  position: relative;
  margin-bottom: 100px;
}@media screen and (max-width: 1400px) {
  .sec-goods-slide-main {
    margin-bottom: 100rem;
  }
}@media screen and (max-width: 768px) {
  .sec-goods-slide-main {
    margin-bottom: 80rem;
  }
}
.no-btn .sec-goods-slide-main {
  margin-bottom: 0;
}
/* スライド要素 */
.sec-goods__elem {
  width: 1000px;
  height: 563px;
  cursor: pointer;
}@media screen and (max-width: 1400px) {
  .sec-goods__elem {
    width: 1000rem;
    height: 563rem;
  }
}@media screen and (max-width: 768px) {
  .sec-goods__elem {
    width: 312rem;
    height: 175rem;
  }
}.sec-goods__elem-container {
  height: 100%;
  transform: scale(0.85);
  position: relative;
  background: var(--g-color-white);
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  overflow: hidden;
}
.sec-goods__elem-container iframe{
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 2;
}
/* YouTube サムネイル＋プレーヤー */
.yt-player-wrap {
  position: relative;
  width: 100%;
  height: 100%;
}
.yt-thumbnail {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
}
.yt-thumbnail img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.yt-play-btn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0.85;
  transition: opacity 0.2s ease;
  z-index: 4;
  filter: drop-shadow(0 2px 8px rgba(0,0,0,0.3));
}
.yt-play-btn svg {
  display: block;
  width: 68px;
  height: 48px;
}
@media screen and (max-width: 768px) {
  .yt-play-btn svg {
    width: 48px;
    height: 34px;
  }
}
.yt-thumbnail:hover .yt-play-btn {
  opacity: 1;
}
.yt-player-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}
.yt-player-container iframe {
  width: 100%;
  height: 100%;
}
.yt-player-wrap.is-playing .yt-thumbnail {
  display: none;
}
/* 再生中のフリック検知オーバーレイ（iframeの上に透明レイヤー） */
/* 下部48pxを除外してYouTubeコントロール（フルスクリーン等）を操作可能にする */
.yt-touch-overlay {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 48px);
  z-index: 5;
  cursor: pointer;
}
.yt-player-wrap.is-playing .yt-touch-overlay {
  display: block;
}
.sec-goods__elem-container::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  width: 100%;
  height: 100%;
  z-index: 1;
}.sec-goods__elem img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}.sec-goods__elem.swiper-slide-active .sec-goods__elem-container {
  transform: scale(1);
}.sec-goods__elem.swiper-slide-active .sec-goods__elem-container::after {
  opacity: 0;
  pointer-events: none;
}/* スワイパーコントローラー */
.sec-goods .swiper-controller .swiper-button.swiper-button-lock {
  display: none;
}
.swiper-wrapper.current_decoration .swiper-slide-active{
  position: relative;
}
.swiper-wrapper.current_decoration .swiper-slide-active .current_item_top,
.swiper-wrapper.current_decoration .swiper-slide-active .current_item_bottom{
  pointer-events: none;
}
.swiper-wrapper.current_decoration .swiper-slide-active .current_item_top::before{
  content: "";
  width: 134px;
  height: 87px;
  background: url(../img/slide_current_item.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  top: -20px;
  left: 0;
  transform: translateX(-55%);
  z-index: 5;
}
.swiper-wrapper.current_decoration .swiper-slide-active .current_item_top::after{
  content: "";
  width: 134px;
  height: 87px;
  background: url(../img/slide_current_item.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  top: -20px;
  right: 0;
  transform: translateX(55%) scale(-1,1);
  z-index: 5;
}
.swiper-wrapper.current_decoration .swiper-slide-active .current_item_bottom::before{
  content: "";
  width: 134px;
  height: 87px;
  background: url(../img/slide_current_item.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -20px;
  left: 0;
  transform: translateX(-55%) scale(1,-1);
  z-index: 5;
}
.swiper-wrapper.current_decoration .swiper-slide-active .current_item_bottom::after{
  content: "";
  width: 134px;
  height: 87px;
  background: url(../img/slide_current_item.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -20px;
  right: 0;
  transform: translateX(55%) scale(-1,-1);
  z-index: 5;
}
@media screen and (max-width: 768px) {
  .swiper-wrapper.current_decoration .swiper-slide-active .current_item_top::before,
  .swiper-wrapper.current_decoration .swiper-slide-active .current_item_top::after,
  .swiper-wrapper.current_decoration .swiper-slide-active .current_item_bottom::before,
  .swiper-wrapper.current_decoration .swiper-slide-active .current_item_bottom::after{
    width: 35px;
    height: 23px;
  }
  .swiper-wrapper.current_decoration .swiper-slide-active .current_item_top::before,
  .swiper-wrapper.current_decoration .swiper-slide-active .current_item_top::after{
    top: -5px;
  }
  .swiper-wrapper.current_decoration .swiper-slide-active .current_item_bottom::before,
  .swiper-wrapper.current_decoration .swiper-slide-active .current_item_bottom::after{
    bottom: -5px;
  }
}
.sec-goods .swiper-controller {
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translate(-50%, 50%);
  max-width: 650px;
  width: 100%;
  visibility: hidden;
  z-index: 15;
}@media screen and (max-width: 1400px) {
  .sec-goods .swiper-controller {
    max-width: 650px;
  }
}@media screen and (max-width: 768px) {
  .sec-goods .swiper-controller {
    max-width: 281rem;
    top: 100%;
    transform: translate(-50%, 50%);
  }
}.sec-goods .swiper-controller .swiper-button-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}.sec-goods .swiper-controller .swiper-button {
  position: unset;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  width: 40px;
  height: 40px;
  margin: 0;
  visibility: visible;
}@media screen and (max-width: 768px) {
  .sec-goods .swiper-controller .swiper-button {
    width: 42rem;
    height: 42rem;
  }
  .sec-goods .swiper-controller .swiper-button img{
    max-width: 22px;
  }
}.sec-goods .swiper-controller .swiper-button::before,
.sec-goods .swiper-controller .swiper-button::after {
  display: none;
}.sec-goods .swiper-controller .swiper-button svg {
  width: 18px;
  height: auto;
}@media screen and (max-width: 768px) {
  .sec-goods .swiper-controller .swiper-button svg {
    width: 12rem;
  }
}.sec-goods .swiper-controller .swiper-button:hover {
  transform: scale(0.95);
}/* ページネーション */
.sec-goods .swiper-pagination {
  bottom: -50px;
  display: flex;
  justify-content: center;
  align-items: center;
}@media screen and (max-width: 1400px) {
  .sec-goods .swiper-pagination {
    bottom: -50px;
  }
}@media screen and (max-width: 768px) {
  .sec-goods .swiper-pagination {
    bottom: -52rem;
  }
}.sec-goods .swiper-pagination .swiper-pagination-bullet {
  width: 14px;
  height: 14px;
  background: url(../img/pagination.webp) center no-repeat;
  background-size: contain;
  margin: 0 5px;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  position: relative;
  opacity: 1;
  border-radius: 0;
}@media screen and (max-width: 768px) {
  .sec-goods .swiper-pagination .swiper-pagination-bullet {
    height: 14px;
    width: 14px;
    margin: 0 2rem;
  }
  .yt-swiper .swiper-pagination {
    flex-wrap: wrap;
    max-width: 200rem;
    margin: 0 auto;
    row-gap: 12rem;
    left: 0;
    right: 0;
    bottom: -60rem;
  }
}
/*
.sec-goods .swiper-pagination .swiper-pagination-bullet::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  background: linear-gradient(90deg, #A2DF57 1.01%, #1FFF96 40.87%, #0087E3 90.7%, #3DFEE4 144.52%, #179700 200.34%);
  opacity: 0;
}
*/
.sec-goods .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  height: 20px;
  width: 20px;
  background: url(../img/pagination_active.webp) center no-repeat;
  background-size: contain;
}/* Goods Button */
.sec-goods-btn {
  text-align: center;
  margin: 2rem auto;
}
@media screen and (max-width: 1400px) {
  .sec-goods-btn {
  margin: 15rem auto;
  }
}
@media screen and (max-width: 768px) {
  .sec-goods-btn {
  margin: 15rem auto;
  }
}/* Goods Modal */
.sec-goods-modal,
.sec-map-modal {
  max-width: 1300px;
  padding: 0 50px;
  width: 100%;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.9);
  opacity: 0;
  z-index: 10001;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  visibility: hidden;
  pointer-events: none;
}@media screen and (max-width: 1400px) {
  .sec-goods-modal,
  .sec-map-modal {
    padding: 0 50rem;
  }
}@media screen and (max-width: 768px) {
  .sec-goods-modal,
  .sec-map-modal {
    padding: 0;
    width: 98%;
    /*
    max-width: 335rem;
    */
  }
}.sec-goods-modal.open-modal,
.sec-map-modal.open-modal {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, -50%) scale(1);
  pointer-events: auto;
  touch-action: pinch-zoom;
}.sec-goods-modal-close,
.sec-map-modal-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  cursor: pointer;
  position: absolute;
  top: -40px;
  right: 50px;
}@media screen and (max-width: 1400px) {
  .sec-goods-modal-close,
  .sec-map-modal-close {
    right: 50rem;
  }
}@media screen and (max-width: 768px) {
  .sec-goods-modal-close,
  .sec-map-modal-close {
    top: -30rem;
    right: 0;
    gap: 9rem;
  }
}.sec-goods-modal-close svg,
.sec-map-modal-close svg {
  width: 18px;
  height: auto;
}@media screen and (max-width: 768px) {
  .sec-goods-modal-close svg,
  .sec-map-modal-close svg {
    width: 13rem;
  }
}.sec-goods-modal-close span,
.sec-map-modal-close span {
  font-weight: 500;
  font-size: 18px;
  line-height: 1;
  color: var(--g-color-white);
}@media screen and (max-width: 768px) {
  .sec-goods-modal-close span,
  .sec-map-modal-close span {
    font-size: 15rem;
  }
}.sec-goods-modal-inner,
.sec-map-modal-inner {
  position: relative;
  max-height: calc(100vh - 120px);
}.sec-goods-modal-container,
.sec-map-modal-container {
  overflow: visible;
  touch-action: none;
  transform-origin: center center;
  transition: transform 0.2s ease-out;
  cursor: zoom-in;
}.sec-goods-modal-container.is-zoomed,
.sec-map-modal-container.is-zoomed {
  cursor: zoom-out;
}.sec-goods-modal-container.is-zoomed.is-dragging,
.sec-map-modal-container.is-zoomed.is-dragging {
  cursor: grabbing;
  transition: none;
}.sec-goods-modal-container.is-dragging,
.sec-map-modal-container.is-dragging {
  transition: none;
}.sec-goods-modal-container img,
.sec-map-modal-container img {
  max-height: calc(100vh - 120px);
  object-fit: contain;
  user-select: none;
  -webkit-user-drag: none;
}.sec-goods-modal-container img,
.sec-map-modal-container img {
  width: 100%;
  height: auto;
  display: block;
}/* ===================== */
/* MAP Section           */
/* ===================== */

/* Map Image */
.sec-map-main {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 50px;
}@media screen and (max-width: 1400px) {
  .sec-map-main {
    max-width: 1000rem;
    padding: 0 50rem;
  }
}@media screen and (max-width: 768px) {
  .sec-map-main {
    padding: 0 28rem;
  }
}.sec-map-img {
  cursor: pointer;
  position: relative;
  transition: opacity 0.3s ease;
}.sec-map-img:hover {
  opacity: 0.8;
}.sec-map-img img {
  width: 100%;
  height: auto;
  display: block;
}
.sec-map-img .current_item_top::before{
  content: "";
  width: 134px;
  height: 87px;
  background: url(../img/slide_current_item.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  top: -20px;
  left: 0;
  transform: translateX(-55%);
  z-index: 5;
}
.sec-map-img .current_item_top::after{
  content: "";
  width: 134px;
  height: 87px;
  background: url(../img/slide_current_item.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  top: -20px;
  right: 0;
  transform: translateX(55%) scale(-1,1);
  z-index: 5;
}
.sec-map-img .current_item_bottom::before{
  content: "";
  width: 134px;
  height: 87px;
  background: url(../img/slide_current_item.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -20px;
  left: 0;
  transform: translateX(-55%) scale(1,-1);
  z-index: 5;
}
.sec-map-img .current_item_bottom::after{
  content: "";
  width: 134px;
  height: 87px;
  background: url(../img/slide_current_item.webp) center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: -20px;
  right: 0;
  transform: translateX(55%) scale(-1,-1);
  z-index: 5;
}
@media screen and (max-width: 768px) {
  .sec-map-img .current_item_top::before,
  .sec-map-img .current_item_top::after,
  .sec-map-img .current_item_bottom::before,
  .sec-map-img .current_item_bottom::after{
    width: 35px;
    height: 23px;
  }
  .sec-map-img .current_item_top::before,
  .sec-map-img .current_item_top::after{
    top: -5px;
  }
  .sec-map-img .current_item_bottom::before,
  .sec-map-img .current_item_bottom::after{
    bottom: -5px;
  }
}
.bottom_content{
  position: relative;
  z-index: 10;
  margin-top: -50px;
  padding-top: 6rem;
  padding-bottom: 6rem;
  overflow-x: hidden;
  background: url(../img/bottom_content_bg.webp) top center no-repeat;
  background-size: cover;
}
.bottom_content::before{
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/bottom_content_item.webp) bottom center no-repeat;
  background-size: 115%;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 5;
}
.bottom_content_ttl{
  width: 62.5%;
  max-width: 900px;
  margin: 0 auto 3rem;
}
.fade-bottom_content {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 1.5s ease, transform 1s ease;
}
.fade-bottom_content.show {
  opacity: 1;
  transform: translateY(0);
}
.bottom_content_img.fade-bottom_content{
  transition-delay: .7s;
}
@media screen and (max-width: 1400px) {
  .bottom_content{
    padding-top: 40rem;
    padding-bottom: 77rem;
  }
  .bottom_content_ttl{
    margin: 0 auto 30rem;
  }
}
@media screen and (max-width: 768px) {
  .bottom_content_ttl{
    width: 70%;
    margin: 0 auto 30rem;
  }
  .bottom_content{
    padding-top: 20rem;
    padding-bottom: 30rem;
  }
}
.links_block_bg_wihte{
  background: #fff;
  padding: 5px 0;
  z-index: 15;
  position: relative;
}
.links_block{
  z-index: 15;
  position: relative;
  width: 85%;
  margin: -8vw auto 5rem;
}
.links_block .links_block_flex{
  width: 100%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  max-width: 1000px;
  margin: 0 auto;
}
.links_block .links_block_flex .links_box{
  display: block;
  width:calc((100% - 40px) / 3);
  text-align: center;
}
.links_block .links_block_flex .links_box:hover{
  opacity: 0.7;
}
@media screen and (min-width: 1980px) {
  .links_block{
    margin: -15rem auto 5rem;
  }
  .links_block .links_block_flex{
    max-width: 1000px;
  }
}
@media screen and (max-width: 1400px) {
  .links_block{
    margin: -80rem auto 80rem;
  }
}
@media screen and (max-width: 768px) {
  .links_block{
    margin: -25rem auto 30rem;
  }
  .links_block .links_block_flex{
    gap: 10rem;
  }
  .links_block .links_block_flex .links_box{
    display: block;
    width: calc(50% - 5rem);
    text-align: center;
  }
  .links_block .links_block_flex .links_box:first-child{
    width: 100%;
  }
  .links_block .links_block_flex .links_box img{
    max-width: 157px;
  }
}
.years10_site_bnr{
  width: 85%;
  max-width: 630px;
  margin: 0 auto 5rem;
}
.years10_site_bnr a:hover{
  opacity: 0.7;
}
.ft_link{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2rem;
  max-width: 900px;
  margin: 0 auto;
}
.ft_link a{
  display: block;
  width: calc(46% - 1rem);
  transition: .3s;
}
.ft_link a:hover{
  opacity: 0.7;
  transform: scale(0.98);
}
@media screen and (max-width: 1400px) {
  .ft_link{
    gap: 20rem;
  }
}
@media screen and (max-width: 768px) {
  .ft_link{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 5rem;
    margin: 0 auto;
  }
  .ft_link a{
    display: block;
    width: calc(46% - 10rem);
  }
  .years10_site_bnr{
    width: 85%;
    max-width: 630px;
    margin: 0 auto 20rem;
  }
  .years10_site_bnr a:hover{
    opacity: 0.7;
  }
  .ft_link{
    gap: 20rem;
  }
  .ft_link a{
    width: calc(46% - 10rem);
  }
}
/* Movie: インライン再生用（参考: st-template-main準拠） */
.sec-movie__elem-video {
  position: relative;
  background-color: #000;
  width: 100%;
  height: 100%;
}
.sec-movie__elem-placeholder {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  cursor: pointer;
  touch-action: manipulation;
}
.sec-movie__elem-placeholder.hidden {
  display: none;
}
.sec-movie__elem-placeholder img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sec-movie__elem-play {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.sec-movie__elem-play-circle {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  align-items: center;
  justify-content: center;
}
.sec-movie__elem-play-icon {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 14px 0 14px 24px;
  border-color: transparent transparent transparent #fff;
  margin-left: 4px;
}
@media screen and (max-width: 768px) {
  .sec-movie__elem-play-circle {
    width: 50rem;
    height: 50rem;
  }
  .sec-movie__elem-play-icon {
    border-width: 9rem 0 9rem 15rem;
    margin-left: 3rem;
  }
}
.sec-movie__elem-iframe {
  position: absolute;
  inset: 0;
  z-index: 4;
}
.sec-movie__elem-iframe.is-hidden {
  display: none;
}
.sec-movie__elem-iframe iframe {
  width: 100%;
  height: 100%;
  border: 0;
}
.sec-movie__elem-close {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 10;
  width: 40px;
  height: 40px;
  background-color: rgba(0, 0, 0, 0.7);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border: none;
  outline: none;
}
.sec-movie__elem-close-icon {
  display: block;
  width: 16px;
  height: 16px;
  position: relative;
}
.sec-movie__elem-close-icon::before,
.sec-movie__elem-close-icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background: #fff;
}
.sec-movie__elem-close-icon::before {
  transform: rotate(45deg);
}
.sec-movie__elem-close-icon::after {
  transform: rotate(-45deg);
}
@media screen and (max-width: 768px) {
  .sec-movie__elem-close {
    width: 30rem;
    height: 30rem;
  }
  .sec-movie__elem-close-icon {
    width: 12rem;
    height: 12rem;
  }
}
/* iOS Safari: background-attachment: fixed 対応 */
.ios-fixed-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: url(../img/bg01.webp) center repeat;
  background-size: 36px;
  pointer-events: none;
  z-index: -1;
}