@charset "utf-8";

/* 表示切り替えボタン */
.calendar_header {
	margin: 20px 0px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.calendar_select_type {
	text-align: left;
}
.calendar_select_type ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	gap: 15px;
}
.calendar_select_type ul li {
	display: inline-block;
	vertical-align: top;
	padding-right: 15px;
	border-right: 1px solid;
	line-height: 1.25;
}
.calendar_select_type ul li:last-child {
	padding-right: 0px;
	border-right: none;
}

.calendar_select_date {
	text-align: right;
}
.calendar_select_date form {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 5px;
}
.calendar_select_date span a {
	background: #f6f6f6;
	color: inherit;
	padding: 5px 20px;
	line-height: 2rem;
}

/* 表 */
#main_body table {
	width: 100%;
	border-width: 2px;
}
#main_body th {
	text-align: center;
}
#main_body td {
	vertical-align: top;
	padding: 5px;
}

.t_right {
	text-align: right;
}

.tbl_calendar1 {
	margin-bottom: 20px;
}
.tbl_calendar1 th.date {
	width: 23%;
}
.tbl_calendar1 th.title {
	width: 77%;
}

.tbl_calendar2 th.date {
	width: 8%;
}
.tbl_calendar2 th.date2 {
	width: 15%;
}
.tbl_calendar2 th.title {
	width: 57%;
}
.tbl_calendar2 th.title2 {
	width: 20%;
}

a[id^="day_"]:hover {
	color: inherit !important;
	text-decoration: none !important;
}

/* 表の設定いろいろ */
.calendar_style1 {}
.calendar_style2 {}
.calendar_style3 {}
.calendar_style4 {}
.calendar_style5 {
	background-color: #ffdde6;
}
.calendar_style6 {}
.calendar_style7 {}
.calendar_style8 {}
.calendar_style9 {}
.calendar_style10 {
	background-color: #ccddff;
}
.calendar_style11 {
	table-layout: fixed;
}
.calendar_style12 {}
#main_body .calendar_style12 td {
	height: 100px;
}
.calendar_style12 td div {
	font-size: 1.4rem;
	word-wrap: break-word;
	margin: 0px -3px;
	padding: 2px;
}
.calendar_style13 {
	height: 1.4em;
}
.calendar_style13 td ,
.calendar_style14 td {
	white-space: nowrap;
	overflow: hidden;
}
.calendar_style15 {
	margin-right: 10px;
}

/* カレンダー 行事背景色 */
.calendar_color1 {
	background-color: #f5f5f5;
	border: 1px solid #cccccc;
}
.calendar_color2 {
	background-color: #ffe6b3;
	border: 1px solid #ffcc99;
}
.calendar_color3 {
	background-color: #ffffbb;
	border: 1px solid #ffe0b0;
}
.calendar_color4 {
	background-color: #ddffb3;
	border: 1px solid #ccffb3;
}
.calendar_color5 {
	background-color: #ccffcc;
	border: 1px solid #99ff99;
}
.calendar_color6 {
	background-color: #ccffff;
	border: 1px solid #b3e6ff;
}
.calendar_color7 {
	background-color: #ccddff;
	border: 1px solid #99ccff;
}
.calendar_color8 {
	background-color: #ccccff;
	border: 1px solid #b3b3ff;
}
.calendar_color9 {
	background-color: #ffdde6;
	border: 1px solid #ffccb3;
}
.calendar_color10 {
	background-color: #ffcccc;
	border: 1px solid #ffb3b3;
}

/* ガントチャート */
.calendar_gant_style1 {
	table-layout: fixed;
}
#main_body .calendar_gant_style2 {
	border-bottom: 0px;
}
.calendar_gant_style3 {}
#main_body .calendar_gant_style4 {
	padding: 0px;
	border-top: 0px;
	border-bottom: 0px;
	/* 20130809 （コメント状態：はみ出た部分は改行して表示, コメント解除：はみ出た部分はGoogleカレンダーのように途切れて消える） */
	/* white-space: nowrap; */
	overflow-x: hidden;
}
#main_body .calendar_gant_style5 {
	margin: 1px 0px;
	padding: 2px;
	width: 100%;
	height: 100%;
	overflow-x: hidden;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.calendar_gant_style6 {}
#main_body .calendar_gant_style7 {
	padding: 0px;
	border-top: 0px;
	border-bottom: 0px;
	height: 15px;
}

/* 表ヘッダ：日付 */
th.cal_day {
	width: 4em;
}
/* 表ヘッダ：曜日 */
th.cal_week {
	width: 6em;
}
/* 表2ヘッダ：日付 */
th.cal2_day {
	width: 13em;
}

/* 表ヘッダ(曜日)背景色 */
.calendar_week_normal,
#main_body .calendar_week_normal {
}
.calendar_week_sat,
#main_body .calendar_week_sat {
	background-color: #ccddff;
}
.calendar_week_sun,
#main_body .calendar_week_sun {
	background-color: #ffdde6;
}

/* 曜日背景色 */
.cal_sun {
	color: #990000;
	background-color: #ffdde6;
}
.cal_mon,.cal_tue,.cal_wed,.cal_thu,.cal_fri {
	background-color: #f5f5f5;
}
.cal_sat {
	color: #000099;
	background-color: #ccddff;
}
.cal_hol {
	background-color: #ffdde6;
}
.cal_today {
	background-color: #ffff80;
}


/* ==================================================
スマートフォン
================================================== */
@media screen and (max-width: 1079px) {

	#main_body h2 {
		margin-bottom: 15px;
	}

	.calendar_header {
		display: block;
		width: auto;
		margin: 15px 10px;
	}
	.calendar_header > div {
		display: block;
	}

	.calendar_select_date {
		margin-top: 10px;
	}
	.calendar_select_date span a {
		font-size: 1.2rem;
		padding: 5px 10px;
	}

	#main_body th {
		font-size: 1.1rem;
		white-space: nowrap;
		padding: 10px 2px;
	}
	#main_body td {
		font-size: 1.2rem;
		padding: 10px 2px;
	}

	.tbl_calendar1 {
		margin-bottom: 10px;
	}

	.tbl_calendar2 th.date {
		min-width: 3em;
	}

	#main_body .calendar_style12 td {
		height: 50px;
		padding: 2px;
	}
	.calendar_style12 td div {
		padding: 2px 2px 0px 2px;
		margin: 1px -2px 1px -2px;
		font-size: 1.1rem;
	}

	#main_body .calendar_gant_style1 td {
		padding: 2px;
	}
	#main_body .calendar_gant_style5 {
		overflow-x: auto;
	}
	#main_body .calendar_gant_style7 {
		height: 0px;
		padding: 0px;
	}

}
/* ==================================================
スマートフォン ここまで
================================================== */