/*---------------------------------------------------------------*/
/*=|||　基本　|||||||||||||||||||||||||||||||||||||||||||||||||||*/
/*---------------------------------------------------------------*/
body {
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

img,
iframe {
    max-width: 100%;
    height: auto;
}

a[href^="tel:"] {
  pointer-events: auto;
  text-decoration: underline;
}

.pcnone { display: block; }
.spnone { display: none; }

.sp_nowrap {
  white-space: nowrap;
}
.sp_block {
  display: block;
}
.sp_center {
  text-align: center;
}

.font12rem { font-size: 1.2rem; }
.font14rem { font-size: 1.4rem; }
.font16rem { font-size: 1.6rem; }

.fontL1 { font-size: 1.75rem; }
.fontL2 { font-size: 1.25rem; }

.txtarea {
  margin-bottom: 10px;
}

/* パンくずリスト */
#breadcrumbs {
    display: none;
}

/* 2カラム */
.colLeft {
  float: none;
  margin-bottom: 10px;
}
.colRight {
  float: none;
  margin-left: 0;
  margin-bottom: 10px;
}
.colLeft img,
.colRight img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.colSize580,
.colSize380
{ width: 100%; }

/* タイトル */
.title_main01 span {
    width: 100%;
    padding: 0 10px;
}
.title_sub01 {
    font-size: 1.75rem;
}

a.link_t1 {
    max-width: 90%;
    font-size: 1.125rem;
    padding: 15px 20px;
}
a.link_t1::after {
    right: 10px;
}

.inpage_links li {
    display: inline-block;
    width: 45%;
    max-width: 275px;
    margin: 5px;
}
.inpage_links li a {
    width: 100%;
    padding: 15px 25px;
}
.inpage_links li a::after {
    left: 10px;
}

.tbl_t1 colgroup {
    display: none;
}
.tbl_t1 th {
    display: block;
    width: 100%;
    border: none;
}
.tbl_t1 td {
    display: block;
    width: 100%;
    border: none;
    border-bottom: 1px solid #c0c0c0;
}

.btn_t01 {
  display: block;
}
.btn_t01 a {
  display: block;
  padding: 10px;
  width: 100%;
  font-size: 1.8rem;
}

.anchor {
  display: block;
  padding-top: 76px;
  margin-top: -76px;
}

/* お問い合わせ */
.contact_info {
    padding: 30px 10px;
    position: initial;
}

.contact_info .mailform {
    display: block;
    width: 100%;
    text-align: center;
    margin-bottom: 20px;
}
.contact_info .mailform a {
    display: inline-block;
    width: auto;
    height: auto;
    padding: 15px 30px;
}
.contact_info .mailform a br {
    display: none;
}

.contact_info .tel {
    display: block;
    width: 295px;
    height: auto;
    padding: 10px 10px 10px 70px;
}

.contact_info .img {
    display: none;
}

.fl_t1 li {
    float: none;
}

ul.fl2_t1 li {
    float: none;
    width: 100%;
}

.fl3_t1 li {
    float: none;
    margin-right: 0;
    width: 100%;
}

.gmaps {
  position: relative;
  padding-bottom: 100%; // これが縦横比
  height: 0;
  overflow: hidden;
}
.gmaps iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}


/*---------------------------------------------------------------*/
/*=|||　レイアウト　|||||||||||||||||||||||||||||||||||||||||||||*/
/*---------------------------------------------------------------*/
.mainWrap,
.mainWrapS,
.mainWrap700 {
  width: 100%;
  padding: 0 5px;
}


/*---------------------------------------------------------------*/
/*=|||　ヘッダ関連　|||||||||||||||||||||||||||||||||||||||||||||*/
/*---------------------------------------------------------------*/
  #common-header .main-logo {
    position: fixed;
    top: 15px;
    left: 15px;
    z-index: 15;
  }
  #common-header .main-logo img {height: 40px;}
  #common-header .menu {
    height: 70px;
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 5;
    background: #fff;
    overflow: hidden;
  }
  #common-header .smp-header {
    width: 100%;
    height: 76px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  #common-header .smp-header i {
      font-weight: bold;
      letter-spacing: 0;
  }
  #common-header.internal #common-header .menu a {display: block!important;}
  #common-header .menu.show a {display: block;}
  #common-header .menu.open .smp-header a {display: block!important;}
  #common-header .menu .menu-button {
    width: 36px;
    height: 11px;
    padding: 25px 0 0;
    display: block;
    position: fixed;
    top: 17px;
    right: 20px;
    z-index: 30;
    text-align: center;
    font-size: 11px;
    user-select: none;
    cursor: pointer;
    filter: opacity(1);
    transition: all .3s ease;
    color: #333;
  }
  #common-header .menu .menu-button::after,
  #common-header .menu .menu-button::before {
    content: "";
    width: 30px;
    height: 3px;
    display: block;
    background: #ea5624;
    position: absolute;
    left: 3px;
    transition: all .3s ease
  }
  #common-header .menu .menu-button::before {top: 5px}
  #common-header .menu .menu-button::after {top: 15px}
  #common-header .menu.open .smp-header .menu-button::before {top: 11px; transform: rotate(35deg)}
  #common-header .menu.open .smp-header .menu-button::after {top: 11px; transform: rotate(-35deg)}
  #common-header .menu.open .smp-header::after {
    content: "";
    height: 1px;
    position: absolute;
    top: 69px;
    left: 15px;
    right: 15px;
    background: #ea5624;
  }

  #common-header .menu nav {
    position: absolute;
    top: 70px;
    right: -500px;
    transition: all 0.2s ease;
  }
  #common-header .menu.open::after {
    content: "";
    width: 100%;
    display: block;
    background: rgba(255,255,255,0.95);
    position: fixed;
    top: 70px;
    right: 0;
    bottom: 0;
    left: 0;
  }
  #common-header .menu.open nav {
    width: 100%;
    position: fixed;
    top: 70px;
    right: 0;
    bottom: 0;
    z-index: 2;
    overflow: auto;
  }
  #common-header .menu.open nav ul {margin: 0 15px;}
  #common-header .menu.open nav ul li {border-bottom: 1px solid #ddd;}
  #common-header .menu.open nav ul li a {
    height: 55px;
    padding: 0 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 18px;
    color: #111;
  }
  #common-header .menu.open nav ul li a::after {
    content: "";
    width: 10px;
    height: 10px;
    border-top: 1px solid #ea5624;
    border-right: 1px solid #ea5624;
    position: relative;
    transform: rotate(45deg);
  }
  #common-header ul.sub-menu .spec-btn a {height: 90px!important;}
  #common-header ul.sub-menu .spec-btn a span {
    position: absolute;
    left: 110px;
  }
  #common-header ul.sub-menu .spec-btn a span i {
    margin-top: 5px;
    display: block;
    font-size: 14px;
    font-weight: normal;
  }
  #common-header ul.sub-menu .spec-btn a::before {
    width: 52px;
    height: 60px;
  }


/*---------------------------------------------------------------*/
/*=|||　フッタ　|||||||||||||||||||||||||||||||||||||||||||||||||*/
/*---------------------------------------------------------------*/
.footer_banner ul {
    display: block;
}
.footer_banner li {
    display: block;
    width: 100%;
    max-width: 400px;
    margin: 0 auto 20px auto;
    padding: 0;
}

  #common-footer nav ul li {padding: 7px;}
  #common-footer nav ul li a {
    padding: 10px 14px;
    display: block;
    background: #ececec;
    border-radius: 12px;
  }
  #common-footer .wrap {justify-content: center;}
  #common-footer .encase .address {
    padding: 20px 15px 0;
  }
  #common-footer .encase .address span {
    display: inline-block;
  }
  #common-footer dl.corp-name {
    width: 100%;
    order: 1;
  }

  
/*---------------------------------------------------------------*/
/*=|||　サブコンテンツ関連　|||||||||||||||||||||||||||||||||||||*/
/*---------------------------------------------------------------*/
#scroll_body {
    z-index: 0;
}


/*---------------------------------------------------------------*/
/*=|||　トップ関連　|||||||||||||||||||||||||||||||||||||||||||||*/
/*---------------------------------------------------------------*/
.top_main_img {
    overflow: auto;
    background-size: 400px auto;
}
.top_main_img .inner {
    width: 100%;
    min-height: initial;
    padding: 200px 5px 20px 5px;
}
.top_main_img .catch {
    margin-bottom: 35px;
    font-size: 2.5rem;
    text-align: center;
}
.top_main_img .lead {
    font-size: 1.25rem;
}

.menu_t1 ul {
    display: block;
}
.menu_t1 li {
    display: block;
    width: 100%;
    max-width: 300px;
    margin: 0 auto 20px auto;
}
.menu_t1 a::after {
    right: 10px;
}


/*---------------------------------------------------------------*/
/*=|||　サービス案内　|||||||||||||||||||||||||||||||||||||||||||*/
/*---------------------------------------------------------------*/
.trouble_list {
    position: initial;
}
.trouble_list .col {
    width: 100%;
    float: none;
}

.trouble_list ul {
    display: block;
    margin-bottom: 30px;
}

.trouble_list .troubled_person {
    position: initial;
    bottom: 0;
    left: 0;
}
.trouble_list .troubled_person img {
    display: block;
    margin: auto;
}

.service_info .inner {
    padding: 15px;
}

.service_info .wrap {
    display: block;
}

.service_info .img {
    width: 100%;
    float: none;
    text-align: center;
    margin-bottom: 10px;
}

.service_info .img img {
    margin: auto;
}

.service_info .info {
    margin-left: 0;
}

.service_explanation {
    padding: 20px;
}

.service_explanation .text {
    float: none;
    width: 100%;
}
.service_explanation .img {
    float: none;
    width: 100%;
    margin-left: 0;
    margin-top: 20px;
    text-align: center;
}




/*---------------------------------------------------------------*/
/*=|||　事例紹介関連　|||||||||||||||||||||||||||||||||||||||||||*/
/*---------------------------------------------------------------*/
.sp_select_menu {
    width: 90%;
    margin: 0 auto 20px auto;
    text-align: center;
}
.sp_select_menu select {
    padding: 10px 20px;
    font-size: 1.0rem;
}

.casestudy_list > ul {
    justify-content: center;
}
.casestudy_list > ul > li {
    margin-bottom: 30px;
    max-width: 100%;
}
.casestudy_list > ul > li:last-child {
    margin-bottom: 0;
}

.casestudy_list .thum {
    width: 100%;
}


/*---------------------------------------------------------------*/
/*=|||　事例詳細　|||||||||||||||||||||||||||||||||||||||||||||||*/
/*---------------------------------------------------------------*/
#casestudy .category .theme {
    display: inline-block;
    background: #82b724;
    color: #ffffff;
    font-weight: bold;
    padding: 2px 20px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
}
#casestudy .category ul {
    display: inline;
}
#casestudy .category li {
    display: inline;
    color: #739b00;
    margin-left: 10px;
}
#casestudy .category li a {
    color: #739b00;
    text-decoration: none;
}
#casestudy .category li a:hover {
    text-decoration: underline;
}

#casestudy .company_info th {
    display: block;
    padding-left: 0;
}
#casestudy .company_info td {
    display: block;
    min-width: initial;
}


/*---------------------------------------------------------------*/
/*=|||　フォーム関連　|||||||||||||||||||||||||||||||||||||||||||*/
/*---------------------------------------------------------------*/
.form_t1 colgroup {
    display: none;
}

.form_t1 select {
  display: block;
}
.form_t1 input[type="text"] {
  font-size: 1.0rem;
  padding: 10px 5px;
}
.form_t1 textarea {
  font-size: 1.0rem;
}
.form_t1 label {
    display: block;
    padding: 5px 0;
}

.form_t1 th,
.form_t1 td {
    display: block;
    width: 100%;
    border-top: none;
    border-left: none;
    border-right: none;
}
.form_t1 td {
    padding: 15px 10px;
}
.form_t1 .width70p,
.form_t1 .width90p {
  width: 100%;
}
.form_t1 .buttons {
  text-align: center;
}

.form_t1 .width25p,
.form_t1 .width50p,
.form_t1 .width70p,
.form_t1 .width75p,
.form_t1 .width90p {
  width: 100%;
}
.form_t1 .width10p {
  width: 25%;
}

.form_t1 .button_next {
  padding:15px 30px;
}


/*---------------------------------------------------------------*/
/*=|||　記事関連　|||||||||||||||||||||||||||||||||||||||||||||||*/
/*---------------------------------------------------------------*/
.top_news .article_list {
    min-height: auto;
    padding-right: 0;
    background: none;
}

.article_list .tbl,
.top_news .article_list .tbl {
    display: block;
    width: 100%;
}
.article_list .date {
    display: inline-block;
    width: auto;
    text-align: left;
}
.article_list .category {
    display: inline-block;
    width: auto;
    padding-left: 0;
}
.article_list .mainarea,
.top_news .article_list .mainarea {
    display: block;
    width: 100%;
    margin-top: 5px;
    padding-left: 0;
}

#textBody {
  padding: 10px 0 15px 0;
}

.prevnext .prev,
.prevnext .next {
  float: none;
  width: 100%;
}

.wp-pagenavi{
  font-size: 1.4rem;
}


/*---------------------------------------------------------------*/
/*=|||　人材課題相談会　|||||||||||||||||||||||||||||||||||||||||*/
/*---------------------------------------------------------------*/
.consultation_meeting_head .catch {
    font-size: 1.75rem;
    margin-bottom: 0;
}
.consultation_meeting_head .title {
    font-size: 2.0rem;
}

.recommend_list_t1 {
    display: block;
}
.recommend_list_t1 .rightarea {
    width: 100%;
}

.consultation_meeting_list li {
    position: relative;
    display: inline-block;
    margin: 20px;
    width: 100px;
    height: 100px;
}
.consultation_meeting_list li span {
    left: -25px;
    width :150px;
}
.consultation_meeting_list li:nth-child(1),
.consultation_meeting_list li:nth-child(2) {
    margin: 20px;
}

.step_entry {
    gap: 0;
}

.step {
    width: calc((100% - 30px) / 3);
}

.step img {
    width: 100%;
    height: auto;
}

.arrow {
    width: 15px;
    font-size: 1rem;
    font-weight: bold;
}

.contact-form-box {
    width: 100%;
}
