/*==============================================================
entry
==============================================================*/

.entry {
  .cont {
    padding: 80px 32px;

    @media screen and (max-width: 991px) {
      padding: 40px 16px;
    }
  }

  .box {
    max-width: 1000px;
    margin: 0 auto;

    @media screen and (max-width: 991px) {
      max-width: 80%;
    }

    @media screen and (max-width: 560px) {
      max-width: 100%;
    }
  }

  .item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
  }

  .des {
    text-align: center;
  }

  .mw_wp_form {
    width: 100%;
  }

  .contact_table {
    width: 100%;
    padding: 40px;

    @media screen and (max-width: 991px) {
      padding: 24px 16px;
    }
  }

  .contact_table table {
    width: 100%;
  }

  tbody {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 40px;

    @media screen and (max-width: 768px) {
      gap: 16px;
    }

    tr {
      display: flex;
      align-items: center;
      gap: 16px;

      @media screen and (max-width: 991px) {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
      }

      &.message-flex {
        display: flex;
        align-items: flex-start !important;
      }

      & th {
        flex: 1;
        position: relative;
        padding-left: 3rem;
        color: #333;

        @media screen and (max-width: 991px) {
          padding-left: 3rem;
          width: 100%;
        }

        @media screen and (max-width: 560px) {
          padding-left: 0rem;
        }

        .contact-message {
          margin-top: 4px;

          @media screen and (max-width: 991px) {
            padding-left: 3rem;
          }

          @media screen and (max-width: 560px) {
            padding-left: 0rem;
          }
        }

        .req {
          color: #fff;
          font-weight: 600;
          display: inline-block;
          background: #d30606;
          padding: 5px 7px;
          border-radius: 4px;
          position: absolute;
          left: 0;
          top: 52%;
          font-size: 12px;
          transform: translateY(-50%);

          @media screen and (max-width: 560px) {
            left: unset;
            right: 6px;
            top: 50%;
          }
        }

        .unreq {
          color: #fff;
          font-weight: 600;
          display: inline-block;
          padding: 5px 7px;
          border-radius: 4px;
          position: absolute;
          left: 0;
          top: 52%;
          font-size: 12px;
          transform: translateY(-50%);
          background: rgb(114, 114, 114);

          @media screen and (max-width: 560px) {
            left: unset;
            right: 6px;
            top: 50%;
          }
        }

        .message-req {
          color: #fff;
          font-weight: normal;
          display: inline-block;
          background: #d30606;
          padding: 5px 7px;
          border-radius: 4px;
          position: absolute;
          left: 0;
          top: 14px;
          font-size: 12px;
          color: #fff;
          transform: translateY(-50%);

          @media screen and (max-width: 560px) {
            left: unset;
            right: 6px;
            top: 50%;
          }
        }
      }

      td {
        flex: 3;

        @media screen and (max-width: 768px) {
          width: 100% !important;
        }

        .form-control {
          width: 100%;
          padding: 8px 12px;
          font-size: 16px;
          border: 1px solid #e9e9e9;
          border-radius: 6px;
          background: #fff;
          transition:
            border-color 0.3s ease,
            box-shadow 0.3s ease;
          box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);

          @media screen and (max-width: 768px) {
            width: 100% !important;
          }
        }

        .form-control:focus {
          outline: none;
          border-color: #5383fd;
          box-shadow: 0 0 0 3px rgba(83, 131, 253, 0.2);
        }

        .form-control::placeholder {
          color: #aaa;
          font-size: 14px;
        }
      }
    }
  }
}

.mw_wp_form_confirm .contact_table td {
  background: #f7f9fc;
  padding: 12px 16px;
  border-radius: 8px;
  border: 1px solid #e3e8f0;
}

.mw_wp_form_confirm .contact_table td p {
  margin: 0;
}

.mw_wp_form_confirm .contact_table td input[type="hidden"] {
  display: none;
}

.btn-wrap {
  text-align: center;
  margin-top: 40px;
}

.btn {
  display: inline-block;
  padding: 12px 24px;
  background: linear-gradient(135deg, #ff9100, #ffbb00);
  color: #fff;
  border-radius: 50px;
  width: 100%;
  max-width: 140px;
  text-align: center;
}

.radio-btn label {
  padding-left: inherit !important;
}

.birthdate-color {
  color: #6b6b6b;
}

.entry-birthday {
  display: flex;
}

select:invalid {
  color: gray;
}

.entry-birthday .selectBtn::after {
  left: 95px;

  @media screen and (max-width: 768px) {
    left: 222px;
  }
}

.entry-confirm .message-req {
  top: 50%;

  @media screen and (max-width: 768px) {
    top: 69% !important;
  }
}

.entry-sec-ttl {
  text-align: center;
  font-size: 32px;
  color: #333;

  @media screen and (max-width: 991px) {
    font-size: 20px;
  }
}

.tab__panel-box.is-show {
  display: block;
}

@media screen and (max-width: 991px) {
  .tab__menu {
    flex-direction: column;
  }

  .tab__menu-item {
    width: inherit;
    padding: 4px;
  }
}

input[type="radio"] {
  position: relative;
  width: 16px;
  height: 16px;
  background: #e1e1e1;
  filter: drop-shadow(0px 8px 16px rgba(0, 0, 0, 0.16));
  border-radius: 50%;
  vertical-align: -2px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type="radio"]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #ff0000;
  content: "";
}

.w-length-360 {
  max-width: 360px !important;
  width: 100%;
}

.w-length-280 {
  width: 280px !important;
}

.w-length-210 {
  width: 210px !important;
}

.w-length-180 {
  width: 180px !important;
}

.w-length-120 {
  width: 120px !important;
}

.w-length-90 {
  width: 90px !important;
}

.submit-container.contact-confirm {
  display: flex;
  justify-content: center;
  gap: 24px;
  margin-top: 40px;
}

input[name="submitBack"] {
  background: #6c757d;
  color: #fff;
}

.entry-home {
  cursor: pointer;
  background: linear-gradient(135deg, #5d5dff, #43d2ff);
  padding: 12px 24px;
  border-radius: 50px;
  font-weight: 600;
  font-size: 18px;
  color: #fff;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
  transition:
    opacity 0.3s ease,
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.entry-home:hover {
  opacity: 0.85;
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(93, 93, 255, 0.4);
}
