:root{--color-primary:#2f8f2f;--color-primary-dark:#1f6b1f;--color-bg:#fbf7ef;--color-surface:#fff;--color-text:#1a1a1a;--color-muted:#555;--color-org:#d14600;--color-brwn:#7c5109;--color-grn:#00872d;--radius-s:8px;--radius-m:12px;--radius-l:16px;--space-xs:8px;--space-s:12px;--space-m:20px;--space-l:32px;--space-xl:48px;--space-xxl:72px;--max-width:1400px}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body.dx{margin:0;font-family:游ゴシック体,YuGothic,游ゴシック,"Yu Gothic",メイリオ,"Hiragino Kaku Gothic ProN","Hiragino Sans",sans-serif;color:var(--color-text);background:var(--color-bg);line-height:1.8}.dx img{max-width:100%;height:auto}a{color:var(--color-primary-dark)}a:focus-visible,button:focus-visible{outline:3px solid #000;outline-offset:3px}header,main,footer{display:block}.container{max-width:var(--max-width);margin-inline:auto;padding-inline:20px}.section{padding:48px 0 0!important}.section--narrow{padding-block:20px!important}.section--wide{padding-block:72px!important}@media (max-width:993px){.section--wide{padding-block:7vw!important}}h1,h2,h3{line-height:1.4;margin:0 0 var(--space-s)}h1{font-size:clamp(32px,3.6vw,42px)!important;font-weight:900!important}h2{font-size:clamp(21px,2.6vw,28px)!important;font-weight:900!important}h3{font-size:18px!important;font-weight:900!important}h2 span{display:inline-block}p{margin:0 0 var(--space-s)}.lead{font-size:16px}.grn-title{color:var(--color-grn);position:relative;margin-bottom:.75em;padding-left:.75em}.grn-title:before{content:"";display:inline-block;width:.5em;height:.5em;border-radius:.25em;background:#7dbf8e;position:absolute;top:.5em;left:0;margin-right:.25em}.grn-s{color:var(--color-grn);position:relative;margin:0 0 1.25em;text-align:center;font-size:clamp(18px,1.8vw,21px)!important;font-weight:900!important}.grn-s:before{content:"";width:40px;height:1px;background:var(--color-grn);display:inline-block;position:relative;margin-right:.5em;top:-.3em}.grn-s:after{content:"";width:40px;height:1px;background:var(--color-grn);display:inline-block;position:relative;margin-left:.5em;top:-.3em}.org-title{color:var(--color-org);text-align:center;margin:12px 0}.org-s{color:var(--color-org);position:relative;margin:0 0 1.25em;text-align:center;font-size:clamp(18px,1.8vw,21px)!important;font-weight:900!important}.org-s:before{content:"";width:40px;height:1px;background:var(--color-org);display:inline-block;position:relative;margin-right:.5em;top:-.3em}.org-s:after{content:"";width:40px;height:1px;background:var(--color-org);display:inline-block;position:relative;margin-left:.5em;top:-.3em}.brwn-title{color:var(--color-brwn);text-align:center;padding:5px 0 15px;font-size:clamp(18px,1.8vw,21px)!important;font-weight:900!important}@media (max-width:768px){.lead{font-size:15px}.org-s:before,.org-s:after{display:none}.org-s span{display:inline-block}}.hero{background-color:#007828;background-image:url(../images/hero.png?v=2);background-size:cover;background-repeat:no-repeat;;color:#fff}.hero-lead{font-size:clamp(16px,2vw,21px);font-weight:700}.hero-lead span{display:inline-block}.hero p{color:#fff}@media (max-width:993px){.hero-lead span{display:inline}}.card{background:var(--color-surface);border-radius:var(--radius-l);padding:var(--space-l);box-shadow:0 6px 16px rgba(0,0,0,.06)}.card+.card{margin-top:var(--space-l)}@media (max-width:768px){.card{padding:var(--space-m)}}.grid-list{display:flex;gap:var(--space-m);list-style:none;padding:0;margin:var(--space-m) 0 0}.grid-list li{background:#f9faf7;border-radius:var(--radius-m);padding:var(--space-s);width:calc(100% / 6);font-size:16px;text-align:center;font-weight:700;display:flex;justify-content:center}.grid-list li b{align-self:center}.grid-list li#vision-01{background:#fae9cb}.grid-list li#vision-02{background:#f6dce0}.grid-list li#vision-03{background:#d0e7eb}.grid-list li#vision-04{background:#f1d8d2}.grid-list li#vision-05{background:#d7e5c5}.grid-list li#vision-06{background:#ced9ed}.vision-goals2030{background:#faebd5;padding:15px;border-radius:10px;margin-top:30px}.vision-goals2030-inner{background:#fff;padding:15px;border-radius:10px}.innovation-list{display:flex;flex-wrap:wrap;gap:20px;margin:50px 0}.innovation-list div{width:calc(50% - 10px);background:var(--color-surface);padding:var(--space-l);border-radius:var(--radius-l);box-shadow:0 6px 16px rgba(0,0,0,.06)}@media (max-width:993px){.grid-list{flex-wrap:wrap;gap:var(--space-s)}.grid-list li{width:calc(33% - 8px);font-size:16px;text-align:center;font-weight:700;display:flex;justify-content:center}.innovation-list{display:flex;flex-wrap:wrap;gap:20px;margin:30px 0 10px}.innovation-list div{width:100%;background:var(--color-surface);padding:var(--space-l);border-radius:var(--radius-l);box-shadow:0 6px 16px rgba(0,0,0,.06)}}@media (max-width:768px){.grid-list li{width:calc(50% - 8px);font-size:15px;text-align:center;font-weight:700;display:flex;justify-content:center}}@media (max-width:576px){.grid-list li{width:100%;font-size:15px;text-align:center;font-weight:700;display:flex;justify-content:center}}figure{margin:var(--space-xl) auto}figure.narrow{width:75%;margin:var(--space-l) auto var(--space-xl)}figure.wide{width:95%}figcaption{margin-top:var(--space-xs);font-size:14px;color:var(--color-muted)}@media (max-width:993px){figure.narrow{width:100%;margin:var(--space-l) auto var(--space-xl)}figure.wide{width:100%}}.cta{display:block;width:fit-content;align-items:center;gap:8px;padding:14px 50px 14px 30px;border-radius:999px;background:var(--color-grn);color:#fff;font-weight:700;text-decoration:none;margin:30px auto 0;position:relative;border:solid 2px var(--color-grn);transition:all .4s}.cta:after{content:"";display:inline-block;width:10px;height:16px;background-image:url(../images/arrow.png);background-size:10px 16px;background-repeat:no-repeat;position:absolute;right:20px;top:calc(50% - 8px)}.cta:hover{background:#fff;color:var(--color-grn);border:solid 2px var(--color-grn)}.cta:hover:after{content:"";display:inline-block;width:10px;height:16px;background-image:url(../images/arrow_grn.png);background-size:10px 16px;background-repeat:no-repeat;position:absolute;right:20px;top:calc(50% - 8px)}.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media (max-width:768px){.section{padding-block:var(--space-l)}}