/* ============================================================
   daruma-blog.css — /blog/ 本文エリア（マストヘッドとフッターの間）の見た目。
   紙地(paper)ベース＋Shippori Mincho見出しでサイト本体のブログ帯と統一。
   WordPress の Query Loop / 投稿ブロックの既定出力に対して .dz-* クラスで
   フックする（テンプレ側で className を付与）。
   すべて .dz スコープ配下。
   ============================================================ */

/* ============ 本文セクション（紙地・↘シーム） ============ */
.dz-blogwrap{ position:relative; z-index:1; margin-top:-68px; background:var(--paper); color:var(--ink);
  padding:120px 7% 92px; clip-path:polygon(0 0, 100% 68px, 100% 100%, 0 calc(100% - 68px)); }
.dz-blogwrap .inner{ max-width:1080px; margin:0 auto; }
@media(max-width:760px){
  .dz-blogwrap{ margin-top:-40px; padding:80px 6% 72px;
    clip-path:polygon(0 0, 100% 40px, 100% 100%, 0 calc(100% - 40px)); }
}

/* ============ 見出しバー（セクション見出し） ============ */
.dz-blogwrap .sechead{ display:flex; align-items:flex-end; justify-content:space-between; gap:18px;
  margin-bottom:34px; padding-bottom:16px; border-bottom:1px solid #0000001a; }
.dz-blogwrap .sechead .no{ font-family:'Oswald',sans-serif; font-weight:700; font-size:60px; line-height:.9;
  color:#0000000d; position:absolute; }
.dz-blogwrap .sechead .tt{ position:relative; }
.dz-blogwrap .sechead .kick{ font-size:10.5px; letter-spacing:.34em; font-weight:700; color:var(--gold2); margin-bottom:8px; }
.dz-blogwrap .sechead h2{ font-family:'Shippori Mincho',serif; font-weight:700; font-size:clamp(22px,3vw,30px);
  letter-spacing:.04em; color:var(--ink); line-height:1.4; }
.dz-blogwrap .sechead .cnt{ font-family:'Oswald',sans-serif; font-size:12px; letter-spacing:.06em; color:#8a8790; white-space:nowrap; }

/* ============ 投稿カード一覧（Query Loop grid） ============ */
.dz-posts.wp-block-post-template{ list-style:none; margin:0; padding:0;
  display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:26px; }
.dz-posts .wp-block-post{ margin:0; border-radius:14px; overflow:hidden; background:#fff; border:1px solid #0000000f;
  display:flex; flex-direction:column; box-shadow:0 8px 22px #0000000f; transition:transform .25s, box-shadow .25s; }
.dz-posts .wp-block-post:hover{ transform:translateY(-4px); box-shadow:0 18px 40px #00000022; }

.dz-posts .dz-th{ margin:0; }
.dz-posts .dz-th img,
.dz-posts .dz-th .wp-block-post-featured-image{ display:block; width:100%; }
.dz-posts .dz-th img{ height:200px; object-fit:cover; transition:transform .5s; }
.dz-posts .wp-block-post:hover .dz-th img{ transform:scale(1.05); }
/* アイキャッチ未設定時のプレースホルダ帯 */
.dz-posts .dz-th:empty{ height:120px; background:linear-gradient(120deg,var(--char) 0%,var(--red-d) 120%); }

.dz-posts .dz-body{ padding:20px 22px 22px; display:flex; flex-direction:column; flex:1; }
.dz-posts .dz-meta{ display:flex; align-items:center; gap:11px; margin-bottom:12px; }
.dz-posts .dz-date{ font-family:'Oswald',sans-serif; font-weight:500; font-size:11.5px; letter-spacing:.06em; color:#8a8790; }
.dz-posts .dz-cat a,
.dz-posts .dz-cat{ font-size:9.5px; letter-spacing:.12em; font-weight:700; padding:3px 9px; border-radius:5px;
  background:var(--gold2); color:#2a2400; display:inline-block; }
.dz-posts .dz-title{ font-family:'Shippori Mincho',serif; font-weight:600; color:var(--ink); font-size:17px;
  line-height:1.55; letter-spacing:.02em; margin-bottom:10px; }
.dz-posts .dz-title a{ color:inherit; }
.dz-posts .dz-title a:hover{ color:var(--red); }
.dz-posts .dz-ex{ font-size:12px; line-height:1.9; color:var(--ink2); margin-bottom:16px; }
.dz-posts .dz-more{ margin-top:auto; }
.dz-posts .dz-more a{ font-size:11px; letter-spacing:.1em; color:var(--gold2); font-weight:700;
  display:inline-flex; align-items:center; gap:7px; }
.dz-posts .dz-more a:hover{ color:var(--red); }

@media(max-width:760px){
  .dz-posts.wp-block-post-template{ grid-template-columns:1fr; gap:20px; }
}

/* ============ ページネーション ============ */
.dz-pager{ margin-top:44px; display:flex; justify-content:center; }
.dz-pager .wp-block-query-pagination{ display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.dz-pager a, .dz-pager .wp-block-query-pagination-numbers .page-numbers{
  font-family:'Oswald',sans-serif; font-size:13px; letter-spacing:.04em; color:var(--ink2);
  padding:8px 13px; border:1px solid #0000001f; border-radius:8px; background:#fff; }
.dz-pager a:hover{ border-color:var(--gold2); color:var(--red); }
.dz-pager .page-numbers.current{ background:var(--char); color:#fff; border-color:var(--char); }

/* ============ 単一記事（single） ============ */
.dz-article{ max-width:760px; margin:0 auto; }
.dz-article .dz-artmeta{ display:flex; align-items:center; gap:12px; margin-bottom:14px; }
.dz-article .dz-date{ font-family:'Oswald',sans-serif; font-size:12px; letter-spacing:.06em; color:#8a8790; }
.dz-article .dz-cat, .dz-article .dz-cat a{ font-size:10px; letter-spacing:.12em; font-weight:700; padding:3px 10px;
  border-radius:5px; background:var(--gold2); color:#2a2400; display:inline-block; }
.dz-article .dz-arttitle{ font-family:'Shippori Mincho',serif; font-weight:700; color:var(--ink);
  font-size:clamp(24px,3.6vw,34px); line-height:1.5; letter-spacing:.03em; margin-bottom:22px; }
.dz-article .dz-artthumb{ margin:0 0 30px; border-radius:14px; overflow:hidden; }
.dz-article .dz-artthumb img{ display:block; width:100%; height:auto; }

/* 本文プロース（WYSIWYG） */
.dz-prose{ font-size:14.5px; line-height:2; color:#2a2a30; letter-spacing:.02em; }
.dz-prose > *{ margin:0 0 1.3em; }
.dz-prose h2{ font-family:'Shippori Mincho',serif; font-weight:700; font-size:22px; line-height:1.5;
  color:var(--ink); letter-spacing:.03em; margin:2em 0 .9em; padding-left:14px; border-left:4px solid var(--red); }
.dz-prose h3{ font-family:'Shippori Mincho',serif; font-weight:600; font-size:18px; line-height:1.55;
  color:var(--ink); letter-spacing:.02em; margin:1.8em 0 .7em; }
.dz-prose h4{ font-weight:700; font-size:15.5px; color:var(--ink); margin:1.6em 0 .6em; }
.dz-prose a{ color:var(--red); text-decoration:underline; text-underline-offset:2px; }
.dz-prose a:hover{ color:var(--red-d); }
.dz-prose strong{ font-weight:700; color:var(--ink); }
.dz-prose ul, .dz-prose ol{ padding-left:1.5em; }
.dz-prose li{ margin-bottom:.5em; }
.dz-prose img{ max-width:100%; height:auto; border-radius:10px; }
.dz-prose blockquote{ border-left:3px solid var(--gold2); background:#0000000a; padding:14px 18px;
  border-radius:0 8px 8px 0; color:#4a4a52; font-size:13.5px; }
.dz-prose blockquote p{ margin:0; }
.dz-prose code{ font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.9em;
  background:#00000010; padding:.1em .4em; border-radius:4px; }
.dz-prose pre{ background:var(--char); color:#e8e2d2; padding:16px 18px; border-radius:10px; overflow-x:auto; }
.dz-prose pre code{ background:none; padding:0; }
.dz-prose hr{ border:none; border-top:1px solid #0000001a; }
.dz-prose table{ width:100%; border-collapse:collapse; font-size:13px; }
.dz-prose th, .dz-prose td{ border:1px solid #0000001f; padding:9px 12px; text-align:left; }
.dz-prose th{ background:#00000008; font-weight:700; }

/* 記事フッタ（一覧へ戻る） */
.dz-article .dz-back{ margin-top:44px; padding-top:26px; border-top:1px solid #0000001a; }
.dz-article .dz-back a{ display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:700;
  letter-spacing:.04em; color:#3a2c00; background:linear-gradient(var(--gold),var(--gold2));
  padding:12px 24px; border-radius:11px; }

/* ============ 検索・404の空状態 ============ */
.dz-empty{ max-width:640px; margin:0 auto; text-align:center; padding:30px 0; }
.dz-empty h2{ font-family:'Shippori Mincho',serif; font-weight:700; font-size:clamp(22px,3vw,30px);
  color:var(--ink); margin-bottom:14px; letter-spacing:.03em; }
.dz-empty p{ font-size:13px; line-height:2; color:var(--ink2); margin-bottom:24px; }
.dz-empty .wp-block-search{ max-width:420px; margin:0 auto; }
.dz-empty .back a, .dz-empty .dz-back a{ display:inline-flex; align-items:center; gap:8px; font-size:13px; font-weight:700;
  letter-spacing:.04em; color:#3a2c00; background:linear-gradient(var(--gold),var(--gold2)); padding:12px 24px; border-radius:11px; }

/* 検索フォーム（紙地に合わせる） */
.dz-blogwrap .wp-block-search__input{ border:1px solid #cdc7ba; border-radius:9px 0 0 9px; padding:11px 13px; font-size:14px; }
.dz-blogwrap .wp-block-search__button{ background:var(--char); color:#fff; border:none; border-radius:0 9px 9px 0;
  padding:11px 18px; font-weight:700; letter-spacing:.04em; cursor:pointer; }
