@charset "utf-8";

/*----------------------------------------------------*/ 
/* fontControl
------------------------------------------------------*/ 

#contents.large_text .information_list,
#contents.large_text .schedule_list {
	font-size:115%;
}

@media only screen and (max-width: 767px) {
#contents.large_text .information_list,
#contents.large_text .schedule_list {
	font-size:100%;
}

}

/*----------------------------------------------------*/ 
/* /index.html
------------------------------------------------------*/ 

body,
#footer {
	background:#FFF;
}

/*----------------------------------------------------*/ 
/* carousel
------------------------------------------------------*/ 

#top_vi {
	margin:0 auto;
	margin-bottom:0px;
	position:relative;
	width:1280px;
}

#top_vi .carousel li {
	float:left;
	position:relative;
}

#top_vi .carousel li img {
	width:100%;
	height:auto;
}

#top_vi .carousel li .title {
	color:#FFF;
	font-size:165%;
	position:absolute;
	left:15%;
	top:40%;
	text-shadow: 0 0 8px #000;
}

#top_vi .dots {
	text-align:center;
	width:100%;
	margin-top:15px;
}

#top_vi .slick-dots {
	height:11px;
}

#top_vi .slick-dots li,
#top_vi .slick-dots li button,
#top_vi .slick-dots li button:before {
	width:11px;
	height:11px;
}

#top_vi .slick-dots li {	margin:0 7px;}
#top_vi .slick-dots li button:before {
	background:url(/lib/image/cmn/icon_csl-pager.png) no-repeat;
}
#top_vi .slick-dots li.slick-active button:before {
	background-image:url(/lib/image/cmn/icon_csl-pager-on.png);
}

@media only screen and (max-width: 1280px) {

	#top_vi {
		width:auto;
	}

	#top_vi img {		width:100%;	}


}

@media only screen and (max-width: 767px) {
#top_vi .carousel li .title {
	font-size:21px;
	width:100%;
	left:5%;
	top:50%;
	margin-top:-1em;
	text-shadow: 2px 2px 6px #000;
}

#top_vi .carousel li .leadTitle {
	width:100%;
	padding:10px 20px;
	box-sizing:border-box;
	background:#407EC9;
	color:#FFF;
	bottom:0;
	left:0;
	margin:0;
}

#top_vi .carousel li .leadTitle dt {
	font-size:21px;
}

#top_vi .carousel li .leadTitle dd {
	font-size:18px;
}

}

/*----------------------------------------------------*/ 
/* contents component
------------------------------------------------------*/ 

#contents h2 {
	border-bottom:1px solid #cfcfcf;
	font-size:158%;
	font-weight:normal;
	padding-bottom:5px;
	margin-bottom:15px;
	font-family: "I-OTF-UDゴ表示Pro M";
}

@media only screen and (max-width: 767px) {
#contents h2 {
	font-size:143%;
}

}

/*----------------------------------------------------*/ 
/* information
------------------------------------------------------*/ 

#contents .information {
	position:relative;
}

#contents .information .indexLink {
	position:absolute;
	top:10px;
	right:0;
}

#contents .information .indexLink a {
	color:#000;
	text-decoration:none;
}

#contents .information_list {
	height:9.5em;
	overflow-y:scroll;
	overflow-x:hidden;
}


#contents .information_list li {
	margin-bottom:5px;
}

#contents .information_list li span,
#contents .information_list li a {
	display:table-cell;
	vertical-align:top;
} 

#contents .information_list li span {
	padding-right:1em;
	white-space: nowrap;
}




@media only screen and (max-width: 767px) {
#contents .information_list {
	height:auto;
	max-height:20em;
	overflow-y:auto;
	overflow-x:hidden;
}

#contents .information_list li {
	margin-bottom:10px;
}


#contents .information_list li span,
#contents .information_list li a {
	display:block;
	line-height:1.4;
}



}



/*----------------------------------------------------*/ 
/* schedule
------------------------------------------------------*/ 

#contents .schedule {
	margin-bottom:40px;
}

#contents .schedule_list li {
	margin-bottom:5px;
}

#contents .schedule_list li time {
	width:9em;
	padding-right:1em;
}

#contents .schedule_list li span,
#contents .schedule_list li time {
	display:table-cell;
	vertical-align:top;
} 

@media only screen and (max-width: 767px) {
#contents .schedule_list {
	max-height:12em;
	overflow-y:auto;
	overflow-x:hidden;
}

#contents .schedule_list li {
	border-bottom:1px solid #EEE;
	padding-bottom:5px;
}

#contents .schedule_list li span,
#contents .schedule_list li time {
	display:block;
}

}

/*----------------------------------------------------*/ 
/* category
------------------------------------------------------*/ 

#contents .category {
}

#contents .category_link {
	overflow:hidden;
	width:740px;
	margin:0 -40px 0 0;
}

#contents .category_link li {
	width:330px;
	float:left;
	margin:0 40px 30px 0;
	font-size:143%;
	font-family: "I-OTF-UDゴ表示Pro M";
}

#contents .category_link li a {
	display:block;
	position:relative;
	margin:12px 0 0 0;
	font-family: "I-OTF-UDゴ本文Pro R";
}

#contents .category_link li a img {
	z-index:0;
}

#contents .category_link li a span {
	display:block;
	font-size:79%;
	top:53%;
	left:0;
	text-align:center;
	margin-top:-1em;
	color:#FFF;
	position:absolute;
	width:100%;
	z-index:10;
	text-shadow:0 0 15px #000,0 0 15px #000,0 0 15px #000;
	font-family: "I-OTF-UDゴ本文Pro R";
}

#contents .category_link li:last-child a span {
	margin-top:-2em;
}

#contents .category_link li img {
	width:100%;
}

@media only screen and (max-width: 767px) {
#contents .category_link {
	width:100%;
}

#contents .category_link li {
	width:100%;
	float:none;
	margin:0 40px 30px 0;
	font-size:143%;
	line-height:1.2;
}

}


/*----------------------------------------------------*/ 
/* snsTL
------------------------------------------------------*/ 

#side .snsTL {
	margin-bottom:20px;
}

@media only screen and (max-width: 767px) {
#side .snsTL {
	display:none;
}

}

/*----------------------------------------------------*/ 
/* bnr
------------------------------------------------------*/ 

#side .bnr li { margin-bottom:10px; }

@media only screen and (max-width: 767px) {
#side .bnr li {	text-align:center;}
#side .bnr li img { max-width:100%; }

}
