@charset "UTF-8";


/*================================================================
 スマホ（全てのサイズで読み込む）
================================================================*/

/*
TOP PAGE
================================================================*/

.mv,
#company {
  padding-top: 75px;
}

/*slick(slider)*/

.slider {
  margin: 0 auto;
  width: 100%;
  max-width: 1385px;
}

.slider img{
  width: 100%; 
}

.slider .slick-slide { 
  height: auto !important; 
}

/*slider detail*/

.slick-arrow {
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  margin: auto !important;
  padding: 0 !important;
  width: 20px !important;
  height: 38px !important;
  color: transparent !important;
  transition: opacity 0.5s !important;
  z-index: 1 !important;
}
.slick-arrow:hover {
  opacity: 0.7 !important;
}

/* 共通設定 */

.slick-next::before,
.slick-next::after,
.slick-prev::before,
.slick-prev::after {
  position: absolute !important;
  top: 20px !important;
  bottom: 0 !important;
  margin: auto !important;
  content: "" !important;
  vertical-align: middle !important;
}
.slick-next::after,
.slick-prev::after {
  width: 20px !important;
  height: 20px !important;
  border-top: 2px solid #fff !important;
  border-right: 2px solid #fff !important;
}

/* next */

.slick-next {
  right: 14px !important;
}
.slick-next::after {
  transform: rotate(45deg) !important;
}

/* prev */

.slick-prev {
  left: 14px !important;
}
.slick-prev::after {
  transform: rotate(-135deg) !important;
}


/*
私たちについて
---------------------------------*/

#about h2 {
  color: #E21E31;
  font-size: 3.4rem;
} 

/*
業務内容
---------------------------------*/

#works {
  margin-top: -20px;
  background: #F7F7F7;
}

#works .adjust {
  margin: 0 auto;
  max-width: 1385px;
}

#works h2 .title {
  width: 60%;
  max-width: 220px;
}

#works h3 {
  position: relative;
  padding-left: 15px;
}

#works h3::before {
  display: inline-block;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 8px;
  height: 20px;
  background: #E21E31;
}

/*
リンク部分
---------------------------------*/

#link-area {
  text-align: center;
  max-width: 785px;
}

#link-area ul li {
  margin: 0 auto;
  max-width: 345px;
}

#link-area ul li a {
  width: 100%;
  padding: 25px;
  border: 4px solid #333;
}

/*ホバーで背景色がスライドして変わる*/
.hovItem {
  position: relative;
  z-index: 0;
  overflow: hidden;
  background-color: #fff;
}

.hovItem::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 0%;
  height: 100%;
  background-color: #E21E31;
  -webkit-transition: .5s;
  transition: .5s;
}

.hovItem:hover::before {
  width: 100%;
}

#link-area ul li .hovItem:hover {
  color: #fff;
  border: 4px solid transparent;
  opacity: 1;
}

#link-area ul li .hovItem:hover h2 .cap {
  color: #fff;
}

#link-area ul li a h2 {
  font-size: 2.8rem;
}

#link-area ul li a h2 .cap {
  padding-top: 12px;
}

#link-area .contact .txt {
  color: #E21E31;
  font-size: 2rem;
  font-weight: 900;
}

#link-area .contact .number {
  font-size: 4rem;
  font-weight: 900;
  letter-spacing: .2rem;
}

.map {
  height: 250px;
}

/*
COMPANY（会社情報）
================================================================*/

#company {
  max-width: 970px;
}

#company h2 {
  padding-bottom: 20px;
  font-size: 2.4rem;
  border-bottom: 3px solid #E21E31;
}

#company dl .wrap {
  padding: 25px 0;
  border-bottom: 1px solid #DEDEDE;
}

#company dl dt {
  margin-bottom: 12px;
}

#company dl dd {
  color: #131C36;
  font-weight: 400;
  line-height: 1.5;
}


/*================================================================
PC（画面幅900px以上で読み込む）
================================================================*/
@media screen and (min-width:900px) {

  .mv,
  #company {
    padding-top: 85px;
  }

  .slick-next::after,
  .slick-prev::after {
    border-top: 3px solid #fff !important;
    border-right: 3px solid #fff !important;
  }

  /* next */

  .slick-next {
    right: 18px !important;
  }

  /* prev */

  .slick-prev {
    left: 18px !important;
  }


  /*
  私たちについて
  ---------------------------------*/

  #about {
    display: flex;
    justify-content: center;
    margin-top: 50px;
  }

  #about h2 {
    padding: 10px 80px 0 0;
    white-space: nowrap;
  } 

  #about p {
    margin: 0;
  }

  /*
  業務内容
  ---------------------------------*/

  #works h2 .title {
    max-width: 435px;
  }

  #works h3 {
    position: relative;
    padding-left: 15px;
  }

  #works section {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    max-width: 785px;
  }

  #works section .wrap {
    max-width: 406px;
  }

  #works section .ph {
    max-width: 346px;
  }

  #works #sec2 {
    padding-top: 50px;
  }

  /*
  リンク部分
  ---------------------------------*/

  #link-area ul {
    display: flex;
    justify-content: space-between;
  }
  
  #link-area ul li {
    margin: 0;
    padding: 0;
    min-width: 345px;
  }

  #link-area .contact {
    padding-top: 50px;
  }

  #link-area .contact .txt {
    font-size: 2.8rem;
  }

  #link-area .contact .number {
    font-size: 5.2rem;
    letter-spacing: .3rem;
  }

  .map {
    margin: 0 auto;
    max-width: 970px;
    height: 460px;
  }


  /*
  COMPANY（会社情報）
  ================================================================*/

  #company dl .wrap {
    display: flex;
  }

  #company dl dt {
    margin-bottom: 0;
    width: 160px;
  }

}







#making {
  padding-top: 85px;
  text-align: center;
}