.contact-layout{max-width:1248px;margin:32px auto 100px;padding:0 32px;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:72px;align-items:start}.contact-intro{position:sticky;top:32px}.contact-intro .section-en{font-size:40px}.contact-intro h1{font-size:42px;margin:20px 0}.contact-intro>p{font-size:15px}.brochure-card{margin:32px 0;background:var(--mint);border-radius:28px;overflow:hidden}.brochure-card img{width:100%}.brochure-card>div{padding:24px}.brochure-card h2{font-size:23px;margin:8px 0}.brochure-card ul{padding-left:1.2em;font-size:14px}.brochure-card p,.contact-note{font-size:13px}.contact-note a,.consent a{text-decoration:underline;text-underline-offset:3px;color:var(--dark)}.contact-panel{background:#f6f8f4;border-radius:32px;padding:36px;min-width:0}.form-steps{padding:0;list-style:none;display:flex;gap:12px;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:20px;margin:0 0 28px;font-size:14px;font-weight:700;color:#697269}.form-steps [aria-current]{color:var(--brand)}.required-guide{font-size:12px;margin-bottom:24px}.contact-field{display:block;margin:22px 0;font-size:15px;font-weight:700}.contact-field span,legend>span,.required-guide span,.consent b{color:var(--dark);font-size:11px;background:#e0ecda;border-radius:4px;padding:3px 6px;margin-left:6px;font-weight:700}.contact-field small{font-size:12px;font-weight:400;color:#586258}.contact-field input,.contact-field textarea,.contact-field select{display:block;width:100%;margin-top:8px;border:1px solid #aab6a5;background:white;color:var(--ink);border-radius:10px;padding:13px 14px;font:400 16px/1.6 'Noto Sans JP',sans-serif;min-height:52px;box-sizing:border-box}.contact-field textarea{resize:vertical}.contact-field input:focus,.contact-field textarea:focus,.contact-field select:focus{outline:2px solid var(--brand);outline-offset:2px}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-columns .contact-field{margin-block:0}fieldset{border:0;margin:0;padding:0}legend{font-size:15px;font-weight:700;margin-bottom:12px}.purpose-options{display:flex;gap:8px;flex-wrap:wrap}.purpose-options label{display:flex;align-items:center;gap:8px;padding:12px;background:white;border:1px solid #aab6a5;border-radius:10px;font-size:14px;cursor:pointer}.purpose-options label:has(:checked){border-color:var(--brand);background:var(--mint)}input[type=radio],input[type=checkbox]{accent-color:var(--brand);width:20px;height:20px;flex:none}.consent{display:flex;gap:8px;align-items:flex-start;font-size:13px;margin:28px 0}.form-primary{width:100%;border:0}.honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}[hidden]{display:none!important}#confirm-step h2,#complete-step h2{font-size:24px;margin-bottom:24px}#confirmation>div{padding:16px 0;border-bottom:1px solid var(--line)}#confirmation dt{font-size:12px;color:var(--dark);font-weight:700}#confirmation dd{font-size:15px;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:4px}.form-actions{display:flex;gap:16px;margin-top:28px;align-items:center}.form-actions button{border:0}.back-button{background:none;color:var(--dark);text-decoration:underline;min-height:48px}.form-actions .home-button{flex:1}.home-button:disabled{opacity:.6;cursor:wait}#form-error{padding:16px;border:1px solid #b43d2c;color:#922f23;background:#fff0ec;border-radius:12px;margin-bottom:20px;font-size:14px}.complete-mark{display:grid;place-items:center;width:60px;height:60px;border-radius:50%;background:var(--brand);color:white;font-size:30px;margin-bottom:24px}#complete-step p{margin:16px 0;font-size:14px}#receipt{font-size:12px;overflow-wrap:anywhere}.return-link{display:block;margin-top:24px;text-decoration:underline}.contact-footer{text-align:center;padding:28px;font-size:12px;color:var(--muted)}@media(max-width:900px){.contact-layout{gap:32px;grid-template-columns:1fr}.contact-intro{position:static}.brochure-card{display:grid;grid-template-columns:1fr 1fr;align-items:center}.contact-panel{padding:28px}}@media(max-width:560px){.contact-layout{padding:0 20px;margin-top:20px}.contact-intro h1{font-size:32px}.contact-intro .section-en{font-size:30px}.brochure-card{display:block}.brochure-card img{max-height:200px;object-fit:contain}.contact-panel{padding:24px 18px;border-radius:24px}.form-columns{grid-template-columns:1fr;gap:22px}.form-actions{flex-direction:column-reverse}.form-actions .home-button{width:100%}}

/* Contact header follows the edited Figma PC/SP brand block. */
.contact-header{width:100%;height:113px;display:flex;align-items:flex-start}
.contact-brand{display:flex;flex-direction:column;justify-content:center;padding:10px 28px;background:var(--brand);border-radius:0 0 40px 0;box-shadow:0 5px 14px #0000000f;overflow:hidden}
.contact-brand .datsaas-logo{font-size:48px;line-height:1.6;gap:6px;height:77px}
.contact-brand .datsuas-mark{width:77px;height:77px;padding-bottom:3px;border-radius:24px}
.contact-brand .contact-logo-a{letter-spacing:-.64px}
.contact-brand small{font-size:10px;line-height:12px;letter-spacing:.9px;color:white;padding-top:4px}
@media(max-width:560px){.contact-header{height:74.844px}.contact-brand{padding:6.602px 18.485px;border-bottom-right-radius:26.407px;box-shadow:0 3.301px 9.242px #0000000f}.contact-brand .datsaas-logo{font-size:31.78px;gap:3.973px;height:51px}.contact-brand .datsuas-mark{width:50.984px;height:50.984px;padding-bottom:1.986px;border-radius:15.891px}.contact-brand small{font-size:6.602px;line-height:8px;letter-spacing:.5942px;padding-top:2.641px}}

/* Figma keyboard_arrow_down: retain native select interaction, replace only its indicator. */
.contact-field select{appearance:none;-webkit-appearance:none;background-image:url('./figma-assets/contact-chevron-down.svg');background-repeat:no-repeat;background-size:24px 24px;background-position:right 14px center;padding-right:46px}
@media(forced-colors:active){.contact-field select{appearance:auto;-webkit-appearance:auto;background-image:none}}

/* A shared visual treatment for the trigger and its keyboard-accessible listbox. */
.timing-picker{position:relative;margin-top:8px;font-weight:400}
.timing-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:52px;padding:13px 14px;border:1px solid #aab6a5;border-radius:10px;background:#fff;color:var(--ink);font:400 16px/1.6 'Noto Sans JP',sans-serif;text-align:left}
.contact-field .timing-value{margin:0;padding:0;background:none;color:inherit;border-radius:0;font:inherit}
.timing-chevron{width:24px;height:24px;flex:none;transition:transform 180ms ease}
.timing-trigger[aria-expanded=true] .timing-chevron{transform:rotate(180deg)}
.timing-trigger:focus-visible,.timing-trigger[aria-expanded=true]{outline:2px solid var(--brand);outline-offset:2px}
.timing-options{position:absolute;z-index:40;top:calc(100% + 8px);left:0;right:0;margin:0;padding:6px;list-style:none;background:white;border:1px solid #c3cdbf;border-radius:12px;box-shadow:0 8px 24px #183a2024;overflow-y:auto;overscroll-behavior:contain;font:400 16px/1.6 'Noto Sans JP',sans-serif}
.timing-options [role=option]{display:flex;align-items:center;gap:12px;min-height:44px;padding:10px 12px;border-radius:7px;cursor:pointer;overflow-wrap:anywhere}
.timing-options [role=option]::after{content:'';width:18px;flex:none;margin-left:auto}
.timing-options [aria-selected=true]{color:var(--dark);font-weight:700}
.timing-options [aria-selected=true]::after{content:'✓'}
.timing-options .is-active,.timing-options [role=option]:hover{background:var(--mint);color:var(--dark)}
.timing-picker.opens-up .timing-options{top:auto;bottom:calc(100% + 8px)}
@media(prefers-reduced-motion:reduce){.timing-chevron{transition:none}}
@media(forced-colors:active){.timing-options .is-active{outline:2px solid Highlight;outline-offset:-2px}}
