@charset "UTF-8";
/* 
CSS Stylesheet by dialog im netz
display: flow-root;
für iframe,canvas, video, embed, audio, object: 
object-fit: [wie background-size] fill | contain | cover | none
object-position: [wie background-position] top | center | left | px | %
h2[id],
.anchor-target  { scroll-margin-top: 50px; }
*/

:root {
     --rot: #ff0000;
     --hellblau: #c0c4e0;
 }
.red {
color: var(--rot);
}

*[id]{ scroll-margin-top: 50px; }
html {
scroll-behavior: smooth;
}
html,blockquote,body,div,dl,dt,dd,fieldset,form,
h1,h2,h3,h4,h5,h6,ol,p,ul,li,center,hr,pre,img,
table,tr,td,th,thead,tbody,tfoot,caption  {
margin:0;
padding:0;
border:0 none;
outline: none;
box-sizing: border-box;
}

div,
nav,
main,
section,
header,
article,
aside,
footer {
    display: block;
    position: relative;
    box-sizing: border-box;
}

body {
font-family: arial, helvetica, sans-serif;
color: black;
box-sizing: border-box;
background-color: #F0F0F0;
overflow: auto;
overflow-y: scroll;
font-size: 14px;
}
a {
color: black;
border:none;
outline: none;
}
a:hover,
a:focus {
outline: none;
}
p a,
li a ,
.bildmitbu a {
 color: blue
}
a.anchor {
display: block;
position: relative;
top: -200px;
visibility: hidden;
}

#pagetitle {
margin:0 auto;
max-width:1200px;
height:auto;
 display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
/* flex-end center space-between space-around space-evenly */
align-items: center; 
/*  flex-end center baseline */
align-content: flex-start; 
/* flex-start flex-end center space-between space-around */

}
h1 {
color: #000;
padding: 15px 20px;

}
h1,
h1 span{
font-size: 1.8rem;
}
h1 span,
h1 div {
  text-shadow: 2px 2px 2px rgba(255,255,255,1);
 display: block;
 font-size: 1.0rem;
 margin: .5rem 0 0 
}

p,ul,h2,h3 {
margin: 0 0 1em 0;
}

h2,h3 {
clear: both;
margin: 0 0 1em 0;
}
h2 {
 font-size: 1.5em;
 color: white;
 background-color: #f00;
 padding: 12px 30px;
 border-radius: 5px
}
h3 {
 font-size: 1em;
 margin: 1em 0 5px;
}
p:empty {
display: none
}
p,li {
hyphens: auto;
line-height: 140%
}
table {
border-collapse: collapse
}
.tc,
#ergtable, #erftable td.tc {
text-align: center
}
#ergtable span,
#erftable td span {
 display: block;
 float:right;
 padding: 0 0 0 4px;
 font-size: 11px
}
.tr {
text-align: right
}
th {
 font-size: .9rem
}
th span,
label span {
 display: block;
 font-size: 12px
}
td {
vertical-align:top
}
ul {
display: block;
padding-left: 16px;
}
li {

}
hr {
 width: 80px;
 border-top: 1px solid #909090;
 margin-bottom: .5rem;
 text-align: left;
 clear: both;
}
img{
display: block;
border: none;
height: auto;
}
iframe {
 width: 100%;
 height: 360px;
 margin: 0 0 2rem;
 border: 1px solid #e0e0e0
}
sub {
position: relative; 
font-size: .7rem; 
bottom: -4px;
font-weight: normal;
}
sup {
position: relative; 
font-size: .7rem;  
top: -2px;
font-weight: normal;
}
.clear {
clear: both
}

.hide, .h0 {
display:none
}

.fussnote {
 font-size: .8rem
}

#content .bildlinks,
#content .floatleft {
max-width: calc(50% - 10px);
float: left;
margin: 0 10px 1em 0
}
#content .bildrechts,
#content .floatright {
max-width: calc(50% - 10px);
float: right;
margin: 0 0 1em 10px
}
#content .bildlinks + p,
#content .bildlinks + ul,
#content .bildlinks + p + ul,
#content .floatleft + p,
#content .floatleft + ul,
#content .floatleft + p + ul {
 max-width: calc(50% + 10px);
 float: right;
}
.klein{
font-size: .8rem;
}
.rot,
.red {
color: red
}
big {
 font-size: 2rem;
 font-weight: bold
}
div.showbigdiv {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
background: white url('/img/style/blank.gif') center center no-repeat; 
background-size: contain; 
transition: .8s;
opacity: 0;
z-index: -1;
}
div.showbigdiv a {
    display: block; 
    width: 100%;
    height: 100%;
}
img.showbig{
    cursor: pointer;
}
::selection{
color: white;
background-color: #ff0000
}
.stickyhead {
 position: sticky;
 top:0 ;
 z-index: 2
}


/* DIVS */ 
#wrapper {
margin:0 auto;
padding: 0;
max-width:1200px;
height:auto;
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: flex-start;  
/* flex-end center space-between space-around space-evenly */
align-items: stretch; 
/* flex-start flex-end center */
background-color: #f0f0f0;
}

#head {
display: flex;
flex-direction: column;
flex-wrap: nowrap;
justify-content: center;
align-items: stretch; 
align-content: center; 
height: 30vw;
max-height: 300px;
max-width: 1200px;
margin: 0 auto;
background: transparent url('/img/header/default.jpg') center center no-repeat; 
background-size: cover ; 
}
#innerhead {
position: relative;
 width: 100%;
 max-width: 1200px;
 margin: 0 auto;
 height: 100%;
background-size: cover; 
z-index: -1
}
#innerhead0 {
display: flex;
flex-direction: column;
flex-wrap: nowrap;
justify-content: center;
align-items: stretch; 
align-content: center; 
 width: 100%;
 max-width: 1200px;
 margin: 0 auto;
 height: 100%;
background: transparent  url('/img/header/main1.jpg') top center no-repeat; 
background-size: cover; 
z-index: -1
}
#head img {
    display: block;
    margin: 0 auto;
    width: 100%;
    max-width: 1600px
    
}
#contentwrapper {    
width: 100%;
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: flex-start;  
align-items: stretch; 
}
#left {
width: 220px;
display: flex;
flex-flow: column nowrap;
justify-content: space-between;
padding: 30px 20px 20px 20px;
margin:0;
background-color: #f9f9f9;
}
#left a {
 text-decoration: none ;

}
#content{
padding: 30px 50px 0;
display: inline-block;
width: calc(100% - 220px);
min-height: calc(80vh - 60px);
background-color: white;
}
#content img {
width: 100%;
margin-bottom: .5em
}
#newslist {
    margin: 2em 0;
    padding: 10px;
    border: 1px solid #e0e0e0;
}
#newslist table {
    width: 100%;
}
#newslist tr td:first-of-type {

}
#newslist tr td:last-of-type {
text-align: right;
padding-left: 20px
}
#newslist a {
    display: block;
}
.newsarticle {
 padding: 1rem 0;
 border-top: 1px solid #909090
}


.ortlist,
#vergtable {
  padding: 1px 2px;
  margin: 0 5px 1em 0;
  column-width: 160px;
  column-rule: 1px solid #eee;
  column-gap: 10px;
}
#vergtable div {
 margin-bottom: .25rem
}
.ortlist a,
#vergtable a {
  display: block;
  padding: 2px 2px 2px 4px;
  text-decoration: none;
}

.ortlist a:hover,
.ortlist a:focus,
.ortlist a:active,
.ortlist a.ac,
#vergtable a:hover,
#vergtable a:focus,
#vergtable a:active,
#vergtable a.ac {
background-color: #e0e0e0;
}

footer {
width: 100%;
padding: 10px 20px;
border-top: 1px solid #e0e0e0;
background-color: #f9f9f9;

} 
footer p,
footer a {
color: #666;
font-size: .9em
}
/* FORMULAR */
input.short {
width: 80px;
}
input:hover,
textarea:hover,
select:hover {
background-color: #ffffff;
}
/* <input id="bname" required> */
input:required + label::before {
  position: absolute;
  left: 300%;
  content: "★";
  color: red;
}
input:required:valid + label::before {
  content: "✔";
  color: green;
}

button {
}
button:hover,
button:focus {
}
button:active {
}
#clearform {
 position: absolute; 
 right: 70px;
 margin-top: -50px
}
.meldung,
.meldungok,
#meldung,
#meldungok {
font-weight: bold;
font-size: 1.3rem;
text-align:left
}

.important,
.meldung,
.meldungok,
#meldung,
#meldungok,
#adminmeldung {
	font-size: 1rem;
	padding: 10px;
	border: 1px solid black;
	background-color: red;
	color: white;
	font-weight: bold; 
	border-radius: 10px;
	margin: -1.5em 0 0 0;
	position: fixed; 
	top: 50px;
	right: 10%;
    opacity: 0;

}


@keyframes fadeout {
  0% {opacity: 1;}
  75% {opacity: 1;}
  100% {opacity: 0;}
}
.important {
 font-weight: bold;
 padding: 10px;
 margin: 50px 0 0 0;
 border: 1px solid black;
 border-radius: 5px;
 position: absolute;
 top: auto;
 right: auto
}

.meldungok,
#meldungok {
opacity: 0;
animation: fadeOut 5s;
}
@keyframes fadeOut {
  0% { opacity: 1; }
  70% {opacity: 1;}
  100% { opacity: 0; }
}

.searchword,
mark,
.mark {
    background-color: yellow
}

.bildmitbu {
font-style: italic;
font-size: .7rem;
margin-bottom: 2em;
}
.bildmitbu img {
 display: block;
 margin-bottom: .5rem
}

#form1 {
 display: flow-root;
 width: 100%;
 margin: 1rem auto 1em;
 border: 1px solid black;
 background-color: #fafafa;
 padding: 1em 20px 10px;
 border-radius: 5px
}
#form1 label {
 display: block;
 clear: both;
 margin: 1em 0 5px;
}
#form1 div {
 clear: both;
 margin: 0 0 10px;
}
#form1 input {
float: left;
 width: calc(50% - 20px);
 border: 1px solid #666;
 outline: none;
 border-radius: 4px;
 padding: 4px;
 margin: 0 10px 10px 0;
 
}
#form1 input:last-child {
 margin-right: 0;
}
#form1 select {
 min-width: 180px;
 margin: 0 20px 10px 0;
}

#form1 #form_minjahr,
#form1 #form_maxjahr,
#yearsel span {
 display: block;
 width: 80px;
 float: left;
}
#hsearchform {
 margin: 1rem 0 ; 
}
#hsearch {
 width: 280px
}

#singleresult {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: flex-start;
/* flex-end center space-between space-around space-evenly */
align-items: stretch; 
/* flex-start flex-end center baseline */
align-content: stretch; 
/* flex-start flex-end center space-between space-around */

}

#singleresult div {
 width: 80%;
padding: .25rem 0;
}
#singleresult div.shead {
  width: 20%;
  min-width: 160px;
  font-weight: bold
 }


#yearsel span {
 display: block;
 width: auto;
 padding:  3px 10px 0 0
}
.redbutton {
 background-color: #ff0000;
 color: white;
 font-weight: bold;
 padding: 4px 8px;
 border-radius: 7px;
 transition: .2s
}
.redbutton:hover,
.redbutton:focus {
 color: black;
}
#yearsel select {
 min-width: 80px;
 margin-right: 10px
}
#mceu_17 {
 display: block;
 margin: 20px 0;
}
#form1 input::placeholder {
 color:  #a0a0a0
}
#ergtable, #erftable {
 display: table;
 border-collapse: collapse;
 width: 100%;
 margin: 0 0 30px;
 scroll-margin-top: 1em; 
}

#erftable tr {
 border: 1px solid #a0a0a0
}
#erftable .stickyhead tr {
 background-color: white;
 outline: 1px solid #a0a0a0;
}
#erftable .stickyhead th {
 padding: 4px 8px; 
 font-weight: bold;
}

#erftable td span {
 display: inline-block;
 float: none;
 width: 12px;
 height: 1em;
 margin: 0 0 -2px 0px;
 background: transparent url('/img/style/ok-haken.png') right bottom no-repeat; 
 background-size: contain; 
}

#ergtable tr.e, #erftable tr.e {
 border-bottom: 2px solid #000
}

#ergtable tr.e:last-of-type, #erftable tr.e:last-of-type {
 border: 1px solid #a0a0a0
}
#ergtable td, #erftable td {
 margin: 0;
 text-align: left;
 vertical-align: top;
 border: 1px solid #a0a0a0
}
#ergtable td, #erftable td {
 padding: 2px 8px;
 font-size: .8rem;
}
#ergtable thead td, 
#erftable thead td {
 padding: 4px 8px; 
}
#ergtable a {
 display: inline-block;
 float: right;
 width: 16px;
 height: 16px;
 margin: 0 0 0 10px;
 background: transparent url('/img/style/link-icon.png') center bottom no-repeat; 
 background-size: 100% auto; 
}
#erftable a {
 cursor: pointer;
 color: blue;
 text-decoration: underline
}
.withpopup {
 
}
.ofb {
position: fixed;
top:50%;
left: 50%;
width: 0;
height: 0;
transition: .5s;
width: 540px;
max-height: 70vh;
padding: 0;
background-color: white; 
border-radius: 20px;
overflow: hidden;
 z-index: 4
}
.withpopup div.open {
width: 540px;
max-width: calc(100% - 40px);
height: 50%;
margin: -290px 0 0 -290px; 
padding: 20px;
border: 2px solid red;
}
.withpopup div.open * {
  opacity: 1
}
#blackbg {
 position: fixed;
 top:0;
 left: 0;
 width: 100%;
 height: 0;
 opacity: 0;
 background-color: rgba(0,0,0,.5);
overflow: hidden;
 transition: .5s;
 z-index: 3
}

#erftable a.ofbclose {
 display: block;
 position: absolute;
 right: 10px; 
 bottom: 10px;
 width: 20px;
 height: 20px;
 text-decoration: none;
 font-size: 25px;
}

.ofb * {
 opacity: 0;
 transition: 1s
}
#erg {
clear: both;
font-size: 1.1rem;

}
#einzel td {
 padding: 4px 12px 4px 0
}
#charlist a {
 padding: 1px;
}
#charlist a.ac {
 border: 1px solid blue;
}

#map {
scroll-margin-top: 150px; 
margin: 1em 0;
height: 0;
width: 100%;
overflow: hidden;
transition: .5s
}
#showbigmap {
 position: absolute; 
 margin: -54px 0 0 0 ;
}
#showbigmap a {
 display: block;
 padding: 2px 5px;
 text-decoration: none;
 background-color: rgba(255,255,255,.6);
 
}

#llist {
 line-height: 100%
}
#llist a {
display: inline-block; 
padding: 4px 4px;
margin: 0  .5rem .25rem .5rem;
}
#llist span {
 display: block; 
 margin-bottom: .25rem;
 font-weight: 600
}

/* SLIDESHOW */

.container {
margin: 0 auto;
background-color: #e0e0e0
}
.slidesjs-container {
 
}
/* Prevent the slideshow from flashing on load */
#slides {
display: none
}

/* Center the slideshow */

/* Show active item in the pagination */
.slidesjs-pagination {
    display: none;
}
.slidesjs-pagination .active {
color:red;
}
.slidesjs-navigation {
     opacity: .1;
     transition: .4s
}
.slidesjs-navigation:hover {
     opacity: 1;
}
.slidesjs-previous,
.slidesjs-next{
    position: absolute;
    display: inline-block;
    padding: 5px 10px;
    color: var(--hellblau);
    bottom: 0px;
    left: 0;
    font-size: 30px;
    text-decoration: none;
    z-index: 111
}
.slidesjs-next {
    right: 0;
    left: auto;
}

.clear {
 clear: both
}
pre {
 display: block;
 position: fixed;
 top:10px;
 left: 10px;
 background-color: #f0f0f0;
 padding: 10px;
 border-radius: 5px;
 font-size: 11px;
}
#clear {
 float: right;
 margin-right: 10px
}
.button {
 padding: 2px 4px;
 border: 1px solid #999;
 border-radius: 4px;
 background-color: #e5e5e5;
 cursor: pointer;
 color: black;
 text-decoration: none;
}

@media screen and (max-width: 850px){
    
#content .bildlinks,
#content .floatleft,
#content .bildrechts,
#content .floatright  {
 max-width: 100%;
float: none;
margin: 0 0 5px 0
}
#form1 input {
 float: none;
 width: calc(100% - 20px);
}
}
@media screen and (max-width: 680px){
/* synchronisieren mit nav.css */
h1 {
 padding: 10px 60px 10px 10px;
 font-size: 1.1rem
}
h1 span {
 padding: 10px 40px 10px 0px;
 
}
#head {
 min-height: 20vw;
}
#wrapper {
    display: block;
}
#contentwrapper {
    display: block
}
#left {
display: block ;
width: 100%;
max-height: 0;
min-height: 0;
padding: 0;
background-color: lightgrey
}
#content {
display: block;
width: 100%;
margin: 0 ;
padding: 30px;
}
#right {
    padding: 0 50px
}

h1  {
font-size: 1.2rem
}
#form1 input {
 float: none;
}
.withpopup div.open {
margin: -290px 0 0 -45%; 
z-index: 201
}
#hsearch {
 max-width: 100%;
}
}
@media print {
a::after{
    content: " (" attr(href) ") ";
}
footer,
#nav{
	display: none
}
}