/* stylelint-disable no-descending-specificity */
@media (min-width: 768px) and (max-width: 1200px) {
  html {
    font-size: 0.8333333333vw;
  }
}

.main-area {
  min-width: initial;
  max-width: initial;
  overflow: unset;
}

.landingPage {
  --color-white: #fff;
  --color-blue: #f1f9f9;
  --color-orange: #ffd691;
  --color-green: #dcdb84;
  --font-elza: 'elza', sans-serif;
  --font-trajan: 'trajan-sans-pro', sans-serif;
}

.landingPage * {
  box-sizing: border-box;
  font-feature-settings: 'palt';
}

.landingPage img,
.landingPage picture {
  display: block;
}

.landingPage a {
  display: inline-block;
}

.landingPage button {
  padding: 0;
}

.landingPage img,
.landingPage svg {
  width: 100%;
  height: auto;
  image-rendering: -webkit-optimize-contrast;
}

.landingPage .js-blur {
  opacity: 0;
  transition: transform 0.5s linear;
  animation-duration: 1.5s;
  animation-fill-mode: both;
}

.landingPage .js-blur.inview {
  opacity: 1;
  transition: 0.8s;
  animation-name: imageBlur;
}
@media (min-width: 768px) {
  .landingPage .js-blur-desktop {
    opacity: 0;
    transition: transform 0.5s linear;
    animation-duration: 1.5s;
    animation-fill-mode: both;
  }

  .landingPage .js-blur-desktop.inview {
    opacity: 1;
    transition: 0.8s;
    animation-name: imageBlur;
  }
}
@keyframes imageBlur {
  from {
    filter: blur(15px);
    opacity: 0;
  }

  to {
    filter: blur(0px);
    opacity: 1;
  }
}
@media (max-width: 767px) {
  .landingPage {
    --util: 100vw / 750;
  }

  .landingPage .without-mobile {
    display: none;
  }
}
@media (min-width: 768px) {
  .landingPage {
    --util: 100vw / 1200;
  }

  .landingPage .without-desktop {
    display: none;
  }
}

.landingPage .hero__inner {
  position: relative;
}

.landingPage .hero-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}

.landingPage .hero-button {
  position: absolute;
  z-index: 10;
  cursor: pointer;
}
@media (max-width: 767px) {
  .landingPage .hero-button {
    right: calc(20 * var(--util));
    bottom: calc(21 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .hero-button {
    right: calc(15 * var(--util));
    bottom: calc(14 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .hero-button__inner {
    width: calc(50 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .hero-button__inner {
    display: grid;
    grid-template-columns: calc(30 * var(--util)) calc(30 * var(--util));
    column-gap: 8px;
  }
}
@media (min-width: 768px) {
  .landingPage .hero-button__inner button {
    opacity: 0.5;
    transition: opacity 0.3s ease;
  }
}

.landingPage .hero-button__on.is-active,
.landingPage .hero-button__off.is-active {
  opacity: 1;
}

.landingPage .contents {
  position: relative;
}
@media (min-width: 768px) {
  .landingPage .contents {
    padding-block: calc(30 * var(--util));
  }
}

.landingPage .contents--01 {
  background-color: var(--color-blue);
}

.landingPage .contents--01 .contents-desc__inner {
  --desc-display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .landingPage .contents--01 .contents-desc__inner {
    justify-content: space-between;
    padding-top: calc(55 * var(--util));
    padding-right: calc(49 * var(--util));
    padding-left: calc(37 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents--01 .contents-desc__inner {
    justify-content: space-between;
    padding-top: calc(46 * var(--util));
    padding-right: calc(59 * var(--util));
    padding-left: calc(46 * var(--util));
  }
}

.landingPage .contents--02 {
  background-color: var(--color-blue);
}
@media (max-width: 767px) {
  .landingPage .contents--02 {
    position: sticky;
    top: calc(-2180 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents--02 {
    padding-top: calc(159 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--02 .contents__unit:first-child {
    padding-top: calc(193 * var(--util));
    padding-left: calc(200 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents--02 .contents__credits {
    --credits-lh: 1.8;
  }
}

.landingPage .contents--03 {
  background-color: var(--color-blue);
}
@media (max-width: 767px) {
  .landingPage .contents--03 .contents__unit:first-child {
    padding: calc(50 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--03 .contents__credits {
    --credits-pi: calc(80 * var(--util));
    --credits-b: calc(72 * var(--util));
  }
}

.landingPage .contents--04 {
  background: linear-gradient(
    to bottom,
    var(--color-blue) 0%,
    var(--color-blue) 50%,
    var(--color-orange) 50%,
    var(--color-orange) 100%
  );
}
@media (max-width: 767px) {
  .landingPage .contents--04 {
    position: sticky;
    top: 0;
    padding-block: calc(200 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--04 .contents__unit {
    padding-bottom: calc(102 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents--04 .contents__unit {
    position: unset;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--04 .contents__unit:first-child {
    grid-row: 1;
    grid-column: 1;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--04 .contents__unit:first-child .contents__credits {
    --credits-b: calc(100% / 2 + calc(136 * var(--util)));
    --credits-pi: calc(52 * var(--util));
    right: 0;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--04 .contents__unit:nth-child(2) {
    grid-row: 1;
    grid-column: 2;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--04 .contents__unit:nth-child(2) .contents__credits {
    --credits-b: calc(100% / 2 + calc(20 * var(--util)));
    --credits-pi: calc(52 * var(--util));
    right: 0;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--04 .contents__unit:nth-child(3) {
    grid-row: 2;
    grid-column: 2;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--04 .contents__unit:nth-child(3) .contents__credits {
    --credits-b: calc(2 * var(--util));
    --credits-pi: calc(43 * var(--util));
    right: 0;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--04 .contents__unit:last-child {
    grid-row: 2;
    grid-column: 1;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--04 .contents__unit:last-child .contents__credits {
    --credits-b: calc(117 * var(--util));
    --credits-pi: calc(52 * var(--util));
    right: 0;
  }
}
@media (max-width: 767px) {
  .landingPage .contents--04 .contents__credits {
    --credits-b: 0;
    --credits-pi: 0;
  }
}

.landingPage .contents--05 {
  background: var(--color-orange);
}
@media (max-width: 767px) {
  .landingPage .contents--05 {
    position: sticky;
    top: calc(-800 * var(--util));
    padding-top: calc(44 * var(--util));
    padding-bottom: calc(100 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--05 .contents__unit {
    position: initial;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--05 .contents__unit:first-child {
    display: grid;
    place-content: center;
  }
}
@media (max-width: 767px) {
  .landingPage .contents--05 .contents__unit:nth-child(3) {
    padding-bottom: calc(107 * var(--util));
    padding-left: calc(195 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents--05 .contents__unit:nth-child(3) {
    padding-top: calc(190 * var(--util));
    padding-right: calc(444 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents--05 .contents__unit:nth-child(3) .contents__image {
    --image-w: calc(400 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--05 .contents__credits {
    --credits-b: 0;
    --credits-pi: calc(195 * var(--util)) 0;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--05 .contents__credits {
    --credits-pi: calc(43 * var(--util));
    right: 0;
    justify-content: end;
  }
}
@media (max-width: 767px) {
  .landingPage .contents--05 .contents-desc {
    padding-right: calc(40 * var(--util));
    padding-bottom: calc(61 * var(--util));
    padding-left: calc(46 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents--05 .contents-desc {
    position: absolute;
    top: calc(50% - 226 * var(--util));
    left: calc(50% + -422 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--05 .contents-desc__inner {
    --desc-display: flex;
    align-items: center;
    justify-content: space-between;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--05 .contents-desc__text--sub {
    padding-top: calc(10 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--06 {
    position: sticky;
    top: calc(-720 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--06 .contents__unit {
    position: relative;
  }
}
@media (max-width: 767px) {
  .landingPage .contents--06 .contents__unit:nth-child(2) {
    padding-right: calc(195 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--06 .contents__credits {
    --credits-pi: calc(28 * var(--util));
    --credits-b: calc(26 * var(--util));
    right: 0;
  }
}
@media (max-width: 767px) {
  .landingPage .contents--07 .contents__credits {
    --credits-pi: calc(28 * var(--util));
    --credits-b: calc(26 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--08 .contents__unit:first-child {
    padding-right: calc(200 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents--08 .contents__image {
    --image-w: calc(400 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--08 .contents__credits {
    --credits-pi: calc(29 * var(--util));
    right: calc(200 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents--08 .contents__credits {
    --credits-h: calc(525 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--09 .contents__unit:first-child {
    padding-block: calc(120 * var(--util));
    padding-inline: calc(50 * var(--util));
  }
}

.landingPage .contents--06,
.landingPage .contents--07,
.landingPage .contents--08,
.landingPage .contents--09 {
  background: var(--color-orange);
}

.landingPage .contents--10 {
  background: linear-gradient(
    to bottom,
    var(--color-orange) 0%,
    var(--color-orange) 50%,
    var(--color-green) 50%,
    var(--color-green) 100%
  );
}
@media (max-width: 767px) {
  .landingPage .contents--10 {
    position: sticky;
    top: 0;
    padding-block: calc(200 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--10 .contents__unit {
    padding-bottom: calc(101 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents--10 .contents__unit {
    position: unset;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--10 .contents__unit:first-child {
    grid-row: 2;
    grid-column: 1/3;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--10 .contents__unit:first-child .contents__credits {
    --credits-b: calc(6 * var(--util));
    --credits-pi: calc(59 * var(--util));
    right: 0;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--10 .contents__unit:first-child .contents__image--fade {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    width: 100%;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--10 .contents__unit:first-child .contents__image--fade picture {
    position: relative;
  }
}

.landingPage .contents--10 .contents__unit:first-child .contents__image--fade picture:nth-child(2) {
  animation: none;
}
@media (min-width: 768px) {
  .landingPage .contents--10 .contents__unit:nth-child(2) {
    grid-row: 1;
    grid-column: 1;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--10 .contents__unit:nth-child(2) .contents__credits {
    --credits-b: calc(100% / 2 + calc(120 * var(--util)));
    --credits-pi: calc(49 * var(--util));
    right: 0;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--10 .contents__unit:last-child {
    grid-row: 1;
    grid-column: 2;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--10 .contents__unit:last-child .contents__credits {
    --credits-b: calc(100% / 2 + calc(20 * var(--util)));
    --credits-pi: calc(50 * var(--util));
    right: 0;
  }
}
@media (max-width: 767px) {
  .landingPage .contents--10 .contents__credits {
    --credits-b: 0;
    --credits-pi: 0;
  }
}
@media (max-width: 767px) {
  .landingPage .contents--11 .contents__credits {
    --credits-pi: calc(27 * var(--util));
    right: 0;
  }
}
@media (max-width: 767px) {
  .landingPage .contents--12 {
    position: sticky;
    top: calc(-937 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--12 .contents__unit {
    position: initial;
  }
}
@media (max-width: 767px) {
  .landingPage .contents--12 .contents__unit:first-child {
    padding-right: calc(200 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--13 .contents__unit:first-child {
    padding: calc(50 * var(--util));
  }
}

.landingPage .contents--14 {
  position: sticky;
}
@media (min-width: 768px) {
  .landingPage .contents--14 {
    top: calc(-100 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--14 {
    top: 0;
    padding-bottom: calc(145 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--14 .contents__unit:first-child {
    padding-left: calc(200 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents--14 .contents__image {
    --image-w: calc(400 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents--14 .contents__credits {
    --credits-b: calc(6 * var(--util));
    --credits-pi: calc(22 * var(--util));
    right: 0;
  }
}
@media (min-width: 768px) {
  .landingPage .contents--14 .contents__credits {
    --credits-h: calc(525 * var(--util));
  }
}

.landingPage .contents--11,
.landingPage .contents--12,
.landingPage .contents--13,
.landingPage .contents--14 {
  background: var(--color-green);
}

.landingPage .contents__block {
  position: relative;
}
@media (min-width: 768px) {
  .landingPage .contents__block--grid {
    display: grid !important;
    grid-template-rows: calc(600 * var(--util)) calc(600 * var(--util));
    grid-template-columns: calc(400 * var(--util)) calc(400 * var(--util)) 1fr;
  }
}
@media (max-width: 767px) {
  .landingPage .contents__unit {
    position: relative;
  }
}

.landingPage .contents__unit--sticky {
  position: sticky;
  top: 0;
  width: 100%;
}
@media (min-width: 768px) {
  .landingPage .contents__unit--sticky {
    height: 100dvh;
    padding-block: calc(50 * var(--util));
    pointer-events: none;
  }
}

.landingPage .contents__unit--image {
  display: grid;
  place-content: center;
}
@media (min-width: 768px) {
  .landingPage .contents__unit--image {
    z-index: 2;
  }
}

.landingPage .contents__image {
  line-height: 0;
  background-color: var(--color-white);
}
@media (min-width: 768px) {
  .landingPage .contents__image {
    width: var(--image-w, calc(473 * var(--util)));
    pointer-events: auto;
  }
}

.landingPage .contents__image--fade {
  position: relative;
  display: inline-block;
  overflow: hidden;
}
@media (max-width: 767px) {
  .landingPage .contents__image--fade {
    width: calc(550 * var(--util));
    height: calc(825 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents__image--fade {
    width: calc(400 * var(--util));
    height: calc(600 * var(--util));
  }
}

.landingPage .contents__image--fade picture {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.landingPage .contents__image--fade picture:nth-child(2) {
  animation: crossfade 6s infinite ease;
}
@keyframes crossfade {
  0% {
    opacity: 1;
  }

  25% {
    opacity: 1;
  }

  50% {
    opacity: 0;
  }

  75% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.landingPage .contents__credits {
  position: absolute;
  font-family: var(--font-elza);
  letter-spacing: 0.07em;
}
@media (max-width: 767px) {
  .landingPage .contents__credits {
    bottom: var(--credits-b, calc(22 * var(--util)));
    padding-inline: var(--credits-pi, calc(30 * var(--util)));
    font-size: calc(16 * var(--util));
    line-height: 1.625;
  }
}
@media (min-width: 768px) {
  .landingPage .contents__credits {
    bottom: var(--credits-b, 0);
    z-index: 3;
    padding-inline: var(--credits-pi, calc(46 * var(--util)));
    margin-block: auto;
    font-size: calc(10 * var(--util));
    line-height: var(--credits-lh, 2.2);
  }
}
@media (min-width: 768px) {
  .landingPage .contents__credits__inner {
    pointer-events: auto;
  }
}
@media (min-width: 768px) {
  .landingPage .contents__credits--fit {
    top: calc(15 * var(--util));
    display: flex;
    align-items: end;
    height: var(--credits-h, calc(620 * var(--util)));
  }
}

.landingPage .contents__credit {
  display: inline-block;
}
@media (max-width: 767px) {
  .landingPage .contents__credit + .contents__credit {
    padding-left: calc(10 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents__credit + .contents__credit {
    padding-left: calc(4 * var(--util));
  }
}

.landingPage .contents-desc__inner {
  display: var(--desc-display, block);
}

.landingPage .contents-desc__text {
  font-family: var(--font-trajan);
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .landingPage .contents-desc__text--main {
    font-size: var(--main-text-fz, calc(23 * var(--util)));
  }
}
@media (min-width: 768px) {
  .landingPage .contents-desc__text--main {
    font-size: var(--main-text-fz, calc(19 * var(--util)));
  }
}
@media (max-width: 767px) {
  .landingPage .contents-desc__text--sub {
    font-size: var(--sub-text-fz, calc(17 * var(--util)));
    line-height: 1.3294117647;
  }
}
@media (min-width: 768px) {
  .landingPage .contents-desc__text--sub {
    font-size: var(--sub-text-fz, calc(14 * var(--util)));
    line-height: 1.6142857143;
  }
}

.landingPage .contents-list {
  position: relative;
  background-color: var(--color-blue);
}
@media (max-width: 767px) {
  .landingPage .contents-list {
    padding-top: calc(87 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents-list {
    padding-top: calc(135 * var(--util));
  }
}

.landingPage .contents-list__block {
  display: grid;
}
@media (max-width: 767px) {
  .landingPage .contents-list__block {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 768px) {
  .landingPage .contents-list__block {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 767px) {
  .landingPage .contents-list__unit:first-child {
    grid-column: 1 / span 2;
    padding-right: calc(47 * var(--util));
    padding-bottom: calc(38 * var(--util));
    padding-left: calc(42 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents-list__unit:first-child {
    grid-column: 1 / span 4;
    padding-right: calc(60 * var(--util));
    padding-bottom: calc(50 * var(--util));
    padding-left: calc(46 * var(--util));
  }
}

.landingPage .contents-list__image {
  line-height: 0;
}

.landingPage .contents-list__image img {
  object-fit: cover;
}
@media (min-width: 768px) {
  .landingPage .contents-list__image img {
    aspect-ratio: 300/450;
  }
}

.landingPage .contents-list .contents-desc__inner {
  --desc-display: flex;
  align-items: center;
  justify-content: space-between;
}
@media (min-width: 768px) {
  .landingPage .contents-list .contents-desc__text--main {
    --main-text-fz: calc(23 * var(--util));
  }
}

.landingPage .contents-foot {
  position: relative;
  background-color: var(--color-blue);
}
@media (max-width: 767px) {
  .landingPage .contents-foot {
    padding-block: calc(199 * var(--util));
    padding-inline: calc(40 * var(--util)) calc(46 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents-foot {
    padding-inline: calc(48 * var(--util));
    padding-top: calc(71 * var(--util));
    padding-bottom: calc(99 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .contents-foot .contents-desc__inner {
    --desc-display: flex;
    justify-content: space-between;
  }
}
@media (min-width: 768px) {
  .landingPage .contents-foot .contents-desc__text--main {
    --main-text-fz: calc(23 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents-foot .contents-desc__text--sub {
    padding-top: calc(13 * var(--util));
    --sub-text-fz: calc(17 * var(--util));
    line-height: 1.3294;
  }
}
@media (max-width: 767px) {
  .landingPage .contents-credit {
    margin-top: calc(149 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .contents-credit {
    margin-top: calc(70 * var(--util));
  }
}

.landingPage .contents-credit__desc {
  font-family: var(--font-elza);
  letter-spacing: 0.06em;
}
@media (max-width: 767px) {
  .landingPage .contents-credit__desc {
    font-size: calc(16 * var(--util));
    line-height: 1.75;
  }
}
@media (min-width: 768px) {
  .landingPage .contents-credit__desc {
    font-size: calc(10 * var(--util));
    line-height: 2.2;
  }
}

@media (max-width: 767px) {
  .splide__pagination {
    right: calc(104 * var(--util));
    bottom: calc(262 * var(--util));
    left: initial;
    column-gap: calc(18 * var(--util));
    padding: 0;
  }
}
@media (max-width: 767px) {
  .splide__pagination__page {
    width: calc(10 * var(--util));
    height: calc(10 * var(--util));
    margin: 0;
    background: transparent;
    border: 1px solid #000;
  }
}
@media (max-width: 767px) {
  .splide__pagination__page.is-active {
    background: #000;
    transform: scale(1);
  }
}

@media (min-width: 768px) {
  .contents__unit--image_08 {
    width: max-content!important;
    margin: 0 auto;
  }
  .contents__credits08 {
    z-index: 99!important;
  }
  .contents__unit08 {
    pointer-events: auto!important;
  }
}