@charset "UTF-8";

:root {
  --gourmet: #F9D19E;
  --fashion: #EBB3B8;
  --fashiongoods: #9FA07F;
  --homegoods: #BCCBD3;
  --service: #D3B6A0;
}


.main-contents > .container {
  position: relative;
}
.main-contents > .container::before {
  content: '';
  display: block;
  background: var(--white);
  border-radius: .75rem;
  position: absolute;
  top: 4rem;
  right: 0;
  left: 0;
  bottom: 0;
}
@media (min-width: 576px){
  .main-contents > .container::before {
    right: max(calc(25% - 25vw), -50px);
    left: max(calc(25% - 25vw), -50px);
  }
}
@media (min-width: 992px){
  .main-contents > .container::before {
    top: 5rem;
  }
}


/* --------------------
  Search
-------------------- */
.floor .tab-panel .select-cont {
  padding: 0 .5em .125em .5em;
}
.floor .tab-panel .select-cont + .select-cont {
  margin-top: 1em;
}

@media (min-width: 768px){
  .floor .tabs li {
    min-width: 196px;
  }
}



/* ============
   select2.js
=============== */
.select-desc {
  line-height: 1.5;
  letter-spacing: .04em;
  font-feature-settings: "palt";
  margin-bottom: .5em;
}
.select-desc em {
  font-style: normal;
  font-size: 1.375em;
}



.select2-container--default .select2-selection--single {
  background: transparent;
  background-repeat: no-repeat;
  background-position: right 5% center;
  background-size: auto 75%;
  border: 3px solid;
  border-radius: .375em 1.5em .375em .375em;
  height: 3.5em;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  background: transparent;
  line-height: calc(3.5em - 6px);
  padding: 0 1.5em;
  border-radius: 1.7em;
}
.select2-selection__arrow {
  display: none;
}

.select2-container--open .select2-dropdown--below {
  border: 1px solid #aaa;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
  font-size: 16px;
  border: 1px solid #aaa;
  border-radius: 3px;
  height: 2.75em;
  padding: .5em;
}
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: var(--color1);
}



.item1 .select-desc em {
  color: var(--orange);
}
.item2 .select-desc em {
  color: var(--blue);
}

.item1 .select2-selection--single {
  border-color: var(--orange);
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2042%2042%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m19.74%203h.04c4.27%200%208.57%201.65%2011.83%204.91%203.27%203.27%204.91%207.57%204.91%2011.85%200%202.99-.82%205.98-2.41%208.63l3.7%203.7c1.58%201.58%201.58%204.14%200%205.72-.79.79-1.83%201.18-2.86%201.18s-2.07-.4-2.86-1.18l-3.7-3.7c-2.65%201.59-5.63%202.41-8.61%202.41h-.03c-4.28%200-8.58-1.65-11.84-4.91-3.27-3.27-4.91-7.57-4.91-11.85s1.64-8.59%204.91-11.85c3.26-3.26%207.56-4.91%2011.83-4.91m.02%2027.05c2.64%200%205.26-1%207.28-3.01%202.02-2.02%203.01-4.63%203.01-7.28%200-2.64-1-5.26-3.01-7.28-2.02-2.01-4.63-3.01-7.28-3.01-2.64%200-5.26%201-7.28%203.01-2.02%202.02-3.01%204.63-3.01%207.28%200%202.64%201%205.26%203.01%207.28%202.02%202.02%204.63%203.01%207.28%203.01m.02-30.05h-.02c-5.29%200-10.24%202.05-13.97%205.79-3.74%203.73-5.79%208.69-5.79%2013.97%200%205.27%202.05%2010.24%205.79%2013.97%203.73%203.73%208.69%205.79%2013.96%205.79%202.79%200%205.54-.6%208.08-1.74l2.15%202.15c1.33%201.33%203.1%202.06%204.98%202.06s3.65-.73%204.98-2.06%202.06-3.1%202.06-4.98-.73-3.65-2.06-4.98l-2.15-2.15c1.14-2.54%201.74-5.29%201.74-8.07%200-5.28-2.05-10.24-5.79-13.97-3.74-3.73-8.69-5.78-13.96-5.78zm-.02%2027.05c-1.95%200-3.78-.76-5.16-2.14-1.37-1.37-2.13-3.21-2.13-5.16%200-1.94.76-3.78%202.14-5.15%201.37-1.37%203.21-2.13%205.16-2.13%201.94%200%203.77.76%205.15%202.14%201.37%201.37%202.13%203.21%202.13%205.16%200%201.94-.76%203.77-2.14%205.15-1.37%201.37-3.2%202.13-5.15%202.13z%22%20fill%3D%22%23fd6c24%22%2F%3E%3C%2Fsvg%3E');
}
.item2 .select2-selection--single {
  border-color: var(--blue);
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2042%2042%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m19.74%203h.04c4.27%200%208.57%201.65%2011.83%204.91%203.27%203.27%204.91%207.57%204.91%2011.85%200%202.99-.82%205.98-2.41%208.63l3.7%203.7c1.58%201.58%201.58%204.14%200%205.72-.79.79-1.83%201.18-2.86%201.18s-2.07-.4-2.86-1.18l-3.7-3.7c-2.65%201.59-5.63%202.41-8.61%202.41h-.03c-4.28%200-8.58-1.65-11.84-4.91-3.27-3.27-4.91-7.57-4.91-11.85s1.64-8.59%204.91-11.85c3.26-3.26%207.56-4.91%2011.83-4.91m.02%2027.05c2.64%200%205.26-1%207.28-3.01%202.02-2.02%203.01-4.63%203.01-7.28%200-2.64-1-5.26-3.01-7.28-2.02-2.01-4.63-3.01-7.28-3.01-2.64%200-5.26%201-7.28%203.01-2.02%202.02-3.01%204.63-3.01%207.28%200%202.64%201%205.26%203.01%207.28%202.02%202.02%204.63%203.01%207.28%203.01m.02-30.05h-.02c-5.29%200-10.24%202.05-13.97%205.79-3.74%203.73-5.79%208.69-5.79%2013.97%200%205.27%202.05%2010.24%205.79%2013.97%203.73%203.73%208.69%205.79%2013.96%205.79%202.79%200%205.54-.6%208.08-1.74l2.15%202.15c1.33%201.33%203.1%202.06%204.98%202.06s3.65-.73%204.98-2.06%202.06-3.1%202.06-4.98-.73-3.65-2.06-4.98l-2.15-2.15c1.14-2.54%201.74-5.29%201.74-8.07%200-5.28-2.05-10.24-5.79-13.97-3.74-3.73-8.69-5.78-13.96-5.78zm-.02%2027.05c-1.95%200-3.78-.76-5.16-2.14-1.37-1.37-2.13-3.21-2.13-5.16%200-1.94.76-3.78%202.14-5.15%201.37-1.37%203.21-2.13%205.16-2.13%201.94%200%203.77.76%205.15%202.14%201.37%201.37%202.13%203.21%202.13%205.16%200%201.94-.76%203.77-2.14%205.15-1.37%201.37-3.2%202.13-5.15%202.13z%22%20fill%3D%22%23198fd6%22%2F%3E%3C%2Fsvg%3E');
}

[id^="select2-map_selector_current"] .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: var(--orange);
}
[id^="select2-map_selector_destination"] .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: var(--blue);
}


/* --------------------
  Map
-------------------- */
.map-note{
  content: '';
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: rgba(51,51,51,.3);
  color: #000;
  line-height: 1.5;
  padding: 1.5rem 1.25rem;
  border-radius: .75rem;
  position: absolute;
  top: -12px;
  right: -12px;
  bottom: -12px;
  left: -12px;
  z-index: 10;
}
.map-note ul {
  margin-left: 1em;
}
.map-note ul li {
  margin-bottom: .5em;
}
.map-note.show {
  animation: fadeout .8s cubic-bezier(.39, .575, .565, 1) forwards 2s;
  pointer-events: none;
}
.map-note .inner + p {
  width: 7.5em;
  margin-left: auto;
}



#map {
  width: 100%;
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
}
#map .map-wrap {
  padding: 8rem 0;
  overflow: hidden;
}
#map .panzoom-wrap {
  overflow: visible!important;
}
@media (min-width: 992px){
  #map .map-wrap {
    padding: 0 0 6rem;
  }
}


@media (max-width: 991px) {
  .tab-select .tab-panels {
    background: var(--white);
    margin: 0 -12px;
  }
}

.panzoom-wrap {
  position: relative;
}
.panzoom-wrap .zoom_btn {
  display: flex;
  justify-content: flex-end;
  column-gap: 1rem;
  margin-top: 1rem;
  position: absolute;
  top: 100%;
  right: 1rem;
  z-index: 1;
}
.panzoom-wrap .zoom_btn .zoom-in,
.panzoom-wrap .zoom_btn .zoom-out {
  display: block;
  font-size: 1rem;
  width: 3.5em;
  height: 3.5em;
  border-radius: 50%;
  background: var(--white);
  color: var(--black);
  border: 3px solid currentColor;
  cursor: pointer;
  position: relative;
  transition: color .2s;
}
.panzoom-wrap .zoom_btn .zoom-in:hover,
.panzoom-wrap .zoom_btn .zoom-out:hover {
  color: var(--color1);
}
.panzoom-wrap .zoom_btn .zoom-in::before,
.panzoom-wrap .zoom_btn .zoom-in::after,
.panzoom-wrap .zoom_btn .zoom-out::before {
  content: '';
  display: block;
  width: 50%;
  height: 3px;
  border-radius: 2px;
  background: currentColor;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.panzoom-wrap .zoom_btn .zoom-in::after {
  transform: translate(-50%,-50%) rotate(90deg);
}
@media (max-width: 991px){
  .panzoom-wrap .zoom_btn {
    display: none;
  }
}





.panzoom-element{
  font-size: 0;
}
.bg-map img {
  width: 100%;
  display: block;
  vertical-align: bottom;
}
.svg-map {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0;
}
.svg-map svg {
  display: block;
  width: 100%;
  vertical-align: bottom;
}
.svg-map svg a {
  display: block;
}
.svg-map svg path,
.svg-map svg rect,
.svg-map svg polygon,
.svg-map svg polyline{
  opacity: 0;
}
.svg-map svg a.on path,
.svg-map svg a.on rect,
.svg-map svg a.on polygon,
.svg-map svg a.on polyline{
  fill: #E83817;
  fill-opacity:0.1;
  stroke: #E83817;
  stroke-width: 2;
  -webkit-animation: dash 1.5s ease infinite;
  animation: dash 1.5s ease infinite;
}
@keyframes dash {
  to { opacity: 1; }
}

@media screen and (min-width: 768px) {
  .svg-map svg a:hover path,
  .svg-map svg a:hover rect,
  .svg-map svg a:hover polygon,
  .svg-map svg a:hover polyline{
    cursor: pointer;
    transition: .3s;
    stroke: #E83817;
    stroke-width: 3;
    fill: #E83817;
    fill-opacity:0.2;
    opacity: 1;
  }
}




div[class^="pin"]{
  width: min(6.66%, 54px);
  background: url(img/pin_current.svg) no-repeat center / contain;
  position: absolute;
  left: -100%;
  z-index: 99;
  transform: translateX(-50%);
  display: none;
}
div[class^="pin"]:not(.pin){
  background-image: url(img/pin_destination.svg);
}
div[class^="pin"].on{
  display: block;
}
div[class^="pin"] a{
  display: block;
  width: 100%;
  padding-top: 128%;
}


/* --------------------
  Note / Download
-------------------- */
ul.note {
  font-size: .769em;
  font-feature-settings: "palt";
  letter-spacing: .04em;
  padding-left: 1em;
  margin-top: 1.5rem;
}
@media (min-width: 768px){
  ul.note {
    font-size: .786em;
  }
  .btn-action {
    margin-top: 0;
  }
}
@media (min-width: 1200px){
  ul.note {
    font-size: .813em;
  }
}


/* --------------------
  icon guide
-------------------- */
.icon-guide {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  line-height: 1;
  position: relative;
}
.icon-guide ul {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1em;
  row-gap: 1em;
  list-style-type: none;
}
.icon-guide ul li {
  display: inline-flex;
  align-items: center;
  gap: .375em;
}
.icon-guide ul li i {
  display: block;
  width: 1.25em;
  height: 1.25em;
  border-radius: 100%;
}
i._gourmet { background: var(--gourmet); }
i._fashion { background: var(--fashion); }
i._fashiongoods { background: var(--fashiongoods); }
i._homegoods { background: var(--homegoods); }
i._service { background: var(--service); }

.icon-guide .modal-trigger {
  display: inline-flex;
  align-items: center;
  gap: .5em;
  margin-bottom: .75rem;
  cursor: pointer;
  transition: color .2s;
} 
.icon-guide .modal-trigger:hover {
  color: var(--color1);
} 
.icon-guide .modal-trigger i[data-text]::before {
  content: attr(data-text);
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  width: 1.5em;
  height: 1.5em;
  border-radius: 100%;
  font-family: sans-serif;
  font-size: .8em;
  font-weight: 700;
  line-height: 1;
  border: .15em solid currentColor;
} 

@media (max-width: 991px){
  .icon-guide {
    font-size: .846rem;
  }
}
@media (min-width: 992px){
  .icon-guide .modal-trigger {
    text-align: right;
    position: absolute;
    top: 0;
    right: 0;
  }
}
@media (min-width: 1200px){
  .icon-guide ul {
    column-gap: 1.75em;
  }
  .icon-guide ul li {
    gap: .75em;
  }
  .modal-content {
    padding: 4rem;
  }
  .modal-content .modal-inner {
    width: min(560px, calc(90vh - 8rem));
    height: min(560px, calc(90vh - 8rem));
  }
}



