.page-contact .page-intro{padding-top:44px;padding-bottom:42px}
.page-contact .page-intro h1{font-size:clamp(30px,3.3vw,48px);line-height:1.5}
.page-contact .page-intro .eyebrow{margin-bottom:16px}
.page-contact .page-intro .lead{margin-top:18px}
.contact-form-section{padding-top:50px;padding-bottom:90px;max-width:1120px;margin:auto}
.contact-form-heading h2{font-size:24px;letter-spacing:.02em;font-family:inherit;font-weight:500}
.contact-form-heading p{font-size:13px;line-height:2;margin-top:16px}
.inquiry-form{margin-top:34px;padding:32px 36px;background:#e6e0d3;border:1px solid #d6cebd;color:#292d29}
.form-required-note{font-size:12px;margin-bottom:24px}
.form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
.inquiry-form [hidden]{display:none!important}
.form-field{margin-bottom:26px;min-width:0}
.form-field>label{display:block;font-size:14px;font-weight:500;margin-bottom:10px}
.field-tag{display:inline-block;margin-left:9px;padding:1px 6px;background:#4f554c;color:#fff;font-size:10px;font-weight:400;line-height:1.8;vertical-align:middle;white-space:nowrap}
.field-tag.optional{background:#d7d1c5;color:#4d514a}
.form-field input,.form-field select,.form-field textarea,#manual-copy-text{display:block;box-sizing:border-box;width:100%;min-width:0;border:1px solid #999e91;background:#fbf8f0;border-radius:0;padding:12px 14px;color:#292d29;font:400 16px/1.65 "Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;letter-spacing:0}
.form-field select{min-height:52px}
.form-field textarea,#manual-copy-text{resize:vertical;min-height:170px}
.form-field input::placeholder,.form-field textarea::placeholder{color:#73776d;opacity:1}
.inquiry-form :is(input,select,textarea,button,a,summary):focus-visible{outline:2px solid #4c5b47;outline-offset:4px}
.field-help{font-size:12px;line-height:1.8;margin-top:7px;color:#50564d}
.age-input{display:flex;align-items:center;gap:12px}.age-input input{max-width:130px}
.privacy-consent{display:flex;align-items:flex-start;gap:12px;font-size:13px;line-height:2;margin-top:4px}
.privacy-consent input{flex:0 0 auto;width:19px;height:19px;margin:4px 0;accent-color:#343e30}
.privacy-consent a{text-decoration:underline;text-underline-offset:3px}
.form-actions{margin-top:30px;text-align:center}
.submit-inquiry{display:block;width:100%;max-width:440px;min-height:58px;margin:auto;padding:16px 22px;border:1px solid #292d29;background:#292d29;color:#f5efe1;font-family:inherit;font-size:15px;font-weight:500;line-height:1.8;letter-spacing:.02em}
.submit-inquiry:hover{background:#424a3d}
.form-status{font-size:13px;line-height:1.9;margin-top:18px;overflow-wrap:anywhere}
.form-status:empty{display:none}

.contact-form-section [hidden]{display:none!important}.submit-inquiry:disabled{opacity:.6;cursor:wait}.form-status{padding:16px;border:1px solid #787e70;overflow-wrap:anywhere}.form-complete{padding:48px 36px;background:#e6e0d3;border:1px solid #d6cebd}.form-complete h1,.form-complete h2{font-family:inherit;font-size:28px;font-weight:500;line-height:1.6;letter-spacing:.02em}.form-complete p{font-size:14px;line-height:2;margin-top:20px}.form-complete .text-link{margin-top:30px}.form-complete h2:focus{outline:none}
@media(max-width:700px){.page-contact .page-intro{padding-top:30px;padding-bottom:32px}.contact-form-section{padding-top:32px;padding-bottom:55px}.contact-form-heading h2{font-size:21px}.contact-form-heading p{font-size:12px}.contact-form-heading br{display:none}.inquiry-form{padding:24px 18px;margin-top:25px}.form-grid{grid-template-columns:1fr;gap:0}.form-field{margin-bottom:24px}.form-field>label{font-size:13px}.form-field input,.form-field select,.form-field textarea{padding:11px 12px}.privacy-consent{font-size:12px}.submit-inquiry{padding:15px 9px;font-size:14px}.form-complete{padding:32px 20px}.form-complete h1,.form-complete h2{font-size:23px}.form-complete p{font-size:13px}}
