/* エリアページ専用レイアウト（no-sidebar時） */
.tcn-area-main { margin-bottom: 40px; }
.tcn-area-page #sidebar { display: none !important; }
.tcn-area-page .content-in { flex-direction: row !important; }
.tcn-area-page .main { width: 100% !important; flex: 1 1 auto; }
/* パンくずの > 区切り（全エリアページ共通） */
.tcn-area-main .breadcrumb li:not(:last-child)::after { content: ">"; margin: 0 5px; }

/* RSSカード共通スタイル（エリアページ） */
.rss-list-grid { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: stretch; }
.rss-card { width: calc(25% - 20px); margin: 10px; display: flex; }
.rss-card a { display: flex; flex-direction: column; text-decoration: none; height: 100%; width: 100%; }
.rss-card .rss-thumb { aspect-ratio: 16/9; width: 100%; overflow: hidden; }
.rss-card .rss-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rss-card .rss-meta { margin-top: auto; }
/* 日付は共通で非表示 */
.tcn-area-main .rss-date { display: none !important; }
.area-product { font-size: 1em; margin-top: 1em; }
.article .rss-list-grid > li.rss-card { margin: 10px !important; }
.area-feed h2 { font-size: 1.5em; line-height: 1.3; margin-bottom: 1em; }

@media (max-width: 1199.98px){ .rss-card { width: calc(33.333% - 20px); } }
@media (max-width: 991.98px){ .rss-card { width: calc(50% - 20px); } }
@media (max-width: 575.98px){ .rss-card { width: calc(100% - 20px); } }

/* 関連コンテンツカード（アイコン付） */
.content-card-grid { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 20px; }
.content-card { width: calc(25% - 20px); border: 1px solid #e5e5e5; border-radius: 6px; background:#fff; overflow: hidden; }
.content-card a { display: block; padding: 14px; text-decoration: none; color: inherit; height: 100%; }
.content-card .cc-icon { font-size: 28px; color: #3b82f6; margin-right: 8px; }
.content-card .cc-title { font-weight: 600; line-height: 1.4; }
@media (max-width: 1199.98px){ .content-card { width: calc(33.333% - 20px); } }
@media (max-width: 991.98px){ .content-card { width: calc(50% - 20px); } }
@media (max-width: 575.98px){ .content-card { width: calc(100% - 20px); } }

/* 取り扱いメーカー（横長カード） */
.maker-list { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 16px; }
.maker-card { display: flex; align-items: center; gap: 12px; border: 1px solid #e5e5e5; border-radius: 8px; padding: 12px 16px; background: #fff; width: 100%; }
.maker-card a { display: flex; align-items: center; gap: 12px; text-decoration: none; color: inherit; flex: 1; }
.maker-icon { font-size: 28px; color: #0ea5e9; }
.maker-title { font-weight: 600; }
@media (min-width: 992px){ .maker-card { width: calc(50% - 8px); } }

/* rfd/index.php 断片のフォールバックスタイル（Bootstrap不在時） */
.rfd-index .row { display: flex; flex-wrap: wrap; margin-left: -8px; margin-right: -8px; }
.rfd-index .col { flex: 1 1 100%; padding-left: 8px; padding-right: 8px; }
@media (min-width: 768px){ .rfd-index .col { flex: 0 0 50%; }
}
.rfd-index .card { border: 1px solid #e5e5e5; border-radius: 8px; background: #fff; height: 100%; }
.rfd-index .card-img-top { width: 100%; height: auto; display: block; border-radius: 6px; }
.rfd-index .btn { display: inline-block; padding: 10px 14px; border-radius: 6px; background: #16a34a; color: #fff; text-decoration: none; }
.rfd-index .btn.btn-lg { font-size: 1.1rem; }
/* テーマのカテゴリ用パンくずは表示させる（独自パンくずと二段） */
.tcn-area-main .area-page {
  display: grid;
  grid-template-columns: 200px 1fr; /* 左: レフトナビ / 右: 本文 */
  column-gap: 24px;
  row-gap: 16px; /* 縦方向の余白 */
  align-items: start;
}
.tcn-area-main .area-page.no-leftnav { grid-template-columns: 1fr; }
.tcn-area-main .area-page.no-leftnav .area-right { grid-column: 1; }

/* 1024px以下はレフトナビを非表示（ルート/配下共通）＆1カラム */
@media (max-width: 1024px){
  .tcn-area-main .leftnavi { display: none !important; }
  .tcn-area-main .area-page { grid-template-columns: 1fr !important; }
}
.tcn-area-main .area-page .leftnavi {
  grid-column: 1;
}
.tcn-area-main .area-page > :not(.leftnavi) { grid-column: 2; }
/* 右カラムを1ブロックに集約 */
.tcn-area-main .area-page .area-right { grid-column: 2; min-width: 0; }
.tcn-area-main .area-page .area-right::after { content: ""; display: block; clear: both; }
/* パンくず内部のフロート無効化＋clearfix */
.tcn-area-main .area-page .breadcrumb { overflow: hidden; }
.tcn-area-main .area-page .breadcrumb::after { content: ""; display: block; clear: both; }
.tcn-area-main .area-page .breadcrumb li { float: none; display: inline; }
/* パンくずと見出しの下に余白 */
.tcn-area-main .area-page .breadcrumb { margin-bottom: 12px; }
.tcn-area-main .area-page .area-header { margin-bottom: 12px; }
@media screen and (max-width: 834px) {
  .tcn-area-main .area-page { display: block; }
}

/* 余白調整（上部の不必要な空き対策） */
.tcn-area-main .area-page .breadcrumb { margin-top: 0; }
.tcn-area-main .area-page .area-header { margin-top: 0; }
.tcn-area-main .area-page .area-content { margin-top: 0; }
article p { line-height: 1.5em !important; }
