@charset "UTF-8";
:root {
  --font: ryo-gothic-plusn, sans-serif;
  --font-en: ivyjournal, sans-serif;
  --font-credit: elza, sans-serif;
  --font-mincho: yu-mincho-pr6n, ヒラギノ明朝 Pro W3, Hiragino Mincho Pro, ＭＳ Ｐ明朝, MS PMincho, serif;
  --pc-width: 1400;
  --tb-width: 768;
  --sp-width: 750;
}

* > .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;
}

/* ▼ -----------可変設定---------- ▼ */
.lp_variable {
  --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) {
  .lp_variable {
    --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) {
  .lp_variable {
    --ratio: calc(var(--pc-artboard-width) / var(--sp-artboard-width)); /* PCとSPのデザイン幅の比率 */
    --variable: calc(100vw / var(--pc-width)); /* 画面幅に基づく可変値 */
  }
}
/* SP画面幅 767px以下 可変 */
@media (max-width: 767px) {
  .lp_variable {
    --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;
  }
}
@keyframes js-moveUp {
  0% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-clip-path: inset(100% 0 0 0);
    clip-path: inset(100% 0 0 0);
  }
  50% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    filter: blur(30px) brightness(1.1);
  }
  100% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    filter: blur(0) brightness(1);
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 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-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-moveUp {
  opacity: 0;
  clip-path: inset(94% 0 0 0);
  filter: blur(30px) brightness(1.1);
}

.js-moveUp.js-active {
  animation: js-moveUp 0.95s ease-out forwards;
}

.footer {
  padding: 0;
}

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

#MO250501wellness {
  margin: 0 auto;
  padding: 0 0 0 0;
  background-color: #f6f6ec;
  color: #000000;
  font-weight: 400;
  letter-spacing: 0.05em;
  /* メインビジュアル */
}
#MO250501wellness .contents__bottom {
  padding-bottom: calc(200 * var(--formula));
}
#MO250501wellness .product__block--movie {
  margin: 0 auto;
  text-align: center;
  z-index: 1;
}
#MO250501wellness .intro {
  margin: 0 auto;
  padding: calc(162 * var(--formula)) 0 0 0;
  text-align: center;
  z-index: 1;
  position: relative;
}
#MO250501wellness .intro .intro__image {
  width: calc(359 * var(--formula));
  margin: 0 auto;
}
#MO250501wellness .intro .intro__title {
  position: absolute;
}
#MO250501wellness .intro .intro__title--01 {
  top: calc(65 * var(--formula));
  left: calc(253 * var(--formula));
  width: calc(247 * var(--formula));
}
#MO250501wellness .intro .intro__title--02 {
  top: calc(998 * var(--formula));
  left: calc(80 * var(--formula));
  width: calc(589 * var(--formula));
}
#MO250501wellness .intro .intro__lead {
  margin: calc(196 * var(--formula)) auto 0;
  font-family: var(--font);
  font-size: calc(18 * var(--formula));
  font-feature-settings: "palt";
  letter-spacing: 0.06em;
  line-height: 2.8611111111;
  text-align: center;
}
#MO250501wellness .intro .intro__logo {
  width: calc(252 * var(--formula));
  margin: calc(62 * var(--formula)) auto 0;
  position: relative;
  left: calc(8 * var(--formula));
}
#MO250501wellness .product__block--movie {
  height: 100vh;
  margin: 0 0 0 auto;
}
#MO250501wellness .product__block--movie .movie-inner {
  width: 100%;
  height: 100vh;
}
#MO250501wellness .product__block--movie #mvVisual {
  position: relative;
  overflow: hidden;
}
#MO250501wellness .product__block--movie #mvVisual a {
  display: block;
  position: relative;
  width: 100%;
  height: 100vh;
}
#MO250501wellness .product__block--movie #mvVisual a video {
  width: auto;
  height: 100vh;
  position: absolute;
  transform: translateX(-50%);
  left: 50%;
}
#MO250501wellness #mvVisual {
  position: relative;
}
#MO250501wellness #mvVideo {
  width: 100%;
}
#MO250501wellness #togglemvSound {
  cursor: pointer;
}
#MO250501wellness #togglemvSound {
  display: block;
  width: calc(45 * var(--formula));
  height: calc(45 * var(--formula));
  cursor: pointer;
  background-size: 100% auto;
  position: absolute;
  right: calc(30 * var(--formula));
  bottom: calc(30 * var(--formula));
  z-index: 1;
  box-sizing: border-box;
  padding: 0;
}
#MO250501wellness #togglemvSound .soundOff {
  display: block;
  width: 100%;
  height: 100%;
  background: url(../img/sound_off.svg) no-repeat;
  width: calc(45 * var(--formula));
  height: calc(45 * var(--formula));
}
#MO250501wellness #togglemvSound .soundON {
  display: block;
  width: 100%;
  height: 100%;
  background: url(../img/sound_on.svg) no-repeat;
  width: calc(45 * var(--formula));
  height: calc(45 * var(--formula));
}
#MO250501wellness .product__block {
  width: calc(750 * var(--formula));
}
#MO250501wellness .product__block .product__image-wrap {
  margin: calc(100 * var(--formula)) 0 0 0;
  position: relative;
}
#MO250501wellness .product__block .product__image {
  width: calc(750 * var(--formula));
  margin: 0 auto;
  position: relative;
}
#MO250501wellness .product__block .product__wellness {
  position: relative;
  padding: calc(26 * var(--formula)) calc(30 * var(--formula)) calc(30 * var(--formula));
  letter-spacing: 0.06em;
}
#MO250501wellness .product__block .product__wellness.product__wellness--05 {
  padding: calc(32 * var(--formula)) calc(30 * var(--formula)) calc(30 * var(--formula));
}
#MO250501wellness .product__block .product__wellness-text {
  font-family: var(--font-credit);
  font-size: calc(28 * var(--formula));
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.2142857143;
}
#MO250501wellness .product__block .product__wellness-icon.product__wellness-icon--01 {
  margin: calc(8 * var(--formula)) 0 0 0;
  width: calc(184 * var(--formula));
}
#MO250501wellness .product__block .product__wellness-icon.product__wellness-icon--02 {
  width: calc(63 * var(--formula));
  margin: calc(7 * var(--formula)) 0 0 calc(7 * var(--formula));
}
#MO250501wellness .product__block .product__wellness-icon.product__wellness-icon--03 {
  width: calc(209 * var(--formula));
  margin: calc(7 * var(--formula)) 0 0 calc(7 * var(--formula));
}
#MO250501wellness .product__block .product__category-icon {
  position: absolute;
}
#MO250501wellness .product__block .product__category-icon.product__category-icon--01 {
  width: calc(159 * var(--formula));
  left: auto;
  right: calc(30 * var(--formula));
  bottom: calc(25 * var(--formula));
}
#MO250501wellness .product__block .product__category-icon.product__category-icon--02 {
  width: calc(159 * var(--formula));
  left: auto;
  right: calc(35 * var(--formula));
  bottom: calc(61 * var(--formula));
}
#MO250501wellness .product__block .product__category-icon.product__category-icon--03 {
  width: calc(160 * var(--formula));
  left: auto;
  right: calc(23 * var(--formula));
  bottom: calc(-43 * var(--formula));
}
#MO250501wellness .product__block .product__category-icon.product__category-icon--04 {
  width: calc(153 * var(--formula));
  left: auto;
  right: calc(40 * var(--formula));
  bottom: calc(13 * var(--formula));
}
#MO250501wellness .product__block .product__category-icon.product__category-icon--05 {
  width: calc(158 * var(--formula));
  left: auto;
  right: calc(43 * var(--formula));
  bottom: calc(-61 * var(--formula));
}
#MO250501wellness .product__block .product__credit {
  width: calc(722 * var(--formula));
  margin: 0 auto;
  padding: calc(16 * var(--formula)) calc(16 * var(--formula)) calc(21 * var(--formula));
  border-top: calc(1 * var(--formula)) solid #000;
  border-bottom: calc(1 * var(--formula)) solid #000;
  font-family: var(--font-credit);
  font-size: calc(16 * var(--formula));
  font-weight: 200;
  letter-spacing: 0.06em;
  line-height: 1.625;
  color: #000;
}
#MO250501wellness .product__block .product__credit a {
  display: inline-block;
  margin: 0 calc(7 * var(--formula)) 0 0;
}
#MO250501wellness .product__block .product__credit a._slash {
  position: relative;
  margin: 0 calc(7 * var(--formula)) 0 calc(7 * var(--formula));
}
#MO250501wellness .product__block .product__credit a._slash::after {
  position: absolute;
  content: "/";
  display: block;
  top: 0;
  left: -1rem;
  line-height: 1.625;
  color: #000;
}
#MO250501wellness .product__block--intro {
  position: relative;
  z-index: 0;
}
#MO250501wellness .product__block--intro .product__block-inner {
  width: 100%;
}
#MO250501wellness .product__block--01 {
  position: relative;
  z-index: 1;
}
#MO250501wellness .product__block--02 {
  position: relative;
  z-index: 2;
}
#MO250501wellness .button__all {
  display: block;
  margin: calc(228 * var(--formula)) 0 0 calc(5 * var(--formula));
  width: calc(737 * var(--formula));
}
#MO250501wellness .staff__area {
  margin: calc(48 * var(--formula)) 0 0 calc(30 * var(--formula));
  text-align: left;
  font-family: var(--font-credit);
}
#MO250501wellness .staff__area .staff__title {
  font-family: var(--font-en);
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0.15em;
}
#MO250501wellness .staff__area .staff__name {
  font-family: var(--font-credit);
  font-size: calc(16 * var(--formula));
  font-weight: 200;
  line-height: 1.625;
  letter-spacing: 0.06em;
}
#MO250501wellness .slick-dots {
  display: flex !important;
  position: absolute;
  left: auto;
  right: calc(27 * var(--formula));
  bottom: calc(-62 * var(--formula));
  margin: 0;
}
#MO250501wellness .slick-dots li {
  width: calc(15 * var(--formula));
  height: calc(15 * var(--formula));
  margin: 0 calc(3 * var(--formula));
  position: relative;
  border: 1px solid #000;
}
#MO250501wellness .slick-dots li button {
  display: block;
  font-size: 0;
  width: 100%;
  height: 100%;
  border-radius: none;
  border: none;
  background: transparent;
  -webkit-appearance: none;
  padding: 0;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
  cursor: pointer;
}
#MO250501wellness .slick-dots li.slick-active {
  background-color: #000;
}
#MO250501wellness .slick-dots li.slick-active button {
  width: 100%;
  height: 100%;
}

@media only screen and (min-width: 768px) {
  .footer {
    width: 100vw;
  }
  #MO250501wellness {
    display: flex;
    flex-wrap: wrap;
    width: 100vw;
    background-color: #def4a5;
  }
  #MO250501wellness .contents__left {
    position: sticky;
    top: 0;
    width: 50vw;
    height: 100vh;
    z-index: 1;
  }
  #MO250501wellness .contents__bottom {
    width: 100vw;
    padding-bottom: calc(0 * var(--formula));
    background-color: #f6f6ec;
    position: relative;
    z-index: 1;
  }
  #MO250501wellness .contents__right {
    width: 50vw;
    position: relative;
  }
  #MO250501wellness .contents__right::before {
    display: block;
    position: absolute;
    content: "";
    width: calc(800 * var(--formula));
    height: 100%;
    left: calc(-50 * var(--formula));
    background-color: #f6f6ec;
    z-index: 0;
  }
  #MO250501wellness .product__block .product__image-wrap.product__image-wrap--05 {
    padding: 0 0 calc(100 * var(--formula)) 0;
  }
  #MO250501wellness .product__block .product__category-icon.product__category-icon--05 {
    right: calc(20 * var(--formula));
    bottom: calc(143 * var(--formula));
  }
  #MO250501wellness .product__block--movie {
    height: 100vh;
    margin: 0 0 0 auto;
  }
  #MO250501wellness .product__block--movie .movie-inner {
    width: 100%;
    height: 100vh;
  }
  #MO250501wellness .product__block--movie #mvVisual {
    position: relative;
    overflow: hidden;
  }
  #MO250501wellness .product__block--movie #mvVisual a {
    display: block;
    position: relative;
    width: 100%;
    height: 100vh;
  }
  #MO250501wellness .product__block--movie #mvVisual a:hover {
    opacity: 1;
  }
  #MO250501wellness .product__block--movie #mvVisual a video {
    width: auto;
    height: 100vh;
    position: absolute;
    transform: translateX(-50%);
    left: 50%;
    background-color: #f6f6ec;
  }
  #MO250501wellness #togglemvSound {
    bottom: calc(40 * var(--formula));
  }
  #MO250501wellness .product__block--01 {
    margin: 0;
  }
  #MO250501wellness .product__block--02 {
    width: calc(1400 * var(--formula_pc));
    height: calc(833 * var(--formula_pc));
    margin: 0 auto;
    z-index: 2;
  }
  #MO250501wellness .bottom__icon {
    position: absolute;
  }
  #MO250501wellness .bottom__icon.bottom__icon--01 {
    width: calc(144 * var(--formula_pc));
    left: calc(875 * var(--formula_pc));
    top: calc(-119 * var(--formula_pc));
  }
  #MO250501wellness .bottom__icon.bottom__icon--02 {
    width: calc(132 * var(--formula_pc));
    left: calc(330 * var(--formula_pc));
    top: calc(129 * var(--formula_pc));
    z-index: 2;
  }
  #MO250501wellness .bottom__icon.bottom__icon--03 {
    width: calc(132 * var(--formula_pc));
    left: calc(395 * var(--formula_pc));
    top: calc(192 * var(--formula_pc));
  }
  #MO250501wellness .button__all {
    margin: calc(257 * var(--formula_pc)) auto 0;
    width: calc(650 * var(--formula_pc));
  }
  #MO250501wellness .staff__area .staff__name {
    margin: calc(100 * var(--formula_pc)) 0 0 0;
    font-size: calc(10 * var(--formula_pc));
    line-height: 2.34;
    text-align: center;
  }
}
@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));
  }
  #MO250501wellness {
    margin: 0;
    padding: 0 0 0 0;
    max-width: calc(750 * (100vw/750));
    font-feature-settings: "palt";
    font-weight: 400;
    letter-spacing: 0.05em;
  }
  #MO250501wellness .product__block--movie {
    position: fixed;
    top: 0;
    z-index: 999999;
    opacity: 1;
    transition: opacity 1s;
    height: 100svh;
  }
  #MO250501wellness .product__block--movie.area_hidden {
    opacity: 0;
    pointer-events: none;
  }
  #MO250501wellness .product__block--movie .movie-inner {
    height: 100svh;
  }
  #MO250501wellness .product__block--movie #mvVisual a {
    height: 100svh;
  }
  #MO250501wellness .button_close {
    position: absolute;
    top: calc(20 * var(--formula));
    left: auto;
    right: calc(20 * var(--formula));
    width: calc(51 * var(--formula));
  }
}/*# sourceMappingURL=style.css.map */