/* ==========================================================================
   toppage
   ========================================================================== */
.c-contact__wrap
{
    max-width: 1040px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 30px;
    padding-right: 20px;
    padding-bottom: 30px;
    padding-left: 20px;

    border-top: 1px solid #1729ac;
    border-bottom: 1px solid #1729ac;
}
.c-contact__titleWrap
{
    text-align: center;
}
@media screen and (min-width: 1480px)
{
    .c-contact__titleWrap .jp
    {
        font-size: 30px;
        font-size: 3rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .c-contact__titleWrap .jp
    {
        font-size: 1.7441860465vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .c-contact__titleWrap .jp
    {
        font-size: 2.027027027vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .c-contact__titleWrap .jp
    {
        font-size: 3.6585365854vw;
    }
}
@media screen and (max-width: 767px)
{
    .c-contact__titleWrap .jp
    {
        font-size: 4.5572916667vw;
    }
}

.contactPage__heading
{
    font-size: 36px;
    font-size: 3.6rem;
    font-weight: 400;

    margin-top: 77px;

    letter-spacing: 2px;

    -webkit-font-feature-settings: 'palt' 1;

            font-feature-settings: 'palt' 1;
}
@media screen and (max-width: 767px)
{
    .contactPage__heading
    {
        font-size: 50px;
        font-size: 6.67vw;

        margin: 13.33vw 0vw 0vw 0vw;
    }
}
.contactPage-outline__img-box
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 59px;
}
@media screen and (max-width: 1023px)
{
    .contactPage-outline__img-box
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}
@media screen and (max-width: 767px)
{
    .contactPage-outline__img-box
    {
        margin: 12vw 0vw 0vw 0vw;
    }
}
.contactPage-outline__img
{
    width: calc(33.3333333333% - 16.6666666667px);
    height: 384px;
}
@media screen and (max-width: 1023px)
{
    .contactPage-outline__img
    {
        width: calc(50% - 10px);
        height: 45.9vw;
    }
}
@media screen and (max-width: 767px)
{
    .contactPage-outline__img
    {
        width: 100%;
        height: 89vw;
    }
}
.contactPage-outline__img + .contactPage-outline__img
{
    margin-left: 25px;
}
@media screen and (max-width: 1023px)
{
    .contactPage-outline__img + .contactPage-outline__img
    {
        margin-left: 0;
    }
}
@media screen and (max-width: 767px)
{
    .contactPage-outline__img + .contactPage-outline__img
    {
        margin: 5.33vw 0vw 0vw 0vw;
    }
}
@media screen and (max-width: 1023px)
{
    .contactPage-outline__img:nth-of-type(2)
    {
        margin-left: 20px;
    }
}
@media screen and (max-width: 767px)
{
    .contactPage-outline__img:nth-of-type(2)
    {
        margin-left: 0;
    }
}
@media screen and (max-width: 1023px)
{
    .contactPage-outline__img:nth-of-type(3)
    {
        margin-top: 20px;
    }
}
@media screen and (max-width: 767px)
{
    .contactPage-outline__img:nth-of-type(3)
    {
        margin: 5.33vw 0vw 0vw 0vw;
    }
}
.contactPage-outline__table
{
    font-size: 17px;
    font-size: 1.7rem;
    font-weight: 300;

    width: 100%;

    color: #333;
}
@media screen and (max-width: 767px)
{
    .contactPage-outline__table
    {
        border-top: none;
    }
}
.contactPage-outline__table tr
{
    border: 1px solid #999;
}
.contactPage-outline__table th
{
    font-weight: 500;

    width: 30%;

    text-align: left;

    background: #f7f7f7;
}
@media screen and (min-width: 768px)
{
    .contactPage-outline__table th
    {
        border-right: 1px solid #999;
    }
}
@media screen and (min-width: 768px) and (max-width: 1023px)
{
    .contactPage-outline__table th
    {
        width: 37%;
    }
}
@media screen and (max-width: 767px)
{
    .contactPage-outline__table th
    {
        position: relative;

        border-bottom: 1px solid #999;
    }
}
@media screen and (max-width: 767px)
{
    .contactPage-outline__table td
    {
        min-height: 59.83px;
    }
}
.contactPage-outline__table th,
.contactPage-outline__table td
{
    line-height: 1.8;

    padding: 30px;

    vertical-align: top;
}
@media screen and (max-width: 767px)
{
    .contactPage-outline__table th,
    .contactPage-outline__table td
    {
        font-size: 32px;
        font-size: 4.27vw;

        display: block;

        width: 100%;
        padding: 4vw 6.67vw 4vw 6.67vw;
    }
}
.contactPage-outline__table ul li
{
    display: inline-block;

    vertical-align: top;
}
@media screen and (max-width: 767px)
{
    .contactPage-outline__table ul li
    {
        display: block;
    }
}

.pass-re
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;

    -webkit-box-pack: end;

        -ms-flex-pack: end;

            justify-content: flex-end;
}

/* reset
-------------------------------------------------------------------------- */
select
{
    border: none;
    outline: none;
    background: transparent;

    -webkit-appearance: none;

       -moz-appearance: none;

            appearance: none;
}

select
{
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

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

select
{
    font-size: 16px;

    text-align: left !important;

    border: 0;
    background: inherit;
    background: none;

    -webkit-appearance: none;

       -moz-appearance: none;

            appearance: none;
}

input[type=number]
{
    -moz-appearance: textfield;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button
{
    margin: 0;

    -webkit-appearance: none;

            appearance: none;
}

/* table
-------------------------------------------------------------------------- */
.table
{
    margin-bottom: 60px;

    border-spacing: 0;
    border-collapse: collapse;
}
@media screen and (max-width: 767px)
{
    .table ul li
    {
        display: inline-block;
    }
}
@media screen and (max-width: 767px)
{
    .table ul li .yoko
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-bottom: 20px;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;
    }
}
@media screen and (max-width: 767px)
{
    .table ul li .yoko li:first-child
    {
        display: block;

        width: 100%;
    }
    .table ul li .yoko li:first-child div
    {
        width: 97%;
        max-width: 100%;
    }
    .table ul li .yoko li div
    {
        max-width: 125px;
    }
}

@media screen and (max-width: 767px)
{
    .table th,
    .table td
    {
        display: block;

        padding: 20px 10px 20px;

        text-align: left;
    }
}

.table th
{
    width: 30%;

    text-align: left;
    vertical-align: middle;
    white-space: nowrap;
}
@media screen and (max-width: 767px)
{
    .table th
    {
        width: 100%;
        padding-left: 15px;

        white-space: normal;
    }
}

@media screen and (max-width: 767px)
{
    ul.yoko2
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-bottom: 20px;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    ul.yoko2 li div
    {
        max-width: 130px;
    }
}
@media screen and (min-width: 1024px)
{
    .area_input
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
/* headLine
-------------------------------------------------------------------------- */
.headLine
{
    font-weight: 300;
}
@media screen and (max-width: 767px)
{
    .headLine
    {
        font-size: 6.5104166667vw;
    }
}
@media screen and (min-width: 1480px)
{
    .headLine
    {
        font-size: 30px;
        font-size: 3rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .headLine
    {
        font-size: 1.7441860465vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .headLine
    {
        font-size: 2.027027027vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .headLine
    {
        font-size: 3.6585365854vw;
    }
}
@media screen and (min-width: 1024px)
{
    .headLine
    {
        margin: 0vw 0vw 1.32vw 0vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .headLine
    {
        margin: 0vw 0vw 3vw 0vw;
    }
}
@media screen and (max-width: 767px)
{
    .headLine
    {
        margin: 0vw 0vw 4vw 0vw;
    }
}
.headLine img
{
    width: 30px;
    margin-right: 10px;
    margin-bottom: -5px;
}
.headLine span
{
    display: inline-block;

    margin-right: 10px;

    color: #1729aa;
}

/* honeypot
-------------------------------------------------------------------------- */
.hypt
{
    display: none !important;
}

/* error
-------------------------------------------------------------------------- */
.errMsg
{
    color: #f00;
}

.errList
{
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.5em;

    display: block;

    width: 95%;

    color: #f00;
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .errList
    {
        font-size: 20px;
        font-size: 2rem;
    }
}

/*
-------------------------------------------------------------------------- */
.req,
.opt
{
    font-size: .82em;
    font-weight: normal;
    font-weight: bold;
    line-height: 1 !important;

    float: right;

    margin-top: 5px;
    margin-left: .5em;
    padding: 2px 10px 2px;

    color: #fff !important;
    border-radius: 5px;
    background: #f00 !important;
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .req,
    .opt
    {
        margin-top: 5px;
        margin-left: 0;
    }
}
@media screen and (max-width: 767px)
{
    .req,
    .opt
    {
        padding: 2px 10px 3px;
    }
}

td .req,
.opt
{
    margin-left: 0;
}

/*
-------------------------------------------------------------------------- */
.req_pcmail,
.opt
{
    font-size: .82em;
    font-weight: normal;
    font-weight: bold;

    margin-left: 0;
    padding: 2px 10px 5px 0;
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .req_pcmail,
    .opt
    {
        margin-top: 5px;
        margin-left: 0;
    }
}
@media screen and (max-width: 1023px)
{
    .req_pcmail,
    .opt
    {
        display: block;
    }
}

/* form
-------------------------------------------------------------------------- */
.area_input input[type=number].qtWidth,
.area_input input[type=text].qtWidth
{
    width: 85%;
}

input,
button,
textarea,
select
{
    font-family: 'Noto Sans JP', sans-serif !important;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

input[type=email],
input[type=tel],
input[type=number],
input[type=text],
input[type=password],
textarea
{
    font-size: 16px;
    font-weight: 300;

    -webkit-box-sizing: border-box;

            box-sizing: border-box;
    width: 100%;
    margin: 5px 0;
    padding: 10px;
    padding: 10px !important;

    text-align: left !important;

    border: 1px solid #bbb;
    border: solid 1px #ccc;
    border-radius: 5px;
    background: #fff !important;
}
@media screen and (min-width: 1024px)
{
    input[type=email].qtWidth,
    input[type=tel].qtWidth,
    input[type=number].qtWidth,
    input[type=text].qtWidth,
    input[type=password].qtWidth,
    textarea.qtWidth
    {
        width: 48.5%;
    }
}
@media screen and (max-width: 1023px)
{
    input[type=email].qtWidth,
    input[type=tel].qtWidth,
    input[type=number].qtWidth,
    input[type=text].qtWidth,
    input[type=password].qtWidth,
    textarea.qtWidth
    {
        width: 100%;
    }
}
@media screen and (min-width: 1024px)
{
    input[type=email].qtWidth2,
    input[type=tel].qtWidth2,
    input[type=number].qtWidth2,
    input[type=text].qtWidth2,
    input[type=password].qtWidth2,
    textarea.qtWidth2
    {
        width: 48.5%;
    }
}
@media screen and (max-width: 1023px)
{
    input[type=email].qtWidth2,
    input[type=tel].qtWidth2,
    input[type=number].qtWidth2,
    input[type=text].qtWidth2,
    input[type=password].qtWidth2,
    textarea.qtWidth2
    {
        width: 90%;
    }
}
@media screen and (max-width: 767px)
{
    input[type=email],
    input[type=tel],
    input[type=number],
    input[type=text],
    input[type=password],
    textarea
    {
        width: 100%;
    }
}
input[type=email]:focus,
input[type=tel]:focus,
input[type=number]:focus,
input[type=text]:focus,
input[type=password]:focus,
textarea:focus
{
    background-color: #ddd;
}
input[type=email].r-text,
input[type=tel].r-text,
input[type=number].r-text,
input[type=text].r-text,
input[type=password].r-text,
textarea.r-text
{
    margin-right: 5px;
}
@media screen and (min-width: 1024px)
{
    input[type=email].r-text,
    input[type=tel].r-text,
    input[type=number].r-text,
    input[type=text].r-text,
    input[type=password].r-text,
    textarea.r-text
    {
        width: 48.5%;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    input[type=email].r-text,
    input[type=tel].r-text,
    input[type=number].r-text,
    input[type=text].r-text,
    input[type=password].r-text,
    textarea.r-text
    {
        width: 85%;
    }
}
@media screen and (max-width: 767px)
{
    input[type=email].r-text,
    input[type=tel].r-text,
    input[type=number].r-text,
    input[type=text].r-text,
    input[type=password].r-text,
    textarea.r-text
    {
        width: 80%;
    }
}
input[type=email].housenumber,
input[type=tel].housenumber,
input[type=number].housenumber,
input[type=text].housenumber,
input[type=password].housenumber,
textarea.housenumber
{
    margin-left: 5px;
}
@media screen and (min-width: 1024px)
{
    input[type=email].housenumber,
    input[type=tel].housenumber,
    input[type=number].housenumber,
    input[type=text].housenumber,
    input[type=password].housenumber,
    textarea.housenumber
    {
        width: 45.5%;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    input[type=email].housenumber,
    input[type=tel].housenumber,
    input[type=number].housenumber,
    input[type=text].housenumber,
    input[type=password].housenumber,
    textarea.housenumber
    {
        width: 60%;
    }
}
@media screen and (max-width: 767px)
{
    input[type=email].housenumber,
    input[type=tel].housenumber,
    input[type=number].housenumber,
    input[type=text].housenumber,
    input[type=password].housenumber,
    textarea.housenumber
    {
        width: 85%;
    }
}

/* select
-------------------------------------------------------------------------- */
.cp_ipselect
{
    font-weight: 300;

    min-width: 230px;
    margin: 0 auto;

    text-align: center;
}
@media screen and (max-width: 1023px)
{
    .cp_ipselect
    {
        min-width: 195px;
    }
}
.cp_ipselect select
{
    font-weight: 300;

    width: 100%;
    padding-right: 1em;

    cursor: pointer;
    text-indent: .01px;
    text-overflow: ellipsis;

    border: none;
    outline: none;
    background: transparent;
    background-image: none;
    -webkit-box-shadow: none;
            box-shadow: none;

    -webkit-appearance: none;

       -moz-appearance: none;

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

.cp_ipselect.cp_sl01
{
    position: relative;

    display: inline-block;

    margin: 5px 3px;

    border: 1px solid #bbb;
    border-radius: 5px;
    background: #fff;
}
.cp_ipselect.cp_sl01::before
{
    position: absolute;
    top: 0;
    right: .9em;
    bottom: 0;

    width: 0;
    height: 0;
    margin: auto;
    padding: 0;

    content: '';
    pointer-events: none;

    border-top: 6px solid #666;
    border-right: 6px solid transparent;
    border-left: 6px solid transparent;
}
.cp_ipselect.cp_sl01 select
{
    padding: 11px 20px 11px 11px;
}
.cp_ipselect.cp_sl01 option
{
    font-size: 17px;
    font-weight: 300 !important;
}

/*
-------------------------------------------------------------------------- */
.radio_sp,
.checkbox_sp
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -ms-flex-wrap: wrap;

        flex-wrap: wrap;
}
@media screen and (max-width: 767px)
{
    .radio_sp,
    .checkbox_sp
    {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}
@media screen and (max-width: 767px)
{
    .radio_sp.radio_reply,
    .checkbox_sp.radio_reply
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
.radio_sp li,
.checkbox_sp li
{
    max-width: 49.9%;

    -ms-flex-preferred-size: 49.9%;

        flex-basis: 49.9%;
}
@media screen and (max-width: 1023px)
{
    .radio_sp li,
    .checkbox_sp li
    {
        max-width: 100%;

        -ms-flex-preferred-size: 100%;

            flex-basis: 100%;
    }
}
@media screen and (max-width: 767px)
{
    .radio_sp li,
    .checkbox_sp li
    {
        max-width: 100%;

        text-align: left;

        -ms-flex-preferred-size: 80%;
        flex-basis: 100%;
    }
}
.radio_sp li label,
.checkbox_sp li label
{
    display: block;

    margin-right: 10px;
    margin-bottom: 10px;
    padding: 10px;

    cursor: pointer;

    border: 1px solid #bbb;
    border-radius: 5px;
    background: #f8f8f8;
}
@media screen and (max-width: 1023px)
{
    .radio_sp li label,
    .checkbox_sp li label
    {
        margin-right: 0;
    }
}
@media screen and (min-width: 768px)
{
    .radio_sp li label :hover,
    .checkbox_sp li label :hover
    {
        background: #1729ac;
    }
}
.radio_sp .l1 li,
.checkbox_sp .l1 li
{
    max-width: 100%;

    -ms-flex-preferred-size: 100%;

        flex-basis: 100%;
}
@media screen and (max-width: 1023px)
{
    .radio_sp .l1 li,
    .checkbox_sp .l1 li
    {
        max-width: 80%;

        -ms-flex-preferred-size: 80%;

            flex-basis: 80%;
    }
}
.radio_sp input,
.checkbox_sp input
{
    display: none;
}
.radio_sp input:checked + label,
.checkbox_sp input:checked + label
{
    font-weight: bold;

    color: #fff;
    background: #1729ac;
}

.radio_sp input + label
{
    position: relative;

    padding-left: 30px;
}
.radio_sp input + label::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 5px;

    display: block;

    width: 17px;
    height: 17px;
    margin: auto;

    content: '';

    border: 1px solid #999;
    border-radius: 50%;
    background: #fff;
}

.radio_sp input:checked + label::after
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 8px;

    display: block;

    width: 11px;
    height: 11px;
    margin: auto;

    content: '';

    border-radius: 50%;
    background: #1729ac;
}

.checkbox_sp input + label
{
    position: relative;

    padding-left: 30px;
}
.checkbox_sp input + label::before
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 7px;

    display: block;

    width: 15px;
    height: 15px;
    margin: auto;

    content: '';

    border: 1px solid #999;
    background: #fff;
}

.checkbox_sp input:checked + label::after
{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 10px;

    display: block;

    width: 8px;
    height: 12px;
    margin: auto;

    content: '';
    -webkit-transform: rotate(40deg);
            transform: rotate(40deg);

    border-right: 3px solid #1729ac;
    border-bottom: 3px solid #1729ac;
}

/* atten
-------------------------------------------------------------------------- */
.c_atten
{
    font-weight: 300;
}
.c_atten img
{
    width: 100%;
}
@media screen and (min-width: 1024px)
{
    .c_atten ul
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
    }
}
.c_atten ul li
{
    display: inline-block;

    margin-bottom: 0;

    vertical-align: middle;
}
.c_atten ul li:first-child
{
    max-width: 5%;
}

@media screen and (max-width: 1023px)
{
    .c_atten ul li:first-child
    {
        width: 100%;
        max-width: 100%;
    }
}
@media screen and (max-width: 1023px)
{
    .c_atten ul li:first-child img
    {
        display: block;

        width: 60px;
        height: auto;
        margin: 0 auto 20px;
    }
}
.c_atten ul li:nth-child(2)
{
    width: 93%;
}

.c_atten ul li:nth-child(2) .color
{
    font-weight: 500;

    color: #1729ac;
}

@media screen and (max-width: 1023px)
{
    .c_atten ul li:nth-child(2)
    {
        line-height: 1.5;

        width: 100%;
        max-width: 100%;
    }
}
.atten_ad
{
    font-size: 23px !important;
    font-weight: 400;

    margin-bottom: 10px;
}

/* btn
-------------------------------------------------------------------------- */
#btnFormList a
{
    text-decoration: none;
}

#btnFormList,
#btnConfList
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    list-style-type: none;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

#btnFormList2 a
{
    text-decoration: none;
}

#btnFormList2,
#btnConfList2
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    list-style-type: none;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

#btnSubmit
{
    font-weight: 500;
    line-height: 1;

    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    min-width: 396px;
    margin: 0 20px 0;
    padding: 20px 30px 22px;

    cursor: pointer;
    -webkit-transition: .3s ease;
    transition: .3s ease;
    text-align: center;
    text-decoration: none;

    color: #fff;
    color: #fff;
    border: solid 1px #fff;
    border-radius: 5px;
    outline: none;
    background: #999;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}
@media screen and (max-width: 1023px)
{
    #btnSubmit
    {
        min-width: 425px;
        margin-top: 20px;
    }
}
@media screen and (max-width: 767px)
{
    #btnSubmit
    {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.3;

        min-width: 350px;
    }
}
@media screen and (min-width: 768px)
{
    #btnSubmit
    {
        font-size: 40px;
        font-size: 4rem;
    }
}
#btnSubmit.max-width
{
    width: 100%;
    margin: 0;

    border-radius: 0;
}
#btnSubmit:hover
{
    opacity: 1;
    color: #999;
    border: solid 1px #999;
    background: #fff;
}
#btnSubmit.color
{
    min-width: 865px;
    margin-bottom: 40px;

    background: #b59f0c;
}
@media screen and (max-width: 1023px)
{
    #btnSubmit.color
    {
        min-width: 425px;
        margin-top: 0;
        margin-bottom: 0;
        padding: 20px 0 22px;
    }
}
@media screen and (max-width: 767px)
{
    #btnSubmit.color
    {
        min-width: 350px;
    }
}
#btnSubmit.color:hover
{
    opacity: 1;
    color: #b59f0c;
    border: solid 1px #b59f0c;
    background: #fff;
}

@media screen and (max-width: 1023px)
{
    #btnFormList2 li:nth-child(2) #btnSubmit,
    #btnConfList2 li:nth-child(2) #btnSubmit,
    #btnFormList li:nth-child(2) #btnSubmit,
    #btnConfList li:nth-child(2) #btnSubmit
    {
        margin-top: 20px;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    #btnSubmit
    {
        /* margin-bottom: 100px; */
    }
}
#btnSubmit:hover
{
    opacity: .8;
}

#btnSubmit a
{
    text-decoration: none;

    color: #fff;
}

#btnSubmit.syusei
{
    color: #999;
    border: solid 1px #999;
    background: #fff;
}
#btnSubmit.syusei:hover
{
    opacity: 1;
    color: #fff;
    border: solid 1px #fff;
    background: #999;
}

/* conf
-------------------------------------------------------------------------- */
.page_disc
{
    font-size: 25px;
    font-size: 2.5rem;
    font-weight: bold;

    width: 1080px;
    max-width: 90vw;
    margin: 40px auto 20px;
    padding: 0 5px;

    text-align: center;

    color: red;
}

@media screen and (max-width: 767px)
{
    .page_disc
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
/* datepicker
-------------------------------------------------------------------------- */
.datepicker
{
    width: 280px !important;
    max-width: 280px;
    margin-right: 25px;
}

@media screen and (max-width: 750px)
{
    .datepicker
    {
        width: 100% !important;
        max-width: 100%;
        margin-right: 0;
    }
}
@media screen and (max-width: 767px)
{
    ul.rway
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-bottom: 20px;

        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
    ul.rway li:first-child
    {
        display: block;

        width: 100%;
    }
    ul.rway li:first-child div
    {
        width: 97%;
        max-width: 100%;
    }
    ul.rway li div
    {
        max-width: 170px;
    }
}
@media screen and (max-width: 767px)
{
    ul.rway2
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        margin-bottom: 20px;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;
    }
    ul.rway2 li
    {
        display: inline-block;
    }
    ul.rway2 li div
    {
        max-width: 120px;
    }
}
/* formbtn
----------------------------------------------------------------- */
.formbtn
{
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.3;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: 20px 40px;

    text-align: center;
    text-decoration: none;

    background: #f8f1e3;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.formbtn .c-link__arrow
{
    font-size: 40px;
    font-size: 4rem;
}

@media screen and (max-width: 767px)
{
    .formbtn
    {
        font-size: 18px;
        font-size: 1.8rem;

        padding: 10px 15px;
    }
}
@media screen and (max-width: 1023px)
{
    .formbtn
    {
        display: inherit;
    }
    .formbtn br
    {
        display: none;
    }
}
.btnArea
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    width: 100%;
    margin-top: 60px;

    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

/* c-contentImage
----------------------------------------------------------------- */
.c-contentImage
{
    display: block;
}
@media screen and (min-width: 768px)
{
    .c-contentImage
    {
        background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(80%, #fff), color-stop(80%, #33c8e7), to(#33c8e7));
        background-image: linear-gradient(180deg, #fff 0%, #fff 80%, #33c8e7 80%, #33c8e7 100%);
    }
}
@media screen and (max-width: 767px)
{
    .c-contentImage
    {
        background-image: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(75%, #fff), color-stop(75%, #33c8e7), to(#33c8e7));
        background-image: linear-gradient(180deg, #fff 0%, #fff 75%, #33c8e7 75%, #33c8e7 100%);
    }
}
.c-contentImage__imageArea
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin: 0 auto;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
}
@media screen and (max-width: 1023px)
{
    .c-contentImage__imageArea
    {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
.c-contentImage__title
{
    font-family: 'Josefin Sans', sans-serif;
    font-size: 30px;
    font-size: 3rem;
    font-weight: 500;

    position: relative;

    display: block;

    margin: 0 auto;
    padding: 10px 0;

    text-align: center;

    color: #fff;
}
@media screen and (max-width: 767px)
{
    .c-contentImage__title
    {
        font-size: 20px;
        font-size: 2rem;
    }
}
.c-contentImage__title.m-mg
{
    margin: -40px auto 0;
}
@media screen and (max-width: 767px)
{
    .c-contentImage__title.m-mg
    {
        margin: -10px auto 0;
    }
}

.c-contentList__item
{
    padding: 20px;

    border: 1px solid #999;
}
@media screen and (min-width: 1280px)
{
    .c-contentList__item
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
    }
}
@media screen and (max-width: 1023px)
{
    .c-contentList__item
    {
        padding: 20px;
    }
}
.c-contentList__content
{
    max-width: 758px;
}
@media screen and (min-width: 1280px)
{
    .c-contentList__content
    {
        padding-right: 20px;
    }
}
@media screen and (max-width: 1479px)
{
    .c-contentList__content
    {
        max-width: 100%;
        margin-bottom: 20px;
    }
}
.c-contentList__title
{
    margin-bottom: 20px;
    padding-bottom: 20px;

    border-bottom: 10px solid #999;
}
@media screen and (min-width: 768px)
{
    .c-contentList__title
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .c-contentList__title h4
    {
        padding-right: 30px;
    }
}
.c-contentList__number
{
    font-family: 'Josefin Sans', sans-serif;
    font-size: 140px;
    line-height: 1;
    line-height: .8em;

    color: #b6d1fb;
}
@media screen and (max-width: 767px)
{
    .c-contentList__number
    {
        font-size: 60px;
        line-height: .7em;

        margin-top: 10px;

        text-align: right;
    }
}
.c-contentList__imageArea
{
    max-width: 400px;
}
@media screen and (max-width: 1479px)
{
    .c-contentList__imageArea
    {
        display: block;

        max-width: 540px;
        margin: 0 auto;
    }
}
.c-contentList__btn
{
    font-size: 20px;
    font-weight: 500;

    display: block;

    margin-top: 10px;
    padding: 10px;

    text-align: center;

    color: #fff;
    border-radius: 5px;
    background: #999;
}

@media screen and (min-width: 1024px)
{
    .c-memberList
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
    }
}
.c-memberList__item
{
    width: 100%;
    padding: 20px;

    border: 1px solid #999;
}
@media screen and (min-width: 1024px)
{
    .c-memberList__item
    {
        width: 48%;
    }
}
.c-memberList__item:nth-child(n+3)
{
    margin-top: 4%;
}
@media screen and (max-width: 1023px)
{
    .c-memberList__item
    {
        padding: 20px;
    }
    .c-memberList__item:nth-child(n+2)
    {
        margin-top: 25px;
    }
}
@media screen and (max-width: 1479px)
{
    .c-memberList__content
    {
        max-width: 100%;
    }
}
.c-memberList__title
{
    margin-bottom: 20px;
}
@media screen and (min-width: 768px)
{
    .c-memberList__title
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
    }
}
.c-memberList__number
{
    font-family: 'Josefin Sans', sans-serif;
    font-size: 140px;
    line-height: 1;
    line-height: .8em;

    color: #b6d1fb;
}
@media screen and (max-width: 767px)
{
    .c-memberList__number
    {
        font-size: 60px;
        line-height: .7em;

        margin-top: 10px;

        text-align: right;
    }
}
.c-memberList__comment .toggle_wrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;

    -webkit-box-align: end;

        -ms-flex-align: end;

            align-items: end;
}
.c-memberList__comment .toggle_btn
{
    font-size: 17px;

    display: block;

    margin-bottom: 10px;
}
.c-memberList__comment .toggle_btn .arrow
{
    display: inline-block;
}
.c-memberList__imageArea
{
    max-width: 400px;
}
@media screen and (max-width: 1479px)
{
    .c-memberList__imageArea
    {
        display: block;

        max-width: 400px;
        margin: 0 auto;
    }
}
.c-memberList__label
{
    font-size: 20px;
    font-weight: 500;

    display: block;

    margin-bottom: 20px;
    padding: 10px;

    text-align: center;

    color: #fff;
    border-radius: 5px;
    background: #999;
}

/* youtube
----------------------------------------------------------------- */
.youtube
{
    position: relative;
}
.youtube::before
{
    display: block;

    padding-top: 56.25%;

    content: '';
}
.youtube iframe
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}
.youtube p
{
    position: absolute;
}
.youtube__text
{
    margin-top: 10px;
}

/* btnArea
----------------------------------------------------------------- */
.btnArea
{
    width: 100%;
}
@media screen and (min-width: 1024px)
{
    .btnArea
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: center;

            -ms-flex-pack: center;

                justify-content: center;
    }
}
.btnArea__item
{
    position: relative;

    display: block;

    -webkit-transition: all .3s ease 0s;

    transition: all .3s ease 0s;
}
@media screen and (max-width: 1023px)
{
    .btnArea__item
    {
        width: 540px;
        margin: 0 auto;
    }
    .btnArea__item:nth-child(1)
    {
        margin: 0 auto 30px;
    }
}
@media screen and (max-width: 767px)
{
    .btnArea__item
    {
        width: 100%;
    }
}
@media screen and (min-width: 1024px)
{
    .btnArea__item
    {
        width: 1000px;
    }
}
.btnArea__item .btn
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    padding: 20px;

    border-right: 1px solid #999;
    border-bottom: 1px solid #999;
    background: #fff;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
}
@media screen and (min-width: 768px)
{
    .btnArea__item .btn
    {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}
@media screen and (max-width: 767px)
{
    .btnArea__item .btn
    {
        padding: 10px;

        -ms-flex-wrap: wrap;

            flex-wrap: wrap;
    }
}
.btnArea__item:hover .btn
{
    border-right: 1px solid #3b83f3;
    border-bottom: 1px solid #3b83f3;
}
.btnArea__item .title
{
    color: #000;
}
@media screen and (max-width: 767px)
{
    .btnArea__item .title
    {
        font-size: 30px;
        font-weight: 500;
        line-height: 1.3;

        margin-top: 5px;
        margin-left: 10px;
    }
}
.btnArea__textArea
{
    line-height: 1.6;

    padding-left: 30px;
}
@media screen and (max-width: 767px)
{
    .btnArea__textArea
    {
        padding-left: 20px;
    }
}
.btnArea__textArea .en
{
    font-family: 'Josefin Sans', sans-serif;
    font-size: 17px;

    margin-bottom: 5px;

    letter-spacing: .25em;

    color: #00c8e7;
}
@media screen and (max-width: 767px)
{
    .btnArea__textArea .en
    {
        font-size: 18px;

        margin-bottom: 5px;

        letter-spacing: .15em;
    }
}
.btnArea__textArea .title
{
    font-size: 40px;
    font-weight: 500;
    line-height: 1.3;

    color: #000;
}
@media screen and (max-width: 767px)
{
    .btnArea__textArea .title
    {
        font-size: 24px;
    }
}
.btnArea__text
{
    font-size: 17px;
    font-weight: 300;
    line-height: 1.6;

    width: 100%;
    margin-top: 15px;
}
@media screen and (min-width: 768px)
{
    .btnArea__text
    {
        text-align: center;
    }
}
.btnArea__image
{
    max-width: 180px;
}
.btnArea__image.min
{
    padding: 0 15px;
}
@media screen and (max-width: 767px)
{
    .btnArea__image.min
    {
        padding: 0;
    }
}
@media screen and (max-width: 767px)
{
    .btnArea__image
    {
        max-width: 40%;
    }
}
@media screen and (min-width: 768px)
{
    .request-r
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}
.request-r .imageArea
{
    aspect-ratio: 4/3;
}
@media screen and (min-width: 768px)
{
    .request-r .imageArea
    {
        width: 15%;
        margin-right: 20px;
    }
}
@media screen and (max-width: 1023px)
{
    .request-r .imageArea
    {
        width: 30%;
    }
}
@media screen and (max-width: 767px)
{
    .request-r .imageArea
    {
        width: 66.6%;
    }
}
.request-r .textArea
{
    width: 90%;
}
@media screen and (max-width: 1023px)
{
    .request-r .textArea
    {
        width: 70%;
    }
}
@media screen and (max-width: 767px)
{
    .request-r .textArea
    {
        width: 100%;
    }
}
.request-r .textArea span
{
    display: inline-block;

    padding-right: 20px;
}
.request-r .textArea span:nth-child(3)
{
    width: 100%;
}
@media screen and (max-width: 1023px)
{
    .request-r .textArea span
    {
        display: block;

        width: 100%;
    }
}

.p-title
{
    font-weight: 400;
    line-height: 1;

    margin-bottom: 15px;
    padding-left: 15px;

    border-left: 5px solid #1729ac;
}
@media screen and (max-width: 767px)
{
    .p-title
    {
        font-size: 5.7291666667vw;
    }
}
@media screen and (min-width: 1480px)
{
    .p-title
    {
        font-size: 24px;
        font-size: 2.4rem;
    }
}
@media screen and (max-width: 1479px) and (min-width: 1280px)
{
    .p-title
    {
        font-size: 1.3953488372vw;
    }
}
@media screen and (max-width: 1279px) and (min-width: 1024px)
{
    .p-title
    {
        font-size: 1.6216216216vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .p-title
    {
        font-size: 2.9268292683vw;
    }
}

.list-d
{
    margin-top: 10px;
    padding-left: 1.5em;

    list-style-type: disc;
}
.list-d li::marker
{
    font-size: 1.1em;

    color: #1729ac;
}

@media screen and (min-width: 1024px)
{
    .addArea
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}
.addArea .title
{
    width: 150px;
}
.addArea .contents
{
    margin-bottom: 5px;

    -webkit-box-flex: 1;

        -ms-flex: 1;

            flex: 1;
}
.addArea .contents input
{
    margin-left: 0 !important;
}

.p-thanks__wrap
{
    padding-top: 30px;
    padding-bottom: 30px;

    border-top: 1px solid #1729ac;
    border-bottom: 1px solid #1729ac;
}
.p-thanks__logo
{
    width: 8vw;
    margin: 0 auto;
}
@media screen and (max-width: 1023px)
{
    .p-thanks__logo
    {
        width: 16vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-thanks__logo
    {
        width: 24vw;
    }
}
.p-thanks__btnWrap
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin: 0 auto;

    -webkit-box-pack: center;

        -ms-flex-pack: center;

            justify-content: center;
}
@media screen and (min-width: 1024px)
{
    .p-thanks__btnWrap
    {
        width: 80%;
    }
}
@media screen and (max-width: 1023px)
{
    .p-thanks__btnWrap
    {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;

        width: 100%;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
    .p-thanks__btnWrap .p-thanks__btn:nth-child(2)
    {
        margin-top: 30px;
    }
}
.p-thanks__btnWrap .p-thanks__btn
{
    margin: 0;
}
@media screen and (min-width: 1024px)
{
    .p-thanks__btnWrap .p-thanks__btn:nth-child(2)
    {
        margin-left: 40px;
    }
}
.p-thanks__btn
{
    font-weight: 500;
    line-height: 1;

    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    margin: 0 auto;
    padding: 20px 30px 22px;

    cursor: pointer;
    -webkit-transition: .3s ease;
    transition: .3s ease;
    text-align: center;
    text-decoration: none;

    color: #fff;
    border: solid 1px #1729ac;
    outline: none;
    background: #1729ac;

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}
@media screen and (min-width: 1024px)
{
    .p-thanks__btn
    {
        width: 450px;
    }
}
@media screen and (min-width: 1024px) and (min-width: 1480px)
{
    .p-thanks__btn
    {
        font-size: 35px;
        font-size: 3.5rem;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-thanks__btn
    {
        font-size: 2.0348837209vw;
    }
}
@media screen and (min-width: 1024px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-thanks__btn
    {
        font-size: 2.3648648649vw;
    }
}
@media screen and (max-width: 1023px)
{
    .p-thanks__btn
    {
        width: 450px;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-thanks__btn
    {
        font-size: 3.6585365854vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1479px) and (min-width: 1280px)
{
    .p-thanks__btn
    {
        width: 26.1627906977vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1279px) and (min-width: 1024px)
{
    .p-thanks__btn
    {
        width: 30.4054054054vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 1023px) and (min-width: 768px)
{
    .p-thanks__btn
    {
        width: 48.33984375vw;
    }
}
@media screen and (max-width: 1023px) and (max-width: 767px)
{
    .p-thanks__btn
    {
        width: 58.59375vw;
    }
}
@media screen and (max-width: 767px)
{
    .p-thanks__btn
    {
        line-height: 1.3;

        width: 100%;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .p-thanks__btn
    {
        font-size: 6.5104166667vw;
    }
}
.p-thanks__btn a
{
    color: #fff;
}
.p-thanks__btn:hover
{
    opacity: 1;
    color: #1729ac;
    background: #fff;
}
.p-thanks__btn:hover a
{
    color: #1729ac;
}
.p-thanks__btn.color
{
    color: #1729ac;
    background: #fff;
}
.p-thanks__btn.color a
{
    color: #1729ac;
}
.p-thanks__btn.color:hover
{
    opacity: 1;
    color: #fff;
    background: #1729ac;
}
.p-thanks__btn.color:hover a
{
    color: #fff;
}
.p-thanks__btn.arrow
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
.p-thanks__btn.arrow:after
{
    width: .5em;
    height: .5em;
    margin-top: 3px;
    margin-left: 1em;

    content: '';
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);

    border: 0;
    border-top: solid 4px #fff;
    border-right: solid 4px #fff;
}
@media screen and (max-width: 767px)
{
    .p-thanks__btn.arrow:after
    {
        width: .75em;
        height: .75em;
        margin-left: .75em;

        border-top: solid 2px #fff;
        border-right: solid 2px #fff;
    }
}

.color
{
    color: #1729ac;
}

.pass-re
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin: 10px auto;

    -webkit-box-pack: end;

        -ms-flex-pack: end;

            justify-content: flex-end;
}
@media screen and (min-width: 1024px)
{
    .pass-re
    {
        width: 76%;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px)
{
    .pass-re
    {
        width: 440px;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px) and (max-width: 1479px) and (min-width: 1280px)
{
    .pass-re
    {
        width: 25.5813953488vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px) and (max-width: 1279px) and (min-width: 1024px)
{
    .pass-re
    {
        width: 29.7297297297vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px) and (max-width: 1023px) and (min-width: 768px)
{
    .pass-re
    {
        width: 47.265625vw;
    }
}
@media screen and (max-width: 1023px) and (min-width: 768px) and (max-width: 767px)
{
    .pass-re
    {
        width: 57.2916666667vw;
    }
}
.pass-re a span
{
    color: #1729ac;
}
