@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@300;400;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700&display=swap');
* {
  -webkit-tap-highlight-color: transparent;
  user-select: none;
  /* supported by Chrome and Opera */
  -webkit-user-select: none;
  /* Safari */
  -khtml-user-select: none;
  /* Konqueror HTML */
  -moz-user-select: none;
  /* Firefox */
  -ms-user-select: none;
  /* Internet Explorer/Edge */
}
@media (max-width:980px) {
  *::-webkit-scrollbar {
    display: none;
  }
}
.hide {
  display: none!important;
}
body,
html {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  touch-action: none;
}
html {
  margin: 0;
  background: #142659;
}
html * {
  font-family: 'Oswald', sans-serif;
  -webkit-tap-highlight-color: transparent;
}
html body {
  margin: 0;
  background: #f5f5f5;
  opacity: 0;
  transition: 0.5s;
  overflow: hidden;
  cursor: pointer;
}
html body .page-content *,
html body .overlay * {
  font-family: 'Open Sans', sans-serif;
}
html body.active {
  opacity: 1;
}
html body.footer-active .col.col-body div#content div.page-content {
  height: calc(100vh - 96px - 270px);
}
html body.footer-active .col.col-body div#content div.footer {
  height: 366px;
}
html body.footer-active .col.col-body div#content div.footer .search {
  left: 256px;
  right: 256px;
}
html body.footer-active .col.col-body div#content div.footer .search .placeholder {
  opacity: 0;
}
html body.footer-active .col.col-body div#content div.footer .sns {
  left: -430px;
}
html div {
  box-sizing: border-box;
  word-break: keep-all;
}
html div::-webkit-scrollbar {
  background-color: transparent;
  width: 10px;
}
html div::-webkit-scrollbar-thumb {
  border-radius: 18px;
  background-color: #c7baa5;
}
html div::-webkit-scrollbar-track {
  background-color: transparent;
}
.aligncenter {
  display: flex;
  align-items: center;
  justify-content: center;
}
.backgroundImage {
  background: url() center center no-repeat;
  background-size: cover;
}
.col {
  clear: both;
  overflow: hidden;
  width: 100vw;
  height: 100vh;
}
.col.col-body > div {
  float: left;
  height: 100vh;
}
.col.col-body > div#content {
  position: relative;
  width: calc(100% - 288px);
}
@media (max-width:980px) {
  .col.col-body > div#content {
    width: 100%;
  }
}
.col.col-body > div#content > div {
  width: 100%;
}
.col.col-body > div#content > div.page-content {
  height: calc(100vh - 96px);
  transition: 0.3s;
}
@media (max-width:980px) {
  .col.col-body > div#content > div.page-content {
    height: 100%;
  }
}
.col.col-body > div#content > div.page-content > .content {
  display: flex;
  align-items: center;
  justify-content: center;
}
.col.col-body > div#content > div.footer {
  position: absolute;
  bottom: 0;
  transition: 0.3s;
  height: 96px;
  overflow: hidden;
  background: #efefef;
  z-index: 99999;
}
.col.col-body > div#content > div.footer .top {
  position: relative;
  height: 96px;
  width: 100%;
  padding: 20px;
  box-sizing: border-box;
}
.col.col-body > div#content > div.footer .top .sns {
  left: 36px;
  width: 400px;
  top: 20px;
  bottom: 20px;
  position: absolute;
  display: flex;
  align-items: center;
  transition: 0.3s;
}
.col.col-body > div#content > div.footer .top .sns * {
  color: #142659;
}
.col.col-body > div#content > div.footer .top .sns > div {
  display: inline-block;
}
.col.col-body > div#content > div.footer .top .sns > div.qr {
  width: 58px;
  margin-right: 15px;
}
.col.col-body > div#content > div.footer .top .sns > div.qr p {
  font-size: 11px;
  margin: 0 0;
}
.col.col-body > div#content > div.footer .top .sns > div.qr img {
  width: 100%;
  margin: 0;
}
.col.col-body > div#content > div.footer .top .sns > div:nth-child(2) {
  height: 84px;
}
.col.col-body > div#content > div.footer .top .sns > div:nth-child(2) > div {
  width: 100%;
}
.col.col-body > div#content > div.footer .top .sns > div:nth-child(2) .follow {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 0.5em;
}
.col.col-body > div#content > div.footer .top .sns > div:nth-child(2) .follow span {
  font-weight: normal;
}
.col.col-body > div#content > div.footer .top .sns > div:nth-child(2) .icons .icon {
  display: inline-block;
  font-size: 44px;
  width: 1em;
  height: 1em;
  background: url() center center no-repeat;
  background-color: #fff;
  border-radius: 100%;
  background-size: auto 0.5em;
}
.col.col-body > div#content > div.footer .top .search {
  top: 20px;
  bottom: 20px;
  right: 20px;
  left: calc(2 * 20px + 400px);
  transition: 0.3s;
  background: #fff;
  position: absolute;
}
.col.col-body > div#content > div.footer .top .search input {
  width: 100%;
  height: 100%;
  font-size: 24px;
  color: #142659;
  border: 0;
  background: transparent;
  text-align: center;
}
.col.col-body > div#content > div.footer .top .search .placeholder {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  font-size: 24px;
  background: #fff;
  pointer-events: none;
  transition: 0.3s;
  line-height: 1em;
  color: #142659;
  display: flex;
  align-items: center;
  justify-content: center;
}
.col.col-body > div#content > div.footer .top .search .placeholder img {
  width: auto;
  height: 0.85em;
  margin-right: 0.5em;
  transform: translateY(2px);
}
.col.col-body > div#content > div.footer .keyboard {
  height: 270px;
  padding: 14px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex-direction: column;
}
.col.col-body > div#content > div.footer .keyboard > div {
  flex: 1;
}
.col.col-body > div#content > div.footer .keyboard .keyrow {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.col.col-body > div#content > div.footer .keyboard .keyrow.sp {
  display: none;
}
.col.col-body > div#content > div.footer .keyboard .keybottom {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  align-items: flex-start;
}
.col.col-body > div#content > div.footer .keyboard .key {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  text-align: center;
  width: 2em;
  height: 2em;
  padding: 0.5em 0;
  color: #142659;
  background: #fff;
  box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);
  border-radius: 2em;
}
.col.col-body > div#content > div.footer .keyboard .key svg g {
  fill: #142659;
}
.col.col-body > div#content > div.footer .keyboard .key:hover,
.col.col-body > div#content > div.footer .keyboard .key.active {
  background: #142659;
  color: #fff;
}
.col.col-body > div#content > div.footer .keyboard .key:hover svg g,
.col.col-body > div#content > div.footer .keyboard .key.active svg g {
  fill: #fff;
}
.col.col-body > div#content > div.footer .keyboard .key.switch,
.col.col-body > div#content > div.footer .keyboard .key.clear {
  width: 72px;
}
.col.col-body > div#content > div.footer .keyboard .key.space {
  width: 360px;
}
.col.col-body > div#sidebar {
  width: 288px;
  background: #fff;
  border-left: 2px solid #f1ebdf;
}
.col.col-body > div#sidebar .logo {
  height: 184px;
  background: url("../assets/imgs/m-logo.svg") center center no-repeat;
  background-size: auto 66px;
}
.col.col-body > div#sidebar .forecast {
  height: 96px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  padding: 0 23px;
  background: #f5f5f5;
  gap: 30px;
}
.col.col-body > div#sidebar .forecast * {
  color: #142659;
}
.col.col-body > div#sidebar .forecast .weather img {
  margin-right: 0.5em;
}
.col.col-body > div#sidebar .forecast > div {
  flex: 1;
}
.col.col-body > div#sidebar .forecast > div > p {
  line-height: 1em;
  margin: 0;
  margin-bottom: 10px;
}
.col.col-body > div#sidebar .forecast > div > p:last-child {
  margin: 0;
}
.col.col-body > div#sidebar .forecast .date,
.col.col-body > div#sidebar .forecast .state {
  font-size: 12px;
}
.col.col-body > div#sidebar .forecast .time {
  font-size: 22px;
}
.col.col-body > div#sidebar .forecast .miter {
  font-size: 18px;
}
.col.col-body > div#sidebar #menu {
  display: flex;
  flex-direction: column;
  height: calc(100vh - 184px - 96px);
}
.col.col-body > div#sidebar #menu .item {
  flex: 1;
  color: #142659;
  position: relative;
  overflow: hidden;
}
.col.col-body > div#sidebar #menu .item.disabled {
  background: #ccc;
  color: #333;
}
.col.col-body > div#sidebar #menu .item.disabled g {
  fill: #333;
}
.col.col-body > div#sidebar #menu .item span {
  display: block;
  font-size: 24px;
  padding: 1.5em 0 1em;
  padding-left: 3em;
  line-height: 1.1em;
  position: relative;
  z-index: 1;
  transition: 0.15s;
}
.col.col-body > div#sidebar #menu .item svg {
  font-size: 24px;
  position: absolute;
  left: 1em;
  height: 1em;
  top: calc(50% - 0.25em);
  width: auto;
}
.col.col-body > div#sidebar #menu .item svg g {
  transition: 0.15s;
  fill: #142659;
}
.col.col-body > div#sidebar #menu .item:before,
.col.col-body > div#sidebar #menu .item:after {
  content: "";
  position: absolute;
  width: 150%;
  height: 100%;
  top: 100%;
  transition: 0.3s;
}
.col.col-body > div#sidebar #menu .item:before {
  right: 0;
  background: #8e754c;
  transform-origin: right top;
}
.col.col-body > div#sidebar #menu .item:after {
  left: 0;
  background: #142659;
  transform-origin: left top;
  transition-delay: 0.15s;
}
.col.col-body > div#sidebar #menu .item.active {
  color: #fff;
}
.col.col-body > div#sidebar #menu .item.active:before,
.col.col-body > div#sidebar #menu .item.active:after {
  top: 0%;
}
.col.col-body > div#sidebar #menu .item.active:before {
  transform: rotate(-8deg);
}
.col.col-body > div#sidebar #menu .item.active:after {
  transform: rotate(8deg);
}
.col.col-body > div#sidebar #menu .item.active svg g {
  fill: #fff;
}
.page-content {
  position: relative;
  padding: 20px 40px 0;
  overflow: hidden;
  overflow-y: auto;
}
.page-content .replay,
.page-content .skip {
  display: none;
}
.page-content.wayfinding .mylocation,
.page-content.wayend .mylocation {
  display: none;
}
.page-content.wayfinding .meta_top,
.page-content.wayend .meta_top {
  display: flex!important;
}
.page-content.wayfinding .guidemap,
.page-content.wayend .guidemap {
  display: block;
}
.page-content.wayfinding .skip {
  display: block;
}
.page-content.wayend .replay {
  display: block;
}
.page-content.fullmap .v-floors,
.page-content.fullmap .fullmap_btn,
.page-content.fullmap .v-category,
.page-content.fullmap .handges,
.page-content.fullmap .mylocation,
.page-content.fullmap .meta_top {
  display: none!important;
}
.page-content.fullmap .goback {
  display: block;
}
.page-content.fullmap .fullmap_btn .a1 {
  display: none;
}
.page-content.fullmap .fullmap_btn .a2 {
  display: block;
}
.page-content * {
  color: #142659;
}
.page-content .nosearch {
  position: absolute;
  width: 100%;
  height: 710px;
  display: flex;
  top: 0px;
  left: 0px;
  background: #f5f5f5;
  justify-content: center;
  align-items: center;
  z-index: 1;
}
.page-content .nosearch:before {
  content: "No Search Found";
  font-size: 44px;
  color: #142659;
}
.page-content .header {
  width: 100%;
  height: 61px;
  font-size: 40px;
  line-height: 55px;
  margin-bottom: 20px;
  position: relative;
  z-index: 9999;
  pointer-events: none;
  font-family: "Oswald", sans-serif;
}
.page-content .sub-header {
  width: 100%;
  height: 56px;
  background: url("../assets/imgs/page-subheader.svg") center center no-repeat;
  background-size: auto 100%;
  font-size: 32px;
  padding-top: 3px;
  text-align: center;
}
.page-content .fullscreen {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.page-content .fullscreen .item,
.page-content .fullscreen > * {
  width: 100%;
  height: 100%;
  background: url() center center no-repeat;
  background-size: cover;
}
.page-content .fullscreen .item .swiper-wrapper *,
.page-content .fullscreen > * .swiper-wrapper * {
  object-fit: cover;
}
.page-content .directory .item {
  border: 2px solid #c7baa5;
  background: #fff;
}
.page-content .directory .item .top {
  border-bottom: 2px solid #c7baa5;
  line-height: 0;
}
.page-content .directory .item .top img {
  width: 100%;
  height: 204px;
  object-fit: cover;
  box-sizing: border-box;
}
.page-content .directory .item .bottom {
  padding: 24px;
  position: relative;
  height: 250px;
}
.page-content .directory .item .bottom:before {
  content: "";
  position: absolute;
  width: 4px;
  height: 100%;
  right: 0;
  top: 0;
  background: #142659;
}
.page-content .directory .item .bottom * {
  font-size: 14px;
}
.page-content .directory .item .bottom .title {
  font-weight: 600;
  margin-bottom: 10px;
}
.page-content .directory .item .bottom .building {
  margin-bottom: 29px;
}
.page-content .directory .item .bottom .number {
  font-weight: 600;
}
.page-content .directory .item .bottom .waybtn {
  position: absolute;
  bottom: 8px;
  margin: 0 auto;
  border: 2px solid #c7baa5;
  width: 160px;
  height: 36px;
  left: calc(50% - 80px);
  text-align: center;
  background: url("../assets/imgs/directory-btn.svg") left 22px center no-repeat;
  background-color: #fff;
  background-size: auto 16px;
  color: #1c1c1c;
  padding-left: 10px;
}
.page-content .directory .item .bottom .waybtn:not(.shelter) {
  bottom: 47px;
}
.page-content .directory .item .bottom .waybtn:before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 4px;
  background: #8e754c;
}
.page-content .directory-cat {
  gap: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  justify-content: left;
  flex-wrap: wrap;
  padding: 0 0;
  width: 1445px;
  margin: 0 auto;
}
.page-content .directory-cat .item {
  width: 220px;
  height: 220px;
  box-shadow: 4px 4px 0 0 rgba(142, 117, 75, 0.4);
  position: relative;
  background: url("../assets/imgs/list-bottom.svg") left bottom no-repeat;
  background-size: 100% auto;
  background-color: #fff;
}
.page-content .directory-cat .item svg {
  position: absolute;
  top: 20px;
  left: 20px;
  width: 76px;
  height: 76px;
}
.page-content .directory-cat .item svg g {
  fill: #142659;
}
.page-content .directory-cat .item .bottom {
  bottom: 20px;
  right: 20px;
  left: 40px;
  font-size: 24px;
  position: absolute;
  text-align: right;
}
.page-content #unity-container canvas {
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width:980px) {
  .page-content #unity-container canvas {
    width: 100%;
  }
}
.page-content .map-selector {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 10px 40px;
}
.page-content .map-selector .v-mob-floors {
  position: fixed;
  right: 2.5vw;
  bottom: 210px;
  max-height: calc(100% - 270px - 1em);
  overflow-y: scroll;
  border: 1px solid #c7baa5;
}
.page-content .map-selector .v-mob-floors::-webkit-scrollbar {
  display: none;
}
.page-content .map-selector .v-mob-floors > .item {
  border-bottom: #c7baa5;
}
.page-content .map-selector .v-mob-floors > .item:last-child {
  border-width: 0;
}
.page-content .map-selector .v-mob-floors .item {
  width: 50px;
}
.page-content .map-selector .v-mob-floors .item label {
  display: block;
  background: #fff;
  width: 100%;
  padding: 0.7em 0;
  font-size: 18px;
  font-weight: 900;
  line-height: 1em;
  text-align: center;
}
.page-content .map-selector .v-mob-floors .item input[type=radio] {
  display: none;
}
.page-content .map-selector .v-mob-floors .item input[type=radio]:checked + label {
  background: #142659;
  color: #fff;
}
.page-content .map-selector .v-mob-search {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 2.5vw 0.7em;
  background: #f5f5f5;
  box-sizing: border-box;
  z-index: 999;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
.page-content .map-selector .v-mob-search .searchbar {
  background: url() left 0.7em center no-repeat;
  background-color: #fff;
  background-size: auto 1.2em;
  border-radius: 0px;
  border: 0;
  padding: 0.7em;
  line-height: 1em;
  width: 100%;
  box-sizing: border-box;
  font-size: 15px;
  border: 1px solid rgba(0, 0, 0, 0.15);
}
.page-content .map-selector .v-mob-search .searchbar.to {
  margin-top: 0.5rem;
}
.page-content .map-selector .v-mob-search .searchbar.to.active {
  background-image: url("../assets/imgs/ic_destination.svg");
}
.page-content .map-selector .v-mob-search .searchbar.start {
  background-position: left 0.5em center;
}
.page-content .map-selector .v-mob-search .searchbar.start.active {
  background-image: url("../assets/imgs/ic_start.svg");
}
.page-content .map-selector .v-mob-search .searchbar.active {
  padding-left: 30px;
}
.page-content .map-selector .v-mob-search .search {
  position: absolute;
  font-size: 42px;
  width: 1em;
  height: 1em;
  background: url() center center no-repeat;
  background-size: 20px auto;
  top: 2.5vw;
  right: 1rem;
}
.page-content .map-selector .v-mob-search .search.exit {
  background-color: transparent;
  border: none;
}
.page-content .map-selector .v-mob-search .v-directory {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  z-index: 999;
  max-height: 300px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  overflow: scroll;
}
.page-content .map-selector .v-mob-search .v-directory > .item:last-child {
  border-width: 0px;
}
.page-content .map-selector .v-mob-search .v-directory .item {
  width: 100%;
  padding: 10px 1em;
  background: #f5f5f5;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
.page-content .map-selector .v-mob-search .v-directory .item .title {
  font-weight: 900;
  font-size: 12px;
}
.page-content .map-selector .v-mob-search .v-directory .item p {
  font-size: 10px;
  margin: 0;
  margin-bottom: 0.25em;
  line-height: 1.2em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.page-content .map-selector .v-mob-info {
  position: fixed;
  right: 2.5vw;
  bottom: 85px;
  max-height: 283px;
  border: 1px solid #c7baa5;
}
.page-content .map-selector .v-mob-info::-webkit-scrollbar {
  display: none;
}
.page-content .map-selector .v-mob-info > div {
  width: 50px;
  text-align: center;
  padding: 0.7em 0;
  box-sizing: border-box;
  background-color: #fff;
  line-height: 1em;
  font-size: 15px;
}
.page-content .map-selector .v-mob-info > div:hover {
  background: #142659;
}
.page-content .map-selector .v-mob-info > div:hover img {
  filter: brightness(100);
}
.page-content .map-selector .v-mob-info > div img {
  width: 1em;
  height: 1em;
  object-fit: contain;
}
.page-content .map-selector .v-floors {
  text-align: center;
  background: #fff;
  width: calc(100% + 80px);
  transform: translate(-40px, 10px);
  line-height: 1em;
  position: relative;
}
.page-content .map-selector .v-floors .back {
  position: absolute;
  top: 0;
  left: -150px;
  width: 150px;
  height: 100%;
  background: #142659;
  transition: 0.3s;
  z-index: 1;
}
.page-content .map-selector .v-floors .item {
  padding: 36px 0;
  box-sizing: content-box;
  display: inline-block;
  width: 100px;
  text-align: center;
  margin: 0 0em;
  font-size: 37px;
  text-decoration: none;
  position: relative;
  z-index: 2;
  font-weight: 900;
}
.page-content .map-selector .v-floors .item input[type=radio] {
  display: none;
}
.page-content .map-selector .v-floors .item input[type=radio]:checked + label {
  color: #fff;
}
.page-content .map-selector .v-floors .item label {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: 0.15s;
}
.page-content .map-selector .meta_top {
  display: flex;
  align-items: center;
  justify-content: center;
  display: none;
  margin-bottom: 15px;
}
.page-content .map-selector .meta_top,
.page-content .map-selector .meta_top * {
  pointer-events: none;
  -moz-user-select: -moz-none;
  -khtml-user-select: none;
  -webkit-user-select: none;
  /*
                  Introduced in IE 10.
                  See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
                */
  -ms-user-select: none;
  user-select: none;
}
.page-content .map-selector .meta_top > div {
  max-width: 550px;
  margin: 0 auto;
}
.page-content .map-selector .meta_top > div > div {
  padding-left: 1.25em;
  font-size: 14px;
  background: url() left center no-repeat;
  background-size: auto 1.5em;
  margin-bottom: 0.5em;
  white-space: nowrap;
}
.page-content .map-selector .meta_top > div > div.loc {
  background-image: url("../assets/imgs/arrow_user.png");
  background-size: 16px auto;
}
.page-content .map-selector .meta_top > div > div.pin {
  background-image: url("../assets/imgs/map-pin.png");
}
.page-content .map-selector .meta_top > div > div > span {
  display: inline-block;
  padding: 0em 0.5em;
  line-height: 1em;
}
.page-content .map-selector .meta_top > div > div > span:nth-child(1) {
  width: 100px;
  border-right: 1px solid #142659;
}
.page-content .map-selector .v-category,
.page-content .map-selector .v-building {
  margin: 0 auto 30px;
  justify-content: center;
}
.page-content .map-selector .v-b-wrap {
  background: rgba(255, 255, 255, 0.5);
  position: fixed;
  bottom: 0;
  left: 0;
  overflow: hidden;
  overflow-x: scroll;
  width: 100%;
  box-shadow: 0 0 8px rgba(20, 38, 89, 0.25);
}
.page-content .map-selector .v-b-wrap::-webkit-scrollbar {
  display: none;
}
.page-content .map-selector .v-building {
  max-width: 1100px;
  margin-bottom: 15px;
}
@media (max-width:980px) {
  .page-content .map-selector .v-building {
    display: block;
    margin-bottom: 0;
    padding: 1em;
    width: auto;
    max-width: 100%;
    white-space: nowrap;
    vertical-align: top;
  }
  .page-content .map-selector .v-building .item {
    width: 190px;
    display: inline-flex;
    margin-right: 1em;
    white-space: pre-wrap;
    vertical-align: top;
  }
}
.page-content .map-selector .v-category {
  max-width: 660px;
  margin-bottom: 25px;
  display: flex;
}
.page-content .map-selector .v-category .item {
  flex: 1;
}
.page-content .map-selector .v-category .item label {
  font-size: 36px;
  border: 0px;
}
.page-content .map-selector .v-category .item label svg g {
  fill: #8e754c;
}
.page-content .fullmap_btn,
.page-content .mylocation,
.page-content .myloc {
  position: absolute;
  right: 154px;
  bottom: 95px;
}
.page-content .fullmap_btn .a2,
.page-content .mylocation .a2,
.page-content .myloc .a2 {
  display: none;
}
.page-content .fullmap_btn.active .a1,
.page-content .mylocation.active .a1,
.page-content .myloc.active .a1 {
  display: none;
}
.page-content .fullmap_btn.active .a2,
.page-content .mylocation.active .a2,
.page-content .myloc.active .a2 {
  display: block;
}
.page-content .goback {
  display: none;
  position: absolute;
  left: 100px;
  bottom: 25px;
  width: 63px;
}
.page-content .mylocation,
.page-content .myloc {
  right: 60px;
  bottom: 237px;
}
.page-content .handges {
  position: absolute;
  left: 100px;
  bottom: 293px;
  width: 150px;
  pointer-events: none;
}
.page-content .guidemap {
  display: none;
  position: absolute;
  top: 40px;
  right: 40px;
  background: #fff;
  padding: 1em;
  width: 260px;
  padding: 18px;
  box-sizing: border-box;
  border-right: 5px solid #142659;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.15);
}
.page-content .guidemap.closed {
  width: 0;
  height: 0;
  border: 0px;
  padding: 0px;
}
.page-content .guidemap.closed .exit {
  transform: rotate(180deg);
}
.page-content .guidemap.closed *:not(.exit) {
  display: none;
}
.page-content .guidemap .exit {
  font-size: 32px;
  position: absolute;
  top: -0.5em;
  right: -0.5em;
  border: 2px solid rgba(20, 38, 89, 0.4);
  background: url("../assets/imgs/guide-exit.svg") center center no-repeat;
  background-size: 14px auto;
  background-color: #fff;
  border-radius: 100%;
  width: 1em;
  height: 1em;
}
.page-content .guidemap .gtitle {
  font-size: 18px;
  line-height: 1em;
  padding: 0.5em 1.1em;
  color: #000;
  border-bottom: 2px solid #142659;
  font-weight: bold;
  background: url("../assets/imgs/guide-title.svg") left center no-repeat;
  background-size: auto 1.1em;
}
.page-content .guidemap .qr {
  border: 3px solid #142659;
  margin: 0 auto 1rem;
  width: 100px;
  height: 100px;
  padding: 5px;
  box-sizing: content-box;
}
.page-content .guidemap .qr_txt {
  text-align: center;
  color: #000;
  margin-bottom: 0.1em;
}
.page-content .guidemap .wayitems {
  max-height: 300px;
  overflow: auto;
  padding-right: 1rem;
}
.page-content .guidemap .wayitems .wayitem {
  padding: 0 0 1rem;
}
.page-content .guidemap .wayitems .wayitem .wbuild {
  font-size: 15px;
  font-weight: bold;
  color: #142659;
  margin-bottom: 1em;
}
.page-content .guidemap .wayitems .wayitem .wcont {
  margin-bottom: 0.5em;
  display: flex;
  gap: 0.3rem;
}
.page-content .guidemap .wayitems .wayitem .wcont .windex,
.page-content .guidemap .wayitems .wayitem .wcont .wicon {
  flex-basis: 18px;
}
.page-content .guidemap .wayitems .wayitem .wcont .wicon {
  object-fit: contain;
  height: 18px;
}
.page-content .guidemap .wayitems .wayitem .wcont .windex {
  color: #fff;
  text-align: center;
  position: relative;
  border-radius: 100%;
  background: #142659;
  width: 1em;
  height: 18px;
  line-height: 18px;
  font-size: 12px;
  z-index: 0;
}
.page-content .guidemap .wayitems .wayitem .wcont .wdesc {
  flex: 8;
  font-size: 12px;
  color: #000;
}
.page-content .floor {
  display: none;
  position: absolute;
  top: 100px;
  left: 40px;
  z-index: 99;
}
.page-content .floor h1,
.page-content .floor p {
  line-height: 1em;
  margin: 0 0 15px;
  color: #196476;
}
.page-content .floor h1 {
  font-size: 72px;
}
.page-content .floor p {
  font-size: 18px;
}
.page-content .directory-selector {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 10px 40px;
  background: #fff;
  clear: both;
  overflow: hidden;
}
.page-content .directory-selector.fnb-list .v-building > *:first-child {
  display: none;
}
.page-content .directory-selector > div {
  float: left;
}
.page-content .directory-selector > div > .title {
  font-size: 16px;
  font-weight: 600;
}
.page-content .directory-selector > div:nth-child(1) {
  width: 65%;
  margin-right: 20px;
}
.page-content .directory-selector > div:nth-child(1) > .title {
  margin-bottom: 50px;
}
.page-content .directory-selector > div:nth-child(2) {
  width: calc(35% - 20px);
}
.page-content .fnb {
  gap: 55px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-content .fnb .item {
  position: relative;
  width: 200px;
  height: 440px;
  box-shadow: 4px 4px 0 rgba(142, 117, 75, 0.4);
  background: url() center center no-repeat;
  background-size: cover;
}
.page-content .fnb .item .bottom {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  left: -27px;
  bottom: -17px;
  width: calc(100% + 31px);
  height: 70px;
  background: url("../assets/imgs/fnb-bottom.svg") left bottom no-repeat;
  background-size: auto 100%;
  font-size: 16px;
  line-height: 1.2em;
  text-align: center;
  padding: 17px 26px 0 0;
}
.page-content .fnb-all {
  position: absolute;
  right: 49px;
  bottom: 68px;
}
.page-content .fnb-all .item {
  height: 70px;
  background: url("../assets/imgs/fnb-bottom.svg") left bottom no-repeat;
  background-size: auto 100%;
  font-size: 24px;
  text-align: center;
  padding: 26px 26px 0 0;
  float: right;
  width: 258px;
}
.page-content .landmarks .item,
.page-content .news .item {
  display: flex;
  width: 1369px;
  height: 565px;
  transition: 0.3s;
}
.page-content .landmarks .item:not(.swiper-slide-active),
.page-content .news .item:not(.swiper-slide-active) {
  transform: scale(0.85);
}
.page-content .landmarks .item .left,
.page-content .news .item .left {
  width: 912px;
  height: 100%;
}
.page-content .landmarks .item .left img,
.page-content .news .item .left img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page-content .landmarks .item .right,
.page-content .news .item .right {
  width: 354px;
  height: 100%;
  background: url("../assets/imgs/list-bottom.svg") left bottom no-repeat;
  background-size: 100% auto;
  background-color: #fff;
  border-right: 10px solid #142659;
  position: relative;
}
.page-content .landmarks .item .right .cont_a,
.page-content .news .item .right .cont_a {
  overflow: auto;
  overflow-x: hidden;
  padding: 30px 47px;
  height: 400px;
}
.page-content .landmarks .item .right *,
.page-content .news .item .right * {
  font-size: 16px;
  color: #1c1c1c;
}
.page-content .landmarks .item .right p,
.page-content .news .item .right p {
  margin-top: 0;
}
.page-content .landmarks .item .right .title,
.page-content .news .item .right .title {
  font-weight: 900;
  font-size: 22px;
}
.page-content .landmarks .item .right .location,
.page-content .news .item .right .location,
.page-content .landmarks .item .right .time,
.page-content .news .item .right .time,
.page-content .landmarks .item .right .date,
.page-content .news .item .right .date {
  padding-left: 1.5em;
  background: url() left top 5px no-repeat;
  background-size: auto 1.1em;
}
.page-content .landmarks .item .right .location,
.page-content .news .item .right .location {
  background-image: url("../assets/imgs/land-pin.svg");
}
.page-content .landmarks .item .right .time,
.page-content .news .item .right .time {
  background-image: url("../assets/imgs/land-clock.svg");
}
.page-content .landmarks .item .right .date,
.page-content .news .item .right .date {
  background-image: url("../assets/imgs/land-date.svg");
}
.page-content .landmarks .item .right .desc,
.page-content .news .item .right .desc {
  height: auto;
  position: relative;
  margin-bottom: 10px;
}
.page-content .landmarks .item .right .desc p,
.page-content .news .item .right .desc p {
  padding-bottom: 1em;
}
.page-content .landmarks .item .right .desc:before,
.page-content .news .item .right .desc:before {
  content: "";
  width: 100%;
  bottom: 0;
  pointer-events: none;
  height: 15px;
  position: absolute;
}
.page-content .landmarks .item .right .waybtn,
.page-content .news .item .right .waybtn {
  position: absolute;
  bottom: 30px;
  left: calc(50% - 100px);
  width: 200px;
  height: 46px;
  font-size: 18px;
  text-align: center;
  padding: 0.5em;
  padding-left: 30px;
  border: 2px solid rgba(142, 117, 76, 0.5);
  color: #000;
  background: url("../assets/imgs/news-btn-sub.svg") left 30px center no-repeat;
  background-size: auto 1.1em;
  background-color: #fff;
  line-height: 1em;
}
.page-content .landmarks .item .right .waybtn:before,
.page-content .news .item .right .waybtn:before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 5px;
  height: 100%;
  background: #8e754c;
}
.page-content .landmarks .item .right .waybtn:hover,
.page-content .news .item .right .waybtn:hover {
  background-image: url("../assets/imgs/news-btn.svg");
  background-color: #142659;
  color: #fff;
  border-color: #142659;
}
.page-content .landmarks .item .right .qr *,
.page-content .news .item .right .qr * {
  text-align: center;
  width: 100%;
  font-size: 12px;
  font-weight: 600;
}
.page-content .landmarks .item .right .qr p,
.page-content .news .item .right .qr p {
  margin-bottom: 0.25em;
}
.page-content .landmarks .item .right .qr .code,
.page-content .news .item .right .qr .code {
  width: 65px;
  height: 65px;
  margin: 0 auto;
  background: #fff;
  padding: 3px;
  border: 2px solid #142659;
}
.page-content .landmarks .item .right .qr .code img,
.page-content .news .item .right .qr .code img {
  display: inline !important;
}
.col-2 {
  display: flex;
}
.col-2 > div {
  flex: 1;
}
.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.5);
  z-index: 999999;
  pointer-events: none;
  opacity: 0;
  transition: 0.3s;
}
.overlay.rideselector {
  text-align: center;
}
.overlay.rideselector .content {
  width: 728px;
  height: 440px;
  border-right: 5px solid #142659;
  display: block;
}
.overlay.rideselector .isbunker {
  display: inline-block;
  margin: 0 auto;
  padding: 0.5em 30px;
  font-size: 1rem;
  width: auto;
  float: none;
  border-radius: 50px;
  border: 1px solid rgba(0, 0, 0, 0.15);
}
.overlay.rideselector .isbunker.active {
  font-weight: bold;
  border-color: #142659;
  background: #142659;
  color: #fff;
}
.overlay.rideselector .full {
  width: 100%;
  float: left;
  margin-bottom: 1em;
  text-align: center;
}
.overlay.rideselector .col-2 {
  width: 100%;
  float: left;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
}
.overlay.rideselector .col-2 > div {
  flex: auto;
}
@media (max-width:980px) {
  .overlay.rideselector .col-2 > div {
    flex: 0;
    flex-basis: 90px;
  }
}
.overlay.rideselector .col-2 > .row {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.overlay.rideselector .col-2 > .row div {
  font-size: 190px;
  width: 1em;
  height: 1em;
  border-radius: 100%;
  background: url() center center no-repeat;
  background-size: 74px auto;
  border: 2px solid #c7baa5;
}
.overlay.rideselector .col-2 > .row div:hover {
  background-color: #142659;
  border-color: #142659;
}
.overlay.rideselector .col-2 > .row.lift > div:hover {
  background-image: url("../assets/imgs/lift-1.svg") !important;
}
.overlay.rideselector .col-2 > .row.esc > div:hover {
  background-image: url("../assets/imgs/esc-1.svg") !important;
}
.overlay.rideselector .col-2 > .row p {
  text-align: center;
  font-size: 22px;
  margin-bottom: 0;
}
@media (max-width:980px) {
  .overlay.detail .content,
  .overlay.rideselector .content {
    width: 95vw;
    max-width: 450px;
    height: auto;
    max-height: 400px;
    padding: 1em;
  }
  .overlay.detail .content .exit,
  .overlay.rideselector .content .exit {
    right: 0;
    top: -1.5em;
  }
  .overlay.detail .content .title,
  .overlay.rideselector .content .title {
    width: 100%;
  }
  .overlay.detail .content p,
  .overlay.rideselector .content p {
    font-size: 15px;
  }
  .overlay.rideselector .content {
    padding: 1.5em 1em;
  }
  .overlay.rideselector .full {
    font-size: 15px;
    margin-bottom: 1em;
  }
  .overlay.rideselector .col-2 > .row div {
    font-size: 60px;
    background-size: 0.4em auto;
  }
  .overlay.rideselector .col-2 > .row p {
    font-size: 15px;
    margin-top: 0.5em;
  }
}
.overlay.active {
  opacity: 1;
  pointer-events: all;
}
.overlay .content {
  width: 1628px;
  height: 678px;
  background: #fff;
  position: relative;
  padding: 50px;
  gap: 50px;
}
@media (max-width:980px) {
  .overlay .content {
    gap: 1rem;
  }
}
.overlay .content .thumb {
  margin-right: 1rem;
}
.overlay .content .thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.overlay .content div {
  font-size: 26px;
  color: #1c1c1c;
}
.overlay .content .number {
  font-weight: 600;
  text-align: right;
  font-size: 24px;
  color: #1c1c1c;
}
.overlay .content .title {
  font-weight: 700;
  width: 100%;
  margin-top: 0;
  font-size: 40px;
  color: #1c1c1c;
}
.overlay .content .location {
  flex: 3;
  font-size: 24px;
  color: #1c1c1c;
  font-weight: 700;
}
.overlay .content .time,
.overlay .content .tel {
  padding: 0.25em 0;
  padding-left: 1.5em;
  background: url() left center no-repeat;
  background-size: 1.2em auto;
  line-height: 1em;
  font-size: 15px;
}
.overlay .content .time {
  background-image: url("../assets/imgs/dir-detail-clock.svg");
  margin: 2em 0 0.5em;
}
.overlay .content .tel {
  background-image: url("../assets/imgs/dir-detail-tel.svg");
  margin: 0 0 2em;
}
.overlay .content .desc {
  height: 200px;
  overflow-y: auto;
  margin: 0 0 2.5em;
  padding-right: 1em;
  font-size: 15px;
}
.overlay .content .waybtn,
.overlay .content .waystart,
.overlay .content .wayto {
  position: relative;
  display: block;
  float: right;
  margin: 0 auto;
  margin-left: 1rem;
  width: 260px;
  height: 58px;
  font-size: 18px;
  text-align: center;
  padding: 0.5em;
  padding-left: 30px;
  border: 1px solid #8e754c;
  color: #000;
  background: url("../assets/imgs/news-btn-sub.svg") left 58px center no-repeat;
  background-size: auto 1.5em;
  background-color: #fff;
}
@media (max-width:980px) {
  .overlay .content .waybtn,
  .overlay .content .waystart,
  .overlay .content .wayto {
    margin-top: 0.5rem;
    width: 190px;
    height: 38px;
    font-size: 15px;
    text-align: center;
    padding: 0.5em;
    padding-left: 1em;
    border: 1px solid #8e754c;
    color: #000;
    background: url(http://127.0.0.1:5500/assets/imgs/news-btn-sub.svg) left 2em center no-repeat;
  }
}
.overlay .content .waybtn:before,
.overlay .content .waystart:before,
.overlay .content .wayto:before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 5px;
  height: 100%;
  background: #8e754c;
}
.overlay .content .waybtn:hover,
.overlay .content .waystart:hover,
.overlay .content .wayto:hover {
  background-image: url("../assets/imgs/news-btn.svg");
  background-color: #142659;
  color: #fff;
  border-color: #142659;
}
.overlay .content .waystart,
.overlay .content .wayto {
  background-image: none;
}
.overlay .content .exit {
  position: absolute;
  right: -1.5em;
  top: 0.5em;
  font-size: 30px;
  width: 1em;
  height: 1em;
  background: url("../assets/imgs/exit.svg") center center no-repeat;
  background-size: contain;
}
.content.access .panel {
  position: absolute;
  top: 0;
  left: 0;
  width: 400%;
  height: 100%;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.content.access .panel .section {
  width: 25%;
}
.content.access .panel .section .inner {
  background: #fff;
  border-right: 5px solid #142659;
  box-sizing: border-box;
  margin: 0 auto;
  position: relative;
  width: 1280px;
  height: 500px;
}
.content.access .panel .section .left,
.content.access .panel .section .right {
  width: 50%;
  height: 100%;
  float: left;
}
.content.access .panel .section .userloc {
  position: absolute;
  top: 200px;
  left: 400px;
  width: 100px;
  margin-left: -50px;
  margin-top: -15px;
}
.content.access .panel .section[data-name=bus] .inner {
  width: 1480px;
  height: 616px;
  overflow: hidden;
}
.content.access .panel .section[data-name=bus] .qr {
  position: absolute;
  right: 20px;
  top: 10px;
  z-index: 999;
  display: none;
}
.content.access .panel .section[data-name=bus] .left {
  width: 865px;
  background: #faf9f7;
  padding: 20px;
}
.content.access .panel .section[data-name=bus] .left .title {
  width: 100%;
  display: flex;
  align-items: center;
  color: #000;
  font-size: 1.5rem;
  font-weight: bold;
  margin-bottom: 35px;
}
.content.access .panel .section[data-name=bus] .left .title img {
  width: 25px;
  height: auto;
  margin-right: 0.5rem;
}
.content.access .panel .section[data-name=bus] .left .bus-map {
  width: 100%;
  height: 435px;
  margin-bottom: 31px;
  background: url("../assets/imgs/mrt-map.jpg") center center no-repeat;
  background-size: cover;
  position: relative;
}
.content.access .panel .section[data-name=bus] .left .bus-map .b {
  position: relative;
  top: 0;
  left: 0;
}
.content.access .panel .section[data-name=bus] .left .bus-map .b .label {
  position: absolute;
  width: 60px;
  left: -30px;
  background: #8e754c;
  color: #fff;
  transition: 0.3s;
  border-radius: 15px;
  line-height: 1em;
  font-size: 12px;
  padding: 5px 0;
  text-align: center;
  bottom: 52px;
}
.content.access .panel .section[data-name=bus] .left .bus-map .b.active svg {
  width: 60px;
  height: auto;
  left: -30px;
}
.content.access .panel .section[data-name=bus] .left .bus-map .b.active .svg-inner {
  fill: #142659;
}
.content.access .panel .section[data-name=bus] .left .bus-map .b.active .label {
  background: #142659;
  bottom: 75px;
}
.content.access .panel .section[data-name=bus] .left .bus-map .b svg {
  position: absolute;
  bottom: 0;
  width: 40px;
  height: auto;
  left: -20px;
  transition: 0.3s;
}
.content.access .panel .section[data-name=bus] .left .bus-map .b svg .svg-inner {
  fill: #8e754c;
}
.content.access .panel .section[data-name=bus] .left .foot {
  text-align: center;
  font-size: 20px;
}
.content.access .panel .section[data-name=bus] .right {
  overflow: auto;
  padding: 30px;
  width: 609px;
  border-left: 1px solid #c7baa5;
}
.content.access .panel .section[data-name=bus] .right.info .item {
  width: 85%;
  margin-bottom: 1em;
}
.content.access .panel .section[data-name=bus] .right.info .h {
  font-size: 1.2rem;
  font-weight: bold;
  color: #000;
}
.content.access .panel .section[data-name=bus] .right.info .h .numb {
  display: inline-block;
  padding: 5px;
  line-height: 1em;
  width: 90px;
  margin-right: 0.5em;
  text-align: center;
  background: #8e754c;
  color: #fff;
  border-radius: 5px;
}
.content.access .panel .section[data-name=bus] .right.info p {
  color: #333;
}
.content.access .panel .section[data-name=bus] .right.detail {
  float: none;
  position: absolute;
  top: 0;
  right: -610px;
  transition: 0.3s;
  background: #fff;
  z-index: 10;
}
.content.access .panel .section[data-name=bus] .right.detail.active {
  right: 0px;
}
.content.access .panel .section[data-name=bus] .right.detail .exit {
  position: absolute;
  right: 20px;
  padding-top: 48px;
  width: 48px;
  line-height: 1.5em;
  font-size: 12px;
  background: url("../assets/imgs/arr-w.svg") center top no-repeat;
  background-size: 100% auto;
  top: 119px;
}
.content.access .panel .section[data-name=bus] .right.detail .h {
  font-size: 1.2rem;
  font-weight: bold;
  color: #000;
}
.content.access .panel .section[data-name=bus] .right.detail .h .numb {
  display: inline-block;
  padding: 5px;
  line-height: 1em;
  width: 90px;
  margin-right: 0.5em;
  text-align: center;
  background: #142659;
  color: #fff;
  border-radius: 5px;
  margin-bottom: 45px;
}
.content.access .panel .section[data-name=bus] .right.detail .details {
  width: 88%;
  overflow: hidden;
  overflow-y: auto;
  clear: both;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}
.content.access .panel .section[data-name=bus] .right.detail .details > .item {
  width: calc(50% - 15px - 1px);
  border-bottom: 1px solid #f5f5f5;
  padding: 20px 0 0px;
  position: relative;
}
.content.access .panel .section[data-name=bus] .right.detail .details > .item:nth-child(2n - 1) {
  margin-right: 15px;
}
.content.access .panel .section[data-name=bus] .right.detail .details > .item:nth-child(2n) {
  margin-left: 15px;
}
.content.access .panel .section[data-name=bus] .right.detail .details > .item:nth-child(2n):before {
  content: "";
  position: absolute;
  top: 0;
  left: -15px;
  height: calc(100% + 1px);
  width: 2px;
  background: #c7baa5;
}
.content.access .panel .section[data-name=bus] .right.detail .details > .item .il,
.content.access .panel .section[data-name=bus] .right.detail .details > .item .ir {
  float: left;
}
.content.access .panel .section[data-name=bus] .right.detail .details > .item .il {
  width: 35%;
  font-size: 27px;
  font-weight: bold;
  line-height: 1em;
}
.content.access .panel .section[data-name=bus] .right.detail .details > .item .ir {
  width: 65%;
  display: block;
}
.content.access .panel .section[data-name=bus] .right.detail .details > .item .ir > div {
  width: calc(33.33% - 5px * 0.67);
  margin-right: 5px;
  float: left;
  position: relative;
}
.content.access .panel .section[data-name=bus] .right.detail .details > .item .ir > div:last-child {
  margin-right: 0px;
}
.content.access .panel .section[data-name=bus] .right.detail .details > .item .ir > div .disord {
  position: absolute;
  left: -15px;
  top: 2px;
}
.content.access .panel .section[data-name=bus] .right.detail .details > .item .ir > div .lab {
  display: block;
  width: 100%;
  font-size: 6px;
  color: #fff;
  background: #142659;
  border-radius: 2px;
  height: 12px;
  line-height: 12px;
  text-align: center;
}
.content.access .panel .section[data-name=bus] .right.detail .details > .item .ir > div .str {
  font-size: 15px;
  font-weight: bold;
}
.content.access .panel .section[data-name=bus] .right.detail .details > .item .ir > div .short {
  font-size: 6px;
  margin-left: -3/8 * 1em;
}
.content.access .panel .section:not([data-name=bus]) {
  display: flex;
  align-items: center;
  justify-content: center;
}
.content.access .panel .section:not([data-name=bus]) .inner {
  width: 1480px;
  height: 582px;
  border: 0;
}
.content.access .panel .section:not([data-name=bus]) .left {
  width: 1094px;
  position: relative;
  background: url("../assets/imgs/mrt-map.jpg") center center no-repeat;
  background-size: cover;
}
.content.access .panel .section:not([data-name=bus]) .left.carpark {
  background-image: url("../assets/imgs/empty.png");
}
.content.access .panel .section:not([data-name=bus]) .left > div {
  position: relative;
  top: 0;
  left: 0;
}
.content.access .panel .section:not([data-name=bus]) .left > div.b.active svg {
  width: 60px;
  height: auto;
  left: -30px;
}
.content.access .panel .section:not([data-name=bus]) .left > div.b.active.t .svg-inner {
  fill: #142659;
}
.content.access .panel .section:not([data-name=bus]) .left > div svg {
  position: absolute;
  bottom: 0;
  width: 40px;
  height: auto;
  left: -20px;
  transition: 0.3s;
}
.content.access .panel .section:not([data-name=bus]) .left > div.m-1 {
  left: 603px;
  top: 53px;
}
.content.access .panel .section:not([data-name=bus]) .left > div.m-1 .mrt-inner {
  fill: #0554a7;
}
.content.access .panel .section:not([data-name=bus]) .left > div.m-2 {
  left: 769px;
  top: 241px;
}
.content.access .panel .section:not([data-name=bus]) .left > div.m-2 .mrt-inner {
  fill: #fdb02b;
}
.content.access .panel .section:not([data-name=bus]) .left > div.m-3 {
  left: 836px;
  top: 611px;
}
.content.access .panel .section:not([data-name=bus]) .left > div.m-3 .mrt-inner {
  fill: #d42e26;
}
.content.access .panel .section:not([data-name=bus]) .left > div.t .svg-inner {
  fill: #8e754c;
}
.content.access .panel .section:not([data-name=bus]) .left > div.t-1 {
  top: 59px;
  left: 637px;
}
.content.access .panel .section:not([data-name=bus]) .left > div.t-1 .svg-inner {
  fill: #142659;
}
.content.access .panel .section:not([data-name=bus]) .left > div.t-2 {
  top: 328px;
  left: 734px;
}
.content.access .panel .section:not([data-name=bus]) .left svg .mrt-inner {
  fill: #142659;
}
.content.access .panel .section:not([data-name=bus]) .right {
  width: 386px;
  background: url("../assets/imgs/panel-back.svg") center top no-repeat;
  background-size: 100% auto;
  padding: 20px 60px;
  box-sizing: border-box;
  border-left: 1px solid #c7baa5;
}
.content.access .panel .section:not([data-name=bus]) .right * {
  display: none!important;
}
.content.access .panel .section:not([data-name=bus]) .right p {
  font-size: 16px;
}
.content.access .panel .section:not([data-name=bus]) .right .title {
  display: flex;
  align-items: center;
  font-size: 24px;
  font-weight: bold;
}
.content.access .panel .section:not([data-name=bus]) .right .title img {
  width: 28px;
  height: auto;
  margin-right: 0.5em;
}
.content.access .bottom {
  position: absolute;
  bottom: 50px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99;
}
.content.access .qr {
  margin-bottom: 1em;
}
.content.access .qr * {
  text-align: center;
  width: 100%;
  font-size: 12px;
  font-weight: 600;
}
.content.access .qr p {
  margin-bottom: 0.25em;
}
.content.access .qr .code {
  width: 65px;
  height: 65px;
  margin: 0 auto;
  background: #fff;
  padding: 3px;
  border: 2px solid #142659;
}
.content.access .qr .code img {
  display: inline !important;
}
.v-building,
.v-category,
.v-accessibility {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 20px;
}
.v-building input[type=radio],
.v-category input[type=radio],
.v-accessibility input[type=radio] {
  display: none;
}
.v-accessibility {
  justify-content: center;
  align-items: center;
  max-width: 1300px;
}
.v-accessibility > .item {
  width: calc(25% - 30px*3*0.5);
}
.v-accessibility > .item label {
  width: 100%;
  text-align: center;
  border: 2px solid rgba(142, 117, 76, 0.5);
  position: relative;
  padding: 1em 0;
  height: 1em;
  display: flex;
  align-items: center;
  justify-content: center;
}
.v-accessibility > .item label span {
  position: relative;
  z-index: 2;
  color: #142659;
  transition: 0.3s;
}
.v-accessibility > .item label:before {
  content: "";
  position: absolute;
  right: 0;
  height: 100%;
  top: 0;
  width: 8px;
  transition: 0.3s;
  z-index: 1;
  background: #8e754c;
}
.v-accessibility > .item input[type=radio]:checked + label {
  border-color: rgba(20, 38, 89, 0.5);
}
.v-accessibility > .item input[type=radio]:checked + label span {
  color: #fff;
}
.v-accessibility > .item input[type=radio]:checked + label:before {
  width: 100%;
  background: #142659;
}
.v-building > .item {
  width: 200px;
}
.v-building > .item:nth-child(1) label {
  background: #fff;
  border-color: rgba(135, 109, 87, 0.5);
}
.v-building > .item:nth-child(1) label:before {
  background: #876d57;
}
.v-building > .item:nth-child(2) label {
  background: #fff;
  border-color: rgba(25, 100, 118, 0.5);
}
.v-building > .item:nth-child(2) label:before {
  background: #196476;
}
.v-building > .item:nth-child(3) label {
  background: #fff;
  border-color: rgba(149, 113, 68, 0.5);
}
.v-building > .item:nth-child(3) label:before {
  background: #957144;
}
.v-building > .item:nth-child(4) label {
  background: #fff;
  border-color: rgba(204, 156, 49, 0.5);
}
.v-building > .item:nth-child(4) label:before {
  background: #cc9c31;
}
.v-building > .item:nth-child(5) label {
  background: #fff;
  border-color: rgba(206, 29, 36, 0.5);
}
.v-building > .item:nth-child(5) label:before {
  background: #ce1d24;
}
.v-building > .item:nth-child(6) label {
  background: #fff;
  border-color: rgba(20, 38, 89, 0.5);
}
.v-building > .item:nth-child(6) label:before {
  background: #142659;
}
.v-building > .item:nth-child(7) label {
  background: #fff;
  border-color: rgba(143, 20, 55, 0.5);
}
.v-building > .item:nth-child(7) label:before {
  background: #8f1437;
}
.v-building > .item:nth-child(8) label {
  background: #fff;
  border-color: rgba(149, 113, 68, 0.5);
}
.v-building > .item:nth-child(8) label:before {
  background: #957144;
}
.v-building > .item:nth-child(9) label {
  background: #fff;
  border-color: rgba(62, 38, 87, 0.5);
}
.v-building > .item:nth-child(9) label:before {
  background: #3e2657;
}
.v-building > .item label {
  width: 100%;
  text-align: center;
  border: 2px solid rgba(20, 38, 89, 0.5);
  position: relative;
  padding: 1em 0;
  height: 1em;
  font-size: 12px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
}
.v-building > .item label span {
  position: relative;
  z-index: 2;
  color: #142659;
  transition: 0.3s;
}
.v-building > .item label:before {
  content: "";
  position: absolute;
  right: 0;
  height: 100%;
  top: 0;
  width: 8px;
  transition: 0.3s;
  z-index: 1;
  background: #142659;
}
.v-building > .item input[type=radio]:checked + label span {
  color: #fff;
}
.v-building > .item input[type=radio]:checked + label:before {
  width: 100%;
}
.v-cat-wrap {
  display: flex;
  align-items: center;
  height: 190px;
}
.v-category {
  gap: 0px;
  margin-bottom: 0;
}
.v-category .item {
  width: 16.66%;
}
.v-category .item label {
  font-size: 56px;
  width: 1em;
  height: 1em;
  border-radius: 100%;
  position: relative;
  background: #fff;
  border: 2px solid rgba(20, 38, 89, 0.5);
  display: block;
  margin: 0 auto;
  transition: 0.15s;
  display: flex;
  align-items: center;
  justify-content: center;
}
.v-category .item label img {
  font-size: 34px;
  width: 1em;
  height: 1em;
  object-fit: contain;
}
.v-category .item label svg {
  position: absolute;
  font-size: 40px;
  width: 0.5em;
  height: 0.5em;
  top: calc(50% - 0.25em);
  left: calc(50% - 0.25em);
}
.v-category .item label svg g {
  fill: #142659;
  transition: 0.15s;
}
.v-category .item input[type=radio]:checked + label {
  background-color: #142659;
}
.v-category .item input[type=radio]:checked + label img {
  filter: brightness(100);
}
.v-category .item input[type=radio]:checked + label svg g {
  fill: #fff;
}
.v-category .item .title {
  text-align: center;
  color: #1c1c1c;
  font-size: 10px;
  margin: 0.25em 0;
  line-height: 1.25em;
}
.map-loading {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(245, 245, 245, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999999;
  font-size: 52px;
}
@media (max-width:980px) {
  .map-loading {
    font-size: 32px;
  }
}
.swiper-container {
  overflow: visible;
}
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: -30px;
}
.swiper-pagination-bullet-active {
  background: #142659;
}
#saver {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#saver .swiper-container {
  pointer-events: none;
}
#saver .swiper-container .swiper-wrapper img {
  width: 100%;
  height: 1080px;
  object-fit: cover;
}
#saver .btn {
  position: absolute;
  z-index: 9999;
  bottom: 100px;
  width: 642px;
  height: 56px;
  left: calc(50% - 321px);
  background: url("../assets/imgs/saver-btn.svg") center center no-repeat;
  background-size: contain;
  font-size: 18px;
  text-align: center;
}
#saver.active {
  opacity: 1;
}
