@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+JP:wght@400;500;700&family=JetBrains+Mono:wght@500;700&display=swap");

/* アイデア会議で終わらせない「新規事業研修」LP */
/* アイデア会議で終わらせない「新規事業研修」LP */
:root{
  --sj-ink:#1B2140;
  --sj-indigo:#25307A;
  --sj-blue:#3A5BD9;
  --sj-blue-l:#EAEFFD;
  --sj-coral:#EE5D3B;
  --sj-coral-l:#FDECE6;
  --sj-lime:#C6E84B;
  --sj-lime-l:#F4FAD9;
  --sj-sub:#5B6180;
  --sj-line:#D9DDEB;
  --sj-paper:#FFFFFF;
  --sj-bg:#F7F8FC;
  --sj-dot:#D6DBEC;
  --sj-brand:#0068C9; /* 問いナッジ™ 共通ブランド色（ナッジ） */
  --sj-sans:"IBM Plex Sans JP","Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
  --sj-mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;
}
body{margin:0;background:var(--sj-bg);color:var(--sj-ink);font-family:var(--sj-sans);font-size:16px;line-height:1.9;letter-spacing:.02em;overflow-x:hidden;-webkit-text-size-adjust:100%}

/* ===== 共通ヘッダー（形は共通仕様・色のみLP固有） ===== */
.toi-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);border-bottom:1px solid var(--sj-line)}
.toi-header *{box-sizing:border-box}
.toi-header-inner{max-width:1240px;margin:0 auto;padding:12px 24px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px}
.toi-header-logo{justify-self:start;font-family:var(--sj-sans);font-weight:700;font-size:19px;letter-spacing:.04em;white-space:nowrap}
.toi-brand{color:var(--sj-ink)}
.nudge-brand{color:var(--sj-brand)}
.toi-header-breadcrumb{justify-self:center;font-family:var(--sj-sans);font-size:13px;color:var(--sj-sub);white-space:nowrap}
.toi-header-breadcrumb ol{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:8px}
.toi-header-breadcrumb a{text-decoration:none;font-weight:700;color:inherit}
.toi-header-breadcrumb a:hover{text-decoration:underline}
.toi-header-breadcrumb .sep{color:#A3A9C2}
.toi-header-breadcrumb .series{color:var(--sj-ink)}
.toi-header-contact{justify-self:end;display:inline-flex;align-items:center;gap:6px;background:var(--sj-indigo);color:#fff;text-decoration:none;font-family:var(--sj-sans);font-weight:700;font-size:14px;padding:10px 18px;border-radius:999px;white-space:nowrap}
.toi-header-contact:hover{background:var(--sj-blue)}

/* ===== 共通フッター ===== */
.toi-footer{background:var(--sj-ink);color:#B9BFD9;font-family:var(--sj-sans);font-size:13px}
.toi-footer *{box-sizing:border-box}
.toi-footer-inner{max-width:1240px;margin:0 auto;padding:28px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.toi-footer-links{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
.toi-footer-links a{color:#fff;text-decoration:none}
.toi-footer-links a:hover{text-decoration:underline}
.toi-footer-links .sep{color:#6E7598}
.toi-footer .toi-brand{color:#fff}
.toi-footer .nudge-brand{color:#5AAEFF}

/* ===== ベース ===== */
.sj *{box-sizing:border-box}
.sj img,.sj svg{max-width:100%;display:block}
.sj p{margin:0 0 1em}
.sj p:last-child{margin-bottom:0}
.sj a{color:inherit}
.sj .wrap{max-width:1100px;margin:0 auto;padding:0 24px}
.sj .narrow{max-width:840px}
.sj .sec{padding:96px 0}
.sj .sec.tight{padding:68px 0}
.sj .sec.dots{background-color:var(--sj-bg);background-image:radial-gradient(var(--sj-dot) 1.2px,transparent 1.3px);background-size:22px 22px}
.sj .sec.w{background:var(--sj-paper)}
.sj .sec.ind{background:var(--sj-indigo);color:#fff}
.sj .sec.ink{background:var(--sj-ink);color:#fff}
.sj .lab{display:inline-flex;align-items:center;gap:10px;margin-bottom:16px;font-family:var(--sj-mono);font-weight:700;font-size:12px;letter-spacing:.08em;color:var(--sj-blue)}
.sj .lab::before{content:"";width:8px;height:8px;background:var(--sj-coral);border-radius:50%}
.sj .lab b{font-family:var(--sj-sans);font-size:13px;color:var(--sj-ink);letter-spacing:.04em}
.sj .ind .lab,.sj .ink .lab{color:var(--sj-lime)}
.sj .ind .lab b,.sj .ink .lab b{color:#fff}
.sj h2.h{font-weight:700;font-size:clamp(25px,3.3vw,38px);line-height:1.45;letter-spacing:.02em;margin:0 0 28px}
.sj h3.h3{font-weight:700;font-size:clamp(19px,2.2vw,23px);line-height:1.55;margin:56px 0 18px}
.sj h3.h3.t0{margin-top:0}
.sj .lead{font-size:17px;line-height:2}
.sj .sub{color:var(--sj-sub)}
.sj .c{text-align:center}
.sj .mt16{margin-top:16px}.sj .mt24{margin-top:24px}.sj .mt40{margin-top:40px}.sj .mt56{margin-top:56px}
.sj .hl{background:linear-gradient(transparent 60%,var(--sj-lime) 60%);font-weight:700}
.sj .ind .hl,.sj .ink .hl{background:linear-gradient(transparent 60%,rgba(198,232,75,.45) 60%)}
.sj .bc{color:var(--sj-blue);font-weight:700}
.sj .cc{color:var(--sj-coral);font-weight:700}
.sj .mono{font-family:var(--sj-mono)}
.sj .copy{font-weight:700;font-size:clamp(22px,3vw,32px);line-height:1.6;margin:48px 0 0;position:relative;padding-left:28px}
.sj .copy::before{content:"";position:absolute;left:0;top:.35em;bottom:.35em;width:6px;background:linear-gradient(var(--sj-blue),var(--sj-coral));border-radius:3px}
.sj .copy em{font-style:normal;color:var(--sj-blue)}
.sj .ind .copy em,.sj .ink .copy em{color:var(--sj-lime)}
.sj .copy.c{padding-left:0;text-align:center}
.sj .copy.c::before{display:none}
.sj .note{font-size:14px;color:var(--sj-sub);border:1px dashed var(--sj-line);background:var(--sj-paper);border-radius:10px;padding:12px 16px;margin-top:20px;line-height:1.8}
.sj .note::before{content:"NOTE ";font-family:var(--sj-mono);font-weight:700;color:var(--sj-coral);font-size:12px}
.sj .ind .note,.sj .ink .note{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.25);color:#CDD2EC}

/* ===== ボタン ===== */
.sj .ctas{display:flex;flex-wrap:wrap;gap:10px}
.sj .btn{display:inline-flex;align-items:center;justify-content:space-between;gap:14px;text-decoration:none;font-weight:700;font-size:15px;line-height:1.5;padding:15px 22px;border-radius:10px;border:2px solid var(--sj-indigo);transition:background .15s,color .15s,transform .15s}
.sj .btn::after{content:"→";font-family:var(--sj-mono)}
.sj .btn-main{background:var(--sj-coral);border-color:var(--sj-coral);color:#fff}
.sj .btn-main:hover{background:#D84B2A;border-color:#D84B2A}
.sj .btn-sub{background:var(--sj-paper);color:var(--sj-indigo)}
.sj .btn-sub:hover{background:var(--sj-blue-l)}
.sj .ind .btn-sub,.sj .ink .btn-sub{background:transparent;color:#fff;border-color:rgba(255,255,255,.75)}
.sj .ind .btn-sub:hover,.sj .ink .btn-sub:hover{background:rgba(255,255,255,.08)}

/* ===== FV ===== */
.sj .fv{padding:72px 0 86px;background-color:var(--sj-paper);background-image:radial-gradient(var(--sj-dot) 1.2px,transparent 1.3px);background-size:22px 22px;border-bottom:1px solid var(--sj-line)}
.sj .fv-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:48px;align-items:center}
.sj .fv-tag{display:inline-flex;gap:8px;align-items:center;font-size:13px;font-weight:700;background:var(--sj-ink);color:#fff;border-radius:6px;padding:5px 12px;margin-bottom:24px}
.sj .fv-tag::before{content:"EXP";font-family:var(--sj-mono);font-size:11px;color:var(--sj-lime)}
.sj .fv h1{font-weight:700;font-size:clamp(34px,4.6vw,56px);line-height:1.38;letter-spacing:.01em;margin:0 0 22px}
.sj .fv h1 .nw{white-space:nowrap}
.sj .fv h1 .k{color:var(--sj-coral)}
.sj .fv-sub{font-weight:700;font-size:clamp(18px,2vw,22px);line-height:1.75;margin:0 0 18px}
.sj .fv-sub s{text-decoration-color:var(--sj-coral);text-decoration-thickness:2px;color:var(--sj-sub)}
.sj .fv-sub b{color:var(--sj-blue)}
.sj .fv-steps{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:0 0 16px;padding:0}
.sj .fv-steps li{font-size:14px;font-weight:700;background:var(--sj-blue-l);color:var(--sj-indigo);border-radius:6px;padding:4px 10px}
.sj .fv-add{font-size:15px;color:var(--sj-sub);margin:0 0 22px}
.sj .fv-strip{display:flex;gap:12px;align-items:center;background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:12px;padding:12px 16px;margin:0 0 26px;font-size:14px;line-height:1.75;box-shadow:0 10px 24px -20px rgba(27,33,64,.6)}
.sj .fv-strip .t{flex:none;font-family:var(--sj-mono);font-weight:700;font-size:12px;background:var(--sj-lime);color:var(--sj-ink);border-radius:6px;padding:6px 8px;line-height:1.3;text-align:center}
.sj .fv-strip b{display:block;font-size:16px}
.sj .fv-visual{margin:0;background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:18px;padding:12px;box-shadow:0 30px 60px -40px rgba(27,33,64,.55)}
.sj .sj-img{display:block;width:100%;height:auto;border-radius:10px}

/* ===== 汎用 ===== */
.sj .chain{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;row-gap:10px}
.sj .chain li{display:flex;align-items:center;font-weight:700;font-size:15px}
.sj .chain li span{padding:8px 14px;background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:8px;white-space:nowrap}
.sj .chain li:not(:last-child)::after{content:"→";font-family:var(--sj-mono);color:var(--sj-sub);margin:0 6px}
.sj .chain li.b span{background:var(--sj-blue);color:#fff;border-color:var(--sj-blue)}
.sj .chain li.c span{background:var(--sj-coral);color:#fff;border-color:var(--sj-coral)}
.sj .chain li.m span{color:var(--sj-sub);border-style:dashed;background:transparent}
.sj .chain li.l span{background:var(--sj-lime);border-color:var(--sj-lime)}
.sj .ind .chain li span,.sj .ink .chain li span{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.3);color:#fff}
.sj .ind .chain li:not(:last-child)::after,.sj .ink .chain li:not(:last-child)::after{color:#9CA3CC}
.sj .tags{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.sj .tags li{background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:6px;padding:5px 12px;font-weight:700;font-size:15px}
.sj .tags.b li{background:var(--sj-blue-l);border-color:#C9D4F7;color:var(--sj-indigo)}
.sj .tags.c li{background:var(--sj-coral-l);border-color:#F6C6B8;color:#B23A1C}
.sj .tags.l li{background:var(--sj-lime-l);border-color:#DCEE9C;color:#445300}
.sj .tags.x li{background:transparent;border-style:dashed;color:var(--sj-sub)}
.sj .qs{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.sj .qs li{position:relative;background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:10px;padding:11px 16px 11px 44px;font-weight:700;font-size:16px;line-height:1.6}
.sj .qs li::before{content:"Q.";position:absolute;left:14px;top:11px;font-family:var(--sj-mono);font-weight:700;color:var(--sj-coral);font-size:15px}
.sj .qs.two{grid-template-columns:1fr 1fr}
.sj .qs.three{grid-template-columns:repeat(3,1fr)}
.sj .ind .qs li,.sj .ink .qs li{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.22);color:#fff}
.sj .ind .qs li::before,.sj .ink .qs li::before{color:var(--sj-lime)}
.sj .chk{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 28px}
.sj .chk li{position:relative;padding:7px 0 7px 32px;font-size:15.5px;border-bottom:1px dashed var(--sj-line)}
.sj .chk li::before{content:"";position:absolute;left:0;top:11px;width:18px;height:18px;border-radius:5px;background:var(--sj-lime)}
.sj .chk li::after{content:"";position:absolute;left:5px;top:15px;width:8px;height:5px;border-left:2px solid var(--sj-ink);border-bottom:2px solid var(--sj-ink);transform:rotate(-45deg)}
.sj .chk.c3{grid-template-columns:repeat(3,1fr)}
.sj .card{background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:16px;padding:26px}
.sj .card h3{margin:0 0 12px;font-size:19px;line-height:1.5}
.sj .vs{display:grid;grid-template-columns:1fr 1fr;gap:20px}

/* 問題提起 */
.sj .learn{list-style:none;margin:16px 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.sj .learn li{font-size:14.5px;color:var(--sj-sub);padding:4px 12px;border:1px dashed #B5BAD0;border-radius:6px}
.sj .loop-line{margin:28px 0 0;background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:16px;padding:22px 20px 18px}
.sj .loop-line ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);position:relative}
.sj .loop-line ol::before{content:"";position:absolute;left:6%;right:6%;top:21px;height:2px;background:linear-gradient(90deg,var(--sj-blue),var(--sj-coral))}
.sj .loop-line li{text-align:center;font-weight:700;font-size:14px;line-height:1.5;position:relative;padding:0 2px}
.sj .loop-line li i{display:flex;width:42px;height:42px;margin:0 auto 8px;border-radius:50%;background:var(--sj-paper);border:2px solid var(--sj-blue);font-style:normal;font-family:var(--sj-mono);font-size:13px;align-items:center;justify-content:center;color:var(--sj-blue);position:relative;z-index:1}
.sj .loop-line li:nth-child(n+4) i{border-color:var(--sj-coral);color:var(--sj-coral)}
.sj .loop-line .back{display:block;margin:10px auto 0;width:84%;height:22px;border:2px dashed #B5BAD0;border-top:0;border-radius:0 0 22px 22px;position:relative}
.sj .loop-line .back span{position:absolute;left:50%;bottom:-11px;transform:translateX(-50%);background:var(--sj-paper);padding:0 10px;font-size:12px;font-family:var(--sj-mono);font-weight:700;color:var(--sj-sub);white-space:nowrap}
.sj .swap{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;margin-top:44px}
.sj .swap div{border-radius:14px;padding:22px;text-align:center;font-weight:700;font-size:19px}
.sj .swap .a{border:1px dashed #B5BAD0;color:var(--sj-sub)}
.sj .swap .b{background:var(--sj-indigo);color:#fff}
.sj .swap .b em{font-style:normal;color:var(--sj-lime)}
.sj .swap .ar{font-family:var(--sj-mono);font-size:13px;color:var(--sj-sub);padding:0}
.sj .points{list-style:none;margin:44px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sj .points li{background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:12px;padding:14px 18px;font-weight:700;font-size:15.5px;display:grid;grid-template-columns:30px 1fr;gap:8px}
.sj .points li::before{content:attr(data-n);font-family:var(--sj-mono);color:var(--sj-coral);font-size:13px;padding-top:3px}

/* 定義 */
.sj .def{background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:18px;padding:40px 44px;position:relative;box-shadow:0 20px 40px -32px rgba(27,33,64,.55)}
.sj .def .tg{position:absolute;top:-13px;left:28px;font-family:var(--sj-mono);font-weight:700;font-size:12px;background:var(--sj-coral);color:#fff;padding:3px 12px;border-radius:6px}
.sj .def p{font-weight:700;font-size:clamp(18px,2.3vw,24px);line-height:1.85;margin:0}
.sj .def p em{font-style:normal;color:var(--sj-blue)}
.sj .scale{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;margin-top:36px}
.sj .scale div{border-radius:14px;padding:22px;text-align:center;font-weight:700;font-size:20px}
.sj .scale .a{background:var(--sj-paper);border:1px dashed #B5BAD0;color:var(--sj-sub)}
.sj .scale .b{background:var(--sj-lime)}
.sj .scale .ar{font-family:var(--sj-mono);font-size:14px;color:var(--sj-sub);padding:0}

/* 盛り上がって終わる vs 学習サイクル */
.sj .fork{display:grid;grid-template-columns:1fr 1.15fr;gap:20px;align-items:stretch}
.sj .fork .col{border-radius:16px;padding:24px}
.sj .fork .a{background:var(--sj-paper);border:1px solid var(--sj-line)}
.sj .fork .b{background:var(--sj-indigo);color:#fff}
.sj .fork h3{margin:0 0 16px;font-size:18px;display:flex;align-items:center;gap:10px}
.sj .fork h3 .t{font-family:var(--sj-mono);font-size:11px;padding:2px 8px;border-radius:4px}
.sj .fork .a h3 .t{background:#E6E8F0;color:var(--sj-sub)}
.sj .fork .b h3 .t{background:var(--sj-lime);color:var(--sj-ink)}
.sj .drop{list-style:none;margin:0;padding:0}
.sj .drop li{padding:7px 0 7px 26px;position:relative;font-weight:700;color:#3C4260}
.sj .drop li::before{content:"";position:absolute;left:6px;top:15px;width:8px;height:8px;border-radius:50%;background:#B5BAD0}
.sj .drop li:not(:last-child)::after{content:"";position:absolute;left:9px;top:25px;bottom:-9px;width:2px;background:#D9DDEB}
.sj .drop li:last-child{color:var(--sj-coral)}
.sj .drop li:last-child::before{background:var(--sj-coral)}
.sj .drop li:nth-child(n+5){opacity:.85}
.sj .cyc{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;counter-reset:cy}
.sj .cyc li{counter-increment:cy;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);border-radius:10px;padding:10px 12px 10px 42px;position:relative;font-weight:700}
.sj .cyc li::before{content:counter(cy,decimal-leading-zero);position:absolute;left:12px;top:11px;font-family:var(--sj-mono);font-size:12px;color:var(--sj-lime)}
.sj .cyc-back{margin-top:10px;font-family:var(--sj-mono);font-size:12px;color:var(--sj-lime);text-align:right}

/* 5つの行動：大きな循環 */
.sj .big-loop{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.sj .wheel{position:relative;width:100%;max-width:460px;aspect-ratio:1;margin:0 auto}
.sj .wheel .ring{position:absolute;inset:14%;border:3px dashed #C9D4F7;border-radius:50%}
.sj .wheel .core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:34%;aspect-ratio:1;border-radius:50%;background:var(--sj-indigo);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:700;text-align:center;font-size:16px;line-height:1.4}
.sj .wheel .core small{font-family:var(--sj-mono);font-size:10.5px;color:var(--sj-lime);margin-top:4px}
.sj .wheel .nd{position:absolute;transform:translate(-50%,-50%);width:28%;aspect-ratio:1;border-radius:50%;background:var(--sj-paper);border:2px solid var(--sj-blue);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-weight:700;font-size:16px;box-shadow:0 10px 20px -16px rgba(27,33,64,.7)}
.sj .wheel .nd small{font-family:var(--sj-mono);font-size:10px;color:var(--sj-blue)}
.sj .wheel .nd.c{border-color:var(--sj-coral)}
.sj .wheel .nd.c small{color:var(--sj-coral)}
.sj .five{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.sj .five li{display:grid;grid-template-columns:44px 110px 1fr;gap:10px;align-items:center;background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:12px;padding:12px 16px}
.sj .five .n{font-family:var(--sj-mono);font-weight:700;color:var(--sj-coral);font-size:14px}
.sj .five b{font-size:17px}
.sj .five span{font-size:14.5px;color:var(--sj-sub)}

/* 正解を当てる仕事ではない */
.sj .perfect{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center}
.sj .perfect .x{display:grid;gap:8px}
.sj .perfect .x span{border:1px dashed #B5BAD0;color:var(--sj-sub);border-radius:8px;padding:10px 14px;font-weight:700;text-decoration:line-through;text-decoration-color:var(--sj-coral)}
.sj .perfect .ar{font-family:var(--sj-mono);color:var(--sj-sub)}
.sj .perfect .d-d{display:none}
.sj .perfect .y{display:grid;gap:8px}
.sj .perfect .y span{background:var(--sj-blue-l);border-radius:8px;padding:10px 14px;font-weight:700;color:var(--sj-indigo)}
.sj .risk{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:28px;background:var(--sj-coral-l);border-radius:12px;padding:14px 18px}
.sj .risk b{font-size:14px;color:#B23A1C;margin-right:6px}

/* 顧客を見る */
.sj .outside{display:grid;grid-template-columns:1fr 1.2fr;gap:0;border-radius:18px;overflow:hidden;border:1px solid var(--sj-line)}
.sj .outside .in{padding:28px;background:#EEF0F6;color:var(--sj-sub);display:flex;flex-direction:column;justify-content:center}
.sj .outside .in b{font-size:20px;color:var(--sj-sub)}
.sj .outside .out{padding:28px;background:var(--sj-paper)}
.sj .outside .out h3{margin:0 0 14px;font-size:20px;color:var(--sj-blue)}
.sj .ccv{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:20px;border:1px solid var(--sj-line);border-radius:14px;overflow:hidden;background:var(--sj-paper)}
.sj .ccv div{padding:20px;position:relative}
.sj .ccv div + div{border-left:1px solid var(--sj-line)}
.sj .ccv small{font-family:var(--sj-mono);font-size:11px;color:var(--sj-coral);font-weight:700}
.sj .ccv b{display:block;font-size:19px;margin:2px 0 4px}
.sj .ccv span{font-size:14px;color:var(--sj-sub)}

/* 事実と仮説 */
.sj .fh{border:1px solid var(--sj-line);border-radius:16px;overflow:hidden;background:var(--sj-paper)}
.sj .fh .head,.sj .fh .row{display:grid;grid-template-columns:1.2fr 1fr 1fr}
.sj .fh .head{background:var(--sj-ink);color:#fff;font-size:13px;font-weight:700}
.sj .fh .head div{padding:10px 16px;font-family:var(--sj-mono)}
.sj .fh .head div:nth-child(2){color:var(--sj-lime)}
.sj .fh .head div:nth-child(3){color:#FFB49F}
.sj .fh .row{border-top:1px solid var(--sj-line)}
.sj .fh .row div{padding:11px 16px;font-size:14.5px}
.sj .fh .row div:first-child{font-weight:700}
.sj .fh .row div:nth-child(2){background:var(--sj-lime-l)}
.sj .fh .row div:nth-child(3){background:#FFF7F4}
.sj .hyp-q{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:24px}
.sj .hyp-q .s{background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:10px;padding:10px 16px;font-weight:700}
.sj .hyp-q .q{background:var(--sj-coral);color:#fff;border-radius:10px;padding:10px 16px;font-weight:700}

/* 仮説の本質 */
.sj .hdef{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.sj .hdef .x{border-radius:16px;padding:24px;border:1px dashed #B5BAD0;color:var(--sj-sub);text-align:center;font-weight:700;font-size:19px}
.sj .hdef .x s{text-decoration-color:var(--sj-coral);text-decoration-thickness:2px}
.sj .hdef .y{border-radius:16px;padding:24px;background:var(--sj-lime);text-align:center;font-weight:700;font-size:19px}

/* 一番怪しい前提 */
.sj .assume{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.sj .assume li{background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:12px;padding:16px 16px 16px 46px;position:relative;font-weight:700}
.sj .assume li::before{content:"?";position:absolute;left:14px;top:15px;width:22px;height:22px;border-radius:50%;background:#EEF0F6;color:var(--sj-sub);font-family:var(--sj-mono);font-size:13px;display:flex;align-items:center;justify-content:center}
.sj .assume li.sus{border:2px solid var(--sj-coral);background:var(--sj-coral-l)}
.sj .assume li.sus::before{background:var(--sj-coral);color:#fff;content:"!"}
.sj .assume li.sus::after{content:"いちばん怪しい？";position:absolute;right:10px;top:-11px;font-size:11px;background:var(--sj-coral);color:#fff;padding:1px 8px;border-radius:4px}

/* 小さく実験 */
.sj .exps{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.sj .exps div{background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:12px;padding:18px 8px;text-align:center;font-weight:700}
.sj .exps div small{display:block;font-family:var(--sj-mono);font-size:10.5px;color:var(--sj-blue);margin-bottom:4px}
.sj .minq{margin-top:32px;display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center;background:var(--sj-ink);color:#fff;border-radius:16px;padding:24px 28px}
.sj .minq .tag{font-family:var(--sj-mono);font-size:12px;font-weight:700;background:var(--sj-lime);color:var(--sj-ink);padding:4px 10px;border-radius:6px;white-space:nowrap}
.sj .minq p{margin:0;font-weight:700;font-size:clamp(18px,2.2vw,23px)}

/* 失敗・学習 */
.sj .learnrow{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--sj-line);border-radius:14px;overflow:hidden;background:var(--sj-paper)}
.sj .learnrow div{padding:18px 16px;position:relative}
.sj .learnrow div + div{border-left:1px solid var(--sj-line)}
.sj .learnrow small{font-family:var(--sj-mono);font-size:11px;font-weight:700;color:var(--sj-blue)}
.sj .learnrow b{display:block;font-size:18px}
.sj .learnrow div:nth-child(3){background:var(--sj-lime-l)}
.sj .learnrow div:nth-child(3) small{color:#5B7000}

/* 修正 */
.sj .pivot{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}
.sj .pivot div{border-radius:12px;padding:16px 8px;text-align:center;font-weight:700;background:var(--sj-paper);border:1px solid var(--sj-line);position:relative}
.sj .pivot div::before{content:"↻";display:block;font-size:18px;color:var(--sj-coral);line-height:1;margin-bottom:6px}

/* 続ける・変える・やめる */
.sj .three-dec{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}
.sj .three-dec div{border-radius:14px;padding:22px;text-align:center;font-weight:700;font-size:21px}
.sj .three-dec div:nth-child(1){background:var(--sj-blue);color:#fff}
.sj .three-dec div:nth-child(2){background:var(--sj-lime)}
.sj .three-dec div:nth-child(3){background:var(--sj-ink);color:#fff}
.sj .three-dec small{display:block;font-family:var(--sj-mono);font-size:11px;opacity:.8;font-weight:500}

/* 担当者のせい？ */
.sj .blame{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:center}
.sj .blame .x{border:1px dashed #B5BAD0;border-radius:16px;padding:24px;text-align:center}
.sj .blame .x b{display:block;font-size:20px;color:var(--sj-sub);text-decoration:line-through;text-decoration-color:var(--sj-coral);text-decoration-thickness:2px}
.sj .blame .x small{color:var(--sj-sub)}
.sj .blame ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sj .blame li{background:var(--sj-coral-l);border-radius:10px;padding:10px 14px;font-weight:700;font-size:15px;color:#7A2A15}

/* 3層 + 木 */
.sj .tree-wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center}
.sj .tree{background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:20px;padding:12px}
.sj .layers3{display:grid;gap:10px}
.sj .l3{display:grid;grid-template-columns:130px 1fr;gap:14px;align-items:center;background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:14px;padding:14px 16px}
.sj .l3 .h{font-weight:700;line-height:1.4}
.sj .l3 .h small{display:block;font-family:var(--sj-mono);font-size:11px;font-weight:700}
.sj .l3.fruit .h small{color:var(--sj-coral)}
.sj .l3.trunk .h small{color:#7A5A2B}
.sj .l3.soil .h small{color:#8A6A3A}
.sj .l3.root .h small{color:var(--sj-indigo)}
.sj .l3 .tags li{font-size:13.5px;padding:3px 10px}
.sj .l3.fruit{border-left:5px solid var(--sj-coral)}
.sj .l3.trunk{border-left:5px solid #7A5A2B}
.sj .l3.soil{border-left:5px solid #C9A36B}
.sj .l3.root{border-left:5px solid var(--sj-indigo)}

/* 問いが前へ */
.sj .to-exp{display:grid;grid-template-columns:1fr auto 1.3fr;gap:20px;align-items:center}
.sj .to-exp .x{border:1px dashed #B5BAD0;border-radius:14px;padding:22px;text-align:center}
.sj .to-exp .x span{display:block;font-weight:700;font-size:19px;color:var(--sj-sub)}
.sj .to-exp .x small{color:var(--sj-sub)}
.sj .to-exp .ar{font-family:var(--sj-mono);color:var(--sj-sub)}

/* 週の問い・7日 */
.sj .week{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border:1px solid var(--sj-line);border-radius:16px;overflow:hidden;background:var(--sj-paper)}
.sj .week div{padding:18px 14px}
.sj .week div + div{border-left:1px solid var(--sj-line)}
.sj .week small{display:block;font-family:var(--sj-mono);font-size:12px;font-weight:700;color:var(--sj-blue);margin-bottom:6px}
.sj .week b{font-size:15.5px;line-height:1.6;display:block}
.sj .days{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);gap:8px}
.sj .days li{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);border-radius:12px;padding:14px 12px;font-weight:700;font-size:14.5px;line-height:1.6;display:flex;flex-direction:column;gap:6px}
.sj .days small{font-family:var(--sj-mono);font-size:12px;color:var(--sj-lime)}
.sj .days li:last-child{background:var(--sj-lime);color:var(--sj-ink);border-color:var(--sj-lime)}
.sj .days li:last-child small{color:var(--sj-ink)}

/* 会議前後 */
.sj .mtg{display:grid;grid-template-columns:1fr auto 1fr;gap:0;align-items:stretch;border:1px solid var(--sj-line);border-radius:16px;overflow:hidden;background:var(--sj-paper)}
.sj .mtg .col{padding:24px}
.sj .mtg .mid{background:var(--sj-indigo);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:16px 22px;text-align:center;font-weight:700;min-width:170px}
.sj .mtg .mid s{color:#9CA3CC;font-weight:500;text-decoration-color:var(--sj-coral)}
.sj .mtg .mid b{color:var(--sj-lime)}
.sj .mtg h2{font-size:20px;margin:0 0 12px;line-height:1.5}
.sj .mtg .tt{font-family:var(--sj-mono);font-size:11px;font-weight:700;color:var(--sj-blue)}
.sj .mtg .qs li{font-size:15px}

/* 管理職・経営の問い */
.sj .ask{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.sj .ask .card h2{font-size:clamp(20px,2.3vw,25px);margin:0 0 12px;line-height:1.5}
.sj .ask .not{display:inline-block;margin-bottom:12px;font-weight:700;color:var(--sj-sub);border:1px dashed #B5BAD0;border-radius:8px;padding:6px 12px}
.sj .ask .not s{text-decoration-color:var(--sj-coral);text-decoration-thickness:2px}

/* キャズム */
.sj .chasm{display:grid;grid-template-columns:1fr 110px 1.2fr;align-items:stretch;margin-top:12px}
.sj .chasm .in,.sj .chasm .out{border-radius:16px;padding:24px}
.sj .chasm .in{background:rgba(255,255,255,.1)}
.sj .chasm .out{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.18)}
.sj .chasm h3{margin:0 0 12px;font-family:var(--sj-mono);font-size:12px;color:var(--sj-lime);letter-spacing:.08em}
.sj .chasm .bub{display:inline-block;background:#fff;color:var(--sj-ink);border-radius:12px 12px 12px 2px;padding:8px 14px;font-weight:700;margin:0 0 8px}
.sj .chasm .void{display:flex;align-items:center;justify-content:center}
.sj .chasm .void span{font-family:var(--sj-mono);font-size:12px;color:#9CA3CC;writing-mode:vertical-rl;letter-spacing:.3em;border-left:2px dashed rgba(255,255,255,.3);border-right:2px dashed rgba(255,255,255,.3);height:100%;display:flex;align-items:center;padding:0 14px}
.sj .chasm ol{list-style:none;margin:0;padding:0}
.sj .chasm ol li{padding:6px 0 6px 22px;position:relative;font-weight:700;color:#E3E6F5}
.sj .chasm ol li::before{content:"↓";position:absolute;left:0;color:#7E86B5}
.sj .chasm ol li:first-child::before{content:"●";font-size:9px;top:12px}
.sj .chasm ol li.end{color:#FFB49F}
.sj .bridge{margin-top:40px;display:grid;grid-template-columns:1fr 2fr 1fr;align-items:center;text-align:center;font-weight:700}
.sj .bridge .s{background:#fff;color:var(--sj-ink);padding:14px;border-radius:10px}
.sj .bridge .m{border-top:2px solid var(--sj-lime);border-bottom:2px solid var(--sj-lime);color:var(--sj-lime);padding:10px;font-size:14px;margin:0 -2px}

/* 2か月 */
.sj .formula{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;margin:28px 0}
.sj .formula .x{border:1px dashed #B5BAD0;border-radius:10px;padding:12px 20px;color:var(--sj-sub);font-weight:700;text-decoration:line-through;text-decoration-color:var(--sj-coral)}
.sj .formula .d{background:var(--sj-ink);color:#fff;padding:14px 22px;border-radius:10px;font-weight:700}
.sj .formula .m{background:var(--sj-blue);color:#fff;padding:14px 22px;border-radius:10px;font-weight:700}
.sj .formula .one{background:var(--sj-lime);padding:14px 22px;border-radius:10px;font-weight:700}
.sj .formula .op{font-family:var(--sj-mono);font-size:22px;font-weight:700}
.sj .copies3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.sj .copies3 p{margin:0;background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:14px;padding:22px;font-weight:700;font-size:17.5px;line-height:1.75}
.sj .midc{margin-top:48px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;padding:24px 28px;border-radius:16px;background:var(--sj-blue-l);border:1px solid #C9D4F7}
.sj .midc p{margin:0;font-weight:700;color:var(--sj-indigo)}

/* 朝晩 */
.sj .light{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}
.sj .light span{border:1px dashed #B5BAD0;color:var(--sj-sub);border-radius:8px;padding:6px 14px;font-weight:700;text-decoration:line-through;text-decoration-color:var(--sj-coral)}
.sj .ampm{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:40px}
.sj .ampm .col{border-radius:16px;padding:24px;background:var(--sj-paper);border:1px solid var(--sj-line)}
.sj .ampm h3{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:19px}
.sj .ampm h3 small{font-family:var(--sj-mono);font-size:11px;padding:2px 8px;border-radius:4px}
.sj .ampm .am h3 small{background:var(--sj-lime)}
.sj .ampm .pm h3 small{background:var(--sj-indigo);color:#fff}
.sj .ampm .qs li{font-size:15px}

/* 8週 */
.sj .weeks{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}
.sj .weeks::before{content:"";position:absolute;left:0;right:0;top:15px;height:3px;background:linear-gradient(90deg,var(--sj-blue),var(--sj-coral))}
.sj .wk{padding:0 16px 0 0;position:relative}
.sj .wk .pin{display:inline-flex;align-items:center;justify-content:center;height:32px;padding:0 12px;border-radius:999px;background:var(--sj-paper);border:2px solid var(--sj-blue);font-family:var(--sj-mono);font-weight:700;font-size:12px;color:var(--sj-blue);position:relative;z-index:1;margin-bottom:16px}
.sj .wk:nth-child(n+3) .pin{border-color:var(--sj-coral);color:var(--sj-coral)}
.sj .wk h2{font-size:18px;line-height:1.55;margin:0 0 12px}
.sj .wk .qs li{font-size:14.5px;padding:9px 12px 9px 40px}
.sj .wk .qs li::before{left:12px;top:9px;font-size:13px}
.sj .goal{display:grid;grid-template-columns:1fr 1.5fr;gap:40px;margin-top:64px;align-items:start}
.sj .lowload{display:inline-flex;gap:8px;align-items:center;font-size:13px;font-weight:700;color:var(--sj-sub);background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:999px;padding:4px 14px;margin-bottom:28px}
.sj .lowload b{font-family:var(--sj-mono);color:var(--sj-coral)}

/* 延長 */
.sj .ext{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;align-items:start}
.sj .plan{background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:16px;overflow:hidden}
.sj .plan h3{margin:0;padding:12px 18px;background:var(--sj-indigo);color:#fff;font-size:18px;display:flex;justify-content:space-between;align-items:center}
.sj .plan h3 small{font-family:var(--sj-mono);font-size:11px;color:var(--sj-lime)}
.sj .plan ol{list-style:none;margin:0;padding:8px 18px 14px}
.sj .plan li{padding:8px 0;border-bottom:1px dashed var(--sj-line);font-size:14.5px;display:grid;grid-template-columns:76px 1fr;gap:8px}
.sj .plan li:last-child{border-bottom:0}
.sj .plan li b{font-family:var(--sj-mono);font-size:12px;color:var(--sj-blue);padding-top:3px}
.sj .plan .yr{display:flex;flex-wrap:wrap;gap:6px;padding:14px 18px}
.sj .plan .yr span{background:var(--sj-blue-l);color:var(--sj-indigo);font-weight:700;font-size:14px;padding:4px 10px;border-radius:6px}
.sj .stdbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:24px;font-weight:700}
.sj .stdbar .s{background:var(--sj-lime);padding:8px 14px;border-radius:8px}
.sj .stdbar .p{border:1px dashed var(--sj-indigo);padding:6px 12px;border-radius:8px}

/* フェーズ */
.sj .phase{display:grid;grid-template-columns:repeat(8,1fr);gap:0;border:1px solid var(--sj-line);border-radius:14px;overflow:hidden;background:var(--sj-paper)}
.sj .phase div{padding:18px 6px;text-align:center;font-weight:700;position:relative}
.sj .phase div + div{border-left:1px solid var(--sj-line)}
.sj .phase small{display:block;font-family:var(--sj-mono);font-size:10.5px;color:var(--sj-sub);margin-bottom:4px}
.sj .phase div:nth-child(-n+3){background:var(--sj-blue-l)}
.sj .phase div:nth-child(n+4):nth-child(-n+5){background:var(--sj-coral-l)}
.sj .phase div:nth-child(n+6){background:var(--sj-lime-l)}

/* 頻度 */
.sj .freq{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:20px}
.sj .freq > div{background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:14px;padding:18px}
.sj .freq small{display:block;font-family:var(--sj-mono);font-size:11px;font-weight:700;color:var(--sj-sub)}
.sj .freq b{font-size:18px}
.sj .freq .bars{display:flex;gap:3px;margin-top:10px;height:26px}
.sj .freq .bars i{flex:1;background:var(--sj-blue);border-radius:2px}
.sj .freq > div:nth-child(2) .bars i:nth-child(even){opacity:.15}
.sj .freq > div:nth-child(3) .bars i{opacity:.15}
.sj .freq > div:nth-child(3) .bars i:nth-child(7n+1){opacity:1;background:var(--sj-coral)}

/* 内在化 */
.sj .inner{display:grid;grid-template-columns:repeat(4,1fr);gap:0;align-items:stretch}
.sj .inner div{padding:22px 18px;position:relative;font-weight:700}
.sj .inner small{display:block;font-family:var(--sj-mono);font-size:11px;margin-bottom:6px}
.sj .inner div:nth-child(1){background:#E7EBF8;border-radius:16px 0 0 16px}
.sj .inner div:nth-child(2){background:#C9D4F7}
.sj .inner div:nth-child(3){background:var(--sj-blue);color:#fff}
.sj .inner div:nth-child(4){background:var(--sj-indigo);color:#fff;border-radius:0 16px 16px 0}
.sj .inner div:nth-child(3) small,.sj .inner div:nth-child(4) small{color:var(--sj-lime)}
.sj .inner .qq{display:block;margin-top:6px;font-weight:500;font-size:14.5px;line-height:1.7}

/* 日常の仕事・日常活用化 */
.sj .habit{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center}
.sj .habit .ev{border:1px dashed #B5BAD0;border-radius:14px;padding:22px;text-align:center;color:var(--sj-sub);font-weight:700}
.sj .habit .ev span{display:block;font-family:var(--sj-mono);font-size:11px}
.sj .habit .dl{background:var(--sj-ink);color:#fff;border-radius:14px;padding:22px}
.sj .habit .dl span{display:block;font-family:var(--sj-mono);font-size:11px;color:var(--sj-lime)}
.sj .habit .ar{font-family:var(--sj-mono);color:var(--sj-sub)}
.sj .says{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:28px 0}
.sj .says div{background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:14px 14px 14px 3px;padding:16px 10px;text-align:center;font-weight:700;font-size:16.5px}
.sj .says div:last-child{background:var(--sj-coral);border-color:var(--sj-coral);color:#fff}

/* 母艦バナー（形は共通仕様） */
.sj .mothership{padding:56px 0;background:var(--sj-paper)}
.sj .mothership a.banner{display:block;border-radius:14px;overflow:hidden;box-shadow:0 10px 30px -18px rgba(27,33,64,.5);transition:transform .15s}
.sj .mothership a.banner:hover{transform:translateY(-2px)}
.sj .mothership a.banner img{width:100%;height:auto}

/* 3層で育てる */
.sj .grow{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.sj .grow .card{padding:22px}
.sj .grow .card h3{display:flex;justify-content:space-between;align-items:center}
.sj .grow .card h3 small{font-family:var(--sj-mono);font-size:11px;color:var(--sj-sub)}
.sj .grow .tags li{font-size:14px}
.sj .grow .c1{border-top:5px solid var(--sj-indigo)}
.sj .grow .c2{border-top:5px solid var(--sj-blue)}
.sj .grow .c3{border-top:5px solid var(--sj-coral)}

/* 文化 */
.sj .spread{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:end}
.sj .spread div{border-radius:14px;padding:18px;font-weight:700;position:relative}
.sj .spread small{display:block;font-family:var(--sj-mono);font-size:11px;margin-bottom:6px}
.sj .spread div:nth-child(1){background:var(--sj-coral-l);min-height:110px}
.sj .spread div:nth-child(2){background:var(--sj-blue-l);min-height:140px}
.sj .spread div:nth-child(3){background:#C9D4F7;min-height:170px}
.sj .spread div:nth-child(4){background:var(--sj-indigo);color:#fff;min-height:200px}
.sj .spread div:nth-child(4) small{color:var(--sj-lime)}

/* 解決できない */
.sj .walls{list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.sj .walls li{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:16px 10px;text-align:center;font-weight:700;font-size:15px}

/* 成果 */
.sj .measure{display:grid;grid-template-columns:230px 1fr;gap:36px;align-items:start}
.sj .measure .not{border:1px dashed #B5BAD0;border-radius:14px;padding:22px;text-align:center;font-weight:700;color:var(--sj-sub)}
.sj .measure .not s{display:block;font-size:18px;color:var(--sj-ink);text-decoration-color:var(--sj-coral);text-decoration-thickness:2px;margin:6px 0}

/* プログラム */
.sj .prog{display:grid;gap:14px}
.sj .prow{display:grid;grid-template-columns:150px 1fr;gap:16px;align-items:center}
.sj .prow .lb{font-weight:700;font-size:15px}
.sj .prow .lb small{display:block;font-family:var(--sj-mono);font-size:11px;color:var(--sj-blue)}
.sj .prow .its{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.sj .pg{display:flex;align-items:center;gap:10px;background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:12px;padding:14px 16px;font-weight:700;line-height:1.5}
.sj .pg .k{flex:none;width:30px;height:30px;border-radius:8px;background:var(--sj-blue-l);color:var(--sj-indigo);font-family:var(--sj-mono);display:flex;align-items:center;justify-content:center;font-size:14px}
.sj .prow.run .its{grid-template-columns:3fr 3fr 3.5fr 4.5fr}
.sj .prow.run .pg:nth-child(1){background:var(--sj-lime);border-color:var(--sj-lime)}
.sj .prow.run .pg:nth-child(1) .k{background:#fff}
.sj .pg .std{display:inline-block;font-size:11px;background:var(--sj-ink);color:#fff;padding:1px 8px;border-radius:4px;margin-top:4px;white-space:nowrap}

/* 実装手段 */
.sj .tools{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.sj .tools div{background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:14px;padding:22px}
.sj .tools .w{display:inline-block;font-family:var(--sj-mono);font-size:11px;font-weight:700;color:var(--sj-coral);margin-bottom:4px}
.sj .tools h3{margin:0 0 8px;font-size:19px}
.sj .tools p{margin:0;font-size:14px;color:var(--sj-sub);line-height:1.85}

/* FAQ */
.sj .faq{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sj .faq details{background:var(--sj-paper);border:1px solid var(--sj-line);border-radius:12px;align-self:start}
.sj .faq summary{cursor:pointer;list-style:none;padding:16px 44px 16px 52px;font-weight:700;position:relative;line-height:1.6}
.sj .faq summary::-webkit-details-marker{display:none}
.sj .faq summary::before{content:"Q.";position:absolute;left:18px;top:16px;font-family:var(--sj-mono);font-weight:700;color:var(--sj-coral)}
.sj .faq summary::after{content:"+";position:absolute;right:18px;top:13px;font-family:var(--sj-mono);font-size:20px;color:var(--sj-sub)}
.sj .faq details[open] summary::after{content:"−"}
.sj .faq .a{padding:0 20px 18px 52px;position:relative;font-size:15px;line-height:1.9}
.sj .faq .a::before{content:"A.";position:absolute;left:18px;top:0;font-family:var(--sj-mono);font-weight:700;color:var(--sj-blue)}

/* 最終CTA */
.sj .final{background:var(--sj-ink);color:#fff;padding:112px 0 100px;background-image:radial-gradient(rgba(255,255,255,.08) 1.2px,transparent 1.3px);background-size:22px 22px}
.sj .final .qlist{list-style:none;margin:0 0 52px;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:900px}
.sj .final .qlist li{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:12px 16px 12px 44px;font-weight:700;color:#CDD2EC;position:relative;font-size:15px}
.sj .final .qlist li::before{content:"Q.";position:absolute;left:14px;top:12px;font-family:var(--sj-mono);color:var(--sj-lime)}
.sj .final .big{font-weight:700;font-size:clamp(28px,4vw,46px);line-height:1.5;margin:0 0 44px}
.sj .final .big em{font-style:normal;color:var(--sj-lime)}

/* ===== レスポンシブ ===== */
@media (max-width:1000px){
  .sj .fv-grid,.sj .big-loop,.sj .tree-wrap{grid-template-columns:1fr}
  .sj .exps,.sj .pivot{grid-template-columns:repeat(3,1fr)}
  .sj .days{grid-template-columns:repeat(4,1fr)}
  .sj .walls{grid-template-columns:repeat(3,1fr)}
  .sj .ext{grid-template-columns:1fr}
  .sj .phase{grid-template-columns:repeat(4,1fr)}
  .sj .phase div{border-bottom:1px solid var(--sj-line)}
  .sj .says{grid-template-columns:repeat(3,1fr)}
  .sj .chk.c3{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  body{font-size:15px}
  .toi-header-inner{grid-template-columns:1fr auto;padding:10px 16px;gap:8px 12px}
  .toi-header-logo{font-size:17px}
  .toi-header-breadcrumb{grid-column:1 / -1;grid-row:2;justify-self:start;font-size:12px}
  .toi-header-contact{grid-column:2;grid-row:1;font-size:13px;padding:8px 14px}
  .toi-footer-inner{flex-direction:column;align-items:flex-start;padding:24px 16px}
  .sj .wrap{padding:0 16px}
  .sj .sec{padding:64px 0}
  .sj .sec.tight{padding:52px 0}
  .sj .lead{font-size:16px}
  .sj .fv{padding:44px 0 56px}
  .sj .ctas .btn{width:100%}
  .sj .copy{font-size:21px;padding-left:20px}
  .sj .loop-line ol{grid-template-columns:repeat(4,1fr);row-gap:16px}
  .sj .loop-line ol::before,.sj .loop-line .back{display:none}
  .sj .swap,.sj .scale{grid-template-columns:1fr;gap:8px}
  .sj .points{grid-template-columns:1fr}
  .sj .def{padding:32px 20px}
  .sj .fork{grid-template-columns:1fr}
  .sj .cyc{grid-template-columns:1fr}
  .sj .wheel .nd{font-size:13px}
  .sj .wheel .core{font-size:13px}
  .sj .five li{grid-template-columns:34px 1fr;gap:4px 8px}
  .sj .five span:not(.n){grid-column:2}
  .sj .perfect{grid-template-columns:1fr}
  .sj .perfect .ar{justify-self:center;text-align:center}
  .sj .vs{grid-template-columns:1fr}
  .sj .perfect .d-r{display:none}
  .sj .perfect .d-d{display:inline}
  .sj .outside{grid-template-columns:1fr}
  .sj .ccv{grid-template-columns:1fr}
  .sj .ccv div + div{border-left:0;border-top:1px solid var(--sj-line)}
  .sj .fh .head{display:none}
  .sj .fh .row{grid-template-columns:1fr}
  .sj .fh .row div:nth-child(2)::before{content:"事実 ";font-family:var(--sj-mono);font-size:11px;font-weight:700;color:#5B7000}
  .sj .fh .row div:nth-child(3)::before{content:"仮説 ";font-family:var(--sj-mono);font-size:11px;font-weight:700;color:var(--sj-coral)}
  .sj .hdef{grid-template-columns:1fr}
  .sj .assume{grid-template-columns:1fr}
  .sj .exps,.sj .pivot{grid-template-columns:1fr 1fr}
  .sj .minq{grid-template-columns:1fr;gap:10px;padding:20px}
  .sj .minq .tag{justify-self:start}
  .sj .learnrow{grid-template-columns:1fr 1fr}
  .sj .learnrow div:nth-child(3){border-left:0}
  .sj .learnrow div:nth-child(n+3){border-top:1px solid var(--sj-line)}
  .sj .three-dec{grid-template-columns:1fr}
  .sj .blame{grid-template-columns:1fr;gap:16px}
  .sj .blame ul{grid-template-columns:1fr}
  .sj .l3{grid-template-columns:1fr;gap:6px}
  .sj .to-exp{grid-template-columns:1fr}
  .sj .to-exp .ar{transform:rotate(90deg);justify-self:center}
  .sj .week{grid-template-columns:1fr}
  .sj .week div + div{border-left:0;border-top:1px solid var(--sj-line)}
  .sj .days{grid-template-columns:1fr 1fr}
  .sj .mtg{grid-template-columns:1fr}
  .sj .mtg .mid{padding:14px}
  .sj .ask{grid-template-columns:1fr}
  .sj .chasm{grid-template-columns:1fr}
  .sj .chasm .void{height:48px}
  .sj .chasm .void span{writing-mode:horizontal-tb;border:0;border-top:2px dashed rgba(255,255,255,.3);border-bottom:2px dashed rgba(255,255,255,.3);width:100%;justify-content:center;padding:8px 0;letter-spacing:.1em}
  .sj .bridge{grid-template-columns:1fr}
  .sj .bridge .m{border:0;border-left:2px solid var(--sj-lime);border-right:2px solid var(--sj-lime);width:70%;margin:0 auto}
  .sj .copies3{grid-template-columns:1fr}
  .sj .midc{padding:20px}
  .sj .ampm{grid-template-columns:1fr}
  .sj .qs.two,.sj .qs.three{grid-template-columns:1fr}
  .sj .weeks{grid-template-columns:1fr;gap:28px}
  .sj .weeks::before{left:15px;right:auto;top:0;bottom:0;width:3px;height:auto;background:linear-gradient(180deg,var(--sj-blue),var(--sj-coral))}
  .sj .wk{padding:0 0 0 0}
  .sj .goal{grid-template-columns:1fr;gap:16px}
  .sj .chk,.sj .chk.c3{grid-template-columns:1fr}
  .sj .phase{grid-template-columns:1fr 1fr}
  .sj .phase div:nth-child(odd){border-left:0}
  .sj .freq{grid-template-columns:1fr}
  .sj .inner{grid-template-columns:1fr}
  .sj .inner div{border-radius:0 !important}
  .sj .inner div:first-child{border-radius:16px 16px 0 0 !important}
  .sj .inner div:last-child{border-radius:0 0 16px 16px !important}
  .sj .habit{grid-template-columns:1fr}
  .sj .habit .ar{transform:rotate(90deg);justify-self:center}
  .sj .says{grid-template-columns:1fr 1fr}
  .sj .grow{grid-template-columns:1fr}
  .sj .spread{grid-template-columns:1fr}
  .sj .spread div{min-height:0 !important}
  .sj .walls{grid-template-columns:1fr 1fr}
  .sj .measure{grid-template-columns:1fr;gap:20px}
  .sj .prow{grid-template-columns:1fr;gap:8px}
  .sj .prow .its,.sj .prow.run .its{grid-template-columns:1fr}
  .sj .tools{grid-template-columns:1fr}
  .sj .faq{grid-template-columns:1fr}
  .sj .final{padding:72px 0 64px}
  .sj .final .qlist{grid-template-columns:1fr}
}
.sj .sj-img{display:block;width:100%;height:auto}
