@charset "utf-8";
/*--------------------------------------------------------------------------------
*
*   registration_pc.css
*
--------------------------------------------------------------------------------*/
body, html{
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}

.ff_b{ font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif !important; font-weight: bold !important;}
.ff_h{ font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif !important; font-weight: bold !important;}

/* --------------------------------------------------------------------------------
*
    min-width: 641px
*
-------------------------------------------------------------------------------- */
@media screen and (min-width: 641px) {

#page_registration .topic_path{
    letter-spacing: -.40em;
    text-align: center;
    overflow: hidden;
}

.regist_step_01 .topic_path,
.regist_step_04 .topic_path{
    margin: 0 0 50px 0;
}

.regist_step_02 .topic_path,
.regist_step_03 .topic_path{
    margin: 0 0 80px 0;
}

#page_registration .topic_path ul{
    display: inline-block;
    border: 2px solid #023e21;
    border-radius: 5px;
    overflow: hidden;
}

#page_registration .topic_path li{
    width: 160px;
    height: 33px;
    line-height: 33px;
    border-right: 2px solid #023e21;
    font-size: 13px;
    text-align: center;
    display: inline-block;
    letter-spacing: 0;
    position: relative;
}

#page_registration .topic_path li.current{
    background-color: #023e21;
    color: #fff;
}

#page_registration .topic_path li:before{
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20.5px 0 20.5px 14px;
    border-color: transparent transparent transparent #023e21;
    position: absolute;
    top: -4px;
    right: -14px;
}

#page_registration .topic_path li:after{
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20.5px 0 20.5px 14px;
    border-color: transparent transparent transparent #fff;
    position: absolute;
    top: -4px;
    right: -12px;
    z-index: 2;
}

#page_registration .topic_path li:last-child{ border: none;}
#page_registration .topic_path li:last-child:after,
#page_registration .topic_path li:last-child:before{ display: none;}

#page_registration .topic_path li.current:after{ display: none;}



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

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

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

.check_policy{
    text-align: center;
}

.check_policy .privacy_policy{
    width: 100%;
    max-width: 560px;
    margin: 70px auto 20px auto;
    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: 80px 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 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: 64px;
    margin: 0 5px 0 0;
    display: inline-block;
}

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

.regist_payment .btn_next{
    margin-top: 40px;
}

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

.regist_payment .caution{
    margin: -40px 0 75px 0;
    padding: 0 245px;
    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 205px 30px 205px;
}

.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: 14px;
}

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

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



}/* min-width: 641px */
