/* Company / News / article template / 404. Figma 463:258, 466:285, 466:359, 465:358. */
.information-section { position: relative; color: var(--ink); }
.information-section.dark-section { color: #fff; }
.information-inner { width: 100%; max-width: 1440px; margin-inline: auto; padding: 120px 40px; }
.information-title { font: 700 clamp(76px, 9.7222vw, 140px)/1 var(--font-en); letter-spacing: -.02em; }
.information-heading { display: flex; flex-direction: column; gap: 20px; }
.information-subtitle { font-size: 20px; font-weight: 700; line-height: 1.7; }
.information-button { display: flex; align-items: center; justify-content: space-between; flex-shrink: 0; width: 336px; max-width: 100%; min-height: 66px; padding: 18px 32px; border-radius: 33px; background: var(--ink); color: #fff; font-size: 16px; font-weight: 700; line-height: 1.5; }
.information-button-light { background: #fff; color: var(--ink); }
.information-button-arrow { display: inline-block; flex-shrink: 0; font: 500 20px/1.2 var(--font-en); transition: transform 240ms cubic-bezier(.22,1,.36,1); }
.information-button:is(:hover,:focus-visible) .information-button-arrow { transform: translateX(6px); }
.information-text-link { text-decoration-thickness: 1px; text-underline-offset: .24em; }
.information-text-link:is(:hover,:focus-visible) { text-decoration-line: underline; }

.company-information-inner { display: flex; flex-direction: column; gap: 80px; }
.company-information { margin: 0; border-block: 1px solid rgb(0 7 31 / 15%); }
.company-information-row { display: grid; grid-template-columns: minmax(0,320fr) minmax(0,960fr); gap: 80px; padding-block: 32px; font-size: 24px; }
.company-information-row + .company-information-row { border-top: 1px solid rgb(0 7 31 / 15%); }
.company-information dt { font-weight: 700; line-height: 1.6; }
.company-information dd { margin: 0; line-height: 41px; overflow-wrap: anywhere; }
.company-message-inner { display: flex; flex-direction: column; gap: 72px; }
.company-message-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 80px; }
.company-message-grid h3 { font-size: 48px; font-weight: 700; line-height: 1.5; }
.company-message-content { display: flex; flex-direction: column; gap: 36px; align-items: flex-start; }
.company-message-copy { max-width: 600px; font-size: 16px; line-height: 2.2; }
.company-message-copy p + p { margin-top: 2.2em; }

.information-news-inner { display: flex; flex-direction: column; gap: 64px; }
.information-news-intro { font-size: 20px; line-height: 1.8; }
.information-news-empty { display: flex; flex-direction: column; align-items: center; gap: 28px; padding-block: 64px 40px; text-align: center; }
.information-news-empty h2 { max-width: 1200px; font-size: 36px; line-height: 1.5; }
.information-news-empty p { max-width: 1200px; color: rgb(0 7 31 / 85%); font-size: 18px; line-height: 2; }
.information-news-empty .information-button { text-align: left; }

.information-article { display: flex; flex-direction: column; align-items: flex-start; gap: 36px; width: min(1120px,100%); margin-inline: auto; }
.information-article > :not(.information-button) { width: 100%; }
.information-article-date { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 20px; font: 500 16px/26px var(--font-en); color: rgb(0 7 31 / 85%); }
.information-draft-label { font: 500 12px/24px var(--font-ja); color: rgb(0 7 31 / 60%); }
.information-article-title { font-size: 64px; line-height: 93px; }
.information-article-rule { margin: 0; height: 1px; border: 0; background: rgb(0 7 31 / 15%); }
.information-article-text { font-size: 18px; line-height: 38px; }
.information-article-heading { font-size: 32px; line-height: 51px; }
.information-article-image-placeholder { display: grid; place-items: center; aspect-ratio: 16 / 9; padding: 24px; background: rgb(0 7 31 / 6%); color: rgb(0 7 31 / 85%); text-align: center; font-size: 20px; font-weight: 700; line-height: 1.6; }

.information-not-found-inner { display: flex; flex-direction: column; align-items: center; gap: 48px; }
.information-not-found-message { width: min(1120px,100%); font-size: 22px; line-height: 42px; text-align: center; }
.information-not-found-navigation { display: flex; justify-content: center; align-items: center; gap: 40px; width: min(800px,100%); }
.information-service-link { width: 220px; max-width: 100%; font-size: 16px; font-weight: 700; line-height: 1.8; }

@media (min-width: 768px) and (max-width: 1199px) {
  .company-information-row { gap: 48px; font-size: 20px; }
  .company-information dd { line-height: 1.7; }
  .company-message-grid { gap: 48px; }
  .company-message-grid h3 { font-size: clamp(26px,3.3333vw,40px); }
}

@media (max-width: 767px) {
  .information-inner { padding: 80px 24px 88px; }
  .information-title { font-size: clamp(44px,12.2vw,88px); letter-spacing: -.02em; }
  .information-heading { gap: 24px; }
  .information-subtitle { font-size: 16px; line-height: 1.5; }
  .information-button { min-height: 60px; padding-inline: 26px; font-size: 15px; }
  .company-information-inner { gap: 48px; }
  .company-information-row { grid-template-columns: 1fr; gap: 12px; padding-block: 26px; font-size: 16px; }
  .company-information dt { line-height: 1.7; }
  .company-information dd { line-height: 1.9; }
  .company-message-inner { gap: 40px; }
  .company-message-grid { grid-template-columns: 1fr; gap: 32px; }
  .company-message-grid h3 { font-size: clamp(22px,5.85vw,36px); line-height: 1.65; }
  .company-message-content { gap: 32px; }
  .company-message-copy { font-size: 14px; line-height: 2.1; }
  .company-message-copy p + p { margin-top: 1.7em; }
  .information-news-inner { gap: 40px; }
  .information-news-intro { font-size: 16px; }
  .information-news-empty { gap: 24px; padding-block: 32px 20px; }
  .information-news-empty h2 { font-size: 23px; line-height: 1.6; }
  .information-news-empty p { font-size: 14px; }
  .information-article { gap: 28px; }
  .information-article-date { font-size: 14px; }
  .information-article-title { font-size: 34px; line-height: 1.5; }
  .information-article-text { font-size: 16px; line-height: 2; }
  .information-article-heading { font-size: 24px; line-height: 1.6; }
  .information-article-image-placeholder { font-size: 15px; }
  .information-not-found-inner { gap: 36px; }
  .information-not-found-message { font-size: 16px; line-height: 1.9; }
  .information-not-found-navigation { flex-direction: column; gap: 24px; }
  .information-service-link { width: auto; font-size: 15px; text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
  .information-button-arrow { transition: none; }
  .information-button:is(:hover,:focus-visible) .information-button-arrow { transform: none; }
}
html[data-motion-paused='true'] .information-button-arrow { transition: none; transform: none; }
