/* ====== ベース ====== */
:root { --ink:#222; --muted:#666; --line:#d9d9d9; --paper:#fff; }
html,body { height:100% }
body {
  margin:0; background:var(--paper); color:var(--ink);
  font-family:"游明朝","Yu Mincho","Noto Serif JP",serif;
  font-size:14px; line-height:1.9; letter-spacing:.02em;
}

/* 余白は広め（白地を活かす） */
.wrap { max-width:1000px; margin:0 auto; padding:60px 140px 100px }

/* 見出し */
.title { font-size:20px; font-weight:700; margin:0 0 14px }
.lead  { color:#444; margin:0 0 26px }

/* セクション（細線・角丸なし） */
.panel { border:1px solid var(--line); background:#fff; padding:0 40px; margin:40px 0 }
.panel.slim { padding:0 20px }
.panel h2   { margin:0; padding:12px 0; font-size:16px; font-weight:700; border-bottom:1px solid var(--line) }
.panel .sub { color:var(--muted); font-size:12px; padding:8px 0; border-bottom:1px solid var(--line) }

/* 祈祷：短冊タグを格子状に配置（間延び解消） */
.prayer-tags{
  list-style:none; margin:0; padding:12px 0 18px;
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)); /* PC：3列 */
  gap:10px 16px;
}
.prayer-tags li{
  border:1px solid var(--line);
  padding:8px 10px;
  text-align:center;
  font-weight:700;
  line-height:1.6;
  letter-spacing:.02em;
}

/* 祈祷料の目安 */
.note { display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding:14px 0 18px }
.note .label { display:inline-block; border:1px solid var(--line); padding:2px 6px; font-size:12px }
.note .price { font-weight:700 }
.small { font-size:12px }
.muted { color:var(--muted) }

/* ご回向：リスト形式（3カラム） */
.list-eikou { list-style:none; margin:0; padding:6px 0 }
.list-eikou li{
  display:grid;
  grid-template-columns: 10em 1fr 9em;
  gap:6px;
  border-bottom:1px solid var(--line);
  padding:4px 0;
  line-height:1.6; /* 詰め気味 */
}
.list-eikou .k { font-weight:700 }
.list-eikou .p { text-align:right; white-space:nowrap }

/* お問い合わせ */
.contact { list-style:none; margin:0; padding:8px 0 16px }
.contact li{
  border-bottom:1px solid var(--line);
  padding:4px 0;           /* すっきり */
  font-size:13.5px;        /* 上品に控えめ */
}
.tel { font-variant-numeric: tabular-nums }

/* 画面広めなら4列、スマホは2→1列 */
@media (min-width:1200px){
  .prayer-tags{ grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width:680px){
  body { font-size:15px; line-height:1.95 }
  .wrap { padding:28px 16px 56px; max-width:none }
  .panel { padding:0 14px; margin:28px 0 }
  .panel.slim { padding:0 12px }

  .prayer-tags{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap:8px 12px; }

  .list-eikou li{ grid-template-columns: 1fr; }
  .list-eikou .p{ text-align:left }
}
