﻿@charset "utf-8";
/**************************************************

	Respond.css

**************************************************/
/**************************************************
	Setting Device Width
**************************************************/
@media screen and (min-width: 750px) and (max-width: 1400px){#_device_pc{display: none;} #_device_ta{display: block;} #_device_mo{display: none;} .__pc{display: none !important;} .__ta{display: block !important;} .__mo{display: none;}}
@media screen and (max-width: 750px){#_device_pc{display: none;} #_device_ta{display: none;} #_device_mo{display: block;} .__pc{display: none !important;} .__ta{display: none;} .__mo{display: block !important;} }

/**************************************************
	아이폰 하이브리드앱에서 노치 겹침현상 방지
    ( 노치 높이 만큼 html에 자동으로 padding 부여 )
**************************************************/
html{
    padding-top: constant(safe-area-inset-top);
    padding-top: env(safe-area-inset-top);
}
#header{
    padding-top: constant(safe-area-inset-top);
    padding-top: env(safe-area-inset-top);
}

/**************************************************
	Layout
**************************************************/
@media screen and (max-width: 1400px) {

	html{min-width: 320px;overflow-x: hidden;}
    body{padding-top: 50px; overflow: hidden}
    img{max-width:100%;}

    #wrap {overflow: hidden}

	#header{position: fixed;top: 0;left: 0;width: 100%;box-shadow: 0 3px 3px rgba(0,0,0,0.05); background: #fff; border: 0; overflow: hidden;}
	#header .inner{width: auto;height: 55px;}
    #header .logo{position: absolute;top: 0;left: 20px;height: 100%;line-height: 55px;}
    #header .logo img{width: auto;max-width: 120px;max-height: 40px;}
    #header .logo img.bl {display: inline-block}
    #header .logo img.wt {display: none}
    #header:after{content: '';display: block;position: absolute;bottom: -1px;width: 100%;height: 1px;background: rgba(0,0,0,0.05);}

	#gnb{display: none;}
    #tnb{display: none;}

    #hd-lan{display: none;}
    #hd-sch{display: none;}
    #slideMenu {display: none;}

    #mainBottom {height: auto !important}
    #footer .inner {flex-flow: row wrap; padding: 10px 0}
    #footer .inner > div {width: 100%}
    #footer .right {text-align: center}
    #footer .right dl {padding: 5px 10px !important}
    #footer .right dl:last-child {margin: 0}
    #footer .right dl dt {padding-bottom: 10px; margin-bottom: 10px; font-size: 13px; line-height: 18px}
    #footer .right dl dt:after {width: 20px}
    #footer .right dl dd p {padding-left: 80px; font-size: 11px; line-height: 19px}
    #footer .right dl dd a {font-size: 13px; line-height: 20px}
    #footer .right dl dd span {margin-top: 3px; font-size: 10px; line-height: 16px}
    #footer .left .ft-logo {margin: 20px 0 5px; text-align: center}
    #footer .left .ft-logo img {height: 16px}
    #footer .copyright {font-size: 11px; line-height: 40px}
    #footer .ftWrap{width: auto;padding: 15px 0;}
    #footer address{font-size: 10px;line-height: 13px;color: #b3b3b3;font-style: normal;text-align: center;}
    #footer address hr{display: block;border: none;margin: 0;}

    #sns-ico{margin-top: 15px;text-align: center;}
    #sns-ico li{margin: 2px;}
    #sns-ico li img{width: 25px;height: auto;}

    #ft-fam{display: none;}

    #gotop{display: none;}

    #fnb{margin: 0 0 5px; text-align: center;}
    #fnb > li{display: inline-block;padding: 0 5px;}
    #fnb > li:first-child{padding-left: 0;background: none;}
    #fnb > li:not(:first-child):before {display: none}
    #fnb > li a{font-size: 11px;color: #b3b3b3;letter-spacing: -1px;line-height: 20px;}

    #slide-btn{display: block;width: 55px;height: 55px;}
    #slide-btn button {width: 24px; height: 18px;}
    #slide-btn button:before {width: 20px}
    #slide-btn button:after {width: 17px}


    #slide-bg{position: fixed;z-index: 200;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0,0,0,0.3);}
    #slide-bg.on{display: block;}
    #slide-close{position: absolute;top: 0;right: 0;width: 60px;height: 55px;background: rgba(0,0,0,0.2) url('../img/layout/slide-close.png') no-repeat center center;background-size: 18px auto;}

    #slide-menu{position: fixed;top: 0;right: 0;width: calc(100% - 55px);height: 100%;display: none;background: #fff;z-index: 201;overflow-y: auto;transition: all 0.3s cubic-bezier(0.930, 0.635, 0.650, 0.970);}
    #slide-menu .tit{height: 55px;position: relative;background: var(--slidebar-bg-color);}
    #slide-menu.on{display: block;}

    #tnb-mo{padding: 0 20px;line-height: 50px;border-bottom: 1px solid #ddd;background: #f7f7f7;}
    #tnb-mo > li{display: inline-block;margin-right: 15px;vertical-align: middle;}
    #tnb-mo > li a{font-size: 13px;color: #666;letter-spacing: -1px;}

    #gnb-mo > li{border-bottom: 1px solid #eee;}
    #gnb-mo > li > a{position: relative;display: block;line-height: 45px;padding: 0 20px 0 37px;font-size: 14px;letter-spacing: -1px;color: #333;text-decoration: none;}
    #gnb-mo > li > a:before{content: '\f12f';display: block;font-family: axicon;position: absolute;top: calc(50% - 1px);left: 20px;font-size: 13px;color: #999;line-height: 0;}
    #gnb-mo > li.active{border-top: 1px solid #ccc;margin-top: -1px;background: #f7f7f7;}
    #gnb-mo > li.active > a:before{transform: rotate(180deg);}
    #gnb-mo > li > ul  {border-top: 1px solid #e1e1e1;border-bottom: 1px solid #ccc;margin-bottom: -1px;background: #f7f7f7;display: none;}
	#gnb-mo > li > ul > li {  }
    #gnb-mo > li > ul > li > a { display:block; line-height:30px;padding:8px 20px 8px 35px !important; font-size: 14px;color: #666;text-decoration: none;}
    #gnb-mo > li.hidden-gnb{display: none;}
	
	#gnb-mo .thr_gnb { border-top: 1px solid #e1e1e1; border-bottom: 1px solid #e1e1e1; }
    #gnb-mo .thr_gnb li + li { border-top: 1px solid #e1e1e1; }
    #gnb-mo .thr_gnb a { display:block; line-height: 30px;font-size: 14px;color: #666;text-decoration: none;padding:8px 20px 8px 35px !important; }
    #gnb-mo .thr_gnb a span { display:inline-block; padding-right:5px; font-size:12px; }  

    #hd-lan-mo{position: absolute;top: 0;left: 20px;z-index: 92;}
    #hd-lan-mo > a{display: block;line-height: 55px;padding: 0 10px 0 20px;font-size: 12px;color: #fff;text-decoration: none;text-transform: uppercase;background: url('../img/layout/hd-lan-ico-mo.png') no-repeat 0 center / 15px auto, url('../img/layout/hd-lan-spr-mo.png') no-repeat right center / 6px auto;}
    #hd-lan-mo > ul{position: absolute;top: 40px;left: 50%;display: none;width: 80px;margin-left: -40px;padding: 10px 0;border: 1px solid #b8b8b8;background: #fff;}
    #hd-lan-mo > ul:before{position: absolute;top: -7px;left: 50%;content: '';display: block;width: 6px;height: 7px;margin-left: -3px;background: url('../img/layout/hd-lanbox-spr-mo.png');}
    #hd-lan-mo > ul li a{display: block;font-size: 12px;line-height: 20px;color: #666666;text-decoration: none;text-align: center;text-transform: uppercase;}
    #hd-lan-mo.on > ul{display: block;}

    #hd-sch-mo{position: absolute;top: 50%;transform: translate(0, -50%);left: 90px;z-index: 91;}
    #hd-sch-mo .btn{display: block;width: 21px;height: 21px;background: url('../img/layout/hd-sch-btn-mo.png') no-repeat center center;background-size: 16px auto;text-indent: -999em;border: none;}
    #hd-sch-mo form{position: fixed;display: none;top: 55px;right: 0;width: 80%;padding-right: 50px;border: 1px solid #333;border-width: 1px 0 1px 0;overflow: hidden;background: #fff;box-sizing: border-box;}
    #hd-sch-mo legend{display: none;}
    #hd-sch-mo .inp{width: 100%;height: 38px;line-height: 38px;text-indent: 10px;background: none;border: none;font-size: 12px;}
    #hd-sch-mo .sbm{position: absolute;top: 0;right: 0;width: 40px;height: 40px;background: #333 url('../img/layout/hd-sch-btn-mo.png') no-repeat center center;background-size: 18px auto;border: none;text-indent: -999em;}
    #hd-sch-mo.on form{display: block;}
    
    #hd-sch-pop{position: fixed;top: 0;left: 0;width: 100%;z-index: 202;box-shadow: 3px 10px 30px rgba(0,0,0,0.1);padding: 0;border: none;}
    #hd-sch-pop form{width: auto;}
    #hd-sch-pop .inp{width: calc(100% - 80px);text-indent: 10px;font-size: 14px;}
    #hd-sch-pop .sbm{width: 40px;}
    #hd-sch-pop .sbm:after{font-size: 16px;}
    #hd-sch-pop .close{width: 40px;}
    #hd-sch-pop .close:after{font-size: 16px;}

    /* Site Layer Popup */
    .sp-pop{top: 65px !important;left: 5% !important;width: 90% !important;height: auto !important;}
    .sp-pop .img{position: relative;min-height: 100px;padding-bottom: 30px;}
    .sp-pop .img img{max-width:100%;vertical-align: top;}
    .sp-pop .btns li{height: 30px;}
    .sp-pop .btns li a,
    .sp-pop .btns li label{line-height: 28px;}

    /* Table */
    .table_scroll_wrap{position: relative;overflow-x: auto;}
    .table_scroll_wrap > table{min-width: 800px;}
    .table_scroll_wrap .scroll_alert{position: absolute;bottom: 0;right: 0;z-index: 2;background: rgba(0,0,0,0.7);line-height: 40px;padding: 0 20px;font-size: 12px;letter-spacing: -1px;color: #fff;text-align: center;white-space: nowrap;}
    .table_scroll_wrap .scroll_alert i{font-size: 20px;margin-left: 10px;display: inline-block;vertical-align: middle;}
    .table1 colgroup{display: none;}
	.table1 tr > *{padding: 10px 5px;font-size: 12px;line-height: 16px;}
	.table1 tbody th{width: 80px;}
	.table1 .inp{width: 40%;font-size: 13px;padding: 0 10px;letter-spacing: -1px;}
	.table1 .w100p{width: 100% !important;}	
	.table1 .w50p{width: calc(50% - 8px);}	
	.table1 .w33p{width: calc(33% - 8px);}	
	.table1 select{padding: 0 5px;font-size: 13px;letter-spacing: -1px;}
	.table1 textarea{height: 150px;font-size: 13px;line-height: 16px;padding: 10px;letter-spacing: -1px;}
    .table1 label{font-size: 13px;}
	.table1 em.tbl_sment{font-size: 13px;}
	.table1 .fileWrap .addFile{display: block;margin-top: 5px;margin-left: 0;}
	.table1 .fileWrap input[type=file]{width: 100%;}
    .table1 .many-inputs{display: flex;justify-content: space-between;flex-wrap: wrap;}
    .table1 .many-inputs > *{display: inline-block;}
    .table1 .many-inputs .hipen{font-size: 12px;width: 10px;line-height: 35px;}

    /* Tab */
    .tab1{margin-bottom: 20px;}
    .tab1 li a{font-size: 14px;line-height: 50px;}
    
    /* Button */
    .btnWrap{ margin-top: 20px; }
    .btn1{padding: 0 20px;height: 45px;line-height: 45px;font-size: 15px;}
    .btn2{padding: 0 20px;height: 45px;line-height: 45px;font-size: 15px;}
    .btn3{padding: 0 20px;height: 45px;line-height: 45px;font-size: 15px;}
    .btn1.small,
    .btn2.small,
    .btn3.small{padding: 0 20px;height: 40px;line-height: 40px;font-size: 14px;}

    .sb-btn.type11{height: 30px;line-height: 30px;padding: 0 8px !important;background: #545c73;border: 1px solid #3b4151;color: #ffffff !important;font-size: 14px;color: #ffffff !important;min-width: 80px;}
    .sb-btn.type22{height: 30px;line-height: 30px;padding: 0 8px !important;background: #f7f7f7;border: 1px solid #ddd;color: #000000 !important;font-size: 14px;color: #2e2e2e !important;min-width: 80px;}

    /* Etc */

}

/**************************************************
	Ajax Popup
**************************************************/
@media screen and (max-width: 1400px) {

    .layer-ajaxpopBG{z-index: 300;}
    .layer-ajaxpop{top: 50%;left: 20px;transform: translate(0, -50%);padding-top: 50px;width: calc(100% - 40px) !important;height: auto !important;}
    .layer-ajaxpop .pop-tit{height: 50px;}
    .layer-ajaxpop .pop-tit h3{font-size: 14px;line-height: 50px;}
    .layer-ajaxpop .pop-tit .close{width: 50px;height: 50px;line-height: 50px;}
    .layer-ajaxpop .pop-tit .close:after{line-height: 50px;font-size: 14px;}

    .layer-ajaxpop .pop-wrap{height: auto;max-height: calc(100vh - 90px);}

    /* sitemap */
    .layer-ajaxpop .sitemap > li{width: 49%;}
    .layer-ajaxpop .sitemap > li > a{font-size: 14px;}
    .layer-ajaxpop .sitemap > li ul{padding: 10px 0;}
    .layer-ajaxpop .sitemap > li ul li a{font-size: 13px;line-height: 16px;}

}


/**************************************************
	Main
**************************************************/
@media screen and (max-width: 1400px) {

    #main {overflow: hidden}
    #main #mainWrap{width: auto;margin: 0;padding: 20px 15px;}

    #main .section {height: auto !important}
    #main .section .fp-tableCell {height: auto !important;}

    #main .visual .text h5 {font-size: 30px; line-height: 40px}
	#main .visual .text h5 > span {font-size: 30px; line-height: 40px}
    #main .visual .text p {margin-top: 15px; font-size: 16px; line-height: 25px}
    #main .visual .roll .item img{position: static;margin-left: 0;width: 100%;height: auto;}
    #main .visual .roll .slick-arrow {bottom: 42px; width: 35px; height: 35px}
    #main .visual .roll .slick-prev {left: calc(50% - 150px)}
    #main .visual .roll .slick-next {right: calc(50% - 150px)}
    #main .visual .roll .slick-dots {bottom: 50px}
    #main .visual .roll .slick-dots li {padding-left: 30px}
    #main .visual .roll .slick-dots li.slick-active {padding-right: 95px}
    #main .visual .roll .slick-dots li button {font-size: 14px}
    #main .visual .roll .slick-dots li.slick-active span {left: 30px; max-width: 80px; margin-top: -1px}
    #main .visual .roll .slick-dots li.slick-active span:after {width: 80px; margin-top: -1px}

    #main .title > span {font-size: 56px; line-height: 21px}
    #main .title h5 {margin: 10px 0; font-size: 20px; line-height: 32px}
    #main .title p {font-size: 15px; line-height: 26px}
    #main .title a {margin-top: 15px; padding: 0 20px} 
    #main .title a span {padding-right: 30px; font-size: 13px; line-height: 40px; background-size: 12px}

    #main .mainSection01 .fp-tableCell > div {width: 100%}
    #main .mainSection01 .left .thumb {padding-bottom: 35%;}
    #main .mainSection01 .right .title {width: 65%}
    #main .mainSection01 .right .mid {padding: 50px 40px; box-sizing: border-box; font-size: 0;}
    #main .mainSection01 .right .mid > * {display: inline-block; vertical-align: middle}
    #main .mainSection01 .right .mid ul {width: 35%; margin: 0}
    #main .mainSection01 .right .mid ul li a {padding: 0 20px; font-size: 15px; line-height: 50px; background-position: right 20px center; background-size: 15px}
    #main .mainSection01 .right .mid ul li:hover a {background-position: right 20px center; background-size: 15px}
    #main .mainSection02 {padding: 60px 40px; box-sizing: border-box}
    #main .mainSection02 .left {width: 100%; margin-bottom: 30px}
	
    #main .mainSection02 .inner{	max-width:820px; }
	#main .mainSection02 .right .box .thumb .thumb-inner { padding:0 30px; }
    #main .mainSection02 .right {width: 100%; margin-top:0px;}
    #main .mainSection02 .right .box {width: calc(50% - 8px)}
    #main .mainSection02 .right .box .thumb h6 {bottom: 30px; font-size: 24px; line-height: 30px}
	#main .mainSection02 .right .box .thumb h6 span {  font-size: 24px; }	
    #main .mainSection02 .right .box .thumb h6 p {min-height: 66px; margin-top: 15px; font-size: 14px; line-height: 22px}
    #main .mainSection02 .right .box .thumb h6 p br {display: none}
	
    #main .mainSection03 {padding: 60px 40px; box-sizing: border-box}
    #main .mainSection03 .inner {min-height: 0}
    #main .mainSection03 .right {position: static; width: 100%; padding: 0; margin-bottom: 30px}
    #main .mainSection03 .right .ajaxList {margin-top: 20px}
    #main .mainSection03 .right .ajaxList a {font-size: 16px; line-height: 45px}
    #main .mainSection03 .ajaxCont {flex-flow: row wrap}
    #main .mainSection03 .ajaxCont > * {width: 100%; padding: 0 !important}
    #main .mainSection03 .ajaxCont .text {text-align: center}
    #main .mainSection03 .ajaxCont .text img {height: 42px}
    #main .mainSection03 .ajaxCont .text p {margin: 10px 0 15px; font-size: 16px; line-height: 26px}
    #main .mainSection03 .ajaxCont .text a {padding-right: 20px; font-size: 12px; line-height: 18px; background-size: 12px}
    #main .mainSection03 .ajaxCont .image {margin-top: 30px; background-size: 500px; background-position: center}
    #main .mainSection03 .ajaxCont .image img {max-height: 550px}
    #main .mainSection04 {padding: 60px 40px; box-sizing: border-box}
    #main .mainSection04 .inner {background: none}
    #main .mainSection04 .wrap ul {margin-top: 40px}
    #main .mainSection04 .wrap ul li img {height: 60px; margin-bottom: 20px}
    #main .mainSection04 .wrap ul li h6 {padding-bottom: 12px; margin-bottom: 10px; font-size: 21px; line-height: 30px}
    #main .mainSection04 .wrap ul li strong {font-size: 16px; line-height: 26px}
    #main .mainSection04 .wrap ul li p {margin-top: 5px; font-size: 15px; line-height: 23px}

}

@media screen and (max-width: 750px){

    #main .visual .text {padding: 0 20px; margin-top: 15px; box-sizing: border-box}
    #main .visual .text h5 {font-size: 20px; line-height: 30px}
	#main .visual .text h5 > span {font-size: 20px; line-height: 30px}
    #main .visual .text p {margin-top: 10px; font-size: 14px; line-height: 22px}
    #main .visual .roll .slick-arrow {bottom: 25px; width: 32px; height: 32px}
    #main .visual .roll .slick-prev {left: calc(50% - 120px)}
    #main .visual .roll .slick-next {right: calc(50% - 120px)}
    #main .visual .roll .slick-dots {bottom: 30px}
    #main .visual .roll .slick-dots li {padding-left: 20px}
    #main .visual .roll .slick-dots li.slick-active {padding-right: 65px}
    #main .visual .roll .slick-dots li button {font-size: 13px}
    #main .visual .roll .slick-dots li.slick-active span {left: 27px; max-width: 45px; margin-top: -1px}
    #main .visual .roll .slick-dots li.slick-active span:after {width: 45px; margin-top: -2px}

    #main .title > span {font-size: 40px; line-height: 18px}
    #main .title h5 {font-size: 16px; line-height: 26px}
	#main .title h5 > br {display:none;}
	
	
    #main .title a {padding: 0 15px}
    #main .title a span {padding-right: 20px; font-size: 12px; line-height: 36px; background-size: 10px}

    #main .mainSection01 .left .thumb {padding-bottom: 100%}
    #main .mainSection01 .right .mid {padding: 40px 20px}
    #main .mainSection01 .right .mid > * {display: block; width: 100% !important}
    #main .mainSection01 .right .mid ul {margin-top: 20px}
    #main .mainSection02 {padding: 40px 20px}
	#main .mainSection02 .right .box .thumb .thumb-inner { padding:0 15px; }
    #main .mainSection02 .right .box {width: 100%}
    #main .mainSection02 .right .box:last-child {margin: 0; margin-top: 15px}
    #main .mainSection02 .right .box .thumb {padding-bottom: 90%; background-position: center 60%;}
    #main .mainSection02 .right .box .thumb h6 {bottom: 25px; font-size: 18px; line-height: 24px}
    #main .mainSection02 .right .box .thumb h6 span { display:inline-block; font-size: 18px; }	
    #main .mainSection02 .right .box .thumb h6 p {min-height: 0; margin-top: 10px; font-size: 13px; line-height: 20px}
    #main .mainSection03 {padding: 40px 20px}
    #main .mainSection03 .right {margin-bottom: 20px}
    #main .mainSection03 .right .ajaxList {margin-top: 10px}
    #main .mainSection03 .right .ajaxList a {font-size: 14px; line-height: 40px; border-bottom-width: 2px}
    #main .mainSection03 .ajaxCont .text img {height: 35px}
    #main .mainSection03 .ajaxCont .text p {margin: 5px 0 10px; font-size: 14px; line-height: 22px}
    #main .mainSection03 .ajaxCont .text p br {display: none}
    #main .mainSection03 .ajaxCont .image {margin-top: 20px; background-size: contain}
    #main .mainSection03 .ajaxCont .image img {max-height: 380px}
    #main .mainSection04 {padding: 40px 20px}
    #main .mainSection04 .wrap ul {margin-top: 20px}
    #main .mainSection04 .wrap ul li img {height: 42px; margin-bottom: 10px}
    #main .mainSection04 .wrap ul li h6 {font-size: 17px; line-height: 22px}
    #main .mainSection04 .wrap ul li h6:after {width: 22px}
    #main .mainSection04 .wrap ul li strong {font-size: 14px; line-height: 22px}
    #main .mainSection04 .wrap ul li p {font-size: 13px; line-height: 20px}

}

/**************************************************
	Sub
**************************************************/
@media screen and (max-width: 1400px) {

    #sub #content{ width: auto;padding: 50px 20px}

    #sub .sub-vis{height: 200px;}
    #sub .sub-vis h2{padding-top: 0; font-size: 26px; line-height: 34px}
    #sub .sub-vis h2 em{margin-top: 10px; font-size: 14px; line-height: 21px}

    #sub .sub-tit{margin-bottom: 25px}
    #sub .sub-tit h3{font-size: 23px; line-height: 30px}
    #sub .sub-tit p {margin-top: 10px; font-size: 16px; line-height: 24px}

    .lnbWrap{display: none;}

    #status{display: none;}

    #navigator{display: block; border-width: 0 0 1px 0;}
    #navigator > ul{width: auto;border-left: none;padding-left: 40px;}
    #navigator > ul > li{width: 50%;box-sizing: border-box;}
    #navigator > ul > li > a{min-width: 0;font-size: 13px;padding: 0 20px 0 10px;line-height: 40px;background-size: 8px auto;}
    #navigator > ul > li:first-child{position: absolute;top: 0;left: 0;width: 40px;}
    #navigator > ul > li:first-child a{width: 40px;background: none;}
    #navigator > ul > li.d2{border: none;}
    #navigator > ul > li > ul{top: 40px;left: -1px;}
    #navigator > ul > li.d2 > ul{border-right: none;}
    #navigator > ul > li > ul li a{padding: 10px;font-size: 13px;}

    /* 통합검색 */
    #total_search dl{margin-bottom: 30px;}
    #total_search dl dt{padding-bottom: 15px;}
    #total_search dl dt h4{margin-bottom: 0;font-size: 16px;}
    #total_search dl dt .more{bottom: 10px;font-size: 13px;}
    #total_search dl dd{padding: 20px 0;}
    #total_search dl dd .sbj{margin-bottom: 10px;font-size: 16px;}
    #total_search dl dd .txt{font-size: 14px;line-height: 20px;}
    #total_search dl dd ul.inf{position: static;transform: none;margin-top: 10px;}
    #total_search dl dd ul.inf li{margin-left: 0;margin-right: 5px;line-height: 25px;padding: 0 10px;font-size: 13px;}
    #total_search dl dd.gallery > ul{margin: -15px -5px;}
    #total_search dl dd.gallery > ul > li{margin: 10px 5px;width: calc(50% - 10px);}
    #total_search dl dd.gallery .g-sbj{font-size: 14px;line-height: 18px;margin-top: 10px;}
    #total_search dl dd.gallery .g-txt{font-size: 13px;line-height: 16px;margin-top: 5px;}
    #total_search dl dd.gallery .g-inf{margin-top: 10px;}
    #total_search dl dd.gallery .g-inf li{font-size: 13px;}
    #total_search_no_data{margin: 15px 0;padding: 60px 10px;font-size: 13px;}

    /* shop */
    #shopCart{display: block;}
    #shopCart .lef{width: auto;}
    #shopCart .rig{width: auto;}
    #shopCart .rig .btnWrap{margin-top: 10px;}
    #shopCart .rig .btnWrap > *{width: calc(50% - 2px);}
    #shopCart .cartbox dt{width: 60px;}
    #shopCart .cartbox dt img{width: 60px;height: 60px;}
    #shopCart .cartbox dd{width: calc(100% - 75px);margin-left: 15px;padding-top: 0;}
    #shopCart .cartbox dd .tit{margin-bottom: 8px;}
    #shopCart .cartbox dd .tit label{font-size: 14px;line-height: 18px;}
    #shopCart .cartbox dd .opt{margin-bottom: 5px;}
    #shopCart .cartbox dd .opt-modify-btn{font-size: 13px;}
    #shopCart .cartinfo li{padding-left: 50px;font-size: 13px;line-height: 20px;}
    #shopCart .cartinfo li > *{font-size: 13px;}
    #shopCart .carttotal ul li{padding-left: 70px;font-size: 14px;line-height: 20px;}
    #shopCart .carttotal ul li > p{font-size: 14px;}
    #shopCart .carttotal ul li > p strong{font-size: 16px;}
    #shopCart legend{margin-bottom: 10px;font-size: 16px;}
    
    #shopCart.cart .lef .table1 tr > *:last-child{width: 120px;}
    #shopCart.order .lef .table1 tr > *:last-child{width: auto;}
    #shopCart.order .carttotal{margin-top: 0;}



    .absWrap {flex-flow: column-reverse wrap; padding-bottom: 45px}
    .absWrap > * {width: 100%}
    .absWrap .box {margin-bottom: 35px}
    .absWrap .box .tit {padding-bottom: 10px}
    .absWrap .box .tit span {margin-bottom: 15px; padding-right: 60px; font-size: 17px; line-height: 22px}
    .absWrap .box .tit span:after {width: 40px; height: 2px}
    .absWrap .box .tit h5 {font-size: 24px; line-height: 35px}
    .absWrap .box .txt strong {margin-top: 10px; font-size: 18px; line-height: 28px}
    .absWrap .box .txt p {margin-top: 10px; font-size: 15px; line-height: 28px}
    .absWrap .box .txt p br {display: none}
    .absWrap .image {}
    .absWrap .image img {width: 100%}

    .locWrap {left: -20px; width: calc(100% + 40px); margin: 0; margin-bottom: -50px}
    .locWrap .info {max-width: calc(100% - 200px); margin-bottom: -70px; padding: 30px}
    .locWrap .info span {font-size: 14px; line-height: 20px}
    .locWrap .info h5 {margin: 2px 0 10px; font-size: 20px; line-height: 30px}
    .locWrap .info p {padding: 0 10px; font-size: 16px; line-height: 26px}
    /*.locWrap .mapBox > div > div {height: 300px !important}*/

    .divWrap .box {padding: 50px 0}
    .divWrap .box .banner {height: 280px}
    .divWrap .box .banner .mid {padding: 0 40px}
    .divWrap .box .banner h5 {font-size: 30px; line-height: 36px}
    .divWrap .box .banner p {margin-top: 10px; font-size: 16px; line-height: 26px}
    .divWrap .box .banner a {margin-top: 20px; width: 160px; line-height: 42px; font-size: 14px}
    .divWrap .box dl {margin-top: 40px}
    .divWrap .box dl > * {padding: 0}
    .divWrap .box dt {padding-top: 15px; font-size: 22px; line-height: 32px}
    .divWrap .box dt:before {top: 0; transform: none; width: 40px}
    .divWrap .box dd {margin-top: 10px; font-size: 17px; line-height: 30px}
    .divWrap .box dd br {display: none}

    .sbsWrap {left: -20px; width: calc(100% + 40px); margin: 0; margin-bottom: -50px}
    .sbsWrap dl {flex-flow: row wrap !important; height: auto}
    .sbsWrap dl > * {width: 100%}
    .sbsWrap dl dt {padding: 40px 0}
    .sbsWrap dl dt img {height: 300px}
    .sbsWrap dl dd {padding: 40px !important; max-width: 100%}
    .sbsWrap dl dd img {height: 50px; margin-bottom: 25px}
    .sbsWrap dl dd h5 {margin-bottom: 20px; font-size: 26px; line-height: 34px}
    .sbsWrap dl dd p {margin-top: 10px; font-size: 16px; line-height: 30px}
    .sbsWrap dl dd p br {display: none}
    .sbsWrap dl dd a {margin-top: 20px; width: 160px; line-height: 42px; font-size: 14px}

    .stkWrap dl {height: 70px; margin-bottom: 20px}
    .stkWrap dl dt strong {padding-right: 25px; font-size: 32px}
    .stkWrap dl dt strong:after {top: 44%; width: 12px; height: 12px; border-width: 7px}
    .stkWrap dl dd p {padding: 0 15px; font-size: 16px; line-height: 26px}
    .stkWrap dl dd p > * {font-size: 18px}
    .stkWrap dl dd p span {padding-right: 20px}
    .stkWrap dl dd p span:after {top: 57%; width: 10px; border-width: 5px}
    .stkWrap .tbl:not(:last-child) {margin-bottom: 40px}
    .stkWrap .tbl table tr > * {font-size: 15px; line-height: 50px}
    .stkWrap .tbl table tr th {font-size: 16px}

    .recWrap {margin-bottom: -50px}
    .recWrap .banner {left: -20px; width: calc(100% + 40px); height: 260px; margin: 0}
    .recWrap .banner p {font-size: 17px; line-height: 24px}
    .recWrap .banner h5 {margin-top: 5px; font-size: 28px; line-height: 36px}
    .recWrap .tit {padding-bottom: 35px}
    .recWrap .tit span {font-size: 16px; line-height: 22px}
    .recWrap .tit h5 {margin-top: 10px; font-size: 26px; line-height: 34px}
    .recWrap .tit p {margin-top: 10px; font-size: 15px; line-height: 26px}
    .recWrap .diagram {padding: 60px 0}
    .recWrap .diagram figure {margin-bottom: 35px}
    .recWrap .diagram figure img {width: 450px}
    .recWrap .diagram ul {margin: -5px}
    .recWrap .diagram ul li {width: calc(100% / 3 - 10px); height: 300px; margin: 5px}
    .recWrap .diagram ul li .mid {padding: 0 20px; box-sizing: border-box}
    .recWrap .diagram ul li span {font-size: 15px; line-height: 22px}
    .recWrap .diagram ul li h6 {margin: 5px 0 10px; font-size: 20px; line-height: 28px}
    .recWrap .diagram ul li p {font-size: 15px; line-height: 24px}
    .recWrap .diagram ul li p br {display: none}
    .recWrap .process {padding: 60px 0}
    .recWrap .process .box {padding: 30px; text-align: center}
    .recWrap .process .box .step {width: 120px; height: 120px}
    .recWrap .process .box .step.first {margin-right: 20px}
    .recWrap .process .box .step.last {margin-left: 20px}
    .recWrap .process .box .step .mid span {font-size: 12px; line-height: 18px}
    .recWrap .process .box .step .mid h6 {margin-top: 2px; font-size: 16px; line-height: 24px}

    .rleWrap dl dt {padding: 15px 20px}
    .rleWrap dl dt a {font-size: 17px; line-height: 22px; background-size: 16px !important}
    .rleWrap dl dd {padding: 20px; font-size: 14px; line-height: 22px}
    .rleWrap dl dd br {display: none}

    .cst-tab a {width: 170px; padding-bottom: 12px; font-size: 15px; line-height: 18px; border-bottom-width: 2px}

    .infWrap .text {margin: 35px 0 40px}
    .infWrap .text > * {display: block}
    .infWrap .text dt {width: 100%; font-size: 22px; line-height: 30px}
    .infWrap .text dt br {display: none}
    .infWrap .text dd p {margin: 0; margin-top: 10px; font-size: 15px; line-height: 25px}
    .infWrap .step {padding: 40px 0}
    .infWrap .step h5 {font-size: 24px; line-height: 30px}
    .infWrap .step figure {margin-top: 25px}
    .infWrap .target {padding: 50px 0}
    .infWrap .target h5 {font-size: 24px; line-height: 30px}
    .infWrap .target dl {margin-top: 25px}
    .infWrap .target dl dt {flex-basis: 100%; padding: 15px 10px; border-top-width: 3px; font-size: 18px; line-height: 30px; box-sizing: border-box}
    .infWrap .target dl dt br {display: none}
    .infWrap .target dl dd {padding: 0}
    .infWrap .target dl dd p {padding: 12px 43px; font-size: 15px; line-height: 23px}
    .infWrap .target dl dd p br {display: none}
    .infWrap .target dl dd p span {top: 12px; left: 20px}
    .infWrap .protect {padding: 50px 0}
    .infWrap .protect h5 {margin-bottom: 30px; font-size: 24px; line-height: 32px}
    .infWrap .protect h5 p {margin-top: 10px; font-size: 15px; line-height: 23px}
    .infWrap .protect .list .box {padding: 30px 40px 30px 150px}
    .infWrap .protect .list .box img {top: 30px; left: 45px; width: 70px}
    .infWrap .protect .list .box dt {padding-bottom: 15px; margin-bottom: 15px; font-size: 20px; line-height: 28px}
    .infWrap .protect .list .box dd {font-size: 15px; line-height: 25px}
    .infWrap .protect .list .box dd:before {top: 11px}
    .infWrap .link {padding-top: 50px; text-align: center}
    .infWrap .link dl {margin-bottom: 25px; padding: 20px; padding-left: 130px; text-align: left; background-position: left 25px center; background-size: 80px}
    .infWrap .link dt {font-size: 18px; line-height: 26px}
    .infWrap .link dd {margin-top: 5px; font-size: 14px; line-height: 22px}
    .infWrap .link dd br {display: none}
    .infWrap .link a {position: static; display: inline-block; width: 160px; line-height: 42px; font-size: 14px}

    .inqWrap {margin-top: 40px}
    .inqWrap h5 {font-size: 22px; line-height: 30px}
    .inqWrap .box {margin-top: 20px; padding: 20px 25px; padding-left: 130px; background-position: left 25px center; background-size: 80px}
    .inqWrap .box dt {font-size: 18px; line-height: 26px}
    .inqWrap .box dd {margin-top: 5px; font-size: 14px; line-height: 22px}
    .inqWrap .box dd br {display: none}

    .policybox {padding: 25px}
    .his-list {margin-top: 30px; padding-top: 25px}
    .his-list h5 {font-size: 22px; line-height: 30px}
    .his-list ul {margin-top: 20px}
    .his-list ul li {padding: 5px}
    .his-list ul li a {width: auto; padding: 0 20px; font-size: 13px; line-height: 38px}

}


.m_b_style01 {display: none;}

@media screen and (max-width:1440px) {
.m_br_style_new {display:block;}
}

@media screen and (max-width:990px) {
#cont-lnb{width:100%; flex-wrap:wrap; align-items: stretch !important;  gap:5px;  }
	#cont-lnb > li{  display: table;  width:calc(33.3333333333333333333% - 4px); border: 1px solid #ddd;}
	#cont-lnb > li a{ display:table-cell; vertical-align:middle; line-height:1.2;font-size: 12px; height:48px; padding:0 10px; letter-spacing: -1px; text-align:center; } 
}


@media screen and (max-width: 750px){

    #sub .sub-vis {height: 150px}
    #sub .sub-vis h2 {font-size: 21px; line-height: 30px}
    #sub .sub-vis h2 em {margin-top: 5px; font-size: 13px; line-height: 20px}

    #sub .sub-tit {margin-bottom: 20px}
    #sub .sub-tit h3 {font-size: 20px; line-height: 30px}
    #sub .sub-tit p {margin-top: 5px; font-size: 14px; line-height: 21px}
    #sub .sub-tit p br {display: none}
	.m_br_style_new {display:none;} 
	
	
	.absWrap .box .tit h5 strong br {display: block !important;}
	.m_b_style01 {display:block !important;}
	
    .absWrap {padding-bottom: 0}
    .absWrap:before {display: none}
    .absWrap .image {padding: 0 15px 15px 0}
    .absWrap .image:before {width: 250px; height: 250px}
    .absWrap .box .tit {padding-bottom: 0}
    .absWrap .box .tit span {margin-bottom: 10px; padding-right: 50px; font-size: 15px; line-height: 20px}
    .absWrap .box .tit h5 {font-size: 18px; line-height: 28px; word-break: break-all !important;}
    .absWrap .box .tit h5 br {display: none}
    .absWrap .box .txt strong {font-size: 16px; line-height: 24px}
    .absWrap .box .txt p {font-size: 14px; line-height: 22px}

    .locWrap .info {max-width: 90%; padding: 20px; box-sizing: border-box}
    .locWrap .info span {font-size: 13px; line-height: 18px}
    .locWrap .info h5 {font-size: 17px; line-height: 26px}
    .locWrap .info p {display: block; padding: 0; font-size: 14px; line-height: 22px}
    .locWrap .info p:before {display: none}

    .divWrap .box {padding: 40px 0}
    .divWrap .box .banner {height: auto}
    .divWrap .box .banner .mid {padding: 30px 25px}
    .divWrap .box .banner h5 {font-size: 20px; line-height: 28px}
    .divWrap .box .banner p {margin-top: 5px; font-size: 13px; line-height: 21px}
    .divWrap .box .banner p br {display: none}
    .divWrap .box .banner a {margin-top: 10px; width: 120px; line-height: 34px; font-size: 13px}
    .divWrap .box dl {margin-top: 30px}
    .divWrap .box dt {padding-top: 10px; font-size: 18px; line-height: 26px}
    .divWrap .box dt:before {width: 30px}
    .divWrap .box dd {margin-top: 5px; font-size: 14px; line-height: 22px}

    .sbsWrap dl dt {padding: 40px}
    .sbsWrap dl dt img {height: auto}
    .sbsWrap dl dd {padding: 40px 30px !important}
    .sbsWrap dl dd img {height: 40px; margin-bottom: 15px}
    .sbsWrap dl dd h5 {margin-bottom: 15px; font-size: 20px; line-height: 30px}
    .sbsWrap dl dd p {margin-top: 5px; font-size: 14px; line-height: 22px}
    .sbsWrap dl dd a {margin-top: 15px; width: 120px; line-height: 36px; font-size: 13px}

    .stkWrap dl {height: auto}
    .stkWrap dl > * {width: 100%; padding: 15px}
    .stkWrap dl dt {border-bottom: 1px solid #ddd; border-right: 0}
    .stkWrap dl dd p {padding: 0 10px; font-size: 15px; line-height: 24px}
    .stkWrap .tbl table colgroup {display: none !important}
    .stkWrap .tbl table tr > * {padding: 15px 3px; font-size: 11px; line-height: 18px; letter-spacing: -1px}
    .stkWrap .tbl table tr th {font-size: 12px}

    .recWrap .banner {height: 220px}
    .recWrap .banner .mid {padding: 0 20px; box-sizing: border-box}
    .recWrap .banner p {font-size: 13px; line-height: 20px}
    .recWrap .banner h5 {font-size: 20px; line-height: 28px}
    .recWrap .diagram {padding: 40px 0}
    .recWrap .diagram figure img {width: 300px}
    .recWrap .tit {padding-bottom: 30px}
    .recWrap .tit span {font-size: 14px; line-height: 20px}
    .recWrap .tit h5 {margin-top: 5px; font-size: 20px; line-height: 28px}
    .recWrap .tit p {margin-top: 5px; font-size: 14px; line-height: 22px}
    .recWrap .diagram figure {margin-bottom: 30px}
    .recWrap .diagram figure img {width: 260px}
    .recWrap .diagram ul {margin: -5px 0}
    .recWrap .diagram ul li {width: 100%; height: auto; margin: 5px 0; padding: 30px 20px; box-sizing: border-box}
    .recWrap .diagram ul li .mid {padding: 0}
    .recWrap .diagram ul li span {font-size: 14px; line-height: 20px}
    .recWrap .diagram ul li h6 {font-size: 18px; line-height: 24px}
    .recWrap .diagram ul li p {font-size: 14px; line-height: 22px}
    .recWrap .process {padding: 40px 0}
    .recWrap .process .box {padding: 25px}
    .recWrap .process .box:before {top: 30px; left: 50%; transform: translateX(-50%); width: 2px; height: calc(100% - 60px)}
    .recWrap .process .box .step {display: block; margin: 0 auto !important}
    .recWrap .process .box .step.first {margin-bottom: 20px !important}
    .recWrap .process .box .step.last {margin-top: 20px !important}

    .rleWrap dl dt a {font-size: 15px; line-height: 20px; background-size: 13px !important}
    .rleWrap dl dd {font-size: 13px; line-height: 21px}

    .cst-tab a {width: 140px; font-size: 14px}

    .infWrap .text {margin: 25px 0 35px}
    .infWrap .text dt {font-size: 20px; line-height: 28px}
    .infWrap .text dd p {font-size: 14px; line-height: 23px}
    .infWrap .text dd p br {display: none}
    .infWrap .step {padding: 35px 0}
    .infWrap .step h5 {font-size: 22px; line-height: 28px}
    .infWrap .step figure {margin-top: 20px}
    .infWrap .target {padding: 40px 0}
    .infWrap .target h5 {font-size: 20px; line-height: 28px}
    .infWrap .target dl {margin-top: 15px}
    .infWrap .target dl dt {padding: 12px; font-size: 16px; line-height: 24px}
    .infWrap .target dl dd p {padding: 10px 20px; padding-left: 37px; font-size: 14px; line-height: 21px}
    .infWrap .target dl dd p span {top: 10px; left: 18px}
    .infWrap .protect {padding: 40px 0}
    .infWrap .protect h5 {margin-bottom: 20px; font-size: 20px; line-height: 28px}
    .infWrap .protect h5 p {margin-top: 5px; font-size: 13px; line-height: 21px}
    .infWrap .protect h5 p br {display: none}
    .infWrap .protect .list .box {padding: 25px; padding-top: 80px}
    .infWrap .protect .list .box img {top: 25px; left: 25px; width: 50px}
    .infWrap .protect .list .box dt {padding-bottom: 10px; margin-bottom: 10px; font-size: 18px; line-height: 24px}
    .infWrap .protect .list .box dd {font-size: 14px}
    .infWrap .link {padding-top: 40px}
    .infWrap .link dl {margin-bottom: 20px; padding: 20px; padding-top: 80px; background-position: center top 20px; background-size: 50px; text-align: center}
    .infWrap .link dt {font-size: 16px; line-height: 24px}
    .infWrap .link dd {font-size: 13px; line-height: 21px}
    .infWrap .link a {width: 140px; font-size: 14px}

    .inqWrap {margin-top: 30px}
    .inqWrap h5 {font-size: 20px; line-height: 28px}
    .inqWrap .box {padding: 20px; padding-top: 90px; background-position: center top 20px; background-size: 60px; text-align: center}
    .inqWrap .box dt {font-size: 16px; line-height: 24px}
    .inqWrap .box dd {font-size: 13px; line-height: 21px}

    .policybox {padding: 15px}
    .his-list {margin-top: 25px; padding-top: 20px}
    .his-list h5 {font-size: 20px; line-height: 28px}
    .his-list ul {margin-top: 15px}
    .his-list ul li {padding: 3px}
    .his-list ul li a {padding: 0 10px; font-size: 12px; line-height: 32px}
	
	.contGnb { margin-bottom:30px; }
	#cont-lnb{width:100%; flex-wrap:wrap; align-items: stretch !important;  gap:5px;  }
	#cont-lnb > li{  display: table;  width:calc(33.3333333333333333333% - 4px); border: 1px solid #ddd;}
	#cont-lnb > li a{ display:table-cell; vertical-align:middle; line-height:1.2;font-size: 12px; height:48px; padding:0 10px; letter-spacing: -1px; text-align:center; } 

}

.absWrap .box .tit h5 strong br {display:none;}