/* ================= コラム(ブログ) ================= */
/* style.css の色トークン(--sumi/--kinari/--shiro/--gold/--gold-soft/--ease)を継承して使う。
   このファイルは /column/ 配下のページ(記事ページ・一覧ページ)専用。 */

/* パンくず */
.col-breadcrumb{
  padding:7.2rem 6vw 0;
  font-size:.72rem;
  letter-spacing:.08em;
  color:var(--sumi);
  opacity:.55;
}
.col-breadcrumb a{
  border-bottom:1px solid transparent;
  transition:opacity .4s, border-color .4s;
}
.col-breadcrumb a:hover{ opacity:.8; border-color:var(--gold-soft); }
.col-breadcrumb .sep{ margin:0 .5em; opacity:.6; }

/* ---------- 記事ページ ---------- */
.col-article-hero{
  padding:2.4rem 0 0;
  background:var(--kinari);
}
.col-article-hero .container{ max-width:760px; }
.col-article-title{
  font-size:clamp(1.6rem, 4.2vw, 2.4rem);
  line-height:1.55;
  margin-top:1.2rem;
}
.col-article-date{
  display:block;
  margin-top:1.4rem;
  font-size:.76rem;
  letter-spacing:.08em;
  color:var(--sumi);
  opacity:.5;
}
.col-article-cover{
  margin-top:2.8rem;
  aspect-ratio:16/9;
  overflow:hidden;
  background:var(--sumi);
}
.col-article-cover img{ width:100%; height:100%; object-fit:cover; }

/* 本文 */
.col-prose{
  max-width:760px;
  margin:0 auto;
  padding:3.2rem 6vw 1rem;
  font-size:1rem;
  line-height:2.1;
}
.col-prose h2{
  font-size:1.4rem;
  margin:3rem 0 1.4rem;
  padding-top:1.6rem;
  border-top:1px solid rgba(182,154,99,.3);
}
.col-prose h3{
  font-size:1.15rem;
  margin:2.4rem 0 1rem;
}
.col-prose h4,
.col-prose h5,
.col-prose h6{
  font-family:'Shippori Mincho B1', serif;
  font-size:1.02rem;
  margin:2rem 0 .8rem;
}
.col-prose p{ margin:0 0 1.6rem; }
.col-prose ul,
.col-prose ol{ margin:0 0 1.6rem; padding-left:1.6em; }
.col-prose li{ margin-bottom:.6em; }
.col-prose a{ color:var(--gold); border-bottom:1px solid var(--gold-soft); }
.col-prose a:hover{ border-color:var(--gold); }
.col-prose img{ width:100%; height:auto; margin:2rem 0; }
.col-prose strong{ font-weight:500; color:var(--sumi); }

/* 記事末尾CTA(店舗導線) */
.col-cta{
  background:var(--shiro);
  border-top:1px solid rgba(182,154,99,.2);
}
.col-cta .container{ max-width:760px; }
.col-cta-links{
  margin-top:2.4rem;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:1.6rem;
}
.col-cta-card{
  display:block;
  padding:2rem 1.8rem;
  background:var(--sumi);
  color:var(--kinari);
  border:1px solid rgba(182,154,99,.25);
  transition:border-color .5s, transform .5s var(--ease);
}
.col-cta-card:hover{ border-color:var(--gold); transform:translateY(-3px); }
.col-cta-card h3{
  font-family:'Shippori Mincho B1', serif;
  font-size:1.05rem;
  margin-bottom:.6rem;
}
.col-cta-card p{ font-size:.82rem; opacity:.75; line-height:1.8; margin:0; }

/* ---------- 一覧ページ ---------- */
.col-index-hero{ padding:8.5rem 0 1rem; background:var(--kinari); text-align:center; }
.col-list{ background:var(--shiro); }
.col-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:2rem;
  margin-top:3rem;
}
.col-card{
  display:flex;
  flex-direction:column;
  background:var(--sumi);
  color:var(--kinari);
  border:1px solid rgba(182,154,99,.25);
  overflow:hidden;
  transition:border-color .5s, transform .5s var(--ease);
}
.col-card:hover{ border-color:var(--gold); transform:translateY(-4px); }
.col-card-cover{ aspect-ratio:16/10; overflow:hidden; background:rgba(182,154,99,.08); }
.col-card-cover img{ width:100%; height:100%; object-fit:cover; }
.col-card-body{
  padding:1.8rem;
  display:flex;
  flex-direction:column;
  gap:.8rem;
  flex-grow:1;
}
.col-card-date{ font-size:.7rem; letter-spacing:.08em; color:var(--gold); opacity:.85; }
.col-card-title{ font-size:1.02rem; line-height:1.6; }
.col-card-excerpt{ font-size:.82rem; opacity:.75; line-height:1.8; flex-grow:1; }
.col-empty{ text-align:center; opacity:.6; font-size:.9rem; padding:3rem 0; grid-column:1/-1; }

/* ---------- Responsive ---------- */
@media (max-width:900px){
  .col-cta-links{ grid-template-columns:1fr; }
  .col-grid{ grid-template-columns:1fr; }
}
@media (max-width:560px){
  .col-breadcrumb{ padding:5.6rem 6vw 0; }
  .col-index-hero{ padding:6.5rem 0 1rem; }
}
