@-webkit-keyframes FadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes FadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/*---------------------------------------------
                 fv
---------------------------------------------*/

.poster_fv {
	width: 100%;
	height: 700px;
	padding: 80px 5% 0;
	background: url("../../common_img/poster/fv-bg_pc.jpg") no-repeat center/cover;
}
@media screen and (max-width: 1024px) {
    .poster_fv {
        height: 600px;
	    padding: 60px 5% 0;
    }
}
@media screen and (max-width: 767px) {
    .poster_fv {
        height: 450px;
        padding: 40px 5% 0;
        background: url("../../common_img/poster/fv-bg_sp.jpg") no-repeat center/cover;
    }
}
@media screen and (max-width: 641px) {
    .poster_fv {
        height: 350px;
    }
}

.poster_fv_contents {
    max-width: 1200px;
    width: 100%;
    height: 100%;
	margin: 0 auto;
    position: relative;
}

.poster_fv_title_sub {
	font-family: "Barlow Semi Condensed", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 28px;
	font-weight: 500;
	color: #fff;
	letter-spacing: 0.17em;
}
@media screen and (max-width: 1024px) {
    .poster_fv_title_sub {
        font-size: 20px;
    }
}
@media screen and (max-width: 767px) {
    .poster_fv_title_sub {
        font-size: 16px;
    }
}

.poster_fv_title_main {
	font-family: "Barlow Semi Condensed", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 127px;
	font-weight: 500;
	letter-spacing: 0.17em;
	line-height: 1.1;
	color: #fff;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 1200px) {
    .poster_fv_title_main {
        font-size: 100px;
    }
}
@media screen and (max-width: 1024px) {
    .poster_fv_title_main {
        font-size: 75px;
    }
}
@media screen and (max-width: 767px) {
    .poster_fv_title_main {
        font-size: 55px;
    }
}
@media screen and (max-width: 641px) {
    .poster_fv_title_main {
        font-size: 45px;
    }
}
@media screen and (max-width: 481px) {
    .poster_fv_title_main {
        font-size: 36px;
    }
}

/*.poster_fv_title_main_space {
    font-size: 0;
}*/

.poster_fv_title_main_jp {
	font-family: a-otf-ud-shin-go-con80-pr6n, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 105px;
	font-weight: bold;
	letter-spacing: 0.2em;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 1024px) {
    .poster_fv_title_main_jp {
        font-size: 76px;
    }
}
@media screen and (max-width: 767px) {
    .poster_fv_title_main_jp {
        font-size: 32px;
    }
}

.poster_fv_title_jp {
	margin-top: 20px;
	color: #fff;
	font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 26px;
	font-weight: 500;
	letter-spacing: 0.11em;
}
.poster_fv_title_jp br {
	display: none;
}
@media screen and (max-width: 1024px) {
    .poster_fv_title_jp {
        font-size: 24px;
    }
}
@media screen and (max-width: 767px) {
    .poster_fv_title_jp {
        font-size: 14px;
    }
	.poster_fv_title_jp br {
		display: block;
	}
}


.poster_fv_movie {
	max-width: 513px;
	position: absolute;
	top: 15%;
	left: 50%;
	z-index: 10;
	line-height: 0;
	width: 45%;
	aspect-ratio: 16 / 9;
}
.poster_fv_movie iframe {
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 767px) {
	.poster_fv_movie {
		top: 15%;
		left: inherit;
		right: 0;
		width: 55%;
	}
}


li.poster_fv_catchphrase_1 {
  max-width: 320px;
}
li.poster_fv_catchphrase_2 {
  max-width: 287px;
}
li.poster_fv_catchphrase_3 {
  max-width: 267px;
}
@media screen and (max-width: 1024px) {
  ul.fv_catchphrase {
    bottom: 30px;
  }
  li.poster_fv_catchphrase_1 {
    width: 40%;
  }
}


/*---------------------------------------------
                 message
---------------------------------------------*/

.poster_message {
    padding: 100px 5% 100px;
}
.poster_message_inner {
    max-width: 1100px;
    width: 100%;
    margin: 0 auto;
}
.poster_message_title {
    font-family: a-otf-ryumin-pr6n, "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
    font-size: 26px;
    font-weight: bold;
    letter-spacing: 0.2em;
    text-align: center;
}
@media screen and (max-width: 1024px) {
	.poster_message_title {
        font-size: 23px;
    }
}
@media screen and (max-width: 767px) {
	.poster_message {
        padding: 10% 5% 10%;
    }
	.poster_message_title {
        font-size: 20px;
		letter-spacing: 0.1em;
    }
}
@media screen and (max-width: 641px) {
	.poster_message_title {
        font-size: 18px;
    }
}
@media screen and (max-width: 481px) {
	.poster_message_title {
        font-size: 17px;
    }
}

/*---------------------------------------------
                 about
---------------------------------------------*/

.poster_about {
    padding: 0 5% 100px;
}
.poster_about_inner {
    max-width: 1130px;
    width: 100%;
    margin: 0 auto;
}
.poster_about_title {
	/* font-family: a-otf-ryumin-pr6n, "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif; */
    font-size: 30px;
    font-weight: bold;
    letter-spacing: 0.15em;
	border-bottom: #005bab 1px solid;
	margin-bottom: 30px;
}
.poster_about_title span {
    font-size: 50px;
	color: #005bab;
}

.poster_about_box1 {
	margin-bottom: 100px;
}
.poster_about_box1 dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.poster_about_box1 dl dt {
	max-width: 481px;
	width: 44%;
}
.poster_about_box1 dl dd {
	max-width: 600px;
	width: 53%;
}
.poster_about_box1 dl dd ul li {
	background-color: #fff;
	border-left: #005bab 15px solid;
	padding: 1em 2em 1.5em;
	margin-bottom: 25px;
	box-shadow: 2px 2px 4px 1px rgba(35, 24, 21, 0.15);
}
.poster_about_box1 dl dd ul li h3 {
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 0.05em;
	margin-bottom: 5px;
}

.poster_about_box2 {
	margin-bottom: 100px;
}
.poster_about_box2 dl {
	margin-top: 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.poster_about_box2 dl dt {
	max-width: 830px;
	width: 74%;
}
.poster_about_box2 dl dt ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.poster_about_box2 dl dt ul li:nth-child(1) {
	max-width: 365px;
	width: 45%;
}
.poster_about_box2 dl dt ul li:nth-child(2) {
	max-width: 454px;
	width: 55%;
}
.poster_about_box2 dl dd {
	max-width: 293px;
	width: 26%;
}

.poster_about_box3 {
	margin-bottom: 100px;
}
.poster_about_box3-1 {
	max-width: 1106px;
	margin: 0 auto;
}

.poster_about_box4 {
	margin-bottom: 100px;
}
.poster_about_box4-1 {
	max-width: 1102px;
	margin: 0 auto;
}

.poster_about_box5 {
	margin-bottom: 100px;
}
.poster_about_box5 dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.poster_about_box5 dl dt {
	max-width: 538px;
	width: 50%;
}
.poster_about_box5 dl dd {
	max-width: 530px;
	width: 49%;
}
.poster_about_box5 dl dd ul li {
	background-color: #fff;
	border-left: #005bab 15px solid;
	padding: 1em 2em 1.5em;
	margin-bottom: 25px;
	box-shadow: 2px 2px 4px 1px rgba(35, 24, 21, 0.15);
}
.poster_about_box5 dl dd ul li h3 {
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 0.05em;
	margin-bottom: 5px;
}

.poster_about_box6 {
	margin-bottom: 100px;
}
.poster_about_box6 ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.poster_about_box6 ul > li {
	max-width: 530px;
	width: 49%;
	background-color: #fff;
	border-top: #005bab 15px solid;
	padding: 20px 40px 0;
	box-sizing: border-box;
	box-shadow: 2px 2px 5px 1px rgba(35, 24, 21, 0.1);
}
.poster_about_box6 ul > li h3 {
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 0.05em;
	margin-bottom: 5px;
}
.poster_about_box6 ul > li p em {
    font-size: 14px;
	color: #e50012;
}
.poster_about_box6 ol {
	margin: 20px 0 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.poster_about_box6 ol > li {
	width: 50%;
    font-size: 16px;
    font-weight: bold;
	line-height: 1.2;
}
.poster_about_box6 ol > li span {
    font-size: 30px;
	color: #005bab;
}
.poster_about_box6 ol > li em {
	display: inline-block;
    font-size: 10px;
	background-color: #d2d2d3;
	margin-left: 10px;
	padding: 0.3em 1em;
}
.poster_about_box6 ul > li h4 {
	max-width: 476px;
	margin: 0 auto;
}

.poster_about_box7 table {
	width: 100%;
}
.poster_about_box7 tr:nth-child(odd) {
	background-color: #e9edf7;
}
.poster_about_box7 th {
	width: 50%;
	background-color: #005bab;
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
}
.poster_about_box7 th:first-of-type {
	border-right: #c8c9ca 1px solid;
}
.poster_about_box7 td {
	width: 50%;
	font-size: 22px;
	text-align: center;
}
.poster_about_box7 td:first-of-type {
	border-right: #c8c9ca 1px solid;
}

@media screen and (max-width: 1024px) {
	.poster_about_box1 dl dt {
		width: 100%;
		margin: 0 auto 8%;
	}
	.poster_about_box1 dl dd {
		max-width: 480px;
		width: 100%;
		margin: 0 auto;
	}
	.poster_about_box5 dl dt {
		width: 100%;
		margin: 0 auto 8%;
	}
	.poster_about_box5 dl dd {
		max-width: 480px;
		width: 100%;
		margin: 0 auto;
	}
	.poster_about_box6 ul > li {
		width: 100%;
		margin: 0 auto 8%;
	}
}
@media screen and (max-width: 767px) {
	.poster_about {
		padding: 0 5% 10%;
	}
	.poster_about_title {
		font-size: 20px;
		letter-spacing: 0.1em;
		margin-bottom: 5%;
	}
	.poster_about_title span {
		font-size: 35px;
	}
	.poster_about_box1 {
		margin-bottom: 12%;
	}
	.poster_about_box1 dl dd ul li {
		border-left: #005bab 10px solid;
		padding: 1em 1em 1.5em;
		margin-bottom: 20px;
	}
	.poster_about_box1 dl dd ul li h3 {
		font-size: 18px;
	}
	.poster_about_box2 {
		margin-bottom: 12%;
	}
	.poster_about_box2 dl dt {
		width: 100%;
	}
	.poster_about_box2 dl dt ul li:nth-child(1) {
		width: 100%;
		margin: 0 auto 8%;
	}
	.poster_about_box2 dl dt ul li:nth-child(2) {
		width: 100%;
		margin: 0 auto 8%;
	}
	.poster_about_box2 dl dd {
		width: 100%;
		margin: 0 auto;
	}
	.poster_about_box3 {
		margin-bottom: 12%;
	}
	.poster_about_box4 {
		margin-bottom: 12%;
	}
	.poster_about_box5 {
		margin-bottom: 12%;
	}
	.poster_about_box5 dl dd ul li {
		border-left: #005bab 10px solid;
		padding: 1em 1em 1.5em;
		margin-bottom: 20px;
	}
	.poster_about_box5 dl dd ul li h3 {
		font-size: 18px;
	}
	.poster_about_box6 {
		margin-bottom: 12%;
	}
	.poster_about_box6 ul > li {
		border-top: #005bab 10px solid;
		padding: 1em 1.5em 0;
	}
	.poster_about_box6 ul > li h3 {
		font-size: 18px;
	}
	.poster_about_box6 ul > li p em {
		font-size: 12px;
	}
	.poster_about_box6 ol > li {
		font-size: 15px;
	}
	.poster_about_box6 ol > li span {
		font-size: 26px;
	}
	.poster_about_box7 table {
		width: 100%;
	}
	.poster_about_box7 th {
		font-size: 18px;
	}
	.poster_about_box7 td {
		font-size: 15px;
	}
}
@media screen and (max-width: 641px) {
	.poster_about_title {
		font-size: 18px;
		letter-spacing: 0;
	}
	.poster_about_title span {
		font-size: 30px;
	}
	.poster_about_box1 dl dd ul li h3 {
		font-size: 16px;
	}
	.poster_about_box5 dl dd ul li h3 {
		font-size: 16px;
	}
	.poster_about_box6 ol > li {
		width: 100%;
	}
	.poster_about_box7 th {
		font-size: 15px;
	}
	.poster_about_box7 td {
		font-size: 12px;
	}
}

