@charset "UTF-8";
/* CSS Document */

/* --------------------------------------------------

	Basic CSS

-------------------------------------------------- */
html,
body {
	height: 100%;
}
body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1;
	color: #2d2d2d;
}
a {
	color: #2d2d2d;
	text-decoration: none;
}
* {
	background-repeat: no-repeat;
    background-position: 0px 0px;
}
#contents {
	line-height: 1.5;
}

/* --------------------------------------------------
	overlayController
-------------------------------------------------- */
.overlayController {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.6);
	z-index: 9000;
}

/* --------------------------------------------------
	loading
-------------------------------------------------- */
.loading {
	position: relative;
	min-height: 480px;
}
.loading * {
    visibility: hidden!important;
}
.loading:after {
	content: "";
	display: block;
	position: fixed;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	border-radius: 50%;
	width: 50px;
	height: 50px;
	border-top: 5px solid #e4e4e4;
	border-right: 5px solid #e4e4e4;
	border-bottom: 5px solid #e4e4e4;
	border-left: 5px solid #4c4c4c;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-animation: load8 1.1s infinite linear;
	animation: load8 1.1s infinite linear;
}
@-webkit-keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes load8 {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

/* --------------------------------------------------
	.item
-------------------------------------------------- */
.item {
    position: relative;
	background-color: #ffffff;
}
.item a {
    display: block;
}
.item a::after {
    content: "";
    display: block;
    clear: both;
}
.item .thumbBlock {
}
.item .thumbBlockInner {
	position: relative;
	height: 0;
	padding-bottom: 56.25%;
}
.item .thumbnail {
	text-align: center;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #000;
}
.item .thumbnail img {
	width: auto;
	height: 100%;
    vertical-align: top;
}
.item .title {
	font-weight: bold;
	font-size: 16px;
	line-height: 1.5;
    max-height: 6em;
    overflow: hidden;
}
.item .movieInfo {
	margin-top: 15px;
}
.item .movieInfo li {
	font-size: 10px;
}
.item .movieInfo li + li {
	margin-top: 5px;
}
.movieInfo .category {
	line-height: 20px;
	font-weight: bold;
	color: #4e4e4e;
	text-align: center;
	display: inline-block;
	max-width: 100%;
	padding-left: 12px;
	padding-right: 12px;
	border-radius: 5px;
	border: 1px solid rgba(78,78,78,0.25);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
.movieInfo .date {
	color: #666666;
}

/* --------------------------------------------------
	.prevNextController
-------------------------------------------------- */
.prevNextController li {
	text-indent: -9999px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin-top: auto;
	margin-bottom: auto;
	width: 27px;
	height: 46px;
	background-color: #ffffff;
	background-position: center center;
	box-shadow: 0px 0px 16.2px 1.8px rgba(9, 1, 3, 0.09);
	cursor: pointer;
	user-select: none;
}
.prevNextController li.disabled {
	cursor: default;
}
.prevNextController .btnPrev {
	left: 0;
	background-image: url(../images/arrow_02_l.png);
}
.prevNextController .btnPrev.disabled {
	background-image: url(../images/arrow_01_l.png);
}
.prevNextController .btnNext {
	right: 0;
	background-image: url(../images/arrow_02_r.png);
}
.prevNextController .btnNext.disabled {
	background-image: url(../images/arrow_01_r.png);
}

/* --------------------------------------------------
	.swipeSlide
-------------------------------------------------- */
.swipeSlide {
	position: relative;
	padding: 60px 0px 75px;
}
.swipeSlideView {
	position: relative;
	width: 925px;
	height: 325px;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
}
.swipeSlide .swipeSlideInner {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.swipeSlide .item {
	position: absolute;
	top: 0;
	left: 0;
	display: table;
	width: 100%;
	height: 325px;
	background-color: #fff;
}
.swipeSlide .item .thumbBlock {
	display: table-cell;
	width: 578px;	
}
.swipeSlide .item .movieInfoBlock {
	display: table-cell;
	vertical-align: middle;
	padding: 10px 40px;
}
.swipeSlide .item .title {
	font-size: 22px;
	line-height: 31px;
	max-height: 155px;
	overflow: hidden;
}
.swipeSlide .item .movieInfo {
	margin-top: 20px;
}
.swipeSlide .item .movieInfo li {
	font-size: 12px;
}
.swipeSlide .item .movieInfo li + li {
	margin-top: 8px;
}
.swipeSlide .item .category {
	line-height: 23px;
	max-width: 265px;
	padding-left: 18px;
	padding-right: 18px;
}
.swipeSlide .item .date {
}
.swipeSlide .swipeSlideMarker {
	line-height: 1px;
	position: absolute;
	bottom: 33px;
	left: 0;
	width: 100%;
	text-align: center;
	letter-spacing: -0.5em;
}
.swipeSlide .swipeSlideMarker li {
	position: relative;
	top: 1px;
	text-indent: -9999px;
	letter-spacing: normal;
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background-color: #a9a9a9;
	cursor: pointer;
	user-select: none;
}
.swipeSlide .swipeSlideMarker li + li {
	margin-left: 10px;
}
.swipeSlide .swipeSlideMarker li.current {
	top: 0;
	width: 10px;
	height: 10px;
	background-color: #ed190d;
}

/* --------------------------------------------------
	#wrapper
-------------------------------------------------- */
#wrapper {
	min-height: 100%;
}

/* --------------------------------------------------
	#header
-------------------------------------------------- */
#header {
	position: fixed;
	width: 100%;
	z-index: 12000;
}
#header .headerTitleBlock {
	position: relative;
	width: 245px;
	background-color: #fff;
	z-index: 20;
}
#header .headerLogo {
	line-height: 1px;
	padding-top: 13px;
	padding-bottom: 13px;
	padding-left: 13px;
}
#header .headerLogo img {
	height: 38px;
}
#header .headerTitle a {
	display: block;
	text-align: center;
	color: #ffffff;
	font-size: 13px;
	font-weight: bold;
	line-height: 26px;
	background-color: #4c4c4c;
}
#header .toggleNavi {
	position: absolute;
	top: 23px;
	right: 23px;
}
#header .toggleNavi img {
	height: 18px;
}

/* searchBlock */
#header .searchBlock {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 90px;
	padding-left: 245px;
	background-color: #f4f4f4;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	z-index: 10;
}
#header .searchForm {
	padding: 30px 170px 30px 100px;
	background-image: url(../images/icon_03.svg);
	background-position: 40px center;
	background-size: auto 24px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#header .searchText input {
	opacity: 0.3;
	font-size: 20px;
	width: 100%;
	height: 30px;
	margin: 0;
	padding: 0;
	outline: none;
	border-style: none;
	background-color: transparent;
}
#header .searchText input:focus {
	opacity: 0.5;
}
#header .searchButton {
	opacity: 0.3;
	display: block;
	width: 90px;
	height: 32px;
	margin: 0;
	padding: 0;
	padding-right: 10px;
	border-radius: 5px;
	border: 1px solid #000;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 40px;
	margin-top: auto;
	margin-bottom: auto;
	background-color: transparent;
	background-image: url(../images/icon_04.svg);
	background-position: 65px center;
	background-size: auto 6px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	cursor: pointer;
}

/* --------------------------------------------------
	#navi
-------------------------------------------------- */
#navi {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 245px;
	height: 100%;
	padding-top: 90px;
	padding-bottom: 30px;
	background-color: #f4f4f4;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	z-index: 10000;
}
#navi .globalNavi .globalNaviTitle {
	font-weight: bold;
	color: #808080;
	font-size: 20px;
	padding: 30px 20px 20px;
}
#navi .globalNavi a {
	font-weight: bold;
	font-size: 15px;
	line-height: 20px;
	padding: 15px 50px 15px 20px;
	display: block;
	position: relative;
}
#navi .globalNavi a.current {
	padding-left: 18px;
	background-color: #fff;
	border-left: 2px solid #ed190d;
}
#navi .globalNavi a span {
	color: #6e6e6e;
	font-weight: normal;
	font-size: 11px;
	display: block;
	position: absolute;
	top: 0px;
	right: 20px;
	padding-top: 15px;
	padding-bottom: 15px;
}
#navi .otherNavi {
	border-top: 1px solid rgba(0,0,0,0.10);
	border-bottom: 1px solid rgba(0,0,0,0.10);
}
#navi .otherNavi a {
	font-weight: bold;
	font-size: 15px;
	line-height: 20px;
	padding: 15px 50px 15px 20px;
	display: block;
	position: relative;
}
#navi .socialNavi .socialNaviTitle {
	font-weight: bold;
	font-size: 13px;
	padding: 30px 20px 20px;
}
#navi .socialNavi ul {
	padding-left: 20px;
}
#navi .socialNavi ul::after {
	content: "";
	display: block;
	clear: both;
}
#navi .socialNavi ul li {
	float: left;
	margin-right: 5px;
}
#navi .copyright {
	color: #b1b1b1;
	font-size: 11px;
	line-height: 18px;
	padding-left: 20px;
	margin-top: 250px;
}

/* --------------------------------------------------
	#contents
-------------------------------------------------- */
#contents {
	padding-top: 90px;
	padding-bottom: 100px;
	position: relative;
	z-index: 1;
}
#contents::after {
    content: "";
    display: block;
    clear: both;
}
#contents .mainVisual {
	background-color: #D6D6D6;
}
#contents .mainVisual + .categoryBlock {
	margin-top: 80px;
}

/* categoryBlock */
#contents .categoryBlock {
	margin-top: 50px;
}
#contents .categoryTitleBlock {
	position: relative;
}
#contents .categoryTitle {
	color: #333333;
	font-size: 20px;
	font-weight: bold;
	line-height: 27px;
	padding-top: 20px;
	padding-left: 20px;
	padding-right: 130px;
}
#contents .categoryLink a {
	position: absolute;
	right:0;
	top: 15px;
	color: #4e4e4e;
	font-size: 14px;
	line-height: 35px;
	text-align: center;
	display: block;
	width: 110px;
	padding-right: 20px;
	border-radius: 5px;
	border: 1px solid rgba(78,78,78,0.25);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#contents .categoryLink a.highlight,
#contents .categoryLink a:hover {
	color: #fff;
	border-color: #bf1a1f;
	background-color: #bf1a1f;
}
#contents .categoryLink a::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin-top: auto;
    margin-bottom: auto;
    width: 8px;
    height: 14px;
    background-image: url(../images/arrow_03.png);
    background-position: 0px 0px;
}
#contents .categoryLink a.highlight::after,
#contents .categoryLink a:hover::after {
    background-position: 0px -14px;
}

/* categoryBlock*/
#contents .categoryBlock .itemBlock {
	margin-top: 30px;
	position: relative;
}
#contents .categoryBlock .item {
	width: 270px;
} 
#contents .categoryBlock .item + .item {
	margin-left: 15px;
}
#contents .categoryBlock .item .ranking {
	color: #ed190d;
	font-size: 12px;
	line-height: 1;
	font-weight: bold;
	text-align: center;
	position: absolute;
	left: 10px;
	bottom: 0;
	width: 40px;
	padding-top: 12px;
	background-color: #ffffff;
}
#contents .categoryBlock .item .movieInfoBlock {
	padding: 15px 20px;
}
#contents .categoryBlock .notice {
	color: #666666;
	font-size: 12px;
	text-align: center;
	margin-top: 5px;
}

/* listPageTitle */
#contents .listPageTitleBlock {
    letter-spacing: -.5em;
    background-color: #e5e5e5;
    background-image: -webkit-linear-gradient(270deg,rgba(229,229,229,1.00) 0%,rgba(217,217,217,1.00) 100%);
    background-image: -moz-linear-gradient(270deg,rgba(229,229,229,1.00) 0%,rgba(217,217,217,1.00) 100%);
    background-image: -o-linear-gradient(270deg,rgba(229,229,229,1.00) 0%,rgba(217,217,217,1.00) 100%);
    background-image: linear-gradient(180deg,rgba(229,229,229,1.00) 0%,rgba(217,217,217,1.00) 100%);
}
#contents .listPageTitle {
    letter-spacing: normal;
    font-weight: bold;
    font-size: 28px;
	line-height: 40px;
    width: 925px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 10px;
    padding-bottom: 10px;
}
#contents .listPageTitle > span {
    color: #666666;
    display: inline-block;
    margin-left: 20px;
    border-left: 1px solid rgba(0,0,0,0.10);
}
#contents .listPageTitle > span > span {
    transform: scale(0.5);
    display: inline-block;
}

/* categoryMovieBlock */
#contents .categoryMovieBlock {
    width: 925px;
    margin-top: 50px;
    margin-left: auto;
    margin-right: auto;
}
#contents .categoryMovieBlock .itemBlock {
}
#contents .categoryMovieBlock .item {
	background-color: #ffffff;
    position: relative;
}
#contents .categoryMovieBlock .item .movieInfo li {
    font-size: 12px;
}
#contents .categoryMovieBlock .item .movieInfo .category {
    line-height: 25px;
}

/* movieBlock*/
#contents .movieBlock {
}
#contents .movieBlock .playerWrapper {
    position: relative;
    height: 0;
    padding-bottom: 56.25%;
}
#contents .movieBlock .playerWrapper .player {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #000;
}
#contents .movieBlock .movieInfoBlock {
    margin: 40px 35px 0;
}
#contents .movieBlock .title {
    font-size: 24px;
	line-height: 34px;
    font-weight: bold;
}
#contents .movieBlock .movieInfo {
    letter-spacing: -0.5em;
    position: relative;
    margin-top: 20px;
    line-height: 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(0,0,0,0.10);
}
#contents .movieBlock .movieInfo li {
    letter-spacing: normal;
    display: inline-block;
    margin-top: 0;
    vertical-align: middle;
}
#contents .movieBlock .movieInfo li + li {
    margin-left: 12px;
}
#contents .movieBlock .category {
    font-size: 12px;
    margin-top: 5px;
}
#contents .movieBlock .date {
    font-size: 12px;
}
#contents .movieBlock .socialButtons li {
    float: left;
    line-height: 20px;
}
#contents .movieBlock .socialButtons li + li {
    margin-left: 10px;
}
#contents .movieBlock .description {
	color: #666666;
	font-size: 15px;
	line-height: 27px;
    margin-top: 20px
}
#contents .movieBlock .relatedLinksBlock {
    margin-top: 20px;
}
#contents .movieBlock .relatedLinksTitle {
    font-size: 13px;
    font-weight: bold;
}
#contents .movieBlock .relatedLinks li {
    font-size: 15px;
    font-style: italic;
    line-height: 20px;
    margin-top: 8px;
    padding-left: 15px;
    background-image: url(../images/arrow_07.png);
    background-position: 0px 7px;
}
#contents .movieBlock .relatedLinks a {
    color: #b0160d;
    text-decoration: underline;
}
#contents .movieBlock .relatedLinks a:hover {
    text-decoration: none;
}

/* relatedMovie */
#contents .relatedMovieBlock .relatedMovieTitleBlock {
	position: relative;
}
#contents .relatedMovieBlock .relatedMovieTitle {
	color: #333333;
	font-size: 20px;
	font-weight: bold;
	line-height: 27px;
	padding-top: 20px;
	padding-left: 20px;
	padding-right: 130px;
}
#contents .relatedMovieBlock .tagList {
    letter-spacing: -0.5em;
}
#contents .relatedMovieBlock .tagList li {
    letter-spacing: normal;
    display: inline-block;
    margin-bottom: 10px;
    margin-right: 10px;
}
#contents .relatedMovieBlock .tagList a {
    font-weight: bold;
    text-align: center;
    color: #4e4e4e;
    font-size: 12px;
    line-height: 24px;
    display: inline-block;
    padding-left: 15px;
    padding-right: 15px;
    border-radius: 5px;
    border: 1px solid rgba(78,78,78,0.25);
}
#contents .relatedMovieBlock .tagList a:hover,
#contents .relatedMovieBlock .tagList a.current {
    color: #fff;
    background-color: #bf1a1f;
    border-color: #bf1a1f;
}

/* btnMore01 */
#contents .btnMore01 {
    text-align: center;
}
#contents .btnMore01 a {
    font-size: 20px;
    line-height: 54px;
    color: #4e4e4e;
    display: inline-block;
    width: 287px;
    padding-right: 27px;
    background-color: #fff;
    border-radius: 5px;
    border: 1px solid rgba(78,78,78,0.25);
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#contents .btnMore01 a::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 40px;
    margin-top: auto;
    margin-bottom: auto;
    width: 14px;
	height: 8px;
    background-image: url(../images/arrow_06.png);
    background-position: 0px 0px;
}
#contents .btnMore01 a:hover {
    color: #fff;
	border-color: #bf1a1f;
	background-color: #bf1a1f;
}
#contents .btnMore01 a:hover::after {
    color: #fff;
    background-position: 0px -8px;
}
#contents .sameCategoryMovieBlock .btnMore01 a {
    font-size: 14px;
	line-height: 36px;
    width: 184px;
    padding-right: 20px;
}
#contents .sameCategoryMovieBlock .btnMore01 a::after {
    right: 20px;
}

/* sameCategoryMovieBlock*/
#contents .sameCategoryTitle {
/*    color: rgba(45, 45, 45, 0.5);*/
    color: #969696;
    font-size: 20px;
    font-weight: bold;
    line-height: 1;
    padding-top: 30px;
    padding-bottom: 30px;
}