.logo {
  position: relative;
  z-index: 999;
}

.logo a {
  font-size: 4.297vw;
  color: #e8e8e8;
  line-height: 1.2;
  font-family: "mesaregular";
}
#menuToggle {
  display: flex;
  position: absolute;
  top: 2vw;
  right: 2vw;
  z-index: 1;
  -webkit-user-select: none;
  user-select: none;
  align-items: center;
  gap: 2vw;
}

#menuToggle input#menuInput {
  display: block;
  width: 3.125vw;
  height: 2.5vw;
  position: absolute;
  top: 0.45vw;
  right: -0.5vw;
  cursor: pointer;
  opacity: 0;
  z-index: 2;
  -webkit-touch-callout: none;
}

#menuToggle .navMenu > span {
  display: block;
  width: 2.58vw;
  height: 0.31vw;
  margin-bottom: 0.39vw;
  position: relative;
  background: #e8e8e8;
  border-radius: 1vw;
  z-index: 1;
  transform-origin: 0.31vw 0px;
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1),
    background 0.5s cubic-bezier(0.77, 0.2, 0.05, 1), opacity 0.55s ease;
}

#menuToggle .navMenu > span:first-child {
  transform-origin: 0% 0%;
}

#menuToggle .navMenu > span:nth-last-child(2) {
  transform-origin: 0% 100%;
}

#menuToggle input#menuInput:checked ~ span {
  opacity: 1;
  transform: rotate(45deg) translate(-2px, -1px);
  background: #e8e8e8;
}

#menuToggle input#menuInput:checked ~ span:nth-last-child(3) {
  opacity: 0;
  transform: rotate(0deg) scale(0.2, 0.2);
}

#menuToggle input#menuInput:checked ~ span:nth-last-child(2) {
  opacity: 1;
  transform: rotate(-45deg) translate(0, -1px);
}

#menu {
  position: fixed;
  width: 30vw;
  height: 100vh;
  top: 0;
  right: -30vw;
  background-image: linear-gradient(180deg, #333333, #9a1b1f);
  list-style-type: none;
  -webkit-font-smoothing: antialiased;
  transform: translateX(100%);
  transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
  overflow-y: auto;
  padding-top: 10vw;
  margin: 0;
  padding-left: 5vw;
  transition-delay: 0.15s;
}

#menu li {
  padding: 1vw 0;
  font-size: 2.344vw;
  color: #e8e8e8;
  line-height: 1.2;
  font-family: "mesaregular";
}

#menuToggle input#menuInput:checked ~ ul {
  transform: translateX(-100%);
}

#menuToggle input#menuInput:checked ~ ul {
  transform: translateX(-80%);
}

#menuToggle input#menuInput:checked ~ ul {
  overflow-y: hidden;
}

#menuToggle input#menuInput:checked ~ body {
  overflow: hidden;
}
.mobile-logo {
  display: none;
}
.header-mlist-section {
  margin-top: 6vw;
}
.header-mlist-section .mlistwrapper .mlform .terms p.terms-message {
  bottom: 1vw;
  top: auto;
}
.header-mlist-section .mlistwrapper .mlform .terms p.terms-message,
.mlistwrapper .mlform .terms p.terms-message-2 {
  bottom: 1vw;
  top: auto;
}

.header-mlist-section .secondform.singleform.fadeIn {
  bottom: auto;
  padding: 1vw;
  width: 90%;
  position: fixed;
  box-sizing: border-box;
  background: rgba(153, 27, 29, 1);
  left: 2%;
  top: 50%;
  transform: translateY(-50%);
}

.header-mlist-section div.plain-ml-wrapper span.secondFormClose {
  right: 0;
}

body.Internal-TourPage .homepageNav,
body.Internal-mlist .homepageNav,
body.Internal-PageNotFound .homepageNav {
  display: none;
}

body.Homepage .internalNav {
  display: none;
}

body.Internal-TourPage .internalNav,
.body.Homepage .internalNav,
body.Internal-PageNotFound .internalNav {
  display: block;
}


@media screen and (max-width: 1024px) and (orientation: portrait) {
  .header-mlist-section {
    display: block;
    margin-top: 15vw;
  }
  .header-mlist-section .mlistwrapper .mlform .terms p.terms-message,
  .header-mlist-section
    form.mlistFormTwo.mlform
    .terms
    p.terms-message-2.fadeIn {
    top: auto;
    bottom: 6vw;
    background: #9a1b1f;
    padding: 2vw;
    box-sizing: border-box;
  }
  #menuToggle .navMenu > span {
    width: 10vw;
    height: 1.5vw;
    margin-bottom: 1.5vw;
  }
  .logo a {
    color: #e8e8e8;
    line-height: 1.2;
    font-family: "mesaregular";
  }
  .logo a {
    font-size: 24.533vw;
  }

  .mobile-logo a {
    color: #e8e8e8;
    line-height: 1.2;
    font-family: "mesaregular";
    font-size: 24.533vw;
  }
  .mobile-logo {
    display: block;
    position: relative;
    top: 5vw;
  }
  #menuToggle input#menuInput {
    width: 10vw;
    height: 10vw;
    top: 8.45vw;
    right: -0.5vw;
  }
  #menu {
    width: 100vw;
    height: 100vh;
    top: 0;
    right: -103vw;
    padding-top: 40vw;
    margin: 0;
    padding-left: 20vw;
  }
  #menu li {
    padding: 8vw 0 0 0;
    font-size: 8vw;
  }
  #menuToggle {
    top: 0vw;
    right: 5vw;
    z-index: 9;
  }
  .mobile-logo {
    display: inline-block;
    position: relative;
    top: 20vw;
    left: 40%;
    transform: translate(-50%);
    right: auto;
    width: 100%;
  }

  .header-mlist-section .plain-ml-wrapper {
    width: 90%;
    padding: 0;
    margin-left: 0;
  }
  .header-mlist-section .secondform.singleform.fadeIn {
    position: fixed;
    top: 30vw;
    background: #991b1d;
    left: 12%;
    width: 80%;
    margin: 0 auto;
    z-index: 100000;
    transform: none;
  }
  body.Homepage.clicked 
    #menuToggle {
      top: 0vw;
      right: 5vw;
      z-index: 9;
      position: fixed;
  }

}



@media screen and (max-width: 1024px) and (min-width: 767px) and (orientation: portrait) {
  #menu li {
      padding: 0vw 0 0 0;
      font-size: 8vw;
  }
}

