@charset "UTF-8";
html {
  font-size: 14px;
}

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

.top-policy-text {
  position: relative;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2000;
  transform: translate(0, 0);
  margin: 30px auto 0;
  text-align: center;
  padding-bottom: 35px;
}

.table-contact {
  width: 95%;
  margin: 0 auto;
  border-collapse: collapse;
}

.table-contact tr th,
.table-contact tr td {
  padding: 0.5em;
  text-align: left;
}

.table-contact tr th {
  width: 100%;
  display: block;
  vertical-align: middle;
  padding-bottom: 0 !important;
  padding-top: 1em !important;
}

.table-contact.table-address tr td {
  padding-bottom: 0 !important;
}

.table-contact tr th .required {
  background: #bfb147;
  color: #fff;
  padding: 3px 5px;
  font-size: 12px;
  vertical-align: middle;
  margin: 0 0 0.25em 1.5em;
  display: inline-block;
}

.table-contact tr td {
  display: block;
}

.table-seminar {
  width: 95%;
  margin: 0 auto;
  border-collapse: collapse;
}

.table-seminar tr th,
.table-seminar tr td {
  padding: 0.5em;
  text-align: left;
}

.table-seminar tr th {
  width: 100%;
  display: block;
  vertical-align: middle;
  padding-bottom: 0 !important;
  padding-top: 1em !important;
}

.table-seminar.table-address tr td {
  padding-bottom: 0 !important;
}

.table-seminar tr th .required {
  background: #bfb147;
  color: #fff;
  padding: 3px 5px;
  font-size: 12px;
  vertical-align: middle;
  margin: 0 0 0.25em 1.5em;
  display: inline-block;
}

.table-seminar tr td {
  display: block;
}

textarea {
  min-height: 300px;
  width: 100% !important;
  display: block;
  margin: auto !important;
  text-align: center;
  padding: 0;
}

input[type=text],
textarea {
  width: 95%;
  margin: 0 auto;
}

[type=reset],
[type=submit] {
  background: #bfb147;
  color: #fff;
  width: 85%;
  height: 52px;
  margin: 0 auto;
  text-align: center;
  display: block;
  cursor: pointer;
  transition: 0.3s;
}

.mwform-checkbox-field label,
.mwform-radio-field label {
  padding-left: 1em !important;
  text-indent: -1em !important;
  display: block;
}

/* ----------------------------------------------------------------
   ヘッダー
   ---------------------------------------------------------------- */
.page-header {
  position: fixed;
  padding: 20px 0 0;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10000;
}

.page-header h1 {
  position: relative;
  display: block;
  width: 120px;
  left: 12px;
  top: -11px;
}
.page-header h1 img {
  width: auto;
  height: 45px;
  margin: 0 0 0 12px;
}

.header-sp-toggle {
  position: absolute;
  top: 23px;
  right: 18px;
  background: transparent url(../img/btn_header_toggle.svg) no-repeat 0 -23px/50%;
  padding: 3px 0 3px 25px;
  border: none;
  outline: none;
  line-height: 1;
  font-size: 100%;
  color: #bfb147;
  transition: background-position 1s;
}

.header-sp-toggle-on {
  background-position: 0 0;
}

.header-nav {
  padding: 0 0 20px;
}

.header-nav ul {
  margin-bottom: 20px;
  border-top: 1px solid #000;
  font-size: 0;
}

.header-nav .header-nav-sub {
  margin-bottom: 0;
  border-top: none;
  border-bottom: none;
  background: rgba(0, 0, 0, 0.9);
  z-index: 10;
  position: relative;
}

.header-nav ul:after {
  content: "";
  clear: both;
  display: block;
}

.header-nav ul li {
  float: left;
  width: 50%;
  padding: 7px;
  border-bottom: 1px solid #000;
  box-sizing: border-box;
  vertical-align: top;
  font-size: 14px;
}

.header-nav ul li:nth-child(3) {
  position: relative;
}

.header-nav ul li:nth-of-type(odd) {
  border-right: 1px solid #000;
}

.header-nav ul li.nav-last:last-child {
  width: 100%;
  text-align: center;
  margin: auto;
  display: block;
}

.header-nav ul li.nav-last:last-child img {
  width: 50%;
  margin: 15px auto 10px;
  text-align: center;
}

.header-nav .header-nav-sub li {
  display: block;
  width: 100%;
  padding: 0 0 0 15px;
  border: none !important;
}

.header-nav a:hover .header-nav-en::after,
.header-nav a:focus .header-nav-en::after,
.header-nav a:active .header-nav-en::after,
.header-nav .header-nav-current .header-nav-en::after {
  display: none;
}

.header-nav-jp {
  font-size: 11px;
}

.lang-switch {
  margin: -10px 12px 0;
  padding: 0 0 10px;
}

.bogo-language-switcher {
  justify-content: flex-end;
  margin: -10px 12px 0;
  padding: 0 0 10px;
}

/* ----------------------------------------------------------------
   トップページ：News
   ---------------------------------------------------------------- */
.top-news {
  padding: 25px 0 45px;
  background: #eaeaea;
}

.top-news h2 {
  text-align: center;
  color: #000;
  margin-bottom: 25px;
}

.top-news h2 p {
  font-size: 32px;
  line-height: 1;
}

.top-news h2 span {
  font-size: 12px;
}

.news-aera {
  width: 90%;
  height: 200px;
  margin: 0 auto;
  overflow-y: scroll;
  padding-right: 15px;
  box-sizing: border-box;
}

.news-aera dl {
  border-top: solid 1px #cfcfcf;
  padding: 9px 0;
  margin-right: 15px;
}

.news-aera dl:last-child {
  border-bottom: solid 1px #cfcfcf;
}

.news-aera dt {
  color: #302f2b;
  margin-bottom: 5px;
  box-sizing: border-box;
}

.news-aera dd,
.news-aera dd a {
  font-size: 14px;
  color: #ab9a34;
}

/* ----------------------------------------------------------------
   トップページ：ポリシー
   ---------------------------------------------------------------- */
.top-lead {
  height: auto !important;
  padding: 1.5rem 5%;
}

.top-lead2 {
  height: auto !important;
  padding: 1.5rem 5%;
}

.top-lead-text h2 {
  text-indent: -14%;
  margin-bottom: 30px;
}

.top-lead-text h2 img {
  width: 320px;
  display: block;
  margin: 0 auto;
  text-align: center;
}

.top-lead-text .sp-nobr {
  display: none;
}

.top-scroll {
  text-align: center;
}

.top-scroll a {
  display: block;
  padding: 10px 0;
}

.top-scroll a img {
  width: 15%;
}

.top-policy-text {
  width: 90%;
  font-size: 13px;
}

.top-policy-text h2 {
  color: #bfb147;
  font-size: 32px;
  line-height: 1;
  margin-bottom: 15px;
}

.top-policy-text h2 img {
  width: 210px;
  display: block;
  margin: 0 auto;
  text-align: center;
}

.top-policy-slide {
  overflow: hidden;
  aspect-ratio: 3/1;
  width: 100%;
}
.top-policy-slide .slick-list {
  height: 100%;
}
.top-policy-slide img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.slide-pc {
  display: none !important;
}

.bnr {
  height: auto !important;
  padding: 1.5rem 5%;
}

/* ----------------------------------------------------------------
   トップページ：Mission, Information
   ---------------------------------------------------------------- */
.top-mission-list li span {
  position: absolute;
  top: 50%;
  font-size: 14px;
  width: 90%;
  left: 50%;
  display: inline-block;
  transform: translate(-50%, -50%);
  text-align: center;
}

.top-mission {
  padding: 1.5rem 5%;
}

.top-information {
  padding: 1.5rem 2.5% 35px;
}

.top-information h2 p {
  font-size: 32px;
}

.top-information h2 span {
  font-size: 12px;
}

.top-mission h2 img {
  width: 147px;
  display: block;
  margin: 0 auto 15px;
  text-align: center;
}

.top-mission h2,
.top-information h2 {
  margin-bottom: 20px;
  font-size: 14px;
}

.top-mission h2 {
  font-size: 12px;
}

.top-mission h2 span {
  display: block;
  color: #bfb147;
  font-size: 31px;
  line-height: 1;
  white-space: nowrap;
}

.top-mission-list li {
  aspect-ratio: 21/10;
  margin-bottom: 15px;
}
.top-mission-list li:not(:nth-of-type(2))::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.55);
  margin: auto;
}
.top-mission-list li img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.top-mission-list li span br {
  display: none;
}

.top-information-list {
  margin: 0 auto 50px;
  border-top: 1px solid #ccc;
}

.top-information-item {
  padding: 20px 2% !important;
  border-bottom: 1px solid #ccc;
}

div.top-information-item {
  border-bottom: none;
}

.top-information h3.cat-ttl {
  font-size: 24px;
  color: #fff;
  text-align: center;
  background: #000;
  padding: 5px 10px;
  margin: 0 auto 20px;
}

/* 求人詳細ページ */
.single-jobs-item.top-information-item {
  width: 90%;
  margin: 0 auto 50px;
  padding: 25px 2.5%;
  background: rgb(255, 255, 255);
}

.single-jobs-item.top-information-item th,
.single-jobs-item.top-information-item td {
  font-size: 15px;
}

.top-information-item th {
  padding: 5px 0;
  width: 40%;
  font-weight: bold;
}

.top-information-item td {
  padding: 5px 0 5px 10px;
}

.top-information-btn,
.top-information-more {
  position: static !important;
}

/* ----------------------------------------------------------------
   固定ページ共通
   ---------------------------------------------------------------- */
.pages {
  padding: 20px 0 0;
}

.wrapper {
  margin-top: 55px;
}

.pages h2 {
  margin-bottom: 20px;
  padding: 0 5% 10px;
  border-bottom: 1px solid #f7f8f8;
  text-align: center;
}

.pages h2 > span.sub-ttl {
  font-size: 28px;
  color: #bfb147;
  display: block;
  text-align: center;
  padding-right: 0.15em;
}

.pages h2 img {
  display: block;
  max-width: 50%;
  margin: 0 auto 10px;
  text-align: center;
}

.page-abstract {
  margin: 20px 5%;
}

.page-abstract h3 {
  font-size: 18px;
  margin-bottom: 15px;
}

.page-main {
  padding: 50px 2.5% 55px;
}

.page-main h3 {
  margin-bottom: 40px;
  font-size: 176%;
}

.page-main h3 img {
  width: 50%;
  margin: 0 auto;
  display: block;
  text-align: center;
}

.page-main h3 + p {
  text-align: center;
}

.page-main hr {
  margin: 35px auto;
}

/* ----------------------------------------------------------------
   「求職者の方へ」ページ
   ---------------------------------------------------------------- */
.page-text {
  margin-bottom: 65px;
}

.page-feature-fadein {
  margin: 0 auto 50px;
}

.page-text.candidate-main-txt p {
  font-size: 14px;
  line-height: 1.6;
}

.candidate-main-txt {
  width: 100%;
  margin: 0 auto 25px;
}

.page-feature h4 {
  margin-bottom: 20px;
  font-size: 18px;
}

.page-feature h4 img {
  width: 33.5px;
}

.page-feature-image {
  max-width: 100%;
  margin-bottom: 15px;
}

.map-wrapper {
  position: relative;
  width: 100%;
  margin-bottom: 20px;
  padding-top: 40%;
}

.access-map {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

.access-table {
  margin-bottom: 20px;
  table-layout: fixed;
  border-collapse: collapse;
}

.access-table th {
  width: 75px;
}

.access-main .contact-btn {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------
   「採用企業の方へ」ページ
   ---------------------------------------------------------------- */
.clients-page-ttl {
  padding: 15px 0;
}

.clients-image-list li {
  text-align: center;
  margin: 0 auto 100px;
}

.clients-image-list h4 {
  background: #bfb147;
  width: 75%;
  margin: 0 auto 25px;
  padding: 10px;
  border-radius: 50px;
  color: #fff;
  font-size: 16px;
  text-align: center;
}

.clients-more-btn {
  font-size: 13px;
  width: 85%;
  line-height: 1.5;
  margin: auto;
  display: block;
  padding: 15px 1em 15px 1em;
}

/* ----------------------------------------------------------------
   「会社案内」ページ
   ---------------------------------------------------------------- */
.profile-table,
.profile-table tr,
.profile-table td,
.profile-table th {
  display: block;
  text-align: left;
}

.profile-table tr + tr {
  margin-top: 10px;
  padding-top: 10px;
}

.profile-table tr:last-of-type {
  padding-top: 0;
  border-top: none;
}

.profile-table tr:last-of-type th {
  font-weight: normal;
}

/* ----------------------------------------------------------------
   セミナーページ
   ---------------------------------------------------------------- */
p.seminar-txt {
  text-align: center;
  font-size: 129%;
  margin-bottom: 30px;
}

.seminar-table,
.seminar-table tr,
.seminar-table td,
.seminar-table th {
  display: block;
  text-align: left;
}

.seminar-table tr + tr {
  margin-top: 10px;
  padding-top: 10px;
}

.seminar-table tr:last-of-type {
  padding-top: 0;
  border-top: none;
}

.seminar-table tr:last-of-type th {
  font-weight: normal;
}

p.kmfTxt {
  text-align: center;
  font-size: 129%;
}

span.under1 {
  border-bottom: solid 1px #000;
  font-weight: 600;
  font-size: 14px;
}

.wp-image-1197 {
  max-width: 100%;
  height: auto;
}

.wp-image-1200 {
  display: none;
}

/* ============================================
  セミナーページ
============================================ */
.SeminarList {
  display: block;
  flex-wrap: wrap;
  margin-bottom: 50px;
}

.SeminarList_item {
  width: 100%;
}

.SeminarList_item + .SeminarList_item {
  margin-top: 35px;
}

.SeminarList_item > .contents {
  order: 1;
  flex: 1 1 auto;
}

.SeminarList_item .heading {
  font-size: 16px;
  font-weight: bold;
  border-bottom: 1px solid #b5a849;
  padding-bottom: 3px;
}

.SeminarList_item .text {
  margin-top: 15px;
}

.SeminarList_item .picture {
  width: 100%;
  margin: 15px auto 0;
}

.SeminarList_item .picture > a {
  display: block;
  text-align: center;
  margin-top: 0.5em;
}

/* ----------------------------------------------------------------
   「バックオフィス」「セールス＆マーケティング」ページ共通
   ---------------------------------------------------------------- */
.consultant-main-ttl > p {
  font-size: 30px;
  color: #b0a44a;
}

.consultant-main-ttl > span {
  font-size: 14px;
  color: #000;
}

.staff-wrapper-l,
.staff-wrapper-r {
  margin-bottom: 50px;
}

.staff-wrapper-l .staff-text,
.staff-wrapper-r .staff-text {
  margin: 0 auto 35px;
}

.staff-wrapper-l .staff-photo,
.staff-wrapper-r .staff-photo {
  margin-bottom: 0 0 20px;
}

.staff-wrapper-l h4,
.staff-wrapper-r h4 {
  font-size: 18px;
  font-weight: 500;
}

.staff-wrapper-l span,
.staff-wrapper-r span {
  font-size: 12px;
  color: #c9caca !important;
  font-weight: 400;
}

/* ============================================
  新「セールス＆マーケティング」ページ
============================================ */
.staff_lead {
  width: 100%;
  margin: 35px auto;
}

.staffList {
  display: block;
  flex-wrap: wrap;
}

.staffList_item {
  width: 100%;
}

.staffList_item + .staffList_item {
  margin-top: 35px;
}

.staffList_item > .contents {
  order: 1;
  flex: 1 1 auto;
}

.staffList_item .heading {
  font-size: 16px;
  font-weight: bold;
  border-bottom: 1px solid #b5a849;
  padding-bottom: 3px;
}

.staffList_item .text {
  margin-top: 15px;
}

.staffList_item .picture {
  width: 100%;
  margin: 15px auto 0;
}

.staffList_item .picture > a {
  display: block;
  text-align: center;
  margin-top: 0.5em;
}

/* ----------------------------------------------------------------
   お仕事情報
   ---------------------------------------------------------------- */
h2 > p.ttl-en {
  display: block;
  margin: 0 auto;
  text-align: center;
  font-size: 34px;
}

.single-jobs-page .top-information-more {
  margin: 25px auto 0;
}

/* ----------------------------------------------------------------
   お問い合わせ枠
   ---------------------------------------------------------------- */
.contact {
  padding: 1.5% 2.5% 3%;
  background-color: #141418;
}

.contact h3 {
  padding-top: 10px;
  margin-bottom: 25px;
  color: #B0A44A;
  font-size: 32px;
  text-align: center;
}

.contact-text {
  margin-bottom: 25px;
  text-align: center;
  color: #fff;
}

.contact-text br {
  display: none;
}

.contact-btn {
  margin-bottom: 15px;
  text-align: center;
}

.contact-btn a:link,
.contact-btn a:visited {
  width: 100%;
  padding: 15px 0;
  display: block;
  background-position: 85% 50%;
  color: #fff;
  font-size: 22px;
}

/* ----------------------------------------------------------------
   フッター
   ---------------------------------------------------------------- */
.btn-recruit {
  position: fixed;
  left: 50%;
  bottom: 0;
  z-index: 1550;
  transform: translateX(-50%);
  width: 80%;
}

.page-footer {
  padding: 20px 5%;
}

.page-footer-nav {
  margin-bottom: 15px;
}

.page-footer a:before {
  display: none;
}

/*# sourceMappingURL=styles_sp.css.map */
