@charset "UTF-8";
/*
body {
    padding-top: 80px;
}
.headerInner {
    height: 80px;
}
*/
#regist {
    padding: 40px 0 100px;
    background: #F3F6F5;
}
.c-mainMv-ttl {
    font-size: 32px;
    font-weight: 700;
    font-variation-settings: "wght" 700;
    text-align: left;
    line-height: 1;
}
.c-cont:last-child {
    padding: 20px 0 0 0;
}
.c-cont.is-ajt {
    padding: 60px 0 0 0;
}
.c-cont.is-ajt2 {
    padding: 0;
}

.c-txt.is-ajt {
    font-size: 16px;
    line-height: 2;
    text-align: center;
    margin-bottom: 30px;
}
.c-txt.is-ajt2 {
    font-size: 18px;
    line-height: 1.8;
    text-align: center;
    margin-bottom: 15px;
}
.c-txt.is-ajt3 {
    font-size: 18px;
    line-height: 1.8;
    text-align: center;
    margin-bottom: 40px;
}
.c-txt.is-ajt4 {
    font-size: 16px;
    text-align: center;
}

.c-txt.is-s {
    font-size: 14px;
    line-height: 2;
    margin: 0 0 40px 0;
}
.c-txt.is-s2 {
    font-size: 14px;
    line-height: 2;
    text-align: center;
    margin-bottom: 40px;
}
.c-txt.is-s a {
    text-decoration: underline;
    text-underline-offset: 4px;
}

/*会員登録*/
.c-title_wrap {
    margin-bottom: 30px;
}
.c-title-ttl {
    font-size: 18px;
    font-weight: 700;
    font-variation-settings: "wght" 700;
    line-height: 1.6;
    box-sizing: border-box;
    padding-left: 24px;
    background: url(../svg/icn_plus.svg) no-repeat left top 7px;
}
.regist_ttl {
    margin: 0 0 30px 0;
}
.regist-ttl {
    line-height: 1;
    font-size: 28px;
    font-weight: 700;
    font-variation-settings: "wght" 700;
}
.regist_in {
    overflow: hidden;
    padding: 20px 0 40px 0;
}
.regist_inner.is-move {
    transition-property: all;
    transition: 0.6s linear;
}
.regist_wrap.is-load .regist_inner {
    width: 99999px;
}
.regist_wrap.is-load .registForm {
    float: left;
    display: block;
}
.registForm {
    display: none;
}
.registForm:first-child {
    display: block;
}
.registForm_wrap {
    width: 580px;
    margin: 0 auto;
}
.registForm_wrap.is-hide {
    display: none;
}
.registForm_wrap.is-mb {
    margin-bottom: 30px;
}
.registForm_in {
    padding: 40px;
    background: #ffffff;
    border-radius: 16px;
    margin: 0 0 20px 0;
}
.registForm_in:last-child {
    margin: 0 0 0 0;
}
.regist-txt {
    line-height: 1.6;
    text-align: left;
}
.registForm_flt {
    margin: 30px 0 0 0;
}
.registForm_flt:first-child {
    margin: 0 0 0 0;
}
.registForm_det {
    margin-bottom: 50px;
}
.registForm_det:last-child {
    margin-bottom: 0;
}
.registForm_det dl {
    width: 100%;
    margin: 30px 0 0 0;
}
.registForm_det dl:first-child {
    margin: 0 0 0 0;
}
.registForm_det .registForm_flt dl {
    width: 240px;
    float: left;
    margin: 0 0 0 0;
}
.registForm_det .registForm_flt dl:nth-child(2n) {
    float: right;
    margin: 0 0 0 0;
}
.registForm_det dl dt {
    font-size: 16px;
    line-height: 1;
    margin: 0 0 15px 0;
    text-align: left;
}
.registForm_det dl dd{
    text-align: left;
}
.registForm_det input {
    height: 56px;
    background: #F3F6F5;
    font-size: 16px;
    line-height: 1.6;
    padding: 0 20px;
    border-radius: 8px;
    border: none;
    box-shadow: none;
    box-sizing: border-box;
}
.registForm_det input[type=checkbox] + label {
    position: relative;
    padding-left: 34px;
    margin-right: 40px;
    font-size: 16px;
    line-height: 1.6;
    cursor: pointer;
}
.registForm_det input[type=checkbox] + label::before {
    position: absolute;
    content: "";
    background: #fff;
    width: 24px;
    height: 24px;
    border: solid 1px #222;
    left: 0;
    border-radius: 4px;
    box-sizing: border-box;
    top: 50%;
    margin-top: -12px;
}
.registForm_det input[type=checkbox]:checked + label::before {
    background: #222;
}
.registForm_det input[type=checkbox]:checked + label::after {
    position: absolute;
    content: "";
    display: block;
    top: 50%;
    left: 7px;
    width: 7px;
    height: 12px;
    margin: -10px 0 0 0;
    -webkit-transform: rotate(40deg);
    -moz-transform: rotate(40deg);
    -ms-transform: rotate(40deg);
    transform: rotate(40deg);
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
}
.registForm_det.is-regist input[type=checkbox] + label {
    padding-left: 39px;
    margin-right: 0;
    font-size: 14px;
}
.registForm_det select{
    border: none;
    background: #F3F6F5 url(../svg/arw_down_blk.svg) no-repeat right 20px center;
    background-size: 14px auto;
    border-radius: 8px;
    font-size: 16px;
    line-height: 1.6;
    height: 56px;
    box-sizing: border-box;
    padding: 0 20px;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    color: #000;
    box-shadow: none;
}
.registForm_det select.is-w1{
    width: 30%;
}
.registForm_det select.is-w2{
    width: 15%;
}
.regist-error {
    padding: 20px 0 0 0;
    color: #E82C64;
    display: block;
}
.regist-errortxt {
    color: #E82C64;
    text-align: left;
    margin-top: 5px;
    display: none;
}
.registForm-txt {
    text-align: center;
    padding: 30px 0 0 0;
}
.registForm-txtb {
    text-align: center;
    font-size: 18px;
    font-weight: 700;
    font-variation-settings: "wght" 700;
    line-height: 2;
    margin: 0 0 20px 0;
}
.registForm_btn {
    padding: 30px 0 0 0;
}
.registForm-btn {
    width: 240px;
    height: auto;
    margin: 0 auto;
}
.registForm-btn.is-repw {
    width: 310px;
}
.registForm-btn.b_btn a {
    height: 52px;
}
.registForm_det.is-regist .registForm-btn,
.registForm_btn.is-regist .registForm-btn {
    width: 100%;
}
.registForm_det.is-regist .registForm-btn a,
.registForm_btn.is-regist .registForm-btn a {
    height: 72px;
}
.registForm_app {
    padding: 40px 0 0 0;
}
.registForm-lnk {
    text-align: center;
    line-height: 1;
}
.registForm-lnk a {
    font-size: 14px;
    font-weight: 700;
    font-variation-settings: "wght" 700;
    line-height: 1;
    color: #1C4A40;
    position: relative;
}
.registForm-lnk .is-icn {
    padding-right: 40px;
    position: relative;
    display: inline-block;
}
.registForm-lnk .is-arw {
    display: block;
    width: 30px;
    height: 30px;
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -15px;
    z-index: 1;
}
.registForm-lnk .is-arw:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: #1C4A40;
    border-radius: 50%;
    z-index: 1;
    transition: all .2s ease-out;
}
.registForm-lnk .is-arw:after {
    content: '';
    display: block;
    width: 14px;
    height: 14px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    background: url(/cmn5/svg/icn_arw_r.svg) no-repeat center / 100% auto;
    transition: all .2s ease-out;
}
.registForm_list ul li .formList-lnk a {
    border-bottom: 1px solid #fff;
    display: block;
    background: #F3F6F5;
    padding: 12px 20px;
    text-decoration: none;
}
.registForm_list ul li .formList-lnk a.is-on {
    color: #fff;
    background: #1C4A40;
}
.registForm_list ul li:first-child .formList-lnk a {
    border-radius: 8px 8px 0 0;
}
.registForm_list ul li:last-child .formList-lnk a {
    border-radius: 0 0 8px 8px;
}
.registForm_list.js-jobtype ul li .formPld_wrap .formList-lnk a {
    padding: 10px 40px 10px 40px;
}
.registForm_list ul li .formList-lnk a .is-arw {
    display: block;
    position: relative;
    font-size: 16px;
}
.registForm_list ul li .formList-lnk a .is-arw:before,
.formPld-lnk.is-click a .is-arw:before {
    content: '';
    display: block;
    width: 4px;
    height: 8px;
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    background: url(../svg/arw_r.svg) no-repeat center;
    background-size: auto 100%;
    transition: opacity .4s ease-out,all .4s ease-out;
}
.registForm_list ul li .formList-lnk a.is-on .is-arw:before {
    background: url(../svg/arw_r_wh.svg) no-repeat center;
}
.formPld_wrap {
    display: none;
}
.registForm_list ul li .formPld_wrap .formList-lnk a {
    padding: 10px 10px 10px 40px;
    border-top: 0;
    font-weight: normal;
}
.registForm_list ul li:first-child .formPld_wrap .formList-lnk a {
    border-top: 0;
    border-radius: 0 0 0 0;
    -ms-border-radius: 0 0 0 0;
    -moz-border-radius: 0 0 0 0;
    -webkit-border-radius: 0 0 0 0;
}
.registForm_list ul li:last-child .formPld_wrap .formList-lnk a {
    border-radius: 0 0 0 0;
    -ms-border-radius: 0 0 0 0;
    -moz-border-radius: 0 0 0 0;
    -webkit-border-radius: 0 0 0 0;
}
.formPld-lnk a {
    border-right: 1px solid #fff;
    border-left: 1px solid #fff;
    border-bottom: 1px solid #fff;
    display: block;
    padding: 10px 10px 10px 20px;
    background: #F3F6F5 url(../svg/arw_d.svg) no-repeat right 15px center;
    background-size: 11px auto;
    color: #222;
    font-weight: 700;
    font-variation-settings: "wght" 700;
    font-size: 14px;
    text-align: left;
    transition: none;
    text-decoration: none;
}
.formPld-lnk a:hover,
.formPld-lnk a.on {
    color: #fff;
    background: #1C4A40 url(../svg/arw_d_wh.svg) no-repeat right 15px center;
    background-size: 11px auto;
    border: none;
    border-bottom: 1px solid #fff;
}
.formPld-lnk.is-click a {
    background: #ffffff;
}
.formPld-lnk.is-click a:hover {
    background: #3C3A38;
}
.formPld-lnk.is-click a .is-arw {
    display: block;
    position: relative;
}
.registForm_list ul li:first-child .formPld-lnk a {
    border-radius: 8px 8px 0 0;
}
.registForm_list ul li:last-child .formPld-lnk a {
    border-radius: 0 0 8px 8px;
}
.registForm_list ul li:last-child .formPld-lnk a.on {
    border-radius: 0 0 0 0;
}

.registForm_list.js-jobtype ul li .formPld_wrap .formList-lnk a.on {
    background: #f7fff6;
}
.registForm-txt a {
    text-decoration: underline;
    color: #1C4A40;
}
.registForm-txt a:hover {
    text-decoration: none;
}
.registForm_end {
    padding: 20px;
}
.registForm_end_tx {
    font-size: 16px;
    font-weight: 700;
    font-variation-settings: "wght" 700;
    margin: 0 0 20px 0;
}
.registForm_end_txbx {
    margin: 0 0 30px 0;
}
.poppt_in {
    display: inline;
    margin: 0 10px 0 0;
}
.poppt_in select {
    margin:  0 10px 0 0;
}
.error {
    font-size: 16px;
    color: #ff0000;
    padding: 10px 0 0 0;
}
.cnfbtn {
    display: flex;
    justify-content: center;
}
.kome {
    font-size: 14px;
    margin: 10px 0 0 0;
}
.registCan_wrap {
    margin: 80px auto 0 auto;
}
.registCan_in {
    background: #fff;
    padding: 40px;
    border-radius: 16px;
}
.registCan_lst {
    margin: 30px 0 0 0;
}
.registCan_lst li {
    margin: 0 0 30px 0;
}
.registCan_lst li:last-child {
    margin: 0;
}
.registCan-ttl {
    font-size: 16px;
    line-height: 1.6;
    font-weight: 700;
    font-variation-settings: "wght" 700;
    margin: 0 0 10px 0;
    padding: 0 0 0 50px;
    position: relative;
}
.registCan-ttl::before {
    content: '';
    position: absolute;
    top: 0;
    left: 36px;
    width: 1px;
    height: 100%;
    background: #E6E6E6;
}
.registCan-txt {
    font-size: 14px;
    line-height: 2;
}
.registCan-num {
    position: absolute;
    left: 0;
    font-size: 18px;
    font-weight: 700;
    font-variation-settings: "wght" 700;
    line-height: 1.6;
    color: #1C4A40;
}
.registForm_det select {
    width: 100%;
}
.formSelect_lst li a {
    border-bottom: 1px solid #fff;
    display: block;
    background: #F3F6F5;
    padding: 12px 20px;
    text-decoration: none;
}
.formSelect_lst li a .is-arw {
    display: block;
    position: relative;
    font-size: 16px;
}
.formSelect_lst li a .is-arw:before {
    content: '';
    display: block;
    width: 4px;
    height: 8px;
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    background: url(../svg/arw_r.svg) no-repeat center;
    background-size: auto 100%;
    transition: opacity .4s ease-out, all .4s ease-out;
}
.registForm_reserveBox {
    margin-bottom: 30px;
}
.registForm_reserveBox:last-child {
    margin-bottom: 0;
}
.registForm_reserveTtl {
    font-size: 16px;
    margin-bottom: 10px;
}
.registForm_reserve {
    margin-bottom: 15px;
}
.registForm_reserve:last-child {
    margin-bottom: 0;
}
.regist_back {
    margin-top: 40px;
    text-align: center;
}
.registback-link a {
    position: relative;
    font-size: 16px;
    line-height: 1.6;
    color: #222;
    font-weight: 700;
    font-variation-settings: "wght" 700;
    text-decoration: none;
    padding-left: 30px;
}
.registback-link a:before {
    background: #1C4A40;
    content: '';
    width: -webkit-calc(100% - 30px);
    width: calc(100% - 30px);
    height: 1px;
    position: absolute;
    left: 30px;
    bottom: -4px;
    margin: auto;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform .2s;
}
.registback-link a span.is-arw {
    display: block;
    width: 20px;
    height: 20px;
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -10px;
    z-index: 1;
}
.registback-link a span.is-arw:before {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    background: url(/cmn5/svg/icn_arw_l.svg) no-repeat center / 100% auto;
}
.registback-link a span.is-arw:after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: #1C4A40;
    z-index: 1;
    border-radius: 50%;
    transition: all .2s ease-out;
}
@media only screen and (max-width:1024px) {
    .footerLnk .copyright {
        margin-top: 0;
    }
}
@media only screen and (min-width:767px) {
    /*
    .footerMarkBox {
        margin: 0 25px;
    }
    .footerMark,
    .footerLnkIn {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    */
    .c-txt.is-s a:hover {
        text-decoration: none;
    }
    .registForm_list ul li .formList-lnk a:hover,
    .formSelect_lst li a:hover {
        color: #fff;
        background: #1C4A40;
    }
    .registForm_list ul li .formList-lnk a:hover .is-arw:before,
    .formPld-lnk.is-click a:hover .is-arw:before,
    .formSelect_lst li a:hover .is-arw:before {
        background: url(../svg/arw_r_wh.svg) no-repeat center;
    }
    .registForm-lnk a:hover {
        background: #fff;
    }
    .registForm-lnk a:hover .is-arw:before {
        transform: scale(1.13, 1.13);
    }
    .registForm-lnk .is-icn:before {
        background: #1C4A40;
        content: '';
        width: -webkit-calc(100% - 40px);
        width: calc(100% - 40px);
        height: 2px;
        position: absolute;
        left: 0;
        bottom: -6px;
        margin: auto;
        transform-origin: right top;
        transform: scale(0, 1);
        transition: transform .2s;
    }
    .registForm-lnk a:hover .is-icn:before {
        transform-origin: left top;
        transform: scale(1, 1);
    }
    .regist-errortxt.is-ver2 {
        text-align: center;
    }
    .registback-link a:hover:before {
        transform-origin: left top;
        transform: scale(1, 1);
    }
}
@media (max-width: 767px) {
    body {
        padding-top: 65px;
    }
    .headerInner {
        height: 65px;
    }
    #regist {
        padding: 20px 0 60px;
    }
    .c-mainMv_wrap {
        padding: 0 20px;
    }
    .c-mainMv-ttl {
        font-size: 18px;
        line-height: 1.6;
    }
    .c-cont:last-child {
        padding: 0 0 0 0;
    }
    .c-cont.is-ajt {
        padding: 0 20px 20px 20px;
    }
    .c-cont.is-ajt {
        padding: 50px 20px 0 20px;
    }
    .c-cont.is-ajt3 {
        padding: 0;
    }
    .c-txt.is-ajt {
        font-size: 14px;
        letter-spacing: -0.01em;
        margin-bottom: 0;
    }
    .c-txt.is-ajt2,
    .c-txt.is-ajt3 {
        font-size: 16px;
        letter-spacing: -0.01em;
        text-align: left;
        margin-bottom: 20px;
    }
    .c-txt.is-ajt4 {
        font-size: 12px;
        letter-spacing: -0.01em;
        text-align: left;
    }
    .c-txt.is-s {
        margin-bottom: 20px;
    }
    .c-txt.is-s2 {
        text-align: left;
        margin-bottom: 20px;
    }
    /*会員登録*/
    .c-title_wrap {
        margin-bottom: 20px;
    }
    .c-title-ttl {
        font-size: 16px;
    }
    .regist_ttl {
        margin: 0 0 25px 0;
    }
    .regist-ttl {
        font-size: 23px;
        line-height: 1.2;
    }
    .registForm_wrap {
        width: auto;
        margin: 0 20px;
    }
    .registForm_in {
        padding: 30px 20px;
        margin: 0 0 20px 0;
    }
    .registForm-ttl {
        font-size: 18px;
        line-height: 1.2;
    }
    .registForm_flt {
        margin: 20px 0 0 0;
    }
    .registForm_det {
        margin-bottom: 30px;
    }
    .registForm_det dl {
        margin: 20px 0 0 0;
    }
    .registForm_det dl dt {
        font-size: 14px;
        margin: 0 0 10px 0;
    }
    .registForm_det .registForm_flt dl {
        width: 48%;
    }
    .registForm_list ul li .formList-lnk a {
        font-size: 14px;
    }
    .registForm_list ul li .formList-lnk a .is-arw:before,
    .formPld-lnk.is-click a .is-arw:before {
        right: 0;
    }
    .registForm_det input {
        height: 52px;
        padding: 0 15px;
        font-size: 14px;
        border-radius: 8px;
    }
    .registForm_det input[type=checkbox] + label {
        padding-left: 30px;
        margin-right: 30px;
        font-size: 14px;
        line-height: 1.6;
    }
    .registForm_det input[type=checkbox] + label::before {
        width: 20px;
        height: 20px;
        margin-top: -10px;
    }
    .registForm_det input[type=checkbox]:checked + label::after {
        left: 6px;
        width: 6px;
        height: 10px;
        margin: -8px 0 0 0;
        border-bottom: 2px solid #fff;
        border-right: 2px solid #fff;
    }
    .registForm_det.is-regist input[type=checkbox] + label {
        display: block;
        width: 100%;
        max-width: 255px;
        margin: 0 auto;
        text-align: left;
        font-size: 14px;
        line-height: 2;
    }
    .registForm_det.is-regist input[type=checkbox] + label::before {
        width: 24px;
        height: 24px;
        border: solid 2px #E6E6E6;
        margin-top: -12px;
    }
    .registForm_det.is-regist input[type=checkbox]:checked + label::before {
        border: solid 2px #222;
    }
    .registForm_det.is-regist input[type=checkbox]:checked + label::after {
        left: 7px;
        width: 7px;
        height: 12px;
        margin: -10px 0 0 0;
        border-bottom: 3px solid #fff;
        border-right: 3px solid #fff;
    }
    .registForm_btn {
        padding: 30px 0 0 0;
    }
    .registForm-btn {
        width: 100%;
        max-width: 100%;
        margin: 0;
    }
    .cnfbtn .registForm-btn {
        width: 100%;
    }
    .cnfbtn .registForm-btn:last-child {
        margin: 0 0 0 15px;
    }
    .registForm-btn.is-repw {
        width: auto;
    }
    .registForm_app {
        padding: 30px 0 10px;
    }
    .registForm-txt {
        padding: 30px 0 0 0;
    }
    .registForm-txtb {
        font-size: 16px;
    }
    .registForm-btn.b_btn a {
        font-size: 16px;
    }
    .kome {
        font-size: 13px;
    }
    .registCan_wrap {
        width: auto;
        margin: 20px 20px 0;
    }
    .registCan_in {
        padding: 30px 20px;
    }
    .registCan_lst {
        margin: 20px 0 0 0;
    }
    .registCan_lst li {
        margin: 0 0 30px 0;
    }
    .registCan-ttl {
        font-size: 16px;
        line-height: 1.6;
        margin: 0 0 10px 0;
        padding: 0 0 0 50px;
    }
    .registCan-txt {
        font-size: 14px;
    }
    .registCan-num {
        top: 50%;
        margin-top: -13px;
        width: 26px;
        height: 26px;
        font-size: 16px;
        line-height: 26px;
    }
    .registForm_list ul li .formList-lnk a .is-arw {
        font-size: 14px;
    }
    .regist-error {
        padding: 20px 20px 0;
    }
    .registForm_reserveTtl {
        font-size: 14px;
        margin-bottom: 5px;
    }
    .regist_back {
        margin-top: 25px;
    }
}
@media (max-width: 340px) {

    .cnfbtn .registForm-btn.b_btn a {
        font-size: 12px;
    }
    .cnfbtn .registForm-btn:last-child {
        margin:  0 0 0 10px;
    }
}
