:root{--accent:#b1137d;--accent-strong:#930864;--accent-soft:#fae7f3;--accent-soft-border:#efc6df;--text:#202824;--muted:#434a45}*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--text);font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif}button,input{font:inherit}a{color:inherit;text-decoration:none}.shell{max-width:760px;margin:auto;padding:20px 28px}.brand-header{display:flex;align-items:center;justify-content:center;margin:6px 0 24px;padding-bottom:10px}.brand{display:flex;align-items:center;justify-content:center;width:min(100%,430px);padding:8px 18px 14px;border-bottom:2px solid #f1dce9;line-height:0}.demo-banner{text-align:center;font-size:12px;background:#fcf1f7;border:1px solid var(--accent-soft-border);border-radius:5px;padding:10px;color:var(--accent-strong);margin-bottom:26px}h1{color:var(--accent);font-size:29px;text-align:center;line-height:1.5;margin:20px 0 8px}.intro{text-align:center;margin:0;color:var(--muted);font-size:15px}.steps{list-style:none;display:flex;padding:0;justify-content:center;gap:80px;margin:22px 0 24px}.steps li{position:relative;text-align:center;font-size:13px;color:#999;font-weight:700}.steps li span{display:grid;place-items:center;width:40px;height:40px;margin:0 auto 8px;background:#aaa;border-radius:50%;font-size:22px;color:#fff}.steps li:first-child:after{content:"";position:absolute;top:19px;height:2px;background:#bbb;width:110px;left:calc(50% + 20px)}.steps li.active{color:var(--accent)}.steps li.active span{background:var(--accent)}.form-card{background:#fff;border-radius:12px;padding:24px 22px;box-shadow:0 2px 20px #203c2905}label{display:block;font-size:18px;font-weight:700;margin-bottom:25px}label:last-child{margin-bottom:0}b{display:inline-block;background:#d9252b;color:#fff;padding:3px 13px;border-radius:4px;font-size:14px;margin-left:13px;vertical-align:middle}input:not([type=radio]){display:block;width:100%;padding:12px 14px;border:1px solid #cbd0cd;border-radius:5px;background:#fff;color:#273a2f;font-size:16px;outline:none;margin-top:9px;height:49px}input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #b1137d1f}input::placeholder{color:#959b97}small{display:block;color:#717972;font-size:12px;line-height:1.7;font-weight:400;margin-top:5px}.lookup{display:flex;align-items:center;gap:12px;border:1px solid #cbd0cd;border-radius:5px;padding:0 14px;margin-top:9px;height:49px;color:#727b74}.lookup input:not([type=radio]){border:0;margin:0;padding:0;box-shadow:none;height:44px;min-width:0}.lookup span{font-size:27px;font-weight:400}.lookup:focus-within{outline:2px solid rgba(177,19,125,.12);border-color:var(--accent)}fieldset{border:0;padding:0;margin:0 0 22px}legend{font-weight:700;font-size:18px;padding:0}.radio-group{display:flex;gap:54px;margin-top:12px}.radio-group label{display:flex;align-items:center;gap:12px;font-weight:400;margin:0;font-size:18px}.radio-group input{accent-color:var(--accent);width:26px;height:26px;margin:0}.submit{position:relative;width:100%;border:0;border-radius:40px;background:var(--accent);color:#fff;font-weight:750;font-size:22px;padding:14px 45px;margin-top:17px;cursor:pointer}.submit span{position:absolute;right:27px;font-size:30px;top:6px}.submit:disabled{opacity:.6;cursor:wait}.notice{display:flex;gap:18px;background:var(--accent-soft);padding:17px 20px;border-radius:7px;margin-top:15px;color:var(--accent-strong)}.notice>span{font-size:35px;align-self:center}.notice strong{font-size:13px}.notice p{font-size:12px;line-height:1.7;margin:5px 0 0;color:#746870}.error{color:#be3434;font-size:13px}.success{text-align:center}.success .check{position:relative;background:var(--accent);width:122px;height:122px;border-radius:50%;margin:44px auto 24px}.success .check:before{content:"";position:absolute;left:50%;top:50%;width:28px;height:52px;border-right:10px solid #fff;border-bottom:10px solid #fff;transform:translate(-50%,-56%) rotate(45deg)}.success h1{font-size:28px;margin-bottom:24px}.submitted-details{padding:18px;background:#fdf7fb;border:1px solid #f1dce9;border-radius:10px;text-align:left;margin:0}.submitted-details>div{display:grid;grid-template-columns:38% minmax(0,1fr);gap:12px;padding:17px 12px;background:#fff;border-bottom:1px solid #efe3ea}.submitted-details>div:first-child{border-radius:7px 7px 0 0}.submitted-details>div:last-child{border:0;border-radius:0 0 7px 7px}.submitted-details dt,.submitted-details dd{font-size:18px;line-height:1.6;margin:0;overflow-wrap:anywhere}.submitted-details small{font-size:10px}.demo-note{font-size:11px;line-height:1.7;color:#78857c;margin:15px 0}.reset{border:1px solid #e6bfd6;background:#fff;color:var(--accent);border-radius:6px;padding:10px 25px;cursor:pointer}footer{text-align:center;border-top:1px solid #e2d4dd;margin-top:35px;padding:12px;color:#8c7883;font-size:12px;line-height:1.7}.success+footer{margin-top:70px}@media(max-width:480px){.shell{padding:17px 18px}.brand-header{margin:8px 0 18px}h1{font-size:24px}.intro{font-size:13px}.form-card{padding:20px 15px}label,legend{font-size:16px}input:not([type=radio]),select,textarea{font-size:16px}.submit{font-size:20px}.demo-banner{font-size:10px}.success h1{font-size:24px}.submitted-details{padding:12px}.submitted-details dt,.submitted-details dd{font-size:15px}.notice{padding:14px;gap:12px}.notice strong{font-size:12px}}.notice-lock{display:flex;flex:0 0 32px}.notice-lock svg{width:32px;height:38px}input::-webkit-calendar-picker-indicator{display:none!important}footer{margin-top:65px;padding:16px 0 8px}.footer-links{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;row-gap:10px}.footer-links button{background:none;border:0;border-right:1px solid #d6c2cf;color:#8c7883;font-size:12px;line-height:1.2;padding:0 15px;cursor:pointer}.footer-links button:last-child{border-right:0}.footer-links button:hover{text-decoration:underline;color:var(--accent)}footer>p{margin:15px 0 0;color:var(--accent);font-weight:700}.footer-overlay{position:fixed;inset:0;background:#3e112d66;display:grid;place-items:center;padding:24px;z-index:20}.footer-dialog{max-width:460px;background:#fff;border-radius:12px;padding:28px}.footer-dialog h2{font-size:20px;color:var(--accent)}.footer-dialog p{font-size:14px;line-height:1.8}.footer-dialog button{border:0;background:var(--accent);color:#fff;padding:10px 24px;border-radius:6px;cursor:pointer}@media(max-width:480px){.footer-links button{font-size:10px;padding:0 8px}}.brand-logo{display:block;width:min(100%,360px);max-height:84px;height:auto;object-fit:contain}@media(max-width:480px){.brand-header{margin:4px 0 20px;padding-bottom:8px}.brand{width:min(100%,320px);padding:6px 10px 10px}.brand-logo{width:min(100%,250px);max-height:60px}}
