div.calendar {
	margin-bottom: 15px;
	border-right-width: 1px;
	border-bottom-width: 1px;
	border-left-width: 1px;
	border-right-style: solid;
	border-bottom-style: solid;
	border-left-style: solid;
	border-right-color: #DDD;
	border-bottom-color: #DDD;
	border-left-color: #DDD;
}
h5#calendar, h5#calendarSide {
	font-size: 14px;
	text-align: center;
	margin: 0 !important;
	color: #FFF;
	background-color: #cd668f !important;
	font-weight: bold;
	background-image: none !important;
	border: none;
	letter-spacing: 1px;
	line-height: 24px;
	height: 24px;
	vertical-align: middle;
	padding-top: 2px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
}
.cal_wrapper {
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 5px;
	padding-left: 0px;
	margin:0 5px 0 5px;

}
.schedule_wrapper {
	padding-right: 0px;
	padding-bottom: 3px;
	padding-left: 0px;

}
.schedule_wrapper h3 {
	padding: 0px 5px;
	font-weight: normal;
	margin: 0px;
	font-size: 12px;
	color: #666;
}
.schedule_wrapper div.schedule_list {
	padding: 2px 5px 8px 5px;
	margin: 5px 5px 5px 5px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #E9EEE8;
}
.schedule_wrapper div.schedule_list ol {
	padding: 0px;
	margin: 5px auto;
}
.schedule_wrapper .schedule_list ol li {
	padding: 0px 10px 0px 0px;
	margin: 0px !important;
	font-size: 11px !important;
	list-style-type: none;
	color: #727171;
	line-height: 1 !important;
}

.schedule_wrapper .schedule_list ol span.business {
	padding: 0px;
	margin: 0px !important;
	font-size: 11px !important;
	list-style-type: none;
	color: #cd668f;
	line-height: 1 !important;
}
.schedule_wrapper div.schedule_list ol li:hover {
	text-decoration: underline;
}

.schedule_wrapper .schedule_list ol span.business:hover {
	color: #cd668f;
	text-decoration: underline;
}

.cal_wrapper table.cal {
	width: 100%;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #E9EEE8;
	margin: 0;
}

/*月*/
.cal_wrapper table.cal tr th {
	padding: 8px 0 4px 0 !important;
}
.cal_wrapper table.cal tr th p {
	float: left;
	padding: 0px !important;
	margin: 0 !important;
	font-size: 13px;
	font-weight: bold;
}

/*先月-来月*/
.cal_wrapper table.cal tr th div.cal_ui {
	float: right;
	margin:0 -3px 0 0;
	padding:0 !important;
}
.cal_wrapper table.cal tr th div.cal_ui input {
	border: none;
	background-color: #FFF;
	font-size: 11px;
	margin-top: -6px;
	margin-right: 4px;
	margin-bottom: 0px !important;
	margin-left: 4px;
	padding-top: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
	padding-left: 0px;
	color: #115b9c;
}

.cal_wrapper table.cal tr th div.cal_ui input[type="button"] {
   -webkit-appearance: none !important;
   border-radius: 0 !important;
}

.cal_wrapper table.cal tr th div.cal_ui input:hover {
	text-decoration: underline;
	color: #cd668f;
}

.cal_wrapper table.cal tr td {
	border-top: solid 1px #E9EEE8;
}
.cal_wrapper table.cal tr td {
	text-align: center;
	padding: 2px 2px !important;
}

/*曜日*/
.cal_wrapper table.cal tr.headline td {
	padding: 2px 0 1px 0 !important;
	color: #555;
	font-size: 13px;
	border-bottom-width: 2px;
	border-bottom-style: solid;
	border-bottom-color: #FFF;
}
div.cal_wrapper table.cal tr.headline {
	background-color: #fdf7f9;
}
.cal_wrapper table.cal tr td div {
	position: relative;
	padding:3px 2px 1px 2px !important;
	margin:0 1px!important;
	font-size: 11px;
	text-align: center;
	background-color: #FFF;
}
.cal_wrapper table.cal tr td div > span {
	display: none;
	position: absolute;
	top: 10px;
	left: 0px;
	border: solid 1px #EEE;
	background-color: #FFF;
	text-align: left;
	padding: 0 3px;
	z-index: 10;
	color: #000;
	font-weight: normal;
	line-height: 1.5em;
	box-shadow: 1px 1px 3px #666;
	white-space: nowrap;
}

/* 以下、クラス指定 */
div.cal_wrapper table.cal tr td div {
    color: #555;
}
div.cal_wrapper table.cal tr td div.BusinessDay {
	background-color: #cd668f !important;
	border-radius: 3px;
	color: #FFF !important;
}

div.cal_wrapper table.cal tr td div.Sat {
	color: #666;
	background-color: #E0E0E0;
	border-radius: 3px;
}
div.cal_wrapper table.cal tr td div.Sun {
	color: #666;
	background-color: #E0E0E0;
	border-radius: 3px;
}

div.cal_wrapper table.cal tr td div.Today {
	font-weight: bold;
	color: #115b9c;
}
div.cal_wrapper table.cal tr td div.Deli {
	background-color: #EFE;
}
div.cal_wrapper table.cal tr td div.Holyday {
	color: #555;
	background-color: #E0E0E0;
	border-radius: 3px;
    font-weight: normal !important;
}
div.cal_wrapper table.cal tr td div.nationalHolyday {
	color: #EC6D51 !important;
	background-color: #E0E0E0;
	border-radius: 3px;
    font-weight: bold;
}
div.cal_wrapper table.cal tr td div.backward {
	color: #DDD !important;
	font-weight: normal !important;
	background-color: #FFF !important;
	border-radius: 3px;
}
div.cal_wrapper table.cal tr td div.pointer {
	cursor: pointer;
}
div.cal_wrapper table.cal tr td div.pointer:hover {
	background-color: #FFE8E8;
}

span.business {
	border-radius: 3px;
	padding: 0;
	margin:0 !important;
	line-height:1 !important;
}

.calendar p,.calendar span,.calendar br {
	line-height:1.4em;
	color: #666;
}

.calendar p {
	font-size: 12px;
	margin: 0 5px 10px 10px;
}
.calendar p span {
   font-size: 11px;
}

.square_holiday {
	display: inline-block;
	width: 17px;
	height: 15px;
	background: #DADADA;
	border-radius: 3px;
	margin-right: 2px;
	vertical-align: middle;
	margin-bottom: 2px;
}
.square_biz {
	display: inline-block;
	width: 17px;
	height: 15px;
	background: #cd668f;
	border-radius: 3px;
	margin-right: 2px;
	vertical-align: middle;
	margin-bottom: 2px;
}