:root{--green:#699747;--deep-green:#315d40;--teal:#39b1b8;--orange:#e69340;--ink:#484a43;--paper:#fafaf2;--pale:#edf3e2;--line:#d8dacd;--content:1120px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:14px;line-height:1.65;overflow-wrap:anywhere}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;vertical-align:middle}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #174f73;outline-offset:4px}a:hover{opacity:.82}h1,h2,h3,p{margin:0}h2{font-size:20px;line-height:1.55;font-weight:700;margin-bottom:24px}h3{font-size:14px}.container{width:90%;max-width:var(--content);margin-inline:auto}.section{padding-block:28px 32px}.section--line{border-top:1px solid var(--line)}.screen-reader-text,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{position:fixed;top:8px;left:8px;background:#fff;padding:12px;z-index:100}.site-header{height:50px;background:#fff;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:10}.brand{flex:1;display:flex;align-items:center;justify-content:center;height:100%;padding:5px 14px}.custom-logo-link{display:block;max-width:275px}.custom-logo{max-height:40px;width:auto}.reference-logo{display:block;width:min(100%,245px);aspect-ratio:550/78;background-image:url('../images/design-reference.png');background-size:141.818% auto;background-position:49% 0;background-repeat:no-repeat}.menu-toggle{height:50px;width:50px;flex:none;border:0;background:var(--green);color:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.menu-lines,.menu-lines:before,.menu-lines:after{width:24px;height:1px;background:currentColor;display:block}.menu-lines{position:relative;margin-block:8px}.menu-lines:before,.menu-lines:after{content:"";position:absolute;left:0}.menu-lines:before{top:-8px}.menu-lines:after{top:8px}.menu-label{font-size:9px;line-height:1}.menu-toggle[aria-expanded=true] .menu-lines{background:transparent}.menu-toggle[aria-expanded=true] .menu-lines:before{top:0;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines:after{top:0;transform:rotate(-45deg)}.site-navigation{position:absolute;inset:100% 0 auto;background:#fff;box-shadow:0 10px 15px #0002;max-height:80vh;overflow:auto;padding:16px 5%}.site-navigation[hidden]{display:none}.menu{list-style:none;padding:0;margin:0}.site-navigation a{display:block;padding:13px 8px;border-bottom:1px solid var(--pale)}.site-navigation .sub-menu{padding-left:20px;list-style:none}
/* The source PNG is kept intact. These windows are temporary photo assets. */
.reference{background-image:url('../images/design-reference.png');background-repeat:no-repeat}.visual{display:block;width:100%;object-fit:cover}.hero{position:relative;isolation:isolate;min-height:500px;aspect-ratio:780/1000;color:#fff;background:#406a31;overflow:hidden}.hero-image{position:absolute;inset:0;height:100%;z-index:-2}.reference--hero{background-size:100% auto;background-position:center 1.74%}.hero:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#3e7030 88%);z-index:-1}.hero-content{position:absolute;bottom:23px;left:4.2%;right:4.2%}.hero-intro{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:17px;letter-spacing:.06em;line-height:1.8;margin-left:3%;margin-bottom:12px}.hero h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:400;font-size:clamp(23px,7.05vw,38px);letter-spacing:.02em;white-space:nowrap;margin-left:3%;margin-bottom:27px}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.button{display:flex;justify-content:center;align-items:center;min-height:38px;padding:6px 10px;background:#fff;border:1px solid #fff;border-radius:4px;color:var(--ink);font-size:16px;font-weight:700;line-height:1.4;text-align:center}.button--outline{background:transparent;color:#fff}.service-nav{display:grid;grid-template-columns:repeat(3,1fr)}.service{min-height:90px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;color:#fff;font-size:16px;font-weight:700;background:var(--green)}.service svg{width:46px;height:39px;fill:currentColor}.service--disability{background:var(--teal)}.service--childcare{background:var(--orange)}.about h2{margin-bottom:14px}.reference--aerial{aspect-ratio:700/440;background-size:111.429% auto;background-position:50% 26.306%}.facts{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:8px}.facts>div{border-radius:8px;background:var(--pale);padding:15px 15px 13px}.facts h3{font-size:14px;line-height:1.4;margin-bottom:4px}.facts p{font-size:11px;line-height:1.45;font-weight:600}.section-more{text-align:right;margin-top:14px;font-weight:700;font-size:14px}.section-more a{display:inline-block;padding:4px 0}.news{padding-top:26px}.news h2{margin-bottom:22px}.news-list{list-style:none;padding:0;margin:0}.news-list li{border-bottom:1px solid var(--line)}.news-list li:first-child{border-top:1px solid var(--line)}.news-list a{display:flex;gap:14px;align-items:center;min-height:37px;padding:7px 0}.news-list time{font-size:10px;color:#797c71;flex:none}.news-list span{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.diary{padding-bottom:34px}.post-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.post-card{min-width:0;background:#fff;border-bottom:1px solid var(--line)}.post-card a{display:block;height:100%}.card-image{width:100%;aspect-ratio:3/2;object-fit:cover}.card-copy{padding:6px 7px}.card-copy h3{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.5}.card-copy p{font-size:10px;text-align:right;color:#7d7e76}.empty-state{font-size:13px;color:#707366;padding:20px 0;grid-column:1/-1}.recruit{position:relative;isolation:isolate;min-height:128px;display:flex;align-items:center;overflow:hidden;background:var(--green);color:#fff}.recruit-image{position:absolute;inset:0;z-index:-2;height:100%}.reference--recruit{background-size:100% auto;background-position:center 66.065%}.recruit:after{content:"";position:absolute;inset:0 33% 0 0;z-index:-1;background:linear-gradient(90deg,#477640 75%,transparent)}.recruit h2{margin-bottom:9px}.recruit p{font-size:13px;font-weight:700}.recruit-link{font-size:11px;font-weight:700}.facility-group{margin-top:18px;--group:var(--green);scroll-margin-top:24px}.facility-group--disability{--group:var(--teal)}.facility-group--childcare{--group:var(--orange)}.facility-group h3{text-align:center;border-radius:8px 8px 0 0;background:var(--group);color:#fff;padding:5px 10px;font-size:14px}.facility-group ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.facility-group li{border-bottom:1px solid #e0e3d7}.facility-group li:last-child:nth-child(odd){grid-column:1/-1}.facility-group a,.facility-group .is-unlinked{display:block;position:relative;padding:10px 20px 10px 10px;font-size:11px;font-weight:700}.facility-group a:after{content:'▸';position:absolute;right:8px;color:var(--group)}.reference--map{aspect-ratio:700/300;background-size:111.429% auto;background-position:50% 88.65%;border-radius:8px}.access p{font-size:12px;font-weight:600;margin-top:20px}.access .visual:not(.reference){aspect-ratio:7/3}.donation{background:var(--pale);padding-block:30px}.button--donation{border-color:var(--green);min-height:50px;font-size:18px}.site-footer{background:var(--deep-green);color:#fff}.footer-inner{padding-block:25px;display:flex;justify-content:space-between;align-items:end;gap:20px}.footer-name{font-weight:700;font-size:17px;margin-bottom:10px}.footer-inner p:not(.footer-name){font-size:10px;font-weight:600}.instagram{padding:8px}.copyright{text-align:center;background:#494949;color:#c2c2c2;font-size:12px;padding:7px 10px}.footer-menu{padding-bottom:20px;font-size:12px}.footer-menu .menu{display:flex;gap:16px;flex-wrap:wrap}.content-page{min-height:55vh}.content-page h1{font-size:28px;margin-bottom:26px;line-height:1.5}.content-page>.post-grid{margin-top:24px}.entry-content{margin-top:28px;line-height:1.9}.entry-content p,.entry-content ul,.entry-content ol,.entry-content figure,.entry-content table{margin-bottom:1.4em}.entry-content h2,.entry-content h3{margin-top:1.5em;margin-bottom:.7em}.entry-content iframe{max-width:100%}.entry-content:after{content:"";display:table;clear:both}.alignleft{float:left;margin-right:20px}.alignright{float:right;margin-left:20px}.aligncenter{display:block;margin-inline:auto}.wp-caption{max-width:100%}.wp-caption-text,.gallery-caption{font-size:12px}.nav-links{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap;margin-block:30px}.page-numbers{padding:6px 12px;border:1px solid var(--line)}.page-numbers.current{background:var(--green);color:white}.search-form{display:flex;gap:8px;flex-wrap:wrap;margin-block:24px}input,textarea,select{max-width:100%;padding:8px;border:1px solid #9ca58e;border-radius:3px}input[type=submit],button[type=submit]{background:var(--green);color:#fff;border:0;padding:9px 15px;cursor:pointer}.comment-form label{display:block}.comment-form p{margin-bottom:15px}.comment-form-comment textarea{width:100%}.comment-list{padding-left:24px}.comment-body{padding-block:16px;border-bottom:1px solid var(--line)}.bypostauthor{border-left:2px solid var(--green)}.post-date{color:#777;font-size:13px;margin-bottom:12px}.is-unlinked{cursor:default}
/* Explicit width keeps the minimum hero height from expanding narrow screens. */
.hero{width:100%}
/* Stop the image window above the text baked into the supplied mockup. */
.hero-image.reference{height:60%;background-position:center 1.82%}.hero:after{inset:40% 0 0;background:linear-gradient(transparent,#3e7030 32%)}.hero-intro{font-size:clamp(12px,4vw,17px)}
@media(max-width:359px){body{font-size:13px}.hero{min-height:440px}.hero-intro{font-size:14px}.hero h1{font-size:22px}.button{font-size:14px}.service{font-size:14px}.facts>div{padding:12px 10px}.facts h3{font-size:12px}.facility-group ul{column-gap:10px}.facility-group a,.facility-group .is-unlinked{font-size:10px;padding-left:4px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
