.contact-main{max-width:var(--tf-form-max)}
.contact-main .tf-lead{max-width:100%}
.contact-sponsor-link{display:inline-flex;align-items:center;gap:8px;margin-top:22px;padding:12px 22px;border:1px solid var(--tf-sea);color:var(--tf-sea);font:700 13px/1 "Noto Sans JP",sans-serif;letter-spacing:.02em;text-decoration:none}
.contact-sponsor-link:hover{background:rgba(143,212,201,.1)}
.contact-form{display:grid;gap:18px;margin-top:44px}
.contact-field{display:grid;gap:8px}
.contact-field span{display:flex;align-items:baseline;gap:8px;color:var(--tf-paper);font-size:13px;font-weight:500;letter-spacing:.02em}
.contact-field span i{color:var(--tf-coral);font-size:11px;font-style:normal;letter-spacing:.08em}
.contact-field-error{min-height:1.2em;color:var(--tf-coral);font-size:12px;line-height:1.5}
.contact-field--radio{display:block;border:none;padding:0;margin:0}
.contact-field--radio legend{display:flex;align-items:baseline;gap:8px;margin:0 0 8px;padding:0;color:var(--tf-paper);font-size:13px;font-weight:500;letter-spacing:.02em}
.contact-field--radio legend i{color:var(--tf-coral);font-size:11px;font-style:normal;letter-spacing:.08em}
.contact-field--radio>label{display:inline-flex;align-items:center;gap:6px;margin:0 22px 8px 0;color:#d3cdbf;font-size:14px;white-space:nowrap}
.contact-field input,.contact-field textarea{width:100%;padding:11px 14px;border:1px solid var(--tf-line);background:rgba(0,0,0,.2);color:var(--tf-paper);font:400 15px/1.6 "Noto Sans JP",sans-serif}
.contact-field textarea{resize:vertical}
.contact-field input:focus,.contact-field textarea:focus{outline:2px solid var(--tf-sea);outline-offset:1px}
.contact-form button{justify-self:start;padding:13px 40px;border:none;background:var(--tf-coral);color:#1a1410;font:700 14px/1 "Noto Sans JP",sans-serif;letter-spacing:.04em;cursor:pointer}
.contact-form button:disabled{opacity:.6;cursor:default}
.contact-form-status{margin:14px 0 0;font-size:13px;line-height:1.7;min-height:1em;text-wrap:pretty}
.contact-form-status[data-state="success"]{color:var(--tf-sea)}
.contact-form-status[data-state="error"]{color:var(--tf-coral)}
@media(max-width:780px){.contact-form{margin-top:32px}}
