.exchange .general-content {
  padding-top: 1rem;
  position: relative;
  height: 62rem;

}

.exchange .top-content {
  margin-bottom: 0;
}

.exchange .general-content .page {
  max-width: 826px;
  width: 95.5%;
  height: 100%;
  margin: auto;
}

.exchange .prize {
  display: flex;
  justify-content: center;
  position: relative;
}

.exchange .exchange_page .prize:nth-of-type(1) {
  height: 9rem;
}

.exchange .exchange_page .prize:nth-of-type(1) .input_wrap {
  height: 100%;
}


.exchange .exchange_page .prize:nth-of-type(2) {
  height: 33.5rem;
}

.exchange .exchange_page .prize:nth-of-type(2) .input_group {
  padding-top: 1rem;
}

.exchange .exchange_page .prize:nth-of-type(2) .input_wrap {
  height: 19%;
}

.exchange .exchange_page .prize::after,
.exchange .confirm_page .prize:nth-of-type(1)::after {
  content: "";
  position: absolute;
  left: calc(50% - 0rem);
  bottom: 0;
  width: calc(90% - -7.6rem);
  height: 1px;
  background-color: #fff;
  transform: translate(-50%);
}

.exchange .confirm_page .prize:nth-of-type(1)::after {
  width: calc(90% - 0rem);
  height: 2px;
}

.exchange .prize .subtitle {
  width: 9.8%;
  font-weight: 700;
  display: flex;
  justify-content: center;
  align-items: center;
}

.exchange .prize .subtitle span {
  writing-mode: vertical-lr;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 1rem;
  text-indent: 1rem;
  font-size: 2.3rem;
}

.exchange .confirm_page .prize .subtitle span {
  font-size: 2.7rem;
}

.exchange .prize:nth-of-type(1) .subtitle {
  color: #f10101;
  background: #FFF;
}

.exchange .confirm_page .prize:nth-of-type(1) .subtitle {
  min-height: 194px;
}

.exchange .prize:nth-of-type(2) .subtitle {
  color: #FFF;
  background: #f10101;
}

.exchange .prize .input_group {
  flex: 1;
}

.exchange .input_wrap {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  font-size: 1.97rem;
  color: #FFF;
  position: relative;
  font-weight: 400;
}

.exchange .input_wrap .gift_name {
  width: 60.8%;
  padding-left: 3rem;
  text-align: left;
}

.exchange .input_wrap .gift_name span {
  font-size: 1.97rem;
  margin: 0;
  font-weight: 400;
  line-height: 3rem;
}

.exchange .input_wrap .gift_name .low-stock-hint,
.exchange .input_wrap .gift_name .out-of-stock-hint {
  color: #ffde00;
  font-size: 1.07rem;
  font-weight: 400;
  margin-left: 2.1rem;
  letter-spacing: 0.2rem;
  text-indent: 0.2rem;
}

.exchange .input_wrap .gift_name .low-stock-hint {
  width: 41%;
  text-align: center;
  margin-left: 0;
}


.exchange .prize:nth-of-type(1) .input_wrap .gift_point {
  background: #FFF;
  color: #f10101;
  height: 3.4rem;
}

.exchange .prize:nth-of-type(1) .input_wrap .gift_point span {
  color: #f10101;
}

.exchange .input_wrap .gift_point {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 14.2%;
  padding: 0.5rem 1rem;
  margin-right: 1.1rem;
  font-weight: 700;
  font-size: 2.2rem;
}

.exchange .input_wrap .gift_point span {
  margin-right: 0.1rem;
  color: #fff100;
  letter-spacing: 0.5rem;
}

.exchange .input_wrap .group {
  flex: 1;
}

.exchange .input_wrap .group .exchange_item {
  width: 100%;
  height: 100%;
  padding: 0.6rem 1rem 0.6rem 1rem;
  text-align: center;
  border: 1px solid #FFF;
  background: transparent;
  color: #FFF;
  font-size: 1.65rem;
  appearance: none;
  outline: none;
  letter-spacing: 0.5rem;
}

.exchange .input_wrap .group .exchange_item::placeholder {
  color: #ffffff81;
  font-weight: 300;
}

.exchange .input_wrap .group .exchange_item:focus::placeholder {
  color: transparent;
}

.exchange input[type="number"]::-webkit-outer-spin-button,
.exchange input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.exchange input.exchange_item[type="number"] {
  -moz-appearance: textfield;
}

.exchange .prize:nth-of-type(2) .exchange_item {
  background: url(/images/exchange_award.png);
  background-repeat: no-repeat;
  background-position: right 3.4rem center;
  padding-right: 2.2rem;
}

.exchange .prize:nth-of-type(2) .exchange_item:disabled {
  background-color: #dcdcdc;
  color: #AAA;
}

.exchange .prize:nth-of-type(2) .exchange_item option {
  color: #000;
  font-weight: 700;
}

.exchange .confirm_page .prize:nth-of-type(2) {
  margin-top: 1.8rem;
}

.exchange .confirm_page .subtitle {
  width: 7.5%;
  font-size: 2.59rem;
  font-weight: 700;
  writing-mode: vertical-lr;
  margin: 1.5rem 0.7rem 1.5rem 0;
}

.exchange .confirm_page .prize:nth-of-type(2) .subtitle {
  margin-top: 0;
  margin-bottom: 0;
}

.exchange .confirm-table {
  width: 81%;
  margin: 1.6rem 0 1.3rem 0;
  font-weight: 500;
  align-self: flex-start;
}

.exchange .confirm-table thead {
  font-size: 2.12rem;
  background: #a03333;
  color: #FFF;
}

.exchange .confirm-table tbody {
  color: #FFF;
  font-weight: 500;
  font-size: 1.75rem;
  letter-spacing: 0.1rem;
}

.exchange .confirm-table tbody .lottery-tag {
  color: #FFF !important;
  background: #ff2f37;
  padding: 0 0.5rem;
  font-weight: 500;
  font-size: 1.75rem;
  letter-spacing: 0.2rem;
  margin: 0;
}

.exchange .confirm-table tbody span {
  color: #ffff00;
  margin-left: 1rem;
}

.exchange .confirm-table tbody span+span {
  color: #FFF;
  margin-left: 1rem;
}

.exchange .confirm-table thead tr {
  width: 100%;
}

.exchange .confirm-table thead th {
  padding-left: 0.7rem;
}

.exchange .confirm-table tbody td,
.exchange .confirm-table tfoot td {
  padding: 0rem 0.5rem;
}

.exchange .confirm-table tfoot td {
  font-size: 1.75rem;
  color: #ffff00;
}

.exchange .confirm-table thead th,
.exchange .confirm-table tbody td {
  text-align: left;
}

.exchange .confirm-table thead th:nth-of-type(1) {
  width: 73.5%;
}

.exchange .confirm-table thead th:nth-of-type(2),
.exchange .confirm-table tbody td:nth-of-type(2),
.exchange .confirm-table tfoot td:nth-of-type(2) {
  text-align: center;
  width: 10%;
}

.exchange .confirm-table thead th:nth-of-type(3),
.exchange .confirm-table tbody td:nth-of-type(3),
.exchange .confirm-table tfoot td:nth-of-type(2) {
  text-align: center;
  width: 16.5%;

}

.exchange .confirm-table thead tr,
.exchange .confirm-table tbody tr,
.exchange .confirm-table tfoot tr,
.exchange .send-form label,
.exchange .send-form input {
  border: 1px solid #FFF;
  line-height: 3.2rem;
}

.exchange .send-form {
  width: 81%;
}

.exchange .form-group {
  display: flex;
}

.exchange .form-group label {
  display: inline-block;
  min-width: 9.4rem;
  font-size: 1.66rem;
  color: #FFF;
  text-align-last: justify;
  font-weight: 400;
  padding: 0rem 1rem;
}

.exchange .form-group input {
  width: 100%;
  font-size: 1.66rem;
  background-color: transparent;
  text-align: center;
  letter-spacing: 0.3rem;
  color: #FFF;
}

.send-form .form-group input:-webkit-autofill,
.send-form .form-group input:-webkit-autofill:hover,
.send-form .form-group input:-webkit-autofill:focus {
  -webkit-text-fill-color: #FFFFFF;
  transition: background-color 5000s ease-in-out 0s;
}

.exchange .form-group+.form-group {
  padding-top: 1.8rem;
}

.exchange .agree {
  width: 50%;
  cursor: pointer;
  font-size: 1.38rem;
  font-weight: 300;
  margin: 2.15rem auto 0 auto;
  color: #FFF;
}

.exchange .agree .text {
  color: #FFF;
  display: flex;
  align-items: center;
  letter-spacing: 0.25rem;
  text-indent: 0.25rem;
  margin-top: -0.2rem;
}

.exchange .agree a {
  color: #FFF;
  display: inline-flex;
  align-items: center;
  vertical-align: top;
}

.exchange .agree a span {
  position: relative;
  color: #fff100;
}

.exchange .agree a span::after {
  position: absolute;
  content: ' ';
  display: block;
  bottom: -0.5rem;
  width: 100%;
  height: 1px;
  background-color: #fff100;
}

.exchange label {
  display: flex;
  justify-content: center;
  align-items: center;
}

.exchange input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

.exchange input:focus {
  outline: none;
}

.exchange .agree .agree-checkbox {
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 2.9px;
  margin-right: 1rem;
  position: relative;
  background-color: #FFF;
  flex-shrink: 0;
}

.exchange .agree .agree-checkbox:checked {
  background-color: #d90514;
}

.exchange .agree .txet {
  letter-spacing: 0.3rem;
  text-indent: 0.3rem;
  margin-top: -0.2rem;
}


.exchange input[type="checkbox"]:checked::after {
  content: '';
  position: absolute;
  left: 0.8rem;
  top: -0.5rem;
  width: 0.7rem;
  height: 1.6rem;
  border: solid #fff100;
  border-width: 0 2.5px 2.5px 0;
  transform: rotate(45deg);
}

.exchange .confirm_page .form-actions a {
  margin: 0 9rem;
}

.exchange .exchange_page .send.btns,
.exchange .confirm_page .form-actions.btns {
  width: 100%;
  height: auto;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media (max-width: 1024px) {
  .exchange .general-content {
    margin-top: 0;
    height: auto;
  }

  .exchange .prize {
    flex-direction: column;
  }

  .exchange .exchange_page .prize:nth-of-type(1),
  .exchange .exchange_page .prize:nth-of-type(2) {
    height: auto;
  }

  .exchange .exchange_page .prize::after,
  .exchange .confirm_page .prize:nth-of-type(1)::after {
    display: none;
  }

  .exchange .prize .subtitle {
    width: 100%;
  }

  .exchange .confirm_page .prize:nth-of-type(1) .subtitle {
    min-height: auto;
    color: #FFF;
    background: #f10101;
    margin: 0;
  }

  .exchange .confirm_page .prize:nth-of-type(2) .subtitle {
    margin: 0;
  }

  .exchange .prize .subtitle span {
    writing-mode: horizontal-tb;
    letter-spacing: 1rem;
    text-indent: 1rem;
    margin: 0.5rem 0;
    font-size: 2.5rem;
  }

  .exchange .general-content .page {
    max-width: none;
    width: 84.5%;
    margin: 3rem auto 0 auto;
  }

  .exchange .prize .input_group {
    flex: 1;
    padding: 2.1rem 0;
  }

  .exchange .input_wrap .gift_name {
    width: 50%;
  }

  .exchange .input_wrap .gift_name span {
    font-size: 2.2rem;
  }

  .exchange .input_wrap .gift_name .low-stock-hint,
  .exchange .input_wrap .gift_name .out-of-stock-hint {
    font-size: 1.2rem;
    margin: 0.8rem 0 -0.8rem 0;
  }

  .exchange .input_wrap .gift_name .low-stock-hint {
    width: 47%;
    letter-spacing: 0.1rem;
    text-indent: 0.1rem;
    text-align: left;
  }

  .exchange .prize:nth-of-type(1) .input_wrap .gift_point {
    width: 6rem;
    margin-left: 6rem;
  }

  .exchange .exchange_page .prize:nth-of-type(2) .input_wrap {
    height: auto;
    padding: 1.2rem 0;
  }

  .exchange .prize:nth-of-type(2) .input_wrap .gift_point span {
    margin-right: 1.5rem;
  }

  .exchange .input_wrap .gift_point {
    width: 15%;
    padding: 0.5rem 1rem;
    margin-right: 3rem;
    font-weight: 500;
  }

  .exchange .input_wrap .group {
    text-align: end;
  }

  .exchange .input_wrap .group .exchange_item {
    width: 85%;
    font-size: 2.1rem;
    letter-spacing: 0.5rem;
  }

  .exchange .confirm-table {
    width: 100%;
    margin: 1rem 0;
  }

  .exchange .confirm-table thead {
    font-size: 2.4rem;
    background: none;
  }

  .exchange .confirm-table tbody {
    font-size: 1.9rem;
    letter-spacing: 0.1rem;
  }

  .exchange .confirm-table tbody .lottery-tag {
    padding: 0 0.8rem;
    font-size: 1.9rem;
  }

  .exchange .confirm-table thead th {
    padding: 1.25rem 0.7rem;
  }

  .exchange .confirm-table tbody td,
  .exchange .confirm-table tfoot td {
    padding: 0.26rem 0.5rem;
  }

  .exchange .confirm-table tfoot td {
    font-size: 1.9rem;
  }

  .exchange .confirm-table thead tr,
  .exchange .confirm-table tbody tr,
  .exchange .confirm-table tfoot tr,
  .exchange .send-form label {
    border: none;
  }

  .exchange .confirm-table thead tr,
  .exchange .confirm-table tbody tr {
    border-bottom: 1px solid #FFF;
  }

  .exchange .send-form {
    width: 100%;
    margin-top: 3rem;
  }

  .exchange .form-group label {
    min-width: 16rem;
    font-size: 2.5rem;
    padding: 0.9rem 2.5rem 0.9rem 0;
  }

  .exchange .form-group input {
    font-size: 2.3rem;
    letter-spacing: 0.1rem;
  }

  .exchange .form-group+.form-group {
    padding-top: 3.5rem;
  }

  .exchange .agree {
    width: 50%;
    font-size: 1.5rem;
    margin: 3.5rem auto 0 auto;
  }

  .exchange .agree a span {
    color: #ffde00;
  }

  .exchange .agree a span::after {
    background-color: #ffde00;
  }

  .exchange .agree .agree-checkbox {
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 0;
    margin-right: 1rem;
  }

  .exchange .agree .agree-checkbox:checked {
    background-color: #FFF;
  }

  .exchange input[type="checkbox"]:checked::after {
    left: 0.5rem;
    top: -0.7rem;
    border: solid #ff0008;
    border-width: 0 3.5px 3.5px 0;
  }

  .exchange .exchange_page .prize:nth-of-type(2) .input_group {
    padding-top: 0;
  }

  /* 按鈕區域 */
  .exchange .exchange_page .send.btns,
  .exchange .confirm_page .form-actions.btns {
    position: relative;
  }

  .exchange .send.btns {
    margin-top: 3.5rem;
  }

  .exchange .send.btns a {
    letter-spacing: 2rem;
    text-indent: 2rem;
    width: 14rem;
    font-size: 2.2rem;
    font-weight: 400;
  }

  .exchange .confirm_page .form-actions a {
    margin: 0 2rem;
    width: 17rem;
    font-size: 2.2rem;
    font-weight: 400;
    letter-spacing: 0.3rem;
    text-indent: 0.3rem;
  }

}

@media (max-width: 640px) {
  .exchange .general {
    padding-top: 2.5rem;
  }

  .exchange .general-content .page {
    width: 100%;
    margin: 1.5rem auto 0 auto;
  }

  .exchange .input_wrap .gift_name {
    padding-left: 0;
    width: 55%;
  }

  .exchange .input_wrap .gift_name span {
    font-size: 2rem;
  }

  .exchange .input_wrap .gift_name .low-stock-hint {
    width: 54%;
  }

  .exchange .prize:nth-of-type(1) .input_wrap .gift_point {
    margin-left: 2.5rem;
  }

  .exchange .prize:nth-of-type(2) .input_wrap .gift_point span {
    margin-right: 1rem;
  }

  .exchange .input_wrap .gift_point {
    font-size: 2rem;
    margin-right: 0;
  }

  .exchange .input_wrap .group .exchange_item {
    font-size: 2rem;
    width: 94%;
    letter-spacing: 0.1rem;
  }

  .exchange .prize:nth-of-type(2) .exchange_item {
    background-position: right 1.5rem center;
    padding-right: 1.2rem;
  }

  .exchange .input_wrap .group .exchange_item::placeholder {
    letter-spacing: 0.1rem;
  }

  .exchange .prize:nth-of-type(2) .exchange_item option {
    font-weight: 500;
  }

  .exchange .confirm-table thead {
    font-size: 2.3rem;
  }

  .exchange .confirm-table thead th:nth-of-type(2),
  .exchange .confirm-table tbody td:nth-of-type(2),
  .exchange .confirm-table tfoot td:nth-of-type(2) {
    width: 9%;
  }

  .exchange .confirm-table thead th:nth-of-type(3),
  .exchange .confirm-table tbody td:nth-of-type(3),
  .exchange .confirm-table tfoot td:nth-of-type(2) {
    width: 9%;
  }

  .exchange .confirm-table thead th {
    padding: 1.25rem 0rem;
  }

  .exchange .confirm-table tbody td,
  .exchange .confirm-table tfoot td {
    padding: 0.6rem 0.6rem;
  }

  .exchange .confirm-table thead th:nth-of-type(1),
  .exchange .confirm-table tbody tr:nth-of-type(1) {
    padding-left: 1rem;
    letter-spacing: 0;
  }

  .exchange .confirm_page .confirm-table th span {
    display: none;
  }

  .exchange .confirm-table tbody .lottery-tag {
    letter-spacing: 0;
    padding: 0 0.5rem;
    margin-left: 0.1rem;
  }

  .exchange .form-group {
    align-items: center;
  }

  .exchange .send-form {
    margin-top: 2rem;
  }

  .exchange .form-group label {
    min-width: auto;
    width: 12%;
    padding: 0.9rem 0.5rem 0.9rem 0;
    text-align-last: left;
  }

  .exchange .form-group input {
    height: 3.5rem;
  }

  .exchange .form-group+.form-group {
    padding-top: 1.2rem;
  }

  .exchange .form-group:nth-of-type(3) {
    margin-top: -1.5rem;
  }

  .exchange .form-group:nth-of-type(4) {
    margin-top: -2.5rem;
  }

  .exchange .agree {
    width: 70%;
    margin: 1.5rem auto 0 auto;
  }

  .exchange .agree .txet {
    margin-top: -0.1rem;
  }

}