/* =========================================================
   記事系（お知らせ/コラム/個別/カテゴリ） 2カラム＋回遊サイドバー
   ========================================================= */

/* ── 2カラムレイアウト ── */
.sg-layout{
  display:grid; grid-template-columns:minmax(0,1fr) 304px;
  gap:clamp(28px,3.2vw,56px); align-items:start;
}
.sg-main{min-width:0;}
.sg-sec{padding-top:clamp(34px,4vw,60px);}
@media(max-width:920px){
  .sg-layout{grid-template-columns:1fr; gap:44px;}
}

/* ── 個別記事 コンパクト見出し ── */
.sg-head{
  position:relative; padding:clamp(108px,14vw,150px) 0 clamp(26px,3vw,40px);
  background:#1a2638;   /* コンテンツ部と同じダークネイビー */
  border-bottom:.5px solid rgba(184,147,90,.18);
}

/* ページ送りのアンカー先（固定ヘッダー分オフセット） */
#list{scroll-margin-top:88px;}
.sg-head__crumb{font-family:var(--en-body,"Cormorant Garamond",serif); font-size:12px; letter-spacing:.06em; color:rgba(255,255,255,.6); margin-bottom:18px;}
.sg-head__crumb a{color:rgba(255,255,255,.7); text-decoration:none;}
.sg-head__crumb a:hover{color:var(--gold,#b8935a);}
.sg-head__crumb .sep{margin:0 8px; color:rgba(255,255,255,.35);}
.sg-head__crumb .cur{color:rgba(255,255,255,.45);}
.sg-head__meta{display:flex; align-items:center; gap:14px; margin-bottom:14px; font-size:13px; letter-spacing:.06em; color:rgba(255,255,255,.7);}
.sg-head__meta time{font-variant-numeric:tabular-nums; font-family:var(--en-body,serif); font-style:italic;}
.sg-head__cat{padding:3px 12px; border:.5px solid rgba(184,147,90,.5); color:var(--gold,#c9a86a); font-size:11px; letter-spacing:.1em;}
.sg-head__title{font-family:var(--serif-display,"Shippori Mincho",serif); font-weight:600; font-size:clamp(21px,3vw,33px); line-height:1.55; letter-spacing:.04em; color:#fff; margin:0;}

/* セクションタイトル（一覧の見出し・左カラム用に左寄せ） */
.sg-main .sec-title{text-align:left; margin-bottom:clamp(24px,2.6vw,38px);}

/* ── 本文カード（クリーム地・可読性重視） ── */
.sg-article{background:#faf7f1; color:#2c2722; border-radius:4px; padding:clamp(24px,3.4vw,52px); box-shadow:0 18px 50px rgba(0,0,0,.26);}
.sg-article__body{font-size:16px; line-height:2.05; letter-spacing:.02em; word-break:break-word;}
.sg-article__body > *{margin:0 0 1.5em;}
.sg-article__body > *:last-child{margin-bottom:0;}
.sg-article__body h2{font-size:1.4em; line-height:1.5; margin:1.9em 0 .8em; padding-bottom:.4em; border-bottom:1px solid rgba(44,39,34,.16); font-weight:600;}
.sg-article__body h3{font-size:1.18em; margin:1.7em 0 .6em; font-weight:600;}
.sg-article__body h4{font-size:1.05em; margin:1.5em 0 .5em; font-weight:600;}
.sg-article__body a{color:#9a7b3f; border-bottom:1px solid rgba(154,123,63,.45);}
.sg-article__body a:hover{opacity:.7;}
.sg-article__body strong{font-weight:600;}
.sg-article__body ul,.sg-article__body ol{margin:0 0 1.4em; padding-left:1.6em;}
.sg-article__body li{margin:.4em 0;}
.sg-article__body blockquote{margin:1.6em 0; padding:.6em 1.2em; border-left:3px solid #c9b487; background:rgba(201,180,135,.12); color:#4a443b;}
.sg-article__body img{max-width:100%; height:auto; border-radius:3px; display:block;}
.sg-article__body figure{margin:1.9em auto; text-align:center;}
.sg-article__body figcaption{margin-top:.6em; font-size:13px; color:#8a8278;}
.sg-article__body .wp-block-image{margin:1.9em 0;}
.sg-article__body hr{border:none; border-top:1px solid rgba(44,39,34,.14); margin:2.2em 0;}
.sg-article__body table{width:100%; border-collapse:collapse; margin:1.6em 0; font-size:14px;}
.sg-article__body th,.sg-article__body td{border:1px solid rgba(44,39,34,.18); padding:.6em .8em; text-align:left;}
.sg-article__body th{background:rgba(44,39,34,.05); font-weight:600;}
.sg-article__body iframe,.sg-article__body video{max-width:100%;}
.sg-article__body .wp-block-embed iframe{width:100%; aspect-ratio:16/9; height:auto;}
.sg-article__body .wp-block-video video{max-width:100%; height:auto;}
/* 本文ボタン（Gutenberg）をデザインに合わせる：金色・上品なボタン */
.sg-article__body .wp-block-buttons{display:flex; flex-wrap:wrap; gap:14px; margin:1.9em 0;}
.sg-article__body .wp-block-button{margin:0;}
.sg-article__body .wp-block-button__link{
  display:inline-block; padding:13px 32px; font-size:14px; letter-spacing:.08em; line-height:1.6; font-weight:500;
  background:#9a7b3f; color:#fff !important; border:1px solid #9a7b3f; border-radius:3px;
  text-decoration:none; box-shadow:none; transition:background .25s,border-color .25s,color .25s;
}
.sg-article__body .wp-block-button__link:hover{background:#866a36; border-color:#866a36; color:#fff !important; opacity:1;}
.sg-article__body .is-style-outline > .wp-block-button__link,
.sg-article__body .wp-block-button__link.is-style-outline{background:transparent; color:#9a7b3f !important; border:1px solid #9a7b3f;}
.sg-article__body .is-style-outline > .wp-block-button__link:hover,
.sg-article__body .wp-block-button__link.is-style-outline:hover{background:#9a7b3f; color:#fff !important;}
/* 旧内部埋め込み→関連リンク（ボタン調） */
.sg-article__body .sg-rellink{margin:1.5em 0;}
.sg-article__body .sg-rellink a{display:inline-flex; align-items:center; gap:8px; padding:11px 20px; border:1px solid rgba(154,123,63,.4); border-radius:3px; background:rgba(154,123,63,.07); color:#9a7b3f; text-decoration:none; font-size:14px; line-height:1.5;}
.sg-article__body .sg-rellink a:hover{background:rgba(154,123,63,.15); opacity:1;}

/* 前後の記事ナビ */
.sg-adjacent{display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-top:34px;}
.sg-adjacent__link{display:flex; flex-direction:column; gap:7px; padding:18px 20px; border:.5px solid rgba(184,147,90,.22); background:rgba(18,22,30,.4); text-decoration:none; transition:border-color .3s,background .3s;}
.sg-adjacent__link:hover{border-color:rgba(184,147,90,.5); background:rgba(18,22,30,.62);}
.sg-adjacent__link--next{text-align:right; align-items:flex-end;}
.sg-adjacent__label{font-family:var(--en-body,serif); font-size:11px; letter-spacing:.1em; color:var(--gold,#b8935a);}
.sg-adjacent__title{font-size:13px; line-height:1.65; letter-spacing:.02em; color:rgba(255,255,255,.86); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
.sg-adjacent__link:hover .sg-adjacent__title{color:#fff;}
.sg-adjacent__link.is-empty{border:none; background:none; pointer-events:none;}
@media(max-width:520px){
  .sg-adjacent{grid-template-columns:1fr;}
  .sg-adjacent__link.is-empty{display:none;}
  .sg-adjacent__link--next{text-align:left; align-items:flex-start;}
}

/* 一覧へ戻る */
.sg-back{text-align:center; margin-top:38px;}
.sg-back__link{display:inline-block; padding:12px 30px; font-size:14px; letter-spacing:.06em; color:rgba(255,255,255,.9); border:.5px solid rgba(255,255,255,.4); border-radius:2px; transition:background .25s,color .25s;}
.sg-back__link:hover{background:rgba(255,255,255,.92); color:#16203180;}

/* ── サイドバー（回遊） ── */
.sg-side{display:flex; flex-direction:column; gap:clamp(26px,2.6vw,38px); position:sticky; top:96px;}
.sg-widget{border:.5px solid rgba(184,147,90,.2); background:rgba(18,22,30,.4); padding:22px 22px 24px;}
.sg-widget__h{display:flex; align-items:baseline; justify-content:space-between; gap:10px; margin:0 0 16px; padding-bottom:12px; border-bottom:.5px solid rgba(184,147,90,.25); font-family:var(--serif-display,serif); font-weight:600; font-size:16px; letter-spacing:.1em; color:#fff;}
.sg-widget__h .en{font-family:var(--en-serif,serif); font-size:10px; letter-spacing:.24em; text-transform:uppercase; color:var(--gold,#b8935a);}

/* カテゴリー */
.sg-cats{list-style:none; margin:0; padding:0;}
.sg-cats__group + .sg-cats__group{margin-top:14px; padding-top:14px; border-top:.5px solid rgba(255,255,255,.08);}
.sg-cats__top{display:flex; justify-content:space-between; align-items:center; font-size:14px; letter-spacing:.06em; color:rgba(255,255,255,.92); text-decoration:none; font-weight:500;}
.sg-cats__top:hover{color:var(--gold,#c9a86a);}
.sg-cats__sub{list-style:none; margin:10px 0 0; padding:0 0 0 12px;}
.sg-cats__sub li{margin:2px 0;}
.sg-cats__sub a{display:flex; justify-content:space-between; align-items:center; padding:5px 0; font-size:12.5px; letter-spacing:.04em; color:rgba(255,255,255,.66); text-decoration:none;}
.sg-cats__sub a:hover{color:var(--gold,#c9a86a);}
.sg-cats .cnt{font-family:var(--en-body,serif); font-style:italic; font-size:11px; color:rgba(255,255,255,.42); margin-left:8px;}

/* 最新記事 */
.sg-latest{list-style:none; margin:0; padding:0;}
.sg-latest li + li{margin-top:14px; padding-top:14px; border-top:.5px solid rgba(255,255,255,.08);}
.sg-latest__item{display:flex; gap:12px; text-decoration:none; align-items:flex-start;}
.sg-latest__thumb{flex:0 0 60px; width:60px; height:46px; border-radius:2px; background:#2a3242 center/cover no-repeat;}
.sg-latest__body{min-width:0;}
.sg-latest__date{display:block; font-family:var(--en-body,serif); font-style:italic; font-size:10.5px; color:rgba(255,255,255,.45); margin-bottom:3px;}
.sg-latest__title{display:block; font-size:12.5px; line-height:1.6; letter-spacing:.03em; color:rgba(255,255,255,.85); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
.sg-latest__item:hover .sg-latest__title{color:var(--gold,#c9a86a);}

/* コラムグリッド（サイドバー併設時は可変列） */
.cl-grid--side{grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); margin-top:0;}

/* ── ページ送り ── */
.sg-pager{margin-top:clamp(36px,4vw,56px);}
.sg-pager__list{list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; justify-content:center; gap:6px;}
.sg-pager a,.sg-pager span{display:inline-flex; align-items:center; justify-content:center; min-width:40px; height:40px; padding:0 12px; font-family:var(--en-body,serif); font-size:13px; letter-spacing:.04em; color:rgba(255,255,255,.8); border:.5px solid rgba(184,147,90,.28); text-decoration:none; transition:background .25s,color .25s,border-color .25s;}
.sg-pager a:hover{border-color:var(--gold,#b8935a); color:var(--gold,#c9a86a);}
.sg-pager .current{background:var(--gold,#b8935a); border-color:var(--gold,#b8935a); color:#16203f; font-weight:600;}
.sg-pager .dots{border-color:transparent;}
.sg-pager .prev,.sg-pager .next{letter-spacing:.02em;}

@media(max-width:920px){
  .sg-side{position:static;}
}
@media(max-width:600px){
  .sg-article__body{font-size:15px; line-height:1.95;}
}
