@charset "utf-8";
/* ======================================================================
 BIZNEWS365 サイトの見た目（テーマ TCD「EVERY」の上に重ねる）
 - プラグインを無効にすれば、すべて元の見た目に戻る。
 - 受付フォーム（.bn365-form-wrap の中）には効かせない。フォームの見た目は
   biznews365-pipeline の assets/form.css が決める（docs/SITE-DEPENDENCIES.md）。
 - テーマ設定の色（head の中の style）より後に読まれないことがあるため、
   必要な所は body のクラス .bn365s を付けて強くしている。
 - テーマの PC 向けとスマホ向けの切り替えは 1210px（responsive.css）。
====================================================================== */

:root {
	--bn365s-navy: #0A0E1A;
	--bn365s-grad: linear-gradient(90deg, #C622FB, #5670E1);
	--bn365s-ink: #141823;
	--bn365s-sub: #5B6275;
	--bn365s-link: #3B4AB8;
	--bn365s-link-hover: #2A3690;
	--bn365s-bg: #F5F6FA;
	--bn365s-frame: #2B2F3A;
	--bn365s-chip-bg: #EEF0FA;
	--bn365s-font: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
}

/* ----------------------------------------------------------------------
 1. 全体
---------------------------------------------------------------------- */
body.bn365s { background: var(--bn365s-bg); color: var(--bn365s-ink); font-family: var(--bn365s-font); }
body.bn365s .rich_font,
body.bn365s .rich_font_type1,
body.bn365s .rich_font_type2,
body.bn365s .rich_font_type3 { font-family: var(--bn365s-font); }

/* ----------------------------------------------------------------------
 2. ヘッダー（上：紺のカテゴリの帯、下：白地にロゴ。下端にグラデーションの線）
---------------------------------------------------------------------- */
body.bn365s #header:after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 3px; z-index: 41;
	background: var(--bn365s-grad);
}

@media screen and (min-width: 1211px) {
	body.bn365s #header { height: 123px; border-bottom: 0; }
	body.bn365s #header_inner { height: 120px; }

	body.bn365s #header #global_menu { height: 44px; background: var(--bn365s-navy); border-bottom: 0; }
	body.bn365s #header #global_menu > ul { border-left: 0; justify-content: flex-start; }
	body.bn365s #header #global_menu > ul > li { flex: 0 0 auto; border-right: 0; }
	body.bn365s #header #global_menu > ul > li > a {
		color: #FFFFFF; height: 44px; line-height: 44px; font-size: 13px; font-weight: 700; padding: 0 16px;
	}
	body.bn365s #header #global_menu > ul > li > a:after { background: var(--bn365s-grad); left: 16px; width: calc(100% - 32px); }
	body.bn365s #header #global_menu ul ul { top: 44px; }
	body.bn365s #header #global_menu ul ul a { color: #FFFFFF; background: #141A2E; }
	body.bn365s #header #global_menu ul ul a:hover { background: #232B47; }

	body.bn365s #header_logo { height: 76px; }
	body.bn365s #header_logo .pc_logo_image { height: 44px !important; width: auto !important; }
	body.bn365s #header_logo .desc {
		font-size: 13px; color: var(--bn365s-sub); margin: 0 0 0 20px; padding-left: 20px;
		border-left: 1px solid #D9DCE6; line-height: 1.6;
	}
	body.bn365s #header_button_area { bottom: 18px; height: 40px; }
	body.bn365s #header_search_button { margin: 0; background: #FFFFFF; border: 1px solid #D9DCE6; box-sizing: border-box; }
	body.bn365s #header_search_button:before { color: var(--bn365s-ink); left: 11px; top: 11px; }
	body.bn365s #header_search { top: 123px; }
}

/* ----------------------------------------------------------------------
 3. トップ：テーマのスライダーは出さない（キャスターの帯と動画ニュースを先頭に置くため）
---------------------------------------------------------------------- */
body.bn365s.home #index_header_content_wrap { display: none; }
@media screen and (min-width: 1211px) {
	body.bn365s.home #main_contents { padding-top: 32px; }
}

/* ----------------------------------------------------------------------
 4. 見出し（テーマの「アイコン付きの見出し」→ 文字＋下に短いグラデーションの線）
---------------------------------------------------------------------- */
body.bn365s .design_headline,
body.bn365s #side_col .widget_headline {
	background: none; border: 0; height: auto; line-height: 1.4; position: relative;
	padding: 0 0 14px !important; font-size: 24px; font-weight: 900 !important; color: var(--bn365s-ink);
	margin: 0 0 24px;
}
body.bn365s #side_col .widget_headline { font-size: 16px; padding-bottom: 12px !important; margin-bottom: 16px; }
body.bn365s .design_headline:before,
body.bn365s #side_col .widget_headline:before { display: none !important; }
body.bn365s .design_headline:after,
body.bn365s #side_col .widget_headline:after {
	content: "" !important; display: block !important; position: absolute; left: 0; bottom: 0; top: auto;
	width: 40px; height: 4px; border: 0 !important; border-radius: 2px; background: var(--bn365s-grad);
}
body.bn365s #side_col .widget_headline:after { width: 32px; height: 3px; }
body.bn365s .design_headline .archive_link,
body.bn365s .cb_contents .design_headline .archive_link { border-left: 0; height: auto; top: 0; line-height: 1.7; font-weight: 700; }
body.bn365s .cb_contents .design_headline .archive_link a { padding: 0; color: var(--bn365s-link); }
body.bn365s .cb_contents .design_headline .archive_link a:after { content: " →"; }
/* テーマが白地を付けている見出し（お知らせの一覧など）も地なしにそろえる */
body.bn365s .design_headline { background: none !important; }

/* 固定ページの見出し（プライバシーポリシー・受付フォームのページなど）：白いカードの中に余白を取って置く。
   0.1.2 までは余白を消していたため、白地の左上に文字が寄っていた（2026-11-06 ユーザー指摘） */
body.bn365s #page_design_headline_area .design_headline {
	background: #FFFFFF !important; border-radius: 14px; padding: 24px 32px 30px !important;
	font-size: 26px; line-height: 1.45; margin: 0 0 28px;
}
body.bn365s #page_design_headline_area .design_headline:after { left: 32px; bottom: 16px; }
body.bn365s.page #article { border-radius: 14px; }
@media screen and (max-width: 650px) {
	/* スマホは本文の白地が見出しの下に 40px 重なる作り（テーマの #article の margin-top: -40px）なので、
	   見出しは地なしにし、下のあきはテーマと同じ 60px にする */
	body.bn365s #page_design_headline_area .design_headline {
		background: none !important; border-radius: 0; padding: 0 0 12px !important; font-size: 20px; margin: 0 0 60px;
	}
	body.bn365s #page_design_headline_area .design_headline:after { left: 0; bottom: 0; }
	body.bn365s.page #article { border-radius: 0; }
}

/* カテゴリのページの見出しの四角（テーマのオレンジ）をブランドの色に */
body.bn365s #page_header .headline { background: linear-gradient(135deg, #C622FB, #5670E1) !important; color: #FFFFFF !important; }

/* ----------------------------------------------------------------------
 5. 記事の一覧（16:9 の画像の下にタイトル。PC・タブレットは 3 列、スマホは横並びの 1 列）
---------------------------------------------------------------------- */
body.bn365s .recipe_list {
	display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 24px; margin-top: 0;
}
body.bn365s .recipe_list:before,
body.bn365s .recipe_list:after { display: none !important; }
body.bn365s .recipe_list .item,
body.bn365s .recipe_list.type2 .item {
	width: auto !important; height: auto !important; float: none; margin: 0 !important;
}
body.bn365s .recipe_list .image_wrap,
body.bn365s .recipe_list.type2 .image_wrap {
	height: auto !important; aspect-ratio: 16 / 9; border-radius: 8px; overflow: hidden; background: #E6E8EF;
}
body.bn365s .recipe_list .image_wrap .image,
body.bn365s .recipe_list.type2 .image_wrap .image { height: 100% !important; }
body.bn365s .recipe_list .title_area,
body.bn365s .recipe_list.type2 .title_area {
	border: 0; background: none; height: auto !important; padding: 10px 0 0 !important;
}
body.bn365s .recipe_list .title_area .title a { color: var(--bn365s-ink); font-size: 15px; font-weight: 700; line-height: 1.6; max-height: none; }
body.bn365s .recipe_list .title_area .title a:hover { color: var(--bn365s-link); }
body.bn365s .recipe_list .title_area .title span { -webkit-line-clamp: 3; }
body.bn365s .recipe_list .title_area .post_meta,
body.bn365s .recipe_list .title_area .post_meta a { color: var(--bn365s-sub); }
body.bn365s .recipe_list .category {
	top: 8px; left: 8px; min-width: 0; height: 22px; line-height: 22px; padding: 0 8px; border-radius: 4px;
	font-size: 11px; font-weight: 700; background: rgba(10, 14, 26, 0.85);
}
@media screen and (max-width: 650px) {
	body.bn365s .recipe_list { grid-template-columns: minmax(0, 1fr); gap: 0; }
	body.bn365s .recipe_list .item,
	body.bn365s .recipe_list.type2 .item {
		display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 12px; align-items: start;
		padding: 14px 0 !important; border-top: 1px solid #E3E6EE;
	}
	body.bn365s .recipe_list .image_wrap { border-radius: 6px; }
	body.bn365s .recipe_list .title_area,
	body.bn365s .recipe_list.type2 .title_area { padding: 0 !important; }
	body.bn365s .recipe_list .title_area .title a { font-size: 14px; line-height: 1.55; }
	body.bn365s .recipe_list .category { display: none; }
}

/* ----------------------------------------------------------------------
 6. サイドバー
---------------------------------------------------------------------- */
body.bn365s .styled_post_list1 .image_wrap { border-radius: 6px; }
body.bn365s .styled_post_list1 .title_area { border: 0 !important; }

/* ----------------------------------------------------------------------
 7. 記事ページ
---------------------------------------------------------------------- */
body.bn365s.single-post #article { border-radius: 14px; }
body.bn365s.single-post #post_title_area .title { font-size: 30px; font-weight: 900; line-height: 1.5; }
body.bn365s.single-post #post_title_area .post_meta li,
body.bn365s.single-post #post_title_area .post_meta li a { color: var(--bn365s-sub); }

/* 動画が入った記事：タイトルの上に「動画あり」 */
body.bn365s.bn365s-has-video #post_title_area .title:before {
	content: "\25B6\FE0E  動画あり"; display: block; width: fit-content; margin: 0 0 12px;
	font-size: 11px; font-weight: 700; line-height: 1.6; letter-spacing: 0.04em; color: #FFFFFF;
	background: var(--bn365s-grad); border-radius: 4px; padding: 2px 10px;
}

body.bn365s.single-post #article .post_content p { font-size: 16px; line-height: 2.1; margin: 0 0 1.6em; }
body.bn365s.single-post .post_content .wp-block-embed-youtube .wp-block-embed__wrapper {
	border-radius: 12px; overflow: hidden; box-shadow: 0 8px 24px rgba(10, 14, 26, 0.12);
}
body.bn365s.single-post .post_content .wp-block-image img { border-radius: 10px; }

@media screen and (max-width: 650px) {
	body.bn365s.single-post #post_title_area .title { font-size: 22px; }
	body.bn365s.single-post #article .post_content p { font-size: 15px; line-height: 2; }
}

/* ----------------------------------------------------------------------
 8. フッター（紺）
---------------------------------------------------------------------- */
body.bn365s #footer { background: var(--bn365s-navy); }
body.bn365s #footer #widget_area_overlay { display: none; }
body.bn365s #footer .footer_headline { color: #FFFFFF; }
body.bn365s #footer_menu,
body.bn365s #footer_category_menu,
body.bn365s #footer_widget { border-color: rgba(255, 255, 255, 0.12) !important; }
body.bn365s #footer_top a,
body.bn365s .footer_menu ul li a { color: #C8CDDD; }
body.bn365s #footer_top a:hover { color: #FFFFFF; }
body.bn365s #copyright { background: var(--bn365s-navy); color: #A3AAC2; border-top: 1px solid #262C40; }
body.bn365s #footer_logo img { filter: invert(1); }
body.bn365s #footer_social_link li a,
body.bn365s #footer_social_link li a:before { color: #C8CDDD; }
@media screen and (min-width: 1211px) {
	body.bn365s #footer_menu,
	body.bn365s #footer_category_menu,
	body.bn365s #footer_widget { padding-top: 56px; padding-bottom: 40px; }
}

/* ======================================================================
 9. このプラグインの段（ショートコード）
====================================================================== */
.bn365s-casters,
.bn365s-box,
.bn365s-vlist { font-family: var(--bn365s-font); color: var(--bn365s-ink); text-align: left; line-height: 1.5; box-sizing: border-box; }
.bn365s-casters *,
.bn365s-box *,
.bn365s-vlist * { box-sizing: border-box; }
body.bn365s .bn365s-box a,
body.bn365s .bn365s-vlist a { text-decoration: none; color: var(--bn365s-ink); }
body.bn365s .bn365s-box a:hover .bn365s-vnews__main-title,
body.bn365s .bn365s-box a:hover .bn365s-row__title,
body.bn365s .bn365s-vlist a:hover .bn365s-card__title { color: var(--bn365s-link); }
.bn365s-casters img,
.bn365s-box img,
.bn365s-vlist img { max-width: none; margin: 0; border: 0; }

/* 9-1. キャスターの帯 */
.bn365s-casters {
	position: relative; overflow: hidden; display: flex; align-items: stretch;
	height: 88px; margin: 0 0 24px; border-radius: 12px; background: #EEF1F7;
}
.bn365s-casters .bn365s-casters__bg {
	position: absolute; top: -12px; left: -12px; width: calc(100% + 24px); height: calc(100% + 24px);
	object-fit: cover; object-position: center 40%; filter: blur(3px) saturate(0.85);
}
.bn365s-casters__veil {
	position: absolute; inset: 0;
	background: linear-gradient(90deg, rgba(255, 255, 255, 0.94) 0%, rgba(255, 255, 255, 0.82) 38%, rgba(255, 255, 255, 0.55) 100%);
}
.bn365s-casters__text {
	position: relative; flex: 1 1 auto; min-width: 0; padding: 8px 8px 8px 22px;
	display: flex; flex-direction: column; justify-content: center; gap: 3px;
}
.bn365s-casters__labels { display: flex; align-items: center; gap: 10px; }
.bn365s-onair {
	display: inline-flex; align-items: center; gap: 5px; font-size: 9.5px; font-weight: 900; letter-spacing: 0.15em; line-height: 1.5;
	color: #FFFFFF; background: var(--bn365s-grad); border-radius: 4px; padding: 2px 7px;
}
.bn365s-onair:before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: #FFFFFF; }
.bn365s-casters__eyebrow { font-size: 9.5px; font-weight: 900; letter-spacing: 0.2em; color: #6A1FB8; }
.bn365s-casters__title { font-size: 15px; font-weight: 900; line-height: 1.35; color: var(--bn365s-navy); }
.bn365s-casters__lead { font-size: 11px; line-height: 1.4; color: #3A4154; }
.bn365s-casters__people { position: relative; flex: 0 0 auto; display: flex; align-items: stretch; }
.bn365s-caster { position: relative; width: 96px; height: 88px; flex: 0 0 96px; margin-left: -13px; }
.bn365s-caster__edge,
.bn365s-caster__photo {
	position: absolute; inset: 0; clip-path: polygon(18% 0, 100% 0, 82% 100%, 0 100%);
}
.bn365s-caster__edge { transform: translateX(-3px); background: linear-gradient(180deg, #C622FB, #5670E1); }
.bn365s-caster__photo { background: #F2F3F7; }
.bn365s-caster__photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 15%; }
/* 帯が狭いとき（タブレットの縦・サイドバー付きで本文の列が狭いとき）は説明の 1 行を出さない */
.bn365s-casters { container-type: inline-size; container-name: bn365s-casters; }
@container bn365s-casters (max-width: 640px) { .bn365s-casters__lead { display: none; } }

@media screen and (max-width: 650px) {
	.bn365s-casters { flex-direction: column; height: auto; border-radius: 0; margin: 0 -20px 20px; padding-top: 12px; }
	.bn365s-casters__veil { background: linear-gradient(180deg, rgba(255, 255, 255, 0.92) 0%, rgba(255, 255, 255, 0.7) 100%); }
	.bn365s-casters__text { flex-direction: row; align-items: center; gap: 8px; padding: 0 16px 10px; }
	.bn365s-casters__eyebrow,
	.bn365s-casters__lead { display: none; }
	.bn365s-casters__title { font-size: 14px; }
	.bn365s-casters__people { padding-left: 30px; }
	.bn365s-caster { width: 70px; height: 58px; flex-basis: 70px; margin-left: -11px; }
	.bn365s-caster__edge { transform: translateX(-2px); }
}

/* 9-2. 枠と見出し */
.bn365s-box { position: relative; background: #FFFFFF; border: 1px solid var(--bn365s-frame); padding: 30px 36px 26px; margin: 0 0 40px; }
.bn365s-head { display: flex; align-items: center; gap: 18px; margin: 0 0 24px; }
.bn365s-head__title {
	margin: 0; padding: 0; border: 0; background: none; white-space: nowrap;
	display: flex; align-items: baseline; gap: 10px; font-size: 24px; font-weight: 900; line-height: 1.4; color: var(--bn365s-ink);
}
.bn365s-head__eyebrow { font-size: 11px; font-weight: 900; letter-spacing: 0.2em; color: #6A1FB8; }
.bn365s-head__rule { flex: 1 1 auto; min-width: 40px; display: flex; align-items: center; gap: 6px; }
.bn365s-head__rule:before { content: ""; flex: 1 1 auto; height: 2px; background: var(--bn365s-grad); }
.bn365s-head__rule:after { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #5670E1; }
.bn365s-head--medium .bn365s-head__title { font-size: 22px; }
.bn365s-head--small { gap: 12px; margin-bottom: 16px; }
.bn365s-head--small .bn365s-head__title { font-size: 16px; }
.bn365s-head--small .bn365s-head__rule:after { width: 6px; height: 6px; }
.bn365s-more { display: flex; justify-content: flex-end; margin-top: 22px; }
body.bn365s .bn365s-more a { font-size: 14px; font-weight: 700; color: var(--bn365s-link); }
body.bn365s .bn365s-more a:hover { color: var(--bn365s-link-hover); text-decoration: underline; }

/* 9-3. サムネイルと再生の印 */
.bn365s-thumb { position: relative; display: block; overflow: hidden; aspect-ratio: 16 / 9; background: #E6E8EF; border-radius: 8px; }
.bn365s-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease; }
a:hover > .bn365s-thumb img { transform: scale(1.04); }
.bn365s-play {
	position: absolute; right: 6px; bottom: 6px; width: 26px; height: 26px; border-radius: 50%;
	background: linear-gradient(135deg, #C622FB, #5670E1);
}
.bn365s-play:after {
	content: ""; position: absolute; left: 50%; top: 50%; transform: translate(-35%, -50%);
	border-style: solid; border-width: 5px 0 5px 8px; border-color: transparent transparent transparent #FFFFFF;
}
.bn365s-thumb--large { border-radius: 10px; }
.bn365s-thumb--large .bn365s-play {
	left: 50%; top: 50%; right: auto; bottom: auto; width: 68px; height: 68px; transform: translate(-50%, -50%);
	box-shadow: 0 6px 24px rgba(10, 14, 26, 0.4);
}
.bn365s-thumb--large .bn365s-play:after { border-width: 11px 0 11px 18px; }
.bn365s-thumb--card .bn365s-play { width: 30px; height: 30px; right: 8px; bottom: 8px; }

.bn365s-chip {
	display: inline-block; align-self: flex-start; font-size: 11px; font-weight: 700; line-height: 1.6;
	color: var(--bn365s-link); background: var(--bn365s-chip-bg); border-radius: 4px; padding: 2px 8px;
}
.bn365s-date { display: block; font-size: 12px; color: var(--bn365s-sub); }

/* 9-4. トップの動画ニュース */
.bn365s-vnews__grid { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); gap: 24px; }
.bn365s-vnews__main { display: flex; flex-direction: column; gap: 12px; }
.bn365s-vnews__main-title { font-size: 20px; font-weight: 700; line-height: 1.55; }
.bn365s-vnews__list { display: flex; flex-direction: column; gap: 18px; }
.bn365s-row { display: flex; gap: 14px; align-items: flex-start; }
.bn365s-row .bn365s-thumb--row { flex: 0 0 min(150px, 45%); width: min(150px, 45%); }

/* 並べ方は画面の幅ではなく「この段の幅」で変える（2026-11-06：幅 1000px 前後・タブレットの縦で、
   本文の列が狭くなり右の列のタイトルが 1 文字ずつの縦書きのようになっていた）。
   - 段の中が 680px 以下：大きい 1 本の下に、残りを 3 列のカードで並べる
   - 480px 以下（スマホ）：残りは横にスクロール */
.bn365s-vnews { container-type: inline-size; container-name: bn365s-vnews; }
@container bn365s-vnews (max-width: 680px) {
	.bn365s-vnews__grid { grid-template-columns: minmax(0, 1fr); }
	.bn365s-vnews__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
	.bn365s-vnews__list .bn365s-row { flex-direction: column; gap: 8px; }
	.bn365s-vnews__list .bn365s-thumb--row { width: 100%; flex: 0 0 auto; }
}
@container bn365s-vnews (max-width: 480px) {
	.bn365s-vnews__list { display: flex; flex-direction: row; overflow-x: auto; gap: 12px; margin: 0 -16px; padding: 0 16px 4px; }
	.bn365s-vnews__list .bn365s-row { flex: 0 0 200px; }
	.bn365s-vnews__list .bn365s-thumb--row { width: 200px; }
	.bn365s-vnews__list .bn365s-date { display: none; }
}
.bn365s-row__body { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.bn365s-row__title { font-size: 14px; font-weight: 700; line-height: 1.6; }

/* 9-5. 一覧（記事の下・一覧ページ）とサイドバー */
.bn365s-vlist--grid { margin: 40px 0 0; }
.bn365s-vlist--grid .bn365s-vlist__items { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.bn365s-card { display: flex; flex-direction: column; gap: 10px; }
.bn365s-card__title { font-size: 14px; font-weight: 700; line-height: 1.6; }
.bn365s-vlist--side { padding: 20px 20px 18px; margin: 0 0 30px; }
.bn365s-vlist--side .bn365s-vlist__items { display: flex; flex-direction: column; gap: 14px; }
.bn365s-vlist--side .bn365s-row { gap: 12px; }
.bn365s-vlist--side .bn365s-thumb--row { flex-basis: 104px; width: 104px; border-radius: 6px; }
.bn365s-vlist--side .bn365s-play { width: 22px; height: 22px; right: 4px; bottom: 4px; }
.bn365s-vlist--side .bn365s-row__title { font-size: 13px; font-weight: 500; }
.bn365s-vlist--side .bn365s-more { margin-top: 14px; }
.bn365s-pager { margin-top: 32px; display: flex; justify-content: center; gap: 6px; flex-wrap: wrap; }
.bn365s-pager .page-numbers {
	display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 12px;
	border: 1px solid #D9DCE6; background: #FFFFFF; font-size: 14px; color: var(--bn365s-ink);
}
.bn365s-pager .page-numbers.current { background: var(--bn365s-navy); border-color: var(--bn365s-navy); color: #FFFFFF; }

@media screen and (max-width: 650px) {
	.bn365s-box { padding: 20px 16px 18px; }
	.bn365s-head { gap: 12px; margin-bottom: 16px; }
	.bn365s-head__title { font-size: 20px; }
	.bn365s-head__eyebrow { display: none; }
	.bn365s-vnews__main-title { font-size: 17px; }
	.bn365s-thumb--large .bn365s-play { width: 56px; height: 56px; }
	.bn365s-vlist--grid .bn365s-vlist__items { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 12px; }
	.bn365s-card__title { font-size: 13px; }
}

/* 9-6. アクセスランキング（[biznews365_ranking]。新着ニュースの下） */
.bn365s-rank { font-family: var(--bn365s-font); color: var(--bn365s-ink); text-align: left; line-height: 1.5; margin: 0 0 40px; container-type: inline-size; container-name: bn365s-rank; }
.bn365s-rank * { box-sizing: border-box; }
.bn365s-rank .bn365s-head { margin-bottom: 8px; }
.bn365s-rank__lead { font-size: 12px; color: var(--bn365s-sub); margin: 0 0 6px; }
body.bn365s .bn365s-rank__list {
	list-style: none !important; margin: 0 !important; padding: 0 !important;
	display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: column; column-gap: 32px;
}
body.bn365s .bn365s-rank__item { list-style: none !important; margin: 0 !important; padding: 0 !important; border-bottom: 1px solid #E1E4EC; line-height: 1.5; }
body.bn365s .bn365s-rank__item:before { display: none !important; }
body.bn365s .bn365s-rank__item a { display: flex; align-items: center; gap: 14px; padding: 14px 0; color: var(--bn365s-ink); text-decoration: none; }
body.bn365s .bn365s-rank__item a:hover .bn365s-rank__title { color: var(--bn365s-link); }
.bn365s-rank__num { flex: 0 0 34px; text-align: center; font-size: 26px; font-weight: 900; line-height: 1; font-variant-numeric: tabular-nums; color: #9AA1B5; }
.bn365s-rank__num--top { background: var(--bn365s-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.bn365s-rank__title {
	flex: 1 1 auto; min-width: 0; font-size: 14px; font-weight: 700; line-height: 1.6;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
body.bn365s .bn365s-rank__thumb { flex: 0 0 88px; width: 88px; max-width: none; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 6px; margin: 0; display: block; }
/* 狭いとき（スマホ・本文の列が狭いとき）は 1 列で 1〜6 位を縦に */
@container bn365s-rank (max-width: 560px) {
	body.bn365s .bn365s-rank__list { grid-template-columns: minmax(0, 1fr); grid-auto-flow: row; grid-template-rows: none !important; }
	.bn365s-rank__num { flex-basis: 28px; font-size: 22px; }
	body.bn365s .bn365s-rank__thumb { flex-basis: 80px; width: 80px; }
}
