@charset "UTF-8";

/* -----------------------------------------------
table
----------------------------------------------- */
table {
  border-top: 1px solid #97A791;
  border-left: 1px solid #97A791;
  width: 100%; 
}
table tr > * {
  border-right: 1px solid #97A791;
  border-bottom: 1px solid #97A791;
  text-align: center;
}
table th {
  background: #F0F4E1;
  font-weight: normal;
}
table td {}


/* -----------------------------------------------
mv
----------------------------------------------- */
.mv__wrap {
  position: relative;
}
.mv__wrap::after {
  content: "";
  background: url(../images/common/mv_mask.svg) 50% 100% / contain no-repeat;
  display: block;
  position: absolute;
  bottom: -1px;
}
.mv__inner {
  display: flex;
  justify-content: center;
  align-items: center;
}
.mv__inner .mv__cap {
  color: #fff;
}
.mv__inner .mv__cap h1 {
  font-weight: normal;
  text-shadow: 0px 0px 5px rgba(0,0,0,1),0px 0px 10px rgba(0,0,0,1);
}

@media (max-width: 767px) {
  .mv__wrap {
    aspect-ratio: 750 / 360;
    background: url(../images/business/mv_sp.jpg) 50% 0 / cover no-repeat;
    width: 100%;
    height: auto;
  }
  .mv__wrap::after {
    aspect-ratio: 250 / 30;
    width: 66.67%;
    right: -17%;
  }
  .mv__inner {
    width: 84%;
    height: 100%;
    margin: 0 auto;
  }
  .mv__inner .mv__cap h1 {
    font-size: min(calc(var(--vw) * 22px),22px);
    letter-spacing: .05em;
    line-height: 1.66;
  }
  
}
@media (min-width: 768px) {
  .mv__wrap {
    aspect-ratio: 1440 / 360;
    background: url(../images/business/mv_pc.jpg) 50% 0 / cover no-repeat;
    width: 100%;
    height: auto;
  }
  .mv__wrap::after {
    aspect-ratio: 824 / 102;
    max-width: 824px;
    width: 57.23%;
    right: -17%;
  }
  .mv__inner {
    width: 91.12%;
    height: 100%;
    margin: 0 auto;
  }
  .mv__inner .mv__cap h1 {
    font-size: 38px;
    letter-spacing: .1em;
  }

}



.bg__wrap {
  background: #FBFAF5;
}



/* -----------------------------------------------
catch
----------------------------------------------- */
.catch__wrap .catch__inner {
  text-align: center;
}
.catch__inner h2 {
  font-weight: normal;
}

@media (max-width: 767px) {
  .catch__wrap {
    padding-bottom: 60px;
  }
  .catch__inner h2 {
    font-size: min(calc(var(--vw) * 26px),26px);
    line-height: 1.769;
    margin-bottom: 24px;
  }
  .catch__inner p {
    font-size: min(calc(var(--vw) * 14px),14px);
    line-height: 2.14;
  }
  .catch__wrap .anc__list__wrap {
    padding-top: 42px;
  }

}
@media (min-width: 768px) {
  .catch__wrap {
    padding-bottom: 100px;
  }
  .catch__inner h2 {
    font-size: 32px;
    margin-bottom: 30px;
  }
  .catch__inner p {
    font-size: 16px;
    line-height: 2.5;
  }
  .catch__wrap .anc__list__wrap {
    padding-top: 98px;
  }

}



/* -----------------------------------------------
sec__head
----------------------------------------------- */
.sec__head {
  text-align: center;
}
.sec__head * {
  font-weight: normal;
}
.sec__head h2 {
  position: relative;
}
.sec__head h2:after {
  content: "";
  position: absolute;
  height: 2px;
  background: #222;
}

@media (max-width: 767px) {
  .sec__head {
    margin-bottom: 74px;
  }
  .sec__head h2 {
    font-size: min(calc(var(--vw) * 26px),26px);
    margin-bottom: 64px;
  }
  .sec__head h2:after {
    top: calc(100% + 14px);
    left: calc(50% - 23px);
    width: 46px;
  }
  .sec__head h3 {
    font-size: min(calc(var(--vw) * 20px),20px);
    margin-bottom: 24px;
  }
  .sec__head p {
    font-size: min(calc(var(--vw) * 14px),14px);
    line-height: 2.14;
  }

  
}
@media (min-width: 768px) {
  .sec__head {
    margin-bottom: 100px;
  }
  .sec__head h2 {
    font-size: 32px;
    margin-bottom: 78px;
  }
  .sec__head h2:after {
    top: calc(100% + 20px);
    left: calc(50% - 23px);
    width: 46px;
  }
  .sec__head h3 {
    font-size: 26px;
    margin-bottom: 32px;
  }
  .sec__head p {
    font-size: 16px;
    line-height: 2.5;
  }

}


/* -----------------------------------------------
processing
----------------------------------------------- */
.processing__item picture {
  border-radius: 20px;
  overflow: hidden;
}
.processing__item strong {
  text-align: center;
  display: block;
  font-weight: normal;
}

@media (max-width: 767px) {
  .processing__wrap {
    padding-block: 54px 60px;
  }
  .processing__list__wrap .processing__item {
    margin-bottom: 64px;
  }
  .processing__item picture {
    margin-bottom: 18px;
  }
  .processing__item strong {
    font-size: min(calc(var(--vw) * 20px),20px);
    margin-bottom: 14px;
  }
  .processing__item p {
    font-size: min(calc(var(--vw) * 14px),14px);
    line-height: 2.14;
  }
  .processing__list__wrap .processing__item:last-child {
    margin-bottom: 38px;
  }

}
@media (min-width: 768px) {
  .processing__wrap {
    padding-block: 90px 105px;
  }
  .processing__list__wrap {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    margin-bottom: 54px;
  }
  .processing__list__wrap .processing__item {
    width: 29.091%;
    max-width: 320px;
  }
  .processing__item picture {
    margin-bottom: 34px;
  }
  .processing__item strong {
    font-size: 24px;
    margin-bottom: 16px;
  }
  .processing__item p {
    font-size: 14px;
    line-height: 2;
  }

}



/* -----------------------------------------------
lumber
----------------------------------------------- */
.lumber__fx picture {
  overflow: hidden;
  border-radius: 20px;
}
.lumber__cap strong {
  font-weight: normal;
  position: relative;
  display: block;
  text-align: center;
}
.lumber__cap strong::after {
  content: "";
  display: block;
  background: #397121;
  aspect-ratio: 1 / 1;
  height: auto;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  border-radius: 50vh;
}

@media (max-width: 767px) {
  .lumber__wrap {
    padding-block: 54px 60px;
  }
  .lumber__fx {
    margin-bottom: 58px;
  }
  .lumber__cap strong {
    font-size: min(calc(var(--vw) * 20px),20px);
    margin-bottom: 30px;
  }
  .lumber__cap strong::after {
    width: 6px;
    top: calc(100% + 6px);
  }
  .lumber__fx picture {
    margin-bottom: 30px;
  }
  .lumber__table__wrap table tr * {
    font-size: min(calc(var(--vw) * 13px),13px);
    height: 35px;
    padding-block: .58em;
  }
  .lumber__table__wrap col:nth-child(1) {
    width: 28.57%;
  }
  .lumber__table__wrap .col_06 col:nth-child(2),
  .lumber__table__wrap .col_06 col:nth-child(3) {
    width: 17.7%;
  }
  .lumber__table__wrap .col_06 col:nth-child(4),
  .lumber__table__wrap .col_06 col:nth-child(6) {
    width: 10.47%;
  }

  .lumber__table__wrap .col_03 col:nth-child(2),
  .lumber__table__wrap .col_03 col:nth-child(3) {
    width: 35.55%;
  }

  .lumber__table__wrap .col_04 col:nth-child(n+2) {
    width: 23.8%;
  }


  .cap__fx {
    font-size: min(calc(var(--vw) * 13px),13px);
    padding-top: 10px;
  }


}
@media (min-width: 768px) {
  .lumber__wrap {
    padding-block: 90px 105px;
  }
  .lumber__fx {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 90px;
  }
  .lumber__fx picture {
    width: 38.182%;
    max-width: 420px;
  }
  .lumber__cap {
    width: 57.28%;
    max-width: 630px;
  }
  .lumber__cap strong {
    font-size: 24px;
    margin-bottom: 64px;
  }
  .lumber__cap strong::after {
    width: 8px;
    top: calc(100% + 7px);
  }
  .lumber__cap .lumber__table__wrap {
    font-size: 14px;
  }
  .lumber__table__wrap col:nth-child(1) {
    width: 9.52%;
  }
  .lumber__table__wrap col:nth-child(2) {
    width: 15.87%;
  }
  .lumber__table__wrap col:nth-child(3) {
    width: 14.28%;
  }
  .lumber__table__wrap col:nth-child(4) {
    width: 15.87%;
  }
  .lumber__table__wrap col:nth-child(5) {
    width: 30.15%;
  }
  .lumber__table__wrap table tr * {
    height: 30px;
  }
  .cap__fx {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding-top: 8px;
  }
  .lumber__fx:last-child .lumber__table__wrap table tr td {
    height: 60px;
  }

}



/* -----------------------------------------------
equipment
----------------------------------------------- */
.equipment__wrap {}
.equipment__item__wrap {
  margin-inline: auto;
}
.equipment__item h4 {
  overflow: hidden;
  text-align: center;
  font-weight: normal;
}
.equipment__item h4 span {
  position: relative;
}
.equipment__item h4 span:before,
.equipment__item h4 span:after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  width: 100vw;
  height: 2px;
  background: #397121;
}
.equipment__item h4 span:before {
  right: calc(100% + 1em);
}
.equipment__item h4 span:after {
  left: calc(100% + 1em);
}
.equipment__item picture {
  overflow: hidden;
  border-radius: 20px;
}

@media (max-width: 767px) {
  .equipment__wrap {
    padding-block: 54px 24px;
  }
  .equipment__table__wrap {
    margin-bottom: 58px;
  }
  .equipment__table__wrap table {
    border: 0;
  }
  .equipment__table__wrap table tbody > tr {
    display: block;
    border-top: 1px solid #97A791;
    border-right: 1px solid #97A791;
    border-left: 1px solid #97A791;
    padding: 0;
    margin: 0 0 20px;
    overflow: hidden;
  }
  .equipment__table__wrap table tr > * {
    border-right: 0;
    font-weight: normal;
    text-align: left;
    font-size: min(calc(var(--vw) * 13px),13px);
    letter-spacing: 0;
  }
  .equipment__table__wrap table tr:not(:last-child) > * {
    border-bottom: 1px solid #97A791;
  }
  .equipment__table__wrap table tbody > tr > td:first-child {
    display: block;
    background: #F0F4E1;
    padding: 7.25px 12px;
    border-bottom: 1px solid #97A791;
    text-align: center;
  }
  .equipment__table__wrap table tbody > tr > td:not(:first-child) {
    display: grid;
    grid-template-columns: 7em 1fr;
    gap: .5em 2em;
    padding: 7.5px 8px;
  }
  .equipment__table__wrap table tbody > tr > td {
    position: relative;
  }
  .equipment__table__wrap table tbody > tr > td:not(:first-child)::after {
    content: "";
    position: absolute;
    top: 0;
    left: 8.4em;
    width: 1px;
    height: 100%;
    background: #97A791;
  }
  .equipment__table__wrap table tbody > tr > td::before {
    text-align: center;
  }
  .equipment__table__wrap table tbody > tr > td:nth-child(2)::before {
    content: "メーカー名";
  }
  .equipment__table__wrap table tbody > tr > td:nth-child(3)::before {
    content: "形式加工能力";
  }
  .equipment__table__wrap table tbody > tr > td:nth-child(4)::before {
    content: "台数";
  }
  .equipment__table__wrap table tbody > tr > td:nth-child(5)::before {
    content: "備考";
  }
  .equipment__table__wrap table tbody > tr:first-child {
    display: none;
  }
  .equipment__table__wrap table colgroup {
    display: none;
  }
  .equipment__table__wrap table {
    border-collapse: separate;
    border-spacing: 0;
  }
  .equipment__item__wrap {}
  .equipment__item {
    margin-bottom: 62px;
  }
  .equipment__item h4 {
    font-size: min(calc(var(--vw) * 18px),18px);
    margin-bottom: 14px;
  }
  .equipment__item .fx {}
  .equipment__item .fx > div:has(h4):nth-child(1) {
    margin-bottom: 62px;
  }
  .equipment__item .fx > div {
    margin-bottom: 20px;
  }



}
@media (min-width: 768px) {
  .equipment__wrap {
    padding-block: 90px 65px;
  }
  .equipment__wrap .equipment__table__wrap {
    margin-bottom: 114px;
  }
  .equipment__table__wrap col:nth-child(1) {
    width: 24.54%;
  }
  .equipment__table__wrap col:nth-child(2) {
    width: 25.45%;
  }
  .equipment__table__wrap col:nth-child(3) {
    width: 24.54%;
  }
  .equipment__table__wrap col:nth-child(4) {
    width: 9.9%;
  }
  .equipment__table__wrap tr th {
    height: 50px;
  }
  .equipment__table__wrap tr td {
    height: 70px;
  }
  .equipment__item__wrap {
    max-width: 920px;
  }
  .equipment__item {
    margin-bottom: 54px;
  }
  .equipment__item h4 {
    font-size: 24px;
    margin-bottom: 14px;
  }
  .equipment__item .fx {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .equipment__item .fx > div {
    width: 47.83%;
    max-width: 440px;
  }

}
