/* 株式会社タルムード HP v5 — /lab/ 専用スタイル
   TALMUD AI LAB — AIが実際に働いている、その証拠。
   方針(株主指示 2026-09-03 / _spec/b2b/v3-lab.md):
     ・研究所・開発室の見え方。単色のダークネイビー地でページ内を統一する
       (節ごとに地の色を変えない)。細い格子と発光で「観測室」の質感を出す。
     ・画像・図・実画面を主役にする。表は最下部の折りたたみ(技術監査用)へ寄せる。
     ・数値は等幅。図はすべて HTML/CSS/SVG で描く(生成画像は使わない)。
   制約:
     ・色・書体・余白のトークンは site.css のものだけを使う(新しい色は足さない)。
       ここで宣言する変数は、site.css に既出の値の別名と、等幅書体の指定だけ。
     ・このファイルは /lab/ でのみ読み込む(他ページに影響させない)。
     ・横に長い表は、その中だけで横スクロールさせる(ページ本体は横に伸ばさない)。
   ===================================================================== */

.lab-page{
  --lab-tx:#B9BCC8;         /* site.css .sec-ink .lead と同値 */
  --lab-tx-2:#C7C9D2;       /* site.css .gnav a と同値 */
  --lab-accent:#F5A96B;     /* site.css .sec-ink .eyebrow と同値 */
  --lab-line:#FCFCFA22;     /* site.css --rule-d と同値 */
  --lab-line-2:#FCFCFA14;   /* site.css .ft border-top と同値 */
  --lab-panel:#131624;      /* site.css --night-2 と同値 */
  --mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,"Noto Sans Mono","Noto Sans JP",monospace;
  background:var(--night);
  color:var(--white);
}
.lab-page #main{background:var(--night)}

/* 暗い地の上での導線 = site.css の .sec-ink .go と同じ扱いにする */
.lab-page .go{color:var(--lab-accent);border-color:#F5A96B66}
.lab-page .go:hover{background:var(--lab-accent);color:var(--night)}

/* ---------------- 共通の部品 ---------------- */
.lab-sec{background:var(--night);padding:clamp(3.4rem,7.5vw,6rem) 0;border-top:1px solid var(--lab-line-2)}
.lab-sec h2{font-family:var(--serif);font-weight:700;color:var(--white);
  font-size:clamp(1.32rem,2.9vw,2.05rem);line-height:1.7;letter-spacing:.01em;
  margin:.5rem 0 clamp(1.9rem,4vw,2.8rem);max-width:34em;text-wrap:balance}
.lab-eyebrow{display:flex;align-items:center;gap:.8rem;font-family:var(--en);font-weight:800;
  font-size:.68rem;letter-spacing:.26em;color:var(--lab-accent);margin:0}
.lab-eyebrow .n{font-variant-numeric:tabular-nums}
.lab-eyebrow .r{flex:1;height:1px;background:var(--lab-line);max-width:110px}
/* 図・実画面のブロックだけ、本文より広い版面で見せる(株主指示「大きく表示」)。
   vw は使わない(縦スクロールバーぶんの横はみ出しを作らないため)。 */
.lab-page .wrap.wide{max-width:1400px}

.lab-note{font-size:.82rem;line-height:2;color:var(--lab-tx);max-width:46em;margin:1.5rem 0 0}
.lab-note b{color:var(--lab-tx-2);font-weight:700}

/* 横に長い物は、この中だけで横に流す */
.lab-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;
  border:1px solid var(--lab-line);border-radius:4px;background:var(--lab-panel)}
.lab-scroll:focus-visible{outline:2px solid var(--lab-accent);outline-offset:3px}

/* ---------------- ファーストビュー ---------------- */
.lab-fv{position:relative;overflow:hidden;background:var(--night);color:var(--white);
  padding:clamp(7.6rem,16vh,10.4rem) 0 clamp(3.2rem,7vw,5rem)}
/* 観測室の格子(細い線)。文字の裏にだけ薄く敷く */
.lab-fv::after{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(to right,#FCFCFA0a 1px,transparent 1px),
                   linear-gradient(to bottom,#FCFCFA0a 1px,transparent 1px);
  background-size:64px 64px;
  -webkit-mask-image:radial-gradient(70% 70% at 50% 40%,#000 0%,transparent 100%);
          mask-image:radial-gradient(70% 70% at 50% 40%,#000 0%,transparent 100%)}
.lab-fv::before{content:"";position:absolute;inset:-25%;
  background:radial-gradient(30% 36% at 16% 26%,rgba(232,70,43,.24),transparent 70%),
             radial-gradient(28% 34% at 84% 14%,rgba(240,122,46,.18),transparent 70%);
  filter:blur(16px)}
.lab-fv > .wrap{position:relative;z-index:1}
.lab-fv h1{font-family:var(--serif);font-weight:900;color:var(--white);
  font-size:clamp(1.72rem,4.6vw,3.05rem);line-height:1.5;margin:0;max-width:20em;text-wrap:balance}
.lab-fv h1 .en{display:block;font-family:var(--en);font-weight:800;
  font-size:clamp(.76rem,1.5vw,.95rem);letter-spacing:.34em;color:var(--lab-accent);
  margin-bottom:1.5rem}
.lab-fv .lab-lead{font-size:clamp(.88rem,1.2vw,.98rem);line-height:2.15;color:var(--lab-tx);
  max-width:50em;margin:1.7rem 0 0}

/* 数字4つ */
.lab-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  margin-top:clamp(2.4rem,5vw,3.4rem);background:var(--lab-line);
  border:1px solid var(--lab-line);border-radius:4px;overflow:hidden}
.lab-kpi{background:var(--lab-panel);padding:clamp(1.2rem,2.4vw,1.7rem) clamp(.8rem,1.6vw,1.3rem);
  display:flex;flex-direction:column;gap:.5rem;position:relative}
.lab-kpi::before{content:"";position:absolute;top:0;left:0;width:34px;height:2px;background:var(--grad)}
.lab-kpi .v{font-family:var(--en);font-weight:800;font-size:clamp(1.9rem,4.4vw,3rem);
  line-height:1;color:var(--white);font-variant-numeric:tabular-nums;letter-spacing:.01em}
.lab-kpi .k{font-size:.74rem;line-height:1.7;color:var(--lab-tx)}
.lab-basis{font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;color:var(--muted);
  margin:.95rem 0 0}

/* ---------------- 01 AI TEAM ---------------- */
.lab-orgfig{margin:0;border:1px solid var(--lab-line);border-radius:4px;overflow:hidden;
  background:var(--lab-panel);line-height:0}
.lab-orgfig img{display:block;width:100%;height:auto}
.lab-orgmore{margin:1.4rem 0 0;display:flex}
.lab-orgmore .go{cursor:zoom-in}

.lab-team{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:1px;
  margin:clamp(2.2rem,4.5vw,3.2rem) 0 0;background:var(--lab-line);
  border:1px solid var(--lab-line);border-radius:4px;overflow:hidden}
.lab-member{background:var(--lab-panel);padding:1.5rem 1rem 1.6rem;
  display:flex;flex-direction:column;align-items:center;gap:.85rem;text-align:center}
.lab-member .ic{display:block;width:clamp(60px,7.4vw,112px);height:clamp(60px,7.4vw,112px);
  border-radius:50%;overflow:hidden;background:var(--night);border:1px solid var(--lab-line)}
.lab-member .ic img{display:block;width:100%;height:100%;object-fit:cover}
.lab-member .nm{font-size:.78rem;line-height:1.9;color:var(--lab-tx)}
/* b は inline のまま。innerText を1行に保ち「コルヴス — 統括・設計」を逐語で描画する */
.lab-member .nm b{display:inline;font-size:.94rem;color:var(--white);font-weight:700;
  font-family:var(--serif);letter-spacing:.04em}

/* ---------------- 02 LIVE AUTOMATION ---------------- */
.lab-auto{margin:0;border:1px solid var(--lab-line);border-radius:4px;background:var(--lab-panel);
  padding:clamp(1.6rem,3.4vw,2.6rem)}
.auto-head{display:flex;align-items:flex-end;gap:clamp(1.4rem,3vw,2.6rem)}
.auto-total{display:flex;flex-direction:column;gap:.35rem;flex:none}
.auto-total b{font-family:var(--en);font-weight:800;font-size:clamp(3rem,8vw,5.4rem);line-height:.9;
  color:var(--white);font-variant-numeric:tabular-nums}
.auto-total i{font-style:normal;font-size:.74rem;line-height:1.6;color:var(--lab-tx)}
.auto-stack{flex:1;display:flex;height:clamp(64px,10.5vw,160px);border-radius:3px;overflow:hidden;
  background:var(--night);gap:1px}
.auto-stack i{display:block;height:100%}
.auto-cats{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);
  gap:1.1rem clamp(1.4rem,3vw,2.6rem);margin:clamp(1.8rem,3.4vw,2.4rem) 0 0}
.auto-cats li{display:grid;grid-template-columns:3rem 1fr;grid-template-rows:auto auto;
  column-gap:.8rem;row-gap:.55rem;align-items:baseline}
.auto-cats .v{grid-column:1;grid-row:1;font-family:var(--en);font-weight:800;font-size:1.42rem;
  line-height:1.15;color:var(--white);text-align:right;font-variant-numeric:tabular-nums}
.auto-cats .l{grid-column:2;grid-row:1;font-size:.78rem;line-height:1.5;color:var(--lab-tx)}
.auto-cats .b{grid-column:1 / -1;grid-row:2;display:block;height:10px;border-radius:2px;
  background:var(--night);overflow:hidden}
.auto-cats .b i{display:block;height:100%}

/* 6区分の色 — すべて site.css の既出値 */
.auto-stack .c1,.auto-cats .c1 .b i{background:#E8462B}
.auto-stack .c2,.auto-cats .c2 .b i{background:#F07A2E}
.auto-stack .c3,.auto-cats .c3 .b i{background:#F5A96B}
.auto-stack .c4,.auto-cats .c4 .b i{background:#E82B6C}
.auto-stack .c5,.auto-cats .c5 .b i{background:#C7C9D2}
.auto-stack .c6,.auto-cats .c6 .b i{background:#8B8D99}

.lab-ex{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  margin:clamp(1.6rem,3vw,2.2rem) 0 0;background:var(--lab-line);
  border:1px solid var(--lab-line);border-radius:4px;overflow:hidden}
.lab-ex li{background:var(--lab-panel);padding:1.4rem 1.3rem 1.5rem;
  font-size:.8rem;line-height:1.95;color:var(--lab-tx)}
.lab-ex li b{display:block;font-size:.92rem;color:var(--white);font-weight:700;
  font-family:var(--serif);letter-spacing:.03em;margin-bottom:.45rem}

/* ---------------- 03 DEVELOPMENT RECORDS ---------------- */
.lab-rel{display:grid;grid-template-columns:minmax(190px,.46fr) 1.54fr;
  gap:clamp(1.6rem,3.4vw,2.8rem);align-items:center}
.rel-num{display:flex;flex-direction:column}
.rel-num .v{font-family:var(--en);font-weight:800;font-size:clamp(4rem,10vw,7rem);line-height:.88;
  color:var(--white);font-variant-numeric:tabular-nums;letter-spacing:.005em}
.rel-num .k{font-family:var(--serif);font-weight:700;font-size:clamp(1rem,1.7vw,1.24rem);
  color:var(--lab-accent);letter-spacing:.14em;margin-top:.7rem}
.rel-txt{font-size:.86rem;line-height:2.05;color:var(--lab-tx);margin-top:1.3rem;
  padding-top:1.3rem;border-top:1px solid var(--lab-line);max-width:22em}

.lab-shot{margin:0;border:1px solid var(--lab-line);border-radius:4px;overflow:hidden;
  background:var(--lab-panel)}
.lab-shot img{display:block;width:100%;height:auto}
.lab-shot figcaption{font-family:var(--mono);font-size:.68rem;line-height:1.7;color:var(--muted);
  padding:.7rem .95rem;border-top:1px solid var(--lab-line);background:var(--lab-panel)}
.lab-shot.big{margin-bottom:clamp(1.8rem,3.4vw,2.6rem)}

.lab-chart{margin:clamp(2.2rem,4.5vw,3.2rem) 0 0;border:1px solid var(--lab-line);border-radius:4px;
  background:var(--lab-panel);padding:clamp(1.5rem,3vw,2.2rem) clamp(1.1rem,2.4vw,2rem) 1.2rem}
.chart-plot{display:flex;align-items:flex-end;gap:clamp(.4rem,1.6vw,1.3rem);
  height:clamp(200px,29vw,400px)}
.chart-plot .col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;
  justify-content:flex-end;gap:.45rem}
.chart-plot .v{font-family:var(--en);font-weight:800;font-size:.72rem;color:var(--lab-tx-2);
  font-variant-numeric:tabular-nums}
.chart-plot .t{display:block;width:100%;max-width:56px;background:var(--grad);border-radius:2px 2px 0 0;
  min-height:3px}
.chart-plot .x{font-family:var(--mono);font-size:.62rem;letter-spacing:.02em;color:var(--muted);
  padding-top:.5rem;border-top:1px solid var(--lab-line);width:100%;text-align:center}
.lab-chart figcaption{font-family:var(--mono);font-size:.66rem;line-height:1.8;color:var(--muted);
  margin-top:1rem}

/* ---------------- 04 OPEN SOURCE ---------------- */
.lab-oss4{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:var(--lab-line);border:1px solid var(--lab-line);border-radius:4px;overflow:hidden}
.lab-oss4 li{background:var(--lab-panel);padding:1.4rem 1.25rem 1.5rem;
  font-size:.78rem;line-height:1.95;color:var(--lab-tx)}
.lab-oss4 .ic{display:block;width:26px;height:26px;color:var(--lab-accent);margin-bottom:.9rem}
.lab-oss4 .ic svg{display:block;width:100%;height:100%;stroke-linecap:round;stroke-linejoin:round}
.lab-oss4 li b{display:block;font-size:.9rem;color:var(--white);font-weight:700;
  font-family:var(--serif);letter-spacing:.03em;margin-bottom:.4rem}
.lab-cta1{margin:clamp(1.8rem,3.4vw,2.4rem) 0 0;display:flex}

/* ---------------- 05 HOW WE BUILD ---------------- */
.lab-steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:var(--lab-line);border:1px solid var(--lab-line);border-radius:4px;overflow:hidden;
  counter-reset:none}
.lab-steps li{background:var(--lab-panel);padding:1.5rem 1.3rem 1.7rem;position:relative}
.lab-steps li::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad);
  transform-origin:left;opacity:.55}
.lab-steps li:nth-child(1)::before{opacity:1}
.lab-steps .no{display:block;font-family:var(--en);font-weight:800;font-size:.68rem;letter-spacing:.22em;
  color:var(--lab-accent);margin-bottom:.85rem}
.lab-steps b{display:block;font-family:var(--serif);font-weight:700;font-size:1.06rem;
  color:var(--white);letter-spacing:.04em;margin-bottom:.55rem}
.lab-steps .d{display:block;font-size:.78rem;line-height:1.95;color:var(--lab-tx)}

.lab-flow{position:relative;display:flex;align-items:center;justify-content:center;
  gap:clamp(.9rem,4.4vw,4.4rem);
  margin:clamp(2rem,4vw,2.8rem) 0 0;padding:clamp(1.5rem,3vw,2.2rem) 1rem;
  border:1px solid var(--lab-line);border-radius:4px;background:var(--lab-panel);flex-wrap:wrap}
.lab-flow::before{content:"";position:absolute;left:18%;right:18%;top:calc(50% - 1.25rem);height:1px;
  background:linear-gradient(to right,transparent,var(--lab-line) 12%,var(--lab-line) 88%,transparent)}
.lab-flow .fl{position:relative;display:flex;flex-direction:column;align-items:center;gap:.65rem;min-width:96px}
.lab-flow .ic{display:block;width:clamp(56px,7vw,100px);height:clamp(56px,7vw,100px);
  border-radius:50%;overflow:hidden;background:var(--night);border:1px solid var(--lab-line)}
.lab-flow .ic img{display:block;width:100%;height:100%;object-fit:cover}
.lab-flow b{font-family:var(--serif);font-weight:700;font-size:.88rem;color:var(--white);letter-spacing:.04em}
.lab-flow i{font-style:normal;font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;color:var(--muted)}
.lab-flow .ar{position:relative;font-family:var(--en);font-size:1.3rem;color:var(--lab-accent);
  opacity:.85;line-height:1;align-self:flex-start;margin-top:clamp(1.4rem,2.4vw,2.2rem)}

/* ---------------- 最後 ---------------- */
.lab-close{background:var(--lab-panel);border-top:1px solid var(--lab-line);
  padding:clamp(3.6rem,8vw,6rem) 0}
.lab-close h2{font-family:var(--serif);font-weight:700;color:var(--white);
  font-size:clamp(1.34rem,3vw,2.05rem);line-height:1.7;margin:0;max-width:32em;text-wrap:balance}
.lab-close p{font-size:.88rem;line-height:2.1;color:var(--lab-tx);max-width:60em;margin:1.4rem 0 0}
.lab-close p.lab-cta2{display:flex;flex-wrap:wrap;gap:.9rem;max-width:none;
  margin-top:clamp(2rem,4vw,2.6rem)}
.lab-cta2 .cta{min-height:52px}

/* ---------------- 技術監査用の詳細データ(折りたたみ) ---------------- */
.lab-audit{background:var(--night);border-top:1px solid var(--lab-line-2);
  padding:clamp(2.4rem,5vw,3.6rem) 0 clamp(3.4rem,7vw,5rem)}
.lab-audit details{border:1px solid var(--lab-line);border-radius:4px;background:var(--lab-panel)}
.lab-audit summary{list-style:none;cursor:pointer;display:flex;align-items:center;
  justify-content:space-between;gap:1rem;padding:1.15rem clamp(1.1rem,2.4vw,1.8rem);
  min-height:56px;color:var(--lab-tx-2)}
.lab-audit summary::-webkit-details-marker{display:none}
.lab-audit summary .sm-t{font-family:var(--body);font-weight:700;font-size:.86rem;letter-spacing:.06em}
.lab-audit summary .sm-i{flex:none;width:13px;height:13px;position:relative}
.lab-audit summary .sm-i::before,.lab-audit summary .sm-i::after{content:"";position:absolute;
  background:var(--lab-accent);transition:transform .25s var(--ease)}
.lab-audit summary .sm-i::before{left:0;top:6px;width:13px;height:1.5px}
.lab-audit summary .sm-i::after{left:5.75px;top:0;width:1.5px;height:13px}
.lab-audit details[open] summary .sm-i::after{transform:scaleY(0)}
.lab-audit summary:hover{color:var(--white)}
.lab-audit details[open] summary{border-bottom:1px solid var(--lab-line)}
.audit-in{padding:clamp(1.4rem,3vw,2.4rem) clamp(1.1rem,2.4vw,1.8rem) clamp(1.8rem,3.4vw,2.6rem)}
.audit-in > * + *{margin-top:1.3rem}
/* h3 の margin は下の一括指定が後に来るので、見出し前の余白はここで一緒に持たせる
   (別ルールで margin-top を足しても、この shorthand に上書きされて効かない) */
.audit-in h3{font-family:var(--serif);font-weight:700;color:var(--white);
  font-size:clamp(.98rem,1.6vw,1.1rem);line-height:1.8;margin:2.8rem 0 1.1rem;
  padding-bottom:.7rem;border-bottom:1px solid var(--lab-line)}
.audit-in > h3:first-child{margin-top:0}
.audit-in .lab-note{margin-top:1rem}

/* 表 */
.lab-tbl{width:100%;border-collapse:collapse;font-size:.78rem;line-height:1.85;
  min-width:520px;color:var(--lab-tx)}
.lab-tbl caption{caption-side:top;text-align:left;font-size:.74rem;line-height:1.9;
  color:var(--muted);padding:.75rem .9rem;border-bottom:1px solid var(--lab-line)}
.lab-tbl th,.lab-tbl td{padding:.52rem .9rem;border-bottom:1px solid var(--lab-line-2);
  text-align:left;vertical-align:top}
.lab-tbl thead th{font-family:var(--en);font-weight:800;font-size:.64rem;letter-spacing:.14em;
  color:var(--muted);white-space:nowrap;border-bottom:1px solid var(--lab-line)}
.lab-tbl thead th.ja{font-family:var(--body);font-size:.7rem;letter-spacing:.06em}
.lab-tbl tbody th{font-weight:500;color:var(--lab-tx-2)}
.lab-tbl td.num,.lab-tbl th.num{font-family:var(--mono);text-align:right;white-space:nowrap;
  color:var(--white);font-variant-numeric:tabular-nums}
.lab-tbl th.mono{font-family:var(--mono);font-size:.72rem;color:var(--lab-accent);white-space:nowrap}
.lab-tbl tr:last-child td,.lab-tbl tr:last-child th{border-bottom:0}
.lab-tbl tr.sum td,.lab-tbl tr.sum th{border-top:1px solid var(--lab-line);
  background:#FCFCFA08;color:var(--white);font-weight:700}
.lab-2col{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem;align-items:start}
/* 2列に並べた表は列幅が狭い。全幅の表向けの min-width をそのまま当てると
   数値の列が枠の外へ出て(横スクロールの中に)隠れるので、2列のときだけ外す。 */
@media(min-width:901px){.lab-2col .lab-tbl{min-width:0}}

/* 折りたたみ内の箇条書き */
.lab-list{list-style:none;counter-reset:ll;display:grid;gap:1px;background:var(--lab-line);
  border:1px solid var(--lab-line);border-radius:4px;overflow:hidden}
.lab-list li{counter-increment:ll;background:var(--lab-panel);padding:.95rem 1.1rem;
  font-size:.78rem;line-height:1.95;color:var(--lab-tx)}
.lab-list li b{display:block;color:var(--white);font-weight:700;font-size:.8rem;
  letter-spacing:.04em;margin-bottom:.25rem}
.lab-def{list-style:none;display:grid;gap:.85rem}
.lab-def li{font-size:.78rem;line-height:1.95;color:var(--lab-tx);
  padding-left:1rem;border-left:2px solid var(--lab-line)}
.lab-def li b{display:block;color:var(--lab-tx-2);font-weight:700;font-size:.78rem}

/* ---------------- 画面幅の対応 ---------------- */
@media(max-width:1080px){
  .lab-team{grid-template-columns:repeat(3,1fr)}
  .lab-oss4{grid-template-columns:repeat(2,1fr)}
  .lab-steps{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .lab-kpis{grid-template-columns:repeat(2,1fr)}
  .lab-rel{grid-template-columns:1fr}
  .rel-txt{max-width:none}
  .lab-ex{grid-template-columns:1fr}
  .auto-cats{grid-template-columns:repeat(2,1fr)}
  .lab-2col{grid-template-columns:1fr}
}
@media(max-width:680px){
  .lab-fv h1{font-size:clamp(1.5rem,7vw,1.95rem)}
  .lab-team{grid-template-columns:repeat(2,1fr)}
  .lab-member:last-child{grid-column:1 / -1}
  .lab-oss4{grid-template-columns:1fr}
  .lab-steps{grid-template-columns:1fr}
  .auto-head{flex-direction:column;align-items:stretch;gap:1.1rem}
  .auto-total{flex-direction:row;align-items:baseline;gap:.7rem}
  .auto-total b{font-size:3.2rem}
  .auto-stack{height:56px}
  .auto-cats{grid-template-columns:1fr;gap:.9rem}
  .chart-plot{height:180px;gap:.3rem}
  .chart-plot .x{font-size:.55rem;letter-spacing:0}
  .chart-plot .v{font-size:.64rem}
  .lab-flow{gap:.55rem}
  .lab-flow .fl{min-width:70px}
  .lab-flow::before{display:none}
  .lab-close p.lab-cta2 .cta,.lab-close p.lab-cta2 .go{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .lab-audit summary .sm-i::before,.lab-audit summary .sm-i::after{transition:none}
}

/* ---------- アプリの実アイコン (株主 2026-09-03 16:14) ------------------ */
/* ★ .lab-shot img{width:100%} は詳細度 (0,2,1)。クラス1つでは負けて全幅になる。 */
.lab-page img.lab-appic{display:block;width:24px;height:24px;flex:none;border-radius:7px;
  background:var(--white);border:1px solid var(--lab-line)}
.lab-shot figcaption{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}
.lab-shot figcaption span{min-width:0}

/* =====================================================================
   モバイル最適化 (株主 2026-09-03 16:00「モバイル最適化がほとんど皆無」)
   PC の見た目は変えない。
   ===================================================================== */
/* iOS Safari 対策: 角丸の枠は中身を確実に切る */
.lab-shot,.lab-orgfig,.lab-scroll,.lab-fv{contain:paint}
.lab-page img{max-width:100%}

.lab-scroll{position:relative}

@media(max-width:820px){
  /* 表は幅が足りず横に流れる。1列目(行番号)を固定して、流しても行が追える。
     PC は表が収まるので固定しない(見た目を変えない)。 */
  .lab-scroll .lab-tbl tbody th:first-child,
  .lab-scroll .lab-tbl thead th:first-child{position:sticky;left:0;z-index:2;
    background:var(--lab-panel);box-shadow:1px 0 0 var(--lab-line-2)}
  .lab-sec h2{text-wrap:balance;max-width:none;font-size:clamp(1.24rem,5.4vw,1.6rem)}
  .lab-lead{line-height:1.95}
  .lab-note{max-width:none}
  /* CTA は全幅 */
  .lab-close p.lab-cta2{display:grid;grid-template-columns:1fr;gap:.7rem}
  .lab-close p.lab-cta2 .cta,.lab-close p.lab-cta2 .go{width:100%;justify-content:center}
  .lab-cta1 .go{width:100%;justify-content:center}
  /* 折りたたみのタップ領域 */
  .lab-audit summary{min-height:48px;display:flex;align-items:center}
  /* 表は指で流せることを見せる */
  .lab-scroll{scroll-snap-type:none}
  .lab-tbl{font-size:.74rem;min-width:480px}
  .lab-tbl th,.lab-tbl td{padding:.5rem .7rem}
}
@media(max-width:560px){
  .lab-fv{padding-top:clamp(6.4rem,13vh,8.4rem)}
  .audit-in{padding-left:.9rem;padding-right:.9rem}
}

/* =====================================================================
   2026-09-03 株主指示 —「セクションが違うのに同じデザイン」
   ・全節が同じ地色で、境目の罫が #FCFCFA14 でほぼ見えなかった → 1段濃くする。
   ・実画面(証拠)と、自作の図・表が同じ器だった → 実画面だけ枠とキャプションを変える。
   ・注記が本文と同格だった → 左に罫を入れる。
   ===================================================================== */
.lab-sec{border-top:1px solid var(--lab-line)}
.lab-shot{border-color:#F5A96B66}
.lab-shot figcaption{border-top-color:#F5A96B66;color:var(--lab-tx-2)}
.lab-shot figcaption::before{content:"";display:inline-block;width:1.4rem;height:2px;
  background:var(--grad);vertical-align:middle;margin-right:.55rem}
.lab-note{padding-left:1rem;border-left:2px solid var(--lab-line);color:var(--muted)}

/* =====================================================================
   2026-09-04 株主指示 — 数字の見せ方(site.css の共通指定を、この面で上書き)
   ・KPI の数字の大きさ・ラベルの大きさを開発ページと揃える(内容は変えない)
   ・数字の表は1行おきに地色を薄く変えて、行を追えるようにする
     (1列目は横スクロール時に固定するので、そこには色を足さない)
   ・横に流せることが分かるよう、表の端に影を置く(端まで流すと自然に消える)
   ===================================================================== */
.lab-kpi .v{font-size:clamp(1.9rem,4.4vw,2.85rem);line-height:1.1}
.lab-kpi .k{font-size:.8rem;line-height:1.85}
.lab-tbl tbody tr:not(.sum):nth-child(even) td{background:#FCFCFA07}
.lab-scroll{background:
  linear-gradient(90deg,var(--lab-panel) 30%,rgba(19,22,36,0)),
  linear-gradient(90deg,rgba(19,22,36,0),var(--lab-panel) 70%) 100% 0,
  radial-gradient(farthest-side at 0 50%,rgba(0,0,0,.5),rgba(0,0,0,0)),
  radial-gradient(farthest-side at 100% 50%,rgba(0,0,0,.5),rgba(0,0,0,0)) 100% 0,
  var(--lab-panel);
  background-repeat:no-repeat;
  background-size:34px 100%,34px 100%,14px 100%,14px 100%,auto;
  background-attachment:local,local,scroll,scroll,scroll}
