.oversea_link_map_area {
  position: relative;
}

.oversea_link_map {
  max-width: 838px;
  width: 100%;
  margin-inline: auto;
}

.oversea_link_list {
  width: 100%;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 5px;
}

.oversea_link_item {
  width: 229px;
}

.oversea_link_item a {
  display: block;
  width: 100%;
  font-size: 1.8rem;
  color: #fff;
  font-weight: 500;
  text-align: center;
  line-height: 1.5;
  background: var(--main-color);
  border: 1px solid var(--main-color);
  border-radius: 5px;
  padding: 16px 20px;
  position: relative;
}

.oversea_link_item a:hover {
  text-decoration: none;
  color: var(--main-color);
  background: #fff;
}

.oversea_link_item_arrow {
  display: block;
  width: 25px;
  aspect-ratio: 1;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 14px;
  transform: translateY(-50%);
  transition: background 0.3s ease;
}

.oversea_link_item a:hover .oversea_link_item_arrow {
  background: var(--main-color);
}

.oversea_link_item_arrow::after {
  content: '';
  width: 10px;
  aspect-ratio: 1;
  border-style: solid;
  border-width: 2px 2px 0 0;
  border-color: var(--main-color);
  position: absolute;
  top: calc(50% - 2px);
  left: 50%;
  transform: translate(-50%, -50%) rotate(135deg);
  transition: border-color 0.3s ease;
}

.oversea_link_item a:hover .oversea_link_item_arrow::after {
  border-color: #fff;
}

@media (max-width : 767px) {

  .section_oversea {
    overflow: hidden;
  }

  .oversea_link_map {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }

  .oversea_link_map img {
    transform: scale(1.5) translate(5%, 4%);
    z-index: -1;
    position: relative;
  }

  .oversea_link_list {
    flex-direction: column;
    gap: calc(5 / 400 * 100vw);
    position: static;
    transform: none;
    align-items: center;
  }

  .oversea_link_item {
    width: calc(229 / 400 * 100vw);
  }

  .oversea_link_item a {
    font-size: calc(16 / 400 * 100vw);
    border-radius: calc(5 / 400 * 100vw);
    padding: calc(10 / 400 * 100vw) calc(10 / 400 * 100vw);
  }

  .oversea_link_item_arrow {
    width: calc(25 / 400 * 100vw);
    right: calc(14 / 400 * 100vw);
  }

  .oversea_link_item_arrow::after {
    width: calc(10 / 400 * 100vw);
    border-width: calc(2 / 400 * 100vw) calc(2 / 400 * 100vw) 0 0;
    top: calc(50% - calc(2 / 400 * 100vw));
  }
}

/* 海外拠点コンテンツ */

.oversea_content_top {
  display: flex;
  align-items: flex-start;
  gap: 38px;
  margin-bottom: 45px;
}

.oversea_content_img {
  max-width: 400px;
  width: 35%;
  border-radius: 20px;
  overflow: hidden;
}

.oversea_content_text {
  flex: 1;
}

.oversea_content_bottom {
  margin-bottom: 45px;
}

.oversea_content_map {
  width: 100%;
  height: 390px;
  border-radius: 20px;
  overflow: hidden;
}

.oversea_content_map iframe {
  width: 100%;
  height: 100%;
}

@media (max-width : 767px) {

  .oversea_content_top {
    flex-direction: column;
    gap: calc(20 / 400 * 100vw);
    margin-bottom: calc(30 / 400 * 100vw);
  }

  .oversea_content_img {
    max-width: 100%;
    width: 100%;
    border-radius: calc(10 / 400 * 100vw);
  }

  .oversea_content_img img {
    width: 100%;
  }

  .oversea_content_bottom {
    margin-bottom: calc(30 / 400 * 100vw);
  }

  .oversea_content_map {
    height: calc(280 / 400 * 100vw);
    border-radius: calc(10 / 400 * 100vw);
  }
}