/*----------------------------------------------------------
mv
----------------------------------------------------------*/
.mv {
  position: relative;
  overflow: hidden;
  height: calc(var(--vh, 1vh) * 100);
  z-index: 0;
}
@media screen and (min-width: 1001px) {
  .mv {
    height: 100vh;
    min-height: auto;
  }
}

.mv_wrap {
  position: relative;
  width: 100%;
  height: 100%;
}

.mv_txtwrap {
  z-index: 3;
  position: absolute;
  z-index: 100;
  left: 5vw;
  bottom: 125px;
	bottom: 110px;
  color: #fff;
  font-feature-settings: "palt";
}
@media screen and (min-width: 751px) {
  .mv_txtwrap {
    left: 6.9444444444vw;
    bottom: 16.049382716vh;
  }
}

.mv_title_en {
  font-family: "Simplon Norm";
  font-weight: 500;
  font-style: normal;
  font-size: 9.0666666667vw;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 751px) {
  .mv_title_en {
    font-size: 4.1666666667vw;
  }
}

.mv_title_en_item {
  display: inline-block;
  transition: -webkit-clip-path 2s cubic-bezier(0.86, 0, 0.07, 1) 0.5s;
  transition: clip-path 2s cubic-bezier(0.86, 0, 0.07, 1) 0.5s;
  transition: clip-path 2s cubic-bezier(0.86, 0, 0.07, 1) 0.5s, -webkit-clip-path 2s cubic-bezier(0.86, 0, 0.07, 1) 0.5s;
  -webkit-clip-path: polygon(-5% 0%, -5% 0%, -5% 100%, -5% 100%);
          clip-path: polygon(-5% 0%, -5% 0%, -5% 100%, -5% 100%);
  white-space: nowrap;
}
.is-ready .mv_title_en_item {
  -webkit-clip-path: polygon(-5% 0%, 105% 0%, 105% 100%, -5% 100%);
          clip-path: polygon(-5% 0%, 105% 0%, 105% 100%, -5% 100%);
}

.mv_title_jp {
  font-size: 5.8666666667vw;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.05em;
  margin-top: 1.3333333333vw;
}
@media screen and (min-width: 751px) {
  .mv_title_jp {
    font-size: 2.0833333333vw;
    margin-top: 0.6944444444vw;
  }
}

.mv_title_jp_item {
  display: inline-block;
  transition: -webkit-clip-path 2s cubic-bezier(0.86, 0, 0.07, 1) 0.7s;
  transition: clip-path 2s cubic-bezier(0.86, 0, 0.07, 1) 0.7s;
  transition: clip-path 2s cubic-bezier(0.86, 0, 0.07, 1) 0.7s, -webkit-clip-path 2s cubic-bezier(0.86, 0, 0.07, 1) 0.7s;
  background-color: #111111;
  padding: 0.2em;
  margin-top: 0.8vw;
  white-space: nowrap;
  -webkit-clip-path: polygon(-5% 0%, -5% 0%, -5% 100%, -5% 100%);
          clip-path: polygon(-5% 0%, -5% 0%, -5% 100%, -5% 100%);
}
.is-ready .mv_title_jp_item {
  -webkit-clip-path: polygon(-5% 0%, 105% 0%, 105% 100%, -5% 100%);
          clip-path: polygon(-5% 0%, 105% 0%, 105% 100%, -5% 100%);
}
@media screen and (min-width: 751px) {
  .mv_title_jp_item {
    margin-top: 0;
  }
}

.mv_title_jp_item_accent {
  color: #FA0F0C;
}

.mv_slider {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
  z-index: 2;
  will-change: transform;
}

.mv_slider_item {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  display: none;
  visibility: hidden;
  overflow: hidden;
  width: 100%;
  height: 100%;
  transform: translate3d(0, 0, 0);
  -webkit-clip-path: polygon(-180px 0%, -180px 0%, 0% 100%, 0% 100%);
          clip-path: polygon(-180px 0%, -180px 0%, 0% 100%, 0% 100%);
  will-change: clip-path, transform;
}
.is-ready .mv_slider_item {
  display: block;
}
.mv_slider_item.is-now {
  z-index: 20;
  visibility: visible;
}
.mv_slider_item.is-old {
  z-index: 10;
  visibility: visible;
}

.mv_slider_image {
  position: absolute;
  top: 0;
  left: -5%;
  width: 110%;
  height: 100%;
  transform: translate3d(0, 0, 0);
  transform-origin: center center;
  background-position: center top;
  background-size: cover;
  will-change: transform;
}
.is-now .mv_slider_image {
  animation: imgIn 1s cubic-bezier(0.645, 0.045, 0.355, 1) forwards 1.8s;
}
.is-old .mv_slider_image {
  animation: imgOut 1s cubic-bezier(0.645, 0.045, 0.355, 1) 0s;
}
.mv_slider_image a {
  display: block;
  width: 100%;
  height: 100%;
}

.mv_bg {
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: translate3d(0, 0, 0);
  background-color: #FA0F0C;
}
.is-game .mv_bg {
  background: linear-gradient(to right, #f4275c 0%, #fa5230 100%);
}
.is-esports .mv_bg {
  background: linear-gradient(to right, #31a154 0%, #5ab559 100%);
}
.is-aiit .mv_bg {
  background: linear-gradient(100deg, #1D588A 0%, #227496 100%);
}
.is-media .mv_bg {
/* background: linear-gradient(to right, #fe5508 0%, #ff8705 100%);*/
/*	background: linear-gradient(to right, #E84200 0%, #EE6000 100%);*/
	background: linear-gradient(to right, #384A91 0%, #884091 100%);
}
.is-about .mv_bg {
  background: linear-gradient(to right, #FA0F0C 0%, #FA0F0C 100%);
}
.is-design .mv_bg {
  background: linear-gradient(to right, #fe5508 0%, #ff8705 100%);
}


.mv_particle {
  display: block;
  position: fixed;
  z-index: 1;
  width: 100vw;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  transform: translate3d(0, 0, 0);
  will-change: opacity;
  transition: opacity 0.5s;
}
.is-ready .mv_particle {
  opacity: 1;
}
.is-break .mv_particle {
  display: none;
}
.mv_bg_particle {
  display: none;
  position: fixed;
  z-index: 0;
  width: 100vw;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  transform: translate3d(0, 0, 0);
  will-change: opacity;
  transition: opacity 0.5s;
}
.is-ready .mv_bg_particle {
  opacity: 1;
}
.is-break .mv_bg_particle {
  display: block;
}

.mv_nav {
  opacity: 0;
  width: 100%;
  position: absolute;
  padding: 0 5vw;
  left: 0;
  bottom: 56px;
	
	bottom: 20px;
  display: flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
  z-index: 100;
}

.mv_nav_item {
  position: relative;
  flex-basis: 16.66%;
  max-width: 25%;
	flex-basis: 33%;
  max-width: 33%;
	padding-top: 3vw;
  cursor: pointer;
  color: #fff;
  /* .is-transition & {
    pointer-events: none;
  } */
}

@media screen and (min-width: 751px) {
  .mv_nav {
    padding: 0 6.9444444444vw;
    bottom: 30px;
  }
	.mv_nav_item {
		flex-basis: 16.66%;
		max-width: 25%;
		padding-top: 0;
	}
}

.mv_nav_item a {
  color: #fff;
}
.mv_nav_item.is-game.is-now {
  color: #F52D56;
}
.mv_nav_item.is-game.is-now a {
  color: #F52D56;
}
.mv_nav_item.is-esports.is-now {
  color: #32A254;
}
.mv_nav_item.is-esports.is-now a {
  color: #32A254;
}
.mv_nav_item.is-aiit.is-now {
  color: #226E94;
}
.mv_nav_item.is-aiit.is-now a {
  color: #226E94;
}
.mv_nav_item.is-media.is-now {
  color: #884091;
}
.mv_nav_item.is-media.is-now a {
  color: #884091;
}
.mv_nav_item.is-about.is-now {
  color: #FA0F0C;
}
.mv_nav_item.is-about.is-now a {
  color: #FA0F0C;
}
.mv_nav_item.is-design.is-now {
  color: #FE6F06;
}
.mv_nav_item.is-design.is-now a {
  color: #FE6F06;
}
.mv_nav_item:hover.is-game {
  color: #F52D56;
}
.mv_nav_item:hover.is-esports {
  color: #F52D56;
}
.mv_nav_item:hover.is-aiit {
  color: #226E94;
}
.mv_nav_item:hover.is-media {
  color: #226E94;
}
.mv_nav_item:hover.is-about {
  color: #FA0F0C;
}
.mv_nav_item:hover.is-design {
  color: #FE6F06;
}
.mv_nav_text {
  height: 100%;
  font-family: "Simplon Norm";
  font-weight: 500;
  font-style: normal;
  font-size: 3vw;
  line-height: 1.25;
  letter-spacing: 0.05em;
  padding-bottom: 2.1333333333vw;
  transition: color 0.2s;
  display: flex;
  align-items: flex-end;
}
@media screen and (min-width: 751px) {
  .mv_nav_text {
    font-size: 1.3888888889vw;
    padding-bottom: 0.6944444444vw;
  }
}

.mv_nav_bar {
  position: absolute;
  z-index: 100;
  bottom: 0;
  left: 0;
  overflow: hidden;
  width: calc(100% - 1px);
  height: 2px;
  background-color: rgba(255, 255, 255, 0.6);
}
@media screen and (min-width: 751px) {
  .mv_nav_bar {
    height: 3px;
    width: calc(100% - 2px);
  }
}

.mv_nav_bar_over {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  transition: none;
  transform: translateX(-100%);
}
.is-game .mv_nav_bar_over {
  background-color: #F52D56;
}
.is-esports .mv_nav_bar_over {
  background-color: #32A254;
}
.is-aiit .mv_nav_bar_over {
  background-color: #226E94;
}
.is-media .mv_nav_bar_over {
  background-color: #884091;
}
.is-about .mv_nav_bar_over {
  background-color: #FA0F0C;
}
.is-design .mv_nav_bar_over {
  background-color: #FE6F06;
}
.is-now .mv_nav_bar_over {
  transition: transform 4.5s linear;
  transform: translateX(0) scaleX(1);
  transform-origin: left;
}

@keyframes imgIn {
  0% {
    left: 0;
  }
  100% {
    left: -5%;
  }
}
@keyframes imgOut {
  0% {
    left: -5%;
  }
  100% {
    left: -10%;
  }
}
/*----------------------------------------------------------
news
----------------------------------------------------------*/
.news {
  position: relative;
  z-index: 1;
}

/*----------------------------------------------------------
feature
----------------------------------------------------------*/
.feature {
  position: relative;
  z-index: 1;
}

/*----------------------------------------------------------
event
----------------------------------------------------------*/
.event {
  position: relative;
  z-index: 1;
}

/*----------------------------------------------------------
sns
----------------------------------------------------------*/
.sns {
  position: relative;
  z-index: 1;
}

/*----------------------------------------------------------
footer
----------------------------------------------------------*/
.footer {
  position: relative;
  z-index: 1;
}