/* === マップセクション全体 === */
.map-section {
  margin: 2rem auto;
  padding: 4rem 1.5rem;
  max-width: 1000px;
  color: var(--color-text);
}

/* === マップと情報の配置 === */
.map-flex-container {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  justify-content: center;
  align-items: flex-end;
  max-width: 700px;
  margin: 0 auto;
}

/* === 地図埋め込み・情報ブロック === */
.map-info {
  align-self: flex-end;
}

.map-embed {
  flex: 1 1 300px;
  min-width: 300px;
}

/* === 地図情報テーブル === */
.map-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--color-text);
}

/* === テーブルセルの整列 === */
.map-icon-cell {
  text-align: right;
  vertical-align: middle;
}

.map-text-cell {
  text-align: left;
  vertical-align: bottom;
}

/* === アイコンサイズ個別指定 === */
.map-icon1 {
  height: 60px !important;
  width: auto;
}
.map-icon2 {
  height: 15px !important;
  width: auto;
}
.map-icon3 {
  height: 12px !important;
  width: auto;
}

/* === テーブルの中央寄せ === */
.center-table {
  margin: 0 auto;
}

/* === モバイル対応（スマホ表示時） === */
@media screen and (max-width: 768px) {
  .map-flex-container {
    flex-direction: column;
    gap: 0.1rem;
  }

  .map-embed iframe {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 1 / 1;
  }
}
