/*=====================*/
/* ヘッダー */
/*=====================*/
.header {
	padding: 5px 0;
}

.site-description {
	color: #ddd;
}

/*=====================*/
/* 目次 */
/*=====================*/

.post-content #toc_container {
	margin: 30px 0;
	padding: 1em 1em 1em 2em;
	border-top: 5px solid #2589d0;
	border-radius: 5px;
	background-color: #f7f7f7;
}

/*=====================*/
/* 広告表記 */
/*=====================*/
.post-content p.ads {
	font-size: 85%;
	text-align: center;
	color: #666;
	margin-bottom: 0.5em;
	margin-top: 1em;
}
.post-content .easyLink-box {
	margin-bottom:15px;
}

/*=====================*/
/* 記事リスト高さ揃え */
/*=====================*/
/* === 親コンテナ（記事一覧） === */
.post-container {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 24px;
  align-items: stretch; /* 高さを揃える */
}

/* === 各カード === */
.post-container article {
  display: flex;
  flex-direction: column;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 6px rgba(0,0,0,0.08);
}

/* === サムネイル（高さ固定） === */
.post-container article .featured-media {
  width: 100%;
  aspect-ratio: 16 / 9; /* 縦横比を固定（正方形なら 1 / 1） */
  overflow: hidden;
  flex-shrink: 0;
}
.post-container article .featured-media img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* 画像を切り抜き拡大して比率維持 */
  display: block;
}

/* === 記事本文部分 === */
.post-container article .post-content {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
	min-height: 210px;
}

/* === タイトル（行数制限） === */
.post-container article .post-title {
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 1.4;
	min-height: 88px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3; /* ← タイトル2行で省略 */
}

/* === 本文（行数制限） === */
.post-container article .post-excerpt {
  flex: 1 1 auto; /* 残りの高さを埋める */
  font-size: 0.95rem;
  color: #444;
  line-height: 1.6;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4; /* ← 本文3行で省略 */
}

/* === ボタンなどフッター部分 === */
.post-container article .post-footer {
  margin-top: auto;
  padding-top: 12px;
  border-top: 1px solid #eee;
  font-size: 0.9rem;
  text-align: right;
}


/*=====================*/
/* サイドバーランキング */
/*=====================*/
.sidebar #block-8 {
	background-color:#1d1d1d;
}
.sidebar #block-8 h2.wp-block-heading {
	color:#999;
	font-weight:bold;
	font-size:1.2em;
	text-align:center;
}
.sidebar .jetpack-top-posts {
	counter-reset: posts-rank;
}
.sidebar .jetpack-top-posts-title:before {
	counter-increment: posts-rank 1;
	content: counter(posts-rank) "位｜";
}


/*=====================*/
/* 細かな修正 */
/*=====================*/
.post-content .wp-block-image img {
	margin-bottom: 20px !important;
	box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.2);
}

.post-content  .wp-element-caption {
	margin-bottom: 20px;
	margin-top: 0;
	font-size: 14px;
	text-align: center;
	color: #666;
}

.wp-block-table  .wp-element-caption {
	margin-top: 10px;
}

.post-content  li {
	margin-top: 0;
}

.post-content td {
	border-bottom: 0;
}

.post-content .wp-block-table {
	margin-bottom: 20px;
}

.post-content .wp-block-table table {
	border-bottom: 1px solid #333;
}
.post-content .wp-block-embed {
	margin-bottom: 20px;
}

.post-content blockquote {
	background-color:#eee;
	padding: 0 20px;
}
.post-content blockquote p {
	text-align:left;
	font-size:1em;
}