@charset "UTF-8";
:root{--g:#1f4b3c;--gd:#14352a;--gold:#c78938;--cream:#f7f3ea;--soft:#edf4f0;--text:#28312d;--muted:#68726d;--line:#ded8cc;--shadow:0 18px 55px rgba(23,53,42,.1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);font-family:"Noto Sans JP","Yu Gothic",sans-serif;line-height:1.85;letter-spacing:.025em}body.modal-open{overflow:hidden}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.section{padding:100px 0}.bg-cream{background:var(--cream)}.bg-soft{background:var(--soft)}.en{margin:0 0 10px;color:var(--gold);font-size:11px;font-weight:900;letter-spacing:.2em}.en--light{color:#edc78c}.heading{max-width:850px;margin:0 auto 52px;text-align:center}.heading--left{margin-left:0;text-align:left}.heading h2,.support h2,.contact h2{margin:0;color:var(--gd);font-family:"Noto Serif JP","Yu Mincho",serif;font-size:clamp(31px,4vw,52px);line-height:1.45}.heading>p:last-child{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:59px;padding:13px 28px;border:1px solid transparent;border-radius:999px;font-weight:900}.btn--gold{color:#fff;background:var(--gold)}.btn--line{color:#fff;border-color:rgba(255,255,255,.65)}.btn--white{color:var(--gd);background:#fff}
.header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.96);box-shadow:0 3px 16px rgba(17,44,34,.08)}.header__inner{display:flex;align-items:center;justify-content:space-between;min-height:75px}.brand{display:flex;flex-direction:column;line-height:1.2}.brand strong{color:var(--gd);font-size:19px}.brand small{margin-top:5px;color:var(--muted);font-size:10px;letter-spacing:.15em}.header nav{display:flex;align-items:center;gap:18px;font-size:14px;font-weight:800}.header__cta{padding:11px 20px;border-radius:999px;color:#fff;background:var(--g)}
.hero{color:#fff;background:linear-gradient(135deg,#102d23,#255846)}.hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:65px;align-items:center;min-height:785px;padding:80px 0}.badge{display:inline-block;margin:0 0 22px;padding:6px 13px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(255,255,255,.08);font-size:12px;font-weight:800}.hero h1{margin:0;font-family:"Noto Serif JP","Yu Mincho",serif;font-size:clamp(48px,6vw,76px);line-height:1.22;letter-spacing:.05em}.hero__sub{font-size:20px}.hero__sub b{font-size:29px;letter-spacing:.12em}.hero__lead{color:rgba(255,255,255,.84);font-size:17px}.trust{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.trust span{padding:6px 11px;border-radius:4px;background:rgba(255,255,255,.12);font-size:11px;font-weight:900}.buttons{display:flex;flex-wrap:wrap;gap:12px}.hero small{display:block;margin-top:11px;color:rgba(255,255,255,.65)}.hero-products{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:38px;border:1px solid rgba(255,255,255,.18);border-radius:35px;background:rgba(255,255,255,.09);box-shadow:0 35px 80px rgba(0,0,0,.23)}.hero-products figure{display:flex;align-items:center;justify-content:center;min-height:175px;margin:0;padding:12px;border-radius:17px;background:#fff}.hero-products img{max-height:145px;object-fit:contain}.seal{position:absolute;right:-25px;bottom:-25px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:135px;height:135px;border:5px solid rgba(255,255,255,.8);border-radius:50%;background:var(--gold);transform:rotate(-7deg)}.seal b{font-size:25px}.seal span{font-size:10px;font-weight:800}
.check-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0;padding:0;list-style:none}.check-list li{position:relative;padding:19px 20px 19px 52px;border:1px solid var(--line);background:#fff}.check-list li:before{content:"✓";position:absolute;left:20px;top:15px;color:var(--gold);font-size:21px;font-weight:900}
.intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;align-items:center}.text-link{display:inline-block;margin-top:8px;padding-bottom:3px;border-bottom:1px solid var(--g);color:var(--g);font-weight:900}.three{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);background:var(--cream)}.three article{padding:35px 22px;border-right:1px solid var(--line);text-align:center}.three article:last-child{border:0}.three span,.cards>article>span,.flow>li>span{display:block;margin-bottom:20px;color:var(--gold);font-family:Georgia,serif;font-size:29px}.three h3,.cards h3,.flow h3{margin:0 0 9px;color:var(--gd)}.three p,.cards p,.flow p{margin:0;color:var(--muted);font-size:13px}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:19px}.cards article{min-height:280px;padding:34px 27px;border-top:4px solid var(--gold);background:#fff;box-shadow:var(--shadow)}
.products{display:grid;grid-template-columns:1fr 1fr;gap:22px}.products article{display:grid;grid-template-columns:205px 1fr;overflow:hidden;border:1px solid var(--line);box-shadow:0 12px 35px rgba(23,53,42,.06)}.product-img{display:flex;align-items:center;justify-content:center;min-height:240px;padding:18px;background:#f7f8f6}.product-img img{max-height:180px;object-fit:contain}.products article>div:last-child{padding:26px}.products h3{margin:8px 0;color:var(--gd)}.products ul{margin:0;padding-left:1.2em;color:var(--muted);font-size:13px}.tags{display:flex;flex-wrap:wrap;gap:6px;margin:0}.tags span{padding:4px 8px;border-radius:999px;color:var(--g);background:var(--soft);font-size:9px;font-weight:900}.inline-cta{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:34px;padding:30px 34px;border-left:5px solid var(--gold);background:var(--cream)}.inline-cta h3{margin:0;color:var(--gd)}
.targets{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.targets span{display:flex;align-items:center;justify-content:center;min-height:78px;padding:13px;border:1px solid var(--line);background:#fff;font-weight:900;text-align:center}.scale{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.scale article{padding:26px 18px;border-top:4px solid var(--gold);background:var(--cream);text-align:center}.scale span{display:block;color:var(--muted);font-size:13px}.scale b{display:block;color:var(--gd);font-family:Georgia,serif;font-size:43px}.scale small{margin-left:5px;font-family:inherit;font-size:13px}.note{color:var(--muted);font-size:11px}
.support{color:#fff;background:linear-gradient(135deg,var(--gd),var(--g))}.support__grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:center}.support h2{color:#fff}.support ul{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:0;padding:0;list-style:none}.support li{position:relative;padding:14px 12px 14px 40px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);font-size:13px;font-weight:800}.support li:before{content:"✓";position:absolute;left:14px;color:#edc78c}.support .btn{grid-column:1/-1;justify-self:center}
.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:17px;margin:0;padding:0;list-style:none}.flow li{position:relative;padding:31px 24px;border:1px solid var(--line)}.flow li:not(:last-child):after{content:"→";position:absolute;right:-15px;top:50%;z-index:2;color:var(--gold);font-size:23px}.faq{max-width:900px;margin:auto}.faq details{border-bottom:1px solid var(--line);background:#fff}.faq summary{position:relative;padding:23px 50px 23px 60px;color:var(--gd);font-weight:900;cursor:pointer;list-style:none}.faq summary:before{content:"Q";position:absolute;left:24px;top:18px;color:var(--gold);font-family:Georgia,serif;font-size:23px}.faq summary:after{content:"＋";position:absolute;right:20px}.faq details[open] summary:after{content:"−"}.faq details p{margin:0;padding:0 50px 23px 60px;color:var(--muted)}
.contact{padding:105px 0;color:#fff;background:#102d23}.contact__grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:65px;align-items:start}.contact__head{position:sticky;top:115px}.contact h2{color:#fff}.contact__head>p{color:rgba(255,255,255,.75)}.contact__head ul{padding:0;list-style:none}.contact__head li{position:relative;padding:8px 0 8px 28px;border-bottom:1px solid rgba(255,255,255,.12)}.contact__head li:before{content:"✓";position:absolute;left:0;color:#edc78c}.form-box{padding:44px;background:#fff;box-shadow:0 30px 80px rgba(0,0,0,.22)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{min-width:0;margin:0;padding:0;border:0}.wide{grid-column:1/-1}.field label,.field legend{display:block;margin-bottom:7px;color:var(--gd);font-size:13px;font-weight:900}.field label span{margin-left:6px;padding:2px 6px;border-radius:3px;color:#fff;background:#b54238;font-size:8px}.field em{color:var(--muted);font-size:10px;font-style:normal}.field input,.field select,.field textarea{width:100%;min-height:51px;padding:11px 13px;border:1px solid #ccd4cf;border-radius:4px;outline:none}.field textarea{min-height:145px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--g);box-shadow:0 0 0 3px rgba(31,75,60,.12)}.field [aria-invalid=true]{border-color:#b54238}.field small,.form-box>form>small{display:block;color:#b54238;font-size:10px}.checks{display:grid;grid-template-columns:1fr 1fr;gap:9px}.checks label{display:flex;align-items:center;gap:8px;min-height:48px;margin:0;padding:9px 12px;border:1px solid var(--line);background:#fafbf9}.checks input,.privacy input{width:18px;height:18px;accent-color:var(--g)}.privacy{display:flex;align-items:flex-start;gap:9px;margin-top:27px;padding:15px;color:var(--text);background:var(--cream);font-size:12px}.privacy button{padding:0;border:0;color:var(--g);background:transparent;text-decoration:underline}.privacy b{color:#b54238;font-size:9px}.field-note,.form-note{color:var(--muted);font-size:10px}.status{display:none;margin-top:20px;padding:14px;font-size:12px}.status.is-error{display:block;color:#8d2d28;border:1px solid #e0aaa6;background:#fff1f0}.submit{display:flex;align-items:center;justify-content:center;gap:10px;width:min(100%,420px);min-height:62px;margin:25px auto 0;border:0;border-radius:999px;color:#fff;background:var(--gold);font-weight:900}.submit i{display:none;width:17px;height:17px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.submit.loading i{display:block}.honeypot{position:absolute;left:-9999px}.thanks{color:var(--text);text-align:center}.thanks h3{color:var(--gd);font-family:"Noto Serif JP",serif;font-size:31px}.thanks>div{margin:25px 0;padding:22px;background:var(--cream)}@keyframes spin{to{transform:rotate(360deg)}}
footer{padding:42px 0 95px;color:rgba(255,255,255,.7);background:#0b2119}.footer__grid{display:grid;grid-template-columns:1fr auto;gap:20px}.footer__grid p{margin:3px 0;font-size:11px}.footer__grid>div:nth-child(2){display:flex;gap:16px;font-size:11px}.footer__grid button{padding:0;border:0;color:inherit;background:transparent}.footer__grid small{grid-column:1/-1;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);font-size:9px}
.float-pc{position:fixed;right:20px;bottom:20px;z-index:900;display:flex;overflow:hidden;border-radius:13px;background:#fff;box-shadow:0 15px 45px rgba(0,0,0,.22)}.float-pc>div{padding:9px 15px}.float-pc span{display:block;color:var(--gold);font-size:8px;font-weight:900}.float-pc b{color:var(--gd);font-size:12px}.float-pc a{display:flex;align-items:center;padding:0 17px;color:#fff;background:var(--gold);font-size:12px;font-weight:900}.float-pc a:last-child{background:var(--g)}.float-sp{display:none}
.modal{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;padding:20px}.modal.open{display:flex}.backdrop{position:absolute;inset:0;background:rgba(4,17,12,.76)}.modal__box{position:relative;z-index:1;width:min(740px,100%);max-height:88vh;padding:40px;border-radius:7px;background:#fff;overflow:auto}.modal__x{position:absolute;right:14px;top:10px;border:0;background:transparent;font-size:29px}.modal__box h2{color:var(--gd);font-family:"Noto Serif JP",serif}.modal__body{font-size:12px}.modal__box>.btn{display:flex;margin:25px auto 0;border:0}
@media(max-width:1000px){.hero__grid{grid-template-columns:1fr;min-height:auto}.hero-products{max-width:700px}.cards{grid-template-columns:1fr 1fr}.products article{grid-template-columns:165px 1fr}.support__grid,.contact__grid{grid-template-columns:1fr}.contact__head{position:static}}
@media(max-width:767px){body{padding-bottom:66px}.container{width:min(100% - 28px,1180px)}.section{padding:72px 0}.brand strong{font-size:15px}.brand small,.header nav>a:first-child{display:none}.header__cta{font-size:11px}.hero__grid{gap:40px;padding:65px 0}.hero h1{font-size:42px}.hero__lead br{display:none}.buttons{display:grid}.hero-products{padding:17px;border-radius:20px}.hero-products figure{min-height:120px;padding:7px}.hero-products img{max-height:100px}.seal{right:-6px;bottom:-18px;width:100px;height:100px}.seal b{font-size:18px}.heading h2,.support h2,.contact h2{font-size:30px}.check-list,.three,.products,.targets,.scale,.flow,.form-grid{grid-template-columns:1fr}.intro-grid{grid-template-columns:1fr;gap:40px}.three article{border-right:0;border-bottom:1px solid var(--line)}.cards{grid-template-columns:1fr}.cards article{min-height:auto}.products article{grid-template-columns:1fr}.inline-cta{display:block;padding:24px}.inline-cta .btn{width:100%;margin-top:18px}.targets,.scale{grid-template-columns:1fr 1fr}.support ul{grid-template-columns:1fr}.support .btn{grid-column:auto}.flow li:not(:last-child):after{content:"↓";right:auto;left:50%;top:auto;bottom:-22px}.form-box{padding:27px 17px}.wide{grid-column:auto}.checks{grid-template-columns:1fr}.footer__grid{grid-template-columns:1fr}.footer__grid>div:nth-child(2){display:grid;gap:7px}.float-pc{display:none}.float-sp{position:fixed;left:0;right:0;bottom:0;z-index:1000;display:grid;grid-template-columns:1fr 1fr;padding:7px;background:#fff}.float-sp a{display:flex;align-items:center;justify-content:center;min-height:51px;color:#fff;background:var(--gold);font-size:12px;font-weight:900}.float-sp a:last-child{background:var(--g)}.modal__box{padding:32px 18px}}
@media(max-width:430px){.targets,.scale{grid-template-columns:1fr}}

/* SEO補助コンテンツ */
.seo-breadcrumb{background:#f5f2eb;border-bottom:1px solid #e5ded1}
.seo-breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:10px 0;list-style:none;color:#68726d;font-size:11px}
.seo-breadcrumb li+li::before{content:"›";margin-right:8px;color:#a5967e}
.seo-breadcrumb a{text-decoration:underline;text-underline-offset:2px}
.seo-intro{padding:14px 0;color:#56615c;font-size:12px}
.seo-intro p{margin:0}
@media(max-width:767px){.seo-intro{padding:11px 0;font-size:11px}}
