@charset "utf-8";
/*--------------------------------------------------------------------------------
*
*   registration_sp.css
*
--------------------------------------------------------------------------------*/
/* --------------------------------------------------------------------------------
*
    max-width: 640px
*
-------------------------------------------------------------------------------- */
@media screen and (max-width: 640px) {

/* ----------------------------------------
*
    .regist_desc
*
---------------------------------------- */
.regist_desc{
    padding: 0 0 0 0;
}

.regist_desc h3{
    font-size: 15px;
    margin: 0 0 .5em 0;
    line-height: 2em;
}

.regist_desc p{
    font-size: 13px;
    margin: 0 0 2em 0;
    line-height: 2em;
}

.check_policy{
    text-align: center;
}

.check_policy .privacy_policy{
    width: 100%;
    margin: 40px auto 20px auto;
    box-sizing: border-box;
    padding: 15px;
    height: 200px;
    border: 1px solid #888;
    font-size: 13px;
    background-color: #fff;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

.check_policy .privacy_policy h3{
    margin: 0 0 2em 0;
    text-align: center;
    line-height: 2em;
}

.check_policy .privacy_policy p{
    text-align: left;
    margin: 0 0 2em;
    line-height: 2em;
}

.check_policy .check_label{
    margin: 0 0 40px 0;
}

.check_policy .check_label label{
    cursor: pointer;
}

.check_policy .check_label input{
    margin: 0 5px 0 0;
    width: 15px;
    height: 15px;
    cursor: pointer;
}

.btn_next{
    width: 260px;
    margin: 40px auto;
}

.btn_next a{
    width: 260px;
    height: 50px;
    line-height: 50px;
    display: block;
    background-color: #023e21;
    border-radius: 5px;
    color: #fff;
    font-size: 14px;
    text-align: center;
    cursor: pointer;
    transition: opacity .1s ease .0s, background .15s ease;
}

.btn_next.dis a{
    background-color: #888;
    opacity: 1 !important;
    cursor: default;
}

.is_pc .btn_next a:hover,
.is_sp .btn_next a.touch{
    opacity: .8;
    transition: opacity .15s ease .0s;
}


/* ----------------------------------------
*
    .regist_user
*
---------------------------------------- */
.regist_user{
    text-align: left;
    margin: 0 auto;
}

.regist_user dl{
    width: 260px;
    margin: 0 auto;
}

.regist_user dt{
    margin: 0 0 5px 0;
    font-size: 13px;
}

.regist_user dd{
    margin: 0 0 30px 0;
    position: relative;
}

.regist_user .notes{
    margin: 5px 0 0 0;
    display: block;
    font-size: 12px;
    color: #888;
}

.regist_user input{
    width: 260px;
    height: 35px;
    padding: 0 15px;
    box-sizing: border-box;
    font-size: 16px;
    border: 1px solid #aaa;
    background-color: #fff;
    border-radius: 5px;
    transition: border .1s ease .0s;
}

.regist_user input:hover,
.regist_user input:focus{
    border: 1px solid #023e21;
    transition: border .15s ease .05s;
}

.regist_user .error_mes{
    margin: -60px 0 75px 0;
    text-align: center;
    font-size: 12px;
    line-height: 1.6em;
    color: rgba(236, 90, 12, 1);
}

/*
    validate
*/
span.wpcf7-form-control-wrap{
    position: relative;
}

.formError{
    margin: 0 !important;
    display: none !important;
    color: transparent !important;
    top: inherit !important;
    bottom: -28px !important;
    left: 0 !important;
    transform: inherit !important;
    z-index: 2;
}

.regist_emailformError,
.regist_pw_checkformError{
    color: #fff !important;
    display: block !important;
    padding: 5px 10px;
    background-color: rgba(236, 90, 12, .9);
    font-size: 11px !important;
    line-height: 1.6em;
    transition: opacity .15s ease .05s !important;
}

.formErrorContent br{ display: none !important;}


/* ----------------------------------------
*
    .regist_payment
*
---------------------------------------- */
.regist_payment{
    text-align: left;
}

.regist_payment dl{
    width: 240px;
    margin: 0 auto;
}

.regist_payment dt{
    margin: 0 0 5px 0;
    padding: 0 20px 0 0;
    font-size: 13px;
    white-space: nowrap;
}

.regist_payment dd{
    display: inline-block;
    padding: 0 0 20px 0;
    font-size: 13px;
}

.regist_payment .btn_next{
    margin-top: 20px;
}
    
.regist_payment input{
    width: 240px;
    height: 35px;
    padding: 0 15px;
    box-sizing: border-box;
    font-size: 16px;
    border: 1px solid #aaa;
    background-color: #fff;
    border-radius: 5px;
    transition: border .1s ease .0s;
}

.regist_payment input.wh{
    width: 80px;
}

.regist_payment input.wh{
    width: 60px;
    margin: 0 5px 0 0;
}

.regist_payment input:hover,
.regist_payment input:focus{
    border: 1px solid #023e21;
    transition: border .15s ease .05s;
}

.regist_payment .error_mes{
    margin: -20px 0 40px 0;
    text-align: center;
    font-size: 12px;
    line-height: 1.6em;
    color: rgba(236, 90, 12, 1);
}

.regist_payment .caution{
    margin: 0 0 40px 0;
    padding: 0;
    font-size: 13px;
}

.regist_payment .caution p{
    margin: 0 0 2em 0;
    line-height: 2em;
    font-size: 13px;
    text-indent: -1em;
    padding-left: 1em;
}


/* ----------------------------------------
*
    .regist_desc
*
---------------------------------------- */
.regist_complete{
    padding: 0;
}

.regist_complete h3{
    margin: 0 0 .5em 0;
    line-height: 2em;
}

.regist_complete p{
    margin: 0 0 2em 0;
    line-height: 2em;
}

.regist_complete .to_page{
    margin: 40px 0;
    text-align: center;
    font-size: 13px;
}

.regist_complete .to_page p{
    margin: 0 0 10px 0;
}

.regist_complete .to_page .btn_next{
    display: inline-block;
}



}/* max-width: 640px */
