@charset "utf-8";

/* ========================================================================================================================/
	
	style.css

/======================================================================================================================== */

/* ------------------------------------------------------------------------------------------------------------------------/
	schedule
/------------------------------------------------------------------------------------------------------------------------ */

.schedule {
	width:100%;
	max-width:1100px;
	margin:0 auto;
	padding:50px 0 100px 0;
	}

	.schedule .description {
		width:100%;
		box-sizing:border-box;
		background:#ffffff url("../../image/layout/bg01.gif") left top repeat;
		margin:0 0 50px 0;
		padding:30px;
		}
		.schedule .description dl {
			float:left;
			width:calc((100% - 30px) / 2);
			margin:20px 30px 0 0;
			}
		.schedule .description dl:nth-of-type(2n) {
			margin:20px 0 0 0;
			}
		.schedule .description dl:nth-of-type(1),
		.schedule .description dl:nth-of-type(2) {
			margin-top:0 !important;
			}
			.schedule .description dl dt {
				position:relative;
				float:left;
				width:6em;
				text-align:left;
				}
			.schedule .description dl dt:after {
				content:"・・・";
				position:absolute;
				top:0;
				left:2em;
				display:block;
				width:3em;
				}
			.schedule .description dl dd {
				float:left;
				width:calc(100% - 6em);
				text-align:left;
				}

	.schedule .calendar_box {
		width:calc((100% - 30px) / 2);
		}
	.schedule .calendar_box.box0 { float:left; }
	.schedule .calendar_box.box1 { float:right; }

	.schedule .calendar_box .year_month {
		font-weight:bold;
		margin:0 0 20px 0;
		}
		.schedule .calendar_box .year_month .y {
			font-size:24px;
			}
		.schedule .calendar_box .year_month .m {
			font-size:30px;
			}

		.schedule .calendar_box table {
			width:100%;
			border-collapse:collapse;
			border:solid 2px #d0b596;
			}
			.schedule .calendar_box table th,
			.schedule .calendar_box table td {
				height:120px;
				text-align:center;
				border:solid 1px #d0b596;
				}
			.schedule .calendar_box table th {
				height:40px !important;
				line-height:110%;
				background:#f9d761;
				padding:9px 15px 5px 15px;
				}
			.schedule .calendar_box table td {
				background:#ffffff;
				}
			.schedule .calendar_box table td.space {
				vertical-align:middle;
				background:#f7f4ee;
				}
				.schedule .calendar_box table th span {
					display:block;
					font-size:13px;
					font-weight:normal;
					}
				.schedule .calendar_box table td .date {
					font-size:15px;
					font-weight:bold;
					vertical-align:top;
					background:#f6f2eb;
					}
				.schedule .calendar_box table td p {
					display:block;
					width:100%;
					font-size:12px !important;
					font-weight:bold;
					line-height:100%;
					box-sizing:border-box;
					border-top:dotted 1px #d0b596;
					border-bottom:dotted 1px #d0b596;
					margin:5px 0;
					padding:5px 0;
					}
				.schedule .calendar_box table td p:nth-of-type(1) {
					margin:0 0 5px 0;
					}
				.schedule .calendar_box table td span {
					display:block;
					font-size:15px;
					line-height:140%;
					}
					.schedule .calendar_box table td span:nth-of-type(1):before,
					.schedule .calendar_box table td span:nth-of-type(3):before {
						content:"AM";
						display:inline-block;
						width:2.5em;
						font-size:10px;
						text-align:left;
						}
					.schedule .calendar_box table td span:nth-of-type(2):before,
					.schedule .calendar_box table td span:nth-of-type(4):before {
						content:"PM";
						display:inline-block;
						width:2.5em;
						font-size:10px;
						text-align:left;
						}
