body {
    line-height: 2.4rem;
    color: #333;
}
.header {
    background-color: #074394;
    height: 12rem;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
h1 {
    text-align: center;
    color: #fff;
}
.submit {
    padding: 6px;
    border: 2px solid #6CC248;
    width: fit-content;
    width: -moz-fit-content;
    margin: 0 auto;
}
#submit_button {
    background: #fff;
    border: 1px solid #6CC248;
    padding: 1rem 12rem;
    color: #6CC248;
    font-size: larger;
}
label.error {
    display: block;
    font-size: small;
    color: red;
}
table {
    padding: 2rem 6rem;
    background: #fff;
    box-shadow: lightgrey 3px 3px 6px;
    margin: 1rem auto;
}
.table-mail {
    margin: 8rem auto 1rem;
}
.table-service {
    margin: 1rem auto 4rem;
}
table td {
    display: block;
}
table input, table textarea, table .radio {
    width: 32rem;
}
table input {
    border-bottom: 1px solid #666;
    border-top: 0;
    border-left: 0;
    border-right: 0;
    color: #666;
}
table textarea {
    background-image: -webkit-linear-gradient(left, white 10px, transparent 10px), -webkit-linear-gradient(right, white 10px, transparent 10px), -webkit-linear-gradient(white 30px, #666 30px, #666 31px, white 31px);
    background-image: -moz-linear-gradient(left, white 10px, transparent 10px), -moz-linear-gradient(right, white 10px, transparent 10px), -moz-linear-gradient(white 30px, #666 30px, #666 31px, white 31px);
    background-image: -ms-linear-gradient(left, white 10px, transparent 10px), -ms-linear-gradient(right, white 10px, transparent 10px), -ms-linear-gradient(white 30px, #666 30px, #666 31px, white 31px);
    background-image: -o-linear-gradient(left, white 10px, transparent 10px), -o-linear-gradient(right, white 10px, transparent 10px), -o-linear-gradient(white 30px, #666 30px, #666 31px, white 31px);
    background-image: linear-gradient(left, white 10px, transparent 10px), linear-gradient(right, white 10px, transparent 10px), linear-gradient(white 30px, #666 30px, #666 31px, white 31px);
    background-size: 100% 100%, 100% 100%, 100% 31px;
    line-height: 31px;
    border: none;
    color: #666;
    text-indent: 6px;
}
table input::placeholder, textarea::placeholder {
    color: #ccc;
}
table textarea:focus {
    outline: none;
}
table #acs, table #bbrain {
    width: auto;
}

@media only screen and (min-width: 481px) and (max-width: 768px) {
    table input, table textarea, table .radio {
        width: 100%;
    }
    table {
        width: 29rem;
    }
}

@media only screen and (max-width: 480px) {
    table input, table textarea, table .radio {
        width: 100%;
    }
    table {
        padding: 2rem 3rem;
        max-width: 20rem;
    }
    #submit_button {
        padding: 1rem 5rem;
    }
}