@charset "UTF-8";

/* ホーム */
#slideshow{
	position:relative;
	top:60px;
	width:100vw;
	height:calc(100vh - 60px);
	/*background:rgba(0,0,0,0.3);*/
}

#container{
	background:#FFF;
	font-family:'Times New Roman','BIZ UD明朝','BIZ UDMincho','游明朝','YuMincho','ヒラギノ明朝 ProN','Hiragino Mincho ProN','メイリオ','Meiryo','ＭＳ Ｐ明朝','MS PMincho',serif;
}

.contents.no-yohaku{
	padding-left:0;
	padding-right:0;
}
@media (min-width: 1024px) {
	.contents.no-yohaku{
		width:auto;
	}
	.contents.no-yohaku#cont-info{
		margin:0 auto;
		width:930px;
	}
}
@media (min-width: 1200px) {
	.contents.no-yohaku#cont-info{
		width:980px;
	}
}

#info{
	text-align:center;
}
#info h2{
	font-size:1.8rem;
}
#info h2:nth-child(2){
	padding:5px 0;
}
@media (min-width: 768px) {
	#info h2{
		font-size:1.9rem;
	}
}
@media (min-width: 1024px) {
	#info h2{
		font-size:2.0rem;
	}
}
@media (min-width: 1200px) {
	#info h2{
		font-size:2.1rem;
	}
}

#info-item{
	text-align:center;
	font-size:0;
}
.info-item#access{
	font-size:0;
}
.info-item#access .access h3.eng{
	font-family:'Open Sans';
	font-weight:600;
	font-size:1.3rem;
	line-height:130%;
	padding-bottom:10px;
	letter-spacing:-0.02em;
}
.info-item#access .access h3.jap{
	font-size:1.5rem;
}
.info-item#access .access#minute{
	padding-bottom:15px;
}
.info-item#access .access#minute h3{
	font-family:'Open Sans';
	font-weight:500;
	font-size:7.5rem;
	line-height:100%;
}
.info-item > h3{
	font-size:1.9rem;
	line-height:160%;
}
.initial{
	font-size:200%;
}
.info-item > h3.sub{
	font-size:1.7rem;
	padding-top:10px;
}
@media (min-width: 375px) {
	.info-item#access .access h3.eng{
		letter-spacing:0;
	}
}
@media (min-width: 568px) {
	.info-item#access{
		margin:0 auto;
		width:375px;
	}
	.info-item#access .access{
		display:inline-block;
		vertical-align:top;
		width:calc(100% - 70px);
		text-align:right;
		box-sizing:border-box;
	}
	.info-item#access .access h3.eng{
		padding-top:7px;
	}
	.info-item#access .access#minute{
		padding-bottom:0;
		width:70px;
		margin-bottom:20px;
	}
}
@media (min-width: 768px) {
	.info-item#access{
		width:400px;
	}
	.info-item#access .access h3.eng{
		font-size:1.4rem;
	}
	.info-item#access .access h3.jap{
		font-size:1.6rem;
	}
	.info-item#access .access#minute h3{
		font-size:8.0rem;
	}
	.info-item > h3{
		font-size:2.0rem;
	}
	.info-item > h3.sub{
		font-size:1.8rem;
	}
}
@media (min-width: 1024px) {
	.info-item{
		display:block;
		float:left;
		width:calc(100% - 430px);
		text-align:left;
		box-sizing:border-box;
		border-left:2px solid #333;
		padding-top:7px;
		padding-left:30px;
		padding-bottom:0;
	}
	.info-item#access{
		width:430px;
		border:none;
		padding-top:2px;
		padding-left:0;
		padding-right:30px;
	}
	.info-item > h3.sub{
		letter-spacing:-0.02em;
	}
	.info-item#access .access#minute{
		margin-bottom:0;
	}
}
@media (min-width: 1200px) {
	.info-item{
		width:calc(100% - 450px);
	}
	.info-item#access{
		width:450px;
	}
	.info-item#access .access h3.eng{
		font-size:1.5rem;
	}
	.info-item#access .access h3.jap{
		font-size:1.7rem;
	}
	.info-item > h3{
		font-size:2.1rem;
	}
	.info-item > h3.sub{
		font-size:1.9rem;
		letter-spacing:0;
	}
}

.headline h3{
	font-size:1.8rem;
	padding-top:0;
	padding-bottom:30px;
}
.headline h4{
	font-size:1.7rem;
}
.headline p{
	padding-top:15px;
}
@media (min-width: 568px) {
	.headline h3{
		padding-bottom:40px;
	}
	.headline p{
		padding-top:20px;
	}
}
@media (min-width: 768px) {
	.headline h3{
		font-size:1.9rem;
	}
	.headline h4{
		font-size:1.8rem;
	}
	.headline p{
		padding-top:25px;
	}
}
@media (min-width: 1024px) {
	.headline h3{
		font-size:2.0rem;
	}
	.headline h4{
		font-size:1.9rem;
	}
}
@media (min-width: 1200px) {
	.headline h3{
		font-size:2.1rem;
	}
	.headline h4{
		font-size:2.0rem;
	}
}

#spec-list{
	text-align:center;
	margin:30px 0 10px;
	padding:15px 0;
	border-top:2px solid #DDD;
	border-bottom:2px solid #DDD;
}
@media (min-width: 768px) {
	#spec-list{
		margin-bottom:0;
	}
}

#safety{
	text-align:center;
	border-bottom:2px solid #DDD;
	padding-top:25px;
	padding-bottom:30px;
}
#safety h3{
	font-size:1.8rem;
	padding-bottom:8px;
}
#safety p{
	font-size:1.4rem;
}
@media (min-width: 768px) {
	#safety{
		padding-top:30px;
	}
	#safety h3{
		font-size:1.9rem;
	}
}
@media (min-width: 1024px) {
	#safety h3{
		font-size:2.0rem;
	}
}
@media (min-width: 1200px) {
	#safety h3{
		font-size:2.1rem;
	}
}

#date h5{
	text-align:center;
	font-family:'Open Sans';
	font-weight:700;
	font-size:3.5rem;
	line-height:100%;
	letter-spacing:0.05em;
}
@media (min-width: 768px) {
	#date h5{
		font-size:3.6rem;
	}
}
@media (min-width: 1024px) {
	#date h5{
		font-size:3.7rem;
	}
}
@media (min-width: 1200px) {
	#date h5{
		font-size:3.8rem;
	}
}

#panel{
	display:grid;
	grid-template-columns:1fr;
	box-sizing:border-box;
}
.panel{
	position:relative;
	border:1px solid #DDD;
	border-bottom:none;
	width:100%;
	height:320px;
	padding:15% 20%;
	box-sizing:border-box;
}
.panel:nth-child(6){
	border-bottom:1px solid #DDD;
}
.thumnail-image{
	width:100%;
	height:100%;
	object-fit:contain;
	object-position:center center;
}
.panel h3{
	position:absolute;
	top:15px;
	left:0;
	width:100%;
	text-align:center;
	font-family:'Open Sans';
	font-weight:500;
	font-size:1.5rem;
	letter-spacing:0.1em;
}
.panel:hover{
	background:#000;
}
.panel:hover h3{
	color:#FFF;
}
.panel.dead:hover{
	background:#F9F9F9;
}
.panel.dead h3{
	color:#CCC;
}
.panel.dead:hover h3{
	color:#CCC;
}
@media (min-width: 375px) {
	.panel{
		height:375px;
	}
}
@media (min-width: 414px) {
	.panel{
		height:414px;
	}
}
@media (min-width: 568px) {
	#panel{
		grid-template-columns:1fr 1fr;
	}
	.panel{
		height:284px;
	}
	.panel:nth-child(odd){
		border-right:none;
	}
	.panel:nth-child(even){
		border-right:1px solid #DDD;
	}
	.panel:nth-child(5){
		border-bottom:1px solid #DDD;
	}
}
@media (min-width: 667px) {
	.panel{
		height:333.5px;
	}
}
@media (min-width: 736px) {
	.panel{
		height:368px;
	}
}
@media (min-width: 768px) {
	.panel{
		height:384px;
	}
}
@media (min-width: 812px) {
	.panel{
		height:406px;
	}
}
@media (min-width: 1024px) {
	#panel{
		grid-template-columns:1fr 1fr 1fr;
	}
	.panel{
		height:295px;
	}
	.panel:nth-child(even){
		border-right:none;
	}
	.panel:nth-child(4){
		border-bottom:1px solid #DDD;
	}
	.panel h3{
		font-size:1.7rem;
	}
}
@media (min-width: 1080px) {
	.panel{
		height:313px;
	}
}
@media (min-width: 1180px) {
	.panel{
		height:346px;
	}
}
@media (min-width: 1200px) {
	.panel{
		height:353px;
	}
}

footer{
	margin-top:60px;
}
@media (min-width: 1024px) {
	footer{
		margin-top:70px;
	}
}

.space375,.space568{
	display:none;
}
@media (min-width: 375px) {
	.space375{
		display:inline;
	}
}
@media (min-width: 568px) {
	.space568{
		display:inline;
	}
}