#wrap {margin: 0 auto; background: #f8f9fe; margin-bottom: 5.4rem;}
.inner {padding: 0 2rem;}
:root {
  --main-color: #336df3;
}
/* HEADER */
header {padding: 1.8rem 0; text-align: center; background: #fff;}
header a {display: inline-block;}
header a img {width: 17rem;}

/* section1 */
.section1 {padding: 3.8rem 0;}
.section1 .title_wrap {text-align: center; margin-bottom: 2rem;}
.section1 .title_wrap span {display: block; font-size: 1.9rem; font-weight: 600; margin-bottom: .8rem;}
.section1 .title_wrap h2 {font-size: 3.3rem; font-weight: 700; line-height: 1.2; letter-spacing: -.2rem; color: #000; margin-bottom: 1.3rem;}
.section1 .title_wrap h2 b {color: #336df3;}
.section1 .title_wrap p {font-size: 1.1rem; color: #ccc; margin-bottom: 1.3rem;}
.section1 .title_wrap img {width: 16rem;}

/* FORM */
.form_wrap {background: #fff; padding: 2.2rem 2rem; border-radius: 1rem; box-shadow: rgba(99, 99, 99, 0.15) 0px 2px 8px 0px;}
.form_wrap h2 {font-size: 2rem; line-height: 1.3; font-weight: 600; margin: 1rem 0 3rem;}
.form_wrap ul {display: flex; flex-direction: column; gap: 2.5rem;}
.form_wrap ul li .title_label {font-size: 1.5rem; font-weight: 600; margin-bottom: 1rem; display: block; color: #333;}
.form_wrap ul li .name_wrap {display: flex; gap: .6rem;}
.form_wrap ul li .name_wrap .gender_wrap {display: flex; gap: .6rem;}
.form_wrap ul li .name_wrap .gender_wrap input[type="radio"] {display: none;}
.form_wrap ul li .name_wrap .gender_wrap label {width: 4.6rem; height: 4.6rem; display: flex; align-items: center; justify-content: center; border: 1px solid #ddd; font-size: 1.5rem; border-radius: .7rem; color: #888; font-weight: 500;}
.form_wrap ul li .name_wrap .gender_wrap input[type="radio"]:checked + label {border: 1px solid #336df3; color: #336df3; font-weight: 600; background: #ebefff;}
.form_wrap ul li input[type="text"],
.form_wrap ul li input[type="tel"], .form_wrap ul li select {border: 1px solid #ddd; height: 4.6rem; padding: 0 1.5rem; font-size: 1.5rem; width: 100%; border-radius: .7rem; outline: none; font-weight: 500;}

.form_wrap ul li select { background: url(../img/arrow-2.png) no-repeat center right 1.5rem / 1.5rem; outline: none;}
.form_wrap ul li select option { font-size: 1.4rem;}
main #dbFrm .input > select.selected { color: #333;}
main #dbFrm .input > select.selected option { color: #333;}
.form_wrap .privacy_wrap {margin-top: 2rem;}
.form_wrap .privacy_wrap .all_agree {display: flex; align-items: center; gap: .7rem; position: relative;}
.form_wrap .privacy_wrap .all_agree input[type="checkbox"] {position: absolute; top: 0; left: 0; width: 2rem; height: 2rem; position: absolute; left: 0; opacity: 0; z-index: 9;}
.form_wrap .privacy_wrap .all_agree i {display: block; width: 2rem; height: 2rem; background: #ddd; border-radius: .5rem; position: relative;}
.form_wrap .privacy_wrap .all_agree i::after {content: ""; display: block; width: .5rem; height: .9rem; border: solid #fff; border-width: 0 .3rem .3rem 0; transform: rotate(45deg); position: absolute; top: .2rem; left: .6rem;}
.form_wrap .privacy_wrap .all_agree input[type="checkbox"]:checked + i {background: #336df3;}
.form_wrap .privacy_wrap .all_agree label {font-size: 1.5rem; font-weight: 500; transform: translateY(-.2rem);}

.form_wrap .privacy_wrap .privacy_agree {display: flex; flex-direction: column; gap: 1.3rem; background: #f6f6f6; padding: 1.8rem 1.5rem; border-radius: .7rem; margin-top: 1rem;}
.form_wrap .privacy_wrap .privacy_agree .privacy_box {display: flex; align-items: center; gap: 1.2rem; position: relative;}
.form_wrap .privacy_wrap .privacy_agree .privacy_box input[type="checkbox"] {width: 1.2rem; height: 1.2rem; position: absolute; top: 0; left: 0; opacity: 0; z-index: 9;}
.form_wrap .privacy_wrap .privacy_agree .privacy_box i {display: block; width: .7rem; height: 1.1rem; border: solid #c9c9c9; border-width: 0 .2rem .2rem 0; transform: rotate(45deg) translateY(-.15rem);}
.form_wrap .privacy_wrap .privacy_agree .privacy_box input[type="checkbox"]:checked + i {border: solid #444; border-width: 0 .2rem .2rem 0;}
.form_wrap .privacy_wrap .privacy_agree .privacy_box label {font-size: 1.3rem; font-weight: 500; color: #222;}
.form_wrap .privacy_wrap .privacy_agree .privacy_box button {display: block; margin-left: auto; font-size: 1.3rem; color: #444;}
.form_wrap .btn_submit {display: block; width: 100%; background: #336df3; color: #fff; font-size: 1.7rem; font-weight: 500; text-align: center; padding: 1.7rem 0; border-radius: .7rem; margin-top: 2.5rem;}

/* section2 */
.section2 {padding-bottom: 3.8rem;}
.section2 .title_wrap {text-align: center; margin-bottom: 1.5rem;}
.section2 .title_wrap h2 {font-size: 3rem; font-weight: 700; line-height: 1.2; letter-spacing: -.2rem; color: #000; margin-bottom: 1.5rem;}
.section2 .title_wrap span {display: block; font-size: 1.9rem; font-weight: 500; margin-bottom: 1.2rem; line-height: 1.3; color: #336df3;}
.section2 .title_wrap p {font-size: 1.1rem; color: #ccc; margin-bottom: 1.8rem;}
.section2 .title_wrap img {width: 18rem;}

.section2 .info_wrap {background: #fff; padding: 2.8rem 2rem; border-radius: 1rem; border: 1px solid #e9e9e9; text-align: center; margin-bottom: 2rem;}
.section2 .info_wrap img {width: 3.2rem;}
.section2 .info_wrap h4 {font-size: 1.7rem; font-weight: 500; color: #333; margin: 1rem 0 2rem;}
.section2 .info_wrap p {font-size: 1.4rem; line-height: 1.4; color: #666;}

.section2 .method_wrap {background: #fff; padding: 3.8rem 2rem; border-radius: 1rem; box-shadow: rgba(99, 99, 99, 0.15) 0px 2px 8px 0px; overflow: hidden;}
.section2 .method_wrap .title_box {text-align: center; margin-bottom: 2.8rem;}
.section2 .method_wrap .title_box span {display: block; font-size: 1.8rem; font-weight: 500; color: #336df3; margin-bottom: 1.2rem;}
.section2 .method_wrap .title_box h4 {font-size: 2.8rem; font-weight: 600; line-height: 1.3; letter-spacing: -.2rem;}
.section2 .method_wrap .swiper_wrap ul {display: flex;}
.section2 .method_wrap .swiper_wrap ul li {display: flex; align-items: center; justify-content: space-between; gap: 2.8rem; padding: 3.2rem 1.6rem 1.8rem; position: relative; border-radius: .7rem; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 4px; background: #fff; width: 15rem;}
.section2 .method_wrap .swiper_wrap ul li span {position: absolute; top: 0; left: 0; background: #e5f2ff; color: #3f9cff; font-size: 1.1rem; padding: .4rem 1.2rem; font-weight: 500; border-radius: 0 0 .7rem 0;}
.section2 .method_wrap .swiper_wrap ul li p {font-size: 1.2rem; font-weight: 600; line-height: 1.2; white-space: nowrap;}
.section2 .method_wrap .swiper_wrap ul li img {width: 2.4rem;}
.section2 .method_wrap button {display: block; width: 100%; background: #336df3; color: #fff; font-size: 1.7rem; font-weight: 500; text-align: center; padding: 1.7rem 0; border-radius: .7rem; margin-top: 2.5rem;}

/* section3 */
.section3 {text-align: center;}
.section3 h2 {font-size: 2.8rem; font-weight: 700; line-height: 1.2; letter-spacing: -.2rem; color: #000; margin-bottom: 1.5rem; margin-bottom: 3rem;}
.section3 h2 b {color: #336df3;}
.section3 img {width: 100%;}

/* section4 */
.section4 {padding: 2rem 0 4rem;}

/* section5 */
.section5 {background: #fff; padding: 3rem 0;}
.section5 h5 {font-size: 1.3rem; font-weight: 600; margin-bottom: 1rem; color: #333;}
.section5 p {font-size: 1.1rem; line-height: 1.8; color: #666;}

/* FOOTER */
footer {background: #e5e5e5; padding: 1.8rem 0;}
footer p {font-size: 1.1rem; line-height: 1.5; margin-bottom: 1.5rem; color: #333;}
footer button {font-size: 1.2rem; font-weight: 600; color: #333;}

.floating_btn {display: block; width: 100%; position: fixed; bottom: 0; left: 0; background: #336df3; color: #fff; padding: 1.8rem 0; font-size: 1.8rem; font-weight: 500; z-index: 99;}