@charset "UTF-8";


.contact_area,
.reservation_area{
    max-width: 700px;
    margin: 70px auto;
}

.contact_area .txt_top{
    text-align: center;
}
.contact_area .txt_top p{
    font-size: 15px;
    margin-bottom: 20px;
}



/*******************/
.reservation_area .txt_top{
    border: 4px double #000;
    margin-bottom: 30px;
    padding: 20px 20px 5px;
}
.reservation_area .txt_top h3{
    margin-bottom: 20px;
}
.reservation_area .txt_top p{
    margin-bottom: 10px;
    text-indent: -1em;
    padding-left: 20px;
}
.reservation_area .txt_top p span{
    font-weight: bold;
    font-size: 18px;
}
.reservation_area .f13{
    text-align: center;
}

/*******************/


.cont_form {
    font-size: 12px;
    margin: 20px auto 0;

}
.cont_form input{
    height: 35px;
}
.cont_form input,
.cont_form textarea {
    border: 2px solid #ccc;
    padding: 2px 10px;
    width: 100%;

}

.cont_form input[type="radio"],
.cont_form input[type="checkbox"] {
    width: auto;
}

.cont_form select {
    width: 175px;
    border: 1px solid #ccc;
    padding: 3px;
}

.cont_form .type1 {
    width: 35%;
}




.cont_form dt {
    float: left;
    width: 25%;
    text-align: left;
    font-size: 14px;
    font-weight: 700;
    padding: 22px 0;
    color: #333333;
    display: flex;
    align-items: center;
    letter-spacing: 0;
}

.cont_form dd {
    margin-left: 25%;
    padding: 22px 0 0;
}




.cont_form dt span {
    color: #ff0000;
    font-size: 10px;
    line-height: 1em;
    padding-right: 3px;
    display: block;
    padding-left: 5px;
}

.cont_form dd:after {
    content: '';
    display: table;
    clear: both;
    height: 0;
}


.cont_form_btn {
    margin: 15px auto 20px;
    text-align: center;

    padding-top: 40px;
    max-width: 830px;
}




.submit:disabled {
    background: #ccc !important;
    color: #fff !important;
}

.file input {
    border: 0;
}

.cont_form_btn input[type="submit"] {
    width: 260px;
    height: 40px;
    cursor: pointer;
    background-image: url("../images/common/submit.png");
    background-repeat: no-repeat;
    border: 0;
    border-radius: 0;
    color: #fff;
    text-align: center;
}

@media all and (-webkit-min-device-pixel-ratio: 1.5) {
    .cont_form_btn input[type="submit"] {
        background-image: url("../images/common/submit@2x.png");
        background-size: 260px 40px;
    }
}



.privacypolicy{
    border: 1px solid #ccc;
    padding: 20px;
    margin-top: 60px;
}
.privacypolicy span{
    display: block;
}
.privacypolicy p{
    font-size: 13px;
}


/*******************/
.cp_ipselect {
    /*overflow: hidden;*/
    width: 90%;
    text-align: center;
}

.cp_ipselect select {
    padding: 3px 10px;
    width: 100%;
    padding-right: 1em;
    cursor: pointer;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
}

.cp_ipselect select::-ms-expand {
    display: none;
}

.cp_ipselect.cp_sl01 {
    position: relative;
    border: 2px solid #ccc;
    background: #fff;
    width: 50%;
    text-align: left;
}

.cp_ipselect.cp_sl01::before {
    position: absolute;
    top: 6px;
    right: 20px;
    font-size: 15px;
    width: 0;
    height: 0;
    padding: 0;
    color: #000;
    content: "\f107";
    font-family: "Font Awesome 5 Free";
    pointer-events: none;
    font-weight: bold;
}

.cp_ipselect.cp_sl01 select {
    padding: 5px 38px 5px 8px;
    color: #555;
    font-weight: normal;
}

/***　wp確認用 ***************/

.mw_wp_form_input .confirm_on{
    display: none;
}


/*******************/
.mw_wp_form_confirm .off_box{
    display: none;
}


.mw_wp_form_confirm .float_ce{
    justify-content: center;
}

.mw_wp_form_confirm .cont_form_btn{
    margin: 15px 20px;
}



.mw_wp_form_confirm .cp_ipselect.cp_sl01{
    border: 0;
}
.mw_wp_form_confirm .cp_ipselect.cp_sl01::before{
    content: "";
}
/***完了画面****************/

.thank_txt{
    text-align: center;
    margin: 70px 0 100px;
}

/*
.mw_wp_form .error{
    font-size: 13px !important;
    padding-top: 5px;
}

*/

/*-------------------------------
media
--------------------------------*/


@media (max-width: 767px) {
    .contact_area,
    .reservation_area{
        padding: 0 15px;
    }
    .cont_form {
        width: 100%;
    }

    .cont_form dt {
        width: 100%;
        padding-bottom: 0;
        float: none;
    }

    .cont_form dd {
        width: 100%;
        margin-left: 0;
        border-top: 0;
        padding-bottom: 15px;
        padding-top: 5px;
    }
    .cont_form_btn{
        padding-top: 10px;
    }
    .cont_form .type1,
    .cp_ipselect.cp_sl01{
        width: 100%;
    }
    .reservation_area .txt_top{
        padding: 20px 15px;
    }

}
