:root{
  --clover:#0a6037;
  --clover-dark:#064329;
  --clover-mid:#4b8f2e;
  --clover-lime:#9bc53d;
  --soft:#f4f8ef;
  --ink:#1f2a25;
  --muted:#66736c;
  --line:#dfe8df;
}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:var(--ink);background:#fff;letter-spacing:.02em}
a{text-decoration:none}.site-header{z-index:1030}.brand-logo{width:220px;max-width:58vw;height:auto}.navbar .nav-link{font-size:.93rem;font-weight:700;color:#33433b;padding:.65rem .7rem}.navbar .nav-link:hover{color:var(--clover)}
.btn-clover{background:var(--clover);border-color:var(--clover);color:#fff;font-weight:700;box-shadow:0 6px 16px rgba(10,96,55,.15)}.btn-clover:hover,.btn-clover:focus{background:var(--clover-dark);border-color:var(--clover-dark);color:#fff}.btn-outline-clover{border:1.5px solid var(--clover);color:var(--clover);font-weight:700}.btn-outline-clover:hover{background:var(--clover);border-color:var(--clover);color:#fff}
.py-lg-6{padding-top:5.5rem!important;padding-bottom:5.5rem!important}.section-space{padding:5rem 0}.hero{background:radial-gradient(circle at 82% 20%,rgba(155,197,61,.18),transparent 27%),linear-gradient(180deg,#fbfdf9 0%,#f6faf2 100%)}.hero h1 span{color:var(--clover)}.hero-kicker{display:inline-flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:999px;padding:.45rem .8rem;font-weight:800;color:var(--clover);font-size:.9rem;box-shadow:0 5px 20px rgba(0,0,0,.04)}.hero-kicker .dot{width:9px;height:9px;border-radius:50%;background:var(--clover-lime);margin-right:.55rem}.hero-photo{width:100%;aspect-ratio:1.4/1;object-fit:cover;border-radius:30px 8px 30px 8px;box-shadow:0 24px 60px rgba(34,65,48,.16)}.hero-visual:after{content:"";position:absolute;right:-18px;top:-18px;width:90px;height:90px;border-radius:50%;border:18px solid rgba(155,197,61,.18);z-index:-1}.hero-badge{position:absolute;left:-22px;bottom:24px;background:#fff;border-radius:18px;padding:.85rem 1rem;display:flex;align-items:center;gap:.75rem;color:var(--clover-dark);font-size:.95rem}.badge-clover{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--soft);color:var(--clover);font-size:1.5rem}.hero-note{color:#4f6158;font-size:.92rem}.hero-note i{color:var(--clover-mid)}
.quick-item{padding:.8rem .25rem;font-weight:700;color:#405047;border-right:1px solid var(--line);display:flex;justify-content:center;align-items:center;gap:.5rem;font-size:.92rem}.quick-item:last-child{border-right:0}.quick-item i{color:var(--clover);font-size:1.15rem}
.section-heading{max-width:760px}.section-heading h2{font-size:clamp(1.8rem,3vw,2.6rem);font-weight:800;margin:.35rem 0 .75rem}.section-heading p{color:var(--muted);margin-bottom:0;line-height:1.9}.eyebrow{font-size:.78rem;letter-spacing:.14em;font-weight:900;color:var(--clover-mid)}
.feature-card{border:1px solid var(--line);border-radius:20px;padding:1.7rem;background:#fff;transition:.25s ease}.feature-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(42,76,56,.09);border-color:#c6d8c5}.icon-circle{width:54px;height:54px;border-radius:50%;background:var(--soft);display:grid;place-items:center;color:var(--clover);font-size:1.5rem;margin-bottom:1.2rem}.feature-card h3{font-size:1.08rem;font-weight:800;line-height:1.55}.feature-card p{font-size:.92rem;color:var(--muted);line-height:1.8;margin-bottom:0}
.bg-soft-green{background:var(--soft)}.work-card{background:#fff;border-radius:18px;overflow:hidden;border:1px solid #d9e6d8;height:100%;box-shadow:0 7px 18px rgba(32,61,42,.04)}.work-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.work-card>div{padding:.85rem 1rem 1rem;display:flex;gap:.7rem;align-items:center}.work-card span{color:var(--clover-mid);font-size:.75rem;font-weight:900}.work-card h3{font-size:1rem;font-weight:800;margin:0}
.image-stack{position:relative;padding-right:15%;padding-bottom:15%}.stack-main{width:78%;aspect-ratio:1/1;object-fit:cover;border-radius:28px}.stack-sub{position:absolute;right:0;bottom:0;width:52%;aspect-ratio:1/1;object-fit:cover;border:8px solid #fff;border-radius:26px;box-shadow:0 15px 30px rgba(0,0,0,.12)}.typeb-points{display:grid;gap:.8rem}.typeb-points>div{display:flex;gap:1rem;padding:1rem 1.1rem;background:#fafcf9;border:1px solid var(--line);border-radius:16px}.typeb-points i{color:var(--clover);font-size:1.4rem}.typeb-points span{display:flex;flex-direction:column}.typeb-points strong{font-size:.98rem}.typeb-points small{margin-top:.2rem;color:var(--muted);line-height:1.65}
.flow-section{background:linear-gradient(180deg,#fff,#fbfdf9)}.timeline{max-width:760px;position:relative}.timeline:before{content:"";position:absolute;left:91px;top:8px;bottom:8px;width:2px;background:#cfe0c7}.timeline-item{display:grid;grid-template-columns:75px 1fr;gap:2rem;position:relative;padding:0 0 1.55rem}.timeline-item:last-child{padding-bottom:0}.timeline-item:after{content:"";position:absolute;left:84px;top:8px;width:16px;height:16px;background:var(--clover-lime);border:4px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #bad1af}.timeline-item time{display:inline-block;background:var(--clover);color:#fff;text-align:center;border-radius:8px;padding:.35rem .3rem;height:max-content;font-weight:800}.timeline-item h3{font-size:1.02rem;font-weight:800;margin:.1rem 0 .15rem}.timeline-item p{color:var(--muted);font-size:.91rem;margin:0}
.use-card{background:#fff;border:1px solid #dbe6d9;border-radius:20px;padding:1.5rem 1.2rem;height:100%;text-align:center}.use-card span{display:block;color:var(--clover-mid);font-weight:900;font-size:.72rem;letter-spacing:.08em}.use-card i{display:grid;place-items:center;margin:.9rem auto;width:56px;height:56px;border-radius:50%;background:var(--soft);color:var(--clover);font-size:1.5rem}.use-card h3{font-size:1.02rem;font-weight:800}.use-card p{font-size:.86rem;color:var(--muted);line-height:1.7;margin:0}
.office-card{border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 10px 30px rgba(30,59,43,.05)}
.office-card>img{
    width:100%;
    height:460px;
    object-fit:contain;
    background:#f5f5f5;
}
.office-body{padding:1.5rem}.office-title{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.office-title span{font-size:1.35rem;font-weight:900;color:var(--clover-dark)}.office-title small{background:var(--soft);color:var(--clover);font-weight:800;padding:.35rem .65rem;border-radius:999px}.office-body address{font-style:normal;line-height:1.8;color:#4d5b53}.office-body p{color:#56635c;font-size:.92rem}.office-contact{display:flex;flex-wrap:wrap;gap:.8rem 1.5rem;padding-top:.9rem;border-top:1px solid var(--line)}.office-contact a{color:var(--clover);font-weight:900}.office-contact span{color:#66736c;font-size:.9rem}
.contact-section{background:#eff6eb}.contact-box{background:linear-gradient(135deg,var(--clover-dark),var(--clover));color:#fff;border-radius:30px;padding:2.2rem 2.4rem;box-shadow:0 22px 50px rgba(9,72,42,.18);position:relative;overflow:hidden}.contact-box:after{content:"♣";position:absolute;right:-25px;top:-75px;font-size:220px;color:rgba(255,255,255,.06);transform:rotate(-12deg)}.contact-phone{position:relative;z-index:1;display:flex;flex-direction:column;background:#fff;color:var(--clover-dark);border-radius:22px;padding:1.2rem 1.4rem}.contact-phone span{font-size:.82rem;font-weight:800;color:#647169}.contact-phone strong{font-size:clamp(1.5rem,3vw,2.1rem);margin:.15rem 0}.contact-phone small{color:#68736d}.footer-logo{width:180px;height:auto}
.mobile-cta{position:fixed;bottom:0;left:0;right:0;height:64px;background:#fff;border-top:1px solid #dce6db;display:grid;grid-template-columns:1fr 1fr;z-index:1050;box-shadow:0 -8px 24px rgba(0,0,0,.08)}.mobile-cta a{display:flex;align-items:center;justify-content:center;gap:.5rem;font-weight:900;color:var(--clover)}.mobile-cta a:last-child{background:var(--clover);color:#fff}.mobile-cta i{font-size:1.2rem}
@media (max-width:991.98px){body{padding-bottom:64px}.section-space{padding:4rem 0}.hero-badge{left:10px;bottom:12px}.quick-item:nth-child(2){border-right:0}.quick-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.office-card>img{height:200px}}
@media (max-width:575.98px){.brand-logo{width:185px}.hero{padding-top:.3rem}.hero h1{font-size:2.15rem}.lead{font-size:1.04rem}.hero-photo{border-radius:22px 6px 22px 6px}.hero-badge{font-size:.8rem;padding:.6rem .75rem}.badge-clover{width:34px;height:34px}.quick-item{font-size:.78rem;gap:.3rem}.section-space{padding:3.4rem 0}.feature-card{padding:1.3rem}.work-card>div{padding:.7rem}.work-card h3{font-size:.86rem}.image-stack{margin-bottom:1rem}.timeline:before{left:73px}.timeline-item{grid-template-columns:60px 1fr;gap:1.45rem}.timeline-item:after{left:66px}.timeline-item time{font-size:.8rem}.use-card{padding:1.2rem .8rem}.use-card p{font-size:.8rem}.contact-box{padding:1.7rem 1.25rem;border-radius:22px}.office-body{padding:1.2rem}}


.office-map{width:100%;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:#f7f8f5}
.office-map iframe{display:block;width:100%;height:260px;border:0}
@media (max-width:575.98px){.office-map iframe{height:220px}}


/* inquiry */
.inquiry-page{background:#fff;padding-bottom:0}
.inquiry-container{max-width:760px}
.inquiry-logo{width:190px;max-width:60vw;height:auto}
.inquiry-summary{background:#f5f6f4}
.inquiry-steps{display:grid;grid-template-columns:repeat(3,1fr);max-width:330px;gap:3px}
.inquiry-steps div{background:#e8e9e8;padding:.35rem .7rem;font-weight:800;font-size:.9rem;color:#48514c;position:relative}
.inquiry-steps div:first-child{border-radius:6px 0 0 6px}.inquiry-steps div:last-child{border-radius:0 6px 6px 0}
.inquiry-steps div.active{background:var(--clover-mid);color:#fff}
.inquiry-info{display:flex;gap:.8rem;border:2px solid #8ab12e;background:#fbfff2;border-radius:10px;padding:1rem 1.1rem;color:#415229}
.inquiry-info i{color:#79a61e;font-size:1.3rem}.inquiry-info span{font-size:.9rem;color:#66736c}
.inquiry-group{border:0;padding:0;margin:0 0 1.5rem}.inquiry-group legend{font-size:1rem;font-weight:800;margin-bottom:.65rem}
.required{display:inline-block;background:#ef574d;color:#fff;border-radius:999px;font-size:.7rem;padding:.18rem .45rem;vertical-align:2px;margin-left:.25rem}
.optional{display:inline-block;background:#8a9690;color:#fff;border-radius:999px;font-size:.7rem;padding:.18rem .45rem;vertical-align:2px;margin-left:.25rem}
.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}
.choice-box{position:relative}.choice-box input{position:absolute;opacity:0;pointer-events:none}
.choice-box span{display:flex;align-items:center;justify-content:center;min-height:54px;border:2px solid #e5e8e6;border-radius:10px;background:#fff;font-weight:700;cursor:pointer;transition:.15s}
.choice-box span:hover{border-color:#a9c77c;background:#fbfdf8}
.choice-box.selected span,.choice-box input:checked+span{border-color:var(--clover-mid);background:#f3f9ea;color:var(--clover-dark);box-shadow:inset 0 0 0 1px var(--clover-mid)}
.inquiry-divider{margin:2.2rem 0 1.5rem;text-align:center;position:relative}.inquiry-divider:before{content:"";height:1px;background:#dfe5df;position:absolute;left:0;right:0;top:50%}.inquiry-divider span{position:relative;background:#fff;padding:0 1rem;font-weight:900}
.inquiry-page .form-control{border:2px solid #dfe5df;border-radius:9px;padding:.75rem .9rem}
.inquiry-page .form-control:focus{border-color:#78a622;box-shadow:0 0 0 .2rem rgba(120,166,34,.12)}
.error-text{color:#dc3f36;font-weight:700;font-size:.85rem;margin-bottom:.45rem}
.contact-checks{display:flex;flex-wrap:wrap;gap:.8rem 1.6rem}.contact-checks label{font-weight:700}.contact-checks input{width:20px;height:20px;vertical-align:-4px;accent-color:var(--clover-mid)}
.privacy-note{display:flex;gap:.7rem;padding:1rem;background:#f6f8f5;border-radius:10px;color:#5d6962;font-size:.88rem}.privacy-note i{color:var(--clover);font-size:1.2rem}
.inquiry-next{min-width:300px;max-width:100%;padding:.8rem 2rem}
.confirm-card{border:1px solid #dce4dc;border-radius:12px;overflow:hidden;padding:1.2rem 1.4rem}.confirm-title{font-weight:900;border-left:4px solid var(--clover-mid);padding-left:.7rem;margin-bottom:1rem}
.confirm-card dl{display:grid;grid-template-columns:145px 1fr;gap:.75rem;margin:0}.confirm-card dt{font-weight:800}.confirm-card dd{margin:0;overflow-wrap:anywhere}.confirm-note{white-space:normal;line-height:1.8}
.inquiry-complete{padding:4rem 0 7rem}.complete-icon{width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:#eef7e5;color:var(--clover-mid);font-size:2.5rem;margin:auto}
@media(max-width:575.98px){
 .inquiry-logo{width:165px}.choice-grid{grid-template-columns:1fr 1fr;gap:.5rem}.choice-box span{min-height:50px;font-size:.92rem}
 .confirm-card dl{grid-template-columns:1fr;gap:.25rem}.confirm-card dd{margin-bottom:.75rem}.inquiry-next{width:100%;min-width:0}
}
