/* =========================================================
   イーストマウンテン デザイン
   グレー基調・セクションの背景を交互に・追従ヘッダー
   色を変えるときは、下の :root の値を書き換えます。
   ========================================================= */
:root {
	--em-navy: #183B60;       /* ロゴの色 */
	--em-bg: #f4f5f7;         /* 基本の背景（明るいグレー） */
	--em-bg-alt: #e8eaee;     /* 交互の背景（少し濃いグレー） */
	--em-surface: #ffffff;    /* カードの白 */
	--em-ink: #23272e;        /* 文字 */
	--em-muted: #5f6672;      /* 補足の文字 */
	--em-line: #d9dce2;       /* 線 */
	--em-line-green: #00873C; /* LINE（文字が読みやすい濃さ） */
	--em-mail: #C2410C;       /* メール査定（文字が読みやすい濃さ） */
}

/* ---------- 全体の背景 ---------- */
body,
.site-body,
.site-footer {
	background-color: var(--em-bg) !important;
}
body { color: var(--em-ink); }
/* Lightningの「横はみ出し防止（hidden）」はヘッダー追従を妨げるため、同じ効果の clip に置き換える */
html, body { overflow-x: clip !important; overflow-y: visible !important; }
.site-body { overflow-x: clip; }

/* ---------- ヘッダー：上に追従 ---------- */
.site-header {
	position: sticky !important;
	top: 0;
	background-color: rgba(244, 245, 247, .96) !important;
	backdrop-filter: saturate(140%) blur(6px);
	box-shadow: 0 1px 0 var(--em-line);
}
.admin-bar .site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .site-header { top: 46px; } }
@media (max-width: 600px) { .admin-bar .site-header { top: 0; } }

.global-nav-list { align-items: center; }
.global-nav-list > li > a .global-nav-name { font-weight: 700; }

/* ヘッダー右上のボタン */
.global-nav-list > li.em-nav-cta { padding: 0 0 0 10px; border: 0; }
.global-nav-list > li.em-nav-cta > a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 0 18px;
	border-radius: 6px;
	color: #fff !important;
	text-decoration: none;
	transition: filter .15s ease;
}
.global-nav-list > li.em-nav-cta > a::after,
.global-nav-list > li.em-nav-cta > a::before { display: none !important; }
.global-nav-list > li.em-nav-cta > a .global-nav-name { color: #fff; font-size: 14px; letter-spacing: .04em; }
.global-nav-list > li.em-nav-cta--line > a { background: var(--em-line-green); }
.global-nav-list > li.em-nav-cta--mail > a { background: var(--em-navy); }
.global-nav-list > li.em-nav-cta > a:hover { filter: brightness(1.08); }

/* スマホのメニュー内のボタン */
.vk-mobile-nav .em-nav-cta > a {
	display: block;
	margin: 8px 0;
	padding: 12px;
	border-radius: 6px;
	text-align: center;
	color: #fff !important;
	font-weight: 700;
	border: 0 !important;
}
.vk-mobile-nav .em-nav-cta--line > a { background: var(--em-line-green); }
.vk-mobile-nav .em-nav-cta--mail > a { background: var(--em-navy); }

/* ---------- ページタイトルの帯（ネイビー） ---------- */
.page-header {
	background: var(--em-navy) !important;
	min-height: 7rem;
}
.page-header::before { display: none !important; }
.page-header-title {
	color: #fff !important;
	font-weight: 700;
	letter-spacing: .04em;
	text-shadow: none !important;
}
.breadcrumb { background: transparent; border-bottom: 0; }

/* ---------- セクション（背景を交互に） ---------- */
.site-body:has(.em-sec) { padding-top: 0; padding-bottom: 0; }
.entry-body > .em-sec,
.em-sec {
	position: relative;
	isolation: isolate;
	margin: 0 !important;
	padding: 64px 0;
}
.em-sec::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	bottom: 0;
	left: calc(50% - 50vw);
	right: calc(50% - 50vw);
	background: var(--em-bg);
}
.em-sec.em-sec--gray::before { background: var(--em-bg-alt); }
.em-sec > *,
.em-sec > .wp-block-group__inner-container > * {
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}
.em-sec > * + *,
.em-sec > .wp-block-group__inner-container > * + * { margin-top: 24px; }
@media (max-width: 767px) { .em-sec { padding: 44px 0; } }

/* セクションの見出し：中央・大きめ、下に英字 */
:is(.em-sec, .em-sec > .wp-block-group__inner-container) > h2.wp-block-heading {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	text-align: center;
	font-size: clamp(24px, 3.2vw, 32px);
	font-weight: 700;
	letter-spacing: .06em;
	line-height: 1.4;
	color: var(--em-ink);
	text-wrap: balance;
}
:is(.em-sec, .em-sec > .wp-block-group__inner-container) > h2.wp-block-heading::before,
:is(.em-sec, .em-sec > .wp-block-group__inner-container) > h2.wp-block-heading::after { display: none !important; content: none !important; }
:is(.em-sec, .em-sec > .wp-block-group__inner-container) > p.em-en {
	margin: 8px 0 32px !important;
	text-align: center;
	font-size: 13px;
	letter-spacing: .18em;
	color: var(--em-muted);
}
:is(.em-sec, .em-sec > .wp-block-group__inner-container) > p.em-lead { text-align: center; }

/* 小見出し */
.em-sec h3.wp-block-heading {
	margin: 0 0 8px !important;
	padding: 0 0 0 12px !important;
	border: 0 !important;
	border-left: 4px solid var(--em-navy) !important;
	background: none !important;
	font-size: 18px;
	line-height: 1.5;
}
.em-sec h3.wp-block-heading::before,
.em-sec h3.wp-block-heading::after { display: none !important; }

/* 写真 */
.em-sec .wp-block-image img { border-radius: 8px; }

/* チェックリスト */
.em-checks {
	list-style: none !important;
	margin: 28px 0 8px !important;
	padding: 0 !important;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
}
.em-checks li {
	margin: 0 !important;
	padding: 10px 18px 10px 40px;
	position: relative;
	background: var(--em-surface);
	border-radius: 999px;
	font-weight: 700;
	box-shadow: 0 1px 2px rgba(20, 30, 50, .06);
}
.em-checks li::before {
	content: "✓";
	position: absolute;
	left: 18px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--em-navy);
	font-weight: 700;
}
.em-checks + * { margin-top: 32px !important; }

/* カード（写真＋見出し＋説明）：枚数に関係なく格子状に並べる */
.wp-block-columns.em-cards {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px !important;
	align-items: stretch !important;
}
@media (max-width: 1023px) { .wp-block-columns.em-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px)  { .wp-block-columns.em-cards { grid-template-columns: minmax(0, 1fr); gap: 16px !important; } }
.wp-block-columns.em-cards > .wp-block-column {
	flex-basis: auto !important;
	width: auto !important;
	margin: 0 !important;
	background: var(--em-surface);
	border-radius: 10px;
	padding: 16px 18px 20px;
	box-shadow: 0 1px 2px rgba(20, 30, 50, .06);
	display: flex;
	flex-direction: column;
}
.em-cards > .wp-block-column:empty { display: none; }
.em-cards > .wp-block-column > * { margin-top: 0 !important; margin-bottom: 10px !important; }
.em-cards > .wp-block-column > .wp-block-image { margin-bottom: 14px !important; }
.em-cards > .wp-block-column > .wp-block-image img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
.em-cards > .wp-block-column > .wp-block-buttons { margin-top: auto !important; padding-top: 6px; margin-bottom: 0 !important; }
.em-cards p { font-size: 14px; line-height: 1.8; }

/* 流れ（01 → 02 → 03） */
.em-steps { gap: 40px !important; }
.em-steps > .wp-block-column {
	position: relative;
	text-align: center;
	background: var(--em-surface);
	border-radius: 10px;
	padding: 20px 16px;
}
.em-steps > .wp-block-column:not(:last-child)::after {
	content: "";
	position: absolute;
	top: 50%;
	right: -27px;
	width: 14px;
	height: 14px;
	border-top: 3px solid var(--em-ink);
	border-right: 3px solid var(--em-ink);
	transform: translateY(-50%) rotate(45deg);
}
.em-steps .em-step-no {
	margin: 0 !important;
	font-size: 30px;
	line-height: 1.2;
	letter-spacing: .04em;
	color: var(--em-navy);
	font-variant-numeric: tabular-nums;
}
.em-steps h3.wp-block-heading { border-left: 0 !important; padding-left: 0 !important; text-align: center; margin: 4px 0 8px !important; }
.em-steps p { font-size: 14px; margin: 0; }
@media (max-width: 781px) {
	.em-steps { gap: 28px !important; }
	.em-steps > .wp-block-column:not(:last-child)::after {
		top: auto;
		bottom: -20px;
		right: 50%;
		transform: translateX(50%) rotate(135deg);
	}
}

/* メーカー一覧の表 → ボタン風の並び */
.em-brands table { border-collapse: separate !important; border-spacing: 8px; border: 0 !important; }
.em-brands td {
	border: 0 !important;
	background: var(--em-surface);
	border-radius: 6px;
	padding: 0 !important;
	text-align: center;
	font-size: 14px;
}
.em-brands td:empty { background: transparent; }
.em-brands td a,
.em-brands td:not(:has(a)) { display: block; padding: 10px 8px; }
.em-brands td:not(:has(a)) { color: var(--em-muted); }
.em-brands td a { color: var(--em-ink); text-decoration: none; font-weight: 700; }
.em-brands td a:hover { color: var(--em-navy); background: #fff; box-shadow: inset 0 0 0 2px var(--em-navy); border-radius: 6px; }
@media (max-width: 600px) { .em-brands td { font-size: 13px; } }

/* よくある質問（Q / A） */
.em-sec .wp-block-details {
	background: var(--em-surface);
	border-radius: 8px;
	padding: 0;
	margin: 0 0 10px !important;
	border: 0;
	overflow: hidden;
}
.em-sec .wp-block-details summary {
	position: relative;
	list-style: none;
	cursor: pointer;
	padding: 16px 48px 16px 56px;
	font-weight: 700;
	line-height: 1.6;
}
.em-sec .wp-block-details summary::-webkit-details-marker { display: none; }
.em-sec .wp-block-details summary::before {
	content: "Q";
	position: absolute;
	left: 16px;
	top: 14px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--em-navy);
	color: #fff;
	font-size: 14px;
	line-height: 28px;
	text-align: center;
}
.em-sec .wp-block-details summary::after {
	content: "";
	position: absolute;
	right: 20px;
	top: 22px;
	width: 9px;
	height: 9px;
	border-right: 2px solid var(--em-muted);
	border-bottom: 2px solid var(--em-muted);
	transform: rotate(45deg);
	transition: transform .2s;
}
.em-sec .wp-block-details[open] summary::after { transform: rotate(-135deg); top: 26px; }
.em-sec .wp-block-details > *:not(summary) {
	position: relative;
	margin: 0 !important;
	padding: 0 20px 18px 56px;
}
.em-sec .wp-block-details > p:not(summary)::before {
	content: "A";
	position: absolute;
	left: 16px;
	top: 0;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--em-mail);
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	line-height: 28px;
	text-align: center;
}

/* 枠線ボタン */
.em-sec .wp-block-button.is-style-outline > .wp-block-button__link {
	border-color: var(--em-navy);
	color: var(--em-navy);
	background: transparent;
	border-radius: 6px;
	font-size: 14px;
}
.em-sec .wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--em-navy); color: #fff; }

/* 無料査定の案内（同期パターン） */
.em-cta {
	background: var(--em-surface);
	border-radius: 12px;
	padding: 32px 28px !important;
	text-align: center;
	box-shadow: 0 1px 3px rgba(20, 30, 50, .07);
}
:is(.em-cta, .em-cta > .wp-block-group__inner-container) > h2.wp-block-heading {
	margin: 0 0 12px !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	text-align: center;
	font-size: clamp(20px, 2.6vw, 26px);
}
:is(.em-cta, .em-cta > .wp-block-group__inner-container) > h2.wp-block-heading::before,
:is(.em-cta, .em-cta > .wp-block-group__inner-container) > h2.wp-block-heading::after { display: none !important; }
.em-cta .wp-block-buttons { justify-content: center; gap: 12px; }
.em-cta .wp-block-button__link { min-width: 200px; padding: 14px 20px; border-radius: 8px; font-weight: 700; }
.em-cta p { margin-left: auto; margin-right: auto; }

/* 買取の注意書き */
.em-note { font-size: 13px; color: var(--em-muted); text-align: center; }

/* ---------- スマホ：画面下の固定ボタン ---------- */
.em-fixbar { display: none; }
@media (max-width: 991.98px) {
	.em-fixbar {
		display: grid;
		grid-auto-flow: column;
		grid-auto-columns: 1fr;
		position: fixed;
		z-index: 2000;
		left: 0;
		right: 0;
		bottom: 0;
		padding: 6px 6px calc(6px + env(safe-area-inset-bottom));
		gap: 6px;
		background: rgba(244, 245, 247, .97);
		box-shadow: 0 -1px 0 var(--em-line);
	}
	.em-fixbar a {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 2px;
		min-height: 52px;
		border-radius: 8px;
		color: #fff !important;
		font-size: 13px;
		font-weight: 700;
		text-decoration: none;
	}
	.em-fixbar__icon { font-size: 15px; line-height: 1; }
	.em-fixbar__line .em-fixbar__icon { font-size: 10px; letter-spacing: .05em; border: 1px solid rgba(255,255,255,.8); border-radius: 3px; padding: 1px 3px; }
	.em-fixbar__tel { background: var(--em-navy); }
	.em-fixbar__line { background: var(--em-line-green); }
	.em-fixbar__mail { background: var(--em-mail); }
	body { padding-bottom: 72px; }
	.page_top_btn, #page_top { bottom: 84px !important; }
}

@media (prefers-reduced-motion: reduce) {
	.em-sec .wp-block-details summary::after,
	.global-nav-list > li.em-nav-cta > a { transition: none; }
}

/* 買取実績の「もっと見る」ボタンをサイトの紺色に */
.emk-more a { border-color: var(--em-navy) !important; color: var(--em-navy) !important; }
.emk-more a:hover { background: var(--em-navy) !important; color: #fff !important; }

/* セクション内の写真は中央ぞろえ */
.em-sec .wp-block-image { text-align: center; }
.em-sec .wp-block-image img { display: block; margin-left: auto; margin-right: auto; height: auto; }
.em-sec .wp-block-image figcaption { text-align: center; }

/* ヘッダーの「LINE査定」「メール査定」には、メニューの下線を付けない */
.global-nav-list > li.em-nav-cta::before,
.global-nav-list > li.em-nav-cta::after,
.global-nav-list > li.em-nav-cta:hover::before,
.global-nav-list > li.em-nav-cta[class*="current"]::before {
	display: none !important;
	content: none !important;
	width: 0 !important;
	border: 0 !important;
}
.global-nav-list > li.em-nav-cta > a,
.global-nav-list > li.em-nav-cta > a:hover,
.global-nav-list > li.em-nav-cta > a .global-nav-name {
	text-decoration: none !important;
	border-bottom: 0 !important;
}

/* ロゴは縮めない。メニューの間隔を詰めて収める */
.site-header--layout--nav-float .site-header-container { align-items: center; }
.site-header--layout--nav-float .site-header-logo {
	flex: 0 0 auto;
	width: auto !important;
	margin-right: 24px;
}
.site-header--layout--nav-float .site-header-logo a { width: auto; }
.site-header-logo img { max-width: none !important; width: auto; height: auto; max-height: 50px; }
.site-header--layout--nav-float .global-nav { flex: 1 1 auto; min-width: 0; margin-right: 0; }
.site-header--layout--nav-float .global-nav-list { justify-content: flex-end; flex-wrap: nowrap; }
.global-nav-list > li:not(.em-nav-cta) { padding-left: 9px !important; padding-right: 9px !important; }
.global-nav-list > li:not(.em-nav-cta) > a { padding-left: 0 !important; padding-right: 0 !important; }
.global-nav-list > li > a .global-nav-name { font-size: 14px; white-space: nowrap; }
@media (min-width: 992px) and (max-width: 1199.98px) {
	.site-header-logo img { max-height: 40px; }
	.global-nav-list > li:not(.em-nav-cta) { padding-left: 6px !important; padding-right: 6px !important; }
	.global-nav-list > li > a .global-nav-name { font-size: 13px; }
	.global-nav-list > li.em-nav-cta { padding-left: 6px; }
	.global-nav-list > li.em-nav-cta > a { padding: 0 12px; min-height: 38px; }
}

/* ---------- フッター（ネイビー） ---------- */
.site-footer { background-color: var(--em-navy) !important; color: #fff; border-top: 0 !important; }
.site-footer .footer-nav { display: none; }
.em-footer { padding: 56px 0 32px; }
.em-footer__inner {
	display: grid;
	grid-template-columns: 1.3fr 1fr 1fr 1.2fr;
	gap: 32px 40px;
}
@media (max-width: 991.98px) { .em-footer__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .em-footer__inner { grid-template-columns: minmax(0, 1fr); gap: 28px; } .em-footer { padding: 40px 0 24px; } }
.em-footer p { margin: 0 0 6px; font-size: 14px; line-height: 1.7; color: rgba(255,255,255,.88); }
.em-footer__name { font-size: 17px !important; font-weight: 700; color: #fff !important; margin-bottom: 10px !important; }
.em-footer__tel a { font-size: 22px; font-weight: 700; color: #fff !important; text-decoration: none; letter-spacing: .03em; font-variant-numeric: tabular-nums; }
.em-footer__small { font-size: 12.5px !important; color: rgba(255,255,255,.72) !important; }
.em-footer__head {
	font-size: 15px !important;
	font-weight: 700;
	color: #fff !important;
	padding-bottom: 8px;
	margin-bottom: 12px !important;
	border-bottom: 1px solid rgba(255,255,255,.25);
}
.em-footer__links { list-style: none !important; margin: 0 !important; padding: 0 !important; display: grid; gap: 6px; }
.em-footer__links li { margin: 0; padding: 0; border: 0; }
.em-footer__links li::before { display: none !important; }
.em-footer__links a { color: rgba(255,255,255,.88) !important; text-decoration: none; font-size: 14px; }
.em-footer__links a::before { content: "›"; margin-right: 8px; color: rgba(255,255,255,.55); }
.em-footer__links a:hover { color: #fff !important; text-decoration: underline; }
.em-footer__cta { display: flex; flex-direction: column; gap: 10px; }
.em-footer__cta p { margin-bottom: 2px; }
.em-footer__btn {
	display: block;
	padding: 12px 14px;
	border-radius: 8px;
	text-align: center;
	font-weight: 700;
	font-size: 14px;
	color: #fff !important;
	text-decoration: none !important;
	transition: filter .15s;
}
.em-footer__btn:hover { filter: brightness(1.1); }
.em-footer__btn--line { background: var(--em-line-green); }
.em-footer__btn--mail { background: var(--em-mail); }
.em-footer__btn--tel { background: transparent; box-shadow: inset 0 0 0 1px rgba(255,255,255,.6); }
.site-footer-copyright { border-top: 1px solid rgba(255,255,255,.18); padding-top: 16px; padding-bottom: 16px; }
.site-footer-copyright p { color: rgba(255,255,255,.7) !important; font-size: 12px; margin: 0; }
.site-footer-copyright a { color: rgba(255,255,255,.7) !important; }

/* 最後のセクションとフッターの間のすき間をなくす */
.site-body:has(.em-sec) .main-section { margin-bottom: 0 !important; }
.site-body:has(.em-sec) .entry-body > :last-child { margin-bottom: 0 !important; }

/* スマホではフッターのリンクを2列に */
@media (max-width: 600px) {
	.em-footer__links { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 12px; }
}

/* ---------- ボタンの文字を少し大きく ---------- */
.global-nav-list > li.em-nav-cta > a .global-nav-name { font-size: 15px !important; }
.em-cta .wp-block-button__link { font-size: 17px !important; padding: 16px 24px !important; min-width: 220px; }
.em-footer__btn { font-size: 15px; padding: 13px 14px; }
@media (max-width: 991.98px) {
	.em-fixbar a { font-size: 14px; min-height: 56px; }
	body { padding-bottom: 76px; }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
	.global-nav-list > li.em-nav-cta > a .global-nav-name { font-size: 14px !important; }
}

/* まとまりの途中で改行しない */
.em-nowrap { white-space: nowrap; }

/* スマホ下部の固定ボタン：文字だけ */
@media (max-width: 991.98px) {
	.em-fixbar a { font-size: 15px; min-height: 52px; letter-spacing: .02em; }
	body { padding-bottom: 72px; }
}

/* 無料査定の案内：3つのボタンを同じ幅に */
.em-cta .wp-block-buttons {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px !important;
	max-width: 840px;
	margin-left: auto !important;
	margin-right: auto !important;
}
.em-cta .wp-block-button { width: 100% !important; margin: 0 !important; }
.em-cta .wp-block-button__link { display: flex !important; align-items: center; justify-content: center; width: 100%; min-width: 0 !important; box-sizing: border-box; white-space: nowrap; }
@media (max-width: 767px) {
	.em-cta .wp-block-buttons { grid-template-columns: minmax(0, 1fr); max-width: 360px; }
	.em-cta .wp-block-button__link { font-size: 16px !important; padding: 15px 16px !important; }
}

/* =========================================================
   トップページ
   ========================================================= */
.em-sp { display: none; }
@media (max-width: 640px) { .em-sp { display: inline; } }

/* 買取品目のタイル */
ul.em-genres {
	list-style: none !important;
	padding: 0 !important;
	margin: 32px 0 0 !important;
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 12px;
}
@media (max-width: 1023px) { ul.em-genres { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 640px)  { ul.em-genres { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } }
ul.em-genres li { margin: 0 !important; padding: 0 !important; }
ul.em-genres li::before, ul.em-genres li::marker { content: none; display: none; }
ul.em-genres a {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;
	height: 100%;
	min-height: 96px;
	padding: 16px 10px;
	background: var(--em-surface);
	border: 1px solid var(--em-line);
	border-radius: 10px;
	text-align: center;
	text-decoration: none !important;
	color: var(--em-navy) !important;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.4;
	transition: border-color .15s, box-shadow .15s, transform .15s;
}
ul.em-genres a br { display: none; }
ul.em-genres a strong {
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .16em;
	color: var(--em-muted);
}
ul.em-genres a:hover { border-color: var(--em-navy); box-shadow: 0 4px 14px rgba(24, 59, 96, .12); transform: translateY(-2px); }
@media (max-width: 640px) { ul.em-genres a { min-height: 84px; font-size: 15px; } }
:is(.em-sec, .em-sec > .wp-block-group__inner-container) > p.em-lead a { color: var(--em-navy); font-weight: 700; }

/* カード2列 */
@media (min-width: 641px) { .wp-block-columns.em-cards.em-cards--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* 流れ：カード型でも矢印を出す */
.wp-block-columns.em-steps { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.wp-block-columns.em-steps > .wp-block-column { flex-basis: auto !important; width: auto !important; margin: 0 !important; }
@media (max-width: 781px) { .wp-block-columns.em-steps { grid-template-columns: minmax(0, 1fr); } }

/* 対応エリア */
.em-area > .wp-block-column { text-align: center; padding: 28px 24px !important; }
.em-area p.em-area__label { margin: 0 !important; font-weight: 700; color: var(--em-muted); letter-spacing: .08em; }
.em-area p.em-area__big { margin: 2px 0 10px !important; font-size: 32px !important; font-weight: 700; color: var(--em-navy); line-height: 1.3; }

/* ボタンを中央に */
.wp-block-buttons.em-center { justify-content: center; }

/* カード4列（PC）→2列（タブレット）→1列（スマホ） */
@media (min-width: 1024px) { .wp-block-columns.em-cards.em-cards--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px !important; } }
.em-cards--4 h3.wp-block-heading { font-size: 16px; }

/* ファーストビュー：写真を背景に、ネイビーを重ねて白文字 */
.entry-body > .em-sec.em-hero,
.em-sec.em-hero {
	padding: 0;
	min-height: 600px;
	display: flex;
	align-items: center;
	color: #fff;
}
.em-sec.em-hero > .wp-block-group__inner-container { width: 100%; }
.em-sec.em-hero::before { background: var(--em-navy); z-index: -3; }
.em-sec.em-hero::after {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	bottom: 0;
	left: calc(50% - 50vw);
	right: calc(50% - 50vw);
	background: linear-gradient(90deg, rgba(24, 59, 96, .95) 0%, rgba(24, 59, 96, .86) 38%, rgba(24, 59, 96, .45) 68%, rgba(24, 59, 96, .18) 100%);
	pointer-events: none;
}
.em-hero figure.em-hero__bg {
	position: absolute;
	z-index: -2;
	top: 0;
	bottom: 0;
	left: calc(50% - 50vw);
	right: calc(50% - 50vw);
	margin: 0 !important;
	max-width: none !important;
}
.em-hero figure.em-hero__bg img {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	object-position: center;
	border-radius: 0 !important;
}
.em-hero .em-hero__body { max-width: 740px !important; padding: 88px 0; }
.em-hero .em-hero__body > .wp-block-group__inner-container > *,
.em-hero .em-hero__body > * { margin: 0; }
.em-hero p.em-hero__catch {
	margin: 0 !important;
	font-size: clamp(30px, 4.4vw, 52px);
	font-weight: 700;
	line-height: 1.32;
	letter-spacing: .05em;
	color: #fff;
	text-shadow: 0 2px 16px rgba(0, 0, 0, .25);
}
.em-hero p.em-hero__lead {
	margin: 20px 0 0 !important;
	display: inline-block;
	padding: 6px 14px;
	background: #fff;
	color: var(--em-navy);
	font-size: clamp(16px, 1.8vw, 20px);
	font-weight: 700;
	letter-spacing: .04em;
	line-height: 1.5;
	border-radius: 4px;
}
.em-hero p.em-hero__sub {
	margin: 18px 0 0 !important;
	color: rgba(255, 255, 255, .92);
	font-size: 16px;
	line-height: 1.9;
}
.em-hero ul.em-hero__checks { justify-content: flex-start; margin: 24px 0 0 !important; gap: 8px; }
.em-hero ul.em-hero__checks li {
	background: rgba(255, 255, 255, .12);
	border: 1px solid rgba(255, 255, 255, .45);
	color: #fff;
	box-shadow: none;
	font-size: 14px;
	padding: 7px 14px 7px 34px;
}
.em-hero ul.em-hero__checks li::before { color: #fff; left: 14px; }
.em-hero .em-hero__btns { margin-top: 28px !important; gap: 12px; }
.em-hero .em-hero__btns .wp-block-button__link {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 200px; min-height: 54px; padding: 12px 22px;
	border-radius: 8px; font-weight: 700; font-size: 16px; letter-spacing: .03em;
	text-decoration: none; border: 2px solid transparent;
	transition: filter .15s, background .15s;
}
.em-hero .em-btn-line .wp-block-button__link { background: var(--em-line-green); color: #fff; }
.em-hero .em-btn-mail .wp-block-button__link { background: var(--em-mail); color: #fff; }
.em-hero .em-btn-tel .wp-block-button__link { background: transparent; color: #fff; border-color: rgba(255, 255, 255, .8); }
.em-hero .em-btn-line .wp-block-button__link:hover,
.em-hero .em-btn-mail .wp-block-button__link:hover { filter: brightness(1.1); }
.em-hero .em-btn-tel .wp-block-button__link:hover { background: rgba(255, 255, 255, .12); }
@media (max-width: 767px) {
	.entry-body > .em-sec.em-hero,
	.em-sec.em-hero { min-height: 0; }
	.em-sec.em-hero::after { background: linear-gradient(180deg, rgba(24, 59, 96, .72) 0%, rgba(24, 59, 96, .88) 55%, rgba(24, 59, 96, .95) 100%); }
	.em-hero .em-hero__body { padding: 52px 0 44px; }
	.em-hero p.em-hero__sub { font-size: 15px; }
	.em-hero p.em-hero__lead { font-size: 15px; padding: 6px 12px; }
	.em-hero .em-hero__btns { flex-direction: column; align-items: stretch; }
	.em-hero .em-hero__btns .wp-block-button { width: 100%; }
	.em-hero .em-hero__btns .wp-block-button__link { width: 100%; min-width: 0; }
}

/* ネイビーのセクション（白文字） */
.em-sec.em-sec--navy::before { background: var(--em-navy); }
:is(.em-sec--navy, .em-sec--navy > .wp-block-group__inner-container) > h2.wp-block-heading { color: #fff; }
:is(.em-sec--navy, .em-sec--navy > .wp-block-group__inner-container) > p.em-en { color: rgba(255, 255, 255, .7); }
:is(.em-sec--navy, .em-sec--navy > .wp-block-group__inner-container) > p.em-note { color: rgba(255, 255, 255, .8); }
:is(.em-sec--navy, .em-sec--navy > .wp-block-group__inner-container) > p { color: #fff; }
.em-sec--navy .em-steps > .wp-block-column:not(:last-child)::after { border-color: #fff; }
.em-sec--navy .em-cta { box-shadow: 0 10px 30px rgba(0, 0, 0, .18); }

/* 背景写真：PC用とスマホ用の出し分け */
.em-hero figure.em-hero__bg--sp { display: none; }
/* スマホ：写真は上に大きく見せ、文字はその下のネイビー地に白で載せる */
@media (max-width: 767px) {
	.entry-body > .em-sec.em-hero,
	.em-sec.em-hero { display: block; }
	.em-sec.em-hero::after { display: none; }
	.em-hero figure.em-hero__bg {
		position: relative;
		z-index: 0;
		inset: auto;
		width: 100vw;
		margin: 0 calc(50% - 50vw) !important;
	}
	.em-hero figure.em-hero__bg::after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		height: 30%;
		background: linear-gradient(180deg, rgba(24, 59, 96, 0) 0%, var(--em-navy) 100%);
	}
	.em-hero figure.em-hero__bg img { height: auto !important; aspect-ratio: 4 / 3; object-position: center; }
	.em-hero figure.em-hero__bg--pc:not(:only-of-type) { display: none; }
	.em-hero figure.em-hero__bg--sp { display: block; }
	.em-hero .em-hero__body { padding: 8px 0 44px; margin-top: 0 !important; }
}

/* ---- 1.5.3 グリッドの後のボタン・文章に余白 ---- */
.em-sec :is(ul.em-genres, .wp-block-columns, .wp-block-details, .wp-block-shortcode, .emk-list, .emk-grid) + :is(p, .wp-block-buttons) { margin-top: 36px !important; }
.em-sec :is(ul.em-genres, .wp-block-columns) + p.em-note { margin-top: 28px !important; }
.em-sec .wp-block-buttons.em-center { margin-top: 36px !important; }
.em-sec p.em-note { line-height: 1.9; }
.em-sec ul.em-genres { margin-bottom: 0 !important; }
.em-sec .wp-block-columns { margin-bottom: 0 !important; }
.em-sec ul.em-genres + p.em-lead a { display: inline-block; padding: 4px 0; }
@media (max-width: 640px) {
	.em-sec :is(ul.em-genres, .wp-block-columns, .wp-block-details) + :is(p, .wp-block-buttons),
	.em-sec .wp-block-buttons.em-center { margin-top: 28px !important; }
}
.em-cta .wp-block-buttons + p, .em-cta .wp-block-buttons + * { margin-top: 20px !important; }

/* ---- 1.5.8 PC：写真はネイビーで覆わず、その上に白文字（影で読みやすく）。スマホは従来どおり ---- */
@media (min-width: 768px) {
	.entry-body > .em-sec.em-hero,
	.em-sec.em-hero {
		min-height: 43.75vw; /* 画面幅に対して16:7（1920×840の写真が切れずに見える高さ） */
		align-items: center;
	}
	.em-sec.em-hero::before { background: #000; }
	.em-sec.em-hero::after { display: none; }
	.em-hero figure.em-hero__bg img { object-position: center; }
	.em-hero .em-hero__body { max-width: 760px !important; padding: 9vw 0 2.5vw; }
}
@media (min-width: 768px) and (max-width: 1199px) {
	.entry-body > .em-sec.em-hero,
	.em-sec.em-hero { min-height: max(600px, 43.75vw); align-items: flex-end; }
	.em-hero .em-hero__body { padding: 200px 0 48px; }
}
@media (min-width: 768px) {
	.em-hero p.em-hero__catch,
	.em-hero p.em-hero__sub,
	.em-hero ul.em-hero__checks li {
		text-shadow: 0 2px 4px rgba(0, 0, 0, .85), 0 0 18px rgba(0, 0, 0, .75), 0 0 36px rgba(0, 0, 0, .6);
	}
	.em-hero p.em-hero__sub { font-weight: 700; }
	.em-hero ul.em-hero__checks li { background: rgba(0, 0, 0, .35); border-color: rgba(255, 255, 255, .7); }
	.em-hero p.em-hero__lead { box-shadow: 0 4px 18px rgba(0, 0, 0, .45); }
	.em-hero .em-btn-tel .wp-block-button__link { background: rgba(0, 0, 0, .35); }
}
@media (min-width: 1200px) {
	.em-hero p.em-hero__catch { font-size: clamp(36px, 3.2vw, 56px); }
	.em-hero .em-hero__body { max-width: 840px !important; padding: 7.5vw 0 2.5vw; }
	.em-hero p.em-hero__sub { margin-top: 14px !important; line-height: 1.75; }
	.em-hero ul.em-hero__checks { margin-top: 16px !important; }
	.em-hero .em-hero__btns { margin-top: 20px !important; }
}

/* ---- 1.5.10 PC：写真は元の縦横比のまま（拡大・切り抜きなし）で表示し、文字はその上に重ねる ---- */
@media (min-width: 768px) {
	.entry-body > .em-sec.em-hero,
	.em-sec.em-hero { display: grid; min-height: 0 !important; }
	/* 写真と文字を同じマスに重ねる（WordPressの版により内側の囲みがある場合・ない場合の両方に対応） */
	.em-sec.em-hero > .wp-block-group__inner-container { display: grid; }
	.em-sec.em-hero > *,
	.em-sec.em-hero > .wp-block-group__inner-container > * { grid-area: 1 / 1; min-width: 0; }
	.em-hero figure.em-hero__bg {
		position: relative;
		z-index: -2;
		inset: auto;
		width: 100vw;
		margin: 0 calc(50% - 50vw) !important;
		align-self: stretch;
	}
	.em-hero figure.em-hero__bg { align-self: start; }
	/* 写真は常に元の縦横比（拡大・切り抜きしない） */
	.em-hero figure.em-hero__bg img { width: 100% !important; height: auto !important; aspect-ratio: auto; object-fit: fill; min-height: 0; max-height: none; }
	.em-hero .em-hero__body { align-self: end; padding: 0 0 3.5vw !important; margin-top: 9vw !important; }
}
/* 幅1200px未満のPC・タブレット：文字が写真に収まらないので、写真の下のネイビー地に置く（写真は拡大しない） */
@media (min-width: 768px) and (max-width: 1199px) {
	.em-sec.em-hero::before { background: var(--em-navy); }
	.em-hero .em-hero__body { grid-area: 2 / 1 !important; align-self: start; margin-top: 0 !important; padding: 40px 0 52px !important; }
}
/* 幅1200〜1339px：写真の上に収まるよう、文字を少し小さく */
@media (min-width: 1200px) and (max-width: 1339px) {
	.em-hero .em-hero__body { margin-top: 12.5vw !important; padding-bottom: 2.2vw !important; }
	.em-hero p.em-hero__catch { font-size: 2.9vw; }
	.em-hero p.em-hero__lead { font-size: 15px; padding: 5px 12px; margin-top: 12px !important; }
	.em-hero p.em-hero__sub { font-size: 14px; margin-top: 10px !important; line-height: 1.7; }
	.em-hero ul.em-hero__checks { margin-top: 12px !important; }
	.em-hero ul.em-hero__checks li { font-size: 13px; }
	.em-hero .em-hero__btns { margin-top: 14px !important; }
	.em-hero .em-hero__btns .wp-block-button__link { padding-top: 12px !important; padding-bottom: 12px !important; }
}

/* ---- 1.5.12 横長の写真（看板なし）：キャッチを1行にして、写真の縦中央に文字を置く ---- */
@media (min-width: 1200px) {
	.em-hero .em-hero__body { align-self: center !important; margin-top: 0 !important; padding: 2vw 0 !important; }
	.em-hero p.em-hero__catch br { display: none; }
	.em-hero p.em-hero__catch { font-size: clamp(34px, 2.9vw, 56px) !important; line-height: 1.3; }
}

/* ---- 1.5.13 トップの「電話で相談」ボタン：ネイビー地に白文字 ---- */
.em-hero .em-btn-tel .wp-block-button__link,
.em-hero .em-hero__btns .em-btn-tel .wp-block-button__link {
	background: var(--em-navy) !important;
	color: #fff !important;
	border-color: var(--em-navy) !important;
}
.em-hero .em-btn-tel .wp-block-button__link:hover { filter: brightness(1.25); }
/* 写真の下のネイビー地に置く幅では、背景と同化しないよう白い縁を付ける */
@media (max-width: 1199px) {
	.em-hero .em-btn-tel .wp-block-button__link { border-color: rgba(255, 255, 255, .85) !important; }
}
/* ボタンの並び：左から 電話・メール・LINE（下の「無料査定・ご相談はこちら」と同じ順） */
.em-hero .em-hero__btns .em-btn-tel { order: 1; }
.em-hero .em-hero__btns .em-btn-mail { order: 2; }
.em-hero .em-hero__btns .em-btn-line { order: 3; }

/* ---- 1.5.15 写真の並び（2枚以上続く写真はタイル状に）・アイコン画像のカード ---- */
.wp-block-group.em-photos > .wp-block-group__inner-container,
.wp-block-group.em-photos:not(:has(> .wp-block-group__inner-container)) {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
	gap: 16px;
	align-items: center;
}
.wp-block-group.em-photos { margin: 24px 0 !important; }
.em-photos .wp-block-image { margin: 0 !important; }
.em-photos .wp-block-image img { width: 100%; height: auto; border-radius: 8px; display: block; }
.em-photos .wp-block-image figcaption { font-size: 13px; text-align: center; }
@media (max-width: 640px) {
	.wp-block-group.em-photos > .wp-block-group__inner-container,
	.wp-block-group.em-photos:not(:has(> .wp-block-group__inner-container)) { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
}
/* アイコン画像のカード：切り抜かずに小さめに表示 */
.em-cards.em-cards--contain > .wp-block-column > .wp-block-image { text-align: center; }
.em-cards.em-cards--contain > .wp-block-column > .wp-block-image img {
	width: auto !important;
	max-width: 100%;
	height: 120px !important;
	aspect-ratio: auto !important;
	object-fit: contain !important;
	margin: 8px auto 0;
}
.em-cards > .wp-block-column > h3.wp-block-heading { border-left: 0 !important; padding-left: 0 !important; margin-bottom: 8px !important; }

/* ---- 1.5.16 スマホ・タブレット（文字がネイビー地に載る幅）：電話ボタンは白地にネイビー文字 ---- */
@media (max-width: 1199px) {
	.em-hero .em-hero__btns .em-btn-tel .wp-block-button__link,
	.em-hero .em-btn-tel .wp-block-button__link {
		background: #fff !important;
		color: var(--em-navy) !important;
		border: 2px solid #fff !important;
	}
	.em-hero .em-btn-tel .wp-block-button__link:hover { filter: none; background: #eef2f7 !important; }
}

/* ---- 1.5.17 「楽器にも、お客様にも、誠実なお店です。」は白い帯なしの白文字 ---- */
.em-hero p.em-hero__lead,
.em-hero .em-hero__body p.em-hero__lead {
	background: none !important;
	color: #fff !important;
	padding: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	display: block;
	font-weight: 700;
	text-shadow: 0 2px 4px rgba(0, 0, 0, .85), 0 0 18px rgba(0, 0, 0, .7);
}
@media (max-width: 1199px) { .em-hero p.em-hero__lead { text-shadow: none; } }
/* 1.5.18 リード文は使わない（作り直し前のページでも非表示） */
.em-hero p.em-hero__lead { display: none !important; }
.em-hero p.em-hero__catch + p.em-hero__lead + p.em-hero__sub { margin-top: 18px !important; }

/* ---- 1.5.19 買取品目のタイル：楽器ごとの写真を背景に、白文字 ---- */
ul.em-genres a {
	position: relative;
	overflow: hidden;
	min-height: 120px;
	background-color: var(--em-navy);
	background-size: cover;
	background-position: center;
	border: 0;
	color: #fff !important;
	text-shadow: 0 1px 3px rgba(0, 0, 0, .8), 0 0 12px rgba(0, 0, 0, .6);
	isolation: isolate;
}
ul.em-genres a::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: inherit;
	background-size: cover;
	background-position: center;
	transition: transform .35s ease;
}
ul.em-genres a strong { color: rgba(255, 255, 255, .85); }
ul.em-genres a:hover { box-shadow: 0 6px 18px rgba(24, 59, 96, .28); transform: translateY(-2px); }
ul.em-genres a:hover::before { transform: scale(1.06); }
@media (max-width: 640px) { ul.em-genres a { min-height: 100px; } }
ul.em-genres a[href="/guitar/"] { background-image: url("/wp-content/uploads/2026/11/guitar.webp"); }
ul.em-genres a[href="/bass-guitar/"] { background-image: url("/wp-content/uploads/2026/11/bass.webp"); }
ul.em-genres a[href="/effector/"] { background-image: url("/wp-content/uploads/2026/11/effector.webp"); }
ul.em-genres a[href="/ampkaitori/"] { background-image: url("/wp-content/uploads/2026/11/amplifier.webp"); }
ul.em-genres a[href="/drum/"] { background-image: url("/wp-content/uploads/2026/11/drum.webp"); }
ul.em-genres a[href="/synthesizer/"] { background-image: url("/wp-content/uploads/2026/11/synthsizer.webp"); }
ul.em-genres a[href="/synthesizer/sampler.html"] { background-image: url("/wp-content/uploads/2026/11/sampler.webp"); }
ul.em-genres a[href="/epiano/"] { background-image: url("/wp-content/uploads/2026/11/digital-piano.webp"); }
ul.em-genres a[href="/microphone/"] { background-image: url("/wp-content/uploads/2026/11/microphone.webp"); }
ul.em-genres a[href="/dtm/"] { background-image: url("/wp-content/uploads/2026/11/recoding-gear.webp"); }
ul.em-genres a[href="/dtm/Turntable.html"] { background-image: url("/wp-content/uploads/2026/11/turntable.webp"); }
ul.em-genres a[href="/ukulele/"] { background-image: url("/wp-content/uploads/2026/11/ukulele.webp"); }
ul.em-genres a[href="/wind-instrument/"] { background-image: url("/wp-content/uploads/2026/11/wind-instrument.webp"); }
ul.em-genres a[href="/stringed-instrument/"] { background-image: url("/wp-content/uploads/2026/11/violin.webp"); }

/* 会社概要：運営SNSのアイコン */
p.em-sns { display: flex; justify-content: center; gap: 40px; flex-wrap: wrap; margin-top: 24px !important; }
p.em-sns a { display: flex; flex-direction: column; align-items: center; gap: 8px; text-decoration: none !important; color: var(--em-navy) !important; font-weight: 700; font-size: 14px; }
p.em-sns img { width: 64px !important; height: 64px !important; object-fit: contain; border-radius: 50%; transition: transform .15s; }
p.em-sns a:hover img { transform: scale(1.08); }
/* 1.5.40 Xの画像を余白なしのものに差し替えたため、拡大はなし（Instagramと同じ大きさ） */
p.em-sns a[href*="x.com"] img { transform: none; }
p.em-sns a[href*="x.com"]:hover img { transform: scale(1.08); }
p.em-sns a[href*="x.com"] span { margin-top: 0; }
/* アイコンを大きめに */
p.em-sns { gap: 56px; }
p.em-sns img { width: 88px !important; height: 88px !important; }
p.em-sns a { font-size: 15px; gap: 12px; }
@media (max-width: 640px) { p.em-sns img { width: 72px !important; height: 72px !important; } p.em-sns { gap: 40px; } }
/* SNSアイコンの直前の説明文も中央ぞろえ */
p:has(+ p.em-sns) { text-align: center; }
/* 1.5.21 トップ：買取価格を調べる */
.em-price-sec .emp-box { margin-top: 8px; }
.em-price-sec .emp-box + p.em-lead, .em-price-sec .wp-block-shortcode + p.em-lead { margin-top: 18px !important; }
/* ヘッダーのメニューを少し詰める（「買取価格」を足しても1行に収まるように） */
@media (min-width: 992px) {
	.global-nav-list > li:not(.em-nav-cta) { padding-left: 7px !important; padding-right: 7px !important; }
}
@media (min-width: 992px) and (max-width: 1279px) {
	.global-nav-list > li:not(.em-nav-cta) { padding-left: 5px !important; padding-right: 5px !important; }
	.global-nav-list > li > a .global-nav-name { font-size: 12px; letter-spacing: 0; }
}
@media (min-width: 992px) and (max-width: 1219px) {
	.site-header-logo img { max-width: 167px !important; height: auto !important; }
}

/* ---- 1.5.22 ふつうの表（スペック表・査定例など）を、価格表と同じトーンに ---- */
.entry-body .wp-block-table { margin: 20px 0 !important; overflow-x: auto; }
.entry-body .wp-block-table table {
	width: 100%;
	border-collapse: separate !important;
	border-spacing: 0;
	background: #fff;
	border: 1px solid var(--em-line) !important;
	border-radius: 10px;
	overflow: hidden;
	font-size: 15px;
	line-height: 1.6;
}
.entry-body .wp-block-table th,
.entry-body .wp-block-table td {
	border: 0 !important;
	border-bottom: 1px solid #eceef2 !important;
	padding: 11px 14px !important;
	vertical-align: middle;
	text-align: left;
}
.entry-body .wp-block-table tr:last-child > * { border-bottom: 0 !important; }
.entry-body .wp-block-table thead th,
.entry-body .wp-block-table thead td {
	background: var(--em-navy) !important;
	color: #fff !important;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .04em;
	text-align: center;
	border-bottom: 0 !important;
}
.entry-body .wp-block-table tbody tr:nth-child(even) { background: #f7f8fa; }
/* 2列の表（項目｜内容）は、左の列を見出しらしく */
.entry-body .wp-block-table tbody tr > td:first-child:nth-last-child(2),
.entry-body .wp-block-table tbody tr > th:first-child:nth-last-child(2) {
	width: 32%;
	font-weight: 700;
	color: var(--em-navy);
	background: #f1f4f8;
}
/* 「〇〇円」が入ったセルは右寄せ・太字 */
.entry-body .wp-block-table td.em-yen { text-align: right; font-weight: 700; color: var(--em-navy); white-space: nowrap; }
@media (max-width: 767px) {
	.entry-body .wp-block-table table { font-size: 14px; }
	.entry-body .wp-block-table th, .entry-body .wp-block-table td { padding: 9px 10px !important; }
}

/* ---- 1.5.23 「〇〇の買取価格を調べる」は、直前のセクションの中に区切り線を入れて置く（背景の色分けを崩さないため） ---- */
.wp-block-group.em-price-sub { margin-top: 56px !important; padding-top: 44px; border-top: 1px solid var(--em-line); }
.em-price-sub h3.wp-block-heading { text-align: center; border: 0 !important; padding: 0 !important; margin: 0 0 10px !important; font-size: 22px; }
.em-price-sub p.em-lead { margin-bottom: 18px !important; }
.em-price-sub .wp-block-shortcode + p.em-lead, .em-price-sub .emp-box + p.em-lead { margin-top: 16px !important; }
@media (max-width: 640px) { .wp-block-group.em-price-sub { margin-top: 40px !important; padding-top: 32px; } .em-price-sub h3.wp-block-heading { font-size: 19px; } }
.em-price-sub p.em-lead { text-align: center; }
.em-price-sub .emp-box { max-width: 640px; margin-left: auto; margin-right: auto; }
.em-price-sub > .wp-block-group__inner-container > *, .em-price-sub > * { margin-left: auto; margin-right: auto; }
.em-price-sub p.em-lead a { font-weight: 700; color: var(--em-navy) !important; }

/* ---- 1.5.24 トップ：メディア掲載・お知らせ（選ばれる理由の下） ---- */
ul.em-news { list-style: none !important; max-width: 760px; margin: 8px auto 0 !important; padding: 0 !important; background: #fff; border: 1px solid var(--em-line); border-radius: 10px; overflow: hidden; }
ul.em-news li { display: flex; gap: 16px; align-items: baseline; margin: 0 !important; padding: 14px 18px !important; border-bottom: 1px solid #eceef2; }
ul.em-news li:last-child { border-bottom: 0; }
ul.em-news li::before { content: none !important; }
.em-news__date { flex: none; font-size: 13px; font-weight: 700; color: var(--em-muted); font-variant-numeric: tabular-nums; }
ul.em-news li a { color: var(--em-ink) !important; text-decoration: none !important; font-weight: 700; }
ul.em-news li a:hover { color: var(--em-navy) !important; text-decoration: underline !important; }
.em-news-sub p.em-lead { margin-top: 16px !important; }
@media (max-width: 640px) { ul.em-news li { flex-direction: column; gap: 2px; padding: 12px 14px !important; } }
/* 1.5.25 査定事例（写真＋説明のカード） */
.em-sec .wp-block-columns.em-case { display: flex !important; flex-wrap: nowrap !important; align-items: flex-start !important; gap: 28px !important; margin: 20px 0 0 !important; padding: 22px !important; background: #fff; border: 1px solid #e3e7ec; border-radius: 12px; }
.em-sec .wp-block-columns.em-case:first-of-type { margin-top: 8px !important; }
.em-case > .wp-block-column:first-child { flex: 0 0 38% !important; max-width: 38%; }
.em-case > .wp-block-column:last-child { flex: 1 1 auto !important; min-width: 0; }
.em-case > .wp-block-column > * { margin-top: 0 !important; margin-bottom: 10px !important; }
.em-case > .wp-block-column > *:last-child { margin-bottom: 0 !important; }
.em-case .wp-block-image img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 8px; }
.em-case p { font-size: 15px; line-height: 1.9; }
.em-case h3.wp-block-heading { font-size: 17px !important; }
.em-sec .em-case-lead { margin-bottom: 8px !important; }
.em-sec .wp-block-columns.em-case + :is(h3, p) { margin-top: 32px !important; }
@media (max-width: 781px) {
	.em-sec .wp-block-columns.em-case { flex-direction: column !important; gap: 14px !important; padding: 16px !important; }
	.em-case > .wp-block-column:first-child { flex-basis: auto !important; max-width: none; width: 100%; }
}
/* 1.5.26 関連ページのタイル（中央寄せ・固定幅） */
.em-sec ul.em-genres.em-related { display: flex !important; flex-wrap: wrap; justify-content: center; gap: 16px !important; }
.em-sec ul.em-genres.em-related > li { flex: 0 0 240px; max-width: 240px; }
@media (max-width: 640px) { .em-sec ul.em-genres.em-related > li { flex: 0 0 calc(50% - 8px); max-width: calc(50% - 8px); } }
/* 1.5.27 カードや表のすぐ後に「無料査定・ご相談」の枠が来るときは間を空ける */
.em-sec :is(.wp-block-columns, ul.em-genres, .wp-block-table, .wp-block-image, .wp-block-details) + .em-cta,
.em-sec > .wp-block-group__inner-container > :is(.wp-block-columns, ul.em-genres, .wp-block-table, .wp-block-image, .wp-block-details) + .em-cta { margin-top: 48px !important; }
@media (max-width: 640px) { .em-sec :is(.wp-block-columns, ul.em-genres, .wp-block-table, .wp-block-image, .wp-block-details) + .em-cta { margin-top: 32px !important; } }
/* 1.5.29 エレキギター・アコースティックギターのタイル */
ul.em-genres a[href="/electric-guitar/"] { background-image: url("/wp-content/uploads/2026/11/electric.webp"); }
ul.em-genres a[href="/acoustic-guitar/"] { background-image: url("/wp-content/uploads/2026/11/acostic.webp"); }
/* 1.5.30 「買取実績をもっと見る」を「買取価格表を見る」と同じ、中央の太字リンクに */
p.emk-more { margin: 20px 0 0 !important; text-align: center !important; }
p.emk-more a, p.emk-more a:hover { display: inline-block; padding: 4px 0 !important; border: 0 !important; border-radius: 0 !important; background: none !important; color: var(--em-navy, #183B60) !important; font-size: 16px !important; font-weight: 700 !important; text-decoration: underline dotted rgba(0, 0, 0, .3) !important; text-decoration-thickness: 1px !important; text-underline-offset: 2px !important; }
p.emk-more a:hover { opacity: .75; }
/* 1.5.33 写真＋説明のカードや横並びのすぐ後ろに、地図や文章が続くときの余白 */
.em-sec .wp-block-columns.em-case + *:not(.wp-block-columns),
.em-sec .wp-block-columns.em-cards + p,
.em-sec .wp-block-columns.em-cards + .wp-block-html,
.em-sec .wp-block-columns.em-case + .wp-block-html { margin-top: 28px !important; }
.em-sec .wp-block-columns.em-case + .wp-block-columns.em-case { margin-top: 20px !important; }

/* 1.5.36 YouTube：サムネイル＋再生ボタン（押すまで動画を読み込まない） */
.em-yt { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #000; border-radius: 8px; overflow: hidden; cursor: pointer; }
.em-yt img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; margin: 0 !important; transition: opacity .2s; }
.em-yt:hover img { opacity: .85; }
.em-yt__play { position: absolute; left: 50%; top: 50%; width: 68px; height: 48px; transform: translate(-50%, -50%); border: 0; padding: 0; border-radius: 12px; background: rgba(33, 33, 33, .8); cursor: pointer; transition: background-color .15s; }
.em-yt__play::before { content: ""; position: absolute; left: 50%; top: 50%; transform: translate(-35%, -50%); border-style: solid; border-width: 11px 0 11px 19px; border-color: transparent transparent transparent #fff; }
.em-yt:hover .em-yt__play, .em-yt__play:focus-visible { background: #f00; }
.em-yt__play:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
.em-yt iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.wp-block-embed.wp-has-aspect-ratio .wp-block-embed__wrapper:has(.em-yt)::before { display: none; }
.wp-block-embed.wp-has-aspect-ratio .wp-block-embed__wrapper:has(.em-yt) { position: static; }

/* 1.5.37〜1.5.39 アイキャッチ画像の下の説明文（ひとこと）：画像と同じ幅で中央そろえ、少し間をあける */
body :is(.entry-body > .em-sec:first-child, .entry-body > .em-sec:first-child > .wp-block-group__inner-container) > figure.wp-block-image + p:not(.em-en):not(:has(+ ul.em-genres)),
body :is(.entry-body > .em-sec:first-child, .entry-body > .em-sec:first-child > .wp-block-group__inner-container) > figure.wp-block-image + p:not(.em-en):not(:has(+ ul.em-genres)) + p:not(.em-en):not(:has(+ ul.em-genres)) {
	max-width: 960px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	text-align: center !important;
	line-height: 1.9;
}
body :is(.entry-body > .em-sec:first-child, .entry-body > .em-sec:first-child > .wp-block-group__inner-container) > figure.wp-block-image + p:not(.em-en):not(:has(+ ul.em-genres)) { margin-top: 28px !important; }
body :is(.entry-body > .em-sec:first-child, .entry-body > .em-sec:first-child > .wp-block-group__inner-container) > figure.wp-block-image + p:not(.em-en):not(:has(+ ul.em-genres)) + p:not(.em-en):not(:has(+ ul.em-genres)) { margin-top: 12px !important; }
body :is(.entry-body > .em-sec:first-child, .entry-body > .em-sec:first-child > .wp-block-group__inner-container) > figure.wp-block-image + p:not(.em-en):not(:has(+ ul.em-genres)) + :is(p.em-lead, ul.em-genres, ul.em-checks, .wp-block-buttons),
body :is(.entry-body > .em-sec:first-child, .entry-body > .em-sec:first-child > .wp-block-group__inner-container) > figure.wp-block-image + p:not(.em-en):not(:has(+ ul.em-genres)) + p:not(.em-en):not(:has(+ ul.em-genres)) + :is(p.em-lead, ul.em-genres, ul.em-checks, .wp-block-buttons) { margin-top: 36px !important; }
@media (max-width: 640px) {
	body :is(.entry-body > .em-sec:first-child, .entry-body > .em-sec:first-child > .wp-block-group__inner-container) > figure.wp-block-image + p:not(.em-en):not(:has(+ ul.em-genres)) { margin-top: 20px !important; }
	body :is(.entry-body > .em-sec:first-child, .entry-body > .em-sec:first-child > .wp-block-group__inner-container) > figure.wp-block-image + p:not([class*="em-"]):not(:has(+ ul.em-genres)),
	body :is(.entry-body > .em-sec:first-child, .entry-body > .em-sec:first-child > .wp-block-group__inner-container) > figure.wp-block-image + p:not(.em-en):not(:has(+ ul.em-genres)) + p:not([class*="em-"]):not(:has(+ ul.em-genres)) { text-align: left !important; }
	body :is(.entry-body > .em-sec:first-child, .entry-body > .em-sec:first-child > .wp-block-group__inner-container) > figure.wp-block-image + p:not(.em-en):not(:has(+ ul.em-genres)) + :is(p.em-lead, ul.em-genres, ul.em-checks, .wp-block-buttons) { margin-top: 28px !important; }
}

/* 1.5.38 カード・表・画像などのすぐ後に来る小見出しに余白をあける（ギチギチ防止） */
:is(.em-sec, .em-sec > .wp-block-group__inner-container) > :not(p, h2, h3, h4, .wp-block-spacer) + :is(h3, h4).wp-block-heading:not(.emp-series) { margin-top: 48px !important; }
@media (max-width: 640px) {
	:is(.em-sec, .em-sec > .wp-block-group__inner-container) > :not(p, h2, h3, h4, .wp-block-spacer) + :is(h3, h4).wp-block-heading:not(.emp-series) { margin-top: 36px !important; }
}
