*[data-hidden="true"] {
	display: none;
}

/* フォーム */
#mainContent form.modal {
	position: fixed;
	top: 0;
	left: 0;
	display: flex;
	flex-direction: column;
	min-width: 100vw;
	min-height: 100vh;
	background-color: currentColor;
	overflow: auto;
	z-index: 800;
}

#mainContent form.modal[data-hidden="true"] {
	display: none;
	z-index: -1;
}

.form_inner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	min-width: 80vh;
	min-height: 80vh;
	margin: 0 auto;
	padding: 32px;
	border-radius: 32px;
	background-color: var(--color-white-offwhite);
	overflow: scroll;
}

.form_item {
	margin-bottom: 16px;
}

#formDateDisplay {
	font-size: var(--font-size-xxxl);
}

#submitBtn {
	width: 70%;
	height: 80px;
	margin: 0 auto;
	background-color: var(--color-published);
}

/* 全体 */
.calendar_header {
	margin-top: 40px;
}

.link,
.link span {
	text-decoration: underline;
}

.link span {
	font-size: var(--font-size-xs);
	color: #737373;
}

/* カレンダー */
#calendarArticle.calendar {
	width: 800px;
	max-width: 90%;
	margin: 0 auto;
	padding: 16px 32px;
	background-color: var(--color-white-offwhite);
	border-radius: 32px;
}

.calendar_list {
	margin-top: 40px;
}

/* 一ヶ月単位 */
.month {
	margin-bottom: 32px;
}

.month_header {
	display: flex;
	flex-direction: row;
}

.month_header svg {
	display: block;
	margin: auto 8px;
}

/* 一日単位 */
.day {
	display: flex;
	flex-direction: row;
	padding: 8px 1rem 0 1rem;
	border-bottom: 1px solid var(--color-gray-subtle);
}

.day[data-sat="true"] .date_label span {
	font-weight: 400;
	font-variation-settings: "wght" 400;
	color: #001f9b;
}

.day[data-sun="true"] .date_label span {
	font-weight: 400;
	font-variation-settings: "wght" 400;
	color: #9d0000;
}

.day[data-holiday="true"] .date_label span {
	font-weight: 400;
	font-variation-settings: "wght" 400;
	color: #3ca532;
}

.holiday_name {
	margin-left: 8px;
}

.youbi {
	font-size: var(--font-size-xxs);
}

.date_label {
	margin-right: 1rem;
}

/* スケジュール部分 */
.omise_schedule {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin-left: 8px;
}

.omise_schedule span {
	margin: auto 4px;
}

.schedule_item {
	display: block;
	margin: 0 8px 0 0;
}
