/* CSS Document */
/* open-sans-regular - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: url('fonts/open-sans-v18-latin-regular.eot'); /* IE9 Compat Modes */
    src: local('Open Sans Regular'), local('OpenSans-Regular'), url('fonts/open-sans-v18-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('fonts/open-sans-v18-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */ url('fonts/open-sans-v18-latin-regular.woff') format('woff'), /* Modern Browsers */ url('fonts/open-sans-v18-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */ url('fonts/open-sans-v18-latin-regular.svg#OpenSans') format('svg'); /* Legacy iOS */
}
/* open-sans-600 - latin */
@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 600;
    src: url('fonts/open-sans-v18-latin-600.eot'); /* IE9 Compat Modes */
    src: local('Open Sans Bold'), local('OpenSans-Bold'), url('fonts/open-sans-v18-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('fonts/open-sans-v18-latin-600.woff2') format('woff2'), /* Super Modern Browsers */ url('fonts/open-sans-v18-latin-600.woff') format('woff'), /* Modern Browsers */ url('fonts/open-sans-v18-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */ url('fonts/open-sans-v18-latin-600.svg#OpenSans') format('svg'); /* Legacy iOS */
}
body {
    font-family: 'Open Sans';
    margin: 0 auto;
    max-width: 1800px;
}
h1 {
    color: #cc0000;
    font-weight: 600;
    font-size: 1.6em;
}
h2 {
    font-size: 1.4em;
}
a {
    color: #cc0000;
    text-decoration: none;
}
a:hover, a:focus {
    text-decoration: underline;
}
header {
    background: url("images/beton.jpg");
    background-size: 100%;
}
section {
    margin-top: 30px;
}
#start, #unternehmen, #links, #impressum, #datenschutz {
    margin: 0 15px;
}
#kontakt, #immobilien {
    background: #d2d2d2;
    padding: 15px;
}
#start, #unternehmen, #impressum, #datenschutz {
    padding-top: 15px;
}
#impressum, #datenschutz {
    margin-bottom: 100px !important;
}
#unternehmen {
    margin-top: 30px;
}
#links {
    margin-top: 0 !important;
    margin-bottom: 10px;
}
#immobilien {
    margin-bottom: 0 !important;
}
.img-responsive {
    max-width: 100%;
}
.logo {
    display: block;
    margin: 0 auto;
    padding: 30px 0;
    width: 200px;
}
.back-to-top {
width: 0px;
height: 0px;
border-style: solid;
border-width: 0px 30px 42px 30px;
border-color: transparent transparent #000 transparent;
left: 15px;
right: auto;
position: fixed;
bottom: 25px;
}
.back-to-top:before {
content: '';
width: 0px;
height: 0px;
border-style: solid;
border-width: 0px 25px 35px 25px;
border-color: transparent transparent #c00 transparent;
left: 20px;
right: auto;
position: fixed;
bottom: 20px;
}


/* Menu */
.header ul {
    margin: 0;
    padding: 0;
    list-style: none;
    overflow: hidden;
    background-color: #fff;
}
.header li a {
    display: block;
    padding: 20px 20px;
    text-decoration: none;
    color: #000;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}
.header li a:hover, .header .menu-btn:hover {
    background-color: #cc0000;
}
.header .logo {
    display: block;
    padding: 30px 20px 10px;
    text-decoration: none;
}
.header .menu {
    clear: both;
    max-height: 0;
    transition: max-height .2s ease-out;
}
.header .menu-icon {
    cursor: pointer;
    display: block;
    padding: 28px 20px;
    position: relative;
    user-select: none;
    width: 20px;
    margin: 0 auto;
    color: #fff;
}
.header .menu-icon .navicon {
    background: #fff;
    display: block;
    height: 2px;
    position: relative;
    transition: background .2s ease-out;
    width: 18px;
}
.header .menu-icon .navicon:before, .header .menu-icon .navicon:after {
    background: #fff;
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    transition: all .2s ease-out;
    width: 100%;
}
.header .menu-icon .navicon:before {
    top: 5px;
}
.header .menu-icon .navicon:after {
    top: -5px;
}
.header .menu-btn {
    display: none;
}
.header .menu-btn:checked ~ .menu {
    max-height: 252px;
}
.header .menu-btn:checked ~ .menu-icon .navicon {
    background: transparent;
}
.header .menu-btn:checked ~ .menu-icon .navicon:before {
    transform: rotate(-45deg);
}
.header .menu-btn:checked ~ .menu-icon .navicon:after {
    transform: rotate(45deg);
}
.header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:before, .header .menu-btn:checked ~ .menu-icon:not(.steps) .navicon:after {
    top: 0;
}
/* Bildleiste */
.bild-linie-oben {
    position: absolute;
    width: calc(100% - 15px);
    height: 2px;
    background: #cc0000;
    top: -8px;
}
.bild-linie-unten {
    position: absolute;
    width: calc(100% - 15px);
    height: 2px;
    background: #cc0000;
    right: 0;
}
.bildleiste-immobilien, .bildleiste-kontakt {
    margin: 30px 0;
    position: relative;
}
.bildleiste img {
    display: inline-block;
}
.bildleiste-bild {
    width: 32.3%;
}
.bildleiste-immobilien .bildleiste-bild-1, .bildleiste-immobilien .bildleiste-bild-2 {
    margin-right: 1.5%
}
.bildleiste-kontakt .bildleiste-bild-1 {
    width: 65.75%;
    margin-right: 1.5%;
}
.bildleiste-kontakt .bildleiste-bild-2 {
    width: 32.75%;
}
/* Kontakt */
.kontakt-links {
    margin-bottom: 40px;
}
.kontakt-logo {
    max-width: 75%;
    margin: 0 0 0 auto;
}
/* Immoscout */
#links {
    position: relative;
    height: 100px;
}
#links .immo-button:first-child{}
#links .immo-button:nth-child(2){
    left: 25%;
}
#links .immo-button:nth-child(3){
    left: 50%;
}
#links .immo-button:nth-child(4){
    left: 75%;
}
.immo-button {
    width: 25%;
    float: left;
    border-right: 5px solid #fff;
    box-sizing: border-box;    
}
.immoscout-link {
    display: block;
    padding: 60px 5px 0px;
    color: #fff;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 700;
    align-self: end;
}
.immoscout-link:hover, .immoscout-link:focus {
    text-decoration: none;
}
.immoscout-logo {
    background: green;
}
.immoscout-dreieck {
width: 0px;
height: 0px;
-webkit-transform:rotate(360deg);
border-style: solid;
border-width: 15px 15px 0 15px;
border-color: #D2D2D2 transparent transparent transparent;
    -o-filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.2));
  -webkit-filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.2));
  filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.2));
    position: absolute;
margin: 0 auto;
left: 0;
right: 0;
}
button {
  font-size: 0.8em;
  font-weight: bold;
  color: white;
  background: #cc0000;
  border: none;
  position: relative;
  border-radius: 0 0 0 0;
  overflow: hidden;
  transition: border-radius 0s;
    text-align: left;
    width: 100%;
    padding: 0;
    margin: 0;
}
button:before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  border-style: solid;
  box-shadow: 1px 1px 5px rgba(0,0,0,0.4);
  width: 0;
  border-width: 0;
  border-color: #E68282 #fff #fff #E68282;
  border-radius: 0 0 0 0;
  transition: border-width .2s;  
border-width: 5px;

}
button:hover {
  border-radius: 0;
  transition-delay: .1s;
}
button:hover:before {
  border-width: 15px;
}

/* Footer */
footer {
    position: relative;
    margin-top: 50px;
}
.footer-menu {
list-style: none;
text-align: right;
width: 100%;
right: 140px;
position: absolute;
}
footer li a {
    padding: 2px 15px;
    text-decoration: none;
    color: #000;
    display: block;
}
.footer-menu-fb {
width: auto;
float: left;
right: 15px;
position: absolute;
}
.footer-menu-fb img {
    width: 120px;
}
footer .bild-linie-oben {
    top: 0;
}
/* Suche */
.suche-hover {
  position: fixed;
  background: #cc0000;
  color: #fff;
  height: 100vh;
  width: 200px;
  padding: 5px 40px 30px 40px;
  right: -277px;
  margin-top: 0;
  z-index: 1031;
  top: 0;
}
.suche-wort {
background: #cc0000;
position: absolute;
color: #fff;
transform: rotate(-180deg);
padding: 10px 5px;
text-transform: uppercase;
font-weight: 500;
cursor: pointer;
top: 15px;
left: -30px;
font-size: 1em;
writing-mode: vertical-rl;
}
.suche-hover a {
  color: #d2d2d2;
    
}
@media (min-width: 540px) {
    #kontakt {
        display: flex;
    }
    .kontakt-links {
        width: 50%
    }
    .kontakt-rechts {
        width: 50%;
        align-self: center;
    }
    .immoscout-link {
    font-size: 1.2em;
}
    footer li {
        display: inline-block;
    }
    .footer-menu {
        margin-right: 15px;
    }
    .footer-menu-fb {
        padding-bottom: 30px;
    }
}
@media (min-width: 768px) {
    section {
        margin: 50px 0;
    }
    #start, #unternehmen, #impressum, #datenschutz,#links {
        margin: 0 10%;
    }
    #immobilien, #kontakt {
        padding: 30px 10%;
    }
    #start, #unternehmen, #impressum, #datenschutz {
    padding-top: 30px;
}
    .header ul {
        background: transparent;
    }
    .header li {
        display: inline-block;
    }
    .header li a {
        padding: 10px 25px;
        color: #fff;
    }
    .header .menu {
        clear: none;
        max-height: none;
        text-align: center;
    }
    .header .menu-icon {
        display: none;
    }
    .bild-linie-oben {
        width: 90%;
        height: 3px;
        top: -18px;
    }
    .bild-linie-unten {
        width: 90%;
        height: 3px;
        right: 0;
        margin-top: 10px;
    }
    footer li a {
        padding: 5px 15px 5px 15px;
    }
    footer li {
        display: inline-block;
    }
    .footer-menu {
        width: 90%;
        margin-left: 15px;
    }
    .footer-menu-fb {
        right: 0;
    }
    .footer-aussen {
        width: 90%;
        position: relative;
    }
    .immoscout-link {
    font-size: 1.3em;
}
    .immoscout-dreieck {
        border-width: 25px 25px 0 25px;
    }
    button:hover:before {
  border-width: 25px;
}
.suche-wort {
    padding: 15px 5px;
    top: 20px;
}
}
@media (min-width: 992px) {
	.header .logo {
		width: 260px;
	}
    section {
        margin: 75px 0;
    }
    #start, #unternehmen, #links, #impressum, #datenschutz {
    margin: 0px 15%;
}
    #immobilien, #kontakt {
        padding: 50px 15%;
    }

    #start, #unternehmen, #impressum, #datenschutz {
    padding-top: 50px;
}
    .footer-aussen 
    .bild-linie-oben,
    .bild-linie-unten,
    .footer-menu {
        width: 85%;
    }
}
@media (min-width: 1200px) {
    .header .logo {
        padding: 40px 20px;
    }
    .back-to-top {
left: 50px;
}
.back-to-top:before {
left: 55px;
}
    section {
        margin: 100px 0;
    }
    #unternehmen {
    margin-top: 50px;
}
        #links {
    height: 120px;
}
    .bildleiste-immobilien .bildleiste-bild-1, .bildleiste-immobilien .bildleiste-bild-2 {
        margin-right: 0.8%;
    }
    .bildleiste-bild {
        width: 32.8%;
    }
    .bildleiste-kontakt .bildleiste-bild-1 {
        margin-right: 0.8%;
        width: 66.2%;
    }
    .bildleiste-kontakt .bildleiste-bild-2 {
        width: 33%;
        
    }
    .immoscout-link {
    font-size: 1.8em;
}
.suche-wort {
    padding: 20px 10px;
    top: 40px;
    left: -40px;
}
}
