:root{--lime:#7dbf3a;--lime-dark:#5a9228;--lime-pale:#f0f7e6;--lime-border:#c8e09a;--wood:#c4935e;--wood-pale:#fdf4ea;--ink:#2c2e29;--muted:#6b7060;--paper:#fafbf7;--surface:#fff;--line:#dce8cc;--hero-bg-image:url(/assets/atelier-interior-CAY8NGkv.jpg)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);margin:0;font-family:Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;line-height:1.8}a{color:var(--lime-dark)}img{max-width:100%;display:block}.site-header{z-index:100;border-bottom:2px solid var(--lime);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fafbf7f5;justify-content:space-between;align-items:center;gap:16px;height:60px;padding:0 clamp(16px,4vw,48px);display:flex;position:sticky;top:0}.brand{color:var(--lime-dark);letter-spacing:.04em;white-space:nowrap;align-items:center;gap:10px;font-size:1.05rem;font-weight:800;text-decoration:none;display:flex}.brand__dot{background:var(--lime);border-radius:50%;flex-shrink:0;width:10px;height:10px}.site-nav{align-items:center;gap:6px;display:flex}.site-nav a{color:var(--muted);letter-spacing:.03em;border-radius:6px;padding:6px 10px;font-size:.85rem;font-weight:600;text-decoration:none;transition:color .15s,background .15s}.site-nav a:hover{color:var(--lime-dark);background:var(--lime-pale)}.nav-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;padding:8px;display:none}.nav-toggle span{background:var(--lime-dark);border-radius:2px;height:2px;transition:transform .25s,opacity .25s;display:block}.nav-toggle.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.nav-toggle.is-open span:nth-child(2){opacity:0}.nav-toggle.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.hero{background:var(--hero-bg-image) center / cover no-repeat;align-items:flex-end;min-height:85svh;display:flex;position:relative;overflow:hidden}.hero:after{content:"";background:linear-gradient(170deg,#0a1e0a14 0%,#0a1e0a85 100%);position:absolute;inset:0}.hero__inner{z-index:1;width:100%;padding:clamp(40px,8vw,80px) clamp(20px,6vw,80px);position:relative}.hero__tag{background:var(--lime);color:#fff;letter-spacing:.18em;text-transform:uppercase;border-radius:999px;margin-bottom:20px;padding:4px 14px;font-size:.75rem;font-weight:700;display:inline-block}.hero h1{color:#fff;letter-spacing:.02em;text-shadow:0 2px 16px #0000002e;margin:0 0 16px;font-size:clamp(2.8rem,7vw,5.2rem);line-height:1.1}.hero__sub{color:#ffffffe6;letter-spacing:.05em;max-width:30em;margin:0 0 32px;font-size:clamp(.95rem,1.2vw,1.1rem);line-height:1.9}.hero__scroll{color:#ffffffb3;letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:10px;font-size:.78rem;text-decoration:none;display:flex}.hero__scroll:before{content:"";background:#ffffff80;width:1px;height:36px;animation:1.8s ease-in-out infinite scrollLine;display:block}@keyframes scrollLine{0%,to{opacity:.4;transform:scaleY(1)}50%{opacity:1;transform:scaleY(.6)}}.section{max-width:1160px;margin:0 auto;padding:clamp(56px,8vw,96px) clamp(20px,5vw,80px)}.section--alt{background:var(--lime-pale);max-width:none;padding-left:0;padding-right:0}.section--alt>.section__inner{max-width:1160px;margin:0 auto;padding:0 clamp(20px,5vw,80px)}.section__label{letter-spacing:.22em;text-transform:uppercase;color:var(--lime-dark);align-items:center;gap:12px;margin-bottom:12px;font-size:.72rem;font-weight:700;display:flex}.section__label:before{content:"";background:var(--lime);border-radius:2px;flex-shrink:0;width:28px;height:2px;display:block}.section h2{letter-spacing:.01em;color:var(--ink);margin:0 0 8px;font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.2}.section__lead{color:var(--muted);max-width:52em;margin:0 0 40px;font-size:.97rem}.section__more{border:2px solid var(--lime);color:var(--lime-dark);letter-spacing:.06em;border-radius:999px;align-items:center;gap:8px;margin-top:32px;padding:10px 22px;font-size:.88rem;font-weight:700;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.section__more:hover{background:var(--lime);color:#fff}.section__more:after{content:"→"}.info-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:28px;display:grid}.info-card{background:var(--surface);border:1px solid var(--line);border-top:3px solid var(--lime);border-radius:12px;padding:22px 24px}.info-card__title{letter-spacing:.14em;text-transform:uppercase;color:var(--lime-dark);margin:0 0 8px;font-size:.78rem;font-weight:700}.info-card__body{white-space:pre-line;margin:0;font-size:.97rem;line-height:1.7}.info-links{flex-wrap:wrap;gap:10px;margin-top:24px;padding:0;list-style:none;display:flex}.kodomo-link-block{margin-top:24px}.kodomo-link-heading{color:var(--lime-dark);margin-bottom:12px;font-size:.95rem;font-weight:700}.kodomo-link-note{color:var(--muted);margin-left:6px;font-size:.78rem;font-weight:400}#kodomoLinks{flex-direction:column;align-items:flex-start;gap:8px;margin-top:0}.info-links a{background:var(--lime-pale);border:1px solid var(--lime-border);color:var(--lime-dark);border-radius:999px;align-items:center;gap:6px;padding:8px 16px;font-size:.85rem;font-weight:600;text-decoration:none;transition:background .15s;display:inline-flex}.info-links a:hover{background:var(--lime);color:#fff}.menu-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.menu-item{background:var(--surface);border:1px solid var(--line);border-radius:10px;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px;transition:border-color .15s,box-shadow .15s;display:flex}.menu-item:hover{border-color:var(--lime-border);box-shadow:0 4px 16px #7dbf3a1f}.menu-item__name{margin:0 0 4px;font-size:.97rem;font-weight:700}.menu-item__desc{color:var(--muted);margin:0;font-size:.85rem}.menu-item__price{color:var(--lime-dark);white-space:nowrap;flex-shrink:0;font-size:1.05rem;font-weight:700}.menu-note{background:var(--wood-pale);border-left:3px solid var(--wood);color:var(--muted);border-radius:0 8px 8px 0;margin-top:20px;padding:14px 18px;font-size:.88rem}.tabs{border-bottom:2px solid var(--line);gap:4px;margin-bottom:28px;display:flex}.tab-btn{font:inherit;color:var(--muted);cursor:pointer;letter-spacing:.04em;background:0 0;border:none;border-bottom:3px solid #0000;margin-bottom:-2px;padding:10px 20px;font-size:.9rem;font-weight:700;transition:color .15s,border-color .15s}.tab-btn:hover{color:var(--lime-dark)}.tab-btn.is-active{color:var(--lime-dark);border-bottom-color:var(--lime)}.tab-panel{display:none}.tab-panel.is-active{display:block}.cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;display:grid}.item-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;transition:transform .2s,box-shadow .2s;overflow:hidden}.item-card:hover{transform:translateY(-3px);box-shadow:0 8px 28px #0000001a}.item-card__image{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.item-card__body{padding:18px 20px}.item-card__body h3{margin:6px 0 8px;font-size:1rem;line-height:1.4}.item-card__body h3 a{color:var(--ink);text-decoration:none;transition:color .15s}.item-card__body h3 a:hover{color:var(--lime-dark)}.item-card__body p{color:var(--muted);margin:0;font-size:.88rem}.item-card__meta{color:var(--muted);align-items:center;gap:8px;font-size:.82rem;display:flex}.tag{border:1px solid var(--lime-border);color:var(--lime-dark);background:var(--lime-pale);border-radius:999px;padding:2px 10px;font-size:.75rem;font-weight:700;display:inline-flex}.calendar-embed{background:var(--lime-pale);border-radius:12px;width:100%;height:0;padding-bottom:70%;position:relative;overflow:hidden;box-shadow:0 4px 20px #00000014}.calendar-embed iframe{border:0;width:100%;height:100%;position:absolute;top:0;left:0}.access-grid{grid-template-columns:1fr 1fr;align-items:start;gap:40px;display:grid}.access-info dt{letter-spacing:.12em;text-transform:uppercase;color:var(--lime-dark);margin-bottom:4px;font-size:.78rem;font-weight:700}.access-info dd{white-space:pre-line;margin:0 0 20px;font-size:.97rem;line-height:1.7}.map-wrap{border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #0000001a}.map-wrap iframe{border:0;width:100%;height:360px;display:block}.inquiry-form-wrap{background:var(--surface);border-radius:16px;max-width:680px;margin:0 auto;padding:clamp(24px,4vw,48px);box-shadow:0 4px 24px #00000012}.inquiry-field{margin-bottom:1.2rem}.inquiry-field label{letter-spacing:.03em;margin-bottom:.4rem;font-size:.88rem;font-weight:700;display:block}.inquiry-required{color:#fff;vertical-align:middle;background:#e05a3a;border-radius:4px;margin-left:6px;padding:1px 7px;font-size:.7rem;font-weight:700;display:inline-block}.inquiry-field input,.inquiry-field select,.inquiry-field textarea{border:1.5px solid var(--line);background:var(--paper);width:100%;color:var(--ink);border-radius:8px;padding:10px 14px;font-family:inherit;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.inquiry-field input:focus,.inquiry-field select:focus,.inquiry-field textarea:focus{border-color:var(--lime);outline:none;box-shadow:0 0 0 3px #7dbf3a2e}.inquiry-field textarea{resize:vertical;min-height:120px}.appointment-scheduling{text-align:center;margin:24px 0}#contact>.section__inner>.section+.section{padding-top:clamp(16px,2vw,24px)}#contact>.section__inner>.section:first-child{padding-bottom:clamp(16px,2vw,24px)}.inquiry-error{color:#c0392b;background:#fdf2f2;border-radius:6px;margin-top:.75rem;padding:10px 14px;font-size:.88rem}.inquiry-actions{flex-wrap:wrap;gap:12px;margin-top:1.5rem;display:flex}.inquiry-btn{cursor:pointer;letter-spacing:.05em;border:none;border-radius:999px;justify-content:center;align-items:center;padding:13px 36px;font-size:.95rem;font-weight:700;transition:opacity .15s,background .15s;display:inline-flex}.inquiry-btn:disabled{opacity:.5;cursor:not-allowed}.inquiry-btn--primary{background:var(--lime);color:#fff}.inquiry-btn--primary:hover:not(:disabled){background:var(--lime-dark)}.inquiry-btn--secondary{border:2px solid var(--line);color:var(--ink);background:0 0}.inquiry-btn--secondary:hover{background:var(--lime-pale)}.inquiry-confirm{background:var(--surface);border-radius:12px;max-width:680px;margin:0 auto;padding:clamp(24px,4vw,48px);box-shadow:0 2px 12px #0000000f}.inquiry-confirm__lead{margin-bottom:1.25rem;font-weight:600}.inquiry-confirm__table{border-collapse:collapse;width:100%;margin-bottom:1rem}.inquiry-confirm__table th,.inquiry-confirm__table td{border-bottom:1px solid var(--line);text-align:left;padding:10px 12px;font-size:.9rem}.inquiry-confirm__table th{width:42%;color:var(--muted);font-weight:600}.inquiry-success{background:var(--lime-pale);color:var(--lime-dark);border-radius:12px;max-width:680px;margin:0 auto;padding:clamp(24px,4vw,48px);font-weight:500;line-height:2}.site-footer{background:var(--ink);color:#ffffffd9;padding:48px clamp(20px,5vw,80px) 28px}.footer-inner{grid-template-columns:1fr auto;align-items:start;gap:24px;max-width:1160px;margin:0 auto;display:grid}.footer-brand{color:var(--lime);margin:0 0 8px;font-size:1.1rem;font-weight:800}.footer-address{margin:0;font-size:.88rem;line-height:1.8}.footer-copy{text-align:center;color:#fff6;margin:24px auto 0;font-size:.78rem;display:block}.footer-links{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.footer-links a{color:#fff9;font-size:.82rem;text-decoration:none;transition:color .15s}.footer-links a:hover{color:var(--lime)}@media (width<=768px){.nav-toggle{display:flex}.site-nav{border-bottom:2px solid var(--lime);background:#fafbf7fa;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 16px 20px;display:none;position:absolute;top:60px;left:0;right:0;box-shadow:0 8px 24px #0000001a}.site-nav.is-open{display:flex}.site-nav a{width:100%;padding:12px 16px;font-size:.95rem}.access-grid{grid-template-columns:1fr;gap:28px}.footer-inner{grid-template-columns:1fr}.footer-links{align-items:flex-start}.hero{min-height:75svh}.hero h1{font-size:clamp(2.2rem,10vw,3.4rem)}.calendar-embed{padding-bottom:110%}}@media (width<=480px){.cards,.info-grid,.menu-grid{grid-template-columns:1fr}}.about-grid{grid-template-columns:280px 1fr;align-items:start;gap:48px;display:grid}.about-photo{border-radius:16px;overflow:hidden;box-shadow:0 4px 20px #0000001a}.about-grid:has(.about-photo[hidden]){grid-template-columns:1fr}.about-photo img{aspect-ratio:4/5;object-fit:cover;width:100%;display:block}.about-text p{color:var(--ink);margin:0 0 1.2em;font-size:.97rem;line-height:1.9}.about-text p:last-child{margin-bottom:0}.kodomo-text{margin-bottom:32px}.photo-gallery{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:40px;display:grid}.photo-gallery img{aspect-ratio:1;object-fit:cover;border-radius:10px;width:100%;transition:transform .2s,box-shadow .2s;display:block}.photo-gallery img:hover{transform:scale(1.02);box-shadow:0 6px 20px #0000001f}.facebook-embed{justify-content:center;padding:8px 0;display:flex}.facebook-link-btn{color:#fff;letter-spacing:.04em;background:#1877f2;border-radius:999px;align-items:center;gap:10px;padding:16px 36px;font-size:1rem;font-weight:700;text-decoration:none;transition:background .15s,transform .15s;display:inline-flex;box-shadow:0 4px 16px #1877f24d}.facebook-link-btn:hover{color:#fff;background:#166fe5;transform:translateY(-2px)}@media (width<=768px){.about-grid{grid-template-columns:1fr;gap:28px}.about-photo img{aspect-ratio:3/2}.photo-gallery{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.photo-gallery{gap:8px}}
