.submit_content dl {
  border-radius: 4px;
  display: flex;
   flex-wrap: wrap;
}
.submit_content dl:last-of-type dt {
  border-bottom: 1px solid #ccc;
}
.submit_content dl:last-of-type dd {
  border-bottom: 1px solid #ccc;
}

.submit_content dt {
  width: 20%;
  background: #f5f5f5;
  border: 1px solid #ccc;
  border-right: none;
  border-bottom: none;
  padding: 8px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  box-sizing: border-box;
}
.submit_content dd {
  width: 80%;
  padding-left: 8px;
  display: table-cell;
  vertical-align: middle;
  border: 1px solid #ccc;
  border-bottom: none;
  background-color: #fff;
  padding: 8px;
  box-sizing: border-box;
}

@media screen and (max-width: 480px){
.submit_content dt {
  width: 100%;
  border-right: 1px solid #ccc;
  border-bottom: none;
  padding: 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}
.submit_content dd {
  width: 100%;
  padding-left: 8px;
  display: table-cell;
  vertical-align: middle;
  border: 1px solid #ccc;
  border-bottom: none;
  background-color: #fff;
  padding: 8px;
  box-sizing: border-box;
}
.submit_content dl:last-of-type dt {
  border-bottom: none;
}

}

.mailform dl {
  border-radius: 4px;
  display: flex;
  flex-wrap: wrap;
}
.mailform dl:last-of-type dt {
  border-bottom: 1px solid #ccc;
}
.mailform dl:last-of-type dd {
  border-bottom: 1px solid #ccc;
}

.mailform dt {
  width: 20%;
  background: #f5f5f5;
  border: 1px solid #ccc;
  border-right: none;
  border-bottom: none;
  padding: 8px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  box-sizing: border-box;
}

.mailform dd {
  width: 80%;
  padding-left: 8px;
  display: table-cell;
  vertical-align: middle;
  border: 1px solid #ccc;
  border-bottom: none;
  background-color: #fff;
  padding: 8px;
  box-sizing: border-box;
}

@media screen and (max-width: 480px){
.mailform dt {
  width: 100%;
  border-right: 1px solid #ccc;
  border-bottom: none;
  padding: 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}
.mailform dd {
  width: 100%;
  padding-left: 8px;
  display: table-cell;
  vertical-align: middle;
  border: 1px solid #ccc;
  border-bottom: none;
  background-color: #fff;
  padding: 8px;
  box-sizing: border-box;
}
.mailform dl:last-of-type dt {
  border-bottom: none;
}

}

.mailform dd input[type="text"],
.mailform dd select,
dd textarea {
  width: 315px;
  max-width: 100%;
  font-family: inherit;
  padding: 7px 12px;
  font-size: 14px;
  background: #fff;
  border-radius: 4px;
  border: 1px solid #ddddea;
/*   box-shadow: inset 0 1px 2px rgba(0,0,0,.05); */
}

.mailform dd input[type="radio"],
.mailform dd input[type="checkbox"]:{
  box-shadow: none;
  border: 5px solid #ccc;
}

.mailform dd .nest {
  padding-left: 45px;
  margin: 10px 0;
}

.mailform dd textarea {
  width: 350px;
  height: 120px;
  box-sizing: border-box;
  resize: vertical;
}

.confirmation_btn {
  font-family: inherit;
  padding: 10px 30px;
  font-size: 16px;
  background: none;
  border-radius: 8px;
  border: none;
  background: #ddd;
  color: #333;
  cursor: pointer;
}

.confirmation_btn:hover {
  opacity: .8;
}
.submit_area {
  margin-top: 45px;
  text-align: center;
}
.submit_area input[type="submit"] {
    cursor: pointer;
    padding: 0.6em 4em;
}
.submit_area input[type="button"] {
    cursor: pointer;
    padding: 0.6em 4em;
}
.err{
  color: #ff0000;
}
.red{
  color: #ff0000;
}
input::placeholder {
  color: #aaa;
}

/* IE */
input:-ms-input-placeholder {
  color: #aaa;
}

/* Edge */
input::-ms-input-placeholder {
  color: #aaa;
}