/* https://www.google.com/fonts */
@charset "utf-8";
/*
@import url('//fonts.googleapis.com/css?family=Noto+Sans+KR:100,300,400,500,700,900&display=swap&subset=korean');
@import url('//fonts.googleapis.com/css?family=Open+Sans:400,600,700,800');
*/

/* global default */
section, article, aside, footer, header, nav, hgroup { display:block; }

/* essential reset */
p, pre, ul, ol, dl, dd, blockquote, address, table, fieldset, form { margin-bottom:0; }

h1 { margin-bottom:40px; }
h2 { margin-bottom:30px; }
h3 { margin-bottom:25px; }
h4 { margin-bottom:10px; }
h5 { margin-bottom:3px; font-weight:500; }

a, a:link, a:visited, a:hover, a:active ,a:focus { text-decoration:none; }

/*********************************************
** Layout
**********************************************/
html { height:100%; }
body {
/*  font-family: 'Open Sans', 'Noto Sans KR', 'NotoSans', sans-serif; letter-spacing:-0.05em; background:#ebebf2;*/
  letter-spacing:-0.05em; background:#ebebf2;
}
/* body 속성에 position:relative 를 해야만 footer 를 bottom 으로 고정이 가능하다. padding-bottom 을 footer 의 height 만큼 잡아준다. */
body { height:100%; }


div.body { min-height:calc(100% - 76px); font-size:12px; padding:20px; }
div.body { max-width:1920px; margin:0 auto; }
footer { color:#fff; height:26px; background:#1e1e2d; }
footer p.copyright { padding:5px; font-size:11px; }

.wrapper { width:100%; min-width:360px; margin:auto; }
.container { width:100%; min-width:360px; max-width:1280px; padding:0 20px; margin:0 auto; }
.progress { position:fixed; top:0; bottom:0; left:0; right:0; margin:auto; z-index:9999; width: 200px; height: 120px; background: #fff; border: 2px solid #4687ff; -webkit-box-shadow: 0px 0px 10px 2px rgba(0,0,0,0.4); -moz-box-shadow: 0px 0px 10px 2px rgba(0,0,0,0.4); box-shadow: 0px 0px 10px 2px rgba(0,0,0,0.4); }
.progress > .loader-msg { position:absolute; width:100%; bottom:10px; text-align:center; color:#003eb0; font-size:13px }
.loader { position:fixed; top:0; bottom:0; left:0; right:0; margin:auto; z-index:1000; width: 200px; height: 120px; background: #fff; border: 2px solid #4687ff; -webkit-box-shadow: 0px 0px 10px 2px rgba(0,0,0,0.4); -moz-box-shadow: 0px 0px 10px 2px rgba(0,0,0,0.4); box-shadow: 0px 0px 10px 2px rgba(0,0,0,0.4); }
.loader > .loader-msg { position:absolute; width:100%; bottom:10px; text-align:center; color:#003eb0; font-size:13px }

div.ibox { padding:20px; box-shadow: 0 0 13px 0 rgba(82,63,105,.05); background-color: #fff; border-radius:3px; }

.profiler { margin:20px auto; padding:15px; word-break:break-all; word-wrap: break-word; }
.profiler > .ibox { background:#fff; padding:10px; border-radius: 2.5px; }
.profiler table { border:2px solid #444; width:100%; margin-bottom:20px; }
.profiler table > thead > tr > th { padding:3px; color:#fff; text-align:center; background:#444; }
.profiler table > tbody > tr { border-bottom:1px solid #e4e4e4; }
.profiler table > tbody > tr > th { padding:3px; }
.profiler table > tbody > tr > td { padding:3px; font-size:12px; }
.profiler table > tbody > tr:nth-child(odd) { background:#fff; }
.profiler table > tbody > tr:nth-child(even) { background:#f9f9f9; }

.profiler .in-second-table { margin-bottom:0; }
.profiler .in-second-table th { padding:3px; color:#fff; text-align:center; background:#888; }
.profiler .in-third-table { margin-bottom:0; }
.profiler .in-third-table { border:0; }

/* hidden frame */
.fs-frame { display:none; }
.fs-frame #execute_frame { width:0; height:0; }



/* main */
.sec-banner h2.tit {
  position: relative;
  margin-bottom: 50px;
  text-align: center;
}
.sec-banner h2.tit::after {
  content: '';
  position: absolute;
  bottom: -15px;
  left:0;
  right:0;
  margin: auto;
  width: 100px;
  height: 2px;
  background-color: #6fc7c2;
}
.sec-banner p { 
  text-align: center;
  font-size: 16px;
  font-weight: 500;
}