#indexOpenBtn {
	position: fixed;
	z-index: 1;
	top: 10px;
	right: -70px;
	width: 50px;
	height: 50px;
	border: solid 0;
	filter: drop-shadow(2px 2px 0px white);
}

#indexOpenBtn div {
	width: 100%;
	height: 100%;
	background: var(--color-header);
	--line-width: 7px;
	clip-path: polygon(
		5% 15%, 95% 15%, 95% calc(15% + var(--line-width)), 5% calc(15% + var(--line-width)), 5% 15%,
		5% calc(50% - var(--line-width) / 2), 95% calc(50% - var(--line-width) / 2), 95% calc(50% + var(--line-width) / 2), 5% calc(50% + var(--line-width) / 2), 5% calc(50% - var(--line-width) / 2),
		5% calc(85% - var(--line-width)), 95% calc(85% - var(--line-width)), 95% 85%, 5% 85%, 5% calc(85% - var(--line-width)), 5% calc(50% - var(--line-width) / 2), 5% 15%
		);
}

#indexOpen:checked ~ #indexOpenBtn div {
	clip-path: polygon(
		calc(50% - var(--line-width) * 0.7) 50%, calc(85% - var(--line-width) * 1.4) 15%, 85% 15%, calc(50% + var(--line-width) * 0.7) 50%, calc(50% - var(--line-width) * 0.7) 50%,
		calc(15% + var(--line-width) * 1.4) 15%, 85% 85%, calc(85% - var(--line-width) * 1.4) 85%, 15% 15%, calc(15% + var(--line-width) * 1.4) 15%,
		15% 85%, calc(50% - var(--line-width) * 0.7) 50%, calc(50% + var(--line-width) * 0.7) 50%, calc(15% + var(--line-width) * 1.4) 85%, 15% 85%, calc(15% + var(--line-width) * 1.4) 15%, calc(50% - var(--line-width) * 0.7) 50%
		);
}

@media(max-width: 720px) {
	.maincontent {
		display: block;
	}

	.events dl {
		flex-wrap: wrap;
	}

	.events dl dt {
		width: auto;
		min-width: 5em;
		padding-left: 0.3em;
	}

	.events dl dd:first-of-type > span {
		width: auto;
		padding: 0 0.5em;
	}

	.events dl dd:nth-of-type(2) {
		min-width: 100%;
		padding-left: 1em;
	}

	#indexOpenBtn {
		right: 10px;
	}

	.index {
		position: fixed;
		z-index: 0;
		top: 0;
		right: -550px;
		width: unset;
		max-height: 100vh;
		overflow-y: auto;
		background: linear-gradient(to right, transparent, #fffc 2em);
		border-radius: 0 0 0 2em;
		padding: 1.5em 1em 3em 2em;
	}

	#indexOpen:checked ~ .index {
		right: 0;
	}

	.index li {
		padding: 10px 0;
		border-bottom: dotted 2px var(--color-h3);
	}
}