@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: ivyjournal, sans-serif; */
  --font-credit: neue-haas-grotesk-display, sans-serif, 游ゴシック体, YuGothic, 游ゴシック Medium, Yu Gothic, メイリオ, sans-serif;
  --font-mincho: NotoSerifJP, ＭＳ Ｐ明朝, 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;
  display: block;
}
.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-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-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-fadeIn {
  opacity: 0;
  transition: opacity 2s;
}

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

.js-arrow {
  overflow: hidden;
}

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

#MO250522SHIZUNA {
  margin: 0 auto;
  padding: 0 0 0 0;
  color: #000000;
  /* font-weight: 400; */
  /* メインビジュアル */
}
#MO250522SHIZUNA .en {
  font-family: "neue-haas-grotesk-display", sans-serif;
  font-weight: 500;
  font-style: normal;
}
#MO250522SHIZUNA .contents__bottom {
  padding-bottom: calc(200 * var(--formula));
}
#MO250522SHIZUNA .product__block--movie {
  margin: 0 auto;
  text-align: center;
  z-index: 1;
}
#MO250522SHIZUNA .intro {
  margin: 0 auto calc(59* var(--formula));
  padding: calc(80 * var(--formula)) 0 0 0;
  text-align: center;
  z-index: 1;
  position: relative;
}
#MO250522SHIZUNA .intro .intro__image {
  width: calc(359 * var(--formula));
  margin: 0 auto;
  position: relative;
}
#MO250522SHIZUNA .intro .intro__lead {
  font-family: var(--font);
  font-size: calc(25 * var(--formula));
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
  line-height: 2.33333;
  text-align: center;
}
#MO250522SHIZUNA .product__block {
  width: calc(750 * var(--formula));
  margin: 0 auto;
}
#MO250522SHIZUNA .product__block--mv .mv-inner {
  width: 100%;
}
#MO250522SHIZUNA .product__block--mv .intro__image {
  width: 100%;
  position: relative;
}
#MO250522SHIZUNA .product__block--mv .intro__image::after {
  position: absolute;
  display: block;
  content: "";
  width: 100%;
  height: calc(450 * var(--formula));
  background: linear-gradient(0deg, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%);
  opacity: 0.12;
  pointer-events: none;
  z-index: 1;
  bottom: 0;
}
#MO250522SHIZUNA .product__block--mv .intro__image .intro__text {
  width: calc(585 * var(--formula));
  height: calc(256 * var(--formula));
  position: absolute;
  z-index: 2;
  left: 50%;
  transform: translateX(-50%);
  bottom: calc(110 * var(--formula));
  pointer-events: none;
}
#MO250522SHIZUNA .product__block--intro {
  position: relative;
  z-index: 0;
}
#MO250522SHIZUNA .product__block--intro .product__block-inner {
  width: 100%;
}
#MO250522SHIZUNA .contents__right {
  margin-bottom: calc(308* var(--formula));
}

@media only screen and (min-width: 768px) {
  .footer {
    width: 100%;
  }
  #MO250522SHIZUNA {
    display: flex;
    width: 100%;
  }
  #MO250522SHIZUNA::-webkit-scrollbar {
    display: none;
  }
  #MO250522SHIZUNA .contents__left {
    position: sticky;
    top: 0;
    width: 50%;
    height: 100vh;
    z-index: 1;
    overflow: hidden;
  }
  #MO250522SHIZUNA .contents__right {
    width: 50%;
    position: relative;
    overflow: hidden;
    margin-bottom: calc(198* var(--formula_pc));
  }
  #MO250522SHIZUNA .product__block--mv {
    width: auto;
    height: 100svh;
    overflow: hidden;
  }
  #MO250522SHIZUNA .product__block--mv .mv-inner {
    width: 100%;
    height: 100%;
  }
  #MO250522SHIZUNA .product__block--mv .intro__image {
    width: 100%;
    height: 100%;
  }
  #MO250522SHIZUNA .product__block--mv .intro__image::after {
    height: calc(420 * var(--formula_pc));
  }
  #MO250522SHIZUNA .product__block--mv .intro__image a {
    transform: translateX(-50%);
    left: 50%;
    position: absolute;
    height: 100svh;
    width: 100%;
  }
  #MO250522SHIZUNA .product__block--mv .intro__image .intro__text {
    width: calc(545 * var(--formula_pc));
    height: calc(218 * var(--formula_pc));
    bottom: calc(188 * var(--formula_pc));
  }
  #MO250522SHIZUNA .product__block--mv .intro__image .intro__text img {
    width: 100%;
    height: auto;
  }
  #MO250522SHIZUNA .product__block--mv img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
  }
}
@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));
  }
}
@media (min-width: 1401px) {
  #MO250522SHIZUNA .product__block--mv .intro__text img {
    width: 100%;
    height: auto;
  }
  #MO250522SHIZUNA .product__block {
    margin: 0 auto;
  }
  #MO250522SHIZUNA .product__block--02 {
    margin: calc(150 * var(--formula)) auto 0;
  }
}/*# sourceMappingURL=style.css.map */


/* ======================================### MO250522SHIZUNA ###====================================== */
/* mv_nav */
.mv_nav {
  width: calc(691 * var(--formula));
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(23 * var(--formula)) calc(19 * var(--formula));
}
.mv_nav_item {
  width: calc(211 * var(--formula));
  position: relative;
  left: calc(-9 * var(--formula));
}
.mv_nav_item .item_num03 {
  width: calc(231 * var(--formula));
}
.mv_nav_item .item_num04 , .mv_nav_item .item_num05 {
  width: calc(221 * var(--formula));
}
.mv_nav_item .item_num05 {
  position: relative;
  left: calc(9 * var(--formula));
}

/* sec_block */
.sec_block_num {
  margin: 0 auto calc(21* var(--formula));
  position: relative;
}
.sec_block_ttl {
  font-size: calc(35 * var(--formula));
  line-height: 1.8;
  letter-spacing: 0.14em;
  text-align: center;
  margin-bottom: calc(40 * var(--formula));
  font-feature-settings: "palt";
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.img_block {
}
.sec_block_lead {
  font-size: calc(24 * var(--formula));
  line-height: 2.2;
  letter-spacing: 0.075em;
  text-align: center;
  margin-top: calc(55 * var(--formula));
  font-feature-settings: "palt";
}
.sec_block_credit_wrap {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: 85%;
  gap: calc(24 * var(--formula)) calc(16 * var(--formula));
  margin: 0 auto;
  margin-top: calc(45 * var(--formula));
}
.sec_block_credit_wrap .sec_block_credit_wrap_text {
  font-size: calc(24 * var(--formula));
  letter-spacing: 0.02em;
}
.move_arrow {
  width: calc(13 * var(--formula));
  margin: calc(45 * var(--formula)) auto calc(28 * var(--formula));
  position: relative;
  left: calc(5 * var(--formula));
}
.sec_block_other_ttl {
  width: calc(591 * var(--formula));
  margin: 0 auto calc(55 * var(--formula));
}

/* sec01 */
.sec_block.sec01 {
  margin-top: calc(130 * var(--formula));
}
.sec_block_num.num01 {
  width: calc(55 * var(--formula));
  left: calc(17 * var(--formula));
}
.img_block_sec01_img01 {
  margin-right: auto;
  width: calc(690 * var(--formula));
}
.img_block_sec01_img02 {
  margin-top: calc(120 * var(--formula));
  width: calc(525 * var(--formula));
  margin-left: auto;
  position: relative;
  z-index: 20;
}
.img_block_sec01_img03 {
  margin-top: calc(-65 * var(--formula));
  width: calc(615 * var(--formula));
  margin-right: auto;
}
.img_block_last_img {
  width: calc(690 * var(--formula));
  margin: 0 auto;
}

/* sec02 */
.sec_block.sec02 {
  margin-top: calc(202 * var(--formula));
}
.sec_block_num.num02 {
  width: calc(61 * var(--formula));
  left: calc(15 * var(--formula));
}
.img_block_sec02_img01 {
  width: calc(750 * var(--formula));
}
.img_block_sec02_img02 {
  width: calc(600 * var(--formula));
  margin: 0 auto;
  margin-top: calc(120 * var(--formula));
}
.img_block_sec02_img03 {
  margin-top: calc(65 * var(--formula));
  width: calc(465 * var(--formula));
  margin-right: auto;
  position: relative;
  z-index: 20;
}
.img_block_sec02_img04 {
  width: calc(570 * var(--formula));
  margin-top: calc(-53 * var(--formula));
  margin-left: auto;
}

/* sec03 */
.sec_block.sec03 {
  margin-top: calc(203 * var(--formula));
}
.sec_block_num.num03 {
  width: calc(60 * var(--formula));
  left: calc(14 * var(--formula));
  margin-bottom: calc(19* var(--formula));
}
.img_block_sec03_img01 {
  width: calc(750 * var(--formula));
}
.img_block_sec03_img02 {
  margin-top: calc(120 * var(--formula));
  width: calc(585 * var(--formula));
  margin-right: auto;
}
.img_block_sec03_img03 {
  margin-top: calc(40 * var(--formula));
  width: calc(525 * var(--formula));
  margin-left: auto;
}

/* sec04 */
.sec_block.sec04 {
  margin-top: calc(201 * var(--formula));
}
.sec_block_num.num04 {
  width: calc(62 * var(--formula));
  left: calc(15 * var(--formula));
  margin-bottom: calc(20* var(--formula));
}
.img_block_sec04_img01 {
  width: calc(615 * var(--formula));
  margin-left: auto;
}
.img_block_sec04_img02 {
  margin-top: calc(40 * var(--formula));
  width: calc(555 * var(--formula));
  margin-right: auto;
}
.img_block_sec04_img03 {
  margin-top: calc(120 * var(--formula));
  width: calc(510 * var(--formula));
  margin-left: auto;
  position: relative;
  z-index: 20;
}
.img_block_sec04_img04 {
  width: calc(660 * var(--formula));
  margin-right: auto;
  margin-top: calc(-52 * var(--formula));
}

/* sec04 */
.sec_block.sec05 {
  margin-top: calc(200 * var(--formula));
}
.sec_block_num.num05 {
  width: calc(60 * var(--formula));
  left: calc(17 * var(--formula));
  margin-bottom: calc(25* var(--formula));
}
.img_block_sec05_img01 {
  width: calc(690 * var(--formula));
  margin-right: auto;
  margin-top: calc(-3 * var(--formula));
}
.img_block_sec05_img02 {
  margin-top: calc(120 * var(--formula));
  width: calc(570 * var(--formula));
  margin-left: auto;
}
.img_block_sec05_img03 {
  margin-top: calc(40 * var(--formula));
  width: calc(585 * var(--formula));
  margin-right: auto;
}
.sec_block.sec05 .move_arrow {
  margin-top: calc(80 * var(--formula));
}

/* all_item_button */
.all_item_button {
  margin: calc(200 * var(--formula)) auto;
  width: calc(676 * var(--formula));
}

/* profile_area */
.profile_area {
  margin: 0 auto;
}
.profile_area_img {
  width: calc(390 * var(--formula));
  margin: 0 auto calc(60 * var(--formula));
}
.profile_area_name {
  width: calc(652 * var(--formula));
  margin: 0 auto calc(38* var(--formula));
  border-bottom: solid 2px #000000;
  padding-bottom: calc(40 * var(--formula));
}
.profile_area_name p {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  text-align: center;
  font-size: calc(47 * var(--formula));
  letter-spacing: 0.025em;
  font-feature-settings: "palt";
}
.profile_area_lead {
  text-align: center;
  font-size: calc(24 * var(--formula));
  letter-spacing: 0.09em;
  line-height: 1.916;
  font-feature-settings: "palt";
}
.profile_area_lead a {
  text-decoration: underline;
  display: inline;
}

/* special_thanks */
.special_thanks {
  margin-top: calc(77 * var(--formula));
  text-align: center;
  font-size: calc(23 * var(--formula));
  letter-spacing: 0.02em;
  line-height: 2;
}
.special_thanks a {
  text-decoration: underline;
  display: inline;
}