/*これ共通したほうがいいかも*/
.main-txt {
  line-height: 2;
}
.hero{
  margin-top: 200px;
}
/* 後で共通に */
.en-title {
  display: inline-block;
  padding: 25px 100px;
  background-image: url(../img/service-title-bg1.svg), url(../img/service-title-bg2.svg);
  background-position: left center, right center;
}

.section-subtitle {
  margin-bottom: 0;
  font-weight: normal;
  color: #4d4d4d;
}

/* 後で共通に */
/*ここまで共通したほうがいいかも*/
#works .main-txt {
  padding: 145px 0;
  background-image: url(../img/works_main-txt.png);
  background-size: contain;
  background-position: center;
}

.morita {
  margin: 100px 0 200px;
  background-image: url(../img/works_morita_bg.png);
  background-size: contain;
  background-position: bottom center;
}

.morita figure {
  position: absolute;
  top: -300px;
}

.morita .circle1 {
  width: 45%;
  background: linear-gradient(90deg, rgba(165, 208, 200, .3), rgba(165, 208, 200, .3));
}

.morita-txt {
  width: 50%;
  line-height: 2;
}

.morita-txt h2 {
  line-height: 2;
  padding-top: 20px;
  border-image: linear-gradient(90deg, #29ABE2, #D9E0B1) 1/0 0 2px 0;
  border-style: solid;
  border-image-slice: 1;
}

.morita-txt .space {
  padding: 70px 0;
}

.morita-txt dl {
  margin-bottom: 1em;
  display: flex;
  flex-wrap: wrap;

}

.morita-txt dt {
  width: 20%;
}

.morita-txt dd {
  width: 80%;
  margin-right: 0;
}

#works .morita-txt {
  text-align: left;
}

.bg2 {
  background-image: url(../img/works-bg2.png);
}

.belong {
  padding-bottom: 140px;

}

.belong h2 {
  padding: 10px 0;
  color: #fff;
  background: linear-gradient(90deg, #29ABE2, #fff);
  font-weight: normal;
  text-align: center;
}

.belong .section-content {
  border: 2px solid #4d4d4d;
  height: 500px;
}

/* WORK */
.works {
  text-align: center;
  /* background-image: url(../img/circle.gif);
  background-position: center right; */
  background-color: rgba(255,255,255,.6);
  background-image: url(../img/works-works-bg.png);
  background-size: contain;
  background-position: center;
}

.works .en-title {
  font-weight: normal;
  color: #30ade0;
  font-size: 50px;
}

.works .flex {
  display: flex;
  flex-wrap: wrap;
  text-align-last: left;
}

.works-list {
  width: 50%;
  line-height: 1.8;
  padding: 0 1em;
  margin: 30px 0 0;
  text-align: left;
}

.works-list h3 {
  font-size: 21px;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: 0.5em;
}

.works-list:nth-child(1) h3 {
  border-bottom: 2px solid #30ADE0;

}

.works-list:nth-child(2) h3 {
  border-bottom: 2px solid #Ffd700;
}

.works-list:nth-child(3) h3 {
  border-bottom: 2px solid #FBB03B;
}

.works-list:nth-child(4) h3 {
  border-bottom: 2px solid #A6CD71;
}

.works-list:nth-child(5) h3 {
  border-bottom: 2px solid #56B9D5;
}

.works-list:nth-child(6) h3 {
  border-bottom: 2px solid #Ffd700;
}

.works-list:nth-child(7) h3 {
  border-bottom: 2px solid #56B9D5;
}
.works-list:nth-child(8) h3 {
  border-bottom: 2px solid #FBB03B;
}
.works-list:nth-child(9) h3 {
  border-bottom: 2px solid #A6CD71;
}


.works-list ul ul {
  position: relative;
  /* margin-top: 1rem; */
  margin-left: 15px;
}

.works-list ul ul::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1em;
  border-left: 1px solid #4d4d4d;
}

.works-list ul ul li {
  position: relative;
  margin: 0;
  padding: 3px 23px;
  /* padding: 0; */
}

.works-list ul ul li::before {
  content: "";
  display: block;
  position: absolute;
  top: 1em;
  left: 0;
  width: 15px;
  height: 0;
  border-top: 1px solid #4d4d4d;
}

.works-list ul ul li:last-child::before {
  border-left: none;

}

/*タブレット*/
@media (max-width: 840px) {
  .hero {
    height: initial;
  }
  .hero{
    margin-top: 200px;
  }

  .morita {
    margin: 0;
  }

  .works .en-title {
    font-size: 21px;
    padding: 0;
  }

  .pc-morita {
    display: none;
  }


  .morita-txt {
    width: 100%;
    margin: 2em 0;
  }

  .morita-txt .space {
    padding: 10px 0;
  }

  .morita-txt dd {
    text-align: left;
  }

  .sp-border {
    background: linear-gradient(90deg, #29ABE2, #D9E0B1);
    padding: 10px;
  }

  .sp-border .space {
    padding: 35px 0 0 0;
  }

  .sp-border p {
    margin: auto;
    background-color: #fff;
    text-align: center;
    padding: 35px 0;
  }
}

/*SP*/
@media (max-width: 428px) {
  .hero {
    margin-top: 80px;
  }
  .hero .circle1, .hero .circle2{
    height: 300px;
  }
  .works .en-title {
    font-size: 16px;

  }

  .morita .section-item {
    flex-direction: column;
    margin: 35px 0;
  }

  .morita .morita-txt {
    margin-top: 35px;
  }

  .works-list {
    width: 100%;
  }

  .works-list h3 {
    font-size: 16px;
  }
}

@media (max-width: 840px) {

  .hero {
    position: relative;
    top: 0;
    left: 0;
  }

  /* .hero .hero-left{
    position:absolute;
    top: 0;
    left: 0;
  } */

}