/* ==========================================================================
   デザイン別案B — 下層ページ（在庫一覧・車両詳細・店舗・固定ページ・お問い合わせ・お知らせ）
   トップページ（jocar-design-b.css）のトーンに揃える:
   - 角は立てる（角丸・丸ボタンをやめる）／細いグレーの枠線／淡いグレーの帯
   - 見出しは赤い縦棒＋太字。価格は赤＋幅の詰まった欧文書体（Barlow Condensed）
   - 黒い帯（お問い合わせ導線など）は使わず、淡いグレー地にする
   既存CSSは角丸・価格色・グレー地を変数で持っているため、まず変数を差し替え、
   変数になっていない部品だけを個別に上書きしている。すべて body.jocar-design-b 配下。
   ========================================================================== */

body.jocar-design-b {
	--jocar-radius: 3px;
	--jocar-radius-large: 0px;
	--jocar-price: #df0017;
	--jocar-price-hover: #b80013;
	--jocar-bg-gray: #f4f5f7;
	--jocar-border: #c9cdd4;
	--jocar-border-light: #e4e6ea;
	--jocar-text: #1a1a1a;
	--jocar-text-sub: #565b66;
	--jocar-text-muted: #6b7079;
	--jocar-font-number: "Barlow Condensed", "Barlow Semi Condensed", "Yu Gothic Medium", "Yu Gothic", sans-serif;
}

/* --------------------------------------------------------------------------
   ボタン（丸ボタン → 角の立った四角。トップの検索ボタン・バナーのボタンと同じ形）
   -------------------------------------------------------------------------- */
.jocar-design-b .jocar-btn,
.jocar-design-b .post_content .wp-block-button__link,
.jocar-design-b .jocar-sort__submit,
.jocar-design-b .jocar-search__toggle { border-radius: 3px; }
.jocar-design-b .jocar-btn { font-weight: 800; letter-spacing: 0.06em; }
.jocar-design-b .jocar-btn--outline { border-color: #1a1a1a; color: #1a1a1a !important; background: #fff; }
.jocar-design-b .jocar-btn--outline:hover { background: #1a1a1a; border-color: #1a1a1a; color: #fff !important; }
.jocar-design-b .jocar-btn--dark { background: #1a1a1a; border-color: #1a1a1a; }
.jocar-design-b a:focus-visible, .jocar-design-b button:focus-visible { outline: 2px solid #1a1a1a; outline-offset: 2px; }

/* --------------------------------------------------------------------------
   見出し（ページ見出し・セクション見出し）
   -------------------------------------------------------------------------- */
/* セクション見出し: 英字ラベル＋日本語 → 赤い縦棒つきの太字（英字ラベルは小さく残す） */
.jocar-design-b .jocar-heading__title,
.jocar-design-b .post_content .jocar-heading__title { position: relative; padding-left: 22px; font-size: 25px; font-weight: 800; letter-spacing: 0.06em; color: #1a1a1a; }
.jocar-design-b .jocar-heading__title::before { content: ""; position: absolute; left: 0; top: 3px; bottom: 3px; width: 8px; background: #df0017; }
.jocar-design-b .jocar-heading__sub { padding-left: 22px; font-size: 13px; letter-spacing: 0.16em; }
.jocar-design-b .single-title-b, .jocar-design-b .jocar-vehicle__title, .jocar-design-b .jocar-shop__title { font-weight: 800; letter-spacing: 0.03em; }
@media screen and (max-width: 800px) {
	.jocar-design-b .jocar-heading__title, .jocar-design-b .post_content .jocar-heading__title { font-size: 21px; padding-left: 18px; }
	.jocar-design-b .jocar-heading__sub { padding-left: 18px; }
}

/* --------------------------------------------------------------------------
   在庫一覧・タクソノミーアーカイブ（検索パネル・件数・並び替え・カード・ページ送り・探す導線）
   -------------------------------------------------------------------------- */
.jocar-design-b .jocar-search { border: 1px solid var(--jocar-border-light); }
.jocar-design-b .jocar-search__title { font-weight: 800; letter-spacing: 0.06em; }
.jocar-design-b .jocar-search__title::before { width: 8px; border-radius: 0; }
.jocar-design-b .jocar-search .jocar-select, .jocar-design-b .jocar-search .jocar-input { background-color: #fff; font-weight: 600; }
.jocar-design-b .jocar-search__submit { letter-spacing: 0.08em; }
.jocar-design-b .jocar-chip, .jocar-design-b .jocar-browse__list a { border-radius: 3px; }
.jocar-design-b .jocar-browse__list a:hover { background: #df0017; border-color: #df0017; color: #fff; }
.jocar-design-b .jocar-browse__list a:hover * { color: #fff; }

/* 車両カード: 角を立て、価格を赤の詰まった書体に。バッジは写真の角に密着させる */
.jocar-design-b .jocar-card { box-shadow: none; }
.jocar-design-b .jocar-card:hover { transform: none; box-shadow: 0 8px 24px rgba(20, 30, 50, 0.1); border-color: #df0017; }
.jocar-design-b .jocar-card__title { font-weight: 800; }
.jocar-design-b .jocar-card__price-value { font-weight: 700; font-size: 36px; letter-spacing: 0; }
.jocar-design-b .jocar-card__price-unit { font-weight: 800; }
.jocar-design-b .jocar-card__price-label { font-weight: 700; color: #1a1a1a; }
.jocar-design-b .jocar-card__specs-value { font-family: var(--jocar-font-number), var(--jocar-font-base); font-size: 14.5px; letter-spacing: 0.02em; }
.jocar-design-b .jocar-card__badges { top: 0; left: 0; gap: 0; }
.jocar-design-b .jocar-badge { border-radius: 0; padding: 6px 9px; font-weight: 800; letter-spacing: 0.06em; }
.jocar-design-b .jocar-badge--negotiating { background: #1a1a1a; }
.jocar-design-b .jocar-badge--required, .jocar-design-b .jocar-badge--optional { border-radius: 2px; padding: 4px 8px; }
@media screen and (max-width: 800px) {
	.jocar-design-b .jocar-card__price-value { font-size: 27px; }
	.jocar-design-b .jocar-badge { padding: 4px 6px; font-size: 10px; }
}

/* ページ送り（丸 → 四角） */
.jocar-design-b .page_navi a, .jocar-design-b .page_navi span,
.jocar-design-b .jocar-pagination a, .jocar-design-b .jocar-pagination span { border-radius: 3px !important; font-family: var(--jocar-font-number); font-weight: 700; font-size: 17px; }

/* --------------------------------------------------------------------------
   車両詳細・店舗詳細（ギャラリー・概要ボックス・スペック表・装備）
   -------------------------------------------------------------------------- */
.jocar-design-b .jocar-gallery__thumb, .jocar-design-b .jocar-gallery__thumbs button { border-radius: 0; }
.jocar-design-b .jocar-gallery__counter { border-radius: 0; font-family: var(--jocar-font-number); font-size: 14px; letter-spacing: 0.06em; }
.jocar-design-b .jocar-gallery__nav, .jocar-design-b .jocar-gallery button[data-jocar-gallery-prev], .jocar-design-b .jocar-gallery button[data-jocar-gallery-next] { border-radius: 3px; }
.jocar-design-b .jocar-summary, .jocar-design-b .jocar-shop__info { border: 1px solid var(--jocar-border-light); }
.jocar-design-b .jocar-summary__price-value { font-weight: 700; font-size: 60px; letter-spacing: 0; }
.jocar-design-b .jocar-summary__price-unit { font-weight: 800; }
.jocar-design-b .jocar-equipment__item { border-radius: 0; font-weight: 600; }
.jocar-design-b .jocar-specs th, .jocar-design-b .jocar-spec-table th { background: var(--jocar-bg-gray); font-weight: 700; color: #1a1a1a; }

/* お問い合わせ導線バンド: 黒帯をやめ、淡いグレー地＋濃い文字にする */
.jocar-design-b .jocar-cta-band { background: var(--jocar-bg-gray); color: #1a1a1a; border: 1px solid var(--jocar-border-light); border-top: 4px solid #df0017; }
.jocar-design-b .jocar-cta-band__title, .jocar-design-b .post_content .jocar-cta-band__title { color: #1a1a1a; font-weight: 800; letter-spacing: 0.06em; }
.jocar-design-b .jocar-cta-band__sub { color: #df0017; }
.jocar-design-b .jocar-cta-band__desc { color: var(--jocar-text-sub); }
.jocar-design-b .jocar-cta-band .jocar-btn--outline { background: #fff; color: #1a1a1a !important; border-color: #1a1a1a; }
.jocar-design-b .jocar-cta-band .jocar-btn--outline:hover { background: #1a1a1a; color: #fff !important; }

/* 店舗カード */
.jocar-design-b .jocar-shop-card:hover { box-shadow: 0 8px 24px rgba(20, 30, 50, 0.1); border-color: #df0017; }
.jocar-design-b .jocar-shop-card__title { font-weight: 800; }

/* --------------------------------------------------------------------------
   固定ページ（事業紹介・中古車の買取・お問い合わせ）とお知らせ
   -------------------------------------------------------------------------- */
/* 本文内の見出し */
.jocar-design-b .post_content h2 { font-weight: 800; letter-spacing: 0.05em; color: #1a1a1a; }
.jocar-design-b .post_content h2.wp-block-heading.has-text-align-center::after,
.jocar-design-b .post_content h2.has-text-align-center::after { content: ""; display: block; width: 44px; height: 4px; margin: 14px auto 0; background: #df0017; }
.jocar-design-b .post_content h3 { font-weight: 800; }
/* プライバシーポリシー: GA4 設定時に原文の後ろへ足す「当サイトのアクセス解析について」（inc/analytics.php）。
   運営会社のポリシー（原文）とは別の節だと分かるよう、区切り線を入れる */
.jocar-design-b .post_content h2.jocar-privacy-analytics { margin-top: 80px; padding-top: 60px; border-top: 1px solid var(--jocar-border-light); }
/* カード類: 上の赤線は残し、角を立てて枠線をつける */
.jocar-design-b .jocar-service-card, .jocar-design-b .jocar-method-card { border-left: 1px solid var(--jocar-border-light); border-right: 1px solid var(--jocar-border-light); border-bottom: 1px solid var(--jocar-border-light); }
/* 買取の流れ: 丸いラベル → 四角。合流の黒いラベルは紺にする */
.jocar-design-b .post_content .jocar-flow__label { border-radius: 0; font-weight: 800; letter-spacing: 0.08em; }
.jocar-design-b .post_content .jocar-flow__merge { border-radius: 0; background: #2f3b5a; font-weight: 800; }
/* お問い合わせフォーム */
.jocar-design-b .jocar-contact__type span { border-radius: 3px; font-weight: 700; }
.jocar-design-b .jocar-contact__vehicle-image { border-radius: 0; }
.jocar-design-b .jocar-contact__tel .jocar-contact__tel-number, .jocar-design-b .jocar-contact__tel a { font-family: var(--jocar-font-number); }

/* 親テーマのページ見出し下の英字（PURCHASE など）と、パンくず */
.jocar-design-b #bread_crumb, .jocar-design-b .jocar-breadcrumb { font-size: 12px; }

/* 親テーマの記事一覧（お知らせ）: 角を立てる */
.jocar-design-b .news_list .item, .jocar-design-b #news_list .item, .jocar-design-b .category a { border-radius: 0; }

/* --------------------------------------------------------------------------
   下層ページ下部の「買取・店舗紹介」バナー（トップと同じ部品。フッター直前に出す）
   -------------------------------------------------------------------------- */
/* 各ページの本文側に下余白があるため、ここでは控えめにする */
.jocar-design-b .db-banners--sub { margin-top: 30px; }
@media screen and (max-width: 800px) { .jocar-design-b .db-banners--sub { margin-top: 20px; } }

/* 車両詳細の上部にあるカテゴリのタグ（親テーマの丸い .category_button → 四角） */
.jocar-design-b .jocar-single__tags .category_button { border-radius: 3px; border-color: var(--jocar-border); color: #1a1a1a; font-weight: 700; }
.jocar-design-b .jocar-single__tags .category_button:hover { background: #df0017; border-color: #df0017; color: #fff; }

/* ==========================================================================
   トップページとの統一（コンテンツ幅・見出し帯・検索パネル・車種タイル）
   ========================================================================== */

/* --------------------------------------------------------------------------
   コンテンツ幅: トップページ（最大1540px・左右60px）に合わせる
   -------------------------------------------------------------------------- */
body.jocar-design-b { --jocar-container-max: 1540px; --jocar-container-pad: 60px; }
@media screen and (max-width: 1100px) { body.jocar-design-b { --jocar-container-pad: 40px; } }
@media screen and (max-width: 600px)  { body.jocar-design-b { --jocar-container-pad: 20px; } }

/* --------------------------------------------------------------------------
   見出し帯: トップのヒーローと同じ「写真＋左の暗いグラデーション＋白文字」を、低い帯にして全ページの先頭に置く
   - 子テーマのページ（在庫一覧・店舗一覧）は .jocar-page-header、親テーマの固定ページ・お知らせは #page_header
   - パンくずは帯の上端に白文字で重ねる（DOM上は帯の直前にあるため、負のマージンで帯を引き上げている）
   - 固定ページにヘッダー画像がある場合（中古車の買取など）は、その写真を帯の背景に使う
   -------------------------------------------------------------------------- */
/* margin の !important: 親テーマの #container:not(:has(#lp_page_header)) #bread_crumb（ID2つ分の詳細度）に勝つため */
.jocar-design-b #bread_crumb { max-width: var(--db-max); margin: 14px auto 10px !important; padding: 0 var(--db-pad); height: 44px; font-size: 12px; }
.jocar-design-b #bread_crumb ul { height: 44px; line-height: 44px; }
.jocar-design-b #bread_crumb li { font-size: 12px; }
.jocar-design-b #bread_crumb:has(+ .jocar-page-header),
.jocar-design-b #bread_crumb:has(+ #page_header) { position: relative; z-index: 3; margin: 0 auto -44px !important; color: #fff; }
.jocar-design-b #bread_crumb:has(+ .jocar-page-header) li,
.jocar-design-b #bread_crumb:has(+ .jocar-page-header) li a,
.jocar-design-b #bread_crumb:has(+ .jocar-page-header) li::after,
.jocar-design-b #bread_crumb:has(+ .jocar-page-header) li a::before,
.jocar-design-b #bread_crumb:has(+ #page_header) li,
.jocar-design-b #bread_crumb:has(+ #page_header) li a,
.jocar-design-b #bread_crumb:has(+ #page_header) li::after,
.jocar-design-b #bread_crumb:has(+ #page_header) li a::before { color: #fff; }

.jocar-design-b .jocar-page-header.jocar-container,
.jocar-design-b #page_header {
	position: relative; max-width: none; margin: 0 0 48px; padding: 0; overflow: hidden;
	background: #22262e var(--db-band-image, none) no-repeat 60% 40% / cover;
}
.jocar-design-b .jocar-page-header.jocar-container::before,
.jocar-design-b #page_header::before {
	content: ""; position: absolute; inset: 0; z-index: 1;
	background: linear-gradient(90deg, rgba(10, 12, 18, 0.82) 0%, rgba(10, 12, 18, 0.6) 45%, rgba(10, 12, 18, 0.25) 100%);
}
.jocar-design-b .jocar-page-header .design_header,
.jocar-design-b #page_header .design_header {
	position: relative; z-index: 2; display: flex; align-items: flex-end; gap: 20px 50px; flex-wrap: wrap;
	max-width: var(--db-max); min-height: 230px; margin: 0 auto; padding: 70px var(--db-pad) 40px; border: 0;
}
.jocar-design-b .jocar-page-header .design_header .title_area,
.jocar-design-b #page_header .design_header .title_area { display: flex; flex-direction: column-reverse; align-items: flex-start; width: auto; padding: 0; }
.jocar-design-b .jocar-page-header .design_header .large_headline,
.jocar-design-b #page_header .design_header .large_headline { margin: 0; font-size: clamp(26px, 3.2vw, 44px) !important; font-weight: 800; line-height: 1.3; letter-spacing: 0.04em; color: #fff; text-shadow: 0 2px 16px rgba(0, 0, 0, 0.4); }
/* 英字ラベル: トップのリード文と同じく、見出しの上に小さく。左に赤い短線 */
.jocar-design-b .jocar-page-header .design_header .sub_title,
.jocar-design-b #page_header .design_header .sub_title {
	margin: 0 0 12px; padding-left: 44px; font-family: var(--jocar-font-number); font-size: 15px; font-weight: 600; letter-spacing: 0.2em; line-height: 1.2; color: #fff;
	background: linear-gradient(#df0017, #df0017) no-repeat 0 50% / 32px 3px;
}
.jocar-design-b .jocar-page-header .design_header .sub_title span,
.jocar-design-b #page_header .design_header .sub_title span { color: #fff; }
.jocar-design-b .jocar-page-header .design_header .desc { flex: 1; min-width: 280px; width: auto; padding: 0 0 6px; font-size: 14px; line-height: 1.9; color: #fff; }
/* 固定ページのヘッダー画像を帯の背景にする */
.jocar-design-b #page_header .image { position: absolute; inset: 0; z-index: 0; margin: 0; height: 100%; aspect-ratio: auto; }
.jocar-design-b #page_header .image img { object-position: 50% 40%; }
.jocar-design-b #page_header .image .overlay { display: none; }
@media screen and (max-width: 800px) {
	.jocar-design-b .jocar-page-header.jocar-container, .jocar-design-b #page_header { margin-bottom: 30px; }
	/* スマホは文字が写真全体に掛かるので、全面を均一に暗くする */
	.jocar-design-b .jocar-page-header.jocar-container::before, .jocar-design-b #page_header::before { background: rgba(10, 12, 18, 0.68); }
	.jocar-design-b .jocar-page-header .design_header,
	.jocar-design-b #page_header .design_header { display: block; min-height: 170px; padding: 64px var(--db-pad) 28px; }
	.jocar-design-b .jocar-page-header .design_header .desc { margin-top: 12px; font-size: 13px; }
	.jocar-design-b .jocar-page-header .design_header .sub_title,
	.jocar-design-b #page_header .design_header .sub_title { font-size: 13px; }
}

/* --------------------------------------------------------------------------
   在庫一覧の検索パネル: トップの検索バーと同じ形（左に赤いブロック、右にラベル内蔵の入力欄と赤い検索ボタン）
   スマホ幅の折りたたみ（jocar-search.js）はそのまま使うため、赤いブロック＝見出し行＋開閉ボタンにしている
   -------------------------------------------------------------------------- */
.jocar-design-b .jocar-archive > .jocar-search { display: flex; align-items: stretch; padding: 0; border: 0; background: #fff; box-shadow: 0 10px 30px rgba(20, 30, 50, 0.14); margin-top: -84px; position: relative; z-index: 4; }
.jocar-design-b .jocar-archive > .jocar-search .jocar-search__head { flex: none; width: 280px; margin: 0; padding: 20px 22px; background: #df0017; align-items: center; }
.jocar-design-b .jocar-archive > .jocar-search .jocar-search__title { color: #fff; font-size: 17.5px; font-weight: 800; letter-spacing: 0.02em; gap: 12px; white-space: nowrap; }
.jocar-design-b .jocar-archive > .jocar-search .jocar-search__title::before {
	width: 30px; height: 30px; flex: none; border-radius: 0;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5L21 21'/%3E%3C/svg%3E") no-repeat center / contain;
}
.jocar-design-b .jocar-archive > .jocar-search .jocar-search__body { flex: 1; min-width: 0; padding: 18px 20px; align-items: stretch; gap: 12px; }
.jocar-design-b .jocar-archive > .jocar-search:not(.is-collapsible) .jocar-search__body { display: flex; }
.jocar-design-b .jocar-archive > .jocar-search .jocar-search__grid { flex: 1; min-width: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.jocar-design-b .jocar-archive > .jocar-search .jocar-field--kw { grid-column: span 2; }
.jocar-design-b .jocar-archive > .jocar-search .jocar-field { position: relative; gap: 0; background: #f6f7f9; border: 1px solid var(--jocar-border); border-radius: 3px; }
.jocar-design-b .jocar-archive > .jocar-search .jocar-field__label { position: absolute; left: 12px; top: 8px; z-index: 1; font-size: 11px; font-weight: 700; color: #444; pointer-events: none; }
.jocar-design-b .jocar-archive > .jocar-search .jocar-select,
.jocar-design-b .jocar-archive > .jocar-search .jocar-input { min-height: 56px; height: 56px; padding: 22px 28px 4px 12px; border: 0; border-radius: 3px; background-color: transparent; font-size: 14px; font-weight: 600; color: #111; }
.jocar-design-b .jocar-archive > .jocar-search .jocar-search__actions { flex: none; flex-direction: column; justify-content: center; gap: 8px; margin: 0; }
.jocar-design-b .jocar-archive > .jocar-search .jocar-search__submit { min-width: 0; width: 180px; min-height: 56px; flex: 1; padding: 0 12px; font-size: 14.5px; white-space: nowrap; }
.jocar-design-b .jocar-archive > .jocar-search .jocar-search__submit::before {
	content: ""; width: 18px; height: 18px; margin-right: -2px; flex: none;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5L21 21'/%3E%3C/svg%3E") no-repeat center / contain;
}
.jocar-design-b .jocar-archive > .jocar-search .jocar-search__reset { font-size: 12.5px; }
@media screen and (max-width: 1100px) {
	.jocar-design-b .jocar-archive > .jocar-search { flex-direction: column; margin-top: -70px; }
	.jocar-design-b .jocar-archive > .jocar-search .jocar-search__head { width: auto; padding: 14px 18px; }
	.jocar-design-b .jocar-archive > .jocar-search .jocar-search__body { flex-direction: column; }
	.jocar-design-b .jocar-archive > .jocar-search:not(.is-collapsible) .jocar-search__body { display: flex; }
	.jocar-design-b .jocar-archive > .jocar-search .jocar-search__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.jocar-design-b .jocar-archive > .jocar-search .jocar-field--kw { grid-column: span 3; }
	.jocar-design-b .jocar-archive > .jocar-search .jocar-search__submit { width: 100%; flex: none; }
}
@media screen and (max-width: 800px) {
	.jocar-design-b .jocar-archive > .jocar-search { margin-top: -50px; }
	.jocar-design-b .jocar-archive > .jocar-search .jocar-search__toggle { background: #fff; border-color: #fff; color: #1a1a1a; font-weight: 700; white-space: nowrap; flex: none; padding: 0 12px; font-size: 12.5px; }
	.jocar-design-b .jocar-archive > .jocar-search .jocar-search__title { font-size: 15.5px; gap: 8px; }
	.jocar-design-b .jocar-archive > .jocar-search .jocar-search__title::before { width: 22px; height: 22px; }
	.jocar-design-b .jocar-archive > .jocar-search.is-collapsible:not(.is-open) .jocar-search__body { display: none; }
	.jocar-design-b .jocar-archive > .jocar-search.is-open .jocar-search__body { display: flex; }
	.jocar-design-b .jocar-archive > .jocar-search .jocar-search__body { padding: 14px; }
}
@media screen and (max-width: 600px) {
	.jocar-design-b .jocar-archive > .jocar-search .jocar-search__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
	.jocar-design-b .jocar-archive > .jocar-search .jocar-field--kw { grid-column: span 2; }
	.jocar-design-b .jocar-archive > .jocar-search .jocar-select,
	.jocar-design-b .jocar-archive > .jocar-search .jocar-input { font-size: 16px; }
}
/* 検索パネルが帯に重なる分、帯の下余白を詰める（在庫一覧・各アーカイブのみ） */
.jocar-design-b.post-type-archive-vehicle .jocar-page-header.jocar-container,
.jocar-design-b.tax-vehicle_maker .jocar-page-header.jocar-container,
.jocar-design-b.tax-vehicle_body_type .jocar-page-header.jocar-container,
.jocar-design-b.tax-vehicle_price_range .jocar-page-header.jocar-container { margin-bottom: 0; }
.jocar-design-b.post-type-archive-vehicle .jocar-page-header .design_header,
.jocar-design-b.tax-vehicle_maker .jocar-page-header .design_header,
.jocar-design-b.tax-vehicle_body_type .jocar-page-header .design_header,
.jocar-design-b.tax-vehicle_price_range .jocar-page-header .design_header { padding-bottom: 116px; }
@media screen and (max-width: 800px) {
	.jocar-design-b.post-type-archive-vehicle .jocar-page-header .design_header,
	.jocar-design-b.tax-vehicle_maker .jocar-page-header .design_header,
	.jocar-design-b.tax-vehicle_body_type .jocar-page-header .design_header,
	.jocar-design-b.tax-vehicle_price_range .jocar-page-header .design_header { padding-bottom: 76px; }
}

/* --------------------------------------------------------------------------
   在庫一覧の下部: トップと同じアイコン付きの車種タイル。文字だけの「ボディタイプから探す」は重複するので出さない
   （グループにはタクソノミー名のクラスが付く。template-parts/vehicle/browse-links.php）
   -------------------------------------------------------------------------- */
.jocar-design-b .jocar-archive .db-use { margin-top: 70px; padding-top: 50px; border-top: 1px solid var(--jocar-border-light); color: #1a1a1a; }
.jocar-design-b .jocar-archive .db-use + .jocar-browse { margin-top: 40px; padding-top: 0; border-top: 0; }
.jocar-design-b .jocar-archive .db-use + .jocar-browse .jocar-browse__group--vehicle_body_type { display: none; }
.jocar-design-b .jocar-browse__title { font-weight: 800; letter-spacing: 0.06em; }

/* --------------------------------------------------------------------------
   404ページ（子テーマの 404.php）
   -------------------------------------------------------------------------- */
/* 親テーマは404でフッターを隠す（body.error404 #footer）。別案Bでは他ページと同じくフッターを出す */
body.jocar-design-b.error404 #footer { display: grid; }
body.jocar-design-b.error404 #copyright { display: block; }
.jocar-design-b .db-notfound { padding-bottom: 80px; color: #1a1a1a; }
.jocar-design-b .db-notfound__desc { font-size: 15px; line-height: 2; }
.jocar-design-b .db-notfound__desc p { margin: 0; }
.jocar-design-b .db-notfound__actions { display: flex; flex-wrap: wrap; gap: 14px; margin: 28px 0 0; }
.jocar-design-b .db-notfound .db-use { margin-top: 60px; padding-top: 44px; border-top: 1px solid var(--jocar-border-light); }
@media screen and (max-width: 600px) { .jocar-design-b .db-notfound__actions .jocar-btn { width: 100%; } }

/* --------------------------------------------------------------------------
   スマホのドロワーメニュー: 親テーマ既定の真っ黒をやめ、白地＋墨色の文字にする
   -------------------------------------------------------------------------- */
.jocar-design-b #drawer_menu { background: #fff; color: #1a1a1a; box-shadow: 8px 0 30px rgba(20, 30, 50, 0.18); }
.jocar-design-b #drawer_menu .header { border-bottom: 1px solid var(--jocar-border-light); }
.jocar-design-b #drawer_mneu_close_button::before { color: #1a1a1a; }
/* color の !important: 親テーマが #mobile_menu a に color:#fff !important を指定しているため */
.jocar-design-b #mobile_menu a { background: #fff; color: #1a1a1a !important; border-bottom: 1px solid var(--jocar-border-light); font-weight: 700; }
.jocar-design-b #mobile_menu li.current-menu-item > a { color: #df0017 !important; }
.jocar-design-b #mobile_menu li li a, .jocar-design-b #mobile_menu li ul { background: var(--jocar-bg-gray); }
.jocar-design-b #mobile_menu .child_menu_button::before, .jocar-design-b #mobile_menu .child_menu_button::after { background: #1a1a1a; }
.jocar-design-b #mobile_menu .db-header-tel__hours { color: var(--jocar-text-sub); opacity: 1; }
/* LINEは緑のボタンにして、メニュー項目と区別する */
.jocar-design-b #mobile_menu li.db-header-line { padding: 18px 20px; }
.jocar-design-b #mobile_menu li.db-header-line a { justify-content: center; height: 52px; line-height: 1; padding: 0 16px; border: 0; border-radius: 4px; background: var(--db-line-green); color: #fff !important; }

/* --------------------------------------------------------------------------
   コントラストの調整（白基調での再確認の結果。数値は白地または入力欄の地色に対する比）
   - 「任意」バッジ: 白文字/#999 は 2.9:1 → #6b7079（5.0:1）
   - プレースホルダ: #aaa は 2.3:1 → #767b85（4.2:1。入力例の補助表示。ラベルは別にある）
   - 入力欄・セレクトの枠線: #c9cdd4 は 1.6:1 → #8a9099（3.3:1。操作部品の境界は 3:1 以上が目安）
     カードや区切り線など装飾の枠線は淡いままにしている
   -------------------------------------------------------------------------- */
.jocar-design-b .jocar-badge--optional { background: #6b7079; }
.jocar-design-b .jocar-input::placeholder, .jocar-design-b .jocar-textarea::placeholder { color: #767b85; opacity: 1; }
.jocar-design-b .jocar-select, .jocar-design-b .jocar-input, .jocar-design-b .jocar-textarea,
.jocar-design-b .jocar-contact__type span { border-color: #8a9099; }
.jocar-design-b .jocar-archive > .jocar-search .jocar-field,
.jocar-design-b .db-search .jocar-field { border-color: #8a9099; }
.jocar-design-b .jocar-archive > .jocar-search .jocar-select,
.jocar-design-b .jocar-archive > .jocar-search .jocar-input,
.jocar-design-b .db-search .jocar-select { border: 0; }

/* ==========================================================================
   印刷（来店時に車両詳細を紙で持参する人がいるため）
   - 管理バー・ヘッダーのメニュー・検索・ナビ・バナー・フッターのメニュー・関連車両・「戻る」ボタンは印刷しない
   - 車両詳細は「車名・写真・価格と概要・スペック表・装備・店舗の連絡先」だけを A4 で 1〜2 ページに収める
   - 背景色は印刷されない設定が多いため、赤い帯などは線と文字だけで成り立つようにしている
   ========================================================================== */
@media print {
	body.jocar-design-b { background: #fff; color: #000; }
	/* 印刷しないもの */
	#wpadminbar, #header #global_menu, #drawer_menu_button, #drawer_menu, #return_top, #bread_crumb,
	.db-banners, .db-stock-cta, #footer_nav, #copyright, .db-search, .db-use, .db-stock, .jocar-browse, .jocar-vehicle-list,
	.jocar-cta-band, .jocar-shop__map, .jocar-gallery__nav, .jocar-gallery__thumbs, .jocar-gallery__counter, .jocar-summary .jocar-btn,
	.jocar-summary__note, .jocar-single__tags, .jocar-arrow-link, .jocar-search, .jocar-sort, .jocar-page-header::before { display: none !important; }
	html { margin-top: 0 !important; }
	/* ヘッダー: ロゴだけを左上に（固定配置をやめて流し込む） */
	.jocar-design-b #header { position: static !important; height: auto !important; border-bottom: 1px solid #000; background: #fff !important; box-shadow: none; }
	.jocar-design-b #header_logo { position: static; height: auto; padding: 8px 0; }
	.jocar-design-b #header_logo img { max-height: 32px; }
	.jocar-design-b #header_slider_wrap, .jocar-design-b .jocar-page-header.jocar-container { display: none !important; }
	.jocar-design-b #container { padding-top: 0 !important; }
	/* 見出し帯を印刷しない代わりに、ページ見出しをそのまま出す（在庫一覧などを印刷したとき） */
	.jocar-design-b .db-home { display: none; }
	/* 車両詳細: 2カラムを維持しつつ幅を紙に合わせる */
	.jocar-design-b .jocar-container, .jocar-design-b .jocar-single { max-width: none; padding: 0 !important; }
	.jocar-design-b .jocar-single__main { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: start; }
	.jocar-design-b .jocar-gallery__main { aspect-ratio: 4 / 3; border: 1px solid #999; break-inside: avoid; }
	.jocar-design-b .jocar-summary { position: static; border: 1px solid #000; padding: 16px; break-inside: avoid; }
	.jocar-design-b .jocar-summary__price-value { font-size: 40px; color: #000; }
	.jocar-design-b .jocar-summary__price-unit { color: #000; }
	.jocar-design-b .jocar-spec-table, .jocar-design-b .jocar-specs { font-size: 11px; }
	.jocar-design-b .jocar-spec-table th, .jocar-design-b .jocar-spec-table td { padding: 5px 10px; border: 1px solid #999; }
	.jocar-design-b .jocar-spec-table tr { break-inside: avoid; }
	.jocar-design-b .jocar-heading { margin: 18px 0 8px; }
	.jocar-design-b .jocar-heading__title, .jocar-design-b .post_content .jocar-heading__title { font-size: 15px; padding-left: 12px; color: #000; }
	.jocar-design-b .jocar-heading__title::before { width: 4px; background: #000; }
	.jocar-design-b .jocar-heading__sub { display: none; }
	.jocar-design-b .jocar-equipment__item { border: 1px solid #999; font-size: 11px; padding: 3px 8px; }
	/* フッター: 店舗名・住所・電話・営業時間・許可番号だけを小さく（来店の連絡先として残す） */
	.jocar-design-b #footer { display: block; border-top: 1px solid #000; margin-top: 16px; }
	.jocar-design-b #footer_logo { display: none; }
	.jocar-design-b #footer_address { padding: 8px 0; border: 0; display: block; }
	.jocar-design-b #footer_address p { font-size: 10px; color: #000; line-height: 1.6; }
	.jocar-design-b #footer_address a { color: #000; text-decoration: none; }
	/* リンクの下線と色 */
	.jocar-design-b a { color: #000; text-decoration: none; }
	.jocar-design-b .jocar-badge { border: 1px solid #000; background: #fff !important; color: #000 !important; }
	@page { size: A4; margin: 12mm; }
}
