@charset "UTF-8";
/* *************** 背景色展開 ******************** */
.bg-color-blue {
  background-color: #729dd8;
}

.bg-color-light-blue {
  background-color: #8eb1e0;
}

.bg-color-light-blue2 {
  background-color: #3d6daf;
}

.bg-color-emerald {
  background-color: #79d0e3;
}

.bg-color-light-emerald {
  background-color: #94d9e9;
}

.bg-color-green {
  background-color: #72d891;
}

.bg-color-light-green {
  background-color: #8ee0a7;
}

.bg-color-yellow {
  background-color: #eae85d;
}

.bg-color-light-yellow {
  background-color: #eeed7d;
}

.bg-color-purple {
  background-color: #b984e0;
}

.bg-color-light-purple {
  background-color: #c79de6;
}

.img-square {
  -webkit-background-size: cover;
  background-size: cover;
}

.hoverOpc {
  transition: opacity .5s;
  opacity: 1;
  display: block;
  color: inherit;
}

.hoverOpc:hover {
  color: inherit;
  opacity: 0.75;
  text-decoration: none;
}

.hoverOpc:hover:after {
  content: none;
}

/* *************** リンク矢印の位置調整 ******************** */
a .m-card.card-picture .picture-img:after {
  right: 1px;
  bottom: 1px;
  border-right-color: #fff;
}

/* *************** アコーディオン調整 ******************** */
.m-box {
  padding: 0 20px;
}

.m-box .m-box.icon_accordion {
  padding: 20px;
  margin-bottom: 30px;
}

.m-box .m-box.icon_accordion li.ac-btn {
  padding: 20px 80px 20px 40px;
  border-bottom: none;
  position: relative;
}

.m-box .m-box.icon_accordion li.ac-btn i {
  top: 0;
  bottom: 0;
  margin: auto;
  height: 60px;
  width: 60px;
}

.m-box .m-box.icon_accordion li.ac-btn i:before {
  text-align: center;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 1em;
  height: 1em;
}

.m-box .m-box.icon_accordion li.ac-inner {
  position: relative;
  margin-top: 20px;
  border-top: 1px solid #e6e9ec;
  padding-left: 40px;
}

.m-box .m-box.icon_accordion .ac-q {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 1em;
  height: 1em;
  line-height: 1;
  font-size: 3rem;
  font-weight: bold;
  color: #ff2c1e;
}

.m-box .m-box.icon_accordion .ac-a {
  position: absolute;
  top: 30px;
  left: 0;
  margin: auto;
  width: 1em;
  height: 1em;
  line-height: 1;
  font-size: 3rem;
  font-weight: bold;
  color: #0c489b;
}

@media only screen and (max-width: 767px) {
  .m-box .m-box.icon_accordion {
    padding: 10px;
  }
    .m-box .m-box.icon_accordion li.ac-inner {
        font-size:115%;
    }
}

/* *************** タブレット時非表示 ******************** */
@media only screen and (max-width: 1000px) {
  .tb-dn {
    display: none;
  }
}

@media only screen and (max-width: 1000px) {
  .tb-db {
    display: block;
  }
}

/* *************** テキスト天地中央 ******************** */
.vertical-middle {
  position: absolute;
  top: 50%;
  left: 50px;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media only screen and (max-width: 767px) {
  .vertical-middle {
    left: 25px;
  }
}

/* *************** タイトル ******************** */
.ttl_faq {
  font-size: 1.8rem;
  font-family: "Roboto Condensed";
  margin-bottom: 24px;
}

@media only screen and (max-width: 1024px) {
  .ttl_faq {
    font-size: 1.6rem;
    margin-bottom: 0;
  }
}

@media only screen and (max-width: 768px) {
  .ttl_faq {
    font-size: 1.8rem;
    margin-bottom: 24px;
  }
}

.ttl_faq span {
  font-size: 3rem;
}

.ttl_faq_02 {
  position: absolute;
  top: 50%;
  left: 50%;
  font-family: "Roboto Condensed";
  font-size: 6rem;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.ttl_faq_02 span {
  position: relative;
  top: -15px;
  display: block;
}

/* *************** .cross-boxの中の箱 ******************** */
a .m-card.card-picture:after {
  border-right-color: #fff;
  right: 1px;
  bottom: 1px;
}

.m-card.card-picture.cross-box a .picture-inner:after {
  content: '';
  display: block;
  height: 0;
  width: 0;
  border: 20px solid transparent;
  border-right-color: #fff;
  border-bottom: none;
  bottom: 0;
  right: 0;
  position: absolute;
}

.m-card.card-picture.cross-box .picture-inner {
  top: 50%;
  left: 50%;
  right: auto;
  width: 88%;
  height: 88%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.m-card.card-picture .picture-inner.ttl_faq_02 {
  top: 50%;
  left: 50%;
  right: auto;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

/* *************** .cross-boxの十字架 ******************** */
.cross-box {
  /* *************** .cross-boxテキスト上下左右中央 ******************** */
}

.cross-box:before, .cross-box:after {
  content: '';
  position: absolute;
  display: inline-block;
  width: 100%;
  height: 2px;
  background-color: rgba(255, 255, 255, 0.2);
  z-index: 6;
}

.cross-box:before {
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}

.cross-box:after {
  top: 49%;
  left: -0.5%;
  width: 101%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
  transform-origin: center center;
}

.cross-box .cross-box-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

/* *************** クエスチョンボックス ******************** */
.m-card.card-picture .picture-inner.ttl_faq_02 {
  top: 50%;
  left: 50%;
  right: auto;
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.tel-separate {
  display: inline-block;
  margin-right: 26px;
  padding-right: 25px;
  border-right: solid 1px #878787;
  padding-top: 10px;
  padding-bottom: 10px;
}

/*************************************************
	教育制度
*************************************************/
.Education-system {
  /* *************** .cross-boxの十字架（くるみんのとこ） ******************** */
}

.Education-system .img-education.img-wide2 {
  -webkit-background-size: cover;
  background-size: cover;
  padding-top: 49.9%;
}

.Education-system .cross-box.kurumin:before, .Education-system .cross-box.kurumin:after {
  display: none;
}

.Education-system .cross-box.kurumin .picture-img:before, .Education-system .cross-box.kurumin .picture-img:after {
  content: '';
  position: absolute;
  display: inline-block;
  width: 100%;
  height: 2px;
  background-color: rgba(255, 255, 255, 0.2);
  z-index: 6;
}

.Education-system .cross-box.kurumin .picture-img:before {
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
}

.Education-system .cross-box.kurumin .picture-img:after {
  top: 49%;
  left: -0.5%;
  width: 101%;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-transform: rotate(90deg);
  -moz-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  transform: rotate(90deg);
  transform-origin: center center;
}

.Education-system .cross-box.kurumin .cross-box-inner {
  z-index: 6;
}

/* *************** 福利厚生・研修 ******************** */
.small_caution {
  border-left: solid 4px #72d891;
  padding-left: 15px;
  font-weight: bold;
}

.row_wrp_980 {
  max-width: 980px;
  width: 100%;
  margin: 0 auto;
}

.table {
  display: table;
}

.table-cell {
  display: table-cell;
  vertical-align: middle;
}

.nav_recruit {
  max-width: 980px;
  width: 100%;
  margin: 70px auto;
}

.nav_recruit a {
  width: 100%;
  padding: 30px 0;
  font-weight: bold;
  background-color: #72d891;
}

@media only screen and (max-width: 767px) {
  .nav_recruit {
    margin: 35px auto;
  }
}

.recSlider {
  margin-bottom: 0;
}

.img-wide4 {
  padding-top: 50%;
}

.hoverIn {
  transform: translateX(100%);
  transition: transform .25s;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  padding: 25px;
}

.hoverOut {
  transform: translateX(0);
  transition: transform .25s;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  padding: 25px;
}

a:hover .hoverIn {
  transform: translateX(0%);
}

a:hover .hoverOut {
  transform: translateX(-100%);
}

@media only screen and (max-width: 1100px) {
  .hoverIn, .hoverOut {
    font-size: 80%;
  }
}

@media only screen and (max-width: 1000px) {
  .hoverIn {
    font-size: 180%;
    transform: translateX(0%);
  }
  .hoverOut {
    font-size: 180%;
    transform: translateX(-100%);
  }
}

.m-card.card-picture .picture-inner.text {
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  transform: translateY(-50%);
}

.recSlider-text {
  position: relative;
}

.recSlider-text .label {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  transform: translateY(-50%);
  text-align: center;
  color: white;
  font-size: 2.0rem;
  font-weight: bold;
  font-family: "Noto Sans Japanese";
}

.Interview .picture-img span {
  position: absolute;
  bottom: 0;
  left: 0;
  color: white;
  background: #79d0e3;
  line-height: 1;
  font-size: 1.4rem;
  padding: 10px 20px;
  width: 100%;
  display: block;
}

.Interview .picture-img span:after {
  content: '';
  display: block;
  height: 0;
  width: 0;
  border: 14px solid transparent;
  border-right-color: #fff;
  border-bottom: none;
  bottom: 4px;
  right: 4px;
  position: absolute;
}

@media only screen and (max-width: 1000px) {
  .tb_f30 {
    font-size: 3rem !important;
  }
}

@media only screen and (max-width: 767px) {
  .sp_f14 {
    font-size: 1.4rem !important;
  }
  .sp_f20 {
    font-size: 2.0rem !important;
  }
  #fresh_faq {
    float: right;
  }
}
