﻿@charset "UTF-8";

/*=====================================================
glasscube 最終更新日：2020.02

全ページ用

======================================================*/

/*======================================================
kill_style
======================================================*/

ul,li,dl,dt,dd,figure {
	margin: 0;
	padding: 0;
	display: block;
	list-style: none;
}

img {
	display: block;
	vertical-align: bottom;
}

aside,section,header,footer {
	display: block;
}

/*======================================================
共通部分

======================================================*/

body {
	font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic';
	background: -moz-linear-gradient(top,  #baa388 0%, #ffffff 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #baa388 0%,#ffffff 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #baa388 0%,#ffffff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	background-attachment: fixed;
}

html, body {
	margin: 0;
	padding: 0;
	min-height: 100%;
	height: 100%;
}

/* リンク設定 */

a:link {
	text-decoration: none;
	transition: .3s;
}

a:visited {
	text-decoration: none;
	transition: .3s;
}

a img {
	opacity: 1;
	transition: .3s;
}

a:hover img {
	opacity: 0.5;
	transition: .3s;
}

.orange {
	color: #ef3800;
}

a.pdf {
	background: url(../../rental/shared/image/theater_pdficon_mini.gif) left center no-repeat;
	background-size: 0.8em;
	padding-left: 1em;
}


p.btn_back {
	text-align: center;
}

p.btn_back a {
	color: #fff;
	font-weight: bold;
	border: 2px solid #1b0704;
	background: #1b0704;
	transition: .3s;
	display: inline-block;
	padding: 0.75em 2em;
}

@media screen and (min-width: 768px){

	p.btn_back a:hover {
		background: #fff;
		color: #1b0704;
		transition: .3s;
	}

}

/* ////////////////////////////////////////////////////
 レイアウト 
//////////////////////////////////////////////////// */

#wrapper {
	box-shadow: 0 0 0.25em #666;
	max-width: 1200px;
	width: 100%;
	background: #fff;
	margin: 0 auto;
}

dl.pdf {
	position: relative;
	margin-bottom: 1em;
}

dl.pdf dt {
	float: left;
}

dl.pdf dd {
	margin-left: 125px;
	font-size: 80%;
}

/* ////////////////////////////////////////////////////
 header
//////////////////////////////////////////////////// */

header h1 {
	margin: 0;
	background: #fff;
}

header .com_nav,
header .com_nav ul,
header .com_nav li {
	margin: 0;
	padding: 0;
	list-style: none;
}

@media screen and (min-width: 768px){

	header h1 img {
		width: 240px;
	}

	header > div {
		display: flex;
		padding: 0.5em 1em;
		box-sizing: border-box;
		align-items: center;
	}

	header h1 {
		flex-grow: 1;
	}

	header p a {
		color: #171717;
		transition: .3s;
	}

	header p a:before {
		content: "\03e";
		color: #8d6531;
		transform: scale(1, 0.8);
		padding-right: 0.5em;
		font-weight: bold;
	}

}

@media screen and (max-width: 768px){

	body {
		font-size: 85%;
	}

/* header */

	header {
		position: fixed;
		width: 100%;
		z-index: 98;
		top: 0;
		background: #fff;
		display: block;
		height: 48px;
	}

	header > div > h1 {
		padding: 0.4em 0.5em;
	}

	header h1 img {
		width: 40%;
	}

	header > div > p {
		display: none;
	}

	.com_nav > div {
		font-size: 20px;
		letter-spacing: -1px;
		width: 48px;
		height: 48px;
		top: 0px;
		right: 0px;
		background: #1b0704;
		z-index: 99;
		position: fixed;
		cursor: pointer;
		line-height: 1;
		color: #fff;
		font-size: 0;
		display: inline-block;
		transition: .3s;
	}

	.com_nav div span {
		background-color: #fff;
		position: absolute;
		right: 12px;
		width: 24px;
		height: 2px;
	}

	.com_nav div span:nth-of-type(1) {
		top: 14px;
	}

	.com_nav div span:nth-of-type(2) {
		top: 23px;
	}

	.com_nav div span:nth-of-type(3) {
		top: 32px;
	}

	.com_nav div.check span:nth-of-type(1) {
		top: 9px;
		-webkit-transform: translateY(14px) rotate(45deg);
		transform: translateY(14px) rotate(45deg);
	}

	.com_nav div.check span:nth-of-type(2) {
		right: -50%;
		opacity: 0;
		-webkit-animation: active-menu-bar02 .8s forwards;
		animation: active-menu-bar02 .8s forwards;
	}

	.com_nav div.check span:nth-of-type(3) {
		top: 37px;
		-webkit-transform: translateY(-14px) rotate(-45deg);
		transform: translateY(-14px) rotate(-45deg);
	}

	.com_nav div span,
	.com_nav div.check span {
		transition: .3s;
	}

	.com_nav ul {
		position: fixed;
		background: #fff;
		left: 100%;
		width: 90%;
		z-index: 97;
	}

	.com_nav ul li {
		border-bottom: 1px solid #ccc;
	}

	.com_nav ul li a {
		color: #333;
		display: block;
		padding: 1em;
		position: relative;
	}

	.com_nav ul li a:after {
		content:'>';
		display: inline-block;
		position: absolute;
		right: 2em;
		top: 50%;
		color: #ccc;
		font-weight: bold;
		transform: translateY(-50%) scale(0.5, 1) ;
	}


}


/* ////////////////////////////////////////////////////
 footer 
//////////////////////////////////////////////////// */

footer {
	background: #1b0704;
	color: #fff;
	clear: both;
}

footer dl {
	margin: 0 1.5em;
	padding: 1.5em 0;
	box-sizing: border-box;
	border-bottom: 1px solid #8d8989;
}

footer dl dt img {
	width: 220px;
	max-width: 100%;
}

footer ul {
	display: flex;
	padding: 1.5em 1.5em 0;
	flex-wrap: wrap;
}

footer ul li a {
	color: #fff;
}

footer ul li:after {
	content: "｜";
	display: inline-block;
	padding: 0 0.5em;
}

@media screen and (min-width: 768px){

	footer dl {
		display: flex;
		align-items: center;
	}

	footer dl dt {
		width: 240px;
	}

	footer ul {
		width: 50%;
		line-height: 1.5;
	}

	footer ul li:nth-child(4):after,
	footer ul li:last-child:after {
		content: "";
		padding: 0;
	}

	footer > div {
		padding: 0 1.5em;
		box-sizing: border-box;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

}

@media screen and (max-width: 768px){

	footer dl {
		margin: 0 0.5em;
		padding: 0.5em 0;
		box-sizing: border-box;
		border-bottom: 1px solid #8d8989;
		display: flex;
		align-items: center;
	}

	footer dl dt {
		width: 45%;
	}

	footer dl dd {
		width: 55%;
	}

	footer dl dt img {
		width: 90%;
	}

	footer ul {
		display: flex;
		padding: 1.5em 0.5em;
		flex-wrap: wrap;
	}

	p.sunshine_logo {
		margin-top: 1em;
	}

}

/* ////////////////////////////////////////////////////
 container 
//////////////////////////////////////////////////// */

@media screen and (min-width: 768px){

	#top_main,
	#main {
		padding: 0 1.5em 3em;
		box-sizing: border-box;
		float: left;
		width: 990px;
	}

}

@media screen and (max-width: 768px){

	#top_main,
	#main {
		padding: 0 1em 1.5em;
	}

}

/* ////////////////////////////////////////////////////
 aside 
//////////////////////////////////////////////////// */

aside dl {
	border: 2px solid #c00;
	text-align: center;
	box-sizing: border-box;
}

aside dl dt {
	color: #fff;
	background: #c00;
	line-height: 1;
	font-weight: bold;
	display: block;
	padding: 0.5em 0;
}

aside dl dd {
	padding: 0.5em;
	background: #fff;
}

@media screen and (min-width: 768px){

	aside {
		padding: 1.5em 0;
		box-sizing: border-box;
		float: right;
		width: 210px;
	}

	aside li {
		margin: 0 0 1em;
	}

	aside dl {
		width: 190px;
	}

}

@media screen and (max-width: 768px){

	aside {
		border-top: 1px solid #ccc;
		margin: 0 1em;
		padding: 1em 0;
		box-sizing: border-box;
	}

	aside ul {
		display: flex;
		flex-wrap: wrap;
	}

	aside li {
		text-align: center;
		margin: 0 0 1em;
		width: 50%;
	}

	aside img {
		width: 95%;
		margin: 0 auto;
	}

}


/* ////////////////////////////////////////////////////
 titles
//////////////////////////////////////////////////// */

.sec_title01 {
	background: #e7e3e0;
	color: #0f0f0f;
	line-height: 3em;
	padding: 0 0 0 1.75em;
	position: relative;
	margin: 1em 0;
}

.sec_title01 span:before,
.sec_title01 span:after {
	position: absolute;
	left: 1em;
	top: 0;
	content: "";
	display: inline-block;
	width: 5px;
}

.sec_title01 span:before {
	background: #1b0704;
	z-index: 2;
	height: calc( 100% / 3 * 2 );
}

.sec_title01 span:after {
	background: #dd9333;
	z-index: 1;
	height: 100%;
}

@media screen and (max-width: 768px){

	.sec_title01 {
		line-height: 2.5em;
		font-size: 120%;
	}

}

/* ////////////////////////////////////////////////////
 PC_only 
//////////////////////////////////////////////////// */

@media screen and (min-width: 768px){

	._sp {
		display: none !important;
	}

/* header */


	header .com_nav ul {
		display: flex;
		justify-content: center;
		background: #1b0704;
	}

	header .com_nav ul li a {
		display: inline-block;
		color: #fff;
		padding: 1em 1.25em;
		transition: .3s;
		font-weight: bold;
	}

	header .com_nav ul li a:hover {
		text-shadow:0 0 10px #8d6531;
	}

/* container */

	#container {
		padding: 1em;
		display: flex;
		justify-content: space-between;
	}

	#container div,
	#container section,
	#container aside {
		display: flex;
	}

	#container #main {
		flex-grow: 2;
		order: 0;
		padding: 0 1em;
	}

/* side */

	#container #side {
		order: -1;
		max-width: 300px;
	}

/* aside */

	#container aside ul li {
		margin: 0 0 1em 0;
	}

	#container aside ul li img {
		width: 100%;
	}

/* contents */

	#container ul.table_list {
		border-bottom: 1px solid #ccc;
	}

	#container ul.table_list li {
		border-top: 1px solid #ccc;
	}

	#container ul.table_list li dl {
		background: #e0e0e0;
		overflow: hidden;
	}

	#container ul.table_list li dl dt {
		width: 20%;
		float: left;
		display: block;
		padding: 1em;
		box-sizing: border-box;
	}

	#container ul.table_list li dl dd {
		background: #fff;
		padding: 1em;
		margin-left: 20%;
		box-sizing: border-box;
	}

}

/* ////////////////////////////////////////////////////
 SP_only 
//////////////////////////////////////////////////// */


@media screen and (max-width: 768px){

	._pc {
		display: none !important;
	}

	#container img{
		width: 100%;
		display: block;
	}

/* container */

	#container {
		margin: 1em;
	}

	#container #main,
	#container #side {
		margin: 1em 0;
	}

	#container aside ul {
		display: flex;
		flex-wrap: wrap;
		margin: 1em 0;
	}

	#container aside li {
		display: flex;
		width: 50%;
		margin: 0.5em 0;
	}

	#container aside img {
		width: 90%;
		margin: 0 auto;
	}

/* footer */

	footer {
		padding: 1em;
	}

	footer p {
		text-align: center;
		margin: 0;
	}

	footer p img {
		width: auto;
		margin: 0 auto;
	}

/* contents */

	#container ul.table_list {
		border-bottom: 1px solid #ccc;
	}

	#container ul.table_list li {
		border-top: 1px solid #ccc;
	}

	#container ul.table_list li dl dt {
		font-weight: bold;
		color: #3c2b16;
		margin: 1em 0 0.5em;
	}

	#container ul.table_list li dl dd {
		background: #fff;
		margin: 0.5em 0 1em;
	}


}


/* ////////////////////////////////////////////////////
 PC_only 
//////////////////////////////////////////////////// */

@media screen and (min-width: 768px){

	.table_list li {
		border-top: 1px solid #ccc;
	}

	.table_list li:last-child {
		border-bottom: 1px solid #ccc;
	}

	.table_list li dl {
		position: relative;
		background: #eee;
	}

	.table_list li dl dt {
		position: absolute;
		width: 20%;
		text-align: center;
		display: block;
		top: 50%;
		transform: translateY(-50%);
	}

	.table_list li dl dd {
		margin-left: 20%;
		box-sizing: border-box;
		padding: 0.5em 0.75em;
		background: #fff;
		border-bottom: 1px solid #ccc;
	}

	.table_list li dl dd p.mt {
		margin-top: 0;
	}

	.table_list li dl dd p:last-child,
	.table_list li dl dd p.mb {
		margin-bottom: 0;
	}

	.table_list li dl dd:last-child {
		border-bottom: 0;
	}

}

/* ////////////////////////////////////////////////////
 SP_only 
//////////////////////////////////////////////////// */

@media screen and (max-width: 768px){

	.theater_img {
		width: 100%;
	}

	.theater_img li {
		width: calc( 100% / 3 );
	}

	.theater_img li img {
		display: block;
		width: 95%;
		margin: 0 auto;
	}

	.table_list li {
		border-top: 1px solid #ccc;
		padding: 0.5em 0;
		display: block;
	}

	.table_list li,
	.table_list li dl,
	.table_list li dl dt,
	.table_list li dl dd {
		display: block;
		position: relative;
	}

	.table_list li dl dd {
		padding-top: 0.5em;
	}

	.table_list li:last-child {
		border-bottom: 1px solid #ccc;
	}

	.table_list li dl dt {
		font-weight: bold;
	}

}
