@charset "UTF-8";
@font-face {
  font-family: "NotoSerifJP";
  src: url(../font/NotoSerifJP-Medium.otf) format("opentype");
  font-weight: normal;
}
:root {
  --font: 游ゴシック体, YuGothic, 游ゴシック Medium, Yu Gothic, メイリオ, sans-serif;
  --font-en: presti-display, serif;
  --font-credit: neue-haas-grotesk-display, sans-serif;
  --font-mincho: NotoSerifJP, ＭＳ Ｐ明朝, MS PMincho, serif;
  --pc-width: 1400;
  --tb-width: 768;
  --sp-width: 750;
  --c-white: #fff;
  --c-blue: #34699a;
}

* > .main-area {
  font-family: var(--font);
  font-weight: var(--fontweight-medium);
  font-feature-settings: normal;
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow: unset;
  min-width: auto;
}

/* ▼ -----------可変設定---------- ▼ */
#MO250801TOKIMEKI {
  --pc-width: 1400; /*PCデザイン幅*/
  --sp-width: 750; /*SPデザイン幅*/
  --pc-artboard-width: 500; /*SP共通デザイン幅*/
  --sp-artboard-width: 750; /*PC共通デザイン幅*/
  --formula: calc(var(--variable) * var(--ratio)); /*SP→PC 可変設定*/
  --formula_pc: calc(var(--variable) * 1); /*PC 1400以上は固定*/
}

/* --formulaの補足
  SPの値 × SP→PCの縮小率 × 画面幅に基づく可変値

  例）PC1400px　SP750pxのデザイン
  　　PC共通部分:500px　SP共通部分:750px
  　　PC、SP共通デザインwidth:100pxの場合

  ▼記述 pc表示時に(500/750)を掛ける
  width: calc(100* var(--variable)* var(--ratio));

　▼PC固定幅の計算
　100×0.6666666666666667×1=66.66666666666667px

　▼PC可変の計算
　100×0.6666666666666667×(100vw/1400)=calc(66.66666666666667 * (100vw/1400));

　▼SP可変の計算
　100×1×(100vw/750)=calc(100 * (100vw/750));
*/
/* PC画面幅 1400px以上 固定 */
@media (min-width: 1401px) {
  #MO250801TOKIMEKI {
    --ratio: calc(var(--pc-artboard-width) / var(--sp-artboard-width)); /* PCとSPのデザイン幅の比率 */
    --variable: 1px; /* 固定値（可変しない） */
  }
}
/* PC画面幅 768～1400px 可変 */
@media (min-width: 768px) and (max-width: 1400px) {
  #MO250801TOKIMEKI {
    --ratio: calc(var(--pc-artboard-width) / var(--sp-artboard-width)); /* PCとSPのデザイン幅の比率 */
    --variable: calc(100vw / var(--pc-width)); /* 画面幅に基づく可変値 */
  }
}
/* SP画面幅 767px以下 可変 */
@media (max-width: 767px) {
  #MO250801TOKIMEKI {
    --ratio: 1; /* 比率は1（変わらない） */
    --variable: calc(100vw / var(--sp-width)); /* 画面幅に基づく可変値 */
  }
}
/* ▲ -----------可変設定---------- ▲ */
.main-area * {
  box-sizing: border-box;
}
.main-area img {
  height: auto;
  opacity: 1;
  width: 100%;
}
.main-area a {
  text-decoration: none;
}
.main-area picture {
  display: block;
}
.main-area p, .main-area ul, .main-area ol, .main-area dl {
  list-style: none;
}
@media only screen and (max-width: 767px) {
  .main-area .pc_only {
    display: none;
  }
  .main-area .sp_only {
    display: block;
  }
}

@media only screen and (min-width: 768px) {
  .main-area .pc_only {
    display: block;
  }
  .main-area .sp_only {
    display: none;
  }
}
.js-fadeIn-load {
  opacity: 0;
  transition: opacity 3s;
}

.js-fadeIn-load--02 {
  opacity: 0;
  transition: opacity 1s 0.8s;
}

.js-fadeIn-load.js-active, .js-fadeIn-load--02.js-active {
  opacity: 1;
}

.js-blur-zoom-load {
  filter: blur(10px);
  transform: scale(1.02);
  opacity: 0;
  transition: filter 1s, opacity 1s, transform 1s;
}

.js-blur-zoom-load.js-active {
  filter: blur(0);
  transform: scale(1);
  opacity: 1;
}

.js-fadeUp-load {
  opacity: 0;
  transition: opacity 1s, transform 1s;
  transform: translateY(10px);
}

.js-fadeUp-load.js-active {
  opacity: 1;
  transform: translateY(0);
}

.js-fadeUp, .js-fadeUp-credit {
  opacity: 0;
  transition: opacity 1s, transform 1s;
  transform: translateY(30px);
}

.js-fadeUp.js-active, .js-fadeUp-credit.js-active {
  opacity: 1;
  transform: translateY(0);
}

.js-fadeLeft {
  opacity: 0;
  transition: opacity 1s, transform 1s;
  transform: translateX(-30px);
}

.js-fadeRight {
  opacity: 0;
  transition: opacity 1s, transform 1s;
  transform: translateX(30px);
}

.js-fadeLeft.js-active, .js-fadeRight.js-active {
  opacity: 1;
  transform: translateX(0);
}

.js-fadeIn {
  opacity: 0;
  transition: opacity 2s;
}

.js-fadeIn.js-active {
  opacity: 1;
}

.js-arrow img {
  transform: translateY(-100%);
  transition: transform 0.8s ease-in-out;
}

.js-arrow.js-active img {
  transform: translateY(0);
}

.js-blur-zoom {
  filter: blur(10px);
  transform: scale(1.02);
  opacity: 0;
  transition: filter 1s, opacity 1s, transform 1s;
}

.js-blur-zoom.js-active {
  filter: blur(0);
  transform: scale(1);
  opacity: 1;
}

.footer {
  padding: 0;
}

.footer .toTop {
  z-index: 100;
}

#MO250801TOKIMEKI {
  margin: 0 auto;
  padding: 0 0 0 0;
  color: #000000;
  font-weight: 400;
  letter-spacing: 0.05em;
  /* メインビジュアル */
}
#MO250801TOKIMEKI .contents__bottom {
  padding-bottom: calc(200 * var(--formula));
}
#MO250801TOKIMEKI .product__block--movie {
  margin: 0 auto;
  text-align: center;
  z-index: 1;
}
#MO250801TOKIMEKI .intro {
  margin: 0 auto;
  padding: calc(99 * var(--formula)) 0 0 0;
  text-align: center;
  z-index: 1;
  position: relative;
}
#MO250801TOKIMEKI .intro .intro__image {
  width: calc(359 * var(--formula));
  margin: 0 auto;
  position: relative;
}
#MO250801TOKIMEKI .intro .intro__lead {
  font-family: var(--font);
  font-size: calc(25 * var(--formula));
  font-feature-settings: "palt";
  letter-spacing: 0.025em;
  line-height: 2.6;
  text-align: center;
}
#MO250801TOKIMEKI .product__block {
  width: calc(750 * var(--formula));
  margin: 0 auto;
}
#MO250801TOKIMEKI .product__block .title__floating {
  position: sticky;
  z-index: 2;
  pointer-events: none;
}
#MO250801TOKIMEKI .product__block .title__floating.title__floating--01 {
  width: calc(558 * var(--formula));
  margin: calc(714 * var(--formula)) 0 calc(300 * var(--formula)) 0;
  /*margin: calc(714 * var(--formula)) 0 calc(0 * var(--formula)) 0;*/
  /*top: calc(558 * var(--formula));*/
  top: calc(100vh - 435 * var(--formula));
}
#MO250801TOKIMEKI .product__block .title__floating.title__floating--02 {
  width: calc(584 * var(--formula));
  /*margin: calc(726 * var(--formula)) 0 calc(300 * var(--formula)) 0;*/
  margin: calc(575 * var(--formula)) 0 calc(300 * var(--formula)) 0;
  /*top: calc(558 * var(--formula));*/
  top: calc(100vh - 435 * var(--formula));
}
#MO250801TOKIMEKI .product__block .product__image-wrap {
  width: calc(750 * var(--formula));
  margin: calc(148 * var(--formula)) auto 0;
  position: relative;
  z-index: 3;
}
#MO250801TOKIMEKI .product__block .product__image-wrap.product__image-wrap--01 {
  margin: calc(-1203 * var(--formula)) 0 0 0;
  /*margin: calc(-903 * var(--formula)) auto 0;*/
  z-index: 1;
}
#MO250801TOKIMEKI .product__block .product__image-wrap.product__image-wrap--01-2 {
  margin: 0 auto;
}
#MO250801TOKIMEKI .product__block .product__image-wrap.product__image-wrap--02 {
  margin: calc(148 * var(--formula)) auto 0;
  z-index: 3;
}
#MO250801TOKIMEKI .product__block .product__image-wrap.product__image-wrap--03 {
  margin: calc(148 * var(--formula)) auto 0;
  z-index: 3;
}
#MO250801TOKIMEKI .product__block .product__image-wrap.product__image-wrap--04 {
  margin: calc(148 * var(--formula)) auto 0;
  padding: 0 0 calc(148 * var(--formula)) 0;
  z-index: 3;
}
#MO250801TOKIMEKI .product__block .product__image-wrap.product__image-wrap--05-1 {
  /*margin: calc(-1186 * var(--formula)) 0 0 0;*/
  margin: calc(-1166 * var(--formula)) auto 0;
  z-index: 1;
}
#MO250801TOKIMEKI .product__block .product__image-wrap.product__image-wrap--05-2 {
  margin: calc(0 * var(--formula)) auto 0;
  z-index: 3;
}
#MO250801TOKIMEKI .product__block .product__image-wrap.product__image-wrap--06 {
  margin: calc(148 * var(--formula)) auto 0;
  z-index: 3;
}
#MO250801TOKIMEKI .product__block .product__image-wrap.product__image-wrap--07 {
  margin: calc(148 * var(--formula)) auto 0;
  z-index: 3;
}
#MO250801TOKIMEKI .product__block .product__image-wrap.product__image-wrap--08 {
  margin: calc(148 * var(--formula)) auto 0;
  z-index: 3;
}
#MO250801TOKIMEKI .product__block .product__image {
  width: calc(750 * var(--formula));
  margin: calc(150 * var(--formula)) auto 0;
  position: relative;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--01_1 {
  width: calc(660 * var(--formula));
  margin: 0 auto;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--01_2 {
  width: calc(660 * var(--formula));
  margin: calc(15 * var(--formula)) auto 0;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--02_1 {
  width: calc(630 * var(--formula));
  margin: 0 0 0 0;
  z-index: 1;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--02_2 {
  width: calc(680 * var(--formula));
  margin: calc(-85 * var(--formula)) 0 0 auto;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--03_1 {
  width: calc(680 * var(--formula));
  margin: 0 auto;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--03_2 {
  width: calc(550 * var(--formula));
  margin: calc(100 * var(--formula)) auto 0;
  z-index: 2;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--04 {
  width: calc(750 * var(--formula));
  margin: 0;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--05_1 {
  width: calc(640 * var(--formula));
  margin: 0 0 0 auto;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--05_2 {
  width: calc(640 * var(--formula));
  margin: calc(15 * var(--formula)) 0 0 0;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--05_3 {
  width: calc(750 * var(--formula));
  margin: calc(160 * var(--formula)) 0 0 0;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--06_1 {
  width: calc(620 * var(--formula));
  margin: 0 0 0 0;
  z-index: 1;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--06_2 {
  width: calc(660 * var(--formula));
  margin: calc(-80 * var(--formula)) 0 0 auto;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--07_1 {
  width: calc(720 * var(--formula));
  margin: 0 auto;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--07_2 {
  width: calc(600 * var(--formula));
  margin: calc(85 * var(--formula)) auto 0;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--08_1 {
  width: calc(750 * var(--formula));
  margin: 0 0 0 0;
}
#MO250801TOKIMEKI .product__block .product__image.product__image--08_2 {
  width: calc(600 * var(--formula));
  margin: calc(100 * var(--formula)) auto 0;
}
#MO250801TOKIMEKI .product__block .cordinate__text {
  position: absolute;
  display: flex;
  justify-content: space-between;
  width: 100%;
  color: var(--c-blue);
  left: 0;
  top: calc(-50 * var(--formula));
  z-index: 1;
  font-size: calc(42 * var(--formula));
  letter-spacing: 0.025em;
}
#MO250801TOKIMEKI .product__block .cordinate__text span {
  font-family: var(--font-credit);
  line-height: 1;
}
#MO250801TOKIMEKI .product__block .cordinate__text.cordinate__text--02 {
  flex-direction: column;
  padding: calc(18 * var(--formula)) 0 calc(67 * var(--formula));
  width: calc(40 * var(--formula));
  height: 100%;
  top: 0;
  left: auto;
  right: calc(15 * var(--formula));
  color: var(--c-white);
  font-size: calc(44 * var(--formula));
  letter-spacing: 0.05em;
}
#MO250801TOKIMEKI .product__block .cordinate__text.cordinate__text--02 span {
  transform: rotate(90deg);
}
#MO250801TOKIMEKI .product__block .cordinate__text.cordinate__text--03 {
  justify-content: center;
  font-size: calc(42 * var(--formula));
  letter-spacing: 0.05em;
  top: calc(-52 * var(--formula));
}
#MO250801TOKIMEKI .product__block .cordinate__text.cordinate__text--05-01 {
  top: calc(-53 * var(--formula));
  padding: 0 calc(8 * var(--formula));
}
#MO250801TOKIMEKI .product__block .cordinate__text.cordinate__text--05-03 {
  top: calc(20 * var(--formula));
  padding: 0 calc(15 * var(--formula));
  color: var(--c-white);
  font-size: calc(44 * var(--formula));
}
#MO250801TOKIMEKI .product__block .cordinate__text.cordinate__text--06 {
  padding: 0;
  width: calc(930 * var(--formula));
  text-align: center;
  transform: rotate(90deg);
  left: auto;
  justify-content: center;
  font-size: calc(42 * var(--formula));
  letter-spacing: 0.075em;
  top: calc(437 * var(--formula));
  left: calc(190 * var(--formula));
}
#MO250801TOKIMEKI .product__block .product__credit {
  width: 100%;
  margin: calc(38 * var(--formula)) auto 0;
  font-family: var(--font-credit);
  font-size: calc(24 * var(--formula));
  font-weight: 300;
  letter-spacing: 0.02em;
  line-height: 2;
  text-align: left;
  color: #000;
  position: relative;
  white-space: nowrap;
}
#MO250801TOKIMEKI .product__block .product__credit--01 {
  text-align: center;
  padding: 0 0 0 calc(18 * var(--formula));
}
#MO250801TOKIMEKI .product__block .product__credit--02 {
  padding: 0 0 0 calc(70 * var(--formula));
}
#MO250801TOKIMEKI .product__block .product__credit--03 {
  padding: 0 0 0 calc(15 * var(--formula));
  text-align: center;
}
#MO250801TOKIMEKI .product__block .product__credit--04 {
  text-align: center;
  padding: 0 0 0 calc(15 * var(--formula));
}
#MO250801TOKIMEKI .product__block .product__credit--05-01 {
  padding: 0 0 0 calc(40 * var(--formula));
}
#MO250801TOKIMEKI .product__block .product__credit--05-03 {
  text-align: center;
  padding: 0 0 0 calc(18 * var(--formula));
}
#MO250801TOKIMEKI .product__block .product__credit--06 {
  padding: 0 0 0 calc(90 * var(--formula));
}
#MO250801TOKIMEKI .product__block .product__credit--07 {
  text-align: center;
  padding: 0 0 0 calc(15 * var(--formula));
}
#MO250801TOKIMEKI .product__block .product__credit--08 {
  text-align: center;
  padding: 0 0 0 calc(15 * var(--formula));
}
#MO250801TOKIMEKI .product__block .product__credit a {
  display: inline-block;
  margin: 0 calc(13 * var(--formula)) 0 0;
  font-weight: 300;
}
#MO250801TOKIMEKI .product__block--mv .mv-inner {
  width: 100%;
}
#MO250801TOKIMEKI .product__block--mv .intro__image {
  width: 100%;
  position: relative;
  z-index: 0;
}
#MO250801TOKIMEKI .product__block--mv .intro__image::after {
  display: block;
  position: absolute;
  content: "";
  background-image: url(../img/bg_text_shadow.png);
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 1;
  pointer-events: none;
  top: 0;
  left: 0;
}
#MO250801TOKIMEKI .product__block--intro {
  position: relative;
  z-index: 0;
}
#MO250801TOKIMEKI .product__block--intro .product__block-inner {
  width: 100%;
}
#MO250801TOKIMEKI .product__block--01 {
  position: relative;
  z-index: 1;
}
#MO250801TOKIMEKI .product__block--02 {
  text-align: center;
  margin: calc(0 * var(--formula)) auto 0;
  position: relative;
  z-index: 2;
}
#MO250801TOKIMEKI .lp__bottom-area {
  padding: 0 0 calc(316 * var(--formula)) 0;
}
#MO250801TOKIMEKI .button__all {
  display: grid;
  place-content: center;
  width: calc(675 * var(--formula));
  height: calc(118 * var(--formula));
  margin: calc(168 * var(--formula)) auto 0;
  font-family: var(--font-en);
  font-size: calc(42 * var(--formula));
  color: var(--c-blue);
  letter-spacing: 0.015em;
  line-height: 1;
  text-align: center;
  border: 1px solid var(--c-blue);
}
#MO250801TOKIMEKI .button__all.button__all--limited {
  margin: calc(20 * var(--formula)) auto 0;
}
#MO250801TOKIMEKI .staff__area {
  margin: calc(140 * var(--formula)) 0 0 calc(0 * var(--formula));
  text-align: center;
}
#MO250801TOKIMEKI .staff__area .staff__title {
  font-family: var(--font-credit);
  font-size: calc(26 * var(--formula));
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.16em;
}
#MO250801TOKIMEKI .staff__area .staff__name {
  margin: calc(18 * var(--formula)) 0 0 0;
  font-family: var(--font-credit);
  font-size: calc(24 * var(--formula));
  font-weight: 300;
  font-feature-settings: "palt";
  line-height: 2;
  letter-spacing: 0.02em;
}

@media only screen and (min-width: 768px) {
  .footer {
    width: 100%;
  }
  #MO250801TOKIMEKI {
    width: 100%;
  }
  #MO250801TOKIMEKI::-webkit-scrollbar {
    display: none;
  }
  #MO250801TOKIMEKI .product__block.product__block--mv {
    width: calc(1200 * var(--formula_pc));
    margin: 0 auto;
  }
  #MO250801TOKIMEKI .product__block.product__block--mv .mv-inner {
    width: 100%;
  }
  #MO250801TOKIMEKI .product__block.product__block--mv .intro__image {
    width: 100%;
  }
  #MO250801TOKIMEKI .product__block.product__block--mv .intro__image a {
    display: block;
    width: 100%;
    height: auto;
  }
  #MO250801TOKIMEKI .product__block {
    /*width: calc(1400 * var(--formula_pc));*/
    /*max-width: calc(1400 * var(--formula_pc));*/
  }
}
@media only screen and (max-width: 767px) {
  .footer {
    z-index: 100;
    position: relative;
  }
  .footer .page-top {
    margin: 0;
    position: absolute;
    top: calc(-120 * (100vw/750));
    right: calc(30 * (100vw/750));
  }
}/*# sourceMappingURL=style.css.map */