:root {
  --main-color: #e3007f;
}
.inner {width: 1200px; margin: 0 auto;}
br.mo {display: none;}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  transition: background-color 5000s ease-in-out 0s;
  -webkit-transition: background-color 9999s ease-out;
  -webkit-box-shadow: 0 0 0px 1000px white inset !important;
  -webkit-text-fill-color: #111 !important;
}

header {background: #fff; padding: 30px 0;}
header a {display: flex; align-items: center; gap: 15px; width: fit-content;}
header a img {width: 142px;}
header a p {font-size: 17px; font-weight: 600; letter-spacing: -1px; color: #666;}

/* section1 */
.section1 {background: #fff3f7; padding: 40px 0 70px;}
.section1 .gnb_wrap {border-radius: 15px; overflow: hidden; box-shadow: rgba(100, 100, 111, 0.15) 0px 7px 29px 0px; margin-bottom: 65px;}
.section1 .gnb_wrap ul {display: flex;}
.section1 .gnb_wrap ul li {width: calc(100% / 5); background: #fff;}
.section1 .gnb_wrap ul li a {display: flex; flex-direction: column; justify-content: center; align-items: center; background: #fff; height: 120px; gap: 12px; font-size: 20px; font-weight: 500; letter-spacing: -1px; color: #666;}
.section1 .gnb_wrap ul li.active a {border: 1px solid #e3007f; border-radius: 15px; background: #fff8fc;}

.section1 .main_wrap {display: flex; align-items: center; justify-content: space-between;}
.section1 .main_wrap .title_wrap h2 {font-size: 62px; font-weight: 600; letter-spacing: -4px; line-height: 1.3; color: #1f2021; margin-bottom: 8px;}
.section1 .main_wrap .title_wrap p {font-size: 29px; letter-spacing: -1px; line-height: 1.45; color: #777; margin-bottom: 40px;}
.section1 .main_wrap .form_wrap {background: #fff; padding: 40px 50px; width: 540px; border-radius: 20px; box-shadow: rgba(100, 100, 111, 0.1) 0px 7px 29px 0px;}
.section1 .main_wrap .form_wrap h3 {text-align: center; font-size: 25px; font-weight: 700; letter-spacing: -1px; color: #2b2f49; margin-bottom: 50px;}
.section1 .main_wrap .form_wrap ul {display: flex; flex-direction: column; gap: 20px;}
.section1 .main_wrap .form_wrap ul li {display: flex; align-items: center; gap: 10px;}
.section1 .main_wrap .form_wrap ul li input[type="text"],
.section1 .main_wrap .form_wrap ul li input[type="tel"],
.section1 .main_wrap .form_wrap ul li select {border: 1px solid #ccc; border-radius: 10px; padding: 0 25px; height: 62px; width: 100%; color: #111; font-weight: 500; letter-spacing: -1px; font-size: 20px; outline: none;}
.section1 .main_wrap .form_wrap ul li .gender_wrap {display: flex; align-items: center; gap: 10px;}
.section1 .main_wrap .form_wrap ul li .gender_wrap input[type="radio"] {display: none;}
.section1 .main_wrap .form_wrap ul li .gender_wrap label {display: flex; align-items: center; justify-content: center; width: 60px; height: 60px; border: 1px solid #ccc; border-radius: 10px; font-size: 20px; font-weight: 500; color: #999; cursor: pointer;}
.section1 .main_wrap .form_wrap ul li .gender_wrap input[type="radio"]:checked + label {background: #e3007f; border: 1px solid #e3007f; color: #fff; font-weight: 600;}
.section1 .main_wrap .form_wrap ul li.tel_wrap select {width: 160px; appearance: none; background: #fff url("../img/arrow.png") no-repeat calc(100% - 10px) 50%;}
.section1 .main_wrap .form_wrap .privacy_wrap {display: flex; align-items: center; gap: 5px; margin: 24px 0; position: relative;}
.section1 .main_wrap .form_wrap .privacy_wrap input[type="checkbox"] {width: 24px; height: 24px; margin: 0; position: absolute; left: 0; opacity: 0; cursor: pointer; z-index: 5;}
.section1 .main_wrap .form_wrap .privacy_wrap i {display: block; width: 24px; height: 24px; border: 1px solid #bbb; border-radius: 5px; position: relative; margin-right: 5px;}
.section1 .main_wrap .form_wrap .privacy_wrap i::before {content: ""; position: absolute; top: 3px; left: 7px; width: 5px; height: 10px; border: solid #ccc; border-width: 0 3px 3px 0; transform: rotate(45deg);}
.section1 .main_wrap .form_wrap .privacy_wrap input[type="checkbox"]:checked + i {background: #e3007f; border: 1px solid #e3007f;}
.section1 .main_wrap .form_wrap .privacy_wrap input[type="checkbox"]:checked + i::before {border: solid #fff; border-width: 0 3px 3px 0;}
.section1 .main_wrap .form_wrap .privacy_wrap label {font-size: 20px; font-weight: 500; letter-spacing: -1px; color: #777; cursor: pointer;}
.section1 .main_wrap .form_wrap .privacy_wrap button {font-size: 20px; font-weight: 500; letter-spacing: -1px; color: #444;}
.section1 .main_wrap .form_wrap .btn_submit {background: #e3007f; padding: 25px 0; text-align: center; width: 100%; display: block; color: #fff; font-size: 25px; font-weight: 500; letter-spacing: -1px; border-radius: 10px; margin-top: 30px;}


/* section2 */
.section2 {padding: 80px 0;}
.section2 .product_wrap {margin-bottom: 85px;}
.section2 .product_wrap .title_wrap {margin-bottom: 30px;}
.section2 .product_wrap .title_wrap img {width: 140px; margin-bottom: 12px;}
.section2 .product_wrap .title_wrap h4 {font-size: 32px; font-weight: 600; letter-spacing: -1px; color: #1c1c1c;}
.section2 .product_wrap .contents_wrap {border: 1px solid #ddd; padding: 35px 30px; border-radius: 10px;}
.section2 .product_wrap .contents_wrap ul {display: flex; flex-direction: column; gap: 20px;}
.section2 .product_wrap .contents_wrap ul li {display: flex; align-items: flex-start; gap: 10px;}
.section2 .product_wrap .contents_wrap ul li img {padding-top: 6px;}
.section2 .product_wrap .contents_wrap ul li p {font-size: 22px; font-weight: 500; letter-spacing: -1px; color: #777; line-height: 1.5;}
.section2 .product_wrap .contents_wrap ul li p b {background: #ffebf3; font-weight: 600; color: #444;}

.section2 .info_wrap h3 {font-size: 41px; font-weight: 600; letter-spacing: -2px; color: #1c1c1c; margin-bottom: 40px;}
.section2 .info_wrap ul {display: flex;}
.section2 .info_wrap ul li {width: 100%; padding: 20px 30px;}
.section2 .info_wrap ul li:not(:last-child) {border-right: 1px solid #ddd;}
.section2 .info_wrap ul li h6 {font-size: 26px; letter-spacing: -1px; font-weight: 500; margin-bottom: 10px; margin-top: 32px;}
.section2 .info_wrap ul li p {font-size: 18px; font-weight: 500; letter-spacing: -1px; color: #888; line-height: 1.45;}

/* section3 */
.section3 {padding: 105px 0 120px; background: #f4f6f9;}
.section3 h3 {font-size: 40px; font-weight: 600; letter-spacing: -1px; color: #1c1c1c; margin-bottom: 40px;}
.section3 ul {display: flex; align-items: center; justify-content: space-between; gap: 20px;}
.section3 ul li {width: 100%; background: #fff; border: 1px solid #ccc; border-radius: 15px; padding: 35px 0; text-align: center;}
.section3 ul li img {margin-bottom: 30px;}
.section3 ul li h6 {font-size: 26px; font-weight: 600; letter-spacing: -1px; color: #333; margin-bottom: 12px;}
.section3 ul li p {font-size: 22px; font-weight: 500; letter-spacing: -1px; line-height: 1.45; color: #777;}


/* bottom_form_wrap */
.bottom_form_wrap {padding: 60px 0;}
.bottom_form_wrap ul {display: flex; gap: 25px;}
.bottom_form_wrap ul li {display: flex; flex-direction: column; gap: 15px; width: 100%;}
.bottom_form_wrap ul li.name_wrap {width: 80%;}
.bottom_form_wrap ul li.birth_wrap {width: 70%;}
.bottom_form_wrap ul li .title_label {font-size: 22px; font-weight: 600; letter-spacing: -1px; color: #333;}
.bottom_form_wrap ul li .input_wrap {display: flex; align-items: center; gap: 10px;}
.bottom_form_wrap ul li input[type="text"],
.bottom_form_wrap ul li input[type="tel"],
.bottom_form_wrap ul li select {height: 52px; width: 100%; border: 1px solid #ccc; font-size: 20px; font-weight: 500; letter-spacing: -1px; border-radius: 10px; padding: 0 22px; outline: none;}
.bottom_form_wrap ul li .gender_wrap {display: flex; align-items: center; gap: 10px;}
.bottom_form_wrap ul li .gender_wrap input[type="radio"] {display: none;}
.bottom_form_wrap ul li .gender_wrap label {width: 50px; height: 50px; font-size: 20px; font-weight: 500; color: #777; border: 1px solid #ccc; display: flex; align-items: center; justify-content: center; border-radius: 10px; cursor: pointer;}
.bottom_form_wrap ul li .gender_wrap input[type="radio"]:checked + label {background: #e3007f; border: 1px solid #e3007f; color: #fff; font-weight: 600;}
.bottom_form_wrap ul li .input_wrap select {width: 180px; appearance: none; background: url("../img/arrow.png") no-repeat calc(100% - 10px) 50%;}
.bottom_form_wrap .privacy_wrap {display: flex; align-items: center; margin: 50px auto 0; gap: 5px; position: relative; width: fit-content;}
.bottom_form_wrap .privacy_wrap input[type="checkbox"] {width: 22px; height: 22px; margin: 0; position: absolute; left: 0; opacity: 0; cursor: pointer; z-index: 5;}
.bottom_form_wrap .privacy_wrap i {width: 22px; height: 22px; display: block; border: 1px solid #bbb; border-radius: 5px; position: relative;}
.bottom_form_wrap .privacy_wrap i::before {content: ""; width: 5px; height: 10px; border: solid #ccc; border-width: 0 3px 3px 0; position: absolute; top: 2px; left: 6px; transform: rotate(45deg);}
.bottom_form_wrap .privacy_wrap label {font-size: 21px; font-weight: 500; letter-spacing: -1px; color: #999; margin-left: 3px; cursor: pointer;}
.bottom_form_wrap .privacy_wrap input[type="checkbox"]:checked + i {background: #e3007f; border: 1px solid #e3007f;}
.bottom_form_wrap .privacy_wrap input[type="checkbox"]:checked + i::before {border: solid #fff; border-width: 0 3px 3px 0;}
.bottom_form_wrap .privacy_wrap button {font-size: 21px; font-weight: 500; letter-spacing: -1px; color: #444;}
.bottom_form_wrap .btn_submit {background: #e3007f; padding: 24px 105px; border-radius: 5px; margin: 0 auto; display: block; font-size: 25px; font-weight: 500; color: #fff; letter-spacing: -1px; margin-top: 40px;}

.section4 {background: #333; padding: 60px 0;}
.section4 h2 {color: #fff; font-size: 28px; font-weight: 600; letter-spacing: -1px; margin-bottom: 30px;}
.section4 ul li {color: #999; font-size: 17px; line-height: 2; letter-spacing: -1px;}

footer {padding: 40px 0;}
footer p {font-size: 14px; letter-spacing: -.5px; line-height: 1.5; color: #111;}
footer p:not(:last-child) {margin-bottom: 10px;}
footer button {font-size: 14px; font-weight: 600; cursor: pointer; display: inline-block;}