@charset "UTF-8";
/*HERO
---------------------*/
#hero {
  margin-left: 9%;
}
#hero .hero-back {
  position: absolute;
  bottom: 0;
  left: 0;
  width: min(600px, 42%);
  aspect-ratio: 608 / 691;
  background-color: #2787BC;
  display: block;
}
#hero .hero-back .scrolldown {
  writing-mode: vertical-rl;
  text-orientation: mixed;
  position: absolute;
  bottom: 200px;
  left: 20px;
  color: #fff;
  z-index: 3;
}
#hero .hero-back .scrolldown::after {
  content: "";
  /*描画位置*/
  display: block;
  position: absolute;
  top: 50px;
  left: 50%;
  transform: translate(-50%);
  /*線の形状*/
  width: 1px;
  background: #fff;
  /*線の動き1.4秒かけて動く。永遠にループ*/
  animation: pathmove 1.4s ease-in-out infinite;
  opacity: 0;
}
#hero .hero-back .scrolldown a {
  color: #fff;
}
@media (max-width: 600px) {
  #hero .hero-back .scrolldown {
    left: 3px;
    font-size: 1.3rem;
  }
  #hero .hero-back .scrolldown a {
    color: #111;
  }
}

@keyframes pathmove {
  0% {
    height: 0;
    top: 50;
    opacity: 0;
  }
  30% {
    height: 100px;
    opacity: 1;
  }
  100% {
    height: 0;
    top: 200px;
    opacity: 0;
  }
}
/*SWIPER*/
.swiper {
  position: relative;
  height: 94vh;
  /*キャッチ*/
}
.swiper::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #082881;
  mix-blend-mode: multiply;
  opacity: .3;
  z-index: 1;
}
.swiper .catch-area {
  position: absolute;
  bottom: 50px;
  left: 30px;
  z-index: 2;
  display: block;
  width: fit-content;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.swiper .catch-area .catch {
  font-size: clamp(2.6rem, 7.7vw, 7.7rem);
  font-weight: 500;
  color: #fff;
  letter-spacing: .1em;
  line-height: 1.6;
}
@media (max-width: 600px) {
  .swiper .catch-area .catch {
    letter-spacing: 0;
  }
}
.swiper .catch-area .catch-attach {
  width: min(360px, 50%);
}
.swiper [class^="swiper-img__"] {
  width: 100%;
  height: 100%;
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
}
.swiper .swiper-img__01 {
  background-image: url(../images/hero01.jpg);
}
.swiper .swiper-img__02 {
  background-image: url(../images/hero02.jpg);
}
.swiper .swiper-img__03 {
  background-image: url(../images/hero03.jpg);
}

/*swiper　zoomup*/
@keyframes zoomUp {
  0% {
    transform: scale(1.15);
  }
  100% {
    transform: scale(1);
  }
}
[class^="swiper-slide"] [class^="swiper-img__"] {
  animation: zoomUp 7s linear 0s normal both;
}

/*有働資源について
---------------------*/
#about-area {
  margin-top: max(90px, 10.25%);
}

.about-catch {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: clamp(2.2rem, 4.2vw, 4.2rem);
  line-height: 1.6;
  width: fit-content;
}

.about-summary {
  width: 53%;
}

.about-summary__ttl {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: clamp(2rem, 3.4vw, 3.4rem);
}

.about-summary__list > * + * {
  margin-left: 10px;
}

.about-summary__list li {
  width: calc(( 100% - 20px ) / 3 );
  color: #fff;
  background-color: #055581;
  padding: 10px;
  text-align: center;
  border-radius: 10px;
}

@media (max-width: 600px) {
  .about-summary {
    width: 100%;
  }

  .about-summary__list > * + * {
    margin-left: 0;
    margin-top: 10px;
  }

  .about-summary__list li {
    font-size: 1.4rem;
    width: 100%;
  }
}
/*有働資源の強み
---------------------*/
#feature-area {
  background: url("../images/top-img01.jpg") no-repeat;
  background-position: center center;
  background-size: cover;
  position: relative;
  margin-top: max(60px, 6.25%);
}
#feature-area .btn_bl {
  position: absolute;
  bottom: -30px;
  right: 20%;
}
#feature-area .btn_bl a {
  width: max(290px, 100%);
}
@media (max-width: 887px) {
  #feature-area .btn_bl {
    right: 25%;
  }
}
@media (max-width: 730px) {
  #feature-area .btn_bl {
    right: 30%;
  }
}
@media (max-width: 600px) {
  #feature-area .btn_bl {
    left: 0;
    transform: translate(0);
    right: 0;
  }
  #feature-area .btn_bl a {
    width: 92vw;
    margin: auto;
  }
}

.feature-box {
  clip-path: polygon(55% 0, 100% 0, 100% 100%, 40% 100%);
  background-color: rgba(5, 85, 129, 0.7);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  height: 820px;
}
@media (max-width: 1320px) {
  .feature-box {
    clip-path: polygon(56% 0, 100% 0, 100% 100%, 30% 100%);
  }
}
@media (max-width: 840px) {
  .feature-box {
    clip-path: polygon(56% 0, 100% 0, 100% 100%, 23% 100%);
  }
}

.feature-con {
  position: absolute;
  left: 60%;
  top: 3em;
}

.feature-ttl {
  color: #fff;
  font-size: clamp(2.6rem, 4.7vw, 4.7rem);
  letter-spacing: .15em;
  font-weight: 700;
}

.feature-item li {
  font-size: clamp(1.6rem, 2.4vw, 2.4rem);
  font-weight: 700;
  color: #fff;
  margin-top: 4em;
}
.feature-item li .cl-accent {
  font-size: clamp(2rem, 2.8vw, 2.8rem);
}
.feature-item li:first-child {
  margin-left: -1em;
  position: relative;
}
.feature-item li:first-child::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: -1.4em;
  left: 0;
  width: 56px;
  height: 28px;
  background: url("../images/speed.png") no-repeat;
  background-size: contain;
}
.feature-item li:nth-of-type(2) {
  margin-left: -3em;
  position: relative;
}
.feature-item li:nth-of-type(2)::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: -1.4em;
  left: 0;
  width: 75px;
  height: 23px;
  background: url("../images/compliance.png") no-repeat;
  background-size: contain;
}
.feature-item li:nth-of-type(3) {
  margin-left: -5em;
  position: relative;
}
.feature-item li:nth-of-type(3)::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: -1.4em;
  left: 0;
  width: 120px;
  height: 31px;
  background: url("../images/mersal-recycling.png") no-repeat;
  background-size: contain;
}
.feature-item li:nth-of-type(4) {
  margin-left: -7em;
  position: relative;
}
.feature-item li:nth-of-type(4)::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: -1.4em;
  left: 0;
  width: 45px;
  height: 26px;
  background: url("../images/advice.png") no-repeat;
  background-size: contain;
}

@media (max-width: 1445px) {
  .feature-box {
    height: 685px;
  }

  .feature-con {
    position: absolute;
    left: 57%;
    top: 2em;
  }

  .feature-item li {
    margin-top: 3em;
    padding-right: 1em;
  }
  .feature-item li br {
    display: none;
  }
}
@media (max-width: 1041px) {
  .feature-box {
    height: 650px;
  }

  .feature-item li {
    margin-top: 2em;
  }
}
@media (max-width: 840px) {
  .feature-box {
    height: 540px;
  }
}
@media (max-width: 600px) {
  .feature-box {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    backdrop-filter: blur(9px);
    -webkit-backdrop-filter: blur(9px);
    height: 540px;
  }

  .feature-con {
    position: absolute;
    left: 2em;
    top: 3em;
  }

  .feature-item li:first-child,
  .feature-item li:nth-of-type(2),
  .feature-item li:nth-of-type(3),
  .feature-item li:nth-of-type(4) {
    margin-left: 0;
    margin-top: 3em;
  }
}
/*事業案内
---------------------*/
#business-area {
  margin-top: 17%;
  padding-bottom: max(50px, 8%);
  position: relative;
  background: linear-gradient(90deg, #fff 0%, #fff 7%, #f2f2f2 7%, #f2f2f2 100%);
}
#business-area .video {
  width: calc( 100% - 38.54% - 5.2% );
  aspect-ratio: 747 / 480;
}
#business-area .video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#business-area .btn a {
  width: 350px;
}
@media (max-width: 600px) {
  #business-area .btn a {
    width: 100%;
  }
}

.business-ttl {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: clamp(2rem, 3.4vw, 3.4rem);
  position: relative;
  padding-top: 6%;
  padding-left: 10.93%;
  width: fit-content;
}
.business-ttl::before {
  content: "";
  width: 1px;
  height: 80%;
  background-color: #111;
  position: absolute;
  display: inline-block;
  top: -25%;
  right: 2em;
  transform: translate(-50%);
}

.business-industrial-waste {
  margin-top: 40px;
  width: 100%;
  background: #2787bc;
  background: linear-gradient(90deg, #2787bc 16%, #14445e 56%, #f2f2f2 56%, #f2f2f2 100%);
  align-items: center;
  padding-top: 40px;
  padding-bottom: 40px;
}
.business-industrial-waste .business-industrial-waste-con {
  padding-left: 10.93%;
  width: 38.54%;
  margin-right: 5.2%;
}

@media (max-width: 600px) {
  .business-industrial-waste {
    background: #2787bc;
    background: linear-gradient(90deg, #2787bc 16%, #14445e 100%);
  }
  .business-industrial-waste .business-industrial-waste-con {
    padding-left: 4%;
    width: 100%;
    margin-right: 4%;
  }

  #business-area .video {
    width: 92%;
    margin-top: 40px;
    margin-right: auto;
    margin-left: auto;
  }
}
.business-industrial-waste__ttl {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-size: clamp(2rem, 3.2vw, 3.2rem);
  color: #fff;
  position: relative;
}
.business-industrial-waste__ttl::after {
  content: "";
  width: 60px;
  height: 1px;
  background-color: #fff;
  display: inline-block;
  position: absolute;
  bottom: -15px;
  left: 0;
}

.business-industrial-waste__txt {
  margin-top: 3em;
  margin-bottom: 3em;
  color: #fff;
  font-size: clamp(1.6rem, 1.8vw, 1.8rem);
}

/*リスト*/
.business-item {
  padding-top: max(50px, 8%);
  position: relative;
}
.business-item::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: -30px;
  left: -50px;
  width: max(100px, 34.22%);
  aspect-ratio: 207 / 206;
  background: url("../images/top-img02.png") no-repeat;
  background-size: contain;
  z-index: 2;
}
.business-item .flex-end li {
  width: calc( 100% / 3 );
  aspect-ratio: 1 / 1;
  background-position: center center;
  background-size: cover;
  font-size: clamp(1.3rem, 1.6vw, 1.6rem);
  line-height: 1.3;
  text-align: center;
}
.business-item .flex-end li a {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  width: 100%;
  height: 100%;
  position: relative;
}
.business-item .flex-end li a::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 35%;
  left: 41%;
  width: 60px;
  height: 8px;
  border: none;
  border-right: 3px solid #FFF;
  border-bottom: 2px solid #FFF;
  transform: skew(45deg);
  transition: .5s;
}
.business-item .flex-end li a:hover::after {
  left: 43%;
}

.item-used-paper {
  background-image: url("../images/top-img-kochi.jpg");
  position: relative;
}
.item-used-paper::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: max(25px, 11.75%);
  aspect-ratio: 47 / 41;
  background: url("../images/top-ic01.png") no-repeat;
  background-size: contain;
  left: 50%;
  top: 30%;
  transform: translate(-50%);
}

.item-recycling-station {
  background-image: url("../images/top-img-recycle.jpg");
  position: relative;
}
.item-recycling-station::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: max(35px, 17.25%);
  aspect-ratio: 69 / 34;
  background: url("../images/top-ic02.png") no-repeat;
  background-size: contain;
  left: 50%;
  top: 30%;
  transform: translate(-50%);
}

.item-confidential-documents {
  background-image: url("../images/top-img-kimitsu.jpg");
  position: relative;
}
.item-confidential-documents::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: max(20px, 10%);
  aspect-ratio: 40 / 49;
  background: url("../images/top-ic03.png") no-repeat;
  background-size: contain;
  left: 50%;
  top: 30%;
  transform: translate(-50%);
}

.item-plastic {
  background-image: url("../images/top-img-pla.jpg");
  position: relative;
}
.item-plastic::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: max(20px, 10.25%);
  aspect-ratio: 41 / 59;
  background: url("../images/top-ic04.png") no-repeat;
  background-size: contain;
  left: 50%;
  top: 30%;
  transform: translate(-50%);
}

.item-styrofoam {
  background-image: url("../images/top-img-happo.jpg");
  position: relative;
}
.item-styrofoam::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: max(30px, 14.75%);
  aspect-ratio: 59 / 40;
  background: url("../images/top-ic05.png") no-repeat;
  background-size: contain;
  left: 50%;
  top: 30%;
  transform: translate(-50%);
}

@media (max-width: 1300px) {
  .business-item::before {
    left: 0;
  }
}
@media (max-width: 600px) {
  .business-industrial-waste {
    background: #2787bc;
    background: linear-gradient(90deg, #2787bc 16%, #14445e 100%);
  }

  .business-industrial-waste .business-industrial-waste-con {
    padding-left: 4%;
    width: 100%;
    margin-right: 4%;
  }

  #business-area .video {
    width: 92%;
    margin-top: 40px;
    margin-right: auto;
    margin-left: auto;
  }

  .business-item .flex-end li a {
    padding: 20px 10px 10px;
  }
  .business-item .flex-end li a::after {
    border-right: 1px solid #FFF;
    border-bottom: 1px solid #FFF;
    width: 30px;
    left: 36%;
    bottom: 17%;
  }

  .item-styrofoam::before,
  .item-plastic::before,
  .item-used-paper::before,
  .item-recycling-station::before,
  .item-confidential-documents::before {
    top: 10%;
  }
}
