@font-face {
  font-family: 'Pretendard';
  src: url('https://cdn.jsdelivr.net/gh/Project-Pretendard/Pretendard/dist/web/static/woff2/Pretendard-Regular.woff2')
      format('woff2'),
    url('https://cdn.jsdelivr.net/gh/Project-Pretendard/Pretendard/dist/web/static/woff/Pretendard-Regular.woff')
      format('woff'),
    url('https://cdn.jsdelivr.net/gh/Project-Pretendard/Pretendard/dist/web/static/otf/Pretendard-Regular.otf')
      format('opentype');
}
* {
  margin: 0;
  padding: 0;
  font-family: 'Pretendard';
}
ol,
ul,
li {
  list-style: none;
}
a {
  text-decoration: none;
}
img {
  width: 100%;
}
body {
  font-family: 'Pretendard';
}
.tag-hover-ui-root {
  z-index: 20;
  position: absolute;
  width: 150px;
  height: 50px;
  transform: translate(-50%, -50%);
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #000000;
  border-radius: 12px;
  transition: background-color 0.3s;
  color: white;
}

.tag-hover-ui-root > span {
  font-family: 'Pretendard';
}

#event {
  position: absolute;
  top: 20px;
  left: 20px;
  width: 75px;
  height: 75px;
  background: #000;
  border-radius: 100%;
  line-height: 75px;
  z-index: 111;
  transition: 0.5s all;
  cursor: pointer;
}
#event.active {
  animation: jumpshaking 0.83s infinite;
}
@keyframes jumpshaking {
  0% {
    transform: translateX(0);
  }
  25% {
    transform: translateY(-9px);
  }
  35% {
    transform: translateY(-9px) rotate(17deg);
  }
  55% {
    transform: translateY(-9px) rotate(-17deg);
  }
  65% {
    transform: translateY(-9px) rotate(17deg);
  }
  75% {
    transform: translateY(-9px) rotate(-17deg);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
#event p {
  font-weight: 500;
  font-size: 16px;
  color: #fff;
  letter-spacing: -0.03em;
  text-align: center;
}
#event:hover {
  background-color: #fff;
}
#event:hover p {
  color: #000;
}
#eventModal {
  display: none;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 111;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.4);
  cursor: pointer;
}
#eventModal.active {
  display: block;
}
#eventModal picture {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  max-width: 580px;
  width: 100%;
}
#roomBtn {
  position: absolute;
  top: 20px;
  left: 110px;
  width: 75px;
  height: 75px;
  background: #000;
  border-radius: 100%;
  line-height: 75px;
  z-index: 111;
  transition: 0.5s all;
  cursor: pointer;
}

#roomBtn p {
  font-weight: 500;
  font-size: 16px;
  color: #fff;
  letter-spacing: -0.03em;
  text-align: center;
  transition: 0.5s all;
}
#roomBtn:hover {
  background-color: #fff;
}
#roomBtn:hover p {
  color: #000;
}

#sinList {
  /* gap: 4px; */
  position: absolute;
  top: 14px;
  /* left: 26%; */
  left: -100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 300px;
  width: 100%;
  flex-wrap: wrap;
  row-gap: 8px;
  transition: 0.5s all;
  opacity: 0;
  z-index: -1;
}
#sinList.active {
  left: 210px;
  opacity: 1;
  z-index: 111;
}
#sinList .sinbtn {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  color: #fff;
  background-color: #1d1d1d66;
  border-radius: 8px;
  font-size: 16px;
  height: 40px;
  flex-wrap: wrap;
  width: calc(50% - 4px);
  border: unset;
  backdrop-filter: saturate(0.5) blur(5px);
  transition: 0.5s all;
  cursor: pointer;
}
#sinList .sinbtn:hover {
  background: #000;
}

#sideBtn {
  position: fixed;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 50px;
  height: 200px;
  background: #e73648;
  border: unset;
  z-index: 111;
  color: #fff;
  writing-mode: vertical-rl;
  text-orientation: upright;
  text-transform: uppercase;
  letter-spacing: -0.03em;
  border-radius: 0 20px 20px 0;
  transition: 0.5s all;
  font-weight: 700;
}
#sideBtn:hover {
  background-color: #fff;
  color: #000;
  cursor: pointer;
}
#sideBtn.active {
  transform: translate(300px, -50%);
}
#sideBtn2 {
  position: fixed;
  top: 73%;
  left: 0;
  transform: translateY(-50%);
  width: 50px;
  height: 200px;
  background: #e73648;
  border: unset;
  z-index: 111;
  color: #fff;
  writing-mode: vertical-rl;
  text-orientation: upright;
  text-transform: uppercase;
  letter-spacing: -0.03em;
  border-radius: 0 20px 20px 0;
  transition: 0.5s all;
  font-weight: 700;
}
#sideBtn2:hover {
  background-color: #fff;
  color: #000;
  cursor: pointer;
}
#sideBtn2.active {
  transform: translate(300px, -50%);
}

#sideBar {
  position: absolute;
  top: 0;
  left: 0;
  transform: translateX(-100%);
  width: 300px;
  height: 100vh;
  background-color: #1d1b1b;
  z-index: 111;
  transition: 0.5s all;
}
#sideBar.active {
  transform: translateX(0);
}
#sideBar .side_con {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}
#sideBar p {
  font-weight: 500;
  color: #fff;
  text-align: center;
}
#sideBar .tit {
  font-weight: 700;
  font-size: 28px;
  color: #fff;
  margin-bottom: 12%;
}
#sideBar .loca {
  font-size: 16px;
  margin-bottom: 8px;
}
#sideBar .time {
  font-size: 16px;
  margin-bottom: 20px;
}
#sideBar .tel {
  font-size: 22px;
  display: block;
  width: 70%;
  margin: 0 auto;
  padding: 10px 20px;
  border-radius: 16px;
  background: #fff;
  transition: 0.5s all;
}
#sideBar .tel:hover {
  transform: scale(1.05);
}
#sideBar .tel p {
  font-weight: 700;
  color: #000;
}

@media (max-width: 900px) {
  #sinList {
    max-width: 40%;
    top: 110px;
  }
  #sinList.active {
    left: 10px;
  }
  #sinList .sinbtn {
    font-size: 14px;
    width: 100%;
  }
}
@media (max-width: 768px) {
  #sideBtn {
    writing-mode: horizontal-tb;
    width: 27%;
    height: 48px;
    line-height: 48px;
    top: unset;
    bottom: 0;
    left: 50%;
    border-radius: 20px 20px 0 0;
    transform: translateX(-50%);
  }
  #sideBtn.active {
    transform: translate(-50%, -400px);
  }

  #sideBtn2 {
    writing-mode: horizontal-tb;
    width: 27%;
    height: 48px;
    line-height: 48px;
    top: unset;
    bottom: 0;
    left: 80%;
    border-radius: 20px 20px 0 0;
    transform: translateX(-50%);
  }
  #sideBtn2.active {
    transform: translate(-50%, -400px);
  }

  #sideBar {
    top: unset;
    bottom: 0;
    transform: translateY(100%);
    width: 100%;
    height: 400px;
    border-radius: 20px 20px 0 0;
  }
  #eventModal picture {
    max-width: 80%;
  }
}
