.about {
  padding: 0 0 48px;
  background: #EFE2D9;
}
.about .detail {
  position: relative;
  top: -56px;
}
.about .detail .img {
  margin: 0 0 48px;
}
.about .detail .area-text .text + .text {
  margin: 1em 0 0;
}
.about .detail .area-text .btn {
  margin: 104px 0 0;
}
@media screen and (min-width: 768px) {
  .about {
    position: relative;
    padding: 96px 0;
  }
  .about .img_pc {
    position: absolute;
    width: 50%;
	max-width: 800px;
    margin: 0;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
  }
  .about .detail {
    position: relative;
    top: auto;
  }
  .about .detail .area-text {
    width: 40%;
  }
  .about .detail .area-text .btn {
    margin: 48px 0 0;
    text-align: left;
  }
  .about .detail .area-text .btn a {
    text-align: center;
  }
}

.service {
  padding: 136px 0 88px;
}
.service .list .item + .item {
  margin: 60px 0 0;
}
.service .list .item .area-text {
  position: relative;
  padding: 32px 40px 40px;
  background: #EFE2D9;
  box-shadow: 0px 5px 2px 0px rgba(67, 44, 45, 0.1019607843);
}
.service .list .item .area-text .title02 {
  margin: 0 0 16px;
  font-size: 20px;
  font-weight: 700;
}
.service .list .item .area-text .btn {
  position: absolute;
  left: 50%;
  bottom: -30px;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .service {
    padding: 120px 0;
  }
  .service .list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 32px;
  }
  .service .list .item {
    display: flex;
    flex-direction: column;
  }
  .service .list .item + .item {
    margin: 0;
  }
  .service .list .item .area-text {
    flex: 1;
    padding: 32px 40px 64px;
  }
  .service .list .item .area-text .text {
    font-size: 14px;
  }
  .service .list .item .area-text .btn {
    position: absolute;
    left: 50%;
    bottom: -30px;
    transform: translateX(-50%);
  }
}

.support {
  padding: 192px 0 128px;
  background: url(../img/top/bg-support01_sp.jpg) no-repeat center;
  background-size: cover;
}
.support .area-text {
  margin: 0 0 48px;
}
.support .area-text .title01 {
  margin: 0 0 24px;
  color: #fff;
  font-size: 28px;
  font-weight: 600;
}
.support .area-text .text {
  color: #fff;
}
.support .area-text .text + .text {
  margin: 1em 0 0;
}
.support .area-text .btn {
  margin: 72px 0 0;
  text-align: left;
}
.support .area-text .btn a {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .support {
    padding: 96px 0;
    background: url(../img/top/bg-support01_pc.jpg) no-repeat center;
    background-size: cover;
  }
  .support .detail {
    display: flex;
    align-items: center;
    gap: 0 32px;
  }
  .support .detail .area-text {
    margin: 0;
  }
  .support .detail .area-text .title01 {
    margin: 0 0 32px;
  }
  .support .detail .area-text .text {
    font-size: 14px;
  }
  .support .detail .area-text .btn {
    margin: 48px 0 0;
    text-align: left;
  }
  .support .detail .area-text .btn a {
    text-align: center;
  }
}

.instagram {
  padding: 88px 0 184px;
  background: #EFE2D9;
}
.instagram .text {
  margin: 0 0 24px;
}
.instagram .btn {
  margin: 100px 0 0;
}
@media screen and (min-width: 768px) {
  .instagram {
    padding: 96px 0;
  }
  .instagram .text {
    margin: 0 0 48px;
  }
}

.online {
  padding: 160px 0 144px;
}
.online .text {
  margin: 0 0 32px;
}
.online .area-img {
  margin: 0 0 32px;
}
@media screen and (min-width: 768px) {
  .online {
    padding: 104px 0 0px;
    background: url(../img/common/bg.png) no-repeat center bottom;
    background-size: cover;
  }
  .online .text {
    margin: 0 0 56px;
  }
  .online .area-img {
    margin: 0 0 48px;
  }
}/*# sourceMappingURL=top.css.map */