/* イーストマウンテン 買取実績：表示枠のデザイン
   色を変えたいときは、下の --emk-accent などを書き換えてください。 */
.emk, .emk-modal {
	--emk-accent: #b3261e;
	--emk-ink: #222;
	--emk-muted: #6b6b6b;
	--emk-line: #e2e2e2;
	--emk-bg: #fff;
	--emk-soft: #f6f5f3;
	margin: 0 0 2em;
	color: var(--emk-ink);
}
.emk *, .emk *::before, .emk *::after { box-sizing: border-box; }

.emk-list {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: grid;
	gap: 16px;
}

/* 横スクロール（PC・スマホ共通） */
.emk--scroll .emk-list {
	grid-auto-flow: column;
	grid-auto-columns: 280px;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	padding: 2px 2px 14px !important;
	scrollbar-width: thin;
	scrollbar-color: #bbb transparent;
}
.emk--scroll .emk-list::-webkit-scrollbar { height: 8px; }
.emk--scroll .emk-list::-webkit-scrollbar-thumb { background: #c8c8c8; border-radius: 4px; }
.emk--scroll .emk-card { scroll-snap-align: start; }
@media (max-width: 600px) {
	.emk--scroll .emk-list { grid-auto-columns: 78%; }
}

/* 並べて表示 */
.emk--grid .emk-list { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }

/* カード */
.emk-card {
	margin: 0 !important;
	padding: 0 !important;
	display: flex;
	flex-direction: column;
	background: var(--emk-bg);
	border: 1px solid var(--emk-line);
	border-radius: 8px;
	overflow: hidden;
	min-width: 0;
}
.emk-card::before { content: none !important; }
.emk-card.is-pin { border: 2px solid #c9971c; }

.emk-card__img {
	position: relative;
	display: block;
	aspect-ratio: 4 / 3;
	background: var(--emk-soft);
	overflow: hidden;
}
.emk-card__img img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	max-width: none;
	object-fit: cover;
	margin: 0 !important;
	transition: transform .3s ease;
}
.emk-card__img:hover img { transform: scale(1.03); }
.emk-card__noimg {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	color: #999;
	font-size: 13px;
}
.emk-card__badge {
	position: absolute;
	top: 8px;
	left: 8px;
	background: rgba(20, 20, 20, .78);
	color: #fff;
	font-size: 12px;
	line-height: 1;
	padding: 6px 8px;
	border-radius: 4px;
}

.emk-card__body {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 12px 14px 14px;
	flex: 1;
	font-size: 13px;
	line-height: 1.6;
}
.emk-card__title {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	font-size: 16px !important;
	line-height: 1.4 !important;
	font-weight: 700;
}
.emk-card__title::before, .emk-card__title::after { content: none !important; }
.emk-card__title a { color: var(--emk-ink); text-decoration: none; }
.emk-card__title a:hover { color: var(--emk-accent); text-decoration: underline; }

.emk-card__price {
	margin: 0 !important;
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 8px;
	padding: 6px 10px;
	background: var(--emk-soft);
	border-radius: 6px;
}
.emk-card__price span { font-size: 12px; color: var(--emk-muted); }
.emk-card__price strong { font-size: 20px; color: var(--emk-accent); letter-spacing: .02em; font-variant-numeric: tabular-nums; }
.emk-card__price small { font-size: 13px; margin-left: 2px; }

.emk-card__meta { margin: 0 !important; display: grid; gap: 2px; }
.emk-card__meta div { display: flex; gap: 8px; }
.emk-card__meta dt { flex: 0 0 4.5em; color: var(--emk-muted); font-weight: normal; margin: 0; }
.emk-card__meta dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }

.emk-card__good, .emk-card__minus { margin: 0 !important; overflow-wrap: anywhere; }
.emk-card__good span, .emk-card__minus span { display: inline-block; margin-right: 6px; font-weight: 700; }
.emk-card__good span { color: #1e7b45; }
.emk-card__minus span { color: #a5600c; }

.emk-card__foot {
	margin: auto 0 0 !important;
	padding-top: 8px;
	border-top: 1px dashed var(--emk-line);
	font-size: 12px;
	color: var(--emk-muted);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 4px 10px;
}

.emk-note { font-size: 12px; color: var(--emk-muted); margin: 8px 0 0 !important; }
.emk-more { margin: 10px 0 0 !important; text-align: right; }
.emk-more a {
	display: inline-block;
	padding: 8px 16px;
	border: 1px solid var(--emk-accent);
	border-radius: 999px;
	color: var(--emk-accent);
	text-decoration: none;
	font-size: 14px;
}
.emk-more a:hover { background: var(--emk-accent); color: #fff; }
.emk-empty { color: var(--emk-muted); }

.emk-pager { display: flex; justify-content: center; align-items: center; gap: 16px; margin: 20px 0 0; }
.emk-pager a { padding: 8px 14px; border: 1px solid var(--emk-line); border-radius: 6px; text-decoration: none; color: var(--emk-ink); }
.emk-pager a:hover { border-color: var(--emk-accent); color: var(--emk-accent); }
.emk-pager__now { color: var(--emk-muted); font-size: 14px; }

/* 実績の詳細ページ */
.emk-single { margin-bottom: 2em; }
.emk-single__img { margin: 0 0 1.5em; }
.emk-single__img img { width: 100%; height: auto; border-radius: 8px; }
.emk-single__table { width: 100%; border-collapse: collapse; margin: 0 0 1.5em; font-size: 15px; }
.emk-single__table th, .emk-single__table td { border: 1px solid #e2e2e2; padding: 10px 12px; text-align: left; vertical-align: top; }
.emk-single__table th { width: 9em; background: #f6f5f3; font-weight: 600; white-space: nowrap; }
.emk-single__comment { background: #f6f5f3; border-radius: 8px; padding: 14px 18px; margin: 0 0 1em; }
.emk-single__comment h2 { font-size: 17px; margin: 0 0 6px; }
.emk-single__comment p { margin: 0; }
.emk-single__related { margin-top: 2.5em; }
.emk-single .emk-note { color: #6b6b6b; }
@media (max-width: 600px) {
	.emk-single__table th { width: 7em; }
}

/* 担当スタッフより */
.emk-card__memo { margin: 0 !important; padding: 8px 10px; background: #fbf7ee; border-radius: 6px; overflow-wrap: anywhere; }
.emk-card__memo span { display: block; font-size: 11px; font-weight: 700; color: #8a6a1c; margin-bottom: 2px; }
/* 1.2.1 買取実績の検索ボックス */
.emk-search { display: flex; flex-wrap: wrap; gap: 10px; align-items: stretch; margin: 0 0 18px; padding: 16px; background: #fff; border: 1px solid var(--emk-line, #e3e7ec); border-radius: 12px; }
.emk-search input[type="search"] { flex: 1 1 280px; min-width: 0; height: 50px; padding: 0 14px; font-size: 16px; border: 1px solid #c3cdd8; border-radius: 8px; background: #fff; box-sizing: border-box; }
.emk-search select { flex: 0 1 220px; height: 50px; padding: 0 12px; font-size: 15px; border: 1px solid #c3cdd8; border-radius: 8px; background: #fff; }
.emk-search button { flex: 0 0 auto; height: 50px; padding: 0 26px; border: 0; border-radius: 8px; background: var(--em-navy, #183B60); color: #fff; font-weight: 700; font-size: 15px; cursor: pointer; }
.emk-search input:focus, .emk-search select:focus { outline: 2px solid var(--em-navy, #183B60); outline-offset: 0; }
.emk-result { margin: 0 0 14px !important; font-size: 14px; }
.emk-result a { margin-left: 10px; font-size: 13px; }
@media (max-width: 640px) {
	.emk-search { padding: 12px; gap: 8px; }
	.emk-search input[type="search"], .emk-search select, .emk-search button { flex: 1 1 100%; height: 52px; }
}

/* 1.3.0 詳しい査定レポート */
.emk-card__report { margin: 0 !important; font-size: 13px; font-weight: 700; }
.emk-card__report a { color: var(--em-navy, #183B60); text-decoration: underline dotted rgba(0,0,0,.3); text-decoration-thickness: 1px; text-underline-offset: 2px; }
.emk-rlinks { margin: 12px 0 0 !important; font-size: 14px; line-height: 1.8; }
.emk-rlinks .sep { margin: 0 .6em; color: #aaa; }

.emk-report { margin: 0 0 2.5em; }
.emk-report__top { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px; align-items: start; margin: 0 0 2.5em; }
.emk-report__main img { display: block; width: 100%; height: auto; border-radius: 10px; }
.emk-report__spec { width: 100%; border-collapse: collapse; margin: 0 !important; font-size: 15px; }
.emk-report__spec th, .emk-report__spec td { border: 1px solid #e2e2e2; padding: 10px 12px; text-align: left; vertical-align: top; }
.emk-report__spec th { width: 7.5em; background: #f6f5f3; font-weight: 600; white-space: nowrap; }
.emk-report__spec .is-price strong { display: block; font-size: 22px; color: #b3261e; }
.emk-report__spec .is-price small { display: block; font-size: 11px; color: #6b6b6b; line-height: 1.5; margin-top: 4px; }
.emk-report__sec { margin: 0 0 2.8em; }
.emk-report__sec > h2 { margin-bottom: 0 !important; }
.emk-report__sec > .em-en { margin-top: 2px !important; margin-bottom: 1.2em !important; }
.emk-report__photos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 1em 0 1.6em; }
.emk-report__photos.is-one { grid-template-columns: minmax(0, 560px); }
.emk-report__photos img { display: block; width: 100%; height: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 8px; }
.emk-zoom { display: block; position: relative; cursor: zoom-in; }
.emk-zoom::after { content: "＋"; position: absolute; right: 8px; bottom: 8px; width: 28px; height: 28px; border-radius: 50%; background: rgba(0,0,0,.55); color: #fff; font-size: 16px; line-height: 28px; text-align: center; pointer-events: none; }
.emk-report__points { list-style: none !important; margin: 0 0 1em !important; padding: 0 !important; display: grid; gap: 8px; }
.emk-report__points li { margin: 0 !important; padding: 10px 14px !important; background: #f6f5f3; border-radius: 8px; }
.emk-report__points li::before { content: none !important; }
.emk-report__points span { font-weight: 700; margin-right: 8px; }
.emk-report__points .is-good span { color: #1e7b45; }
.emk-report__points .is-minus span { color: #a5600c; }
.emk-report__staff { background: #fbf7ee; border-radius: 10px; padding: 16px 20px; }
.emk-report__staff p { margin: 0 0 .6em; }
.emk-report__staff p:last-child { margin-bottom: 0; }
.emk-report__staffname { text-align: right; font-size: 13px; color: #6b6b6b; }
.emk-report__maker { text-align: center !important; }
@media (max-width: 782px) {
	.emk-report__top { grid-template-columns: 1fr; gap: 18px; }
	.emk-report__photos { gap: 8px; }
}

/* 一覧カード [kaitori_report] */
.emk-rcards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin: 0 0 1em; }
.emk-rcard { display: flex; flex-direction: column; background: #fff; border-radius: 10px; box-shadow: 0 2px 10px rgba(0,0,0,.07); overflow: hidden; padding: 0 0 14px; }
.emk-rcard__img { display: block; aspect-ratio: 4 / 3; background: #f3f3f3; overflow: hidden; }
.emk-rcard__img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s; }
.emk-rcard__img:hover img { transform: scale(1.03); }
.emk-rcard__title { margin: 12px 14px 6px !important; padding: 0 !important; border: 0 !important; background: none !important; font-size: 15px !important; line-height: 1.45 !important; }
.emk-rcard__title::before, .emk-rcard__title::after { content: none !important; }
.emk-rcard__title a { color: #222; text-decoration: none; }
.emk-rcard__title a:hover { text-decoration: underline; }
.emk-rcard__text { margin: 0 14px 8px !important; font-size: 13px; line-height: 1.65; color: #444; }
.emk-rcard__more { margin: auto 14px 0 !important; font-size: 13px; font-weight: 700; }
.emk-rcard__more a { color: var(--em-navy, #183B60); text-decoration: underline dotted rgba(0,0,0,.3); text-decoration-thickness: 1px; text-underline-offset: 2px; }
@media (max-width: 1000px) { .emk-rcards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .emk-rcards { gap: 10px; } .emk-rcard__text { display: none; } }

/* 写真の拡大表示 */
.emk-lb { position: fixed; inset: 0; z-index: 100000; background: rgba(0,0,0,.88); display: none; align-items: center; justify-content: center; }
.emk-lb.is-open { display: flex; }
.emk-lb img { max-width: 94vw; max-height: 86vh; width: auto; height: auto; object-fit: contain; border-radius: 4px; box-shadow: 0 6px 30px rgba(0,0,0,.5); }
.emk-lb button { position: absolute; border: 0; background: rgba(255,255,255,.14); color: #fff; cursor: pointer; border-radius: 50%; width: 48px; height: 48px; font-size: 26px; line-height: 48px; padding: 0; }
.emk-lb button:hover { background: rgba(255,255,255,.28); }
.emk-lb__close { top: 14px; right: 14px; font-size: 20px !important; }
.emk-lb__prev { left: 14px; top: 50%; transform: translateY(-50%); }
.emk-lb__next { right: 14px; top: 50%; transform: translateY(-50%); }
.emk-lb.is-single .emk-lb__prev, .emk-lb.is-single .emk-lb__next { display: none; }
.emk-lb__count { position: absolute; bottom: 12px; left: 0; right: 0; text-align: center; color: #ddd; font-size: 13px; margin: 0 !important; }
@media (max-width: 600px) { .emk-lb__prev, .emk-lb__next { width: 40px; height: 40px; line-height: 40px; } }
/* レポートページ：投稿日・投稿者・前後の記事リンクは出さない */
.single-kaitori .entry-meta, .single-kaitori .next-prev, .single-kaitori .vk_posts.next-prev { display: none !important; }
/* 1.3.1 査定レポート一覧：ジャンルの絞り込み */
.emk-rfilter { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 28px !important; }
.emk-rfilter a { display: inline-flex; align-items: center; gap: 6px; padding: 8px 16px; border: 1px solid #c3cdd8; border-radius: 999px; background: #fff; color: #222; text-decoration: none; font-size: 14px; }
.emk-rfilter a small { font-size: 11px; color: #6b6b6b; }
.emk-rfilter a:hover { border-color: var(--em-navy, #183B60); }
.emk-rfilter a.is-on { background: var(--em-navy, #183B60); border-color: var(--em-navy, #183B60); color: #fff; }
.emk-rfilter a.is-on small { color: #dfe6ee; }
.emk-rcards + .emk-more, .emk-rcards + .emk-pager + .emk-more { text-align: center; }

/* =========================================================
 * 1.3.5 スマホ（600px以下）：実績を2列で表示（B＋の形）
 *   機種名・価格・買取方法と状態のタグ・買取日・ひとこと2行
 *   ※ 文章はページに全部残したまま、見せ方だけを短くしている
 * ======================================================= */
.emk-card__sp { display: none; }
@media (max-width: 600px) {
	.emk--scroll .emk-list,
	.emk--grid .emk-list {
		grid-auto-flow: row;
		grid-auto-columns: auto;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		overflow: visible;
		scroll-snap-type: none;
		gap: 10px;
		padding: 0 !important;
	}
	.emk-card__badge,
	.emk-card__meta,
	.emk-card__minus,
	.emk-card__foot,
	.emk-card__price span { display: none !important; }
	.emk-card__body { padding: 8px 9px 10px; gap: 5px; font-size: 12px; }
	.emk-card__title { font-size: 13px !important; line-height: 1.4 !important; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
	.emk-card__price { padding: 0; background: none; justify-content: flex-start; }
	.emk-card__price strong { font-size: 17px; }
	.emk-card__price small { font-size: 11px; }
	.emk-card__sp { display: flex; flex-wrap: wrap; align-items: center; gap: 3px 4px; margin: 0 !important; line-height: 1.3; }
	.emk-tag { display: inline-block; font-size: 10px; line-height: 1; padding: 3px 5px; border-radius: 3px; background: #eef1f5; color: #3b4a5c; }
	.emk-card__spdate { flex: 0 0 100%; font-size: 10.5px; color: var(--emk-muted); margin-top: 1px; }
	.emk-card__memo, .emk-card__good { font-size: 11px; line-height: 1.5; padding: 5px 7px 0 !important; border-bottom: 5px solid #fbf7ee; background: #fbf7ee; border-radius: 5px; color: #555; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
	.emk-card__memo span { display: none; }
	.emk-card__good span { color: #1e7b45; margin-right: 3px; font-size: 10.5px; }
	.emk-card:has(.emk-card__memo) .emk-card__good { display: none; }
	.emk-card__report { font-size: 11.5px; }
}

/* 写真の保存ガード：長押しメニュー・ドラッグ保存を出さない（スクリーンショットまでは防げません） */
.site-body img, .emk-lb img { -webkit-touch-callout: none; -webkit-user-drag: none; user-select: none; }

/* =========================================================
 * 1.3.6 カードをタップ（クリック）すると詳しいカードが開く
 * ======================================================= */
.emk-card[tabindex] { cursor: pointer; transition: box-shadow .15s ease, transform .15s ease; }
.emk-card[tabindex]:hover { box-shadow: 0 4px 14px rgba(0, 0, 0, .1); }
.emk-card[tabindex]:focus-visible { outline: 3px solid rgba(24, 59, 96, .4); outline-offset: 2px; }
.emk-card__open { margin: 0 !important; font-size: 12px; font-weight: 700; color: var(--em-navy, #183B60); }
.emk-card__open::after { content: " ›"; }
@media (min-width: 601px) { .emk-card__open { display: none; } }

.emk-modal { margin: 0; color: var(--emk-ink); position: fixed; inset: 0; z-index: 100001; display: none; align-items: center; justify-content: center; background: rgba(0, 0, 0, .72); padding: 16px; padding-bottom: max(16px, env(safe-area-inset-bottom, 0px)); }
.emk-modal.is-open { display: flex; }
.emk-modal__box { position: relative; width: 100%; max-width: 520px; max-height: 100%; display: flex; flex-direction: column; background: #fff; border-radius: 12px; overflow: hidden; box-shadow: 0 10px 40px rgba(0, 0, 0, .35); }
.emk-modal__inner { overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; }
.emk-modal__close { position: absolute; top: 8px; right: 8px; z-index: 2; width: 38px; height: 38px; border: 0; border-radius: 50%; background: rgba(0, 0, 0, .6); color: #fff; font-size: 17px; line-height: 38px; padding: 0; cursor: pointer; }
.emk-modal__prev, .emk-modal__next { position: absolute; top: 50%; transform: translateY(-50%); width: 46px; height: 46px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .18); color: #fff; font-size: 28px; line-height: 46px; padding: 0; cursor: pointer; }
.emk-modal__prev { left: max(10px, calc(50% - 320px)); }
.emk-modal__next { right: max(10px, calc(50% - 320px)); }
.emk-modal__prev:hover, .emk-modal__next:hover { background: rgba(255, 255, 255, .32); }
.emk-modal.is-single .emk-modal__prev, .emk-modal.is-single .emk-modal__next { display: none; }
.emk-modal__count { position: absolute; bottom: max(4px, env(safe-area-inset-bottom, 0px)); left: 0; right: 0; margin: 0 !important; pointer-events: none; text-align: center; color: #ddd; font-size: 12px; }
@media (max-width: 600px) {
	.emk-modal { padding: 12px 12px 30px; }
	.emk-modal__prev, .emk-modal__next { top: auto; bottom: 0; transform: none; width: 38px; height: 38px; line-height: 38px; font-size: 24px; background: none; }
	.emk-modal__prev { left: 20%; } .emk-modal__next { right: 20%; }
}
/* 開いたカードは、スマホでも情報を全部表示する */
.emk-modal *, .emk-modal *::before, .emk-modal *::after { box-sizing: border-box; }
.emk-modal .emk-card.is-view { list-style: none; margin: 0; border: 0; border-radius: 0; cursor: auto; box-shadow: none; display: flex !important; }
.emk-modal .emk-card.is-view .emk-card__img { aspect-ratio: auto; background: #f3f3f3; }
.emk-modal .emk-card.is-view .emk-card__img img { height: auto !important; max-height: 60vh; object-fit: contain; }
.emk-modal .emk-card.is-view .emk-card__body { padding: 14px 16px 18px; gap: 8px; font-size: 14px; }
.emk-modal .emk-card.is-view .emk-card__title { font-size: 18px !important; display: block; -webkit-line-clamp: none; overflow: visible; }
.emk-modal .emk-card.is-view .emk-card__badge { display: block !important; }
.emk-modal .emk-card.is-view .emk-card__price { display: flex; padding: 8px 12px; background: var(--emk-soft); justify-content: space-between; }
.emk-modal .emk-card.is-view .emk-card__price span { display: inline !important; }
.emk-modal .emk-card.is-view .emk-card__price strong { font-size: 24px; }
.emk-modal .emk-card.is-view .emk-card__sp { display: none !important; }
.emk-modal .emk-card.is-view .emk-card__meta,
.emk-modal .emk-card.is-view .emk-card__minus,
.emk-modal .emk-card.is-view .emk-card__foot { display: grid !important; }
.emk-modal .emk-card.is-view .emk-card__minus { display: block !important; }
.emk-modal .emk-card.is-view .emk-card__foot { display: flex !important; }
.emk-modal .emk-card.is-view .emk-card__good { display: block !important; -webkit-line-clamp: none; padding: 0 !important; border: 0; background: none; font-size: 14px; color: inherit; }
.emk-modal .emk-card.is-view .emk-card__memo { display: block; -webkit-line-clamp: none; overflow: visible; font-size: 13.5px; line-height: 1.7; padding: 10px 12px !important; border: 0; }
.emk-modal .emk-card.is-view .emk-card__memo span { display: block; }
.emk-modal .emk-card.is-view .emk-card__report { font-size: 14px; }

/* 1.3.8 ジャンル・メーカーページの欄：最初は4件、「もっと見る」で12件まで。開いたあとに「買取実績をもっと見る」を表示 */
@media (min-width: 1000px) { .emk--fold .emk-list { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (min-width: 821px) and (max-width: 999px) {
	.emk--fold .emk-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.emk--fold:not(.is-open) .emk-card:nth-child(4) { display: none; } /* 3列のときは最初3件 */
}
/* カード1枚が細くなりすぎる幅（820px以下）は2列 */
@media (min-width: 601px) and (max-width: 820px) {
	.emk--fold .emk-list, .emk--grid .emk-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.emk--fold .emk-card__price { flex-wrap: wrap; }
.emk--fold:not(.is-open) .emk-card:nth-child(n+5) { display: none; }
.emk--fold.has-more:not(.is-open) .emk-more { display: none; }
.emk--fold.is-open .emk-fold { display: none; }
.emk-fold { margin: 18px 0 0 !important; text-align: center; }
.emk-fold__btn { display: inline-flex; align-items: center; gap: 6px; padding: 10px 28px; border: 1px solid var(--em-navy, #183B60); border-radius: 999px; background: #fff; color: var(--em-navy, #183B60); font-size: 15px; font-weight: 700; cursor: pointer; transition: background-color .15s, color .15s; }
.emk-fold__btn::after { content: ""; width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); }
.emk-fold__btn:hover { background: var(--em-navy, #183B60); color: #fff; }
.emk-fold__btn:focus-visible { outline: 3px solid rgba(24, 59, 96, .35); outline-offset: 2px; }

/* 1.3.9 列の数は「欄の実際の幅」で決める（カード1枚が約220px未満にならないように）
   ※古いブラウザでは、上の画面幅による指定が使われます */
.emk--fold { container-type: inline-size; }
@container (min-width: 0px) {
	.emk--fold .emk-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.emk--fold:not(.is-open) .emk-card:nth-child(4) { display: flex; }
	.emk--fold:not(.is-open) .emk-card:nth-child(n+5) { display: none; }
}
@container (min-width: 700px) {
	.emk--fold .emk-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.emk--fold:not(.is-open) .emk-card:nth-child(4) { display: none; }
}
@container (min-width: 940px) {
	.emk--fold .emk-list { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.emk--fold:not(.is-open) .emk-card:nth-child(4) { display: flex; }
}
