@charset "utf-8";

/* Allgemein */
html, body {
  margin: 0px;
  padding: 0px;
  height: 100%;
}

/*body,br,div,p,li,ul {*/
body {
  color: #777;
  font-size: 17px;
}

#wrap-all {
  margin: 0 auto;
  max-width: 1920px;
  width: 100%;
  position: relative;
}

/* Header */
#header {
  position: fixed; z-index: 5;
  top: 0; height: 92px;
  width: 100%; max-width: 1920px;
  background-color: #ffa874;
}
#header .pic-sub img { width: 100%; height: auto; }
#header .pic-sub { display: none; }
#header .top-name { position: absolute;
  top: 4vw; left: 150px;
  color: #fff;
  font-size: 2.2vw;
}

#header div.head_name {
  position: absolute; left: 150px; top: 19px;
  color: #fff; 
}
#header div.head_name a { color: #fff; display: block; }
#header div.head_name1 { font-size: 27px; line-height: 32px; }
#header div.head_name2 { font-size: 17px; line-height: 22px; }


/* Nav */
nav { padding: 50px 150px 0px 500px; }
nav ul {
  list-style: none;
  padding: 0; margin: 0;

  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
nav li { display: inline-block; }

body.pid-1 nav li:last-child { margin-right: 0; }
nav a { color: #fff; display: block; }
nav .cur a { /* text-decoration-line: underline; */ border-bottom: 1px solid white; }
nav input, nav > span { display: none; }

/* Main */
#main {
  padding: 92px 150px 50px 500px;
  font-weight: 300;
  max-width: 900px;
  background-color: #fff;
}

/* Footer */
#footer {
  background-color: #ffa874; color: #fff;
  width: 100%; padding: 0;
}
#footer .foot-img {
  background-image: url(../img/pic-home.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  height: 23.9vw; max-height: 612px;
  padding: 0;
}
body.uid-1 #footer .foot-img { display: none; }

#footer > div {
  padding: 10px 150px;

  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;

  clear: both;
}
#footer p {
  display: inline-block;
  vertical-align: top;
  margin-bottom: 0;
}
#footer a { color: #fff; text-decoration: none; }

.ce-intext.ce-left .ce-gallery { margin-right: 50px; }
.ce-intext.ce-right .ce-gallery, .ce-intext.ce-left .ce-gallery, .ce-above .ce-gallery { margin-bottom: 35px; }
.ce-textpic { margin-bottom: 35px; }
body.pid-1 .ce-gallery img { margin-top: 7px; }


/* Start */
body.uid-1 nav { padding: 35px 150px; }
body.uid-1 div.head_name { display: none; }

body.uid-1 #main { padding-right: 0; padding-left: 0; padding-bottom: 0; max-width: none; }
body.uid-1 .ce-intext.ce-left .ce-gallery { margin-bottom: 0; margin-right: 0; }
body.uid-1 .ce-textpic { margin-bottom: 0; }
body.uid-1 .ce-textpic,
body.uid-1 .ce-textpic .ce-gallery,
body.uid-1 .ce-textpic .ce-row,
body.uid-1 .ce-textpic .ce-column,
body.uid-1 .ce-textpic figure,
body.uid-1 .ce-textpic img { width: 100%; height: auto; }
body.uid-1 .ce-bodytext {
  position: absolute;
  padding-top: 15.9vw; padding-left: 150px;
  color: #666; font-weight: 400;
}
body.uid-1 #footer > div { margin-top: 0; }

/* responsiv */
@media (max-width: 1060px) {
  #header nav, #main, #footer > div, body.uid-1 .ce-bodytext { padding-right: 100px; padding-left: 100px; }
  body.pid-1 #header nav { padding-left: 420px; }
  #header div.head_name { left: 100px; }
  #footer .foot-img { height: 32vw; }
}

@media (max-width: 860px) {
  #header nav, #main, #footer > div, body.uid-1 .ce-bodytext { padding-right: 85px; padding-left: 85px; }
  body.pid-1 #header nav { padding-left: 370px; }
  #header div.head_name { left: 85px; }

  body.uid-1 div.head_name { display: block; }
  body.uid-1 .ce-bodytext { display: none; }

  body.uid-1 .ce-textpic figure { float: right; }
  body.uid-1 .ce-textpic img { width: 160vw; height: auto; }

  #footer > div { display: block; }
  #footer .foot-img { height: 56vw; }
  #footer p { width: 100%; margin: 1em 0; }
  #footer p+p { margin-top: 0; }

  /* Mobile-Menu */
  #header #menuToggle {
    position: relative; z-index: 1;
    -webkit-user-select: none; user-select: none;

    display: inline-block;
    left: 100%; top: 24px; padding: 0; margin: 0 0 0 -45px;
  }
  #menuToggle input {
    display: block; position: absolute;
    width: 20px; height: 20px;
    top: -5px; left: -4px;
    cursor: pointer; opacity: 0; z-index: 20;
    -webkit-touch-callout: none;
  }
  #menuToggle span {
    display: block; position: relative;
    width: 20px; height: 2px; margin-bottom: 6px;
    background-color: #fff; border-radius: 2px;
    z-index: 1;
    transform-origin: 4px 0px;
    transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
                background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
                opacity 0.55s ease;
  }
  #menuToggle span:first-child { transform-origin: 0% 0%; }
  #menuToggle span:nth-last-child(2) { transform-origin: 0% 100%; }
  #menuToggle input:checked ~ span {
    opacity: 1;
    transform: rotate(45deg) translate(2px, 0px) scale(1.2, 1);
    background-color: #fff;
  }
  #menuToggle input:checked ~ span:nth-last-child(3) {
    opacity: 0;
    transform: rotate(0deg) scale(0.2, 0.2);
  }
  #menuToggle input:checked ~ span:nth-last-child(2) {
    transform: rotate(-45deg) translate(2px, 0px) scale(1.2, 1);
  }
  #menuToggle ul {
    position: absolute;
    padding: 20px; padding-bottom: 10px;
    margin: 0; top: 68px;
    width: 80vw; left: -95vw;
    padding-left: 50px; padding-right: 50px;
    margin-left: 27px;
    background-color: #fff; outline: 1px solid #aaa;
    -webkit-font-smoothing: antialiased; /* to stop flickering of text in safari */
    transform-origin: 0% 0%; transform: scale(0);
    transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);

  }
  #menuToggle ul li {
    display: block;
    margin-bottom: 0.5em;
    font-size: 20px;
    width: auto;
  }

  #menuToggle ul li a { color: #777; }
  nav .cur a { border-bottcom: 1px solid white; font-weight: 600; }
  #menuToggle input:checked ~ ul { transform: none; }
}

@media (max-width: 860px) and (max-height: 800px) {

  body.uid-1 .ce-textpic img {
    float: right;
    width: 100%; height: auto;
  }

}

@media (max-width: 650px) {
  #header nav, #main, #footer > div, body.uid-1 .ce-bodytext { padding-right: 50px; padding-left: 50px; }
  #header div.head_name { left: 50px; }

  #menuToggle ul {
    display: block; width: 200px;
    right: 0; left: auto;
    padding-left: 20px; padding-right: 20px;
  }
  #menuToggle ul li { width: 100%; }

  #footer .foot-img { width: 650px; height: 365px; float: right;}

  .ce-textpic,
  .ce-textpic .ce-gallery,
  .ce-textpic .ce-row,
  .ce-textpic .ce-column,
  .ce-textpic figure,
  .ce-textpic img { width: 100%; height: auto; }
  .ce-textpic { margin-bottom: 0px; }

}

@media (max-width: 480px) {
  #header nav, #main, #footer > div, body.uid-1 .ce-bodytext { padding-right: 30px; padding-left: 30px; }
  #header div.head_name { left: 30px; }
}

@media (max-width: 400px) {
  #header nav, #main, #footer > div, body.uid-1 .ce-bodytext { padding-right: 20px; padding-left: 20px; }
  #header div.head_name { left: 20px; }

  #footer .foot-img { width: 162.5vw; height: 91.25vw; }

  body.uid-1 .ce-textpic img { width: 162.5vw; height: 91.25vw; }

  dl dd { margin: 0 0 1em 20px; }
}
