.inquiry-dialog-open { overflow: hidden; }
[data-inquiry-form] [hidden] { display: none !important; }
[data-inquiry-form] { min-width: 0; }
[data-inquiry-form] .inquiry-name-fields,
[data-inquiry-form] .inquiry-address-fields {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    grid-column: 1 / -1;
}
[data-inquiry-form] legend {
    padding: 0;
    margin-bottom: 10px;
    font-size: 16px;
    line-height: 1.6;
    font-weight: 700;
}
[data-inquiry-form] legend em {
    color: #a83939;
    font-size: 12px;
    font-style: normal;
    margin-left: 6px;
}
[data-inquiry-form] legend small { font-size: 13px; font-weight: 400; color: #565f62; }
[data-inquiry-form] .inquiry-name-fields__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
.site-brand-refresh [data-inquiry-form] .inquiry-name-fields__grid > .form-field { grid-column: auto !important; width: auto !important; }
[data-inquiry-form] .inquiry-name-fields__grid em { display: none; }
[data-inquiry-form] .inquiry-address-fields { display: grid; gap: 12px; }
[data-inquiry-form] .inquiry-address-fields__postal { display: flex; align-items: flex-end; flex-wrap: wrap; gap: 10px; }
[data-inquiry-form] .inquiry-address-fields__postal .form-field { flex: 0 1 200px; min-width: 130px; }
[data-inquiry-form] .inquiry-address-fields__postal .button { min-height: 46px; padding: 10px 16px; font-size: 14px; white-space: nowrap; flex: 0 0 auto; }
[data-inquiry-form] .inquiry-form-hint { margin: 0; color: #565f62; font-size: 14px; line-height: 1.75; letter-spacing: 0; }
[data-inquiry-form] .inquiry-form-hint:empty { display: none; }
[data-inquiry-form] .inquiry-form-errors { padding: 16px; border-left: 3px solid #ad3030; background: #fff3f1; color: #842525; font-size: 15px; line-height: 1.8; }
[data-inquiry-form] .inquiry-form-errors ul { margin: 8px 0 0; padding-left: 20px; }
[data-inquiry-form] .inquiry-form-errors a { color: inherit; text-decoration: underline; }
[data-inquiry-form] [aria-invalid="true"] { border-color: #ad3030; }
[data-inquiry-form] :is(input, select, textarea) { min-width: 0; max-width: 100%; font-family: inherit; font-size: 16px; }
[data-inquiry-form] :is(.inquiry-name-fields, .inquiry-address-fields) input { width: 100%; min-height: 46px; box-sizing: border-box; }
[data-inquiry-form] .inquiry-terms-gate { display: grid; gap: 10px; padding: 20px 0; border-top: 1px solid #dce3e3; border-bottom: 1px solid #dce3e3; }
[data-inquiry-form] .inquiry-terms-gate strong { font-size: 16px; line-height: 1.7; }
[data-inquiry-form] .inquiry-terms-gate p { margin: 0; font-size: 14px; line-height: 1.75; color: #565f62; }
[data-inquiry-form] .inquiry-terms-gate .is-accepted { color: #116a68; font-weight: 600; }
[data-inquiry-form] .inquiry-terms-gate .button { justify-self: start; }
[data-inquiry-form] .button:disabled { opacity: .5; cursor: not-allowed; pointer-events: auto; }
[data-inquiry-form] .inquiry-dialog {
    width: min(720px, calc(100% - 40px));
    max-width: none;
    max-height: calc(100dvh - 40px);
    margin: auto;
    padding: 0;
    border: 1px solid #dde3e3;
    border-radius: 8px;
    background: #fff;
    color: #222a2b;
    box-shadow: 0 12px 48px #0003;
    overflow: hidden;
    box-sizing: border-box;
    font-family: 'Noto Sans JP', 'Noto Sans', sans-serif;
    text-align: left;
}
.inquiry-dialog::backdrop { background: #131c21a6; }
[data-inquiry-form] .inquiry-dialog__frame { display: flex; flex-direction: column; min-height: 0; max-height: calc(100dvh - 42px); }
[data-inquiry-form] .inquiry-dialog__header { flex: 0 0 auto; padding: 24px 28px 18px; border-bottom: 1px solid #dce3e3; }
[data-inquiry-form] .inquiry-dialog__eyebrow { color: #116a68; font-weight: 700; font-size: 13px; }
[data-inquiry-form] .inquiry-dialog h2 { margin: 6px 0 0; font-size: 24px; line-height: 1.5; letter-spacing: 0; word-break: normal; overflow-wrap: normal; }
[data-inquiry-form] .inquiry-dialog__header p { margin: 8px 0 0; font-size: 14px; line-height: 1.7; }
[data-inquiry-form] .inquiry-dialog__body { flex: 1 1 auto; min-height: 0; padding: 0 28px; overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
[data-inquiry-form] .inquiry-dialog__body:focus-visible { outline: 2px solid #179c99; outline-offset: -3px; }
[data-inquiry-form] .inquiry-dialog__body section { padding: 20px 0; border-bottom: 1px solid #dce3e3; }
[data-inquiry-form] .inquiry-dialog__body h3 { margin: 0 0 8px; font-size: 16px; line-height: 1.65; letter-spacing: 0; }
[data-inquiry-form] .inquiry-dialog__body p { margin: 0; padding: 12px 0; font-size: 15px; line-height: 1.85; }
[data-inquiry-form] .inquiry-dialog__body section p { padding: 0; }
[data-inquiry-form] .inquiry-review-list { margin: 0; }
[data-inquiry-form] .inquiry-review-list > div { display: grid; grid-template-columns: minmax(0, 180px) minmax(0, 1fr); gap: 16px; padding: 16px 0; border-bottom: 1px solid #e1e6e6; }
[data-inquiry-form] .inquiry-review-list dt { color: #565f62; font-size: 14px; line-height: 1.8; font-weight: 500; }
[data-inquiry-form] .inquiry-review-list dd { min-width: 0; margin: 0; font-size: 15px; line-height: 1.8; white-space: pre-wrap; overflow-wrap: anywhere; }
[data-inquiry-form] .inquiry-dialog__footer { flex: 0 0 auto; display: grid; gap: 12px; padding: 16px 28px 20px; border-top: 1px solid #dce3e3; background: #f6f8f8; }
[data-inquiry-form] .inquiry-dialog__actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 12px; }
[data-inquiry-form] .inquiry-dialog__actions .button { min-height: 46px; font-size: 15px; line-height: 1.5; white-space: nowrap; padding: 11px 18px; }
@media (max-width: 600px) {
    [data-inquiry-form] .inquiry-dialog { width: calc(100% - 20px); max-height: calc(100dvh - 24px); }
    [data-inquiry-form] .inquiry-dialog__frame { max-height: calc(100dvh - 26px); }
    [data-inquiry-form] .inquiry-dialog__header { padding: 16px; }
    [data-inquiry-form] .inquiry-dialog h2 { font-size: 20px; }
    [data-inquiry-form] .inquiry-dialog__body { padding: 0 16px; }
    [data-inquiry-form] .inquiry-review-list > div { grid-template-columns: minmax(0, 1fr); gap: 4px; padding: 12px 0; }
    [data-inquiry-form] .inquiry-dialog__footer { padding: 12px 12px max(12px, env(safe-area-inset-bottom)); gap: 10px; }
    [data-inquiry-form] .inquiry-dialog__actions { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px; }
    [data-inquiry-form] .inquiry-dialog__actions .button { width: 100%; min-width: 0; font-size: 13px; padding: 12px 5px; }
    [data-inquiry-form] .inquiry-dialog__actions [data-review-close] { grid-column: 1 / -1; }
    [data-inquiry-form] .inquiry-form-hint { font-size: 13px; }
    [data-inquiry-form] .inquiry-name-fields__grid { gap: 10px; }
    [data-inquiry-form] .inquiry-terms-gate .button { width: 100%; padding-inline: 8px; font-size: 14px; }
}
