/*------------------------------------------------------------------
# [Color codes]

# main color - #111
# sub color - #898989
# text color - #000 , #222

# */


/* ==============================
   Basic
   ============================== */
*{
	word-break: keep-all;
	box-sizing: border-box;
}
:root{
    scroll-behavior: auto;
	--vh: 100vh;
}
html{
    overflow-y: auto;
    -ms-overflow-style: scrollbar;
}
html, body{
    height: 100%;
    -webkit-font-smoothing: antialiased;
}
ul,ol{ list-style:none; }
ul,ol,li,dl,dt,dd{ 
	padding:0;
	margin:0;
}
a{
	color:#111;
	transition:all 0.4s;
	text-decoration:none;
}
button{
	outline:none;
	border:none;
	background:none;
	transition:all 0.4s;
}
iframe{ border: none; }
img{ width: 100%; }

::-moz-selection{
	color: #fff;
	background:rgba(41,38,37,0.5);
}
::-webkit-selection{ 
	color: #fff;    
	background:rgba(41,38,37,0.5);
}
::selection{ 
	color: #fff;
	background:rgba(41,38,37,0.5);
}

.container {
	width: 100%;
	padding-right: 10px;
	padding-left: 10px;
	margin-right: auto;
	margin-left: auto;
}
@media (max-width: 767px) {
	.container { max-width: 100%; }
}
@media (min-width: 768px) {
	.container { max-width: 720px; }
}
@media (min-width: 992px) {
	.container { max-width: 960px; }
}
@media (min-width: 1200px) {
	.container { max-width: 1140px; }
}
@media (min-width: 1440px) {
	.container { max-width:1400px; }
}
.row {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-right: -10px;
	margin-left: -10px;
}
.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, 
.col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, 
.col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, 
.col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, 
.col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto{
	padding-left:10px;
	padding-right:10px;
}
.stick-fixed{
    position: fixed !important;
    top: 0;
    left: 0;
}
.m,.hide{ display:none; }
html::-webkit-scrollbar { width: 10px; } /* 스크롤바 전체 영역 */
::-webkit-scrollbar-track { background-color: #f9f9f9; } /* 스크롤 배경  */
::-webkit-scrollbar-thumb { /*  스크롤이 움직이는 영역  */
	background-color:#313131; 
	border-radius:30px;
	border:2px solid #f9f9f9;
} 
::-webkit-scrollbar-button:start:decrement, /*  스크롤의 화살표가 포함된 영역   */
::-webkit-scrollbar-button:end:increment,/*  스크롤의 화살표가 포함된 영역   */
::-webkit-scrollbar-corner,/*  상하+좌우 스크롤이 만나는 공간   */
::-webkit-scrollbar-button:vertical:incremen,/* 스크롤 상하방향 */
::-webkit-scrollbar-button:vertical:decrement,/* 스크롤 상하방향 */
::-webkit-scrollbar-button:horizontal:increment,/* 스크롤 좌우방향 */
::-webkit-scrollbar-button:horizontal:decrement{ /* 스크롤 좌우방향 */
	display:none; 
} 
/* IE */
html{
	scrollbar-arrow-color:#f9f9f9; /* 스크롤 상하 버튼 컬러 */
	scrollbar-highlight-color:#313131; /* 스크롤 arrow와 스크롤 바 의 하이라이트 컬러 */
	scrollbar-shadow-color:#313131; /* 스크롤 arrow와 스크롤 바 의 그림자 컬러 */
	scrollbar-face-color:#313131; /* 스크롤 바 컬러 */
	scrollbar-track-color:#f9f9f9; /* 스크롤 배경 컬러 */
	scrollbar-3dlight-color:#f9f9f9; /* 스크롤 밖 테두리 컬러 */
	scrollbar-darkshadow-color:#f9f9f9; /* 스크롤 arrow와 스크롤 바 의 어두운그림자 컬러 */
}
/* Firefox */
html{
	scrollbar-face-color:#313131;/* 스크롤 바 컬러 */
	scrollbar-track-color: #f9f9f9;/* 스크롤 배경 컬러 */
	scrollbar-color: #313131 #f9f9f9; /* 위의 2가지 통합 - scrollbar-face-color scrollbar-track-color */;
	scrollbar-width : thin; /* 스크롤 바 넓이 값 - option > auto / thin / none */
}
.padding-120{ padding:120px 0 !important; }
.center{ text-align:center; }

@media (max-width: 480px) {
	.padding-120{ padding:100px 0 !important; }

}

/* ==============================
   Typography
   ============================== */
body{
    color: #222;
    font-size: 16px;
	line-height:1.5;
	font-family:'Pretendard', serif;
    -webkit-font-smoothing: antialiased;
}
a{
    color: #222;
    text-decoration: none;
}
a:hover{ text-decoration: none; }
h1,h2,h3,h4,h5,h6{
    margin-bottom: 0;
    line-height: 1.4;
    font-weight: 400;
}
h1, .h1{ font-size: 48px; }
h2, .h2{ font-size: 32px; font-weight: 700;}
h3, .h3{ font-size: 26px; }
h4, .h4{ font-size: 18px; }
h5, .h5{ font-size: 16px; }
h6, .h6{ font-size: 14px; }
p{
	font-size:16px;
	margin: 0;
}
blockquote{
    margin: 3em 0 3em 0;
    padding: 0;
    border: none;
    background: none;
    font-style: normal;
    line-height: 1.4;
    color: #777;
}
blockquote p{
    margin-bottom: 0;
    font-size: 24px;
    font-weight: 300;
    font-style: normal;
    line-height: 1.4;
}
.strong,
strong{ font-weight: 700 !important; }

@media (max-width: 480px){
	.common-title{ font-size:32px; }
}

/* ==============================
   Pagination
   ============================== */
.pagination{
	margin-top:20px;
	display:flex;
	justify-content:center;
}
.pagination li{
	width:40px;
	height:40px;
	border-radius:100%;
	transition:all 0.4s;
	border:2px solid transparent;
}
.pagination,
.pagination li,
.pagination li *{ line-height:38px; }
.pagination li a{
	width:100%;
	height:100%;
	text-align:center;
	font-size:18px;
	font-weight:500;
	color:#bbb;
	display:block;
	transition:all 0.4s;
	position:relative;
}
.pagination li.on{ border-color:#212529bf; }
.pagination li.on a{
	color:#212529bf;
	cursor:default;
}
.pagination .arrow{
	width:10px;
	height:10px;
	border-style:solid;
	border-color:#bbb;
	display:block;
	position:absolute;
	top:50%;
	transform:translateY(-50%) rotate(45deg);
}
.pagination .arrow.prev{
	border-width:0 0 2px 2px; 
	left:2px;
}
.pagination .arrow.next{ 
	border-width:2px 2px 0 0; 
	right:2px;
}
.pagination li:not(.on):not(.noactive):hover a{ color:#808080; }
@media (max-width: 767px){
	.pagination{ margin-top:60px; }
}
@media (max-width: 480px) {
	.pagination{ margin-top:40px; }
	.pagination li{
		width:36px;
		height:36px;
	}
	.pagination,
	.pagination li,
	.pagination li *{ line-height:34px; }
	.pagination li a{ font-size:16px; }
	.pagination .arrow{
		width:8px;
		height:8px;
	}
	.pagination .arrow.prev{ left:11px; }
	.pagination .arrow.next{ right:13px; }
}

/* ==============================
   Input
   ============================== */
::-webkit-input-placeholder { color: #808080 !important; }
:-moz-placeholder { color: #808080 !important; }
::-moz-placeholder { color: #808080 !important; }
::placeholder { color: #808080 !important; }
:-ms-input-placeholder { color: #808080 !important; }
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button{ -webkit-appearance:none; }
input[type=number]{-moz-appearance:textfield;}
input::-ms-clear,
input::-ms-reveal{ display:none; }
input::-webkit-search-decoration,
input::-webkit-search-cancel-button,
input::-webkit-search-results-button,
input::-webkit-search-results,decoration{ display:none; }
input, textarea, select,.file-input{
	width:100%;
	background:transparent;
	outline:none;
	border:1px solid #ddd;
	border-radius:5px;
	font-size:16px;
	transition:all 0.4s;
	color:#808080;
	height:45px;
}
input, select{ padding-left:14px; }
input{ line-height:43px; }
select{ cursor:pointer; }
input:focus{ border-color:#808080; }
input[type="checkbox"],
input[type="radio"]{
	-webkit-appearance: none;
    -moz-appearance: none;
	outline: none;
    display: inline-block;
    vertical-align: middle;
    position: relative;
    margin: 0;
    cursor: pointer;
	border:1px solid #ccc;
	background:transparent;
	transition: background 0.3s, border-color 0.3s;
	height:20px;
	width:20px;
	border-radius:50%;
}
input[type="checkbox"] + label,
input[type="radio"] + label{
	font-size:16px;
	line-height:20px;
	display: inline-block;
    vertical-align: middle;
    cursor: pointer;
    margin-left: 4px;
	margin-bottom:0;
}
input[type="checkbox"]:after,
input[type="radio"]:after{
	content:"";
	display: block;
    left: 0;
    top: 0;
    position: absolute;
	transition: transform 0.6s cubic-bezier(.2, .85, .32, 1.2), opacity 0.3s;
}
input[type="checkbox"]:checked,
input[type="radio"]:checked{
	border-color:#898989;
	background:#898989;
}
input[type="checkbox"]:after{
	width: 5px;
	height: 9px;
	border: 2px solid #fff;
	border-top: 0;
	border-left: 0;
	left: 7px;
	top: 4px;
	transform: rotate(20deg);
}
input[type="checkbox"]:checked:after{ transform: rotate(43deg); }
input[type="radio"]:after{
	width:10px;
	height:10px;
	border-radius:50%;
	background:#fff;
	opacity:0;
	transform:translate(-50%,-50%) scale(0);
}
input[type="radio"]:checked:after{
	opacity:1;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%) scale(0.8);
}
input:disabled,
textarea:disabled,
select:disabled{
	border-color:#ccc;
	background-color:#ededed;
	cursor: default;
	opacity: 0.8;
}
input[type="checkbox"]:disabled,
input[type="radio"]:disabled{ background:#eee; }
input[type="checkbox"]:disabled + label,
input[type="radio"]:disabled + label{ 
	cursor: default;
	color:#ccc;
}
input[type="checkbox"]:disabled:checked,
input[type="radio"]:disabled:checked{
	border-color:#ccc;
	background:#ccc;
	cursor: default;
    opacity: 0.8;
}