/* 色・書体（STUDIOの登録値） */
:root{
  --c-shu:#8E3A28; /* 朱色 */
  --c-bk:#26221D; /* BK */
  --c-text:#3D372F; /* 本文 */
  --c-line:#E6DFCF; /* 罫線 */
  --c-usuzumi:#6B6357; /* 薄墨 */
  --c-gold:#C9A25E; /* 金 */
  --c-kinari:#F6F2E9; /* 生成り */
  --c-white:#FDFCF8; /* 白 */
  --c-line-dark:#D8CFBA; /* 罫線・濃 */
  --c-inv-text:#F3EDE0; /* 反転文字 */
  --c-inv-light:#E9E2D399; /* 反転・淡 */
  --c-inv-line:#E9E2D333; /* 反転線 */
  --f-lato:Lato,serif;
  --f-serif:'Noto Serif JP',serif;
  --f-mincho:'Shippori Mincho',serif;
  --f-garamond:'EB Garamond',serif;
  --f-sans:Inter, 'Noto Sans JP',serif;
}

/* 文字スタイル：小EN */
.t-en-s{font-family:var(--f-garamond);font-size:0.75rem;font-style:normal;font-weight:400;letter-spacing:0.42em;line-height:1}
/* 文字スタイル：H0 */
.t-h0{font-family:var(--f-mincho);font-size:2.25rem;font-style:normal;font-weight:600;letter-spacing:0.18em;line-height:1.6}
/* 文字スタイル：強p */
.t-p-strong{font-family:var(--f-mincho);font-size:1.25rem;font-style:normal;font-weight:400;letter-spacing:0.06em;line-height:2.00}
/* 文字スタイル：H1 */
.t-h1{font-family:var(--f-mincho);font-size:1.75rem;font-style:normal;font-weight:600;letter-spacing:0.10em;line-height:1.60}
/* 文字スタイル：p */
.t-p{font-family:var(--f-serif);font-size:1.15rem;font-style:normal;font-weight:400;letter-spacing:0.05em;line-height:1.75}
/* 文字スタイル：H2 */
.t-h2{font-family:var(--f-mincho);font-size:1.4rem;font-style:normal;font-weight:600;letter-spacing:0.18em;line-height:1.8}
/* 文字スタイル：H3 */
.t-h3{font-family:var(--f-mincho);font-size:1.15rem;font-weight:600;letter-spacing:0.14em;line-height:1.60}
/* 文字スタイル：H4 */
.t-h4{font-family:var(--f-mincho);font-size:1rem;font-weight:600;letter-spacing:0.12em;line-height:1.70}
/* 文字スタイル：小p */
.t-p-s{font-family:var(--f-serif);font-size:1rem;font-weight:400;letter-spacing:0.05em;line-height:2.00}
/* 文字スタイル：注記 */
.t-note{font-family:var(--f-serif);font-size:0.85rem;font-weight:400;letter-spacing:0.05em;line-height:1.90}
/* 文字スタイル：ラベル */
.t-label{font-family:var(--f-serif);font-size:0.9rem;font-weight:400;letter-spacing:0.18em;line-height:1.00}
/* 文字スタイル：ナビ */
.t-nav{font-family:var(--f-serif);font-size:0.95rem;font-weight:500;letter-spacing:0.14em;line-height:1.00}
/* 文字スタイル：EN */
.t-en{font-family:var(--f-garamond);font-size:0.9rem;font-weight:400;letter-spacing:0.08em;line-height:1.00}
/* 文字スタイル：大EN */
.t-en-l{font-family:var(--f-garamond);font-size:2.25rem;font-weight:400;letter-spacing:0.06em;line-height:1.00}
/* 文字スタイル：小ラベル */
.t-label-s{font-family:var(--f-serif);font-size:0.7rem;font-style:normal;font-weight:400;letter-spacing:0.2em;line-height:1}

/* ===== 基本設定（手で直してよいファイル） ===== */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--c-kinari);color:var(--c-text);font-family:var(--f-serif);-webkit-font-smoothing:antialiased;font-feature-settings:"palt" 0}
h1,h2,h3,h4,p,ul,li{margin:0;padding:0;font-weight:inherit}
ul{list-style:none}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}

/* レイアウトの箱（STUDIOの箱と同じ初期値） */
/* :where() で優先度を0にして、各要素の指定（.x123）が必ず勝つようにする */
:where([class^="x"]){display:flex;flex-flow:column;flex:0 0 auto;align-content:center;align-items:center;max-width:100%;position:relative}
:where(img[class^="x"]){display:block;object-fit:cover}
.tx{display:block;word-break:break-word;overflow-wrap:anywhere}
a[class^="x"]{cursor:pointer}
a[class^="x"]:hover{opacity:.82;transition:opacity .2s}

/* ===== お知らせ記事ページ ===== */
.post{display:block;background:var(--c-kinari);padding:72px 24px 96px}
.post-in{max-width:800px;margin:0 auto}
.post-crumb{font-size:.8rem;letter-spacing:.1em;color:var(--c-usuzumi);margin-bottom:40px}
.post-meta{display:flex;gap:12px;align-items:center;font-size:.9rem;letter-spacing:.08em;color:var(--c-usuzumi);margin-bottom:16px}
.post-cat{border:1px solid var(--c-line-dark);padding:2px 10px;font-size:.75rem}
.post-title{font-family:var(--f-mincho);font-size:1.75rem;font-weight:600;letter-spacing:.1em;line-height:1.6;color:var(--c-bk);margin-bottom:32px}
.post-cover{width:100%;height:auto;margin-bottom:40px}
.post-body{font-size:1.05rem;line-height:2;letter-spacing:.05em}
.post-body p{margin:0 0 1.4em}
.post-body img{height:auto;margin:1.5em 0}
.post-back{margin-top:56px;font-size:.95rem;letter-spacing:.1em}
.post-back a{border-bottom:1px solid var(--c-line-dark);padding-bottom:4px}
@media (max-width:540px){.post{padding:48px 20px 72px}.post-title{font-size:1.4rem}}

/* 埋め込み（地図など）は箱いっぱいに */
:where([class^="x"]) > iframe{display:block;width:100%;height:100%;border:0}

/* リッチテキスト（STUDIOの段落間隔に合わせる） */
.rt p{margin:10px 0}
.rt a{text-decoration:underline;text-underline-offset:3px}
.rt ul,.rt ol{margin:10px 0;padding-left:1.5em}
.rt ul{list-style:disc}
.rt strong,.rt b{font-weight:600}

/* ページ内リンクはなめらかに。固定ヘッダーに隠れないよう少し上で止める */
html{scroll-behavior:smooth}
[id]{scroll-margin-top:96px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.post-cover{max-height:min(70vh,560px);object-fit:cover}
