@charset "utf-8";
/*/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


-------------------------------------------------------------------------------------------------------------------------------------------

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/


/* ================================================================================ */
/*      body     */
/* ================================================================================ */
img {
	vertical-align: bottom;
	width: 100%;
}

#commonHd {
	width: 100%;
	background: #f0f0f0;
}

#commonHd .inner {
	margin: 0 auto;
	text-align: center;
	max-width: 640px;
	padding: 5px 5px 0px 5px;
	color: #FFF;
}


#commonHd img {
	width: 100%;
}

#hd_lower {
	background: #006;
	width: 100%;
	min-width: auto;
}

#hd_lower .inner {
	margin: 5px auto 0;
	text-align: center;
	max-width: 640px;
	padding: 5px;
	overflow: hidden;
}

#hd_lower .hd_title {
	color: #FFF;
	font-size: 8px;
	float: left;
}

.hd_link {
	font-size: 8px;
	float: right;
}

.hd_link li {
	float: left;
	margin-left: 10px;
}

.fixed-bg {
	min-height: 70vw;
	background-attachment: inherit;
}



/* ================================================================================ */
/*      header    */
/* ================================================================================ */

.wrapper {
	width: 100%;
	margin: 0 auto;
	text-align: center;

	min-width: auto;
	overflow: hidden;
}

.wrapper .inner {
	width: 100%;
	max-width: calc(640px + 10%);
	margin-left: auto;
	margin-right: auto;
	padding-left: 5%;
	padding-right: 5%;
	overflow: hidden;
}

.header {
	height: auto;
	min-width: auto;
	display: block;
	position: relative;
	background-image: none;
}


.elements {
	height: auto;
	width: auto;
	position: relative;
	display: block;
	top: -120px;

}

.header .release_btn {
	padding-bottom: 0px;
}

.header .release_btn img {
	width: 80vw;
	margin: 0 auto;
	bottom: 20px;

}


.header .release_bannar2 {
	padding-bottom: 0px;
}

.header .release_bannar2 img {
	width: 80vw;
	padding-top: 7px;
	margin: 0 auto;
	bottom: 0;

}


.header .release .center {
	background-color: #000;
}

.header .release .center {
	background-color: #000;
}

.header .top {
	background-repeat: repeat-x;
	background-position: center top;
	background-size: auto 100%;
	height: 0px;
	margin-bottom: -1px;
}


.header .bottom {
	background-repeat: repeat-x;
	background-position: center top;
	background-size: auto 100%;
	height: 15px;
	margin-top: -1px;
}




.header .release .jk {
	width: 330%;
	/* 横幅を固定して */
	display: inline-block;
	/* インラインブロック化 */
	vertical-align: middle;
	/* 中央を揃える */
	margin-right: -15%;
	margin-top: 35%;
	margin-bottom: -20%;
	position: relative;
	top: -20px;
}


.header .release .date {
	width: 100%;
	/* 横幅を固定して */
	display: block;
	/* インラインブロック化 */
	vertical-align: middle;
	/* 中央を揃える */
}


.header .release .btn_digi {
	width: 50%;
	/* 横幅を固定して */
	display: block;
	/* インラインブロック化 */
	vertical-align: middle;
	/* 中央を揃える */
	margin-right: -5%;
	margin-left: 0%;
	margin-top: 2%;
}


#trailer {
    margin-top: -120px;
    padding-top: 10px;
}

.ectop {
	margin: -3% 3% 3%;
}

.ectop .inner {
	background-color: #000000;
	text-align: center;
	padding: 0;
	max-width: 640px;
}


.ectop ul {
	width: 100%;
	overflow: hidden;
	margin: 0 auto 0;
	padding: 1% 2% 2%;
}



.ectop ul li {
	float: left;
	width: 33.3%;
	padding: 0.7%;
	line-height: 0;
}


.ec {
	margin: 0% 3% 3%;
	background-color: #000;
}

.ec .inner {
	background-color: #000000;
	text-align: center;
	padding: 0;
	max-width: 640px;
}


.ec ul {
	width: 100%;
	overflow: hidden;
	margin: 0 auto 0;
	padding: 1% 2% 2%;
}



.ec ul li {
	float: left;
	width: 33.3%;
	padding: 0.7%;
	line-height: 0;
}





h2 {
	margin: 3% auto 2%;
	padding-left: 6%;
	padding-right: 6%;
}

h2 img {
	width: 100%;
	max-width: 600px;
}

h3 {
	padding-bottom: 4%;
}

h3 img {
	width: 100%;
	max-width: 600px;
}

h4 {
	padding: 2% 1% 0 1%;
	line-height: 1.5;
}

h4 img {
	width: 100%;
	max-width: 600px;
}

.release {
	margin-bottom: 0%;
	margin-top: -2%;
	position: relative;
	z-index: 100;
}



.banner {
	text-align: center;
	margin-top: 65px;
	padding: 0 15px
}

.menu {
	display: none;
}



/* ================================================================================ */
/*      movie    */
/* ================================================================================ */
#trailer .inner {
	width: auto;
}

.movie {
	margin-bottom: 10%;
}

#trailer .inner .movie_area {
	width: 100%;
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}

.video-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}

#trailer .inner .movie_area iframe {
	text-align: center;
	position: absolute;
	top: 0;
	left: 3%;
	width: 94%;
	height: 100%;
	border: thin solid #4a4a4a;
}

/* ================================================================================ */
/*      dvd    */
/* ================================================================================ */

#dvd .inner {
	width: auto;
}

.dvd .sell {
	margin-bottom: 3%;
	overflow: hidden;
}

#dvd .inner .jk_dvd {
	float: none;
	width: 100%;
}

#dvd .inner .jk img {
	float: none;
	width: 90%;
	margin: 0;
}

#dvd .inner .jk_4k {
	float: none;
	width: 100%;
	margin-top: 30px;
}

.dvd .sell .jk,
.dvd .sell .txt {
	width: 50%;
	float: left;
}

#dvd .release_btn img {
	width: 80%;
	margin-top: 30px;
}


.dvd .ec,
.dvd .tokuten,
.dvd .spec {
	margin-bottom: 8%;
}

#dvd .rental img {
	width: 100%;
}

.dvd .rental .jk {
	width: 100%;
	max-width: 610px;
	margin: 0 auto 8%;
}

#dvd .tokuten .ttl {
	padding: 7px 5px 5px;
	margin-top: 30px;
	font-size: 130%;
	font-weight: bold;
	line-height: 1.5;
}

#dvd .tokuten .txt_area {
	font-size: 100%;
	margin-bottom: 30px;
}

.dvd .spec {
	color: rgb(0, 0, 0);
	text-align: left;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #000000;
	padding-top: 2%;
}

.dvd .spec span {
	font-weight: bold;
}

#digi {
	padding-top: 4%;
	margin-top: -4%;
}

.dvd .digi .inner {
	background-color: #007bbe;
	text-align: center;
	padding: 0;
	max-width: 640px;
}

.dvd .digi ul {
	width: 100%;
	overflow: hidden;
	margin: 0 auto 0;
	padding: 2%;
}

.dvd .digi ul li {
	float: left;
	width: 33.3%;
	padding: 0.7%;
	line-height: 0;

}

.digi {
	padding-left: 3%;
	padding-right: 3%;
}

#ttl_digi {
	margin-top: 0;
	padding-top: 0;
	padding-bottom: 0;
}

/* ================================================================================ */
/*      highlights    */
/* ================================================================================ */
#highlight .inner {
	width: auto;
}


.highlights .img {
	margin-bottom: 6%;
}

.highlights .txt {
	color: rgb(0, 0, 0);
	font-size: 120%;
	font-weight: bold;
	text-align: left;
	line-height: 1.4;
	margin-bottom: 1%;
}

.highlights .copy {
	margin-bottom: 1.5%;
}

.highlights .img:last-child {
	margin-bottom: 0;
}

#highlight .block ul {
	width: 100%;
	float: none;
}

#highlight .block p img {
	width: 100%;
}

/* ================================================================================ */
/*      story    */
/* ================================================================================ */
#story .inner {
	min-width: auto;
}

.story .img {
	margin-bottom: 4%;
}

.story .txt {
	color: rgb(0, 0, 0);
	font-size: 120%;
	text-align: left;
	line-height: 1.4;
	margin-bottom: 4%;
}

#story .story_txt {
	margin-top: 20px;
	font-size: 18px;
	font-weight: bold;
}

#story .story_txt2 {
	width: 100%;
}

/* ================================================================================ */
/*      voice    */
/* ================================================================================ */
#voice .inner {
	min-width: auto;
}

#voice .inner p {
	font-size: 115%;
	font-weight: bold;
	color: #000;
}

/* ================================================================================ */
/*      staff_cast    */
/* ================================================================================ */
#cast .inner {
	width: auto;
}

#cast .inner h4 {
	margin-top: 30px;
}

.staff_cast {
	margin-bottom: 8%;
}



.staff_cast h3.staff {
	padding-bottom: 0;
}

#cast dt {
	font-size: 100%;
	font-weight: bold;
	margin-top: 10px;
}

#cast dd,
#cast li span {
	font-size: 115%;
	font-weight: bold;
	color: #000;
}

.staff_cast .txt {
	color: rgb(0, 0, 0);
	font-size: 117%;
	line-height: 1.4;
	font-weight: bold;
}

.staff_cast .txt dt {
	margin-top: 4%;
}


.staff_cast .txt dd {
	color: rgb(0, 0, 0);
	font-weight: bold;
	margin-bottom: 4%;
}

.staff_cast .txt dd span {
	color: rgb(0, 0, 0);
	font-size: 90%;
	font-weight: normal;
}

.staff_cast .txt li span {
	color: #e50065;
	font-weight: bold;
}

.staff_cast .txt li {
	margin-bottom: 4%;
}

.staff_cast .txt dd:last-child,
.staff_cast .txt li:last-child {
	margin-bottom: 0;
}


.staff_cast h3.cast {
	padding-top: 6%;
}







.staff_cast .sttl {
	position: relative;
	display: inline-block;
	width: 100%;
	text-align: center;
	color: #5c1c03;
	font-weight: bold;
	margin-top: 6%;
	margin-bottom: 3%;
	line-height: 1;
	font-size: 110%;
}

.staff_cast .sttl::before,
.staff_cast .sttl::after {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: calc(50% - 7.5em);
	height: 1px;
	border-top: 1px solid #5c1c03;
}

.sttl::before {
	left: 0;
}

.sttl::after {
	right: 0;
}




.snsarea {
	width: auto;
}

.sns {
	width: 100%;
	margin-left: 5%;
}




/* ================================================================================ */
/*      footer    */
/* ================================================================================ */

.footer {
	background: #006;
	color: #999;
	width: 100%;
	z-index: 10;
}

.footer .inner {
	max-width: 640px;
	margin: 0 auto;
	padding: 10px;
	overflow: hidden;
}

.footer .inner .logo {
	float: left;
	padding-right: 8px;
}

.footer .inner p {
	font-size: 85%;
	color: #FFF;
}

.footer p span {
	vertical-align: super;
}

.footer p span img {
	height: 26px;
	width: auto;
	padding: 10px 0 0 0;
}

.col2 {
	display: flex;
}

.col2 .col {
	width: 21.5%;
	margin-right: 5%;
	margin-top: 0%;
}

.col2 .col:last-child {
	width: 78.5%;
	margin-right: 0%;
	margin-top: 0%;
	margin-bottom: 2%;
}

.mgT40 {
	margin-top: 40px;
}