@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@700&display=swap');

/* ===========================
   ロゴ
   =========================== */
.sp-header .logo-box {
  display: block;
  float: none;
  width: 100%;
  padding: 0;
  text-align: left !important;
}

.sp-logo-img {
  width: 160px;
  margin: 0.714em 0 0 0.714em;
}

.sp-logo-img2 {
  width: 120px;
  margin: -6px 0 0;
}

/* ===========================
   ヘッダー
   =========================== */
.sp-header {
  display: block;
  position: relative;
  width: 100%;
  height: auto;
  overflow: visible;
  box-sizing: border-box;
  text-align: center;
}

.sp-login {
  display: block;
  padding: 5px 8px 4px 14px;
  box-sizing: border-box;
  background: url(/img/sp/tri_map_bl.png) no-repeat 5px 50%;
  -webkit-background-size: 5px 8px;
  -moz-background-size: 5px 8px;
  background-size: 5px 8px;
  color: #707070;
  font-weight: bold;
  text-decoration: none;
  cursor: pointer;
}

.sp-login-btn {
  position: absolute;
  top: 0;
  right: 6px;
  width: 75px;
  height: auto;
  border: 1px solid #eee;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  border-radius: 2px;
  -moz-box-shadow: 0px 1px 1px rgba(000, 000, 000, 0.3), inset 0px 0px 1px rgba(255, 255, 255, 1);
  -webkit-box-shadow: 0px 1px 1px rgba(000, 000, 000, 0.3), inset 0px 0px 1px rgba(255, 255, 255, 1);
  box-shadow: 0px 1px 1px rgba(000, 000, 000, 0.3), inset 0px 0px 1px rgba(255, 255, 255, 1);
  background: -moz-linear-gradient(top, #fefefe 0%, #efefef 75%, #efefef);
  background: -webkit-gradient(linear, left top, left bottom, from(#fefefe), color-stop(0.75, #efefef), to(#efefef));
  font-size: 10px;
  font-size: 1rem;
  text-shadow: 0px -1px 0px rgba(000, 000, 000, 0), 0px 1px 0px rgba(255, 255, 255, 0);
}

.sp-viewhistory-btn {
  position: absolute;
  top: 0;
  right: 80px;
  width: 65px;
  height: auto;
  background: -moz-linear-gradient(top, #fefefe 0%, #efefef 75%, #efefef);
  background: -webkit-gradient(linear, left top, left bottom, from(#fefefe), color-stop(0.75, #efefef), to(#efefef));
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  border-radius: 2px;
  border: 1px solid #eeeeee;
  -moz-box-shadow: 0px 1px 1px rgba(000, 000, 000, 0.3), inset 0px 0px 1px rgba(255, 255, 255, 1);
  -webkit-box-shadow: 0px 1px 1px rgba(000, 000, 000, 0.3), inset 0px 0px 1px rgba(255, 255, 255, 1);
  box-shadow: 0px 1px 1px rgba(000, 000, 000, 0.3), inset 0px 0px 1px rgba(255, 255, 255, 1);
  text-shadow: 0px -1px 0px rgba(000, 000, 000, 0), 0px 1px 0px rgba(255, 255, 255, 0);
  font-size: 10px;
  font-size: 1rem;
}

.sp-btn-login-box {
  width: 100%;
  padding: 5px 0 5px 10px;
  text-align: left;
}

.sp-logout-btn,
.sp-mypage-btn {
  display: inline-block;
  width: auto;
  height: auto;
  margin: 0 auto;
  padding: 0.5em 0;
  box-sizing: border-box;
  color: #737373;
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: bold;
  text-decoration: none;
}

.sp-mypage-btn {
  padding: 0.5em;
}

/* ===========================
   共通ヘッダー（ハンバーガーメニュー有）
   =========================== */

.common-header {
  display: flex;
  border-bottom: 3px solid #7ecef4;
  align-items: center;
  justify-content: space-between;
}

.common-header > div {
	margin: 0 0 0 5px;
    width: 30%;
    margin-left: 5px;
}

.common-header > div > a {
	display: table;
}

.common-header > div > a > img {
	display: table-cell;
}

.common-header > a {
  width: 30%;
  margin-left: 5px;
}

.common-header > a > img {
  vertical-align: middle;
}

.common-header .global-navigation {
  display: flex;
  width: 70%;
  margin: 0;
  padding: 0;
  justify-content: flex-end;
}

.common-header .global-navigation > li {
  width: 20%;
  height: 44px;
  font-size: 1rem;
}

.common-header .global-navigation > li > a {
  display: flex;
  width: 100%;
  height: 100%;
  padding: 0 2px;
  color: #959595;
  text-decoration: none;
  letter-spacing: -0.1em;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.common-header .global-navigation > li > a:hover,
.common-header .global-navigation > li > a:visited,
.common-header .global-navigation > li > a:active {
  color: #959595;
  text-decoration: none;
}

.common-header .global-navigation > li > a > i,
.common-header .global-navigation > li #drawer-open > i {
  padding-top: 0.3em;
  font-size: 1.6rem;
}

.common-header .global-navigation > li > a > span,
.common-header .global-navigation > li #drawer-open > span {
  padding-top: 0.3em;
}

.common-header .global-navigation > li.navigation-entry {
  border-left: 1px solid #ddd;
  color: #02aedc;
}

.common-header .global-navigation > li.navigation-entry > a {
  background: #2cc36b;
  color: #fff;
}

.common-header .global-navigation > li.navigation-entry > a:hover,
.common-header .global-navigation > li.navigation-entry > a:visited,
.common-header .global-navigation > li.navigation-entry > a:active {
  color: #fff !important;
}

/* ===========================
  ドロワーメニュー
   =========================== */

.drawer-unshown {
  display: none;
}

#drawer-open {
  display: flex;
  width: 100%;
  height: 100%;
  padding: 0 2px;
  color: #02aedc;
  text-decoration: none;
  letter-spacing: -0.1em;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#drawer-open:hover {
  cursor: pointer;
}

#drawer-open i {
  font-size: 1.6rem;
}

#drawer-close {
  display: none;
  position: fixed;
  z-index: 9998;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  transition: 0.3s ease-in-out;
}

#drawer-close span {
  display: flex;
  width: 27.5%;
  height: 44px;
  opacity: 1;
  position: absolute;
  top: 0;
  right: 0;
  background: #f9fdfe;
  color: #959595;
  align-items: center;
  justify-content: center;
}

#drawer-close span i {
  font-size: 2.2rem;
  margin-right: 0.2em;
}

#drawer {
  overflow: auto;
  position: fixed;
  top: 44px;
  right: 0;
  z-index: 9999;
  width: 90%;
  max-width: 330px;
  height: 100%;
  padding: 2em 1em 60px;
  background: #f9fdfe;
  color: #737373;
  transition: 0.3s ease-in-out;
  -webkit-transform: translateX(105%);
  transform: translateX(105%);
}

#drawer-input:checked ~ #drawer-close {
  display: block;
  background: rgba(0, 0, 0, 0.5);
}

#drawer-input:checked ~ #drawer {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}

.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
}

.drawer-heading {
  margin: 1em 0;
  font-size: 1.4rem;
}

.drawer-list {
  display: flex;
  margin: 0 0 2em;
  padding: 0;
  font-size: 1.3rem;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

.drawer-item {
  width: calc(50% - 0.5em);
  margin: 0.5em 0;
}

.drawer-item.is-full {
  width: 100%;
}

.drawer:nth-child(odd) {
  margin-right: 0.5em;
}

.drawer:nth-child(even) {
  margin-left: 0.5em;
}

.drawer.is-full:nth-child(odd) {
  margin-right: 0;
}

.drawer.is-full:nth-child(even) {
  margin-left: 0;
}

.drawer h3.areaTtl {
  margin: 0;
  padding: 0.2em;
}

#drawer #area_search .search .map,
#drawer .area1_map,
#drawer .area2_map,
#drawer .area3_map,
#drawer .area4_map,
#drawer .area5_map,
#drawer .area6_map,
#drawer .area7_map,
#drawer .area8_map {
  margin: 10px 0 3px;
}

.general-btn {
  display: inline-flex;
  position: relative;
  width: 100%;
  padding: 1em;
  border: 1px solid #7ecef4;
  border-radius: 3px;
  background: #fff;
  color: #737373;
  font-size: 100%;
  font-weight: 700;
  text-decoration: none;
  align-items: center;
}

.general-btn::after {
  content: "\f054";
  position: absolute;
  right: 0.5em;
  color: #7ecef4;
  font-family: "Font Awesome 5 free";
}

.general-btn.is-accordion::after {
  content: "\f107";
}

.general-btn.is-accordion.on::after {
  content: "\f106";
}

.is-primary {
  border: 1px solid #2cc36b;
  /* box-shadow: 0px 2px 3px 0px rgba(204, 204, 204, 0.7); */
  background: #2cc36b;
  color: #fff;
  justify-content: center;
}

.is-disabled {
  border: 1px solid #ccc;
  /* box-shadow: 0px 2px 3px 0px rgba(204, 204, 204, 0.7); */
  background: #fff;
  color: #737373;
  justify-content: center;
}

.general-btn.is-primary:after {
  color: #fff;
}

.general-btn.is-disabled:after {
  color: #737373;
}

/* ===========================
   トップメインイメージ部
   =========================== */
.sp-main-photo {
  background: url(/img/sp/sp_top_main_KJB_fv.png) top right / cover no-repeat;
}

.sp-main-photo:has(.job-reentry-btn) {
  min-height: 250px;
}

.sp-main-photo > a {
	display: flex;
	align-items: center;
	width: 70%;
	margin: 0.5em auto 0;
	font-size: 1.8rem;
}

.sp-main-photo .job-reentry-btn i {
	position: inherit;
	top: inherit;
	right: inherit;
}
:root {
  --fv-color: #1CAEDC;
  --fv-sub-color: #E1F5FA; /* 他の変数も定義できます */
}

.sp-main-message-number-num,
.sp-main-message-number-unit,
.sp-main-message-number-vertical,
.sp-main-job-new-num,
.sp-main-job-new-unit {
  color: var(--fv-color);
}

.sp-main-job-num,
.sp-main-job-new-num,
.sp-main-job-new-unit {
  color: #4291aa;
}

.sp-main-job-new-tag {
  background-color: #FF9F39;
}

.sp-main-job {
  background-color: var(--fv-sub-color);
}

.sp-sub-copy-heading {
  span.strong {
    color: var(--fv-color);
  }
}

.sp-fv-cv {
  background: linear-gradient(180deg, #ECFAFF 0%, #B7EFFF 100%)
}

.sp-fv-cv-header-text {
  span {
    color: var(--fv-color);
    font-weight: 700;
    text-decoration: underline;
  }
}

a.terms_search {
  width: 95%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 10px auto;
  text-decoration: none;
  height: 48px;
  color: #707070;
  font-weight: bold;
  background: -webkit-gradient( linear, left top, left bottom, from(#fefefe), color-stop(0.75, #efefef), to(#efefef));
  border-radius: 4px;
  border: 1px solid #E6E5E5;
  -moz-box-shadow: 0px 1px 1px rgba(000,000,000,0.3), inset 0px 0px 1px rgba(255,255,255,1);
  -webkit-box-shadow: 0px 1px 1px rgba(000,000,000,0.3), inset 0px 0px 1px rgba(255,255,255,1);
  box-shadow: 0px 1px 1px rgba(000,000,000,0.3), inset 0px 0px 1px rgba(255,255,255,1);
  text-shadow: 0px -1px 0px rgba(000,000,000,0), 0px 1px 0px rgba(255,255,255,0);
}

a.terms_search i {
  color: #7ecef4;
  padding-right: 10px;
}

/* ボタン効果 */

@keyframes shiny {
    0% { left: -20%; }
    10% { left: 120%; }
    100% { left: 120%; }
}

.shiny-btn {
    position: relative;
    overflow: hidden;
}

.shiny-btn::after {
    content: '';
    position: absolute;
    top: -10%;
    left: -20%;
    width: 40px;
    height: 100%;
    transform: scale(2) rotate(20deg);
    background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .75) 100%, rgba(255, 255, 255, 0) 0%);

    animation-name: shiny;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}

/* end ボタン効果 */

.sp-main-message h1 span {
  color: var(--fv-color);
}

.sp-main-message p {
  margin: 0 0 2px;
  font-size: 0.8em;
}

.sp-main-message h2 {
  margin: 0;
  font-size: 2rem;
  line-height: 1.2;
}

.sp-main-message h2 span {
  font-size: 1.6rem;
}

.sp-main-catch-wrap {
  width: 100%;
  text-align: left;
}

.sp-main-catch-wrap p {
  background: #fff;
  padding: 5px 10px 5px 13px;
  margin: 0;
  color: #61b6de;
  font-size: 12px;
  font-weight: bold;
}

.sp-main-shadow {
  filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.2));
}

.sp-main-shadow + .sp-main-shadow {
  margin-top: 6px;
}

.sp-main-shadow:first-child {
  width: 138px;
}

.sp-main-shadow:last-child {
  width: 115px;
}

.sp-main-catch-login .sp-main-shadow:first-child {
  width: 124px;
}

.sp-main-catch-login .sp-main-shadow:last-child {
  width: 155px;
}

.sp-main-catch-wrap .sp-main-shadow:first-child p {
  clip-path: polygon(0 0, 100% 0%, 95% 100%, 0% 100%);
}

.sp-main-catch-wrap .sp-main-shadow:last-child p {
  clip-path: polygon(0 0, 100% 0%, 94% 100%, 0% 100%);
}

.sp-main-catch-login .sp-main-shadow:first-child p {
  clip-path: polygon(0 0, 100% 0%, 95% 100%, 0% 100%);
}

.sp-main-catch-login .sp-main-shadow:last-child p {
  clip-path: polygon(0 0, 100% 0%, 96% 100%, 0% 100%);
}

.sp-main-btn {
  position: relative;
  top: 145px;
}

.sp-gray-box {
  width: 100%;
  padding: 1em 0;
  border-bottom: 1px solid #d5d5d5;
  background: #f7f7f7;
  text-align: center;
}

/* ===========================
   トップ下部サブメニュー
   =========================== */
.sp-sub-menu a,
.sp-ditaile-bottom-menu a {
  display: block;
  position: relative;
  margin: 0 0 1px 0;
  padding: 10px;
  border-bottom: solid 1px #d5d5d5;
  border-radius: 0;
  background: #fff;
  color: #737373;
  font-size: 1.6rem;
  font-size: 16px;
  text-decoration: none;
  cursor: pointer;
}

.sp-sub-menu a::after {
  content: "\f054";
  top: 50%;
  left: 10px;
  float: right;
  font-family: "FontAwesome";
}

.sp-ditaile-bottom-menu a::after {
  content: "\f054";
  position: relative;
  top: 10px;
  right: 5px;
  float: right;
  font-family: "FontAwesome";
}

/* ===========================
   検索結果一覧ページ
   =========================== */
.sp-search-photo {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 10px 0 5px;
  border-bottom: 1px solid #d5d5d5;
  box-sizing: border-box;
  background: url(/img/sp/secret.png) 0 0/70% no-repeat #1cd8d2;
  background: url(/img/sp/secret.png) 0 0/70% no-repeat, -webkit-linear-gradient(to left, #00c6ff, #0072ff); /* Chrome 10-25, Safari 5.1-6 */
  background: url(/img/sp/secret.png) 0 0/70% no-repeat, linear-gradient(to left, #00c6ff, #0072ff); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}

.sp-search-photo > h1 {
  display: block;
  float: right;
  width: auto;
  margin-right: 10px;
  padding: 0;
  font-size: 1.1em;
  font-weight: bold;
  line-height: 1.6;
  text-align: left;
}

.sp-search-photo > h1.copy {
  display: block;
  float: right;
  width: auto;
  margin: 0.4em 10px 0.67em 0;
  padding: 0;
  font-size: 1.4em;
  font-weight: bold;
  line-height: 1.6;
  text-align: left;
}

.secret_copy {
  display: block;
  float: right;
  width: 60%;
  height: auto;
  margin-right: 5px;
}

.sp-secret-txt {
  margin: 0;
  color: #ff8100;
  -moz-text-shadow: 1px 1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff, 1px 0px 0 #fff, 0px 1px 0 #fff,
    -1px 0px 0 #fff, 0px -1px 0 #fff;
  -webkit-text-shadow: 1px 1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff, 1px 0px 0 #fff,
    0px 1px 0 #fff, -1px 0px 0 #fff, 0px -1px 0 #fff;
  text-shadow: 1px 1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff, 1px 0px 0 #fff, 0px 1px 0 #fff,
    -1px 0px 0 #fff, 0px -1px 0 #fff;
}

.sp-secret-txt2 {
  margin: 0;
  color: #333;
  -moz-text-shadow: 1px 1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff, 1px 0px 0 #fff, 0px 1px 0 #fff,
    -1px 0px 0 #fff, 0px -1px 0 #fff;
  -webkit-text-shadow: 1px 1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff, 1px 0px 0 #fff,
    0px 1px 0 #fff, -1px 0px 0 #fff, 0px -1px 0 #fff;
  text-shadow: 1px 1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff, 1px 0px 0 #fff, 0px 1px 0 #fff,
    -1px 0px 0 #fff, 0px -1px 0 #fff;
}

a.sp-secret-entry-btn {
  display: block;
  clear: right;
  float: right;
  width: 60%;
  height: 60px;
  margin-right: 10px;
  padding: 15px 45px 15px 10px;
  border: solid 3px #fff;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  box-shadow: rgba(204, 204, 204, 0.55) 0px 0px 4px 2px;
  -webkit-box-shadow: rgba(204, 204, 204, 0.55) 0px 0px 4px 2px;
  -moz-box-shadow: rgba(204, 204, 204, 0.55) 0px 0px 4px 2px;
  background: url(/img/sp/icon_view_entry.png) no-repeat 98% center #35be43;
  background-size: 16%;
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
}

a.sp-secret-entry-btn > p {
  margin: 0;
  color: #fff !important;
  font-size: 20px;
  font-weight: bold;
  line-height: 120%;
  white-space: nowrap;
}

.sp-search-ttl-lg {
  padding: 0.357em 0.714em 0.357em 0;
  font-size: 24px;
  font-size: 2.4rem;
  text-align: right;
  font-weight: bold;
  text-shadow: 2px 2px 1px rgba(255, 255, 255, 0.8), -2px 2px 1px rgba(255, 255, 255, 0.9),
    2px -2px 1px rgba(255, 255, 255, 0.9), -2px -2px 1px rgba(255, 255, 255, 0.8);
}

.sp-search-ttl-sm {
  font-size: 16px;
  font-size: 1.6rem;
}

.sp-search-btn {
  position: relative;
  top: -22px;
}

.sp-pagenavi {
  display: table;
  width: 95%;
  height: auto;
  margin: 10px auto;
  padding: 0;
}

.next,
.prev {
  display: table-cell;
  padding: 0 5px;
  box-sizing: border-box;
}

.next span,
.next a,
.prev span,
.prev a {
  display: inline-block;
  padding: 5px 10px;
  border: 1px solid #ccc;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}

.next span,
.prev span {
  color: #cccccc;
  background: #f5f5f5;
}

.next a,
.prev a {
  background: -moz-linear-gradient(top, #f5f5f5 0%, #edeae8);
  background: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#edeae8));
  font-weight: bold;
  text-decoration: none;
}

.next {
  text-align: right;
}

.list-pagenavi {
  display: flex;
  flex-wrap: wrap;
  padding: 3%;
  background: #fff;
  box-shadow: 0 -5px 2px -2px rgba(0, 0, 0, 0.2) inset;
  justify-content: space-between;
  align-items: center;
  font-size: 1.2rem;
}

.list-pagenavi span {
  margin: 0;
  text-align: center;
  font-size: 1.2rem;
  color: #bbb;
}

.list-pagenavi span.next,
.list-pagenavi span.prev {
  width: 30%;
}

.list-pagenavi .next a,
.list-pagenavi .prev a {
  background: #fff;
  border: #189edd 1px solid;
  color: #189edd;
  border-radius: 4px;
  display: inline-block;
  width: 100%;
  margin: 0;
  padding: 8px;
  text-align: center;
  text-decoration: none;
  font-weight: normal;
}

.list-pagenavi ul {
  display: flex;
  width: 40%;
  justify-content: center;
  padding: 0 0 0 0px;
}

.list-pagenavi ul li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
  margin: 0 1.5%;
}

.list-pagenavi a,
.list-pagenavi a:visited,
.list-pagenavi a:hover,
.list-pagenavi a:active {
  text-decoration: none;
  color: #189edd;
}

.l-footer-nav a,
.l-footer-nav a:visited,
.l-footer-nav a:hover,
.l-footer-nav a:active {
  color: #fff;
}

.sp-btn-submit {
  display: block;
  width: 240px;
  margin: 0 auto;
  padding: 0.5em 0.9em;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
}

/*** エリアを絞り込む  ***/
ul.area-gp {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 0 10px;
  padding: 0;
  overflow: hidden;
  border-bottom: solid 1px #d5d5d5;
}

li.area-sp {
  width: 50%;
  float: left;
  margin: 0;
  padding: 10px;
  border-bottom: solid 1px #d5d5d5;
  box-sizing: border-box;
  font-size: 1.2rem;
  white-space: nowrap;
}

li.area-sp a {
  display: block;
  position: relative;
}

li.area-sp a::after {
  content: "";
  display: block;
  position: absolute;
  top: 12px;
  right: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 6px;
  height: 6px;
  margin-top: -6px;
  border-top: solid 2px #d5d5d5;
  border-right: solid 2px #d5d5d5;
}

li.area-sp:nth-child(odd) {
  border-right: solid 1px #d5d5d5;
}

li.area-sp:last-child,
li.area-sp:nth-last-child(2):nth-child(odd) {
  border-bottom: none;
}

.area-accordion {
  width: 100%;
}

.area-title {
  display: block;
  margin-bottom: 0;
  padding: 0 15px 15px;
  border-bottom: solid 1px #d5d5d5;
}

.sp-btn-area {
  padding: 10px 5px;
}

/* ===========================
   詳細ページ
   =========================== */
.sp-ttl-line {
  margin: 0.5em;
  padding: 0 0.5em;
  border-left: 3px solid #fff;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: left;
}

div.toggle-button-detail {
  width: 6%;
  display: inline-block;
  margin-left: 65%;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background: #fff;
  color: #7ecef4;
  text-align: center;
}

.word-break {
  word-break: break-all;
}

/* ===========================
   パンくず
   =========================== */
.sp-breadcrumb {
  display: table;
  width: 96%;
  height: auto;
  margin-bottom: 10px;
  padding: 10px 5px 0 15px;
  box-sizing: border-box;
}

/* ===========================
   ログインページ
   =========================== */
.autologin_sp {
  width: 100%;
  margin: 0 auto;
  padding: 5px;
  border: solid 1px #ccc;
  background: #f8fdff;
  text-align: center;
}

/* ===========================
   Formページ
   =========================== */
.sp-step_bar li {
  display: inline-block;
  padding: 0 10px 0 20px;
  background: #f7f7f7;
  color: #bfbfc0;
  font-size: 13px;
  font-size: 1.35rem;
  text-decoration: none;
  line-height: 46px;
}

.sp-step_bar li::after {
  content: " ";
  display: block;
  position: relative;
  -webkit-transform: skew(-30deg);
  -moz-transform: skew(-30deg);
  -ms-transform: skew(-30deg);
  -o-transform: skew(-30deg);
  transform: skew(-30deg);
  width: 20px;
  height: 22px;
  margin-top: -25px;
  margin-right: -20px;
  margin-left: auto;
  border-right: 1px solid #e6e6e6;
  background: #f7f7f7;
}

.sp-step_bar li::before {
  content: " ";
  display: block;
  float: right;
  -webkit-transform: skew(30deg);
  -moz-transform: skew(30deg);
  -ms-transform: skew(30deg);
  -o-transform: skew(30deg);
  transform: skew(30deg);
  width: 20px;
  height: 21px;
  margin-right: -20px;
  margin-bottom: -25px;
  margin-left: auto;
  border-right: 1px solid #e6e6e6;
  background: #f7f7f7;
}

.sp-step_bar li:first-child {
  padding-left: 18px;
  -webkit-border-radius: 5px 0 0 5px;
  -moz-border-radius: 5px 0 0 5px;
  -ms-border-radius: 5px 0 0 5px;
  -o-border-radius: 5px 0 0 5px;
  border-radius: 5px 0 0 5px;
}

.sp-step_bar li:last-child {
  padding-right: 15px;
  padding-left: 20px;
  -webkit-border-radius: 0 5px 5px 0;
  -moz-border-radius: 0 5px 5px 0;
  -ms-border-radius: 0 5px 5px 0;
  -o-border-radius: 0 5px 5px 0;
  border-radius: 0 5px 5px 0;
}

.sp-step_bar li:last-child::before {
  border: 0;
  background: transparent !important;
}

.sp-step_bar li:last-child::after {
  border: 0;
  background: transparent !important;
}

.sp-step_bar li.current {
  background: #ff8e6b;
  color: #fff;
}

.sp-step_bar li.current::before {
  background: #ff8e6b;
}

.sp-step_bar li.current::after {
  background: #ff8e6b;
}

.sp-step_bar li.current:last-child::before {
  border: 0;
  background: transparent !important;
}

.sp-step_bar li.current:last-child::after {
  border: 0;
  background: transparent !important;
}

#sp-step_bar_box {
  width: 100%;
  margin: 0 auto;
  padding: 0.2em 0 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

ol.sp-step_bar {
  list-style: none;
  padding: 0;
  text-align: center;
}

.sp-form-box {
  width: 85%;
  margin: 0 auto;
  padding: 0 1.429em;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
}

.sp-login-box {
  width: 90%;
  margin: 0 auto;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
}

/* ===========================
	エントリーボタン
   =========================== */
.btn-freeentry {
  display: block;
  width: 90%;
  height: auto;
  margin: 0 auto;
  padding: 0.5em 0;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
}

/* ===========================
	平均給与・年収
   =========================== */
.sp-ttl-ss {
  padding: 0 0.3em;
  font-size: 25px;
  font-size: 2.5rem;
  font-weight: normal;
}

.sp-as_tab {
  display: inline-block;
  margin-right: 2px;
  padding: 10px 8px;
  border: 1px solid #7ecef4;
  -webkit-border-radius: 0.357em 0.357em;
  -moz-border-radius: 0.357em 0.357em;
  -ms-border-radius: 0.357em 0.357em;
  -o-border-radius: 0.357em 0.357em;
  border-radius: 0.357em 0.357em;
  color: #3ebcec;
}

.active {
  display: inline-block;
  margin-right: 2px;
  padding: 10px 8px;
  border: 1px solid #7ecef4;
  -webkit-border-radius: 0.357em 0.357em;
  -moz-border-radius: 0.357em 0.357em;
  -ms-border-radius: 0.357em 0.357em;
  -o-border-radius: 0.357em 0.357em;
  border-radius: 0.357em 0.357em;
  background: #7ecef4;
  color: #fff;
  text-decoration: none;
}

.sp-inner {
  display: table;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}

/* ===========================
	臨床検査技師になるには
   =========================== */
.sp-quote-left {
  position: relative;
  padding: 1.3em 1.3em 0.5em;
  background: #f8f8f8;
  text-align: center;
  font-size: 18px;
  font-size: 1.8rem;
}

.sp-quote-left::before {
  content: "\f10d";
  position: absolute;
  left: 20px;
  top: 5px;
  color: #d5d5d5;
  font-family: "FontAwesome";
  font-size: 160%;
}

/* ===========================
	職務経歴書の書き方
   =========================== */
.popup-btn {
  display: inline-block;
  padding: 10px 5px;
  border: 1px solid #ff961b;
  -webkit-border-radius: 0.357em 0.357em;
  -moz-border-radius: 0.357em 0.357em;
  -ms-border-radius: 0.357em 0.357em;
  -o-border-radius: 0.357em 0.357em;
  border-radius: 0.357em 0.357em;
  background: #ff961b;
  color: #fff;
  text-decoration: none;
}

.popup-btn:hover {
  border: 1px solid #ff961b;
  background: #fff;
  color: #ff961b;
}

/* ===========================
	認定資格について
   =========================== */
select {
  font-size: 16px;
}

option {
  padding: 10px;
}

.selectmenu {
  display: block;
  width: 100%;
  margin: 10px 0 20px 0;
}

.license-list {
  padding: 0 0 0 20px;
}

/* ===========================
	採用の流れ
   =========================== */
#saiyoFlow .readBox {
  margin: 10px;
}

#saiyoFlow .readBox h4 {
  margin: 0;
}

#saiyoFlow .readBox h4 span {
  color: #ffc0cb;
}

#saiyoFlow .readBox p {
  color: #ff0000;
}

#saiyoFlow .articleBlock {
  display: none;
  margin: 0 0 10px;
}

#saiyoFlow .articleBlock .job-detail-full {
  width: 100%;
  margin: 0 auto;
}

.processText p {
  position: relative;
  margin: 20px 0 0;
  padding: 0 0 0 1em;
  text-indent: -1em;
}

.processText p::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -35px;
  left: 50%;
  width: 0;
  height: 0;
  margin: 0 0 0 -15px;
  border: 20px solid transparent;
  border-top: 8px solid #7ecef4;
}

.processText p:last-child::after {
  display: none;
}

.processText p:first-child {
  margin: 0;
}

#saiyoFlow .btnArea {
  margin: 10px;
  text-align: right;
}

#saiyoFlow .conditions_area {
  margin: 10px 0 0;
}

#saiyoFlow .btnArea .btnLink {
  display: inline-block;
  position: relative;
  padding: 5px 10px 5px 20px;
  border: 1px solid #ccc;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  background: -moz-linear-gradient(top, #f5f5f5 0%, #edeae8);
  background: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#edeae8));
  color: #4d4d4d;
  font-weight: bold;
  text-decoration: none;
}

#saiyoFlow .btnArea #btnClose {
  display: none;
}

#saiyoFlow .btnArea .btnLink::before {
  content: "";
  display: block;
  position: absolute;
  left: 5px;
  top: 50%;
  width: 0;
  height: 0;
  margin: -4px 0 0;
  border: 6px solid transparent;
  border-bottom: 8px solid #4d4d4d;
}

#saiyoFlow .btnArea #btnOpen::before {
  display: block;
  border-top: 8px solid #4d4d4d;
  border-bottom: 6px solid transparent;
}

#saiyoFlow .btnArea #btnClose::before {
  display: block;
  border-top: 8px solid transparent;
  border-bottom: 6px solid #4d4d4d;
  margin: -12px 0 0;
}

/* ===========================
	転職体験談
   =========================== */
.sp-user_voice {
  display: block;
  position: relative;
  margin: 10px 0;
}

.sp-face_box {
  display: block;
  width: 120px;
  height: auto;
  text-align: center;
}

.sp-arrow_box {
  position: relative;
  width: 500px;
  height: auto;
  margin-left: 140px;
  padding: 20px;
  border: 1px solid #f9e6ab;
  border-radius: 6px;
  background: #fefef2;
}

.sp-arrow_box::after,
.sp-arrow_box::before {
  content: " ";
  position: absolute;
  top: 50%;
  right: 100%;
  width: 0;
  height: 0;
  border: solid transparent;
  pointer-events: none;
}

.sp-arrow_box::after {
  margin-top: -7px;
  border-color: rgba(254, 254, 252, 0);
  border-right-color: #fefef2;
  border-width: 7px;
}

.sp-arrow_box::before {
  margin-top: -8px;
  border-color: rgba(249, 230, 171, 0);
  border-right-color: #f9e6ab;
  border-width: 8px;
}

.sp-uv-list {
  margin: 20px auto;
  padding-left: 0;
}

.sp-uv-list-box {
  display: inline-block;
  width: 100%;
  height: auto;
  padding: 20px 0;
  box-sizing: border-box;
  background: url(/img/contents/dot_line.png) repeat-x top;
  text-align: center;
  vertical-align: top;
}

.sp-uv-list-box:first-child {
  padding: 0 0 20px;
  background: none;
}

/* 一覧吹き出し */
.sp-arrow_box_b {
  display: table-cell;
  height: 100px;
  margin-bottom: 5px;
  padding: 10px;
  border: 1px solid #f9e6ab;
  border-radius: 6px;
  box-sizing: border-box;
  background: #fefef2;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: left;
  vertical-align: middle;
}

.uv_partition-box {
  margin: 0 0.1em;
  padding: 0.5em 0 0 0;
  box-sizing: border-box;
  background: url(/img/contents/dot_line.png) repeat-x top;
}

.sp-attribute {
  list-style-type: none;
  margin: 0;
  padding-left: 0;
}

.sp-attribute li {
  margin-bottom: 5px;
}

.new-icon {
  position: absolute;
  top: -8px;
  left: -8px;
  z-index: 999;
}

.new-icon-top {
  position: absolute;
  top: -3px;
  left: -10px;
  z-index: 999;
}

.sp-uv-quote-left {
  position: relative;
  padding: 1.3em 1.3em 0.1em;
  background: #f8f8f8;
  font-size: 18px;
  font-size: 1.8rem;
  text-align: left;
}

.sp-uv-quote-left::before {
  content: "\f10d";
  position: absolute;
  top: 5px;
  left: 20px;
  color: #d5d5d5;
  font-family: "FontAwesome";
  font-size: 160%;
}

.sp-face-icon {
  float: right;
}

/* ===========================
	キャリアコンサルタント紹介
   =========================== */
#slider1 {
  padding: 0;
}

.sp-bottom-cc {
  display: table-cell;
  width: 60%;
  height: 215px;
  margin: 0 auto;
  padding: 0 5px;
  text-align: center;
}

.sp-bottom-cc-txt {
  width: 60%;
  margin: 0.357em auto;
  text-align: left;
}

/************************************
	newentry SP_1
************************************/
#inputAreaNewentry01_sp {
  background: #ece9e6;
}

#inputAreaNewentry01_sp #mail.mail_input_bg_yellow {
  background: #fffbce;
}

#inputAreaNewentry01_sp .form-box-inner {
  position: relative;
}

#inputAreaNewentry01_sp .form-box-inner .messageBox {
  display: none;
  position: absolute;
  top: -5px;
  left: 30px;
  padding: 5px 10px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  background: #f48c8c;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
}

#inputAreaNewentry01_sp .submitImg {
  text-align: center;
}

.form-note {
  width: 90%;
  margin: 0 auto;
  padding-left: 1em;
  font-size: 14px;
  line-height: 1.4;
  text-indent: -0.4em;
}

/* top page お知らせ */
.news-box {
  display: block;
  width: 680px;
  margin: 0 auto;
  padding: 20px;
  box-sizing: border-box;
  background: #fff;
}

.news {
  display: table;
}

.date {
  display: table-cell;
  font-weight: bold;
  white-space: nowrap;
}

.detail {
  display: table-cell;
  padding-left: 10px;
  color: #737373;
}

/**********************
	気になる条件！
***********************/
#btmJobLink {
  margin: -12px 0 0;
}

#btmJobLink .jobLinkTtl {
  padding: 0 5px;
  background: #ff8100;
}

#btmJobLink .jobLinkTtl p {
  display: table-cell;
}

#btmJobLink .jobLinkTtl p.leftImg,
#btmJobLink .jobLinkTtl p.leftImg img {
  vertical-align: bottom;
}

#btmJobLink .jobLinkTtl p.rightText {
  padding: 5px 5px;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  vertical-align: middle;
}

#btmJobLink .btmLinkList {
  border-top: 1px solid #ccc;
}

#btmJobLink .btmLinkList a {
  display: block;
  position: relative;
  padding: 20px 20px 20px 60px;
  border-bottom: 1px solid #ccc;
  color: #707070;
  font-size: 14px;
  text-align: left;
  text-decoration: none;
}

#btmJobLink .btmLinkList a > span {
  color: #ff0000;
  font-weight: bold;
}

#btmJobLink .btmLinkList a::after {
  content: "";
  display: block;
  visibility: visible;
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 8px;
  height: 8px;
  margin-top: -6px;
  border-top: solid 2px #ff0000;
  border-right: solid 2px #ff0000;
}

#btmJobLink .btmLinkList a.kyuryou {
  background: url(/img/recruit/sp/icon_kyuryou.gif) no-repeat 10px center #ffffff;
  background-size: 45px 45px;
}

#btmJobLink .btmLinkList a.kyujitsu {
  background: url(/img/recruit/sp/icon_kyujitsu.gif) no-repeat 10px center #ffffff;
  background-size: 45px 45px;
}

#btmJobLink .btmLinkList a.zangyo {
  background: url(/img/recruit/sp/icon_zangyo.gif) no-repeat 10px center #ffffff;
  background-size: 45px 45px;
}

#saiyoFlow .processText p {
  position: relative;
  margin: 20px 0 0;
  padding: 0 0 0 1em;
  text-indent: -1em;
}

/**********************
	気になる条件！水色
***********************/

#btmJobLink .btmLinkList-bl {
  border-top: 1px solid #ccc;
}

#btmJobLink .btmLinkList a.bl {
  display: block;
  position: relative;
  padding: 20px 20px 20px 60px;
  border-bottom: 1px solid #ccc;
  color: #707070;
  font-size: 14px;
  text-align: left;
}

#btmJobLink .btmLinkList a.bl > span {
  color: #2cc5f1;
  font-weight: bold;
}

#btmJobLink .btmLinkList a.bl::after {
  content: "";
  display: block;
  visibility: visible;
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 8px;
  height: 8px;
  margin-top: -6px;
  border-top: solid 2px #2cc5f1;
  border-right: solid 2px #2cc5f1;
}

#btmJobLink .btmLinkList a.pen {
  background: url(/img/recruit/sp/icon_pen.png) no-repeat 10px center #ffffff;
  background-size: 45px 45px;
}

#btmJobLink .btmLinkList a.people {
  background: url(/img/recruit/sp/icon_people.png) no-repeat 10px center #ffffff;
  background-size: 45px 45px;
}

#btmJobLink .btmLinkList a.calendar {
  background: url(/img/recruit/sp/icon_calendar.png) no-repeat 10px center #ffffff;
  background-size: 45px 45px;
}

.btmLinkList:nth-child(2) {
  display: none !important;
}

/* ===========================
   各ページ
   =========================== */
.sp-inner-box {
  width: 95%;
  margin: 0.714em auto;
  overflow: hidden;
  background: #fff;
}

.sp-title-bar {
  margin: 0;
  padding: 0.5em 0.95em;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
}

.sp-form-box {
  width: 280px;
  margin: 20px auto;
  padding: 20px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

/* ===========================
   登録フォーム
   =========================== */
input[type="radio"] {
  -webkit-transform: scale(1.5);
  transform: scale(1.5);
  margin-right: 10px;
}

.error-messageB {
  padding: 0 0 0 10px;
}

/* top page お知らせ */
.news-box {
  display: block;
  width: 680px;
  margin: 0 auto;
  padding: 20px;
  box-sizing: border-box;
  background: #fff;
}

.news {
  display: table;
}

.date {
  display: table-cell;
  font-weight: bold;
  white-space: nowrap;
}

.detail a {
  display: table-cell;
  padding-left: 5px;
  color: #737373;
  text-align: left;
}

/************************
	登録フォーム　ラジオボタン
 *************************/
.radioBox {
  display: table;
  width: 100%;
  border-collapse: separate;
}

.radioBox p {
  display: table-cell;
  width: 50%;
  padding: 0;
  overflow: hidden;
  border-right: 1px #ccc solid;
  border-top: 1px #ccc solid;
  border-bottom: 1px #ccc solid;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  vertical-align: middle;
}

.radioBox.shugyo p {
  width: 33%;
}

.radioBox.shikaku p {
  width: 25%;
}

.radioBox p:first-child {
  border-left: 1px #ccc solid;
  border-radius: 12px 0 0 12px;
  -webkit-border-radius: 12px 0 0 12px;
}

.radioBox p:last-child {
  -webkit-border-radius: 0 12px 12px 0;
  border-radius: 0 12px 12px 0;
}

.radioBox label {
  display: inline-flex;
  position: relative;
  width: 100%;
  height: 100%;
}

.radioBox label input {
  position: absolute;
  opacity: 0;
  top: 0;
  left: 0;
  -webkit-transform: scale(1);
  transform: scale(1);
  width: 100%;
  height: 100%;
  margin: 0;
  cursor: pointer;
  -webkit-appearance: button;
  appearance: button;
}

.radioBox label span {
  display: block;
  width: 100%;
  margin: 0;
  padding: 8px 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  background: #fbfbfb;
  background: -moz-linear-gradient(top, #eee 0%, #fefefe 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #eee), color-stop(100%, #fefefe));
  background: -webkit-linear-gradient(top, #fefefe 0%, #eee 100%);
  background: linear-gradient(to bottom, #fefefe 0%, #eee 100%);
  color: #666;
  font-size: 11px;
  font-weight: bold;
  text-align: center;
}

.radioBox label span img {
  width: 40%;
}

.shugyo label span img {
  width: 60%;
}

.shikaku label span img {
  width: 80%;
}

.radioBox label input:checked + span {
  background: #ffad94;
  color: #fff;
}

.radioBox p:first-child span {
  border-radius: 12px 0 0 12px;
}

.radioBox p:last-child span {
  border-radius: 0 12px 12px 0;
}

.fsmall {
  font-size: small;
}

.tableWrap {
  width: 95%;
  padding: 20px;
  margin: 1em auto 2em;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  background: #c1ebff;
}

.tableWrap .job-detail-2c {
  width: 100%;
  margin: 0 auto;
  border: none;
}

.tableWrap .ttlLink {
  color: #5656f5;
}

.tableWrap .ttlLink:hover {
  color: #f55656;
}

.tableWrap .job-detail-number {
  border-top: 1px solid #d5d5d5;
  border-right: 1px solid #d5d5d5;
  border-bottom: 2px solid #5656f5;
  border-left: 1px solid #d5d5d5;
}

.tableWrap .job-detail-2c th {
  border-left: 1px solid #d5d5d5;
}

.tableWrap .job-detail-btn-s {
  border: 1px solid #e36565;
  background: -moz-linear-gradient(center top, #f46b6b 5%, #e54a4a 100%);
  background: -ms-linear-gradient(top, #f46b6b 5%, #e54a4a 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f46b6b', endColorstr='#e54a4a');
  background: -webkit-gradient(linear, left top, left bottom, color-stop(5%, #f46b6b), color-stop(100%, #e54a4a));
  background: #f46b6b;
  color: #fff;
  text-shadow: 1px 1px 0px #f26666;
  -webkit-box-shadow: inset 1px 1px 0px 0px #f26666;
  -moz-box-shadow: inset 1px 1px 0px 0px #f26666;
  box-shadow: inset 1px 1px 0px 0px #f26666;
}

.member-detail .member-info-title {
  padding: 8px 0 10px 4px;
  background: #7ecef4;
  color: #fff;
  text-align: left;
}

.member-detail2 .member-info-title,
.member-detail .member-info-title {
  padding: 8px 0 10px 4px;
  background: #7ecef4;
  color: #fff;
  font-size: 1.5rem;
  text-align: left;
}

/************************
	案件表示トップページ
 *************************/
.sp_tableWrap_top {
  width: 95%;
  padding: 10px;
  margin: 1em auto 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  background: #c1ebff;
}

.sp_tableWrap_top:hover {
  background: #7ecef4;
}

.sp_tableWrap_top .job-detail-2c th,
.sp_tableWrap_top .job-detail-2c td {
  padding-bottom: 0 !important;
  font-weight: normal;
  vertical-align: top;
}

.sp_tableWrap_top .job-detail-2c {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  padding-bottom: 10px;
  box-sizing: border-box;
  text-align: left;
  vertical-align: top;
}

.sp_tableWrap_top .list-pickup-area {
  height: auto;
  margin: 10px;
  padding: 10px;
  box-sizing: border-box;
  background: #fdfded;
}

.sp_tableWrap_top .list-pickup-area p {
  display: -webkit-box;
  margin: 5px 0;
  overflow: hidden;
  box-sizing: border-box;
  text-align: justify;
  text-justify: inter-ideograph;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.sp_job-detail-item_top {
  width: 15%;
  padding: 0 1em;
  text-align: left;
  white-space: nowrap;
}

.sp_job-detail-comment_top {
  width: auto;
  padding: 0 0.9em 0 1em;
  text-align: left;
}

.sp_job-detail-comment_top.jobdetail {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.sp_job-detail-comment_top.ellipsis {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  margin-top: 0;
}

.sp_job-detail-comment_top.salary {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  margin-top: 0;
}

.sp_job-detail-comment_top p {
  display: -webkit-box;
  margin: 5px 0;
  overflow: hidden;
  background: url(/img/dot_line.png) 0 0 repeat-y;
  color: #555;
  font-size: 16px;
  font-weight: bold;
  line-height: 200%;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.sp_new_ribbon {
  position: absolute;
  right: 0;
  z-index: 1;
}

.sp_new_ribbon img {
  position: relative;
  top: 10px;
  right: 0;
  width: 95%;
}

.sp_new_ribbon02 {
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
}

.sp_new_ribbon02:before {
  content: '';
  display: block;
  width: 60px;
  height: 10px;
  background-color: #c1ebff;
  position: absolute;
  top: 22px;
  right: -2px;
  transform: rotate(45deg);
}

.sp_tableWrap_top:hover .sp_new_ribbon02:before{
  background: #7ecef4;
}

.sp_new_ribbon02 img {
  position: relative;
}


a.ttlLink {
  font-weight: bold;
}

.pickup-area_top {
  margin: 0 10px;
  padding: 0 !important;
}

/* ===========================
   急募バナー
   =========================== */

.kyubo {
  margin: 1em auto;
}

.kyubo > a {
  display: block;
}

.kyubo > a img {
  width: 100%;
  vertical-align: bottom;
}

.entry-center {
  margin: 0 auto;
}

/* ===========================
	エリアを絞り込む（もっと見る）
   =========================== */

.area-features-accordion {
  position: relative;
}

.area-features-accordion input {
  display: none;
}

.area-features-accordion input#area-features-more[type="checkbox"] + label span {
  position: absolute;
  z-index: 2;
  bottom: 10px;
  left: 50%;
  transform: translate(-50%, 0);
  padding: 0.8em 3em;
  border: 1px solid #02aedc;
  border-radius: 30px;
  letter-spacing: 0.04em;
  background: #fff;
  color: #02aedc;
  font-size: 1.2rem;
}

.area-features-accordion input#area-features-more[type="checkbox"] + label {
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 1) 100%);
  position: absolute;
  z-index: 1;
  bottom: 0;
  width: 100%;
  height: 140px;
  cursor: pointer;
  text-align: center;
}

.area-features-accordion input#area-features-more[type="checkbox"]:checked + label {
  opacity: 0;
  display: none;
}

.area-features-accordion input#area-features-more[type="checkbox"] + label + .area-features-body {
  max-height: 0;
  height: 220px;
  min-height: 220px;
  overflow: hidden;
  margin-bottom: 10px;
  transition: all 0.3s;
}

.area-features-accordion input#area-features-more[type="checkbox"]:checked ~ .area-features-body {
  overflow: auto;
  overflow-x: hidden;
  max-height: 100%;
  height: auto;
  transition: all 0.3s;
}

/* ===========================
	ポップアップ
   =========================== */
.confirmation-modal {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 999;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
}

.confirmation-modal-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  width: 90%;
  height: fit-content;
  padding: 1.5em;
  border-radius: 3px;
  background: #fff;
}

.confirmation-modal-cancel {
  position: absolute;
  top: 1em;
  right: 1em;
  margin: 0;
  color: #a2a2a5;
}

.confirmation-modal-cancel i {
  margin-right: 0.5em;
}

.confirmation-modal-body {
  display: flex;
  padding-top: 2em;
  flex-direction: column;
  align-items: center;
}

.confirmation-modal-body a {
  width: 90%;
}

.lock {
  position: fixed;
  width: 100%;
  height: 100%;
}

.sp-examlist {
  display: flex;
  justify-content: end;
  padding-bottom: 5px;
}

.searchCondtion-change button {
  color: #3AAEE0;
}

.searchCondtion-save button {
  border: 1px solid #3AAEE0;
  color: #3AAEE0;
}

.chart-padding {
  padding: 0 20px;
}

.average-table {
  width: 94%;
}

.average-margin {
  margin-left: 10px;
  margin-right: 10px;
}

a.job-examlist-btn img.consider-img-btn,
.job-detail-btn-body .consider-img-btn {
  width: 280px;
}

div.c-trend {
  padding: 15px;
  margin-left: 1.071em;
  margin-right: 1.071em;
}

div.c-trend__data {
  gap: 0px;
  grid-template-columns: 110px 1fr;
  align-items: center;
}

div.c-trend__title {
  font-size: 1.6rem;
}

div.c-trend__count {
  grid-template-columns: 1fr;
}

div.c-trend__advice {
  grid-template-columns: 55px 1fr;
  gap: 10px;
}

div.c-trend__comment {
  padding: 15px;
}

div.c-trend__text {
  span {
    font-size: 1.6rem;
  }
}

div.c-trend__row {
  margin-top: 15px;
  border-top: 1px dotted #E7E7E7;
  padding-top: 15px;
}

.popular-column-sp {
  padding: 10px;
}
.popular-column-sp h2 {
  margin-bottom: 10px;
}
.popular-column-sp hr {
  border: none;
  border-top: 3px solid #7ecef4;
}

.popular-column-sp .popular-column-content {
  display: flex;
  gap: 5px;
  margin-bottom: 10px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
  position: relative;
}
.popular-column-sp .popular-column-content div:first-child {
  flex: 0 0 30%;
  padding: 10px;
}
.popular-column-sp .popular-column-content div:first-child img {
  width: 100%;
  object-fit: cover;
}
.popular-column-sp .popular-column-content div:last-child {
  flex: 1;
  padding: 10px;
}
.popular-column-sp .popular-column-content div:last-child a {
  display: block;
  margin-bottom: 10px;
  text-decoration: none;
  color: #7ecef4;
  font-weight: bold;
}
.popular-column-sp .popular-column-content div:last-child span {
  position: absolute;
  bottom: 5px;
  display: block;
  font-size: 12px;
}

