@charset "UTF-8";

/* レフトナビ */
#leftnavi{
	display:block;
	width:100%;
	background-color: rgba(255,255,255,0.5);
	margin:0 0 10px 0;
	list-style-type: none;
	line-height:1.2;
	clear:both;
	font-size:90%;
	box-sizing: border-box;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
}
#leftnavi .browsenode {
	margin:0;
	padding:5px;
}
#leftnavi .browsenode dt{
	color: #000000;
	border-left: 4px solid #ff9900;
	margin: 4px 0;
	padding:0;
	padding-left: 10px;
	padding-right: 32px;
	font-size:100%;
	box-sizing: border-box;
	position: relative;
	top: 0;
	left: 0;
	transition: 0.2s;
}
#leftnavi .browsenode dt:hover {
	border-color: #ff9900;
	background-color: rgba(255,255,255,0.75);
	color: #ff9900;
}
#leftnavi .browsenode dt a{
	font-weight:bold;
	color:#ee7711;
	pointer-events: auto;
}
#leftnavi .browsenode dt a:hover{
	font-weight:bold;
	color:#ee7711;
}
#leftnavi .browsenode dt a:before{
	content:"<";
	font-weight: bold;
	color: #cccccc;
	margin-right: 4px;
	margin-left: 4px;
}
#leftnavi .browsenode dt.closed:before,
#leftnavi .browsenode dt.opened:before,
#leftnavi .browsenode dt.link:before {
	display: block;
	width: 32px;
	height: 32px;
	box-sizing: border-box;
	border-radius: 16px;
	color: #999999;
	font-size: 20px;
	line-height: 32px;
	text-align: center;
	position: absolute;
	right: 0px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	transition: all 0.25s ease-out;
}
#leftnavi .browsenode dt.opened:before {
	content: ">";
	transform: translateY(-50%) rotate( -90deg );
	font-size: 80%;
}
#leftnavi .browsenode dt.closed:before {
	content: ">";
	transform: translateY(-50%) rotate( 90deg );
	font-size: 80%;
}
#leftnavi .browsenode dd{
	margin: 0;
	margin-bottom: 10px;
}
#leftnavi .browsenode dd.closed {
	display:none;
}
#leftnavi .browsenode dd ul{
	list-style-type: none;
	padding: 0;
	margin: 0;
}
#leftnavi .browsenode dd ul li{
	margin-left:0;
	color:#0077d2;
	border: 1px solid rgba(128,128,128,0);
	box-sizing: border-box;
	border-radius: 12px;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
	transition: 0.2s;
}
#leftnavi .browsenode dd ul li:hover{
	border-color: #ff9900;
}
#leftnavi .browsenode li a{
	display: block;
	width: 100%;
	padding: 3px 6px;
	text-decoration: none;
	transition: 0.2s;
}
#leftnavi .browsenode dd ul li a:link{
	border:none;
	text-decoration:none;
	color:#0077d2;
}
#leftnavi .browsenode dd ul li a:active{
	border:none;
	text-decoration:none;
	color:#F00;
}
#leftnavi .browsenode dd ul li a:visited{
	border:none;
	text-decoration:none;
	color:#0077d2;
}
#leftnavi .browsenode dd ul li a:hover{
	border:none;
	color:#F60;
}
#leftnavi .browsenode dd ul li.select{
	background-color: #ffbb66;
}
#leftnavi .browsenode dd ul li.select a{
	color: #ffffff;
}
#leftnavi .browsenode dd ul li.space {
	height: 10px;
	pointer-events: none;
}
/* レフトナビ：ヘッダー：ご利用案内 */
#leftnavi_header{
}
#leftnavi_header .howto{
	min-height: 66px;
	width: 100%;
	padding: 0;
	margin-top: 0;
	margin-bottom: 10px;
	margin-left: 0;
	margin-right: 10px;
	display: block;
}
#leftnavi_header .howto img{
	width: 100%;
	max-width: 400px;
	padding: 8px;
	margin: auto;
	display: block;
	box-sizing: border-box;
}

/* レフトナビ：フッター */
.leftmenu_footer {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-evenly;
}
.leftmenu_footer div {
	margin: 4px auto;
}


/* カレンダー：インナー */
.calendar_inner {
	background-color: rgba(255,255,255,0.5);
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	padding: 6px;
	box-sizing: border-box;
}
/* カレンダー：見出し */
.calendar_header {
	width: 100%;
	color: #FFF;
	font-size: 80%;
	font-weight: bold;
	text-align: center;
	margin: 0;
	padding-top: 4px;
	padding-bottom: 4px;
	clear: both;
	background: linear-gradient(to right,#ff9900, #ffcc44);
	border-radius: 6px 6px 0px 0px;
	-webkit-border-radius: 6px 6px 0px 0px;
	-moz-border-radius: 6px 6px 0px 0px;
}
/* カレンダー：枠 */
.calendar_table{
	width: 100%;
	color: #666;
	font-size: 80%;
	line-height: 130%;
	margin-bottom: 20px;
	padding:2px;
}
/* 見出し */
.calendar_table caption{
	font-size: 100%;
	font-weight: bold;
	margin: 4px 0px;
}
/* カレンダー：日付の色：赤（休日・祝日） */
.calendar_sunday {
	background-color: #F4E1E1;
	color: #B50B0B;
	text-align: right;
	font-size: 80%;
	padding: 3px;
}
/* カレンダー：日付の色：黒（平日・土曜） */
.calendar_weekday,
.calendar_saturday {
	padding: 3px;
	text-align: right;
	font-size: 80%;
	background-color: #FFF;
}


/* カレンダー：曜日の色：日曜日 */
.calendar_sun {
	color: #B50B0B;
	background-color: #F4E1E1;
	text-align: center;
	padding: 3px;
	font-weight: bold;
	font-size: 80%;
}
/* カレンダー：曜日の色：平日・土曜 */
.calendar_no,
.calendar_sut {
	color: #333;
	background-color: #E8E8E8;
	font-size: 80%;
	padding: 3px;
	text-align: center;
	font-weight: bold;
}
/* カレンダー：注意 */
.calendar_notice {
	font-size: 80%;
	color: #666;
	line-height: 125%;
	padding:4px;
	border:none;
	background-color:transparent;
	text-align: left;
}
.calendar_notice_sunday {
  display: block;
  color: red;
}

.calendar_notice_sunday::before {
  content: "■";
}
