/* ============================================================
   ここから: テーマトークン（akarumi.jp の実測値・tools/ref-extract 生成）
   デザイン案では別ファイル（css/themes/akarumi.css）で読み込んでいたが、
   プラグイン単体で完結させるためこのファイルに取り込む。
   数値を変えるときはここだけを触る。
   ============================================================ */
/* ============================================================
   theme: akarumi
   参考サイトの実測値から自動生成（tools/ref-extract）
   参考: https://akarumi.jp/
   実測日: 2026-09-02T16:12:56.263Z   実測幅: 390px
   ※配色は参考サイトの実測値。競合案件では --recolor cantik で置換すること

   このファイルだけ差し替えればデザインが変わる設計にする。
   HTMLに直接色・サイズを書かない（トークン経由で参照する）。
   ============================================================ */
.llmo, .llmo--detail {
  /* ---- 色 ---- */
  --llmo-t-c-brand: #fdc600; /* 主役色 */
  --llmo-t-c-brand-dark: #fdd000; /* 副役色（実測2番目・役割は要確認） */
  --llmo-t-c-ink: #333333; /* 本文 */
  --llmo-t-c-paper: #ffffff; /* 地 */
  --llmo-t-c-tint: #333333; /* 薄い面 */
  --llmo-t-c-line: #dddddd; /* 罫線 */

  /* ---- 書体 ---- */
  --llmo-t-f-ja: "Noto Sans JP", "Hiragino Sans", sans-serif;
  --llmo-t-f-en: "Plus Jakarta Sans", sans-serif; /* 欧文・見出し用 */

  /* ---- 文字サイズ（本文帯） ---- */
  --llmo-t-fs-0: 12px;
  --llmo-t-fs-1: 13px;
  --llmo-t-fs-2: 14px;
  --llmo-t-fs-3: 15px;
  --llmo-t-fs-4: 16px;
  --llmo-t-fs-5: 18px;
  --llmo-t-fs-6: 20px;
  --llmo-t-fs-7: 24px;

  /* ---- 文字サイズ（見出し帯・実測） ---- */
  --llmo-t-fh-0: clamp(16px, 2.03vw, 26px);
  --llmo-t-fh-1: clamp(20px, 2.50vw, 32px);
  --llmo-t-fh-2: clamp(25px, 3.13vw, 40px);
  --llmo-t-fh-3: clamp(35px, 4.38vw, 56px); /* ヒーロー級 */

  /* ---- 行間・字間 ---- */
  --llmo-t-lh-body: 1.40;
  --llmo-t-lh-head: 2.00;

  /* ---- 余白（部品） ---- */
  --llmo-t-sp-0: 8px;
  --llmo-t-sp-1: 16px;
  --llmo-t-sp-2: 17px;
  --llmo-t-sp-3: 24px;
  --llmo-t-sp-4: 40px;

  /* ---- 余白（セクション） ---- */
  --llmo-t-spx-0: 40px;
  --llmo-t-spx-1: 64px;
  --llmo-t-spx-2: 72px;
  --llmo-t-spx-3: 96px;
  --llmo-t-spx-4: 120px;
  --llmo-t-spx-5: 122px;
  --llmo-t-sec-pad: clamp(67px, 7vw, 122px); /* セクション上下。ページのリズム */

  /* ---- レイアウト ---- */
  --llmo-t-content-w: 1148px; /* コンテンツ最大幅 */
  --llmo-t-bp-sp: 1024px; /* SP境界（cantik標準は1023/1024） */

  /* ---- 表面 ---- */
  --llmo-t-radius-0: 16px;
  --llmo-t-radius-1: 40px;
  --llmo-t-radius-2: 8px;
  --llmo-t-shadow-0: rgba(0, 0, 0, 0.15) 0px 0px 16px 0px;

  /* ---- モーション ---- */
  --llmo-t-dur: 0.3s;
  --llmo-t-ease: ease;

}

/* 実測メモ（実装時の勘所）
   ジャンプ率: 1.14:1  ← h2と本文のサイズ比。ここを外すと別サイトに見える
   セクションpadding実測: 不明
   ブレークポイント実測: 420 / 500 / 540 / 600 / 650 / 767 / 768 / 1023 / 1024 / 1100 / 1101 / 1199 / 1200 / 1201 / 1250 / 1319 / 1350 / 1400 / 1440 / 1441 / 1480
   ← 数が多い＝テーマ/プラグイン由来の未使用BPが混在。主要BPだけ採用し、cantik標準(1023/1024)を優先する
   grid使用: 11箇所 / flex: 140箇所
   セクション数: 4
*/

/*
 * ここにあった「最小の適用例」（.container / .section / body / h2）は削除した。
 * 雛形から持ち込んだ見本で、この診断ページのHTMLでは1つも使っていないのに、
 * .llmo の外へ出ていたためテーマ側に当たっていた。
 *
 * とくに body{font-family/font-size/line-height} が効くため、
 * **このCSSを読み込む診断ページでだけ**グローバルナビの字形と字送りが変わっていた
 * （先方指摘 2026-09-24「お役立ち情報とコンサルティングが診断ページだけ崩れている」）。
 *
 * 共有クラス名（.container / .section）や素のタグセレクタをこのファイルに置かない。
 */

/* ============================================================
   ここから: 診断ページ本体
   ============================================================ */
/* =========================================================
   AKARUMI LLMO診断ページ｜デザイン案
   既存テーマ akarumi2 のトークンを踏襲（色・書体・角丸・ボタン）
   すべて .llmo- 名前空間。既存の共有クラスは触らない
   ========================================================= */
/* トークンは css/themes/akarumi.css（akarumi.jp の実測値）から受ける。
   ここでは役割名に割り当てるだけで、数値は書かない。 */
.llmo, .llmo--detail{
  --llmo-ink:var(--llmo-t-c-ink);              /* #333333 実測376回 */
  --llmo-ink-strong:#000;               /* 実測: 見出しの一部が #000 */
  --llmo-ink-mute:#666666;              /* 実測23回 */
  --llmo-ink-weak:#919191;              /* 実測20回 */
  --llmo-line:var(--llmo-t-c-line);            /* #dddddd 実測8回 */
  --llmo-line-soft:#eeeeee;             /* 実測4回 */
  --llmo-bg:var(--llmo-t-c-paper);
  --llmo-bg-soft:#eeeeee;
  --llmo-bg-soft2:#f5f5f5;              /* 実測6回 */
  --llmo-bg-soft3:#f8f8f8;              /* 実測2回 */
  --llmo-dark:#333333;                  /* 濃色帯 実測9回 */
  --llmo-brand:#0f58d5;                 /* リンク/フォーカスのみ */
  --llmo-brand-deep:#0b318f;
  --llmo-accent:var(--llmo-t-c-brand-dark);    /* #fdd000 面 */
  --llmo-accent-deep:var(--llmo-t-c-brand);    /* #fdc600 文字 */
  --llmo-ok:#1f8a5c;
  /* 判定を「文字」で示すときの色。塗り（バー・ドット）は上の色のまま、文字だけAA(4.5:1)を満たす濃さにする */
  --llmo-ok-text:#17784f;               /* 白地 5.47:1 */
  --llmo-warn-text:#8a6100;             /* 白地 5.54:1 */
  --llmo-ng-text:#b3261e;               /* 白地 6.54:1 */
  --llmo-warn:#c88a00;
  --llmo-ng:#c93c2e;
  --llmo-radius:var(--llmo-t-radius-2);        /* 8px */
  --llmo-radius-lg:var(--llmo-t-radius-0);     /* 16px */
  --llmo-pill:var(--llmo-t-radius-1);          /* 40px */
  --llmo-shadow:var(--llmo-t-shadow-0);
  --llmo-shadow-strong:var(--llmo-t-shadow-0); /* 実測は1種類のみ */
  --llmo-container:var(--llmo-t-content-w);    /* 1148px 実測10回 */
  --llmo-sec-pad:120px;                 /* 実測8回（最頻） */
  --llmo-ls:0.025em;                    /* 0.4px/16px 実測365回 */
}
.llmo *{box-sizing:border-box}
.llmo{
  font-family:var(--llmo-t-f-ja);
  color:var(--llmo-ink);
  background:var(--llmo-bg);
  line-height:2;
  letter-spacing:var(--llmo-ls);
  /* Figmaは約物の詰めを行わない。Chrome既定のtext-spacing-trimを切って折返し位置を設計に合わせる */
  text-spacing-trim:space-all;
  font-size:var(--llmo-t-fs-4);
  -webkit-font-smoothing:antialiased;
}
.llmo img{max-width:100%;height:auto}

/* --- テーマの指定が .llmo の中に入り込むのを止める ---
   デザインは単体HTMLで作っており、テーマのbody指定（太さ300・見出しの字間-0.1px等）が
   素通りすると太さと字間がずれる。ここで .llmo の中だけを設計どおりの値に固定する。 */
.llmo{font-weight:400}
.llmo :where(h1,h2,h3,h4,h5,h6){font-family:inherit;letter-spacing:inherit;font-weight:500;margin:0}
.llmo :where(p,figure,blockquote,dl,dd,ul,ol,pre,details,summary){margin:0}
.llmo :where(ul,ol){padding:0}
.llmo :where(a){color:inherit;text-decoration:none;font-weight:inherit}
.llmo :where(strong,b){font-weight:700}
.llmo :where(em,i,address){font-style:normal}
.llmo :where(small){font-size:inherit}
.llmo :where(button,input,select,textarea){
  font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;
}
.llmo :where(table){border-collapse:collapse}
.llmo summary::-webkit-details-marker{display:none}
.llmo__inner{width:100%;max-width:var(--llmo-container);margin-inline:auto;padding-inline:20px}
.llmo__sec{padding-block:var(--llmo-sec-pad)}
.llmo__sec--soft{background:var(--llmo-bg-soft)}
.llmo__sec--tint{background:#f5f5f5}

/* 見出し（既存 .a-head の型：英字small + h2） */
.llmo__head{display:flex;flex-direction:column;align-items:center;gap:14px;margin:0 0 48px;font-size:inherit;font-weight:400;line-height:2}
.llmo__head small{
  font-family:"Oswald",sans-serif;font-size:16px;font-weight:500;color:#aaa;
  letter-spacing:.06em;line-height:1;text-transform:uppercase;
}
.llmo__head > span{
  display:block;font-size:clamp(24px,2.5vw,32px);font-weight:500;line-height:1.2;
  letter-spacing:var(--llmo-ls);text-align:center;color:var(--llmo-ink-strong);
  /* Figmaは32px/行送り38の行箱で字を1px上に置く。行の高さは変えずに字面だけ合わせる
     （PC・SPの全セクションで設計レンダーとの差が下がることを実測して確認） */
  position:relative;top:-1px;
}
.llmo__head[style*="flex-start"] > span{text-align:left}
.llmo__lead{margin:0 auto;max-width:840px;text-align:center;color:var(--llmo-ink-mute);font-size:20px;line-height:1.8}

/* ボタン（既存 .p-footer_btn / .p-plan_banner_btn の型） */
.llmo__btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:64px;padding:12px 36px;border:0;border-radius:var(--llmo-pill);
  /* 76:459/76:429/76:508 ボタン文字はNoto Sans JP Regular 16px・tracking 0.4px */
  font-family:inherit;font-size:16px;font-weight:400;line-height:1;letter-spacing:.4px;
  text-decoration:none;cursor:pointer;transition:opacity .3s ease;
}
.llmo__btn:hover{opacity:.88}
.llmo__btn:focus-visible{outline:3px solid var(--llmo-brand);outline-offset:3px}
.llmo__btn--primary{background:var(--llmo-ink-strong);color:#fff;box-shadow:var(--llmo-shadow-strong)}
.llmo__btn--accent{background:var(--llmo-accent);color:#333;box-shadow:var(--llmo-shadow-strong)}
/* Figma 76:147 button/primary: 塗り#333・角丸40・文字はRegular16・影なし */
.llmo__btn--dark{background:var(--llmo-ink);color:#fff;font-weight:400;letter-spacing:.025em}
.llmo__btn--ghost{background:#fff;color:#333;border:1px solid #ddd}
.llmo__btn--sm{min-height:48px;padding:10px 24px;font-size:14px}
.llmo__btn--lg{min-height:76px;padding:14px 48px;font-size:18px}
.llmo__btn--block{display:flex;width:100%}

/* ヘッダー（.p-header 実測: padding 16/32・logo 192px・a-button h50 r25） */
.llmo__header{
  position:sticky;top:0;z-index:9998;display:flex;align-items:center;
  padding:16px 32px;background:#fff;min-height:89px;
}
.llmo__header-title{flex:0 0 auto;width:192px}
.llmo__header-title img{display:block;width:192px;height:34px}
.llmo__header-catch{margin:0 0 0 16px;font-size:13px;font-weight:500;color:#333;letter-spacing:.02em;white-space:nowrap;flex:0 0 auto}
.llmo__header-catch span{color:var(--llmo-ink-strong);font-weight:500}
.llmo__header-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:12px;margin-left:auto}
.llmo__header-utility{display:flex;align-items:center;gap:21px;font-size:14px;line-height:1;letter-spacing:.03em;font-family:"Plus Jakarta Sans",var(--llmo-t-f-ja)}
.llmo__header-utility a{color:#666;text-decoration:none}
.llmo__header-main{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:14px}
.llmo__header-nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:21px;font-size:14px;font-family:"Plus Jakarta Sans",var(--llmo-t-f-ja)}
.llmo__header-nav a{color:#000;font-weight:400;text-decoration:none}
.llmo__login,.llmo__extlink{display:inline-flex;align-items:center;gap:5px}
.llmo__extlink svg{color:#000;opacity:.8}
.llmo__header-nav a:hover,.llmo__header-utility a:hover{opacity:.6}
.llmo__header-link{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}
.llmo__abtn{
  display:grid;place-content:center;padding-inline:16px;width:fit-content;height:30px;font-size:14px;line-height:1;
  border:1px solid #ddd;border-radius:40px;text-decoration:none;transition:opacity var(--llmo-t-dur) var(--llmo-t-ease);
}
.llmo__abtn:hover{opacity:.7}
.llmo__abtn.white{color:#333;background:#fff;border-color:#ddd}
.llmo__abtn.black{color:#fff;background:#333;border-color:#333}
.llmo__burger{display:none;border:0;background:transparent;cursor:pointer}

/* KV（.p-kv 実測: グラデ・inner padding min(9.5vw,144px)・left min(42vw,581px)・right min(46vw,697px)） */
/* 60:2 地のグラデーションとテクスチャ（不透明度20%・cover）はFigmaの実値 */
.llmo__kv{position:relative;background:linear-gradient(49.3399deg,#F3F6FA 24.615%,#CBD7E4 85.385%);overflow:hidden}
/* テクスチャはPCのKVだけ。SP(76:239)の地はグラデーションのみ */
@media screen and (min-width:768px){
  .llmo__kv::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.2;
    /* image-set を解さないブラウザにはPNGが残るよう、先に素のurl()を書く */
    background-image:url("../img/kv-texture.png");
    background-image:image-set(url("../img/kv-texture.webp") type("image/webp"),
                              url("../img/kv-texture.png") type("image/png"));
    background-position:center;background-size:cover;background-repeat:no-repeat}
}
.llmo__kv-inner{position:relative;z-index:1}
.llmo__kv-inner{
  display:flex;justify-content:space-between;align-items:center;gap:40px;
  padding-block:144px;padding-inline:24px;max-width:calc(var(--llmo-container) + 48px);margin-inline:auto;
}
.llmo__kv-left{width:568px;max-width:100%;flex:0 0 auto}
.llmo__kv-right{width:540px;height:340px;max-width:100%;flex:0 0 auto}
.llmo__laptop{position:relative;margin:0;width:100%;height:340px}
.llmo__floatscore{
  position:absolute;left:-18px;bottom:-58px;display:flex;align-items:center;gap:14px;
  padding:16px 24px 16px 16px;background:#fff;border-radius:16px;box-shadow:0 18px 34px rgba(16,32,64,.18);
}
.llmo__floatscore svg{display:block;width:56px;height:56px;flex:none}
.llmo__floatscore b{display:block;font-size:16px;font-weight:500;color:#000;line-height:1.4}
.llmo__floatscore span{display:block;line-height:1.6;white-space:nowrap}
.llmo__floatscore span{font-size:13px;color:#666}
.llmo__laptop-screen{
  /* 62:2 ベゼルは単色 #22252a */
  height:306px;padding:11px;border-radius:14px;background:#22252a;
  box-shadow:0 26px 46px rgba(16,32,64,.28),0 2px 0 rgba(255,255,255,.14) inset;
}
.llmo__laptop-screen img{display:block;width:100%;height:284px;object-fit:cover;object-position:center;border-radius:5px}
.llmo__laptop-base{
  position:relative;height:13px;width:596px;max-width:none;margin:0 0 0 -28px;border-radius:0 0 12px 12px;
  background:linear-gradient(180deg,#d5d9df 0%,#a7aeb8 62%,#8d949e 100%);
  box-shadow:0 10px 18px rgba(16,32,64,.18);
}
/* 60:2 / 76:266 Figmaの台座に切り欠きは無い。AIが足した装飾なので描かない */
.llmo__kv-left h1{margin:0;display:flex;flex-direction:column;align-items:flex-start;font-size:var(--llmo-t-fs-4);font-weight:400}
.llmo__kv-catch{font-size:24px;font-weight:400;color:#666;letter-spacing:var(--llmo-ls);line-height:1.4}
.llmo__kv-logo{display:block;width:min(30vw,389px);height:auto;margin:14px 0 18px}
.llmo__kv-title{margin-top:14px;font-size:36px;font-weight:500;line-height:1.45;letter-spacing:var(--llmo-ls);color:#000}

.llmo__kv-title em{font-style:normal;background:linear-gradient(transparent 62%,var(--llmo-accent) 62%)}
.llmo__kv-desc{margin-top:20px;font-size:20px;color:#000;line-height:1.8;letter-spacing:var(--llmo-ls)}
.llmo__kv-form{margin-top:42px}
.llmo__kv-formrow{display:flex;gap:12px;align-items:center;width:100%}
.llmo__kv-formrow .llmo__input{flex:1 1 auto;min-width:0;height:64px}
.llmo__abtn2{
  position:relative;display:grid;place-content:center;padding-inline:32px;width:fit-content;height:64px;
  font-family:inherit;font-size:16px;font-weight:400;letter-spacing:.4px;line-height:1;border:1px solid #333;border-radius:32px;cursor:pointer;
  transition:opacity .3s ease;white-space:nowrap;
}
.llmo__abtn2:hover{opacity:.85}
.llmo__abtn2.black{color:#fff;background:#333}
.llmo__balloon{position:absolute;left:50%;top:-34px;transform:translateX(-50%);white-space:nowrap;padding:6px 16px;border-radius:var(--llmo-pill);background:var(--llmo-accent);color:#333;font-size:12px;font-weight:700;letter-spacing:.02em;line-height:14px}
.llmo__balloon::after{content:"";position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);border-left:6px solid transparent;border-right:6px solid transparent;border-top:7px solid var(--llmo-accent)}
.llmo__browser{border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 24px 48px rgba(20,38,66,.18)}
.llmo__browser-bar{display:flex;align-items:center;gap:7px;padding:16px;background:#f1f3f6;border-bottom:1px solid #e2e6ec}
.llmo__browser-bar i{width:9px;height:9px;border-radius:50%;background:#d3d8e0}
.llmo__browser-bar span{margin-left:10px;font-size:11px;color:#98a1ad}
.llmo__browser picture{display:block}
.llmo__browser img{display:block;width:100%;height:auto}
.llmo__browser{position:relative}
.llmo__browser::after{content:"";position:absolute;left:0;right:0;bottom:0;height:96px;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.92) 78%,#fff 100%)}

/* フォーム部品（実サイトのピル: h64 / r32 / border #ddd） */
.llmo__form{display:flex;gap:12px;width:100%;max-width:720px;margin-top:28px}
.llmo__input{
  flex:1 1 auto;min-width:0;height:64px;padding:0 24px;border:0;border-radius:32px;background:#fff;
  /* 76:248 Figmaの1px線は寸法に加算されない。borderだと内容が1pxずれるのでリングで描く */
  box-shadow:inset 0 0 0 1px #ddd;
  font-family:inherit;font-size:16px;letter-spacing:.4px;color:var(--llmo-ink);
}
/* 76:506 プレースホルダは #a9b1bb のベタ。UA既定の opacity:.54 を戻さないと薄くなる */
.llmo__input::placeholder{color:#a9b1bb;opacity:1}
.llmo__input:focus{outline:none;box-shadow:inset 0 0 0 1px var(--llmo-brand),0 0 0 3px rgba(15,88,213,.12)}
.llmo__notes{display:flex;flex-wrap:wrap;gap:22px;margin-top:16px;width:fit-content;color:#5b6472;font-size:13px;line-height:1}
.llmo__notes span{display:inline-flex;align-items:center;gap:6px}
.llmo__notes span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--llmo-accent-deep)}

/* 指標ストリップ */
.llmo__stats{background:#fff;padding-block:40px}
.llmo__stats-in{
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:32px 24px;
  background:#fff;border:1px solid var(--llmo-line);border-radius:var(--llmo-radius-lg);
  box-shadow:var(--llmo-shadow);
}
.llmo__stats-in div{text-align:center;position:relative}
.llmo__stats-in div + div::before{
  content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:1px;height:56px;background:var(--llmo-line-soft);
}
.llmo__stats-in b{display:flex;align-items:baseline;justify-content:center;gap:5px;font-family:"Oswald",sans-serif;font-size:48px;font-weight:500;line-height:1.2;color:var(--llmo-ink-strong);font-variant-numeric:tabular-nums}
.llmo__stats-in b em{font-family:"Noto Sans JP",sans-serif;font-style:normal;font-size:15px;font-weight:500;letter-spacing:0;color:var(--llmo-ink-mute);white-space:nowrap}
.llmo__stats-in span{font-size:14px;color:var(--llmo-ink-mute)}
.llmo__stats-in .llmo__stats-key{display:block;margin-bottom:7px;font-size:13px;line-height:1.6;letter-spacing:.04em;color:var(--llmo-ink-weak)}

/* カード */
.llmo__grid{display:grid;gap:24px}
.llmo__grid--3{grid-template-columns:repeat(3,1fr)}
.llmo__grid--4{grid-template-columns:repeat(4,1fr)}
.llmo__card{
  transition:transform .8s var(--llmo-t-ease),box-shadow .8s var(--llmo-t-ease);
  padding:40px;border:1px solid var(--llmo-line);border-radius:var(--llmo-radius-lg);background:#fff;
}
.llmo__card h3{margin:0 0 10px;font-size:18px;line-height:1.5;font-weight:500;line-height:1.6;color:var(--llmo-ink-strong)}
.llmo__card p{margin:16px 0 0;font-size:14px;color:var(--llmo-ink-mute)}
.llmo__step-no{font-family:"Oswald",sans-serif;font-size:34px;font-weight:500;line-height:1;color:var(--llmo-accent-deep)}
.llmo__cat-no{font-family:"Oswald",sans-serif;font-size:13px;letter-spacing:.12em;color:#aaa}

/* 共感セクション */
.llmo__pain{background:#fff;border-radius:var(--llmo-radius-lg);padding:0}
.llmo__pain-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:8px}
.llmo__pain-item{padding:40px;border:1px solid var(--llmo-line);border-radius:var(--llmo-radius-lg);background:#fff}
.llmo__pain-item p:first-child{margin:0 0 8px;font-weight:500;font-size:18px;color:var(--llmo-ink-strong);font-size:16px}
.llmo__pain-item p:last-child{margin:0;font-size:14px;color:var(--llmo-ink-mute)}
.llmo__pain-answer{margin:40px auto 0;max-width:840px;padding:24px 40px;font-size:20px;border-radius:var(--llmo-radius);background:#fff;border:1px solid var(--llmo-line);text-align:center;font-size:16px}
.llmo__pain-answer strong{color:var(--llmo-ink-strong)}

/* 診断範囲 */
.llmo__cats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.llmo__cat{transition:transform .8s var(--llmo-t-ease),box-shadow .8s var(--llmo-t-ease);padding:24px;border:1px solid var(--llmo-line);border-radius:var(--llmo-radius-lg);background:#fff}
.llmo__cat h3{margin:16px 0 8px;font-size:18px;font-weight:500;line-height:1.5}
.llmo__cat span.count{margin-left:6px;font-size:13px;color:var(--llmo-brand);font-weight:700}
.llmo__cat p{margin:0;font-size:13px;color:var(--llmo-ink-mute);line-height:1.8}
.llmo__cats-note{margin-top:20px;text-align:center;font-size:13px;color:var(--llmo-ink-mute)}

/* 結果（サンプル・本番共通のパーツ） */
.llmo__score{display:flex;align-items:center;gap:48px}
.llmo__gauge{flex:none;width:220px;text-align:center}
.llmo__gauge svg{display:block;margin-inline:auto}
.llmo__gauge-grade{display:inline-block;margin-top:12px;padding:8px 22px;border:1px solid var(--llmo-ink-strong);border-radius:var(--llmo-pill);font-size:14px;font-weight:700}
.llmo__score-body{flex:1;min-width:0}
.llmo__score-body h3{margin:0 0 12px;font-size:clamp(18px,2vw,24px);font-weight:700;line-height:1.6;color:var(--llmo-ink-strong)}
.llmo__score-body p{margin:0;color:var(--llmo-ink-mute);font-size:14px}
.llmo__meta{margin-top:16px;font-size:13px;color:#919191}

.llmo__bars{display:flex;flex-direction:column;gap:14px}
.llmo__bar{display:flex;align-items:center;gap:16px}
.llmo__bar-name{width:170px;flex:none;font-size:14px}
.llmo__bar-track{flex:1;height:10px;border-radius:5px;background:#e8ecf1;overflow:hidden}
.llmo__bar-fill{display:block;height:100%;border-radius:5px;background:var(--llmo-ink-strong)}
.llmo__bar-fill--low{background:var(--llmo-ng)}
.llmo__bar-fill--mid{background:var(--llmo-warn)}
.llmo__bar-fill--high{background:var(--llmo-ok)}
.llmo__bar-val{width:120px;flex:none;text-align:right;font-size:13px;color:var(--llmo-ink-mute);font-variant-numeric:tabular-nums}
.llmo__bar-val b{font-weight:400}
.llmo__bar-val-sp{display:none}

.llmo__items{border-top:1px solid var(--llmo-line);margin-top:16px}
.llmo__item{display:flex;gap:16px;padding:18px 0;border-bottom:1px solid var(--llmo-line)}
.llmo__judge{
  flex:none;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:14px;font-weight:700;color:#fff;
}
.llmo__judge--ok{background:var(--llmo-ok)}
.llmo__judge--warn{background:var(--llmo-warn)}
.llmo__judge--ng{background:var(--llmo-ng)}
.llmo__judge--num{background:var(--llmo-ink-strong);font-family:"Oswald",sans-serif}
.llmo__item h4{margin:2px 0 4px;font-size:16px;font-weight:500;color:var(--llmo-ink-strong)}
.llmo__item p{margin:0;font-size:14px;color:var(--llmo-ink-mute)}

/* 74:45 角丸16・上揃え・見出し18px/行送り1.6・本文14px/行送り1.9・間は4px */
.llmo__alert{
  display:flex;gap:16px;align-items:flex-start;padding:22px 26px;border-radius:16px;
  /* Figmaの1px枠は寸法に加算されない（borderだと高さが131→133になる） */
  background:#fdf3f2;border:0;box-shadow:inset 0 0 0 1px #f0c4bf;
}
/* 74:46 は塗りつぶしの丸のみ。中の「！」はFigmaに無い */
.llmo__alert-mark{flex:none;width:28px;height:28px;border-radius:50%;background:var(--llmo-ng)}
.llmo__alert h3{margin:0 0 4px;font-size:18px;font-weight:500;line-height:29px;color:#a3271b}
.llmo__alert p{margin:0;font-size:14px;line-height:27px;color:#7d3a32}

/* ロック */
.llmo__lock{position:relative;border:1px solid var(--llmo-line);border-radius:var(--llmo-radius);overflow:hidden;background:#fff}
.llmo__lock-preview{padding:24px 28px 0}
.llmo__lock-row{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--llmo-line)}
.llmo__lock-dot{flex:none;width:28px;height:28px;border-radius:50%;background:#e8ecf1}
.llmo__lock-lines{flex:1;display:flex;flex-direction:column;gap:10px;padding-top:4px}
.llmo__lock-line{height:10px;border-radius:5px;background:#e8ecf1}
.llmo__lock-cover{
  padding:36px 28px 40px;text-align:center;
  background:linear-gradient(180deg,rgba(255,255,255,.6) 0%,#fff 42%);
  margin-top:-56px;position:relative;
}
.llmo__lock-badge{
  display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:var(--llmo-pill);
  background:var(--llmo-ink-strong);color:#fff;font-size:12px;letter-spacing:.14em;font-family:"Oswald",sans-serif;
}
.llmo__lock-cover h3{margin:16px 0 8px;font-size:clamp(18px,2vw,24px);font-weight:500;color:var(--llmo-ink-strong)}
.llmo__lock-cover p{margin:0 0 22px;font-size:14px;color:var(--llmo-ink-mute)}

/* フォーム（Figma PC-03 76:103 の実値。padding40/border#eee/radius16） */
/* Figmaの1px枠は中央揃えストロークで寸法に加算されない。borderだと内容幅が2px痩せるためリングで描く。 */
.llmo__formbox{padding:40px;box-shadow:0 0 0 1px var(--llmo-line-soft);border-radius:var(--llmo-radius-lg);background:#fff}
.llmo__formhead{display:flex;flex-direction:column;align-items:flex-start}
.llmo__formhead small{
  font-family:"Oswald",sans-serif;font-weight:500;font-size:16px;line-height:1;
  letter-spacing:.96px;color:#aaa;margin-bottom:14px;
}
.llmo__formhead span{
  font-weight:500;font-size:32px;line-height:1.2;letter-spacing:.8px;color:#000;
}
.llmo__hsnote{
  margin:16px 0 0;padding:16px;border-radius:10px;background:#f3f7ff;box-shadow:0 0 0 1px #d6e2f8;
  font-size:13px;line-height:1.9;letter-spacing:.325px;color:#3f5573;
}
.llmo__hsnote strong{color:var(--llmo-brand-deep)}
.llmo__fields{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px;margin-top:24px}
.llmo__field{display:flex;flex-direction:column;gap:8px;min-width:0}
.llmo__namepair{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-width:0}
.llmo__field--full{grid-column:1 / -1}
.llmo__label{display:flex;gap:8px;align-items:center;font-size:14px;font-weight:500;line-height:1.6;letter-spacing:.35px;color:var(--llmo-ink)}
.llmo__req,.llmo__opt{
  display:inline-flex;padding:2px 8px;border-radius:4px;
  font-size:11px;font-weight:500;line-height:1.4;letter-spacing:.275px;
}
.llmo__req{background:var(--llmo-ng);color:#fff}
.llmo__opt{background:#eef1f5;color:#6a7280}
.llmo__field input,.llmo__field textarea{
  width:100%;height:56px;padding:0 18px;border:1px solid #cbd7e4;border-radius:10px;background:#fff;
  font-family:inherit;font-size:15px;line-height:1;letter-spacing:.375px;color:var(--llmo-ink);
}
.llmo__field input::placeholder{color:#a9b1bb;opacity:1}
.llmo__field input:focus{outline:none;border-color:var(--llmo-brand);box-shadow:0 0 0 3px rgba(15,88,213,.12)}
.llmo__field input[readonly]{background:#f4f6f9;color:#6a7280}
.llmo__field input[aria-invalid="true"]{border-color:var(--llmo-ng)}
.llmo__fielderror{font-size:12px;line-height:1.6;color:var(--llmo-ng-text)}
/* チェックはFigmaでは行間1.9の2行が連続する（行間の追加余白なし） */
.llmo__checks{display:flex;flex-direction:column;margin-top:24px}
.llmo__checks label{
  display:flex;gap:8px;align-items:flex-start;cursor:pointer;
  font-size:14px;line-height:1.9;letter-spacing:.35px;color:var(--llmo-ink);
}
.llmo__checks input{margin:4px 0 0;width:18px;height:18px;flex:0 0 auto;accent-color:var(--llmo-brand)}
.llmo__checks a{color:var(--llmo-brand)}
.llmo__submit{display:flex;align-items:center;gap:24px;margin-top:24px;flex-wrap:wrap}
.llmo__submit .llmo__btn{min-height:64px}
.llmo__formnote{margin:18px 0 0;font-size:13px;color:var(--llmo-ink-mute)}
.llmo__formbox [aria-live]:empty{display:none}

.llmo__hs-badge{font-size:12px;color:var(--llmo-ink-mute)}

/* 結果ステート */
.llmo__resulthead{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:16px}
.llmo__urlchip{
  display:inline-flex;align-items:center;gap:8px;max-width:100%;padding:16px;border-radius:var(--llmo-pill);
  background:#fff;border:1px solid var(--llmo-line);font-size:13px;color:var(--llmo-ink);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.llmo__urlchip b{font-weight:500;color:var(--llmo-ink-mute);font-size:12px}
.llmo__stamp{font-size:12px;color:#919191}
.llmo__scorecard{display:grid;grid-template-columns:280px minmax(0,1fr);gap:40px;align-items:center;padding:44px;border:1px solid var(--llmo-line);border-radius:var(--llmo-radius-lg);background:#fff}
.llmo__scorecard-main{text-align:center}
.llmo__scorecard h3{margin:0 0 12px;font-size:26px;font-weight:500;line-height:1.5;color:var(--llmo-ink-strong)}
.llmo__scorecard p{margin:0;font-size:14px;color:var(--llmo-ink-mute)}
.llmo__summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:26px;background:var(--llmo-line);border:1px solid var(--llmo-line);border-radius:10px;overflow:hidden}
.llmo__summary div{background:#fff;padding:16px}
.llmo__summary b{display:block;font-family:"Oswald",sans-serif;font-size:32px;line-height:1.2;font-variant-numeric:tabular-nums}
.llmo__summary span{font-size:12px;color:var(--llmo-ink-mute)}
.llmo__summary .ok b{color:var(--llmo-ok)} .llmo__summary .warn b{color:var(--llmo-warn)} .llmo__summary .ng b{color:var(--llmo-ng)}

.llmo__catrow{display:grid;grid-template-columns:44px minmax(120px,180px) minmax(0,1fr) 56px 208px;align-items:center;gap:16px;padding:24px;border:1px solid var(--llmo-line);border-radius:var(--llmo-radius-lg);background:#fff}
.llmo__catrow + .llmo__catrow{margin-top:10px}
.llmo__catno{font-family:"Oswald",sans-serif;font-size:13px;color:#aaaaaa;letter-spacing:.06em}
.llmo__catname{font-size:15px;font-weight:500;color:var(--llmo-ink-strong)}
.llmo__catscore{font-family:"Oswald",sans-serif;font-size:24px;text-align:right;font-variant-numeric:tabular-nums}
.llmo__catbreak{display:flex;gap:6px;justify-content:flex-end}
.llmo__mini{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--llmo-pill);font-size:11px;font-weight:500;background:#f1f4f8;color:#666666;white-space:nowrap;font-style:normal}
.llmo__mini.ok{background:#e8f5ef;color:#1f7a55} .llmo__mini.warn{background:#fdf3dc;color:#8a6300} .llmo__mini.ng{background:#fdecea;color:#a3271b}

.llmo__judge{width:auto;height:26px;padding:0 12px;border-radius:var(--llmo-pill);font-size:12px;font-weight:700}
.llmo__judge--num{width:26px;padding:0;justify-content:center}
.llmo__prio{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.llmo__priocard{position:relative;padding:26px 24px 24px;border:1px solid var(--llmo-line);border-radius:var(--llmo-radius-lg);background:#fff}
.llmo__prionum{position:absolute;top:-14px;left:24px;width:38px;height:38px;border-radius:50%;background:var(--llmo-accent);color:#333;display:flex;align-items:center;justify-content:center;font-family:"Oswald",sans-serif;font-size:18px;box-shadow:var(--llmo-shadow)}
.llmo__priocard h4{margin:10px 0 8px;font-size:18px;font-weight:500;line-height:1.6;color:var(--llmo-ink-strong)}
.llmo__priocard p{margin:0;font-size:13px;color:var(--llmo-ink-mute)}
.llmo__priocard .cat{font-family:"Oswald",sans-serif;font-size:11px;letter-spacing:.08em;color:#aaaaaa}


/* ---- 診断レポート（dataviz: 罫線は細く、値は等幅数字、色は状態のみ） ---- */
.llmo__report{background:#fff;border:1px solid var(--llmo-line-soft);border-radius:var(--llmo-radius-lg);padding:40px}
.llmo__report + .llmo__report{margin-top:24px}
.llmo__rhead{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 24px;
  padding-bottom:16px;border-bottom:1px solid var(--llmo-line-soft)}
.llmo__rhead h3{margin:0;font-size:18px;font-weight:500;color:#000}
.llmo__rhead span{font-size:13px;color:var(--llmo-ink-weak);font-variant-numeric:tabular-nums}

/* スコア（ヒーロー数値＋状態の内訳を1行で） */
.llmo__scoreline{display:flex;align-items:center;gap:48px;padding:8px 0 4px}
.llmo__scorenum{display:flex;align-items:baseline;gap:10px;flex:none}
.llmo__scorenum b{font-family:"Oswald",sans-serif;font-size:88px;font-weight:500;line-height:1;color:#000;font-variant-numeric:tabular-nums}
.llmo__scorenum i{font-style:normal;font-size:16px;color:var(--llmo-ink-weak)}
.llmo__scoregrade{font-size:16px;color:var(--llmo-ink);margin-top:10px}
.llmo__scoregrade b{font-weight:500;color:#000}
.llmo__scoretext{flex:1;min-width:0}
.llmo__scoretext p{margin:0;font-size:20px;line-height:1.7;color:#000;font-weight:500}
.llmo__scoretext small{display:block;margin-top:10px;font-size:14px;color:var(--llmo-ink-mute);line-height:1.9}
.llmo__tally{display:flex;gap:28px;margin-top:22px;padding-top:18px;border-top:1px solid var(--llmo-line-soft)}
.llmo__tally div{display:flex;align-items:baseline;gap:8px;font-size:14px;color:var(--llmo-ink-mute)}
.llmo__tally b{font-family:"Oswald",sans-serif;font-size:24px;font-weight:500;color:#000;font-variant-numeric:tabular-nums}
.llmo__dot{width:9px;height:9px;border-radius:50%;flex:none;align-self:center}
.llmo__dot--ok{background:var(--llmo-ok)} .llmo__dot--warn{background:var(--llmo-warn)} .llmo__dot--ng{background:var(--llmo-ng)}

/* カテゴリ別（横棒・細マーク・4px丸端・等幅数値） */
.llmo__chart{margin-top:4px}
.llmo__chartrow{display:grid;grid-template-columns:150px minmax(0,1fr) 46px 150px;align-items:center;gap:20px;
  padding:14px 0;border-bottom:1px solid var(--llmo-line-soft)}
.llmo__chartrow:last-child{border-bottom:0}
.llmo__chartname{font-size:15px;color:#000}
.llmo__track{height:10px;border-radius:5px;background:#f0f1f3}
.llmo__fill{display:block;height:10px;border-radius:5px}
.llmo__fill--ok{background:var(--llmo-ok)} .llmo__fill--warn{background:var(--llmo-warn)} .llmo__fill--ng{background:var(--llmo-ng)}
.llmo__val{font-family:"Oswald",sans-serif;font-size:20px;text-align:right;font-variant-numeric:tabular-nums;color:#000}
.llmo__counts{display:flex;gap:14px;justify-content:flex-end;font-size:13px;color:var(--llmo-ink-mute);font-variant-numeric:tabular-nums}
.llmo__counts span{display:inline-flex;align-items:center;gap:5px}

/* 判定リスト（囲みを外し、状態は文字＋色点で示す） */
.llmo__checks-list{margin-top:8px}
.llmo__check{display:grid;grid-template-columns:96px minmax(0,1fr);gap:20px;padding:18px 0;border-bottom:1px solid var(--llmo-line-soft)}
.llmo__check:last-child{border-bottom:0}
.llmo__jd{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:500}
.llmo__jd--ok{color:var(--llmo-ok)} .llmo__jd--warn{color:var(--llmo-warn)} .llmo__jd--ng{color:var(--llmo-ng)}
.llmo__check h4{margin:0 0 4px;font-size:16px;font-weight:500;color:#000}
.llmo__check p{margin:0;font-size:14px;color:var(--llmo-ink-mute);line-height:1.9}

/* 優先度（丸バッジをやめ、数字と罫線で階層をつくる） */
.llmo__priolist{margin-top:8px}
.llmo__prioitem{display:grid;grid-template-columns:56px minmax(0,1fr);gap:20px;padding:22px 0;border-bottom:1px solid var(--llmo-line-soft)}
.llmo__prioitem:last-child{border-bottom:0}
.llmo__prionum2{font-family:"Oswald",sans-serif;font-size:34px;line-height:1;color:var(--llmo-line);font-weight:500}
.llmo__prioitem h4{margin:0 0 6px;font-size:18px;font-weight:500;color:#000;line-height:1.5}
.llmo__prioitem p{margin:0;font-size:14px;color:var(--llmo-ink-mute)}
.llmo__priocat{display:block;margin-bottom:6px;font-family:"Oswald",sans-serif;font-size:11px;letter-spacing:.1em;color:var(--llmo-ink-weak)}


/* 大きな特徴行（実サイト .p-function_item: flex/gap40/padding40/#F5F5F5/radius16） */
.llmo__frow{display:flex;align-items:center;gap:40px;padding:40px;background:#F5F5F5;border-radius:16px}
.llmo__frow + .llmo__frow{margin-top:24px}
.llmo__frow:nth-child(even){flex-direction:row-reverse}
.llmo__frow-body{flex:1;min-width:0}
.llmo__frow-no{display:block;font-family:"Oswald",sans-serif;font-size:14px;font-weight:500;line-height:1;letter-spacing:.14em;color:var(--llmo-ink-weak)}
.llmo__frow-body h3{margin:10px 0 0;font-size:26px;font-weight:500;line-height:1.5;color:#000}
.llmo__frow-body p{margin:24px 0 0;font-size:16px;color:var(--llmo-ink-mute);line-height:2}
.llmo__frow-fig{flex:0 0 414px;width:414px;max-width:100%;height:240px;display:flex;align-items:center;justify-content:center;border-radius:8px;overflow:hidden;background:#fff;box-shadow:0 8px 22px rgba(16,32,64,.08)}
.llmo__frow-fig img{display:block;max-width:100%;max-height:100%;width:auto;height:auto}

/* 淡い面のカード（実サイト .p-about_content-box: #F8F8F8 + 1px #EEE + padding24） */
.llmo__softcard{padding:24px;background:#F8F8F8;border:1px solid #EEEEEE;border-radius:8px}
.llmo__softcard p:first-child{margin:0 0 8px;font-size:18px;font-weight:500;color:#000;line-height:1.6}
.llmo__softcard p:last-child{margin:0;font-size:14px;color:var(--llmo-ink-mute);line-height:1.9}

/* 濃色セクション＋白カード（実サイト .p-llmo / .p-llmo_item） */
.llmo__dark{background:#333;padding-block:min(8.7vw,96px) min(11vw,120px);position:relative;overflow:hidden}
.llmo__dark::before{content:"";position:absolute;inset:0;opacity:.14;
  background-image:radial-gradient(rgba(255,255,255,.5) 1px,transparent 1px);background-size:14px 14px}
.llmo__dark > *{position:relative}
.llmo__dark .llmo__btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.llmo__dark .llmo__head{color:#fff}
.llmo__dark .llmo__head > span{color:#fff}
.llmo__dark .llmo__lead{color:#c9ced6}
.llmo__darklist{display:grid;grid-template-columns:1fr 1fr 1fr;gap:min(2.1vw,24px);margin-top:min(5vw,56px)}
.llmo__darkitem{display:flex;flex-direction:column;padding:min(2.1vw,24px);background:#fff;border-radius:14px}
.llmo__darkitem span{font-family:"Oswald",sans-serif;font-size:12px;letter-spacing:.12em;color:var(--llmo-ink-weak)}
.llmo__darkitem h3{margin:10px 0 10px;font-size:18px;font-weight:500;line-height:1.6;color:#000}
.llmo__darkitem p{margin:0;font-size:14px;color:var(--llmo-ink-mute);line-height:1.9}


/* ---- 背景の地（すべてCSSグラデーション・最大4%の濃度／先方の地紋の作法に合わせる） ---- */
.llmo__sec,.llmo__stats{position:relative;isolation:isolate}
.llmo__sec > .llmo__inner,.llmo__stats > .llmo__inner{position:relative;z-index:1}

/* 縦のヘアライン（コンテンツ幅を4等分する位置に薄い罫。上下でフェード） */
.llmo__sec--rule::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:repeating-linear-gradient(to right,rgba(17,24,32,.045) 0 1px,transparent 1px calc(var(--llmo-container) / 4));
  background-position:center;background-repeat:no-repeat;
  background-size:calc(var(--llmo-container) + 1px) 100%;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 18%,#000 82%,transparent);
  mask-image:linear-gradient(180deg,transparent,#000 18%,#000 82%,transparent);
}
/* ドットの地（濃色面と同じ作法を明るい面へ薄く） */
.llmo__sec--dot::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:radial-gradient(rgba(17,24,32,.07) 1px,transparent 1px);
  background-size:16px 16px;
  -webkit-mask-image:radial-gradient(120% 80% at 50% 0%,#000,transparent 72%);
  mask-image:radial-gradient(120% 80% at 50% 0%,#000,transparent 72%);
}
/* やわらかい光（KVのグラデーションと同系の色をごく薄く） */
.llmo__sec--glow::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(46% 52% at 88% 8%,rgba(203,215,228,.55),transparent 70%),
    radial-gradient(38% 44% at 4% 92%,rgba(243,246,250,.9),transparent 72%);
}


/* ---- 装飾（すべてブランド由来：ロゴのひし形・黄色のハイライト・線アイコン） ---- */
/* 見出しの英字ラベル（Figmaには装飾を入れていないため、文字のみにする） */
.llmo__head > small{display:inline-flex;align-items:center}
/* 黄色のハイライト（実サイト .fn-highlight と同じ役割） */
.llmo__mk{background:linear-gradient(transparent 62%,var(--llmo-accent) 62%);padding-inline:2px}

/* カテゴリカード：線アイコン＋状態のアクセント */
.llmo__cat{position:relative;overflow:hidden}
.llmo__cat-icon{display:none}
.llmo__cat-icon svg{display:block}
.llmo__cat::after{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--llmo-accent);opacity:0;transition:opacity var(--llmo-t-dur) var(--llmo-t-ease)}
.llmo__cat:hover::after{opacity:1}
.llmo__cat{transition:box-shadow var(--llmo-t-dur) var(--llmo-t-ease),transform var(--llmo-t-dur) var(--llmo-t-ease)}
.llmo__cat:hover{box-shadow:0 0 16px rgba(0,0,0,.10)}

/* 特徴行：番号を大きく薄く敷く */
.llmo__frow{position:relative;overflow:hidden}
.llmo__frow-ghost{
  position:absolute;right:min(3.6vw,40px);top:-14px;font-family:"Oswald",sans-serif;font-size:120px;line-height:1;
  color:rgba(17,24,32,.05);pointer-events:none;user-select:none;
}
.llmo__frow:nth-child(even) .llmo__frow-ghost{right:auto;left:min(3.6vw,40px)}

/* 指標ストリップ：数値の下に黄色の短い罫 */
.llmo__stats-in div{position:relative;padding-bottom:20px}
.llmo__stats-in div::after{content:"";position:absolute;left:50%;bottom:10px;transform:translateX(-50%);width:28px;height:3px;background:var(--llmo-accent);border-radius:2px}

.llmo__steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;width:100%;max-width:900px;margin:28px auto 0;padding:0}
.llmo__steps li{display:flex;align-items:center;gap:10px;padding:16px;background:#fff;border:1px solid var(--llmo-line-soft);border-radius:8px;font-size:13px;color:var(--llmo-ink-weak);text-align:left}
.llmo__steps i{width:18px;height:18px;flex:none;border-radius:50%;border:1.5px solid var(--llmo-line);position:relative}
.llmo__steps .is-done{color:var(--llmo-ink)}
.llmo__steps .is-done i{background:var(--llmo-ok);border-color:var(--llmo-ok)}
.llmo__steps .is-done i::after{content:"";position:absolute;left:5px;top:4px;width:5px;height:8px;border:solid #fff;border-width:0 1.6px 1.6px 0;transform:rotate(45deg)}
.llmo__steps .is-now{color:#000}
.llmo__steps .is-now i{border-color:var(--llmo-accent-deep);border-width:3px}

.llmo__lockrow{display:grid;grid-template-columns:96px minmax(0,1fr);gap:20px;padding:20px 0;border-bottom:1px solid var(--llmo-line-soft)}
.llmo__lockrow:last-child{border-bottom:0}
.llmo__lockrow h4{margin:0 0 10px;font-size:16px;font-weight:500;color:#000}
.llmo__masked{display:flex;flex-direction:column;gap:9px}
/* 76:73 伏せ字の帯は #e7e9ec のベタ。縞模様は実装だけの装飾だった。
   幅はノードの実寸から出した比率（PCとSPで違うので個別に持つ） */
.llmo__masked i{display:block;height:11px;border-radius:6px;background:#e7e9ec;width:var(--w,60%)}
.llmo__lock-preview{padding:28px 32px 6px}


/* FV: ノートPCに重ねるスマホ */
.llmo__phone{
  position:absolute;right:-42px;bottom:-98px;width:172px;margin:0;z-index:2;
  /* 131:2 実値 */
  border-radius:26px;padding:7px;background:linear-gradient(100.023deg,#3B4047 7.8125%,#1A1C21 85.938%);
  box-shadow:0 22px 40px rgba(16,32,64,.30);
}
/* 131:3 スマホの画面。SPでは .llmo__phone ごと display:none になるため、
   <img> ではなく背景で置く（displayがnoneなら取得もされない＝SPで24KB無駄にしない） */
.llmo__phone-screen{
  height:338px;border-radius:20px;overflow:hidden;line-height:0;
  background-color:#fff;
  background-image:url("../img/kv-phone.png");
  background-image:image-set(url("../img/kv-phone.webp") type("image/webp"),
                             url("../img/kv-phone.png") type("image/png"));
  background-position:center;background-size:cover;background-repeat:no-repeat;
}
.llmo__phone-notch{
  position:absolute;left:50%;top:7px;transform:translateX(-50%);
  width:56px;height:14px;border-radius:0 0 10px 10px;background:#1a1d22;
}


/* S2 共感（2カラム） */
.llmo__why{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:start}
.llmo__why-lead{margin:28px 0 0;font-size:16px;color:var(--llmo-ink-mute);line-height:2}
.llmo__why-answer{
  margin:28px 0 0;padding:24px 23px;background:#fff;border:1px solid var(--llmo-line);border-radius:8px;
  font-size:16px;line-height:1.9;color:var(--llmo-ink)
}
.llmo__why-answer strong{color:var(--llmo-ink-strong);background:linear-gradient(transparent 62%,rgba(253,208,0,.45) 62%)}
.llmo__why-list{display:flex;flex-direction:column;gap:16px}
.llmo__symptom{
  display:grid;grid-template-columns:64px minmax(0,1fr);gap:20px;align-items:start;
  padding:27px 28px 27px 24px;background:#f8f8f8;border:1px solid var(--llmo-line-soft);border-radius:8px;
  transition:background var(--llmo-t-dur) var(--llmo-t-ease)
}
.llmo__symptom:hover{background:#fff}
.llmo__symptom-no{font-family:"Oswald",sans-serif;font-size:34px;line-height:1;color:var(--llmo-line);font-weight:500}
.llmo__symptom-title{margin:0 0 8px;font-size:18px;font-weight:500;color:var(--llmo-ink-strong);line-height:1.6}
.llmo__symptom-desc{margin:0;font-size:14px;color:var(--llmo-ink-mute);line-height:1.9}

/* S4 内訳メーター */
.llmo__meter{margin:0 0 48px;width:100%}
.llmo__meter-bar{display:flex;gap:2px;height:14px;border-radius:7px;overflow:hidden}
.llmo__meter-bar i{display:block;height:100%}
.llmo__meter-legend{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:16px;font-size:13px;color:var(--llmo-ink-mute)}
.llmo__meter-legend span{display:inline-flex;align-items:center;gap:7px}
.llmo__meter-legend i{width:10px;height:10px;border-radius:3px;flex:none}
.llmo__meter-total{display:flex;align-items:baseline;gap:10px;margin-bottom:14px}
.llmo__meter-total b{font-family:"Oswald",sans-serif;font-size:34px;line-height:1;color:var(--llmo-ink-strong)}
.llmo__meter-total span{font-size:14px;color:var(--llmo-ink-mute)}

/* FAQ */
.llmo__faqpanel{padding:min(5.8vw,64px);background:#F5F5F5;border-radius:16px}
.llmo__faq details{border:0;border-radius:16px}
.llmo__faq summary{padding:24px 60px 24px 72px}
.llmo__faq p{padding:0 24px 24px 72px}
.llmo__faq{display:flex;flex-direction:column;gap:16px}
.llmo__faq details{border:1px solid var(--llmo-line);border-radius:var(--llmo-radius);background:#fff}
.llmo__faq{counter-reset:llmofaq}
.llmo__faq details{counter-increment:llmofaq}
.llmo__faq summary{
  list-style:none;cursor:pointer;padding:22px 60px 22px 72px;position:relative;
  font-size:16px;font-weight:500;color:var(--llmo-ink-strong);
}
.llmo__faq summary::marker{content:""}
.llmo__faq summary .num{
  position:absolute;left:26px;top:22px;font-family:"Oswald",sans-serif;font-size:15px;
  color:#919191;letter-spacing:.06em;
}
.llmo__faq p{padding-left:72px}
.llmo__faq summary::-webkit-details-marker{display:none}
.llmo__faq summary::after{
  content:"";position:absolute;right:26px;top:50%;width:12px;height:7px;
  background:url("https://akarumi.jp/wp-content/themes/akarumi2/assets/img/button/icon-angle-gray.svg") no-repeat center/contain;
  transform:translateY(-50%) rotate(90deg);transition:transform .25s ease;
}
.llmo__faq details[open] summary::after{transform:translateY(-50%) rotate(-90deg)}
.llmo__browser{transition:box-shadow .5s var(--llmo-t-ease)}
.llmo__preview,.llmo__catrow{transition:transform .8s var(--llmo-t-ease),opacity .8s var(--llmo-t-ease)}
.llmo__faq p{margin:0;padding:0 26px 24px;font-size:14px;color:var(--llmo-ink-mute)}

/* AKARUMI実サイト踏襲パーツ */
.llmo__bubble{
  position:relative;display:inline-block;margin:0 auto 10px;padding:6px 16px;border-radius:var(--llmo-pill);
  background:var(--llmo-accent);color:#333;font-size:12px;font-weight:700;letter-spacing:.02em;
}
.llmo__bubble::after{
  content:"";position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);
  border-left:6px solid transparent;border-right:6px solid transparent;border-top:7px solid var(--llmo-accent);
}
.llmo__btnwrap{display:flex;flex-direction:column;align-items:center}
.llmo__btn .llmo__arrow{width:7px;height:12px;display:inline-block;background:url("https://akarumi.jp/wp-content/themes/akarumi2/assets/img/button/icon-angle-white.svg") no-repeat center/contain}
.llmo__btn--ghost .llmo__arrow,.llmo__btn--yellow .llmo__arrow{background-image:url("https://akarumi.jp/wp-content/themes/akarumi2/assets/img/button/icon-angle-gray.svg")}
/* 濃色CTA帯（実サイトの「料金・プランについてはこちら」と同型） */
.llmo__band{background:#333;color:#fff;padding-block:64px;text-align:center;position:relative;overflow:hidden}
.llmo__band::before{
  content:"";position:absolute;inset:0;opacity:.16;
  background-image:radial-gradient(rgba(255,255,255,.55) 1px, transparent 1px);
  background-size:14px 14px;
}
.llmo__band > *{position:relative}
.llmo__band .llmo__inner{max-width:var(--llmo-container)}
/* 76:505 S8の入力欄はFigmaでは線なし */
.llmo__band .llmo__input{box-shadow:none;background:#fff}
.llmo__band .llmo__btn--ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.5)}
.llmo__band h2,.llmo__band .llmo__head > span{margin:0 0 6px;font-size:clamp(24px,2.5vw,32px);font-weight:500;line-height:1.2;letter-spacing:var(--llmo-ls);color:#fff}
.llmo__band .llmo__head{color:#fff}
.llmo__band p{margin:0 0 26px;color:#c2c8d2;font-size:14px}
.llmo__btn--yellow{background:var(--llmo-accent);color:#333;box-shadow:var(--llmo-shadow-strong)}

/* 中間CTA */
.llmo__midcta-box{
  display:flex;align-items:center;gap:40px;padding:36px 44px;border-radius:var(--llmo-radius-lg);
  background:linear-gradient(90deg,#fff8de 0%,#fff3c4 100%);border:1px solid #f2dfa0;
}
.llmo__midcta-body{flex:1;min-width:0}
.llmo__midcta-lead{margin:0 0 8px;font-size:22px;font-weight:500;color:var(--llmo-ink-strong);line-height:1.6}
.llmo__midcta-note{margin:0;font-size:13px;color:#7a6b3a}
.llmo__midcta-form{flex:none;width:min(52%,520px);margin-top:0}

/* 連携・CTA */
.llmo__link2{display:flex;gap:48px;align-items:center}
.llmo__link2-body{flex:1}
.llmo__link2-body h3{margin:0 0 16px;font-size:26px;line-height:1.5;font-weight:500;line-height:1.6;color:var(--llmo-ink-strong)}
.llmo__link2-body p{margin:0 0 24px;color:var(--llmo-ink-mute);font-size:15px}
.llmo__link2-figure{flex:none;width:46%}
.llmo__link2-figure img{display:block;width:100%;height:auto}
.llmo__btns{display:flex;gap:16px;flex-wrap:wrap}
.llmo__cta{background:linear-gradient(180deg,#f7f9fc 0%,#e9eff8 100%);text-align:center}
.llmo__disclaimer{margin:28px auto;max-width:900px;font-size:12px;color:#919191;text-align:center;line-height:1.9}

/* 状態切替 */
.llmo__state{display:none}
.llmo__state.is-active{display:block}
.llmo__loading{padding-block:120px;text-align:center;background:linear-gradient(180deg,#fbfcfe 0%,#eaf0f9 100%)}
.llmo__progress{width:100%;max-width:720px;height:10px;margin:28px auto 0;border-radius:5px;background:#dfe5ee;overflow:hidden}
.llmo__progress span{display:block;height:100%;width:58%;border-radius:5px;background:var(--llmo-ink-strong)}
.llmo__progress-steps{display:flex;justify-content:space-between;width:100%;max-width:720px;margin:14px auto 0;font-size:13px;color:var(--llmo-ink-mute)}
.llmo__progress-steps b{color:var(--llmo-ink-strong);font-weight:500}

/* 簡易ヘッダー・フッター（本番は既存テーマの共通パーツを使用） */
.llmo__header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(6px);border-bottom:1px solid var(--llmo-line)}
.llmo__header-in{display:flex;align-items:center;justify-content:space-between;gap:24px;height:76px}
.llmo__logo{display:flex;align-items:center;text-decoration:none}
.llmo__logo img{display:block;width:150px;height:auto}
.llmo__gnav{display:flex;gap:22px;font-size:14px;margin-left:auto}
.llmo__burger{display:none}
.llmo__gnav a{color:var(--llmo-ink);text-decoration:none}
.llmo__gnav a:hover{color:var(--llmo-brand)}
/* フッター（akarumi.jp 現行フッターの実測値をそのまま採用）
   帯 #eee ／ パネル #fff r24 ／ 内側 padding 72/115/24 ／ ブランド336・クラスタ676 */
.llmo__footer{padding:32px;background:#eee;color:#666}
.llmo__footer-in{max-width:1376px;margin-inline:auto;padding:72px clamp(24px,8vw,115px) 24px;background:#fff;border-radius:24px}
.llmo__footer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:56px}
.llmo__footer-brand{flex:0 0 auto;width:336px}
.llmo__footer-title{display:block;padding-top:36px}
.llmo__footer-title img{display:block;width:320px;height:auto}
.llmo__footer-sns{display:flex;align-items:center;gap:16px;margin-top:32px;height:34px}
.llmo__footer-sns img{display:block}
.llmo__footer-info{margin:32px 0 0;font-size:14px;line-height:1.5;letter-spacing:0;color:#666}
.llmo__footer-clusters{flex:1;display:flex;justify-content:space-between;align-items:flex-start;gap:56px}
.llmo__footer-nav{display:grid;grid-template-columns:auto auto auto;gap:28.8px}
.llmo__footer-nav a{display:inline-flex;align-items:center;gap:4px;font-size:16px;line-height:1;letter-spacing:0;color:#000;text-decoration:none;white-space:nowrap}
.llmo__footer-nav a:hover{opacity:.6}
.llmo__footer-nav img{display:block;width:16px;height:16px}
.llmo__footer-btns{flex:0 0 auto;display:flex;flex-direction:column;gap:12px;width:200px}
.llmo__fbtn{display:flex;align-items:center;justify-content:center;height:50px;border:1px solid #ddd;border-radius:40px;background:#fff;font-size:16px;color:#333;text-decoration:none;transition:opacity .3s var(--llmo-t-ease)}
.llmo__fbtn:hover{opacity:.7}
.llmo__fbtn--black{background:#333;border-color:#333;color:#fff}
.llmo__copyright{margin:64px 0 0;font-size:14px;letter-spacing:0;color:#888;text-align:center}


/* ---------- タブレット ---------- */
@media screen and (max-width:1199px){
  .llmo__header-catch{display:none}
  .llmo__header-nav{font-size:14px;gap:1rem}
  .llmo__abtn{height:44px;padding-inline:16px;font-size:14px}
  /* KVは1148pxの2カラム前提。コンテナ幅を確保できない幅では縦積みにする */
  .llmo__kv-inner{flex-direction:column;padding-block:64px;gap:40px}
  .llmo__kv-left,.llmo__kv-right{width:min(100%,700px);height:auto}
  .llmo__footer-in{padding:56px 40px 24px}
  .llmo__footer-top{flex-direction:column;align-items:center;gap:40px;text-align:center}
  .llmo__footer-brand{width:auto}
  .llmo__footer-title{padding-top:0}
  .llmo__footer-sns{justify-content:center}
  .llmo__footer-clusters{width:100%;justify-content:center;gap:56px;text-align:left}
  .llmo__copyright{margin-top:48px}
}
@media screen and (max-width:1023px){
  .llmo__why{grid-template-columns:1fr;gap:40px}
  .llmo__phone{width:140px;right:-10px;bottom:-40px}
  .llmo__kv-inner{flex-direction:column;padding-block:64px;gap:40px}
  .llmo__kv-left,.llmo__kv-right{width:min(100%,700px)}
  .llmo__kv-catch{font-size:18px}
  .llmo__kv-logo{width:300px;margin:12px 0 16px}
  .llmo__kv-title{font-size:30px}
  .llmo__hero-grid{grid-template-columns:1fr;gap:36px}
  .llmo__hero-copy{text-align:center}
  .llmo__hero-copy .llmo__form{margin-inline:auto}
  .llmo__hero-copy .llmo__notes{justify-content:center}
  .llmo__preview{max-width:520px;margin-inline:auto}
  .llmo__grid--4,.llmo__cats{grid-template-columns:repeat(2,1fr)}
  .llmo__link2{flex-direction:column;gap:28px}
  .llmo__link2-figure{width:100%}
  .llmo__sec{padding-block:72px}
}

/* ---------- SP（既存テーマの境界に合わせる） ---------- */
@media screen and (max-width:767px){
  .llmo{font-size:14px}
  .llmo__inner{padding-inline:16px}
  .llmo__sec{padding-block:72px}
  .llmo__head{margin-bottom:32px;gap:10px}
  .llmo__head > span{font-size:32px}
  .llmo__band h2,.llmo__band .llmo__head > span{font-size:32px}
  .llmo__head small{font-size:13px}
  .llmo__hero{padding-block:44px 56px}
  .llmo__hero-grid{grid-template-columns:1fr;gap:32px}
  .llmo__hero-copy{text-align:center}
  .llmo__hero-copy .llmo__notes{justify-content:center}
  .llmo__preview-score{gap:12px}
  .llmo__form{flex-direction:column;gap:10px}
  .llmo__input{height:56px}
  .llmo__btn{width:100%;min-height:58px}
  .llmo__btn--lg{min-height:64px;font-size:16px;padding:14px 24px}
  .llmo__notes{gap:14px;font-size:12px}
  .llmo__grid--3,.llmo__grid--4,.llmo__cats,.llmo__pain-list{grid-template-columns:1fr}
  .llmo__why{grid-template-columns:1fr;gap:32px}
  .llmo__symptom{padding:20px;gap:14px;grid-template-columns:44px minmax(0,1fr)}
  .llmo__symptom-no{font-size:26px}

  .llmo__score{flex-direction:column;gap:24px;text-align:center}
  .llmo__gauge{width:100%}
  .llmo__score-body{text-align:left;width:100%}
  .llmo__bar{gap:10px}
  .llmo__bar-name{width:98px;font-size:12px}
  .llmo__bar-val{width:52px;font-size:12px}
  .llmo__bar-val-pc{display:none}
  .llmo__bar-val-sp{display:inline}
  .llmo__midcta-box{flex-direction:column;align-items:stretch;gap:16px;padding:24px}
  .llmo__midcta-form{width:100%}
  .llmo__scorecard{grid-template-columns:1fr;gap:20px;padding:24px 20px}
  .llmo__frow{flex-direction:column!important;gap:20px;padding:24px}
  .llmo__frow-fig{width:100%}
  .llmo__frow-body h3{font-size:26px}
  .llmo__darklist{grid-template-columns:1fr;gap:24px}
  .llmo__report{padding:24px}
  .llmo__scoreline{flex-direction:column;align-items:flex-start;gap:20px}
  .llmo__scorenum b{font-size:64px}
  .llmo__scorenum i{line-height:14px}
  .llmo__meta-cat{display:none}   /* FigmaのSPでは出さない */
  .llmo__scoretext p{font-size:17px}
  .llmo__chartrow{grid-template-columns:1fr 44px;gap:8px 12px;padding:14px 0}
  .llmo__chartname{grid-column:1}
  .llmo__track{grid-column:1 / -1;order:3}
  .llmo__val{grid-column:2;order:2}
  .llmo__counts{grid-column:1 / -1;order:4;justify-content:flex-start;gap:16px}
  .llmo__check{grid-template-columns:1fr;gap:8px}
  .llmo__prioitem{grid-template-columns:40px 1fr;gap:14px}
  .llmo__prionum2{font-size:26px}
  .llmo__tally{gap:18px;flex-wrap:wrap}
  .llmo__catrow{grid-template-columns:32px 1fr;gap:6px 10px;padding:14px 16px}
  .llmo__catrow .llmo__bar-track{grid-column:1 / -1}
  .llmo__catscore{grid-column:1;text-align:left;font-size:17px}
  .llmo__catbreak{grid-column:2;justify-content:flex-end}
  .llmo__summary{grid-template-columns:1fr 1fr 1fr}
  .llmo__prio{grid-template-columns:1fr;gap:26px}
  .llmo__kv-desc{font-size:20px}
  .llmo__card{padding:24px}
  .llmo__pain-item{padding:24px}
  .llmo__faqpanel{padding:24px}
  .llmo__formbox{padding:24px}
  .llmo__grid{gap:16px}
  .llmo__pain-list{gap:16px}
  .llmo__cats{gap:16px}
  .llmo__stats-in{grid-template-columns:1fr 1fr;gap:24px 16px;padding-block:32px}
  .llmo__stats-in b{font-size:48px}
  .llmo__fields{grid-template-columns:1fr}

  .llmo__submit{gap:14px}
  .llmo__formhead span{font-size:24px}
  .llmo__submit .llmo__btn{width:100%;justify-content:center}
  .llmo__faq summary{padding:18px 48px 18px 18px;font-size:15px}
  .llmo__faq p{padding:0 18px 20px}
  .llmo__header{padding:12px 16px}
  .llmo__footer{padding:16px}
  .llmo__footer-in{padding:48px 24px 24px}
  .llmo__footer-top{flex-direction:column;align-items:center;gap:40px;text-align:center}
  .llmo__footer-brand{width:100%}
  .llmo__footer-title{padding-top:0}
  .llmo__footer-title img{width:min(260px,80%);margin-inline:auto}
  .llmo__footer-sns{justify-content:center}
  .llmo__footer-clusters{flex-direction:column;align-items:center;gap:32px;width:100%}
  .llmo__footer-nav{grid-template-columns:auto auto;grid-template-rows:repeat(6,auto);grid-auto-flow:column;gap:24px 32px;justify-content:center;text-align:left}
  /* SPは列方向に流すため、読み順が崩れないよう order を指定する */
  .llmo__footer-nav a:nth-child(1){order:1}   /* 機能 */
  .llmo__footer-nav a:nth-child(4){order:2}   /* 料金 */
  .llmo__footer-nav a:nth-child(7){order:3}   /* 活用ガイド */
  .llmo__footer-nav a:nth-child(10){order:4}  /* 利用規約 */
  .llmo__footer-nav a:nth-child(3){order:5}   /* 販売パートナー */
  .llmo__footer-nav a:nth-child(6){order:6}   /* お知らせ */
  .llmo__footer-nav a:nth-child(2){order:7}   /* LLMO相談窓口 */
  .llmo__footer-nav a:nth-child(5){order:8}   /* ナレッジ */
  .llmo__footer-nav a:nth-child(8){order:9}   /* セミナー */
  .llmo__footer-nav a:nth-child(11){order:10} /* プライバシーポリシー */
  .llmo__footer-nav a:nth-child(9){order:11}  /* 運営会社 */
  .llmo__footer-nav a{font-size:14px}
  .llmo__footer-btns{width:min(280px,100%)}
  .llmo__copyright{margin-top:40px;font-size:12px}
  .llmo__header-catch,.llmo__header-wrap{display:none}
  .llmo__header-title{width:150px}
  .llmo__header-title img{width:150px}
  .llmo__burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:26px;height:26px}
  .llmo__burger i{display:block;height:2px;width:26px;background:var(--llmo-ink-strong);border-radius:1px}
  .llmo__kv-inner{flex-direction:column;padding-block:48px;padding-inline:16px;gap:32px}
  .llmo__kv-left,.llmo__kv-right{width:100%}
  .llmo__kv-catch{font-size:14px}
  .llmo__floatscore{left:-6px;bottom:-16px;padding:12px 16px 12px 12px;gap:10px}
  .llmo__phone{width:104px;right:-6px;bottom:-28px;border-radius:18px;padding:5px}
  .llmo__phone-screen{border-radius:14px}
  .llmo__phone-notch{width:36px;height:10px}
  .llmo__floatscore span{display:none}
  .llmo__kv-title{font-size:24px;line-height:1.5}
  .llmo__kv-desc{font-size:14px}
  .llmo__kv-formrow{flex-direction:column;align-items:stretch;gap:32px}
  .llmo__abtn2{width:100%;height:58px}
  .llmo__balloon{top:-30px;padding:5px 12px;font-size:11px}
  .llmo__burger{display:flex;flex-direction:column;justify-content:center;gap:5px;width:26px;height:26px}
  .llmo__burger i{display:block;height:2px;background:var(--llmo-ink-strong);border-radius:1px}
  .llmo__hero-copy h1,.llmo__hero h1{font-size:22px;max-width:none}
  .llmo__header-in{height:64px}
  .llmo__lock-cover{padding:28px 18px 32px}
}
@media screen and (min-width:768px) and (max-width:1023px){
  .llmo__kv-left h1{font-size:26px}
}
@media screen and (min-width:1200px){
  .llmo__inner{padding-inline:0}
}
@media screen and (max-width:650px){
  .llmo__summary{grid-template-columns:1fr 1fr 1fr}
}
@media screen and (max-width:500px){
  .llmo__notes{font-size:12px}
}
@media screen and (min-width:1100px){
  .llmo__kv-desc{font-size:20px}
}
@media screen and (min-width:768px) and (max-width:1440px){
  .llmo__kv-inner{padding-inline:24px}
}
@media screen and (max-width:1400px){
  .llmo__header{padding-inline:24px}
}
@media screen and (max-width:1350px){
  .llmo__header-nav{gap:1.2rem}
}
@media screen and (max-width:1250px){
  .llmo__header-utility{font-size:13px}
}
@media screen and (max-width:600px){
  .llmo__catrow{padding:20px}
}
@media screen and (max-width:540px){
  .llmo__prionum{width:34px;height:34px;font-size:16px}
}
@media screen and (max-width:420px){
  .llmo__kv-title{font-size:20px}
  .llmo__summary b{font-size:26px}
}
@media (prefers-reduced-motion:reduce){
  .llmo *{transition:none!important;animation:none!important}
}

/* ---------- 実装で追加した要素（デザインのトーンに合わせる） ---------- */
.llmo__formerror{
  margin:12px 0 0;padding:12px 16px;border-radius:8px;
  background:#fdeceb;border:1px solid #f3c6c2;color:#b3261e;font-size:14px;line-height:1.7;
}
.llmo__kv-left .llmo__formerror,.llmo__band .llmo__formerror{margin-top:16px}
.llmo__band .llmo__formerror{background:rgba(255,255,255,.94);border-color:#f3c6c2}
.llmo__thanks{
  margin:24px 0 0;padding:24px;border-radius:var(--llmo-radius-lg);
  background:#fff;border:1px solid var(--llmo-line);
}
.llmo__thanks h3{margin:0 0 8px;font-size:20px;font-weight:500;color:var(--llmo-ink-strong)}
.llmo__thanks p{margin:0;font-size:14px;color:var(--llmo-ink-mute);line-height:2}
/* HubSpotフォームは先方のCSSを持ち込まないため、こちらで最低限の見た目を当てる */
.llmo__formbox .hs-form fieldset{max-width:none!important}
.llmo__formbox .hs-form .hs-form-field{margin-bottom:16px}
.llmo__formbox .hs-form label{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:var(--llmo-ink-strong)}
.llmo__formbox .hs-form input[type="text"],
.llmo__formbox .hs-form input[type="email"],
.llmo__formbox .hs-form input[type="tel"],
.llmo__formbox .hs-form input[type="url"],
.llmo__formbox .hs-form textarea,
.llmo__formbox .hs-form select{
  width:100%;padding:14px 16px;border:1px solid var(--llmo-line);border-radius:8px;
  font-family:inherit;font-size:15px;color:var(--llmo-ink);background:#fff;
}
.llmo__formbox .hs-form .hs-button{
  display:inline-flex;align-items:center;justify-content:center;min-height:64px;padding:12px 36px;
  border:0;border-radius:var(--llmo-pill);background:var(--llmo-ink-strong);color:#fff;
  font-family:inherit;font-size:16px;font-weight:500;letter-spacing:.03em;cursor:pointer;
}
.llmo__formbox .hs-form .hs-error-msg{color:#b3261e;font-size:13px}

/* テーマのコンテンツ幅に収まってしまう場合の全幅表示（設定でON／既定はOFF）
   margin-inline:calc(50% - 50vw) は、親のコンテンツボックス幅によって外し量がずれる。
   親の中心を基準に自分の幅の半分だけ戻す形にすると、親の幅に関係なく画面幅ちょうどになる。 */
body.akllmo-fullwidth{overflow-x:clip}
.llmo--fullwidth{
  position:relative;
  width:100vw;
  max-width:100vw;
  left:50%;
  transform:translateX(-50%);
}

/* ---- Figma（先方確認版）に合わせる調整 ----
   Figmaのフレームには黄色のマーカーと英字ラベル前の装飾が入っていない。
   実装だけに付いていたため外す。戻す場合はこのブロックを削除する。 */
.llmo__mk{background:none}
.llmo__kv-title em{background:none}
.llmo__why-answer strong{background:none;font-weight:400;color:inherit}
.llmo__symptom-desc{line-height:27px}

/* Figmaのフレームには、3ステップ背景の大きな番号が入っていない。実装だけの装飾なので出さない。 */
.llmo__frow-ghost{display:none}

/* ---- Figma実寸に合わせる（S4以降） ---- */
/* Figmaのカードにはアイコンが入っていないため出さない */
.llmo__cat-icon{display:none}
@media screen and (min-width:768px){.llmo__cat{min-height:179px}}
/* S4のリード文はFigmaで1068px幅 */
.llmo__sec--dot .llmo__lead{max-width:1068px}
/* S6のカードは367px×3・間隔24px、リードは761px */
@media screen and (min-width:768px){.llmo__darklist{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:56px}}
.llmo__darkitem{padding:24px}
/* 70:7 は幅761pxで折り返さない1行（Figmaもnowrap）。字送り0.5pxだと
   自動折返しでは1行に収まらないため、設計どおり折り返さない指定にする */
.llmo__dark .llmo__lead{max-width:761px}
@media screen and (min-width:768px){.llmo__dark .llmo__lead{white-space:nowrap}}
/* FAQのパネル内側は64px */
.llmo__faqpanel{padding:64px}

/* ---- Figma実寸に合わせる（S4・S6・S7の縦リズム） ---- */
/* Figmaには濃色帯のCTA上の吹き出しが入っていない */
.llmo__dark .llmo__btnwrap,.llmo__band .llmo__btnwrap{display:none}
/* 見出し→リード文の間隔はFigmaで20px */
.llmo__sec--dot .llmo__head,.llmo__dark .llmo__head{margin-bottom:20px}
.llmo__sec--dot .llmo__lead,.llmo__dark .llmo__lead{margin-top:0}
/* 連携カードの本文は3行ぶん（27px×3） */
.llmo__darkitem p{line-height:27px}
/* FAQ：見出しの下40px・各項目74px */
.llmo__faqpanel .llmo__head{margin-bottom:40px}
.llmo__faq summary{line-height:26px}

/* ---- Figma実寸に合わせる（S4〜S8の内部寸法・実測差分から確定） ---- */
.llmo__meter{margin-top:48px}
.llmo__cat p{line-height:23px}
/* pictureがインラインだと行送りのぶん12px高くなる */
.llmo__browser picture{display:block;line-height:0}
.llmo__darkitem h3{line-height:29px}
.llmo__dark .llmo__btns{margin-top:40px}

/* ---- Figma実寸に合わせる 第3弾（2026-09-10・PC-01の残差145pxを解消） ----
   いずれも「行送り2（＝font-size×2）が効いていて、Figmaの行送りより高い」ことが原因。
   数値はFigma PC-01(59:3)の各ノードの実測高さ。 */

/* 中間CTA 68:93 注記は h23（13px×行送り2で26pxになり、枠が5px高くなっていた） */
.llmo__midcta-note{font-size:14px;line-height:23px}

/* S4メーター 131:31 total 37 / bar 14 / legend 21、メーター下は40 */
.llmo__meter{margin-bottom:40px}
.llmo__meter-total{height:37px;margin-bottom:14px}
.llmo__meter-total span{line-height:22px}
.llmo__meter-legend{gap:10px 22px;line-height:21px}
.llmo__meter-legend span{line-height:21px}

/* S4カード 68:12 Figmaにアイコンは無い／英字ラベルは11px・行送り1（h11）
   Figmaは1段目・2段目とも179pxなので、行の高さを揃える */
.llmo__cat-no{display:block;font-size:11px;line-height:11px}
@media screen and (min-width:768px){.llmo__cats{grid-auto-rows:1fr}}

/* S5 68:81 ブラウザ枠の上バーは43px（URL文字が11px×行送り2で12px高かった） */
.llmo__browser-bar span{line-height:1}
/* S5 68:88 キャプションは h25 */
.llmo__sec--tint .llmo__meta{line-height:25px}

/* S6 70:11 連携カードの英字ラベルは h12（12px・行送り1） */
.llmo__darkitem span{line-height:1}

/* S7 70:40 FAQは1項目74px＝上下24px＋本文26px。
   Figmaの1px枠は寸法に加算されないので、borderではなくリングで描く */
.llmo__faq details{border:0;box-shadow:0 0 0 1px var(--llmo-line)}
.llmo__faq summary{padding-block:24px}
.llmo__faq summary .num{top:50%;transform:translateY(-50%);line-height:1}
/* 70:43 Figmaの開閉記号は「＋」（テーマのアングルアイコンではない） */
.llmo__faq summary::after{
  content:"＋";background:none;width:auto;height:auto;right:26px;
  font-size:14px;font-weight:400;line-height:1;letter-spacing:.35px;color:#333;transform:translateY(-50%);
}
.llmo__faq details[open] summary::after{content:"－";transform:translateY(-50%)}

/* S8 70:70 見出しは68px（span下の6pxはFigmaに無い）／本文27px／本文→フォーム26px */
.llmo__band .llmo__head > span{margin-bottom:0}
.llmo__band p{line-height:27px;margin-bottom:26px}
.llmo__band .llmo__form{margin-top:26px}

/* Figmaの1px枠は中央揃えストロークで寸法に加算されない。CSSのborderは必ず加算されるので、
   Figmaの寸法をそのまま使う箱では border を使わず、レイアウトに影響しない描き方に置き換える。
   （診断範囲カード＋2px／中間CTA枠＋2px／ブラウザ枠の上バー＋1px の原因） */
.llmo__cat{border:0;outline:1px solid var(--llmo-line);outline-offset:-1px}
.llmo__midcta-box{border:0;box-shadow:0 0 0 1px #f2dfa0}
.llmo__browser-bar{border-bottom:0;box-shadow:inset 0 -1px 0 #e2e6ec}

/* 指標カード 134:10 は 170px ちょうど（枠1pxぶん高かった）／
   症状カード 131:16 は 147px・内側 上下28 左24 右28（枠1pxをpaddingで相殺していた） */
.llmo__stats-in{border:0;outline:1px solid var(--llmo-line);outline-offset:-1px}
@media screen and (min-width:768px){.llmo__stats-in{height:170px}}
.llmo__symptom{border:0;outline:1px solid var(--llmo-line-soft);outline-offset:-1px}
@media screen and (min-width:768px){.llmo__symptom{min-height:147px;padding:28px 28px 28px 24px}}

/* ================================================================
   Figma SP-01(76:197) の実測に合わせる。
   数値はすべてFigmaのノードの実寸。PC指示と混ぜないため、この1ブロックにまとめる。
   ================================================================ */
@media screen and (max-width:767px){

  /* 見出しは「英字16 ＋ 14 ＋ 見出し2行×38＝76」で106px */
  .llmo__head{gap:14px;margin-bottom:48px}
  .llmo__head small{line-height:16px}
  .llmo__head > span{line-height:38px}

  /* ---- KV 76:239（h735） ---- */
  /* FigmaのSPには吹き出し・スマホ・スコアの浮き玉が無い */
  .llmo__balloon,.llmo__phone,.llmo__floatscore{display:none}
  .llmo__kv-title{line-height:32px}          /* 2行×32＝64 */
  .llmo__kv-desc{line-height:27px}           /* 2行×27＝54 */
  .llmo__kv-formrow{flex-direction:column;gap:12px}
  .llmo__kv-formrow .llmo__input{height:56px}
  .llmo__kv-formrow .llmo__abtn2{height:56px;min-height:56px}
  .llmo__kv-right{height:240px}
  .llmo__laptop{height:213px}
  .llmo__laptop-screen{height:203px;padding:11px}
  .llmo__laptop-screen img{width:100%;height:100%;object-fit:cover}
  .llmo__laptop-base{width:100%;height:10px}
  .llmo__notes{line-height:13px}

  /* ---- 指標 160:2（カード284・2列×2行） ---- */
  .llmo__stats-in{height:284px;grid-template-columns:1fr 1fr;padding:24px 16px;row-gap:24px}
  .llmo__stats-in div:nth-child(3)::before{display:none}  /* 2行目の先頭に縦罫は入らない */

  /* ---- S2 76:284（h1253・Figmaは 見出し→症状→結論 の順） ---- */
  .llmo__why{display:flex;flex-direction:column;gap:0}
  .llmo__why-head{display:contents}
  .llmo__why-lead{margin:14px 0 48px;font-size:14px;line-height:2;letter-spacing:.4px}
  .llmo__why-list{display:flex;flex-direction:column;gap:16px}
  .llmo__why-answer{
    order:1;margin:40px 0 0;padding:24px 40px;font-size:20px;line-height:1.8;letter-spacing:.5px;
    border:0;box-shadow:0 0 0 1px var(--llmo-line);
  }
  .llmo__symptom{grid-template-columns:1fr;gap:0;padding:24px;min-height:139px}
  .llmo__symptom-no{display:none}
  .llmo__symptom-title{margin:0 0 8px;line-height:29px}

  /* ---- S3 76:302（各ステップ 24＋図240＋20＋本文＋24） ---- */
  .llmo__frow-fig{flex:0 0 auto;width:100%;height:240px}
  .llmo__frow-fig img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
  .llmo__frow:nth-of-type(odd) .llmo__frow-fig{order:-1}  /* STEP01・03は図が先 */
  .llmo__frow-body h3{line-height:39px}

  /* ---- 中間CTA 76:420（枠295＝24＋本文107＋16＋フォーム124＋24） ---- */
  .llmo__midcta-lead{font-size:24px;line-height:1.6;letter-spacing:.6px}
  .llmo__midcta-note{font-size:13px;line-height:23px}
  .llmo__midcta-box{gap:16px}
  .llmo__midcta-form{flex-direction:column;gap:12px}
  .llmo__midcta-form .llmo__input,.llmo__midcta-form .llmo__btn{height:56px;min-height:56px}

  /* ---- S4 76:333（FigmaのSPに内訳メーターは無い／カードの高さは揃えない） ---- */
  .llmo__meter{display:none}
  .llmo__sec--dot .llmo__head,.llmo__dark .llmo__head{margin-bottom:20px}
  .llmo__cats{grid-template-columns:1fr;gap:16px;margin-top:48px}
  .llmo__cat:nth-child(5){margin-top:4px}   /* 1段目と2段目の間だけ20px */

  /* ---- S6 76:430（上下72px・カードは1列・190px） ---- */
  .llmo__dark{padding-block:72px}
  .llmo__darklist{grid-template-columns:1fr;gap:16px;margin-top:56px}
  .llmo__darkitem{padding:24px}

  /* ---- S7 76:462（パネル内側64・質問文は左65 右60・1項目は本文行数で決まる） ---- */
  .llmo__faqpanel{padding:64px}
  .llmo__faqpanel .llmo__head{margin-bottom:40px}
  /* 76:468 上下24pxの箱。字面はFigmaのほうが1px上なので、箱の高さは変えずに
     上下のpaddingを23/25にして字だけ寄せる */
  .llmo__faq summary{padding:23px 60px 25px 65px;font-size:16px;line-height:26px}
  .llmo__faq p{padding-left:65px}
}

/* ================================================================
   Figma PC-03(74:2) 結果ステートの実寸に合わせる。
   原因はPC-01と同じで、行送り2（font-size×2）がFigmaの行送りより高いこと。
   ================================================================ */
/* レポート帯は上48・下80（Figma 74:44） */
.llmo__state[data-state="result"] .llmo__sec--rule{padding:48px 0 80px}

/* 報告カードの見出しは 29 ＋ 下16 ＋ 罫1（Figma 74:51） */
.llmo__rhead h3{line-height:29px}

/* スコア行は 罫1 ＋ 20 ＋ 本体137（Figma 74:57） */
.llmo__scoreline{padding:20px 0 0}
.llmo__tally{margin-top:18px}
.llmo__tally div,.llmo__tally b{line-height:29px}

/* カテゴリ別の1行は52px＋罫1（Figma 74:89） */
.llmo__chartname,.llmo__val{line-height:24px}
.llmo__counts{line-height:21px}

/* 技術基盤の1項目は93px＝上下18＋見出し26＋4＋本文27（Figma 76:8） */
.llmo__check h4{line-height:26px}
.llmo__check p{line-height:27px}

/* 優先3項目の1項目は121px＝上下22＋英字11＋6＋見出し27＋6＋本文27（Figma 76:45） */
.llmo__priocat{display:block;line-height:11px}
.llmo__prioitem h4{line-height:27px}
.llmo__prioitem p{line-height:27px}

/* ロック行は108px＝上下20＋見出し26＋10＋帯11＋10＋帯11（Figma 76:67） */
.llmo__lockrow h4{line-height:26px}
.llmo__masked{gap:10px}

/* 見出し行は46px（本文29＋下16＋罫1） */
.llmo__rhead{height:46px}
.llmo__rhead span{line-height:21px}
/* 内訳の数はFigmaで29pxの1行 */
.llmo__tally div{height:29px;align-items:center}
.llmo__tally b{line-height:29px}
.llmo__tally div span,.llmo__tally div{font-size:14px}

/* ロックは 上28＋3行×108＋2罫 ＝354、その下に 28＋LOCKED28＋16＋見出し36＋8＋本文27＋22＋ボタン64＋40
   Figmaでは覆いが行に重なっていないので、重ね（-56px）をやめる。枠1pxは寸法に加算しない */
.llmo__lock{border:0;box-shadow:0 0 0 1px var(--llmo-line)}
.llmo__lock-preview{padding:28px 32px 0}
.llmo__lock-cover{margin-top:0;padding:28px 28px 40px}
.llmo__lock-cover h3{line-height:36px}
.llmo__lock-cover p{line-height:27px}
/* Figmaでは見出しの罫のすぐ下から本体が始まる（余分な上余白を持たない） */
.llmo__chart,.llmo__checks-list,.llmo__priolist{margin-top:0}
/* 報告カードの枠1pxも寸法に加算しない（4枚すべてが+2pxになっていた） */
.llmo__report{border:0;box-shadow:0 0 0 1px var(--llmo-line)}
/* LOCKEDバッジはFigmaで28px（Figma 76:94） */
.llmo__lock-badge{padding:0 18px;height:28px}
/* インライン要素だと親の行送り（32px）ぶん行箱が高くなるため、ブロックにして28pxちょうどにする */
.llmo__lock-badge{display:flex;width:max-content;margin-inline:auto}

/* ================================================================
   Figma SP-03(95:2) 結果ステートの実寸に合わせる（390px）
   ================================================================ */
@media screen and (max-width:767px){
  /* レポート帯は上32・下48、カード間は16（PCは24） */
  .llmo__state[data-state="result"] .llmo__sec--rule{padding:32px 0 48px}
  .llmo__report + .llmo__report{margin-top:16px}
  .llmo__report{padding:24px 20px}
  /* ロック＋フォーム帯は上下48・間24（Figma 97:61） */
  .llmo__state[data-state="result"] .llmo__sec--tint{padding:48px 0}
  .llmo__state[data-state="result"] .llmo__sec--tint > .llmo__inner{gap:24px}

  /* 見出しは縦積み：見出し27 ＋ 補足20 ＋ 16 ＋ 罫1 ＝ 64（Figma 95:35/95:36） */
  .llmo__rhead{height:auto;flex-direction:column;align-items:flex-start;gap:0;padding-bottom:16px}
  .llmo__rhead h3{line-height:27px}
  .llmo__rhead span{line-height:20px}

  /* スコア 95:34：数字64 ＋ グレード26 ＋ 14 ＋ 本文54 ＋ 本文50 ＋ 16 ＋ 内訳24 */
  .llmo__scoreline{padding:16px 0 0;gap:14px}
  .llmo__scorenum b{font-size:64px}
  .llmo__scoregrade{margin-top:0;line-height:26px}
  .llmo__scoretext p{line-height:27px}
  .llmo__scoretext small{margin-top:0;line-height:25px}
  .llmo__tally{margin-top:16px;padding-top:0;border-top:0}
  /* 95:49 SPは 色点8px・すき間6px・ラベル13px（= 1組66px） */
  .llmo__tally div{height:24px;gap:6px;font-size:13px}
  .llmo__tally .llmo__dot{width:8px;height:8px}
  .llmo__tally b{font-size:20px;line-height:24px}
  /* 95:46 補足は小数の字送りぶんで折返しが1文字ずれる。上の補正と同じ扱いにする */
  .llmo__scoretext small{margin-right:-0.025em}

  /* カテゴリ 95:67：12 ＋ 名前と点数22 ＋ 8 ＋ 帯10 ＋ 8 ＋ 内訳19 ＋ 12 ＝ 91 */
  .llmo__chart{margin-top:16px}
  .llmo__checks-list,.llmo__priolist{margin-top:8px}
  .llmo__chartrow{padding:12px 0;gap:8px 0}
  .llmo__chartname,.llmo__val{line-height:22px}
  .llmo__counts{line-height:19px}

  /* 技術基盤 97:8：14 ＋ 判定21 ＋ 6 ＋ 見出し24 ＋ 6 ＋ 本文25 ＋ 14 ＝ 110 */
  .llmo__check{padding:14px 0;gap:6px}
  .llmo__check h4{margin:0 0 6px;line-height:24px}
  .llmo__check p{line-height:25px}
  .llmo__jd{height:21px;line-height:21px}

  /* 優先 97:41：16 ＋ 英字10 ＋ 4 ＋ 見出し24 ＋ 4 ＋ 本文50 ＋ 16 ＝ 124 */
  .llmo__prioitem{padding:16px 0}
  .llmo__prionum2{line-height:26px}
  /* 97:43 SPは英字ラベル→見出しの間が4px（PC 76:47 は6px） */
  .llmo__priocat{line-height:10px;margin-bottom:4px}
  .llmo__prioitem h4{margin:4px 0 4px;line-height:24px}
  .llmo__prioitem p{line-height:25px}

  /* ロック 97:63：14 ＋ 判定21 ＋ 8 ＋ 見出し24 ＋ 8 ＋ 帯10 ＋ 8 ＋ 帯10 ＋ 14 ＝ 117 */
  .llmo__lockrow{grid-template-columns:1fr;gap:8px;padding:14px 0}
  .llmo__lockrow h4{margin:0 0 8px;line-height:24px}
  .llmo__masked{gap:8px}
  .llmo__masked i{height:10px;width:var(--wsp,80%)}
  .llmo__lock-preview{padding:20px 20px 0}
  .llmo__lock-cover{padding:24px 20px 28px}
  .llmo__lock-badge{height:25px}
  .llmo__lock-cover h3{margin:12px 0 0;line-height:27px}
  .llmo__lock-cover p{margin:0 0 16px;line-height:25px}
  .llmo__lock-cover .llmo__btn{width:100%;min-height:56px}

  /* フォーム 97:95：24 ＋ REQUEST13 ＋ 10 ＋ 見出し62 ＋ 16 ＋ 項目97×4 ＋ チェック25×2 ＋ 16 ＋ ボタン56 ＋ 24 */
  .llmo__formbox{padding:24px 20px}
  .llmo__formhead small{line-height:13px;margin-bottom:10px}
  .llmo__formhead span{font-size:26px;line-height:31px}
  .llmo__hsnote{display:none}          /* FigmaのSPには注記ボックスが無い */
  .llmo__fields{grid-template-columns:1fr;gap:16px;margin-top:16px}
  .llmo__field{gap:8px}
  .llmo__label{line-height:21px}
  .llmo__field input{height:52px}
  .llmo__checks{margin-top:16px}
  .llmo__checks label{line-height:25px}
  .llmo__submit{margin-top:16px}
  .llmo__submit .llmo__btn{width:100%;min-height:56px;justify-content:center}
}
/* ロック＋フォーム帯（Figma PC-03 76:65 は上64・下80・間40／SPは上下48・間24） */
.llmo__sec--lockform{padding-block:64px 80px}
.llmo__sec--lockform > .llmo__inner{display:flex;flex-direction:column;gap:40px}
@media screen and (max-width:767px){
  .llmo__sec--lockform{padding-block:48px}
  .llmo__sec--lockform > .llmo__inner{gap:24px}
}

/* ================================================================
   Figma PC-02(72:2) / SP-02(79:6) 解析中ステートの実寸に合わせる
   ================================================================ */
/* 帯の上下は96px（Figma 72:44 の head が y96、下も96） */
.llmo__loading{padding-block:96px}
/* ステップは 上下16＋本文（PCは2行×22＝44／SPは1行×22）。枠1pxは寸法に加算しない */
.llmo__steps li{line-height:22px;border:0;box-shadow:0 0 0 1px var(--llmo-line-soft)}
/* ステップ → 末尾の注記は24px、注記は1行25px */
.llmo__loading .llmo__disclaimer{margin:24px auto 0;line-height:25px}

@media screen and (max-width:767px){
  /* SPはステップが1カラム・各54px（Figma 79:58） */
  .llmo__steps{grid-template-columns:1fr;gap:16px;margin-top:28px}
}

/* ================================================================
   Figmaに無い装飾と、ボタン・フォームの実寸のずれを直す（2026-09-13）
   Figmaのボタンはテキストのみで矢印を持たない。左右の余白も箇所ごとに決まっている。
   ================================================================ */
/* 保険：どこかに矢印が残っても出さない */
.llmo__arrow{display:none}

/* S8最終CTAのフォームは 619px（入力420 ＋ 12 ＋ ボタン187）。Figma 70:76 */
.llmo__band .llmo__form{max-width:619px}
/* S8のボタンは左右36（Figma 70:79 → 36+115+36=187） */
.llmo__band .llmo__form .llmo__btn{padding-inline:36px}
/* S6の2つのボタンは左右48（Figma 70:30 w225 / 70:32 w188） */
.llmo__dark .llmo__btns .llmo__btn{padding-inline:48px}
/* 中間CTAのボタンは左右32（Figma 68:97 → 32+115+32=179） */
.llmo__midcta-form .llmo__btn{padding-inline:32px}
/* ロック内のCTAは左右36（Figma 76:101 w269） */
.llmo__lock-cover .llmo__btn{padding-inline:36px}
/* 枠線1pxは寸法に加算しない（KVボタン 181→179／S6のゴーストボタン 191→188） */
.llmo__abtn2{border:0;box-shadow:0 0 0 1px #333}
.llmo__btn--ghost{border:0;box-shadow:inset 0 0 0 1px #ddd}
/* 濃色面のゴーストボタンは 76:460 のとおり rgba(255,255,255,.5)。
   border を box-shadow に置き換えたので border-color の指定は効かない */
.llmo__dark .llmo__btn--ghost,.llmo__band .llmo__btn--ghost{box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)}
/* KVの地はFigmaでは「左が明るく右が暗い」。実装は292.74degで左右が逆だった。
   Figma実測: 左端 #f2f5f8 → 右端 #d1dae5（ほぼ水平・縦方向の変化はごく僅か） */

/* Figmaの各セクションの地は完全な単色（画素のばらつき0.0）。
   実装だけに入っていた地紋3種（縦ヘアライン・ドット・やわらかい光）を出さない。
   ※ 絶対遵守ルール「AIが選ぶ装飾を足さない」にも該当する */
.llmo__sec--rule::before,.llmo__sec--dot::before,.llmo__sec--glow::after{display:none}
/* 濃色帯（S6・S8）の白いドットもFigmaには無い */
.llmo__dark::before,.llmo__band::before{display:none}
/* 指標カードの左右24pxが効いていなかった（列が274.25→287になり中央がずれる）。Figma 134:10 */
@media screen and (min-width:768px){.llmo .llmo__stats-in{padding-inline:24px}}

/* ================================================================
   SPの文字サイズをFigma実値へ（get_design_context で確認）
   これまで実装側で小さめに置いていたため、折り返し位置がFigmaと違っていた
   ================================================================ */
@media screen and (max-width:767px){
  /* セクション見出しはPCと同じ32px（Figma 76:336） */
  .llmo__head > span{font-size:32px}
  /* 英字ラベルも16px（Figma 76:335） */
  .llmo__head small{font-size:16px;line-height:16px}
  /* KV見出し 22px・行送り1.45（Figma 76:243） */
  .llmo__kv-title{font-size:22px;line-height:1.45}
  /* KV説明 15px・行送り1.8（Figma 76:245） */
  .llmo__kv-desc{font-size:15px;line-height:1.8}
  /* 注記は13px・間隔22（Figma 76:253） */
  .llmo__notes{gap:22px;font-size:13px}
  /* KVのボタンは56px（Figma 76:250） */
  .llmo__kv-formrow .llmo__abtn2{height:56px}
}
/* 指標の数値（Figma 76:269 / 62:7）：Oswald Medium 48px・行送り1.2・字間1.2px・色#333。
   単位「項目」は同じ段落内の別spanなので、数値との間に隙間は入らない（実装は5px空いていた） */
.llmo__stats-in b{gap:0;letter-spacing:1.2px;color:var(--llmo-ink)}
.llmo__stats-in b em{letter-spacing:0}
@media screen and (max-width:767px){
  /* 76:239 のグラデーション実値（Figmaが返すCSS） */
  .llmo__kv{background:linear-gradient(78.0797deg,#F3F6FA 24.615%,#CBD7E4 85.385%)}
}
@media screen and (max-width:767px){
  /* 台座はPC用に幅596px・左-28pxのままだった。SPは画面枠と同じ幅（Figma 76:266） */
  .llmo__laptop-base{width:100%;margin:0;height:10px}
}
/* S2の結論枠はFigmaで138px（上下24＋本文3行×30）。行送り1.9=30.4と枠1pxで141になっていた */
.llmo__why-answer{border:0;box-shadow:0 0 0 1px var(--llmo-line)}
@media screen and (min-width:768px){.llmo__why-answer{line-height:30px}}
/* S6のボタン群はFigmaでは429pxの塊が中央（実装は全幅の箱の中で中央寄せだった） */
.llmo__dark .llmo__btns{width:max-content;max-width:100%;margin-inline:auto}
@media screen and (max-width:767px){
  /* 指標カードはFigmaでは幅358の白いカードで、左右に16pxの余白が見える（Figma 160:2）。
     実装は .llmo__inner を兼ねていたため背景が画面いっぱいに広がっていた */
  .llmo__stats-in{margin-inline:16px;width:auto;max-width:none;column-gap:0}
}

/* ================================================================
   行送りの小数が1pxずつ積み上がるのを止める（2026-09-14）
   Figmaは 32px×1.2＝38、22px×1.45＝32、24px×1.6＝38 をいずれも整数で置いている。
   CSSで倍率のまま書くと 38.4 などになり、2行で0.8px、ページ全体では数pxずれる。
   ================================================================ */
.llmo__head > span{line-height:38px}
@media screen and (max-width:767px){
  .llmo__kv-title{line-height:32px}
  .llmo__midcta-lead{line-height:38px}
  .llmo__midcta-note{line-height:23px}
}
/* 濃色帯の見出しは別ルールで行送り1.2に戻っていた（38.4→38） */
.llmo__band .llmo__head > span,.llmo__band h2{line-height:38px}
@media screen and (max-width:767px){
  /* 結果サンプルの画像は 360×740 を幅358に収めると 735.89px になり、以降が1pxずつ上にずれる。
     Figmaの736pxに固定する */
  .llmo__browser img{display:block;width:100%;height:736px;object-fit:cover}
}

/* ================================================================
   指標ストリップ 76:268 / 76:270 の字面合わせ。
   Oswald 48px と Noto Sans JP 13px は、Figmaの行箱での字の置き方が
   Chromeより下。行の高さは変えずに字面だけ設計レンダーへ寄せる。
   ずれ量は文字サイズで変わるため、PCとSPで別々に持つ（一律補正はしない）。
   ================================================================ */
.llmo__stats-key{position:relative;top:1px}
.llmo__stats-in b{position:relative;top:1px}
@media screen and (max-width:767px){
  .llmo__stats-in b{top:2px}
}

/* ================================================================
   字送りは「em」で各要素に効かせる。
   letter-spacing は宣言した要素で px に確定してから継承するため、
   .llmo に 0.025em と書くだけでは 14px 基準の 0.35px が全要素へ流れ、
   16px の本文も 26px の見出しも 0.35px になっていた（Figmaは 0.4px / 0.65px）。
   :where() で詳細度0にして、個別指定（Oswaldの字送り等）を邪魔しない。
   ================================================================ */
.llmo :where(*){letter-spacing:.025em}

/* SPの3ステップ（76:312 / 76:314）は、Figmaのほうが字を1px上に置く。
   PCの同じ要素は一致しているので、SPだけに当てる。行の高さは変えない。 */
@media screen and (max-width:767px){
  .llmo__frow-body h3,.llmo__frow-body p{position:relative;top:-1px}
}

/* SPのKV見出し（76:243・22px/行送り1.45）も、Figmaのほうが字を1px上に置く。 */
@media screen and (max-width:767px){
  .llmo__kv-title{position:relative;top:-1px}
}

/* Figmaのボタンに影は付いていない（68:97 / 76:428 / 76:458 / 70:30 いずれもshadowなし）。
   ゴーストの1px枠は inset のリングなので、そちらは残す。 */
.llmo__btn--primary,.llmo__btn--accent,.llmo__btn--yellow{box-shadow:none}
.llmo__dark .llmo__btn--ghost,.llmo__band .llmo__btn--ghost{box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)}

/* PCのKV見出し（60:5・36px/行送り1.45）はFigmaのほうが字面が2px上。
   行送りは1.45（52.2px）のままにする。52pxに丸めると帯の高さが0.4px縮み、
   以降のセクションの小数位置がずれて指標・S2の描画が悪くなる（実測で確認）。 */
@media screen and (min-width:768px){
  .llmo__kv-title{position:relative;top:-2px}
}

/* ================================================================
   結果ステート（PC-03 74:2 / SP-03 95:2）の実寸合わせ。
   ================================================================ */

/* 74:44 警告の上は48px、最初のカードとの間は24px（カード同士と同じ）。
   警告が無いときは節ごと hidden なので、隣接の指定も当たらない。 */
.llmo__sec--alerts{padding-block:48px 0}
.llmo__sec--alerts:not([hidden]) + .llmo__sec{padding-top:24px}

/* 74:59 「71 / 100」は leading-none の1行。/100 が32pxの行箱を持つと5px高くなる。
   74:58 の列は中身の幅（122px）。伸ばすとグレード表記の幅（167px）になる。 */
.llmo__scorenum{align-self:flex-start;width:max-content}
.llmo__scorenum i{line-height:16px}
/* 74:62 グレード表記は16px・行送り1.6 */
.llmo__scoregrade{line-height:26px}

/* 76:9 判定は高さ22pxの1行。伸ばすと本文の高さ（57px）に付き合ってしまう */
.llmo__jd{align-self:flex-start;line-height:22px}
/* 76:46 優先項目の番号は34px（Oswald 34px・行送り1） */
.llmo__prionum2{align-self:flex-start}

/* 76:94 LOCKED は上下8・左右18・字送り1.68px・行送り1（= 高さ28・幅81） */
.llmo__lock-badge{height:auto;padding:8px 18px;line-height:12px;letter-spacing:1.68px}

/* PCは 76:9 判定96px固定・74:94 内訳150px固定。SPは中身の幅（下のメディアクエリ側） */
.llmo__jd{width:96px}
.llmo__counts{width:150px}

@media screen and (max-width:767px){
  /* 95:29 SPの警告は 余白16・すき間12・丸22・角丸12・見出し15px/24・本文13px/25 */
  .llmo__alert{padding:16px;gap:12px;border-radius:12px}
  .llmo__alert-mark{width:22px;height:22px}
  .llmo__alert h3{font-size:15px;line-height:24px;margin-bottom:4px}
  .llmo__alert p{font-size:13px;line-height:25px}
  /* 97:87 SPのLOCKEDは 上下7・左右16・11px・字送り1.54px */
  .llmo__lock-badge{padding:7px 16px;font-size:11px;line-height:11px;letter-spacing:1.54px}
  /* 95:28 SPは警告の上32px・最初のカードとの間16px */
  .llmo__sec--alerts{padding-block:32px 0}
  .llmo__sec--alerts:not([hidden]) + .llmo__sec{padding-top:16px}
}

@media screen and (max-width:767px){
  /* 95:74 内訳の色点は7px・すき間14px（= 1組19px・全体85px） */
  .llmo__counts{gap:14px;width:max-content}
  .llmo__counts .llmo__dot{width:7px;height:7px}
  .llmo__counts span{gap:5px}
  /* 97:9 判定の色点は8px・すき間6px（= 41px） */
  .llmo__jd{gap:6px;width:max-content}
  .llmo__jd .llmo__dot{width:8px;height:8px}
}

/* 72:54 解析中の4枚は上揃え（中身の行数で高さが決まる。1枚目は1行=54px） */
.llmo__steps{align-items:start}

/* 95:29 警告の本文はSPだけ短い言い回し（設計どおり）。両方を描いて出し分ける */
.llmo__alert-body--sp{display:none}
@media screen and (max-width:767px){
  .llmo__alert-body--pc{display:none}
  .llmo__alert-body--sp{display:block}
}

@media screen and (max-width:767px){
  /* ================================================================
     SPの結果ステートの文字寸（95:2 / 97:*）。PCより1〜2px小さい。
     ================================================================ */
  .llmo__rhead h3{font-size:17px;line-height:27px}   /* 95:35 カード見出し 17px/1.6 */
  .llmo__rhead span{font-size:12px;line-height:20px} /* 95:36 URLと日時 12px/1.7 */
  .llmo__chartname{font-size:14px;line-height:22px} /* 95:69 カテゴリ名 14px/1.6 */
  .llmo__val{font-size:18px;line-height:22px}       /* 95:70 点数 Oswald18px/1.2 */
  .llmo__jd{font-size:13px}                       /* 97:11 判定ラベル 13px/1.6 */
  .llmo__check h4,.llmo__lockrow h4{font-size:15px;line-height:24px}  /* 97:12 / 97:67 */
  .llmo__check p{font-size:13px;line-height:25px} /* 97:13 本文 13px/1.9 */
  .llmo__scoretext small{font-size:13px;line-height:25px} /* 95:46 */
  .llmo__priocat{font-size:10px;line-height:10px;letter-spacing:1px} /* 97:44 Oswald 10px/字送り1 */
  .llmo__prioitem h4{font-size:16px;line-height:24px} /* 97:45 */
  .llmo__prioitem p{font-size:13px;line-height:25px}  /* 97:46 */
  .llmo__lock-cover h3{font-size:17px;line-height:27px} /* 97:90 */
  .llmo__lock-cover p{font-size:13px;line-height:25px}  /* 97:91 */
  .llmo__masked i{border-radius:5px}              /* 97:68 */
  .llmo__scorenum{gap:8px}                        /* 95:40 すき間8px */
  .llmo__scorenum i{font-size:14px;line-height:14px} /* 95:42 「/ 100」は14px */
  .llmo__scoregrade{font-size:15px;line-height:26px} /* 95:43 15px/1.7 */
}

/* ================================================================
   Figmaは行の最後の字のうしろに字送りを足さない。CSSは足す。
   幅の狭いSPでは、この1字送りぶん（0.3px前後）で折返し位置が1文字ずれる。
   同じだけ右マージンを戻して、設計と同じところで折り返させる。
   PCは桁が広く、同じ補正を当てると逆に設計から離れる（実測で確認）のでSPだけ。
   ================================================================ */
@media screen and (max-width:767px){
  .llmo :where(p,h1,h2,h3,h4,li,dd,dt){margin-right:-0.025em}
}

@media screen and (max-width:767px){
  /* 97:95 SPのフォーム */
  .llmo__formhead small{font-size:13px;line-height:13px;letter-spacing:.78px} /* 97:96 Oswald13px */
  .llmo__formhead span{font-size:22px;line-height:31px}   /* 97:98 22px/1.4 */
  .llmo__label{font-size:13px;line-height:21px;gap:8px}   /* 97:102 13px/1.6 */
  .llmo__req,.llmo__opt{font-size:10px;line-height:14px;padding:2px 8px;border-radius:4px} /* 97:104 */
  .llmo__field input,.llmo__field textarea{padding:0 16px;font-size:14px} /* 97:105/106 */
}

/* ================================================================
   キーボード操作の可視化。静止時の見た目は変えない（:focus-visible のみ）。
   ボタン以外（KVの送信ボタン・FAQの見出し・本文中のリンク・チェックボックス）に
   フォーカスリングが無かった。
   ================================================================ */
.llmo :where(a,button,summary,input,select,textarea,[tabindex]):focus-visible{
  outline:3px solid var(--llmo-brand);outline-offset:3px;border-radius:4px;
}
.llmo__state[data-state="result"]:focus{outline:none}

/* ------------------------------------------------------------------
   全42項目ページ（?d=トークン）。先方指示 2026-09-18・C案。
   **すべて .llmo--detail 配下に閉じる。** 結果ページ（?r=）の見た目は変えない。
   ------------------------------------------------------------------ */
.llmo--detail .llmo__inner{display:flex;flex-direction:column;gap:24px}
.llmo--detail .llmo__sec{padding-block:56px}
.llmo--detail .llmo__dtitle{margin:0;font-size:20px;font-weight:500;line-height:1.6;color:var(--llmo-ink-strong);letter-spacing:.025em}
.llmo--detail .llmo__dmeta{margin:0;font-size:12px;line-height:1.9;color:var(--llmo-ink-mute);word-break:break-all}
.llmo--detail .llmo__dlead{margin:16px 0 0;font-size:14px;line-height:2;color:var(--llmo-ink-mute)}
.llmo--detail .llmo__dsub{margin:0;font-size:18px;font-weight:500;line-height:1.6;color:var(--llmo-ink-strong);letter-spacing:.025em}

.llmo--detail .llmo__rbody{display:grid;grid-template-columns:200px minmax(0,1fr);gap:32px;align-items:start;margin-top:24px}
.llmo--detail .llmo__scorewrap{display:flex;flex-direction:column;gap:10px}
/* 先方指示 2026-09-27「スコアとグレードをもっと目立つように」。
   結果ページ（?r=）の .llmo__scorenum b と同じ扱い（Oswald・大きな数字）に揃える。 */
.llmo--detail .llmo__scorenum{display:flex;align-items:baseline;gap:10px;margin:0;font-family:"Oswald",sans-serif;font-size:72px;font-weight:500;line-height:1;color:#000;font-variant-numeric:tabular-nums}
.llmo--detail .llmo__scorenum small{font-family:"Noto Sans JP",sans-serif;font-size:16px;font-weight:400;line-height:1.6;color:var(--llmo-ink-mute)}
.llmo--detail .llmo__gradetxt{margin:0;font-size:15px;color:var(--llmo-ink-mute)}
.llmo--detail .llmo__gradetxt strong{font-size:22px;font-weight:700;color:var(--llmo-ink-strong)}
.llmo--detail .llmo__sumhead{margin:0;font-size:18px;font-weight:500;line-height:1.7;color:var(--llmo-ink-strong);letter-spacing:.025em}
.llmo--detail .llmo__sumsub{margin:8px 0 0;font-size:14px;line-height:2;color:var(--llmo-ink-mute)}
.llmo--detail .llmo__dcounts{display:flex;flex-wrap:wrap;gap:16px;margin:16px 0 0;font-size:13px;color:var(--llmo-ink-mute);font-variant-numeric:tabular-nums}
.llmo--detail .llmo__dcnt b{font-family:"Oswald",sans-serif;font-size:18px;font-weight:500;margin-right:4px}
.llmo--detail .llmo__dcnt--ok b{color:var(--llmo-ok-text)}
.llmo--detail .llmo__dcnt--warn b{color:var(--llmo-warn-text)}
.llmo--detail .llmo__dcnt--ng b{color:var(--llmo-ng-text)}
/* 但し書きは #919191 だと白地 3.15 で AA 未達。全項目ページだけ濃くする。 */
.llmo--detail .llmo__disclaimer{color:var(--llmo-ink-mute)}

.llmo--detail .llmo__dprio{margin:16px 0 0;padding:0;list-style:none;counter-reset:llmo-dprio}
.llmo--detail .llmo__dprio > li{counter-increment:llmo-dprio;display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;padding:20px 0;border-bottom:1px solid var(--llmo-line-soft)}
.llmo--detail .llmo__dprio > li:last-child{border-bottom:0;padding-bottom:0}
.llmo--detail .llmo__dprio > li::before{content:counter(llmo-dprio,decimal-leading-zero);font-family:"Oswald",sans-serif;font-size:28px;line-height:1.2;color:var(--llmo-line);font-weight:500}
.llmo--detail .llmo__dprio-body{min-width:0}
.llmo--detail .llmo__dprio-name{margin:0;font-size:17px;font-weight:500;line-height:1.6;color:#000}
.llmo--detail .llmo__dprio-cat{display:block;margin-bottom:6px;font-family:"Oswald",sans-serif;font-size:11px;letter-spacing:.1em;font-weight:400;color:var(--llmo-ink-mute)}
.llmo--detail .llmo__dprio-detail{margin:6px 0 0;font-size:14px;line-height:2;color:var(--llmo-ink-mute)}
.llmo--detail .llmo__dprio-action{margin:8px 0 0;padding:12px 16px;border-radius:8px;background:var(--llmo-bg-soft3);font-size:14px;line-height:2;color:var(--llmo-ink-strong)}

.llmo--detail .llmo__cathead{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.llmo--detail .llmo__catscore b{font-weight:500}
.llmo--detail .llmo__catscore small{margin-left:4px;font-family:"Noto Sans JP",sans-serif;font-size:12px;color:var(--llmo-ink-mute)}
.llmo--detail .llmo__item{align-items:start}
.llmo--detail .llmo__item:last-child{border-bottom:0;padding-bottom:0}
.llmo--detail .llmo__jd{flex:none;width:76px}
/* 「対象外」は既存の配色に無いので、ここだけで定義する（灰色・控えめ） */
.llmo--detail .llmo__jd--na{color:var(--llmo-ink-mute)}
/* 判定ラベルは面用の色（--llmo-ok 等）だと白地で AA に届かない。
   文字用に用意してある *-text を当てる。全項目ページだけに限定し、結果ページの見た目は変えない。 */
.llmo--detail .llmo__jd--ok{color:var(--llmo-ok-text)}
.llmo--detail .llmo__jd--warn{color:var(--llmo-warn-text)}
.llmo--detail .llmo__jd--ng{color:var(--llmo-ng-text)}
.llmo--detail .llmo__dot--na{background:var(--llmo-line)}
.llmo--detail .llmo__itembody{min-width:0}
.llmo--detail .llmo__itembody h3{margin:0;font-size:16px;font-weight:500;line-height:1.6;color:var(--llmo-ink-strong);letter-spacing:.025em}
.llmo--detail .llmo__itemdetail{margin:6px 0 0;font-size:14px;line-height:2;color:var(--llmo-ink-mute)}
.llmo--detail .llmo__itemaction{margin:10px 0 0;padding:12px 16px;border-radius:8px;background:var(--llmo-bg-soft3);font-size:14px;line-height:2;color:var(--llmo-ink-strong)}
.llmo--detail .llmo__itemaction span{display:block;margin-bottom:2px;font-family:"Oswald",sans-serif;font-size:11px;letter-spacing:.1em;color:var(--llmo-ink-mute)}

@media screen and (max-width:767px){
  .llmo--detail .llmo__sec{padding-block:32px}
  .llmo--detail .llmo__inner{gap:16px}
  .llmo--detail .llmo__report{padding:24px 20px}
  .llmo--detail .llmo__rbody{grid-template-columns:1fr;gap:20px;margin-top:20px}
  .llmo--detail .llmo__scorenum{font-size:56px}
  .llmo--detail .llmo__scorenum small{font-size:14px}
  .llmo--detail .llmo__gradetxt strong{font-size:20px}
  .llmo--detail .llmo__dtitle{font-size:18px}
  .llmo--detail .llmo__sumhead{font-size:16px}
  .llmo--detail .llmo__item{flex-direction:column;gap:8px}
  .llmo--detail .llmo__jd{width:auto}
  .llmo--detail .llmo__dprio > li{grid-template-columns:34px minmax(0,1fr);gap:12px}
  .llmo--detail .llmo__dprio > li::before{font-size:22px}
}
