@import url(reset.css);
@import url(font.css);
@import url(column.css);
@import url(common.css);
@import url(pc.css);
@import url(mobile.css);
.service .gsp {
  padding-bottom: 0;
}
.service .gsp .first h2 {
  margin-top: 6.5vw;
  margin-bottom: 3vw;
  font-size: 3.13vw;
  line-height: 4.17vw;
  color: #141414;
}
.service .gsp .first .content {
  padding-bottom: 10vw;
  border-top: 1px solid rgba(20, 20, 20, 0.2);
  padding-left: 31.82vw;
}
.service .gsp .first .content dl {
  padding: 2.8vw 0;
  border-bottom: 1px solid rgba(20, 20, 20, 0.2);
}
.service .gsp .first .content dl:last-of-type {
  border-bottom: 0;
}
.service .gsp .first .content dl dt {
  font-size: 1.56vw;
  line-height: 1.88vw;
  color: #141414;
}
.service .gsp .first .content dl dd {
  margin-top: 1.88vw;
  font-size: 0.94vw;
  line-height: 1.56vw;
  color: #141414;
  font-weight: 300;
}
.service .esg .banner .corner {
  position: absolute;
  top: 2.5vw;
  right: 3.28vw;
  font-size: 0.94vw;
  line-height: 2.34vw;
  letter-spacing: 0.05vw;
  color: #ffffff;
}
.service .esg .first {
  padding: 2vw 0;
}
.service .esg .first h2 {
  margin: 5vw 0;
  font-size: 2.08vw;
  line-height: 3.13vw;
  color: #141414;
}
.service .esg .first .intro p {
  font-size: 0.94vw;
  line-height: 1.25vw;
  color: #141414;
  padding-right: 3vw;
}
.service .esg .first .cover {
  margin: 6vw 0;
  display: flex;
  justify-content: flex-end;
}
.service .esg .first .cover video {
  position: relative;
  width: 62.86vw;
}
.service .esg .first .cover img {
  position: relative;
  width: 62.86vw;
}
.service .esg .first .idea {
  margin-bottom: 9vw;
}
.service .esg .first .idea h3 {
  font-size: 1.25vw;
  line-height: 1.88vw;
  color: #141414;
  text-align: center;
}
.service .esg .first .idea p {
  margin: 0 auto;
  width: 34vw;
  font-weight: 400;
  font-size: 1.25vw;
  line-height: 1.88vw;
  color: #141414;
}
.service .esg .second {
  width: 62.92vw;
  margin: 0 auto;
}
.service .esg .second dl {
  padding: 5vw 0;
  display: flex;
  flex-direction: row;
  border-bottom: 1px solid rgba(18, 26, 43, 0.2);
}
.service .esg .second dl dt {
  flex: none;
  width: 16vw;
}
.service .esg .second dl dt h3 {
  font-size: 2.08vw;
  line-height: 1.88vw;
  color: #141414;
}
.service .esg .second dl dt p {
  margin-top: 0.2vw;
  font-size: 1.25vw;
  letter-spacing: 0.06vw;
  color: #141414;
}
.service .esg .second dl dd {
  flex: 1;
}
.service .esg .second dl dd p {
  font-size: 0.94vw;
  line-height: 1.25vw;
  color: #141414;
  margin-bottom: 1vw;
  font-weight: 300;
}
.service .esg .second dl dd p em {
  font-weight: 600;
}
.service .esg .second ul {
  margin-top: 5vw;
}
.service .esg .second ul li {
  border-bottom: 1px solid rgba(18, 26, 43, 0.2);
}
.service .esg .second ul li a {
  display: flex;
  flex-direction: row;
  align-items: center;
  font-size: 0.83vw;
  line-height: 3.8vw;
  height: 3.8vw;
  color: #141414;
}
.service .esg .second ul li a:hover {
  color: #3bb183;
}
.service .esg .second ul li time {
  flex: none;
  width: 15vw;
}
.service .esg .second ul li h4 {
  flex: 1;
}
.service .esg .second ul li img {
  margin-left: 3vw;
  flex: none;
  width: 0.83vw;
  height: 0.83vw;
}
.service .scss {
  padding-bottom: 0;
  background-color: #eaf2f6;
}
.service .scss .first {
  padding: 5.8vw 0;
}
.service .scss .first h2 {
  font-size: 3.13vw;
  line-height: 4.17vw;
  color: #141414;
  margin-bottom: 3vw;
}
.service .scss .first .content {
  padding: 3.75vw;
  padding-left: 32vw;
  border-top: 1px solid rgba(20, 20, 20, 0.2);
}
.service .scss .first .content h4 {
  font-size: 0.94vw;
  line-height: 1.56vw;
  color: #141414;
  margin-bottom: 4vw;
}
.service .scss .first .content dl {
  padding: 4.5vw 0;
  display: flex;
  flex-direction: row;
  border-bottom: 1px solid rgba(20, 20, 20, 0.2);
}
.service .scss .first .content dl dt {
  width: 16vw;
  flex: none;
  font-size: 1.56vw;
  line-height: 1.88vw;
  color: #141414;
}
.service .scss .first .content dl dd {
  flex: 1;
  font-size: 0.94vw;
  line-height: 1.56vw;
  color: #141414;
}
.service .scss .first .content dl ol {
  flex: 1;
}
.service .scss .first .content dl ol li {
  font-size: 0.94vw;
  line-height: 1.88vw;
  color: #141414;
  font-weight: 300;
}
.service .scss .first .content .cell {
  display: flex;
  flex-direction: row;
  margin-bottom: 2.4vw;
}
.service .scss .first .content .cell p {
  width: 14vw;
  flex: none;
  padding-right: 2vw;
}
.service .scss .second {
  background-color: #fff;
  padding: 7vw 0;
}
.service .scss .second h2 {
  font-size: 3.13vw;
  line-height: 4.17vw;
  color: #141414;
  margin-bottom: 5vw;
}
.service .scss .second .inner {
  display: flex;
  flex-direction: row;
}
.service .scss .second .tabs {
  width: 48vw;
  flex: none;
}
.service .scss .second .tabs dl {
  cursor: pointer;
  padding: 2.3vw 2vw;
  border-top: 1px solid rgba(20, 20, 20, 0.2);
  border-left: 0.5vw solid transparent;
}
.service .scss .second .tabs dl.current {
  border-left: 0.5vw solid #243456;
}
.service .scss .second .tabs dl:last-of-type {
  border-bottom: 1px solid rgba(20, 20, 20, 0.2);
}
.service .scss .second .tabs dl dt {
  font-size: 0.94vw;
  line-height: 2.5vw;
  color: #141414;
  margin-bottom: 0.5vw;
}
.service .scss .second .tabs dl dd {
  font-size: 1.17vw;
  color: #999;
}
.service .scss .second .panels {
  flex: 1;
}
@media screen and (max-width: 960px) {
  .service .gsp .first {
    padding: 0 4vw;
  }
  .service .gsp .first h2 {
    font-size: 8vw;
    line-height: 12vw;
    margin-bottom: 12vw;
  }
  .service .gsp .first .content {
    padding-left: 0;
  }
  .service .gsp .first .content dl {
    padding: 12vw 0;
  }
  .service .gsp .first .content dl dt {
    font-size: 4vw;
    line-height: 5.33vw;
    color: #cfa052;
  }
  .service .gsp .first .content dl dd {
    font-size: 3.47vw;
    line-height: 5.33vw;
  }
  .service .gsp .first .content dl dd p {
    font-weight: 400;
  }
  .service .esg .banner .corner {
    font-size: 2.4vw;
    right: 4.27vw;
    top: 9.6vw;
  }
  .service .esg .first {
    padding: 15vw 4vw;
  }
  .service .esg .first h2 {
    font-size: 5.33vw;
    line-height: 8vw;
    margin-bottom: 10vw;
  }
  .service .esg .first .intro p {
    font-size: 3.47vw;
    line-height: 5.6vw;
    padding-right: 0;
    margin-bottom: 9.47vw;
  }
  .service .esg .first .cover {
    margin: 13vw 0;
    position: relative;
    left: -4vw;
    right: -4vw;
    width: 100vw;
  }
  .service .esg .first .cover img {
    width: 100%;
  }
  .service .esg .first .idea h3 {
    font-size: 5.33vw;
    line-height: 4.8vw;
    text-align: left;
    margin-bottom: 10vw;
  }
  .service .esg .first .idea p {
    width: auto;
    padding-left: 27vw;
    font-size: 3.47vw;
    line-height: 5.6vw;
  }
  .service .esg .second {
    padding: 12.9vw 4vw;
    width: auto;
  }
  .service .esg .second dl {
    flex-direction: column;
    margin-bottom: 10vw;
  }
  .service .esg .second dl dt h3 {
    font-size: 5.33vw;
    line-height: 4.8vw;
  }
  .service .esg .second dl dt p {
    font-size: 3.47vw;
  }
  .service .esg .second dl dd {
    margin-top: 10vw;
    padding-left: 22.93vw;
  }
  .service .esg .second dl dd p {
    font-size: 3.47vw;
    line-height: 150%;
    margin-bottom: 10vw;
  }
  .service .esg .second dl dd p em {
    font-weight: 500;
  }
  .service .esg .second ul {
    margin-bottom: 16vw;
  }
  .service .esg .second ul li a {
    position: relative;
    flex-direction: column;
    align-items: flex-start;
    font-size: 3.47vw;
    height: auto;
    padding: 8.53vw 0;
    color: #141414;
    opacity: 0.7;
  }
  .service .esg .second ul li a h4 {
    width: 44.53vw;
    order: 1;
    font-size: 3.2vw;
    line-height: 4.8vw;
  }
  .service .esg .second ul li a time {
    margin-top: 4.93vw;
    order: 2;
  }
  .service .esg .second ul li a img {
    position: absolute;
    top: 9.67vw;
    right: 0;
    width: 4.67vw;
    height: 4.67vw;
    margin-left: 0;
  }
  .service .scss .first h2 {
    font-size: 8vw;
    line-height: 12vw;
    margin: 10vw 0;
  }
  .service .scss .first .content {
    padding-left: 0;
  }
  .service .scss .first .content h4 {
    font-size: 3.47vw;
    line-height: 5.6vw;
    padding: 11.6vw 0;
    border-bottom: 1px solid rgba(20, 20, 20, 0.2);
  }
  .service .scss .first .content dl {
    padding: 11.6vw 0 0 0;
  }
  .service .scss .first .content dl dt {
    width: 17vw;
    margin-right: 6.67vw;
    font-size: 4vw;
    line-height: 5.33vw;
  }
  .service .scss .first .content dl dd {
    font-size: 3.47vw;
    line-height: 4vw;
  }
  .service .scss .first .content dl dd .cell {
    flex-direction: column;
  }
  .service .scss .first .content dl dd .cell p {
    width: auto;
    margin-bottom: 6vw;
  }
  .service .scss .first .content dl dd .cell ol {
    margin-bottom: 10vw;
  }
  .service .scss .first .content dl dd .cell ol li {
    font-size: 3.47vw;
    line-height: 150%;
  }
  .service .scss .second {
    padding: 0;
    padding-top: 20vw;
  }
  .service .scss .second h2 {
    font-size: 8vw;
    line-height: 12vw;
    margin-bottom: 13.3vw;
  }
  .service .scss .second .inner {
    flex-direction: column;
  }
  .service .scss .second .inner .tabs {
    position: relative;
    width: 100%;
  }
  .service .scss .second .inner .tabs .bar {
    display: block;
    content: " ";
    position: absolute;
    top: 0;
    left: 0;
    height: 1.33vw;
    width: 23vw;
    background-color: #243456;
    transition: all 0.3s linear;
  }
  .service .scss .second .inner .tabs dl {
    display: none;
    padding: 9.6vw 0;
    border-left: 0;
    position: relative;
  }
  .service .scss .second .inner .tabs dl dt {
    font-size: 3.2vw;
  }
  .service .scss .second .inner .tabs dl dd {
    font-size: 5.33vw;
    margin-top: 2vw;
  }
  .service .scss .second .inner .tabs dl.current {
    display: block;
  }
  .service .scss .second .inner .panels {
    width: 100vw;
    position: relative;
    left: -4vw;
    right: -4vw;
  }
}
/*# sourceMappingURL=./service.css.map */