.m-philosophy {
  padding-block: 4rem 12rem;
}

.m-philosophy__text {
  font-size: 1.8rem;
  margin: 4rem auto 0;
  text-align: center;
  width: 100%;
}

.overview, .history {
  padding-bottom: 12rem;
}

.historyInfo {
  height: 27.6rem;
  overflow: hidden;
  transition: height 0.4s ease;
}

.historyInfo.is-open {
  height: auto;
}

.historyInfoWrap .commonLink::after {
  border: none;
  content: "＋";
}

.historyInfoWrap .commonLink:hover::after {
  background: none;
}

.historyInfoWrap:has(.historyInfo.is-open) .commonLink::after {
  content: "ー";
}

.companyInfo dl {
  border-bottom: 1px solid var(--colorMain);
  display: grid;
  grid-template-columns: 23.14% auto;
}

.companyInfo dt, .companyInfo dd {
  font-size: 1.6rem;
  padding: 2rem;
}

.companyInfo dt {
  color: var(--colorMain);
}

.history .commonLink {
  margin-top: 4rem;
}

.access {
  padding-bottom: 8rem;
}

.access__map {
  margin-top: 4rem;
  overflow-x: hidden;
}

@media (max-width: 767px) {
  .m-philosophy, .overview, .history {
    padding-bottom: 6rem;
  }

  .m-philosophy {
    padding-top: 2.4rem;
  }

  .m-philosophy__text {
    font-size: 1.6rem;
  }

  .companyInfo dl {
    grid-template-columns: 1fr;
  }

  .companyInfo dt, .companyInfo dd {
    padding: 1rem;
  }

  .companyInfo dt {
    padding-bottom: 0.5rem;
  }

  .companyInfo dd {
    padding-top: 0.5rem;
  }

  .historyInfo {
    height: 36rem;
  }

  .access {
    padding-bottom: 4rem;
  }
}
