@charset "utf-8";
/* breakpoint---------------------- */
.pc {display: none!important;}

/* bgcolor---------------------- */
.bg_white {background-color: #ffffff;}
.bg_mainblue {background-color: #869AEF;}

.bg_linkblue {background-color: #4DA4E0;}
.bg_menublue {background-color: #004AAD}

.bg_shoporange {background:#FF914D;}
.bg_black {background:#000000;}

/* color---------------------- */
.white {color:#ffffff;}
.black { color:#000000;}
.mainblue {color: #869AEF;}
.menublue {color: #004AAD}
.gray {color:#8D8D8D;}
.shoporange {color:#FF914D;}


/* flex---------------------- */
.spflex {display: flex;}
.spcolumn {
  display: flex;
  flex-direction: column;
}
.spblock {display: block;}

.spcenter {text-align: center;}


h3.flex {gap:0.5rem;justify-content: flex-start;}

/* window---------------------- */
.wd100 {width:100%;}
.wd_90 {
  width:90%;
  margin-right:auto;
  margin-left:auto;
}

.wd_96 {
  width:96%;
  margin-right:auto;
  margin-left:auto;
}


/* 角丸---------------------- */
.rd5 {border-radius: 5px;}
.rd10 {border-radius: 10px;}
.rd20 {border-radius: 20px;}


.btn {
  box-shadow: 0px 5px 0px 0px #000000;
  height:5rem;
  width:fit-content;
  padding:0 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* padding---------------------- */
.sp_pd_top_1 {padding-top:1rem;}
.sp_pd_top_2 {padding-top:2rem;}
.sp_pd_top_3 {padding-top:3rem;}
.sp_pd_top_4 {padding-top:4rem;}
.sp_pd_top_5 {padding-top:5rem;}
.sp_pd_top_6 {padding-top:6rem;}

.sp_pd_bottom_1 {padding-bottom:1rem;}
.sp_pd_top_05 {padding-top:0.5rem;}
.pd_top_half {padding-top:0.5rem;}
.pd_top_1 {padding-top:1rem;}

.pd_bottom_half {padding-bottom:0.5rem;}
.pd_bottom_1 {padding-bottom:1rem;}

/* margin---------------------- */

.sp_mg_bottom_05 {margin-bottom:0.5rem;}
.sp_mg_bottom_1 {margin-bottom:1rem;}
.sp_mg_bottom_2 {margin-bottom:2rem;}
.sp_mg_bottom_3 {margin-bottom:3rem;}
.sp_mg_bottom_4 {margin-bottom:4rem;}
.sp_mg_bottom_5 {margin-bottom:5rem;}
.sp_mg_bottom_6 {margin-bottom:6rem;}
.sp_mg_bottom_7 {margin-bottom:7rem;}

.mg_bottom_1 {margin-bottom:1rem;}
.mg_bottom_2 {margin-bottom:2rem;}



/* font---------------------- */
.b {font-weight: bold;}
.sp5 {font-size:0.42rem;}

.sp6 {font-size:0.5rem;}
.sp8 {font-size:0.67rem;}
.sp10 {font-size:0.83rem;}
.sp12 {font-size:1rem;}
.sp14 {font-size:1.16rem;}
.sp16 {font-size:1.33rem;}
.sp18 {font-size:1.5rem;}
.sp20 {font-size:1.66rem;}

.sp22 {font-size:1.83rem;}
.sp24 {font-size:2rem;}



/* セレクトボックスの矢印 */
.selectarrow {
  width: fit-content;
  position: relative;
}

.selectarrow:after {
  content: "";
  position: absolute;
  right: 15px;
  top: 47%;
  width: 10px;
  height: 10px;
  border-top: 2px solid #000000;
  border-left: 2px solid #000000;
  transform: translateY(-50%) rotate(-135deg);
  -webkit-transform: translateY(-50%) rotate(-135deg);
  -ms-transform: translateY(-50%) rotate(-135deg);
  font-size: 20px;
  pointer-events: none;
}

.selectarrow select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  }


/* ヘッダー */
header {
  position: relative;
}

.hd_title {
  height:2rem;

  width:100%;
  justify-content: center;
  text-align: center;
}
.hd_title span {
  text-align: center;

}

.hd_middle {
  height:3.5rem;
  padding:0 5%;
  gap:0.5rem;
}


.hd_middle h1 {
  height:2rem;
  /* min-height:1.5rem; */
  width:30%;
}

.hd_middle h1 a {
  height:100%;
}

.hd_middle h1 img {
  max-height:2rem;
  width:auto;
}

.hd_middle strong {
  white-space: nowrap;
  margin-right: auto;
  font-weight:normal;
}


.four_menu {
  height: 100%;
  gap:0.8em;
  padding:0.5em 0;
  padding-right:0.7rem;
}

.four_menu .hd_chat {
  margin-top:0.3em;

}

.four_menu .hd_chat,
.four_menu .hd_chat a {
  width:1.5rem;
  height:100%;
}

.four_menu .hd_chat a {
  position: relative;
  gap:0.2em;
  justify-content: center;
  white-space: nowrap;

}

.four_menu .hd_chat a .notice {
  min-width: 2em;
  border-radius: 100vh;
  padding:0.1em 0.5em;
  background:#FF5757;
  position: absolute;
  top:-0.3em;
  right:-0.5em;
  justify-content: center;
}

.four_menu .hd_chat a .notice.keep {
  right:-1.2em;
}

header .four_menu img {
    width:80%;
    height:auto;
  }




/* ハンバーガーメニュー */
/* メニューが開いているときにbody要素にスクロール禁止を適用 */
body.menu-open {
  overflow: hidden;
}

.menu-container {
  position: relative;
  z-index:10;
}

.menu-btn {
  display: block;
  width: 1.5rem;
  height: 1.2rem;
  position: relative;
  cursor: pointer;
  z-index: 12;
  transition: opacity 0.3s ease; /* 不透明度の変化にアニメーションを追加 */
}

.menu-btn span {
  display: block;
  height: 3px;
  border-radius: 3px;
  width: 100%;
  position: absolute;
  background: #ffffff;
  transition: transform 0.4s ease-in-out, opacity 0.3s ease-in-out;
}

.menu-btn span:nth-child(1) {
  top: 0;
}

.menu-btn span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.menu-btn span:nth-child(3) {
  bottom: 0;
}

#menu-toggle {
  display: none;
}

/* チェックされた時のスタイル */
#menu-toggle:checked + .menu-btn {
  opacity: 1; /* 不透明度を1に変更してフェードイン */
  transition: opacity 0.3s ease-in-out; /* フェードインのアニメーションを設定 */
  transition-delay: 0.5s; /* フェードインまでの待機時間を設定 */
}


#menu-toggle:checked + .menu-btn span:nth-child(1) {
  transform: translateY(2px) rotate(45deg);
}

#menu-toggle:checked + .menu-btn span:nth-child(2) {
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}

#menu-toggle:checked + .menu-btn span:nth-child(3) {
  transform: translateY(-16px) rotate(-45deg);
  bottom:-1px;
}

/* メニュー全体 */
.hummenu {
  opacity: 0; /* 初めは透明に設定 */
  pointer-events: none;
  list-style-type: none;
  padding: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding-top: 5rem;
  visibility: hidden; /* 非表示にする */
  transition: opacity 0.5s ease, visibility 0s linear 0.5s; /* アニメーションと遅延を設定 */
  z-index:10;
}

#menu-toggle:checked ~ .hummenu {
  opacity: 1; /* チェックされた時に透明度を1に変更してフェードイン */
  visibility: visible; /* 表示する */
  pointer-events: auto; /* 表示時にクリックイベントを有効化 */
  transition-delay: 0s; /* 遅延を0秒に設定 */
}


/* メニュー下オーバーレイ */
.menu-container .menuoverlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.715); /* 半透明の黒色 */
  z-index: 9; /* メニューよりも後ろに表示 */
}

/* チェックされた時のスタイル */
#menu-toggle:checked ~ .menuoverlay {
  display: block;
}





/* パンくず */
section.breadcrumbs {
  padding:0.5rem 0 0.5rem 0.5rem;
}

section.breadcrumbs ul {
  height:1rem;
  gap:0.7rem;
  justify-content: flex-start;
}

section.breadcrumbs ul li img {
  height:1rem;
  width:auto;
}

section.breadcrumbs ul li:after {
  content: '';
  width: 8px;
  height: 8px;
  margin-top: 0px;
  border-top: solid 1px #555;   /* 好みで色を変えてください */  
  border-right: solid 1px #555;   /* 好みで色を変えてください */  
  transform: rotate(45deg);
  
  /* position: absolute; */
  top: 50%;
  right: -20px;
}

section.breadcrumbs ul li:last-child:after {
  display: none; /* 最後の要素の疑似要素を非表示にする */
}








/* フッター */
footer {
  padding-top:3rem;
  padding-bottom:15px;
}

footer div.ftmain,
.hummenu div.ftmain {
  justify-content: space-between;
  margin-bottom:2rem;
  gap:2rem;
}

.hummenu div.ftmain {
  margin-bottom:30px;
}

.firsthalf {
width:100%;
position: relative;
}

.footer_logo {
  max-width:50%;
}

.footer_logo img {
  width:100%;
}

.firsthalf .ft_hash {
  margin-bottom:2rem;
}


.firsthalf .sns_area {
  /* width:2rem; */
  position: absolute;
  top:0;
  right:0;

  margin:0;
}

.firsthalf .sns_area ul {
  gap:0.7rem;
  align-items: center;
}

.firsthalf .sns_area ul li {
  width:1.5rem;
}
.firsthalf .sns_area ul li.followus {
  writing-mode: vertical-rl; /* 縦書き（右から左へ） */
}

.firsthalf .sns_area ul li a img {
  width:100%;
}


.secondhalf {
}

.secondhalf ul.mainmenu {
  width:100%;
  flex-wrap: wrap;
  gap:0.7rem;
  margin-bottom:2rem;
}

footer .secondhalf ul.mainmenu {
  margin-bottom:3rem;
}

.secondhalf ul.mainmenu li {
  width:100%;
}

.secondhalf .login_area {
  height:2rem;
  gap:1rem;
  margin-bottom:3rem;
}

.secondhalf .login_area a {
  height:100%;
  width:50%;
  justify-content: center;
  align-items: center;
  border-radius: 3px;
}

.secondhalf .submenu {
  border-top:solid 1px #ffffff;
  border-bottom:solid 1px #ffffff;
  padding:1rem;
  row-gap:0.2rem;
  flex-wrap: wrap;
}

.secondhalf .submenu li {
  width: 50%;
}


.new_area {
  gap:1rem;
  height:2.1rem;
}

.new_area a {
  width:50%;
  height:100%;
  border-radius: 4px;
  justify-content: center;
  align-items: center;
  
}

header .advertisement {
  width:100%;
}

header .advertisement img {
  width: 100%;
}

footer .caution {
  margin-bottom:3rem;
}

.copyright {
  text-align: center;
  margin-bottom:2rem;
}


/* トップページ */
.top_pickup {
  background:#BDDA98;
  padding:1rem 0;
}
.top_pickup_slide {
}

.top_pickup_slide img {

}
.top_pickup_slide div {
  margin-right:0.5rem;

}
.top_section h3 {
  gap:0.5rem;
  justify-content: center;
}
.top_section h3 img {
  width:1.3rem;
}

.top_section .area_search {
  border-radius: 10px;
  border:solid 1px #000000;
  padding:1rem 1rem 2rem;
}


section.top_section .left_area .area_search form {
  width:100%;
}

/* 地域選択 */

/* ボタンのスタイル */
section.top_section .left_area .area_search form .area {
  row-gap: 1rem;
  flex-wrap: wrap;
  justify-content: space-between;
  
}

section.top_section .left_area .area_search form .area input[type="radio"] {
  display: none;
}

/* ラベルのスタイル */
section.top_section .left_area .area_search form .area label {
  /* display: inline-block; */
  /* padding: 10px 20px; */
  /* font-size: 16px; */
  justify-content: center;
  /* background-color: #f0f0f0; */
  /* box-shadow: 0px 6px 0px 0px #9d9d9d; */
  cursor: pointer;
  border-radius: 5px;
  width:32%;
  height:3rem;
  position: relative;
}
.area label:before {
  content:"";
  width:100%;
  display: block;
  background-color: #f0f0f0;
  height:3rem;
  position: absolute;
  z-index: -1;
  border-radius: 5px;
}
.area label:after {
  content:"";
  width:100%;
  display: block;
  height:3rem;
  background:#9d9d9d;
  position: absolute;
  top:6px;
  z-index: -2;
  border-radius: 5px;
}

input[type="radio"]#hokkaido + label:before { background: #B2E1F6; }
input[type="radio"]#tohoku + label:before { background: #A3BBE1; }
input[type="radio"]#kanto + label:before { background: #F5C4BD; }
input[type="radio"]#chubu + label:before { background: #BDDA98; }
input[type="radio"]#kansai + label:before { background: #F7D489; }
input[type="radio"]#chugoku + label:before { background: #CECEE4; }
input[type="radio"]#shikoku + label:before { background: #85C7C3; }
input[type="radio"]#kyushu + label:before { background: #F5C5E1; }
input[type="radio"]#okinawa + label:before { background: #C5F5EF; }

/* ラジオボタンが選択された時のスタイル */
section.top_section .left_area .area_search form .area input[type="radio"]:checked + label {
  padding-top:10px;
  margin-top:auto;
}
section.top_section .left_area .area_search form .area input[type="radio"]:checked + label:before {
  height:calc(3rem - 2px);
  /* box-shadow: 0px 2px 0px 0px #9d9d9d; */
  top: 5px;
}

/* プルダウン〜こだわり条件 */
section.top_section form .region {}

section.top_section form .region h4 {
  gap:0.5rem;
  justify-content: center;
}
section.top_section form .region h4 img {
  width:1.2rem;
}

section.top_section form .region h4#hokkaido img {
  filter: invert(82%) sepia(9%) saturate(1303%) hue-rotate(172deg) brightness(106%) contrast(93%);
}

section.top_section form .region h4#tohoku img {
  filter: invert(77%) sepia(35%) saturate(535%) hue-rotate(188deg) brightness(94%) contrast(86%);
}

section.top_section form .region h4#kanto img {
  filter: invert(95%) sepia(32%) saturate(1023%) hue-rotate(292deg) brightness(101%) contrast(92%);
}

section.top_section form .region h4#chubu img {
  filter: invert(90%) sepia(23%) saturate(498%) hue-rotate(33deg) brightness(93%) contrast(87%);
}

section.top_section form .region h4#kansai img {
  filter: invert(73%) sepia(56%) saturate(292%) hue-rotate(355deg) brightness(107%) contrast(94%);}

section.top_section form .region h4#chugoku img {
  filter: invert(89%) sepia(8%) saturate(458%) hue-rotate(201deg) brightness(95%) contrast(88%);
}

section.top_section form .region h4#shikoku img {
  filter: invert(95%) sepia(86%) saturate(661%) hue-rotate(151deg) brightness(81%) contrast(88%);
}

section.top_section form .region h4#kyushu img {
  filter: invert(78%) sepia(29%) saturate(299%) hue-rotate(282deg) brightness(104%) contrast(92%);
}

section.top_section form .region h4#okinawa img {
  filter: invert(100%) sepia(20%) saturate(6678%) hue-rotate(168deg) brightness(109%) contrast(92%);
}

.region {
  position: relative;
}

.region select {
  /* 下矢印を非表示にする */
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding:1rem 2.5rem 1rem 1rem;
  border-radius: 5px;
  border:solid 2px #000000;
  overflow: hidden;
  width:100%;
  white-space: nowrap;
  text-overflow: ellipsis; /* テキストを省略して表示 */
}
.region .region_select {

  position: relative;

}
.region .region_select::after {
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  width: 10px;
  height: 10px;
  border-top: 2px solid #000000;
  border-left: 2px solid #000000;
  transform: translate(-50%, -50%) rotate(-135deg);
  font-size: 20px;
  pointer-events: none;
}

/* こだわり条件 */
section.top_section form .commitment {}
section.top_section form .commitment .title {
  justify-content: flex-start;
}

.commitment #details {
  display: none;
}
.commitment #details + label {
  position: relative;
  padding-left: 2rem;
}

/* オリジナルのチェックボックス枠 */
.commitment #details + label::before {
  content: '';
  display: block;
  box-sizing: border-box;
  position: absolute;
  top: 2px;
  left: 2px;
  width: 1.4rem;
  height: 1.4rem;
  border: 2px solid #9E9E9E;
  border-radius: 2px;
  transition: 0.15s;
  border-radius: 4px;
}

/* オリジナルのチェック */
.commitment #details + label::after {
  content: '';
  display: block;
  box-sizing: border-box;
  position: absolute;
  top: 9px;
  left: 8px;
  width: 0.7rem;
  height: 0.35rem;
  border-left: 3px solid #ffffff;
  border-bottom: 3px solid #ffffff;
  transform: rotate(-45deg);
  /* visibility: hidden; */
}

/* チェック時の波紋エフェクト */
.commitment #details {
  position: absolute;
  top: -8px;
  left: -10px;
  width: 1.7rem;
  height: 1.7rem;
  border-radius: 50%;
  background-color: #6300ee98;
  transform: scale(0);
}

/* チェックされたらチェックボックス内に色を塗る */
.commitment #details:checked + label::before {
  border: 0.7rem solid #FF914D;
}

/* チェックされたらチェックアニメーション開始 */
.commitment #details:checked + label::after {
  /* animation: md-checkbox-anim .3s forwards; */
}

/* チェックアニメーション */
@keyframes md-checkbox-anim {
  0% {
      visibility: visible;
      width: 0;
      height: 0;
  }
  40% {
      visibility: visible;
      width: 0;
      height: 8px;
  }
  100% {
      visibility: visible;
      width: 1.3rem;
      height: 0.65rem;
  }
  }


/* チェックされたときに表示する要素 */
#details:checked ~ #conditionalDetails {
  display: block;
}

/* 初期は非表示に */
#conditionalDetails {
  display: none;
  width:100%;
}

#conditionalDetails small {
  margin-left: 2rem;

}

#conditionalDetails div {
  flex-wrap: wrap;
  justify-content: flex-start;
  gap:0.5rem;
}

#conditionalDetails input[type="checkbox"] {
  display: none;
}

#conditionalDetails label {
justify-content: center;
align-items: center;
background-color: #FFFFFF;
color:#000000;
border:solid 1px #000000;
cursor: pointer;
width:calc(33% - 0.3rem);
padding:0.9em 0;
font-size:0.8rem;
}

#conditionalDetails input[type="checkbox"]:checked + label {
  background-color: #FF914D;
  border:solid 1px #FF914D;
  color:#ffffff;
}

.area_search form div.submit {
  justify-content: center;
  gap:0.7rem;
}

.area_search form div.submit button {
  width: max-content;
  padding:0.7rem 0;
  width:45%;
  padding-top:calc(0.7rem + 2px);
  box-shadow: 0px 6px 0px 0px #000000;
  color:#ffffff;
  background:#A6A6A6;
  border-radius: 5px;
  border:none;
  text-align: center;
  display: flex;
  justify-content: center;
}

.area_search form div.submit button.submit {
  background:#869AEF;
  width:45%;
  padding:0.7rem 0;
  padding-top:calc(0.7rem + 2px);
  box-shadow: 0px 6px 0px 0px #004AAD;
  text-align: center;
  display: flex;
  justify-content: center;
}


section.top_section .left_area .search_link {
  border-radius: 10px;
  padding:1rem 2rem;
  gap:1rem;

}

/* 新規掲載情報 */
section.top_section .left_area .new_shop {
  border-radius: 10px;
  background:#FAF2D7;
  padding: 1.5rem 1rem;
}

section.top_section .left_area .new_shop .news_area {
  border: solid 1px #000000;
  border-radius: 10px;
  background:#FFFFFF;
  height:16rem;
  overflow: scroll;
  padding:1rem;

}

.news_area ul {
  gap:0.8rem;
  justify-content: flex-start;
  align-items: flex-start;
}

.news_area ul li {
  justify-content: flex-start;
  gap:0.7rem;
  align-items: flex-start;
  border-bottom:dashed 1px #000000;
  padding-bottom:0.3rem;
}

.news_area ul li span {
  width:8em;
}

.news_area ul li div {
  gap:0.3rem 0.5rem;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.news_area ul li a.bt {
  border: solid 1px #000000;
  border-radius: 3px;
  color:#000000;
  padding:0.1rem 0.5rem;
  justify-content: center;
  white-space: nowrap;
}

.news_area ul li a.bt.area {
  width:5em;
}
.news_area ul li a.bt.region {
  width:9em;
  /* justify-content: flex-start; */
}

.news_area ul li a.tx {
  color:#000000;
}

.news_area ul li.hokkaido a.bt { background: #B2E1F6; }
.news_area ul li.tohoku a.bt { background: #A3BBE1; }
.news_area ul li.kanto a.bt { background: #F5C4BD; }
.news_area ul li.chubu a.bt { background: #BDDA98; }
.news_area ul li.kansai a.bt { background: #F7D489; }
.news_area ul li.chugoku a.bt { background: #CECEE4; }
.news_area ul li.shikoku a.bt { background: #85C7C3; }
.news_area ul li.kyushu a.bt { background: #F5C5E1; }
.news_area ul li.okinawa a.bt { background: #C5F5EF; }



/* グループから求人を探す */
.top_section .left_area .group_search {
  border: solid 1px #000000;
    border-radius: 10px;
    padding: 1rem 1.5rem 2rem;
}

.top_section .left_area .group_search h3 img {
  width:1.5rem;
}

.top_section .left_area .group_search ul {
  flex-wrap: wrap;
  gap:5%;
  row-gap: 1.3rem;
  align-items: stretch;
}

.top_section .left_area .group_search ul li:last-child {
    margin-right: auto;
  }
.top_section .left_area .group_search ul li {
  width:30%;
}

.top_section .left_area .group_search ul li a {
  color:#004AAD;
}

.top_section .left_area .group_search ul li a img {
  border:solid 2px #869AEF;
  border-radius: 100%;
  margin-bottom:0.5rem;
}
.top_section .left_area .group_search ul li strong,
.top_section .left_area .group_search ul li small {
  font-weight:normal;
  text-align: center;
  width: 100%; /* 要素の幅を指定 */
  white-space: nowrap; /* テキストを折り返さないようにする */
  overflow: hidden; /* コンテンツが要素をはみ出した場合に隠す */
  text-overflow: ellipsis; /* 文字列がはみ出したら省略記号（...）を表示 */
}

.top_section .left_area a.more {
  background: #869AEF;
  padding: 0.7rem 0;
  padding-top: calc(0.7rem + 2px);
  box-shadow: 0px 6px 0px 0px #004AAD;
  border-radius: 5px;
  border: 0;
  height: 3.5rem;
  width: 50%;
  justify-content: center;
  gap: 0.5rem;
  margin: 0 auto 1rem;

}

/* 最新アップデート情報 */
.top_section .left_area .update {
  border:solid 1px #000000;
  border-radius: 10px;

  padding: 1.5rem 1rem 0;
}

.top_section .left_area .update ul {
  flex-wrap: wrap;
}

.top_section .left_area .update ul li {
  width: 100%;
  border-bottom:dashed 1px #000000;
  padding:1rem 0;
}

.top_section .left_area .update ul li a {
  color:#000000;
  flex-wrap:wrap;
}

.top_section .left_area .update ul li a {
  align-items: flex-start;
}

.update ul li a img:not(.advertisement img) {
  width:55%;
}
.update ul li a > div {
  width:42%;
}


/* borderを消す */
.top_section .left_area .update ul li:last-child {
  border-bottom: none;
}

.top_section .left_area .update ul li a span {
  line-height: 1.3;
}

.top_section .left_area .update ul li a strong {
  line-height: 1.3;
}
.top_section .left_area .update ul li a small {
  line-height: 1.3;
}

.top_section .left_area .update ul li a div.flex {
  align-items: flex-end;
}
.top_section .left_area .update ul li a div.flex img {
  width:1.5rem;
}

.update ul li a div.flex img:last-child {
  width:2.4rem!important;
}

/* 注目の求人情報 */
.top_section.pickup_recruit {
  border-radius: 10px;
  background: linear-gradient(to bottom, #e3e65c, #FFee52);
  padding:2rem 0 4rem;
}

.slide_pickup li {
  border:solid 3px #004AAD;
  border-radius: 10px;

}

.slide_pickup li .title {
  justify-content: flex-start;
  padding:0.2rem 0.2rem 0.2rem 0.3rem;
  gap:0.2rem;
}

.slide_pickup li .title img {
  width:1rem;
}

.slide_pickup li .shopname,
.slide_pickup li .img,
.slide_pickup li .area,
.slide_pickup li .salary {
  padding:0 0.4rem;
}

.slide_pickup li .shopname .column {
  align-items: flex-start;
}
.slide_pickup li .shopname .flex {
  gap:0.5rem;
}
.slide_pickup li .shopname img.moon {
  width:1rem;
}
.slide_pickup li .shopname img.heart {
  width:2rem;
}

.slide_pickup li .salary {

}

.slide_pickup li .salary > div {
  border:solid 2px #004AAD;
  padding-right:0.5rem;
}

.slide_pickup li .salary div div {
  padding:0.5rem;
  width:8em;
  justify-content: flex-start;
  gap:0.2rem;
}

.slide_pickup li .salary div img {
  width:1rem;
}

.slide_pickup li a.more {
  width: 60%;
  justify-content: center;
  margin:1rem auto;
  background: #4DA4E0;
  border-radius: 3px;
  box-shadow: 0px 5px 0px 0px #000000;
  height:2.5rem;
} 


/* エリアランキング */

.top_section.area_ranking {
  background:#FFDE59;
  border-radius: 10px;
}

.top_section.area_ranking h3 {
  font-weight:bold;
  color:#665AFF;
}

.top_section.area_ranking .ranking_main {
  width:90%;
  margin-right:auto;
  margin-left:auto;

}

.top_section.area_ranking .ranking_main .tabcontent {
  width:100%;
}

.top_section.area_ranking .ranking_main .tab {
  gap:1rem;
}

.top_section.area_ranking .ranking_main .tab button {
  border-radius: 10px;
  width:50%;
  height:2.7rem;
  color:#ffffff;
  background: linear-gradient(to bottom,#ff914d, #ff3131 );
  justify-content: center;
  align-items: center;
  border:0;
  gap:0.5rem;
  position: relative;
}

.top_section.area_ranking .ranking_main .tab button.access {
  background: linear-gradient(to bottom,#ff914d, #ff3131 );
}


.top_section.area_ranking .ranking_main .tab button.active:after {
  content: '';
  position: absolute;
  bottom: -19px; /* 三角形を吹き出しの下に配置 */
  left: 50%; /* 左側から50%の位置に配置 */
  transform: translateX(-50%); /* X軸に沿って-50%ずらす */
  border-width: 10px; /* 三角形の大きさ */
  border-style: solid;
  }

.top_section.area_ranking .ranking_main .tab button.access.active:after {
  border-color: #ff3131 transparent transparent transparent; /* 下の境界線の色を吹き出しの背景色に、他を透明に */
}


.top_section.area_ranking .ranking_main .tab button.search {
  background: linear-gradient(to bottom,#5ce1e6, #8e52ff );
}


.top_section.area_ranking .ranking_main .tab button.search.active:after {
  border-color: #8e52ff transparent transparent transparent; /* 下の境界線の色を吹き出しの背景色に、他を透明に */
}


.top_section.area_ranking .ranking_main .tab button.access img {
  width:1.5rem;
  height:auto;
}
.top_section.area_ranking .ranking_main .tab button.search img {
  width:1.2rem;
  height:auto;
}

.top_section.area_ranking .ranking_main .tabcontent div {
  background:#ffffff;
  border-radius: 15px;
  padding:1rem 0.7rem;
}

.top_section.area_ranking .ranking_main .tabcontent ul {
  gap:0.7rem;
  counter-reset: list-counter 0; /* カウンターの開始値を 2 に設定 */
}

.top_section.area_ranking .ranking_main .tabcontent ul li {
  border-radius:5px;
  border:solid 2px #A6A6A6;
  box-shadow: 0px 2px 0px 0px #A6A6A6;
  width:100%;
  height:3.2rem;
  counter-increment: list-counter; /* 各li要素でカウンターを1増加 */
}

.top_section.area_ranking .ranking_main .tabcontent ul li a {
  justify-content: flex-start;
  width:100%;
  height:100%;
  padding:0 1rem;
  font-weight:bold;
  gap:0.5rem;
}

.top_section.area_ranking .ranking_main .tabcontent ul li a::before {
  content: counter(list-counter); /* ゼロ埋めの数字とドットを表示 */
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100%;
  background:#000000;
  color:#ffffff;
  width:2.7rem;
  height:2.7rem;
  font-size:1.5rem;
}

.top_section.area_ranking .ranking_main .tabcontent ul li a img {
  width:2.7rem;
}

.top_section.area_ranking .ranking_main .tabcontent ul li:nth-child(-n+3) a::before {
  content: none; /* 最初の3つのリスト項目のナンバリングを非表示 */
}


/* リンクニュース */
.top_section.link_news {
  border:solid 1px #000000;
  border-radius: 10px;

}
.top_section.link_news h3 {
  margin-right:auto;
  margin-left:auto;
  align-items: center;
}
.top_section.link_news h3 img {
  width:1rem;
  padding-top:2px;
}

.top_section.link_news ul {
  width:90%;
  margin-right:auto;
  margin-left:auto;
}
.top_section.link_news ul li {
  width:100%;
  border-bottom:dashed 1px #737373;

}

.top_section.link_news ul li a {
  padding: 0.7rem 0.5rem;
  gap:0.5rem;
  justify-content: flex-start;
}
.top_section.link_news ul li a span,
.top_section.link_news ul li a p {
  color:#000000;
}

.top_section.link_news ul li a span {
  width:25%;

}

.top_section.link_news ul li a strong {
  background:#FF5757;
  padding:0 0.5rem;
  white-space: nowrap;
}

.top_section.link_news ul li a p {
  width:calc(75% - 5em);
  white-space: nowrap; /* テキストを折り返さないようにする */
  overflow: hidden; /* コンテンツが要素をはみ出した場合に隠す */
  text-overflow: ellipsis; /* 文字列がはみ出したら省略記号（...）を表示 */
}


/* ●●から探す */
.search_all {}
.search_all h3,
.serch_general h3 {
  justify-content: flex-start;
  padding:0 1rem;
}

/* 基本的なスタイリング */
.dropdown_all {
  /* border-top:solid 1px #000000; */
}
.dropdown {
  border-top:solid 1px #000000;
  border-bottom:solid 1px #000000;
  /* border-bottom:solid 1px #000000; */
}
.dropdown:nth-child(n+2) {

  border-top:0;
}

.dropdown button {
  border:0;
}
.dropdown, .sub-dropdown {
  width: 100%;
  position: relative;
  display: inline-block;
}
.dropbtn, .sub-dropbtn {
  width:100%;
  background-color: #ffffff;

  padding: 0 1rem;
  cursor: pointer;
  height:2.5rem;
}

.dropbtn {
  font-weight:bold;

}
.dropbtn span {
  font-weight:normal;
}

.sub-dropbtn {
  border-top:solid 1px #000000!important;
  background:#DDECFF;
  /* margin-bottom: -5px; */
  position: relative;
}

.dropdown-content, .sub-dropdown-content {
  width:100%;
  display: none;
  background:#DDECFF;
  min-width: 160px;
  /* box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); */
  z-index: 1;
  margin: 0;
  padding: 0;
}

.dropdown-content a, .sub-dropdown-content a {
  padding: 0 1.5rem;
  height:2.5rem;
  text-decoration: none;
  /* border-top:solid 1px #000000; */
}

.sub-dropdown-content {
  /* margin-top:5px;
  margin-bottom: -5px; */
}

.sub-dropdown-content a {
  width:100%;
  white-space: nowrap; /* テキストを折り返さないようにする */
  overflow: hidden; /* コンテンツが要素をはみ出した場合に隠す */
  text-overflow: ellipsis; /* 文字列がはみ出したら省略記号（...）を表示 */
  border-top:solid 1px #000000!important;
}

.sub-dropdown-content a:last-child {

}

.dropdown-content a:hover, .sub-dropdown-content a:hover {
  background-color: #f1f1f1;
}

.toggle-icon, .sub-toggle-icon {
  margin-left: 5px;
}

/* 既存のスタイル */
.dropdown-content, .sub-dropdown-content {
  overflow: hidden;
  transition: max-height 0.5s ease; /* opacityのトランジションを削除 */
  max-height: 0; /* 初期状態では高さ0 */
  display: block; /* 常にblockを維持 */
}

/* トグル時の高さ（新規追加） */
.show-dropdown-content {
  max-height: 5000px;
}

.arrow-icon-open {}
.arrow-icon-open::before {
  content: "";
  width: 10px;
  height: 10px;
  border-top: solid 1px #004AAD;
  border-right: solid 1px #004AAD;
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}

.arrow-icon-close::before {
  content: "";
  width: 10px;
  height: 10px;
  border-top: solid 1px #004AAD;
  border-right: solid 1px #004AAD;
  position: absolute;
  right: 1rem;
  top: 55%;
  transform: translateY(-50%) rotate(-45deg);
}

/* エリアトップページ */


/* 広告スライダー */
.slide_pickup.slide_ad li {
  border:0;

}


.job_shoplist .left_area {
  width:100%;

}

.job_shoplist .left_area .toc {
  justify-content: space-between;
}

.job_shoplist .left_area .toc div {
  gap:0.3rem;
}

.job_shoplist .left_area .toc span {
  padding:0.1rem 0.5rem;
  border-radius: 20px;
}

.job_shoplist .left_area .tab_link {
  gap:0.5rem;
  height:2.5rem;
  width:100%;
  align-items: flex-end;
}

.job_shoplist .left_area .tab_link a {
  background: #78C8FF;
  width:25%;
  height:100%;
  border-radius: 4px;
  box-shadow: 0px 3px 0px 0px #004AAD;
  justify-content: center;

}

.job_shoplist .left_area .tab_link a.now {
  background:#004AAD;
  height:2rem;
  position: relative;
}
.job_shoplist .left_area .tab_link a.now:after {
  content: '';
  position: absolute;
  bottom: -13px; /* 三角形の位置をボタンの下に設定 */
  left: 50%;
  transform: translateX(-50%); /* 三角形を中央に配置 */
  width: 0;
  height: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-top: 20px solid #004AAD; /* 吹き出しの色と同じ色に設定 */
}

.job_shoplist .left_area .search_result {
  border-top:solid 1px #A6A6A6;
  border-bottom:solid 1px #A6A6A6;
  padding:0.2rem 0.5rem;
  gap:0.6rem;
}
.job_shoplist .left_area .search_result strong {
  color:#5271FF;
}
.job_shoplist .left_area .search_result p {
  margin-right:auto;
  margin-top:auto;
  padding-bottom:5px;
  color:#A6A6A6;
}

.job_shoplist .left_area .search_result .switch {
  gap:0.5rem;
}

/* スイッチ */
/* トグルスイッチ全体のスタイル */
.only {
  position: relative;
  display: inline-block;
  width: 2.3rem; /* 幅を2.3remに変更 */
  height: 1rem; /* 22pxをremに変換 */
  background-color: #ccc; /* OFF時の背景色 */
  border-radius: 1.375rem; /* 22pxをremに変換 */
  transition: background-color 0.4s;
}

/* 実際のチェックボックスは隠す */
.only input {
  opacity: 0;
  width: 0;
  height: 0;
}

/* スライダー部分のスタイル */
.only_slider {
  position: absolute;
  cursor: pointer;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  background-color: #ccc; /* OFF時の背景色 */
  transition: .4s;
  border-radius: 1.375rem; /* 22pxをremに変換 */
}

/* ハンドルのスタイル */
.only_slider:before {
  position: absolute;
  content: "";
  height: 1.5rem; /* 34pxをremに変換 */
  width: 1.5rem; /* 34pxをremに変換 */
  left: 0rem; /* 4pxをremに変換 */
  top: 50%;
  transform: translateY(-50%);
  background-color: white; /* ハンドルの色 */
  border-radius: 50%; /* ハンドルを完全に円形にする */
  transition: .4s;
  box-shadow: 0 0.125rem 0.25rem rgba(0,0,0,0.2); /* ハンドルに影を追加 */
}

/* チェックされたときのハンドルのスタイル */
.only input:checked + .only_slider:before {
  /* ハンドルの移動距離を調整するため、ここも変更する必要があります */
  transform: translate(1.15rem, -50%); /* 移動距離を調整 */
}

/* チェックされたときの背景色の変更はハンドルに適用する */
.only input:checked + .only_slider:before {
  background-color: #2196F3; /* ON時のハンドルの色 */
}



/* 絞り込み */
.job_shoplist .left_area .narrowdown {
  width:9rem;
  height:2.5rem;
  background:#FFDE59;
  border-radius: 5px;
  box-shadow: 0px 4px 0px 0px #CFA24A;
}
.job_shoplist .left_area .narrowdown a {
padding:5px;
padding-left:7px;
  align-items: center;
  color:#000000;
  width:100%;
  height:100%;
}

.job_shoplist .left_area .narrowdown a img {
  width:1.3rem;
}

.job_shoplist .left_area .narrowdown a span {
  width:2rem;
  height:2rem;
  border-radius: 4px;
  justify-content: center;
}


/* 店舗表示部分 */
.shoplist {
  border-radius: 10px;
  width:100%;
  padding-bottom:1rem;
}

.shoplist.orange {border:solid 2px #FF6859;}
.shoplist.yellow {border:solid 2px #FFC759;}
.shoplist.blue {border:solid 2px #59C3FF;}
.shoplist.gray {border:solid 2px #AFAFAF;}

.shoplist.gold {border:solid 2px #B5A863;}
.shoplist.silver {border:solid 2px #A6A6A6;}
.shoplist.bronze {border:solid 2px #AF927C;}
.shoplist.black {border:solid 2px #000000;}

.shoplist.orange .title {background:#FF6859;}
.shoplist.yellow .title {background:#FFC759;}
.shoplist.blue .title {background:#59C3FF;}
.shoplist.gray .title {background:#A6A6A6;}
.shoplist.gold .title {background:#B5A863;}
.shoplist.silver .title {background:#AFAFAF;}
.shoplist.bronze .title {background:#AF927C;}
.shoplist.black .title {background:#000000;}

/* タイトル */
.shoplist .title {
  padding:0.2rem 0.7rem;
  gap:0.5rem;
}
.shoplist .title div.column {
  align-items: flex-start;
}
.shoplist .title .imgarea {
  margin-left:auto;
  gap:0.5rem;
}
.shoplist .title img {
  width:2.5rem;
}


.shoplist .main_area {
  gap:5px;
  padding:5px;
  align-items: stretch;
}

/* 店舗表示部分中身 */

.shoplist .main_area .salary {
  width:100%;
  gap:5px;
}

.shoplist .main_area .salary > div {
  width: 100%;
  border:solid 2px #FF914D;
  background:#FF914D;
}

.shoplist .main_area .salary div div {
  width:35%;
  padding:0 0.4rem;
  height:3rem;
  color:#FF914D;
  gap:0.3rem;
  text-align: center;
  justify-content: flex-start;
  white-space: nowrap;
}

.shoplist .main_area .salary div strong {
  padding-right:0.5rem;
  white-space: nowrap;

}
.shoplist .main_area .salary img {
  width:1.2rem;
  }


.shoplist .main_area div.conditions {
  width:100%;
  gap:5px;
  margin:2px 0;

}
.shoplist .main_area div.conditions dl {
  width: 100%;
  height:2.5rem;
  background:#000000;
  padding:1px;
  gap:1px;
}

.shoplist .main_area div.conditions dl dt {
  background:#F7D489;
  width:6em;
  height:calc(2.5rem - 2px);
  justify-content: center;
}
.shoplist .main_area div.conditions dl dd {
  background:#FFFFFF;
  padding:6px;
  width:calc(100% - 6em);
  height:calc(2.5rem - 2px);
  white-space: nowrap; /* テキストを折り返さないようにする */
  overflow: hidden; /* コンテンツが要素をはみ出した場合に隠す */
  text-overflow: ellipsis; /* 文字列がはみ出したら省略記号（...）を表示 */
}

/* 待遇一覧 */
.shoplist .main_area .treatment {
  width:100%;
}
.shoplist .main_area .treatment h5 {
  background:#FF914D;
  justify-content: center;
}


.shoplist .main_area .treatment ul {
  flex-wrap: wrap;
  gap:6px;
}
.shoplist .main_area .treatment ul li {
  width:32%;
  height:1.3rem;
  background:#FF914D;
  color:#ffffff;
  font-size:0.8rem;
  padding:0.3rem 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
.shoplist .main_area .treatment ul li.non {
  background:#ffffff;
  color:#C4C4C4;
  border:solid 1px #C4C4C4;

}

.shoplist .main_area .treatment ul li.empty {
  background:#ffffff;
}


.shoplist .menu_area {
  width: 100%;
  padding:0;
  gap:0.5rem;
  align-items: flex-end;
}


.shoplist .menu_area a {
  width:50%;
  border-radius: 7px;
  color:#ffffff;
  justify-content: center;
  height:3rem;
  border:none;
  box-shadow: 0px 4px 0px 0px #000000;
}


.shoplist .menu_area a.link {background:#3D83AD;}
.shoplist .menu_area a.line {background:#00BF63;}

.shoplist .menu_area a.keep {background:#FF5757;}
.shoplist .menu_area a.more_button {background:#4DA4E0;}

.shoplist .menu_area a.form {background:#ffffff;
color:#FF914D;
border:solid 1px #FF914D;}

.shoplist .menu_area a.kept {
  background:#ffffff;
  color:#FF5757;
  border:solid 1px #FF5757;
  margin-bottom:-4px;
  box-shadow: none;
}

.shoplist .menu_area_text {
  gap:2rem;
}
.shoplist .menu_area_text a {
  color:#737373;
  text-decoration: underline;
}


/* 一覧をもっと見るボタン */
.job_shoplist a.go_more {
  width:40%;
  height:2.5rem;
  color:#ffffff;
  border-radius: 5px;
  background:#869AEF;
  justify-content: center;
  box-shadow: 0px 5px 0px 0px #004AAD;
}



/* ページャー */
.pager {
}

.pager ul {
  width:100%;
  justify-content: center;
  gap:0.5rem;
}

.pager ul li {
  background:#869AEF;
  border-radius: 7px;
  min-width:1.7rem;
  height:2.3rem;
}

.pager ul li a {
  color:#ffffff;
  padding:0.5rem;
  justify-content: center;
  gap:0.5rem;
  width:100%;
  height:100%;
  line-height:1;
}
.pager ul li.now {
  background:none;
}

.pager ul li.now a {
  color:#A6A6A6;
}

.pager ul li.prev a:before {
  content: '';
  display: block;
  width: 0.5rem;
  height: 1.7rem;
  background-image: url(../img/prev.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.pager ul li.prev.now a:before {
  background-image: url(../img/prev_gray.png);
}


.pager ul li.next a:after {
  content: '';
  display: block;
  width: 0.5rem;
  height: 1.7rem;
  background-image: url(../img/next.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.pager ul li.next.now a:after {
  background-image: url(../img/next_gray.png);
}




/* 広告 */
.job_shoplist .advertisement {
  background: #737373;
    border-radius: 10px;
    padding: 1rem 0 2rem;
}
.job_shoplist .advertisement .slide {
  width:70%;
  margin-left:auto;
  margin-right:auto;
}
.job_shoplist .advertisement .slide .slick-dots li button:before {
  font-size: 1rem;
  color: #ffffff;
  opacity: 0.7;
}
.job_shoplist .advertisement .slide .slick-dots li.slick-active button:before {
  opacity: 1;
  color: #000000;
}




/* アクセスランキング */
.job_shoplist.ranking h3.access_ranking {
  background:#FFB800;
  width:fit-content;
  height:2.8rem;
  padding:0 1rem;
  gap:0.5rem;

}

.job_shoplist.ranking h3.access_ranking img {
  width:1.5rem;
}

.rank_link_list {
  padding:0.7rem 0.2rem;
  border-top:solid 1px #000000;
  border-bottom:solid 1px #000000;
  position:relative;
}

.rank_link_list::after {
  content: '';
  position: absolute;
  bottom: 100%; /* 吹き出しの上部に配置 */
  left: 50%; /* 左右中央に配置 */
  margin-left: -20px; /* 三角形の幅の半分だけ左に移動 */
  border-left: 15px solid transparent; /* 三角形の幅を細く */
  border-right: 15px solid transparent; /* 三角形の幅を細く */
  border-bottom: 20px solid black; /* 高さを維持 */
  border-bottom-color: #000000;
}

.rank_link_list::before {
  content: '';
  position: absolute;
  bottom: 100%; /* 吹き出しの上部に配置 */
  left: 50%; /* 左右中央に配置 */
  margin-left: -19px; /* ::afterより1pxだけ小さく（9px） */
  border-left: 14px solid transparent; /* ::afterより1px小さい幅 */
  border-right: 14px solid transparent; /* ::afterより1px小さい幅 */
  border-bottom: 19px solid white; /* ::afterより1px小さい高さ */
  border-bottom-color: #ffffff; /* 吹き出しの背景色と同じ */
  z-index: 2;
}



.rank_link_list ul {
  flex-wrap: wrap;
  gap:0.7rem;
  justify-content: flex-start;
}

.rank_link_list ul li {
  flex: 0 0 auto;
}
.rank_link_list ul li a {
  gap:0.3rem;
}
.rank_link_list ul li a img {
  width:0.8rem;
}


p.update_text {
  text-align: center;
}

.shoplist.ranking .title {
  padding-bottom:0.3rem;
}
.shoplist.ranking .title h4 {
  gap:0.2rem;
}
.shoplist.ranking .title h4 img {
  width:0.6rem;
}

.shoplist.ranking .shopname_area {
  justify-content: space-between;
  gap:0.5rem;
  width:100%;
  margin-right:auto;
}
.shoplist.ranking .shopname_area img {
  width:4rem;
  height:4rem;
}

.shoplist.ranking .shopname_area div.column {
  margin-right:auto;
  justify-content: flex-start;
  align-items: flex-start;
}


.shoplist.ranking .shopname_area .menu_area {
  gap:1rem;
}

.shoplist.ranking .right_area .menu_area a {
  width:50%;
}



.shoplist.gold .main_area .salary div div {
  color:#B5A863;
}
.shoplist.gold .main_area .salary > div {
  border: solid 2px #B5A863;
}

.shoplist.gold .main_area .salary > div {
  background-image: linear-gradient(to bottom, #b5a863, #efd860 50%, #b5a863);
}

.shoplist.gold .main_area .treatment h5,
.shoplist.gold .treatment ul li {
  background:#B5A863;
}


.shoplist.silver .main_area .salary div div {
  color:#A6A6A6;
}
.shoplist.silver .main_area .salary > div {
  border: solid 2px #A6A6A6;
}

.shoplist.silver .main_area .salary > div {
  background-image: linear-gradient(to bottom, #a6a6a6, #c8c8c8 50%, #a6a6a6);
}

.shoplist.silver .main_area .treatment h5,
.shoplist.silver .treatment ul li {
  background:#A6A6A6;
}


.shoplist.bronze .main_area .salary div div {
  color:#AF927C;
}
.shoplist.bronze .main_area .salary > div {
  border: solid 2px #AF927C;
}

.shoplist.bronze .main_area .salary > div {
  background-image: linear-gradient(to bottom, #AF927C, #cfa063 50%, #AF927C);
}


.shoplist.bronze .main_area .treatment h5,
.shoplist.bronze .treatment ul li {
  background:#AF927C;
}


.shoplist.black .main_area .salary div div {
  color:#000000;
}
.shoplist.black .main_area .salary > div {
  border: solid 2px #000000;
}
.shoplist.black .main_area .salary > div {
  background:#000000;
}


.shoplist.black .main_area .treatment h5,
.shoplist.black .treatment ul li {
  background:#000000;
}


.shoplist.ranking span.below_four {
  width:3rem;
  height:3rem;
  background:#000000;
  justify-content: center;
  border-radius: 50%;
}

/* 店舗詳細ページ */
.shop_header {
  padding:0.2rem 0;
  }
  .shop_headermain {
    gap:0.5rem;
    flex-wrap: wrap;
  } 
  
  
  .shop_logo {
    margin-top:0.5rem;
    margin-left:0.5rem;
    border-radius: 100%;
    width:3rem;
  }
  .shop_logo img {
    border-radius: 100%;
  }
  
  .shop_name {
    width:calc(100% - 4rem);
    align-items: flex-start;
    margin-right:auto;
    margin-top:0.5rem;

  }
  
  
  .shop_linkmenu {
    height:2rem;
    width:100%;
    overflow-x: scroll;
    flex-wrap: nowrap;
    justify-content: flex-start;
    gap:0.3rem 0;
    background:#F1F1F1;
    border-top:solid 1px #8D8D8D;
    border-bottom:solid 1px #8D8D8D;
  }
  
  .shop_linkmenu li {
    flex-shrink: 0;
    border-left:solid 1px #8D8D8D;
    height: 100%;
  }
  
  .shop_linkmenu li:last-child {
    border-right:solid 1px #8D8D8D;
  
  }
  
  .shop_linkmenu li a {
    color:#000000;
    display: flex;
    justify-content: center;
    align-items: center;
    height:100%;
    white-space: nowrap;
    padding:0 0.4rem;
  }
  


  /* 説明 */
.shop_description {
  background: #F1F1F1;
  padding:1rem;
}

/* 特典３種 */
.shop_top_bn {
  gap:5px;
  align-items: stretch;
}

.shop_top_bn div {
  width:33%;
  background:#FF914D;
  padding:2px;
  justify-content: flex-start;
}

.shop_top_bn div strong {
  width:100%;
  height:2.3rem;
  color:#FF914D;
  justify-content: center;
  gap:0.3rem;
}
.shop_top_bn div strong img {
  width:1rem;
}

.shop_top_bn div p {
  padding:0.5rem 0;
  justify-content: center;
  height:calc(100% - 2.3rem);
}

/* リンク希望 */
.link_p {

}

.link_p a.link_bt {
  justify-content: center;
  background:#3D83AD;
  height:4rem;
  gap:0.5rem;
}

.link_p a.link_bt img {
  width:1.4rem;
}

.link_p a.link_txt {
  color:#3D83AD;
  justify-content: flex-start;
  gap:0.5em;
}

.link_p a.link_txt span {

  background:#3D83AD;
  border-radius: 100%;
  justify-content: center;
  width:1.1rem;
  height:1.1rem;

}

/* 応募特典 */
.shop_tokuten {
  gap:0.5rem;
  justify-content: flex-start;
}

.shop_tokuten dl {
  width:100%;
  gap:0.5rem;
  flex-wrap: nowrap;
}

.shop_tokuten dl dt {
  width:2rem;
  height:2rem;
  justify-content: center;
}

.shop_tokuten dl dd {
  width:calc(100% - 2rem);
  border:solid 1px #000000;
  padding:0.3rem;
}


.job_shoplist.shopinfo h3 {
  width:100%;
  margin-bottom:0.5rem;
}

.job_shoplist.shopinfo h3 img {
  width:1.2rem;
}


/* 待遇一覧 */
.shop_treatment {

}
.shop_treatment ul {
  gap: 0.5rem;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.shop_treatment ul li {
  display: flex;
    background: #FF914D;
    border-radius: 0;
    border: 0;
    color: #ffffff;
    width: 31%;
    height: 2.3rem;
    font-size: 0.8rem;
    justify-content: center;
    align-items: center;
    margin: 0;
    white-space: nowrap;
}

.shop_treatment ul li.non {
  background: #ffffff;
  border: solid 1px #C4C4C4;
  color: #C4C4C4;
}


/* メリット */
.shop_merit {}
.shop_merit div {
  justify-content: flex-start;
  width:100%;
  border:solid 1px #000000;
  padding:0.5rem;
}

.shop_merit div dl {
  width:100%;
  justify-content: flex-start;
  align-items: flex-start;
  gap:0.5rem;
  margin-bottom:1rem;
}

.shop_merit div dl dt {
  width:100%;
  padding-bottom:0.5rem;
  border-bottom:dashed 1px #000000;
  padding-left:0.7rem;
}

.shop_merit div dl dd {
  padding-left:0.7rem;
  width:100%;
}


/* 先輩ボイス */
.shop_voice {}
.shop_voice .voice_slider {
  width:100%;

}
.shop_voice .voice_slider li {
  padding:0 0.5rem;

}

.shop_voice .voice_slider .slick-slide {
  opacity: 0.5;
}
.shop_voice .voice_slider .slick-active {
  opacity: 1;
}


.voice_slider .slick-next,
.voice_slider .slick-next:hover,
.voice_slider .slick-next:active,
.voice_slider .slick-next:focus {
  display: block;
  right: 0;
  height:2rem;
  width:2rem;
  margin: auto;
  background:#ffffff;
border-radius: 100%;
border:solid 1px #000000;
}

.voice_slider .slick-next:before {
  content:"";
  top: 55%;
  left: 45%;
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  transform: translate(-50%, -50%) rotate(45deg); /* 角度を変更 */
}

.voice_slider .slick-prev:before {
  content:"";
  border-top: solid 2px #000;
  border-right: solid 2px #000;
  transform: translate(-50%, -50%) rotate(225deg); /* 角度を変更 */
  top: 44%;
  left: 54%;
}

.voice_slider .slick-prev,
.voice_slider .slick-prev:hover,
.voice_slider .slick-prev:active,
.voice_slider .slick-prev:focus  {
  display: block;
  left: 0;
  height:2rem;
  width:2rem;
  margin: auto;
  background:#ffffff;
border-radius: 100%;
border:solid 1px #000000;
}





.shop_voice .voice_slider li div.voicemain {
  border:solid 2px #000000;
  padding:0.7rem;
}




.voice_head {
  gap:1rem;
  justify-content: flex-start;
}

.voice_head img {
  width:4rem;
  height:4rem;
  border-radius: 100%;
}

.voice_head .column {
  align-items: flex-start;
}

.voice_head .column small {
  color:#8D8D8D;
}

.voice_position {
  width:100%;
  border:solid 1px #000000;
}

.voice_position li {
  border-bottom:solid 1px #000000;
  text-align: center;
  padding:0.2rem 0;
}
.voice_position li:last-child {
  border:none;
}

.voice_earnings {

}
.voice_earnings p {
  align-items: flex-end;
  line-height: 1;
  font-weight:bold;
  gap:0.1rem;
}
.voice_earnings strong {
  font-size:2.5rem;
  line-height: 0.8;
}

/* メッセージ */
.textContainer {
  position: relative;
  max-height: 100px; /* 初期表示時の最大高さ */
  overflow: hidden;
  transition: max-height 0.5s ease;
}

.moreText {
  /* 必要に応じてスタイルを調整 */
}

.gradient {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 50px; /* グラデーションの高さ */
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0), white);
}

.toggleButton {
  margin-top: 10px;
  margin-bottom:10px;
  background:#5271FF;
  color:#ffffff;
  border:0;
  border-radius: 7px;
  width:96%;
  height:3rem;
  box-shadow: 0px 5px 0px 0px #000000;
  position: relative;
}

.buttonIcon {
  display: inline-block; /* inline-blockに設定 */
  width: 10px;
  height: 10px;
  border: 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute; /* absoluteからrelativeに変更 */
  right: 1rem;
  top: 50%;
  transform: translate(-50%, -50%) rotate(135deg);
  opacity: 1;
  margin-left: 5px; /* ボタンテキストとの間隔 */
}

.toggleButton.close {
  box-shadow: none;
  background:#8D8D8D;

}

.toggleButton.close .buttonIcon {
  transform: translate(-50%, -50%) rotate(-45deg);
}


/* スペシャル待遇 */
.shop_special {}

.shop_special div {
  width:100%;
  min-height:4rem;
  border:solid 1px #000000;
  padding:1rem;
}

/* 募集要項 */
.shop_youkou {}

.shop_youkou div {
  width:100%;
  min-height:4rem;
  border:solid 1px #000000;
  padding:1rem 0.5rem;
}
.shop_youkou h4 {
  padding-left:0.5rem;

}
.shop_youkou div.txt {
  border:none;
  padding:0.2rem 1rem 1rem 0.5rem;
  border-bottom:dashed 1px #D9D9D9;
  margin-bottom:0.6rem;
  min-height: 0;
}

.shop_youkou div.txt:last-child {
  border:0;
}


/* 店内写真 */
.shop_photo {}

.shop_photo div.photo_main {
  width:100%;
  border:solid 1px #000000;
  padding:1rem;
  flex-wrap: wrap;
  gap:2rem 1%;
  align-items: flex-start;
}
.shop_photo div.photo_main div.column {
  width:49%;
  align-items: flex-start;
  gap:0.2rem;
}


/* 店内情報 */
.shop_info {

}
.shop_info > div {
  border:solid 1px #000000;
  padding:0.5rem;
}


.youtube-video-container {
  width: 100%;
  aspect-ratio: 16/9;
}
.youtube-video-container iframe {
  width: 100%;
  height: 100%;
}


.shop_info p {
  text-align: justify;
}

.shop_info ul {
  width:100%;
  max-width: 600px;
  gap:0.5rem;
  justify-content: flex-start;
}

.shop_info ul li {
  width:25%;
  max-width:130px;
  background:#000000;
  border-radius: 100%;
  aspect-ratio: 1 / 1;
  position: relative;
  justify-content: flex-start;
  align-items: center;
}

.shop_info ul li .iconarea {
  height: auto; /* または最も高い画像の高さに合わせる */
  width: 75%;
  margin-top: 0.7rem;
  justify-content: center;
}

.shop_info ul li.cast img,
.shop_info ul li.age img,
.shop_info ul li.tsubo img,
.shop_info ul li.taku img {
  max-height: 1.9rem; /* 画像の最大高さを.iconareaの高さに合わせる */
  width: auto; /* 幅を自動調整 */
  max-width:90%;
}

.shop_info ul li div.num {
  position: absolute;
  bottom:-5px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  border-radius: 40px;
  width:80%;
  border: solid 1px #000000;
  justify-content: center;
  gap:0.5rem;
  line-height:1;
  padding:0rem 0 0.1rem;
  align-items: flex-end;
}


/* よくある質問 */
.shop_faq_main {
  width:100%;
  border-top:none;
}


.shop_faq-item {
  border: 1px solid black;
  margin-bottom:5px;
}

.shop_faq-header {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.7rem 0.7rem 0.7rem 1rem;
}

.shop_faq-content {
  overflow: hidden;
  transition: height 0.3s ease;
  height: 0; /* 初期状態では高さ0 */
  /* padding: 10px; */

}
.shop_faq-content p {
  padding:0.7rem;
  width:98%;
  border-top: 1px dashed black; /* 波線 */
}



.shop_faq-icon {
  transition: transform 0.3s ease;
  font-size:1.5rem;
  line-height:1;
}

.shop_faq-header .shop_faq-icon:before {
  content: "+";
}
.shop_faq-header.active .shop_faq-icon:before {
  content: "ー";
  font-size:1rem;
}


/* お店のMAP */
.shop_map > div {
  width:100%;
  border: 1px solid black;
  padding:1rem;
  gap:1rem;
  align-items: stretch;
}

.shop_map div div.maparea {
  width:100%;
  height:12rem;

} 

.shop_map div div.shoparea {
  align-items: flex-start;
  width:100%;
  gap:0.5rem;
}

.shop_map div div.btnarea {
  gap:0.5rem;
  width:100%;
  flex-wrap: wrap;
}

.shop_map div div.btnarea a {
  justify-content: center;
  width:fit-content;
  height:3rem;
  border:solid 1px #FF914D;
  flex-grow: 1;
}

/* グループ */
.job_shoplist.shopinfo .shop_group h3 img {
  width:2rem;
}
.shop_group .group_title_img {
  background:#303030;
  padding:0.7rem 1rem;
}
.shop_group h4 {
  background:#869AEF;
  gap:0.5rem;
  padding:0.5rem 1rem;
  border-bottom:solid 1px #CBD5FF;
  align-items: center;
}

.shop_group h4:after {
  content: "＋";
  margin-left:auto;
}

.shop_group h4.active:after {
  content: "ー";
}


.shop_group .main {
  background:#CBD5FF;
}

.shop_group .main a {
  padding:1rem;
  gap:1rem;
  align-items: center;
  border-bottom:solid 1px #869AEF;
}

.shop_group .main a img.logo {
  width:4rem;
  height:4rem;
  border-radius: 50%;
  border:solid 1px #869AEF;

}
.shop_group .main a > div.column {
  width:calc(100% - 3rem);
  align-items: flex-start;
  gap:0.2rem;
}

.shop_group .main a > div.column small {
  color:#000000;
}
.shop_group .main a div.column div.spcolumn {
  gap:0.2rem;
}
.shop_group .main a > div.column strong {
  color:#000000;
  align-items: flex-start;
  line-height: 1.3;
}

.shop_group .main a > div.column strong small {
  font-weight: normal;
}

.shop_group .main a div.spcolumn img {
  width:1rem;
}
/* アコーディオン */
.group_ac-content {
  overflow: hidden;
  transition: max-height 0.3s ease;
  max-height: 0; /* 初期状態では最大高さを0に */
}

/* 公式SNS */
.shop_sns5 {
  background:#F1F1F1;
  padding:0.6rem 0 1.7rem;
}
.shop_sns5 h4 {color:#8D8D8D;}
.shop_sns5 ul {
  width:80%;
  gap:0.7rem;
}

.shop_sns5 img {
  border-radius: 50%;
}



/* 応募・連絡先 */
.shop_contact {
  padding:5rem 0;
  background-color: #F1F1F1;
}

.shop_contact h3 {
  background:#FFC759;
  padding:1rem 2rem;
  justify-content: center;
}

.shop_contact .contact_main {

  background:#FFEDA6;
  padding:1rem 0;
}
.shop_contact .contact_main .top_area,
.shop_contact .contact_main .bottom_area {
  padding:1.5rem;
}

.shop_contact .contact_main .top_area > strong {
  justify-content: center;
  gap:0.5rem;
}

.shop_contact .contact_main .top_area > strong span {
  border:solid 1px #000000;
  padding:0.3rem 3rem;
  border-radius: 3px;
}

.shop_contact .contact_main .top_area .tel_area, 
.shop_contact .contact_main .top_area .line_area {
  gap:1rem;
  justify-content: flex-start;
  align-items: center;
}

.shop_contact .contact_main .top_area .tel_area img,
.shop_contact .contact_main .top_area .line_area img {
  width:3rem;
}

.shop_contact .contact_main .top_area .tel_area a, 
.shop_contact .contact_main .top_area .line_area a {
  width:calc(100% - 3rem);

}
.shop_contact .contact_main .top_area .tel_area a strong, 
.shop_contact .contact_main .top_area .line_area a strong {
  width:fit-content;
  min-width:100%;
  height: 4rem;
  padding:0.8rem 1.3rem;
  justify-content: center;
  align-items: center;
} 

.shop_contact .contact_main .top_area .tel_area strong {
  background:#EE217F;
}

.shop_contact .contact_main .top_area p.tel_txt {
  color:#EE217F;
}


.shop_contact .contact_main .top_area .line_area strong {
  background:#00B900;
}

.shop_contact .contact_main .top_area p.line_txt {
  color:#00B900;
}

.shop_contact .contact_main .top_area p {
  text-align: left;
}

.shop_contact .contact_main .bottom_area {}

.shop_contact .contact_main .bottom_area h4 {
  justify-content: center;
  gap:0.5rem;
}
.shop_contact .contact_main .bottom_area h4 img {width:2rem;}

.shop_contact .contact_main .bottom_area a {
  background:#1B9DF0;
  padding:0rem 3rem;
  width: fit-content;
  min-width:50%;
  height:3.5rem;
  justify-content: center;
}

.sns_share_sp {
  padding:2rem;
}

.sns_share_sp .top_area {
  gap: 0.5rem;
}

.sns_share_sp .bottom_area {
  gap:0.5rem;
}

.sns_share_sp .bottom_area li {
  overflow: hidden;
  padding:0.5rem;
}




/* WEB応募 */
.entry_form {
  padding:2rem 0;
}

.entry_form .entry_main {

}

.entry_info_area {
  width:100%;
  flex-wrap: wrap;
}

.entry_info_area dl {
  width:100%;
  border:solid 1px #000000;
}

.entry_info_area dl dt {
  justify-content: center;
  padding:0.3rem;
  align-items: center;
}

.entry_info_area dl dd {
  justify-content: center;
  padding:0.3rem;
}


/* フォーム */
form.entry_main_form {
  width:100%;
}

form.entry_main_form > div {
  gap:1rem;
  flex: 1;
  align-items: flex-start;
}


form.entry_main_form div.flex div {
  width:50%;
} 
form.entry_main_form label {
  display: block;
  font-size:14px;
  font-weight:bold;
  margin-bottom:0.5rem;
}

form.entry_main_form label span {
  color:#ffffff;
  font-size:12px;
  background:#FF5757;
  padding:3px 7px;
  margin-left:0.5rem;
  width:fit-content;
  line-height: 1;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

form.entry_main_form > div.dob {
  justify-content: flex-start;
  gap:0.7rem;
  align-items: center;
  flex-wrap: wrap;

}

form.entry_main_form > div.dob input[type="number"] {
  width: 30%; /* 年、月、日のフィールドの長さを均等に */
}

form.entry_main_form > div.dob input[type="number"]#age {
  width: 26%; /* 年齢のフィールドをそれより短く設定 */
}


form.entry_main_form input,
form.entry_main_form textarea,
form.entry_main_form select {
  width:100%;
  border-radius: 5px;
  border:solid 2px #000000;
  min-height:3rem;
  padding:5px;
  -webkit-appearance: none; /* iOSでのデフォルトの外観を無効化 */
  appearance: none;
}

form.entry_main_form > div.checkbox {
  justify-content: center;
  align-items: center;
  gap:0.5rem;
}
form.entry_main_form > div.checkbox label {
  margin:0;
}
form.entry_main_form > div.checkbox a {
  text-decoration: underline;
  color:#5271FF;
}
form.entry_main_form input[type="checkbox"] {
  width:1.5em;
  height:1.5em;
  appearance:revert;
}

form.entry_main_form textarea {
  height:100px;
}

form.entry_main_form input[type="submit"] {
  border:none;
  background:#004AAD;
  color:#ffffff;
  width:60%;
  height:4rem;
  justify-content: center;
  margin-bottom:3rem;
}

label.agree a {
  font-weight:normal;
}



/* 確認画面 */
.entry_info_area.confirm dl {
  border:solid 1px #004AAD;
}

.entry_info_area.confirm dl dt {
  background:#004AAD;
  justify-content: flex-start;
  padding-left:2rem;
}

.entry_info_area.confirm dl dd {
  padding:0.7rem 2.5rem;
  align-items: flex-start;
}

.entry_main .confirm_submit {
  justify-content: center;
  gap:1rem;
}
.entry_main .confirm_submit button {
  border:none;
  width:40%;

  height:3.5rem;
  color:#ffffff;
  background:#004AAD;
}

.entry_main .confirm_submit button[type="button"] {
  background:#868686;
}

/* 完了画面 */
.entry_form.complete {}


.form_complete_button {
  flex-wrap: wrap;
  width: 100%;
  justify-content: center;
  gap:1.5rem 0.5rem;
}

.form_complete_button a {
  width:calc(50% - 0.25rem);
  border:solid 1px #000000;
  color:#000000;
  justify-content: center;
  align-items: center;
  height:3.5rem;
  white-space: nowrap;
  text-align: center;
}

.form_complete_button a.gomylink {
  border:0;
  background:#004AAD;
  color:#ffffff;
}
.form_complete_button a.goshop {
  border:0;
  background:#FF914D;
  color:#ffffff;
}

/* グループから探す */
h2.group_search {
  padding:0.5rem 0;
}
h2.group_search span {
  justify-content: flex-start;
  gap:0.5rem;
}
h2.group_search span img {
  width:2rem;
}


.job_shoplist.group_search {}


.job_shoplist.group_search .left_area {

}

/* 検索フォーム */
.group_search .search-form {
  display: flex;
  /* border: 1px solid #ccc; */
  /* border-radius: 4px; */
  overflow: hidden;

}

.group_search .search-form input {
  flex-grow: 1;
  border: none;
  padding: 8px;
  margin-right: 10px; /* ボタンとの間の隙間を設定 */
  border:solid 1px #000000;
}

.group_search .search-form button {
  background: #000; /* ボタンの背景色を黒に */
  color: #fff; /* ボタン内のテキスト（アイコン）の色を白に */
  border: none;
  padding: 8px;
  cursor: pointer;
}

.group_search .search-form button i {
  font-size: 1.5rem;
  width:2rem;
}

.group_search .switch {
  justify-content: flex-end;
  gap:0.5rem;
}



.group_search .shop_group {}
.group_search .shop_group .group_title {
  gap:1rem;
}

.shop_group .group_title .title_txt_area {
  gap:0.8rem;
  align-items: flex-start;
}


.shop_group .group_title .title_txt_area h3 {
  justify-content: flex-start;
} 

.shop_group .group_title .title_txt_area p {
  padding:0.6rem;
}

/* アコーディオン */
.group_search .group_ac-content {
  overflow: hidden;
  transition: max-height 0.3s ease;
  max-height: 0; /* 初期状態では最大高さを0に */
  background:#CBD5FF;
}

.group_search .group_ac-content ul {
  width:100%;
  padding:1rem;
  gap:1rem 0.5rem;
  flex-wrap: wrap;
  justify-content: space-between;
}

.group_search .group_ac-content ul:before {
  /* content:"";
  display: block;
  width:110px; */
}

.group_search .group_ac-content ul li {
  width:31%;
}

.group_search .group_ac-content ul li a {
  gap:0.3rem;
  color:#000000;
}

.group_search .group_ac-content ul li a img {
  width: 100%;
  height:auto;

  border: solid 2px #869AEF;
  border-radius: 100%;
}

.group_search .advertisement {
  background:none;
}


/* お問い合わせ */
.main_title_area h2 {
  justify-content: flex-start;
  align-items: center;
  padding: 0.5rem 0;
  line-height: 1;
  margin-bottom: 3rem;
}
.main_title_area h2 img {
  width: 2rem;
}

section.contact_form {
  border: solid 2px #004AAD;
  margin-bottom: 3rem;
}

section.contact_form h3 {
  background: #004AAD;
  color: #ffffff;
  font-size:0.9rem;
  padding: 0.2rem 0.7rem;
  display: flex;
  align-items: center;
  gap: 0.3rem;
}

section.contact_form h3 span {
  display: flex;
  width: fit-content;
  height: fit-content;
  font-size: 12px;
  line-height: 1;
  justify-content: center;
  align-items: center;
  background:#FF5757;
  padding: 0.2rem 0.5rem;
}

section.contact_form .form_area {
  padding: 0.7rem 0.7rem;
}

section.contact_form .form_area input {
  height: 2.5rem;
  width: 100%;
  border: solid 2px #A6A6A6;
  border-radius: 5px;
  padding:0.7rem ;
}

section.contact_form .form_area select {
  height: 2.5rem;
  width: fit-content;
  padding: 0 3rem 0 1rem;
  border: solid 2px #A6A6A6;
  border-radius: 5px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

section.contact_form .form_area textarea {
  width: 100%;
  height: 200px;
  border: solid 2px #A6A6A6;
  border-radius: 5px;
  padding:0.7rem ;
  resize: vertical;
}

main.contact .submit_btn {
  background: #004AAD;
  color: #ffffff;
  width:60%;
  height: 58px;
  font-weight: bold;
  border-radius: 5px;
  border: 0;
  /* margin-right: 0;
  margin-left: 0; */
  margin-bottom: 100px;
}

main.contact_confirm .submit_btn {
  margin-right: 0;
  margin-left: 0;
}


main.contact .submit_back_btn {
  background: #868686;
  color: #ffffff;
  width:60%;
  height: 58px;
  font-weight: bold;
  border-radius: 5px;
  border: 0;
  margin-right: 0;
  margin-left: 0;
  margin-bottom: 100px;
}


main.contact_confirm div.flex {
  justify-content: center;
  gap: 1rem;
}

main.contact p {
  text-align: left;
}



/* キープリスト */
main.keeplist {
}

main.keeplist .keeplist_main {
  background: #ffffff;
}

/* タイトル */
.keeplist_main h2 {
  width: 100%;
  justify-content: flex-start;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  margin-bottom: 0.7rem;
}
.keeplist_main h2 img {
  width: 1.7rem;
}
.keeplist_main h2.keeptitle {
  background:#FF5757;
}
.keeplist_main h2.recomtitle {
  background:linear-gradient(to right, #8c52ff, #5ce1e6);
}


/* キープ表示数 */
.keeplist_main p.keep_num {
  justify-content: flex-start;
  padding: 0 1rem;
}

.keeplist_main p.keep_num strong {
  color: #FF5757;
}

.keeplist_main .list_area {
  flex-wrap: wrap;
  padding: 0rem 1rem;
  row-gap: 1.5rem;
}

/* キープリスト１記事 */
.keeplist_main .list_area .list_shopinfo {
  position: relative;
  width: 48%;
  border-radius: 10px;
  border: solid 1px #004AAD;
  padding: 7px;
  box-shadow: 0px 5px 0px 0px #004AAD;
  background: #ffffff;
}



@media screen and (max-width:428px) {

.keeplist_main .list_area .list_shopinfo {
  width: 100%; 
}
}



.list_shopinfo a div {
  justify-content: space-between;
  width: 100%;
  gap: 0.4rem;
  align-items: flex-start;
}

.list_shopinfo .icon_area {
  align-items: flex-end;
  justify-content: flex-start;
  gap: 0rem;
  width: fit-content;
}
.list_shopinfo a div strong {
  line-height: 1;
  align-items: flex-start;
}
.list_shopinfo .icon_area img {
  width: 1.5rem;
}

/* キープリストXボタン */
.list_shopinfo .close-button {
  position: absolute;
  top: -0.5rem;
  right: -0.5rem;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 0.75rem;
  border: 1px solid #737373;
  background-color: white;
  color: #737373;
  font-size: 16px;
  text-align: center;
  line-height: 26px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
}


/* オススメの求人情報 */
.keeplist_main .list_area.recom_list {
  padding-bottom: 5rem;
}
.keeplist_main .list_area.recom_list .list_shopinfo {
  box-shadow: none;
  border: none;
  position: relative;
  z-index: 1;
  padding: 0;
}

.keeplist_main .list_area.recom_list .list_shopinfo a {
  display: block;
  background: #ffffff;
  padding: 7px;
  border-radius: 10px;
}

.keeplist_main .list_area.recom_list .list_shopinfo:after {
  content: "";
  position: absolute;
  top: -2px;
  left: -2px;
  width: calc(100% + 4px);
  height: calc(100% + 9px);
  border-radius: 12px;
  background: linear-gradient(to right, #8c52ff, #5ce1e6);
  z-index: -1;
}



/* キープリストへ */
.keeplist_main a.gokeeplist {
  background:#FF5757;
  color: #ffffff;
  border-radius: 5px;
  width: 280px;
  height: 58px;
  font-size: 1.3rem;
  font-weight: bold;
  margin-bottom: 3rem;

}



/* 求人情報を探しに行く */
.keeplist_main img.nonkeep {
  margin-bottom: 2rem;
  padding: 1rem;
}

.keeplist_main a.gosearch {
  background:#4DA4E0;
  color: #ffffff;
  border-radius: 5px;
  width: 280px;
  height: 58px;
  font-size: 1.3rem;
  font-weight: bold;
  margin-bottom: 3rem;
}


/* legal */
main.legal {
  background: #DFEFF6;
  padding-bottom: 5rem;
}


main.legal dl {
}

main.legal dl.last {

}
main.legal dl dt {
  padding: 0.7rem;
}
main.legal dl dd {
  padding: 0.7rem;
  color: #3D3D3D;

  border: solid 1px #A6A6A6;
}


main.legal dl dd ul.numlist {
  padding-left: 1.5em;
}
main.legal dl dd ul.numlist li {
  list-style: decimal;
  text-align: justify;
}

main.legal dl dd ul.alphabetlist {
  padding-left: 4em;

}
main.legal dl dd ul.alphabetlist li {
  list-style: lower-alpha;
  text-align: justify;
}


main.legal dl.company_info {
  gap: 0;
  border: solid 1px #004AAD;
  border-bottom: none;
  align-items: stretch;
}

main.legal dl.company_info.last {
  border-bottom: solid 1px #004AAD;
  margin-bottom: 3rem;
}

main.legal dl.company_info dt {
  border-right: solid 1px #004AAD;
  width: 10em;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

main.legal dl.company_info dd {
  color: #004AAD;
  width: calc(100% - 10em);
  border: 0;
}

main.legal dl.company_info_map {
  border: solid 1px #004AAD;
  padding: 1px;
}
main.legal dl.company_info_map iframe {
  width: 100%;
}