.page-facility .kv .kv__title::before {
  top: 155px;
  left: 415px;
}
@media screen and (max-width: 767px) {
  .page-facility .kv .kv__title::before {
    top: 57.3333333333vw;
    left: 50%;
    width: 17.3333333333vw;
    height: 25.3333333333vw;
  }
}

.facility {
  padding-bottom: 160px;
}
@media screen and (max-width: 767px) {
  .facility {
    padding-bottom: 20.6666666667vw;
  }
}
.facility.page-container {
  padding-bottom: 290px;
}
@media screen and (max-width: 767px) {
  .facility.page-container {
    padding-bottom: 26.6666666667vw;
  }
}
.facility__text {
  max-width: 970px;
  width: 100%;
  margin: 0 auto;
  font-size: 1.6rem;
  line-height: 1.875;
}
@media screen and (max-width: 767px) {
  .facility__text {
    font-size: 3.2rem;
    line-height: 1.687;
  }
}
.facility__details {
  max-width: 970px;
  width: 100%;
  margin: 30px auto 0;
}
@media screen and (max-width: 767px) {
  .facility__details {
    margin: 8vw auto 0;
  }
}
.facility__details dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .facility__details dl {
    display: block;
    margin-top: 8vw;
  }
}
.facility__details dl dt {
  width: 100px;
  padding: 5px 0;
  background-color: #d9d9d9;
  font-size: 1.2rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .facility__details dl dt {
    width: 26.6666666667vw;
    padding: 1.3333333333vw 0;
    font-size: 2.4rem;
  }
}
.facility__details dl dd {
  width: 850px;
  font-size: 1.6rem;
  line-height: 1.875;
}
@media screen and (max-width: 767px) {
  .facility__details dl dd {
    width: 100%;
    padding-top: 2.6666666667vw;
    font-size: 3.2rem;
    line-height: 1.687;
  }
}
.facility__anchorlink {
  background-color: #e5f2fc;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 117px;
  padding: 24px 0;
  font-size: 1.6rem;
  font-weight: 700;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .facility__anchorlink {
    margin-top: 13.3333333333vw;
    padding: 4.6666666667vw 0;
    gap: 18.6666666667vw;
    font-size: 3.2rem;
  }
}
.facility__anchorlink li a {
  position: relative;
}
.facility__anchorlink li a::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: -15px;
  width: 6px;
  height: 6px;
  border-top: 2px solid;
  border-left: 2px solid;
  color: #0082e6;
  -webkit-transform: translateY(-50%) rotate(225deg);
          transform: translateY(-50%) rotate(225deg);
}
@media screen and (max-width: 767px) {
  .facility__anchorlink li a::before {
    width: 6px;
    height: 6px;
  }
}

.facility-firstfloormap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 50px;
  padding-left: 52px;
  gap: 35px;
}
@media screen and (max-width: 767px) {
  .facility-firstfloormap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 10.6666666667vw;
    padding-left: 0;
    gap: 5.3333333333vw;
  }
}
.facility-firstfloormap__floor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 103px;
  height: 103px;
  font-size: 3rem;
  font-weight: 700;
  color: #fff;
  background-color: #0082e6;
  border-radius: 100%;
}
@media screen and (max-width: 767px) {
  .facility-firstfloormap__floor {
    width: 18vw;
    height: 18vw;
    margin: 0 auto;
    font-size: 3.8rem;
  }
}
.facility-firstfloormap__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-top: 50px;
}
@media screen and (max-width: 767px) {
  .facility-firstfloormap__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-top: 0;
    gap: 2.9333333333vw;
  }
}
.facility-firstfloormap__img {
  max-width: 760px;
  width: 100%;
  cursor: pointer;
}
.facility-firstfloormap__zoombutton {
  width: 142px;
  padding: 10px 0;
  background-color: #e5f2fc;
  font-size: 1.4em;
  font-weight: 700;
  color: #0082e6;
  border-radius: 30px;
}
@media screen and (max-width: 767px) {
  .facility-firstfloormap__zoombutton {
    width: 24.8vw;
    font-size: 2.2rem;
  }
}
.facility-firstfloormap__zoombutton img {
  margin: 0 10px 0 26px;
  width: 17px;
  height: 17px;
}
@media screen and (max-width: 767px) {
  .facility-firstfloormap__zoombutton img {
    margin: 0 2.2666666667vw 0 2.9333333333vw;
    width: 3.6vw;
    height: 3.6vw;
  }
}

.facility-secondfloormap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 80px;
  padding-top: 50px;
  padding-left: 52px;
  gap: 260px;
  border-top: 4px solid #e5f2fc;
}
@media screen and (max-width: 767px) {
  .facility-secondfloormap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 10.6666666667vw;
    padding-left: 0;
    gap: 5.3333333333vw;
    border-top: 0.5333333333vw solid #e5f2fc;
  }
}
.facility-secondfloormap__floor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 103px;
  height: 103px;
  font-size: 3rem;
  font-weight: 700;
  color: #fff;
  background-color: #0082e6;
  border-radius: 100%;
}
@media screen and (max-width: 767px) {
  .facility-secondfloormap__floor {
    width: 18vw;
    height: 18vw;
    margin: 0 auto;
    font-size: 3.8rem;
  }
}
.facility-secondfloormap__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-top: 50px;
}
@media screen and (max-width: 767px) {
  .facility-secondfloormap__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    margin-top: 0;
    gap: 2.9333333333vw;
  }
}
.facility-secondfloormap__img {
  max-width: 276px;
  width: 100%;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .facility-secondfloormap__img {
    max-width: 32.4vw;
    margin: 0 auto;
  }
}
.facility-secondfloormap__zoombutton {
  width: 142px;
  padding: 10px 0;
  background-color: #e5f2fc;
  font-size: 1.4em;
  font-weight: 700;
  color: #0082e6;
  border-radius: 30px;
}
@media screen and (max-width: 767px) {
  .facility-secondfloormap__zoombutton {
    width: 24.8vw;
    font-size: 2.2rem;
  }
}
.facility-secondfloormap__zoombutton img {
  margin: 0 10px 0 26px;
  width: 17px;
  height: 17px;
}
@media screen and (max-width: 767px) {
  .facility-secondfloormap__zoombutton img {
    margin: 0 2.2666666667vw 0 2.9333333333vw;
    width: 3.6vw;
    height: 3.6vw;
  }
}

.facility-outdoormap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 80px;
  padding-top: 50px;
  padding-left: 52px;
  gap: 35px;
  border-top: 4px solid #e5f2fc;
}
@media screen and (max-width: 767px) {
  .facility-outdoormap {
    margin-top: 10.6666666667vw;
    padding-left: 0;
    gap: 5.3333333333vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.facility-outdoormap__floor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 103px;
  height: 103px;
  font-size: 3rem;
  font-weight: 700;
  color: #fff;
  background-color: #0082e6;
  border-radius: 100%;
}
@media screen and (max-width: 767px) {
  .facility-outdoormap__floor {
    width: 18vw;
    height: 18vw;
    margin: 0 auto;
    font-size: 3.8rem;
  }
}
.facility-outdoormap__item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-top: 50px;
}
@media screen and (max-width: 767px) {
  .facility-outdoormap__item {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    margin-top: 0;
    gap: 2.9333333333vw;
  }
}
.facility-outdoormap__img {
  max-width: 755px;
  width: 100%;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .facility-outdoormap__img {
    max-width: 89.3333333333vw;
    margin: 0 auto;
  }
}
.facility-outdoormap__zoombutton {
  position: absolute;
  width: 142px;
  padding: 10px 0;
  background-color: #e5f2fc;
  font-size: 1.4em;
  font-weight: 700;
  color: #0082e6;
  border-radius: 30px;
  right: 0;
}
@media screen and (max-width: 767px) {
  .facility-outdoormap__zoombutton {
    position: initial;
    width: 24.8vw;
    font-size: 2.2rem;
  }
}
.facility-outdoormap__zoombutton img {
  margin: 0 10px 0 26px;
  width: 17px;
  height: 17px;
}
@media screen and (max-width: 767px) {
  .facility-outdoormap__zoombutton img {
    margin: 0 2.2666666667vw 0 2.9333333333vw;
    width: 3.6vw;
    height: 3.6vw;
  }
}

.facility-list {
  margin-top: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 767px) {
  .facility-list {
    display: block;
    margin-top: 10.6666666667vw;
  }
}
@media screen and (max-width: 767px) {
  .facility-list.multiplecolumns .facility-list__item:first-of-type {
    padding: 11.2vw 0 10.6666666667vw 0;
    border-top: 0.2666666667vw solid #d9d9d9;
  }
}
.facility-list__item {
  width: 322px;
  margin-right: 13px;
  padding-right: 13px;
  border-right: 1px solid #d9d9d9;
}
@media screen and (max-width: 767px) {
  .facility-list__item {
    width: 100%;
    margin-right: 0;
    padding: 11.2vw 0 10.6666666667vw 0;
    border-top: 0.2666666667vw solid #d9d9d9;
    border-right: none;
  }
}
@media screen and (max-width: 767px) {
  .facility-list__item:first-of-type {
    padding: 0 0 10vw 0;
    border-top: none;
  }
}
.facility-list__item:last-of-type {
  width: 308px;
  margin-right: 0;
  padding-right: 0;
  border-right: none;
}
@media screen and (max-width: 767px) {
  .facility-list__item:last-of-type {
    width: 100%;
    padding-bottom: 0;
  }
}
.facility-list__item img {
  margin-top: 15px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 767px) {
  .facility-list__item img {
    margin-top: 5.6vw;
  }
}
@media screen and (max-width: 767px) {
  .facility-list__img {
    height: auto;
  }
}
.facility-list__name {
  font-size: 2.5rem;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .facility-list__name {
    font-size: 4rem;
  }
}
.facility-list__equipment {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .facility-list__equipment {
    margin-top: 5.3333333333vw;
  }
}
.facility-list__equipment li {
  position: relative;
  padding-left: 13px;
  font-size: 1.6rem;
  line-height: 1.875;
}
@media screen and (max-width: 767px) {
  .facility-list__equipment li {
    padding-left: 3.6vw;
    font-size: 3.2rem;
    line-height: 1.687;
  }
}
.facility-list__equipment li::before {
  content: "";
  position: absolute;
  top: 12px;
  left: 0;
  width: 9px;
  height: 9px;
  border-radius: 100%;
  background-color: #0082e6;
}
@media screen and (max-width: 767px) {
  .facility-list__equipment li::before {
    top: 2.6666666667vw;
    left: 0;
    width: 2.2666666667vw;
    height: 2.2666666667vw;
  }
}
.facility-list__text {
  margin-top: 20px;
  font-size: 1.6rem;
  line-height: 1.875;
}
@media screen and (max-width: 767px) {
  .facility-list__text {
    margin-top: 4.2666666667vw;
    font-size: 3.2rem;
    line-height: 1.687;
  }
}
.facility-list__btn {
  width: 280px;
  margin: 30px auto 0;
  font-size: 1.6rem;
  line-height: 1.875;
}
@media screen and (max-width: 767px) {
  .facility-list__btn {
    width: 85.3333333333vw;
    margin: 4.6666666667vw auto 0;
    font-size: 3.2rem;
  }
}