/** 이전으로 버튼 **/

.reservation-wrap .reservationForm .event-detail-wrap span {
  border-bottom: 1px solid #efefef;
  display: block;
  font-size: 20px;
  font-weight: 700;
  padding: 10px 0 10px 56px;
  width: 100%;
}

.checkbox + .reservation-list-box:before {
  background-image: url(../images/icons/checkbox-default-green.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
  content: '';
  display: inline-block;
  flex: 18px 1;
  height: 20px;
  width: 20px;
}

.event-detail-wrap > ul > li .reservation-list-box:before {
  left: 30px;
  position: absolute;
  top: 6px;
}

.event-detail-wrap > ul > li label:before {
  left: 30px;
  position: absolute;
  top: 25px;
}

.event-detail-wrap .event-detail-title {
  /*font-family: 'Noto Sans KR', sans-serif;*/
  color: #1c1c1c;
  font-size: 16px;
  font-weight: 700;
}

.event-detail-wrap.left-over > ul#evtDet1Ul > li {
  grid-template-areas:
            "title button"
        "sub button"
        "turn turn ";
}

.event-detail-wrap.left-over > ul#evtDet1Ul > li {
  padding: 10px 0;
}

.event-detail-wrap.left-over > ul#evtDet1Ul > li .event-detail-turn {
  grid-area: turn;
  grid-template-columns: repeat(10, 1fr);
  max-width: none;
}

.event-detail-wrap.left-over > ul#evtDet1Ul > li .btn-wrap {
  grid-area: button;
}

.reservation-complete-wrap .event-detail-wrap > ul > li {
  padding: 0;
}

.event-detail-wrap .event-detail-period {
  margin-bottom: 16px;
}

label[for="checkboxAll"] > span {
  margin-left: 8px;
  white-space: nowrap;
}

@media screen and (max-width: 768px) {
  .event-detail-wrap > ul > li label:before, label[for="invitationVisit"]:before {
    left: 10px;
    top: 8px;
  }

  .event-detail-wrap > ul > li .reservation-list-box:before {
    left: 10px;
  }

  .reservation-wrap .reservationForm .event-detail-wrap span {
    padding: 10px 0 10px 10px;
  }

  .event-detail-wrap .event-detail-sub {
    word-break: keep-all;
  }

  .event-detail-wrap > ul > li .reservation-list-box .event-detail-sub {
    font-size: 14px;
  }
}

@media screen and (max-width: 460px) {

  .event-detail-wrap > ul > li label:before, label[for="invitationVisit"]:before {
    left: 10px;
    top: 8px;
  }

  .all-check-wrap {
    margin-bottom: 0;
  }

  .event-detail-wrap ul {
    /*padding: 0;*/
  }

  .checkbox + label:before {
    height: 20px;
    width: 20px;
  }

  label[for="checkboxAll"] {
    word-break: keep-all;
  }

  .event-detail-wrap.left-over > ul#evtDet1Ul > li .event-detail-turn {
    grid-area: turn;
    grid-template-columns: repeat(5, 1fr);
    max-width: none;
    width: 100%;
  }
}

section.event-detail {
  padding-bottom: 40px;

  & .btn-back {
    align-items: center;
    background-color: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    display: flex;
    font-size: 16px;
    gap: 8px;
    height: 40px;
    justify-content: center;
    margin-bottom: 20px;
    min-width: 120px;
    transition: 0.3s;

    &:hover {
      background-color: #f0f0f0;
      border-color: #d0d0d0;
    }

    & i {
      height: 20px;
      width: 20px;
    }
  }

  & .shopping-wrap {
    display: flex;
    gap: 40px;
    margin: 0 auto;
    max-width: 1600px;
    position: relative;
    @media screen and (max-width: 1600px) {
      padding: 0 20px;
    }
    @media screen and (max-width: 1280px) {
      gap: 30px;
    }
    @media screen and (max-width: 1016px) {
      padding-top: 0;
    }

    & > div {
      & > .title-wrap {
        margin-bottom: 10px;

        & h2 {
          font-size: 24px;
          margin-bottom: 4px;
          padding: 0;
          text-align: left;

          & strong {
            color: #22c55e;
          }
        }

        & p {
          color: #767676;
          font-size: 14px;
          margin-bottom: 20px;
        }
      }
    }

    & .left {
      flex: 1;

      & .event {
        border: 1px solid #e0e0e0;
        border-radius: 10px;
        margin-bottom: 40px;
        padding: 20px 0;
        width: 100%;

        & .event-title {
          display: flex;
          flex-direction: column;
          font-size: 16px;
          gap: 10px;
          margin-bottom: 4px;
          padding: 0 20px;

          & .chips {
            background: #F3E7DC;
            border-radius: 4px;
            color: #B87333;
            font-weight: 600;
            padding: 4px 10px;
            width: fit-content;
          }

          & > span:not(.chips) {
            font-size: 20px;
            font-weight: 600;
          }
        }

        & .event-content {
          color: #959595;
          font-size: 12px;
          padding: 0 20px;
        }

        & .event-period-price {
          border-top: 1px solid #f2f2f2;
          margin-top: 20px;
          padding: 20px 20px 0;

          & .event-price {
            color: #777777;
            font-size: 14px;

            & .min-price, .max-price {
              color: #111111;
              font-size: 36px;
              font-weight: 900;
            }

            & .max-price {
              margin-left: 10px;
            }
          }
        }
      }

      & > ul {
        display: flex;
        flex-wrap: wrap;
        gap: 20px;

        & li {
          border: 1px solid #e0e0e0;
          border-radius: 10px;
          display: flex;
          flex-direction: column;
          transition: border 0.3s ease-in-out;
          width: calc((100% - 20px) / 2);
          @media screen and (max-width: 1280px) {
            width: 100%;
          }

          & .li-header {
            border-radius: 10px 10px 0 0;
            padding: 20px;

            & .surgery-detail-title {
              color: #111111;
              font-size: 20px;
              font-weight: 700;
              position: relative;
              width: fit-content;
              z-index: 2;

              &:after {
                background-color: #86efac;
                border-radius: 2px;
                bottom: 2px;
                content: '';
                display: block;
                height: 14px;
                left: 50%;
                opacity: 0.5;
                position: absolute;
                transform: translateX(-50%);
                width: calc(100% + 10px);
                z-index: -1;
              }
            }
          }

          & .surgery-detail-sub {
            color: #777777;
            font-size: 14px;
            font-weight: 400;
            margin-top: 4px;
          }

          &:hover {
            border: 1px solid #22c55e;
          }
        }

        & .surgery-detail-turn-specific {
          display: flex;
          margin-bottom: 6px;

          padding: 0 20px;

          & button {
            align-items: center;
            border: 1px solid #EAEAEA;
            color: #A5A5A5;
            display: flex;
            font-size: 12px;
            font-weight: 500;
            height: 32px;
            justify-content: center;
            padding: 0 10px;

            &.active {
              background: #3A4C4007;
              border: 1px solid #3A4C40;
              color: #333333;
              font-weight: 600;
            }

            &:nth-child(1) {
              border-bottom-left-radius: 6px;
              border-top-left-radius: 6px;
            }

            &:nth-last-child(1) {
              border-bottom-right-radius: 6px;
              border-right: 1px solid #eaeaea;
              border-top-right-radius: 6px;

              &.active {
                border-right: 1px solid #3A4C40;
              }
            }
          }
        }

        & .event-detail-turn {
          align-items: flex-end;
          display: flex;
          flex: 1;
          padding: 0 20px;

          & button.disabled {
            align-items: center;
            border: 1px solid #EAEAEA;
            color: #A5A5A5;
            display: flex;
            font-size: 12px;
            font-weight: 500;
            height: 32px;
            justify-content: center;
            padding: 0 10px;

            &.active {
              background: #3A4C4007;
              border: 1px solid #3A4C40;
              color: #333333;
              font-weight: 600;
            }

            &:nth-child(1) {
              border-bottom-left-radius: 6px;
              border-top-left-radius: 6px;
            }

            &:nth-last-child(1) {
              border-bottom-right-radius: 6px;
              border-top-right-radius: 6px;
            }
          }
        }

        & .select-surgery {
          align-items: flex-start;
          display: flex;
          flex: 1;
          flex-direction: column;
          gap: 4px;
          justify-content: flex-end;
          padding: 0 20px;

          & span {
            color: #777777;
            font-size: 12px;
          }

          & select {
            background: url('/images/icons/arrow-down-gray.svg') no-repeat right 10px center;
            border: 1px solid #EAEAEA;
            border-radius: 6px;
            height: 32px;
            padding: 0 30px 0 10px;
          }
        }

        & .event-detail-price, .surgery-detail-price {
          align-items: flex-end;
          border-top: 1px solid #f2f2f2;
          display: flex;
          flex: 0;
          justify-content: space-between;
          margin-top: 20px;
          padding: 20px 20px;

          & .origin-price {
            color: #777777;
            font-size: 14px;
            font-weight: 200;

            & span {
              font-family: "Lato", sans-serif;
              font-weight: 300;
              margin-right: 2px;
              text-decoration: line-through;
            }
          }

          & .final-price-box {
            align-items: flex-start;
            display: flex;
            gap: 6px;
            justify-content: flex-start;
            margin-top: 4px;

            & .discount {
              color: #D40023;
              font-family: "Lato", sans-serif;
              font-size: 20px;
              font-weight: 500;
            }

            & .sales-price {
              color: #333333;

              & span {
                font-family: "Lato", sans-serif;
                font-size: 20px;
                font-weight: 600;
                margin-right: 2px;
              }
            }
          }
        }

        & .btn-wrap {
          & button {
            align-items: center;
            background-color: #3a4c40;
            border-radius: 6px;
            color: #ffffff;
            display: flex;
            font-size: 16px;
            height: 40px;
            padding: 0 20px;
            width: 100%;
          }
        }
      }
    }

    & > .cart-wrap {
      height: fit-content;
      position: sticky;
      top: 160px;
      width: 500px;
      @media screen and (max-width: 1016px) {
        background: #ffffff;
        border-radius: 20px 20px 0 0 ;
        bottom: 0;
        box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px, rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
        left: 0;
        padding-bottom: 80px;
        position: fixed;
        top: auto;
        transition: transform 0.2s ease-in-out;
        width: 100%;
        z-index: 999;
      }

      & button.cart-toggle-button {
        display: none;
        /*left: 50%;*/
        height: 40px;
        position: absolute;
        /*transform: translateX(-50%);*/
        right: 20px;
        top: 14px;
        width: 40px;
        @media screen and (max-width: 1016px) {
          display: block;
        }
        @media screen and (max-width: 768px) {
          right: 10px;
        }

        & i.arrow {
          background: url("/images/icons/swiper-down.svg") no-repeat center / contain;
          height: 100%;
          width: 100%;
        }
      }

      &.hide {
        @media screen and (max-width: 1016px) {
          transform: translateY(calc(100% - 124px));
        }

        & i.arrow {
          transform: rotate(180deg);
        }
      }

      & .cart-box {
        border: 1px solid #e0e0e0;
        border-radius: 10px;
        border-top: 4px solid #86efac;
        box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
        height: fit-content;
        padding: 20px;
        width: 100%;
        @media screen and (max-width: 1016px) {
          border: none;
          box-shadow: none;
          padding: 0;
        }

        & > .title-wrap {
          display: flex;
          flex-direction: column;
          gap: 4px;
          margin-bottom: 10px;
          @media screen and (max-width: 1016px) {
            padding: 20px 20px 0;
          }
          @media screen and (max-width: 768px) {
            padding: 20px 20px 0;
          }

          & h2.title {
            align-items: center;
            display: flex;
            gap: 10px;
            height: 30px;
            margin-bottom: 6px;
            padding: 0;
            @media screen and (max-width: 1016px) {
              font-size: 20px;
              margin-bottom: 20px;
            }

            & span {
              font-size: 24px;
              margin: 0;
              @media screen and (max-width: 1016px) {
                font-size: 20px;
                margin: 0;
              }
            }

            & .search-box {
              display: none;
              position: relative;
              @media screen and (max-width: 460px) {
                display: block;
              }

              & input {
                height: 30px;
              }

              & .search-gray {
                height: 20px;
                position: absolute;
                right: 10px;
                top: 50%;
                transform: translateY(-50%);
                width: 20px;
              }
            }

          }

          & p {
            display: flex;
            justify-content: space-between;

            & span {
              color: #22c55e;
            }

            & button {
              text-decoration: underline;
            }
          }
        }

        & ul {
          @media screen and (max-width: 1016px) {
            max-height: calc(100vh - 600px);
            overflow-y: auto;
            padding: 0 20px;
          }
          @media screen and (max-width: 768px) {
            padding: 0 10px;
          }

          & li {
            border-bottom: 1px solid #e0e0e0;
            padding: 10px 0;

            &:first-child {
              border-top: 1px solid #e0e0e0;
            }

            &:last-child {
              border-bottom: none;
              padding-bottom: 0;
            }

            & label {
              align-items: flex-end;
              cursor: pointer;
              display: flex;
              padding-left: 30px;
              position: relative;

              & .left {
                & .title-wrap {
                  margin-bottom: 10px;

                  & .event-detail-title {
                    font-size: 16px;
                    font-weight: 600;
                  }

                  & .event-detail-sub {
                    color: #767676;
                    font-size: 14px;
                    font-weight: 400;
                  }
                }

                & .event-detail-turn {
                  align-items: flex-end;
                  display: flex;
                  flex: 1;

                  & button {
                    align-items: center;
                    border: 1px solid #EAEAEA;
                    border-right: 1px solid transparent;
                    color: #A5A5A5;
                    display: flex;
                    font-size: 12px;
                    font-weight: 500;
                    height: 32px;
                    justify-content: center;
                    padding: 0 10px;
                    transition: all 0.3s ease-in-out;

                    &.active {
                      background: #3A4C4007;
                      border: 1px solid #3A4C40;
                      color: #333333;
                      font-weight: 600;

                      & + button {
                        border-left: 1px solid transparent;
                      }
                    }

                    &:nth-child(1) {
                      border-bottom-left-radius: 6px;
                      border-top-left-radius: 6px;
                    }

                    &:nth-last-child(1) {
                      border-bottom-right-radius: 6px;
                      border-right: 1px solid #EAEAEA;
                      border-top-right-radius: 6px;

                      &.active {
                        border-right: 1px solid #3A4C40;
                      }
                    }
                  }
                }
              }

              & > .right {
                & .price-wrap {
                  align-items: flex-end;
                  display: flex;
                  gap: 2px;
                  justify-content: flex-end;
                  width: 150px;
                  @media screen and (max-width: 1016px) {
                    width: 90px;
                  }

                  & span {
                    margin-bottom: 2px;
                  }

                  & p {
                    font-family: "Lato", sans-serif;
                    font-size: 24px;
                    font-weight: 600;
                    @media screen and (max-width: 1016px) {
                      font-size: 16px;
                    }
                  }
                }
              }
            }

            & .checkbox + label:before {
              display: block;
              flex: 0;
              left: 0;
              margin: 0;
              position: absolute;
              top: 0;
            }

            & .checkbox#invitationVisit + label:before {
              left: 20px;
              top: 20px;
            }
          }
        }
      }

      & .reservation-button-wrap {
        margin-top: 10px;
        @media screen and (max-width: 1016px) {
          padding: 0 20px;
        }
        @media screen and (max-width: 768px) {
          padding: 0 10px;
        }

        & .total-box {
          background: #ffffff;
          border: 1px solid #e0e0e0;
          border-radius: 10px;
          box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
          height: fit-content;
          margin-bottom: 20px;
          padding: 20px;
          @media screen and (max-width: 1016px) {
            background: #fafafa;
            border: none;
            border-radius: 6px;
            box-shadow: none;
            padding: 10px;
          }

          & .total-price {
            align-items: flex-start;
            display: flex;
            flex-direction: column;
            @media screen and (max-width: 1016px) {
              align-items: center;
              flex-direction: row;
            }

            & > span {
              display: block;
              font-size: 14px;
              font-weight: 600;
              white-space: nowrap;
              width: auto;
            }

            & > div {
              text-align: right;
              width: 100%;

              & .total-price-number {
                color: #22c55e;
                font-family: "Lato", sans-serif;
                font-size: 32px;
                @media screen and (max-width: 1016px) {
                  font-size: 20px;
                }
              }

              & > span {
                font-size: 14px;
              }
            }
          }

          & .text-box {
            @media screen and (max-width: 1016px) {
              align-items: center;
              display: flex;
              flex-wrap: wrap;
              justify-content: space-between;
            }

            & p {
              color: #A5A5A5;
            }
          }
        }

        & button {
          background: #3a4c40;
          border-radius: 10px;
          color: #ffffff;
          font-size: 16px;
          font-weight: 600;
          height: 50px;
          width: 100%;
        }
      }
    }
  }
}

section.cart-detail {
  padding-top: 20px;

  & .cart-detail-wrap {
    margin: 0 auto;
    max-width: 1016px;

    & .cart-detail-box {
      border: 1px solid #e0e0e0;
      border-radius: 10px;
      display: flex;
      flex-direction: column;
      margin-bottom: 40px;
      transition: all 0.3s ease-in-out;

      & > .title-wrap {
        margin-bottom: 20px;
        padding: 20px 20px 0;

        & h2 {
          font-size: 24px;
          font-weight: 700;
          margin-bottom: 4px;
          padding: 0;
          position: relative;
          width: fit-content;
          z-index: 2;

          &:after {
            background-color: #86efac;
            border-radius: 2px;
            bottom: 2px;
            content: '';
            display: block;
            height: 14px;
            left: 50%;
            opacity: 0.5;
            position: absolute;
            transform: translateX(-50%);
            width: calc(100% + 10px);
            z-index: -1;
          }
        }

        & p {
          color: #767676;
          font-size: 14px;
          margin-bottom: 20px;
        }

        & .all-check-wrap {
          display: flex;
          height: auto;
          justify-content: space-between;
          margin-top: 20px;
          padding: 0;

          & > div {

            & label {
              color: #333333;
              cursor: pointer;
              font-weight: 600;

              &:before {
                margin-right: 10px;
              }

              & span {
                color: #333333;
                font-family: "Lato", sans-serif;
                font-weight: 600;
                margin-left: 4px;
              }
            }
          }
        }
      }

      & .cart-list {
        & > span {
          color: #22c55e;
          padding: 0 20px;
        }

        & > ul {
          margin-top: 10px;
          padding: 0 20px;

          & li {
            border-bottom: 1px solid #e0e0e0;
            padding: 20px 0;

            &:first-child {
              border-top: 1px solid #e0e0e0;
            }

            &:last-child {
              border-bottom: none;
              padding-bottom: 0;
            }

            & .checkbox + label:before {
              display: block;
              flex: 0;
              left: 0;
              margin: 0;
              position: absolute;
              top: 0;
            }

            & .checkbox#invitationVisit + label:before {
              left: 20px;
              top: 20px;
            }

            & label {
              align-items: flex-end;
              cursor: pointer;
              display: flex;
              justify-content: space-between;
              padding-left: 30px;
              position: relative;
              @media screen and (max-width: 768px) {
                align-items: flex-start;
                flex-direction: column;
              }

              & .left {
                & .title-wrap {
                  display: flex;
                  flex-direction: column;
                  gap: 4px;
                  margin-bottom: 10px;

                  & .event-detail-title {
                    font-size: 16px;
                    font-weight: 600;
                    @media screen and (max-width: 768px) {
                      font-size: 14px;
                    }
                  }

                  & .event-detail-sub {
                    color: #767676;
                    font-size: 14px;
                    font-weight: 400;
                  }
                }

                & .event-detail-turn {
                  align-items: flex-end;
                  display: flex;
                  flex: 1;

                  & button {
                    align-items: center;
                    border: 1px solid #EAEAEA;
                    border-right: 1px solid transparent;
                    color: #A5A5A5;
                    display: flex;
                    font-size: 12px;
                    font-weight: 500;
                    height: 32px;
                    justify-content: center;
                    padding: 0 10px;
                    transition: all 0.3s ease-in-out;

                    &.active {
                      background: #3A4C4007;
                      border: 1px solid #3A4C40;
                      color: #333333;
                      font-weight: 600;

                      & + button {
                        border-left: 1px solid transparent;
                      }
                    }

                    &:nth-child(1) {
                      border-bottom-left-radius: 6px;
                      border-top-left-radius: 6px;
                    }

                    &:nth-last-child(1) {
                      border-bottom-right-radius: 6px;
                      border-right: 1px solid #EAEAEA;
                      border-top-right-radius: 6px;

                      &.active {
                        border-right: 1px solid #3A4C40;
                      }
                    }
                  }
                }
              }

              & > .right {
                @media screen and (max-width: 768px) {
                  width: 100%;
                }

                & .price-wrap {
                  align-items: flex-end;
                  display: flex;
                  gap: 2px;
                  justify-content: flex-end;
                  width: 150px;
                  @media screen and (max-width: 768px) {
                    width: 100%;
                  }

                  & span {
                    margin-bottom: 2px;
                  }

                  & p {
                    font-family: "Lato", sans-serif;
                    font-size: 24px;
                    font-weight: 600;
                  }
                }
              }
            }
          }
        }
      }

      & .summary-result-box {
        background: #f7f7f7;
        border-radius: 0 0 10px 10px;
        margin-top: 20px;
        padding: 30px 20px;

        & .top-title {
          align-items: center;
          display: flex;
          font-size: 24px;
          font-weight: 600;
          height: 70px;
        }

        & .surgery-num-wrap {
          display: flex;
          flex-direction: column;
          row-gap: 10px;
          @media screen and (max-width: 450px) {
            row-gap: 20px;
          }

          & .surgery-num {
            align-items: center;
            display: flex;
            font-size: 18px;
            justify-content: space-between;
            @media screen and (max-width: 450px) {
              flex-direction: column;
              font-size: 15px;
              row-gap: 4px;
            }

            & .title {
              color: #333333;
              font-weight: 600;
              @media screen and (max-width: 450px) {
                text-align: left;
                width: 100%;
              }
            }

            & .num {
              font-weight: 600;
              @media screen and (max-width: 450px) {
                text-align: right;
                width: 100%;
              }

              & span {
                font-family: "Lato", sans-serif;
                font-size: 24px;
                font-weight: 600;
                @media screen and (max-width: 450px) {
                  text-align: right;
                  width: 100%;
                }
              }

            }
          }

          & .total-price {
            align-items: center;
            display: flex;
            font-size: 18px;
            font-weight: 600;
            justify-content: space-between;
            @media screen and (max-width: 450px) {
              flex-direction: column;
              font-size: 15px;
              row-gap: 4px;
              text-align: left;
              width: 100%;
            }

            & .title {
              @media screen and (max-width: 450px) {
                flex-direction: column;
                font-size: 15px;
                text-align: left;
                width: 100%;
              }
            }

            & .price {
              font-weight: 600;
              @media screen and (max-width: 450px) {
                text-align: right;
                width: 100%;
              }

              & span {
                font-family: "Lato", sans-serif;
                font-size: 24px;
                font-weight: 600;
                @media screen and (max-width: 450px) {
                  text-align: right;
                  width: 100%;
                }
              }
            }
          }

          & .desc {
            color: #777777;
            display: flex;
            gap: 8px;
            justify-content: space-between;
            @media screen and (max-width: 450px) {
              flex-direction: column;
              font-size: 10px;
            }
          }
        }
      }
    }
  }

  & .contact-button-list-wrap {
    margin: 0 auto;
    max-width: 1016px;

    & .contact-button-list {
      align-items: center;
      display: flex;
      gap: 10px;
      margin-bottom: 20px;

      & a {
        align-items: center;
        background-color: #CAB69E;
        border-radius: 10px;
        display: flex;
        flex-direction: column;
        gap: 4px;
        height: 90px;
        padding: 10px;
        width: 90px;

        & i {
          height: 32px;
          width: 32px;
        }

        & span {
          align-items: center;
          color: #ffffff;
          display: flex;
          font-size: 10px;
          font-weight: 500;
          height: 100%;
          text-align: center;
        }
      }
    }
  }
}

section.cart-summary {
  & .wrap.cart-summary-wrap {
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    padding-top: 0;

    & .select-date-time-wrap {
      & > .title-wrap {
        margin-bottom: 40px;
        padding: 20px 20px 0;

        & h2 {
          font-size: 24px;
          font-weight: 700;
          margin-bottom: 4px;
          padding: 0;
          position: relative;
          width: fit-content;
          z-index: 2;

          &:after {
            background-color: #86efac;
            border-radius: 2px;
            bottom: 2px;
            content: '';
            display: block;
            height: 14px;
            left: 50%;
            opacity: 0.5;
            position: absolute;
            transform: translateX(-50%);
            width: calc(100% + 10px);
            z-index: -1;
          }
        }

        & p {
          color: #767676;
          font-size: 14px;
          margin-bottom: 20px;
        }

        & .all-check-wrap {
          height: auto;
          margin-top: 20px;
          padding: 0;

          & > div {
            & label {
              color: #333333;
              cursor: pointer;
              font-weight: 600;

              &:before {
                margin-right: 10px;
              }

              & span {
                color: #333333;
                font-family: "Lato", sans-serif;
                font-weight: 600;
                margin-left: 4px;
              }
            }
          }
        }
      }

      & .select-date-time-box {
        display: grid;
        gap: 40px;
        grid-template-columns:  auto 1fr;
        padding: 0 20px;
        @media screen and ( max-width: 1016px) {
          grid-template-columns: 1fr;
          justify-items: center;

          padding-bottom: 20px;
        }
        @media screen and ( max-width: 768px) {
          padding-bottom: 10px;
        }

        & .calendar-wrap {
          flex: 1;
          width: 300px;

          & .sec_cal {
            max-width: 500px;
            width: 100%;

            & .cal_nav {
              align-items: center;
              display: flex;
              font-size: 16px;
              justify-content: space-between;
              margin-bottom: 20px;

              & .year-month {
                font-size: 16px;
                font-weight: 500;
                text-align: center;
              }

              & .nav-btn {
                align-items: center;
                display: flex;
                font-size: 14px;
                gap: 4px;
              }

              & .icon {
                height: 16px;
                width: 16px;
              }
            }

            & .cal_wrap {
              min-height: 290px;
              position: relative;

              & .days {
                display: grid;
                gap: 10px;
                grid-template-columns: repeat(7, 1fr);
                margin-bottom: 10px;

                & .day {
                  align-items: center;
                  border-radius: 4px;
                  color: #999999;
                  display: flex;
                  font-size: 14px;
                  font-weight: 500;
                  justify-content: center;
                  margin: auto;
                  text-align: center;
                  width: 100%;

                  &.blue {
                    color: #3b82f6;
                  }

                  &.red {
                    color: #ef4444;
                  }
                }
              }

              & .dates {
                display: grid;
                gap: 10px;
                grid-template-columns: repeat(7, 1fr);

                & button {
                  aspect-ratio: 1/1;
                  border: 1px solid transparent;
                  border-radius: 50%;
                  transition: all 0.2s ease-in-out;


                  &.prev {
                    color: #999999;
                  }

                  &.disable {
                    color: #999999;
                  }

                  &.current {
                    &.today {
                      border: 1px solid #228662;
                      color: #228662;

                      &:hover {
                        background: #ffffff;
                        border: 1px solid #228662;
                        color: #228662;
                      }
                    }

                    &.on {
                      background: #228662;
                      border: 1px solid transparent;
                      color: #ffffff;
                    }

                    &:hover {
                      border: 1px solid #e0e0e0;
                    }
                  }
                }
              }
            }
          }
        }

        & .ask-select-date {
          align-items: center;
          color: #dc2626;
          display: flex;
          font-weight: 600;
          justify-content: center;
          max-width: 844px;
          text-align: center;
        }

        & .select-time {
          & > p {
            font-weight: 600;
            margin-bottom: 20px;
            text-align: center;
          }

          & .time-wrap {
            display: grid;
            flex-wrap: wrap;
            gap: 10px;
            grid-template-columns: repeat(8, 1fr);
            margin: auto;
            width: 100%;
            @media screen and (max-width: 1016px) {
              display: flex;
              flex-wrap: wrap;
            }

            & button {
              align-items: center;
              border: 1px solid #e0e0e0;
              border-radius: 6px;
              display: flex;
              justify-content: center;
              padding: 10px 0;
              transition: all 0.2s ease-in-out;
              @media screen and ( max-width: 1016px) {
                min-width: 60px;
                padding: 10px;
              }

              &:hover {
                background: #ededed;
              }

              &.disabled {
                color: #999999;

                &:hover {
                  background: #ffffff;
                }
              }

              &.sec_cal {
                background: #228662;
                border: 1px solid transparent;
                color: #ffffff;
              }
            }
          }
        }
      }
    }
  }

  .login-required-wrap {
    align-items: center;
    border: 1px solid #86efac;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    justify-content: center;
    margin: 40px auto 20px;
    max-width: 1016px;
    padding: 20px;

    & .login-required-img {
      height: 30px;
      width: 30px;
    }

    & h2 {
      font-size: 24px;
      margin-bottom: 0;
      padding: 0;
    }

    & button {
      border: 1px solid #3a4c40;
      border-radius: 6px;
      color: #3a4c40;
      font-size: 16px;
      font-weight: 700;
      padding: 20px;
      transition: all 0.2s ease-in-out;

      &:hover {
        background-color: #3a4c40;
        color: #ffffff;
      }
    }
  }

  .customer-question {
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    margin: 40px auto 0;
    max-width: 1016px;
    padding: 20px;

    & > .title-wrap {
      margin-bottom: 20px;

      & h2 {
        font-size: 24px;
        font-weight: 700;
        margin-bottom: 4px;
        padding: 0;
        position: relative;
        width: fit-content;
        z-index: 2;

        &:after {
          background-color: #86efac;
          border-radius: 2px;
          bottom: 2px;
          content: '';
          display: block;
          height: 14px;
          left: 50%;
          opacity: 0.5;
          position: absolute;
          transform: translateX(-50%);
          width: calc(100% + 10px);
          z-index: -1;
        }
      }

      & p {
        color: #767676;
        font-size: 14px;
        margin-bottom: 20px;
      }

      & .all-check-wrap {
        height: auto;
        margin-top: 20px;
        padding: 0;

        & > div {
          & label {
            color: #333333;
            cursor: pointer;
            font-weight: 600;

            &:before {
              margin-right: 10px;
            }

            & span {
              color: #333333;
              font-family: "Lato", sans-serif;
              font-weight: 600;
              margin-left: 4px;
            }
          }
        }
      }
    }


    & .input-question {
      border: 1px solid #e0e0e0;
      border-radius: 6px;
      font-size: 14px;
      height: 120px;
      padding: 10px;
      resize: none;
      width: 100%;

      &::placeholder {
        color: #999999;
      }
    }
  }

  & .agreement-wrap {
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    margin: 40px auto 0;
    max-width: 1016px;
    padding: 20px;

    & label {
      align-items: center;
      color: #333333;
      cursor: pointer;
      display: flex;
      font-weight: 500;

      &.agreement-all {
        font-weight: 600;
      }
    }

    & > .title-wrap {
      margin-bottom: 20px;

      & h2 {
        font-size: 24px;
        font-weight: 700;
        margin-bottom: 4px;
        padding: 0;
        position: relative;
        width: fit-content;
        z-index: 2;

        &:after {
          background-color: #86efac;
          border-radius: 2px;
          bottom: 2px;
          content: '';
          display: block;
          height: 14px;
          left: 50%;
          opacity: 0.5;
          position: absolute;
          transform: translateX(-50%);
          width: calc(100% + 10px);
          z-index: -1;
        }
      }

      & p {
        color: #767676;
        font-size: 14px;
        margin-bottom: 20px;
      }

      & .all-check-wrap {
        height: auto;
        margin-top: 20px;
        padding: 0;

        & > div {
          &:before {
            margin-right: 10px;
          }

          & span {
            color: #333333;
            font-family: "Lato", sans-serif;
            font-weight: 600;
            margin-left: 4px;
          }
        }
      }
    }

    .checkbox + label:before {
      margin-right: 4px;
      vertical-align: middle;
    }

    & > .select-all {
      border-bottom: 1px solid #e0e0e0;
      font-weight: 600;
      margin-bottom: 10px;
      padding-bottom: 10px;
    }

    & > .confirm-agreement {
      display: flex;
      flex-direction: column;
      gap: 10px;

      & > div {
        align-items: center;
        display: flex;
        justify-content: space-between;

        & button {
          align-items: center;
          border: 1px solid #e0e0e0;
          border-radius: 6px;
          display: flex;
          font-weight: 600;
          height: 36px;
          justify-content: center;
          min-width: 80px;
          padding: 0 10px;
        }
      }
    }
  }
}

& .button-wrap {
  margin: 40px auto 0;
  max-width: 1016px;

  & button {
    background-color: #1c1c1c;
    border-radius: 10px;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    height: 60px;
    text-align: center;
    width: 100%;
  }

}

.wrap.left-over-ticket {
  padding: 0;

  & .top-search-wrap {
    font-size: 24px;
    font-weight: 600;


    & .search-input-box {
      align-items: center;
      display: flex;
      gap: 10px;
      margin-top: 20px;
      @media screen and (max-width: 1016px) {
        flex-wrap: wrap;
      }

      & .select-sort-wrap {
        background: #F0F0F0;
        border-radius: 8px;
        display: flex;
        flex-wrap: wrap;
        height: fit-content;
        padding: 2px;

        & button {
          align-items: center;
          border: 1px solid transparent;
          border-radius: 6px;
          color: #AAAAAA;
          display: flex;
          font-size: 14px;
          font-weight: 500;
          height: 46px;
          justify-content: center;
          min-width: 100px;
          padding: 10px 10px;
          transition: all 0.2s ease-in-out;

          &.on {
            background: #ffffff;
            border: 1px solid #e6e6e6;
            color: #333333;
            font-weight: 600;
          }
        }
      }

      & form {
        flex: 1;

        & .input-search-wrap {
          border-radius: 8px;
          height: fit-content;
          margin: 0;
          min-width: 300px;

          & input {
            height: 50px;
            padding: 10px;
          }
        }
      }
    }
  }

  & .event-detail-wrap.left-over {
    margin-top: 40px;

    & ul {
      & li {
        border-bottom: 1px solid #e0e0e0;
        padding: 20px 0;

        & .checkbox + label:before {
          display: none;
          flex: 0;
          left: 0;
          margin: 0;
          position: absolute;
          top: 0;
        }

        & label {
          align-items: flex-end;
          cursor: pointer;
          display: flex;
          justify-content: space-between;
          /*padding-left: 30px;*/
          position: relative;

          & .left {
            & .title-wrap {
              display: flex;
              flex-direction: column;
              gap: 4px;
              margin-bottom: 10px;

              & .event-detail-sub {
                color: #767676;
                font-size: 14px;
                font-weight: 400;
              }
            }

            & .event-detail-turn {
              align-items: flex-end;
              display: flex;
              flex: 1;

              & button {
                align-items: center;
                border: 1px solid #EAEAEA;
                border-right: 1px solid transparent;
                color: #A5A5A5;
                display: flex;
                font-size: 12px;
                font-weight: 500;
                height: 32px;
                justify-content: center;
                padding: 0 10px;
                transition: all 0.3s ease-in-out;

                &:nth-last-child(1) {
                  border-bottom-right-radius: 6px;
                  border-right: 1px solid #EAEAEA;
                  border-top-right-radius: 6px;
                }

                &:nth-child(1) {
                  border-bottom-left-radius: 6px;
                  border-top-left-radius: 6px;
                }
              }

            }
          }

          & > .right {
            & .price-wrap {
              align-items: flex-end;
              display: flex;
              gap: 2px;
              justify-content: flex-end;
              width: 150px;

              & p {
                font-family: "Lato", sans-serif;
                font-size: 24px;
                font-weight: 600;
              }

              & span {
                margin-bottom: 2px;
              }
            }
          }
        }
      }
    }
  }
}

.event-detail-wrap.left-over {
  & ul#evtDet1Ul {
    & li {
      display: flex;
      justify-content: space-between;

      & label {
        display: flex;
        justify-content: space-between;
        width: 100%;
        @media screen and (max-width: 768px) {
          flex-direction: column;
        }

        & .left {
          @media screen and (max-width: 768px) {
            width: 100%;
          }

          & .event-detail-title {
            font-size: 20px;
            font-weight: 600;
          }

          & .event-detail-sub {
            color: #999999;
            margin-top: 4px;
          }

          & .event-detail-turn {
            align-items: flex-end;
            display: flex;
            flex: 1;
            margin-top: 20px;

            & button {
              align-items: center;
              border: 1px solid #EAEAEA;
              color: #A5A5A5;
              display: flex;
              font-size: 12px;
              font-weight: 500;
              height: 32px;
              justify-content: center;
              padding: 0 10px;

              &:nth-last-child(1) {
                border-bottom-right-radius: 6px;
                border-top-right-radius: 6px;
              }

              &:nth-child(1) {
                border-bottom-left-radius: 6px;
                border-top-left-radius: 6px;
              }
            }
          }
        }
      }

      & .btn-wrap {
        align-items: flex-end;
        display: flex;

        & .btn-cart {
          align-items: center;
          background: #3a4c40;
          border-radius: 6px;
          color: #ffffff;
          display: flex;
          font-size: 14px;
          font-weight: 500;
          height: 44px;
          justify-content: space-between;
          padding: 0 20px;
        }
      }
    }
  }
}
