/* p-base
---------------------------------------------------------------------------- */
.p-base {
  padding-block: 6.7rem 8rem;
}

.p-base-links {
  display: grid;
  grid-template-columns: repeat(2, 24rem);
  justify-content: center;
  gap: 0 4rem;
}

.p-base-link {
  font-size: 1.8rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  font-weight: 700;
  color: #1A1A1A;
  padding-bottom: 0.8rem;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
}

.p-base-link span {
  width: 2.6rem;
  height: 2.6rem;
  background-color: #073190;
  border: 1px solid #073190;
  border-radius: 50%;
  position: relative;
  transition: background-color 0.3s ease 0s;
}

.p-base-link span::before {
  content: "";
  position: absolute;
  top: 47%;
  left: 50%;
  width: 0.6rem;
  aspect-ratio: 1;
  border-bottom: 0.2rem solid #fff;
  border-right: 0.2rem solid #fff;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: border-color 0.3s ease 0s;
}

@media (any-hover: hover) {
  .p-base-link:hover span {
    background-color: #fff;
  }
  .p-base-link:hover span::before {
    border-color: #073190;
  }
}
.p-base-blocks {
  margin-top: 7rem;
}

.p-base-block:not(:last-child) {
  margin-bottom: 10rem;
}

.p-base-block-map {
  width: 100%;
  height: 50rem;
  margin-top: 5rem;
}

.p-base-block-list {
  --border-color: #BEBEBE;
  margin-top: 5rem;
}

.p-base-block-list-items {
  display: flex;
  flex-direction: column;
}

.p-base-block-list-item {
  display: grid;
  grid-template-columns: 31rem 1fr 30rem;
  border-top: 1px solid var(--border-color);
  border-left: 1px solid var(--border-color);
  border-right: 1px solid var(--border-color);
}

.p-base-block-list-item:last-child {
  border-bottom: 1px solid var(--border-color);
}

.p-base-block-list-ttl-wrap {
  background-color: #EAF0FD;
  padding-block: 2.3rem;
  padding-inline: 2.9rem;
  border-right: 1px solid var(--border-color);
}

.p-base-block-list-ttl {
  font-size: 1.8rem;
  line-height: 1.6111111111;
  letter-spacing: 0.06em;
  font-weight: 700;
  color: #073190;
  padding-left: 1.3em;
  text-indent: -1.3em;
}

.p-base-block-list-info {
  padding-block: 2.5rem;
  padding-inline: 2.9rem;
}

.p-base-block-list-address {
  font-size: 1.6rem;
  line-height: 1.8125;
  letter-spacing: 0.06em;
  font-weight: 400;
}

.p-base-block-list-map {
  display: inline-block;
  color: #073190;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.06em;
  font-weight: 700;
  padding-bottom: 0.6rem;
  border-bottom: 1px solid;
  transition: border-color 0.3s ease 0s;
}

.p-base-block-list-map span {
  display: inline-block;
  background-image: url(/assets/images/lgs/base/icn_pin.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 1.6rem;
  height: 1.494rem;
  margin-left: 1rem;
}

@media (any-hover: hover) {
  .p-base-block-list-map:hover {
    border-bottom: 1px solid transparent;
  }
}
.p-base-block-list-tel-wrap {
  display: grid;
  place-content: center;
  border-left: 1px solid var(--border-color);
}

.p-base-block-list-tel {
  font-size: 1.6rem;
  line-height: 1.8125;
  letter-spacing: 0.06em;
  font-weight: 400;
}

.p-base-block-list-tel {
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  gap: 0 1rem;
}

.p-base-block-list-tel::before {
  content: "";
  width: 1.71rem;
  aspect-ratio: 1;
  background-image: url(/assets/images/lgs/base/icn_tel.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

@media screen and (max-width: 767px) {
  .p-base {
    padding-block: 12vw 13.3333333333vw;
  }
  .p-base-links {
    grid-template-columns: 1fr 1fr;
    gap: 4.8vw;
  }
  .p-base-link {
    font-size: 3.7333333333vw;
    line-height: 2.0714285714;
    padding-bottom: 1.6vw;
  }
  .p-base-link span {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }
  .p-base-link span::before {
    width: 1.3333333333vw;
    border-bottom-width: 0.5333333333vw;
    border-right-width: 0.5333333333vw;
  }
  .p-base-blocks {
    margin-top: 13.3333333333vw;
  }
  .p-base-block:not(:last-child) {
    margin-bottom: 18.6666666667vw;
  }
  .p-base-block-map {
    width: 100%;
    height: 59.4666666667vw;
    margin-top: 8vw;
  }
  .p-base-block-list {
    --border-color: #BEBEBE;
    margin-top: 5.3333333333vw;
  }
  .p-base-block-list-item {
    grid-template-columns: 1fr;
  }
  .p-base-block-list-item:last-child {
    border-bottom: 1px solid var(--border-color);
  }
  .p-base-block-list-ttl-wrap {
    padding-block: 4.8vw 5.3333333333vw;
    padding-inline: 5.3333333333vw;
    border-right: none;
    border-bottom: 1px solid var(--border-color);
  }
  .p-base-block-list-ttl {
    font-size: 4.8vw;
  }
  .p-base-block-list-info {
    padding-block: 4.8vw 5.3333333333vw;
    padding-inline: 5.3333333333vw;
  }
  .p-base-block-list-address {
    font-size: 4.2666666667vw;
  }
  .p-base-block-list-map {
    font-size: 4.2666666667vw;
    padding-bottom: 1.6vw;
    border-bottom: 1px solid;
  }
  .p-base-block-list-map span {
    width: 4.2666666667vw;
    height: 3.984vw;
    margin-left: 2.6666666667vw;
  }
  .p-base-block-list-tel-wrap {
    justify-content: start;
    padding-inline: 5.3333333333vw;
    padding-bottom: 4vw;
    border-left: none;
  }
  .p-base-block-list-tel {
    font-size: 4.2666666667vw;
  }
  .p-base-block-list-tel {
    gap: 0 2.6666666667vw;
  }
  .p-base-block-list-tel::before {
    width: 4.2666666667vw;
  }
}
/* p-base-other
---------------------------------------------------------------------------- */
.p-base-other {
  padding-block: 0rem 10rem;
}

@media screen and (max-width: 767px) {
  .p-base-other {
    padding-block: 0vw 13.3333333333vw;
  }
}
