#cal table, #cal tbody, #cal tfoot, #cal thead, #cal tr, #cal th, #cal td {
	margin: 0;
	padding: 0;
	border: 1;
	vertical-align: baseline;
}

.right { text-align:right; }

#box_resType {
	position:relative;
	padding:0.5em;
	vertical-align:top;
}

#box_resType h2 {
    font-size:1.3em;
    font-weight:600;
    color:#cf2a0e;
}
#box_resType h3 {
    font-size:1.3em;
    font-weight:600;
}
.btn_bar_resType {
	text-align: center;
}

.btn_resType {
	display:inline-block;
	padding:0.3em;
	margin:0.15em;
	padding-top:1em;
	border:solid 1px #000;
	border-radius:1.1vw;
	min-height:8em;
	width:23em;
	cursor:pointer;
	background-color: #fff;
	/*text-align: center;*/
	vertical-align: top;
}
.btn_resType div { text-align:left; padding-left:1rem; }
.btn_resType:hover {
	background-color: #e6bc7b;
}
.btn_resType ul {
	/*display:inline-block;*/
	padding-left: 3em;
}
.btn_resType li {
	text-align:left;
}

.btn_resType li::before {
	width: 0.8em;
	height: 0.8em;
	content: '';
	background-image:url("../img/bullet_sq.png");
	background-size:cover;
	background-position:center;
	position:absolute;
	left:-1.6em;
	top:0.2em;
}

.btn_resType.selected {
	background-color:#e6bc7b;
	cursor: default;
}

#cal table {
	border-collapse: collapse;
	border-spacing: 0;
}

#cal {
	display:inline-block;
	min-height:31em;
	padding:0.5em;
}

.anchor {
	position:relative;
	top:-5em;
}

#calForm {
	position:relative;
	width:100%;
	text-align:center;
}

#calForm .mandatoryValue {
	font-size:0.7em;
	font-style:italic;
	display:inline-block;
}

#calCalendar {
	display:inline-block;
	position:relative;
	width:25em;
	text-align:center;
	padding:0.5em;
	vertical-align:top;
	height:33em;
}

#calCalendar table {
	text-align:center;
	border-spacing:1px;
}

#calCalendar th {
	font-size:1.2em;
	font-weight:bold;
	height:1.8em;
	padding-top:0.2em;
}

#calCalendar td {
	padding:0;
	margin:0.1em;
	vertical-align:top;

}

#calCalendar td.month {
	width:6em;
}

#calCalendar .info {
	text-align:left;
	vertical-align:top;
	font-size:0.7em;
	padding-top:1em;
}

#calCalendar .info li {
	margin-bottom:0.5em;
}

#calCalendar .hday {
	font-size:1em;
	border:solid 1px black;
	height:1.7em;
	vertical-align:middle;
	padding:0.2em;
}

#calCalendar .day {
	box-sizing: border-box;
	/*position: relative;*/
	width:2.1em;
	height:2em;
	border:solid 1px #000;
	vertical-align: middle;
	top:0;
	left:0;
	padding:0.1em;
}

#calCalendar .passed {
	color:#BBB;
	background:gray;
}

#calCalendar .passed.admin {
	cursor:pointer;
}

#calCalendar .today {
	color:white;
	background:black;
}

#calCalendar .today.admin {
	cursor:pointer;
}

#calCalendar .unavailable {
	color:white;
	background:red;
	cursor:default;
}

#calCalendar .available.odd, #calCalendar .month.odd {
	color:black;
	background:#AAFF55;
}

#calCalendar .available.even, #calCalendar .month.even {
	color:black;
	background:#44FF00;
}

#calCalendar .availpartial.odd {
	background: #FFDD00;
}

#calCalendar .availpartial.even {
	background: #FFAA00;
}

#calCalendar .day.selected,
#calCalendar .day.available:hover,
#calCalendar .day.available.admin:hover {
	cursor:pointer;
	box-shadow: 0 0 10px #000;
	font-weight:bold;
	z-index:100;
	background-color: #007ba4;
	color:#fff;
}

#calCalendar .day.selected {
	background-color:#0099FF;
	color:white;
}

#calYearUp, #calYearDown {
	display:inline-block;
	width:3em;
	cursor:pointer;
    color:#cf2a0e;
}

#calYearUp:hover, #calYearDown:hover {
	background-color:black;
	color:white;
}

#calMonthUp, #calMonthDown {
	display:inline-block;
	width:1.3em;
	cursor:pointer;
}

#calMonthUp:hover, #calMonthDown:hover {
	background-color:black;
	color:white;
}

#calTimeCell {
	display:inline-block;
	position:relative;
	width:12em;
	text-align:center;
	padding:0.5em;
	vertical-align:top;
	height:33em;
}

#calTimeCell table.timetable {
	border-collapse:collapse;
	font-size:0.9em;
}

#calTimeCell table.timetable td {
	text-align:center;
	padding:0.2em;
	vertical-align: middle;
}

#calTimeCell table.timetable .time {
	width:2.4em;
	height:2.4em;
	border:solid 1px #000;
}

#calTimeCell table.timetable .unavailable {
	background:red;
}

#calTimeCell table.timetable .available {
	background:#44FF00;
	cursor:pointer;
}

#calTimeCell table.timetable .admin {
	cursor:pointer;
}

#calTimeCell table.timetable .time.selected,
#calTimeCell table.timetable .time.available:hover,
#calTimeCell table.timetable .time.unavailable.admin:hover {
	box-shadow: 0px 0px 10px #000;
	background-color: #003f54;
	color:#fff;
}

#calTimeCell table.timetable .time.selected {
	background-color:#0099FF;
	color:white;
}

#calTimeCell table.timetable .unavailable.selected {
	background-color: #9e38d4;
	color:white;
}

/* new -------------------------- time - div */
#calTimeCell .timetable {
	border-collapse:collapse;
	font-size:1em;
	text-align:center;
	padding:0.2em;
	vertical-align: middle;
}
#calTimeCell .timetable .time {
	display:inline-block;
	width:3em;
	height:1.8em;
	border:solid 1px #000;
	padding-top:0.4em;
	margin:0.2em;
}
#calTimeCell .timetable .unavailable {
	background:red;
}
#calTimeCell .timetable .available {
	background:#44FF00;
	cursor:pointer;
}
#calTimeCell .timetable .admin {
	cursor:pointer;
}
#calTimeCell .timetable .time.selected,
#calTimeCell .timetable .time.available:hover,
#calTimeCell .timetable .time.unavailable.admin:hover {
	box-shadow: 0px 0px 10px #000;
	background-color: #003f54;
	color:#fff;
}

#calTimeCell .timetable .time.unavailable.break {
	background-color: gray;
	color:#fff;
	cursor: auto;
}

#calTimeCell .timetable .time.unavailable.break:hover {
	box-shadow: none;
	background-color: gray;
	color:#fff;}

#calTimeCell .timetable .time.selected {
	background-color:#0099FF;
	color:white;
}

#calTimeCell .timetable .unavailable.selected {
	background-color: #9e38d4;
	color:white;
}
/* new -------------------------- time - div */

#calFormCell {
	display:inline-block;
	position:relative;
	text-align:left;
	padding:0.5em;
	vertical-align:top;
	font-size:1em;
	min-height:30em;
/*	width:46em;*/
	width:92%;
}

#calFormContact {
	display:block;
}

.column2 {
	display:inline-block;
	vertical-align:top;
	width:46%;
	margin-right:3%;
}

#calForm label {
	display:block;
}

#calForm div.entry {
	padding:0.25em;
	margin-left:3%;
	width:96%;
	position:relative;
}

#calForm input[type="submit"] {
	width:6em;
}
#calFormNote {
	width:96%;
	height:5em;
}
#calFormName, #calFormEmail, #calFormPhone, #calFormReg, #calFormCar {
	width:96%;
}
#captcha_code {
	width:58%;
}
.smallText {
	font-size:0.8em;
}

#calFormSubmit, #calFormSubmit2
/*#calForm input:disabled:hover*/ {
	position:relative;
	font-size:0.9em;
	padding:5px;
	box-shadow:3px 3px 8px #000;
}
#calForm input:disabled {
	background-color:#ddd;
	border-color:#aaa;
}
#calFormSubmit:enabled:hover,
#calFormSubmit2:enabled:hover {
	background-color:#333;
	color:#fff;
	border:solid 1px #f4b300;
	box-shadow:3px 3px 8px #f4b300;
	cursor:pointer;
}

#calSelectedDT {
	text-align:center;
	font-weight:bold;
	margin-top:10px;
	font-size:16px;
}

#calForm div.info {
	text-align:justify;
	font-size:0.8em;
	padding:5px;
}

#calForm .error {
	color:red;
	font-size:0.8em;
}

#calForm .valid {
	color:#009900;
}

#calForm textarea {
	outline:none;
	border:solid 1px black;
}

#calForm input {
	padding:2px;
	outline:none;
	border:solid 1px black;
	color:#000;
	z-index:1;
}

#calForm input::placeholder {
	color: #ffaeb1;
}

#calForm input:focus, #calForm input:focus:hover {
	box-shadow:0 0 9px #f4b300;
	border:solid 1px #f4b300;
}

#calForm input:active:hover {
	box-shadow:0 0 8px #000;
}

.filled {
	background-color:white;
	color:black;
}

#dateTimetableForm {
	position:relative;
}

#calContainerMsg {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-color:rgba(0, 0, 0, 0.75);
	z-index:200;
}

#calMsgInfo, #calMsgError, #calMsgSuccess, #calMsgHint {
	position:relative;
	width:100%;
	top:40%;
	background-color:white;
	text-align:center;
	font-size:32px;
	color:#000;
	padding-top:30px;
	padding-bottom:30px;
	box-shadow:0 0 20px #000;
}

#calMsgError {
	background-color:#EE9999;
}

#calMsgSuccess {
	background-color:#99EE99;
}

#calMsgHint {
	font-size:1.5em;
	padding-top:0.8em;
	padding-bottom:0.8em;
	color:#AAA;
	top:42%;
}

#calCalendarLock, #calTimeCellLock, #calFormCellLock {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background-color:rgba(0, 0, 0, 0.85);
	border-radius:1.1vw;
	z-index:5;
	text-align:center;
}

#calTimeCellLock span, #calFormCellLock span, #calCalendarLock span {
	display:inline-block;
	font-size:1.3em;
	color:white;
	font-weight:bold;
	margin-top:5em;
}

.reminderSMS {
	background-color: #ff9999;
}
.reminderBox {
	border:dotted 1px #333;
	margin-top:0.5em;
	padding:0.7em;
	font-size:1em;
	margin-left:3%;
}
#calFormReminderBoxSMS, #calFormReminderBoxEmail {
	padding:0.5em;
}
#calFormReminderBoxSMS.disabled, #calFormReminderBoxEmail.disabled {
	background-color:#eee;
	color:#999;
}
#calEntryList {
	font-size:0.9em;
}

#calEntryList label {
	display:inline;
}

#calEntryList table {

}
#calEntryList th,
#calEntryList td {
	border:solid 1px black;
	padding:0.5em;
}
#calEntryList td input {
	text-align: center;
}

#calEntryList .passed {
	display:inline-block;
	width:10em;
	color:#999;
}

#calEntryList .upcoming {
	color:#000;
	display:inline-block;
	width:12em;
	margin:0.2em;
	margin-right:0.1em;
	padding:0.2em;
	border:1px solid black;
}

#calEntryList .odd {
	background-color:#c36724;
}

#calEntryList .even {
	background-color:#f4b300;
}

#calForm h1,
#calForm h2,
#calForm h3 {
	font-weight: 700;
	color: #1976D2;
}

#calForm h3 {
	margin-top:0.3em;
	margin-bottom:0.2em;
	margin-left:0;
	margin-right:0;
	border-bottom: 1px solid black;
}

.gdprDetail {
	display: none;
}
.gdprBtn {
	padding: 0.3em;
	background-color: #c38d81;
	cursor: pointer;
	border: solid 1px #000;
	border-radius: 0.7em;
	text-align: center;
	font-weight: bold;
}
.gdprBtn:hover {
	background-color: #FFF;
}
/* --------------  old entry list -------------- */
/*
#calForm input[type="text"] {
	width:95%;
}

#calForm .iDate {
	width:5em;
}

#calForm .iTime {
	width:3em;
}

#calForm .iCarID {
	width:4em;
	font-weight:700;
}

#calForm .entry {
}

#calForm .iName, #calForm .iEmail, #calForm .iPhone {
	width:100%;
	white-space: normal;
}

#calForm .iNote {
	white-space: normal;
}

#calForm .iNote textarea {
	width:95%;
	height:9em;
}

#calForm .iSubmitBtn {
	font-weight: 700;
	text-align: center;
	position:relative;
	font-size:0.9em;
	padding:5px;
	margin:1px;
	border:solid 1px #000;
	box-shadow:3px 3px 8px #000;
  }

#calForm .iSubmitBtn:hover {
	border:solid 1px #d48039;
	box-shadow:3px 3px 8px #d48039;
	cursor:pointer;
}
*/

@media screen and (max-width:480px) {
	#calCalendar {
		display:block;
		width:96%;
	}
	#calTimeCell {
		height:auto;
	}
	#calFormCell {
		height:auto;
		width:96%;
	}
	.column2 {
		display:block;
		width: 96%;
	}
}