/* 光見寺：松の深緑と、ロゴの「光」の金。紙の地に明朝。ご年配の方も読みやすい大きめの文字 */
:root{--paper:#f8f5ed;--paper2:#efeadd;--ink:#26302a;--sub:#55605a;--pine:#1d4a36;--pine2:#143526;--gold:#a87d22;--gold2:#d9b45f;--line:#d9d2c0;--white:#fffdf8}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.95 "Zen Kaku Gothic New","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;overflow-wrap:anywhere}
img{max-width:100%;height:auto;display:block}
a{color:var(--pine)}
h1,h2,h3,h4,.min{font-family:"Shippori Mincho","Hiragino Mincho ProN","Yu Mincho",serif;font-weight:600;line-height:1.5;letter-spacing:.04em;text-wrap:balance}
.wrap{max-width:1120px;margin:0 auto;padding-inline:max(20px,env(safe-area-inset-left,0px)) max(20px,env(safe-area-inset-right,0px))}
.narrow{max-width:820px}
.sec{padding-block:clamp(56px,8vw,104px)}
.sec--alt{background:var(--paper2)}
.sec--pine{background:var(--pine);color:#f3efe3}
.sec--pine a{color:#fff}
.center{text-align:center}

/* 見出し：朱印のかわりに、金の小さな丸（光）を添える */
.ttl{margin:0 0 clamp(28px,4vw,48px)}
.ttl small{display:block;font:500 13px/1.6 "Zen Kaku Gothic New",sans-serif;letter-spacing:.2em;color:var(--gold);margin-bottom:6px}
.ttl h2{margin:0;font-size:clamp(26px,3.4vw,36px);color:var(--pine)}
.sec--pine .ttl h2{color:#fff}.sec--pine .ttl small{color:var(--gold2)}
.ttl.center h2::after{content:"";display:block;width:7px;height:7px;border-radius:50%;background:var(--gold);margin:16px auto 0}

/* ヘッダー */
.hd{position:sticky;top:0;z-index:30;background:rgba(255,253,248,.97);border-bottom:1px solid var(--line)}
.hd__in{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}
.hd__logo img{height:54px;width:auto}
.hd__sub{display:block;font-size:11px;color:var(--sub);letter-spacing:.08em;line-height:1.3;margin-top:2px}
.hd__logo{text-decoration:none;display:block}
.nav{display:flex;align-items:center;gap:clamp(10px,1.5vw,22px);font-size:15px}
.nav a{text-decoration:none;color:var(--ink);padding:6px 0;white-space:nowrap}
.nav a:hover,.nav a[aria-current]{color:var(--pine);box-shadow:inset 0 -2px 0 var(--gold)}
.nav a.nav__tel{background:var(--pine);color:#fff;padding:8px 14px;border-radius:3px;font-weight:700;box-shadow:none}
.menu{display:none}
@media (max-width:1040px){
  .hd__in{min-height:64px}.hd__logo img{height:44px}
  .nav{display:none}
  .menu{display:block}
  .menu summary{list-style:none;cursor:pointer;border:1px solid var(--pine);color:var(--pine);border-radius:3px;padding:6px 14px;font-weight:700;font-size:15px}
  .menu summary::-webkit-details-marker{display:none}
  .menu__p{position:absolute;left:0;right:0;top:100%;background:var(--white);border-bottom:2px solid var(--pine);padding:6px 20px 16px}
  .menu__p a{display:block;padding:13px 2px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);font-size:17px}
}

/* トップの大きな写真。縦書きの言葉 */
.hero{position:relative;min-height:min(84vh,720px);background:var(--pine2) center/cover no-repeat;display:flex;overflow:hidden}
.hero__veil{position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(13,30,21,.1) 35%,rgba(13,30,21,.68) 100%);pointer-events:none}
.hero__in{position:relative;z-index:3;width:100%;display:flex;justify-content:flex-end;padding-block:clamp(32px,6vw,64px)}
.hero__copy{writing-mode:vertical-rl;color:#fff;font-family:"Shippori Mincho","Yu Mincho",serif;text-shadow:0 1px 14px rgba(0,0,0,.65);display:flex;flex-direction:column;gap:18px;align-items:flex-start;max-height:100%}
.hero__copy h1{margin:0;font-size:clamp(30px,4.6vw,50px);letter-spacing:.18em;line-height:1.5;color:#fff}
.hero__copy p{margin:0;font-size:clamp(17px,1.9vw,22px);letter-spacing:.2em;line-height:1.7}
.hero__seal{position:absolute;z-index:3;left:max(20px,calc((100% - 1080px)/2));bottom:26px;color:#fff;font-size:14px;letter-spacing:.1em;text-shadow:0 1px 8px rgba(0,0,0,.8)}
@media (max-width:640px){.hero{min-height:74vh}.hero__veil{background:linear-gradient(90deg,rgba(13,30,21,.15) 10%,rgba(13,30,21,.7) 100%)}}

/* 三つの数字のかわりの札 */
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-block:1px solid var(--line);margin-top:40px}
.facts div{padding:22px 12px;text-align:center}
.facts div+div{border-left:1px solid var(--line)}
.facts b{display:block;font:600 clamp(22px,3vw,30px)/1.4 "Shippori Mincho","Yu Mincho",serif;color:var(--pine)}
.facts span{font-size:14px;color:var(--sub)}
@media (max-width:560px){.facts{grid-template-columns:1fr}.facts div+div{border-left:0;border-top:1px solid var(--line)}}

.lead p{margin:0 0 1.1em}
.lead p:last-child{margin-bottom:0}

/* カード */
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:clamp(22px,3vw,34px)}
.card{background:var(--white);border:1px solid var(--line);display:flex;flex-direction:column;min-width:0;text-decoration:none;color:inherit}
.card img{width:100%;aspect-ratio:3/2;object-fit:cover}
.card__b{padding:20px 22px 24px;flex:1;display:flex;flex-direction:column}
.card h3{margin:0 0 8px;font-size:22px;color:var(--pine)}
.card p{margin:0 0 14px;font-size:16px;line-height:1.85}
.card .go{margin-top:auto;color:var(--gold);font-weight:700;font-size:15px}
a.card:hover{border-color:var(--pine)}

/* 四季の帯 */
.seasons{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.seasons figure{margin:0;position:relative;min-width:0}
.seasons img{width:100%;aspect-ratio:4/5;object-fit:cover}
.seasons figcaption{position:absolute;left:10px;top:10px;writing-mode:vertical-rl;color:#fff;font:600 21px/1.3 "Shippori Mincho","Yu Mincho",serif;letter-spacing:.14em;text-shadow:0 1px 8px rgba(0,0,0,.85)}
@media (max-width:640px){.seasons{grid-template-columns:repeat(2,1fr)}}

/* 二段 */
.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(26px,5vw,60px);align-items:center}
.two>*{min-width:0}
.two--top{align-items:start}
@media (max-width:800px){.two{grid-template-columns:1fr}}
.two h3{margin:0 0 12px;font-size:25px;color:var(--pine)}
.sec--pine .two h3{color:#fff}
.btn{display:inline-block;padding:13px 30px;border:1px solid var(--pine);color:var(--pine);text-decoration:none;font-weight:700;font-size:16px;background:transparent;margin-top:8px}
.btn:hover{background:var(--pine);color:#fff}
.btn--w{border-color:#fff;color:#fff}.btn--w:hover{background:#fff;color:var(--pine)}

/* お知らせの一覧 */
.news{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.news li{border-bottom:1px solid var(--line)}
.news a{display:flex;gap:20px;padding:15px 4px;text-decoration:none;color:var(--ink)}
.news time{flex:none;width:9.5em;color:var(--sub);font-size:15px}
.news a:hover span{color:var(--pine);text-decoration:underline}
@media (max-width:560px){.news a{display:block}.news time{display:block;width:auto}}
.more{margin:24px 0 0;text-align:right}

/* 下のページの見出し */
.ph{background:var(--pine);color:#fff;padding-block:clamp(36px,6vw,64px);position:relative}
.ph small{display:block;color:var(--gold2);letter-spacing:.2em;font-size:13px;margin-bottom:4px}
.ph h1{margin:0;font-size:clamp(28px,4vw,40px);color:#fff}
.band{width:100%;aspect-ratio:21/8;object-fit:cover}
@media (max-width:640px){.band{aspect-ratio:3/2}}

/* 読みもの */
.prose h2{font-size:clamp(23px,3vw,28px);color:var(--pine);margin:2em 0 .7em;padding-bottom:10px;border-bottom:1px solid var(--line)}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:21px;color:var(--pine);margin:1.7em 0 .5em}
.prose p{margin:0 0 1.2em}
.prose img{margin:0 0 1.2em}
.prose table{border-collapse:collapse;width:100%;margin:0 0 1.2em;font-size:16px}
.prose td,.prose th{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
.prose .pics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:10px;margin:0 0 1.4em}
.prose .pics img{margin:0;width:100%;aspect-ratio:4/3;object-fit:cover}
.tbl-w{overflow-x:auto}

.dl{margin:0;border-top:1px solid var(--line)}
.dl>div{display:grid;grid-template-columns:9em 1fr;gap:14px;padding:14px 4px;border-bottom:1px solid var(--line)}
.dl dt{font-weight:700;color:var(--pine)}.dl dd{margin:0;min-width:0}
@media (max-width:560px){.dl>div{grid-template-columns:1fr;gap:2px}}

/* 年表 */
.tl{list-style:none;margin:0;padding:0 0 0 22px;border-left:2px solid var(--gold)}
.tl li{position:relative;padding:0 0 26px 8px}
.tl li::before{content:"";position:absolute;left:-29px;top:10px;width:12px;height:12px;border-radius:50%;background:var(--paper);border:2px solid var(--gold)}
.tl b{display:block;font:600 19px/1.6 "Shippori Mincho","Yu Mincho",serif;color:var(--pine)}

/* よくある質問 */
.faq details{background:var(--white);border:1px solid var(--line);margin-bottom:12px}
.faq summary{cursor:pointer;padding:16px 46px 16px 18px;font-weight:700;color:var(--pine);position:relative;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"＋";position:absolute;right:16px;top:15px;color:var(--gold)}
.faq details[open] summary::after{content:"－"}
.faq details>div{padding:0 18px 16px}
.faq p{margin:0 0 .7em}

/* 動画 */
.vid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:20px}
.vid a{display:block;text-decoration:none;color:var(--ink);min-width:0}
.vid .th{position:relative;display:block}
.vid img{width:100%;aspect-ratio:16/9;object-fit:cover}
.vid .th::after{content:"▶";position:absolute;inset:0;margin:auto;width:58px;height:58px;line-height:58px;text-align:center;border-radius:50%;background:rgba(20,53,38,.82);color:#fff;font-size:21px}
.vid b{display:block;margin-top:8px;font-weight:500}
audio{width:100%;margin-top:6px}

/* ご連絡の帯 */
.call{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:18px;margin-top:8px}
.call>div{border:1px solid rgba(255,255,255,.4);padding:20px 22px;min-width:0}
.call small{display:block;font-size:14px;opacity:.88}
.call .num{display:block;font:600 clamp(24px,3vw,30px)/1.5 "Shippori Mincho","Yu Mincho",serif;color:#fff;text-decoration:none}
.note{font-size:14px;color:var(--sub)}
.sec--pine .note{color:#dcd8c9}
.map{width:100%;height:380px;border:0;display:block}

/* フッター */
.ft{background:var(--pine2);color:#e6e2d4;padding-block:44px 90px;font-size:15px}
.ft a{color:#e6e2d4;text-decoration:none}.ft a:hover{text-decoration:underline}
.ft__g{display:grid;grid-template-columns:1.1fr 1fr;gap:30px}
.ft__g>*{min-width:0}
.ft__n{font:600 21px/1.5 "Shippori Mincho","Yu Mincho",serif;color:#fff;margin:0 0 8px}
.ft ul{list-style:none;margin:0;padding:0;columns:2;column-gap:20px}
.ft li{padding:3px 0}
.ft__c{margin:30px 0 0;font-size:13px;opacity:.8}
@media (max-width:700px){.ft__g{grid-template-columns:1fr}}
@media (min-width:1041px){.ft{padding-bottom:44px}}

/* スマホの下の電話ボタン */
.fix{display:none}
@media (max-width:1040px){
  .fix{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:25;padding-bottom:env(safe-area-inset-bottom,0px);background:var(--pine)}
  .fix a{display:block;text-align:center;padding:13px 4px;color:#fff;text-decoration:none;font-weight:700;font-size:16px}
  .fix a+a{border-left:1px solid rgba(255,255,255,.35)}
}
.chk{background:#fff7dc;border:1px dashed var(--gold);padding:12px 16px;font-size:15px;margin:0 0 24px}

/* ===== 2026-11-02 方向：格式と重みがあって、明るい。白い地に、金の二重線と明朝。濃い緑はフッターと文字だけ ===== */
:root{--paper:#fdfbf6;--paper2:#f6f1e5;--white:#ffffff;--line:#e3dac4;--gold:#a67c1e}
.hd{border-bottom:0;box-shadow:0 1px 0 var(--line);background:rgba(255,255,255,.98)}
.hd::before{content:"";display:block;height:5px;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);background:#fff}
.nav a.nav__tel{background:transparent;color:var(--pine);border:1px solid var(--pine)}
.ttl h2{font-size:clamp(28px,3.8vw,40px)}
.ttl.center h2::after{width:72px;height:5px;border-radius:0;background:none;border-top:1px solid var(--gold);border-bottom:1px solid var(--gold)}

/* 大きな写真：暗くしない。和紙の札に縦書き */
.hero__veil{display:none}
.hero__in{align-items:center}
.hero__copy{background:rgba(255,255,255,.95);color:var(--pine);text-shadow:none;padding:38px 26px;border:1px solid var(--gold);outline:1px solid var(--gold);outline-offset:-8px;gap:14px;align-items:center}
.hero__copy h1{color:var(--pine);font-size:clamp(25px,3.3vw,38px);letter-spacing:.14em}
.hero__copy p{font-size:clamp(15px,1.5vw,18px);letter-spacing:.16em;color:var(--ink)}
.hero__copy .tag{font-size:13px;color:var(--gold);letter-spacing:.14em}
@media (max-width:640px){.hero{min-height:560px}.hero__copy{padding:26px 16px;gap:10px}}

/* 下のページの見出し：白地に金の二重線 */
.ph{background:var(--white);color:var(--pine);text-align:center;border-bottom:5px double var(--gold)}
.ph small{color:var(--gold)}
.ph h1{color:var(--pine);font-size:clamp(30px,4.4vw,44px)}

/* 緑の面だった帯も明るく */
.sec--pine{background:var(--paper2);color:var(--ink);border-block:5px double var(--gold)}
.sec--pine a{color:var(--pine)}
.sec--pine .ttl h2,.sec--pine .two h3{color:var(--pine)}
.sec--pine .ttl small{color:var(--gold)}
.sec--pine .note{color:var(--sub)}
.btn--w{border-color:var(--pine);color:var(--pine)}
.btn--w:hover{background:var(--pine);color:#fff}
.call>div{border:1px solid var(--gold);background:var(--white)}
.call .num{color:var(--pine)}
.frame{border:1px solid var(--gold);padding:7px;background:var(--white)}

/* 四季：写真の上に字を重ねず、下に置く */
.seasons figcaption{position:static;writing-mode:horizontal-tb;color:var(--pine);text-shadow:none;text-align:center;font-size:18px;padding-top:8px}

/* ご本尊の区画 */
.honzon{background:var(--white);border-block:1px solid var(--line)}
.honzon h2{margin:0 0 14px;font-size:clamp(28px,3.8vw,40px);color:var(--pine)}
.honzon small{display:block;font-size:13px;letter-spacing:.2em;color:var(--gold);margin-bottom:6px}
.prose .pics{margin-bottom:1.6em}
.two .ttl h2{font-size:clamp(25px,3vw,33px)}

/* 動画・音声（前のサイトの左の列にあったもの） */
.media{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,30px);align-items:start}
.media__c{min-width:0;background:var(--white);border:1px solid var(--gold);padding:18px 18px 20px}
.media__c h3{margin:0 0 12px;font-size:18px;color:var(--pine)}
.media__v{position:relative;aspect-ratio:16/9;background:#111}
.media__v iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.media__t{display:block}
.media__t img{width:100%;aspect-ratio:16/9;object-fit:cover}
.media__b{display:flex;gap:12px;align-items:center;margin-top:16px;font-size:14px;text-decoration:none}
.media__b img{width:120px;height:auto;flex:none}
@media (max-width:860px){.media{grid-template-columns:1fr}}

/* ===== 季節感（2026-11-02）。線と帯の色を季節で変える。文字の濃い緑と金の札はそのまま ===== */
:root{--sea:var(--gold);--sea-soft:var(--paper2)}
html[data-shiki=spring]{--sea:#ad5570;--sea-soft:#fbf1f3}
html[data-shiki=summer]{--sea:#2f6f86;--sea-soft:#edf5f6}
html[data-shiki=autumn]{--sea:#b0521c;--sea-soft:#fbf2e5}
html[data-shiki=winter]{--sea:#46607a;--sea-soft:#f0f4f8}
.hd::before{border-color:var(--sea)}
.ttl small,.ph small,.honzon small,.sec--pine .ttl small,.hero__copy .tag{color:var(--sea)}
.ttl.center h2::after{border-color:var(--sea)}
.nav a:hover,.nav a[aria-current]{box-shadow:inset 0 -2px 0 var(--sea)}
.ph{border-bottom-color:var(--sea)}
.sec--alt{background:var(--sea-soft)}
.sec--pine{background:var(--sea-soft);border-color:var(--sea)}
.hero__copy{border-color:var(--sea);outline-color:var(--sea)}
.ft{border-top:4px solid var(--sea)}

/* 今月の帯 */
.shiki{background:var(--sea-soft);border-bottom:5px double var(--sea)}
.shiki__in{display:flex;align-items:center;justify-content:center;gap:clamp(16px,3vw,34px);padding-block:clamp(18px,2.6vw,26px)}
.shiki__mon{display:flex;align-items:center;gap:10px;flex:none;color:var(--sea);font-family:"Shippori Mincho","Yu Mincho",serif}
.shiki__mon b{font-size:clamp(24px,2.8vw,30px);font-weight:600;letter-spacing:.12em}
.shiki__mon small{font-size:14px;letter-spacing:.1em}
.shiki__crest{display:block;width:36px;height:36px}
.shiki__crest svg{display:block;width:100%;height:100%;fill:currentColor}
.shiki__t{min-width:0}
.shiki__t p{margin:0;font-family:"Shippori Mincho","Yu Mincho",serif;font-size:clamp(16px,1.7vw,19px);line-height:1.8;color:var(--ink)}
@media (max-width:760px){.shiki__in{flex-direction:column;gap:6px;text-align:center}}

/* 四季の境内：今の季節に印 */
html[data-shiki=spring] .seasons [data-s=spring],html[data-shiki=summer] .seasons [data-s=summer],html[data-shiki=autumn] .seasons [data-s=autumn],html[data-shiki=winter] .seasons [data-s=winter]{outline:3px solid var(--sea);outline-offset:3px}
html[data-shiki=spring] .seasons [data-s=spring] figcaption::after,html[data-shiki=summer] .seasons [data-s=summer] figcaption::after,html[data-shiki=autumn] .seasons [data-s=autumn] figcaption::after,html[data-shiki=winter] .seasons [data-s=winter] figcaption::after{content:"いまの季節";display:block;font:500 13px/1.5 "Zen Kaku Gothic New",sans-serif;letter-spacing:.14em;color:var(--sea)}
.seasons{gap:12px}

/* 舞うもの：写真の上、札の下。少しだけ */
.shiki-fx{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none}
.shiki-fx i{position:absolute;top:-40px;display:block;animation:shiki-fall linear infinite;will-change:transform}
.shiki-fx svg{display:block;width:100%;height:100%;fill:currentColor}
.shiki-fx--spring i{color:#f8cfd9;opacity:.92}
.shiki-fx--autumn i{color:#e8b92f;opacity:.92}
.shiki-fx--winter i{background:#fff;border-radius:50%;opacity:.85;animation-name:shiki-snow}
.shiki-fx--summer i{background:#eef78a;border-radius:50%;box-shadow:0 0 12px 4px rgba(226,240,110,.75);animation:shiki-glow ease-in-out infinite}
@keyframes shiki-fall{0%{transform:translate(0,0) rotate(0)}50%{transform:translate(var(--sway),55vh) rotate(calc(var(--spin)/2))}100%{transform:translate(0,110vh) rotate(var(--spin))}}
@keyframes shiki-snow{0%{transform:translate(0,0)}100%{transform:translate(var(--sway),110vh)}}
@keyframes shiki-glow{0%,100%{opacity:0;transform:translate(0,0)}30%{opacity:.95}50%{opacity:.25;transform:translate(var(--sway),-40px)}70%{opacity:.95}}
@media (prefers-reduced-motion:reduce){.shiki-fx{display:none}}

/* 季節の写真といつもの写真を、重ねて切りかえる（季節7秒・いつも10秒・2.2秒かけて） */
.hero>div[aria-hidden]:not(.shiki-fx){transition:opacity 2.2s ease-in-out!important}
