@charset "utf-8";
/* CSS Document */
*, ::before, ::after {
  padding: 0;
  margin: 0;
}
/*--------------------headerここから----------------------*/
#header .nav_content {
  display: flex;
  flex-direction: column;
  padding: 20px;
  position: fixed;
  top: 100px;
	z-index: 10;
}
.nav_content ul li {
  list-style: none;
  margin-bottom: 20px;
  color: #fff;
}
.nav_content a {
  color: inherit;
  text-decoration: none;
  text-shadow: 3px 4px 5px #000;
}
@media (max-width: 800px) {
  .nav_content ul{
	  display: none;
	}
}
/*--------------------headerここまで----------------------*/
/*--------------------footerここから----------------------*/
.footer {
  background-color: #f5f5f5;
  align-items: center;
  display: flex;
  flex-direction: column;
}
.footer_logo {
  margin-top: 100px;
  margin-bottom: 50px;
}
.footer_sns {
  margin-bottom: 100px;
}
/*--------------------footerここまで----------------------*/
/*--------------------トップページここから----------------------*/
body {
  font-family: Georgia, "Times New Roman", Times, "serif";
}
main {
  background-color: #2E2020;
}
main h2 {
  font-size: 50px;
  color: #9400D3;
}
.first-view {
  background-image: url("../image/index/to_header01.jpg");
  height: 100vh;
  background-repeat: no-repeat;
  background-size: cover;
}
.link_button {
  background-color: #9400D3;
  display: inline-block;
  min-width: 180px;
  line-height: 36px;
}
.link_button:hover {
  background-color: #9932cc;
}
.link_button_area {
  margin-top: 20px;
  animation: link_button_area 1s infinite alternate;
}
.link_button_area a {
  text-decoration: none;
  color: #fff;
}

.trailer {
  background-image: url("../image/index/tp-bg_trailer.jpg");
  text-align: center;
  padding-bottom: 50px;
  max-width: 100%;
}
.trailer h2 {
  padding-top: 30px;
  padding-bottom: 30px;
}
.trailer video{
	display: block;
	width: 50%;
	margin: 0 auto;
}
#introduction {
  display: flex;
  justify-content: space-between;
  background-image: url("../image/index/tp-introduction01.jpg");
  height: 115vh;
  background-repeat: no-repeat;
  width: 930px;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
}
#introduction img {
  width: 80%;
  margin: 0 auto;
}
.introduction_pic {
  position: absolute;
}
.introduction_center {
  padding-top: 350px;
  display: flex;
  justify-content: center;
}
.introduction_pic01 {
  position: absolute;
  right: 6rem;
  padding-top: 300px;
  width: 400px;
}
.introduction_pic02 {
  position: absolute;
  left: 11rem;
  padding-top: 200px;
  width: 400px;
}
.introduction_pic03 {
  position: absolute;
  left: 16rem;
  padding-top: 450px;
  width: 400px;
}
.introduction_pic04 {
  position: absolute;
  right: 12rem;
  padding-top: 600px;
  width: 400px;
}
.fadeUp{
animation-name:fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}
.introduction_content {
  width: 100%;
}
.section_introduction_inner {
  text-align: center;
  padding-bottom: 20px;
}
.section_introduction_inner h3 {
  color: #FFE100;
  font-size: 1.5rem;
}
.section_introduction_inner p {
  color: #fff;
  font-size: 1.5rem;
}
#story {
  display: flex;
  justify-content: space-between;
  max-width: 100%;
  margin-bottom: 50px;
  margin: 0 auto;
  align-items: flex-start;
}
.story-box {
  background-color: #231011;
  height: 427px;
  padding-left: 20px;
  width: 70%;
}
.story-box h2 {
  margin-left: 120px;
  padding-top: 30px;
  padding-bottom: 20px;
}
.story-box p {
  color: #fff;
  width: 90%;
  margin-left: 120px;
}
.story-box .link_button_area {
  margin-left: 120px;
}
.story-box .link_button {
  text-align: center;
}
#character {
  display: flex;
  justify-content: space-between;
  max-width: 100%;
  margin-bottom: 50px;
  margin: 0 auto;
  align-items: flex-start;
  flex-direction: row-reverse;
}
.character-title {
  text-align: center;
}
.character-title p {
  color: #9400D3;
  font-weight: bold;
  padding-bottom: 30px;
}
.character-box {
  width: 90%;
  height: 427px;
  padding-left: 20px;
}
.character-box h2 {
  padding-top: 30px;
  padding-bottom: 20px;
  margin-left: 120px;
  font-size: 42px;
}
.character-box p {
  color: #fff;
  width: 90%;
  margin-left: 120px;
}
.character-box .link_button_area {
  margin-left: 120px;
}
.character-box .link_button {
  text-align: center;
}
#special {
  display: flex;
  justify-content: space-between;
  max-width: 100%;
  margin-bottom: 50px;
  margin: 0 auto;
  align-items: flex-start;
}
.special-box {
  background-color: #231011;
  height: 427px;
  padding-left: 20px;
  width: 70%;
}
.special-box h2 {
  margin-left: 120px;
  padding-top: 30px;
  padding-bottom: 20px;
}
.special-box p {
  color: #fff;
  width: 90%;
  margin-left: 120px;
}
.special-box .link_button_area {
  margin-left: 120px;
}
.special-box .link_button {
  text-align: center;
}
@media(max-width: 800px) {
  .introduction_center {
    display: none;
  }
  .introduction_pic01 {
    display: none;
  }
  .introduction_pic02 {
    display: none;
  }
  .introduction_pic03 {
    display: none;
  }
  .introduction_pic04 {
    display: none;
  }
  .section_introduction_inner {
    bottom: -700px;
  }
  .first-view {
    height: 50vh;
    background-image: url("../image/index/to_sp-header01.jpg");
    width: 100vw;
	background-size: cover;
  }
  .section_introduction_inner {
    margin-bottom: 20px;
  }
  .trailer video{
	width: 90%;
}
  #introduction {
    background-image: url("../image/index/sp-introduction.jpg");
	background-size: cover;
	display: block
  }
  #story {
    display: block;
  }
  .story-box {
    width: 100%;
    padding: 0;
  }
  .link_button_area {
    text-align: center;
  }
  #story img {
    display: none;
  }
  #story h2 {
    text-align: center;
    margin: 0;
  }
  #story p {
    margin: 0 auto;
  }
  #story .link_button_area {
    margin-left: 0;
  }
  #character {
    display: block;
  }
  #character h2 {
    margin: 0;
    text-align: center;
  }
  #character img {
    display: none;
  }
  #character p {
    margin: 0 auto;
  }
  #character .link_button_area {
    margin-left: 0;
  }
	#special{
		display: block;
	}
	#special img {
    display: none;
  }
	#special h2 {
    text-align: center;
    margin: 0;
  }
  #special p {
    margin: 0 auto;
  }
  #special .link_button_area {
    margin-left: 0;
  }
	.special-box {
    width: 100%;
    padding: 0;
  }
}
/*----------------------------Introductionここから----------------------------------*/
.introduction-title {
  padding-top: 50px;
  padding-bottom: 30px;
  margin: 0 auto;
  text-align: center;
}
.introduction-title p {
  color: #9400D3;
  font-weight: bold;
}
.introduction-feature {
  display: flex;
  justify-content: space-between;
  width: 930px;
  max-width: 90%;
  padding-bottom: 50px;
  margin-left: auto;
  margin-right: auto;
  align-items: flex-start;
}
.introduction-feature img {
  width: 360px;
  padding-bottom: 20px;
}
.introduction-feature h3 {
  color: #fff;
}
.introduction-feature-text p {
  color: #fff;
  margin-top: 20px;
  padding-bottom: 30px;
}
.introduction-feature-text {
  max-width: 500px;
  margin-right: 40px;
}
.reverse {
  flex-direction: row-reverse;
}
@media(max-width: 800px) {
  .introduction-feature {
    display: block;
	margin: 0 auto;
  }
	.introduction-feature p{
		padding-bottom: 10px;
	}
	.introduction_banner{
		padding-bottom: 10px;
	}
}
/*--------------------------storyここから-------------------------*/
.story-title {
  text-align: center;
  padding-top: 50px;
  padding-bottom: 30px;
}
.story-title p {
  color: #9400D3;
  font-weight: bold;
}
.story-feature {
  display: flex;
  justify-content: space-between;
  width: 1100px;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  border: 0.5px solid #9400D3;
  border-radius: 20px;
  margin-bottom: 30px;
  align-items: center;
}
.story-feature h2 {
  font-size: 30px;
  padding-top: 50px;
}
.story-feature h3 {
  color: #fff;
  font-size: 30px;
}
.story-feature p {
  font-size: 22px;
  margin-top: 20px;
  line-height: 1.5;
  color: #fff;
}
.story-feature img {
  width: 400px;
  padding-bottom: 30px;
  padding-top: 30px;
  padding-right: 20px;
}
.story-feature-text {
  max-width: 600px;
  margin-right: 40px;
  margin-left: 20px;
}
.story-feature-text h2 {
  text-align: left;
  color: #fff;
}
story-feature-text h3{
	margin-top: 10px;
}
.story-message {
  font-size: 80px;
  color: #9400D3;
  text-align: center;
  padding-bottom: 30px;
}
@media(max-width: 800px) {
  .story-feature {
    display: block;
    width: 500px;
  }
  .story-feature h2 {
    font-size: 20px;
    padding-top: 20px;
    align-items: center;
  }
	.story-feature h3{
		margin-top: 20px;
	}
  .story-feature img {
    width: 100%;
	padding-right: 0;
	text-align: center;
  }
	.story-message{
		font-size: 30px;
		
	}
}
/*--------------------------storyここまで-------------------------*/
/*-----------------characterここから----------------------------*/
.charactor h2 {
  padding-top: 50px;
}
.relationship {
  text-align: center;
  padding-top: 30px;
  padding-bottom: 30px;
}
.charactor-comment {
  text-align: left;
  margin: 0 auto;
  width: 60%;
}
.charactor-comment p{
	padding-top: 10px;
	padding-bottom: 20px;
}
@media(max-width: 800px) {
	.charactor-comment{
		width: 90%;
	}
}
/*-----------------characterここまで----------------------------*/
.introduction-feature h4{
	color: #fff;
}
@media(max-width: 800px) {
	.introduction-feature h4{
		padding-top: 50px;
	}
}