@charset "UTF-8";

.works .works-link {
  background-color: rgba(17, 141, 255, 0.1);
}

.works .works-link .nav-txt {
  color: #118DFF;
}

/* main contents */
.main {
  width: calc(100% - 220px);
  margin: 40px 0 0 220px;
}

.pc-card {
  display: block;
}

.sp-card {
  display: none;
}

.card-index {
  width: calc(100% - 80px);
  margin: 0 auto 80px;
}

.card-index ul.flex {
  justify-content: start;
  column-gap: 24px;
  row-gap: 36px;
}

.card-index .card {
  width: 31%;
  max-width: 510px;
  min-width: 400px;
}

.sp-card-item {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  justify-content: start;
  column-gap: 8px;
}

.sp-card-mv {
  width: 127px;
  height: 80px;
  border-radius: 6px;
  border: 1px solid #F1F3F9;
  overflow: hidden;
}

.sp-card-mv img {
  object-fit: contain
}

.sp-card-txt {
  width: calc(100% - 135px);
}

.sp-site-name {
  margin-bottom: 6px;
  color: #2C2C2C;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: 1.4rem;
  font-weight: 500;
}

.icon-client {
  margin-bottom: 8px;
  justify-content: start;
  column-gap: 4px;
  align-items: center;
}

.sp-company-icon {
  border-radius: 50%;
  border: 1px solid #F1F3F9;
  width: 28px;
}

.sp-client {
  width: calc(100% - 32px);
  white-space: nowrap;
  overflow: hidden;
  color: #B0B0B0;
  text-overflow: ellipsis;
  font-size: 1.2rem;
}

.sp-view-btn {
  width: fit-content;
  padding: 6px 14px;
  color: #118DFF;
  font-family: Inter;
  font-size: 1.2rem;
  background-color: #F1F3F9;
  border-radius: 20px;
}

@media screen and (max-width: 1547px) {
  .card-index .card {
    width: calc((100% - 24px) / 2);
    min-width: 350px;
  }
}

@media screen and (max-width: 1024px) {
  .main {
    width: calc(100% - 180px);
    margin-left: 180px;
  }

  .card-index .card {
    width: calc((100% - 24px) / 2);
    min-width: 300px;
  }

  .card {
    height: 220px;
  }
}


@media screen and (max-width: 560px) {
  .works .works-link {
    background-color: transparent;
  }

  .main {
    width: 100%;
    margin: 28px auto 0;
  }

  .card-index {
    width: calc(100% - 40px);
    margin-bottom: 48px;
  }

  .card {
    width: 100%;
    height: auto;
    border: none;
    border-radius: 0;
  }

  .card-index .card {
    width: 100%;
    max-width: initial;
    min-width: initial;
  }

  .pc-card {
    display: none;
  }

  .sp-card {
    display: block;
  }

  .card-index ul.flex {
    row-gap: 12px;
  }
}