.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
}

.slick-slider .slick-track, .slick-slider .slick-list {
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before {
  display: table;
  content: "";
}
.slick-track:after {
  display: table;
  content: "";
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir=rtl] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.works-slider {
  position: relative;
}
.works-slider .works-slider-item a {
  color: #000;
  text-decoration: none;
}
.works-slider .works-slider-item a:hover .slider-item-image img {
  -ms-transform: scale(1.2);
      transform: scale(1.2);
}
.works-slider .works-slider-item a:hover .slider-item-button {
  border-color: #fdcd00;
  background: #fff;
}
.works-slider .slider-item-image {
  position: relative;
  overflow: hidden;
}
.works-slider .slider-item-image img {
  transition: all 0.3s ease;
}
.works-slider .image-text {
  position: absolute;
  left: 0;
  top: 0;
  font-weight: 300;
  background: #fdcd00;
}
.works-slider .slider-item-button {
  background: #fdcd00;
  font-weight: 500;
  text-align: center;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  position: relative;
  transition: all 0.3s ease;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.works-slider .slick-arrow {
  position: absolute;
  -ms-transform: translateY(-50%);
      transform: translateY(-50%);
  z-index: 10;
  text-indent: -10rem;
  overflow: hidden;
  appearance: none;
  cursor: pointer;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.5);
}
.works-slider .slick-arrow::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.works-slider .slick-next::before {
  -ms-transform: rotate(180deg);
      transform: rotate(180deg);
}

@media print, (min-width: 721px) {
  .works-slider {
    margin-bottom: 55px;
  }
  .works-slider .works-slider-item {
    margin: 0 20px;
    width: 316px;
  }
  .works-slider .works-slider-item a {
    max-width: 316px;
  }
  .works-slider .slider-item-image {
    max-width: 316px;
    margin: 0 auto -17px;
  }
  .works-slider .image-text {
    font-size: 0.14rem;
    padding: 1px 10px;
  }
  .works-slider .slider-item-button {
    font-size: 0.16rem;
    padding: 0 10px;
    min-width: 275px;
    min-height: 46px;
    border: 2px solid transparent;
    margin-left: -14px;
  }
  .works-slider .slick-arrow {
    top: 52%;
    width: 33px;
    height: 33px;
    margin-top: -17px;
  }
  .works-slider .slick-arrow::before {
    background: url(../img/top/icn_slider.svg) no-repeat center/6px auto;
  }
  .works-slider .slick-prev {
    left: 7.8%;
  }
  .works-slider .slick-next {
    right: 7.8%;
  }
}
@media only screen and (max-width: 720.98px) {
  .works-slider {
    margin-bottom: 0.78rem;
  }
  .works-slider .works-slider-item {
    margin: 0 0.2rem;
  }
  .works-slider .works-slider-item a {
    width: 6.32rem;
  }
  .works-slider .slider-item-image {
    width: 6.32rem;
    margin: 0 auto -0.34rem;
  }
  .works-slider .image-text {
    font-size: 0.28rem;
    padding: 0.01rem 0.2rem;
  }
  .works-slider .slider-item-button {
    font-size: 0.3rem;
    padding: 0 1.1rem 0 0.14rem;
    width: 100%;
    min-height: 0.9rem;
    border: 0.04rem solid transparent;
  }
  .works-slider .slick-arrow {
    top: 53.5%;
    width: 0.6rem;
    height: 0.6rem;
    margin-top: -0.17rem;
  }
  .works-slider .slick-arrow::before {
    background: url(../img/top/icn_slider.svg) no-repeat center/0.13rem auto;
  }
  .works-slider .slick-prev {
    left: 1.6%;
  }
  .works-slider .slick-next {
    right: 1.6%;
  }
}
.block-service {
  position: relative;
}
.block-service .block-service-background {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.block-service .block-service-background::before {
  content: "";
  position: absolute;
  bottom: 0;
}
.block-service .service-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.block-service .service-content {
  position: relative;
  z-index: 1;
}
.block-service .service-number img {
  width: 100%;
  height: auto;
}
.block-service .service-title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  color: #1e8514;
}
.block-service .service-text {
  margin-bottom: 0;
  font-feature-settings: "palt";
}
.block-service.is-reverse::before {
  right: unset;
  left: 0;
}
.block-service.is-reverse .service-image {
  left: unset;
  right: 0;
}

@media print, (min-width: 721px) {
  .block-service {
    padding: 36px 0 91px;
    min-height: 372px;
    margin-bottom: 82px;
  }
  .block-service:last-child {
    margin-bottom: 0;
  }
  .block-service .block-service-background::before {
    left: 0;
    top: 88px;
    width: 100%;
    background: url(../img/services/service_decor_right.png) center center/cover no-repeat;
  }
  .block-service .wrapper {
    max-width: 1235px;
    margin-bottom: 122px;
  }
  .block-service .service-image {
    position: absolute;
    top: 0;
    left: -45px;
    width: calc(50% + 202px);
    height: 372px;
    -webkit-clip-path: polygon(0 0, 100% 0, 83.4% 100%, 0% 100%);
            clip-path: polygon(0 0, 100% 0, 83.4% 100%, 0% 100%);
  }
  .block-service .service-content {
    max-width: 430px;
    margin-left: auto;
  }
  .block-service .service-number {
    width: 162px;
    margin-left: auto;
    margin-bottom: -20px;
  }
  .block-service .service-label {
    width: 80px;
    margin-bottom: 2px;
  }
  .block-service .service-title {
    font-size: 0.3rem;
    margin-bottom: 22px;
  }
  .block-service .service-text {
    font-size: 0.15rem;
    line-height: 1.8666666667;
    max-width: 376px;
  }
  .block-service.is-two .service-number {
    width: 160px;
    margin-bottom: 33px;
  }
  .block-service.is-three .service-number {
    width: 162px;
    margin-bottom: 12px;
  }
  .block-service.is-reverse .block-service-backgroud::before {
    left: 0;
    background: url(../img/services/service_decor_left.png) center center/cover no-repeat;
  }
  .block-service.is-reverse .service-image {
    right: -45px;
    -webkit-clip-path: polygon(15.3% 0, 100% 0, 100% 100%, 0% 100%);
            clip-path: polygon(15.3% 0, 100% 0, 100% 100%, 0% 100%);
  }
  .block-service.is-reverse .service-content {
    margin-left: unset;
    padding-left: 48px;
    width: 435px;
  }
  .block-service.is-reverse .service-number {
    margin-left: unset;
  }
  .block-service.is-reverse .service-label {
    margin-left: 10px;
  }
  .block-service.is-reverse .service-title {
    margin-left: 8px;
  }
  .block-service.is-reverse .service-text {
    margin-right: 0;
    max-width: unset;
    margin-left: 10px;
  }
}
@media screen and (max-width: 1250px) and (min-width: 721px) {
  .block-service .service-image {
    width: calc(100% - 430px);
  }
}
@media screen and (max-width: 950px) and (min-width: 721px) {
  .block-service .service-content {
    max-width: 350px;
  }
  .block-service .service-image {
    width: calc(100% - 350px);
  }
}
@media only screen and (max-width: 720.98px) {
  .block-service + .block-service {
    margin-top: 0.98rem;
  }
  .block-service {
    min-height: 3.12rem;
    padding: 0 0 1.13rem;
  }
  .block-service .block-service-background::before {
    top: 1.35rem;
    bottom: 0;
    right: 0;
    width: 100%;
    background: url(../img/services/sp/service_decor_right.png) center center/cover no-repeat;
    -webkit-clip-path: polygon(22% 0, 100% 0, 100% 100%, 0% 100%);
            clip-path: polygon(22% 0, 100% 0, 100% 100%, 0% 100%);
  }
  .block-service:last-child {
    margin-bottom: 0;
  }
  .block-service .wrapper {
    margin-bottom: 0.94rem;
  }
  .block-service .service-image {
    width: 6.68rem;
    margin-bottom: 0.39rem;
    margin-left: -0.55rem;
    -webkit-clip-path: polygon(0 0, 100% 0, 83% 100%, 0% 100%);
            clip-path: polygon(0 0, 100% 0, 83% 100%, 0% 100%);
  }
  .block-service .service-content {
    position: relative;
  }
  .block-service .service-number {
    position: absolute;
    top: -0.07rem;
    right: 0.06rem;
    width: 1.55rem;
  }
  .block-service .service-number img {
    width: 100%;
    height: auto;
  }
  .block-service .service-title, .block-service .service-label {
    padding-right: 1.6rem;
  }
  .block-service .service-label {
    height: 0.28rem;
    margin-bottom: 0.17rem;
  }
  .block-service .service-label img {
    width: auto;
    height: 100%;
  }
  .block-service .service-title {
    font-size: 0.48rem;
    margin-bottom: 0.06rem;
  }
  .block-service .service-text {
    font-size: 0.3rem;
    line-height: 1.8666666667;
    margin: 0 -0.06rem;
    text-align: justify;
  }
  .block-service.is-reverse .block-service-background::before {
    top: 1.1rem;
    left: 0;
    right: unset;
    background: url(../img/services/sp/service_decor_left.png) center center/cover no-repeat;
    -webkit-clip-path: polygon(0 0, 100% 0, 83.3% 100%, 0% 100%);
            clip-path: polygon(0 0, 100% 0, 83.3% 100%, 0% 100%);
  }
  .block-service.is-reverse .service-image {
    margin-right: -0.55rem;
    margin-left: 0;
  }
  .block-service.is-reverse .service-image {
    -webkit-clip-path: polygon(17% 0, 100% 0, 100% 100%, 0% 100%);
            clip-path: polygon(17% 0, 100% 0, 100% 100%, 0% 100%);
  }
}
@keyframes lineAnimateWidth {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}
@keyframes lineAnimateHalfWidth {
  0% {
    width: 0;
  }
  100% {
    width: calc(50% - 81px);
  }
}
@keyframes lineAnimateHalfWidthSP {
  0% {
    width: 0;
  }
  100% {
    width: calc(50% - 1.4rem);
  }
}
@keyframes lineAnimateHeight {
  0% {
    height: 0;
  }
  100% {
    height: 100%;
  }
}
@media print, (min-width: 721px) {
  .breadcrumb {
    padding: 10px 26px;
  }
}
@media print, (min-width: 721px) {
  .section-common-keyvisual .keyvisual-background {
    background-image: url("../img/services/keyvisual_img.jpg");
  }
}
@media only screen and (max-width: 720.98px) {
  .section-common-keyvisual .keyvisual-background {
    background-image: url("../img/services/sp/keyvisual_img.jpg");
  }
}
.section-service .service-detail {
  position: relative;
}
.section-service .service-detail::before, .section-service .service-detail::after {
  position: absolute;
  content: "";
  background: #1e8514;
  width: 3px;
  height: 0;
}
.section-service .service-detail::before {
  top: 0;
  left: 0;
}
.section-service .service-detail::after {
  bottom: 0;
  right: 0;
}
.section-service .service-detail.animation-section-finished::before {
  animation: lineAnimateHeight 0.2s linear 0.2s forwards;
}
.section-service .service-detail.animation-section-finished::after {
  animation: lineAnimateHeight 0.2s linear 0.6s forwards;
}
.section-service .service-detail.animation-section-finished .detail-title::before {
  animation: lineAnimateHalfWidth 0.2s linear 0s forwards;
}
.section-service .service-detail.animation-section-finished .detail-title::after {
  animation: lineAnimateHalfWidth 0.2s linear 0.8s forwards;
}
.section-service .service-detail.animation-section-finished .service-inner::before {
  animation: lineAnimateWidth 0.2s linear 0.4s forwards;
}
.section-service .detail-title {
  text-align: center;
  color: #1e8514;
  font-weight: bold;
  position: relative;
}
.section-service .detail-title::before, .section-service .detail-title::after {
  position: absolute;
  content: "";
  background: #1e8514;
  height: 0.03rem;
  width: 0;
  top: 50%;
}
.section-service .detail-title::after {
  right: 0;
}
.section-service .service-inner {
  position: relative;
}
.section-service .service-inner::before {
  position: absolute;
  content: "";
  background: #1e8514;
  height: 0.03rem;
  width: 0;
  bottom: 0;
  left: 0;
}
.section-service .works-slider .slick-arrow {
  background: rgba(253, 205, 0, 0.5);
}
.section-service .works-slider-item a:hover .slider-item-button {
  border-color: transparent;
  color: #fdcd00;
  background: #000;
}
.section-service .works-slider-item a:hover .slider-item-button::before {
  background-image: url("../img/common/icn_arrow_right_yellow.svg");
}
.section-service .button-primary {
  margin: 0 auto;
}

@media print, (min-width: 721px) {
  .section-service {
    padding: 36px 0 0;
  }
  .section-service .wrapper-inner {
    max-width: 1178px;
    margin: 0 auto;
    padding: 0 20px;
  }
  .section-service .wrapper-inner.two {
    max-width: 802px;
  }
  .slick-slider .slick-track, .slick-slider .slick-list {
    margin: 0 0 0 8px;
  }
  .two .slick-slider .slick-track,
  .two .slick-slider .slick-list {
    margin: 0 0 0 15px;
  }
  .section-service .detail-title {
    font-size: 0.31rem;
    margin: -73px -20px 26px;
  }
  .section-service .detail-title::before {
    right: calc(50% + 81px);
  }
  .section-service .service-inner {
    padding: 50px 20px 46px;
  }
  .section-service .works-slider {
    max-width: 1060px;
    margin: 0 auto 40px;
  }
  .section-service .works-slider .slick-prev {
    left: 1px;
  }
  .section-service .works-slider .slick-next {
    right: 1px;
  }
}
@media only screen and (max-width: 720.98px) {
  .section-service {
    padding: 0.69rem 0 0;
  }
  .section-service .wrapper-inner {
    width: 6.33rem;
    margin: 0 auto;
  }
  .section-service .detail-title {
    font-size: 0.48rem;
    margin: -0.83rem -0.51rem 0.32rem;
  }
  .section-service .detail-title::before, .section-service .detail-title::after {
    height: 0.05rem;
    top: 46%;
  }
  .section-service .detail-title::before {
    right: calc(50% + 1.4rem);
  }
  .section-service .service-detail::before, .section-service .service-detail::after {
    width: 0.05rem;
  }
  .section-service .service-detail.animation-section-finished .detail-title::before {
    animation: lineAnimateHalfWidthSP 0.2s linear 0s forwards !important;
  }
  .section-service .service-detail.animation-section-finished .detail-title::after {
    animation: lineAnimateHalfWidthSP 0.2s linear 0.8s forwards !important;
  }
  .section-service .service-inner {
    padding: 0.5rem 0.51rem 0.64rem;
  }
  .section-service .service-inner::before {
    height: 0.05rem;
  }
  .section-service .works-slider {
    margin: 0 auto 0.37rem;
  }
  .section-service .works-slider .works-slider-item {
    margin: 0;
  }
  .section-service .works-slider .works-slider-item a {
    width: 5.33rem;
  }
  .section-service .works-slider .slick-arrow {
    top: 2.15rem;
  }
  .section-service .works-slider .slick-prev {
    left: -0.27rem;
  }
  .section-service .works-slider .slick-next {
    right: -0.27rem;
  }
  .section-service .works-slider .image-text {
    font-size: 0.24rem;
    padding: 0.01rem 0.12rem;
  }
  .section-service .slider-item-image {
    width: 5.33rem;
    margin-bottom: -0.29rem;
  }
  .section-service .slider-item-button {
    width: 5.33rem;
    padding: 0 0.07rem;
    font-size: 0.28rem;
    min-height: 0.76rem;
  }
  .section-service .slider-item-button::before {
    right: 0.08rem;
    width: 0.78rem;
    height: 0.13rem;
  }
}
.block-service {
  position: relative;
}
.block-service.is-one .button-primary::after {
  background-image: url("../img/services/service_icn_button_01.png");
}
.block-service.is-two .button-primary::after {
  background-image: url("../img/services/service_icn_button_02.png");
}
.block-service.is-three .button-primary::after {
  background-image: url("../img/services/service_icn_button_03.png");
}

@media print, (min-width: 721px) {
  .block-service.is-one .button-primary {
    padding: 0 20px;
  }
  .block-service.is-one .button-primary::after {
    width: 70px;
    height: 49px;
    left: -9px;
    top: -4px;
  }
  .block-service.is-one .button-primary:hover::after {
    left: 178px;
  }
  .block-service.is-two .button-primary::after {
    width: 98px;
    height: 54px;
    left: -39px;
    top: -14px;
  }
  .block-service.is-two .button-primary:hover::after {
    left: 167px;
  }
  .block-service.is-three {
    padding-bottom: 77px;
  }
  .block-service.is-three .button-primary::after {
    width: 62px;
    height: 41px;
    left: -10px;
    top: 1px;
  }
  .block-service.is-three .button-primary:hover::after {
    left: 174px;
  }
}
@media screen and (max-width: 1250px) and (min-width: 721px) {
  .block-service .service-image {
    width: calc(100% - 430px);
  }
}
@media screen and (max-width: 950px) and (min-width: 721px) {
  .block-service .service-content {
    max-width: 350px;
  }
  .block-service .service-image {
    width: calc(100% - 350px);
  }
}
@media only screen and (max-width: 720.98px) {
  .block-service.is-one .button-primary {
    padding: 0 0.21rem 0 0.45rem;
  }
  .block-service.is-one .button-primary::after {
    width: 1.35rem;
    height: 0.92rem;
    left: -0.31rem;
    top: -0.12rem;
  }
  .block-service.is-one .button-primary:hover::after {
    left: 2.9rem;
  }
  .block-service.is-two .button-primary::after {
    width: 1.81rem;
    height: 1rem;
    left: -0.8rem;
    top: -0.24rem;
  }
  .block-service.is-two .button-primary:hover::after {
    left: 3.2rem;
  }
  .block-service.is-three .button-primary::after {
    width: 1.1rem;
    height: 0.72rem;
    left: -0.15rem;
    top: 0.02rem;
  }
  .block-service.is-three .button-primary:hover::after {
    left: 1.47rem;
  }
}
/*# sourceMappingURL=services.css.map */