/* 初めての御朱印・参拝ガイド：ページ専用スタイル */
.bg-page{overflow-x:clip}
.bg-page p{margin-top:0}
.bg-breadcrumb{display:flex;align-items:center;gap:9px;padding-block:11px;font-size:12px;color:#6b6256}
.bg-breadcrumb a:hover{color:var(--red)}
.bg-breadcrumb span[aria-hidden]{color:var(--gold)}
.bg-hero{position:relative;background:linear-gradient(105deg,#fcf7eb 0%,#fffdfa 58%,#f1e6d5 100%);border-block:1px solid #eaddca;overflow:hidden}
.bg-hero::before{content:"";position:absolute;left:-95px;bottom:-85px;width:300px;height:240px;background:url('../images/decor/seigaiha.svg') repeat;background-size:125px auto;opacity:.29;pointer-events:none}
.bg-hero::after{content:"";position:absolute;right:-40px;top:-95px;width:260px;height:260px;background:url('../images/decor/gold-cloud.svg') center/contain no-repeat;opacity:.22;pointer-events:none}
.bg-hero-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:25px;min-height:490px;align-items:center;padding-block:30px}
.bg-hero-copy{position:relative;z-index:2;padding:4px 0}
.bg-eyebrow{font:700 11px/1.6 Georgia,var(--serif);letter-spacing:.19em;color:#a37d46;margin-bottom:12px}
.bg-eyebrow span{font-family:var(--serif)}
.bg-hero h1{margin:0 0 5px;font:800 clamp(39px,4.6vw,68px)/1.32 var(--serif);letter-spacing:.025em}
.bg-hero h1 em,.bg-heading em,.bg-ending em{font-style:normal;color:#a41614}
.bg-hero-subtitle{font-size:clamp(19px,2vw,27px);font-weight:700;line-height:1.6;margin:8px 0 13px;letter-spacing:.06em}
.bg-hero-description{max-width:520px;font-size:14px;line-height:1.9;color:#55463a;margin-bottom:17px}
.bg-hero-actions{display:flex;flex-wrap:wrap;gap:9px}
.bg-hero-actions .button{font-size:12px;padding:12px 14px;white-space:normal}
.bg-hero-visual{position:relative;min-height:420px;padding:10px 30px 10px 0;display:flex;align-items:center}
.bg-hero-main{display:block;width:100%;height:400px;border:6px solid #fffdf6;border-radius:4px;box-shadow:0 12px 34px rgba(58,34,15,.2);object-fit:cover;object-position:center}
.bg-hero-stamp{position:absolute;right:4px;bottom:1px;width:138px;padding:7px;background:#fff;transform:rotate(5deg);box-shadow:0 6px 18px rgba(44,25,15,.21);border:1px solid #d2b99a}
.bg-hero-stamp img{display:block;width:100%;aspect-ratio:320/427;object-fit:contain}
.bg-hero-vertical{position:absolute;top:28px;right:0;writing-mode:vertical-rl;color:white;font-size:17px;font-weight:700;letter-spacing:.21em;text-shadow:0 1px 7px #14110e}
.bg-index{position:relative;margin-block:23px;display:flex;align-items:center;gap:22px;padding:15px 19px;background:#fff;border:1px solid #e0cfb7;box-shadow:0 5px 19px rgba(81,57,29,.07);border-radius:6px}
.bg-index-label{display:flex;flex-direction:column;min-width:175px;font:700 10px/1.35 Georgia,serif;letter-spacing:.16em;color:var(--gold)}
.bg-index-label strong{font:700 14px/1.6 var(--serif);letter-spacing:0;color:#2e271e}
.bg-index-links{display:flex;gap:7px 12px;align-items:center;flex-wrap:wrap}
.bg-index-links a{font-size:12px;font-weight:700;border-bottom:1px solid #cdb68e;padding:5px 3px}
.bg-index-links a:hover{border-color:#a41614;color:#a41614}
.bg-section{padding-top:24px;padding-bottom:26px}
.bg-section-tinted{background:#f2ebdd;border-block:1px solid #e7d9c5;padding-block:29px}
.bg-heading{margin-bottom:21px;padding-left:15px;border-left:3px solid #bca06b}
.bg-heading>span{display:block;color:#ae864f;font:700 10px/1.5 Georgia,serif;letter-spacing:.18em;margin-bottom:4px}
.bg-heading h2{font:800 clamp(25px,2.5vw,36px)/1.38 var(--serif);margin:0 0 6px}
.bg-heading>p{color:#66574a;font-size:13px;line-height:1.7;margin:0}
.bg-about-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,.65fr);gap:24px;align-items:center}
.bg-about-copy>p{font-size:15px;line-height:2;max-width:780px;margin-bottom:14px}
.bg-soft-note{display:flex;gap:11px;align-items:flex-start;border:1px solid #ddc89c;background:#fff8e8;padding:16px;border-radius:4px}
.bg-soft-note p{margin:0;font-size:13px;line-height:1.8}
.bg-note-mark{color:#ae231d;font-size:23px;flex-shrink:0}
.bg-about-photo{margin:0;position:relative;display:flex;align-items:center;flex-direction:column;gap:8px}
.bg-about-photo::before{content:"";position:absolute;z-index:0;top:13px;left:10%;right:10%;bottom:31px;border:1px solid #d9bb88;background:radial-gradient(ellipse,#f5e9d4,#f1e4cc)}
.bg-about-photo img{position:relative;max-height:350px;object-fit:contain;width:auto;max-width:80%;box-shadow:0 5px 20px rgba(71,44,25,.11)}
.bg-about-photo figcaption{color:#78634c;font-size:11px;position:relative}
.bg-prepare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.bg-prepare-card{border:1px solid #e1d2bb;border-radius:5px;background:#fffefa;padding:20px 20px 18px;position:relative;min-height:225px}
.bg-prep-no{font:700 16px/1 Georgia,serif;color:#bb9260}
.bg-prep-icon{font-size:40px;color:#ae8f5c;position:absolute;right:17px;top:14px;line-height:1}
.bg-prepare-card h3{font-size:19px;margin:16px 0 9px;line-height:1.3}
.bg-prepare-card p{font-size:13px;line-height:1.8;color:#554a3e;margin-bottom:9px}
.bg-prepare-card a{display:inline-flex;font-size:12px;font-weight:700;color:#a41614;border-bottom:1px solid #ceafa7;margin-top:4px}
.bg-worship-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.bg-worship-card{background:#fffdfa;border:1px solid #e4d4bc;border-radius:5px;overflow:hidden;box-shadow:0 7px 18px rgba(77,52,26,.05)}
.bg-worship-image{height:210px;overflow:hidden}
.bg-worship-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.bg-worship-content{padding:17px 20px 20px}
.bg-worship-content>span{font:700 11px/1.5 Georgia,var(--serif);letter-spacing:.12em;color:#a27c44}
.bg-worship-content h3{font-size:21px;margin:4px 0 8px;line-height:1.4}
.bg-worship-content p{font-size:13px;line-height:1.9;margin:0}
.bg-section-caption{text-align:center;font-size:12px;color:#75685b;margin:13px 0 0}
.bg-temizu-layout{display:grid;grid-template-columns:minmax(260px,.95fr) minmax(0,1fr);gap:26px;align-items:center}
.bg-temizu-figure{margin:0;text-align:center}
.bg-temizu-figure img{display:block;max-height:690px;width:auto;max-width:100%;height:auto;margin:auto;border:1px solid #e1d0b2;box-shadow:0 8px 23px rgba(54,31,17,.11)}
.bg-temizu-figure figcaption{font-size:11px;color:#726150;margin-top:8px}
.bg-temizu-copy{background:#fffefa;border:1px solid #e4d5be;border-radius:5px;padding:24px}
.bg-temizu-copy h3{margin:0 0 17px;font-size:23px}
.bg-temizu-steps{list-style:none;counter-reset:none;margin:0;padding:0}
.bg-temizu-steps li{display:flex;align-items:center;gap:13px;padding:10px 0;border-bottom:1px solid #ece4d7;font-size:13px;font-weight:600;line-height:1.7}
.bg-temizu-steps li:first-child{padding-top:0}
.bg-temizu-steps li span{font:700 14px/1 Georgia,serif;color:#a77a3d;min-width:29px}
.bg-temizu-caution{font-size:12px;line-height:1.9;color:#695847;margin:17px 0 0}
.bg-flow-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.bg-flow-grid li{padding:19px 19px 20px;border:1px solid #ded1bf;background:#fffefa;position:relative;min-height:174px;border-radius:5px}
.bg-flow-grid li::before{content:"";position:absolute;top:0;left:0;width:45px;height:3px;background:#ad241b}
.bg-flow-number{font:700 25px/1 Georgia,serif;color:#b18c51}
.bg-flow-grid h3{font-size:18px;line-height:1.4;margin:11px 0 8px}
.bg-flow-grid p{font-size:13px;line-height:1.8;color:#554b40;margin:0}
.bg-flow-foot{margin-top:15px;padding:14px 18px;background:#f3e9d6;border-radius:5px;color:#655140;font-size:13px;line-height:1.8}
.bg-flow-foot>span{color:#a41614;margin-right:6px}
.bg-manner-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.bg-manner-grid article{border:1px solid #e1ceb5;background:#fffdfa;border-radius:5px;padding:17px}
.bg-manner-grid article span{font-size:28px;line-height:1;color:#aa8550}
.bg-manner-grid h3{font-size:17px;line-height:1.5;margin:10px 0 9px}
.bg-manner-grid p{font-size:12px;line-height:1.8;color:#5d4e41;margin:0}
.bg-faq{margin-top:23px}
.bg-faq>h3{font-size:21px;margin:0 0 11px}
.bg-faq details{background:#fffdfa;border:1px solid #e4d4be;border-radius:4px;margin-bottom:8px}
.bg-faq summary{list-style:none;position:relative;padding:15px 40px 15px 18px;font-size:14px;font-weight:700;cursor:pointer}
.bg-faq summary::-webkit-details-marker{display:none}
.bg-faq summary::after{content:"+";position:absolute;right:18px;top:14px;color:#a41614;font-family:Arial,sans-serif;font-size:20px;line-height:1}
.bg-faq details[open] summary::after{content:"−"}
.bg-faq details p{margin:0;padding:0 18px 17px;font-size:13px;color:#635347;line-height:1.85}
.bg-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.bg-related-card{display:grid;grid-template-columns:108px minmax(0,1fr);align-items:stretch;overflow:hidden;background:#fffdfa;border:1px solid #e2d1b8;min-height:130px;border-radius:5px;transition:border-color .2s,transform .2s}
.bg-related-card:hover{border-color:#ab8852;transform:translateY(-2px)}
.bg-related-card img{width:100%;height:100%;min-height:130px;object-fit:cover}
.bg-related-card>span{display:flex;flex-direction:column;justify-content:center;padding:14px;gap:5px}
.bg-related-card small{color:#a78150;font:700 9px/1.5 Georgia,serif;letter-spacing:.09em}
.bg-related-card strong{font-size:17px;line-height:1.4}
.bg-related-card b{color:#a41614;font-size:11px}
.bg-ending{background:linear-gradient(100deg,rgba(16,41,31,.96),rgba(24,60,44,.9)),url('../images/shrines/topmitsaumn.jpg.webp') center/cover;color:#fff9ed;border-top:3px solid #c9a76d}
.bg-ending-inner{min-height:215px;display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:28px}
.bg-ending-inner>div>span{color:#d8b477;font:700 11px/1 Georgia,serif;letter-spacing:.2em}
.bg-ending h2{font-size:clamp(23px,3vw,35px);line-height:1.5;margin:9px 0}
.bg-ending em{color:#e0b77c}
.bg-ending p{font-size:13px;margin:0}
.bg-ending .button{white-space:normal;flex-shrink:0}
@media(max-width:1050px){.bg-hero-inner{min-height:440px}.bg-hero h1{font-size:47px}.bg-hero-main{height:360px}.bg-hero-visual{min-height:370px}.bg-hero-stamp{width:110px}.bg-manner-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bg-related-card{grid-template-columns:90px minmax(0,1fr)}}
@media(max-width:760px){.bg-hero-inner{grid-template-columns:minmax(0,1fr);gap:15px;padding-block:25px}.bg-hero-copy{max-width:none}.bg-hero-visual{min-height:270px;padding-right:17px}.bg-hero-main{height:280px}.bg-hero-stamp{width:95px;right:2px;bottom:-2px}.bg-hero-vertical{font-size:13px;right:12px}.bg-index{flex-direction:column;align-items:stretch;gap:8px}.bg-index-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.bg-index-links a{text-align:center;background:#fbf5ea;border:1px solid #e4d1b6;border-radius:3px;padding:9px 5px;font-size:11px}.bg-about-grid{grid-template-columns:1fr}.bg-about-photo img{max-height:290px}.bg-prepare-grid{grid-template-columns:1fr;gap:10px}.bg-prepare-card{min-height:0}.bg-prep-no{font-size:14px}.bg-prepare-card h3{margin-top:10px}.bg-worship-grid{grid-template-columns:1fr;gap:13px}.bg-worship-image{height:220px}.bg-temizu-layout{grid-template-columns:1fr}.bg-temizu-figure img{max-height:none;width:min(100%,530px)}.bg-temizu-copy{padding:18px}.bg-flow-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bg-related-grid{grid-template-columns:1fr}.bg-ending-inner{flex-direction:column;align-items:flex-start}.bg-ending .button{align-self:flex-start}}
@media(max-width:560px){.bg-breadcrumb{padding-block:9px;font-size:11px}.bg-hero h1{font-size:clamp(33px,10vw,48px)}.bg-hero-subtitle{font-size:18px}.bg-hero-description{font-size:12px}.bg-hero-actions .button{font-size:11px;min-height:44px;flex:1 1 160px}.bg-hero-main{height:220px}.bg-hero-visual{min-height:220px}.bg-hero-stamp{width:81px;padding:4px}.bg-index{margin-block:15px}.bg-index-links{grid-template-columns:repeat(2,minmax(0,1fr))}.bg-section,.bg-section-tinted{padding-block:20px}.bg-heading{margin-bottom:16px}.bg-heading h2{font-size:clamp(23px,7vw,29px)}.bg-heading>p{font-size:12px}.bg-about-copy>p{font-size:13px;line-height:1.9}.bg-worship-content{padding:15px}.bg-worship-image{height:170px}.bg-flow-grid{grid-template-columns:1fr;gap:10px}.bg-flow-grid li{min-height:0;padding:16px}.bg-flow-grid h3{margin:7px 0}.bg-manner-grid{grid-template-columns:1fr}.bg-manner-grid article{padding:14px}.bg-manner-grid article h3{margin:3px 0 6px}.bg-temizu-steps li{font-size:12px}.bg-faq summary{font-size:12px;line-height:1.6}.bg-ending-inner{padding-block:21px;min-height:0}.bg-ending p{font-size:12px}}
