:root {
  --full-container: 1580px;
  --container: 1440px;
  --middle-container: 1200px;
  --sub-container: 1440px;
  --main-color: #00a151;
  --sub-color: #5f2800;
  --txt-color: #080808;
}
.full-container {max-width:var(--full-container); margin:0 auto;}
.container {max-width:var(--container); margin:0 auto;}
.middle-container {max-width:var(--middle-container); margin:0 auto;}
.sub-container {max-width:var(--sub-container); margin:0 auto;}


@media screen and (max-width: 1580px) {.full-container {padding:0 20px; width: 100%;}}
@media screen and (max-width: 1440px) {.container {padding:0 20px; width: 100%;}}
@media screen and (max-width: 1440px) {.sub-container {padding:0 20px; width: 100%;}}

/* 기본설정변경 */
h1,h2,h3,h4,p,a,li,div,button,dl, dt, dd ,b, strong
{font-family: "Pretendard", sans-serif; color: var(--txt-color);}
.nav a 
{font-family: "Pretendard", sans-serif; letter-spacing: 1.4;}
.header .elementor-nav-menu--main .elementor-item
{justify-content: center; font-family: 'KoPub Dotum', sans-serif !important; font-size: 2.2rem !important; font-weight: 400; letter-spacing: -0.14rem;}
.header .sub-menu.elementor-nav-menu--dropdown
{width: 100% !important;}
.header .menu-item
{min-width: 19rem;}
.header .menu-item a.elementor-sub-item
{white-space: wrap; line-height: 1.4; font-family: 'pretendard';}
.header .sub-menu
{transform: translate(0);}
ul.elementor-nav-menu--dropdown a,ul.elementor-nav-menu--dropdown a:focus,ul.elementor-nav-menu--dropdown a:hover
{border: 0 !important;}
.header .elementor-nav-menu .sub-arrow
{display: none;}
.elementor-nav-menu .sub-arrow
{display: none;}

/* table */
table {border-top: 2px solid var(--main-color);}
table tr th {width: 28rem; vertical-align: middle; font-size: 1.8rem; color: #1b1b1b; font-weight: bold; border: 0; border-bottom: 1px solid #e5e5e5; background-color: #f7f7f7;}
table tr td {text-align: center; vertical-align: middle; font-size: 1.8rem; color: #222; text-align: center; border: 1px solid #e5e5e5; border-top: 0px solid; background-color: #fff;}
table tr td:nth-last-of-type(1) {border-right: 0;}
table tr td:nth-of-type(1) {border-left: 0;}

/* 가로형 표 */
.sub-table-wrap table tr th {background-color: #eef1e8 !important;}
.sub-table-wrap table tr td {background-color: #fff !important;}
.sub-table-wrap table tr td p {position: relative; padding-left: 1.2rem; font-size: 1.8rem; line-height: 1.9; color: #222;}
.sub-table-wrap table tr td p.accent {font-weight: 700; line-height: 1.4; color: var(--main-color);}
.sub-table-wrap table tr td p::after {content: ""; position: absolute; top: 50%; transform: translateY(-50%); left: 0; width: 5px; height: 5px; border-radius: 50%; background-color: var(--main-color);}

/* 서브 비주얼 */
#subVisual { width: 100%; height: 50rem; background-position:center; border-radius:0 0 50px 50px}  
#subVisual > .e-con-inner { justify-content: end; } 
#subVisual #subTitle {margin-bottom:16rem;}
#subVisual #subTitle h2 { font-family:'scoredream'; font-size: 5.2rem; color: #fff; font-weight: 700; text-align:center;} 
#subVisual #subText
{margin-bottom:5rem;}
#subVisual #subText h4 {font-family:'scoredream'; font-size:2.4rem; color:#fff; opacity:0.6; font-weight:300}
#subVisual #subMenu { bottom: 5rem; } 
#subVisual #subMenu .elementor-element { max-width: var(--max-container); width: 100%; } 
#subVisual #subMenu nav {width:100%; justify-content:center}
#subVisual #subMenu ul.elementor-nav-menu { justify-content: center; border-radius:50px; overflow:hidden;; } 
#subVisual #subMenu ul.elementor-nav-menu li { min-width: 20rem; transition: all 0.3s ease; } 
#subVisual #subMenu ul.elementor-nav-menu li a { font-family: "scoredream"; padding: 2.0rem 1.5rem; font-size: 17px; font-weight: 500; background: rgba(0, 0, 0, 0.3); color: #fff; position: relative; display: inline-block; text-align: center; transition: all 0.3s ease; } 
#subVisual #subMenu ul.elementor-nav-menu li a:after { content: ""; position: absolute; width: 1px; height: 50%; top: 50%; transform: translateY(-50%); background: #ffffff1c; right: 0; left: auto; opacity: 1; } 
#subVisual #subMenu ul.elementor-nav-menu li:last-child a:after { display: none; } 
#subVisual #subMenu ul.elementor-nav-menu li.current-menu-item a,
#subVisual #subMenu ul.elementor-nav-menu li.current-page-ancestor a,
#subVisual #subMenu ul.elementor-nav-menu li.current-menu-parent a { color: #fff;  background: var(--main-color);} 
#subVisual #subMenu ul.elementor-nav-menu li:hover { background: var(--main-color); } 
#subVisual #subMenu ul.elementor-nav-menu li:hover a { color: #fff;  background: var(--main-color);} 

/* animation--------------------------- */

.left {opacity: 0; transform: translateX(-50px); transition: all 0.6s ease;}
.right {opacity: 0; transform: translateX(50px); transition: all 0.6s ease;}

.left.active,.right.active 
{opacity: 1; transform: translate(0, 0);}

.item ,.txt-ani, .boxAni
{opacity: 0; transform: translateY(30px); transition: background-color 0.3s ease, opacity 0.6s ease, transform 0.6s ease;}
.item.active ,.txt-ani.active, .boxAni.active
{opacity: 1; transform: translateY(0);}
