@import "https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap";@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&display=swap";@import "https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;600&display=swap";:root{--clr-bg:#fff;--clr-fg:#222;--clr-sand:#e8dfc9;--clr-sand-soft:#f4efe4;--clr-navy:#1d3448;--clr-forest:#586a57;--clr-gold:#c6a15b;--clr-muted:#6f6a5f;--clr-border:#1d344824;--ff-display:"Playfair Display", "Noto Serif JP", serif;--ff-serif:"Cormorant Garamond", "Noto Serif JP", serif;--ff-jp:"Noto Serif JP", serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--ff-serif);background:var(--clr-bg);color:var(--clr-fg);-webkit-font-smoothing:antialiased;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}figure{margin:0}.reveal{opacity:0;will-change:opacity, transform;transition:opacity 1.1s cubic-bezier(.16,1,.3,1),transform 1.1s cubic-bezier(.16,1,.3,1);transform:translateY(38px)}.reveal.is-visible{opacity:1;transform:none}.eyebrow{font-family:var(--ff-serif);letter-spacing:4.62px;text-transform:uppercase;color:var(--clr-gold);font-size:11px}.eyebrow-display{font-family:var(--ff-display);font-weight:400}.italic{font-style:italic}#nav{inset-inline:0;z-index:50;padding-block:28px;transition:background .7s,padding .7s,box-shadow .7s;position:fixed;top:0}#nav.scrolled{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;padding-block:16px;box-shadow:0 1px #1d344814}.nav-inner{justify-content:space-between;align-items:center;max-width:1400px;margin-inline:auto;padding-inline:48px;display:flex}.nav-logo{font-family:var(--ff-display);letter-spacing:.32em;color:#fff;font-size:18px;transition:color .5s}#nav.scrolled .nav-logo{color:var(--clr-navy)}.nav-links{font-family:var(--ff-serif);letter-spacing:.21em;text-transform:uppercase;color:#fffc;gap:40px;font-size:16px;transition:color .5s;display:flex}#nav.scrolled .nav-links{color:#1d3448b3}.nav-links a{transition:color .3s}.nav-links a:hover{color:var(--clr-gold)}.nav-cta{font-family:var(--ff-serif);letter-spacing:.18em;text-transform:uppercase;color:#fff;border:1px solid #fff9;padding:10px 24px;font-size:16px;transition:border-color .5s,color .5s,background .5s}#nav.scrolled .nav-cta{color:var(--clr-navy);border-color:#1d34484d}.nav-cta:hover{border-color:var(--clr-gold);color:var(--clr-gold)}@media (width<=768px){.nav-inner{padding-inline:24px}.nav-links{display:none}}.hero{justify-content:center;align-items:center;height:100svh;display:flex;position:relative;overflow:hidden}.hero-bg{will-change:transform;position:absolute;inset:0}.hero-bg img{object-fit:cover;object-position:bottom;width:100%;height:100%}.hero-overlay-top{background:linear-gradient(#1d344840,#1d344800 50%,#1d344873);position:absolute;inset:0}.hero-overlay-bottom{background:linear-gradient(#0000,#586a574d);position:absolute;inset:0}.hero-content{width:100%;z-index:10;text-align:center;color:#fff;position:relative}.anniversary-lockup{flex-direction:column;align-items:center;margin-bottom:32px;display:flex}.lockup-eyebrow{font-family:var(--ff-serif);letter-spacing:4.62px;text-transform:uppercase;color:var(--clr-gold);font-size:11px}.lockup-row{justify-content:center;align-items:flex-end;gap:6px;margin-top:12px;display:flex}.lockup-rebrand{font-family:var(--ff-jp);letter-spacing:-2px;color:#fff;padding-bottom:12px;font-size:clamp(14px,2vw,24px);font-weight:500;line-height:54px}.lockup-five{font-family:var(--ff-display);color:var(--clr-sand);font-size:clamp(80px,12vw,160px);font-style:italic;line-height:1.05}.lockup-anniv{font-family:var(--ff-jp);letter-spacing:1.5px;color:#fff;padding-bottom:8px;font-size:clamp(22px,3vw,40px);font-weight:500;line-height:60px}.hero-title{background:rgba(0,0,0,0.3);font-family:var(--ff-display);letter-spacing:-.025em;color:#fff;font-size:clamp(2.8rem,8vw,7rem);font-weight:400;line-height:.98}.hero-title-italic{color:var(--clr-sand);font-style:italic}.hero-date{justify-content:center;align-items:center;gap:16px;margin-top:32px;display:flex}.hero-date-line{background:#fff9;width:32px;height:1px;display:block}.hero-date-text{font-family:var(--ff-jp);font-weight:bold;text-transform:uppercase;color:#fff;font-size:clamp(16px,2.5vw,32px)}.hero-copy{font-family:var(--ff-jp);color:#fff;margin-top:32px;max-width:576px;margin-inline:auto;font-size:16px;font-weight:300;line-height:32px}.btn-hero{font-family:var(--ff-serif);letter-spacing:3.9px;text-transform:uppercase;color:#ffde9e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid #ffde9e;margin-top:48px;padding:16px 48px;font-size:1em;font-weight:bold;border-color .5s,background .5s,color .5s;display:inline-block}.btn-hero:hover{background:#ffde9e;color:var(--clr-navy)}.scroll-indicator{position:absolute;bottom:32px;left:50%;transform:translate(-50%)}.scroll-indicator span{background:#ffffff80;width:1px;height:48px;animation:2s ease-in-out infinite pulse;display:block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.section-anniversary{background:var(--clr-sand-soft);padding-block:128px;position:relative;overflow:hidden}@media (width>=768px){.section-anniversary{padding-block:192px}}.anniversary-bg-five{pointer-events:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.anniversary-bg-five span{font-family:var(--ff-display);color:#f0e8d6;font-size:clamp(24rem,60vw,60rem);font-style:italic;line-height:.82;display:block;}.anniversary-inner{z-index:10;text-align:center;max-width:1000px;margin-inline:auto;padding-inline:24px;position:relative}.anniversary-heading{font-family:var(--ff-jp);color:var(--clr-navy);text-align:center;margin-top:32px;font-weight:bold;line-height:2}.h2-five{letter-spacing:7px;font-size:clamp(2.2rem,5vw,76px)}.h2-rest{font-size:clamp(1.5rem,4.5vw,30px)}.anniversary-body{font-family:var(--ff-jp);color:var(--clr-muted);margin-inline:auto;margin-top:40px;font-size:15px;font-weight:300;line-height:2}.stat-grid{border-top:1px solid var(--clr-border);border-bottom:1px solid var(--clr-border);grid-template-columns:repeat(3,1fr);max-width:512px;margin-top:56px;display:inline-grid}.stat-cell{border-right:1px solid var(--clr-border);padding:32px 16px}.stat-cell-last{border-right:none}.stat-num{font-family:var(--ff-display);color:var(--clr-gold);text-align:center;font-size:36px}.stat-label{font-family:var(--ff-serif);letter-spacing:2.64px;text-transform:uppercase;color:var(--clr-muted);text-align:center;margin-top:8px;font-size:11px}.section-story{max-width:1400px;margin-inline:auto;padding:128px 24px}@media (width>=768px){.section-story{padding:176px 48px}}.story-grid{align-items:center;gap:48px;display:grid}@media (width>=769px){.story-grid{grid-template-columns:7fr 5fr;gap:80px}}.story-main-img{aspect-ratio:4/5;object-fit:cover;background:var(--clr-sand);width:100%}.story-heading{font-family:var(--ff-jp);color:var(--clr-navy);margin-top:24px;font-size:clamp(24px,4vw,32px);font-weight:300;line-height:1.5}.story-body{font-family:var(--ff-jp);color:var(--clr-muted);margin-top:24px;font-size:15px;font-weight:300;line-height:2}.story-body+.story-body{margin-top:24px}.story-quote-row{align-items:center;gap:24px;margin-top:40px;display:flex}.story-detail-img{object-fit:cover;background:var(--clr-forest);flex-shrink:0;width:96px;height:112px}.story-quote{font-family:var(--ff-serif);color:var(--clr-forest);font-size:20px;font-style:italic;line-height:1.375}.section-plans{background:var(--clr-navy);padding-block:128px}@media (width>=768px){.section-plans{padding-block:176px}}.plans-inner{max-width:1400px;margin-inline:auto;padding-inline:24px}@media (width>=768px){.plans-inner{padding-inline:48px}}.plans-header{text-align:center}.plans-heading{font-family:var(--ff-jp);color:#fff;margin-top:24px;font-size:clamp(2.2rem,5vw,64px);font-weight:400;line-height:80px}.plans-subhead{font-family:var(--ff-jp);color:#fff9;margin-inline:auto;max-width:512px;margin-top:24px;font-size:14px;font-weight:300;line-height:2}.plans-group{margin-top:80px}.plans-group-dine{margin-top:96px}.plans-divider{align-items:center;gap:20px;margin-bottom:32px;display:flex}.plans-divider-label{font-family:var(--ff-jp);color:var(--clr-gold);white-space:nowrap;font-size:32px;font-weight:400;line-height:1}.plans-divider-line{background:#c6a15bb3;flex:1;height:1px}.plans-divider-num{font-family:var(--ff-serif);letter-spacing:.24em;color:#fff6;white-space:nowrap;font-size:12px}.plans-grid-3{gap:32px;display:grid}@media (width>=769px){.plans-grid-3{grid-template-columns:repeat(2,1fr)}}.plans-grid-2{gap:32px;display:grid}@media (width>=768px){.plans-grid-2{grid-template-columns:repeat(2,1fr)}}.plan-card{background:#ffffff0d;flex-direction:column;height:100%;display:flex;overflow:hidden}.plan-card-image{aspect-ratio:3/2;position:relative;overflow:hidden}.plan-card-image-wide{aspect-ratio:16/10}.plan-card-image img{object-fit:cover;background:var(--clr-forest);width:100%;height:100%;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}.plan-card:hover .plan-card-image img{transform:scale(1.05)}.plan-card-hover-overlay{opacity:0;background:linear-gradient(#0000,#1d344880);transition:opacity .7s;position:absolute;inset:0}.plan-card:hover .plan-card-hover-overlay{opacity:1}.plan-card-body{flex-direction:column;flex:1;padding:24px 18px 18px;display:flex}.plan-title{font-family:var(--ff-display);color:#fff;font-size:24px;font-weight:400;line-height:32px}.plan-jp{font-family:var(--ff-jp);color:var(--clr-gold);margin-top:8px;font-size:13px;font-weight:300;line-height:19.5px}.plan-desc{font-family:var(--ff-jp);color:#fff9;flex:1;margin-top:16px;font-size:13px;font-weight:300;line-height:2}
.plan-footer{border-top:1px solid #ffffff26;justify-content:space-between;align-items:center;margin-top:24px;padding-top:20px;display:flex;flex-wrap: wrap;}.plan-price{font-family:var(--ff-jp);color:#fff;font-size:24px;line-height:28px}.plan-reserve{font-family:var(--ff-serif);letter-spacing:2.64px;text-transform:uppercase;color:var(--clr-gold);font-size:16px;transition:letter-spacing .5s;border: 1px solid var(--clr-gold);padding: 0.2em 1em;border-radius: 3em;}.plan-card:hover .plan-reserve{letter-spacing:4.5px}.section-campaign{background:var(--clr-sand-soft);padding-block:112px}@media (width>=768px){.section-campaign{padding-block:144px}}.campaign-inner{max-width:896px;margin-inline:auto;padding-inline:24px}.campaign-header{text-align:center}.campaign-heading{font-family:var(--ff-display);color:var(--clr-navy);margin-top:24px;font-size:clamp(1.9rem,4vw,48px);font-weight:400;line-height:1.5}.campaign-dl{border-top:1px solid var(--clr-border);border-bottom:1px solid var(--clr-border);margin-top:56px}.campaign-row{border-bottom:1px solid var(--clr-border);grid-template-columns:1fr;gap:8px;padding-block:24px;display:grid}.campaign-row-last{border-bottom:none}@media (width>=769px){.campaign-row{grid-template-columns:1fr 3fr;gap:24px}}.campaign-dl dt{font-family:var(--ff-serif);letter-spacing:2.88px;text-transform:uppercase;color:var(--clr-gold);font-size:16px}.campaign-dl dd{font-family:var(--ff-jp);color:var(--clr-navy);font-size:15px;font-weight:300;line-height:1.625}.section-discover{padding-block:128px}@media (width>=768px){.section-discover{padding-block:176px}}.discover-inner{max-width:1400px;margin-inline:auto;padding-inline:24px}@media (width>=768px){.discover-inner{padding-inline:48px}}.discover-header{flex-direction:column;gap:24px;margin-bottom:64px;display:flex}@media (width>=768px){.discover-header{flex-direction:row;justify-content:space-between;align-items:flex-end}}.discover-heading{font-family:var(--ff-display);color:var(--clr-navy);margin-top:24px;font-weight:400;line-height:76px}.discover-heading span{font-size:clamp(2.4rem,6vw,80px);display:block}.discover-desc{font-family:var(--ff-jp);color:var(--clr-muted);max-width:320px;font-size:14px;font-weight:300;line-height:2}.viewmore{margin-top:1em;display:inline-block;border:1px solid var(--clr-muted);padding:0.2em 1em;border-radius:3em;}.viewmore:hover{opacity:.7;}.gallery-grid{gap:24px;display:grid}@media (width>=769px){.gallery-grid{grid-template-columns:5fr 7fr}}.gallery-col-left,.gallery-col-right{flex-direction:column;gap:24px;display:flex}.gallery-frame{background:var(--clr-sand);position:relative;overflow:hidden}.gallery-frame img{object-fit:cover;width:100%;height:100%;transition:transform 1.4s cubic-bezier(.16,1,.3,1)}.gallery-frame:hover img{transform:scale(1.05)}.gallery-overlay{opacity:0;background:linear-gradient(#0000,#1d344866);transition:opacity .7s;position:absolute;inset:0}.gallery-frame:hover .gallery-overlay{opacity:1}.gallery-frame figcaption{font-family:var(--ff-serif);color:#fff;opacity:0;font-size:18px;font-style:italic;transition:opacity .7s,transform .7s;position:absolute;bottom:20px;left:20px;transform:translateY(8px)}.gallery-frame:hover figcaption{opacity:1;transform:none}.gallery-tall{aspect-ratio:4/5}.gallery-short{height:292px}.gallery-wide{aspect-ratio:16/10}.gallery-bottom-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.gallery-sq{aspect-ratio:3/4}.section-closing{justify-content:center;align-items:center;height:860px;display:flex;position:relative;overflow:hidden}.closing-bg-wrap{pointer-events:none;position:absolute;inset:0;overflow:hidden}.closing-bg-container{width:110%;height:164%;position:absolute;top:-63.6%;left:-5%}.closing-bg-container img{object-fit:cover;object-position:center;width:100%;height:75%;position:absolute;top:28.56%;left:0}.closing-overlay{background:linear-gradient(#0000,#1d34481a 50%,#1d34488c);position:absolute;inset:0}.closing-content{z-index:10;text-align:center;color:#fff;padding-inline:24px;position:relative}.closing-heading{font-family:var(--ff-display);color:#fff;margin-top:32px;max-width:768px;margin-inline:auto;font-size:clamp(2.4rem,6vw,80px);font-style:italic;font-weight:400;line-height:84px}.closing-copy{font-family:var(--ff-jp);color:#ffffffd9;margin-top:32px;max-width:448px;margin-inline:auto;font-size:15px;font-weight:300;line-height:2}.btn-closing{font-family:var(--ff-serif);font-size:1em;font-weight:bold;letter-spacing:3.9px;text-transform:uppercase;color:#ffde9e;border:1px solid #ffde9e;margin-top:48px;padding:16px 56px;transition:background .5s,color .5s;display:inline-block}.btn-closing:hover{color:var(--clr-navy);background-color:#ffde9e;}.footer{background:var(--clr-navy);text-align:center;padding-block:64px}.footer-logo{font-family:var(--ff-display);letter-spacing:5.76px;color:#fff;font-size:18px}.footer-logo img{margin-inline:auto;}.footer-sub{font-family:var(--ff-jp);color:#fff9;margin-top:16px;font-size:13px;font-weight:300}.footer-copy{font-family:var(--ff-serif);letter-spacing:3.08px;text-transform:uppercase;color:#fff6;margin-top:24px;font-size:11px}::selection{background:var(--clr-gold);color:#fff}
.view_sp {
    display: none;
}
#nav img.scrolled {
    display:none;
    opacity:0;
    trannsition: opacity 0.5s ease-in-out
}
#nav.scrolled img {
    display:none;
}
#nav.scrolled img.scrolled {
    display:block;
    opacity:1;
}
.story-text-col.reveal.is-visible {
    background-image:url(../images/about_bg.png);
    background-position: right top;
    background-repeat: no-repeat;
    background-size: contain;
}
.plans-heading span {
    font-family: var(--ff-display);
    font-style: italic;
}
.plan-price span.small {
    font-size:70%;
}
@media screen and (min-width: 769px) {
    .anniversary-bg-five span {
        position:absolute;
        bottom:15rem;
    }
}
@media screen and (max-width: 768px) {
    .view_sp {
        display: block;
    }
    .nav-logo img {
        width: 90%;
    }
    .h2-rest {
        line-height: 1.5;
    }
    .plans-divider-label {
        font-size: 24px;
    }
    .plan-title,.plan-price {
        font-size:18px;
    }
    .plan-reserve {
        display: block;
        width: 100%;
        margin-top: 1em;
        padding: 0.5em;
        text-align: center;
    }
    .campaign-dl dt {
        font-size:12px;
    }
    .discover-heading {
        line-height: 1.5em;
    }
    .closing-heading {
        line-height: 1em;
    }
    .story-heading {
        line-height: 1.1em;
    }
    .story-text-col.reveal.is-visible {
        background-size: 50%;
        background-position: right bottom;
    }
}