article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {	display: block;}
body {
	overflow-x: hidden;
	font-family: 'Open Sans', sans-serif; 
  font-size:13px; 
  color:#666;
  background: none repeat scroll 0 0 #F7F7F7;
  display: table;
  position: absolute;
  width: 100%;
}
html, body {
  height: 100%;
  margin: 0;
  padding: 0;
}
* {
	
	-moz-outline: none !important;
       outline:none !important;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  -webkit-text-size-adjust: none;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

.logo-jhome {
  position: absolute;
  top: 4px;
  left: 8px;
  display: block;
  width: 34px;
  height: 20px;
  z-index: 999;
}
.logo-jhome span.j1, .logo-jhome span.j2, .logo-jhome span.j3, .logo-jhome span.j4, .logo-jhome span.j5, .logo-jhome span.ha1, .logo-jhome span.ha2{
  display: block;
  position: absolute;
  background: #fff;
} 
.logo-jhome span.j1 { 
  width: 10px;
  height: 4px;
  left: 2px;
  top: 2px; 
}
.logo-jhome span.j2 { 
  width: 5px;
  height: 25px;
  left: 10px; 
  top: 2px;
}

.logo-jhome span.j3 { 
  width: 15px;
  height: 4px;
  left: 0; 
  top: 23px;
}

.logo-jhome span.j4 {  
  background-color: rgba(39,169,227,0.8);
  width: 1px;
  height: 1px;
  left: 0;
  top: 23px;
}
.logo-jhome span.j5 {
  background-color: rgba(39,169,227,0.8);
  width: 1px;
  height: 1px;
  left: 2px;
  top: 2px; 
}

.logo-jhome span.ha1 { 
  width: 13px;
  height: 5px;
  left: 14px;
  top: 12px; 
}
.logo-jhome span.ha2 { 
  width: 5px;
  height: 25px;
  left: 23px; 
  top: 2px;
}


.outer {
  display: table;
  position: absolute;
  height: 70%;
  width: 100%;
}

.wrap{
  display: table-cell;
  vertical-align: middle;
}

#login {
  margin: 0 auto;
  width: 280px;
  background-color: white;
}

#login #content{
  border: 1px solid #ccc;
  border-top: none;
  padding: 20px 0 0;
}

#login input, #login .btn.anmelden{
  width: 250px;
  display: block;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  margin: 0 auto 20px;
  border: 1px solid #bbb;
}

#login input{
  padding: 6px 4px;
}
#login .btn.anmelden{
  padding: 6px 12px 5px;
  font-size: 1.1em;
  font-weight: bold;
  color: #777; 
}
#login .btn.anmelden:hover{
  color: white;
}

#login .btn.anmelden:hover {
  background-color: #35495E;
  color: white;
  background-image: -moz-linear-gradient(top,#668db5,#35495E);
  background-image: -webkit-gradient(linear,0 0,0 100%,from(#668db5),to(#35495E));
  background-image: -webkit-linear-gradient(top,#668db5,#35495E);
  background-image: -o-linear-gradient(top,#668db5,#35495E);
  background-image: linear-gradient(to bottom,#668db5,#35495E);
}


#header {
  background-color: #35495E;
  position: relative;
  color: white;
  font-size: 1.1em;
  font-weight: bold;
  padding: 10px 0 10px 0;
}

#header .middle {
  margin: 0 auto;
  display: table;
  font-size: 1.3em;
}
#header i {
  margin-right: 5px;
}



/* Inputfelder ohne abstand zu außen */
#login #content{
  padding: 0;
}

#login input, #login .btn.anmelden{
  width: 100%;
  margin: 0;
  border: none;
}

#login input{
  border-bottom: 1px solid #bbb;
}

#login input{
  padding: 10px 6px;
}
#login .btn.anmelden{
  padding: 10px 12px 8px;
}

.btn{ 
  width: 100%;
  margin: 5px 0;
  display: inline-block;
  padding: 4px 12px 3px;
  font-size: 13px;
  line-height: 18px;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  color: #333;
  background-color: #f5f5f5;
  background-image: -moz-linear-gradient(top,#fff,#e6e6e6);
  background-image: -webkit-gradient(linear,0 0,0 100%,from(#fff),to(#e6e6e6));
  background-image: -webkit-linear-gradient(top,#fff,#e6e6e6);
  background-image: -o-linear-gradient(top,#fff,#e6e6e6);
  background-image: linear-gradient(to bottom,#fff,#e6e6e6);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe5e5e5', GradientType=0);
  border-color: #e6e6e6 #e6e6e6 #bfbfbf;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  border: 1px solid #bbb;
  border-bottom-color: #a2a2a2;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}



/* MEDIA QUERIES FOR A RESPONSIVE LAYOUT */
@media (max-width: 500px) {
  #login {
    width: 100%;
  }
  .wrap {
    vertical-align: top;
  }  
}