@charset "utf-8";

/* スライダー
------------------------------*/
.panelWrap {
	width: 100%;
	max-width: 1200px;
	height: 100%;
	margin: 0 auto;
	overflow: hidden;
	position: relative;
}
	.panelWrap .panel {
		width: 100%;
		max-width: 900px;
		height: 480px;
		margin: 0 auto;
		position: relative;
	}
	.panelWrap .panel:before {
		display: block;
		content: '';
		width: 167px;
		height: 480px;
		background: rgba(0,0,0,0.5);
		position: absolute;
		top: 0;
		left: -167px;
		z-index: 10;
	}
	.panelWrap .panel:after {
		display: block;
		content: '';
		width: 167px;
		height: 480px;
		background: rgba(0,0,0,0.5);
		position: absolute;
		top: 0;
		right: -167px;
		z-index: 10;
	}
		.panelWrap .panel .inner {
			width: 1234px;
			margin-left: -617px;
			position: absolute;
			left: 50%;
		}
			.panelWrap .panel .inner #slider {
				display:none;
				width: 100%;
			}
			.panelWrap .panel .inner #slider.slick-initialized {
				display:block;
			}
				.panelWrap .panel .inner #slider .slick-slide {}
					.panelWrap .panel .inner #slider .slick-slide a {
						text-decoration: none;
					}
						.panelWrap .panel .inner #slider .slick-slide img {
							height: 380px;
						}
						.panelWrap .panel .inner #slider .slick-slide p {
							display: table-cell;
							width: 100%;
							height: 90px;
							color: #000;
							vertical-align: middle;
							padding: 0 55px 10px;
						}
				.panelWrap .panel .inner #slider .slick-dots {
					display: block;
					text-align: center;
					margin: 0 auto;
					position: absolute;
					bottom: 5px;
					left: 0;
					right: 0;
					z-index: 20;
				}
					.panelWrap .panel .inner #slider .slick-dots li {
						display: inline-block;
						text-align: center;
						margin: 0 7px;
					}
						.panelWrap .panel .inner #slider .slick-dots li button {
							display: block;
							width: 12px;
							height: 12px;
							padding: 0;
							background: #9e9e9e;
							border: none;
							text-indent: -9999px;
							outline: none;
							cursor: pointer;
						}
						.panelWrap .panel .inner #slider .slick-dots li.slick-active button {
							background: #0c985b;
						}
				.panelWrap #arrow {
					position: absolute;
					width: 100%;
					top: 50%;
					left: 0;
				}
				.panelWrap #arrow .slick-prev {
					display: block;
					width: 20px;
					height: 33px;
					background: url(../img/ico_slider_prev@2x.png) no-repeat 0 0;
					background-size: 20px 33px;
					border: none;
					text-indent: -9999px;
					margin: -16px 0 0;
					outline: none;
					cursor: pointer;
					position: absolute;
					top: 50%;
					left: 20px;
					z-index: 20;
				}
				.panelWrap #arrow .slick-next {
					display: block;
					width: 20px;
					height: 33px;
					background: url(../img/ico_slider_next@2x.png) no-repeat 0 0;
					background-size: 20px 33px;
					border: none;
					text-indent: -9999px;
					margin: -16px 0 0;
					outline: none;
					cursor: pointer;
					position: absolute;
					top: 50%;
					right: 20px;
					z-index: 20;
				}
				#top .panelWrap #arrow button {
					z-index: 22!important;
				}
	.panelWrap .panel.single {}
	.panelWrap .panel.single:before {
		background: rgba(0,0,0,1);
	}
	.panelWrap .panel.single:after {
		background: rgba(0,0,0,1);
	}
		.panelWrap .panel.single .inner {
			width: 904px;
			margin: 0 auto;
			position: static;
			left: 0;
		}
			.panelWrap .panel.single .inner #slider {
				display: block;
			}
				.panelWrap .panel.single .inner #slider a {
					text-decoration: none;
				}
					.panelWrap .panel.single .inner #slider p {
						display: table-cell;
						width: 100%;
						height: 90px;
						color: #000;
						vertical-align: middle;
						padding: 0 55px 10px;
					}

/* 劇場などのブロック
------------------------------*/
.block01 {
	width: 100%;
	min-width: 1048px;
	background: #f0f0f0;
	padding: 47px 0 1px;
	margin: 0 auto;
}
	.btnArea {
		width: 100%;
		max-width: 1200px;
		min-width: 1048px;
		margin: 0 auto;
		text-align: center;
	}
		.btnArea a {
			display: inline-block;
			width: 40%;
			background: #0c985b;
			box-shadow: 0 5px 0 #08543f;
			-webkit-border-radius: 3px;
			-moz-border-radius: 3px;
			border-radius: 3px;
			color: #fff;
			line-height: 34px;
			font-size: 140%;
			font-weight: bold;
			text-align: center;
			text-decoration: none;
			margin: 0 auto;
			position: relative;
		}
		.btnArea a.theater {
			margin-right: 20px;
		}
		.btnArea a:hover {
			background: #14ad6a;
		}
		.btnArea a:active {
			box-shadow: none;
			top: 4px;
		}
			.btnArea a .inner {
				display: inline-block;
				min-height: 32px;
				line-height: 1.4px;
				padding: 3px 10px 0 40px;
			}
			.btnArea a.theater .inner {
				background: url(../img/ico_side_theater@2x.png) no-repeat 0 90%;
				background-size: 27px 25px;
			}
			.btnArea a.movie .inner {
				background: url(../img/ico_side_movie@2x.png) no-repeat 0 90%;
				background-size: 23px 27px;
			}
				.btnArea a .jpLabel {
					display: block;
					line-height: 1;
					min-height: 32px;
					padding: 10px 0 0 0;
				}
				.btnArea a .enLabel {
					display: block;
					font-size: 12px;
					margin: 0 20px 0 0;
				}
	.past {
		width: 98%;
		width: -webkit-calc(100% - 20px);
		width: calc(100% - 20px);
		max-width: 1200px;
		margin: 40px auto 0;
	}
	.past:last-child {
		margin: 40px auto;
	}
		.past h1 {
			font-weight: bold;
			font-size: 116%;
			border-left: solid 4px #0c985b;
			padding-left: 10px;
		}
		.past ul {
			width: 100%;
			margin: 10px 0 0;
			background: #fff;
		}
			.past ul li {
				display: block;
				width: 100%;
				overflow: hidden;
				border-top: 1px solid #f0f0f0;
				padding: 15px 35px;
				box-sizing: border-box;
			}
			.past ul li:first-child {
				border-top: none;
			}
				.past ul li a {
					width: 25%;
					float: left;
					color: #000;
				}
				.past ul li a:hover {
					text-decoration: none;
				}
				.past ul li p {
					display: block;
					margin-left: 27%;
				}

/*上映中・上映予定作品
------------------------------*/
#schedule {
	width: 100%;
	margin: 0;
}
	#schedule .tabs {
		max-width: 1200px;
		min-width: 1048px;
		text-align: center;
		margin: 0 auto;
	}
		#schedule .tabs li {
			width: 49%;
			width: calc((100% - 10px) / 2);
			background: #999999;
			border-bottom: 10px solid #fff;
			font-weight: bold;
			padding: 14px 0;
			float: left;
			cursor: pointer;
		}
		#schedule .tabs li.active {
			background: #cccccc;
			border-bottom: none;
			padding: 14px 0 24px;
		}
		#schedule .tabs li:hover {
			color: #656363;
		}
		#schedule .tabs li:last-child {
			float: right;
		}
			#schedule .tabs li span {
				display: block;
				font-size: 158%;
				font-weight: bold;
			}
	#schedule .display {
		min-width: 1048px;
		background: #cccccc;
		padding: 20px 0 60px;
	}
		#schedule .display .tab {
			max-width: 1200px;
			min-width: 1048px;
			margin: 0 auto;
		}
			#schedule .display .tab li.duringTab {}
			#schedule .display .tab li.plansTab {
				display: none;
			}
				#schedule .display .tab li ul {
					letter-spacing: -.40em;
					margin: 20px 0 30px;
				}
					#schedule .display .tab li ul li {
						display: inline-block;
						width: 20.3%;
						margin: 0 0 0 3.7%;
						letter-spacing: normal;
						vertical-align: top;
					}
						#schedule .display .tab li ul li a {
							display: block;
							background: #fff;
							text-decoration: none;
							position: relative;
						}
						#schedule .display .tab li ul li a:hover {
							-webkit-transition: opacity 0.2s ease-out;
							-ms-transition: opacity 0.2s ease-out;
							transition: opacity 0.2s ease-out;
							opacity: 0.7;
							filter: alpha(opacity=70);
							transition: all .4s;
							box-shadow: 0 0 5px #333;
							zoom: 1;
						}
						#schedule .display .tab li ul li a figure {
							text-align: center;
						}
							#schedule .display .tab li ul li a figure img {
								width: 100%;
							}
							#schedule .display .tab li ul li a:hover figure img {
								-webkit-transition: none;
								-ms-transition: none;
								transition: none;
								opacity: 1;
								filter: alpha(opacity=100);
								zoom: 1;
							}
						#schedule .display .tab li ul li a dl {
							position: relative;
						}
						#schedule .display .tab li ul li a dt {
							background: #000;
							color: #fff;
							font-size: 115%;
							font-weight: bold;
							line-height: 1.25;
							position: relative;
							padding: 7px 0;
							zoom: 1;
						}
							#schedule .display .tab li ul li a dt span {
								display: block;
								padding: 0 10px;
								position: relative;
								top: 50%;
								-ms-transform: translateY(-50%);
								-webkit-transform: translateY(-50%);
								transform: translateY(-50%);
							}
						#schedule .display .tab li ul li a dd {
							padding: 10px;
							color: #000;
							font-size: 93%;
						}

/*ランキング
------------------------------*/
.ranking {
	width: 100%;
	min-width: 1048px;
	background: url(../img/bg_dot.png);
	padding: 60px 0;
	margin: 0 auto;
	box-sizing: border-box;
}
	.ranking > div {
		width: 98%;
		width: -webkit-calc(100% - 20px);
		width: calc(100% - 20px);
		max-width: 1200px;
		margin: 0 auto;
	}
		.ranking > div > div {
			display: inline-block;
			width: 69%;
			vertical-align: top;
			margin-right: 2%;
			float: left;
		}
		.ranking .rank {}
		/*
		.ranking .rank.attention {
			width: 34%;
			margin-right: 0;
			float: left;
		}
		*/
			.ranking .rank h1 {
				font-size: 165%;
				border-bottom: 3px solid #dedddd;
				position: relative;
			}
			.ranking .rank h1:before {
				content: "";
				position: absolute;
				width: 30%;
				height: 3px;
				background: #0c985b;
				bottom: -3px;
				left: 0;
			}
			.ranking .rank h1 + p {
				margin: 10px 0 20px;
			}
			.ranking .rank ul li {
				margin-bottom: 10px;
			}
			.ranking .rank ul li a {
				display: table;
				table-layout: fixed;
				width: 100%;
				background: #fff;
				text-decoration: none;
				padding: 15px;
				box-sizing: border-box;
				position: relative;
			}
			.ranking .rank ul li a:hover {
				-webkit-transition: opacity 0.2s ease-out;
				-ms-transition: opacity 0.2s ease-out;
				transition: opacity 0.2s ease-out;
				opacity: 0.7;
				filter: alpha(opacity=70);
				transition: all .4s;
				box-shadow: 0 0 5px #333;
				zoom: 1;
			}
			.ranking .rank.new ul li a:before {
				content: "";
				border-bottom: 70px solid transparent;
				border-right: 70px solid #373737;
				position: absolute;
				top: 0;
				right: 0;
				z-index: 100;
			}
			.ranking .rank.new ul li a:after {
				color: #fff;
				font-weight: bold;
				position: absolute;
				z-index: 100;
			}
			.ranking .rank.new ul li a.new:after {
				content: "NEW";
				top: 6px;
				right: 7px;
			}
			.ranking .rank.new ul li a.up:after,
			.ranking .rank.new ul li a.down:after,
			.ranking .rank.new ul li a.flat:after {
				content: "";
				width: 22px;
				height: 18px;
				background: url(../../img/rank_arrow@2x.png);
				background-size: 22px 18px;
				top: 10px;
				right: 9px;
			}
			.ranking .rank ul li a.up:after {
				transform: rotate(-90deg);
			}
			.ranking .rank ul li a.down:after {
				transform: rotate(90deg);
			}
			.ranking .rank ul li a.flat:after {
				transform: rotate(0deg);
			}
				.ranking .rank ul li a > * {
					display: table-cell;
				}
				.ranking .rank ul li a > figure {
					width: 20%;
					vertical-align: middle;
					text-align: center;
				}
					.ranking .rank ul li a > figure img {
						max-height: 150px;
						padding: 0;
						margin: 0;
					}
				.ranking .rank ul li a > dl {
					width: 80%;
					padding: 0 15px;
				}
					.ranking .rank ul li a > dl dt {
						font-size: 129%;
						font-weight: bold;
						line-height: 1.22;
						border-bottom: 1px solid #b1aeae;
						padding: 0 26px 10px;
						color: #000;
						position: relative;
					}
					.ranking .rank ul li a > dl dt:before {
						content: "";
						width: 28px;
						height: 35px;
						background: url(../../img/ico_rank01@2x.png);
						background-size: 28px 35px;
						position: absolute;
						top: -21px;
						left: -8px;
					}
					.ranking .rank ul li:nth-child(2) a > dl dt:before {
						background: url(../../img/ico_rank02@2x.png);
						background-size: 28px 35px;
					}
					.ranking .rank ul li:nth-child(3) a > dl dt:before {
						background: url(../../img/ico_rank03@2x.png);
						background-size: 28px 35px;
					}
					.ranking .rank ul li:nth-child(4) a > dl dt:before {
						background: url(../../img/ico_rank04@2x.png);
						background-size: 28px 35px;
					}
					.ranking .rank ul li:nth-child(5) a > dl dt:before {
						background: url(../../img/ico_rank05@2x.png);
						background-size: 28px 35px;
					}
					.ranking .rank ul li a > dl dd {
						padding: 10px 0 0;
						color: #000;
						font-size: 93%;
					}
			.ranking .rank .update {
				text-align: right;
			}
		.ranking  > div > div.banner {
			width: 336px;
			margin-right: 0;
			float: right;
		}
			.ranking .banner div {
				text-align: center;
				margin-bottom: 20px;
			}
				.ranking .banner div img {
					max-width: 100%;
				}

@media only screen and (max-width: 1424px) {
	.ranking > div > div {
		width: 65%;
		margin-right: 1.5%;
	}
/*
	.ranking .rank.attention {
		width: 32%;
	}
	.ranking > div > div {
		width: 49%;
		margin-right: 2%;
	}
	.ranking .rank.attention {
		width: 49%;
		margin-right: 0;
	}
	.ranking  > div > div.banner {
		width: 100%;
		margin: 20px 0 0;
	}
	.ranking  > div > div.banner p {
		display: inline-block;
		letter-spacing: normal;
		padding: 0 10px 10px;
	}
*/
}

/*ニュース
------------------------------*/
.newsFrame {
	width: 100%;
	min-width: 1048px;
	background: #f0f0f0;
	padding: 1px 0 60px;
	margin: 0 auto;
}
	.newsFrame section {
		width: 100%;
		max-width: 1200px;
		min-width: 1048px;
		margin: 0 auto;
	}
		.newsFrame section h1 {
			color: #7d7e7e;
			text-align: center;
			font-size: 93%;
			font-weight: normal;
			margin: 50px 0 40px;
		}
			.newsFrame section h1 span {
				display: block;
				color: #141614;
				font-size: 215%;
				font-weight: bold;
			}
	.newsFrame .md_newsList {
		margin: 0 10px 25px;
	}
	.newsFrame .campaign  h1,
	.newsFrame .entertainment  h1 {
		margin: 75px 0 40px;
	}
	.campaign ul,
	.entertainment ul {
		margin: 0 10px 25px;
		letter-spacing: -.40em;
	}
		.campaign ul li,
		.entertainment ul li {
			display: inline-block;
			width: 23%;
			margin: 0 0 0 2.66%;
			letter-spacing: normal;
			vertical-align: top;
		}
		.campaign ul li.noCampaign {
			width: 100%;
			background: #fff;
			padding: 15px;
			box-sizing: border-box;
		}
		.campaign ul li:first-child,
		.entertainment ul li:first-child {
			margin: 0;
		}
			.campaign ul li a,
			.entertainment ul li a {
				display: block;
				background: #fff;
				text-decoration: none;
			}
			.campaign ul li a:hover,
			.entertainment ul li a:hover {
				-webkit-transition: opacity 0.2s ease-out;
				-ms-transition: opacity 0.2s ease-out;
				transition: opacity 0.2s ease-out;
				opacity: 0.7;
				filter: alpha(opacity=70);
				transition: all .4s;
				box-shadow: 0 0 5px #333;
				zoom: 1;
			}
				.campaign ul li a figure {
					height: 350px;
					border-bottom: 1px solid #b6b5b5;
				}
				.entertainment ul li a figure {
					border-bottom: 1px solid #b6b5b5;
					padding: 0 0 1px;
				}
				.campaign ul li a figure img {
					display: block;
					max-height: 100%;
					margin: 0 auto;
					position: relative;
					top: 50%;
					transform: translateY(-50%);
					-ms-transform: translateY(-50%);
				}
				.entertainment ul li a figure img {
					display: block;
					margin: 0 auto;
					position: relative;
					top: 50%;
					transform: translateY(-50%);
					-ms-transform: translateY(-50%);
				}
				.campaign ul li a p,
				.entertainment ul li a p {
					padding: 15px 20px;
					color: #000;
				}


/* もっと見るボタン
------------------------------*/
a.md_squareBtnWhite {
	margin: 0 10px;
}