@charset "UTF-8";
@import url("policy.css?v=20260729-desktop-header-balance-v2");

.news-page { padding-top: 180px; background: #f8f6f0; overflow-x: clip; }
.news-page main { overflow: clip; }
.news-intro .policy-intro__title { transform: translateX(0); }
.news-intro .policy-intro__lead { max-width: 760px; }
.news-intro__elephant,.news-intro__balloon,.news-intro__bird,.news-intro__butterfly,.news-intro__flower { position: absolute; }
.news-intro__elephant { left: 16px; bottom: 18px; width: 148px; }
.news-intro .news-intro__balloon--1 { right: 70px; bottom: 110px; width: 48px; }
.news-intro .news-intro__balloon--2 { right: 8px; bottom: 135px; width: 42px; }
.news-intro .news-intro__bird--1 { right: 98px; bottom: 20px; width: 62px; }
.news-intro__butterfly { right: 24px; bottom: 54px; width: 42px; }
.news-intro__flower { left: 176px; bottom: 18px; width: 34px; }

.news-archive { position: relative; padding: 72px 0 120px; background: #fff; }
.news-archive::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 26px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 26' preserveAspectRatio='none'%3E%3Cpath fill='%23f8f6f0' d='M0 0h1440v20c-80 0-160-16-240-16s-160 16-240 16S800 4 720 4 560 20 480 20 320 4 240 4 80 20 0 20V0z'/%3E%3C/svg%3E") center/100% 100% no-repeat;
}
.news-archive__inner { width: min(1040px, calc(100% - 80px)); margin: 0 auto; }
.news-filter { display: flex; justify-content: center; gap: 12px; margin-bottom: 44px; }
.news-filter button { min-width: 135px; padding: 11px 22px; border: 1.5px solid #7bc743; border-radius: 999px; background: #fff; color: #4e604f; font: 700 14px/1.4 var(--font-round); cursor: pointer; transition: .2s ease; }
.news-filter button:hover,.news-filter button.is-active { background: #7bc743; color: #fff; }
.news-filter-select { display: none; }
.news-archive__list { border-top: 2px solid #dfe6da; }
.news-archive__empty { margin: 0; padding: 40px 20px; text-align: center; }
.news-row { display: grid; grid-template-columns: 125px 112px minmax(0,1fr) 24px; align-items: center; gap: 20px; min-height: 92px; padding: 18px 20px; border-bottom: 1px dotted #c8cbbb; color: #48564d; font-family: var(--font-round); transition: background .2s ease; }
.news-row:hover { background: #f3f8eb; }
.news-row time { color: #778078; font-size: 14px; font-weight: 700; letter-spacing: .03em; }
.news-row__badge { padding: 6px 10px; border-radius: 6px; color: #fff; font-size: 12px; font-weight: 700; text-align: center; white-space: nowrap; }
.news-row__badge--common { background: #7898c8; }.news-row__badge--hoshioka { background: #ef9dbc; }.news-row__badge--sanbancho { background: #efb148; }
.news-row__title { font-size: 16px; font-weight: 700; letter-spacing: .04em; }
.news-row__arrow { color: #72c347; font-size: 28px; line-height: 1; transition: transform .2s ease; }
.news-row:hover .news-row__arrow { transform: translateX(4px); }
.news-pagination { display: flex; justify-content: center; gap: 9px; margin-top: 48px; }
.news-pagination a { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid #d6ddcf; border-radius: 50%; background: #fff; color: #566257; font-family: var(--font-round); font-weight: 700; }
.news-pagination a:hover,.news-pagination a.is-current { border-color: #7bc743; background: #7bc743; color: #fff; }
.news-row[hidden] { display: none; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.sp-only { display: none; }
.news-page .fixed-news-link[aria-current="page"] { background: #70c346; }
.news-page .fixed-news-link[aria-current="page"]:hover,
.news-page .fixed-news-link[aria-current="page"]:focus-visible { background: #ffcd37; }

@media (max-width: 900px) {
  .news-page { padding-top: 124px; }
  .news-hero { min-height: 300px; padding: 28px 0 62px; }
  .news-hero__inner,.news-archive__inner { width: min(100% - 36px,720px); }
  .news-hero .breadcrumb { margin-bottom: 38px; }
  .news-hero__heading > img { width: 78px; height: 78px; }
  .news-hero h1 { font-size: 38px; }
  .news-filter { flex-wrap: wrap; }
  .news-row { grid-template-columns: 100px 90px minmax(0,1fr) 20px; gap: 12px; padding-inline: 10px; }
}
@media (max-width: 600px) {
  .news-intro { padding-top: 12px; }
  .news-intro .breadcrumb { display: none; }
  .news-hero { min-height: 270px; padding-top: 20px; }
  .news-hero__pattern { opacity: .55; }
  .news-hero__heading { justify-content: flex-start; gap: 16px; }
  .news-hero__heading > img { width: 64px; height: 64px; }
  .news-hero h1 { font-size: 32px; }
  .news-hero__heading div > p:last-child { font-size: 12.5px; }
  .sp-only { display: block; }
  .news-archive { padding: 24px 0 95px; }
  .news-filter { display: none; }
  .news-filter-select { position: relative; display: block; margin-bottom: 30px; }
  .news-filter-select::before { content: ""; position: absolute; top: 50%; right: 10px; z-index: 1; width: 28px; height: 28px; border-radius: 50%; background: #70bf45; transform: translateY(-50%); pointer-events: none; }
  .news-filter-select::after { content: ""; position: absolute; top: 50%; right: 20px; z-index: 2; width: 7px; height: 7px; border-right: 2px solid #fff; border-bottom: 2px solid #fff; transform: translateY(-70%) rotate(45deg); pointer-events: none; }
  .news-filter-select select { width: 100%; height: 48px; padding: 0 52px 0 18px; border: 2px solid #70bf45; border-radius: 10px; outline: 0; appearance: none; -webkit-appearance: none; background: #fff; color: #34413a; font-family: var(--font-round); font-size: 14px; font-weight: 700; letter-spacing: .04em; }
  .news-row { grid-template-columns: 1fr auto; gap: 8px 10px; min-height: 0; padding: 19px 5px; }
  .news-row time { font-size: 12px; }
  .news-row__badge { justify-self: start; grid-column: 2; grid-row: 1; padding: 4px 9px; font-size: 10px; }
  .news-row__title { grid-column: 1 / -1; font-size: 14px; line-height: 1.7; }
  .news-row__arrow { display: none; }
}
