/* ===== ページごとの手直し（HTML版で足した調整） =====
   クラス名は build.py の NODE_CLASS で付けている。手で直してよいファイル。 */

/* 本文中のリンク（「02 伽藍と建築」など） */
.inline-link{color:var(--c-shu);text-decoration:underline;text-underline-offset:4px}
ruby rt{font-size:.42em;letter-spacing:.2em;font-weight:400}

/* ---------- 浄土寺について：目次 ---------- */
.toc-grid > *{width:calc(100% / 3)}
/* 10/13 矢印を文字の直後へ（右端に寄せない）＋セル右に余白 */
.toc-grid > a{padding-right:32px !important;align-items:baseline !important}
.toc-grid > a > .x94{display:none !important}
.toc-grid > a > p:last-child{margin-left:-6px;transition:transform .25s}
.toc-grid > a:hover > p:last-child{transform:translateY(3px)}
.toc-grid > a:hover{opacity:1;background:color-mix(in srgb, var(--c-line) 35%, transparent)}
@media (max-width:1100px){.toc-grid > *{width:50%}}
@media (max-width:540px){.toc-grid > *{width:100%}}

/* ---------- 浄土寺について：年表（○を縦線の上に乗せる） ---------- */
.tl > * > :first-child{width:34px;padding:9px 0 0;margin-left:-4px}
@media (max-width:540px){
  .tl > *{flex-wrap:wrap}
  .tl > * > :nth-child(2){width:calc(100% - 30px);padding-bottom:4px}
  .tl > * > :nth-child(3){flex:none;width:100%;padding-left:30px}
}

/* ---------- 拝観・アクセス：道のり（スマホ・タブレットは縦に並べる） ---------- */
@media (max-width:1100px){
  .route{gap:0 !important}
  .route > li{display:grid;grid-template-columns:22px 1fr;column-gap:16px;width:100%;overflow:visible}
  .route > li > *{grid-column:2}
  .route > li > :first-child{grid-column:1;grid-row:1 / span 6;flex-direction:column;align-items:center;gap:6px;width:auto;height:100%;padding:6px 0 0}
  .route > li > :first-child > :last-child{flex:1;width:1px;height:auto;min-height:24px}
  .js .route > li > :first-child > :last-child:not(.is-in){scale:1 0;transform-origin:50% 0}
  .route > li > img{width:100%;height:160px;margin-bottom:12px}
  .route > li > :last-child{padding-bottom:28px}
  .route > li:last-child > :first-child > :last-child{visibility:hidden}
}

/* ---------- 御祈祷：尾道聖天 一年祈願（枠の中で中央に） ---------- */
@media (max-width:1100px){
  .kigan-card{padding:28px 24px 36px !important;align-items:stretch !important}
  .kigan-card > *{width:100% !important}
}

/* ---------- 御祈祷：毎月の行事（5件を並べる） ---------- */
.monthly{display:grid !important;grid-template-columns:repeat(5, minmax(0, 1fr));gap:24px !important;width:100%}
.monthly > *{width:auto !important}
/* 写真のない行事カードは写真枠を出さない */
.monthly > * > :first-child:empty{display:none}
.monthly{align-items:stretch !important}
.monthly > *{justify-content:flex-start !important;border-top:1px solid var(--c-line)}
@media (max-width:1100px){.monthly{grid-template-columns:repeat(2, minmax(0, 1fr));gap:16px !important}}
@media (max-width:540px){.monthly{grid-template-columns:1fr}}

/* ---------- 体験・授与品：授与品の写真は正方形にそろえる ---------- */
.sq{aspect-ratio:1 / 1;height:auto !important;object-fit:cover}

/* 長い文が改行のおかしな所で切れないように */
.tx{text-wrap:pretty}
h1.tx,h2.tx,h3.tx,h4.tx{text-wrap:balance}

/* ---------- トップ：大きい写真に重ねる文字 ---------- */
.fv-copy{position:absolute;top:23.5%;right:8.6%;display:flex;flex-direction:row;align-items:flex-start;gap:.2vw;color:#fff;pointer-events:none}
.fv-catch{writing-mode:vertical-rl;font-family:var(--f-mincho);font-weight:500;font-size:max(15px,3.3vw);line-height:2.45;letter-spacing:.58em;text-shadow:0 0 28px rgba(0,0,0,.28)}
.fv-catch span{display:block}
.fv-label{order:-1;writing-mode:vertical-rl;margin-top:4.6vw;padding:1em .55em .7em;background:var(--c-shu);font-family:var(--f-mincho);font-size:max(8px,.86vw);letter-spacing:.3em;line-height:1}
.fv-sub{position:absolute;left:3.9%;bottom:7%;color:#fff;font-family:var(--f-serif);font-size:max(10px,1.15vw);letter-spacing:.24em;line-height:1.7;text-shadow:0 0 18px rgba(0,0,0,.4);pointer-events:none}
.fv-sub span{display:block;font-size:.72em;letter-spacing:.3em;opacity:.9}

/* ---------- トップ：企業・団体様へ（左に正方形の写真・右に文章） ---------- */
.biz-row{align-items:stretch !important}
.biz-card{flex-direction:row !important;align-items:stretch !important}
.biz-card > div:not(:last-child){display:none}   /* STUDIO版の写真枠（上に置く形）は使わない */
.biz-ph{flex:none;width:44%;height:auto;aspect-ratio:1 / 1;object-fit:cover}
.biz-card > :last-child{flex:1;width:auto !important;min-width:0;justify-content:center !important;padding:28px 30px !important;gap:12px !important}
.biz-card > :last-child > [aria-hidden]{display:none}
@media (max-width:540px){
  .biz-ph{width:36%;aspect-ratio:auto;align-self:stretch}
  .biz-card > :last-child{padding:20px 18px !important}
}

/* ---------- 仏前結婚式：挙式までの流れ（高さをそろえる・ピクトグラム） ---------- */
.flow{align-items:stretch !important}
.flow-ic{width:64px;height:64px;object-fit:contain;margin-bottom:4px}

/* ---------- 体験・授与品：月例体験のカード（幅いっぱいに2列） ---------- */
.prog{display:grid !important;grid-template-columns:repeat(2, minmax(0, 1fr));width:100%}
.prog > *{width:auto !important}
@media (max-width:1100px){.prog{grid-template-columns:1fr}}
.prog{align-items:stretch !important}
