
html,body{
  margin: 0;
  overflow-x: hidden;
  font-weight: bold;
}

a{
  text-decoration: none;
  color: black;
}

/* header */
header{
  margin: 0 auto;
  position: fixed;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  z-index: 999;
  width: 100%;

}

.header-logo{
  width: 23%;
  padding: 20px;
  margin-left: 10px;
}

.header-list{
  width: 43%;
  display: flex;
  list-style: none;
  float: right;
  margin: 0;
  margin-top: 28px;
}

.list-item{
  display: block;
  margin-right: 50px;
  font-size: 1.1rem;
  color:white;
}

.list-item a{
 color:#000;
}

img.campany-img,.ser-img, .map-img {
  width: 107%;
}

p.list-text {
  text-align: center;
  margin: 0;
  margin-right: -11px;
}

h2.tell-number {
  font-size:1.5rem;
  position: fixed;
  padding: 8px;
  margin: 0;
  background-color: white;
  z-index: 999;
  color:black;
}

span{
  color: #7DBE5E;
}

img.campany-img,.ser-img, .map-img {
  width: 107%;
}

p.list-text {
  text-align: center;
  margin: 0;
  margin-right: -11px;
}

h2.tell-number {
  position: fixed;
  padding: 8px;
  margin: 0; 
  background-color: #42A828;
  z-index: 999;
}

span{
  color: #ffffff;
 
}

.title-br{
  display: block;
  content: "";
  margin-bottom: -33px;
}

.main-img{
  position: relative;
  width: 100%;
  height: 613px;
}

.tittle {
  text-align: center;
    position: absolute;
    z-index: 1;
    top: 27%;
    left: 0%;
    right: 0;
    font-size: 3em;
    color: white;
}

span{
  font-size: 1.5rem;
}

.title-service{
  position: absolute;
    z-index: 2;
    top: 38%;
    left: 63%;
    right: 0;
    color: white;
    font-size: 1rem;
    line-height: 0;
}


.service-text{
  /* text-align: center; */
  padding-bottom: 90px;
}

.service-title{
  text-align: center;
}

.service-item{
  display: flex;
  flex-wrap: wrap;
  padding-top: 47px;
  justify-content: center;
  text-align: center;
  margin: auto;
}

.service-item-box{
  width: 200px;
  height: 200px;
  margin:30px;
  background-color: #42A828;
  top: 196vh;
    left: 172px;
}

.service-item-box img{
  width: 162px;
  padding: 30px 15px;
  /* padding: 19px; */
}
/* works */

h1.works-title {
  display: flex;
    margin: -20px 0;
    flex-wrap: wrap;
    justify-content: center;
    font-size: 3rem;
  padding-top: 57px;
}

.works{
  margin-top: 150px;
   background-image: url(../img/Rectangle\ 40.png);
   background-size: cover;
}

.works-content{
 
 display: flex;
  margin:30px 0;
 flex-wrap: wrap;
 justify-content: center;
 padding:30px;
}

.l-wrapper_01 {
  margin: 1rem auto;
  width: 28%;
  margin: 20px;
}

.l-wrapper_01:hover {
  transform: translateY(-3px);
  box-shadow: 0 7px 14px rgba(50,50,93,.1), 0 3px 6px rgba(0,0,0,.08);
  transition: all .5s;
}

.card_01 {
  background-color: #fff;
  box-shadow: 0 0 8px rgba(0, 0, 0, .16);
  color: #212121;
  text-decoration: none;
}

.card__header_01 {
  display: flex;
  flex-wrap: wrap;
}

.card__title_01 {
  padding: 1rem 1.5rem 0;
  font-size: 1.2rem;
  order: 1;
  margin-bottom: 18px;
  margin-top:-1px;
  font-weight: bold;
  text-decoration: none;
}

.card__thumbnail_01 {
  margin: 0;
  order: 0;
}

.card__image_01 {
  width: 100%;
}

.card__body_01 {
  padding: 0 1.5rem;
  padding-bottom: 20px;
}

.card__text_01 {
  font-size: .8rem;
  text-align:center;
  text-decoration: none;
	padding-bottom: 0;
}

.card__text2_01 {
  font-size: .8rem;
  margin-top: 0;
  margin-bottom: 1rem;
}

.card__text_01 + .card__text_01 {
  margin-top: .5rem;
}

.card__footer_01 {
  padding: 1rem;
  border-top: 1px solid #ddd;
}

.button_01 {
  display: inline-block;
  text-decoration: none;
  transition: background-color .3s ease-in-out;
  text-align: center;
}

.button_01 a {
  text-decoration: none;
}

.button_01.-compact {
  padding: .5rem 1rem;
  border-radius: .25rem;
  background-color: #24b41f;
  color: #fff;
  font-weight: bold;
	text-decoration: none;
}

.button_01.-compact:hover,
.button_01.-compact:focus {
  background-color: #24b41f;
}

section.contact {
  padding-bottom: 78px;
}


/* footer */
.footer__navi flex{
  list-style: none;
  padding: 0;
  margin: 0;
}

a {
  color: #ffffff;
  text-decoration: none;
}

a:hover {
  color: #000;
}

.flex {
  display: flex;
}

hr {
  height: 1px;
  border: 0;
  border-top: 1px solid #e5e7eb;
}

.footer {
  padding: 2rem;
  font-size: 15px;
  color: #ffffff;
  background: #8CC47D;
}

.footer__navi {
  flex-wrap: wrap;
  margin-bottom: 2rem;
  float: right;
}

.footer__navi li {
  display: inline-block;
}

.footer__navi li:not(:last-child) {
  margin-right: 16px;
}

.footer__logo {
  display: inline-block;
  margin-bottom: 1rem;
}

.respon2-main-img{
  display:none;
}


/* アニメーション */


.service-title span{opacity: 0;}
.service-title.appeartext span{ animation:text_anime_on 1s ease-out forwards; }
@keyframes text_anime_on {
	0% {opacity:0;}
	100% {opacity:1;}
}


@media screen and (max-width: 479px){
  header{
    display:none;
  }
  .header-respon{
    display:inline;
  }
  .main-img{
    display:none;
  }

  .respon2-main-img{
    display:inline;
    width:100%;
    /* height:90vh; */
  }

  h1.tittle {
    top: 33%;
}

  .works{
    margin-top:0;
  }

canvas#circleCanvas {
  margin: auto;//中心を揃える
  height:80vh;
}

.works-content {
  display: block;
  text-align: center;
}
.l-wrapper_01 {
  width: 90%;
}

 /* レスポンシブハンバーガー */
 ul{
  list-style: none;
}

      .hamburger {
          display: block;
          height: 60px;
          margin-left: auto;
          position: relative;
          z-index: 10;
          width: 60px;
          border: none;
          background-color: transparent;
      }
      .hamburger.-active .hamburger__line {
          background-color: transparent;
      }
      .hamburger.-active .hamburger__line::before {
          top: 0;
          transform: rotate(45deg);
      }
      .hamburger.-active .hamburger__line::after {
          top: 0;
          transform: rotate(-45deg);
      }
      .hamburger.-active .hamburger__text::before {
        content: '閉じる';
      }
      .hamburger__line {
          display: block;
          height: 2px;
          position: absolute;
          top: 23px;
          left: 50%;
          transform: translateX(-50%);
          width: 24px;
          background-color: #172e59;
          transition: 0.4s;
      }
      .hamburger__line:before,
      .hamburger__line:after {
          content: "";
          display: block;
          height: 100%;
          position: absolute;
          width: 100%;
          background-color: #172e59;
          transition: inherit;
      }
      .hamburger__line:before {
          top: -6px;
      }
      .hamburger__line:after {
          top: 6px;
      }
      .hamburger__text {
          position: absolute;
          bottom: 8px;
          left: 50%;
          transform: translateX(-50%);
          width: 100%;
      }
      .hamburger__text::before {
          content: "メニュー";
          text-align: center;
          color: #172e59;
          font-size: 10px;
          font-weight: 900;
      }
      .header-respon {
        width: 380px;
      }
      .header__nav-area {
          position: fixed;
          top: 0;
          left: -100%;
          z-index: 9;
          height: 100vh;
          width: 300px;
          visibility: hidden;
          padding-top: 60px;
          background-color: #fff;
          transition: 0.4s;
      }
      .header__nav-area.-active {
          left: 0;
        visibility: visible;
      }
      .global-navigation {
          padding-top: 40px;
          padding-right: 25px;
          padding-bottom: 120px;
      }
      .global-navigation__list > li {
          padding-bottom: 20px;
          border-bottom: 2px solid #e7e9ee;
      }
      .global-navigation__list > li + li {
        margin-top: 20px;
      }
      .global-navigation__link {
        display: flex;
          align-items: center;
          justify-content: space-between;
          color: #172e59;
          font-weight: 900;
          transition: color 0.4s;
          font-size: 0.875rem;
      }
      .global-navigation__link.-accordion {
          position: relative;
          background: none;
          border: none;
          -webkit-appearance: none;
          -moz-appearance: none;
          appearance: none;
          width: 100%;
          padding: 0;
      }
      .global-navigation__link.-accordion::after {
          content: '';
          display: block;
          height: 12px;
          position: absolute;
          top: 50%;
          right: 5px;
          width: 2px;
          background-color: #ed3242;
          transform: translateY(-50%);
          transition: transform 0.4s;
      }
      .global-navigation__link.-accordion::before {
          content: '';
          display: block;
          height: 2px;
          position: absolute;
          top: 50%;
          right: 0;
          width: 12px;
          background-color: #ed3242;
          transform: translateY(-50%);
          
      }
      .global-navigation__link.-active::after {
        transform: translateY(-50%) rotate(-90deg);
      }
      .accordion {
          height: 0;
          overflow: hidden;
          visibility: hidden;
          transition: 0.4s;
      }
      .accordion.-active {
          height: auto;
          padding-top: 30px;
          visibility: visible;
      }
      .accordion__list li {
          font-size: 0.75rem;
      }
      .accordion__list li + li {
           margin-top: 21px;
      }
      .accordion__link {
          color: #172e59;
      }

}