.contact{--danger-ink:#b9432f;--danger-bg:#fbeeec;--danger-line:#e7bcb3;--danger-line-strong:#c0503c;--danger-ring:#c0503c1a;--success-ink:#2f7a4f}[data-theme=dark] .contact{--danger-ink:#f2a896;--danger-bg:#2a1815;--danger-line:#5a2d24;--danger-line-strong:#e07760;--danger-ring:#e0776033;--success-ink:#7dc49a}.page-head{padding-block:160px 64px;padding-inline:var(--gutter);max-width:calc(var(--container-max) + var(--gutter) * 2);margin:0 auto}.page-head h1{font-family:fot-matisse-pron,serif;font-weight:500;font-size:var(--fs-h1);letter-spacing:.1em;line-height:1.15;margin-bottom:24px}.page-head .lede{font-family:fot-matisse-pron,serif;font-size:var(--fs-14);letter-spacing:.22em;color:var(--mute)}.contact{max-width:calc(var(--content-form) + var(--gutter) * 2);margin:0 auto;padding-block:16px 120px;padding-inline:var(--gutter);font-family:fot-matisse-pron,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;color:var(--ink-2)}.contact-intro{font-family:fot-matisse-pron,serif;font-size:var(--fs-16);line-height:2;letter-spacing:.06em;margin-bottom:20px}.contact-notes{list-style:none;padding:0 0 40px;margin:0 0 48px;border-bottom:1px solid var(--line-strong);font-family:fot-matisse-pron,serif;font-size:var(--fs-12);line-height:1.9;letter-spacing:.06em;color:var(--mute)}.contact-notes li{position:relative;padding-left:1.2em}.contact-notes li:before{content:"※";position:absolute;left:0;top:0}.contact-form{display:flex;flex-direction:column;gap:28px}.contact-form[hidden]{display:none}.field{display:flex;flex-direction:column;gap:10px}.field-label{font-family:fot-matisse-pron,serif;font-size:var(--fs-14);letter-spacing:.12em;color:var(--ink);display:inline-flex;align-items:center;gap:10px}.field-required{font-family:fot-matisse-pron,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif;font-style:normal;font-size:10px;letter-spacing:.16em;padding:3px 8px;border-radius:3px;background:var(--ink);color:var(--bg)}.field-input{width:100%;padding:14px 16px;border:1px solid var(--line-strong);border-radius:8px;background:var(--paper);font-family:inherit;font-size:var(--fs-14);line-height:1.6;letter-spacing:.04em;color:var(--ink);transition:border-color .2s,box-shadow .2s}.field-input:focus{outline:none;border-color:var(--frame);box-shadow:0 0 0 3px var(--focus-ring)}.field-textarea{resize:vertical;min-height:180px;line-height:1.9}.field-select{appearance:none;background-image:var(--select-arrow);background-repeat:no-repeat;background-position:right 18px center;padding-right:44px}.field-check-wrap{display:flex;flex-direction:column;gap:6px;padding-top:4px}.field-check{display:flex;align-items:center;gap:10px;font-size:var(--fs-14);letter-spacing:.04em;color:var(--ink-2)}.field-check input{width:16px;height:16px;accent-color:var(--ink)}.field-check a{border-bottom:1px solid var(--line-strong)}.field-check a:hover{color:var(--ink)}.field-error{display:block;font-size:var(--fs-12);line-height:1.6;letter-spacing:.04em;color:var(--danger-ink);padding-left:2px}.field-error[hidden]{display:none}.field--error .field-input{border-color:var(--danger-line-strong);background:var(--danger-bg)}.field--error .field-input:focus{border-color:var(--danger-line-strong);box-shadow:0 0 0 3px var(--danger-ring)}.field-check-wrap.field--error .field-check input{outline:2px solid var(--danger-line-strong);outline-offset:2px}.field-error--check{padding-left:26px}.form-alert{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;border:1px solid var(--danger-line);border-left:3px solid var(--danger-line-strong);border-radius:8px;background:var(--danger-bg);color:var(--danger-ink)}.form-alert[hidden]{display:none}.form-alert-icon{width:20px;height:20px;flex:0 0 20px;margin-top:1px;color:var(--danger-line-strong)}.form-alert-body{flex:1;min-width:0}.form-alert-title{font-family:fot-matisse-pron,serif;font-size:var(--fs-14);font-weight:500;letter-spacing:.08em;line-height:1.5;color:var(--danger-ink);margin-bottom:4px}.form-alert-message{font-size:var(--fs-12);line-height:1.75;letter-spacing:.04em;color:var(--danger-ink)}.form-actions{margin-top:16px;display:flex;flex-direction:column;align-items:center;gap:16px}.form-turnstile{display:flex;justify-content:center;width:100%;min-height:65px}.submit-btn{gap:16px;padding:18px 44px;font-family:fot-matisse-pron,serif;letter-spacing:.12em}.submit-btn-arrow,.submit-btn-spinner{width:14px;height:14px}.submit-btn-spinner{display:none;animation:submit-spin .8s linear infinite}.submit-btn--loading .submit-btn-arrow{display:none}.submit-btn--loading .submit-btn-spinner{display:block}@keyframes submit-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.submit-btn-spinner{animation-duration:1.6s}}.field-honeypot{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.submit-btn:disabled:hover{background:var(--paper);color:var(--ink)}.form-success{margin-top:32px;padding:48px 32px;text-align:center}.form-success[hidden]{display:none}.form-success-icon{width:44px;height:44px;margin:0 auto 16px;color:var(--success-ink)}.form-success h2{font-family:fot-matisse-pron,serif;font-weight:500;font-size:var(--fs-20);letter-spacing:.12em;line-height:1.6;color:var(--ink);margin-bottom:16px}.form-success p{font-family:fot-matisse-pron,serif;font-size:var(--fs-14);line-height:2;letter-spacing:.06em;color:var(--ink-2)}.contact-br{display:inline}@media(max-width:900px){.page-head{padding-block:96px 40px}.contact{padding-block:8px 80px}.contact-intro{font-size:var(--fs-14);line-height:1.9}.contact-br{display:none}.submit-btn{width:100%;justify-content:center}.form-success{padding:32px 20px}.form-alert{padding:14px 16px}.form-alert-title,.form-alert-message{font-size:var(--fs-12)}.field-input{font-size:16px}.form-turnstile{min-width:0;overflow:hidden}}
