/*
**  자주사용하는 커스컴 CSS
*/
/*-------- 1.1 Typography --------*/
/* rem reference
10px = 0.625rem
12px = 0.75rem
14px = 0.875rem
16px = 1rem (base)
18px = 1.125rem
20px = 1.25rem
24px = 1.5rem
30px = 1.875rem
32px = 2rem
*/


:root {
  /*----primary-color: #212121;
  --secondary-color:#104cba;
  --border-color: #E5E5E5;
   --foreground-sub-color: #969697;
     --body-background-color: #fff;
  --bg-offwhite-color: #fdfdfd;
  --b_grey2:#b8c8dc;
  --light-grey #f3f6fb;
  --color-1: #ff0071;

 */


 --primary-blue:#004dda;
 --secondary-blue:#0163d2;
 --primary-color:#202026;

 --point-blue:#172bff;
--foreground-sub-color:#969697;
  --border-color: #dddddd;
   --border-color-1: #ededed;
  --border-color-2: #ddd;
 --borderdark-color:#cfcfd0;

  --bg-light-dark-color: #1a1818;
 --grey-sub-color: #f8f8f8 ;
  --light_blue: #598bfd;

  --bg-black-color: #000000;
  --text-white: #fff;
  --bg-whiite: #fff;
  --heading-color: #888;
  --b_grey:#99b2cc;
  --thm-black2:#666666;
  --thm-black3:#121212;
  --thm-grey:#d6d6d6;

  --color-1: #ff0071;
  --color-2: #ff001d;
  --color-3: #5db408;
  --color-4: #00a4e4;
  
  light-green: #eefdfa;
  --primary-red:#ED1D24;
  --grey:#e2eaf3;

  --pink: #ff3c85;
  --green3: #5db408;
  --purple :#9933cc;
  --blue:#3578fa;
  --yel : #cabc25;
  --yel2 :#f2c91f;
  --green: #32a067;
  --red: #e54750;
  --red-2: #fc3333;
  --green2: #3dbf8c;
  --sblue: #06f4e6;
  --sky:#8db6d2;
 --main-color: #1d3cfa; 
  --sub-color: #0985eb;
   --point-color: #00c300;
    --footer-bg: #121212;
  --panel-bg: #22252a;

  --open-sans-fonts: "Open Sans", sans-serif;
  --rubik-fonts: "Rubik", sans-serif;
  --inter-fonts: "Inter", sans-serif;
   --noto-fonts:'Noto Sans KR',"Noto Sans Korean", sans-serif;

  --body-font-size: 1.5rem;
  --body-font-weight: 400;
  --mid-font-weight: 500;
  --body-line-height: 2.8rem;
  --headings-weight: 700;
  --transition: all 0.3s ease 0s;
  --container-fluid-offset: 12rem;
/* Border radius */
  --border-radius-none: 0;
  --border-radius-small: 3px;
  --border-radius-medium: 5px;
  --border-radius-large: 10px;
  --border-radius-circle: 50%;
  --transition: all 0.3s ease 0s;

}



/*-------- 1.1 Typography -------- */
html * {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}


body { background-color: #fff;  
 /*  font-family: Rubik;color:#606269;	font-family:'Noto Sans KR',"Noto Sans Korean", sans-serif; letter-spacing:-0.02em;
font-family: "pretendard", sans-serif;---*/
font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
	font-weight: 500;
	font-size: 14px;
  font-size: 0.875rem; 
	line-height: 24px;
	font-style: normal; 
    color: var(--primary-color);
    padding: 0;
    margin: 0; letter-spacing:-0.02em;
    overflow-x: hidden;	
	}


       
/* Sizes */
.text-xs { font-size: 12px; }
.text-sm { font-size: 14px; }
.text-md { font-size: 16px; }
.text-lg { font-size: 20px; font-weight: 700;}
.text-xl { font-size: 20px;  }

/* Responsive */
@media (max-width: 767px){	
body {font-size: 14px;}
.text-lg { font-size: 16px; }

}


.rounded {
	border-radius: 5px !important;
}
.border-all {
	border: 1px solid #DADADA !important;
}


/*=== >background color ===*/
.btn-wrap         { width: 100%; float: left; margin: 15px 0px;}
.btn-wrap a       { display: block; float: right;  margin-left: 5px; color: #FFF; text-align: center; font-weight: bold;}
.btn-positive     { background-color: #e74c3c; }
.btn-sky        { background-color: #28a7e1; }  
.btn-blue        { background-color: #1982c4; }   
.btn-red          { background-color: #ec5d4f; } 
.btn-gray         { background-color: #707070; } 
.btn-lgray        { background-color: #e9e9e9; color: #777 !important;} 

.bg-transparent { background-color: transparent;}
.bg-light_blue  {background-color:#b8c8dc ;}
.bg-primary {background-color:#e2eaf3;}
.bg-primary_blue{background-color:#004dda;}

.bg-white { background-color: #FFF;}
.bg-black {    background-color: #000;}
.bg-dark2 {    background-color: #15141b;}
.bg-black-light {    background-color: #1C1C1C;}
.bg-gray {    background-color: #F7F9FB;}
.bg-gray2 {    background-color: #f3f6fb;}

.bg-gray3 { background: #E7EDF8;}

.bg-gray-dark {    background-color: #edecff;}
.bg-red {    background-color: #FF4045;}
.bg-green {    background-color: #34bfa3;}
.bg-lightgreen {    background-color: #f4fdf7;}

.bg-yellow {    background-color: #ffb822;}
.bg-yellow-light {    background-color: #feca39;}
.bg-pink {    background-color: #ff3c85;}
.bg-sky {    background-color: #00c5dc;}
.bg-orange {    background-color: #ef9800;}

.bg-blue { background-color: #0163d2; }
.bg-24blue { background-color: #1982c4; }
.bg-24red{ background-color: #ff595d; }
.sky-gradient { background: linear-gradient(135deg, var(--secondary-blue), var(--sub-color));}

.blue-gradient { background: -webkit-linear-gradient(left,#00a4e4, #5db408);}
.red-gradient { background: -webkit-linear-gradient(left,#FF4045, #ff3c85); }
.green-gradient { background: -webkit-linear-gradient(left,#22b14c, #34bfa3); }
.green2-gradient { background: -webkit-linear-gradient(right,#22b14c, #34bfa3); }
.green3-gradient { background: -webkit-linear-gradient(right,#22b14c, #10b85f); }
.pink-gradient { background: -webkit-linear-gradient(left,#fd336f, #fd6c40); }


.bg_gra {
 background: linear-gradient(to right,red,blue);

}
.bg_gra2 {
 background: linear-gradient(#e70914 0%, #ed5526 100%);

}
.bg-gray {
  background-color: #f9f9f9;
}

.bg-theme-small {
  background-color: #edf5ff;
}

.bg-light {
  background-color: #ffffff;
}

.bg-theme {
  background-color: #bb9225;
}


/* Colors */
.text-primary { color: #0f4fb9; }

.text-blue { color:#0051a1; }
.text-red { color: #e83231; }
.text-red2 { color: #e54750; }
.text-info { color: #2786c9; }
.text-sky { color: #05c0fd; }
.text-green { color: #22b14c; }

.text-yel { color: #ddcb03; }
.text-yel2 { color: #edae05; }
.text-warning { color: #f19354; }
.text-danger { color: #e74c3c; }
.text-success { color: #8ac04b; }
.text-dark { color: #1f1f1f; }
.text-light { color: #fff; }
.text-grey { color: #9ca2ab; }
.text-grey2 { color: #7a8391; }
.text-pink { color: #ff3c85; }



/* 영문폰트와 한글폰트 기본Google Fonts
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700;800;900&family=Noto+Sans+KR:wght@400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:400,500,600,700,800&family=Source+Sans+Pro&display=swap');*/

.Mont {font-family: "Montserrat",sans-serif;}
.Poppins{font-family: 'Poppins', sans-serif;}
.op{font-family: 'Open Sans', sans-serif;}




/*-------- 1.2 Structure --------*/

p {
  color: var( --primary-color);
  margin-bottom: 1.5em;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto; }

a {
  color: inherit;
  text-decoration: none;
  color: var( --primary-color);
  -webkit-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s; }

a,
a:hover,
a:focus,
a:active {
  text-decoration: none;
  outline: none;
  color: inherit; }




/*---------------------------------------------------------------
img
---------------------------------------------------------------*/

/* img 기본 설정 중요 및 기본*/
img { border-style: none; height: auto; max-width: 100%;  vertical-align: middle;}

/* class 값을 img로 별도로 줄 때*/
.img {max-width: 100%;transition: all 0.3s ease-out 0s;}

a img, iframe { border: none;}

.border{ border:1px solid var( --border-color);   }


/** 테두리 컬러*/
.border-white{border: 1px solid #fff;}
.col2{padding:5px;}
.col5{padding:0px 5px;}
.col0{padding:0px;}

/* -----------------------------------
           [유지됨] 폼 컨트롤 커스텀 (입력창, 셀렉트 박스)
        ----------------------------------- */
        .form-control, .form-select {
            border-radius: 2px !important;
           /* padding: 0.875rem 1rem !important;*/
			padding:0.65rem 0.60rem !important;/*패딩 간격을 조정해서 입력박스 크기조정*/
            border: 1px solid #ced4da;
            transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
        }
        
        .form-control:focus, .form-select:focus {
            border-color: var(--main-color);
            box-shadow: 0 0 0 0.25rem rgba(29, 60, 250, 0.15);
        }



/* 스크롤바 커스텀 (선택 사항) */


select {  font-size: 14px;
  font-size: 0.875rem; color: #000; font-weight: 600;vertical-align:middle; padding: 5px; border: 1px solid var(--border-color);min-height: 42px; line-height: 32px;  padding-left: 10px;width:100%; min-width: 120px;  cursor: pointer; }
select:focus{ background-color: #ffffff; font-style: normal;   outline: none; -webkit-box-shadow: none;  -moz-box-shadow: none;  box-shadow: none; border-color: 1px solid var(--green2);  outline: 0;  box-shadow: 0 0 0 0.1rem rgba(0, 0, 0, 0.05);}

input[type="checkbox"] { width:1.5rem;  height:1.5rem; height:30px;accent-color:#d95a6f;vertical-align:middle;   }
input[type="radio"] { width: 1.25rem; height:1.25rem;accent-color:MidnightBlue;vertical-align:middle; }
----------------------------------------------------------

input { background:#fff;; color: #000; vertical-align:bottom; border:1px solid var(--borderdark-color); min-height: 42px;   }
input[type='submit'] {
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  color: #fff;
  font-weight:500;
  font-size: 14px;
  font-size: 0.875rem;
  border: 0;
  padding: 10px 20px;
  cursor: pointer;
  outline: none;
  width: 100%;
  -webkit-border-radius: 0 3px 3px 0;
  -moz-border-radius: 0 3px 3px 0;
  -ms-border-radius: 0 3px 3px 0;
  border-radius: 0 3px 3px 0;

  margin-right: -1px; margin-top: -1px;
}


input[type='submit']:hover {
 background-color:  var( --thm-black2);
   color: #fff;
}

/*엑센트 컬러를 루트에 등록해서 사용도 가능*/

/*체크박스 크기 및 컬러*/


.space_btn2 {margin-left:10px;}
.space_btn {margin-right: -1px; margin-top: -1px;margin-left:10px;}


.form-group {margin-bottom: 10px;}


/*레벨값이 위로 움직이는 자바스크립와 함께사용custom_form.js*/
.filter-style3 form .form-group{position:relative;}
.filter-style3 form .form-group .title{
    margin: 0;
    position: absolute;
    font-weight: 500;
    color: #000;
    left: 15px;
    top: 13px;
	transition:all 0.5s;
	-moz-transition:all 0.5s;
	-webkit-transition:all 0.5s;
	-ms-transition:all 0.5s;
	-o-transition:all 0.5s;  font-size: 14px;
  font-size: 0.875rem;
	/*background: var(--b_grey);padding: 0 5px;*/
	 background-color:  var(--bg-whiite);
}



.filter-style3 form .form-group.focused .title{
    top: -8px;
    z-index: 2;
    font-size: 14px;
    font-weight: 500;
    background:#fff;;padding: 0 5px;color: var(--border-color);
}
.filter-style3 form .form-control{
    height: 50px;
    background: transparent;
    border: 1px solid var(--border-color);
    color: #000;
    padding: 10px 25px;
    font-size: 14px;
	z-index: 1;
    position: relative;
}
.filter-style3 form .site-button{
    border-radius: 0;
    padding: 15px 20px;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 500;
}


.filter-style3 textarea {
     border:1px solid var(--border-color);
    width: 100%;
     max-height:120px;min-height:100px;
}

.filter-style3 h3 {
  font-size: 16px;
  font-size: 1rem;
  padding-left: 0px;
  margin-bottom:25px;
  padding-top: 5px;
  display: inline-block;
  color: #444;
}

.filter-style3 h3.new_client img{ max-width:80px;
  
}


/* -----------------------------------
           최적화된 순수 커스텀 라디오 버튼
        ----------------------------------- */
        .custom-radio {
            appearance: none; /* 브라우저 기본 스타일 제거 */
            width: 22px;
            height: 22px;
            border-radius: 50%;
            border: 2px solid #ced4da;
            background-color: #fff;
            margin: 0;
            vertical-align: middle; /* 라벨 텍스트와 높이 맞춤 */
            cursor: pointer;
            position: relative;
        }

        /* 체크 시 바깥 테두리 색상 변경 */
        .custom-radio:checked {
            border-color: var(--main-color);
        }

        /* 체크 시 나타나는 정중앙 점 */
        .custom-radio:checked::after {
            content: "";
            position: absolute;
            top: 50%; left: 50%;
            transform: translate(-50%, -50%);
            width: 10px; height: 10px;
            border-radius: 50%;
            background-color: var(--main-color);
        }

        /* 라벨 텍스트 스타일 */
        .custom-label {
            cursor: pointer;
            vertical-align: middle;
            margin-left: 4px;
            font-size: 0.95rem;
        }




/*---------------------------------------------------------------
2. HEADINGS
--------------------------------------------------------


h2 {
    font-size: 30px;
    line-height: 36px;
    margin-bottom: 25px;
	
}
h3 {
    font-size: 24px;
   line-height: 38px;
    margin-bottom: 28px;
	
}
h4 {
    font-size: 20px;
    line-height:24px;
    margin-bottom:10px;
	
}
h5 {
    font-size: 20px;
    line-height: 24px;
    margin-bottom: 10px;

	
}
h6 {
    font-size: 18px;
    line-height: 20px;
    margin-bottom: 0px;
}

h2,h3,h4,h5,h6 {letter-spacing:-0.04em;	
	margin-top: 0px;
	font-style: normal;
	font-weight: 700;
	text-transform: normal;
}

h2 a,h3 a,h4 a,h5 a,h6 a {	color: inherit;}

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

h2 {	
   font-size: 22px;
    line-height: 24px;
    margin-bottom: 0px;
	margin-top: 0px;
	font-style: normal;
	font-weight: 700;
	text-transform: normal;
}


h3,h4,h5 {	
   font-size: 18px;
    line-height: 24px;
    margin-bottom: 10px;
	margin-top: 0px;
	font-style: normal;
	font-weight: 700;
	text-transform: normal;
}

h6 {	
   font-size: 16px;
    line-height: 16px;
    margin-bottom: 0px;
	
}

p {font-size:14px;
  line-height:16px;
  
}

}

-------*/
/*---------------------------------------------------------------
4. LISTS
---------------------------------------------------------------*/

dl,ul,ol {
    list-style-position: outside;
    padding: 0;
}
ul,ol {
    margin-bottom: 24px;
}
ul li,ol li {
    padding: 0;
}
ul, li {
    margin: 0px;
    padding: 0px;
    list-style: none;
}

dl {
    margin-left: 0;
    margin-bottom: 30px;
}
dl dd {
    margin-bottom: 10px;
}

.list-inline > li{
	padding-left:2px;
	padding-right:2px;
	display:inline-block;font-family: 'Montserrat', sans-serif;
}


.bg-cover {
  background-position: center center;
  background-size: cover;
}

.bg-contain {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}

.bg-fixed {
  background-attachment: fixed;
  background-position: center top;
  background-size: cover;
}




/* 메인 및 서브 오버 bg 배경색들 */
.shadow {
  position: relative;
  z-index: 1;
}

.shadow.dark::after {
  background: #0163d2 none repeat scroll 0 0;
  content: "";
  height: 100%;
  left: 0;
  opacity: 0.8;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

.shadow.dark-hard::after {
  background: #111 none repeat scroll 0 0;
  content: "";
  height: 100%;
  left: 0;
  opacity: 0.1;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

.shadow.light::after {
  background: #ffffff none repeat scroll 0 0;
  content: "";
  height: 100%;
  left: 0;
  opacity: 0.2;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

.shadow.theme::after {
  background: #bb9225 none repeat scroll 0 0;
  content: "";
  height: 100%;
  left: 0;
  opacity: 0.5;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

.shadow.theme-hard::after {
  background: #bb9225 none repeat scroll 0 0;
  content: "";
  height: 100%;
  left: 0;
  opacity: 0.7;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}


.default-padding {
  padding-top: 100px;
  padding-bottom: 100px;
}

.md-padding {
  padding-top: 60px;
  padding-bottom: 60px;
}


.sm-padding {
  padding-top: 30px;
  padding-bottom: 30px;
}

/* Responsive */
@media (max-width: 767px){	
.sm-padding {
  padding-top: 20px;
  padding-bottom: 20px;
}

.md-padding {
  padding-top: 30px;
  padding-bottom: 30px;
}


}

/*추가스페이싱*/

.minus_top_20 {
  margin-top: -22px;
}

.clean-30 {
   margin-top:30px; margin-bottom: 20px;
}



/* --------------------------------------------------------------------------
/* ---마진
/* ----------------------------------------------------------------------------- */
/* Padding */
.p-0 {
  padding: 0;
}

.pt-0 {
  padding-top: 0;
}

.pt-10 {
  padding-top:10px;
}


.pb-0 {
  padding-bottom: 0;
}

.pb-15 {
  padding-bottom: 1.5rem;
}

.pb-20 {
  padding-bottom: 2rem;
}


.mb-15 {
  margin-bottom: 1.5rem;
}
@media only screen and (max-width: 768px) {
  .mb-15 {
    margin-bottom: 1rem;
  }
}

/* Section padding */
.section--padding {
  padding-top:30px;
  padding-bottom: 30px;
margin-top:30px;
margin-bottom:30px;

}

.section--bigpadding {
  padding-top:40px;
  padding-bottom: 40px;
  margin-top:30px;
margin-bottom:30px;

}


/* Section padding2 */
 .banner--padding  {
  padding-top:30px;
  padding-bottom: 30px;margin-top:20px;

}

/* Section padding2 */
 .small--padding  {
  padding-top:10px;
  padding-bottom: 10px;

}



/* Section padding */
.section--main {
  padding-top:50px;
  padding-bottom: 30px;
}

/* Section padding */
.section--sub {
  padding-top:30px;
  padding-bottom: 40px;
}


/* Section padding2 */
 .news--padding  {
  padding-top:10px;
  padding-bottom:60px;
}


@media (max-width: 767px) {
.section--main {
  padding-top:20px;
  padding-bottom: 20px;
}

.section--sub {
  padding-top:10px;
  padding-bottom: 70px;
}
.section--bigpadding {
  padding-top:20px;
  padding-bottom: 20px;
margin-top:20px;
margin-bottom:20px;

}

.section--padding {
    padding-top:10px;
    padding-bottom:10px;
  }
 .banner--padding  {
    padding-top:10px;
    padding-bottom:10px;
  }
.
 {
  padding-top:20px;
  padding-bottom: 20px;
}

 .news--padding  {
  padding-top:10px;
  padding-bottom: 20px;
}

}




/*-------- 3.3 Spacing --------*/

.pad10 {  padding: 10px;}
.pad20 {  padding: 20px;}
.pad200 {  padding: 30px 60px;}

@media (max-width: 767px) {
.pad10 {padding: 5px;}
.pad20 {padding: 10px;}
.pad200 { padding: 0px;}

}


.mt-0 { margin-top: 0px !important; }
.mt-5 { margin-top: 5px !important; }
.mt-10 { margin-top: 10px !important; }
.mt-15 { margin-top: 15px !important; }
.mt-20 { margin-top: 20px !important; }
.mt-25 { margin-top: 25px !important; }
.mt-30 { margin-top: 30px !important; }
.mt-35 { margin-top: 35px !important; }
.mt-40 { margin-top: 40px !important; }
.mt-45 { margin-top: 45px !important; }
.mt-50 { margin-top: 50px !important; }
.mt-55 { margin-top: 55px !important; }
.mt-60 { margin-top: 60px !important; }
.mt2-60 { margin-top:-60px !important; }
.mt-65 { margin-top: 65px !important; }
.mt-70 { margin-top: 70px !important; }
.mt-75 { margin-top: 75px !important; }
.mt-80 { margin-top: 80px !important; }
.mt-85 { margin-top: 85px !important; }
.mt-90 { margin-top: 90px !important; }



.mr_5 {margin-right: 5px;}
.mr_10 {margin-right: 10px;}

.pl_5 {padding-left: 5px;}

.add_right_10 {
  margin-right: 10px;
}

.add_left_10 {
  margin-left: 10px;
}

.add_bottom_10 {
  margin-bottom: 10px;
}

.add_bottom_15 {
  margin-bottom: 15px;
}

.add_bottom_20 {
  margin-bottom: 20px;
}

.add_bottom_25 {
  margin-bottom: 25px;
}

.add_bottom_30 {
  margin-bottom: 30px;
}

.add_bottom_45 {
  margin-bottom: 45px;
}

.add_bottom_60 {
  margin-bottom: 60px;
}
@media (max-width: 767px) {
  .add_bottom_60 {
    margin-bottom: 30px;
  }
.add_bottom_30 {
  margin-bottom: 10px;
}

}

.add_top_5 {
  margin-top: 5px;
}

.add_top_10 {
  margin-top: 10px;
}

.add_top_15 {
  margin-top: 15px;
}

.add_top_20 {
  margin-top: 20px;
}

.add_top_30 {
  margin-top: 30px;
}

.add_top_60 {
  margin-top: 60px;
}

.padding_bottom_35 {
  padding-bottom: 35px;
}

.margin_30 {
  padding-top: 30px;
  padding-bottom: 30px;
}

.margin_30_5 {
  padding-top: 30px;
  padding-bottom: 5px;
}

.margin_60 {
  padding-top: 60px;
  padding-bottom: 30px;
}
@media (max-width: 575px) {
  .margin_60 {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

.margin_60_35 {
  padding-top: 60px;
  padding-bottom: 35px;
}
@media (max-width: 575px) {
  .margin_60_35 {
    padding-top: 30px;
    padding-bottom: 5px;
  }
}

.margin_90_65 {
  padding-top: 90px;
  padding-bottom: 65px;
}

.margin_90_0 {
  padding-top: 90px;
  padding-bottom: 0;
}



/* --------------------------------------------------------------------------
/* --- 2. BASICS
/* ----------------------------------------------------------------------------- */
.relative { position: relative; z-index: 2; }
.block { display: block; }
.dark { color: #fff; }

.sep-line { position: relative; z-index: 1; display: block; height: 1px; border: none; margin: 0; background: rgba(0, 0, 0, 0.1); }
.sep-line.sep-2 { height: 2px; }
.sep-line.sep-10 { height: 10px; }
.bg-grey .sep-line { background: #fff; }
.sep-alt { position: relative; z-index: 1; display: block; width: 50px; height: 2px; background: rgba(0, 0, 0, 0.1); margin: 0; }
.dark .sep-alt { background: #fff; }


.border { border: 1px solid rgba(0, 0, 0, 0.15); }
.dark .border, .dark.border { border: 1px solid rgba(255, 255, 255, 0.15); }

.border-top { border-top: 1px solid rgba(0, 0, 0, 0.15); }
.dark .border-top, .dark.border-top { border-top: 1px solid rgba(255, 255, 255, 0.15); }

.border-bottom { border-bottom: 1px solid rgba(0, 0, 0, 0.15); }
.dark .border-bottom, .dark.border-bottom { border-bottom: 1px solid rgba(255, 255, 255, 0.15); }
.dark .sep-line { background: rgba(255, 255, 255, 0.2); }


/* Bordered box */
.bordered-box { padding: 30px; border: 1px solid rgba(0, 0, 0, 0.15); }
.dark .bordered-box { border-color: rgba(255, 255, 255, 0.15); }

.mobile .hidden-mobile { display: none; }
.shadow { -moz-box-shadow: 1px 1px 20px 0px rgba(0, 0, 0, 0.2); -webkit-box-shadow: 1px 1px 20px 0px rgba(0, 0, 0, 0.2); box-shadow: 1px 1px 20px 0px rgba(0, 0, 0, 0.2); }

.container { position: relative; }
.container-wide { width: 80%; }
.row.no-padding { margin-left: 0; margin-right: 0; }
.row.no-padding > *[class^='col'], .row.no-padding > *[class*=' col'] { padding-left: 0; padding-right: 0; }


/* Backgrounds
----------------------------------------------------------*/
/* Image */
.bg-image, .bg-parallax, .bg-slideshow { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-position: center center; background-size: cover; background-repeat: no-repeat; z-index: 0; }
.bg-multiply { mix-blend-mode: multiply; }
.bg-slideshow .owl-wrapper-outer, .bg-slideshow .owl-wrapper, .bg-slideshow .owl-item { height: 100%; overflow: hidden; }
.bg-image > img { display: none; }
.bg-fixed { background-attachment: fixed; }

/* Colors */

/* Images
----------------------------------------------------------*/
.img-rounded { -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; }
.img-circle { -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; }

.gray-to-color { -moz-transition: all 0.3s ease-out; -o-transition: all 0.3s ease-out; -webkit-transition: all 0.3s ease-out; transition: all 0.3s ease-out; -webkit-filter: grayscale(1); filter: grayscale(1); filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70); opacity: 0.7; }
.gray-to-color:hover { -webkit-filter: grayscale(0); filter: grayscale(0); filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; }

.color-to-grey { -moz-transition: all 0.3s ease-out; -o-transition: all 0.3s ease-out; -webkit-transition: all 0.3s ease-out; transition: all 0.3s ease-out; }
.color-to-grey:hover { -webkit-filter: grayscale(1); filter: grayscale(1); filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70); opacity: 0.7; }

/* Badges
----------------------------------------------------------*/
.badge { font-size: 12px; padding: 3px 5.5px; font-weight: normal; }
.label { text-transform: uppercase; color: #fff; border: none; -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; padding: 0.7em .9em .8em; font-size: 80%; display: inline-block; vertical-align: middle; }
.label.label-default { color: #434343; }
.label.label-primary { background-color: #0f4fb9; }
.label.label-secondary { background-color: #1f1f1f; }
.label.label-info { background-color: #2786c9; }
.label.label-warning { background-color: #f19354; }
.label.label-danger { background-color: #e74c3c; }
.label.label-success { background-color: #8ac04b; }
.label.label-dark { background-color: #1f1f1f; }



/*-------- 1.3 Structure --------*/
main {
  background-color: #fff;
  /*z-index: 2;*/
  position: relative;
}
main.freeze {
  z-index: inherit;
}

.container {
  max-width: 1240px;
}

.container-m {
  max-width: 1200px;
}

.container-s {
  max-width: 960px;
}

.container-xs {
  max-width: 900px;
}

@media (max-width: 991px) {
  .container {
    max-width: 100%;
  }

.container-s,.container-xs {
  max-width: 100%;
}
.container-m {
 max-width: 100%;
}


}

/*----------------버튼-----*

/* Buttons */
.btn {
	font-size: 12.8px;
	font-size: 0.8rem;
	padding: 8.528px 14.928px;
	padding: 0.533rem 0.933rem;
	cursor: pointer;
	font-weight: 600;
}

.btn.btn-xs {
	font-size: 11.2px;
	font-size: 0.7rem;
	
}

.btn.btn-sm {
	font-size: 12.8px;
	font-size: 0.8rem;
	
}

.btn.btn-lg {
	font-size: 16px;
	font-size: 1rem;
	
}

/*.btn {
  display: inline-block;
 font-family: 'Noto Sans KR', sans-serif;
  font-weight: 700;
  line-height: 25px;
  text-transform: capitalize;
  -webkit-transition: all 0.35s ease-in-out;
  -moz-transition: all 0.35s ease-in-out;
  -ms-transition: all 0.35s ease-in-out;
  -o-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out;
  overflow: hidden;
  border-radius: 5px;
}
*/
.btn.full-width,
.site-button.full-width {
  display: block;
  width: 100%;
  text-align: center;
  margin-bottom: 5px;
}


.btn-md {
  padding: 12px 40px 12px;
}


/* Responsive */
@media (max-width: 767px){	
.btn-md {
  padding: 5px 30px 5px;
}



}


.btn-border-light {
  border: 2px solid #ffffff;
}


.btn-dark {
  background-color: #232323;
  color: #ffffff;
  border: 2px solid #232323;
}
.btn-dark:hover, 
 .btn-dark:focus {
  color: #232323 !important;
  background: transparent;
}

.btn-dark.border {
  background-color: transparent;
  color: #232323;
  border: 2px solid #232323;
}

.btn-dark.border:hover {
  background-color: #232323;
  color: #ffffff !important;
  border: 2px solid #232323;
}

.btn-gray.border {
  background-color: transparent;
  color: #666666;
  border: 1px solid #dddddd;
}

.btn-gray.border:hover {
  background-color: #004dda;
  color: #ffffff !important;
  border: 1px solid #004dda;
}


.btn-light.border {
  background-color: #ffffff;
  color: #666666;
  border: 2px solid #232323;
}

.btn-light.border:hover {
  background-color: #004dda;
  color: #ffffff !important;
  border:2px solid #004dda;
}





.bg-dark {
  background: #111d30 none repeat scroll 0 0;
}

.btn-theme {
  background-color: #004dda;
  color: #ffffff !important;
  border: 2px solid #004dda;
}

.btn-theme:hover {
  background-color: #232323;
  color: #ffffff !important;
  border: 2px solid #232323;
}

.btn-theme.border {
  background-color: transparent;
  color: #004dda !important;
  border: 2px solid #004dda;
}

.btn-theme.border:hover {
  background-color: #004dda;
  color: #ffffff !important;
  border: 2px solid #004dda;
}

.btn-theme.effect:hover, 
 .btn-theme.effect:focus {
  background: #2f6205 none repeat scroll 0 0;
  border: 2px solid #004dda;
  color: #ffffff;
}

.btn.btn-sm-lm {
  font-size: 12px;
  padding: 4px 35px;
}

.bg-theme a.btn-theme.btn:hover,
.bg-theme a.btn-theme.btn:focus {
  border: 2px solid #ffffff;
  color: #ffffff;
}

.bg-fixed {
  background-attachment: fixed;
  background-position: center center;
  background-size: cover;
}

.bg-fixed2 {
  background-attachment: fixed;
  background-position: center left;
  background-size: cover;
}

.bg-cover {
  background-position: center center;
  background-size: cover;
}


.border {
	
	border-color: #CCC;
}

/* Outline */
.btn-outline {
	border-width: 2px;
	padding: 7.728px 14.928px;
	padding: 0.483rem 0.933rem;
}

.btn-outline.btn-xs {
	padding: 2.4px 8px;
	padding: 0.15rem 0.5rem;
}

.btn-outline.btn-sm {
	padding: 4px 10.4px;
	padding: 0.25rem 0.65rem;
}

.btn-outline.btn-lg {
	padding: 7.2px 16px;
	padding: 0.45rem 1rem;
}

.btn-outline.btn-xl {
	padding: 12px 32px;
	padding: 0.75rem 2rem;
}

.btn-outline.btn-outline-thin {
	border-width: 1px;
}

/* Modern */
.btn-modern {
	text-transform: uppercase;
	font-size: .8em;
	padding: 12.8px 24px;
	padding: 0.8rem 1.5rem;
	font-weight: 600;
}



/* Rounded */
.btn-rounded {
	border-radius: 35px;
}


a.btn_sub.outline,
.btn_sub.outline {
  border: 2px solid #004dda;
  color: #004dda;
  padding: 11px 40px;
  background: none;
}
a.btn_sub.outline:hover,
.btn_sub.outline:hover {
  background: #004dda;
  color: #fff;
  border-color: #0054a6;
}
a.btn_sub.outline:focus,
.btn_sub.outline:focus {
  outline: none;
}

@media (max-width: 767px) {
 a.btn_sub.outline,.btn_sub.outline {  padding:8px 18px;}

}

   /* 메인 견적 박스 하단 이사배너 관련 css 추가*/
.divider {  text-align: center;  height: 1px;  margin: 30px 0 20px 0;  background-color: #e1e8ed;}
.divider span {  position: relative;  top: -20px;  background-color: #fff;  display: inline-block;  padding: 10px;  font-style: italic;}
.separator {
	border-top: 1px solid #f2f2f2
}


hr {border-bottom: 1px solid #ddddd;	border-top: 0 none;	margin: 0px 0;	padding: 0;}
hr.blue {border-top: 1px solid #004dda;	margin-top: 10px;margin-bottom:10px;}
@media (max-width: 767px) {
  hr.blue {margin-top:30px;margin-bottom:0px;
  }
}
hr.red {border-top: 2px solid #e1272e;	margin-top: 10px;margin-bottom:10px;}
@media (max-width: 767px) {
  hr.red {margin-top:5px;margin-bottom:5px;
  }
}
hr.large {  border-color: #ededed;  border-top-width: 4px;  margin-top: 60px;}
@media (max-width: 767px) {  hr.large {    margin-bottom: 45px;  }}
.sep-line { position: relative; z-index: 1; display: block; height: 1px; border: none; margin: 0; background: rgba(0, 0, 0, 0.1); }
.sep-line.sep-2 { height: 2px; }
.sep-line.sep-10 { height: 10px; }

}
.bottom__wrapper {
  height: 50px;
  padding-top: 20px;
  margin-bottom: 25px;
  position: relative;
  text-align: center;
  width: 100%;
  border-top: 1px solid #ededed;
}

.bottom__right {
  height: 50px;
  padding-top: 20px;
  margin-bottom: 25px;
  position: relative;
  text-align: right;
  width: 100%;
  border-top: 1px solid #ededed;
}



/*  추가 */

.btn_s { display: inline-block; min-width:40px; height: 40px; padding: 0 10px; font-size:12px; font-weight:400; color: #fff; border-radius: 5px; opacity: 0.9; line-height: 40px; text-align: center; }
.btn_s i{ font-size:16px; font-weight:500;  }
.btn_s:hover { opacity: 1;  color: #fff;}
.btn_box_c { margin: 10px 0; text-align: center; }
.btn_box_r { margin: 10px 0; text-align: right; }
.btn { display: inline-block; min-width: 75px; height: 40px; padding: 0 10px; font-size: 14px; font-weight: 500; color: #fff; border-radius: 5px; opacity: 0.9; line-height: 40px; text-align: center; }
.btn:hover { opacity: 1;color: #fff; }
.bg_gray { background-color: #999; }
.bg_blue { background-color: #0DBECB; }

.bg_black { background-color: #333; }
.outline { border: 1px solid #333; color: #333; }

@media (max-width: 767px) {
.btn_s { display: inline-block; min-width:30px; height:30px; padding:5px; font-size:12px; font-weight:400; color: #fff; border-radius:2px; opacity: 0.9; line-height: 20px; text-align: center; }	
.btn_s i{ font-size:12px; font-weight:500;  }
}




/* ==========================================================================
   반응형
========================================================================== */
.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
  display: none !important;
}
.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}



@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }
  table.visible-xs {
    display: table;
  }
  tr.visible-xs {
    display: table-row !important;
  }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 769px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }
  table.visible-sm {
    display: table;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}
@media (min-width: 769px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}
@media (min-width: 769px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}
@media (min-width: 769px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important;
  }
  table.visible-md {
    display: table;
  }
  tr.visible-md {
    display: table-row !important;
  }
  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg {
    display: block !important;
  }
  table.visible-lg {
    display: table;
  }
  tr.visible-lg {
    display: table-row !important;
  }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}
@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}


@media (min-width: 769px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}
.visible-print {
  display: none !important;
}
@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table;
  }
  tr.visible-print {
    display: table-row !important;
  }
  th.visible-print,
  td.visible-print {
    display: table-cell !important;
  }
}
.visible-print-block {
  display: none !important;
}
@media print {
  .visible-print-block {
    display: block !important;
  }
}
.visible-print-inline {
  display: none !important;
}
@media print {
  .visible-print-inline {
    display: inline !important;
  }
}
.visible-print-inline-block {
  display: none !important;
}
@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}
@media print {
  .hidden-print {
    display: none !important;
  }
}

