@charset "UTF-8";
/*------------------------------*/
/*------------------------------*/
html {
  font-size: 62.5%;
  height: -webkit-fill-available;
}

body {
  min-height: 100vh;
  min-height: -webkit-fill-available;
  background-color: #F8F7F1;
  color: #333;
  font-family: 'Noto Sans JP', "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

img {
  display: block;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  image-rendering: -webkit-optimize-contrast;
}

a:link, a:visited, a:hover, a:active {
  text-decoration: none;
}

*, *::before, *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

p {
  font-size: 1.6rem;
  line-height: 2;
}

/*------------------------------*/
/*------------------------------*/
._mt-xl {
  margin-top: 105px !important;
}

._mt-x {
  margin-top: 90px !important;
}

._mt-m {
  margin-top: 30px !important;
}

._mt-s {
  margin-top: 20px !important;
}

._mt-0 {
  margin-top: 0px !important;
}

._mb-s {
  margin-bottom: 30px !important;
}

._mb-ss {
  margin-bottom: 20px !important;
}

._mb0 {
  margin-bottom: 0 !important;
}

._ml-s {
  margin-left: 20px !important;
}

._ml0 {
  margin-left: 0 !important;
}

._pt0 {
  padding-top: 0 !important;
}

._flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

/*------------------------------*/
/*------------------------------*/
span.green {
  color: #1B9446;
  font-size: 1.8rem;
  font-weight: bold;
}

span.bold {
  font-weight: bold;
}

/*------------------------------*/
/*------------------------------*/
/*------------------------------*/
/*------------------------------*/
/*------------------------------*/
/*------------------------------*/
/*------------------------------*/
/*------------------------------*/
.section {
  width: 100%;
  margin: 0 auto 80px;
}

.section-inner {
  max-width: 1060px;
  padding-right: 30px;
  padding-left: 30px;
  margin: 0 auto;
}

.section-inner.carry {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.section-inner.small {
  max-width: 910px;
  padding-right: 30px;
  padding-left: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: -15px;
}

/*------------------------------*/
/*------------------------------*/
.page-section {
  margin-top: 60px;
}

.page-section-inner {
  max-width: 960px;
  margin: 0 auto 50px;
  padding-right: 30px;
  padding-left: 30px;
}

.page-section-inner:last-child {
  margin-bottom: 0;
}

.page-section-inner.wide {
  max-width: 1000px;
}

.media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
}

.media-img {
  width: 43.5%;
  margin-right: 30px;
}

.media-body {
  padding-top: 30px;
}

.media.tour {
  max-width: 900px;
}

.media.tour .media-img {
  border-radius: 20px;
  width: 400px;
  height: 260px;
  -o-object-fit: cover;
     object-fit: cover;
}

.header {
  position: fixed;
  z-index: 1;
  top: 0;
  width: 100%;
  background-color: #fff;
  -webkit-box-shadow: 0px 6px 16px -6px rgba(186, 180, 180, 0.6);
          box-shadow: 0px 6px 16px -6px rgba(186, 180, 180, 0.6);
}

.header-inner {
  max-width: 1160px;
  padding: 16px 30px 16px 30px;
  height: 114px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto;
}

.header-inner-wrapper._fix {
  display: none;
}

.header-inner-wrapper._fix.active {
  display: block;
}

/*------------------------------*/
/*------------------------------*/
.front-gnav {
  max-width: 1100px;
  width: 96%;
  background-color: #fff;
  border-radius: 10px;
  margin: 0 auto;
  position: absolute;
  left: 50%;
  bottom: 0;
  -webkit-transform: translate(-50%, 50%);
          transform: translate(-50%, 50%);
  -webkit-box-shadow: 0px 15px 14px -8px rgba(139, 133, 133, 0.6);
          box-shadow: 0px 15px 14px -8px rgba(139, 133, 133, 0.6);
}

.front-gnav-list {
  padding: 11px 0 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.front-gnav-item {
  width: 20%;
  text-align: center;
  -webkit-transition: .3s;
  transition: .3s;
  position: relative;
}

.front-gnav-item:not(:first-of-type):before {
  content: '';
  position: absolute;
  left: 0px;
  top: 9px;
  width: 1px;
  height: 60px;
  background-color: #BCBFBE;
}

.front-gnav-item:hover {
  opacity: .6;
}

.front-gnav-icon {
  width: 70px;
  margin: 0 auto 4px;
}

.front-gnav-txt {
  font-size: 1.6rem;
  line-height: 1.2;
  font-weight: bold;
}

/*------------------------------*/
/*------------------------------*/
.page-gnav {
  width: 556px;
  height: 80px;
}

.page-gnav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.page-gnav-item {
  text-align: center;
  border-left: 1px solid #BCBFBE;
  padding-left: 18px;
  -webkit-transition: .3s;
  transition: .3s;
  height: 80px;
}

.page-gnav-item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.page-gnav-item:last-child {
  border-right: 1px solid #BCBFBE;
  padding-right: 10px;
  padding-left: 10px;
}

.page-gnav-item:last-child .page-gnav-icon {
  margin-top: 0;
}

.page-gnav-item:hover {
  opacity: .6;
}

.page-gnav-txt {
  font-size: 1.5rem;
  line-height: 1.1;
  color: #333;
  font-weight: bold;
}

.page-gnav-icon {
  width: 60px;
  margin: 0 auto;
  margin-top: 5px;
}

/*------------------------------*/
/*------------------------------*/
.burger-btn {
  display: none;
  width: 48px;
  height: 48px;
  position: relative;
  z-index: 4;
}

.burger-btn:hover {
  cursor: pointer;
}

.burger-btn.active .burger-bar.top {
  -webkit-transform: translate(-50%, 12px) rotate(45deg);
          transform: translate(-50%, 12px) rotate(45deg);
  background-color: #fff;
}

.burger-btn.active .burger-bar.mid {
  opacity: 0;
}

.burger-btn.active .burger-bar.bottom {
  -webkit-transform: translate(-50%, -12px) rotate(-45deg);
          transform: translate(-50%, -12px) rotate(-45deg);
  background-color: #fff;
}

.burger-bar {
  width: 32px;
  height: 2px;
  display: block;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background-color: #A3A1A0;
  -webkit-transition: .4s;
  transition: .4s;
}

.burger-bar.top {
  top: 11px;
}

.burger-bar.mid {
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.burger-bar.bottom {
  bottom: 11px;
}

.burger-nav-list {
  padding-top: 90px;
  width: 90%;
}

.burger-nav-item {
  border-top: 1px solid #fff;
  padding-left: 50px;
  -webkit-transition: .3s;
  transition: .3s;
}

.burger-nav-item:last-child {
  border-bottom: 1px solid #fff;
}

.burger-nav-item:hover {
  opacity: .6;
}

.burger-nav-item a {
  display: block;
  padding-top: 18px;
  padding-bottom: 16px;
  color: #fff;
  font-size: 16px;
  position: relative;
}

.burger-nav-item a::before {
  content: '';
  background-image: url(../image/arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  width: 5px;
  height: 10px;
  top: 20px;
  left: -20px;
}

#burger-nav {
  position: fixed;
  z-index: 3;
  top: 0;
  right: -120%;
  width: 100vw;
  height: 100vh;
  background-color: #56B177;
  border-left: 15px solid #A2CC67;
  -webkit-transition: .3s;
  transition: .3s;
}

#burger-nav.active {
  right: 0;
}

#burger-bg {
  background-color: rgba(139, 133, 133, 0.8);
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2;
  display: none;
  -webkit-transition: .6s;
  transition: .6s;
}

#burger-bg.active {
  display: block;
}

.noscroll {
  overflow: hidden;
}

.footer {
  width: 100%;
  background-color: #56B177;
  border-top: 4px solid #A9CB39;
  color: #fff;
}

.footer-inner {
  max-width: 1110px;
  padding-right: 30px;
  padding-left: 30px;
  margin: 54px auto 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.footer-company-name {
  font-size: 2.4rem;
}

.footer-list {
  max-width: 500px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.footer-item {
  width: 220px;
}

.footer a {
  padding-bottom: 24px;
  color: #fff;
  font-size: 1.6rem;
  position: relative;
  padding-left: 20px;
  -webkit-transition: .3s;
  transition: .3s;
  display: block;
}

.footer a:hover {
  opacity: .6;
}

.footer a::before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 10px;
  background-image: url(../image/arrow.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 10%;
  margin-left: -20px;
}

.footer-address {
  color: #fff;
  font-size: 1.6rem;
  line-height: 1.6;
  margin-top: 10px;
}

.footer-copy-right {
  font-size: 1.4rem;
  text-align: center;
  padding-bottom: 8px;
}

/*------------------------------*/
/*------------------------------*/
#page-top {
  position: fixed;
  right: 20px;
  bottom: 20px;
  -webkit-transform: translateY(100px);
          transform: translateY(100px);
}

#page-top .page-top-img {
  width: 46px;
  height: 46px;
  background-color: #A9CB39;
  border: 2px solid #fff;
  border-radius: 50%;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s;
}

#page-top .page-top-img::after {
  content: '';
  background-image: url(../image/arrow-top.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 18px;
  height: 18px;
  position: absolute;
  top: 13px;
  left: 12px;
}

#page-top .page-top-img:hover {
  -webkit-transform: scale(1.4);
          transform: scale(1.4);
  cursor: pointer;
}

#page-top.up {
  -webkit-animation: upanime .5s forwards;
          animation: upanime .5s forwards;
}

#page-top.down {
  -webkit-animation: downanime .5s forwards;
          animation: downanime .5s forwards;
}

@-webkit-keyframes upanime {
  from {
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes upanime {
  from {
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@-webkit-keyframes downanime {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
}

@keyframes downanime {
  from {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(100px);
            transform: translateY(100px);
  }
}

/*------------------------------*/
/*------------------------------*/
.btn-green {
  font-weight: bold;
  border-radius: 30px;
  font-size: 18px;
  text-align: center;
  line-height: 60px;
  margin: 5rem auto 0;
  color: #fff;
  background-color: #fff;
  width: 275px;
  background: -webkit-gradient(linear, left top, right top, from(#5DB070), to(#36984C));
  background: linear-gradient(to right, #5DB070, #36984C);
  -webkit-box-shadow: 0px 6px 16px -6px rgba(190, 184, 184, 0.6);
          box-shadow: 0px 6px 16px -6px rgba(190, 184, 184, 0.6);
  display: block;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s;
}

@media (max-width: 960px) {
  .btn-green {
    margin-top: 3rem;
  }
}

.btn-green::after {
  content: '';
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  width: 10px;
  height: 14px;
  background-image: url(../image/arrow.png);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 20px;
  -webkit-transition: .2s;
  transition: .2s;
}

.btn-green:hover {
  opacity: .7;
}

.btn-green:hover::after {
  right: 10px;
}

.btn-green.long {
  width: 310px;
}

/*------------------------------*/
/*------------------------------*/
.btn-white {
  font-weight: bold;
  border-radius: 30px;
  font-size: 18px;
  text-align: center;
  line-height: 60px;
  margin: 5rem auto 0;
  color: #4BA55F;
  background-color: #fff;
  border: 2px solid #4BA55F;
  width: 320px;
  display: block;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s;
}

@media (max-width: 960px) {
  .btn-white {
    margin-top: 3rem;
  }
}

.btn-white::after {
  content: '';
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  width: 10px;
  height: 14px;
  background-image: url(../image/arrow.png);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 20px;
  -webkit-transition: .2s;
  transition: .2s;
}

.btn-white:hover {
  opacity: .7;
}

.btn-white:hover::after {
  right: 10px;
}

.btn-white::after {
  background-image: url(../image/arrow-green.png);
}

.btn-white.bottom::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  top: 38%;
  right: 24px;
}

.btn-white.bottom:hover::after {
  top: 50%;
  right: 24px;
}

/*------------------------------*/
/*------------------------------*/
.btn-apply {
  font-weight: bold;
  border-radius: 30px;
  font-size: 18px;
  text-align: center;
  line-height: 60px;
  margin: 5rem auto 0;
  color: #4BA55F;
  background-color: #fff;
  border: 2px solid #4BA55F;
  width: 320px;
  display: block;
  text-align: left;
  padding-left: 36px;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s;
}

@media (max-width: 960px) {
  .btn-apply {
    margin-top: 3rem;
  }
}

.btn-apply::after {
  content: '';
  background-image: url(../image/apply.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 32%;
  right: 24px;
}

.btn-apply:hover {
  opacity: .7;
}

/*------------------------------*/
/*------------------------------*/
.btn-white.pdf {
  padding-left: 14px;
}

.btn-white.pdf::before {
  content: '';
  display: inline-block;
  width: 24px;
  height: 30px;
  background-image: url(../image/pdf.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-51%);
          transform: translateY(-51%);
  left: 25px;
}

/*------------------------------*/
/*------------------------------*/
.btn-long {
  width: 320px;
  line-height: 50px;
  font-size: 1.8rem;
  color: #fff;
  font-weight: bold;
  padding-left: 22px;
  display: block;
  border-radius: 25px;
  display: block;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s;
}

.btn-long::after {
  content: '';
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  width: 10px;
  height: 14px;
  background-image: url(../image/arrow.png);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 20px;
  -webkit-transition: .2s;
  transition: .2s;
}

.btn-long:hover {
  opacity: .7;
}

.btn-long:hover::after {
  right: 10px;
}

.btn-long::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  top: 38%;
  right: 24px;
}

.btn-long:hover::after {
  top: 50%;
  right: 24px;
}

.btn-long.orange {
  background-color: #ED9932;
}

.btn-long.green {
  background-color: #7EBF3B;
}

/*--------------------------------------*/
/*--------------------------------------*/
.cat-btn {
  width: 244px;
  display: block;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s;
}

.cat-btn:not(:last-child) {
  margin-right: 30px;
}

.cat-btn::after {
  content: '';
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  width: 10px;
  height: 14px;
  background-image: url(../image/arrow.png);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 20px;
  -webkit-transition: .2s;
  transition: .2s;
}

.cat-btn:hover {
  opacity: .7;
}

.cat-btn:hover::after {
  right: 10px;
}

.cat-btn::after {
  -webkit-transform: translateY(-70%);
          transform: translateY(-70%);
}

.cat-btn-wrapper {
  max-width: 1160px;
  padding-right: 30px;
  padding-left: 30px;
  margin: 42px auto 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

/*--------------------------------------*/
/*--------------------------------------*/
.town-btn {
  width: 310px;
  height: 54px;
  display: block;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s;
}

.town-btn:not(:last-of-type) {
  margin-bottom: 24px;
}

.town-btn-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: -24px;
}

.town-btn::after {
  content: '';
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  width: 10px;
  height: 14px;
  background-image: url(../image/arrow.png);
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 20px;
  -webkit-transition: .2s;
  transition: .2s;
}

.town-btn:hover {
  opacity: .7;
}

.town-btn:hover::after {
  right: 10px;
}

.town-btn::after {
  -webkit-transform: translateY(-70%);
          transform: translateY(-70%);
}

.transparent-btn {
  width: 310px;
  height: 54px;
}

/*------------------------------*/
/*------------------------------*/
.section-title {
  padding-left: 8px;
  font-size: 2.4rem;
  font-weight: bold;
}

.section-title-wrapper {
  width: 1100px;
  margin-left: auto;
  margin-right: auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 100%;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 15px;
  border-top: 4px solid #333;
  border-bottom: 2px solid #DFDCDB;
  margin-bottom: 28px;
}

.section-title-wrapper._green {
  border-top-color: #56B177;
}

.section-title-wrapper._orange {
  border-top-color: #F8C35D;
}

.section-title-wrapper._purple {
  border-top-color: #B6A7F7;
}

.section-title-wrapper._blue {
  border-top-color: #88C7E6;
}

.section-title-wrapper._yellow-green {
  border-top-color: #B1E081;
}

.section-title-img {
  width: 46px;
  -o-object-fit: cover;
     object-fit: cover;
}

.section-title-img.info {
  width: 25px;
}

/*------------------------------*/
/*------------------------------*/
.page-title {
  color: #fff;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 60px;
}

.page-title-wrapper {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 114px;
}

.page-title-wrapper.green, .page-title-wrapper.news, .page-title-wrapper.event {
  background-color: #56B177;
}

.page-title-wrapper.blue, .page-title-wrapper.progress,.page-title-wrapper.about,.page-title-wrapper.frow,.page-title-wrapper.company,.page-title-wrapper.contact {
  background-color: #54A7D4;
}

.page-title-wrapper.orange, .page-title-wrapper.community {
  background-color: #EDA332;
}

.page-title-wrapper.purple {
  background-color: #AC9EE8;
}

.page-title-wrapper.yellow-green, .page-title-wrapper.faq {
  background-color: #7EBF3B;
}

.page-title-wrapper.red, .page-title-wrapper.data {
  background-color: #E97959;
}

.page-title-img {
  width: 26px;
  height: 26px;
  margin-right: 11px;
}

.page-title-img.truck, .page-title-img.glasses {
  width: 40px;
  height: 40px;
}

.page-title-img.plant {
  width: 42px;
}

.page-title-img.map {
  width: 22px;
  height: 32px;
}

.page-title-img.lock {
  width: 25px;
  height: 30px;
}

/*------------------------------*/
/*------------------------------*/
.circle-title {
  font-weight: bold;
  width: 100%;
  font-size: 2.4rem;
  line-height: 1.4;
  padding-bottom: 16px;
  padding-left: 30px;
  position: relative;
  margin-bottom: 3.6rem;
  background-image: radial-gradient(circle at 1px center, #CBC6B4, #CBC6B4 1px, transparent 1px, transparent 100%);
  background-position: center bottom;
  background-repeat: repeat-x;
  background-size: 5px 6px;
}

.circle-title::before {
  content: '';
  width: 20px;
  height: 20px;
  border: 3px solid #000;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 4px;
}

.circle-title.green::before {
  border-color: #56B177;
}

.circle-title.blue::before {
  border-color: #0086FF;
}

.circle-title.orange::before {
  border-color: #FF7C00;
}

.circle-title.purple::before {
  border-color: #A48FF7;
}

.circle-title.yellow-green::before {
  border-color: #8DC950;
}

.circle-title.red::before {
  border-color: #E97959;
}

.circle-title.narrow {
  margin-bottom: 12px;
}

/*------------------------------*/
/*------------------------------*/
.block-title {
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 35px;
  padding: 0 10px;
  margin-bottom: 30px;
  border-bottom: 1px solid #CACACA;
}

.block-title.green {
  border-left: 10px solid #56B177;
}

.block-title.blue {
  border-left: 10px solid #0086FF;
}

.block-title.orange {
  border-left: 10px solid #FF7C00;
}

/*------------------------------*/
/*------------------------------*/
.facility-title {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 13px;
  position: relative;
}

.facility-title::before {
  content: '';
  width: 4px;
  height: 4px;
  border-radius: 50%;
  position: absolute;
  left: -16px;
  background-color: #54A7D4;
}

.facility-title::before {
  top: 6px;
}

/*------------------------------*/
/*------------------------------*/
.tour-item-title {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 2rem;
  line-height: 1.5;
}

.tour-item-title2 {
  font-size: 1.6rem;
  font-weight: bold;
  position: relative;
  margin-bottom: 1rem;
  margin-left: 20px;
}

.tour-item-title2::before {
  content: '';
  width: 4px;
  height: 4px;
  border-radius: 50%;
  position: absolute;
  left: -16px;
  background-color: #F59700;
}

.tour-item-title2::before {
  top: 6px;
}

.other-title {
  font-weight: bold;
  font-size: 1.6rem;
  margin-bottom: 6px;
  margin-top: 18px;
}

/*------------------------------*/
/*------------------------------*/
.access-title {
  font-weight: bold;
  font-size: 1.8rem;
  margin-bottom: 20px;
}

/*------------------------------*/
/*------------------------------*/
.post-title {
  font-size: 2rem;
  color: #56B177;
  font-weight: bold;
  padding-bottom: 20px;
  border-bottom: 1px solid #CACACA;
  margin-bottom: 32px;
}

/*------------------------------*/
/*------------------------------*/
.archive-item-title {
  font-size: 18px;
  color: #3C9B51;
  margin-bottom: 12px;
  line-height: 1.5;
}

.archive-item-title.news, .archive-item-title.event {
  color: #56B177;
}

.archive-item-title.progress {
  color: #54A7D4;
}

.archive-item-title.community {
  color: #EDA332;
}

.archive-item-title.faq {
  color: #7EBF3B;
}

.archive-item-title.data {
  color: #E97959;
}

.table {
  max-width: 900px;
  width: 100%;
  font-size: 1.6rem;
  line-height: 1.6;
}

.table tr:not(:last-child) {
  border-bottom: 5px solid #fff;
}

.table th {
  width: 25.6%;
  font-weight: bold;
  text-align: center;
  padding: 12px;
  border-right: 5px solid #fff;
}

.table td {
  width: 74.4%;
  background-color: #EBEBEB;
  padding: 12px 24px;
}

.table-item:not(:last-child) {
  margin-bottom: 16px;
}

.table.green th {
  background-color: #D3F0B6;
}

.table.blue th {
  background-color: #C7E5FF;
}

.table.orange th {
  background-color: #F7B129;
}

.table.red th {
  background-color: #FFE5DE;
}

/*------------------------------*/
/*------------------------------*/
.mv {
  background-image: url(../image/mv.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  height: 600px;
  position: relative;
}

.mv-wrapper {
  width: 100%;
  max-width: 1060px;
  margin: 0 auto;
  padding: 30px 30px 0;
}

.mv-copy {
  margin-top: 140px;
  margin-left: -46px;
  width: 747px;
}

.caution-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 24px 20px;
  background-color: #F0FFF5;
}

.caution-wrapper.orange {
  background-color: #FFEAD6;
}

.caution-img {
  width: 30px;
  height: 30px;
  margin-right: 14px;
}

/*------------------------------*/
/*------------------------------*/
.news-list {
  font-size: 1.6rem;
}

.news-item {
  margin-bottom: 20px;
  padding-bottom: 18px;
  border-bottom: 1px solid #CACACA;
  -webkit-transition: .3s;
  transition: .3s;
}

.news-item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.news-item:not(:last-of-type) {
  margin-bottom: 22px;
}

.news-item time {
  color: #2E2E2E;
  display: block;
  margin-right: 2rem;
}

.news-item:hover {
  opacity: 0.6;
}

.news-title {
  color: #3C9B51;
  text-decoration: underline;
  line-height: 1.7;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
}

.news-cat {
  display: block;
  font-size: 12px;
  min-width: 60px;
  margin-right: 20px;
  border: 1px solid #3C9B51;
  padding: 4px;
  text-align: center;
}

.news-cat.news, .news-cat.event {
  color: #56B177;
}

.news-cat.progress,.news-cat.about,.news-cat.frow,.news-cat.company {
  color: #54A7D4;
}

.news-cat.community {
  color: #EDA332;
}

.news-cat.faq {
  color: #7EBF3B;
}

.news-cat.data {
  color: #E97959;
}

/*------------------------------*/
/*------------------------------*/
.carry-contents {
  width: 48%;
}

.carry-title {
  font-size: 1.8rem;
  margin-left: 12px;
  font-weight: bold;
}

.carry-title-wrapper {
  border-top: 1px solid #CACACA;
  border-bottom: 1px solid #CACACA;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px;
  margin-bottom: 24px;
}

.video {
  width: 29px;
  height: 26px;
}

.calendar {
  width: 25px;
  height: 26px;
}

.movie {
  width: 100%;
  background-color: #fff;
  margin-bottom: 20px;
}

.movie-wrapper {
  margin-bottom: 40px;
}

.movie-wrapper .youtube-contents {
  width: 100%;
}

.crowd-wrapper {
  margin-bottom: 32px;
}

.crowd-contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.crowd-contents:first-child {
  margin-bottom: 18px;
}

.crowd-box {
  display: block;
  width: 100px;
  height: 26px;
  color: #fff;
  font-size: 1.6rem;
  text-align: center;
  line-height: 26px;
  margin-right: 22px;
  margin-top: 3px;
}

.crowd-box.yellow {
  background-color: #CF9911;
}

.crowd-box.red {
  background-color: #AD2D2D;
}

.google-calendar {
  width: 100%;
  height: 420px;
}

.google-calendar:first-of-type {
  margin-bottom: 32px;
}

.google-calendar iframe {
  width: 100%;
  height: 100%;
}

/*------------------------------*/
/*------------------------------*/
.plant-contents {
  width: 48%;
}

.plant-img {
  margin-bottom: 20px;
  height: 266px;
  width: 100%;
}

.plant-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.plant-item {
  width: 180px;
  font-size: 1.6rem;
  margin-left: 20px;
  margin-bottom: 15px;
  position: relative;
}

.plant-item::before {
  content: '';
  width: 4px;
  height: 4px;
  border-radius: 50%;
  position: absolute;
  left: -16px;
  background-color: #56B177;
}

.plant-item::before {
  top: 5px;
}

.plant-item.wide {
  width: 100%;
  line-height: 1.4;
}

/*------------------------------*/
/*------------------------------*/
.page-main {
  max-width: 1100px;
  padding: 50px;
  background-color: #fff;
  margin: 0 auto 7.4rem;
}

.page-main._sitemap {
  padding: 50px 120px;
}

.page-main-wrapper {
  width: 100%;
  padding-right: 30px;
  padding-left: 30px;
}

.breadcrumb-inner {
  max-width: 1100px;
  margin: 13px auto 28px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.breadcrumb-inner a {
  font-size: 16px;
  color: #333;
}

.breadcrumb-inner .fa-home-lg-alt {
  color: #56B177;
  font-size: 16px;
}

.breadcrumb-inner span {
  display: block;
}

.breadcrumb-inner span.current-item {
  font-size: 16px;
}

.breadcrumb-separete {
  color: #A2A3A2;
  display: block;
  font-size: 13px;
  margin: 0 1em;
}

.color-wrapper {
  border-radius: 10px;
  padding: 32px 20px;
  margin-bottom: 4rem;
}

.color-wrapper-inner {
  max-width: 830px;
  padding-right: 15px;
  padding-left: 15px;
  margin: 0 auto;
}

.color-wrapper-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 24px;
}

.color-wrapper-title.small {
  font-size: 1.6rem;
  line-height: 2;
  font-weight: normal;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.color-wrapper-title.small .color-wrapper-img {
  width: 30px;
  height: 30px;
  margin-right: 16px;
}

.color-wrapper-img {
  width: 22px;
  height: 22px;
  margin-right: 10px;
}

.color-wrapper-img.triangle {
  width: 24px;
  height: 21px;
}

.color-wrapper.orange {
  background-color: #FFEAD6;
  border-radius: 0;
}

.color-wrapper.pink {
  background-color: #FFEDF2;
}

.color-wrapper.blue {
  background-color: #EDFBFF;
}

.color-wrapper.green {
  background-color: #EDFFF3;
}

.dot-list {
  margin-left: 20px;
}

.dot-item {
  font-size: 1.6rem;
  line-height: 2;
  position: relative;
}

.dot-item:not(:last-child) {
  margin-bottom: 18px;
}

.dot-item::before {
  content: '';
  width: 4px;
  height: 4px;
  border-radius: 50%;
  position: absolute;
  left: -16px;
  background-color: #FF7C00;
}

.dot-item::before {
  top: 14px;
}

.dot-item.narrow {
  margin-bottom: 0;
}

.dot-item.grey {
  margin-bottom: 0;
}

.dot-item.grey::before {
  background-color: #CCCCCC;
}

.ex {
  position: relative;
  margin-left: 94px;
}

.ex::before {
  content: '例';
  font-size: 16px;
  display: block;
  width: 78px;
  line-height: 20px;
  text-align: center;
  background-color: #fff;
  color: #FF7C00;
  border: 1px solid #FF7C00;
  border-radius: 10px;
  position: absolute;
  top: 6px;
  left: -94px;
}

.ex.wide {
  margin-left: 120px;
}

.ex.wide::before {
  left: -120px;
}

/*------------------------------*/
/*------------------------------*/
.about-img {
  max-width: 1160px;
  height: 30.5vw;
  background-image: url(../image/about-img.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  margin-left: -50px;
  margin-right: -50px;
  margin-top: -50px;
}

/*------------------------------*/
/*------------------------------*/
.feature-list {
  max-width: 900px;
  margin: 0 auto;
}

.feature-item {
  margin-bottom: 20px;
  font-size: 1.6rem;
  line-height: 2;
  position: relative;
  padding-left: 4rem;
}

.num {
  display: inline-block;
  font-size: 1.8rem;
  width: 2.5rem;
  height: 2.5rem;
  line-height: 2.5rem;
  background-color: #4A78C2;
  color: #fff;
  position: absolute;
  text-align: center;
  top: 4px;
  left: 4px;
}

.concept-img {
  max-width: 720px;
  margin: 10px auto 0;
}

.facility-item:not(:last-child) {
  margin-bottom: 50px;
}

.facility-item:not(:last-child) .media-img {
  margin-right: 50px;
  max-height: 280px;
}

/*------------------------------*/
/*------------------------------*/
.carry-item {
  font-size: 1.6rem;
  position: relative;
  margin-bottom: 20px;
}

.carry-item::before {
  content: '';
  width: 4px;
  height: 4px;
  border-radius: 50%;
  position: absolute;
  left: -16px;
  background-color: #F7B129;
}

.carry-copy {
  font-size: 1.8rem;
  line-height: 1.8;
  font-weight: bold;
  text-align: center;
  padding: 20px;
  border-top: 1px solid #FF7C00;
  border-bottom: 1px solid #FF7C00;
}

.carry-btn-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  margin-top: 40px;
}

.carry-btn-wrapper .btn-long {
  margin-bottom: 20px;
}

.carry-transparent-box {
  width: 320px;
  height: 50px;
}

.carry-flow-list {
  margin-top: 6rem;
  width: 100%;
}

.carry-flow-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 60px;
}

.carry-flow-item:not(:last-of-type) {
  position: relative;
}

.carry-flow-item:not(:last-of-type)::after {
  content: '';
  background-image: url(../image/orange-triangle.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 24px;
  height: 20px;
  position: absolute;
  left: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  bottom: -50px;
}

.carry-flow-num {
  color: #fff;
  font-size: 2.1rem;
  background-color: #F08812;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 18px;
  padding-left: 18px;
}

.carry-flow-txt {
  border: 1px solid #F08812;
  padding: 20px 18px;
  width: 100%;
}

a.kami-link {
  color: #56B177;
  -webkit-transition: .3s;
  transition: .3s;
  text-decoration: underline;
}

a.kami-link:hover {
  opacity: .7;
}

.youtube-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.youtube-contents {
  width: 44.4%;
}

.youtube-contents iframe {
  width: 100%;
  aspect-ratio: 16 / 12;
}

.youtube-block {
  background-color: #4A78C2;
  width: 100%;
  height: 200px;
}

.dot-list-wrapper {
  margin-top: 20px;
}

/*------------------------------*/
/*------------------------------*/
.prohibit-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr 1fr;
      grid-template-columns: 1fr 1fr 1fr;
  -webkit-column-gap: 50px;
          column-gap: 50px;
  row-gap: 40px;
}

.prohibit-title {
  position: relative;
  font-size: 2rem;
  font-weight: bold;
  margin-left: 18px;
  margin-bottom: 12px;
}

.prohibit-title::before {
  content: '';
  width: 4px;
  height: 4px;
  border-radius: 50%;
  position: absolute;
  left: -16px;
  background-color: #A48FF7;
}

.prohibit-title::before {
  top: 6px;
}

/*------------------------------*/
/*------------------------------*/
.tour-list {
  margin-bottom: 90px;
}

.tour-copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 660px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 60px auto 46px;
}

.tour-copy-wrapper {
  border-top: 5px solid #8DC950;
  border-bottom: 5px solid #8DC950;
  margin-bottom: 36px;
}

.tour-copy-img {
  width: 240px;
  height: 58px;
}

.tour-copy-txt {
  font-size: 2.4rem;
  font-weight: bold;
}

.tour-item {
  padding-top: 30px;
  padding-bottom: 30px;
}

.tour-item:nth-child(2n) {
  background-color: #FFFBE6;
  margin-left: -50px;
  margin-right: -50px;
}

.tour-item:nth-child(2n) .media.tour {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  max-width: 1000px;
  padding-right: 50px;
  padding-left: 50px;
}

.tour-item:nth-child(2n) .media.tour .media-img {
  margin-right: 0;
  margin-left: 30px;
}

.flag {
  width: 142px;
  left: 34px;
  margin-bottom: 16px;
}

.other-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr 1fr;
      grid-template-columns: 1fr 1fr 1fr;
  -webkit-column-gap: 50px;
          column-gap: 50px;
  row-gap: 24px;
}

.other-flag {
  width: 30px;
  height: 35px;
  margin-right: 12px;
}

/*------------------------------*/
/*------------------------------*/
.access-map {
  margin-top: 34px;
}

.google-map {
  margin-top: 34px;
  max-width: 900px;
  width: 100%;
  height: 40.4vw;
  max-height: 450px;
}

/*------------------------------*/
/*------------------------------*/
.link-item {
  padding-left: 60px;
  padding-top: 18px;
  padding-bottom: 26px;
  background-image: radial-gradient(circle at 1px center, #CBC6B4, #CBC6B4 1px, transparent 1px, transparent 100%);
  background-position: center bottom;
  background-repeat: repeat-x;
  background-size: 5px 6px;
}

.link-item a {
  font-size: 1.6rem;
  line-height: 1.6;
  color: #56B177;
  text-decoration: underline;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s;
}

.link-item a:hover {
  opacity: .7;
}

.link-item a::before {
  content: '';
  background-image: url(../image/circled-arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 20px;
  height: 20px;
  position: absolute;
  left: -37px;
  top: -2px;
}

/*------------------------------*/
/*------------------------------*/
.sitemap-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.sitemap-icon {
  width: 35px;
  height: 22px;
  margin-right: 22px;
  margin-top: 5px;
}

.sitemap-icon-item {
  margin-bottom: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.sitemap-icon-item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #333;
  -webkit-transition: .3s;
  transition: .3s;
}

.sitemap-icon-item a:hover {
  opacity: .7;
}

.sitemap-icon-item::before {
  content: '';
  display: inline-block;
  width: 26px;
  height: 1px;
  background-color: #ACA488;
  margin-right: 14px;
}

.sitemap-icon-item-wrapper {
  border-left: 1px solid #ACA488;
  height: 220px;
}

.sitemap-icon-list {
  margin-top: 28px;
  margin-right: 120px;
}

.sitemap-arrow-list {
  margin-top: 34px;
}

.sitemap-arrow-item {
  margin-bottom: 30px;
}

.sitemap-arrow-item a {
  font-size: 16px;
  color: #333;
  position: relative;
  -webkit-transition: .3s;
  transition: .3s;
}

.sitemap-arrow-item a:hover {
  opacity: .7;
}

.sitemap-arrow-item a::before {
  content: '';
  background-image: url(../image/arrow-green.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 5px;
  height: 10px;
  position: absolute;
  top: 3px;
  left: -19px;
}

.home-icon {
  color: #56B177;
  margin-right: 10px;
}

/*------------------------------*/
/*------------------------------*/
.post-date {
  font-size: 1.6rem;
  margin-bottom: 20px;
  display: block;
}

.aside {
  max-width: 1100px;
  padding: 50px;
  background-color: #fff;
  margin: 0 auto 7.4rem;
}

.aside-item:not(:last-of-type) {
  margin-bottom: 64px;
}

.aside-item-list {
  max-width: 960px;
  padding-right: 30px;
  padding-left: 30px;
}

.aside-item-list li {
  padding-bottom: 20px;
  border-bottom: 1px solid #CBC6B4;
}

.aside-item-list li:not(:last-of-type) {
  margin-bottom: 22px;
}

.aside-item-list li a {
  font-size: 1.6rem;
  text-decoration: underline;
  color: #3C9B51;
  -webkit-transition: .3s;
  transition: .3s;
}

.aside-item-list li a:hover {
  opacity: .7;
}

/*------------------------------*/
/*------------------------------*/
.archive-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.archive-list-wrapper {
  max-width: 1100px;
  margin: 0 auto 20px;
}

.archive-item {
  padding: 48px 22px;
  width: 32%;
  height: 230px;
  margin-bottom: 32px;
  background-color: #fff;
  position: relative;
}

.archive-item:nth-child(3n-1) {
  margin: 0 2%;
}

.archive-item-wrapper {
  -webkit-transition: .3s;
  transition: .3s;
}

.archive-item-wrapper:hover {
  opacity: .7;
}

.archive-item-category {
  color: #fff;
  font-size: 18px;
  line-height: 42px;
  width: 140px;
  text-align: center;
  position: absolute;
  top: 0;
  right: 0;
}

.archive-item-category.news, .archive-item-category.event {
  background-color: #56B177;
}

.archive-item-category.progress {
  background-color: #54A7D4;
}

.archive-item-category.community {
  background-color: #EDA332;
}

.archive-item-category.faq {
  background-color: #7EBF3B;
}

.archive-item-category.data {
  background-color: #E97959;
}

.archive-item-date {
  font-size: 16px;
  margin-bottom: 18px;
  color: #333;
  display: block;
}

.archive-item p {
  font-size: 1.6rem;
  color: #333;
}

.wp-pagenavi {
  font-size: 14px;
  text-align: center;
}

.wp-pagenavi a, .wp-pagenavi span {
  color: grey;
}

/*------------------------------*/
/*------------------------------*/
.company-wrapper {
  max-width: 400px;
  width: 100%;
}

.company-wrapper.green {
  color: #0A4534;
}

.company-wrapper.white {
  color: #fff;
}

.company-wrapper.white .company-name {
  margin-top: -10px;
}

.company-wrapper.grey {
  -webkit-transition: .3s;
  transition: .3s;
}

.company-wrapper.grey .company-txt {
  font-size: 15px;
}

.company-wrapper.grey .company-name {
  font-size: 24px;
  margin-top: -10px;
}

.company-wrapper.grey a {
  color: #656766;
}

.company-wrapper.grey:hover {
  opacity: .7;
}

.company-txt {
  font-size: 15px;
}

.company-name {
  font-size: 24px;
  font-weight: bold;
}

/*------------------------------*/
/*------------------------------*/
@media screen and (max-width: 960px) {
  html {
    font-size: 58.6%;
  }
  .header-inner {
    padding: 20px 30px 16px 30px;
    height: 86px;
  }
  .burger-btn {
    display: block;
  }
  .page-gnav {
    display: none;
  }
  .front-gnav {
    display: none;
  }
  .header-inner-wrapper._fix {
    display: block;
  }
  .footer-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .footer-list,
  .footer-info {
    margin-right: auto;
    margin-left: auto;
  }
  .footer-info {
    margin-top: 14px;
  }
  .page-section {
    margin-top: 38px;
  }
  .page-section-inner {
    margin-bottom: 44px;
  }
  .section._mt-xl {
    margin-bottom: 12px;
  }
  .section-inner.carry {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .section-inner.small {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .page-title-wrapper {
    margin-top: 86px;
  }
  .circle-title {
    margin-bottom: 2.4rem;
  }
  .circle-title::before {
    top: 6px;
  }
  .btn-long {
    margin-left: auto;
    margin-right: auto;
  }
  .mv {
    margin-top: 86px;
  }
  .cat-btn-wrapper {
    margin-bottom: 80px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .cat-btn-wrapper .cat-btn {
    width: 45%;
    margin: 0 0 34px 0;
  }
  .cat-btn-wrapper .cat-btn:nth-child(3) {
    margin-bottom: 0;
  }
  .cat-btn-wrapper .cat-btn:nth-child(4) {
    margin-bottom: 0;
  }
  .town-btn-wrapper {
    margin-bottom: 0;
  }
  .plant-contents {
    margin-right: auto;
    margin-left: auto;
    width: 80%;
  }
  .plant-contents:first-child {
    margin-bottom: 50px;
  }
  .about-img {
    height: 34.5vw;
  }
  .caution-img {
    width: 22px;
    height: 22px;
    margin-top: 3px;
  }
  .ex {
    margin-left: 0;
    margin-top: 33px;
  }
  .ex::before {
    top: -28px;
    left: 0;
  }
  .ex.wide {
    margin-left: 0;
  }
  .ex.wide::before {
    left: -15px;
  }
  .dot-list-wrapper .dot-item.narrow {
    margin-left: 18px;
  }
  .dot-list-wrapper .ex.wide::before {
    left: 0;
  }
  .caution-wrapper.orange {
    margin-top: -30px;
  }
  .carry-btn-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-left: auto;
  }
  .youtube-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .youtube-contents {
    width: 60%;
    margin-left: auto;
    margin-right: auto;
  }
  .youtube-contents:first-child {
    margin-bottom: 40px;
  }
  .carry-contents {
    margin-right: auto;
    margin-left: auto;
    width: 80%;
  }
  .carry-contents:first-child {
    margin-bottom: 60px;
  }
  .num {
    left: 0;
  }
  .prohibit-list {
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
  }
  .tour-copy {
    margin: 40px auto 30px;
  }
  .feature-item {
    padding-left: 5vw;
  }
  .media.introduction,
  .media.tour {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .media.introduction .media-img,
  .media.tour .media-img {
    width: 100%;
  }
  .tour-copy {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .tour-copy-img {
    margin-bottom: 30px;
  }
  .tour-item:nth-child(2n) .media.tour {
    margin-left: 50px;
    margin-right: 50px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-right: 0;
    padding-left: 0;
  }
  .tour-item:nth-child(2n) .media.tour .media-img {
    margin-left: 0;
    width: 100%;
  }
  .other-list {
    -ms-grid-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
  }
  .other-title {
    margin-bottom: 8px;
  }
  .archive-item {
    padding: 46px 22px;
    width: 48%;
  }
  .archive-item:nth-child(3n-1) {
    margin: 0;
  }
  .archive-item:nth-child(2n) {
    margin-left: 2%;
  }
  ._mt-x {
    margin-top: 40px !important;
  }
  ._mt-xl {
    margin-top: 82px !important;
  }
  ._col960 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  ._col960 .media-img {
    width: 100%;
  }
  .sitemap-wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .sitemap-arrow-list {
    margin-top: 70px;
    margin-left: 16px;
  }
  .sitemap-icon-list {
    margin-top: 37px;
    margin-right: 0;
  }
}

/*------------------------------*/
/*------------------------------*/
@media screen and (max-width: 760px) {
  .mv-copy {
    margin-top: 154px;
    margin-left: -30px;
    width: 514px;
  }
  .news-title {
    width: 100%;
    margin-top: 12px;
  }
  .transparent-btn {
    display: none;
  }
  .tour-list {
    margin-bottom: 50px;
  }
  .archive-item-category {
    line-height: 30px;
    font-size: 14px;
    width: 120px;
  }
  .page-main._sitemap {
    padding: 50px 30px;
  }
}

/*------------------------------*/
/*------------------------------*/
@media screen and (max-width: 520px) {
  html {
    font-size: 54.7%;
  }
  .page-section-inner {
    margin-bottom: 36px;
    padding-right: 0;
    padding-left: 0;
  }
  .section-inner {
    padding-left: 15px;
    padding-right: 15px;
  }
  .section {
    margin-bottom: 60px;
  }
  .media-body {
    padding-top: 16px;
  }
  .media {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .media-img {
    width: 100%;
    margin-right: 0;
  }
  .block-title {
    margin-bottom: 18px;
  }
  .page-title {
    line-height: 46px;
    font-size: 20px;
  }
  .page-title-img {
    width: 20px;
    height: 20px;
  }
  .circle-title {
    font-size: 17px;
    margin-bottom: 18px;
    line-height: 1.4;
  }
  .circle-title::before {
    width: 18px;
    height: 18px;
    top: 2px;
  }
  .facility-title {
    font-size: 16px;
    margin-bottom: 8px;
  }
  .color-wrapper-title,
  .tour-item-title,
  .tour-item-title {
    font-size: 16px;
  }
  .archive-item-title {
    font-size: 17px;
    margin-bottom: 7px;
  }
  .post-title {
    margin-bottom: 16px;
    line-height: 1.4;
  }
  .company-wrapper.grey .company-txt {
    font-size: 12px;
  }
  .company-wrapper.grey .company-name {
    font-size: 18px;
    line-height: 2.4;
  }
  .header-inner {
    padding: 6px 15px;
    height: auto;
  }
  #burger-nav {
    width: 100vw;
  }
  .burger-nav-list {
    padding-top: 64px;
  }
  .burger-nav-item a {
    font-size: 14px;
    padding-top: 14px;
    padding-bottom: 14px;
  }
  .burger-nav-item a::before {
    top: 15px;
  }
  .footer-list {
    padding-right: 0;
    padding-left: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 100%;
  }
  .footer-item {
    border-top: 1px solid #fff;
    width: 100%;
    padding-left: 20px;
  }
  .footer-item a {
    padding-top: 22px;
    font-size: 16px;
  }
  .footer-item a::before {
    top: 42%;
  }
  .footer-item.border {
    border-bottom: 1px solid #fff;
  }
  .footer-info {
    margin: 50px 0 0 0;
  }
  .footer-inner {
    padding-right: 15px;
    padding-left: 15px;
  }
  .btn-white.pdf {
    margin-top: 20px;
  }
  .btn-long.orange:last-of-type {
    margin-bottom: 0;
  }
  .transparent-btn {
    display: none;
  }
  .breadcrumb-inner span.current-item,
  .breadcrumb-inner span {
    font-size: 12px;
  }
  .breadcrumb-inner {
    margin-bottom: 20px;
  }
  .cat-btn-wrapper {
    margin-bottom: 60px;
  }
  .cat-btn-wrapper .cat-btn {
    width: 86%;
    margin-bottom: 20px !important;
  }
  .movie-wrapper {
    margin-bottom: 36px;
  }
  .plant-item {
    width: 134px;
  }
  .plant-contents:first-child {
    margin-bottom: 30px !important;
  }
  .mv {
    background: url(../image/mv-sp.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    height: 105vw;
  }
  .mv-wrapper {
    display: none;
  }
  .plant-contents {
    width: 100%;
  }
  .plant-contents:first-child {
    margin-bottom: 34px;
  }
  .news-title {
    margin-left: 0;
  }
  .page-title-wrapper, .mv {
    margin-top: 69px;
  }
  p, .ex::before {
    font-size: 1.4rem;
  }
  .page-main-wrapper {
    padding-right: 15px;
    padding-left: 15px;
  }
  .page-main {
    padding: 30px 15px 30px 15px;
    margin-bottom: 40px;
  }
  .table {
    font-size: 12px;
  }
  .table td {
    padding: 12px;
  }
  .company-name {
    font-size: 20px;
  }
  .company-txt {
    font-size: 14px;
  }
  .about-img {
    margin-left: -15px;
    margin-right: -15px;
    margin-top: -30px;
  }
  .table.green th {
    width: 28%;
  }
  .concept-img {
    margin-top: -12px;
  }
  .facility-title {
    margin-left: 20px;
  }
  .feature-item {
    padding-left: 8vw;
    font-size: 1.4rem;
  }
  .carry-copy {
    font-size: 1.4rem;
  }
  .carry-btn-wrapper {
    margin-top: 30px;
  }
  .color-wrapper-inner {
    padding-right: 0;
    padding-left: 0;
  }
  .dot-item {
    font-size: 1.4rem;
  }
  .dot-item::before {
    top: 10px;
  }
  .color-wrapper.orange {
    margin-bottom: 20px;
  }
  .carry-flow-list {
    margin-top: 22px;
  }
  .carry-flow-item:not(:last-of-type) {
    margin-bottom: 46px;
  }
  .carry-flow-item:not(:last-of-type)::after {
    -webkit-transform: translateY(-90%);
            transform: translateY(-90%);
  }
  .carry-transparent-box {
    display: none;
  }
  .carry-flow-txt {
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .carry-flow-list {
    margin-bottom: 30px;
  }
  .carry-contents {
    width: 100%;
  }
  .youtube-contents {
    width: 100%;
  }
  .table.orange th {
    width: 40%;
  }
  .tour-copy-img {
    width: 200px;
    height: auto;
  }
  .tour-copy-txt {
    font-size: 1.6rem;
  }
  .tour-item:nth-child(2n) {
    margin-left: -15px;
    margin-right: -15px;
  }
  .tour-item:nth-child(2n) .media.tour {
    margin-left: 15px;
    margin-right: 15px;
  }
  .tour-list {
    margin-bottom: 50px;
  }
  .other-list {
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr;
  }
  .color-wrapper-title.small {
    font-size: 1.4rem;
  }
  .prohibit-title {
    font-size: 1.2rem;
    margin-bottom: 6px;
    margin-left: 5px;
    white-space: nowrap;
  }
  .prohibit-title::before {
    left: -10px;
    top: 3px;
  }
  .prohibit-list {
    grid-column-gap: 10px;
    grid-row-gap: 20px;
  }
  .prohibit-list p {
    font-size: 10px;
    line-height: 1.4;
    margin-top: 2px;
  }
  .page-title-img.lock {
    width: 18px;
    height: 22px;
  }
  .sitemap-icon-list {
    margin-top: 18px;
  }
  .sitemap-icon-item-wrapper {
    height: 188px;
  }
  .sitemap-arrow-item {
    margin-bottom: 20px;
  }
  .sitemap-arrow-item a {
    font-size: 1.4rem;
  }
  .archive-item {
    height: 170px;
    padding: 28px 22px;
    width: 100%;
  }
  .archive-item:nth-child(2n) {
    margin-left: 0;
    margin-bottom: 32px;
  }
  .archive-item:nth-child(3n-1) {
    margin-bottom: 32px;
  }
  .archive-item-date {
    font-size: 14px;
    margin-bottom: 8px;
  }
  .archive-list-wrapper {
    margin-bottom: 0;
  }
  .aside-item-list a {
    line-height: 1.4;
  }
  .aside {
    padding-right: 15px;
    padding-left: 15px;
  }
  ._mt-m {
    margin-top: 10px !important;
  }
  ._mt-xl {
    margin-top: 32px !important;
  }
  .google-calendar {
    height: 320px;
  }
}
/*# sourceMappingURL=style.css.map */