@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Noto+Serif+JP:wght@400;500;600&display=swap";:root{--ink:#1e211d;--forest:#2d352c;--moss:#6f7967;--ivory:#f7f5ef;--paper:#fffefa;--line:rgba(30,33,29,.15);--gold:#a38a62}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Serif JP",serif;font-size:15px;line-height:2;letter-spacing:.035em}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font:inherit}.site-header{position:fixed;inset:0 0 auto;z-index:50;height:82px;padding:0 clamp(28px,6vw,100px);display:flex;align-items:center;background:#fffefadb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid rgba(30,33,29,.08)}.brand{display:flex;align-items:center;height:100%}.brand img{width:150px;height:58px;object-fit:contain}.site-header nav{display:flex;gap:30px;margin-left:auto}.site-header nav a{position:relative;font:500 17px Cormorant Garamond,serif;letter-spacing:.08em}.site-header nav a:after{content:"";position:absolute;left:0;bottom:-7px;width:100%;height:1px;background:var(--ink);transform:scaleX(0);transform-origin:right;transition:transform .35s}.site-header nav a:hover:after{transform:scaleX(1);transform-origin:left}.menu-button{display:none}.hero{--hero-brightness:.58;--hero-overlay:1;--hero-copy-opacity:1;--hero-copy-shift:0px;position:relative;height:170svh;margin-top:82px;background:#151813}.hero-stage{position:sticky;top:0;height:100svh;min-height:720px;overflow:hidden}.hero-stage>img{width:100%;height:100%;object-fit:cover;object-position:center 67%;filter:brightness(var(--hero-brightness));transform:scale(1.025);transition:filter .08s linear;animation:heroScale 14s ease-out both}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#080c0894,#080c0833 45%,#080c0805 76%),linear-gradient(0deg,rgba(8,12,8,.25),transparent 38%);opacity:var(--hero-overlay);transition:opacity .08s linear}.hero-title{position:absolute;top:16%;left:clamp(30px,11vw,180px);color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.4);opacity:var(--hero-copy-opacity);transform:translateY(var(--hero-copy-shift));transition:opacity .08s linear,transform .08s linear}.hero-title>p{font:500 12px Cormorant Garamond,serif;letter-spacing:.42em;margin:0 0 22px}.hero-title h1{display:flex;align-items:flex-start;gap:28px;margin:0;font-weight:400}.hero-title h1 span{font-size:clamp(42px,5vw,74px);letter-spacing:.18em;writing-mode:vertical-rl}.hero-title h1 small{font-size:clamp(14px,1.3vw,18px);font-weight:400;letter-spacing:.3em;writing-mode:vertical-rl}.hero-scroll{position:absolute;right:clamp(22px,4vw,64px);bottom:34px;display:flex;align-items:center;gap:12px;color:#fff;font:italic 14px Cormorant Garamond,serif;letter-spacing:.15em;writing-mode:vertical-rl;opacity:var(--hero-overlay)}.hero-scroll span{display:block;width:1px;height:58px;background:#fff;animation:scrollLine 2s ease-in-out infinite}.section{padding:clamp(90px,10vw,150px) clamp(24px,7vw,110px)}.section-title{max-width:1040px;margin:0 auto clamp(54px,7vw,90px)}.section-title span{display:block;color:var(--gold);font:italic clamp(38px,5vw,64px)/1 "Cormorant Garamond",serif;letter-spacing:.02em}.section-title h2{font-size:clamp(18px,2vw,25px);font-weight:500;letter-spacing:.14em;line-height:1.75;margin:14px 0 0}.prose p{margin:0 0 1.8em}.concept{background:var(--paper)}.concept .section-title,.concept-copy{max-width:760px}.concept-copy{margin:auto;font-size:16px;line-height:2.25}.concept-copy .prose{border-left:1px solid var(--gold);padding-left:clamp(24px,5vw,70px)}.photo-break{height:min(66vw,760px);min-height:420px;background-size:cover;background-position:center;clip-path:inset(0 3vw);transition:clip-path 1.2s cubic-bezier(.2,.7,.2,1)}.photo-break.is-visible{clip-path:inset(0)}.photo-break--bridge{background-image:linear-gradient(#1418130d,#14181338),url(/images/hero-temple.jpg);background-position:center 48%}.service{background:var(--ivory)}.service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:1040px;margin:auto;border-top:1px solid var(--line)}.service-item{display:grid;grid-template-columns:64px 1fr;gap:22px;padding:44px 28px;border-bottom:1px solid var(--line)}.service-item:nth-child(odd){border-right:1px solid var(--line)}.service-item>b{font:italic 30px Cormorant Garamond,serif;color:var(--gold)}.service-item small{color:var(--moss);font-size:12px;letter-spacing:.18em}.service-item h3{font-size:19px;font-weight:500;letter-spacing:.1em;margin:2px 0 10px}.service-item p{margin:0;font-size:13px;line-height:1.9}.credits{display:flex;flex-wrap:wrap;justify-content:center;gap:15px 36px;max-width:1040px;margin:42px auto 0;font-size:12px}.credits a{border-bottom:1px solid var(--ink)}.price{position:relative;background:linear-gradient(#232b22b8,#232b22b8),url(/images/concept-bridge.jpg) center/cover fixed}.price>.section-title{color:#fff}.price>.section-title span{color:#d5c09d}.price-hero{display:grid;align-content:center;max-width:1040px;min-height:500px;margin:auto;padding:70px 70px 70px 58%;position:relative;background:var(--paper);box-shadow:0 24px 80px #0c110b38}.price-hero:before{content:"";position:absolute;inset:0 50% 0 0;background:url(/images/48d43acf1684701a.JPG) center 45%/cover}.price-hero>p:first-child{margin:0;font-size:13px;letter-spacing:.24em}.price-hero strong{display:block;color:#983b31;font:500 clamp(40px,5vw,64px)/1.2 "Cormorant Garamond",serif}.price-hero strong small{display:block;color:var(--ink);font:12px "Noto Serif JP",serif;margin-top:10px}.price-hero>p:last-child{font-size:13px}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:1040px;margin:24px auto 0;background:var(--paper);box-shadow:0 24px 80px #0c110b2e}.plan-grid>div{padding:42px;border-right:1px solid var(--line)}.plan-grid>div:last-child{border:0}.plan-grid h3{margin:0 0 20px;padding-bottom:14px;border-bottom:1px solid var(--gold);font-size:17px;font-weight:500;letter-spacing:.15em}.plan-grid ul{list-style:none;margin:0;padding:0;font-size:13px}.plan-grid li{margin:7px 0}.plan-grid li:before{content:"—";margin-right:10px;color:var(--gold)}.options{max-width:1040px;margin:24px auto 0;padding:46px 52px;background:#fffefaf5}.options h3{font:italic 42px Cormorant Garamond,serif;color:var(--gold);margin:0 0 20px}.options>div{display:grid;grid-template-columns:1fr 1fr;gap:0 50px}.options p{display:flex;justify-content:space-between;margin:0;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.options small{display:block;margin-top:24px;font-size:11px}.cta,.contact>a{display:flex;justify-content:space-between;align-items:center;max-width:430px;margin:46px auto 0;padding:20px 30px;background:var(--ink);color:#fff;letter-spacing:.16em;transition:background .3s,transform .3s}.cta:hover,.contact>a:hover{background:var(--gold);transform:translateY(-3px)}.cta span,.contact a span{font-size:22px}.gallery{background:var(--paper);overflow:hidden}.gallery-slider{position:relative;max-width:1280px;margin:auto;overflow:hidden;background:#1f241e}.gallery-slider img{width:100%;aspect-ratio:16/8.3;object-fit:cover;animation:imageIn .7s ease}.gallery-slider>button{position:absolute;top:50%;z-index:2;width:54px;height:70px;border:1px solid rgba(255,255,255,.55);background:#14191347;color:#fff;font-size:38px;transform:translateY(-50%);cursor:pointer;transition:background .3s}.gallery-slider>button:hover{background:#141913b8}.gallery-slider>button:first-child{left:22px}.gallery-slider>button:nth-of-type(2){right:22px}.gallery-slider>span{position:absolute;right:26px;bottom:20px;color:#fff;font:16px Cormorant Garamond,serif;letter-spacing:.14em}.gallery-dots{display:flex;justify-content:center;gap:8px;margin-top:25px}.gallery-dots button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#c8c7c1;cursor:pointer;transition:width .3s,border-radius .3s,background .3s}.gallery-dots button.active{width:28px;border-radius:4px;background:var(--gold)}.temple{background:var(--forest);color:#f7f5ef}.temple .section-title span{color:#d5c09d}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(38px,7vw,100px);align-items:center;max-width:1040px;margin:auto}.split>img{width:100%;height:560px;object-fit:cover}.temple .prose{font-size:13px;color:#fffc}.movie{max-width:1040px;aspect-ratio:16/9;margin:100px auto 0}.movie iframe{width:100%;height:100%;border:0}.sand{background:var(--ivory)}.reverse>img{order:2}.about .prose{font-size:14px}.faq{background:var(--paper)}.faq-list{max-width:920px;margin:auto;border-top:1px solid var(--line)}.faq-list article{border-bottom:1px solid var(--line)}.faq-list button{display:flex;align-items:center;gap:22px;width:100%;padding:25px 8px;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.faq-list button span,.faq-list p span{color:var(--gold);font:30px Cormorant Garamond,serif}.faq-list button b{margin-left:auto;font-size:23px;font-weight:400;transition:transform .35s}.faq-list article.active button b{transform:rotate(45deg)}.faq-list article>div{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s}.faq-list article>div p{display:flex;gap:22px;overflow:hidden;margin:0}.faq-list article.active>div{grid-template-rows:1fr}.faq-list article.active>div p{padding:4px 8px 28px}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:1040px;margin:auto}.access-grid article{padding:48px;background:var(--paper);border:1px solid var(--line);transition:transform .35s,box-shadow .35s}.access-grid article:hover{transform:translateY(-5px);box-shadow:0 18px 50px #1a1f1917}.access-grid small{color:var(--gold);letter-spacing:.18em}.access-grid h3{font-size:19px;font-weight:500}.access-grid p{font-size:13px}.access-grid a{display:inline-block;margin-top:15px;border-bottom:1px solid}.contact{text-align:center;padding:120px 24px;background:linear-gradient(#191f18ad,#191f18ad),url(/images/796f2ef6fb883805.jpg) center/cover;color:#fff}.contact p{letter-spacing:.2em}.contact h2{font:italic 64px Cormorant Garamond,serif;margin:0}.contact>a{background:#fff;color:var(--ink)}.contact>small{display:block;margin-top:18px}footer{padding:62px 20px 32px;background:#20261f;color:#c9cdc7;text-align:center}footer img{width:160px;height:74px;object-fit:contain;margin:0 auto 25px;filter:brightness(0) invert(1)}footer a{border-bottom:1px solid}footer p{margin-top:32px;font-size:10px}[data-reveal]{opacity:0;transform:translateY(36px);transition:opacity .9s ease,transform .9s ease}[data-reveal].is-visible{opacity:1;transform:none}.photo-break[data-reveal]{transform:none}@keyframes heroScale{0%{transform:scale(1.035)}to{transform:scale(1)}}@keyframes scrollLine{0%,to{transform:scaleY(.25);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}}@keyframes imageIn{0%{opacity:.35;transform:scale(1.018)}to{opacity:1;transform:scale(1)}}@media(max-width:800px){html{scroll-padding-top:64px}body{font-size:14px}.site-header{height:64px;padding:0 18px}.brand img{width:118px;height:52px}.menu-button{display:flex;flex-direction:column;gap:6px;margin-left:auto;padding:10px;border:0;background:transparent;z-index:2}.menu-button span{width:27px;height:1px;background:var(--ink)}.site-header nav{position:fixed;inset:0;flex-direction:column;justify-content:center;align-items:center;gap:25px;margin:0;background:#f7f5effa;transform:translate(100%);transition:transform .4s}.site-header nav.open{transform:none}.site-header nav a{font-size:28px}.hero{height:165svh;margin-top:64px}.hero-stage{height:calc(100svh - 64px);min-height:620px;top:64px}.hero-stage>img{object-position:60% center}.hero-shade{background:linear-gradient(0deg,rgba(8,12,8,.35),transparent 60%),linear-gradient(90deg,rgba(8,12,8,.4),transparent)}.hero-title{top:9%;left:25px;bottom:auto}.hero-title>p{font-size:10px;margin-bottom:14px}.hero-title h1{gap:13px}.hero-title h1 span,.hero-title h1 small{writing-mode:horizontal-tb}.hero-title h1{display:block}.hero-title h1 span{display:block;font-size:34px;letter-spacing:.14em}.hero-title h1 small{display:block;margin:8px 0;font-size:12px;letter-spacing:.18em}.hero-scroll{display:none}.section{padding:78px 22px}.section-title{margin-bottom:45px}.section-title span{font-size:42px}.section-title h2{font-size:18px}.concept-copy{font-size:14px}.concept-copy .prose{padding-left:20px}.photo-break{height:360px;min-height:0;clip-path:inset(0 12px)}.service-list{grid-template-columns:1fr}.service-item,.service-item:nth-child(odd){grid-template-columns:48px 1fr;padding:30px 5px;border-right:0}.price{padding-left:14px;padding-right:14px;background-attachment:scroll}.price-hero{display:block;padding:330px 25px 32px;min-height:0}.price-hero:before{inset:0 0 auto;height:300px}.plan-grid{grid-template-columns:1fr}.plan-grid>div{padding:30px;border-right:0;border-bottom:1px solid var(--line)}.options{padding:32px 24px}.options>div{grid-template-columns:1fr}.options p{font-size:12px}.gallery-slider{margin:0 -22px;width:calc(100% + 44px)}.gallery-slider img{aspect-ratio:4/3}.gallery-slider>button{width:38px;height:54px;font-size:30px}.gallery-slider>button:first-child{left:7px}.gallery-slider>button:nth-of-type(2){right:7px}.split{grid-template-columns:1fr;gap:35px}.split>img{height:430px}.reverse>img{order:0}.movie{margin-top:55px}.access-grid{grid-template-columns:1fr}.access-grid article{padding:32px}.contact{padding:90px 22px}.contact h2{font-size:52px}}.hero-title h1 .hero-primary{display:flex;flex-direction:column;align-items:center;gap:18px;font-size:inherit;letter-spacing:normal;writing-mode:horizontal-tb}.hero-title h1 .hero-primary>span{font-size:clamp(42px,5vw,74px);letter-spacing:.18em;writing-mode:vertical-rl}.hero-primary>b{padding:5px 13px;border:1px solid rgba(255,255,255,.88);font-size:12px;font-weight:500;line-height:1.6;letter-spacing:.2em;white-space:nowrap;writing-mode:horizontal-tb}.hero-title .plan-title>span{display:inline!important;font-size:inherit!important;letter-spacing:inherit!important;writing-mode:inherit!important}.hero{--hero-y:18%;height:185svh}.hero-stage>img{object-position:center var(--hero-y);transition:filter .08s linear,object-position .08s linear}.photo-break--bridge{height:clamp(360px,33vw,620px);min-height:0;background-position:center 56%}.hero-title .plan-title{font-size:clamp(16px,1.45vw,20px)}.hero-title .plan-title>span{display:inline}.hero-title .plan-title b{display:inline-block;margin:.55em 0 0;padding:.38em .18em;border:1px solid rgba(255,255,255,.88);background:#ffffff0a;color:#fff;font-weight:500;letter-spacing:.2em;box-shadow:none}.hero-title h1 .heritage-label{position:relative;margin:3px -18px 0 -3px;padding:3px 0!important;border:0!important;color:#ffffffe0;font-size:clamp(14px,1.3vw,18px)!important;letter-spacing:.12em}.hero-title h1 .heritage-label:after{display:none}.instagram-highlight{display:flex;align-items:center;gap:24px;max-width:650px;margin:46px auto 0;padding:22px 28px;border:1px solid var(--line);background:#ffffff8f;transition:transform .35s,box-shadow .35s,border-color .35s}.instagram-highlight:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 18px 46px #272b241a}.instagram-highlight img{width:82px;height:82px;border-radius:50%;object-fit:cover}.instagram-highlight span{display:flex;flex-direction:column;align-items:flex-start}.instagram-highlight small{color:var(--gold);font:11px Cormorant Garamond,serif;letter-spacing:.2em}.instagram-highlight strong{margin-top:4px;font-size:17px;font-weight:500;letter-spacing:.08em}.instagram-highlight em{margin-top:7px;color:#6f746b;font-size:11px;font-style:normal}.hero-title h1 .heritage-label{align-self:flex-start;margin-top:3px;padding:8px 5px;border:1px solid rgba(255,255,255,.72);font-size:10px;line-height:1.35;letter-spacing:.16em;writing-mode:vertical-rl}.plan-grid .plan-bonus{margin-top:18px;padding-top:12px;border-top:1px solid var(--line);color:#6f746b;font-size:12px}.plan-grid .plan-bonus:before{content:"＋";color:var(--gold)}.plan-bonus small{display:block;margin:0 0 4px 22px;color:var(--gold);font-size:9px;letter-spacing:.16em}@media(max-width:800px){.hero{height:175svh}.hero-title{top:7%;left:18px}.hero-title h1{display:flex;gap:10px}.hero-title h1 span,.hero-title h1 small{writing-mode:vertical-rl}.hero-title h1 span{display:block;font-size:clamp(31px,9vw,40px)}.hero-title h1 .hero-primary{display:flex;gap:12px;writing-mode:horizontal-tb}.hero-title h1 .hero-primary>span{font-size:clamp(31px,9vw,40px);writing-mode:vertical-rl}.hero-primary>b{padding:4px 8px;font-size:9px;letter-spacing:.12em}.hero-title h1 small{display:block;margin:0}.hero-title .plan-title{font-size:12.5px}.hero-title .plan-title b{margin-top:.55em;padding:.34em .16em;letter-spacing:.14em}.hero-title h1 .heritage-label{display:block;margin:2px -7px 0 -3px;padding:2px 0!important;border:0!important;font-size:11px;letter-spacing:.08em;writing-mode:vertical-rl}.photo-break--bridge{height:230px;background-position:center 56%}.instagram-highlight{gap:16px;margin-top:34px;padding:18px}.instagram-highlight img{width:68px;height:68px}.instagram-highlight small{font-size:9px}.instagram-highlight strong{font-size:14px}}.hero-primary>b{position:relative;overflow:hidden;padding:9px 22px;border:1px solid rgba(255,255,255,.56);border-radius:999px;background:linear-gradient(135deg,#ffffff57,#ffffff1f);box-shadow:inset 0 1px #ffffffb8,inset 0 -1px #ffffff14,0 8px 24px #00000038;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:14px;line-height:1.6;letter-spacing:.2em}.hero-primary>b:after{content:"";position:absolute;inset:1px 45% 45% 1px;border-radius:999px;background:linear-gradient(135deg,rgba(255,255,255,.32),transparent);pointer-events:none}@media(max-width:800px){.hero-primary>b{padding:7px 13px;font-size:10px;letter-spacing:.12em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}}.hero-primary>b{border-color:#ffffff75;border-radius:5px;background:linear-gradient(135deg,#fff3,#ffffff0e);box-shadow:inset 0 1px #ffffff7a,inset 0 -1px #ffffff0a,0 7px 22px #00000029;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero-primary>b:after{border-radius:4px;background:linear-gradient(135deg,rgba(255,255,255,.18),transparent)}.photo-break--bridge{background-position:center 63%}@media(max-width:800px){.hero-primary>b{border-radius:4px;background:linear-gradient(135deg,#ffffff2e,#ffffff0d)}.photo-break--bridge{background-position:center 62%}}.photo-break--bridge{height:auto;min-height:0;aspect-ratio:1899/617;background-image:url(/images/temple-couple-panorama.png);background-position:center;background-size:cover}@media(max-width:800px){.photo-break--bridge{height:auto;aspect-ratio:1899/617;background-position:center}}.hero-primary>b{transform:translate(34px);border-color:#ffffff61;border-radius:0;background:linear-gradient(135deg,#ffffff1b,#ffffff05);box-shadow:inset 0 1px #ffffff4d,0 6px 18px #0000001a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.hero-primary>b:after{border-radius:0;background:linear-gradient(135deg,rgba(255,255,255,.09),transparent)}@media(max-width:800px){.hero-primary>b{transform:translate(30px);border-radius:0;background:linear-gradient(135deg,#ffffff17,#ffffff04);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}}.movie{aspect-ratio:auto}.movie iframe{display:block;aspect-ratio:16/9}.movie>a{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:14px;color:#ffffffc2;font-size:12px;letter-spacing:.12em}.movie>a:hover{color:#fff}.movie>a span{font-size:16px}.movie .youtube-card{position:relative;display:block;overflow:hidden;aspect-ratio:16/8.2;margin:0;color:#fff}.youtube-card>img{width:100%;height:100%;object-fit:cover;object-position:center 63%;transition:transform .8s ease}.youtube-card-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0c100cb8,#0c100c29 64%,#0c100c57)}.youtube-play{position:absolute;top:50%;right:12%;display:grid;place-items:center;width:76px;height:54px;border-radius:14px;background:#f03;color:#fff;font-size:22px;line-height:1;transform:translateY(-50%);box-shadow:0 12px 34px #0000004d}.youtube-copy{position:absolute;left:clamp(28px,6vw,76px);top:50%;display:flex;flex-direction:column;align-items:flex-start;font-size:inherit;transform:translateY(-50%)}.youtube-copy small{font:12px Cormorant Garamond,serif;letter-spacing:.28em;color:#d5c09d}.youtube-copy strong{margin-top:7px;font-size:clamp(18px,2vw,27px);font-weight:500;letter-spacing:.1em}.youtube-copy em{margin-top:18px;padding:8px 13px;border:1px solid rgba(255,255,255,.45);font-size:11px;font-style:normal;letter-spacing:.12em}.youtube-copy em b{font-weight:600}.youtube-card:hover>img{transform:scale(1.035)}@media(max-width:800px){.movie .youtube-card{aspect-ratio:4/3}.youtube-card>img{object-position:center 70%}.youtube-card-shade{background:linear-gradient(0deg,#0c100cc7,#0c100c1a 76%)}.youtube-play{top:38%;right:50%;width:62px;height:44px;border-radius:11px;transform:translate(50%,-50%);font-size:18px}.youtube-copy{inset:auto 20px 20px;transform:none}.youtube-copy small{font-size:9px}.youtube-copy strong{font-size:15px}.youtube-copy em{margin-top:10px;padding:6px 9px;font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}[data-reveal]{opacity:1;transform:none}}
