@charset "utf-8";

.pc-view {
    display: block;
}
.sp-view {
    display: none;
}
@media screen and (max-width: 767px) {
    .pc-view {
        display: none;
    }
    .sp-view {
        display: block;
    }
}

/* ---------------------------------
        slick
------------------------------------*/
.slick-next:before {
    content: none;
}

/* ---------------------------------
        header
------------------------------------*/
.l-header_logo .-seo {
    position: absolute;
    margin-bottom: 0;
}
.l-header_logo a {
    margin-top: 13px;
}

/* ---------------------------------
        breadcrumbs
------------------------------------*/
.c-breadcrumbs_list {
    overflow-x: auto;
    overflow-y: hidden;
    word-break: keep-all;
    white-space: nowrap;
    line-height: 1;
}

/* ---------------------------------
        form
------------------------------------*/
._fix {
	height: 100%;
	min-height: auto;
	overflow: hidden;
	position: fixed;
	width: 100%;
}

[v-cloak] {
	display: none !important;
    /* opacity: 0 !important; */
}
._pageAnchorBase {
    position: relative;
}
._pageAnchor {
    position: absolute;
}
.no-show {
    display: none !important;
}

.formInfoBlock {
    margin-bottom: 10px;
}
.formStepInputBox {

}

.c-step_tab_checkbox:before,
.c-step_tab_radio:before,
.p-index_step_tab_checkbox:before,
.p-index_step_tab_radio:before {
    border-color: #333;
}
.c-step_tab_radio:before {
    border-color: #333;
}
input[type=radio]:not(:checked)+label {
    color: #333;
}

.formStepInputerror {
    display: block;
    width: 100%;
    padding-top: 5px;
    font-weight: 700;
    color: #fc3f6b;
}
.formStepButtonBox {
    margin-top: 40px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

/* two column */
.c-btn_w270 {
    width: 49%;
}
.formStepButtonBox .c-btn_w270:nth-child(n+2) {
    margin-left: 2%;
}

.c-step_tab_add {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.formStepInputItemHalf {
    width: 49%;
}
.formStepInputItemHalf:nth-child(n+2) {
    margin-left: 2%;
}
.c-step_tab_place {
    width: 100%;
}

.c-step_tab_btn_next.disabled,
.c-step_tab_btn_submit.disabled {
    cursor: inherit;
    border: 2px solid #cfbdb7;
    background-color: #cfbdb7;
}

.c-step_tab_comment {
    height: 100px;
}

/* one column */
.p-index_step_tab {
    padding: 30px;
}
.p-index_step_tab_list_ee {
    background-color: #fff;
    padding: 15px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}
.p-index_step_tab_list_ee li {
    width: 25%;
    padding: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}
.p-index_step_tab_list_ee2 {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}
.p-index_step_tab_list_ee_add  {
    width: 100%;
    text-align: right;
}   
.addBtn {
    position: relative;
    margin-right: 40px;
    display: inline-block;
    border-radius: 20px;
    border: 1px solid;
    padding: 0 20px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.5;
    cursor: pointer;
}
.addBtn::after {
    content: "";
    position: absolute;
    right: 7px;
    top: 50%;
    width: 9px;
    height: 6px;
    margin-top: -3px;
    background-image: url("../img/ico_tri.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 9px 6px;
}
.addBtnText {

}
.addBtn + .-cont {
    display: none;
    text-align: left;
}
.addBtn.active {
    display: none;
}

.p-index_step_tab_row_zip_cont {
    padding-left: 15px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.p-index_step_tab_place {
    width: 100%;
}
.p-index_step_tab_year {
    margin-left: 15px;
}
.formStepInputerror_year {
    padding-left: 15px;
}
.p-index_step_tab_txt {
    padding-left: 15px;
}

.p-index_step_tab_agree {
    margin: 30px 0 0 28%;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content:flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.p-index_step_tab_label {
    width: calc(100% - 24px);
}

.formStepButtonBox .c-btn_w300:nth-child(n+2) {
    margin-left: 2%;
}
.c-btn_w300 {
    max-width: 49%;
}
.formStepButtonBox .c-btn_w270:nth-child(n+2) {
    margin-left: 2%;
}
.p-index_step_tab .c-btn_form_org.p-index_step_tab_btn_next.disabled,
.p-index_step_tab .c-btn_form_org.p-index_step_tab_btn_submit.disabled {
    cursor: inherit;
    border: 2px solid #cfbdb7;
    background-color: #cfbdb7;
}
.p-index_step_tab_comment {
    height: 100px;
}

/* ---------------------------------
        job search
------------------------------------*/
.jobSearchFormBox input,
.jobSearchFormBox select,
.jobSearchFormBox textarea,
.jobSearchFormBox button {
	background-color: transparent;
	border-style: none;
	color: inherit;
    font-family: inherit;
    font-size: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    font-weight: 400;
    margin: 0;
    padding: 0;
	outline: none;
}
.jobSearchFormBox input:focus-visible,
.jobSearchFormBox select:focus-visible,
.jobSearchFormBox textarea:focus-visible {
	outline: none;
}
.jobSearchFormBox input[type="checkbox"] {
	/* 透明度0 */
	filter: alpha(opacity=0);
	-moz-opacity:0;
	opacity:0;
	/* ブラウザのデフォルトのスタイルを削除 */
	-webkit-appearance: none;
	appearance: none;
	/* レイアウトから無視 */
	position: absolute;
	width: auto;
	outline: none;
}
.jobSearchFormBox input[type="radio"] {
	/* 透明度0 */
	filter: alpha(opacity=0);
	-moz-opacity:0;
	opacity:0;
	/* ブラウザのデフォルトのスタイルを削除 */
	-webkit-appearance: none;
	appearance: none;
	/* レイアウトから無視 */
	position: absolute;
	width: auto;
}
.jobSearchFormBox select::-ms-expand {
    display: none;
}
.jobSearchFormBox * {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    word-break: break-all;
    word-wrap: break-word;
}

/* search */
.p-search_head {
    margin-bottom: 30px;
}
.p-search_head_switch {
    margin-bottom: 0;
}
.p-search_head_inner {
    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;
}
.p-search_pager_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    line-height: 1;
    font-family: Roboto,Arial,Helvetica,Verdana,sans-serif;
    font-weight: 400;
    font-size: 15px;
    font-size: 1.5rem;
}

/* search form*/
/* .jobSearchFormBox.tabType1 {
    min-height: 280px;
}
.jobSearchFormBox.tabType2 {
    min-height: 512px;
} */
.jobSearchFormTab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}
.jobSearchFormTabItem {
    display: block;
    width: 49.5%;
    margin-right: 1%;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobSearchFormTabItem:last-child {
    margin-right: 0;
}
.jobSearchFormTabInputRadio {

}
.jobSearchFormTabLabel {
    display: block;
    width: 100%;
    line-height: 1;
    border-radius: 10px 10px 0 0;
    border-top: 2px solid #cfbdb7;
    padding: 17px 0;
    background-color: #cfbdb7;
    color: #fff !important;
    font-weight: 700;
    font-size: 18px;
    font-size: 1.8rem;
    text-align: center;
    cursor: pointer;
}
.jobSearchFormTabLabelText {

}
.jobSearchFormTabInputRadio:checked + .jobSearchFormTabLabel {
    border-top: 2px solid #f86d3b;
    background-color: #fff;
    color: #f86d3b !important;;
}
.jobSearchFormContents {
    padding: 40px;
    border-radius: 0 0 10px 10px;
    background-color: #fff;
}
.jobSearchFormContents.action {
    display: block;
}
.jobSearchFormList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobSearchFormListItem {
    position: relative;
    width: 21.5%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobSearchFormListItem__leftM15 {
    margin-left: 1.25%;
}
.jobSearchFormListItem__iconCross {
    position: relative;
    margin-left: 4.1%;
}
.jobSearchFormListItem__iconCross::before {
    position: absolute;
    left: -14%;
    content: "×";
    width: 24px;
    height: 24px;
    font-size: 2.4rem;
    font-weight: 900;
    line-height: 1;
    text-align: center;
}
.jobSearchFormBox .jobSearchFormInputSelect {
    font-family : inherit;
    position: relative;
    width: 100%;
    padding: 16.5px 30px 16.5px 20px;
    border-radius: 7px;
    border: 1px solid #b2b2b2;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1;
    background-color: #fff;
    background-image: url("../img/ico_tri.svg");
    background-repeat: no-repeat;
    background-position: calc(100% - 10.5px);
    background-size: 9px 6px;
    z-index: 0;
}
.jobSearchFormFooter {
    margin-top: 40px;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobSearchFormBtnWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobSearchFormBox .jobSearchFormButton {
    position: relative;
    display: block;
    margin-right: 21px;
    padding: 15px 0 14px;
    border: 2px solid #f86d3b;
    border-radius: 28px;
    font-weight: 700;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.4;
    color: #FFF;
    text-align: center;
    background-color: #f86d3b;
    cursor: pointer;
}
.jobSearchFormBox .jobSearchFormButton:last-child {
    margin-right: 0;
}
.jobSearchFormBox .jobSearchFormButton__lineOrg {
    background-color: #fff;
    color: #f86d3b;
}
.jobSearchFormBox .jobSearchFormButton_w300 {
    width: 300px;
}
.jobSearchFormBox .jobSearchFormButton_w200 {
    width: 200px;
}
.jobSearchFormButtonText {

}
.jobSearchCondition_balloon {
    display: block;
    position: absolute;
    top: -30px;
    left: 0;
    width: 100%;
    z-index: 0;
    opacity: 0;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}
.jobSearchCondition_balloon.is-show  {
    opacity: 1;
}
.jobSearchCondition_balloon_txt {
    line-height: 1;
    display: block;
    width: 100%;
    padding: 5px;
    border: 1px solid #f86d3b;
    border-radius: 10px;
    background-color: #f86d3b;
    font-size: 12px;
    font-size: 1.2rem;
    text-align: center;
    color: #FFF;
}

.jobSearchFormLink {

}
.jobSearchFormLink__calendar {
    margin-left: 20px;
}
.jobSearchFormLinkText {
    padding: 5px 26px 5px 0;
    color: #f86d3b;
    text-decoration: underline;
}
.jobSearchFormLinkText__calendar {
    background-image: url("../img/search/ico_calendar.svg");
    background-position: right center;
    background-size: 17px 16px;
    background-repeat: no-repeat;
}

.jobSearchFormListDetail {
    width: 100%;
    border-top: 1px dotted silver;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobSearchFormListDetailColumn {
    width: 50%;
}
.jobSearchFormListDetailColumn:nth-child(1) .jobSearchFormListDetailDlType1,
.jobSearchFormListDetailColumn:nth-child(1) .jobSearchFormListDetailDlType2 {
    border-left: 1px dotted silver;
}
.jobSearchFormListDetailColumn:nth-child(2n) {
    border-left: 1px dotted silver;
}
.jobSearchFormListDetailColumn:nth-child(2) .jobSearchFormListDetailDlType1,
.jobSearchFormListDetailColumn:nth-child(2) .jobSearchFormListDetailDlType2 {
    border-right: 1px dotted silver;
}

.jobSearchFormListDetailDlType1 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-sizing: border-box;
    border-bottom: 1px dotted silver;
}
.jobSearchFormListDetailDlType1Dt {
    width: 25%;
    line-height: 1;
    /* padding: 25px 20px 15px; */
    padding: 20px 0 20px 20px;
    background-color: #fcf5e8;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.jobSearchFormListDetailDlType1DtText {
    font-weight: 700;
    font-size: 16px;
    font-size: 1.6rem;
}
.jobSearchFormSelectedTitle {
    margin-right: 10px;
}
.jobSearchFormSelectedTitle__typ2 {
    margin-right: 0;
}
.jobSearchFormSelectedText {
    display: inline-block;
    border-radius: 20px;
    border: 1px solid #f86d3b;
    padding: 0 10px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.5;
    color: #f86d3b;
    background-color: #FFF;
}
.jobSearchFormListDetailDlType1Dd {
    width: 75%;
    /* padding: 15px 20px; */
    padding: 14px 3.5%;
    background-color: #fff;
}
.jobSearchFormListDetailModalBtnWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobSearchFormBox .jobSearchFormListDetailModalBtn {
    position: relative;
    box-sizing: border-box;
    display: block;
    width: 49%;
    border-radius: 28px;
    /* padding: 8px 0 9px 5%; */
    font-weight: 700;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4;
    cursor: pointer;
    text-align: center;
    background-color: #fff;
}
.jobSearchFormBox .jobSearchFormListDetailModalBtn.active{
    text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
    -1px 1px 0 #FFF, 1px -1px 0 #FFF,
    0px 1px 0 #FFF,  0-1px 0 #FFF,
    -1px 0 0 #FFF, 1px 0 0 #FFF;
}

/* .jobSearchFormBox .jobSearchFormListDetailModalBtn.active::before {
    content: "";
    position: absolute;
    left: 8px;
    top: 50%;
    width: 15px;
    height: 15px;
    margin-top: -12px;
    border-radius: 50%;
    border: 4px solid #FFF;
    background-color: #f86d3b;
}
.jobSearchFormBox .jobSearchFormListDetailModalBtn__prefCity.active::before {
    background-color: #f86d3b;
}
.jobSearchFormBox .jobSearchFormListDetailModalBtn__route.active::before {
    background-color: #fba241;
} */
.jobSearchFormBox .jobSearchFormListDetailModalBtn.active::before {
    content: "";
    position: absolute;
    left: 5px;
    top: 50%;
    width: 21px;
    height: 21px;
    margin-top: -11px;
    border-radius: 50%;
    background-color: #FFF;
}
.jobSearchFormBox .jobSearchFormListDetailModalBtn.active::after {
    content: "";
    position: absolute;
    top: 10px;
    left: 11px;
    width: 5px;
    height: 10px;
    border-right: 3px solid #f86d3b;
    border-bottom: 3px solid #f86d3b;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: rotate(35deg);
    -ms-transform: rotate(35deg);
    transform: rotate(35deg);
}
.jobSearchFormBox .jobSearchFormListDetailModalBtn__prefCity.active::after {
    border-color: #f86d3b;
}
.jobSearchFormBox .jobSearchFormListDetailModalBtn__route.active::after {
    border-color: #fba241;
} 

.jobSearchFormBox .jobSearchFormListDetailModalBtn__prefCity {
    border: 2px solid #f86d3b;
}
.jobSearchFormBox .jobSearchFormListDetailModalBtn__route {
    border: 2px solid #fba241;
}
.jobSearchFormBox .jobSearchFormListDetailModalBtn__prefCity.active {
    color: #f86d3b;
    background-color: #f86d3b;
}
.jobSearchFormBox .jobSearchFormListDetailModalBtn__route.active {
    color: #fba241;
    background-color: #fba241;
}
.jobSearchCondition_balloon {
    top: -25px;
}
.jobSearchCondition_balloon_txt {
    padding: 2.5px;
}

.jobSearchFormListDetailModalBtnText {
    position: relative;
    display: inline-block;
    padding: 8.5px 0 8.5px 30px;
    background-repeat: no-repeat;
}
.jobSearchFormBox .jobSearchFormListDetailModalBtn__prefCity .jobSearchFormListDetailModalBtnText {
    background-image: url("../img/ico_area.svg");
    background-size: 15px 27px;
    background-position: 10px center;
}
.jobSearchFormBox .jobSearchFormListDetailModalBtn__route .jobSearchFormListDetailModalBtnText {
    background-image: url("../img/ico_station.svg");
    background-size: 23px;
    background-position: 5px center;
}
.jobSearchFormBox .jobSearchFormListDetailModalBtn__prefCity.active .jobSearchFormListDetailModalBtnText {
    background-image: url("../img/ico_area_white.svg");
}
.jobSearchFormBox .jobSearchFormListDetailModalBtn__route.active .jobSearchFormListDetailModalBtnText {
    background-image: url("../img/ico_station_white.svg");
}

.modalCheck {
    margin-top: 10px;
    width: 100%;
}
.modalCheckTitle {
    width: 100%;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.5;
}
.modalCheck.right .modalCheckTitle {
    text-align: right;
}
.modalCheckTitleText {
    position: relative;
    display: inline-block;
    border-radius: 20px;
    border: 1px solid #f86d3b;
    color: #f86d3b;
    padding: 0 20px;
    cursor: pointer;
}
.modalCheckTitleText::after {
    content: "";
    position: absolute;
    right: 7px;
    top: 50%;
    width: 9px;
    height: 6px;
    margin-top: -3px;
    background-image: url("../img/ico_tri_up.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 9px 6px;
}
.modalCheckTitle.active .modalCheckTitleText::after {
    background-image: url("../img/ico_tri.svg");
}
.modalCheckText {
    width: 100%;
    margin-top: 5px;
    font-size: 11px;
    line-height: 1.5;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.modalCheckTextParent {
    display: inline-block;
}
.modalCheckTextChildren {
    display: inline-block;
    position: relative;
    padding-left: 1em;
}
.modalCheckTextChildren::before {
    position: absolute;
    content: "：";
    left: 0;
}

.jobSearchFormListDetailDlType2 {
    position: relative;
    z-index: 0;
}
.jobSearchFormListDetailDlType2Dt {
    box-sizing: border-box;
    border-bottom: 1px dotted silver;
    /* padding: 20px 20px 15px; */
    padding: 20px;
    background-color: #fcf5e8;
    cursor: pointer;

    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;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobSearchFormListDetailDlType2DtAddIcon {
    line-height: 1;
    color: #f86d3b;
}
.jobSearchFormListDetailDlType2DtAddIconText {
    display: block;
    position: relative;
    z-index: 0;
    line-height: 1;
    padding: 5px 20px 5px 0;
    font-weight: 700;
    font-size: 16px;
    font-size: 1.6rem;
}
.jobSearchFormListDetailDlType2DtAddIconText:after {
    position: absolute;
    z-index: 0;
    content: "＋";
    font-weight: 700;
    font-size: 16px;
    font-size: 1.6rem;
}
.jobSearchFormListDetailDlType2Dt.active .jobSearchFormListDetailDlType2DtAddIconText:after {
    content: "－";
}

.jobSearchFormListDetailDlType2Dd {
    box-sizing: border-box;
    display: none;
    border-bottom: 1px dotted silver;
    padding: 15px 20px;
}
.jobSearchFormInputChoiceList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobSearchFormInputChoiceItem {
    /* margin-right: 4%; */
    /* max-width: 48%; */
    min-width: 33.3%;
}
.jobSearchFormInputChoiceItem__full {
    width: 100%;
}
/* .jobSearchFormInputChoiceItem:nth-child(2n) {
    margin-right: 0;
} */
.jobSearchFormInputCheckbox {

}
.jobSearchFormInputCheckboxLabel {
    box-sizing: border-box;
    display: inline-block;
    /* padding: 3px 0 3px 30px; */
    padding: 3px 10px 3px 30px;
    position: relative;
    width: auto;
    cursor: pointer;
}
.jobSearchFormInputCheckboxLabel::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 9px;
    left: 5px;
    width: 16px;
    height: 16px;
    border-radius: 2px;
    border: 1px solid #d7d7d7;
    background-color: #fff;
    box-sizing: border-box;
}
.jobSearchFormInputCheckbox:checked + .jobSearchFormInputCheckboxLabel::after {
    content: "";
    position: absolute;
    top: 10px;
    left: 10px;
    width: 4px;
    height: 8px;
    border-right: 2px solid #f86d3b;
    border-bottom: 2px solid #f86d3b;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: rotate(35deg);
    -ms-transform: rotate(35deg);
    transform: rotate(35deg);
}
.jobSearchFormInputRadio {

}
.jobSearchFormInputRadioLabel {
    position: relative;
    width: auto;
    display: inline-block;
    padding: 3px 0 3px 30px;
    color: #333 !important;
    cursor: pointer;
}
.jobSearchFormInputRadioLabel::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 9px;
    left: 5px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 1px solid #d7d7d7;
    background-color: #fff;
    box-sizing: border-box;
}
.jobSearchFormInputRadio:checked + .jobSearchFormInputRadioLabel::after {
    content: "";
    position: absolute;
    top: 12px;
    left: 8px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #f86d3b;
}
.jobSearchFormBox .jobSearchFormInputText {
    width: 100%;
    border-radius: 7px;
    border: 1px solid #b2b2b2;
    padding: 10px 20px;
    font-weight: 500;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1;
    background-color: #fff;
}

/* ---------------------------------
        job search modal
------------------------------------*/
.jobSearchFormModal input,
.jobSearchFormModal select,
.jobSearchFormModal textarea,
.jobSearchFormModal button {
	background-color: transparent;
	border-style: none;
	color: inherit;
    font-family: inherit;
    font-size: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    font-weight: 400;
    margin: 0;
    padding: 0;
	outline: none;
}
.jobSearchFormModal input:focus-visible,
.jobSearchFormModal select:focus-visible,
.jobSearchFormModal textarea:focus-visible {
	outline: none;
}
.jobSearchFormModal input[type="checkbox"] {
	/* 透明度0 */
	filter: alpha(opacity=0);
	-moz-opacity:0;
	opacity:0;
	/* ブラウザのデフォルトのスタイルを削除 */
	-webkit-appearance: none;
	appearance: none;
	/* レイアウトから無視 */
	position: absolute;
	width: auto;
	outline: none;
}
.jobSearchFormModal input[type="radio"] {
	/* 透明度0 */
	filter: alpha(opacity=0);
	-moz-opacity:0;
	opacity:0;
	/* ブラウザのデフォルトのスタイルを削除 */
	-webkit-appearance: none;
	appearance: none;
	/* レイアウトから無視 */
	position: absolute;
	width: auto;
}
.jobSearchFormModal select::-ms-expand {
    display: none;
}
.jobSearchFormModal * {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    word-break: break-all;
    word-wrap: break-word;
}

.scrollBlock-auto {
    overflow-y: auto;
}
.scrollBlock-y {
    overflow-y: scroll;
}
.scrollBlock::-webkit-scrollbar {
    width: 5px;
}
.scrollBlock::-webkit-scrollbar-thumb {
    background-color: #f86d3b;
}
.scrollBlock::-webkit-scrollbar-track {
    background-color: #f4f4f4;
}

.jobSearchFormModal {
    /* display: none; */
}
.jobSearchFormModalBg {
    position: fixed;
    z-index: 1001;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background-color: rgba(0,0,0,.8);
    cursor: pointer;
}
.jobSearchFormModalContents {
    position: fixed;
    z-index: 1002;
    top: 50%;
    left: 50%;
    width: 90%;
    max-width: 1200px;
    height: 90vh;
    padding: 30px 30px 40px;
    border-radius: 10px;
    background-color: #fff;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}
.jobSearchFormModalContentsWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobSearchFormModalHeader {
    position: relative;
    width: 100%;
}
.jobSearchFormModalTitle {
    width: 50%;
    border-radius: 10px 10px 0 0;
    border-top: 2px solid #f86d3b;
    border-right: 2px solid #f86d3b;
    border-left: 2px solid #f86d3b;
    padding: 10px;
    text-align: center;
    background-color: #fff;
}
.jobSearchFormModalTitleText {
    font-weight: 700;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1;
    color: #f86d3b;
}
.jobSearchFormModal .jobSearchFormModalClose {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 20px;
    height: 20px;
    background-image: url("../img/btn_modal_close.svg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    cursor: pointer;
}
.jobSearchFormModalColumnWrap {
    position: relative;
    width: 100%;
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    border: 2px solid #f86d3b;
    padding: 10px;
    z-index: 1;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobSearchFormModalColumn {
    position: relative;
    width: 49%;
    z-index: 2;
}
.jobSearchFormModalColumn1 {
    z-index: 3;
}
.jobSearchFormModalColumnTitle {
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 3px dotted #f86d3b
}
.jobSearchFormModalColumnTitleText {
    display: inline-block;
    margin-left: 16px;
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.6;
}
.jobSearchFormModalColumnTitleText__sub {
    font-size: 1.3rem;
}
.jobSearchFormModalColumnContents {
    position: relative;
    height: 58vh;
    padding-right: 10px;
}
.jobSearchFormModalInputWrap {
    
}
.jobSearchFormModalInputWrap:nth-child(n+2) {
    margin-top: 20px;
}

.jobSearchFormModal .jobSearchFormModalInputSelect,
.jobSearchFormModal .searchSelectView {
    font-family : inherit;
    position: relative;
    width: 100%;
    padding: 16.5px 30px 16.5px 20px;
    border-radius: 7px;
    border: 1px solid #b2b2b2;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1;
    background-color: #fff;
    background-image: url("../img/ico_tri.svg");
    background-repeat: no-repeat;
    background-position: calc(100% - 10.5px);
    background-size: 9px 6px;
    z-index: 0;
    cursor: pointer;
}

.jobSearchFormModalInputChoiceItemTitle {
    line-height: 1;
    margin-bottom: 10px;
    padding: 12px 0 15px;
    border-radius: 20px;
    background-color: #f4f4f4;
    font-weight: 700;
    font-size: 13px;
    font-size: 1.3rem;
    text-align: center;
}

.jobSearchFormModalInputChoiceList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobSearchFormModalInputChoiceItem {
    /* margin-right: 4%; */
    /* max-width: 48%; */
    padding-right: 2%;
    min-width: 25%;
}
.jobSearchFormModalInputChoiceItem__3column {
    min-width: 33%;
}
/* .jobSearchFormModalInputChoiceItem:nth-child(2n) {
    margin-right: 0;
} */
.jobSearchFormModalInputCheckbox {

}
.jobSearchFormModalInputCheckboxLabel {
    box-sizing: border-box;
    display: inline-block;
    padding: 3px 0 3px 30px;
    position: relative;
    width: auto;
    cursor: pointer;
}
.jobSearchFormModalInputCheckboxLabel::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 9px;
    left: 5px;
    width: 16px;
    height: 16px;
    border-radius: 2px;
    border: 1px solid #d7d7d7;
    background-color: #fff;
    box-sizing: border-box;
}
.jobSearchFormModalInputCheckbox:checked + .jobSearchFormModalInputCheckboxLabel::after {
    content: "";
    position: absolute;
    top: 10px;
    left: 10px;
    width: 4px;
    height: 8px;
    border-right: 2px solid #f86d3b;
    border-bottom: 2px solid #f86d3b;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: rotate(35deg);
    -ms-transform: rotate(35deg);
    transform: rotate(35deg);
}
.jobSearchFormModalInputRadio {

}
.jobSearchFormModalInputRadioLabel {
    position: relative;
    width: auto;
    display: inline-block;
    padding: 3px 0 3px 30px;
    color: #333 !important;
    cursor: pointer;
}
.jobSearchFormModalInputRadioLabel::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 9px;
    left: 5px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 1px solid #d7d7d7;
    background-color: #fff;
    box-sizing: border-box;
}
.jobSearchFormModalInputRadio:checked + .jobSearchFormModalInputRadioLabel::after {
    content: "";
    position: absolute;
    top: 12px;
    left: 8px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #f86d3b;
}
.jobSearchFormModal .jobSearchFormModalInputText {
    width: 100%;
    border-radius: 7px;
    border: 1px solid #b2b2b2;
    padding: 10px 20px;
    font-weight: 500;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1;
    background-color: #fff;
}

.jobSearchFormModalFooter {
    margin-top: 3vh;
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobSearchFormModalBtnWrap {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobSearchFormModal .jobSearchFormModalButton {
    display: block;
    margin-right: 21px;
    padding: 15px 0 14px;
    border: 2px solid #f86d3b;
    border-radius: 28px;
    font-weight: 700;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.4;
    color: #FFF;
    text-align: center;
    background-color: #f86d3b;
    cursor: pointer;
}
.jobSearchFormModal .jobSearchFormModalButton:last-child {
    margin-right: 0;
}
.jobSearchFormModal .jobSearchFormModalButton__lineOrg {
    background-color: #fff;
    color: #f86d3b;
}
.jobSearchFormModal .jobSearchFormModalButton_w340 {
    width: 340px
}
.jobSearchFormModal .jobSearchFormModalButton_w300 {
    width: 300px
}
.jobSearchFormModal .jobSearchFormModalButton_w200 {
    width: 200px
}
.jobSearchFormModalButtonText {

}

.searchSelectBox {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    padding-right: 10px;
}
.filterSearch {
    position: relative;
}
.filterTextWrap {
    position: relative;
    width: 100%;
    padding: 16.5px 30px 16.5px 20px;
    border-radius: 7px;
    border: 1px solid #b2b2b2;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1;

    background-color: #fff;
    z-index: 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.filterTextTitle {
    width: 6em;
}
input.filterText {
    font-family : inherit;
    width: calc(100% - 6em);
}
button.filterBtn {
    position: absolute;
    right: 12.5px;
    top: 50%;
    margin-top: -7.5px;
    display: block;
    width: 15px;
    height: 15px;
    background-image: url("../img/btn_modal_close.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    cursor: pointer;
}
.filterListWrap {
    border: 1px solid #b2b2b2;
    background-color: #FFF;
}
.filterList {
    max-height: 52vh;
}
button.filterItem {
    width: 100%;
    padding: 5.5px 30px 5.5px 20px;
    text-align: left;
    cursor: pointer;
}
button.filterItem.selected {
    font-size: 700;
    color: #f86d3b;
    background-color: rgba(248,109,59,0.3);
}
.nobtn {
    cursor: default !important;
}

/* ---------------------------------
        job list
------------------------------------*/
.noListFlame {
    padding: 30px;
    margin-bottom: 30px;
    border-radius: 5px;
    background-color: #fff;
    border: 1px solid #e0e0e0;
    box-sizing: border-box;
}
.noListFlameTitle {
    font-size: 2rem;
}
.c-search_list_head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.c-search_head {
    width: calc(100% - 270px);
}
.c-search_list_head_right {
    width: 270px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.c-search_list_head_right_fav_cont {
	background-color: transparent;
	border-style: none;
	color: inherit;
    font-family: inherit;
    font-size: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    font-weight: 400;
    margin: 0;
    padding: 0;
	outline: none;
	font-size: inherit;

    display: block;
    width: 40px;
    height: 40px;
    cursor: pointer;
}
.icon_fav_button {
    display: block;
    width: 100%;
    height: 100%;
    background-image: url("../img/search/ico_fav_off.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.fav_on .icon_fav_button {
    background-image: url("../img/search/ico_fav_on.svg");
}
.c-search_list_head_right_fav_balloon {
    display: block;
}
._favoriteClickText {
    opacity: 0;
}
/* ._favoriteBtn:hover + ._favoriteClickText {
    opacity: 1;
    transition-property: opacity;
    transition-duration: 1s;
    transition-delay: 0s;
} */
.is-show._favoriteClickText {
    opacity: 1;
    transition-property: opacity;
    transition-duration: 1s;
    transition-delay: 0s;
}
._favoriteClickText .favoriteClickTextOn {
    display: inline;
}
._favoriteClickText .favoriteClickTextOff {
    display: none;
}
.fav_on + ._favoriteClickText .favoriteClickTextOn {
    display: none;
}
.fav_on + ._favoriteClickText .favoriteClickTextOff {
    display: inline;
}

.c-search_list_date {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.c-search_list_row_tag li {
    margin-right: 0;
    margin-left: 20px;
}
.c-search_list_row_tag li span {
    color: #888;
    font-weight: 700;
    font-size: 12px;
    font-size: 1.2rem;
}

.c-search_list_txt_wrap {
    position: relative;
    margin-bottom: 30px;
    max-height: 100px;
    overflow: hidden;
}
.c-search_list_txt_wrap._open {
    max-height: auto;
    max-height: inherit;

    padding-bottom: 50px;
}
.c-search_list_txt {
    margin-bottom: 0;
}
.c-search_list_txt_btn_wrap {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;

    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 70%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 );

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
._open .c-search_list_txt_btn_wrap {
    background: transparent;
    filter: none;
}
.c-search_list_txt_btn {
    display: block;
    width: 400px;
    border-radius: 20px;
    border: 1px solid #e0e0e0;
    padding: 10px;
    font-weight: 700;
    line-height: 1.5;
    color: #333;
    background-color: #FFF;
    cursor: pointer;
}

/* ---------------------------------
        job premium list
------------------------------------*/
.jobPremiumSearchTable input,
.jobPremiumSearchTable select,
.jobPremiumSearchTable textarea,
.jobPremiumSearchTable button {
	background-color: transparent;
	border-style: none;
	color: inherit;
    font-family: inherit;
    font-size: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    font-weight: 400;
    margin: 0;
    padding: 0;
	outline: none;
}
.jobPremiumSearchTable input:focus-visible,
.jobPremiumSearchTable select:focus-visible,
.jobPremiumSearchTable textarea:focus-visible {
	outline: none;
}

.jobPremiumSearchTable {
    border-top: 1px dotted silver;
    border-bottom: 1px dotted silver;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobPremiumSearchTableTitle {
    width: 25%;
    padding: 30px 20px 25px;
    background-color: #afbdd6;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobPremiumSearchTableTitleWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobPremiumSearchTableTitleText {
    margin-right: 10px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
}
.jobPremiumSearchTableTitleSelectedText {
    display: inline-block;
    border-radius: 20px;
    border: 1px solid #f86d3b;
    padding: 0 10px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.5;
    color: #f86d3b;
    background-color: #FFF;
}
.jobPremiumSearchTableDesc {
    width: 75%;
    padding: 15px 20px;
    background-color: #fff;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobPremiumSearchTableDesc .jobSearchFormInputSelect {
    font-family : inherit;
    position: relative;
    width: 100%;
    padding: 16.5px 30px 16.5px 20px;
    border-radius: 7px;
    border: 1px solid #b2b2b2;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1;
    background-color: #fff;
    background-image: url("../img/ico_tri.svg");
    background-repeat: no-repeat;
    background-position: calc(100% - 10.5px);
    background-size: 9px 6px;
    z-index: 0;
}

.jobPremiumSearchModalBtn {
    background-color: transparent;
    border-style: none;
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    font-weight: 400;
    margin: 0;
    padding: 0;
    outline: none;

    position: relative;
    display: block;
    width: 190px;
    border-radius: 28px;
    font-weight: 700;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4;
    cursor: pointer;
    text-align: center;
    background-color: #fff;
    border: 2px solid #f86d3b;
}
.jobPremiumSearchModalBtn.active {
    color: #f86d3b;
    background-color: #f86d3b;
    text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF, -1px 1px 0 #FFF, 1px -1px 0 #FFF, 0px 1px 0 #FFF, 0-1px 0 #FFF, -1px 0 0 #FFF, 1px 0 0 #FFF;
}
.jobPremiumSearchModalBtn::before {
    content: "";
    position: absolute;
    left: 5px;
    top: 50%;
    width: 21px;
    height: 21px;
    margin-top: -11px;
    border-radius: 50%;
    background-color: #FFF;
}
.jobPremiumSearchModalBtn.active::before {
    color: #f86d3b;
}
.jobPremiumSearchModalBtn.active::after {
    content: "";
    position: absolute;
    top: 10px;
    left: 11px;
    width: 5px;
    height: 10px;
    border-right: 3px solid #f86d3b;
    border-bottom: 3px solid #f86d3b;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: rotate(35deg);
    -ms-transform: rotate(35deg);
    transform: rotate(35deg);
}
.jobPremiumSearchModalBtnText {
    position: relative;
    display: inline-block;
    padding: 8.5px 0 8.5px 30px;
    background-image: url("../img/ico_area.svg");
    background-size: 15px 27px;
    background-position: 10px center;
    background-repeat: no-repeat;
}
.jobPremiumSearchModalBtn.active .jobPremiumSearchModalBtnText {
    background-image: url("../img/ico_area_white.svg");
}
.jobPremiumSearchTableDesc .modalCheck {
    margin-top: 0;
    width: calc(100% - 190px);
    padding-top: 10px;
    padding-left: 20px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;   
}
.jobPremiumSearchTableDesc .modalCheckTitle {
    width: 100px;
    text-align: right;
}
.jobPremiumSearchTableDesc .-cont {
    width: calc(100% - 100px);
}
.jobPremiumSearchTableDesc .modalCheckText {
    margin-top: 0;
}

/* jop premium calender */
.p-oneTime_ttl {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;   
}
.p-oneTime_ttl_head {
    width: auto;
    margin-right: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.p-oneTime_ttl_head-text {
    margin-right: 10px;
}
.p-oneTime_ttl_txt {
    width: auto;
}
.p-oneTime_ttl .modalCheck {
    margin-top: 0;
    width: 100%;
    /* width: calc(100% - 190px); */
    padding-top: 10px;
    /* padding-left: 20px; */
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    /* -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; */
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.p-oneTime_ttl .modalCheckTitle {
    margin-right: 10px;
    width: auto;
}
.p-oneTime_ttl .modalCheckTitle + .-cont {
    width: auto;
}
.p-oneTime_ttl .modalCheckText {
    margin-top: 0;
}

.jobPremiumSearchCalendarSliderWrap {
    position: relative;
    /* max-width: 1200px; */
    overflow: hidden;
}
.jobPremiumSearchCalendarWrap {
    width: 2400px;
    min-width: 1764px;
    /* border-left: 5px solid #afbdd6;
    border-right: 5px solid #afbdd6; */
    background-color: #afbdd6;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    /* -ms-flex-wrap: wrap;
    flex-wrap: wrap; */

    /* -webkit-transform: translate3d(0,0,0);
    -ms-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0); */
}
.jobPremiumSearchCalendarTableWrap {
    width: 50%;
    border-left: 5px solid #afbdd6;
    border-right: 5px solid #afbdd6;
    border-bottom: 10px solid #afbdd6;
}
.jobPremiumSearchCalendarTableWrap:nth-child(odd) {
    border-left: 10px solid #afbdd6;
}
.jobPremiumSearchCalendarTableWrap:nth-child(even) {
    border-right: 10px solid #afbdd6;
}
.jobPremiumSearchCalendarTableHeader {
    width: 100%;
    padding: 10px 0 12px;
    background-color: #afbdd6;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobPremiumSearchCalendarBtn {
	background-color: transparent;
	border-style: none;
	color: inherit;
    font-family: inherit;
    font-size: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    font-weight: 400;
    margin: 0;
    padding: 0;
	outline: none;

    position: absolute;
    display: block;
    top: 8px;
    width: 85px;
    line-height: 1;
    border-radius: 20px;
    background-color: #fff;
    background-size: 20px 20px;
    background-repeat: no-repeat;
    color: #afbdd6;
    font-weight: 700;
    font-size: 18px;
    font-size: 1.8rem;
    cursor: pointer;
    z-index: 1;
}
.prevBtn {
    left: 20px;
    padding: 5px 0 5px 30px;
    background-image: url("../img/ico_prev_gry.svg");
    background-position: 10% center;
}
.nextBtn {
    right: 20px;
    padding: 5px 20px 5px 0;
    background-image: url("../img/ico_next_gry.svg");
    background-position: 90% center;
}

.jobPremiumSearchCalendarTableTitle {
    line-height: 1;
    color: #fff;
    font-weight: 700;
    font-size: 24px;
    font-size: 2.4rem;
    text-align: center;
}
.jobPremiumSearchCalendarTable {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobPremiumSearchCalendarTableLine {
    width: 100%;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobPremiumSearchCalendarTableLineTh {
    width: 14.25%;
    border-right: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    padding: 3px 0 4px;
    text-align: center;
    background-color: #fff;
    font-weight: 700;
}
.jobPremiumSearchCalendarTableLineTh:last-child {
    border-right: none;
}
.jobPremiumSearchCalendarTableLineTd {
    width: 14.25%;
    height: 80px;
    border-right: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    background-color: #f0f0f0;
}
.jobPremiumSearchCalendarTableLineTd:last-child {
    border-right: none;
}
.jobPremiumSearchCalendarTableLineTdWrap {
    width: 100%;
    height: 100%;
    padding: 10px 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-line-pack: justify;
    align-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    /* 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;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; */
}
.jobPremiumSearchCalendarTableDate {
    width: 100%;
    line-height: 1;
    font-family: Roboto,Arial,Helvetica,Verdana,sans-serif;
    font-weight: 700;
    text-align: center;
}
.jobPremiumSearchCalendarTableText {
    width: 100%;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1.5;
    text-align: center;
}
.jobPremiumSearchCalendarTableText .number {
    font-family: Roboto,Arial,Helvetica,Verdana,sans-serif;
    font-size: 14px;
    font-size: 1.4rem;
}
.jobPremiumSearchCalendarTableText .note:first-child {
    padding: 0 3px 0 0;
}
.jobPremiumSearchCalendarTableText .note:last-child {
    padding: 0 0 0 3px;
}

.saturday {
    color: #3497d0;
}
.holiday {
    color: #fc3f6b !important;
}

.jobPremiumSearchInputCheckbox {
	background-color: transparent;
	border-style: none;
	color: inherit;
    font-family: inherit;
    font-size: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    font-weight: 400;
    margin: 0;
    padding: 0;
	outline: none;
	/* 透明度0 */
	filter: alpha(opacity=0);
	-moz-opacity:0;
	opacity:0;
	/* ブラウザのデフォルトのスタイルを削除 */
	-webkit-appearance: none;
	appearance: none;
	/* レイアウトから無視 */
	position: absolute;
	width: auto;
	outline: none;
}
.jobPremiumSearchInputCheckbox:focus-visible {
	outline: none;
}
.jobPremiumSearchInputCheckboxLabel {
    background-color: #fff;
    cursor: pointer;
}
.jobPremiumSearchInputCheckbox:checked + .jobPremiumSearchInputCheckboxLabel {
    /* background-color: #fcf5e8; */
    /* background-color: #f86d3b; */
    background-color: rgba(248,109,59,0.5);
}
/* .jobPremiumSearchInputCheckbox:checked + .jobPremiumSearchInputCheckboxLabel .saturday {
    text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
    -1px 1px 0 #FFF, 1px -1px 0 #FFF,
    0px 1px 0 #FFF,  0-1px 0 #FFF,
    -1px 0 0 #FFF, 1px 0 0 #FFF;
}
.jobPremiumSearchInputCheckbox:checked + .jobPremiumSearchInputCheckboxLabel .holiday {
    text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
    -1px 1px 0 #FFF, 1px -1px 0 #FFF,
    0px 1px 0 #FFF,  0-1px 0 #FFF,
    -1px 0 0 #FFF, 1px 0 0 #FFF;
} */

.jobPremiumSearchFormFooter {
    margin-top: 40px;
    width: 100%;
}
.jobPremiumSearchFormBtnWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.jobPremiumSearchFormButton {
	background-color: transparent;
	border-style: none;
	color: inherit;
    font-family: inherit;
    font-size: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    font-weight: 400;
    margin: 0;
    padding: 0;
	outline: none;

    display: block;
    margin-right: 21px;
    line-height: 1.4;
    padding: 15px 0 14px;
    border: 2px solid #afbdd6;
    border-radius: 28px;
    font-weight: 700;
    font-size: 16px;
    font-size: 1.6rem;
    background-color: #afbdd6;
    color: #fff;
    text-align: center;
    cursor: pointer;
}
.jobPremiumSearchFormButton .jobSearchFormButton:last-child {
    margin-right: 0;
}
.jobPremiumSearchFormButton_w300 {
    width: 300px;
}
.jobPremiumSearchFormButton_w200 {
    width: 200px;
}
.jobPremiumSearchFormButton__lineOrg {
    background-color: #fff;
    color: #afbdd6;
}

/* ---------------------------------
        job detail
------------------------------------*/
.c-search_list_head.detail .c-search_head {
    width: calc(100% - 280px);
}
.c-search_list_head.detail .c-search_list_head_right {
    width: 280px;
}

/* ---------------------------------
        job recommend list
------------------------------------*/
.c-recommend_slider_head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
}
.c-recommend_slider_sub {
    margin-top: 5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}
.c-recommend_slider_sub span {
    padding-right: 1em;
    font-weight: 400;
    font-size: 13px;
    font-size: 1.3rem;
}
.c-recommend_slider_sub span:last-child {
    padding-right: 0;
}

/* ---------------------------------
        requirement
------------------------------------*/
a.c-btn_form_viOrg-a {
    color: #FFF;
    margin-right: 25px;
}

/* ---------------------------------
        login
------------------------------------*/
.login__breadcrumb {
    margin-bottom: 20px;
    font-size: 1.4rem;
    color: #666;
}

.login__title {
    font-size: 2.8rem;
    color: #fba241;
    margin-bottom: 16px;
}

.login__description {
    color: #666;
    margin-bottom: 32px;
}

.login__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 24px;
    margin-top: 32px;
}

/* Login Form Block */
.login-form {
    flex: 1;
    background: #fff;
}

.login-form__info-box {
    border: 2px solid #fc3f6b;
    padding: 10px;
    text-align: left;
  }
  .login-form__info-box-text {
    font-weight: 700;
  }
  .login-form__info-box-text--color-red {
    color: #fc3f6b;
  }

.login-form__title {
    font-size: 1.8rem;
    margin-bottom: 16px;
    color: #fba241;
    border-left: 4px solid #fba241;
    padding-left: 10px;
}

.login-form__description {
    color: #666;
    margin-bottom: 24px;
    font-size: 1.4rem;
}

.login-form__form {
    background-color: #f4f4f4;
    padding: 40px;
    border-radius: 10px;
}

.login-form__group {
    margin-bottom: 20px;
    position: relative;
}

.login-form__label-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.login-form__label {
    display: block;
    margin-bottom: 8px;
    font-weight: 700;
}

.login-form__input {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 1.4rem;
    background-color: #f8f8f8;
}

.login-form__input:focus {
    outline: none;
    border-color: #f4a460;
}

.login-form__error {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: -0.05em;
    color: #fc3f6b  ;
}
* + .login-form__error {
    margin-top: 5px;
}

.login-form__note {
    font-size: 1.2rem;
    margin-top: 10px;
    color: #666;
}

.login-form__help-wrapper .login-form__help {
    font-size: 12px;
    color: #2f3fe8;
    text-decoration: none;
    cursor: pointer;
}

.login-form__help-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background-color: #999;
    color: #fff;
    font-size: 12px;
    margin-right: 2px;
}

.login-form__help:hover {
    text-decoration: underline;
}

.login-form__tooltip {
    position: absolute;
    bottom: calc(100% - 8px);
    right: 0;
    background: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 12px 16px;
    border-radius: 4px;
    font-size: 13px;
    width: max-content;
    max-width: 300px;
    line-height: 1.5;
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 10;
}

.login-form__tooltip::after {
    content: '';
    position: absolute;
    top: 100%;
    right: 10px;
    border: 6px solid transparent;
    border-top-color: rgba(0, 0, 0, 0.8);
}

.login-form__help-wrapper:hover .login-form__tooltip,
.login-form__help-wrapper:focus-within .login-form__tooltip {
    visibility: visible;
    opacity: 1;
}

.login-form__help-wrapper .login-form__tooltip-link {
    color: #f4a460;
    text-decoration: none;
}

.login-form__tooltip-link:hover {
    text-decoration: underline;
}

.login-form__button {
    display: block;
    width: 50%;
    padding: 14px;
    background: #fba241;
    color: #fff;
    border: none;
    border-radius: 28px;
    font-size: 1.6rem;
    font-weight: 700;
    cursor: pointer;
    text-align: center;
    margin: 0 auto;
}

.login-form__button--disabled {
    background-color: #cccccc;
    color: #fff;
    cursor: not-allowed;
    opacity: 0.7;
    pointer-events: none;
  }

/* Line Login Block */
.line-login {
    flex: 1;
    background: #fff;
}

.line-login__form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: column;
}
.p-register_main .line-login__form {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
}

.line-login__title {
    font-size: 18px;
    margin-bottom: 16px;
    color: #fba241;
    border-left: 4px solid #fba241;
    padding-left: 10px;
}

.line-login__description {
    color: #666;
    margin-bottom: 24px;
    font-size: 14px;
}

.line-login__button-wrapper {
    background-color: #f4f4f4;
    padding: 24px;
    border-radius: 10px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 10px;
}

.p-register_main .line-login__button-wrapper,
.p-line-cancel_main .line-login__button-wrapper {
    background-color: #fff;
    padding-bottom: 0;
}
.p-index_step_tab .line-login__button-wrapper{
    background-color: #fff;
}
.member-detail__form-group-content .line-login__button-wrapper {
    background-color: #fff;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
}

.line-login__button {
    display: inline-block;
    width: 240px;
    height: auto;
    padding: 24px;
    border: none;
    cursor: pointer;

    background-image: url('/assets/img/login/line_button_default.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.line-login__button--relate {
    background-color: #fff;
    background-image: url('/assets/img/login/line_button_relate.png');
}

.line-login__button--cancel {
    background-color: #fff;
    background-image: url('/assets/img/login/line_button_cancel.png');
}

.line-login__picture {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    object-fit: cover;
}

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

/* Support Block */
.support {
    margin-top: 24px;
    padding: 24px;
    border: 1px solid #ddd;
    border-radius: 10px;
}

.support__item {
    margin-bottom: 16px;

    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;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.support__title {
    font-size: 14px;
    color: #666;
    margin-bottom: 8px;
}

.support__button {
    display: block;
    width: 100%;
    padding: 12px;
    text-decoration: none;
    text-align: center;
    border-radius: 4px;
    transition: background-color 0.3s;
}

.support__item .support__button--primary,
.support__item .support__button--secondary {
    background: #fba241;
    color: #fff;
    font-weight: 700;
    font-size: 1.6rem;
    width: 50%;
    border-radius: 28px;
}

/* ---------------------------------
        reminder
------------------------------------*/
.password-reset {
    width: 540px;
    background-color: #FFFFFF;
    margin: 0 auto;
    padding: 32px;
}

.password-reset__title {
    font-size: 2.8rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 24px;
    color: #fba241;
}

.password-reset__description {
    text-align: center;
    margin-bottom: 32px;
    line-height: 1.6;
}

.password-reset__form-group {
    margin-bottom: 24px;
}

.password-reset__label {
    display: block;
    margin-bottom: 8px;
}

.password-reset__input {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 4px;
}

.password-reset__input:focus {
    outline: none;
    border-color: #fba241;
}

.password-reset__submit {
    display: block;
    width: 50%;
    padding: 16px;
    color: #fff;
    font-weight: 700;
    font-size: 1.6rem;
    background-color: #fba241;
    border: none;
    border-radius: 28px;
    cursor: pointer;
    margin: 0 auto;
}
.reminder .c-btn_border .c-btn_org {
    margin-bottom: 16px;
}
.reminder .c-register_complete_txt {
    text-align: center;
}

.password-reset__input-wrapper {
    position: relative;
}
  
.password-reset__toggle-visibility {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border: none;
    background: transparent;
    cursor: pointer;
    padding: 0;
}
  
.password-reset__toggle-visibility::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-image: url("../img/login/eye.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.password-reset__toggle-visibility.show-password::before {
    background-image: url("../img/login/eye_hidden.png");
}


/* ---------------------------------
        premium search
------------------------------------*/
.p-apply_info {
    margin: 20px 0;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: #fff;
}

.p-apply_info__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;

    position: relative;
}

.p-apply_info__container::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 1px;
    height: 70%;
    background-color: #ddd;
  }

.p-apply_info__section {
    width: 100%;
    padding: 36px;
    text-align: left;
}

.p-apply_info__recall-title {
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 15px;
    color: #f86d3b;
}

.p-apply_info__line-title {
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 15px;
    color: #00b900;
}

.p-apply_info__description {
    line-height: 1.6;
    margin-bottom: 20px;
}

.p-apply_info__button {
    color: #fff;
}

.p-apply_info__button .c-button--login {
    color: #fff;
    text-align: center;
}

.c-button {
    display: inline-block;
    min-width: 200px;
    padding: 12px 24px;
    border: none;
    border-radius: 28px;
    font-size: 1.8rem;
    font-weight: 700;
    cursor: pointer;
}

.c-button:hover {
    opacity: 0.8;
}

.c-button--login {
    background-color: #f86d3b;
    color: #fff;
}

.c-button--line {
    background-color: #00B900;
    color: #fff;
}

/* ---------------------------------
        register
------------------------------------*/
.c-ttl_left {
    margin-bottom: 15px;
    color: #fba241;
    font-weight: 700;
    font-size: 28px;
    font-size: 2.8rem;
    text-align: left;
}
.register .c-register {
    gap: 20px;
}
.c-register_head {
    margin-bottom: 40px;
    width: 50%;
    max-width: 520px;
}

.c-register_head_txt {
    margin-top: 20px;
    text-align: left;
    line-height: 1.8;
}

.c-register_head_merit {
    margin-top: 40px;
    background-color: #fff;
    border-radius: 8px;
}

.c-register_head_merit_ttl {
    text-align: left;
    font-size: 1.4rem;
    font-weight: 700;
    color: #ff6b2b;
}

.c-register_head_merit_ttl span {
    display: block;
    font-size: 2.4rem;
    color: #333;
}

.c-register_head_merit_list {
    margin-top: 12px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 10px;
}

.c-register_head_merit_list li {
    width: 100%;
    padding: 10px;
    font-size: 1.6rem;
    font-weight: 700;
    border: 1px solid #fc926e;
    border-radius: 10px;
    color: #ff6b2b;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    gap: 8px;
}

.c-register_head_merit_list li span {
    font-size: 3rem;
}

.c-register_head_login {
    position: relative;
    margin-top: 40px;
    border: 1px solid #ddd;
    border-radius: 8px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    flex-direction: column;
}


.c-register_recall,
.c-register_line {
    padding: 20px;
    border-radius: 8px;
}

.c-register_recall {
    position: relative;
    padding-bottom: 30px;
}
  
.c-register_recall::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    height: 1px;
    background-color: #ddd;
}

.c-register_recall h3,
.c-register_line h3 {
    font-size: 2.2rem;
    font-weight: 700;
    margin-bottom: 10px;
    display: flex;
    align-items: center;
}
.c-register_recall_ttl {
    color: #f86d3b;
}
.c-register_line_ttl {
    color: #00b900;
}
.c-register_line_icon {
    width: 24px;
    height: 24px;
    margin-right: 8px;
}

.c-register_recall p,
.c-register_line p {
    margin-bottom: 15px;
    line-height: 1.6;
}

.c-register_head_login .c-btn_form_org {
    background: #ff6b00;
    color: #fff;
    border: none;
    padding: 12px 30px;
    border-radius: 28px;
    cursor: pointer;
    font-size: 1.6rem;
    font-weight: 700;
}

.c-register_head_login .c-btn_form_line {
    background: #00B900;
    color: #fff;
    border: none;
    padding: 12px 30px;
    border-radius: 28px;
    cursor: pointer;
    font-size: 1.6rem;
    font-weight: 700;
}

/* ---------------------------------
        member detail
------------------------------------*/
.member-detail {
    margin: 20px auto;
    max-width: 980px;
}

.member-detail__title {
    font-size: 2.6rem;
    text-align: center;
    color: #fba241;
    margin-bottom: 10px;
}

.member-detail__notices {
    margin-top: 10px;
    margin-bottom: 20px;
}

.member-detail__notice {
    background-color: #fff;
    border: 1px solid #e0e0e0;
    margin-bottom: 20px;
    border: 1px solid #fba241;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.member-detail__notice:last-child {
    margin-bottom: 0;
  }

.member-detail__notice-label {
    width: 200px;
    background-color: #fba241;
    color: white;
    display: inline-block;
    font-size: 1.6rem;
    padding: 10px 20px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.member-detail__notice-content {
    background-color: #fffbef;
    font-size: 1.6rem;
    padding: 10px 20px;
    flex: 1;
}

.member-detail__form-group {
    display: flex;
    border-bottom: 1px solid #e0e0e0;
}

.member-detail__form-group:first-child {
    border-top: 1px solid #e0e0e0;
}

.member-detail__form-group-label {
    width: 240px;
    font-size: 1.6rem;
    border-right: 1px solid #e0e0e0;
    padding: 20px;

    display: flex;
    align-items: center;
    justify-content: space-between;
}
.member-detail__form-group-label--required {
    display: inline-block;
    line-height: 1;
    margin-top: -1px;
    margin-left: 10px;
    padding: 5px 10px 7px;
    background-color: #8b8787;
    color: #fff;
    font-weight: 700;
    font-size: 12px;
    font-size: 1.2rem;
}

.member-detail__form-group-content {
    flex: 1;
    font-size: 1.6rem;
    padding: 20px;
}
.member-detail__form-group-content .p-index_step_tab_list_ee li {
    width: 33%;
}


.member-detail__form-group-content .input-text-type {
    width: 60%;
    padding: 10px;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    font-size: 1.6rem;
}
.member-detail__form-group-content .p-index_step_tab_row_zip .p-index_step_tab_row_zip_cont {
    width: 100%;
}

.member-detail__buttons {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-top: 2rem;
}

.member-detail__button {
    width: 300px;
    padding: 14px 20px;
    border-radius: 28px;
    border: none;
    font-size: 1.6rem;
    cursor: pointer;
    font-weight: 700;
}

.member-detail__button--submit {
    background-color: #fba241;
    color: #fff;
}

.member-detail__button--disabled {
    background-color: #cccccc;
    color: #fff;
    cursor: not-allowed;
    opacity: 0.7;
    pointer-events: none;
  }

.member-detail__button--edit {
    background-color: #fff;
    color: #fba241;
    border: 1px solid #fba241;
}

@media print, screen and (min-width:1060px) and (max-width:1350px) {
    /* ---------------------------------
            job search
    ------------------------------------*/
    .jobSearchFormSelectedText__type2 {
        margin-top: 10px;
    }
}
@media print, screen and (max-width:1230px) {
    /* ---------------------------------
            job search
    ------------------------------------*/
    .jobSearchFormLink__calendar {
        margin-top: 10px;
        margin-left: 0;
        width: 100%;
        text-align: center;
    }
}

@media print, screen and (max-width:1199px) {
    /* ---------------------------------
            form
    ------------------------------------*/
    /* one column */
    .p-index_step_tab_list_ee li {
        width: 50%;
    }
}
@media print, screen and (max-width:1059px) {
    /* ---------------------------------
            form
    ------------------------------------*/
    /* two column */
    .p-index_step_tab_year {
        margin-left: 0;
    }

    /* one column */
    .p-index_step_tab {
        padding: 30px;
    }
    .p-index_step_tab_row_zip_ttl {
        width: 100%;
    }

    /* ---------------------------------
            job search
    ------------------------------------*/
    .jobSearchFormListItem {
        position: relative;
        width: 48%;
    }
    .jobSearchFormListItem__leftM15 {
        margin-left: 4%;
    }
    .jobSearchFormListItem__iconCross {
        position: relative;
        width: 100%;
        margin-left: 0;
        margin-top: 4%;
    }
    .jobSearchFormListItem__iconCross::before {
        top: -60%;
        left: 50%;
        margin-left: -2%;
        width: 4%;
        height: 4%;
    }

    .jobSearchFormListDetailColumn {
        width: 100%;
    }
    .jobSearchFormListDetailColumn:nth-child(2n+1) {
        border-right: 1px dotted silver;
    }
    .jobSearchFormBtnWrap {
        width: 100%;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .jobSearchFormBox .jobSearchFormButton {
        margin-right: 0;
    }
    .jobSearchFormBox .jobSearchFormButton_w300 {
        margin-bottom: 30px;
        width: 100%;
    }
    .jobSearchFormBox .jobSearchFormButton_w200 {
        width: 48%;
    }
    .jobSearchFormBox .jobSearchFormButton_w200 {
        width: 48%;
    }
}
@media screen and (min-width: 768px) {
    /* ---------------------------------
            form
    ------------------------------------*/
    /* two column */
    .c-step_tab {
        padding: 20px 40px 40px;
    }

    /* one column */
    .formStepInputerror__year {
        margin-left: 30px;
    }
    .p-index_step_tab_row_zip_cont:last-child {
        margin-right: 0;
    }
    .p-index_step_tab_row_zip_ttl {
        padding-left: 0;
    }
    .p-index_step_tab_agree {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content:flex-start;
    }
}

@media screen and (max-width: 767px) {

    /* ---------------------------------
            header
    ------------------------------------*/
    .l-header_logo .-seo {
        position: fixed;
        overflow-x: auto;
        overflow-y: hidden;
        word-break: keep-all;
        white-space: nowrap;
        line-height: 1;
        padding-bottom: 5px;
    }
    .l-header_logo a {
        margin-top: 0;
    }

    /* ---------------------------------
            form
    ------------------------------------*/
    .c-ttl_search {
        font-size: 1.6rem;
    }
    .formStepInputItemHalf {
        width: 100%;
    }
    .formStepInputItemHalf:nth-child(n+2) {
        margin-left: 0;
    }
    .formStepButtonBox {
        margin-top: 20px;
    }
    
    /* two column */
    .c-step_tab_row {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .c-step_tab_row_cont {
        margin-top: 0;
        width: 49%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .c-step_tab_row_ttl {
        width: 3em;
        padding-top: 12px;
    }
    .c-step_tab_row_input {
        margin-top: 0;
        width: calc(100% - 3em);
    }
    .c-step_tab_comment {
        height: 75px;
    }
    .c-step_tab_agree {
        padding-bottom: 0;
    }
    .c-step_tab_btn_next.disabled,
    .c-step_tab_btn_submit.disabled {
        border: 1px solid #cfbdb7;
    }

    /* one column */
    .p-index_step_tab_row {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .p-index_step_tab_row_cont {
        margin-top: 0;
        width: 49%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .p-index_step_tab_row_ttl {
        width: 3em;
        padding-top: 12px;
    }
    .p-index_step_tab_row_input {
        margin-top: 0;
        width: calc(100% - 3em);
    }
    .p-index_step_tab_comment {
        height: 75px;
    }

    .p-index_step_tab_list_ee {
        padding: 7.5px 15px;
    }
    .p-index_step_tab_list_ee--ilne {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .p-index_step_tab_list_ee li {
        width: 100%;
        padding: 7.5px 0;
    }
    .p-index_step_tab_year {
        margin-left: 0;
    }
    .formStepInputerror_year {
        padding-left: 0;
    }
    .p-index_step_tab_row_zip_cont {
        padding-left: 0;
    }
    .p-index_step_tab_txt {
        padding-left: 0;
    }
    .c-btn_w300 {
        width: 49%;
    }
    .p-index_step_tab_label {
        width: calc(100% - 20px);
    }
    .p-index_step_tab_agree {
        margin-left: 0;
    }
    .p-index_step_tab .c-btn_form_org.p-index_step_tab_btn_next.disabled,
    .p-index_step_tab .c-btn_form_org.p-index_step_tab_btn_submit.disabled {
        border: 1px solid #cfbdb7;
    }

    /* ---------------------------------
            job search
    ------------------------------------*/
    .p-search_head {
        margin-bottom: 15px;
    }
    .p-search_head_switch {
        width: 100%;
        margin-bottom: 0;
    }
    .p-search_pager_inner {
        /* -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between; */
        font-size: 12px;
        font-size: 1.2rem;
    }
    .jobSearchFormTabItem {
        width: 49%;
        margin-right: 2%;
    }
    .jobSearchFormTabItem:last-child {
        margin-right: 0;
    }
    .jobSearchFormTabLabel {
        padding: 10px 0;
        font-size: 12px;
        font-size: 1.2rem;
    }
    .jobSearchFormContents {
        padding: 25px 5%;
    }
    .jobSearchFormListItem__iconCross {
        position: relative;
        width: 100%;
        margin-left: 0;
        margin-top: 2.5vh;
        font-size: 1.3rem;
    }
    .jobSearchFormListItem__iconCross::before {
        top: -2vh;
        font-size: 1.3rem;
    }
    .jobSearchFormBox .jobSearchFormInputSelect {
        padding: 12.5px 30px 12.5px 20px;
        font-size: 1.3rem;
    }
    .jobSearchFormListDetailDlType1Dt {
        width: 100%;
        padding: 15px 5%;
    }
    .jobSearchFormListDetailDlType1DtText {
        font-size: 13px;
        font-size: 1.3rem;
    }
    .jobSearchFormListDetailDlType1Dd {
        width: 100%;
        padding: 15px 5%;
    }
    .jobSearchFormBox .jobSearchFormListDetailModalBtn {
        padding: 0 0 0 5%;
        font-size: 12px;
        font-size: 1.2rem;
    }
    .jobSearchFormBox .jobSearchFormListDetailModalBtn.active::before {
        left: 6.5px;
        width: 15px;
        height: 15px;
        margin-top: -7px;
    }
    .jobSearchFormBox .jobSearchFormListDetailModalBtn.active::after {
        top: 12px;
        left: 10px;
        width: 3.5px;
        height: 7px;
        border-right: 2px solid #f86d3b;
        border-bottom: 2px solid #f86d3b;
    }
    .jobSearchFormBox .jobSearchFormListDetailModalBtn__prefCity.active::after {
        border-color: #f86d3b;
    }
    .jobSearchFormBox .jobSearchFormListDetailModalBtn__route.active::after {
        border-color: #fba241;
    } 
    .jobSearchFormListDetailModalBtnText {
        padding: 8.5px 0 8.5px 25px;
    }
    .jobSearchFormBox .jobSearchFormListDetailModalBtn__prefCity .jobSearchFormListDetailModalBtnText {
        background-position: 5px center;
    }
    .jobSearchFormBox .jobSearchFormListDetailModalBtn__route .jobSearchFormListDetailModalBtnText {
        background-position: 0px center;
    }
    .jobSearchFormListDetailDlType2Dt {
        padding: 15px 5%;
    }
    .jobSearchFormListDetailDlType2DtAddIconText {
        font-size: 13px;
        font-size: 1.3rem;
    }
    .jobSearchFormListDetailDlType2DtAddIconText:after {
        font-size: 13px;
        font-size: 1.3rem;
    }
    .jobSearchFormListDetailDlType2Dd {
        padding: 15px 5%;
    }
    .jobSearchFormInputChoiceItem {
        min-width: 50%;
    }
    .jobSearchFormInputCheckboxLabel::before {
        top: 0.4em;
    }
    .jobSearchFormInputCheckbox:checked + .jobSearchFormInputCheckboxLabel::after {
        top: 0.5em;
    }
    .jobSearchFormInputRadioLabel::before {
        top: 0.4em;
    }
    .jobSearchFormInputRadio:checked + .jobSearchFormInputRadioLabel::after {
        top: 0.6em;
    }
    .jobSearchFormBox .jobSearchFormButton {
        border: 1px solid #f86d3b;
        padding: 9px 0;
        font-size: 13px;
        font-size: 1.3rem;
    }
    .jobSearchFormFooter {
        margin-top: 25px;
    }

    /* ---------------------------------
            job search modal
    ------------------------------------*/
    .jobSearchFormModalContents {
        width: 90%;
        max-width: 100vw;
        /* height: 72vh; */
        height: 85vh;
        padding: 20px;
    }
    .jobSearchFormModalTitle {
        padding: 10px;
    }
    .jobSearchFormModalTitleText {
        font-size: 12px;
        font-size: 1.2rem;
    }
    .jobSearchFormModalColumnWrap {
        padding: 15px 5% 20px;
    }
    .jobSearchFormModalColumn {
        width: 100%;
    }
    .jobSearchFormModalColumnTitle {
        padding-bottom: 10px;
        border-bottom: 1.5px dotted #f86d3b;
    }
    .jobSearchFormModalColumnTitleText {
        font-size: 14px;
        font-size: 1.4rem;
    }
    .jobSearchFormModalColumnTitleText__sub {
        font-size: 11px;
        font-size: 1.1rem;
    }
    .jobSearchFormModalColumn:nth-child(1) .jobSearchFormModalColumnContents {
        height: auto;
        padding-right: 0;
    }
    .jobSearchFormModalColumn:nth-child(2) {
        margin-top: 2vh;
    }
    .jobSearchFormModalColumn:nth-child(2) .jobSearchFormModalColumnContents {
        /* height: 35vh; */
        /* height: 27vh; */
        height: auto;
    }

    .jobSearchFormModal .jobSearchFormModalInputSelect,
    .jobSearchFormModal .searchSelectView {
        padding: 12.5px 30px 12.5px 20px;
        font-size: 1.3rem;
    }

    .jobSearchFormModalInputChoiceItemTitle {
        padding: 10px 0 13px;
        font-size: 12px;
        font-size: 1.2rem;
    }
    .jobSearchFormModalInputChoiceItem {
        padding-right: 2%;
        min-width: 50%;
    }
    .jobSearchFormModalInputChoiceItem__3column {
        min-width: 50%;
    }
    .jobSearchFormModalFooter {
        margin-top: 2vh;
    }
    .jobSearchFormModal .jobSearchFormModalButton_w340 {
        width: 48%;
    }
    .jobSearchFormModal .jobSearchFormModalButton {
        margin-right: 4%;
        border: 1px solid #f86d3b;
        padding: 9px 0;
        font-size: 1.2rem;
    }
    .jobSearchFormModal .jobSearchFormModalButton:last-child {
        margin-right: 0;
    }

    .searchSelectBox {
        padding-right: 0;
    }
    .filterTextWrap {
        padding: 12.5px 25px 12.5px 10px;
        font-size: 1.2rem;
    }
    button.filterBtn {
        margin-top: -3.25px;
        width: 10px;
        height: 10px;
    }

    /* ---------------------------------
            job list
    ------------------------------------*/
    .noListFlame {
        margin-bottom: 23px;
        padding: 20px 5%;
    }
    .noListFlameTitle {
        font-size: 1.3rem;
    }
    .c-search_head {
        width: auto;
    }
    .c-search_list_head .c-search_head {
        margin-bottom: 0;
    }
    .c-search_list_head_right {
        margin-top: 15px;
        width: auto;
    }
    .c-search_list_head_right_sub {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .c-search_list_head_right_sub span {
    
    }
    .c-search_list_head_right_fav {
        position: absolute;
        right: 1%;
        top: 0;
        width: 100%;
    }
    .c-search_list_head_right_fav_cont {
        width: 35px;
        height: 35px;
    }
    .c-search_list_head_right_fav_balloon {
        right: -10%;
    }
    .c-search_list_head_right_fav_balloon_txt:before {
        left: auto;
        right: 0;
    }
    .c-search_list_head_right_fav_balloon_txt:after {
        left: auto;
        right: 0;
    }
    .c-search_list_date dd {
        width: auto;
    }
    .c-search_list_row_tag li {
        margin-right: 0;
        margin-left: 15px;
    }

    .c-search_list_txt_wrap {
        max-height: 85px;
    }
    .c-search_list_txt_btn {
        display: block;
        max-width: 400px;
    }

    /* ---------------------------------
            job premium list
    ------------------------------------*/
    .jobPremiumSearchTable {
        border-top: 1px dotted silver;
        border-bottom: 1px dotted silver;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .jobPremiumSearchTableTitle {
        width: 100%;
        padding: 15px 5%;
        border-bottom: 1px dotted silver;
    }
    .jobPremiumSearchTableTitleWrap {

    }
    .jobPremiumSearchTableTitleText {
        margin-right: 10px;
        font-weight: 700;
        line-height: 1;
        color: #fff;
    }
    .jobPremiumSearchTableTitleSelectedText {
        display: inline-block;
        border-radius: 20px;
        border: 1px solid #f86d3b;
        padding: 0 10px;
        font-size: 11px;
        font-weight: 700;
        line-height: 1.5;
        color: #f86d3b;
        background-color: #FFF;
    }
    .jobPremiumSearchTableDesc {
        width: 100%;
        padding: 15px 5%;
    }
    .jobPremiumSearchTableDesc .jobSearchFormInputSelect {
        padding: 12.5px 30px 12.5px 20px;
        font-size: 1.3rem;
    }
    .jobPremiumSearchModalBtn {
        width: 50%;
        padding: 0;
        font-size: 12px;
        font-size: 1.2rem;
    }
    .jobPremiumSearchModalBtn.active {
        color: #f86d3b;
        background-color: #f86d3b;
        text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF, -1px 1px 0 #FFF, 1px -1px 0 #FFF, 0px 1px 0 #FFF, 0-1px 0 #FFF, -1px 0 0 #FFF, 1px 0 0 #FFF;
    }
    .jobPremiumSearchModalBtn::before {
        left: 6.5px;
        width: 15px;
        height: 15px;
        margin-top: -7px;
    }
    .jobPremiumSearchModalBtn.active::before {
        color: #f86d3b;
    }
    .jobPremiumSearchModalBtn.active::after {
        top: 12px;
        left: 10px;
        width: 3.5px;
        height: 7px;
        border-right: 2px solid #f86d3b;
        border-bottom: 2px solid #f86d3b;
    }
    .jobPremiumSearchModalBtnText {
        padding: 8.5px 0 8.5px 25px;
        background-position: 5px center;
    }
    .jobPremiumSearchTableDesc .modalCheck {
        width: 100%;
        padding-left: 0;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }
    .jobPremiumSearchTableDesc .modalCheckTitle {
        margin-right: 10px;
        width: auto;
    }
    .jobPremiumSearchTableDesc .-cont {
        /* width: 100%; */
        width: auto;
    }
    .jobPremiumSearchTableDesc .modalCheckText {
        margin-top: 0;
    }

    .p-oneTime_ttl .modalCheck {
        width: 100%;
        padding-left: 0;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
    }
    .p-oneTime_ttl .modalCheckTitle {
        margin-right: 10px;
        width: auto;
    }
    .p-oneTime_ttl .modalCheckTitle + .-cont {
        width: auto;
    }

    /* jop premium calender */
    .jobPremiumSearchCalendarWrap {
        min-width: 90%;
        /* border-left: 5px solid #afbdd6;
        border-right: 5px solid #afbdd6; */
        background-color: #afbdd6;

        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        /* -ms-flex-wrap: wrap;
        flex-wrap: wrap; */

        /* -webkit-transform: translate3d(0,0,0);
        -ms-transform: translate3d(0,0,0);
        transform: translate3d(0,0,0); */
    }
    .jobPremiumSearchCalendarTableWrap {
        width: 100%;
        border-left: 4px solid #afbdd6;
        border-right: 4px solid #afbdd6;
        border-bottom: 4px solid #afbdd6;
    }
    .jobPremiumSearchCalendarTableWrap:nth-child(odd) {
        border-left: 4px solid #afbdd6;
    }
    .jobPremiumSearchCalendarTableWrap:nth-child(even) {
        border-right: 4px solid #afbdd6;
    }
    .jobPremiumSearchCalendarBtn {
        top: 6px;
        width: 70px;
        font-size: 14px;
        font-size: 1.4rem;
    }
    .prevBtn {
        left: 4px;
        padding: 5px 0 5px 20px;
    }
    .nextBtn {
        right: 4px;
        padding: 5px 20px 5px 0;
    }

    .jobPremiumSearchCalendarTableTitle {
        font-size: 16px;
        font-size: 1.6rem;
    }
    .jobPremiumSearchCalendarTableLineTh {
        width: 14.25%;
    }
    .jobPremiumSearchCalendarTableLineTh:last-child {
        border-right: none;
    }
    .jobPremiumSearchCalendarTableLineTd {
        /* height: 70px; */
        min-height: 50px;
        height: auto;
    }
    .jobPremiumSearchCalendarTableLineTd:last-child {
        border-right: none;
    }
    
    .jobPremiumSearchCalendarTableLineTdWrap {
        padding: 5px;
    }
    .jobPremiumSearchCalendarTableText {
        line-height: 1.2;
    }
    .jobPremiumSearchCalendarTableText .number {
        line-height: 1;
        font-size: 12px;
        font-size: 1.2rem;
    }
    .jobPremiumSearchFormButton {
        margin-right: 0;
        padding: 9px 0;
        font-size: 13px;
        font-size: 1.3rem;
    }
    .jobPremiumSearchFormButton_w300 {
        margin-bottom: 30px;
        width: 100%;
    }
    .jobPremiumSearchFormButton_w200 {
        width: 50%;
    }

    /* ---------------------------------
            job detail
    ------------------------------------*/
    .c-search_list_head.detail .c-search_head {
        width: auto;
    }
    .c-search_list_head.detail .c-search_list_head_right {
        width: auto;
    }

    /* ---------------------------------
            job recommend list
    ------------------------------------*/
    .c-recommend_slider_sub span {
        font-size: 10px;
        font-size: 1rem;
    }

    /* ---------------------------------
            requirement
    ------------------------------------*/
    a.c-btn_form_viOrg-a {
        color: #FFF;
        margin-right: 2%;
    }

    /* ---------------------------------
            job cv 
    ------------------------------------*/
    .c-cv_fixed_cont + .c-cv_fixed_cont{
        padding-top: 0;
    }
    /* ---------------------------------
            login
    ------------------------------------*/
    .login__breadcrumb {
        padding: 0 16px;
    }

    .login__title {
        text-align: center;
    }

    .login__description {
    }

    .login__container {
        flex-direction: column;
        gap: 0;
        margin-top: 0;
    }

    .login-form,
    .line-login {
        padding: 20px 16px;
        border-radius: 0;
        box-shadow: none;
    }

    .login-form__title,
    .line-login__title {
        font-size: 16px;
        margin-bottom: 12px;
    }

    .login-form__description,
    .line-login__description {
        font-size: 13px;
        margin-bottom: 20px;
    }

    .p-register_main .line-login__button-wrapper,
    .p-line-cancel_main .line-login__button-wrapper {
        background-color: #fff;
        padding-bottom: 24px;
    }

    .c-register_line .line-login__button {
        margin: 0 auto;
        width: 96%;
        min-width: initial;
    }

    .login-form__group {
        margin-bottom: 16px;
    }

    .login-form__label {
        font-size: 14px;
    }

    .login-form__input {
        font-size: 16px;
        padding: 10px;
    }

    .login-form__help-wrapper {
        position: static;
        display: block;
        margin-top: 8px;
        text-align: right;
    }

    .line-login__button {
        width: 31.29vw;
        min-width: 200px;
        background-color: #fff;
        font-size: 15px;
    }

    .login .line-login__button {
        background-color: #f4f4f4;
    }

    .login-form__button {
        font-size: 15px;
    }

    .support {
        margin-top: 20px;
    }

    .support__title {
        width: 40%;
    }

    .support__button {
        width: 60%;
        padding: 10px;
        font-size: 14px;
        margin-bottom: 12px;
        border-radius: 4px;
        color: white;
    }

    .support__button--primary {
        background: #f4a460;
    }

    .support__button--secondary {
        background: #666;
    }

    .login-form__tooltip {
        position: fixed;
        bottom: auto;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: calc(100% - 48px);
        max-width: none;
        background: rgba(0, 0, 0, 0.9);
        padding: 16px;
        border-radius: 8px;
        font-size: 14px;
        text-align: center;
    }

    .login-form__tooltip::after {
        display: none;
    }
    /* ---------------------------------
            reminder
    ------------------------------------*/
    .password-reset {
        width: 100%;
    }
    /* ---------------------------------
            register
    ------------------------------------*/
    .c-ttl_left {
        text-align: center;
    }
    .c-register_head {
        margin-bottom: 30px;
        width: 100%;
        max-width: none;
    }
    
    .c-register_head_txt {
        margin-top: 15px;
    }
    
    .c-register_head_merit {
        margin-top: 30px;
    }
    .c-register_head_login .c-btn_form_org {
        margin: 0 auto;
        font-size: 1.2rem;
        padding: 12px 4px;
        width: 80%;
    }

    .c-register_head_login {
        flex-direction: row;

        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        gap: 10px;


        border: none;
    }
    .c-register_recall, .c-register_line {
        padding: 10px;
        width: 50%;
    }
    .c-register_recall {
        border: 1px solid #ddd;
        border-radius: 8px;
    }
    .c-register_recall::after {
        display: none;
    }
    .c-register_line {
        border: 1px solid #ddd;
        border-radius: 8px;
    }
    .c-register_recall h3, .c-register_line h3 {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        font-size: 1.8rem;
    }

    .c-register_recall p, .c-register_line p {
        text-align: center;
    }

    .c-register_line_ttl {
        min-height: 60px;
    }
    /* ---------------------------------
        premium search

    ------------------------------------*/
    .p-apply_info {
        background-color: #f4f4f4;
        border: none;
    }
    .p-apply_info__container {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        gap: 10px;


        border: none;
      }
    
    .p-apply_info__container::after {
        display: none;
    }

    .p-apply_info__section {
        width: 50%;
        padding: 8px;
        background-color: #fff;
        border-radius: 8px;
    }

    .p-apply_info__recall-title,
    .p-apply_info__line-title {
        text-align: center;
        font-size: 1.8rem;
        margin-bottom: 0;
    }
    .p-apply_info__line-title {
        min-height: 60px;
        margin-top: 4px;
    }

    .p-apply_info__description {
        margin-bottom: 15px;
        text-align: center;
    }

    .p-apply_info__button {
        text-align: center;
    }

    .p-apply_info__button .line-login__button {
        width: 90%;
        min-width: initial;
    }


    .c-button {
        width: 80%;
        min-width: auto;
        display: block;
        margin: 0 auto;
        padding: 10px 20px;
        font-size: 1.6rem;
    }
    .p-apply_info__button .c-button {
        margin: 0 auto;
        width: 90%;
        text-align: center;
        font-size: 1.4rem;
        padding: 10px 0;
    }
    /* ---------------------------------
        member detail
    ------------------------------------*/
    .member-detail {
        margin: 10px;
    }

    .member-detail__title {
        font-size: 2rem;
        margin-bottom: 16px;
    }

    .member-detail__notice {
        flex-direction: column;
    }

    .member-detail__notice-label {
        font-size: 1.4rem;
        padding: 10px 16px;
        width: 100%;
    }

    .member-detail__notice-content {
        font-size: 1.4rem;
        padding: 10px 16px;
    }

    .member-detail__form-group {
        flex-direction: column;
    }

    .member-detail__form-group-label {
        width: 100%;
        border-right: none;
        border-bottom: 1px solid #e0e0e0;
        padding: 12px 16px;
        background-color: #f5f5f5;
        font-size: 1.4rem;
    }

    .member-detail__form-group-content {
        padding: 12px 16px;
        font-size: 1.4rem;
    }
    
    .member-detail__form-group-content .input-text-type {
        width: 100%;
    }

    .member-detail__form-group-content .p-index_step_tab_list_ee li {
        width: 50%;
    }

    .member-detail__buttons {
        flex-direction: column;
        gap: 12px;
        margin-top: 24px;
        padding: 0 16px;
    }

    .member-detail__button {
        width: 100%;
        padding: 14px;
        font-size: 1.6rem;
    }
    
}
