/* ── Company Info Table ── */
.company-info {
  background: var(--white);
  padding: 40px 0;
}

.info-header { margin-bottom: 51.5px; }

.info-table { width: 100%; }

.info-row {
  display: flex;
  border-top: 1px solid var(--azure-87);
  border-bottom: 1px solid var(--azure-87);
  margin-bottom: -1px;
  position: relative;
}

.info-cell {
  background: var(--grey-98);
  min-width: 200px;
  width: 200px;
  padding: 18px 22px;
  flex-shrink: 0;
}

.info-cell-label {
  font-family: 'Inter', 'Noto Sans JP', sans-serif;
  font-weight: 600;
  font-size: 14px;
  color: var(--azure-46);
  line-height: 24.5px;
  white-space: nowrap;
}

.info-data { flex: 1; padding: 18px 22px; }

.info-data-text {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
  font-size: 15px;
  color: var(--azure-38);
  line-height: 26.25px;
}

/* ── Mission ── */
.mission {
  background: var(--grey-98);
  padding: 40px 0;
}

.mission-header {
  text-align: center;
  margin-bottom: 52px;
}

.mission-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.mission-card {
  background: var(--white);
  border: 1px solid var(--azure-87);
  border-radius: 14px;
  padding: 33px;
  display: flex;
  flex-direction: column;
  gap: 7.4px;
}

.mission-number {
  font-family: 'Inter', sans-serif;
  font-weight: 800;
  font-size: 48px;
  letter-spacing: -1.92px;
  color: var(--grey-96);
  line-height: 48px;
}

.mission-title {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 700;
  font-size: 17px;
  line-height: 29.75px;
  color: var(--azure-12);
  padding-top: 6.6px;
}

.mission-desc {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
  font-size: 14.4px;
  line-height: 25.92px;
  color: var(--azure-38);
}

/* ── Responsive ── */
@media (max-width: 768px) {
  .info-row { flex-direction: column; }
  .info-cell { width: 100%; min-width: unset; }
  .mission-cards { grid-template-columns: 1fr; }
}
