@font-face {
	font-family: 'Futura-Book';
	font-style: 400;
	src: url(/resource/fonts/futura/Futura-Book-font.ttf);
}
@font-face {
	font-family: 'Futura-Medium';
	font-style: 600;
	src: url(/resource/fonts/futura/futura-medium-bt.ttf);
}
@font-face {
	font-family: 'Futura-Heavy';
	font-style: 800;
	src: url(/resource/fonts/futura/Futura-Heavy-font.ttf);
} 
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css");

body {
    font-family: "Asta Sans", sans-serif;
	font-size: 16px;
	color: #24272d;
	word-break: keep-all;
	line-height: 1.5;
	font-optical-sizing: auto;
	font-style: normal;
}
body.en {
	font-size: 14px;
}
.en h5 {font-size: 1rem;}
ul {padding: 0; margin: 0;}
li {list-style: none;}
a {
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-ms-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;
	color: #24272d;
	text-decoration: none;
}
a:hover, a:focus, a:active {
	outline: none;
	text-decoration: none;
	color: #24272d;

}
button.button {
    background: #fff;
    border: 1px solid;
    border-color: rgb(0, 0, 0, 0.3);
    padding: 10px 25px 12px;
    border-radius: 50px;
    color: #444;
}
button.button:hover {
	background: #317afd;
	color: #fff;
	border-color: #317afd;
	transition: all 0.3s ease;
}
.container {
    padding-left: 20px;
    padding-right: 20px;
}
.futura {font-family: 'Futura-Heavy';}
.text-blue {color: #317afd;}
.fs-13 {font-size: 13px; line-height: 21px;}

.popup {
    position: absolute;
    top: 3%;
    right: 2%;
    z-index: 99999;
    width: 400px;
}
.popup .layer {
	background-color: rgb(0 0 0 / 75%);
}
.close {
    text-align: right;
    padding: 10px;
    color: #fff;
    cursor: pointer;
}

/* Table */
.table th {background: #00263e; color: #fff; vertical-align: middle; padding: 1em;}
.table td {vertical-align: middle; border-right: 1px solid #ddd; padding: 1em;}
.table td:last-child {border-right: none;}
.table ul {margin-left: 30px;}
.table ul li {list-style: disc; text-align: left;}

/* ============================================================================ */
/* ================================== Header ================================== */
/* ============================================================================ */
#fh5co-header-section {
	width: 100%;
	height: 100px;
	padding: 0 0 0 0;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-ms-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
	position: absolute;
	top: 0;
	z-index: 999;
} 
#fh5co-logo {background: url(/resource/images/main/yidologo_white.png) no-repeat 0 0; margin-top: 17px;}
.gnb {width: 100%; display: flex; justify-content: space-between;}
.gnb>ul {margin-top: 36px; font-weight: bold; padding: 0; display: flex; justify-content: center;}
.gnb>ul>li>a {padding: 0 55px;}
.gnb>ul>li>ul {padding-left: 0; margin-top: 21px; text-align: center;}
.gnb>ul>li>ul>li {line-height: 20px; padding: 8px 0;}
.gnb>ul>li>ul>li>a {font-weight: normal; font-size: 15px; cursor: pointer; display: block;}
.gnb>ul>li>ul>li>a:hover, .gnb>ul>li>ul>li>a:active {color: #115fad; cursor: pointer;}
.depth2 {display: none;}
.lang {display: flex; align-items: flex-start; margin-top: 5px;}
.lang a {margin-top: 26px; color: #fff; font-weight: bold; display: flex; flex-direction: row; border: 1px solid #fff; border-radius: 50px; padding: 5px 20px 7px;}


/* Header-hover */
#fh5co-header-section:hover {background: #fff;}
#fh5co-header-section:hover #fh5co-logo {background: url(/resource/images/main/yidologo.png) no-repeat 0 0 !important;}
#fh5co-header-section.fh5co-scrolled:hover {height: 250px;}
#fh5co-header-section:hover #fh5co-logo a {color: #2e2e2e;}
#fh5co-header-section:hover #fh5co-logo a:hover {color: #7b7b7b;}
#fh5co-header-section:hover #fh5co-menu-wrap .sf-menu a {color: #2e2e2e;}
#fh5co-header-section:hover .gnb>ul>li>a {color: #24272d;}
#fh5co-header-section:hover .lang a {color: #24272d; border-color: #24272d;}
.lang a:hover,
#fh5co-header-section:hover .lang a:hover {background: #317afd; color: #fff; border-color: #317afd;}
.sub-header #fh5co-logo {background: url(/resource/images/main/yidologo.png) no-repeat 0 0 !important;}
#fh5co-header-section.sub-header {
	height: 100px;
	background: #fff;
	border-bottom: 1px solid #ddd;
}
#fh5co-header-section.sub-header #fh5co-logo a {color: #2e2e2e;}
#fh5co-header-section.sub-header #fh5co-logo a:hover {color: #7b7b7b;}
#fh5co-header-section.sub-header #fh5co-menu-wrap .sf-menu a {color: #2e2e2e;}
#fh5co-header-section.sub-header .gnb>ul>li>a {color: #24272d;}
#fh5co-header-section.sub-header .lang a {color: #24272d; border-color: #24272d;}
.business-menu {
    background: #00263e;
}
.business-menu .container {background: #fff;}
#fh5co-logo-mobile-wrap, #fh5co-mobile-menu {display: none;}
.gnb>ul>li>a {display: block; color: #fff; text-align: center;}
.gnb>ul>li>a:hover, .gnb>ul>li>a:active {color: #317afd !important; cursor: pointer;}
.gnb ul li .nav-sub {
    width: 100%;
    background: #fff;
    display: none;
  	opacity: 0;
  	visibility: hidden;
	transition: opacity 0.3s ease;
    position: absolute;
    left: 0;
    top: 100px;
    z-index: -1;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
}
.sub-header .gnb ul li .nav-sub {
    border-top: none;
}
.nav-sub .row .row {margin-top: 0; border: none;}
.nav-sub a {color: #444; font-weight: 500;}
.nav-sub a:hover {color: #317afd; transition: 0.2s;}
.nav-sub .nav-sub-title {
    background: #00263e;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 40px;
    text-align: right;
    width: 22%;
}
.nav-sub .nav-sub-title p {font-weight: 500;}
.en .nav-sub .nav-sub-title p {font-size: 14px;}
.nav-sub-detail {padding: 20px 0 20px 20px;}
.nav-sub-detail p {
    border: 1px solid #ddd;
    padding: 15px;
    border-radius: 10px;
    display: flex;
    justify-content: space-between;
}
.nav-sub-detail p i {font-size: 21px;}
.nav-sub-detail ul {margin-left: 13px;}
.nav-sub-detail ul li {line-height: 27px;}
.nav-sub-detail {
    border-left: 1px solid #ddd;
    padding: 10px 20px 25px;
}
.en .nav-sub-detail{
    padding: 10px 10px 25px;
}
.nav-sub-detail a p {
    color: #444;
    font-weight: 500;
}
.nav-sub-detail a p:hover {color: #317afd !important; cursor: pointer;}
.nav-sub a:first-child {
    font-weight: bold;
}
.nav-sub-detail ul li a {
    font-weight: 400 !important;
    color: #808892 !important;
    font-size: 15px;
    width: 100%;
    display: block;
}
.nav-sub-detail ul li a:hover {color: #317afd !important; transition: 0.2s;}
.nav-sub-detail p {padding: 13px; font-size: 17px; border: none; margin-bottom: 0px;}
.en .nav-sub-detail p {font-size: 14px;}
.en .nav-sub a,
.en .nav-sub-detail ul li {font-size: 14px;}
.gnb>ul>li:hover > .nav-sub {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	display: block;
	visibility: visible;
	opacity: 1;
}
/* ============================================================================ */
/* =================================== Main =================================== */
/* ============================================================================ */
/* #yido-intro {
    width: 100%;
    height: 100vh;
    position: absolute;
    z-index: 99999;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex-direction: column;
    overflow: hidden;
}
#yido-intro h2 {color: #00263e;}
#intro-logo {width: 0%;}
#yido-intro video {
	width: 0;
	height: auto;
	transition: width 1s ease-out;
	border-radius: 20px;
	transition: width 1s ease-out, border-radius 1s ease-out;
} 
.main .main-video {
    position: absolute;    
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 0;
    height: auto;
    overflow: hidden;
    border-radius: 20px;
    transition: width 1s ease-out, border-radius 1s ease-out;
} 
.main .container {
	position: absolute;
	z-index: 9;
	color: #fff;
	opacity: 0;
    transition: opacity 1s ease-out;
}
*/
.main {display: flex; justify-content: center; align-items: center; height: 100vh; scroll-behavior: smooth;}
.main .container {
	position: absolute;
    z-index: 9;
    color: #fff;
}
.display-1.futura {font-size: 83px; line-height: 1;}
.main .container h3 {line-height: 1.3em; margin-top: 30px; font-size: 22px; font-weight: normal;}
.main .main-video {
    position: absolute;    
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: auto;
    overflow: hidden;
    border-radius: 20px;
    transition: width 1s ease-out, border-radius 1s ease-out;
}
.main-video video {width: 100%; height: 100%; object-fit: cover;}
.main-video .overlay {opacity: 0;}
.overview {
	display: flex;
	align-items: center;
	height: 100vh;
	scroll-behavior: smooth;
}
.container-wide {
    position: absolute;
    z-index: 1;
    padding: 0 4em;
}
.blur {
    position: absolute;
    right: 0;
    color: #fff;
    z-index: 1;
}
.blur div {
    height: 33.3vh;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 500px;
    border-left: 1px solid;
    border-bottom: 1px solid;
    border-color: rgb(255, 255, 255, 0.5);
    font-size: 21px;
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
}
.blur p {font-size: 23px; font-weight: bold;}
.en .blur p {font-size: 18px;}
.swiper-box {
    width: 400px;
    position: absolute;
    right: 0;
    display: block;
    top: -20%;
    margin-top: 15px;
    background: rgb(0, 0, 0, 0.5);
}
.mainSwiper .swiper-slide {
    width: 100%;
    height: 100vh;
}
.swiper-bar {
	bottom: -130%;
    position: absolute;
    top: auto;
    width: 100%;
}
.swiper-bar svg {
	font-size: 3em;
    right: 0;
    bottom: 20px;
    position: absolute;
    width: 75px;    
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {background: #fff;}
.business_score {
        width: 100% !important;
        padding: 0;
        color: #444;
		display: flex;
        flex-wrap: wrap;
		justify-content: space-between;
    }
    .business_score .row {
        border: 1px solid #ddd;
        border-radius: 10px;        
        flex: 0 0 auto;
        width: 49%;
        margin: 0;
        margin-bottom: 10px;
    }
    .business_score .row.total {
	    background: #317afd;
	    color: #fff;
	}
.article {
	display: flex;
	align-items: center;
	scroll-behavior: smooth;
	padding-bottom: 200px;
}
.article .col:hover {
	color: #317afd;
	transition: 0.3s;	
	cursor: pointer;
}
.newsSwiper .swiper-slide div {display: flex; flex-direction: column;}
.newsSwiper .swiper-slide div img {width: 100%;}
.newsSwiper .swiper-slide div div {padding: 20px; text-align: left;}
.newsSwiper .swiper-slide div div span {font-size: 13px; margin-bottom: 10px;}
.newsSwiper .swiper-button-next, 
.newsSwiper .swiper-button-prev {top: var(--swiper-navigation-top-offset, 35%); color: #fff;}
.newsSwiper .swiper-pagination-bullet-active {background: #fff;}

.main-business {
	position: relative;
	color: #fff;
	height: 100vh;
	scroll-behavior: smooth;
}
.main-business .black-box {opacity: 0.3;}
.flex-container {
    height: 100vh;
    width: 100%;
    display: flex;
    overflow: hidden;
}
.flex-slide {
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
	cursor: pointer;
	-webkit-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	transition: all 500ms ease;
	flex-basis: auto;
	overflow: hidden;
	width: 0%;
}
.flex-slide .flex {
    position: absolute;
    z-index: 1;
	bottom: 5%;
    padding: 30px;
    opacity: 1;
    transition: all 500ms ease;
}
.en .flex-slide .flex {top: 65%;}
.flex-about {
    opacity: 0;
    display: none;
    color: #fff;
    position: relative;
    transform: rotate(0deg);
    -webkit-transition: all 500ms ease;
    -moz-transition: all 500ms ease;
    -ms-transition: all 500ms ease;
    -o-transition: all 500ms ease;
    transition: all 500ms ease;
}
.flex-slide:hover .flex-about {
    display: block;
}
.flex-about a {color: #fff;}
.flex-slide:hover {width: 40%;}
.flex-slide:hover .flex {padding-left: 100px; opacity: 1;}
.flex-slide:hover .flex-about {opacity: 1; top: 25%;}

.mission .col-2 div {
    width: 230px;
    height: 230px;
    border-radius: 250px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    background: #5391ff;
}
.mission .col-2 div p {margin-bottom: 0;}
.en .mission .col-2 div {
	width: 250px;
    height: 250px;
	
}
.en .mission .col-2 div h5 {font-size: 1.25rem;}
.mission .line {
    border: 1px solid #fff;
    border-top: none;
    width: 68%;
    height: 40px;
    margin-bottom: 30px;
}
.safed-zone .col {
    max-width: fit-content;
}
.safed-zone .box {
    border-radius: 10px;
    box-shadow: 0.5rem 0.5rem 1rem #0000001A;
    background: #fff;
    text-align: left;
    padding: 1.5em 1em;
    margin-bottom: 20px;
    min-width: 260px;
}
.safed-zone .box p:first-child {
    font-size: 21px;
    font-weight: bold;
    color: #317afd;
}
.safed-zone .box p span {
    background: #317afd;
    color: #fff;
    width: 27px;
    height: 27px;
    font-size: 17px;
    line-height: 26px;
    display: inline-block;
    border-radius: 100px;
    text-align: center;
    margin-right: 5px;
}
.en .safed-zone .box {
    max-width: 300px;
    text-align: center;
}
.en .safed-zone .box p {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}
.en .safed-zone .box p span {
    display: block;
}
.safed-zone .box ul {
	padding-left: 30px;
}
.safed-zone .box ul li {
    list-style: disc;
}
.chain {
    background-position: center;
    position: relative;
    margin-top: 50px;
    background-size: 450px;
    display: flex;
    justify-content: center;
}
.chain-circle {
    background: #186afe;
    color: #fff;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    transition: background 0.5s ease;
    margin: 0 5px;
    padding: 5px;
    min-height: 330px;
}
.chain-circle div {
    border: 2px dotted #fff;
    border-radius: 10px;
    display: flex;
    align-items: center;
    flex-direction: column;
    min-height: 320px;
}
.en .chain-circle div {
    min-height: 420px;
    min-width: 280px;
}
.chain-circle p {
	margin-bottom: 0;
	background: #fff;
	color: #444;
	border-radius: 5px;
	width: 90%;
	padding: 5px 0px;
	font-weight: bold;
	color: #0d6efd;
}
.chain-circle ul {margin: 15px 0px;}
.en .chain-circle ul {padding: 0 40px;}
.chain-circle ul li {
    list-style: disc;
    text-align: left;
    font-size: 14px;
}
.chain-circle img {width: 70%; margin-top: 20px;}
.chain-circle span {
    display: block;
}
.chain-circle span:first-child {
	font-size: 27px;
	font-weight: bold;
	font-family: 'futura';
	margin-bottom: 0px;
}
.chain ul li
/* .chain-circle.chain1 {
    top: 59%;
    left: 5%;
}
.chain-circle.chain2 {
    top: -22%;
    right: 36%;
}
.chain-circle.chain3 {
    top: 59%;
    right: 5%;
} */

/* business site */
.totalcounter {
    margin-top: 15px;
    float: left;
    display: inline-block;
    text-align: left;
    margin-top: 25px;
}
section.map {display: flex; padding: 9em 0em;}
.project-main .m-br {
    padding: 2em 0 5em;
}
.env-map.business-score .row div {
    width: 100%;
}
/* ============================================================================ */
/* ================================== Footer ================================== */
/* ============================================================================ */
.footer {padding: 3em 0; color: #6f7880; background: #1c1c1c; position: relative;}
.footer a {color: #6f7880;}
.footer img {display: block;}
.footer-box {display: flex; width: 100%; justify-content: space-between; align-items: flex-end;}
.family-site-box {position: relative; float: right;}
button#family-site {
    border: 1px solid #6f7880;
    border-radius: 50px;
    padding: 5px 20px;
    min-width: 190px;
    background: #fff;
    color: #6f7880;
}
.family-site {
	background: #fff;
	display: block;
	position: absolute;
	bottom: 40px;
	left: 0;
	z-index: 99999999;
	padding: 15px 25px;
	border-radius: 15px;
	line-height: 31px;
	min-width: 190px;
	border: 1px solid #6f7880;
	opacity: 0;
	height: 0;
	overflow: hidden;
	transition: opacity 0.5s ease, height 0.5s ease;
}
.family-site a {display: block;}
.family-site a:hover {color: #317afd;}
#family-site:hover {
    background: #317afd;
    color: #fff;
    border-color: #317afd;
    transition: all 0.3s ease;
}
button.contact {
    border: 1px solid #6f7880;
    border-radius: 50px;
    padding: 5px 20px;
    min-width: 150px;
    background: #fff;
    color: #6f7880;
}
button.top-btn {
    position: absolute;
    z-index: 99;
    right: 50px;
    bottom: 50px;
    border: 1px solid #f5f5f5;
    background: #fff;
    font-size: 21px;
    color: #444;
    opacity: 0.7;
    width: 50px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.3s;
}
button.top-btn:hover {opacity: 1;}
button.top-btn:hover i {margin-bottom: 0px; transition: margin 0.3s ease;}
button.top-btn:hover i {margin-bottom: 2px;}

/* ============================================================================ */
/* =================================== Sub ==================================== */
/* ============================================================================ */
aside.inner {
    height: 300px;
    display: flex;
    justify-content: flex-end;
    flex-direction: column;    
}
aside.business-inner {
	height: 450px;
	position: fixed;
	z-index: 1;
	top: 0;
	background: #fff;
	width: 100%;
	display: flex;
	align-items: center;
	padding-bottom: 60px;
	border-bottom: 1px solid #ddd;
	flex-direction: column;
	justify-content: flex-end;
	transition: top 0.5s ease-in-out;
}
.sub hr {width: 85%; margin: 0 auto;}
.sub-menu-zone {
    width: 100%;    
    position: relative;
    z-index: 99;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    background: #fff;
    transition: 0.4s;
}
.sub-menu-zone.fixed {
    position: fixed;
    top: 0;
    z-index: 1000;
    transform: translateY(0); /* 고정 위치에서 슬라이드 */
  }
.sub-menu-box {display: flex; flex-direction: row; align-items: center;}
.sub-menu-box .home {border-right: 1px solid #ddd; border-left: 1px solid #ddd; padding: 15px 20px;}
.sub-menu {border-right: 1px solid #ddd; position: relative;}
.sub-menu a {padding: 15px 20px; min-width: 230px; display: block;}
.sub-menu-title {cursor: pointer; display: flex; justify-content: space-between; padding: 15px 20px; min-width: 230px; display: block;}
.sub-menu-list {display: none;}
.sub-menu-list.visible {
    display: block;
    position: absolute;
    background: #fff;
    min-width: 201px;
    left: -1px;
    top: 55px;
    border-right: 1px solid #ddd;
    border-left: 1px solid #ddd;
}
.sub-menu-list li a {padding: 15px 0px 15px 15px; border-bottom: 1px solid #ddd; display: block;}
.sub-menu-list li a:hover {background: #00263e; color: #fff; transition: 0.1s;}
.sub-menu-list .active a {background: #ddd;}
.inner .nav-link {
    border: 1px solid #317afd;
    color: #317afd;
    border-radius: 10px;
    margin: 0 5px;
}
.inner-bgtxt {
    position: absolute;
    right: 0;
    text-align: right;
    top: 210px;
}
.inner-bgtxt h2 {
	font-family: 'futura';
	font-size: 5em;
    font-weight: bold;
    color: #317afd;
    opacity: 0.1;
    letter-spacing: -5px;
    line-height: 1em;
    padding-right: 15px;
     user-select: none; /* 텍스트 선택 방지 */
    -webkit-user-drag: none; /* 드래그 방지 (WebKit 브라우저용) */
    -webkit-touch-callout: none; /* iOS에서 텍스트 선택 방지 */
}
aside.inner h5 {line-height: 31px; font-weight: normal;}

/* black-box 설정 */
.black-box {
    position: relative;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
}

/* container 중앙 정렬 */
aside.picture .container {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    text-align: center;
    color: white;
}
.sub-nav a {color: #bbb;}
.sub-nav a.active, .sub-nav a:hover {color: #00263e;}

/* Title */
.tit {text-align: center; padding-top: 5em;}
.tit h2 {font-size: 51px; font-weight: bold; color: #317afd;}
.tit h4 {font-size: 25px;}
.gray-box {
	background-color: #eaeaea;
	padding: 40px 30px;
	border-radius: 10px;
	word-break: keep-all;
	margin-top: 20px;
	font-size: 15px;
}
.gray-box p {margin-bottom: 0px;}
.linear-box {
    margin: 0;
    background-color: white;
    background-image: 
        linear-gradient(0deg, transparent 95%, #e9e9e9 95%), 
        linear-gradient(90deg, transparent 95%, #e9e9e9 95%);
    background-size: 14px 14px;
    border: 1px solid #d9d9d9;
    border-top: none;
}
.img-slide-box {
    position: relative;
    margin-top: 5em;
    padding-top: 46.5%;
}
.img-slide {position: absolute; left: 0%; top: 0%; width: 100%; height: 100%;}
.img-slide .left {position: absolute; left: 0; top: 0; width: 25%; height: 100%; background-color: #fff; transition: width 0.5s ease;}
.img-slide .right {position: absolute; right: 0; top: 0; width: 25%; height: 100%; background-color: #fff; transition: width 0.5s ease;}
.record {background: #fff; border-radius: 20px; box-shadow: 0.5rem 0.5rem 1rem #0000001A; text-align: center;}
.record .py-4 {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.record img {border-radius: 20px 20px 0 0; width: 100%;}
.infra .record img {height: 300px;}
.div_record .infra .record img {height: auto;}
.ready {
	background: #ccc; 
	height: 300px; 
	border-radius: 20px 20px 0 0; 
	display: flex; 
	align-items: center; 
	justify-content: center;
}
.record p {margin-bottom: 0;}
.record ul {
    text-align: left;
    margin-left: 5px;
    padding: 0 20px;
    display: inline-block;
}
.record ul li {
    list-style: disc;
    position: relative;
    padding-left: 40px;
}
.record ul li:before {
    position: absolute;
    left: -5px;
    top: 0;
}
.record li:nth-child(1):before {content: '소재 :';}
.record li:nth-child(2):before {content: '규모 :';}
.infra .record li:nth-child(1):before {content: '구간 : ';}
.infra .record2 li:nth-child(1):before {content: '위치 : ';}
.infra.tunnel .record li:nth-child(1):before {content: '소재 :';}
.infra .record li:nth-child(2):before {content: '연장 : ';}
.infra .record li:nth-child(3):before {content: '과업 : ';}
.en .record ul li {padding-left: 0;}
.en .record li:nth-child(1):before {display: none;}
.en .record ul li:nth-child(1) {padding-left: 0px;}
.en .record li:nth-child(2):before {display: none;}
.en .infra .record li:nth-child(3):before {display: none;}
.differ img {/* max-width: 200px; */ margin-bottom: 20px;}
.vision-value .col-6 div {
    padding: 20px;
}
.vision-value h5 {
    text-align: center;
    padding-bottom: 20px;
    border-bottom: 3px solid #317afd;
    color: #317afd;
}
.vision-value ul {padding: 20px;}
.vision-value ul li {padding-left: 25px; position: relative; line-height: 31px; margin-bottom: 10px;}
.vision-value ul li::before {
    margin-right: 7px;
    font-weight: bold;
    font-family: 'arial';
    display: block;
    position: absolute;
    left: 0;
    top: 1;
}
.vision-value ul li:nth-child(1)::before {content: '①';}
.vision-value ul li:nth-child(2)::before {content: '②';}
.vision-value ul li:nth-child(3)::before {content: '③';}
.vision-value ul li:nth-child(4)::before {content: '④';}

/* Tab */
.row.tabs {margin: 0;}
.main_tab_container {margin: 2em 0;}
.main_tab_container_box.sticky {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    background-color: white; /* 필요 시 배경색 추가 */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* 필요 시 그림자 추가 */
}
.tabs li {
    padding: 1em 0;
    font-size: 17px;
    border: 1px solid #317afd;
    border-right: none;
    cursor: pointer;
}
.tabs li:first-child {border-radius: 10px 0 0 10px;}
.tabs li:last-child {border-right: 1px solid #317afd; border-radius: 0 10px 10px 0;}
.tabs li:hover,
.tabs li.active {background-color: #317afd; color: #fff; transition: 0.3s;}
.tab_content {display: none;}
.tab_content.active {display: block;} 
    
.vision .col-3 div {
    border: 1px solid #fff;
    border-radius: 50%;
    width: 300px;
    height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ceo-message h5 {
	line-height: 1.8em;
    font-weight: 500;
}
/* ESG */
.esg .news-content.text-center {padding: 35px 0px;}
.esg .news-content.text-center h5 {font-size: 18px;}
.esgSwiper .swiper-pagination-bullet-active {background: #fff; opacity: 1;}
.esgSwiper .swiper-horizontal>.swiper-pagination-bullets, 
.esgSwiper .swiper-pagination-bullets.swiper-pagination-horizontal {bottom: 20%;}
.esgSwiper-box .black-box {position: absolute; z-index: -1;}
.button-zone .button {
    background: no-repeat;
    border: 1px solid #fff;
    border-radius: 100px;
    min-width: 210px;
    margin: 25px 15px 0px;
}
.sinmungo .modal-dialog {min-width: 35%; margin-top: 1% !important;}
.sinmungo .btn.submit {
    background: #00263e;
    color: #fff;
    margin-top: 20px;
}
.sinmungo .length_max {
    position: absolute;
    right: 0.3cm;
    bottom: 0.1cm;
    z-index: 200;
    font-size: 13px;
    color: grey;
}
.sinmungo label.btn {
    margin-bottom: 0;
    border-radius: 5px !important;
    background: #bbb;
}
/* 언론보도 */
.news-box {cursor: pointer; border-radius: 20px; box-shadow: 0.5rem 0.5rem 1rem #0000001A;}
.news-box img {border-radius: 20px 20px 0 0;}
.news-content h4 {line-height: 1.3em; word-break: keep-all; margin-bottom: 30px;}
.news-box .news-content {
    text-align: left;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border-bottom: 1px solid #eee;
	padding: 35px;
    text-align: left;
    min-height: 230px;
}
.news-box:hover .news-content {background: #f5f5f5; transition: 0.3s;}
.en .news-box .news-content {min-height: 250px;}
.pagination {margin-top: 3em; padding-bottom: 5em;}
.page-link {color: #00263e;}
.page-link.active, .active > .page-link {background-color: #00263e; border-color: #00263e;}
.page-link:focus {box-shadow: none;}

/* 공시정보 */
.ir-table .thead {border-top: 2px solid #00263e; background: #e7e7e7;}
.ir-table .thead div {padding: 15px 0px;}
.ir-table .tbody {padding: 15px 0px; vertical-align: middle; border-bottom: 1px solid #f5f5f5; cursor: pointer;}
.ir-table .tbody:hover {background: #f5f5f5; transition: 0.3s;}
.ir-table .tbody p {margin-bottom:0;}
.border-title {border-bottom: 1px solid #00263e; text-align: center; padding: 35px 0px;}
.board-file {background: #f5f5f5; padding: 20px; text-align: center;}
.board-file img {margin-top: -4px; width: auto;} 
 
section#business {
    position: relative;
    top: 0;
}
.s-nav {
    width: 100%;
    position: absolute;
    bottom: 0;
    text-align: center;
    color: #fff;
    border-top: 1px solid;
    border-color: rgb(255, 255, 255, 0.5);
}
.fixed-nav {
    position: fixed;
    top: 0;
    z-index: 999;
    border-bottom: 1px solid;
    border-color: rgb(255, 255, 255, 0.5);
    height: auto;
    bottom: auto;
  }
.fixed-nav .col:hover {background: rgb(49, 122, 253, 1); transition: 0.3s;}
.hidden-nav {display: none;}
.row.justify-content-center .col-3.mb-3.wow.fadeIn {
    display: flex;
    justify-content: center;
}
.s-nav .row {margin: 0;}
.s-nav .col {
    border-right: 1px solid;
    border-color: rgb(255, 255, 255, 0.5);
    padding: 25px 0px;
	backdrop-filter: blur(4px);
}
.s-nav .col:last-child {border-right: none;}
#business .content,
#esg .content,
#environment.content {
	color: #000;
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	position: relative;
	animation: backgroundResize 1s ease forwards;
	background-size: cover !important;
}
#subesg {
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
}
@keyframes backgroundResize {
    0% {
        background-size: 105%; /* 시작 크기 */
    }
    100% {
        background-size: 100%; /* 최종 크기 */
    }
}
#business .content h2.display-3 {font-family: 'futura';}
#business .button {background: no-repeat; border-color: #fff;}
#business .button:hover {background: #317afd; transition: 0.3s; border-color: #317afd;}
.circle {
    border: 1px solid;
    border-color: rgb(255, 255, 255, 0.5);
    background: rgb(255, 255, 255, 0.1);
}
.circle .row {justify-content: center;}
.circle .col {
	border-right: 1px solid;
	border-color: rgb(255, 255, 255, 0.5);
}
.circle .col-4 {
	border-right: 1px solid;
	border-color: rgb(255, 255, 255, 0.5);
}
.circle .col-4.border-bottom {border-color: rgb(255, 255, 255, 0.5);}
.circle .col:last-child {border: none;}
.circle .col div {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.circle .col div i {
	display: block;
	font-size: 51px;
	margin-bottom: 20px;
}
.circle .col-3 div p {margin-bottom: 0;}
.esg-message {
    position: absolute;
	top: 65%;
}
.esg-tabs {border: none; display: block; z-index: 1; position: relative;}
.esg-tabs .nav-link {
	font-family: 'Futura';
    color: #fff;
    opacity: 0.5;
    padding: 0;
    text-align: left;
    margin-bottom: 0;
    border: none; 
}
.esg-tabs .nav-link:hover,
.esg-tabs .nav-link:focus,
.esg-tabs .nav-link:focus-visible {border: none; box-shadow: none;}
.esg-tabs .nav-link.active,
.esg-tabs .nav-link:hover {
    background: none !important;
    color: #fff !important;
    border: none;
    opacity: 1;
}
.polaroid {	
    background: #fff;
    border-radius: 10px;
    color: #444;
    padding: 30px;
    height: 100%;
}
.polaroid h5 {font-family: 'Futura';}
.hashtag span {
    background: #efefef;
    padding: 5px 15px;
    border-radius: 50px;
    margin-bottom: 10px;
    margin-right: 5px;
    display: inline-block;
    font-size: 14px;
}

#operation .nav-item {cursor: pointer; padding: 0px 0px 20px; display: flex; align-items: center;}
#operation .nav-link {
    color: #444;
    margin: 0 5px;
    background: #f5f5f5;
    font-size: 24px;
    width: 230px;
    padding: 18px;
    margin: 0;
    border-bottom: 3px solid #f5f5f5;
}
.en #operation .nav-link {
    font-size: 18px;
    width: 250px;
}
#operation .nav-item:last-child::after {display: none;}
#operation .nav-link:hover {border-bottom: 3px solid #317afd !important;}
#operation .nav-link.active {border-bottom: 3px solid #317afd !important; font-weight: bold;}
#operation .nav-item::after {
    content: "";
    display: block;
    width: 2px;
    height: 20px;
    background-color: #ddd;
}
#operation .row>div {
	transition: opacity 0.5s ease, transform 0.5s ease;
	opacity: 1;
	transform: translateY(0);
}
#operation .row>div.hidden {
	opacity: 0;
	transform: translateY(20px);
	pointer-events: none;
}
.news-nav {
    margin-bottom: 80px;
    border-bottom: none;
    display: flex;
    width: 100%;
    justify-content: center;
}
.news-nav .nav-link {
    color: #444;
    padding: 15px 30px;
    border: none;
    border-bottom: 2px solid #fff;
}
.news-nav .nav-item {
    display: flex;
    align-items: center;
}
.news-nav .nav-item::after {
    content: "";
    display: block;
    width: 2px;
    height: 20px;
    background-color: #ddd;
}
.nav-tabs .nav-item:last-child::after {
    display: none;
}
.news-nav .nav-link.active,
.news-nav .nav-link:hover {
    color: #317afd;
    border-bottom: 2px solid #317AFD;
}
.ex {
    background: #f5f5f5;
    border-radius: 20px;
    box-shadow: 0.5rem 0.5rem 1rem #0000001A;
    text-align: left;
}
.ex .p-4 {
    min-height: 156px;
}
.scroll {
    background: url(/resource/images/scroll.png);
    width: 30px;
    height: 54px;
    position: absolute;
    bottom: 32px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    background-size: 30px;
    background-repeat: no-repeat;
    animation: scrollAnimation 1s ease-in-out infinite;
}
@keyframes scrollAnimation {
    0% {
        transform: translate(-50%, 0); /* 시작 위치 */
    }
    50% {
        transform: translate(-50%, 10px); /* 아래로 이동 */
    }
    100% {
        transform: translate(-50%, 0); /* 원래 위치로 돌아옴 */
    }
}
.jeju-icon-box .col-2 div {
    padding: 2em;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.jeju-icon-box .col-2 div img {
    background: #f4f4f4;
    border-radius: 10px;
    text-align: center;
    padding: 10px;
}
.osan-circle {color: #fff; text-align: center; margin-top: 100px;}
.osan-circle .col {
    width: 250px;
    height: 250px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
	position: relative;
	flex: none;
}
.osan-circle .col h2 {margin-bottom: 0; line-height: 1.2;}
.osan-circle .col span {font-size: 21px;}
.osan-circle .col:first-child {background: #5ccec7; left: 125px;}
.osan-circle .col:nth-child(2) {background: #3fb7ad; left: 90px;}
.osan-circle .col:nth-child(3) {background: #2ab8be; left: 60px;}
.osan-circle .col:nth-child(4) {background: #4ebcdb; left: 10px;}
.osan-circle .col:nth-child(5) {background: #1fa3d3; left: -30px;}
.osan-circle .col:nth-child(6) {background: #267fb6; left: -70px;}

.jeju-rec .col-3 {width: 20%;}
.jeju-rec .col-3 div {height: 330px; padding: 25px;}

/*연혁*/
.area-top-about.about3-1 .area-inner {padding-top:328px;}
.cont1-3-1 {margin:0 0 -40px 0;overflow:hidden;}
.cont1-3-1 .title {padding:65px 0 90px 0;text-align:center;font-size:32px;color:#1e314a;font-weight:700;} 
.box-history {
    margin: 0 0 40px 0;
    padding: 0 0 70px 0;
    background: url(/resource/images/icon/img_bar_history1.png) no-repeat 50% 120px;
    background-size: 17px auto;
}
.box-history .year {
    margin-bottom: 100px;
    text-align: center;
    font-size: 61px;
    color: #317afd;
    font-weight: 700;
    letter-spacing: -3px;
}
.box-history dl {
    position: relative;
    margin: 0 0 100px 529px;
    background: url(/resource/images/icon/img_bar_history2.png) no-repeat left 13px;
    background-size: 53px auto;
}
.cont1-3-1 .box-history dl.inphoto {min-height:130px;}
.box-history dl dt {
    position: absolute;
    left: 0;
    top: 3px;
    padding: 0 0 0 22px;
    width: 125px;
    font-size: 18px;
    color: #00263e;
    font-weight: 700;
}
.box-history dl dt {font-size: 16px;}
.box-history dl dd {
    padding: 2px 0 0 80px;
    line-height: 31px;
    font-size: 16px;
}
.en .box-history dl dd {
    font-size: 14px;
}
.en .box-history dl dd {padding: 2px 0 0 130px;}
.box-history dl dd.photo {
    position: absolute;
    left: -360px;
    top: 0px;
    margin: 0;
    padding: 0;
}
.box-history dl dd.photo img {
    width: 300px;
    height: 190px;
}
.sub-map-box {
	display: flex;
	align-items: flex-start;
    justify-content: center;
    margin-bottom: 15em;
}
.score-box {
	max-width: 300px;
	padding-top: 15em;
}
.score-box div {
	border: 1px solid #ddd;
    border-radius: 10px;
    flex: 0 0 auto;
    margin-bottom: 10px;
    padding: 20px 20px 15px;    
}
.score-box .counter {
    font-weight: bold;
    font-size: 41px;
    text-align: right;
}
.map {
    position: relative;
    background: url(/resource/images/map/ex.png) no-repeat 100% 0;
    height: 900px;
    width: 590px;
}
.map-list {
    position: absolute;
    width: 100%;
    height: 100%;
}
.map-point {
    position: absolute;
    border: 1px solid #7aaa16;
    border-radius: 100px;
    width: max-content;
    background: #fff;
    padding: 3px 15px 4px;
    cursor: pointer;
    min-width: 150px;
    text-align: center;
}
/* .map-point span {
    display: inline-block;
    width: 12px;
    height: 12px;
    font-size: 0;
    text-indent: -9999em;
    position: relative;
} */
/* .map-point span::before {
    content: "";
    z-index: 21;
    width: 20px;
    height: 20px;
    position: absolute;
    background: #317afd;
    background-size: contain;
    border-radius: 50%;
    left: -25px;
    top: 7px;
}
.ecosky span::before,
.ecowind span::before,
.ecohallim span::before {display: none;}
.ecowind span::after,
.ecosky span::after,
.ecohallim span::after {
    content: "";
    z-index: 21;
    width: 20px;
    height: 20px;
    position: absolute;
    background: #317afd;
    background-size: contain;
    border-radius: 50%;
    right: -25px;
    top: 7px;
} */
.ecoincheon {
    left: -108px;
    top: 112px;
}
.ecoblueincheon {
    left: -108px;
    top: 155px;
}
.ecoosan {
    left: 200px;
    top: 236px;
}
.ecojeju {
    left: -64px;
    top: 771px;
}
.bio2 {
    left: 185px;
    top: 775px;
}
.bio1 {
    left: 124px;
    top: 632px;
}
.ecojunju {
    left: 186px;
    top: 461px;
}
.ecopyoseon {
    left: 216px;
    top: 815px;
}
.ecohallim {
    left: -64px;
    top: 813px;
}
.ecogokseong {
    left: 203px;
    top: 572px;
}
.ecocheongju {
    left: 252px;
    top: 322px;
}
.ecojincheon {left: 252px;top: 279px;}

.ecosolra {
    left: -108px;
    top: 250px;
}
.ecosasung {
    left: -108px;
    top: 291px;
}
.ecowind {
    left: 127px;
    top: 192px;
}


.map-point:hover {background-color: #e0e0e0;}
.ecohallim .map-detail,
.ecojeju .map-detail,
.ecopyoseon .map-detail,
.ecogokseong .map-detail {
    top: -407px;
}
.ecogokseong .map-detail {
    top: -335px;
}
.bio2 .map-detail, .bio1 .map-detail {
    top: -385px;
    left: -45%;
}
.en .ecogokseong .map-detail {
        top: -386px;
}
.en .bio2 .map-detail,
.en .bio1 .map-detail {
    top: -367px;
    left: -32%;
}
.en .ecopyoseon .map-detail {
    top: -429px;
}
.en .ecohallim .map-detail {top: -450px;}
.en .ecojeju .map-detail {top: -428px;}
.map-point.ecosolra,
.map-point.ecosasung,
.map-point.ecowind {
    border-color: #0dd3d3;
}
.m-box {display: none;}


/* ============================================================================ */
/* ================================ Mobile CSS ================================ */
/* ============================================================================ */
@media screen and (max-width: 1700px) {
	.infra .col-2 h5 span {display: block;}
	.osan-circle .col {
	    width: 200px;
	    height: 200px;
	}
	.osan-circle .col:first-child {left: 145px;}
	.osan-circle .col:nth-child(2) {left: 120px;}
	.osan-circle .col:nth-child(3) {left: 90px;}
	.osan-circle .col:nth-child(4) {left: 60px;}
	.osan-circle .col:nth-child(5) {left: 20px;}
	.osan-circle .col:nth-child(6) {left: 0px;}
	
	.cont1-3-1 .box-history dl {
        margin: 0px 0 100px 446px;
    }
}
@media screen and (max-width: 1600px) {
	.flex-slide .flex h2 {font-size: 25px;}
}
@media screen and (max-width: 1400px) {
	.news-content h4 {font-size: 21px;}
	.display-1.futura {font-size: 71px;}
	.article h4 {font-size: 18px;}
	.flex-slide .flex h2 {font-size: 24px;}
	.counta .main-video {height: 160vh;}
	.gnb>ul>li>a {padding: 0 40px;}
	.nav-sub-detail {padding: 10px 10px 25px;}
	.ceo-message .col-5 {width: 46%;}
	.record h5 {font-size: 18px;}
	.env-map.business-score .row div {width: 73%;}
	.grounds .col-2 {width: 20%;}
	.infra .col-3 {width: 30%;}
	.en .infra .col-3 {margin-bottom: 75px;}
	.en .infra .col-3:last-child {margin-bottom: 0px;}
	.infra .record img, .ready {height: 240px;}
	.infra .record .p-4 {min-height: 140px;}
	.osan-circle .col {
	    width: 165px;
	    height: 165px;
	}
	.osan-circle .col h4 {font-size: 1.2rem; line-height: 1.2;}
	.osan-circle .col span {font-size: 15px; line-height: 31px;}	
	.cont1-3-1 .box-history dl {margin: 0px 0 100px 359px;}
	.record ul li {padding-left: 36px; font-size: 15px;}
}
@media screen and (max-width: 1300px) {
	.flex-slide .flex h2 {font-size: 21px;}
}
@media screen and (max-width: 1200px) {
	#fh5co-logo {
	    width: 110px !important;
	    height: 75px !important;
	    background-size: 110px !important;
	    margin-top: 20px !important;
	}
	.lang.me-5 {margin-right: 1rem !important;}
	.gnb .ms-5 {margin-left: 1rem !important;}
	.gnb>ul>li>a {
        padding: 0 25px;
        font-size: 15px;
    }
    .lang a {font-size: 15px;}
	.flex-slide .flex {padding: 15px;}
	.infra .col-2 h5 {font-size: 17px;}
	.en .infra .col-2 h5 {font-size: calc(1.275rem + 0.3vw);}
	.env-map.business-score .row div {width: 60%;}
	.osan-circle .col {
	    width: 135px;
	    height: 135px;
	}
	.osan-circle .col h4 {font-size: 1rem; line-height: 1.2;}	
	.cont1-3-1 .box-history dl {margin: 0px 0 100px 299px;}\
	.energy .differ .col-2 {width: 40%;}
}
@media screen and (max-width: 1000px) {
    .gnb>ul>li>a {font-size: 14px;}    
    .lang a {font-size: 14px; padding: 5px 10px 7px;}
    .display-1.futura {
        font-size: 61px;
		text-align: center;
    }
    .iframe-wrap {
	    width: auto;
	    overflow: auto;
	}
    .flex-slide .flex {padding: 10px;}
    .flex-slide .flex h2 {font-size: 19px;}
    .container.df-normal {text-align: center;}
    #operation .business-score h5 {text-align: left;}
    #operation p.pb-5.mb-5 {padding-bottom: 0px !important; margin-bottom: 0px !important;}
    .env-map.business-score .row div {
        width: 43%;
    }    
    .energy .differ .col-2 {
	    width: 25%;
	}
	.record ul li {font-size: 14px; padding-left: 33px;}
    #operation .business-score .row {
    	display: flex;
	    justify-content: center;
	}
    #operation .business-score {
	    margin-top: 178%;
	}	
    .osan-circle .col {position: static;}
	.osan-circle .col {
        flex: 1 0 0%;
        min-height: auto;
    }
}
@media screen and (max-width: 840px) {
	body, p, .flex-text,
	.main .container h3 {font-size: 14px; line-height: 22px;}
	h5 {font-size: 15px;}
	
	img {width: 100%;}
	.col-5 {width: 50%;}
	.mainSwiper img {height: 100vh; object-fit: cover;}
	.main .container {
        text-align: center;
        margin-top: 30px;
        display: flex;
        flex-direction: column;
        align-items: center;
    }
	.main .container img {width: 75%;}
	#fh5co-menu-wrap {display: none;}
	#operation .business-score {
	    margin-top: 0;
	}
	#operation p.pb-5.mb-5 br {display: none;}
	.pc-box {display: none;}
	.m-box {display: block;}
	.sub-menu-box .home {
        display: none;
    }
	.swiper-bar {width: 85%;}
	
	/* Mobile GNB */
	#fh5co-header-section, 
	#fh5co-header-section.fh5co-scrolled:hover,
	#fh5co-header-section.fh5co-scrolled {height: 0;}	
	#fh5co-logo-mobile-wrap {
		display: block;
	    -webkit-transition: all 0.3s ease;
	    -moz-transition: all 0.3s ease;
	    -ms-transition: all 0.3s ease;
	    -o-transition: all 0.3s ease;
	    transition: all 0.3s ease;
	    height: 45px;
	    position: fixed;
	    top: 0;
	    width: 100%;
	    z-index: 9999999;
	    background: #fff;
	    -webkit-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
	    -moz-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
	    -ms-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
	    -o-box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
	    box-shadow: 0 0.125em 0.125em 0 rgba(0, 0, 0, 0.125);
	}
	#fh5co-logo-mobile-logo {
	    background: url(/resource/images/main/yidologo_mobile.png) no-repeat 0 0;
	    display: block;
	    position: absolute;
	    top: 3px;
	    left: 0;
	    width: 80px;
	    height: 50px;
	    margin: 3px;
	    background-size: 80px;
	}
	#fh5co-mobile-menu-btn {
	    padding: 0 10px;
	    z-index: 999999;
	    position: absolute;
	    top: 0;
	    right: 0;
	    background: #00263e;
	    height: 45px;
	    display: table;
	}
	#fh5co-mobile-menu-btn i {
	    line-height: 25px;
	    display: table-cell;
	    vertical-align: middle;
	    font-size: 22px;
	    color: #fff;
	}
	#fh5co-mobile-menu {
		display: none;
	    -moz-transform: translateX(275px);
	    -webkit-transform: translateX(275px);
	    -ms-transform: translateX(275px);
	    transform: translateX(275px);
		transition: all 0.3s ease;
	    display: block;
	    height: 100%;
	    right: 0;
	    position: fixed;
	    top: 0;
	    width: 275px;
	    z-index: 999999;
	    background: #fff;
	    margin-top: 45px;
	    border-left: 1px solid #f5f5f5;
	}
	#fh5co-mobile-menu-ul {border-top: 1px solid #f5f5f5;}
	#fh5co-mobile-menu-ul .mobile_depth {border-bottom: 1px solid #f5f5f5; color: #00263e; font-weight: bold;}
	#fh5co-mobile-menu-ul li p {margin-bottom: 0; width: 100%; display: flex; justify-content: space-between; padding: 20px 25px;}
	.mobile_depth p.active {background: #317afd; color: #fff;}
	#fh5co-mobile-menu-ul .mobile-depth2 {display: none;}
	#fh5co-mobile-menu-ul .mobile-depth2 li a {width: 100%; padding: 15px 25px 10px; display: block; font-weight: 500;}
	#fh5co-mobile-menu-ul .mobile-depth2 li:first-child a {
	    border-top: 1px solid #ddd;
	}
	#fh5co-mobile-menu.fh5co-mobile-menu-visible {
	    -moz-transform: translateX(0);    /* Firefox */
	    -webkit-transform: translateX(0); /* Safari and older Chrome */
	    -ms-transform: translateX(0);     /* Internet Explorer */
	    transform: translateX(0);         /* Standard */
	}
	.swiper-box {width: 70%; position: relative;}
	.main-business {height: auto;}
	.en #b-grounds {height: auto; padding: 5em 0em;}
	.main-business .black-box {top: 0; position: absolute;}
	.flex-container {display: inline-table;}
	.flex-slide .flex {padding: 10px 30px;}
	.flex-slide {width: 100% !important; padding: 6em 0em;}
	.flex-about {opacity: 1; display: block;display: block;}
	.flex-slide .flex {position: relative; top: auto;}
	
	
    .counta .main-video {display: none;}
	.overview {flex-direction: column; justify-content: center;}
	.overview h5 {font-size: 14px;}
	.display-1.futura {font-size: 45px;}
	.blur {
	    position: static;
	    display: flex;
	    flex-direction: row;
	    width: 85%;
	}
	.blur div {
	    height: auto;
	    border: 1px solid;
	    border-color: rgb(255, 255, 255, 0.5);
	    padding: 35px 0px 20px;
	    margin-top: 35px;
	    border-right: none;
	}
	.blur div:last-child {border-right: 1px solid; border-color: rgb(255, 255, 255, 0.5);}
	.blur img {width: auto;}
	.blur p {font-size: 14px !important; text-align: center;}
	.article .col {flex: 1 0 50%;}
	.en .article .col {
        flex: 1 0 100%;
    }
	#promotionList .col-4 {width: 50%;}
	.border-title {padding: 20px 0px;}
	.board-file a {display: block; line-height: 33px; text-align: left;}
	.footer img {width: auto;}
	.footer-box {align-items: flex-start; flex-direction: column;}
	.family-site-box {margin-top: 15px;}
	button.contact {min-width: auto !important; margin-top: 15px;}
	.footer .float-end, .footer .float-start {float: none !important;}
	.footer span.ms-3 {margin-left: 0 !important;}
	.s-nav {
	    position: relative;
	    width: 65%;
	}
	.s-nav .col {
	    flex: 0 0 auto;
	    width: 100%;
	    border: 1px solid;
	    border-color: rgb(255, 255, 255, 0.5);
	    border-bottom: none;
	    padding: 15px 0px;
	}
	.s-nav h4 {font-size: 16px;}
	.s-nav .col:last-child {
	    border-bottom: 1px solid;
	    border-right: 1px solid;
	    border-color: rgb(255, 255, 255, 0.5);
	}
	.recoard-box .col-4 {
	    flex: 0 0 auto;
	    width: 50%;
	}
	.record p {font-size: 14px;}
	.record img {height: 240px;}
	.infra .col-2 {width: 50%;}
	
	.circle .col.py-5 {
        flex: 0 0 auto;
        width: 94%;
        padding: 15px 0 !important;
        border: 1px solid;
	    border-color: rgb(255, 255, 255, 0.5);
	    border-bottom: none;
    }
    .circle {border: none;}
    .circle .col:last-child {
	    border-bottom: 1px solid;
	    border-color: rgb(255, 255, 255, 0.5);
	}
	#subesg .col-7, #subesg .col-4 {
	    flex: 0 0 auto;
	    width: 100%;
	}
	.patent .col-3 {
	    flex: 0 0 auto;
	    width: 50%;
	}
	.news-nav {
		 justify-content: space-between;
        margin-top: 50px;
        margin-bottom: 20px;
     }
	.news-nav .nav-item:first-child {width: 100%;}
	.news-nav .nav-item:nth-child(2),
	.news-nav .nav-item:nth-child(3) {width: 49.5%;}
	.news-nav .nav-item:last-child {width: 100%;}
	.en .news-nav .nav-item:nth-child(2),
	.en .news-nav .nav-item:nth-child(3) {width: 100%;}
	.news-nav .nav-item::after {display: none;}
	    .news-nav .nav-item button {
        width: 100%;
        border: 1px solid #317afd;
        border-radius: 10px;
        margin: 5px 0px;
        padding: 15px 0px;
    }
    .news-nav .nav-link.active, .news-nav .nav-link:hover {
	    color: #fff;
	    border-bottom: 2px solid #317AFD;
	    background: #317afd;
	}
	#business .content {background-size: cover !important; height: 40vh; margin-top: 45px;}
	.sub-menu-zone .container {
	    padding: 0 !important;
	    margin: 0 !important;
	}
	
	.m-br br {display: none;}	
	#counta .container {
        flex-direction: column;
        padding-top: 50px;
		padding-bottom: 50px;        
    }
	.differ.vision {margin: 0 !important;}
	.differ.vision .col-2 {width: 33.33333333%;}
	.differ.vision .col-2:first-child,
	.differ.vision .col-2:nth-child(2) {width: 50%;}
	.en .differ.vision .col-2 {width: 50%;}
	.energy .differ .col-2 {width: 50%;}
	.en .energy .differ .col-2 {width: 100%;}
	.energy .differ {margin-top: 0 !important;}
	.energy .differ button.button {padding: 5px; width: 100%; margin-top: 0 !important;}
	.en .energy .differ button.button {
		width: 50%;
        margin-bottom: 30px;
	}
	.en .record ul {padding: 0 15px 0 35px; display: block;}
	.mission .col-2 {width: 50%;}
	.mission .col-2 div {width: 100%;}
	
	.ceo-message .col-5 {width: 100%;}
	.container.py-5 .row .col-10 {width: 100%;}
	.business-score .row {
	    display: flex;
	    justify-content: center;
	}
	.business-score .row div:nth-child(2n) {margin-right: 0;}
	.container.df-normal {
        display: block !important;
        padding: 50px 15px;
        max-width: 100%;
    }
	.map-section {
	    position: relative;
	    height: 860px;
	}
	.map {
   	    margin-top: 0 !important;
   	    right: 0;
        position: absolute;
    }
    .ecogokseong .map-detail {top: -392px;}
    .bio2 .map-detail, .bio1 .map-detail {top: -373px; left: -50%;}
	.ecohallim .map-detail, .ecojeju .map-detail, .ecopyoseon .map-detail {top: -437px;}
}

@media screen and (max-width: 450px) {

	.popup {
	    top: 10%;
	    right: 0;
	    width: 100%;
	    display: flex;
	    justify-content: center;
	}
	.popup .layer {width: 90%;}
	.swiper-bar {width: 85%;}
	.main .container img {width: 75%;}
	.main .container h3 {margin-top: 15px;}
	.col-1, .col-2, .col-3, .col-4, .col-5,
	.col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12 {width: 100%;}	
	.tabs .col-2 {width: auto; padding: 10px;}
	.swiper-bar svg {width: 40px;}	
	.display-1.futura br {display: none;}
	.article h4 {height: 65px; font-size: 14px; line-height: 1.3; margin-bottom: 0 !important;}
	.article p {font-size: 12px;}
	.article .col {margin-bottom: 20px;}
	.article .my-3.fw-bold {margin-top: 0 !important;}
	.text-white.text-center.rounded-1.p-3.my-5 {margin-bottom: 15px !important;}
	#newsList .col-4,
	#promotionList .col-4 {width: 100%;}
	.flex-slide .flex {padding: 0 30px !important;}
	.news-box .news-content,
	.en .news-box .news-content {min-height: auto;}
	.sub-menu a {min-width: auto;}
	.footer span {display: block;}
	.sub-nav {margin-top: -78px;}
	
	.safed-zone.py-5.mt-5 {margin-top: 0px !important;}
	.safed-zone .box {min-width: 50%;}
	.safed-zone .box p:first-child {font-size: 14px;}
	.safed-zone .box p span {
	    width: 22px;
	    height: 22px;
	    font-size: 14px;
	    line-height: 23px;
	}
	.safed-zone .box ul {padding-left: 25px;}
	.en .safed-zone .box p {margin-bottom: 0px;}
	.safed-zone .col {
	    flex: 1 0 100%;
	    max-width: 260px;
	}
	
	#environment.content {background-size: cover !important; height: 100vh;}
	#esg .content {background-size: cover !important; height: 100vh;}
	#esg .button-zone.mt-5 {margin-top: 0 !important;}
	#sub.py-5.my-5,
	#sub.pt-5.mb-5 {padding: 0 !important; margin: 0 !important;}
	.mission .col-2.py-5 {padding-top: 0 !important; padding-bottom: 1em !important;}
	.m-br h2 {font-size: 21px;}
	
	.energy .differ h4, .infra h5 {font-size: 15px; letter-spacing: -1px;}
	.en .energy .differ h4, .infra h5 {font-size: calc(1.275rem + 0.3vw); letter-spacing: 0px;}
	.scroll {display: none;}
	.ceo-title {text-align: center; margin-bottom: 25px;}
	.vision-value h5 {padding-top: 5px;}
	.ceo-message {margin-bottom: 100px;}
	
	.title .display-3.futura {font-size: 29px;}
	.linear-box {padding: 25px !important;}
	.linear-box img {padding: 20px !important;}
	
	.business_score .counter {font-size: 21px !important;}
	.col-6.pt-2 h5 div {top: 3px; position: relative;}
    .business_score h2.display-5.mb-5.fw-bold.wow.slideInUp {font-size: calc(1.325rem + 0.9vw); text-align: center;}
	
	.row.my-5.py-5.justify-content-center.wow.fadeIn {margin: 50px 0px; padding: 0px !important;}
	.d-flex.justify-content-start.align-items-center.mb-3 {flex-direction: column; text-align: center;}
	.differ img {margin-right: 0; margin-bottom: 25px;}
	.ir-table {border-top: 1px solid #e7e7e7;}
	.ir-table .thead {display: none;}
	.ir-table .tbody div {width: 100%; text-align: left;}
	.ir-table .tbody .col-1 {display: none;}
	.ir-table .tbody .col-2 p {color: #bbb;}
	.board-content {padding: 20px 15px !important;}
	#fh5co-header-section.sub-header {height: 0px;}
	aside.inner {height: 145px;}
	aside.inner .inner-bgtxt {margin-bottom: -60px;}
	aside.inner .inner-bgtxt h2 {display: none;}
	aside.inner h5 {font-size: 14px; line-height: 21px;}
	aside.inner h5 span {display: block;}
	aside.inner .nav {display: flex; justify-content: center;}
	aside.inner .nav-link {margin: 0 5px 0 0; padding: 5px 10px;}	
	.sub-menu-zone .container {padding: 0;}
	.sub-menu {flex: 0 0 auto; width: 45%;}
	.sub-menu:last-child {width: 55%;}
	.sub-menu-title {
	    padding: 15px;
	    padding-right: 0px;
	    min-width: auto;
    }
    .en .sub-menu-box .sub-menu:first-child {display: none;}
    .en .sub-menu-title,
    .en .sub-menu-list li a {font-size: 12px; }
    img.img-fluid.mb-5 {
	    margin-bottom: 1.5em !important;
	}
    .sub-menu a {
        padding: 15px 10px;
    }
    .sub-menu-list.visible {width: 101%; top: 53px; min-width: auto;}
	.polaroid {margin-top: 30px;}
	.vision.py-5 {padding: 0 !important;}
	.vision .col-3 {display: flex; justify-content: center;}
	.vision .col-3 div h4 {line-height: 31px;}
	.recoard-box.mt-5.pt-5 {padding-top: 0 !important;}
	.recoard-box .col-4 {flex: 0 0 auto; width: 100%;}
	.record .p-4 {height: auto !important; min-height: auto !important;}
	.osan-circle {margin-top: 20px;}
	.osan-circle .col {
	    width: 100%;
	    height: auto;
	    border-radius: 0;
	    position: static;
	    padding: 20px;
	}
	.ex-box .col {flex: 1 0 100%;}
	.infra .col-3 {
        width: 100%;
    }
	#b-livd img {width: 180px; margin-bottom: 20px !important;}
	.project .col {
	    flex: 1 0 100%;
	}
	.project-logo .col-2 img {width: 200px;}
	.project-logo .col-2 button {margin-top: 0px !important;}
	.container.df-normal span {display: inline-block;}
	.container.df-normal .pb-5.mb-5 {margin: 0 !important; padding: 0 !important;}
	#b-properties .circle .col-4 {
	    width: 50%;
	    padding: 20px 15px !important;
	    border: 1px solid;
	    border-right: none;
	    border-bottom: none !important;
	}
	#b-properties .circle .col-4:nth-child(2n) {border-right: 1px solid #fff;}
	#b-properties .circle .col-4:nth-child(5),
	#b-properties .circle .col-4:nth-child(6)  {border-bottom: 1px solid #fff !important;}
	#b-properties h3 {font-size: 17px;}
	.mission .line {display: none;}
	
	.title p br {display: none;}
	.title h5 br {display: none;}
	.flex-about p br {display: none;}
	
	span {display: block;}
	.partner .col-3 img {
	    margin: 0 !important;
	    margin-bottom: 15px !important;
	}
	.partner .col-3 {width: 33%;}
	.jeju-rec .col-3 {width: 50%;}
	.jeju-rec .col-3 div {height: 200px; margin-bottom: 25px;}
	button.top-btn {right: 20px; bottom: 72%;}
	#sub-2 .container.py-5.my-5 {
	    margin-bottom: 0 !important;
	    padding-bottom: 0 !important;
	}
	.counta .col-3 {
	    width: 50%;
	    margin-bottom: 50px;
	}
	#operation .nav-link {
	    font-size: 14px;
	    width: auto;
	    padding: 10px;
	}	
	.en #operation .nav-link {
	    font-size: 14px;
	    width: auto;
	    padding: 10px;
	}
	.mission .col-2 {
        width: 100%;
    }
    
	.jeju-icon-box .col-2 {width: 50%;}
	.vision-value .col-6 div {border: 1px solid #317afd; margin-bottom: 30px;}
	.vision-value ul {padding: 0; padding-top: 15px;}
	.vision-value ul li {line-height: 21px;}
	.ceo-title h4.fw-bold.pt-3.futura {font-size: 17px;}
	.ceo-title h4.fw-bold.pt-3.futura br {display: none;}
	
	.board-content iframe {
	    width: 100%;
	    height: auto;
	}	
	.mission .col-2 div {
	    width: 100% !important;
	    height: auto;
	    padding: 2em;
	}
	.en .mission .col-2 div {
	    height: auto;
	}
	
	
	#chain {flex-direction: column;}
	.chain {flex-direction: column;}
	.chain-circle {margin-bottom: 20px;}
	.chain-circle, .chain-circle div {
		min-height: auto !important;
	    width: 100%;
	}
	.chain-circle img {width: 50%;}
	.ex .p-4 {min-height: auto;}
	.ex-box.mt-5.pt-5 {padding: 0 !important;}
	.article {
        padding: 0;
        padding-bottom: 50px;
        background: #f1f1f1;
        height: auto;
    }

    #contact .col-2 {width: 20%;}
    #contact .col-9 {width: 80%;}
    #contact .container.mt-5.py-5 {margin: 0px !important; padding-top: 0px !important;}
    
    .family-site {padding: 15px 15px; min-width: 160px;}
    button#family-site {min-width: 160px;}
    
    .leisure .col-2 {width: 50%; margin-bottom: 50px !important;}
    .differ.mt-5.pt-5.wow.fadeInUp.leisure {margin-top: 0px !important;}
    .leisure .col-2 h4 {font-size: 16px;}
    .leisure button.button {width: 100%; padding: 5px;}
    .infra .col-2 {width: 50%; margin-bottom: 50px !important;}
    .en .infra .col-2 {width: 100%;}
    .infra button.button {width: 100%; padding: 5px 10px; margin-top: 0px; }
    .en .infra button.button {width: 50%;}

	/*연혁*/
	.cont1-3-1 .title {margin:0 0 20px 0;padding:23px 0;font-size:20px;}
	.cont1-3-1 .title.y1990 {background-size:270px auto;}
	.cont1-3-1 .title.y2000 {background-size:270px auto;}
	.cont1-3-1 .title.y2010 {background-size:270px auto;}
	.cont1-3-1 .title.y2018 {background-size:270px auto;}
	.cont1-3-1 .box-history {margin:0 0 20px 0;padding:0 0 30px 0;}
	.box-history .year {
        font-size: 31px;
        text-align: left;
        letter-spacing: -1px;
    }
	.cont1-3-1 .box-history {background-position:10px 44px;} 
	.cont1-3-1 .box-history dl {margin-left:14px;background: url(/resource/images/icon/img_bar_history2.png) no-repeat left 3px}
	.box-history dl dt {
        padding: 0 0 0 30px;
        font-size: 15px;
        top: 0;
    }
    .en .box-history dl dt {position: relative;}
    .en .box-history dl dd {padding: 2px 0 0 30px;}
	.box-history dl dd {
		padding: 0 0 0 75px;
		text-align: left;
		font-size: 14px;		
        line-height: 20px;
	}
    .box-history dl dd.photo {
        position: static;
        padding: 10px 0 0 20px;
    }
	.cont1-3-1 .box-history dl dd.photo img {width:100%;}
	.leisure .col-2 h5 {font-size: 14px;}
	
}