body#contact .section table.step {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 2em;
  border-collapse: collapse;
  border-spacing: 0;
  border: solid 1px #402109;
  font-size: 120%;
}
body#contact .section table.step tbody tr td {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  width: 33.3%;
  padding: 0 0.3125em;
  line-height: 4;
  text-align: center;
  background: #e5e5e5;
  background: -moz-linear-gradient(left, #e5e5e5 0%, white 30%);
  background: -webkit-linear-gradient(left, #e5e5e5 0%, white 30%);
  background: linear-gradient(to right, #e5e5e5 0%, #ffffff 30%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e5e5e5', endColorstr='#ffffff',GradientType=1 );
}
body#contact .section table.step tbody tr td:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 100%;
  z-index: 99;
  content: '';
  pointer-events: none;
  width: 0;
  height: 0;
  border: solid transparent;
  margin-top: -2em;
  border-color: rgba(255, 255, 255, 0);
  border-left-color: #ffffff;
  border-width: 2em 1em;
}
body#contact .section table.step tbody tr td.current {
  color: #ffffff;
  background-color: #402109;
  background: -moz-linear-gradient(left, #402109 0%, #402109 30%);
  background: -webkit-linear-gradient(left, #402109 0%, #402109 30%);
  background: linear-gradient(to right, #402109 0%, #402109 30%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#402109', endColorstr='#402109',GradientType=1 );
}
body#contact .section table.step tbody tr td.current:before {
  border-left-color: #402109;
}
body#contact .section table.step tbody tr td.last:before, body#contact .section table.step tbody tr td.last:after {
  border: 0 none !important;
}
body#contact .section .long, body#contact .section .middle, body#contact .section .short {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0.3125em 0.5em;
  border: solid 1px #cccccc;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
}
body#contact .section .long {
  width: 100%;
}
body#contact .section .middle {
  width: 50%;
}
body#contact .section .short {
  width: 20%;
}
body#contact .section fieldset {
  padding: 1em;
  text-align: center;
}
body#contact .section table.table tbody tr th {
  width: 30%;
}
body#contact .section table.table tbody tr td {
  width: 70%;
}
body#contact .section table.table tbody tr td label + label {
  margin-left: 1em;
}
body#contact .section .required {
  display: inline-block;
  margin-left: 0.5em;
  padding: 0.125em 0.3125em;
  color: #ffffff;
  font-size: 75%;
  background-color: #ff0000;
}

/* RWD
---------------------------------------------------------------- */
@media only screen and (max-width: 640px) {
  body#contact .section table.step {
    font-size: 50%;
  }
}