.form_area *,
.form_area  *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
.form_area input[type="submit"] {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.form_area p {
  margin: 0 0 1em 0;
}

.banner {
  width: 765px;
  margin: 30px auto 45px;
}

.form_area {
  margin: 20px 0 100px;
}

.form_area form {
  margin: 45px 0 0
*/}

.step_nav {
  background: url(../img/contact/step_01.png) no-repeat;
  width: 1100px;
  height: 60px;
  margin: 0 0 40px;
}

.tr {
  background: url(../img/common/dottbg.png);
  margin: 0 0 15px 0;
  padding: 2px;
}

.td {
            display: inline-block;
}
.td._toiawasewrap {
    min-height: 16em;
    line-height: 1.5em;
    padding-top: 20px;
    padding-bottom: 20px;

}


.contact_pagenav {
            text-align: center;
            margin-top: 40px;
            width: 48%;
            margin-left: 26%;
}

.form_area input[type="image"] {
    padding: 8px 15px;
    border: none;
}

.backbtn {
            padding: 8px 15px;
            margin: 0 10px;
}
.th {;
	width: 25%;;
	line-height: 3em;;
	float: left;;
	box-sizing: border-box;;
	padding-left: 2em;;
	position: relative;;
	font-size: 1.2em;;
}

.th:after {
            content: '任意';
            background: #C7C7C7;
            padding: 0 1em;
            color: #fff;
            line-height: 1.5em;
            position: absolute;
            right: 1em;
            top: 50%;
            font-size: .8em;
            transform: translateY(-50%);
}
.th.required:after {
            content: '必須';
            background: #bb1a1a;
}

.td {
	width: 75%;
	float: right;
	background: #fff;
	padding: 0 1em;
	box-sizing: border-box;
	line-height: 4em;
}

.form_area textarea,
.form_area input {
  padding: 10px;
  border: 1px solid #c8c8c8;
  font-size: 16px;
}

.form_area input[type="text"] {
  width: 170px;
  height: 42px;
}
.form_area input[name="name01"] {
  margin: 0 30px 0 calc(10px + 1em);
}
.form_area input[name="name02"] {
  margin: 0 0 0 calc(10px + 1em);
}
.form_area input[name="kana01"] {
  margin: 0 30px 0 10px;
}
.form_area input[name="kana02"] {
  margin: 0 0 0 10px;
}

.form_area input[type="email"] {
  width: 459px;
}

.form_area input[type="tel"] {
  width: 130px;
}

.tel_hyphen {
  display: inline-block;
  margin: 13px;
  line-height: 39px;
}

.form_area textarea {
  resize: vertical;
  width: 100%;
  height: 275px;
  /*margin-top: 20px;*/
}

.form_area input[type="submit"] {
  background: url(../img/contact/contact_btn.png) no-repeat;
  width: 250px;
  height: 50px;
  cursor: pointer;
  display: block;
  margin: 30px auto 0;
}
.form_area input[type="submit"]:hover {
  background: url(../img/contact/contact_btn_over.png) no-repeat;
}
.confirm_btn img{
  display:none;
}


::-webkit-input-placeholder {
  color: #ccc;
}
::-moz-placeholder {
  color: #ccc; opacity: 1;
}
:-ms-input-placeholder {
  color: #ccc;
}


.step_nav.stp2 {
    background: url(../img/contact/step2.png) no-repeat;
}

.step_nav.stp3 {
    background: url(../img/contact/step3.png) no-repeat;
}
.furigana{
            line-height: 4em;

}


.contact_thxinf {
            width: 60%;
}

.form_complete {
    padding-top: 20px;
}
.musttag{
 background-color: #bb1a1a;
 color: #fff;
 display: inline-block;
 padding: 0 10px;
 margin-right: 5px;
}
.pp_text a:hover{text-decoration: underline !important;}