:root{--paper:#f7f5ee;--white:#fffefb;--ink:#203c34;--sub:#59675f;--green:#265547;--line:#d8ded4;--mint:#e8eee6;--gold:#a77c45}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Yu Gothic','Meiryo',sans-serif;font-size:17px;line-height:1.9}a{color:var(--green);text-underline-offset:5px}a:hover{color:#786033}a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #b68039;outline-offset:5px}h1,h2,.brand{font-family:'Yu Mincho','Hiragino Mincho ProN',serif}h1{font-size:42px;line-height:1.55;letter-spacing:.035em;margin:12px 0 24px}h2{font-size:28px;line-height:1.6;margin:0 0 20px}h3{font-size:20px;line-height:1.6;margin:12px 0}p{margin:0 0 20px}small{font-size:13px}.skip{position:absolute;top:-100px;background:white;padding:12px;z-index:10}.skip:focus{top:0}header{background:var(--white);border-bottom:1px solid var(--line)}.header-inner{max-width:1180px;margin:auto;padding:24px 36px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;font-size:23px;font-weight:bold;text-decoration:none;white-space:nowrap}.brand small{display:block;font-family:sans-serif;font-size:11px;letter-spacing:.12em;color:var(--sub)}.mark{display:grid;place-items:center;background:var(--green);color:white;border-radius:3px;width:40px;height:44px;font-size:21px}nav{display:flex;flex-wrap:wrap;gap:8px 22px}nav a{font-size:14px;text-decoration:none;padding:9px 0}.home{max-width:1180px;margin:auto;padding:0 36px}.hero{padding:78px 0 66px;display:grid;grid-template-columns:1.25fr 1fr;gap:64px;align-items:center}.hero h1{font-size:48px}.eyebrow{font-size:13px;letter-spacing:.14em;color:var(--gold);font-weight:700;margin-bottom:16px}.intro{font-size:18px;line-height:2.1;color:var(--sub)}.cta{display:block;width:fit-content;max-width:100%;background:var(--green);color:white;text-decoration:none;font-weight:bold;font-size:16px;padding:17px 26px;border:1px solid var(--green);border-radius:4px;margin:24px 0 12px}.cta:hover{background:#193d32;color:white}.cta span{margin-left:36px}.text-link{font-size:14px;display:inline-block;padding:8px 0}.memo{padding:35px;background:var(--mint);border:1px solid #cdd8cb;box-shadow:10px 10px 0 #e8e4d8;transform:rotate(1deg)}.memo h2{font-size:30px}.memo ol{padding:0;list-style:none}.memo li{display:flex;gap:20px;border-top:1px solid #c6d0c4;padding:17px 0}.memo li>span{color:var(--gold);font-family:serif;font-size:24px}.memo small{display:block;color:var(--sub)}.memo p{font-size:13px;margin:10px 0 0}.trust-strip{padding:19px 0;display:flex;gap:36px;border-block:1px solid var(--line);font-size:13px;color:var(--sub)}.trust-strip span:before{content:'✓';margin-right:10px;color:var(--green)}.section{padding:62px 0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}.route{display:block;text-decoration:none;background:var(--white);padding:27px;border:1px solid var(--line);border-radius:4px;transition:transform .15s}.route:hover{transform:translateY(-3px);border-color:var(--green)}.num{font-family:serif;font-size:27px;color:var(--gold)}.route p{font-size:15px;color:var(--sub)}.arrow{font-size:14px;font-weight:bold}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid var(--line)}.reading a{display:block;text-decoration:none;padding:23px 25px;border-bottom:1px solid var(--line);position:relative}.reading small{display:block;color:var(--gold)}.reading strong{font-size:17px}.reading span{position:absolute;right:0;top:40px}.article{max-width:820px;margin:auto;padding:35px 30px 75px}.crumb{font-size:12px;color:var(--sub);margin-bottom:35px}.article h2{margin-top:46px;padding-top:24px;border-top:1px solid var(--line)}.lead{color:var(--sub);font-size:18px}.note{background:var(--mint);border-left:3px solid var(--green);padding:22px;font-size:15px}.scroll{overflow-x:auto;margin:24px 0}table{border-collapse:collapse;width:100%;font-size:15px;background:var(--white)}th,td{text-align:left;vertical-align:top;border:1px solid var(--line);padding:16px}th{background:var(--mint)}.src{font-size:13px;color:var(--sub);margin-top:30px;overflow-wrap:anywhere}li{margin-bottom:10px}.panel{padding:24px;background:var(--white);border:1px solid var(--line);margin:16px 0}.panel p{margin:0}.next,.calculator{margin-top:45px;background:var(--mint);padding:28px}.next h2,.calculator h2{border:0;margin-top:0;padding-top:0}details{border-bottom:1px solid var(--line);padding:17px 0}summary{cursor:pointer;font-weight:bold;min-height:44px}details p{padding:14px 0;margin:0}.calculator label{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:15px;margin:12px 0}.calculator input{width:45%;min-width:0;padding:12px;font:inherit;border:1px solid #9bad9d;border-radius:3px;background:var(--white)}.total{border-top:1px solid #b4c4b5;padding-top:20px;margin-top:20px}.total output{font-size:30px;font-weight:bold;display:block}footer{background:#203d33;color:#edf0e8;padding:48px 30px}.footer-inner{max-width:1108px;margin:auto}footer a,footer .brand{color:#edf0e8}footer p{font-size:14px;opacity:.8}footer nav{margin:20px 0}footer small{display:block;max-width:760px;opacity:.8}@media(max-width:850px){.header-inner{flex-direction:column;align-items:flex-start;padding:20px 24px;gap:10px}.hero{gap:30px}.hero h1{font-size:37px}.memo{padding:25px}.home{padding:0 24px}.grid{gap:12px}.route{padding:20px}.split{gap:32px}}@media(max-width:620px){body{font-size:17px}.header-inner{padding:17px 20px}nav{gap:2px 18px}nav a{font-size:13px;min-height:44px}.brand{font-size:22px}.hero{display:block;padding:42px 0}.hero h1{font-size:34px;letter-spacing:0}.intro{font-size:16px}.memo{margin-top:35px;transform:none;box-shadow:6px 6px 0 #e8e4d8}.memo h2{font-size:25px}.hero .cta{width:100%;text-align:center}.trust-strip{gap:10px;justify-content:space-between;flex-wrap:wrap;font-size:11px}.trust-strip span:before{margin-right:4px}.section{padding:40px 0}.section h2{font-size:25px}.grid,.split{display:block}.route{margin:14px 0;padding:24px}.route h3{margin:6px 0}.route p{margin-bottom:10px}.reading{margin-top:25px}.article{padding:24px 20px 50px}.article h1{font-size:30px}.article h2{font-size:24px}.article h3{font-size:19px}.lead{font-size:17px}.scroll table{min-width:520px}.calculator,.next{padding:20px}.desktop{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.route{transition:none}}@media print{header,footer,.cta,.text-link,.crumb{display:none}.article{max-width:none}.scroll{overflow:visible}.calculator{break-inside:avoid}}

/* 広告の表示（提携が完了したら、本文に <p class="pr"> と <p class="pr-inline"> を入れる）
   冒頭の一括記載だけでは足りず、各リンクの直前にも要る（消費者庁のステマ規制Q&A）。 */
.pr{background:#fbf4e4;border:1px solid #e3d5ae;color:#7a5f1c;font-size:14px;line-height:1.8;padding:13px 17px;border-radius:4px;margin:0 0 26px}
.pr-inline{font-size:14px;color:#7a5f1c;margin:0 0 9px}

/* カード内の「確認する →」を、本文の行数が違っても下端でそろえる */
.route{display:flex;flex-direction:column}
.route .arrow{margin-top:auto;padding-top:4px}
