@charset "utf-8";
/* 공통 헤드에 아이콘, 견적문의, 연락처 등등 */
.tbheader .head-icons{text-align: right;}
.tbheader .head-icons .icons{margin-left:5px;}
.head-icons .head-linkBtn{display:inline-block; padding:0 2em; height:42px; line-height:40px; transition:.2s ease-out}
.head-icons .head-linkBtn.linefff{border:2px solid #fff; color:#fff;}
  .head-icons .head-linkBtn.linefff:hover{border:2px solid #004a90; color:#fff; background: #004a90;}
  .head-icons .head-linkBtn.linefff.menuhover,
  body.headfixed .head-icons .head-linkBtn.linefff{border:2px solid #004a90; color:#fff; background: #004a90;}
  body.headfixed .head-icons .head-linkBtn.linefff:hover{border:2px solid #004a90; color:#fff; background: #004a90;}

  /*전화기 아이콘*/
  .head-icons .head-linkBtn img.white_icon {height:24px; vertical-align: middle; padding-bottom:3px;}
  
.head-icons .head-linkBtn.bgfull{background:#004a90; color:#fff;}
  .head-icons .head-linkBtn.bgfull{background:#004a90; color:#fff;}
.head-icons .head-linkBtn.radius{border-radius: 40px;}
  .head-icons .head-linkBtn.radius{border-radius: 40px;}

.head-icons .head-snsIcon img{width:28px;}
.head-icons .sidebarIcon{ display:none; padding:3px;  vertical-align: middle;}
.head-icons .sidebarIcon .sidebarIcon_block{position:relative; width:28px; height:16px; cursor: pointer;}
.head-icons .sidebarIcon span.line{position:absolute; width:100%; height:2px; border-radius: 2px; background:#fff; left:0; }
  body.headfixed .sidebarIcon span.line{background:#222;}
  .tbheader.subopen .sidebarIcon span.line{background:#222;}
.head-icons .sidebarIcon span.line:nth-child(1){top:0; transform-origin:25% 50%; transition:.3s;}
.head-icons .sidebarIcon span.line:nth-child(2){top:calc(50% - 1px);}
.head-icons .sidebarIcon span.line:nth-child(3){bottom:0; transform-origin:25% 50%; transition:.3s;}
.sidebarIcon.open .sidebarIcon_block{z-index: 105;}
.sidebarIcon.open span.line{background:#222;}
.sidebarIcon.open span.line:nth-child(1){transform:rotate(45deg) translateX(10%);}
.sidebarIcon.open span.line:nth-child(2){opacity:0;}
.sidebarIcon.open span.line:nth-child(3){transform:rotate(-45deg) translateX(10%);}

@media screen and (max-width:1200px){
  .head-icons .sidebarIcon{display:inline-block;}
}
@media screen and (max-width:560px){
  /*.head-icons .head-snsIcon,
  .head-icons .head-linkBtn{display: none;}*/
}
@media screen and (max-width:480px){
  .head-icons .head-snsIcon,
  .head-icons .head-linkBtn span{display: none;}
  .head-icons .head-linkBtn {position:relative; width:38px; height:38px; line-height:auto; border-radius:50%; padding:0;}
  .head-icons .head-linkBtn img.white_icon {position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); padding-bottom:0;}
  .head-icons .sidebarIcon {vertical-align:super;}
}


/* header01 */
.tbheader{
  position:fixed; top:0; left:0; width:100%; height:auto; z-index:100; overflow: hidden; background:transparent;
  -webkit-transition: padding 0.3s, height .3s, top .3s, background .3s,  top 0.3s; -moz-transition: padding 0.3s, height .3s, background .3s, top .3s ; -ms-transition: padding 0.3s, height .3s, background .3s, top .3s; -o-transition: padding 0.3s, height .3s, background .3s, top .3s;  transition: padding 0.3s, height .3s, background .3s, top .3s;
}
.tbheader.subopen{ background-color: #fff; }
.tbheader .tbinner{height:100%;}
.header_sec{display: flex;position:relative; display:flex; align-items: center; height:100px; transition: height .3s ease-out;}

.tbheader .head-logo{padding-right:20px;} /* 로고 사이즈 바뀌면 다시 확인하기 */
.tbheader .head-logo img {height:40px;} 

.tbheader .head-menu{ flex-grow: 1; height:100%; display:flex; align-items: center; text-align: center; justify-content:center;  }
.tbheader .head-menu .category_menu{ display:flex; align-items: center; position: relative; height:100%; }
.tbheader .head-menu .category_menu .mainmenu
{font-size:1.8rem; padding:8px 2.5em; font-weight:400; letter-spacing: 0.05em;}
.tbheader .head-menu .category_menu .mainmenu a{ color:#fff; font-weight:500; position:relative}
  .tbheader.subopen .head-menu .category_menu .mainmenu a { color:#000; }
  body.headfixed .tbheader .head-menu .category_menu:hover .mainmenu a { color:#fff; }
.tbheader .head-menu .subblocks{position:absolute; width:100%; height:auto; top:100px; left:0; padding:10px 0 30px 0; transition: background 0.3s ease-out, top .3s ease-out;}
.tbheader .head-menu .subblocks .subblocks-li{margin-bottom:15px;}
  .tbheader .head-menu .subblocks .subblocks-li a{ color:#000; font-weight:400; font-size:1.6rem; position:relative; transition:color .3s ease-out; }
  .tbheader .head-menu .category_menu:hover .mainmenu a .menuHvEff{width:100%;}
  .tbheader .head-menu .category_menu{transition:background .3s ease-out;}

  .tbheader .head-menu .category_menu:hover{background:#3a8afd;}
  .tbheader .head-menu .category_menu:hover .subblocks{background:#3a8afd}
  .tbheader .head-menu .category_menu:hover .subblocks .subblocks-li a{color:#fff;}
  .tbheader.subopen .head-menu .category_menu:hover .mainmenu a {color: #fff;}
  .tbheader .head-menu .category_menu .subblocks .subblocks-li a:hover{color: #fff;}

/* 스크롤 fixed HEAD + sub메뉴 slideDown시에 */
body.headfixed .tbheader{ background:rgba(255,255,255,1); box-shadow: 0 3px 10px rgb(78 78 78 / 15%);}
body.headfixed .tbheader .header_sec{height:80px;}
body.headfixed .tbheader .head-menu .subblocks{top:80px;}
body.headfixed .tbheader  .head-menu .category_menu .mainmenu a{ color:#000;}

.tbheader .fixedNone{}
.tbheader .fixedInline{display: none;}
body.headfixed .tbheader .fixedNone{display: none;}
body.headfixed .tbheader .fixedInline{display: inline;}
.tbheader.subopen .fixedNone{display: none;}
.tbheader.subopen .fixedInline{display: inline;}
@media screen and (max-width:1500px){
  .tbheader .head-menu .category_menu .mainmenu {font-size:1.6rem; padding:8px 1.5em;}
}
@media screen and (max-width:1200px){
  .tbheader .head-menu{display: none;}
  .tbheader .head-logo{flex-grow: 1;}
  .header_sec,
  body.headfixed .tbheader .header_sec{height:75px;}
}
@media screen and (max-width:768px){
  .tbheader .head-logo img{height:30px;}
}


/* 사이드바 */
.sidebarDim{ display:none; background:rgba(0,0,0,.3); position:fixed; width:100%;height:100%; top: 0; left:0; z-index: 101;}
.sidebarIcon.open .sidebarDim { display:block; }
.sidebar{ right: -100%; position:fixed; padding:0 30px; top: 0; width:100%; max-width:400px;  height:100vh; overflow-y: auto; background:#fff; transition:right .3s; z-index:102; }
  .sidebarIcon.open .sidebar{ right:0; }
.sidebarArea{ height:100%; display:flex; flex-direction : column;  text-align: left; position:relative;}
.sidebar .sidebar_head_wrap,
.sidebar .sidebar_menu,
.sidebar .sidebar_bottom{width:100%;}

.sidebar .sidebar_head{height:100px; transition:height .3s;}
  body.headfixed .tbheader .sidebar .sidebar_head{height:80px;}
  @media screen and (max-width:1024px){
    .sidebar .sidebar_head,
    body.headfixed .tbheader .sidebar .sidebar_head{height:65px;}
  }
  @media screen and (max-width:768px){
    .sidebar .sidebar_head,
    body.headfixed .tbheader .sidebar .sidebar_head{height:55px;}
  }
.sidebar .sidebar_menu{ padding-bottom:80px;/* .sidebar_bottom 만큼 남겨둬야됨 */  }
.sidebar .sidemenuBar{}
.sidebar .category_menu{ padding-bottom:25px;}
  .sidebar .category_menu:first-child{padding-top:20px;}
.sidebar .category_menu .main_menu{ display:inline-block; padding-bottom:5px; font-size:2.4rem; line-height:1.5em; color:#222; cursor: pointer; position:relative;}
.sidebar .category_menu .main_menu::before{opacity:0; width:0; position:absolute; bottom:6px; left:0; height:13px; background: #c9c9c9; transition:width .2s ease-out; content:""; z-index: -1;}
.sidebar .category_menu:hover .main_menu::before{width:100%; opacity:.6;}
.sidebar .category_menu .submenuList{ display:none; width:100%; height:auto; padding-top:10px;}
.sidebar .category_menu .submenuList .submenu{padding:5px 10px;}
.sidebar .category_menu .submenuList .submenu a{ font-size:1.6rem; color:#777; font-weight: 400; }
.sidebar .category_menu .submenuList .submenu:hover a{color:#3a8afd;}

.sidebar .sidebar_bottom{padding-bottom:50px;}
.sidebar_bottom .manageBtnArea{display:flex;}
.sidebar_bottom .manageBtnArea .manageLink{ position:relative; padding:0 13px; line-height:1em; font-weight: 600; color:#989898; transition:color .2s ease-out;}
.sidebar_bottom .manageBtnArea .manageLink:hover{color:#3a8afd;}
.sidebar_bottom .manageBtnArea .manageLink::after{ position:absolute; width:1px; height:100%; top:0; left:0; background:#989898; content: ""; }
  .sidebar_bottom .manageBtnArea .manageLink:first-child{padding-left:0;}
  .sidebar_bottom .manageBtnArea .manageLink:first-child::after{ display:none; }

@media screen and (max-width:560px){
  .sidebar{max-width: 100%;}
}


.sidebar_area .sidebar_menu .res_subblocks .resSubblocks-li:first-child{padding-top:10px;}
.sidebar_area .sidebar_menu .res_subblocks .resSubblocks-li{ }
.sidebar_area .sidebar_menu .res_subblocks .resSubblocks-li a:last-child{margin-bottom:0;}
.sidebar_area .sidebar_menu .res_subblocks a{ margin-bottom:0;}

.sidebar_area .sbbtn_area{ position:absolute; }
.sidebar_area .sbbtn_wrap{ margin:0 -5px; font-size:0; text-align: center; }
.sidebar_area .sbbtn_wrap .tbbtn{ display:inline-block; width:calc(50% - 10px);  margin:0 5px; padding:0; text-align: center; font-size:1.7rem; }
.sidebar_area .sbadmin{margin-top:20px;}
@media (max-width: 560px){
  .sidebar_area{ width:100%; text-align: center;}
  .sidebar_area .sbbtn_wrap .tbbtn{ width:calc(40% - 10px);}
}
@media (max-width: 420px){
  .sidebar_area .sbbtn_wrap .tbbtn{ width:calc(50% - 10px);}
  .sidebar_area{padding:100px 30px;}
}