/* 提供された水辺の風景を、団体紹介の表紙に。 */
.hero-landscape{position:relative;display:block;isolation:isolate;min-height:750px;max-height:none;background:#203d34;color:#fffef4;overflow:hidden}
.hero-landscape .hero-photo-landscape{position:absolute;inset:0;min-height:0;height:100%;margin:0;z-index:0}
.hero-photo-landscape .hero-photo-open img{width:100%;height:100%;object-fit:cover;object-position:50% 57%}
.hero-photo-landscape::after{inset:0;background:linear-gradient(90deg,rgba(12,36,31,.82) 0%,rgba(15,37,32,.68) 30%,rgba(15,37,32,.25) 61%,rgba(15,37,32,.03) 100%),linear-gradient(0deg,rgba(9,29,24,.32),transparent 45%);z-index:1;pointer-events:none}
.hero-landscape .hero-copy{position:relative;z-index:2;width:min(650px,58%);min-height:750px;padding:60px 0 28px 6%;pointer-events:none;display:flex;flex-direction:column;align-items:stretch}
.hero-landscape .hero-copy a{pointer-events:auto}
.hero-landscape .hero-kicker{margin-top:29px;font-size:12px;letter-spacing:.055em;color:#f4f5e7}
.hero-landscape h1{font-size:clamp(38px,4.35vw,65px);line-height:1.55;letter-spacing:.045em;margin-top:17px;text-shadow:0 2px 18px #0b241f30}
.hero-landscape .eyebrow{color:#e0edb4}
.hero-landscape .eyebrow i{background:var(--lime)}
.hero-landscape .hero-details{flex:1;display:flex;flex-direction:column;align-items:flex-start}
.hero-landscape .hero-description{font-size:13px;line-height:2.15;color:#f0f3e8;margin-top:23px}
.hero-landscape .button.dark{background:var(--lime);color:var(--green);margin-top:25px;min-width:245px}
.hero-landscape .hero-foot{font-size:9px;color:#e0e9d9;max-width:470px;line-height:1.6;gap:20px;padding-top:30px}
.hero-photo-landscape figcaption{left:auto;right:4%;bottom:25px;z-index:2;flex-direction:column;align-items:flex-end;font-size:10px;line-height:1.8;gap:3px;pointer-events:none;text-shadow:0 1px 8px #08251b90}
.hero-photo-landscape figcaption span:first-child{font-size:8px;letter-spacing:.22em;color:#e0edb4}
.hero-photo-landscape .hero-character{top:15px;right:3%;width:150px;z-index:2}
.hero-photo-landscape .hero-character>span{background:#f7f6efeb}
.hero-photo-landscape .hero-photo-open:focus-visible{outline-offset:-5px}
.research-highlight{display:grid;grid-template-columns:200px minmax(0,1fr);align-items:center;gap:40px;margin-top:55px;padding:28px;background:#ebeee1;border:1px solid #d9dfce}
.research-highlight .photo-open{width:200px;aspect-ratio:720/1280;max-height:356px;background:#dbe2d1}
.research-highlight .photo-open img{object-fit:contain}
.research-highlight h3{font-family:var(--serif);font-size:28px;line-height:1.7;font-weight:600;margin:18px 0}
.research-highlight p{font-size:13px;line-height:2.2;color:var(--muted);max-width:600px}
.research-highlight .eyebrow{font-size:9px;line-height:1.8;letter-spacing:.12em}
.research-highlight .small-label{max-width:600px}
.research-highlight:has(.research-photos){grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px}
.research-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0}
.research-photos .photo-open{width:100%;height:356px;max-height:none;aspect-ratio:auto}
.research-photos .photo-open img{object-fit:contain}
@media(max-width:950px){.hero-landscape{min-height:730px}.hero-landscape .hero-copy{min-height:730px;width:66%;padding-top:47px}.hero-landscape h1{font-size:clamp(35px,4.8vw,49px)}.hero-landscape .hero-kicker{font-size:11px;letter-spacing:0}.hero-landscape .hero-description{font-size:12px}.hero-photo-landscape .hero-character{width:125px;right:2%;top:10px}.hero-photo-landscape figcaption{max-width:28%;font-size:9px}.hero-photo-landscape .hero-photo-open img{object-position:58% 57%}.research-highlight{grid-template-columns:170px minmax(0,1fr);gap:28px;padding:24px}.research-highlight .photo-open{width:170px}.research-highlight h3{font-size:25px}.research-highlight p{font-size:12px}}
@media(max-width:560px){.hero-landscape{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:440px auto;min-height:0;overflow:visible;background:var(--paper);color:var(--green)}.hero-landscape .hero-photo-landscape{position:relative;inset:auto;grid-column:1;grid-row:1;min-height:0;height:100%;width:100%;z-index:0}.hero-photo-landscape .hero-photo-open img{object-position:67% 54%}.hero-photo-landscape::after{background:linear-gradient(0deg,rgba(9,32,27,.85),rgba(12,34,29,.3) 72%,rgba(12,34,29,.12))}.hero-landscape .hero-copy{display:contents;min-height:0;width:auto;padding:0}.hero-landscape .hero-heading{position:relative;z-index:2;grid-column:1;grid-row:1;align-self:end;padding:30px 7% 57px;pointer-events:none;color:#fffef4}.hero-landscape .hero-kicker{font-size:11px;line-height:1.9;margin-top:24px;max-width:290px}.hero-landscape h1{font-size:clamp(32px,8.5vw,45px);line-height:1.65;letter-spacing:.02em;margin-top:11px}.hero-landscape .hero-heading .eyebrow{font-size:9px}.hero-landscape .hero-details{position:relative;z-index:1;grid-column:1;grid-row:2;display:flex;min-width:0;background:var(--paper);padding:27px 7% 26px;pointer-events:auto}.hero-landscape .hero-description{color:var(--muted);font-size:12px;line-height:2.2;margin:0}.hero-landscape .button.dark{background:var(--green);color:#fff;min-width:0;width:235px;margin-top:23px;min-height:54px}.hero-landscape .hero-foot{max-width:none;font-size:7px;color:var(--muted);padding-top:25px;flex-direction:row;gap:10px;align-items:center}.hero-photo-landscape figcaption{left:7%;right:7%;bottom:17px;max-width:none;flex-direction:row;align-items:center;font-size:8px;gap:10px}.hero-photo-landscape figcaption span:first-child{font-size:7px;white-space:nowrap}.hero-photo-landscape .hero-character{width:112px;top:0;right:2px}.hero-photo-landscape .hero-character>span{font-size:7px;margin-top:-18px;padding:3px 8px}.research-highlight{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:18px;margin-top:35px;padding:18px}.research-highlight .photo-open{width:100%;max-height:none;aspect-ratio:720/1280}.research-highlight .eyebrow{font-size:8px;letter-spacing:.04em}.research-highlight h3{font-size:20px;line-height:1.7;margin:12px 0}.research-highlight p{font-size:11px;line-height:2}.research-highlight .small-label{font-size:8px;margin-top:15px;padding-top:10px}}
@media(max-width:800px){.research-highlight:has(.research-photos){grid-template-columns:minmax(0,1fr);gap:25px}.research-photos .photo-open{height:340px}}
@media(max-width:560px){.research-highlight:has(.research-photos){gap:22px}.research-photos{gap:10px}.research-photos .photo-open{height:230px;aspect-ratio:auto}.research-highlight:has(.research-photos) h3{font-size:24px}.research-highlight:has(.research-photos) p{font-size:12px}}
