@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap";:root{--grad: linear-gradient(90deg, #3b6df7 0%, #7b5cf6 55%, #a855f7 100%);--ink: #2b3653;--ink-2: #5a6781;--ink-3: #8a93ac;--line: #e6ebf3}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Noto Sans JP,Hiragino Sans,Yu Gothic UI,sans-serif;color:var(--ink);background:#fff;font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.dl-page{min-height:100vh;background:radial-gradient(800px 600px at 80% 10%,#f1ecff 0%,transparent 60%),radial-gradient(600px 500px at 10% 90%,#eef2ff 0%,transparent 60%),#fafbfd;padding:0 0 72px}.dl-page-inner{max-width:1100px;margin:0 auto;padding:0 28px}.dl-header{padding:20px 0;border-bottom:1px solid #eef1f7;margin-bottom:56px}.dl-logo img{height:38px;width:auto}.dl-form-card{background:#fff;border-radius:16px;border:1px solid #e2e5f0;box-shadow:0 2px 16px #3c50a012;max-width:560px;margin:0 auto;padding:48px 52px}.dl-form-card-title{font-size:22px;font-weight:800;margin:0 0 10px;color:var(--ink)}.dl-form-card-desc{font-size:13.5px;color:var(--ink-2);line-height:1.8;margin:0 0 32px}.dl-form{display:flex;flex-direction:column;gap:20px}.dl-field{display:flex;flex-direction:column;gap:7px}.dl-field label{font-size:13.5px;font-weight:600;color:var(--ink);display:flex;align-items:center;gap:8px}.dl-required{font-size:11px;font-weight:700;color:#fff;background:var(--grad);padding:2px 8px;border-radius:999px}.dl-field input{height:46px;border:1px solid #d8dde9;border-radius:10px;padding:0 14px;font-size:14px;font-family:inherit;color:var(--ink);background:#fff;transition:border-color .15s ease,box-shadow .15s ease;outline:none}.dl-field input::placeholder{color:#b0b8cc}.dl-field input:focus{border-color:#7b5cf6;box-shadow:0 0 0 3px #7b5cf61a}.dl-field--error input{border-color:#e53e3e;background:#fff8f8}.dl-field--error input:focus{border-color:#e53e3e;box-shadow:0 0 0 3px #e53e3e1a}.dl-field-error{display:flex;align-items:flex-start;gap:5px;font-size:12.5px;color:#e53e3e;margin:0;line-height:1.5}.dl-submit-error{display:flex;align-items:flex-start;gap:8px;background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;padding:12px 14px}.dl-submit-error p{font-size:13px;color:#c53030;margin:0;line-height:1.7}.dl-submit{height:52px;background:var(--grad);color:#fff;border:none;border-radius:10px;font-size:15px;font-weight:700;font-family:inherit;cursor:pointer;transition:opacity .15s ease,transform .15s ease,box-shadow .15s ease;box-shadow:0 6px 18px #5b6df859;margin-top:4px;display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.dl-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 24px #5b6df873}.dl-submit:disabled{opacity:.6;cursor:not-allowed}.dl-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.dl-note{font-size:12px;color:var(--ink-3);text-align:center;margin:0;line-height:1.8}.dl-note a{color:#7b5cf6;text-decoration:underline}.dl-complete-card{background:#fff;border-radius:20px;border:1px solid var(--line);box-shadow:0 4px 24px #3c50a014;max-width:560px;margin:0 auto;padding:56px 48px;display:flex;flex-direction:column;align-items:center;text-align:center}.dl-complete-icon{width:56px;height:56px;margin-bottom:24px}.dl-complete-icon svg{width:100%;height:100%}.dl-complete-title{font-size:24px;font-weight:800;margin:0 0 16px;color:var(--ink)}.dl-complete-desc{font-size:14.5px;color:var(--ink-2);line-height:1.95;margin:0 0 32px}.dl-download-btn{display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 32px;background:var(--grad);color:#fff;border-radius:10px;font-size:15px;font-weight:700;text-decoration:none;box-shadow:0 6px 18px #5b6df859;transition:transform .15s ease,box-shadow .15s ease;margin-bottom:20px}.dl-download-btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px #5b6df873}.dl-back-link{font-size:13.5px;color:var(--ink-2);text-decoration:none}.dl-back-link:hover{color:var(--ink)}@media (max-width: 640px){.dl-page-inner{padding:0 16px}.dl-form-card{padding:32px 24px}.dl-form-card-title{font-size:18px}.dl-complete-card{padding:40px 24px}.dl-complete-title{font-size:20px}.dl-download-btn{padding:0 20px;font-size:14px}}
