@font-face {
  font-family: "Alpen Text";
  src: url('../fonts/Alpen-Text.eot?#iefix') format('embedded-opentype'),
	   url("../fonts/Alpen-Text.woff2") format("woff2"),
       url("../fonts/Alpen-Text.woff2.woff") format("woff");
  font-weight: normal;
} 
@font-face {
  font-family: "Alpen Text";
  src: url('../fonts/Alpen-Text-Bold.eot?#iefix') format('embedded-opentype'),
	   url("../fonts/Alpen-Text-Bold.woff2") format("woff2"),
       url("../fonts/Alpen-Text-Bold.woff") format("woff");
  font-weight: bold;
}
@font-face {
  font-family: "Bergen";
  src: url('../fonts/Bergen.eot?#iefix') format('embedded-opentype'),
	   url("../fonts/Bergen.woff2") format("woff2"),
       url("../fonts/Bergen.woff2.woff") format("woff");
  font-weight: normal;
}
@font-face {
  font-family: "Alpen Text";
  src: url('../fonts/BergenText-ItalicTT.eot?#iefix') format('embedded-opentype'),
	   url("../fonts/BergenText-ItalicTT.woff2") format("woff2"),
       url("../fonts/BergenText-ItalicTT.woff") format("woff");
  font-style: italic;
}

/* --- Layout --- */

.search_plugin_added {
	max-width: 100%;
	margin-top:-100px;
	margin-bottom:100px;
}

html, main, body {
	margin:0;
	padding:0;
}
body {
	background-color: #BBB;
	font-family: "Alpen Text", "Gill Sans", "Gill Sans MT", sans-serif;
	text-rendering: optimizeLegibility;
	font-feature-settings: "kern" 1;
	font-variant-ligatures: common-ligatures;
	-moz-font-feature-settings: "liga", "clig";
	-webkit-font-feature-settings: "liga", "clig";
	font-feature-settings: "liga", "clig";
	overflow: invisible;
}
hr {
    border: 0;
    height: 0;
    border-top: 1px solid #26A066;
    border-bottom: 1px solid #26A066;
	margin-bottom:1em;
}
.distance {
	height:50px;
	width:100%;
	background:white;
	margin-bottom:-10px;
}
@media all and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) {
    section {
		padding-top: 50px;
		margin-top: -50px;
	}
}

.icon {
	z-index:3;
	margin-top: -2px;
	width:14px;
	height:14px;
	position:relative;
	cursor:pointer;
	fill:#26A066;
}

#Seite {
	position: relative;
	margin: 100px auto 50px;
	width: 960px;
	height: 500px;
	background-color: #000000;	
}
header {
	min-height:52.5vw;
	position:relative;
	margin:5px auto;
}
img {  
	border-style: none;
}
.poster {
	width: 100%;
	float:right;
	padding: 0 0 0.5em 5%;
}
.poster img {
	width: 100%;
	height: auto;
}
main {
	position: relative;
	margin: 4px auto 0px;
}
.content {
	position: relative;
	padding: 20px 5% 40px 5%;
	background-color: white;
	font-family: "Alpen Text", "Gill Sans", "Gill Sans MT", sans-serif;
	font-size: 14px;
	color: #333333;
	line-height: 20px;
	width:90%;
}

button.batch {
	margin-left: 3vw;
	margin-top: -430px;
	width: 20vw;
	height: 20vw;
	padding: 2vw;
	border-radius: 10vw;
	border: none;
	font-family: Alpen Text;
	font-weight: 600;
	font-size: 1.7vw;
  cursor: pointer;
  transform: translateY(-6vw) rotate(-12deg);
}


.besetzung, .orchester, .gastronomie, .ort, footer {
	padding: 20px 5%;
}
.gallery {
	overflow: hidden
}
.twocolumns {
	-moz-column-count: 2;
	-webkit-column-count: 2;
	column-count: 2;
	-webkit-column-gap: 60px;
	-moz-column-gap: 60px;
	column-gap: 60px;
	padding-bottom:2em;
}
.twocolumns strong {
	float:right;
}
.twocolumns p {
	padding-top:0;
	margin-block-start: 0em;
	margin-block-end: 0em;
	line-height: 1.7em;
}
figure.right {
	float:right;
	margin:0;
	margin-top:-16px;
}
figure.big {
	width: 100%;
	margin: 0px 0px 1em 0px;
}
figure.big img {
	width: 100%;
	height: auto;
}
.header {
	min-height:52.5vw;
}
@media screen and (max-width: 750px) {
  	.twocolumns {
		-webkit-column-gap: 20px;
		-moz-column-gap: 20px;
		column-gap: 20px;
	}
	.header {
		min-height:52.5vw;
	}
}
@media screen and (max-width: 680px) {
  	.twocolumns p {
		font-size: 1.1em;
	}
	.header {
		min-height:56.5vw;
	}
}
@media screen and (max-width: 590px) {
  	.twocolumns p {
		font-size: 1em;
	}
	.header {
		min-height:52.5vw;
	}
}
@media screen and (max-width: 540px) {
  	.twocolumns {
		-moz-column-count: 1;
		-webkit-column-count: 1;
		column-count: 1;
	}
	.twocolumns p {
		font-size: 1.2em;
	}
	.header {
		min-height:52.5vw;
	}
}


/* --- FOOTER --- */

#mc_embed_signup {
  font: 14px "Alpen Text", sans-serif !important;
  max-width: 100%;
}
#mc_embed_signup_scroll h2 {
	margin-bottom: 0px !important;
}
form#mc-embedded-subscribe-form {
	margin: 0px !important;
}
footer {
	padding: 20px 5%;
	width:90%;
	margin:0;
	font-size:.8em;
	height:240px;
	z-index: 99;
	position: absolute;
}
footer .address {
	float:left;
	width:35%;
}
footer  .sitemap {
	float:left;
	width:20%;
}
footer .contact {
	float:right;
	width:45%;
}

footer li {
	font-size: 1.2em;
}
#mc_embed_signup {
    margin-top: -1.2em;
}
input.email {
    padding: .5em;
    font-size: 14px;
    font-family: "Alpen Text", "Gill Sans", "Gill Sans MT", sans-serif;
    margin-bottom: .5em;
    max-width: 28vw;
}
input.button {
	border: none;
	padding: .6em 1em;
	font-size: 14px;
	font-family: "Alpen Text", "Gill Sans", "Gill Sans MT", sans-serif;
	font-weight: bold;
	cursor: pointer;
}

/* --- MENU --- */
.logo {
	text-transform:uppercase;
	font-family: "Bergen", "Gill Sans", "Gill Sans MT", sans-serif;
	color: black;
	font-weight:300;
	font-size: 1.5em;
	float: left;
	line-height:40px;
	padding:6px 0px 0px 12px; 
	z-index: 11;
}
.logo a {
	color: black;
}
#menu .logo a,
#menu .logo a:visited {
	color:black !important;
}
#menu {
  z-index: 10;
  position: fixed;
  height: 52px;
  top: 0px;
}
#menu ul {
  margin: 0;
  padding: 0;
  color: #000;
  text-transform: uppercase;
  font-weight: 700;
  width:100vw;
  background-color: white;
}

#menu .main-menu {
  display: none;
  -moz-box-shadow: 0px 10px 20px rgba(0,0,0,0.25);
  -ms-box-shadow: 0px 10px 20px rgba(0,0,0,0.25);
  box-shadow: 0px 10px 20px rgba(0,0,0,0.25);
}

#tm:checked + .main-menu {
  display: block;
}

#menu input[type="checkbox"], 
#menu ul span.drop-icon {
  display: none;
}

#menu li, 
#toggle-menu, 
#menu .sub-menu {

}


#menu li, 
#toggle-menu {

}

#menu .sub-menu {
  background-color: #FFF;
  border-width: 1px 1px 0;
  margin: 0 1em;
}

#menu .sub-menu li:last-child {
  border-width: 0;
}

#menu li, 
#toggle-menu, 
#menu li a {
  position: relative;
  display: block;
  color: white;
  color:#26A066;
  text-decoration: none;
}

#menu, 
#toggle-menu {
  background-color: rgba(255,255,255,0.9);
}

#toggle-menu, .nonclick, 
#menu li a {
  padding: 1em .2em 1em 1.5em;
}
#menu li a.icon {
	padding-left:1.5em;
}
nav {
	position:relative ;
	width:100vw;
	clear: both;
	float:right;
}
#midNav {
	width:100%;
}
nav ul ul {
	padding-top:0px;
	margin-top:0px;
	-moz-box-shadow: 10px 10px 20px rgba(0,0,0,0.25);
	-ms-box-shadow: 10px 10px 20px rgba(0,0,0,0.25);
	box-shadow: 10px 10px 20px rgba(0,0,0,0.25);
	-moz-border-radius: 0px 0px 10px 10px;
	-webkit-border-radius: 0px 0px 10px 10px;
	border-radius: 0px 0px 10px 10px;
	min-width:250px;
	max-width:94%;
}
nav ul ul ul {
	min-width:150px;
	-moz-box-shadow: 10px 5px 10px rgba(0,0,0,0.25);
	-ms-box-shadow: 10px 5px 10px rgba(0,0,0,0.25);
	box-shadow: 10px 5px 10px rgba(0,0,0,0.25);
	-moz-border-radius: 0px 10px 10px 0px;
	-webkit-border-radius: 0px 10px 10px 0px;
	border-radius: 0px 10px 10px 0px;
}
nav ul ul li {
	text-indent:0px;
}
nav ul li::after,
nav ul ul li::after {
	content:"";
	position:absolute;
	width: 100%;
	height: 1px;
    background-image: linear-gradient(to right, rgba(180, 180, 180, 0), rgba(180, 180, 180, 0.8), rgba(180, 180, 180, 0));
	top: 100%;
    left: 0;
	z-index: 3;
}
nav ul li:last-child:after,
nav ul ul li:last-child:after {
	height: 0px;
}
nav ul ul li:first-child:before {
	content:"";
	position:absolute;
	width: 100%;
	height: 1px;
    background-image: linear-gradient(to right, rgba(180, 180, 180, 0), rgba(180, 180, 180, 0.8), rgba(180, 180, 180, 0));
	top: 0px;
    left: 0;
	z-index: 3;
}
nav ul ul li,
nav ul ul li a {
	text-transform: none;
}
nav ul ul li span.years {
	position:relative;
	color: #999;
	float:left;
	padding: 18px 5px 0px 5px;
	line-height:1em;
	padding-left:1em;
}
#menu {
	background-color: white;
	z-index:10;
	box-shadow: 0px 10px 20px rgba(0,0,0,0.15);
}
#menu label {
	margin-left: 220px;
}
#menu a {
  transition: all .125s ease-in-out;
  -webkit-transition: all .125s ease-in-out;
}

#menu a:hover {
  opacity: 0.7;
}

#menu .sub-menu {
  display: none;
}
#menu input[type="checkbox"]:checked + .sub-menu {
  display: block;
}

#menu .sub-menu a:hover {
  opacity: 0.7;
}

#toggle-menu .drop-icon, 
#menu li label.drop-icon {
  position: absolute;
  right: 0.5em;
  top: 0.5em;
  cursor:pointer;
}

#menu label.drop-icon, #toggle-menu span.drop-icon {
  border-radius: 50%;
  width: 100%;
  height: 1.5em;
  font-size:1.3em;
  line-height:1.5em;
  text-align: right;
  text-shadow: 0 0 0 transparent;
}

#menu .drop-icon {
  line-height: 1;
}

#midNav {
	padding-left:6px;
	margin-bottom:6px;
}
#midNav a {
	display: inline-block;
	font-weight:bold;
	padding:3px 6px 2px 6px;
	margin-right: 4px;
	margin-bottom: 6px;
	text-decoration:none;
}

@media only screen and (min-width: 52em) {
  #menu .main-menu {
    display: block;
  }

  #toggle-menu, 
  #menu label.drop-icon {
    display: none;
  }

  #menu ul span.drop-icon {
    display: inline-block;
  }
  #menu ul span.drop-icon,
  span.drop-icon {
	display:none;
  }
  #menu li {
    float: left;
    border-width: 0 1px 0 0;
  }

  #menu .sub-menu li {
    float: none;
  }
  #menu li a.icon {
	padding-left:1em;
  }
  #menu .sub-menu {
    border-width: 0;
    margin: 0;
    position: absolute;
    top: 100%;
    left: 0;
    width: 12em;
    z-index: 3000;
  }
  #menu .sub-menu:after {
	content:"";
	height:10px;
	background-color: white;
	position:absolute;
	top: 0px;
	margin-top:-10px;
	width:100%;
  }
  #menu .sub-menu .sub-menu:after {
	content:"";
	height:0px;
	background-color: transparent;
  }
  #menu .sub-menu, 
  #menu input[type="checkbox"]:checked + .sub-menu {
    display: none;
  }

  #menu .sub-menu li {
    border-width: 0 0 1px;
  }

  #menu .sub-menu .sub-menu {
    top: 0;
    left: 100%;
  }

  #menu li:hover > input[type="checkbox"] + .sub-menu {
    display: block;
  }
  nav ul ul .drop-icon {
	position: absolute;
	right:5px;
	margin-top:-2.1em;
	line-height:2em;
  }
  nav ul li::after {
	background-image: none;
}

}
/* --- Banner --- */

.banner img {
	width:100vw;
	height:auto;
	position:fixed;
	z-index:-2;
	top:50px;
	margin:0;
	padding:0;
}

.banner2 img {
  width:50% !important;
  position:fixed;
  z-index:-2;
  top:50px;
  margin:0;
  padding:0;
}
.banner2 img.cover2 {
  width:50% !important;
  position:fixed;
  z-index:-2;
  top:50px;
  right:0px;
  margin:0;
  padding:0;
}
.banner2 a {
  position:fixed;
  width: 50%;
  height: 50vw;
  top: 50px;
}
.banner2 a.link2 {
  right:0px;
}

.banner3 img {
  width:33% !important;
  position:fixed;
  z-index:-2;
  top:50px;
  margin:0;
  padding:0;
}
.banner3 img.cover2 {
  left:33%;
}
.banner3 img.cover3 {
  width:34% !important;
  right:0px;
}
.banner3 a {
  position:fixed;
  width: 33.3%;
  height: 50vw;
  top: 50px;
}
.banner3 a.link2 {
  left:33.3%;
}
.banner3 a.link3 {
  right:0px;
}

/* --- Gallery --- */

figure {
	position:relative;
	margin:1em 4% 0 4%;
	width:90%;
	float:left;
}
figure img {
	width:100%;
	height: auto;
}

/* --- video --- */
.fitframe-wrap {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  margin-bottom: 1em;
}
.fitframe-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}
#galpop-container img {
	width:100%;
	height:auto;
}
/* .fitframe-wrap .audio {
  height: 55px !important;
  overflow:hidden;
} */
/* --- Typography --- */

h1 {
	font-size: 36px;
	margin-left: 0px;
	margin-top: 1em;
	margin-right: 0px;
	margin-bottom: 17px;
	color:#26A066;
	line-height: normal;
}
h2 {
	margin-top: 1.5em;
	font-size: 17px;
	margin-bottom: 10px;
	margin-right: 0px;
	margin-left: 0px;
	color:#26A066;
}
table {
	margin:0 auto;
	width:100%;
	border-collapse: collapse;
	margin-bottom:60px;
}
th {
	text-align:left;
}
table td {
	padding:.3em .7em .3em 0;
}
th, td {
	border-bottom: 2px solid;
}
table td:nth-child(2) {
	font-weight:bold;
}
a:link { color: inherit; }
a:visited { color: inherit; }

#plakat {
	position: absolute;
	top: 20px;
	left: 50%;
	margin-left: 260px;
	margin-top: 0px;
	background-color: #ffffff;
	width:200px;
	height: 279px;
	border-style: solid;
	border-width: 10px 10px 10px 10px;
	-moz-border-radius: 10px 10px 10px 0px;
	-webkit-border-radius: 10px 10px 10px 0px;
	border-radius: 10px 10px 10px 0px;
	border-color: #ffffff;
	background-image:url('/Images/Flyer2018.png'); 
	background-repeat:no-repeat;
}

#agenda {
	position: absolute;
	top:180px;
	background-color: transparent;
	width:200px;
	height:240px;
	border-style: solid;
	border-width: 10px;
	border-color: transparent;
	overflow: hidden;	
	font-family: "Alpen Text", "Gill Sans", "Gill Sans MT", sans-serif;
	font-size: 13px;
}

#partner {
	position: absolute;
	top: 599px;
	left: 50%;
	margin-left: 260px;
	background-color: #ffffff;
	width:200px;
	height: 90px;
	border-style: solid;
	border-width: 10px;
	-moz-border-radius: 0px 10px 10px 10px;
	-webkit-border-radius: 0px 10px 10px 10px;
	border-radius: 0px 10px 10px 10px;
	border-color: #ffffff;
}

div.edge {
	position: absolute;
	left: 50%;
	background-color: #ffffff;
	width: 10px;
	height: 10px;
	margin: 0px;
}
font.title1 {
	font-family: "Alpen Text", "Gill Sans", "Gill Sans MT", sans-serif;
	font-weight: bold;
	font-size: 16px;
	color: #000000;
}

#content_container {
	position: absolute;
	top: 205px;
	left: 50%;
	margin-left: -500px;
	width: 650px;
	height: 200px;
}
#content_title {
	position: relative;
	left: 75px;
	width: 500px;
	text-align: center;
}
#content_content {
	width: 650px;
	text-align: center;
	background-image:url('/Images/MilkyLayer.png');
	background-repeat:repeat;
	min-height: 400px;
}
#content_sub {
	width: 650px;
	background-image:url('/Images/PostLine.png');
	background-repeat:no-repeat;
	height: 4px;
}
font.menu { 
	font-weight: normal;
	font-style: normal;
	font-size: 30px;
	color: #26A066;
}
font.title { 
	font-weight: normal;
	font-style: normal;
	font-size: 30px;
	color: #26A066;
	line-height: 1;
}
font.dates {
	color: #26A066;
}
font.highlight {
	color: #26A066;
	font-weight: bolder;
	line-height: 2;
}

div.break {
	width: 2px;
}

section ul {
	padding: 0;
	padding-left: 1.1em;
	font-size: 1.3em;
}
section ul > li {
	margin-bottom: .5em;
}
.content ul {
	padding: 0;
	padding-left: 1.1em;
	font-size: 1.3em;
}
.content ul > li {
	margin-bottom: .5em;
}


/* --- Responsive --- */


@media screen and (max-width: 800px) {
	footer .address {
		float:left;
		width:60%;
	}
	footer  .sitemap {
		float:left;
		width:40%;
	}
	footer .contact {
		margin-top: 2em;
		float:left;
		width:100%;
	}
}

@media screen and (max-width: 600px) {
  	.poster {
		display:none;
	}
	button.batch {
	width: 30vw;
	height: 30vw;
	margin-top: -10vw;
	margin-bottom: -5vw;
	border-radius: 15vw;
	font-weight: 600;
	font-size: 2.6vw;
  }
}
@media screen and (min-width: 450px) {
  	figure {
		margin:1em 2% 0 2%;
		width:45%;
	}
}
@media screen and (min-width: 600px) {
  
  table, p {
	font-size:1.3em;
	line-height: 1.5em;
  }
  h1 {
	font-size:2.5em;
  }
  h2 {
	font-size:1.5em;
	line-height: 2em;
  }
  h3 {
	font-size:1.5em;
  }
  .OI_operate .l {
    left: 20px;
  }

  .OI_operate .r {
    right: 20px;
  }
  .poster {
	width: 45%;
  }

}
@media screen and (min-width: 800px) {
  	figure {
		margin:1em 2% 0 1%;
		width:30%;
	}
	.OI_operate .l {
	    left: 30px;
	}

	.OI_operate .r {
	    right: 30px;
	}
}

@media screen and (min-width: 831px) and (max-width: 900px) {
   	#toggle-menu, .nonclick, #menu li a, #submenu li a {
	padding: 1em .2em 1em 0.9em;
	}
}

@media screen and (min-width: 950px) {
   .besetzung, .orchester, .ort, .gastronomie, footer {
	 	padding: 20px 10%;
		width: 80%;
   }
   .content {
	    padding: 20px 10% 60px 10%;
	    width: 80%;
   }
}
@media screen and (min-width: 988px) {
   	#toggle-menu, .nonclick, #menu li a, #submenu li a {
	padding: 1em .2em 1em 1.5em;
	}
}

@media screen and (min-width: 1200px) {
   .besetzung, .orchester, .ort, .gastronomie {
	 	padding: 20px 20%;
		width: 60%;
   }
   .content {
	    padding: 20px 20% 80px 20%;
	    width: 60%;
   }
}
@media only screen and (-webkit-min-device-pixel-ratio: 4) and (max-width: 400px),
  only screen and (min--moz-device-pixel-ratio: 4) and (max-width: 400px),
  only screen and (-o-min-device-pixel-ratio: 4/1) and (max-width: 400px),
  only screen and (min-device-pixel-ratio: 4) and (max-width: 400px),
  only screen and (min-resolution: 4dppx) {
  /* dpr 4 */
  #menu {
    width: 100vw;
  }
}
