.lightbox-overlay[data-v-d03a3391]{align-items:center;background:#000000d9;cursor:pointer;display:flex;inset:0;justify-content:center;padding:40px;position:fixed;z-index:9999}.lightbox-close[data-v-d03a3391]{background:none;border:none;color:#fff;cursor:pointer;font-size:2rem;line-height:1;opacity:.7;padding:8px;position:absolute;right:24px;top:20px;transition:opacity .2s ease}.lightbox-close[data-v-d03a3391]:hover{opacity:1}.lightbox-image[data-v-d03a3391]{border-radius:16px;box-shadow:0 24px 80px #0000004d;cursor:default;height:auto;max-height:85vh;max-width:90vw;width:auto}.lightbox-enter-active[data-v-d03a3391],.lightbox-leave-active[data-v-d03a3391]{transition:opacity .25s ease}.lightbox-enter-from[data-v-d03a3391],.lightbox-leave-to[data-v-d03a3391]{opacity:0}@media(max-width:768px){.lightbox-overlay[data-v-d03a3391]{padding:20px}.lightbox-image[data-v-d03a3391]{border-radius:12px}}@font-face{ascent-override:75.84%;descent-override:18.96%;font-family:Hidarikiki Kanojo fallback;line-gap-override:0%;size-adjust:105.4852%;src:local("Noto Sans")}@font-face{ascent-override:71.3281%;descent-override:17.832%;font-family:Hidarikiki Kanojo fallback;line-gap-override:0%;size-adjust:112.1577%;src:local("Arial")}@font-face{ascent-override:72%;descent-override:18%;font-family:Hidarikiki Kanojo fallback;line-gap-override:0%;size-adjust:111.1111%;src:local("Helvetica Neue")}@font-face{ascent-override:71.1719%;descent-override:17.793%;font-family:Hidarikiki Kanojo fallback;line-gap-override:0%;size-adjust:112.404%;src:local("Roboto")}@font-face{ascent-override:70.9375%;descent-override:17.7344%;font-family:Hidarikiki Kanojo fallback;line-gap-override:0%;size-adjust:112.7753%;src:local("Segoe UI")}@font-face{font-display:swap;font-family:Hidarikiki Kanojo;font-style:normal;font-weight:400;src:url(../fonts/lefthanded-girlfriend-subset.woff2) format("woff2")}@font-face{ascent-override:116%;descent-override:28.8%;font-family:Noto Sans JP fallback;line-gap-override:0%;src:local("Hiragino Sans")}@font-face{ascent-override:116%;descent-override:28.8%;font-family:Noto Sans JP fallback;line-gap-override:0%;src:local("Roboto")}@font-face{ascent-override:116%;descent-override:28.8%;font-family:Zen Kaku Gothic New fallback;line-gap-override:0%;src:local("Hiragino Sans")}@font-face{ascent-override:116%;descent-override:28.8%;font-family:Zen Kaku Gothic New fallback;line-gap-override:0%;src:local("Roboto")}@font-face{ascent-override:115.1%;descent-override:28.6%;font-family:"Noto Serif JP fallback";line-gap-override:0%;src:local("Hiragino Mincho ProN")}@font-face{ascent-override:115.1%;descent-override:28.6%;font-family:"Noto Serif JP fallback";line-gap-override:0%;src:local("Roboto")}@font-face{ascent-override:105%;descent-override:35%;font-family:Poppins fallback;line-gap-override:10%;size-adjust:112.1577%;src:local("Arial")}@font-face{ascent-override:105%;descent-override:35%;font-family:Poppins fallback;line-gap-override:10%;size-adjust:112.404%;src:local("Roboto")}@font-face{ascent-override:92.4%;descent-override:28.7%;font-family:Cormorant fallback;line-gap-override:0%;src:local("Georgia")}@font-face{ascent-override:92.4%;descent-override:28.7%;font-family:Cormorant fallback;line-gap-override:0%;src:local("Times New Roman")}@font-face{ascent-override:116%;descent-override:28.8%;font-family:Zen Maru Gothic fallback;line-gap-override:0%;src:local("Hiragino Sans")}@font-face{ascent-override:116%;descent-override:28.8%;font-family:Zen Maru Gothic fallback;line-gap-override:0%;src:local("Roboto")}@font-face{ascent-override:116%;descent-override:28.8%;font-family:Yomogi fallback;line-gap-override:0%;src:local("Hiragino Sans")}@font-face{ascent-override:116%;descent-override:28.8%;font-family:Yomogi fallback;line-gap-override:0%;src:local("Roboto")}@font-face{ascent-override:96%;descent-override:30%;font-family:Caveat fallback;line-gap-override:0%;src:local("Arial")}@font-face{ascent-override:96%;descent-override:30%;font-family:Caveat fallback;line-gap-override:0%;src:local("Roboto")}:root{--font-display:"Poppins","Poppins fallback","Zen Kaku Gothic New","Zen Kaku Gothic New fallback",sans-serif;--font-jp-gothic:"Zen Kaku Gothic New","Zen Kaku Gothic New fallback","Noto Sans JP","Noto Sans JP fallback",sans-serif;--font-sans:"Noto Sans JP","Noto Sans JP fallback",sans-serif;--font-elegant:"Cormorant","Cormorant fallback","Noto Serif JP","Noto Serif JP fallback",serif;--font-elegant-jp:"Noto Serif JP","Noto Serif JP fallback",serif;--color-primary:#3a3535;--color-secondary:#8a837d;--color-accent:#c8a96e;--color-accent-light:#f5efe4;--color-background:#fff;--color-surface:#faf9f7;--color-border:#e8e4de;--max-width:1200px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--color-background);color:var(--color-primary);font-family:var(--font-sans);line-height:1.8;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none;transition:opacity .2s ease}a:hover{opacity:1}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);font-weight:700;letter-spacing:0;line-height:1.4}img{height:auto;max-width:100%}.header[data-v-9ce81fd4]{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background-color:#ffffffd9;border-bottom:1px solid hsla(36,18%,89%,.6);position:sticky;top:0;z-index:100}.header-inner[data-v-9ce81fd4]{justify-content:space-between;margin:0 auto;max-width:var(--max-width);padding:6px 24px}.header-inner[data-v-9ce81fd4],.logo-link[data-v-9ce81fd4]{align-items:center;display:flex}.logo-link[data-v-9ce81fd4]{gap:8px}.logo-icon[data-v-9ce81fd4]{height:24px;-o-object-fit:contain;object-fit:contain;width:24px}.app-logo-icon[data-v-9ce81fd4]{border-radius:10px;height:40px;width:40px}.logo-text-wrap[data-v-9ce81fd4]{display:flex;flex-direction:column;line-height:1.25}.logo-tagline[data-v-9ce81fd4]{color:var(--color-secondary);font-size:.6875rem;font-weight:500;letter-spacing:.12em}.logo-tagline[data-v-9ce81fd4],.logo-text[data-v-9ce81fd4]{font-family:var(--font-jp-gothic)}.logo-text[data-v-9ce81fd4]{color:var(--color-primary);font-size:1rem;font-weight:700;letter-spacing:.08em}.nav-desktop[data-v-9ce81fd4]{align-items:center;display:flex;gap:40px}.nav-link[data-v-9ce81fd4]{color:var(--color-primary);font-family:var(--font-jp-gothic);font-size:.9375rem;font-weight:500;letter-spacing:.06em;position:relative;transition:color .2s ease}.nav-link[data-v-9ce81fd4]:hover{color:var(--color-accent)}.nav-link.router-link-active[data-v-9ce81fd4]:not(.nav-link--cta){font-weight:700}.nav-link.router-link-active[data-v-9ce81fd4]:not(.nav-link--cta):after{background-color:var(--color-accent);border-radius:2px;bottom:-8px;content:"";height:2px;left:0;position:absolute;right:0}.nav-link--cta[data-v-9ce81fd4]{background-color:var(--color-primary);border-radius:100px;color:#fff;font-weight:600;padding:6px 18px;transition:transform .25s ease,box-shadow .25s ease}.nav-link--cta[data-v-9ce81fd4]:hover{box-shadow:0 8px 20px #3a353540;color:#fff;transform:translateY(-2px)}.menu-button[data-v-9ce81fd4]{background:none;border:none;cursor:pointer;display:none;flex-direction:column;gap:5px;height:36px;justify-content:center;padding:8px 6px;width:36px}.menu-bar[data-v-9ce81fd4]{background-color:var(--color-primary);border-radius:1px;display:block;height:2px;transition:transform .3s ease,opacity .3s ease;width:100%}.menu-button--open .menu-bar[data-v-9ce81fd4]:first-child{transform:translateY(7px) rotate(45deg)}.menu-button--open .menu-bar[data-v-9ce81fd4]:nth-child(2){opacity:0}.menu-button--open .menu-bar[data-v-9ce81fd4]:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.mobile-overlay[data-v-9ce81fd4]{background-color:#0000004d;inset:0;position:fixed;z-index:98}.mobile-menu[data-v-9ce81fd4]{background-color:#fff;border-bottom:1px solid var(--color-border);box-shadow:0 8px 24px #00000014;display:none;left:0;padding:16px 0;position:absolute;right:0;top:100%;z-index:99}.mobile-nav-link[data-v-9ce81fd4]{color:var(--color-primary);display:block;font-family:var(--font-sans);font-size:.875rem;letter-spacing:.15em;padding:14px 24px;transition:background-color .2s ease}.mobile-nav-link[data-v-9ce81fd4]:hover{background-color:var(--color-surface)}.mobile-nav-link.router-link-active[data-v-9ce81fd4]{color:var(--color-accent);font-weight:600}.menu-fade-enter-active[data-v-9ce81fd4],.menu-fade-leave-active[data-v-9ce81fd4]{transition:opacity .25s ease}.menu-fade-enter-from[data-v-9ce81fd4],.menu-fade-leave-to[data-v-9ce81fd4]{opacity:0}.menu-slide-enter-active[data-v-9ce81fd4],.menu-slide-leave-active[data-v-9ce81fd4]{transition:transform .25s ease,opacity .25s ease}.menu-slide-enter-from[data-v-9ce81fd4],.menu-slide-leave-to[data-v-9ce81fd4]{opacity:0;transform:translateY(-8px)}@media(max-width:768px){.header-inner[data-v-9ce81fd4]{padding:5px 16px}.app-logo-icon[data-v-9ce81fd4]{border-radius:8px;height:36px;width:36px}.logo-text[data-v-9ce81fd4],.nav-desktop[data-v-9ce81fd4]{display:none}.menu-button[data-v-9ce81fd4]{display:flex}.mobile-menu[data-v-9ce81fd4]{display:flex;flex-direction:column}}.corp-footer[data-v-19333f93]{background-color:var(--color-surface);border-top:1px solid var(--color-border);color:var(--color-primary);padding:72px 24px 32px}.corp-footer-inner[data-v-19333f93]{margin:0 auto;max-width:var(--max-width)}.corp-footer-grid[data-v-19333f93]{display:flex;gap:48px;justify-content:space-between;padding-bottom:48px}.corp-footer-brand[data-v-19333f93]{max-width:340px}.corp-footer-logo-row[data-v-19333f93]{align-items:center;display:flex;gap:10px;margin-bottom:16px}.corp-footer-logo[data-v-19333f93]{height:32px;width:auto}.corp-footer-brand-name[data-v-19333f93]{font-family:var(--font-jp-gothic);font-size:1.25rem;font-weight:700;letter-spacing:.08em}.corp-footer-tagline[data-v-19333f93]{color:var(--color-secondary);font-size:.875rem;line-height:2;margin-bottom:20px}.corp-footer-sitemap[data-v-19333f93]{display:flex;gap:64px}.corp-footer-list[data-v-19333f93]{display:flex;flex-direction:column;gap:22px;list-style:none;margin:0;padding:0}.corp-footer-link[data-v-19333f93]{transition:color .2s ease}.corp-footer-link--main[data-v-19333f93]{color:var(--color-primary);font-family:var(--font-jp-gothic);font-size:1rem;font-weight:700;letter-spacing:.08em}.corp-footer-sublist[data-v-19333f93]{display:flex;flex-direction:column;gap:10px;list-style:none;margin:10px 0 0;padding:0}.corp-footer-link--sub[data-v-19333f93]{color:var(--color-secondary);font-family:var(--font-jp-gothic);font-size:.875rem;letter-spacing:.05em;text-decoration:underline;text-decoration-color:var(--color-border);text-underline-offset:4px}.corp-footer-link[data-v-19333f93]:hover{color:var(--color-accent)}.corp-footer-contact-btn[data-v-19333f93]{align-items:center;background-color:#fff;border:1px solid var(--color-primary);color:var(--color-primary);display:flex;flex-direction:column;gap:6px;padding:28px 48px;transition:background-color .3s ease,color .3s ease}.corp-footer-contact-btn[data-v-19333f93]:hover{background-color:var(--color-primary);color:#fff}.corp-footer-contact-en[data-v-19333f93]{font-family:var(--font-display);font-size:1.25rem;font-weight:600;letter-spacing:.2em}.corp-footer-contact-jp[data-v-19333f93]{font-size:.875rem;opacity:.8}.corp-footer-bottom[data-v-19333f93]{border-top:1px solid var(--color-border);padding-top:24px;text-align:center}.corp-footer-legal[data-v-19333f93]{display:flex;gap:28px;justify-content:center;margin-bottom:12px}.corp-footer-legal-link[data-v-19333f93]{color:var(--color-secondary);font-size:.875rem;text-decoration:underline;text-decoration-color:var(--color-border);text-underline-offset:4px;transition:color .2s ease}.corp-footer-legal-link[data-v-19333f93]:hover{color:var(--color-primary)}.corp-footer-copyright[data-v-19333f93]{color:var(--color-secondary);font-size:.875rem}@media(max-width:768px){.corp-footer[data-v-19333f93]{padding:48px 16px 24px}.corp-footer-grid[data-v-19333f93]{flex-direction:column;gap:40px;padding-bottom:40px}.corp-footer-sitemap[data-v-19333f93]{gap:40px}.corp-footer-contact-btn[data-v-19333f93]{padding:20px 0;width:100%}}.footer[data-v-19333f93]{background-color:var(--color-surface);border-top:1px solid var(--color-border);color:var(--color-primary);margin-top:0;padding:48px 24px 32px}.footer-inner[data-v-19333f93]{margin:0 auto;max-width:var(--max-width);text-align:center}.footer-legal[data-v-19333f93]{display:flex;gap:24px;justify-content:center;margin-bottom:24px}.legal-link[data-v-19333f93]{color:var(--color-secondary);font-size:.8125rem;transition:color .2s ease}.legal-link[data-v-19333f93]:hover{color:var(--color-primary)}.copyright[data-v-19333f93]{align-items:center;display:flex;flex-direction:column;gap:12px}.footer-logo[data-v-19333f93]{height:32px;opacity:.6;transition:opacity .2s ease;width:auto}.copyright-link:hover .footer-logo[data-v-19333f93]{opacity:1}.copyright-text[data-v-19333f93]{color:var(--color-secondary);font-size:.8125rem}@media(max-width:768px){.footer[data-v-19333f93]{padding:32px 16px 24px}.footer-legal[data-v-19333f93]{flex-wrap:wrap;gap:12px 16px}}.floating-contact[data-v-19333f93]{display:none}@media(max-width:768px){.floating-contact[data-v-19333f93]{align-items:center;background-color:var(--color-primary);border-radius:100px;bottom:calc(16px + env(safe-area-inset-bottom));box-shadow:0 8px 24px #3a353547;color:#fff;display:flex;font-size:.9375rem;font-weight:600;gap:8px;justify-content:center;left:16px;letter-spacing:.04em;padding:15px 24px;position:fixed;right:16px;z-index:90}.corp-footer[data-v-19333f93]{padding-bottom:calc(88px + env(safe-area-inset-bottom))}}.error-page[data-v-9d6c8677]{display:flex;flex-direction:column;min-height:100vh}.error-main[data-v-9d6c8677]{align-items:center;display:flex;flex:1;flex-direction:column;justify-content:center;padding:120px 24px;text-align:center}.error-code[data-v-9d6c8677]{color:var(--color-accent);font-family:var(--font-display);font-size:5rem;font-weight:700;line-height:1;margin-bottom:16px}.error-title[data-v-9d6c8677]{color:var(--color-primary);font-size:1.5rem;font-weight:700;margin-bottom:12px}.error-description[data-v-9d6c8677]{color:var(--color-secondary);font-size:.9375rem;margin-bottom:40px}.error-actions[data-v-9d6c8677]{align-items:center;display:flex;flex-wrap:wrap;gap:24px;justify-content:center}.error-button[data-v-9d6c8677]{background-color:var(--color-primary);border:none;border-radius:999px;color:#fff;cursor:pointer;font-family:var(--font-sans);font-size:.9375rem;font-weight:700;padding:14px 40px;transition:opacity .2s ease}.error-button[data-v-9d6c8677]:hover{opacity:.85}.error-link[data-v-9d6c8677]{color:var(--color-primary);font-size:.9375rem;font-weight:500;text-decoration:underline;text-underline-offset:4px}
