@charset "UTF-8";
html {
    scroll-behavior: smooth;
}

body > main {
    max-width: 1200px;
    margin: 0 auto;
}

main > section {
    position: relative;
}

#eFormSec {
    background-color: #15439C;
}

#eFormSec > div {
    max-width: 1080px;
    margin: 0 auto;
    padding: 100px 40px;
}

#eFormSec > div h2 {
    text-align: center;
    margin-bottom: 60px;
}

#eFormSec > div h2 img {
    height: 96px;
    margin: 0 auto;
}

#eFormTable {
    background-color: #FFF;
    padding: 40px;
}

#eFormTable table {
    border-collapse: collapse;
    width: 100%;
    font-size: 20px;
}

#eFormTable table tr {
    border-top: 1px solid #CCC;
}

#eFormTable table tr:first-child {
    border: none;
}

#eFormTable table tr th {
    text-align: left;
    width: 36%;
    vertical-align: top;
    padding: 0.8em 0;
    position: relative;
    overflow: hidden;
}

#eFormTable table tr th.eFormReq:after {
    content: '必須';
    color: #FFF;
    background-color: #FF0000;
    float: right;
    font-size: 16px;
    padding: 0.1em 0.4em 0;
}

#eFormTable table tr td {
    padding: 0.4em 0.8em;
}

#eFormTable table tr td input[type=text],
#eFormTable table tr td input[type=email],
#eFormTable table tr td input[type=tel],
#eFormTable table tr td textarea {
    width: 80%;
}

#eFormTable table tr td .error {
    display: block;
    color: red;
}

#eFormTable > div {
    padding: 1em 0;
    text-align: center;
}

#eFormTable > div input {
    width: 60%;
	height: 5em;
}

body > footer {
    text-align: center;
    padding: 60px 30px 30px;
}

body > footer address {
    font-size: 18px;
    line-height: 2;
    font-style: normal;
    display: block;
    margin-bottom: 60px;
}

#eFootLogo {
    margin-bottom: 1em;
}

#eFootLogo img {
    margin: 0 auto;
    width: 14%;
}

.eContactLink {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 50px 120px;

}

.eSubmitButton {
    background: url(../img/contact_send_button.png) no-repeat center /contain;
    border: none;
    color: transparent;
}