.map-content-container {
  position: relative;
  z-index: 1
}

.map-content-title {
  text-align: center
}

.map-content-vs {
  position: relative
}

.map-content-vs::before {
  background: url(../../images/map/map-vs-obg.png) no-repeat;
  width: 160px;
  height: 151px;
  bottom: 0;
  left: -75px;
  position: absolute;
  content: "";
  background-size: contain
}

.map-content-mgr {
  margin: 0 0 0 auto
}

.map-content-mgc-120 {
  margin: 0 auto;
  margin-top: 120px
}

.map-content-mgc-40 {
  margin: 0 auto;
  margin-top: 40px
}

.map-content-mt110 {
  margin-top: 100px
}

.map-content-mt40 {
  margin-top: 40px
}

.map-content-header {
  margin-top: -90px;
  margin-bottom: 120px
}

.map-content-root-title {
  font-size: 24px;
  text-align: center
}

.map-content-root-item:not(:first-child) {
  margin-top: 40px
}

.map-content-root-wrap {
  margin-top: 15px
}

.map-content-root-wrap .contents-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-top: solid 1px #fff
}

.map-content-root-wrap .contents-wrap:last-child {
  border-bottom: solid 1px #fff
}

.map-content-root-wrap dl {
  width: 350px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 20px 0
}

.map-content-root-wrap dl:not(:first-child) {
  margin-left: 30px
}

.map-content-root-wrap dd {
  margin-top: 15px
}

.map-content-app {
  margin: 0 auto;
  margin-top: 115px;
  width: 83.6363%
}

.map-content-app-img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 40px
}

.map-content-app-img-figure {
  width: 18.6676427526vw;
  max-width: 255px
}

.map-content-app-btn-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

.map-content-app-btn-item {
  margin-top: 40px;
  width: 14.7877013177vw;
  max-width: 202px
}

.map-content-app-btn-item:first-child {
  margin-right: 30px
}

.map-content-image-wrapper {
  margin-top: -220px;
  position: relative;
}

.map-content-image-2, .map-content-image-3 {
  position: absolute;
  top: 0;
}

.map-content-text-mt30 {
  margin-top: 30px
}

.map-content-text-mt10 {
  margin-top: 10px
}

.map-content-text-center {
  text-align: center
}

.map-content-text-wrapper-a {
  width: 66.3636%
}

.map-content-text-wrapper-b {
  width: 83.6363%
}

.map-content-text-wrapper-b .point {
  position: relative
}

.map-content-text-wrapper-b .point::before {
  position: absolute;
  content: "・";
  top: 0;
  left: -1.5rem
}

.map-content-text-title {
  margin-bottom: 40px
}

.map-content-text-title-sp-only {
  display: none
}

.map-content-text-title-center {
  text-align: center
}

.map-content-text-mt90 {
  margin-top: 90px
}

.map-content-text-title-second {
  margin-top: 60px;
  font-size: 24px
}

.map-content-img-a {
  margin-top: -220px
}

.map-content-guideline-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 50px
}

.map-content-guideline-items .guideline-item:first-child {
  margin-right: 190px;
  width: 13.616398243vw
}

.map-content-guideline-items .guideline-item:last-child {
  width: 13.1039531479vw
}

.map-content-guideline-items .guideline-item p {
  text-align: center;
  font-weight: 700;
  margin-top: 20px
}

.map-content-mast-item {
  width: 53.4407027818vw;
  margin: 0 auto;
  margin-top: 40px
}

.map-content-advice-list span {
  border-bottom: solid 2px #000
}

.map-content-advice-list-mt20 {
  margin-top: 20px
}

.map-footer-fig {
  position: relative
}

.map-footer-fig:after {
  content: "";
  width: 100%;
  height: 20%;
  background-color: #165e83;
  position: absolute;
  bottom: 0;
  z-index: -1
}

.map-footer-text-wrapper {
  padding: 50px 0 80px;
  background-color: #165e83
}

.map-footer-text-fig {
  max-width: 690px;
  margin: 0 auto 30px
}

.map-footer-text-copy {
  color: #fff;
  text-align: center
}

.map-footer-btn-items-mt40 {
  margin-top: 40px
}

.map-footer-btn-items-mt120 {
  margin-top: 120px
}

.map-footer-btn-item .mgc {
  margin: 0 auto
}

@media screen and (max-width:1199.98px) {
  .map-content-vs::before {
    width: 130px;
    height: 130px;
    left: -10px
  }
}

@media screen and (min-width:768px) and (max-width:991.98px) {
  .map-content-vs::before {
    width: 90px;
    height: 90px
  }

  .map-content-root-wrap dl {
    width: 225px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 20px 0
  }

  .map-content-header {
    margin-top: -50px
  }
}

@media screen and (min-width:992px) and (max-width:1199px) {
  .map-content-root-wrap dl {
    width: 300px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 20px 0
  }
}

@media screen and (max-width:767.98px) {
  .map-content-container {
    position: relative;
    z-index: 1
  }

  .map-content-title {
    text-align: center
  }

  .map-content-vs {
    padding: 0 25px;
    position: relative
  }

  .map-content-vs::before {
    background: url(../../images/map/map-vs-obg.png) no-repeat;
    width: 70px;
    height: 70px;
    bottom: 0;
    left: 5px;
    position: absolute;
    content: "";
    background-size: contain
  }

  .map-content-mgr {
    margin: 0 0 0 auto
  }

  .map-content-mgc-120 {
    margin: 0 auto;
    margin-top: 85px
  }

  .map-content-mgc-40 {
    margin: 0 auto;
    margin-top: 40px
  }

  .map-content-mt110 {
    margin-top: 100px
  }

  .map-content-mt40 {
    margin-top: 40px
  }

  .map-content-header {
    margin-top: -90px;
    margin-bottom: 120px
  }

  .map-content-root-title {
    font-size: 18px;
    text-align: center
  }

  .map-content-root-items {
    padding: 0 25px
  }

  .map-content-root-item:not(:first-child) {
    margin-top: 35px
  }

  .map-content-root-wrap {
    display: block;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 15px
  }

  .map-content-root-wrap .contents-wrap {
    display: block;
    border-top: solid 1px #fff;
    padding: 5px 0
  }

  .map-content-root-wrap .contents-wrap:last-child {
    border-bottom: solid 1px #fff
  }

  .map-content-root-wrap dl {
    width: auto;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 8px 0
  }

  .map-content-root-wrap dl:not(:first-child) {
    margin-left: 0
  }

  .map-content-root-wrap dd {
    margin-top: 8px
  }

  .map-content-app {
    margin: 0 auto;
    margin-top: 90px;
    width: 83.6363%
  }

  .map-content-app-img {
    display: block;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 40px
  }

  .map-content-app-img-figure {
    width: 160px;
    max-width: 160px;
    margin: 0 auto
  }

  .map-content-app-img-figure:not(:first-child) {
    margin-top: 25px
  }

  .map-content-app-btn-items {
    display: block
  }

  .map-content-app-btn-item {
    width: 160px;
    max-width: 160px;
    margin: 0 auto;
    margin-top: 30px
  }

  .map-content-app-btn-item:first-child {
    margin-bottom: 30px;
    margin-right: auto
  }

  .map-content-image-wrapper {
    margin-top: -235px
  }

  .map-content-text-mt30 {
    margin-top: 30px;
    padding: 0 25px
  }

  .map-content-text-mt10 {
    margin-top: 10px
  }

  .map-content-text-center {
    text-align: center
  }

  .map-content-text-wrapper-a {
    width: 66.3636%
  }

  .map-content-text-wrapper-b {
    width: 83.6363%
  }

  .map-content-text-title {
    margin-bottom: 40px
  }

  .map-content-text-title-pc-only {
    display: none
  }

  .map-content-text-title-sp-only {
    display: block
  }

  .map-content-text-title-center {
    text-align: center
  }

  .map-content-text-mt90 {
    margin-top: 90px
  }

  .map-content-text-title-second {
    margin-top: 60px;
    font-size: 24px
  }

  .map-content-img-a {
    margin-top: -220px
  }

  .map-footer-text-wrapper {
    padding: 30px 25px 60px
  }

  .map-footer-text-fig {
    max-width: 100%
  }

  .map-footer-btn-items-mt40 {
    margin-top: 40px
  }

  .map-footer-btn-items-mt120 {
    margin-top: 90px
  }

  .map-footer-btn-item .mgc {
    margin: 0 auto
  }
}