/* 2026-10-20 トップ改善 第2弾・お問い合わせ見出しの統一 */
:root { --r2-pop: cubic-bezier(.34,1.56,.64,1); }

/* お問い合わせ（全ページ共通）：上の余白と、お知らせと同じ大きな縁取り見出し＋英字 */
html.st-brand-a .st-inquiry { padding-top:clamp(72px,9vw,150px)!important; }
html.st-brand-a .st-inquiry__header { align-items:flex-end!important; }
html.st-brand-a .st-inq-head { display:flex; flex-wrap:wrap; align-items:flex-end; gap:.2em 1.2rem; }
html.st-brand-a .st-inq-title { margin:0; line-height:1; }
html:not(#r2a):not(#r2b) .st-inquiry :is(.st-inq-title, .st-inq-title span) { font-size:clamp(48px,7vw,104px)!important; line-height:1.05!important; color:#fff!important; -webkit-text-fill-color:#fff!important; -webkit-text-stroke:clamp(4px,.45vw,6px) #142c59!important; paint-order:stroke fill!important; text-shadow:.06em .06em 0 #142c59!important; letter-spacing:0!important; }
html:not(#r2a) .st-inquiry .st-inq-title__en { margin:0 0 .45em!important; font:700 clamp(16px,1.6vw,26px)/1 'Sugito K02 Site','Barlow',sans-serif; color:#142c59; letter-spacing:.06em; -webkit-text-stroke:0; text-shadow:none; }
@media (max-width:767px) { html:not(#r2a):not(#r2b) .st-inquiry :is(.st-inq-title,.st-inq-title span) { font-size:46px!important; -webkit-text-stroke:4px #142c59!important; } }

/* トップ：マスキングテープ風のラベル */
html.st-brand-a .top-intro__link__balloon { display:inline-block!important; padding:.5em 1.3em .45em!important; background:#FFD84D repeating-linear-gradient(-45deg,rgba(255,255,255,.38) 0 7px,transparent 7px 14px)!important; color:#142c59!important; font-family:'Sugito K02 Site','Zen Kaku Gothic New',sans-serif!important; font-weight:900!important; font-size:clamp(16px,1.5vw,22px)!important; letter-spacing:.02em; border:0!important; border-radius:0!important; box-shadow:0 3px 0 rgba(20,44,89,.14); rotate:-3deg; transform-origin:0 50%; z-index:3;
  clip-path:polygon(0 8%,3% 0,6% 9%,9% 0,12% 8%,15% 0,100% 0,100% 92%,97% 100%,94% 91%,91% 100%,88% 92%,85% 100%,0 100%); }
html.st-brand-a .top-intro__link__balloon::before, html.st-brand-a .top-intro__link__balloon::after { display:none!important; }
html.st-brand-a .top-intro__link:nth-child(2) .top-intro__link__balloon { background-color:#9EDBF5!important; rotate:2.5deg; }
html.st-brand-a .top-intro__links .top-intro__link__balloon { scale:0 1; }
html.st-brand-a .top-intro__links.is-shown .top-intro__link__balloon { animation:r2-tape .8s var(--r2-pop) .25s both; }
html.st-brand-a .top-intro__links.is-shown .top-intro__link:nth-child(2) .top-intro__link__balloon { animation-delay:.45s; }
@keyframes r2-tape { 0% { scale:0 1; } 65% { scale:1.06 1; } 100% { scale:1 1; } }
@media (hover:hover) { html.st-brand-a .top-intro__link:hover .top-intro__link__balloon { animation:r2-wiggle .5s var(--r2-pop) both; } }
@keyframes r2-wiggle { 0%,100% { scale:1 1; } 40% { scale:1.04 1.08; } }

/* トップ：サービス・対応エリアのすぎたっくんを、カードの列の背面に大きく（上半身だけがカードの上に出る） */
html.st-brand-a .st-home-service-head { grid-template-columns:minmax(0,1fr)!important; }
html.st-brand-a .top-service .top-service__items > .st-home-service-mascot,
html.st-brand-a .top-area .top-area__items > .top-area__illust.st-home-area-mascot { --mw:clamp(150px,30vw,434px); position:absolute!important; z-index:-1!important; top:auto!important; left:auto!important; right:clamp(12px,3.5vw,64px)!important; bottom:calc(100% - var(--mw) * 1.5 * .45)!important; width:var(--mw)!important; height:auto!important; margin:0!important; clip-path:inset(0 0 38% 0); pointer-events:none; grid-column:auto!important; grid-row:auto!important; }
html.st-brand-a .top-service .top-service__items > .st-home-service-mascot img,
html.st-brand-a .top-area .top-area__items > .st-home-area-mascot img { max-height:none!important; width:100%!important; height:auto!important; }
html.st-brand-a .top-service .top-service__items { margin-top:clamp(40px,7vw,120px); }
html.st-brand-a .top-area .top-area__items { margin-top:clamp(60px,9vw,150px); }
@media (max-width:767px) {
  html.st-brand-a .top-service .top-service__items > .st-home-service-mascot,
  html.st-brand-a .top-area .top-area__items > .top-area__illust.st-home-area-mascot { --mw:34vw; right:3vw!important; }
}

/* トップ：歴史の江戸風すぎたっくんを大きく */
html.st-brand-a .st-history-card__illust { width:clamp(140px,13vw,188px)!important; height:auto!important; left:clamp(16px,4vw,70px)!important; bottom:14px!important; top:auto!important; }
html.st-brand-a .st-history-card__illust picture + picture { display:none!important; }
html.st-brand-a .st-history-card__illust img { width:100%!important; height:auto!important; }

/* トップ：乗務員募集の見出しを他のセクションと同じ大きさに、乗務員紹介ボタン */
html.st-brand-a .top-recruit .top-recruit__title { font-size:clamp(52px,7.9vw,114px)!important; line-height:1.08!important; }
html.st-brand-a .top-recruit__drivers { display:inline-flex; align-items:center; gap:.7em; margin-top:2.4rem; padding:1em 1.6em 1em 1.2em; border-radius:999px; background:#142c59; color:#fff!important; font-weight:800; font-size:clamp(15px,1.2vw,18px); text-decoration:none; box-shadow:0 .6rem 0 -.2rem rgba(20,44,89,.25); }
html.st-brand-a .top-recruit__drivers img { width:36px; height:36px; border-radius:50%; background:#fff; object-fit:contain; }
html.st-brand-a .top-recruit__drivers i { font-style:normal; display:inline-grid; place-items:center; width:1.8em; height:1.8em; border-radius:50%; background:#FFD84D; color:#142c59; transition:translate .35s var(--r2-pop); }
@media (hover:hover) { html.st-brand-a .top-recruit__drivers:hover i { translate:4px 0; } }

/* ===== 見出しの統一（全ページ、2026-10-20） =====
   英字ラベル：トップと同じ台形のバッジ（紺地にクリーム文字。暗い背景ではクリーム地に紺文字）
   和文見出し：セクション見出し（A）と、カードやブロックの中の小見出し（B）の2段階 */
html :is(.st-head2__en,.st-template__eyebrow,.hp-kicker,.eyebrow,.st-ct__kind,.st-refined-eyebrow,.tw-sec__en,.c2-facts__en,.c2-entry__en,.st-marquee__en,.ln-shift__label,.st-teaser__en,.st-now__en,.st-cinema__eyebrow,.ra-entrance__en,.st-title-b__en,.hd-en,.hero-kicker,.bridge-label,.lp-chap__meta),
html main:not(.top-main) .st-title.-medium > span,
html .top-main .st-refined-careers .st-refined-eyebrow {
  display:inline-flex!important; align-items:center; gap:.5em; width:auto!important; max-width:100%; margin:0 0 .55em!important; padding:.12em 1.15em!important;
  background:#142c59!important; color:#FFF1BF!important; -webkit-text-fill-color:#FFF1BF!important;
  font:800 clamp(14px,1.6vw,24px)/1.35 'Sugito K02 Site','Barlow',sans-serif!important; letter-spacing:.08em!important; text-transform:uppercase; font-style:normal!important;
  clip-path:polygon(.45em 0,calc(100% - .45em) 0,100% 100%,0 100%); border:0!important; border-radius:0!important; box-shadow:none!important; text-shadow:none!important; -webkit-text-stroke:0!important; transform:none!important; opacity:1!important;
}
html .hd-dark { background:#FFF1BF!important; color:#142c59!important; -webkit-text-fill-color:#142c59!important; }
html :is(.st-head2__en,.st-template__eyebrow,.hp-kicker,.eyebrow,.st-ct__kind,.st-refined-eyebrow,.tw-sec__en,.st-title-b__en,.hd-en,.st-marquee__en,.st-teaser__en,.st-now__en)::before,
html :is(.st-head2__en,.st-template__eyebrow,.hp-kicker,.eyebrow,.st-ct__kind,.st-refined-eyebrow,.tw-sec__en,.st-title-b__en,.hd-en,.st-marquee__en,.st-teaser__en,.st-now__en)::after,
html main:not(.top-main) .st-title.-medium::before, html main:not(.top-main) .st-title.-medium::after,
html main:not(.top-main) .st-title.-medium > span::before, html main:not(.top-main) .st-title.-medium > span::after { display:none!important; }
html main:not(.top-main) .st-title.-medium { display:block!important; background:none!important; padding:0!important; }
html .lp-chap__meta i { display:none!important; }
html .lp-chap__meta .lp-chap__no { opacity:.7; }
/* 小見出し（B）のバッジは小さめ */
html .hd-b { font-size:clamp(12px,1.05vw,16px)!important; }
/* 和文見出し A：セクション見出し */
html :is(.st-head2__ja,.st-template__title,.st-sec__title,main .h2,.lp-chap__title,.ra-entrance__title,.st-road__title,.st-manifesto__title,.st-message__title,.st-teaser__ttl,.st-now__ttl,.st-marquee__ttl,.intro__catch,.hd-a) { font-size:clamp(36px,5.2vw,76px)!important; line-height:1.15!important; letter-spacing:0!important; }
html :is(.st-head2__ja,.st-template__title,.st-sec__title,main .h2,.lp-chap__title,.ra-entrance__title,.st-road__title,.st-manifesto__title,.st-message__title,.st-teaser__ttl,.st-now__ttl,.st-marquee__ttl,.intro__catch,.hd-a).hd-long { font-size:clamp(28px,3.6vw,54px)!important; }
/* 和文見出し B：カードやブロックの中の小見出し */
html :is(.st-ct__title,.tw-sec__title,.c2-facts__title,.c2-entry__title,.c2-ep__title,.rc-entry__title,.ln-entry__title,.hd-b-title) { font-size:clamp(24px,2.7vw,40px)!important; line-height:1.25!important; }
@media (max-width:767px) {
  html :is(.st-head2__ja,.st-template__title,.st-sec__title,main .h2,.lp-chap__title,.ra-entrance__title,.st-road__title,.st-manifesto__title,.st-message__title,.st-teaser__ttl,.st-now__ttl,.st-marquee__ttl,.intro__catch,.hd-a) { font-size:clamp(30px,9vw,40px)!important; }
  html :is(.st-head2__ja,.st-template__title,.st-sec__title,main .h2,.lp-chap__title,.ra-entrance__title,.st-road__title,.st-manifesto__title,.st-message__title,.st-teaser__ttl,.st-now__ttl,.st-marquee__ttl,.intro__catch,.hd-a).hd-long { font-size:clamp(24px,6.8vw,30px)!important; }
}

/* ラベルの直後にある見出し（クラスの無いもの）もセクション見出しの大きさに */
html :is(.st-head2__en,.st-template__eyebrow,.hp-kicker,.eyebrow,.st-refined-eyebrow,.st-marquee__en,.st-teaser__en,.st-now__en,.st-cinema__eyebrow,.hd-en) + h2:not([class*="__title"]):not(.hd-b-title) { font-size:clamp(36px,5.2vw,76px)!important; line-height:1.15!important; }
html :is(.st-head2__en,.st-template__eyebrow,.hp-kicker,.eyebrow,.st-refined-eyebrow,.hd-en) + h2.hd-long:not([class*="__title"]) { font-size:clamp(28px,3.6vw,54px)!important; }
/* 見出しの中に置く英字バッジは、見出しの上の行に */
html .hd-en.hd-inline { display:flex!important; width:max-content!important; font-size:clamp(14px,1.6vw,24px)!important; line-height:1.35!important; margin:0 0 .5em!important; }
/* トップ：働く・紹介動画の見出しを、トップの他のセクション見出しと同じ大きさに */
html.st-brand-a:not(#r2a):not(#r2b) :is(.top-main .st-refined-careers h2, .st-marquee .st-marquee__ttl) { font-size:clamp(40px,6vw,86px)!important; line-height:1.12!important; }
@media (max-width:767px) {
  html :is(.st-head2__en,.st-template__eyebrow,.hp-kicker,.eyebrow,.st-refined-eyebrow,.st-marquee__en,.st-teaser__en,.st-now__en,.st-cinema__eyebrow,.hd-en) + h2:not([class*="__title"]):not(.hd-b-title) { font-size:clamp(28px,8vw,40px)!important; }
  html.st-brand-a:not(#r2a):not(#r2b) :is(.top-main .st-refined-careers h2, .st-marquee .st-marquee__ttl) { font-size:clamp(32px,9vw,44px)!important; }
}

/* 暗い背景に置かれた見出しは白に */
html .hd-light, html .hd-light * { color:#fff!important; -webkit-text-fill-color:#fff!important; }
