@charset "UTF-8";
/* media query
------------------------------------------ */
/* display
------------------------------------------ */
.is-show-pc {
  display: block;
}
@media (max-width: 767px) {
  .is-show-pc {
    display: none;
  }
}

.is-show-sp {
  display: none;
}
@media (max-width: 767px) {
  .is-show-sp {
    display: block;
  }
}

/* function
------------------------------------------ */
.MO260604tops {
  /* 可変設定
  ------------------------------------------ */
  /*デザインの値*/
  --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デザインの可変割合の計算式*/
  /* PC画面幅 1400px以上 固定 */
  /* PC画面幅 768～1400px 可変 */
  /* SP画面幅 767px以下 可変 */
  /* mixin
  ------------------------------------------ */
  /* reset
  ------------------------------------------ */
  /* animation
  ------------------------------------------ */
  /* 共通
  ------------------------------------------ */
  /* LP style
  ------------------------------------------ */
}
@media (min-width: 1401px) {
  .MO260604tops {
    --ratio: calc(
      var(--pc-artboard-width) / var(--sp-artboard-width)
    ); /* PCとSPのデザイン幅の比率 */
    --variable: 1px; /* 固定値（可変しない） */
  }
}
@media (min-width: 768px) and (max-width: 1400px) {
  .MO260604tops {
    --ratio: calc(
      var(--pc-artboard-width) / var(--sp-artboard-width)
    ); /* PCとSPのデザイン幅の比率 */
    --variable: calc(100vw / var(--pc-width)); /* 画面幅に基づく可変値 */
  }
}
@media (max-width: 767px) {
  .MO260604tops {
    --ratio: 1; /* 比率は1（変わらない） */
    --variable: calc(100vw / var(--sp-width)); /* 画面幅に基づく可変値 */
  }
}
.MO260604tops img {
  width: 100%;
  height: auto;
}
.MO260604tops * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.MO260604tops .animate-item {
  opacity: 0;
  transition: all 1s cubic-bezier(0.39, 0.575, 0.565, 1);
}
.MO260604tops .animate-item.is-visible {
  opacity: 1;
}

.MO260604tops .product-video {
  width: calc(675 * var(--formula));
  aspect-ratio: 675/1200;
  margin: 0 auto;
}
.MO260604tops .product-video video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.MO260604tops .fixed-left,
.MO260604tops .fixed-right {
  position: sticky;
  top: 0;
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 767px) {
  .MO260604tops .fixed-left {
    display: none;
  }
}
.MO260604tops .fixed-left-logo {
  width: calc(330 * var(--formula_pc));
}
@media (max-width: 767px) {
  .MO260604tops .fixed-right {
    display: none;
  }
}
.MO260604tops .fixed-right-link {
  width: calc(280 * var(--formula_pc));
}

/* 固定画像切り替えの共通スタイル */
.MO260604tops .fixed-left-logo,
.MO260604tops .fixed-right-link {
  opacity: 1;
  transition: opacity 1.5s cubic-bezier(0.25, 1, 0.5, 1);
  position: relative; /* 子要素を重ねる基準 */
  display: block;
}

/* 非表示クラスがついた時 */
.fixed-right-link.is-hidden, 
.fixed-left-logo.is-hidden {
  opacity: 0;
  pointer-events: none; /* 消えている間はクリックできないようにする */
}

/* 2枚の画像を重ねる設定 */
.MO260604tops .fixed-left-logo img,
.MO260604tops .fixed-right-link img {
  transition: opacity 0.6s ease-in-out; /* 0.6秒かけてフェード */
}

/* 変更後の画像は最初は透明にしておく */
.MO260604tops .fixed-left-logo img.img-changed,
.MO260604tops .fixed-right-link img.img-changed {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  pointer-events: none; /* 下にあるリンクの邪魔をしない */
}

/* クラス「is-swapped」が付与された時の挙動 */
.MO260604tops .fixed-left-logo.is-swapped img.img-default,
.MO260604tops .fixed-right-link.is-swapped img.img-default {
  opacity: 0;
}

.MO260604tops .fixed-left-logo.is-swapped img.img-changed,
.MO260604tops .fixed-right-link.is-swapped img.img-changed {
  opacity: 1;
  pointer-events: auto;
}

.MO260604tops .mv {
  width: calc(1200 * var(--formula_pc));
  margin: 0 auto;
}
@media (max-width: 767px) {
  .MO260604tops .mv {
    width: calc(750 * var(--variable) * var(--ratio));
  }
}
.MO260604tops .mv-img {
  width: 100%;
  margin: 0 auto;
}
.MO260604tops .mv-txt {
  margin-top: calc(104 * var(--formula));
  font-family: 游ゴシック体, YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "Yu Gothic", "Open Sans", メイリオ, sans-serif;
  font-size: calc(24 * var(--formula));
  letter-spacing: 0.025em;
  line-height: 2.4166666667;
  text-align: center;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.MO260604tops .lp-wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media (max-width: 767px) {
  .MO260604tops .lp-wrapper {
    display: block;
  }
}
.MO260604tops .lp-container {
  width: calc(750 * var(--variable) * var(--ratio));
  margin: 0 auto;
}
.MO260604tops .product01 {
  margin-top: calc(168 * var(--formula));
}
.MO260604tops .product-txt-box {
  margin-top: calc(104 * var(--formula));
}
.MO260604tops .product-num {
  width: calc(98 * var(--formula));
  margin: 0 auto;
}
.MO260604tops .product-lead {
  margin-top: calc(20 * var(--formula));
  font-family: 游ゴシック体, YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "Yu Gothic", "Open Sans", メイリオ, sans-serif;
  font-size: calc(24 * var(--formula));
  letter-spacing: 0.025em;
  line-height: 1.8;
  text-align: center;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
.MO260604tops .product01-photo-01 {
  margin-top: calc(60 * var(--formula));
  width: calc(660 * var(--formula));
  margin-right: auto;
}
.MO260604tops .product01-photo-02 {
  margin-top: calc(40 * var(--formula));
  width: calc(580 * var(--formula));
  margin-left: auto;
}

.MO260604tops [class*="-price"] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: calc(14 * var(--formula));
  /* -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; */
  margin-left: calc(2 * var(--formula));
}

.MO260604tops [class*="-price"] a {
  font-size: calc(25 * var(--formula));
  font-family: "ivyora-display", serif;
  font-weight: 300;
  font-style: normal;
  line-height: 1.8;
  letter-spacing: 0;
  text-align: justify;
}

.MO260604tops .product01-price-01 {
  margin-top: calc(29 * var(--formula));
}

.MO260604tops .product02 {
  margin-top: calc(205 * var(--formula));
}
.MO260604tops .product02 .product-lead {
  margin-top: calc(38 * var(--formula));
}
.MO260604tops .product02-photo-01 {
  margin-top: calc(58 * var(--formula));
  width: calc(660 * var(--formula));
  margin-left: auto;
}
.MO260604tops .product02-photo-02 {
  margin-top: calc(40 * var(--formula));
  width: calc(600 * var(--formula));
  margin-left: calc(40 * var(--formula));
}
.MO260604tops .product02-price-01 {
  margin-top: calc(30 * var(--formula));
}

.MO260604tops .product03 {
  margin-top: calc(198 * var(--formula));
}
.MO260604tops .product03 .product-lead {
  margin-top: calc(27 * var(--formula));
}
.MO260604tops .product03-photo-01 {
  width: calc(620 * var(--formula));
  margin: 0 auto;
  margin-top: calc(60 * var(--formula));
}
.MO260604tops .product03-photo-02 {
  margin-top: calc(40 * var(--formula));
  width: calc(580 * var(--formula));
  margin-left: 0;
}
.MO260604tops .product03-photo-03 {
  margin-top: calc(42 * var(--formula));
  width: calc(580 * var(--formula));
  margin-left: calc(170 * var(--formula));
}
.MO260604tops .product03-price-01 {
  margin-top: calc(27 * var(--formula));
}

.MO260604tops .product04 {
  margin-top: calc(198 * var(--formula));
}
.MO260604tops .product04 .product-lead {
  margin-top: calc(32 * var(--formula));
}
.MO260604tops .product04-photo-01 {
  margin-top: calc(56 * var(--formula));
  width: calc(580 * var(--formula));
  margin-left: 0;
}
.MO260604tops .product04-photo-02 {
  margin-top: calc(40 * var(--formula));
  width: calc(640 * var(--formula));
  margin-left: calc(70 * var(--formula));
}
.MO260604tops .product04-price-01 {
  margin-top: calc(30 * var(--formula));
}

.MO260604tops .product05 {
  margin-top: calc(202 * var(--formula));
}
.MO260604tops .product05 .product-lead {
  margin-top: calc(26 * var(--formula));
}
.MO260604tops .product05-photo-01 {
  margin: 0 auto;
  margin-top: calc(62 * var(--formula));
  width: calc(720 * var(--formula));
}
.MO260604tops .product05-photo-02 {
  margin-top: calc(36 * var(--formula));
  width: calc(600 * var(--formula));
  margin-left: calc(110 * var(--formula));
}
.MO260604tops .product05-price-01 {
  margin-top: calc(30 * var(--formula));
}

.MO260604tops .product06 {
  margin-top: calc(200 * var(--formula));
}
.MO260604tops .product06 .product-lead {
  margin-top: calc(37 * var(--formula));
}
.MO260604tops .product06-photo-01 {
  margin: 0 auto;
  margin-top: calc(58 * var(--formula));
  width: calc(710 * var(--formula));
}
.MO260604tops .product06-photo-02 {
  margin-top: calc(42 * var(--formula));
  width: calc(600 * var(--formula));
  margin-left: 0;
}
.MO260604tops .product06-photo-03 {
  margin-top: calc(40 * var(--formula));
  width: calc(640 * var(--formula));
  margin-left: calc(110 * var(--formula));
}
.MO260604tops .product06-price-01 {
  margin-top: calc(30 * var(--formula));
}

.MO260604tops .product07 {
  margin-top: calc(198 * var(--formula));
}
.MO260604tops .product07 .product-lead {
  margin-top: calc(38 * var(--formula));
  padding-left: calc(13 * var(--formula));
}
.MO260604tops .product07-photo-01 {
  margin-top: calc(60 * var(--formula));
  margin-left: calc(40 * var(--formula));
  width: calc(620 * var(--formula));
}
.MO260604tops .product07-photo-02 {
  margin-top: calc(40 * var(--formula));
  width: calc(580 * var(--formula));
  margin-left: calc(170 * var(--formula));
}
.MO260604tops .product07-price-01 {
  margin-top: calc(30 * var(--formula));
}

.MO260604tops .product08 {
  margin-top: calc(202 * var(--formula));
}
.MO260604tops .product08 .product-lead {
  margin-top: calc(36 * var(--formula));
}
.MO260604tops .product08-photo-01 {
  margin: 0 auto;
  margin-top: calc(62 * var(--formula));
  width: calc(660 * var(--formula));
}
.MO260604tops .product08-photo-02 {
  margin-top: calc(40 * var(--formula));
  width: calc(600 * var(--formula));
  margin-left: calc(150 * var(--formula));
}
.MO260604tops .product08-price-01 {
  margin-top: calc(30 * var(--formula));
}

.MO260604tops .product09 {
  margin-top: calc(202 * var(--formula));
}
.MO260604tops .product09 .product-lead {
  margin-top: calc(40 * var(--formula));
}
.MO260604tops .product09-photo-01 {
  margin-top: calc(60 * var(--formula));
  width: calc(670 * var(--formula));
  margin-left: 0;
}
.MO260604tops .product09-photo-02 {
  margin-top: calc(40 * var(--formula));
  width: calc(580 * var(--formula));
  margin-left: calc(170 * var(--formula));
}
.MO260604tops .product09-price-01 {
  margin-top: calc(30 * var(--formula));
}

.MO260604tops .product10 {
  margin-top: calc(196 * var(--formula));
}
.MO260604tops .product10 .product-lead {
  margin-top: calc(25 * var(--formula));
}
.MO260604tops .product10-photo-01 {
  margin: 0 auto;
  margin-top: calc(58 * var(--formula));
  width: calc(700 * var(--formula));
}
.MO260604tops .product10-photo-02 {
  margin-top: calc(40 * var(--formula));
  width: calc(600 * var(--formula));
  margin-left: calc(50 * var(--formula));
}
.MO260604tops .product10-photo-03 {
  margin-top: calc(40 * var(--formula));
  width: calc(600 * var(--formula));
  margin-left: calc(110 * var(--formula));
}
.MO260604tops .product10-price-01 {
  margin-top: calc(30 * var(--formula));
}

.MO260604tops .check-all-items {
  margin-top: calc(175 * var(--formula));
}
.MO260604tops .check-all-items-link {
  display: block;
  width: calc(675 * var(--formula));
  margin: 0 auto;
}
.MO260604tops .staff {
  margin-top: calc(136 * var(--formula));
  margin-bottom: calc(200 * var(--formula));
}
.MO260604tops .staff-ttl {
  font-size: calc(28 * var(--formula));
  font-family: "ivyora-display", serif;
  font-weight: 300;
  font-style: normal;
  letter-spacing: 0.15em;
  text-align: center;
}
.MO260604tops .staff-txt {
  margin-top: calc(24 * var(--formula));
  font-size: calc(24 * var(--formula));
  line-height: 1.8;
  letter-spacing: 0;
  font-family: "ivyora-display", serif;
  font-weight: 300;
  font-style: normal;
  text-align: center;
}