*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Noto Sans JP,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial;color:#0b1220;background:#fff;line-height:1.6}.container{max-width:500px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:18px;padding:14px}img,.header{width:100%;display:block}.ribbon{margin-top:6px;width:100%;background:linear-gradient(90deg,#0ea5e9,#2563eb);color:#fff;border-radius:10px;padding:8px 12px;text-align:center;font-weight:800;letter-spacing:.04em}.h1{font-size:clamp(24px,5.6vw,38px);line-height:1.18;text-align:center;font-weight:900}.lead{font-size:16px;color:#111;text-align:center}.lead strong{background:linear-gradient(90deg,#f97316,#ef4444);-webkit-background-clip:text;background-clip:text;color:transparent}.badges{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:2px}.badge{border:1px solid #e2e8f0;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;background:#fff}.btn{cursor:pointer;display:block;width:100%}.btn-img{width:100%;display:block;animation:breath 2s infinite}@keyframes breath{0%{transform:scale(1)}50%{transform:scale(1.06)}to{transform:scale(1)}}.card{border:2px dashed #2563eb;border-radius:14px;padding:12px;background:#f8fafc}.card ul{list-style:none;padding:0;margin:0;display:grid;gap:8px;font-weight:700}.text{width:100%;font-size:16px;color:#111;text-align:center}.text-box{font-size:22px;font-weight:900;color:#111;text-align:center}.popup{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:9999}.popup-content{background:#fff;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);padding:20px;border-radius:16px;box-shadow:0 10px 30px #00000040;width:340px;max-width:92vw}.close-popup{position:absolute;top:10px;right:10px;cursor:pointer;font-size:20px;border:none;background:transparent}.popup h2{margin:0 0 8px;font-size:18px;text-align:center;font-weight:900}.popup .list{font-size:14px;line-height:1.7;margin:10px 0}.popup-buttons{display:flex;gap:10px;margin-top:12px}#confirm-button,#cancel-button{flex:1;font-size:15px;font-weight:900;color:#fff;line-height:48px;border:none;border-radius:10px;cursor:pointer}#confirm-button{background:#06c755;display:flex;justify-content:center}#cancel-button{background:#e11d48}.focus-ring:focus{outline:3px solid #60a5fa;outline-offset:2px}@media (prefers-reduced-motion: reduce){.btn-img{animation:none}}
