/* ================== News section ================== */
.lb-news {
  --news-accent: #0250a0;
  --news-ink: #222;
  --news-text: #444;
  --news-line: #e9ecef;
  --news-pill-bg: #9dcfff68;
  --news-pill-text: #0250a0;
  --news-important-bg: #fff3cd;
  --news-important-text: #8a6d3b;
  background: linear-gradient(180deg, #faf9f6 0, #fff 24px) padding-box;
  padding: clamp(28px, 5vw, 64px) 0 72px;
  /* ← 下方向を少し多めに */
  position: relative;
  overflow: visible;
}


.lb-news__inner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 16px;
}

.lb-news__link {
  display: grid;
  grid-template-columns: auto 120px 1fr;
  gap: 14px;
  align-items: center;
  padding: 16px 0;
  /* ← 均等でスッキリ */
  text-decoration: none;
  color: inherit;
}


.lb-news__head {
  padding-top: 4px;
  margin-bottom: 18px;
}

.lb-news__bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: clamp(20px, 4vw, 36px);
}

.lb-news__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--news-accent);
  font-size: 20px;
  font-weight: 700;
  letter-spacing: .12em;
}

.lb-news__eyebrow::before {
  content: "";
  width: 56px;
  height: 2px;
  background: var(--news-accent);
  border-radius: 2px;
}

.lb-news__title {
  margin: .2rem 0 18px;
  font-weight: 800;
  color: var(--news-ink);
  font-size: clamp(22px, 2.2vw, 28px);
}

/* list */
.lb-news__list {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--news-line);
}

.lb-news__item {
  border-bottom: 1px solid var(--news-line);
}

.lb-news__link {
  display: grid;
  grid-template-columns: auto 120px 1fr;
  gap: 14px;
  align-items: center;
  padding: 18px 0;
  text-decoration: none;
  color: inherit;
}

.lb-news__cat {
  display: inline-block;
  padding: 6px 12px;
  border-radius: 9999px;
  background: var(--news-pill-bg);
  color: var(--news-pill-text);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  white-space: nowrap;
}

@media (max-width: 768px) {
  .lb-news__cat {
    display: inline-block;
    width: auto !important;
    /* 横いっぱい禁止 */
    max-width: max-content;
    /* 内容の幅に縮める */
  }

  .lb-news__eyebrow {
    font-size: 12px;
  }
}

.lb-news__item.is-important .lb-news__cat {
  background: var(--news-important-bg);
  color: var(--news-important-text);
}

.lb-news__date {
  color: #96a09d;
  font-size: 14px;
  white-space: nowrap;
}

.lb-news__ttl {
  color: var(--news-ink);
  line-height: 1.8;
}

.lb-news__link:hover .lb-news__ttl {
  text-decoration: underline;
}

.lb-news__empty {
  color: var(--news-text);
  margin: 12px 0;
}

/* ================== News CTA 修正 ================== */
/* CTAセクション */
/* 親に十分な余白 + スタッキングコンテキスト */
.lb-news__more {
  padding-bottom: 24px;
}

/* CTA を最前面に＆クリック可能に */
.lb-news__cta {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding: 8px 18px;
  font-weight: 700;
  color: var(--news-accent);
  text-decoration: underline;
  z-index: 0;
  font-size: 20px;
}

/* 丸背景 */
.lb-news__cta::after {
  content: "";
  position: absolute;
  right: -18px;
  top: 50%;
  transform: translateY(-50%);
  width: 72px;
  height: 72px;
  border-radius: 999px;
  background: #9dcfff68;
  z-index: -1;
  pointer-events: none;
}

/* responsive */
@media (max-width:640px) {
  .lb-news__link {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .lb-news__date {
    order: 3;
  }
}