/* 法務ページ共通（home.habis.co.jp /legal/） 2026-10-04 */
:root{
  --ink:#061229; --navy:#0b1e3a; --lift:#122c52; --gold:#e8be60; --gold2:#ffd980;
  --ivory:#f4f1ea; --slate:#9fb1cc; --line:rgba(232,190,96,.28);
  --paper:#fbfaf7; --text:#1d2430; --muted:#5d6879; --rule:#e2ddd1;
}
*,*::before,*::after{box-sizing:border-box}
body{
  background:var(--ink); color:var(--text); margin:0;
  font-family:"Noto Sans JP",system-ui,sans-serif; font-feature-settings:"palt" 1;
  -webkit-font-smoothing:antialiased; line-height:1.95;
}
a{color:#0b4ea2}
img{display:block;max-width:100%}

/* ヘッダー */
.lnav{align-items:center;background:rgba(6,18,41,.92);border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:.8rem 1.2rem;justify-content:space-between;padding:.7rem 1.1rem}
.lnav__brand{align-items:center;color:var(--ivory);display:flex;gap:.65rem;text-decoration:none}
.lnav__mark{border:1px solid var(--line);border-radius:10px;height:34px;width:34px}
.lnav__name{font-family:"Zen Kaku Gothic New",sans-serif;font-size:.9rem;font-weight:700;letter-spacing:.06em}
.lnav__sub{color:var(--slate);display:block;font-size:.65rem;letter-spacing:.16em}
.lnav__links{display:flex;flex-wrap:wrap;gap:.9rem}
.lnav__link{color:var(--slate);font-size:.8rem;text-decoration:none}
.lnav__link:hover,.lnav__link[aria-current="page"]{color:var(--gold)}

/* 本文シート */
.sheet{background:var(--paper);border-radius:14px;margin:1.6rem auto 2.4rem;max-width:860px;padding:clamp(1.4rem,4vw,3rem)}
.sheet__eyebrow{color:#8a6b1f;font-size:.72rem;font-weight:700;letter-spacing:.3em;margin:0 0 .6rem}
h1{font-family:"Zen Kaku Gothic New",sans-serif;font-size:clamp(1.45rem,3.4vw,2.1rem);font-weight:900;line-height:1.4;margin:0 0 1.2rem}
h2{border-left:4px solid var(--gold);font-family:"Zen Kaku Gothic New",sans-serif;font-size:1.08rem;font-weight:700;line-height:1.6;margin:2.4rem 0 .9rem;padding-left:.7rem}
h3{font-size:.98rem;font-weight:700;margin:1.6rem 0 .5rem}
p{margin:0 0 1rem}
.lede{color:var(--muted);font-size:.93rem;margin-bottom:2rem}
ol,ul{margin:0 0 1rem;padding-left:1.4rem}
li{margin:0 0 .4rem}
ol.kanjo{list-style:decimal;padding-left:1.5rem}
.note{background:#fff6e0;border:1px solid #efe0b8;border-radius:10px;font-size:.9rem;margin:1.2rem 0;padding:.9rem 1.1rem}
.small{color:var(--muted);font-size:.85rem}

/* 定義表 */
.tbl{border-collapse:collapse;font-size:.92rem;margin:0 0 1.4rem;width:100%}
.tbl th,.tbl td{border-bottom:1px solid var(--rule);padding:.7rem .6rem;text-align:left;vertical-align:top}
.tbl th{color:#42403a;font-weight:700;white-space:nowrap;width:12.5rem}
.tbl--price th{white-space:normal;width:auto}
.tbl--price thead th{background:#f1ece0;border-bottom:1px solid var(--rule)}
@media (max-width:560px){
  .tbl th,.tbl td{display:block;border-bottom:0;padding:.2rem 0}
  .tbl th{color:#8a6b1f;font-size:.8rem;width:auto}
  .tbl td{border-bottom:1px solid var(--rule);padding-bottom:.8rem}
  .tbl--price th,.tbl--price td{display:table-cell;border-bottom:1px solid var(--rule);padding:.6rem .5rem}
}

/* 目次 */
.toc{background:#f1ece0;border-radius:10px;font-size:.9rem;margin:0 0 2rem;padding:1rem 1.2rem}
.toc ul{list-style:none;margin:0;padding:0}
.toc li{margin:.25rem 0}

.meta{border-top:1px solid var(--rule);color:var(--muted);font-size:.85rem;margin-top:2.6rem;padding-top:1.2rem}
.lfoot{color:var(--slate);font-size:.8rem;line-height:1.9;padding:0 1.1rem 2.6rem;text-align:center}
.lfoot a{color:var(--gold)}
