.anvy_btn {
  position: relative;
  z-index: 1;
  margin: 0 auto;
  padding: 0 0 3px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font: 600 24px/1.2 Titillium Web !important;
  min-width: 322px;
  max-width: 90%;
  height: 62px;
  border-radius: 9999px;
  background: transparent linear-gradient(266deg, #FF2C00 0%, #CE00FF 100%) 0% 0% no-repeat padding-box;
  box-shadow: inset 0px 10px 20px #FF00AA, 0px 5px 15px #FF9A4D;
  border: 2px solid #FF77002B
}

.anvy_btn.btn_small {
  min-width: 178px;
  padding-bottom: 2px;
  height: 29px;
  text-decoration: none !important;
  color: #FAFAFA !important;
  font: normal normal 500 12px/15px Lexend !important
}

.anvy_btn:hover {
  text-decoration: none !important;
  background: transparent linear-gradient(266deg, #CE00FF 0%, #FF2C00 100%) 0% 0% no-repeat padding-box
}
#gnavi .gnavi-list>li.promotion_header {
  margin-right: 30px;
  padding: 0;
  line-height: 1.5;
  cursor: pointer;
  pointer-events: auto
}


#gnavi .gnavi-list>li.promotion_header a {
  display: block;
  position: relative;
  z-index: 4;
  text-align: center;
  width: 187px;
  height: 70px
}

#gnavi .gnavi-list>li.promotion_header a:hover .nav_icon {
  z-index: -1;
  opacity: 0 !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important
}

#gnavi .gnavi-list>li.promotion_header a:hover .nav_icon__hover {
  z-index: 1;
  opacity: 1 !important;
  visibility: visible !important;
  animation-play-state: paused
}

#gnavi .gnavi-list>li.promotion_header .nav_icon,
#gnavi .gnavi-list>li.promotion_header .nav_icon__hover {
  position: absolute;
  top: 6px;
  left: 0;
  z-index: 1;
  vertical-align: top;
  display: inline-block !important
}
#gnavi .gnavi-list>li.promotion_header .nav_icon__hover {
  top: 11px;
}
#gnavi .gnavi-list>li.promotion_header .nav_icon__hover {
  z-index: -1;
  opacity: 0 !important;
  visibility: hidden !important
}
#gnavi .gnavi-list li.list-store .img-box {
  position: absolute;
  right: 0;
  top: 71px;
  height: 0px;
  opacity: 0;
  transition: all 0.3s;
}
#gnavi .gnavi-list li.list-store:hover .img-box {
  opacity: 1;
  height: 228px;
}

.school-banner {
  height: 802px;
  position: relative;
  overflow: hidden;
  background: url(homg_jp.jpg) no-repeat center top;
}


.school-banner .container {
  position: relative;
  width: 1200px;
  margin: 0px auto;
  z-index: 3;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column
}

.school-banner .container h2 {
  padding-top: 180px;
  font: normal normal bold 44px/56px Titillium Web;
  letter-spacing: 0.88px
}

.school-banner .container .anvy_btn {
  margin: initial;
  margin-top: 50px
}

.school-banner .container p {
  padding-top: 25px;
  max-width: 570px;
  font: normal normal normal 26px/48px Titillium Web
}

.school-banner .container p b {
  position: relative;
  font-weight: 400;
  color: #EF1964
}

.school-banner .container p b img {
  position: absolute;
  left: -10px
}

.school-banner .container p.last {
  width: 321px;
  text-align: center;
  padding-top: 5px;
  color: #9A461B;
  font: normal normal normal 16px/28px Titillium Web
}
.comm__bottom {
  display: block !important;
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: -9998;
  margin: 0 auto;
  opacity: 1;
  visibility: hidden;
  width: 100%;
  height: 166px;
  background: url(bottom_bg.png) no-repeat center top;
  transform: translateY(400px);
  transition: transform 0.5s ease-out;
  text-align: center
}

.comm__bottom.comm_on {
  z-index: 9998;
  opacity: 1;
  visibility: visible;
  transform: translateY(0px);
  transition: transform 0.5s ease-out
}

.comm__bottom.live,
.comm__bottom.live0 {
  bottom: 2%
}

.comm__bottom.live0 {
  bottom: calc(80px + 2%)
}

.comm__bottom .container {
  width: 1200px;
  height: 100%;
  margin: 0px auto;
  padding-top: 45px;
  display: flex;
  align-items: center;
  gap: 25px;
  justify-content: center
}

.comm__bottom .bottom_close {
  position: absolute;
  top: 35px;
  right: 25px;
  z-index: 999;
  fill: #fff6e0;
  cursor: pointer
}

.comm__bottom .bottom_close:hover {
  text-decoration: underline
}

.comm__bottom .anvy_btn {
  display: flex;
  margin: initial;
  margin-right: -70px;
  min-width: 254px;
  width: 254px;
  height: 50px;
  line-height: 50px;
  font-size: 20px !important
}

.center-pop {
  display: block !important;
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  right: 0;
  top: 0%;
  margin: 0 auto;
  z-index: -9999;
  opacity: 0;
  visibility: hidden;
  transform: scale(0);
  transition: all 0.3s;
  background: rgba(0, 0, 0, 0.6)
}

.center-pop.comm_on {
  z-index: 9999;
  opacity: 1;
  visibility: visible;
  transform: scale(1);
  transition: all 0.3s
}

.center-pop .message {
  position: fixed;
  width: 565px;
  height: 424px;
  text-align: center;
  box-sizing: border-box;
  margin: auto;
  z-index: 100000;
  transition: all 0.5s;
  background: none;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  text-align: center;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  gap: 0px;
  background: url(pop_center_jp.png);
}

.center-pop .close {
  display: block;
  position: absolute;
  top: -30px;
  right: -8px;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  z-index: 8;
  cursor: pointer;
  opacity: 0.8;
  transition: all 0.3s ease;
  background: url(close.png)
}

.center-pop .close:hover {
  opacity: 1
}

.center-pop .anvy_info {
  text-align: center;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column
}

.center-pop .anvy_desc,
.center-pop .anvy_btn {
  position: relative;
  z-index: 1
}

.center-pop .anvy_btn {
  margin: 0 auto;
  margin-top: 320px;
  min-width: 0;
  width: 289px;
  height: 47px;
  font: normal normal 600 18px/47px League Spartan
}