@charset "UTF-8";
/* ofi */
/* column */

/*====================================================================

index.css

=====================================================================*/
/*--------------------------------------------------------------------/
	main-view
/--------------------------------------------------------------------*/
.main-view {
  position: relative;
  background: url(../img/top/main_bg.png) center center/cover no-repeat;
  height: 50.3vw;
  margin-top: 32px;
  margin-top: 2rem;
}

.main-view .l-cont {
  margin-left: 0;
  margin-right: 0;
}

.main-view__tit img {
  margin: 0 auto;
  display: block;
}

/* common
----------------------------------------------------------------*/
/*--------------------------------------------------------------------/
	contents
/--------------------------------------------------------------------*/
.contents {
  padding-top: 32px;
  padding-top: 2rem;
}

/* cont-thought
----------------------------------------------------------------*/
.cont-thought {
  margin-bottom: 48px;
  margin-bottom: 3rem;
  position: relative;
}

.cont-thought .txt p:not(:last-child) {
  margin-bottom: 32px;
  margin-bottom: 2rem;
}

.cont-thought .btn-wrap {
  width: 280px;
}

/* cont-business
----------------------------------------------------------------*/
.cont-business {
  background: url(../img/common/bg_02.png);
  padding: 48px 0 64px;
  padding: 3rem 0 4rem;
  position: relative;
}

.cont-business .txt {
  line-height: 2;
  font-size: 1.13em;
}

.cont-business__flex {
  display: flex;
  justify-content: space-between;
  margin-bottom: 32px;
  margin-bottom: 2rem;
}

/* cont-facility
----------------------------------------------------------------*/
.cont-facility {
  background: url(../img/common/bg_03.png);
  padding: 48px 0 64px;
  padding: 3rem 0 4rem;
  position: relative;
}

.cont-facility__list {
  margin-bottom: 32px;
  margin-bottom: 2rem;
}

/* cont-recruit
----------------------------------------------------------------*/
.cont-recruit {
  background: url(../img/common/bg_02.png);
  padding: 64px 0 64px;
  padding: 4rem 0 4rem;
}

.cont-recruit__txt .catch {
  font-family: 'Noto Serif JP', serif;
  font-size: 1.2em;
  font-weight: 700;
}

.cont-recruit__txt .btn-wrap {
  width: 280px;
}

.cont-recruit__tit {
  font-size: calc(1.5rem + 4 * (100vw - 320px) / 620);
  font-family: 'Noto Serif JP', serif;
  color: #1B5024;
  margin-bottom: 32px;
  margin-bottom: 2rem;
  letter-spacing: 0.2em;
}

/* cont-news
----------------------------------------------------------------*/
.cont-news {
  padding: 64px 0 64px;
  padding: 4rem 0 4rem;
  position: relative;
}

.cont-news__table {
  overflow: auto;
  margin-left: auto;
  margin-right: auto;
  max-width: 800px;
  min-height: 300px;
}

.cont-news__table table {
  width: 100%;
  height: auto;
  font-weight: 500;
}

.cont-news__table table tr {
  border-bottom: 1px solid #0F9225;
}

.cont-news__table table th, .cont-news__table table td {
  padding: 16px 0;
  padding: 1rem 0;
  line-height: 1.5;
  text-align: left;
}

.cont-news__table table th {
  width: 160px;
  width: 10rem;
  color: #0F9225;
}

@media print, screen and (min-width: 376px) {
  /*====================================================================/
/*------------------iPhone 以上----------------
/====================================================================*/
  html {
    width: 100%;
  }
}

@media print, screen and (min-width: 561px) {
  /*====================================================================/
/*------------------タブレットスタイル----------------
/====================================================================*/
  html {
    width: 100%;
  }
  .cont-business__flex li {
    flex-basis: auto;
  }
  .cont-business__flex li:nth-of-type(odd) {
    margin-top: 2rem;
  }
  .cont-facility__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
  .cont-facility__list > * {
    width: 47.32%;
  }
  .cont-facility__list > *:not(:nth-of-type(2n)) {
    margin-right: 5.35%;
  }
}

@media print, screen and (min-width: 977px) {
  /*====================================================================/
/*-------------------小さいPCスタイル----------------
/====================================================================*/
  html {
    width: 100%;
  }
  .contents {
    padding-top: 4rem;
  }
  .cont-thought {
    margin-bottom: 5rem;
  }
  .cont-thought .l-cont {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .cont-thought h3 {
    flex-basis: 48%;
    min-width: 300px;
  }
  .cont-thought__txt {
    flex-basis: 50%;
  }
  .cont-business {
    padding: 4rem 0 5rem;
    background: url(../img/common/green_add_01.png) top 3rem right calc(50% + 550px) no-repeat, url(../img/common/green_add_02.png) top 10rem right calc(50% + 700px) no-repeat, url(../img/common/green_add_03.png) top 3rem left calc(50% + 550px) no-repeat, url(../img/common/green_add_04.png) top 10rem left calc(50% + 700px) no-repeat, url(../img/common/bg_02.png);
  }
  .cont-business__flex {
    margin-bottom: 4rem;
  }
  .cont-facility {
    padding: 4rem 0 5rem;
  }
  .cont-facility:before {
    content: url(../img/common/facility_add_01.png);
    position: absolute;
    left: calc(50% + 600px);
    top: 30%;
    z-index: 1;
  }
  .cont-facility:after {
    content: url(../img/common/facility_add_02.png);
    position: absolute;
    right: calc(50% + 600px);
    bottom: -5rem;
    z-index: 1;
  }
  .cont-facility__list > *:nth-last-of-type(-n+2) {
    margin-bottom: auto;
  }
  .cont-facility__list > *:nth-last-of-type(odd) {
    margin-right: auto;
  }
  .cont-facility__list > * {
    width: 31.64%;
  }
  .cont-facility__list > *:not(:nth-of-type(3n)) {
    margin-right: 2.54%;
  }
  .cont-recruit {
    padding: 5rem 0 5rem;
    background: url(../img/top/recruit_bg.png) top right calc(50% + 260px) no-repeat, url(../img/common/bg_02.png);
  }
  .cont-recruit .l-cont {
    display: flex;
    flex-direction: row-reverse;
  }
  .cont-recruit__txt {
    flex-basis: 50%;
  }
  .cont-news {
    padding: 4rem 0 5rem;
    background: url(../img/common/flower_01.png) top 6rem right calc(50% + 520px) no-repeat, url(../img/common/flower_02.png) top 12rem right calc(50% + 470px) no-repeat, url(../img/common/flower_03.png) bottom 10rem left calc(50% + 470px) no-repeat, url(../img/common/flower_04.png) bottom 5rem left calc(50% + 520px) no-repeat;
  }
}

@media print, screen and (min-width: 1197px) {
  /*====================================================================/
/*-------------------PCスタイル-------------------
/====================================================================*/
  html {
    width: 100%;
  }
  .main-view {
    height: 830px;
    background: url(../img/top/main_bg.png) center center no-repeat;
  }
  .main-view__tit {
    position: absolute;
    right: calc(50% + 2rem);
    bottom: 6.5rem;
  }
  .cont-recruit__tit {
    font-size: 1.75rem;
  }
}

@media print, screen and (min-width: 1920px) {
  /*====================================================================/
/*-------------------full PCスタイル-------------------
/====================================================================*/
  html {
    width: 100%;
  }
}

@media screen and (max-width: 1196px) {
  /*====================================================================/
/*------------------PC以下---------
/====================================================================*/
  html {
    width: 100%;
  }
  .main-view__tit {
    position: absolute;
    left: 8%;
    bottom: 10%;
    width: 41.16%;
  }
}

@media screen and (max-width: 976px) {
  /*====================================================================/
/*------------------スマホタブレット共通スタイル---------
/====================================================================*/
  html {
    width: 100%;
  }
  .cont-thought h3 {
    margin-bottom: 1rem;
  }
  .cont-thought h3 img {
    margin-left: auto;
    margin-right: auto;
    display: block;
  }
  .cont-thought .btn-wrap {
    margin-left: auto;
    margin-right: auto;
  }
  .cont-recruit__txt .btn-wrap {
    margin-left: auto;
    margin-right: auto;
  }
  .cont-recruit__tit {
    text-align: center;
  }
  .cont-recruit figure {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1rem;
  }
  .cont-recruit figure img {
    margin-left: auto;
    margin-right: auto;
    display: block;
  }
  .cont-news {
    background: url(../img/common/flower_01.png) top 1rem left 1rem no-repeat, url(../img/common/flower_02.png) top 4rem left 4rem no-repeat, url(../img/common/flower_04.png) bottom 1rem right 0rem no-repeat;
  }
}

@media screen and (max-width: 560px) {
  /*====================================================================/
/*------------------スマホのみスタイル----------------
/====================================================================*/
  html {
    width: 100%;
  }
  .cont-business__flex {
    flex-wrap: wrap;
  }
  .cont-business__flex li {
    flex-basis: 48%;
  }
  .cont-news__table table th, .cont-news__table table td {
    display: block;
  }
  .cont-news__table table th {
    padding-bottom: 0;
  }
  .cont-news__table table td {
    padding-top: 0;
  }
}

@media screen and (max-width: 375px) {
  /*====================================================================/
/*------------------iPhone 以下----------------
/====================================================================*/
  html {
    width: 100%;
  }
}
