html, body {
	height:100%;
}

body {
	padding:0;
	margin:0;
	font-family: Helvetica Neue;
	font-size:17px;
	position: relative;
	color:#111;
}

#bg {
	position:fixed;
	top:0;
	left:0;
	width:100vw;
	height:100vh;
	background-image:url('../images/bg.jpg');
	background-repeat:no-repeat;
	background-position:top center;
	background-size: cover !important;
	-webkit-background-size: cover !important;
	-moz-background-size: cover !important;
	-o-background-size: cover !important;	
}

#bgwhite {
	position:fixed;
	top:0;
	left:5%;
	width:90%;
	background:url('../images/bg-white.png') top left repeat-x;
	height:120%;
	margin:0 auto;
}



#container {
	width:90%;
	margin:0 auto;
	position: relative;
	z-index: 10;
	padding:0px 0 50px 0;
	/*background:url('../images/bg-white.png') top left fixed repeat-x;*/
}

#container section {
	text-align: left;
	padding:0 5%;
	padding-top:50px;
}
#sst , #einzelunterricht  {padding-top: 20px;
}
	
#container a {
	color:#bc1f2d; 
}

#container a:hover {
	color:#000; 
}

#container h1 {
	margin:0 0 20px 0;
	padding:0;
	font-size:24px;
	color:#bd202e;
}

#container h2 {
	margin:0 0 15px 0;
	padding:0;
	font-size:20px;
}

#container h3 {
	margin:0;
	padding:0;
	font-size:17px;
}

#container p {
	margin:0 0 20px 0;
	padding:0;
}

#container .small-gap {
	margin:0 0 5px 0;
}

#container hr {
	border :none;
	border-top: 1px solid #666;
	background-color:transparent;
	height: 21px;
	margin:0;
}

#container ul {
	margin:0 0 20px 15px;
	padding:0;
}

#container img {
	margin:0 0 20px 0;
	width:100%;
}

#container figcaption {
    font-size: small;
    margin-top: -10px;
    float: right;
	font-style: italic;
}

#container figure {
    margin: 0 0 40px 0;
    padding: 0;
}

#container img.social{
	width: auto;
	margin: 10px 10px 0 0;
}
#container iframe {
    width: 100%;
	margin: 0 0 40px 0;
}

#container blockquote{
	font-style: italic;
    -webkit-margin-before: 0.5em;
}

#container blockquote footer{
	font-style: normal;
	margin-top: 0px;
}

#container img.portrait {
	margin:0 0 20px 0;
	width:100%;
	max-width:250px;
	display:block;
}

#container img.aktuell{
	float: left;
	width: 100%!important;
	margin-right: 20px;
	padding-top: 20px;
}

#container table {
	border: none;
	width: 100%;
	margin:0 0 20px 0;
	padding:0;
	border-collapse: collapse;
	border-spacing: 0;
}

#container table colgroup col:nth-child(1) { width:35% }
#container table colgroup col:nth-child(2) { width:65% }
#container table.atelier colgroup col:nth-child(1) { width:15% }
#container table.atelier colgroup col:nth-child(2) { width:85% }

#container table tr td {
	border: none;
	vertical-align:top;
	padding:2px 0;
}
#container table tr td:nth-child(1) {padding-right:5px; width: 100px;}

#container .logo {
	width:100%;
	max-width: 150px;
	display:block;
	margin:10px auto 25px auto;
}


 #home {padding-top: 50px;}


/**
 * BxSlider v4.1.2 - Fully loaded, responsive content slider
 * http://bxslider.com
 */

.bx-wrapper {
	position: relative;
	margin: 0 auto 60px;
	padding: 0;
	*zoom: 1;
}

.bx-wrapper img {
	max-width: 100%;
	display: block;
}

.bx-wrapper .bx-viewport {
	/*fix other elements on the page moving (on Chrome)*/
	-webkit-transform: translatez(0);
	-moz-transform: translatez(0);
    -ms-transform: translatez(0);
    -o-transform: translatez(0);
    transform: translatez(0);
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
	position: absolute;
	bottom: -30px;
	width: 100%;
}

/* LOADER */
.bx-wrapper .bx-loading {
	min-height: 50px;
	background: url(../images/bx_loader.gif) center center no-repeat #fff;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2000;
}

/* PAGER */
.bx-wrapper .bx-pager {
	text-align: center;
	font-size: .85em;
	font-family: Helvetica Neue;
	font-weight: bold;
	color: #666;
	padding-top: 20px;
}

.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
	display: inline-block;
	*zoom: 1;
	*display: inline;
}

.bx-wrapper .bx-pager.bx-default-pager a {
	background: #666;
	text-indent: -9999px;
	display: block;
	width: 10px;
	height: 10px;
	margin: 0 5px;
	outline: 0;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #000;
}

/* CONTROLS */
.bx-wrapper .bx-prev {
	left: 10px;
	background: url(../images/controls.png) no-repeat 0 -32px;
}

.bx-wrapper .bx-next {
	right: 10px;
	background: url(../images/controls.png) no-repeat -43px -32px;
}

.bx-wrapper .bx-prev:hover {
	background-position: 0 0;
}

.bx-wrapper .bx-next:hover {
	background-position: -43px 0;
}

.bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: 50%;
	margin-top: -16px;
	outline: 0;
	width: 32px;
	height: 32px;
	text-indent: -9999px;
	z-index: 9999;
}

.bx-wrapper .bx-controls-direction a.disabled {
	display: none;
}

/* AUTO CONTROLS (START / STOP) */
.bx-wrapper .bx-controls-auto {
	text-align: center;
}

.bx-wrapper .bx-controls-auto .bx-start {
	display: block;
	text-indent: -9999px;
	width: 10px;
	height: 11px;
	outline: 0;
	background: url(../images/controls.png) -86px -11px no-repeat;
	margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active {
	background-position: -86px 0;
}

.bx-wrapper .bx-controls-auto .bx-stop {
	display: block;
	text-indent: -9999px;
	width: 9px;
	height: 11px;
	outline: 0;
	background: url(../images/controls.png) -86px -44px no-repeat;
	margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active {
	background-position: -86px -33px;
}

/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
	text-align: left;
	width: 80%;
}

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
	right: 0;
	width: 35px;
}

/* IMAGE CAPTIONS */

.bx-wrapper .bx-caption {
	position: absolute;
	bottom: 0;
	left: 0;
	/*background: #666\9;*/
	/*background: rgba(80, 80, 80, 0.75);*/
	width: 100%;
}

.bx-wrapper .bx-caption span {
	color: #fff;
	font-family: Helvetica Neue;
	display: block;
	font-size: .85em;
	padding: 10px;
}

ul.bxslider {
	margin:0 !important;
	padding:0 !important;
	list-style:none !important;
}


@media screen and (min-width: 400px) {

	#bgwhite,
	#mainnavi {
		left:10%;
		width:80%;
	}

	#container {
		width:80%;
	}
	
}

.flex{display:flex; justify-content:center;}

@media screen and (min-width: 768px) {

	#container img.portrait {
		margin:0 0 20px 0;
		width:50%;
		max-width:250px;
		display:block;
		float:left;
		margin-right:30px;
	}


	#mainnavi {
		background:rgba(188,31,45,0.8);
	}

	#bgwhite,
	#mainnavi {
		left:20%;
		width:60%;
	}

	#toggle{
		display: none;
	}

	#mainnavi ul {
		display:inline-block;
		margin-top: 7px;
		padding:0;
		background:none;
		opacity: 1;
	}

	#mainnavi ul li {
		display:block;
		float:left;
	}

	#mainnavi ul li a {
		display:block;
		line-height: 14px;
		height:16px;
		padding:0 7px;
		border-right:#FFF 1px solid;
		font-size: 17px;
	}

	#mainnavi ul li:last-child a {
		border: none;
	}

	#container {
		width:60%;
	}
	
	#container table colgroup col:nth-child(1) { width:35% }
	#container table colgroup col:nth-child(2) { width:65% }

}


*{margin:0;padding:0;text-decoration:none}
  
header{position:fixed;width:100%;z-index:1000;height:30px;}

#cssmenu ul {display:flex; justify-content: center;}
nav{position:absolute;width:60%;margin:0 auto;}

#cssmenu,
#cssmenu ul,
#cssmenu ul li,
#cssmenu ul li a,
#cssmenu #head-mobile{
	border:0;
	list-style:none;
	line-height:1;
	display:block;
	position:relative;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box
}

#cssmenu ul {display:flex; justify-content: center;padding:7px;}

#cssmenu:after,
#cssmenu > ul:after{
	content:".";
	display:block;
	clear:both;
	visibility:hidden;
	line-height:0;
	height:0}

#cssmenu #head-mobile{
	display:none
}

#cssmenu{
	font-family: Helvetica Neue;
	background:rgba(188,31,45,0.8);}

#cssmenu > ul > li{float:left}

#cssmenu > ul > li > a{
	font-size:17px;
	text-decoration:none;
	color:#fff; 
	border-right: rgb(255, 255, 255) 1px solid;
	height:16px;
	line-height: 14px; 
	padding: 0 7px;}
#cssmenu > ul > li:hover > a,#cssmenu ul li.active a{color:#fff}
#cssmenu > ul > li:hover,#cssmenu ul li.active:hover,#cssmenu ul li.active,#cssmenu ul li.has-sub.active:hover{background:rgba(188,31,45,0.8)!important;-webkit-transition:background .3s ease;-ms-transition:background .3s ease;transition:background .3s ease;}

#cssmenu > ul > li > a { 
	color:rgb(255, 255, 255);
	display: block;
	line-height: 14px;
	height: 16px;
	padding: 0 7px;
	border-right: rgb(255, 255, 255) 1px solid;
	font-size: 17px;}
#cssmenu > ul > li:last-child > a {border:none;}

// #cssmenu > ul > li.has-sub > a{padding-right:30px}
// #cssmenu > ul > li.has-sub > a:after{position:absolute;top:22px;right:11px;width:8px;height:2px;display:block;background:#ddd;content:''}
// #cssmenu > ul > li.has-sub > a:before{position:absolute;top:19px;right:14px;display:block;width:2px;height:8px;background:#ddd;content:'';-webkit-transition:all .25s ease;-ms-transition:all .25s ease;transition:all .25s ease}

#cssmenu > ul > li.has-sub:hover > a:before{top:23px;height:0}

#cssmenu ul ul{display: block;position:absolute;left:-9999px}

#cssmenu ul ul li{height:0;-webkit-transition:all .25s ease;-ms-transition:all .25s ease;background:rgba(188,31,45,0.8);transition:all .25s ease}

#cssmenu ul ul li:hover{}
#cssmenu li:hover > ul{left:auto}
#cssmenu li:hover > ul > li{height:35px}
#cssmenu ul ul ul{margin-left:100%;top:0}
#cssmenu ul ul li a{border-bottom:1px solid rgba(150,150,150,0.15);padding:11px 15px;width:180px;font-size:12px;text-decoration:none;color:#ddd;font-weight:400;}
#cssmenu ul ul li:last-child > a,#cssmenu ul ul li.last-item > a{border-bottom:0}
#cssmenu ul ul li:hover > a,#cssmenu ul ul li a:hover{color:#fff}

#cssmenu ul ul li.has-sub > a:after{position:absolute;top:16px;right:11px;width:8px;height:2px;display:block;background:#ddd;content:''}

#cssmenu ul ul li.has-sub > a:before{position:absolute;top:13px;right:14px;display:block;width:2px;height:8px;background:#ddd;content:'';-webkit-transition:all .25s ease;-ms-transition:all .25s ease;transition:all .25s ease}

#cssmenu ul ul > li.has-sub:hover > a:before{top:17px;height:0}

#cssmenu ul ul li.has-sub:hover,#cssmenu ul li.has-sub ul li.has-sub ul li:hover{background:rgba(188,31,45,0.8);}

#cssmenu ul ul ul li.active a{border-left:1px solid #333}

// #cssmenu > ul > li.has-sub > ul > li.active > a,#cssmenu > ul ul > li.has-sub > ul > li.active> a{border-top:1px solid #333}

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

nav{width:60%;padding-left:0px !important;}
#cssmenu{ opacity: 0.9;
		width:80%;}
#cssmenu ul{width:100%;padding: 0px !important;}
#cssmenu ul li{width:100%;}
#cssmenu ul li:hover{background:rgba(188,31,45,0.8);}
#cssmenu ul ul li,#cssmenu li:hover > ul > li{height:auto}
#cssmenu ul li a,#cssmenu ul ul li a{padding:25px;width:100%;border:none;}

#cssmenu ul ul li a{padding-left:25px}
#cssmenu ul ul li{}
#cssmenu ul ul li:hover{background:rgba(188,31,45,0.8)!important}

#cssmenu ul ul ul li a{padding-left:35px;}
#cssmenu ul ul li a{color:#ddd;padding-left:35px;}
#cssmenu ul ul li:hover > a,#cssmenu ul ul li.active > a{color:#fff}
#cssmenu ul ul,#cssmenu ul ul ul{position:relative;left:0;width:100%;margin:0;text-align:left}
#cssmenu > ul > li.has-sub > a:after,#cssmenu > ul > li.has-sub > a:before,#cssmenu ul ul > li.has-sub > a:after,#cssmenu ul ul > li.has-sub > a:before{display:none}

#cssmenu #head-mobile{
	display:block;
	padding:23px;
	color:#ddd;
	font-size:12px;
	font-weight:700
	}
.button{width:55px;height:46px;position:absolute;right:0;top:0;cursor:pointer;z-index: 12399994;}
.button:after{position:absolute;top:22px;right:20px;display:block;height:4px;width:20px;border-top:2px solid #dddddd;border-bottom:2px solid #dddddd;content:''}
.button:before{-webkit-transition:all .3s ease;-ms-transition:all .3s ease;transition:all .3s ease;position:absolute;top:16px;right:20px;display:block;height:2px;width:20px;background:#ddd;content:''}
.button.menu-opened:after{-webkit-transition:all .3s ease;-ms-transition:all .3s ease;transition:all .3s ease;top:23px;border:0;height:2px;width:19px;background:#fff;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}
.button.menu-opened:before{top:23px;background:#fff;width:19px;-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}
#cssmenu .submenu-button{position:absolute;z-index:99;right:0;top:0;display:block;height:46px;width:46px;cursor:pointer; top: 7px;}

#cssmenu ul ul .submenu-button{height:34px;width:34px}
#cssmenu .submenu-button:after{position:absolute;top:22px;right:19px;width:8px;height:2px;display:block;background:#ddd;content:''}
#cssmenu ul ul .submenu-button:after{top:15px;right:13px}
#cssmenu .submenu-button.submenu-opened:after{background:#fff}
#cssmenu .submenu-button:before{position:absolute;top:19px;right:22px;display:block;width:2px;height:8px;background:#ddd;content:''}
#cssmenu ul ul .submenu-button:before{top:12px;right:16px}
#cssmenu .submenu-button.submenu-opened:before{display:none}
#cssmenu ul ul ul li.active a{border-left:none}
#cssmenu > ul > li.has-sub > ul > li.active > a,#cssmenu > ul ul > li.has-sub > ul > li.active > a{border-top:none}

}