@charset "utf-8";

/* default PC */
/* animation */
.animation {
  opacity:0;
  position:relative;
  top:40px;
  transition:.3s;
}

.animation.active {
  opacity:1;
  top:0;
  transition:.3s;
}

/* main-view */
.main-view,
.splide__track {
  height:80svh;
}

#splide01-slide01,
#splide01-slide02,
#splide01-slide03 {
  position:relative;
}

#splide01-slide01::before,
#splide01-slide02::before,
#splide01-slide03::before {
  background-position:center;
  background-repeat:no-repeat;
  background-size:cover;
  content:"";
  display:block;
  height:100%;
  width:100%;
}

#splide01-slide01::before {
  background-image:url(../image/contents/home/index_slider_01.jpg);
}

#splide01-slide02::before {
  background-image:url(../image/contents/home/index_slider_02.jpg);
}

#splide01-slide03::before {
  background-image:url(../image/contents/home/index_slider_03.jpg);
}

/* contents */
#contents {
  margin-top:99px;
}

.top {
  bottom:180px;
  position:relative;
}

.mobile-view #contents {
  margin-top:190px;
}

.job-new-area .link-btn,
.column-area .link-btn,
.news-area .link-btn {
  padding:16px;
}

/* about */
#contents .about-area .sub-txt {
  font-size:27px;
  font-weight:bold;
  letter-spacing:.1em;
  margin:auto auto 15px;
  max-width:410px;
  position:relative;
}

.about-area {
  background:url(../image/contents/home/main_bg.jpg);
  background-size:100%;
  padding:45px 0 0;
  position:relative;
  z-index:1;
}

.about-area:before {
  background-color:#FFF;
  bottom:0;
  content:"";
  display:block;
  height:50%;
  left:0;
  position:absolute;
  width:100%;
  z-index:-1;
}

#contents .about-area h2 {
  color:#FF9728;
  font-size:42px;
  font-weight:bold;
  letter-spacing:.18em;
  line-height:1.5em;
  margin:55px auto 85px;
}

#contents .about-area h2 .txt-green {
  font-size:53px;
}

#contents .about-area h2 .small-txt {
  font-size:33px;
}

#contents .about-area .job-search-box {
  background-color:#FFF;
  margin-bottom:55px;
}

#contents .about-area h3 {
  border:0;
  font-size:36px;
  text-align:center;
}

.about-area .about-item {
  background-image:url(../image/contents/home/bg_about_text.svg);
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  box-sizing:border-box;
  display:flex;
  height:268px;
  justify-content:center;
  margin:auto auto 20px;
  position:relative;
  width:852px;
}

.about-area .about-item .sub-txt {
  font-size:33px;
}

.about-deco {
  left:0;
  margin:auto;
  max-width:1200px;
  position:absolute;
  right:0;
  top:0;
}

.about-deco .deco-item01,
.about-deco .deco-item02 {
  height:max-content;
  left:-70px;
  position:absolute;
  top:80px;
  width:max-content;
}

.about-deco .deco-item02 {
  left:auto;
  right:-70px;
}

.about-area .sub-txt:before {
  background-color:#333;
  content:"";
  display:inline-block;
  height:3px;
  left:0;
  position:absolute;
  top:50%;
  transform:rotate(60deg);
  width:25px;
}

.about-area .sub-txt:after {
  background-color:#333;
  content:"";
  display:inline-block;
  height:3px;
  position:absolute;
  right:0;
  top:50%;
  transform:rotate(-60deg);
  width:25px;
}

#contents .job-bnr-box .inner {
  max-width:1510px;
}

#contents .about-area .job-bnr-box h3 {
  color:#27BEAF;
}

.job-bnr-box .flex .link-bnr {
  background-color:#FFF4E8;
  border-radius:8px;
  padding:45px 15px;
  text-align:center;
}

#contents .job-bnr-box .link-bnr {
  cursor:pointer;
  position:relative;
}

#contents .job-bnr-box .flex {
  display:grid;
  gap:20px;
  grid-template-columns:1fr 1fr 1fr;
  margin:0 auto;
  max-width:1200px;
}

#contents .job-bnr-box .link-bnr.new-open::before {
  left:20px;
}

#contents .job-bnr-box .link-bnr::before {
  background-image:url(../image/contents/home/new-open-icon.svg);
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  content:"";
  display:block;
  height:55px;
  margin:0 auto 15px;
  position:relative;
  width:95px;
}

#contents .job-bnr-box .link-bnr .link-txt {
  color:#333;
  font-size:22px;
  font-weight:500;
  letter-spacing:.1em;
  text-align:center;
}

#contents .job-bnr-box .link-bnr.area::before {
  background-image:url(../image/contents/home/area-icon.svg);
  height:60px;
  width:60px;
}

#contents .job-bnr-box .link-bnr.type::before {
  background-image:url(../image/contents/home/type-icon.svg);
  height:60px;
  width:46px;
}

#contents .job-bnr-box .link-bnr.facility::before {
  background-image:url(../image/contents/home/facility-icon.svg);
  height:54px;
  width:60px;
}

#contents .job-bnr-box .link-bnr.skill::before {
  background-image:url(../image/contents/home/skill-icon.svg);
  height:54px;
  width:51px;
}

#contents .attention-area {
  background-image:url(../image/contents/home/attention_area_bg.png);
  background-repeat:repeat;
  padding:50px 0;
}

#contents .attention-area h2 {
  color:#FFF;
}

#contents .attention-area .inner {
  max-width:1510px;
}

#contents .attention-area .bnr-box .loyal-wam-town-bnr {
  height:100%;
  margin-right:0;
  transition:.3s;
  width:64.5%;
}

#contents .attention-area .bnr-box .loyal-wam-town-bnr:hover {
  opacity:.5;
  text-decoration:none;
  transition:.3s;
}

#contents .attention-area .bnr-box .loyal-wam-town-bnr img {
  border-radius:10px;
}

#contents .attention-area .bnr-box .img-2box {
  width:45.5%;
}

#contents .attention-area .bnr-box .img-2box img {
  border-radius:5px 0 0 5px;
}

#contents .attention-area .bnr-box .img-2box-txt {
  width:54.5%;
}

#contents .attention-area .bnr-box .manager-bnr {
  background-color:#FF9728;
  border:5px solid #FF9728;
  border-radius:8px;
  margin:0 0 0 40px;
  transition:.3s;
  width:calc(35.5% - 40px);
}

#contents .attention-area .bnr-box .manager-bnr:hover {
  opacity:.5;
  text-decoration:none;
  transition:.3s;
}

#contents .attention-area .bnr-box .manager-bnr .img-2box-txt {
  align-items:center;
  background-color:#FF9728;
  display:flex;
  margin:0;
  padding-left:40px;
}

#contents .attention-area .bnr-box .manager-bnr .bnr-ttl {
  background-color:transparent;
  color:#FFF;
  font-size:28px;
  margin-bottom:0;
  padding:0;
  text-align:left;
}

#contents .job-new-area {
  background-color:#EDFBF8;
  padding:60px 0;
}

#contents .job-new-area .inner {
  max-width:1750px;
}

#contents .job-new-area .new-job-search {
  background-color:#FFF;
  margin:auto auto 30px;
  max-width:100%;
  padding-top:45px;
}

#contents .job-new-area .new-job-search h2 {
  font-size:28px;
}

#contents .job-new-area .recruit-list .link-bnr {
  background-color:#FFF;
}

#contents .news-area {
  background-color:#EDFBF8;
  padding:60px 0;
}

#contents .news-area .news-contents {
  background-color:transparent;
  margin-top:0;
  padding-bottom:0;
}

#contents .news-area .item-box {
  align-items:center;
  display:grid;
  gap:85px;
  grid-template-columns:30% calc(70% - 85px);
}

#contents .news-area .news-sp-img {
  display:none;
}

#contents .news-area .item-box .news-box {
  background-color:#FFF;
  border-radius:50px;
  padding:70px;
  position:relative;
}

#contents .news-area .item-box .link-btn {
  max-width:360px;
}

#contents .news-area .item-box .link-btn.pc-btn {
  display:block;
}

#contents .news-area .item-box .link-btn.sp-btn {
  display:none;
}

#contents .news-area .sp-btn {
  display:none;
}

.home #contents .column-area .column-group a.column-link .photo {
  height:235px;
}

#contents .column-area {
  margin-bottom:0;
  padding:60px 0;
}

#contents .column-area .column-group .ttl {
  margin-bottom:15px;
  padding:25px 30px 0;
}

#contents .column-area .inner {
  max-width:1765px;
}

#contents .link-area {
  padding:60px 0 70px;
}

#contents .link-area .inner {
  max-width:1750px;
}

#contents .link-area .bnr {
  align-items:center;
  background-color:#FF9728;
  border-radius:8px;
  color:#FFF;
  display:flex;
  margin-right:37px;
  padding:30px 20px 30px 110px;
  position:relative;
  transition:.3s;
  width:calc(100% / 4 - 28px);
}

#contents .link-area .bnr.end {
  margin-right:0;
}

#contents .link-area .bnr:hover {
  opacity:.5;
  text-decoration:none;
  transition:.3s;
}

#contents .link-area .bnr.job {
  background-color:#009380;
}

#contents .link-area .bnr.line {
  background-color:#06C755;
}

#contents .link-area .bnr p {
  font-size:22px;
  letter-spacing:.1em;
  line-height:1.5em;
  margin-bottom:0;
}

#contents .link-area .bnr.line p {
  font-weight:bold;
}

#contents .link-area .bnr.line p span.bold {
  font-size:32px;
  font-weight:900;
}

#contents .link-area .bnr.line p span {
  font-size:24px;
}

#contents .link-area .bnr::before {
  background-image:url(../image/contents/home/company-icon.svg);
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  bottom:0;
  content:"";
  display:block;
  height:38px;
  left:50px;
  margin:auto;
  position:absolute;
  top:0;
  transform:translateY(0%) translateX(-50%);
  width:38px;
}

#contents .link-area .bnr.job::before {
  background-image:url(../image/contents/home/job-icon.svg);
  background-position:center;
  height:37px;
  width:30px;
}

#contents .link-area .bnr.job-support::before {
  background-image:url(../image/contents/home/job-support.svg);
  background-position:center;
  height:38px;
  width:29px;
}

#contents .link-area .bnr.line::before {
  background-image:url(../image/contents/LINE-icon.svg);
  background-position:center;
  height:54px;
  left:57px;
  width:54px;
}

@media screen and (min-width: 1401px) {
  #contents .job-new-area .recruit-list .photo {
    height:240px;
  }
}

@media screen and (max-width: 1850px) {
  #contents .link-area .bnr p {
    font-size:16px;
    letter-spacing:.05em;
  }

  #contents .link-area .bnr.line p span.bold {
    font-size:22px;
  }

  #contents .link-area .bnr.line p span {
    font-size:20px;
  }

  #contents .link-area .bnr {
    padding:30px 20px 30px 80px;
  }

  #contents .link-area .bnr::before {
    left:40px;
  }

  #contents .link-area .bnr.line::before {
    left:40px;
  }
}

@media screen and (max-width: 1700px) {
  .home #contents .column-area .column-group a.column-link .photo {
    height:200px;
  }
}

@media screen and (max-width: 1400px) {
  .job-bnr-box .flex .link-bnr {
    padding:35px 15px;
  }

  #contents .link-area .bnr {
    margin-right:15px;
    padding:20px 20px 20px 60px;
    width:calc(100% / 4 - 13px);
  }

  #contents .link-area .bnr::before {
    height:25px;
    left:40px;
    width:25px;
  }

  #contents .link-area .bnr.job::before {
    height:27px;
    width:20px;
  }

  #contents .link-area .bnr.line::before {
    height:44px;
    width:44px;
  }

  #contents .link-area .bnr.job-support::before {
    height:28px;
    left:40px;
    width:19px;
  }

  #contents .link-area .bnr p {
    font-size:15px;
  }

  #contents .link-area .bnr.line p span.bold {
    font-size:20px;
  }

  #contents .link-area .bnr.line p span {
    font-size:16px;
  }

  #contents .link-area .bnr::before {
    left:30px;
  }

  #contents .link-area .bnr.job::before {
    left:30px;
  }

  #contents .link-area .bnr.job-support::before {
    left:30px;
  }

  #contents .link-area .bnr.line::before {
    left:30px;
  }

  .home #contents .column-area .column-group a.column-link .photo {
    height:calc(100vw / 8);
  }

  #contents .about-area .sub-txt {
    font-size:18px;
    max-width:300px;
  }

  .about-area .sub-txt:before {
    left:0;
    top:45%;
    width:20px;
  }

  .about-area .sub-txt:after {
    right:0;
    top:45%;
    width:20px;
  }

  .about-area .about-item {
    height:220px;
    width:700px;
  }

  #contents .about-area h2 {
    font-size:35px;
  }

  #contents .about-area h2 .txt-green {
    font-size:46px;
  }

  #contents .about-area h2 .small-txt {
    font-size:26px;
  }

  .about-deco .deco-item01,
  .about-deco .deco-item02 {
    top:107px;
  }

  .about-deco .deco-item01 {
    height:181px;
    width:148px;
  }

  .about-deco .deco-item02 {
    height:181px;
    width:179px;
  }

  .about-deco .deco-item01 {
    left:50px;
  }

  .about-deco .deco-item02 {
    right:30px;
  }

  #contents .job-bnr-box .link-bnr .link-txt {
    font-size:18px;
    letter-spacing:.05em;
  }

  #contents .job-bnr-box .link-bnr.type::before {
    height:50px;
    width:36px;
  }

  #contents .job-bnr-box .link-bnr.facility::before {
    height:44px;
    width:50px;
  }

  #contents .job-bnr-box .link-bnr.skill::before {
    height:44px;
    width:41px;
  }

  #contents .job-bnr-box .link-bnr.area::before {
    height:50px;
    width:50px;
  }

  #contents .job-bnr-box .link-bnr::before {
    height:45px;
    width:85px;
  }

  #contents .attention-area .bnr-box .manager-bnr .bnr-ttl {
    font-size:23px;
  }

  #contents .column-area .column-group .ttl {
    padding:15px 10px 0;
  }
}

@media screen and (max-width: 1300px) {
  #contents {
    margin-top:95px;
  }

  #contents .attention-area .bnr-box .manager-bnr .img-2box-txt {
    padding-left:30px;
  }
}

/* view-1140 notePC,Tablet */
@media screen and (max-width: 1140px) {
  .about-area {
    background:url(../image/contents/home/main_bg_sp.jpg);
    background-size:100%;
  }


  #contents .job-new-area .new-job-search h2 {
    font-size:24px;
    line-height:1.5em;
  }

  #contents .about-area h3 {
    font-size:32px;
  }

  .about-area .about-item {
    height:172px;
    width:550px;
  }

  #contents .about-area h2 {
    font-size:28px;
    letter-spacing:.12em;
    line-height:1.5em;
    margin:40px auto 25px;
  }

  #contents .about-area h2 .small-txt {
    font-size:18px;
  }

  #contents .about-area h2 .txt-green {
    font-size:39px;
  }

  .about-deco .deco-item01 {
    height:156px;
    width:118px;
  }

  .about-deco .deco-item02 {
    height:146px;
    width:144px;
  }

  .about-deco .deco-item01,
  .about-deco .deco-item02 {
    top:94px;
  }

  .job-new-area .link-btn,
  .column-area .link-btn,
  .news-area .link-btn {
    padding:11px;
  }

  #contents .news-area .item-box {
    gap:0;
    grid-template-columns:100%;
  }

  #contents .news-area .news-contents {
    margin-bottom:40px;
  }

  #contents .news-area .item-box .link-btn.pc-btn {
    display:none;
  }

  #contents .news-area .item-box .link-btn.sp-btn {
    display:block;
  }

  #contents .link-area .bnr {
    padding:20px 5px 20px 40px;
  }

  #contents .link-area .bnr::before {
    height:20px;
    left:20px;
    width:20px;
  }

  #contents .link-area .bnr.job::before {
    height:22px;
    left:20px;
    width:15px;
  }

  #contents .link-area .bnr.line p span.bold {
    font-size:17px;
  }

  #contents .link-area .bnr.line p span {
    font-size:14px;
    height:23px;
    width:14px;
  }

  #contents .link-area .bnr.job-support::before {
    height:23px;
    left:20px;
    width:14px;
  }

  #contents .link-area .bnr.line::before {
    height:29px;
    left:20px;
    width:29px;
  }

  #contents .attention-area .bnr-box .loyal-wam-town-bnr img {
    border-radius:5px;
  }

  #contents .attention-area .bnr-box .manager-bnr {
    border:3px solid #FF9728;
  }

  #contents .attention-area .bnr-box .img-2box {
    width:48%;
  }

  #contents .attention-area .bnr-box .img-2box-txt {
    padding-left:20px;
    width:51%;
  }
}

/* view-959 Mobile,Tablet */
@media screen and (max-width: 959px) {
  #contents .job-bnr-box .link-bnr .link-txt {
    font-size:16px;
  }

  #contents,
  .mobile-view #contents {
    margin-top:70px;
  }

  .main-view,
  .splide__track {
    height:45vh;
    margin-top:78px;
  }

  .about-deco .deco-item01 {
    height:102px;
    width:83px;
  }

  .about-deco .deco-item02 {
    height:103px;
    width:102px;
  }

  .about-deco .deco-item01,
  .about-deco .deco-item02 {
    top:112px;
  }

  .about-area .about-item {
    height:157px;
    width:500px;
  }

  #contents .about-area h2 {
    letter-spacing:.1em;
    margin:30px auto 25px;
  }

  #contents .job-bnr-box .flex {
    display:flex;
    flex-wrap:wrap;
    gap:20px;
    justify-content:center;
  }

  .job-bnr-box .flex .link-bnr {
    width:calc((100% - 40px) / 3);
  }

  #contents .attention-area .bnr-box .img-2box {
    width:44.5%;
  }

  #contents .attention-area .bnr-box .manager-bnr .img-2box-txt {
    padding-left:20px;
    width:55.5%;
  }

  #contents .attention-area .bnr-box .manager-bnr .bnr-ttl {
    font-size:18px;
  }

  #contents .attention-area .bnr-box .manager-bnr {
    margin:0 0 0 20px;
    width:calc(35.5% - 20px);
  }

  #contents .column-area .mb-60 {
    margin-bottom:40px;
  }

  #contents .link-area .bnr {
    margin-bottom:15px;
    width:calc(100% / 2 - 8px);
  }

  #contents .link-area .bnr:nth-child(2n) {
    margin-right:0;
  }

  #contents .link-area .bnr:nth-child(n+3) {
    margin-bottom:0;
  }

  #contents .link-area .bnr p {
    font-size:18px;
  }

  #contents .link-area .bnr.line p span.bold {
    font-size:26px;
  }

  #contents .link-area .bnr.line p span {
    font-size:20px;
  }

  .home #contents .column-area .column-group a.column-link .photo {
    height:calc(100vw / 4);
  }

  #contents .about-area .sub-txt {
    margin-bottom:5px;
  }
}

@media screen and (max-width: 768px) {
  #contents .about-area h2 {
    font-size:20px;
  }

  #contents .about-area h2 .txt-green {
    font-size:29px;
  }

  #contents .about-area h2 .small-txt {
    font-size:16px;
  }

  #contents .about-area h2 .txt-green {
    font-size:26px;
  }

  #contents .about-area h2 {
    font-size:23px;
    margin:auto;
  }

  #contents .about-area h2 .txt-green {
    font-size:29px;
  }

  #contents .about-area h2 .small-txt {
    font-size:14px;
  }

  .about-area .about-item {
    height:125px;
    width:400px;
  }

  .about-deco .deco-item01 {
    height:82px;
    width:63px;
  }

  .about-deco .deco-item02 {
    height:78px;
    width:77px;
  }

  .about-deco .deco-item01,
  .about-deco .deco-item02 {
    top:105px;
  }
}

br.br-767 {
  display:none;
}
@media screen and (max-width: 767px) {
  br.br-767 {
    display:block;
  }
}

@media screen and (max-width: 650px) {
  .about-deco .deco-item01,
  .about-deco .deco-item02 {
    top:95px;
  }

  .about-deco .deco-item01 {
    left:30px;
  }

  .about-deco .deco-item02 {
    right:30px;
  }

  .about-area .about-item {
    margin-bottom:10px;
    width:100%;
  }

  #contents .attention-area .bnr-box .loyal-wam-town-bnr {
    margin-bottom:20px;
    width:100%;
  }

  #contents .attention-area .bnr-box .manager-bnr {
    margin:0 auto;
    width:100%;
  }

  #contents .attention-area .bnr-box .manager-bnr {
    border:2px solid #FF9728;
  }

  #contents .attention-area .bnr-box .img-2box {
    width:25.5%;
  }

  #contents .attention-area .bnr-box .manager-bnr .img-2box-txt {
    width:74.5%;
  }

  #contents .attention-area .bnr-box .manager-bnr .bnr-ttl br {
    display:none;
  }

  #contents .attention-area .bnr-box .img-2box img {
    border-radius:3px 0 0 3px;
  }

  #contents .attention-area .bnr-box .manager-bnr {
    border-radius:5px;
  }

  #contents .link-area .bnr p {
    font-size:16px;
  }

  #contents .link-area .bnr.line p span.bold {
    font-size:21px;
  }

  #contents .link-area .bnr.line p span {
    font-size:18px;
  }
}

/* view-559 Mobile */
@media screen and (max-width: 559px) {
  #contents .about-area h2 .small-txt .small-559-txt {
    font-size:18px;
  }

  .about-deco .deco-item01 {
    left:10px;
  }

  .about-deco .deco-item02 {
    right:10px;
  }

  #contents .job-new-area .new-job-search {
    padding-top:30px;
  }

  #contents .job-new-area .new-job-search h2 {
    font-size:20px;
  }

  #contents .job-bnr-box .link-bnr.skill::before {
    height: 36px;
    width: 34px;
  }

  #contents .job-bnr-box .link-bnr.facility::before {
    height: 36px;
    width: 36px;
  }

  #contents .job-bnr-box .link-bnr.new-open::before {
    left:10px;
  }

  #contents .job-bnr-box .link-bnr::before {
    height: 35px;
    margin:0 auto 10px;
    width: 60px;
  }

  #contents .job-bnr-box .link-bnr .link-txt {
    font-size: 13px;
    line-height:1.6em;
  }

  #contents .about-area h3 {
    font-size:27px;
  }

  .about-area {
    margin-bottom:45px;
  }

  #contents .about-area .job-search-box {
    margin-bottom:45px;
    padding:30px 15px 40px;
  }

  #contents .attention-area,
  #contents .column-area,
  #contents .news-area,
  #contents .link-area {
    padding:45px 0;
  }

  #contents .about-area h2 {
    font-size:20px;
  }

  #contents .about-area h2 .txt-green {
    font-size:24px;
  }

  #contents .about-area .job-bnr-box h3 {
    font-size:25px;
    line-height:1.4em;
  }

  #contents .job-bnr-box .flex {
    gap:10px;
  }

  .job-bnr-box .flex .link-bnr {
    width:calc((100% - 20px) / 3);
  }

  .job-bnr-box .flex .link-bnr {
    padding:22px 5px;
  }

  .main-view,
  .splide__track {
    margin-top:65px;
  }

  #contents .link-area .bnr {
    margin-bottom:15px;
    margin-right:0;
    width:100%;
  }

  #contents .link-area .bnr:nth-child(n+3) {
    margin-bottom:15px;
  }

  #contents .link-area .bnr:last-child {
    margin-bottom:0;
  }

  #contents .link-area .bnr {
    padding:25px 55px;
  }

  #contents .link-area .bnr::before {
    height:20px;
    left:30px;
    width:20px;
  }

  #contents .link-area .bnr.company {
    padding:40px 55px;
  }

  #contents .link-area .bnr.job::before {
    height:27px;
    left:27px;
    width:20px;
  }

  #contents .link-area .bnr.job-support::before {
    height:28px;
    left:27px;
    width:19px;
  }

  #contents .link-area .bnr.line::before {
    height:39px;
    left:25px;
    width:39px;
  }

  #contents .link-area .bnr p {
    font-size:18px;
  }

  #contents .link-area .bnr.line p span.bold {
    font-size:23px;
  }

  #contents .link-area .bnr.line p span {
    font-size:20px;
  }
}
