/*----------- Archive_feature -----------*/

.pickup_grid {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  margin-top: 40px;
  margin: 40px 50px 120px;
}

.pickup_grid a {
  display: flex;
  width: 100%;
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.16);
  border-radius: 10px;
  overflow: hidden;
}

.pickup_grid a figure {
  overflow: hidden;
  position: relative;
  width: 20%;
}

.pickup_grid a figure img {
  width: 100%;
  height: auto;
  object-fit: cover;
  transition: 0.3s;
}

.pickup_grid a .text_box p.check {
  display: inline-block;
  position: relative;
  padding: 4px 18px;
  font-size: 112.5%;
  background: #ff7600;
  color: #fff;
  margin-bottom: 10px;
  font-family: "Caveat", cursive, sans-serif;
}

.pickup_grid a .text_box p.check::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  transform: translateX(-50%);
  width: 10px;
  height: 6px;
  background: #ff7600;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
}

.pickup_grid .h3_box {
  margin-bottom: 0;
}

.pickup_grid .h3_box .h3 {
  text-align: left;
  font-size: 125%;
  margin-bottom: 32px;
  font-weight: 700;
}

.pickup_grid a .text_box {
  width: 80%;
  padding: 20px 40px 20px 60px;
  position: relative;
  align-self: center;
}

.pickup_grid a .text_box::before {
  content: "";
  position: absolute;
  width: 14px;
  height: 26px;
  background-color: #adc054;
  clip-path: path("M.621,22.018l8.25-9.028L.621,3.962a2.477,2.477,0,0,1,0-3.281A1.994,1.994,0,0,1,3.433.493a1.962,1.962,0,0,1,.188.188l9.759,10.68a2.475,2.475,0,0,1,0,3.281L3.619,25.322a2.031,2.031,0,0,1-1.5.68,2.031,2.031,0,0,1-1.5-.68,2.53,2.53,0,0,1,0-3.3Z");
  right: 22px;
  bottom: calc(50% - 13px);
  transition: 0.3s;
}

.pickup_grid a:hover .text_box::before {
  transform: translateX(4px);
}

.pickup_grid a:hover figure img {
  transform: scale(1.1);
}

@media screen and (max-width: 1399px) {
  .pickup_grid a figure {
    width: 30%;
  }

  .pickup_grid a .text_box {
    width: 70%;
  }
}

@media screen and (max-width: 1199px) {
  .pickup_grid a figure {
    width: 40%;
  }

  .pickup_grid a .text_box {
    width: 60%;
    padding: 40px 40px 40px 40px;
  }

}

@media screen and (max-width: 991px) {
  .pickup_grid {
    margin: 40px 0 120px;
  }
}

@media screen and (max-width: 768px) {
  .pickup_grid a figure {
    width: 50%;
  }

  .pickup_grid a .text_box {
    width: 50%;
    padding: 20px 40px 20px 10px;
  }
}

@media screen and (max-width: 575px){
  .pickup_grid a {
    flex-wrap: wrap;
  }

  .pickup_grid a figure {
    width: 100%;
  }

  .pickup_grid a .text_box {
    width: 100%;
    padding: 10px 30px 20px 10px;
  }

  .pickup_grid a .text_box::before {
    right: 12px;
  }
}

/*----------- Single_feature -----------*/

.job_feature_title {
  margin-top: 20px;
  font-weight: 700;
  font-size: 150%;
}

.job_item_wrap {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
  width: 100%;
}

.job_item_wrap .recruit_post {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 40px;
  width: 100%;
  padding: 20px 40px;
  border-radius: 12px;
  box-shadow: 0px 0px 4px rgb(0 0 0 / 16%);
}

.cate_wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  font-size: 87.5%;
  margin-bottom: 12px;
  width: 100%;
}

.cate_wrap span {
  padding: 4px 20px;
  border-radius: 4px;
  background-color: #DAE9B5;
  color: #414141;
  font-weight: 700;
}

.cate_wrap span.new_arrivals {
  background-color: #FF7600;
  color: #fff;
}

.cate_wrap span.deadline {
  background-color: #FF000A;
  color: #fff;
}

.recruit_post .catch {
  width: 100%;
}

.recruit_post .catch h2 {
  margin-bottom: 12px;
  font-weight: 700;
  font-size: 150%;
}

.job_item_wrap .recruit_post .recruit_post_wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.job_item_wrap .recruit_post .recruit_post_wrapper .img_photo {
  width: 400px;
  text-align: center;
}

.job_item_wrap .recruit_post .recruit_post_wrapper .note_area {
  width: calc(100% - (400px + 20px));
}

.job_item_wrap .recruit_post .recruit_post_wrapper .img_photo img {
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border-radius: 10px;
  max-width: 400px;
  width: 100%;
  height: auto;
}

.job_item_wrap .recruit_post .recruit_post_wrapper .note_area ul li {
  padding-left: 40px;
  margin-top: 1rem;
  position: relative;
}

.job_item_wrap .recruit_post .recruit_post_wrapper .note_area ul li.desc {
  padding-left: 0;
}

.job_item_wrap .recruit_post .recruit_post_wrapper .note_area ul li:first-child {
  margin-top: 0;
}

.job_item_wrap .recruit_post .recruit_post_wrapper .note_area ul li::before {
  content: '';
  position: absolute;
  background-color: #ADC054;
  left: 0;
  top: 7px;
}

.job_item_wrap .recruit_post .recruit_post_wrapper .note_area ul li.desc::before {
  content: none;
}

.job_item_wrap .recruit_post .recruit_post_wrapper .note_area ul li.area::before {
  width: 12px;
  height: 18px;
  clip-path: path("M.008,16.2H11.992V18H.008ZM6,4.5A1.8,1.8,0,1,0,7.71,6.384c0-.028,0-.056,0-.084A1.763,1.763,0,0,0,6,4.5M6,0a6.12,6.12,0,0,1,6,6.237c0,.066,0,.132-.007.2q0,4.212-5.992,8.865Q.008,10.656.008,6.435A6.12,6.12,0,0,1,5.8.007C5.868,0,5.934,0,6,0");
}

.job_item_wrap .recruit_post .recruit_post_wrapper .note_area ul li.salary::before {
  width: 12px;
  height: 16px;
  clip-path: path("M2.2.509A1.236,1.236,0,0,0,.536.2,1.1,1.1,0,0,0,.158,1.709c.013.022.027.043.041.063l3.559,5.06H1.8a1.14,1.14,0,1,0,0,2.277h3v1.139h-3a1.14,1.14,0,1,0,0,2.277h3V14.8a1.2,1.2,0,0,0,2.4,0V12.529h3a1.14,1.14,0,1,0,0-2.277h-3V9.113h3a1.14,1.14,0,1,0,0-2.277H8.244L11.8,1.772A1.105,1.105,0,0,0,11.524.23L11.465.192A1.242,1.242,0,0,0,9.8.509L6,5.921Z");
}

.job_item_wrap .recruit_post .recruit_post_wrapper .note_area ul li.holiday::before {
  width: 14px;
  height: 14px;
  clip-path: path("M3,.875V1.75H1.5A1.416,1.416,0,0,0,0,3.063V4.375H14V3.063A1.416,1.416,0,0,0,12.5,1.75H11V.875A.943.943,0,0,0,10,0,.943.943,0,0,0,9,.875V1.75H5V.875A.943.943,0,0,0,4,0,.943.943,0,0,0,3,.875ZM14,5.25H0v7.438A1.416,1.416,0,0,0,1.5,14h11A1.416,1.416,0,0,0,14,12.688Z");
}


.job_item_wrap .recruit_post .recruit_post_wrapper .note_area ul li.time::before {
  width: 14px;
  height: 14px;
  clip-path: path("M7,0A7,7,0,1,1,0,7,7,7,0,0,1,7,0ZM6.344,3.281V7a.659.659,0,0,0,.293.547L9.261,9.3A.657.657,0,0,0,9.989,8.2L7.656,6.65V3.281a.656.656,0,0,0-1.312,0Z");
}

.job_item_wrap .recruit_post .btn_wrap {
  margin-top: 20px;
  display: flex;
  justify-content: center;
  width: 100%;
  gap: 20px;
}

.simplefavorite-button,
.simplefavorite-button:active {
  display: block;
  border-radius: 8px;
  padding: 12px 40px;
  border: 2px solid #F0E55D;
  background-color: #fff;
  position: relative;
  width: 220px;
  text-align: center;
  cursor: pointer;
}

.simplefavorite-button::before {
  content: '';
  position: absolute;
  width: 15px;
  height: 14px;
  background-color: #F0E55D;
  clip-path: path("M8.317.492A.926.926,0,0,0,7.1.089a.893.893,0,0,0-.419.4L4.854,4.109l-4.079.58a.881.881,0,0,0-.766.994.867.867,0,0,0,.26.493L3.23,8.994l-.7,3.984a.882.882,0,0,0,.748,1.01.939.939,0,0,0,.578-.091L7.5,12.022,11.146,13.9a.929.929,0,0,0,1.232-.363.846.846,0,0,0,.095-.556l-.7-3.984,2.96-2.819a.851.851,0,0,0,.006-1.237.924.924,0,0,0-.507-.249l-4.082-.58Z");
  top: calc(50% - 7px);
  left: 16px;
  transition: 0.3s;
}

.simplefavorite-button:hover,
.simplefavorite-button.active {
  background-color: #F0E55D;
  opacity: 1;
}

.simplefavorite-button.active:hover {
  background-color: #DED557;
  border-color: #DED557;
}

.simplefavorite-button:hover::before,
.simplefavorite-button.active::before {
  background-color: #fff;
  transform: scale(1.1);
}


.modal-actions {
  padding-top: 4px;
}

.mobile_btn button {
  display: none;
  border-radius: 4px;
  border: none;
  padding: 12px 40px;
  text-align: center;
  font-size: 112.5%;
  font-weight: 700;
  color: #fff;
  position: relative;
  overflow: hidden;
  z-index: 1;
  width: 100%;
  background: linear-gradient(90deg, rgba(107, 165, 175, 1), rgba(112, 188, 112, 1) 50%, rgba(218, 233, 181, 1));
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.16);
}

.mobile_btn button::before {
  content: '';
  position: absolute;
  background-color: #fff;
  clip-path: path("M13.212,11.624H12.38l-.3-.284a6.87,6.87,0,1,0-.737.737l.284.3v.832l4.479,4.468a1.11,1.11,0,0,0,1.57-1.569Zm-6.322,0a4.735,4.735,0,1,1,.013,0H6.89Z");
  width: 18px;
  height: 18px;
  left: 20px;
  top: calc(50% - 9px);
  transition: 0.3s;
}

@media screen and (max-width: 991px) {
  .job_item_wrap .recruit_post .recruit_post_wrapper{
    justify-content: center;
    width: 100%;
    max-width: 400px;
  }
  .job_item_wrap .recruit_post .recruit_post_wrapper .note_area {
    width: 100%;
  }
  .job_item_wrap .recruit_post .recruit_post_wrapper .img_photo{
    width: auto!important;
  }
}

@media screen and (max-width: 768px) {
  .job_search_area {
    display: none;
  }

  .job_item_wrap .job_side {
    width: 100%;
  }

  .cate_wrap {
    gap: 12px;
  }

  .job_item_wrap .recruit_post {
    padding: 20px;
  }

  .mobile_btn button {
    display: block;
  }

  .job_item_wrap .job_side,
  .job_item_wrap {
    width: 100%;
  }

  .job_item_wrap .job_side .filter-block {
    display: flex;
    gap: 8px;
    align-items: center;
  }
}


/*----------- 求人詳細 -----------*/

.item_detail {
  margin-top: 40px;
  background-color: #fff;
  border-radius: 12px;
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.16);
  padding: 24px 40px;
}

.job_date_wrapper {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.job_date_wrapper .cate_wrap {
  width: 76%;
}

.job_date_wrapper .date_wrap {
  display: flex;
  flex-wrap: wrap;
  width: 24%;
  gap: 8px 20px;
}

.job_date_wrapper .date_wrap p {
  font-size: 87.5%;
}

.item_detail h1 {
  font-size: 150%;
  font-weight: 700;
}

.item_detail .deadline {
  font-size: 87.5%;
}

.deadline_an_btn {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  justify-content: space-between;
  margin-top: 20px;
}

.deadline_wrap,
.btn_wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

.print_btn {
  padding: 12px 22px;
  background-color: #EFEFEF;
  border-radius: 8px;
  display: inline-block;
  border: none;
}

.print_btn:hover {
  background-color: #dedede;
}

.job_dl_list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: 20px 0;
}

.job_dl_list dt,
.job_dl_list dd {
  display: flex;
  flex-wrap: wrap;
  padding: 21px 0;
  margin: 0;
  position: relative;
}

.job_dl_list dt::before,
.job_dl_list dd::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #A8A8A8;
  left: 0;
  bottom: 0;
}

.job_dl_list dt:first-of-type:after,
.job_dl_list dd:first-of-type:after {
  content: '';
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #A8A8A8;
  left: 0;
  top: 0;
}

.job_dl_list dt {
  width: 20%;
  align-items: center;
  justify-content: center;
  font-weight: 700;
}

.job_dl_list dt span {
  color: gray;
  font-size: smaller;
}

.job_dl_list dd {
  width: 80%;
}

.workplace_atmosphere {
  background-color: #EFEFEF;
  border-radius: 20px;
  gap: 20px;
  padding: 30px 64px 50px;
  display: flex;
  justify-content: center;
  flex-direction: column;
}

.entry_text {
  margin-top: 40px;
  margin-bottom: 20px;
  inline-size: fit-content;
  margin-inline: auto
}

.entry_text a.here {
  font-weight: 700;
  color: #FF7600;
  text-decoration: underline;
}

.entry_text a.here:hover {
  text-decoration: none;
}

.bottom_btn_wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  width: 100%;
  justify-content: center;
  margin-top: 20px;
}

.bottom_btn_wrap a.back {
  color: #0E2247;
  text-decoration: underline;
}

.bottom_btn_wrap a.back:hover {
  text-decoration: none;
}

@media screen and (max-width: 575px) {
  .item_detail {
    padding: 24px 12px;
  }
}


/* 新規会員登録・ログインボタン */

.entry_text .btn_wrap {
  justify-content: center;
}

.membership_btn {
  padding: 12px 20px;
  border-radius: 4px;
  font-size: 100%;
  font-weight: 700;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  z-index: 1;
  background: linear-gradient(90deg, rgba(255, 118, 0, 1), rgba(255, 118, 0, 1) 30%, rgba(239, 239, 102, 1));
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.16);
  width: 280px;
}

.membership_btn span {
  font-size: 56.3%;
  margin-left: 8px;
  background-color: #ff7600;
  border: 1px solid #fff;
  border-radius: 3px;
  padding: 3.5px 5px;
}

.membership_btn::before {
  background: linear-gradient(270deg, rgba(255, 118, 0, 1), rgba(255, 118, 0, 1) 30%, rgba(239, 239, 102, 1));
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: 0;
  transition: opacity 0.5s;
}

.membership_btn:hover,
.login_btn:hover {
  box-shadow: none;
}

.membership_btn:hover::before,
.login_btn:hover::before {
  opacity: 1;
}

.login_btn {
  padding: 12px 20px 12px 40px;
  border-radius: 4px;
  font-size: 100%;
  font-weight: 700;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  z-index: 1;
  width: 280px;
  background: linear-gradient(90deg, rgba(107, 165, 175, 1), rgba(112, 188, 112, 1) 50%, rgba(218, 233, 181, 1));
  box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.16);
}

.login_btn::before {
  background: linear-gradient(270deg, rgba(107, 165, 175, 1), rgba(112, 188, 112, 1) 50%, rgba(218, 233, 181, 1));
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  opacity: 0;
  transition: opacity 0.5s;
}

.login_btn::after {
  content: "";
  position: absolute;
  background-color: #fff;
  clip-path: path("M2.893,2.813V3.75H6.107V2.813a1.608,1.608,0,0,0-3.214,0ZM1.607,3.75V2.813A2.854,2.854,0,0,1,4.5,0,2.854,2.854,0,0,1,7.393,2.813V3.75h.321A1.269,1.269,0,0,1,9,5V8.75A1.269,1.269,0,0,1,7.714,10H1.286A1.269,1.269,0,0,1,0,8.75V5A1.269,1.269,0,0,1,1.286,3.75Z");
  width: 9px;
  height: 10px;
  left: 20px;
  top: calc(50% - 5px);
}

.item_bottom_box {
  background-color: #F7F7F7;
  padding: 40px 70px;
  border-radius: 20px;
  margin-top: 40px;
}


/* スライド */

.workplace_atmosphere {
  position: relative;
}

.workplace_atmosphere>.slick-list .slick-slider {
  display: grid;
  gap: 20px;
  justify-content: center;
}

.workplace_atmosphere>.slick-list .slide {
  display: grid !important;
  grid-template-rows: subgrid;
  grid-row: span 2;
  justify-content: center;
  padding: 0 10px;
  text-align: center;
}

.workplace_atmosphere>.slick-list .slide img {
  border-radius: 10px;
}

.item_bottom_box,
.browsing_history_box {
  position: relative;
  width: 100%;
}

.browsing_history {
  margin-top: 40px;
}

.browsing_history .slick-slide {
  display: flex;
  justify-content: center;
}

.browsing_history .recruit_post {
  width: auto !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fit, min-max(260px, 1fr));
  max-width: 260px;
  margin: auto 20px;
  border-radius: 10px;
  overflow: hidden;
  background-color: #fff;
}

.browsing_history .recruit_post .recruit_post_wrapper {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
}

.browsing_history .recruit_post img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

.browsing_history .catch {
  font-size: 112.5%;
  padding: 12px 16px;
}

.browsing_history .note_area {
  padding: 0 16px 12px;
}

.browsing_history .btn_wrap {
  display: grid;
  padding: 0 16px 12px;
  grid-template-rows: subgrid;
  grid-row: span 1;
}

.browsing_history .btn_wrap .detail_btn {
  width: 100%;
  max-width: 220px;
  padding: 12px 40px 12px 12px;
}

@media screen and (max-width: 575px) {
  .item_bottom_box {
    padding: 40px;
  }
}

/* arrows */

.arrow_prev,
.arrow_next,
.arrow_prev2,
.arrow_next2 {
  position: absolute;
  background-color: #fff;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  border: none;
}

.arrow_prev,
.arrow_prev2 {
  left: 12px;
}

.arrow_next,
.arrow_next2 {
  right: 12px;
}

.arrow_prev2,
.arrow_next2 {
  top: 50%;
}


.arrow_prev::before,
.arrow_next::before,
.arrow_prev2::before,
.arrow_next2::before {
  content: "";
  position: absolute;
  width: 8px;
  height: 14px;
  background-color: #ADC054;
  top: calc(50% - 7px);
  transition: 0.3s;
}

.arrow_prev::before,
.arrow_prev2::before {
  clip-path: path("M7.646,11.855,2.932,6.993,7.646,2.133a1.277,1.277,0,0,0,0-1.767A1.186,1.186,0,0,0,5.969.33L5.933.366.356,6.116a1.275,1.275,0,0,0,0,1.767l5.577,5.75a1.184,1.184,0,0,0,1.674.039l.039-.039a1.3,1.3,0,0,0,0-1.779");
  left: 14px;
}

.arrow_next::before,
.arrow_next2::before {
  clip-path: path("M.355,11.856,5.069,6.993.355,2.133a1.278,1.278,0,0,1,0-1.767A1.186,1.186,0,0,1,2.032.33l.036.036,5.577,5.75a1.276,1.276,0,0,1,0,1.767l-5.577,5.75a1.183,1.183,0,0,1-1.674.039l-.039-.039a1.3,1.3,0,0,1,0-1.779");
  right: 14px;
}

.arrow_prev:hover,
.arrow_next:hover,
.arrow_prev2:hover,
.arrow_next2:hover {
  background-color: #ADC054;
}

.arrow_prev:hover::before,
.arrow_next:hover::before,
.arrow_prev2:hover::before,
.arrow_next2:hover::before {
  background-color: #fff;
}

.arrow_prev:hover::before,
.arrow_prev2:hover::before {
  left: 12px;
}

.arrow_next:hover::before,
.arrow_next2:hover::before {
  right: 12px;
}


/* スライドdot */
.dots-wrap {
  display: flex;
  justify-content: center;
}

.dots-wrap li {
  width: 8px;
  height: 8px;
  margin: 0 5px;
  background: #A8A8A8;
  border-radius: 50%;
  cursor: pointer;
}

.dots-wrap li.slick-active {
  background: #727857;
}

.dots-wrap li button {
  display: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  padding: 0;
  border: none;
  background-color: transparent;
}