#map {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	position: absolute;
}

.map {
	position: relative;
}

.map .contact-wrapper {
	position: relative;
	z-index: 1;
	margin-top: 50px;
	margin-bottom: 50px;
}

.map .contact-wrapper::before {
	content: "";
	position: absolute;
	background-color: white;
	z-index: -1;
	top: -50px;
	left: -50px;
	right: 50px;
	bottom:  50px;
	width: calc(100% + 50px);
	height: calc(100% + 100px);
}

.map .contact-wrapper > div > div:last-of-type br:nth-of-type(even) {
	margin-bottom: 10px;
}

.map .contact-wrapper > div > div:first-of-type p:first-of-type {
	margin-bottom: unset;
}

.map .contact-wrapper > div {
	display: flex;
	flex-direction: row;
	margin-top: 30px;
}

.map .contact-wrapper > div > div {
	display: flex;
	width: 50%;
	flex-direction: column;
	gap: 15px;
}

.map .contact-wrapper > div > div > div {
	width: 100%;
	display: flex;
}

.map .contact-wrapper > div > div > div i {
	margin-right: 15px;
	margin-top: 6px;
	font-size: 110%;
}

.map .contact-wrapper > div > div .oeffnungszeiten {
	padding-right: 15px;
}

.map .contact-wrapper > div > div .oeffnungszeiten > p {
	font-weight: bold;
	display: flex;
	flex-direction: column;
}

.map .contact-wrapper > div > div .oeffnungszeiten span{
	font-weight: 400;
}

.map .contact-wrapper > div p {
	text-transform: uppercase;
}

.map .contact-wrapper > div p,
.map .contact-wrapper > div a {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 500;
	margin-bottom: unset;
	line-height: 1.7;
	font-size: 18px;
}

/* Responsive */
@media only screen and (max-width: 1920px) {

}

@media only screen and (max-width: 1599.98px) {
	.map .contact-wrapper > div p,
	.map .contact-wrapper > div a {
		font-size: 16px;
	}
}

@media only screen and (max-width: 1399.98px) {

}

@media only screen and (max-width: 1199.98px) {
	.map .contact-wrapper::before {
		top: -20px;
		left: -20px;
		right: 50px;
		bottom:  50px;
		width: calc(100% + 20px);
		height: calc(100% + 40px);
	}
}

@media only screen and (max-width: 991.98px) {

}

@media only screen and (max-width: 767.98px) {
	#map {
		height: 400px;
		position: static;
	}

	.map .contact-wrapper {
		margin: unset;
		margin-top: 60px;
	}

	.map .contact-wrapper::before {
		display: none;
		position: static;
	}

	.map {
		padding-top: unset;
	}

	.map .blocktitle {
		margin-bottom: .5rem;
	}
}

@media only screen and (max-width: 575.98px) {

}

@media only screen and (max-width: 499.98px) {

}

@media only screen and (max-width: 449.98px) {
	.map .contact-wrapper > div {
		margin-top: unset;
		flex-direction: column;
	}

	.map .contact-wrapper > div > div:first-of-type p:first-of-type {
		margin-bottom: 15px;
	}

	.map .contact-wrapper > div a {
		display: block;
	}

	.map .contact-wrapper > div > div:first-of-type {
		width: 100%;
	}

	.map .contact-wrapper > div > div:last-of-type {
		width: 100%;
	}

	.map .contact-wrapper > div > div:last-of-type > *:last-of-type {
		margin-bottom: unset;
	}
}

@media only screen and (max-width: 399.98px) {

}

@media only screen and (max-width: 349.98px) {

}

@media only screen and (max-width: 319.98px) {

}
