:root { 
    --color1: #0071bc;
    --color2: #f5fafc;
    --color3: #c1272d;
    --color4: #ffec00;
    --color5: #ccc;

    --font1: 45px;
    --font2: 22px;
}

html {
    font-family: "Noto Sans JP", sans-serif;
    /*font-family: "a-otf-gothic-mb101-pr6n","Noto Sans JP", sans-serif;*/
    font-weight: 400;
    font-style: normal;
    min-width:auto;
}
* {
  box-sizing: border-box;
}
body {
    font-family: "Noto Sans JP", sans-serif;
    /*font-family: "a-otf-gothic-mb101-pr6n","Noto Sans JP", sans-serif;*/
    font-weight: 400;
    font-style: normal;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
}
  
.content {
    max-width: 1200px;
    margin: 0 auto;
}
.content.content-breadcrumb{
    max-width: 1240px;
    margin: 0 auto;
    padding:0 20px;
}
@media screen and (max-width: 768px) {
  .content.content-breadcrumb{
      max-width: 100%;
      margin: 0 auto;
      padding:0 0;
  }
}

.title_ja {
    font-size: 30px;
    font-weight: bold;
    color: var(--color1);
    text-align: center;
}

.title_en {
    font-size: 18px;
    color: var(--color1);
    margin: 10px 0 50px;
    text-align: center;
}

/* ヘッダー */
header {
    background-color: var(--color1);
    padding: 20px;
    color: #fff;
    position:relative;
    min-width: auto;
}
@media screen and (max-width: 768px) {
  header {
    width:100%;
    position:fixed;
    top:0;
    z-index:10000;
  }
}

header .content {
    display: flex;
}

header .header-logo {
    width: 180px;
}

header .menu {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 0 auto;
}

header .menu li {
    margin-left: 30px;
}

header .menu li a {
    transition: .3s;
}
header .menu li:last-child a{
    display:inline-block;
    text-align: center;
    color: var(--color1);
    background-color: #fff;
    padding: 5px 30px;
}

header .menu li a:hover {
    opacity: .5;
}

.hamburger {
    display: none;
    z-index: 9999;
}

.hamburger span {
    width: 30px;
    height: 3px;
    background-color: #fff;
    position: relative;
    transition: ease .4s;
    display: block;
    border-radius: 50px;
}
  
.hamburger span:nth-child(1) {
    top: 0;
}
  
.hamburger span:nth-child(2) {
    margin: 8px 0;
}
  
.hamburger span:nth-child(3) {
    top: 0;
}

.header__nav.active {
    transform: translateX(0);
}
  
.hamburger.active span:nth-child(1) {
    top: 9px;
    transform: rotate(45deg);
    background-color: var(--color1);
}
  
.hamburger.active span:nth-child(2) {
    opacity: 0;
}
  
.hamburger.active span:nth-child(3) {
    top: -13px;
    transform: rotate(-45deg);
    background-color: var(--color1);
}

.header__nav {
    position:fixed;
    z-index: 999;
	top:0;
    right: -120%;
	width:100%;
    height: 100vh;
	background-color: #fff;
	transition: all 0.6s;
}

.header__nav.active{
    right: 0;
}

.header__nav .nav__items {
    font-size: var(--font2);
    color: var(--color1);
    text-align: center;
}

.header__nav .nav__items .nav-items__item:first-child {
    margin: 20px 20px 40px;
    width: 180px;
}

.header__nav .nav__items li {
    margin-bottom: 50px;
}

.header__nav .nav__items .nav-items__item:last-child a{
    text-align: center;
    color: #fff;
    background-color: var(--color1);
    padding: 5px 30px 10px;
    display: inline-block;
}

/* ヘッダーここまで */


/* メインビジュアル */
#main {
    background: url(../img/main_back_woman.jpg) no-repeat top -50px left;
    background-size: 120%;
}

#main .content {
    max-width: 1800px;
    padding: 100px 400px 100px 0;
}

#main .main-title-pc {
    max-width: 850px;
    padding-left: 20px;
    filter: drop-shadow(6px 6px 6px rgba(0, 0, 0, 0.1));
    margin:0 auto;
}

#main .main-title-sp {
    display: none;
    text-align: center;
    filter: drop-shadow(6px 6px 6px rgba(0, 0, 0, 0.1));
}

#main .main-title-pc img, #main .main-title-sp img {
    width: 770px;
}
@media screen and (max-width: 768px) {
  #main .main-title-pc img, #main .main-title-sp img {
    width: 100%;
  }
}
/* メインビジュアルここまで */


/* 新着求人 */
#new-job {
    padding: 100px 20px;
}

#ew-job .content {
    margin-bottom: 50px;
}

#new-job .content ul {
    display: flex;
    justify-content: space-between;
    margin-bottom: 30px;
    align-items: flex-end;
}

#new-job .content ul li span {
    color: var(--color1);
    margin-right: 10px;
    font-size: 22px;
    font-weight: 700;
}

#new-job .cont-flex {
    background-color: var(--color2);
    border-radius: 10px;
    padding: 30px;
    margin-bottom: 50px;
}

#new-job .cont-flex:last-child {
    margin-bottom: 0px;
}

#new-job .cont-flex .job-title {
    position: relative;
    font-size: var(--font2);
    font-weight: 500;
    line-height: 33px;
    text-align: left ;
    padding-left: 0;
}
#new-job .cont-flex .job-title p{
    position: relative;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.75;
    text-align: justify;
    padding-left: 0;
    margin-top: 2px;
}
@media screen and (max-width: 768px) {
  #new-job .cont-flex .job-title p{
    position: relative;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.75;
    text-align: justify;
    padding-left: 0;
    margin-top: 2px;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    max-height: 100px;
  }
}

/*#new-job .cont-flex .job-title::before {
    content: "正";
    position: absolute;
    top: 0;
    left: 0;
    color: #fff;
    padding: 0 7px 4px;
    background-color: var(--color1);
    border-radius: 2px;
}*/
#new-job .cont-flex .job-title span {
    display: inline-block;
    color: var(--color-White);
    font-size: 16px;
    line-height: 1.6;
    padding: 2px 12px;
    background-color: var(--color1);
    border-radius: 2px;
    margin-right: 0;
    margin-bottom: 8px;
}
#new-job .cont-flex .job-title span.正社員 {
    background-color: var(--color1);
}
#new-job .cont-flex .job-title span.契約社員 {
    background-color: #57B85A;
}
#new-job .cont-flex .job-title span.パート {
    background-color: #FF9252;
}
#new-job .cont-flex .job-title span.アルバイト {
    background-color: #7791D6;
}

#new-job .cont-flex .cont {
    display: flex;
    /* flex-wrap: wrap; */
    column-gap: 30px;
    row-gap: 30px;
    margin: 20px 0 50px;
    align-items: flex-start;
}

#new-job .cont-flex .cont .top-samune {
    width: 430px;
}

#new-job .cont-flex .cont .top-samune img {
    width: 100%;
    height: auto;
}

#new-job .cont-flex .cont table {
    width: 676px;
}

#new-job .cont-flex .cont tr {
    border: 1px solid var(--color5);
}

#new-job .cont-flex .cont tr td {
    padding: 10px 20px 10px;
    line-height:1.75;
}

#new-job .cont-flex .cont tr td:first-child {
    width:110px;
    background-color: var(--color1);
    color: #fff;
}

#new-job .cont-flex .cont tr td:last-child {
    width:auto;
    background: #fff;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    max-height: 90px;
    min-height:46px;
}
@media screen and (max-width: 768px) {
  #new-job .cont-flex .cont table {
      width: 100%;
      display: block;
  }
  #new-job .cont-flex .cont table tbody{
      width: 100%;
      display: block;
  }

  #new-job .cont-flex .cont tr {
      border: 1px solid var(--color5);
      width: 100%;
      display: block;
  }

  #new-job .cont-flex .cont tr td {
      width: 100%;
      display: block;
      padding: 10px 20px 10px;
      line-height:1.75;
  }

  #new-job .cont-flex .cont tr td:first-child {
      width: 100%;
      display: block;
      background-color: var(--color1);
      color: #fff;
  }

  #new-job .cont-flex .cont tr td:last-child {
    width: 100%;
    display: block;
    background: #fff;
    overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    max-height: 90px;
    min-height:46px;
  }
}

#new-job .cont-flex .button {
    display: flex;
    flex-wrap: wrap;
    column-gap: 30px;
    row-gap: 20px;
    justify-content: center;
}

#new-job .cont-flex .btn01 {
    background: #fff url(../img/btn_ya_R_blue.svg) no-repeat right 30px center;
    background-size: 6px;
    color: var(--color1);
    width: 300px;
    padding: 15px 0;
    text-align: center;
    border-radius: 25px;
    transition: .3s;
    border: 1px solid var(--color1);
    font-weight: 700;
}
#new-job .cont-flex .btn01:hover {
    opacity: .5;
}

#new-job .cont-flex .btn02 {
    background: var(--color1) url(../img/btn_ya_R_white.svg) no-repeat right 30px center;
    background-size: 6px;
    color: #fff;
    width: 300px;
    padding: 15px 0;
    text-align: center;
    border-radius: 25px;
    transition: .3s;
    border: 1px solid var(--color1);
    font-weight: 700;
}
#new-job .cont-flex .btn02:hover {
    opacity: .5;
}
/* おすすめの求人ここまで */


/* 電話 */
#tel {
    background: url(../img/tel_back_woman.jpg) no-repeat top -50px left;
    background-size: cover;
    padding: 0 20px;
}

#tel .text {
    display: inline-block;
    background-color: #fff;
    text-align: center;
    padding: 50px 100px;
    margin: 100px 0;
}

#tel .text .text-message {
    font-size: var(--font2);
}

#tel .text .text-number {
    font-size: var(--font1);
    margin: 15px 0 20px;
    font-weight:700;
}
#tel .text .text-number a {
    font-size: var(--font1);
}

#tel .text .txt {
    display: inline-block;
    background-color: var(--color1);
    color: #fff;
    padding: 10px 30px;
    border-radius: 50px;
}
/* 電話ここまで */


/* 会社概要 */
#com {
    background-color: var(--color2);
    padding: 100px 20px;
}
#com table{
    width:100%;
}

#com tr {
    border: 1px solid var(--color5);
}

#com tr td {
    padding: 20px;
    line-height:1.75;
}

#com tr td:first-child {
    background-color: var(--color1);
    color: #fff;
    width: 200px;
}

#com tr td:last-child {
    background: #fff;
    width: auto;
}
/* 会社概要ここまで */


/* 応募方法 */
#apply {
    margin: 100px 0;
    padding: 0 20px;
    text-align: center;
}

#apply .step-flex {
    display: flex;
    flex-wrap: wrap;
    column-gap: 30px;
    row-gap: 30px;
    justify-content: center;
}

#apply .content .step {
    position: relative;
    width: 380px;
}

#apply .content .step::after {
    content: "";
    position: absolute;
    right: -23px;
    top: 50%;
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 25px solid transparent;
    border-bottom: 25px solid transparent;
    border-left: 15px solid var(--color1);
    border-right: 0;
}

#apply .content .step:last-child::after {
    content: none;
}

#apply .content .step .step-ttl {
    font-size: var(--font2);
    text-align: left;
    font-weight: 700;
}

#apply .content .step .cont {
    text-align: center;
    margin-top: 20px;
    padding: 50px 30px;
    background-color: var(--color2);
    border-radius: 5px;
}

#apply .content .step .cont .cont-ttl {
    color: var(--color1);
    margin: 40px 0 10px;
    text-align: center;
    font-size: var(--font2);
    font-weight: 700;
}

#apply .content .step .cont p {
    text-align: justify;
    height: 70px;
    line-height: 1.75;
    padding-top:10px;
}

#apply .step .cont .icon1 { height: 180px; }
#apply .step .cont .icon1 img { height: 100%; }

#apply .step .cont .icon2 { height: 180px; }
#apply .step .cont .icon2 img { height: 100%; }

#apply .step .cont .icon3 { height: 180px; }
#apply .step .cont .icon3 img { height: 100%; }
/* 応募方法ここまで */


/* フッター */
footer {
    background-color: var(--color1);
    color: #fff;
    padding: 50px 20px 30px;
}

footer .content-logo {
    width: 260px;
}

footer .content-logo img {
    width: 100%;
}

footer p {
    text-align: center;
    margin-top: 30px;
    padding-top: 30px;
    border-top: 1px solid #fff;
    font-size:12px;
}
/* フッターここまで */


/* single */
#single-main {
    margin: 75px 0;
    padding: 0 20px;
}

#single-main .content .main-ttl {
    background-color: var(--color2);
    padding: 30px 30px 30px;
    border-radius: 10px 10px 0 0;
}
#single-main .content .main-text {
    position: relative;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.75;
    text-align: justify;
    padding-left: 0;
    margin-top: 2px;
}
@media screen and (max-width: 768px) {
  #single-main .content .main-text {
      position: relative;
      font-size: 20px;
      font-weight: 700;
      line-height: 1.75;
      text-align: justify;
      padding-left: 0;
      margin-top: 2px;
      /*overflow: hidden;
      display: -webkit-box;
      text-overflow: ellipsis;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 3;
      max-height: 100px;*/
  }
}
.o-item__type {
    display: inline-block;
    color: var(--color-White);
    font-size: 16px;
    line-height: 1.6;
    padding: 2px 12px;
    background-color: var(--color1);
    border-radius: 2px;
    margin-right: 9px;
    margin-bottom: 8px;
}
/*
@media screen and (max-width: 768px) {
  .o-item__type {
      display: inline-block;
      color: var(--color-White);
      font-size: 14px;
      line-height: 1.75;
      padding: 0 7px 4px;
      background-color: var(--color1);
      border-radius: 2px;
      margin-right:8px;
  }
}
*/
.o-item__type.正社員 {
    background-color: var(--color1);
}
.o-item__type.契約社員 {
    background-color: #57B85A;
}
.o-item__type.パート {
    background-color: #FF9252;
}
.o-item__type.アルバイト {
    background-color: #7791D6;
}

/*
#single-main .content .main-text::before {
    content: "正社員";
    position: absolute;
    top: 30px;
    left: 30px;
    color: #fff;
    font-weight: normal;
    padding: 3px 10px 7px;
    background-color: var(--color1);
    border-radius: 3px;
}
*/

#single-main .content .ravel {
    color: var(--color1);
    display: flex;
    flex-wrap: wrap;
    column-gap: 10px;
    row-gap: 8px;
    align-items: center;
    margin: 30px 0 50px;
}

#single-main .content .ravel li {
    padding: 7px 12px;
    border: 1px solid var(--color1);
    border-radius: 3px;
}

#single-main .content ul li:last-child {
    padding: 0;
    border: none;
    color: #000;
    margin: 0 0 0 auto;
}

#single-main .content .sub-text::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 5px;
    height: 100%;
    background-color: var(--color1);

}

#single-main .content .sub-text {
    position: relative;
    font-size: var(--font2);
    text-align: left;
    background-color: var(--color2);
    padding: 15px 30px;
    margin-bottom: 50px;
    font-weight: 700;
}
/*  */


/* 仕事内容紹介 */
#single-main .work1 {
    margin-bottom: 100px;
    text-align: center;
}

#single-main .work1 .cont-flex {
    display: flex;
    column-gap: 30px;
    margin-bottom: 50px ;
}
#single-main .work1 .cont-flex h4 {
    background: var(--color1);
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3em;
    color: #fff;
    padding: 10px 15px;
    margin: 0 0 10px;
    position: relative;
}
#single-main .work1 .cont-flex .wrapper {
    padding:0 0;
}
#single-main .work1 .cont-flex .title {
    margin: 15px 0;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.75;
    color: var(--color1);
}
#single-main .work1 .cont-flex .message {
    line-height: 2.0;
}

#single-main .work1 .cont-flex .single-samune {
    width: 550px;
}

#single-main .work1 .cont-flex .single-samune img {
    width: 100%;
}

#single-main .work1 .cont-flex li:last-child {
    text-align: justify;
    line-height: 28px;
    width: 615px;
}

#single-main .work1 .btn02 {
    display:inline-block;
    background: var(--color1) url(../img/btn_ya_R_white.svg) no-repeat right 30px center;
    background-size: 6px;
    color: #fff;
    width: 300px;
    padding: 15px 0;
    text-align: center;
    border-radius: 25px;
    transition: .3s;
    border: 1px solid var(--color1);
    font-weight: 700;
}
#single-main .work1 .btn02:hover {
    opacity: .5;
}
/* 仕事内容紹介ここまで */


/* 仕事の特徴 */
#single-main .work2 {
    margin-bottom: 70px;
}

#single-main .work2 .cont-flex {
    display: flex;
    flex-wrap: wrap;
    column-gap: 30px;
    row-gap: 20px;
}

#single-main .work2 .cont {
    width: 380px;
}
#single-main .work2 .cont figure {
    height:250px;
    overflow: hidden;
    position: relative;
}
#single-main .work2 .cont figure img{
    object-fit: cover;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

#single-main .work2 .cont p {
    line-height: 28px;
    text-align: justify;
    margin-top: 15px;
}
/* 仕事の特徴ここまで */

/* 募集要項 */
#single-main .work3 {
    margin-bottom: 100px;
    text-align: center;
}

#single-main .work3 table {
    width:100%;
    margin-bottom: 50px;
    text-align: left;
}

#single-main .work3 tr {
    border: 1px solid var(--color5);
    line-height: 26px;
}

#single-main .work3 tr td {
    padding: 20px 20px;
    line-height: 1.75;
}

#single-main .work3 tr td:first-child {
    background-color: var(--color1);
    color: #fff;
    width: 260px;
}

#single-main .work3 tr td:last-child {
    background: #fff;
    width: 1000px;
}

#single-main .work3 .btn02 {
    display:inline-block;
    background: var(--color1) url(../img/btn_ya_R_white.svg) no-repeat right 30px center;
    background-size: 6px;
    color: #fff;
    width: 300px;
    padding: 15px 0;
    text-align: center;
    border-radius: 25px;
    transition: .3s;
}
#single-main .work3 .btn02:hover {
    opacity: .5;
}
/* 募集要項ここまで */

/* おすすめ求人 */
#reco-slider {
    background-color: var(--color2);
    padding: 100px 20px;
}
.reco-slider-wrapper{
  
}
#reco-slider .slider-flex, .no-slider-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 20px 30px;
}

#reco-slider .slider-cont {
    width: 380px;
    background-color: #fff;
    border-radius: 10px;
    margin-left: 30px;
}

#reco-slider .slider-cont .slider-samune {
    width: 100%;
    padding: 0 0;
    height: 253px;
    display:flex;
    align-items: flex-start;
    overflow: hidden;
    position: relative;
    background:none;
    border-radius: 10px 10px 0 0;
}

#reco-slider .slider-cont .slider-samune img {
    width: 100%;
    height:100%;
    object-fit: cover;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

#reco-slider .slider-cont .slider-job-title {
    font-weight: 700;
    color: var(--color1);
    line-height: 28px;
    padding: 10px 20px 5px;
}

#reco-slider .slider-cont .slider-txt {
    padding: 0 20px 20px;
    line-height: 23px;
}

#reco-slider .slick-dots {
    display: none;
}
#reco-slider .slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 20px;
    height: 20px;
    padding: 0 0;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}
#reco-slider .slick-dots li button:before {
    font-family: 'slick';
    font-size: 15px;
    color: #b6babc;
    opacity:1.0;
}
#reco-slider .slick-dots li.slick-active button:before {
    color: var(--color1);
}

#reco-slider .slick-prev:before,#reco-slider .slick-next:before {
    content: "";
    position: absolute;
    width: 50px;
    height: 50px;
    opacity: 1;
    font-size:15px;
}

#reco-slider .slick-prev:before {
    background: url(../img/slider-btn-L.svg) no-repeat;
    left: -55px;
}

#reco-slider .slick-next:before {
    background: url(../img/slider-btn-R.svg) no-repeat;
    right: -55px;
}

#reco-slider .no-slider-flex {
    /*display: none;*/
}
@media screen and (min-width: 767.4px) {
  #reco-slider .slick-dots {
    display: block;
    position: absolute;
    bottom: -50px;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
  }
}
@media screen and (max-width: 767.5px) {
  #reco-slider .slider-cont .slider-samune {
    width: 100%;
    padding: 0 0;
    max-height: 13.6rem;
    height:auto;
    display:block;
    overflow: hidden;
    position: relative;
    background:none;
    border-radius: 1.0rem 1.0rem 0 0;
  }
  #reco-slider .slider-cont .slider-samune img {
    width: 100%;
    height:auto;
    object-fit:fill;
    width: 100%;
    height:100%;
    object-fit: cover;
    height: 100%;
    position: static;
    top: 50%;
    left: 50%;
    -webkit-transform:none;
    -ms-transform:none;
    transform:none;
  }
}

/*@media screen and (max-width: 1380.5px) {
  #reco-slider {
      background-color: var(--color2);
      padding: 7.24vw 1.44vw;
  }
  .reco-slider-wrapper{

  }
  #reco-slider .slider-flex, .no-slider-flex {
      display: flex;
      flex-wrap: wrap;
      gap: 1.44vw 2.17vw;
  }

  #reco-slider .slider-cont {
      width: 27.53vw;
      background-color: #fff;
      border-radius: 0.72vw;
      margin-left: 2.17vw;
  }

  #reco-slider .slider-cont .slider-samune img {
      width: 100%;
      border-radius: 0.72vw 0.72vw 0 0;
  }

  #reco-slider .slider-cont .slider-job-title {
      font-weight: 700;
      color: var(--color1);
      line-height: 2.02vw;
      padding: 0.72vw 1.44vw 0.36vw;
  }

  #reco-slider .slider-cont .slider-txt {
      padding: 0 1.44vw 1.44vw;
      line-height: 1.66vw;
  }

  #reco-slider .slick-dots {
      position: absolute;
      bottom: -3.62vw;
      display: block;
      width: 100%;
      padding: 0;
      margin: 0;
      list-style: none;
      text-align: center;
  }
  #reco-slider .slick-dots li button {
      font-size: 0;
      line-height: 0;
      display: block;
      width: 1.44vw;
      height: 1.44vw;
      padding: 0 0;
      cursor: pointer;
      color: transparent;
      border: 0;
      outline: none;
      background: transparent;
  }
  #reco-slider .slick-dots li button:before {
      font-family: 'slick';
      font-size: 1.08vw;
      color: #b6babc;
      opacity:1.0;
  }
  #reco-slider .slick-dots li.slick-active button:before {
      color: var(--color1);
  }

  #reco-slider .slick-prev:before,#reco-slider .slick-next:before {
      content: "";
      position: absolute;
      width: 3.62vw;
      height: 3.62vw;
      opacity: 1;
      font-size:1.08vw;
  }

  #reco-slider .slick-prev:before {
      background: url(../img/slider-btn-L.svg) no-repeat;
      left: -3.98vw;
  }

  #reco-slider .slick-next:before {
      background: url(../img/slider-btn-R.svg) no-repeat;
      right: -3.98vw;
  }

  #reco-slider .no-slider-flex {
      
  }
}*/
/* おすすめ求人ここまで */


/* 求人詳細　応募方法 */
#apply .btn02 {
    margin-top: 50px;
    background: var(--color1) url(../img/btn_ya_R_white.svg) no-repeat right 30px center;
    background-size: 6px;
    color: #fff;
    width: 300px;
    padding: 15px 0;
    text-align: center;
    border-radius: 25px;
    transition: .3s;
}
#apply .btn02:hover {
    opacity: .5;
}
/* 求人詳細　応募方法ここまで */



/* スマホ */
@media screen and (max-width: 768px) {
    .title_ja { font-size: 24px; }    
    .title_en { font-size: 16px; margin: 10px 0 30px; }


    /* ヘッダー */
    header .menu { display: none; }
    .hamburger { display: block; margin: 0 0 0 auto; }
    
    /* ヘッダーここまで */


    /* メインビジュアル */
    #main {
        background: url(../img/main_back_woman.jpg) no-repeat right -150px top;
        background-size: cover;
    }
    #main .content { padding: 200px 20px 50px; }
    #main .main-title-pc { display: none; }
    #main .main-title-sp { display: block; }
    /* メインビジュアルここまで */


    /* 新着求人 */
    #new-job { padding: 50px 20px; }
    #new-job .content ul { font-size: 12px; margin-bottom: 10px; }
    #new-job .cont-flex { padding: 20px; margin-bottom: 30px; }
    #new-job .cont-flex .cont { flex-wrap: wrap; row-gap: 20px; margin: 20px 0; }
    #new-job .cont-flex .job-title { font-size: 16px; line-height: 28px; padding-left: 0;}
    #new-job .cont-flex .job-title::before { padding-bottom: 3px; }
    #new-job .cont-flex .cont .top-samune { width: 100%; }
    #new-job .cont-flex .cont tr td { padding: 10px 10px; }
    #new-job .cont-flex .btn01 { width: 100%; }
    #new-job .cont-flex .btn02 { width: 100%; }
    /* 新着求人ここまで */


    /* 電話 */
    #tel { background: url(../img/tel_back_woman_sp.jpg) no-repeat top right -100px; }    
    #tel .text { width: 100%; padding: 20px 0; margin: 240px 0 50px;}
    #tel .text .text-number { font-size: 28px; margin: 5px 0 10px; }
    #tel .text .text-number a { font-size: 28px; margin: 5px 0 10px; }
    #tel .text .text-message { font-size: 16px; }
    #tel .text .txt { background-color: 15px; padding: 5px 20px; }
    /* 電話ここまで */


    /* 会社概要 */
    #com { padding: 50px 20px; }
    #com tr td { padding: 10px ; }
    #com tr td:first-child {
        width: 110px;
    }
    #com tr td:last-child {
        width: auto;
    }
    /* 会社概要ここまで */


    /* 応募方法 */
    #apply { margin: 50px 0; }
    #apply .content .step::after { content: none; }
    /* 応募方法ここまで */


    /* フッター */
    footer { padding: 40px 20px 30px; }   
    footer .content-logo { margin: 0 auto; width: 200px; }    
    footer p {
        text-align: center;
        margin-top: 30px;
        padding-top: 15px;
        font-size: 9px;
    }
    /* フッターここまで */


    /* single */
    #single-main { margin: 50px 0; }
    #single-main .content .main-ttl {
        background-color: var(--color2);
        padding: 20px 20px;
    }
    #single-main .content .main-text {
        font-size: 18px;
    }
    .o-item__type {
        font-size: 14px;
    }
    /*
    #single-main .content .main-text::before {
        top: 20px;
        left: 20px;
        padding: 5px 10px;
    }
    */
    #single-main .content .ravel { margin: 20px 0 20px; }    
    #single-main .content .ravel li {
        padding: 5px 10px 6px;
        font-size: 14px;
    }    
    #single-main .content ul li:last-child {
        padding: 0;
        border: none;
        color: #000;
        margin: 0 0 0 auto;
    }
    
    #single-main .content .sub-text { 
        font-size: 18px;
        padding: 10px 20px;
        margin-bottom: 20px;
    }


    /* 仕事内容紹介 */
    #single-main .work1 { margin-bottom: 50px; }   
    #single-main .work1 .cont-flex {
        flex-wrap: wrap; 
        row-gap: 20px; 
        margin-bottom: 20px;
    }
    #single-main .work1 .cont-flex .single-samune { width: 100%; }
    #single-main .work1 .cont-flex .wrapper {
        padding: 0 0;
    }
    #single-main .work1 .cont-flex li:last-child {  width: 100%; }   
    #single-main .work1 .btn02 { width: 100%; }
    /* 仕事内容紹介ここまで */


    /* 仕事の特徴 */
    #single-main .work2 { margin-bottom: 50px; }
    #single-main .work2 .cont { width: 100%; }
    #single-main .work2 .cont-flex {
      display: block;
    }
    #single-main .work2 .cont figure {
        display:block;
        margin:30px auto 0;
        height:54.66vw;
        overflow: hidden;
        position: relative;
    }
    #single-main .work2 .cont figure img{
        object-fit: cover;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
    #single-main .work2 .cont img { width: 100%; }
    #single-main .work2 .cont p { margin-top: 10px; }
    /* 仕事の特徴ここまで */


    /* 募集要項 */
    #single-main .work3 { margin-bottom: 50px; }
    #single-main .work3 table { width:100%; margin-bottom: 20px; }
    #single-main .work3 table tbody{
      width:100%;
      display:block;
    }
    #single-main .work3 table tbody tr{
      width:100%;
      display:block;
    }
    #single-main .work3 tr td {
      width:100%;
      display:block;
      padding: 10px;
    }
    #single-main .work3 tr td:first-child {
      width:100%;
      display:block;
    }
    #single-main .work3 tr td:last-child {
      width:100%;
      display:block;
    }
    #single-main .work3 .btn02 { width: 100%; }
    /* 募集要項ここまで */


    /* おすすめ求人 */
    #reco-slider { padding: 50px 20px; }
    /*#reco-slider .slider-flex { display: none; }*/
    #reco-slider .slider-cont .slider-job-title { padding: 10px 20px 5px; }    
    #reco-slider .slider-cont .slider-txt { padding: 0 20px 20px; }
    #reco-slider .no-slider-flex { /*display: flex;*/ }
    #reco-slider .slider-cont { width: 100%; margin-left: 0;border-radius: 2.0rem 2.0rem 0 0; }
    #reco-slider .slider-cont:nth-of-type(n+4) { display:none; }
    /* おすすめ求人ここまで */


    /* 求人詳細　応募方法 */
    #apply .btn02 { margin-top: 20px; width: 100%; }
    /* 求人詳細　応募方法ここまで */
}

.page_top {
  position: fixed;
  right: 60px;
  bottom: 40px;
  z-index: 600;
  opacity: 1.0;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page_top {
    position: fixed;
    right: 3.0vw;
    bottom: 6.0vw;
    z-index: 600;
    opacity: 1.0;
    text-align: center;
  }
}

main{
  
}
@media screen and (max-width: 768px) {
  main {
    padding-top:69px;
  }
}

.slider-job-cat{
  padding: 20px 20px 0;
  position: relative;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  text-align: justify;
}
.slider-job-cat span {
  display: inline-block;
  color: #fff;
  padding: 2px 7px;
  background-color: var(--color1);
  border-radius: 2px;
}
.slider-job-cat span.正社員 {
  background-color: var(--color1);
}
.slider-job-cat span.契約社員 {
  background-color: #57B85A;
}
.slider-job-cat span.パート {
  background-color: #FF9252;
}
.slider-job-cat span.アルバイト {
  background-color: #7791D6;
}
@media screen and (max-width: 768px) {
  .slider-job-cat{
    padding: 20px 20px 0;
  }
}

.l-contact00-title {
  font-size: 30px;
  font-weight: bold;
  color: var(--color1);
  text-align: center;
  padding-top:27px;
  display:none;
}
.contact-block .l-contact00-title {
  display:block;
}
.l-contact00-title_en {
  font-size: 18px;
  color: var(--color1);
  margin: 10px 0 50px;
  text-align: center;
  display:none;
}
.contact-block .l-contact00-title_en {
  display:block;
}
.l-page-contact p{
  padding-bottom:0;
  text-align: left;
  
  font-size:16px;
  font-weight:400;
  line-height:1.75;
  letter-spacing: 0em;
  display:none;
}
.contact-block .l-page-contact p {
  display:block;
}
.contact-block + .c-container > .wp-block-heading{
  display:none;
}
.contact-block + .c-container > p{
  display:none;
}
.smf-progress-tracker__item__number {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--color5);
  color: #fff;
  width: 30px;
  height: 30px;
  border-radius: 50%;
}
[data-screen=input] .smf-progress-tracker__item--input .smf-progress-tracker__item__number {
  background-color: var(--color1);
}
.smf-form--business .smf-item__col--label{
  background-color: var(--color1);
  color:#FFFFFF;
}
.smf-item__label__text strong {
  font-size: 10px;
  color: #fff;
  background-color: var(--color3);
  padding: 2px 4px;
  margin-left: 10px;
}
.smf-item__controls{
  
}
.smf-placeholder{
  display:block;
  vertical-align: middle;
}
.smf-placeholder[data-name="age"] {
  display: inline-block;
}
.smf-item__controls__text{
  display:inline-block;
  vertical-align: middle;
  padding-left:3px;
}
.smf-text-control {
  max-width: 830px;
  width:100%;
  display:inline-block;
  vertical-align: middle;
}
.smf-form .smf-item .smf-text-control__control{
  max-width: 830px;
  width:100%;
  display:inline-block;
  vertical-align: middle;
}
.smf-form .smf-item .smf-text-control__control.sizeS{
  width:100px;
}
.smf-form .smf-item .smf-textarea-control__control{
  max-width: 830px;
  width:100%;
  display:inline-block;
  vertical-align: middle;
}
.wp-block-heading {
  margin-top: 20px;
  text-align: left;
  
  font-size:16px;
  font-weight:500;
  line-height:1.75;
  letter-spacing: 0em;
}
.smf-item__col .smf-item__controls .wp-block-heading:first-child {
  margin-top: 0;
}
.smf-item__controls p{
  text-align: left;
  
  font-size:16px;
  font-weight:400;
  line-height:1.75;
  letter-spacing: 0em;
}
.smf-item__controls ol {
  list-style: decimal;
  padding-left: 50px;
}
.smf-item__controls ol li{
  text-align: left;
  
  font-size:16px;
  font-weight:400;
  line-height:1.75;
  letter-spacing: 0em;
}
.snow-monkey-form button.smf-button-control__control{
  position: relative;
  background-color: none;
  background-image: none;
  height: auto;
  border: none;
  font-weight: 500;
  display: inline-block;
  cursor: pointer;
  font-size: 16px;
  background: var(--color1) url(../img/btn_ya_R_white.svg) no-repeat right 30px center;
  background-size: 6px;
  color: #fff;
  width: 300px;
  padding: 15px 0;
  text-align: center;
  border-radius: 25px;
  transition: .3s;
}
.smf-form--business+.smf-action {
  margin: 50px auto 100px;
  text-align: center;
}
[data-screen=back] .smf-progress-tracker__item--input .smf-progress-tracker__item__number, [data-screen=complete] .smf-progress-tracker__item--complete .smf-progress-tracker__item__number, [data-screen=confirm] .smf-progress-tracker__item--confirm .smf-progress-tracker__item__number, [data-screen=input] .smf-progress-tracker__item--input .smf-progress-tracker__item__number, [data-screen=invalid] .smf-progress-tracker__item--input .smf-progress-tracker__item__number{
  background-color: var(--color1);
  font-weight: 700;
}
.smf-form .smf-item .smf-radio-button-control {
  align-items: center;
  align-items: flex-start;
  display: inline-flex;
  padding-bottom: 10px;
}
.smf-form .smf-item .smf-radio-button-control__control {
  flex: none;
  margin-right: 10px;
  margin-top: 0;
}
.smf-complete-content{
  padding-top:35px;
}
.smf-complete-content p{
  text-align: center;
  
  font-size:16px;
  font-weight:400;
  line-height:2.0;
  letter-spacing: 0em;
}
.smf-complete-content p a{
  text-decoration: none !important;
  background: var(--color1) url(../img/btn_ya_R_white.svg) no-repeat right 30px center;
  background-size: 6px;
  color: #fff !important;
  width: 300px;
  padding: 10px 0;
  text-align: center;
  border-radius: 25px;
  transition: .3s;
  border: 1px solid var(--color1);
  font-weight: 700;
  text-decoration: none;
  display: inline-block;
  margin: 40px auto 0;
}
.smf-action .smf-button-control{
  display:inline-block;
}


@media screen and (max-width: 768px) {
  .l-contact00-title {
    font-size: 24px;
    font-weight: bold;
    color: var(--color1);
    text-align: center;
    padding-top: 0;
  }
  .l-contact00-title_en {
    font-size: 16px;
    margin: 10px 0 30px;
  }
  .smf-form--business .smf-item *{
    box-sizing: border-box;
  }
  .smf-form .smf-item .smf-text-control__control {
    width: 100%;
    display: block;
    vertical-align: middle;
  }
  .smf-form .smf-item .smf-textarea-control__control {
    width: 100%;
    display: block;
    vertical-align: middle;
  }
  .smf-placeholder{
    display: block;
  }
  .smf-placeholder[data-name="age"]{
     display: inline-block;
  }
  .smf-text-control{
    display: block;
  }
  .wp-container-core-group-is-layout-1.wp-container-core-group-is-layout-1 {
    flex-wrap: wrap;
  }
  .smf-form .smf-item .smf-select-control__control{
    padding: 10px 20px 10px 10px;
  }
  .smf-action .smf-button-control+.smf-button-control {
    margin-left: 0;
    margin-top:30px;
  }
  .smf-action .smf-button-control{
    display:block;
  }
}

.error-message{
  text-align: center;
  color:#333333;
  
  font-size:16px;
  font-weight:400;
  line-height:2.0;
  letter-spacing: 0em;
}
.single-bottom{
  margin-bottom: 100px;
  text-align: center;
}
.single-bottom .btn02{
  display: inline-block;
  background: var(--color1) url(../img/btn_ya_R_white.svg) no-repeat right 30px center;
  background-size: 6px;
  color: #fff;
  width: 300px;
  padding: 15px 0;
  text-align: center;
  border-radius: 25px;
  transition: .3s;
}
@media screen and (max-width: 768px) {
  .error-message{
    text-align: center;
    color:#333333;

    font-size:16px;
    font-weight:400;
    line-height:2.0;
    letter-spacing: 0em;
  }
  .single-bottom{
    margin-bottom: 50px;
  }
  .single-bottom .btn02{
    display: inline-block;
    background: var(--color1) url(../img/btn_ya_R_white.svg) no-repeat right 30px center;
    background-size: 6px;
    color: #fff;
    width: 300px;
    padding: 15px 0;
    text-align: center;
    border-radius: 25px;
    transition: .3s;
  }
}

.c-container {
  min-width: auto;
}
@media screen and (max-width: 768px) {
  .c-container {
    min-width: auto;
  }
}

.post-password-form{
  
}
.post-password-form p{
  line-height:1.75;
}
.post-password-form p input[type="submit"]{
  -webkit-appearance: auto;
  appearance: auto; 
  vertical-align: middle; 
  color: inherit; 
  font: inherit; 
  border: 1px solid #7b7b7b; 
  background: rgba(240,240,240,1.0); 
  padding: 0 6px; 
  margin: 2px 0; 
  outline:0; 
  border-radius:3px; 
  text-align: inherit;
  font-size:13px;
  color:#000000;
}

@media screen and (max-width: 768px) {
  
}



@media screen and (max-width: 768px) {
  
}








@media screen and (min-width: 768.5px) {
  .pc-only{
    display:block;
  }
  .sp-only{
    display:none;
  }
}
@media screen and (max-width: 768px) {
  .pc-only{
    display:none;
  }
  .sp-only{
    display:block;
  }
}



