/* Mokomi（モコミ）— 法務ページ共有スタイル（LP v2 のデザイン言語に準拠） */
:root{
  --ink:#101216; --ink2:#171923; --muted:#687182;
  --line:rgba(16,18,22,.10);
  --red:#EA4335; --red2:#D93025; --gold:#D8A642; --gold2:#FFE7A6;
  --green:#24B36B;
  --shadow:0 26px 80px rgba(16,18,22,.16); --shadow2:0 18px 44px rgba(16,18,22,.09);
  --max:1180px; --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Noto Sans JP",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  color:var(--ink); line-height:1.85;
  background:
    radial-gradient(circle at 88% 8%, rgba(234,67,53,.18), transparent 32%),
    radial-gradient(circle at 8% 0%, rgba(216,166,66,.22), transparent 28%),
    linear-gradient(180deg,#fffaf3 0%,#fff 34%,#fbf8f3 100%);
  overflow-x:hidden;
}
body::before{content:"";position:fixed;inset:0;z-index:-3;background-image:linear-gradient(rgba(16,18,22,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(16,18,22,.035) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.2) 55%,transparent 100%)}
a{color:var(--red2);text-decoration:none;text-underline-offset:3px}
a:hover{text-decoration:underline}
img{display:block;max-width:100%;height:auto}
.noise{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.38;background-image:radial-gradient(rgba(16,18,22,.08) .7px,transparent .7px);background-size:18px 18px;mask-image:linear-gradient(180deg,#000 0%,transparent 70%)}
.container,.wrap{width:min(var(--max),calc(100% - 42px));margin:0 auto}
.wrap-narrow{width:min(760px,calc(100% - 42px));margin:0 auto}

/* header（v2と統一） */
header{position:sticky;top:0;z-index:60;background:rgba(255,250,244,.72);border-bottom:1px solid rgba(16,18,22,.08);backdrop-filter:blur(20px)}
.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:-.03em;color:var(--ink)}
.brand-mark{width:44px;height:44px;border-radius:16px;background:linear-gradient(135deg,#0c0e13,#292a31);box-shadow:0 16px 32px rgba(16,18,22,.16);display:grid;place-items:center;color:#fff;position:relative;overflow:hidden;flex:0 0 auto}
.brand-mark::before{content:"";width:18px;height:18px;border-radius:50%;background:var(--red);position:absolute;right:-4px;top:-4px;box-shadow:0 0 0 7px rgba(255,255,255,.86)}
.brand-mark span{position:relative;font-family:Inter,sans-serif;font-size:17px}
.brand small{display:block;font-family:Inter,sans-serif;font-size:11px;letter-spacing:.08em;color:var(--muted);line-height:1;text-transform:uppercase}
.brand strong{display:block;font-size:17px;line-height:1.15}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 18px;border-radius:999px;font-weight:900;border:1px solid transparent;transition:.22s ease;white-space:nowrap;cursor:pointer;color:var(--ink)}
.btn:hover{transform:translateY(-2px);text-decoration:none}
.btn-ghost{background:rgba(255,255,255,.72);border-color:var(--line);box-shadow:0 12px 30px rgba(16,18,22,.06)}

/* doc（法務本文） */
.doc{padding:54px 0 0}
.doc h1{font-size:clamp(28px,4.2vw,46px);font-weight:900;letter-spacing:-.045em;margin:0 0 8px}
.doc .meta{color:var(--muted);font-size:13px;margin:0 0 34px;font-weight:700}
.doc .lead{color:#495162;font-size:16px;font-weight:600;margin:0 0 8px}
.doc h2{font-size:20px;font-weight:900;letter-spacing:-.02em;margin:38px 0 12px;padding-top:22px;border-top:1px solid var(--line)}
.doc h3{font-size:16px;font-weight:800;margin:20px 0 6px}
.doc p,.doc li{font-size:15px;color:#2a2d34}
.doc ul,.doc ol{margin:8px 0 8px 1.3em;padding:0}
.doc li{margin-bottom:7px}
.doc strong{font-weight:900}

/* footer（v2と統一） */
footer{border-top:1px solid rgba(16,18,22,.08);padding:28px 0 40px;color:#737b88;font-size:12px;font-weight:700;margin-top:64px}
.footer-row{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.foot-links{display:flex;gap:18px;flex-wrap:wrap}
footer a{color:#737b88}
footer a:hover{color:var(--red2)}

@media(max-width:640px){
  .nav{height:64px}
  .footer-row{flex-direction:column}
}
