.contact-with-form{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,6vw,96px);align-items:start;text-align:left;padding:clamp(80px,9vw,140px) clamp(22px,5vw,80px);color:#f4f4ed}
.contact-with-form .contact-glow{left:-30%;top:0;opacity:.4}
.contact-intro,.journey-form{position:relative;z-index:1;min-width:0}
.contact-with-form .contact-eyebrow{margin:0 0 24px;color:#9dbe47;font:700 .75rem/1.5 Helvetica,Arial,sans-serif;letter-spacing:.2em}
.contact-with-form h2{margin:0 0 28px;font:700 clamp(1.65rem,2.7vw,2.65rem)/1.6 "Noto Sans JP",Meiryo,sans-serif;letter-spacing:.015em;color:#f4f4ed}
.contact-intro>p{font-size:.95rem;line-height:2.05}
.contact-intro .contact-flow{margin-top:30px;font-size:.85rem;color:#c2c7bc}
.journey-form{width:100%;max-width:680px;padding:clamp(20px,3vw,40px);border:1px solid #41483b;border-radius:18px;background:#131710;box-shadow:0 20px 80px #0002;color:#f4f4ed;font:400 .94rem/1.8 "Noto Sans JP",Meiryo,sans-serif}
.journey-form [hidden]{display:none!important}
.journey-form .form-note{margin:0 0 28px;font-size:.82rem;color:#c5cabc}
.inquiry-field{margin-bottom:24px}
.inquiry-field>label,.inquiry-dates legend{display:block;margin-bottom:9px;font-weight:700}
.inquiry-field>label>span{display:inline-block;margin-left:8px;padding:1px 6px;border-radius:3px;background:#9dbe4722;color:#c9e18d;font-size:.67rem;vertical-align:middle}
.journey-form input:not([type=checkbox]),.journey-form textarea{display:block;box-sizing:border-box;width:100%;min-width:0;padding:12px 14px;border:1px solid #646e59;border-radius:7px;background:#f7f8f2;color:#171d13;font:400 16px/1.6 "Noto Sans JP",Meiryo,sans-serif;letter-spacing:normal;color-scheme:light}
.journey-form input:focus-visible,.journey-form textarea:focus-visible,.journey-form button:focus-visible,.inquiry-privacy summary:focus-visible{outline:3px solid #c8e18b;outline-offset:3px}
.journey-form textarea{resize:vertical;min-height:150px}
.journey-form textarea::placeholder{color:#697160;font-size:.9rem}
.journey-form .field-hint{margin:8px 0 0;color:#bbc3b2;font-size:.76rem;line-height:1.85}
.inquiry-dates{min-width:0;padding:0;margin:4px 0 26px;border:0}
.inquiry-dates legend span{display:block;font-size:.74rem;font-weight:400;color:#bbc3b2}
.inquiry-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.inquiry-date-grid label{display:block;margin-bottom:6px;font-size:.8rem}
.inquiry-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.inquiry-privacy{margin:0 0 20px;padding:14px 0;border-top:1px solid #454d3d;border-bottom:1px solid #454d3d;font-size:.8rem}
.inquiry-privacy summary{cursor:pointer;list-style:revert}
.inquiry-privacy p{margin:12px 0 0;color:#c5cabc;line-height:1.9}
.inquiry-consent{display:flex;align-items:flex-start;gap:10px;font-size:.81rem;cursor:pointer}
.inquiry-consent input{flex:none;width:19px;height:19px;margin:3px 0 0;accent-color:#9dbe47}
.inquiry-status{margin:22px 0 0;color:#d4dcca;font-size:.83rem;white-space:pre-line;overflow-wrap:anywhere}
.inquiry-status.is-error{color:#ffbdad}
.inquiry-status:empty{display:none}
.inquiry-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-top:24px}
.journey-form button{border:0;cursor:pointer;font:700 .9rem/1.6 "Noto Sans JP",Meiryo,sans-serif}
.inquiry-submit{display:flex;justify-content:space-between;align-items:center;gap:20px;flex:1;padding:16px 22px;border-radius:999px;background:#9dbe47;color:#10150c}
.inquiry-submit:disabled{opacity:.5;cursor:default}
.inquiry-back{padding:10px 0;background:none;color:#e1e6da;text-decoration:underline;text-underline-offset:5px}
.inquiry-review h3{margin:0 0 20px;font-size:1.1rem}
.inquiry-review dl{margin:0}
.inquiry-review dt{margin-top:16px;font-weight:700;font-size:.78rem;color:#bdc8b1}
.inquiry-review dd{margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
.inquiry-review>p{margin-top:24px;font-size:.8rem;color:#c5cabc}
.journey-form.is-complete{border-color:#9dbe47}
.journey-form.is-complete .inquiry-status{margin:0;color:#e7eddf;font-size:1rem}
@media(max-width:900px){.contact-with-form{grid-template-columns:1fr;gap:36px}.contact-intro{max-width:680px;width:100%;margin:auto}.journey-form{margin:auto}}
@media(max-width:480px){.contact-with-form{padding:75px 20px}.journey-form{padding:22px 18px}.inquiry-date-grid{grid-template-columns:1fr}.inquiry-actions{flex-direction:column;align-items:stretch}.inquiry-back{order:2}.inquiry-submit{width:100%}}
