.trainSect__inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .trainSect__inner {
    width: 120rem;
  }
}
@media screen and (max-width: 767px) {
  .trainSect__inner {
    padding: 0 3.2rem;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .trainSect__head .headingUnit .heading {
    margin-left: -0.8rem;
    margin-right: -0.8rem;
  }
}
@media screen and (max-width: 767px) {
  .trainSect__cont {
    margin-left: -3.2rem;
    margin-right: -3.2rem;
  }
}
@media screen and (max-width: 767px) {
  .trainSect__cont .swipeFigure__inner {
    height: 39rem;
  }
}
.trainSect__head + .trainSect__cont {
  margin-top: 8rem;
}

.simulationSect {
  position: relative;
  z-index: 1;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .simulationSect {
    width: 68rem;
  }
}
@media screen and (max-width: 767px) {
  .simulationSect {
    padding: 0 3.2rem;
  }
}
@media screen and (min-width: 768px) {
  .simulationSect__head {
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .simulationSect__head + .simulationSect__cont {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .simulationSect__head + .simulationSect__cont {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 768px) {
  .simulationSect__block:not(:first-child) {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .simulationSect__block:not(:first-child) {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 767px) {
  .simulationSect__block .swipeFigure__inner {
    height: 16.3rem;
  }
}
.simulationSect__block .subwayTtl {
  margin: 0 auto;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 768px) {
  .simulationSect__block .subwayTtl + .swipeFigure {
    margin-top: 3.2em;
  }
}
@media screen and (max-width: 767px) {
  .simulationSect__block .subwayTtl + .swipeFigure {
    margin-top: 1.6rem;
  }
}

.airportSect {
  position: relative;
  z-index: 1;
}
.airportSect__inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .airportSect__inner {
    width: 120rem;
  }
}
@media screen and (max-width: 767px) {
  .airportSect__inner {
    padding: 0 3.2rem;
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .airportSect__head .headingUnit .heading {
    margin-left: -10rem;
    margin-right: -10rem;
  }
}
@media screen and (max-width: 767px) {
  .airportSect__head .headingUnit .heading {
    margin-left: -0.8rem;
    margin-right: -0.8rem;
  }
}
@media screen and (min-width: 768px) {
  .airportSect__cont {
    margin-left: auto;
    margin-right: auto;
    max-width: 78.4rem;
  }
}
.airportSect__head + .airportSect__cont {
  margin-top: 8rem;
}

.taxiSect__inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .taxiSect__inner {
    width: 84rem;
  }
}
@media screen and (max-width: 767px) {
  .taxiSect__inner {
    padding: 0 3.2rem;
  }
}
@media screen and (min-width: 768px) {
  .taxiSect__head .headingUnit .heading {
    margin-left: -10rem;
    margin-right: -10rem;
  }
}
@media screen and (min-width: 768px) {
  .taxiSect__head + .taxiSect__cont {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  .taxiSect__head + .taxiSect__cont {
    margin-top: 6.4rem;
  }
}
@media screen and (min-width: 768px) {
  .taxiSect__cont .usableList__inner {
    gap: 2.4rem;
    justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  .taxiSect__cont .usableList__inner {
    flex-direction: column;
    gap: 1.6rem;
  }
}
@media screen and (min-width: 768px) {
  .taxiSect__cont .usableList__item {
    width: calc((100% - 4.8rem) / 3);
  }
}

.bicycleSect__inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .bicycleSect__inner {
    width: 120rem;
  }
}
@media screen and (max-width: 767px) {
  .bicycleSect__inner {
    padding: 0 3.2rem;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .bicycleSect__cont {
    margin-left: -3.2rem;
    margin-right: -3.2rem;
  }
}
.bicycleSect__head + .bicycleSect__cont {
  margin-top: 8rem;
}
@media screen and (min-width: 768px) {
  .bicycleSect__cont .generalSlider .swiper-slide {
    width: 37.3rem;
  }
}
@media screen and (max-width: 767px) {
  .bicycleSect__cont .generalSlider .swiper-slide {
    width: 26.8rem;
  }
}
@media screen and (min-width: 768px) {
  .bicycleSect__cont .generalSlider--disableMode .swiper-wrapper {
    gap: 4.8rem;
  }
}

.lineAccess {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .lineAccess {
    padding: 8rem 0;
  }
}
@media screen and (max-width: 767px) {
  .lineAccess {
    padding: 10rem 0;
  }
}
.lineAccess:not(:first-child) {
  margin-top: 3.2rem;
}
.lineAccess__inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .lineAccess__inner {
    width: 100rem;
  }
}
@media screen and (max-width: 767px) {
  .lineAccess__inner {
    padding: 0 3.2rem;
  }
}
@media screen and (min-width: 768px) {
  .lineAccess__head .usableList__inner {
    gap: 1.2rem 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  .lineAccess__head .usableList__inner {
    flex-direction: column;
    gap: 0.8rem;
  }
}
.lineAccess__head .usableList + .heading {
  margin-top: 1.6rem;
}
@media screen and (max-width: 767px) {
  .lineAccess__body {
    margin-left: -3.2rem;
    margin-right: -3.2rem;
  }
}
@media screen and (min-width: 768px) {
  .lineAccess__body .usableList__inner {
    gap: 0.8rem;
    justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  .lineAccess__body .usableList__inner {
    align-items: center;
    flex-direction: column;
    gap: 0.4rem;
  }
}
@media screen and (min-width: 768px) {
  .lineAccess__body .usableList__item {
    width: 32.6rem;
  }
}
@media screen and (max-width: 767px) {
  .lineAccess__body .usableList__item {
    width: 100%;
  }
}
.lineAccess__head + .lineAccess__body {
  margin-top: 4rem;
}
.lineAccess__bg {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}
.lineAccess__bg .photo {
  height: 100%;
  width: 100%;
}
.lineAccess__bg .photo__pic, .lineAccess__bg .photo__image {
  height: 100%;
  width: 100%;
}
.lineAccess__bg .photo__image {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top center;
     object-position: top center;
}
@media screen and (max-width: 767px) {
  .lineAccess__bg .photo__caption--capIn {
    bottom: 57rem;
  }
}

.subwayTtl {
  align-items: center;
  display: flex;
  gap: 0.8rem;
}
.subwayTtl__icon {
  width: 1.4rem;
}
.subwayTtl__icon .svgIcon {
  display: block;
  height: auto;
  width: 100%;
}
.subwayTtl__txt {
  display: block;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
.subwayTtl__txt::before {
  content: "";
  margin-top: calc((1 - 1.6) * 0.5em);
}
.subwayTtl__txt::after {
  margin-bottom: calc((1 - 1.6) * 0.5em);
}
.subwayTtl__txt::before, .subwayTtl__txt::after {
  content: "";
  display: block;
  height: 0;
  width: 0;
}

.accessCard {
  position: relative;
  z-index: 1;
}
.accessCard__desc {
  align-items: flex-end;
  display: flex;
  flex-wrap: wrap;
  gap: 1.6rem 0.8rem;
  justify-content: center;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  white-space: nowrap;
  width: -moz-fit-content;
  width: fit-content;
  z-index: 2;
}
.accessCard__ttlWrap {
  align-items: flex-end;
  display: flex;
  gap: 0.8rem;
  justify-content: center;
  position: relative;
  z-index: 1;
}
.accessCard__ttl {
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-box: trim-both text;
}
.accessCard__dist {
  font-family: "EB Garamond", georgia, "Times New Roman", serif;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  line-height: 1;
}
.accessCard__dist .num {
  display: inline-block;
  font-size: 6rem;
  line-height: 0.8;
  margin-right: 0.8rem;
}
.accessCard__cap {
  text-align: right;
  width: 100%;
}

.taxiCard {
  display: flex;
}
@media screen and (min-width: 768px) {
  .taxiCard {
    flex-direction: column;
  }
}
.taxiCard__head {
  aspect-ratio: 1/1;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .taxiCard__head {
    width: 52%;
  }
}
@media screen and (max-width: 767px) {
  .taxiCard__visual {
    height: 100%;
    width: 100%;
  }
}
.taxiCard__visual .photo {
  height: 100%;
  width: 100%;
}
.taxiCard__visual .photo__pic, .taxiCard__visual .photo__image {
  height: 100%;
  width: 100%;
}
.taxiCard__visual .photo__image {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.taxiCard__body {
  align-items: center;
  background-color: #87775e;
  color: #fff;
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 1.6rem;
  justify-content: center;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .taxiCard__body {
    padding: 2.4rem 0.8rem;
  }
}
@media screen and (max-width: 767px) {
  .taxiCard__body {
    padding: 1.6rem 0.8rem 2.4rem;
  }
}
.taxiCard__ttl {
  font-family: "EB Garamond", georgia, "Times New Roman", serif;
  left: 50%;
  letter-spacing: 0.1em;
  line-height: 1.4;
  position: absolute;
  text-align: center;
  text-box: trim-both cap alphabetic;
  top: 50%;
  transform: translate(-50%, -50%);
  white-space: nowrap;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .taxiCard__ttl {
    font-size: 2.4em;
  }
}
@media screen and (max-width: 767px) {
  .taxiCard__ttl {
    font-size: 1.8rem;
  }
}
.taxiCard__heading {
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .taxiCard__heading {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  .taxiCard__heading {
    font-size: 1.6rem;
  }
}
.taxiCard__dist {
  align-items: baseline;
  display: flex;
  justify-content: center;
}
.taxiCard__dist .jp {
  display: inline-block;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  line-height: 2;
  text-box: trim-both text;
}
.taxiCard__dist .num {
  font-family: "EB Garamond", georgia, "Times New Roman", serif;
  letter-spacing: 0;
  line-height: 1.4;
  text-box: trim-both cap alphabetic;
}
@media screen and (min-width: 768px) {
  .taxiCard__dist .num {
    font-size: 6rem;
  }
}
@media screen and (max-width: 767px) {
  .taxiCard__dist .num {
    font-size: 3rem;
  }
}
.taxiCard__dist .unit {
  font-family: "EB Garamond", georgia, "Times New Roman", serif;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-box: trim-both cap alphabetic;
}
.taxiCard__subItem {
  letter-spacing: 0.1em;
  line-height: 1.4;
  text-box: trim-both text;
}
@media screen and (min-width: 768px) {
  .taxiCard__subItem {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px) {
  .taxiCard__subItem {
    font-size: 1.3rem;
  }
}
.taxiCard__subItem .num {
  display: inline-block;
  font-family: "EB Garamond", georgia, "Times New Roman", serif;
  font-size: 2.2rem;
  letter-spacing: 0;
  text-box: trim-both cap alphabetic;
}
.taxiCard__subItem:not(:first-child) {
  margin-top: 1.2rem;
}

.bicycleCard {
  background-color: #fff;
  border-radius: 0.8rem;
  color: #231815;
  height: 100%;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .bicycleCard {
    padding: 2.4rem 1.75rem 8.5rem;
  }
}
@media screen and (max-width: 767px) {
  .bicycleCard {
    padding: 1.6rem 1.4rem 7.5rem;
  }
}
@media screen and (min-width: 768px) {
  .bicycleCard__body .headingUnit .heading {
    text-align: center;
  }
}
.bicycleCard__head + .bicycleCard__body {
  margin-top: 3.2rem;
}
.bicycleCard__dist {
  background-color: #635954;
  color: #fff;
  font-size: 1.3rem;
  left: 50%;
  letter-spacing: 0.1em;
  line-height: 1.6;
  padding: 1rem;
  position: absolute;
  text-align: center;
  text-box: trim-both text;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .bicycleCard__dist {
    bottom: 2.4rem;
    width: calc(100% - 0.5rem);
  }
}
@media screen and (max-width: 767px) {
  .bicycleCard__dist {
    bottom: 1.6rem;
    width: 100%;
  }
}

@media screen and (min-width: 768px) {
  .access-train {
    padding: 0 0 10rem;
  }
}
@media screen and (max-width: 767px) {
  .access-train {
    padding: 0 0 9rem;
  }
}

@media screen and (min-width: 768px) {
  .access-simulation {
    padding: 10rem 0 0;
  }
}
@media screen and (max-width: 767px) {
  .access-simulation {
    padding: 8rem 0 0;
  }
}

.access-airport {
  padding: 0 0 8rem;
}

.access-bicycle {
  padding: 0 0 10rem;
}
/*# sourceMappingURL=style.css.map */
