/* ==== mob ==== */
@media screen and (max-width:767px){
body,th,td,input,select,textarea,button {font-size:12px; line-height:1.5;}
.inner {width:100%; padding:0 3%;}
.pc {display:none !important;}
.tab {display:none}
.mob {display:block !important;}
.pc_img {display:none;}
.mob_img {display:block;}

body,th,td,input,select,textarea,button {font-size:13px; line-height:20px;}

/* === Main === */
#wrap {position:relative; width:100%; max-width:1024px; min-width:auto; margin:0 auto; overflow:hidden;}

#header .inner {height:70px; position:relative;}
#header h1 {position:absolute; left:3%; top:25px; width: 250px;}
#header h1 img {width: 100%;}

.navi {position: fixed; top:0; left:0; width: 100%; height:100%; background:rgba(0,0,0,.5); z-index:999; display:none;}
.navi .navi_wrap {float: right; width: 65%; height:100%; background:#fff; display:block; position:relative; padding: 100px 3% 0;}
.navi .lnb h3 {font-size: 18px; line-height: 1; padding-bottom: 10px; width: 100%; border-bottom:1px solid #ddd; font-weight: 600; margin-top: 26px;}
.navi .lnb h3:first-child {margin-top: 0;}
.navi .lnb h3 a {color: #111; display:block; width:100%; height:100%;}
.navi .lnb .sub_navi {margin-top: 10px;}

.navi_btn {display:block; position:absolute; top:23px; right:3%; width:26px; height:23px; cursor:pointer; transition:0.3s ease-in-out; z-index:9999;}
.navi_btn span {position:absolute; left:0; display:block; width:26px; height:3px; background:#fff;  transition:0.3s ease-in-out 0.2s;}
.navi_btn span.line01 {top:0;}
.navi_btn span.line02 {top:9px;}
.navi_btn span.line03 {top:18px;}
.navi_btn.on {transform:rotate(-45deg); transition:0.3s ease-in-out 0.2s;}
.navi_btn.on span {top:50%; margin-top:-2px; transition:0.3s ease-in-out; } 


#visual_wrap .visual_text {background:none; padding: 0 4%;}
#visual_wrap .visual_text img {width: 75%;}
#visual_wrap .visual_text h2 {font-size: 30px; line-height:48px; margin-top: 30px;}
#visual_wrap .visual_text h2 br {display:none;}
#visual_wrap .visual_text p {font-size: 17px; line-height: 30px; padding-top: 25px; margin-top: 25px;}
#visual_wrap .visual_text p::before {content:''; width: 40px; height: 3px;}

#visual_wrap .scroll {bottom: 30px; width: 95px;}


.title {margin-bottom: 40px;}
.title span {line-height: 35px; padding: 0 15px; background-size: 35px 35px;}
.title h2 {font-size: 32px; margin: 20px 0 25px;}
.title p {font-size: 16px; line-height: 28px;}


#con1 {padding: 60px 0 80px;}

#con1 .tab_btn li {float:none; width: 100%; height: 45px; line-height: 45px; border-right:0;}
#con1 .tab_btn li:nth-child(2n) {border-right:0;}
#con1 .tab_btn li:nth-child(-n+2) {border-top:1px solid #fff;}
#con1 .tab_btn li:last-child {border-right:0;}
#con1 .tab_btn li:first-child {border-top:0;}
#con1 .tab_btn li a {font-size:15px;}

#con1 .tab_con {height: auto; padding: 40px 20px 50px; min-height:auto;}
#con1 .tab_con .tabcontent p {font-size: 14px; line-height: 26px;}
#con1 .tab_con .tabcontent:nth-child(1) p {margin-bottom: 30px;}
#con1 .tab_con .tabcontent:nth-child(2) p {margin-bottom: 30px;} 
#con1 .tab_con .tabcontent:nth-child(2) ul {display:block;}
#con1 .tab_con .tabcontent:nth-child(2) ul li img {width: 100%;}
#con1 .tab_con .tabcontent:nth-child(2) ul li:first-child {margin-bottom: 20px;}
#con1 .tab_con .tabcontent:nth-child(3) p {margin-bottom: 40px;}
#con1 .tab_con .tabcontent:nth-child(3) .con1_slick {width: 100%;}
#con1 .tab_con .tabcontent:nth-child(3) .con1_slick img {width: 100%; padding: 0 1%;}
#con1 .tab_con .tabcontent:nth-child(4) p {margin-bottom: 40px;}
#con1 .tab_con .tabcontent:nth-child(4) ul {display:block; overflow:hidden;}
#con1 .tab_con .tabcontent:nth-child(4) ul li {float:left; width: 49%; margin-right: 2%;}
#con1 .tab_con .tabcontent:nth-child(4) ul li:nth-child(1) {width: 100%; margin-right: 0; margin-bottom: 20px;}
#con1 .tab_con .tabcontent:nth-child(4) ul li:last-child {margin-right: 0;}
#con1 .tab_con .tabcontent:nth-child(4) ul li img {width: 100%;}

.slick-dots {margin-top: 25px;}
.slick-dots li {width: 12px; height: 12px; margin-right: 12px;}


#con2 {padding: 60px 0 80px;}
#con2 .title span {background-size: 35px 35px;}

#con2 .step_list li {float:none; width: 100%; margin-top: 0; margin-right: 0; margin-bottom: 20px; padding-bottom: 20px; border-bottom:1px dashed #ddd; position:relative; padding-left: 45%; text-align: left;}
#con2 .step_list li:nth-child(-n+3) {margin-top: 0;}
#con2 .step_list li:nth-child(-n+2) {margin-top: 0;} 
#con2 .step_list li:nth-child(3) {margin-right: 0;}
#con2 .step_list li:nth-child(4) {margin-left: 0;}
#con2 .step_list li:nth-child(2n) {margin-right: 0;}
#con2 .step_list li:last-child {margin-right: 0; margin-bottom: 0; padding-bottom: 0; border-bottom:0;}
#con2 .step_list li img {margin-bottom: 30px; position:absolute; width: 40%; left: 0; top: 42%; transform:translateY(-50%);}
#con2 .step_list li span {padding: 0 17px; height: 26px; line-height: 26px; border-radius:13px; font-size: 13px;}
#con2 .step_list li h3 {font-size: 18px; margin: 15px 0 10px;}
#con2 .step_list li p br {display:none;}


#con3 {padding: 60px 0 80px;}
#con3 .consult_list li {padding: 30px 15px 0; height:400px; margin-right: 10px;}
#con3 .consult_list li img {width: 100%;}
#con3 .consult_list li span {font-size: 13px;}
#con3 .consult_list li h4 {font-size: 18px; line-height: 30px; margin: 10px 0 20px;}
.slick-list {margin-right: -10px !important;}


#con4 {padding: 60px 0 80px;}
#con4 .title span {background-size: 35px 35px;}
#con4 .student_list li {padding: 30px 35% 30px 20px; overflow:hidden;}
#con4 .student_list li:last-child {margin-top: 20px;}
#con4 .student_list li img {height: auto; width: 85%; left:auto; right:-50%;}
#con4 .student_list li span {font-size: 13px; margin-bottom: 7px;}
#con4 .student_list li h3 {font-size: 18px; line-height: 28px; margin-bottom: 12px; padding-bottom: 12px;}
#con4 .student_list li p {font-size: 13px; line-height: 20px;}
#con4 button {margin-top: 40px; width: 250px; height: 50px; line-height: 48px; font-size: 16px; border-radius:24px;}


#con5 {padding: 60px 0 80px;}

#con5 .con_wrap {display:block;}
#con5 .con_wrap > div {width: 100%; margin-right: 0;}
#con5 .con_wrap .left iframe {height: 200px; margin-bottom: -10px;}

#con5 .con_wrap .left .txt_box {padding:30px 20px;}
#con5 .con_wrap .left .txt_box .name {padding-bottom: 15px; margin-bottom: 20px;}
#con5 .con_wrap .left .txt_box .name img {margin-bottom: 8px; width: 220px;}
#con5 .con_wrap .left .txt_box .name span {display:block; font-size: 16px;}
#con5 .con_wrap .left .txt_box ul li {margin-bottom: 8px; height: 25px; line-height: 25px; padding-left: 35px; font-size: 15px;}
#con5 .con_wrap .left .txt_box ul li:nth-child(1) {background: url(../images/main/con5_map.png) no-repeat left center; background-size: 20px 25px;}
#con5 .con_wrap .left .txt_box ul li:nth-child(2) {background: url(../images/main/con5_tel.png) no-repeat left center; background-size: 25px 25px;}
#con5 .con_wrap .left .txt_box ul li:nth-child(3) {background: url(../images/main/con5_mail.png) no-repeat left center; margin-bottom: 0; background-size: 23px 25px;}

#con5 .con_wrap .right {padding: 30px 20px 60px; margin-top: 20px;}
#con5 .con_wrap .right h3 {font-size: 25px; margin-bottom: 20px; padding-bottom: 15px;}
#con5 .con_wrap .right p {font-size: 14px; line-height: 22px; margin-bottom: 35px;}
#con5 .con_wrap .right button {width: 150px; height: 34px; border-radius:17px; background: #BF945B; font-size: 15px; font-weight: 500;}
#con5 .con_wrap .right button a {color: #fff;}


#footer {width: 100%; padding: 35px 0 40px;}
#footer .inner {position:relative;}
#footer .inner img {width: 180px; margin-bottom: 25px;}
#footer p {color: #BABABA; font-size: 13px; line-height: 1; margin-bottom: 2px; line-height: 22px;}
#footer p:nth-of-type(2) {line-height: 22px;}
#footer p span {margin: 0 8px;}
#footer p.copyright {color: #fff; font-weight: 500; margin-top: 20px; margin-bottom: 0;}


/* === Sub === */
#sub_visual01 .tit_wrap {width: 96%;}
#sub_visual01 .tit_wrap p {font-size: 14px; letter-spacing:1px; margin-bottom: 20px;}
#sub_visual01 .tit_wrap h2 {font-size: 28px; line-height: 45px; margin-bottom: 40px;}
#sub_visual01 .tit_wrap h2 b {color: #F2B76B; font-weight: 900;}
#sub_visual01 .tit_wrap .check_list li {display:block; margin-right: 0; margin-bottom: 22px;}
#sub_visual01 .tit_wrap .check_list li:last-child {margin-right: 0; margin-bottom: 0;}
#sub_visual01 .tit_wrap .check_list li img {height: 60px;}
#sub_visual01 .tit_wrap img.sv02_txt {width: 100%;}

#sub_visual02 {height: 420px;}
#sub_visual02 .tit_wrap {padding-top: 130px; text-align: center; color: #fff;}
#sub_visual02 .tit_wrap p:first-child {font-size: 17px; letter-spacing:1px; margin-bottom: 15px;}
#sub_visual02 .tit_wrap h2 {font-size: 35px; line-height: 48px; margin-bottom: 20px;}
#sub_visual02 .tit_wrap p {font-size: 16px; line-height: 28px;}

.bg04 .tit_wrap {width: 100% !important; padding: 140px 3% 0 !important;}
.bg04 .tit_wrap h2 {font-size: 30px !important; line-height: 45px !important;}
.bg04 .tit_wrap h2 br {display: none;}
.bg04 .tit_wrap h2 br.mob {display: block;}

#sub01_con {padding: 70px 0 100px;}
#sub01_con h3 {font-size: 26px; line-height: 40px; padding-bottom: 25px; margin-bottom: 30px;}
#sub01_con .txt_wrap {margin-bottom: 50px;}
#sub01_con .txt_wrap h4 {float:none; width: 100%; font-size: 23px; line-height: 36px; margin-bottom: 20px;}
#sub01_con .txt_wrap h4 br:first-child {display:none;}
#sub01_con .txt_wrap .txt {float:none; width: 100%;}
#sub01_con .txt_wrap .txt p {font-size: 14px; line-height: 28px; margin-bottom: 12px;}
#sub01_con .txt_wrap .txt p br {display:none;}


#sub02_con .sub_step_list:last-child {margin-bottom: 70px;}
#sub02_con .sub_step_list li {padding: 40px 20px;}
#sub02_con .sub_step_list li:last-child {padding-left: 20px;}
#sub02_con .sub_step_list li span {font-size: 15px; width: 100px; line-height: 34px; height: 34px; border-radius:17px;}
#sub02_con .sub_step_list li h4 {font-size: 28px; line-height: 40px; margin: 15px 0 20px;}
#sub02_con .sub_step_list li img {right: 20px; width: 35%;}
#sub02_con .sub_step_list li:first-child img {right: 20px;}

#sub02_con .sub_step_list li.bg_yellow::before {content:none;}

#sub02_con .sub_step_list li.contact {background: url(../images/sub/step_img06.jpg) no-repeat center center / cover;}
#sub02_con .sub_step_list li.contact em {color: #E5A757;}
#sub02_con .sub_step_list li.contact h4 { margin-bottom: 30px;}
#sub02_con .sub_step_list li.contact button {width: 170px; height: 40px; font-size:14px; border-radius: 20px;}


#sub03_con {padding: 60px 0 100px;}

#sub03_con .planner_list li {float: none; width: 100%; margin-right: 0; margin-top: 20px; height: auto; padding: 40px 20px;}
#sub03_con .planner_list li:nth-child(2n) {margin-right: 0;}
#sub03_con .planner_list li:nth-child(-n+2) {margin-top: 20px;}

#sub03_con .planner_list li span {font-size: 15px;}
#sub03_con .planner_list li h4 {font-size: 20px; line-height: 32px; margin: 12px 0 20px;}
#sub03_con .planner_list li p {font-size: 15px;}
#sub03_con .planner_list li img {height: auto; width: 95%;}


#sub04_con {padding: 60px 0 100px;}

#sub04_con .review_list {margin-bottom: 20px; display: block;}
#sub04_con .review_list > li {padding: 30px 20px; width: 100%; margin-right: 0; margin-bottom: 20px;}
#sub04_con .review_list > li:last-child {margin-bottom: 0;}
#sub04_con .review_list > li span {font-size: 14px; height: 34px; line-height: 34px; border-radius: 17px; padding: 0 20px;}
#sub04_con .review_list > li h4 {font-size: 22px; line-height: 34px; margin: 20px 0;}
#sub04_con .review_list > li .info li {font-size: 14px; padding-right: 10px; margin-right: 10px;}
#sub04_con .review_list > li .info li::after {height: 10px; top: 1px;}
#sub04_con .review_list > li p {font-size: 13px; line-height: 24px; margin-top: 15px; padding-top: 15px;}

#sub04_con .review_list > li .admin_check {right: 20px; top: 20px;}

.paging_wrap{margin-top:35px;}
ul.paging li{margin-right:4px;}
ul.paging li a {width:30px; height:30px; font-size:13px; line-height:30px;}
ul.paging li.page_arrow a {line-height:29px;}
ul.paging li.page_arrow a img {height: 10px;}

#admin_edit { overflow-y: scroll; padding: 50px 3%;}
#admin_edit .edit_con {width: 100%; padding: 40px 20px 50px; position:static; top:auto; left: auto; transform: none;}
#admin_edit .edit_con > p {font-size: 14px; margin-bottom: 20px;}
#admin_edit .edit_con .edit li {float:none; width: 100%; padding: 10px 0; padding-right: 0;}
#admin_edit .edit_con .edit li span {font-size: 14px; line-height: 40px; width: 90px; vertical-align: middle;}
#admin_edit .edit_con .edit li input {width: calc(100% - 90px); height: 40px; padding: 0 10px;}
#admin_edit .edit_con .edit li textarea {width: calc(100% - 90px); height: 200px; padding: 10px;}

#admin_edit .edit_con .btns {font-size: 0; text-align: center; margin-top: 25px;}
#admin_edit .edit_con .btns button {font-size: 14px;}


#sub05_con {padding: 130px 0 100px;}
#sub05_con .tit_wrap {margin-bottom: 70px;}
#sub05_con .tit_wrap p {font-size: 15px; letter-spacing:1px; margin-bottom: 20px;}
#sub05_con .tit_wrap h2 {font-size: 28px; line-height: 42px; margin-bottom: 40px;}

#sub05_con .content {padding: 40px 20px 50px;}
#sub05_con .content .gray_box {padding: 20px; margin-bottom: 25px;}
#sub05_con .content .gray_box ul li {font-size: 14px; line-height: 24px; margin-bottom: 10px; padding-left: 25px; background: url(../images/sub/sub05_check.png) no-repeat left 4px; background-size: 15px;}

#sub05_con .content .contact_list {border-top:2px solid #000; border-bottom:2px solid #000;}
#sub05_con .content .contact_list li {padding: 10px 0;}
#sub05_con .content .contact_list li span {font-size: 14px; width: 120px; line-height: 40px;}
#sub05_con .content .contact_list li input {font-size: 13px; width: calc(100% - 120px); height: 40px; padding: 0 10px;}
#sub05_con .content .contact_list li.t_area span {line-height: 22px;}
#sub05_con .content .contact_list li.t_area textarea {font-size: 13px; width: calc(100% - 120px); height: 150px; padding: 10px;}

#sub05_con .content .privacy {margin-top: 20px;}
#sub05_con .content .privacy textarea {height: 120px; font-size: 12px; line-height: 20px; padding: 12px;}
#sub05_con .content .privacy .checkbox {margin-top: 10px; font-size: 0;}
#sub05_con .content .privacy .checkbox span {font-size: 13px;}

#sub05_con .content .btn_wrap {margin-top: 30px;}
#sub05_con .content .btn_wrap p {font-size: 14px;}
#sub05_con .content .btn_wrap button {width: 250px; height: 50px; font-size: 16px; border-radius: 25px; margin-top: 15px;}


/* === Admin === */

#admin_login_wrap .admin_login {position: absolute; top: 40%; left: 50%; padding: 50px 20px;}
#admin_login_wrap .admin_login h4 {font-size: 25px; margin-bottom: 40px;}
#admin_login_wrap .admin_login ul li span {font-size: 16px; width: 90px;}
#admin_login_wrap .admin_login ul li input {font-size: 15px; width: calc(100% - 90px); height: 40px; padding: 0 15px;}
#admin_login_wrap .admin_login button {width: 200px; height: 45px; font-size: 16px; margin-top: 40px;}

/* === Admin === */
#admin_header h1 {left: 50%; top:40px; transform: translateX(-50%);}
#admin_header h1 img {width: 260px;}
#admin_header .admin_btns {right: auto; left: 50%; transform: translateX(-50%); top:100px; width: 265px;}
#admin_header .admin_btns button {width: 130px; height: 40px; margin-right: 5px; font-size: 14px;}
#admin_header .admin_btns button a {line-height: 40px;}

#admin_wrap {padding: 190px 0 100px;}

#admin_wrap .admin_con .admin_tab li {height: 50px; line-height: 50px; font-size: 15px;}

#admin_wrap .admin_con .mypage {padding: 60px 20px 70px;}
#admin_wrap .admin_con .mypage h3 {font-size: 26px;}
#admin_wrap .admin_con .mypage > p {font-size: 15px; text-align: center; margin-top: 15px; margin-bottom: 40px;}
#admin_wrap .admin_con .mypage ul li {padding: 15px 0; height: 70px;}
#admin_wrap .admin_con .mypage ul li span {font-size: 14px; width: 110px;}
#admin_wrap .admin_con .mypage ul li p {width: 110px; font-size: 15px; line-height: 40px;}
#admin_wrap .admin_con .mypage ul li input {width: calc(100% - 110px); height: 40px; font-size: 14px;}
#admin_wrap .admin_con .mypage button {width: 220px; height: 50px; font-size: 16px; margin-top:40px;}

#admin_wrap .admin_con .contact_list {padding: 60px 20px 70px;}
#admin_wrap .admin_con .contact_list h3 {font-size: 26px;}
#admin_wrap .admin_con .contact_list > p {font-size: 15px; line-height: 24px; margin-top: 15px; margin-bottom: 40px;}
#admin_wrap .admin_con .contact_list .con_list li {height: 60px; line-height: 60px;}
#admin_wrap .admin_con .contact_list .con_list li input {width: 5%; display: inline-block; vertical-align: top; font-size: 14px; height: 60px;}
#admin_wrap .admin_con .contact_list .con_list li p.num {width: 7%; display: inline-block; vertical-align: top; font-size: 14px;}
#admin_wrap .admin_con .contact_list .con_list li p.tit {width: 60%; display: inline-block; vertical-align: top; font-size: 14px;}
#admin_wrap .admin_con .contact_list .con_list li p.date {width: 28%; display: inline-block; vertical-align: top; font-size: 14px; overflow:hidden;}

#admin_wrap .admin_con .contact_list .con_list li.no_data p {font-size: 14px;}

#admin_wrap .admin_con .contact_list button.delete {width:90px; height: 32px; font-size: 13px; margin-top: 15px;}

#admin_wrap .admin_con .contact_list .paging_wrap {margin-top: 25px;}

#admin_wrap .admin_con .contact_list .view_page li {float:none; width: 100%; padding: 17px 0;}
#admin_wrap .admin_con .contact_list .view_page li span {font-size: 14px; width: 120px;}
#admin_wrap .admin_con .contact_list .view_page li p {font-size: 14px; width: calc(100% - 120px);}
#admin_wrap .admin_con .contact_list .list_btn {width: 200px; height: 50px; line-height: 50px; font-size: 16px; margin-top:40px;}
