.irp-table-chart ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.irp-table-chart li {
  width: 48%;
}
table {
  border-collapse: collapse;
  width: 50%;
  margin-top: 10px; /* ← margin-block-start より互換性あり */
}
.irp-table-chart th,
.irp-table-chart td {
  border: 1px solid #bbb;
}
.irp-table-chart th {
  font-weight: normal;
  text-align: center;
  background-color: #efefef;
}
.irp-table-chart td {
  text-align: right;
}

[id^="irp-cmtable-"] table {
  width: 100%;
  table-layout: fixed;
  word-break: break-word;
}

.irp-table-chart th,
.irp-table-chart td {
  font-size: 16px; /* デフォルト */
  white-space: nowrap; /* 折り返し禁止 */
}

@media (max-width: 1530px) {
  .irp-table-chart th,
  .irp-table-chart td {
    font-size: 14px;
  }
}

@media (max-width: 1420px) {
  .irp-table-chart th,
  .irp-table-chart td {
    font-size: 12px;
  }
}

@media (max-width: 1310px) {
  .irp-table-chart th,
  .irp-table-chart td {
    font-size: 10px;
  }
}

@media (max-width: 1200px) {
  .irp-table-chart th,
  .irp-table-chart td {
    font-size: 8px;
  }
}

@media (max-width: 988px) {
  .irp-table-chart th,
  .irp-table-chart td {
    font-size: 9px;
  }
}

@media (max-width: 768px) {
  .irp-table-chart th,
  .irp-table-chart td {
    font-size: 16px;
  }
}

@media (max-width: 550px) {
  .irp-table-chart th,
  .irp-table-chart td {
    font-size: 12px;
  }
}
