/* Version:  März 2023 / Creator: Durchwahl 282/

@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

 html {
	 -webkit-text-size-adjust: 100%; /* 2 */
}

* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

body {
  font-family: "Open Sans", sans-serif;
	font-size: 100%;
	color: #4c4d4d;
	text-decoration: none;
	font-weight: normal;
	word-spacing: normal;
	line-height: 1.3;
	background-color: #fff;
	/*	Hintergrundbilder werden in Chrome mit ausgedruckt	*/
	-webkit-print-color-adjust:exact;
}

.frame-outer {
	position: relative;
	width: 780px; /*	maximale Breite: 782px	*/
	margin: 1.3rem auto;
	background-color: #fff;
	box-shadow: -0.1rem 0.1rem 1rem rgba(0,0,0, 0.2);
	font-size: 0.8rem; /*	minimale Schriftgröße 0.6rem	*/
}

.frame-outer::after {
	content: "";
	display: block;
	clear: both;
}

/*--für Titel--*/
h1 {
	line-height: 1.3;
	margin: 1rem 0 0 0;
	font-size: 2.2rem;
	font-weight: 700;
}

h1 span {
	font-size: 1rem;
}

/*--für Untertitel (Vollzeit, Teilzeit/Standort)--*/
h2 {
	line-height: 1.3;
	margin: 0 0 0.5rem 0;
	font-size: 2.2rem;
	font-weight: 700;
	text-transform: lowercase;
}

/*--für Überschiften--*/
h3 {
	line-height: 1.3;
	margin: 0 0 0.5rem 0;
	font-size: 1rem;
	font-weight: 700;
}

/*--für kleine/unter Überschiften--*/
h4 {
	line-height: 1.3;
	margin: 0;
	font-size: 0.9rem;
	font-weight: 400;
	position: absolute;
	bottom: 1.5rem;
	right: 1.5rem;
	text-align: right;
}

#logo {
position: absolute;
top: 5.5rem;
z-index: 5;
	width: 100%;
}

#logo p{
  text-align: center;
}

#logo img { display: inline-block;width: 10rem}

#header {
	position: relative;
}

.bg-grey {
background-color: #4c4d4d;
	padding: 1.5rem;
	color: #fff;
}


.hover-white {
	padding: 1.5rem;
	 background-color: #fff;
	margin-left: 7rem;
	transition: all 140ms ease 0s;
	-moz-transition: all 140ms ease 0s;
	-webkit-transition: all 140ms ease 0s;
}

.hover-white:hover {
color:#fff;
	padding: 1.5rem;
	 background-color: rgba(76,77,77,0.80);
	transition: all 140ms ease 0s;
	-moz-transition: all 140ms ease 0s;
	-webkit-transition: all 140ms ease 0s;
}

.bg-white {
background-color: #fff;
	padding: 1.5rem;
}

.bg-red {
background-color: #e00a18;
	padding: 1.5rem;
	color: #fff;
	
}

.hover-red {
	padding: 1.5rem;
	 background-color: #e00a18;
	margin-left: 7rem;
	transition: all 140ms ease 0s;
	-moz-transition: all 140ms ease 0s;
	-webkit-transition: all 140ms ease 0s;
}

.hover-red:hover {
color:#4c4d4d;
	padding: 1.5rem;
	 background-color: rgba(255,255,255,0.80);
	transition: all 140ms ease 0s;
	-moz-transition: all 140ms ease 0s;
	-webkit-transition: all 140ms ease 0s;
}

/*--für Stellentitel--*/
#title { 
	position: relative;
	padding: 1rem 4%;
}

#footer {
	background-color: #4c4d4d;
	padding: 1.5rem;
	color: #fff;
}

#footer::after {
	content: "";
	display: block;
	clear: both;
}
/*--Flex--*/

.flex {
	display: flex;
	display: -ms-flexbox;
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	/*align-items: flex-start;*/
	flex-direction: row;
	flex-wrap: wrap;
}

.left {
	width: 55%;
}

.right {
	width: 40%;
	display: flex;
justify-content: end;
align-items: end;
}

.left-contact {
	width: 50%;
}

.right-contact {
	width: 50%;
}

.left-footer {
	width: 48%;
}

.right-footer {
	width: 48%;
	display: flex;
	align-items: end;
	justify-content: end;
}

.background-image {
  position: relative;
  padding: 1.5rem 1.5rem 2rem 1.5rem;
}

.text-box {
  position: relative; 
  color: #fff; 
}

.hover-text-box {
	padding: 1.5rem;
	 background-color: none;
	margin-left: 7rem;
	transition: all 140ms ease 0s;
	-moz-transition: all 140ms ease 0s;
	-webkit-transition: all 140ms ease 0s;
}

.hover-text-box:hover {
color:#fff;
	padding: 1.5rem;
	 background-color: rgba(224,10,24,0.80);
	transition: all 140ms ease 0s;
	-moz-transition: all 140ms ease 0s;
	-webkit-transition: all 140ms ease 0s;
}

/*--Links - bitte für unterschiedliche Hintergründe farblich anpassen!--*/
a:link, a:visited, a:active  {
    text-decoration: none;
	color: #e00a18;
}

a:hover {
	text-decoration: none;
	color: #c00806;
}

/*--Listen--*/
ul {
	margin: 0;
	list-style-type: none;
}

li {
	position: relative; 
	margin: auto;
	padding: 0 0 0.3rem 1rem;
}

li:last-child{
	padding-bottom: 0;
}

li::before {
	 position: absolute;
	 top: 0;
	 left: 0;
	 content: "•";
	 font-size: 0.8rem;	
} 

/*--Eingrückte Listenpunkte--*/
li ul{ 
	margin: 0 0 0 0;
	padding: 0 0 0 1rem;
}

/*--Button--*/
.button_box {
	text-align: left;
}

.button_box::after {
	clear: both;
	content: "";
	display: block;
}

.button a {
	display: inline-block;
	background: #e00a18;
	padding: 0.6rem 2rem 0.6rem 2rem;
	margin: 0 auto;
	cursor: pointer;
	-webkit-border-radius: 0.3rem;
	border-radius: 0.3rem;
	transition: all 140ms ease 0s;
	-moz-transition: all 140ms ease 0s;
	-webkit-transition: all 140ms ease 0s;
	color: #fff;
}
.button a:hover {
	background-color: #c00806;
	text-decoration: none;
	color: #fff;
}

/*--Slider editierbar--*/

.slider-wrap {
    max-width: 800px;
    width: auto;
    height: auto;
    position: relative;    
    margin: 0;
    overflow: hidden;
}

.slider-wrap img {
	display: block;
}
  
.slideshow {
    position: absolute;
    width: 100%;
    top: 0px;
    left: 0px;
    z-index: 0;
}

/*--pro Bild 6 Sekunde -> 4 Bilder = 24s, 5 Bilder = 30s, usw.--*/

.slideshow li span {
    width: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    color: transparent;
    opacity: 0;
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-animation: image 24s linear infinite;
    animation: image 24s linear infinite;
}
  
@keyframes image {
    0% {
      opacity: 0;
      -webkit-animation-timing-function: ease-in;
      animation-timing-function: ease-in;
    }
    5% {
      opacity: 1;
      -webkit-animation-timing-function: ease-out;
      animation-timing-function: ease-out;
    }
	/*--100 durch Anzahl der Bilder--*/
    25% {
      opacity: 1;
    }
	/*--zweiter und dritter Wert addiert--*/
    30% {
      opacity: 0;
    }
    100% {
      opacity: 0;
    }
}

/*--gleiche Angaben wie bei @keyframes--*/
@-webkit-keyframes image {
    0% {
        opacity: 0;
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in;
    }
    5% {
        opacity: 1;
        -webkit-animation-timing-function: ease-out;
        animation-timing-function: ease-out;
    }
    25% {
        opacity: 1;
    }
    30% {
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}
  
/*--für jedes weitere child ".slideshow li:nth-child(?) span" kopieren und die Sekunden korriegieren wie oben beim @keyframes--*/

.slideshow li {
    margin:0;
    padding:0;
    list-style: none;
}
.slideshow li:nth-child(1) span {}
.slideshow li:nth-child(2) span {
    -webkit-animation-delay: 6s;
    animation-delay: 6s;
}
.slideshow li:nth-child(3) span {
    -webkit-animation-delay: 12s;
    animation-delay: 12s;
}
.slideshow li:nth-child(4) span {
    -webkit-animation-delay: 18s;
    animation-delay: 18s;
}

ul.slideshow {
    margin: 0;
    padding-left: 0;
}

.slideshow li::before {
	display: none;
}

/*--Angaben Bilder, Video, etc.--*/

iframe {
	display: block;
    width: 100%;
}

.video-wrapper iframe,
.video-wrapper object,
.video-wrapper embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.video-wrapper {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
	width: auto;
	border: 0;
}

.imgcenter{ 
	display: inline-block;
}

strong { 
	font-weight: 700;
}

p {
	margin:0;
}

p:empty {
	height: 1rem;
}

.hide_m {}

.hide {
  display: none;
}

.refnr {}
.apply {}
