@charset "utf-8";
body {
	background-image:url('../img/naka_haikei.jpg');
}
strong{
	font-weight:bold;
}

#image {
    pointer-events: none;
}

header{
	text-align:center;
	background-image:url('../img/okihiki12.jpg');
	background-size:cover;
	min-height:100vh;
	position:relative;
	text-shadow: 2px 2px 1px #808080,
    -2px 2px 1px #808080,
    2px -2px 1px #808080,
    -2px -2px 1px #808080;
}

	header br{
		display:none;
	}

header#page_header{
	min-height:0;
	text-align:left;
}

ruby > rt {
	font-size: 50%;
}

	header > div{
		position:absolute;
		width:100%;
		top:10%;
		color:#fff;
	}
	
	header#page_header > div{
		position:relative;
		top:0;
		left:0;
	}

	header h1{
		font-size:4em;
		font-weight:bold;
		letter-spacing:0.2em;
	}
	
	header#page_header h1{
		font-size:1.8em;
		padding:20px;
	}
	
		header h1 > span{
			display:block;
			font-size:0.9em;
		}
		
		header h1 > a,
		header h1 > a:hover{
			color:#fff;
			text-decoration:none;
		}
		
	header p{
		font-size:1.75em;
		letter-spacing:0.2em;
		line-height:1.5em;
		margin:20px auto;
	}

main{
	text-align:center;
	padding:20px;
	font-size:1.2em;
}

	main h2{
		font-size:1.75em;
		font-weight:bold;
		letter-spacing:0.1em;
		margin:60px auto 10px auto;
	}
		
	main h2.small{
		font-size:1.75em;
	}

	main h3{
		font-size:1.25em;
		font-weight:bold;
		letter-spacing:0.1em;
		margin:0 auto 0 auto;
	}
	
	main > div{
		margin:0 auto 140px auto;
	}
	
	main div#news_list{
		max-height:350px;
		overflow:auto;
		max-width:600px;
		padding:20px;
	}
	
	main div#contact_list{
		width:100%;
		max-width:347px;
		padding:20px;
		box-sizing:border-box;
	}
	
		main div#contact_list br{
			display:none;
		}
	
	main div#open p{
		margin:20px auto;
	}

	main div#access_list p{
		margin:20px auto;
	}
	
	main div#schedule img{
		width:100%;
		max-width:800px;
	}
	
	main div#access_list img{
		width:100%;
		max-width:600px;
	}

	main dl{
		width:100%;
		margin:20px auto;
		text-align:left;
		overflow:hidden;
		border-bottom:1px #ddd solid;
	}

		main dl dt{
			float:left;
			width:140px;
			text-align:center;
			font-weight:bold;
			margin:10px 0;
			clear:left;
		}

		main dl dd{
			width:calc(100% - 140px);
			float:left;
			margin:10px 0;
		}
		
	main div.message{
		max-width:800px;
		text-align:left;
		margin:10px auto 80px auto;
		letter-spacing:0.1em;
		line-height:2em;
	}
	
	p.alert{
		color:#f44336;
		font-weight:bold;
	}
	
	main div.news_det{
		margin:10px auto;
		letter-spacing:0.1em;
		text-align:left;
		max-width:960px;
		padding:0 20px;
		box-sizing:border-box;
		min-height: calc(100vh - 664px);
	}
	
	main div.news_det + p{
		margin:120px auto 100px auto;
		text-align:center;
	}
	
	main div.news_det img{
		max-width:100%;
		height:auto;
	}
	
	main p.date{
		margin:40px auto 0 auto;
		max-width:960px;
		padding:0 20px;
		box-sizing:border-box;
		text-align:right;
	}

footer{
		width:100%;
	height:60px;
	color:#fff;
	line-height:60px;
	background-color:#000;
	text-align:center;
}


.mflex {
	display: flex;
	flex-wrap: wrap;
	max-width: 1600px;
    margin: 0 auto;
}

.mflex li{
	display: inline;
	margin: 0 10px 30px;
	width: calc(33.333333% - 20px);
}

.mflex li a img{
    max-width:480px;
    width: 100%;
}

.mflex li a{
	position: relative;
	display: block;
}

.mflex li a:before{
	position: absolute;
	content: '';
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	width: 60px;
	height: 60px;
	background-image: url(../../img/moviegallery/play_off.svg);
	background-size: cover;
	background-position: center;
	z-index: 10;
}
.mflex li a:hover:before{
	background-image: url(../../img/moviegallery/play_on.svg);
	transition: 0.3s;
}

/*スマホ*/
@media screen and (max-width:900px){
	header {
		font-size:0.8em;
	}
	.mflex li{
		width: calc(50% - 20px);
	}
	main h2.small{
		font-size:1.25em;
	}
}

@media screen and (max-width:720px){
	header br{
		display:inline;
	}
	figure {
		margin: 0;
	}
}

@media screen and (max-width:500px){
	header > div{
		top:20%;
		color:#fff;
	}

	.mflex li{
		width: calc(100%);
	}
	
	header h1{
		font-size:3em;
	}
	
	main div.message{
		font-size:0.85em;
		letter-spacing:0;
		margin:20px auto 100px auto;
	}
	
	main{
		padding:10px;
	}

		main h2{
			font-size:1.5em;
		}
		
		main h2.small{
			font-size:1.2em;
		}
		
		main > div{
			margin:0 auto 100px auto;
		}
		
			main dl dt{
				float:none;
				width:100%;
				text-align:left;
				margin:10px 0;
			}

			main dl dd{
				width:100%;
				float:none;
				margin:10px 0;
			}

			main div#news_list{
				padding:0;
			}
			
			main div#open p{
				font-size:0.85em;
				margin:40px auto;
				letter-spacing:0.1em;
				text-align:left;
			}
			
			main div#access_list p{
				font-size:0.85em;
				margin:40px auto;
			}
			
				main div#contact_list{
					font-size:0.85em;
				}
			
				main div#contact_list br{
					display:inline;
				}
}
