@charset "UTF-8";
/* CSS Document */


/*--------------------------------------------------------------------/
	loader 色変更
  /-------------------------------------------------------------------*/
  @keyframes f_fadeG {
    0% {
      background-color:#19893b;
    }
    100% {
      background-color: white;
    }
  }
  @-webkit-keyframes f_fadeG {
    0% {
      background-color:#19893b;
    }
    100% {
      background-color: white;
    }
  }
  @-moz-keyframes f_fadeG {
    0% {
      background-color:#19893b;
    }
    100% {
      background-color: white;
    }
  }
/*--------------------------------------------------------------------/
	body
  /--------------------------------------------------------------------*/
  body {
    color: #202020;
    font-weight: 500;
  }

/*　ドラッグした際の色を変える設定
/* selection
----------------------------------------------------------------*/
body *::selection {
  background:#19893b;
  color: #fff;
}

/*Firefoxに対応*/
body *::-moz-selection {
  background:#19893b;
  color: #fff;
}

/*　リンクの色設定
/* a
----------------------------------------------------------------*/
a {
  color:#19893b;
}

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

a:hover {
  color: #47d08c;
}

/* 共通ボタンの色変更
----------------------------------------------------------------*/
.btn--main {
  color: #fff;
  background-color:#19893b;
  border-color:#19893b;
}
.btn--main:hover {
  background-color: #47d08c;
  border-color: #47d08c;
}

.btn--arrow {
  color: #fff;
  border-color: #fff;
}

.btn--main:hover {
  color: #fff;
  background-color: #47d08c;
  border-color: #47d08c;
}

.works-list .btn--arrow{
  background-color:#19893b;
  border-color: #19893b;
}
.works-list a:hover .btn--arrow{
  background-color:#47d08c;
  border-color: #47d08c;
}
.gallery-img {
  background: transparent;
}
/* 共通タイトル
----------------------------------------------------------------*/
h3.normal, h3.blog__tit,h3.privacy__tit {
  font-size: calc(1.6rem + 4 * (100vw - 320px) / 697);
}
h3.table__tit{
  font-size: calc(1.6rem + 4 * (100vw - 320px) / 697);
  text-align:center;
  padding:.75rem 2%;
  background: #f5f5f5;
}
h3.privacy__tit {
  margin-bottom: 1rem;
}
/*　ヘッダーとメニューの背景とロゴの大きさを設定
/* header
----------------------------------------------------------------*/
.js-fixed {
  background: rgba(255, 255, 255, 0.8);
}

.header__logo img {
  width: 100%;
  transition: all 0.3s ease;
}

.header__logo a {
  display: block;
  position: relative;
}

/* global_nav
----------------------------------------------------------------*/
/* グローバルのテキストの色を変更 */
/* ドロワーメニューの色を変更 */
.drawer-menu li a:hover {
  color:#19893b;
  background-color: transparent;
}

.global__phone {
  color: #fff;
  background:#19893b;
  border: none;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
}

.global__phone:hover {
  color:#19893b;
  background: #fff;
  border: solid 1px #19893b;
}
.global__phone:hover a {
  color:#19893b;
}

.global__phone a {
  color: #fff;
  display: block;
}

/* breadcrumb
/--------------------------------------------------------------------*/
.breadcrumb__list a:hover {
  color:#19893b;
}

/* main
/--------------------------------------------------------------------*/
/* first */
.scrolldown {
  color: #fff;
}

.arrow-down a {
  color: #fff;
}
/* fv__parts */
#move-01 {
  font-size: calc(1.6rem + 20 * (100vw - 320px) / 697);
  font-weight: 700;
  letter-spacing: 0.1em;
}

#move-02 {
  font-size: calc(1.6rem + 20 * (100vw - 320px) / 697);
  font-weight: 700;
  letter-spacing: 0.1em;
}
#move-02 b {
  font-style: normal;
  font-size: 1.2em;
}
.move-back {
  position: absolute;
  left: 0;
  right: 0;
  color: #fff;
  text-align: center;
}
.move-back_wrap {
  padding: 1.5rem 6%;
  display: inline-block;
  position: relative;
}
.move-back_wrap > span {
  position: absolute;
}
.move-back_wrap > span:nth-child(1),.move-back_wrap > span:nth-child(4) {
  top: 0;
  background-color: #fff;
  transition: all .6s linear;
}

.move-back_wrap > span:nth-child(2) {
  left: 0;
  background-color: #fff;
  transition: all .6s linear;
}
.move-back_wrap > span:nth-child(3) {
  right: 0;
  background-color: #fff;
  transition: all .6s linear;
}
.move-back_wrap > span:nth-child(1) {
  left: 0;
  width: 0;
  height: 1px;
  transform-origin: left center;
}

.move-back_wrap > span:nth-child(2) {
  top: 0;
  width: 1px;
  height: 100%;
  transform-origin: center top;
  transform: scaleY(0);
}

.move-back_wrap > span:nth-child(3) {
  bottom: 0;
  width: 0;
  height: 1px;
  transform-origin: right center;
}

.move-back_wrap > span:nth-child(4) {
  right: 0;
  width: 1px;
  height: 100%;
  transform: scaleY(0);
  transform-origin: center bottom;
}
.move-back.active .move-back_wrap > span:nth-child(3),
.move-back.active .move-back_wrap > span:nth-child(1) {
  width: 100%;
}
.move-back.active .move-back_wrap > span:nth-child(4),
.move-back.active .move-back_wrap > span:nth-child(2) {
  transform: scaleY(1);
}
.move-back_wrap.active {
  transition: all 1s linear;
  background-color:rgba(25, 137, 59,0.6);
  transition-delay: .9s;
}
.move-back_wrap.active > span {
  transition: all 1s linear;
  transition-delay: .9s;
  background-color:rgba(25, 137, 59,0.6);
}
.scrolldown {
  font-family: 'Oswald', sans-serif !important;
  font-weight: 400;
}

/* コンテンツのボタン使用時 */
.top-cont01 .btnselect .c-box__txt-01,.top-cont02 .btnselect .mCSB_container {
 padding-bottom:6rem;
 position: relative;
}

/* コンテンツタイトル */
.cont__tit span {
  font-family: 'Oswald', sans-serif !important;
  font-weight: 300;
}
.top-cont02 {
  overflow-x: hidden;
}

.c-box__txt-01 .c-btn,.c-box__txt-02 .c-btn {
  position: absolute;
  left: 1.5rem;
  bottom: 1.5rem;
  width: calc(100% - 3rem);
}

/* c-box */
.c-box h4 {
  margin-bottom: 1.5rem;
}
.c-box:not(:last-child) {
  margin-bottom: 2rem;
}
.c-box figure {
  margin-bottom: 1rem;
}
.c-box figcaption {
  font-size: 1.4rem;
  padding: 7px 0 0;
  text-align: center;
}
.c-box p {
  line-height: 1.5;
  padding-bottom: 10px;
  padding-bottom: 1rem;
  text-align: left;
}

/* feed */
.top-cont04__half, .top-cont04__news {
  background-color: #fff;
}

.top-cont05 .btn__wrap {
  max-width: 420px;
}

.c-box__tit-01 {
	padding-bottom: .5rem;
	border-bottom:1px solid #19893b;
}

/* blog-category back-color */
[class*="feed__icon"] {
  background-color: #555;
}

/* works-category back-color */
[class*="tax__icon"] {
  background-color: #555;
}
/* お問い合わせコンテンツ */
.contact__tel {
  font-family: 'Oswald', sans-serif !important;
  font-weight: 400;
}

/* footer */
.footer__copy {
  background:#19893b;
}

/* トップへ戻るボタンの色を変更
--------------------------------------------------------------------*/
#pagetop a {
  border-bottom-color:#19893b;
}
#pagetop a:hover {
  border-bottom-color: #47d08c;
}

/* 実績紹介ページの背景画像
--------------------------------------------------------------------*/
.works {
  background: transparent;
  position: relative;
  width: 100%;
}
.works::before {
  background: url(../img/bg_02_pc.jpg) 50% top no-repeat;
  background-size: cover;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  z-index: -1;
}
#works .btn__wrap {
  margin-left: auto;
  margin-right: auto;
  margin-top: 3rem;
  max-width: 400px;
}
.works-list a {
  transition: .3s all;
}
.works-list a:hover {
  background: rgba(102,102,102,0.8);
}
.category-list a {
  transition: .3s;
}
.category-list a:hover {
  opacity: 0.7;
}
.category-list__black {
  background:#01020a;
}
/* コンタクトページの背景画像
--------------------------------------------------------------------*/
.contact {
  background: transparent;
  position: relative;
  width: 100%;
}
.contact::before {
  background: url(../img/bg_03_pc.jpg) 50% top no-repeat;
  background-size: cover;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  z-index: -1;
}

[class="sub-btn"] {
  color: #fff;
  background:#19893b;
  border-color:#19893b;
}
[class="sub-btn"]:hover {
  color: #fff;
  background: #47d08c;
  border: 1px solid #47d08c;
}

input[class="back-btn"] {
  color:#19893b;
  background: #fff;
  border-color:#19893b;
}
input[class="back-btn"]:hover {
  color: #fff;
  background: #47d08c;
  border: 1px solid #47d08c;
}

/* Not Foundページの背景画像
--------------------------------------------------------------------*/
.not-found {
  background: transparent;
  position: relative;
  width: 100%;
}
.not-found::before {
  background: url(../img/bg_01_pc.jpg) 50% top no-repeat;
  background-size: cover;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
  z-index: -1;
}

.not-found h3 {
  font-size: calc(1.6rem + 2 * (100vw - 320px) / 697);
  margin-bottom:1.5rem;
}
/* スライダーの矢印の色
--------------------------------------------------------------------*/
.swiper-button-prev .icon-left_arrow2,
.swiper-button-next .icon-right_arrow2 {
  font-size: 3rem;
  transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  color: #eee;
}

.swiper-button-prev:hover .icon-left_arrow2,
.swiper-button-next:hover .icon-right_arrow2 {
  color: #47d08c;
}

/* ブログ　色変更
--------------------------------------------------------------------*/
.c-page_next_prev a:hover {
  color: #47d08c;
}
.widget-blog-aside:not(:last-of-type) {
  margin-bottom:2rem;
}
.widget-blog-aside a {
  color:#19893b;
  text-decoration: underline;
}
.widget-blog-aside a:hover {
  color: #47d08c;
  text-decoration: none;
}
.widget-blog-aside__tit {
  color:#202020;
  margin-bottom:.5rem;
}
.widget-blog-aside li a:hover {
  color: #47d08c;
}
#wp-calendar caption {
  color:#202020;
}
#wp-calendar td a {
  color:#19893b;
}
#wp-calendar td a:hover {
  color: #47d08c;
}
/* pdf ボタン　*/
.blog-pdf {
  margin-top: 1.5rem;
}

.blog-pdf a {
  text-decoration: none !important;
  padding: .8rem;
  border: 1px solid #c5c5c5;
  color: #060606;
  background: #f0f0f0;
  padding-left: 4.8rem;
  display: block;
  position: relative;
  transition: 0.3s ease all;
}

.blog-pdf a:after {
  content: "";
  background: url(../img/pdf.svg) no-repeat;
  width: 22px;
  height: 22px;
  position: absolute;
  left: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
}

.blog-pdf a:hover {
  background: #425c93;
  color: #fff;
  border-color: #425c93;
}

.pdf-link {
  margin-top: 1.25rem;
  line-height: 1;
}

.pdf-link a {
  color: #060606;
}

.pdf-link a:hover p {
  text-decoration: none !important;
}

.pdf-link figure {
  display: inline-block;
  max-width: 158px;
  margin-right: .5rem;
  vertical-align: middle;
}

.pdf-link p {
  display: inline-block;
  vertical-align: middle;
  text-decoration: underline;
}

@media print, screen and (min-width: 481px) {
  /*====================================================================/
  	/*------------------タブレットスタイル----------------
    /====================================================================*/
    .move-back_wrap {
      padding:2rem 6%;
    }
  }
  @media print, screen and (min-width: 798px) {
  /*====================================================================/
  	/*-------------------小さいPCスタイル----------------
    /====================================================================*/
  /* header
  ----------------------------------------------------------------*/
  .header__logo {
    width: 240px;
  }
  .move-back_wrap {
    padding:3rem 8%;
  }
  #global .global__items > li a {
    color: #202020;
  }
  #global .global__items > li a::before {
    background:#19893b;
  }
  .color-header #global .global__items > li a {
    color: #fff;
  }

  header.fixed #global .global__items a {
    color: #202020;
  }
  header.fixed #global .global__items a:hover {
    color: #fff;
  }

  /*　トップ画面　*/
  .move-back {
    top: calc(50% - 8rem);
  }

  /* feed */
  .top-cont04__half {
    background: linear-gradient(90deg, #19893b 49.99%, #3f96cf 49.99%);
  }
  .top-cont04__news {
    background:#19893b;
  }

  /*footer
  ----------------------------------------------------------------*/
  #footer__logo img {
    width: 80%;
  }

  .gallery-top figcaption {
    text-align: center;
  }

}
@media print, screen and (min-width: 1017px) {
  /*====================================================================/
  	/*-------------------PCスタイル-------------------
    /====================================================================*/
    /* 共通タイトル */
    h3.normal, h3.blog__tit,h3.privacy__tit {
      font-size: 1.8rem;
    }
    .not-found h3  {
      font-size: 1.8rem;
    }
    /*　トップ画面　*/
    #move-01 {
      font-size: 3.6rem;
    }
    #move-02 {
      font-size: 3.6rem;
    }
    .move-back {
      top: calc(50% - 8rem);
    }
    h3.table__tit {
      font-size: 2rem;
    }
    .l-col4 > * .c-box__tit, .slider-col4 > * .c-box__tit {
      font-size: 1.8rem;
    }
  }
  @media screen and (max-width: 797px) {
  /*====================================================================/
  	/*------------------スマホタブレット共通スタイル---------
    /====================================================================*/
    /* header */
    .header__logo {
      max-width: 50%;
      min-width: 30%;
    }
    .header__logo img {
      width: 100%;
      max-width: 200px;
    }

    /* グローバルのテキストの色を変更 */
    #global .global__items > li a {
      color: #202020;
    }
    #global .global__items > li a:hover {
      color:#19893b;
    }

    .color-header .drawer-hamburger {
      color: #fff;
    }

    header.fixed .drawer-hamburger {
      color: #202020;
    }

    .drawer-hamburger-icon, .drawer-hamburger-icon:before, .drawer-hamburger-icon:after {
      background-color: #202020;
    }

    .color-header .drawer-hamburger-icon, .color-header .drawer-hamburger-icon:before, .color-header .drawer-hamburger-icon:after {
      background-color: #fff;
    }

    header.fixed .drawer-hamburger-icon, header.fixed .drawer-hamburger-icon:before, header.fixed .drawer-hamburger-icon:after {
      background-color: #202020;
    }

    /* トップページ画面　*/
    .move-back {
      top: calc(50% - 5rem);
    }

    /* 背景画像 */
    .first::before {
      background-image: url(../img/bg_01_tb.jpg);
    }

    .top-cont02 {
      background: url(../img/bg_02_sp.jpg);
    }

    .top-cont05 {
      background-image: url(../img/bg_03_sp.jpg);
    }

    .works::before {
      background: url(../img/bg_02_sp.jpg) 50% top no-repeat;
    }

    .contact::before {
      background: url(../img/bg_03_sp.jpg) 50% top no-repeat;
    }

    /* feed */
    .feed-box--news {
      background:#19893b;
    }
    .feed-box--blog {
      background: #3f96cf;
    }

    #footer__logo {
      width: 50%;
    }
  }
  @media screen and (max-width: 480px) {
  /*====================================================================/
  	/*------------------スマホのみスタイル----------------
    /====================================================================*/
    .works-list .c-box__img img {
      height: 200px;
    }
    .first::before {
      background-image: url(../img/bg_01_sp.jpg);
    }

    .move-back {
      top: calc(50% - 6rem);
    }

    #footer__logo {
      width: 80%;
    }
  }
