/* =====================================================================
   医療法人化 節税シミュレーター 専用スタイル
   トップページ（index.html）と専用ページ（simulation.html）の両方から読み込む
   ※ 配色・書体の変数は各ページの :root / blog.css に定義済みのものを使用
   ===================================================================== */

/* ---- シミュレーター専用 ---- */
.sim-head{padding:50px 0 0}
.sim-head h1{font-size:2.05rem;margin:0 0 .5em;font-family:var(--mincho)}
.sim-head p{font-size:.97rem;color:var(--ink-soft);max-width:760px;margin:0 0 1em}
@media(max-width:640px){.sim-head h1{font-size:1.5rem}}

.sim-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:38px;align-items:start}
@media(max-width:900px){.sim-grid{grid-template-columns:1fr}}

.panel{border:1px solid var(--line);background:var(--white)}
.panel > h2{
  font-size:1.06rem;margin:0;padding:18px 24px;background:var(--paper);
  border-bottom:1px solid var(--line);font-family:var(--mincho);
}
.panel-body{padding:24px}
.panel.result{border-top:4px solid var(--ai);position:sticky;top:78px}
@media(max-width:900px){.panel.result{position:static}}

.f{display:block;margin-bottom:18px}
.f > span.lbl{display:block;font-size:.86rem;margin-bottom:6px;color:var(--ink)}
.f > span.hint{display:block;font-size:.76rem;color:var(--ink-soft);line-height:1.7;margin-top:5px}
.f input[type=number],.f select{
  width:100%;padding:11px 13px;border:1px solid var(--line-2);background:#fff;
  font-family:var(--gothic);font-size:1rem;color:var(--ink);text-align:right;
}
.f select{text-align:left}
.f .unit{display:flex;align-items:center;gap:8px}
.f .unit span{font-size:.86rem;color:var(--ink-soft);white-space:nowrap}
.f input:focus,.f select:focus{outline:2px solid var(--ai);outline-offset:-2px}

.sub-head{
  font-family:var(--mincho);font-size:.95rem;margin:26px 0 14px;padding-bottom:7px;
  border-bottom:1px solid var(--line);color:var(--ai);
}
.sub-head:first-child{margin-top:0}

details.adv{border:1px solid var(--line);margin-top:8px}
details.adv summary{cursor:pointer;padding:12px 16px;font-size:.86rem;background:var(--paper);list-style:none;position:relative}
details.adv summary::-webkit-details-marker{display:none}
details.adv summary::after{content:"＋";position:absolute;right:16px;color:var(--ai)}
details.adv[open] summary::after{content:"−"}
details.adv .adv-body{padding:20px 16px 6px}

/* 結果 */
.headline{background:var(--ai);color:#fff;padding:28px 24px;text-align:center}
.headline .cap{font-size:.8rem;letter-spacing:.1em;color:#a9c8e0;margin:0 0 8px}
.headline .num{font-family:var(--mincho);font-size:2.6rem;line-height:1.2;margin:0}
.headline .num small{font-size:1rem;margin-left:4px}
.headline .sub{font-size:.82rem;color:#cfe0ed;margin:10px 0 0;line-height:1.7}
.headline.minus{background:#7a2f1f}
.headline.minus .cap{color:#f0c4b8}
.headline.minus .sub{color:#f0d3ca}

table.cmp{width:100%;border-collapse:collapse;font-size:.88rem}
table.cmp th,table.cmp td{border-bottom:1px solid var(--line);padding:11px 10px;text-align:right}
table.cmp th{text-align:left;font-weight:400;color:var(--ink-soft);font-family:var(--gothic)}
table.cmp thead th{text-align:right;font-size:.8rem;color:var(--ink);border-bottom:1px solid var(--line-2);padding-bottom:9px}
table.cmp thead th:first-child{text-align:left}
table.cmp tr.total th,table.cmp tr.total td{border-top:2px solid var(--ai);border-bottom:none;font-weight:600;padding-top:14px;font-size:.95rem}
table.cmp td.diff{font-family:var(--mincho)}
.up{color:#1f7a4d}.down{color:var(--shu)}
.sec-label{font-size:.78rem;color:var(--ink-soft);background:var(--paper);padding:7px 10px;letter-spacing:.06em}

.mini{font-size:.8rem;color:var(--ink-soft);line-height:1.8;margin:16px 0 0}
.warnbox{border-left:3px solid var(--shu);background:var(--paper);padding:18px 20px;margin:20px 0 0;font-size:.85rem;line-height:1.85}
.warnbox b{color:var(--ink)}
.years{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:20px}
.years div{background:var(--white);padding:16px 14px;text-align:center}
.years .k{font-size:.74rem;color:var(--ink-soft);display:block;margin-bottom:5px}
.years .v{font-family:var(--mincho);font-size:1.25rem;color:var(--ai)}
