.mini-site-root{font-family:var(--font-mini-sans), "Hiragino Sans", "Yu Gothic", sans-serif}.mini-site{--accent:#b45309;--accent-deep:#7c2d12;--accent-soft:#fff7ed;--ink:#1c1917;--muted:#78716c;--line:#1c191714;--surface:#fffcf8;--surface-elevated:#fff;--hero-overlay:linear-gradient(165deg, #1c1108b8 0%, #1c11086b 42%, #7c2d128c 100%);color:var(--ink);background:radial-gradient(circle at 0 0,#fbbf2414,#0000 32%),radial-gradient(circle at 100% 12%,#b453090f,#0000 28%),#faf6f0;min-height:100vh}.mini-site[data-tone=beauty]{--accent:#be185d;--accent-deep:#831843;--accent-soft:#fdf2f8;--hero-overlay:linear-gradient(165deg, #240818c7, #be185d6b)}.mini-site[data-tone=wellness]{--accent:#0f766e;--accent-deep:#115e59;--accent-soft:#f0fdfa;--hero-overlay:linear-gradient(165deg, #081c18c7, #0f766e73)}.mini-header{z-index:40;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#fffcf8d1;justify-content:space-between;align-items:center;gap:16px;width:min(100%,1080px);margin:0 auto;padding:14px 20px;display:flex;position:sticky;top:0}.mini-header-brand{gap:2px;min-width:0;display:grid}.mini-header-brand a{min-width:0;color:inherit;gap:2px;text-decoration:none;display:grid}.mini-header-brand strong{font-family:var(--font-mini-serif), serif;letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-weight:700;overflow:hidden}.mini-header-brand span{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:700}.mini-header-nav{flex-wrap:wrap;justify-content:flex-end;gap:6px 14px;display:flex}.mini-header-nav a{color:var(--muted);font-size:13px;font-weight:700;text-decoration:none;transition:color .2s}.mini-header-nav a:hover,.mini-header-nav a.is-active{color:var(--accent-deep)}.mini-header-lang,.mini-lang-switch{flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:12px;display:flex}.mini-header-lang a,.mini-lang-switch a{color:var(--muted);font-weight:600;text-decoration:none}.mini-header-lang a.is-active,.mini-lang-switch a.is-active{color:var(--accent)}.mini-header-cta{background:var(--accent);border-radius:999px;align-items:center;min-height:38px;padding:0 14px;display:inline-flex;box-shadow:0 8px 24px #b4530938;color:#fff!important}.mini-hero{color:#fff;isolation:isolate;align-items:end;min-height:88vh;display:grid;position:relative;overflow:hidden}.mini-hero:before{content:"";z-index:-2;background:radial-gradient(circle at 82% 18%,#fbbf2447,#0000 24%),radial-gradient(circle at 12% 82%,#ffffff14,#0000 30%),linear-gradient(135deg,#29180d 0%,#4a2512 38%,#7c3a1d 100%);position:absolute;inset:0}.mini-hero:after{content:"";background:var(--hero-overlay);z-index:-1;position:absolute;inset:0}.mini-hero-image{object-fit:cover;z-index:-3;width:100%;height:100%;position:absolute;inset:0;transform:scale(1.03)}.mini-hero-content{width:min(100%,1080px);margin:0 auto;padding:96px 20px 56px;position:relative}.mini-kicker{letter-spacing:.18em;text-transform:uppercase;color:#ffffffd1;align-items:center;gap:10px;margin:0 0 18px;font-size:12px;font-weight:700;display:inline-flex}.mini-kicker:before{content:"";background:#ffffff8c;width:36px;height:1px}.mini-hero h1,.mini-hero-title{max-width:11em;font-family:var(--font-mini-serif), serif;letter-spacing:.03em;text-wrap:balance;margin:0;font-size:clamp(34px,7vw,58px);font-weight:700;line-height:1.18}.mini-lead{color:#ffffffe0;text-wrap:pretty;max-width:34em;margin:22px 0 0;font-size:clamp(15px,2.2vw,18px);line-height:1.85}.mini-hero-stats{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.mini-hero-stat{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff2e;border-radius:16px;min-width:120px;padding:14px 16px}.mini-hero-stat b{font-family:var(--font-mini-serif), serif;font-size:24px;line-height:1;display:block}.mini-hero-stat span{color:#ffffffb8;margin-top:6px;font-size:12px;display:block}.mini-cta-row{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.mini-cta-row.compact{margin-top:20px}.mini-primary-cta,.mini-secondary-cta{border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 22px;font-size:14px;font-weight:700;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.mini-primary-cta{color:var(--accent-deep);background:#fff;box-shadow:0 14px 36px #0000002e}.mini-primary-cta:hover{transform:translateY(-1px)}.mini-secondary-cta{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1f;border:1px solid #ffffff47}.mini-secondary-cta:hover{background:#ffffff2e}.mini-section .mini-secondary-cta{color:#1c1917;background:#fff;border-color:#1c191738}.mini-section .mini-secondary-cta:hover{background:#f5f0ea}.mini-badges{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.mini-badges span{letter-spacing:.04em;background:#ffffff1a;border:1px solid #ffffff38;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700}.mini-section[id]{scroll-margin-top:96px}.mini-section{width:min(100%,1080px);margin:0 auto;padding:56px 20px}.mini-section+.mini-section{padding-top:0}.mini-section-label{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:10px;font-size:11px;font-weight:800;display:inline-flex}.mini-section h2{font-family:var(--font-mini-serif), serif;letter-spacing:.02em;margin:0 0 10px;font-size:clamp(28px,4vw,36px);line-height:1.2}.mini-section-intro{max-width:640px;color:var(--muted);margin:0 0 28px;line-height:1.8}.mini-section-heading{justify-content:space-between;align-items:end;gap:16px;margin-bottom:24px;display:flex}.mini-section-heading h2{margin:0}.mini-section-heading p,.mini-section-heading a{color:var(--muted)}.mini-section-heading a{white-space:nowrap;font-size:14px;font-weight:700;text-decoration:none}.mini-section-heading a:hover{color:var(--accent-deep)}.mini-info-grid{grid-template-columns:.95fr 1.05fr;align-items:stretch;gap:20px;display:grid}.mini-info-intro{background:var(--surface-elevated);border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 18px 50px #1c19170f}.mini-info-intro h2{font-family:var(--font-mini-serif), serif;margin:0 0 12px;font-size:30px}.mini-info-intro p{color:var(--muted);margin:0;line-height:1.85}.mini-info-grid dl{gap:12px;margin:0;display:grid}.mini-info-grid dl div{background:var(--surface-elevated);border:1px solid var(--line);border-radius:18px;gap:6px;padding:18px 20px;display:grid;box-shadow:0 10px 30px #1c19170a}.mini-info-grid dt{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:800}.mini-info-grid dd{margin:0;font-size:15px;font-weight:600;line-height:1.7}.mini-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.mini-card{background:var(--surface-elevated);border:1px solid var(--line);border-radius:22px;gap:10px;padding:22px;transition:transform .2s,box-shadow .2s;display:grid;box-shadow:0 16px 40px #1c19170d}.mini-card:hover{transform:translateY(-2px);box-shadow:0 22px 48px #1c191714}.mini-card img{aspect-ratio:4/3;object-fit:cover;border-radius:16px;width:100%}.mini-card h3{font-family:var(--font-mini-serif), serif;margin:0;font-size:20px}.mini-card p{color:var(--muted);margin:0;line-height:1.75}.mini-meta,.mini-card small{color:var(--accent-deep);font-weight:700}.mini-review-card{padding-top:28px;position:relative}.mini-review-card:before{content:"“";font-family:var(--font-mini-serif), serif;color:var(--accent-soft);font-size:48px;line-height:1;position:absolute;top:8px;left:18px}.mini-review-stars{color:#f59e0b;letter-spacing:.08em;align-items:center;gap:8px;font-size:14px;display:inline-flex}.mini-review-stars span{color:var(--muted);letter-spacing:0;font-size:12px;font-weight:700}.mini-review-card p{color:var(--ink);font-size:15px;line-height:1.8}.mini-review-card small{color:var(--muted);font-weight:700}.mini-owner{background:linear-gradient(135deg, var(--accent-soft), #fff);border:1px solid #b453091f;border-radius:24px;padding:32px}.mini-owner p{font-family:var(--font-mini-serif), serif;margin:0;font-size:20px;line-height:1.9}.mini-gallery{grid-template-columns:repeat(6,1fr);gap:10px;display:grid}.mini-gallery img{aspect-ratio:1;object-fit:cover;border-radius:16px;width:100%}.mini-gallery img:first-child{aspect-ratio:auto;grid-area:span 2/span 3;min-height:280px}.mini-news-list{gap:14px;display:grid}.mini-news-list article{background:var(--surface-elevated);border:1px solid var(--line);border-radius:20px;gap:8px;padding:22px 24px;display:grid;box-shadow:0 12px 32px #1c19170a}.mini-news-list article span{background:var(--accent-soft);width:fit-content;color:var(--accent-deep);letter-spacing:.08em;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:800;display:inline-flex}.mini-news-list h3{font-family:var(--font-mini-serif), serif;margin:0;font-size:22px}.mini-news-list p{color:var(--muted);margin:0;line-height:1.8}.mini-faq-list{gap:12px;display:grid}.mini-faq-list details{background:var(--surface-elevated);border:1px solid var(--line);border-radius:18px;overflow:hidden}.mini-faq-list summary{cursor:pointer;padding:18px 20px;font-weight:700;line-height:1.6;list-style:none}.mini-faq-list summary::-webkit-details-marker{display:none}.mini-faq-list details[open] summary{color:var(--accent-deep);border-bottom:1px solid var(--line)}.mini-faq-list details p{color:var(--muted);margin:0;padding:16px 20px 20px;line-height:1.8}.mini-map-wrap{border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 18px 48px #1c191714}.mini-map{background:#e7e5e4;border:0;width:100%;height:360px;display:block}.mini-final-cta{background:linear-gradient(135deg, var(--accent-deep), var(--accent));color:#fff;text-align:center;margin-top:24px;padding:72px 20px;position:relative;overflow:hidden}.mini-final-cta:before{content:"";pointer-events:none;background:radial-gradient(circle at 20% 20%,#ffffff1f,#0000 28%),radial-gradient(circle at 80% 80%,#0000001f,#0000 24%);position:absolute;inset:0}.mini-final-cta>*{position:relative}.mini-final-cta h2{max-width:720px;font-family:var(--font-mini-serif), serif;margin:0 auto 12px;font-size:clamp(28px,4vw,38px)}.mini-final-cta p{color:#ffffffdb;max-width:620px;margin:0 auto 24px;line-height:1.8}.mini-final-cta .mini-primary-cta{color:var(--accent-deep);background:#fff}.mini-final-cta .mini-secondary-cta{color:#fff;background:#ffffff1f;border-color:#ffffff47}.mini-final-cta .mini-secondary-cta:hover{background:#ffffff2e}.mini-footer{width:min(100%,1080px);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px 24px;margin:0 auto;padding:28px 20px 40px;font-size:13px;display:flex}.mini-footer-brand{gap:4px;display:grid}.mini-footer-nav{flex-wrap:wrap;gap:12px 18px;display:flex}.mini-footer-nav a{color:var(--ink);font-weight:700;text-decoration:none}.mini-footer-nav a:hover{color:var(--accent)}.mini-blog-empty{border:1px dashed var(--line);color:var(--muted);background:#fff;border-radius:14px;margin:0;padding:18px 20px;line-height:1.75}.mini-blog-empty a{color:var(--accent);font-weight:700}.mini-footer strong{color:var(--ink);font-weight:700}.mini-link-card{color:inherit;text-decoration:none}.mini-article .mini-section{max-width:820px}.mini-article h1{font-family:var(--font-mini-serif), serif;font-size:clamp(34px,7vw,56px);line-height:1.15}.mini-article-image{object-fit:cover;border-radius:24px;width:100%;max-height:420px;margin:22px 0}.mini-article-body{gap:16px;font-size:17px;line-height:1.9;display:grid}.mini-article-body h2,.mini-article-body h3,.mini-article-body p{margin:0}@media (max-width:900px){.mini-header-nav>a:not(.mini-header-cta){display:none}.mini-header-lang{display:flex}.mini-info-grid,.mini-card-grid,.mini-gallery{grid-template-columns:1fr}.mini-gallery img:first-child{grid-area:auto;min-height:220px}.mini-hero h1{max-width:none}}@media (max-width:760px){.mini-hero{min-height:82vh}.mini-cta-row,.mini-footer,.mini-section-heading{display:grid}}.mini-contact-form{flex-direction:column;gap:1.25rem;max-width:560px;display:flex}.mini-contact-field{flex-direction:column;gap:.375rem;display:flex}.mini-contact-field label{color:var(--ink);font-size:.875rem;font-weight:600}.mini-contact-field label span{color:var(--accent);margin-left:2px}.mini-contact-field input,.mini-contact-field textarea{color:var(--ink);background:#fff;border:1.5px solid #d6d3d1;border-radius:8px;padding:.625rem .875rem;font-family:inherit;font-size:1rem;transition:border-color .15s}.mini-contact-field input:focus,.mini-contact-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 15%, transparent);outline:none}.mini-contact-field textarea{resize:vertical;min-height:120px}.mini-contact-thanks{background:color-mix(in srgb, var(--accent) 8%, white);text-align:center;border-radius:12px;max-width:560px;padding:2rem}.mini-contact-thanks p{color:var(--ink);margin:.25rem 0;font-size:1rem}.mini-contact-error{color:#dc2626;margin:0;font-size:.875rem}.mini-gate{width:min(100%,760px);margin:0 auto;padding:72px 20px 96px}.mini-gate h1{font-family:var(--font-mini-serif), serif;letter-spacing:.02em;margin:0;font-size:clamp(36px,6vw,56px);line-height:1.15}.mini-gate-romaji{color:var(--muted);letter-spacing:.08em;margin:8px 0 0;font-size:14px}.mini-gate-lead{gap:4px;margin:28px 0 22px;font-size:18px;font-weight:700;display:grid}.mini-gate-lead span{color:var(--muted);font-size:14px;font-weight:600}.mini-gate-grid{gap:16px;display:grid}.mini-gate-card{border:1px solid var(--line);background:var(--surface-elevated);color:inherit;border-radius:22px;gap:8px;padding:22px;text-decoration:none;display:grid;box-shadow:0 16px 40px #1c19170d}a.mini-gate-card:hover{border-color:#b4530959}.mini-gate-card>span{color:var(--accent);letter-spacing:.12em;font-size:12px;font-weight:700}.mini-gate-card strong{font-family:var(--font-mini-serif), serif;font-size:28px}.mini-gate-card small{color:var(--muted);font-size:13px}.mini-gate-langs{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.mini-gate-langs a{background:var(--accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-height:48px;font-weight:700;text-decoration:none;display:flex}@media (max-width:640px){.mini-gate{padding-top:40px}.mini-gate-langs{grid-template-columns:1fr}}
