@font-face {
    font-family: 'open_sanslight';
    src: url('../fonts/OpenSans-Light-webfont.eot');
    src: url('../fonts/OpenSans-Light-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/OpenSans-Light-webfont.woff') format('woff'),
         url('../fonts/OpenSans-Light-webfont.ttf') format('truetype'),
         url('../fonts/OpenSans-Light-webfont.svg#open_sanslight') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'open_sanslight_italic';
    src: url('../fonts/OpenSans-LightItalic-webfont.eot');
    src: url('../fonts/OpenSans-LightItalic-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/OpenSans-LightItalic-webfont.woff') format('woff'),
         url('../fonts/OpenSans-LightItalic-webfont.ttf') format('truetype'),
         url('../fonts/OpenSans-LightItalic-webfont.svg#open_sanslight_italic') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'open_sansregular';
    src: url('../fonts/OpenSans-Regular-webfont.eot');
    src: url('../fonts/OpenSans-Regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/OpenSans-Regular-webfont.woff') format('woff'),
         url('../fonts/OpenSans-Regular-webfont.ttf') format('truetype'),
         url('../fonts/OpenSans-Regular-webfont.svg#open_sansregular') format('svg');
    font-weight: normal;
    font-style: normal;
}
* { 
	box-sizing:border-box;
	-moz-box-sizing:border-box; /* Firefox */
}
body { margin:0; padding:0; font-size:16px; color:#4e4e4f; font-family: 'open_sanslight', sans-serif; background-color:#FAFAFA;}
h1, h2, h3, h4, h5, h6 { color:#0e3087; font-weight:normal;}
h1 { font-size:200%; text-transform:uppercase;}
.ccm-layout-wrapper h1 { margin-top:8px;}
h2 { font-size:187.5%; line-height:133.3333333333%;}
h3 { font-size:150%; line-height:125%;}
p { line-height:150%;}
em { font-family:'open_sanslight_italic', sans-serif;}
strong, a:focus { font-family: 'open_sansregular', sans-serif;}
a { color:#75b0db; text-decoration:none; transition:color 0.3s; -webkit-transition:color 0.3s;}
a:hover { color:#102968; transition:color 0.3s; -webkit-transition:color 0.3s;}
a img { border:none;}
hr { margin-top:25px; border:0; height:1px; background-color:#c2c2c4;}

.wrapper { width:960px; margin:0 auto; position:relative;}
.left { float:left;}
.right { float:right;}

.ccm-input-button, input.submit { border:none; cursor:pointer; width:69%; font-family: 'open_sanslight'; margin-right:4px; float:right;}
a.btn, .ccm-input-button, input.submit { display:block; background-color:#75b0db; border-bottom:1px solid #102968; color:#FFF; text-align:center; transition:background-color 0.3s; -webkit-transition:background-color 0.3s; padding:23px 8px 23px; font-size:112.5%; margin-top:24px;}
a.btn:hover, .ccm-input-button:hover, input.submit:hover{ background-color:#9fceec; transition:background-color 0.3s; -webkit-transition:background-color 0.3s;}

/* Header */
header { overflow:hidden; margin-bottom:16px;}
div.logo { float:left; margin:0;}
div.logo a { width:186px; position:relative; display:block; overflow:hidden;}
div.logo a img { position:absolute; top:0; left:0; opacity:1; transition:opacity 0.3s; -webkit-transition:opacity 0.3s;}
div.logo a:hover img.top { opacity:0; transition:opacity 0.3s; -webkit-transition:opacity 0.3s;}
div.logo a span {font-size: 112.5%;
    margin-left: 20px;
    padding: 46px 0 47px; display:block}
nav { float:right;}
nav ul { padding:0; margin:0; list-style:none; text-align:center;}
nav ul li { f2loat:left; display:inline-block;}
nav.nav-collapse li { width:auto; display:inherit;}
nav ul li a, nav a#drop { font-size:100%; color:#484b53; display:block; width:auto; padding:47px 20px 48px; text-align:center; transition:color 0.3s, background-color 0.3s, border-color 0.3s; -webkit-transition:color 0.3s, background-color 0.3s, border-color 0.3s; border-color:rgba(0,0,0,0); margin-left:0;border-left:1px solid transparent;border-right:1px solid transparent;}
nav ul li a:hover, nav ul li a.nav-selected, nav a#drop:hover { color:#fff; background-color:#9fceec; border-left:1px solid #8591b0; border-right:1px solid #8591b0; transition:color 0.3s, background-color 0.3s, border-color 0.3s; -webkit-transition:color 0.3s, background-color 0.3s, border-color 0.3s; }
nav a#drop { display:none; background-image:url(../img/menu.png); background-position:center right; background-repeat:no-repeat;}
nav a#drop.active, nav a#drop:hover {background-color:#9fceec; color:#FFF; background-image:none;}

.emo { clear:both; }

/* Content */
#content { overflow:hidden;}
.content.left { width:58.3333333333%}
.content.right { width:37.5%;}
#content ul { list-style:none; padding-left:0;}
#content ul li { background:url(../img/li-style.png) left 9px no-repeat; padding-left:19px;}
#content li { margin-bottom:5px;}
a.btn.hide, .readmorecont.hide, .readmoreshow.hide { display:none;}
#content img { max-width:100%; height:auto;}
#content a.zoom { display:block; position:relative;}
#content a.gallery { margin-bottom:20px;}
#content .content.right a:first-child img { margin-top:35px;}
.content.left a.btn, .ccm-input-button, input.submit { width:344px;}
.readmorehide:before { content:' ...';}


a.zoom::after { content:url(../img/icn_lupe.png); position:absolute; bottom:10px; right:10px; transition:opacity 0.3s; -webkit-transition:opacity 0.3s; opacity:0.25;}
a.zoom:hover:after { opacity:1; transition:opacity 0.3s; -webkit-transition:opacity 0.3s;}

/* Aktuelles */
.content.right .aktuelles { margin-bottom:70px; padding:20px; background-color:#eaf3fa; }
.content.right .aktuelles h3 { margin-top:0;}
.content.right .aktuelles p:last-child { margin-bottom:0;}
.aktuelles span.date { color:#0e3087;}
.aktuelles p img, .aktuellesinhalt p img { margin:0 19px 20px 0; width:160px; height:auto; border:1px solid #dcdcdc; }
.aktuelles, .aktuelles.vergangen { margin-bottom:25px;}
.aktuellesinhalt { overflow:hidden;}

.news-article { overflow:hidden; margin-bottom:25px; border-bottom:1px solid #dedede; padding-bottom:33px;}
.news-article:last-child { border-bottom:none; padding-bottom:0; margin-bottom:0;}

.aktuelles .news-article {
    border-bottom: medium none;
    margin-bottom: 0;
    padding-bottom: 0;
}
.aktuelles .news-image.content.right {
    float: none;
    width: 100%;
}
.aktuelles .news-text.content.left {
    float: none;
    width: 100%;
}

/* Footer */
footer { overflow:hidden;}
.footerinfo { margin-top:70px; overflow:hidden; background-color:#edeef1; padding:15px 0;}
.footerinfo div.addropen { width:35.4166666667%;}
.footerinfo div.address, .footerinfo div.opening { width:100%;}
.footerinfo .anfahrt { width:64.5833333333%;}
.footerinfo .anfahrt .text { width:51.6129032258%;}
.footerinfo .anfahrt .img { width:41.935483871%; overflow:hidden; margin-top:78px; position:relative;}
.footerinfo .anfahrt .img img { margin-left:-50px;}
.footerinfo .anfahrt .img .icn img { margin:0;}
.footerinfo .opening { margin-top:50px;}
.footerinfo span.day { width:40px; display:inline-block;}
footer nav { float:none;}
footer nav ul { overflow:hidden;}
footer nav ul li a { padding:19px 0 20px; margin-left:0; margin-right:10px;width:123px;}

/* Blueimp */
#blueimp-gallery { background-color:rgba(16,41,104,0.95);}
#blueimp-gallery > .close { display:inherit; font-size:60px; margin:20px;}
#blueimp-gallery > .title { display:inherit; font-size:24px; margin:0 0 20px; bottom:15px; top:auto; padding:15px 10px; text-align:center; left:0; width:100%;}
#blueimp-gallery > .prev, #blueimp-gallery > .next, #blueimp-gallery > .indicator { display:inherit;}
#blueimp-gallery.blueimp-gallery-single > .prev, .blueimp-gallery-left > .prev, #blueimp-gallery.blueimp-gallery-single > .next, .blueimp-gallery-right > .next, #blueimp-gallery.blueimp-gallery-single > .play-pause, #blueimp-gallery.blueimp-gallery-single > .indicator { display:none;}

/* C5 */
.ccm-ui input, .ccm-ui textarea, .ccm-ui select, .ccm-ui .uneditable-input { height:auto !important;}

/* Formular */
fieldset { border:none; padding:0;}
.formblock {margin-top:24px; overflow:hidden;}
div.errors { padding:20px; border:1px solid #d92f20; background-color:rgba(217,47,32,0.15); color:#d3181c; margin-bottom:24px;}
div.success { padding:20px; border:1px solid #81b726; background-color:rgba(129,183,38,0.15); color:#5f8d27; margin-bottom:24px;}
.field { margin-bottom:5px; clear:both;} 
.field > legend { display: inline-block; width: 30%; float:left;}
.field.field-textarea > legend { vertical-align: top; }
span.required { color:#75B0DB; font-family: 'open_sansregular';}
input, textarea { padding:5px; font-size:16px; color:#686869; font-family: 'open_sanslight'; width:69%; border:1px solid #b5b5b5; transition:border-color 0.3s; -webkit-transition:border-color 0.3s;}
input:focus, textarea:focus { transition:border-color 0.3s; -webkit-transition:border-color 0.3s; border-color:#75B0DB;}
.radioList,
.checkboxList { width:69%; float:right;}
.radioPair,
.checkboxPair { width:auto; float:left; margin-right:20px;}
.radioPair input,
.checkboxPair input { width:auto;}

/* Anchor Address / Opening */
#addopen, #totop { position:fixed; bottom:0; background-color:#75b0db; color:#FFF; display:block; padding:10px; transition:bottom 0.3s, opacity 0.3s, background-color 0.3s; -webkit-transition:bottom 0.3s, opacity 0.3s, background-color 0.3s; }
#addopen { left:inherit;}
#addopen img { float:right; display:block; margin:0 0 0 5px;}
#totop { margin-left:909px; z-index:999; }
#totop img { display:block;}
/*#addopen span { -webkit-transform: scaleX(2.7); -moz-transform: scaleX(2.7); -ms-transform: scaleX(2.7); -o-transform: scaleX(2.7); transform: scaleX(2.7); float:right; display:inline-block; margin:-1px 12px 0 20px; font-family:'open_sanslight',sans-serif !important;}*/
#addopen:hover, #totop:hover { background-color:#9FCEEC; transition:background-color 0.3s; -webkit-transition:background-color 0.3s;}
#addopen.hide, #totop.hide { bottom:-22px; transition:bottom 0.3s, opacity 0.3s; -webkit-transition:bottom 0.3s, opacity 0.3s; opacity:0;}

/* Hilfsnavigation ('unsichtbare' Sprungmarken) */
#skiplinks {
  float: left;
  text-align: left;
  width:0;
}

#skiplinks ol {
  padding: 0;
}

#skiplinks li {
  display: inline;
  list-style: none;
}

#skiplinks a:link, #skiplinks a:visited, #skiplinks a:hover {
  height: 1em;
  left: -400em;
  position: absolute;
}

#skiplinks a:active, #skiplinks a:focus {
  background-color: #005a88;
  color: #FCFCFC;
  font-weight: bold;
  height: auto;
  left: 0;
  text-align: center;
  padding:14px;
}

/*  */
.content.full.cols3 { 
	clear: both;
	overflow: hidden;
}
.content.full.cols3 ul { 
	-moz-column-count: 3;
	-moz-column-gap: 40px;
	-webkit-column-count: 3;
	-webkit-column-gap: 40px;
	column-count: 3;
	column-gap: 40px;
}


@media screen and (max-width:1000px){
	.wrapper { width:100%; padding:0 20px;}
	.emo img { width:100%; height:auto;}
	header nav ul li a { width:118px; padding:47px 0 48px;}
	nav ul li a { width:123px;}
	header div.wrapper { padding:0;}
	.content.right .aktuelles p img { float:none; width:100%;}
	.footerinfo div.addropen { width:37.5%;}
	.footerinfo div.address, .footerinfo div.opening { width:100%;}
	.footerinfo .anfahrt { width:58.3791208791%;}
	#addopen { left:0;}
	#totop { right:0; }
}
@media screen and (max-width:935px){
	header { overflow:inherit;} 
	header nav a#drop { display:block;}
	header nav { position:relative; margin-right:20px;}
	header nav ul { display:none; position:absolute; left:0; background-color:#edeef1; border-top:2px solid #8591b0; z-index:2;}
	header nav ul li { float:none;}
	header nav ul li a { margin-left:0; width:140px; padding:26px 0 27px;}
	nav ul li a, nav a#drop {width:140px;}
}
@media screen and (max-width:768px){
	#addopen { display:block;}	
}
@media screen and (max-width:741px){
	#content .content { float:none; width:100%;}
	#content .content h2 { clear:both;}
	.aktuelles p { overflow:hidden;}
	.aktuelles p img, .content.right .aktuelles p img { width:50%; float:left;}
	.aktuellesinhalt p { overflow:visible;}
	.footerinfo div.addropen, .footerinfo .anfahrt { float:none; width:100%; overflow:hidden;}
	.footerinfo div.address, .footerinfo div.opening { width:44.7916666667%;}
	.footerinfo div.address { float:left;}
	.footerinfo div.opening { float:right; margin-top:0;}
	footer nav ul li a { color:#75B0DB;}
	.content.left a.btn, .ccm-input-button, input.submit { width:100%;}
	.readmorehide {
		background-color: #75B0DB;
		border-bottom: 1px solid #102968;
		color: #FFFFFF;
		display: block;
		font-size: 112.5%;
		margin-top: 24px;
		padding: 23px 8px;
		text-align: center;
		transition: background-color 0.3s ease 0s;
	}
	.readmorehide:before { content:'';}
	.content.full.cols3 ul { 
		-moz-column-count:2;
		-webkit-column-count: 2;
		column-count: 2;
	}
	
}
@media screen and (max-width:720px){
	#content .ccm-layout-1-col-1, #content .ccm-layout-1-col-2 { width:100% !important; float:none;}
}
@media screen and (max-width:628px){
	table.formBlockSurveyTable { width:100%;}
}
@media screen and (max-width:611px){
	nav ul li a { padding:27px 0 28px;}
	footer nav { float:none; width:100%;}
	footer nav ul li { width:49%;}
	footer nav ul li a { width:100%; margin-left:0;}
}
@media screen and (max-width:583px){
	.footerinfo div.address, .footerinfo div.opening { float:none; width:100%;}
	.footerinfo div.opening { margin-top:50px;}
	.footerinfo div.anfahrt .text, .footerinfo div.anfahrt .img { float:none; width:100%;}
	.footerinfo .anfahrt .img { margin-top:20px;}
	.footerinfo .anfahrt .img img { margin-left:0; width:100%;}
	.field-text legend, .field-telephone legend, .field-email legend, .field-textarea legend, .field-text input, .field-telephone input, .field-email input, .field-textarea textarea { width:100%;}

	.content.full.cols3 ul { 
		-moz-column-count:1;
		-webkit-column-count:1;
		column-count:1;
	}
}
@media screen and (max-width:565px){
	.ccm-input-button, input.submit { margin-right:0; float:none; width:100%;}
}
@media screen and (max-width:480px){
		h1 { font-size:175%; margin:14px 0;}
		h2 { font-size:150%;}
		h3 { font-size:125%; margin:0;}
		hr { margin-bottom:28px;}
}
@media screen and (max-width:400px){
	#content .aktuellesinhalt p img { width:100%;}
}
@media screen and (max-width:383px){
	div.logo a { width:168px;}
	div.logo a img { width:100%; height:auto;}
	div.logo a span, nav a#drop { padding:40px 0 41px;}
}
@media screen and (max-width:350px){
	.wrapper { padding:0 10px;}
	header nav { margin-right:10px;}
	header nav a#drop { margin-left:0; width:135px; }
	header nav ul { left:0;}
	header nav ul li a { width:135px;}
}


.ce-google-maps {
    position: relative;
    width: 100%;
    height: 0;
	min-height: 309px;
    padding-bottom: 50%;
}
.ce-google-maps iframe {
	height:309px;
	width:100%;
}
.gmap-opt-in-wrap {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    background-color: #FAFAFA;
	background:url(../img/map-vorschau.jpg) center center no-repeat;
    height: 100%;
}

.gmap-opt-in-button-wrap {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.gmap-opt-in-button {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    cursor: pointer;
    width: 95%;
    max-width: 20em;
    color: rgb(20%,20%,20%);
    background-color:rgba(255,255,255,0.95);
    padding: 0.75em;
    border-radius:0;
}
.gmap-opt-in-button > div:first-child {
    text-align: center;
	font-size: 100%;
	color:#0e3087;
    line-height: 125%;
    margin-bottom: 10px;
}
.gmap-opt-in-button > div:last-child {
    font-size:80%;
    line-height: 1.5;
}