*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:#fff;color:#242424;font:16px/1.8 system-ui,-apple-system,BlinkMacSystemFont,"Noto Sans JP",sans-serif}a{color:#4c371d}main{max-width:760px;margin:32px auto 96px;padding:0 28px}h1{font-size:clamp(25px,4vw,36px);font-weight:650;line-height:1.4;margin:0 0 24px}.contact-intro{margin-bottom:12px}.contact-note{font-size:14px;color:#555;margin-bottom:24px}#form-status{white-space:pre-wrap;overflow-wrap:anywhere;margin:20px 0;font-weight:600}#form-status:empty{display:none}.contact-field{margin:0 0 24px}.contact-field>label{display:block;font-weight:600;margin-bottom:7px}.contact-field>label span{display:inline-block;color:#6f3028;font-size:12px;margin-left:8px}.contact-field>label .optional{color:#555}input:not([type=checkbox]),select,textarea{display:block;width:100%;border:1px solid #858585;border-radius:3px;padding:12px;background:#fff;color:#242424;font:inherit;line-height:1.5}textarea{resize:vertical;min-height:190px}small{color:#555}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible,#form-status:focus-visible{outline:2px solid #734829;outline-offset:3px}[aria-invalid=true]{border-color:#a42424}.field-error{display:block;color:#962121;font-size:14px;overflow-wrap:anywhere}.field-error:empty{display:none}.contact-consent{margin:28px 0}.contact-consent label{display:flex;align-items:flex-start;gap:11px}.contact-consent input{flex-shrink:0;min-width:20px;min-height:20px;margin:5px 0}.contact-consent span{overflow-wrap:anywhere}.contact-submit{min-height:48px;min-width:160px;border:1px solid #292929;border-radius:3px;background:#292929;color:#fff;padding:12px 28px;font:inherit;cursor:pointer}.contact-submit:disabled{background:#656565;cursor:default}.contact-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(100%)}.contact-skip{position:absolute;top:-100px;left:12px;background:#fff;z-index:99;padding:8px}.contact-skip:focus{top:10px}@media(max-width:430px){main{margin-top:24px;padding:0 20px}.contact-submit{width:100%}.contact-note{font-size:13px}}

/* Keep result messages distinct from labels and introductory text. */
#form-status{padding:18px 20px;border:1px solid #c8c8c8;border-left:4px solid #555;background:#f6f6f6;color:#242424;font-size:17px;line-height:1.7;scroll-margin-top:110px}
#form-status[data-state="success"]{padding:22px 24px;border-color:#9db9a7;border-left:5px solid #24613c;background:#edf6ef;color:#18462b;font-size:clamp(18px,2.5vw,22px);font-weight:700}
@media(max-width:430px){#form-status,#form-status[data-state="success"]{padding:18px 16px}}
