@charset "utf-8";
body.js-modal-open{
  overflow: hidden;
  position: fixed;
  width: 100vw;
}
.modal-open {
  overflow:visible;
}
.modal-box {
  display: none;
  box-sizing: border-box;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
	width: 84.615%;
	max-width: 1200px;
  z-index: 80;
}
.modal-box.js-open {
  /* display: block; */
  display: flex;
  flex-direction: column;
  animation: appearModal 0.5s ease-in;
  z-index: 200;
  transition: opacity .5s ease-out;
}
.modal-box.js-open.fade-out {
  opacity: 0;
}
.modal-box .modal-close {
  position: absolute;
  cursor: pointer;
  transition: background-color 0.5s ease-in;
  width: 45px;
  height: 45px;
}
.modal-box .modal-close::after ,.modal-box .modal-close::before{
  content: "";
  position:absolute;
  top: 50%;
  left: 50%;
  height: 2px;
  background-color: var(--color-txt-inverse);
}
.modal-box .modal-close::after {
  transform: translate(-50%, -50%) rotate(45deg);
}
.modal-box .modal-close::before {
  transform: translate(-50%, -50%) rotate(-45deg);
}

@media (min-width: 768px) {
.modal-box .modal-close {
  width: 45px;
  height: 45px;
}
.modal-box .modal-close::after ,.modal-box .modal-close::before{
  width: 63.64px;
}
}
@media (min-width: 1024px) {
.modal-box .modal-close {
  top: -63px;
  right: -63px;
}
}
@media (max-width: 1023px) {
.modal-box .modal-close {
  top: -74px;
  right: 0;
}
}
@media (max-width: 767px) {
.modal-box .modal-close {
  top: -64px;
  right: 0;
}
.modal-box .modal-close::after ,.modal-box .modal-close::before{
  width: 35px;
}
}
.overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  z-index: 90;
}
.overlay.js-open {
  display: block;
  animation: appearOverlay 0.5s ease-in forwards;
}
.overlay.js-open.fade-out {
  animation: hideOverlay 0.5s ease-in forwards;
}
@keyframes appearModal {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes appearOverlay {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0.5;
  }
}
@keyframes hideOverlay {
  0% {
    opacity: 0.5;
  }
  100% {
    opacity: 0;
  }
}