@charset 'UTF-8';

[id ^= "calendar"] {
  display: flex;
  flex-wrap: wrap;
	justify-content: space-between;
}

h3 {
	background: #444;
	color: #fff;
  font-size: 1.6rem;
	margin-bottom: 0;
	padding: 10px 0;
	text-align: center;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}

td {
	color: #333;
  padding: 5px;
  text-align: center;
  height: 35px;
	width: 35px;
}

td:first-child {
  color: #EF6278;
	font-weight: bold;
}

td:last-child {
  color: #2699FB;
	font-weight: bold;
}

td.hol {
  color: #EF6278;
	font-weight: bold;
}

tbody > tr:first-child td {
	background: #fff;
	color: #888;
	font-size: 1.1rem;
	height: auto;
	padding: 5px 0;
}

.section-business-calendar {
	padding: 0 30px;
}

.btn-calendar {
	margin: 0 15px;
	text-align: right;
}

.btn-calendar input,
.btn-calendar input:focus {
	background: #333;
	border: none;
	border-radius: 20px;
	color: #fff;
	font-size: 1.3rem;
	outline: none;
	padding: 10px 30px;
}

#calendar {
	margin: 0;
}

#calendar > section {
	width: 100%;
}

#calendar > section > div > section {
	background: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.08);
	margin: 30px 15px;
}

.calendar-description {
    margin: 0 15px;
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	.section-business-calendar {
    padding: 0;
	}
	#calendar > section > div > section {
		margin: 30px 10px;
		width: 30%;
	}
	table {
		width: 100%;
	}
	td {
    width: calc(100% / 7);
	}
}

@media screen and (max-width: 767px) {
	.section-business-calendar {
		padding: 0;
	}
	#calendar > section > div > section {
		margin: 30px auto;
	}
}
