/* 3フェーズの色（9つのステップ） */
:root{--ph1:#7a6a58;--ph2:#a07f52;--ph3:#9a6f68;}
.phlab{display:flex;align-items:baseline;gap:9px;margin:18px 2px 8px;flex-wrap:wrap;
font-size:13px;font-weight:700;color:var(--ink)}
.phlab:first-of-type{margin-top:4px}
.phlab em{font-style:normal;font-size:9.5px;letter-spacing:.14em;color:#fff;border-radius:20px;padding:3px 9px;white-space:nowrap}
.phlab span{font-size:11.5px;font-weight:400;color:var(--soft);letter-spacing:0}
.phlab.p1 em{background:var(--ph1)} .phlab.p2 em{background:var(--ph2)} .phlab.p3 em{background:var(--ph3)}
.g9 a.p1{border-top:3px solid var(--ph1)} .g9 a.p1 .n{color:var(--ph1)}
.g9 a.p2{border-top:3px solid var(--ph2)} .g9 a.p2 .n{color:var(--ph2)}
.g9 a.p3{border-top:3px solid var(--ph3)} .g9 a.p3 .n{color:var(--ph3)}
.g9+.phlab{margin-top:16px}
.step.p1 .num{background:var(--ph1)} .step.p2 .num{background:var(--ph2)} .step.p3 .num{background:var(--ph3)}
.g9wrap .note9{font-size:11px;color:var(--pale);text-align:center;margin:14px 0 0;line-height:1.85;letter-spacing:.01em}

:root{
--ink:#3a332c; --soft:#7f7568; --pale:#a49889; --line:#e8e0d5; --bg:#fdfbf8;
--accent:#6b5847; --accent-bg:#f2eee8; --dark:#2f2925;
--rose:#e8e0d5; --tan:#e5ddd0; --tan2:#dbd1c2;
--bubble:#f4f0ea; --line-g:#06c755;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);
font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP","Yu Gothic",Meiryo,sans-serif;
font-size:15.5px;line-height:2.0;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent)}
.wrap{max-width:660px;margin:0 auto;padding:0 20px}
.body{padding-top:34px}

/* hero */
.hero{background:linear-gradient(180deg,#f3efe9 0%,#f8f5f0 70%,var(--bg) 100%);
padding:40px 20px 40px;text-align:center}
.hero .brand{font-size:11px;letter-spacing:.22em;color:var(--pale);margin:0 0 20px}
.hero h1{font-size:25px;line-height:1.62;font-weight:700;margin:0 0 16px;letter-spacing:.01em}
.hero h1:first-child{margin-top:4px}
.hero .sub{font-size:13px;line-height:1.95;color:var(--soft);margin:0}
.hero .icons{display:flex;justify-content:center;gap:14px;margin-top:24px}
.hero .icons span{width:38px;height:38px;border-radius:50%;background:#fff;
display:flex;align-items:center;justify-content:center;border:1px solid var(--line)}
@media(max-width:400px){.hero h1{font-size:21px}}

h2{scroll-margin-top:62px;font-size:18px;font-weight:700;line-height:1.7;margin:46px 0 18px;
padding-bottom:11px;border-bottom:1px solid var(--line)}
h3{font-size:15.5px;font-weight:700;margin:30px 0 10px}
p{margin:0 0 18px}
.lead{font-size:16px}

/* 吹き出し */
.bub{position:relative;background:var(--bubble);border-radius:13px;padding:15px 18px;
margin:20px 0 22px;font-size:14.5px;line-height:1.9;color:#5e5348}
.bub:before{content:"";position:absolute;top:-8px;left:34px;width:0;height:0;
border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:8px solid var(--bubble)}

/* 囲み */
.ans{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 20px 6px;margin:22px 0}
.ans .lab{display:inline-block;font-size:11px;letter-spacing:.12em;color:#fff;background:var(--accent);
border-radius:20px;padding:3px 13px;margin-bottom:14px}
.ans p:last-child{margin-bottom:16px}
.note{background:#f6f3ee;border-radius:11px;padding:16px 18px;margin:22px 0;
font-size:13px;line-height:1.95;color:var(--soft)}
.note p{margin:0 0 8px}.note p:last-child{margin:0}

/* パネル（コマ割り） */
.panels{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}
@media(max-width:520px){.panels{grid-template-columns:1fr}}
.panel{background:#fff;border:1px solid var(--line);border-radius:11px;padding:18px 16px 16px;position:relative}
.panel .no{position:absolute;top:-9px;left:14px;width:23px;height:23px;border-radius:50%;
background:var(--dark);color:#fff;font-size:11px;display:flex;align-items:center;justify-content:center}
.panel h4{margin:6px 0 8px;font-size:14.5px;font-weight:700}
.panel p{margin:0;font-size:13.5px;line-height:1.9;color:#5e5348}

/* 配分バー */
.alloc{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 18px;margin:24px 0}
.alloc .row{margin-bottom:15px}
.alloc .row:last-child{margin-bottom:0}
.alloc .t{display:flex;justify-content:space-between;font-size:13.5px;margin-bottom:6px;gap:10px}
.alloc .t b{font-weight:700}
.alloc .t i{font-style:normal;color:var(--soft);font-size:13px;white-space:nowrap}
.alloc .bar{height:9px;background:#f0ebe3;border-radius:6px;overflow:hidden}
.alloc .bar span{display:block;height:100%;border-radius:6px}

/* 時系列 */
.tl{margin:24px 0;padding:0;list-style:none}
.tl li{position:relative;padding:0 0 20px 26px;border-left:2px solid var(--line)}
.tl li:last-child{border-left-color:transparent;padding-bottom:0}
.tl li:before{content:"";position:absolute;left:-6px;top:8px;width:10px;height:10px;
border-radius:50%;background:var(--accent);border:2px solid var(--bg)}
.tl .when{display:block;font-size:12px;letter-spacing:.06em;color:var(--pale);margin-bottom:2px}
.tl .what{font-size:14.5px;font-weight:700;display:block;line-height:1.75}
.tl .memo{font-size:13.5px;color:#5e5348;line-height:1.9;display:block;margin-top:3px}
.tl li.key:before{background:var(--dark);width:12px;height:12px;left:-7px}

/* チェックリスト */
.chk{background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px 18px;margin:24px 0}
.chk .it{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid #f0ebe3;align-items:flex-start}
.chk .it:last-child{border-bottom:none}
.chk .ic{flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:var(--accent-bg);
display:flex;align-items:center;justify-content:center;margin-top:3px}
.chk b{display:block;font-size:14.5px;line-height:1.75;margin-bottom:2px}
.chk span{display:block;font-size:13.5px;color:#5e5348;line-height:1.9}

/* カード（TYPE/CASE） */
.cards{margin:24px 0}
.card{border-radius:12px;overflow:hidden;margin-bottom:14px;border:1px solid var(--line)}
.card .hd{padding:13px 18px;font-size:14.5px;font-weight:700}
.card .bd{padding:16px 18px 6px;background:#fff}
.card .bd p{font-size:13.5px;line-height:1.95;margin-bottom:12px}
.c1 .hd{background:var(--rose)} .c2 .hd{background:var(--tan)} .c3 .hd{background:var(--tan2)}

/* FAQ */
.faq{margin:24px 0}
.faq .q{font-weight:700;font-size:14.5px;margin:22px 0 8px;padding-left:24px;position:relative;line-height:1.8}
.faq .q:before{content:"Q";position:absolute;left:0;top:0;color:var(--accent);font-size:13px}
.faq .a{font-size:14px;line-height:1.95;color:#5e5348;margin:0 0 4px;padding-left:24px}

/* 関連 */
.rel{margin:40px 0 0;padding:0;list-style:none}
.rel li{border-bottom:1px solid var(--line)}
.rel li:first-child{border-top:1px solid var(--line)}
.rel a{display:block;padding:16px 4px;font-size:14.5px;text-decoration:none;color:var(--ink);line-height:1.75}
.rel a em{font-style:normal;display:block;font-size:12px;color:var(--pale);margin-bottom:2px;letter-spacing:.06em}

/* consultfoot */
.consultfoot{background:var(--accent-bg);margin-top:52px;padding:40px 0 34px}
.consultfoot .in{max-width:660px;margin:0 auto;padding:0 20px}
.consultfoot .who{display:flex;gap:18px;align-items:flex-start}
@media(max-width:480px){.consultfoot .who{display:block}}
.consultfoot .ph{flex:0 0 96px;width:96px;height:96px;border-radius:50%;overflow:hidden;
background:#e3dbcf;border:1px solid var(--line)}
@media(max-width:480px){.consultfoot .ph{margin:0 0 16px}}
.consultfoot .nm{font-size:16px;font-weight:700;margin:0 0 2px}
.consultfoot .ti{font-size:12.5px;color:var(--soft);margin:0 0 12px;line-height:1.85}
.consultfoot .bio{font-size:13.5px;line-height:1.95;color:#5e5348;margin:0}
.consultfoot .sns{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0;padding:0;list-style:none}
.consultfoot .sns a{display:block;font-size:12px;letter-spacing:.04em;text-decoration:none;color:var(--accent);
background:#fff;border:1px solid var(--line);border-radius:20px;padding:6px 15px}
.cta{background:var(--dark);border-radius:14px;padding:28px 22px;text-align:center;margin:26px 0 0;color:#fff}
.cta p.h{font-size:15.5px;font-weight:700;margin:0 0 8px;line-height:1.8}
.cta p.s{font-size:13px;color:#c9c0b6;margin:0 0 20px;line-height:1.9}
.cta .btns{display:flex;flex-direction:column;gap:10px;align-items:center}
.cta a{display:block;width:100%;max-width:300px;text-align:center;text-decoration:none;
border-radius:30px;padding:13px 0;font-size:14px;font-weight:700}
.cta a.line{background:var(--line-g);color:#fff}
.cta a.form{border:1px solid #6d645b;color:#fff}
.discl{font-size:11.5px;line-height:1.9;color:var(--pale);margin:24px 0 40px}
.sitefoot-note{height:1px}

/* ===== 目次 ===== */
.toc{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 20px 16px;margin:8px 0 30px}
.toc .lab{font-size:11px;letter-spacing:.16em;color:var(--pale);margin:0 0 12px}
.toc ol{margin:0;padding:0;list-style:none;counter-reset:t}
.toc li{counter-increment:t;border-top:1px solid #f2ede5}
.toc li:first-child{border-top:none}
.toc a{display:flex;gap:12px;align-items:baseline;text-decoration:none;color:var(--ink);
font-size:14px;line-height:1.75;padding:11px 0}
.toc a:before{content:counter(t,decimal-leading-zero);flex:0 0 auto;font-size:11px;
color:var(--accent);letter-spacing:.06em}

/* ===== 会話（アイリスト × コンサルタント） ===== */
.talk{display:flex;gap:11px;margin:20px 0;align-items:flex-start}
.talk .av{flex:0 0 44px;width:44px;height:44px;border-radius:50%;overflow:hidden;
background:#fff;border:1px solid var(--line)}
.talk .bl{position:relative;border-radius:14px;padding:14px 17px;font-size:14.5px;line-height:1.92;max-width:calc(100% - 58px)}
.talk .bl p{margin:0 0 10px}.talk .bl p:last-child{margin:0}
.talk .nm{display:block;font-size:10.5px;letter-spacing:.1em;color:var(--pale);margin-bottom:4px}
.talk.q .bl{background:var(--bubble);color:#5e5348}
.talk.q .bl:before{content:"";position:absolute;left:-6px;top:16px;width:0;height:0;
border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:7px solid var(--bubble)}
.talk.a{flex-direction:row-reverse}
.talk.a .bl{background:#fff;border:1px solid var(--line);color:var(--ink)}
.talk.a .bl:after{content:"";position:absolute;right:-7px;top:16px;width:0;height:0;
border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:7px solid #fff}
.talk.a .bl:before{content:"";position:absolute;right:-8px;top:16px;width:0;height:0;
border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:7px solid var(--line)}
.talk.a .nm{text-align:right}

/* ===== ガントチャート ===== */
.gantt{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 16px 12px;margin:26px 0}
.gantt .scale{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:14px}
.gantt .scale span{font-size:9.5px;text-align:center;color:var(--pale);letter-spacing:.02em;line-height:1.5}
.grow{margin-bottom:16px}
.grow:last-child{margin-bottom:4px}
.grow .gl{font-size:13px;font-weight:700;margin-bottom:5px;display:flex;gap:8px;align-items:center}
.grow .gl i{font-style:normal;font-size:10px;color:#fff;background:var(--accent);
border-radius:4px;padding:1px 6px;letter-spacing:.04em;flex:0 0 auto}
.grow .gt{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;height:14px}
.grow .gt b{grid-row:1;height:14px;border-radius:4px;display:block}
.grow .gm{font-size:12px;color:var(--soft);line-height:1.8;margin:5px 0 0}
.gantt .open{border-top:1px dashed var(--line);padding-top:12px;margin-top:4px;
font-size:12px;color:var(--accent);text-align:center;letter-spacing:.06em}

/* ステップカード */
.steps{margin:24px 0}
.step{scroll-margin-top:62px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 18px 14px;margin-bottom:12px;position:relative}
.step .hd{display:flex;gap:11px;align-items:center;margin-bottom:10px}
.step .num{flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:var(--dark);color:#fff;
font-size:12px;display:flex;align-items:center;justify-content:center;letter-spacing:.02em}
.step .ti{font-size:15px;font-weight:700;line-height:1.6}
.step .when{font-size:11px;color:var(--pale);letter-spacing:.06em;display:block;margin-top:1px;font-weight:400}
.step p{font-size:13.5px;line-height:1.95;color:#5e5348;margin:0 0 10px}
.step .tags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 10px;padding:0;list-style:none}
.step .tags li{font-size:11.5px;color:var(--soft);background:var(--accent-bg);border-radius:5px;padding:3px 9px;line-height:1.7}
.step .go{font-size:13px;font-weight:700}
.step .soon{font-size:12px;color:var(--pale)}
.chk .ic{font-size:12.5px;font-weight:700;color:var(--accent);letter-spacing:.02em}
.fig{margin:26px 0}
.fig img{width:100%;border-radius:12px;border:1px solid var(--line);display:block}
.fig figcaption{font-size:13px;line-height:1.95;color:var(--soft);margin:11px 2px 0}
.ba{margin:26px 0}
.ba .pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:480px){.ba .pair{grid-template-columns:1fr;gap:14px}}
.ba .cell{margin:0}
.ba .cell img{width:100%;border-radius:11px;border:1px solid var(--line);display:block}
.ba .lab{display:inline-block;font-size:11px;letter-spacing:.1em;color:#fff;background:var(--accent);
border-radius:20px;padding:3px 12px;margin:0 0 7px}
.ba figcaption{font-size:13px;line-height:1.95;color:var(--soft);margin:12px 2px 0}

/* ===== /consulting/ 専用ヘッダー ===== */
.chead{position:sticky;top:0;z-index:50;background:rgba(253,251,248,.94);
backdrop-filter:saturate(150%) blur(8px);-webkit-backdrop-filter:saturate(150%) blur(8px);
border-bottom:1px solid var(--line)}
.chead .in{max-width:660px;margin:0 auto;padding:0 16px;height:52px;
display:flex;align-items:center;justify-content:space-between;gap:12px}
.chead .nm{font-size:12.5px;font-weight:700;letter-spacing:.02em;color:var(--ink);
text-decoration:none;line-height:1.4}
.chead .nm em{display:block;font-style:normal;font-size:9.5px;font-weight:400;
color:var(--pale);letter-spacing:.14em;margin-bottom:1px}
.chead .hcta{flex:0 0 auto;margin:0;font-size:11.5px;font-weight:700;letter-spacing:.02em;white-space:nowrap;
text-decoration:none;color:#fff;background:var(--dark);border-radius:20px;padding:7px 14px}
.brands{display:flex;flex-wrap:wrap;gap:7px;margin:13px 0 0}
.brands span{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.07em;color:var(--soft);
background:#fff;border:1px solid var(--line);border-radius:5px;padding:6px 10px;line-height:1}
.brands+.bcap{font-size:11.5px;color:var(--pale);line-height:1.8;margin:9px 0 0}
.chead .btns{flex:0 0 auto;display:flex;align-items:center;gap:7px}
.chead .sup{flex:0 0 auto;margin:0;font-size:11.5px;font-weight:700;letter-spacing:.02em;white-space:nowrap;
text-decoration:none;color:var(--accent);background:#fff;border:1px solid var(--line);border-radius:20px;padding:6px 12px}
.chead .pk{flex:0 0 auto;margin:0;font-size:11.5px;font-weight:700;letter-spacing:.02em;white-space:nowrap;
text-decoration:none;color:var(--accent);background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px}
@media(max-width:430px){
.chead .in{padding:0 10px}
.chead .btns{gap:5px}
.chead .nm{font-size:11px}
.chead .nm em{font-size:9px}
.chead .hcta{font-size:10px;padding:6px 9px}
.chead .sup,.chead .pk{font-size:10px;padding:5px 8px}}
/* ===== ハンバーガーナビ（k25・768px未満は☰に集約） ===== */
.chead .sy{flex:0 0 auto;margin:0;font-size:11.5px;font-weight:700;letter-spacing:.02em;white-space:nowrap;
text-decoration:none;color:var(--accent);background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px}
/* 経営編（/keiei/）へのリンク。.sy と同じ見た目 */
.chead .kk{flex:0 0 auto;margin:0;font-size:11.5px;font-weight:700;letter-spacing:.02em;white-space:nowrap;
text-decoration:none;color:var(--accent);background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px}
@media(max-width:767px){
.chead .mnbtn{flex:0 0 auto;display:flex;align-items:center;justify-content:center;
width:36px;height:30px;box-sizing:border-box;cursor:pointer;
border:1px solid var(--line);background:#fff;border-radius:9px;color:var(--accent);
font-size:13px;line-height:1;-webkit-tap-highlight-color:transparent}
.chead .mnbtn::before{content:"\2630"}
.chead .mnck:checked~.mnbtn::before{content:"\2715";font-size:11px}
.chead .mnb{display:none;position:absolute;left:0;right:0;top:100%;
background:rgba(253,251,248,.98);
-webkit-backdrop-filter:saturate(150%) blur(8px);backdrop-filter:saturate(150%) blur(8px);
border-bottom:1px solid var(--line);padding:10px 16px 14px;flex-direction:column;gap:8px}
.chead .mnck:checked~.mnb{display:flex}
.chead .mnb a{display:block;text-align:center;font-size:12.5px;font-weight:700;letter-spacing:.02em;
text-decoration:none;color:var(--accent);background:#fff;border:1px solid var(--line);
border-radius:10px;padding:11px 12px}}
@media(min-width:768px){
.chead .mnb{display:contents}
.chead .mnbtn{display:none}}

/* 会社情報（.consultfoot の最下部） */
.corp{margin:26px 0 0;padding-top:20px;border-top:1px solid rgba(107,88,71,.14);
font-size:11.5px;line-height:2.0;color:var(--soft);text-align:center}
.corp b{font-weight:700;color:var(--ink);font-size:12.5px}
.corp a{color:var(--soft);text-decoration:none;border-bottom:1px solid rgba(127,117,104,.35)}
.corp .yg{color:var(--pale)}

/* ===== 9つのステップ グリッド ===== */
.g9{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:8px 0 6px}
.g9 a{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);
border-radius:11px;padding:13px 6px 11px;text-align:center;color:var(--ink)}
.g9 .n{display:block;font-size:10px;color:var(--accent);letter-spacing:.08em;margin-bottom:5px}
.g9 .t{display:block;font-size:12.5px;font-weight:700;line-height:1.45}
.g9 .w{display:block;font-size:9.5px;color:var(--pale);margin-top:5px;letter-spacing:0}
@media(max-width:340px){.g9 .t{font-size:11.5px}.g9{gap:6px}}
.g9wrap{background:var(--accent-bg);padding:22px 20px 24px;margin:0}
.g9wrap .in{max-width:660px;margin:0 auto}
.g9wrap .hd{font-size:14.5px;font-weight:700;text-align:center;margin:0 0 4px}
.g9wrap .sb{font-size:12px;color:var(--soft);text-align:center;margin:0 0 16px;line-height:1.8}
.g9wrap .ft{font-size:11.5px;color:var(--pale);text-align:center;margin:12px 0 0;letter-spacing:.02em}

/* 会社情報 2ブロック */
.corp{margin:26px 0 0;padding-top:22px;border-top:1px solid rgba(107,88,71,.14);
font-size:11.5px;line-height:1.95;color:var(--soft);text-align:center}
.corp .u{margin-bottom:16px}
.corp .u:last-child{margin-bottom:0}
.corp .k{display:block;font-size:10px;letter-spacing:.12em;color:var(--pale);margin-bottom:5px}
.corp b{font-weight:700;color:var(--ink);font-size:12.5px}
.corp a{color:var(--soft);text-decoration:none;border-bottom:1px solid rgba(127,117,104,.35)}
.g9 .ic{display:block;width:26px;height:26px;margin:0 auto 6px}
/* 価格表 */
.ptbl{background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px 16px;margin:24px 0}
.ptbl .r{display:flex;justify-content:space-between;gap:12px;align-items:baseline;
padding:12px 0;border-bottom:1px solid #f2ede5;font-size:13.5px;line-height:1.7}
.ptbl .r:last-child{border-bottom:none}
.ptbl .r .nm{flex:1 1 auto}
.ptbl .r .qt{flex:0 0 auto;font-size:12px;color:var(--pale);white-space:nowrap}
.ptbl .r .pr{flex:0 0 auto;font-weight:700;white-space:nowrap;font-size:14px}
.ptbl .r.sub{background:transparent}
.ptbl .r.tot{border-top:2px solid var(--accent);border-bottom:none;margin-top:2px;padding-top:14px}
.ptbl .r.tot .nm{font-weight:700}
.ptbl .r.tot .pr{font-size:17px;color:var(--accent)}
.ptbl .cap{font-size:11.5px;color:var(--pale);line-height:1.85;margin:4px 0 12px}
.ptbl .hd{font-size:11px;letter-spacing:.12em;color:var(--pale);padding:14px 0 4px;border-bottom:none}

/* 縦長の資料図（求人記事のペルソナ表など） */
.fig.pt img{max-width:400px;margin-left:auto;margin-right:auto}

/* 本文中の小さな但し書き */
p.cap{font-size:12.5px;color:var(--soft);line-height:1.95;margin:12px 0 22px}

/* 横に長い資料図（競合調査シートなど）はスクロールさせる */
.fig .figsc{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px}
.fig .figsc img{width:820px;max-width:none;border-radius:12px;border:1px solid var(--line);display:block}
@media(min-width:700px){.fig .figsc img{width:100%}}
.fig .scnote{font-size:11.5px;color:var(--pale);margin:7px 2px 0;letter-spacing:.02em}
@media(min-width:700px){.fig .scnote{display:none}}

/* ===== 子記事リスト（ハブ記事の中に置く） ===== */
.kids{background:#fff;border:1px solid var(--line);border-radius:12px;padding:4px 18px 6px;margin:26px 0}
.kids .lab{display:inline-block;font-size:11px;letter-spacing:.12em;color:#fff;background:var(--accent);
border-radius:20px;padding:4px 12px;margin:16px 0 6px}
.kids .intro{font-size:13px;color:var(--soft);line-height:1.95;margin:0 0 6px}
.kids a{display:flex;gap:12px;align-items:flex-start;padding:15px 0;border-bottom:1px solid #f0ebe3;
text-decoration:none;color:var(--ink)}
.kids a:last-of-type{border-bottom:none}
.kids .no{flex:0 0 26px;width:26px;height:26px;border-radius:50%;background:var(--accent-bg);
color:var(--accent);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-top:2px}
.kids .t{font-size:14.5px;font-weight:700;line-height:1.7;display:block}
.kids .d{font-size:12.5px;color:#5e5348;line-height:1.85;display:block;margin-top:3px}
.kids .soonk{color:var(--pale)}
.kids .soonk .t{font-weight:400}
.kids .badge{font-size:10.5px;color:var(--pale);border:1px solid var(--line);border-radius:4px;
padding:1px 6px;margin-left:6px;white-space:nowrap;font-weight:400}

/* ===== 子記事の上部：親へのパンくず ===== */
.crumb{font-size:11.5px;color:var(--pale);letter-spacing:.02em;line-height:1.9;
max-width:660px;margin:0 auto;padding:11px 20px 3px}
.crumb a{color:var(--soft);text-decoration:none;border-bottom:1px solid var(--line)}
.crumb .sep{margin:0 6px;color:var(--line)}

/* ===== 子記事の「親にもどる」帯 ===== */
.toparent{display:flex;align-items:center;gap:12px;background:var(--accent-bg);border-radius:12px;
padding:14px 16px;margin:26px 0;text-decoration:none;color:var(--ink)}
.toparent .ic{flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:#fff;
display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--accent)}
.toparent .tx{flex:1 1 auto}
.toparent em{font-style:normal;display:block;font-size:10.5px;letter-spacing:.1em;color:var(--pale);margin-bottom:2px}
.toparent b{font-size:13.5px;line-height:1.65;display:block}

/* ===== 案 → 確定 の対比 ===== */
.vs{margin:24px 0}
.vs .row{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px 15px;margin-bottom:10px}
.vs .row:last-child{margin-bottom:0}
.vs .ttl{font-size:12.5px;font-weight:700;letter-spacing:.04em;margin:0 0 10px;color:var(--accent)}
.vs .a,.vs .b{font-size:13.5px;line-height:1.85;margin:0;padding:9px 0 0;position:relative}
.vs .a{color:var(--soft);border-bottom:1px dashed #ece5da;padding-bottom:11px}
.vs em{font-style:normal;display:block;font-size:10px;letter-spacing:.12em;color:var(--pale);margin-bottom:3px}
.vs .b em{color:var(--accent)}
.vs .same{font-size:11.5px;color:var(--pale);padding-top:9px;margin:0}
.vs .tag{display:inline-block;font-size:10.5px;color:#fff;background:var(--ph3);
border-radius:4px;padding:1px 7px;margin-left:7px;vertical-align:2px;letter-spacing:.04em}
.vs .tag.keep{background:var(--pale)}

/* ===== 横棒（1系列の大小比較） ===== */
.bars{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 18px 8px;margin:24px 0}
.bars .ttl{font-size:13px;font-weight:700;margin:0 0 3px;color:var(--ink)}
.bars .sub{font-size:11.5px;color:var(--pale);margin:0 0 14px;line-height:1.8}
.bars .row{display:grid;grid-template-columns:58px 1fr 64px;align-items:center;gap:8px;margin-bottom:10px}
.bars .row:last-of-type{margin-bottom:14px}
.bars .k{font-size:12.5px;color:var(--soft);text-align:right;letter-spacing:.02em}
.bars .row.on .k{color:var(--ink);font-weight:700}
.bars .t{height:14px}
.bars .b{height:14px;background:var(--accent);border-radius:0 4px 4px 0;display:block}
.bars .row.on .b{background:var(--ph2)}
.bars .v{font-size:12.5px;color:var(--ink);text-align:right;font-variant-numeric:tabular-nums;letter-spacing:0}
.bars .row.on .v{font-weight:700}
.bars .cap{font-size:11.5px;color:var(--pale);line-height:1.85;margin:0 0 10px}
@media(max-width:360px){.bars .row{grid-template-columns:48px 1fr 58px;gap:6px}
.bars .k,.bars .v{font-size:11.5px}}

/* ===== 営業準備チェックリストのブロック ===== */
.ckl{margin:24px 0}
.ckl .blk{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.ckl .bh{display:flex;align-items:center;gap:10px;padding:13px 15px;background:var(--accent-bg);flex-wrap:wrap}
.ckl .bh .no{flex:0 0 24px;width:24px;height:24px;border-radius:50%;color:#fff;font-size:11px;font-weight:700;
display:flex;align-items:center;justify-content:center;background:var(--ph1)}
.ckl .blk.p2 .bh .no{background:var(--ph2)} .ckl .blk.p3 .bh .no{background:var(--ph3)}
.ckl .bh .nm{font-size:14.5px;font-weight:700;flex:1 1 auto;line-height:1.5}
.ckl .bh .wh{font-size:10.5px;color:#fff;background:var(--dark);border-radius:4px;padding:3px 8px;white-space:nowrap}
.ckl ul{list-style:none;margin:0;padding:6px 15px 10px}
.ckl li{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;line-height:1.85;
padding:9px 0;color:#5e5348;border-bottom:1px solid #f2ede5}
.ckl li:last-child{border-bottom:none}
.ckl li .bx{flex:0 0 15px;width:15px;height:15px;border:1.5px solid var(--pale);border-radius:3px;margin-top:5px}
.ckl li.on{color:var(--ink);font-weight:700}
.ckl li.on .bx{border-color:var(--accent);background:var(--accent-bg)}
.ckl .cap{font-size:11.5px;color:var(--pale);line-height:1.85;margin:9px 2px 0;letter-spacing:.02em}
.ckl .blk{margin-bottom:12px}
.ckl .blk:last-of-type{margin-bottom:0}
.ckl .sub{font-size:12px;color:var(--pale);padding:8px 15px 0;line-height:1.85;margin:0}
.ckl li .mk{display:inline-block;font-size:10.5px;color:#fff;background:var(--accent);border-radius:4px;
padding:1px 6px;margin-right:7px;vertical-align:1px;font-weight:700}
.ckl .bf{padding:10px 15px 12px;border-top:1px solid #f2ede5;margin-top:2px}
.ckl .bf a{display:inline-block;margin-top:3px;font-size:12.5px;color:var(--accent);text-decoration:none;border-bottom:1px solid var(--line)}
.ckl .bf span{font-size:12.5px;color:var(--pale)}

/* ===== チェックリスト配布バナー（全ページ共通） ===== */
.gift{background:var(--dark);color:#fff;padding:28px 20px 30px}
.gift .in{max-width:660px;margin:0 auto;text-align:center}
.gift .lab{display:inline-block;font-size:10.5px;letter-spacing:.14em;color:var(--dark);
background:#fff;border-radius:20px;padding:4px 12px;margin:0 0 14px}
.gift .n{font-size:44px;font-weight:700;line-height:1;margin:0;letter-spacing:-.01em}
.gift .n em{font-style:normal;font-size:17px;font-weight:700;margin-left:4px}
.gift .h{font-size:17px;font-weight:700;line-height:1.7;margin:10px 0 0}
.gift .chips{display:flex;flex-wrap:wrap;gap:5px;justify-content:center;margin:16px 0 0}
.gift .chips span{font-size:11px;color:rgba(255,255,255,.62);border:1px solid rgba(255,255,255,.2);
border-radius:20px;padding:4px 10px;white-space:nowrap}
.gift .s{font-size:13px;line-height:1.95;color:rgba(255,255,255,.72);margin:14px 0 0}
.gift .btn{display:inline-flex;align-items:center;justify-content:center;background:var(--line-g);color:#fff;
text-decoration:none;font-size:15px;font-weight:700;border-radius:26px;padding:15px 30px;margin:20px 0 0}
.gift .fine{font-size:11.5px;color:rgba(255,255,255,.5);margin:13px 0 0;line-height:1.9}
.gift .fine a{color:rgba(255,255,255,.78)}
@media(max-width:360px){.gift .n{font-size:38px}.gift .h{font-size:15.5px}}
.packb{background:var(--accent-bg);border-top:1px solid var(--line);padding:24px 20px 26px}
.packb .in{max-width:760px;margin:0 auto;display:flex;gap:22px;align-items:center}
.packb .lft{flex:1 1 auto;min-width:0}
.packb .lab{display:inline-block;font-size:10.5px;letter-spacing:.12em;color:#fff;background:var(--accent);
border-radius:4px;padding:4px 10px;margin-bottom:9px}
.packb .ttl{font-size:19px;font-weight:700;letter-spacing:.01em;line-height:1.5;margin:0}
.packb .sub{font-size:12.5px;line-height:1.95;color:var(--soft);margin:6px 0 0}
.packb .cnt{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0 0}
.packb .cnt span{font-size:11px;color:var(--accent);background:#fff;border:1px solid var(--line);
border-radius:4px;padding:3px 8px}
.packb .rgt{flex:0 0 178px;text-align:center}
.packb .pr{margin:0;line-height:1}
.packb .pr b{font-size:34px;font-weight:700;letter-spacing:-.01em}
.packb .pr i{font-style:normal;font-size:13px;font-weight:700;margin-left:2px}
.packb .btn{display:block;background:var(--dark);color:#fff;text-decoration:none;text-align:center;
font-size:14.5px;font-weight:700;letter-spacing:.02em;padding:13px 16px;border-radius:9px;margin:11px 0 0}
.packb .fine{font-size:11px;color:var(--pale);line-height:1.85;margin:9px 0 0}
@media(max-width:660px){
.packb .in{display:block}
.packb .rgt{margin-top:16px;display:flex;align-items:center;gap:14px;text-align:left}
.packb .pr{flex:0 0 auto}
.packb .btn{flex:1 1 auto;margin:0}
.packb .fine{display:none}
.packb .ttl{font-size:17.5px}}
@media(max-width:430px){
.packb{padding:20px 16px 22px}
.packb .sub{font-size:12px}
.packb .pr b{font-size:29px}
.packb .btn{font-size:13.5px;padding:12px 12px}}

/* ===== 記事ヒーローのフェーズ表示（記事1〜9） ===== */
.hero.p1{border-top:3px solid var(--ph1)}
.hero.p2{border-top:3px solid var(--ph2)}
.hero.p3{border-top:3px solid var(--ph3)}
.phb{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;font-size:11px;
letter-spacing:.06em;color:var(--soft);background:#fff;border:1px solid var(--line);
border-radius:20px;padding:6px 12px 6px 6px;text-decoration:none}
.phb em{font-style:normal;font-size:9.5px;letter-spacing:.12em;color:#fff;border-radius:20px;padding:3px 9px}
.phb b{font-weight:700;color:var(--ink);font-size:11.5px}
.phb i{font-style:normal;font-size:12px;color:var(--pale);margin-left:1px}
.phb .k{font-size:10.5px;color:var(--pale);letter-spacing:.02em}
.phb.p1 em{background:var(--ph1)}
.phb.p2 em{background:var(--ph2)}
.phb.p3 em{background:var(--ph3)}

/* ===== ハブ：カード内の子記事リンク ===== */
.step .sub{margin:0 0 10px;padding:10px 0 2px;border-top:1px solid #f2ede5}
.step .sub .lab{display:block;font-size:10.5px;letter-spacing:.1em;color:var(--pale);margin:0 0 6px}
.step .sub a,.step .sub .off{display:flex;gap:8px;align-items:baseline;font-size:12.5px;
line-height:1.75;padding:5px 0}
.step .sub a{color:var(--ink);text-decoration:none}
.step .sub .off{color:var(--pale)}
.step .sub .no{flex:0 0 17px;width:17px;height:17px;border-radius:50%;background:var(--accent-bg);
color:var(--accent);font-size:9.5px;font-weight:700;display:inline-flex;align-items:center;
justify-content:center;transform:translateY(2px)}
.step .sub .off .no{background:#f4f0ea;color:var(--pale)}
.step .sub a .t{border-bottom:1px solid var(--line)}

/* ===== ハブ：この連載の全記事 ===== */
.idx{background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px 18px 10px;margin:24px 0}
.idx .grp{padding:14px 0 4px;border-bottom:1px solid #f2ede5}
.idx .grp:last-child{border-bottom:none}
.idx .gh{display:flex;gap:9px;align-items:center;margin:0 0 4px}
.idx .gh .no{flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:var(--dark);
color:#fff;font-size:10px;display:flex;align-items:center;justify-content:center}
.idx .gh a{font-size:13.5px;font-weight:700;color:var(--ink);text-decoration:none;
border-bottom:1px solid var(--line)}
.idx ul{list-style:none;margin:4px 0;padding:0 0 0 31px}
.idx li{font-size:12.5px;line-height:1.8;padding:4px 0;color:var(--pale)}
.idx li::before{content:"└ ";color:var(--pale)}
.idx li a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line)}

/* ===== 計画と実績（ターゲット付き横棒） ===== */
.blt{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px 18px 12px;margin:24px 0}
.blt .ttl{font-size:13px;font-weight:700;margin:0 0 4px;color:var(--ink)}
.blt .lg{display:flex;gap:16px;align-items:center;font-size:11.5px;color:var(--soft);
margin:0 0 15px;flex-wrap:wrap}
.blt .lg i{font-style:normal;display:inline-flex;align-items:center;gap:6px}
.blt .lg .sw{width:15px;height:10px;background:var(--accent);border-radius:0 3px 3px 0;display:inline-block}
.blt .lg .mkr{width:2px;height:14px;background:var(--dark);display:inline-block}
.blt .row{display:grid;grid-template-columns:32px 1fr 96px;align-items:center;gap:8px;margin-bottom:9px}
.blt .k{font-size:12px;color:var(--soft);text-align:right}
.blt .t{position:relative;height:18px}
.blt .b{position:absolute;left:0;top:2px;height:14px;background:var(--accent);border-radius:0 4px 4px 0}
.blt .m{position:absolute;top:0;width:2px;height:18px;background:var(--dark);
box-shadow:-2px 0 0 #fff,2px 0 0 #fff}
.blt .v{font-size:12.5px;text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}
.blt .v em{font-style:normal;color:var(--pale);font-size:11px;margin-left:5px}
.blt .cap{font-size:11.5px;color:var(--pale);line-height:1.85;margin:10px 2px 0}
@media(max-width:360px){.blt .row{grid-template-columns:28px 1fr 84px;gap:6px}
.blt .k,.blt .v{font-size:11.5px}}

/* ===== 計算の流れ ===== */
.flw{background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px 18px 14px;margin:24px 0}
.flw .grp{padding:14px 0 6px;border-bottom:1px solid #f2ede5}
.flw .grp:last-of-type{border-bottom:none}
.flw .gh{font-size:13px;font-weight:700;color:var(--ink);margin:0 0 6px}
.flw .gh span{font-size:11px;font-weight:400;color:var(--pale);margin-left:7px}
.flw ul{list-style:none;margin:0;padding:0}
.flw li{font-size:12.5px;line-height:1.9;color:#5e5348;padding:3px 0 3px 14px;position:relative}
.flw li::before{content:"・";position:absolute;left:0;color:var(--pale)}
.flw .eq{background:var(--accent-bg);border-radius:8px;padding:10px 13px;margin:8px 0 2px;
font-size:12.5px;line-height:1.8;color:var(--ink)}
.flw .eq .s{color:var(--soft)}
.flw .res{display:flex;align-items:baseline;gap:9px;font-size:14px;font-weight:700;
color:var(--ink);margin:2px 0}
.flw .res em{font-style:normal;font-size:11px;font-weight:400;color:var(--pale)}
.flw .op{font-size:12px;color:var(--pale);padding:2px 0 2px 14px;margin:0}
.flw .cap{font-size:11.5px;color:var(--pale);line-height:1.85;margin:12px 2px 0}

/* ===== サポートページ（k13） ===== */
.lphero{background:var(--dark);color:#fff}
.lphero .tx{max-width:660px;margin:0 auto;padding:38px 20px 30px;text-align:center}
.lphero .lab{display:inline-block;font-size:11px;letter-spacing:.2em;color:#e2d9cd;
border:1px solid rgba(226,217,205,.38);border-radius:20px;padding:5px 15px 5px 17px;margin:0 0 20px}
.lphero h1{font-size:26px;line-height:1.6;font-weight:700;margin:0 0 14px;color:#fff;letter-spacing:.01em}
.lphero .sub{font-size:14px;line-height:1.95;color:#d4cabe;margin:0 0 22px}
.lphero .btn{display:inline-block;background:var(--line-g);color:#fff;text-decoration:none;
font-weight:700;font-size:15px;padding:14px 28px;border-radius:30px;line-height:1.5}
.lphero .fine{font-size:11.5px;color:#a89c8e;margin:16px 0 0;line-height:1.85}
.lphero .pic{max-width:900px;margin:0 auto;padding:0 20px 34px}
.lphero .pic img{width:100%;height:auto;aspect-ratio:5/2;object-fit:cover;object-position:center 56%;border-radius:12px}
@media(max-width:400px){.lphero h1{font-size:21px}.lphero .tx{padding:30px 20px 28px}}

.slot{background:var(--accent-bg);border-radius:11px;padding:15px 18px;margin:26px 0;text-align:center}
.slot b{display:block;font-size:15.5px;font-weight:700;margin-bottom:3px;line-height:1.75}
.slot span{font-size:12.5px;color:var(--soft);line-height:1.85;display:block}

.plan{margin:24px 0}
.plan .p{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 18px 16px;margin-bottom:14px}
.plan .p:last-child{margin-bottom:0}
.plan .p.key{border-color:var(--accent)}
.plan .no{display:inline-block;font-size:10.5px;letter-spacing:.12em;color:#fff;background:var(--accent);
border-radius:20px;padding:3px 11px;margin-bottom:11px}
.plan .p.free .no{background:var(--soft)}
.plan h3{margin:0 0 4px;font-size:16px}
.plan .pr{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;
margin:10px 0 13px;padding-bottom:13px;border-bottom:1px solid #f0ebe3}
.plan .pr b{font-size:21px;font-weight:700;letter-spacing:.01em;line-height:1.3}
.plan .pr i{font-style:normal;font-size:12.5px;color:var(--soft)}
.plan .pr .tot{font-size:12.5px;color:var(--pale)}
.plan ul{margin:0 0 12px;padding-left:1.15em}
.plan li{font-size:13.5px;line-height:1.95;margin-bottom:3px}
.plan .inc{font-size:12.5px;color:var(--soft);margin:0 0 4px;line-height:1.9}

.books{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:24px 0}
.books .bk img{border:1px solid var(--line);border-radius:4px;width:100%}
.books .bk b{display:block;font-size:13.5px;color:var(--ink);margin:10px 0 2px;line-height:1.7}
.books .bk p{font-size:12.5px;line-height:1.85;color:var(--soft);margin:0}
@media(max-width:400px){.books{gap:12px}}

.biz{background:#f6f3ee;border-radius:11px;padding:16px 18px;margin:30px 0 0}
.biz .h{font-size:12px;letter-spacing:.1em;color:var(--pale);margin:0 0 10px}
.biz dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:3px 14px;
font-size:12.5px;line-height:1.9;color:var(--soft)}
.biz dt{font-weight:700;color:var(--ink);white-space:nowrap}
.biz dd{margin:0}
@media(max-width:430px){.biz dl{grid-template-columns:1fr;gap:0}.biz dt{margin-top:9px}}
.mrev button{font:inherit;font-size:12.5px;color:var(--accent);background:#fff;border:1px solid var(--line);
border-radius:6px;padding:4px 11px;cursor:pointer;letter-spacing:.02em}
.mrev button:hover{background:var(--accent-bg)}
.biz .mn{display:block;font-size:11.5px;color:var(--pale);margin-top:4px;line-height:1.8}
.mrev a{color:var(--accent)}

.consultfoot .cta .more{margin:16px 0 0;font-size:12.5px;line-height:1.8}
.consultfoot .cta .more a{display:inline;width:auto;max-width:none;padding:0 0 2px;border:0;border-radius:0;
color:#d9cfc2;font-size:12.5px;font-weight:400;text-decoration:none;border-bottom:1px solid rgba(217,207,194,.45)}

/* ===== 実物を見せる外部リンク ===== */
.live{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;
padding:14px 16px;margin:26px 0;text-decoration:none;color:var(--ink)}
.live .ic{flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:var(--accent-bg);
display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--accent)}
.live .tx{flex:1 1 auto;min-width:0}
.live em{font-style:normal;display:block;font-size:10.5px;letter-spacing:.1em;color:var(--pale);margin-bottom:2px}
.live b{font-size:13.5px;line-height:1.65;display:block}
.live span{display:block;font-size:11.5px;line-height:1.75;color:var(--soft);margin-top:5px}

/* ===== 購入ボタン（ダウンロード商品） ===== */
.buy{display:block;background:var(--dark);color:#fff;text-decoration:none;text-align:center;
font-size:15px;font-weight:700;letter-spacing:.02em;padding:15px 20px;border-radius:10px;margin:18px 0 0}
.lphero .btn.pay{background:#fff;color:var(--dark)}
.buy em{font-style:normal;display:block;font-size:11.5px;font-weight:400;color:rgba(255,255,255,.72);margin-top:4px}

/* ===== MEO（/meo/ だけ。上は consulting/ の記事のCSSをそのまま写したもの） ===== */
.chead .in{max-width:660px}
.hero{padding-bottom:34px}
.chk .ic .no{font-size:13px;color:var(--accent);font-weight:700;line-height:1}
/* 順位の表 */
.rk{margin:24px 0}
.rk table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;font-size:14px;line-height:1.6}
.rk th,.rk td{padding:11px 8px;text-align:center;border-bottom:1px solid #f0ebe3}
.rk tbody tr:last-child th,.rk tbody tr:last-child td{border-bottom:none}
.rk thead th{font-size:12px;font-weight:700;color:var(--soft);background:#f6f3ee;letter-spacing:.02em}
.rk tbody th{text-align:left;font-weight:700;padding-left:14px;white-space:nowrap}
.rk small{display:block;font-size:10.5px;font-weight:400;color:var(--pale);letter-spacing:0}
.rk td b{font-size:17px;font-variant-numeric:tabular-nums}
.rk td.t20{background:#e7efe2;color:#2e5a2b}
.rk td.dp{background:#f8eedc;color:#7f5418}
.rk td.na{color:var(--pale);font-size:13px}
.rk td.up{font-size:12.5px;color:var(--soft)}
.rk .lg{font-size:11.5px;color:var(--soft);margin:10px 2px 0;line-height:1.8}
.rk .lg .k{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-1px;margin:0 5px 0 0}
.rk .lg .k+.k,.rk .lg .k:not(:first-child){margin-left:14px}
.rk .lg .k.t20{background:#e7efe2;border:1px solid #c9dcbf}
.rk .lg .k.dp{background:#f8eedc;border:1px solid #ecd6ae}
.rk figcaption{font-size:13px;line-height:1.95;color:var(--soft);margin:6px 2px 0}
@media(max-width:400px){.rk table{font-size:13px}.rk th,.rk td{padding:10px 5px}.rk tbody th{padding-left:10px}.rk td b{font-size:16px}}
/* 店と駅の図 */
.mapfig{margin:26px 0;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 12px 12px}
.mapfig svg{display:block;width:100%;height:auto}
.mapfig figcaption{font-size:13px;line-height:1.95;color:var(--soft);margin:8px 4px 0}
/* 案内ボックス（順位チェック） */
.mcta{background:var(--dark);border-radius:14px;padding:30px 22px 28px;text-align:center;margin:44px 0 0;color:#fff}
.mcta .h{font-size:18px;font-weight:700;margin:0 0 8px;line-height:1.7}
.mcta .s{font-size:13.5px;color:#c9c0b6;margin:0 0 20px;line-height:1.9}
.mcta .mbtn{display:block;max-width:300px;margin:0 auto;background:#fff;color:var(--dark);text-decoration:none;border-radius:30px;padding:13px 0;font-size:14.5px;font-weight:700}
/* 一覧のカード */
.mcards{display:grid;gap:14px;margin:4px 0 30px}
.mcard{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 20px 16px;text-decoration:none;color:var(--ink)}
.mcard .no{display:inline-block;font-size:11px;letter-spacing:.12em;color:#fff;background:var(--accent);border-radius:20px;padding:2px 12px;margin-bottom:10px}
.mcard b{display:block;font-size:16px;line-height:1.7;margin-bottom:8px}
.mcard .d{display:block;font-size:13.5px;line-height:1.9;color:#5e5348}
.mcard .go{display:block;font-size:13px;font-weight:700;color:var(--accent);margin-top:10px;text-align:right}

/* ===== AIO（/aio/ だけ）サロンAI診断（aio.calm-tokyo.co.jp）の配色・フォントにそろえる。上は meo から写したまま ===== */
:root{
--ink:#15171F; --soft:#5A5648; --pale:#8A8576; --line:#E5E0D5; --bg:#FBF9F4;
--accent:#1C2D5E; --accent-bg:#FFFFFF; --dark:#1C2D5E;
--orange:#E0702F; --red:#B23A28;
}
body{font-family:"Noto Sans JP",-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif}
.hero h1,h2,h3,.mcard b{font-family:"Shippori Mincho B1",serif}
.hero h1{font-weight:800}
h2,h3,.mcard b{font-weight:700;color:var(--accent)}
/* ヘッダー：ロゴ＋「無料で診断する」だけ */
.chead{background:rgba(251,249,244,.94)}
.chead .aiologo{display:flex;align-items:center;gap:9px;min-width:0;text-decoration:none;color:var(--ink)}
.chead .aiologo svg{flex:0 0 auto}
.chead .aiologo span{font-family:"Shippori Mincho B1",serif;font-size:15px;font-weight:800;line-height:1.3;white-space:nowrap}
.chead .tcta{flex:0 0 auto;text-decoration:none;background:var(--orange);color:#fff;border-radius:8px;padding:8px 14px;font-size:12.5px;font-weight:700;letter-spacing:.02em;white-space:nowrap;line-height:1.4}
@media(max-width:430px){.chead .aiologo{gap:7px}.chead .aiologo svg{width:22px;height:22px}.chead .aiologo span{font-size:13px}.chead .tcta{font-size:11.5px;padding:7px 10px}}
@media(max-width:340px){.chead .aiologo span{font-size:12px}}
/* ヒーロー：ツールと同じ紺の面 */
.hero{background:var(--accent);color:#fff}
.hero .brand{color:rgba(255,255,255,.7)}
.hero .sub{color:rgba(255,255,255,.82)}
/* 直書きの茶系を置きかえ */
.mcard .d,.faq .a,.consultfoot .bio{color:var(--soft)}
.toc li{border-top-color:var(--line)}
.rk th,.rk td{border-bottom-color:var(--line)}
.rk thead th{background:var(--bg)}
.note{background:#fff;border:1px solid var(--line)}
.consultfoot{border-top:1px solid var(--line)}
.cta p.s,.mcta .s{color:rgba(255,255,255,.78)}
/* 押してほしい場所は橙 */
.mcta .mbtn{background:var(--orange);color:#fff;border-radius:8px}

/* ===== 一覧（/aio/ のトップ）。見本 aio-blog-index.html（2026-10-18）を写したもの ===== */
.aioix .chead .in{max-width:1080px}
@media(min-width:431px){.aioix .chead .in{padding:0 24px}}
.ixw{max-width:1080px;margin:0 auto;padding:0 24px}
.ixhero{background:var(--accent);color:#fff}
.ixhero .ixw{display:flex;gap:40px;align-items:flex-end;padding-top:44px;padding-bottom:46px}
.ixhero .tx{flex:1 1 0;min-width:0}
.ixhero .br{margin:0;font-size:11.5px;font-weight:700;color:#8FA0C8;letter-spacing:.14em;line-height:1.6}
.ixhero h1{margin:15px 0 0;font-family:"Shippori Mincho B1",serif;font-size:36px;font-weight:800;line-height:1.45}
.ixhero .ld{margin:17px 0 0;max-width:480px;font-size:14px;line-height:1.95;color:#C3CCE2}
.ixhero .ld strong{color:#fff}
.ixstats{flex:0 0 auto;display:flex;gap:11px}
.ixstat{background:rgba(255,255,255,.09);border-radius:11px;padding:15px 19px;text-align:center;min-width:108px}
.ixstat b{display:block;font-family:"Shippori Mincho B1",serif;font-size:25px;font-weight:800;line-height:1}
.ixstat span{display:block;margin-top:6px;font-size:10.5px;color:#8FA0C8;line-height:1.6}
.ixstat.hl{background:rgba(224,112,47,.22);border:1px solid rgba(224,112,47,.5)}
.ixstat.hl b{color:#F7B183}
.ixstat.hl span{color:#F0C3A4}
.ixchips{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding-top:24px}
.ixchips .so{margin-left:auto;font-size:12px;color:#86806F}
.chip{display:inline-block;font-size:11.5px;font-weight:700;border-radius:20px;padding:6px 14px;line-height:1.5;white-space:nowrap}
.chip.on{background:var(--accent);color:#fff}
.chip.off{background:#fff;border:1px solid var(--line);color:var(--soft)}
.chip.data{background:#FDF2EA;color:#A8541F}
.chip.basic{background:#F0F2F7;color:var(--accent)}
.chip.how{background:#E8F2EC;color:#0F6B57}
/* アイキャッチ（画像ではなくCSS） */
.ec{position:relative;background:var(--accent);display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;color:#fff}
.ec::after{content:"";position:absolute;right:-40px;bottom:-40px;width:160px;height:160px;border-radius:50%;background:rgba(224,112,47,.16)}
.ec .in{position:relative;z-index:1;text-align:center}
.ec .lb{font-size:11px;font-weight:700;color:#8FA0C8;letter-spacing:.14em}
.ec .num{display:flex;align-items:baseline;justify-content:center;gap:3px}
.ec .num b{font-family:"Shippori Mincho B1",serif;font-weight:800;line-height:1;color:#fff}
.ec .num i{font-style:normal;font-weight:800;color:#F7B183}
.ec .cp{font-size:12.5px;color:#C3CCE2;line-height:1.6}
.ec .cond{margin-top:6px;font-size:10.5px;color:#8FA0C8;line-height:1.6}
.ec .ecbar{margin:16px auto 0;display:flex;flex-direction:column;gap:6px;width:210px;max-width:100%}
.ec .ecbar span{display:block;height:7px;background:rgba(255,255,255,.14);border-radius:4px;overflow:hidden}
.ec .ecbar span i{display:block;height:100%}
.ec .wd{display:flex;gap:7px;justify-content:center}
.ec .wd span{font-family:"Shippori Mincho B1",serif;font-size:27px;font-weight:800;line-height:1.3;color:#fff;background:rgba(255,255,255,.12);border-radius:9px;padding:9px 15px}
.ec .wd span.o{color:#F7B183;background:rgba(224,112,47,.18)}
.ec .sq{margin-top:11px;display:flex;gap:4px;justify-content:center}
.ec .sq span{width:11px;height:11px;border-radius:3px;background:rgba(255,255,255,.22)}
.ec .sq span.o{background:var(--orange)}
/* 1本目（大きく） */
.ixfeat{display:flex;align-items:stretch;margin-top:18px;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;text-decoration:none;color:var(--ink)}
.ixfeat .ec{flex:0 0 360px;min-height:236px;padding:30px}
.ixfeat .ec .num{margin-top:11px}
.ixfeat .ec .num b{font-size:62px}
.ixfeat .ec .num i{font-size:22px}
.ixfeat .ec .k{margin-top:10px;font-size:13px;font-weight:700;color:#fff}
.ixfeat .bd{flex:1 1 auto;min-width:0;padding:28px 32px;display:flex;flex-direction:column;justify-content:center}
.ixfeat h2{margin:15px 0 0;padding:0;border:0;font-size:25px;font-weight:800;line-height:1.55;color:var(--ink)}
.ixfeat p{margin:13px 0 0;font-size:13.5px;line-height:1.95;color:var(--soft)}
.ixmeta{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.ixmeta span{font-size:12px;color:#86806F}
.ixmeta b{font-size:13.5px;font-weight:700;color:var(--accent);white-space:nowrap}
/* 残り（横並び） */
.ixrow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}
.ixcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;text-decoration:none;color:var(--ink)}
.ixcard .ec{height:168px;padding:24px}
.ixcard .ec .num b{font-size:50px}
.ixcard .ec .num i{font-size:19px}
.ixcard .ec .wd+.cp{margin-top:13px}
.ixcard .ec .num+.cp{margin-top:9px}
.ixcard .bd{padding:20px 24px 22px;display:flex;flex-direction:column;flex:1 1 auto}
.ixcard .chip{align-self:flex-start}
.ixcard h3{margin:12px 0 0;font-size:18px;font-weight:800;line-height:1.6;color:var(--ink)}
.ixcard p{margin:10px 0 0;font-size:12.5px;line-height:1.9;color:var(--soft);flex:1 1 auto}
.ixcard .ixmeta{margin-top:16px}
.ixcard .ixmeta span{font-size:11.5px}
.ixcard .ixmeta b{font-size:13px}
.ixsoon{background:var(--bg);border:1px dashed #D5CFC0;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 24px;text-align:center}
.ixsoon .t{margin-top:13px;font-size:13.5px;font-weight:700;color:#86806F}
.ixsoon p{margin:9px 0 0;font-size:12px;line-height:1.85;color:#9C978E}
/* 診断への案内 */
.ixcta{margin-top:36px;background:#fff;border:2px solid var(--orange);border-radius:14px;padding:30px 34px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.ixcta .h{margin:0;font-family:"Shippori Mincho B1",serif;font-size:22px;font-weight:800;line-height:1.55}
.ixcta .s{margin:11px 0 0;font-size:13px;line-height:1.9;color:var(--soft)}
.ixcta .btn{flex:0 0 auto;background:var(--orange);color:#fff;border-radius:11px;padding:17px 40px;font-family:"Shippori Mincho B1",serif;font-size:16px;font-weight:800;white-space:nowrap;text-decoration:none;text-align:center}
.ixend{padding-bottom:4px}
.ixend .discl{margin:28px 0 0}
/* ヒーロー右側：数字の箱と、調べているAIの注記 */
.ixside{flex:0 0 auto;width:346px}
.ixai{margin-top:12px;font-size:11.5px;line-height:1.8;color:#8FA0C8}
.ixai p{margin:0}
.ixai .h{margin:0 0 2px;font-weight:700;color:#C3CCE2}
/* 幅が足りないとき */
@media(max-width:900px){
.ixhero .ixw{flex-direction:column;align-items:stretch;gap:26px}
.ixside{width:auto;max-width:480px}
.ixrow{grid-template-columns:repeat(2,minmax(0,1fr))}
.ixsoon{grid-column:1/-1}}
@media(max-width:760px){
.ixfeat{flex-direction:column}
.ixfeat .ec{flex:0 0 auto;min-height:210px;padding:26px 20px}
.ixfeat .bd{padding:22px 20px 22px}
.ixfeat h2{font-size:21px}
.ixcta{flex-direction:column;align-items:stretch;gap:20px;padding:26px 22px}
.ixcta .btn{padding:15px 20px}}
@media(max-width:600px){
.ixw{padding:0 20px}
.ixhero .ixw{padding-top:34px;padding-bottom:36px}
.ixhero h1{font-size:28px}
.ixstats{gap:8px}
.ixstat{flex:1 1 0;min-width:0;padding:13px 6px}
.ixrow{grid-template-columns:minmax(0,1fr)}
.ixcta .h{font-size:19px}}
@media(max-width:430px){
.ixcard .ec{padding:20px 14px}
.ec .wd{gap:6px}
.ec .wd span{font-size:22px;padding:8px 11px}
.ixfeat .ec .num b{font-size:54px}}

/* 記事4：見出しの列が長い表は折り返す（2026-10-21） */
.rk.wr tbody th{white-space:normal;min-width:7em}
