/* 下層ページ共通スタイル（index.html のトークンに合わせています） */
@font-face{font-family:AdjustedYuGothic;font-weight:400;src:local("Yu Gothic Medium"),local("YuGothic-Medium");}
@font-face{font-family:AdjustedYuGothic;font-weight:700;src:local("Yu Gothic Bold"),local("YuGothic-Bold");}

:root{
  --bg:#f8f7f6; --surface:#ffffff; --over:#f2f1f0;
  --ink:#23221e; --sub:#706d65; --faint:#aaa69f;
  --border:#d6d3d0; --border-l:#e7e4e1;
  --primary:#0077c7; --primary-d:#0071c1; --primary-t:#eaf3fa;
  --teal:#00c4cc;
  --maxw:800px;
}
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
body{
  background:var(--bg);color:var(--ink);
  font-family:AdjustedYuGothic,"Yu Gothic",YuGothic,"Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;
  font-size:17px;line-height:1.9;letter-spacing:.02em;-webkit-font-smoothing:antialiased;
  font-feature-settings:"palt" 1,"kern" 1;
}
a{color:var(--primary-d);}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}

.nav{position:sticky;top:0;z-index:50;background:rgba(248,247,246,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-l);}
.nav .wrap{max-width:1080px;display:flex;align-items:center;justify-content:space-between;height:70px;}
.wm{font-size:24px;font-weight:700;color:var(--ink);text-decoration:none;}
.wm .t{color:var(--teal);}
.nav .back{font-size:15.5px;font-weight:700;color:var(--sub);text-decoration:none;}
.nav .back:hover{color:var(--ink);}

main{padding:64px 0 80px;}
h1{font-size:clamp(26px,4vw,34px);line-height:1.4;margin:0 0 10px;text-wrap:balance;}
.updated{font-size:14.5px;color:var(--faint);margin:0 0 40px;}
h2{font-size:20px;line-height:1.5;margin:44px 0 12px;padding-top:20px;border-top:1px solid var(--border);text-wrap:balance;}
h2:first-of-type{border-top:none;padding-top:0;margin-top:32px;}
p{margin:0 0 16px;}
ul,ol{margin:0 0 16px;padding-left:1.5em;}
li{margin-bottom:8px;}
.lead{font-size:17.5px;color:var(--sub);}
.note{background:var(--primary-t);border:1px solid #cfe3f2;border-radius:8px;padding:20px 26px;font-size:16px;line-height:1.9;margin:0 0 32px;}
.note b{color:var(--primary-d);}
.draft{background:#fff6e5;border:1px solid #f0d9a8;border-radius:8px;padding:20px 26px;font-size:16px;line-height:1.9;margin:0 0 32px;color:#6b4e12;}
.draft b{color:#8a5a00;}

table{width:100%;border-collapse:collapse;margin:0 0 24px;font-size:16px;}
th,td{text-align:left;vertical-align:top;padding:14px 16px;border-top:1px solid var(--border);}
tr:first-child th,tr:first-child td{border-top:none;}
th{width:30%;white-space:nowrap;color:var(--sub);font-weight:700;background:var(--over);}
@media(max-width:560px){th{width:36%;white-space:normal;}}

.contact{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:24px 28px;font-size:16px;line-height:1.9;}
.contact .cn{font-weight:700;margin-bottom:6px;}

footer{background:var(--ink);color:#b7b4ad;padding:44px 0;margin-top:64px;}
footer .wrap{max-width:1080px;display:flex;flex-wrap:wrap;gap:20px 40px;justify-content:space-between;align-items:flex-start;}
footer .wm{color:#fff;font-size:21px;}
footer .addr{font-size:14.5px;line-height:1.9;margin-top:12px;}
footer .addr p{margin:0;}
footer .addr .aname{font-weight:700;color:#e7e4e1;margin-bottom:5px;font-size:16px;}
footer .flinks{margin-top:14px;display:flex;flex-wrap:wrap;gap:8px 22px;}
footer .flinks a{color:#cfcdc8;text-decoration:underline;text-underline-offset:3px;font-size:14px;}
footer .flinks a:hover{color:#fff;}
footer .cpy{font-size:13px;color:#87847d;text-align:right;}

a:focus-visible{outline:2px solid var(--primary);outline-offset:3px;border-radius:4px;}
