/*
    お問い合わせCSS
 */

.wrap-ttl-page {
    position: relative;
    width: 1100px;
    margin: 40px auto;
}

.ttl-page {
    margin: 30px 0 60px;
}

.wrap-ttl-page:before,
.wrap-ttl-page:after,
.c-ttl-page:before {
    display: inline-block;
    position: absolute;
    z-index: 0;
    width: 800px;
    height: 17px;
    background: #fbfafa;
    vertical-align: middle;
    content: "";
    -webkit-transform: rotate(-55deg);
       -moz-transform: rotate(-55deg);
        -ms-transform: rotate(-55deg);
            transform: rotate(-55deg);
}

.wrap-ttl-page:before {
    top: 0;
    left: -174px;
}

.wrap-ttl-page:after {
    top: 0;
    left: -134px;
}

.c-ttl-page:before {
    top: -224px;
    left: 270px;
}

.bx-contact {
    padding: 40px 0;
    background: #fbfafa;
}

.bx-contact-lead {
    padding-bottom: 40px;
    text-align: center;
}

.tx-contact-lead {
    text-align: center;
}

.inner-contact {
    width: 530px;
    margin: 0 auto;
}

.lst-contact-form dt {
    margin-bottom: 8px;
    line-height: 1;
    text-align: left;
}

.wrap-submit-tx {
    margin: 0 0 24px 0;
}

.wrap-submit-tx.is-err input,
.wrap-submit-tx.is-err textarea {
    border: 1px #ab0f00 solid;
}

.wrap-submit-tx input,
.wrap-submit-tx textarea {
    box-sizing: border-box;
    width: 100%;
    padding: 13px 16px;
    border: 1px #c5c4c4 solid;
    border-radius: 2px;
    box-shadow: none;
}

.wrap-submit-tx input::-webkit-input-placeholder,
.wrap-submit-tx textarea::-webkit-input-placeholder {
    color: #c5c4c4;
}

.wrap-submit-tx input:-ms-input-placeholder,
.wrap-submit-tx textarea:-ms-input-placeholder {
    color: #c5c4c4;
}

.wrap-submit-tx input::placeholder,
.wrap-submit-tx textarea::placeholder {
    color: #c5c4c4;
}

.wrap-submit-tx input:focus,
.wrap-submit-tx textarea:focus {
    border: 1px #ab0f00 solid;
    outline: none;
}

.input-privacy {
    display: none;
}

.bx-privacy {
    position: relative;
    margin: 0 0 48px 40px;
}

.bx-privacy:before {
    position: absolute;
    top: 50%;
    left: -40px;
    width: 30px;
    height: 30px;
    border: 1px #c5c4c4 solid;
    background: #fff;
    content: "";
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
}

.input-privacy[type=checkbox]:checked + .bx-privacy:after {
    position: absolute;
    top: 2px;
    left: -33px;
    width: 17px;
    height: 5px;
    border-bottom: 3px solid #ab0f00;
    border-left: 3px solid #ab0f00;
    content: "";
    -ms-transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
}

.btn-privacy {
    border-bottom: 1px #ab0f00 solid;
    color: #ab0f00;
    transition: .3s;
}

.btn-privacy:hover {
    border-bottom: 1px #f43e43 solid;
    color: #f43e43;
}

.wrap-btn {
    position: relative;
    width: 280px;
    margin: 40px auto 0;
    text-align: center;
}

.wrap-btn:after {
    position: absolute;
    top: 50%;
    right: 8px;
    width: 6px;
    height: 6px;
    margin: -3px 16px 0 16px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    vertical-align: middle;
    content: "";
    transition: .3s;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
}

.wrap-btn:hover:after {
    border-top: solid 1px #ab0f00;
    border-right: solid 1px #ab0f00;
}

.m-primary-btn {
    position: relative;
    box-sizing: border-box;
    width: 280px;
    padding: 16px;
    border: 2px #ab0f00 solid;
    border-radius: 100px;
    background: #ab0f00;
    color: #fff;
    font-weight: bold;
    transition: .3s;
}

.m-primary-btn:hover {
    background: transparent;
    color: #ab0f00;
}

.tx-attention {
    display: inline-block;
    position: relative;
    margin-top: 40px;
    padding: 8px 32px 8px 63px;
    background: #ab0f00;
    color: #fff;
    font-size: 12px;
    font-weight: bold;
}

.tx-attention:after {
    position: absolute;
    top: 50%;
    left: 32px;
    width: 20px;
    height: 20px;
    background: url(/pc/images/common/ico_attention.png) no-repeat;
    background-size: 20px 20px;
    content: "";
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
}

.tx-form-input-error {
    display: block;
    margin-top: 8px;
    color: #ab0f00;
}

.tx-form-input-error:before {
    content: "→";
}

.wrap-btn-nomal {
    width: 280px;
    margin: 24px auto 0;
}