@charset "utf-8";

/*************************************/
/* トップページ */
/*************************************/
div#contentsTop{
	position:relative;
	margin:0 auto;
	min-width:320px;
	width:100%;
	min-width:960px;
	overflow:hidden;
}

/*************************************/
/* カルーセルパネル */
/*************************************/
div#topImg{
	width:962px;
	margin:0 auto;
	margin-top:10px;
	position:relative;
	overflow:hidden;
}
div#topImg img.on{
	position:absolute;
	top:0px;
	left:0px;
}
div#topImg img{
	margin:1px;
}
div#topImg img:hover{
	opacity:1;
	margin:0px;
	border:1px solid #338DC9;
}
div#topImgMenu{
	text-align:center;
	padding:10px 0;
}
div#topImgMenu a{
	display:inline-block;
	height:18px;
	width:18px;
	border-radius:10px;
	background:#ddd;
	margin:0 5px;
}
div#topImgMenu a:hover{
	background:#ceda00;
}
div#topImgMenu a.now{
	background:#222;
}

div#topImgMenu img{
	margin:0 5px;
}
div#topImgMenu img:hover{
	cursor:pointer;
}
/*************************************/
/* スケジュール */
/*************************************/
div#topSchedule{
	background:#87F4D7;
	padding:5px 0px;
	text-align:center;
	position:relative;
}
div#topSchedule h2{
	position:absolute;
	top:10px;
	left:20px;
	color:#222;
	font-size:100%;
	font-weight:bold;
	margin:0;
	padding:0;
	border-bottom:none;
}
div#topSchedule span{
	font-size:110%;
	font-weight:bold;
}
div#leftSchedule,
div#rightSchedule{
	position:relative;
	width:400px;
	float:left;
	background:rgba(28,28,28,0.9);
	margin-top:15px;
	padding:20px 30px;
}
div#rightSchedule{
	float:right;
}
span.monthSchedule{
	color:#fff;
	font-size:50px;
	font-weight:bold;
	line-height:1;
}
span.yearSchedule{
	color:#fff;
	position:absolute;
	top:17px;
	left:100px;
}
/*************************************/
/* 日付カレンダー */
/*************************************/
table.calendar{
	border-collapse:separate;
	border-spacing:8px;
	font-size:12px;
	background:none;
	margin-top:0px;
}
table.calendar th{
	background:none;
	height:20px;
	border:none;
	color:#fff;
	border:none;
	font-weight:normal;
}
table.calendar td{
	font-size:12px;
	background:#fff;
	border:none;
	border-radius:50px;
	text-align:center;
	font-weight:normal;
	padding:3px 2px 8px 2px;
	box-shadow:inset 0px -15px 20px -12px rgba(0,0,0,0.08), inset 0px 15px 20px -12px rgba(255,255,255,0.08);
	vertical-align:top;
	width:45px;
	height:37px;
	line-height:1.4;
}
table.calendar td.holiday{
	background:#e21312;
	color:#fff;
}
table.calendar td.emptyday{
	background:none;
	box-shadow:none;
}
span.holiday{
	position:absolute;
	top:10px;
	right:10px;
	color:#fff;
	background:#e21312;
	display:inline-block;
	border-radius:50px;
	font-size:11px;
	height:35px;
	width:50px;
	padding:15px 0 0 0;
	text-align:center;
}
span.today,
span.calendarCaution{
	color:#e21312;
}
/*************************************/
/* TOP3連カラム */
/*************************************/
div#topCol3Wrap{
	padding:20px 0;
	clear:both;
}
div.topCol3, div.topCol3Last{
	background:rgba(28,28,28,0.9);
	width:300px;
	padding:0px;
	float:left;
	margin-right:20px;
}
div.topCol3Last{
	margin-right:0;
}
div.topCol3 h2{
	border-bottom:0px;
	padding:0px;
	color:#fff;
	font-weight:bold;
	font-size:120%;
	padding:0px;
	margin:0px 0px 15px 0px;
}
ul#topBlog, ul#topInfo{
	list-style-type:none;
	margin-left:0;
	padding-left:0;
}
ul#topBlog li, ul#topInfo li{
	color:#fff;
}
div#topInfoCol{
	color:#fff;
	margin-bottom:20px;
}
div.topCol3Inner{
	padding:15px 20px 40px 20px;
}
