@font-face {
font-family: 'MyFont';
src: url('../cpfont/Roboto-Light.woff2') format('woff2'),
         url('../cpfont/Roboto-Light.woff') format('woff');
font-weight: normal;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'MyFont';
src: url('../cpfont/Roboto-LightItalic.woff2') format('woff2'),
         url('../cpfont/Roboto-LightItalic.woff') format('woff');
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'MyFont';
src: url('../cpfont/Roboto-Regular.woff2') format('woff2'),
         url('../cpfont/Roboto-Regular.woff') format('woff');
font-weight: bold;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'MyFont';
src: url('../cpfont/Roboto-Italic.woff2') format('woff2'),
         url('../cpfont/Roboto-Italic.woff') format('woff');
font-weight: bold;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Thin';
src: url('../cpfont/Roboto-Thin.woff2') format('woff2'),
         url('../cpfont/Roboto-Thin.woff') format('woff');
font-weight: normal;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Thin';
src: url('../cpfont/Roboto-ThinItalic.woff2') format('woff2'),
         url('../cpfont/Roboto-ThinItalic.woff') format('woff');
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Bold';
src: url('../cpfont/Roboto-MediumItalic.woff2') format('woff2'),
         url('../cpfont/Roboto-MediumItalic.woff') format('woff');
font-weight: normal;
font-style: italic;
font-display: swap;
}
@font-face {
font-family: 'Bold';
src: url('../cpfont/Roboto-Medium.woff2') format('woff2'),
         url('../cpfont/Roboto-Medium.woff') format('woff');
font-weight: normal;
font-style: normal;
font-display: swap;
}
/*
html
*/
html, body, div, span, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, em, img, ol, ul, li, form, table, tbody, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
}
html {
	font-size: 20px;
}
body {
	color: #000000;
	text-align: center;
	margin: 0;
	background: #ffffff;
	font: normal 1rem/1.4 MyFont, Helvetica, Arial, Verdana, sans-serif;
	width: 100%;
	height: 100%;
	overflow: auto;
}
* {
	box-sizing: border-box;
}
img {
	border-style: none;
}
.noborder {
	border-style: none !important;
}
form {
	margin: 0;
	padding: 0;
}
table {
	border-collapse: collapse;
}
td, th {
	vertical-align: top;
	font-size: 1rem;
}
/* linksteuerung */
a, a:visited {
	color: #000000;
	text-decoration: none;
}
p a, p a:visited {
	text-decoration: underline;
}
a:hover {
	color: #183547;
}
a.anker {
	width: 0;
	height: 0;
	margin: 0;
	padding: 0;
	position: absolute;
	top: -3.8rem;
	border-style: none !important;
}
a.v_anker {
	width: 0;
	height: 0;
	margin: 0;
	padding: 0;
	position: absolute;
	top: -10rem;
}
a[href^="mailto"], a[href^="tel"] {
	position: relative;
	text-align: left;
	margin-left: 1.5em;
	text-decoration: none;
}
a[href^="mailto"]::before, a[href^="tel"]::before {
	content: '';
	display: inline-block;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	width: 1em;
	height: 1em;
	position: absolute;
	top: 0.1em;
	left: -1.5em;
	cursor: pointer;
}
a[href^="mailto"]::before {
	background-image: url('/images/email.svg');
}
a[href^="tel"]::before {
	background-image: url('/images/telefon.svg');
}
/*
###################### farben ######################
*/
.weiss, .bgc0, .bgov0:hover {
	background-color: #ffffff;
}
.bgov0, .bgov1, .bgov2, .bgov3, .bgov4, .bga1, .bga2, .bga3, .bga4 {
	background-color: #ffffff;
	transition: background-color 0.2s ease-in-out;
}
.bga1:hover, .bga2:hover, .bga3:hover, .bga4:hover {
	background-color: #F6F6F6;
}
.gelb, .bgc1, .bgov1:hover, .bga1.akt{
	background-color: #FEF78C;
	transition: background-color 0.2s ease-in-out;
}
.orange, .bgc2, .bgov2:hover, .bga2.akt, .formular input[type="submit"].newsl_abm_btn {
	background-color: #FF8C5F;
	transition: background-color 0.2s ease-in-out;
}
.rot {
	background-color: #DB493C;
}
.rosa, .bgc3, .bgov3:hover, .bga3.akt, .kalenderdatum th {
	background-color: #FFBAE1;
	transition: background-color 0.2s ease-in-out;
}
.lila, .bgc4, .bgov4:hover, .bga4.akt {
	background-color: #CAA6FF;
	transition: background-color 0.2s ease-in-out;
}
.blaulila, .bgc5 {
	background-color: #7D5AFF;
}
.hellblau, .bgc6 {
	background-color: #9B9BFF;
}
.blau, .bgc7 {
	background-color: #0000FF;
}
.gruengelb, .bgc8, .monat, .kalendertitel {
	background-color: #EAEF8F;
}
.hellgrau, .bgc9 {
	background-color: #F6F6F6;
}
.graublau, .bgc10 {
	background-color: #183547;
}


.kontrast .weiss, .kontrast .bgc0, .kontrast .bgov0:hover {
	background-color: #ffffff;
}
.kontrast .bgov0, .kontrast .bgov1, .kontrast .bgov2, .kontrast .bgov3, .kontrast .bgov4, .kontrast .bga1, .kontrast .bga2, .kontrast .bga3, .kontrast .bga4 {
	background-color: #ffffff;
}
.kontrast .gelb, .kontrast .bgc1, .kontrast .bgov1:hover, .kontrast .bga1.akt {
	background-color: #fefcda;
}
.kontrast .orange, .kontrast .bgc2, .kontrast .bgov2:hover, .kontrast .bga2.akt, .kontrast .formular input[type="submit"].newsl_abm_btn {
	background-color: #fee8e0;
}
.kontrast .rot {
	background-color: #f9e4e3;
}
.kontrast .rosa, .kontrast .bgc3, .kontrast .bgov3:hover, .kontrast .bga3.akt, .kontrast .kalenderdatum th {
	background-color: #fee4f3;
}
.kontrast .lila, .kontrast .bgc4, .kontrast .bgov4:hover, .kontrast .bga4.akt {
	background-color: #e9e2f3;
}
.kontrast .blaulila, .kontrast .bgc5 {
	background-color: #ebe6fd;
}
.kontrast .hellblau, .kontrast .bgc6 {
	background-color: #e7e7fe;
}
.kontrast .blau, .kontrast .bgc7 {
	background-color: #e2e2fe;
}
.kontrast .gruengelb, .kontrast .bgc8, .kontrast .kalendertitel {
	background-color: #f8fae0;
}
.kontrast .monat {
	background-color: #ffffff;
	border-top: 1px solid #000000;
	border-bottom: 1px solid #000000;
}
.kontrast .hellgrau, .kontrast .bgc9 {
	background-color: #F6F6F6;
}
.kontrast .graublau, .kontrast .bgc10 {
	background-color: #dfe7eb;
}

/*
###################### basisformate ######################

headline					h1
kleine headline			h2
überschrift				h3
kleine überschrift		h4
z.B. Überschrift News	h5
z.B. Datum in News		h6
normale Schrift			p
kleine Schrift			span'kl' */
h1, h2, h3, h4, h5, h6, p, main ul, main li {
	font-family: MyFont, Helvetica, Arial, Verdana, sans-serif;
	line-height: 1.55em;
}
h1, h2, h3, h4, h5, h6 {
	width: 100%;
	font-weight: normal;
	font-style: normal;
	line-height: 1.1em;
}
h1 {
	font-size: 5.5rem;
	text-transform: lowercase;
}
h2 {
	font-size: 2.8rem;
	text-transform: lowercase;
}
h2 em, h2 i {
	font-family: Thin;
}
h3 {
	font-size: 2.1rem;
	font-weight: bold;
}
h4 {
	font-size: 1rem;
}
h5 {
	font-size: 1rem;
}
h6 {
	font-size: 1rem;
}
p {
	font-size: 1rem;
	width: 100%;
}


.kontrast h4, .kontrast h5, .kontrast h6, .kontrast p {
	font-size: 1.5rem;
}



main ol {
	margin-left: 1rem;
}
main ul {
	margin-left: 1rem;
	line-height: 1.55rem;
}
.small, .kl {
	font-size: 0.8rem !important;
}
.b {
	font-weight: bold;
}
.i, .italic {
	font-style: italic;
}
.u, .underline {
	text-decoration: underline;
}
.l {
	text-align: left !important;
}
.c {
	text-align: center !important;
}
.r {
	text-align: right !important;
}
/*
###################### cms ######################
*/
.cms_table td {
	padding-right: 0.5rem;
}
.fliessend {
	float: left;
	margin-right: 1em;
	display: block;
	margin-bottom: 0.5em;
}
.float_l {
	float: left;
	display: inline-block;
}
.float_r {
	float: right;
	display: inline-block;
}
.trennlinie, hr {
	font-size: 0;
	width: auto;
	height: 0;
	clear: both;
	border-bottom: 1px solid #999999;
	margin-top: 1em;
	margin-bottom: 1em;
}
.hide {
	display: none;
}
.clearfix::after, .clearer {
	width: 100%;
	height: 0;
	content: "";
	display: table;
	clear: both;
}
.flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.mce-content-body {
	text-align: left;
}
.mce-content-body ul {
	margin-left: 1rem;
}
.mce-content-body td {
	border: 1px dotted #999999;
	min-width: 20px;
}
.mce-content-body img {
	height: 60px;
	width: auto;
}
/*
popup
*/
#mask {
	background-color: #000;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	z-index: 1100;
	margin: 0;
	display: none;
	opacity: 0.6;
}
#infofenster {
	color: #000;
	background-color: black;
	position: fixed;
	top: 10vh;
	left: 50%;
	width: 600px;
	margin-left: -300px;
	padding: 0;
	display: none;
	text-align: center;
	z-index: 1100;
}
#infofenster iframe {
	margin: 1em auto 0.5em;
}
/*
###################### seitenübergreifend ######################
*/
main {
	padding-top: 2.8rem;
	font-size: 0;
	position: relative;
}
section {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
	font-size: 1rem;
}
.kontrast section {
	font-size: 1.5rem;
}
section h1:first-of-type {
	margin-left: -2rem;
}
.content, .cont {
	width: calc(100% - 6rem);
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
.content {
	text-align: left;
	position: relative;
	max-width: 1400px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.ganz {
	width: 100%;
}
.flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.spalte {
	width: calc(50% - 3rem);
}
.spalte13, .fuss_newsl {
	width: calc(33% - 2rem);
}
.spalte23 {
	width: calc(67% - 2rem);
}
.main img {
	max-width: 100%;
	height: auto;
}
/*
###################### header ######################
*/
header {
	height: 2.8rem;
	width: 100%;
	position: fixed;
	margin: 0;
	text-align: right;
	background-color: #ffffff;
	z-index: 1000;
	display: block;
	border-bottom: 1px solid #000000;
}
header .content, footer .content {
	position: relative;
}
.logo img {
	float: left;
	display: inline-block;
	height: 1.6rem;
	width: auto;
	margin-top: 0.65rem;
}
/*
###################### allgemein ######################
*/
.bildaction {
	display: inline-block;
	position: absolute;
	width: 2rem;
	height: 2rem;
	border: 1px solid #000000;
	border-radius: 3rem;
	animation: pulse 2s infinite;
	opacity: 1;
	cursor: pointer;
	background: url('/images/push.svg') center center no-repeat;
	background-size: contain;
}
.bildaction:hover {
	animation: none;
}
@keyframes pulse {
	50% {
		opacity: 0.25;
	}
}
.button, .plusbtn, a.button, a.button:visited, .klapplink a, .klapplink a:visited, .fusslink a, .fusslink a:visited {
	border: 1px solid #333;
	border-radius: 4rem;
	font-size: 1rem;
	line-height: 2em;
	color: #000000;
	display: inline-block;
	text-align: center;
	text-decoration: none;
	margin-right: 1rem;
	cursor: pointer;
	position: relative;
	padding-right: 1.5em;
	padding-left: 1.5em;
	text-transform: lowercase;
}
.kontrast .button, .kontrast .plusbtn, .kontrast a.button, .kontrast a.button:visited, .kontrast .klapplink a, .kontrast .klapplink a:visited, .kontrast .fusslink a, .kontrast .fusslink a:visited {
	background-color: #ffffff;
	border-color: #000000;
}
.button, a.button, a.button:visited, .klapplink a, .klapplink a:visited, .fusslink a, .fusslink a:visited {
	min-width: 6rem;
}
.button:hover, a.button:hover, .plusbtn:hover, .klapplink a:hover, .fusslink a:hover {
	background-color: #EAEF8F;
}
.kontrast .button:hover, .kontrast a.button:hover, .kontrast .plusbtn:hover, .kontrast .klapplink a:hover, .kontrast .fusslink a:hover {
	background-color: #000000;
	color: #ffffff;
}
.plusbtn, .plus {
	width: 1em;
	height: 1em;
	float: right;
	position: relative;
	transition: transform .2s ease-in-out;
	margin-right: 0;
	padding: 0 !important;
	background: url('/images/x.svg') center center no-repeat;
	background-size: 65%;
}
.plus {
	cursor: pointer;
}
.ext_block {
	margin-top: 0.75rem;
	position: relative;
	display: inline-block;
}
.ext_block a.button {
	margin-right: 0;
	margin-top: 0.75rem;
}
.termine .ext_link .button {
	margin-right: 0;
}
.ext_link {
	z-index: 10;
}
.ext_text {
	display: none;
	z-index: 20;
	position: absolute;
	bottom: -0.5rem;
	background-color: #fee8e0;
	left: -0.5rem;
	padding: 1rem;
	width: 200%;
	text-align: center;
	text-transform: none;
}

.ex_block {
	position: relative;
	display: inline-block;
	margin-top: 0.75rem;
}
.ex_block p {
	margin-top: 0 !important;
}
.ex_block a.button {
	margin-right: 0;
}
.ex_link {
	z-index: 10;
}
.ex_text {
	display: none;
	z-index: 20;
	position: absolute;
	bottom: -0.5rem;
	background-color: #fee8e0;
	left: -0.5rem;
	padding: 1rem;
	text-align: center;
	text-transform: none;
}
/*
.plus pre {
	height: 2px;
}
.plus pre.s {
	width: 2px;
}
*/
.bildvoll img {
	width: 100%;
	height: auto;
}
.spaltenblock {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	margin-top: 1rem;
}
.space {
	width: 100%;
	height: 2rem;
}
.icontext {
	margin-top: 1rem;
	margin-bottom: 1rem;
}
.icontext img {
	width: 5rem;
	height: 5rem;
	float: left;
	margin-top: 0rem;
	margin-right: 1rem;
}
.icontext h3 {
	display: inline-block;
	width: calc(100% - 6rem);
	margin-bottom: 1rem;
}
.icontext p {
	font-size: 2.25rem;
	text-transform: lowercase;
	line-height: 1.25em;
}
p.link {
	margin-top: 5vw;
	text-align: center;
}
p.link a {
	padding-right: 0.75rem;
	padding-left: 0.75rem;
	font: 1.6rem/3rem MyFont;
	color: #000000;
	border: 1px solid #000000;
	border-radius: 3rem;
	text-transform: lowercase;
	display: inline-block;
	text-decoration: none;
}
p.link a:hover {
	text-decoration: none;
}
.inhalt {
	padding-top: 2rem;
	padding-bottom: 2rem;
	width: 100%;
}
.inhalt.content {
	width: calc(100% - 6rem);
}
.inhalt h1 {
	margin-bottom: 2rem;
}
.inhalt h2 {
	margin-bottom: 2rem;
}
.klappinhalt {
	width: 100%;
	border-top: 1px solid #000000;
	padding-top: 2rem;
	padding-bottom: 2rem;
	position: relative;
}
.klappinhalt h2 {
	cursor: pointer;
}
.klappinhalt .plus {
	transition: transform .2s ease-in-out;
}
.klappinhalt.akt .plus {
	transform: rotate(45deg);
	transition: transform .2s ease-in-out;
}
.klappinhalt:first-of-type {
	border-top-style: none;
}
.klappinhalt div.more {
	width: 100%;
	max-height: 0;
	transition: max-height .2s ease-in-out;
	overflow: hidden;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
.klappinhalt div.more p:first-of-type {
	margin-top: 1rem;
}
.klappinhalt.akt div.more {
	max-height: 10000px;
	transition: max-height .5s ease-in-out;
}
.klappinhalt div.more > div {
	margin-top: 1rem;
	margin-bottom: 2rem;
	display: inline-block;
}
.klappinhalt div.more a {
	margin-top: 1rem;
}
.klappinhalt div.more > div.veranstaltung, .klappinhalt div.more div.veranstaltung_liste, .klappinhalt div.more .veranstaltung_liste a {
	margin-top: 0;
	padding-top: 0;
}
.tickets {
	margin-top: 2rem;
}
.fusslink {
	display: inline-block;
	width: 50%;
	padding-top: 2rem;
	padding-bottom: 2rem;
	align-items: center;
	text-align: center !important;
}
.fusslink p {
	width: 90%;
	max-width: 500px;
	display: inline-block;
	margin-right: auto;
	margin-left: auto;
	text-align: left;
}
.fusslink a {
	margin-top: 1rem;
}
/*
###################### galerie ######################
*/
.gal h2 {
	margin-bottom: 2rem;
}
.galerie, .klappinhalt div.more div.galerie {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
}
.galerie_image {
	width: calc(33% - 1rem);
	text-align: center !important;
	display: inline-block;
	margin-bottom: 1em;
}
.galerie_image img {
	margin-bottom: 0.3em;
	width: 100%;
	height: auto;
}
.sponspartn .galerie_image {
	width: calc(25% - 1rem);
	margin-bottom: 1em;
}
.sponspartn .galerie_image img {
	width: auto;
	height: auto;
	max-width: 12rem;
	max-height: 6rem;
}
/*
###################### kopf ######################
*/
.kopf {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-content: space-between;
	width: 100%;
	font-size: 1rem;
	color: #ffffff;
	min-height: calc(100vh - 2.8rem);
	position: relative;
	padding: 3rem 7%;
}
.kontrast .kopf {
	color: #000000;
}
/*
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-content: center;
	flex-direction: column;
*/
.kopf div.cont {
	position: relative;
	text-align: center;
	top: 0;
	bottom: 0;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	align-items: center;
	height: 100%;
}
.kopf div.einzelblock, .kopf div.spaltenblock {
	text-align: left;
	margin-top: 2rem;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	width: 80%;
	max-width: 1200px;
}
.kopf div.einzelblock {
	max-width: 1200px;
}
.kopf div.spaltenblock div {
	text-align: left;
}
.kopf h1, .kopf h4 {
	display: inline-block;
	width: auto;
}
.kopf h1 {
	font-size: 7rem;
}
.kopf h1 pre {
	display: inline-block;
	width: 1em;
}
.kopf h4 {
	font-size: 5rem;
}
.kopf img {
	display: inline-block;
	width: 50%;
	height: auto;
	margin-right: auto;
	margin-left: auto;
}
.kopf i {
	font-family: 'Thin';
	font-style: italic;
}
.kopf a {
	color: #ffffff;
	font-size: 2.2rem;
	line-height: 3.5rem;
	border-radius: 3.5rem;
	border: 1px solid #ffffff;
	text-transform: lowercase;
	padding-right: 1em;
	padding-left: 1em;
}
.kontrast .kopf a {
	color: #000000;
	border-color: #000000;
}
.kopf a:hover {
	text-decoration: none;
	font-variant: normal;
}
.kopf a.jumplink {
	border-style: none;
	font-weight: normal;
	font-style: normal;
	font-size: 2.5rem;
	line-height: 1.25em;
	display: inline-block;
	position: relative;
}
.kopf a.jumplink::after {
	content: '';
	display: inline-block;
	background-image: url('/images/pfeil_w.svg');
	transform: rotate(90deg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: right;
	width: 0.9em;
	height: 0.9em;
	position: absolute;
	top: 0.25em;
	right: -0.25em;
	cursor: pointer;
	font-weight: normal;
	font-style: normal;
}
.kontrast .kopf a.jumplink::after {
	background-image: url('/images/pfeil.svg');
}
.kopf a.button {
	font-weight: normal;
	font-style: normal;
	font-size: 2rem;
}
/*
###################### home ######################
*/
.home.kopf {
	overflow: hidden;
	justify-content: space-around;
}
.home.kopf h1, .home.kopf h4 {
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	display: inline;
	position: relative;
}
.home.kopf h1 {
	font-size: 8rem;
}
.home.kopf h1 b {
	font-weight: bold;
	font-style: normal;
}
.home.kopf a.button {
	color: #ffffff;
	position: relative;
	display: inline-block;
	text-align: center;
	border-color: #ffffff;
	width: auto;
	margin-right: auto;
	margin-left: auto;
}
.kontrast .home.kopf a.button {
	color: #000000;
	border-color: #000000;
}
.home.kopf a.button:hover {
	background-color: #ffffff;
	color: #cfa3ff;
}
.kontrast .home.kopf a.button:hover {
	background-color: #ffffff;
	background-color: #000000;
}
.home.kopf img {
	width: auto;
	height: 300px;
	position: absolute;
	right: -5vw;
	bottom: 0;
}
.startmarker {
	display: inline-block;
	position: absolute;
	right: 20%;
	bottom: 16%;
	overflow: visible;
}
.merkzettel {
	width: 13.7rem;
	height: 19.5rem;
	background: url('../images/notiz.svg') no-repeat;
	background-size: contain;
	position: absolute;
	bottom: -3rem;
	right: -3rem;
}
.merkzettel p {
	padding-right: 2rem;
	padding-left: 2rem;
	margin-top: 6.5rem;
	color: #000000;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.25em;
}
.merkzettel a, .merkzettel a:visited {
	color: #000000;
	font-size: 1.2rem;
	text-decoration: none;
	border-color: #000000;
}
.home.kopf img.vogel {
	display: inline-block;
	width: 150px;
	height: auto;
	animation: flieg 15s ease-in-out infinite;
	bottom: 0;
	right: 0;
}
.vogel.akt {
}
@keyframes flieg {
	0% {
		right: 0;
		bottom: 0;
		transform: rotate(0deg);
	}
	30% {
		right: 0;
		bottom: 0;
		transform: rotate(0deg);
	}
	30.3% {
		right: -23px;
		bottom: 23px;
		transform: rotate(-6deg);
	}
	31% {
		right: -42px;
		bottom: 48px;
		transform: rotate(-16deg);
	}
	31.5% {
		right: -57px;
		bottom: 77px;
		transform: rotate(-23deg);
	}
	32% {
		right: -68px;
		bottom: 107px;
		transform: rotate(-31deg);
	}
	32.5% {
		right: -75px;
		bottom: 138px;
		transform: rotate(-38deg);
	}
	33% {
		right: -78px;
		bottom: 170px;
		transform: rotate(-44deg);
	}
	33.5% {
		right: -77px;
		bottom: 202px;
		transform: rotate(-50deg);
	}
	34% {
		right: -74px;
		bottom: 233px;
		transform: rotate(-57deg);
	}
	34.5% {
		right: -66px;
		bottom: 263px;
		transform: rotate(-68deg);
	}
	35% {
		right: -53px;
		bottom: 292px;
		transform: rotate(-85deg);
	}
	35.5% {
		right: -32px;
		bottom: 316px;
		transform: rotate(-111deg);
	}
	36% {
		right: -3px;
		bottom: 327px;
		transform: rotate(-135deg);
	}
	36.5% {
		right: 29px;
		bottom: 326px;
		transform: rotate(-158deg);
	}
	37% {
		right: 57px;
		bottom: 312px;
		transform: rotate(-172deg);
	}
	37.5% {
		right: 75px;
		bottom: 285px;
		transform: rotate(-210deg);
	}
	38% {
		right: 82px;
		bottom: 254px;
		transform: rotate(-214deg);
	}
	38.5% {
		right: 76px;
		bottom: 223px;
		transform: rotate(-261deg);
	}
	39% {
		right: 56px;
		bottom: 198px;
		transform: rotate(-283deg);
	}
	39.5% {
		right: 28px;
		bottom: 183px;
		transform: rotate(-304deg);
	}
	40% {
		right: -4px;
		bottom: 178px;
		transform: rotate(-319deg);
	}
	40.5% {
		right: -36px;
		bottom: 181px;
		transform: rotate(-325deg);
	}
	41.5% {
		right: -67px;
		bottom: 188px;
		transform: rotate(-332deg);
	}
	42% {
		right: -97px;
		bottom: 199px;
		transform: rotate(-338deg);
	}
	42.5% {
		right: -126px;
		bottom: 213px;
		transform: rotate(-344deg);
	}
	43% {
		right: -154px;
		bottom: 230px;
		transform: rotate(-348deg);
	}
	55% {
		right: -55vw;
		bottom: 428px;
		transform: rotate(-420deg);
	}
	57% {
		right: -55vw;
		bottom: 60vh;
		transform: rotate(10deg);
	}
	57.1% {
		right: -55vw;
		bottom: -50vh;
		transform: rotate(0deg);
	}
	57.2% {
		right: 110vw;
		bottom: -50vh;
		transform: rotate(0deg);
	}
	57.3% {
		right: 110vw;
		bottom: 40vh;
		transform: rotate(20deg);
	}
	100% {
		right: 0;
		bottom: 0;
		transform: rotate(0deg);
	}
}
/*
###################### programm ######################
*/
.p_ogramm_veranstaltungen.kopf {
	color: #183547;
}
.p_ogramm_veranstaltungen.kopf img {
	width: 45%;
	margin-top: -18rem;
	margin-bottom: -14rem;
}
.p_ogramm_veranstaltungen.kopf h1 {
	font-style: normal;
	text-align: left;
}
.p_ogramm_veranstaltungen.kopf h4 {
	font-style: normal;
	font-size: 6.5rem;
	text-align: right;
	width: auto;
}
.p_ogramm_kultur_kalender.kopf img {
	margin-top: -21rem;
	width: 55%;
	margin-left: 40%;
}
.p_ogramm_kultur_kalender.kopf div.cont {
	justify-content: flex-start;
}
.p_ogramm_kultur_kalender.kopf  h1 {
	font-style: normal;
	text-align: left;
}
.p_ogramm_festivals_reihen.kopf {
	padding-right: 10%;
	padding-left: 10%;
	justify-content: space-around;
	padding-bottom: 10%;
}
.p_ogramm_festivals_reihen.kopf h1 {
	text-align: left;
	width: 70%;
}
.p_ogramm_festivals_reihen.kopf img {
	width: 50%;
	margin-left: 48%;
	display: inline-block;
	margin-top: -10rem;
}
/*
###################### service ######################
*/
.se_vice.kopf {
	padding-right: 0;
	padding-left: 0;
}
.se_vice.kopf img {
	height: auto;
	width: 100%;
	margin-top: 2rem;
	margin-bottom: -10rem;
}
.se_vice.kopf h1 {
	margin-right: 10%;
}
.se_vice.kopf span {
	width: 100%;
	display: inline-block;
}
.se_vice.kopf a.jumplink {
	margin-top: 1rem;
}
.se_vice.kopf h4 {
	text-align: left;
	margin-left: 7%;
}
/*
###################### haus ######################
*/
.haus.kopf img {
	color: #183547;
	margin-left: 40%;
	margin-top: -8rem;
	margin-bottom: -16rem;
}
.haus.kopf a, .haus.kopf a:visited {
	color: #183547;
}
.haus.kopf h1, .haus.kopf h4, .haus.kopf div.einzelblock, .haus.kopf a.button {
	color: #183547;
	border-color: #183547;
}
.kontrast .haus.kopf h1, .kontrast .haus.kopf h4, .kontrast .haus.kopf div.einzelblock, .kontrast .haus.kopf a.button {
	color: #000000;
}
.kontrast .haus.kopf a.button:hover {
	color: #ffffff;
}
.haus.kopf h1 {
	margin-top: 2rem;
	margin-right: 15%;
	margin-left: -15%;
}
.haus.kopf a.jumplink {
	margin-top: 3rem;
	margin-right: 15%;
	margin-left: -15%;
}
.haus.kopf a.jumplink::after {
	background-image: url('/images/pfeil_b.svg');
}
.haus.kopf a.jumplink span {
	position: absolute;
	display: inline-block;
	transform: rotate(-15deg);
	top: -1.5rem;
	left: -1rem;
}
.haus.kopf a.jumplink span i {
	position: absolute;
	display: inline-block;
	transform: rotate(25deg);
	left: 1.3em;
	font-size: 0.9em;
}
.haus.kopf a.jumplink i {
	font-family: 'MyFont';
	font-style: normal;
}
.haus.kopf a.button {
	padding-right: 1.5rem;
	padding-left: 1.5rem;
	white-space: nowrap;
}
.haus.kopf h4 {
	width: 60%;
	text-align: left;
}
.haus.kopf div.einzelblock div {
	display: inline-block;
}
/*
###################### akteure ######################
*/
.akt_ure.kopf img {
	width: 30%;
	margin-bottom: 4rem;
	margin-right: 65%;
	margin-top: -2rem;
}
.akt_ure.kopf a.jumplink {
	margin-top: 2rem;
}
.akt_ure.kopf h4 {
	text-align: left;
	width: 75%;
}
/*
###################### kontakt ######################
*/
.ko_takt.kopf img {
	width: 30%;
	margin-bottom: 2rem;
	margin-right: 55%;
	margin-top: -2rem;
}
.ko_takt.kopf h1 {
	margin-right: 10%;
}
.ko_takt.kopf a.jumplink {
	margin-top: 1rem;
}
.ko_takt.kopf h4 {
	text-align: left;
	margin-right: auto;
	width: 60%;
	margin-left: auto;
}
.ko_takt.kopf div.spaltenblock {
	width: 60%;
	margin-top: 4em;
	margin-right: auto;
	margin-left: auto;
}
.ko_takt .klappinhalt div.more div {
	margin-top: 0;
}





/*
###################### home ######################
*/
.home .cont {
	width: auto;
	text-align: center;
	position: relative;
}
.home .content {
	width: calc(100% - 12rem);
}
.ganz img.over, .ganz.akt img.norm {
	display: none;
}
.ganz.akt img.over, .ganz img.norm {
	display: inline-block;
}
section.home div {
	text-align: left;
}
section.home .spalte {
	width: 40%;
	display: inline-block;
}
section.home a {
	padding-right: 2rem;
	padding-left: 2rem;
	font: 1.1rem/2rem MyFont;
	color: #000000;
	border: 1px solid #000000;
	border-radius: 2rem;
	text-transform: lowercase;
	display: inline-block;
	text-decoration: none;
}
section.home .startetage img {
	width: 55%;
	height: auto;
	margin-top: -11rem;
	margin-left: -8rem;
}
section.home .startetage .spalte {
	float: right;
	margin-top: 5vw;
}







section.home .startraum {
	margin-top: 5rem;
	position: relative;
}
section.home .startraum .spalte {
	position: absolute;
	z-index: 10;
}
section.home .startraum .starthof {
	margin-top: 4rem;
	width: 97%;
	height: auto;
	float: right;
	z-index: 0;
	position: relative;
	right: 0;
}
section.home .startraum .starthof img:first-of-type {
	width: 100%;
	height: auto;
	z-index: 1;
}
section.home .startraum .starthof .bildaction {
	position: absolute;
	left: -4rem;
	bottom: 25%;
	z-index: 10;
}
section.home .startraum .starthof  img.startdose {
	width: 7rem;
	height: auto;
	bottom: -2rem;
	left: 5rem;
	z-index: 20;
	position: absolute;
}
section.home .startraum .starthof.akt img.startdose{
	display: none;
}
section.home .startdose.akt img.over {
	margin-top: -20vw;
	margin-left: 5vw;
	animation: spray 4s infinite;
}
section.home .startraum .starthof .sprayflaeche {
	width: 52%;
	height: 18.5rem;
	bottom: 1rem;
	left: 1rem;
	background-color: transparent;
	position: absolute;
	display: none;
}
section.home .startraum .starthof.akt .sprayflaeche {
	display: block;
}
section.home .startraum .starthof #dose{
	display: none;
}
section.home .startraum .starthof #dose.akt{
	width: 5rem;
	height: auto;
	position:absolute;
	display: block;
}








section.home .startstuehle {
	margin-top: -4rem;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
}
section.home .startstuehle .spalte {
	display: inline-block;
	order: 1;
	width: 30% !important;
	margin-right: 6rem;
}
section.home .startstuehle img {
	width: 25%;
	height: auto;
	order: 2;
}
section.home .startbuehne {
	margin-top: 5vw;
	position: relative;
}
section.home .startbuehne .spalte {
	float: left;
	display: inline-block;
	order: 1;
}
section.home .startbuehne img {
	width: 45%;
	height: auto;
	margin-top: 15%;
	order: 2;
	margin-right: 6rem;
}
section.home .startbuehne a:hover {
	text-decoration: none;
}
section.home .startbuehne .bildaction {
	top: 55%;
	right: 50%;
	position: absolute;
}
section.home .startkuso {
	margin-top: 2rem;
	position: relative;
}
section.home .startkuso img {
	width: 45%;
	height: auto;
	float: left;
}
section.home .startkuso .spalte {
	margin-top: 8vw;
	float: right;
}
section.home .startkuso .bildaction {
	top: 35%;
	left: 40%;
	position: absolute;
}
section.home .startakteure {
	margin-top: 0;
	position: relative;
}
section.home .startakteure img {
	width: 45%;
	height: auto;
	float: right;
	order: 2;
	margin-top: -5%;
}
section.home .startakteure .spalte {
	margin-top: 5vw;
	order: 1;
}
section.home .startakteure .bildaction {
	top: 10%;
	right: 45%;
	position: absolute;
}
section.home .startstiftung .spalte:last-of-type {
	margin-top: 4.5rem;
	margin-right: 10%;
}
section.home .starthandy {
	margin-top: 5vw;
}
section.home .starthandy img {
	width: 35%;
	height: auto;
	float: left;
	margin-left: 20%;
}
section.home .starthandy .spalte {
	margin-top: 2rem;
	float: right;
}
section.home .startaktuell {
	margin-top: -4rem;
	margin-bottom: 4rem;
}
/*
###################### programm ######################
*/
.veranst_highlight {
	position: relative;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	height: calc(100vh - 8.8rem);
	max-height: 1000px;
	display: inline-block;
}
.veranst_highlight ul, .veranst_highlight li, .lSSlideOuter, .lSSlideWrapper {
	height: 100%;
}
.veranst_highlight li {
	position: relative;
}
.veranst_highlight li .startbild {
	position: absolute;
	width: 50%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	background-size: cover;
	background-position: center center;
	display: block;
	z-index: 0;
}
.veranst_high_info {
	overflow: visible;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-content: center;
	color: #000000;
	height: calc(100% - 8rem);
	width: 80%;
	margin-left: 7%;
	margin-top: 4rem;
	z-index: 10;
	position: relative;
}
.veranst_high_info .info {
	font-size: 1.2rem;
	line-height: 1.2em;
	display: inline-block;
	text-align: left;
	position: relative;
	text-transform: lowercase;
	width: calc(50% - 2rem);
	margin-bottom: 3rem;
}
.veranst_high_info .rubrik {
	float: right;
}
.veranst_high_info h2.interpret {
	width: calc(50% - 2rem);
	text-align: left;
	display: inline-block;
	font-weight: normal;
	font-style: normal;
	flex-grow: 4;
	justify-content: flex-start;
	align-items: flex-start;
}
.veranst_high_info h2.lenclass1 {
	font-size: 6rem;
}
.veranst_high_info h2.lenclass2 {
	font-size: 5em;
}
.veranst_high_info h2.lenclass3 {
	font-size: 4rem;
}
.veranst_high_info .link {
	display: inline-block;
	text-align: left;
	width: auto;
	margin-top: 3rem;
}
.lSAction > .lSNext, .lSAction > .lSPrev {
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 1.5rem;
	width: 2rem;
	height: 2rem;
	border: 1px solid #000000;
	border-radius: 3rem;
	opacity: 1;
}
.lSAction > .lSNext:hover, .lSAction > .lSPrev:hover {
	background-color: #EAEF8F;
}
.lSAction > .lSNext {
	background-image: url(../images/pfeil.svg);
}
.lSAction > .lSPrev {
	background-image: url(../images/pfeil.svg);
	transform: rotate(180deg);
}
.lSSlideOuter .lSPager.lSpg {
	display: none;
}















/*
###################### projekte ######################
*/
.news {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 4rem;
}
.news_list {
	width: calc(33% - 2rem);
	position: relative;
	font-size: 0;
	margin-bottom: 3rem;
	display: inline-block;
}
.news_list img {
	width: 100%;
	height: auto;
	z-index: 0;
}
.news_list h5 {
	margin-bottom: 3rem;
	margin-top: 1rem;
	font-size: 2rem;
}
.news_list h5 i {
	font-family: 'Thin';
}
.news_list .button {
	bottom: 0;
	position: absolute;
}
.klappinhalt div.more.news_all, .news_text {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
}
.news_einzel h2 {
	margin-bottom: 3rem;
	text-transform: none;
}
.news_einzel h2 i {
	font-family: 'Thin';
}
.news_einzel .galerie {
	margin-top: 3rem;
}
.news_einzel .galerie_image {
	width: calc(33% - 2rem) !important;
	margin-bottom: 3em;
}
.news_einzel .galerie_image img {
	margin-bottom: 0;
	width: 100%;
	height: auto;
}


/*
###################### newsletter ######################
*/
.newsl {
	margin-top: 4rem;
	margin-bottom: 4rem;
}
.newsl_anm {
	margin-bottom: 3rem;
}
.newsl_anm img {
	width: 60%;
	margin-top: 6rem;
	margin-left: 10%;
	height: auto;
}
.newsl_vortext {
	margin-bottom: 2rem;
}
.newsl_anm .formular input[type='submit'] {
	min-width: 50%;
}
.newsl .formular input[type='submit'] {
	min-width: 25%;
}








/*
###################### ansprechpartner ######################
*/
.ansprechp {
	width: calc(33% - 2rem);
	position: relative;
	font-size: 0;
	margin-bottom: 3rem;
}
.ansprechp img {
	width: 100%;
	height: auto;
	z-index: 0;
}
.ansprechp .ansprechinfo {
	z-index: 2;
	position: absolute;
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	color: #ffffff;
	right: 0;
	bottom: 0;
	left: 0;
	font-size: 1rem;
}
.kontrast .ansprechp .ansprechinfo {
	background-color: #ffffff;
	color: #000000;
	border: 1px solid #000000;
}
.ansprechp .ansprechinfo a, .ansprechp .ansprechinfo a:visited {
	color: #ffffff;
}
.kontrast .ansprechp .ansprechinfo a, .kontrast .ansprechp .ansprechinfo a:visited {
	color: #000000;
}
.ansprechp .ansprechinfo h4, .ansprechp .ansprechinfo h5, .ansprechp .ansprechinfo h6 {
	padding-bottom: 1rem;
	padding-left: 1rem;
	padding-right: 1rem;
}
.ansprechp .ansprechinfo h4 {
	font-size: 3rem;
}
.ansprechp .ansprechinfo h5 {
	
}
.ansprechp .ansprechinfo h6 {
	font-size: 0.8rem;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	line-height: 1.25em;
}
.ansprechp .ansprechinfo .ansprechmehr {
	overflow: hidden;
	max-height: 0;
	transition: max-height 0.25s ease-in-out;
}
.ansprechp:hover .ansprechinfo .ansprechmehr, .ansprechp .ansprechinfo .ansprechmehr.akt {
	max-height: 6rem;
	transition: max-height 0.25s ease-in-out;
}
.ansprechp .ansprechinfo h6 a {
	display: inline-block;
}
.ansprechp .ansprechinfo h6 a:last-of-type {
	float: right;
}

.ansprechp a[href^="mailto"]::before {
	background-image: url('/images/email_w.svg');
}
.ansprechp a[href^="tel"]::before {
	background-image: url('/images/telefon_w.svg');
}
/*
###################### filter ######################
*/
#filteranker {
	position: absolute;
	top: -2.8rem;
	width: 0;
	height: 0;
	font-size: 0;
}
.filter {
	background-color: #183547;
	width: 100%;
	text-align: center;
	position: absolute;
	z-index: 100;
}
.filter.akt {
	position: fixed;
	top: 2.8rem;
	max-height: 80vh;
	overflow-x: auto;
}
.filter .cont {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.filter h3 {
	color: #ffffff;
	font-weight: normal;
	font-style: normal;
	line-height: 2em;
	width: auto;
	position: relative;
	display: inline-block;
}
.filter h3 img {
	height: 2rem;
	width: auto;
	margin-top: 0.75rem;
	cursor: pointer;
	margin-bottom: -0.2rem;
}
.filter .plusbtn {
	border-color: #ffffff;
	display: inline-block;
	margin-top: 1.1rem;
	margin-left: 1rem;
	width: 1.8rem;
	height: 1.8rem;
	background-image: url('/images/x_w.svg');
}
.filter .plusbtn:hover {
	background-color: #ffffff;
	background-image: url('/images/x.svg');
}
.kontrast .filter .plusbtn {
	background-image: url('/images/x.svg');
}
.kontrast .filter .plusbtn.akt, .kontrast .filter .plusbtn:hover {
	background-image: url('/images/x_w.svg');
	background-color: #183547;
}
.filteranzeige {
	width: 100%;
	color: #ffffff;
	text-transform: lowercase;
	text-align: center;
	font-size: 0;
	overflow: visible;
}
.filteranzeige .plusbtn {
	height: 2rem;
	margin-right: 0.5rem;
	margin-top: 0;
	float: none;
	display: inline-block;
	margin-left: 0;
	width: 2rem;
}
.filterthema, .filterdatum {
	max-height: 0;
	overflow: hidden;
	display: inline-block;
	transition: max-height 0.25s ease-in-out;
	font-size: 1rem;
}
.filterthema.akt, .filterdatum.akt {
	max-height: 1000px;
	transition: max-height 0.25s ease-in-out;
	font-size: 1rem;
}
.filter h3.akt .plusbtn, .filteranzeige .plusbtn {
	transform: rotate(45deg);
}
.filterthema {
	width: 100%;
}
/*
	width: 50%;
	max-width: 400px;
*/
.filterthema span {
	border-radius: 3rem;
	border: 1px solid #ffffff;
	line-height: 1.8rem;
	display: inline-block;
	padding-right: 1rem;
	padding-left: 1rem;
	margin-bottom: 1rem;
	margin-right: 0.5rem;
	cursor: pointer;
}
.filterthema span.akt {
	color: #183547;
	background-color: #ffffff;
}
.filtersparte, .filterlocation {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.filtersparte, .filterlocation, .filterview, .filtersuche {
	margin-top: 0.5rem;
	text-align: left;
}
.filtersuche {
	position: relative;
	width: calc(100% - 0.5rem);
	margin-bottom: 1rem;
	margin-right: auto;
	margin-left: auto;
	display: inline-block;
}
.filtersuche input {
	width: 100%;
	font-family: 'MyFont';
	font-size: 1.8rem;
	border-radius: 3rem;
	padding: 0.5rem 1rem;
	border: 1px solid #000000;
	text-align: center;
	outline: none;
}
.filtersuche button {
	position: absolute;
	top: 0.5rem;
	right: 1rem;
	border-style: none;
	background-color: transparent;
	padding-right: 0;
	padding-left: 0;
}
.filtersuche button img {
	margin-top: 0.2rem;
	height: 1.8rem;
	width: auto;
}
.filterdatum {
	width: 50%;
	max-width: 400px;
	position: absolute;
	right: 0;
	z-index: 100;
	background-color: #183547;
	padding-right: 1rem;
	padding-left: 1rem;
}
.filterdatum table {
	width: 100%;
	margin-top: 0.5rem;
	margin-bottom: 1rem;
}
.filterdatum th {
	font-size: 1.5rem;
}
.filterdatum th, .filterdatum td {
	text-align: center;
	line-height: 2.5rem;
}
.filterdatum span.prev, .filterdatum span.next {
	content: '';
	display: inline-block;
	background-image: url('/images/pfeil_w.svg');
	background-size: contain;
	background-repeat: no-repeat;
	width: 1.55rem;
	height: 1rem;
	top: 0.7rem;
	cursor: pointer;
}
.filterdatum span.prev {
	transform: rotate(180deg);
}
.filterdatum span.heute, .filterdatum span.term {
	border-radius: 3rem;
}
.filterdatum span {
	display: inline-block;
	width: 2rem;
	line-height: 2rem;
}
.filterdatum span.heute {
	border: 1px solid #ffffff;
}
.filterdatum span.term {
	background-color: #526875;
	cursor: pointer;
}
.filterdatum td.inakt {
	color: #526875;
}










/*
###################### kulturkalender ######################
*/
.kulturkalender, #kulturkalender {
	width: 100%;
}
.kulturkalender .filter {
	position: relative;
}
.kalender {
	width: 100%;
	font-size: 0;
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
}
.kalenderdatum {
	width: calc(50% - 1px);
	text-transform: lowercase;
	border-right: 1px solid #000000;
}
.kalenderdatum > table {
	width: 100%;
}
.kalenderdatum td {
	text-align: center;
	font-size: 1.5rem;
	line-height: 3em;
}
.kalenderdatum span.heute, .kalenderdatum span.term {
	border-radius: 3rem;
}
.kalenderdatum span {
	display: inline-block;
	width: 1.9em;
	line-height: 1.9em;
	color: #98a4ab;
}
.kalenderdatum span.term {
	color: #000000;
	cursor: pointer;
	font-weight: bold;
}
.kalenderdatum span.heute {
	background-color: #526875;
	color: #ffffff;
}
.kontrast .kalenderdatum span.heute {
	background-color: #ffffff;
	color: #000000;
	border: 1px solid #000000;
}
.kalenderdatum td.inakt {
	color: #F6F6F6;
}
.kalenderdatum th, .kalendertitel th {
	text-align: center;
	font-size: 2rem;
	line-height: 1.75em;
	text-transform: lowercase;
}
.kalenderdatum span.prev, .kalenderdatum span.next, .kalendertitel span.prev, .kalendertitel span.next {
	content: '';
	display: inline-block;
	background-image: url('/images/pfeil.svg');
	background-size: contain;
	background-repeat: no-repeat;
	width: 1em;
	height: 0.8em;
	top: 0.05em;
	cursor: pointer;
	position: relative;
}
.kalenderdatum span.prev, .kalendertitel span.prev {
	transform: rotate(180deg);
}
.kalenderliste {
	width: 50%;
	position: relative;
}
.kalendertitel th:first-of-type {
	text-align: left;
	padding-left: 1.5rem;
}
.kalendertitel th:last-of-type {
	text-align: right;
	padding-right: 1.5rem;
}
.kalendertitel {
	width: 100%;
	text-align: center;
	font-size: 2rem;
	line-height: 3.5rem;
	position: absolute;
}
.kalendertermine {
	position: absolute;
	top: 3.5rem;
	right: 0;
	left: 0;
	height: calc(100% - 3.5rem);
	overflow-y: auto;
}
.kalender_term {
	border-bottom: 1px solid #000000;
	padding: 0.75rem 1.5rem 1rem;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	font-size: 1rem;
}
.kalender_term .interpret h4 {
	font-size: 1.8rem;
	line-height: 1.2em;
	font-weight: bold;
	display: inline-block;
	text-align: left;
	position: relative;
}
.kalender_term .rubrik, .kalender_term .location {
	text-transform: lowercase;
	width: 49%;
	font-size: 1rem;
}
.kalender_term .rubrik {
	text-align: left;
}
.kalender_term .location {
	text-align: right;
}
.kalender_term .interpret {
	width: 100%;
	margin-bottom: 1rem;
	margin-top: 0.5rem;
}
.kalender_term .infos {
	text-transform: lowercase;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.kalender_term .marker {
	width: 2rem;
	height: 2rem;
	background-image: url(/images/marker.svg);
	background-size: 100%;
	color: #ffffff;
	text-align: center;
	display: inline-block;
	position: relative;
	line-height: 2rem;
}
.kalender_term .marker span {
	line-height: 1.6rem;
	font-size: 0.8rem;
	transform: rotate(-15deg);
	display: inline-block;
	text-align: center;
	width: 100%;
	position: relative;
	top: -0.2rem;
}
.kalender_term .hinweis {
	width: 100%;
	text-align: center;
	display: inline-block;
	line-height: 2rem;
	opacity: 1;
	color: #ffffff;
	background-color: #00323F;
	margin-top: 1rem;
	text-transform: lowercase;
}
.kontrast .kalender_term .hinweis {
	color: #000000;
	background-color: #ffffff;
	border: 1px solid #000000;
}
.kalender_term .details {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	text-align: left;
	position: relative;
	width: 100%;
	overflow: hidden;
	max-height: 20rem;
	transition: max-height 0.4s ease-in-out;
}
.kalender_term .details .kurz {
	width: calc(100% - 18rem);
	display: inline-block;
	margin-top: 1rem;
	padding-bottom: 1rem;
}
.kalender_term .details .info {
	width: 17rem;
	display: inline-block;
	margin-top: 1rem;
	padding-bottom: 1rem;
}
.kalender_term .details pre {
	background-position: center center;
	background-size: cover;
	width: 6rem;
	height: 6rem;
	display: block;
	float: left;
	margin-right: 1rem;
	margin-top: 0.35rem;
}
.kalender_term .details pre img {
	width: 100%;
	height: auto;
}
.kalender_term .details p {
	text-align: left;
}
.kalender_term .details.mehr {
	max-height: 0;
	transition: max-height 0.25s ease-in-out;
}
.kalender_term.akt .plusbtn {
	transform: rotate(45deg);
	transition: transform 0.2s ease-in-out;
	background-color: #EAEF8F;
}
.kontrast .kalender_term.akt .plusbtn {
	background-color: #ffffff;
}
.kalender_term .plusbtn {
	width: 2rem;
	height: 2rem;
	margin-top: -0;
}
/*
###################### veranstaltungen ######################
*/
.veranstaltung_bild.veranstaltung_space, .veranstaltung_liste.veranstaltung_space {
	margin-top: 4rem;
}
.veranstaltung_bild.veranstaltung_space {
	margin-bottom: 4rem;
}
.veranstaltung, .veranstaltung_liste {
	width: 100%;
}
.veranstaltung h3 {
	width: 100%;
	text-align: center;
	text-transform: lowercase;
	font-weight: normal;
	font-style: normal;
	line-height: 2em;
}
.veranstaltung .button, .veranstaltung a.button {
	width: 6rem;
}
.veranstaltung .plusbtn {
	width: 2rem;
	height: 2rem;
	margin-top: -0;
}
.veranstaltung .akt .plusbtn {
	transform: rotate(45deg);
	transition: transform 0.2s ease-in-out;
	background-color: #EAEF8F;
}
.veranst_list .datum, .veranst_list .interpret, .veranst_list .interpret h4, .veranst_bild .interpret h4 {
	font-size: 1.8rem;
	line-height: 1.2em;
	font-weight: bold;
	display: inline-block;
	text-align: left;
	position: relative;
}
.veranst_list .datum {
	text-transform: lowercase;
}
.veranst_list {
	border-top: 1px solid #000000;
	padding-top: 1rem;
	padding-bottom: 1rem;
}
.klappinhalt .veranst_list {
	border-top-style: none;
	padding-top: 0;
	padding-bottom: 0;
}
.klappinhalt .veranst_list .content {
	border-top: 1px solid #000000;
	padding-top: 1rem;
	padding-bottom: 1rem;
}
.ohne {
	border-top-style: none;
}
.veranst_list .cont {
	text-align: left;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.veranst_list .datum, .veranst_list .links {
	width: 8rem;
	order: 1;
}
.veranst_list .interpret {
	width: calc(100% - 32rem - 8rem - 4rem);
	order: 2;
}
.veranst_list .kurz {
	width: calc(100% - 32rem - 8rem - 4rem);
	order: 2;
}
.veranst_list .rubrik {
	text-transform: lowercase;
	width: 8rem;
	order: 3;
	text-align: right;
	line-height: 2rem;
}
.veranst_list .infos {
	text-transform: lowercase;
	width: 19.5rem;
	order: 4;
}
.veranst_list .info {
	align-items: flex-end;
	width: 19.5rem;
	float: right;
	order: 5;
	text-transform: lowercase;
}
.veranst_list .info p {
	width: auto;
}
.veranst_list .datum span {
	float: right;
}
.veranst_list h4 {
	width: auto;
}
.veranstaltung .marker {
	width: 2rem;
	height: 2rem;
	background-image: url(/images/marker.svg);
	background-size: 100%;
	color: #ffffff;
	text-align: center;
	display: inline-block;
	position: relative;
	line-height: 2rem;
}
.veranstaltung .marker span {
	line-height: 1.6rem;
	font-size: 0.8rem;
	transform: rotate(-15deg);
	display: inline-block;
	text-align: center;
	width: 100%;
	position: relative;
	top: -0.2rem;
}
.veranst_list .hinweis {
	width: 100%;
	text-align: center;
	display: inline-block;
	line-height: 2rem;
	opacity: 1;
	color: #ffffff;
	background-color: #00323F;
	margin-top: 1rem;
	text-transform: lowercase;
}
.kontrast .veranst_list .hinweis {
	color: #000000;
	background-color: #ffffff;
	border: 1px solid #000000;
}
.veranst_list .details {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	text-align: left;
	position: relative;
	width: 100%;
	overflow: hidden;
	max-height: 20rem;
	transition: max-height 0.4s ease-in-out;
	margin-top: 1rem;
	order: 5;
}
.veranst_list .details pre {
	background-position: center center;
	background-size: cover;
	width: 9rem;
	display: block;
	float: left;
	margin-right: 1rem;
}
.veranst_list .details pre img {
	width: 100%;
	height: auto;
}
.veranst_list .details p {
	text-align: left;
}
.veranst_list .details.mehr {
	max-height: 0;
	transition: max-height 0.25s ease-in-out;
}
.veranstaltung_bild {
	width: 100%;
}
.veranstaltung_bild .content {
	width: calc(100% - 2.5rem);
	max-width: calc(1400px - 2.5rem);
}
.veranst_bild {
	width: calc(33% - 2rem);
	margin-top: 2.5rem;
	position: relative;
	padding-bottom: 4rem;
}
.veranst_bild .startbild {
	height: calc((33vw - 3.33rem) * 0.6);
	background-position: center center;
	background-size: cover;
	position: relative;
	max-height: 300px;
}
.veranst_bild .startbild img {
	width: 2rem;
	height: auto;
	position: absolute;
	top: 0.5rem;
	left: 0.5rem;
}
.veranst_bild .startbild .hinweis {
	width: 100%;
	text-align: center;
	display: inline-block;
	line-height: 2rem;
	opacity: 1;
	color: #ffffff;
	background-color: #00323F;
	position: absolute;
	bottom: 0;
	text-transform: lowercase;
}
.kontrast .veranst_bild .startbild .hinweis {
	color: #000000;
	background-color: #ffffff;
	border: 1px solid #000000;
}
.veranst_bild .datum, .veranst_bild .rubrik {
	font-size: 1rem;
	line-height: 1.2em;
	display: inline-block;
	text-align: left;
	text-transform: lowercase;
	margin-top: 1rem;
}
.veranst_bild .datum span {
	margin-left: 0.5rem;
}
.veranst_bild .rubrik {
	float: right;
}
.veranst_bild .topinfo, .veranst_bild .info {
	width: 100%;
}
.veranst_bild .topinfo {
	display: none;
}
.veranst_bild .info {
	padding: 0;
	transition: padding 0.2s ease-in-out;
}
.veranst_bild .interpret {
	margin-top: 0.5rem;
	padding: 0;
	transition: padding 0.2s ease-in-out;
	display: inline-block;
	text-align: left;
}
.veranst_bild .interpret h4 {
	text-align: left;
}
.veranst_bild .infos {
	position: absolute;
	bottom: 1rem;
	padding: 0;
	transition: padding 0.2s ease-in-out;
}
.veranst_bild:hover .info, .veranst_bild:hover .interpret, .veranst_bild:hover .infos {
	padding-right: 1rem;
	padding-left: 1rem;
	transition: padding 0.2s ease-in-out, background-color 0.2s ease-in-out;
}
/*
###################### einzelveranstaltung ######################
*/
.v_jump {
	background-color: #ffffff;
	display: inline-block;
	width: 100%;
	position: fixed;
	top: 2.8rem;
	z-index: 200;
	right: 0;
	left: 0;
}
.klappinhalt .v_jump {
	position: relative;
}
a.v_prev, a.v_prev:visited, a.v_next, a.v_next:visited {
	font-size: 1.75rem;
	color: #000000;
	max-width: 10rem;
}
a.v_prev {
	margin-left: 1.25em;
}
a.v_next {
	margin-right: 1.25em;
}
a.v_prev::before, a.v_next::after {
	content: '';
	display: inline-block;
	background-image: url('/images/pfeil.svg');
	background-size: contain;
	background-repeat: no-repeat;
	width: 1em;
	height: 0.6em;
	position: absolute;
	top: 0.45em;
}
a.v_prev::before {
	transform: rotate(180deg);
	left: 0;
	background-position: left center;
}
a.v_next::after {
	right: 0;
	background-position: right center;
}
.veranst {
	width: 100%;
	position: relative;
	padding-top: 2rem;
}
.veranst {
	padding-bottom: 2rem;
}
.veranst .startbild {
	width: 50%;
	display: inline-block;
	order: 2;
	z-index: 0;
	position: relative;
}
.veranst .startbild {
	width: 50%;
}
.veranst .startbild img, .veranst .bilder img {
	width: 100%;
	height: auto;
}
.veranst .startbild img.kpass, .veranst .bilder img.kpass {
	width: 2rem;
	height: auto;
	position: absolute;
	top: 0.5rem;
	left: 0.5rem;
}
.veranst .bilder .button {
	float: right;
	margin-right: 0;
	width: auto;
}
.veranst .bild {
	margin-bottom: 1rem;
}
.veranst .bild p {
	width: auto;
}
.veranst .titel, .veranst .termine {
	display: inline-block;
	position: relative;
}
.veranst .titel {
	width: calc(50% - 5rem);
	order: 1;
	z-index: 1;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-end;
}
.veranst .titel h1 {
	width: 100%;
	margin-bottom: 0;
	text-transform: none;
}
.veranst .titel h1, .veranst .titel h2 {
	margin-top: 0.1em;
	font-weight: normal;
	font-style: normal;
}
.veranst .titel h2 {
	font-family: Thin;
	font-style: italic;
	text-transform: none;
}
.veranst .titel h1.lenclass1 {
	font-size: 6em;
}
.veranst .titel h2.lenclass1 {
	font-size: 4.2em;
}
.veranst .titel h1.lenclass2 {
	font-size: 4.25em;
}
.veranst .titel h2.lenclass2 {
	font-size: 3em;
}
.veranst .titel h1.lenclass3 {
	font-size: 3.5rem;
}
.veranst .titel h2.lenclass3 {
	font-size: 2.5rem;
}
.veranst .termine {
	width: calc(33% - 5rem);
	order: 3;
	text-transform: lowercase;
	margin-top: 2rem;
}
.veranst .termine .rubrik {
	padding-bottom: 0.5rem;
}
.veranst .termine .termin, .veranst .termine .info {
	border-top: 1px solid #000000;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}
.veranst .termine .rubrik, .veranst .termine .termin, .veranst .termine .info {
	padding-left: 0.5rem;
	padding-right: 0.5rem;
}
.veranst .termine .teilen a[href^="mailto"]::before {
	
}
.veranst .termine .teilen a[href^="mailto"]::before {
	display: none;
}
.veranst .termine .teilen p {
	display: flex;
	justify-content: space-between;
	width: 100%;
}
.veranst .termine .teilen a {
	display: inline;
	margin-top: 0.5rem;
}
.veranst .termine .teilen a, .veranst .termine .teilen a img {
	width: 1rem;
	height: 1rem;
}
.veranst .termine span {
	float: right;
}
.veranst .termine .datum {
	font-size: 2rem;
	margin-bottom: 0.5rem;
}
.veranst .termine .datum::after {
	width: 100%;
	height: 0;
	content: "";
	display: table;
	clear: both;	
}
.veranst .termine .datum .marker {
	display: inline-block;
	font-size: 2rem;
	line-height: 2rem;
	position: relative;
	top: -0.5rem;
	margin-left: 0.5rem;
}
.veranst .termine .datum .marker p {
	font-size: 0.7rem;
	line-height: 1.9rem;
}
.veranst .termine a {
	width: 6rem;
	margin-right: 0;
	top: -0.2rem;
	display: inline-block;
	position: relative;
}
.veranst .hinweis {
	width: 100%;
	text-align: center;
	display: inline-block;
	line-height: 2rem;
	opacity: 1;
	color: #ffffff;
	background-color: #00323F;
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}
.kontrast .veranst .hinweis {
	color: #000000;
	background-color: #ffffff;
	border: 1px solid #000000;
}
.veranst .infos {
	width: calc(50% - 5rem);
	display: inline-block;
	margin-right: 5rem;
	order: 4;
	margin-top: 2rem;
}
img.veranst_logo {
	min-height: 1rem;
	max-height: 80px;
	max-width: 200px;;
}
.sponsoren {
	width: calc(25% - 3rem);
	display: inline-block;
	margin-top: 2rem;
}
.sponsoren div {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: baseline;
	width: 100%;
}
.sponsoren h6 {
	text-transform: lowercase;
	margin-bottom: 1rem;
	display: inline-block;
}
.sponsoren span {
	display: inline-block;
	margin-right: 0.5rem;
	margin-bottom: 0.5rem;
}
/*
###################### navigation ######################
*/
.tools {
	display: inline-block;
	float: right;
	position: relative;
}
.tools a {
	display: inline-block;
	margin-left: 1rem;
	margin-top: 0.65rem;
}
.tools img {
	height: 1.35rem;
	width: auto;
}
.nav_icon, .nav_close {
	display: none;
}
nav {
	text-align: left;
	width: calc(100% - 250px);
	max-width: 35rem;
	display: block;
	z-index: 1000;
	float: right;
	position: relative;
	font-size: 1rem;
}
.mobilmen {
	display: none;
}
.navfuss {
	display: none;
}
.navsuche, nav ul li span {
	display: none;
}
nav ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}
/* Hauptmenue */
nav ul li {
	list-style: none;
	position: relative;
	text-align: left;
	padding: 0;
	flex-grow: 1;
	margin: 0 0 0 1.5rem;
	font-size: 1.25rem;
	font-weight: normal;
	font-style: normal;
	line-height: 2.8rem;
	text-transform: lowercase;
}
nav ul li a, nav ul li a:visited {
	color: #000000;
	text-decoration: none;
	margin: 0 2rem 0 0;
	padding-top: 0;
	padding-bottom: 0;
	white-space: nowrap;
	display: inline-block;
	text-align: left;
	line-height: 2rem;
}
a.desktopmen {
	margin-right: 0!important;
}
nav ul li a img {
	height: 1rem;
	width: auto;
	display: inline;
}
nav ul li a:hover {
	color: #183547;
}
nav ul li.aktuell a, nav ul li.aktuell div {
	font-weight: bold;
}
nav ul li ul {
	position: absolute;
	display: none;
	margin: 0;
	top: 2.8rem;
	left: -0.4rem;
	background-color: #ffffff;
	width: auto;
	max-height: calc(100vh - 100px);
	overflow-y: auto;
	overflow-x: hidden;
	padding-top: 0.4rem;
	padding-bottom: 0.4rem;
}
nav ul li:hover ul {
	display: block;
}
nav ul li ul li {
	float: none;
	margin: 0 0.4rem;
	font-size: 1rem;
	font-weight: normal;
	font-style: normal;
}
nav ul li ul li a, nav ul li.aktuell ul li a, nav ul li ul li a:visited {
	padding: 0;
	width: 100%;
	margin: 0;
	display: block;
	text-decoration: none;
	font-weight: normal;
	font-style: normal;
}
nav ul li ul li.aktuell a, nav ul li ul li a:hover {
	font-weight: bold;
}
/*
###################### fuß ######################
*/
#totop {
	top: calc(150vh);
	right: 2rem;
	content: '';
	display: inline-block;
	background-image: url('/images/pfeil.svg');
	background-size: 75%;
	background-position: center;
	background-repeat: no-repeat;
	transform: rotate(-90deg);
	width: 2rem;
	height: 2rem;
	cursor: pointer;
	background-color: #e9eb7f;
	border: 1px solid #000000;
	border-radius: 3rem;
	position: absolute;
	opacity: 0;
	transition: opacity 1s;
	z-index: 200;
}
.kontrast #totop {
	background-color: #ffffff;
}
#totop.akt {
	top: calc(100vh - 4rem);
	position: fixed;
	opacity: 1;
	transition: opacity 1s;
}
footer {
	font-size: 0.7em;
	clear: both;
	width: 100%;
	margin: 0;
	text-align: left;
	padding: 2em 0;
	float: none;
	color: #000000;
	background-color: #ffffff;
	border-top: 1px solid #000000;
}
img.fusslogo {
	height: 1.75rem;
	width: auto;
	margin-top: 2rem;
	margin-bottom: 1rem;
}
footer input[type="text"] {
	width: 100%;
	text-align: center;
	font-size: 1rem;
	margin-bottom: 0.6rem;
	margin-top: 0.4rem;
}
footer input[type="submit"] {
	text-align: left;
	float: left;
	padding-left: 4rem;
	padding-right: 4rem;
}
footer .content {
	
}
footer .ganz {
	order: 1;
}
footer .fusskontakt, footer .fusscopy {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
footer .fusskontakt a {
	text-decoration: none;
}
footer .fusskontakt {
	order: 2;
}
footer .fusscopy {
	margin-top: -1rem;
	order: 4;
}
footer .fuss_newsl {
	order: 3;
	text-transform: lowercase;
}
footer .fuss_newsl a {
	float: right;
	margin-left: 1rem;
}
footer .fuss_newsl img {
	width: 2rem;
	height: 2rem;
}
/*
###################### karte ######################
*/
div.map {
	width: 100%;
	height: 60vh;
	max-height: 450px;
	margin: 0;
}
.map_hinweis, .map:hover .map_hinweis {
	background-color: #ffffff !important;
}
.map_hinweis img {
	width: 100% !important;
	height: auto !important;
	z-index: 1;
}
.map_hinweis p {
	z-index: 10;
	font-size: 0.7rem;
}
/*
youtube
*/
.youtube {
	width: 100%;
	z-index: 1;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
}
.youtube img.youtube_image {
	width: 100%;
	height: auto;
}
.youtube img.youtube_play {
	position: absolute;
	z-index: 2;
	top: calc(50% - 50px);
	left: calc(50% - 50px);
	width: 100px;
	height: 100px;
}
.youtube iframe {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 10;
	display: none;
}
.youtube .youtube_hinweis {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 5;
	background-color: rgba(0, 0, 0, 0.8);
	justify-content: center;
	align-items: center;
	display: none;
}
.youtube .youtube_hinweis p {
	color: #ffffff;
	width: 100%;
	text-align: center;
}
.youtube:hover .youtube_hinweis {
	display: flex;
	cursor: pointer;
}
/*
###################### formulare ######################
*/
input {
	outline: none;
}
.formular {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.formular a {
	text-decoration: underline;
}
.formular form {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.formular div.normal, .formular div.breit {
	display: inline-block;
	margin-bottom: 2rem;
	font: 0.9rem/1em MyFont;
	text-align: left;
}
.formular div.normal {
	width: calc(50% - 3rem);
}
.formular div.breit {
	width: 100%;
}
.formular label {
	width: 100%;
	display: inline-block;
	color: #333333;
	font-size: 0.7rem;
	line-height: 1em;
	margin-bottom: 3px;
	padding-right: 10px;
}
.formular label.pflicht::after {
	content: ' *';
}
.formular span {
	margin-right: 0.7em;
	white-space: nowrap;
	margin-left: 0.7em;
	font-size: 0.9em;
}
.formular label span {
	margin-left: 0.3em;
}
.formular input, .formular select, .formular textarea {
	margin: 0;
	padding: 2px 5px;
	border: 1px solid #949596;
	font-family: 'MyFont';
	font-size: 1.2rem;
	padding: 0.5rem 1rem;
	border: 1px solid #000000;
	text-align: left;
	outline: none;
}
.formular .standard, .formular .lang {
	width: 100%;
}
.formular .kurz {
	width: 27%;
}
.formular .mittel {
	width: 67%;
}
.formular .inputgroup {
	line-height: 1.5em;
}
.formular input[type='checkbox'], .formular input[type='radio'] {
	margin-right: 1rem;
	float: left;
	font: inherit;
	width: 1em;
	height: 1em;
	border: 1px solid #000000;
	transform: translateY(-0.075em);
	margin-top: 0.25rem;
}
.formular input[type='submit'], .formular input[type='button'], .formular button, .sendbutton, a.sendbutton, a.sendbutton:visited, .fuss_newsl input[type='submit'] {
	display: inline-block;
	text-align: center;
	padding-right: 2rem;
	padding-left: 2rem;
	font: 1.1rem/1.6rem MyFont, Helvetica, Arial, Verdana, sans-serif;
	cursor: pointer;
	background-color: #e9eb7f;
	color: #000000;
	border: 1px solid #000000;
	border-radius: 1.6rem;
	text-transform: lowercase;
	min-width: 50%;
}
.kontrast .formular input[type='submit'], .kontrast .formular input[type='button'], .kontrast .formular button, .kontrast .sendbutton, .kontrast a.sendbutton, .kontrast a.sendbutton:visited, .kontrast .fuss_newsl input[type='submit'] {
	background-color: #ffffff;
}
.formularfehler {
	background-color: #f7f8be;
	padding: 5px;
}
/*
############### suche ###############
*/
.textsuche {
	width: 100%;
}
.textsuche h6 {
	margin-bottom: 0.5rem;
}
.textsuche .filtersuche {
	margin-left: 0;
	margin-top: 4rem;
	width: auto;
	margin-bottom: 3rem;
}
.textsuche .filtersuche button img {
	margin-top: 0;
	height: 1.8rem;
	width: auto;
}
.textsuche .suchfehler {
	width: 100%;
	padding-top: 2rem;
	padding-bottom: 2rem;
	position: relative;
}
.textsuche .filtersuche input {
	font-size: 1.8rem;
	text-align: left;
	padding-left: 1rem;
}
.topsuche {
	position: absolute;
	right: 3rem;
	top: 3rem;
	display: none;
}
.topsuche.akt {
	display: inline-block;
}
.topsuche input {
	width: 20rem;
	font-family: 'MyFont';
	font-size: 1.2rem;
	border-radius: 3rem;
	padding: 0.5rem 1rem;
	border: 1px solid #000000;
	text-align: left;
	outline: none;
}
.topsuche button {
	position: absolute;
	top: 0.5rem;
	right: 0.35rem;
	border-style: none;
	background-color: transparent;
	padding-right: 0;
	padding-left: 0;
}
.topsuche button img {
	margin-top: 0;
	height: 1.35rem;
	width: auto;
}
/*
############### 1440 ###############
*/
@media(max-width: 1440px) {
	html {
		font-size: 18px;
	}
	.id1 img {
		height: 250px;
		right: 5vw;
		top: -20vw;
	}
	.kopf h4 {
		width: 80%;
	}
	.kopf div.einzelblock {
		width: 80%;
	}
	section.home .startetage img {
		margin-top: -10rem;
	}
	.startmarker {
		right: 15%;
		bottom: 12%;
	}
	.home.kopf img.vogel {
		width: 150px;
	}
	.p_ogramm_kultur_kalender.kopf img {
		width: 45%;
		margin-left: 50%;
	}
	.haus.kopf img {
		margin-left: 40%;
		margin-top: -8rem;
		margin-bottom: -16rem;
	}
	.veranst_high_info h2.lenclass1 {
		font-size: 5rem;
	}
	.veranst_high_info h2.lenclass2 {
		font-size: 4em;
	}
	.veranst_high_info h2.lenclass3 {
		font-size: 3rem;
	}
}
/*
############### 1300 ###############
*/
@media(max-width: 1300px) {
	html {
		font-size: 16px;
	}
	.kopf h1 {
		line-height: 1em;
	}
	.home.kopf h1 {
		font-size: 7rem;
	}
	.startmarker {
		right: 15%;
		bottom: 10%;
	}
	.home.kopf img.vogel {
		width: 120px;
	}
	section.home .startetage img {
		margin-top: -9rem;
	}
	section.home .spalte {
		width: calc(50% - 2rem);
	}
	section.home .startbuehne img {
		width: 40%;
		margin-right: 4rem;
	}
	section.home .startstiftung {
		margin-top: 4rem;
	}
	section.home .startstiftung .spalte:last-of-type {
		margin-right: 0;
		margin-top: 0;
	}
	section.home .startbuehne .bildaction {
		right: 40%;
	}
	section.home .starthandy img {
		margin-left: 0;
	}
	section.home .startaktuell .spalte:first-of-type {
		order: 2;
	}
	section.home .startaktuell .spalte:last-of-type {
		order: 1;
	}
	.veranst_list .datum, .veranst_list .links {
		width: 10rem;
	}
	.veranst_list .interpret {
		width: calc(100% - 40rem - 4rem);
	}
	.veranst_list .rechts, .veranst_list .rubrik {
		width: 9.5rem;
	}
	.veranst .termine {
		width: calc(40% - 5rem);
	}
	.veranst .titel h1.lenclass1 {
		font-size: 6em;
	}
	.veranst .titel h2.lenclass1 {
		font-size: 4.75em;
	}
	.veranst .titel h1.lenclass2 {
		font-size: 4em;
	}
	.veranst .titel h2.lenclass2 {
		font-size: 3.25em;
	}
	.veranst .titel h1.lenclass3 {
		font-size: 3.5rem;
	}
	.veranst .titel h2.lenclass3 {
		font-size: 3rem;
	}
	.veranst_high_info h2.lenclass1 {
		font-size: 4rem;
	}
	.veranst_high_info h2.lenclass2 {
		font-size: 3.25em;
	}
	.veranst_high_info h2.lenclass3 {
		font-size: 2.25rem;
	}
}
/*
############### 1100 ###############
*/
@media(max-width: 1100px) {
	html {
	}
	.kopf div.einzelblock, .kopf div.spaltenblock {
		width: 90%;
	}
	.home.kopf {
	}
	.home.kopf a, .home.kopf a.button {
		position: relative;
		margin-top: 4rem;
	}
	.p_ogramm_kultur_kalender.kopf  h1 {
		width: 95%;
	}
	.se_vice.kopf img {
		margin-bottom: -8rem;
	}
	.haus.kopf img {
		margin-left: 45%;
		margin-top: -8rem;
		margin-bottom: -16rem;
	}
	.ko_takt.kopf div.spaltenblock {
		width: 80%;
	}
	section.home .startraum .starthof {
		margin-top: 5rem;
	}
	section.home .startraum .starthof .sprayflaeche {
		height: 14.5rem;
		left: 0.7rem;
	}
	section.home .startstuehle {
		margin-top: 2rem;
	}
	section.home .startstuehle img {
		margin-bottom: 2rem;
	}
	section.home .startaktuell {
		margin-top: -1rem;
	}
	.veranst .titel h1.lenclass1 {
		font-size: 4em;
	}
	.veranst .titel h2.lenclass1 {
		font-size: 2.8em;
	}
	.veranst .titel h1.lenclass2 {
		font-size: 2.5em;
	}
	.veranst .titel h2.lenclass2 {
		font-size: 1.8em;
	}
	.veranst .titel h1.lenclass3 {
		font-size: 2.1rem;
	}
	.veranst .titel h2.lenclass3 {
		font-size: 1.5rem;
	}
	.kalender_term .details .kurz {
		width: 100%;
		order: 2;
	}
	.kalender_term .details .info {
		width: 100%;
		order: 1;
		margin-bottom: 0;
	}
	.ansprechp {
		width: calc(50% - 2rem);
	}
	.sponspartn .galerie_image {
		width: calc(33% - 1rem);
	}
	.sponspartn .galerie_image img {
		max-width: 100%;
	}
}
/*
############### 1000 ###############
*/
@media(max-width: 1000px) {
	html {
		font-size: 18px;
	}
	h1 {
		font-size: 5.5rem;
	}
	h2 {
		font-size: 2.2rem;
	}
	h3 {
		font-size: 1.65rem;
	}
	.kopf h4 {
		font-size: 3.85rem;
	}
	section h1:first-of-type {
		margin-left: 0;
	}
	.content, .cont {
		width: calc(100% - 4rem);
	}
	.kopf {
		min-height: auto;
	}
	.p_ogramm_veranstaltungen.kopf img {
		width: 80%;
		margin-top: -4rem;
		margin-bottom: 2rem;
	}
	.kopf .cont {
		height: auto;
	}
	.filter h3 {
		font-size: 2rem;
	}
	.filtersuche input {
		font-size: 1.5rem;
	}
	.kalender_term {
		padding-right: 1rem;
		padding-left: 1rem;
	}
	.veranst_bild {
		width: calc(50% - 2rem);
		margin-top: 2rem;
	}
	.veranst_bild .startbild {
		height: calc((50vw - 4rem) * 0.75);
		max-height: 300px;
	}
	.veranst_bild .button, .veranst_bild a.button {
		width: 5rem;
	}
	.veranst .termine {
		width: calc(50% - 3rem);
	}
	.veranst .infos {
		width:50%;
		margin-right: 0;
	}
	/*
	veranstaltungen
	*/
	.veranst_list .tag, .veranst_list .datum, .veranst_list .rubrik {
		font-size: 1rem;
		width: 50%;
	}
	.veranst_list .datum {
		width: auto;
		font-weight: normal;
		font-style: normal;
	}
	.veranst_list .datum span {
		margin-left: 0.5rem;
	}
	.veranst_list .interpret {
		font-size: 3rem;
		width: 100%;
		order: 3;
		margin-top: 0.5rem;
	}
	.veranst_list .rubrik {
		order: 2;
		text-align: right;
	}
	.veranst_list .rechts {
		width: 100%;
	}
	.veranst_list .datum {
		float: right;
	}
	.veranst_list h4 {
		width: auto;
	}
	.veranst_list .infos {
		width: 100%;
		margin-top: 1rem;
	}
	.veranst_list .details {
		align-items: flex-start;
	}
	.veranst_list .details .links, .veranst_list .details .rubrik {
		display: none;
	}
	.veranst_list .details .kurz {
		width: calc(100% - 20rem);
	}
/*
	.veranst_list .details pre {
		width: 9rem;
	}
	.veranst_list .details .interpret, .veranst_list .details .links, .veranst_list .details .kurz, .veranst_list .details .rubrik {
		display: none;
	}
*/
}
/*
############### 900 ###############
*/
@media(max-width: 925px) {
	html {
	}
	.spalte {
		width: calc(50% - 1rem);
	}
	.mensuche {
		display: none;
	}
	.kopf h1 {
		font-size: 6rem;
	}
	.kopf h4 {
		width: 90%;
	}
	.kopf div.einzelblock, .kopf div.spaltenblock {
		width: 90%;
	}
	.kopf div.einzelblock .spalte, .kopf div.spaltenblock .spalte {
		width: 100%;
	}
	.startmarker {
		right: 10%;
		bottom: 10%;
	}
	.home.kopf img.vogel {
		width: 120px;
	}
	.home .content {
		width: calc(100% - 6rem);
	}
	section.home .startetage img {
		margin-top: -12rem;
		margin-left: -4rem;
	}
	section.home .startraum .spalte {
		margin-top: -7rem;
	}
	section.home .startraum .starthof {
		margin-top: -6rem;
	}
	section.home .startraum .starthof .sprayflaeche {
		width: 52%;
		height: 9.5rem;
		bottom: 1rem;
		left: 0.7rem;
	}
	section.home .startraum .starthof.akt #dose {
		margin-top: 0;
	}
	section.home .startakteure .bildaction {
		top: 20%;
		right: 40%;
	}
	section.home .startraum .starthof .bildaction {
		left: -2.5rem;
		bottom: 18%;
	}
	.p_ogramm_veranstaltungen.kopf h4 {
		font-size: 5.5rem;
	}
	.p_ogramm_festivals_reihen.kopf h1 {
		width: 100%;
	}
	.p_ogramm_kultur_kalender.kopf img {
		margin-top: -10rem;
		margin-left: 55%;
	}
	.p_ogramm_festivals_reihen.kopf img {
		margin-top: -10rem;
		width: 50%;
		margin-left: 50%;
	}
	.se_vice.kopf {
		overflow-x: hidden;
	}
	.se_vice.kopf img {
		margin-bottom: -4rem;
	}
	.haus.kopf h1 {
		margin-right: 10%;
		margin-left: -10%;
	}
	.haus.kopf img {
		margin-left: 50%;
		margin-top: -6rem;
		margin-bottom: -12rem;
	}
	.haus.kopf a.button {
		margin-top: 2rem;
	}
	.ko_takt.kopf h4 {
		width: 100%;
	}
	.veranst_highlight {
		height: calc(100vh - 2.8rem);
		max-height: 600px;
	}
	.news_list, .news_einzel .galerie_image {
		width: calc(50% - 1.5rem) !important;
		margin-bottom: 3rem;
	}
	/*
	navigation
	*/
	.tools {
		margin-right: 3.5rem;
	}
	.nav_icon, .nav_close {
		display: block;
		cursor: pointer;
		font-size: 0.8rem;
		text-align: center;
		line-height: 1rem;
	}
	.nav_icon {
		width: 1.65rem;
		top: 0.7rem;
		right: 1rem;
		position: fixed;
		z-index: 1000;
		height: 1.3rem;
		font-size: 0;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}
	.nav_icon span, .nav_close span {
		display: inline-block;
		width: 100%;
		height: 1px;
		background-color: #000000;
	}
	.nav_icon.akt span:nth-last-of-type(2) {
		display: none;
	}
	.nav_icon.akt span:first-of-type {
		transform: rotate(45deg);
		position: absolute;
		top: 0;
		top: 0.7rem;
		transition: all 0.2s ease-in-out;
	}
	.nav_icon.akt span:last-of-type {
		transform: rotate(-45deg);
		position: absolute;
		top: 0;
		top: 0.7rem;
		transition: all 0.2s ease-in-out;
	}
	.nav_close {
		position: absolute;
		width: 1.5rem;
		height: 1.5rem;
		top: 10px;
		right: 10px;
		position: absolute;
	}
	.nav_close span {
		position: absolute;
		top: 33%;
		left: 0;
	}
	.nav_close span:first-of-type {
		transform: rotate(45deg);
	}
	.nav_close span:last-of-type {
		transform: rotate(-45deg);
	}
	#nav_bg {
		background-color: #000;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 999;
		margin: 0;
		display: none;
		opacity: 0.3;
	}
	#nav_bg.akt {
		opacity: 0;
		display: block;
	}
	nav {
		position: fixed;
		top: 2.8rem;
		height: calc(100% - 2.8rem);
		background-color: #FEF78C;
		z-index: 1000;
		overflow: auto;
		width: 100vw;
		max-width: 450px;
		transition: right 0.4s;
		margin-top: 0;
		right: -100vw;
		text-align: center;
	}
	.kontrast nav {
		background-color: #ffffff;
	}
	.desktopmen {
		display: none;
	}
	.mobilmen {
		display: inline-block;
	}
	nav .plus pre {
		height: 1px;
	}
	nav .plus pre.s {
		width: 1px;
	}
	.navfuss {
		display: block;
	}
		/*
				right: -100vw;
		*/
	nav.akt {
		right: 0;
		transition: right 0.4s;
	}
	.navsuche {
		position: relative;
		width: calc(100% - 3rem);
		margin-top: 0.75rem;
		margin-bottom: 0.75rem;
		margin-right: auto;
		margin-left: auto;
		display: inline-block;
	}
	.navsuche input {
		width: 100%;
		font-size: 1.25rem;
		border-radius: 3rem;
		padding: 0.5rem 1rem;
		border: 1px solid #000000;
	}
	.navsuche button {
		position: absolute;
		top: 0.5rem;
		right: 1rem;
		border-style: none;
		background-color: transparent;
		padding-right: 0;
		padding-left: 0;
	}
	.navsuche button img {
		height: 1.5rem;
		width: auto;
	}
	nav > ul {
		width: 100%;
		text-align: center;
		border-bottom: 1px solid #000000;
	}
	nav ul li {
		width: 100%;
		list-style: none;
		display: block;
		display: inline-block;
		padding-right: 1.5rem;
		padding-left: 1.5rem;
		padding-top: 0.5rem;
		padding-bottom: 0.5rem;
		font-size: 2rem;
		text-transform: lowercase;
		border-top: 1px solid #000000;
		margin-left: 0;
	}
	nav ul li div {
		display: inline-block;
		cursor: pointer;
		width: 100%;
	}
	nav ul li span {
		display: inline-block;
	}
	nav ul li span.plus {
		margin-top: 0.35rem;
		width: 1em;
		height: 1em;
	}
	nav ul li.akt span.plus {
		transform: rotate(45deg);
		transition: transform 0.2s ease-in-out;
	}
	nav ul li a {
		width: 100%;
		font-size: 1.5rem;
		display: inline-block;
		margin-right: auto;
		margin-left: auto;
		padding-top: 1rem;
		padding-bottom: 1rem;
	}
	.kontrast nav ul li a {
		font-size: 1.8rem;
	}
	nav ul li ul {
		max-height: 0px;
		position: relative;
		top: 0;
		left: 0;
		background-color: transparent;
		transition: max-height 0.2s ease-in-out;
	}
	nav ul li:hover ul {
		display: none;
	}
	nav ul li.akt ul {
		display: block;
		max-height: 1000px;
		transition: max-height 0.2s ease-in-out;
	}
	nav ul li ul li {
		margin-left: 0;
		font-weight: normal;
		font-style: normal;
		font-size: 1rem;
		border-top-style: none;
		padding-right: 0;
		padding-left: 0;
	}
	.kontrast nav ul li ul li {
		font-size: 1.4rem;
	}
	nav ul li a, nav ul li a:visited {
		color: #000000;
		text-decoration: none;
		white-space: normal;
	}
	nav ul li a.aktuell, nav ul li a:hover {
		color: #000000;
		text-decoration: none;
		white-space: normal;
	}
	.navfuss {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.navfuss .fusskontakt, .navfuss .fusscopy {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.navfuss .fusskontakt a {
		text-decoration: none;
	}
	.navfuss .fusskontakt {
		order: 1;
	}
	.navfuss .fusscopy {
		margin-top: -1rem;
		order: 3;
	}
	.navfuss .fuss_newsl {
		order: 2;
	}
	.navfuss .fuss_newsl .fuss_sm {
		margin-top: -2rem;
	}
	.navfuss .fuss_newsl a {
		float: right;
		margin-left: 1rem;
	}
	.navfuss .fuss_newsl img {
		width: 2rem;
		height: 2rem;
	}
	.navfuss .spalte {
		text-align: center;
		margin-top: 1rem;
	}
	.navfuss .spalte table {
		margin-right: auto;
		margin-left: auto;
	}
	.navfuss .spalte td {
		text-align: left;
	}
	.navfuss .fuss_newsl {
		font-size: 2em;
	}
	.navfuss .fuss_newsl p {
		font-size: 1.75rem;
	}
	.navfuss .fuss_newsl input[type=text] {
		width: 100%;
		font-size: 1rem;
		line-height: 2rem;
	}
	.navfuss .fuss_newsl input[type=submit] {
		background-color: #ffffff;
		font-size: 1rem;
		line-height: 2rem;
	}
}
/*
############### 800 ###############
*/
@media(max-width: 800px) {
	html {
	}
	.startraum img {
		margin-top: 40vw;
	}
}
/*
############### 750 ###############
*/
@media(max-width: 750px) {
	html {
	}
	h1 {
		font-size: 3.8rem;
	}
	h2 {
		font-size: 1.6rem;
	}
	.kontrast h2 {
		font-size: 2rem;
	}
	h3 {
		font-size: 1.3rem;
	}
	.kontrast h3 {
		font-size: 1.7rem;
	}
	.kopf h1 {
		font-size: 5rem;
	}
	.kopf h4 {
		font-size: 3.15rem;
	}
	.content, .cont, .inhalt.content {
		width: calc(100% - 2rem);
	}
	.button, .plusbtn, a.button, a.button:visited, .klapplink a, .klapplink a:visited, .fusslink a, .fusslink a:visited {
		line-height: 1.8em;
	}
	.formular div.normal, .spalte, .spalte23 {
		width: 100%;
	}
	.spalte13 {
		width: calc(50% - 1.4rem);
	}
	.ganz .spalte {
		width: 100%;
	}
	.fusslink {
		width: 100%;
	}
	.klappinhalt .plusbtn pre, .plus pre {
		width: calc(100% - 0.4rem);
		left: calc(0.2rem);
	}
	.klappinhalt .plusbtn pre.s, .plus pre.s, pre.plus .s {
		height: calc(100% - 0.4rem);
		top: calc(0.2rem);
	}
	.plus pre.s {
		width: 1px;
	}
	header .cont {
		width: calc(100% - 2rem);
	}
	.kopf h1 pre {
		width: 0.25rem;
	}
	.kopf div.einzelblock, .kopf div.spaltenblock {
		width: 100%;
	}
	.kopf a.button {
		font-size: 1.5rem;
		margin-right: auto;
		margin-left: auto;
	}
	.kopf a.jumplink {
		font-size: 1.8rem;
	}
	.home.kopf {
	}
	.home.kopf .cont {
		height: 100%;
		padding-top: 0;
		padding-bottom: 0;
	}
	.home.kopf h1 {
		font-size: 4rem;
		display: inline-block;
		line-height: 1em;
	}
	.home.kopf h1 b {
		font-weight: bold;
		font-style: normal;
	}
	.home.kopf h1 pre {
		display: inline-block;
		width: 2.5em;
	}
	.home.kopf a, .home.kopf a.button {
		margin-bottom: 3rem;
	}
	.merkzettel {
		width: 9.2rem;
		height: 13rem;
		bottom: 1rem;
		right: -2rem;
	}
	.merkzettel p {
		padding-right: 2rem;
		padding-left: 2rem;
		margin-top: 4rem;
		font-size: 1rem;
	}
	.merkzettel a, .merkzettel a:visited {
		font-size: 0.8rem;
	}
	.startmarker {
		right: 5%;
		bottom: 25%;
	}
	.home.kopf img.vogel {
		width: 100px;
	}
	.p_ogramm_veranstaltungen.kopf img {
		margin-top: -2rem;
		margin-bottom: 0;
	}
	.p_ogramm_veranstaltungen.kopf h4 {
		font-size: 4.7rem;
	}
	.p_ogramm_kultur_kalender.kopf img {
		margin-top: 2rem;
		width: 80%;
		margin-left: auto;
	}
	.p_ogramm_festivals_reihen.kopf img {
		margin-top: 2rem;
		width: 80%;
		margin-left: auto;
	}
	.haus.kopf img {
		margin-left: auto;
		margin-top: 1rem;
		margin-bottom: 1rem;
		width: 100%;
	}
	.haus.kopf a.button {
		padding-right: 1rem;
		padding-left: 1rem;
		font-size: 1rem;
	}
	.se_vice.kopf img {
		margin-bottom: 0;
	}
	.se_vice.kopf div.spaltenblock {
		width: 90%;
	}
	.haus.kopf {
		background-position: 80% 23rem;
	}
	.haus.kopf h1 {
		margin: auto;
	}
	.haus.kopf h4 {
		font-size: 2.5rem;
		width: auto;
	}
	.akt_ure.kopf img {
		width: 80%;
		margin-bottom: 2rem;
		margin-top: 3rem;
		margin-right: auto;
	}
	.akt_ure.kopf h4 {
		font-size: 3.5rem;
		text-align: left;
		width: 100%;
	}
	.ko_takt.kopf img {
		width: 80%;
		margin-bottom: 2rem;
		margin-right: auto;
		margin-top: 2rem;
	}
	.ko_takt.kopf h4 {
		font-size: 3.2rem;
	}
	.ko_takt.kopf div.spaltenblock {
		width: 100%;
	}
	.icontext img {
		width: 3rem;
		height: 3rem;
		float: left;
		margin-top: 0;
		margin-right: 1rem;
	}
	.icontext h3 {
		width: calc(100% - 4rem);
		font-weight: normal;
		margin-bottom: 0.5rem;
	}
	.icontext p {
		padding-bottom: 1rem;
	}
	.news_list, .news_einzel .galerie_image {
		width: 100% !important;
		margin-bottom: 3rem;
	}
	.news_list h5 {
		margin-bottom: 1rem;
	}
	.news_list .button {
		position: relative;
		margin-top: 1rem;
	}
	.ansprechp {
		width: 100%;
	}
	.home .content {
		width: calc(100% - 4rem);
	}
	.startetage img, .startstuehle img, .startbuehne img, .startkuso img, .startakteure img, .starthandy img, .startetage img {
		float: none;
		width: 100% !important;
		height: auto;
		margin-top: 3rem;
		margin-left: 0;
	}
	.startetage .spalte, .startraum .spalte, .startdose .spalte, .startstuehle .spalte, .startbuehne .spalte, .startkuso .spalte, .startakteure .spalte, .starthandy .spalte {
		float: none;
		width: 100%!important;
		margin-top: 3rem;
		margin-left: 0;
	}
	section.home .startetage img {
		width: 55%;
		height: auto;
		margin-top: -6rem;
		margin-left: -4rem;
	}
	section.home .spalte, section.home .startstuehle .spalte {
		width: 100% !important;
		margin-right: 0;
		margin-left: 0;
	}
	section.home .startraum {
		margin-top: 2rem;
	}
	section.home .startraum .spalte {
		position: relative;
		margin-top: 1rem;
	}
	section.home .startraum .starthof {
		margin-top: 0;
		margin-bottom: 2rem;
	}
	section.home .startraum .starthof img:first-of-type {
		margin-top: 0;
	}
	section.home .startraum .starthof .sprayflaeche {
		height: 5.5rem;
		bottom: 0.4rem;
		left: 0.3rem;
	}
	section.home .startraum .starthof.akt #dose {
		margin-top: 0;
		width: 3.5rem;
	}
	section.home .startraum .starthof img.startdose, section.home .startraum .starthof .bildaction {
		display: none;
	}
	section.home .startstuehle img {
		width: 50% !important;
		display: none;
	}
	section.home .startbuehne {
		margin-top: 0;
	}
	section.home .startbuehne img {
		order: 1;
		margin-right: 0;
		width: 98%;
	}
	section.home .startbuehne .spalte {
		order: 2;
	}
	section.home .startbuehne .bildaction {
		right: auto;
		left: 0;
		top: 40vw;
	}
	section.home .startkuso .spalte {
		margin-top: 1rem;
	}
	section.home .startkuso .bildaction {
		top: 30%;
		left: 90%;
	}
	section.home .startakteure {
		margin-top: 2rem;
	}
	section.home .startakteure img {
		margin-top: 2rem;
	}
	section.home .startakteure .bildaction {
		top: auto;
		right: auto;
		left: 5%;
		bottom: 70vw;
	}
	section.home .starthandy .spalte {
		order: 1;
	}
	section.home .starthandy img {
		order: 2;
	}		
	/*
	veranstaltungshighlights
	*/
	.veranst_highlight {
		height: 180vw;
	}
	.veranst_highlight ul, .veranst_highlight li, .lSSlideOuter, .lSSlideWrapper {
		height: 100%;
	}
	.veranst_highlight li {
		overflow: hidden;
	}
	.veranst_highlight li .startbild {
		position: relative;
		width: 100%;
		height: 60vw;
	}
	.veranst_high_info {
		height: calc(100% - 60vw - 2rem);
		width: calc(100% - 2rem);
		margin-left: 1rem;
		margin-top: 1rem;
		z-index: 10;
		position: relative;
		margin-bottom: 1rem;
	}
	.veranst_high_info .info {
		font-size: 1.5rem;
		width: 100%;
		margin-bottom: 0.5rem;
	}
	.veranst_high_info .rubrik {
		float: right;
	}
	.veranst_high_info h2.interpret {
		width: 100%;
	}
	.veranst_high_info h2.lenclass1 {
		font-size: 4rem;
	}
	.veranst_high_info h2.lenclass2 {
		font-size: 3.5em;
	}
	.veranst_high_info h2.lenclass3 {
		font-size: 3rem;
	}
	.veranst_high_info .link {
		text-align: center;
		margin-top: 1.5rem;
	}
	.lSAction {
		position: absolute;
		bottom: 2rem;
		width: 100%;
	}
	.lSAction > .lSNext, .lSAction > .lSPrev {
		background-size: 1.5rem;
		width: 2rem;
		height: 2rem;
		border: 1px solid #000000;
	}
	.lSAction > .lSNext:hover, .lSAction > .lSPrev:hover {
		background-color: #EAEF8F;
	}
	.lSAction > .lSNext {
		background-image: url(../images/pfeil.svg);
	}
	.lSAction > .lSPrev {
		background-image: url(../images/pfeil.svg);
		transform: rotate(180deg);
	}
	.lSSlideOuter .lSPager.lSpg {
		display: none;
	}
	/*
	filter
	*/
	.kalender {
		width: 100%;
		font-size: 0;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.kalenderdatum {
		width: 100%;
	}
	.kalenderliste {
		width: 100%;
		height: auto;
	}
	.kalendertitel {
		position: relative;
	}
	.kalendertermine {
		position: relative;
		right: auto;
		bottom: auto;
		left: auto;
		overflow-y: auto;
		top: auto;
	}
	/*
	allgemein
	.veranstaltung, .veranstaltung p, .button, .plusbtn, .veranstaltung .infos a, .veranstaltung .infos a:visited {
		font-size: 1.5rem;
	}
	*/
	.filterthema, .filterdatum {
		width: 100%;
	}
	.sponspartn .galerie_image {
		width: calc(50% - 1rem);
	}
	/*
	veranstaltungen
	*/
	.veranstaltung .button, .veranstaltung a.button {
		width: 8rem;
	}
	.veranst_list .details pre {
		width: 9rem;
	}
	.veranst_list .details .interpret, .veranst_list .details .links, .veranst_list .details .kurz, .veranst_list .details .rubrik {
		display: none;
	}
	.ext_text {
		left: calc(-50% + 1rem);
		width: 150%;
	}
	.veranst_bild {
		width: 100%;
		margin-top: 0;
	}
	.veranst_bild::before {
		content: '';
		width: calc(100vw + 1.25rem);
		height: 1px;
		background-color: #000000;
		display: inline-block;
		margin-left: -2.5rem;
	}
	.veranst_bild .startbild {
		height: calc((100vw - 5rem) * 0.77);
		background-position: center center;
		background-size: cover;
		position: relative;
	}
	.veranst_bild .datum, .veranst_bild .rubrik {
		font-size: 1rem;
	}
	.veranst_bild .interpret h4 {
		margin-top: 1rem;
		margin-bottom: 1rem;
	}
	.veranst_bild .topinfo {
		display: inline-block;
		margin-bottom: 0.5rem;
	}
	.veranst_bild .info {
		display: none;
	}
	.veranst .content {
		width: 100%;
	}
	.veranst .startbild {
		width: 100%;
		order: 1;
	}
	.veranst .bilder {
		width: 100%;
	}
	.veranst .bild a.button {
		font-size: 1rem;
	}
	.veranst .titel {
		width: calc(100% - 2rem);
		order: 2;
		margin-left: 1rem;
	}
	.veranst .titel h2 {
		font-size: 4rem;
	}
	.veranst .termine {
		width: calc(100% - 2rem);
		order: 3;
		margin-left: 1rem;
	}
	.veranst .termine .datum {
		font-size: 1.8rem;
	}
	.veranst .termine .teilen a {
		margin-top: 0.25rem;
	}
	.veranst .infos {
		width: calc(100% - 2rem);
		margin-left: 1rem;
		margin-right: 1rem;
	}
	.sponsoren {
		width: 50%;
		text-align: center;
	}
	.sponsoren h6 {
		text-align: left;
	}
	.veranst .titel h1.lenclass1 {
		font-size: 3.5em;
	}
	.veranst .titel h2.lenclass1 {
		font-size: 2.45em;
	}
	.veranst .titel h1.lenclass2 {
		font-size: 2.75em;
	}
	.veranst .titel h2.lenclass2 {
		font-size: 1.9em;
	}
	.veranst .titel h1.lenclass3 {
		font-size: 2.5em;
	}
	.veranst .titel h2.lenclass3 {
		font-size: 1.75rem;
	}
	.kalender_term .details pre {
		height: auto;
	}
	.kalender_term .details .kurz {
		margin-top: 0;
	}
	footer .ganz {
		order: 2;
	}
	footer .fusskontakt, footer .fusscopy {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	footer .fusskontakt a {
		text-decoration: none;
	}
	footer .fusskontakt {
		margin-top: 1rem;
		order: 3;
	}
	footer .fusscopy {
		margin-top: 1rem;
		order: 4;
	}
	footer .fuss_newsl {
		order: 1;
	}
	footer .fusskontakt .spalte, footer .fusscopy .spalte {
		width: 100%;
		margin-bottom: 0.5rem;
	}
	.fuss_newsl {
		width: 100%;
		margin-top: 1rem;
		margin-bottom: 1rem;
	}
}
/*
############### 380 ###############
*/
@media(max-width: 380px) {
	html {
	}
	h1 {
		font-size: 3rem;
	}
	h2 {
		font-size: 1.6rem;
	}
	.kontrast h2 {
		font-size: 1.8rem;
	}
	.kontrast h3 {
		font-size: 1.6rem;
	}
	.klappinhalt h2 {
		font-size: 1.8rem;
	}
	.klappinhalt h2 span {
		max-width: calc(100% - 2rem);
	}
	.icontext p {
		font-size: 1.8rem;
	}
	.button, a.button, a.button:visited, .klapplink a, .klapplink a:visited, .fusslink a, .fusslink a:visited {
		min-width: auto;
	}
	header .cont {
		width: calc(100% - 1rem);
	}
	.kopf h1 {
		font-size: 3.75rem;
	}
	.kopf h4 {
		width: 95%;
	}
	.kopf div.einzelblock, .kopf div.spaltenblock {
		width: 95%;
	}
	.home.kopf a, .home.kopf a.button {
		margin-bottom: 5rem;
	}
	.home .content {
		width: calc(100% - 1rem);
	}
	section.home .startraum .starthof .sprayflaeche {
		height: 4.5rem;
	}
	section.home .startakteure .bildaction {
		bottom: 80vw;
	}
	.p_ogramm_veranstaltungen.kopf h4 {
		font-size: 3.5rem;
	}
	.p_ogramm_festivals_reihen.kopf h1 pre {
		width: 20%;
	}
	.se_vice.kopf img {
		margin-top: 1rem;
		margin-bottom: -2rem;
	}
	.ko_takt.kopf div.cont {
		width: 100%;
	}
	.ansprechp .ansprechinfo h4 {
		font-size: 2.2rem;
	}
	a.v_prev, a.v_prev:visited, a.v_next, a.v_next:visited {
		font-size: 1.5rem;
	}
	.formular div.normal {
		width: 100%;
	}
	.filtersuche input {
		font-size: 1rem;
	}
	.filtersuche button img {
		margin-top: 0;
		height: 1.4rem;
	}
	.kalenderdatum td {
		font-size: 1rem;
	}
	.veranst_high_info h2.lenclass1 {
		font-size: 3.5rem;
	}
	.veranst_high_info h2.lenclass2 {
		font-size: 3em;
	}
	.veranst_high_info h2.lenclass3 {
		font-size: 2.5rem;
	}
	/*
	veranstaltungen
	*/
	.veranst_list .details pre {
		width: 7rem;
	}
	.veranst .titel h1.lenclass1 {
		font-size: 2.75em;
	}
	.veranst .titel h2.lenclass1 {
		font-size: 1.9em;
	}
	.veranst .titel h1.lenclass2 {
		font-size: 2.2em;
	}
	.veranst .titel h2.lenclass2 {
		font-size: 1.5em;
	}
	.veranst .titel h1.lenclass3 {
		font-size: 2em;
	}
	.veranst .titel h2.lenclass3 {
		font-size: 1.4rem;
	}
	.veranstaltung .button, .veranstaltung a.button {
		width: auto;
		margin-right: 0.5rem;
		padding-right: 1rem;
		padding-left: 1rem;
	}
	.veranstaltung .veranst a.button {
		margin-right: 0;
	}
}