@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@800&family=Noto+Sans+JP:wght@400;500;700;900&display=swap");
@import url("https://cdn.jsdelivr.net/npm/yakuhanjp@3.4.1/dist/css/yakuhanjp-noto.min.css");
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@700&display=swap");
[data-simplebar] {
  position: relative;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-line-pack: start;
      align-content: flex-start;
  -ms-flex-align: start;
      align-items: flex-start;
}

.simplebar-wrapper {
  overflow: hidden;
  width: inherit;
  height: inherit;
  max-width: inherit;
  max-height: inherit;
}

.simplebar-mask {
  direction: inherit;
  position: absolute;
  overflow: hidden;
  padding: 0;
  margin: 0;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: auto !important;
  height: auto !important;
  z-index: 0;
}

.simplebar-offset {
  direction: inherit !important;
  box-sizing: inherit !important;
  resize: none !important;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0;
  margin: 0;
  -webkit-overflow-scrolling: touch;
}

.simplebar-content-wrapper {
  direction: inherit;
  box-sizing: border-box !important;
  position: relative;
  display: block;
  height: 100%;
  /* Required for horizontal native scrollbar to not appear if parent is taller than natural height */
  width: auto;
  max-width: 100%;
  /* Not required for horizontal scroll to trigger */
  max-height: 100%;
  /* Needed for vertical scroll to trigger */
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.simplebar-content-wrapper::-webkit-scrollbar,
.simplebar-hide-scrollbar::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}

.simplebar-content:before,
.simplebar-content:after {
  content: ' ';
  display: table;
}

.simplebar-placeholder {
  max-height: 100%;
  max-width: 100%;
  width: 100%;
  pointer-events: none;
}

.simplebar-height-auto-observer-wrapper {
  box-sizing: inherit !important;
  height: 100%;
  width: 100%;
  max-width: 1px;
  position: relative;
  float: left;
  max-height: 1px;
  overflow: hidden;
  z-index: -1;
  padding: 0;
  margin: 0;
  pointer-events: none;
  -ms-flex-positive: inherit;
      flex-grow: inherit;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-preferred-size: 0;
      flex-basis: 0;
}

.simplebar-height-auto-observer {
  box-sizing: inherit;
  display: block;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 1000%;
  width: 1000%;
  min-height: 1px;
  min-width: 1px;
  overflow: hidden;
  pointer-events: none;
  z-index: -1;
}

.simplebar-track {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  pointer-events: none;
  overflow: hidden;
}

[data-simplebar].simplebar-dragging .simplebar-content {
  pointer-events: none;
  -ms-user-select: none;
      user-select: none;
  -webkit-user-select: none;
}

[data-simplebar].simplebar-dragging .simplebar-track {
  pointer-events: all;
}

.simplebar-scrollbar {
  position: absolute;
  left: 0;
  right: 0;
  min-height: 10px;
}

.simplebar-scrollbar:before {
  position: absolute;
  content: '';
  background: rgba(0, 0, 0, 0.3);
  border-radius: 4px;
  left: 0px;
  right: 0px;
  transition: opacity 0.2s linear;
}

@media screen and (max-width: 768px) {
  .simplebar-scrollbar:before {
    border-radius: calc(2.5 / 10 * 1rem);
  }
}

.simplebar-scrollbar.simplebar-visible:before {
  /* When hovered, remove all transitions from drag handle */
  opacity: 1;
  transition: opacity 0s linear;
}

.simplebar-track.simplebar-vertical {
  top: 0;
  width: 8px;
  right: 0;
}

@media screen and (max-width: 768px) {
  .simplebar-track.simplebar-vertical {
    width: calc(5 / 10 * 1rem);
  }
}

.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
  top: 0px;
  bottom: 0px;
}

.simplebar-track.simplebar-horizontal {
  left: 0;
  height: 10px;
  background-color: #f3f3f5;
  border-radius: 5px;
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
  height: 100%;
  left: 0px;
  right: 0px;
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  right: auto;
  left: 0;
  top: 0px;
  height: 10px;
  min-height: 0;
  min-width: 10px;
  width: auto;
}

@media screen and (max-width: 768px) {
  .simplebar-track.simplebar-horizontal .simplebar-scrollbar {
    height: calc(12 / 10 * 1rem);
  }
}

/* Rtl support */
[data-simplebar-direction='rtl'] .simplebar-track.simplebar-vertical {
  right: auto;
  left: 0;
}

.hs-dummy-scrollbar-size {
  direction: rtl;
  position: fixed;
  opacity: 0;
  visibility: hidden;
  height: 500px;
  width: 500px;
  overflow-y: hidden;
  overflow-x: scroll;
}

.simplebar-hide-scrollbar {
  position: fixed;
  left: 0;
  visibility: hidden;
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.simplebar-scrollbar {
  opacity: 0;
  transition: opacity 0.3s ease 0.8s;
}

.simplebar-scrolling .simplebar-scrollbar {
  opacity: 1;
  transition: opacity 0s ease;
}

/* ==========================================================================
slick.js
========================================================================== */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:before, .slick-track:after {
  content: '';
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir='rtl'] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

@keyframes swing1 {
  0% {
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transform: rotate(0deg) translateY(0);
  }
  35% {
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    transform: rotate(5deg) translateY(-10px);
  }
  50% {
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transform: rotate(0deg) translateY(0);
  }
  85% {
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    transform: rotate(-5deg) translateY(-10px);
  }
  100% {
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transform: rotate(0deg) translateY(0);
  }
}

@keyframes swing2 {
  0% {
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transform: rotate(0deg) translateY(0);
  }
  35% {
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    transform: rotate(-5deg) translateY(-10px);
  }
  50% {
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transform: rotate(0deg) translateY(0);
  }
  85% {
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    transform: rotate(5deg) translateY(-10px);
  }
  100% {
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transform: rotate(0deg) translateY(0);
  }
}

@keyframes bounce {
  from,
  20%,
  53%,
  80%,
  to {
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    transform: translate3d(0, 0, 0);
  }
  40%,
  43% {
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
    transform: translate3d(0, -4px, 0);
  }
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
input,
textarea,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
main,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  box-sizing: border-box;
}

main,
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img, svg {
  vertical-align: top;
}

button,
input,
textarea,
select {
  font-family: inherit;
}

html {
  font-size: 10px;
}

@media screen and (max-width: 868px) {
  html {
    font-size: 1.15207vw;
  }
}

@media screen and (max-width: 768px) {
  html {
    font-size: 2.66667vw;
  }
}

:root {
  --vh: 0;
  --vhin: 0;
  --vhkv: 0;
  --key-color: #db5425;
}

body {
  overflow: hidden;
  color: #161616;
  background: #fff;
  font-family: YakuHanJP_Noto, "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  letter-spacing: 0.1em;
  line-height: 2.14286;
  -webkit-font-smoothing: antialiased;
  hanging-punctuation: allow-end;
  line-break: strict;
  word-break: break-word;
  font-feature-settings: "palt";
}

@media screen and (max-width: 768px) {
  body {
    font-size: 1.2rem;
  }
}

body.is-loaded {
  overflow: auto;
}

body.is-show-modal {
  overflow: hidden;
}

body.is-show-nav {
  overflow: hidden;
}

@media screen and (max-width: 768px) {
  body.is-show-nav, body.is-show-tel {
    overflow: hidden;
  }
}

.win body.is-show-nav {
  padding-right: 17px;
}

.android-app {
  margin-bottom: 92px;
}

a {
  outline: none;
  color: #161616;
  text-decoration: underline;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

@media screen and (min-width: 769px) {
  a:hover, a:active {
    text-decoration: none;
  }
}

img {
  max-width: 100%;
  pointer-events: none;
}

@media screen and (max-width: 768px) {
  img {
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  img {
    touch-callout: none;
    -webkit-user-select: none;
        -ms-user-select: none;
            user-select: none;
  }
}

::selection {
  background: #000;
  color: #fff;
}

.center-inline {
  text-align: center;
}

.slide-up-in {
  opacity: 0;
  transform: translateY(4rem) translateZ(0);
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
  will-change: opacity, transform;
  backface-visibility: hidden;
}

@media screen and (max-width: 768px) {
  .slide-up-in {
    transform: translateY(2rem);
  }
}

.slide-up-in.js-inview-first.is-inview-first:nth-of-type(1):before {
  transition-delay: 0.44s;
}

.slide-up-in.js-inview-first.is-inview-first:nth-of-type(2):before {
  transition-delay: 0.58s;
}

.slide-up-in.js-inview-first.is-inview-first:nth-of-type(3):before {
  transition-delay: 0.72s;
}

.slide-up-in.js-inview-first.is-inview-first:nth-of-type(4):before {
  transition-delay: 0.86s;
}

.slide-up-in.js-inview-first.is-inview-first:nth-of-type(5):before {
  transition-delay: 1s;
}

.slide-up-in.js-inview-first.is-inview-first:nth-of-type(6):before {
  transition-delay: 1.14s;
}

.slide-up-in.js-inview-first.is-inview-first:nth-of-type(7):before {
  transition-delay: 1.28s;
}

.slide-up-in.js-inview-first.is-inview-first:nth-of-type(8):before {
  transition-delay: 1.42s;
}

.slide-up-in.js-inview-first.is-inview-first:nth-of-type(9):before {
  transition-delay: 1.56s;
}

.slide-up-in.js-inview-first.is-inview-first:nth-of-type(10):before {
  transition-delay: 1.7s;
}

.slide-up-in.is-inview {
  opacity: 1;
  transform: translateY(0) translateZ(0);
}

.slide-up-in-top {
  opacity: 0;
  transform: translateY(4rem);
  transition: opacity 0s cubic-bezier(0.39, 0.575, 0.565, 1);
}

@media screen and (max-width: 768px) {
  .slide-up-in-top {
    transform: translateY(2rem);
  }
}

@media screen and (min-width: 769px) {
  .is-loaded .is-inview .slide-up-in-top {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
  }
}

@media screen and (max-width: 768px) {
  .is-loaded .slide-up-in-top.is-inview {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
  }
}

.slide-right-in {
  opacity: 0;
  transform: translateX(4rem);
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
}

@media screen and (max-width: 768px) {
  .slide-right-in {
    transform: translateX(1.5rem);
  }
}

.slide-right-in.is-inview {
  opacity: 1;
  transform: translateX(0);
}

.slide-right-in-item .js-inview-item {
  opacity: 0;
  transform: translateX(4rem);
  transition: opacity 0.2s cubic-bezier(0.39, 0.575, 0.565, 1), transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
}

@media screen and (max-width: 768px) {
  .slide-right-in-item .js-inview-item {
    transform: translateX(1.5rem);
  }
}

.slide-right-in-item .js-inview-item:nth-of-type(1) {
  transition-delay: 0s;
}

.slide-right-in-item .js-inview-item:nth-of-type(2) {
  transition-delay: 0.1s;
}

.slide-right-in-item .js-inview-item:nth-of-type(3) {
  transition-delay: 0.2s;
}

.slide-right-in-item .js-inview-item:nth-of-type(4) {
  transition-delay: 0.3s;
}

.slide-right-in-item .js-inview-item:nth-of-type(5) {
  transition-delay: 0.4s;
}

.slide-right-in-item .js-inview-item:nth-of-type(6) {
  transition-delay: 0.5s;
}

.slide-right-in-item .js-inview-item:nth-of-type(7) {
  transition-delay: 0.6s;
}

.slide-right-in-item.is-inview .js-inview-item {
  opacity: 1;
  transform: translateX(0);
}

.slide-up-back-in {
  opacity: 0;
  transform: translateY(6rem);
  transition: opacity 0.6s cubic-bezier(0.39, 0.575, 0.565, 1), transform 1s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

@media screen and (max-width: 768px) {
  .slide-up-back-in {
    transform: translateY(3rem);
  }
}

.slide-up-back-in.is-inview {
  opacity: 1;
  transform: translateY(0);
}

@media screen and (max-width: 768px) {
  .pcdisp {
    display: none !important;
  }
}

@media screen and (min-width: 769px) {
  .spdisp {
    display: none !important;
  }
}

.fit-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
}

.is-disabled {
  pointer-events: none;
  opacity: 0.3;
}

.is-hide {
  pointer-events: none;
  opacity: 0;
}

.en-sans {
  font-family: "Manrope", sans-serif;
  font-weight: 800;
}

.layout-container {
  position: relative;
  padding-top: 0;
}

@media screen and (max-width: 768px) {
  .layout-container {
    padding-top: 5.3rem;
  }
}

@media screen and (max-width: 768px) {
  #home .layout-container {
    padding-top: 8.9rem;
  }
}

@media screen and (min-width: 769px) {
  .layout-container.is-hidden-sponsor_header {
    padding-top: 7rem;
  }
}

@media screen and (min-width: 769px) {
  .mac.safari .layout-container {
    margin-top: 14rem;
  }
}

@media screen and (min-width: 769px) {
  .mac.safari .layout-container.is-hidden-sponsor_header {
    margin-top: 7rem;
  }
}

.layout-content > * {
  position: relative;
  z-index: 99;
}

#home .layout-content {
  position: relative;
  z-index: 99;
  background: #fff;
}

.layout-footer {
  background: #fff;
  position: relative;
}

.layout-footer__sponsorship {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  padding: 5rem 0;
}

@media screen and (max-width: 768px) {
  .layout-footer__sponsorship {
    -ms-flex-direction: column;
        flex-direction: column;
    -ms-flex-pack: start;
        justify-content: flex-start;
    -ms-flex-align: center;
        align-items: center;
    height: auto;
    padding: 3.6rem 1.6rem 0;
  }
}

.layout-footer__sponsorship-inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  padding: 1px 3rem;
  border: solid #A0A0A0;
  border-width: 0 1px;
}

@media screen and (max-width: 768px) {
  .layout-footer__sponsorship-inner {
    -ms-flex-direction: column;
        flex-direction: column;
    padding: 0 0 5rem;
    border: none;
  }
}

.layout-footer__sns {
  background: #000000;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  padding: 5rem 0 0;
}

@media screen and (max-width: 768px) {
  .layout-footer__sns {
    background: #000000;
    padding: 4rem 0 0;
  }
}

.layout-footer__inner {
  background: #000000;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  padding: 4rem 0 5rem;
}

@media screen and (max-width: 768px) {
  .layout-footer__inner {
    height: auto;
    padding: 3rem 0 4.5rem;
  }
}

.layout-footer-nav {
  color: #fff;
  font-size: 1.2rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  margin-bottom: 1rem;
}

@media screen and (max-width: 768px) {
  .layout-footer-nav {
    font-size: 1rem;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.layout-footer-nav__item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}

.layout-footer-nav__item a {
  font-size: 1.2rem;
  letter-spacing: 0.02em;
  color: #fff;
}

@media screen and (max-width: 768px) {
  .layout-footer-nav__item a {
    font-size: 1rem;
  }
}

.layout-footer-nav__item:nth-of-type(n + 2):before {
  content: '｜';
  display: inline-block;
  margin-right: 0.2rem;
  margin-left: 0.35rem;
}

.layout-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 7rem;
  z-index: 999;
}

@media screen and (min-width: 769px) {
  .layout-header {
    position: sticky;
  }
}

@media screen and (max-width: 768px) {
  .layout-header {
    background: #000000;
    height: 5.3rem;
  }
}

.layout-header__inner {
  position: relative;
  z-index: 2;
  background: #000000;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  width: 100%;
  height: 100%;
  border-bottom: 1px solid #707070;
}

@media screen and (max-width: 768px) {
  .layout-header:before {
    position: fixed;
    top: -10px;
    left: 0;
    width: 100%;
    height: 5.3rem;
    z-index: 1;
    content: '';
    background: #000000;
    opacity: 1;
  }
}

@media screen and (min-width: 769px) {
  .is-hidden-sponsor_header .layout-header {
    position: fixed;
    top: 0;
  }
}

@media screen and (min-width: 769px) {
  .mac.safari .layout-header {
    position: fixed;
    top: 7rem;
    transition: transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
}

@media screen and (min-width: 769px) {
  .mac.safari .is-hidden-sponsor_header .layout-header {
    top: 0;
  }
}

@media screen and (min-width: 769px) {
  .mac.safari .is-header-scrolled .layout-header {
    transform: translate(0, -7rem);
  }
}

@media screen and (min-width: 769px) {
  .mac.safari .is-header-scrolled .is-hidden-sponsor_header .layout-header {
    transform: translate(0, 0);
  }
}

html {
  font-size: 10px;
}

@media screen and (max-width: 868px) {
  html {
    font-size: 10px;
  }
}

@media screen and (max-width: 1280px) {
  html {
    font-size: 10px;
  }
}

@media screen and (max-width: 768px) {
  html {
    font-size: 2.66667vw;
  }
}

@media screen and (min-width: 769px) {
  html {
    -ms-scroll-chaining: none;
        overscroll-behavior: none;
  }
}

:root {
  --vwlp: 10px;
}

@media screen and (max-width: 1280px) {
  :root {
    --vwlp: calc((100svw - 375px) / (1280 - 375) * 10);
  }
}

/*
*   ヘッダーフッター非表示
*/
#lp .layout-header,
#lp .layout-footer,
#lp .sponsorship-header,
#lp .page-header,
#lp .local-nav,
#lp .layout-content .list-banner,
#lp .button-pagetop {
  display: none;
}

#lp .site-only {
  display: none;
}

#lp .layout-container {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

@media screen and (max-width: 768px) {
  #lp .layout-container {
    padding-top: 0;
  }
}

#lp .section.site-only + .section--padding-top-0 {
  padding-top: 4rem;
}

#lp .slide-up-in {
  opacity: 1 !important;
  transform: translateY(0) translateZ(0) !important;
}

#lp .section__heading-second:before {
  transform: scale(1, 1) !important;
  transition-delay: 0s !important;
}

#lp .flow-list__heading:before {
  transform: scale(1, 1) !important;
  transition-delay: 0s !important;
}

#lp .page-header__en, #lp .page-header__ja {
  opacity: 1 !important;
}

#lp .page-header__en-off, #lp .page-header__en-on {
  transform: translate(0, 0) !important;
}

#lp .page-header__en-off span, #lp .page-header__en-on span {
  transform: translate(0, 0) !important;
  transition-delay: 0s !important;
}

#lp .page-header__en-on {
  clip-path: inset(0 0 0 0) !important;
  opacity: 1 !important;
}

#lp .page-header__ja {
  color: #161616 !important;
  transform: translate(0, 0) !important;
}

#lp .page-header__ja-text {
  transform: translate(0, 0) !important;
}

#lp .page-header:after {
  transform: scale(1, 1) !important;
}

#lp {
  color: #fff;
  background-color: #07112D;
  letter-spacing: 0.02em;
}

@media screen and (min-width: 769px) {
  #lp {
    background-color: #fff;
    -ms-scroll-chaining: none;
        overscroll-behavior: none;
  }
}

#lp .lp-hero {
  position: relative;
  height: 87.2svh;
}

@media screen and (min-width: 769px) {
  #lp .lp-hero {
    height: 83.2svh;
  }
}

#lp .lp-hero-carousel {
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

#lp .lp-hero-carousel__image {
  height: 87.2svh;
  overflow: hidden;
}

@media screen and (min-width: 769px) {
  #lp .lp-hero-carousel__image {
    height: 83.2svh;
  }
}

#lp .lp-hero-carousel__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  max-width: 500%;
}

#lp .lp-hero .lp-hero-carousel__image {
  width: 37.5rem;
}

#lp .lp-hero .lp-hero-carousel__image img {
  width: 100%;
  height: 101%;
  object-fit: cover;
}

@keyframes trnslt {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-3.6rem);
  }
}

#lp .lp-hero__inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  width: 100%;
  height: 100%;
  padding-top: 1.4rem;
  padding-top: calc(100svh / 561 * 95);
}

#lp .lp-hero__logo {
  width: 30.2rem;
  height: 16.4rem;
  max-width: calc(100svh / 561 * 302);
  max-height: calc(100svh / 561 * 164);
}

#lp .lp-hero__copy {
  position: absolute;
  right: 1.5rem;
  top: 1.3rem;
  color: #fff;
  font-family: "Zen Kaku Gothic New";
  font-size: 1.4rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
}

#lp .lp-hero__date {
  color: #fff;
  font-size: 2.1rem;
  line-height: 1.38095;
  font-weight: 700;
  text-align: center;
  letter-spacing: -0.01em;
  margin-top: calc(100svh / 561 * 100);
}

#lp .lp-hero__date small {
  font-size: 1.4rem;
}

#lp .lp-hero__place {
  color: #fff;
  font-size: 1.3rem;
  line-height: calc(18 / 13);
  font-weight: 700;
  text-align: center;
  margin-top: calc(100svh / 561 * 9);
}

#lp .lp-about {
  position: relative;
  height: 52rem;
}

#lp .lp-about__heading {
  position: absolute;
  left: 1.1rem;
  top: 2.5rem;
  display: block;
  width: 1rem;
  height: 25.1rem;
}

#lp .lp-about__inner {
  padding: 8.2rem 0 0 5.5rem;
}

#lp .lp-about__text {
  color: #fff;
  font-family: 'Zen Kaku Gothic New';
  font-size: 1.7rem;
  line-height: calc(50 / 17);
  letter-spacing: 0.11em;
  display: block;
}

#lp .lp-about__text-line {
  display: inline-block;
  width: 3.6rem;
  height: 1px;
  background: #FF642E;
  margin-left: 0.4rem;
  vertical-align: middle;
  translate: 0 -0.15em;
}

#lp .lp-about__image-balloon {
  position: absolute;
  right: 0.2rem;
  top: 0.7rem;
  display: block;
  width: 9.7rem;
  height: 11.85rem;
}

#lp .lp-about__image-people {
  position: absolute;
  left: 2.8rem;
  bottom: 1.2rem;
  display: block;
  width: 22.6rem;
  height: 20.5rem;
}

#lp .lp-detail {
  position: relative;
}

#lp .lp-detail__image {
  height: 16rem;
}

#lp .lp-detail__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#lp .lp-detail__inner {
  position: relative;
  overflow: hidden;
  padding: 0 2rem 4rem;
}

#lp .lp-detail__heading {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

#lp .lp-detail__heading-text {
  display: block;
}

#lp .lp-detail__heading-image {
  display: block;
}

#lp .lp-detail__text {
  font-size: 1.2rem;
  line-height: 2.66667;
  font-weight: 700;
  text-align: justify;
  letter-spacing: 0.04em;
}

#lp .lp-detail__text-arrow {
  scale: 0.7;
  vertical-align: middle;
  translate: 0 -0.1em;
  display: inline-block;
  margin: 0 0.05em;
}

#lp .lp-detail__text--narrow {
  letter-spacing: 0.01em;
}

#lp .lp-detail__button {
  margin-top: 6rem;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}

#lp .lp-detail__button a {
  color: #07112D;
  background: #FF642E;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-decoration: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  width: 16.1rem;
  height: 4.2rem;
  border-radius: 2.1rem;
  padding-left: 1.5rem;
  filter: drop-shadow(0px 0.5rem 0.7rem rgba(0, 0, 0, 0.15));
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}

#lp .lp-detail__button a.is-on {
  opacity: 0.6;
}

#lp .lp-detail__button a:after {
  width: 1.2rem;
  height: 1.2rem;
  background: url(../img/lp-cdj2526/icn_arrow_black.svg) no-repeat center center/contain;
  margin-left: 1.7rem;
  content: '';
}

#lp .lp-detail__image-deco {
  position: absolute;
}

#lp .lp-detail__note {
  font-size: 1rem;
  line-height: calc(14 / 10);
  text-align: right;
  color: #fff;
  position: absolute;
  right: 1.5rem;
  bottom: 1.5rem;
}

#lp .lp-detail#access .lp-detail__heading {
  padding-top: 2.4rem;
  padding-bottom: 1.2rem;
}

#lp .lp-detail#access .lp-detail__heading-text {
  width: 25.5rem;
  height: 3.8rem;
}

#lp .lp-detail#access .lp-detail__heading-image {
  width: 6.2rem;
  height: 5rem;
  margin-left: 1.6rem;
}

#lp .lp-detail#access .lp-detail__image-deco {
  right: 0.5rem;
  bottom: 0rem;
  width: 9.9rem;
  height: 10rem;
}

#lp .lp-detail#artist .lp-detail__heading {
  padding-top: 1.5rem;
  padding-bottom: 0.1rem;
}

#lp .lp-detail#artist .lp-detail__heading-text {
  width: 22.8rem;
  height: 3.8rem;
}

#lp .lp-detail#artist .lp-detail__heading-image {
  width: 5.95rem;
  height: 7rem;
  margin-left: -0.2rem;
}

#lp .lp-detail#artist .lp-detail__image-deco {
  right: -0.3rem;
  bottom: 0rem;
  width: 8.4rem;
  height: 9.8rem;
}

#lp .lp-detail#enjoy .lp-detail__heading {
  padding-top: 1.2rem;
}

#lp .lp-detail#enjoy .lp-detail__heading-text {
  width: 21.4rem;
  height: 3.8rem;
}

#lp .lp-detail#enjoy .lp-detail__heading-image {
  width: 6.9rem;
  height: 6.9rem;
  margin-left: 0.3rem;
  margin-top: 0.5rem;
}

#lp .lp-detail#enjoy .lp-detail__image-deco {
  left: 1.9rem;
  bottom: 1.2rem;
  width: 10.2rem;
  height: 7rem;
}

#lp .lp-detail#enjoy .lp-detail__inner {
  padding-bottom: 10rem;
}

#lp .lp-detail#ticket .lp-detail__heading {
  padding-top: 2.9rem;
  padding-bottom: 1.8rem;
}

#lp .lp-detail#ticket .lp-detail__heading-text {
  width: 22.3rem;
  height: 3.8rem;
}

#lp .lp-detail#ticket .lp-detail__heading-image {
  width: 7.3rem;
  height: 3.6rem;
  margin-left: 1.2rem;
}

#lp .lp-detail#ticket .lp-detail__image-deco {
  left: 0;
  bottom: -1.2rem;
  width: 13.35rem;
  height: 10.4rem;
}

#lp .lp-detail#ticket .lp-detail__button {
  margin-top: 5.8rem;
}

#lp .lp-detail#ticket .lp-detail__inner {
  padding-bottom: 5rem;
}

#lp .lp-gallery {
  position: relative;
}

#lp .lp-gallery__copy {
  position: absolute;
  z-index: 9;
  left: 50%;
  top: calc(50% + 0.3rem);
  width: 35.9rem;
  height: 10.5rem;
  translate: -50% -50%;
  filter: drop-shadow(0px 0.2rem 0.5rem rgba(0, 0, 0, 0.2));
}

#lp .lp-gallery-carousel {
  width: 100%;
}

#lp .lp-gallery-carousel .slick-slide {
  line-height: 0;
}

#lp .lp-gallery-carousel:nth-of-type(n + 2) {
  margin-top: 1rem;
}

#lp .lp-gallery__image {
  width: 17.5rem;
  height: 11rem;
}

#lp .lp-button-ticket {
  position: sticky;
  z-index: 999;
  bottom: 1.7rem;
  right: 0;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  transition: bottom 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}

#lp .lp-button-ticket a {
  position: relative;
  color: #FF642E;
  background: #2760A8;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-decoration: none;
  text-align: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  width: 17.2rem;
  height: 4.2rem;
  padding-left: 1rem;
  border-radius: 2.1rem 0 0 2.1rem;
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}

#lp .lp-button-ticket a.is-on {
  opacity: 0.6;
}

#lp .lp-button-ticket a:before {
  position: absolute;
  right: 1.6rem;
  top: 1.6rem;
  width: 1.2rem;
  height: 1.2rem;
  background: url(../img/lp-cdj2526/icn_arrow.svg) no-repeat center center/contain;
  content: '';
}

#lp .lp-button-ticket-icon {
  position: absolute;
  left: 2.1rem;
  top: 1.1rem;
  width: 2.4rem;
  height: 1.7rem;
}

#lp .lp-button-pagetop {
  position: fixed;
  z-index: 99;
  bottom: 6.6rem;
  right: 1rem;
}

@media screen and (min-width: 769px) {
  #lp .lp-button-pagetop {
    right: calc(50% - 37.5rem / 2 + 1.6rem);
  }
}

#lp .lp-button-pagetop a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  background: #6A6A6A;
  width: 3.5rem;
  height: 3.5rem;
  padding-top: 0.6rem;
  border-radius: 50%;
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}

#lp .lp-button-pagetop a.is-on {
  opacity: 0.6;
}

#lp .lp-button-pagetop a:before {
  content: '';
  display: block;
  width: 1.4rem;
  height: 1.4rem;
  border: solid #fff;
  border-width: 0.3rem 0.3rem 0 0;
  box-sizing: border-box;
  transform: rotate(-45deg);
}

#lp .lp-button-pagetop {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
}

#lp.is-scrolled .lp-button-pagetop {
  opacity: 1;
  pointer-events: auto;
}

#lp .lp-sp-container {
  position: relative;
  background: #07112D;
  width: 37.5rem;
  margin: 0 auto;
}

#lp .lp-pc-bg {
  position: fixed;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #fff url(../img/lp-cdj2526/bg_pc.jpg) no-repeat center center/cover;
}

@media screen and (max-width: 768px) {
  #lp .lp-pc-bg {
    display: none;
  }
}

#lp .lp-pc-bg:before {
  background: #2760A8;
  position: fixed;
  z-index: 9;
  left: 50%;
  top: 0;
  width: 37.4rem;
  height: 100%;
  translate: -50% 0;
  content: '';
  box-shadow: 0px 0px 25px rgba(0, 0, 0, 0.25);
}

#lp .lp-pc-bg__line {
  color: #FF642E;
  background: #000000;
  position: absolute;
  z-index: 2;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.06em;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  width: 100%;
  height: 5.5rem;
  white-space: nowrap;
}

#lp .lp-pc-bg__line .slick-list {
  height: 100%;
}

#lp .lp-pc-bg__line .slick-list .slick-track {
  height: 100%;
}

#lp .lp-pc-bg__line .slick-list .slick-slide div {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  height: 100%;
  padding-bottom: 0.4rem;
}

#lp .lp-pc-bg__line small {
  font-size: 1.6rem;
}

#lp .lp-pc-bg__line--top {
  top: 0;
  left: 0;
}

#lp .lp-pc-bg__line--bottom {
  bottom: 0;
  left: 0;
}

#lp .nav-lp {
  position: fixed;
  left: calc(50% + 37.5rem / 2 + var(--vwlp) * 7.7);
  top: calc(100svh / 800 * 144);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  gap: calc(100svh / 800 * (44 - 3 * 2)) 0;
}

@media screen and (max-width: 1000px) {
  #lp .nav-lp {
    left: calc(50% + 37.5rem / 2 + var(--vwlp) * 45.2 / 2);
    translate: -50% 0;
  }
}

@media screen and (max-width: 768px) {
  #lp .nav-lp {
    display: none;
  }
}

#lp .nav-lp__item {
  line-height: 0;
}

#lp .nav-lp__item a {
  display: inline-block;
  height: 2.4rem;
  padding: 0.4rem 0.5rem 0.3rem 0.5rem;
}

#lp .nav-lp__item a img {
  width: auto;
  height: 100%;
  max-width: 100vw;
}

#lp .nav-lp__item.is-current a {
  background: #FF642E;
}

#lp .nav-lp__item--about {
  margin-bottom: calc(100svh / 800 * -4);
}

#lp .nav-lp__item--about a {
  height: 4.9rem;
  padding: 0;
}

#lp .nav-lp__item--about .nav-img {
  display: block;
}

#lp .nav-lp__item--about .nav-img-on {
  display: none;
}

#lp .nav-lp__item--about.is-current a {
  background: transparent;
}

#lp .nav-lp__item--about.is-current .nav-img {
  display: none;
}

#lp .nav-lp__item--about.is-current .nav-img-on {
  display: block;
}

#lp .lp-logo-pc {
  position: fixed;
  right: calc(50% + 37.5rem / 2 + var(--vwlp) * 50 / 10);
  top: calc(100svh / 800 * 148);
  width: calc(var(--vwlp) * 284 / 10);
}

@media screen and (max-width: 768px) {
  #lp .lp-logo-pc {
    display: none;
  }
}

#lp .lp-footer {
  background: #07112D;
}

#lp .lp-footer__sns {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  padding: 4rem 0 0;
}

#lp .lp-footer__inner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  height: auto;
  padding: 3rem 0 4.5rem;
}

#lp .lp-copyright {
  color: #fff;
  font-size: 1rem;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.01em;
  text-align: center;
}

#lp .lp-sns {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

#lp .lp-sns__heading {
  font-family: "Manrope", sans-serif;
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.03em;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

#lp .lp-sns__heading:after {
  content: '';
  background: #000000;
  display: inline-block;
  width: 2.4rem;
  height: 1px;
  margin-left: 1.2rem;
}

#lp .lp-sns .list-lp-sns {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

#lp .lp-sns .list-lp-sns__item:nth-of-type(n + 2) {
  margin-left: 1.4rem;
}

#lp .lp-sns .list-lp-sns__item a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  width: 2.6rem;
  height: 2.3rem;
  transition: opacity 0.1s cubic-bezier(0.39, 0.575, 0.565, 1);
}

#lp .lp-sns .list-lp-sns__item a img {
  max-height: 100%;
  width: auto;
}

#lp .lp-sns .list-lp-sns__item a.is-on {
  opacity: 0.5;
}
