body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}.aspect--9\:16,.responsive.ratio-916{padding-bottom:177.7777%}.aspect--1\:1,.responsive.ratio-11{padding-bottom:100%}
@media only screen and (max-width: 980px) {
	/* btn */
.btn {
	width: 45px;
	height: 45px;
	margin: 0 15px 0 15px;
    cursor: pointer;
    position: absolute;
    right:0;
    z-index: 200;
    /*top: -12px;*/
    top:6px;
}
	.btn span {
	    height: 2px;
	    display: block;
	    position: absolute;
	    top: 22.5px;
	    left: 0;
	    right: 10%;
	    background-color: #272727;
	    -webkit-transition: background 0.15s linear 0.15s;
	    -o-transition: background 0.15s linear 0.15s;
	    transition: background 0.15s linear 0.15s;
	}
	.btn span::before {
	    top: -10px;
	    -webkit-transition: top 0.15s linear 0.15s, -webkit-transform 0.15s linear;
	    transition: top 0.15s linear 0.15s, -webkit-transform 0.15s linear;
	    -o-transition: top 0.15s linear 0.15s, transform 0.15s linear;
	    transition: top 0.15s linear 0.15s, transform 0.15s linear;
	    transition: top 0.15s linear 0.15s, transform 0.15s linear, -webkit-transform 0.15s linear;
	}
	.btn span::after {
	    bottom: -10px;
	    -webkit-transition: bottom 0.15s linear 0.15s, -webkit-transform 0.15s linear;
	    transition: bottom 0.15s linear 0.15s, -webkit-transform 0.15s linear;
	    -o-transition: bottom 0.15s linear 0.15s, transform 0.15s linear;
	    transition: bottom 0.15s linear 0.15s, transform 0.15s linear;
	    transition: bottom 0.15s linear 0.15s, transform 0.15s linear, -webkit-transform 0.15s linear;
	}
	.btn span::before, .btn span::after {
	    content: "";
	    width: 100%;
	    height: 2px;
	    display: block;
	    position: absolute;
	    left: 0;
	    background-color: #272727;
	}
	body.nav-open .btn span {
	    -webkit-transition: background 0.15s linear;
	    -o-transition: background 0.15s linear;
	    transition: background 0.15s linear;
	    background: none;
	}
	body.nav-open .btn span::before {
	    top: 0px;
	    -webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	    transform: rotate(45deg);
	    -webkit-transition: top 0.15s linear, -webkit-transform 0.15s linear 0.15s;
	    transition: top 0.15s linear, -webkit-transform 0.15s linear 0.15s;
	    -o-transition: top 0.15s linear, transform 0.15s linear 0.15s;
	    transition: top 0.15s linear, transform 0.15s linear 0.15s;
	    transition: top 0.15s linear, transform 0.15s linear 0.15s, -webkit-transform 0.15s linear 0.15s;
	    background-color: #d60027;
	}
	body.nav-open .btn span::after {
	    bottom: 0px;
	    -webkit-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	    transform: rotate(-45deg);
	    -webkit-transition: bottom 0.15s linear, -webkit-transform 0.15s linear 0.15s;
	    transition: bottom 0.15s linear, -webkit-transform 0.15s linear 0.15s;
	    -o-transition: bottom 0.15s linear, transform 0.15s linear 0.15s;
	    transition: bottom 0.15s linear, transform 0.15s linear 0.15s;
	    transition: bottom 0.15s linear, transform 0.15s linear 0.15s, -webkit-transform 0.15s linear 0.15s;
	    background-color: #d60027;
	}
/* btn ENDE */

/* nav */
	header nav{
		display:none;
	}
/* nav ENDE */
}
/* noto-sans-100 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 100;
  src: url('../../files/fonts/noto-sans-v42-latin-100.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-100italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: italic;
  font-weight: 100;
  src: url('../../files/fonts/noto-sans-v42-latin-100italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 200;
  src: url('../../files/fonts/noto-sans-v42-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-200italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: italic;
  font-weight: 200;
  src: url('../../files/fonts/noto-sans-v42-latin-200italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 300;
  src: url('../../files/fonts/noto-sans-v42-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: italic;
  font-weight: 300;
  src: url('../../files/fonts/noto-sans-v42-latin-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../../files/fonts/noto-sans-v42-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../../files/fonts/noto-sans-v42-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 500;
  src: url('../../files/fonts/noto-sans-v42-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-500italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: italic;
  font-weight: 500;
  src: url('../../files/fonts/noto-sans-v42-latin-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../../files/fonts/noto-sans-v42-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: italic;
  font-weight: 600;
  src: url('../../files/fonts/noto-sans-v42-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../../files/fonts/noto-sans-v42-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: italic;
  font-weight: 700;
  src: url('../../files/fonts/noto-sans-v42-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-800 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 800;
  src: url('../../files/fonts/noto-sans-v42-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-800italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: italic;
  font-weight: 800;
  src: url('../../files/fonts/noto-sans-v42-latin-800italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-900 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 900;
  src: url('../../files/fonts/noto-sans-v42-latin-900.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* noto-sans-900italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Noto Sans';
  font-style: italic;
  font-weight: 900;
  src: url('../../files/fonts/noto-sans-v42-latin-900italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

* {
    padding:0;
    margin:0;
    text-size-adjust: none;
        -webkit-text-size-adjust: none;
        -moz-text-size-adjust: none;
        -ms-text-size-adjust: none;
}
html,
body {
    margin:0;
    padding:0;
}
body {
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 300;
  color: #272727;
}
h1 {
  font-size: 30px;
  font-weight: 500;
  margin-bottom: 10px;
}
h2 {
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 10px;
}
h3 {
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 10px;
}
p {
  line-height: 1.8em;
  margin-bottom: 1em;
}
.text-only {
  margin-top: 135px;
}
.text-only h2 {
  margin-top: 30px;
}
.text-only a,
.back a {
  color: #d60027;
  text-decoration: none;
}
.text-only a:hover,
.back a:hover {
  color: #272727;
  text-decoration: underline;
}
.back a {
  margin-top: 50px;
  float: left;
}
.max-width {
	max-width: 1200px;
	padding-left: 20px;
	padding-right: 20px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}
header .max-width {
	max-width: 1500px;
}
header {
  padding: 20px;
  position: fixed;
  background-color: #ffffff;
  z-index: 10;
  width: 100%;
  display: inline-block;
  box-sizing: border-box;
  border-bottom: 5px solid #d60027;
}
header .logo {
  width: 140px;
  height: auto;
  float: left;
}
header nav {
  float: right;
  margin-top: 18px;
}
header nav ul li {
	display:inline-block;
  padding-bottom: 20px; 
}
header nav a,
header nav strong,
header nav a.trail {
	font-weight:300;
	display:inline-block;
	line-height:18px;
	margin-left:30px;
}
header nav a {
  color: #272727;
	border-bottom:2px solid #ffffff;
	text-decoration: none;
}
header nav strong,
header nav a:hover,
header nav a.trail{
  color: #d60027;
	border-bottom:2px solid #d60027;
}
.menu nav {
	overflow:visible;
}
header nav ul.level_2 {
  position: absolute;
  background-color: rgb(255, 255, 255);
  padding-left: 0;
  padding-right: 0;
  padding-top: 10px;
  padding-bottom: 10px;
  z-index: 10;
  display: none;
  min-width: 180px;
  margin-top:10px;
  margin-left: 20px;
}
header nav li .level_2 li {
  padding: 0;
  display: block;
  clear: both;
  text-align: left;
  line-height: 30px;
}
header nav li .level_2 li a,
header nav li .level_2 li strong{
  margin-left: 10px;
  margin-right: 10px;
}
.col-3 {  
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 20px;
}
.col-2 {  
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 20px;
}
.header-image img{
  width: 100%;
  height: 500px;
  object-fit: cover;
  object-position: center center;
}
.header-image.klein img {
  height: 300px;
}
.content-text,
.content-headline {
  margin-top: 50px;
}
.content-text ul li {
	list-style-type: none;
	position: relative;
	margin-left: 18px;
	line-height: 1.8em;
}
.content-text ul li:before {
  content: "•";
  color: #d60027;
  position: absolute;
  top: 0px;
  left: -18px;
  font-size: 2em;
}
footer {
  background-color: #d1d1d1;
  width: 100%;
  box-sizing: border-box;
  border-top: 5px solid #d60027;
  margin-top: 100px;
  padding: 40px 0;
}
footer p {
  float: left;
  margin-bottom: 0;
}
footer nav {
  float: right;
  line-height: 1.8em;
}
footer nav ul li {
	display:inline-block;
}
footer nav a,
footer nav strong,
footer nav a.trail {
	font-weight:300;
	display:inline-block;
	line-height:18px;
	margin-left:10px;
}
footer nav a {
  color: #272727;
	border-bottom:2px solid transparent;
	text-decoration: none;
}
footer nav strong,
footer nav a:hover,
footer nav a.trail{
  color: #d60027;
	border-bottom:2px solid #d60027;
}
.button a {
  line: 0 !important;
  display: block;
  background-color: transparent;
  color: #ffffff;
  width: auto;
  padding-left: 10px;
  padding-right: 10px;
  border: none;
  padding: 10px;
    padding-right: 10px;
    padding-left: 10px;
  padding-right: 10px;
  padding-left: 10px;
  box-sizing: border-box;
  text-align: center;
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 300;
  margin-top: 30px;
  cursor: pointer;
  background-color: #d60027;
  font-weight: 500;
  font-size: 1em;
  float: left;
  text-decoration: none;
}
.button a:hover {
  background-color: #272727;
  transition: all 1s ease;
}
.detail-seite .stellenanzeige-details {
  margin-top: 200px;
}
.stellenanzeige-details p.info {
  display: none;
}
.mod_newslist {
  margin-top: 30px;
}
.mod_newslist .more {
  display: none;
}
.mod_newslist .stellenanzeige-details:nth-child(even) {
  background-color: #f7f7f7;
}
.mod_newslist .stellenanzeige-details:hover {
  background-color: #d1d1d1;
}
.mod_newslist .stellenanzeige-details {
  padding-left: 10px;
  padding-right: 10px;
}
.mod_newslist .text-only {
  margin-top: 0;
}
.mod_newslist h2,
.mod_newslist .content-text,
.mod_newslist p.standort {
  width: calc( 100% / 3);
  float: left;
  padding-top: 5px;
  padding-bottom: 5px;
  margin: 0;
  line-height: 2em;
  font-size: 16px;
}
.mod_newslist p {
  margin-bottom: 0;
}
/* formular */
.formular {
  margin-top: 30px;
}
.formular input,
.formular select,
.formular textarea{
	width:100%;
	background-color:transparent;
	border:1px solid #272727;
	line-height:50px;
	box-sizing:border-box;
	color:#272727;
	padding-left:10px;
	padding-right:10px;
	margin-bottom:10px;
	font-family: 'Noto Sans';
	webkit-border-radius: 0;
	border-radius: 0;
	height:40px;
	font-size: 16px;
	margin-bottom: 20px;
	font-weight: 300;
}
.formular input:focus,
.formular select:focus,
.formular textarea:focus {
	border:1px solid #d60027;
}
.formular textarea{
	min-width:100%;
	height: 130px;
	line-height:38px;
}
.formular button.submit,
.formular button.submit:hover{
  width: auto;
  text-align: center;
  outline: 0 !important;
  display: block;
  background-color:transparent;
  color: #ffffff;
  width: auto;
  padding-left: 10px;
  padding-right: 10px;
  border: none;
  padding: 10px;
  padding-right: 10px;
  padding-left: 10px;
  box-sizing: border-box;
  text-align: center;
  font-family: 'Noto Sans';  
  font-style: normal;
  font-weight: 300;
  margin-top:30px;
  cursor:pointer;
  background-color: #d60027;
  font-weight: 500;
  font-size: 1em;
}
.formular button.submit:hover{
  background-color: #272727;
  transition: all 1s ease;
}

.widget-checkbox {
	margin-top:15px;
	margin-bottom:30px;
}
.checkbox_container {
	border:0;
}
.widget-checkbox input {
  float: left;
  width: auto;
  height: auto;
  margin-right: 10px;
  margin-top: 3px;
}
.widget-checkbox a {
	color: #d60027;
	text-decoration: none;
}
.widget-checkbox a:hover {
	color: #272727;
	text-decoration: underline;
}
@media only screen and (max-width: 780px) {

	.formular textarea {
	  padding-top: 10px;
	  line-height: 30px;
	}
}

/* general */

.formular.col-3 {  
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 20px;
}
.formular .col-2 {  
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 20px;
}
.formular option:hover {
  color: #ffffff;
  background-color:#d60027 !important;
}
.formular input::placeholder, 
.formular textarea::placeholder{
  color: #272727;
  opacity: 1;
}
.formular select option{
  color: #272727;
  opacity: 1;
  background-color:transparent;
  border-radius:0;
}
.formular label {
	padding-bottom:5px;
	display:block;
}
.widget-explanation {
  font-size: 0.9em;
  font-style: italic;
  margin-top: 30px;
}
@media only screen and (max-width: 520px) {
.formular .col-3,  
.formular .col-2 {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-gap: 0;
}
}
@media only screen and (max-width: 1440px) {
}

@media only screen and (min-width: 980px) {
	header nav li:hover > ul.level_2,
	header nav ul.level_2:hover {
		display: block !important;
	}
}
@media only screen and (max-width: 980px) {
	header nav li a,
	header nav li strong,
	header nav li trail {
		font-weight: 500;
		text-align: right;
		margin-bottom: 10px;
	}
	header nav ul.level_2 {
	  position: relative;
	  float: right;
	  clear: both;
	}
	header nav ul.level_2 {
	   display: block;
	}
	header nav li .level_2 li a, header nav li .level_2 li strong {
		margin-left: 0;
		margin-right: 0;
		font-weight: 300;
	}
	header nav ul li a,
	header nav ul li strong{
		float:right;
	}
	header nav li {
	    display: block;
	    padding-bottom: 20px;
	    float:right;
	    clear:both;
	}
	header nav{
		position: absolute;	
	    background-color: #ffffff;
	    top: 0;
	    margin-top: 85px;
	    padding: 30px;
	    padding-bottom: 30px;
	    height: 100vh;
	    width: auto;
	    overflow-y: auto !important;
	    z-index: 20;
	    min-width: 98px;
	    right: -20px;
	    max-width: 230px;
	    box-sizing: border-box;
	    padding-bottom: 110px;
	}
	header nav ul{
		padding-top: 0;
	}
	header nav ul.level_2 {
		padding-top: 0;
	}
	header nav a, header nav strong, header nav a.trail {
		margin-left:0;
	}
	footer nav {
		float: left;
		margin-top: 10px;
		width: 100%;
	}
}

@media only screen and (max-width: 900px) {
	.col-3 {  
	  display: grid;
	  grid-template-columns: repeat(1, 1fr);
	  grid-gap: 20px;
	}
	.col-2 {  
	  display: grid;
	  grid-template-columns: repeat(1, 1fr);
	  grid-gap: 20px;
	}
}
