@charset "UTF-8";

*::after,
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body {
	/**color: #333;**/
	/**background: #EFECE5;**/
	font-size: 14px;
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
}

#wrap {
	padding: 0 5%;
}

.schedule_button{
	margin:2px 0;
}

@media screen and (max-width: 600px) {
	#wrap {
		padding: 0 5px;
	}

	.sp_pager{
	   display:none;
	}
}

/* ========================================
 * #mini-calendar
 * ========================================*/
 .sp_pager{
 	display:none;
 }

.calendar-year-month {
	text-align: center;
	font-size: 32px;
	margin-bottom: 20px;
	font-weight: bold;
}
table.reserve_calendar {
	width: 100%;
	border-spacing: 0;
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
	margin-bottom: 0;
	line-height: 1.5;
	border-collapse: separate;
}
table.reserve_calendar thead th,
table.reserve_calendar tbody td {
	background: #fff;
	padding: 7px;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
}
table.reserve_calendar thead th {
	color: #fff;
	background: #4F616B;
	vertical-align: top;
	padding-top: 7px;
	padding-bottom: 7px;
}

table.reserve_calendar tbody tr.next{
	display:none;
}

/*
table.reserve_calendar thead tr th.calendar-sun {
	color: #DF0D2D;
	background: #F8E4E4;
}
table.reserve_calendar thead tr th.calendar-sat {
	color: #2574D3;
	background: #E2F3FC;
}
*/
table.reserve_calendar tbody tr td {
	width: 14.3%;
	height: 100px;
	vertical-align: top;
}
table.reserve_calendar tbody tr td.holiday,
table.reserve_calendar tbody tr td.sun {
	color: #CE2727;
	background: #FCF3F3;
}
table.reserve_calendar tbody tr td.sat {
	color: #54AFC8;
	background: #F5FBFE;
}
table.reserve_calendar tbody tr td.other,
table.reserve_calendar tbody tr td.next{
	color:#CDCDCD;
}


/**table.reserve_calendar tbody tr td.calendar-day-number {
	font-style: normal;
	font-family: "Helvetica Neue", Arial, sans-serif;
	font-weight: bold;
	font-size: 16px;
	display: block;
	padding: 0 3px;
	line-height: 1.2;
}**/
i {
	font-style: normal;
	font-family: "Helvetica Neue", Arial, sans-serif;
	font-weight: bold;
	font-size: 16px;
	display: block;
	padding: 0 3px;
	line-height: 1.2;
}
table.reserve_calendar tbody tr td.holiday .day,
table.reserve_calendar tbody tr td.sun .day {
	color: #DF0D2D;
}
table.reserve_calendar tbody tr td.sat .day {
	color: #2574D3;
}
table.reserve_calendar tbody tr td span {
	font-size: 11px;
	line-height: 1.3;
	display: block;
}
[class*=calender-label] {
	font-size: 11px;
	line-height: 1.3;
	color: #000;
	background: #FCEBCF;
	border: solid 1px #D2AC8E;
	display: block;
	padding: 3px;
	margin-top: 3px;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	-o-border-radius: 4px;
	-ms-border-radius: 4px;
}

table.reserve_calendar tbody tr td.today {
	background: #FEFBDA;
}
object.show-month{
	display:none;
}

div.pager_button_area {
	display:none;
}

/** スマホで回転禁止 **/
#calendar{
	display:block;
}
#rotate{
	display:none;
	font-size:5vw;
	width:100%;
	height:auto;
	text-align:center;
	padding-top:80px;
}

@media screen and (max-width: 600px) {
	.pager{
		display:none;
	}
	.sp_pager{
		display:block;
	}
	table.reserve_calendar thead {
		display: none;
	}
	table.reserve_calendar thead tr th,
	table.reserve_calendar tbody tr td {
		display: block;
		width: 100%;
		min-height:56px !important;
		padding: 0;
	}
	table.reserve_calendar tbody tr td {
		height: auto;
		display: -webkit-flex;
		display: flex;
	}

	table.reserve_calendar tbody tr td.calendar-labels {
		padding: 5px;
	}
	[class*=calender-label] {
		display: inline-block;
		padding: 5px;
		margin-top: 0;
		margin-right: 5px;
		font-size: 12px;
	}

	table.reserve_calendar thead tr.before,
	table.reserve_calendar tbody tr.before{
		display:none;
	}
	table.reserve_calendar thead tr.next,
	table.reserve_calendar tbody tr.next{
		display:block;
	}
	table.reserve_calendar thead tr.empty,
	table.reserve_calendar tbody tr.empty{
		display:none;
	}

	/* 日付 */
	table.reserve_calendar tbody tr td .calendar-day-number {
		font-weight: normal;
		padding: 7px;
		font-size: 18px;
		display: block;
		background: #f2e6cd;
		margin-bottom: 0;
		width: 75px;
		height: auto;
	}
	table.reserve_calendar tbody tr td.before{
		display:none !important;
	}
	table.reserve_calendar tbody tr td.after{
		display:none !important;
	}
	table.reserve_calendar tbody tr td.next{
		color:#212529;
	}
	table.reserve_calendar tbody tr td.other{
		color:#212529;
	}
	table.reserve_calendar tbody tr td.empty{
		display:none !important;
	}
	table.reserve_calendar tbody tr td.holiday,
	table.reserve_calendar tbody tr td.sun{
		background: #f8c7c7 !important;
	}

	table.reserve_calendar tbody tr td.sat{
		background: #c8ebfe !important;
	}

	table.reserve_calendar tbody tr td.sun.next {
		color: #DF0D2D;
	}
	table.reserve_calendar tbody tr td.sat.next {
		color: #2574D3;
	}

	/* モバイル用曜日を追加 */
	table.reserve_calendar tbody tr td i:after {
		font-size: 12px;
		position: relative;
		left: -5px;
	}
	table.reserve_calendar tbody tr td:nth-child(1) i:after {
		content: "（日）";
	}
	table.reserve_calendar tbody tr td:nth-child(2) i:after {
		content: "（月）";
	}
	table.reserve_calendar tbody tr td:nth-child(3) i:after {
		content: "（火）";
	}
	table.reserve_calendar tbody tr td:nth-child(4) i:after {
		content: "（水）";
	}
	table.reserve_calendar tbody tr td:nth-child(5) i:after {
		content: "（木）";
	}
	table.reserve_calendar tbody tr td:nth-child(6) i:after {
		content: "（金）";
	}
	table.reserve_calendar tbody tr td:nth-child(7) i:after {
		content: "（土）";
	}

	table.reserve_calendar tbody tr td a.btn {
		margin:8px;
	}

	object.show-month{
		display:inline;
	}

	div.pager_button_area {
		display:block;
	}
}
