:root{--paper:#FAFAF7;--rule:#D6E0EA;--ink:#2B3F66;--text:#3B3B3B;--coral:#F2A493}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#EEF2F6;color:var(--text);font-family:"Hiragino Sans","Noto Sans JP","Yu Gothic",sans-serif;font-size:16px;line-height:1.8}
main{max-width:560px;margin:0 auto;background:var(--paper)}
.part{position:relative;margin:0}
.part img{display:block;width:100%;height:auto}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hit{position:absolute;display:block;color:transparent;font-size:0;border-radius:6px}
.hit:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.hit-fv{left:58%;top:75.5%;width:36%;height:16%}
.hit-cta{left:9%;top:78.5%;width:82%;height:11%}
.hit-fv:hover,.hit-cta:hover{background:rgba(255,255,255,.12)}
.info{padding:48px 24px 120px;background:var(--paper) repeating-linear-gradient(transparent 0 35px,var(--rule) 35px 36px)}
.info h2{color:var(--ink);font-weight:400;font-size:26px;margin:0 0 24px;word-break:auto-phrase;text-wrap:balance;line-break:strict}
dl{margin:0 0 32px;background:#fff;border:1px solid var(--rule);border-radius:8px;padding:8px 20px}
dt{color:var(--ink);font-size:14px;margin-top:12px}
dd{margin:0 0 12px;padding-bottom:12px;border-bottom:1px solid var(--rule)}
dd:last-child{border-bottom:0}
.btn{display:block;text-align:center;background:var(--coral);color:var(--text);text-decoration:none;padding:18px;border-radius:4px;font-size:20px;box-shadow:0 6px 10px rgba(0,0,0,.12);min-height:44px}
.btn small{font-size:13px}
.note{text-align:center;margin-top:16px}
.float{position:fixed;left:50%;bottom:16px;transform:translate(-50%,120%);opacity:0;transition:.3s;background:var(--coral);color:var(--text);text-decoration:none;padding:12px 28px;border-radius:999px;box-shadow:0 4px 12px rgba(0,0,0,.18);min-height:44px;white-space:nowrap}
.float.show{transform:translate(-50%,0);opacity:1}
footer{text-align:center;padding:16px 0 90px;color:#777}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.float{transition:none}}
