table.calendar {
	border-collapse: collapse;
	border-spacing: 0px;
	width: 100%;
	border: 5px solid #ccc;
}
table.calendar tbody td {
	background-color: #eee;
	padding: 10px 5px;
	border-right: 1px solid #ccc;
	font-size: 10px;
}
table.calendar tbody tr:nth-child(even) td {
    background-color: #fff;
}
table.calendar th {
	width: 16%;
	text-align: center;
	padding: 10px;
	border-right: 1px solid #ccc;
}
table.calendar th.today {
	background-color: rgba(218,90,143,0.3);
}
table.calendar th:nth-last-child(1) {
	width: 30px !important;
	color: #f40;
}
table.calendar th.hours {
	width: 25px;
}
table.calendar th span {
	display: block;
}
table.calendar th span.dayNum {
	font-size: 40px;
	text-align: center;
}
table.calendar th span.dayMonth {
	font-size: 12px;
	text-transform: capitalize;
	text-align: center;
}
table.calendar th span.dayName {
	font-size: 15px;
	color: #ff4400;
	text-transform: capitalize;
	text-align: left;
}
table.calendar td.hours {
	font-size: 11px;
	text-align: center;
	font-weight: 800;
}

@media only screen and (max-width: 600px) {
	table.calendar tbody td {
		display: block;
		width: 100%;
		box-sizing: border-box;
		padding: 0;
		text-align: center;
		line-height: 16px;
	}
	table.calendar thead th {
		display: none;
	}
	table.calendar thead th.today {
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
	table.calendar th span.dayName {
		text-align: center;
	}
}