@charset "UTF-8";
:root {
  --font_lp: "zen-kaku-gothic-new", sans-serif;
  --font_lp_en: "nimbus-sans", sans-serif;
}

* > .SRH260306collabo {
  font-style: normal;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  min-width: auto;
}

/* stickyを効かせるための個別設定 */
html {
  overflow: initial;
}
body {
  overflow: initial;
}

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

/* PC画面幅 1400px以上 固定 */
@media (min-width: 1401px) {
  .articleContainer {
    --ratio: calc(var(--pc-artboard-width) / var(--sp-artboard-width)); /* PCとSPのデザイン幅の比率 */
    /* --variable: calc(100vw / var(--pc-width)); */
    --variable: 1px;
  }
}
/* PC画面幅 768～1400px 可変 */
@media (min-width: 768px) and (max-width: 1400px) {
  .articleContainer {
    --ratio: calc(var(--pc-artboard-width) / var(--sp-artboard-width)); /* PCとSPのデザイン幅の比率 */
    --variable: calc(100vw / var(--pc-width)); /* 画面幅に基づく可変値 */
  }
}
/* SP画面幅 767px以下 可変 */
@media (max-width: 767px) {
  .articleContainer {
    --ratio: 1; /* 比率は1（変わらない） */
    --variable: calc(100vw / var(--sp-width)); /* 画面幅に基づく可変値 */
  }
}
/* ▲ -----------可変設定---------- ▲ */

.SRH260306collabo * {
  box-sizing: border-box;
}
.SRH260306collabo img {
  height: auto;
  opacity: 1;
  width: 100%;
}
.SRH260306collabo a {
  text-decoration: none;
  display: block;
}
.SRH260306collabo picture {
  display: block;
}
.SRH260306collabo p, .SRH260306collabo ul, .SRH260306collabo ol, .SRH260306collabo dl {
  list-style: none;
}
@media only screen and (max-width: 767px) {
  .SRH260306collabo .pc_only {
    display: none;
  }
  .SRH260306collabo .sp_only {
    display: block;
  }

  #women , #kids , #pets , #baby {
    padding-top: calc(47*100vw/375);
    margin-top: calc(-47*100vw/375);
  }
}
@media only screen and (min-width: 768px) {
  .SRH260306collabo .pc_only {
    display: block;
  }
  .SRH260306collabo .sp_only {
    display: none;
  }

  #women , #kids , #pets , #baby {
    padding-top: 7.9rem;
    margin-top: -7.9rem;
  }
}

#SRH260306collabo {
  --fw-thin: 100;
  --fw-light: 300;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-bold: 700;
  font-feature-settings: "palt";
}

@media screen and (min-width: 768px) {
  .lp-wrapper {
    display: flex;
    justify-content: center;
    background-color: #f9efef;
  }
  .lp-wrapper_left , .lp-wrapper_right {
    width: calc(100% - 45rem);
    height: calc(100vh - var(--header-height));
    position: sticky;
    top: var(--header-height);
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .lp-wrapper_left {
    order: -1;
  }
  .lp-wrapper_left_inner {
    width: 24.1rem;
  }
  .lp-wrapper_left_inner01 {
    width: 18.5rem;
    margin: 0 auto;
  }
  .lp-wrapper_left_inner02 {
    width: 100%;
    margin-top: 2.5rem;
  }
  .lp-wrapper_right {
    order: 1;
  }
  .lp-wrapper_right_inner {
    width: 30rem;
  }
  .lp-wrapper_right_inner_top {
    margin-bottom: 1.7rem;
  }
  .lp-wrapper_center {
    width: 45rem;
    order: 0;
  }
}
@media screen and (max-width: 767px) {
  .lp-wrapper_left , .lp-wrapper_right {
    display: none;
  }
  .lp-wrapper_center {
    width: 100%;
  }
}
.lp-wrapper_center {
  background-color: #fff;
}

/* フェードアニメーション */
.SRH260306collabo .js-fade {
  opacity: 0;
  transition: ease-in, opacity 1000ms, transform 500ms, -webkit-transform 500ms;
}
.SRH260306collabo .js-fade.active {
  opacity: 1;
}
.SRH260306collabo .js-fade.active.delay01 {
  transition-delay: 0.5s;
  animation-delay: 0.5s;
}
.SRH260306collabo .js-fade.active.delay02 {
  transition-delay: 1s;
  animation-delay: 1s;
}
.SRH260306collabo .js-fade.active.delay03 {
  transition-delay: 1.5s;
  animation-delay: 1.5s;
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  loading_image
///////////////////////////////////////////////////////////////////////////////////////
*/
.loading_image {
  /* 1. 最初から全画面で表示 */
  display: flex;
  position: fixed;
  background: #fff;
  width: 100vw;
  height: 100svh;
  top: 0;
  left: 0;
  z-index: 99999 !important;
  
  /* 2. フェードアウトの設定 */
  transition: opacity 0.4s ease, visibility 0.4s ease;
  opacity: 1;
  visibility: visible;
  
  justify-content: center;
  align-items: center;
}

.loading_image_inner {
  width: 100%;
  height: 100vh;
  position: relative;
  line-height: 0;
}

.loading_image_inner_gif {
  width: calc(352 * var(--formula));
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.loading_image_inner_text {
  width: calc(392 * var(--formula));
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* --- 不要な非表示設定を無効化 --- */
.loading_image.is-loading-pending {
  display: flex !important; 
}

/* JSでリロードでないと判定された時だけ付与するクラス */
.loading_image.is-active {
  display: flex;
}

/* 3. 消える時の設定（!importantで確実に上書き） */
.loading_image.is-hidden {
  opacity: 0 !important;
  visibility: hidden !important;
  transition: opacity 0.4s ease, visibility 0.4s ease;
  /* クリックを透過させる */
  pointer-events: none;
}

@media screen and (max-width: 767px) {
  .loading_image_inner {
    height: 100vh;
  }
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  モーダル本体
///////////////////////////////////////////////////////////////////////////////////////
*/
/* ====== モーダル背景 ====== */
.js-lp_modalOverlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  display: flex;
  justify-content: center;
  align-items: flex-end;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
  z-index: 999;
}
/* ====== モーダル本体 ====== */
.js-lp_modal-content {
  background: #fff;
  width: 100%;
  height: 90dvh;
  padding-top: calc(50* var(--formula));
  padding-bottom: calc(60* var(--formula));
  padding-left: calc(25* var(--formula));
  padding-right: calc(25* var(--formula));
  border-radius: 12px 12px 0 0;
  position: relative;
  transition: transform 0.3s ease, opacity 0.3s ease;
  opacity: 0;
}
.js-lp_modal-content_wrap {
  height: 100%;
  overflow-y: scroll;
}
/* ====== 閉じるボタン ====== */
.js-lp_close-btn {
  position: absolute;
  top: calc(-30* var(--formula));
  right: calc(20* var(--formula));
  width: calc(70* var(--formula));
  cursor: pointer;
  transition: color 0.2s;
}

/* モーダルコンテンツの初期状態を修正 */
.js-lp_modal-content_inner {
  position: absolute; /* 重なりを防ぐ */
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  pointer-events: none; /* 非表示中はクリックできないようにする */
  visibility: hidden;  /* 念のため存在を隠す */
  transition: opacity 0.3s;
}
/* 表示時のスタイル */
.js-lp_modal-content_inner.is-active {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
  position: relative; /* 表示されるものは高さを保持させる */
}
.js-lp_modal-content_inner_image {
  width: calc(700* var(--formula));
  margin: 0 auto calc(50* var(--formula));
  /* overflow: clip; */
  /* border-radius: 8px; */
}
.slide.js-slide.slick-initialized .slick-slide {
  border-radius: 15px;
  overflow: clip;
}
.js-lp_modal-content_inner_image.slide_inner {
  margin: 0 auto calc(30* var(--formula));
}
.js-lp_modal-content_inner_text_block {
  /* width: calc(608* var(--formula)); */
  width: 100%;
  margin: 0 auto;
}
.credit_block_inner {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
  margin-top: calc(10* var(--formula));
}
.credit_block_inner:first-of-type {
  margin-top: 0;
}
.credit_item {
  font-family: var(--font_lp_en);
  font-weight: var(--fw-regular);
  font-size: calc(30* var(--formula));
  line-height: 2.3333;
  width: calc(520* var(--formula));
}
.buy_button {
  width: calc(80* var(--formula));
  height: calc(40* var(--formula));
  font-family: var(--font_lp_en);
  font-weight: var(--fw-regular);
  font-size: calc(26* var(--formula));
  color: #fff;
  text-align: center;
  padding: calc(10* var(--formula)) 0;
  background-color: #f7aba0;
  border-radius: 9999px;
}

/* ====== 表示状態 ====== */
.js-lp_modalOverlay {
  pointer-events: none;
}
.js-lp_modalOverlay.show {
  opacity: 1;
  pointer-events: auto;
}

.js-lp_modalOverlay.show .js-lp_modal-content {
  transform: scale(1);
  opacity: 1;
}

.js-lp_modal_open-btn {
  cursor: pointer;
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  モーダルのslick
///////////////////////////////////////////////////////////////////////////////////////
*/
/* 矢印とドットのカスタマイズ */

/* ボタン本体のサイズ指定 */
.slide .slick-prev, .slide .slick-next {
  width: calc(70* var(--formula));
  height: calc(70* var(--formula));
  z-index: 20;
}
/* 擬似要素の設定 */
.slide .slick-prev:before,
.slide .slick-next:before {
  content: ""; /* 空にする */
  display: block;
  width: 100%;
  height: 100%;
  background-image: url(../img/slick_prev.png);
  background-repeat: no-repeat;
  background-size: contain; /* 枠に合わせてリサイズ */
  background-position: center;
  background-color: transparent;
}
.slide .slick-arrow::after {
  display: none;
}
.slide .slick-arrow::before {
  -webkit-transform: rotate(0);
  transform: rotate(0);
  top: 0;
  right: 0;
}
/* 次へボタンの反転 */
.slide .slick-next:before {
  transform: rotate(180deg);
}
/* ボタンの位置調整 */
.slide .slick-prev {
  left: calc(10* var(--formula));
}
.slide .slick-next {
  right: calc(10* var(--formula));
}

.slide .slick-dots {
  bottom: calc(-30 * var(--formula));
  left: 50%;
  transform: translateX(-50%);
  z-index: 50;
  position: relative;
}
.slide .slick-dots li.slick-active button:before {
  border-radius: 50%;
  width: calc(13* var(--formula));
  height: calc(13* var(--formula));
  background: #f7aba0;
  color: transparent;
  opacity: 1;
}
.slide .slick-dots li {
  margin: 0 -1px;
}
.slide .slick-dots li button {
  width: calc(13* var(--formula));
  height: calc(13* var(--formula));
  padding: 0;
}
.slide .slick-dots li button:before {
  border-radius: 50%;
  width: calc(13* var(--formula));
  height: calc(13* var(--formula));
  background: #000000;
  color: transparent;
  opacity: 1;
}
.slide .slick-dotted.slick-slider {
  margin-bottom: calc(50* var(--formula));
}
.slide .slick-dots li.slick-active button {
  background: transparent;
}
/* スライダーが初期化されるまでの崩れを防止 */
.js-slide {
  opacity: 0;
  transition: opacity 0.3s;
}
.js-slide.slick-initialized {
  opacity: 1;
  margin-bottom: 0;
  padding-bottom: calc(15 * var(--formula));
}



/*
///////////////////////////////////////////////////////////////////////////////////////
  lp_top_section
///////////////////////////////////////////////////////////////////////////////////////
*/
.lp_top_section {
  /* margin-bottom: calc(107* var(--formula)); */
}
.lp_top_section_slider {
  width: 100%;
  position: relative;
}
.slide.js-slide_zoom {
  width: 100%;
  margin: 0 auto;
  overflow: clip;
}
.slide_zoom_inner {
  width: 100%;
  position: relative;
}
.slide.js-slide_zoom .slide_zoom_inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/* ズームイン アニメーション */
@keyframes fadezoom {
  0% {
    transform: scale(1.0);
  }
  100% {
    transform: scale(1.2); /* 1.5秒で1.2倍だと速すぎる可能性があるので1.1〜1.15がおすすめ */
  }
}
.slick-animation {
  /* 合計10秒のアニメーション。linearにすることで一定の速度でズームします */
  animation: fadezoom 5.5s linear infinite;
}

/* topイメージのタイトルとハート */
.top_image_decoration {
  /* position: relative; */
  width: 100%;
  height: 100%;
}
.top_image_decoration_inner {
  position: absolute; /* 全て同じ位置に重ねる */
  top: 50.8%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: calc(619 * var(--formula));
  opacity: 0;           /* 通常は非表示 */
  visibility: hidden;   /* クリック判定なども消す */
  transition: opacity 1s; /* 切り替えを滑らかにしたい場合 */
}
.heart_rotate_inner {
  width: calc(270* var(--formula));
  height: calc(29* var(--formula));
  position: absolute;
  top: 6.8%;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  justify-content: center;
}
.heart_png.heart_png01 , .heart_png.heart_png03 , .heart_png.heart_png07 , .heart_png.heart_png09 {
  width: calc(28* var(--formula));
}
.heart_png.heart_png02 , .heart_png.heart_png04 , .heart_png.heart_png05 , .heart_png.heart_png06 , .heart_png.heart_png08 {
  width: calc(33* var(--formula));
}
.heart_png01 {
  rotate: 0deg;
}
.heart_png02 , .heart_png04 , .heart_png06 , .heart_png08 {
  rotate: 0deg;
}
.heart_png03 {
  rotate: 180deg;
}
.heart_png05 {
  rotate: 0deg;
}
.heart_png07 {
  rotate: -90deg;
}
.heart_png09 {
  rotate: 90deg;
}

/* ハートの基本状態 */
.heart_png {
  opacity: 0;
}

/* アニメーションの定義 */
@keyframes heartRotate360 {
  from { 
    transform: rotate(0deg);
  }
  to { 
    transform: rotate(360deg);
  }
}

/* アクティブな時だけ表示 */
.top_image_decoration_inner.is-active {
  opacity: 1;
  visibility: visible;
}

/* 親に .is-active がついた時だけアニメーションを実行 */
.top_image_decoration_inner.is-active .heart_png {
  animation-name: heartRotate360;
  animation-duration: 0.8s; /* 回転スピードをアップ */
  animation-timing-function: ease-out;
  animation-fill-mode: infinite;
  opacity: 1;
  animation-delay: 0.4s;
}

/* 各要素の遅延設定 (0.1sずつ加算) 
   前の回転が終わる前に次が始まる設定です */
.top_image_decoration_inner.is-active .heart_png01 { animation-delay: 0.1s; }
.top_image_decoration_inner.is-active .heart_png02 { animation-delay: 0.2s; }
.top_image_decoration_inner.is-active .heart_png03 { animation-delay: 0.3s; }
.top_image_decoration_inner.is-active .heart_png04 { animation-delay: 0.4s; }
.top_image_decoration_inner.is-active .heart_png05 { animation-delay: 0.5s; }
.top_image_decoration_inner.is-active .heart_png06 { animation-delay: 0.6s; }
.top_image_decoration_inner.is-active .heart_png07 { animation-delay: 0.7s; }
.top_image_decoration_inner.is-active .heart_png08 { animation-delay: 0.8s; }
.top_image_decoration_inner.is-active .heart_png09 { animation-delay: 0.9s; }

/*
///////////////////////////////////////////////////////////////////////////////////////
  lp_nav_section
///////////////////////////////////////////////////////////////////////////////////////
*/
.lp_nav_section {
  padding-top: calc(99* var(--formula));
  padding-bottom: calc(248* var(--formula));
  background-color: #f9e4e5;
}
.lp_nav_section_lead {
  font-size: calc(28* var(--formula));
  line-height: 1.7;
  text-align: center;
  font-family: var(--font_lp);
  font-weight: var(--fw-regular);
  margin-bottom: calc(146* var(--formula));
}
.index_ttl {
  width: calc(130* var(--formula));
  margin: 0 auto calc(62* var(--formula));
}
.index_women {
  margin: 0 auto calc(84* var(--formula));
  width: fit-content;
}
.index_women_wrap {
  width: calc(610* var(--formula));
  height: calc(417* var(--formula));
  border-radius: 15px;
  overflow: hidden;
  position: relative;
}
.index_women_inner {
  width: 100%;
  height: 100%;
}
.SRH260306collabo .index_women .index_women_inner img {
  display: block;
  width: 100%;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  /* アニメーションの設定：8秒サイクルで無限ループ */
  animation: floatUpDown 8s ease-in-out infinite;
}
@keyframes floatUpDown {
  0% {
    /* 初期位置（中央） */
    transform: translate(-50%, -50%);
  }
  25% {
    /* 2秒かけて上に20px移動 */
    transform: translate(-50%, calc(-50% - 20px));
  }
  50% {
    /* 2秒間その場で静止（4秒経過時点までキープ） */
    transform: translate(-50%, calc(-50% - 20px));
  }
  75% {
    /* 2秒かけて元の位置に戻る（6秒経過時点） */
    transform: translate(-50%, -50%);
  }
  100% {
    /* 2秒間その場で静止（8秒経過時点＝ループ開始へ） */
    transform: translate(-50%, -50%);
  }
}
.index_women_ttl {
  width: calc(161* var(--formula));
  margin: calc(30* var(--formula)) auto 0;
}


.index_inner {
  position: relative;
}
.index_inner_deco01 {
  width: calc(87* var(--formula));
  position: absolute;
  top: calc(26* var(--formula));
  right: calc(33* var(--formula));
  pointer-events: none;
}
.index_inner_deco02 {
  width: calc(84* var(--formula));
  position: absolute;
  top: calc(70* var(--formula));
  left: calc(37* var(--formula));
  pointer-events: none;
}
/* 上下にふわふわ */
.anime_fuwafuwa {
  transform-origin: center center;
  animation: fuwafuwa 2.5s ease infinite;
}
@keyframes fuwafuwa {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
}

.index_kids {
  margin-bottom: calc(125* var(--formula));
  position: relative;
}
.index_kids_wrap {
  width: calc(314* var(--formula));
  height: calc(369* var(--formula));
  position: relative;
  overflow: hidden;
  border-radius: 50%;
}
.index_kids_inner {
  width: 100%;
  height: 100%;
}
.index_kids_inner_deco {
  width: calc(342* var(--formula));
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
}
/* 既存のスタイルを活かしつつアニメーションを追加 */
.index_kids_inner img {
  display: block;
  width: 140%;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  /* 元の translate(-50%, -50%) をアニメーション内で制御するため、一旦コメントアウトまたは上書き */
  /* transform: translate(-50%, -50%); */
  
  /* 12秒サイクルで無限ループ */
  animation: slide-move 12s ease-in-out infinite;
}
/* アニメーションの中身 */
@keyframes slide-move {
  /* 0秒〜5秒：中央で静止 */
  0%, 41.66% {
    transform: translate(-50%, -50%);
  }
  /* 5秒〜6秒：1秒かけて右に20px移動 */
  /* -50% は基準位置なので、そこから +20px します */
  50% {
    transform: translate(calc(-50% + 20px), -50%);
  }
  /* 6秒〜11秒：右側で5秒間静止 */
  91.66% {
    transform: translate(calc(-50% + 20px), -50%);
  }
  /* 11秒〜12秒：1秒かけて元の位置へ戻る */
  100% {
    transform: translate(-50%, -50%);
  }
}
.index_kids_ttl {
  width: calc(99* var(--formula));
  margin: calc(30* var(--formula)) auto 0;
}



.flex_inner {
  display: flex;
  justify-content: space-between;
  width: calc(593* var(--formula));
  margin-left: calc(62* var(--formula));
}
.index_inner_deco03 {
  width: calc(54* var(--formula));
  position: absolute;
  top: calc(500* var(--formula));
  left: calc(37* var(--formula));
  pointer-events: none;
}
.index_inner_deco04 {
  width: calc(91* var(--formula));
  position: absolute;
  top: calc(573* var(--formula));
  right: calc(74* var(--formula));
  pointer-events: none;
}
.index_inner_deco05 {
  width: calc(64* var(--formula));
  position: absolute;
  bottom: calc(-130* var(--formula));
  right: calc(120* var(--formula));
  pointer-events: none;
}

.index_pets {
  width: calc(216* var(--formula));
  position: relative;
  left: calc(-3* var(--formula));
  margin: 0 auto;
}
.index_pets img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  /* パキッと切り替える設定 */
  animation-timing-function: steps(1);
}
/* 全体 6秒サイクル (3秒アクション + 3秒静止)
  0.5秒 = 全体の約8.33%
*/
.img_large {
  animation: flashLarge 6s infinite;
}
.img_small {
  animation: flashSmall 6s infinite;
}
/* 大画像の動き (0.5sごとに交互) */
@keyframes flashLarge {
  0%    { opacity: 1; } /* 大1 (0.0s-0.5s) */
  8.3%  { opacity: 0; } /* 小1 (0.5s-1.0s) */
  16.6% { opacity: 1; } /* 大2 (1.0s-1.5s) */
  25%   { opacity: 0; } /* 小2 (1.5s-2.0s) */
  33.3% { opacity: 1; } /* 大3 (2.0s-2.5s) */
  41.6% { opacity: 0; } /* 小3 (2.5s-6.0sまで静止) */
  100%  { opacity: 0; } 
}
/* 小画像の動き (大と真逆) */
@keyframes flashSmall {
  0%    { opacity: 0; }
  8.3%  { opacity: 1; }
  16.6% { opacity: 0; }
  25%   { opacity: 1; }
  33.3% { opacity: 0; }
  41.6% { opacity: 1; } /* 小3 (2.5s-6.0sまで静止) */
  100%  { opacity: 1; }
}



.index_baby {
  width: calc(165* var(--formula));
  margin-top: calc(148* var(--formula));
}
.index_baby_img {
  width: 100%;
  margin-bottom: calc(60* var(--formula));
}
.index_baby_ttl {
  width: calc(108* var(--formula));
  margin: 0 auto;
}
.anime_pixel_move {
  transform-origin: center;
  /* 5秒周期で無限に繰り返す */
  animation: katakata 5s infinite;
}
@keyframes katakata {
  /* 0%から80%の間は動かない（待ち時間） */
  0%, 80% {
    transform: translateX(0) rotate(0);
  }
  /* 80%から100%の間で激しく動く */
  82% { transform: translateX(2px) rotate(2.5deg); }
  84% { transform: translateX(-2px) rotate(-2.5deg); }
  86% { transform: translateX(2px) rotate(2.5deg); }
  88% { transform: translateX(-2px) rotate(-2.5deg); }
  90% { transform: translateX(0) rotate(0); }
  100% { transform: translateX(0) rotate(0); }
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  lp_women_section
///////////////////////////////////////////////////////////////////////////////////////
*/
.lp_women_section {
  margin-bottom: calc(150* var(--formula));
}
.lp_section_top {
  width: 100%;
  margin-bottom: calc(42* var(--formula));
  position: relative;
  overflow: clip;
}
.lp_section_top_ttl_women {
  width: calc(306* var(--formula));
  position: absolute;
  top: calc(68* var(--formula));
  left: 50.8%;
  transform: translateX(-50%);
  pointer-events: none;
}
.flex_image_section {
  width: calc(705* var(--formula));
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: calc(16* var(--formula)) 0;
}
.flex_image_section01 {
  margin-bottom: calc(40* var(--formula));
}
.flex_image_inner {
  width: calc(344* var(--formula));
  position: relative;
  overflow: clip;
  border-radius: 8px;
}
.flex_image_inner::after {
  content: "";
  background-image: url(../img/button_plus.png);
  background-size: contain;
  width: calc(38* var(--formula));
  height: calc(38* var(--formula));
  position: absolute;
  bottom: calc(17* var(--formula));
  right: calc(14* var(--formula));
  z-index: 1;
}
.movie_inner video {
  width: 100%;
  height: auto;
}
.flex_image_inner.inner_movie::after {
  content: none;
}
.flex_image_inner.image_w_21::after {
  content: none;
}

.image_w_04 {
  position: relative;
}
.fade_loop_image {
  position: relative;
  /* 高さが潰れないよう、画像のサイズに合わせて調整してください */
  aspect-ratio: 344 / 451; 
  overflow: hidden;
}
.fade_loop_image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  
  /* 初期状態はすべて透明 */
  opacity: 0;
  z-index: 0;
  /* transitionを全画像に適用 */
  transition: opacity 0.5s ease-in-out; 
}
/* アクティブな画像だけを表示 */
.fade_loop_image img.is-active {
  opacity: 1;
  z-index: 1;
}

.fade_loop_image02 {
  position: relative;
  /* 高さが潰れないよう、画像のサイズに合わせて調整してください */
  aspect-ratio: 405 / 588; 
  overflow: hidden;
}
.fade_loop_image02 img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  
  /* 初期状態はすべて透明 */
  opacity: 0;
  z-index: 0;
  /* transitionを全画像に適用 */
  transition: opacity 1s ease-in-out; 
}
/* アクティブな画像だけを表示 */
.fade_loop_image02 img.is-active {
  opacity: 1;
  z-index: 1;
}


/* 親要素：画像を重ねるための設定 */
.css-loop-container {
  position: relative;
}
.loop-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  opacity: 0; /* 基本は非表示 */
}
/* アニメーションの設定：8秒ループ / 瞬間切り替え(step-end) */
.img-1 {
  animation: loop-1 8s step-end infinite;
}
.img-2 {
  animation: loop-2 8s step-end infinite;
}
/* 0.5秒 = 全体(8s)の 6.25% 
  10回目の切り替えが 5.0秒(62.5%) で完了し、そこから3秒静止
*/
@keyframes loop-1 {
  0%   { opacity: 1; } /* img-1 */
  6.25% { opacity: 0; } /* 0.5s: img-2へ */
  12.5% { opacity: 1; } /* 1.0s: img-1へ */
  18.75%{ opacity: 0; } /* 1.5s: img-2へ */
  25%   { opacity: 1; } /* 2.0s: img-1へ */
  31.25%{ opacity: 0; } /* 2.5s: img-2へ */
  37.5% { opacity: 1; } /* 3.0s: img-1へ */
  43.75%{ opacity: 0; } /* 3.5s: img-2へ */
  50%   { opacity: 1; } /* 4.0s: img-1へ */
  56.25%{ opacity: 0; } /* 4.5s: img-2へ (ここから3秒静止開始) */
  100%  { opacity: 0; } /* 8.0sまでそのまま */
}
@keyframes loop-2 {
  0%   { opacity: 0; }
  6.25% { opacity: 1; }
  12.5% { opacity: 0; }
  18.75%{ opacity: 1; }
  25%   { opacity: 0; }
  31.25%{ opacity: 1; }
  37.5% { opacity: 0; }
  43.75%{ opacity: 1; }
  50%   { opacity: 0; }
  56.25%{ opacity: 1; } /* 4.5sから表示 */
  100%  { opacity: 1; } /* 8.0sまで表示(3秒静止) */
}


.loop_image {
  position: relative;
}
/* 共通設定：画像を完全に重ねる */
.SRH260306collabo .loop_image img {
  display: block;
  width: 100%;
  height: auto;
}
.SRH260306collabo .loop_image img:nth-child(2) {
  position: absolute;
  top: 0;
  left: 0;
}
/* 1枚目のアニメーション：見える → 消える */
.SRH260306collabo .loop_image img:nth-child(1) {
  animation: hide 2s infinite step-end;
}
/* 2枚目のアニメーション：消える → 見える */
.SRH260306collabo .loop_image img:nth-child(2) {
  animation: show 2s infinite step-end;
}
/* GIF風アニメーションの中身 */
@keyframes show {
  0%, 100% { opacity: 0; }
  50% { opacity: 1; }
}
@keyframes hide {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}


.loop_image3s {
  position: relative;
}
/* 共通設定：画像を完全に重ねる */
.SRH260306collabo .loop_image3s img {
  display: block;
  width: 100%;
  height: auto;
}
.SRH260306collabo .loop_image3s img:nth-child(2) {
  position: absolute;
  top: 0;
  left: 0;
}
/* 1枚目のアニメーション：見える → 消える */
.SRH260306collabo .loop_image3s img:nth-child(1) {
  animation: hide 6s infinite step-end;
}
/* 2枚目のアニメーション：消える → 見える */
.SRH260306collabo .loop_image3s img:nth-child(2) {
  animation: show 6s infinite step-end;
}
/* GIF風アニメーションの中身 */
@keyframes show {
  0%, 100% { opacity: 0; }
  50% { opacity: 1; }
}
@keyframes hide {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}


.loop_image1_5s {
  position: relative;
}
/* 共通設定：画像を完全に重ねる */
.SRH260306collabo .loop_image1_5s img {
  display: block;
  width: 100%;
  height: auto;
}
.SRH260306collabo .loop_image1_5s img:nth-child(2) {
  position: absolute;
  top: 0;
  left: 0;
}
/* 1枚目のアニメーション：見える → 消える */
.SRH260306collabo .loop_image1_5s img:nth-child(1) {
  animation: hide 3s infinite step-end;
}
/* 2枚目のアニメーション：消える → 見える */
.SRH260306collabo .loop_image1_5s img:nth-child(2) {
  animation: show 3s infinite step-end;
}
/* GIF風アニメーションの中身 */
@keyframes show {
  0%, 100% { opacity: 0; }
  50% { opacity: 1; }
}
@keyframes hide {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}






/* flex_image_section02 */
.flex_image_section02 {
  /* margin-bottom: calc(70* var(--formula)); */
}
/* flex_image_section03 */
.flex_image_section03 {
  margin-bottom: calc(120* var(--formula));
}


/*
///////////////////////////////////////////////////////////////////////////////////////
  lp_women_section_circle
///////////////////////////////////////////////////////////////////////////////////////
*/
.lp_women_section_circle {
  margin-bottom: calc(46 * var(--formula));
  position: relative;
}
.lp_women_section_circle::after {
  content: "";
  background-image: url(../img/button_plus.png);
  background-size: contain;
  width: calc(38 * var(--formula));
  height: calc(38 * var(--formula));
  position: absolute;
  bottom: calc(18 * var(--formula));
  left: 50%;
  transform: translateX(-50%);
}

.lp_women_section_circle_inner {
  position: relative;
  width: calc(750 * var(--formula));
  height: calc(750 * var(--formula));
  border-radius: 50%;
  /* 2秒(36.3%)〜4秒(72.7%)で30度右に傾く */
  animation: inner_rotate_gradual 9s linear infinite;
}

/* 共通設定：直下の背景画像2枚のみを対象（キャラクターのimgを除外） */
.SRH260306collabo .lp_women_section_circle_inner > img {
  display: block;
  width: 100%;
  height: auto;
  animation-timing-function: ease-in-out;
}

/* 画像1：1秒(18.2%)でパッと消える */
.SRH260306collabo .lp_women_section_circle_inner > img:nth-child(1) {
  position: relative;
  z-index: 1; /* 背面 */
  animation-name: img01_switch_stay; /* 名前を変更 */
  animation-duration: 9s;
  animation-iteration-count: infinite;
}

/* 画像2：1秒(18.2%)でパッと現れる */
.SRH260306collabo .lp_women_section_circle_inner > img:nth-child(2) {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2; /* 前面 */
  animation-name: img02_switch_fade; /* 名前を変更 */
  animation-duration: 9s;
  animation-iteration-count: infinite;
}

/* --- キャラクターの移動と消失 --- */
.lp_women_section_circle_guide {
  position: absolute;
  top: calc(5 * var(--formula));
  left: calc(50% - calc(5 * var(--formula)));
  width: calc(10 * var(--formula));
  height: calc(50% + calc(5 * var(--formula)));
  transform-origin: center bottom;
  /* 最初から表示状態にする */
  opacity: 1; 
  z-index: 10;
  pointer-events: none;
  animation: chara_complex_move 9s linear infinite;
}

.lp_women_section_circle_character {
  width: calc(59 * var(--formula));
  height: auto;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: calc(100% - calc(5 * var(--formula)));
  rotate: -35deg;
}

.lp_women_section_circle_character img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  opacity: 1 !important;
  position: static !important;
}

/* --- アニメーションの定義 --- */

/* 全体の傾き：
  3.5s(38.9%)まで静止 → 5.5s(61.1%)から動き出し → 7.5s(83.3%)で傾き完了 
  → 8.5s(94.4%)から戻り開始 → 9.0s(100%)で完了
*/
@keyframes inner_rotate_gradual {
  0%, 61.1% { transform: rotate(0deg); } 
  83.3%, 94.4% { transform: rotate(10deg); } 
  100% { transform: rotate(0deg); }
}

/* 画像1 (背面) */
@keyframes img01_switch_stay {
  0%, 50.0% { opacity: 1; }  /* 4.5sまで表示 */
  53.3% { opacity: 0; }      /* 0.3sフェードで消える */
  94.3% { opacity: 0; }
  94.4%, 100% { opacity: 1; } /* 戻りと同時に出現 */
}

/* 画像2 (前面) */
@keyframes img02_switch_fade {
  /* 行き(01→02)：4.5s(50.0%)から0.3sでフェード */
  0%, 46.7% { opacity: 0; }
  50.0% { opacity: 1; }
  
  /* 戻り(02→01)：8.5s(94.4%)から0.5sでフェード */
  94.4% { opacity: 1; }
  100% { opacity: 0; }
}

/* キャラクターの移動とフェードイン・アウト */
@keyframes chara_complex_move {
  /* 0sから0.3s(3.3%)でフェードインし、3.5s(38.9%)まで待機 */
  0% { opacity: 0; transform: rotate(20deg); }
  3.3%, 63.9% { opacity: 1; transform: rotate(20deg); }
  
  /* 元の動きのタイミングを維持してスライド */
  64.0% { opacity: 1; transform: rotate(20deg); } /* 移動開始 */
  83.3% { opacity: 1; transform: rotate(35deg); } /* 移動完了 */
  
  /* 消え始め：戻り開始(94.4%)の0.3s前からフェードアウト */
  91.1% { opacity: 1; transform: rotate(35deg); }
  94.4%, 100% { opacity: 0; transform: rotate(35deg); }
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  lp_women_section_heart
///////////////////////////////////////////////////////////////////////////////////////
*/
.lp_women_section_heart {
  width: 100%;
  margin-bottom: calc(50 * var(--formula));
  padding-top: calc(70* var(--formula));
  overflow: clip;
}
.lp_women_section_heart_inner {
  position: relative;
  width: 100%;
  height: calc(731* var(--formula));
  /* overflow: clip; */
}
.lp_women_section_heart_loop {
  width: 100%;
  height: calc(113* var(--formula));
  overflow: clip;
}
.lp_women_section_heart_loop.lp_women_section_heart_loop01 {
  position: absolute;
  top: 0;
  left: 0;
}
.lp_women_section_heart_loop.lp_women_section_heart_loop02 {
  position: absolute;
  bottom: 0;
  left: 0;
}
.lp_women_section_heart_loop_inner {
  display: inline-flex;
  animation: marquee 5s linear infinite;
}
.lp_women_section_heart_loop.lp_women_section_heart_loop02 .lp_women_section_heart_loop_inner {
  animation: marquee_reverse 5s linear infinite;
}
.lp_women_section_heart_loop_inner div {
  padding-right: calc(50* var(--formula));
  width: calc(175* var(--formula));
}
@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}
@keyframes marquee_reverse {
  0% {
    transform: translateX(-50%);
  }
  100% {
    transform: translateX(0%);
  }
}

.lp_women_section_heart_human {
  position: absolute;
  top: calc(-30* var(--formula));
  left: calc(-100* var(--formula));
  width: calc(937* var(--formula));
  height: calc(702* var(--formula));
}
.lp_women_section_heart_human_inner {
  position: relative;
}
.human_image {
  width: calc(539* var(--formula));
}
.human_image.human_image01 {
  position: absolute;
  left: calc(-60* var(--formula));
  top: calc(0* var(--formula));
}
.human_image.human_image02 {
  position: absolute;
  left: calc(142* var(--formula));
  top: calc(114* var(--formula));
}
.human_image.human_image03 {
  position: absolute;
  left: calc(340* var(--formula));
  top: calc(248* var(--formula));
}
.js-trigger .js-trigger_on {
  opacity: 0;
}
.js-trigger .js-trigger_on.delay_1 {
  transition-delay: 0.5s;
  animation-delay: 0.5s;
}
.js-trigger .js-trigger_on.delay_2 {
  transition-delay: 1s;
  animation-delay: 1s;
}
.js-trigger.active .js-trigger_on {
  opacity: 1;
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  lp_women_section_bottom
///////////////////////////////////////////////////////////////////////////////////////
*/
.lp_women_section_bottom {
  margin-bottom: calc(120* var(--formula));
}
.lp_women_section_bottom_image01 {
  width: calc(502* var(--formula));
  margin: 0 auto calc(164* var(--formula));
  position: relative;
  left: calc(15* var(--formula));
}
/* 共通設定：すべて重ねる */
.SRH260306collabo .lp_women_section_bottom_image01 img {
  display: block;
  width: 100%;
  height: auto;
}
/* 2枚目以降を絶対配置で重ねる */
.SRH260306collabo .lp_women_section_bottom_image01 img:nth-child(n+2) {
  position: absolute;
  top: 0;
  left: 0;
}
/* アニメーション設定（時間は任意で調整、ここでは3秒） */
.SRH260306collabo .lp_women_section_bottom_image01 img {
  animation: forth-switch 4s infinite step-end;
}
/* 各画像の表示タイミングをずらす */
.SRH260306collabo .lp_women_section_bottom_image01 img:nth-child(1) { animation-delay: 0s; }
.SRH260306collabo .lp_women_section_bottom_image01 img:nth-child(2) { animation-delay: 1s; }
.SRH260306collabo .lp_women_section_bottom_image01 img:nth-child(3) { animation-delay: 2s; }
.SRH260306collabo .lp_women_section_bottom_image01 img:nth-child(4) { animation-delay: 3s; }
/* 4枚用のキーフレーム */
@keyframes forth-switch {
  0% { opacity: 1; }
  25% { opacity: 0; }
  50% { opacity: 0; }
  75% { opacity: 0; }
  100% { opacity: 0; }
}

.lp_women_section_bottom_image02 {
  width: calc(607* var(--formula));
  margin: 0 auto calc(210* var(--formula));
  position: relative;
  left: calc(10* var(--formula));
}
.lp_women_section_bottom_image02_inner {
  width: 100%;
  cursor: pointer;
  overflow: clip;
  border-radius: 8px;
}
.lp_women_section_bottom_image01::after {
  content: "";
  background-image: url(../img/button_plus.png);
  background-size: contain;
  width: calc(38* var(--formula));
  height: calc(38* var(--formula));
  position: absolute;
  bottom: calc(18* var(--formula));
  right: calc(24* var(--formula));
}
.image_w_19::after {
  content: "";
  background-image: url(../img/button_plus.png);
  background-size: contain;
  width: calc(38* var(--formula));
  height: calc(38* var(--formula));
  position: absolute;
  bottom: calc(20* var(--formula));
  right: calc(28* var(--formula));
}
.lp_women_section_bottom_image02_deco01 {
  width: calc(125* var(--formula));
  position: absolute;
  top: calc(-70* var(--formula));
  right: calc(36* var(--formula));
  pointer-events: none;
}
.lp_women_section_bottom_image02_deco02 {
  width: calc(105* var(--formula));
  position: absolute;
  top: calc(108* var(--formula));
  left: calc(-42* var(--formula));
  pointer-events: none;
}
.lp_women_section_bottom_image02_deco03 {
  width: calc(65* var(--formula));
  position: absolute;
  top: calc(150* var(--formula));
  right: calc(-26* var(--formula));
  pointer-events: none;
}
.lp_women_section_bottom_image02_deco04 {
  width: calc(76* var(--formula));
  position: absolute;
  top: calc(457* var(--formula));
  left: calc(-43* var(--formula));
  pointer-events: none;
}
.lp_women_section_bottom_image02_deco05 {
  width: calc(76* var(--formula));
  position: absolute;
  top: calc(542* var(--formula));
  right: calc(-44* var(--formula));
  pointer-events: none;
}
.lp_women_section_bottom_image02_deco06 {
  width: calc(102* var(--formula));
  position: absolute;
  bottom: calc(-35* var(--formula));
  left: calc(83* var(--formula));
  pointer-events: none;
}

.lp_women_section_bottom_image03 {
  width: calc(149* var(--formula));
  margin: 0 auto;
  padding-bottom: calc(10* var(--formula));
  position: relative;
  left: calc(18* var(--formula));
}
.anime_katikati {
  position: relative;
  animation: btn_animation 3s infinite;
}
@keyframes btn_animation {
  0% {
    top: 0px;
  }
  10% {
    top: 3px;
  }
  20% {
    top: 0px;
  }
  30% {
    top: 3px;
  }
  40% {
    top: 0px;
  }
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  lp_kids_section
///////////////////////////////////////////////////////////////////////////////////////
*/
.lp_kids_section {
  margin-bottom: calc(171* var(--formula));
}
.lp_kids_section .lp_section_top {
  margin-bottom: calc(55 * var(--formula));
}
.lp_section_top_ttl_kids {
  width: calc(315* var(--formula));
  position: absolute;
  top: calc(28* var(--formula));
  left: calc(30* var(--formula));
  pointer-events: none;
}
/* flex_image_section04 */
.flex_image_section04 {
  margin-bottom: calc(137* var(--formula));
}
/* lp_kids_section_bottom */
.lp_kids_section_bottom {
  width: calc(216* var(--formula));
  margin: 0 auto;
  position: relative;
  left: calc(11* var(--formula));
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  lp_baby_section
///////////////////////////////////////////////////////////////////////////////////////
*/
.lp_baby_section {
  margin-bottom: calc(170* var(--formula));
}
.lp_baby_section .lp_section_top {
  margin-bottom: calc(54* var(--formula));
}
.lp_section_top_ttl_baby {
  width: calc(320* var(--formula));
  position: absolute;
  bottom: calc(58* var(--formula));
  left: calc(40* var(--formula));
  pointer-events: none;
}
.lp_baby_section_top_loop {
  width: 100%;
  position: absolute;
  height: calc(40* var(--formula));
  top: calc(22* var(--formula));
  left: 0;
  /* overflow: clip; */
  pointer-events: none;
}
.lp_baby_section_top_loop_inner {
  display: flex;
  width: max-content;
  /* 画像間の隙間を共通化 */
  gap: calc(20 * var(--formula));
  align-items: center;
  /* 3セット並べて、1セット分だけ左に流す */
  animation: marquee03 10s linear infinite;
}
.lp_baby_section_top_loop_image01 {
  width: calc(209* var(--formula));
  position: relative;
  top: calc(-3 * var(--formula));
}
.lp_baby_section_top_loop_image02 {
  width: calc(212* var(--formula));
}
.lp_baby_section_top_loop_image03 {
  width: calc(219* var(--formula));
}
@keyframes marquee03 {
  0% {
    transform: translateX(0);
  }
  100% {
    /* 3セット（100%）のうちの1セット分（1/3）だけ動かす */
    transform: translateX(-33.3333%);
  }
}

/* flex_image_section05 */
.flex_image_section05 {
  margin-bottom: calc(123* var(--formula));
}
/* lp_baby_section_bottom */
.lp_baby_section_bottom {
  width: calc(179* var(--formula));
  margin: 0 auto;
  position: relative;
  left: calc(14* var(--formula));
}
.lp_baby_section_bottom img.origin {
  position: relative;
  z-index: 3;
}
.copy {
  position: absolute;
  top: 0;
  left: 0;
  width: 92%;
  opacity: 0;
  pointer-events: none;
}
/* 親要素の動き（左右へのスライド） */
.copy--left {
  /* delayを0msにし、開始位置をkeyframes側で制御するのが最も安全です */
  animation: things_vol1_item_2_left 10000ms cubic-bezier(0.23, 1, 0.32, 1) infinite;
  will-change: transform, opacity;
}

@keyframes things_vol1_item_2_left {
0% {
-webkit-transform: translateX(0);
transform: translateX(0)
}

5% {
opacity: 0
}

45%,75% {
-webkit-transform: translateX(-70%);
transform: translateX(-70%);
opacity: 0.6
}

100% {
-webkit-transform: translateX(5%);
transform: translateX(5%);
opacity: 0
}
}

/* 子要素（img）の微細な動き */
.copy--left img {
  /* 10msから100ms程度に緩め、ガタつきを抑えます。delayも削除を推奨 */
  animation: things_vol1_item_2_left_img 150ms linear infinite;
  will-change: transform;
}

@keyframes things_vol1_item_2_left_img {
    0% {
        opacity: 0.75;
        transform: translateX(0.18%);
    }
    50% {
        transform: translateX(-0.18%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

/* 右側も同様に修正 */
.copy--right {
  animation: things_vol1_item_2_right 10000ms cubic-bezier(0.23, 1, 0.32, 1) infinite;
  will-change: transform, opacity;
}

@keyframes things_vol1_item_2_right {
0% {
-webkit-transform: translateX(0);
transform: translateX(0)
}

5% {
opacity: 0
}

45%,75% {
-webkit-transform: translateX(70%);
transform: translateX(70%);
opacity: 0.6
}

100% {
-webkit-transform: translateX(-5%);
transform: translateX(-5%);
opacity: 0
}
}

.copy--right img {
    animation: things_vol1_item_2_right_img 150ms linear infinite;
    will-change: transform;
}

@keyframes things_vol1_item_2_right_img {
    0% {
        opacity: 0.78;
        transform: translateX(-0.18%);
    }
    50% {
        transform: translateX(0.18%);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  lp_pets_section
///////////////////////////////////////////////////////////////////////////////////////
*/
.lp_pets_section {
  margin-bottom: calc(204* var(--formula));
}
.lp_pets_section .lp_section_top {
  margin-bottom: calc(56* var(--formula));
}
.lp_section_top_ttl_pets {
  width: calc(422* var(--formula));
  position: absolute;
  top: calc(104* var(--formula));
  left: 52.3%;
  transform: translateX(-50%);
  pointer-events: none;
}
.flex_image_section06 {
  margin-bottom: calc(216* var(--formula));
}
/* lp_pets_section_bottom */
.lp_pets_section_bottom {
  width: calc(473* var(--formula));
  margin: 0 auto;
}


/*
///////////////////////////////////////////////////////////////////////////////////////
  movie_section
///////////////////////////////////////////////////////////////////////////////////////
*/
.movie_section {
  margin-bottom: calc(140* var(--formula));
}
.movie_section_ttl {
  width: calc(170* var(--formula));
  margin: 0 auto calc(34* var(--formula));
}
.movie_section_slide {
  width: 100%;
}
.slide.js-slide_wrap .movie_slide_inner {
  width: calc(480* var(--formula));
  margin: 0 calc(10* var(--formula));
  border-radius: 8px;
  overflow: clip;
}
.slide.js-slide_wrap .movie_slide_inner img {
  max-width: 100%;
  height: auto;
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  onlineshop_section
///////////////////////////////////////////////////////////////////////////////////////
*/
.onlineshop_section {
  margin-bottom: calc(146* var(--formula));
}
.onlineshop_section_ttl {
  width: calc(276* var(--formula));
  margin: 0 auto calc(35* var(--formula));
  position: relative;
  left: calc(-9* var(--formula));
}
.onlineshop_section_img {
  width: calc(562* var(--formula));
  margin: 0 auto calc(53* var(--formula));
  border-radius: 15px;
  overflow: clip;
  position: relative;
}
/* .SRH260306collabo .onlineshop_section_img div {
  display: block;
  width: 100%;
  height: auto;
}
.SRH260306collabo .onlineshop_section_img div:nth-child(n+2) {
  position: absolute;
  top: 0;
  left: 0;
}
.SRH260306collabo .onlineshop_section_img div {
  animation: triple-switch 3s infinite step-end;
}
.SRH260306collabo .onlineshop_section_img div:nth-child(1) { animation-delay: 0s; }
.SRH260306collabo .onlineshop_section_img div:nth-child(2) { animation-delay: 1s; }
.SRH260306collabo .onlineshop_section_img div:nth-child(3) { animation-delay: 2s; } */

.all_items {
  width: calc(500* var(--formula));
  margin: 0 auto;
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  shop_section
///////////////////////////////////////////////////////////////////////////////////////
*/
.shop_section {
  margin-bottom: calc(162* var(--formula));
}
.shop_section_img {
  width: calc(405* var(--formula));
  margin: 0 auto calc(42* var(--formula));
}
.shop_buttons {
  width: calc(500* var(--formula));
  margin: 0 auto;
}

/*
///////////////////////////////////////////////////////////////////////////////////////
  bottom_section
///////////////////////////////////////////////////////////////////////////////////////
*/
.bottom_section {
  width: 100%;
  position: relative;
}
.bottom_section_img {
  width: 100%;
}
.bottom_section_credit {
  width: calc(550* var(--formula));
  position: absolute;
  bottom: calc(44* var(--formula));
  left: calc(47* var(--formula));
}
.bottom_section_credit_text {
  font-family: var(--font_lp_en);
  font-weight: var(--fw-regular);
  font-size: calc(23* var(--formula));
  line-height: 1.5217;
  color: #fff;
}




@media only screen and (min-width: 768px) {
  .js-lp_modal-content {
    width: 45rem;
    height: 88dvh;
  }

}
@media only screen and (max-width: 767px) {
  .loading_image_inner_text {
    top: 55%;
  }
}

.movie_slide_inner {
  position: relative;
}
.playback_button {
  width: calc(85* var(--formula));
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  cursor: pointer;
}

.bredlist {
  display: none !important;
}

.js-lp_modal-content_wrap {
  /*スクロールバー非表示（IE・Edge）*/
  -ms-overflow-style: none;
  /*スクロールバー非表示（Firefox）*/
  scrollbar-width: none;
}
/*スクロールバー非表示（Chrome・Safari）*/
.js-lp_modal-content_wrap::-webkit-scrollbar{
  display:none;
}
dl{
  margin: 50px 0;
}
dt,dd{
  line-height: 1.8;
}