
.sub_visual_wrap {
    width: 100%;
    height: 300px;
    position: relative;
    overflow: hidden;
    margin-bottom: 0;
}

.sub_visual_wrap.sub_visual01{background:url('../image/sub/bg_subvisual_01.jpg') no-repeat center center; background-size: cover; background-position: center center; }
.sub_visual_wrap.sub_visual02{background:url('../image/sub/bg_subvisual_02.jpg') no-repeat center center; background-size: cover; background-position: center center; }
.sub_visual_wrap.sub_visual03{background:url('../image/sub/bg_subvisual_03.jpg') no-repeat center center; background-size: cover; background-position: center center; }
.sub_visual_wrap.sub_visual04{background:url('../image/sub/bg_subvisual_04.jpg') no-repeat center center; background-size: cover; background-position: center center; }
.sub_visual_wrap.sub_visual05{background:url('../image/sub/bg_subvisual_05.jpg') no-repeat center center; background-size: cover; background-position: center center; }
.sub_visual_wrap.sub_visual06{background:url('../image/sub/bg_subvisual_06.jpg') no-repeat center center; background-size: cover; background-position: center center; }
.sub_visual_wrap.sub_visual07{background:url('../image/sub/bg_subvisual_07.jpg') no-repeat center center; background-size: cover; background-position: center center; }
.sub_visual_wrap.sub_visual08{background:url('../image/sub/bg_subvisual_07.jpg') no-repeat center center; background-size: cover; background-position: center center; }
.sub_visual_wrap .m_auto{}
.sub_visual_wrap .m_auto p{font-size:30px; font-weight:300; color:#000; padding-top:81px; letter-spacing:5px}
.sub_visual_wrap .m_auto p span.purple{color:#596799; font-weight:bold;}
.sub_content .snb .snb_group{width:260px;/*border:4px solid #003d7c*/}
.sub_content .snb .snb_group span.snb_tit{padding:23px 0px 70px 22px; display:block;}
.sub_content .snb .snb_group h3{font-size:30px; font-weight:500;color:#fff; padding:54px 0 58px 0; text-align:center; letter-spacing:-0.1em;background:#384978;}
.sub_content .snb .snb_group ul{width:260px;border-bottom:1px solid #d4d4d4;}
.sub_content .snb .snb_group ul li{position:relative;}
.sub_content .snb .snb_group ul li a{font-size:20px; height:70px; line-height:70px; display:block; letter-spacing:-0.1em; padding-left:31px;color:#000; border-left:1px solid #d4d4d4;border-bottom:1px solid #d4d4d4;border-right:1px solid #d4d4d4;}
.sub_content .snb .snb_group ul li:last-child a{border-bottom:none;}
.sub_content .snb .snb_group ul li a:hover{background:#647189;font-size:20px; color:#fff;border-left:1px solid #647189;border-right:1px solid #647189;}
.sub_content .snb .snb_group ul li:last-child a:hover{border-bottom:none;}
.sub_content .snb .snb_group ul li.on a{background:#647189;font-weight:500; font-size:20px; border-bottom:1px solid #d4d4d4; color:#fff;border-left:1px solid #647189;border-right:1px solid #647189;}
.sub_content .snb .snb_group ul li a span.sub_txt{background:url("../image/sub/snb_off.gif") right center no-repeat; width:200px; display:inline-block;}
.sub_content .snb .snb_group ul li.on a span.sub_txt{background:url("../image/sub/snb_on.gif") right center no-repeat; width:200px; display:inline-block;}
.sub_content .snb .snb_group ul li a:hover span.sub_txt{background:url("../image/sub/snb_on.gif") right center no-repeat;  width:200px; display:inline-block;}
.sub_content .snb .teltime_info{margin:20px 0px;}
.sub_content .snb .inside{margin-top:20px; background:#e4e9ef; border:1px solid #c5ced8; padding:29px;}
.sub_content .snb .inside p.lineTit{color:#132e54; font-size:30px; font-weight:bold; line-height:1em; background:url(../image/sub/line_br.gif) left bottom no-repeat; padding-bottom:30px;}
.sub_content .snb .inside p.lineTxt{color:#466081; line-height:1.6em; font-size:16px; font-weight:500; padding-top:25px; padding-bottom:15px;}

.sub_content .snb .inside input{padding:10px; border:1px solid #c9d1e1; margin-bottom:10px; width:88%; font-size:16px;}
.sub_content .snb .inside input#agree{width:18px; height:18px; background:#fff; vertical-align:top; margin-top:-2px;}
.sub_content .snb .inside .button{ font-family:'Malgun Gothic'; letter-spacing:-0.1em}
.sub_content .snb .inside .button p{color:#2b4274; font-size:16px; font-weight:500;}
.sub_content .snb .inside .button a{color:#555; font-size:12px; background:#fff; border:1px solid #c9d1e1; padding:0px 7px; margin-left:7px;}
.sub_content .snb .inside .button .btn{margin-top:15px;}
.sub_content .snb .inside .button .btn button{background:#2684d2; color:#Fff; height:60px; text-align:center; font-weight:bold; border:none; width:100%; font-size:22px; letter-spacing:-0.1em}
.sub_content .snb .inside .button .agreeBox{font-size:15px; line-height:1.5em;}

.sub_content .content .pathArea{position:relative; width:890px;}
.sub_content .content .pathArea .titArea{margin-bottom:40px;padding-bottom:29px;border-bottom:2px solid #575757; margin-top:20px;}
.sub_content .content .pathArea .titArea p{font-size:36px; font-weight:500; color:#353535; }
.sub_content .content .pathArea .titArea{}
.sub_content .content .pathArea ul{position:absolute; top:15px; right:0px;}
.sub_content .content .pathArea ul li{float:left; color:#7a7a7a; font-family:'Malgun Gothic'; font-weight:bold; font-size:14px; letter-spacing:-0.1em}
.sub_content .content .pathArea ul li img{margin-right:8px; margin-top:-2px;}
.sub_content .content .pathArea ul li strong{color:#353535;}
.sub_content .content .pathArea ul li span.space{margin:0px 10px;}


/* 게시판 */
#tb_board_list{width:100%;}
#tb_board_list thead th{font-size:16px; color:#fff; line-height:36px; padding:5px 0; background:#163f7a; font-weight:300;}
#tb_board_list tbody td{font-size:16px; line-height:30px; padding:5px 0; color:#555; border-bottom:1px solid #858585; text-align:center;}
#tb_board_list tbody td.none{border-bottom:none;}
#tb_board_list tbody td a{font-size:16px; color:#555;}
#tb_board_list tbody td.left{text-align:left;}
#tb_board_list tbody td.td_title{width:90%; text-overflow:ellipsis;  white-space:nowrap; overflow:hidden; display:block;}
#tb_board_list tbody td.td_img img{width:100%; max-width:190px; max-height:130px;}
#tb_board_list tbody td ul li{text-align:left; padding-left:12px;}
#tb_board_list tbody td ul li.td_date{font-size:12px; color:#8b8d8d; line-height:22px;}
#tb_board_list tbody td ul li.td_tit a{display:block; width:760px; font-size:18px; color:#5e5e5e; font-weight:700; margin:3px 0 6px 0; text-overflow:ellipsis;  white-space:nowrap; overflow:hidden;}
#tb_board_list tbody td ul li.td_txt{display:block; width:760px; height:52px; font-size:16px; color:#777a7e; line-height:26px; text-overflow:ellipsis;  overflow:hidden;}

#tb_board_view .tb_subject{font-size:15px; color:#444; line-height:50px; font-weight:bolder; padding-left:14px; background:#ededed;}
#tb_board_view .tb_content{font-size:15px; color:#444; padding:10px 14px 10px 14px;}
#tb_board_view td input[type="text"]{font-size:15px;}

ul.tb_bt{float:right; text-align:right}
ul.tb_bt li{float:left;}

.tb_bt{float:right; margin-top:10px;}
.tb_bt li{float:left; margin-left:8px;}
.tb_bt li:first-child{margin-left:0;}
.btn_pager{padding:30px 0 20px 0;}

.bt_type li a{display:inline-block; width:100px; height:40px; text-align:center; font-size:17px; line-height:40px; color:#fff; background:#918f8d;}
a.bts, a.bts:link{display:inline-block; width:100px; height:40px; text-align:center; font-size:17px; line-height:40px; color:#fff; background:#8b8d8d;}
a.btn_blue, a.btn_blue:link{background:#163f7a !important;}
a.btn_org, a.btn_org:link{background:#22313f !important;}
a.btn_sch, a.btn_sch:link{font-size:15px; width:53px; height:28px; line-height:28px;}

.sch_box{clear:both; text-align:center; width:360px; margin:0px auto 50px;}
.sch_box input[type="text"]{font-size:16px; border:1px solid #8b8d8d; padding:1px 0;}
.sch_box select{font-size:16px; border:1px solid #8b8d8d; height:28px;}

/*게시판 버튼*/
.bd_btn{ font-family: "Noto Sans KR", sans-serif;display:inline-block;color:#fff;border:0px;text-align:center;}
.bd_btn:hover{color:#fff;}
.bd_btn.big{width:160px;height:40px;line-height:40px;font-size:17px;}
.bd_btn.big.gray{background:#888888  ;}
.bd_btn.big.blue{background:#192d64;}
.bd_btn.small{width:53px;height:24px;line-height:5px;font-size:14px;}
.bd_btn.small.gray{background:#888888;}
.bd_btn.small.blue{background:#192d64;}

/* 멤버쉽 */

/* 로그인 */
.loginTxt {margin-bottom: 30px;}
.loginTxt p.tit {color: #222; font-size: 18px; font-weight: bold;margin-bottom: 5px;}
.loginTxt p.txt {margin:10px 0 0 0;font-size: 15px;color: #222;}

.loginBox {background: url(../image/common/logo.gif) 40px center no-repeat; border-width: 1px 0; border-style: solid;border-color: #dfdfdf; padding: 27px 0; margin-bottom: 10px;}
.loginBox:after {display:block; clear:both; content:"";}
.loginBox .inner {float:right;display:table; height:160px; -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box; padding:40px 10px 40px 35px; width:490px; border-left: 1px solid #dedede; margin-bottom: 10px;}
.loginBox .inner .input {display: table-cell;vertical-align:middle;}
.loginBox .inner p.confirm {color: #007c88; font-size: 24px; font-weight: bold;}
.loginBox .inner ul {}
.loginBox .inner ul li:first-child {margin-top: 0;}
.loginBox .inner ul li {vertical-align: middle; margin-top: 10px;}
.loginBox .inner ul li label {display: inline-block; width: 72px;text-align:justify; color: #000; font-size: 15px; vertical-align: middle; height:32px; line-height: 32px; margin-right: 20px; font-weight:700; letter-spacing:-8px;}
.loginBox .inner ul li label:after {content:""; display: inline-block; width: 100%; height:0;font-size: 0; padding:0; line-height: 0; vertical-align: middle; margin:0;}
.loginBox .inner ul li input {vertical-align: middle; border: 1px solid #d8d8d8; height:30px; width: 196px; -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;padding-left: 10px;}
.loginBox .inner .btn {display: table-cell;vertical-align: middle; padding-left: 8px;}
.loginBox .inner .btn button {color: #fff;background: #192d64; vertical-align: middle; font-size: 18px; font-weight: bold;text-align: center;border: 1px solid #192d64; width: 146px; height:72px}

/* 비번찾기 */
.passTxt {margin-bottom: 30px;}
.passTxt p.tit {color: #222; font-size: 18px; font-weight: bold;margin-bottom: 5px;}
.passTxt p.txt {margin:10px 0 0 0;font-size: 15px;color: #222;line-height:20px;}

.passBox {background: url(../image/common/logo.gif) 40px center no-repeat; border-width: 1px 0; border-style: solid;border-color: #dfdfdf; padding: 27px 0; margin-bottom: 10px;}
.passBox:after {display:block; clear:both; content:"";}
.passBox .inner {float:right;display:table; height:160px; -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box; padding:40px 10px 40px 35px; width:490px; border-left: 1px solid #dedede; margin-bottom: 10px;}
.passBox .inner .input {display: table-cell;vertical-align:middle;}
.passBox .inner p.confirm {color: #007c88; font-size: 24px; font-weight: bold;}
.passBox .inner ul {}
.passBox .inner ul li:first-child {margin-top: 0;}
.passBox .inner ul li {vertical-align: middle; margin-top: 10px;}
.passBox .inner ul li label {display: inline-block; width: 72px;text-align:justify; color: #000; font-size: 15px; vertical-align: middle; height:32px; line-height: 32px; margin-right: 20px; font-weight:700; letter-spacing:-8px;}
.passBox .inner ul li label:after {content:""; display: inline-block; width: 100%; height:0;font-size: 0; padding:0; line-height: 0; vertical-align: middle; margin:0;}
.passBox .inner ul li input {vertical-align: middle; border: 1px solid #d8d8d8; height:37px; width: 196px; -webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;padding-left: 10px;}
.passBox .inner .btn {display: table-cell;vertical-align: middle; padding-left: 8px;}
.passBox .inner .btn button {color: #fff;background: #192d64; vertical-align: middle; font-size: 17px; font-weight: bold;text-align: center;border: 1px solid #192d64; width: 97px; height:39px;line-height:36px;}
.passBox .inner .clearfix{display:table-cell;vertical-align:middle;}

.btn_reservation {clear:both; width:230px; margin:0 auto; padding:40px 0;}
.btn_reservation:after {display:block; clear:both; content:"";}
.btn_reservation li{float:left;}
.btn_reservation li a{display:block; font-size:18px; padding:16px 26px;}
.btn_reservation li.ft a{color:#333; border:1px solid #bebebe; background:#f2f2f2;}
.btn_reservation li.se{float:right;}
.btn_reservation li.se a{color:#fff; border:1px solid #163f7a; background:#163f7a !important;}
.member_agree ol li{font-size:16px; color:#727272; line-height:22px;}
.member_agree ul li{font-size:16px; color:#727272; line-height:22px;}

/* 회원가입 */
table#tb_main{width:100%; border-top:2px solid #163f7a;}
table#tb_main td{font-size:15px; padding:15px 0; color:#444;}
table#tb_main td input{font-size:15px; padding:2px 0;}
table#tb_main td.tb1{padding-left:37px; background:#fcfcfc;}
table#tb_main td.star{background:#fcfcfc url('../image/icon_star.png') no-repeat left 20px center;}

.memberInfor {margin-bottom:100px;}
.memberInfor:after {display:block; clear:both; content:"";}
.memberInfor p {color: #222; font-size: 15px; letter-spacing: -1px;}
.memberInfor .lft {float:left;}
.memberInfor .rgh {float:right; }

.member_tit{font-size:15px; color:#444; padding-bottom:20px;}
.member_tit b{padding-right:10px;}
.member_tit span{padding-left:10px; color:#e15e68;}

.re_table td{font-size:18px; padding:10px 0; background:#fff;}
.re_table td input{padding:3px;}
.re_table td select{padding:5px; font-size:18px}

.member_agree{font-size:14px;}
.member_agree h4{font-size:14px; padding:20px 0px 10px 0px;}
.member_agree h5{font-size:14px; padding:20px 0px 10px 0px;}
.member_agree p{font-size:14px; line-height:1.5em; padding-bottom:10px; color:#727272;}
.member_agree ol li{font-size:14px;}

.re_table td{font-size:18px; padding:10px 0; background:#fff;}
.re_table td input{padding:3px;}
.re_table td select{padding:5px; font-size:18px}

.btn_step{cursor:pointer; width:75px; color:#fff; margin:0 auto; padding:5px 0; font-size:15px; background:#46566c; text-align:center;}

.private{padding-bottom:50px;}
.private h2{padding-top:20px; padding-bottom:5px; font-size:16px; line-height:24px}
.private p{font-size:16px; line-height:24px}
.private p.txt{padding-bottom:10px; font-size:16px; line-height:24px}
.private p.txt02{font-size:16px; line-height:24px}
.private dl dt{padding-top:10px; padding-bottom:2px; font-size:16px; line-height:24px}
.private dl dd{font-size:16px; line-height:24px}
.private ol li{padding-bottom:5px; font-size:16px; line-height:24px}
.private ul li{font-size:16px; line-height:24px}

.term{padding-bottom:50px;}
.term h2{padding-top:30px; padding-bottom:5px; font-size:24px; line-height:24px}
.term h3{padding-top:20px; padding-bottom:5px; font-size:18px; line-height:24px}
.term p{font-size:16px; line-height:24px}
.term p.txt{padding-bottom:10px; font-size:16px; line-height:24px}
.term dl dt{padding-top:10px; padding-bottom:2px; font-size:16px; line-height:24px}
.term dl dd{font-size:16px; line-height:24px}
.term ol li{padding-bottom:5px; font-size:16px; line-height:24px}
.term ul li{font-size:16px; line-height:24px}


.reser_con{padding:35px 25px; border:1px solid #ccc; margin-top:20px;}
.reser_con .reser_tit{font-size:24px;color:#333; line-height:50px;}
.reser_con .reser_txt{font-size:18px;color:#333; line-height:30px;letter-spacing:-1px; margin-bottom:40px;}

.reser_day_tit{clear:both; font-size:36px; color:#163f7a; line-height:50px; margin:40px 0 10px 0;}
.reser_day_txt{font-size:18px; color:#333; line-height:30px; margin-bottom:40px; letter-spacing:-1px;}

.date_day{font-size:18px; color:#333; padding:0 20px;}

.reservation_sel{padding:32px 25px; border:1px solid #ccc; font-size:24px; color:#163f7a; margin-bottom:40px; line-height:30px;}
.reservation_sel span{color:#fff; font-size:18px; padding:5px 16px; border-radius:15px; margin-right:25px; background:#163f7a;}
.reservation_sel strong{font-size:24px; color:#ccc; font-weight:200; margin:0 10px;}


.reservation_tb{width:100%; border-top:2px solid #163f7a;}
.reservation_tb th{font-size:18px; color:#333; font-weight:600; text-align:left; padding:20px 0 20px 40px; border-bottom:1px solid #ccc;}
.reservation_tb td{font-size:16px; color:#939393; padding:15px; border-bottom:1px solid #ccc;letter-spacing:-1px;}
.reservation_tb td p{font-size:16px; color:#939393;letter-spacing:-1px; padding-top:10px; line-height:1.3em;}
.reservation_tb td textarea{width:100%; height:130px; border:1px solid #ddd; resize:none;}

.s020101 p.s020101_tit{font-size:36px; color:#585858; font-weight:200; line-height:40px; text-align:center;}
.s020101 p.s020101_tit span{color:#163f7a;}
.s020101 p.s020101_tit span.sy_02{color:#163f7a;}
.s020101 p.s020101_tit span.sy_03{color:#f6b10c;}
.s020101 p.s020101_tit strong{color:#163f7a; font-weight:normal;}
.s020101 p.s020101_txt{font-size:18px; color:#585858; text-align:center; margin:15px 0 40px 0;}
.s020101 p.s020101_txt02{font-size:24px; color:#585858; font-weight:200; text-align:center; margin:25px 0 50px 0;}
.s020101 p.s020101_txt02 strong{font-weight:600;}
.s020101 p.s020101_txt img{margin-right:5px; vertical-align:middle;}

.s020101 .login_box{width:540px; margin:0 auto; padding:56px 90px; border:3px solid #d7d7d7;}
.s020101 .login_box h3{font-size:35px;}
.s020101 .login_box:after {display:block; clear:both; content:"";}
.s020101 .login_box ul{float:left; width:385px; margin-right:20px;}
.s020101 .login_box ul li:last-child{margin-top:16px;}
.s020101 .login_box ul li{vertical-align:middle; }
.s020101 .login_box ul li span{display:inline-block; width:68px; font-size:18px; color:#626262;letter-spacing:-1px;}
.s020101 .login_box ul li input{width:300px; height:30px; margin-left:10px;}
.s020101 .login_box .box_link{float:left; display:block;width:135px; padding:33px 0; text-align:center; font-size:18px; font-weight:600; color:#fff; background:#163f7a;}
.s020101 .login_box > p{clear:both; display:block; position:relative; padding-top:23px; font-size:14px; color:#a3a3a3;}
.s020101 .login_box > p a{color:#dd7474;}

.s020101 .s020101_line{margin:60px 0;}
.s020101 .s020101_line:after {display:block; clear:both; content:"";}
.s020101 .s020101_line .line01{float:left; width:300px; height:3px; background:#163f7a;}
.s020101 .s020101_line .line02{float:left; width:680px; height:3px; background:#163f7a;}

.s020101_table:after {display:block; clear:both; content:"";}
.s020101_table .tb_green{float:left; width:500px;}
.s020101_table .tb_green thead th{font-size:18px; color:#fff; padding:17px 0; background:#163f7a;}
.s020101_table .tb_green thead th.fr{border-right:1px solid #fff;}
.s020101_table .tb_green tbody td{font-size:18px; color:#333; text-align:center; padding:27px 0; border-bottom:1px solid #c2c2c2;}
.s020101_table .tb_green tbody td.fr{border-right:1px solid #c2c2c2;}
.s020101_table .tb_green tbody td strong{font-weight:600; font-size:24px;}
.s020101_table .tb_green tbody td span{font-size:16px;}

.s020101_table .tb_greentd tbody td{padding:15px 0;}
.s020101_table .tb_greentd tbody td.last{font-size:15px; font-weight:300; color:#585858; line-height:20px;}
.s020101_table .tb_greentd tbody td span.st01{color:#163f7a;}
.s020101_table .tb_greentd tbody td span.st02{color:#163f7a;}
.s020101_table .tb_greentd tbody td strong{font-size:15px; font-weight:600}

.s020101_table .tb_blue{float:left; width:450px; margin-left:30px;}
.s020101_table .tb_blue thead th{font-size:18px; color:#fff; padding:17px 0; background:#163f7a;}
.s020101_table .tb_blue tbody td{font-size:60px; font-weight:600; padding:65px 0; text-align:center; border-bottom:1px solid #c2c2c2;}
.s020101_table .tb_blue tbody td img{margin-right:7px;}
.s020101_table .tb_bluetd tbody td{padding:74px 0;}
.s020101_table .tb_blue_v02 tbody td{font-size:18px; font-weight:400; color:#333; padding:15px 0;}
.s020101_table .tb_blue_v02 tbody td input[type="radio"]{width:14px; height:14px; border:1px solid #e1e1e1; background:#fff;}
.s020101_table .tb_blue_v02 tbody td span.re_qnfrk{color:#e21c38;}
.s020101_table .tb_blue_v02 tbody td span.re_rksmd{color:#163f7a;}

.tb_subject.left span img{position:relative; top:8px;}


/*tab*/
.tab_area{/*border-bottom:1px solid #c2c2c2;*/ overflow:hidden; height:163px;margin-bottom:37px;}
.tab_area.line_one{/*border-bottom:1px solid #c2c2c2;*/ overflow:hidden; height:86px;margin-bottom:37px;}
.tab_area ul{}
.tab_area ul li{float:left; text-align:center; width:216px;}
.tab_area ul li.penta{width:215px;}
.tab_area ul li.penta.none{width:216px;}
.tab_area ul li.quad{width:445px;}
.tab_area ul li.quad.none{width:445px;}
.tab_area ul li.triple{width:296px;}
.tab_area ul li.triple.none{width:298px;}
.tab_area ul li.double{width:539px;}
.tab_area ul li.double.none{width:540px;}
.tab_area ul li.none{/*border-right:1px solid #c2c2c2;*/ width:215px;}
.tab_area ul li.none a{border-right:none;}
.tab_area ul li a{position:relative;display:block; height:73px; line-height:73px; color:#333333; font-size:24px; border-bottom:1px solid #d7d7d7;border-left:1px solid #d7d7d7;background:#fff;}
.tab_area ul li a.last{border-right:1px solid #d7d7d7;}
.tab_area ul li a.top{border-top:1px solid #d7d7d7;}
.tab_area ul li a:hover{background:#a9c14f; color:#fff; font-weight:500;}
.tab_area ul li a.on{background:#a9c14f; color:#fff; font-weight:500;}
.tab_area ul li a span{display:none;}
.tab_area ul li a:hover span{width:17px;height:13px;position:absolute;bottom:-13px;left:50%;margin-left:-7px;display:block;background:url('../image/sub/tab_arrow.png') no-repeat 0 0;z-index:5;}
.tab_area ul li a.on span{width:17px;height:13px;position:absolute;bottom:-13px;left:50%;margin-left:-7px;display:block;background:url('../image/sub/tab_arrow.png') no-repeat 0 0;z-index:5;}
/*.tab_area ul li.quad.line{border-bottom:1px solid #c2c2c2;}*/
/*.tab_area ul li.quad.line.line_right{border-right:1px solid #c2c2c2;}*/
.tab_area.line_none{border-bottom:none;}
.tab_area ul li .right_line_none{border-right:none;}

.tab_area ul li.sub{width:445px;border-bottom:1px solid #888888;}
.tab_area ul li.sub.none{width:445px;}
.tab_area ul li.sub a{position:relative;display:block; height:65px; line-height:65px; color:#2a2a2a; font-size:24px; border-bottom:none;border-left:none;background:#fff;}
.tab_area ul li.sub a.last{border-right:none;}
.tab_area ul li.sub a:hover{color:#a9c14f;}
.tab_area ul li.sub a:hover span{margin-left:-64px;position:absolute;bottom:-1px;background:#a9c14f;width:127px;height:6px;}
.tab_area ul li.sub a.on{color:#a9c14f;}
.tab_area ul li.sub a.on span{margin-left:-64px;position:absolute;bottom:-1px;background:#a9c14f;width:127px;height:6px;}

/*강사지원*/
.support{margin:50px 0 0 0;}
.support table{width:100%;margin:15px 0 0 0;border-top:4px solid #192d64;}
.support table tr th{padding:13px 0 13px 54px;width:116px;background:#f7f7f7;text-align:left;font-size:18px;font-weight:400;border-bottom:1px solid #eaeaea;}
.support table tr td{padding:13px 13px 13px 12px;width:694px;text-align:left;font-size:18px;font-weight:500;border-bottom:1px solid #eaeaea;}
.support table tr td input[type=text]{padding:10px;width:319px;height:16px;line-height:16px;border:1px solid #d8d8d8;}
.support table tr td select{width:212px;height:43px; padding-left:5px;line-height:26px;border:1px solid #d8d8d8;font-size:15px;font-family:"Noto Sans KR", sans-serif;}
.support table tr td input[type=tel]{padding:10px;width:85px;height:16px;line-height:16px;border:1px solid #d8d8d8;}
.support table tr td input[type=email]{padding:10px;width:319px;height:16px;line-height:16px;border:1px solid #d8d8d8;}
.support table tr td textarea{padding:5px;width:682px;height:226px;line-height:16px;border:1px solid #d8d8d8;}
.support table tr td input[type=file]{width:319px;height:26px;padding:10px 0;line-height:16px;border:none;}
.support table tr td span{margin:0 5px;display:inline-block;width:9px;text-align:center;}
.support table tr td label{display:none;}
.support .support_btn{width:100%;text-align:center;}
.support .support_btn button{margin:15px 0 0 0;padding:13px 0 18px 0;width:170px;line-height:18px;font-size:18px;color:#fff;background:#192d64;border:none;font-family:"Noto Sans KR", sans-serif;}


.featureset {
    max-width: 1200px;
    margin: 0 auto;
}

.feature {
    margin-bottom: 0;
}

.featurecontent {
    display: flex;
    align-items: center;
    width:100%;
    background: #fafafa;
}

/* 홀수 아이템 - 이미지 왼쪽 */
.feature:nth-child(odd) .featurecontent {
    flex-direction: row;
}

/* 짝수 아이템 - 이미지 오른쪽 */
.feature:nth-child(even) .featurecontent {
    flex-direction: row-reverse;
}

.card {
    flex: 0 0 50%;
    min-width: 0;
}

.card img {
    width: 100%;
    height: auto;
}

/* .card img:hover {
    transform: translateY(-5px);
} */

.featurecontent > .featurecontent {
    flex: 0 0 50%;
    min-width: 0;
}

.share {
    list-style: none;
    text-align: center;
    width: 100%
}

.share li {
    margin-bottom: 16px;
}

.share li:first-child {
    font-size: 14px;
    color: #d4d7df;
    letter-spacing: 2px;
    text-transform: uppercase;

}
.feat_tit, .s02_set_tit, .s02_con3>.feat_tit {
    font-size: 32px;
    font-weight: 700;
    color: #182e65;
    line-height: 1.3;
    padding-bottom: 16px;
    position: relative;
}
.feat_tit::after {
    content: '';
    position: absolute;
    left: 45%;
    bottom: 0;
    width: 40px;
    height: 1px;
    background-color: #222;
}

.feat_box {
    background: #f6f6f6;
    padding:50px;
    width: auto;
}

.feat_box_tit{
    font-size: 32px;
    color: #182e65;
    line-height: 1.3;
    padding-bottom: 16px;
    position: relative;
    font-weight: 400;
    font-family: "NotoKR-Medium Medium";
}
.feat_box_tit::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -10px;
    width: 15px;
    height: 1px;
    background-color: #222;
}
.s02_con li.tit_k{
    font-size: 32px;
    color: #182e65;
    line-height: 1.3;
    padding-bottom: 16px;
    font-weight: 400;
    font-family: "NotoKR-Medium Medium";
}
.tit_b {
  font-weight: bold;
}
.feat_con {
    font-family: "NotoKR-Medium Medium";
    margin-top:30px;
    color:#2a2a2a;
    font-size:20px;
    line-height: 1.5;
    font-weight: 350;
    text-align: justify;
    letter-spacing: 0.1px;
}
.site_tit {
    font-size: 25px;
    font-weight: 700;
    color: #182e65;
    padding-bottom: 16px;
    position: relative;
    padding-left:20px;
}
.site_tit::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 5px;
    height: 23px;
    background-color: #182e65;
}
.s02_con3 {
  text-align: center !important;
}
.share li:first-child, .s02_con3 li:first-child {
    font-family: 'Noto Serif KR', serif;
}
.share li:last-child {
    font-size: 18px;
    color: #666;
    line-height: 1.8;
}

.root_daum_roughmap .cont {
  margin-bottom:30px;
  background: #3e4978;
}
.root_daum_roughmap .section_address .tit, .root_daum_roughmap .section_address .txt {
  color:#fff !important;
  font-size:16px !important;
}
.s02_box {
  display: flex;
  align-items: center;
  gap: 15px;
  position: relative;
  padding-bottom:20px
}
.s02_box::after {
  content: '';
  position: absolute;
  top: -5px;
  left: 0;
  width: 1px;
  height: 71px;
  background-color: #40679f;
}

.s02_box2::after {
  content: '';
  position: absolute;
  top: -9px;
  left: 0;
  width: 3px !important;
  height: 71px;
  background-color: #40679f;
}
.s02_box div {
    display: block;
}
.s02_tit {
    font-size: 35px;
    font-weight: 700;
    color: #182e65;
    line-height: 0.5;
    padding-bottom: 16px;
    position: relative;
  }
.s02_tit span {
  font-weight: normal;
}
.s02_subtit {
  display: block;
  color:#b8bccb;
  font-family: 'Noto Serif KR', serif;
  letter-spacing: 1px
}
.s02_subtit span {
  color:#40679f;
}
.s02_count {
  transform: rotate(90deg);
  transform-origin: center center;
  font-size: 18px;
  font-weight: bold;
  color: #42699e;
  margin-top:-39px;
}

.s02_con, .s02_con3 {
  padding:40px;
  position: relative;
}
.s02_con_tit {
  margin:20px auto;
  width: 80px;
  height: 80px;
  border-radius: 50%;   /* 원으로 만듦 */
  background-color: #2668a2;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom:40px

}
.s02_con_tit::after{
  content: '';
  position: absolute;
  left: 48.5%;
  top:38%;
  width: 15px;
  height: 1px;
  background-color: #222;
}
.s02_con li {
  font-family: "NotoKR-Medium Medium";
  color:#2a2a2a;
  font-size:20px;
  line-height: 1.5;
  font-weight: 350;
  text-align: justify;
}
.mb_50 {
  margin-bottom: 50px
}
.talc {
  text-align: center !important;
}
.s02_con2 li:first-child:after {
  content: '';
  background-color: #222;
  position: absolute;
  top:68%;
  left: 48.5%;
  width: 15px;
  height: 1px;
}
.s02_con2 li {
  list-style: none;
  position: relative;
  padding-left: 15px;
}

.s02_con3 li, .s02_con3 li:last-child{
  font-size: 20px;
  color: #2a2a2a;
  position: relative;
  text-align: justify;
  line-height: 1.5;
  padding-left: 15px;
  margin-bottom: 0;
}
.s02_con2 li::before,
.s02_con3 li::before {
    content: '\2022';
    position: absolute;
    left: 0;
    margin-top: 0;
    padding: 0;
    color: #41679f;
}
.s02_con3 li:first-child, .s02_con3 li:nth-child(2) {
  text-align: center;
  padding-left: 0 !important;
}
.s02_con3 li:nth-child(2) {
  font-size: 32px;
  font-weight: 700;
  color: #182e65;
  line-height: 1.3;
  padding-bottom: 16px;
  position: relative;
  margin-bottom: 15px;
}
.s02_con4 li:nth-child(2)::after {
  left:48% !important;
}
.s02_con3 li:nth-child(2)::after {
    content: '';
    position: absolute;
    left: 45%;
    bottom: 0;
    width: 15px !important;
    height: 1px;
    background-color: #222;
}
.txtac {
  text-align: center;
  border:1px solid #ccc;
  padding:20px;
  color:#41679f;
  margin-top:0;
}
.s02_con3 li:first-child::before, .s02_con3 li:nth-child(2)::before {
  display: none;
}
.dpnb::before {
  display: none;
}
.s02_con2 li.s02_star {
  text-align: center;
  padding-bottom: 40px;
}
.s02_con2 li.s02_star::before {
  display: none;
}

.s02_con2 li:first-child::before {
  display: none !important;
  text-align: center;
}

.s02_star {
  color: #b7b7b7 !important;
}
.s02_star span {
  color:#41679f;
}
.s02_con2 b {
  color:#41679f;
}
.s02_con4 li {
  letter-spacing: -0.9px !important;
}
.lesson-section {
    position: relative;
    width: 100%;
    max-width: 100%;
    min-height: 320px;
    padding: 80px 20px;
    overflow: hidden;
    margin-bottom: 50px;
    box-sizing: border-box;
}

.lesson-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: linear-gradient(135deg, #f5f5f0 0%, #e8e8e0 100%);
}

/* 피아노 건반 배경 */
.piano-keys {
    position: absolute;
    top: 0;
    right: 0;
    width: 60%;
    height: 100%;
    opacity: 0.15;
    background: repeating-linear-gradient(
        90deg,
        #fff 0px,
        #fff 40px,
        #333 40px,
        #333 42px
    );
}

/* 악보 패턴 */
.music-notes {
    position: absolute;
    top: 20%;
    left: 5%;
    width: 200px;
    height: 200px;
    opacity: 0.08;
    font-size: 100px;
    color: #4a6fa5;
}


/* 피아노 (간단한 표현) */
.piano {
    position: absolute;
    bottom: 0;
    left: 5%;
    width: 300px;
    height: 120px;
    opacity: 0.4;
}

.piano-body {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 80px;
    background: linear-gradient(180deg, #1a1a1a 0%, #000 100%);
    border-radius: 10px 10px 0 0;
}

.piano-keys-container {
    position: absolute;
    bottom: 30px;
    left: 10px;
    width: 280px;
    height: 50px;
    display: flex;
    gap: 2px;
}

.white-key {
    flex: 1;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 0 0 3px 3px;
}

/* 배경 오버레이 */
.lesson-bg::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.3);
}

/* 카드 컨테이너 */
.lesson-container {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
    box-sizing: border-box;
    display: flex;
    gap: 30px;
    justify-content: center;
    align-items: stretch;
}

.lesson-card {
    position: relative;
    flex: 1;
    max-width: 380px;
    background: #fff;
    border-radius: 15px;
    padding: 45px 30px 30px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.1);
    text-align: center;
    box-sizing: border-box;
}

.lesson-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 8px 30px rgba(0,0,0,0.25);
}

.card-number {
    position: absolute;
    top: -30px;
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
    width: 60px;
    height: 60px;
    background: #4a6fa5;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    font-weight: bold;
}

.card-number span {
    transform: rotate(-45deg);
    display: block;
}

.card-title {
    font-size: 26px;
    font-weight: bold;
    margin: 30px 0 15px;
    color: #4b6fa5;
}

.title-underline {
    width: 15px;
    height: 1px;
    background: #333;
    margin: 25px auto 25px auto;
}

.card-text, .card-text div{
    font-size: 18px;
    line-height: 1.9;
    color: #2a2a2a;
    min-height: 85px;
    letter-spacing: -2.1px;
}
 .card-text div {
   text-align: left !important;
   margin-left:40px;
   min-height: 0;
 }
 .card-text div::before {
   content: '\2022';
   position: absolute;
   left: 45px;
   margin-top: 0;
   padding: 0;
   color: #41679f;
 }
.violin-section {
    position: relative;
    width: 100%;
    min-height: 640px;
    padding: 80px 0 40px 0;
    overflow: hidden;
    margin-bottom:50px;
}

.violin-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: linear-gradient(135deg, #f8f8f5 0%, #e5e5df 100%);
}

/* 배경 이미지 영역 */
.bg-images {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.4;
}

.bg-violin-left {
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background: url('violin-bg-left.jpg') center center/cover no-repeat;
}

.bg-violin-right {
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    background: url('violin-bg-right.jpg') center center/cover no-repeat;
}

/* 카드 컨테이너 */
.violin-container {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 20px;
}

.violin-card {
    background: #fff;
    border-radius: 12px;
    padding: 50px 30px 35px;
    text-align: center;
    box-shadow: 0 4px 20px rgba(0,0,0,0.12);
    position: relative;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border-bottom: 4px solid #4a6fa5;
}

.violin-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 8px 30px rgba(0,0,0,0.2);
}
.card-title2 {
      font-size: 24px;
      font-weight: bold;
      margin: 20px 0 10px;
      color: #2c3e50;
      line-height: 1.4;
  }
.ttt2::after {
  top:30% !important;
}
.ttt3::after {
  top:122% !important;
}
.ttt4::after {
  top:46% !important;
}
.ttt5::after {
  top:35% !important;
}
.s02_con_tit3 {
  margin:20px auto;
  width: 90px;
  height: 90px;
  border-radius: 50%;   /* 원으로 만듦 */
  background-color: #2668a2;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom:40px;
  padding-left:0 !important;
  left: 12%;
}
.card-icon {
    width: 100%;
    text-align: center;
    margin-top: auto; /* 자동으로 하단으로 밀림 */
}
.s02_con_tit3::after{
  content: '';
  position: absolute;
  left: 48.5%;
  top:30%;
  width: 15px;
  height: 1px;
  background-color: #222;
}
.ttl {
  left:30%;
}
.ttl2 {
  left:5%;
}
.ttl0 {
  left:0;
}
.mgt80 {
  margin-top:80px;
}
.mgt85 {
  margin-top:85px;
}
.mgt40 {
  margin-top:40px;
}
.mgt20 {
  margin-top:20px;
}
