@charset "utf-8";
/* 初期化 */
html, body { 
  height: 100%;
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
}
a {
  text-decoration: none;
}
img { 
  border: none;
  vertical-align: bottom;
 }
ul {
  padding-left: 0!important;
}
.l-article {
  max-width: 100%!important;
}
.l-container {
  max-width: 100%!important;
  padding: 0!important;
}
.l-content__body {
  margin: 0!important;
}
.tab {
  display: none;
}
.tabbr {
  display: none;
}
.spbr {
  display: none;
}
.sp {
  display: none!important;
}
@media screen and (max-width: 768px) {
  .sp {
    display: block!important;
  }
  .pc {
    display: none;
  }
}
.fadeInUpTrigger{
	opacity: 0;
}
.fadeInTrigger{
	opacity: 0;
}
blockquote {
  border-left: none!important;

}

/*////////////// common //////////////*/

/*////////////// font //////////////*/

body {
  font-family: "Noto Sans JP", sans-serif!important;
  font-style: normal;
}
.serif {
  font-family: 'Noto Serif JP', serif;
}
.osw {
  font-family: "Oswald", sans-serif;
  font-weight: 400;
  font-style: normal;
}
/*////////////// font //////////////*/

:root {
  --black-col: #000;
  --white-col: #fff;
  --text-col: #333333;
  --back-col: #F2F2EB;
  --back-col2: #FCFFF8;
  --main-col: #70B52C;
  --main-col2: #49751F;
  --point-col: #DE8824;
  --point-col2: #907E66;
  --point-col3: #BDDE9B;
  --gray-col: #C1C1C1;  
}
.blue {
  color: var(--main-col);
}
.white {
  color: var(--white-col)
}

.flex-content {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.flex-content .detail-text {
  margin: .5em 0 0;
}
.flex-bet {
  display: flex;
  justify-content: space-between;
}
.flex {
  display: flex;
}
.relative {
  position: relative;
}
img {
  width: 100%;
}
.drop-shadow {
  filter: drop-shadow(3px 3px 7px #ccc);
}
.o-container {
  max-width: 1100px;
  margin: 0 auto;
}
@media screen and (max-width: 1270px) {
  .o-container {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .o-container {
    padding-left: 1rem!important;
    padding-right: 1rem!important;
  }
}
.o-container2 {
  width: 85%;
  max-width: 1400px;
  margin: 0 auto;
}
@media screen and (max-width: 1270px) {
  .o-container2 {
    width: 90%;
  }
}
@media screen and (max-width: 768px) {
  .o-container2 {
    width: 93%;
  }
}
@media screen and (max-width: 480px) {
  .o-container2 {
    width: 95%;
  }
}
.section-content {
  padding: 3em 0;
}
.page-content {
  padding: 3em 0 0;
}
.back-col {
  background: var(--back-col);
}

.content-box {
  padding-top: 1em;
  padding-bottom: 4em;
}
.content-h2 {
  text-align: center;
  padding: 3em 0 2em;
  .en {
    color: var(--main-col);
    font-size: 1.5em;
    &.deep {
      color: var(--main-col2);
    }
  }
  .jp {
    color: var(--text-col);
    font-size: 2em;
    letter-spacing: .1em;
  }
}
@media screen and (max-width: 768px) {
  .content-h2 {
    .en {
      font-size: 1.3em;
    }
    .jp {
      font-size: 1.4em;
    }
  }
}
.p-text {
  font-weight: 400;
  letter-spacing: .1em;
  font-size: .9em;
  margin-top: -.5em;

}
.section-content__inner .detail-text {
  line-height: 2.7em;
}
thead td, thead th {
  color: var(--text-col) !important;
}
.btn01 {
  a {
    display: inline-block;
    .btn01__inner {
      display: flex;
      justify-content: space-between;
      text-align: left;
      margin: 3em 0;
      width: fit-content;
      padding: .5em 1em .5em 1em;
      background: var(--point-col);
      border: 2px solid ;
      border-color: var(--point-col);
      transition: .3s;
      .btn-text {
        color: var(--white-col);
        font-weight: 600;
        letter-spacing: .1em;
        width: fit-content;
        padding-right: 2em;
        transition: .3s;
      }
      .btn-icon {
        width: fit-content;
        color: var(--white-col);
        transition: .3s;
      }
    }
    &:hover {
      .btn01__inner {
        background: none;
        .btn-text {
          color: var(--point-col);
        }
        .btn-icon {
          color: var(--point-col);
        }

      }
      
    }
  }
  

}


@media screen and (max-width: 768px) {
  .btn01 .btn01__inner {
    padding: .5em 0em .5em 0em;
    margin: 2em 0;
  }
  .btn01 {
    a {
      display: inline-block;
      .btn01__inner {
        .btn-text {
          font-size: 1em;
        }
      }
    }
    
  
  }
}

@media screen and (max-width: 1270px) {
.blog-inner{
  margin-right: 2em;
  margin-left: 2em;
}
}
@media screen and (max-width: 768px) {
  .blog-inner{
    margin-right: 1em;
    margin-left: 1em;
  }
}
@media screen and (max-width: 480px) {
  .blog-inner{
    margin-right: .5em;
    margin-left: .5em;
  }
}



.masked-img {
  width: 100%;
  height: auto;
}



/*////////////// common end //////////////*/

/*////////////// header //////////////*/
/* .sp-header {
  display: none;
} */
.l-header {
  background: none!important;
  z-index: 9999 !important;
  
  
  position: fixed;
  
}
.l-header__body {
  padding: 0em 2em;
  background: var(--white-col)!important;
  border-radius: 10px;
  width: 95%!important;
  margin: 1em auto;

}

@media not all and (min-width: 1000px) {
  .l-headerUnder, .l-header__bar, .l-header__left, .l-header__right {
      display: block!important;
  }
}

.l-header .l-header__right .nav {
  display: flex;
  list-style: none;
}
.l-header .l-header__right .nav li a .big {
  font-weight: 600;
  letter-spacing: .1em;
  color: var(--text-col);
  font-size: .9em;
  transition: .3s;
}
.l-header .l-header__right .nav li a:hover {
  .big {
    color: var(--point-col);
  }
}
.l-header .l-header__right .nav li {
  margin: auto 0;
  margin-left: 2em;
}
@media screen and (max-width: 1270px) {
  .l-header .l-header__right .nav li a .big {
    letter-spacing: .1em;
    font-size: .8em;
  }
  .l-header .l-header__right .nav li {
    margin-left: .8em;
  }
}
/* ヘッダーボタン */
.l-header .l-header__right .nav__inner_box a {
  display: flex;
  padding: .5em 1em;
  background: var(--point-col);
  color: var(--white-col);
  letter-spacing: .2em;
  font-weight: 600;
  transition: .3s;
}

@media screen and (max-width: 1270px) {
  .l-header .l-header__right .nav__inner_box a {
    font-size: .9em;
  }
}
.l-header .l-header__right .nav__inner_box.contact a {
  background: var(--main-col);
}
.l-header .l-header__right .nav__inner_box a:hover {
  background: var(--main-col);
}
.l-header .l-header__right .nav__inner_box.contact a:hover {
  background: var(--point-col);
}
.l-header .l-header__right .nav__inner_box a .icon {
  margin-right: .5em;
  align-items: center;
  padding-top: .1em;
  display: flex;
  justify-content: center;
}

.header-top {
  vertical-align: top;
}
.header-logo {
  width: 11.5rem;
  padding: .5em 0;
}
@media screen and (max-width: 999px) {
  .header-logo {
    width: 9rem;
    padding: .5em 0;
  }
}
@media screen and (max-width: 768px) {
  .header-logo {
    width: 7rem;
    padding: 0;
  }
}
@media screen and (max-width: 480px) {
  .header-logo {
    width: 6rem;
    padding: 0;
  }
}
.l-header__right {
  width: fit-content
}
.l-header__body {
  display: flex!important;
  justify-content: space-between;
}
@media screen and (max-width: 480px) {
  .l-header__body {
    border-radius: 7px;
  }
}

/* ハンバーガーメニューのデザイン */
.hamburger-menu {
  display: none;
  flex-direction: column;
  cursor: pointer;
  width: 30px;
  height: 20px;
  justify-content: space-between;
  position: relative;
  z-index: 10000;
  margin:  1em auto;
}
.hamburger-menu span {
  display: block;
  width: 100%;
  height: 1.5px;
  background-color: var(--main-col);
  transition: 0.3s;
}

/* ナビゲーションのデフォルト（PC表示） */
.nav-container {
  display: flex;
  
}

@media screen and (max-width: 999px) {
  .hamburger-menu {
    display: flex;
    margin: 1.5em 0;
  }
@media screen and (max-width: 800x) {
  .hamburger-menu {
    margin: 1em 0;
    
}

}
@media screen and (max-width: 768px) {
  .hamburger-menu {
    margin: 1em 0;
    
}
}
@media screen and (max-width: 480px) {
  .hamburger-menu {
    margin: .8em 0;
  }
}

.nav-container {
  position: absolute;
  top: 100%;
  right: 0;
  width: 50%;
  background: var(--white-col);
  flex-direction: column;
  text-align: center;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  
  /* ふわっとアニメーション用 */
  opacity: 0;
  transform: translateY(-10px);
  visibility: hidden; /* 透明状態でもクリックできないように */
  transition: opacity 0.4s ease-out, transform 0.4s ease-out, visibility 0.4s;
}
@media screen and (max-width: 768px) {
  .nav-container {
    width: 80%;
  }
}
@media screen and (max-width: 480px) {
  .nav-container {
    width: 100%;
  }
}


.nav-container.active {
  opacity: 1;
  transform: translateY(0);
  visibility: visible;
}

.nav {
    flex-direction: column;
    width: 100%;
}

.nav li {
    padding: .5em 0;
}
.nav .nav__inner_box {
  width: 50%;
}
.l-header .l-header__right .nav li {
  margin-left: auto;
  margin: auto;
}
.nav .nav__inner_box {
  padding-bottom: 0;
}
.nav .nav__inner_box:last-of-type {
  padding-bottom: 3em;
}
.nav .nav__inner_box a {
  justify-content: center;
}


/* ハンバーガーアイコンのアニメーション */
.hamburger-menu.active span:nth-child(1) {
    transform: translateY(9px) rotate(45deg);
}

.hamburger-menu.active span:nth-child(2) {
    opacity: 0;
}

.hamburger-menu.active span:nth-child(3) {
    transform: translateY(-10px) rotate(-45deg);
}
  

}

/*////////////// header end //////////////*/

/*////////////// footer //////////////*/
.l-footer {
 background: var(--back-col)!important;
 padding: 3em 0 3em;
}

.footer__inner {
  width: 80%;
  margin: auto;
  
  .logo {
    width: 40%;
    padding-bottom: 1em;
    height: fit-content;
    .logo__inner {
      width: 50%;
      .insta {
        display: inline-block;
        margin: auto 0 0;
        padding-bottom: .5em;
        padding-left: .5em;
      }
    }
    .copy {
      text-align: left;
      font-size: .8em;
      padding-top: 5em;
      color: var(--text-col);
      letter-spacing: .2em;
      font-weight: 500;
    }
  }
  .footer-menu {
    padding-top: 1em;
    width: 40%;
    .footer-nav__inner {
      list-style: none;
      flex-wrap: wrap;
      .nav__inner {
        width: 50%;
        padding-bottom: 1em;
        a {
          color: var(--white-col);
          font-size: .9em;
          letter-spacing: .2em;
          font-weight: 600;
          .big {
            color: var(--text-col);
          }
          
        }
      }
      
    }
    
  }
  
}
@media screen and (max-width: 999px) {
  .l-footer {
    .footer__inner {
      .logo {
        .logo__inner {
          .insta {
            padding-bottom: 0;
          }
        }
      }
      .footer-menu {
        width: 50%;
        .footer-nav__inner {
          .nav__inner {
            a {
              font-size: .8em;
            }
          }
          
        }
      }
    }
  }
}
@media screen and (max-width: 768px) {
  .l-footer {
    .footer__inner {
      width: 90%;
      flex-wrap: wrap;
      .footer-menu {
        width: 80%;
        margin: auto;
        .footer-nav__inner {
          .nav__inner {
            text-align: center;
          }
        }
        .copy {
          text-align: center;
          padding-top: 3em;
        }
      }
      .logo {
        width: 40%;
        padding-bottom: 2em;
        margin: auto;
        .logo__inner {
          justify-content: center;
          width: 100%;
        }
      }
    }
  }
  
}
@media screen and (max-width: 480px) {
  .l-footer {
    .footer__inner {
      width: 95%;
      .footer-menu {
        width: 90%;
      }
      .logo {
        width: 50%;
      }
    }
  }
}



/*////////////// footer end //////////////*/

/*////////////// mv //////////////*/
.mv {
  position: relative;
}

:root {
  --scrolldown-shadow: 1px 1px 2px rgba(0,0,0,.9);
}

/*slider設定*/
.top-slider.sp-mv {
  display: none !important;
}
.top-slider img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center bottom;
}

.top-slider .slick-list,
.top-slider .slick-track,
.top-slider .slick-track .slick-slide > div {
  height: 100%;
}
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15); /* 拡大率 */
  }
}
.top-page .mv .slide .img {
  animation: zoomUp 10s linear 0s normal both;
}




/*////////////// mv end //////////////*/


/*////////////// top-content //////////////*/
.-info-mark {
  position: relative;
  padding-bottom: 80px !important;
  &::after {
    position: absolute;
    content: "事業再構築";
    width: fit-content;
    height: fit-content;
    bottom: 1rem;
    right: 1rem;
    padding: .5em 1em;
    font-size: .9rem;
    line-height: 1;
    border: 1px solid var(--ark-color--text);
    color: var(--ark-color--text);
  }
}

:root {
  --catch-size : 1.8em;
  --catch-size02: 1.5em;
  --title-size: 1.1em;
  --content-pad: 4em;
  --content-pad-s: 2em;
  --content-w: 90%;
  --content-w2: 85%;
  --frame-size2: 25%;
  --frame-size3: 35%;
  --frame-size4: 75%;
  --frame-size: 60%;
  --illust-size: 15%;
}
.top-page {
  background: var(--white-col);
  .mv {
    position: relative;
    background: var(--back-col);
    .mv-box {
      position: relative;
      margin: auto;
      .mv__inner {
        display: inline-block;
        width: 100%;
        vertical-align: bottom;
      }
      .mv-catch {
        position: absolute;
        height: fit-content;
        /* width: 100%; */
        text-align: center;
        top: 0em;
        bottom: 0;
        right: 0em;
        left: 0;
        margin: auto;
        margin-left: 3em;
        color: var(--white-col);
        letter-spacing: .2em;
        .mv-catch__inner {
          letter-spacing: .2em;
          font-weight: 600;
          text-align: left;
          span {
            display: inline-block;
            background: var(--white-col);
            padding: .2em .5em;
          }
          &.big-catch {
            color: var(--main-col);
            font-size: 2em;
            span {
              padding: .2em .3em;
            }
            
          }
          &.sub-catch {
            color: var(--text-col);
            font-size: 1.3em;
            margin-top: 1em;
          }
        }
        
      }
    }
    .mv-catch-img {
      margin-top: -5em;
    }
  }
  
  .about {
    padding-top: var(--content-pad);
    padding-bottom:  var(--content-pad);
    position: relative;
    .about__inner {
      width: var(--content-w);
      max-width: 1500px;
      margin: auto;
      .img {
        width: 50%;
      }
      .text {
        width: 48%;
        .catch-text {
          font-size: var(--catch-size);
          font-weight: 600;
          letter-spacing: .2em;
          line-height: 1.8em;
          padding-bottom: 1em;
          .green {
            color: var(--main-col);
          }
        }
        .detail-text-box {
          .detail-text__inner {
            line-height: 2em;
            letter-spacing: .1em;
            font-weight: 400;
            .under {
              text-decoration: underline 3px solid #DE8824;
            }
          }
        }
      }
    }
    .content-illust {
      position: absolute;
      right: 0;
      bottom: 0;
      width: var(--frame-size);
    }
    
  }
   .feature {
    background-image: url(../img/top/feature-back.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    padding: 3em;
    .feature__inner {
      padding-top: 2em;
      padding-bottom: 2em;
      background: rgba(255,255,255,.8);
      .content-catch {
        width: var(--content-w);
        margin: auto;
        max-width: 1500px;
        padding-bottom: var(--content-pad);
        .main {
          color: var(--main-col2);
          font-size: var(--catch-size02);
          letter-spacing: .1em;
          font-weight: 600;
          padding: 1em 0 2em;
          text-align: center;
        }
        .sub {
          color: var(--text-col);
          line-height: 1.5em;
          letter-spacing: .1em;
          .green {
            color: var(--main-col);
          }
        }
      }
      .img {
        width: var(--content-w2);
        padding-bottom: var(--content-pad);
        margin: auto;
        max-width: 1500px;
      }
    }
   }
   .merit {
    padding-top: var(--content-pad-s);
    padding-bottom:  var(--content-pad);
    position: relative;
    .content-illust {
      position: absolute;
      top: 0;
      left: 0;
      width: var(--frame-size2);
      &.bottom {
        top: auto;
        bottom: 0;
        right: 0;
        left: auto;
        width: var(--frame-size3);
      }
    }
    .merit__inner {
      .merit-box {
        position: relative;
        width: var(--content-w);
        margin: auto;
        padding-top: var(--content-pad);
        max-width: 1500px;
        padding-bottom: var(--content-pad);
        z-index: 3;
        .row {
          width: 32%;
          background: var(--back-col);
          border-radius: 20px;
          padding: 2em;
          .img {
            width: 45%;
            margin: auto;
          }
          .title-text {
            color: var(--main-col);
            font-weight: 600;
            letter-spacing: .1em;
            font-size: var(--title-size);
            text-align: center;
            padding: 1em 0;
            line-height: 1.5em;
          }
        }
      }
    }
   }
   .issues {
    padding-top: var(--content-pad-s);
    padding-bottom: var(--content-pad);
    .issues__inner {
      width: var(--content-w);
      margin: auto;
      max-width: 1500px;
      .catch-text {
        font-weight: 600;
        letter-spacing: .1em;
        color: var(--text-col);
        text-align: center;
        padding: 1em 0 3em;
      }
      .issues-box {
        .row {
          background: var(--white-col);
          padding: 1em ;
          border-radius: 20px;
          margin-bottom: 2em;
          .title-box {
            position: relative;
            padding: 0 1em;
            border-bottom: 1px solid;
            border-color: var(--main-col);
            .title-box__inner {
              .num {
                width: var(--content-w2);
                width: fit-content;
                padding-right: 2em;
                p {
                  text-align: center;
                  font-size: var(--title-size);
                  letter-spacing: .1em;
                  color: var(--main-col);
                  font-weight: 600;
                }
                .num__inner {
                  text-align: center;
                  font-size: 4em;
                  font-weight: 600;
                  color: var(--main-col);
                  letter-spacing: .1em;
                  margin-top: -.2em;
                }
              }
              .issues-title {
                font-size: var(--catch-size02);
                color: var(--text-col);
                letter-spacing: .1em;
                line-height: 1.5em;
                font-weight: 600;
                margin: auto 0 .5em;
              }
              
            }
            .img {
              position: absolute;
              width: var(--illust-size);
              right: 0;
              top: 0;
            }
            
          }
          .detail-text {
            letter-spacing: .1em;
            padding: 2em 2em 1em;
            .orange {
              color: var(--point-col);
              font-weight: 600;
            }
          }

          
        }
      }
    }
   }
   .works {
    background: var(--back-col2);
    padding-top: var(--content-pad-s);
    padding-bottom: var(--content-pad);
    position: relative;
    .content-illust {
      position: absolute;
      top: 0;
      right: 0;
      width: var(--frame-size3);
      transform: scale(1, -1);
      &.bottom {
        top: auto;
        bottom: 0;
        left: 0;
        right: auto;
        width: var(--frame-size4);
        transform: none;
      }
    }
    .works__inner {
      .works-box {
        width: var(--content-w);
        margin: auto;
        max-width: 1500px;
        .row {
          padding-bottom: var(--content-pad-s);
          .works-title {
            text-align: center;
            .works-title__inner {
              font-size: 1.5em;
              letter-spacing: .1em;
              font-weight: 600;
              color: var(--main-col2);
              display: inline-block;
              border-bottom: 2px solid;
              border-color: var(--main-col);
              margin-bottom: 2em;
              margin-top: var(--content-pad-s);
            }
          }
          .works-ba {
            padding-top: var(--content-pad-s);
            .content {
              margin: auto;
              border-radius: 30px;
              border: 6px solid;
              justify-content: space-between;
              position: relative;
              img {
                border-radius: 25px;
              }
              .text-content {
                font-weight: 600;
                font-size: 2em;
                letter-spacing: .1em;
                position: absolute;
                top: -1.4em;
                left: .2em;
              }
            }
            .content02 {
              margin: auto;
              width: 13%;

            }
            .works-b {
              width: 34%;
              border-color: var(--point-col3);
              .before {
                color: var(--main-col);
              }
            }
            .works-a {
              width: 45%;
              border: 10px solid;
              border-color: var(--point-col);
              img {
                border-radius: 20px;
              }
              .after {
                font-size: 2.5em;
                color: var(--point-col);
              }
            }
          }
        }
      }
    }
    .btn01 {
      text-align:  center;
      margin-bottom: var(--content-pad-s);
    }
   }
   
   .company {
    border-bottom: 1px solid;
    border-color: var(--text-col);
    .content-illust {
      bottom: auto;
      top: 0;
      transform: scale(1, -1);
    }
    .about__inner {
      padding-top: var(--content-pad);
      .img {
        width: 45%;
      }
      .text {
        margin: auto;
        .flex {
          padding-bottom: 1em;
          padding-left: 1em;
          .name {
            width: 30%;
            font-weight: 600;
            font-size: 1.1em;
            letter-spacing: .1em;
          }
          .detail {
            font-weight: 600;
            a {
              color: var(--text-col);
              transition: .3s;
              &:hover {
                color: var(--point-col);
              }
            }
          }
        }
        
      }
    }
    .btn01 {
      text-align: center;
      .btn01__inner {
        margin-bottom: 1em;
      }
    }
   }
}
@media screen and (max-width: 1270px) {
  :root {
    --catch-size : 1.2em;
    --catch-size02: 1.1em;
    --title-size: 1em;
    --content-pad: 3em;
    --content-pad-s: 2em;
    --content-w: 95%;
    --content-w2: 90%;
    --frame-size2: 25%;
    --frame-size3: 35%;
    --frame-size4: 75%;
    --frame-size: 50%;
    --illust-size: 15%;
  }
  .top-page {
    .mv {
      .mv-box {
        .mv-catch {
          .mv-catch__inner {
            &.big-catch {
              font-size: 1.5em;
              
            }
            &.sub-catch {
              font-size: 1.2em;
            }
          }
          
        }
      }
      .mv-catch-img {
        margin-top: -2.5em;
      }
    }
    .about {
      .about__inner {
        .text {
          width: 49%;
          .catch-text {
            letter-spacing: .1em;
            .green {
              color: var(--main-col);
            }
          }
        }
      }
      
    }
     .feature {
      padding: 2em;
      .feature__inner {
        padding-top: 0em;
        padding-bottom: 1.5em;
        .img {
          width: var(--content-w);
        }
      }
     }
     .merit {
      .merit__inner {
        .merit-box {
          .row {
            width: 33%;
            border-radius: 15px;
            padding: 1em .5em;
            .title-text {
              text-align: center;
            }
            .detail-text {
              font-size: .9em;
            }
          }
        }
      }
     }
     .issues {
      .issues__inner {
        .issues-box {
          .row {
            .title-box {
              position: relative;
              padding: 0 1em;
              border-bottom: 1px solid;
              border-color: var(--main-col);
              .title-box__inner {
                .num {
                  padding-right: 1em;
                  .num__inner {
                    font-size: 3em;
                  }
                }
              }
            }
            .detail-text {
              font-size: .9em;
            }
  
            
          }
        }
      }
     }
     .company {
      .about__inner {
        .text {
          margin: auto;
          .flex {
            .name {
              width: 35%;
              font-size: 1em;
            }
            .detail {
              width: 65%;
              font-size: .9em;
            }
          }
          
        }
      }
     }
  }
 
}
@media screen and (max-width: 768px) {
  :root {
    --frame-size2: 35%;
    --frame-size3: 45%;
    --frame-size4: 80%;
    --frame-size: 55%;
    --illust-size: 20%;
    --content-pad: 2em;
    --content-pad-s: 1em;
  }
  .flex-bet {
    flex-wrap: wrap;
  }
  .top-page {
    .mv {
      .mv-box {
        .mv-catch {
          margin-left: 2em;
          .mv-catch__inner {
            span {
              margin-bottom: .5em;
            }
            &.big-catch {
              font-size: 1.5em;
            }
            &.sub-catch {
              font-size: 1.2em;
            }
          }
          
        }
      }
      .mv-catch-img {
        margin-top: -1.5em;
      }
    }
    .about {
      .about__inner {
        .img {
          width: 80%;
          margin: auto;
          margin-bottom: 1em;
        }
        .text {
          width: 80%;
          margin: auto;
          .catch-text {
            letter-spacing: .1em;
            .green {
              color: var(--main-col);
            }
          }
        }
      }
      
    }
     .feature {
      padding: 1.5em;
      .feature__inner {
        padding-top: 0em;
        padding-bottom: 1.5em;
        .img {
          width: var(--content-w);
        }
      }
     }
     .merit {
      .merit__inner {
        .merit-box {
          flex-wrap: wrap;
          .row {
            width: 80%;
            margin: auto;
            margin-bottom: 1em;
            padding: 1.5em;
          }
        }
      }
     }
     .issues {
      .issues__inner {
        .issues-box {
          .row {
            padding: 1em .5em;
            .title-box {
              .title-box__inner {
                .num {
                  padding-right: 1em;
                  .num__inner {
                    font-size: 2em;
                  }
                }
                .issues-title {
                  width: 65%;
                }
              }
            }
          }
        }
      }
     }
     .works {
      background: var(--back-col2);
      padding-top: var(--content-pad-s);
      padding-bottom: var(--content-pad);
      position: relative;
      .content-illust {
        position: absolute;
        top: 0;
        right: 0;
        width: var(--frame-size3);
        transform: scale(1, -1);
        &.bottom {
          top: auto;
          bottom: 0;
          left: 0;
          right: auto;
          width: var(--frame-size4);
          transform: none;
        }
      }
      .works__inner {
        .works-box {
          .row {
            .works-title {
              .works-title__inner {
                font-size: 1.2em;
              }
            }
            .works-ba {
              .content {
                border-radius: 15px;
                border: 3px solid;
                justify-content: space-between;
                position: relative;
                img {
                  border-radius: 10px;
                }
                .text-content {
                  font-size: 1.3em;
                }
              }
              .content02 {
                margin: auto;
                width: 10%;
  
              }
              .works-b {
                width: 38%;
                border-color: var(--point-col3);
                .before {
                  color: var(--main-col);
                }
              }
              .works-a {
                width: 50%;
                border: 5px solid;
                border-color: var(--point-col);
                img {
                  border-radius: 10px;
                }
                .after {
                  font-size: 2em;
                  color: var(--point-col);
                }
              }
            }
          }
        }
      }
     }
  }
 
}
@media screen and (max-width: 480px) {
  :root {
    --frame-size2: 40%;
    --frame-size3: 50%;
    --frame-size4: 85%;
    --frame-size: 60%;
    --illust-size: 35%;
  }
  .top-page {
    .mv {
      .mv-box {
        .mv-catch {
          margin-left: 1em;
          .mv-catch__inner {
            span {
              margin-bottom: .5em;
            }
            &.big-catch {
              font-size: 1.4em;
            }
            &.sub-catch {
              font-size: 1.1em;
            }
          }
          
        }
      }
      .mv-catch-img {
        margin-top: -1em;
      }
    }
    .about {
      .about__inner {
        .img {
          width: 90%;
          margin: auto;
          margin-bottom: 1em;
        }
        .text {
          width: 95%;
        }
      }
      
    }
    .feature {
      padding: 1em;
      .feature__inner {
        padding: .5em;
      }
    }
     .merit {
      .merit__inner {
        .merit-box {
          .row {
            width: 85%;
          }
        }
      }
     }
     .issues {
      .issues__inner {
        .issues-box {
          margin-top: 5em;
          .row {
            padding: 1em .5em;
            margin-bottom: 6em;
            .title-box {
              .title-box__inner {
                .num {
                  padding-right: 1em;
                  .num__inner {
                    font-size: 2em;
                  }
                }
                .issues-title {
                  width: 65%;
                }
              }
              .img {
                top: -6em;
              }
            }
          }
        }
      }
     }
     .works {
      .works__inner {
        .works-box {
          .row {
            .works-title {
              .works-title__inner {
                font-size: 1.1em;
              }
            }
          }
        }
      }
     }
  }
}

/* News */
.news-content {
  .news__inner {
    .inner {
      width: var(--content-w);
      max-width: 1500px;
      margin: auto;
      margin-top: var(--content-pad-s);
      padding-top: var(--content-pad);
      padding-bottom: var(--content-pad);
      border-top: 2px solid;
      border-bottom: 2px solid;
      border-color: var(--main-col);
      .row {
        padding: 1em;
        .date {
          font-weight: 600;
          font-size: 1.2em;
          letter-spacing: .1em;
          width: 20%;
          text-align: center;
        }
        .blog-title {
          width: 75%;
          p {
            a {
              color: var(--text-col);
              letter-spacing: .15em;
              line-height: 1.8em;
              font-size: 1.1em;
              transition: .3s;
              font-weight: 500;
              &:hover { color: var(--point-col);}
            }
          }
        }
      }
    }
    .btn01 {
      text-align: center;
    }

  }
 }
 @media screen and (max-width: 1270px) {
  .news-content {
    .news__inner {
      .inner {
        .row {
          .date {
            font-size: 1em;
            width: 25%;
          }
          .blog-title {
            width: 73%;
            p {
              a {
                font-size: 1em;
              }
            }
          }
        }
      }
  
    }
   }
 }
 @media screen and (max-width: 768px) {
  .news-content {
    .news__inner {
      .inner {
        .row {
          flex-wrap: wrap;
          .date {
            font-size: 1em;
            width: 100%;
            padding-bottom: .5em;
            text-align: left;
          }
          .blog-title {
            width: 100%;
          }
        }
      }
  
    }
   }
 }

/*////////////// top-content end //////////////*/



/*////////////// page-content //////////////*/


/* page-mv end*/
.page .p-topArea {
  min-height: 45vh!important;
  position: relative;
  display: none!important;
}
.p-breadcrumb {
  display: none;
}

.page__inner .flex-content {
  padding-bottom: 2em;
  justify-content: space-between;
}


/* table */

.section-table,
.wp-block-table table {
  border: none;
}
.section-table {
  padding: 2em;
}
.section-table tbody th {
  width: 20%;
  padding: 1em!important;
  text-align: left;
  background: #fff;
  font-size: 1em;
  border: none;
  font-weight: 400;
  letter-spacing: .15em;
  line-height: 1.5em;
}

.section-table tbody td {
  padding: 1em!important;
  background: var(--white-col)!important;
  border: none;
  font-size: 1em;
  width: 80%;
}

iframe {
  width: 100%;
}
.p-404 {
  padding-top: 3em;
}
@media screen and (max-width: 1270px) {

  .p-404 {
    padding: 6em 2em 0;
  }
  .error404 .u-ta-c {
    text-align: left!important;
  }
}

@media (max-width: 781px) {
  .wp-block-columns.reverce {
      flex-wrap: wrap-reverse!important;
  }
}

:root {
  --page-top-pad: 11em;
  --page-title-color: rgba(112, 181, 44, .6);
  --page-title-pad: 7em
}
.section-table {
  margin-top: 2em;
  padding: 3em;
  background: var(--white-col);
  table {
    border: none!important;
    tbody {
      width: 100%;
      background: var(--white-col);
      tr {
        border-bottom: 1px solid;
        border-color: var(--main-col);
        width: 100%;
        &:first-of-type {
          border-top: 1px solid;
          border-color: var(--main-col);
        }
        th {
          font-weight: 500;
        }
        td {
          line-height: 1.8em;
          font-size: .9em;
        }
      }
    }

  }
}
.page {
  position: relative;
  .page-mv {
    padding-top: var(--page-top-pad);
    
    .page-title {
      width: var(--content-w);
      
      margin: auto;
      padding-bottom: var(--page-title-pad);
      border-bottom: 1px solid;
      border-color: var(--text-col);
      .big {
        font-weight: 600;
        color: var(--page-title-color);
        font-size: 5em;
        letter-spacing: .1em;
      }
      .title-text {
        font-size: 1.3em;
        letter-spacing: .1em;
        font-weight: 600!important;
        margin-top: -1em;
        padding-left: .2em;
        font-weight: 600;
        color: var(--text-col);
      }

    }
  }
  .content-illust {
    position: absolute;
    width: var(--frame-size);
    top: 0;
    right: 0;
    transform: scale(1, -1);

  }
  .service-page__inner {
    .service-sub {
      position: relative;
      .page-catch {
        text-align: center;
        font-size: 1.5em;
        line-height: 2em;
        font-weight: 600;
        letter-spacing: .2em;
        padding: 6em 0 0em;
        color: var(--point-col);
      }
      .page-catch__illust {
        padding-bottom: var(--content-pad);
        .img {
          width: 70%;
          max-width: 1500px;
          margin: auto;
        }
        .text {
          position: relative;
          z-index: 2;
          background: var(--white-col);
          width: 75%;
          max-width: auto;
          max-width: 1500px;
          margin: auto;
          border-radius: 20px;
          margin-top: 2em;
          margin-bottom: var(--content-pad);
          .text__inner {
            color: var(--text-col);
            font-weight: 500;
            padding: 2em;
            letter-spacing: .1em;
          }
        }
      }
      .content-frame {
        position: absolute;
        bottom: 0;
        left: 0;
        width: var(--frame-size3);
      }
    }
    .service-box {
      padding-top: var(--content-pad);
      padding-bottom: var(--content-pad-s);
      width: var(--content-w);
      max-width: 1500px;
      margin: auto;
      .service-box__inner {
        justify-content: space-between;
        margin-top: var(--content-pad-s);
        margin-bottom: var(--content-pad);
        .row {
          width: 49%;
          background: var(--back-col);
          border-radius: 20px;
          padding: 1em 2em 2em;
          .name {
            font-size: 1.3em;
            letter-spacing: .1em;
            color: var(--main-col);
            font-weight: 600;
            .num {
              font-size: 2em;
              display: inline-block;
              padding-right: .5em;
            }
            .name_inner {
              display: inline-block;
              margin: auto 0;
            }
          }
          .detail {
            letter-spacing: .1em;
            color: var(--text-col);
            font-size: 500;
            padding-top: .5em;
          }
        }
      }
    }
    .needs {
      position: relative;
      padding-top: var(--content-pad);
      .content-frame {
        position: absolute;
        top: 0;
        left: 0;
        width: var(--frame-size3);
      }
      .needs__inner {
        .needs-content {
          width: var(--content-w);
            max-width: 1500px;
            margin: auto;
            padding-bottom: 3em;
          .needs-title {
            color: var(--main-col2);
            letter-spacing: .1em;
            font-size: 1.5em;
            font-weight: 600;
            padding: .5em 1em;
            border-bottom: 1px solid;
            border-color: var(--main-col);
            margin-bottom: 2em;
          }
          .needs-box {
            padding-bottom: 3em;
            align-items: stretch;
            .img {
              filter: drop-shadow(1em 1em 0 #70B52C);
              width: 40%;
            }
            .detail {
              width: 60%;
              position: relative;
              margin:2em auto 0;
              padding-left: 3em;
              .title {
                font-size: 1.2em;
                letter-spacing: .1em;
                color: var(--main-col2);
                font-weight: 600;
                letter-spacing: .1em;
                padding-bottom: 1em;
              }
              .detail__inner {
                height: 100%;
                
                p {
                  width: 75%;
                  line-height: 2em;
                  letter-spacing: .1em;
                  color: var(--text-col);
                  font-weight: 500;
                }
                .needs-illust {
                  position: absolute;
                  right: 0;
                  bottom: 0;
                  width: var(--illust-size);

                }
              }
            }
          }
        }
      }
    }
    .movie {
      position: relative;
      padding-top: var(--content-pad-s);
      padding-bottom: var(--content-pad);
      .movie__inner {
        width: 60%;
        margin: auto;
        position: relative;
        z-index: 2;
        padding-bottom: var(--content-pad);
      }
      .content-frame {
        position: absolute;
        bottom: 0em;
        top: auto;
        left: 0;
        width: var(--frame-size);

      }
    }
    .flow {
      .content-h2 {
        padding: 4em 0 4em;
      }
      background: var(--white-col);
      padding-bottom: var(--content-pad);
      .flow__inner {
        width: var(--content-w);
        max-width: 1500px;
        margin: auto;
        .flow-title {
          color: var(--main-col2);
          letter-spacing: .1em;
          font-size: 1.5em;
          font-weight: 600;
          padding: .5em 1em;
          border-bottom: 1px solid;
          border-color: var(--main-col);
          margin-bottom: 1em;
        }
      }
    }
  
    
  }
  .company-page__inner {
    .about {
      padding-top: var(--content-pad);
      padding-bottom: var(--content-pad);
      .about__inner {
        width: var(--content-w);
        max-width: 1500px;
        margin: auto;
        padding-bottom: var(--content-pad-s);
        .content-h2 {
          margin-bottom: var(--content-pad-s);
        }
        .flex {
          .img {
            width: 45%;
          }
          .text {
            width: 65%;
            background: var(--white-col);
            padding: 2em 2em 0;
            margin-left: -5em;
            margin-top: 5em;
            .text__inner {
              position: relative;
              .catch {
                font-size: 1.2em;
                font-weight: 600;
                color: var(--text-col);
                letter-spacing: .2em;
                line-height: 2em;
                padding-bottom: 1em;
                color: var(--main-col);
              }
              .detail {
                line-height: 2em;
                color: var(--text-col);
                padding-bottom: 2em;
              }
              .illust {
                position: absolute;
                bottom: 2em;
                right: 0;
                width: var(--illust-size);
              }
            }
            
          }
        }
      }
    }
    .members {
      padding-top: var(--content-pad-s);
      padding-bottom: var(--content-pad);
      position: relative;
      .content-illust {
        position: absolute;
        top: 0;
        left: 0;
        width: var(--frame-size2);
      }
      .content-h2 {
        margin-bottom: var(--content-pad-s);
      }
      .members__inner {
        position: relative;
        z-index: 2;
        width: var(--content-w);
        max-width: 1500px;
        margin: auto;
        .row {
          background: var(--back-col);
          border-radius: 20px;
          padding: 3em;
          margin-bottom: 2em;
            .img {
              padding-right: 2em;
            }
            .text {
              .class {
                color: var(--text-col);
                letter-spacing: .1em;
                font-weight: 600;
              }
              .name {
                font-size: 1.3em;
                letter-spacing: .1em;
                font-weight: 600;
                color: var(--main-col2);
                padding-bottom: 1em;
              }
              .detail {
                line-height: 1.8em;
              }
            }
            


          }
      }
    }
    .company-info {
      position: relative;
      border-bottom: 1px solid;
      border-color: var(--text-col);
      padding-bottom: var(--content-pad-s);
      .company-info__inner {
        position: relative;
        z-index: 2;
        padding-top: var(--content-pad-s);
        padding-bottom: var(--content-pad);
        
      }
      .content-illust {
        position: absolute;
        top: 0;
        right: 0;
        width: var(--frame-size2);
      }
    }
  }
  .works-page__inner {
    padding-bottom: var(--content-pad);
    border-bottom: 1px solid;
    border-color: var(--text-col);
    .works-box {
      padding-top: var(--content-pad-s);
      padding-bottom: var(--content-pad);
      
      .row {
        width: var(--content-w);
        max-width: 1500px;
        margin: auto;
        margin-bottom: var(--content-pad);
        .works-title {
          text-align: center;
          margin-bottom: 2em;
            .works-title__inner {
              font-size: 1.5em;
              letter-spacing: .1em;
              font-weight: 600;
              color: var(--main-col2);
              display: inline-block;
              border-bottom: 2px solid;
              border-color: var(--main-col);
              margin-bottom: 2em;
              margin-top: var(--content-pad-s);
            }
        }
        .works-box__inner {
          justify-content: space-between;
          .img {
            width: 60%;
            .content {
              position: relative;
              .text-content {
                position: absolute;
                top: -1.4em;
                left: 0;
              }
            }
            .flex {
              justify-content: space-between;
              align-items: center;
              .works-a {
                width: 50%;
                border: 10px solid;
                border-color: var(--point-col);
                border-radius: 30px;
                img {
                  border-radius: 20px;
                }
                .after {
                  font-size: 2.5em;
                  color: var(--point-col);
                }
              }
              .icon {
                width: 8%;
              }
              .works-b {
                height: fit-content;
                width: 40%;
                border: 7px solid;
                border-color: var(--point-col3);
                border-radius: 30px;
                .before {
                  color: var(--main-col);
                  font-size: 2em;
                }
                img {
                  border-radius: 20px;
                }
              }
              
            }
          }
          .detail {
            width: 38%;
            background: var(--white-col);
            padding: 1em 2em;
          }
        }
        .gallery {
          .content-h2 {
            text-align: left;
          }
          .gallery__inner {
            justify-content: space-between;
          
          .gallery-item {
            width: 24%;
          }
          }
          

        }
      }
    }
  }
  .subsidy-page__inner {
    .about {
      .about__inner {
        .flex {
          .text {
            margin-left: 0;
            background: none;
            padding-left: 0;
          }
        }
      }
      
    }
    .target {
      padding-bottom: var(--content-pad);
      position: relative;
      .target__inner {
        position: relative;
        padding-bottom: var(--content-pad);
        z-index: 2;
        .section-table {
          padding: 2em 0;
          table {
            border: 2px solid;
            border-color: var(--main-col2);
            .title {
              text-align: center;
              background: var(--main-col2);
              color: var(--white-col);
              border-left: 1px solid;
              border-color: var(--white-col);
            }
            th {
              border-right: 1px solid;
              border-color: var(--main-col2);
              font-weight: 600;
              letter-spacing: .1em;
              color: var(--main-col2);
            }
            tr {
              border-bottom: 1px solid;
              border-color: var(--main-col2);
            }
          
          }
        }
        .detail {
          border: 2px solid;
          border-color: var(--main-col);
          .title {
            width: 30%;
            background: var(--main-col);
            display: flex;
            justify-content: center;
            .title__inner {
              font-size: 1.5em;
              letter-spacing: .1em;
              color: var(--white-col);
              text-align: center;
              font-weight: 600;
              align-items: center;
              display: flex;
              justify-content: center;
            }
            
            
          }
          .detail__inner {
            text-align: left;
            font-size: 1.1em;
            letter-spacing: .1em;
            font-weight: 500;
            line-height: 2em;
            padding: 1em;
          }
        }
      }
      .content-illust {
        bottom: 0;
        top: auto;
        left: 0;
        transform: scale(1, 1);
        &.top {
          top: 0;
          bottom: auto;
          left: auto;
          right: 0;
          width: var(--frame-size3);
          transform: scale(1, -1);
        }
      }
    }
    .faq {
      padding-bottom: var(--content-pad);
      padding-top: var(--content-pad-s);
      border-bottom: 1px solid;
      border-color: var(--text-col);
      .faq-box {
        width: var(--content-w);
        max-width: 1500px;
        margin: 2em auto 1em;
        background: var(--white-col);
        padding: 1em;
        .text {
          padding: 0 2em;
          .icon {
            font-weight: 600;
            font-size: 2em;
            padding-right: 1em;
          }
          .text__inner {
            line-height: 1.5em;
            margin: auto 0;
          }
        }
        .question {
          border-bottom: 1px solid;
          border-color: var(--main-col);
          margin-bottom: 1em;
          .icon {
            color: var(--main-col);
          }
          .question__inner {
            font-size: 1.3em;
            font-weight: 600;
          }
        }
        .answer {
          .icon {
            color: var(--point-col);
            font-size: 2em;
          }
        }
      }
      .btn01 {
        text-align: center;
      }
    }
  }
  .forcompany-page__inner {
    .about {
      padding-top: var(--content-pad);
      padding-bottom: var(--content-pad);
      .about__inner {
        width: var(--content-w);
        max-width: 1500px;
        margin: auto;
        padding-bottom: var(--content-pad);
        .img {
          width: 50%;
        }
        .text {
          width: 48%;
          margin: auto;
          padding-left: 2em;
          .catch-text {
            font-size: var(--catch-size);
            font-weight: 600;
            letter-spacing: .2em;
            line-height: 1.8em;
            padding-bottom: 1em;
            .green {
              color: var(--main-col);
            }
          }
          .catch-text02 {
            font-size: 1.3em;
            padding-bottom: .5em;
          }
          .detail-text-box {
            
            .detail-text__inner {
              line-height: 2em;
              letter-spacing: .1em;
              font-weight: 400;
              .under {
                
                font-size: 1.4em;
                font-weight: 600;
                color: var(--point-col);
              }
              .flex {
                padding-bottom: 1em;
              }
            }
          }
          .detail-text-box02 {
            padding-bottom: 1.5em;
          }
        }
      }
    }
    .feature {
      padding-top: var(--content-pad);
      padding-bottom: var(--content-pad);
      position: relative;
      .content-illust {
        position: absolute;
        top: 0;
        left: 0;
        width: var(--frame-size2);
      }
      .feature__inner {
        .feature-box {
          position: relative;
          width: var(--content-w);
          margin: auto;
          padding-top: var(--content-pad);
          max-width: 1500px;
          padding-bottom: var(--content-pad-s);
          z-index: 3;
          .row {
            width: 32%;
            background: var(--back-col);
            border-radius: 20px;
            padding: .5em 2em 2em;
            .num {
              font-size: 3em;
              color: var(--point-col);
              font-weight: 600;
            }
            .img {
              width: 45%;
              margin: auto;
            }
            .title-text {
              color: var(--main-col);
              font-weight: 600;
              letter-spacing: .1em;
              font-size: var(--title-size);
              text-align: center;
              padding: 1em 0;
              line-height: 1.5em;
            }
          }
        }
      }
      .btn01 {
        text-align: center;
      }
    }
    .service {
      padding-top: var(--content-pad);
      position: relative;
      padding-bottom: var(--content-pad);
      .content-illust {
        position: absolute;
        top: 0;
        right: 0;
        transform: scale(1, -1);
        width: var(--frame-size2);
      }
      .service__inner {
        position: relative;
        z-index: 2;
        width: var(--content-w);
        max-width: 1500px;
        margin: auto;
        .sub {
          text-align: center;
          font-weight: 600;
          letter-spacing: .1em;
          color: var(--main-col);
          font-size: 1.4em;
          margin-bottom: 3em;
          margin-top: 2em;
        }
        .sub02 {
          color: var(--point-col);
          margin-bottom: 0;
        }
        .row {
          background: var(--white-col);
          border-radius: 20px;
          padding: 2em;
          margin-bottom: 2em;
            .img {
              padding-right: 2em;
              width: 25%;
            }
            .text {
              width: 75%;
              margin: auto;
              .class {
                color: var(--text-col);
                letter-spacing: .1em;
                font-weight: 600;
              }
              .name {
                font-size: 1.3em;
                letter-spacing: .1em;
                font-weight: 600;
                color: var(--main-col2);
                padding-bottom: 1em;
              }
              .detail {
                line-height: 1.8em;
              }
            }
            


          }
          .section-table {
            table {
              tr {
                th {
                  width: 40%;
                }
              }
            }
          }
      }
    }
    .service02 {
      border-bottom: 1px solid;
      border-color: var(--text-col);
    }
    .price {
      position: relative;
      .content-illust {
        position: absolute;
        left: 0;
        width: var(--frame-size);
        transform: scale(1, -1);
      }

    }
  }
}
@media screen and (max-width: 1270px) {
  :root {
    --page-top-pad: 8em;
    --page-title-pad: 5em
  }
  .section-table {
    table {
      tbody {
        tr {
          th {
            width: 40%;
          }
        }
      }
  
    }
  }
  .page {
    .page-mv {
      .page-title {
        .big {
          font-size: 4em;
        }
        .title-text {
          font-size: 1.2em;
        }
  
      }
    }
    .service-page__inner {
      .service-sub {
        .page-catch {
          font-size: 1.3em;
          line-height: 1.8em;
          padding: 5em 0 0em;
        }
        .page-catch__illust {
          .img {
            width: 85%;
          }
          .text {
            width: 85%;
            .text__inner {
              padding: 1.5em;
            }
          }
        }
      }
      .service-box {
        .service-box__inner {
          .row {
            border-radius: 15px;
            padding: 1em 1em 1.5em;
            .name {
              font-size: 1.1em;
              .num {
                font-size: 1.8em;
              }
            }
            .detail {
              font-size: .9em;
            }
          }
        }
      }
      .needs {
        .content-h2 {
          padding-bottom: 4em;
        }
        .needs__inner {
          
          .needs-content {
            .needs-title {
              font-size: 1.3em;
            }
            .needs-box {
              .img {
                filter: drop-shadow(.8em .8em 0 #70B52C);
                width: 40%;
              }
              .detail {
                padding-left: 2em;
                .title {
                  font-size: 1.1em;
                }
                .detail__inner {
                  
                  p {
                    font-size: .9em;
                  }
                }
              }
            }
          }
        }
      }
      .movie {
        .movie__inner {
          width: 70%;
        }
      }
      .flow {
        .flow__inner {
          .flow-title {
            font-size: 1.3em;
          }
        }
      }
    
      
    }
    .company-page__inner {
      .about {
        .about__inner {
          .flex {
            .text {
              margin-left: -4em;
              margin-top: 4em;
              .text__inner {
                .catch {
                  font-size: 1.1em;
                }
                .detail {
                  font-size: .9em;
                  width: 80%;
                }
              }
              
            }
          }
        }
      }
      .members {
        .members__inner {
          .row {
            border-radius: 15px;
            padding: 1.5em;
              .img {
                padding-right: 1em;
              }
              .text {
                .name {
                  font-size: 1.2em;
                }
                .detail {
                  font-size: .9em;
                }
              }
              
  
  
            }
        }
      }
    }
    .works-page__inner {
      .works-box {
        .row {
          .works-title {
              .works-title__inner {
                font-size: 1.3em;
              }
          }
          .works-box__inner {
            flex-wrap: wrap;
            .img {
              width: 80%;
              margin: auto;
            }
            .detail {
              width: 80%;
              margin: auto;
              margin-top: 2em;
            }
          }
        }
      }
    }
    .subsidy-page__inner {
      .about {
        .about__inner {
          .flex {
            .img {
              width: 45%;
            }
            .text {
              width: 55%;
              margin-left: 0;
              background: none;
              padding-left: 0;
              margin-top: 0em;
              padding-right: 0;
            }
          }
        }
        
      }
      .target {
        .target__inner {
          .detail {
            padding-left: 0;
              padding-right: 0;
            .title {
              width: 40%;
              .title__inner {
                font-size: 1.3em;
              } 
            }
            .detail__inner {
              font-size: 1em;
            }
          }
        }
      }
      .faq {
        .faq-box {
          .text {
            .icon {
              font-size: 1.8em;
            }
            .text__inner {
              line-height: 1.3em;
            }
          }
          .question {
            .question__inner {
              font-size: 1.2em;
            }
          }
          .answer {
            .icon {
              font-size: 1.8em;
            }
          }
        }
      }
    }
    .forcompany-page__inner {
      .about {
        .about__inner {
          .img {
            width: 45%;
          }
          .text {
            width: 53%;
            padding-left: 1em;
            .catch-text02 {
              font-size: 1.2em;
            }
            .detail-text-box {
              
              .detail-text__inner {
                .under {
                  font-size: 1.3em;
                }
              }
            }
          }
        }
      }
      .feature {
        .feature__inner {
          .feature-box {
            .row {
              width: 33%;
              border-radius: 15px;
              padding: .5em 1em 1.5em;
              .num {
                font-size: 2.5em;
              }
              .detail-text {
                font-size: .9em;
              }
            }
          }
        }
      }
      .service {
        .service__inner {
          .sub {
            font-size: 1.3em;
          }
          .row {
            border-radius: 15px;
            padding: 1.5em;
              .text {
                .name {
                  font-size: 1.2em;
                }
              }
            }
            .section-table {
              table {
                tr {
                  th {
                    width: 50%;
                  }
                }
              }
            }
        }
      }
    }
  }
}
@media screen and (max-width: 768px) {
  :root {
    --page-top-pad: 7em;
    --page-title-pad: 4em
  }
  .section-table {
    table {
      tbody {
        tr {
          display: flex;
          flex-wrap: wrap;
          th {
            width: 100%;
            text-align: left;
            padding-bottom: 0!important;
          }
          td {
            width: 100%;
            padding-top: .5em!important;
          }
        }
      }
  
    }
  }
  .page {
    .page-mv {
      .page-title {
        .big {
          font-size: 3em;
        }
        .title-text {
          font-size: 1.1em;
        }
  
      }
    }
    .service-page__inner {
      .service-sub {
        .page-catch {
          font-size: 1.1em;
          line-height: 1.7em;
          padding: 4em 0 0em;
        }
        .page-catch__illust {
          .img {
            width: 95%;
          }
          .text {
            width: 90%;
            .text__inner {
              padding: 1em;
            }
          }
        }
      }
      .service-box {
        .service-box__inner {
          flex-wrap: wrap;
          .row {
            width: 90%;
            margin: auto;
            margin-bottom: 1em;
            .name {
              font-size: 1.1em;
              .num {
                font-size: 1.7em;
              }
            }
          }
        }
      }
      .needs {
        .content-h2 {
          padding-bottom: 4em;
        }
        .needs__inner {
          .needs-content {
            .needs-title {
              font-size: 1.2em;
            }
            .needs-box {
              flex-wrap: wrap;
              .img {
                filter: drop-shadow(.5em .5em 0 #70B52C);
                width: 80%;
                margin: auto;
              }
              .detail {
                width: 80%;
                margin: auto;
                padding-top: 2em;
                padding-left: 0;
                .title {
                  font-size: 1em;
                }
              }
            }
          }
        }
      }
      .movie {
        .movie__inner {
          width: 90%;
        }
      }
      .flow {
        .flow__inner {
          .flow-title {
            font-size: 1.1em;
          }
        }
      }
    
      
    }
    .company-page__inner {
      .about {
        .about__inner {
          .flex {
            flex-wrap: wrap;
            .img {
              width: 80%;
            }
            .text {
              width: 80%;
              margin-left: 4em;
              margin-top: -2em;
              padding: 1em 1em 1em;
              .text__inner {
                .detail {
                  width: 75%;
                  .flex {
                    display: flex;
                    flex-wrap: nowrap;
                    span {
                      width: 2em;
                    }
                  }
                }
              }
              
            }
          }
        }
      }
      .members {
        .members__inner {
          .row {
            border-radius: 15px;
            padding: 1em;
            flex-wrap: wrap;
              .img {
                padding-right: 0;
                width: 80%;
                margin: auto;
              }
              .text {
                width: 90%;
                margin: auto;
                padding-top: 1em;
                .name {
                  font-size: 1.1em;
                }
              }
              
  
  
            }
        }
      }
    }
    .works-page__inner {
      .works-box {
        .row {
          .works-title {
              .works-title__inner {
                font-size: 1.2em;
              }
          }
          .works-box__inner {
            flex-wrap: wrap;
            .img {
              width: 98%;
              .flex {
                .work-b {
                  .text-content {
                    font-size: 1.3em;
                    border: 5px solid;
                    border-radius: 15px;
                    img {
                      border-radius: 15px;
                    }
                  }
                }
                .work-a {
                  border: 7px solid;
                  border-radius: 15px;
                  img {
                    border-radius: 15px;
                  }
                }
              }
            }
            .detail {
              width: 98%;
            }
          }
          .gallery {
            .gallery__inner {
              flex-wrap: wrap;
              .gallery-item  {
                width: 49%;
                margin-bottom: .5em;
              }
            }
          }
        }
      }
    }
    .subsidy-page__inner {
      .about {
        .about__inner {
          .flex {
            flex-wrap: wrap-reverse;
            .img {
              width: 80%;
              margin: auto;
            }
            .text {
              width: 90%;
              margin: auto;
              background: none;
              padding-left: 0;
              margin-top: 0em;
              padding-right: 0;
              .text__inner {
                .detail {
                  width: 100%;
                }
              }
            }
          }
        }
        
      }
      .target {
        .target__inner {
          .section-table {
            table {
              display: table;
              th {
                width: 50%;
                padding-bottom: 1em!important;
              }
              td {
                width: 50%;
                padding-top: .5em!important;
              }
            
            }
          }
          .detail {
            padding-left: 0!important;
              padding-right: 0!important;
              flex-wrap: wrap;
            .title {
              width: 100%;
              padding: .5em 0;
              .title__inner {
                font-size: 1.2em;
              } 
            }
            .detail__inner {
              font-size: 1em;
            }
          }
        }
      }
      .faq {
        .faq-box {
          .text {
            padding: 0 .5em;
            .icon {
              font-size: 1.8em;
            }
            .text__inner {
              line-height: 1.3em;
            }
          }
          .question {
            .question__inner {
              font-size: 1.1em;
            }
          }
          .answer {
            .icon {
              font-size: 1.5em;
            }
          }
        }
      }
    }
    .forcompany-page__inner {
      .about {
        .about__inner {
          flex-wrap: wrap;
          .img {
            width: 80%;
            margin: auto;
          }
          .text {
            width: 90%;
            margin: auto;
            margin-top: 1em;
            padding-left: 0em;
            .catch-text02 {
              font-size: 1.1em;
            }
            .detail-text-box {
              
              .detail-text__inner {
                .flex {
                  .dot {
                    width: 1em;
                  }
                  .text__inner {
                    width: 90%;
                  }
                }
                .under {
                  font-size: 1.3em;
                }
              }
            }
          }
        }
      }
      .feature {
        .feature__inner {
          .feature-box {
            flex-wrap: wrap;
            .row {
              width: 80%;
              margin: auto;
              margin-bottom: 1em;
              .num {
                font-size: 2.5em;
              }
            }
          }
        }
      }
      .service {
        .service__inner {
          .sub {
            font-size: 1em;
          }
          .row {
            flex-wrap: wrap;
              .text {
                width: 90%;
                margin: auto;
                .name {
                  font-size: 1.1em;
                }
              }
              .img {
                width: 50%;
                margin: auto;
                padding-right: 0;
              }
            }
            .section-table {
              padding: 1.5em;
              table {
                tr {
                  th {
                    width: 100%;
                  }
                  td {
                    width: 100%;
                  }
                }
              }
            }
        }
      }
    }
  }
}
@media screen and (max-width: 480px) {
  .page {
    .service-page__inner {
      .service-sub {
        .page-catch {
          font-size: 1em;
        }
        .page-catch__illust {
          .img {
            width: 95%;
          }
          .text {
            width: 90%;
            border-radius: 10px;
            .text__inner {
              padding: 1em;
            }
          }
        }
      }
      .needs {
        .content-h2 {
          .jp {
            font-size: 1.2em;
          }
        }
        .needs__inner {
          .needs-content {
            .needs-title {
              font-size: 1.1em;
              padding: .5em .5em;
            }
            .needs-box {
              flex-wrap: wrap;
              .img {
                width: 85%;
              }
              .detail {
                width: 90%;
                .detail__inner {
                  p {
                    width: 70%;
                  }
                  .needs-illust {
                    width: 25%;
                  }
                }
              }
            }
          }
        }
      }
      .movie {
        .movie__inner {
          width: 95%;
        }
      }
      .flow {
        .flow__inner {
          .flow-title {
            font-size: 1em;
            padding: .5em;
          }
        }
      }
    
      
    }
    .company-page__inner {
      .about {
        .about__inner {
          .flex {
            flex-wrap: wrap;
            .img {
              width: 80%;
            }
            .text {
              width: 85%;
              .text__inner {
                .illust {
                  bottom: -1em;
                }
                .detail {
                  width: 100%;
                  
                }
              }
              
            }
          }
        }
      }
    }
    .works-page__inner {
      .works-box {
        .row {
          .works-title {
              .works-title__inner {
                font-size: 1.1em;
              }
          }
          .works-box__inner {
            flex-wrap: wrap;
            .img {
              width: 100%;
              .flex {
                .works-b {
                  border: 5px solid;
                  border-radius: 10px;
                  border-color: var(--point-col3);
                  img {
                    border-radius: 5px;
                  }
                  .text-content {
                    font-size: 1.2em;
                    border-radius: 10px;
                    img {
                      border-radius: 10px;
                    }
                  }
                }
                .works-a {
                  border: 5px solid;
                  border-radius: 10px;
                  border-color: var(--point-col);
                  img {
                    border-radius: 5px;
                  }
                }
              }
            }
            .detail {
              width: 98%;
              padding: 1.5em;
            }
          }
        }
      }
    }
    .forcompany-page__inner {
      .about {
        .about__inner {
          .img {
            width: 90%;
          }
          .text {
            width: 95%;
            .catch-text {
              letter-spacing: .05em;
            }
            .catch-text02 {
              font-size: 1.1em;
              letter-spacing: 0;
            }
            .detail-text-box {
              
              .detail-text__inner {
                .flex {
                  .dot {
                    width: 1em;
                  }
                  .text__inner {
                    width: 90%;
                  }
                }
              }
            }
          }
        }
      }
      .feature {
        .feature__inner {
          .feature-box {
            flex-wrap: wrap;
            .row {
              width: 85%;
              .num {
                font-size: 2.3em;
              }
            }
          }
        }
      }
      .service {
        .service__inner {
          .sub {
            text-align: left;
          }
        }
      }
    }
  }
}


/*////////////// news //////////////*/
.page-news {
  .news-content {
    .news__inner {

      .blog-inner {
        margin-top: 0;
        border-top: none;
        border-bottom: 1px solid;
        border-color: var(--text-col);
      }
    }
  }
  

}
.pagenavi {
  text-align: center;
  margin: 3em auto 1em;
  font-size: 1.5em;
}

.pagenavi .current {
  color: var(--point-col);
  padding: 8px 10px;
  margin: 0 0.3em;
  border: none;
}

.pagenavi .nextpostslink,
.pagenavi .page,
.pagenavi .previouspostslink,
.pagenavi span,
.pagenavi a {
  color: var(--text-col);
  padding: 8px 10px;
  margin: 0 0.3em;
  text-decoration: none;
  border: none;
  transition: .3s;
}

.pagenavi .nextpostslink:hover,
.pagenavi .page:hover,
.pagenavi .previouspostslink:hover,
.pagenavi span:hover,
.pagenavi a:hover {
  color: var(--point-col);
}
.blog {
  background: var(--back-col);
}
.single {
  .l-sidebar {
    display: none;
  }
  .l-content {
    flex: none;
    background: var(--back-col);
   }
   .p-entry__author {
    display: none;
  }
  .l-content__body {
    display: block!important;
  }
  .section-content__inner {
    background: var(--white-col);
    padding: 3em;
    /* border: 2px solid var(--point-col); */
  }
  .date {
    letter-spacing: .05em;
    font-weight: 400;
    color: var(--main-col);
    font-size: 1.3em;
  }
  .article-title {
    font-weight: 600;
    letter-spacing: .1em;
    line-height: 1.5em;
    padding: .5em 0;
    font-size: 1.5em;
    padding-bottom: var(--content-pad-s);
  }

}

@media screen and (max-width: 1270px) {
  .page-single .section-content__inner {
    margin-right: 2em!important;
    margin-left: 2em!important;
  }
  }
  @media screen and (max-width: 768px) {
    .page-single .section-content__inner {
      padding-left: 2em!important;
      padding-right: 2em!important;
    }
  }
  @media screen and (max-width: 480px) {
    .page-single .section-content__inner {
      padding-left: 1.5em!important;
      padding-right: 1.5em!important;
      margin-left: 1em!important;
      margin-right: 1em!important;
    }
  }


@media screen and (max-width: 768px) {
  .single .article-title {
    font-size: 1.4em;
    padding-bottom: 1em;
  }
}

.post-style {
  h2 {
    background: var(--white-col);
    padding: .2em .5em;
    border-left: 3px solid;
    border-color: var(--point-col);
    margin-bottom: 1em;
    font-size: 1.2em;
    letter-spacing: .1em;
    padding-top: .5em;
  }
  h3 {
    padding: .5em;
    border-bottom: 1px solid;
    border-color: var(--point-col);
    margin-bottom: 1em;
    font-size: 1.1em;
    letter-spacing: .1em;
  }
  h4 {
    margin-bottom: 1em;
    font-size: 1em;
    letter-spacing: .1em;
    padding-top: .5em;
  }
  h4::before {
    content: "●";
    padding: .3em;
    font-size: .7em;
    color: var(--point-col);
  }
  h5 {
    padding: .5em;
    margin-bottom: 1em;
    font-size: 1em;
    letter-spacing: .1em;
    padding-top: .5em;
  }
  p {
    margin-bottom: 1em;
    line-height: 1.8em;
    font-size: .9em;
    letter-spacing: .05em;
    padding-bottom: 1em;
  }
  ul {
    margin-bottom: 1em;
    li {
      padding-bottom: 1em;
      list-style: inside;
      font-size: 1em;
    }
  }
  ol {
    margin-bottom: 1em;
    padding-left: 1em;
    li {
      padding-bottom: 1em;
      font-size: 1em;
    }
  }
  .wp-block-image {
    padding-bottom: 2em;
  }
}


@media screen and (max-width: 479px) {
  .single-post .section-content__inner {
    padding: 1em 1em;
  }
  .single-post .btn .blog-link a {
    padding: .3em 1em;
  }
  
  .page-post-style.simpleback {
    width: 100%;
    border-radius: 20px;
  }
  
  .single .btn {
    width: 100%;
  }
  .post-style .mask-content {
    width: 80%;
    mask-position: top;
  }
  .post-style h2 {
    padding: .1em .5em;
    font-size: 1.4em;
  }
  .post-style h3 {
    font-size: 1.2em;
  }
  .post-style h4 {
    margin-bottom: 0.5em;
    font-size: 1.1em;
  }
  .post-style h5 {
    margin-bottom: 0;
    font-size: 1em;
  }
  .post-style p {
    font-size: 0.9em;
  }
  .post-style ul li,
  .post-style ol li {
    padding-bottom: 0.5em;
    font-size: 0.9em;
  }
}

/*////////////// page //////////////*/

.l-main__body > .c-postContent {
  margin-top: 2rem !important;
}
.btn {
  display: flex;
  justify-content: space-between;
  width: 90%;
  margin: auto;
  padding: 2em 0 0em;
  margin-top: 2em;
}
@media screen and (max-width: 768px) {
  .btn {
    width: 100%;
  }
}

.btn__content {
  width: 30%;
  margin-bottom: 5em;
  a {
    color: var(--text-col);
    text-decoration: none;
    transition: .3s;
    border-bottom: none!important;
    font-size: 1em;
    &:hover {
      color: var(--point-col);
    }
  }
}
.blog-link {
  width: 30%;
  text-align: center;
  a {
    color: var(--main-col);
    text-decoration: none;
    border: 1px solid;
    border-color: var(--main-col);
    padding: .3em 2em;
    transition: .3s;
    font-size: 1em;
    font-weight: 600;
    &:hover {
      background: var(--main-col);
      color: var(--white-col);
    }
  }
  
}

.btn__content .previous,
.btn__content .next {
  text-align: center;
}

@media screen and (max-width: 480px) {
  .btn__content a {
    font-size: .8em;
  }
}

@media screen and (max-width: 480px) {
  .single-post .btn .blog-link a {
    padding: .3em 1em;
    font-size: .9em;
  }
}

.wp-block-group__inner-container a {
  color: var(--text-col);
  transition: .3s;
}
.wp-block-group__inner-container a:hover {
  color: var(--point-col);
}
/*////////////// blog end //////////////*/


/*////////////// page-content end //////////////*/

/*////////////// contactform//////////////*/
.wpcf7 {
  padding-top: 3em;
  width: var(--content-w);
  max-width: 1500px;
  margin: auto;
  .row {
    width: 100%;
    
    margin: auto;
    margin-bottom: 1em;
    align-items: center;
    .name {
      text-align: left;
      letter-spacing: .1em;
      font-weight: 500;
      padding-bottom: .5em;
      .must {
        color: red;
      }
    }
    .text-area {
      .your-email {
        .wpcf7c-conf {
          background: #fff;
        }

      }
      .your-email_confirm {
        .wpcf7c-conf {
          background: #fff;
        }
      }
      .wpcf7-form-control-wrap {
        .wpcf7-text {
          width: 100%;
          padding: 1em;
        }
      }
      .detail {
        width: 100%;
        height: 250px;
        padding: 1em;
        .detail {
          padding: 1em;
          .wpcf7c-conf {
            background: #fff;
          }

        }
      }

       

    }

  }
  .custom-wpcf7c-confirmed input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0px 1000px #fff inset;
  }
  .custom-wpcf7c-confirmed {
    .row {
      .name {
        background: #fff;
        .must {
          display: none;

        }
      }
      .text-area {
        .wpcf7-form-control-wrap {
          .wpcf7-text {
            background: #fff;
            .detail {
              height: 250px;
            }
          }

        }
      }
    }
  }
}

.wpcf7-form {
  p {
    text-align: center;
    .wpcf7-form-control-wrap {
      .wpcf7-acceptance {
        .wpcf7-list-item {
          label {
            .wpcf7-list-item-label {
              a {
                color: gray;
                text-decoration: none;
                padding: .2em;
                border-bottom:1px solid;
                border-color: var(--gray-line);
              }

            }

          }
        }
      }
    }
    .submit {
      display: inline-block;
      margin: 3em 0;
      padding: .5em 3em;
      border: 1px solid;
      border-color: var(--black-col);
      color: var(--white-col);
      font-size: 1em;
      box-shadow: 0 0 3px 0 rgba(0,0,0,.22), 0 2px 3px 0 rgba(0,0,0,.32);
      transition: .3s;
      background: var(--main-col);
      font-weight: 600;
      letter-spacing: .1em;
    }
    .wpcf7-spinner{
      display: none;
    }
    .wpcf7-back {
      margin-left: .5em;
    }
    .wpcf7-submit {
      margin-left: .5em;
    }

  }
  .text {
    font-size: .7em;
    text-align: center;
    margin-bottom: 2em;
  }

}

.wpcf7-not-valid-tip {
  color: var(--accent-col-red);
  font-size: 0.9rem;
  text-align: left;
  padding: 0.3rem 0.7rem;
  background: rgba(255,255,255,.4);
  margin-top: 0.5rem;
}



/*////////////// contactform end//////////////*/


/*////////////// sp //////////////*/
/*////////////// sp //////////////*/
/*////////////// sp //////////////*/
@media screen and (max-width: 767px) {
  .pc {
    display: none!important;
  }
  .spbr {
    display: block;
  }
  .sp {
    display: block;
  }
}

