/* Limited to replacement controls and unavailable backend notices. Legacy layout is retained. */
.migration-review {clear:both;padding:20px;margin:16px 0;border:2px solid #2164b0;background:#fff;color:#333;font-size:16px;line-height:1.7;text-align:left;}
.migration-review h2 {font-size:20px;line-height:1.5;}
.migration-review dl>div {display:flex;gap:16px;border-bottom:1px solid #ddd;padding:8px 0;}
.migration-review dt {width:40%;flex-shrink:0;font-weight:bold;}
.migration-review dd {margin:0;overflow-wrap:anywhere;}
.migration-review button {margin:8px;padding:10px;font:inherit;}
form[data-static-form] select,form[method="dialog"] select {color:#333;max-width:100%;}
/* The legacy SP home uses `dl dd {display:none}` for FAQs. Review values stay visible. */
.migration-review dd {display:block;flex:1;min-width:0;color:#333;}
.migration-review button:disabled {opacity:.55;cursor:not-allowed;}
[data-legacy-accordion] {cursor:pointer;}

/* The parent retains its original form placement; only input UI lives in the frame. */
.migration-form-frame {display:block;width:100%;border:0;margin:0;padding:0;background:transparent;}

.migration-input[hidden] {display:none!important;}
.migration-input-error {padding:12px;color:#a00020;background:#fff0f0;font-size:14px;line-height:1.6;}

.migration-step-submit {display:block;width:100%;border:0;padding:0;background:transparent;cursor:pointer;}

/* Keep the form heading artwork in its original parent placement on narrow SP pages. */
.l-form2 .form3-ttl-img,.l-form2 .form3-nav img {max-width:100%;height:auto;}

/* Step state is local to each form. Hidden controls cannot receive focus or block validation. */
[data-migration-step][hidden] {display:none!important;}
.migration-step-next {display:block;width:100%;border:0;padding:0;background:transparent;cursor:pointer;}
.migration-step-next .migration-next-image {display:block!important;width:100%;max-width:270px;height:auto;margin:auto;}
.migration-step-back {display:block!important;width:100%;border:0;padding:0;background:transparent;cursor:pointer;font:inherit;text-decoration:underline;}
.migration-step-next:focus-visible,.migration-step-back:focus-visible {outline:2px solid #2164b0;outline-offset:3px;}

/* Single vehicle summary follows the original input's size and gradient. */
.migration-vehicle-summary {display:block;max-width:100%;border:1px solid #bbb;border-radius:3px;background:linear-gradient(#fff,#d6d6d6);box-sizing:border-box;color:#000;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;font-family:inherit;font-weight:normal;}
.migration-vehicle-summary:focus-visible {outline:3px solid #2164b0;outline-offset:2px;}
.migration-vehicle-field {width:100%;}
/* The native dialog is rendered into the same-origin host's top layer. */
dialog.migration-vehicle-dialog {position:fixed;inset:0;box-sizing:border-box;width:760px;max-width:calc(100vw - 32px);height:500px;max-height:calc(100dvh - 40px);margin:auto;padding:20px;border:1px solid #ccc;border-radius:0;background:#fff;color:#333;overflow:visible;font:14px/1.5 Arial,"メイリオ",sans-serif;text-align:left;}
.migration-vehicle-dialog::backdrop {background:rgba(0,0,0,.5);}
.migration-vehicle-dialog button {font:inherit;cursor:pointer;color:#333;}
.migration-vehicle-dialog button:focus-visible {outline:3px solid #2164b0;outline-offset:-3px;}
.migration-vehicle-dialog-title {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);}
.migration-vehicle-close {position:absolute;top:-21px;right:-15px;z-index:1;width:42px;height:42px;padding:0;border:0;background:transparent;}
.migration-vehicle-close img {display:block;width:42px;height:42px;}
.migration-vehicle-nav {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:21px;margin:0 0 17px;padding:0;}
.migration-vehicle-nav button {position:relative;min-width:0;min-height:66px;margin:0;padding:8px 3px;border:1px solid #ddd;border-radius:4px;background:#ddd;color:#666;text-align:center;}
.migration-vehicle-nav button[aria-current="step"] {border-color:#6ea7e9;background:#6ea7e9;color:#fff;}
.migration-vehicle-nav button:disabled {opacity:.7;cursor:default;}
.migration-vehicle-nav button:not(:last-child)::after {content:"";position:absolute;right:-16px;top:24px;width:9px;height:15px;background:url(/img/navigation_arrow.png) center/contain no-repeat;}
.migration-vehicle-nav small {display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;}
.migration-vehicle-options {height:calc(100% - 83px);overflow:auto;overscroll-behavior:contain;}
.migration-vehicle-options h3,.migration-vehicle-options h4 {margin:0 0 7px;padding:0;font-size:16px;font-weight:bold;color:#333;line-height:1.5;background:none;border:0;}
.migration-vehicle-options h4 {margin-top:10px;font-size:14px;}
.migration-vehicle-options button {box-sizing:border-box;min-height:36px;padding:6px 10px;border:0;background:#fff;text-align:left;overflow-wrap:anywhere;font-size:13px;}
.migration-vehicle-options button:hover {background:#edf5ff;text-decoration:underline;}
.migration-vehicle-conditions {display:grid;}
.migration-vehicle-conditions button {min-height:66px;border-bottom:1px solid #f4f4f4;font-size:18px;padding-left:20px;}
.migration-vehicle-makers {display:grid;grid-template-columns:170px 1fr;gap:40px;}
.migration-vehicle-makers section {min-width:0;}
.migration-vehicle-makers section>div {display:grid;align-content:start;padding:10px;border:1px solid #ddd;}
.migration-vehicle-makers section:last-child>div {grid-template-columns:repeat(3,minmax(0,1fr));}
.migration-vehicle-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;}
@media(max-width:600px){
 dialog.migration-vehicle-dialog {padding:12px;}
 .migration-vehicle-nav {gap:8px;margin-bottom:12px;}
 .migration-vehicle-nav button {font-size:12px;min-height:62px;}
 .migration-vehicle-nav button::after {display:none;}
 .migration-vehicle-makers {grid-template-columns:1fr;gap:16px;}
 .migration-vehicle-makers section>div {grid-template-columns:repeat(2,minmax(0,1fr));}
 .migration-vehicle-makers section:last-child>div {grid-template-columns:repeat(2,minmax(0,1fr));}
 .migration-vehicle-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
}

.formv2-select-arrow::before {pointer-events:none;}

/* Keep the existing required/optional badges; update their presence feedback. */
.migration-input [data-input-feedback="entered"] {background-color:#87bd23;color:#fff;}
.migration-input [data-input-feedback="entered"]::before {content:"OK";background-color:#87bd23;color:#fff;}

/* A confirmation is a complete page view, based on the supplied confirm_new.html. */
html.migration-confirmation-document,html.migration-confirmation-document body {min-width:0!important;width:100%!important;margin:0!important;padding:0!important;background:#fff!important;}
body.migration-confirmation-active > :not([data-confirmation-root]) {display:none!important;}
[data-confirmation-root] {display:block!important;}
.confirmation-page {display:block;min-height:100vh;background:#fff;color:#595331;font:14px/1.5 Arial,"メイリオ",sans-serif;text-align:left;}
.confirmation-page * {box-sizing:border-box;}
.confirmation-page h1,.confirmation-page h2,.confirmation-page p {float:none;width:auto;height:auto;padding:0;border:0;background:none;color:inherit;}
.confirmation-page .header-layer {display:block;width:100%;padding:0;margin:0;background:#fff;}
.confirmation-page .header-layer-inner {position:relative;width:1200px;max-width:100%;margin:0 auto;}
.confirmation-page .header-layer-logo {position:absolute;left:9.5%;top:7.1%;width:9.583%;max-width:115px;}
.confirmation-page .header-layer-logo img,.confirmation-page .header-layer-img {display:block;width:100%;height:auto;}
.confirmation-page .l-form-v2 {width:100%;padding:0 0 60px;background:#f6f5ef;}
.confirmation-page .form-v2-block {width:960px;max-width:100%;margin:0 auto;padding:35px 35px 50px;border:solid #e0e0e0;border-width:0 5px 5px;background:#fff;color:#595331;font-size:14px;line-height:1.5;}
.confirmation-page .form-v2-confirm-ttl {margin:0 0 20px;font-size:26px;font-weight:bold;line-height:1;}
.confirmation-page .form-v2-confirm-txt {margin:0 0 20px;font-size:14px;line-height:1.5;}
.confirmation-page .confirmation-columns {display:flex;justify-content:space-between;gap:16px;}
.confirmation-page .form-v2-left,.confirmation-page .form-v2-right {float:none;width:432px;min-width:0;flex:1;}
.confirmation-page section h2 {margin:0 0 15px;font-size:18px;font-weight:bold;line-height:1.4;}
.confirmation-page table {display:table;width:100%;margin:0;border-collapse:collapse;border-spacing:0;table-layout:fixed;}
.confirmation-page .form-v2-table-left,.confirmation-page .form-v2-table-right {height:350px;}
.confirmation-page th,.confirmation-page td {display:table-cell;float:none;height:auto;padding:14px;border:1px solid #dcdcdc;vertical-align:middle;line-height:1.5;text-align:left;}
.confirmation-page th {width:140px;padding:16px;background:#f4f4f4;color:#595331;font-size:14px;font-weight:bold;}
.confirmation-page td {background:#fff;color:#595331;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;}
.confirmation-page .form-v2-hissu,.confirmation-page .form-v2-nini {display:inline-block;width:26px;margin:0 3px 0 0;padding:3px 0 2px;border-radius:2px;text-align:center;font-size:10px;line-height:1;font-weight:normal;}
.confirmation-page .form-v2-hissu {background:#b61a1a;color:white;}
.confirmation-page .form-v2-hissu::before {content:"必須";}
.confirmation-page .form-v2-nini {background:#ddd;color:#666;}
.confirmation-page .form-v2-nini::before {content:"任意";}
.confirmation-page .l-form-v2-table-bikou {margin:10px 0 40px;}
.confirmation-page .form-v2-table-bikou th {width:270px;}
.confirmation-page .confirmation-actions {text-align:center;margin-top:24px;}
.confirmation-page .confirmation-actions > p {margin:12px 0;font-size:12px;}
.confirmation-page .confirmation-actions > button:not(.confirmation-send) {display:block;margin:16px auto;padding:8px 16px;font:inherit;}
.confirmation-page .confirmation-send {display:block;width:auto;max-width:100%;margin:16px auto;padding:0;border:0;background:transparent;cursor:pointer;}
.confirmation-page .confirmation-send img {display:block;width:auto;max-width:100%;height:auto;margin:auto;}
.confirmation-page .confirmation-send:disabled {cursor:default;opacity:.55;}
.confirmation-page button:focus-visible,.confirmation-page a:focus-visible {outline:3px solid #2164b0;outline-offset:3px;}
.confirmation-page .form-v2-confirm-ssl {margin:20px 0 0;font-size:11px;line-height:1.7;text-align:center;}
.confirmation-page .confirmation-footer {display:block;width:auto;margin:0;padding:15px;text-align:center;background:#fff;font-size:12px;}
.confirmation-page .confirmation-mobile-header {padding:12px 16px;background:#fff;}
.confirmation-page .confirmation-mobile-header img {display:block;width:145px;max-width:100%;height:auto;margin:auto;}
.confirmation-page .confirmation-mobile-banner {display:block;width:100%;height:auto;}
.confirmation-page-mobile .form-v2-block {width:100%;padding:24px 16px;border-width:0;}
.confirmation-page-mobile .confirmation-mobile-table th {width:32%;padding:12px 8px;}
.confirmation-page-mobile .confirmation-mobile-table td {font-size:14px;padding:12px 8px;}
.confirmation-page-mobile .confirmation-mobile-table .form-v2-nini {display:none;}
@media(max-width:700px){
 .confirmation-page .form-v2-block {padding:24px 16px;}
 .confirmation-page .confirmation-columns {display:block;}
 .confirmation-page .form-v2-left,.confirmation-page .form-v2-right {width:100%;margin-bottom:24px;}
 .confirmation-page .form-v2-table-left,.confirmation-page .form-v2-table-right {height:auto;}
 .confirmation-page .form-v2-table-bikou th {width:40%;}
}

.confirmation-page .form-v2-ttl-car,.confirmation-page .form-v2-ttl-guest {margin:0;padding:17px 0 16px;border-radius:5px 5px 0 0;background:#6ea7e9;color:#fff;text-align:center;font-size:18px;line-height:1;font-weight:bold;}
.confirmation-page .form-v2-confirm-ttl,.confirmation-page th {color:#111;}
.confirmation-page .form-v2-table-bikou th {line-height:1.3;}
