@charset "UTF-8";


body.home .post-list,
body.blog .post-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

/* スマホ用：1カラムに切り替える */
@media screen and (max-width: 768px) {
  body.home .post-list,
  body.blog .post-list {
    grid-template-columns: 1fr;
  }
  .post-list { width:90%; margin:0 auto; display:block; }
}

/*アーカイブ等を非表示*/
.widget.widget_block { display:none; }

#colophon { display:none; }

.entry-footer { display:none; }
.posted-by { display:none; }
.post-taxonomies{ display:none; }
.comment-respond { display:none; }
.comments-area {
  display: none;
}



#main { width:100%; display:flex; flex-wrap:wrap; justify-content: space-between;}
content { width:90%; margin:0 auto; display:block; overflow:visible; }
.title_copy { font-family: "dnp-shuei-anti-std", sans-serif;font-weight: 400;font-style: normal;letter-spacing:0.05em;}
body.single #content { margin-top:70px; }
.entry-title { font-weight:normal; margin-bottom:30px; border-bottom:2px solid #B3212B; padding-bottom:10px; }
.title_copy.inline_sp { width:90%; margin:0 5%; display:inline-block; }
.title_copy.inline_pc { display:none; }
@media screen and (min-width: 767px) {
	#content { width:90%; display:flex; margin:0 auto; }
	/*詳細ページ*/
	body.single #content { margin-top:150px; }
	#primary .article { width:100%; }
  .title_copy.inline_sp { display:none; }
  .title_copy.inline_pc { display:inline-block; }
	

}
@media screen and (min-width:1080px) {
	#content { width:1080px; }
}




  .navigation.pagination { margin:100px auto 200px auto; align-items: center;}
/* 段落内画像の float を完全解除し、中央寄せ */
p > img,
p > img.alignnone,
p > img.aligncenter,
p > img.size-medium,
p > img[class*="wp-image-"] {
  float: none !important;
  display: block !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 100% !important;
  height: auto !important;
  clear: both !important;
  text-align: center !important;
  vertical-align: middle !important;
}
p {
	clear: both;
  }

  .img-wrapper {
	text-align: left;
	margin: 20px 0;
  }
  
  .img-wrapper img {
	display: block;
	margin: 0; /* 中央寄せの margin をリセット */
	max-width: 100%;
	height: auto;
  }


  /*詳細ページ*/
  .post-navigation {
	text-align: center;
	margin:60px auto 100px auto; 
  }
  

  @media screen and (max-width: 767px) {
    .post-navigation .nav-links { width:90%; display:flex; justify-content: space-between; margin:0 5%; }
.nav-next a { width:100%; text-align:right; display:inline-block; }
  }

  .post-navigation .nav-links {
	display: inline-flex; /* ← blockじゃなく inline-flex にするのがコツ！ */
	justify-content: center;
	gap: 60px;
	flex-wrap: wrap;
	align-items: center;
  }
  
  .post-navigation .nav-previous,
  .post-navigation .nav-next {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 16px;
  }
  
  
  .post-navigation .nav-previous svg,
  .post-navigation .nav-next svg {
	width: 1em;
	height: 1em;
	vertical-align: middle;
  }
  

  .post-navigation .nav-links .post-title { display:none; }



  /*一覧ページのページネーション*/
/* ページネーション全体 */
.navigation.pagination {
	margin-top: 40px;
	text-align: center;
  }
  
  /* 横並び＆高さ揃える */
  .navigation.pagination .nav-links {
	display: inline-flex;
	gap: 10px;
	justify-content: center;
	align-items: center;  /* ← ★ここが縦中央揃えの決め手！ */
	flex-wrap: wrap;
  }
  
  /* ページ番号ボタン共通スタイル */
  .page-numbers {
	display: flex;              /* ← ボタン内の文字も中央揃え */
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	padding: 0 10px;
	color: #333;
	text-decoration: none;
	border-radius: 4px;
	font-size: 14px;
	line-height: 1;
	transition: background 0.3s ease;
	box-sizing: border-box;
  }
  
  /* 現在のページ番号 */
  .page-numbers.current {
	background: #B3212B;
	color: #fff;
	border-color: #B3212B;
  }
  


  .entry-footer { border:none; }
  .entry-content p {
	display:block; 
	margin-bottom:10px; 
  }


  .pagination-wrap {
    text-align: center;
    margin: 2em auto 100px auto;
  
  }

  @media screen and (min-width: 768px) {

    .pagination-wrap {
      text-align: center;
      margin: 100px auto 150px auto;
    
    }
  }
  
  .pagination-wrap ul {
    display: flex;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0;
    flex-wrap: wrap; /* 画面幅が狭いときに折り返し */
  }
  
  .pagination-wrap li {
    margin: 0 4px;
  }
  
  .pagination-wrap a,
  .pagination-wrap span {
    display: flex;
    align-items: center;   /* ← 縦中央揃え */
    justify-content: center; /* 横も中央揃え */
    padding: 8px 12px;
    min-width: 36px;
    min-height: 36px;
    color: #333;
    border-radius: 4px;
    text-decoration: none;
    font-size: 16px;
    line-height: 1; /* 正確な中央揃えのために1にしておく */
  }
  
  .pagination-wrap .current {
    background: #b41c1c;
    color: white;
    font-weight: bold;
  }
  
  .pagination-wrap .dots {
    pointer-events: none;
    background: transparent;
  }

  a.page-numbers:hover { opacity:0.7; }
  
.site-title { display:none; }


  