/*==============================================================
Service
==============================================================*/
.ttl-jp {
  &::before {
    background: #3b8800 !important;
  }
}

.service-nav {
  background-color: #fbfbfb;

  .cont {
    .box {
      .under-ttl {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 16px;

        .ttl-en-cont {
          .ttl-en {
          }
        }

        .ttl-jp-cont {
          display: flex;
          flex-direction: column;
          justify-content: center;
          align-items: center;
          gap: 12px;

          .ttl-jp {
          }
          .img {
            width: 100% !important;
            max-width: 48px !important;
          }
        }
      }

      .service-nav-list {
        display: flex;
        justify-content: center;
        gap: 40px;

        @media screen and (max-width: 480px) {
          flex-direction: column;
          gap: 24px;
        }

        .service-nav-item {
          display: flex;
          flex-direction: column;
          justify-content: center;
          align-items: center;
          gap: 24px;
          text-align: center;

          .img {
            img {
              border-radius: 70px;
              border: 8px solid #ffe57e;
            }
          }

          .name {
            font-size: clamp(1rem, 0.6667rem + 0.6944vw, 1.5rem);
            font-family: "zen-maru-gothic", sans-serif;
            font-weight: 700;
            font-style: normal;
          }
        }
      }
    }
  }
}

.service {
  .cont {
    padding: 80px 32px 0;

    @media screen and (max-width: 991px) {
      padding: 40px 16px 0;
    }
  }

  .box {
    max-width: 1240px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;

    @media screen and (max-width: 991px) {
      grid-template-columns: 1fr;
    }

    @media screen and (max-width: 480px) {
      gap: 24px;
    }

    .item-cont:first-child {
      grid-column: 1 / -1;
    }

    .item-cont {
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center;
      border-radius: 30px;
      position: relative;
      overflow: hidden;
      transition: background-size 0.4s ease;

      @media screen and (max-width: 480px) {
        border-radius: 15px;
      }

      &::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(to top, #d1d931 0%, transparent 50%);
        pointer-events: none;
        border-radius: 30px;
        z-index: 1;

        @media screen and (max-width: 480px) {
          background: #d1d93141;
          border-radius: 15px;
        }
      }

      &::after {
        /* 追加 */
        content: "";
        position: absolute;
        inset: 0;
        background-image: inherit;
        background-size: 100%;
        background-position: center;
        background-repeat: no-repeat;
        border-radius: 30px;
        z-index: 0;
        transition: background-size 0.4s ease;

        @media screen and (max-width: 480px) {
          border-radius: 15px;
        }
      }

      &:hover::after {
        background-size: 110%;
      }
      .item {
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        gap: 48px;
        max-width: 100%;
        margin: 0 auto;
        height: 400px;

        @media screen and (max-width: 1279px) {
          gap: 16px;
        }

        @media screen and (max-width: 480px) {
          gap: 0px;
          height: 360px;
        }

        .left {
          flex: 1;
          display: flex;
          flex-direction: column;
          justify-content: space-between;
          gap: 32px;
          position: relative;
          z-index: 1;
          height: stretch;

          @media screen and (max-width: 991px) {
            gap: 16px;
          }

          .ttl {
            .ttl-jp {
              font-size: clamp(1.125rem, 0.875rem + 0.5208vw, 1.5rem);
              font-family: "zen-maru-gothic", sans-serif;
              font-weight: 700;
              font-style: normal;
              line-height: 1.2;
              background: #809f00;
              border-radius: 30px 0 30px 0;
              padding: 16px;
              width: max-content;

              @media screen and (max-width: 480px) {
                border-radius: 15px 0 15px 0;
              }
            }
          }

          .des {
            padding: 16px;
            text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5);

            @media screen and (max-width: 480px) {
              padding: 8px;
            }
          }
        }

        .right {
          display: flex;
          z-index: 1;

          .btn {
            background: #fff;
            border-radius: 30px 0 30px 0;
            padding: 16px 24px;
            display: block;

            @media screen and (max-width: 480px) {
              padding: 8px 16px;
              border-radius: 15px 0 15px 0;
            }

            .img {
              width: 100%;
              max-width: 40px;
            }
          }
        }
      }
    }
  }
}

/*==============================================================
Service-下層
==============================================================*/
/*-------------米製品販促品制作事業-------------*/
.rice-product-promotion {
  .promotion {
    .cont {
      padding: 80px 0;

      @media screen and (max-width: 480px) {
        padding: 40px 0;
      }

      .box {
        width: 100%;
        max-width: 80%;
        margin: 0 0 0 auto;
        position: relative;
        z-index: 1;

        @media screen and (max-width: 480px) {
          max-width: 95%;
        }

        .item {
          display: flex;
          gap: 60px;

          @media screen and (max-width: 991px) {
            flex-direction: column-reverse;
            gap: 24px;
          }

          .left {
            flex: 1;
            display: flex;
            flex-direction: column;
            gap: 8px;

            @media screen and (max-width: 480px) {
              padding-right: 5%;
            }

            .ttl {
              font-family: "zen-maru-gothic", sans-serif;
              font-weight: 700;
              font-style: normal;
              font-size: clamp(1.5rem, 1.1667rem + 1.1111vw, 2.5rem);
              span {
                color: #fbba24;
              }
            }

            .des {
              line-height: 1.8;
            }
          }

          .right {
            flex: 1.2;

            .img {
              img {
                border-radius: 20px 0 0 20px;
                box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
              }
            }
          }
        }

        .dec {
          position: absolute;
          bottom: -7%;
          left: -20%;
          z-index: -1;

          @media screen and (max-width: 991px) {
            bottom: -3%;
            left: -21%;
          }

          @media screen and (max-width: 480px) {
            bottom: -16%;
            left: 68%;
          }

          .img {
            width: 100%;
            max-width: 200px;

            @media screen and (max-width: 1279px) {
              max-width: 160px;
            }

            @media screen and (max-width: 991px) {
              max-width: 130px;
            }

            @media screen and (max-width: 480px) {
              max-width: 100px;
            }
          }
        }
      }
    }
  }

  .content {
    .cont {
      padding: 0;

      .box {
        max-width: 100%;

        @media screen and (max-width: 1279px) {
          width: 100%;
        }

        .item-cont {
          background: #fbfbfb;
          padding: 80px 32px;

          @media screen and (max-width: 991px) {
            padding: 40px 32px;
          }

          &.reverse {
            background: #fff;

            .item {
              flex-direction: row-reverse;
              padding-left: 0% !important;
              padding-right: 10%;

              @media screen and (max-width: 1279px) {
                padding-right: 5%;
              }

              @media screen and (max-width: 480px) {
                flex-direction: column;
                padding-right: 0%;
              }
            }
          }

          .item-box {
            width: 100%;
            max-width: 1240px;
            margin: 0 auto;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 24px;

            @media screen and (max-width: 1279px) {
              width: 90%;
            }

            @media screen and (max-width: 991px) {
              width: 100%;
            }

            .content-ttl {
              display: flex;
              gap: 4px;
              align-items: center;
              font-size: clamp(1.3125rem, 0.5208rem + 1.6493vw, 2.5rem);
              font-family: "zen-maru-gothic", sans-serif;
              font-weight: 700;
              font-style: normal;

              .ttl-icon {
                width: 100%;
                max-width: 48px;
              }
            }

            .item {
              display: flex;
              align-items: center;
              gap: 60px;
              padding-left: 10%;

              @media screen and (max-width: 1279px) {
                padding-left: 5%;
              }

              @media screen and (max-width: 991px) {
                gap: 24px;
              }

              @media screen and (max-width: 480px) {
                flex-direction: column;
                padding-left: 0%;
              }

              .left {
                flex: 1;
                .img {
                  img {
                    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
                    border-radius: 15px;
                  }
                }
              }

              .right {
                flex: 1;
                display: flex;
                flex-direction: column;
                gap: 24px;

                @media screen and (max-width: 991px) {
                  gap: 16px;
                }

                @media screen and (max-width: 480px) {
                  gap: 8px;
                  align-items: center;
                }

                .ttl {
                  font-size: clamp(1.25rem, 1rem + 0.8333vw, 2rem);
                  font-family: "zen-maru-gothic", sans-serif;
                  font-weight: 700;
                  font-style: normal;
                }
              }
            }
          }
        }
      }
    }
  }
}

/*-------------米製品販促品制作事業-------------*/
.rice-wholesale {
  .wholesale {
    .cont {
      padding: 80px 0;

      @media screen and (max-width: 480px) {
        padding: 40px 0;
      }

      .box {
        width: 100%;
        max-width: 80%;
        margin: 0 0 0 auto;
        position: relative;
        z-index: 1;

        @media screen and (max-width: 480px) {
          max-width: 95%;
        }

        .item {
          display: flex;
          gap: 60px;

          @media screen and (max-width: 991px) {
            flex-direction: column-reverse;
            gap: 24px;
          }

          .left {
            flex: 1;
            display: flex;
            flex-direction: column;
            gap: 8px;

            @media screen and (max-width: 480px) {
              padding-right: 5%;
            }

            .ttl {
              font-family: "zen-maru-gothic", sans-serif;
              font-weight: 700;
              font-style: normal;
              font-size: clamp(1.5rem, 1.1667rem + 1.1111vw, 2.5rem);
              span {
                color: #fbba24;
              }
            }

            .des {
              line-height: 1.8;
            }
          }
          .right {
            flex: 1.2;

            .img {
              img {
                border-radius: 20px 0 0 20px;
                box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
              }
            }
          }
        }

        .dec {
          position: absolute;
          bottom: -7%;
          left: -20%;
          z-index: -1;

          @media screen and (max-width: 991px) {
            bottom: -3%;
            left: -21%;
          }

          @media screen and (max-width: 480px) {
            bottom: -16%;
            left: 68%;
          }

          .img {
            width: 100%;
            max-width: 200px;

            @media screen and (max-width: 1279px) {
              max-width: 160px;
            }

            @media screen and (max-width: 991px) {
              max-width: 130px;
            }

            @media screen and (max-width: 480px) {
              max-width: 100px;
            }
          }
        }
      }
    }
  }

  .content {
    background-color: #fffcee;

    .cont {
      .box {
        max-width: 1240px;

        .under-ttl {
          margin-bottom: 40px;
          display: flex;
          flex-direction: column;
          align-items: center;
          gap: 16px;

          .ttl-en-cont {
            display: flex;
            align-items: center;
          }

          .ttl-jp-cont {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 12px;

            .img {
              width: 100%;
              max-width: 36px;
            }
          }
        }

        .item-cont {
          display: flex;
          flex-direction: column;
          gap: 40px;

          .item {
            .ttl-cont {
              display: flex;
              gap: 16px;
              align-items: flex-end;
              border-bottom: 3px solid #809f00;
              position: relative;
              z-index: 1;

              @media screen and (max-width: 480px) {
                gap: 8px;
              }

              .ttl-icon {
                display: block;
                width: 100%;
                max-width: 80px;
                margin-bottom: -3px;
                position: relative;
                z-index: -1;

                @media screen and (max-width: 480px) {
                  max-width: 48px;
                }
              }
              .ttl {
                font-size: clamp(1.25rem, 0.75rem + 1.0417vw, 2rem);
                font-family: "zen-maru-gothic", sans-serif;
                font-weight: 700;
                font-style: normal;
                margin-bottom: 4px;
              }
            }

            .txt-cont {
              display: flex;
              align-items: center;
              gap: 80px;
              padding: 3% 4%;

              @media screen and (max-width: 991px) {
                gap: 40px;
              }

              @media screen and (max-width: 480px) {
                flex-direction: column;
                gap: 16px;
                padding: 4% 0;
              }

              .left {
                flex: 1;

                @media screen and (max-width: 991px) {
                  flex: 1.8;
                }

                .img {
                  position: relative;
                  z-index: 1;

                  &::before {
                    content: "";
                    position: absolute;
                    top: 5%;
                    left: -5%;
                    width: 100%;
                    height: 100%;
                    background-color: #d1d931;
                    border-radius: 30px;
                    z-index: -1;

                    @media screen and (max-width: 480px) {
                      top: 3%;
                      left: -2%;
                    }
                  }

                  img {
                    border-radius: 30px;
                  }
                }
              }

              .right {
                flex: 1.2;

                .des {
                  line-height: 2;
                }
              }
            }

            .top-cont {
              padding: 3% 4%;

              @media screen and (max-width: 480px) {
                padding: 3% 0;
              }

              .txt-des {
                text-align: center;
                margin: 0 0 16px;
              }

              .top-box {
                display: flex;
                gap: 24px;

                @media screen and (max-width: 480px) {
                  flex-direction: column;
                  gap: 16px;
                }

                .top-item {
                  flex: 1;
                  display: flex;
                  flex-direction: column;
                  gap: 8px;
                  align-items: center;

                  .ttl {
                    font-size: clamp(1.125rem, 1.0417rem + 0.1736vw, 1.25rem);
                    font-family: "zen-maru-gothic", sans-serif;
                    font-weight: 700;
                    font-style: normal;
                  }
                  .img {
                    img {
                      border-radius: 10px;
                    }
                  }

                  .des {
                    line-height: 2;

                    @media screen and (max-width: 480px) {
                      line-height: 1.6;
                    }
                  }
                }
              }
            }

            .under-cont {
              display: flex;
              flex-direction: column;
              gap: 8px;
              padding: 0% 3% 3%;

              @media screen and (max-width: 480px) {
                padding: 0 0 3%;
              }

              .ttl-cont {
                display: flex;
                flex-direction: column;
                gap: 8px;
                align-items: center;
                border: unset;
              }

              .content-cont {
                background: #fff;
                border-left: 8px solid #d1d931;
                border-right: 8px solid #d1d931;
                border-radius: 30px;
                padding: 40px;
                overflow-x: auto;
                -webkit-overflow-scrolling: touch;

                @media screen and (max-width: 480px) {
                  padding: 16px;
                }

                table {
                  width: max-content;
                  min-width: 100%;
                  border-collapse: collapse;
                  white-space: nowrap;
                }

                .thead-cont {
                  display: flex;

                  .col-item,
                  .col-content {
                    padding: 16px 16px 2px;
                    text-align: left;
                  }

                  .col-item {
                    flex: 1;
                  }
                  .col-content {
                    flex: 4;
                  }
                }

                tbody tr {
                  border-bottom: 2px solid #cccccc85;
                }

                .col-item {
                  padding: 16px;
                  width: 30%;
                }

                .col-content {
                  padding: 16px;
                  width: 70%;
                }
              }
            }
          }
        }
      }
    }
  }
}

/*-------------精米加工事業-------------*/
.rice-milling {
  .milling {
    .cont {
      padding: 80px 0;

      @media screen and (max-width: 480px) {
        padding: 40px 0;
      }

      .box {
        width: 100%;
        max-width: 80%;
        margin: 0 0 0 auto;
        position: relative;
        z-index: 1;

        @media screen and (max-width: 480px) {
          max-width: 95%;
        }

        .item {
          display: flex;
          gap: 60px;

          @media screen and (max-width: 991px) {
            flex-direction: column-reverse;
            gap: 24px;
          }

          .left {
            flex: 1;
            display: flex;
            flex-direction: column;
            gap: 8px;

            @media screen and (max-width: 480px) {
              padding-right: 5%;
            }

            .ttl {
              font-family: "zen-maru-gothic", sans-serif;
              font-weight: 700;
              font-style: normal;
              font-size: clamp(1.5rem, 1.1667rem + 1.1111vw, 2.5rem);
              span {
                color: #fbba24;
              }
            }

            .des {
              line-height: 1.8;
            }
          }
          .right {
            flex: 1.2;

            .img {
              img {
                border-radius: 20px 0 0 20px;
                box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
              }
            }
          }
        }

        .dec {
          position: absolute;
          bottom: -7%;
          left: -20%;
          z-index: -1;

          @media screen and (max-width: 991px) {
            bottom: -3%;
            left: -21%;
          }

          @media screen and (max-width: 480px) {
            bottom: -16%;
            left: 68%;
          }

          .img {
            width: 100%;
            max-width: 200px;

            @media screen and (max-width: 1279px) {
              max-width: 160px;
            }

            @media screen and (max-width: 991px) {
              max-width: 130px;
            }

            @media screen and (max-width: 480px) {
              max-width: 100px;
            }
          }
        }
      }
    }
  }

  .approach {
    background-image: url("../assets/img/service/rice-milling/approach-main-bg.jpg");
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    position: relative;
    z-index: 0;

    &::before {
      content: "";
      position: absolute;
      inset: 0;
      background: rgba(255, 255, 255, 0.8);
      z-index: 1;
      pointer-events: none;
    }

    > * {
      position: relative;
      z-index: 2;
    }

    .cont {
      .box {
        max-width: 1240px;

        .item {
          display: flex;
          justify-content: space-between;
          gap: 120px;

          @media screen and (max-width: 991px) {
            flex-direction: column-reverse;
            justify-content: center;
            align-items: center;
            gap: 32px;
          }

          .left {
            flex: 1.3;
            display: flex;
            flex-direction: column;
            gap: 24px;

            .left-item {
              display: flex;
              flex-direction: column;
              align-items: center;
              background: #fff;
              border-radius: 15px;
              padding: 24px;
              gap: 8px;
              position: relative;

              h3 {
                font-size: clamp(1.25rem, 0.75rem + 1.0417vw, 2rem);
                font-family: "zen-maru-gothic", sans-serif;
                font-weight: 700;
                font-style: normal;
                color: #3dbe06;
              }

              .left-content {
                display: flex;

                @media screen and (max-width: 991px) {
                  flex-direction: column;
                }

                .img {
                  flex: 1;

                  img {
                    border-radius: 15px;
                  }
                }

                .des {
                  flex: 1;
                  padding: 24px 0px 24px 24px;
                  position: relative;
                  z-index: 1;

                  @media screen and (max-width: 560px) {
                    padding: 16px 0 0 0;
                  }
                }
              }
              .bg-img {
                position: absolute;
                right: 0;
                bottom: 0;
                width: 100%;
                max-width: 160px;
                z-index: -1;
              }
            }
          }
          .right {
            .ttl {
              background-color: #fff;
              border-radius: 15px;
              padding: 16px;
              display: flex;
              align-items: center;
              gap: 8px;
              width: max-content;

              .img {
                width: 100%;
                max-width: 36px;
              }

              h2 {
                color: #fbba24;
                font-size: clamp(1.25rem, 0.75rem + 1.0417vw, 2rem);
                font-family: "zen-maru-gothic", sans-serif;
                font-weight: 700;
                font-style: normal;
              }
            }
          }
        }
      }
    }
  }

  .processing {
    background-color: #fffcee;

    .cont {
      .box {
        max-width: 1240px;

        .under-ttl {
          display: flex;
          flex-direction: column;
          align-items: center;
          gap: 16px;

          .ttl-jp-cont {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 12px;

            .img {
              width: 100%;
              max-width: 40px;
            }
          }
        }

        .flow-wrapper {
          display: flex;
          align-items: flex-start;
          gap: 56px;

          @media screen and (max-width: 991px) {
            flex-direction: column;
          }
        }

        .flow-left {
          flex: 1;
          flex-shrink: 0;
          position: sticky;
          top: 120px;

          @media screen and (max-width: 991px) {
            display: none;
          }

          .flow-nav {
            list-style: none;
            margin: 0;
            padding: 0;
            position: relative;
            background-color: #fff;
            border-radius: 15px;
            padding: 24px;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
            display: flex;
            flex-direction: column;
            gap: 8px;

            .flow-nav__item {
              position: relative;
              padding: 6px 0;

              a {
                display: flex;
                align-items: center;
                gap: 10px;
                text-decoration: none;
                color: inherit;

                &:hover {
                  .flow-nav__label {
                    color: #6ec300;
                  }
                }

                .flow-nav__num {
                  width: 36px;
                  height: 36px;
                  border-radius: 50%;
                  background: #6ec300;
                  color: #fff;
                  font-size: 16px;
                  font-weight: bold;
                  display: flex;
                  align-items: center;
                  justify-content: center;
                  flex-shrink: 0;
                  position: relative;
                  z-index: 1;

                  &::before {
                    content: "";
                    display: block;
                    position: absolute;
                    top: 50%;
                    left: 50%;
                    transform: translate(-50%, -50%);
                    background-color: #d1d931;
                    border-radius: 50px;
                    width: 48px;
                    height: 48px;
                    z-index: -1;
                  }

                  &::after {
                    content: "";
                    display: block;
                    position: absolute;
                    top: 50%;
                    left: 50%;
                    transform: translate(-50%, -50%);
                    background: #6ec300;
                    border-radius: 50px;
                    width: 38px;
                    height: 38px;
                    z-index: -1;
                  }
                }

                .flow-nav__label {
                  display: flex;
                  flex-direction: column;
                  font-family: "zen-maru-gothic", sans-serif;
                  font-weight: 700;
                  font-style: normal;
                  transition: color 0.3s;

                  .flow-nav__sub {
                    font-size: 14px;
                  }
                }
              }
            }
          }
        }

        .flow-right {
          flex: 3;
          display: flex;
          flex-direction: column;
          gap: 40px;
          position: relative;
          z-index: 1;

          &::before {
            content: "";
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            display: block;
            background-color: #ffe57e;
            width: 40px;
            height: 98%;
            z-index: -1;
          }

          .flow-item {
            display: flex;
            background-color: #fff;
            border-radius: 15px;
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
            scroll-margin-top: 120px;

            @media screen and (max-width: 991px) {
              flex-direction: column-reverse;
            }

            .left {
              flex: 1;
              padding: 24px;
              display: flex;
              flex-direction: column;
              gap: 12px;

              @media screen and (max-width: 991px) {
                padding: 16px;
              }

              .flow-item__header {
                display: flex;
                align-items: center;
                gap: 12px;
                background: #d1d931;
                padding: 5px;
                border-radius: 50px;

                .flow-item__num {
                  font-size: 20px;
                  font-family: "zen-maru-gothic", sans-serif;
                  font-weight: 700;
                  font-style: normal;
                  background-color: #6ec300;
                  border-radius: 50px;
                  position: relative;
                  width: 32px;
                  height: 32px;
                  display: flex;
                  justify-content: center;
                  color: #fff;
                }

                .flow-item__title {
                  font-size: clamp(1.125rem, 1rem + 0.2604vw, 1.3125rem);
                  font-family: "zen-maru-gothic", sans-serif;
                  font-weight: 700;
                  font-style: normal;

                  .flow-item__badge {
                    font-size: clamp(0.875rem, 0.875rem + 0vw, 0.875rem);
                  }
                }
              }

              .flow-item__text {
                p {
                  line-height: 1.6;

                  @media screen and (max-width: 991px) {
                    line-height: 1.6;
                  }
                }
              }
            }
            .right {
              flex: 1;

              .img {
                img {
                  border-radius: 0 15px 15px 0;

                  @media screen and (max-width: 991px) {
                    border-radius: 15px 15px 0 0;
                  }
                }
              }
            }
          }
        }
      }
    }
  }

  .oita {
    background: #fff;

    .cont {
      .box {
        display: flex;
        align-items: center;
        flex-direction: column;
        justify-content: center;
        gap: 24px;
        max-width: 1240px;

        .content-ttl {
          display: flex;
          align-items: center;
          justify-content: center;
          gap: 8px;

          h2 {
            font-size: clamp(1.25rem, 0.75rem + 1.0417vw, 2rem);
            font-family: "zen-maru-gothic", sans-serif;
            font-weight: 700;
            font-style: normal;
          }

          .img {
            width: 100%;
            max-width: 120px;
          }
        }

        .item {
          display: flex;
          gap: 64px;

          @media screen and (max-width: 991px) {
            flex-direction: column;
            justify-content: center;
            align-items: center;
            gap: 32px;
          }

          .left {
            flex: 1;
            display: flex;
            flex-direction: column;
            gap: 24px;

            .img {
              img {
                border-radius: 15px;
              }
            }

            .txt {
              h3 {
                font-size: clamp(1.5rem, 1.1667rem + 0.6944vw, 2rem);
                font-family: "zen-maru-gothic", sans-serif;
                font-weight: 700;
                font-style: normal;
                margin-bottom: 12px;
                padding-bottom: 12px;
                border-bottom: 1px dotted #ccc;
              }

              .des {
                line-height: 2;
              }
            }
          }

          .right {
            flex: 1;
            display: flex;
            flex-direction: column;
            gap: 32px;

            .top {
              background-color: #fff7d9;
              border-radius: 20px;
              padding: 24px;
              display: flex;
              flex-direction: column;
              gap: 16px;

              .item-name {
                background-color: #fbba24;
                border-radius: 10px;
                padding: 8px 16px;
                text-align: center;
                font-size: clamp(1.125rem, 1.0417rem + 0.1736vw, 1.25rem);
                font-family: "zen-maru-gothic", sans-serif;
                font-weight: 700;
                font-style: normal;
                color: #fff;
              }

              .top-item-cont {
                display: flex;
                flex-direction: column;
                gap: 16px;

                .top-item {
                  .ttl {
                    display: flex;
                    align-items: center;
                    gap: 6px;

                    .left-txt {
                      color: #fff;
                      font-weight: 600;
                      background-color: #d1d931;
                      border-radius: 50px;
                      padding: 8px 16px;
                      width: fit-content;
                      align-self: flex-start;
                      line-height: 1;
                    }

                    .right-txt {
                      font-size: clamp(1rem, 0.9167rem + 0.1736vw, 1.125rem);
                      font-weight: 600;
                    }
                  }
                }
              }
            }

            .bottom {
              background-color: #f5f5f5;
              border-radius: 20px;
              padding: 24px;
              display: flex;
              flex-direction: column;
              justify-content: center;
              align-items: center;
              gap: 16px;

              .ttl {
                display: flex;
                align-items: center;
                gap: 8px;

                .ttl-txt {
                  font-size: clamp(1.125rem, 1.0417rem + 0.1736vw, 1.25rem);

                  font-family: "zen-maru-gothic", sans-serif;
                  font-weight: 700;
                  font-style: normal;
                }
                .img {
                  width: 100%;
                  max-width: 80px;

                  img {
                  }
                }
              }

              .content {
                display: flex;
                flex-direction: column;
                gap: 16px;

                .content-txt {
                  display: flex;
                  align-items: center;
                  background-color: #fff;
                  border-radius: 15px;
                  padding: 12px;
                  gap: 12px;

                  .number {
                    width: 100%;
                    max-width: 40px;
                    height: 40px;
                    background-color: #fbba24;
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    border-radius: 50px;
                    color: #fff;
                    font-weight: 700;
                    font-style: normal;
                  }
                  .des {
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}

thead {
  display: block;
}

tbody {
  display: block;
}
