@charset "UTF-8";

#calendar {
	width: 100%;
	margin-bottom: 1.6rem;
	text-align: center;
	color: #ddd;
	box-sizing: border-box;
}

#calendar .calMonth {
	margin-bottom: 1rem;
	font-size: .875rem;
	line-height: 1em;
	letter-spacing: .1em;
	text-align: center;
}

#calendar table {
	width: 100%;
	box-sizing: border-box;
}
#calendar table th,
#calendar table td {
	width: 14%;
	padding: .1em 0;
	font-size: .75rem;
	text-align: center;
	box-sizing: border-box;
}
#calendar table th:first-child,
#calendar table th:last-child,
#calendar table td:first-child,
#calendar table td:last-child {
	width: 15%;
}
#calendar table th {
	border-top: solid 1px #0d702f;
	border-bottom: solid 1px #0d702f;
}

#calendar table tbody td {
	border-right: solid 1px #0d702f;
	border-bottom: solid 1px #0d702f;
}
#calendar table tbody td:first-child {
	border-left: solid 1px #0d702f;
}
/* 月送りメニュー */
#calendar table tfoot td {
	padding: .6rem 0 0;
}
#calendar table td.prev,
#calendar table td.next,
#calendar table td.current {
	cursor: pointer;
	text-decoration: underline;
}
#calendar table td.prev,
#calendar table td.next {
	display: table-cell;
	width: 100%;
}
#calendar table td.prev {
	text-align: left;
}
#calendar table td.next {
	text-align: right;
}
#calendar table td.prev:hover,
#calendar table td.next:hover,
#calendar table td.current:hover {
	text-decoration: none;
}

#calendar table td.prev:before {
	display: inline-block;
	padding-right: .4em;
}
#calendar table td.next:after {
	display: inline-block;
	padding-left: .4em;
}
#calendar table td.prev:hover:before {
	margin-left: -2px;
	margin-right: 2px;
}
#calendar table td.next:hover:after {
	margin-right: -2px;
	margin-left: 2px;
}
/* ホバーで表示するイベント一覧チップ */
.hold_event {
	position: relative;
	font-weight: bold;
	background-color: #0F8237;
	text-decoration: underline;
}
.hold_event:hover {
	text-decoration: none;
}
.event_data {
	display: none;
	width: 500px;
	position: absolute;
	left: 100%;
	top: -.7em;
	padding: 1em 1.6em;
	margin: 0;
	font-size: .875rem;
	text-align: left;
	font-weight: normal;
	color: #333;
	background: #fff;
	box-shadow: 0 0 3px 0 rgba(0,0,0,.5);
	box-sizing: border-box;
	z-index: 1;
}
.event_data:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	left: -10px;
	top: 1.4em;
	line-height: 0;
	border: solid 5px transparent;
	border-right: solid 5px #fff;
	z-index: 1;
}
.hold_event:hover .event_data {
	display: block;
	z-index: 100;
}
.event_data dt,
.event_data dd {
	padding: 0;
	margin: 0;
}
.event_data dt {
	margin-bottom: .6em;
	color: #0b6028;
	font-weight: bolder;
}
.event_data dd {
	padding: .4em 0;
	line-height: 1.6em;
	border-bottom: dotted 1px #C1C1C1;
}
.event_data dd:last-child {
	border-bottom: none;
}
/**/
.today {
	color: #ebde70;
	font-weight: bold;
}

@media (max-width: 800px){
	.event_data {
		width: 42vw;
	}
	tr td:nth-of-type(n+5) .event_data {
		left: auto;
		right: 100%;
	}
	tr td:nth-of-type(n+5) .event_data:before {
		left: auto;
		right: -10px;
		border: solid 5px transparent;
		border-left: solid 5px #fff;
	}
}





