*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#111;background:#fff;font-family:"Noto Sans JP",sans-serif;line-height:1.8}a{text-decoration:none;color:inherit}.header{height:88px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:38px;padding:0 4%;position:sticky;top:0;z-index:20;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid #eee}.brand{display:flex;align-items:center;gap:12px}.brand img{width:46px}.brand span{display:flex;flex-direction:column;line-height:1.1}.brand b{font:700 19px Outfit;letter-spacing:.16em}.brand small{font-size:8px;letter-spacing:.1em;color:#777;margin-top:5px}.nav{display:flex;justify-content:center;gap:28px;font-size:13px;font-weight:600}.header-actions{display:flex;align-items:center;gap:12px}.language{position:relative}.language button{border:0;background:white;cursor:pointer}.language-menu{display:none;position:absolute;right:0;top:42px;background:#fff;border:1px solid #e7e7e7;border-radius:14px;padding:8px;box-shadow:0 15px 40px #0001;min-width:145px}.language-menu.open{display:block}.language-menu button{width:100%;text-align:left;padding:9px 10px;border-radius:8px}.language-menu button:hover{background:#f5f5f5}.line-btn{border:1px solid #7b61ff;color:#5e47ca;padding:11px 18px;border-radius:999px;font-size:13px}.menu-btn{display:none;border:0;background:none;font-size:23px}.hero{min-height:650px;display:grid;grid-template-columns:1fr .85fr 70px .8fr;align-items:center;gap:22px;padding:46px 4% 70px;background:linear-gradient(180deg,#fff,#fdfcff)}.hero-person img,.hero-figure img{width:100%;height:500px;object-fit:cover;object-position:center;border-radius:24px;background:#f5f5f5}.hero-person,.hero-figure{position:relative}.hero-person span,.hero-figure span{position:absolute;left:18px;bottom:15px;background:#fff9;padding:6px 12px;border-radius:20px;font-size:11px}.hero-copy{text-align:center}.logo-mini{display:none}.hero h1{font-family:"Noto Serif JP",serif;font-size:clamp(38px,4vw,64px);font-weight:500;line-height:1.45;letter-spacing:.03em;margin:0}.decor{display:flex;align-items:center;justify-content:center;gap:12px;margin:22px auto}.decor i{width:120px;height:1px;background:#7b61ff}.decor b{width:9px;height:9px;border-radius:50%;background:#7b61ff}.hero-copy p{color:#666}.hero-buttons{display:flex;justify-content:center;gap:12px;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 28px;border-radius:999px;font-weight:600}.primary{background:#6848d7;color:#fff}.secondary{border:1px solid #7b61ff;color:#5e47ca}.hero-arrow{font-size:45px;color:#6848d7;text-align:center}.category-strip{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid #eee;border-bottom:1px solid #eee}.category-strip article{text-align:center;padding:26px 12px;border-right:1px solid #eee}.category-strip article:last-child{border-right:0}.category-strip div{font-size:28px;color:#6848d7}.category-strip b,.category-strip small{display:block}.category-strip small{font-size:11px;color:#777;margin-top:4px}.section{padding:110px max(4%,calc((100% - 1180px)/2))}.section-head{text-align:center;margin-bottom:46px}.section-head span,.section>span,.about span,.contact span{font:700 11px Outfit;letter-spacing:.18em;color:#6848d7}.section h2{font-family:"Noto Serif JP",serif;font-size:clamp(32px,4vw,52px);font-weight:500;margin:8px 0}.steps{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid #eee;border-radius:20px;overflow:hidden}.steps article{padding:26px;border-right:1px solid #eee}.steps article:last-child{border-right:0}.steps em{font:700 12px Outfit;color:#6848d7}.steps h3{font-size:16px}.steps p{font-size:12px;color:#777}.about{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#fafafa}.about p{color:#666;font-size:17px}.gallery{text-align:center}.gallery p{max-width:680px;margin:12px auto 28px;color:#666}.pricing{background:#fafafa}.pricing>h3{margin:38px 0 18px}.price-grid{display:grid;gap:18px}.three{grid-template-columns:repeat(3,1fr)}.four{grid-template-columns:repeat(4,1fr)}.price-grid article{position:relative;padding:28px;border:1px solid #e7e7e7;border-radius:20px;background:#fff}.price-grid article.popular{border-color:#111}.price-grid i{position:absolute;right:18px;top:18px;font:700 9px Outfit;color:#6848d7}.price-grid h4{font:700 36px Outfit;margin:4px 0 22px}.price-grid dl{margin:0}.price-grid dl div{display:flex;justify-content:space-between;padding:12px 0;border-top:1px solid #eee;font-size:13px}.price-grid strong{font-size:19px}.pet-title{margin-top:65px!important}.faq{max-width:900px;margin:auto}.faq details{border-top:1px solid #ddd}.faq details:last-child{border-bottom:1px solid #ddd}.faq summary{padding:22px 0;cursor:pointer;font-weight:600}.faq p{color:#666}.contact{display:grid;grid-template-columns:1fr .8fr;gap:70px;align-items:center}.contact>div>p{color:#666}.contact-card{border:1px solid #eee;border-radius:22px;padding:26px;box-shadow:0 18px 50px #0000000d}.contact-card p{display:flex;justify-content:space-between;gap:20px;padding:14px 0;margin:0;border-bottom:1px solid #eee;font-size:13px}.contact-card p:last-child{border-bottom:0}footer{background:#111;color:#fff;padding:45px 4%;display:flex;align-items:center;gap:16px}footer img{width:40px;filter:invert(1)}footer div{display:flex;flex-direction:column}footer b{font:700 18px Outfit;letter-spacing:.15em}footer div small{font-size:8px;color:#aaa}footer p{margin-left:auto;color:#ccc}.floating-line{position:fixed;right:20px;bottom:20px;padding:13px 18px;border-radius:999px;background:#6848d7;color:#fff;font-weight:700;font-size:13px;box-shadow:0 12px 30px #6848d744}@media(max-width:1050px){.nav{display:none}.header{grid-template-columns:auto 1fr auto}.menu-btn{display:block;justify-self:end}.header-actions .line-btn{display:none}.hero{grid-template-columns:1fr 1fr}.hero-copy{grid-column:1/-1;grid-row:1}.hero-person{grid-column:1}.hero-figure{grid-column:2}.hero-arrow{display:none}.hero-person img,.hero-figure img{height:420px}.category-strip{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:1fr 1fr}.steps article{border-bottom:1px solid #eee}.about,.contact{grid-template-columns:1fr}.four{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.header{height:72px;padding:0 18px}.brand img{width:38px}.brand small{display:none}.language button{font-size:12px}.hero{display:flex;flex-direction:column;padding:34px 18px 55px}.hero-copy{order:1}.hero-person{order:2;width:100%}.hero-figure{order:3;width:100%}.hero-person img,.hero-figure img{height:380px}.hero-buttons{flex-direction:column}.category-strip{grid-template-columns:repeat(2,1fr)}.section{padding:78px 18px}.steps{grid-template-columns:1fr}.three,.four{grid-template-columns:1fr}.about{gap:20px}footer{flex-wrap:wrap}footer p{width:100%;margin:10px 0 0}}
.exhibition-card{text-align:center;display:flex;flex-direction:column;align-items:center}
.site-qr{width:min(230px,70%);height:auto;border:12px solid #fff;border-radius:18px;box-shadow:0 12px 35px #00000012;margin-bottom:18px}
.exhibition-card>strong{font-size:18px}
.exhibition-card>span{font-family:Outfit,sans-serif;letter-spacing:.08em;color:#6848d7;margin-top:4px}
.contact-note{margin-top:22px!important;padding-top:18px!important;border-top:1px solid #eee!important;width:100%;display:block!important;color:#777!important}

.site-loader{
  position:fixed;inset:0;z-index:9999;display:grid;place-items:center;
  background:#fff;transition:opacity .55s ease,visibility .55s ease
}
.site-loader.hidden{opacity:0;visibility:hidden}
.loader-brand{text-align:center}
.loader-brand img{width:74px;margin:0 auto 16px}
.loader-brand strong{display:block;font:700 25px Outfit,sans-serif;letter-spacing:.18em}
.loader-brand small{display:block;margin-top:8px;color:#777;font-size:12px}
.hero-person img,.hero-figure img{transition:transform .65s ease,filter .65s ease}
.hero-person:hover img,.hero-figure:hover img{transform:scale(1.015);filter:contrast(1.02)}
.category-strip article,.price-grid article,.steps article{transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.category-strip article:hover,.price-grid article:hover,.steps article:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,.07);background:#fff}
.expo-mode-button{
  position:fixed;left:20px;bottom:20px;z-index:40;border:1px solid #ddd;background:rgba(255,255,255,.92);
  backdrop-filter:blur(10px);border-radius:999px;padding:11px 16px;font-weight:700;font-size:12px;cursor:pointer;
  box-shadow:0 10px 30px rgba(0,0,0,.08)
}
body.expo-mode .header{transform:translateY(-100%)}
body.expo-mode .expo-mode-button{background:#111;color:#fff;border-color:#111}
body.expo-mode .hero{min-height:100vh}
.header{transition:transform .35s ease}
@media(max-width:650px){.expo-mode-button{display:none}}

/* Exact approved MINI YOU logo assets */
.brand{
  width:190px!important;
  min-width:190px!important;
}
.brand img{
  width:100%!important;
  height:auto!important;
  object-fit:contain;
}
.loader-brand img{
  width:250px!important;
  max-width:72vw!important;
  height:auto!important;
}
.logo-mini img{
  width:210px!important;
  height:auto!important;
}
.footer-lockup{
  width:205px!important;
  height:auto!important;
  filter:none!important;
}
@media(max-width:1050px){
  .brand{width:165px!important;min-width:165px!important}
}
@media(max-width:650px){
  .brand{width:145px!important;min-width:145px!important}
  .loader-brand img{width:210px!important}
  .footer-lockup{width:185px!important}
}
