*{box-sizing:border-box}:root{--font-body:16px;--font-meta:13px;--font-nav:17.71px;--font-section:39px;--font-page:50px;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:40px;--space-5:50px;--content:1140px;--ink:#2A2F30;--muted:#7A7A7A;--focus:#005fcc}html{scroll-behavior:smooth}body{margin:0;font-family:"Open Sans",Arial,"Noto Sans JP",sans-serif;color:var(--ink);font-size:var(--font-body);font-weight:400;line-height:1.55}a{text-decoration:none;color:inherit}img{display:block;max-width:100%;height:auto}.wrap{width:min(var(--content),calc(100% - 40px));margin:auto}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.button{display:inline-flex;align-items:center;justify-content:center;border-radius:3px;font-weight:700}.button-dark{background:#2A2F30;color:#fff}
/* Shared header */
.site-header{position:relative;z-index:20;background:#fff;width:100%}.site-shell{height:104px;display:flex;align-items:center;width:fit-content;max-width:calc(100% - 40px);margin:0 auto}.site-brand{height:100%;display:flex;align-items:center;justify-content:center;flex:0 0 auto;margin-right:52.8px}.site-brand img{width:auto;height:70px;max-height:70px;max-width:none;margin:0}.site-nav{height:100%;display:flex;align-items:center;gap:30.8px;flex:0 0 auto;padding:0;margin:0}.site-nav a{display:block;padding:0;margin:0;color:#7A7A7A;font-size:var(--font-nav);font-weight:600;line-height:1.2;white-space:nowrap}.site-nav a:hover{color:#2A2F30}.site-login{flex:0 0 auto;width:104px;height:38px;margin-left:52.8px;padding:0;font-size:var(--font-meta)}.mobile-toggle{display:none}
/* Home */
.hero{margin-top:-10px;min-height:405px;padding:82px 0 58px;background:url('/uploads/2026-09-19/mid-image022.jpg') center top/cover no-repeat;text-align:center}.hero h1{font-size:var(--font-page);line-height:1.25;font-weight:800;margin:0}.hero p{max-width:920px;margin:22px auto 28px;text-align:center}.hero .more{display:inline-block;margin-top:30px;background:#6C355A;color:#fff;padding:15px 35px;border-radius:3px;font-size:13px;font-weight:700}.home-content{background:#FAFAFA;padding:50px 0 100px}.feature{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:center}.feature+.feature{padding-top:50px}.feature-copy{padding-right:90px}.feature.reverse .feature-copy{padding:0 20px 0 50px}.feature h2{font-size:var(--font-section);line-height:1.25;font-weight:800;margin:0 0 20px}.feature p{margin:0 0 18px}.feature ul{list-style:none;padding:0;margin:22px 0}.feature li{position:relative;padding-left:24px;display:flex;align-items:center;min-height:30px;margin:8px 0}.feature li:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid #f2b632}.feature img{width:100%;max-width:512px}.feature.reverse img{justify-self:start}
/* About */
.about-hero{background:url('/uploads/2026-09-19/mid-image026.jpg') center top/cover no-repeat;min-height:405px;padding:82px 0 58px;color:#2A2F30;text-align:center}.about-hero h1{font-size:var(--font-page);line-height:1.2;margin:0 0 20px;font-weight:800}.about-hero p{font-size:16px;line-height:1.8;max-width:920px;margin:0 auto;text-align:center}.about-body{background:#F3F4F6;padding:80px 0 40px}.about-row{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;margin:0 0 90px}.about-row img{width:100%;max-width:512px;height:auto}.about-row h3{font-size:40px;line-height:1.3;margin:0 0 24px}.about-row p{margin:0;line-height:1.9}.about-row h4{font-size:20px;margin:28px 0 8px}.about-row-reverse div{order:1}.about-row-reverse img{order:2}
/* News */
.news-page{background:#fff;padding:22px 0 72px}.news-page .wrap{width:min(731px,calc(100% - 40px));margin-left:auto;margin-right:auto}.news-title{text-align:center;font-size:27.2px;line-height:1.2;font-weight:800;margin:0 0 22px}.news-cards{width:100%;max-width:731px;margin:0 auto 44px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:37px;row-gap:32px}.news-cards:has(.card:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr));column-gap:25.5px}.news-cards .card{display:block;width:100%;min-width:0}.news-cards .card-link{display:block;width:100%;height:100%}.news-cards .card img{width:100%;height:auto;aspect-ratio:750/420;object-fit:cover;margin:0 0 15px}.news-cards .card-body{padding:0}.news-cards .tag{display:inline-block;color:#fff;font-size:11px;line-height:15px;font-weight:700;padding:0 2px;margin:0 0 4px}.news-cards .tag.notice{background:#f04b23}.news-cards .tag.report{background:#05b7d5}.news-cards .card h3{font-size:14.5px;line-height:1.55;font-weight:700;color:#999;margin:0 0 6px}.news-cards .date{font-size:11px;color:#999;margin-top:3px}.news-list{width:100%;max-width:731px;margin:0 auto}.news-list h2{height:48px;background:#2dc8d6;color:#172f3d;display:flex;align-items:center;padding:0 20px;font-size:19.5px;font-weight:800;margin:0}.news-row{min-height:44px;display:grid;grid-template-columns:145px 1fr;align-items:center;padding:0 20px;border:0;font-size:13.6px;line-height:1.4;color:#000}.news-row:nth-of-type(odd){background:#f7f7f7}.news-row time{font-weight:400;color:#999;font-size:13.6px}.archives-wrap{text-align:right;margin-top:12px}.archives-button{display:inline-block;background:#2A2F30;color:#fff;padding:8.5px 19px;font-size:12px}.news-archive{max-width:731px;margin:40px auto 80px}.news-archive h1{text-align:center;font-size:38px}.news-archive .news-row{border-bottom:1px solid #eee}
/* Contact */
.contact-hero{background:url('/uploads/2026-09-19/mid-image026c.jpg') center top/cover no-repeat;min-height:500px;padding:35px 0 42px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}.contact-copy{padding-top:28px}.contact-copy h1{font-size:42px;line-height:1.25;margin:0 0 18px;font-weight:800}.contact-copy p{line-height:1.8}.contact-layout form{padding:0 50px}.contact-layout .field{margin-bottom:9px}.contact-layout label{display:block;font-size:16px;font-weight:600;margin-bottom:3px}.contact-layout input,.contact-layout textarea{width:100%;box-sizing:border-box;background:#ffffff7d;border:1px solid #76787f;border-radius:5px;padding:8px 10px;font:inherit}.contact-layout input{height:38px}.contact-layout textarea{height:90px;min-height:90px;resize:vertical}.contact-layout .submit{background:#ED4C09;color:#fff;border:0;border-radius:3px;padding:11px 52px;font:700 13px "Open Sans",sans-serif}
/* Simple placeholder pages */
.placeholder{padding:100px 20px;text-align:center}
/* Shared footer */
.site-footer{width:100%;height:108px;min-height:108px;background:#efefef;padding:0;margin:0}.site-footer-inner{width:min(1140px,calc(100% - 40px));height:108px;margin:0 auto;display:flex;align-items:center;justify-content:flex-start}.site-social{display:flex;align-items:center;gap:5px}.site-social-link{width:34px;height:34px;display:flex;align-items:center;justify-content:center;padding:0;margin:0;background:#2A2F30;border-radius:10%;color:#fff}.site-social-link img{display:block;width:17px;height:17px;object-fit:contain}

/* Responsive behavior: desktop design is preserved; layouts adapt without changing content order. */
@media (max-width:1024px){
  .site-shell{width:min(100% - 30px,900px)}
  .site-brand{margin-right:28px}.site-login{margin-left:28px}.site-nav{gap:20px}.site-nav a{font-size:15px}
  .news-cards:has(.card:nth-child(3)){grid-template-columns:repeat(2,minmax(0,1fr))}
  .feature-copy{padding-right:40px}.feature.reverse .feature-copy{padding-left:30px}
}
@media (max-width:767px){
  :root{--font-page:30px;--font-section:25px}
  .site-shell{height:86px;width:min(100% - 30px,1140px);display:grid;grid-template-columns:1fr auto;position:relative}
  .site-brand{justify-content:flex-start;margin:0}.site-brand img{height:54px;max-height:54px;width:auto}
  .mobile-toggle{display:block;grid-column:2;grid-row:1;border:0;background:transparent;font-size:25px;padding:12px;cursor:pointer;color:var(--ink)}
  .site-nav{display:none;position:absolute;top:86px;left:-15px;right:-15px;height:auto;background:#fff;padding:8px 20px 18px;box-shadow:0 8px 18px rgba(0,0,0,.08);flex-direction:column;align-items:stretch;gap:0;z-index:30}
  .site-nav.is-open{display:flex}.site-nav a{font-size:16px;padding:13px 4px;border-bottom:1px solid #eee}
  .site-login{display:none}.menu-open{overflow:hidden}
  .hero{min-height:390px;padding:60px 10px 70px}.hero h1,.about-hero h1{font-size:var(--font-page)}
  .feature,.about-row,.contact-layout,.news-cards,.news-cards:has(.card:nth-child(3)){grid-template-columns:1fr}
  .feature-copy,.feature.reverse .feature-copy{padding:20px 10px}.feature.reverse img{order:2}
  .about-hero{min-height:390px;padding:60px 10px 70px}.about-hero p{font-size:15px}.about-row{gap:25px;margin-bottom:60px}.about-row-reverse div{order:2}.about-row-reverse img{order:1}.about-row h3{font-size:var(--font-section)}
  .contact-hero{min-height:0;padding:40px 10px 60px}.contact-layout{gap:20px}.contact-copy h1{font-size:var(--font-section)}.contact-layout form{padding:0}
  .news-page .wrap,.news-list,.news-cards{width:min(100% - 20px,731px)}.news-cards{gap:42px}.news-cards .card img{margin-bottom:18px}.news-row{grid-template-columns:1fr;gap:5px;padding:14px 18px;font-size:16px}.news-row time{font-size:16px}.news-list h2{font-size:24px;height:64px;padding:0 18px}
  .site-footer,.site-footer-inner{height:90px;min-height:90px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* Inactive navigation items: visible but clearly unavailable, without misleading motion. */
.site-nav .nav-disabled{
  display:inline-flex;
  align-items:center;
  color:inherit;
  font:inherit;
  line-height:inherit;
  opacity:.45;
  cursor:not-allowed;
  user-select:none;
}

/* Reusable news article component */
.article-page{padding:42px 0 72px;background:#fff}
.article-page .wrap{width:min(750px,calc(100% - 40px));margin:0 auto}
.news-article-header{margin-bottom:24px}
.news-article-header .tag{display:inline-block;color:#fff;font-size:11px;line-height:15px;font-weight:700;padding:0 3px;margin-bottom:8px}
.news-article-header .tag.notice{background:#f04b23}.news-article-header .tag.report{background:#05b7d5}
.news-article-header h1{font-size:clamp(24px,3vw,34px);line-height:1.4;margin:0 0 8px;font-weight:800}
.news-article-header time{font-size:13px;color:#888}
.news-article-image{display:block;width:100%;height:auto;margin:0 0 28px;object-fit:cover}
.news-article-body{font-size:16px;line-height:1.9}
.news-article-body p{margin:0 0 16px}
.article-external-link{text-decoration:underline;text-underline-offset:3px}
.content-error{padding:30px 0;text-align:center}

.article-lead{font-weight:700;font-size:18px}
.news-article-body h2{font-size:24px;line-height:1.45;margin:38px 0 16px}
.legacy-number-list{margin:18px 0 32px}.legacy-number-list p{margin:7px 0}
.article-profile{display:grid;grid-template-columns:250px 1fr;gap:28px;align-items:start;margin:40px 0}
.article-profile img{display:block;width:100%;height:auto}
.article-profile h3{font-size:18px;margin:0 0 12px}.article-profile p{margin:0}
@media(max-width:640px){.article-profile{grid-template-columns:1fr}.article-profile img{width:min(250px,70vw);margin:0 auto}.news-article-body h2{font-size:21px}}

/* v21 article refinements */
.news-article-body{font-size:15px;line-height:1.8}
.article-lead{font-size:15px;white-space:nowrap;font-weight:700}
.legacy-number-list{margin:12px 0 26px}
.legacy-number-list p{margin:2px 0;line-height:1.6}
.article-profile .profile-quote{font-style:italic}
.article-profile:first-of-type{grid-template-columns:1fr 250px}
.article-profile:first-of-type img{grid-column:2;grid-row:1}
.article-profile:first-of-type>div{grid-column:1;grid-row:1}
.article-inline-link,.article-external-link{color:#087aa2;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;font-weight:600}
.article-inline-link:hover,.article-external-link:hover{text-decoration-thickness:2px}
.article-subheading{font-size:17px;line-height:1.65;margin:10px 0 26px;font-weight:700}
.article-image-caption{font-size:12px;color:#777;line-height:1.5;margin-top:-20px;margin-bottom:26px}
@media(max-width:800px){.article-lead{white-space:normal}}
@media(max-width:640px){
 .article-profile:first-of-type{grid-template-columns:1fr}
 .article-profile:first-of-type img,.article-profile:first-of-type>div{grid-column:1;grid-row:auto}
 .article-profile:first-of-type img{order:0}
}

/* v22 article metadata, image caption and source links */
.article-meta-space{white-space:pre}
.news-article-figure{margin:0 0 28px}
.news-article-figure .news-article-image{margin-bottom:0}
.news-article-figure figcaption{font-size:12px;line-height:1.5;color:#777;margin-top:6px}
.article-source-links{margin-top:30px}
.article-source-links p{margin:5px 0}
.article-source-links p:first-child{font-weight:600;margin-bottom:8px}
.article-source-links a{color:#087aa2;text-decoration:none;font-weight:400}
.article-source-links a:hover,.article-source-links a:focus{text-decoration:none;opacity:.75}

/* v24: standardized typography across all News article pages */
.news-article,
.news-article-body,
.news-article-body p,
.news-article-body .legacy-number-list,
.news-article-body .article-profile,
.news-article-body .article-source-links {
  font-family: "Open Sans", Arial, "Noto Sans JP", sans-serif;
  font-size: 15px;
  line-height: 1.8;
  font-weight: 400;
  color: #2a2f30;
}
.news-article-body .article-lead {
  font-family: inherit;
  font-size: 15px;
  line-height: 1.8;
  font-weight: 700;
  color: #2a2f30;
}
.news-article-body .profile-quote {
  font-family: inherit;
  font-size: 15px;
  line-height: 1.8;
  font-weight: 400;
  color: #2a2f30;
  font-style: italic;
}
.news-article-body h2,
.news-article-body h3,
.news-article-body .article-subheading {
  font-family: "Open Sans", Arial, "Noto Sans JP", sans-serif;
  color: #2a2f30;
}

/* v26: restored About-page yellow callout boxes */
.about-callouts{padding:34px 0 42px;background:#fff}
.about-callouts-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.about-callout{background:#f5c400;min-height:150px;padding:28px 34px;display:flex;flex-direction:column;justify-content:center}
.about-callout h4{font-family:"Open Sans",Arial,"Noto Sans JP",sans-serif;font-size:20px;line-height:1.4;font-weight:700;color:#2a2f30;margin:0 0 12px}
.about-callout p{font-family:"Open Sans",Arial,"Noto Sans JP",sans-serif;font-size:15px;line-height:1.8;color:#2a2f30;margin:0}
@media(max-width:700px){.about-callouts-grid{grid-template-columns:1fr;gap:18px}.about-callout{min-height:auto;padding:24px}}

/* v29 CMS article layout blocks */
.article-richtext p,.article-media-copy p{margin:0 0 1.15em}
.article-richtext ul,.article-richtext ol,.article-media-copy ul,.article-media-copy ol{margin:0 0 1.2em 1.5em}
.article-richtext blockquote,.article-media-copy blockquote{margin:1.2em 0;padding:.2em 0 .2em 18px;border-left:3px solid #f5c400}
.article-richtext a,.article-media-copy a{color:#087aa2;text-decoration:underline}
.richtext-image{display:block;max-width:100%;height:auto;margin:22px auto}
.article-media-block{display:grid;gap:28px;align-items:start;margin:30px 0}
.article-media-block figure{margin:0}
.article-media-block figure img{display:block;width:100%;height:auto}
.article-media-block figcaption{font-size:13px;line-height:1.6;color:#777;margin-top:8px}
.article-media-block.media-small{--media-width:180px}
.article-media-block.media-medium{--media-width:250px}
.article-media-block.media-large{--media-width:340px}
.article-media-block.media-right{grid-template-columns:minmax(0,1fr) var(--media-width)}
.article-media-block.media-right figure{grid-column:2;grid-row:1}
.article-media-block.media-right .article-media-copy{grid-column:1;grid-row:1}
.article-media-block.media-left{grid-template-columns:var(--media-width) minmax(0,1fr)}
.article-media-block.media-center,.article-media-block.media-full{display:block}
.article-media-block.media-center figure{max-width:var(--media-width);margin:0 auto 20px}
.article-media-block.media-full figure{width:100%;margin:0 0 20px}
@media(max-width:700px){
 .article-media-block.media-right,.article-media-block.media-left{display:flex;flex-direction:column}
 .article-media-block.media-right figure,.article-media-block.media-left figure{order:0;width:min(100%,var(--media-width));margin:0 auto}
 .article-media-block.media-right .article-media-copy,.article-media-block.media-left .article-media-copy{order:1;width:100%}
}

/* v31: Home/About mid-image rollover support */
img[data-hover-src]{transition:opacity .16s ease}
@media (prefers-reduced-motion:reduce){img[data-hover-src]{transition:none}}
