picture{display:contents}
:root{color-scheme:light;--bold:#d81b74;--aqua:#0b6d9e;--bg:#fff;--ink:#3f1a52;--ink-2:#7b4a88;--line:#f0e0f2;--tint:#fdf4fa;--lime:#ffb3d6;--pink:#ff5ca8}
:root[data-theme="dark"]{--bold:#ff8ac4;--aqua:#6fc8ee;--bg:#0f0f0e;--ink:#f4f4f1;--ink-2:#b3b3ad;--line:#2a2a27;--tint:#171716}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Zen Maru Gothic","Hiragino Maru Gothic ProN","Yu Gothic","Hiragino Sans",sans-serif;line-height:1.9;font-size:16.5px;line-break:strict;overflow-wrap:break-word}
.ph{display:inline-block;max-width:100%;overflow-wrap:anywhere;text-decoration:inherit}
a{color:inherit}
b,strong{color:var(--bold);font-weight:500}
.hd{display:flex;align-items:center;justify-content:space-between;padding:18px clamp(20px,4vw,48px);border-bottom:1px solid var(--line)}
.logo{display:inline-flex;align-items:center;gap:8px;font-family:"Fredoka","Helvetica Neue",Arial,sans-serif;font-weight:700;letter-spacing:-.04em;font-size:20px;text-decoration:none}
.logo i{width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffd1e8,var(--pink) 60%);display:inline-block}
.back{font-size:13.5px;color:var(--ink-2);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:8px 14px}
.logo,.back{white-space:nowrap}.logo .t{font-family:inherit;font-weight:700;font-size:17px;letter-spacing:-.01em}.logo .b{margin-left:10px;padding-left:10px;border-left:1px solid var(--line);font-size:11px;color:var(--ink-2)}
@media (max-width:480px){.hd{padding:14px 16px}.logo{gap:6px}.logo .t{font-size:15px}.logo .b{margin-left:8px;padding-left:8px;font-size:10px}.back{font-size:12px;padding:7px 10px}}
main{max-width:760px;margin:0 auto;padding:clamp(40px,6vw,72px) clamp(20px,4vw,48px) 96px}
.en{color:var(--bold);font-family:"Fredoka","Helvetica Neue",Arial,sans-serif;font-weight:500;letter-spacing:-.05em;font-size:clamp(44px,8vw,84px);line-height:.95;margin:0 0 6px}
h1.jp{font-size:clamp(18px,2.4vw,22px);font-weight:700;margin:0 0 8px;color:var(--aqua)}
.meta{font-size:13.5px;color:var(--ink-2);margin:0 0 36px}
h2{font-size:18.5px;margin:40px 0 10px;padding-top:18px;border-top:1px solid var(--line);color:var(--aqua)}
p,li{color:var(--ink-2)}p{margin:0 0 12px}ul{padding-left:1.3em;margin:0 0 12px}
dl{display:grid;grid-template-columns:minmax(120px,190px) 1fr;gap:0;border-top:1px solid var(--line);margin:0}
dt,dd{padding:14px 0;border-bottom:1px solid var(--line);margin:0}dt{font-weight:700;font-size:15px;color:var(--aqua)}dd{color:var(--ink-2)}
@media (max-width:560px){dl{grid-template-columns:1fr}dt{padding-bottom:0;border-bottom:0}dd{padding-top:4px}}
mark{background:var(--lime);color:var(--ink);padding:0 .2em}
.todo{background:var(--tint);border-radius:14px;padding:14px 18px;font-size:14px;color:var(--ink-2);margin:0 0 28px}
.ftr{border-top:1px solid var(--line);padding:28px clamp(20px,4vw,48px);font-size:13.5px;color:var(--ink-2)}
.ftr a{margin-right:16px}


main{max-width:800px}
.lead{font-size:17.5px;line-height:2;margin:0 0 8px}
.toc{background:var(--tint);border-radius:14px;padding:16px 20px;margin:28px 0 8px;font-size:15.5px}
.toc ol{margin:8px 0 0;padding-left:20px}.toc li{margin:4px 0}
ol.steps{padding-left:22px}ol.steps li{margin:8px 0}
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:12px 0 4px}
.tbl{width:100%;min-width:560px;border-collapse:collapse;font-size:15px;margin:0}
.tbl td:first-child,.tbl th:first-child{min-width:8.5em}
.tbl th,.tbl td{border-bottom:1px solid var(--line);padding:10px 8px;text-align:left;vertical-align:top}
.tbl th{font-size:12.5px;color:var(--aqua);font-weight:700;letter-spacing:.04em}
.tbl td.n{font-variant-numeric:tabular-nums;white-space:nowrap}
.note{font-size:14px;color:var(--ink-2)}
.cta{background:var(--tint);border-radius:18px;padding:24px 24px;margin:44px 0 0}
.cta p{margin:0 0 14px}.cta .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;background:var(--bold);color:#fff;text-decoration:none;font-weight:500;padding:12px 22px;border-radius:999px;text-align:center}
.cta .btn:hover{background:var(--aqua)}
.cta .btn:focus-visible{outline:3px solid var(--aqua);outline-offset:4px}
details{border-bottom:1px solid var(--line);padding:10px 0}details summary{cursor:pointer;font-weight:700;color:var(--aqua)}details .a{padding:10px 0 4px;font-size:16px;line-height:1.9}
h3{font-size:17px;margin:22px 0 8px;color:var(--aqua)}
.template-download{margin:28px 0;padding:24px 0;border-block:1px solid var(--line);background:#fff;scroll-margin-top:100px}
.template-download h3{margin-top:0;font-size:20px}
.template-download .template-links{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;margin:20px 0;font-size:14px}
.template-download .template-button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;max-width:100%;padding:12px 18px;border:2px solid var(--aqua);border-radius:9px;background:#fff;color:var(--aqua);font-weight:500;text-align:center;text-decoration:none;line-height:1.7}
.template-download .template-button:hover{background:var(--tint)}
.template-download .template-button--primary{border-color:var(--bold);background:var(--bold);color:#fff}
.template-download .template-button--primary:hover{border-color:var(--aqua);background:var(--aqua);color:#fff}
.template-download .template-links--closing{margin-bottom:0}
@media(max-width:600px){.template-download .template-links{align-items:stretch;flex-direction:column;gap:12px}.template-download .template-links .template-button{width:100%}.cta .btn{width:100%}}
.template-download .steps li{margin-block:14px}
.template-download .steps li::marker{color:var(--aqua);font-weight:700}
.template-download code{font:inherit;font-size:.9em;overflow-wrap:anywhere}
.template-download .template-file-help{margin-bottom:18px;font-size:14px}
.template-download .template-file-help .a{font-size:14px}
.template-download a:focus-visible{outline:3px solid var(--aqua);outline-offset:4px}
.template-download :is(h3,details){scroll-margin-top:100px}
.template-figure{margin:24px 0}
.template-figure img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:12px}
.template-example{max-width:480px;margin-inline:auto}
.template-figure figcaption{font-size:13px;line-height:1.7;color:var(--ink-2);margin-top:10px}
.template-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.template-checks .template-figure{margin:12px 0}
@media(max-width:600px){.template-checks{grid-template-columns:1fr;max-width:300px;margin-inline:auto}}
.template-file-help summary{padding:10px 0;min-height:44px}
.template-file-help ol{padding-left:1.5em}
.template-file-help li+li{margin-top:12px}
.template-support{display:block;font-size:15px;line-height:1.9}
.template-support>div{padding:16px 0;border-bottom:1px solid var(--line)}
.template-support dt{padding:0;border:0;color:var(--aqua);font-weight:700}
.template-support dd{padding:0;border:0;margin:4px 0 0}
/* 実物参考写真（2026-09-27 B6）。template-figure と同じ枠・角丸・注記の書式 */
.guide-photo{margin:24px auto;max-width:560px}
.guide-photo--portrait{max-width:420px}
.guide-photo img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:12px}
.guide-photo figcaption{font-size:13px;line-height:1.7;color:var(--ink-2);margin-top:10px}


a.logo-cand{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;text-decoration:none;color:var(--aqua);line-height:1;height:auto}
.logo-cand .lc-mk{display:block;height:33px;width:auto;flex:none;margin-right:10px}
.logo-cand .lc-mk svg{display:block;height:100%;width:auto;overflow:visible}
.logo-cand .lc-wm{display:block;height:34px;flex:none}
.logo-cand .lc-wm img{display:block;height:100%;width:auto;filter:drop-shadow(0 3px 8px rgba(233,30,140,.16))}
.logo-cand .lc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.logo-cand .lc-by{display:block;margin:0;padding:0;border:0;white-space:nowrap}
.logo-cand .lc-by em{font-style:normal;font-family:"Zen Maru Gothic","Hiragino Maru Gothic ProN","Yu Gothic","Hiragino Sans",sans-serif;font-weight:700;font-size:12px;letter-spacing:.285em;color:var(--aqua)}
@media (max-width:1024px){ .logo-cand .lc-by .by-s{font-size:11px;letter-spacing:.2em} }
@media (max-width:720px){ .logo-cand .lc-mk{height:29px;margin-right:8px} .logo-cand .lc-wm{height:29px} }
@media (max-width:480px){ .logo-cand .lc-wm{height:27px} .logo-cand .lc-by .by-s{font-size:10.5px;letter-spacing:.14em} }
