/* --------------------------------------------------
	section size
-------------------------------------------------- */
.l-header .header__inner .h-cnts .nav__wrapper .g-menu__items:nth-of-type(1):after {
  opacity: 1;
}

/* sec-fv
---------------------------------------------------------------------------- */
.sec-fv {
  position: relative;
  z-index: 2;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .sec-fv {
    padding-bottom: 10rem;
  }
}
.sec-fv .fv__inner {
  position: relative;
  max-width: 144rem;
  margin: 0 auto;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv__inner {
    max-width: inherit;
    align-items: stretch;
  }
}
.sec-fv .fv__inner .fv_txt {
  position: relative;
  top: 1rem;
  width: 40.2rem;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv__inner .fv_txt {
    top: 0;
    width: 14.4rem;
  }
}
.sec-fv .fv__inner .fv_txt img {
  display: block;
  width: 24.2rem;
  margin: 1.5rem 1.8rem 0 auto;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv__inner .fv_txt img {
    width: 4rem;
    margin: 3.8rem auto 0 auto;
  }
}
.sec-fv .fv__inner .fv_img {
  width: calc(100% - 40.2rem);
  padding-left: 2.4rem;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv__inner .fv_img {
    width: calc(100% - 14.4rem);
    padding-left: 0;
  }
}
.sec-fv .fv__inner .fv_img .slide-wrap .fv-slider {
  width: 100%;
  aspect-ratio: 1014/540;
  border-radius: 1rem;
  overflow: hidden;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv__inner .fv_img .slide-wrap .fv-slider {
    aspect-ratio: 634/795;
    border-radius: 2rem;
  }
}
.sec-fv .fv__inner .fv_img .slide-wrap .fv-slider .slick-slide {
  width: 100%;
  aspect-ratio: 1014/540;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv__inner .fv_img .slide-wrap .fv-slider .slick-slide {
    aspect-ratio: 634/795;
  }
}
.sec-fv .fv__inner .fv_img .slide-wrap .fv-slider .slick-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center center;
     object-position: center center;
}
.sec-fv .fv__inner .fv_img .slide-wrap .fv-slider__nav {
  margin-top: 1.8rem;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv__inner .fv_img .slide-wrap .fv-slider__nav {
    position: relative;
    width: 56%;
    margin-top: 3rem;
    z-index: 3;
  }
}
.sec-fv .fv__inner .fv_img .slide-wrap .fv-slider__nav .dots-box .dots-list {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  align-content: stretch;
  gap: 0 2rem;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv__inner .fv_img .slide-wrap .fv-slider__nav .dots-box .dots-list {
    gap: 2rem 2.4rem;
  }
}
.sec-fv .fv__inner .fv_img .slide-wrap .fv-slider__nav .dots-box .dots-list li {
  width: 3rem;
  height: 0.5rem;
  background: #fdda7c;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv__inner .fv_img .slide-wrap .fv-slider__nav .dots-box .dots-list li {
    width: 3.6rem;
    height: 0.4rem;
  }
}
.sec-fv .fv__inner .fv_img .slide-wrap .fv-slider__nav .dots-box .dots-list li button {
  width: 100%;
  height: 100%;
  background: none;
  border: none;
  text-indent: -9999px;
  cursor: pointer;
}
.sec-fv .fv__inner .fv_img .slide-wrap .fv-slider__nav .dots-box .dots-list li.slick-active {
  background: #b2d270;
}
.sec-fv .fv__inner02 {
  position: relative;
  max-width: 144rem;
  margin: -11.8rem auto 3.5rem auto;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv__inner02 {
    max-width: inherit;
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .sec-fv .fv_txt02 {
    position: relative;
    width: calc(100% + 11.4rem);
    margin: -8.5rem 0 0 -11.4rem;
    z-index: 1;
  }
}
.sec-fv .fv-info__wrap {
  width: calc(100% - 40.2rem);
  padding-left: 2.4rem;
  margin: 0 0 0 auto;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv-info__wrap {
    width: 100%;
    padding: 0 5rem;
    margin: 7rem auto 0 auto;
  }
}
.sec-fv .fv-info__wrap .fv-info__inner {
  margin-left: -0.8rem;
  max-width: 90.4rem;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv-info__wrap .fv-info__inner {
    margin: 0;
    max-width: inherit;
    flex-wrap: wrap;
  }
}
.sec-fv .fv-info__wrap .info-ttl {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  width: 20.2rem;
  height: 4rem;
  font-size: 1.6rem;
  line-height: 1.375;
  letter-spacing: 0.24em;
  font-weight: 700;
  color: #785422;
  background: #b2d270;
  padding-left: 4.8rem;
  padding-bottom: 0.3rem;
  border-radius: 2rem;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv-info__wrap .info-ttl {
    width: 100%;
    height: 6.3rem;
    font-size: 2.6rem;
    line-height: 1.3461538462;
    letter-spacing: 0.238em;
    font-weight: 700;
    padding-left: 7.8rem;
    padding-bottom: 0.15rem;
    margin-bottom: 2.8rem;
    border-radius: 3.2rem;
  }
}
.sec-fv .fv-info__wrap .info-ttl:before {
  position: absolute;
  left: 0.8rem;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  content: "";
  background: url("../images/common/ico_info.svg") no-repeat center center;
  background-size: 100% auto;
  width: 2.8rem;
  height: 2.9rem;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv-info__wrap .info-ttl:before {
    left: 1.4rem;
    width: 4.4rem;
    height: 4.4rem;
  }
}
.sec-fv .fv-info__wrap .post-box {
  width: calc(100% - 20.2rem);
  padding-left: 3rem;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv-info__wrap .post-box {
    width: 100%;
    padding-left: 0;
  }
}
.sec-fv .fv-info__wrap .post-box__link {
  position: relative;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  align-content: stretch;
  padding-right: 5rem;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv-info__wrap .post-box__link {
    flex-wrap: wrap;
    padding-right: 0;
  }
}
.sec-fv .fv-info__wrap .post-box__link:after {
  position: absolute;
  right: 0;
  top: 50%;
  display: block;
  content: "";
  border-style: solid;
  border-width: 0 2px 2px 0;
  content: "";
  display: inline-block;
  position: absolute;
  height: 0.8rem;
  width: 0.8rem;
  border-color: #785422;
  transform: rotate(-45deg);
  transform: rotate(-45deg) translateY(-50%);
}
@media screen and (max-width: 767px) {
  .sec-fv .fv-info__wrap .post-box__link:after {
    height: 0.4rem;
    width: 0.4rem;
  }
}
@media screen and (max-width: 767px) {
  .sec-fv .fv-info__wrap .post-box__link:after {
    border-style: solid;
    border-width: 0 1px 1px 0;
    content: "";
    display: inline-block;
    position: absolute;
    height: 2rem;
    width: 2rem;
    border-color: #785422;
    transform: rotate(-45deg);
    top: auto;
    bottom: 1.3rem;
    transform: rotate(-45deg) translateY(0);
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  .sec-fv .fv-info__wrap .post-box__link:after {
    height: 1rem;
    width: 1rem;
  }
}
.sec-fv .fv-info__wrap .post-box__link .date {
  white-space: nowrap;
  font-size: 1.8rem;
  line-height: 1.5555555556;
  letter-spacing: 0.04em;
  font-weight: 700;
  color: #b2d270;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv-info__wrap .post-box__link .date {
    width: auto;
    font-size: 3.1rem;
    line-height: 1.5806451613;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
.sec-fv .fv-info__wrap .post-box__link .cat {
  white-space: nowrap;
  margin-left: 1rem;
  display: inline-block;
  text-align: center;
  font-size: 1.3rem;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 500;
  border: 1px solid #000000;
  padding: 0.4rem 0.7rem 0.6rem 0.7rem;
  border-radius: 1.2rem;
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv-info__wrap .post-box__link .cat {
    padding: 0.6rem 0.7rem;
    margin-left: 2.5rem;
    font-size: 2.2rem;
    line-height: 1;
    letter-spacing: -0.009em;
    font-weight: 500;
    border-radius: 3rem;
  }
}
.sec-fv .fv-info__wrap .post-box__link .ttl {
  width: auto;
  margin-left: 2rem;
  font-size: 1.6rem;
  line-height: 1.375;
  letter-spacing: 0.25em;
  font-weight: 700;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  line-break: strict;
}
@media screen and (max-width: 767px) {
  .sec-fv .fv-info__wrap .post-box__link .ttl {
    width: calc(100% - 2.5rem);
    margin-left: 0;
    margin-top: 1.2rem;
    font-size: 2.8rem;
    line-height: 1.3928571429;
    letter-spacing: 0.122em;
    font-weight: 700;
    box-sizing: border-box;
  }
}

/* top common
---------------------------------------------------------------------------- */
.sec-head {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
}
@media screen and (max-width: 767px) {
  .sec-head {
    flex-direction: column;
  }
}
.sec-head__txt {
  position: relative;
  background: #fff;
  padding: 8.6rem 12rem 12rem;
  border-radius: 0 0 1rem 1rem;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .sec-head__txt {
    width: calc(100% - 5rem) !important;
    padding: 7.6rem 0 9.5rem 5rem;
    border-radius: 0 0 2rem 0;
  }
}
.sec-head__txt:after {
  position: absolute;
  display: block;
  content: "";
}
.sec-head__txt .c-title02 {
  margin-bottom: 3rem;
}
.sec-head__txt .lead-txt {
  font-size: 1.7rem;
  line-height: 1.7647058824;
  letter-spacing: 0.15em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .sec-head__txt .lead-txt {
    font-size: 2.8rem;
    line-height: 1.7142857143;
    letter-spacing: -0.03em;
    font-weight: 700;
  }
}
.sec-head.-reverse {
  flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
  .sec-head.-reverse {
    flex-direction: column;
  }
  .sec-head.-reverse .sec-head__txt {
    left: 0;
    margin: 0 0 0 auto;
    padding: 7rem 5rem 7.4rem 9rem;
    border-radius: 0 0 0 2rem;
  }
  .sec-head.-reverse .sec-head__txt .c-title02 {
    margin-left: 0;
  }
}
.sec-head .c-title {
  padding: 2px;
  box-sizing: border-box;
}

.rotate10 {
  transform: rotate(-10deg);
}

/* sec-works
---------------------------------------------------------------------------- */
.sec-works {
  padding-bottom: 10rem;
}
@media screen and (max-width: 767px) {
  .sec-works {
    padding-bottom: 9.5rem;
  }
  .sec-works .l-wrapper {
    padding: 0;
  }
}
.sec-works .sec-head__txt {
  position: relative;
  left: -2rem;
  width: 78.5rem;
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  padding: 7rem 10rem 12.8rem 3rem;
}
@media screen and (max-width: 767px) {
  .sec-works .sec-head__txt {
    padding: 7rem 5rem 7.4rem 9.5rem;
  }
}
.sec-works .sec-head__txt:after {
  left: 5rem;
  top: 0.8rem;
  background: url("../../assets/images/top/deco01_works.png") no-repeat center center;
  background-size: 100% auto !important;
  width: 11.7rem;
  height: 28.5rem;
}
@media screen and (max-width: 767px) {
  .sec-works .sec-head__txt:after {
    left: auto;
    right: 7.5rem;
    top: auto;
    bottom: -3rem;
    background: url("../../assets/images/top/deco01_works_sp.png") no-repeat center center;
    width: 23.55rem;
    height: 14.3rem;
  }
}
.sec-works .sec-head__txt .c-title02 {
  writing-mode: vertical-rl;
  margin-left: 2rem;
}
@media screen and (max-width: 767px) {
  .sec-works .sec-head__txt .c-title02 {
    position: relative;
    top: -1rem;
    margin-left: 4.4rem;
    margin-bottom: 0;
  }
}
.sec-works .sec-head__txt .c-title02 .line {
  position: relative;
  display: block;
}
.sec-works .sec-head__txt .c-title02 .line:after {
  position: absolute;
  right: 1rem;
  top: 0;
  display: block;
  content: "";
  width: 1rem;
  height: 100%;
  background: #fdda7c;
  border-radius: 1rem;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .sec-works .sec-head__txt .c-title02 .line:after {
    right: 1.3rem;
    width: 1.4rem;
    border-radius: 2rem;
  }
}
.sec-works .sec-head__txt .c-title02 .txt {
  position: relative;
  z-index: 2;
}
.sec-works .sec-head__txt .lead-txt {
  text-align: right;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .sec-works .sec-head__txt .lead-txt {
    text-align: left;
  }
}
.sec-works .sec-head__img {
  position: relative;
  width: calc(100% - 78.5rem);
}
@media screen and (max-width: 767px) {
  .sec-works .sec-head__img {
    width: calc(100% - 10rem);
    margin: 0 auto;
  }
}
.sec-works .sec-head__img .c-title {
  margin-top: 2.8rem;
  margin-left: 12rem;
}
@media screen and (max-width: 767px) {
  .sec-works .sec-head__img .c-title {
    position: absolute;
    left: 6rem;
    top: 7rem;
    margin: 0;
  }
}
.sec-works .sec-head__img .deco-img {
  margin-top: 3.5rem;
  margin-left: 12rem;
  width: 31.2rem;
}
@media screen and (max-width: 767px) {
  .sec-works .sec-head__img .deco-img {
    display: block;
    margin: 17.5rem auto 0 auto;
    transform: translateX(3.5rem);
    width: 45.3rem;
  }
}
.sec-works .works-slide-wrap {
  margin-top: -6rem;
}
@media screen and (max-width: 767px) {
  .sec-works .works-slide-wrap {
    margin-top: 5.5rem;
  }
  .sec-works .works-slide-wrap .slick-list {
    overflow: visible;
  }
}
.sec-works .post-wrap {
  width: calc(100% + 2.5rem);
  margin-left: -1.25rem;
  margin-right: -1.25rem;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .sec-works .post-wrap {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}
.sec-works .post-wrap .post-links {
  display: block;
  height: 100%;
  background: #f8f6f1;
  margin: 0 1.25rem;
  border-radius: 1rem;
  border: 1px solid #000000;
  overflow: hidden;
  box-sizing: border-box;
}
@media screen and (min-width: 768px) {
  .sec-works .post-wrap .post-links:hover {
    text-decoration: none;
  }
  .sec-works .post-wrap .post-links:hover .post__img img {
    transform: scale(1.1);
  }
  .sec-works .post-wrap .post-links:hover .post__txt {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .sec-works .post-wrap .post-links {
    margin: 0 2rem;
    border-radius: 1.75rem;
  }
}
.sec-works .post-wrap .post-links.-voice .post__img img {
  -o-object-fit: contain;
     object-fit: contain;
}
.sec-works .post-wrap .post-links.-voice .post__txt .date {
  color: #fec76f;
}
.sec-works .post-wrap .post-links.-works .post__txt .date {
  color: #b2d270;
}
.sec-works .post-wrap .post__img {
  position: relative;
  aspect-ratio: 384/252;
  background: #fff;
  border-radius: 1rem 1rem 0 0;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .sec-works .post-wrap .post__img {
    aspect-ratio: 672/441;
    border-radius: 1.75rem 1.75rem 0 0;
  }
}
.sec-works .post-wrap .post__img img {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.4s;
  z-index: 1;
}
.sec-works .post-wrap .post__img .cat {
  position: absolute;
  left: 0;
  bottom: -1rem;
  display: inline-block;
  font-size: 1.6rem;
  line-height: 2.25;
  letter-spacing: 0.25em;
  font-weight: 700;
  color: #647240;
  background: #f8f6f1;
  padding: 0.4rem 1rem;
  border-radius: 1rem 1rem 0 0;
  box-sizing: border-box;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .sec-works .post-wrap .post__img .cat {
    bottom: -2rem;
    font-size: 2.8rem;
    line-height: 2.25;
    letter-spacing: 0.25em;
    font-weight: 700;
    padding: 1.2rem 2rem;
    border-radius: 2rem 2rem 0 0;
  }
}
.sec-works .post-wrap .post__txt {
  padding: 2.5rem 2.5rem;
  box-sizing: border-box;
  transition: 0.4s;
}
@media screen and (max-width: 767px) {
  .sec-works .post-wrap .post__txt {
    padding: 2.5rem 3rem;
  }
}
.sec-works .post-wrap .post__txt .date {
  font-size: 1.8rem;
  line-height: 1.5555555556;
  letter-spacing: 0.04em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .sec-works .post-wrap .post__txt .date {
    font-size: 3.2rem;
    line-height: 1.5625;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
.sec-works .post-wrap .post__txt .ttl {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 2;
  font-size: 1.6rem;
  line-height: 1.5625;
  letter-spacing: 0.06em;
  font-weight: 700;
  word-break: initial;
  line-break: strict;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .sec-works .post-wrap .post__txt .ttl {
    font-size: 2.8rem;
    line-height: 1.5714285714;
    font-weight: 700;
  }
}
.sec-works .post-wrap .post__txt .tags {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  align-content: stretch;
  gap: 0.6rem 0.6rem;
}
@media screen and (max-width: 767px) {
  .sec-works .post-wrap .post__txt .tags {
    gap: 1rem 1rem;
  }
}
.sec-works .post-wrap .post__txt .tags li {
  font-size: 1.3rem;
  line-height: 1;
  letter-spacing: -0.02em;
  font-weight: 500;
  border: 1px solid #000000;
  background: #fff;
  padding: 0.4rem 0.7rem 0.6rem 0.7rem;
  border-radius: 1.2rem;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .sec-works .post-wrap .post__txt .tags li {
    font-size: 2.2rem;
    line-height: 1;
    font-weight: 500;
    padding: 0.8rem 1rem 0.8rem 1rem;
    border-radius: 2rem;
  }
}
.sec-works .slick-track {
  display: flex;
}
.sec-works .slick-slide {
  height: auto !important;
}
.sec-works .works-arrow_box {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  margin-top: -5rem;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  align-content: stretch;
}
@media screen and (max-width: 1304px) {
  .sec-works .works-arrow_box {
    width: 98%;
  }
}
@media screen and (max-width: 767px) {
  .sec-works .works-arrow_box {
    margin: -6rem auto 0 auto;
    width: 98%;
  }
}
.sec-works .prev-arrow,
.sec-works .next-arrow {
  display: block;
  width: 5.6rem;
  height: 5.6rem;
  background: #b2d270;
  border: 1px solid #b2d270;
  border-radius: 50%;
  transition: all 0.4s ease;
  cursor: pointer;
  position: relative;
}
@media screen and (max-width: 767px) {
  .sec-works .prev-arrow,
  .sec-works .next-arrow {
    width: 7.4rem;
    height: 7.4rem;
  }
}
.sec-works .prev-arrow::before,
.sec-works .next-arrow::before {
  position: absolute;
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  border-right: 2px solid #785422;
  border-top: 2px solid #785422;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  transform: rotate(45deg);
  transition: all 0.4s ease;
}
@media screen and (max-width: 767px) {
  .sec-works .prev-arrow::before,
  .sec-works .next-arrow::before {
    width: 1.2rem;
    height: 1.2rem;
  }
}
@media screen and (min-width: 768px) {
  .sec-works .prev-arrow:hover,
  .sec-works .next-arrow:hover {
    background: #fdda7c;
    border: 1px solid #fff;
  }
}
.sec-works .prev-arrow {
  left: -4.6rem;
  transform: rotate(180deg);
}
@media screen and (max-width: 767px) {
  .sec-works .prev-arrow {
    left: 0;
  }
}
@media screen and (min-width: 768px) {
  .sec-works .prev-arrow:hover:before {
    left: 0.8rem;
  }
}
.sec-works .next-arrow {
  right: -4.6rem;
}
@media screen and (max-width: 767px) {
  .sec-works .next-arrow {
    right: 0;
  }
}
.sec-works .next-arrow:before {
  left: -0.4rem;
}
@media screen and (min-width: 768px) {
  .sec-works .next-arrow:hover:before {
    left: 0.4rem;
  }
}
.sec-works .works-dots-box {
  margin-top: 2rem;
}
@media screen and (max-width: 767px) {
  .sec-works .works-dots-box {
    margin-top: 3rem;
  }
}
.sec-works .works-dots-box .works-dots-list {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: nowrap;
  align-content: stretch;
  gap: 0 2rem;
}
@media screen and (max-width: 767px) {
  .sec-works .works-dots-box .works-dots-list {
    gap: 0 2.4rem;
  }
}
.sec-works .works-dots-box .works-dots-list li {
  position: relative;
  width: 3rem;
  height: 0.5rem;
  background: #fff;
}
@media screen and (max-width: 767px) {
  .sec-works .works-dots-box .works-dots-list li {
    width: 3.6rem;
    height: 0.6rem;
  }
}
.sec-works .works-dots-box .works-dots-list li button {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: none;
  border: none;
  text-indent: -9999px;
  cursor: pointer;
}
.sec-works .works-dots-box .works-dots-list li.slick-active {
  background: #b2d270;
}
.sec-works .btn_wrap {
  margin: 5rem auto 0 auto;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec-works .btn_wrap {
    margin-top: 4.6rem;
  }
}

/* sec-topics
---------------------------------------------------------------------------- */
.sec-topics {
  padding: 0 0 10.4rem 0;
}
@media screen and (max-width: 767px) {
  .sec-topics {
    padding: 0 0 15rem 0;
  }
  .sec-topics .l-wrapper {
    padding: 0;
  }
}
.sec-topics .sec-head__txt {
  width: 73.6rem;
}
.sec-topics .sec-head__txt:after {
  right: 3.5rem;
  top: 6.3rem;
  background: url("../../assets/images/top/deco01_topics.png") no-repeat center center;
  background-size: 100% auto !important;
  width: 19.7rem;
  height: 13.8rem;
}
@media screen and (max-width: 767px) {
  .sec-topics .sec-head__txt:after {
    right: 4.5rem;
    top: auto;
    bottom: -4rem;
    background: url("../../assets/images/top/deco01_topics_sp.png") no-repeat center center;
    width: 30.6rem;
    height: 9.2rem;
  }
}
.sec-topics .sec-head__txt .c-title02 {
  margin-bottom: 3rem;
}
.sec-topics .sec-head__img {
  position: relative;
  width: calc(100% - 76.6rem);
}
@media screen and (max-width: 767px) {
  .sec-topics .sec-head__img {
    width: calc(100% - 10rem);
    margin: 0 auto;
  }
}
.sec-topics .sec-head__img .c-title {
  position: absolute;
  left: 4.5rem;
  top: 1.2rem;
  color: #fdda7c;
}
@media screen and (max-width: 767px) {
  .sec-topics .sec-head__img .c-title {
    left: 0;
    top: -6.2rem;
  }
}
.sec-topics .sec-head__img .deco-img {
  margin-top: 5.8rem;
  margin-left: 14rem;
  width: 30.6rem;
}
@media screen and (max-width: 767px) {
  .sec-topics .sec-head__img .deco-img {
    display: block;
    margin: 6rem auto 0 auto;
    width: 44.6rem;
  }
}
.sec-topics .post-wrap {
  margin-top: -6rem;
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
  align-content: stretch;
  gap: 2.4rem 2.4rem;
}
@media screen and (max-width: 767px) {
  .sec-topics .post-wrap {
    margin-top: 6.5rem;
  }
}
@media screen and (max-width: 767px) {
  .sec-topics .post-wrap {
    flex-direction: column;
    gap: 6rem 0;
  }
}
.sec-topics .post-wrap .post {
  width: calc((100% - 7.2rem) / 4);
}
@media screen and (max-width: 767px) {
  .sec-topics .post-wrap .post {
    width: 100%;
  }
}
.sec-topics .post-wrap .post-links {
  display: block;
  height: 100%;
  background: #fff;
  border-radius: 1rem;
  overflow: hidden;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .sec-topics .post-wrap .post-links {
    border-radius: 2rem;
  }
}
@media screen and (min-width: 768px) {
  .sec-topics .post-wrap .post-links:hover {
    text-decoration: none;
  }
  .sec-topics .post-wrap .post-links:hover .post__img img {
    transform: scale(1.1);
  }
  .sec-topics .post-wrap .post-links:hover .post__txt {
    opacity: 0.7;
  }
}
.sec-topics .post-wrap .post__img {
  aspect-ratio: 282/186;
  border-radius: 1rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .sec-topics .post-wrap .post__img {
    aspect-ratio: 680/446;
    border-radius: 2rem 2rem 0 0;
  }
}
.sec-topics .post-wrap .post__img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 0.4s;
}
.sec-topics .post-wrap .post__txt {
  padding: 2rem 3rem;
  box-sizing: border-box;
  transition: 0.4s;
}
@media screen and (max-width: 767px) {
  .sec-topics .post-wrap .post__txt {
    padding: 4.5rem 5rem;
  }
}
.sec-topics .post-wrap .post__txt .date {
  font-size: 1.8rem;
  line-height: 1.5555555556;
  letter-spacing: 0.04em;
  font-weight: 700;
  color: #b2d270;
}
@media screen and (max-width: 767px) {
  .sec-topics .post-wrap .post__txt .date {
    font-size: 3.2rem;
    line-height: 1.5625;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
.sec-topics .post-wrap .post__txt .ttl {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 2;
  font-size: 1.6rem;
  line-height: 1.5625;
  letter-spacing: 0.06em;
  font-weight: 700;
  line-break: strict;
  margin-bottom: 2rem;
}
@media screen and (max-width: 767px) {
  .sec-topics .post-wrap .post__txt .ttl {
    font-size: 2.8rem;
    line-height: 1.5714285714;
    letter-spacing: -0.06em;
    font-weight: 700;
    margin-bottom: 2rem;
  }
}
.sec-topics .post-wrap .post__txt .cat {
  display: inline-block;
  font-size: 1.3rem;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: 500;
  border: 1px solid #000000;
  padding: 0.4rem 0.7rem 0.6rem 0.7rem;
  border-radius: 1.2rem;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .sec-topics .post-wrap .post__txt .cat {
    font-size: 2.2rem;
    line-height: 1;
    letter-spacing: 0.049em;
    font-weight: 500;
    padding: 0.8rem 1rem 0.8rem 1rem;
    border-radius: 2rem;
  }
}
.sec-topics .btn_wrap {
  margin: 5rem auto 0 auto;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sec-topics .btn_wrap {
    margin: 6.4rem auto 0 auto;
  }
}