@charset "UTF-8";

:root {
  --main-color: #1a1a1a;
  --sub-color: #0068b6;
  --maru: "MaruBuri";
  --pre: "Pretendard Variable";
  --gap: 3.2vw;
}

* {
  margin: 0;
  padding: 0;
  text-decoration: none;
  list-style: none;
  box-sizing: border-box;
  /* font-size: 0.85vw; */
  color: var(--main-color);
}

body,
html {
  width: 100%;
  height: 100%;
  font-family: var(--serif);
}

img {
  max-width: 100%;
  vertical-align: top;
}

a {
  display: block;
  color: inherit;
  text-decoration: none;
}

.tab__content {
  display: none;
}

.tab__content.active {
  display: block;
}

.category {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  text-align: center;
  gap: 0.4rem;
  margin-top: 1rem;
  width: 85%;
  min-height: 4rem;

  span {
    border-radius: 16px;
    border: 1px solid #222;
    color: #222;
    letter-spacing: -1px;
    padding: 0.1rem 0.8rem;
    text-align: center;
    /* font-size: 0.9vw; */

    &.on {
      color: white;
      background-color: #534740;
    }
  }
}


/* banner css start */

.sub_banner {
  width: 100%;
  background: url(../72ppi/s1/sub1_banner.jpg) center no-repeat;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: start;
  padding: 9% 0;

  & .txt_box {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
    /* padding-inline: 20px; */

    & h2 {
      color: #fff;
      font-size: 2.4vw;
      padding-block: 4rem 2rem;
      letter-spacing: -0.8px;
      font-weight: 700;
      font-family: "Noto Serif JP", serif;
    }

    & ul {
      display: flex;
      align-items: center;
      justify-content: start;
      gap: 0.5vw;

      & img {
        vertical-align: bottom;
        margin-right: 0.5vw;
      }

      & a {
        color: #fff;
        margin-top: 0;
        font-weight: 300;
        letter-spacing: 1.5px;
        font-size: 1rem;
      }
    }
  }
}

.sub3 .sub_banner {
  background: url(../72ppi/s3/s3_banner.jpg) center no-repeat;
  background-size: cover;
}

.sub4 .sub_banner {
  background: url(../72ppi/product/product_banner.jpg) center no-repeat;
  background-size: cover;
}

.sub5 .sub_banner {
  background: url(../72ppi/s5/s5_banner.jpg) center no-repeat;
  background-size: cover;
}

.detail .sub_banner {
  background: url(../72ppi/product/detail_banner.jpg) center no-repeat;
  background-size: cover;
}

/* banner css end */

main.sub_p {
    section {
      /* padding: 11% 0; */
      position: relative;
      /* max-width: 80%; */
      margin: 0 auto;
    }
  
    .sub_nav {
      padding: 0;
      width: 100%;
  
      & ul {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 4vw;
        border-bottom: 1px solid #cccccc;
  
        & li {
          position: relative;
  
          & a {
            font-size: 20px;
            font-weight: 400;
            line-height: 1.35;
            font-family: var(--pre);
            padding: 1rem;
            display: block;
            width: 100%;
            height: 100%;
            margin-top: 0;
          }
  
          &.on {
            & ::before {
              width: 100%;
              height: 2px;
              display: block;
              content: "";
              background-color: #534740;
              position: absolute;
              left: 0;
              bottom: 0;
            }
  
            & a {
              color: #534740;
              font-weight: 700;
            }
          }
        }
      }
    }
  
    /* sub1 */
    .s1 {
      max-width: 100%;
      width: 100%;
      margin-top: 5%;
      display: flex;
      justify-content: space-between;
      margin-bottom: 8%;
    }
  
    .s1 .txt_box {
      flex: 0 0 50%;
    }
  
    .s1 .txt_box i {
      display: table;
    }
  
    .s1 .txt_box h2 {
      color: #534740;
      font-size: clamp(1.25rem, 2vw, 40px);
      font-weight: 700;
      margin-bottom: 4rem;
    }
  
    .s1 .txt_box p {
      color: #666;
      /* font-size: clamp(14px, 1.05vw, 20px); */
      font-size: clamp(16px, 1.45vw, 20px);
      letter-spacing: -0.4px;
      line-height: 1.7;
      font-family: var(--pre);
    }
  
    .s1_1_2 {
      width: 100%;
      background-color: rgba(194, 188, 164, 0.3);
      text-align: center;
      padding-block: 5% 0;
      margin-bottom: 12%;
    }
  
    .s1_1_2 .tit h2 {
      font-size: clamp(1.5rem, 1.56vw, 30px);
      color: #1a1a1a;
      font-family: var(--gowun);
      letter-spacing: -0.8px;
      line-height: 1.5;
    }
  
    .s1_1_2 .tit span {
      width: 60px;
      height: 3px;
      display: block;
      background-color: #534740;
      opacity: 0.7;
      margin: 0 auto;
      margin-block: 2rem 4rem;
    }
  
    .s1_1_2 .img_box {
      display: flex;
      align-items: center;
      justify-content: center;
    }
  
    .s1_1_2 .img_i:nth-child(2) {
      margin-bottom: 5rem;
    }
  
    .s1_1_2 .img_i:nth-child(2) .txt {
      margin-top: 4.5rem;
    }
  
    .s1_1_2 .txt h4 {
      font-size: clamp(1.5rem, 1.15vw, 22px);
      line-height: 1.5;
      letter-spacing: -0.8px;
      font-weight: 700;
      color: #1c1816;
      padding-top: 3rem;
    }
  
    .s1_1_2 .txt p {
      color: #26211f;
      opacity: 0.8;
      font-weight: 700;
      font-size: clamp(20px, 1.05vw, 20px);
      letter-spacing: -0.4px;
      line-height: 1.5;
      font-family: var(--gowun);
      margin-block: 1rem;
    }
  
    .s1_1_2 .txt span {
      color: #726a60;
      font-family: var(--pre);
      letter-spacing: -0.4px;
      line-height: 1.35;
      font-size: clamp(18px, 0.8vw, 16px);
      max-width: 80%;
      display: block;
      margin: 0 auto;
      
    }
  
    .s1_1_2 .txt span br {
      display: none;
      
    }
  
    .s1_1_2 .img_box .img_i {
      max-width: 365px;
    }
    
  
    /* 회사소개 end */
  
    /*수상 이력 section start */
  
    .s1_2 {
      padding-bottom: 10%;
      padding-top: 5%;
      position: relative;
      z-index: 1;
  
      .grid_wrap {
        display: grid;
        max-width: 1380px;
        margin: 0 auto;
        grid-template-columns: repeat(auto-fit, minmax(257px, 1fr));
        justify-content: center;
        gap: 4.5rem 4.5rem;
        padding-inline: 20px;
  
        > li {
          padding-bottom: 1rem;
          display: flex;
          flex-direction: column;
          align-items: center;
          transition: 0.5s;
  
          & img {
            filter: drop-shadow(7px 7px 4px rgba(0, 0, 0, 0.15));
          }
  
          &:hover {
            scale: 1.05;
            transition: 0.3s;
          }
  
          &:last-child {
            width: 500px;
          }
        }
  
        p {
          margin-top: 0.25rem;
          text-align: center;
          font-family: var(--pre);
          font-size: 1.966rem;
          font-weight: 600;
          color: var(--main-color);
        }
      }
    }
  
    /*수상 이력 section end */
  
    /* 서브 페이지 타이틀 s1_3 start */
    .s1_3 {
      max-width: 100%;
      margin-inline: auto;
      padding-block: 5%;
      text-align: center;
  
      & .sub_wrap {
        & h2 {
          font-size: clamp(1.375rem, 2.08vw, 40px);
          color: #534740;
          font-weight: 700;
        }
  
        & span {
          width: 60px;
          height: 3px;
          display: block;
          margin: 0 auto;
          background-color: #534740;
          opacity: 0.7;
          margin-block: 3rem;
        }
  
        & p {
          line-height: 1.7;
          font-size: clamp(18px, 1.04vw, 20px);
          font-family: var(--pre);
          margin-top: 0;
          color: #333333;
        }
      }
    }
  
    /* 서브 페이지 타이틀 s1_3 end */
  
    /* 서브 페이지 타이틀 s1_3_1 start */
    .s1_3_1 {
      max-width: 100%;
      margin-inline: auto;
      padding-block: 5%;
      text-align: center;
  
      & .sub_wrap {
        margin-top: 0;
  
        & h2 {
          font-size: clamp(24px, 1.56vw, 30px);
          color: #1a1a1a;
          font-weight: 700;
          letter-spacing: -0.8px;
          font-family: var(--gowun);
        }
  
        & span {
          width: 60px;
          height: 3px;
          display: block;
          margin: 0 auto;
          background-color: #534740;
          opacity: 0.7;
          margin-block: 3rem;
        }
  
        & p {
          line-height: 1.7;
          font-size: clamp(20px, 1.04vw, 20px);
          font-family: var(--pre);
          margin-top: 0;
          color: #333333;
          letter-spacing: -0.4px;
          margin: 0 auto;
        }
      }
    }
  
    /* 서브 페이지 타이틀 s1_3_1 end */
  
    /* 연혁 페이지 start */
    .history {
      margin: 0 auto;
      padding-top: 0;
      background: url(../72ppi/his_bg.png) center no-repeat;
      background-size: contain;
      margin-bottom: 11%;
    }
  
    .history .his_wrap {
      display: grid;
      max-width: 1500px;
      margin: 0 auto;
      grid-template-columns: repeat(4, 1fr);
      row-gap: 4.5rem;
    }
  
    .history .his_wrap .his_i {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
    }
  
    .history .his_wrap .his_i img:not(i > img) {
      margin-top: 1.7rem;
    }
  
    .history .his_wrap .his_i i {
      padding-block: 1rem;
    }
  
    .history .his_wrap .his_i h5 {
      font-weight: 700;
      font-size: clamp(18px, 1.35vw, 26px);
      line-height: 1.75;
    }
  
    .history .his_wrap .his_i p {
      color: #666666;
      font-family: var(--pre);
      line-height: 1.35;
      font-size: clamp(16px, 1.04vw, 20px);
      margin-top: 0;
    }
  
    /* 연혁 페이지 end */
  
    /* 상품 전체 페이지 start */
  
  
  
    .s1_4 {
      width: 100%;
      max-width: 100%;
      text-align: center;
      max-width: 100%;
      margin-inline: auto;
      padding-block: 5%;
      text-align: center;
  
  
  
  
      .s3_anchor {
        display: flex;
        width: 100%;
        position: relative;
        align-items: center;
        justify-content: center;
  
        > li {
          position: relative;
  
          &.on {
            &::after {
              position: absolute;
              width: 100%;
              display: block;
              height: 0.1rem;
              background-color: var(--sub-color);
              content: "";
              bottom: 0;
              left: 0;
              z-index: 1;
            }
          }
  
          &.on a,
          &:hover a {
            color: var(--main-color);
            font-family: var(--pre);
            font-weight: 500;
          }
        }
  
        li > a {
          padding: 1rem 5vw;
          color: #999;
          font-family: var(--pre);
          font-size: 1.25vw;
          transition: color 0.3s;
          position: relative;
          display: block;
        }
  
        ::before {
          position: absolute;
          left: -200%;
          width: 200vw;
          border-bottom: 0.02rem solid #ccc;
          content: "";
          bottom: 0;
        }
      }
  
      article {
        width: 100%;
        padding: 10% 0 5%;
  
        h3 {
          color: #333;
          font-family: var(--pre);
          font-weight: 400;
          font-size: 1.88vw;
          text-align: left;
          max-width: 80%;
          display: block;
          margin-inline: auto;
          margin-bottom: 0.45rem;
        }
  
        &.a1 {
          background: url(../72ppi/s3_grid_bg1.png);
          background-size: cover;
          background-repeat: no-repeat;
          background-position-x: center;
        }
  
        &.a3 {
          background: url(../72ppi/s3_grid_bg3.png);
          background-size: cover;
          background-repeat: no-repeat;
        }
  
        .s3_grid {
          display: grid;
          max-width: 80%;
          margin: 0 auto;
          gap: 3rem;
          grid-template-columns: 1fr 1fr 1fr;
        }
      }
    }
  
    /* 상품 전체 페이지 end */
  
    /* sub2 */
    .s2 {
      gap: 3rem;
      max-width: 100%;
      width: 100%;
  
      & .s2_movie {
        width: 100%;
        padding: 0;
  
        ul {
          display: flex;
          justify-content: center;
          align-items: center;
          gap: 1.2vw;
          font-family: var(--pre);
          margin-bottom: 5%;
  
          li {
            cursor: pointer;
            padding: 14px 34px;
            border: 1px solid #666666;
            border-radius: 10rem;
            text-align: center;
            min-width: fit-content;
            display: flex;
            align-items: center;
            gap: 1rem;
            justify-content: space-between;
            transition: 0.2s;
  
            a {
              text-align: center;
              font-size: 1.8rem;
            }
  
            & .tri {
              width: 0;
              height: 0;
              border-bottom: 8px solid transparent;
              border-top: 8px solid transparent;
              border-left: 14px solid #666666;
              /* border-right: 14px solid transparent; */
              display: none;
            }
  
            &.on {
              background-color: var(--sub-color);
              border-color: var(--sub-color);
  
              a {
                color: white;
              }
  
              & .tri {
                border-left-color: white;
                opacity: 1;
                display: inline-block;
              }
            }
          }
        }
  
        .opt {
          margin: 25px;
          color: #e60012;
          font-family: var(--pre);
          font-size: 20px;
        }
      }
  
      .tab__content {
        .flex_wrap {
          display: flex;
          padding: 4rem 20px 2.2rem;
  
          .flex_left {
            width: 35%;
            text-align: left;
  
            h3 {
              position: relative;
              font-size: 3.07rem;
              font-weight: 500;
              color: var(--main-color);
  
              &::after {
                position: absolute;
                content: "";
                display: block;
                width: 2.63vw;
                height: 2.63vw;
                background-color: #bdd7e4;
                border-radius: 999px;
                left: -4%;
                top: -10%;
                z-index: -1;
                opacity: 0.9;
              }
            }
  
            hr {
              margin: 2.2rem 0;
              background: #0d62a9;
              height: 0.185rem;
              border: 1px solid #0d62a9;
              width: 5rem;
            }
  
            p {
              color: #333333;
              line-height: 1.25;
              margin: 0;
              padding-right: 18%;
              max-width: 410px;
            }
  
            a {
              padding-top: 9.2rem;
              display: inline-block;
            }
          }
  
          .flex_right {
            width: 65%;
          }
        }
      }
  
      .s2_imgs {
        width: 100%;
        padding: 0 20px;
        /* padding-block: 0;
              max-width: 1220px; */
  
        .swiper {
          margin-top: 20px;
          width: 100%;
          height: 100%;
        }
  
        .s2s2 {
          position: fixed;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          z-index: 99999999;
          margin: 0 auto;
          display: none;
  
          .swiper-slide {
            background-color: rgba(0, 0, 0, 0.9);
  
            img {
              width: 80%;
              object-fit: scale-down;
            }
          }
  
          .s2s2_next {
            position: absolute;
            z-index: 9;
            right: 5%;
            top: 50%;
            cursor: pointer;
          }
  
          .s2s2_pre {
            position: absolute;
            z-index: 9;
            left: 5%;
            top: 50%;
            cursor: pointer;
          }
  
          .s2s2_close {
            position: absolute;
            right: 12%;
            z-index: 9;
            display: inline-block;
            top: 7%;
            cursor: pointer;
          }
        }
  
        .swiper-slide {
          text-align: center;
          font-size: 18px;
          background: #fff;
          display: flex;
          justify-content: center;
          align-items: center;
          overflow: hidden;
          transition: 0.3s;
  
          &:hover {
            cursor: pointer;
            filter: brightness(1.05);
            transition: 0.5s;
          }
        }
  
        .swiper-slide img {
          display: block;
          width: auto;
          height: auto;
          object-fit: cover;
        }
      }
  
      p {
        line-height: 1.45;
      }
  
      article {
        padding: 10% 0 5% 0;
        background: url(../72ppi/s2_bg.png);
        background-position-x: center;
        background-repeat: no-repeat;
        background-size: cover;
  
        .flex_wrap {
          display: flex;
          flex-wrap: wrap;
          gap: 4rem;
          width: 100%;
          justify-content: center;
          padding: 0 10%;
          flex-direction: column;
          /* .img_box {
                      >img {
                          max-height: 20rem;
                      }
                  } */
  
          & .desc_txt {
            display: block;
            width: 68%;
  
            margin: 0 auto;
            text-align: center;
  
            h3 {
              font-size: 3.07rem;
              margin-bottom: 2rem;
            }
  
            p {
              line-height: 1.35;
            }
          }
        }
  
        .s2_bg {
          position: relative;
          width: 100%;
          height: 100%;
          display: block;
          margin-bottom: 20vw;
  
          img {
            width: 100%;
          }
        }
      }
  
      .s2_2 {
        position: absolute;
        display: block;
        margin: 0 auto;
        left: 10%;
        width: 100%;
        top: 35%;
        padding: 0;
        height: 100%;
  
        & .flex_wrap {
          display: flex;
          flex: 1 1 auto;
          width: 100%;
          height: 100%;
          position: relative;
  
          & .flex_left {
            width: 47.5%;
            background: url(../72ppi/sub2_img.png) no-repeat;
            background-size: contain;
          }
  
          & .flex_right {
            padding-left: 4vw;
            padding-top: 1rem;
  
  
  
            h3 {
              font-size: 2.5vw;
              font-weight: 500;
              margin-bottom: 1.3vw;
              position: relative;
  
              &::after {
                position: absolute;
                content: "";
                display: block;
                width: 2.63vw;
                height: 2.63vw;
                background-color: #bdd7e4;
                border-radius: 999px;
                left: -7.5%;
                top: -10%;
                z-index: -1;
              }
            }
  
            p {
              font-size: 1.35vw;
              font-family: var(--pre);
              color: #999;
              font-weight: 300;
            }
          }
        }
  
        .marks {
          display: flex;
          position: absolute;
          width: 100%;
          top: 50%;
          padding-left: 45%;
          right: 0;
          align-items: center;
          justify-content: center;
        }
      }
  
      .s2_3 {
        background: url(../72ppi/sub2_img6.png) center center no-repeat;
        background-size: cover;
        margin: 10%;
      }
    }
  
    /* 고객사 oem 제조 생산 start */
  
    .main.sub3 .sub_banner {
      background: url(../72ppi/s3/s3_banner.jpg) center no-repeat !important;
    }
  
    .s3 {
      padding-bottom: 0;
      max-width: 100%;
      margin-bottom: 11%;
    }
  
    .s3 .oem_wrap {
      max-width: 1540px;
      display: grid;
      margin: 0 auto;
      grid-template-columns: repeat(auto-fit, minmax(370px, 1fr));
      gap: 6rem 1rem;
      padding-inline: 20px;
    }
  
    .s3 .oem_wrap .oem_i {
      filter: drop-shadow(5px 5px 8px rgba(0, 0, 0, 0.25));
    }
  
    .s3 .oem_wrap .oem_i img {
      border-radius: 1rem;
      overflow: hidden;
    }
  
    /* 고객사 oem 제조 생산 end */
  
    /* 제조 / 생산 start */
  
    .mec {
      max-width: 900px;
      margin: 0 auto;
      padding-inline: 20px;
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
      column-gap: 3.5rem;
      row-gap: 2.5rem;
      padding-bottom: 2rem;
    }
  
    .mec .mec_i img {
      display: block;
      margin: 0 auto;
    }
  
    .s1_33 .img_box {
      margin-top: -5rem;
    }
  
    .s1_33 {
      padding-block: 5% 3%;
    }
  
    .s32_swiperbox {
      position: relative;
      width: 100%;
      margin: 0 auto;
      background-color: #d8d8d8;
      padding-inline: 13%;
      padding-block: 78px;
      display: flex;
      margin-bottom: 10%;
    }
  
    .s32_swiperbox .s32_swiper {
      width: 78%;
    }
  
    .s32_swiperbox .s32_swiperThumb {
      position: absolute;
      right: -8rem;
      top: 78px;
      width: 53%;
    }
  
    .s32_swiperbox .s32_swiperThumb .swiper-wrapper {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 20px;
    }
  
    .s32_swiperbox .s32_swiperThumb .swiper-wrapper .swiper-slide {
      cursor: pointer;
    }
  
    /* 제조 / 생산 end */
  
    /* sub4 */
    .s4 {
      padding-top: 0;
      max-width: 100%;
      margin-inline: auto;
      padding-block: 5%;
      text-align: center;
  
  
      & .sub_wrap {
        padding-bottom: 10%;
  
        & h2 {
          font-size: clamp(1.75rem, 1.56vw, 30px);
          color: #1a1a1a;
          font-weight: 700;
        }
  
        & span {
          width: 60px;
          height: 3px;
          display: block;
          margin: 0 auto;
          background-color: #534740;
          opacity: 0.7;
          margin-block: 3rem;
        }
  
        & p {
          line-height: 1.7;
          font-size: clamp(20px, 1.04vw, 20px);
          font-family: var(--pre);
          margin-top: 0;
          color: #333333;
        }
      }
  
      .s4_grid {
        position: relative;
        width: 100%;
        max-width: 1440px;
        margin: 0 auto;
        padding-inline: 20px;
        height: 100%;
        z-index: 1;
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
        gap: 3.2vw;
        margin-bottom: 10%;
        justify-content: center;
  
        .s4_item {
          cursor: pointer;
          background-color: #fff;
          border: 1px solid #231a15;
          padding: 1rem 2rem;
          position: relative;
          border-radius: 1rem;
          width: 100%;
          height: 100%;
          display: grid;
          grid-template-rows: 1fr auto;
  
          &:hover img {
            scale: 1.05;
            transition: 0.5s;
          }
  
          & .category {
            align-items: start;
            min-height: 3rem;
  
            & .on {
              color: #fff;
            }
  
            & span {
              border: 1px solid #534740;
              color: #534740;
              font-size: 1rem;
              letter-spacing: -1px;
              font-weight: 400;
            }
          }
  
          & .s4_img {
            display: block;
            width: 100%;
            position: relative;
          }
  
          img {
            height: 100%;
            display: block;
            padding: 10%;
            margin: 0 auto;
            transition: 0.3s;
          }
  
          & .s4_desc {
            display: grid;
            grid-template-rows: 1fr;
            text-align: left;
            position: relative;
            z-index: 1;
  
            & h4 {
              font-size: clamp(1.2rem, 1.35vw, 26px);
              font-family: var(--pre);
              letter-spacing: -0.8px;
              font-weight: 600;
              margin-bottom: 0.8rem;
              color: #4d4d4d;
  
              & + p {
                font-family: var(--pre);
                color: #999999;
                font-weight: 300;
                font-size: clamp(1rem, 1.04vw, 20px);
                width: 95%;
                min-height: 2rem;
                margin-top: 0rem;
              }
            }
          }
        }
      }
    }
  
    .s4_p1 {
      padding: 0% 0 10%;
  
      & .flex_wrap {
        display: flex;
        gap: 2.3vw;
        /* justify-content: space-between; */
        width: 100%;
        position: relative;
  
         .flex_left {
          min-width: 50%;
          position: relative;
          left: 0;
          height: 100%;
  
          
        }
  
        & .flex_right {
          display: flex;
          flex-direction: column;
          padding: 15% 11% 0 0;
          justify-content: space-between;
          position: relative;
  
          & ::before {
            content: '';
            display: block;
            position: absolute;
            bottom: 0;
            left: -50%;
            z-index: -1;
            width: 200%;
            height: 160px;
            background-color: #c9bfb4;
            opacity: 0.1;
          }
  
          :last-child img {
            cursor: pointer;
          }
  
          h2 {
            font-weight: 600;
            letter-spacing: -0.8px;
            font-size: 2.6vw;
            padding-bottom: 0.5rem;
            color: #1f1f1f;
            font-family: var(--pre);
          }
  
          > p {
            font-size: 1.04vw;
            font-weight: 300;
            font-family: var(--pre);
            white-space: nowrap;
            color: #2e2e2e;
  
            &:last-of-type {
              margin-bottom: 0rem;
              margin-top: 0rem;
            }
          }
  
          & .category {
            width: 60%;
            gap: 0.8rem;
  
            & span {
              border: none;
              padding: 0;
            }
          }
  
          & .category1 {
            min-height: 1rem;
  
  
            & span {
              border: 1px solid #534740;
              color: #534740;
              font-weight: 700;
              font-size: clamp(14px, 1.125rem, 20px);
              letter-spacing: -1px;
              padding: 0.1rem 0.8rem;
            }
          }
  
          & .s4_p_desc {
            display: flex;
            align-items: center;
            margin-bottom: 0.73rem;
  
            p {
              margin-left: 0.4rem;
              display: inline-block;
              font-size: 1vw;
              font-weight: 300;
              font-family: var(--pre);
              color: #999;
            }
  
            span {
              width: 1.2vw;
              height: 1.2vw;
              display: inline-block;
  
              img {
                min-height: 100%;
              }
            }
          }
  
          a {
            display: inline-block;
            padding: 1.1rem 2.2rem;
            background-color: #534740;
            color: white;
            font-weight: 500;
            font-size: 1.45rem;
            font-family: var(--pre);
            border-radius: 5rem;
            margin-top: 2.85rem;
            width: 10vw;
            min-width: fit-content;
  
            & i {
              vertical-align: middle;
            }
          }
  
          .s4_p_thumb {
            margin-top: 6rem;
            display: flex;
            gap: 1.1rem;
  
            li {
              max-width: 221px;
              aspect-ratio: 1 / 1;
  
              img {
                width: 100%;
                height: 100%;
              }
            }
          }
        }
      }
  
      & .go_pr_wrap {
        width: 28%;
        min-height: 72px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: right;
  
        & .go_pr {
          height: 100%;
          margin-top: 0;
          font-style: var(--pre);
          font-size: 1.04vw;
          font-weight: 500;
          color: rgba(83, 71, 64, 0.6);
  
          & i {
            margin-right: 0.5rem;
            vertical-align: middle;
          }
        }
      }
  
    }
  
    .s5_tab {
      font-family: var(--pre);
      padding-top: 0 !important;
      /* max-width: 90% !important; */
      max-width: 1510px;
      margin: 0 auto;
      padding-inline: 20px;
      margin-bottom: 10%;
  
      input {
        display: none;
      }
  
      .tab_wrap {
        display: flex;
        width: 100%;
        gap: 3vw;
        justify-content: center;
        align-items: center;
        font-family: var(--pre);
        padding-bottom: 5rem;
  
        label {
          font-size: 16px;
          font-weight: 600;
          border: 1px solid #ddd;
          padding: 0.5em 1.25rem;
          border-radius: 99px;
          transition: 0.2s;
          cursor: pointer;
        }
      }
  
      #tab_1:checked ~ .tab_wrap > .menu1,
      #tab_2:checked ~ .tab_wrap > .menu2,
      #tab_3:checked ~ .tab_wrap > .menu3 {
        background-color: var(--sub-color);
        color: white;
        font-weight: 700;
        border-color: var(--sub-color);
      }
  
      #tab_1:checked ~ .sub_inner .box1,
      #tab_2:checked ~ .sub_inner .box2,
      #tab_3:checked ~ .sub_inner .box3 {
        display: block;
      }
  
      .box {
        display: none;
        width: 100%;
        height: 100%;
      }
  
      details {
        border-bottom: 1px solid #aaa;
        border-radius: 4px;
        background-color: rgba(242, 242, 242, 0.4);
  
        p {
          color: #404040;
          padding: 1em 2em 1.75em 2em;
          font-size: clamp(14px, 1.125rem, 18px) !important;
          line-height: 1.4;
  
          & .black {
            font-size: clamp(14px, 1.04vw, 20px);
            color: #000;
            font-weight: 700;
          }
        }
      }
  
      summary {
        display: flex;
        text-wrap: balance;
        position: relative;
        justify-content: space-between;
        width: 100%;
        font-size: 18px;
        font-weight: bold;
        padding: 2em;
        font-family: var(--pre);
        -webkit-user-drag: none;
        -khtml-user-drag: none;
        -moz-user-drag: none;
        -o-user-drag: none;
        user-drag: none;
        user-select: none;
        background-color: white;
  
        &::after {
          transition: 0.2s;
          list-style: revert;
          display: block;
          width: 12px;
          height: 12px;
          content: "∨";
          right: 5%;
          padding-left: 0.5em;
          color: #222;
        }
  
        &::-webkit-details-marker {
          display: none;
        }
      }
  
      details[open] summary {
        margin-bottom: 0.75em;
  
        &:after {
          content: "∧";
          color: #534740;
        }
      }
    }
  }