main {
  background-color: #9c0925;
  overflow-x: hidden;
}

.container {
  max-width: 1366px;
  margin: 0 auto;
  width: 100%;
}

.mv_buttons {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 auto;
  padding: 2.6% 0;
  position: relative;
  width: 80%;
}

.mv_buttons::before,
.mv_buttons::after {
  background-size: 100%;
  background-position: center;
  background-repeat: no-repeat;
  content: "";
  position: absolute;
  margin: auto;
}

.mv_buttons::before {
  background-image: url("../img/mv_btn_icon01.png");
  top: 18px;
  left: -40px;
  height: 46px;
  width: 46px;
}

.mv_buttons::after {
  background-image: url("../img/mv_btn_icon02.png");
  top: 18px;
  right: -40px;
  height: 46px;
  width: 46px;
}

.mv_button {
  border-radius: 50px;
  display: block;
  transition: .2s;
  width: 36.7867%;
}

.mv_button:hover {
  background-color: #7e071e;
}

.mv_sp_img {
  display: none;
}

.introduce {
  background-image: url("../img/introduce_bg.png");
  background-size: 1428px;
  background-position: center top;
  background-repeat: no-repeat;
  background-color: #8b1d31;
}

.introduce_inner {
  padding: 10.617% 0 6.37%;
}

.introduce_texts {
  margin: 0 auto;
  width: 27.166%;
}

.introduce_text01 {
  margin: 0 auto;
  padding: 0 0 18.692%;
  width: 82.992%;
}

.introduce_text02 {
  margin: 0 auto;
  padding: 0 0 18.692%;
  width: 96.264%;
}

.introduce_text03 {
  margin: 0 auto;
  padding: 0 0 18.692%;
  width: 96.45%;
}

.introduce_text04 {
  margin: 0 auto;
  padding: 0 0 18.692%;
  width: 100%;
}

.introduce_text05 {
  margin: 0 auto;
  padding: 0 0 21.8%;
  width: 89.534%;
}

.introduce_logo {
  margin: 0 auto;
  width: 73.273%;
}

.selection {
  position: relative;
}

.selection_inner {
  padding: 7.321% 0 12%;
  margin: 0 auto;
  width: 74.232%;
}

.selection_items {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.selection_item {
  position: relative;
  width: 46.845%; 
}

.selection_btn {
  position: absolute;
  right: 0;
  bottom: 10%;
  left: 0;
  margin: auto;
  transition: .2s;
  width: 91.58%;
}

.selection_btn:hover {
  opacity: .6;
}

.page_top {
  position: absolute;
  right: 20px;
  bottom: 20px;
  height: 40px;
  width: 40px;
}

#page_top {
  display: block;
}

.scrollIn {
	opacity: 0;
	visibility: hidden;
	transition: 1s;
}

.scrollInUp {
  transform: translateY(50px);
}

.scrollInUp.fadeInUp {
	opacity: 1;
  transform: translateY(0);
	visibility: visible;
}

.scrollInRight {
  transform: translateX(50px);
}

.scrollInRight.fadeInRight {
	opacity: 1;
  transform: translateX(0);
	visibility: visible;
}

.scrollInLeft {
  transform: translateX(-50px);
}

.scrollInLeft.fadeInLeft {
	opacity: 1;
  transform: translateX(0);
	visibility: visible;
}

.scrollUp.fadeUp {
	opacity: 1;
	visibility: visible;
}

@keyframes fadeInUp {
	0% {
		opacity: 0;
		transform: translateY(10px);
	}
	
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes fadeInRight {
	0% {
		opacity: 0;
		transform: translateX(10px);
	}
	
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}

@keyframes fadeInLeft {
	0% {
		opacity: 0;
		transform: translateX(-10px);
	}
	
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}

@keyframes fadeUp {
	0% {
		opacity: 0;
	}
	
	100% {
		opacity: 1;
	}
}

.fadeInUp {
	animation-name: fadeInUp;
}

.fadeInRight {
	animation-name: fadeInRight;
}

.fadeInLeft {
	animation-name: fadeInLeft;
}

.fadeUp {
	animation-name: fadeUp;
}

@media screen and (max-width: 1366px) {
  .introduce {
    background-size: 100.7%;
  }
  
  .mv_buttons::before {
    top: 1.317716vw;
    left: -2.928258vw;
    height: 3.367496vw;
    width: 3.367496vw;
  }

  .mv_buttons::after {
    top: 1.317716vw;
    right: -2.928258vw;
    height: 3.367496vw;
    width: 3.367496vw;
  }
}

@media screen and (max-width: 768px) {
  .mv_buttons {
    flex-direction: column;
    padding: 9.334% 0 7.467%;
    width: 88%;
  }

  .mv_sp_img {
    display: block;
  }

  .mv_buttons::before {
    background-image: url("../img/mv_btn_icon01_sp.png");
    top: 6.933333vw;
    left: -1.733333vw;
    height: 6.666667vw;
    width: 9.6vw;
  }

  .mv_buttons::after {
    background-image: url("../img/mv_btn_icon02_sp.png");
    top: unset;
    right: -1.333333vw;
    bottom: 9.866667vw;
    height: 4.4vw;
    width: 4.533333vw;
  }

  .mv_button {
    width: 100%;
  }

  .mv_button:hover::before {
    background-color: #7e071e;
    border-radius: 13.333333vw;
    content: "";
    position: absolute;
    top: 8%;
    right: 0;
    left: 0;
    margin: auto;
    height: 76%;
    width: 94%;
  }

  .mv_button:hover {
    background-color: transparent;
  }

  .mv_button picture {
    position: relative;
  }

  .introduce {
    background-image: url("../img/introduce_bg_sp.png");
    background-size: 100%;
    margin: -1px 0 0;
  }

  .introduce_inner {
    padding: 28.8% 0 13.335%;
  }

  .introduce_texts {
    width: 71.468%;
  }

  .introduce_text01 {
    width: 82.465%;
  }

  .introduce_text02 {
    width: 96.27%;
  }

  .introduce_text03 {
    width: 96.27%;
  }

  .introduce_text05 {
    padding: 0 0 26.692%;
    width: 89.367%;
  }

  .introduce_logo {
    width: 81.345%;
  }

  .selection_inner {
    padding: 18% 0 190px;
    width: 89.334%;
  }

  .selection_items {
    flex-direction: column;
  }

  .selection_items > div:not(:last-of-type) {
    margin: 0 0 10%;
  }

  .selection_item {
    width: 100%;
  }

  .selection_btn {
    bottom: 8%;
    width: 92.836%;
  }
  
  .page_top {
    right: 4.347826vw;
    bottom: 4.347826vw;
    height: 40px;
    width: 40px;
  }
}
