:root{--paper:#f9f8f4;--cream:#f0eee6;--ink:#42463e;--muted:#747669;--gold:#a18b55;--line:#dcdacf;--serif:"Noto Serif JP", serif;--roman:"Cormorant Garamond", Georgia, serif;--sans:"Noto Sans JP", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);letter-spacing:.045em;-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:2}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}img{object-fit:cover;width:100%;height:100%;display:block}button{background:0 0;border:0}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h2{font-family:var(--serif);letter-spacing:.09em;font-size:clamp(28px,3vw,43px);line-height:1.85}.gold{color:var(--gold)}.small-en{font-family:var(--sans);letter-spacing:.19em;color:var(--gold);font-size:10px}.skip-link{z-index:999;background:#fff;padding:10px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:10px}.header{backdrop-filter:blur(12px);z-index:50;background:#f9f8f4f0;justify-content:space-between;align-items:center;gap:28px;height:100px;padding:0 4.4%;transition:height .35s,box-shadow .35s;display:flex;position:sticky;top:0}.brand{color:var(--gold);align-items:center;gap:12px;display:flex}.brand-flower{width:45px;height:45px}.wordmark{font-family:var(--roman);letter-spacing:.13em;font-size:38px;line-height:1}.brand-sub{font-family:var(--sans);letter-spacing:.15em;margin-top:8px;font-size:5.8px;display:block}.desktop-nav{letter-spacing:.07em;gap:32px;margin-left:auto;font-size:11px;display:flex}.desktop-nav a{padding:12px 0;position:relative}.desktop-nav a:after{content:"";background:var(--gold);width:0;height:1px;transition:width .3s;position:absolute;bottom:5px;left:0}.desktop-nav a:hover:after{width:100%}.header-contact{border:1px solid #aaa78f;gap:36px;padding:12px 22px;font-size:11px;transition:background .3s,color .3s;display:flex}.header-contact:hover{background:var(--ink);color:var(--paper)}.menu-toggle,.mobile-menu[hidden]{display:none}.mobile-menu{background:var(--paper);z-index:49;padding:30px 7%;position:fixed;inset:80px 0 0;overflow:auto}.mobile-menu a{font:36px/1.8 var(--roman);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:9px 0;display:flex}.mobile-menu small{font:12px var(--sans)}.text-link{letter-spacing:.08em;align-items:center;gap:35px;padding:10px 0;font-size:11px;display:inline-flex}.circle-arrow{width:40px;height:40px;font-family:var(--sans);border:1px solid #afac99;border-radius:50%;justify-content:center;align-items:center;font-size:16px;font-weight:400;transition:background .35s,color .35s,transform .35s;display:inline-flex}.text-link:hover .circle-arrow{color:#fff;background:var(--gold);border-color:var(--gold);transform:rotate(10deg)}.footer{padding:45px 5% 25px}.footer-top{align-items:center;gap:55px;padding-bottom:40px;display:flex}.footer-top p{font-family:var(--serif);font-size:13px}.back-top{border:1px solid var(--line);border-radius:50%;place-items:center;width:42px;height:42px;margin-left:auto;display:grid}.footer-bottom{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:20px;padding-top:22px;font-size:9px;display:flex}.footer-bottom>div{gap:30px;display:flex}.footer-bottom>span:last-child{letter-spacing:.1em;font-size:8px}.will-reveal{opacity:0;transition:opacity 1s,transform 1s cubic-bezier(.2,.6,.3,1);transform:translateY(22px)}.will-reveal.revealed{opacity:1;transform:translateY(0)}.motion-paused *{animation-play-state:paused!important}.motion-paused .will-reveal{opacity:1;transform:none}.page-intro{background:var(--cream);padding:85px 8% 55px}.breadcrumb{color:var(--muted);margin-bottom:50px;font-size:10px}.breadcrumb span{padding:0 14px}.page-intro h1{font:70px var(--roman);letter-spacing:.02em;line-height:1.1}.page-intro h1 small{font:17px var(--serif);letter-spacing:.15em;margin-top:20px;display:block}.page-intro>p{margin-top:25px;font-size:13px}.form-wrap{max-width:880px;margin:auto;padding:60px 40px 100px}.form-steps{color:#99998b;justify-content:center;gap:50px;margin-bottom:45px;font-size:11px;display:flex}.form-steps .active{color:var(--gold)}.form-steps b{font-family:var(--roman);margin-right:10px;font-size:23px}.form-note{border-bottom:1px solid var(--line);padding-bottom:30px;font-size:12px}.required{color:#856a31;margin-left:10px;font-size:9px}.form-field{border-bottom:1px solid var(--line);grid-template-columns:185px 1fr;align-items:start;gap:25px;padding:25px 0;display:grid}.form-field>label{padding-top:10px;font-size:13px}.form-field input,.form-field select,.form-field textarea{outline-offset:3px;background:#fffefa;border:1px solid #d5d4c9;border-radius:0;width:100%;padding:13px 15px;font-size:14px}.form-field textarea{resize:vertical;min-height:180px}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:1px solid var(--gold);border-color:var(--gold)}.form-field input::placeholder,.form-field textarea::placeholder{color:#929285;font-size:12px}.field-hint{color:var(--muted);margin-top:7px;font-size:10px;display:block}.consent{justify-content:center;align-items:flex-start;gap:12px;margin:35px 0;font-size:12px;display:flex}.consent input{accent-color:var(--gold);width:17px;height:17px;margin-top:8px}.consent a{text-underline-offset:4px;text-decoration:underline}.form-button{background:var(--ink);color:#fff;border:1px solid var(--ink);min-width:270px;margin:25px auto 0;padding:18px 30px;font-size:13px;transition:background .3s;display:block}.form-button:hover{background:#626851}.form-button:disabled{cursor:wait;opacity:.65}.form-button.secondary{color:var(--ink);background:0 0;min-width:160px}.form-buttons{justify-content:center;gap:20px;display:flex}.form-buttons .form-button{margin:25px 0 0}.form-error{color:#973f2f;background:#f6ece6;margin-top:20px;padding:16px;font-size:13px}.form-error:empty{display:none}.contact-success{text-align:center;padding:50px 0}.contact-success>svg{width:90px;height:90px;color:var(--gold);margin-bottom:20px}.contact-success h2{margin-bottom:20px;font-size:29px}.contact-success p{margin:15px 0;font-size:13px}.receipt{background:var(--cream);padding:20px;font-family:monospace;font-size:14px!important}.confirm-list{margin:0}.confirm-list>div{border-bottom:1px solid var(--line);grid-template-columns:160px 1fr;gap:30px;padding:20px 0;font-size:13px;display:grid}.confirm-list dt{color:var(--muted)}.confirm-list dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.legal-content{max-width:880px;margin:auto;padding:60px 35px 100px}.legal-content h2{font-family:var(--sans);margin:35px 0 12px;font-size:19px}.legal-content p,.legal-content li{font-size:13px;line-height:2.3}.legal-content a{text-decoration:underline}.legal-notice{background:var(--cream);padding:18px 24px}.not-found{text-align:center;min-height:60vh;padding:100px 20px}.not-found h1{font:100px var(--roman)}@media (width<=1150px){.desktop-nav{gap:18px;font-size:10px}.header{gap:20px;padding:0 3%}.header-contact{gap:18px;padding:10px 14px}}@media (width<=900px){.header{height:80px;padding:0 5%}.header.scrolled{height:72px}.brand-flower{width:35px;height:35px}.wordmark{font-size:31px}.brand-sub{font-size:5px}.desktop-nav{display:none}.header-contact{margin-left:auto;font-size:10px}.menu-toggle{flex-direction:column;justify-content:center;gap:7px;width:36px;min-height:44px;padding:6px;display:flex}.menu-toggle span{background:var(--ink);width:24px;height:1px;transition:transform .3s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px)rotate(-45deg)}.footer-top{gap:30px}.footer-top p{font-size:11px}.footer-bottom>span:last-child{display:none}}@media (width<=600px){body{font-size:14px}.header{gap:16px;height:76px}.header-contact{gap:12px;padding:8px 11px;font-size:9px}.brand{gap:8px}.brand-flower{width:30px;height:30px}.wordmark{font-size:27px}.brand-sub{letter-spacing:.1em;font-size:4.4px}.menu-toggle{width:26px;padding:0}.circle-arrow{width:35px;height:35px}.footer{padding:38px 7% 24px}.footer-top{flex-wrap:wrap;gap:25px;padding-bottom:25px;position:relative}.footer-top p{width:100%;font-size:11px}.back-top{position:absolute;top:0;right:0}.footer-bottom{flex-direction:column-reverse;align-items:flex-start;gap:20px;font-size:9px}.footer-bottom>div{gap:22px}.page-intro{padding:40px 7%}.breadcrumb{margin-bottom:30px;font-size:9px}.page-intro h1{font-size:55px}.page-intro h1 small{font-size:16px}.page-intro>p{font-size:12px}.form-wrap{padding:35px 7% 70px}.form-steps{gap:22px;font-size:10px}.form-steps b{margin-right:5px;font-size:20px}.form-note{font-size:11px}.form-field{grid-template-columns:1fr;gap:12px;padding:20px 0}.form-field>label{padding:0}.form-field input,.form-field select,.form-field textarea{padding:12px;font-size:16px}.consent{justify-content:flex-start;font-size:11px}.form-buttons{flex-direction:column;gap:0}.form-buttons .form-button{width:100%;margin-top:15px}.confirm-list>div{grid-template-columns:1fr;gap:8px}.contact-success h2{font-size:25px}.receipt{overflow-wrap:anywhere;font-size:11px!important}.legal-content{padding:35px 7% 70px}.legal-content h2{font-size:17px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.will-reveal{opacity:1;transform:none}}.official-logo{object-fit:contain;width:210px;height:60px}#confirmation-heading,#success-heading{scroll-margin-top:115px}.form-field{min-width:0}@media (width<=600px){.menu-toggle{min-width:36px;min-height:44px}.header-contact{align-items:center;min-height:44px}.official-logo{width:140px;height:45px}.contact-success .receipt{font-size:12px!important}}.header-contact{white-space:nowrap}@media (width<=360px){.header{gap:10px}.header .brand{gap:6px}.header .brand-flower{width:24px;height:24px}.header .wordmark{font-size:23px}.header .brand-sub{font-size:4px}.header-contact{gap:8px;padding:8px}}:root{--paper:#f4f1e8;--ink:#38392d;--gold:#978350;--line:#cecabd}.header{border-bottom:1px solid var(--line);height:76px;box-shadow:none;background:#f4f1e8ed;padding:0 4%}.header.scrolled{height:76px;box-shadow:none}.header .brand-flower,.header .brand-sub{display:none}.header .wordmark{letter-spacing:.04em;color:var(--ink);font-size:29px}.header-contact{border:0;border-left:1px solid var(--line);padding-left:25px;padding-right:0}.header-contact:hover{color:var(--gold);background:0 0}@media (width<=760px){.header,.header.scrolled{gap:20px;height:68px;padding:0 5%}.header .wordmark{font-size:26px}.header-contact{padding-left:16px;font-size:10px}.mobile-menu{top:68px}}@media (width<=360px){.header{gap:10px}.header .wordmark{font-size:24px}.header-contact{gap:10px;padding-left:12px;font-size:9px}}
