:root{color-scheme:light;--k-green: #2f5a2a;--k-green-deep: #1f3d1c;--k-green-soft: #e7eedf;--k-wood: #b5763a;--k-ink: #1e2620;--k-sub: #56614f;--k-bg: #f8f5ec;--k-line: #d9d2bd;--k-max: 68rem;--k-gutter: clamp(1rem, .4rem + 2.6vw, 2.25rem)}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic UI,Meiryo,system-ui,sans-serif;color:var(--k-ink);background:var(--k-bg);font-size:1.0625rem;line-height:1.85;overflow-wrap:break-word;line-break:strict}a{color:var(--k-green);text-underline-offset:.25em}::selection{background:var(--k-green);color:#fff}:focus-visible{outline:3px solid var(--k-wood);outline-offset:3px}h1,h2,h3{font-feature-settings:"palt";text-wrap:balance;line-height:1.4}p,li,td{text-wrap:pretty}.k-top{background:#fff;border-bottom:1px solid var(--k-line)}.k-top-inner{max-width:calc(var(--k-max) + 2 * var(--k-gutter));margin:0 auto;padding:0 var(--k-gutter)}header.k{display:flex;flex-wrap:wrap;gap:.4rem 1.2rem;align-items:center;justify-content:space-between;padding:.85rem 0 .4rem}header.k .name{display:flex;align-items:center;gap:.6rem;font-size:1.4rem;font-weight:800;letter-spacing:.06em;line-height:1.2}header.k .name svg{flex:none}header.k .catch{font-size:.8125rem;color:var(--k-sub)}header.k .tel{display:inline-flex;align-items:center;gap:.4em;font-weight:700;color:#fff;background:var(--k-green);text-decoration:none;border-radius:999px;padding:.5rem 1.1rem;font-variant-numeric:tabular-nums}nav.k{display:flex;gap:.25rem;overflow-x:auto;scrollbar-width:none;padding-bottom:.5rem}nav.k a{flex:none;color:var(--k-ink);text-decoration:none;font-weight:700;font-size:.9375rem;padding:.35rem .9rem;border-radius:999px;transition:background-color .15s}nav.k a:hover{background:var(--k-green-soft)}nav.k a[aria-current=page]{background:var(--k-green);color:#fff}.wrap{max-width:calc(var(--k-max) + 2 * var(--k-gutter));margin:0 auto;padding:0 var(--k-gutter) 6rem}main h2{font-size:clamp(1.45rem,1.1rem + 1.4vw,2.1rem);font-weight:800;margin:clamp(2.5rem,1.5rem + 3vw,4rem) 0 1rem;display:flex;align-items:center;gap:.75rem}main h2:before{content:"";flex:none;inline-size:.35rem;block-size:1.2em;background:var(--k-wood)}.photo-box{position:relative;min-height:11rem;margin:.75rem 0;padding:1rem;display:flex;align-items:flex-end;justify-content:flex-start;border-radius:.5rem;overflow:hidden;color:#fff;font-size:.8125rem;text-align:left;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 100'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linejoin='round' opacity='.85'%3E%3Cpath d='M30 100V58l40-30 40 30v42'/%3E%3Cpath d='M20 64l50-38 50 38'/%3E%3Crect x='60' y='72' width='18' height='28'/%3E%3Crect x='86' y='66' width='14' height='12'/%3E%3Cpath d='M128 100V72l26-18 26 18v28'/%3E%3C/g%3E%3C/svg%3E") right 6% bottom / auto 78% no-repeat,linear-gradient(145deg,#93ab7e 0%,#4f7a45 55%,var(--k-green-deep) 100%)}.k-hero{position:relative;margin-top:1.25rem}.k-hero .photo-box{min-height:clamp(18rem,12rem + 22vw,30rem);margin:0;border-radius:.75rem;padding:clamp(1rem,.5rem + 2vw,2rem)}.k-hero-copy{position:absolute;left:clamp(1rem,.5rem + 2.5vw,2.5rem);top:clamp(1.25rem,.5rem + 3vw,3rem);margin:0;color:#fff}.k-hero-copy strong{display:block;font-size:clamp(1.9rem,1rem + 4vw,3.75rem);font-weight:800;line-height:1.2;letter-spacing:.02em;text-shadow:0 2px 18px rgb(0 0 0 / .25)}.k-hero-copy a{display:inline-flex;margin-top:1rem;background:#fff;color:var(--k-green-deep);font-weight:700;text-decoration:none;border-radius:999px;padding:.6rem 1.3rem}table{border-collapse:collapse;width:100%;background:#fff;border-radius:.375rem;overflow:hidden;border:1px solid var(--k-line)}th,td{border-bottom:1px solid var(--k-line);padding:.85rem 1.1rem;text-align:left;vertical-align:top}tr:last-child>th,tr:last-child>td{border-bottom:0}th{background:var(--k-green-soft);white-space:nowrap;color:var(--k-green-deep);font-weight:700;width:1%;font-variant-numeric:tabular-nums}@media(max-width:36rem){table,tbody,tr,th,td{display:block;width:auto}th{border-bottom:0;padding-bottom:.15rem;background:transparent;font-size:.8125rem}td{padding-top:0}}.cards{display:grid;gap:clamp(1rem,.6rem + 1.4vw,1.75rem);grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr))}.card{background:#fff;border:1px solid var(--k-line);border-radius:.5rem;padding:.75rem .75rem 1.4rem;display:flex;flex-direction:column}.card .photo-box{margin:0 0 1rem;min-height:10rem}.card h3{margin:.25rem .5rem .4rem;font-size:1.15rem;font-weight:800}.card p{margin:0 .5rem .5rem}.card p>strong{display:inline-block;font-size:.75rem;letter-spacing:.06em;background:var(--k-green-soft);color:var(--k-green-deep);border-radius:999px;padding:.1rem .7rem}.cta-box{background:var(--k-green);color:#fff;border-radius:.75rem;padding:clamp(1.75rem,1rem + 3vw,3rem);margin:clamp(2.5rem,1.5rem + 3vw,4rem) 0 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem}.cta-box p{margin:0;font-size:clamp(1.1rem,.95rem + .7vw,1.4rem);font-weight:700;max-width:26em}.cta-box a.btn{display:inline-flex;align-items:center;gap:.5em;background:#fff;color:var(--k-green-deep);font-weight:800;text-decoration:none;border-radius:999px;padding:.9rem 1.9rem;min-block-size:3.25rem}.cta-box a.btn:after{content:"→"}.cta-box a.btn:hover{background:var(--k-green-soft)}.cta-box :focus-visible{outline-color:#fff}.k-tel-big{font-size:clamp(1.4rem,1.1rem + 1.4vw,2rem);font-weight:800;font-variant-numeric:tabular-nums;margin-bottom:.25rem}.k-form{background:#fff;border:1px solid var(--k-line);border-radius:.5rem;padding:clamp(1.25rem,.8rem + 2vw,2rem);box-shadow:0 0 0 1px var(--k-line);max-width:40rem;margin:1.5rem 0}.k-form label{display:block;font-weight:700;margin-bottom:.35rem}.k-form input,.k-form select,.k-form textarea{display:block;width:100%;padding:.75rem .9rem;font:inherit;font-size:max(1rem,1em);border:1.5px solid #8a9582;border-radius:.6rem;background:#fff;color:var(--k-ink)}.k-form input:focus-visible,.k-form select:focus-visible,.k-form textarea:focus-visible{outline:none;border-color:var(--k-green);box-shadow:0 0 0 4px #2f5a2a33}.k-form button{font:inherit;font-weight:700;padding:.9rem 1.9rem;border-radius:999px;border:1.5px solid #8a9582;background:#eceee8;color:var(--k-sub);cursor:not-allowed}.k-note{font-size:.9rem;color:var(--k-sub)}footer.k{background:var(--k-green-deep);color:#e3eadb;font-size:.9rem}footer.k .k-foot-inner{max-width:calc(var(--k-max) + 2 * var(--k-gutter));margin:0 auto;padding:2.5rem var(--k-gutter) 6rem}footer.k .k-foot-name{font-size:1.25rem;font-weight:800;color:#fff;letter-spacing:.06em;margin:0 0 .5rem}.mobile-bar{display:none}@media(max-width:640px){header.k .tel{display:none}.mobile-bar{display:flex;gap:.5rem;position:fixed;left:0;right:0;bottom:0;z-index:40;padding:.5rem .75rem calc(.5rem + env(safe-area-inset-bottom));background:color-mix(in oklab,#fff 94%,transparent);backdrop-filter:blur(10px);border-top:1px solid var(--k-line)}.mobile-bar a{flex:1;text-align:center;padding:.8rem .4rem;font-weight:700;text-decoration:none;color:var(--k-green-deep);border:2px solid var(--k-green);border-radius:999px;font-size:.9rem}.mobile-bar a.tel{background:var(--k-green);color:#fff}}@media(prefers-reduced-motion:no-preference){@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:.18s}}@media(forced-colors:active){.card,.cta-box,.k-form,table{border:1px solid CanvasText}}
