/* 団体名を主役にし、会員資格をその下に整理する。 */
html{scroll-padding-top:145px}
.header{height:132px;gap:22px;padding:0 3.6%}
.site-identity{min-width:0;flex-shrink:0}
.site-identity .brand{gap:12px;align-items:center}
.site-identity .brand img{width:64px;height:64px;flex-shrink:0;object-fit:contain}
.site-identity .brand strong{font-family:var(--sans);font-size:22px;line-height:1.6;font-weight:800;letter-spacing:.015em;white-space:nowrap}
.site-identity .brand strong>span{display:inline}
.site-identity .brand small{font-size:12px;line-height:1.6;margin-top:0;letter-spacing:.05em;font-weight:600}
.brand-affiliations{padding-left:76px;margin-top:1px;display:flex;flex-direction:column;gap:2px;align-items:flex-start}
.brand-affiliations a{font-size:10px;line-height:1.8;color:var(--muted);text-decoration:underline;text-decoration-color:#b5c0ad;text-underline-offset:3px}
.brand-affiliations a:hover{color:var(--green);text-decoration-color:var(--green)}
.brand-affiliations b{font-size:9px;font-weight:600;background:#e9edde;padding:1px 5px;white-space:nowrap;margin-left:3px}
.brand-affiliations i{font-style:normal;font-size:10px}
.header nav{font-size:11px;gap:17px}
.header nav .nav-contact{padding:10px 13px}
.footer-brand{font-size:16px;line-height:1.8}
.footer-brand span{font-size:11px}
.organization a{text-decoration:underline;text-decoration-color:#b5c0ad;text-underline-offset:4px}
.urgent-notice{display:flex;align-items:center;justify-content:center;gap:22px;padding:12px 6%;background:#e6d292;border-bottom:1px solid #c8b474;line-height:1.8;font-size:12px}
.urgent-notice>span{background:var(--green);color:white;padding:3px 13px;font-size:10px;font-weight:700;white-space:nowrap}
.urgent-notice strong{font-size:13px;font-weight:700}
.urgent-notice em{font-size:11px;font-style:normal;white-space:nowrap}
.urgent-notice:hover{background:#eddaa1}
.featured-event{background:#f0e5c6;border-bottom:1px solid #d5c9a5;scroll-margin-top:0}
.featured-event-inner{max-width:1320px;margin:auto;padding:42px 6%;display:grid;grid-template-columns:120px minmax(0,1fr) 265px;gap:32px;align-items:center}
.featured-event-date{border-top:1px solid #a99b6e;border-bottom:1px solid #a99b6e;text-align:center;padding:15px 0;font-family:Arial,var(--sans);line-height:1.5}
.featured-event-date>span{display:block;letter-spacing:.2em;font-size:12px}
.featured-event-date strong{display:block;font-size:39px;letter-spacing:.015em}
.featured-event-date b{display:block;font-family:var(--sans);font-size:11px;font-weight:400;letter-spacing:.2em}
.featured-event-label{display:inline-block;font-size:11px;font-weight:700;color:white;background:var(--green);padding:4px 13px;letter-spacing:.06em}
.featured-event h2{font-family:var(--sans);font-size:28px;font-weight:800;letter-spacing:.015em;line-height:1.6;margin-top:12px}
.featured-event-copy>p{font-size:12px;line-height:2;margin-top:13px}
.featured-event-copy dl{margin:15px 0 0}
.featured-event-copy dl>div{display:grid;grid-template-columns:35px minmax(0,1fr);gap:10px;font-size:11px;line-height:2}
.featured-event-copy dt{font-size:10px;color:#5f684b}
.featured-event-actions .button{margin:0;width:100%;min-width:0;font-size:11px;gap:18px;padding:17px 19px}
.featured-event-detail{display:inline-block;margin-top:16px;font-size:11px;font-weight:600;border-bottom:1px solid #8a956c;padding-bottom:3px}
.featured-event-actions p{font-size:10px;color:#667057;line-height:2;margin-top:15px}
.schedule-preview-list .is-highlighted{background:#f1e6c8;margin:0 -10px;padding:0 10px;border-left:3px solid #a88b39}
.schedule-preview-list .is-highlighted strong{font-weight:800}
.schedule-card-featured{border:2px solid #bfaa65;background:#fffaf0}
.research-highlight:has(.research-photo-single){grid-template-columns:260px minmax(0,1fr);gap:38px}
.research-photo-single{display:block}
.research-photo-single .photo-open{width:100%;height:350px;aspect-ratio:auto;max-height:none}
.research-photo-single .photo-open img{object-fit:contain}
.hero-character>span{font-weight:700}
.related-links{border-top:1px solid var(--line)}
.related-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
.related-link-grid>a{display:flex;flex-direction:column;align-items:flex-start;border:1px solid #cbd4bf;background:#eff2e7;padding:30px;min-width:0}
.related-link-grid>a:hover{background:#e5ebd8}
.related-link-alias{font-size:10px;letter-spacing:.15em;color:#5c713d;font-weight:700}
.related-link-grid h3{font-family:var(--serif);font-weight:600;font-size:25px;line-height:1.8;margin-top:13px}
.related-link-grid p{font-size:12px;color:var(--muted);line-height:2;margin-top:18px}
.related-link-membership{font-size:10px;color:var(--muted);margin-top:9px;line-height:1.9}
.related-link-out{font-size:11px;font-weight:600;border-bottom:1px solid #9bae88;margin-top:23px;padding-bottom:3px}
@media(min-width:1201px) and (max-width:1450px){.header nav{gap:12px;font-size:10px}.header nav .nav-contact{padding:9px 10px}.site-identity .brand strong{font-size:20px}.brand-affiliations a{font-size:9px}}
@media(max-width:1200px){.header{height:136px}.header nav{top:136px}.site-identity .brand strong{font-size:22px}.menu-toggle{flex-shrink:0}.featured-event-inner{grid-template-columns:95px minmax(0,1fr);gap:25px}.featured-event-actions{grid-column:2;display:flex;flex-wrap:wrap;gap:14px 20px;align-items:center}.featured-event-actions .button{width:auto;min-width:255px}.featured-event-actions .featured-event-detail{margin-top:0}.featured-event-actions p{width:100%;margin-top:0}.featured-event-actions p br{display:none}.featured-event h2{font-size:27px}}
@media(max-width:800px){.site-identity .brand strong{font-size:20px}.featured-event-inner{padding:32px 6%}.related-link-grid>a{padding:25px}.related-link-grid h3{font-size:22px}.research-highlight:has(.research-photo-single){grid-template-columns:200px minmax(0,1fr);gap:25px}.research-photo-single .photo-open{height:290px}}
@media(max-width:560px){html{scroll-padding-top:166px}.header{height:156px;padding:0 5%;gap:8px}.header nav{top:156px}.site-identity{min-width:0;flex-shrink:1}.site-identity .brand{gap:8px;align-items:center}.site-identity .brand img{width:43px;height:43px}.site-identity .brand strong{font-size:15px;line-height:1.6;letter-spacing:0;white-space:normal;max-width:210px}.site-identity .brand small{font-size:10px;line-height:1.7;margin-top:2px}.brand-affiliations{padding-left:0;margin-top:8px;gap:3px}.brand-affiliations a{font-size:8px;line-height:1.75}.brand-affiliations b{font-size:7px;margin-left:1px;padding:0 3px}.brand-affiliations i{font-size:8px}.menu-toggle{font-size:9px;padding:7px 8px;gap:6px}.footer-brand{font-size:13px}.footer-brand span{font-size:10px}.urgent-notice{display:grid;grid-template-columns:auto minmax(0,1fr);gap:5px 11px;padding:13px 7%;font-size:11px}.urgent-notice>span{grid-row:1/3;align-self:center;font-size:9px;padding:4px 8px}.urgent-notice strong{font-size:11px;line-height:1.8}.urgent-notice em{grid-column:2;font-size:9px}.featured-event-inner{grid-template-columns:1fr;padding:30px 7%;gap:22px}.featured-event-date{display:flex;align-items:center;justify-content:flex-start;gap:16px;text-align:left;padding:10px 0}.featured-event-date strong{font-size:31px}.featured-event-date>span{font-size:10px}.featured-event-date b{font-size:10px}.featured-event h2{font-size:26px;line-height:1.65;margin-top:13px}.featured-event-label{font-size:10px}.featured-event-copy>p{font-size:12px}.featured-event-copy dl>div{font-size:10px;grid-template-columns:30px minmax(0,1fr);gap:9px}.featured-event-copy dt{font-size:9px}.featured-event-actions{grid-column:1;display:block}.featured-event-actions .button{width:100%;min-width:0;font-size:11px;padding:17px 20px}.featured-event-actions .featured-event-detail{margin-top:16px}.featured-event-actions p{margin-top:12px;font-size:9px}.related-link-grid{grid-template-columns:1fr;gap:18px}.related-link-grid>a{padding:25px 23px}.related-link-grid h3{font-size:24px}.related-link-grid p{font-size:11px}.research-highlight:has(.research-photo-single){grid-template-columns:1fr;gap:23px}.research-photo-single{max-width:240px;margin:auto;width:100%}.research-photo-single .photo-open{height:320px}.schedule-card{scroll-margin-top:166px}}
@media(max-width:560px){.site-identity .brand strong{font-size:14.5px}.site-identity .brand strong>span{display:block;white-space:nowrap}}
