/* Job List Page */
.jobs-title-section {
    width: 100%;
    height: 379px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: url(../images/job-cover.png);
    background-size: cover;
    background-position: bottom;
    position: relative;
    @media screen and (max-width: 800px) {
        height: 257px;
        background-position: right bottom;
        background-image: url(../images/job-mobile.png);
    }
}

.jobs-title-section:after{
    background-color: rgba(29, 64, 148, 0.10);
      content: '';
      display: block;
      width: 100%;
        height: 100%;
        position: absolute;
}

.jobs-search-section{
    display: flex;
    flex-direction: column;
    gap: 56px;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding-top: 80px;
    padding-bottom: 80px;
    position: relative;
    z-index: 3;
    @media screen and (max-width:800px) {
        padding-top: 64px;
        padding-bottom: 64px;
    }
    
}


/* Rectangle decor job list */
.jobs-left-double-rectangle-div {
    width: 100%;
    height: fit-content;
    position: absolute;
    left: 0;
    z-index: -1;
    @media screen and (max-width: 800px) {
        width: auto;
    }
}

.jobs-double-rectangle-div {
    height: 1000px;
    width: 611px;
    position: absolute;
    right: 0;
    bottom: -150px;
    z-index: -1;
}

.jobs-mobile-double-rectangle {
    position: absolute;
    right: 0px;
    width: 40%;
    top: 335px;
    display: none;
    height: 100%;
    z-index: 3;


    @media screen and (max-width: 800px) {
        display: block;
    }
}

.jobs-double-rectangle{
    @media screen and (max-width: 800px) {
        display: none;
    }
}

.jobs-left-double-rectangle {
    @media screen and (max-width: 800px) {
        display: none;
    }
}

.jobs-left-mobile-double-rectangle {
    position: absolute;
    left: 0px;
    width: 300px;
    top: -40px;
    display: none;
    height: auto;
    z-index: 3;

    @media screen and (max-width: 800px) {
        display: block;
    }
}

/* Rectangle decor job item */
.jobs-item-left-double-rectangle-div {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 535px;
    left: -100px;
    z-index: -1;
    @media screen and (max-width: 800px) {
        width: auto;
    }
}

.jobs-item-double-rectangle-div {
    height: 1000px;
    width: 611px;
    position: absolute;
    right: 0;
    bottom: -150px;
    z-index: -1;
}

.jobs-item-mobile-double-rectangle {
    position: absolute;
    right: 0px;
    width: 40%;
    top: 335px;
    display: none;
    height: 100%;
    z-index: 3;


    @media screen and (max-width: 800px) {
        display: block;
    }
}

.jobs-item-double-rectangle{
    @media screen and (max-width: 800px) {
        display: none;
    }
}

.jobs-item-left-double-rectangle {
    @media screen and (max-width: 800px) {
        display: none;
    }
}

.jobs-item-left-mobile-double-rectangle {
    position: absolute;
    left: 0px;
    width: 250px;
    left: 100px;
    top: 900px;
    display: none;
    height: auto;
    z-index: 3;

    @media screen and (max-width: 800px) {
        display: block;
    }
}

/* Search and Filter */
.search-box-container{
    display:flex;
    flex-direction: column;
    gap: 48px;
    align-items: center;
    max-width: 1058px;
}

.search-box-title{
    color: #1D4094;
    font-size: 48px;
    font-weight: 700;
    line-height: 150%;
    @media screen and (max-width: 800px) {
        font-size: 30px;
    } 
}

.search-box-filter{
    /* display: flex; */
    display: none;
    align-items: center;
    gap: 32px;
    @media screen and (max-width: 1090px) {
        flex-direction: column;
        justify-content: center;
    }
}

.search-box-contract, .search-box-areaAndOccupation{
    display:flex;
    flex-direction: column;
    gap: 16px;
    background: linear-gradient(0deg, #F2FCFF 0%, #F2FCFF 100%), #FFF;
    padding: 26px 26px 26px;
    @media screen and (max-width: 800px) {
        padding: 24px 13px;
    }
}

.search-box-select-title{
    color: #1D4094;
    font-size: 18px;
    font-weight: 700;
    line-height: 200%; 
    padding-bottom: 8px;
    border-bottom: 1px solid #E6E6E6;
}

.search-box-items{
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.search-box-checkbox-item, .search-box-select-item{
    display:flex;
    gap: 8px;
    align-items: center;
    padding: 11px 16px 11px;
    border-radius: 2px;
    border: 1px solid #D8D8D8;
    background: #FFF;
    width: 430px;
    cursor: pointer;
    @media screen and (max-width: 800px) {
        width: 278px
    }
}

.search-box-select-item{
    width: 464px;
    @media screen and (max-width: 800px) {
        width: 312px;
    }
}

@media(hover: hover){
    .search-box-checkbox-item:hover, .search-box-select-item:hover{
        background-color: #F2FCFF;
    }
}

.search-box-checkbox-item label{
    color: #333;
    font-size: 16px;
    font-weight: 400;
    line-height: 150%; 
    cursor: pointer;
    width: 100%;
    @media screen and (max-width: 800px) {
        font-size: 14px;
    }
}

.search-box-select-item{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-repeat: no-repeat;
    background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);
    background-position: right 15px top 50%, right 10px top 50%;
    background-size: 5px 5px, 5px 5px;
    color: #333;
    font-size: 16px;
    font-weight: 400;
    line-height: 150%; 
    cursor: pointer;
    @media screen and (max-width: 800px) {
        font-size: 14px;
    }
}

.search-box-submit{
    width: 100%;
    border: 1px solid #111;
    background: #1D4094;
    box-shadow: 0px 2px 20px 0px rgba(29, 64, 148, 0.10);
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

#submit-button{
    width: 100%;
    text-align: center;
    color: #FFFFFF;
    font-size: 16px;
    font-weight: 500;
    line-height: 150%;
    padding: 9px 0; 
}

@media(hover: hover){
    .search-box-submit:hover{
        opacity: 0.8;
    }
}
.search-box-wordSearch{
    display: flex;
    flex-direction: column;
    gaP: 16px;
    border-radius: 6px;
    border: 1px solid #D8D8D8;
    background: #FFF;
    @media screen and (max-width: 1090px) {
        width: calc(90vw - 24px);
        padding: 24px 12px;
    }
}

.search-box-wordSearch-title{
    color: #1D4094;
    font-size: 18px;
    font-weight: 700;
    line-height: 200%; 
    padding: 26px 26px 0 26px;
    @media screen and (max-width: 800px) {
        border-bottom: 1px solid #E6E6E6;
        padding: 0;
    }
    
}

.search-box-wordSearch-items{
    display:flex;
    gap: 24px;
    flex-wrap: wrap;
    padding: 0 12px 26px 12px;
    @media screen and (max-width: 800px) {
        flex-direction: column;
        align-items: center;
        flex-wrap: nowrap;
        gap: 8px;
        /* padding: 0; */
    }
}
@media(hover: hover){
    .search-box-wordSearch-item:hover{
        background-color: #F2FCFF;
    }
}

.search-box-wordSearch-item{
    padding: 8px 16px;
    border-radius: 6px;
    border: 1px solid #BBDBF8;
    background: #FFF;
    color: #3081D8;
    font-size: 16px;
    font-weight: 400;
    line-height: 150%; /* 24px */
    text-decoration-line: underline;
    @media screen and (max-width: 800px) {
        width: 100%;
    }
}

/* Job List Detail */

.jobs-list-section{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding-top: 80px;
    padding-bottom: 120px;
    background: #FFFDF5;
    position: relative;
    z-index: 3;
    @media screen and (max-width:800px) {
        padding-top: 64px;
        padding-bottom: 64px;
    }
}

.jobs-list-container{
    display:flex;
    flex-direction: column;
    align-items: center;

}

.jobs-list-title{
    color: #1D4094;
    font-size: 48px;
    font-weight: 700;
    line-height: 150%; 
    margin-bottom: 64px;
    @media screen and (max-width:800px) {
        font-size: 30px;
        margin-bottom: 48px;
    }
}

/* Job Card */

.jobs-listItems{
    display:flex;
    flex-direction: column;
    gap: 64px;
    @media screen and (max-width:800px) {
       gap: 48px;
    }
}

.jobs-listItem{
    display:flex;
    flex-direction: column;
    gap: 24px;
    border-radius: 6px;
    background: #FFF;
    box-shadow: 0px 2px 15px 0px rgba(89, 72, 2, 0.10);
    padding: 40px 50px;
    width: 958px;

    @media screen and (max-width: 1090px) {
        width: calc(90vw - 100px);
    }
}

.jobs-listItem{
    @media screen and (max-width: 800px) {
        width: calc(90vw - 32px);
        padding: 40px 16px;
        gap: 12px;
    }
}
/* Job Card title */
.jobs-listItem-title{
    padding-bottom: 8px;
    border-bottom: 3px solid #D8D8D8;
}

.jobs-listItem-title span{ 
    color: #1D4094;
    font-size: 28px;
    font-weight: 700;
    line-height: 150%; 
}

/* Job Card Tag */
.jobs-listItem-info{
    display: flex;
    justify-content: space-between;
    align-items: center;
    @media screen and (max-width: 800px) {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }
}

.jobs-listItem-tag{
    display:flex;
    gap: 8px;
    @media screen and (max-width: 650px) {
        flex-wrap: wrap;
    }
}

.jobs-listItem-tag-contract{
    border-radius: 4px;
    background: #348EE6;
    padding: 4px 12px;
    font-size: 12px;
    font-weight: 500;
    line-height: 150%;
    color: #FFFFFF;
}

.jobs-listItem-tag-category{
    border-radius: 4px;
    background: #BBDBF8;
    padding: 4px 12px;
    font-size: 12px;
    font-weight: 500;
    line-height: 150%;
    color: #1D4094;
}

.jobs-listItem-date{
    color: #333;
    font-size: 12px;
    font-weight: 400;
}

/* Job Card table */

.jobs-listItem-detail{
    display:flex;
    gap: 24px;
    @media screen and (max-width: 900px) {
        flex-direction: column;
        align-items: center;
    }
}
.jobs-listItem-topImage{
    width: 320px;
    height: 240px;
    min-width: 320px;
     @media screen and (max-width: 1090px) {
        width: 290px;
        min-width: 290px;
    }
    
}

.jobs-listItem-topImage{
    @media screen and (max-width: 900px) {
        width: 100%;
    }
}

.jobs-listItem-topImage img{
    width: 100%;
    height: 100%;
    /* object-fit: cover; */
}

.jobs-listItem-table{
    border-top: 1px solid #BDBDBD;
    display: flex;
    flex-direction: column;
    width: calc(100% - 344px);
    @media screen and (max-width: 900px) {
        width:100%;
    }
}

.jobs-listItem-item{
    display:flex;
    border-bottom: 1px solid #BDBDBD;
}

.jobs-listItem-item-leftSection{
    width: 200px;
    background: #F2FCFF;
    text-align: center;
    padding: 12px 0;
    @media screen and (max-width: 650px) {
        width:100px;
    }
}

.jobs-listItem-item-leftSection span{
    color: #1D4094;
    font-feature-settings: 'clig' off, 'liga' off;
    font-size: 16px;
    font-weight: 500;
    line-height: 150%;
    @media screen and (max-width: 800px) {
        font-size: 14px;
    }
}

.jobs-listItem-item-rightSection{
    width: calc(100% - 224px);
    background: #FFFFFF;
    padding: 12px 0;
    padding-left: 12px;
    @media screen and (max-width: 650px) {
        width: calc(100% - 124px);
    }
}

.jobs-listItem-item-rightSection span{
    color: #333;
    font-size: 14px;
    font-weight: 400;
    line-height: 150%;
}

.maximum-lines{
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2; /* number of lines to show */
    line-clamp: 2;
    -webkit-box-orient: vertical;
}
/* Job Card Button */
.jobs-listItem-button{
    margin-top: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #1D4094;
    background: #FFF;
    box-shadow: 0px 2px 20px 0px rgba(29, 64, 148, 0.05);
    color: #1D4094;
    font-size: 24px;
    font-weight: 400;
    line-height: 18px; 
    cursor: pointer;
    width: 500px;
    height: 90px;
    align-self: center;
    @media screen and (max-width: 800px) {
        width: 310px;
    }
}

@media(hover: hover){
    .jobs-listItem-button:hover{
        background-color: #F2FCFF;
    }
}

/* Job Item Page */
.jobs-item-section{
    background: #FFFDF5;
    display:flex;
    justify-content: center;
    padding: 80px 0;
    position:relative;
    z-index: 4;
    @media screen and (max-width: 800px) {
        padding: 64px 0;
    }
}

.jobs-item-container{
    display:flex;
    flex-direction: column;
    gap: 40px;
    align-items: center;

    @media screen and (max-width: 800px) {
        gap: 16px;
    }
}

.jobs-item-title{
    color: #1D4094;
    font-feature-settings: 'clig' off, 'liga' off;
    font-size: 48px;
    font-weight: 700;
    line-height: 150%; 
    @media screen and (max-width: 800px) {
        font-size: 30px;
    }
}


/* Image Section */

.jobs-item-images{
    display:flex;
    flex-direction: column;
    gap: 24px;
    max-width: 1058px;
    @media screen and (max-width: 1090px) {
        width: 90vw;
    }
}

.jobs-item-images{
    @media screen and (max-width: 800px) {
        gap: 64px;
    }
}

.jobs-item-topImage{
    display:flex;
    gap: 56px;
    @media screen and (max-width: 1090px) {
        flex-direction: column;
        align-items: center;
        gap: 16px;
    }
}

.jobs-item-topImage img{
    width: 540px;
    height : 400px;

    @media screen and (max-width: 800px) {
        width: 342px;
        height: 172px;
    }
}

.jobs-item-description{
    color: #333;
    font-feature-settings: 'clig' off, 'liga' off;
    font-size: 16px;
    font-weight: 400;
    line-height: 150%; 
    @media screen and (max-width: 800px) {
        font-size: 14px;
    }
}

.jobs-item-desImages{
    display:flex;
    flex-direction: column;
    gap: 24px;
    align-items: center;
}

.jobs-item-desImages-title{
    color: #1D4094;
    font-feature-settings: 'clig' off, 'liga' off;
    font-size: 24px;
    font-weight: 700;
    line-height: 150%; 
}

.jobs-item-desImages-content{
    display:flex;
    gap: 32px;
    @media screen and (max-width: 1090px) {
        flex-direction: column;
        align-items: center;
    }
}

.jobs-item-desImages-content{
    @media screen and (max-width: 800px) {
        gap: 40px;
    }
}

.jobs-item-desImages-content img{
    width: 100%;
    height: 240px;
}

.jobs-item-desImages-item{
    display:flex;
    flex-direction: column;
    gap: 16px;
    width: 330px;
    @media screen and (max-width: 800px) {
        width: 342px;
    }

}

/* Table Section */
.jobs-item-table{
    display:flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    max-width: 1058px;
    @media screen and (max-width: 1090px) {
        width: 90vw;
    }
}

.jobs-item-table{
    @media screen and (max-width: 800px) {
        margin-top: 80px;
    }
}

.jobs-item-table-title{
    padding-left: 15px;
    background: #1D4094;
    
}

.jobs-item-table-title span{
    color: #FFF;
    font-size: 18px;
    font-weight: 700;
    line-height: 240%; 
}

.jobs-item-table-content{
    display: flex;
    flex-direction: column;
}

.jobs-item-table-item{
    display:flex;
    border-bottom: 1px solid #BDBDBD;
    @media screen and (max-width: 800px) {
        flex-direction: column;
        border-bottom: unset;
        border-top: 1px solid #BDBDBD;
    }
}

.jobs-item-table-item-leftSection{
    width: 200px;
    background: #F2FCFF;
    text-align: center;
    padding: 12px 0;
    @media screen and (max-width: 800px) {
        width: 100%;
    }
}

.jobs-item-table-item-leftSection span{
    color: #1D4094;
    font-feature-settings: 'clig' off, 'liga' off;
    font-size: 16px;
    font-weight: 500;
    line-height: 150%;
    @media screen and (max-width: 800px) {
        font-size: 14px;
    }
}

.jobs-item-table-item-rightSection{
    width: 100%;
    background: #FFFFFF;
    padding: 12px 0;
    padding-left: 12px;
    @media screen and (max-width: 800px) {
        width: fit-content;
    }
}

.jobs-item-table-item-rightSection span{
    color: #333;
    font-size: 14px;
    font-weight: 400;
    line-height: 150%;
    word-break: keep-all;
}

/* Pagination */
.pagination {
    margin-top: 60px;
    align-self: center;
  }
  
  .pagination_container {
    display: flex;
    gap: 48px;
    align-items: center;
    @media screen and (max-width: 650px) {
        width:320px;
        margin:0 auto;
        flex-wrap: wrap;
        gap: 4px;
        justify-content: center;
    }
  }
  
  .pagination_container a {
    text-decoration: none;
    font-weight: 400;
    font-size: 16px;
    line-height: 150%;
    color: #1a1a1a;
  }
  
  .pagination_container a {
    text-decoration: none;
    font-weight: 400;
    font-size: 16px;
    line-height: 150%;
    color: #1a1a1a;
  }
  .page-numbers {
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    @media screen and (max-width: 650px) {
        width:32px;
    }
  }
  

  
  @media(hover: hover){
    .page-numbers:hover {
        width: 40px;
        height: 40px;
        background: #def3ff;
        border-radius: 4px;
      }
  }

  .pagination_container .current {
    width: 40px;
    height: 40px;
    background: #def3ff;
    border-radius: 4px;
    color: #0086cc;
    font-weight: 600;
  }
  
  .previous-page,
  .next-page {
    cursor: pointer;
  }
  
  .notfound{
    margin-top: 48px;
  }

  .sp-show{
    display: none;
    @media screen and (max-width: 1090px) {
        display: block;
    }
  }

  .sp-hide{
    display: block;
    @media screen and (max-width: 1090px) {
        display: none;
    }
  }