/* Approved home imagery, roster, entry poses and president footer. */

.st-brand-a .top-intro__link__illust.st-home-driver { top: 16px !important; bottom: 16px !important; left: 24px !important; width: 140px !important; height: calc(100% - 32px) !important; border-radius: 10px; }

.st-brand-a .top-intro__link__illust.st-home-driver img { position: static !important; width: 100% !important; height: 100% !important; max-width: 100% !important; margin: 0 !important; object-fit: contain !important; object-position: center !important; }

.st-ride-card--community .st-ride-card__visual { border-radius:0 !important; clip-path:none !important; }

.st-ride-card--community .st-ride-card__visual img { object-fit:cover !important; object-position:center 60% !important; }



.top-recruit__body > .st-inner-full { display: block !important; min-height: 0 !important; }

.top-recruit__contents { margin: 0 auto 36px !important; max-width: 1200px; translate: none !important; }

.top-recruit__txt { width: auto !important; }

.top-recruit__team.st-roster-grid { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: 12px; position: relative; max-width: 1200px; margin: 0 auto; }

.top-recruit__team img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: cover; object-position: center top; border-radius: 10px; border: 2px solid #10275a; }

.top-recruit__body { padding-top: 80px !important; }

.top-recruit__lists .top-recruit__list { padding: 18px 0 24px !important; margin: 0 !important; overflow: hidden !important; }

.top-recruit__lists .st-loop__content { gap: 16px !important; }

.top-recruit .st-entry-card { flex: none; width: 430px !important; margin: 0 !important; }

.st-brand-a .top-recruit .st-entry-card > a { display: grid !important; grid-template-columns: minmax(0,1fr) 172px; grid-template-rows: 1fr auto; gap: 12px; width: 100% !important; height: 256px !important; padding: 20px 20px 20px 24px !important; transform: none !important; overflow: hidden; }

.st-brand-a .top-recruit .st-entry-card__ja { grid-column: 1; grid-row: 1; align-self: center; font-size: 21px !important; line-height: 1.5; white-space: normal; }

.st-brand-a .top-recruit .st-entry-card__en { grid-column: 1; grid-row: 2; margin: 0 !important; }

.st-brand-a .top-recruit .st-entry-card__en > span { font-size: 42px !important; }

.top-recruit .st-entry-card .st-entry-card__pose { position: relative !important; inset: auto !important; width: 172px !important; height: 216px !important; grid-column: 2; grid-row: 1 / 3; align-self: center; }

.top-recruit .st-entry-card__pose img { display: block; position: relative !important; inset: auto !important; width: 100% !important; height: 100% !important; object-fit: contain; object-position: center bottom; }



.top-history__screen, .top-history__figure.st-people { height: 440px !important; }

.st-people__row.st-people__roster { display: grid !important; grid-template-columns: 1fr 1fr 1.8fr 1fr 1fr; align-items: end; gap: 14px; max-width: 1100px; width: 92% !important; height: auto !important; bottom: 24px !important; margin: 0 auto; }

.st-people__roster > img { position: relative !important; inset: auto !important; width: 100% !important; height: auto !important; max-height: none !important; translate: none !important; transform: none !important; object-fit: contain !important; }

.st-people__roster > img.st-people__president { height: 300px !important; }

.st-people__roster > img:not(.st-people__president) { height: 180px !important; object-fit: cover !important; border-radius: 12px; border: 2px solid #10275a; margin-bottom: 20px; }

.st-members__people.st-members__people--roster { display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)); align-items: start; gap: 12px; height: auto !important; width: 100% !important; }

.st-members__people--roster > img { display: block; position: relative !important; inset: auto !important; width: 100% !important; height: auto !important; transform: none !important; aspect-ratio: 3 / 4; object-fit: cover; border: 2px solid #10275a; border-radius: 10px; }

.st-training__figures .st-training__portrait { object-fit: contain !important; border-radius: 10px; }



.kv__people.kv__people--roster { display: flex; align-items: end; justify-content: center; width: min(1000px,86vw) !important; height: auto !important; aspect-ratio: 2.4 / 1; bottom: 14px !important; }

.kv__roster-grid { position: absolute; inset: 0; display: grid; grid-template-columns: repeat(8,minmax(0,1fr)); align-items: center; gap: 12px; }

.kv__roster-grid img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: cover; border-radius: 12px; border: 2px solid #10275a; }

.kv__people--roster > .kv__roster-boss { position: relative; z-index: 1; width: 25%; max-height: 100%; height: auto; object-fit: contain; object-position: bottom; }



.st-footer .st-footer__sub { min-width: 0 !important; height: auto !important; min-height: 0 !important; padding: 44px 24px 32px !important; justify-content: flex-start !important; overflow: visible !important; }

.st-footer .st-footer__sub .st-footer__logo { position: relative !important; inset: auto !important; width: 220px !important; margin: 0 auto !important; }

.st-footer .st-footer__sub .st-footer-hours { margin: 20px auto 0 !important; }

.st-footer .st-footer__sub .st-footer-hours .st-hours__en { font-size: 16px !important; }

.st-footer .st-footer__sub .st-footer-hours .st-hours__time { font-size: 30px !important; }

.st-footer .st-footer__sub .st-footer-hours .st-hours__note { font-size: 14px !important; line-height: 1.6; }

.st-footer .st-footer__illust-1 { position: relative !important; inset: auto !important; width: 100% !important; max-width: 400px; height: auto !important; margin: 28px auto 0 !important; transform: none !important; translate: none !important; }

.st-footer .st-footer__illust-1 .st-art.st-boss { display: flex !important; flex-direction: column; align-items: center; position: relative !important; inset: auto !important; width: 100% !important; height: auto !important; transform: none !important; overflow: visible !important; }

.st-footer .st-art.st-boss .st-boss__mask { display: block !important; position: relative !important; inset: auto !important; width: 320px !important; max-width: 100%; height: auto !important; overflow: visible !important; }

.st-footer .st-boss__mask img { display: block !important; position: relative !important; inset: auto !important; width: 100% !important; height: auto !important; object-fit: contain !important; transform: none !important; }

.st-footer .st-boss__bubble.c-bubble { position: relative !important; inset: auto !important; transform: none !important; width: 100% !important; max-width: 360px !important; min-height: 72px; margin: 0 auto 28px !important; padding: 14px 18px !important; font-size: 20px !important; line-height: 1.6 !important; opacity: 1 !important; z-index: 2; }

.st-footer .st-footer__illust-1 > a { display: none !important; }



@media (max-width: 1023px) {

  .st-brand-a .top-intro__link__illust.st-home-driver { top: 12px !important; bottom: 12px !important; left: 20px !important; width: 96px !important; height: calc(100% - 24px) !important; }

  .top-recruit__contents { margin-bottom: 28px !important; }

  .top-recruit__team.st-roster-grid { grid-template-columns: repeat(8,minmax(0,1fr)); gap: 10px; }

  .top-recruit__body { padding-top: 60px !important; }

  .kv__people.kv__people--roster { width: min(680px,88vw) !important; aspect-ratio: 1.2 / 1; bottom: 12px !important; }

  .kv__roster-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }

  .kv__people--roster > .kv__roster-boss { width: 38%; }

  .st-footer .st-art.st-boss .st-boss__mask { width: 300px !important; }

  .st-footer .st-boss__bubble.c-bubble { font-size: 19px !important; }

}

@media (max-width: 599px) {

  .top-recruit__team.st-roster-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; }

  .top-recruit__team img { border-radius: 7px; }

  .top-recruit__contents { margin-bottom: 24px !important; }

  .st-brand-a .top-recruit__txt { font-size: 16px !important; }

  .top-recruit .st-entry-card { width: 344px !important; }

  .st-brand-a .top-recruit .st-entry-card > a { grid-template-columns: minmax(0,1fr) 146px; gap: 8px; height: 238px !important; padding: 18px !important; }

  .st-brand-a .top-recruit .st-entry-card__ja { font-size: 18px !important; }

  .st-brand-a .top-recruit .st-entry-card__en > span { font-size: 34px !important; }

  .top-recruit .st-entry-card .st-entry-card__pose { width: 146px !important; height: 198px !important; }

  .st-people__row.st-people__roster { width: 96% !important; gap: 6px; }

  .top-history__screen, .top-history__figure.st-people { height: 340px !important; }

  .st-people__roster > img.st-people__president { height: 230px !important; }

  .st-people__roster > img:not(.st-people__president) { height: auto !important; }

  .st-people__roster > img:not(.st-people__president) { margin-bottom: 8px; border-width: 1px; border-radius: 7px; }

  .st-members__people.st-members__people--roster { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 7px; }

  .kv__people.kv__people--roster { width: 88vw !important; aspect-ratio: .72 / 1; }

  .kv__roster-grid { gap: 10px; align-content: start; padding-top: 16px; }

  .kv__roster-grid img { border-radius: 7px; }

  .kv__people--roster > .kv__roster-boss { width: 58%; }

  .st-footer .st-footer__sub { padding: 32px 22px 24px !important; }

  .st-footer .st-footer__sub .st-footer__logo { width: 190px !important; }

  .st-footer .st-art.st-boss .st-boss__mask { width: 270px !important; }

  .st-footer .st-boss__bubble.c-bubble { max-width: 330px !important; font-size: 18px !important; min-height: 68px; padding: 14px 16px !important; }

}



/* 2026-10-07: public-page responsive corrections (360–1440px). */

.st-manifesto__photo picture { display:block; width:100%; height:100%; }

.st-manifesto__photo img { aspect-ratio:16/11; }

.st-guide { display:grid; grid-template-columns:minmax(0,1fr) 240px; align-items:center; gap:28px; min-height:0; margin-top:40px; }

.st-guide .st-guide__bubble { position:relative; inset:auto; max-width:none; width:auto; font-size:18px; line-height:1.9; }

.st-guide .st-guide__chara { position:relative; inset:auto; width:100%; margin:0; }

.st-guide__chara img { width:100%; height:auto; }

.kv__people.kv__people--roster { display:grid; grid-template-columns:minmax(0,1fr) 170px; gap:24px; align-items:end; aspect-ratio:auto; width:min(960px,86vw)!important; }

.kv__roster-grid { position:static; inset:auto; grid-template-columns:repeat(8,minmax(0,1fr)); gap:10px; align-items:end; }

.kv__people--roster > .kv__roster-boss { width:100%; max-height:none; }

body.page-news .sub-main .st-sec__inner > h1 { font-size:clamp(28px,4vw,38px)!important; line-height:1.45; overflow-wrap:anywhere; }

.page-recruit3 .tw-table td:last-child { white-space:normal; overflow-wrap:anywhere; }

@media (max-width:1023px) {

  .st-brand-a .st-menu__close { position:fixed; top:max(12px,env(safe-area-inset-top)); right:12px; width:52px; height:52px; padding:0; display:grid; place-items:center; border:2px solid #fff; background:#04225c!important; z-index:100; }

  .st-brand-a .st-menu__close__icon { display:block!important; position:relative; width:22px; height:22px; }

  .st-brand-a .st-menu__close__icon span { position:absolute; left:0; top:10px; width:22px; height:2px; background:#fff; }

  .st-brand-a .st-menu__close__icon span:first-child { transform:rotate(45deg); }

  .st-brand-a .st-menu__close__icon span:last-child { transform:rotate(-45deg); }

  .st-brand-a .st-menu__close__txt { display:none!important; }

  .st-fab { right:12px!important; bottom:calc(12px + env(safe-area-inset-bottom))!important; }

  .st-fab__btn { width:56px!important; height:56px!important; }

  .st-fab__btn__txt { font-size:11px!important; }

  .st-fab__panel { right:0; max-width:calc(100vw - 24px); }

  .st-guide { grid-template-columns:minmax(0,1fr) 180px; gap:20px; margin-top:28px; }

  .st-guide .st-guide__bubble { font-size:16px; padding:20px; }

  .st-journey__list { display:grid; grid-template-columns:1fr; gap:24px; }

  .st-journey__list::before,.st-journey__item::after { display:none; }

  .st-journey__item { display:grid; grid-template-columns:140px minmax(0,1fr); gap:16px 24px; align-items:center; padding:24px; }

  .st-journey__title { grid-column:1/-1; margin:0; }

  .st-journey__art { margin:0; padding:12px; aspect-ratio:4/3; width:100%; }

  .st-journey__body { margin:0; font-size:16px; line-height:1.9; }

  .page-flow .st-table { min-width:0; table-layout:fixed; }

  .page-flow .st-table th,.page-flow .st-table td { font-size:15px; padding:16px; overflow-wrap:anywhere; }

  .page-flow .st-table th:first-child { width:23%; }

  .page-flow .st-table thead th:nth-child(2) { width:19%; }

  .page-recruit3 .tw-table table { min-width:0; table-layout:fixed; font-size:15px; }

  .page-recruit3 .tw-table th,.page-recruit3 .tw-table td { padding:14px; }

  .page-recruit3 .tw-table thead th:first-child { width:24%; }

  .page-recruit3 .tw-table thead th:last-child { width:25%; }

  .page-recruit3 .tw-table td:last-child { font-size:13px; }

  .page-recruit3 .st-header__logo a,.page-recruit2 .st-header__logo a,.page-lens .st-header__logo a { display:block; padding:8px 12px; background:#fffdf4; border-radius:8px; }

  .page-recruit main :is(.intro__body p,.voice__b p,.msg p,.cost__row span,.cost__total span,.flow__lead,.flowc__x,.oneday__lead,.oneday__meta,.dayrow__x,.fit__lead,.fitq__a,.mangab__lead,.deal__lead,.step p,.hline p,.req dd,.entry p) { font-size:16px; line-height:1.9; }

  .page-recruit main :is(.eyebrow,.voice__r,.cost__note,.fit__note,.deal__cap,.req dt,.entry__note,.num dt,.num p,.train__ph figcaption) { font-size:14px; line-height:1.8; }

  .page-recruit .fitq__opts label { font-size:15px; }

  .page-recruit .fitq__q { font-size:20px; }

  .page-recruit .voice__t { font-size:20px; }

  .page-recruit .req__row { grid-template-columns:1fr; }

  .page-recruit .req dt { padding:16px 20px 0; background:#fff; }

  .page-recruit .req dd { padding:8px 20px 20px; }

  /* Small screens read the same six leads in document order; the desktop keeps its pinned scene. */

  .page-recruit .kv { height:auto; min-height:0; overflow:hidden; visibility:visible; padding:168px 24px 32px; display:flex; flex-direction:column; }

  .page-recruit .kv__layer { position:relative; inset:auto; will-change:auto; }

  .page-recruit .kv__track { position:static; inset:auto; display:block; width:auto; height:auto; transform:none!important; }

  .page-recruit .kv__panel { width:auto; height:auto; }

  .page-recruit .kv__z1 .kv__panel:not(:first-child),.page-recruit .kvph,.page-recruit .kvroad,.page-recruit .kvcar,.page-recruit .kvcopy,.page-recruit .kv__bar { display:none; }

  .page-recruit .kv__catch--c { font-weight:700; position:static; padding:0; font-size:clamp(32px,7vw,52px); line-height:1.4; white-space:normal; text-align:left; }

  .page-recruit .kv__catch--c em>span { transform:none; opacity:1; }

  .page-recruit .kv__people.kv__people--roster { position:relative; left:auto; bottom:auto!important; transform:none!important; opacity:1!important; width:100%!important; height:auto!important; margin:24px 0; grid-template-columns:minmax(0,1fr) 160px; gap:20px; }

  .page-recruit .kv__roster-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }

  .page-recruit .kv__lead { position:static; font-size:16px; line-height:1.85; opacity:1!important; transform:none!important; margin:0; }

  .page-recruit .kv__lead span { background:none; box-shadow:none; }

  .page-recruit .kv__lead i { display:none; }

  .page-recruit .kv__z3 .kv__track { display:grid; grid-template-columns:1fr 1fr; gap:24px; }

  .page-recruit .kv__z3 .kv__panel:first-child { grid-column:1/-1; }

  .page-recruit .kv__z3 .kv__panel:first-child .kv__lead { font-size:22px; font-weight:800; }

  .page-recruit .kv__ui { position:static; display:flex; justify-content:space-between; align-items:center; margin-top:28px; }

  .page-recruit .kv__skip { font-size:14px; min-height:44px; }

  .page-recruit .kv__since { position:static; }

  .page-recruit .flow__stage { height:auto; min-height:0; padding:56px 0; }

  .page-recruit .flow__view { overflow:visible; }

  .page-recruit .flow__track { width:auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; padding:0 24px; transform:none!important; will-change:auto; }

  .page-recruit .flowc { width:auto; height:auto; min-width:0; }

  .page-recruit .flowc__ph { flex:none; aspect-ratio:4/3; }

  .page-recruit .flowc__t { font-size:21px; }

  .page-recruit .flow__bar { display:none; }

  .st-history-title { white-space:normal!important; font-size:clamp(25px,6.5vw,40px)!important; line-height:1.4; }

  .top-problems h2 { overflow-wrap:normal; text-wrap:balance; }

}

@media (min-width:600px) and (max-width:1023px) {

  .page-recruit2 .rc-hero__media img,.page-lens .rc-hero__media img { object-fit:contain; object-position:center top; }

  .page-recruit2 .rc-hero__media,.page-lens .rc-hero__media { background:#b7d2dd; }

  .st-bento__grid { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:auto; gap:16px; }

  .st-bento__panel { grid-area:auto; grid-column:auto; min-height:230px; padding:24px; }

  .st-bento__years { min-height:230px; }

  .st-bento__years .st-bento__number { font-size:88px; }

  .st-bento__time { font-size:clamp(30px,4.5vw,40px); }

  .st-bento__small { font-size:14px; }

  .st-bento__days { flex-direction:column; align-items:flex-start; }

  .st-bento__rides { grid-column:1/-1; min-height:180px; }

}

@media (max-width:767px) {

  .st-guide { grid-template-columns:1fr; gap:18px; }

  .st-guide .st-guide__bubble { width:100%; }

  .st-guide .st-guide__chara { width:180px; justify-self:end; }

  .st-guide .c-bubble::before { top:auto; right:50px; bottom:-12px; left:auto; transform:rotate(90deg); }

  .st-guide .c-bubble::after { top:auto; right:53px; bottom:-8px; left:auto; transform:rotate(90deg); }

  .page-flow .st-table__wrap,.page-recruit3 .tw-table { overflow:visible; }

  .page-flow .st-table,.page-flow .st-table tbody,.page-flow .st-table tr,.page-flow .st-table th,.page-flow .st-table td,.page-recruit3 .tw-table table,.page-recruit3 .tw-table tbody,.page-recruit3 .tw-table tr,.page-recruit3 .tw-table td { display:block; width:100%; min-width:0; }

  .page-flow .st-table thead,.page-recruit3 .tw-table thead { display:none; }

  .page-flow .st-table tbody tr,.page-recruit3 .tw-table tbody tr { margin-bottom:16px; border:1px solid #d7dde8; border-radius:8px; overflow:hidden; background:#fff; }

  .page-flow .st-table tbody th:first-child { width:100%; background:#04225c; color:#fff; padding:14px 18px; font-size:18px; }

  .page-flow .st-table td { padding:12px 18px; border:0; font-size:16px; }

  .page-flow .st-table td:first-of-type { font-weight:800; background:#f2f5f8; }

  .page-recruit3 .tw-table td { padding:14px 18px; border:0; font-size:16px; }

  .page-recruit3 .tw-table td::before { content:attr(data-label); display:block; font-size:12px; font-weight:700; letter-spacing:.08em; margin-bottom:6px; }

  .page-recruit3 .tw-table td:first-child { background:#04225c; color:#fff; }

  .page-recruit3 .tw-table td:last-child { font-size:14px; background:#f2f5f8; }

  .st-journey__item { grid-template-columns:96px minmax(0,1fr); gap:14px; padding:20px 16px; }

  .st-journey__title { font-size:21px; }

  .st-journey__art { padding:8px; }

}

@media (max-width:599px) {

  .page-recruit .kv { padding:168px 20px 28px; }

  .page-recruit .kv__people.kv__people--roster { grid-template-columns:1fr; gap:20px; }

  .page-recruit .kv__people--roster > .kv__roster-boss { width:128px; justify-self:center; }

  .page-recruit .kv__roster-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }

  .page-recruit .kv__roster-grid img { border-width:1px; border-radius:6px; }

  .page-recruit .kv__z3 .kv__track { grid-template-columns:1fr; gap:18px; }

  .page-recruit .flow__track { grid-template-columns:1fr; padding-inline:20px; }

  .page-recruit .flowc__ph { aspect-ratio:3/2; }

  .page-comic2 .st-fab { bottom:calc(76px + env(safe-area-inset-bottom))!important; }

  .page-comic2 { padding-bottom:64px; }

  .top-intro__title { width:100%; max-width:100%; }

}



@media(max-width:1023px){.page-recruit .flow > .st-pyon{position:relative;inset:auto;display:block;width:160px;margin:0 24px 0 auto;transform:none}.page-recruit .flow__stage{padding-top:16px}}



@media(max-width:1023px){.page-flow .st-table__wrap::after{display:none}}



@media(min-width:600px) and (max-width:1023px){.st-jump.st-jump--visual{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.st-jump--visual .st-jump__ttl{font-size:22px}.st-jump__photo{aspect-ratio:3/2}}

@media(max-width:1023px){.page-recruit .kv__catch--c em{font-weight:inherit}}



@media(min-width:768px) and (max-width:1023px){.st-jump.st-jump--visual:has(>.st-jump__link:nth-child(3):last-child){grid-template-columns:repeat(3,minmax(0,1fr))}.st-jump__body{padding:20px 20px 80px}.st-jump__photo{aspect-ratio:4/3}}

.page-recruit3 .st-header__logo a,.page-recruit2 .st-header__logo a,.page-lens .st-header__logo a{display:block;padding:8px 12px;background:#fffdf4;border-radius:8px}


.st-guide .st-guide__chara img{position:static;display:block;transform:none;width:100%;height:auto}

@media(max-width:1023px){.page-lens .ln-hero__media img{object-position:center top}}
@media(min-width:600px) and (max-width:1023px){.page-lens .ln-hero__media img{object-fit:contain}.page-lens .ln-hero__media{background:#0b2a66}}
@media(max-width:767px){.st-footer>.st-pyon{left:12px;right:auto;bottom:16px;--pyon-h:80px}}

/* Preserve the crosswalk scene at the full card width. */


@media(max-width:767px) { html:has(body.page-legacy), body.page-legacy { overflow-x:hidden; } }

/* Wide tablets keep recruitment scenes in reading order. */
@media (min-width:1024px) and (max-width:1279px) {
  .page-recruit main :is(.intro__body p,.voice__b p,.msg p,.cost__row span,.cost__total span,.flow__lead,.flowc__x,.oneday__lead,.oneday__meta,.dayrow__x,.fit__lead,.fitq__a,.mangab__lead,.deal__lead,.step p,.hline p,.req dd,.entry p) { font-size:16px; line-height:1.9; }

  .page-recruit main :is(.eyebrow,.voice__r,.cost__note,.fit__note,.deal__cap,.req dt,.entry__note,.num dt,.num p,.train__ph figcaption) { font-size:14px; line-height:1.8; }

  .page-recruit .fitq__opts label { font-size:15px; }

  .page-recruit .fitq__q { font-size:20px; }

  .page-recruit .voice__t { font-size:20px; }

  .page-recruit .req__row { grid-template-columns:1fr; }

  .page-recruit .req dt { padding:16px 20px 0; background:#fff; }

  .page-recruit .req dd { padding:8px 20px 20px; }

  /* Small screens read the same six leads in document order; the desktop keeps its pinned scene. */

  .page-recruit .kv { height:auto; min-height:0; overflow:hidden; visibility:visible; padding:168px 24px 32px; display:flex; flex-direction:column; }

  .page-recruit .kv__layer { position:relative; inset:auto; will-change:auto; }

  .page-recruit .kv__track { position:static; inset:auto; display:block; width:auto; height:auto; transform:none!important; }

  .page-recruit .kv__panel { width:auto; height:auto; }

  .page-recruit .kv__z1 .kv__panel:not(:first-child),.page-recruit .kvph,.page-recruit .kvroad,.page-recruit .kvcar,.page-recruit .kvcopy,.page-recruit .kv__bar { display:none; }

  .page-recruit .kv__catch--c { font-weight:700; position:static; padding:0; font-size:clamp(32px,7vw,52px); line-height:1.4; white-space:normal; text-align:left; }

  .page-recruit .kv__catch--c em>span { transform:none; opacity:1; }

  .page-recruit .kv__people.kv__people--roster { position:relative; left:auto; bottom:auto!important; transform:none!important; opacity:1!important; width:100%!important; height:auto!important; margin:24px 0; grid-template-columns:minmax(0,1fr) 160px; gap:20px; }

  .page-recruit .kv__roster-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }

  .page-recruit .kv__lead { position:static; font-size:16px; line-height:1.85; opacity:1!important; transform:none!important; margin:0; }

  .page-recruit .kv__lead span { background:none; box-shadow:none; }

  .page-recruit .kv__lead i { display:none; }

  .page-recruit .kv__z3 .kv__track { display:grid; grid-template-columns:1fr 1fr; gap:24px; }

  .page-recruit .kv__z3 .kv__panel:first-child { grid-column:1/-1; }

  .page-recruit .kv__z3 .kv__panel:first-child .kv__lead { font-size:22px; font-weight:800; }

  .page-recruit .kv__ui { position:static; display:flex; justify-content:space-between; align-items:center; margin-top:28px; }

  .page-recruit .kv__skip { font-size:14px; min-height:44px; }

  .page-recruit .kv__since { position:static; }

  .page-recruit .flow__stage { height:auto; min-height:0; padding:56px 0; }

  .page-recruit .flow__view { overflow:visible; }

  .page-recruit .flow__track { width:auto; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; padding:0 24px; transform:none!important; will-change:auto; }

  .page-recruit .flowc { width:auto; height:auto; min-width:0; }

  .page-recruit .flowc__ph { flex:none; aspect-ratio:4/3; }

  .page-recruit .flowc__t { font-size:21px; }

  .page-recruit .flow__bar { display:none; }

}
@media(max-width:767px) { .page-legacy :is(h1,h2,h3) { text-wrap:balance; } }

/* Keep the duplicate accessible fare table out of visual layout. */
.page-legacy .sr { position:fixed !important; left:0 !important; top:0 !important; width:1px !important; max-width:1px !important; height:1px !important; overflow:hidden !important; clip:rect(0,0,0,0); clip-path:inset(50%); white-space:nowrap; }

/* Community card has its own surface and shares the adjacent cards' image geometry. */
.st-brand-a .st-ride-card--community { background:#ffe066 !important; color:var(--st-navy) !important; }
.st-brand-a .st-ride-card--community .st-ride-card__arrow { background:var(--st-navy) !important; color:#fff !important; }

/* Keep the driver's face within the shared card image height. */
.st-ride-card--flow .st-ride-card__visual img { object-position:center top !important; }

/* Compact laptop hero, with the background video exactly filling one viewport. */
@media(min-width:1024px) {
 .top-main { --hero-slope-height:0px; }
 .top-fv { height:100svh !important; min-height:0 !important; max-height:none !important; }
 .st-kv-actions { top:auto !important; bottom:28px !important; }
}

/* Remove the two ornamental bands between the introduction and services. */
.st-brand-a .top-intro::after,.st-brand-a .top-service::before { display:none !important; content:none !important; }

/* Four full-body character slots flank the unchanged president artwork. */
.st-brand-a .top-history__figure.st-people { --people-height:clamp(160px,25vw,320px); height:calc(var(--people-height) + 48px) !important; transform:none !important; will-change:auto; }
.st-brand-a .top-history .st-people__row.st-people__roster { display:flex !important; align-items:flex-end !important; justify-content:center !important; gap:clamp(8px,1.7vw,28px); height:var(--people-height) !important; width:92% !important; bottom:24px !important; top:auto !important; overflow:visible !important; transform:none !important; translate:none !important; }
.st-history-person { display:block; position:relative; flex:0 0 calc(var(--people-height) * .325); width:calc(var(--people-height) * .325); height:var(--people-height); overflow:hidden; }
.st-history-person img { display:block; position:absolute !important; top:0 !important; width:calc(var(--people-height) * 1.5) !important; max-width:none !important; height:var(--people-height) !important; object-fit:contain !important; border:0 !important; border-radius:0 !important; margin:0 !important; transform:none !important; }
.st-history-person--senior img { left:0 !important; }
.st-history-person--adult img { left:calc(var(--people-height) * -.329) !important; }
.st-history-person--young img { left:calc(var(--people-height) * -.851) !important; }
.st-history-person--woman img { left:calc(var(--people-height) * -1.181640625) !important; }
.st-brand-a .top-history .st-people__roster > img.st-people__president { flex:0 0 auto; width:calc(var(--people-height) * .525) !important; height:calc(var(--people-height) * .928) !important; margin-bottom:calc(var(--people-height) * .029); object-fit:contain !important; border:0; border-radius:0; }
.st-brand-a .top-history__figure::before { height:16px !important; bottom:0 !important; }
.st-brand-a .top-history .st-history-card { margin-top:24px !important; }

/* The recruitment copy and one transparent full-body team image share a row. */
.top-recruit__body > .st-inner-full { display:grid !important; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); align-items:center; gap:36px; width:calc(100% - 48px); max-width:1240px; padding:0 !important; margin-inline:auto; }
.top-recruit__contents { margin:0 !important; max-width:none; min-width:0; }
.st-brand-a .top-recruit__title { font-size:clamp(38px,5vw,72px) !important; }
.top-recruit__team.st-team-fullbody { position:relative; inset:auto; width:100%; min-width:0; margin:0; }
.top-recruit__team.st-team-fullbody img { display:block; width:100%; height:auto; aspect-ratio:auto; object-fit:contain; border:0; border-radius:0; }
@media(max-width:767px) {
 .top-recruit__body > .st-inner-full { grid-template-columns:1fr; gap:28px; }
 .top-recruit__team.st-team-fullbody { max-width:600px; margin-inline:auto; }
}

/* Retain a readable speech bubble while reducing the footer character. */
.st-footer .st-footer__illust-1 .st-art.st-boss .st-boss__mask { width:240px !important; }
@media(max-width:1023px) { .st-footer .st-footer__illust-1 .st-art.st-boss .st-boss__mask { width:190px !important; } }
@media(max-width:767px) { .st-footer .st-footer__illust-1 .st-art.st-boss .st-boss__mask { width:180px !important; } }

/* Let the expanded menu close button receive taps above the recruitment header. */
.page-recruit.is-sitemap-open .st-header { visibility:hidden; pointer-events:none; }

/* Give the compact FAQ label and illustration separate space. */
@media(max-width:599px) {
 .st-brand-a .st-history-card__faq__inner { flex-wrap:wrap; height:auto !important; min-height:128px; padding:16px 90px 16px 16px !important; gap:12px; }
 .st-brand-a .st-history-card__faq__en { flex:0 0 auto; margin:0 !important; }
 .st-brand-a .st-history-card__faq__title { display:block !important; flex:1 1 100%; min-width:0; height:auto !important; margin:0 !important; line-height:1.4 !important; }
 .st-brand-a .st-history-card__faq__title__slope { display:block; font-size:24px !important; height:auto !important; max-width:100%; line-height:1.4 !important; white-space:normal !important; text-wrap:balance; }
 .st-brand-a .st-history-card__faq__title__slope::before, .st-brand-a .st-history-card__faq__title__slope::after { display:none !important; }
 .st-brand-a .st-history-card__faq__en__and { font-size:0 !important; }
 .st-brand-a .st-history-card__faq__inner .st-history-card__illust3.st-faq-chara { top:50% !important; transform:translateY(-50%) !important; }
}

/* Transparent closed menu space must not block the page beneath it. */
.st-fab { pointer-events:none !important; }
.st-fab__btn,.st-fab__item { pointer-events:auto !important; }
