*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --y:#F5C800;--yd:#d4ab00;--yp:#fffbe6;
  --bk:#111;--wh:#fff;--gr:#f7f7f5;--gr2:#eee;
  --tx:#1a1a1a;--sub:#666;--bd:#e0e0e0;--r:4px
}
html{scroll-behavior:smooth}
body{font-family:'Noto Sans JP',sans-serif;color:var(--tx);background:var(--wh);font-size:15px;line-height:1.75}


section{padding:72px 5%}
.sh{text-align:center;margin-bottom:44px}
.sh-tag{display:inline-block;background:var(--y);color:var(--bk);font-size:11px;font-weight:700;padding:3px 10px;border-radius:2px;letter-spacing:1px;text-transform:uppercase;margin-bottom:10px}
.sh h2{font-family:'Black Han Sans',sans-serif;font-size:clamp(20px,3.5vw,36px);color:var(--bk);letter-spacing:1px;margin-bottom:8px}
.sh p{font-size:14px;color:var(--sub);max-width:460px;margin:0 auto}

.btns{display:flex;gap:10px;flex-wrap:wrap}
.btn-b{background:var(--bk);color:var(--wh);padding:13px 28px;border-radius:var(--r);font-size:14px;font-weight:700;border:none;cursor:pointer;font-family:'Noto Sans JP',sans-serif;transition:background .2s}
.btn-b:hover{background:#333}
.btn-o{background:transparent;color:var(--bk);padding:13px 24px;border-radius:var(--r);font-size:14px;font-weight:600;border:2px solid var(--bk);cursor:pointer;font-family:'Noto Sans JP',sans-serif;transition:background .2s}
.btn-o:hover{background:var(--y);border-color:var(--y)}

.cta-band{background:var(--y);padding:48px 5%;text-align:center}
.cta-band h2{font-family:'Black Han Sans',sans-serif;font-size:clamp(20px,3vw,32px);color:var(--bk);letter-spacing:1px;margin-bottom:8px}
.cta-band p{font-size:14px;color:#444;margin-bottom:24px}
.cta-band .btn-b{background:var(--bk);color:var(--wh);font-size:15px;padding:14px 36px}
.cta-band .btn-b:hover{background:#333}

footer{background:var(--bk);color:#555;text-align:center;padding:22px 5%;font-size:13px;border-top:4px solid var(--y)}
footer strong{color:var(--y);font-family:'Black Han Sans',sans-serif;letter-spacing:2px}
