@media only screen and (max-width: 740px) {
  .p-map-list {
    margin-inline: -20px;
  }
}
@media only screen and (max-width: 740px) {
  .p-map-item {
    padding: 25px 25px;
  }
}
@media print, screen and (min-width: 741px) {
  .p-map-item {
    display: flex;
  }
}
.p-map-item:nth-child(odd) {
  background: rgba(153, 161, 175, 0.05);
}
.p-map-item:nth-child(even) {
  background: rgba(153, 161, 175, 0.15);
}
.p-map-item > dt {
  font-weight: bold;
}
@media only screen and (max-width: 740px) {
  .p-map-item > dt {
    padding-bottom: 15px;
    padding-inline: 10px;
    margin-inline: -10px;
    margin-bottom: 15px;
    border-bottom: 1px solid #e0e4e7;
  }
}
@media print, screen and (min-width: 741px) {
  .p-map-item > dt {
    flex: 0 0 15.7142857143vw;
    padding: 1.7857142857vw 1.7857142857vw;
    border-right: 1px solid #e0e4e7;
  }
}
@media only screen and (min-width: 1400px) {
  .p-map-item > dt {
    flex: 0 0 220px;
    padding: 25px 25px;
  }
}
@media print, screen and (min-width: 741px) {
  .p-map-item > dd {
    flex: 1 1 auto;
    padding: 1.7857142857vw 2.5vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-map-item > dd {
    padding: 25px 35px;
  }
}
.p-map-item > dd > p:not(:first-child) {
  margin-top: 1em;
}

.p-map-item-list li {
  position: relative;
  padding-left: 1.2em;
}
.p-map-item-list li:before {
  content: "";
  display: block;
  width: 0.8em;
  height: 0.8em;
  border: 2px solid #aaa;
  border-radius: 100%;
  position: absolute;
  left: 0;
  top: 0.95em;
  translate: 0 -50%;
}
.p-map-item-list li.-jr:before {
  border-color: #03691a;
}
.p-map-item-list li.-tozai:before {
  border-color: #0079c2;
}
.p-map-item-list li.-marunouchi:before {
  border-color: #e60213;
}
.p-map-item-list li.-hankyu:before {
  border-color: #5f1c31;
}
.p-map-item-list li.-hanshin:before {
  border-color: #e87722;
}
.p-map-item-list li.-midosuji:before {
  border-color: #e60213;
}
.p-map-item-list li.-tanimachi:before {
  border-color: #522886;
}

.p-map-google {
  width: 100%;
}
@media only screen and (max-width: 740px) {
  .p-map-google {
    aspect-ratio: 4/3;
    margin-top: 30px;
  }
}
@media print, screen and (min-width: 741px) {
  .p-map-google {
    aspect-ratio: 2/1;
    margin-top: 2.8571428571vw;
  }
}
@media only screen and (min-width: 1400px) {
  .p-map-google {
    margin-top: 40px;
  }
}
.p-map-google iframe {
  width: 100%;
  height: 100%;
}

@media print, screen and (min-width: 741px) {
  .p-map-tel {
    pointer-events: none;
    background: none;
    color: inherit;
  }
}