footer {
	grid-area: footer;
	background-color: var(--color-green);
	color: white;
	padding: 1.5rem;
	font-size: 1.5rem;
}

footer a {
	color: white;
}

footer a span::before {
	background-color: white;
	height: 1px;
}

footer .info-list {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;

	column-gap: 3vw;
}

footer .info-list .info {
	flex: 1;
	text-align: center;

	display: flex;
	flex-flow: column nowrap;
	justify-content: flex-start;
	align-items: center;
}

footer .data {
	min-height: 2rem;
}

footer .data .icon {
	height: 2rem;
}

footer .data .icon img {
	aspect-ratio: 1 / 1;

	filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7500%) hue-rotate(133deg) brightness(113%) contrast(113%);
}

footer #user-agreement {
	font-size: 1.2rem;

	margin-top: 1.8rem;

	display: inline-block;
}

footer #legal-info {
	margin-top: 1.6rem;

	font-size: 0.9rem;
}

@media screen and (width < 800px) {
	footer {
		display: flex;
		align-items: center;
		flex-flow: column nowrap;
	}

	footer .info-list {
		flex-flow: column nowrap;
		align-items: center;

		row-gap: 2rem;
		column-gap: 0;
	}

	footer .info-list .info {
		flex: 1;
		text-align: center;

		display: flex;
		flex-flow: column nowrap;
		justify-content: flex-start;
		align-items: center;
	}

	footer .data {
		min-height: 2rem;
	}

	footer .data .icon {
		height: 2rem;
	}
}
