/*--- 相談フォーム ---*/

.warning-text {
    color: crimson;
}

input::placeholder {
    color:#aaa;
  }

#contact {
    width: auto;
    padding-top: 127px;
    padding-bottom: 127px;
}

#contact h2 span {
    position: relative;
}

#contact h2 span::before {
    content: '';
    position: absolute;
    width: 50px;
    height: 30px;
    top: 50%;
    left: -60px;
    transform: translateY(-50%);
    background-image: url(./../images/contact-taxi.png?1);
    background-size: contain;
    background-repeat: no-repeat;
}

#contact h2 span::after {
    content: '';
    position: absolute;
    width: 50px;
    height: 30px;
    top: 50%;
    right: -60px;
    transform: translateY(-50%);
    background-image: url(./../images/contact-taxi.png?1);
    background-size: contain;
    background-repeat: no-repeat;
}

#contact .form-wrap {
    width: 900px;
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
    background-color: #fff;
    padding-top: 60px;
    padding-left: 50px;
    padding-right: 50px;
    padding-bottom: 60px;
    box-sizing: border-box;
}

#contact .form-wrap table {
    border-collapse: separate;
    border-spacing: 0px 0px;
}

#contact .form-wrap table th, 
#contact .form-wrap table td {
    vertical-align: top;
    padding-bottom: 20px;
}
th p {
    background-color: #ED1C24;
}
#contact .form-wrap table th p {
    width: 290px;
    box-sizing: border-box;
    background-color: #999999;
    color: #fff;
    text-align: left;
    font-size: 22px;
    font-weight: 600;
    padding-top: 10px;
    padding-left: 20px;
    padding-right: 0px;
    padding-bottom: 10px;
    

}

#contact .form-wrap table td {
    padding-left: 20px;
}

#contact input {
    border: 1px solid;
    border-color: #707070;
    border-radius: 0px;
    font-size: 22px;
    padding: 13px 10px;
}

#contact textarea {
    border: 1px solid;
    border-color: #707070;
    border-radius: 0px;
    font-size: 22px;
    padding: 13px 10px;
    width: 470px;
    height: 200px;
}

#contact input[type="text"],
#contact input[type="email"] {
    width: 470px;
    position: relative;
}


#contact input[type="number"] {
    width: 100px;
}

.error {
    position: relative;
    background-color: lightcoral;
    border-color: red;
}

.required_mark {
    background-color: red;
    color: #fff;
    font-size: 14px;
    padding: 3px 5px;
    padding-left: 5px !important;
    margin-left: 10px;
}

#contact label {
    padding-right: 20px;
}

#contact span {
    padding-left: 10px;
}

#contact .form-note {
    padding-top: 20px;
    padding-bottom: 20px;
}

#contact .form-note ul li {
    position: relative;
    padding-left: 20px;
    font-size: 16px;
    font-weight: 300;
}

#contact .form-note ul li::before {
    position:absolute;
    content: '・';
    top: 0px;
    left: -0px;
}

#contact .privacy-policy {
    text-align: center;
    padding-top: 10px;
    padding-bottom: 10px;
}

#contact .privacy-policy a {
    color: #FF9100;
    text-decoration: none;
}

#contact .submit-wrap {
    text-align: center;
}

#contact .submit-wrap input[type="submit"],
#submit-button {
    background-color: #ED1C24;
    border: none;
    width: 470px;
    padding-top: 10px;
    padding-bottom: 10px;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    
}

#editButton {
    background-color: #fff;
    border: #707070 2px solid;
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 10px;
    padding-bottom: 10px;
    display: block;
    width: 200px;
    cursor: pointer;
}

@media screen and (max-width: 1079px) {
/*--- 相談フォーム ---*/
#contact {
    width: auto;
    padding-top: 40px;
    padding-bottom: 40px;
}

#contact h2 span {
    position: relative;
}

#contact h2 span::before {
    content: '';
    position: absolute;
    width: 50px;
    height: 30px;
    top: 50%;
    left: -60px;
    transform: translateY(-50%);
    background-image: url(./../images/contact-taxi.png?1);
    background-size: contain;
    background-repeat: no-repeat;
}

#contact h2 span::after {
    content: '';
    position: absolute;
    width: 50px;
    height: 30px;
    top: 50%;
    right: -60px;
    transform: translateY(-50%);
    background-image: url(./../images/contact-taxi.png?1);
    background-size: contain;
    background-repeat: no-repeat;
}

#contact .form-wrap {
    width: auto;
    margin-top: 20px;
    margin-left: 10px;
    margin-right: 10px;
    background-color: #fff;
    padding-top: 20px;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 20px;
    box-sizing: border-box;
}

#contact .form-wrap table {
    border-collapse: separate;
    border-spacing: 0px 0px;
    box-sizing: border-box;
    width: 100%;
}

#contact .form-wrap table th, 
#contact .form-wrap table td {
    vertical-align: top;
    padding-bottom: 10px;
    display: block;
}
#contact .form-wrap table td {
    padding-bottom: 30px;
}

#contact .form-wrap table th p {
    width: 100%;
    box-sizing: border-box;
    background-color: #999999;
    color: #fff;
    text-align: left;
    font-size: 22px;
    font-weight: 600;
    padding-top: 10px;
    padding-left: 20px;
    padding-right: 0px;
    padding-bottom: 10px;
    text-align: center;

}

#contact .form-wrap table td {
    padding-left: 0px;
}

#contact input {
    border: 1px solid;
    border-color: #707070;
    border-radius: 0px;
    font-size: 22px;
    padding: 13px 10px;
}

#contact textarea {
    border: 1px solid;
    border-color: #707070;
    border-radius: 0px;
    font-size: 22px;
    padding: 13px 10px;
    width: 100%;
    height: 200px;
    box-sizing: border-box;
    width: 100%;
}

#contact input[type="text"],
#contact input[type="email"] {
    width: 100%;
    box-sizing: border-box;
}

#contact input[type="number"] {
    width: 100px;
}

#contact label {
    padding-right: 20px;
}

#contact span {
    padding-left: 10px;
}

#contact .form-note {
    padding-top: 20px;
    padding-bottom: 20px;
}

#contact .form-note ul li {
    position: relative;
    padding-left: 20px;
    font-size: 16px;
    font-weight: 300;
}

#contact .form-note ul li::before {
    position:absolute;
    content: '・';
    top: 0px;
    left: -0px;
}

#contact .privacy-policy {
    text-align: center;
    padding-top: 10px;
    padding-bottom: 10px;
}

#contact .privacy-policy a {
    color: #FF9100;
    text-decoration: none;
}

#contact .submit-wrap {
    text-align: center;
}

#contact .submit-wrap input[type="submit"],
#contact .submit-wrap #submit-button {
    background-color: #ED1C24;
    border: none;
    width: calc(100% - 10px);
    padding-top: 10px;
    padding-bottom: 10px;
    color: #fff;
}
}

.confirmation .text {
    font-size: 20px;
}

.confirmation .submit-wrap {
    margin-top: 30px;
}

.send-mail {
    margin-bottom: 40px;
    text-align: center;
}

.send-mail p {
    font-size: 20px;
}