@charset "UTF-8";
/* common */
.form-wrapper {
    max-width: 1132px;
    margin: 0 auto;
}
.form-wrapper dl {
    border-bottom: 1px solid #828282;
    padding-bottom: 25px;
}
.form-wrapper dl:not(:first-of-type) {
    padding-top: 18px;
}
.form-wrapper dl dt {
    font-weight: 400;
    font-size: 16px;
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}
.form-wrapper dl dt span {
    font-size: 12px;
    background-color: #FF0000;
    color: #FFFFFF;
    padding: 3px 9px 4px;
    display: block;
    margin-left: 14px;
}
.form-wrapper dl dd {
    font-size: 16px;
    line-height: 1.6;
}
.form-wrapper dl dd label {
    font-size: 16px;
}
.form-wrapper textarea {
    line-height: 1.6;
}
.form-wrapper input[type="text"],
.form-wrapper input[type="tel"],
.form-wrapper input[type="email"],
.form-wrapper input[type="date"],
.form-wrapper select,
.form-wrapper textarea {
    border: 1px solid #9E9E9E;
    border-radius: 15px;
    font-size: 20px;
    padding: 17px 15px;
}
.radio-item {
    display: inline-flex;
    align-items: center;
    column-gap: 10px;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
}
  
/* .radio-item:not(:last-of-type) {
    margin-right: 43px;
} */
  
.radio-item-btn {
    appearance: none;
    position: relative;
    width: 31px;
    height: 31px;
    border: 1px solid #000000;
    border-radius: 9999px;
    cursor: pointer;
}
  
.radio-item-btn:checked::after {
    content: "";
    position: absolute;
    inset: 0;
    width: 15px;
    height: 15px;
    margin: auto;
    border-radius: 9999px;
    background-color: #000000;
}
.select-wrapper {
    position: relative;
}
.select-wrapper::before {
    content: '';
    width: 14px;
    height: 14px;
    background: url(../img/common/icon-arrow-down-black.svg) no-repeat center center/contain;
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
}
@media screen and (min-width: 992px) {
    .form-wrapper dl {
        display: flex;
    }
    .form-wrapper dl dt {
        margin-bottom: 0;
        width: 196px;
        font-size: 20px;
    }
    .form-wrapper dl dd {
        width: calc(100% - 196px);
        padding-left: 106px;
        font-size: 20px;
    }
    .form-wrapper dl dd label {
        font-size: 20px;
    }
    .form-wrapper dl:not(:first-of-type) {
        padding-top: 25px;
    }
}

/* entry */
.sec-entry {
    padding-bottom: 40px;
}
.entry-txt {
    max-width: 878px;
    margin: 0 auto 60px;
    font-size: 20px;
}
.entry-txt--contact {
    max-width: 803px;
}
.form-wrapper--entry input[name="fullname"], 
.form-wrapper--entry input[name="fullname-kana"], 
.form-wrapper--entry input[name="last-educational-background"], 
.form-wrapper--entry textarea[name="work-history"], 
.form-wrapper--entry textarea[name="pr"], 
.form-wrapper--entry textarea[name="motivation"] {
    width: 100%;
    max-width: 707px;
}
.form-wrapper--entry textarea[name="work-history"],
.form-wrapper--entry textarea[name="motivation"],
.form-wrapper--entry textarea[name="pr"] {
    height: 205px;
}
.form-wrapper--entry .dd-birth-inner {
    display: flex;
    flex-wrap: wrap;
    gap: 43px;
    row-gap: 14px;
}

.form-wrapper--entry .dd-birth-inner .birth-year-wrapper {
    width: 100%;
}
.form-wrapper--entry .dd-birth-inner .birth-year-wrapper span {
    margin-left: 20px;
}
.form-wrapper--entry input[name="birth-year"] {
    width: 101px;
}
.form-wrapper--entry input[name="birth-day"],
.form-wrapper--entry input[type="date"] {
    width: 158px;
}
.form-wrapper--entry input[name="postal-code"] {
    width: 201px;
}
.form-wrapper--entry .dl-postal-code dd span {
    margin-left: 20px;
}
.dd-address-inner .select-wrapper {
    width: 173px;
}
.form-wrapper--entry select[name="prefecture"] {
    width: 173px;
}
.form-wrapper--entry input[name="address"] {
    width: 100%;
    max-width: 495px;
}
.form-wrapper--entry .dd-address-inner {
    display: flex;
    flex-wrap: wrap;
    row-gap: 14px;
}
.form-wrapper--entry input[name="phone-number"], 
.form-wrapper--entry input[name="email"] {
    width: 67%;
    max-width: 466px;
}
.form-wrapper--entry .dl-phone-number dd span {
    margin-left: 14px;
}
.form-wrapper--entry .dd-occupation-inner {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
    row-gap: 14px;
}
.form-wrapper--entry input[name="qualifications"] {
    width: 100%;
    max-width: 501px;
}
.form-wrapper--entry .dd-qualifications-inner {
    display: flex;
    flex-wrap: wrap;
    row-gap: 10px;
    align-items: center;
}
.form-wrapper--entry input[type="checkbox"] {
    width: 31px;
    height: 31px;
    border: 1px solid #000000;
    appearance: checkbox;
    -webkit-appearance: checkbox;
    border-radius: 0;
    margin-top: -3px;
    margin-right: 8px;
}
.form-wrapper--entry .dd-employment-inner {
    display: flex;
    gap: 63px;
}
.form-wrapper--entry input[name="years-of-experience"] {
    width: 183px;
    max-width: 100%;
}
.form-wrapper--entry .dl-years-of-experience dd span {
    margin-left: 23px;
}
.form-wrapper--entry .dd-work-conditions-inner {
    display: flex;
    flex-wrap: wrap;
    gap: 56px;
    row-gap: 14px;
}
.form-wrapper--entry .start-date-wrapper span {
    margin-right: 12px;
    font-size: 16px;
}
.form-wrapper--entry .about-privacy {
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    margin-top: 72px;
    margin-bottom: 26px;
}
.form-wrapper--entry .about-privacy-main-txt {
    line-height: calc(40 / 16);
    max-width: 624px;
    margin: 0 auto 46px;
}
.form-wrapper--entry .about-privacy-main-txt a {
    text-decoration: underline;
}
.form-wrapper--entry .agreement-wrapper {
    font-size: 16px;
    margin-bottom: 80px;
    text-align: center;
}
.form-wrapper--entry .agreement-wrapper input[name="agreement"] {
    margin-left: 8px;
}
.form-wrapper--entry .btns-wrapper {
    display: flex;
    gap: 63px;
    justify-content: center;
    margin-top: 50px;
}
.form-wrapper--entry .recruit-input-btn-wrapper,
.form-wrapper--entry .recruit-back-btn-wrapper {
    width: 208px;
    max-width: 100%;
    margin: 0 auto;
}
.sec-entry--confirm .form-wrapper--entry .recruit-input-btn-wrapper,
.sec-entry--confirm .form-wrapper--entry .recruit-back-btn-wrapper {
    margin: 0;
}
@media screen and (min-width: 576px) {
    .form-wrapper--entry .dd-birth-inner .birth-year-wrapper {
        width: auto;
    }
    .form-wrapper--entry .dd-birth-inner {
        gap: 17px;
    }
}
@media screen and (min-width: 768px) {
    .form-wrapper--entry .dd-birth-inner {
        gap: 43px;
    }
    .dd-address-inner .select-wrapper {
        margin-right: 13px;
    }
    .form-wrapper--entry .dd-work-conditions-inner .radio-item {
        padding-bottom: 8px;
    }
}
@media screen and (min-width: 992px) {
    .form-wrapper--entry .dd-work-conditions-inner {
        gap: 32px;
    }
    .entry-txt {
        margin-bottom: 133px;
    }
    .form-wrapper--entry .start-date-wrapper span {
        font-size: 20px;
    }
    .form-wrapper--entry .agreement-wrapper {
        font-size: 20px;
    }
}
@media screen and (min-width: 1200px) {
    .form-wrapper--entry input[name="qualifications"] {
        margin-right: 18px;
    }
    .form-wrapper--entry .dd-work-conditions-inner {
        gap: 56px;
    }
}

/* entry confirm and thanks*/
.confirm-ttl,
.thanks-ttl {
    font-size: 36px;
    text-align: center;
    margin-bottom: 50px;
    font-weight: 700;
}
.confirm-txt,
.thanks-txt {
    font-size: 20px;
    text-align: center;
    margin-bottom: 130px;
}

/* thanks */
.sec-entry--thanks {
    padding-bottom: 100px;
}
.thanks-ttl--sub {
    font-size: 24px;
    text-align: center;
    font-weight: 700;
    margin-bottom: 80px;
}
.thanks-txt {
    text-align: left;
    max-width: 1037px;
    margin: 0 auto;
}

/* contact */
.form-wrapper--entry textarea[name="contact-contents"] {
    max-width: 681px;
    width: 100%;
    height: 205px;
}
.input-item__birth-year{border: 1px solid #9E9E9E;
    border-radius: 15px;
    font-size: 20px;
    padding: 17px 15px;}
/*--------------------------------
リクエストのスタイル
---------------------------------*/
.request-subtitle{font-size: 24px;margin: 80px 0 10px;font-weight: bold;color: #B3467A;}

.request-riyoujyoukyou{width: 230px!important;}
.request-kiboukaisu{width: 60px!important;}
.request-byouinmei{width: 100%!important;}
.request-otherservices{width: 100%!important;}
.input-error {font-weight: bold;color: #FF0000;display: block;}
@media screen and (min-width: 992px) {
    .request-dt{width: 300px!important;}
    .request-byouinmei{width: 450px!important;}
    .request-otherservices{width: 450px!important;}
}