  .hamburger {
  display: block;
  width: 50px;
  height: 50px;
  position: fixed;
  top: 10px;
  right: 10px;
  left: auto;
  z-index: 10000;
  padding: 10px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
  -webkit-tap-highlight-color: transparent;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}
@media screen and (max-width: 1020px) {
  .hamburger {
    right: 0;
    top: 5px;
  }
}
.hamburger__icon {
  position: relative;
  margin-top: 7px;
  margin-bottom: 7px;
}
.hamburger__icon,
.hamburger__icon:before,
.hamburger__icon:after {
  display: block;
  width: 25px;
  height: 2px;
  background-color: #fff;
  -moz-transition-property: background-color, -moz-transform;
  -o-transition-property: background-color, -o-transform;
  -webkit-transition-property: background-color, -webkit-transform;
  transition-property: background-color, transform;
  -moz-transition-duration: 0.4s;
  -o-transition-duration: 0.4s;
  -webkit-transition-duration: 0.4s;
  transition-duration: 0.4s;
}
.hamburger__icon:before,
.hamburger__icon:after {
  position: absolute;
  content: "";
}
.hamburger__icon:before {
  top: -7px;
}
.hamburger__icon:after {
  top: 7px;
}
.hamburger.active .hamburger__icon {
  background-color: transparent;
}
.hamburger.active .hamburger__icon:before,
.hamburger.active .hamburger__icon:after {
  background-color: #fff;
}
.hamburger.active .hamburger__icon:before {
  -moz-transform: translateY(7px) rotate(45deg);
  -ms-transform: translateY(7px) rotate(45deg);
  -webkit-transform: translateY(7px) rotate(45deg);
  transform: translateY(7px) rotate(45deg);
}
.hamburger.active .hamburger__icon:after {
  -moz-transform: translateY(-7px) rotate(-45deg);
  -ms-transform: translateY(-7px) rotate(-45deg);
  -webkit-transform: translateY(-7px) rotate(-45deg);
  transform: translateY(-7px) rotate(-45deg);
}

.fat-nav {
  top: 0;
  left: 0;
  z-index: 99;
  position: fixed;
  display: none;
  width: 100%;
  height: 100%;
  background: rgba(64, 57, 153, 0.95);
  -moz-transform: scale(1.4);
  -ms-transform: scale(1.4);
  -webkit-transform: scale(1.4);
  transform: scale(1.4);
  -moz-transition-property: -moz-transform;
  -o-transition-property: -o-transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: transform;
  -moz-transition-duration: 0.4s;
  -o-transition-duration: 0.4s;
  -webkit-transition-duration: 0.4s;
  transition-duration: 0.4s;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
}
.fat-nav__inner {
  width: 100%;
  height: 100%;
  padding-top: 120px;
}

@media screen and (max-width: 768px) {
  .fat-nav__inner {
    width: 100%;
    height: 100%;
    padding-top: 64px;
  }
}

.fat-nav.active {
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
}
.fat-nav__inner > ul {
  margin: 0;
  padding: 0 15px;
}
.fat-nav__inner > ul > li {
  list-style-type: none;
  font-size: 1.6rem;
}
.fat-nav__inner > ul > li:last-of-type {
  padding-bottom: 50px;
}
.fat-nav__inner > ul > li > p {
  position: relative;
  width: 100%;
  height: 100%;
  line-height: 50px;
  border-bottom: 1px solid #fff;
  padding: 0 15px;
}
.fat-nav__inner > ul > li > p > a {
  display: block;
  position: relative;
}
.fat-nav__inner > ul > li > p > a::after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0da";
  position: absolute;
  right: 0;
  font-size: 1.6rem;
}

.fat-nav li,
.fat-nav li a {
  color: #fff;
}
.fat-nav li a {
  text-decoration: none;
}
.fat-nav__inner > ul > li > ul {
  display: flex;
  justify-content: space-between;
  width: 90px;
  margin: 0 auto;
}
.fat-nav__inner > ul > li > ul > li {
  font-size: 3rem;
  line-height: 74px;
}
.fat-nav__inner > ul > li .survey {
  width: 100%;
  max-width: 345px;
  border: 1px solid #fff;
  border-radius: 10px;
  margin: 0 auto;
}
.fat-nav__inner > ul > li .survey .survey__inner {
  height: 50px;
}
.fat-nav__inner > ul > li .survey .survey__inner p {
  position: relative;
  width: 100%;
  height: 100%;
  line-height: 50px;
  font-size: 1.5rem;
  text-align: center;
}
.fat-nav__inner > ul > li .survey .survey__inner p a {
  display: block;
}
.fat-nav__inner > ul > li .survey .survey__inner p a::after {
  content: "";
  background-image: url(/koyuka/homecoming/2020/assets/images/Icon_arrowCircle.png);
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translate(0, -50%);
  width: 20px;
  height: 20px;
}

/* Override
-------------------------------------------------------------------------------- */

.hamburger__icon,
.hamburger__icon:before,
.hamburger__icon:after {
  width: 26px;
  height: 2px;
  background-color: #fff;
}
.hamburger__icon {
  margin-top: 16px;
}
.hamburger__icon:before {
  top: -10px;
}
.hamburger__icon:after {
  top: 10px;
}
.hamburger.active .hamburger__icon:before {
  -moz-transform: translateY(10px) rotate(45deg);
  -ms-transform: translateY(10px) rotate(45deg);
  -webkit-transform: translateY(10px) rotate(45deg);
  transform: translateY(10px) rotate(45deg);
}
.hamburger.active .hamburger__icon:after {
  -moz-transform: translateY(-10px) rotate(-45deg);
  -ms-transform: translateY(-10px) rotate(-45deg);
  -webkit-transform: translateY(-10px) rotate(-45deg);
  transform: translateY(-10px) rotate(-45deg);
}
