.company_history {
  border-top: 1px solid var(--border-gray);
}
.company_history_item {
  border-bottom: 1px solid var(--border-gray);
}
@media screen and (width <= 767px) {
  .company_history_item {
    padding-block: 1rem;
  }
}
@media screen and (width > 767px), print {
  .company_history_item {
    padding-block: 1.2rem;
  }
}
.company_history .decade {
  margin-top: 0;
  color: #E0E8EE;
  font-weight: 700;
  line-height: 1;
}
@media screen and (width <= 767px) {
  .company_history .decade {
    font-size: 4.8rem;
  }
}
@media screen and (width > 767px), print {
  .company_history .decade {
    font-size: 5.6rem;
  }
}
.company_history_content {
  display: grid;
}
@media screen and (width <= 767px) {
  .company_history_content {
    grid-template-columns: 1fr;
    margin-top: 0.6rem;
  }
}
@media screen and (width > 767px), print {
  .company_history_content {
    grid-template-columns: 7.5rem 1fr;
    margin-top: 1.2rem;
  }
}
.company_history_content dt {
  font-weight: 700;
  line-height: 1.625;
}
@media screen and (width <= 767px) {
  .company_history_content dd {
    margin-top: 0.6rem;
  }
}
.company_history_content dd > *:first-child {
  margin-top: 0;
}
.company_history_content dd .list.-square > li {
  margin-top: 0;
}

.company_philosophy {
  max-width: 104rem;
  margin-inline: auto;
}
.company_philosophy > *:first-child {
  margin-top: 0;
}
.company_philosophy_ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: var(--font-en);
  color: #2FB3C8;
  text-transform: uppercase;
  line-height: 1.25;
  letter-spacing: 0.2em;
}
@media screen and (width <= 767px) {
  .company_philosophy_ttl {
    gap: 2rem;
    font-size: 2.4rem;
    margin-top: 7rem;
  }
}
@media screen and (width > 767px), print {
  .company_philosophy_ttl {
    gap: 3rem;
    font-size: 3.2rem;
    margin-top: 10rem;
  }
}
.company_philosophy_ttl::before, .company_philosophy_ttl::after {
  content: "";
  display: block;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 1px;
  background-color: currentColor;
}
.company_philosophy .catchcopy {
  color: var(--main-color);
  font-weight: 700;
  line-height: 1.38;
}
@media screen and (width <= 767px) {
  .company_philosophy .catchcopy {
    margin-top: 1.5rem;
    font-size: 2.2rem;
  }
}
@media screen and (width > 767px), print {
  .company_philosophy .catchcopy {
    margin-top: 2rem;
    text-align: center;
    font-size: 2.6rem;
  }
}
@media screen and (width <= 767px) {
  .company_philosophy .catchcopy + p {
    margin-top: 1.5rem;
  }
}
@media screen and (width > 767px), print {
  .company_philosophy .catchcopy + p {
    margin-top: 2rem;
    text-align: center;
  }
}