:root{--g:#173f35;--l:#477a5d;--y:#e5b83b;--c:#f6f0e2;--i:#17312b}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--i);background:#fffdf8;font-family:"Yu Gothic","Noto Sans JP",sans-serif;font-size:18px;line-height:1.85}img{max-width:100%;display:block}a{color:inherit}button,input,textarea{font:inherit}
.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;z-index:99;background:#fff;padding:.8rem}
.wrap{width:min(1160px,calc(100% - 48px));margin:auto}
.site-header{height:84px;padding:0 max(24px,calc((100vw - 1160px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #e4ebe7}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand img{width:46px;height:46px;border-radius:50%;object-fit:contain;background:#fff}.brand strong,.brand small{display:block}.brand strong{font:22px serif;color:var(--g)}.brand small{font-size:12px;color:#687871}
.site-header nav{display:flex;gap:28px}.site-header nav a{font-size:15px;font-weight:bold;text-decoration:none}.model{font-size:12px;letter-spacing:.12em;color:#687871}
.hero{height:700px;position:relative;color:#fff;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,31,27,.86),rgba(6,31,27,.48) 42%,transparent 75%)}.hero-copy{position:absolute;left:max(24px,calc((100vw - 1160px)/2));top:50%;transform:translateY(-50%);z-index:2}.hero-copy>p,.label{font-size:14px;letter-spacing:.16em;font-weight:900;color:var(--l)}.hero-copy>p{color:#fff}.hero h1{font:clamp(46px,6vw,82px)/1.2 serif;margin:12px 0}.hero h2{font-size:24px;margin-bottom:26px}.cta,.gallery button,.submit{min-height:48px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:30px;padding:9px 24px;background:var(--y);color:var(--i);font-weight:900;text-decoration:none;cursor:pointer}.ai{position:absolute;right:16px;bottom:14px;background:#0009;padding:5px 9px;font-size:14px;z-index:2}
.alert{display:flex;gap:18px;justify-content:center;align-items:center;padding:14px 24px;background:#fff3cd;font-size:16px}.alert b{color:#8a4d00}.alert a{font-weight:800;white-space:nowrap}
.intro{padding:95px 0 55px;display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.intro h2,.block h2,.history h2,.teacher h2,.gallery h2{font:clamp(34px,4vw,56px)/1.35 serif;margin:0}.intro>p{font-size:20px}
.facts{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid #ccd8d2}.facts div{padding:25px;border-right:1px solid #ccd8d2}.facts div:last-child{border-right:0}.facts small,.facts b{display:block}.facts b{font-size:23px}
.block{padding:100px 0}.heading{display:flex;gap:25px;align-items:flex-start;margin-bottom:42px}.heading em,.history em{font:bold 26px serif;color:var(--y)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.cards article{background:var(--c);padding:30px;border:1px solid #e5dcc6;border-radius:20px}.cards article>i{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:var(--g);color:#fff;font:bold 20px serif}.cards h3{font-size:23px}.cards small{display:block;border-top:1px solid #d6cbb4;padding-top:12px;color:#526960}
.history{background:var(--g);color:#fff;padding:100px 0}.split{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}figure{margin:0}figure img{border-radius:16px}figcaption{font-size:14px;margin-top:7px;color:#61736c}.history figcaption{color:#cad8d2}.history .label{color:#aed0bc}.history ol{list-style:none;padding:0;border-top:1px solid #55766c}.history li{padding:14px 0;border-bottom:1px solid #55766c}.history li b{display:inline-block;width:90px;color:#f3d16d}
.nature{display:grid;grid-template-columns:1.3fr .7fr;gap:36px}.nature img{aspect-ratio:4/3;object-fit:cover}.nature ul{list-style:none;padding:22px 30px;background:#e7f1eb;border-radius:20px}.nature li{padding:14px 0;border-bottom:1px solid #c1d5c9}.nature li:last-child{border-bottom:0}.nature li b{display:block}
.teacher{background:#f3e6bf;padding:70px 0}.teacher img{border-radius:24px;width:100%;aspect-ratio:4/3;object-fit:cover}.teacher blockquote{font:24px/1.75 serif;margin:24px 0}
.two{grid-template-columns:repeat(2,1fr)}
.gallery{background:#e3efea;padding:100px 0}.gallery-head{display:flex;justify-content:space-between;align-items:end;gap:20px}.gallery-head button,#more-wrap button{background:var(--g);color:#fff}.photos{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:36px 0}.photos article{background:#fff;padding:12px;border-radius:15px}.photos article>img{aspect-ratio:1.1;width:100%;object-fit:cover;border-radius:9px}.photos h3{font-size:18px;margin:10px 0 4px}.photos p{font-size:14px;color:#526960;margin:0 0 10px}.votes{display:flex;gap:6px;flex-wrap:wrap}.photos .votes button{font-size:12px;padding:4px 8px;min-height:44px;background:#fff;color:var(--i);border:1px solid #c9d5cf;border-radius:8px}.photos .votes button.active{background:#fff1bd;border-color:var(--y)}#more-wrap{text-align:center;margin-bottom:18px}
.sources{padding:70px 0}.sources h2{font:32px serif}.sources summary{min-height:44px;padding:10px 0;font-weight:bold;cursor:pointer}.sources a{color:#245e51}
footer{padding:45px 0;background:#0e3027;color:#fff}footer .wrap{display:flex;align-items:flex-start;justify-content:space-between;gap:30px}footer p,footer small{font-size:14px;display:block}footer .brand strong{color:#fff}footer .brand small{color:#cbd9d3}.backlink{color:#f4d77c;display:inline-block;margin:8px 0}
dialog{width:min(560px,calc(100% - 40px));border:0;padding:0;background:transparent;max-height:92vh}dialog::backdrop{background:#0a1d19c9}.modal-card{background:#fff;padding:28px;border-radius:22px;position:relative;overflow:auto;max-height:92vh}.modal-card h2{font-size:28px;margin:0 0 16px}.close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:30px;min-width:44px;min-height:44px;cursor:pointer}.modal-card label{display:block;margin:14px 0;font-weight:bold}.modal-card input:not([type=checkbox]),.modal-card textarea{width:100%;min-height:48px;display:block;border:1px solid #9baba4;border-radius:8px;padding:8px}.modal-card textarea{height:90px}.consent{font-weight:400!important;display:grid!important;grid-template-columns:24px 1fr;gap:8px;align-items:start}.small{font-size:15px;color:#526960}.submit{width:100%}
@media(max-width:980px){.model{display:none}}
@media(max-width:800px){body{font-size:18px}.wrap{width:calc(100% - 32px)}.site-header{height:70px;padding:0 16px}.site-header nav{display:none}.hero{height:650px}.shade{background:linear-gradient(0deg,#061f1bdd,transparent 85%)}.hero-copy{left:22px;right:18px;top:auto;bottom:65px;transform:none}.hero h1{font-size:43px}.ai{font-size:12px;left:15px;right:auto}.alert{display:block}.alert>*{display:block;margin:4px 0}.intro,.split,.nature{grid-template-columns:1fr;gap:35px}.intro{padding:65px 0 40px}.facts{grid-template-columns:repeat(2,1fr)}.facts div{padding:18px 13px}.facts div:nth-child(2){border-right:0}.block,.history,.gallery{padding:70px 0}.cards,.two{grid-template-columns:1fr}.photos{grid-template-columns:repeat(2,1fr)}.gallery-head,footer .wrap{display:block}.gallery-head button{margin-top:18px}footer .brand{margin-bottom:18px}.teacher .split{display:flex;flex-direction:column}.teacher img{order:2}}
@media(max-width:420px){.hero h1{font-size:37px}.photos{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* parks-batch-03-align */
.section-head.row{display:flex;align-items:end;justify-content:space-between;gap:16px}
.section-head.row h2{margin-bottom:0}
.section-head.row button,.gallery #more-wrap button{min-height:48px;padding:10px 22px;border-radius:999px;font-weight:800;cursor:pointer;border:2px solid #173f34;background:#173f34;color:#fff}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}
.gallery-card{border:1px solid #dae2dd;border-radius:16px;overflow:hidden;background:#fff}
.gallery-card>img{width:100%;height:180px;object-fit:cover}
.gallery-card h3{padding:0 14px;font-size:19px;margin:10px 0 4px}
.gallery-card>p{padding:0 14px;font-size:15px;color:#5c6c67;margin:0 0 10px}
.votes{display:flex;gap:6px;padding:0 10px 14px}
.gallery-card .votes button{min-height:44px;padding:6px 8px;border:1px solid #dae2dd;border-radius:999px;background:#f6f8f6;color:#19312b;font-size:14px;cursor:pointer}
.gallery-card .votes button.active{background:#fff1bd;border-color:#d5a936}
#more-wrap{text-align:center;margin-top:26px}
.small{font-size:16px;color:#5c6c67}
.gallery.section{max-width:1180px;margin:auto;padding:110px 24px}
.access.section,.access{padding-top:80px;padding-bottom:80px;max-width:1180px;margin:auto;padding-left:24px;padding-right:24px;display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.access h2{margin-bottom:18px}
.access iframe{width:100%;height:420px;border:0;border-radius:24px}
.access ul{padding-left:22px}
.access .primary,.access a.primary,.gallery-teaser a.gallery-link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 22px;border-radius:999px;text-decoration:none;font-weight:800;border:2px solid #d5a936;background:#d5a936;color:#142e27;margin-top:15px}
.gallery-teaser{background:#eef5f1;max-width:1180px;margin:auto;padding:80px 24px}
.gallery-teaser .section-head{margin-bottom:18px}
.gallery-teaser a.gallery-link{margin-top:8px}
.kicker{font-size:15px;font-weight:800;letter-spacing:.16em;color:#d5a936}
footer.site-footer-align,body>footer:last-of-type{background:#112e27;color:#eaf2ee;padding:54px max(24px,calc((100vw - 1180px)/2));display:grid;gap:20px}
footer.site-footer-align .brand,body>footer:last-of-type .brand{display:flex;align-items:center;gap:10px}
footer.site-footer-align .brand strong,body>footer:last-of-type .brand strong{color:#fff;font-size:21px}
footer.site-footer-align .brand small,body>footer:last-of-type .brand small{color:#cbd9d3;font-size:14px}
footer.site-footer-align .sources,body>footer:last-of-type .sources{display:flex;gap:18px;flex-wrap:wrap;font-size:15px}
footer.site-footer-align .sources a,body>footer:last-of-type .sources a,footer.site-footer-align .backlink,body>footer:last-of-type .backlink{color:#f4d77c}
footer.site-footer-align>small,body>footer:last-of-type>small{font-size:14px}
dialog{width:min(620px,calc(100% - 36px));border:0;padding:0;background:transparent;max-height:92vh}
dialog::backdrop{background:#0b201bbd}
.modal-card{background:#fff;border-radius:24px;padding:32px;width:100%;position:relative;overflow:auto;max-height:92vh}
.modal-card h2{font-size:32px;margin:0 0 20px}
.modal-card label{display:grid;gap:6px;margin:14px 0;font-weight:800}
.modal-card input,.modal-card textarea{border:1px solid #aebcb5;border-radius:10px;padding:10px;min-height:48px;width:100%}
.modal-card textarea{min-height:90px}
.modal-card .consent{grid-template-columns:24px 1fr;font-weight:400}
.modal-card .consent input{min-height:auto;width:auto}
.close{position:absolute;right:18px;top:14px;border:0;background:none;font-size:34px;min-width:44px;min-height:44px;cursor:pointer}
.submit{width:100%;min-height:48px;border:0;border-radius:999px;background:#173f34;color:#fff;font-weight:800;cursor:pointer}
@media(max-width:800px){.access.section,.access,.gallery-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.access iframe{height:330px}.section-head.row{flex-direction:column;align-items:flex-start}}
@media(max-width:480px){.gallery-grid{grid-template-columns:1fr}}
