@charset "UTF-8";
/* =========================================================
   THE NEW WORK EDIT / 秋の仕事服をアップデート
   カンプ指定値
     タイトルフォント : 英字 Sitka Small Bold / 日本語 小塚明朝
     テキストフォント : 日本語 Noto Sans JP
     クレジットフォント: Futura PT
     テキスト色       : 英字 #6d373e / 日本語 #595757
   デザイン基準幅     : PC 1920px / SP 786px（＝ブレークポイント）
   ---------------------------------------------------------
   英字は Adobe Fonts（sitka-small）。クレジットは Futura PT（futura-pt）。
   小塚明朝未配信時は Noto Serif JP を代替。
   ========================================================= */
/* MV帯の占有率（支給画像に焼き込み済み）。文字の逃げ幅の基準に使う */
/* モノクロ⇄カラーのゆっくりフェード切替。
   ページ読込起点だと到達時のループ位置がバラバラになり、すでにカラーで
   「切り替わらない」ように見えるため、画像の上端が画面下端に入った時点
   （data-aos-offset="0"）をトリガーにする */
div.spFooter.sp {
  margin-top: 0;
}

/*----------lp----------*/
#dh_lp_wrapper {
  width: 100%;
  font-family: "Noto Sans JP", "Open Sans", sans-serif;
  font-weight: 400;
  font-size: clamp(13px, 1.34vw, 14px);
  letter-spacing: 0.04em;
  line-height: 2;
  color: #595757;
  background-color: #fff;
}
#dh_lp_wrapper * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}
#dh_lp_wrapper img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
#dh_lp_wrapper figure {
  margin: 0;
}
#dh_lp_wrapper a {
  text-decoration: none;
  color: #595757;
}
#dh_lp_wrapper .pc {
  display: inline;
}
#dh_lp_wrapper .sp {
  display: none;
}
#dh_lp_wrapper {
  /* ---------------------------------------------------------
     追加アニメーション
     AOS が付与する .aos-animate を利用したカスタム挙動
       char-up : 1文字ずつ下からふわっと表示（MVタイトル）
                 参考: codepen.io/satomi79000033/pen/PwGZjRr
       img-in  : 画像をゆっくりフェード＋わずかに引きながら表示
       セクション見出し（.sec_ttl）・章間コピー（.copy）は AOS 標準の fade-up を使用
     --------------------------------------------------------- */
  /* .aos-init を条件に入れて、AOS未読込時は初期状態で表示されるようにする。
     .ch は index.html のスクリプトで1文字ずつ生成し、
     transition-delay（0.045秒 × 文字数）をインラインで付与している */
}
#dh_lp_wrapper [data-aos=char-up] .ch {
  display: inline-block;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 0.7s;
          transition-duration: 0.7s;
  -webkit-transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
          transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}
#dh_lp_wrapper [data-aos=char-up].aos-init .ch {
  opacity: 0;
  -webkit-transform: translateY(0.5em);
          transform: translateY(0.5em);
}
#dh_lp_wrapper [data-aos=char-up].aos-init.aos-animate .ch {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
#dh_lp_wrapper {
  /* AOS がインライン付与する transition-duration とぶつからないよう、
     図版側は子要素（a）に transition を持たせる */
}
#dh_lp_wrapper [data-aos=img-in] {
  overflow: hidden;
}
#dh_lp_wrapper [data-aos=img-in] > a {
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-duration: 1.6s;
          transition-duration: 1.6s;
  -webkit-transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
          transition-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
}
#dh_lp_wrapper [data-aos=img-in].aos-init > a {
  opacity: 0;
  -webkit-transform: scale(1.07);
          transform: scale(1.07);
}
#dh_lp_wrapper [data-aos=img-in].aos-init.aos-animate > a {
  opacity: 1;
  -webkit-transform: scale(1);
          transform: scale(1);
}
#dh_lp_wrapper {
  /* =========================================================
     mainvisual
     ========================================================= */
}
#dh_lp_wrapper .mainvisual {
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  background: #fff;
  /* 読み込み前から高さを確保し、レイアウトが飛ぶのを防ぐ
     （高さが変わると AOS の発火位置がずれるため） */
}
#dh_lp_wrapper .mainvisual > img {
  width: 100%;
  opacity: 0;
  -webkit-animation: mv_lp_fade_in 2.4s ease-out forwards;
          animation: mv_lp_fade_in 2.4s ease-out forwards;
}
#dh_lp_wrapper .mainvisual > img.pc {
  aspect-ratio: 1920/957;
}
#dh_lp_wrapper .mainvisual > img.sp {
  aspect-ratio: 786/1044;
}
#dh_lp_wrapper .mainvisual .mv_text {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #fff;
}
#dh_lp_wrapper .mainvisual .mv_ttl {
  position: absolute;
  top: 8.5%;
  left: 3%;
  margin: 0;
  font-family: "sitka-small", sans-serif;
  font-weight: 700;
  font-variant: small-caps;
  -webkit-font-feature-settings: "smcp" 1;
          font-feature-settings: "smcp" 1;
  font-size: 4.3vw;
  line-height: 1.18;
  letter-spacing: 0.05em;
}
#dh_lp_wrapper .mainvisual .mv_ttl_row {
  display: block;
}
#dh_lp_wrapper .mainvisual {
  /* 1文字ずつ下からふわっと表示（参考: codepen.io/satomi79000033/pen/PwGZjRr）。
     ファーストビューでは AOS のトランジションが走らないため、
     index.html 側で animation-delay を1文字ずつ付与して再生する */
}
#dh_lp_wrapper .mainvisual .mv_ttl .ch {
  display: inline-block;
  opacity: 0;
  -webkit-transform: translateY(0.6em);
          transform: translateY(0.6em);
  -webkit-animation: mv_lp_char_up 0.85s cubic-bezier(0.22, 1, 0.36, 1) forwards;
          animation: mv_lp_char_up 0.85s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
#dh_lp_wrapper .mainvisual {
  /* カンプ同様、2行目は字下げして段差をつくる */
}
#dh_lp_wrapper .mainvisual .mv_ttl_row2 {
  padding-left: 1.1em;
}
#dh_lp_wrapper .mainvisual .mv_lead {
  position: absolute;
  left: 3%;
  bottom: 7%;
  margin: 0;
  font-family: "Kozuka Mincho Pr6N", "小塚明朝 Pr6N", "Noto Serif JP", "Yu Mincho", serif;
  font-size: 2.1vw;
  line-height: 1.6;
  letter-spacing: 0.12em;
  white-space: nowrap;
  /* 下からスライドイン */
  opacity: 0;
  -webkit-transform: translateY(1.2em);
          transform: translateY(1.2em);
  -webkit-animation: mv_lp_slide_up 1.6s cubic-bezier(0.22, 1, 0.36, 1) 2.3s forwards;
          animation: mv_lp_slide_up 1.6s cubic-bezier(0.22, 1, 0.36, 1) 2.3s forwards;
}
@-webkit-keyframes mv_lp_fade_in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes mv_lp_fade_in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes mv_lp_slide_up {
  from {
    opacity: 0;
    -webkit-transform: translateY(1.2em);
            transform: translateY(1.2em);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes mv_lp_slide_up {
  from {
    opacity: 0;
    -webkit-transform: translateY(1.2em);
            transform: translateY(1.2em);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes mv_lp_char_up {
  from {
    opacity: 0;
    -webkit-transform: translateY(0.6em);
            transform: translateY(0.6em);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes mv_lp_char_up {
  from {
    opacity: 0;
    -webkit-transform: translateY(0.6em);
            transform: translateY(0.6em);
  }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
#dh_lp_wrapper {
  /* =========================================================
     main
     ========================================================= */
}
#dh_lp_wrapper .main_wrap {
  width: 100%;
  /* ---------- リード ---------- */
}
#dh_lp_wrapper .main_wrap .lead {
  width: 100%;
  padding: 6.2vw 4% 5.6vw;
  text-align: center;
}
#dh_lp_wrapper .main_wrap .lead p {
  margin: 0;
  line-height: 2;
}
#dh_lp_wrapper .main_wrap .lead p span {
  display: block;
}
#dh_lp_wrapper .main_wrap .lead p + p {
  margin-top: 1.9em;
}
#dh_lp_wrapper .main_wrap {
  /* ---------- 見出し ---------- */
}
#dh_lp_wrapper .main_wrap .sec_ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 0.5em;
  margin: 0;
  color: #6d373e;
  font-weight: 400;
}
#dh_lp_wrapper .main_wrap .sec_ttl .ttl_num {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  font-family: "sitka-small", sans-serif;
  font-weight: 700;
  font-size: 2.3vw;
  line-height: 1;
  letter-spacing: 0.02em;
}
#dh_lp_wrapper .main_wrap .sec_ttl {
  /* 見出しの日本語はゴシック。少し太めのレギュラー */
}
#dh_lp_wrapper .main_wrap .sec_ttl .ttl_jp {
  font-family: "Noto Sans JP", "Open Sans", sans-serif;
  font-size: 1.5vw;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.06em;
}
#dh_lp_wrapper .main_wrap {
  /* ---------- 本文 / クレジット ---------- */
}
#dh_lp_wrapper .main_wrap .txt_wrap > p {
  margin: 1.5em 0 0;
  line-height: 2;
  letter-spacing: 0.03em;
  text-align: justify;
}
#dh_lp_wrapper .main_wrap .credit {
  margin: 2em 0 0;
  padding: 0;
  list-style: none;
  font-family: "futura-pt", sans-serif;
  font-size: clamp(12px, 1.1vw, 14px);
  line-height: 1.4;
  letter-spacing: 0.04em;
  color: #595757;
}
#dh_lp_wrapper .main_wrap .credit li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 0.55em;
}
#dh_lp_wrapper .main_wrap .credit li:first-child {
  margin-top: 0;
}
#dh_lp_wrapper .main_wrap .credit {
  /* width ではなく min-width + padding-right にして、
     フォント差で品名・価格が伸びても BUY に被らないようにする */
}
#dh_lp_wrapper .main_wrap .credit .name {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  min-width: 6.4em;
  padding-right: 0.8em;
}
#dh_lp_wrapper .main_wrap .credit .price {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  min-width: 5.6em;
  padding-right: 1em;
}
#dh_lp_wrapper .main_wrap .credit {
  /* LOOKBOOK（gps-20260820）の .look__credit-buy と同デザイン */
}
#dh_lp_wrapper .main_wrap .credit .buy {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 3.6em;
  padding: 0.15em 0.8em;
  border-radius: 3rem;
  background: #fff;
  font-weight: 500;
  font-size: 1em;
  line-height: 1.4;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
  text-align: center;
  -webkit-filter: drop-shadow(0 0.1rem 0.2rem rgba(0, 0, 0, 0.25));
          filter: drop-shadow(0 0.1rem 0.2rem rgba(0, 0, 0, 0.25));
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
}
#dh_lp_wrapper .main_wrap .credit .buy:hover {
  opacity: 0.7;
}
#dh_lp_wrapper .main_wrap {
  /* ---------- 画像共通 ---------- */
}
#dh_lp_wrapper .main_wrap .sec {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
#dh_lp_wrapper .main_wrap .sec figure {
  aspect-ratio: 4/5;
}
#dh_lp_wrapper .main_wrap .sec figure a {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  /* カーソルを合わせたら薄く白くなる */
}
#dh_lp_wrapper .main_wrap .sec figure a::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: 0;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
  pointer-events: none;
  z-index: 2;
}
#dh_lp_wrapper .main_wrap .sec figure a:hover::after {
  opacity: 0.22;
}
#dh_lp_wrapper .main_wrap .sec figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#dh_lp_wrapper .main_wrap .sec .sec_row {
  width: 100%;
}
#dh_lp_wrapper .main_wrap {
  /* ---------- モノクロ⇄カラーのゆっくりフェード切替 ---------- */
}
#dh_lp_wrapper .main_wrap .img_swap a {
  position: relative;
}
#dh_lp_wrapper .main_wrap .img_swap img {
  position: absolute;
  top: 0;
  left: 0;
}
#dh_lp_wrapper .main_wrap .img_swap {
  /* 下（モノクロ）は不透明のまま固定し、上（カラー）だけを重ねてフェードさせる。
     両方を同時にフェードさせると中間で被覆率が75%まで落ち、
     下地の白が透けて一瞬飛んで見えるため */
}
#dh_lp_wrapper .main_wrap .img_swap .swap_a {
  opacity: 1;
}
#dh_lp_wrapper .main_wrap .img_swap .swap_b {
  opacity: 0;
}
#dh_lp_wrapper .main_wrap .img_swap {
  /* 対象の figure には index.html で data-aos-offset="0" を指定しており、
     AOS は「要素の上端が画面下端に入った時点」で .aos-animate を付ける。
     .aos-init が付かない＝AOS未読込のときは従来どおり自走させる */
}
#dh_lp_wrapper .main_wrap .img_swap:not(.aos-init) .swap_b, #dh_lp_wrapper .main_wrap .img_swap.aos-animate .swap_b {
  -webkit-animation: lp_swap_b 5s ease-in-out 0.3s 1 forwards;
          animation: lp_swap_b 5s ease-in-out 0.3s 1 forwards;
}
#dh_lp_wrapper .main_wrap {
  /* ---------- 01 ----------
     カンプ：右に大カット（①）＋見出し・本文、左に小カット（②）を下げて配置 */
}
#dh_lp_wrapper .main_wrap .sec01 .sec_row {
  display: grid;
  grid-template-columns: 0 40% 4% 56% 1fr;
}
#dh_lp_wrapper .main_wrap .sec01 .img_main {
  grid-column: 4;
  grid-row: 1;
}
#dh_lp_wrapper .main_wrap .sec01 {
  /* カンプ：①の天から 45%（画面幅基準）下げる */
}
#dh_lp_wrapper .main_wrap .sec01 .img_sub {
  grid-column: 2;
  grid-row: 1/3;
  margin-top: 45vw;
}
#dh_lp_wrapper .main_wrap .sec01 .txt_wrap {
  grid-column: 4;
  grid-row: 2;
  margin-top: 2.4vw;
  padding-right: 4%;
}
#dh_lp_wrapper .main_wrap {
  /* ---------- 02 ----------
     カンプ：カットを左右に並べ、その下に見出し・本文を全幅で置く */
}
#dh_lp_wrapper .main_wrap .sec02 {
  padding: 10vw 0 0;
}
#dh_lp_wrapper .main_wrap .sec02 .sec_row {
  display: grid;
  grid-template-columns: 0 50% 0% 50% 1fr;
}
#dh_lp_wrapper .main_wrap .sec02 {
  /* 右カット（50%幅・4:5）と天地を揃えるため、左は少し縦長にトリミング */
}
#dh_lp_wrapper .main_wrap .sec02 .img_l {
  grid-column: 2;
  grid-row: 1;
}
#dh_lp_wrapper .main_wrap .sec02 .img_r {
  grid-column: 4;
  grid-row: 1;
}
#dh_lp_wrapper .main_wrap .sec02 .txt_wrap {
  width: 75%;
  max-width: 800px;
  grid-column: 2/5;
  grid-row: 2;
  margin: 3.2vw auto 0;
}
#dh_lp_wrapper .main_wrap {
  /* ---------- 03 ----------
     カンプ：⑤を中央やや左に大きく置き、その下を「左テキスト／右カット」 */
}
#dh_lp_wrapper .main_wrap .sec03 {
  padding: 0;
}
#dh_lp_wrapper .main_wrap .sec03 .sec_row {
  display: grid;
  grid-template-columns: 10% 43% 4% 43% 1fr;
  row-gap: 8vw;
}
#dh_lp_wrapper .main_wrap .sec03 .img_main {
  grid-column: 1/-1;
  grid-row: 1;
  width: 47%;
  margin: 0 auto;
}
#dh_lp_wrapper .main_wrap .sec03 .txt_wrap {
  grid-column: 2;
  grid-row: 2;
  align-self: center;
}
#dh_lp_wrapper .main_wrap .sec03 .img_sub {
  grid-column: 4;
  grid-row: 2;
}
#dh_lp_wrapper .main_wrap {
  /* ---------- 04 ----------*/
}
#dh_lp_wrapper .main_wrap .sec04 {
  padding: 0 0 9vw;
}
#dh_lp_wrapper .main_wrap .sec04 .sec_row {
  display: grid;
  grid-template-columns: 0 50% 0% 50% 1fr;
}
#dh_lp_wrapper .main_wrap .sec04 .img_l {
  grid-column: 2;
  grid-row: 1;
}
#dh_lp_wrapper .main_wrap .sec04 .img_r {
  grid-column: 4;
  grid-row: 1;
}
#dh_lp_wrapper .main_wrap .sec04 {
  /* PCは2点並置のため、切替用のカラーカットは出さない */
}
#dh_lp_wrapper .main_wrap .sec04 .img_l .swap_b {
  display: none;
}
#dh_lp_wrapper .main_wrap .sec04 .txt_wrap {
  width: 75%;
  max-width: 800px;
  grid-column: 2/5;
  grid-row: 2;
  margin: 3.2vw auto 0;
}
#dh_lp_wrapper .main_wrap {
  /* ---------- 章間コピー ---------- */
}
#dh_lp_wrapper .main_wrap .copy {
  width: 45%;
  margin: 7vw auto;
  color: #6d373e;
  font-family: "sitka-small", sans-serif;
  font-weight: 700;
  line-height: 1.35;
}
#dh_lp_wrapper .main_wrap .copy .copy_row {
  display: block;
  text-align: left;
}
#dh_lp_wrapper .main_wrap .copy .copy_row2 {
  text-align: right;
}
#dh_lp_wrapper .main_wrap .copy01 {
  font-size: 2.55vw;
  letter-spacing: 0.02em;
}
#dh_lp_wrapper .main_wrap {
  /* 「A TOUCH OF / TEXTURE」はカンプ実測どおり全て大文字・中央揃え。
     grid 列幅を長い方に合わせ、justify で2行の見た目の幅を揃える */
}
#dh_lp_wrapper .main_wrap .copy02 {
  display: grid;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  justify-items: stretch;
  margin: 7.5vw auto;
}
#dh_lp_wrapper .main_wrap .copy02 .copy_row {
  display: block;
  width: 100%;
  font-size: 2.5vw;
  letter-spacing: 0;
  text-indent: 0;
  text-align: justify;
  -moz-text-align-last: justify;
       text-align-last: justify;
}
#dh_lp_wrapper .main_wrap .copy02 .copy_row2 {
  font-size: 3.3vw;
}
#dh_lp_wrapper {
  /* 1回のみ：モノクロ表示 → カラーへフェード → カラーのまま停止 */
}
@-webkit-keyframes lp_swap_b {
  0%, 25% {
    opacity: 0;
  }
  42%, 100% {
    opacity: 1;
  }
}
@keyframes lp_swap_b {
  0%, 25% {
    opacity: 0;
  }
  42%, 100% {
    opacity: 1;
  }
}
#dh_lp_wrapper {
  /* ループ：モノクロ ⇄ カラーを往復 */
}
@-webkit-keyframes lp_swap_b_loop {
  0%, 25% {
    opacity: 0;
  }
  42%, 75% {
    opacity: 1;
  }
  92%, 100% {
    opacity: 0;
  }
}
@keyframes lp_swap_b_loop {
  0%, 25% {
    opacity: 0;
  }
  42%, 75% {
    opacity: 1;
  }
  92%, 100% {
    opacity: 0;
  }
}
#dh_lp_wrapper {
  /* =========================================================
     SP（ブレークポイント 786px）
     ========================================================= */
}
@media (max-width: 786px) {
  #dh_lp_wrapper {
    font-size: 12px;
  }
  #dh_lp_wrapper .pc {
    display: none;
  }
  #dh_lp_wrapper .sp {
    display: inline;
  }
  #dh_lp_wrapper .mainvisual .mv_ttl {
    top: 20.5%;
    left: 5%;
    font-size: 7vw;
  }
  #dh_lp_wrapper .mainvisual .mv_ttl_row2 {
    padding-left: 0.9em;
  }
  #dh_lp_wrapper .mainvisual .mv_lead {
    left: 5%;
    bottom: 4.5%;
    font-size: 3.6vw;
    letter-spacing: 0.1em;
  }
  #dh_lp_wrapper .main_wrap {
    /* ---------- リード ---------- */
    /* 各セクション本文（.txt_wrap = 内寸90%／左右5%）と左右を揃える */
  }
  #dh_lp_wrapper .main_wrap .lead {
    padding: 9vw 5% 8vw;
  }
  #dh_lp_wrapper .main_wrap .lead p {
    line-height: 2;
    /* SPは折り返し位置を端末幅に任せる */
  }
  #dh_lp_wrapper .main_wrap .lead p span {
    display: inline;
  }
  #dh_lp_wrapper .main_wrap .lead p + p {
    margin-top: 1.8em;
  }
  #dh_lp_wrapper .main_wrap {
    /* ---------- 見出し ---------- */
  }
  #dh_lp_wrapper .main_wrap .sec_ttl {
    gap: 0.45em;
  }
  #dh_lp_wrapper .main_wrap .sec_ttl .ttl_num {
    font-size: 5.5vw;
  }
  #dh_lp_wrapper .main_wrap .sec_ttl .ttl_jp {
    font-size: 4vw;
  }
  #dh_lp_wrapper .main_wrap .txt_wrap > p {
    margin-top: 1.3em;
  }
  #dh_lp_wrapper .main_wrap .credit {
    margin-top: 1.8em;
    font-size: 12px;
  }
  #dh_lp_wrapper .main_wrap {
    /* ---------- セクション共通 ----------
       カンプ：カットを左右交互に振り、テキストは左右5%の内寸に収める */
  }
  #dh_lp_wrapper .main_wrap .sec {
    width: 100%;
    padding: 0;
  }
  #dh_lp_wrapper .main_wrap .sec .sec_row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  #dh_lp_wrapper .main_wrap .sec {
    /* PC用の padding-right（02・04）をリセットし、
       リードも含め全ての本文を 左右5%／内寸90% に揃える */
  }
  #dh_lp_wrapper .main_wrap .sec .txt_wrap {
    -webkit-box-ordinal-group: 100;
        -ms-flex-order: 99;
            order: 99;
    width: 90%;
    margin: 7vw 5% 0;
    padding: 0;
  }
  #dh_lp_wrapper .main_wrap .sec01 {
    padding-top: 7vw;
  }
  #dh_lp_wrapper .main_wrap .sec01 .img_main {
    width: 90%;
    margin: 0 0 0 auto;
  }
  #dh_lp_wrapper .main_wrap .sec01 .img_sub {
    width: 100%;
    margin: 7vw auto 0;
  }
  #dh_lp_wrapper .main_wrap .sec02 {
    padding-top: 11vw;
  }
  #dh_lp_wrapper .main_wrap .sec02 .img_l {
    width: 80%;
    margin: 0 0 0 auto;
  }
  #dh_lp_wrapper .main_wrap .sec02 .img_r {
    width: 80%;
    margin: 7vw 0 0;
  }
  #dh_lp_wrapper .main_wrap .sec03 .sec_row {
    row-gap: 0;
  }
  #dh_lp_wrapper .main_wrap .sec03 .img_main {
    width: 100%;
    margin: 0 auto;
  }
  #dh_lp_wrapper .main_wrap .sec03 .img_sub {
    width: 80%;
    margin: 7vw 0 0 auto;
  }
  #dh_lp_wrapper .main_wrap .sec04 {
    padding: 0 0 14vw;
    /* SPは⑦⇄⑧をゆっくりフェード切替（カンプ指定） */
  }
  #dh_lp_wrapper .main_wrap .sec04 .img_l {
    width: 100%;
    margin: 0;
  }
  #dh_lp_wrapper .main_wrap .sec04 .img_l a {
    position: relative;
  }
  #dh_lp_wrapper .main_wrap .sec04 .img_l img {
    position: absolute;
    top: 0;
    left: 0;
  }
  #dh_lp_wrapper .main_wrap .sec04 .img_l .swap_a {
    display: block;
  }
  #dh_lp_wrapper .main_wrap .sec04 .img_l .swap_b {
    display: block;
  }
  #dh_lp_wrapper .main_wrap .sec04 .img_l {
    /* 下（モノクロ）は不透明のまま固定し、上（カラー）だけを重ねてフェードさせる。
       両方を同時にフェードさせると中間で被覆率が75%まで落ち、
       下地の白が透けて一瞬飛んで見えるため */
  }
  #dh_lp_wrapper .main_wrap .sec04 .img_l .swap_a {
    opacity: 1;
  }
  #dh_lp_wrapper .main_wrap .sec04 .img_l .swap_b {
    opacity: 0;
  }
  #dh_lp_wrapper .main_wrap .sec04 .img_l {
    /* 対象の figure には index.html で data-aos-offset="0" を指定しており、
       AOS は「要素の上端が画面下端に入った時点」で .aos-animate を付ける。
       .aos-init が付かない＝AOS未読込のときは従来どおり自走させる */
  }
  #dh_lp_wrapper .main_wrap .sec04 .img_l:not(.aos-init) .swap_b, #dh_lp_wrapper .main_wrap .sec04 .img_l.aos-animate .swap_b {
    -webkit-animation: lp_swap_b_loop 5s ease-in-out 0.3s infinite;
            animation: lp_swap_b_loop 5s ease-in-out 0.3s infinite;
  }
  #dh_lp_wrapper .main_wrap .sec04 .img_r {
    display: none;
  }
  #dh_lp_wrapper .main_wrap {
    /* ---------- 章間コピー ---------- */
  }
  #dh_lp_wrapper .main_wrap .copy {
    width: 80%;
    margin: 14vw auto;
  }
  #dh_lp_wrapper .main_wrap .copy01 {
    font-size: 5.6vw;
  }
  #dh_lp_wrapper .main_wrap .copy02 {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    max-width: 90%;
  }
  #dh_lp_wrapper .main_wrap .copy02 .copy_row {
    font-size: 5vw;
    text-align: justify;
    -moz-text-align-last: justify;
         text-align-last: justify;
  }
  #dh_lp_wrapper .main_wrap .copy02 .copy_row2 {
    font-size: 7.2vw;
  }
}/*# sourceMappingURL=style.css.map */