:root {
  --full-container: 1720px;
  --container: 1540px;
  --sub-container: 1440px;
  --main-color: #78c000;
  --sub-color: #ffc600; 
  --txt-color: #0d0d0d;
  --bg-color:#eeffe5;
}
.full-container {max-width:var(--full-container); margin:0 auto;}
.container {max-width:var(--container); margin:0 auto;}
.sub-container {max-width:var(--sub-container); margin:0 auto;}

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

/* 기본설정변경 */
::selection {background-color: var(--main-color); color: #fff;}
h1,h2,h3,h4,p,a,li,div,button,dl, dt, dd ,b, strong
{font-family: 'pretendard', sans-serif; color: #222;}
.nav a 
{font-family: "pretendard", sans-serif; letter-spacing: 1.4;}
.header .elementor-nav-menu--main .elementor-item
{padding: 4rem 3rem !important; font-size: 1.8rem !important; color: #0d0d0d; font-family: 'Escoredream', sans-serif !important; font-weight: 600 !important; justify-content: center; transition: color 0.3s ease;}
.header .header-wrap
{justify-content: space-between;}
.header .sub-menu.elementor-nav-menu--dropdown
{width: 100% !important;}
.header .menu-item
{min-width: 17.5rem;}
.header .menu-item a.elementor-sub-item
{padding: 1.5rem 1.2rem; white-space: wrap; line-height: 1.4;}
.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;}
.header .header-left,.header .header-left .icon-wrap
{width: auto !important;}

/* 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;}
table tr td:nth-last-of-type(1) {border-right: 0;}
table tr td:nth-of-type(1) {border-left: 0;}
table tbody>tr:nth-child(odd)>td, table tbody>tr:nth-child(odd)>th {background-color: transparent !important;}

/* 가로형 표 */
.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);}

/* 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 {opacity: 0; transform: translateY(30px); transition: background-color 0.3s ease, opacity 0.6s ease, transform 0.6s ease;}
.item.active ,.txt-ani.active {opacity: 1; transform: translateY(0);}