*{box-sizing:border-box}html,body{margin:0;padding:0}body{color:#1a1a1a;-webkit-text-size-adjust:100%;background:#f4f5f7;font-family:system-ui,-apple-system,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;font-size:17px;line-height:1.7}.wrap{max-width:560px;margin:0 auto;padding:16px 16px 64px}.card{background:#fff;border:1px solid #e0e2e6;border-radius:12px;margin-bottom:16px;padding:20px 18px}h1{margin:0 0 4px;font-size:22px}h2{margin:24px 0 8px;font-size:19px}.store{color:#444;margin:0 0 20px;font-size:15px}label{margin:18px 0 6px;font-weight:600;display:block}label .hint{color:#555;font-size:14px;font-weight:400;display:block}label .req{color:#b3261e;margin-left:4px;font-weight:700}input[type=text],input[type=tel],input[type=date],input[type=number],select{color:#1a1a1a;background:#fff;border:1px solid #9aa0a6;border-radius:8px;width:100%;height:56px;padding:0 12px;font-family:inherit;font-size:17px}input:focus,select:focus{outline-offset:1px;outline:3px solid #1a73e8}fieldset.radios{border:none;min-width:0;margin:0;padding:0;display:block}fieldset.radios legend{margin:18px 0 6px;padding:0;font-weight:600;display:block}.radios label{background:#fff;border:1px solid #9aa0a6;border-radius:8px;align-items:center;min-height:56px;margin:8px 0;padding:0 12px;font-weight:400;display:flex}.radios input[type=radio]{width:24px;height:24px;margin-right:12px}button.primary,a.primary{color:#fff;text-align:center;cursor:pointer;background:#1a73e8;border:none;border-radius:10px;width:100%;min-height:64px;margin-top:28px;padding:16px;font-family:inherit;font-size:19px;font-weight:700;text-decoration:none;display:block}a.secondary{color:#1a73e8;text-align:center;background:#fff;border:2px solid #1a73e8;border-radius:10px;width:100%;min-height:56px;margin-top:14px;padding:14px;font-size:17px;font-weight:600;text-decoration:none;display:block}.receipt{letter-spacing:2px;text-align:center;margin:12px 0 4px;font-size:40px;font-weight:700}.receipt-note{text-align:center;color:#444;margin:0 0 8px;font-size:15px}.notice{background:#fdf6e3;border:1px solid #f0c36d;border-radius:8px;margin-bottom:16px;padding:14px}.error{background:#fdecea;border:1px solid #e59a94;border-radius:8px;margin-bottom:16px;padding:14px}.error ul{margin:8px 0 0;padding-left:20px}.fallback{color:#444;border-top:1px solid #e0e2e6;margin-top:28px;padding-top:18px;font-size:15px}
