/* ----------------------------------------------------
　求人紹介一覧ページ
---------------------------------------------------- */
#page-jobList {
    background: url(../img/job_introduction/con1_bg.png);
    padding: 0 0 20px 0;
}

#page-jobList .mv img {
    width: 100%;
    max-width: 1600px;
    display: block;
    margin: 0 auto;
}

#page-jobList .ttl {
    text-align: center;
    margin: 25px 0 40px 0;
}

#page-jobList .job_list {
    width: 1000px;
    margin: 0 auto;
}

#page-jobList .job_list ul li {
    background: #fff;
    border: 2px solid #f7d3da;
    border-radius: 10px;
    margin: 0 0 40px 0;
}

#page-jobList .job_list .job_area {
    color: #333;
    display: block;
    padding: 30px;
    text-decoration: none;
}

#page-jobList .job_list a.job_area:hover {
    opacity: 0.75;
}

#page-jobList .job_list a.job_area:hover .job_ttl {
    text-decoration: none;
}

#page-jobList .top_area .left {
    box-sizing: border-box;
    height: 162px;
    text-align: center;
    width: 250px;
}

#page-jobList .top_area .right {
    width: 665px;
}

#page-jobList .top_area .left img {
    max-height: 100%;
    max-width: 100%;
}

#page-jobList .company_name {
    font-size: 16px;
    font-weight: bold;
}

#page-jobList .job_ttl {
    font-size: 24px;
    color: #36b;
    text-decoration: underline;
    font-weight: bold;
    margin: 10px 0 0 0;
    line-height: 1.6;
}

#page-jobList .detail {
    margin: 20px 0 0 0;
}

#page-jobList .detail .tag_aera {
    margin: 20px 0 0 0;
    width: 710px;
}

#page-jobList .detail .tag_aera li {
    border: 3px solid #f7d3da;
    border-radius: 5px;
    margin: 0px 7px 10px 0;
    padding: 2px 7px;
    display: inline-block;
}

#page-jobList .salary_area table {
    width: 100%;
}

#page-jobList .salary_area tr {
    border-bottom: 1px solid #f0f0f0;
}

#page-jobList .salary_area th {
    position: relative;
    padding: 5px 0 5px 35px;
    font-weight: bold;
    color: #555;
    font-size: 14px;
    width: 100px;
    vertical-align: middle;
}

#page-jobList .salary_area td {
    vertical-align: middle;
}

#page-jobList .salary_area th:before {
    content: '';
    position: absolute;
    border-left: 5px solid #af274c;
    width: 5px;
    height: 15px;
    left: 15px;
    top: 50%;
    margin: -9px 0 0 0;
}

#page-jobList .detail .period_end {
    border: 2px solid #af274c;
    border-radius: 10px;
    padding: 10px 20px;
    text-align: center;
    margin: 20px 0 0 0;
}

#page-jobList .detail .period_end .ttl {
    margin: 0 0 5px 0;
}

#page-jobList .detail .period_end .ttl span {
    color: #af274c;
    font-weight: bold;
}

#page-jobList .detail .period_end .after_day {
    font-size: 20px;
    font-weight: bold;
}

#page-jobList .detail .period_end .after_day span {
    color: #af274c;
}

#page-jobList .detail .period_end .date_area {
    color: #707070;
    font-weight: bold;
}

#page-jobList .detail .period_end .any_time {
    font-size: 25px;
    font-weight: bold;
    padding: 12px 56px;
}

#page-jobList .detail .period_end .any_time {
    font-size: 25px;
    font-weight: bold;
    padding: 12px 56px;
}

#page-jobList .state_icon {
    margin: 15px 0 0 0;
}

#page-jobList .state_icon img {
    margin: 0 5px 0 0;
}

#page-jobList .pagenate {
    font-size: 16px;
    font-weight: bold;
    line-height:1.4;
    margin-bottom: 10px;
    text-align: center;
}

#page-jobList .pagenate ul {
    display: flex;
    justify-content: center;
    align-items: center;
}

#page-jobList .pagenate ul li{
    background: none;
    border: none;
    border-radius: 0;
    margin: 0;
}

#page-jobList .pagenate ul li span {
    display: inline-block;
    margin: 0 5px;
}

#page-jobList .pagenate ul li span.disabled {
    background: #fff;
    border: 3px solid #ddd;
    border-radius: 10px;
    color: #6f6e6f;
    padding: 6px 15px 4px;
}

#page-jobList .pagenate ul li span.current {
    background: #fff;
    border: 3px solid #ddd;
    border-radius: 50%;
    color: #6f6e6f;
    padding: 5px 12px 4px;
}

#page-jobList .pagenate ul li.numbers span a {
    background: #ddd;
    border: 3px solid #ddd;
    border-radius: 50%;
    color: #6f6e6f;
    display: block;
    padding: 5px 12px 4px;
    text-decoration: none;
}

#page-jobList .pagenate ul li span.prev a,
#page-jobList .pagenate ul li span.next a {
    background: #ddd;
    border: 3px solid #ddd;
    border-radius: 10px;
    color: #6f6e6f;
    display: block;
    padding: 6px 15px 4px;
    text-decoration: none;
}

#page-jobList .pagenate ul li span a:hover {
    opacity: 0.7;
}

/* ----------------------------------------------------
　求人紹介詳細ページ
---------------------------------------------------- */

#page-detail {
    background: url(../img/job_introduction/con1_bg.png);
    padding: 25px 0 20px 0;
}

#page-detail .ttl {
    text-align: center;
}

#page-detail .job_area {
    width: 1000px;
    margin: 35px auto 0 auto;
    border: 2px solid #f7d3da;
    border-radius: 10px;
    background: #fff;
}

#page-detail .contact_maximum {
    background: #fff;
    border: 2px solid #f7d3da;
    border-radius: 10px;
    font-size: 22px;
    font-weight: bold;
    margin: 35px auto 0 auto;
    padding: 20px 0;
    text-align: center;
    width: 1000px;
}

#page-detail .job_area .company_name {
    background: #f7d3da;
    font-size: 22px;
    padding: 10px 20px;
    font-weight: bold;
}

#page-detail .job_area .job_detail {
    padding: 25px 30px;
}

#page-detail .job_area .state_icon img {
    margin: 0 5px 0 0;
}

#page-detail .job_area .job_ttl {
    margin: 15px 0 0 0;
    font-size: 24px;
    letter-spacing: 1.5px;
}

#page-detail .job_area .job_ttl h1 {
    font-weight: bold;
}

#page-detail .job_area .top_area {
    margin: 30px 0 0 0;
}

#page-detail .job_area .top_area .left {
    float: left;
    width: 350px;
}

#page-detail .job_area .top_area .left img {
    max-width: 350px;
    width: 100%;
}

#page-detail .job_area .top_area .salary_area {
    width: 570px;
}

#page-detail .salary_area table {
    width: 100%;
}

#page-detail .salary_area tr {
    border-bottom: 1px solid #f0f0f0;
}

#page-detail .salary_area tr:first-child {
    border-top: 1px solid #f0f0f0;
}

#page-detail .salary_area th {
    position: relative;
    padding: 5px 0 5px 35px;
    font-weight: bold;
    color: #555;
    font-size: 14px;
    width: 100px;
    vertical-align: middle;
}

#page-detail .salary_area td {
    padding: 8px 0;
    vertical-align: middle;
}

#page-detail .salary_area th:before {
    content: '';
    position: absolute;
    border-left: 5px solid #af274c;
    width: 5px;
    height: 15px;
    left: 15px;
    top: 50%;
    margin: -9px 0 0 0;
}

#page-detail .tag_aera {
    margin: 30px 0 0 0;
}

#page-detail .tag_aera li {
    border: 3px solid #f7d3da;
    border-radius: 5px;
    margin: 0px 7px 10px 0;
    padding: 2px 7px;
    display: inline-block;
}

#page-detail .recruitment_information {
    margin: 45px 0 0 0;
}

#page-detail .recruitment_information h2 {
    position: relative;
    font-size: 24px;
    font-weight: bold;
    margin: 0 0 25px 0;
}

#page-detail .recruitment_information h2:before {
    content: '';
    position: absolute;
    border-bottom: 5px solid #f7d3da;
    width: 100%;
    height: 6px;
    top: 95%;
}

#page-detail .recruitment_information table {
    width: 100%;
}

#page-detail .recruitment_information tr {
    border-bottom: 1px solid #f0f0f0;
}

#page-detail .recruitment_information th {
    position: relative;
    padding: 15px 0 15px 35px;
    font-weight: bold;
    color: #555;
    font-size: 14px;
    width: 150px;
    vertical-align: middle;
}

#page-detail .recruitment_information td {
    vertical-align: middle;
    padding: 15px 0;
}

#page-detail .recruitment_information th:before {
    content: '';
    position: absolute;
    border-left: 5px solid #af274c;
    width: 5px;
    height: 15px;
    left: 15px;
    top: 50%;
    margin: -9px 0 0 0;
}

#page-detail .company_information {
    margin: 50px 0 0 0;
}

#page-detail .company_information h2 {
    position: relative;
    font-size: 24px;
    font-weight: bold;
    margin: 0 0 40px 0;
}

#page-detail .company_information h2:before {
    content: '';
    position: absolute;
    border-bottom: 5px solid #f7d3da;
    width: 100%;
    height: 6px;
    top: 95%;
}

#page-detail .company_information table {
    width: 100%;
}

#page-detail .company_information tr {
    border-bottom: 1px solid #f0f0f0;
}

#page-detail .company_information th {
    position: relative;
    padding: 15px 0 15px 35px;
    font-weight: bold;
    color: #555;
    font-size: 14px;
    width: 150px;
    vertical-align: middle;
}

#page-detail .company_information td {
    vertical-align: middle;
    padding: 15px 0;
}

#page-detail .company_information th:before {
    content: '';
    position: absolute;
    border-left: 5px solid #af274c;
    width: 5px;
    height: 15px;
    left: 15px;
    top: 50%;
    margin: -9px 0 0 0;
}

#page-detail .application_area {
    text-align: center;
    margin: 35px 0 10px 0;
}

#page-detail .application_area .post_exit {
    font-weight: bold;
    font-size: 20px;
}

#page-detail .application_area .post_exit .remaining_time {
    margin: 0 auto;
}

#page-detail .application_area .post_exit span {
    color: #af274c;
}

#page-detail .application_area .post_exit .day {
    display: inline-block;
    font-size: 27px;
    position: relative;
    top: 3px;
}

#page-detail .application_area .post_exit .day span {
    color: #af274c;
}

#page-detail .application_area .post_exit .end_time {
    color: #707070;
    font-size: 18px;
    margin: 8px 0 0 0;
}

#page-detail .application_area .post_exit .end_time span {
    font-weight: normal;
    color: #707070;
    font-size: 16px;
}

#page-detail .application_area .apply_btn {
    width: 320px;
    margin: 25px auto 20px;
    background-color: #af274c;
    box-shadow: 0 3px #70162b;
    display: block;
    color: #fff;
    font-weight: bold;
    text-align: center;
    padding: 15px 0;
    border-radius: 10px;
    text-decoration: none;
    font-size: 19px;
}

#page-detail .application_area .apply_btn:hover {
    opacity: 0.7;
}

#page-detail .return_btn {
    width: 320px;
    margin: 40px auto;
    background-color: #949494;
    box-shadow: 0 3px #606060;
    display: block;
    color: #fff;
    font-weight: bold;
    text-align: center;
    padding: 15px 0;
    border-radius: 10px;
    text-decoration: none;
    font-size: 19px;
}

#page-detail .return_btn:hover {
    opacity: 0.7;
}

/* ----------------------------------------------------
　求人紹介応募フォーム
---------------------------------------------------- */
#page-application {
    background: url(../img/job_introduction/con1_bg.png);
    padding: 25px 0 20px 0;
}

#page-application .ttl {
    text-align: center;
}

#page-application .application_box {
    width: 1000px;
    margin: 35px auto 0 auto;
    border: 2px solid #f7d3da;
    border-radius: 10px;
    background: #fff;
}

#page-application .application_ttl {
    background: #f7d3da;
    font-size: 20px;
    padding: 12px 20px 10px 20px;
    font-weight: bold;
}

#page-application .application_area {
    padding: 25px 30px;
}

#page-application .application_area .job_area {
    border-bottom: dashed 1px #f7d5dc;
    font-weight: bold;
}

#page-application .application_area .company_name {
    font-size: 16px;
}

#page-application .application_area .job_ttl {
    font-size: 22px;
    margin: 12px 0 20px 0;
}

#page-application .application_area .description_text {
    margin: 25px 0;
}

#page-application .application_area .description_text p {
    margin: 0 0 20px 0;
}

#page-application .application_area .description_text p span {
    color: #f03040;
}

#page-application .application_btn_area {
    width: 675px;
    margin: 0 auto;
}

#page-application .application_btn_area .apply_btn {
    width: 320px;
    margin: 20px 30px 20px auto;
    display: inline-block;
}

#page-application .application_btn_area .apply_btn input {
    background-color: #af274c;
    box-shadow: 0 3px #70162b;
    color: #fff;
    font-weight: bold;
    text-align: center;
    padding: 13px 0 14px 0;
    border-radius: 10px;
    text-decoration: none;
    font-size: 19px;
    cursor: pointer;
    border: none;
    width: 100%;
}

#page-application .application_btn_area .apply_btn input:hover {
    opacity: 0.7;
}

#page-application .application_btn_area .return_btn {
    width: 320px;
    margin: 20px 30px 20px auto;
    display: inline-block;
}

#page-application .application_btn_area .return_btn  {
    width: 320px;
    margin: 40px auto;
    background-color: #949494;
    box-shadow: 0 3px #606060;
    display: inline-block;
    color: #fff;
    font-weight: bold;
    text-align: center;
    padding: 15px 0;
    border-radius: 10px;
    text-decoration: none;
    font-size: 19px;
    cursor: pointer;
    border: none;
}

#page-application .application_btn_area .return_btn:hover {
    opacity: 0.7;
}

#page-application table  {
    width: 100%;
    border: 2px solid #f7d3da;
}

#page-application table th  {
    font-weight: bold;
    background: #f7e6e9;
    border-right: 2px solid #f7d3da;
    padding: 20px 10px;
    vertical-align: middle;
    text-align: center;
    font-size: 17px;
    width: 225px;
    line-height: 1.9;
}

#page-application table th span {
    color: #f03040;
}

#page-application table td {
    vertical-align: middle;
    padding: 20px 20px;
}

#page-application table tr {
    border-bottom: 2px solid #f7d3da;
}

#page-application table tr:last-child {
    border-bottom: none;
}

#page-application table .text {
    display: inline-block;
}

#page-application table label {
    margin-right: 10px;
    font-size: 18px;
    position: relative;
    top: 3px;
}

#page-application table .tel_area .tel_box:first-child  {
    margin: 0 0 20px 0;
}

#page-application table input[type="text"] {
    border: 2px solid #f7d3da;
    padding: 8px 10px;
    font-size: 14px;
}

#page-application table .error-message {
    top: auto!important;
    left: auto!important; 
}

#page-application table #JobContactYear {
    width: 100px;
}

#page-application table .address_area .select {
    margin: 0 0 25px 0;
}

#page-application table #JobContactLastName,
#page-application table #JobContactLastNameKana {
    margin: 0 20px 0 0;
}

#page-application table #JobContactYear {
    width: 100px;
}

#page-application table #JobContactAddress {
    width: 460px;
}

#page-application table td .birthday_text {
    font-size: 18px;
    margin: 0px 10px;
    position: relative;
    top: 2px;
}

#page-application table #JobContactMonth,
#page-application table #JobContactDay {
    width: 30px;
}

#page-application table #JobContactLastName,
#page-application table #JobContactFirstName,
#page-application table #JobContactFirstNameKana,
#page-application table #JobContactLastNameKana {
    width: 100px;
}

#page-application table #JobContactTel01,
#page-application table #JobContactTel02,
#page-application table #JobContactTel03,
#page-application table #JobContactMobileTel01,
#page-application table #JobContactMobileTel02,
#page-application table #JobContactMobileTel03 {
    width: 100px;
    margin: 0 10px 0 10px;
}

#page-application table #JobContactTel01,
#page-application table #JobContactMobileTel01 {
    margin: 0 10px 0 0;
}

#page-application table #JobContactEmail {
    width: 507px;
}

#page-application table tr:last-child td {
    padding: 15px 22px 10px 22px;
}

#page-application table textarea {
    border: 2px solid #f7d3da;
    width: 515px;
    height: 170px;
}

#page-application table select {
    width: 200px;
    font-size: 14px;
    border-radius: 10px;
    padding: 4px 10px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 1px solid #999;
    background: url(../img/job_introduction/aw.png) right no-repeat,-moz-linear-gradient(top, rgba(255,255,255,1) 71%, rgba(238,238,224,1) 100%); /* FF3.6-15 */
    background: url(../img/job_introduction/aw.png) right no-repeat,-webkit-linear-gradient(top, rgba(255,255,255,1) 71%,rgba(238,238,224,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: url(../img/job_introduction/aw.png) right no-repeat,linear-gradient(to bottom, rgba(255,255,255,1) 71%,rgba(238,238,224,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fff', endColorstr='#eee',GradientType=0 ); /* IE6-9 */
}

select::-ms-expand {
    display: none;
}

/* ----------------------------------------------------
　求人紹介応募完了
---------------------------------------------------- */
#page-application-complete {
    background: url(../img/job_introduction/con1_bg.png);
    padding: 25px 0 20px 0;
}

#page-application-complete .ttl {
    text-align: center;
}

#page-application-complete .application_complete_area {
    width: 1000px;
    margin: 35px auto 0 auto;
    border: 2px solid #f7d3da;
    border-radius: 10px;
    background: #fff;
    text-align: center;
    padding: 30px 0;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
}

#page-application-complete .return_btn {
    width: 320px;
    margin: 45px auto 40px auto;
    background-color: #949494;
    box-shadow: 0 3px #606060;
    display: block;
    color: #fff;
    font-weight: bold;
    text-align: center;
    padding: 15px 0;
    border-radius: 10px;
    text-decoration: none;
    font-size: 19px;
}

#page-application-complete .return_btn:hover {
    opacity: 0.7;
}