/* set */
.container {width: 1200px; margin: 0 auto;  padding-left: 0; padding-right: 0; }
.container::after, .container::before {display: none;}
h3.title {font-size: 30px; font-family: 'S-CoreDream-6Bold'; margin-top: 60px;}
#wrap_content {width: 100%; min-height: calc(100vh - 442px); padding-top: 150px;}
section {position: relative; width: 100%; padding: 80px 0 120px;}

/* ========================= main ========================= */
/* main section */
.main_section {background: #F9F9F9;}
.main_wrap.container {position: relative; padding: 128px 92px 0;}
.main_title {position: absolute; top: 0; left: 0; font-size: 50px; font-weight: 700;
    color: #36383F; letter-spacing: -3px;}
.main_title.wh {top: -128px; left: -92px; color: #fff; z-index: 1;}
.main_video {position: relative; width: 100%; overflow: hidden;}
.main_img {width: 100%;}
.main_btn_box {position: absolute; left: 50%; top: 310px; z-index: 1; cursor: pointer; transform: translateX(-50%);}
.main_btn {width: 120px; height: 120px; background: url('../../img/custom_img/icon/icon_video_btn.svg') no-repeat center/100%; cursor: pointer;}
.main_btn_box img {position: absolute; top: 50%; left: 53%; width: 33px; transform: translate(-50%, -50%); z-index: 2;}
.main_btn_box:hover .main_btn {animation: rotate 3s infinite linear;}
@keyframes rotate {
    from {
      -webkit-transform: rotate(0deg);
      -o-transform: rotate(0deg);
      transform: rotate(0deg);
    }
    to {
      -webkit-transform: rotate(360deg);
      -o-transform: rotate(360deg);
      transform: rotate(360deg);
    }
}

.main_text_box {display: flex; align-items: flex-start; justify-content: space-between;
    width: 100%; padding-top: 58px;}
.main_left {width: calc(100% - 530px);}
.main_left p {font-size: 24px; line-height: 1.4;}
.main_right {width: 530px;}
.link_btn {position: relative; display: inline-block; font-size: 18px; color: #36383F; margin-top: 42px;
    padding: 3px 90px 3px 10px; background-color: #FFC246; z-index: 1;}
.link_btn img {position: absolute; top: 50%; right: 60px; width: 16px; transform: translateY(-50%);}
.link_btn::after {content: ''; position: absolute; top: 0; left: 0; display: block; width: 0; height: 100%; background: #FFE380; z-index: -1;}
.link_btn:hover {color: #36383F;}
.link_btn:hover::after {animation: btnBg 0.6s 1 linear forwards;}
.link_btn:hover img {animation: arrow 0.6s 1 linear forwards;}

@keyframes arrow {
  from {transform: translate(0,-50%);}
  to {transform: translate(45px,-50%);}
}
@keyframes btnBg {
  from {width: 0;}
  to {width: 100%;}
}
.main_right strong {display: block; font-size: 20px; margin-bottom: 4px;}
.main_right p {font-size: 16px; color: #8C8C8C; word-break: keep-all;
    font-weight: 400; line-height: 1.5; margin-bottom: 20px;}
.main_right p:last-child {margin-bottom: 0;}
.main_right p span {color: #FFC246; font-weight: 600;}


/* work section */
.section_title {font-size: 60px; text-align: center;}
.section_title span {color: #FFC246;}
.work_list {display: flex; align-items: flex-start; margin-top: 70px;}
.work_box {display: flex; align-items: center; flex-direction: column; width: calc(100%/3); padding: 0 15px;}
.work_box img {width: 270px; margin-bottom: 12px;}
.work_box h3 {font-size: 34px; text-align: center; font-weight: 600; margin-bottom: 20px;}
.work_box p {font-size: 16px; color: #939393; font-weight: 400;
    text-align: center; line-height: 1.5; padding: 0 60px; word-break: keep-all;}


/* student section */
.student_section {background: #F9F9F9;}
.section_sub_title {font-size: 26px; text-align: center; margin-top: 22px;}
.student_list {display: flex; align-items: flex-start; margin-top: 70px; padding: 0 8%;}
.student_box {width: calc(100%/5); padding: 0 15px;}
.student_box h3 {position: relative; font-size: 26px; text-align: center; margin-bottom: 26px; padding-top: 22px;}
.student_box h3::after {content: ''; position: absolute; top: 0; left: 50%; display: block;
    width: 54px; height: 10px; background: #FFC246; transform: translateX(-50%);}
.student_box p {font-size: 16px; font-weight: 500; text-align: center; color: #939393; line-height: 1.5; word-break: keep-all;}

.student_img_box {max-width: 1200px; width: 100%; margin: 70px auto 0;}
.student_img {position: relative; width: 100%;}
.student_img img {width: 100%;}
.student_btn {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); cursor: pointer;
    width: 120px; height: 120px; background: url('../../img/custom_img/icon/icon_play_btn_yl.svg') no-repeat center/100%;}
.student_img_box p {font-size: 80px; font-weight: 900; color: #DFDFDF; text-align: center; margin-top: 100px;}
.connect_img {width: 1140px; margin: 20px auto;}


/* question section */
.question_section {width: 100%; padding-bottom: 200px;}
.question_tab_btn {display: flex; align-items: center; justify-content: center; width: 100%; margin: 70px 0 65px;}
.question_tab_btn li {display: flex; align-items: center; justify-content: center; cursor: pointer;
    width: 200px; height: 90px; font-size: 20px; text-align: center; color: #939393; border-bottom: 10px solid #F9F9F9;}
.question_tab_btn li.active {color: #FFC246; border-color: #FFC246;}

.question_area {width: 100%;}
.que_title {position: relative; width: 100%; cursor: pointer; padding: 22px 30px 22px 0; border-bottom: 2px solid #EDEDED;}
.que_title p {font-size: 20px; font-weight: 700; color: #939393;}
.que_title span {font-size: 14px; font-weight: 500; color: #939393;}
.que_title i {position: absolute; top: 50%; right: 20px; width: 18px;
    text-align: center; font-size: 30px; color: #939393; transform: translateY(-50%);}
.answer_title {display: none; width: 100%; padding: 20px 25px 80px; background: #F9F9F9; border-top: 2px solid #FFC246;}
.answer_title p {font-size: 16px; font-weight: 500; color: #36383F;}
.que_box.on .que_title {border: none;}
.que_box.on .que_title p {color: #36383F;}
.que_box.on .que_title i {color: #36383F;}
.que_box.on .answer_title {display: block; }




/* ========================= login ========================= */
.login_section {position: relative; display: flex; align-items: flex-start; padding: 68px 60px;}
.login_section * {font-family: 'Pretendard-Regular', sans-serif; letter-spacing: 0.2px;}
.login_section::after {content: ''; position: absolute; top: 0; left: 0; z-index: 2;
    width: 100%; height: 845px; background: url('../../img/custom_img/icon/icon_line.svg') no-repeat left bottom/100%;}
.login_section > img {width: 50%; min-height: 850px; object-fit: cover;}
.login_section h2 {font-family: 'Montserrat', sans-serif; text-align: left;}
.login_inner {padding: 60px 0 0 160px; z-index: 10;}
.login_title {font-size: 34px; margin-top: 20px;}
.login_title span {color: #FFC246;}
.input_row label {display: flex; width: 100%; font-size: 14px;}
.input_row input {display: block; width: 100%; height: 48px; border-bottom: 2px solid #FFC246;
    font-size: 16px; padding: 0 10px; font-weight: 400;}
.input_row input.err_input {border-color: #FF0000;}
.input_row input::placeholder {font-weight: 100; font-size: 16px; color: #C7C7C7;}
.input_row .err {display: block; font-size: 14px; font-weight: 400; color: #FF0000; margin-top: 8px;}
.login_box {display: flex; flex-direction: column; gap: 30px; width: 100%; margin-top: 65px;}
.login_btn {width: 165px; height: 45px; cursor: pointer; font-size: 16px; color: #36383F; margin-top: 20px;
    background: #FFC246; border-bottom: 2px solid #36383F;}
.link_btn.login_btn img {width: 13px;}
.register_list {display: flex; align-items: center; gap: 36px; margin-top: 200px;}
.register_list a {font-size: 15px; font-weight: 500;}



/* ========================= register ========================= */
.register_section {padding-top: 56px;}
.register_section * {font-family: 'Pretendard-Regular', sans-serif; letter-spacing: 0.2px;}
.register_section .login_title {margin-bottom: 18px;}
.register_banner {position: relative; width: 100%;}
.register_banner img {width: 100%; height: 272px; object-fit: cover;}
.register_banner .badge_img {position: absolute; bottom: -58px; right: 36px; width: 120px; object-fit: contain;}
.register_inner {margin-top: 92px;}
.register_bar {width: 100%; border-bottom: 5px solid #36383F; padding: 14px 0;}
.register_bar p {font-size: 26px; font-weight: 900;}
.register_section .login_box {flex-direction: row; flex-wrap: wrap; justify-content: space-between; gap: 78px; margin-bottom: 145px; margin-top: 35px;}
.register_section .input_row {width: 550px;}
.register_section .input_row label {gap: 5px; align-items: center;}
.register_section .input_row label i {width: 6px; height: 6px; background:  #FF0000; border-radius: 50%;}
.register_section .input_row span {display: block; font-size: 14px; color: #939393; font-weight: 300; margin-top: 6px;}
.checkbox_list {display: flex; align-items: center; gap: 42px; margin-top: 18px;}
.chkbox {display: flex; align-items: center; gap: 12px;}
.chkbox input {width: 18px; height: 18px; background: url('../../img/custom_img/icon/icon_check_off.svg') no-repeat center/contain;
    border: none; cursor: pointer;}
.chkbox input:checked {background-image: url('../../img/custom_img/icon/icon_check_on.svg');}
.chkbox label {display: block; font-size: 16px; cursor: pointer;}
.input_row.adr_row {width: 100%;}
.adr_inner {display: flex; align-items: center; justify-content: space-between; width: 100%; margin-top: 12px;}
.adr_inner * {font-weight: 400;}
.select_box {position: relative; display: flex; align-items: center; width: 350px; height: 46px; padding: 0 10px; border-bottom: 2px solid #FFC246;
    background: #F5F5F5 url('../../img/custom_img/icon/icon_select_arrow.svg') no-repeat center right 15px/15px; cursor: pointer; border-radius: none;
    -webkit-appearance: none; -moz-appearance: none; appearance: none; font-size: 16px; color: #939393;}
.select_box p {font-size: 16px; color: #939393;}
.select_list {position: absolute; left: 0; top: 46px; background: #36383F; width: 100%; max-height: 0; overflow: hidden; z-index: 20;}
.select_box.active .select_list {max-height: 165px; overflow-y: auto; z-index: 20;}
.select_option {font-size: 16px; font-weight: 400; color: #fff; padding: 0 24px; background: #36383F;}
.select_box::-webkit-scrollbar-track {background-color:#36383F;}
.select_box::-webkit-scrollbar-thumb {background-color:#707277; border-radius: 10px;}
.adr_inner .input_row {width: 350px;}
.adr_inner .input_row input {height: 46px; background: #F5F5F5;}
.register_btn_box {display: flex; align-items: center; justify-content: center; width: 100%;}
.register_btn {width: 340px; height: 48px; background: #E1E1E1; color: #939393; border-color: #939393;}
.register_btn.active {background: #FFC246; color: #36383F; border-color: #36383F;}
.term_box {width: 100%;}
.chkbox.round {justify-content: center; width: 100%;}
.chkbox.round p {display: flex; align-items: center; font-weight: 500; font-size: 20px;}
.chkbox.round p a {color: #FFC246; border-bottom: 1px solid #FFC246; font-size: 20px; font-weight: 600;}
.chkbox.round p a:last-child {margin-left: 6px;}
.chkbox.round input {width: 18px; height: 18px; border-radius: 50%; background-image: none; background-color: #EDEDED;}
.chkbox.round input:checked {background-color: #FFC246; border: 2px solid #EDEDED;}

.login_dec {display: flex; align-items: center; font-size: 14px; padding: 0 14px; margin-top: 15px; font-family: 'Montserrat', sans-serif;}
.login_dec span {display: flex; align-items: center; font-size: 14px; font-weight: 700;
    border-bottom: 1px solid #000; font-family: 'Montserrat', sans-serif;}
.login_dec i {width: 6px; height: 6px; background: #FF0000; border-radius: 50%; margin: 0 5px;}