/* ============================================================
     ITERU LP ― namespaced under .iteru-lp for WordPress/Lightning
     portability. No bare element selectors (body/h1/p/a/section...)
     are used outside this namespace.
     ============================================================ */
  /* CSS変数はLightningや他ページへ漏出させないため :root ではなく .iteru-lp スコープに限定する
     （WordPress移植時に変更。Static版では:rootだったが、.iteru-lpは全コンテンツの祖先要素であり
     変数の継承先は変わらないため、Visual差分は発生しない） */
  .iteru-lp{
    --iteru-primary:#24476B;
    --iteru-dark:#12233A;
    --iteru-text:#1C2128;
    --iteru-sub:#58616C;
    --iteru-bg:#FFFFFF;
    --iteru-bg-light:#F5F6F8;
    --iteru-border:#E1E4E9;
    --iteru-cta:#2554A6;
    --iteru-cta-hover:#1B3E7D;
    --iteru-placeholder-bg:#E9EBEF;
    --iteru-placeholder-text:#8A93A0;
  }

  /* Reset is scoped to the LP subtree only ―――――――――――――――― */
  .iteru-lp, .iteru-lp *, .iteru-lp *::before, .iteru-lp *::after{
    box-sizing:border-box;
  }
  /* font-size:16pxを明示。Static版はhtml/bodyに何のfont-size指定もないため
     ブラウザ既定の16pxがそのまま基準になっていたが、Lightningは
     body,html{font-size:calc(16px * .875)}（=14px）を一部の狭幅レイアウトで適用するため、
     font-sizeを自身で指定していない子要素（ul/li/table/details/img/header/footerなど）の
     フォントサイズ・line-heightがLightning側の狭幅時にだけ縮小してしまう。
     .iteru-lp自身に16pxを明示することでこの継承元の変動を遮断する。 */
  .iteru-lp{
    font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
    font-size:16px;
    color:var(--iteru-text);
    background:var(--iteru-bg);
    line-height:1.9;
    -webkit-font-smoothing:antialiased;
    margin:0;
  }
  .iteru-lp img{max-width:100%;display:block;}
  .iteru-lp a{color:inherit;text-decoration:none;}
  .iteru-lp ul{margin:0;padding:0;list-style:none;}
  /* padding:0 / border-top:0 / border-bottom:0を明示。Lightningの
     h2:where(:not(.wp-block-post-title)){padding:.5em 0;border-top:2px solid var(--vk-color-primary);
     border-bottom:1px solid var(--vk-color-border-hr)}が全h2に直接指定されており、
     各見出しセレクタはmargin/font系のみ指定してpadding/borderに触れていないため、
     このLightning側の値がそのまま残ってしまう（Static版には存在しない青線として可視化される）。
     margin/font-size/line-height等、既にStatic版と一致している値には触れず、
     漏れているpadding/borderの2種類のみを打ち消す。 */
  .iteru-lp h2{padding:0;border-top:0;border-bottom:0;}
  /* padding:0 / border-bottom:0を明示。Lightningの
     h3:where(:not(.wp-block-post-title)){padding:0 0 .5em;border-bottom:1px solid var(--vk-color-border)}
     が全h3に直接指定されており、h2と同じ理由でStatic版にはない下線・余白が残ってしまうため
     打ち消す（Lightning側はborder-topを指定していないためborder-topの上書きは不要）。 */
  .iteru-lp h3{padding:0;border-bottom:0;}
  /* content:noneを明示。Lightningのh3:where(){position:relative}に付随して、
     .sub-section-title::after相当のルールがh3へ content:"." / position:absolute /
     height:1px;overflow:hidden の疑似要素を生成しており、border-bottomの位置に
     幅126px前後の細い装飾線として残ってしまうため無効化する。 */
  .iteru-lp h3::after{content:none;}
  /* position:staticを明示。Lightningのh3ルールがposition:relativeを付与しており、
     ::afterを無効化した後も数値上はStatic版（position:static）と異なるため、
     プロパティレベルで完全一致させる（視覚的な影響はないが明示的に揃える）。 */
  .iteru-lp h3{position:static;}
  .iteru-num{font-family:"Spectral",serif;font-feature-settings:"tnum";}
  .iteru-wrap{max-width:1140px;margin:0 auto;padding:0 80px;}

  /* ---------- Japanese typography QA ----------
     方針：H1/H2/重要なH3はtext-wrap:balanceで行の均等化、
     Bodyはtext-wrap:prettyで孤立行（widow）を軽減する。
     どちらも未対応ブラウザでは通常のnormal wrapに自然にフォールバックするため、
     機能を壊さない加算的な改善として使用する。
     balance/prettyだけでは解決できない意味単位の分断（複合語の中途半端な改行等）は
     .iteru-nobreakで個別に保護する。 */
  @supports (text-wrap: balance){
    .iteru-hero__title,
    .iteru-problems__title,
    .iteru-about__core,
    .iteru-service__head h2,
    .iteru-service__row-title,
    .iteru-benefits__title,
    .iteru-comparison__head h2,
    .iteru-support__head h2,
    .iteru-pricing__head h2,
    .iteru-cta__title{
      text-wrap:balance;
    }
  }
  @supports (text-wrap: pretty){
    .iteru-hero__lead,
    .iteru-problems__lead,
    .iteru-problems__item-text,
    .iteru-problems__turn,
    .iteru-about__sub,
    .iteru-service__head p,
    .iteru-service__row-text,
    .iteru-service__menu-item-text,
    .iteru-benefits__shift-before p,
    .iteru-benefits__shift-after p,
    .iteru-comparison__head p,
    .iteru-support__head p,
    .iteru-support__flow-item,
    .iteru-pricing__head p,
    .iteru-pricing__note,
    .iteru-pricing__list li,
    .iteru-comparison__table td,
    .iteru-comparison__acc-row p,
    .iteru-cta__lead{
      text-wrap:pretty;
    }
  }
  .iteru-lp .iteru-nobreak{white-space:nowrap;}

  /* ---------- iteru-header ---------- */
  .iteru-header{
    position:sticky;top:0;z-index:50;
    background:rgba(255,255,255,0.94);
    backdrop-filter:saturate(180%) blur(8px);
    border-bottom:1px solid transparent;
  }
  .iteru-header.is-scrolled{
    border-bottom-color:var(--iteru-border);
  }
  @media (prefers-reduced-motion: no-preference){
    .iteru-header{transition:border-bottom-color .2s ease;}
  }
  .iteru-header__inner{
    max-width:1280px;margin:0 auto;padding:0 80px;
    height:76px;display:flex;align-items:center;justify-content:space-between;
  }
  .iteru-header__logo img{height:30px;width:auto;}

  .iteru-btn{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    font-weight:700;font-size:15px;padding:14px 30px;border-radius:999px;
    background:var(--iteru-cta);border:none;cursor:pointer;
  }
  /* .iteru-lp a{color:inherit} は (0,1,1) の詳細度を持つため、.iteru-btn単体(0,1,0)では負ける。
     .iteru-lp .iteru-btn(0,2,0)まで詳細度を上げ、リンクの状態（visited/hover/focus-visible）も
     すべて明示することで、!importantを使わずに「常に白文字」を保証する。 */
  .iteru-lp .iteru-btn,
  .iteru-lp .iteru-btn:visited,
  .iteru-lp .iteru-btn:hover,
  .iteru-lp .iteru-btn:focus-visible{
    color:#fff;text-decoration:none;
  }
  .iteru-btn:hover{background:var(--iteru-cta-hover);}
  .iteru-btn:focus-visible{outline:2px solid var(--iteru-cta);outline-offset:2px;}
  @media (prefers-reduced-motion: no-preference){
    .iteru-btn{transition:background-color .15s ease;}
  }
  .iteru-btn--small{padding:10px 22px;font-size:13px;}
  .iteru-btn--block{width:100%;}

  /* ---------- iteru-hero (Section 1) ---------- */
  .iteru-hero{width:100%;overflow:hidden;background:var(--iteru-bg);}
  .iteru-hero__flex{display:flex;align-items:stretch;}
  .iteru-hero__text{
    flex:0 0 52%;max-width:52%;
    padding:120px 40px 96px 80px;
    display:flex;flex-direction:column;justify-content:center;
  }
  .iteru-hero__label{display:flex;align-items:center;gap:10px;margin-bottom:20px;}
  .iteru-hero__label-rule{width:4px;height:14px;background:var(--iteru-primary);}
  .iteru-hero__label-text{
    font-size:13px;font-weight:700;letter-spacing:.06em;color:var(--iteru-primary);
  }
  .iteru-hero__title{
    font-size:44px;font-weight:700;line-height:1.5;color:var(--iteru-text);
    max-width:480px;margin:0 0 24px;
  }
  .iteru-hero__lead{
    font-size:16px;color:var(--iteru-sub);max-width:420px;margin:0;line-height:1.9;
  }
  .iteru-hero__cta-row{margin-top:32px;}
  .iteru-hero__note{display:block;margin-top:16px;font-size:13px;color:var(--iteru-sub);}
  .iteru-hero__photo{flex:0 0 48%;max-width:48%;position:relative;min-height:560px;}
  .iteru-hero__photo-placeholder{
    position:absolute;inset:0;background:var(--iteru-placeholder-bg);
    display:flex;align-items:center;justify-content:center;text-align:center;
  }
  .iteru-hero__photo-placeholder-text{
    font-size:13px;color:var(--iteru-placeholder-text);max-width:200px;line-height:1.7;
  }
  .iteru-hero__photo-img,
  .iteru-service__row-media-img{
    position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  }
  .iteru-hero__photo-img{object-position:center 30%;}

  /* ---------- iteru-problems (Section 2) ---------- */
  .iteru-problems{background:var(--iteru-bg-light);padding:128px 0 96px;}
  .iteru-problems__title{
    font-size:32px;font-weight:700;line-height:1.4;color:var(--iteru-text);
    max-width:640px;margin:0 0 20px;
  }
  /* line-height:1.9を明示（理由は.iteru-cta__noteのコメント参照：Lightningのp{line-height:1.7em}が
     直接指定のため、.iteru-lpからの継承(1.9)より優先されてしまうことを防ぐ）。 */
  .iteru-problems__lead{font-size:16px;line-height:1.9;color:var(--iteru-sub);max-width:560px;margin:0;}
  .iteru-problems__list{max-width:780px;margin:56px 0 0;}
  .iteru-problems__item{
    display:flex;align-items:baseline;gap:28px;margin:0;
    padding:32px 0;border-top:1px solid var(--iteru-border);
  }
  .iteru-problems__item:last-child{border-bottom:1px solid var(--iteru-border);}
  .iteru-problems__item-num{
    font-size:20px;font-weight:600;color:var(--iteru-primary);flex:0 0 auto;width:32px;
  }
  .iteru-problems__item-text{font-size:16px;color:var(--iteru-text);margin:0;line-height:1.9;}
  /* margin-bottomはStatic版実測値（20px＝font-size:20pxの既定1em相当）を明示し、
     Lightningのp{margin-bottom:1.5rem}干渉を遮断する。860px以下ではfont-sizeが17pxに
     変わるため、モバイル側の対応するルールでも17pxを別途明示している。 */
  .iteru-problems__turn{
    margin-top:48px;margin-bottom:20px;font-size:20px;font-weight:700;color:var(--iteru-text);
    max-width:480px;line-height:1.7;
  }

  /* ---------- iteru-about (Section 3) ---------- */
  .iteru-about{background:var(--iteru-bg);padding:160px 0;}
  .iteru-about__inner{max-width:640px;margin:0 auto;text-align:center;}
  .iteru-about__mark{margin:0 auto 24px;display:flex;justify-content:center;}
  .iteru-about__mark img{opacity:.6;}
  .iteru-about__rule{width:60px;height:1px;background:var(--iteru-border);margin:0 auto 40px;}
  .iteru-about__core{
    font-size:36px;font-weight:700;line-height:1.5;letter-spacing:.02em;
    color:var(--iteru-primary);margin:0;
  }
  .iteru-about__sub{
    font-size:16px;color:var(--iteru-sub);max-width:480px;margin:24px auto 0;line-height:1.9;
  }


  /* ---------- iteru-header nav (Phase2で追加) ---------- */
  .iteru-header__nav{display:flex;align-items:center;gap:32px;}
  .iteru-header__nav a{
    font-size:14px;font-weight:700;color:var(--iteru-sub);white-space:nowrap;
  }
  .iteru-header__nav a:hover{color:var(--iteru-primary);}
  .iteru-header__actions{display:flex;align-items:center;gap:24px;}

  /* ---------- iteru-service (Section 4：何をしてくれるのか) ---------- */
  .iteru-service{background:var(--iteru-bg);padding:96px 0 80px;}
  .iteru-service__head h2{
    font-size:32px;font-weight:700;line-height:1.4;color:var(--iteru-text);
    max-width:640px;margin:0 0 20px;
  }
  /* line-height:1.9明示の理由は.iteru-problems__leadと同じ（Lightningのp{line-height:1.7em}対策）。 */
  .iteru-service__head p{font-size:16px;line-height:1.9;color:var(--iteru-sub);max-width:560px;margin:0;}

  .iteru-service__rows{margin-top:64px;}
  .iteru-service__row{
    display:flex;align-items:center;gap:64px;
    padding:72px 0;border-top:1px solid var(--iteru-border);
  }
  .iteru-service__row--text-only{display:block;padding:56px 0;}
  .iteru-service__row-media{flex:0 0 42%;max-width:42%;position:relative;aspect-ratio:4/3;}
  .iteru-service__row-media .iteru-hero__photo-placeholder{position:absolute;inset:0;}
  .iteru-service__row-body{flex:1 1 auto;}
  .iteru-service__row--text-only .iteru-service__row-body{max-width:680px;}
  .iteru-service__row-num{
    display:block;font-size:16px;color:var(--iteru-primary);margin-bottom:12px;
  }
  .iteru-service__row-title{
    font-size:22px;font-weight:700;color:var(--iteru-text);line-height:1.5;
    margin:0 0 14px;max-width:420px;
  }
  .iteru-service__row--text-only .iteru-service__row-title{max-width:100%;}
  .iteru-service__row-text{font-size:15.5px;color:var(--iteru-sub);line-height:1.9;margin:0;max-width:440px;}
  .iteru-service__row--text-only .iteru-service__row-text{max-width:680px;}

  .iteru-service__menu{margin-top:16px;padding-top:56px;border-top:1px solid var(--iteru-border);}
  /* line-height:1.9明示の理由は.iteru-problems__leadと同じ（Lightningのp{line-height:1.7em}対策）。 */
  .iteru-service__menu-head{
    font-size:14px;font-weight:700;line-height:1.9;color:var(--iteru-sub);letter-spacing:.04em;margin:0 0 32px;
  }
  .iteru-service__menu-grid{
    display:grid;grid-template-columns:1fr 1fr;gap:32px 64px;
  }
  .iteru-service__menu-item-label{
    display:flex;align-items:center;gap:10px;
    font-size:15px;font-weight:700;color:var(--iteru-text);margin-bottom:8px;
  }
  /* カテゴリ識別のための小さな標識。カード化・丸背景・影は使わずTypographyと同格に扱う */
  .iteru-menu-icon{width:24px;height:24px;flex:0 0 auto;}
  .iteru-service__menu-item-text{font-size:14px;color:var(--iteru-sub);line-height:1.85;margin:0;}

  /* ---------- iteru-benefits (Section 5：導入するとどう変わるのか／Visual Peak) ---------- */
  .iteru-benefits{background:var(--iteru-dark);padding:120px 0;color:#fff;}
  /* line-height:1.9明示の理由は.iteru-problems__leadと同じ（Lightningのp{line-height:1.7em}対策）。 */
  .iteru-benefits__label{
    font-size:13px;font-weight:700;line-height:1.9;letter-spacing:.08em;color:rgba(255,255,255,.6);margin:0 0 20px;
  }
  .iteru-benefits__title{
    font-size:30px;font-weight:700;line-height:1.6;color:#fff;max-width:620px;margin:0 0 72px;
  }
  .iteru-benefits__stats{display:flex;align-items:flex-end;flex-wrap:wrap;gap:56px;}
  .iteru-benefits__stat-num{
    display:block;font-size:clamp(26px,6vw,48px);font-weight:600;line-height:1.15;color:#fff;
    white-space:nowrap;
  }
  .iteru-benefits__stat--lead .iteru-benefits__stat-num{font-size:clamp(30px,9vw,72px);}
  .iteru-benefits__stat-label{
    display:block;margin-top:10px;font-size:13px;color:rgba(255,255,255,.62);
    max-width:220px;line-height:1.6;
  }
  .iteru-benefits__divider{
    width:100%;height:1px;background:rgba(255,255,255,.16);margin:72px 0 56px;
    transform:scaleX(0);transform-origin:left;
  }
  .iteru-benefits__shift{max-width:620px;}
  .iteru-benefits__shift-kicker{
    display:block;font-size:12px;font-weight:700;letter-spacing:.08em;margin-bottom:10px;
  }
  .iteru-benefits__shift-before .iteru-benefits__shift-kicker{color:rgba(255,255,255,.4);}
  .iteru-benefits__shift-before p{
    font-size:18px;font-weight:400;color:rgba(255,255,255,.55);line-height:1.8;margin:0;
  }
  .iteru-benefits__shift-after{margin-top:32px;}
  .iteru-benefits__shift-after .iteru-benefits__shift-kicker{color:#9DB9DD;}
  .iteru-benefits__shift-after p{
    font-size:25px;font-weight:700;color:#fff;line-height:1.6;margin:0;
  }
  /* Section5だけの、ページ内唯一の「コンテンツを演出するMotion」：区切り線の伸長のみ。
     テキストのopacity変化はVisual QAで「区切り線だけで意味が伝わる」と判断し削除した。 */
  .iteru-benefits.is-revealed .iteru-benefits__divider{transform:scaleX(1);}
  @media (prefers-reduced-motion: no-preference){
    .iteru-benefits__divider{transition:transform .4s ease-out;}
  }
  /* margin-bottom:12pxはStatic Final Freeze版の実測値（font-size:12pxのブラウザ既定1em相当）を明示。
     元CSSはmargin-topしか指定しておらず、Lightningのp{margin-bottom:1.5rem}（=24px）に
     margin-bottomが上書きされる余地があったため、他の.iteru-*__note系と同じ理由で保護を追加。 */
  .iteru-benefits__footnote{
    margin-top:64px;margin-bottom:12px;font-size:12px;color:rgba(255,255,255,.4);line-height:1.9;max-width:720px;
  }

  /* ---------- iteru-comparison (Section 6：他の選択肢との違い) ---------- */
  .iteru-comparison{background:var(--iteru-bg);padding:96px 0;}
  .iteru-comparison__head h2{
    font-size:32px;font-weight:700;line-height:1.4;color:var(--iteru-text);
    max-width:640px;margin:0 0 20px;
  }
  /* line-height:1.9明示の理由は.iteru-problems__leadと同じ（Lightningのp{line-height:1.7em}対策）。 */
  .iteru-comparison__head p{font-size:16px;line-height:1.9;color:var(--iteru-sub);max-width:640px;margin:0;}
  .iteru-comparison__accordion{display:none;}
  /* border:noneを明示。Lightning側にtable自体へrgba(0,0,0,.06)の既定borderを与える
     ルールがあり、border-collapse:collapse使用時にテーブル外周（thead上端・最終行下端）に
     意図しない薄い線が現れるため遮断する。 */
  .iteru-comparison__table{
    width:100%;border-collapse:collapse;margin-top:56px;table-layout:fixed;border:none;
  }
  .iteru-comparison__table caption{caption-side:bottom;text-align:left;padding-top:24px;font-size:12.5px;color:var(--iteru-sub);}
  /* border-bottom:noneを明示。border-topのみ指定していたため、Lightningの
     セルへのborder-bottom既定値（rgba(0,0,0,.06) 1px）が各セル下端に残ってしまうことを防ぐ。 */
  /* border-left:none / border-right:noneを明示。Lightning側のtable既定スタイルにより
     th/tdへ左右1px solid（currentColor相当）の縦線が付与されるため遮断する。 */
  .iteru-comparison__table th,.iteru-comparison__table td{
    text-align:left;vertical-align:top;padding:20px 18px;
    border-top:1px solid var(--iteru-border);border-bottom:none;border-left:none;border-right:none;
    font-size:14px;line-height:1.8;color:var(--iteru-sub);
  }
  .iteru-comparison__table thead th{
    border-top:none;border-bottom:2px solid var(--iteru-text);
    font-size:14.5px;font-weight:700;color:var(--iteru-text);padding-bottom:16px;
  }
  .iteru-comparison__table thead th.iteru-comparison__col-highlight{color:var(--iteru-primary);}
  .iteru-comparison__table tbody th{
    font-size:13.5px;font-weight:700;color:var(--iteru-text);width:140px;padding-left:0;
  }
  .iteru-comparison__table tbody tr:last-child td,
  .iteru-comparison__table tbody tr:last-child th{font-weight:500;color:var(--iteru-text);}

  /* ---------- iteru-support (Section 7：実際の支援イメージ) ---------- */
  /* Comparison(96)→Support→Pricing(96)が全て同じ余白だと後半が単調になるため、
     Section6/8の間の"呼吸"として意図的に広めに取る（Final QAで調整） */
  .iteru-support{background:var(--iteru-bg-light);padding:128px 0;}
  .iteru-support__head h2{
    font-size:28px;font-weight:700;line-height:1.5;color:var(--iteru-text);
    max-width:640px;margin:0 0 20px;
  }
  /* line-height:1.9明示の理由は.iteru-problems__leadと同じ（Lightningのp{line-height:1.7em}対策）。 */
  .iteru-support__head p{font-size:16px;line-height:1.9;color:var(--iteru-sub);max-width:560px;margin:0;}

  .iteru-support__flow{
    max-width:640px;margin:56px 0 0;padding-left:28px;
    border-left:2px solid var(--iteru-border);
  }
  .iteru-support__flow-item{
    font-size:16px;color:var(--iteru-text);line-height:1.9;margin:0 0 32px;
  }
  .iteru-support__flow-item:last-child{margin-bottom:0;}
  .iteru-support__flow-item strong{color:var(--iteru-primary);font-weight:700;}


  /* ---------- iteru-pricing (Section 8：料金＋FAQ) ---------- */
  .iteru-pricing{background:var(--iteru-bg);padding:96px 0;}
  .iteru-pricing__head h2{
    font-size:32px;font-weight:700;line-height:1.4;color:var(--iteru-text);
    max-width:640px;margin:0 0 20px;
  }
  /* line-height:1.9明示の理由は.iteru-problems__leadと同じ（Lightningのp{line-height:1.7em}対策）。 */
  .iteru-pricing__head p{font-size:16px;line-height:1.9;color:var(--iteru-sub);max-width:560px;margin:0;}
  /* border:none / border-bottom:noneの理由は.iteru-comparison__table側のコメントと同じ。 */
  .iteru-pricing__table{width:100%;border-collapse:collapse;margin-top:56px;table-layout:fixed;border:none;}
  /* border-left:none / border-right:noneの理由は.iteru-comparison__table側のコメントと同じ。 */
  .iteru-pricing__table th,.iteru-pricing__table td{
    text-align:left;vertical-align:top;padding:20px 18px;
    border-top:1px solid var(--iteru-border);border-bottom:none;border-left:none;border-right:none;
    font-size:14px;line-height:1.85;color:var(--iteru-sub);
  }
  .iteru-pricing__table thead th{
    border-top:none;border-bottom:2px solid var(--iteru-text);
    font-size:15px;font-weight:700;color:var(--iteru-text);padding-bottom:16px;
  }
  .iteru-pricing__table tbody th{
    font-size:13.5px;font-weight:700;color:var(--iteru-text);width:140px;padding-left:0;
  }
  .iteru-pricing__amount{font-size:22px;font-weight:600;color:var(--iteru-text);}
  .iteru-pricing__amount .iteru-num{font-weight:600;}
  /* margin-bottomはStatic Final Freeze版の実測値（1440/390/375共通、font-size:13pxの
     ブラウザ既定1em相当）を明示。元CSSはmargin-topしか指定しておらず、margin-bottomは
     Lightningのp{margin-bottom:1.5rem}に上書きされる余地があったため保護を追加。 */
  .iteru-pricing__note{margin-top:28px;margin-bottom:13px;font-size:13px;color:var(--iteru-sub);line-height:1.9;}
  /* 「主なサポート内容」：カード化・チェックアイコン化はせず、Typographyのみで意味単位を整理する */
  .iteru-pricing__list{margin:0;padding:0;list-style:none;}
  .iteru-pricing__list li{position:relative;padding-left:16px;margin:0;}
  .iteru-pricing__list li:not(:last-child){margin-bottom:8px;}
  .iteru-pricing__list li::before{content:"・";position:absolute;left:0;top:0;color:var(--iteru-sub);}

  .iteru-faq{margin-top:88px;}
  /* line-height:1.9を明示。Static版は.iteru-lp{line-height:1.9}からの継承値をそのまま
     使っていたが、Lightningはh1,h2,h3,h4,h5,h6{line-height:var(--vk-line-height-low)}
     （=1.4em）を見出しタグへ直接指定しており、直接指定は継承より常に優先されるため、
     line-heightを明示していないと1.4em側が勝ってしまう。 */
  .iteru-faq h3{font-size:22px;font-weight:700;line-height:1.9;color:var(--iteru-text);margin:0 0 32px;}
  .iteru-faq__list{max-width:760px;}
  .iteru-faq__item{border-top:1px solid var(--iteru-border);}
  .iteru-faq__item:last-child{border-bottom:1px solid var(--iteru-border);}
  .iteru-faq__item summary{
    list-style:none;cursor:pointer;padding:22px 32px 22px 0;position:relative;
    font-size:15px;font-weight:700;color:var(--iteru-text);
  }
  .iteru-faq__item summary::-webkit-details-marker{display:none;}
  .iteru-faq__item summary::after{
    content:"+";position:absolute;right:4px;top:19px;font-size:22px;font-weight:400;
    color:var(--iteru-primary);display:inline-block;
  }
  .iteru-faq__item[open] summary::after{transform:rotate(45deg);}
  @media (prefers-reduced-motion: no-preference){
    .iteru-faq__item summary::after{transition:transform .18s ease;}
  }
  .iteru-faq__a{padding:0 32px 26px 0;}
  .iteru-faq__a p{font-size:14.5px;color:var(--iteru-sub);line-height:1.9;margin:0;}

  /* ---------- iteru-cta (Section 9：最終CTA) ---------- */
  .iteru-cta{background:var(--iteru-bg);padding:120px 0 128px;text-align:center;}
  /* line-height:1.9明示の理由は.iteru-problems__leadと同じ（Lightningのp{line-height:1.7em}対策）。 */
  .iteru-cta__label{
    font-size:13px;font-weight:700;line-height:1.9;letter-spacing:.08em;color:var(--iteru-primary);margin:0 0 20px;
  }
  .iteru-cta__title{
    font-size:30px;font-weight:700;line-height:1.6;color:var(--iteru-text);
    max-width:520px;margin:0 auto 16px;
  }
  .iteru-cta__lead{font-size:15.5px;color:var(--iteru-sub);max-width:440px;margin:0 auto 36px;line-height:1.9;}
  /* margin-bottomはStatic版実測値（13px、font-size:13pxの既定1em相当）を明示し、
     Lightningのp{margin-bottom:1.5rem}干渉を遮断する。 */
  /* line-height:1.9を明示。理由は.iteru-faq h3と同じ―Lightningのp{line-height:var(--vk-line-height)}
     （=1.7em）が<p>タグへ直接指定されており、.iteru-lpからの継承値(1.9)より優先されてしまうため。 */
  .iteru-cta__note{display:block;margin-top:16px;margin-bottom:13px;font-size:13px;line-height:1.9;color:var(--iteru-sub);}

  /* ---------- iteru-footer ---------- */
  .iteru-footer{background:var(--iteru-dark);color:#9AA6B8;padding:56px 0 28px;}
  .iteru-footer__grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:40px;margin-bottom:36px;}
  .iteru-footer__brand img{height:26px;margin-bottom:14px;filter:brightness(0) invert(1);}
  /* margin:0ではなくStatic Final Freeze版の実測値（1440/390/375共通、font-size:13pxのブラウザ既定1em相当）を
     明示している。目的はmarginを消すことではなく、Lightningのp{margin-block-start:0}/
     p{margin-bottom:1.5rem}という干渉ルールを遮断した上でStatic版と同じ見た目を再現すること。 */
  .iteru-footer__brand p{font-size:13px;max-width:320px;color:#8A97AC;line-height:1.8;margin:13px 0;}
  .iteru-footer__col h3{font-size:13px;font-weight:700;color:#C9D2E0;margin:0 0 14px;letter-spacing:.05em;}
  /* line-height:1.9明示の理由は.iteru-problems__leadと同じ（Lightningのp{line-height:1.7em}対策）。 */
  .iteru-footer__col p,.iteru-footer__col a{
    display:block;font-size:13px;line-height:1.9;color:#8A97AC;margin-bottom:8px;
  }
  /* margin-top:13pxはStatic Final Freeze版の実測値（font-size:13pxのブラウザ既定1em相当、pのみに適用される
     ブラウザ既定のmargin-block-start）を明示。Lightningがp{margin-block-start:0}を指定しており、
     pタグにのみ既定の上余白が失われるため保護する（aタグは既定でもmargin:0のため対象外）。 */
  .iteru-footer__col p{margin-top:13px;}
  .iteru-footer__col a:hover{color:#fff;}
  .iteru-footer__bottom{
    border-top:1px solid rgba(255,255,255,.1);padding-top:24px;font-size:12px;color:#6B7688;
    display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;
  }

  /* ---------- Mobile ---------- */
  @media(max-width:860px){
    .iteru-wrap{padding:0 20px;}
    .iteru-header__inner{padding:0 20px;}

    .iteru-hero__flex{flex-direction:column;}
    .iteru-hero__text{
      flex:1 1 auto;max-width:100%;order:1;
      padding:48px 20px 40px;
    }
    .iteru-hero__title{font-size:30px;max-width:100%;}
    .iteru-hero__lead{max-width:100%;font-size:15px;line-height:1.8;}
    .iteru-hero__cta-row .iteru-btn{width:100%;padding:16px 24px;}
    .iteru-hero__photo{
      flex:1 1 auto;max-width:100%;order:2;
      min-height:0;aspect-ratio:16/9;
    }

    .iteru-problems{padding:64px 0;}
    .iteru-problems__title{font-size:24px;}
    .iteru-problems__list{margin-top:40px;}
    .iteru-problems__item{
      flex-direction:column;align-items:flex-start;gap:8px;padding:24px 0;
    }
    .iteru-problems__item-num{font-size:16px;width:auto;}
    .iteru-problems__turn{font-size:17px;margin-top:32px;margin-bottom:17px;}

    .iteru-about{padding:64px 0;}
    .iteru-about__rule{display:none;}
    .iteru-about__core{font-size:24px;}
    .iteru-about__sub{font-size:14.5px;}

    .iteru-header__nav{display:none;}

    .iteru-service{padding:64px 0;}
    .iteru-service__head h2{font-size:24px;}
    .iteru-service__rows{margin-top:40px;}
    .iteru-service__row{
      flex-direction:column;align-items:stretch;gap:24px;padding:48px 0;
    }
    .iteru-service__row-media{max-width:100%;aspect-ratio:16/10;}
    .iteru-service__row-title{max-width:100%;font-size:19px;}
    .iteru-service__row-text{max-width:100%;font-size:15px;}
    .iteru-service__menu{padding-top:40px;}
    .iteru-service__menu-grid{grid-template-columns:1fr;gap:24px;}

    .iteru-benefits{padding:64px 0;}
    .iteru-benefits__title{font-size:22px;margin-bottom:48px;}
    .iteru-benefits__stats{flex-direction:column;gap:28px;align-items:flex-start;}
    .iteru-benefits__divider{margin:48px 0 40px;}
    .iteru-benefits__shift-before p{font-size:16px;}
    .iteru-benefits__shift-after p{font-size:20px;}
    .iteru-benefits__footnote{margin-top:40px;}

    .iteru-comparison{padding:64px 0;}
    .iteru-comparison__head h2{font-size:24px;}
    .iteru-comparison__table{display:none;}
    .iteru-comparison__accordion{display:block;margin-top:40px;}

    .iteru-support{padding:64px 0;}
    .iteru-support__head h2{font-size:24px;}
    .iteru-support__flow{margin-top:40px;padding-left:20px;}

    .iteru-pricing{padding:64px 0;}
    .iteru-pricing__head h2{font-size:24px;}
    .iteru-pricing__table,.iteru-pricing__table thead,.iteru-pricing__table tbody,
    .iteru-pricing__table tr,.iteru-pricing__table th,.iteru-pricing__table td{display:block;width:100%;}
    .iteru-pricing__table thead{
      position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;
    }
    .iteru-pricing__table tbody th{
      padding:32px 0 12px;font-size:15px;color:var(--iteru-primary);border-top:1px solid var(--iteru-border);
    }
    .iteru-pricing__table tbody tr:first-child th{border-top:none;padding-top:0;}
    .iteru-pricing__table tbody td{
      display:block;padding:0 0 14px 0;border-top:none;
    }
    .iteru-pricing__table tbody td::before{
      content:attr(data-label);display:block;font-size:12px;font-weight:700;
      color:var(--iteru-text);letter-spacing:.02em;margin-bottom:4px;
    }
    .iteru-pricing__amount{font-size:20px;}

    .iteru-faq{margin-top:56px;}
    .iteru-faq h3{font-size:19px;}
    .iteru-faq__item summary{font-size:14.5px;padding:18px 30px 18px 0;}
    .iteru-faq__a{padding:0 30px 22px 0;}

    .iteru-cta{padding:72px 0 88px;}
    .iteru-cta__title{font-size:23px;max-width:100%;}
    .iteru-cta .iteru-btn{width:100%;padding:16px 24px;}

    .iteru-footer__grid{gap:28px;}
  }

  /* ---------- iteru-comparison mobile accordion (4択を完全に同格で扱う) ---------- */
  .iteru-comparison__acc-item{border-top:1px solid var(--iteru-border);}
  .iteru-comparison__acc-item:last-child{border-bottom:1px solid var(--iteru-border);}
  .iteru-comparison__acc-item summary{
    list-style:none;cursor:pointer;padding:20px 28px 20px 0;position:relative;
    font-size:16px;font-weight:700;color:var(--iteru-text);
  }
  .iteru-comparison__acc-item summary::-webkit-details-marker{display:none;}
  .iteru-comparison__acc-item summary::after{
    content:"+";position:absolute;right:0;top:18px;font-size:20px;font-weight:400;
    color:var(--iteru-sub);display:inline-block;
  }
  .iteru-comparison__acc-item[open] summary::after{transform:rotate(45deg);}
  @media (prefers-reduced-motion: no-preference){
    .iteru-comparison__acc-item summary::after{transition:transform .18s ease;}
  }
  .iteru-comparison__acc-body{padding:0 0 28px;}
  .iteru-comparison__acc-row{margin-bottom:16px;}
  .iteru-comparison__acc-row:last-child{margin-bottom:0;}
  .iteru-comparison__acc-row-label{
    display:block;font-size:12px;font-weight:700;color:var(--iteru-sub);letter-spacing:.03em;margin-bottom:4px;
  }
  .iteru-comparison__acc-row p{font-size:14.5px;color:var(--iteru-text);line-height:1.85;margin:0;}

  /* ---------- WordPress全体共通要素の非表示（ITERU LPページ限定） ----------
     「トップへ戻る」ボタン（#page_top.page_top_btn）はvk-all-in-one-expansion-unit
     プラグインがwp_footer()で全ページ共通に出力するグローバル要素であり、Static Final
     Freezeには存在しない。Plugin本体やグローバル設定には触れず、ITERU LP専用テンプレート
     使用時にのみ付与されるbodyクラスで限定してこのページだけ非表示にする。 */
  body.iteru-lp-page #page_top.page_top_btn{display:none;}
