:root{--ink:#24184a;--purple:#6438c7;--pink:#ff4f87;--orange:#ff9a36;--cream:#fffaf0;--mint:#00bba7}*{box-sizing:border-box}body{margin:0;min-height:100vh;color:var(--ink);font-family:"Noto Sans JP","Yu Gothic",sans-serif;background:radial-gradient(circle at 12% 8%,#ffe15b 0 5%,transparent 5.2%),radial-gradient(circle at 92% 18%,#ff9ec1 0 7%,transparent 7.2%),linear-gradient(135deg,#f7e7ff,#fff8db 52%,#bdf6ed)}body:before,body:after{content:"";position:fixed;border-radius:50%;z-index:-1;opacity:.5}body:before{width:210px;height:210px;background:#8fdbff;bottom:-65px;left:-55px}body:after{width:160px;height:160px;background:#c8ff72;top:35%;right:-80px}main{width:min(680px,calc(100% - 28px));margin:28px auto;padding:30px;border:4px solid #fff;border-radius:30px;background:rgba(255,255,255,.92);box-shadow:0 16px 35px rgba(66,32,112,.18)}h1{margin:0 0 12px;font-size:clamp(30px,8vw,48px);line-height:1.1;letter-spacing:.04em;color:var(--purple)}h2{font-size:clamp(22px,6vw,32px);line-height:1.35;margin:0 0 16px}.eyebrow{display:inline-block;margin:0 0 10px;padding:6px 12px;border-radius:999px;background:#ffe15b;font-size:13px;font-weight:800}.lead{font-size:17px;font-weight:700;margin:0 0 18px}.survey-top{text-align:center}.progress{margin:20px auto 18px;max-width:440px;font-size:13px;font-weight:800}.progress>div{height:10px;margin-top:7px;overflow:hidden;border-radius:999px;background:#ebe3fb}.progress i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--pink),var(--orange));transition:width .2s}.question-card{margin:0;border:0;padding:0}.question-card legend{width:100%;margin:0 0 16px;font-size:clamp(21px,6vw,29px);font-weight:900;line-height:1.4}.question-number{display:block;width:max-content;margin-bottom:9px;padding:4px 10px;border-radius:8px;background:var(--purple);color:#fff;font-size:13px;letter-spacing:.08em}.question-card small{display:inline-block;margin:10px 0 0;padding:5px 10px;border-radius:999px;background:#f1ebff;color:#6246a6;font-size:15px;font-weight:800;letter-spacing:.03em}.option-list{display:grid;gap:11px}.choice{display:block;cursor:pointer}.choice input{position:absolute;opacity:0}.choice span{display:block;padding:16px 18px;border:2px solid #ded4f1;border-radius:17px;background:#fff;font-size:17px;font-weight:700;transition:.15s}.choice input:checked+span{border-color:var(--purple);background:#eee7ff;box-shadow:0 4px 0 var(--purple);transform:translateY(-2px)}.choice input:focus-visible+span{outline:3px solid var(--orange);outline-offset:2px}.survey-nav{display:flex;gap:12px;margin-top:26px}.survey-nav button{min-height:55px;border:0;border-radius:17px;font:inherit;font-size:17px;font-weight:900;cursor:pointer}.back{flex:0 0 105px;background:#eee8f8;color:var(--ink)}.next{flex:1;background:linear-gradient(120deg,var(--pink),#ff784f);color:#fff;box-shadow:0 5px 0 #c82f61}.next:active{box-shadow:0 2px 0 #c82f61;transform:translateY(3px)}.form-error{min-height:20px;margin:12px 0 0;color:#df245c;font-weight:800}section{margin-top:20px;padding:23px;border-radius:21px;background:linear-gradient(145deg,#fff4bc,#fff)}section p{line-height:1.7}form>label{display:block;margin:16px 0;font-weight:800}input:not([type=radio]):not([type=checkbox]),select{display:block;width:100%;margin-top:8px;padding:14px;border:2px solid #ded4f1;border-radius:13px;background:#fff;font:inherit}form>button,section button{width:100%;min-height:55px;border:0;border-radius:17px;background:linear-gradient(120deg,var(--pink),#ff784f);color:#fff;font:inherit;font-size:17px;font-weight:900;box-shadow:0 5px 0 #c82f61;cursor:pointer}button:active{transform:translateY(3px);box-shadow:0 2px 0 #c82f61}.error{padding:13px;border-radius:13px;background:#ffe1eb;color:#bf2454;font-weight:800}@media(max-width:480px){main{width:min(100% - 18px,680px);margin:10px auto;padding:23px 18px;border-radius:24px}.choice span{padding:14px;font-size:16px}.survey-nav button{min-height:52px}}

.receipt-image-slot{display:flex;min-height:180px;margin-top:28px;align-items:center;justify-content:center;border:2px dashed #cfc2e9;border-radius:18px;background:linear-gradient(135deg,#faf7ff,#fffdf4);color:#887aa5;font-size:14px;font-weight:800}.receipt-image-slot span{padding:10px 14px;border-radius:999px;background:#fff}
.receipt-number-fields{display:flex!important;flex-flow:row nowrap!important;align-items:center;gap:.45rem;width:100%;margin-top:8px;white-space:nowrap}.receipt-number-fields input:not([type=radio]):not([type=checkbox]){display:block!important;width:auto!important;min-width:0;margin-top:0;text-align:center}.receipt-number-fields input:first-child{flex:2}.receipt-number-fields input:last-child{flex:6}.receipt-number-fields b{display:block;flex:0 0 auto;font-size:1.35rem;color:#442cb3}
.answered-page{max-width:560px;padding:68px 28px;text-align:center;background:linear-gradient(145deg,#fff,#effffc);border-color:#d7fff2}.answered-page h1{margin-top:26px;color:#009b89;font-size:clamp(32px,9vw,52px)}.answered-message{margin:28px 0 0;font-size:clamp(18px,5vw,24px);font-weight:900;line-height:1.8}
