#contents {
  margin-top: 88px;
}
span.require {
  color: red;
}
.valiMes { 
  color: red;
  font-size: 12px;
}

.errorMessage {
  padding: 20px;
  color: red;
}
.form_table .caption {
  padding-bottom: 30px;
}
.form_table article{
  border-right: 1px solid black;
  border-left: 1px solid black;
  border-bottom: 1px solid black;
}
.form_table> p:first-child{
  border-bottom: 1px solid black;
}
.form_table article:first-child {
  border-top: 1px solid black;
}
.input_widget dl {
  display: table;
  width: 100%;
}
.input_widget dt {
  display: table-cell;
  vertical-align:top;
  padding: 23px 0 20px 16px;
  background-color: #efefef;
  width: 200px;
}
.require dt label:after {
  content:"※";
  color: red;
}

.input_widget dd {
  display: table-cell;
  padding: 20px 0 20px 16px;
  vertical-align:top;
}
.input_widget dd input,
.input_widget dd select,
.input_widget dd textarea {
  border: 1px solid black;
  padding: 4px;
	font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Helvetica Neue",Arial,"メイリオ",Meiryo,"MS PGothic",sans-serif;
}
.input_widget dd > input {
  max-width: 220px;
  width: 85%
}
.input_widget dd textarea {
  width: 65%;
  height: 95px;
}
.submit {
  padding: 60px 0;
  margin: 0 auto;
  display: table;
}
.submit span {
  display: table-cell;
  vertical-align:middle;
  padding: 0 15px;
}
.submit span input,
.submit span a {
  display: block;
  background-color: black;
  padding: 25px 55px;
  color: white;
	font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Helvetica Neue",Arial,"メイリオ",Meiryo,"MS PGothic",sans-serif;
  text-decoration: none;
  border: 0;
  cursor: pointer;
  background-repeat:no-repeat;
  background-size: auto 22px;
  transition: background-color: .3s;
  line-height:0;
}
.submit span .go {
  background-image:url(../images/ku01.png);
  background-position:90% center;
}
.submit span input:hover,
.submit span a:hover {
  background-color: #646464;
}
.submit span input[disabled] {
  background-color: #d0d0d0;
}


.checker {
  text-align:center;
  padding: 45px;
}
.checker span {
  display: inline-block;
  color: black;
}
.checker span a {
  text-decoration:none;
  color: black;
}
.checker span a:hover {
  color: #999;
}

#pp {
  padding-top: 20px;
}
#pp dt a {
  display: inline-block;
  background-image:url(../contact/opener.png);
  background-position:left center;
  background-size: auto 1em;
  background-repeat:no-repeat;
  padding-left: 1.4em;
  color: black;
  font-size: 14px;
}
#pp dt a:hover {
  color:#989898;
}
#pp.open dt a {
  background-image:url(../contact/closer.png);
}
#pp dd {
  display: none;
}
#pp dd ul {
  padding-left: 1.6em;
}
#pp dd ul li{
  list-style:disc;
}

@media only screen and (max-width: 440px) {
.input_widget dl {
  display: block;
}
.input_widget dt {
  display: block;
  width: 100%;
  box-sizing:border-box;
  padding: 10px;
}
.input_widget dd {
  display: block;
  padding: 10px;
}
.input_widget dd input {
  max-width:none;
}
.input_widget dd textarea {
  width: 100%;
  box-sizing:border-box;
}
