:root{
  --ink:#333333;
  --ink-soft:#5b5b5b;
  --coral:#EF856E;
  --coral-deep:#D96A54;
  --bg:#FFFFFF;
  --bg-soft:#F7F6F3;
  --line:#ECE7E2;
  --maxw:820px;
}
*{box-sizing:border-box;}
body{
  margin:0;
  font-family:'Noto Sans JP',sans-serif;
  color:var(--ink-soft);
  background:var(--bg);
  line-height:1.9;
  font-weight:500;
}
h1,h2{
  font-family:'Zen Maru Gothic','Noto Sans JP',sans-serif;
  color:var(--ink);
  font-weight:700;
}
a{color:var(--coral-deep);}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
header{background:var(--bg-soft);padding:48px 0 36px;border-bottom:1px solid var(--line);}
header .back{font-size:14px;font-weight:700;margin-bottom:18px;display:inline-block;}
header h1{font-size:clamp(24px,4vw,32px);}
header p{font-size:13.5px;color:var(--ink-soft);margin-top:10px;}
main{padding:56px 0 90px;}
section{margin-bottom:44px;}
h2{font-size:18px;margin-bottom:14px;border-left:5px solid var(--coral);padding-left:12px;}
p, li{font-size:15px;}
ul, ol{padding-left:22px;margin:12px 0;}
li{margin-bottom:8px;}
table{width:100%;border-collapse:collapse;margin-top:12px;}
th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);font-size:14.5px;vertical-align:top;}
th{width:150px;color:var(--ink);font-weight:700;background:var(--bg-soft);}
.note{background:var(--bg-soft);border-radius:14px;padding:18px 20px;font-size:13.5px;color:var(--ink-soft);}
footer{text-align:center;font-size:12.5px;color:var(--ink-soft);padding:24px 0;border-top:1px solid var(--line);}
