.archive-works .l-section + .l-section,
.single-works .l-section + .l-section {
  padding-top: 50px;
}

.works__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px 40px;
}

.works__list dl {
  padding: 16px 0;
  font-size: 14px;
  line-height: 1.6;
}

.works__list dl dt {
  display: inline-block;
  background-color: #e6e6e6;
  border-radius: 100vmax;
  padding: 4px 16px;
  margin-bottom: 10px;
}

.works__list .works_thumb {
  border-radius: 6px;
}

.works__list__360 {
  display: inline-block;
  background: #417eb34d;
  color: #417db3;
  border-radius: 3px;
  padding: 2px 16px;
  font-size: 12px;
  font-weight: 600;
  margin-top: 0.5rem;
}

@media screen and (max-width: 868px) {
  .works__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 559px) {
  .works__list {
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;
  }
}

/* single */
.works .works__header {
  text-align: center;
  padding: 100px 0;
}
.works .works__header h1 {
  font-size: 3rem;
  line-height: 1.5em;
  letter-spacing: 3px;
  margin-bottom: 0.5rem;
}
.works .works__header h1 span {
  margin-left: 0.5em;
}
.works .works__header p {
  line-height: 1.6;
  margin-bottom: 0;
}

/* single content */
.works__box-wide,
.works__box-left,
.works__box-right {
  margin-bottom: 80px;
}

.works__box-wide figcaption,
.works__box-right p span,
.works__box-left p span {
  display: inline-block;
  font-size: 1.7rem;
  line-height: 1.5em;
  letter-spacing: 2px;
  margin-bottom: 1rem;
}

.works__box-wide {
  line-height: 1.8em;
}
.works__box-wide img {
  margin-bottom: 30px;
}

.works__box-left,
.works__box-right {
  clear: both;
}

.works__box-left figure,
.works__box-right figure {
  width: 45%;
}
.works__box-right figure {
  float: right;
}
.works__box-left figure {
  float: left;
}

.works__box-right p,
.works__box-left p {
  padding-top: 30%;
  line-height: 2em;
}
.works__box-right p {
  margin-right: 55%;
}
.works__box-left p {
  margin-left: 55%;
}

.works__movie {
  width: 100%;
  height: 600px;
}
.works__movie__title {
  text-align: center;
  font-size: 2rem;
  line-height: 1.5em;
  margin-bottom: 20px;
}

@media screen and (max-width: 768px) {
  .works .works__header h1 span {
    display: block;
  }
  .works__box-wide {
    margin: 50px 0;
  }
  .works__box-wide figcaption,
  .works__box-wide p {
    padding: 0 7%;
  }
  .works__box-left figure,
  .works__box-right figure {
    width: 100%;
    clear: both;
    margin-bottom: 30px;
  }
  .works__box-right p,
  .works__box-left p {
    padding: 20px 0;
    margin-right: 7%;
    margin-left: 7%;
  }
  .works__movie {
    height: 300px;
  }
}
