/* =========================================================
   mobile-modern.css  —  SaaS風モダン・スマホ最適化レイヤー
   2026-05-21 追加 / index.bundle.css の後に読み込む
   このファイルだけでロールバック可能（リンク1行外せば元通り）
   ========================================================= */

/* ---------- 0. デザイントークン ---------- */
:root {
  --mm-brand: #E60012;
  --mm-brand-dark: #b8000e;
  --mm-accent: #FFD400;
  --mm-ink: #0a0a0a;
  --mm-ink-2: #4a4a4a;
  --mm-ink-3: #6b6b6b;
  --mm-bg: #ffffff;
  --mm-surface: #f7f8fa;
  --mm-surface-2: #eef0f3;
  --mm-line: #e5e7eb;
  --mm-radius-sm: 10px;
  --mm-radius: 16px;
  --mm-radius-lg: 24px;
  --mm-shadow-sm: 0 1px 2px rgba(15,23,42,.06), 0 1px 1px rgba(15,23,42,.04);
  --mm-shadow: 0 6px 24px rgba(15,23,42,.08), 0 2px 6px rgba(15,23,42,.04);
  --mm-shadow-lg: 0 24px 60px rgba(15,23,42,.12), 0 8px 20px rgba(15,23,42,.06);
  --mm-ease: cubic-bezier(.2,.7,.2,1);
  --mm-safe-bottom: env(safe-area-inset-bottom, 0px);
}

/* ---------- 1. グローバル安全策（全幅） ---------- */
html, body { overflow-x: hidden; }
img, video, picture, svg { max-width: 100%; height: auto; }
*, *::before, *::after { box-sizing: border-box; }

/* iPhone のフォントズーム抑止 */
@media screen and (max-width: 767px) {
  html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
}

/* ---------- 1b. フォント統一（スマホのみ）----------
   本文は未ロードの商用「Shin Go」指定で iOS=ヒラギノ / Android=Noto / Windows=Meiryo
   とOSごとにバラけていた。Noto Sans JP を最優先に差し替えて全OSで描画を統一する。
   見出し等のウェイトは各要素の font-weight がそのまま効く（Noto は 400/500/700/900 をロード）。
   数字の Anton / din-2014 はハードコード指定のため影響を受けない。PCは現状維持。 */
@media screen and (max-width: 767px) {
  :root {
    --FntFml01: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
    --FntFml02: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
    --FntFml03: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  }
  body { font-family: var(--FntFml01); }
}

/* ---------- 1c. 日本語の改行を端末・フォント非依存にする汎用クラス ----------
   方針：ハード改行(<br>)に頼らず、語句の途中では折らせず(<wbr>位置でのみ折る)、
   行の見た目はブラウザに自動整形させる。フォントやサイズ・画面幅が変わっても崩れない。
   使い方：要素に class="jp-flow" を付け、折ってよい文節の境目に <wbr> を入れる。
   （iOS Safari / Android Chrome 双方対応。word-break:keep-all で文節内の途中改行を禁止） */
@media screen and (max-width: 767px) {
  .jp-flow {
    word-break: keep-all !important;     /* CJKの途中で勝手に折らない（バンドルの上書き対策で!important）*/
    overflow-wrap: anywhere !important;  /* 万一はみ出す長い塊は緊急回避で折る */
    line-break: strict !important;
    text-wrap: pretty;                   /* 最終行のぼっち改行などを自動で整える */
  }
  /* jp-flow内の子要素が個別にword-breakを持つ場合も継承を徹底 */
  .jp-flow * { word-break: keep-all !important; overflow-wrap: anywhere !important; }
  /* cat10はindex.html内に高詳細度の word-break:break-word !important があるため、
     それを上回る詳細度でjp-flow要素だけkeep-allに戻す */
  section.about-cat.cat10 .title-area-inner .jp-flow,
  section.about-cat.cat10 .jp-flow .mask-ani-inner,
  section.about-cat.cat10 .jp-flow .mask-ani--cnt,
  section.about-cat.cat10 .cntarea.cntarea05 .cntbox---txt.jp-flow {
    word-break: keep-all !important;
    overflow-wrap: anywhere !important;
  }
}

/* ---------- 2. ヘッダー（スマホ） ---------- */
@media screen and (max-width: 767px) {
  .header {
    background: rgba(255,255,255,.92) !important;
    -webkit-backdrop-filter: saturate(180%) blur(14px);
    backdrop-filter: saturate(180%) blur(14px);
    border-bottom: 1px solid var(--mm-line) !important;
    box-shadow: 0 1px 0 rgba(15,23,42,.02) !important;
  }
  .header-inner {
    padding: 10px 16px !important;
    display: flex; align-items: center; justify-content: space-between;
  }
  .header--logo img { height: 28px; width: auto; }
  .header--btn {
    width: 44px; height: 44px;
    display: inline-flex !important; align-items: center; justify-content: center;
  }
}

/* ---------- 2b. ヘッダー（PC：小さくなりすぎ防止）---------- */
@media screen and (min-width: 768px) {
  /* 高さの最小値を確保（vw比例で縮みすぎないように）*/
  .header { height: clamp(78px, 6.8vw, 104px) !important; }
  /* ロゴサイズ＋右に余白（ナビと詰まらないように）*/
  .header--logo {
    margin-right: clamp(24px, 4vw, 72px) !important;
    flex-shrink: 0;
  }
  .header--logo .image {
    width: clamp(180px, 13.5vw, 232px) !important;
    max-width: none !important;
    min-width: 0 !important;
  }
  /* ナビ全体を少し左から離す */
  .nav-main {
    margin-left: clamp(16px, 2.5vw, 48px) !important;
  }
  /* ナビ文字を読みやすいサイズに */
  .nav--list-link {
    font-size: clamp(17px, 1.35vw, 23px) !important;
    font-weight: 700 !important;
  }
  /* ログイン／無料発行ボタンを実寸で確保 */
  .nav-btnarea .btn {
    font-size: clamp(15px, 1.15vw, 20px) !important;
    font-weight: 700 !important;
    min-height: 48px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
  }
}

/* ---------- 3. FV（ファーストビュー） ---------- */
@media screen and (max-width: 767px) {
  .fv .fv-inner, .fv .fv--bg, .fv .fv--bg-movie { height: auto !important; }
  .fv video {
    width: 100% !important; height: auto !important;
    display: block; object-fit: cover;
  }
}

/* ---------- 4. セクション基本余白／タイポ ---------- */
@media screen and (max-width: 767px) {
  main section {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  /* ただし背景まで切れたら困るセクションは内側だけに余白 */
  .fv, .costumerslogos, #media-section,
  .improvement, .feature, .about-cat, .cta, .function, .qanda {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* 見出し（maintxt-02）はclampで段階縮小 */
  .maintxt-02, .maintxt-01 {
    font-size: clamp(24.2px, 7.04vw, 33px) !important;
    line-height: 1.45 !important;
    letter-spacing: .01em !important;
  }
  .subtxt-01, .subtxt-03, .subtxt-05, .txt-01 {
    font-size: clamp(15.4px, 4.4vw, 17.6px) !important;
    line-height: 1.8 !important;
    color: var(--mm-ink-2) !important;
  }
  .ttl-02 { font-size: clamp(19.8px, 5.72vw, 26.4px) !important; line-height: 1.5 !important; }
}

/* ---------- 5. CTA（最重要） ---------- */
/* 画像CTAをカード化＋タップ領域確保 */
.cta .cta-area {
  display: block;
  border-radius: var(--mm-radius);
  overflow: hidden;
  box-shadow: var(--mm-shadow);
  transition: transform .25s var(--mm-ease), box-shadow .25s var(--mm-ease);
  position: relative;
  background: #fff;
}
.cta .cta-area:hover { transform: translateY(-2px); box-shadow: var(--mm-shadow-lg); }
.cta .cta-area img { display: block; width: 100%; height: auto; }
.cta .cta-area .svg { display: none !important; } /* 矢印は画像CTAに既に含まれるため重複非表示 */

@media screen and (max-width: 767px) {
  .cta, .cta01 {
    padding: 28px 16px !important;
  }
  .cta .cta-main-inner,
  .cta .cnt,
  .cta .cnt-inner { padding: 0 !important; margin: 0 !important; }
  .cta .cta-area {
    border-radius: 14px;
    box-shadow: 0 10px 28px rgba(230,0,18,.18), 0 2px 6px rgba(230,0,18,.10);
  }
}

/* ---------- 6. ピル型ラベル（連絡先帯）の縮小 ---------- */
@media screen and (max-width: 767px) {
  #contact-area .contact--form > div[style*="border-radius: 999px"] {
    font-size: clamp(17.6px, 5.06vw, 24.2px) !important;
    padding: 14px 18px !important;
    line-height: 1.5 !important;
    max-width: 100%;
    box-sizing: border-box;
    text-align: center;
    white-space: normal;
  }
  /* width:120% で溢れる画像を是正 */
  #contact-area .contact--form img,
  #contact-area img[src*="メールでどうぞ"] {
    width: 100% !important;
    max-width: 360px !important;
    left: auto !important;
    transform: none !important;
    margin: 0 auto !important;
    display: block !important;
  }
  #contact-area .contact--form {
    padding: 20px 14px !important;
  }
}

/* ---------- 7. フォーム（モダン化） ---------- */
.c-contact-form {
  --in-pad-y: 14px;
  --in-pad-x: 14px;
}
.c-contact-form__item { margin-bottom: 18px; }
.c-contact-form__label { margin-bottom: 8px; display: flex; align-items: center; gap: 8px; }
.c-contact-form__label-txt {
  font-weight: 700; color: var(--mm-ink);
  font-size: 15px; letter-spacing: .01em;
}
.c-contact-form__label-required {
  background: #fff0f1; color: var(--mm-brand);
  border: 1px solid #ffd2d6;
  padding: 2px 8px; border-radius: 6px;
  font-size: 11px; font-weight: 700;
}
.c-contact-form__label-nini {
  background: var(--mm-surface); color: var(--mm-ink-3);
  border: 1px solid var(--mm-line);
  padding: 2px 8px; border-radius: 6px;
  font-size: 11px; font-weight: 600;
}
.c-contact-form__input input,
.c-contact-form__input textarea,
.bzlis-contact__form input[type="text"],
.bzlis-contact__form input[type="email"],
.bzlis-contact__form input[type="tel"],
.bzlis-contact__form textarea {
  width: 100% !important;
  border: 1.5px solid var(--mm-line) !important;
  border-radius: var(--mm-radius-sm) !important;
  padding: var(--in-pad-y) var(--in-pad-x) !important;
  font-size: 16px !important; /* iOS ズーム抑止：16px必須 */
  line-height: 1.5 !important;
  background: #fff !important;
  color: var(--mm-ink) !important;
  transition: border-color .15s var(--mm-ease), box-shadow .15s var(--mm-ease);
  -webkit-appearance: none;
  appearance: none;
  box-shadow: var(--mm-shadow-sm);
}
.c-contact-form__input input:focus,
.c-contact-form__input textarea:focus,
.bzlis-contact__form input:focus,
.bzlis-contact__form textarea:focus {
  outline: none !important;
  border-color: var(--mm-brand) !important;
  box-shadow: 0 0 0 4px rgba(230,0,18,.12) !important;
}
.c-contact-form__input textarea { min-height: 140px; resize: vertical; }

/* チェックボックスのモダン化 */
.c-contact-form__checkbox .wpcf7-list-item {
  display: block !important;
  margin: 0 0 8px 0 !important;
}
.c-contact-form__checkbox label {
  display: flex !important;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 14px;
  border: 1.5px solid var(--mm-line);
  border-radius: var(--mm-radius-sm);
  background: #fff;
  cursor: pointer;
  transition: border-color .15s var(--mm-ease), background .15s var(--mm-ease);
  min-height: 48px;
  font-size: 15px;
  line-height: 1.5;
}
.c-contact-form__checkbox label:hover { border-color: var(--mm-brand); background: #fff7f8; }
.c-contact-form__checkbox input[type="checkbox"] {
  width: 20px; height: 20px;
  margin-top: 2px;
  accent-color: var(--mm-brand);
  flex-shrink: 0;
}

/* ボタン */
.c-contact-form__btn,
.c-contact-form__submit input[type="submit"] {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 52px;
  padding: 0 24px;
  border: none;
  border-radius: 999px;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .03em;
  cursor: pointer;
  transition: transform .15s var(--mm-ease), box-shadow .2s var(--mm-ease), background .2s var(--mm-ease);
  -webkit-appearance: none;
  appearance: none;
}
.c-contact-form__btn.-next,
.c-contact-form__submit input[type="submit"] {
  background: var(--mm-brand) !important;
  color: #fff !important;
  box-shadow: 0 8px 22px rgba(230,0,18,.28), 0 2px 4px rgba(230,0,18,.16);
  width: 100%;
}
.c-contact-form__btn.-next:hover,
.c-contact-form__submit input[type="submit"]:hover { transform: translateY(-1px); }
.c-contact-form__btn.-back {
  background: var(--mm-surface) !important;
  color: var(--mm-ink) !important;
  border: 1.5px solid var(--mm-line) !important;
}
.c-contact-form__nav, .c-contact-form__submit { margin-top: 12px; }
.c-contact-form__privacy {
  font-size: 12px; color: var(--mm-ink-3);
  text-align: center; margin-top: 12px;
}
.c-contact-form__privacy a { color: var(--mm-brand); text-decoration: underline; }

/* LINE CTAボタン（フォーム上部） */
.contact-line-cta__btn {
  display: flex !important;
  align-items: center; justify-content: center;
  gap: 10px;
  background: #06C755 !important;
  color: #fff !important;
  border-radius: 999px;
  padding: 16px 24px;
  font-size: 17px;
  font-weight: 700;
  text-decoration: none;
  min-height: 56px;
  box-shadow: 0 10px 24px rgba(6,199,85,.30), 0 2px 6px rgba(6,199,85,.15);
  transition: transform .15s var(--mm-ease), box-shadow .25s var(--mm-ease);
}
.contact-line-cta__btn:hover { transform: translateY(-1px); }
.contact-line-cta__icon { width: 26px; height: 26px; }
.contact-line-cta__note {
  text-align: center;
  color: var(--mm-ink-3);
  font-size: 12px;
  margin: 8px 0 0;
}
.contact-line-cta__divider {
  display: flex; align-items: center; gap: 12px;
  color: var(--mm-ink-3);
  font-size: 13px;
  margin: 20px 0;
}
.contact-line-cta__divider::before,
.contact-line-cta__divider::after {
  content: ""; flex: 1; height: 1px; background: var(--mm-line);
}

/* フォーム外殻カード */
.bzlis-contact__form {
  background: #fff;
  border: 1px solid var(--mm-line);
  border-radius: var(--mm-radius-lg);
  box-shadow: var(--mm-shadow);
  overflow: hidden;
  max-width: 560px;
  margin: 0 auto;
}
.bzlis-contact__form-ttl {
  background: linear-gradient(135deg, #1a1a1a 0%, #2a2a2a 100%);
  color: #fff;
  padding: 22px 24px;
  text-align: center;
}
.bzlis-contact__form-ttl-sub {
  display: inline-block;
  background: var(--mm-accent);
  color: var(--mm-ink);
  font-size: 12px; font-weight: 700;
  padding: 4px 12px;
  border-radius: 999px;
  margin-bottom: 8px;
  letter-spacing: .05em;
}
.bzlis-contact__form-ttl-main {
  display: block;
  font-size: clamp(18px, 5vw, 22px);
  font-weight: 700;
  letter-spacing: .03em;
}
.bzlis-contact__form-content {
  padding: 24px 20px;
}

@media screen and (max-width: 767px) {
  .bzlis-contact__form { border-radius: 18px; margin: 0 4px; }
  .bzlis-contact__form-content { padding: 20px 16px 24px; }
  .bzlis-contact__form-ttl { padding: 18px 16px; }
}

/* ---------- 8. 改善カウンタ（cntbox） ---------- */
@media screen and (max-width: 767px) {
  .improvement .cntarea-inner {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
  .improvement .cntbox {
    background: #fff;
    border: 1px solid var(--mm-line);
    border-radius: var(--mm-radius);
    box-shadow: var(--mm-shadow-sm);
    padding: 20px 16px !important;
    margin: 0 !important;
  }
}

/* ---------- 9. 機能セクション動画／カード ---------- */
@media screen and (max-width: 767px) {
  .feature .cnt, .about-cat .cntarea, .about-cat .cntarea-inner {
    padding-left: 0 !important; padding-right: 0 !important;
  }
  .feature .movie-area video,
  .about-cat .cnt-img video,
  .about-cat .video-pc-only,
  .about-cat .video-sp-only {
    border-radius: var(--mm-radius);
    overflow: hidden;
    box-shadow: var(--mm-shadow);
  }
  .video-pc-only { display: none !important; }
  .video-sp-only { display: block !important; }
}

/* ---------- 10. Q&A / よくある質問 ---------- */
.qanda .qanda-main .qanda-item,
.qanda-list > * {
  background: #fff;
  border: 1px solid var(--mm-line);
  border-radius: var(--mm-radius);
  box-shadow: var(--mm-shadow-sm);
  margin-bottom: 12px;
  transition: box-shadow .2s var(--mm-ease);
}
.qanda .qanda-main .qanda-item:hover,
.qanda-list > *:hover { box-shadow: var(--mm-shadow); }

/* ---------- 11. フッターCTAボタン（既存上書き） ---------- */
@media screen and (max-width: 767px) {
  .footer-cta-btn {
    padding: 18px 24px !important;
    min-width: auto !important;
    width: 100% !important;
    font-size: 17.6px !important;
    box-sizing: border-box;
  }
  .footer-nav-links { gap: 6px 16px !important; }
  .footer-nav-links a { font-size: 15.4px !important; }
}

/* ---------- 12. グローバルナビ（スマホ） ---------- */
@media screen and (max-width: 767px) {
  .nav { padding-top: 56px !important; }
  .nav--list { padding: 0 24px !important; }
  .nav--list-item {
    border-bottom: 1px solid var(--mm-line);
  }
  .nav--list-link {
    display: flex !important;
    align-items: center;
    min-height: 56px;
    font-size: 18.7px !important;
    font-weight: 600;
  }
  .nav-btnarea { padding: 16px 24px 32px !important; }
  .nav-btnarea-inner { display: grid; gap: 10px; }
  .nav-btnarea .btn {
    min-height: 52px;
    border-radius: 999px !important;
    display: inline-flex !important;
    align-items: center; justify-content: center;
    font-weight: 700;
  }
}

/* ---------- 13. スワイパー（ロゴ流れ）の安全策 ---------- */
@media screen and (max-width: 767px) {
  #media-section .costumerslogos-slider .swiper-wrapper .swiper-slide img {
    height: 60px !important;
    margin: 0 18px !important;
  }
}

/* ---------- 14. 価格表 ---------- */
@media screen and (max-width: 767px) {
  .about-cat.cat11 table, .price table {
    font-size: 14.3px !important;
  }
  .about-cat.cat11 table td, .about-cat.cat11 table th,
  .price table td, .price table th {
    padding: 8px 6px !important;
    word-break: break-word;
  }
}

/* ---------- 15. iPhone セーフエリア対応（スティッキーCTAなど） ---------- */
@media screen and (max-width: 767px) {
  .footer { padding-bottom: calc(24px + var(--mm-safe-bottom)) !important; }
}

/* ---------- 14e. 口コミ獲得特化型戦略 タイトル（HTML・赤背景に直接乗せる）---------- */
.senryaku-hero {
  display: block !important;
  position: relative;
  margin: 0 auto 1em !important;
  padding: clamp(6px, 1.5vw, 14px) 0 !important;
  text-align: center !important;
  background: transparent !important;   /* セクションの赤地をそのまま活かす */
}
/* タイトル背後のさりげない中央グロー（やり過ぎない） */
.senryaku-hero::after {
  content: "";
  position: absolute;
  top: 58%; left: 50%;
  width: 72%; height: 60%;
  transform: translate(-50%, -50%);
  z-index: 0;
  background: radial-gradient(closest-side, rgba(255,255,255,.22), transparent 72%);
  pointer-events: none;
}
/* 上部リボン（黒帯＋金枠・角を斜めカット） */
.senryaku-ribbon {
  display: inline-block;
  position: relative;
  z-index: 1;
  margin: 0 auto clamp(10px, 1.8vw, 18px);
  padding: clamp(7px, 1.1vw, 12px) clamp(20px, 3.2vw, 40px);
  color: #fff;
  font-weight: 800;
  font-size: clamp(13px, 1.9vw, 23px);
  letter-spacing: .02em;
  line-height: 1.35;
  background: linear-gradient(180deg, #1c1c1c 0%, #0a0a0a 100%);
  border: 2px solid #ffd400;
  box-shadow: 0 4px 14px rgba(0,0,0,.35);
  -webkit-clip-path: polygon(3.5% 0, 96.5% 0, 100% 100%, 0% 100%);
          clip-path: polygon(3.5% 0, 96.5% 0, 100% 100%, 0% 100%);
}
.senryaku-ribbon b { color: #ffd400; font-weight: 900; }
/* メインタイトル（白文字＋濃赤の縁取り＋立体感） */
.senryaku-main {
  display: block;
  position: relative;
  z-index: 1;
  color: #fff;
  font-weight: 900;
  font-size: clamp(32px, 6.6vw, 72px);
  line-height: 1.08;
  letter-spacing: .015em;
  font-family: var(--FntFml03, "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif);
  text-shadow:
    0 2px 0 #8b0006,
    0 4px 10px rgba(0,0,0,.45);
  -webkit-text-stroke: clamp(1px, .2vw, 2.5px) #8b0006;
  paint-order: stroke fill;
}
/* 下部のゴールドバー */
.senryaku-bar {
  display: block;
  position: relative;
  z-index: 1;
  width: min(64%, 560px);
  height: clamp(5px, .7vw, 9px);
  margin: clamp(10px, 1.8vw, 18px) auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(255,212,0,0) 0%, #ffd400 20%, #fff6b0 50%, #ffd400 80%, rgba(255,212,0,0) 100%);
  box-shadow: 0 0 14px rgba(255,212,0,.6);
}
@media screen and (max-width: 767px) {
  .senryaku-ribbon { white-space: normal; max-width: 96%; }
  .senryaku-main { -webkit-text-stroke-width: 1.2px; }
}

/* ---------- 14d. 好循環フロー（白カード＋赤STEPバッジ）---------- */
.flow-cycle-wrap {
  display: block;
  max-width: 620px;
  margin: 1.6em auto;
  padding: 0;
  background: transparent;
  border: 0;
}
/* タイトル（金グラデ文字＋飾り罫線・高級感）*/
.flow-cycle-ttl {
  display: block;
  text-align: center;
  margin: 0 auto 28px;
  line-height: 1.2;
}
/* 1行目：白文字＋両サイドに金の飾り罫線 */
.fc-ttl-sub {
  display: inline-flex;
  align-items: center;
  gap: clamp(10px, 2vw, 16px);
  color: #fff;
  font-weight: 700;
  font-size: clamp(13px, 3vw, 19px);
  letter-spacing: .16em;
  margin-bottom: 10px;
  text-shadow: 0 1px 4px rgba(0,0,0,.3);
}
.fc-ttl-sub::before,
.fc-ttl-sub::after {
  content: "";
  width: clamp(22px, 6vw, 50px);
  height: 2px;
  border-radius: 2px;
}
.fc-ttl-sub::before { background: linear-gradient(90deg, transparent, #ffd84d); }
.fc-ttl-sub::after  { background: linear-gradient(90deg, #ffd84d, transparent); }
/* 2行目：大きい金グラデ文字 */
.fc-ttl-main {
  display: block;
  font-weight: 900;
  font-size: clamp(30px, 8vw, 56px);
  letter-spacing: .02em;
  background: linear-gradient(180deg, #fff7d4 0%, #ffdc55 46%, #efa91c 100%);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  filter: drop-shadow(0 2px 3px rgba(0,0,0,.4));
}
.fc-ttl-main b { -webkit-text-fill-color: transparent; color: transparent; }
/* PC時のみ「口コミが生み出す／勝ちパターン」を1.2倍 */
@media screen and (min-width: 768px) {
  .fc-ttl-sub { font-size: clamp(15.6px, 3.6vw, 22.8px); }
  .fc-ttl-main { font-size: clamp(36px, 9.6vw, 67px); }
}
.flow-cycle {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: clamp(20px, 3vw, 32px);
}
/* 各ステップ（ラベル＋白タイトル＋白い吹き出し）*/
.fc-item {
  display: block;
  text-align: center;
}
/* STEPラベル（黄色・番号大きく）*/
.fc-label {
  display: block;
  color: #ffd400;
  font-weight: 800;
  font-size: clamp(14px, 1.8vw, 18px);
  letter-spacing: .12em;
  font-family: "Arial Black", "Arial", "Helvetica Neue", sans-serif;
  line-height: 1;
  margin-bottom: 4px;
}
.fc-label b { font-size: 1.5em; font-style: italic; font-weight: 900; }
/* 大きい白タイトル */
.fc-head {
  display: block;
  color: #fff;
  font-weight: 900;
  font-size: clamp(26px, 5.6vw, 46px);
  line-height: 1.2;
  letter-spacing: .01em;
  font-family: var(--FntFml03, "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif);
  text-shadow: 0 2px 6px rgba(0,0,0,.25);
  margin-bottom: 14px;
}
.fc-head b { color: #ffd400; }
/* 白い吹き出し（上のPOINTセクションと同じ画像を流用）*/
.fc-bubble {
  display: block;
  position: relative;
  max-width: 620px;
  margin: 0 auto;
  container-type: inline-size;   /* 文字を吹き出し幅に連動させる */
  filter: drop-shadow(0 8px 18px rgba(0,0,0,.25));
}
.fc-bubble__bg {
  display: block;
  width: 100%;
  height: auto;
}
.fc-bubble__txt {
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 94%;
  text-align: center;
  color: #1a1a1a;
  font-weight: 800;
  /* 吹き出し幅に連動：PCはより大きく、スマホは自動で最適化 */
  font-size: clamp(15px, 5.4cqi, 32px);
  line-height: 1.45;
}
.fc-bubble__txt b { color: #e60012; font-weight: 800; }

/* ---------- 14g. 改善セクション：参考画像の色に合わせる ---------- */
section.improvement {
  background-color: #FDCF02 !important;   /* 暖かい金色（参考画像の黄）*/
}
section.improvement .improvement-main {
  background-color: #FDCF02 !important;
  background-image: none !important;       /* 赤テクスチャを消して均一な黄に */
}

/* ---------- 14i. FV直下ヒーロー（2カラム＋ラベル＋タグ＋地図）---------- */
.imp-hero { box-sizing: border-box; }
.imp-hero__text { box-sizing: border-box; }
/* クラウンのラベルピル */
.imp-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  background: #fff;
  border-radius: 999px;
  padding: 9px 22px 9px 14px;
  font-weight: 800;
  font-size: clamp(13px, 1.4vw, 18px);
  color: #1a1a1a;
  box-shadow: 0 4px 12px rgba(180,130,0,.18);
  margin-bottom: 18px;
  white-space: nowrap;
}
.imp-eyebrow__ico { width: 26px; height: 26px; flex-shrink: 0; }
/* PC時：「地域密着ビジネスの成長を支援」アイブロウを1.2倍に */
@media screen and (min-width: 768px) {
  section.improvement#improvement-cards .imp-eyebrow { font-size: clamp(16px, 1.68vw, 22px) !important; }
  section.improvement#improvement-cards .imp-eyebrow__ico { width: 31px !important; height: 31px !important; }
}
/* タグピル */
.imp-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
}
.imp-tag {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  background: #fff;
  border-radius: 999px;
  padding: 11px 22px;
  font-weight: 800;
  font-size: clamp(14px, 1.5vw, 18px);
  color: #1a1a1a;
  box-shadow: 0 4px 12px rgba(180,130,0,.16);
}
.imp-tag svg { width: 22px; height: 22px; flex-shrink: 0; }
/* サブテキストのスマホ専用改行（PC/既定は非表示）*/
section.improvement#improvement-cards #improvement-subtxt .imp-sp-br { display: none; }
/* 地図画像 */
.imp-map { display: block; width: 100%; height: auto; }
.imp-map--sp { display: none; }
@media screen and (max-width: 768px) {
  .imp-map--pc { display: none; }
  .imp-map--sp { display: block; }
}
/* PC：テキスト左・地図右の2カラム */
@media screen and (min-width: 769px) {
  /* zoom:1.2(旧3行タイトル用)を解除：横はみ出し防止 */
  section.improvement#improvement-cards .title-area {
    zoom: 1 !important;
  }
  /* 後段グローバルの max-width:640px より高詳細度で勝つ（親flexのcolumn/centerに潰されないよう全幅化）*/
  section.improvement#improvement-cards .improvement-main-inner .title-area .title-area-inner {
    max-width: none !important;   /* カードと同じ幅で画面端まで広げる */
    width: 100% !important;
    text-align: left !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    box-sizing: border-box !important;
  }
  section.improvement#improvement-cards .title-area-inner > .imp-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(28px, 3.2vw, 48px);
    width: 100% !important;
    align-self: stretch !important;
    margin-bottom: 52px !important;   /* タグとカードの重なり防止：明確な余白を確保 */
  }
  /* カードは必ずヒーローより前面に（万一の接触時もカードを上に）*/
  section.improvement#improvement-cards .cntarea {
    position: relative;
    z-index: 2 !important;
    margin-top: 8px !important;
  }
  section.improvement#improvement-cards .imp-hero__text {
    flex: 1 1 54%;
    min-width: 0;
    max-width: 860px;
    container-type: inline-size;   /* 見出しを「列幅基準(cqi)」でスケールさせる起点 */
  }
  section.improvement#improvement-cards .imp-hero__media {
    flex: 1 1 46%;
    min-width: 0;
    display: flex;
    justify-content: flex-end;   /* 参考モック同様、地図を右端寄りに */
  }
  section.improvement#improvement-cards .imp-hero__media .imp-map {
    width: 100%;
    max-width: 680px;
  }
  /* 見出し：左寄せ＋枠内に収まるサイズ。「マッ/プ」での分断を防ぐ */
  section.improvement#improvement-cards .imp-hero__text .maintxt-01 .mask-ani-inner,
  section.improvement#improvement-cards .imp-hero__text .maintxt-02 .mask-ani-inner {
    justify-content: flex-start !important;
  }
  section.improvement#improvement-cards .imp-hero__text .maintxt-01 .mask-ani--cnt,
  section.improvement#improvement-cards .imp-hero__text .maintxt-02 .mask-ani--cnt {
    font-size: clamp(26px, 7.5cqi, 76px) !important;  /* 列幅基準：白box・黒boxが必ず列内に収まる（余白付きでも1行維持） */
    line-height: 1.1 !important;
    text-align: left !important;
    margin: 0 !important;   /* インラインの margin:0 auto による中央寄せを解除（左寄せ） */
    word-break: keep-all !important;
    overflow-wrap: anywhere !important;
  }
  /* 白box・黒boxはPCでは1行で見せる */
  section.improvement#improvement-cards .imp-hero__text .imp-pkgbar,
  section.improvement#improvement-cards .imp-hero__text .imp-darkbar {
    white-space: nowrap !important;
  }
  section.improvement#improvement-cards .imp-hero__text #improvement-subtxt {
    text-align: left !important;
  }
  /* サブテキスト：PCでしっかり大きく見せる（1.2倍） */
  section.improvement#improvement-cards .imp-hero__text #improvement-subtxt .imp-line {
    font-size: clamp(24px, 1.92vw, 30px) !important;
    line-height: 1.85 !important;
    font-weight: 600 !important;
  }
}
/* スマホ：縦並び・中央寄せ（参考モック準拠）、地図は中央・大きめ */
@media screen and (max-width: 767px) {
  section.improvement#improvement-cards .imp-hero {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 36px !important;   /* 地図と実績カードの間に余白を確保 */
  }
  section.improvement#improvement-cards .imp-hero__text { text-align: center; width: 100%; }
  /* タグはスマホでは非表示（参考モックに合わせる）*/
  section.improvement#improvement-cards .imp-tags { display: none !important; }
  section.improvement#improvement-cards .imp-hero__text #improvement-subtxt,
  section.improvement#improvement-cards .imp-hero__text #improvement-subtxt .imp-line { text-align: center !important; }
  /* サブテキスト：読みやすいサイズ。長い行は<br class="imp-sp-br">で改行 */
  section.improvement#improvement-cards .imp-hero__text #improvement-subtxt .imp-line {
    font-size: clamp(18.7px, 5.5vw, 22px) !important;
    line-height: 1.85 !important;
  }
  section.improvement#improvement-cards #improvement-subtxt .imp-sp-br { display: inline !important; }
  /* ラベルピル（地域密着ビジネスの成長を支援）もスマホで少し大きく */
  section.improvement#improvement-cards .imp-eyebrow { font-size: clamp(16.96px, 4.79vw, 19.95px) !important; }
  section.improvement#improvement-cards .imp-eyebrow__ico { width: 31px; height: 31px; }
  section.improvement#improvement-cards .imp-hero__media {
    width: 100%;
    max-width: 460px;
    margin: 20px auto 0;
  }
  /* 実績カードの上にも余白（地図に近づきすぎ防止）*/
  section.improvement#improvement-cards .cntarea {
    margin-top: 14px !important;
  }
}

/* ---------- 14h. 実績カード（参考画像準拠：白カード＋金アイコン＋赤数字＋金の波）---------- */
section.improvement#improvement-cards .cntbox,
section.improvement#improvement-cards .cntbox.box01,
section.improvement#improvement-cards .cntbox.box02,
section.improvement#improvement-cards .cntbox.box03 {
  position: relative !important;
  background: #fff !important;
  border-radius: 18px !important;
  padding: 26px 18px 40px !important;
  box-shadow: 0 12px 30px rgba(190,140,0,.22) !important;
  overflow: hidden !important;
  justify-content: flex-start !important;
  box-sizing: border-box !important;   /* paddingで右にはみ出さない */
  max-width: 100% !important;
}
/* コンテナも枠内に収める */
section.improvement#improvement-cards .cntarea,
section.improvement#improvement-cards .cntarea-inner {
  box-sizing: border-box !important;
  max-width: 100% !important;
}
/* 上部の金アイコン（白丸）*/
section.improvement#improvement-cards .stat-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(52px, 5.2vw, 68px);
  height: clamp(52px, 5.2vw, 68px);
  margin: 0 auto 12px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid rgba(240,180,0,.28);
  box-shadow: 0 6px 16px rgba(210,160,0,.32);
  line-height: 1;
}
section.improvement#improvement-cards .stat-svg {
  width: 54%;
  height: 54%;
  display: block;
}
/* タイトル＋金の区切り線（中央に菱形）*/
section.improvement#improvement-cards .cnt-ttl {
  position: relative !important;
  color: #1a1a1a !important;
  font-family: var(--FntFml03, sans-serif) !important;
  font-weight: 800 !important;
  font-size: clamp(16px, 1.9vw, 24px) !important;
  text-align: center !important;
  padding-bottom: 16px !important;
  margin-bottom: 6px !important;
}
section.improvement#improvement-cards .cnt-ttl::after {
  content: "";
  position: absolute; left: 50%; bottom: 4px; transform: translateX(-50%);
  width: 72%; height: 2px;
  background: linear-gradient(90deg, transparent, #f0b400 18%, #f0b400 82%, transparent);
}
section.improvement#improvement-cards .cnt-ttl::before {
  content: "";
  position: absolute; left: 50%; bottom: -1px; transform: translate(-50%, 0) rotate(45deg);
  width: 9px; height: 9px; background: #f0b400; z-index: 1;
}
/* 大きい赤数字（赤グラデ）*/
section.improvement#improvement-cards .cnt-count .countup,
section.improvement#improvement-cards .cnt-count .en-b {
  color: #e3000f !important;
  font-weight: 900 !important;
  font-size: clamp(56px, 9.5vw, 104px) !important;
  line-height: 1 !important;
  letter-spacing: -.02em !important;
  background: linear-gradient(180deg, #ff3a2e 0%, #d4000c 100%) !important;
  -webkit-background-clip: text !important;
          background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
/* 数字＋%を中央に揃えた1セットで表示（block＋text-alignで確実に中央）*/
section.improvement#improvement-cards .cnt-count {
  display: block !important;
  text-align: center !important;
  width: 100% !important;
  margin: 0 auto !important;
}
section.improvement#improvement-cards .num-wrapper {
  position: static !important;
  display: inline-block !important;
  white-space: nowrap !important;
  margin: 0 auto !important;
}
section.improvement#improvement-cards .num-wrapper .countup,
section.improvement#improvement-cards .num-wrapper .en-b {
  display: inline-block !important;
  vertical-align: baseline !important;
}
section.improvement#improvement-cards .suffix {
  position: static !important;
  display: inline-block !important;
  white-space: nowrap !important;
  vertical-align: baseline !important;
  color: #e3000f !important;
  font-weight: 800 !important;
  font-size: clamp(15px, 1.9vw, 24px) !important;
  margin-left: .06em !important;
}
/* 下部の金の波 */
section.improvement#improvement-cards .cntbox::after {
  content: "";
  position: absolute; left: -2%; right: -2%; bottom: 0;
  height: 26px;
  background: linear-gradient(180deg, #ffd84d 0%, #f0b200 100%);
  border-radius: 50% 50% 0 0 / 100% 100% 0 0;
}
/* スマホ：縦1列・数字を大きく目立たせUI調整 */
@media screen and (max-width: 767px) {
  /* 実績カード：横並び（左=アイコン／右=ラベル＋大きい赤数字＋単位）参考モック準拠 */
  section.improvement#improvement-cards .cntarea .cntarea-inner {
    flex-direction: column !important;
    gap: 16px !important;
  }
  section.improvement#improvement-cards .cntbox,
  section.improvement#improvement-cards .cntbox.box01,
  section.improvement#improvement-cards .cntbox.box02,
  section.improvement#improvement-cards .cntbox.box03 {
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    grid-template-areas: "icon ttl" "count count" !important;
    align-items: center !important;
    column-gap: 14px !important;
    row-gap: 4px !important;
    width: 100% !important;
    border: none !important;
    border-radius: 20px !important;
    padding: 18px 22px !important;
    box-shadow: 0 8px 22px rgba(190,140,0,.18) !important;
    overflow: visible !important;
  }
  /* 金の波・区切り線・空要素は消す（クリーンな白カード）*/
  section.improvement#improvement-cards .cntbox::after { display: none !important; }
  section.improvement#improvement-cards .cnt-ttl::after,
  section.improvement#improvement-cards .cnt-ttl::before { display: none !important; }
  section.improvement#improvement-cards .cnt-supp { display: none !important; }
  /* アイコン：角丸スクエア＋淡いクリーム背景・2行ぶんの高さで縦中央 */
  section.improvement#improvement-cards .stat-icon {
    grid-area: icon !important;
    width: 60px !important; height: 60px !important;
    margin: 0 !important;
    border-radius: 15px !important;
    background: #fdf3d6 !important;
    border: none !important;
    box-shadow: none !important;
    align-self: center !important;
  }
  section.improvement#improvement-cards .stat-svg { width: 52% !important; height: 52% !important; }
  /* ラベル：アイコン横・縦中央 */
  section.improvement#improvement-cards .cnt-ttl {
    grid-area: ttl !important;
    text-align: left !important;
    align-self: center !important;
    font-size: clamp(20.9px, 6.05vw, 28.6px) !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }
  /* 数字＋単位：タイトルの下に全幅で中央配置 */
  section.improvement#improvement-cards .cnt-count {
    grid-area: count !important;
    display: block !important;
    text-align: center !important;
    align-self: start !important;
    width: 100% !important;
    margin: 6px 0 0 !important;
  }
  section.improvement#improvement-cards .num-wrapper {
    display: inline-flex !important;
    align-items: baseline !important;
    white-space: nowrap !important;
    margin: 0 auto !important;
  }
  section.improvement#improvement-cards .cnt-count .countup,
  section.improvement#improvement-cards .cnt-count .en-b {
    font-size: clamp(60.5px, 18.48vw, 100.1px) !important;
    line-height: 1 !important;
  }
  section.improvement#improvement-cards .suffix {
    position: static !important;
    display: inline-block !important;
    vertical-align: baseline !important;
    align-self: baseline !important;
    font-size: clamp(19.8px, 5.5vw, 26.4px) !important;
    margin-left: .12em !important;
    padding-bottom: 0 !important;
  }
  /* スマホ：セクションの左右余白が広すぎてテキスト幅が狭い→詰めて表示幅を確保 */
  section.improvement#improvement-cards .improvement-main-inner {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  /* 見出しブロック：スマホ最適化（後段グローバルrule[max-width:640]より高詳細度で勝つ＝全幅化）*/
  section.improvement#improvement-cards .improvement-main-inner .title-area .title-area-inner {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  section.improvement#improvement-cards .imp-hero,
  section.improvement#improvement-cards .imp-hero__text,
  section.improvement#improvement-cards .imp-hero__text #improvement-subtxt {
    width: 100% !important;
    box-sizing: border-box !important;
  }
  section.improvement#improvement-cards .maintxt-01 .mask-ani--cnt,
  section.improvement#improvement-cards .maintxt-02 .mask-ani--cnt {
    font-size: clamp(36.3px, 11.33vw, 55px) !important;
    line-height: 1.16 !important;
    font-weight: 900 !important;
    letter-spacing: -0.025em !important;
  }
  /* 「No.1」をさらに大きくインパクト強化 */
  section.improvement#improvement-cards .imp-big {
    font-size: 1.5em !important;
  }
  /* 白box「ワンパッケージで実装」：見出しより少し大きめに（強調）*/
  .imp-pkgbar {
    font-size: .82em !important;
    border-width: 4px !important;
    padding: .06em .36em !important;
  }
  /* 見出し間の余白を詰めて密度感を出す */
  section.improvement#improvement-cards .maintxt-01,
  section.improvement#improvement-cards .maintxt-02 {
    margin: 2px 0 !important;
  }
  /* スマホは見出し中央寄せ（参考モック準拠）*/
  section.improvement#improvement-cards .maintxt-01 .mask-ani-inner,
  section.improvement#improvement-cards .maintxt-02 .mask-ani-inner {
    justify-content: center !important;
  }
  section.improvement#improvement-cards .maintxt-01,
  section.improvement#improvement-cards .maintxt-02,
  section.improvement#improvement-cards .maintxt-01 .mask-ani--cnt,
  section.improvement#improvement-cards .maintxt-02 .mask-ani--cnt {
    text-align: center !important;
  }
  /* 白box：スマホでも収まるように */
  .imp-pkgbar { border-width: 4px !important; }
}

/* ---------- 14f. 白box＋金枠（ワンパッケージで実装）---------- */
.imp-pkgbar {
  display: inline-block;
  background: #fdfdfd !important;
  color: #080808 !important;
  font-weight: 900 !important;
  padding: .05em .42em;
  border: 5px solid #ffd30b;
  border-radius: 12px;
  line-height: 1.28;
  letter-spacing: .02em;
  box-shadow: 0 6px 16px rgba(0,0,0,.18);
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
}
.imp-pkgbar .imp-pkg-red { color: #da0814 !important; }
/* 黒box（白抜き）「口コミ獲得特化型ツール」 */
.imp-darkbar {
  display: inline-block;
  background: #111111 !important;
  color: #FFFC00 !important;
  font-weight: 900 !important;
  padding: .16em .42em;
  border-radius: 0;
  line-height: 1.3;
  letter-spacing: 0 !important;
  white-space: normal;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
}
/* 「No.1」を一回り大きく */
.imp-big {
  font-size: 1.32em;
  font-weight: 900 !important;
  line-height: 1;
}
/* 見出しブロックを左揃え＋枠内に収まるサイズ（参考画像準拠・高詳細度で巨大指定を上書き）*/
section.improvement#improvement-cards .title-area .title-area-inner {
  max-width: 640px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: left !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
}
section.improvement#improvement-cards .maintxt-01,
section.improvement#improvement-cards .maintxt-02 {
  width: 100% !important;
  margin: 0 !important;
}
/* 配置はブレークポイント側で制御（SP=中央 / PC=左）：ここでは整列を強制しない */
section.improvement#improvement-cards .maintxt-01 .mask-ani-inner,
section.improvement#improvement-cards .maintxt-02 .mask-ani-inner {
  display: flex !important;
}
/* 巨大フォント(clamp 80-180px/nowrap)を枠内サイズに上書き＋過剰装飾を解除 */
section.improvement#improvement-cards .maintxt-01 .mask-ani--cnt,
section.improvement#improvement-cards .maintxt-02 .mask-ani--cnt {
  font-size: clamp(26px, 6.2vw, 48px) !important;
  white-space: normal !important;
  -webkit-text-stroke: 0 !important;
  text-shadow: none !important;
  letter-spacing: .005em !important;
  line-height: 1.14 !important;
  max-width: 100% !important;
}
/* FV見出し：スマホのみ1.2倍（PCは上のグローバル clamp(26px,6.2vw,48px) のまま）。
   グローバル規則(詳細度1,3,1)を .imp-hero__text 付与(1,4,1)＋max-width:767 で上回って勝つ */
@media screen and (max-width: 767px) {
  section.improvement#improvement-cards .imp-hero__text .maintxt-01 .mask-ani--cnt,
  section.improvement#improvement-cards .imp-hero__text .maintxt-02 .mask-ani--cnt {
    font-size: clamp(34.1px, 8.14vw, 63.8px) !important;
  }
}
/* 白box：枠内に収める */
.imp-pkgbar {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* ---------- 14c. 蛍光ペン風マーカー（定番）---------- */
.marker-underline {
  font-weight: 800 !important;
  /* 文字の下40%だけ蛍光イエローで塗った蛍光ペン風 */
  background: linear-gradient(transparent 60%, #FFF34D 60%, #FFF34D 92%, transparent 92%) !important;
  padding: 0 .1em;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
}

/* ---------- 14j. 赤アンダーライン（「全て仕組み化」参考画像準拠）---------- */
.ttl-underbar {
  background-image: linear-gradient(#e3000f, #e3000f) !important;
  background-repeat: no-repeat !important;
  background-position: 0 100% !important;
  background-size: 100% 0.12em !important;
  padding-bottom: .12em !important;
  -webkit-box-decoration-break: clone;
          box-decoration-break: clone;
}

/* ---------- 14l. cat03 POINT：スマホを横並びダークカード型に刷新（PCは現状維持）---------- */
.about-cat.cat03 .pt-ico { display: none; }
.about-cat.cat03 .pt-cap { display: none; }
.about-cat.cat03 .pt-cap .pt-sp-br { display: none; }   /* SP専用改行：PCでは改行しない */
.about-cat.cat03 .pt-media { display: none; }
.about-cat.cat03 .pt-connector { display: none; }
@media screen and (max-width: 767px) {
  /* ---- ヒーロー「3点」---- */
  section.about-cat.cat03 .title-area .maintxt-01 { text-align: center !important; }
  section.about-cat.cat03 .maintxt-01 .empha-yellow {
    color: #FFD43B !important; font-size: clamp(22px, 6.49vw, 28.6px) !important; font-weight: 800 !important; letter-spacing: 1px !important;
  }
  section.about-cat.cat03 .maintxt-02 { text-align: center !important; color: #fff !important; line-height: 1.1 !important; }
  section.about-cat.cat03 .maintxt-02 .mask-ani--cnt { display: block !important; }
  section.about-cat.cat03 .rule-pre { display: block !important; font-size: clamp(28.6px, 8.47vw, 37.4px) !important; font-weight: 900 !important; margin-bottom: 18px !important; color: #fff !important; }
  section.about-cat.cat03 .rule-3wrap { display: block !important; line-height: 1 !important; }
  section.about-cat.cat03 .rule-3 {
    font-size: clamp(123.2px, 37.18vw, 165px) !important; color: #FFD400 !important; font-weight: 900 !important; line-height: 1 !important;
    text-shadow: 0 0 18px rgba(255,212,0,.7), 0 0 42px rgba(255,212,0,.35) !important;
  }
  section.about-cat.cat03 .rule-ten { font-size: clamp(37.4px, 11.33vw, 50.6px) !important; color: #FFD400 !important; font-weight: 900 !important; margin-left: 4px !important; }

  /* ---- 各POINT共通レイアウト（スマホは従来の縦積みアイコンカード）---- */
  section.about-cat.cat03 .pt-check { display: none !important; }
  section.about-cat.cat03 .pt-media { display: none !important; }
  section.about-cat.cat03 .cntbox.box03 .pt-cap { display: block !important; }
  section.about-cat.cat03 .pt-cap .cap-ico { display: none !important; }
  section.about-cat.cat03 .cntbox::before { display: none !important; }
  section.about-cat.cat03 .cntarea { width: 100% !important; padding: 0 4px !important; box-sizing: border-box !important; margin-top: 28px !important; }
  section.about-cat.cat03 .cntarea .cntarea-inner { display: block !important; width: 100% !important; }
  section.about-cat.cat03 .cntbox,
  section.about-cat.cat03 .cntbox.box01,
  section.about-cat.cat03 .cntbox.box02,
  section.about-cat.cat03 .cntbox.box03 {
    display: block !important; width: 100% !important; max-width: 100% !important;
    margin: 0 0 36px !important; padding: 0 !important; background: transparent !important;
    border: none !important; box-shadow: none !important;
    box-sizing: border-box !important; text-align: center !important;
  }
  /* POINTピル */
  section.about-cat.cat03 .cnt-num {
    display: inline-block !important; border: 2px solid #FFD400 !important; border-radius: 9px !important;
    padding: 5px 22px !important; color: #fff !important; font-size: clamp(15.4px, 4.4vw, 17.6px) !important; letter-spacing: 2px !important;
    background: rgba(255,212,0,.06) !important; line-height: 1.2 !important; margin: 0 0 12px !important; font-weight: 800 !important;
  }
  section.about-cat.cat03 .cnt-num span { color: #FFD400 !important; font-size: 1.2em !important; margin-left: 7px !important; }
  /* 見出し */
  section.about-cat.cat03 .cnt-ttl {
    font-size: clamp(29.7px, 9.35vw, 39.6px) !important; width: 100% !important; color: #fff !important; white-space: normal !important;
    text-align: center !important; padding: 0 !important; line-height: 1.2 !important; font-weight: 900 !important; margin: 0 0 14px !important;
  }
  section.about-cat.cat03 .cnt-ttl .ttl-pc { display: none !important; }
  section.about-cat.cat03 .cnt-ttl .ttl-sp { display: inline !important; }
  /* カード本体（アイコン左＋テキスト右）*/
  section.about-cat.cat03 .cnt-fd {
    position: static !important; width: 100% !important; padding: 0 !important; height: auto !important; min-height: 0 !important; margin: 0 !important;
  }
  section.about-cat.cat03 .cnt-fd .bg { display: none !important; }
  section.about-cat.cat03 .cnt-fd .txt {
    position: static !important; transform: none !important; top: auto !important; left: auto !important; right: auto !important; bottom: auto !important;
    display: flex !important; align-items: center !important; gap: 16px !important;
    width: 100% !important; box-sizing: border-box !important;
    background: #fff !important; border-radius: 16px !important; box-shadow: 0 10px 24px rgba(0,0,0,.4) !important;
    color: #1a1a1a !important; text-align: left !important; padding: 26px 20px !important; margin: 0 !important;
  }
  section.about-cat.cat03 .pt-ico { display: block !important; flex: 0 0 74px !important; width: 74px !important; margin-top: 0 !important; }
  section.about-cat.cat03 .pt-ico svg { width: 100% !important; height: auto !important; display: block !important; }
  section.about-cat.cat03 .pt-body { flex: 1 1 auto !important; font-size: clamp(18.7px, 5.61vw, 23.1px) !important; line-height: 1.6 !important; font-weight: 700 !important; color: #1a1a1a !important; text-align: left !important; }
  section.about-cat.cat03 .cnt-fd .txt .ttl-pc { display: none !important; }
  section.about-cat.cat03 .cnt-fd .txt .ttl-sp { display: inline !important; }
  section.about-cat.cat03 .pt-body .empha-key { color: #e8312b !important; font-weight: 800 !important; }
  /* キャプション */
  section.about-cat.cat03 .pt-cap {
    display: block !important; text-align: center !important; color: #d0d0d0 !important;
    font-size: clamp(13.2px, 3.96vw, 15.95px) !important; line-height: 1.5 !important; margin: 12px 2px 0 !important; font-weight: 600 !important;
  }
  section.about-cat.cat03 .pt-cap .pt-sp-br { display: inline !important; }
  section.about-cat.cat03 .pt-cap .cap-key { color: #FFD400 !important; font-weight: 800 !important; }
}

/* ---------- 14l-PC. cat03 POINT：PCを左テキスト＋右画像の横並びダークカードに刷新 ---------- */
@media screen and (min-width: 769px) {
  section.about-cat.cat03 .cntarea { max-width: 1040px !important; margin: 44px auto 60px !important; padding: 0 24px !important; box-sizing: border-box !important; }
  section.about-cat.cat03 .cntarea .cntarea-inner { display: block !important; width: 100% !important; }
  section.about-cat.cat03 .cntbox,
  section.about-cat.cat03 .cntbox.box01,
  section.about-cat.cat03 .cntbox.box02,
  section.about-cat.cat03 .cntbox.box03 {
    display: grid !important;
    grid-template-columns: 1fr 42% !important;
    grid-template-areas: "num media" "ttl media" "fd media" "cap media" !important;
    column-gap: 30px !important; align-content: center !important; align-items: start !important;
    width: 100% !important; max-width: 100% !important; min-height: 0 !important; height: auto !important;
    margin: 0 !important; padding: 28px 34px !important;
    background: linear-gradient(155deg, #1c1c1c 0%, #090909 100%) !important;
    border: 1px solid rgba(255,201,90,.5) !important; border-radius: 22px !important;
    box-shadow: 0 14px 38px rgba(0,0,0,.5), inset 0 0 70px rgba(255,200,80,.05) !important;
    position: relative !important; overflow: hidden !important; text-align: left !important;
  }
  section.about-cat.cat03 .cntbox::before {
    content: "" !important; position: absolute !important; top: -40%; right: -8%;
    width: 55%; height: 110%; background: radial-gradient(circle, rgba(255,210,90,.16), transparent 70%);
    pointer-events: none !important; z-index: 0 !important;
  }
  /* カード下の単独シェブロンは廃止（POINT間コネクターに置換）*/
  section.about-cat.cat03 .cntbox::after { display: none !important; }
  /* POINT間コネクター：光るリング＋↓シェブロン＋縦グローライン */
  section.about-cat.cat03 .pt-connector {
    display: flex !important; align-items: center !important; justify-content: center !important;
    position: relative !important; height: 96px !important; margin: 0 !important;
  }
  section.about-cat.cat03 .pt-connector::before {
    content: "" !important; position: absolute !important; top: 0 !important; bottom: 0 !important; left: 50% !important;
    transform: translateX(-50%) !important; width: 2px !important;
    background: linear-gradient(180deg, transparent, rgba(255,200,60,.55) 25%, rgba(255,200,60,.55) 75%, transparent) !important;
  }
  section.about-cat.cat03 .pt-conn-ring {
    position: relative !important; z-index: 1 !important;
    width: 46px !important; height: 46px !important; border-radius: 50% !important;
    border: 2px solid rgba(255,205,70,.85) !important;
    background: radial-gradient(circle, rgba(45,33,0,.95), #0b0b0b) !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    box-shadow: 0 0 18px rgba(255,200,60,.55), inset 0 0 12px rgba(255,200,60,.35) !important;
  }
  section.about-cat.cat03 .pt-conn-ring svg {
    width: 22px !important; height: 22px !important; display: block !important;
    animation: cat03ConnBounce 1.7s ease-in-out infinite !important;
  }
  @keyframes cat03ConnBounce {
    0%, 100% { transform: translateY(-2px); }
    50% { transform: translateY(3px); }
  }
  /* POINTピル */
  section.about-cat.cat03 .cnt-num {
    grid-area: num !important; justify-self: start !important; position: relative !important; z-index: 1 !important;
    display: inline-block !important; border: 1.5px solid #FFD400 !important; border-radius: 8px !important;
    padding: 4px 16px !important; color: #fff !important; font-size: 15px !important; letter-spacing: 2px !important;
    background: rgba(255,212,0,.08) !important; line-height: 1.2 !important; margin: 0 0 10px !important; font-weight: 800 !important; width: auto !important;
  }
  section.about-cat.cat03 .cnt-num span { color: #FFD400 !important; font-size: 1.18em !important; margin-left: 6px !important; }
  /* 見出し */
  section.about-cat.cat03 .cnt-ttl {
    grid-area: ttl !important; position: relative !important; z-index: 1 !important;
    font-size: clamp(30px, 2.9vw, 44px) !important; width: auto !important; color: #fff !important;
    text-align: left !important; padding: 0 !important; line-height: 1.2 !important; font-weight: 900 !important; margin: 0 0 16px !important;
    background: none !important;
  }
  section.about-cat.cat03 .cnt-ttl .ttl-pc { display: inline !important; }
  section.about-cat.cat03 .cnt-ttl .ttl-sp { display: none !important; }
  /* 白カード（左に✓・右にテキスト）*/
  section.about-cat.cat03 .cnt-fd {
    grid-area: fd !important; position: relative !important; z-index: 1 !important;
    width: 100% !important; padding: 0 !important; height: auto !important; min-height: 0 !important; margin: 0 !important;
    background: none !important;
  }
  section.about-cat.cat03 .cnt-fd .bg { display: none !important; }
  section.about-cat.cat03 .pt-ico { display: none !important; }
  section.about-cat.cat03 .cnt-fd .txt {
    position: static !important; transform: none !important; top: auto !important; left: auto !important; right: auto !important; bottom: auto !important;
    display: flex !important; align-items: flex-start !important; gap: 12px !important;
    width: 100% !important; box-sizing: border-box !important; max-width: none !important;
    background: #fff !important; border-radius: 14px !important; box-shadow: 0 8px 20px rgba(0,0,0,.4) !important;
    color: #1a1a1a !important; text-align: left !important; padding: 18px 20px !important; margin: 0 !important;
    font-size: 18px !important;
  }
  section.about-cat.cat03 .pt-check { display: block !important; flex: 0 0 30px !important; width: 30px !important; margin-top: 2px !important; }
  section.about-cat.cat03 .pt-check svg { width: 100% !important; height: auto !important; display: block !important; }
  section.about-cat.cat03 .pt-body { flex: 1 1 auto !important; font-size: clamp(17px, 1.6vw, 22px) !important; line-height: 1.65 !important; font-weight: 700 !important; color: #1a1a1a !important; text-align: left !important; }
  section.about-cat.cat03 .cnt-fd .txt .ttl-pc { display: inline !important; }
  section.about-cat.cat03 .cnt-fd .txt .ttl-sp { display: none !important; }
  section.about-cat.cat03 .pt-body .empha-key { color: #e8312b !important; font-weight: 800 !important; }
  /* キャプション（アイコン＋淡い金文字）*/
  section.about-cat.cat03 .pt-cap {
    grid-area: cap !important; position: relative !important; z-index: 1 !important;
    display: flex !important; align-items: center !important; gap: 9px !important;
    text-align: left !important; color: #d9c489 !important;
    font-size: clamp(16px, 1.5vw, 21px) !important; line-height: 1.45 !important; margin: 15px 0 0 !important; font-weight: 600 !important;
  }
  section.about-cat.cat03 .pt-cap .cap-ico { display: inline-block !important; flex: 0 0 22px !important; width: 22px !important; }
  section.about-cat.cat03 .pt-cap .cap-ico svg { width: 100% !important; height: auto !important; display: block !important; }
  section.about-cat.cat03 .pt-cap .cap-key { color: #FFD400 !important; font-weight: 800 !important; }
  /* 右カラム画像（あなたが用意：rule_point0X.webp）。カード高さいっぱいに合わせて左右の高さを揃える */
  section.about-cat.cat03 .pt-media {
    grid-area: media !important; align-self: stretch !important; position: relative !important; z-index: 1 !important;
    width: 100% !important; min-height: 100% !important;
    border-radius: 14px !important; overflow: hidden !important;
    background: #050505 !important; border: 1px solid rgba(255,201,90,.3) !important;
    display: block !important;
  }
  section.about-cat.cat03 .pt-media img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block !important; }
}

/* ---------- 14l-reveal. cat03 POINTカード：スクロールで出現 ----------
   JS(IntersectionObserver)が .reveal-init を付与→画面に入ると .reveal-in。
   JSが無効/失敗の場合は .reveal-init が付かないので通常表示のまま（フォールバック安全）。 */
.about-cat.cat03 .cntbox.reveal-init { opacity: 0 !important; transform: translateY(38px) !important; transition: opacity .7s ease, transform .7s ease !important; }
.about-cat.cat03 .cntbox.reveal-in { opacity: 1 !important; transform: none !important; }

/* ---------- 14m. cat09「仕組み①」PCヒーローバナー（HTML/CSSで近似再現）----------
   左：電話モック＋口コミカード／右：見出し＋1.8倍バッジ＋注記。赤グラデ背景。スマホは現状維持。 */
.about-cat.cat09 .kuchi-hero-note { display: none; }
.about-cat.cat09 .kuchi-hero-media { display: none; }
.about-cat.cat09 .pc-ai { display: none; }
.about-cat.cat09 .kuchi-hero-banner { display: contents; }   /* モバイル：透過（従来レイアウト維持）。見出し「仕組み①」と背景は元のまま */
.about-cat.cat09 .kh-uparrow { display: none; }
.about-cat.cat09 .kuchi-hero-sp { display: none; }   /* スマホ専用ヒーロー画像（PCでは非表示）*/
@media screen and (max-width: 767px) {
  /* 【修正 v202】cat09スマホの黒帯対策：解決策バナーを1カラム化し、セクションで横はみ出しを遮断（実機での横スクロール=黒帯の発生源を断つ） */
  section.about-cat.cat09 { overflow-x: hidden !important; }
  section.about-cat.cat09 .about-cat-main,
  section.about-cat.cat09 .about-cat-main-inner { width: 100% !important; max-width: none !important; margin-left: 0 !important; margin-right: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
  section.about-cat.cat09 .title-area.title-area01,
  section.about-cat.cat09 .kuchi-bad-banner,
  section.about-cat.cat09 .kuchi-sol-banner,
  section.about-cat.cat09 .kuchi-collect { padding-left: 4% !important; padding-right: 4% !important; }
  /* 【スマホ】失敗例の見出し＋本文（Image#3）を画像の上に表示：bad-bannerのうち見出し・本文だけ出す */
  section.about-cat.cat09 .kuchi-bad-banner { display: block !important; background: transparent !important; margin: 4px 0 8px !important; box-shadow: none !important; }
  /* スマホ＋3吹き出し画像（kbad-media：新画像をpictureで） */
  section.about-cat.cat09 .kuchi-bad-banner .kbad-media { display: block !important; margin: 16px auto 6px !important; background: transparent !important; box-shadow: none !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-media picture,
  section.about-cat.cat09 .kuchi-bad-banner .kbad-media img { display: block !important; width: 100% !important; max-width: 560px !important; height: auto !important; aspect-ratio: 1536 / 1024 !important; margin: 0 auto !important; background: transparent !important; box-shadow: none !important; }
  /* その結果／だから：白ピル（縦並び） */
  section.about-cat.cat09 .kuchi-bad-banner .kbad-foot2 { display: flex !important; flex-direction: column !important; align-items: stretch !important; margin: 8px 0 0 !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-pill { position: relative !important; display: flex !important; align-items: center !important; gap: 12px !important; width: 100% !important; background: #fff !important; border-radius: 14px !important; padding: 14px 16px !important; box-shadow: 0 6px 18px rgba(0,0,0,.22) !important; box-sizing: border-box !important; text-align: left !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-pill--sub { margin-top: 24px !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-pill--main::after { content: "" !important; position: absolute !important; left: 50% !important; bottom: -12px !important; transform: translateX(-50%) !important; width: 0 !important; height: 0 !important; border-left: 12px solid transparent !important; border-right: 12px solid transparent !important; border-top: 12px solid #fff !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-ico { flex: 0 0 auto !important; width: 40px !important; height: 40px !important; background-repeat: no-repeat !important; background-position: center !important; background-size: contain !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-ico--chart { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Crect x='3' y='3' width='42' height='42' rx='9' fill='none' stroke='%23d70c18' stroke-width='3'/%3E%3Crect x='12' y='16' width='6' height='20' rx='1.5' fill='%23d70c18'/%3E%3Crect x='21' y='22' width='6' height='14' rx='1.5' fill='%23d70c18'/%3E%3Crect x='30' y='28' width='6' height='8' rx='1.5' fill='%23d70c18'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-ico--bulb { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cg stroke='%23efa400' stroke-width='2.6' stroke-linecap='round'%3E%3Cline x1='24' y1='3' x2='24' y2='9'/%3E%3Cline x1='9' y1='10' x2='13' y2='14'/%3E%3Cline x1='39' y1='10' x2='35' y2='14'/%3E%3C/g%3E%3Cpath d='M24 9a12 12 0 0 0-7.5 21.4c1.6 1.3 2.5 2.6 2.5 4.6h10c0-2 .9-3.3 2.5-4.6A12 12 0 0 0 24 9z' fill='%23f7b500'/%3E%3Crect x='19.5' y='36' width='9' height='3' rx='1.5' fill='%23d99400'/%3E%3Crect x='21' y='40.5' width='6' height='2.6' rx='1.3' fill='%23d99400'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-txt { font-size: clamp(15px, 4vw, 19px) !important; font-weight: 800 !important; color: #1a1a1a !important; line-height: 1.45 !important; letter-spacing: -.01em !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-pill--sub .kbf-txt { font-size: clamp(15px, 4vw, 19px) !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-txt .mk { color: #e60012 !important; font-weight: 900 !important; background: linear-gradient(transparent 6%, #ffe000 6%, #ffe000 98%, transparent 98%) !important; padding: 0 .08em !important; }
  /* しかも… */
  section.about-cat.cat09 .kuchi-bad-banner .kbad-more { display: flex !important; flex-direction: column !important; align-items: center !important; margin: 40px 0 0 !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-more-txt { margin: 0 !important; color: #fff !important; font-weight: 900 !important; font-size: clamp(34px, 9vw, 56px) !important; line-height: 1.05 !important; letter-spacing: .05em !important; text-shadow: 0 0 2px rgba(0,0,0,.55), 0 4px 14px rgba(0,0,0,.5) !important; background: transparent !important; animation: kbadMorePulseSP 1.4s ease-in-out infinite !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-more-txt .kbad-more-el { color: #fff !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-more-dl { display: block !important; width: 44px !important; height: 70px !important; margin: 10px auto 0 !important; animation: kbadMoreBounceSP 1.5s ease-in-out infinite !important; background-repeat: no-repeat !important; background-position: center !important; background-size: contain !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 104'%3E%3Ccircle cx='20' cy='8' r='3.2' fill='%23ffffff'/%3E%3Ccircle cx='20' cy='24' r='4.4' fill='%23ffffff'/%3E%3Ccircle cx='20' cy='42' r='5.6' fill='%23ffffff'/%3E%3Cpath d='M7 60 L20 78 L33 60' stroke='%23ffffff' stroke-width='6' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M7 82 L20 100 L33 82' stroke='%23ffffff' stroke-width='6' fill='none' stroke-linecap='round' stroke-linejoin='round' opacity='.5'/%3E%3C/svg%3E") !important; }
  /* フロー（口コミ数があるだけでは…！？ → ①②③ → 埋もれ → 結論） */
  section.about-cat.cat09 .kuchi-bad-banner .kbad-flow { margin: 26px auto 6px !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-flow-head { margin: 0 0 18px !important; text-align: center !important; color: #fff !important; font-weight: 900 !important; font-size: clamp(20px, 5.6vw, 30px) !important; line-height: 1.35 !important; text-shadow: 0 2px 8px rgba(0,0,0,.4) !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-flow-head .hl { color: #FFFC00 !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-flow-head .qm { color: #fff !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-steps { display: flex !important; flex-direction: column !important; align-items: center !important; margin: 0 0 18px !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-cardimg { flex: 0 0 auto !important; width: 100% !important; max-width: 430px !important; height: auto !important; aspect-ratio: 1448 / 1086 !important; display: block !important; border-radius: 14px !important; box-shadow: 0 8px 22px rgba(0,0,0,.28) !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-arw { flex: 0 0 auto !important; align-self: center !important; width: 0 !important; height: 0 !important; margin: 10px 0 !important; border-left: 13px solid transparent !important; border-right: 13px solid transparent !important; border-top: 17px solid #FFFC00 !important; border-bottom: 0 !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-bottom { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 16px !important; margin-top: 18px !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-bury { width: 78% !important; max-width: 320px !important; height: auto !important; aspect-ratio: 1536 / 1024 !important; display: none !important; margin: 0 auto !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-concl { display: flex !important; align-items: center !important; gap: 12px !important; width: 100% !important; min-height: 0 !important; background: #fff !important; border-radius: 14px !important; padding: 16px 18px !important; box-shadow: 0 6px 18px rgba(0,0,0,.22) !important; box-sizing: border-box !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-check { flex: 0 0 auto !important; width: 38px !important; height: 38px !important; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='22' fill='%23e60012'/%3E%3Cpath d='M14 25 l7 7 l14 -16' fill='none' stroke='%23ffffff' stroke-width='5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-concl-txt { color: #1a1a1a !important; font-weight: 800 !important; font-size: clamp(18px, 5.4vw, 26px) !important; line-height: 1.45 !important; text-align: left !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-concl-txt .mk { color: #e60012 !important; font-weight: 900 !important; background: linear-gradient(transparent 6%, #ffe000 6%, #ffe000 98%, transparent 98%) !important; padding: 0 .08em !important; }
  /* バナー内の謎の白背景を一掃（白/色付き要素・画像・アイコンは除外） */
  section.about-cat.cat09 .kuchi-bad-banner *:not(.kbf-pill):not(.kf-concl):not(.kf-cardimg):not(.kf-check):not(.kbf-ico):not(.mk):not(img):not(picture):not(source) { background-color: transparent !important; }
  /* 「しかも…」＋矢印のエフェクト（スマホ用keyframes。PC版はmin-width内に別定義） */
  @keyframes kbadMorePulseSP { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.06); } }
  @keyframes kbadMoreBounceSP { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(8px); } }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-head { display: block !important; background: transparent !important; color: #fff !important; text-align: center !important; font-weight: 900 !important; font-size: clamp(27px, 7.3vw, 42px) !important; line-height: 1.32 !important; letter-spacing: -.01em !important; margin: 2px auto 14px !important; text-shadow: 0 2px 8px rgba(0,0,0,.3) !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-head .hl { color: #FFFC00 !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-body { display: block !important; background: transparent !important; color: #fff !important; text-align: center !important; font-weight: 600 !important; font-size: clamp(16.5px, 4.8vw, 21px) !important; line-height: 1.8 !important; margin: 0 auto !important; max-width: 100% !important; text-shadow: 0 1px 4px rgba(0,0,0,.25) !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-body .empha { color: #FFFC00 !important; font-weight: 700 !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-head *,
  section.about-cat.cat09 .kuchi-bad-banner .kbad-body * { background: transparent !important; }
  /* 旧本文(title-area02)・旧画像(cntarea02)・旧その結果(title-area03)は kuchi-bad-banner が内包するのでスマホで非表示 */
  section.about-cat.cat09 .title-area.title-area02 { display: none !important; }
  section.about-cat.cat09 .cntarea.cntarea02 { display: none !important; }
  section.about-cat.cat09 .title-area.title-area03 { display: none !important; }
  /* box03（成功例カード）画像のCLS対策：遅延読み込みで高さが0→確定になりガクつくのを防ぐため、先に高さを確保 */
  section.about-cat.cat09 .cntbox.box03 .cnt-img img { aspect-ratio: 1618 / 970 !important; height: auto !important; }
  /* 【スマホ】解決策バナーの見出し＋導入（Image#14）を表示。3ステップ・電話・旧見出し(title-area04)は非表示 */
  section.about-cat.cat09 .kuchi-sol-banner { display: flex !important; flex-direction: column !important; align-items: center !important; background: transparent !important; padding: 0 4% !important; margin: 14px 0 0 !important; max-width: 100% !important; overflow-x: clip !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-left { display: contents !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-textcol { display: block !important; order: 1 !important; width: 100% !important; min-width: 0 !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-sol-banner .kuchi-step3 { display: block !important; order: 3 !important; width: 100% !important; min-width: 0 !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-head { display: block !important; color: #fff !important; font-weight: 900 !important; font-size: clamp(28px, 7.6vw, 44px) !important; line-height: 1.6 !important; letter-spacing: -.01em !important; text-align: center !important; margin: 4px 0 16px !important; white-space: normal !important; overflow-wrap: anywhere !important; text-shadow: 0 0 1px rgba(0,0,0,.5), 0 3px 9px rgba(0,0,0,.45) !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-head .hl { color: #FFC400 !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-head .ksol-l2 { display: inline-block !important; font-size: 1.42em !important; line-height: 1.1 !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-head .ksol-u { color: #fff !important; text-decoration: underline !important; text-decoration-color: #FFC400 !important; text-underline-offset: 5px !important; text-decoration-thickness: 4px !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-head .ksol-sparkle { display: inline-block !important; width: clamp(22px, 6vw, 34px) !important; height: clamp(22px, 6vw, 34px) !important; margin-left: 8px !important; vertical-align: 0.4em !important; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M20 0 C21 13 27 19 40 20 C27 21 21 27 20 40 C19 27 13 21 0 20 C13 19 19 13 20 0 Z' fill='%23ffffff'/%3E%3C/svg%3E") center / contain no-repeat !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-intro { display: block !important; color: #fff !important; font-weight: 700 !important; font-size: clamp(17px, 4.9vw, 22px) !important; line-height: 1.7 !important; text-align: center !important; margin: 0 0 8px !important; background: transparent !important; text-shadow: 0 1px 4px rgba(0,0,0,.35) !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-intro .ks3-em { color: #FFFC00 !important; font-weight: 900 !important; }
  /* 【スマホ】3ステップ（Image#15）：見出し＋①②③白カード縦並び＋下矢印 */
  section.about-cat.cat09 .kuchi-step3 .ks3-head { display: block !important; color: #fff !important; text-align: center !important; font-weight: 900 !important; font-size: clamp(22px, 6.2vw, 34px) !important; line-height: 1.35 !important; margin: 14px 0 18px !important; text-shadow: 0 2px 8px rgba(0,0,0,.4) !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-head .ks3-big { color: #ffd400 !important; font-size: 1.45em !important; }
  /* スマホ：CSS製カード(ks3-body)は非表示、画像版(ks3-sp-imgs)を表示 */
  section.about-cat.cat09 .kuchi-step3 .ks3-body { display: none !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-sp-imgs { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 0 !important; width: 100% !important; margin: 2px 0 0 !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-sp-img { display: block !important; width: 100% !important; max-width: 460px !important; height: auto !important; aspect-ratio: 1672 / 641 !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-sp-img3 { aspect-ratio: 1672 / 941 !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-sp-arw { flex: 0 0 auto !important; width: 0 !important; height: 0 !important; margin: 10px 0 !important; border-left: 13px solid transparent !important; border-right: 13px solid transparent !important; border-top: 17px solid #2a6fd8 !important; }
  /* ===== 【スマホ】kuchi-collect：バッジ＋見出し＋サブ＋3カード＋検索ユーザー導くカード ===== */
  section.about-cat.cat09 .kuchi-collect { display: block !important; background: transparent !important; padding: 0 4% !important; margin: 26px 0 0 !important; max-width: 100% !important; text-align: center !important; }
  section.about-cat.cat09 .kuchi-collect .kc-badge { display: inline-block !important; margin: 0 0 18px !important; background: #fff !important; color: #d70c18 !important; font-weight: 900 !important; font-size: clamp(15px, 4vw, 20px) !important; line-height: 1.45 !important; text-align: center !important; padding: 12px 22px !important; border-radius: 16px !important; box-shadow: 0 5px 14px rgba(0,0,0,.22) !important; }
  section.about-cat.cat09 .kuchi-collect .kc-badge .kc-bar { color: #eba5a9 !important; margin: 0 .35em !important; font-weight: 500 !important; }
  section.about-cat.cat09 .kuchi-collect .kc-head { margin: 0 0 14px !important; color: #fff !important; text-align: left !important; font-weight: 900 !important; font-size: clamp(27px, 7.2vw, 42px) !important; line-height: 1.35 !important; text-shadow: 0 2px 8px rgba(0,0,0,.4) !important; }
  section.about-cat.cat09 .kuchi-collect .kc-head .kc-u { text-decoration: underline !important; text-decoration-color: #FFD400 !important; text-underline-offset: 5px !important; text-decoration-thickness: 5px !important; }
  section.about-cat.cat09 .kuchi-collect .kc-head .hl { color: #FFFC00 !important; }
  section.about-cat.cat09 .kuchi-collect .kc-sub { margin: 0 0 20px !important; color: #fff !important; text-align: left !important; font-weight: 700 !important; font-size: clamp(14px, 3.9vw, 18px) !important; line-height: 1.6 !important; text-shadow: 0 1px 4px rgba(0,0,0,.35) !important; }
  section.about-cat.cat09 .kuchi-collect .kc-cards { display: flex !important; flex-direction: column !important; gap: 14px !important; margin: 0 0 14px !important; }
  section.about-cat.cat09 .kuchi-collect .kc-card { display: flex !important; align-items: center !important; gap: 14px !important; width: 100% !important; background: #fff !important; border-radius: 16px !important; padding: 18px 18px !important; box-shadow: 0 6px 18px rgba(0,0,0,.2) !important; box-sizing: border-box !important; text-align: left !important; }
  section.about-cat.cat09 .kuchi-collect .kc-ico { flex: 0 0 auto !important; width: 58px !important; height: 58px !important; border-radius: 50% !important; background-color: #fde7ea !important; background-repeat: no-repeat !important; background-position: center !important; background-size: 50% !important; }
  section.about-cat.cat09 .kuchi-collect .kc-ico--pen { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23d70c18'%3E%3Cpath d='M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04a1 1 0 0 0 0-1.41l-2.34-2.34a1 1 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-collect .kc-ico--gift { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23d70c18'%3E%3Cpath d='M20 6h-2.18c.11-.31.18-.65.18-1a3 3 0 0 0-5.5-1.65l-.5.67-.5-.68A3 3 0 0 0 6 5c0 .35.07.69.18 1H4c-1.11 0-1.99.89-1.99 2L2 19c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2zm-5-2c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zM9 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm3 15H4v-7h8v7zm8 0h-8v-7h8v7z'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-collect .kc-ico--chart { background-size: 56% !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='%23d70c18' stroke-width='2.1' stroke-linecap='round'%3E%3Cpath d='M19.4 10.6a7.5 7.5 0 0 0-12.9-4'/%3E%3Cpath d='M4.6 13.4a7.5 7.5 0 0 0 12.9 4'/%3E%3C/g%3E%3Cpath d='M6.7 2.2 4.3 6.4l4.6.3z' fill='%23d70c18'/%3E%3Cpath d='M17.3 21.8l2.4-4.2-4.6-.3z' fill='%23d70c18'/%3E%3Cg fill='%23d70c18'%3E%3Ccircle cx='9' cy='12' r='1.15'/%3E%3Ccircle cx='12' cy='12' r='1.15'/%3E%3Ccircle cx='15' cy='12' r='1.15'/%3E%3C/g%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-collect .kc-ctxt { min-width: 0 !important; flex: 1 1 auto !important; }
  section.about-cat.cat09 .kuchi-collect .kc-ttl { color: #d70c18 !important; font-weight: 900 !important; font-size: clamp(20px, 5.4vw, 27px) !important; display: inline-block !important; border-bottom: 5px solid #FFD400 !important; padding-bottom: 2px !important; margin-bottom: 6px !important; line-height: 1.2 !important; }
  section.about-cat.cat09 .kuchi-collect .kc-desc { margin: 0 !important; color: #555 !important; font-weight: 500 !important; font-size: clamp(15px, 4.1vw, 19px) !important; line-height: 1.5 !important; }
  section.about-cat.cat09 .kuchi-collect .kc-bottom { display: flex !important; align-items: center !important; gap: 16px !important; width: 100% !important; background: #fff !important; border-radius: 16px !important; padding: 20px 18px !important; box-shadow: 0 6px 18px rgba(0,0,0,.2) !important; box-sizing: border-box !important; text-align: left !important; margin-top: 14px !important; }
  section.about-cat.cat09 .kuchi-collect .kc-bico { flex: 0 0 auto !important; width: 62px !important; height: 62px !important; border-radius: 50% !important; background-color: #d70c18 !important; background-repeat: no-repeat !important; background-position: center !important; background-size: 52% !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.6' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6'/%3E%3Cline x1='15' y1='15' x2='20.5' y2='20.5'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-collect .kc-btxt { text-align: left !important; min-width: 0 !important; flex: 1 1 auto !important; }
  section.about-cat.cat09 .kuchi-collect .kc-bttl { color: #d70c18 !important; font-weight: 900 !important; font-size: clamp(19px, 5vw, 26px) !important; display: inline-block !important; border-bottom: 6px solid #FFD400 !important; padding-bottom: 2px !important; line-height: 1.25 !important; }
  section.about-cat.cat09 .kuchi-collect .kc-bdesc { margin: 8px 0 0 !important; color: #333 !important; font-weight: 600 !important; font-size: clamp(13.5px, 3.7vw, 18px) !important; line-height: 1.45 !important; }
  /* 重複する title-area05（さらに、投稿の動機… ＋ 具体的な口コミを…向上！＝kc-headと重複）はスマホで非表示 */
  section.about-cat.cat09 .title-area.title-area05 { display: none !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-step { display: flex !important; flex-wrap: wrap !important; align-items: center !important; gap: 6px 14px !important; width: 100% !important; max-width: 460px !important; background: #fff !important; border-radius: 16px !important; padding: 18px 20px !important; box-shadow: 0 6px 18px rgba(0,0,0,.22) !important; box-sizing: border-box !important; text-align: left !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-top { flex: 0 0 auto !important; display: flex !important; align-items: center !important; gap: 10px !important; margin: 0 !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-num { flex: 0 0 auto !important; width: 34px !important; height: 34px !important; border-radius: 50% !important; background: #173da0 !important; color: #fff !important; font-weight: 900 !important; font-size: 20px !important; display: flex !important; align-items: center !important; justify-content: center !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-ico { flex: 0 0 auto !important; width: 46px !important; height: 46px !important; border-radius: 50% !important; background-color: #e9f1fc !important; background-repeat: no-repeat !important; background-position: center !important; background-size: 52% !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-ico--pen { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23173da0'%3E%3Cpath d='M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04a1 1 0 0 0 0-1.41l-2.34-2.34a1 1 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-ico--dots { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23173da0' d='M20 2H4a2 2 0 0 0-2 2v18l4-4h14a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z'/%3E%3Cg fill='%23ffffff'%3E%3Ccircle cx='8' cy='9.5' r='1.6'/%3E%3Ccircle cx='12' cy='9.5' r='1.6'/%3E%3Ccircle cx='16' cy='9.5' r='1.6'/%3E%3C/g%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-ico--robot { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='3' r='1.5' fill='%23173da0'/%3E%3Crect x='11.2' y='4' width='1.6' height='3' fill='%23173da0'/%3E%3Crect x='5' y='7' width='14' height='12' rx='3.5' fill='%23173da0'/%3E%3Ccircle cx='9.5' cy='12' r='1.7' fill='%23ffffff'/%3E%3Ccircle cx='14.5' cy='12' r='1.7' fill='%23ffffff'/%3E%3Crect x='9' y='15.5' width='6' height='1.6' rx='.8' fill='%23ffffff'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-ttl { flex: 1 1 auto !important; color: #173da0 !important; font-weight: 900 !important; font-size: clamp(19px, 5.4vw, 26px) !important; margin: 0 !important; letter-spacing: -.01em !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-desc { flex: 0 0 100% !important; margin: 4px 0 0 !important; color: #444 !important; font-weight: 600 !important; font-size: clamp(14px, 3.9vw, 18px) !important; line-height: 1.55 !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-arw { flex: 0 0 auto !important; align-self: center !important; width: 0 !important; height: 0 !important; margin: 10px 0 !important; border-left: 13px solid transparent !important; border-right: 13px solid transparent !important; border-top: 17px solid #2a6fd8 !important; border-bottom: 0 !important; }
  /* スマホ：見出しの下にスマホモックを中央表示 */
  section.about-cat.cat09 .kuchi-sol-banner .ksol-right { display: flex !important; order: 2 !important; width: 100% !important; justify-content: center !important; align-items: center !important; margin: 6px 0 18px !important; overflow: visible !important; position: relative !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-right::before { display: none !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-phone { position: relative !important; z-index: 1 !important; width: clamp(220px, 60vw, 300px) !important; max-width: 100% !important; background: #0c0c0c !important; border-radius: 36px !important; padding: 10px !important; box-shadow: 0 18px 44px rgba(0,0,0,.5) !important; box-sizing: border-box !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-notch { position: absolute !important; top: 10px !important; left: 50% !important; transform: translateX(-50%) !important; width: 40% !important; height: 20px !important; background: #0c0c0c !important; border-radius: 0 0 14px 14px !important; z-index: 3 !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-screen { position: relative !important; aspect-ratio: 9 / 16 !important; background: linear-gradient(160deg, #f4f4f4, #e6e6e6) !important; border-radius: 26px !important; overflow: hidden !important; }
  section.about-cat.cat09 .title-area.title-area04 { display: none !important; }
  /* 【スマホ】title-area03 を「その結果…」白カード（Image#7）に */
  section.about-cat.cat09 .title-area.title-area03 .subtxt-03 { padding: 0 4% !important; }
  section.about-cat.cat09 .title-area.title-area03 .kbad-sp-result {
    display: flex !important; align-items: center !important; gap: 14px !important;
    background: #fff !important; border-radius: 14px !important; padding: 16px 18px !important;
    box-shadow: 0 6px 18px rgba(0,0,0,.22) !important; text-align: left !important;
    margin: 6px auto 0 !important; box-sizing: border-box !important;
  }
  section.about-cat.cat09 .title-area.title-area03 .kbad-sp-ico {
    flex: 0 0 auto !important; width: 46px !important; height: 46px !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Crect x='3' y='3' width='42' height='42' rx='9' fill='none' stroke='%23d70c18' stroke-width='3'/%3E%3Crect x='12' y='16' width='6' height='20' rx='1.5' fill='%23d70c18'/%3E%3Crect x='21' y='22' width='6' height='14' rx='1.5' fill='%23d70c18'/%3E%3Crect x='30' y='28' width='6' height='8' rx='1.5' fill='%23d70c18'/%3E%3C/svg%3E") center / contain no-repeat !important;
  }
  html body section.about-cat.cat09 .title-area.title-area03 .kbad-sp-txt {
    color: #1a1a1a !important; font-weight: 700 !important; font-size: clamp(15px, 4.2vw, 19px) !important; line-height: 1.5 !important; text-align: left !important;
  }
  section.about-cat.cat09 .title-area.title-area03 .kbad-sp-red { color: #e60012 !important; font-weight: 800 !important; }
  /* スマホ：見出しに「AIが」＋金強調、1.8倍テキストバッジ→画像#61、注記を白カード＋✓に */
  section.about-cat.cat09 .pc-ai { display: inline !important; }
  section.about-cat.cat09 .title-area.title-area01 .subtxt-01 .mask-ani--cnt { color: #fff !important; }
  section.about-cat.cat09 .title-area.title-area01 .subtxt-01 .hl { color: #FFFC00 !important; }
  section.about-cat.cat09 .title-area.title-area01 .subtxt-05 { display: none !important; }
  section.about-cat.cat09 .kuchi-hero-sp { display: block !important; width: 100% !important; max-width: 560px !important; height: auto !important; margin: 16px auto 12px !important; }
  /* 注記：白カード＋赤✓＋「内容の質」金下線 */
  section.about-cat.cat09 .title-area.title-area01 .kuchi-hero-note {
    display: block !important; position: relative !important;
    background: #fff !important; border-radius: 16px !important; padding: 18px 20px 18px 74px !important; box-sizing: border-box !important;
    color: #333 !important; text-align: left !important; font-weight: 700 !important;
    font-size: clamp(15.4px, 4.29vw, 19.8px) !important; line-height: 1.55 !important; margin: 12px auto 0 !important; max-width: 94% !important;
    word-break: keep-all !important; overflow-wrap: anywhere !important;
    box-shadow: 0 6px 16px rgba(0,0,0,.22) !important; text-shadow: none !important;
  }
  section.about-cat.cat09 .title-area.title-area01 .kuchi-hero-note::before {
    content: "" !important; position: absolute !important; left: 16px !important; top: 50% !important; transform: translateY(-50%) !important;
    width: clamp(40px, 11vw, 52px) !important; height: clamp(40px, 11vw, 52px) !important; border-radius: 50% !important;
    background: #e60012 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath d='M14 25 l7 7 l14 -16' fill='none' stroke='%23ffffff' stroke-width='5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 56% no-repeat !important;
  }
  section.about-cat.cat09 .title-area.title-area01 .kuchi-hero-note .note-slash { display: none !important; }
  section.about-cat.cat09 .title-area.title-area01 .kuchi-hero-note .empha { color: #FFFC00 !important; font-weight: 900 !important; }
  section.about-cat.cat09 .title-area.title-area01 .kuchi-hero-note .note-em { color: #333 !important; font-weight: 700 !important; }
}
@media screen and (min-width: 769px) {
  .about-cat.cat09 .pc-ai { display: inline !important; }
  /* 赤バナーは「電話＋見出し＋1.8倍＋注記」だけのカード。見出し「儲かる仕組み①」とセクション背景は元のまま */
  section.about-cat.cat09 .title-area.title-area01 .kuchi-hero-banner {
    display: grid !important;
    position: relative !important; max-width: 1240px !important; margin: 18px auto 6px !important; box-sizing: border-box !important;
    background: transparent !important; border-radius: 0 !important; padding: 6px 2px 10px !important; overflow: visible !important;
    box-shadow: none !important;
    grid-template-columns: 40% 1fr !important;
    grid-template-areas: "media headline" "media badge" "media note" !important;
    grid-template-rows: auto auto 1fr !important;
    column-gap: 26px !important; row-gap: 8px !important; align-content: start !important; align-items: start !important;
  }
  /* 背景：斜めストライプ模様（目標デザイン準拠・控えめ） */
  section.about-cat.cat09 .title-area.title-area01 .kuchi-hero-banner::before {
    content: "" !important; position: absolute !important; inset: -14px -8px !important; z-index: 0 !important; pointer-events: none !important;
    background-image: repeating-linear-gradient(125deg, rgba(255,255,255,.055) 0 2px, transparent 2px 26px) !important;
    border-radius: 14px !important;
  }
  /* メイン見出し */
  section.about-cat.cat09 .title-area.title-area01 .subtxt-01 {
    grid-area: headline !important; position: relative !important; z-index: 1 !important; text-align: left !important; margin: 0 !important;
  }
  section.about-cat.cat09 .title-area.title-area01 .subtxt-01 .mask-ani-inner { display: block !important; }
  section.about-cat.cat09 .title-area.title-area01 .subtxt-01 .mask-ani--cnt {
    font-size: clamp(32px, 3.74vw, 51px) !important; font-weight: 900 !important; color: #fff !important; line-height: 1.28 !important; text-align: left !important;
    text-shadow: 0 2px 10px rgba(0,0,0,.45) !important; letter-spacing: -.02em !important; word-break: keep-all !important;
  }
  section.about-cat.cat09 .title-area.title-area01 .subtxt-01 .hl { color: #FFFC00 !important; }
  /* 1.8倍バッジ */
  section.about-cat.cat09 .title-area.title-area01 .subtxt-05 {
    grid-area: badge !important; position: relative !important; z-index: 1 !important; justify-self: start !important; margin: 4px 0 0 !important;
  }
  section.about-cat.cat09 .title-area.title-area01 .subtxt-05 .empha {
    position: relative !important; display: inline-flex !important; align-items: center !important; gap: 22px !important;
    color: #e60012 !important; font-weight: 900 !important;
    background: linear-gradient(180deg, #ffffff, #fff6e9) !important;
    border: 2px solid rgba(231,170,55,.6) !important; border-radius: 18px !important; padding: 18px 42px !important;
    box-shadow: 0 12px 28px rgba(0,0,0,.28) !important;
    text-shadow: none !important;
  }
  /* 人物（グループ）アイコン */
  section.about-cat.cat09 .title-area.title-area01 .subtxt-05 .bdg-icon {
    flex: 0 0 auto !important; width: clamp(54px, 5.2vw, 76px) !important; height: clamp(54px, 5.2vw, 76px) !important; align-self: center !important; border-radius: 50% !important;
    background: #e60012 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23ffffff'%3E%3Cpath d='M16 11c1.66 0 2.99-1.34 2.99-3S17.66 5 16 5c-1.66 0-3 1.34-3 3s1.34 3 3 3zm-8 0c1.66 0 2.99-1.34 2.99-3S9.66 5 8 5C6.34 5 5 6.34 5 8s1.34 3 3 3zm0 2c-2.33 0-7 1.17-7 3.5V19h14v-2.5c0-2.33-4.67-3.5-7-3.5zm8 0c-.29 0-.62.02-.97.05 1.16.84 1.97 1.97 1.97 3.45V19h6v-2.5c0-2.33-4.67-3.5-7-3.5z'/%3E%3C/svg%3E") no-repeat center / 58% !important;
  }
  section.about-cat.cat09 .title-area.title-area01 .subtxt-05 .bdg-lead {
    font-size: clamp(19px, 1.85vw, 29px) !important; font-weight: 800 !important; line-height: 1.12 !important; text-align: left !important; color: #1a1a1a !important;
  }
  /* 縦の仕切り線 */
  section.about-cat.cat09 .title-area.title-area01 .subtxt-05 .bdg-div {
    flex: 0 0 auto !important; width: 2px !important; height: clamp(46px, 4.8vw, 70px) !important; align-self: center !important;
    background: linear-gradient(180deg, transparent, rgba(0,0,0,.14) 18%, rgba(0,0,0,.14) 82%, transparent) !important; border-radius: 2px !important;
  }
  section.about-cat.cat09 .title-area.title-area01 .subtxt-05 .bdg-num {
    font-size: clamp(56px, 6.1vw, 94px) !important; font-weight: 900 !important; line-height: 1 !important; color: #e60012 !important; letter-spacing: -.02em !important;
  }
  section.about-cat.cat09 .title-area.title-area01 .subtxt-05 .bdg-unit {
    font-size: clamp(32px, 3.3vw, 52px) !important; font-weight: 900 !important; color: #e60012 !important; align-self: flex-end !important; margin-bottom: .1em !important;
  }
  /* キラッと（数字右上の閃光）*/
  section.about-cat.cat09 .title-area.title-area01 .subtxt-05 .bdg-spark {
    position: absolute !important; top: 6px !important; right: 14px !important; width: clamp(22px, 2.2vw, 34px) !important; height: clamp(22px, 2.2vw, 34px) !important; pointer-events: none !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 34'%3E%3Cg stroke='%23f5a623' stroke-width='3' stroke-linecap='round'%3E%3Cline x1='17' y1='2' x2='17' y2='11'/%3E%3Cline x1='31' y1='9' x2='24' y2='15'/%3E%3Cline x1='33' y1='23' x2='25' y2='22'/%3E%3Cline x1='4' y1='10' x2='11' y2='15'/%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain !important;
  }
  /* 注記の金スラッシュ */
  section.about-cat.cat09 .title-area.title-area01 .kuchi-hero-note .note-slash {
    color: #FFC400 !important; font-weight: 900 !important; font-size: 1.25em !important; margin: 0 .15em !important;
  }
  /* 注記 */
  section.about-cat.cat09 .title-area.title-area01 .kuchi-hero-note {
    grid-area: note !important; display: block !important; position: relative !important; z-index: 1 !important;
    color: #ffe4e4 !important; font-size: clamp(19px, 1.75vw, 28px) !important; line-height: 1.55 !important; margin: 16px 0 0 !important; text-align: left !important; font-weight: 600 !important;
  }
  section.about-cat.cat09 .title-area.title-area01 .kuchi-hero-note .empha { color: #FFFC00 !important; font-weight: 900 !important; }
  section.about-cat.cat09 .title-area.title-area01 .kuchi-hero-note .note-em { color: #fff !important; font-weight: 800 !important; font-size: 1.12em !important; }
  /* 画像エリア（透過の電話画像＋口コミカード画像）*/
  section.about-cat.cat09 .title-area.title-area01 .kuchi-hero-media {
    grid-area: media !important; display: block !important; position: relative !important; z-index: 1 !important; min-height: 540px !important;
    perspective: 1500px !important;
  }
  /* 電話画像（透過webp）：大きめ＋わずかに3D傾け */
  section.about-cat.cat09 .title-area.title-area01 .kh-img-phone {
    display: block !important; width: clamp(330px, 34vw, 480px) !important; height: auto !important;
    margin: 0 auto 0 -42px !important; position: relative !important; z-index: 1 !important;
    transform: rotate(-3deg) rotateY(11deg) !important; transform-origin: 45% 55% !important;
    filter: drop-shadow(0 28px 52px rgba(0,0,0,.55)) !important;
  }
  /* スマホ上部のコミック風スパーク（白）*/
  section.about-cat.cat09 .title-area.title-area01 .kuchi-hero-media::before {
    content: "" !important; position: absolute !important; z-index: 3 !important; pointer-events: none !important;
    top: -4px !important; left: 37% !important;
    width: clamp(42px, 4.4vw, 66px) !important; height: clamp(48px, 5vw, 76px) !important;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 64'%3E%3Cg stroke='%23ffffff' stroke-width='5' stroke-linecap='round'%3E%3Cline x1='14' y1='20' x2='4' y2='8'/%3E%3Cline x1='30' y1='12' x2='32' y2='-2'/%3E%3Cline x1='44' y1='22' x2='54' y2='12'/%3E%3C/g%3E%3C/svg%3E") no-repeat center / contain !important;
  }
  /* 重なる口コミカード画像（透過webp）：下に大きめ配置 */
  section.about-cat.cat09 .title-area.title-area01 .kh-img-review {
    position: absolute !important; right: clamp(-40px, -2vw, -16px) !important; bottom: clamp(96px, 10vw, 180px) !important;
    width: clamp(250px, 25vw, 348px) !important; height: auto !important; z-index: 2 !important;
    filter: drop-shadow(0 18px 34px rgba(0,0,0,.45)) !important;
  }
}

/* ---------- 14n. cat09「内容が薄いと響かない」BADバナー（PC）----------
   PCのみ：見出し＋本文＋合成画像（電話＋BAD＋3課題）＋結論。スマホは従来の縦積み（title-area02/cntarea02/title-area03）を維持。 */
.kuchi-bad-banner { display: none; }
.kuchi-sol-banner { display: none; }
.kuchi-collect { display: none; }
@media screen and (min-width: 769px) {
  /* PCでは旧ブロックを隠し、合成バナーに置換 */
  section.about-cat.cat09 .title-area.title-area02,
  section.about-cat.cat09 .cntarea.cntarea02,
  section.about-cat.cat09 .title-area.title-area03 { display: none !important; }
  section.about-cat.cat09 .kuchi-bad-banner {
    display: block !important; position: relative !important; z-index: 1 !important;
    max-width: 1240px !important; margin: 34px auto 14px !important; padding: 0 8px !important; box-sizing: border-box !important; text-align: center !important;
    background: transparent !important;
  }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-head {
    font-size: clamp(34px, 4.4vw, 64px) !important; font-weight: 900 !important; color: #fff !important; line-height: 1.2 !important;
    text-shadow: 0 0 1px rgba(0,0,0,.55), 0 3px 9px rgba(0,0,0,.5) !important; margin: 0 0 16px !important; letter-spacing: -.015em !important;
    background: transparent !important; box-shadow: none !important;
  }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-head .hl {
    color: #FFFC00 !important; text-shadow: 0 0 14px rgba(255,252,0,.45), 0 3px 8px rgba(0,0,0,.4) !important;
  }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-body {
    font-size: clamp(20px, 2.04vw, 32px) !important; color: #ffffff !important; line-height: 1.7 !important; font-weight: 600 !important;
    margin: 22px auto 24px !important; max-width: 1080px !important;
    text-shadow: 0 1px 4px rgba(0,0,0,.4) !important;
    background: transparent !important; box-shadow: none !important;
  }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-body .empha {
    color: #FFFC00 !important; font-weight: 800 !important; text-shadow: 0 0 10px rgba(255,252,0,.35), 0 1px 3px rgba(0,0,0,.35) !important;
  }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-media { margin: 0 auto 18px !important; background: transparent !important; box-shadow: none !important; border: 0 !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-media img {
    display: block !important; width: min(880px, 84%) !important; height: auto !important; margin: 0 auto !important;
    background: transparent !important; box-shadow: none !important; border: 0 !important; border-radius: 0 !important;
  }
  /* 結論：白ピルなし。赤背景に直接（白文字＋黄色マーカー＋アイコン）2段 */
  section.about-cat.cat09 .kuchi-bad-banner .kbad-foot2 {
    display: flex !important; flex-direction: column !important; align-items: center !important; margin: 18px 0 0 !important;
    background: transparent !important; box-shadow: none !important;
  }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-pill {
    position: relative !important; display: inline-flex !important; align-items: center !important; gap: 18px !important;
    background: #fff !important; border-radius: 16px !important; padding: 15px 34px !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.28) !important; box-sizing: border-box !important;
  }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-pill--main { width: auto !important; max-width: none !important; flex-direction: column !important; justify-content: center !important; align-items: center !important; gap: 8px !important; padding: 24px 34px !important; text-align: center !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-pill--main .kbf-txt { text-align: center !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-pill--sub { margin-top: 26px !important; }
  /* つなぎの下向き三角（メイン底→サブ）*/
  section.about-cat.cat09 .kuchi-bad-banner .kbf-pill--main::after {
    content: "" !important; position: absolute !important; left: 50% !important; bottom: -13px !important; transform: translateX(-50%) !important;
    width: 0 !important; height: 0 !important; border-left: 14px solid transparent !important; border-right: 14px solid transparent !important; border-top: 14px solid #fff !important;
    filter: drop-shadow(0 5px 4px rgba(0,0,0,.14)) !important;
  }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-txt {
    font-size: clamp(18px, 2.05vw, 30px) !important; font-weight: 800 !important; color: #1a1a1a !important; line-height: 1.4 !important; letter-spacing: -.01em !important;
    text-shadow: none !important; background: transparent !important;
  }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-pill--sub .kbf-txt { font-size: clamp(18px, 2.05vw, 30px) !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-txt .mk {
    color: #e60012 !important; font-weight: 900 !important;
    background: linear-gradient(transparent 6%, #ffe000 6%, #ffe000 98%, transparent 98%) !important; padding: 0 .08em !important;
  }
  /* アイコン（白ピル上：チャート＝赤、電球＝金）*/
  section.about-cat.cat09 .kuchi-bad-banner .kbf-ico {
    flex: 0 0 auto !important; width: clamp(34px, 3vw, 46px) !important; height: clamp(34px, 3vw, 46px) !important;
    background-repeat: no-repeat !important; background-position: center !important; background-size: contain !important;
  }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-ico--chart {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Crect x='3' y='3' width='42' height='42' rx='9' fill='none' stroke='%23d70c18' stroke-width='3'/%3E%3Crect x='12' y='16' width='6' height='20' rx='1.5' fill='%23d70c18'/%3E%3Crect x='21' y='22' width='6' height='14' rx='1.5' fill='%23d70c18'/%3E%3Crect x='30' y='28' width='6' height='8' rx='1.5' fill='%23d70c18'/%3E%3C/svg%3E") !important;
  }
  section.about-cat.cat09 .kuchi-bad-banner .kbf-ico--bulb {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cg stroke='%23efa400' stroke-width='2.6' stroke-linecap='round'%3E%3Cline x1='24' y1='3' x2='24' y2='9'/%3E%3Cline x1='9' y1='10' x2='13' y2='14'/%3E%3Cline x1='39' y1='10' x2='35' y2='14'/%3E%3C/g%3E%3Cpath d='M24 9a12 12 0 0 0-7.5 21.4c1.6 1.3 2.5 2.6 2.5 4.6h10c0-2 .9-3.3 2.5-4.6A12 12 0 0 0 24 9z' fill='%23f7b500'/%3E%3Crect x='19.5' y='36' width='9' height='3' rx='1.5' fill='%23d99400'/%3E%3Crect x='21' y='40.5' width='6' height='2.6' rx='1.3' fill='%23d99400'/%3E%3C/svg%3E") !important;
  }
  /* 「しかも…」次セクションへの下つなぎ */
  section.about-cat.cat09 .kuchi-bad-banner .kbad-more {
    display: flex !important; flex-direction: column !important; align-items: center !important; margin: 80px 0 0 !important; background: transparent !important;
  }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-more-txt {
    margin: 0 !important; color: #fff !important; font-weight: 900 !important; font-size: clamp(42px, 5.4vw, 88px) !important; line-height: 1.05 !important; letter-spacing: .05em !important;
    text-shadow: 0 0 2px rgba(0,0,0,.55), 0 4px 14px rgba(0,0,0,.5), 0 0 26px rgba(255,196,0,.35) !important; background: transparent !important;
    animation: kbadMorePulse 1.4s ease-in-out infinite !important;
  }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-more-txt .kbad-more-el { color: #fff !important; text-shadow: 0 0 2px rgba(0,0,0,.55), 0 4px 14px rgba(0,0,0,.5) !important; }
  @keyframes kbadMorePulse { 0%,100%{ transform: scale(1);} 50%{ transform: scale(1.06);} }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-more-dl {
    display: block !important; width: clamp(40px, 4vw, 60px) !important; height: clamp(64px, 7vw, 104px) !important; margin: 12px auto 0 !important;
    background-repeat: no-repeat !important; background-position: center !important; background-size: contain !important;
    animation: kbadMoreBounce 1.5s ease-in-out infinite !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 104'%3E%3Ccircle cx='20' cy='8' r='3.2' fill='%23ffffff'/%3E%3Ccircle cx='20' cy='24' r='4.4' fill='%23ffffff'/%3E%3Ccircle cx='20' cy='42' r='5.6' fill='%23ffffff'/%3E%3Cpath d='M7 60 L20 78 L33 60' stroke='%23ffffff' stroke-width='6' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M7 82 L20 100 L33 82' stroke='%23ffffff' stroke-width='6' fill='none' stroke-linecap='round' stroke-linejoin='round' opacity='.5'/%3E%3C/svg%3E") !important;
  }
  @keyframes kbadMoreBounce { 0%,100%{ transform: translateY(0);} 50%{ transform: translateY(8px);} }
  /* バナー内の謎の白背景を一掃（背景色のみ。意図的に色を付ける要素は除外）*/
  section.about-cat.cat09 .kuchi-bad-banner *:not(.kbf-pill):not(.mk):not(.kf-card):not(.kf-num):not(.kf-qbubble):not(.kf-rv-ava):not(.kf-rv-bar) { background-color: transparent !important; }
  /* ===== #32 インフォグラフィック（PC・しかも…の下）===== */
  section.about-cat.cat09 .kuchi-bad-banner .kbad-flow { margin: 30px auto 6px !important; max-width: 1280px !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-flow-head {
    margin: 0 0 26px !important; color: #fff !important; font-weight: 900 !important; font-size: clamp(26px, 3.1vw, 46px) !important; line-height: 1.3 !important;
    text-shadow: 0 0 1px rgba(0,0,0,.5), 0 3px 9px rgba(0,0,0,.45) !important; background: transparent !important;
  }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-flow-head .hl { color: #FFFC00 !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kbad-flow-head .qm { color: #fff !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-steps { display: flex !important; align-items: center !important; justify-content: center !important; margin: 0 0 22px !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-cardimg { flex: 1 1 0 !important; min-width: 0 !important; width: 100% !important; height: auto !important; display: block !important; border-radius: 16px !important; box-shadow: 0 8px 22px rgba(0,0,0,.28) !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-card { background: #fff !important; border-radius: 14px !important; box-shadow: 0 8px 22px rgba(0,0,0,.25) !important; box-sizing: border-box !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-step { flex: 1 1 0 !important; padding: 24px 24px 26px !important; display: flex !important; flex-direction: column !important; text-align: left !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-head { display: flex !important; align-items: center !important; gap: 12px !important; margin: 0 0 16px !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-num { flex: 0 0 auto !important; width: 38px !important; height: 38px !important; border-radius: 50% !important; background: #e60012 !important; color: #fff !important; font-weight: 900 !important; font-size: 23px !important; display: flex !important; align-items: center !important; justify-content: center !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-ttl { color: #1a1a1a !important; font-weight: 800 !important; font-size: clamp(18px, 1.7vw, 27px) !important; line-height: 1.3 !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-cap { margin: auto 0 0 !important; padding-top: 14px !important; color: #8a8a8a !important; font-size: clamp(14px, 1.3vw, 20px) !important; line-height: 1.4 !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-arw { flex: 0 0 auto !important; align-self: center !important; width: 0 !important; height: 0 !important; margin: 0 9px !important; border-top: 16px solid transparent !important; border-bottom: 16px solid transparent !important; border-left: 22px solid #FFFC00 !important; background: transparent !important; }
  /* レビュー */
  section.about-cat.cat09 .kuchi-bad-banner .kf-vis--review { border: 1px solid #eee !important; border-radius: 10px !important; padding: 12px !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-rv-top { display: flex !important; align-items: center !important; gap: 8px !important; margin-bottom: 8px !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-rv-ava { flex: 0 0 auto !important; width: 38px !important; height: 38px !important; border-radius: 50% !important; background: #bdbdbd url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ccircle cx='16' cy='12' r='5.4' fill='%23ffffff'/%3E%3Cpath d='M6.5 27.5 a9.5 8.5 0 0 1 19 0 z' fill='%23ffffff'/%3E%3C/svg%3E") no-repeat center / 100% 100% !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-rv-stars { color: #f5b400 !important; font-size: 23px !important; letter-spacing: 1px !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-rv-em { color: #d8d8d8 !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-rv-txt { color: #333 !important; font-size: clamp(15px,1.4vw,21px) !important; font-weight: 700 !important; line-height: 1.4 !important; margin-bottom: 10px !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-rv-bar { display: block !important; height: 9px !important; border-radius: 4px !important; background: #ededed !important; margin-top: 7px !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-rv-bar2 { width: 70% !important; }
  /* Google */
  section.about-cat.cat09 .kuchi-bad-banner .kf-vis--g { display: flex !important; align-items: center !important; justify-content: center !important; gap: 20px !important; padding: 22px 0 !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-glogo { flex: 0 0 auto !important; width: 68px !important; height: 68px !important; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%234285F4' d='M45.12 24.5c0-1.56-.14-3.06-.4-4.5H24v8.51h11.84c-.51 2.75-2.06 5.08-4.39 6.64v5.52h7.11c4.16-3.83 6.56-9.47 6.56-16.17z'/%3E%3Cpath fill='%2334A853' d='M24 46c5.94 0 10.92-1.97 14.56-5.33l-7.11-5.52c-1.97 1.32-4.49 2.1-7.45 2.1-5.73 0-10.58-3.87-12.31-9.07H4.34v5.7C7.96 41.07 15.4 46 24 46z'/%3E%3Cpath fill='%23FBBC05' d='M11.69 28.18C11.25 26.86 11 25.45 11 24s.25-2.86.69-4.18v-5.7H4.34C2.85 17.09 2 20.45 2 24s.85 6.91 2.34 9.88l7.35-5.7z'/%3E%3Cpath fill='%23EA4335' d='M24 10.75c3.23 0 6.13 1.11 8.41 3.29l6.31-6.31C34.91 4.18 29.93 2 24 2 15.4 2 7.96 6.93 4.34 14.12l7.35 5.7c1.73-5.2 6.58-9.07 12.31-9.07z'/%3E%3C/svg%3E") no-repeat center / contain !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-qbubble { flex: 0 0 auto !important; width: 62px !important; height: 52px !important; border-radius: 12px !important; background: #ededed !important; color: #a2a2a2 !important; font-weight: 900 !important; font-size: 32px !important; display: flex !important; align-items: center !important; justify-content: center !important; }
  /* チャート */
  section.about-cat.cat09 .kuchi-bad-banner .kf-vis--chart { height: 118px !important; margin-top: 6px !important; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 84'%3E%3Crect x='6' y='24' width='16' height='52' rx='2' fill='%239a9a9a'/%3E%3Crect x='28' y='40' width='16' height='36' rx='2' fill='%23a8a8a8'/%3E%3Crect x='50' y='56' width='16' height='20' rx='2' fill='%23b6b6b6'/%3E%3Cpath d='M12 16 Q44 34 74 58' fill='none' stroke='%23808080' stroke-width='2.5' stroke-dasharray='5 5'/%3E%3Cpath d='M74 58 l-9 -1 m9 1 l-1 -9' fill='none' stroke='%23808080' stroke-width='2.5' stroke-linecap='round'/%3E%3Cpath d='M92 44 l6 -10 h24 l6 10 z' fill='%23808080'/%3E%3Crect x='94' y='44' width='32' height='30' fill='none' stroke='%23808080' stroke-width='2.5'/%3E%3Crect x='104' y='56' width='12' height='18' fill='%23808080'/%3E%3C/svg%3E") no-repeat center / contain !important; }
  /* 下段 */
  section.about-cat.cat09 .kuchi-bad-banner .kf-bottom { display: flex !important; align-items: center !important; justify-content: center !important; gap: 10px !important; background: transparent !important; flex-wrap: wrap !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-bury { flex: 0 0 auto !important; width: clamp(340px,37vw,500px) !important; max-width: 100% !important; height: auto !important; display: block !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-concl { flex: 1 1 500px !important; min-width: 0 !important; max-width: 760px !important; min-height: clamp(170px, 18vw, 250px) !important; display: flex !important; align-items: center !important; gap: 26px !important; padding: 34px 42px !important; text-align: left !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-check { flex: 0 0 auto !important; width: clamp(54px,4.6vw,76px) !important; height: clamp(54px,4.6vw,76px) !important; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Ccircle cx='24' cy='24' r='22' fill='%23e60012'/%3E%3Cpath d='M14 25 l7 7 l14 -16' fill='none' stroke='%23ffffff' stroke-width='5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat center / contain !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-concl-txt { color: #1a1a1a !important; font-weight: 800 !important; font-size: clamp(23px,2.4vw,37px) !important; line-height: 1.5 !important; }
  section.about-cat.cat09 .kuchi-bad-banner .kf-concl-txt .mk {
    color: #1a1a1a !important; font-weight: 900 !important;
    background: linear-gradient(transparent 6%, #ffe000 6%, #ffe000 98%, transparent 98%) !important; padding: 0 .08em !important;
  }
  /* ===== #42 解決策バナー（PC：見出し＋本文＋継続増加＋AIロボ＋3カード）===== */
  section.about-cat.cat09 .kuchi-sol-banner + .title-area.title-area04 { display: none !important; }
  section.about-cat.cat09 .kuchi-sol-banner { display: grid !important; grid-template-columns: minmax(0, 1fr) clamp(260px, 30%, 380px) !important; row-gap: 8px !important; column-gap: 30px !important; align-items: center !important; position: relative !important; z-index: 1 !important; width: 100% !important; max-width: 1240px !important; margin: 80px auto 20px !important; box-sizing: border-box !important; overflow-x: clip !important; text-align: left !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-sol-banner *:not(.ksol-card):not(.ksol-ico):not(.ksol-robot):not(.ksol-robot-ai):not(.ksol-phone):not(.ksol-phone-notch):not(.ksol-phone-screen):not(.ks3-body):not(.ks3-num):not(.ks3-ico) { background-color: transparent !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-left { min-width: 0 !important; position: relative !important; z-index: 1 !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-textcol { min-width: 0 !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-arrow { display: none !important; position: absolute !important; top: -10px !important; right: clamp(232px, 27%, 360px) !important; width: clamp(190px, 23vw, 330px) !important; height: auto !important; z-index: 0 !important; pointer-events: none !important; background: none !important; }
  /* スマホモック（右カラム・9:16の中身を入れる）*/
  section.about-cat.cat09 .kuchi-sol-banner .ksol-right { min-width: 0 !important; width: 100% !important; overflow: hidden !important; position: relative !important; display: flex !important; align-items: center !important; justify-content: center !important; margin-top: 0 !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-right::before { content: "" !important; position: absolute !important; left: 50% !important; top: 50% !important; transform: translate(-50%,-50%) !important; width: 105% !important; height: auto !important; aspect-ratio: 1 / 1 !important; background: #ffffff !important; border-radius: 50% !important; z-index: 0 !important; pointer-events: none !important; box-shadow: 0 14px 40px rgba(0,0,0,.18) !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-phone { position: relative !important; z-index: 1 !important; width: clamp(240px, 30vw, 348px) !important; max-width: 100% !important; background: #0c0c0c !important; border-radius: 40px !important; padding: 12px !important; box-shadow: 0 22px 50px rgba(0,0,0,.5) !important; box-sizing: border-box !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-notch { position: absolute !important; top: 12px !important; left: 50% !important; transform: translateX(-50%) !important; width: 40% !important; height: 24px !important; background: #0c0c0c !important; border-radius: 0 0 16px 16px !important; z-index: 3 !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-screen { position: relative !important; aspect-ratio: 9 / 16 !important; background: linear-gradient(160deg, #f4f4f4, #e6e6e6) !important; border-radius: 30px !important; overflow: hidden !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-screen > img, section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-screen > video { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-head { margin: 16px 0 24px !important; color: #fff !important; font-weight: 900 !important; font-size: clamp(34px, 4.7vw, 74px) !important; line-height: 1.3 !important; white-space: normal !important; overflow-wrap: anywhere !important; word-break: normal !important; letter-spacing: -.01em !important; text-align: center !important; text-shadow: 0 0 1px rgba(0,0,0,.5), 0 3px 9px rgba(0,0,0,.45) !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-head .hl { color: #FFC400 !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-head .ksol-l2 { display: inline-block !important; font-size: 1.42em !important; line-height: 1.05 !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-head .ksol-u { color: #fff !important; text-decoration: underline !important; text-decoration-color: #FFC400 !important; text-underline-offset: 7px !important; text-decoration-thickness: 5px !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-head .ksol-sparkle { display: inline-block !important; width: clamp(22px, 2.4vw, 40px) !important; height: clamp(22px, 2.4vw, 40px) !important; margin-left: 8px !important; vertical-align: 0.55em !important; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'%3E%3Cpath d='M20 0 C21 13 27 19 40 20 C27 21 21 27 20 40 C19 27 13 21 0 20 C13 19 19 13 20 0 Z' fill='%23ffffff'/%3E%3C/svg%3E") center / contain no-repeat !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-body { margin: 0 0 16px !important; color: #fff !important; font-weight: 600 !important; font-size: clamp(17px, 1.75vw, 27px) !important; line-height: 1.6 !important; text-shadow: 0 1px 4px rgba(0,0,0,.4) !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-lead { margin: 0 !important; color: #fff !important; font-weight: 900 !important; font-size: clamp(19px, 2.1vw, 33px) !important; line-height: 1.3 !important; text-shadow: 0 0 1px rgba(0,0,0,.5), 0 2px 8px rgba(0,0,0,.45) !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-lead .hl { color: #FFC400 !important; }
  /* AIロボ */
  section.about-cat.cat09 .kuchi-sol-banner .ksol-robot { position: absolute !important; right: clamp(180px, 18%, 246px) !important; bottom: 6% !important; top: auto !important; transform: none !important; width: clamp(104px, 11vw, 158px) !important; height: auto !important; display: none !important; background: none !important; box-shadow: none !important; border-radius: 0 !important; z-index: 2 !important; }
  /* 3カード */
  section.about-cat.cat09 .kuchi-sol-banner .ksol-cards { display: flex !important; gap: 14px !important; margin: 24px 0 0 !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-card { flex: 1 1 0 !important; min-width: 0 !important; background: #fff !important; border-radius: 12px !important; padding: 20px 16px 22px !important; text-align: center !important; box-shadow: 0 6px 18px rgba(0,0,0,.22) !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-ico { display: block !important; width: clamp(50px,4.8vw,66px) !important; height: clamp(50px,4.8vw,66px) !important; margin: 0 auto 12px !important; border-radius: 50% !important; background-color: #fde7ee !important; background-repeat: no-repeat !important; background-position: center !important; background-size: 52% !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-ico--pen { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23d83b5e'%3E%3Cpath d='M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04a1 1 0 0 0 0-1.41l-2.34-2.34a1 1 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-ico--talk { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23d83b5e'%3E%3Cpath d='M20 2H4a2 2 0 0 0-2 2v18l4-4h14a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-ico--chart { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='%23d83b5e'%3E%3Crect x='3' y='13' width='4' height='8' rx='1'/%3E%3Crect x='10' y='9' width='4' height='12' rx='1'/%3E%3Crect x='17' y='4' width='4' height='17' rx='1'/%3E%3C/g%3E%3Cpath d='M3 10 L10 6 L17 2.5' stroke='%23d83b5e' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-ttl { color: #e0344f !important; font-weight: 900 !important; font-size: clamp(16px,1.6vw,24px) !important; margin: 0 0 6px !important; }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-desc { margin: 0 !important; color: #777 !important; font-weight: 500 !important; font-size: clamp(12px,1.15vw,16px) !important; line-height: 1.45 !important; }
  /* ===== #46 3ステップ青バナー（PC）===== */
  section.about-cat.cat09 .kuchi-step3 { display: block !important; width: 100% !important; max-width: 100% !important; margin: 22px 0 0 !important; padding: 0 !important; box-sizing: border-box !important; position: relative !important; z-index: 1 !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-step3 *:not(.ks3-body):not(.ks3-num):not(.ks3-ico) { background-color: transparent !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-intro { margin: 0 0 20px !important; color: #fff !important; font-weight: 800 !important; font-size: clamp(17px, 1.9vw, 28px) !important; line-height: 1.55 !important; text-align: center !important; text-shadow: 0 1px 4px rgba(0,0,0,.4) !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-intro .ks3-em { color: #FFFC00 !important; font-weight: 900 !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-head { display: block !important; margin: 0 auto !important; width: -moz-fit-content !important; width: fit-content !important; max-width: 92% !important; background: linear-gradient(90deg, #173da0, #2a6fd8) !important; color: #fff !important; font-weight: 900 !important; font-size: clamp(17px, 1.95vw, 28px) !important; text-align: center !important; padding: 12px 34px !important; border-radius: 999px !important; box-shadow: 0 6px 16px rgba(0,0,0,.28) !important; position: relative !important; z-index: 2 !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-head .ks3-big { color: #ffd400 !important; font-size: 1.4em !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-body { display: flex !important; align-items: stretch !important; justify-content: center !important; background: #fff !important; border: 3px solid #2a6fd8 !important; border-radius: 18px !important; padding: 34px 16px 28px !important; margin-top: -18px !important; box-shadow: 0 10px 26px rgba(0,0,0,.2) !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-step { flex: 1 1 0 !important; min-width: 0 !important; display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; padding: 6px 6px 0 !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-top { display: flex !important; align-items: center !important; justify-content: center !important; gap: 12px !important; margin-bottom: 12px !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-num { flex: 0 0 auto !important; width: 42px !important; height: 42px !important; border-radius: 50% !important; background: #173da0 !important; color: #fff !important; font-weight: 900 !important; font-size: 24px !important; display: flex !important; align-items: center !important; justify-content: center !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-ico { flex: 0 0 auto !important; width: 58px !important; height: 58px !important; border-radius: 50% !important; background-color: #e9f1fc !important; background-repeat: no-repeat !important; background-position: center !important; background-size: 52% !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-ico--pen { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23173da0'%3E%3Cpath d='M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04a1 1 0 0 0 0-1.41l-2.34-2.34a1 1 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-ico--dots { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23173da0' d='M20 2H4a2 2 0 0 0-2 2v18l4-4h14a2 2 0 0 0 2-2V4a2 2 0 0 0-2-2z'/%3E%3Cg fill='%23ffffff'%3E%3Ccircle cx='8' cy='9.5' r='1.6'/%3E%3Ccircle cx='12' cy='9.5' r='1.6'/%3E%3Ccircle cx='16' cy='9.5' r='1.6'/%3E%3C/g%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-ico--robot { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='3' r='1.5' fill='%23173da0'/%3E%3Crect x='11.2' y='4' width='1.6' height='3' fill='%23173da0'/%3E%3Crect x='5' y='7' width='14' height='12' rx='3.5' fill='%23173da0'/%3E%3Ccircle cx='9.5' cy='12' r='1.7' fill='%23ffffff'/%3E%3Ccircle cx='14.5' cy='12' r='1.7' fill='%23ffffff'/%3E%3Crect x='9' y='15.5' width='6' height='1.6' rx='.8' fill='%23ffffff'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-ttl { color: #173da0 !important; font-weight: 900 !important; font-size: clamp(17px, 1.85vw, 27px) !important; margin: 0 0 8px !important; letter-spacing: -.01em !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-desc { margin: 0 !important; color: #444 !important; font-weight: 600 !important; font-size: clamp(13px, 1.45vw, 20px) !important; line-height: 1.55 !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-arw { flex: 0 0 auto !important; align-self: center !important; width: 0 !important; height: 0 !important; border-top: 12px solid transparent !important; border-bottom: 12px solid transparent !important; border-left: 16px solid #2a6fd8 !important; margin: 0 4px !important; }
  section.about-cat.cat09 .kuchi-step3 .ks3-sp-imgs { display: none !important; }
  /* 「売れるGoogleマップ対策の仕組み」画像をPCで拡大 */
  section.about-cat.cat09 .cntbox.box03 .cnt-img,
  section.about-cat.cat09 .cntbox.box07 .cnt-img { width: 75% !important; max-width: 880px !important; margin-left: auto !important; margin-right: auto !important; }
  /* 上バナー（box03）の上下余白を詰める＋サイズを縮小（大きすぎ対策／box07は据え置き） */
  section.about-cat.cat09 .cntbox.box03 .cnt-img { margin-top: 0 !important; margin-bottom: 0 !important; max-width: 680px !important; }
  section.about-cat.cat09 .cntbox.box03 { padding-bottom: 0 !important; }
  section.about-cat.cat09 .cntarea.cntarea03 .cntarea-inner { padding-top: 6px !important; }
  /* ===== #55 「質の高い口コミを収集」セクション（PC）===== */
  section.about-cat.cat09 .kuchi-collect + .title-area.title-area05 { display: none !important; }
  section.about-cat.cat09 .kuchi-collect { display: block !important; max-width: 1240px !important; margin: 120px auto 24px !important; box-sizing: border-box !important; position: relative !important; z-index: 1 !important; text-align: center !important; background: transparent !important; }
  section.about-cat.cat09 .kuchi-collect *:not(.kc-badge):not(.kc-card):not(.kc-ico):not(.kc-bottom):not(.kc-bico) { background-color: transparent !important; }
  section.about-cat.cat09 .kuchi-collect .kc-badge { display: inline-block !important; margin: 0 auto 22px !important; background: #fff !important; color: #d70c18 !important; font-weight: 900 !important; font-size: clamp(20px, 2.2vw, 34px) !important; line-height: 1.45 !important; text-align: center !important; padding: 16px 36px !important; border-radius: 26px !important; box-shadow: 0 5px 14px rgba(0,0,0,.25) !important; }
  section.about-cat.cat09 .kuchi-collect .kc-badge .kc-bar { color: #eba5a9 !important; margin: 0 .35em !important; font-weight: 500 !important; }
  section.about-cat.cat09 .kuchi-collect .kc-head { margin: 0 0 20px !important; color: #fff !important; font-weight: 900 !important; font-size: clamp(32px, 4.5vw, 72px) !important; line-height: 1.24 !important; text-shadow: 0 2px 10px rgba(0,0,0,.4) !important; letter-spacing: -.01em !important; }
  section.about-cat.cat09 .kuchi-collect .kc-head .kc-u { text-decoration: underline !important; text-decoration-color: #FFD400 !important; text-underline-offset: 6px !important; text-decoration-thickness: 5px !important; }
  section.about-cat.cat09 .kuchi-collect .kc-head .hl { color: #FFFC00 !important; }
  section.about-cat.cat09 .kuchi-collect .kc-head .kc-spark { display: inline-block !important; width: clamp(28px, 3vw, 52px) !important; height: clamp(28px, 3vw, 52px) !important; margin-left: 10px !important; vertical-align: 0.5em !important; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Cpath d='M40 50 L52 30 L46 32 L44 18 L58 26 L54 30 L62 14' fill='none' stroke='%23FFD400' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M18 16 C19 25 23 29 32 30 C23 31 19 35 18 44 C17 35 13 31 4 30 C13 29 17 25 18 16 Z' fill='%23ffffff'/%3E%3C/svg%3E") center / contain no-repeat !important; }
  section.about-cat.cat09 .kuchi-collect .kc-sub { margin: 0 0 32px !important; color: #fff !important; font-weight: 700 !important; font-size: clamp(17px, 1.7vw, 27px) !important; text-shadow: 0 1px 4px rgba(0,0,0,.35) !important; }
  /* 3カード */
  section.about-cat.cat09 .kuchi-collect .kc-cards { display: flex !important; gap: 20px !important; margin: 0 0 24px !important; }
  section.about-cat.cat09 .kuchi-collect .kc-card { flex: 1 1 0 !important; min-width: 0 !important; background: #fff !important; border-radius: 16px !important; padding: 28px 22px !important; display: flex !important; align-items: center !important; gap: 18px !important; text-align: left !important; box-shadow: 0 6px 18px rgba(0,0,0,.2) !important; }
  section.about-cat.cat09 .kuchi-collect .kc-ico { flex: 0 0 auto !important; width: clamp(60px, 5.4vw, 84px) !important; height: clamp(60px, 5.4vw, 84px) !important; border-radius: 50% !important; background-color: #fde7ea !important; background-repeat: no-repeat !important; background-position: center !important; background-size: 50% !important; }
  section.about-cat.cat09 .kuchi-collect .kc-ico--pen { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23d70c18'%3E%3Cpath d='M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04a1 1 0 0 0 0-1.41l-2.34-2.34a1 1 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-collect .kc-ico--gift { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23d70c18'%3E%3Cpath d='M20 6h-2.18c.11-.31.18-.65.18-1a3 3 0 0 0-5.5-1.65l-.5.67-.5-.68A3 3 0 0 0 6 5c0 .35.07.69.18 1H4c-1.11 0-1.99.89-1.99 2L2 19c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V8c0-1.11-.89-2-2-2zm-5-2c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zM9 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm3 15H4v-7h8v7zm8 0h-8v-7h8v7z'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-collect .kc-ico--chart { background-size: 56% !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='%23d70c18' stroke-width='2.1' stroke-linecap='round'%3E%3Cpath d='M19.4 10.6a7.5 7.5 0 0 0-12.9-4'/%3E%3Cpath d='M4.6 13.4a7.5 7.5 0 0 0 12.9 4'/%3E%3C/g%3E%3Cpath d='M6.7 2.2 4.3 6.4l4.6.3z' fill='%23d70c18'/%3E%3Cpath d='M17.3 21.8l2.4-4.2-4.6-.3z' fill='%23d70c18'/%3E%3Cg fill='%23d70c18'%3E%3Ccircle cx='9' cy='12' r='1.15'/%3E%3Ccircle cx='12' cy='12' r='1.15'/%3E%3Ccircle cx='15' cy='12' r='1.15'/%3E%3C/g%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-collect .kc-ctxt { min-width: 0 !important; }
  section.about-cat.cat09 .kuchi-collect .kc-ttl { color: #d70c18 !important; font-weight: 900 !important; font-size: clamp(21px, 2.15vw, 32px) !important; display: inline-block !important; border-bottom: 6px solid #FFD400 !important; padding-bottom: 2px !important; margin-bottom: 8px !important; line-height: 1.2 !important; }
  section.about-cat.cat09 .kuchi-collect .kc-desc { margin: 0 !important; color: #555 !important; font-weight: 500 !important; font-size: clamp(14px, 1.43vw, 21px) !important; line-height: 1.5 !important; }
  /* 下部バー */
  section.about-cat.cat09 .kuchi-collect .kc-bottom { display: flex !important; align-items: center !important; justify-content: center !important; gap: 28px !important; background: #fff !important; border-radius: 18px !important; padding: 32px 40px !important; box-shadow: 0 6px 18px rgba(0,0,0,.2) !important; }
  section.about-cat.cat09 .kuchi-collect .kc-bico { flex: 0 0 auto !important; width: clamp(66px, 5.6vw, 94px) !important; height: clamp(66px, 5.6vw, 94px) !important; border-radius: 50% !important; background-color: #d70c18 !important; background-repeat: no-repeat !important; background-position: center !important; background-size: 52% !important; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.6' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6'/%3E%3Cline x1='15' y1='15' x2='20.5' y2='20.5'/%3E%3C/svg%3E") !important; }
  section.about-cat.cat09 .kuchi-collect .kc-btxt { text-align: left !important; min-width: 0 !important; }
  section.about-cat.cat09 .kuchi-collect .kc-bttl { color: #d70c18 !important; font-weight: 900 !important; font-size: clamp(31px, 3.6vw, 58px) !important; display: inline-block !important; border-bottom: 9px solid #FFD400 !important; padding-bottom: 3px !important; line-height: 1.2 !important; }
  section.about-cat.cat09 .kuchi-collect .kc-bdesc { margin: 8px 0 0 !important; color: #333 !important; font-weight: 600 !important; font-size: clamp(19px, 1.92vw, 29px) !important; line-height: 1.45 !important; }
}

/* ---------- 14k. 「口コミロボとは」4アイコン特徴行（スマホのみ表示）---------- */
.kuchi-features { display: none; }
@media screen and (max-width: 767px) {
  .feature .cnt01 .text-area .kuchi-features {
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    column-gap: 14px;
    row-gap: 22px;
    width: 100%;
    margin: 24px 0 26px;
    box-sizing: border-box;
  }
  .kuchi-features .kf-item {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
  .kuchi-features .kf-ico {
    width: clamp(50px, 14vw, 64px);
    height: clamp(50px, 14vw, 64px);
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .kuchi-features .kf-ico svg { width: 100%; height: 100%; display: block; }
  .kuchi-features .kf-label {
    margin-top: 10px;
    font-size: clamp(13.2px, 3.74vw, 16.5px);
    line-height: 1.4;
    font-weight: 700;
    color: #ffffff;
    letter-spacing: -0.01em;
  }
}

/* ---------- 16. ブロック折返し抑制／改行調整 ---------- */
@media screen and (max-width: 359px) {
  /* 狭幅端末（iPhone SE 1st 等） */
  .maintxt-02, .maintxt-01 { font-size: 22px !important; }
  .nav-btnarea .btn { font-size: 15.4px !important; }
  .header--logo img { height: 24px !important; }
}

/* ---------- 17. リンク・ボタンのタップ領域 ---------- */
@media (pointer: coarse) {
  a, button, .btn, [role="button"] {
    min-height: 44px;
  }
}

/* ---------- 18. アニメ初期状態のスクロール抑制（横スクロール対策） ---------- */
.mask-ani, .mask-ani-inner { max-width: 100%; }

/* ---------- 19. 印刷／高解像度補正 ---------- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}

/* ===== cat08「検索ユーザーを自店舗への来店につなげる」：スマホでSTEPフロー画像を左右左で表示 ===== */
section.about-cat.cat08 .cat08-sp-flow { display: none; }
@media screen and (max-width: 767px) {
  section.about-cat.cat08 .cat08-sp-flow { display: flex !important; flex-direction: column !important; gap: 9px !important; margin: 8px 0 4px !important; width: 100% !important; }
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-step { display: block !important; width: 88% !important; max-width: 430px !important; height: auto !important; aspect-ratio: 1619 / 971 !important; }
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-step:nth-child(1) { align-self: flex-start !important; }
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-step:nth-child(2) { align-self: flex-end !important; }
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-step:nth-child(3) { align-self: flex-start !important; }
  /* 流れを仕組み化バナー（吹き出しの下・全幅中央）＋ スマホでは動画を非表示にして置換 */
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-summary { display: block !important; align-self: center !important; width: 100% !important; max-width: 470px !important; height: auto !important; aspect-ratio: 2022 / 778 !important; margin-top: 2px !important; }
  /* 最後の吹き出しの下：下向き矢印で「この流れを仕組み化」へ注目を誘導（バウンス） */
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-arrow { align-self: center !important; display: flex !important; justify-content: center !important; margin: 1px 0 0 !important; animation: cat08ArrowBounce 1.1s ease-in-out infinite !important; }
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-arrow i { display: block !important; width: 22px !important; height: 22px !important; border-right: 6px solid #FFD400 !important; border-bottom: 6px solid #FFD400 !important; border-radius: 3px !important; transform: rotate(45deg) !important; box-shadow: 3px 3px 0 rgba(0,0,0,.25) !important; }
  /* スクロールでポップイン（吹き出しが出てくる） */
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-step,
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-summary { opacity: 0 !important; transition: opacity .5s ease, transform .55s cubic-bezier(.2,.8,.2,1) !important; }
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-step:nth-child(1) { transform: translate(-28px, 16px) scale(.95) !important; }
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-step:nth-child(2) { transform: translate(28px, 16px) scale(.95) !important; }
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-step:nth-child(3) { transform: translate(-28px, 16px) scale(.95) !important; }
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-summary { transform: translateY(20px) scale(.96) !important; }
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-step.is-revealed,
  section.about-cat.cat08 .cat08-sp-flow .cat08-sp-summary.is-revealed { opacity: 1 !important; transform: none !important; }
  section.about-cat.cat08 .cnt-img { display: none !important; }
}
@keyframes cat08ArrowBounce { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(8px); } }

/* =========================================================
   最新ノウハウ①：5パネルをHTML/CSSで再構築（nh1b-*）
   v3: rem→px全変換（rootが9.45px環境対応）, scene比率調整
   配色: 黒地 / 黄#FFD400 / 赤#d70c18 / カード#16161a
   ========================================================= */
section.about-cat.cat10 .nh1b-panels {
  --nh1b-yellow: #FFFC00;
  --nh1b-yellow-bright: #FFFC00;
  --nh1b-red: #d70c18;
  --nh1b-card: #16161a;
  --nh1b-card-2: #1d1d22;
  --nh1b-line: rgba(255,255,255,.10);
  --nh1b-line-y: rgba(255,212,0,.32);
  --nh1b-ink: #f5f5f5;
  --nh1b-muted: #b9b9c0;
  display: flex !important;
  flex-direction: column !important;
  gap: clamp(32px, 4vw, 64px) !important;
  width: 100% !important;
  max-width: 1560px !important;
  margin: 0 auto !important;
  font-family: "Noto Sans JP", sans-serif !important;
  color: var(--nh1b-ink) !important;
  -webkit-font-smoothing: antialiased;
}
/* 最新ノウハウ①のコンテナだけ広げる（②=テキスト主体は対象外）。
   #index .about-cat-main-inner{max-width:1400} をIDセレクタで上書きするため #index を付与 */
#index section.about-cat.cat10.cat10-nh1b .about-cat-main-inner {
  max-width: 1640px !important;
}
section.about-cat.cat10 .nh1b-panel {
  position: relative;
  background:
    radial-gradient(130% 130% at 100% 0%, rgba(255,212,0,.07) 0%, rgba(255,212,0,0) 44%),
    linear-gradient(180deg, #0c0c0e 0%, #050506 100%);
  border: 1px solid var(--nh1b-line);
  border-radius: clamp(14px, 1.4vw, 24px);
  padding: clamp(32px, 3.2vw, 52px) clamp(28px, 3vw, 48px);
  overflow: hidden;
  box-shadow: 0 28px 70px -30px rgba(0,0,0,.9), inset 0 1px 0 rgba(255,255,255,.04);
}
/* faint dotted radar texture */
section.about-cat.cat10 .nh1b-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255,212,0,.08) 1px, transparent 1.4px);
  background-size: 28px 28px;
  opacity: .35;
  pointer-events: none;
  -webkit-mask-image: radial-gradient(110% 90% at 85% 12%, #000 0%, transparent 60%);
  mask-image: radial-gradient(110% 90% at 85% 12%, #000 0%, transparent 60%);
}
section.about-cat.cat10 .nh1b-panel > * { position: relative; z-index: 1; }

/* ---------- shared: tags / badges ---------- */
section.about-cat.cat10 .nh1b-tag {
  display: inline-flex; align-items: center; gap: 4px;
  font-weight: 800;
  font-size: clamp(14px, 1.1vw, 19px);
  line-height: 1; letter-spacing: .02em;
  padding: 9px 18px; border-radius: 7px;
  margin: 0 0 clamp(12px, 1.4vw, 20px);
}
section.about-cat.cat10 .nh1b-tag-red  { background: var(--nh1b-red);    color: #fff; box-shadow: 0 6px 18px -8px rgba(215,12,24,.9); }
section.about-cat.cat10 .nh1b-tag-amber{ background: var(--nh1b-yellow); color: #111; box-shadow: 0 6px 18px -8px rgba(255,212,0,.7); }
section.about-cat.cat10 .nh1b-tag-num  { font-size: 1.08em; }

/* ---------- shared: headings ---------- */
section.about-cat.cat10 .nh1b-h1 {
  font-weight: 900;
  font-size: clamp(32px, 4vw, 70px);
  line-height: 1.14; letter-spacing: -.03em;
  margin: 0 0 clamp(16px, 2vw, 26px); color: #fff;
}
section.about-cat.cat10 .nh1b-h2 {
  font-weight: 900;
  font-size: clamp(28px, 3.6vw, 64px);
  line-height: 1.16; letter-spacing: -.02em;
  margin: 0 0 12px; color: #fff;
}
section.about-cat.cat10 .nh1b-h2-center { text-align: center; }
section.about-cat.cat10 .nh1b-hl {
  position: relative; display: inline-block; color: var(--nh1b-yellow);
  text-shadow: 0 2px 18px rgba(255,212,0,.32);
}
section.about-cat.cat10 .nh1b-hl::after {
  content: ""; position: absolute; left: -.06em; right: -.06em; bottom: .04em; height: .26em;
  background: linear-gradient(90deg, rgba(255,212,0,0), rgba(255,212,0,.48) 18%, rgba(255,212,0,.48) 82%, rgba(255,212,0,0));
  border-radius: 2px; z-index: -1;
}
section.about-cat.cat10 .nh1b-sub {
  font-weight: 600; color: var(--nh1b-muted);
  font-size: clamp(16px, 1.8vw, 28px); line-height: 1.65; margin: 0;
}
section.about-cat.cat10 .nh1b-sub-center { text-align: center; }
section.about-cat.cat10 .nh1b-dash { color: var(--nh1b-yellow); margin-right: 5px; }
section.about-cat.cat10 .nh1b-em   { color: var(--nh1b-yellow); font-weight: 800; }

/* ---------- shared: scene images ---------- */
section.about-cat.cat10 .nh1b-scene { display: block; width: 100%; height: auto; }

/* ====================== Panel 1: hero ====================== */
section.about-cat.cat10 .nh1b-p1 {
  display: grid; grid-template-columns: 1.85fr 1fr; align-items: center;
  gap: clamp(20px, 2.4vw, 40px);
}
section.about-cat.cat10 .nh1b-stat { margin: 0 0 clamp(14px, 1.8vw, 22px); }
section.about-cat.cat10 .nh1b-stat-label {
  display: inline-block; font-weight: 800; color: #fff; margin: 0 0 3px;
  font-size: clamp(16px, 1.7vw, 23px);
  border-bottom: 3px solid var(--nh1b-yellow); padding-bottom: 2px;
}
section.about-cat.cat10 .nh1b-stat-big { margin: 0; line-height: .9; white-space: nowrap; }
section.about-cat.cat10 .nh1b-stat-pre  { font-weight: 800; font-size: clamp(20px, 2.5vw, 40px); color: #fff; margin-right: 4px; }
section.about-cat.cat10 .nh1b-stat-num  {
  font-weight: 900; color: var(--nh1b-yellow);
  font-size: clamp(74px, 9.5vw, 166px); letter-spacing: -.04em;
  text-shadow: 0 8px 36px rgba(255,212,0,.4);
}
section.about-cat.cat10 .nh1b-stat-unit { font-weight: 900; color: var(--nh1b-yellow); font-size: clamp(42px, 5.2vw, 88px); }
section.about-cat.cat10 .nh1b-stat-suf  { font-weight: 800; color: #fff; font-size: clamp(20px, 2.6vw, 42px); margin-left: 5px; }
section.about-cat.cat10 .nh1b-inbound {
  display: inline-flex; align-items: center; gap: 7px;
  font-weight: 700; color: #fff; margin: 0 0 clamp(18px, 2.4vw, 28px);
  font-size: clamp(15px, 1.45vw, 21px);
}
section.about-cat.cat10 .nh1b-inbound-ico {
  display: inline-grid; place-items: center; width: 1.6em; height: 1.6em;
  background: var(--nh1b-yellow); color: #111; border-radius: 50%; font-weight: 900; font-size: .82em;
}
/* ヒーロー：黄色アクセント(新規来店が伸びる！・280・%)のみ蛍光黄色(ロゴ色#FFFC00)。それ以外は白(モック準拠)。下線/グロー除去 */
section.about-cat.cat10 .nh1b-p1 .nh1b-hl,
section.about-cat.cat10 .nh1b-p1 .nh1b-stat-num,
section.about-cat.cat10 .nh1b-p1 .nh1b-stat-unit {
  color: #FFFC00 !important;
  text-shadow: none !important;
}
section.about-cat.cat10 .nh1b-p1 .nh1b-stat-label { border-bottom: none !important; padding-bottom: 0 !important; }
section.about-cat.cat10 .nh1b-p1 .nh1b-hl::after { display: none !important; }

/* mini cards row */
section.about-cat.cat10 .nh1b-minicards {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(8px, 1.2vw, 16px);
}
section.about-cat.cat10 .nh1b-minicard {
  display: flex; flex-direction: column; align-items: center; gap: 9px; text-align: center;
  background: var(--nh1b-card); border: 1px solid var(--nh1b-line); border-radius: 14px;
  padding: clamp(12px, 1.8vw, 20px) 8px;
  font-weight: 700; font-size: clamp(12px, 1.1vw, 16px); color: var(--nh1b-ink);
  transition: transform .25s ease, border-color .25s ease, background .25s ease;
}
section.about-cat.cat10 .nh1b-minicard:hover { transform: translateY(-4px); border-color: var(--nh1b-line-y); background: var(--nh1b-card-2); }
section.about-cat.cat10 .nh1b-mini-ico { width: clamp(34px, 3.2vw, 50px); height: auto; }
/* ヒーローの3カード：PC時に文字・アイコンを大きく */
@media screen and (min-width: 769px) {
  section.about-cat.cat10 .nh1b-p1 .nh1b-minicard { font-size: clamp(15px, 1.45vw, 20px) !important; gap: 12px !important; padding-left: 5px !important; padding-right: 5px !important; letter-spacing: -.02em !important; }
  section.about-cat.cat10 .nh1b-p1 .nh1b-mini-ico { width: clamp(46px, 3.7vw, 58px) !important; }
}
/* ヒーロー下：黄色ダブルシェブロンのスクロール誘導 */
section.about-cat.cat10 .nh1b-scroll-cue {
  display: flex; justify-content: center; align-items: center;
  margin: clamp(-10px, -0.6vw, -2px) auto clamp(0px, 0.3vw, 6px);
  animation: nh1bCueBounce 1.5s ease-in-out infinite;
}
section.about-cat.cat10 .nh1b-scroll-cue svg {
  width: clamp(42px, 4.6vw, 72px); height: auto;
  filter: drop-shadow(0 3px 10px rgba(255,252,0,.25));
}
@keyframes nh1bCueBounce { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(10px); } }
@media (prefers-reduced-motion: reduce) { section.about-cat.cat10 .nh1b-scroll-cue { animation: none; } }
/* hero phone — right column, ~32% of total panel */
section.about-cat.cat10 .nh1b-p1-right { display: flex; justify-content: center; align-items: center; }
section.about-cat.cat10 .nh1b-scene-hero {
  width: 100%;
  max-width: min(100%, 375px);
  filter: drop-shadow(0 36px 56px rgba(0,0,0,.7));
}

/* ====================== Panel 2: issues ====================== */
section.about-cat.cat10 .nh1b-p2-head {
  display: grid; grid-template-columns: 1fr auto; align-items: center;
  gap: clamp(18px, 2.6vw, 36px); margin-bottom: clamp(22px, 2.6vw, 36px);
}
section.about-cat.cat10 .nh1b-scene-buried {
  width: clamp(260px, 34vw, 520px); border-radius: 14px;
  filter: drop-shadow(0 18px 34px rgba(0,0,0,.6));
}
section.about-cat.cat10 .nh1b-issues {
  list-style: none; margin: 0 0 clamp(22px, 2.6vw, 36px); padding: 0;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(12px, 1.6vw, 22px);
}
section.about-cat.cat10 .nh1b-issue {
  position: relative; background: var(--nh1b-card); border: 1px solid var(--nh1b-line);
  border-radius: 16px; padding: clamp(20px, 2.2vw, 28px) clamp(16px, 1.8vw, 22px) clamp(18px, 2vw, 26px);
  display: flex; flex-direction: column; align-items: center; text-align: center;
  transition: transform .25s ease, border-color .25s ease;
}
section.about-cat.cat10 .nh1b-issue:hover { transform: translateY(-4px); border-color: var(--nh1b-line-y); }
section.about-cat.cat10 .nh1b-issue-body { display: flex; flex-direction: column; align-items: center; width: 100%; }
section.about-cat.cat10 .nh1b-issue-no {
  position: absolute; top: -18px; left: 50%; transform: translateX(-50%);
  display: inline-grid; place-items: center; width: 38px; height: 38px;
  background: var(--nh1b-yellow); color: #111; border-radius: 50%;
  font-weight: 900; font-size: clamp(16px, 1.7vw, 25px); box-shadow: 0 6px 16px -6px rgba(255,212,0,.8);
}
section.about-cat.cat10 .nh1b-issue-ttl {
  margin: 18px 0 12px; font-weight: 800; color: #fff;
  font-size: clamp(19px, 2.2vw, 31px);
}
section.about-cat.cat10 .nh1b-issue-fig {
  width: 100%; aspect-ratio: 16/10; border-radius: 12px; overflow: hidden;
  background: #0a0a0b; border: 1px solid var(--nh1b-line); margin-bottom: 12px;
}
section.about-cat.cat10 .nh1b-issue-fig img { width: 100%; height: 100%; object-fit: cover; display: block; }
section.about-cat.cat10 .nh1b-issue-txt { margin: 0; color: var(--nh1b-muted); font-weight: 600; font-size: clamp(14px, 1.4vw, 19px); line-height: 1.55; }
/* Panel2 見出しはモック準拠で特大に */
section.about-cat.cat10 .nh1b-p2-head .nh1b-h2 { font-size: clamp(32px, 4.3vw, 74px) !important; line-height: 1.14 !important; }

/* ---------- shared: bottom ribbon ---------- */
section.about-cat.cat10 .nh1b-ribbon {
  display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px;
  text-align: center; margin: 0;
  background: linear-gradient(180deg, #fff 0%, #f4f4f4 100%);
  color: #111; font-weight: 900;
  font-size: clamp(20px, 2.7vw, 42px);
  padding: clamp(16px, 2vw, 24px) clamp(20px, 2.6vw, 36px);
  border-radius: 14px;
  border: 2px solid var(--nh1b-yellow);
  box-shadow: 0 14px 34px -18px rgba(255,212,0,.55);
}
section.about-cat.cat10 .nh1b-ribbon-ico {
  display: inline-grid; place-items: center; width: 1.6em; height: 1.6em;
  background: var(--nh1b-red); color: #fff; border-radius: 50%; font-weight: 900; font-size: .88em;
}
section.about-cat.cat10 .nh1b-ribbon-hl     { color: var(--nh1b-red); }
section.about-cat.cat10 .nh1b-ribbon-ico-chart { background: transparent; font-size: 1.15em; }

/* ====================== Panel 3b v4: 導入による改善効果（等高2ボックス） ====================== */
section.about-cat.cat10 .nh1b-p3b { text-align: left; }

/* ---- パネルヘッダー（全幅・左寄せ） ---- */
section.about-cat.cat10 .nh1b-p3b-hdr {
  display: flex; flex-direction: column; align-items: flex-start;
  margin-bottom: clamp(16px, 2vw, 30px);
}
section.about-cat.cat10 .nh1b-p3b-h2 {
  font-size: clamp(32px, 3.7vw, 65px) !important;
  line-height: 1.15 !important;
  letter-spacing: -.03em;
  margin: 0 0 clamp(8px, 1vw, 14px) !important;
  text-align: left;
}
section.about-cat.cat10 .nh1b-p3b-hl {
  display: inline-block; color: var(--nh1b-yellow); font-weight: 900;
  text-shadow: 0 3px 22px rgba(255,252,0,.35);
}
section.about-cat.cat10 .nh1b-p3b-sub {
  font-size: clamp(16px, 1.9vw, 28px);
  color: var(--nh1b-muted); font-weight: 600; margin: 0;
  text-align: left;
}

/* ---- メイングリッド：左(ヘッダー+導入前box) | 矢印 | 右(導入後画像・縦中央でまたぐ) ---- */
section.about-cat.cat10 .nh1b-p3b-main {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) auto minmax(0, 1fr);
  align-items: center;
  gap: clamp(8px, 1vw, 16px);
  margin-bottom: clamp(24px, 2.8vw, 44px);
}

/* 左カラム：ヘッダー＋導入前boxを縦積み（高さは中身なり＝導入後画像がこの中央をまたぐ） */
section.about-cat.cat10 .nh1b-p3b-left {
  display: flex; flex-direction: column;
  justify-content: flex-start;
}

/* 導入前ボックス：濃いグレー角丸（高さは中身なり＝低め） */
section.about-cat.cat10 .nh1b-p3b-before-box {
  width: 100%;
  box-sizing: border-box;
  background: #18181e !important;
  background-color: #18181e !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 18px;
  padding: clamp(12px, 1.3vw, 18px) clamp(16px, 1.7vw, 24px);
  box-shadow: 0 16px 40px -20px rgba(0,0,0,.85);
  transition: border-color .3s ease;
  display: flex; flex-direction: column;
}
section.about-cat.cat10 .nh1b-p3b-before-box:hover { border-color: rgba(255,255,255,.22); }
section.about-cat.cat10 .nh1b-p3b-pill {
  display: inline-flex; align-items: center; justify-content: center;
  font-weight: 900; line-height: 1; letter-spacing: .03em;
  font-size: clamp(12px, 1.1vw, 17px);
  padding: 6px 16px; border-radius: 999px; margin: 0 0 clamp(10px, 1.2vw, 16px);
}
section.about-cat.cat10 .nh1b-p3b-pill-gray {
  background: #2a2a32; color: #b8b8c2; border: 1px solid rgba(255,255,255,.14);
}
section.about-cat.cat10 .nh1b-p3b-before-inner {
  /* テキスト左・画像右 — CSSのorder で制御（HTML順は画像先だがorderで逆転） */
  display: grid; grid-template-columns: 0.92fr 1.08fr; gap: clamp(12px, 1.5vw, 20px);
  align-items: center;
}
/* 画像をorder:2で右へ、テキストをorder:1で左へ */
section.about-cat.cat10 .nh1b-p3b-before-img { order: 2; }
section.about-cat.cat10 .nh1b-p3b-before-txt { order: 1; }
section.about-cat.cat10 .nh1b-p3b-before-img {
  border-radius: 10px; overflow: hidden;
  /* 白背景を除去：画像(#1c1c22系の暗いUI)が直接乗る */
  background: transparent;
  box-shadow: 0 6px 18px -8px rgba(0,0,0,.8);
}
section.about-cat.cat10 .nh1b-p3b-before-img img { display: block; width: 100%; height: auto; border-radius: 10px; background: transparent !important; }
/* 白背景の混入を強制除去：内側・画像枠は透明にして濃グレー箱を透かす（白文字を読めるように） */
section.about-cat.cat10 .nh1b-p3b-before-inner,
section.about-cat.cat10 .nh1b-p3b-before-img { background: transparent !important; background-color: transparent !important; }
section.about-cat.cat10 .nh1b-p3b-before-txt, section.about-cat.cat10 .nh1b-p3b-before-txt *, section.about-cat.cat10 .nh1b-p3b-before-ttl, section.about-cat.cat10 .nh1b-p3b-before-em, section.about-cat.cat10 .nh1b-p3b-before-note { background: transparent !important; background-color: transparent !important; }
section.about-cat.cat10 .nh1b-p3b-after-wrap, section.about-cat.cat10 .nh1b-p3b-after-img, section.about-cat.cat10 .nh1b-p3b-after-caption, section.about-cat.cat10 .nh1b-p3b-after-caption *, section.about-cat.cat10 .nh1b-p3b-after-ttl, section.about-cat.cat10 .nh1b-p3b-after-hl, section.about-cat.cat10 .nh1b-p3b-after-note { background: transparent !important; background-color: transparent !important; }
section.about-cat.cat10 .nh1b-p3b-before-txt { display: flex; flex-direction: column; gap: 6px; }
section.about-cat.cat10 .nh1b-p3b-before-ttl {
  margin: 0; font-weight: 800; color: #fff; line-height: 1.22;
  font-size: clamp(15px, 1.5vw, 24px);
}
section.about-cat.cat10 .nh1b-p3b-before-em {
  display: block; font-weight: 900; color: #ffffff;
  font-size: clamp(24px, 2.7vw, 46px); line-height: 1.06; letter-spacing: -.02em;
  text-shadow: 0 4px 14px rgba(0,0,0,.55);
}
section.about-cat.cat10 .nh1b-p3b-before-note {
  margin: 0; color: #d6d6dd; font-weight: 600; line-height: 1.45;
  font-size: clamp(12px, 1.15vw, 17px);
}
/* PC時のみ「広く狙いすぎて埋もれる」テキストを1.1倍 */
@media screen and (min-width: 768px) {
  section.about-cat.cat10 .nh1b-p3b-before-txt { transform: scale(1.1); transform-origin: left center; }
}

/* ---- 中央：黄色塗りつぶし▶三角（両boxの縦中央に揃える） ---- */
section.about-cat.cat10 .nh1b-p3b-tri-wrap {
  display: flex; justify-content: center; align-items: center;
  align-self: center;
  padding-top: 0;
}
section.about-cat.cat10 .nh1b-p3b-tri {
  width: 0; height: 0;
  border-top: clamp(16px, 2vw, 32px) solid transparent;
  border-bottom: clamp(16px, 2vw, 32px) solid transparent;
  border-left: clamp(22px, 2.6vw, 42px) solid #FFFC00;
  filter: drop-shadow(0 4px 14px rgba(255,252,0,.55));
  animation: nh1bTriPulse 1.8s ease-in-out infinite;
}
@keyframes nh1bTriPulse { 0%,100% { opacity: .85; transform: translateX(0); } 50% { opacity: 1; transform: translateX(6px); } }
@media (prefers-reduced-motion: reduce) { section.about-cat.cat10 .nh1b-p3b-tri { animation: none; } }

/* ---- 右カラム：高さ100%でafter-boxを引き伸ばす ---- */
section.about-cat.cat10 .nh1b-p3b-right {
  display: flex; flex-direction: column;
  height: 100%;
}
/* 導入後ボックス：導入前と同じ濃グレー角丸、高さ100%で等高 */
section.about-cat.cat10 .nh1b-p3b-after-box {
  width: 100%;
  height: 100%;
  flex: 1 1 0;
  box-sizing: border-box;
  background: #18181e !important;
  background-color: #18181e !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 18px;
  padding: clamp(14px, 1.6vw, 22px);
  box-shadow: 0 16px 40px -20px rgba(0,0,0,.85);
  transition: border-color .3s ease;
  display: flex; flex-direction: column;
}
section.about-cat.cat10 .nh1b-p3b-after-box:hover { border-color: rgba(255,255,255,.22); }
/* after-box 内側は transparent のまま（白・薄黄背景除去を維持） */
section.about-cat.cat10 .nh1b-p3b-after-box { background: #18181e !important; background-color: #18181e !important; }

/* pill-y: 導入後ラベル（黄色系） */
section.about-cat.cat10 .nh1b-p3b-pill-y {
  background: rgba(255,252,0,.15); color: var(--nh1b-yellow); border: 1px solid rgba(255,252,0,.35);
}

/* after-wrap：スマホ（左）＋キャプション（右）横並び、右端が切れないよう min-width:0 管理 */
section.about-cat.cat10 .nh1b-p3b-after-wrap {
  display: flex; flex-direction: row; align-items: center;
  gap: clamp(10px, 1.4vw, 20px);
  width: 100%; min-width: 0;
  flex: 1 1 0;
}
/* スマホ幅を右カラムの約55%に固定し、残り45%にテキストが入る */
section.about-cat.cat10 .nh1b-p3b-after-img {
  display: block;
  flex: 0 0 56%;
  width: 56%;
  max-width: 312px;
  height: auto;
  filter: drop-shadow(0 20px 38px rgba(0,0,0,.7)) drop-shadow(0 0 20px rgba(255,252,0,.1));
  transition: transform .3s ease;
}
section.about-cat.cat10 .nh1b-p3b-after-img:hover { transform: translateY(-5px); }
section.about-cat.cat10 .nh1b-p3b-after-caption {
  flex: 1 1 0; min-width: 0;
  display: flex; flex-direction: column; gap: 6px;
}
section.about-cat.cat10 .nh1b-p3b-after-ttl {
  margin: 0; font-weight: 900; color: #fff; line-height: 1.3;
  font-size: clamp(14px, 1.6vw, 26px);
}
section.about-cat.cat10 .nh1b-p3b-after-hl {
  display: block; color: var(--nh1b-yellow); font-weight: 900;
  font-size: clamp(16px, 1.9vw, 32px);
  text-shadow: 0 2px 16px rgba(255,252,0,.4);
}
section.about-cat.cat10 .nh1b-p3b-after-note {
  margin: 0; color: var(--nh1b-muted); font-weight: 600; line-height: 1.5;
  font-size: clamp(11px, 1.1vw, 17px);
}

/* ---- 3つの効果カード ---- */
section.about-cat.cat10 .nh1b-p3b-effects {
  list-style: none; margin: 0 0 clamp(20px, 2.4vw, 34px); padding: 0;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(12px, 1.6vw, 22px);
}
section.about-cat.cat10 .nh1b-p3b-effect {
  display: flex; align-items: center; gap: clamp(12px, 1.4vw, 18px);
  text-align: left;
  background: var(--nh1b-card); border: 1px solid var(--nh1b-line); border-radius: 16px;
  padding: clamp(16px, 1.9vw, 26px) clamp(16px, 1.8vw, 24px);
  transition: transform .25s ease, border-color .25s ease, background .25s ease;
}
section.about-cat.cat10 .nh1b-p3b-effect:hover { transform: translateY(-5px); border-color: var(--nh1b-line-y); background: var(--nh1b-card-2); }
section.about-cat.cat10 .nh1b-p3b-effect-ico {
  flex: 0 0 auto; display: inline-grid; place-items: center;
  width: clamp(42px, 4vw, 58px); height: clamp(42px, 4vw, 58px);
  background: var(--nh1b-yellow); border-radius: 50%;
  box-shadow: 0 8px 20px -8px rgba(255,252,0,.7);
}
section.about-cat.cat10 .nh1b-p3b-effect-ico svg { width: 56%; height: 56%; }
section.about-cat.cat10 .nh1b-p3b-effect-body { min-width: 0; }
section.about-cat.cat10 .nh1b-p3b-effect-ttl {
  margin: 0 0 4px; font-weight: 900; color: #fff;
  font-size: clamp(16px, 1.55vw, 24px);
}
section.about-cat.cat10 .nh1b-p3b-effect-txt {
  margin: 0; color: var(--nh1b-muted); font-weight: 600; line-height: 1.5;
  font-size: clamp(12px, 1.2vw, 17px);
}

/* ---- 下部の効果バー（黄色枠の帯） ---- */
section.about-cat.cat10 .nh1b-p3b-bar {
  display: grid; grid-template-columns: auto 1fr; align-items: center;
  gap: clamp(16px, 2.4vw, 40px);
  background: linear-gradient(180deg, #111114 0%, #0a0a0c 100%);
  border: 2px solid var(--nh1b-yellow); border-radius: 16px;
  padding: clamp(18px, 2.1vw, 30px) clamp(20px, 2.6vw, 40px);
  box-shadow: 0 18px 44px -22px rgba(255,252,0,.55), inset 0 1px 0 rgba(255,255,255,.04);
  text-align: left;
}
section.about-cat.cat10 .nh1b-p3b-bar-label {
  margin: 0; display: inline-flex; align-items: center; gap: 8px; flex-wrap: wrap;
  font-weight: 900; color: #fff; line-height: 1.25;
  font-size: clamp(15px, 1.55vw, 24px); white-space: nowrap;
}
section.about-cat.cat10 .nh1b-p3b-bar-ico { display: inline-grid; place-items: center; width: 1.4em; height: 1.4em; }
section.about-cat.cat10 .nh1b-p3b-bar-ico svg { width: 100%; height: 100%; }
section.about-cat.cat10 .nh1b-p3b-bar-sub { color: var(--nh1b-muted); font-weight: 700; font-size: .72em; }
section.about-cat.cat10 .nh1b-p3b-stats {
  list-style: none; margin: 0; padding: 0;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(10px, 1.6vw, 28px);
}
section.about-cat.cat10 .nh1b-p3b-stat {
  display: flex; flex-direction: column; align-items: center; text-align: center;
  position: relative;
}
section.about-cat.cat10 .nh1b-p3b-stat + .nh1b-p3b-stat::before {
  content: ""; position: absolute; left: clamp(-5px, -0.8vw, -14px); top: 12%; bottom: 12%;
  width: 1px; background: var(--nh1b-line-y);
}
section.about-cat.cat10 .nh1b-p3b-stat-name {
  font-weight: 800; color: #fff; line-height: 1.25; margin-bottom: 2px;
  font-size: clamp(12px, 1.2vw, 18px);
}
section.about-cat.cat10 .nh1b-p3b-stat-name-sub { color: var(--nh1b-muted); font-weight: 700; font-size: .82em; }
section.about-cat.cat10 .nh1b-p3b-stat-num { display: inline-flex; align-items: baseline; line-height: .9; white-space: nowrap; }
section.about-cat.cat10 .nh1b-p3b-stat-pre { font-weight: 800; color: #fff; font-size: clamp(12px, 1.15vw, 17px); margin-right: 3px; align-self: center; }
section.about-cat.cat10 .nh1b-p3b-stat-fig {
  font-weight: 900; color: var(--nh1b-yellow); letter-spacing: -.03em;
  font-size: clamp(40px, 4.6vw, 80px);
  text-shadow: 0 6px 26px rgba(255,252,0,.4);
}
section.about-cat.cat10 .nh1b-p3b-stat-unit { font-weight: 900; color: var(--nh1b-yellow); font-size: clamp(22px, 2.4vw, 40px); margin-left: 2px; }
section.about-cat.cat10 .nh1b-p3b-stat-unit-x { font-size: clamp(20px, 2.1vw, 34px); }
section.about-cat.cat10 .nh1b-p3b-stat-suf { font-weight: 800; color: #fff; font-size: clamp(11px, 1.1vw, 16px); margin-top: 2px; }

/* ====================== Panel 3: multilingual ====================== */
section.about-cat.cat10 .nh1b-p3-grid {
  display: grid; grid-template-columns: 1fr 1.1fr; align-items: center;
  gap: clamp(22px, 3vw, 44px); margin-bottom: clamp(22px, 2.6vw, 34px);
}
section.about-cat.cat10 .nh1b-p3-right { display: flex; justify-content: center; align-items: center; }
section.about-cat.cat10 .nh1b-scene-multilang {
  width: 100%;
  max-width: min(100%, 460px);
  filter: drop-shadow(0 28px 50px rgba(0,0,0,.65));
}
section.about-cat.cat10 .nh1b-minicards-3 { margin-top: clamp(16px, 2.2vw, 26px); }
section.about-cat.cat10 .nh1b-ribbon-line {
  background: #0e0e10; color: var(--nh1b-ink); border-color: var(--nh1b-line-y);
  box-shadow: none; font-size: clamp(13px, 1.3vw, 18px); font-weight: 700;
}
section.about-cat.cat10 .nh1b-ribbon-tag {
  background: var(--nh1b-yellow); color: #111; font-weight: 800;
  padding: 5px 12px; border-radius: 999px; font-size: .94em;
}

/* ====================== Panel 4: results ====================== */
section.about-cat.cat10 .nh1b-p4-head { text-align: center; margin-bottom: clamp(26px, 3vw, 40px); }
section.about-cat.cat10 .nh1b-p4-head .nh1b-tag { margin-left: auto; margin-right: auto; }

/* Panel4 成果イメージ：#85ライク（大きく＋赤バッジ＋金チャート背景＋白サブ/黄色×） */
section.about-cat.cat10 .nh1b-p4-head { position: relative; }
section.about-cat.cat10 .nh1b-p4-bg {
  position: absolute; inset: -8% 0; width: 100%; height: 116%;
  z-index: 0; pointer-events: none;
}
section.about-cat.cat10 .nh1b-p4-head > .nh1b-tag,
section.about-cat.cat10 .nh1b-p4-head > .nh1b-h2,
section.about-cat.cat10 .nh1b-p4-head > .nh1b-sub { position: relative; z-index: 1; }
section.about-cat.cat10 .nh1b-p4-head .nh1b-h2 {
  font-size: clamp(40px, 5.8vw, 100px) !important;
  line-height: 1.1 !important; letter-spacing: -.03em !important;
  margin: 0 0 clamp(12px, 1.4vw, 20px) !important;
}
section.about-cat.cat10 .nh1b-p4-head .nh1b-hl::after { display: none !important; }
section.about-cat.cat10 .nh1b-p4-head .nh1b-sub {
  font-size: clamp(16px, 2vw, 34px) !important; color: #fff !important; font-weight: 700 !important;
}
section.about-cat.cat10 .nh1b-p4-head .nh1b-tag {
  font-size: clamp(16px, 1.55vw, 27px) !important; padding: 11px 26px !important;
  border-radius: 12px !important; margin-bottom: clamp(16px, 1.9vw, 28px) !important;
}
section.about-cat.cat10 .nh1b-p4-x { color: var(--nh1b-yellow); font-weight: 900; margin: 0 .14em; }
section.about-cat.cat10 .nh1b-results {
  list-style: none; margin: 0 0 clamp(18px, 2.4vw, 28px); padding: 0;
  display: grid; grid-template-columns: repeat(3,1fr); gap: clamp(14px, 1.8vw, 26px);
}
section.about-cat.cat10 .nh1b-result {
  display: flex; flex-direction: column; align-items: center; text-align: center;
  background: var(--nh1b-card); border: 1px solid var(--nh1b-line); border-radius: 18px;
  padding: clamp(26px, 3vw, 42px) 12px clamp(22px, 2.6vw, 34px);
  transition: transform .25s ease, border-color .25s ease;
}
section.about-cat.cat10 .nh1b-result:hover { transform: translateY(-5px); border-color: var(--nh1b-line-y); }
section.about-cat.cat10 .nh1b-result-hi {
  border-color: var(--nh1b-line-y);
  background: linear-gradient(180deg, rgba(255,212,0,.09), var(--nh1b-card) 55%);
  box-shadow: 0 20px 50px -24px rgba(255,212,0,.5);
}
section.about-cat.cat10 .nh1b-result-ico  { width: clamp(60px, 7vw, 90px); height: auto; margin-bottom: 10px; }
section.about-cat.cat10 .nh1b-result-name { margin: 0 0 5px; font-weight: 800; color: #fff; font-size: clamp(16px, 1.5vw, 22px); }
section.about-cat.cat10 .nh1b-result-num  { margin: 0; line-height: 1; }
section.about-cat.cat10 .nh1b-result-figure {
  font-weight: 900; color: var(--nh1b-red);
  font-size: clamp(56px, 5.8vw, 96px); letter-spacing: -.03em;
  text-shadow: 0 6px 26px rgba(215,12,24,.35);
}
section.about-cat.cat10 .nh1b-result-unit { font-weight: 900; color: #fff; font-size: clamp(20px, 2.4vw, 36px); margin-left: 2px; }
section.about-cat.cat10 .nh1b-footnote { text-align: center; margin: 0; color: var(--nh1b-muted); font-weight: 600; font-size: clamp(13px, 1.1vw, 17px); }

/* ====================== Panel 5: summary ====================== */
section.about-cat.cat10 .nh1b-p5-head { text-align: center; margin-bottom: clamp(24px, 2.8vw, 36px); }
section.about-cat.cat10 .nh1b-p5-head .nh1b-tag { margin-left: auto; margin-right: auto; }
section.about-cat.cat10 .nh1b-summary {
  list-style: none; margin: 0 0 clamp(22px, 2.6vw, 34px); padding: 0;
  display: grid; grid-template-columns: repeat(4,1fr); gap: clamp(12px, 1.5vw, 20px);
}
section.about-cat.cat10 .nh1b-sumcard {
  display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center;
  background: var(--nh1b-card); border: 1px solid var(--nh1b-line); border-radius: 16px;
  padding: clamp(20px, 2.4vw, 34px) 10px;
  font-weight: 800; color: var(--nh1b-ink); font-size: clamp(13px, 1.2vw, 17px);
  transition: transform .25s ease, border-color .25s ease;
}
section.about-cat.cat10 .nh1b-sumcard:hover { transform: translateY(-4px); border-color: var(--nh1b-line-y); }
section.about-cat.cat10 .nh1b-sum-ico { width: clamp(42px, 5vw, 64px); height: auto; }
section.about-cat.cat10 .nh1b-ribbon-final {
  background: #0e0e10; color: #fff; border: 2px solid var(--nh1b-yellow);
  box-shadow: 0 16px 38px -20px rgba(255,212,0,.6);
  font-size: clamp(18px, 1.8vw, 28px);
}
section.about-cat.cat10 .nh1b-ribbon-final .nh1b-ribbon-hl { color: var(--nh1b-yellow); }

/* ===== Panel5 まとめ：#86ライク（背景きらめき・大見出し・赤バッジ・飾り線・赤下線カード・グローリボン） ===== */
section.about-cat.cat10 .nh1b-p5 { position: relative; }
section.about-cat.cat10 .nh1b-p5-bg {
  position: absolute; inset: 0; z-index: 0 !important; pointer-events: none;
  background: url(./nh1b_p5_bg.svg?v=20260527-51) center 36% / 118% auto no-repeat;
}
/* 見出し大きく（#86） */
section.about-cat.cat10 .nh1b-p5-head .nh1b-h2 {
  font-size: clamp(34px, 4.6vw, 82px) !important;
  line-height: 1.14 !important; letter-spacing: -.03em !important;
  margin: 0 0 clamp(12px, 1.4vw, 20px) !important;
}
section.about-cat.cat10 .nh1b-p5-head .nh1b-hl::after { display: none !important; }
/* バッジ赤・大きく・ピル */
section.about-cat.cat10 .nh1b-p5-head .nh1b-tag {
  font-size: clamp(15px, 1.4vw, 24px) !important; padding: 10px 26px !important;
  border-radius: 999px !important; margin-bottom: clamp(16px, 1.9vw, 28px) !important;
}
/* サブ：白＋両脇に金色飾り線 */
section.about-cat.cat10 .nh1b-p5-sub {
  color: #fff !important; font-weight: 700 !important;
  font-size: clamp(15px, 1.6vw, 26px) !important;
  display: flex !important; align-items: center; justify-content: center; gap: clamp(12px, 1.8vw, 28px);
}
section.about-cat.cat10 .nh1b-p5-sub::before,
section.about-cat.cat10 .nh1b-p5-sub::after {
  content: ""; flex: 0 0 auto; width: clamp(28px, 4.5vw, 84px); height: 2px;
  background: var(--nh1b-yellow); border-radius: 2px; opacity: .85;
}
/* カード：アイコン大きく＋赤い下線 */
section.about-cat.cat10 .nh1b-p5 .nh1b-sum-ico { width: clamp(56px, 6vw, 92px) !important; }
section.about-cat.cat10 .nh1b-p5 .nh1b-sumcard {
  gap: 14px; padding: clamp(22px, 2.6vw, 38px) 10px clamp(18px, 2.2vw, 30px) !important;
  font-size: clamp(14px, 1.35vw, 21px) !important; border-radius: 18px;
}
section.about-cat.cat10 .nh1b-p5 .nh1b-sumcard span { position: relative; padding-bottom: 13px; }
section.about-cat.cat10 .nh1b-p5 .nh1b-sumcard span::after {
  content: ""; position: absolute; left: 50%; transform: translateX(-50%); bottom: 0;
  width: 34px; height: 3px; background: var(--nh1b-red); border-radius: 2px;
}
/* 下部リボン：左寄せアイコン＋2行テキスト・黄色枠グロー強化 */
section.about-cat.cat10 .nh1b-p5 .nh1b-ribbon-final {
  display: flex !important; flex-wrap: nowrap; align-items: center; justify-content: center;
  gap: clamp(14px, 1.9vw, 30px); text-align: left;
  padding: clamp(20px, 2.4vw, 36px) clamp(22px, 3vw, 54px) !important;
  border-radius: 18px; border: 3px solid var(--nh1b-yellow) !important;
  box-shadow: 0 0 0 1px rgba(255,212,0,.22), 0 18px 52px -16px rgba(255,212,0,.55), inset 0 0 44px -12px rgba(255,212,0,.20) !important;
}
section.about-cat.cat10 .nh1b-ribbon-chart { width: clamp(48px, 5vw, 88px); height: auto; flex: 0 0 auto; }
section.about-cat.cat10 .nh1b-ribbon-txt { display: flex; flex-direction: column; line-height: 1.12; }
section.about-cat.cat10 .nh1b-ribbon-lead { color: #fff; font-weight: 800; font-size: clamp(15px, 1.55vw, 28px); }
section.about-cat.cat10 .nh1b-ribbon-big { color: #fff; font-weight: 900; font-size: clamp(22px, 3vw, 56px); letter-spacing: -.02em; }
section.about-cat.cat10 .nh1b-ribbon-em { color: var(--nh1b-yellow); }

/* ===== 最新ノウハウ② #88ヒーロー（緑テーマ） ===== */
section.about-cat.cat10 .nh2-hero {
  --nh2-green: #84E021;
  /* ①パネルと同じ幅(1560px)に枠内ブレイクアウト（cat10②の他要素は1320pxのまま） */
  width: min(1560px, calc(100vw - 48px)); max-width: none;
  margin: 0 0 clamp(20px, 2.4vw, 36px); margin-left: 50%; transform: translateX(-50%);
  box-sizing: border-box;
  background:
    radial-gradient(130% 130% at 100% 0%, rgba(132,224,33,.07) 0%, rgba(132,224,33,0) 46%),
    linear-gradient(180deg, #0c0c0e 0%, #050506 100%);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: clamp(14px, 1.4vw, 24px);
  padding: clamp(28px, 3vw, 52px) clamp(24px, 3vw, 48px);
  box-shadow: 0 28px 70px -30px rgba(0,0,0,.9), inset 0 1px 0 rgba(255,255,255,.04);
  font-family: "Noto Sans JP", sans-serif; text-align: left;
}
section.about-cat.cat10 .nh2-badge {
  display: inline-block; background: #84E021 !important; background-color: #84E021 !important;
  color: #0a0f04 !important;
  font-weight: 900; font-size: clamp(14px, 1.3vw, 22px); letter-spacing: .03em;
  padding: 8px 24px; border-radius: 999px; margin: 0 0 clamp(14px, 1.8vw, 24px);
  box-shadow: 0 0 22px -4px rgba(132,224,33,.6);
}
section.about-cat.cat10 .nh2-hero-main {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(16px, 2.2vw, 40px); align-items: center;
}
section.about-cat.cat10 .nh2-hero-left { text-align: left; min-width: 0; }
section.about-cat.cat10 .nh2-h2 {
  font-weight: 900; color: #fff; margin: 0 0 clamp(14px, 1.6vw, 22px);
  font-size: clamp(32px, 4.3vw, 68px); line-height: 1.16; letter-spacing: -.03em;
}
section.about-cat.cat10 .nh2-hl { color: var(--color-yellow-empha, #FFFC00); text-shadow: 0 2px 20px rgba(255,252,0,.3); }
section.about-cat.cat10 .nh2-sub {
  color: #d8d8de; font-weight: 600; line-height: 1.7; margin: 0;
  font-size: clamp(16px, 1.8vw, 29px);
}
section.about-cat.cat10 .nh2-em { color: var(--color-yellow-empha, #FFFC00); font-weight: 800; }
section.about-cat.cat10 .nh2-hero-right { display: flex; justify-content: center; min-width: 0; }
section.about-cat.cat10 .nh2-hero-img {
  display: block; width: 100%; max-width: 660px; height: auto;
  background: transparent !important; background-color: transparent !important;
}
/* 3カード（緑アイコン） */
section.about-cat.cat10 .nh2-cards {
  list-style: none; margin: clamp(22px, 2.6vw, 38px) auto 0; max-width: 1120px;
  padding: clamp(22px, 2.6vw, 36px) 0 0;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: clamp(16px, 1.8vw, 30px);
  border-top: 1px solid rgba(255,255,255,.10);
}
/* PC時のみ3カードを約1.2倍（最大幅・アイコン・文字を拡大、見切れ防止のためtransformは使わない） */
@media screen and (min-width: 768px) {
  section.about-cat.cat10 .nh2-cards { max-width: 1344px; gap: clamp(19px, 2.2vw, 36px); }
  section.about-cat.cat10 .nh2-card { gap: clamp(12px, 1.4vw, 19px); }
  section.about-cat.cat10 .nh2-card-ico { width: clamp(55px, 5.3vw, 77px); height: clamp(55px, 5.3vw, 77px); }
  section.about-cat.cat10 .nh2-card-ttl { font-size: clamp(19px, 1.8vw, 29px); }
  section.about-cat.cat10 .nh2-card-txt { font-size: clamp(14px, 1.38vw, 20px); }
}
section.about-cat.cat10 .nh2-card { display: flex; align-items: flex-start; gap: clamp(10px, 1.2vw, 16px); text-align: left; }
section.about-cat.cat10 .nh2-card-ico {
  width: clamp(46px, 4.4vw, 64px); height: clamp(46px, 4.4vw, 64px); flex: 0 0 auto;
  border: 2px solid var(--nh2-green); border-radius: 50%; display: grid; place-items: center;
  color: var(--nh2-green); box-shadow: 0 0 18px -5px rgba(132,224,33,.55);
}
section.about-cat.cat10 .nh2-card-ico svg { width: 54%; height: 54%; }
section.about-cat.cat10 .nh2-card-body { min-width: 0; }
section.about-cat.cat10 .nh2-card-ttl { margin: 0 0 4px; color: #fff; font-weight: 800; font-size: clamp(16px, 1.5vw, 24px); }
section.about-cat.cat10 .nh2-card-txt { margin: 0; color: #b8b8c0; font-weight: 500; line-height: 1.55; font-size: clamp(12px, 1.15vw, 17px); }
/* 機会損失リード */
section.about-cat.cat10 .nh2-lead { text-align: center; margin: clamp(28px, 3.2vw, 48px) auto clamp(8px, 1vw, 16px); max-width: 1100px; }
section.about-cat.cat10 .nh2-lead p { color: #e6e6ec; font-weight: 700; line-height: 1.8; margin: 0; font-size: clamp(15px, 1.6vw, 26px); }
section.about-cat.cat10 .nh2-lead-red { color: #FF3B3B; font-weight: 900; }

/* ===== なぜ返信で差がつくのか（#94 比較＋フロー）緑パネル・①と同幅 ===== */
section.about-cat.cat10 .nh2b {
  --nh2-green: #84E021;
  width: min(1560px, calc(100vw - 48px)); max-width: none;
  margin: 0 0 clamp(20px, 2.4vw, 36px); margin-left: 50%; transform: translateX(-50%);
  box-sizing: border-box;
  background:
    radial-gradient(120% 120% at 50% 0%, rgba(132,224,33,.06) 0%, rgba(132,224,33,0) 50%),
    linear-gradient(180deg, #0c0c0e 0%, #050506 100%);
  border: 1px solid rgba(255,255,255,.10); border-radius: clamp(14px, 1.4vw, 24px);
  padding: clamp(28px, 3vw, 52px) clamp(24px, 3vw, 48px);
  box-shadow: 0 28px 70px -30px rgba(0,0,0,.9), inset 0 1px 0 rgba(255,255,255,.04);
  font-family: "Noto Sans JP", sans-serif;
}
section.about-cat.cat10 .nh2b-head { text-align: center; margin: 0 0 clamp(22px, 2.6vw, 40px); }
section.about-cat.cat10 .nh2b-h2 { font-weight: 900; color: #fff; margin: 0 0 clamp(8px, 1vw, 16px); font-size: clamp(34px, 4.6vw, 74px); line-height: 1.2; letter-spacing: -.02em; }
section.about-cat.cat10 .nh2b-hl { color: var(--color-yellow-empha, #FFFC00); text-shadow: 0 2px 18px rgba(255,252,0,.3); }
section.about-cat.cat10 .nh2b-sub { color: #d8d8de; font-weight: 700; margin: 0; font-size: clamp(18px, 2.3vw, 36px); }
section.about-cat.cat10 .nh2b-em { color: var(--color-yellow-empha, #FFFC00); }
section.about-cat.cat10 .nh2b-compare { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: clamp(10px, 1.4vw, 24px); }
section.about-cat.cat10 .nh2b-col { min-width: 0; display: flex; justify-content: center; }
section.about-cat.cat10 .nh2b-card-img { display: block; width: 100%; height: auto; background: transparent !important; background-color: transparent !important; }
section.about-cat.cat10 .nh2b-arrow { display: flex; align-items: center; justify-content: center; }
section.about-cat.cat10 .nh2b-tri { width: 0; height: 0; border-top: clamp(16px,2vw,30px) solid transparent; border-bottom: clamp(16px,2vw,30px) solid transparent; border-left: clamp(22px,2.6vw,40px) solid var(--nh2-green); filter: drop-shadow(0 0 12px rgba(132,224,33,.55)); }
section.about-cat.cat10 .nh2b-flow {
  margin: clamp(18px, 2.2vw, 32px) auto 0; max-width: 1180px;
  display: flex; align-items: center; justify-content: center; gap: clamp(8px, 1vw, 18px);
  padding: clamp(13px, 1.5vw, 22px) clamp(16px, 1.8vw, 28px);
  border: 2px solid rgba(132,224,33,.55); border-radius: 16px;
  box-shadow: 0 0 28px -10px rgba(132,224,33,.45), inset 0 0 36px -16px rgba(132,224,33,.20);
}
section.about-cat.cat10 .nh2b-step { display: flex; align-items: center; gap: clamp(8px,0.9vw,13px); flex: 1 1 0; min-width: 0; }
section.about-cat.cat10 .nh2b-step-ico { width: clamp(38px,3.2vw,52px); height: clamp(38px,3.2vw,52px); flex: 0 0 auto; border-radius: 50%; background: var(--nh2-green); display: grid; place-items: center; box-shadow: 0 0 16px -4px rgba(132,224,33,.6); }
section.about-cat.cat10 .nh2b-step-ico svg { width: 56%; height: 56%; }
section.about-cat.cat10 .nh2b-step-ttl { margin: 0; color: #fff; font-weight: 800; font-size: clamp(19px,2vw,30px); line-height: 1.12; }
section.about-cat.cat10 .nh2b-step-txt { margin: 2px 0 0; color: #b8b8c0; font-weight: 500; line-height: 1.3; font-size: clamp(14px,1.35vw,19px); }
section.about-cat.cat10 .nh2b-flow-arrow { flex: 0 0 auto; display: grid; place-items: center; }
section.about-cat.cat10 .nh2b-flow-arrow svg { width: clamp(20px,1.8vw,32px); height: auto; }
/* ===== 動画でわかる、隠しキーワード（動画＋3ポイント・緑パネル） ===== */
section.about-cat.cat10 .nh2v {
  --nh2-green: #84E021;
  width: min(1560px, calc(100vw - 48px)); max-width: none;
  margin: 0 0 clamp(20px, 2.4vw, 36px); margin-left: 50%; transform: translateX(-50%);
  box-sizing: border-box;
  background:
    radial-gradient(120% 120% at 50% 0%, rgba(132,224,33,.06) 0%, rgba(132,224,33,0) 50%),
    linear-gradient(180deg, #0c0c0e 0%, #050506 100%);
  border: 1px solid rgba(255,255,255,.10); border-radius: clamp(14px, 1.4vw, 24px);
  padding: clamp(28px, 3vw, 52px) clamp(24px, 3vw, 48px);
  box-shadow: 0 28px 70px -30px rgba(0,0,0,.9), inset 0 1px 0 rgba(255,255,255,.04);
  font-family: "Noto Sans JP", sans-serif;
}
section.about-cat.cat10 .nh2v-head { text-align: center; margin: 0 0 clamp(22px, 2.6vw, 40px); }
section.about-cat.cat10 .nh2v-h2 { font-weight: 900; color: #fff; margin: 0 0 clamp(8px, 1vw, 16px); font-size: clamp(30px, 4vw, 64px); line-height: 1.18; letter-spacing: -.02em; }
section.about-cat.cat10 .nh2v-hl { color: var(--color-yellow-empha, #FFFC00); text-shadow: 0 2px 18px rgba(255,252,0,.3); }
section.about-cat.cat10 .nh2v-hl-red { color: #FF2D2D; text-shadow: 0 2px 18px rgba(255,45,45,.4); }
section.about-cat.cat10 .nh2v-sub { color: #d8d8de; font-weight: 700; margin: 0; font-size: clamp(16px, 1.9vw, 30px); }
section.about-cat.cat10 .nh2v-body { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: clamp(20px, 3vw, 52px); align-items: center; }
section.about-cat.cat10 .nh2v-player { position: relative; border-radius: clamp(12px,1.2vw,18px); overflow: hidden; border: 2px solid rgba(132,224,33,.55); box-shadow: 0 0 34px -8px rgba(132,224,33,.5), 0 30px 60px -30px rgba(0,0,0,.9); background: #000; }
section.about-cat.cat10 .nh2v-video { display: block; width: 100%; height: auto; }
section.about-cat.cat10 .nh2v-points { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: clamp(16px,1.8vw,28px); }
section.about-cat.cat10 .nh2v-point { display: flex; align-items: flex-start; gap: clamp(12px,1.3vw,20px); }
section.about-cat.cat10 .nh2v-point-ico { flex: 0 0 auto; width: clamp(48px,4vw,64px); height: clamp(48px,4vw,64px); border-radius: 50%; border: 2px solid var(--nh2-green); display: grid; place-items: center; box-shadow: 0 0 18px -6px rgba(132,224,33,.7), inset 0 0 16px -8px rgba(132,224,33,.55); }
section.about-cat.cat10 .nh2v-point-ico svg { width: 50%; height: 50%; stroke: var(--nh2-green); fill: none; }
section.about-cat.cat10 .nh2v-point-ttl { margin: 0 0 4px; color: var(--color-yellow-empha, #FFFC00); font-weight: 800; font-size: clamp(20px,2vw,30px); line-height: 1.12; }
section.about-cat.cat10 .nh2v-point-txt { margin: 0; color: #c8c8d0; font-weight: 500; line-height: 1.5; font-size: clamp(14px,1.3vw,18px); }
@media screen and (max-width: 767px) {
  section.about-cat.cat10 .nh2v { width: auto; max-width: none; margin-left: 0; transform: none; padding: 22px 16px; }
  section.about-cat.cat10 .nh2v-body { grid-template-columns: 1fr; gap: 20px; }
  section.about-cat.cat10 .nh2v-points { gap: 16px; }
  section.about-cat.cat10 .nh2v-h2 { font-size: clamp(28px, 8vw, 42px); }
  section.about-cat.cat10 .nh2v-sub { font-size: clamp(15px, 4vw, 20px); }
  section.about-cat.cat10 .nh2v-point-ico { width: 52px; height: 52px; }
}

/* ===== パネル間のフロー矢印（下向き） ===== */
section.about-cat.cat10 .nh2-connect { display: flex; justify-content: center; align-items: center; margin: clamp(20px,2.4vw,42px) 0 clamp(26px,2.8vw,48px); }
section.about-cat.cat10 .nh2-connect svg { width: clamp(60px,5.6vw,96px); height: auto; stroke: #84E021; stroke-width: 2.6; fill: none; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 0 14px rgba(132,224,33,.6)); }
@media screen and (max-width:767px) { section.about-cat.cat10 .nh2-connect { margin: 18px 0 24px; } section.about-cat.cat10 .nh2-connect svg { width: 62px; } }

/* ===== プロの知見×口コミロボ™ 伴走支援（黒×ライム） ===== */
section.about-cat.cat10 .nh2sup {
  --sup-lime: #C6F23C;
  width: min(1560px, calc(100vw - 48px)); max-width: none;
  margin: clamp(40px,5vw,84px) 0 clamp(20px,2.4vw,36px); margin-left: 50%; transform: translateX(-50%);
  box-sizing: border-box;
  background:
    radial-gradient(90% 90% at 10% -4%, rgba(198,242,60,.12) 0%, rgba(198,242,60,0) 46%),
    radial-gradient(80% 90% at 102% 104%, rgba(198,242,60,.10) 0%, rgba(198,242,60,0) 52%),
    linear-gradient(180deg, #0b0f07 0%, #060905 100%);
  border: 1px solid rgba(198,242,60,.20); border-radius: clamp(16px,1.6vw,26px);
  padding: clamp(30px,3.4vw,60px) clamp(24px,3vw,56px);
  box-shadow: 0 28px 70px -30px rgba(0,0,0,.9), inset 0 1px 0 rgba(255,255,255,.05);
  font-family: "Noto Sans JP", sans-serif;
}
section.about-cat.cat10 .nh2sup-head { text-align: left; margin: 0 0 clamp(26px,3vw,46px); }
section.about-cat.cat10 .nh2sup-h2 { font-weight: 900; color: #fff; margin: 0 0 clamp(8px,1vw,16px); font-size: clamp(27px,3.7vw,58px); line-height: 1.16; letter-spacing: -.02em; }
section.about-cat.cat10 .nh2sup-h2 .lime { color: var(--color-yellow-empha, #FFFC00); text-shadow: 0 2px 18px rgba(255,252,0,.35); }
section.about-cat.cat10 .nh2sup-h2 .tm { font-size: .56em; vertical-align: .5em; font-weight: 800; }
section.about-cat.cat10 .nh2sup-sub { color: #cfd3c6; font-weight: 700; margin: 0; font-size: clamp(15px,1.8vw,26px); }
section.about-cat.cat10 .nh2sup-body { display: grid; grid-template-columns: minmax(0,1.16fr) minmax(0,1fr); gap: clamp(16px,2.2vw,38px); align-items: stretch; }
/* 左：戦略メモ／分析メモ */
section.about-cat.cat10 .nh2sup-memo { position: relative; overflow: hidden; background: linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.012)); border: 1px solid rgba(198,242,60,.24); border-radius: clamp(14px,1.4vw,20px); padding: clamp(20px,2vw,32px); display: flex; flex-direction: column; gap: clamp(14px,1.5vw,22px); }
section.about-cat.cat10 .nh2sup-memo-hd,
section.about-cat.cat10 .nh2sup-chips,
section.about-cat.cat10 .nh2sup-notes,
section.about-cat.cat10 .nh2sup-div { position: relative; z-index: 1; }
section.about-cat.cat10 .nh2sup-memo-hd { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
section.about-cat.cat10 .nh2sup-memo-ttl { display: inline-flex; align-items: center; gap: 9px; color: #fff; font-weight: 800; font-size: clamp(16px,1.5vw,22px); margin: 0; }
section.about-cat.cat10 .nh2sup-memo-ttl svg { width: clamp(18px,1.5vw,24px); height: clamp(18px,1.5vw,24px); stroke: var(--sup-lime); fill: none; flex: 0 0 auto; }
section.about-cat.cat10 .nh2sup-tag { color: var(--sup-lime); font-weight: 700; font-size: clamp(11px,1vw,14px); border: 1px solid rgba(198,242,60,.5); border-radius: 999px; padding: 5px 13px; white-space: nowrap; }
section.about-cat.cat10 .nh2sup-chips { display: flex; flex-wrap: wrap; gap: clamp(8px,1vw,14px); }
section.about-cat.cat10 .nh2sup-chip { display: inline-flex; align-items: center; gap: 8px; color: #eaece2; font-weight: 700; font-size: clamp(13px,1.2vw,17px); background: rgba(255,255,255,.05); border: 1px solid rgba(198,242,60,.32); border-radius: 10px; padding: clamp(8px,0.9vw,12px) clamp(12px,1.2vw,18px); }
section.about-cat.cat10 .nh2sup-chip svg { width: 1.05em; height: 1.05em; stroke: var(--sup-lime); fill: none; flex: 0 0 auto; }
section.about-cat.cat10 .nh2sup-div { height: 1px; background: rgba(255,255,255,.12); margin: clamp(2px,0.4vw,6px) 0; }
section.about-cat.cat10 .nh2sup-notes { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: clamp(12px,1.3vw,18px); }
section.about-cat.cat10 .nh2sup-note { display: flex; align-items: flex-start; gap: clamp(9px,1vw,14px); }
section.about-cat.cat10 .nh2sup-note-ck { flex: 0 0 auto; width: clamp(22px,2vw,29px); height: clamp(22px,2vw,29px); border-radius: 50%; border: 1.5px solid rgba(198,242,60,.6); display: grid; place-items: center; margin-top: 2px; }
section.about-cat.cat10 .nh2sup-note-ck svg { width: 58%; height: 58%; stroke: var(--sup-lime); fill: none; }
section.about-cat.cat10 .nh2sup-note-tx { margin: 0; color: #c4c8bc; font-weight: 500; line-height: 1.65; font-size: clamp(14px,1.45vw,19.5px); }
section.about-cat.cat10 .nh2sup-note-tx .kw { color: #fff; font-weight: 700; }
section.about-cat.cat10 .nh2sup-note-tx b { color: var(--sup-lime); font-weight: 700; }
/* 右：4つの支援カード */
section.about-cat.cat10 .nh2sup-cards { display: grid; grid-template-columns: 1fr 1fr; grid-auto-rows: 1fr; gap: clamp(12px,1.4vw,20px); }
section.about-cat.cat10 .nh2sup-card { background: linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.015)); border: 1px solid rgba(198,242,60,.24); border-radius: clamp(12px,1.3vw,18px); padding: clamp(16px,1.7vw,28px) clamp(13px,1.4vw,22px); text-align: center; display: flex; flex-direction: column; align-items: center; justify-content: center; }
section.about-cat.cat10 .nh2sup-card-ico { width: clamp(46px,4vw,62px); height: clamp(46px,4vw,62px); flex: 0 0 auto; border-radius: 50%; border: 1.5px solid rgba(198,242,60,.55); display: grid; place-items: center; margin: 0 0 clamp(10px,1.1vw,16px); box-shadow: 0 0 22px -8px rgba(198,242,60,.6), inset 0 0 18px -10px rgba(198,242,60,.5); }
section.about-cat.cat10 .nh2sup-card-ico svg { width: 50%; height: 50%; stroke: var(--sup-lime); fill: none; }
section.about-cat.cat10 .nh2sup-card-ttl { margin: 0 0 clamp(7px,0.8vw,11px); color: #fff; font-weight: 800; font-size: clamp(16px,1.5vw,22px); line-height: 1.2; }
section.about-cat.cat10 .nh2sup-card-tx { margin: 0; color: #b6bab0; font-weight: 500; line-height: 1.55; font-size: clamp(12px,1.1vw,15px); }
section.about-cat.cat10 .nh2sup-foot { display: flex; align-items: center; justify-content: center; gap: clamp(14px,1.8vw,28px); margin: clamp(26px,3vw,48px) 0 0; color: var(--sup-lime); font-weight: 900; font-size: clamp(22px,3vw,46px); letter-spacing: .01em; text-shadow: 0 0 26px rgba(198,242,60,.55); }
section.about-cat.cat10 .nh2sup-foot::before, section.about-cat.cat10 .nh2sup-foot::after { content: ""; height: 2px; width: clamp(40px,8vw,140px); border-radius: 2px; background: linear-gradient(90deg, rgba(198,242,60,0), var(--sup-lime)); }
section.about-cat.cat10 .nh2sup-foot::after { background: linear-gradient(90deg, var(--sup-lime), rgba(198,242,60,0)); }
@media screen and (max-width: 767px) {
  section.about-cat.cat10 .nh2sup { width: auto; max-width: none; margin-left: 0; transform: none; padding: 24px 16px; }
  section.about-cat.cat10 .nh2sup-body { grid-template-columns: 1fr; gap: 16px; }
  section.about-cat.cat10 .nh2sup-cards { gap: 12px; }
  section.about-cat.cat10 .nh2sup-h2 { font-size: clamp(24px,6.6vw,38px); }
  section.about-cat.cat10 .nh2sup-sub { font-size: clamp(14px,4vw,20px); }
  section.about-cat.cat10 .nh2sup-foot { font-size: clamp(20px,6vw,34px); }
  section.about-cat.cat10 .nh2sup-foot::before,
  section.about-cat.cat10 .nh2sup-foot::after { display: none; }
}
@media screen and (max-width: 380px) {
  section.about-cat.cat10 .nh2sup-cards { grid-template-columns: 1fr; }
}

/* ===== 最小限の手間でエリアNo.1へ（黒×ライム・締めパネル／右カラム＝画像） ===== */
section.about-cat.cat10 .nh2fin {
  --fin-lime: #C6F23C;
  width: min(1560px, calc(100vw - 48px)); max-width: none;
  margin: 0 0 clamp(20px,2.4vw,36px); margin-left: 50%; transform: translateX(-50%);
  box-sizing: border-box;
  background:
    radial-gradient(72% 96% at 84% 50%, rgba(160,230,40,.16) 0%, rgba(160,230,40,0) 56%),
    linear-gradient(180deg, #0a0d07 0%, #050703 100%);
  border: 1px solid rgba(198,242,60,.18); border-radius: clamp(16px,1.6vw,26px);
  padding: clamp(34px,4vw,68px) clamp(24px,3.2vw,60px);
  box-shadow: 0 28px 70px -30px rgba(0,0,0,.9), inset 0 1px 0 rgba(255,255,255,.04);
  font-family: "Shin Go Regular", "Shin Go Light", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
section.about-cat.cat10 .nh2fin-grid { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(0,1fr); gap: clamp(24px,3vw,56px); align-items: center; }
section.about-cat.cat10 .nh2fin-h2 { font-weight: 900; color: #fff; margin: 0 0 clamp(14px,1.6vw,24px); font-size: clamp(34px,4.8vw,76px); line-height: 1.16; letter-spacing: -.02em; }
section.about-cat.cat10 .nh2fin-h2 .hl { color: var(--color-yellow-empha,#FFFC00); text-shadow: 0 2px 18px rgba(255,252,0,.35); }
section.about-cat.cat10 .nh2fin-sub { color: #dfe2d6; font-weight: 800; margin: 0 0 clamp(22px,2.6vw,40px); font-size: clamp(16px,2vw,30px); }
section.about-cat.cat10 .nh2fin-sub .hl { color: var(--color-yellow-empha,#FFFC00); }
section.about-cat.cat10 .nh2fin-pills { display: flex; flex-wrap: wrap; gap: clamp(8px,.9vw,13px); }
section.about-cat.cat10 .nh2fin-pill { display: inline-flex; align-items: center; gap: clamp(7px,.8vw,11px); background: rgba(255,255,255,.045); border: 1px solid rgba(198,242,60,.4); border-radius: clamp(10px,1vw,14px); padding: clamp(11px,1.1vw,16px) clamp(13px,1.3vw,19px); color: #fff; font-weight: 700; font-size: clamp(13px,1.15vw,16.5px); white-space: nowrap; }
section.about-cat.cat10 .nh2fin-pill svg { width: clamp(18px,1.5vw,23px); height: auto; stroke: var(--fin-lime); fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; flex: 0 0 auto; }
section.about-cat.cat10 .nh2fin-media { border-radius: clamp(14px,1.4vw,20px); overflow: hidden; display: block; line-height: 0; }
section.about-cat.cat10 .nh2fin-img { display: block !important; width: 100% !important; height: auto !important; max-width: 100% !important; border-radius: clamp(14px,1.4vw,20px) !important; }
@media screen and (max-width: 880px) {
  section.about-cat.cat10 .nh2fin-grid { grid-template-columns: 1fr; gap: clamp(22px,4vw,32px); }
}
@media screen and (max-width: 767px) {
  section.about-cat.cat10 .nh2fin { width: auto; max-width: none; margin-left: 0; transform: none; padding: 28px 18px; }
  section.about-cat.cat10 .nh2fin-h2 { font-size: clamp(30px,8.4vw,48px); }
  section.about-cat.cat10 .nh2fin-sub { font-size: clamp(15px,4.4vw,22px); }
  section.about-cat.cat10 .nh2fin-pills { flex-direction: column; }
  section.about-cat.cat10 .nh2fin-pill { width: 100%; }
}

@media screen and (max-width: 767px) {
  section.about-cat.cat10 .nh2b { width: auto; max-width: none; margin-left: 0; transform: none; padding: 22px 16px; }
  section.about-cat.cat10 .nh2b-compare { grid-template-columns: 1fr; gap: 4px; }
  section.about-cat.cat10 .nh2b-arrow { transform: rotate(90deg); margin: 2px 0; }
  section.about-cat.cat10 .nh2b-flow { flex-direction: column; align-items: stretch; gap: 8px; padding: 14px 14px; }
  section.about-cat.cat10 .nh2b-flow-arrow { transform: rotate(90deg); }
  section.about-cat.cat10 .nh2b-step { flex: none; }
}
/* スマホ */
@media screen and (max-width: 767px) {
  section.about-cat.cat10 .nh2-hero {
    width: auto; max-width: none; margin-left: 0; transform: none; text-align: center;
    padding: 22px 16px;
  }
  section.about-cat.cat10 .nh2-hero-main { grid-template-columns: 1fr; gap: 18px; }
  section.about-cat.cat10 .nh2-cards { grid-template-columns: 1fr; gap: 16px; padding: 20px 0 0; }
  section.about-cat.cat10 .nh2-card { text-align: left; }
  section.about-cat.cat10 .nh2-h2 { font-size: clamp(26px, 7.4vw, 40px); text-align: center; }
  section.about-cat.cat10 .nh2-sub { text-align: center; }
}

/* ====================== PC fine-tune (>=769px) ====================== */
@media screen and (min-width: 769px) {
  section.about-cat.cat10 .nh1b-br-pc { display: inline; }
}

/* ====================== Tablet / mid (768-1024px) ====================== */
@media screen and (min-width: 768px) and (max-width: 1024px) {
  section.about-cat.cat10 .nh1b-panels { max-width: 100% !important; padding: 0 20px; }
  section.about-cat.cat10 .nh1b-scene-hero      { max-width: 360px; }
  section.about-cat.cat10 .nh1b-scene-multilang { max-width: 380px; }
}

/* ====================== Mobile (<=767px) ====================== */
@media screen and (max-width: 767px) {
  section.about-cat.cat10 .nh1b-panels { gap: 28px !important; padding: 0 4px; }
  /* P1 */
  section.about-cat.cat10 .nh1b-p1 { grid-template-columns: 1fr; }
  section.about-cat.cat10 .nh1b-p1-right { order: -1; }
  section.about-cat.cat10 .nh1b-scene-hero { max-width: 240px; }
  section.about-cat.cat10 .nh1b-stat-num { font-size: clamp(60px, 18vw, 90px); }
  section.about-cat.cat10 .nh1b-stat-unit { font-size: clamp(30px, 9vw, 48px); }
  section.about-cat.cat10 .nh1b-minicard { font-size: 12px; padding: 12px 5px; }
  /* P2 */
  section.about-cat.cat10 .nh1b-p2-head { grid-template-columns: 1fr; }
  section.about-cat.cat10 .nh1b-scene-buried { width: 150px; margin: 4px auto 0; }
  section.about-cat.cat10 .nh1b-issues { grid-template-columns: 1fr; gap: 20px; }
  section.about-cat.cat10 .nh1b-issue { flex-direction: row; align-items: flex-start; text-align: left; padding-top: 16px; gap: 12px; }
  section.about-cat.cat10 .nh1b-issue-no { position: static; transform: none; flex: 0 0 auto; width: 26px; height: 26px; font-size: 13px; }
  section.about-cat.cat10 .nh1b-issue-ttl { margin: 0 0 4px; font-size: 15px; }
  section.about-cat.cat10 .nh1b-issue-txt { font-size: 13px; }
  section.about-cat.cat10 .nh1b-issue-fig { display: none; }
  section.about-cat.cat10 .nh1b-issue-body { flex: 1; align-items: flex-start; }
  /* P3 (legacy multilang — 未使用だが残置) */
  section.about-cat.cat10 .nh1b-p3-grid { grid-template-columns: 1fr; }
  section.about-cat.cat10 .nh1b-p3-right { order: -1; }
  section.about-cat.cat10 .nh1b-scene-multilang { max-width: 250px; }
  section.about-cat.cat10 .nh1b-br-pc { display: none; }
  /* P3b v4：縦積み（ヘッダー→導入前box→▼→導入後box） */
  section.about-cat.cat10 .nh1b-p3b-hdr { margin-bottom: 14px; }
  section.about-cat.cat10 .nh1b-p3b-main {
    grid-template-columns: 1fr; gap: 16px;
    align-items: stretch;
  }
  section.about-cat.cat10 .nh1b-p3b-left { width: 100%; height: auto; }
  section.about-cat.cat10 .nh1b-p3b-before-box { height: auto; }
  section.about-cat.cat10 .nh1b-p3b-h2 { font-size: clamp(24px, 7vw, 36px) !important; }
  section.about-cat.cat10 .nh1b-p3b-sub { font-size: 14px; }
  section.about-cat.cat10 .nh1b-p3b-before-inner { grid-template-columns: 1fr 1fr; gap: 10px; }
  section.about-cat.cat10 .nh1b-p3b-before-ttl { font-size: 14px; }
  section.about-cat.cat10 .nh1b-p3b-before-em { font-size: clamp(20px, 6vw, 30px); }
  section.about-cat.cat10 .nh1b-p3b-before-note { font-size: 11px; }
  /* 矢印：縦向き▼ */
  section.about-cat.cat10 .nh1b-p3b-tri-wrap {
    padding-top: 0; align-items: center; align-self: auto;
  }
  section.about-cat.cat10 .nh1b-p3b-tri {
    border-left: 26px solid transparent;
    border-right: 26px solid transparent;
    border-top: 32px solid #FFFC00;
    border-bottom: none;
  }
  /* 右カラム・導入後box：SP では高さauto、after-wrap を縦積みに */
  section.about-cat.cat10 .nh1b-p3b-right { height: auto; }
  section.about-cat.cat10 .nh1b-p3b-after-box { height: auto; flex: none; }
  section.about-cat.cat10 .nh1b-p3b-after-wrap { flex-direction: column; align-items: flex-start; gap: 10px; flex: none; }
  section.about-cat.cat10 .nh1b-p3b-after-img { width: 100%; max-width: 260px; flex: none; }
  section.about-cat.cat10 .nh1b-p3b-after-ttl { font-size: 16px; }
  section.about-cat.cat10 .nh1b-p3b-after-hl { font-size: 18px; }
  section.about-cat.cat10 .nh1b-p3b-after-note { font-size: 12px; }
  /* 効果カード：1列 */
  section.about-cat.cat10 .nh1b-p3b-effects { grid-template-columns: 1fr; gap: 10px; }
  section.about-cat.cat10 .nh1b-p3b-effect { padding: 14px 16px; }
  section.about-cat.cat10 .nh1b-p3b-effect-ttl { font-size: 16px; }
  section.about-cat.cat10 .nh1b-p3b-effect-txt { font-size: 12.5px; }
  /* 効果バー：縦積み＋数値3行 */
  section.about-cat.cat10 .nh1b-p3b-bar { grid-template-columns: 1fr; gap: 14px; text-align: center; padding: 18px 16px; }
  section.about-cat.cat10 .nh1b-p3b-bar-label { justify-content: center; white-space: normal; font-size: 16px; }
  section.about-cat.cat10 .nh1b-p3b-stats { grid-template-columns: 1fr; gap: 0; }
  section.about-cat.cat10 .nh1b-p3b-stat { flex-direction: row; align-items: center; justify-content: center; gap: 8px; padding: 12px 0; }
  section.about-cat.cat10 .nh1b-p3b-stat + .nh1b-p3b-stat::before { left: 8%; right: 8%; top: 0; bottom: auto; width: auto; height: 1px; }
  section.about-cat.cat10 .nh1b-p3b-stat-name { font-size: 14px; margin-bottom: 0; min-width: 8.4em; text-align: right; }
  section.about-cat.cat10 .nh1b-p3b-stat-fig { font-size: clamp(38px, 12vw, 58px); }
  section.about-cat.cat10 .nh1b-p3b-stat-unit { font-size: 24px; }
  section.about-cat.cat10 .nh1b-p3b-stat-suf { font-size: 12px; align-self: center; margin-top: 0; }
  /* P4 */
  section.about-cat.cat10 .nh1b-results { grid-template-columns: 1fr; gap: 12px; }
  section.about-cat.cat10 .nh1b-result { flex-direction: row; align-items: center; justify-content: flex-start; gap: 14px; text-align: left; padding: 16px 20px; }
  section.about-cat.cat10 .nh1b-result-ico { margin-bottom: 0; width: 50px; }
  section.about-cat.cat10 .nh1b-result-figure { font-size: clamp(44px, 12vw, 64px); }
  section.about-cat.cat10 .nh1b-result-unit { font-size: 18px; }
  section.about-cat.cat10 .nh1b-result-num { margin-left: auto; }
  /* P5 */
  section.about-cat.cat10 .nh1b-summary { grid-template-columns: repeat(2,1fr); }
  section.about-cat.cat10 .nh1b-sumcard { font-size: 13px; padding: 18px 8px; }
  section.about-cat.cat10 .nh1b-ribbon-final { font-size: clamp(15px, 4.5vw, 22px); }
}

/* 導入後：完成版画像1枚（nh1b_p3b_after2）を使用 */
section.about-cat.cat10 .nh1b-p3b-right { display: flex !important; align-items: center !important; justify-content: center !important; background: transparent !important; border: 0 !important; padding: 0 !important; box-shadow: none !important; height: auto !important; }
/* 導入後画像：黄色background(bundle由来)を除去し、#76の黄色枠線(角丸)＋暗い内側に */
section.about-cat.cat10 .nh1b-p3b-after2 {
  display: block !important;
  width: 100% !important;
  max-width: 640px !important;
  height: auto !important;
  box-sizing: border-box !important;
  background: #0c0c0e !important;
  background-color: #0c0c0e !important;
  background-image: none !important;
  border: 3px solid #FFFC00 !important;
  border-radius: 20px !important;
  padding: clamp(12px, 1.3vw, 18px) !important;
  box-shadow: 0 0 24px -6px rgba(255,252,0,.30) !important;
}

/* ===== Panel 3c（多言語/インバウンド）— Panel3の子クラスを流用し、差分のみ ===== */
/* 見出し1行目が長いので少し小さめ。導入後画像を大きく見せるため右カラムを広げる */
section.about-cat.cat10 .nh1b-p3c .nh1b-p3b-main { grid-template-columns: minmax(0, 1.5fr) auto minmax(0, 1fr); }
section.about-cat.cat10 .nh1b-p3c .nh1b-p3b-h2 { font-size: clamp(25px, 2.85vw, 50px) !important; }

/* 導入後：この画像はglobe背景込みの完成画 → 枠線/余白を外して画像を最大化 */
section.about-cat.cat10 .nh1b-p3c .nh1b-p3b-after2 {
  border: 0 !important;
  border-radius: 12px !important;
  padding: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  max-width: 760px !important;
}

/* 導入前：ミニGoogleカード + ×課題の2カラム */
section.about-cat.cat10 .nh1b-p3c-binner {
  display: grid; grid-template-columns: 0.96fr 1.04fr; gap: clamp(12px, 1.5vw, 22px);
  align-items: center; background: transparent !important;
}
section.about-cat.cat10 .nh1b-p3c-bcard {
  background: #22222b !important; background-color: #22222b !important;
  border: 1px solid rgba(255,255,255,.10); border-radius: 12px;
  padding: clamp(10px, 1vw, 14px); display: flex; flex-direction: column; gap: 9px;
  box-shadow: 0 8px 22px -12px rgba(0,0,0,.8);
}
section.about-cat.cat10 .nh1b-p3c-bcard-top { display: flex; gap: 12px; align-items: flex-start; background: transparent !important; }
section.about-cat.cat10 .nh1b-p3c-bcard-photo {
  width: clamp(56px, 4.9vw, 82px); height: clamp(56px, 4.9vw, 82px); flex: 0 0 auto;
  object-fit: cover; border-radius: 10px; display: block; background: transparent !important;
}
section.about-cat.cat10 .nh1b-p3c-bcard-meta { display: flex; flex-direction: column; gap: 3px; min-width: 0; background: transparent !important; }
section.about-cat.cat10 .nh1b-p3c-bcard-name { margin: 0; font-weight: 800; color: #fff; line-height: 1.18; font-size: clamp(13px, 1.35vw, 20px); background: transparent !important; overflow-wrap: normal !important; word-break: keep-all !important; white-space: nowrap; }
section.about-cat.cat10 .nh1b-p3c-bcard-rate { margin: 0; font-size: clamp(12px, 1.15vw, 16px); color: #d6d6dd; background: transparent !important; }
section.about-cat.cat10 .nh1b-p3c-bcard-rate b { color: #fff; }
section.about-cat.cat10 .nh1b-p3c-stars { color: #f5b50a; letter-spacing: 1px; }
section.about-cat.cat10 .nh1b-p3c-cnt { color: #9a9aa4; }
section.about-cat.cat10 .nh1b-p3c-bcard-sub { margin: 0; font-size: clamp(11px, 1.05vw, 14px); color: #9a9aa4; line-height: 1.3; background: transparent !important; }
section.about-cat.cat10 .nh1b-p3c-bcard-icons { display: flex; gap: clamp(12px, 1.4vw, 20px); color: #7d7d87; padding-top: 2px; background: transparent !important; }
section.about-cat.cat10 .nh1b-p3c-bcard-icons svg { width: clamp(18px, 1.6vw, 24px); height: clamp(18px, 1.6vw, 24px); }

section.about-cat.cat10 .nh1b-p3c-bullets { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: clamp(8px, 1vw, 14px); background: transparent !important; }
section.about-cat.cat10 .nh1b-p3c-bullets li { display: flex; gap: 8px; align-items: flex-start; color: #e8e8ee; font-weight: 600; line-height: 1.4; font-size: clamp(12px, 1.25vw, 18px); background: transparent !important; }
section.about-cat.cat10 .nh1b-p3c-bullets li span { background: transparent !important; }
section.about-cat.cat10 .nh1b-p3c-x { color: #ff5252; font-weight: 900; flex: 0 0 auto; }

section.about-cat.cat10 .nh1b-p3c-note { margin: clamp(10px, 1.2vw, 16px) 0 0; text-align: center; color: #8a8a94; font-size: clamp(11px, 1.05vw, 14px); background: transparent !important; }

/* =========================================================
   【PC/タブレット ≥768px】kuchi-collect：画像準拠の赤パネル
   バッジ(白ピル) + 大見出し(白×黄/口コミ赤グロー) + 3カード横並び
   + 検索ユーザー導く ワイドカード。旧 title-area05 はPCでも非表示。
   ========================================================= */
@media screen and (min-width: 768px) {
  /* 旧テキスト版 title-area05 はPCでも非表示（kuchi-collect が置換） */
  section.about-cat.cat09 .title-area.title-area05 { display: none !important; }

  /* 赤パネル本体 */
  section.about-cat.cat09 .kuchi-collect {
    display: block !important;
    max-width: 1180px !important;
    margin: clamp(36px,4vw,56px) auto !important;
    padding: clamp(44px,4.4vw,68px) clamp(36px,4vw,64px) clamp(48px,4.6vw,72px) !important;
    background: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  /* バッジ（白角丸ピル・中央・うっすらグロー） */
  section.about-cat.cat09 .kuchi-collect .kc-badge {
    display: inline-block !important;
    margin: 0 0 clamp(22px,2.4vw,34px) !important;
    background: #fff !important; color: #d70c18 !important;
    font-weight: 900 !important; font-size: clamp(18px,1.5vw,26px) !important;
    line-height: 1.4 !important; padding: 14px 38px !important;
    border-radius: 999px !important; letter-spacing: .01em !important;
    box-shadow: 0 0 0 7px rgba(255,255,255,.10), 0 8px 22px rgba(0,0,0,.2) !important;
  }
  section.about-cat.cat09 .kuchi-collect .kc-badge .kc-bar { color: #f0a6aa !important; margin: 0 .5em !important; font-weight: 400 !important; }

  /* 見出し */
  section.about-cat.cat09 .kuchi-collect .kc-head {
    position: relative !important; display: inline-block !important;
    margin: 0 auto clamp(16px,1.6vw,22px) !important;
    color: #fff !important; font-weight: 900 !important;
    font-size: clamp(34px,3.9vw,60px) !important; line-height: 1.22 !important;
    letter-spacing: -.02em !important; text-align: center !important;
    text-shadow: 0 3px 10px rgba(0,0,0,.25) !important;
    word-break: keep-all !important;
  }
  /* 口コミ＝赤＋グロー */
  section.about-cat.cat09 .kuchi-collect .kc-head .kc-rd {
    color: #ff2424 !important;
    text-shadow: 0 0 18px rgba(255,40,40,.85), 0 0 36px rgba(255,30,30,.5) !important;
  }
  /* PCでは下線版 kc-u は使わずプレーン白 */
  section.about-cat.cat09 .kuchi-collect .kc-head .kc-u { text-decoration: none !important; color: #fff !important; }
  /* 検索順位が向上！＝黄色 */
  section.about-cat.cat09 .kuchi-collect .kc-head .hl { color: #FFFC00 !important; text-shadow: 0 3px 10px rgba(0,0,0,.3) !important; }
  /* コミック風 黄色スパーク（左上 / 右下） */
  section.about-cat.cat09 .kuchi-collect .kc-head::before,
  section.about-cat.cat09 .kuchi-collect .kc-head::after {
    content: "" !important; position: absolute !important;
    width: clamp(32px,3.2vw,52px) !important; height: clamp(44px,4.4vw,70px) !important;
    background-repeat: no-repeat !important; background-position: center !important; background-size: contain !important;
    pointer-events: none !important;
  }
  section.about-cat.cat09 .kuchi-collect .kc-head::before {
    left: clamp(-58px,-4vw,-34px) !important; top: -10px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 56'%3E%3Cg stroke='%23FFD400' stroke-width='5' stroke-linecap='round' fill='none'%3E%3Cline x1='32' y1='12' x2='6' y2='2'/%3E%3Cline x1='30' y1='28' x2='2' y2='28'/%3E%3Cline x1='32' y1='44' x2='6' y2='54'/%3E%3C/g%3E%3C/svg%3E") !important;
  }
  section.about-cat.cat09 .kuchi-collect .kc-head::after {
    right: clamp(-58px,-4vw,-34px) !important; bottom: -10px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 56'%3E%3Cg stroke='%23FFD400' stroke-width='5' stroke-linecap='round' fill='none'%3E%3Cline x1='8' y1='12' x2='34' y2='2'/%3E%3Cline x1='10' y1='28' x2='38' y2='28'/%3E%3Cline x1='8' y1='44' x2='34' y2='54'/%3E%3C/g%3E%3C/svg%3E") !important;
  }

  /* サブ */
  section.about-cat.cat09 .kuchi-collect .kc-sub {
    max-width: 920px !important; margin: 0 auto clamp(28px,3vw,42px) !important;
    color: #fff !important; font-weight: 700 !important;
    font-size: clamp(17px,1.4vw,24px) !important; line-height: 1.6 !important;
    text-align: center !important; text-shadow: 0 1px 4px rgba(0,0,0,.2) !important;
  }

  /* 3カード（横並び） */
  section.about-cat.cat09 .kuchi-collect .kc-cards {
    display: grid !important; grid-template-columns: repeat(3, 1fr) !important;
    gap: clamp(18px,1.8vw,28px) !important; margin: 0 0 clamp(40px,3.6vw,52px) !important;
    transform: scale(1.1) !important; transform-origin: center top !important;
  }
  section.about-cat.cat09 .kuchi-collect .kc-card {
    display: flex !important; align-items: center !important; gap: clamp(14px,1.4vw,22px) !important;
    background: #fff !important; border-radius: 18px !important;
    padding: clamp(20px,2vw,30px) clamp(18px,1.8vw,28px) !important;
    box-shadow: 0 10px 26px rgba(0,0,0,.18) !important;
    box-sizing: border-box !important; text-align: left !important;
  }
  section.about-cat.cat09 .kuchi-collect .kc-ico {
    flex: 0 0 auto !important; width: clamp(64px,6vw,92px) !important; height: clamp(64px,6vw,92px) !important;
    border-radius: 50% !important; background-color: #fde7ea !important;
    background-repeat: no-repeat !important; background-position: center !important; background-size: 48% !important;
  }
  /* 継続投稿アイコンを画像準拠の「循環矢印＋会話ドット」に */
  section.about-cat.cat09 .kuchi-collect .kc-ico--chart {
    background-size: 56% !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='%23d70c18' stroke-width='2.1' stroke-linecap='round'%3E%3Cpath d='M19.4 10.6a7.5 7.5 0 0 0-12.9-4'/%3E%3Cpath d='M4.6 13.4a7.5 7.5 0 0 0 12.9 4'/%3E%3C/g%3E%3Cpath d='M6.7 2.2 4.3 6.4l4.6.3z' fill='%23d70c18'/%3E%3Cpath d='M17.3 21.8l2.4-4.2-4.6-.3z' fill='%23d70c18'/%3E%3Cg fill='%23d70c18'%3E%3Ccircle cx='9' cy='12' r='1.15'/%3E%3Ccircle cx='12' cy='12' r='1.15'/%3E%3Ccircle cx='15' cy='12' r='1.15'/%3E%3C/g%3E%3C/svg%3E") !important;
  }
  section.about-cat.cat09 .kuchi-collect .kc-ctxt { min-width: 0 !important; flex: 1 1 auto !important; }
  section.about-cat.cat09 .kuchi-collect .kc-ttl {
    color: #d70c18 !important; font-weight: 900 !important;
    font-size: clamp(22px,2vw,30px) !important; display: inline-block !important;
    border-bottom: 5px solid #FFD400 !important; padding-bottom: 3px !important;
    margin-bottom: 8px !important; line-height: 1.2 !important;
  }
  section.about-cat.cat09 .kuchi-collect .kc-desc {
    margin: 0 !important; color: #555 !important; font-weight: 600 !important;
    font-size: clamp(15px,1.25vw,19px) !important; line-height: 1.55 !important;
  }

  /* 下部ワイドカード（検索ユーザーを自店舗へ導く） */
  section.about-cat.cat09 .kuchi-collect .kc-bottom {
    display: flex !important; align-items: center !important; gap: clamp(20px,2.2vw,34px) !important;
    background: #fff !important; border-radius: 18px !important;
    padding: clamp(22px,2.2vw,32px) clamp(28px,2.6vw,44px) !important;
    box-shadow: 0 10px 26px rgba(0,0,0,.18) !important;
    box-sizing: border-box !important; text-align: left !important; margin-top: 0 !important;
    margin-bottom: 34px !important;
  }
  section.about-cat.cat09 .kuchi-collect .kc-bico {
    flex: 0 0 auto !important; width: clamp(72px,6.6vw,104px) !important; height: clamp(72px,6.6vw,104px) !important;
    border-radius: 50% !important; background-color: #d70c18 !important;
    background-repeat: no-repeat !important; background-position: center !important; background-size: 50% !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.6' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6'/%3E%3Cline x1='15' y1='15' x2='20.5' y2='20.5'/%3E%3C/svg%3E") !important;
  }
  section.about-cat.cat09 .kuchi-collect .kc-btxt {
    flex: 1 1 auto !important; min-width: 0 !important; text-align: left !important;
    padding-left: clamp(20px,2.2vw,34px) !important; border-left: 3px solid #f0c9cc !important;
  }
  section.about-cat.cat09 .kuchi-collect .kc-bttl {
    color: #d70c18 !important; font-weight: 900 !important;
    font-size: clamp(26px,2.6vw,42px) !important; display: inline-block !important;
    border-bottom: 6px solid #FFD400 !important; padding-bottom: 4px !important; line-height: 1.25 !important;
  }
  section.about-cat.cat09 .kuchi-collect .kc-bdesc {
    margin: 12px 0 0 !important; color: #444 !important; font-weight: 600 !important;
    font-size: clamp(16px,1.4vw,22px) !important; line-height: 1.5 !important;
  }
}

/* =========================================================
   【PC ≥768px】cat03 POINT01-03 カードのテキストを1.2倍に
   番号15→18 / 見出し41.8→50 / 本文22→26.4 / キャプション21→25.2
   ========================================================= */
@media screen and (min-width: 768px) {
  section.about-cat.cat03 .cntarea .cntbox .cnt-num { font-size: clamp(15px, 1.25vw, 20px) !important; }
  section.about-cat.cat03 .cntarea .cntbox .cnt-ttl .ttl-pc { font-size: clamp(38px, 3.48vw, 58px) !important; }
  section.about-cat.cat03 .cntarea .cntbox .pt-body { font-size: clamp(22px, 1.83vw, 28px) !important; }
  section.about-cat.cat03 .cntarea .cntbox .pt-cap,
  section.about-cat.cat03 .cntarea .cntbox .pt-cap .cap-key { font-size: clamp(20px, 1.62vw, 24px) !important; }
  /* キャプションは非折返しflexのため、拡大で語中改行しないよう行送りを許可＋語中分割禁止 */
  section.about-cat.cat03 .cntarea .cntbox .pt-cap { flex-wrap: wrap !important; word-break: keep-all !important; }
}

/* =========================================================
   end of mobile-modern.css
   ========================================================= */

/* 2026-06-07: 「口コミの書き方」AIサポートのスマホモックを端末らしく見せる */
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone {
  isolation: isolate !important;
  overflow: visible !important;
  background: linear-gradient(145deg, #313131 0%, #090909 45%, #000 72%, #3a3a3a 100%) !important;
  border: 1px solid rgba(255,255,255,.28) !important;
  border-radius: clamp(38px, 4vw, 54px) !important;
  padding: clamp(10px, 1.15vw, 14px) !important;
  box-shadow:
    0 34px 70px rgba(0,0,0,.58),
    0 10px 18px rgba(0,0,0,.32),
    inset 0 0 0 1px rgba(255,255,255,.18),
    inset 0 0 0 5px rgba(0,0,0,.72) !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone::before,
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone::after {
  content: "" !important;
  position: absolute !important;
  display: block !important;
  background: linear-gradient(180deg, #4b4b4b, #070707 52%, #2b2b2b) !important;
  z-index: -1 !important;
  pointer-events: none !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone::before {
  left: -5px !important;
  top: 22% !important;
  width: 6px !important;
  height: 46px !important;
  border-radius: 8px 0 0 8px !important;
  box-shadow: 0 66px 0 #151515 !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone::after {
  right: -5px !important;
  top: 31% !important;
  width: 6px !important;
  height: 78px !important;
  border-radius: 0 8px 8px 0 !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-notch {
  top: clamp(15px, 1.4vw, 19px) !important;
  width: 34% !important;
  height: clamp(20px, 2vw, 28px) !important;
  border-radius: 999px !important;
  background: #050505 !important;
  box-shadow:
    inset 0 1px 1px rgba(255,255,255,.14),
    inset 0 -1px 2px rgba(0,0,0,.8),
    0 1px 2px rgba(0,0,0,.55) !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-notch::after {
  content: "" !important;
  position: absolute !important;
  right: 15% !important;
  top: 50% !important;
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  transform: translateY(-50%) !important;
  background: radial-gradient(circle at 35% 35%, #27364a, #07090c 72%) !important;
  box-shadow: inset 0 0 2px rgba(95,145,255,.5) !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-screen {
  background: #fff !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: clamp(28px, 3vw, 40px) !important;
  box-shadow:
    inset 0 0 0 1px rgba(0,0,0,.55),
    inset 0 0 18px rgba(255,255,255,.25) !important;
  overflow: hidden !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-screen::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  pointer-events: none !important;
  background:
    linear-gradient(115deg, rgba(255,255,255,.42) 0%, rgba(255,255,255,.12) 18%, rgba(255,255,255,0) 38%),
    radial-gradient(circle at 82% 12%, rgba(255,255,255,.22), rgba(255,255,255,0) 30%) !important;
  mix-blend-mode: screen !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-screen::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  bottom: 8px !important;
  width: 34% !important;
  height: 4px !important;
  border-radius: 999px !important;
  transform: translateX(-50%) !important;
  background: rgba(0,0,0,.24) !important;
  z-index: 3 !important;
  pointer-events: none !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-screen > .ksol-swipe-video {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transform: scale(1.006) !important;
  background: #fff !important;
}
@media (min-width: 768px) {
  section.about-cat.cat09 .kuchi-sol-banner .ksol-phone {
    transform: perspective(900px) rotateY(-4deg) rotateX(1deg) !important;
  }
}
@media (max-width: 767px) {
  section.about-cat.cat09 .kuchi-sol-banner .ksol-phone {
    width: clamp(238px, 62vw, 318px) !important;
    border-radius: 40px !important;
    padding: 10px !important;
  }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-screen {
    border-radius: 29px !important;
  }
}
/* 2026-06-07: supplied video already contains iPhone UI; fit the frame to that asset instead of overlaying another notch */
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone {
  width: clamp(248px, 24vw, 306px) !important;
  padding: 7px !important;
  border-radius: clamp(42px, 4.2vw, 52px) !important;
  background: linear-gradient(145deg, #2b2b2b 0%, #050505 48%, #000 74%, #343434 100%) !important;
  border: 1px solid rgba(255,255,255,.24) !important;
  box-shadow:
    0 34px 68px rgba(0,0,0,.54),
    0 9px 18px rgba(0,0,0,.28),
    inset 0 0 0 1px rgba(255,255,255,.16),
    inset 0 0 0 4px rgba(0,0,0,.7) !important;
  transform: none !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-notch {
  display: none !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone::before {
  left: -4px !important;
  top: 22% !important;
  width: 5px !important;
  height: 42px !important;
  border-radius: 7px 0 0 7px !important;
  box-shadow: 0 62px 0 #151515 !important;
  z-index: 0 !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone::after {
  right: -4px !important;
  top: 34% !important;
  width: 5px !important;
  height: 72px !important;
  border-radius: 0 7px 7px 0 !important;
  z-index: 0 !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-screen {
  aspect-ratio: 390 / 844 !important;
  background: #050505 !important;
  border-radius: clamp(34px, 3.6vw, 44px) !important;
  border: 1px solid rgba(255,255,255,.2) !important;
  box-shadow:
    inset 0 0 0 2px rgba(255,255,255,.08),
    inset 0 0 0 1px rgba(0,0,0,.55) !important;
  overflow: hidden !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-screen::before,
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-screen::after {
  display: none !important;
  content: none !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-screen > .ksol-swipe-video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
  transform: none !important;
  display: block !important;
  background: #050505 !important;
}
@media (max-width: 767px) {
  section.about-cat.cat09 .kuchi-sol-banner .ksol-phone {
    width: clamp(248px, 68vw, 302px) !important;
    padding: 7px !important;
    border-radius: 44px !important;
  }
  section.about-cat.cat09 .kuchi-sol-banner .ksol-phone-screen {
    border-radius: 36px !important;
  }
}
/* 2026-06-07: remove mismatched white halo behind the AI support phone mock */
section.about-cat.cat09 .kuchi-sol-banner .ksol-right {
  overflow: visible !important;
  background: transparent !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-right::before {
  content: none !important;
  display: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
section.about-cat.cat09 .kuchi-sol-banner .ksol-phone {
  box-shadow:
    0 34px 68px rgba(0,0,0,.50),
    0 12px 24px rgba(85,0,0,.22),
    inset 0 0 0 1px rgba(255,255,255,.16),
    inset 0 0 0 4px rgba(0,0,0,.7) !important;
}