/* Company declaration and recruitment documents, September 2026. */
.consumer-declaration__title {
  font-family: "Noto Serif", serif;
  font-size: 3.8em;
  font-weight: 400;
  line-height: 1.4;
}

.consumer-declaration__subtitle {
  margin-top: 34px;
  font-family: "Noto Serif", serif;
  font-size: 2.3em;
  font-weight: 700;
}

/* Match the full-width digits used in the ISO/EA21 policy text. */
@counter-style consumer-declaration-decimal {
  system: numeric;
  symbols: "０" "１" "２" "３" "４" "５" "６" "７" "８" "９";
  suffix: ". ";
}

.consumer-declaration__list {
  margin: 5px 0 0;
  padding-left: 1.6em;
  list-style: consumer-declaration-decimal;
  font-family: inherit;
  font-size: 1.5em;
}

.consumer-declaration__list li::marker {
  font-weight: 400;
}

.consumer-declaration__list h5,
.consumer-declaration__list p {
  margin: 0;
  font-family: inherit;
  font-size: 1em;
  line-height: 2;
}

.consumer-declaration__list h5 {
  font-weight: 700;
}

.recruit__actions {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.recruit__actions .graduate__btn {
  height: 95px;
}

.recruit__pdf_btn {
  max-width: 100%;
  padding: 0 50px;
  font-size: 2.1em;
  letter-spacing: 0.05em;
  text-align: center;
  line-height: 1.6;
}

.recruit__pdf_format {
  font-size: 0.75em;
  white-space: nowrap;
}

.graduate .graduate__btn--entry {
  background-color: #E60012;
}

.recruit__actions .graduate__btn:hover,
.recruit__actions .graduate__btn:focus-visible {
  color: #ffffff;
}

.recruit__actions .graduate__btn:focus-visible {
  outline: 2px solid #373B42;
  outline-offset: 4px;
}

@media screen and (max-width: 768px) {
  .consumer-declaration__title {
    position: relative;
    font-size: 2em;
    line-height: 1;
    letter-spacing: 0.08em;
  }

  .consumer-declaration__title::after {
    position: absolute;
    content: "";
    width: 55px;
    height: 1px;
    bottom: -15px;
    left: 0;
    background-color: #898989;
  }

  .consumer-declaration__subtitle {
    margin-top: 60px;
    font-size: 1.8em;
    line-height: 1;
  }

  .consumer-declaration__list {
    margin-top: 20px;
    font-family: inherit;
    font-size: 1.3em;
  }

  .consumer-declaration__list h5,
  .consumer-declaration__list p {
    line-height: 1.8;
  }

  .recruit__actions {
    gap: 14px;
  }

  .recruit__actions .graduate__btn {
    height: 63px;
  }

  .recruit__actions .recruit__pdf_btn {
    padding: 0 30px;
    font-size: 1.2em;
    letter-spacing: 0.02em;
  }

  .recruit__pdf_btn::after {
    right: 20px;
  }
}
