*{box-sizing:border-box}body{margin:0;background:#f1efe9;color:#191919;font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP",sans-serif;line-height:1.85}a{color:inherit;text-underline-offset:4px}header{position:sticky;top:0;z-index:10;margin:24px 2.2%;padding:12px 30px;background:#fff;display:flex;align-items:center;justify-content:space-between;box-shadow:0 6px 30px #00000008}header img{display:block;width:106px;height:64px;object-fit:contain}.back{font-size:13px;font-weight:700;text-decoration:none}main{max-width:850px;margin:80px auto 100px;padding:0 28px}.intro{margin-bottom:48px}.eyebrow{font-size:12px;letter-spacing:.16em;font-weight:700;color:#f45124}h1{font-size:clamp(38px,6vw,64px);line-height:1.35;letter-spacing:-.035em;margin:24px 0}form{padding:48px;background:#fff}.row{margin-bottom:28px}.row label{display:block;font-size:15px;font-weight:700;margin-bottom:9px}label span:not(.consent span){font-size:11px;color:#c3401a;margin-left:12px}label small{font-size:11px;color:#777;margin-left:12px}input,select,textarea{font:inherit;color:inherit;border:1px solid #c9c7c1;border-radius:0;background:#faf9f6;padding:12px 14px;width:100%;min-height:50px}textarea{resize:vertical;display:block}input:focus,select:focus,textarea:focus{outline:2px solid #f45124;outline-offset:2px}button{display:flex;justify-content:space-between;align-items:center;width:100%;padding:20px 24px;background:#191919;color:#fff;border:0;font:inherit;font-weight:700;cursor:pointer}button:hover{background:#d84219}button:focus-visible,a:focus-visible{outline:3px solid #f45124;outline-offset:4px}.note{font-size:12px;color:#62605a}.consent{display:flex;gap:12px;align-items:flex-start;margin:25px 0;font-size:13px}.consent input{width:18px;min-height:18px;height:18px;margin:4px 0 0;flex-shrink:0;accent-color:#f45124}.alternative{font-size:13px;margin-top:28px;overflow-wrap:anywhere}.trap{display:none}footer{padding:30px 5%;border-top:1px solid #d4d2cc;display:flex;justify-content:space-between;gap:20px;font-size:12px}.thanks{background:white;padding:48px}.thanks a{display:inline-block;margin-top:25px}@media(max-width:600px){header{margin:12px;padding:10px 18px}header img{width:86px;height:52px}main{margin:45px auto 65px;padding:0 20px}form,.thanks{padding:26px 20px}.intro p{font-size:14px}.intro br:not(h1 br){display:none}footer{flex-direction:column;gap:8px}input,textarea,select{font-size:16px}}