@charset "UTF-8";

html {
  font-size: 62.5%;
}

* {
  margin: 0;
  padding: 0;
  -webkit-text-size-adjust: 100%;
  list-style: none;
  outline: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  font-size: 1.6rem;
  color: #333;
}

a {
  color: inherit;
  text-decoration: none;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

button:not(.bgm-button) {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  font-family: inherit;
}

input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
}

.recruit-list {
  background-color: #f9f9f9;
  font-family: "Noto Sans JP", sans-serif;
}

.recruit-list .ly-content-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 20px 0;
}

.recruit-list .ly-content-area .main {
  width: 800px;
  margin-bottom: 3rem;
  position: relative;
}

.recruit-list .ly-content-area .main__inner {
  margin: 0 1.4rem;
  height: 200px;
}

.recruit-list .ly-content-area .main.--index {
  overflow: hidden;
}

.recruit-list .ly-content-area .sidebar {
  width: 340px;
  margin-left: 40px;
  background-color: blue;
  height: 1000px;
}

.recruit-list .heading__h2 {
  font-size: 16px;
  margin: 0 0 1em 0.5em;
  position: relative;
}

.recruit-list .heading__h2.--mg {
  margin: 0 0 1em 1.4em;
}

.recruit-list .heading__h2::after {
  content: "";
  width: 113px;
  height: 113px;
  background-color: #EFEFEF;
  position: absolute;
  left: -100px;
  top: -25px;
  border-radius: 50%;
  z-index: -1;
}

.recruit-list .mv-movie {
  margin-bottom: 50px;
}

.recruit-list .mv-movie video {
  width: 100%;
  height: auto;
  display: block;
}

.recruit-list .list-nav {
  margin: 0.5rem 0 3rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 20px;
}

.recruit-list .list-nav__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  border-radius: 25px;
  width: 30%;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 14px;
  height: 40px;
  font-weight: bold;
  font-size: 1.2rem;
}

.recruit-list .list-nav .--new {
  background-color: #D90707;
  color: #fff;
}

.recruit-list .list-nav .--group {
  background-color: #FFEA4C;
  color: initial;
}

.recruit-list .list-nav .--group:hover {
  color: unset !important;
}

.recruit-list .list-nav__icon {
  width: 24px;
}

.recruit-list .popular-areas {
  margin-bottom: 4rem;
}

.recruit-list .popular-areas a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #fff;
  background-color: aqua;
  font-size: 1.4rem;
  border-radius: 24px;
  width: calc(20% - 5px);
  position: relative;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 147px;
}

.recruit-list .popular-areas a.kabuki {
  background-color: #FB4D70;
}

.recruit-list .popular-areas a.minami {
  background-color: #83499E;
}

.recruit-list .popular-areas a.susukino {
  background-color: #6A71FF;
}

.recruit-list .popular-areas a.nagoya {
  background-color: #44AA67;
}

.recruit-list .popular-areas a.nakasu {
  background-color: #FFA143;
}

.recruit-list .popular-areas__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}

.recruit-list .popular-areas__icon {
  width: 74px;
  margin-bottom: 0.7em;
  border-radius: 22px;
}

.recruit-list .area-search {
  position: relative;
  margin: 2em 0;
}

.recruit-list .area-search__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 20px;
  background-color: #F9F9F9;
  padding: 1.4rem;
}

.recruit-list .area-search__item {
  width: calc(50% - 10px);
  border-radius: 6px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
}

.recruit-list .area-search__item.--hokkaido .area-search__item-heading {
  color: #5256A6;
}

.recruit-list .area-search__item.--hokkaido .area-detail__item {
  background-color: #5256A6;
}

.recruit-list .area-search__item.--kanto .area-search__item-heading {
  color: #D43051;
}

.recruit-list .area-search__item.--kanto .area-detail__item {
  background-color: #D43051;
}

.recruit-list .area-search__item.--toukai .area-search__item-heading {
  color: #568B69;
}

.recruit-list .area-search__item.--toukai .area-detail__item {
  background-color: #568B69;
}

.recruit-list .area-search__item.--kansai .area-search__item-heading {
  color: #725182;
}

.recruit-list .area-search__item.--kansai .area-detail__item {
  background-color: #725182;
}

.recruit-list .area-search__item.--cyugoku .area-search__item-heading {
  color: #588294;
}

.recruit-list .area-search__item.--cyugoku .area-detail__item {
  background-color: #588294;
}

.recruit-list .area-search__item.--kyusyu .area-search__item-heading {
  color: #DD964F;
}

.recruit-list .area-search__item.--kyusyu .area-detail__item {
  background-color: #DD964F;
}

.recruit-list .area-search__item-heading {
  background-color: #fff;
  border: solid 1px #F9F9F9;
  border-radius: 24px;
  padding: 0.5em 0;
  margin-bottom: 0.75em;
}

.recruit-list .area-detail {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding-bottom: 1em;
  gap: 8px;
}

.recruit-list .area-detail__item {
  background-color: #5256A6;
  color: #fff;
  font-weight: bold;
  text-align: center;
  width: calc(33.33% - 6px);
  border-radius: 6px;
  padding: 0.5em 0;
}

.recruit-list .sticky-area {
  position: -webkit-sticky;
  position: sticky;
  z-index: 10;
  top: 152px;
  --scroll-progress: 0;
  background-color: rgba(255, 255, 255, calc(0.8 * var(--scroll-progress)));
  padding: calc(0.5em * var(--scroll-progress)) 0;
  margin-bottom: calc(60px - 60px * var(--scroll-progress));
  -webkit-transition: background-color 0.1s ease, padding 0.1s ease;
  transition: background-color 0.1s ease, padding 0.1s ease;
}

.recruit-list .sticky-area .popular-area-title {
  font-size: calc(1.4rem - 0.2rem * var(--scroll-progress));
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #D43051;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #fff;
  padding: 0 0 0 0.75em;
  border-radius: 0 24px 24px 0;
  -webkit-transition: font-size 0.1s ease, margin-bottom 0.1s ease;
  transition: font-size 0.1s ease, margin-bottom 0.1s ease;
}

.recruit-list .sticky-area .popular-area-title__subtitle {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: calc(10px - 2px * var(--scroll-progress));
  background-color: #FB4D70;
  color: #fff;
  padding: calc(0.25em - 0.05em * var(--scroll-progress));
  border-radius: 24px;
  margin-left: calc(1rem - 0.2rem * var(--scroll-progress));
  -webkit-transition: gap 0.1s ease, padding 0.1s ease, margin-left 0.1s ease;
  transition: gap 0.1s ease, padding 0.1s ease, margin-left 0.1s ease;
}

.recruit-list .sticky-area .popular-area-title__icon {
  width: calc(32px - 6px * var(--scroll-progress));
  -webkit-transition: width 0.1s ease;
  transition: width 0.1s ease;
}

.recruit-list .sticky-area .result-count {
  font-size: 1.6rem;
  font-weight: bold;
  padding-right: 2em;
}

.recruit-list .sticky-area .resize {
  width: calc(32px - 6px * var(--scroll-progress));
  -webkit-transition: width 0.1s ease;
  transition: width 0.1s ease;
}

.recruit-list .sticky-area .new-jobs-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #D90707;
  color: #fff;
  font-size: calc(1.4rem - 0.2rem * var(--scroll-progress));
  gap: calc(14px - 4px * var(--scroll-progress));
  padding: calc(0.75em - 0.25em * var(--scroll-progress)) calc(2em - 0.5em * var(--scroll-progress)) calc(0.75em - 0.25em * var(--scroll-progress)) calc(1em - 0.2em * var(--scroll-progress));
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  white-space: nowrap;
  border-radius: 0 24px 24px 0;
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
}

.recruit-list .sticky-area .new-jobs-title__icon {
  width: calc(24px - 4px * var(--scroll-progress));
  -webkit-transition: width 0.1s ease;
  transition: width 0.1s ease;
}

.recruit-list .sticky-area .areas-title {
  background-color: #D90707;
  color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: calc(1.4rem - 0.2rem * var(--scroll-progress));
  gap: calc(18px - 4px * var(--scroll-progress));
  padding: calc(0.25em - 0.05em * var(--scroll-progress)) calc(0.25em - 0.05em * var(--scroll-progress)) calc(0.25em - 0.05em * var(--scroll-progress)) calc(1em - 0.2em * var(--scroll-progress));
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  white-space: nowrap;
  border-radius: 0 24px 24px 0;
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
}

.recruit-list .sticky-area .groups-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #FFEA4C;
  color: #313131;
  font-size: calc(1.4rem - 0.2rem * var(--scroll-progress));
  gap: calc(14px - 4px * var(--scroll-progress));
  padding: calc(0.75em - 0.25em * var(--scroll-progress)) calc(3em - 0.5em * var(--scroll-progress)) calc(0.75em - 0.25em * var(--scroll-progress)) calc(1em - 0.2em * var(--scroll-progress));
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  white-space: nowrap;
  border-radius: 0 24px 24px 0;
  margin: calc(1.5em - 0.5em * var(--scroll-progress)) 0;
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
}

.recruit-list .sticky-area .groups-title__icon {
  width: calc(22px - 4px * var(--scroll-progress));
  -webkit-transition: width 0.1s ease;
  transition: width 0.1s ease;
}

.recruit-list .sticky-area .group-jobs-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #FFEA4C;
  color: #313131;
  font-size: calc(1.4rem - 0.2rem * var(--scroll-progress));
  gap: calc(14px - 4px * var(--scroll-progress));
  padding: calc(0.25em - 0.05em * var(--scroll-progress)) calc(2em - 0.5em * var(--scroll-progress)) calc(0.25em - 0.05em * var(--scroll-progress)) calc(1em - 0.2em * var(--scroll-progress));
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  white-space: nowrap;
  border-radius: 0 24px 24px 0;
  margin: calc(1.5em - 0.5em * var(--scroll-progress)) 0;
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
}

.recruit-list .sticky-area .group-jobs-title__icon {
  width: calc(40px - 8px * var(--scroll-progress));
  height: calc(40px - 8px * var(--scroll-progress));
  border-radius: 50%;
  -webkit-transition: width 0.1s ease;
  transition: width 0.1s ease;
}

.recruit-list .sticky-area .sort-actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 90%;
  margin: 0 auto;
}

.recruit-list .sticky-area .sort-actions__dropdown {
  position: relative;
  width: 33%;
}

.recruit-list .sticky-area .sort-actions__item {
  display: block;
  padding: calc(0.7em - 0.3em * var(--scroll-progress)) calc(1em - 0.3em * var(--scroll-progress));
  background-color: #fff;
  font-size: calc(1.3rem - 0.2rem * var(--scroll-progress));
  border: solid 2px #515151;
  width: 33%;
  text-align: center;
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
}

.recruit-list .sticky-area .sort-actions__item:hover {
  color: unset;
}

.recruit-list .sticky-area .sort-actions__item.active {
  background-color: #515151;
  color: #fff;
  position: relative;
}

.recruit-list .sticky-area .sort-actions__item.active::after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  right: 1em;
  width: 6px;
  height: 6px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.recruit-list .sticky-area .sort-actions__item.active.is-open::after {
  -webkit-transform: translateY(-50%) rotate(-135deg);
  transform: translateY(-50%) rotate(-135deg);
}

.recruit-list .sticky-area .sort-actions__item.active.--no-arrow::after {
  display: none;
}

.recruit-list .sticky-area .sort-actions__dropdown .sort-actions__item {
  width: 100%;
  border-radius: 0;
  border-right: none;
}

.recruit-list .sticky-area .sort-actions__dropdown:first-child .sort-actions__item {
  border-radius: 24px 0 0 24px;
}

.recruit-list .sticky-area .sort-actions__dropdown:last-child .sort-actions__item {
  border-radius: 0 24px 24px 0;
  border: solid 2px #515151;
}

.recruit-list .sticky-area .sort-actions>.sort-actions__item:last-child {
  border-radius: 0 24px 24px 0;
  border-left: none;
}

.recruit-list .sticky-area .sort-actions__list {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  right: 0;
  background: #fff;
  border: 2px solid #515151;
  z-index: 10;
  -webkit-box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(-10px);
  transform: translateY(-10px);
  -webkit-transition: opacity 0.3s ease, visibility 0.3s, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s, -webkit-transform 0.3s ease;
}

.recruit-list .sticky-area .sort-actions__list.is-open {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  border-radius: 6px;
}

.recruit-list .sticky-area .sort-actions__list.is-open li {
  -webkit-animation: fadeIn 0.4s ease forwards;
  animation: fadeIn 0.4s ease forwards;
}

.recruit-list .sticky-area .sort-actions__list.is-open li:nth-child(1) {
  -webkit-animation-delay: 0.05s;
  animation-delay: 0.05s;
}

.recruit-list .sticky-area .sort-actions__list.is-open li:nth-child(2) {
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s;
}

.recruit-list .sticky-area .sort-actions__list.is-open li:nth-child(3) {
  -webkit-animation-delay: 0.15s;
  animation-delay: 0.15s;
}

.recruit-list .sticky-area .sort-actions__list.is-open li:nth-child(4) {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

.recruit-list .sticky-area .sort-actions__list.is-open li:nth-child(5) {
  -webkit-animation-delay: 0.25s;
  animation-delay: 0.25s;
}

.recruit-list .sticky-area .sort-actions__list li {
  border-bottom: 1px solid #e0e0e0;
  opacity: 0;
}

.recruit-list .sticky-area .sort-actions__list li:last-child {
  border-bottom: none;
}

.recruit-list .sticky-area .sort-actions__list li a {
  display: block;
  padding: calc(0.8em - 0.2em * var(--scroll-progress)) calc(1em - 0.2em * var(--scroll-progress)) calc(0.8em - 0.2em * var(--scroll-progress)) calc(2.5em - 0.5em * var(--scroll-progress));
  font-size: calc(1.4rem - 0.2rem * var(--scroll-progress));
  text-align: left;
  position: relative;
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
  white-space: nowrap;
}

.recruit-list .sticky-area .sort-actions__list li a:hover {
  background-color: #f5f5f5;
}

.recruit-list .sticky-area .sort-actions__list li a.active {
  background-color: #f0f0f0;
  font-weight: bold;
}

.recruit-list .sticky-area .sort-actions__list li a.active::before {
  content: "✓";
  position: absolute;
  left: 0.8em;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #515151;
  font-size: 1.6rem;
  font-weight: bold;
}

@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

.recruit-list .sticky-area__menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: rgba(255, 255, 255, 0.6);
}

.recruit-list .sticky-area__menu-item {
  font-size: calc(1.2rem - 0.1rem * var(--scroll-progress));
  color: #515151;
  -webkit-transition: font-size 0.1s ease;
  transition: font-size 0.1s ease;
}

.recruit-list .test-wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 1em 0 calc(2.5rem - 1rem * var(--scroll-progress));
}

.recruit-list .location-filter {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  background: transparent;
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  background-color: #EFEFEF;
}

.recruit-list .location-filter.is-open {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.recruit-list .location-filter__wrap {
  max-width: 1160px;
  margin: 0 auto;
  padding-right: 360px;
  padding: 20px 360px 20px 20px;
}

.recruit-list .location-filter__chip {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

.recruit-list .location-filter__close {
  position: relative;
  width: 40px;
  height: 40px;
  background-color: transparent;
  border: solid 1px #666;
  cursor: pointer;
  padding: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-right: 1em;
  background-color: #fff;
}

.recruit-list .location-filter__close:hover {
  opacity: 0.7;
}

.recruit-list .location-filter__close::before,
.recruit-list .location-filter__close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 2px;
  background-color: #666;
  -webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
}

.recruit-list .location-filter__close::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}

.recruit-list .location-filter__close::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
}

.recruit-list .location-filter__close:hover::before,
.recruit-list .location-filter__close:hover::after {
  background-color: #333;
}

.recruit-list .location-filter__open {
  width: 32px;
  height: 32px;
  background-color: #fff;
  border: solid 1px #666;
  cursor: pointer;
  padding: 0;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-right: 1em;
  position: relative;
}

.recruit-list .location-filter__open:hover {
  opacity: 0.7;
}

.recruit-list .location-filter__open::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
  width: 8px;
  height: 8px;
  border-right: 2px solid #D43051;
  border-bottom: 2px solid #D43051;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.recruit-list .location-filter__open.is-open::after {
  -webkit-transform: translate(-50%, -50%) rotate(-135deg);
  transform: translate(-50%, -50%) rotate(-135deg);
}

.recruit-list .location-filter__dropdown {
  width: 100%;
}

.recruit-list .location-filter__tag {
  font-size: 1.4rem;
  border-left: none;
  padding: 0.5em 2em 0.5em 1em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 0 24px 24px 0;
  text-align: center;
  background-color: #fff;
  font-weight: bold;
  position: relative;
  border: solid 1px;
}

.recruit-list .location-filter__tag::after {
  content: "";
  position: absolute;
  right: 1em;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  width: 6px;
  height: 6px;
  border-right: 2px solid #D43051;
  border-bottom: 2px solid #D43051;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.recruit-list .location-filter__tag.is-open::after {
  -webkit-transform: translateY(-50%) rotate(-135deg);
  transform: translateY(-50%) rotate(-135deg);
}

.recruit-list .location-filter__list {
  position: absolute;
  top: calc(100% + 4px);
  left: 1em;
  background: #fff;
  border: 2px solid #515151;
  z-index: 10;
  -webkit-box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 6px;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(-10px);
  transform: translateY(-10px);
  -webkit-transition: opacity 0.3s ease, visibility 0.3s, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s, -webkit-transform 0.3s ease;
}

.recruit-list .location-filter__list.--region {
  left: auto;
  right: 30%;
  border: 2px solid #515151 !important;
}

.recruit-list .location-filter__list.is-open {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.recruit-list .location-filter__list.is-open li {
  -webkit-animation: fadeIn 0.4s ease forwards;
  animation: fadeIn 0.4s ease forwards;
}

.recruit-list .location-filter__list.is-open li:nth-child(1) {
  animation-delay: 0.05s;
}

.recruit-list .location-filter__list.is-open li:nth-child(2) {
  animation-delay: 0.10s;
}

.recruit-list .location-filter__list.is-open li:nth-child(3) {
  animation-delay: 0.15s;
}

.recruit-list .location-filter__list.is-open li:nth-child(4) {
  animation-delay: 0.20s;
}

.recruit-list .location-filter__list.is-open li:nth-child(5) {
  animation-delay: 0.25s;
}

.recruit-list .location-filter__list.is-open li:nth-child(6) {
  animation-delay: 0.30s;
}

.recruit-list .location-filter__list.is-open li:nth-child(7) {
  animation-delay: 0.35s;
}

.recruit-list .location-filter__list.is-open li:nth-child(8) {
  animation-delay: 0.40s;
}

.recruit-list .location-filter__list.is-open li:nth-child(9) {
  animation-delay: 0.45s;
}

.recruit-list .location-filter__list.is-open li:nth-child(10) {
  animation-delay: 0.50s;
}

.recruit-list .location-filter__list li {
  border-bottom: 1px solid #e0e0e0;
  opacity: 0;
}

.recruit-list .location-filter__list li:last-child {
  border-bottom: none;
}

.recruit-list .location-filter__list li button {
  display: block;
  padding: 0.8em 1em 0.8em 2.5em;
  font-size: 1.4rem;
  text-align: left;
  position: relative;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
  white-space: nowrap;
  width: 100%;
}

.recruit-list .location-filter__list li button:hover {
  background-color: #f5f5f5;
}

.recruit-list .location-filter__list li button.active {
  background-color: #f0f0f0;
  font-weight: bold;
}

.recruit-list .location-filter__list li button.active::before {
  content: "✓";
  position: absolute;
  left: 0.8em;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #515151;
  font-size: 1.6rem;
  font-weight: bold;
}

.recruit-list .location-filter__region-header {
  color: #fff;
  background-color: #fff;
  font-weight: bold;
  text-align: center;
  width: 90%;
  border-radius: 6px;
  height: 32px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  border: solid 1px #515151;
  max-width: 400px;
}

.recruit-list .location-filter__region {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0 0.5em;
  gap: 10px;
  margin: 1em 0;
  position: relative;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.recruit-list .location-filter__details {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0 0.5em;
}

.recruit-list .location-filter__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.2rem;
  width: calc(25% - 6px);
  border: solid 1px #515151;
  border-radius: 24px;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 4px;
  padding: 0.25em 0;
  background-color: #fff;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  color: #313131 !important;
}

.recruit-list .location-filter__item:hover {
  background-color: #F5F5F5;
}

.recruit-list .location-filter__item.active {
  background-color: #515151;
  color: #fff !important;
}

.recruit-list .location-filter-open__icon {
  width: 32px;
}

.recruit-list .location-filter-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s, visibility 0.3s;
  transition: opacity 0.3s, visibility 0.3s;
}

.recruit-list .location-filter-overlay.is-open {
  opacity: 1;
  visibility: visible;
}

.recruit-list .list-card {
  -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3);
  border-top: solid 18px #D90707;
  border-radius: 6px;
  background-color: #fff;
  position: relative;
}

.recruit-list .list-card:not(:last-child) {
  margin-bottom: 2.5em;
}

.recruit-list .list-card__wrap {
  padding: 0 1.5rem 1.5rem;
}

.recruit-list .list-card .shop-details {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  margin: 0.75em 0;
  position: relative;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.recruit-list .list-card .shop-details__logo {
  width: 48px;
  height: 48px;
  border-radius: 50%;
}

.recruit-list .list-card .shop-details__area {
  color: #FF6C6C;
  font-size: 1.1rem;
}

.recruit-list .list-card .shop-details__name {
  font-size: 1.5rem;
  font-weight: bold;
}

.recruit-list .list-card .shop-details__kana {
  font-size: 1.1rem;
}

.recruit-list .list-card .shop-details__times {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
  position: absolute;
  right: -6px;
  top: -22px;
}

.recruit-list .list-card .shop-details__time {
  font-size: 1.2rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  width: 40px;
  text-align: center;
  border-radius: 24px;
  color: #fff;
  padding: 2px 0;
}

.recruit-list .list-card .shop-details__time.--ichibu {
  background-color: #B234CC;
}

.recruit-list .list-card .shop-details__time.--nibu {
  background-color: #FFB031;
}

.recruit-list .list-card .shop-details__time.--new {
  background-color: #D90707;
  width: auto;
  padding: 2px 0.5em;
}

.recruit-list .list-card .card-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 10px;
}

.recruit-list .list-card .card-body__thumbnail {
  width: 100%;
  border-radius: 6px;
}

.recruit-list .list-card .card-body__info {
  width: 100%;
}

.recruit-list .list-card .salary-info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 6px;
  margin: 0 0 0.5em;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.recruit-list .list-card .salary-info__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  border: solid 2px #E82A2A;
  width: calc(50% - 3px);
  background-color: #FBFBFB;
  position: relative;
}

.recruit-list .list-card .salary-info__label {
  font-size: 1rem;
  display: inline-block;
  position: absolute;
  left: 0.25em;
}

.recruit-list .list-card .salary-info__value {
  font-size: 2rem;
  font-weight: bold;
  margin-left: 0.8em;
  font-family: "Inter";
  padding: 2px;
}

.recruit-list .list-card .salary-info__value .unit {
  font-size: 1rem;
  font-weight: 300;
}

.recruit-list .list-card .job-highlights {
  background-color: #F7F7F7;
  padding: 1em;
  min-width: 100%;
  border-radius: 4px;
}

.recruit-list .list-card .job-highlights__icon {
  width: 16px;
  margin-right: 1rem;
}

.recruit-list .list-card .job-highlights__item {
  font-size: 1.1rem;
  margin-bottom: 0.5em;
}

.recruit-list .list-card .card-footer {
  margin-bottom: 2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}

.recruit-list .list-card .card-footer__title {
  font-size: 1.6rem;
}

.recruit-list .list-card .card-footer__jobs {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 4px;
  margin: 0.75em 0 1em;
}

.recruit-list .list-card .card-footer__job {
  font-size: 1rem;
  padding: 0.3em 1em;
  border: solid 1px #515151;
}

.recruit-list .list-card .card-actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
}

.recruit-list .list-card .card-actions__item {
  font-size: 1.4rem;
  text-align: center;
  gap: 10px;
  border-radius: 6px;
  padding: 0.75em 0;
  color: #fff;
  display: block;
  font-weight: bold;
}

.recruit-list .list-card .card-actions__item.--apply {
  width: 50%;
  background-color: #E7B900;
}

.recruit-list .list-card .card-actions__item.--detail {
  width: 50%;
  background-color: #E83A3A;
}

.recruit-list .group-card {
  border-bottom: solid 1px #CECECE;
  margin: 3em 1em 2em;
}

.recruit-list .group-card.--border-none {
  border-bottom: none;
}

.recruit-list .group-card__thumbnail {
  border-radius: 6px;
}

.recruit-list .group-card__group-name {
  text-align: center;
  margin: 1.5em 0 3em;
}

.recruit-list .group-card__group-name .name {
  font-size: 1.4rem;
  color: #313131;
  margin-bottom: 0.25em;
}

.recruit-list .group-card__group-name .kana {
  font-size: 1.2rem;
  color: #8A8A8A;
}

.recruit-list.--kabuki .popular-area-title,
.recruit-list.--kabuki .areas-title {
  background-color: #D43051;
}

.recruit-list.--kabuki .popular-area-title__subtitle,
.recruit-list.--kabuki .areas-title__subtitle {
  background-color: #FB4D70;
}

.recruit-list.--kabuki .location-filter__tag {
  border: solid 1px #D43051;
  color: #D43051;
}

.recruit-list.--kabuki .location-filter__tag::after {
  border-right: 2px solid #D43051;
  border-bottom: 2px solid #D43051;
}

.recruit-list.--kabuki .location-filter__region-header {
  color: #fff;
  background-color: #D43051;
  border: none;
}

.recruit-list.--kabuki .location-filter__list {
  border-color: #D43051;
}

.recruit-list.--kabuki .location-filter__list li {
  border-color: #D43051;
}

.recruit-list.--kabuki .location-filter__open::after {
  border-right: 2px solid #D43051;
  border-bottom: 2px solid #D43051;
}

.recruit-list.--minami .popular-area-title,
.recruit-list.--minami .areas-title {
  background-color: #725182;
}

.recruit-list.--minami .popular-area-title__subtitle,
.recruit-list.--minami .areas-title__subtitle {
  background-color: #83499E;
}

.recruit-list.--minami .location-filter__tag {
  border: solid 1px #725182;
  color: #725182;
}

.recruit-list.--minami .location-filter__tag::after {
  border-right: 2px solid #725182;
  border-bottom: 2px solid #725182;
}

.recruit-list.--minami .location-filter__region-header {
  color: #fff;
  background-color: #725182;
  border: none;
}

.recruit-list.--minami .location-filter__list {
  border-color: #725182;
}

.recruit-list.--minami .location-filter__list li {
  border-color: #725182;
}

.recruit-list.--minami .location-filter__open::after {
  border-right: 2px solid #725182;
  border-bottom: 2px solid #725182;
}

.recruit-list.--susukino .popular-area-title,
.recruit-list.--susukino .areas-title {
  background-color: #5256A6;
}

.recruit-list.--susukino .popular-area-title__subtitle,
.recruit-list.--susukino .areas-title__subtitle {
  background-color: #6A71FF;
}

.recruit-list.--susukino .location-filter__tag {
  border: solid 1px #5256A6;
  color: #5256A6;
}

.recruit-list.--susukino .location-filter__tag::after {
  border-right: 2px solid #5256A6;
  border-bottom: 2px solid #5256A6;
}

.recruit-list.--susukino .location-filter__region-header {
  color: #fff;
  background-color: #5256A6;
  border: none;
}

.recruit-list.--susukino .location-filter__list {
  border-color: #5256A6;
}

.recruit-list.--susukino .location-filter__list li {
  border-color: #5256A6;
}

.recruit-list.--susukino .location-filter__open::after {
  border-right: 2px solid #5256A6;
  border-bottom: 2px solid #5256A6;
}

.recruit-list.--nagoya .popular-area-title,
.recruit-list.--nagoya .areas-title {
  background-color: #568B69;
}

.recruit-list.--nagoya .popular-area-title__subtitle,
.recruit-list.--nagoya .areas-title__subtitle {
  background-color: #44AA67;
}

.recruit-list.--nagoya .location-filter__tag {
  border: solid 1px #568B69;
  color: #568B69;
}

.recruit-list.--nagoya .location-filter__tag::after {
  border-right: 2px solid #568B69;
  border-bottom: 2px solid #568B69;
}

.recruit-list.--nagoya .location-filter__region-header {
  color: #fff;
  background-color: #568B69;
  border: none;
}

.recruit-list.--nagoya .location-filter__list {
  border-color: #568B69;
}

.recruit-list.--nagoya .location-filter__list li {
  border-color: #568B69;
}

.recruit-list.--nagoya .location-filter__open::after {
  border-right: 2px solid #568B69;
  border-bottom: 2px solid #568B69;
}

.recruit-list.--nakasu .popular-area-title,
.recruit-list.--nakasu .areas-title {
  background-color: #DD964F;
}

.recruit-list.--nakasu .popular-area-title__subtitle,
.recruit-list.--nakasu .areas-title__subtitle {
  background-color: #FFA143;
}

.recruit-list.--nakasu .location-filter__tag {
  border: solid 1px #DD964F;
  color: #DD964F;
}

.recruit-list.--nakasu .location-filter__tag::after {
  border-right: 2px solid #DD964F;
  border-bottom: 2px solid #DD964F;
}

.recruit-list.--nakasu .location-filter__region-header {
  color: #fff;
  background-color: #DD964F;
  border: none;
}

.recruit-list.--nakasu .location-filter__list {
  border-color: #DD964F;
}

.recruit-list.--nakasu .location-filter__list li {
  border-color: #DD964F;
}

.recruit-list.--nakasu .location-filter__open::after {
  border-right: 2px solid #DD964F;
  border-bottom: 2px solid #DD964F;
}

.recruit-list.--hokkaidou-touhoku .areas-title {
  background-color: #5256A6;
}

.recruit-list.--hokkaidou-touhoku .location-filter__tag {
  border-color: #5256A6;
  color: #5256A6;
}

.recruit-list.--hokkaidou-touhoku .location-filter__tag::after {
  border-right: 2px solid #5256A6;
  border-bottom: 2px solid #5256A6;
}

.recruit-list.--hokkaidou-touhoku .location-filter__region-header {
  color: #fff;
  background-color: #5256A6;
  border: none;
}

.recruit-list.--hokkaidou-touhoku .location-filter__list {
  border-color: #5256A6;
}

.recruit-list.--hokkaidou-touhoku .location-filter__list li {
  border-color: #5256A6;
}

.recruit-list.--hokkaidou-touhoku .location-filter__open::after {
  border-right: 2px solid #5256A6;
  border-bottom: 2px solid #5256A6;
}

.recruit-list.--kantou .areas-title {
  background-color: #D43051;
}

.recruit-list.--kantou .location-filter__tag {
  border-color: #D43051;
  color: #D43051;
}

.recruit-list.--kantou .location-filter__tag::after {
  border-right: 2px solid #D43051;
  border-bottom: 2px solid #D43051;
}

.recruit-list.--kantou .location-filter__region-header {
  color: #fff;
  background-color: #D43051;
  border: none;
}

.recruit-list.--kantou .location-filter__list {
  border-color: #D43051;
}

.recruit-list.--kantou .location-filter__list li {
  border-color: #D43051;
}

.recruit-list.--kantou .location-filter__open::after {
  border-right: 2px solid #D43051;
  border-bottom: 2px solid #D43051;
}

.recruit-list.--hokushinetu-toukai .areas-title {
  background-color: #568B69;
}

.recruit-list.--hokushinetu-toukai .location-filter__tag {
  border-color: #568B69;
  color: #568B69;
}

.recruit-list.--hokushinetu-toukai .location-filter__tag::after {
  border-right: 2px solid #568B69;
  border-bottom: 2px solid #568B69;
}

.recruit-list.--hokushinetu-toukai .location-filter__region-header {
  color: #fff;
  background-color: #568B69;
  border: none;
}

.recruit-list.--hokushinetu-toukai .location-filter__list {
  border-color: #568B69;
}

.recruit-list.--hokushinetu-toukai .location-filter__list li {
  border-color: #568B69;
}

.recruit-list.--hokushinetu-toukai .location-filter__open::after {
  border-right: 2px solid #568B69;
  border-bottom: 2px solid #568B69;
}

.recruit-list.--kansai .areas-title {
  background-color: #725182;
}

.recruit-list.--kansai .location-filter__tag {
  border-color: #725182;
  color: #725182;
}

.recruit-list.--kansai .location-filter__tag::after {
  border-right: 2px solid #725182;
  border-bottom: 2px solid #725182;
}

.recruit-list.--kansai .location-filter__region-header {
  color: #fff;
  background-color: #725182;
  border: none;
}

.recruit-list.--kansai .location-filter__list {
  border-color: #725182;
}

.recruit-list.--kansai .location-filter__list li {
  border-color: #725182;
}

.recruit-list.--kansai .location-filter__open::after {
  border-right: 2px solid #725182;
  border-bottom: 2px solid #725182;
}

.recruit-list.--cyugoku-shikoku .areas-title {
  background-color: #588294;
}

.recruit-list.--cyugoku-shikoku .location-filter__tag {
  border-color: #588294;
  color: #588294;
}

.recruit-list.--cyugoku-shikoku .location-filter__tag::after {
  border-right: 2px solid #588294;
  border-bottom: 2px solid #588294;
}

.recruit-list.--cyugoku-shikoku .location-filter__region-header {
  color: #fff;
  background-color: #588294;
  border: none;
}

.recruit-list.--cyugoku-shikoku .location-filter__list {
  border-color: #588294;
}

.recruit-list.--cyugoku-shikoku .location-filter__list li {
  border-color: #588294;
}

.recruit-list.--cyugoku-shikoku .location-filter__open::after {
  border-right: 2px solid #588294;
  border-bottom: 2px solid #588294;
}

.recruit-list.--kyusyu-okinawa .areas-title {
  background-color: #DD964F;
}

.recruit-list.--kyusyu-okinawa .location-filter__tag {
  border-color: #DD964F;
  color: #DD964F;
}

.recruit-list.--kyusyu-okinawa .location-filter__tag::after {
  border-right: 2px solid #DD964F;
  border-bottom: 2px solid #DD964F;
}

.recruit-list.--kyusyu-okinawa .location-filter__region-header {
  color: #fff;
  background-color: #DD964F;
  border: none;
}

.recruit-list.--kyusyu-okinawa .location-filter__list {
  border-color: #DD964F;
}

.recruit-list.--kyusyu-okinawa .location-filter__list li {
  border-color: #DD964F;
}

.recruit-list.--kyusyu-okinawa .location-filter__open::after {
  border-right: 2px solid #DD964F;
  border-bottom: 2px solid #DD964F;
}

.recruit-list .list-card.--kabuki {
  border-color: #FB4D70;
}

.recruit-list .list-card.--minami {
  border-color: #83499E;
}

.recruit-list .list-card.--susukino {
  border-color: #6A71FF;
}

.recruit-list .list-card.--nagoya {
  border-color: #44AA67;
}

.recruit-list .list-card.--nakasu {
  border-color: #FFA143;
}

.recruit-list .list-card.--hokkaidou-touhoku {
  border-color: #5256A6;
}

.recruit-list .list-card.--kantou {
  border-color: #D43051;
}

.recruit-list .list-card.--hokushinetu-toukai {
  border-color: #568B69;
}

.recruit-list .list-card.--kansai {
  border-color: #725182;
}

.recruit-list .list-card.--cyugoku-shikoku {
  border-color: #588294;
}

.recruit-list .list-card.--kyusyu-okinawa {
  border-color: #DD964F;
}

.recruit-list .mini-card.--kabuki {
  border-color: #FB4D70;
}

.recruit-list .mini-card.--minami {
  border-color: #83499E;
}

.recruit-list .mini-card.--susukino {
  border-color: #6A71FF;
}

.recruit-list .mini-card.--nagoya {
  border-color: #44AA67;
}

.recruit-list .mini-card.--nakasu {
  border-color: #FFA143;
}

.recruit-list .mini-card.--hokkaidou-touhoku {
  border-color: #5256A6;
}

.recruit-list .mini-card.--kantou {
  border-color: #D43051;
}

.recruit-list .mini-card.--hokushinetu-toukai {
  border-color: #568B69;
}

.recruit-list .mini-card.--kansai {
  border-color: #725182;
}

.recruit-list .mini-card.--cyugoku-shikoku {
  border-color: #588294;
}

.recruit-list .mini-card.--kyusyu-okinawa {
  border-color: #DD964F;
}

.recruit-list .pr-list.--kabuki {
  background-color: #FFE8ED;
}

.recruit-list .pr-list.--minami {
  background-color: #F7E6FF;
}

.recruit-list .pr-list.--susukino {
  background-color: #EAEBFF;
}

.recruit-list .pr-list.--nagoya {
  background-color: #D1EDDB;
}

.recruit-list .pr-list.--nakasu {
  background-color: #FFE9D4;
}

.recruit-list .pr-list.--hokkaidou-touhoku {
  background-color: #E4E5F3;
}

.recruit-list .pr-list.--kantou {
  background-color: #FFE8ED;
}

.recruit-list .pr-list.--hokushinetu-toukai {
  background-color: #C9DACF;
}

.recruit-list .pr-list.--kansai {
  background-color: #E8D3F3;
}

.recruit-list .pr-list.--cyugoku-shikoku {
  background-color: #DCEDF4;
}

.recruit-list .pr-list.--kyusyu-okinawa {
  background-color: #FFE6CC;
}

.recruit-list .ly-wrap {
  padding: 1.5em 1em;
  overflow: hidden;
}

.recruit-list .ly-wrap.--list {
  margin: 1em 0.5em;
}

.recruit-list .count {
  font-size: 1.2rem;
  font-weight: 300;
  margin-left: 1.5em;
}

.recruit-list .group-name-tag {
  margin-top: 1.4em;
  background-color: #707070;
  color: #fff;
  border-radius: 0 24px 24px 0;
  font-size: 1.4rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 1em 2em 1em 1em;
  margin: 0 0 0 -.8em;
}

.recruit-list .pagination {
  display: flex;
  justify-content: center;
  gap: 14px;
  margin-bottom: 1em;
}

.recruit-list .pagination li a.active {
  border-bottom: solid 1px #f37497;
}

/* サブグループヘッダー */
.recruit-list .subgroup-header {
  margin-top: 2em;
  margin-bottom: 0.8em;
}

.recruit-list .subgroup-header__name {
  background-color: #555;
  color: #fff;
  border-radius: 0 24px 24px 0;
  font-size: 1.4rem;
  font-weight: 500;
  width: fit-content;
  padding: 0.6em 2em 0.6em 1em;
  margin: 0 0 0 -.8em;
}

.recruit-list .list-card.--hokkaido {
  border-color: #5256A6;
}

.recruit-list .list-card.--kanto {
  border-color: #D43051;
}

.recruit-list .list-card.--toukai {
  border-color: #568B69;
}

.recruit-list .list-card.--kansai {
  border-color: #725182;
}

.recruit-list .list-card.--cyugoku {
  border-color: #588294;
}

.recruit-list .list-card.--kyusyu {
  border-color: #DD964F;
}

.recruit-list .mini-card {
  -webkit-box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3);
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.3);
  border-top: solid 18px #D90707;
  border-radius: 6px;
  background-color: #fff;
  position: relative;
  display: block;
  color: inherit;
  text-decoration: none;
}

.recruit-list .mini-card:not(:last-child) {
  margin-bottom: 2.5em;
}

.recruit-list .mini-card:last-child {
  margin-bottom: 1.5em;
}

.recruit-list .mini-card__wrap {
  padding: 0 1.5rem 1.5rem;
}

.recruit-list .mini-card .shop-details {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  margin: 0.75em 0;
  position: relative;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.recruit-list .mini-card .shop-details__logo {
  width: 48px;
  height: 48px;
}

.recruit-list .mini-card .shop-details__area {
  color: #FF6C6C;
  font-size: 1.1rem;
}

.recruit-list .mini-card .shop-details__name {
  font-size: 1.5rem;
  font-weight: bold;
}

.recruit-list .mini-card .shop-details__kana {
  font-size: 1.1rem;
}

.recruit-list .mini-card .shop-details__pr {
  font-size: 1.2rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  width: 40px;
  text-align: center;
  border-radius: 24px;
  color: #fff;
  padding: 2px 0;
  background-color: #454545;
  color: #fff;
}

.recruit-list .mini-card .shop-details__tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 4px;
  position: absolute;
  right: -6px;
  top: -22px;
}

.recruit-list .mini-card .shop-details__tags.--left {
  right: auto;
  left: -6px;
}

.recruit-list .mini-card .shop-details__time {
  font-size: 1.2rem;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  width: 40px;
  text-align: center;
  border-radius: 24px;
  color: #fff;
  padding: 2px 0;
}

.recruit-list .mini-card .shop-details__time.--ichibu {
  background-color: #B234CC;
}

.recruit-list .mini-card .shop-details__time.--nibu {
  background-color: #FFB031;
}

.recruit-list .mini-card .shop-details__time.--new {
  background-color: #D90707;
  width: auto;
  padding: 2px 0.5em;
}

.recruit-list .mini-card .card-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 10px;
}

.recruit-list .mini-card .card-body__thumbnail {
  width: 50%;
  border-radius: 6px;
}

.recruit-list .mini-card .card-body__title {
  font-size: 1.6rem;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.recruit-list .mini-card .card-body__info {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.recruit-list .mini-card .salary-info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 6px;
  margin: 0 0 0.5em;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.recruit-list .mini-card .salary-info__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  border: solid 2px #E82A2A;
  width: calc(50% - 3px);
  background-color: #FBFBFB;
  position: relative;
}

.recruit-list .mini-card .salary-info__label {
  font-size: 1rem;
  display: inline-block;
  position: absolute;
  left: 0.25em;
}

.recruit-list .mini-card .salary-info__value {
  font-size: 2rem;
  font-weight: bold;
  margin-left: 0.8em;
  font-family: "Inter";
  padding: 2px;
}

.recruit-list .mini-card .salary-info__value .unit {
  font-size: 1rem;
  font-weight: 300;
}

.recruit-list .new-list {
  background-color: #EFEFEF;
}

.recruit-list .new-list__wrap {
  padding: 1.4rem;
  margin: 1em 0.5em 0;
}

.recruit-list .pr-list {
  background-color: #D1D1D1;
}

.recruit-list .pr-list__wrap {
  padding: 2em 1.375em;
}

.recruit-list .pr-post {
  margin: 1em 1.4rem 4em;
}

.recruit-list .pr-post__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.recruit-list .pr-post__wrap .item {
  width: calc(33% - 6px);
}

.recruit-list .pr-post__wrap .pr-post-tag {
  padding: 6px;
  background: #2d2427;
  color: #fff;
  text-align: center;
  font-size: 1.1rem;
}

.recruit-list .list-card.--visited {
  background-color: #efefef;
}
/* ============================================================
 * 求人記事一覧ページ固有スタイル（PC）
 * portal の job/listing CSS には存在しないため list_pc の参考 CSS から移植。
 * 共通骨格（recruit-list / sticky-area / breadcrumb / pagination / ly-content-area）は
 * 上記ベース（portal listing）を流用する。
 * ============================================================ */
.recruit-list .sticky-area .post-list-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #F0C236;
  color: #313131;
  font-size: calc(1.4rem - 0.2rem * var(--scroll-progress));
  gap: calc(14px - 4px * var(--scroll-progress));
  padding: calc(0.75em - 0.25em * var(--scroll-progress)) calc(3em - 0.5em * var(--scroll-progress)) calc(0.75em - 0.25em * var(--scroll-progress)) calc(1em - 0.2em * var(--scroll-progress));
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  white-space: nowrap;
  border-radius: 0 24px 24px 0;
  margin: calc(1.5em - 0.5em * var(--scroll-progress)) 0;
  -webkit-transition: all 0.1s ease;
  transition: all 0.1s ease;
}
.recruit-list .sticky-area .post-list-title__icon {
  width: calc(22px - 4px * var(--scroll-progress));
  -webkit-transition: width 0.1s ease;
  transition: width 0.1s ease;
}
.recruit-list .ly-wrap.--post_list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.recruit-list .job-post-card {
  padding: 1em 0.5em;
  border-bottom: solid 1px #CECECE;
  width: 50%;
}
.recruit-list .job-post-card .thumnail {
  width: 45%;
  height: auto;
  border-radius: 4px;
}
.recruit-list .job-post-card a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}
.recruit-list .job-post-card__details {
  width: 55%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.recruit-list .job-post-card__details .published-date {
  margin-top: auto;
  padding-top: 0.5em;
  text-align: right;
  font-size: 10px;
  color: #8A8A8A;
}
.recruit-list .job-post-card__details .title {
  font-size: 12px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  color: #313131;
}
.recruit-list .job-post-card__details .area {
  border-top: solid 2px #000;
  font-size: 8px;
  margin-top: 0.75em;
  padding-top: 1em;
  color: #FF6C6C;
}
.recruit-list .job-post-card__details .shop-name {
  font-size: 14px;
  font-weight: bold;
  color: #313131;
}
.recruit-list .job-post-card__details .shop-name__kana {
  font-size: 10px;
  color: #8A8A8A;
}
.recruit-list .job-post-card.--kabuki .area { border-top-color: #FB4D70; }
.recruit-list .job-post-card.--minami .area { border-top-color: #83499E; }
.recruit-list .job-post-card.--susukino .area { border-top-color: #6A71FF; }
.recruit-list .job-post-card.--nagoya .area { border-top-color: #44AA67; }
.recruit-list .job-post-card.--nakasu .area { border-top-color: #FFA143; }
.recruit-list .job-post-card.--hokkaidou-touhoku .area { border-top-color: #5256A6; }
.recruit-list .job-post-card.--kantou .area { border-top-color: #D43051; }
.recruit-list .job-post-card.--hokushinetu-toukai .area { border-top-color: #568B69; }
.recruit-list .job-post-card.--kansai .area { border-top-color: #725182; }
.recruit-list .job-post-card.--cyugoku-shikoku .area { border-top-color: #588294; }
.recruit-list .job-post-card.--kyusyu-okinawa .area { border-top-color: #DD964F; }
