* {
  font-family: sans-serif;
  margin: 5px 0px;
  padding: 0px;
  box-sizing: border-box;
}

h1, h2, h3 {
  text-align: center;
}

h4 {
  margin: 10px 0px 5px 0px;
}

fieldset {
  margin: 20px 0px;
  padding: 10px;
}

legend {
  font-weight: bold;
}

button {
  height: 30px;
  width: 100px;
}

input[type=text],
input[type=email] {
  width: 300px;
}

input, select {
  background: white;
  border: 1px solid #000;
  height: 25px;
  font-size: 1em;
}

select {
  width: 304px;
}

input {
  padding-left: 2px;
}

button {
  font-size: 1em;
}

a {
  color: steelblue;
  font-weight: bold;
  text-decoration: none;
}

a:hover {
  color: navy;
}

td.col1 {
  width: 230px;
}
 
.centered {
  text-align: center;
}

.justified {
  text-align: justify;
}

div.buttons {
  text-align:right;
}

#wrapper {
  background-color: whitesmoke;
  border: 1px solid darkgrey;
  margin: 0px auto;
  /* min-width: 600px; */
  max-width: 800px;
  padding: 20px;
}

.validity::after {
  padding-left: 5px;
}

input:invalid + .validity::after,
select:invalid + .validity::after {
  content: "✖";
}

input:valid + .validity::after,
select:valid + .validity::after {
  content: "✓";
}

.bold {
  font-weight: bold;
}

#hinweis {
  margin: 30px 0px 10px 0px;
}

#auswahl {
  text-align: center;
}

.button_anmelden {
  width:400px;
}
.button_informieren {
  width:120px;
}

#sozialversicherungsnummer {
  margin-right: 5px;
  width: 90px;
}

#sozialversicherungsgebdat {
  width: 200px;
}

#strasse,
#strassea,
#strasseb {
  margin-right: 5px;
  width: 200px;
}

#hausnummer,
#hausnummera,
#hausnummerb {
  width: 90px;
}

#postleitzahl,
#postleitzahla,
#postleitzahlb {
  margin-right: 5px;
  width: 90px;
}

#wohnort,
#wohnorta,
#wohnortb {
  width: 200px;
}

#laendervorwahl1,
#laendervorwahla1,
#laendervorwahla2,
#laendervorwahlb1,
#laendervorwahlb2 {
  width:50px;
}

.zero {
  padding: 0px 5px;
}

#vorwahl1,
#vorwahla1,
#vorwahla2,
#vorwahlb1,
#vorwahlb2 {
  width: 80px;
  margin-right:5px;
}

.separator {
  padding: 0px 8px 0px 3px;
}

#nummer1,
#nummera1,
#nummera2,
#nummerb1,
#nummerb2 {
  width: 116px;
}

#geschwisteranzahl,
#geschwisteranschule {
  width: 50px;
}

@media (max-width: 620px){
  #wrapper {
    width: 100%;
  }

  td.col1 {
    width: 175px;
    display: block;
  }

  td.col2 {
    width: 100%;
  }

  input[type=text],
input[type=email], select {
  width: 80%;
}
}

@media (max-width: 490px){
  td.col1, td.col2{
    display: inline-block;
  }

  td.col1{
    margin-top: 0;
  }

  td.col2{
    margin-top: 0;
  }

  input[type=text],
  input[type=email], 
  input[type=date],
  select {
    height: 30px;
  }

  select {
    background: white;
    border: 1px solid #000;
    
  }

  input[type=text],
  input[type=email],
  input[type=date]{
    font-size: 1em;
    padding: 2px;;
  }

  input[type="radio"] {
    -ms-transform: scale(1.5);
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
  }

  div.buttons {
    text-align: center;
  }

  .buttons button {
    width: 150px;
    height: 50px;
    font-size: 1em;
  }

  #sozialversicherungsgebdat {
    width: 80%;
  }

  #hausnummer,
  #hausnummera, #hausnummerb,
  #postleitzahl, #postleitzahla, 
  #postleitzahlb {
    width: 25%;
  }

  #nummer1, #nummera1,
  #nummera2, #nummerb1, #nummerb2 {
    width: 35%;
  }

}
