@import url(reset.css);

.container {
  margin: 0 auto;
  width: 770px;
  max-width: 100vw;
  min-width: 250px;
  word-wrap: break-word;
  background: #fff;
}

.container img {
  width: 100%;
}

header {
  height: 40px;
  background: #4C4C4C;
  display: flex;
  align-items: center;
  padding: 0 12px;
}

.header-logo {
  max-width: 100px;
}

h1 {
  font-size: 20px;
  line-height: 40px;
  border-bottom: 0.5px solid #797979;
  margin: 10px 12px;
}

h2 {
  font-size: 18px;
  line-height: 20px;
}

form {
  padding: 0 12px;
}

h2::before {
  content: '';
  background-color: #4C4C4C;
  display: inline-block;
  width: 3px;
  height: 14px;
  line-height: 20px;
  vertical-align: middle;
  margin-right: 6px;
}

.required-line {
  color: #797979;
  font-size: 12px;
  float: right;
}

.required {
  color: #B52842;
  padding-left: 2px;
}

.content {
  font-size: 14px;
  margin-bottom: 40px;
}

/***** 신청상품 *****/
.applyProduct p {
  color: #797979;
}

.applyProduct .product-options {
  display: flex;
  column-gap: 20px;
  row-gap: 10px;
  flex-wrap: wrap;
}

.applyProduct input[type="checkbox"]+label {
  cursor: pointer;
  padding-left: 20px;
  background: url("./img/icon_checkbox.png") left center no-repeat;
}

.applyProduct input[type="checkbox"]:checked+label {
  background: url("./img/icon_checkbox_checked.png") left center no-repeat;
}


/***** 신청자 정보 *****/
.applicant,
.privacy {
  margin-bottom: 20px;
}

.applicant label,
.privacy {
  display: block;
  font-weight: 600;
  padding-bottom: 10px;
}

.applicant input[type="text"],
.applicant textarea {
  width: 100%;
  padding: 8px 5px;
  border: 1px solid transparent;
  border-bottom-color: #A5A5A5;
  margin-bottom: 20px;
}

.applicant input[type="text"]:focus {
  border-bottom-color: #353535;
}

.applicant textarea {
  height: 110px;
  border: 1px solid #A5A5A5;
  padding: 8px;
  resize: none;
  line-height: 18px;
}

.applicant textarea:focus {
  border-color: #353535;
}

.applicant>div>div {
  position: relative;
}

.applicant .find-address-btn {
  width: 50px;
  height: 20px;
  background: #4C4C4C;
  color: #F4F4F4;
  border-radius: 2px;
  font-size: 12px;
  text-align: center;
  position: absolute;
  right: 0;
  top: 33px;
}

.privacy>div {
  background: #E9E9E9;
  border-radius: 2px;
  padding: 12px;
  margin-top: 10px;
}

.privacy>div>p {
  margin: 0;
  line-height: 18px;
  word-break: keep-all;
}

.privacy input[type="checkbox"]+label {
  cursor: pointer;
  font-size: 16px;
  line-height: 20px;
  padding-left: 24px;
  background: url("./img/checkbox_before.png") left center no-repeat;
  background-size: contain;
}

.privacy input[type="checkbox"]:checked+label {
  background: url("./img/checkbox_after.png") left center no-repeat;
  background-size: contain;
}

.submit {
  text-align: center;
  margin-bottom: 20px;
}

.finalSubmit-btn {
  display: inline-block;
  font-size: 20px;
  width: 150px;
  height: 50px;
  border-radius: 50px;
  border: 1px solid #4C4C4C;
  background: #4C4C4C;
  color: #F4F4F4;
}

.cancel-btn {
  display: inline-block;
  font-size: 20px;
  width: 150px;
  height: 50px;
  border-radius: 50px;
  border: 1px solid #4C4C4C;
  background: #fff;
  color: #4C4C4C;
}





@media screen and (max-width: 1024px) {
  .container {
    width: 100vw;
  }
}

@media screen and (max-width: 768px) {
  .container {
    width: 100vw;
  }

  .header-logo {
    max-width: 100px;
  }
}

@media screen and (max-width: 375px) {
  .container {
    width: 100vw;
  }

  .header-logo {
    max-width: 100px;
  }
}