@charset "UTF-8";

/* HEADER */
#header {
	width: 100%; height: 60px;
	position: absolute; top: 0; left: 0; z-index: 3000;
	display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: flex; justify-content: space-between; align-items: center;
	background-color: #fff; padding: 0px 20px 0px 0px; box-sizing: border-box; border-bottom:1px solid #efefef; border-radius: 0 0 17px 17px; transition: 0.3s;
	box-shadow: 1px 1px 7px rgb(0, 110, 219, 0.3);
}
#header .navMIcon { display: none; }

#header nav {
	position: absolute; top: 0; left: 50%; transform: translate( -50%, 0%);
	width: 1240px;
	transition: 0.3s;
}
#header nav #gnb { display: flex; justify-content: center; transition: 0.3s; }
#header nav #gnb>li { position: relative; text-align: left; position: relative; box-sizing: border-box; box-sizing: content-box; transition: 0.3s; }
#header nav #gnb>li.active::before { 
	content:""; position: absolute; left: 50%; bottom: -7px; transform: translate(-50%, 0%); z-index: 3000;
	width: 0; height: 0; border-style: solid; border-width: 7px 6px 0px 6px;
	border-color: #004ba8 transparent transparent transparent; transition: 0.3s;
}

#header nav #gnb>li>a {
	display: block; width: auto; padding: 0 20px;
	height: 60px; line-height: 60px;
    font-size: 17px; font-weight: bold; color: #333;
	box-sizing: border-box; text-align: center; transition: 0.3s;
}
#header nav #gnb>li>a::after {
	content:"";
	position: absolute; background: #dbdbdb;
	width: 1px; height: 17px; right: -1px; top: 50%; transform:translate(0%, -50%);
}
#header nav #gnb>li:last-child>a::after { display: none; }
#header nav #gnb>li>a::before {
	content:"";
	position: absolute; bottom: 0px; left: 50%; transform:translate(-50%, 0%); z-index: 3000; 
	width: 0px; height: 2px;
	background: #004ba8; transition: 0.3s;
	
}
#header nav #gnb>li.active>a,
#header nav #gnb>li:hover>a { color: #004ba8; }

#header nav #gnb>li.active>a::before,
#header nav #gnb>li:hover>a::before { width: calc(100% - 10px); }


#header nav #gnb li .menuS {
	position: absolute; top: 60px; left: 50%; transform:translate(-50%, 0%);
	width: 0px; height: 0px; overflow: hidden; opacity: 0; border-radius: 0;
	background: #fff; /* border: 1px solid #d6ecfe; */ border-top: none; transition: 0.3s;
}
#header nav #gnb li .menuS::-webkit-scrollbar {
	width:10px;
}
#header nav #gnb>li:hover .menuS { width: 177px; height: auto;  max-height:960px; opacity: 1;}
#header nav #gnb>li:nth-child(7):hover .menuS {overflow-y:scroll;}
#header nav #gnb li:last-child .menuS { border-right: none; }
#header.on nav #gnb li .menuS { display: block; height: 311px; transition: 0.5s; }
#header.on nav #gnb>li .menuS:hover { background: #f3faff; transition: 0.5s; }
#header nav #gnb li .menuS li a {
	display:block; width: 177px; font-size:15px; font-weight: 600; color: #555; 
	text-align: center; box-sizing: border-box; padding: 15px 0; letter-spacing: -1px;
	border-bottom: 1px solid #d6ecfe; transition: 0.3s; 
}
#header nav #gnb li .menuS li:last-child { border-bottom: none; }
#header nav #gnb li .menuS li a:hover {
	color: #fff; text-decoration: underline; text-underline-offset : 2px;
	background: #006edb;
}

@media all and (max-width:1770px){
	#header nav #gnb>li>a { padding: 0 13px; font-size: 16px; }
}


/* //HEADER */

/* max-width */
.widthC{max-width: 1240px; margin:0 auto;}
/* //max-width */
.mapWrap { width: 100%; height: 100vh; position:relativel}
#map {
    width: 100%;
    /* height: 100vh; */
    height: 100dvh;
    height: -webkit-fill-available;
    border: 1px solid #e9e9e7;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}

/* 신규 통합 콘텐츠 영역 CSS */
#LContWrap {
	position: absolute; left: -1240px; top: 60px; z-index: 700; transition: 0.3s; 
	max-width: 1240px; width: 100%; height: calc(100vh - 60px);
	background: rgba(255, 255, 255, 0.5); padding: 10px 0 10px 10px; box-sizing: border-box;
	backdrop-filter: blur(50px); -webkit-backdrop-filter: blur(50px);
	border: 1px solid rgba(255, 255, 255, 0.3); border-right: 1px solid #f3faff;
	box-shadow: 
	  1px 1px 17px rgba(0, 110, 219, 0.3),
	  inset 0 1px 0 rgba(255, 255, 255, 0.5),
	  inset 0 -1px 0 rgba(255, 255, 255, 0.1),
	  inset 0 0 60px 30px rgba(255, 255, 255, 3);
}
#LContWrap.LContFull { max-width: 100%; transition: 0.3s; }

#LContWrap .LContScroll { height: calc(100vh - 90px); overflow: auto; padding: 0 10px 10px 0; }

#LContWrap .LContOpenBtn { 
	position: absolute; right: -27px; top: 50%; transform:translate( 0%, -50%); z-index: 1000;
	width: 25px; height: 42px; cursor: pointer; transition: 0.3s; 
	background: url('../../images/abs/icon/ico_LContOn.png') no-repeat center;
}
#LContWrap .LContOpenBtn.active { 
	background: url('../../images/abs/icon/ico_LCont.png') no-repeat center;
}





/* 서브페이지 내비게이션 */
.pageTlt {
	max-width: 1240px; margin: 0 auto;
	display: flex !important; justify-content: flex-start; align-items:flex-end; display: -webkit-box; display: -moz-box; display: -ms-flexbox;
	position: relative; border: 1px solid #d6edff; border-radius: 7px; 
	background: #fff; box-sizing: border-box;
}
.pageTlt .depth { position: relative; font-size:0; width: 33.3%; height: 40px; line-height: 40px; }



.pageTlt .depth button.selected { 
	display:inline-block; width: 100%; height: 40px; line-height: 40px; 
	font-size: 15px; color:#666; font-weight: bold; background: #fff; border-radius: 7px;
	padding: 0 0 0 17px; box-sizing: border-box; text-align: left; transition: 0.3s;
}
.pageTlt .depth button.selected::after {
    content: "▼";
    position: absolute;
    right: 30px;
    top: 50%;
    font-size: 10px;
    transform: translateY(-50%);
    color: #999;
}
.pageTlt .depth button.selected::before {
	content:""; position: absolute; right: 0; top: 0; width: 16px; height: 40px;
	background: url('../../images/abs/icon/contNavNext.png') no-repeat center;
}
.pageTlt .depth.depth3 button.selected::before { display: none; }

.pageTlt .depth .dropdown {
    display: none; position: absolute; top: 40px; left: -1px;
    width: calc(100% - 13px); background: #fff; border: 1px solid #d6ecfe; border-radius: 8px; z-index: 999;
}
.pageTlt .depth .dropdown.dd2dtpth { left: -15px; }
.pageTlt .depth .dropdown li {
    list-style: none; padding: 0px 15px; cursor: pointer;
    font-size: 14px; color: #333; font-weight: bold; border-bottom: 1px solid #d6ecfe;
}
.pageTlt .depth .dropdown li:last-child { border-bottom: none; }
.pageTlt .depth .dropdown li:hover {
    color: #006edb;
}

.pageTlt .lContClose { 
	position: absolute; right: 0px; top: 0px; width: 40px; height: 40px; 
	border-left: 1px solid #d6edff; text-align: center; border-radius: 7px;
	background: #fff url('../../images/abs/icon/contNavClose.png') no-repeat center;
}

.pageTlt h1 { position: absolute; left: 0; top: 50px; font-size:1.25rem; color:#1b1a1a; font-weight:bold; padding-left:3px; z-index: -1; }
.pageTlt h1:after {content:""; width: 1px; height: 40px; background:#cacaca; position:absolute; right:-1px; top:0}

.contTitWrap { 
	position: relative; max-width: 1240px;
	font-size: 20px; font-weight:bold; background: #fff; border: 1px solid #d6ecfe; border-left: 3px solid #006edb; color: #006edb;
	padding: 11px 0 11px 13px; box-sizing: border-box; margin: 15px auto 10px;
}
.contTitWrap>span { display: inline-block; vertical-align: middle; font-size: 14px; color: #555; margin-left: 10px; }
.contTitWrap>span.titTxt { vertical-align: top; margin-left: 0; font-size: 20px; color: #006edb; }


.contTitWrap .nomalCheck { position: absolute; right: 15px; top: 50%; transform:translate( 0%, -50%); }


.contTitWrap .contTitBtn { position: absolute; right: 3px; top: 50%; transform:translate( 0%, -50%); margin-left: 0; }
.contTitWrap .contTitBtn select {
    width: 77px; height: 40px; line-height: 40px; border: 1px solid #d6ecfe; border-radius: 7px;
    box-sizing: border-box; margin-top: 0px; padding: 0 27px 0 7px;
}
.contTitWrap .contTitBtn span { display: inline-block; vertical-align: middle; }



.contTitWrap .warningTxt { 
	position: relative; display: inline-block; font-weight: 400;
	font-size: 14px; color: #bd0000; text-align: left; line-height: 18px; letter-spacing: -1px;
	background: #fffce6;
}

.contTitWrap .warningTxt span { display: inline-block; vertical-align: top; font-size: 14px; padding-right: 10px; margin-right: 10px; border-right: 1px solid #ff0000; font-weight: bold; color: #ff0000; }

.contTitWrap.chartTitW100 { width: 100%; max-width: 100%; margin: 5px auto 5px; }


.contTitInfoTxt { padding: 10px; box-sizing: border-box; background: #fff; font-size: 13px; font-weight: bold; border-radius: 7px; margin-bottom: 10px; }
.contTitInfoTxt h5 { font-size: 15px; color: #006edb; }
.contTitInfoTxt .txtAreaWrap { height: 200px; overflow-y: auto; border: 1px solid #d6ecfe; margin: 10px 0 10px; padding: 5px; box-sizing: border-box; }







/* 
button.popBtn { font-size: 13px; padding: 0 7px; height: 30px; line-height: 32px; background: #555; }
*/
 
 /* 입항, 예정 선박 */
.shipList {
	position: absolute; right: 10px; top: 70px; z-index: 101;
}
.shipList .icoSearchWrap { position: relative; z-index: 10; width: 59px; height: 59px; transition: 0.3s; background: none; overflow: hidden; }
.shipList .icoSearchWrap.active { 
	width: 370px; height: 59px; background: #fff;
	border: 1px solid #006edb; border-radius: 57px; 
}

.shipList .icoSearchWrap .search { 
	display: none; position: absolute; right: 0; top: 0; z-index: 9;
	width: 0; height: 59px; padding-left: 0px; box-sizing: border-box; font-size: 16px; font-weight: bold; 
	transition: 0.3s; border: none; 
}
.shipList .icoSearchWrap .search::placeholder { color: #aaa; font-weight: bold; }
.shipList .icoSearchWrap .search.active { width: calc(100% - 107px); left: 59px; display: block; }

.shipList .icoSearchWrap .icoSearch { 
	position: absolute; left: 0; top: 0; z-index: 10; display: block; width: 59px; height: 59px; font-size: 0; border-radius: 59px;
	background: #006edb url(../../images/abs/icon/ico_subSearch.svg) no-repeat center;
	transition: 0.3s; border: 1px solid #fff;
}
.shipList .icoSearchWrap .icoSearch:hover {
	background: #fff url('../../images/abs/icon/ico_subSearchOn.svg') no-repeat center;
	transition: 0.3s; border: 1px solid #006edb;
}
.shipList .icoSearchWrap .icoSearch.active:hover { border: 1px solid #fff; }
.shipList .icoSearchWrap .icoSearch.active { background: #fff url('../../images/abs/icon/ico_subSearchOn.svg') no-repeat center; } 

.shipList .icoSearchWrap .searchClose { 
	display: none; position: absolute; right: 0; top: 0; z-index: 11; width: 59px; height: 59px; font-size: 0;
	background: url('../../images/abs/icon/contNavClose.png') no-repeat center;
}
.shipList .icoSearchWrap .searchClose.active { display: block; }



.shipList .icoSearchWrap .searchFilter { 
	position: absolute; right: 50px; top: 50%; transform:translate( 0%, -50%); z-index: 9;
	height: 27px; line-height: 27px; padding: 0 5px; background: #757575; color: #fff; font-size: 13px;
	display: none; 
}
.shipList .icoSearchWrap .searchFilter.active { background: #006eda; }
.shipList .icoSearchWrap.active .searchFilter { display: block; } 


.shipList .shipListWrap { width: 0; position: absolute; top: 17px; right: 0; overflow: hidden; opacity: 0; transition: 0.3s; }
.shipList .shipListWrap.active {
  width: 370px; height: auto; max-height: calc(100vh - 95px); overflow-y: auto; 
  background: rgba(255, 255, 255, 0.5); backdrop-filter: blur(50px);
  -webkit-backdrop-filter: blur(50px); border-radius: 17px; border: 1px solid rgba(255, 255, 255, 0.3);
  box-shadow: 
	  1px 1px 17px rgba(0, 110, 219, 0.3),
	  inset 0 1px 0 rgba(255, 255, 255, 0.5),
	  inset 0 -1px 0 rgba(255, 255, 255, 0.1),
	  inset 0 0 60px 30px rgba(255, 255, 255, 3);
  position: absolute; padding: 50px 10px 0; box-sizing: border-box;
  top: 17px; right: 0; opacity: 1; transition: 0.3s; 
}
.shipList .shipListWrap.active::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.8),
    transparent
  );
}
.shipList .shipListWrap.active::after {
  content: ''; position: absolute; top: 0; left: 0; width: 1px; height: 100%;
  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0.8),
    transparent,
    rgba(255, 255, 255, 0.3)
  );
}
.shipList .shipListWrap::-webkit-scrollbar {
    width: 10px; height: 10px; border-radius: 40px; 
}
.shipList .shipListWrap::-webkit-scrollbar-thumb {
    background: #006edb;
    border-radius: 40px; 
}
.shipList .shipListWrap::-webkit-scrollbar-track {
    background: #dbf0ff;
    border: none;
    border-radius: 40px;
}



.shipList .shipListWrap .shipListCont { 
	position: relative; height:100%;
	min-height: 128px; background: #fff; margin-bottom: 10px; padding: 10px 10px 10px;
	border-radius: 7px 7px 13px 13px; border: 1px solid #d4eaff; border-top: 2px solid #ccecff;  
}
.shipList .shipListWrap .shipListCont::after { 
	content:""; position: absolute; left: -1px; top: -1px; z-index: 1;
	width: 7px; height: 7px; border-radius: 7px; background: #006edb;
}
.shipList .shipListWrap .shipListCont.red { border-top: 2px solid #ffd4d4; }
.shipList .shipListWrap .shipListCont.red::after { background: #ff5f5f; }
.shipList .shipListWrap .shipListCont.green { border-top: 2px solid #c5ffb0; }
.shipList .shipListWrap .shipListCont.green::after { background: #43b61a; }
.shipList .shipListWrap .shipListCont.black { border-top: 2px solid #ccc; }
.shipList .shipListWrap .shipListCont.black::after { background: #777; }




.shipProgress { height: 3px; border-radius: 3px; border: 1px solid #006edb; background: #fff; margin: 10px 0 10px; font-size: 0; }
.shipProgress span { display: inline-block; width: 2%; height: 3px; border-radius: 3px; background: #006edb; font-size: 0; }
.shipProgress span.progress30 { width: 30%; }

.shipList .shipListWrap .shipListCont.red .shipProgress { border: 1px solid #ff5f5f; }
.shipList .shipListWrap .shipListCont.red .shipProgress span { background: #ff5f5f; }
.shipList .shipListWrap .shipListCont.green .shipProgress { border: 1px solid #43b61a; }
.shipList .shipListWrap .shipListCont.green .shipProgress span { background: #43b61a; }
.shipList .shipListWrap .shipListCont.black .shipProgress { border: 1px solid #aaa; }
.shipList .shipListWrap .shipListCont.black .shipProgress span { background: #aaa; }

.shipProgress.red { border: 1px solid #ff5f5f; }
.shipProgress.red span { background: #ff5f5f; }
.shipProgress.green { border: 1px solid #43b61a; }
.shipProgress.green span { background: #43b61a; }
.shipProgress.black { border: 1px solid #aaa; }
.shipProgress.black span { background: #aaa; }






.shipList .shipListWrap .shipListCont .shipListInfo ul { 
	display: table;
    width: 100%;
    table-layout: fixed;
    width: calc(100% + 10px);
    margin-left: -5px;
    margin-right: -5px;
    border-spacing: 6px 0;
}
.shipList .shipListWrap .shipListCont .shipListInfo ul li { 
	display: table-cell;
    vertical-align: top;
    width:50%;
	border: 1px solid #abd5ff; 
	border-top: 2px solid #004ba8; 
	border-radius: 7px; 
	font-size: 13px; 
	padding: 7px 10px 10px; 
	box-sizing: border-box; 
	background: #f6faff;  
}
.shipList .shipListWrap .shipListCont .shipListInfo ul li span { font-size: 12px; color: #777; }
.shipList .shipListWrap .shipListCont .shipListInfo ul li h5 { 
	display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-all;
	font-size: 15px; 
	font-weight: bold; 
	color: #004ba8; 
}
.shipList .shipListWrap .shipListCont .shipListInfo ul li.block { background: #f0f0f0; color: #777; border: 1px solid #fff; }
.shipList .shipListWrap .shipListCont .shipListInfo ul li.block span { color: #aaa; }
.shipList .shipListWrap .shipListCont .shipListInfo ul li.block h5 { color: #999; }
.shipListViewWrap .shipListViewCont .shipListInfo ul li:first-child {
	cursor: pointer;
}

.shipList .shipListWrap .shipListCont .likeBtn {
	position: absolute; left: 10px; top: 13px; transform:translate( 0%, 0%);
	display: inline-block; width: 19px; height: 19px; font-size: 0; border: 1px solid #aaa; padding: 0;
	background: #fff url('../../images/abs/icon/shipListStar.png') no-repeat center; vertical-align: middle;
}
.shipList .shipListWrap .shipListCont .likeBtn.on { 
	border: 1px solid #006edb;
	background: #fff url('../../images/abs/icon/shipListStarOn.png') no-repeat center;
}

.shipList .shipListWrap .shipListCont h3 { width: calc(100% - 57px); /* padding: 0 0 0 27px; */ box-sizing: border-box; font-size: 17px; font-weight: bold; transition: 0.3s; }
.shipList .shipListWrap .shipListCont h3 a { 
	width: calc(100% - 0px); text-overflow: ellipsis; overflow: hidden; display: -webkit-box; padding: 0px 0 0px;
    -webkit-box-orient: vertical; -webkit-line-clamp: 1; transition: 0.3s; vertical-align: middle;
}
.shipList .shipListWrap .shipListCont h3:hover a { color: #006edb; text-decoration: underline; }

.shipList .shipListWrap .shipListCont .state { 
	position: absolute; right: 10px; top: 10px; display: inline-block; padding: 0px 6px; border-radius: 7px;
	font-size: 12px; font-weight: bold; background: #f6faff; border: 1px solid #006edb; color: #006edb;
}

.shipList .shipListWrap .shipListCont.red .state {  background: #ffd4d4; border: 1px solid #ff5f5f; color: #4d0000; }
.shipList .shipListWrap .shipListCont.green .state {  background: #c5ffb0; border: 1px solid #43b61a; color: #214d00; }
.shipList .shipListWrap .shipListCont.black .state {  background: #f0f0f0; border: 1px solid #555; color: #555; }







/* 기존 소스
.shipList .shipListWrap li h3 { width: calc(100% - 77px); font-size: 17px; font-weight: bold; transition: 0.3s;}
.shipList .shipListWrap li h3 a { 
	width: 100%; text-overflow: ellipsis; overflow: hidden; display: -webkit-box; padding: 8px 0 0px; line-height: 37px;
    -webkit-box-orient: vertical; -webkit-line-clamp: 1; transition: 0.3s;
}
.shipList .shipListWrap li h3:hover a { color: #006edb; text-decoration: underline; }

.shipList .shipListWrap li h5 { font-size: 15px; margin-bottom: 0px; }
.shipList .shipListWrap li span { font-size: 13px; color: #555; }
.shipList .shipListWrap li span span { font-weight: bold; }

.shipList .shipListWrap li>div { position: absolute; right: 7px; top: 50%; transform:translate( 0%, -50%); width: 65px; text-align: right; }
.shipList .shipListWrap li>div button { 
	display: inline-block; background: #fff; border: 1px solid #d4eaff; border-radius: 7px; padding: 2px 7px; margin: 2px 0; font-size: 12px; font-weight: 500;
    line-height: initial; color: #555; height: auto;
}
.shipList .shipListWrap li>div button:focus-visible { outline: solid 2px #000; border-radius: 1%; }
.shipList .shipListWrap li>div button:first-child { 
	width: 19px; height: 19px; font-size: 0; border: 1px solid #aaa; 
	background: #fff url('../../images/abs/icon/shipListStar.png') no-repeat center;
}
.shipList .shipListWrap li>div button:first-child.on { 
	border: 1px solid #006edb;
	background: #fff url('../../images/abs/icon/shipListStarOn.png') no-repeat center;
}

.shipList .shipListWrap li>div button img { margin: 0px 0 0 -5px; }
.shipList .shipListWrap li>div button.on { border: 1px solid #006edb; color: #006edb; } 
*/



/* 
.shipList .shipListWrap li h5 { font-size: 15px; margin-bottom: 0px; }

.shipList .shipListWrap li span { font-size: 13px; color: #555; }
.shipList .shipListWrap li span span { font-weight: bold; } 
*/


@media screen and (max-width: 787px) {
	.shipList .icoSearchWrap.active{
		width:330px;
	}
	.shipList .shipListWrap.active{
		width:100%;
	}
	.shipListViewWrap.active{
		height:46vh;
	}
}

@media screen and (max-width: 420px) {
	.shipList .icoSearchWrap.active{
		width:280px;
	}
}

/* 지도 항구 버튼 */
.mapPortWrap {
	position: absolute; left: 50%; top: 77px; transform: translate( -50%, 0%); z-index: 100;
	background: #fff; border: 1px solid #006eda; border-radius: 50px; padding: 3px;
}
.mapPortWrap button { background: none; color: #006eda; border-radius: 50px; padding: 0 10px; }
.mapPortWrap button.on, .mapPortWrap button:hover { background: #006eda; color: #fff; padding: 0 20px; }
.mapPortWrap button:first-child { margin-left: 10px; }
.mapPortWrap button:last-child { margin-right: 10px; }
.mapPortWrap button:first-child:hover, .mapPortWrap button:last-child:hover,
.mapPortWrap button.on { margin: 0px; }


.portPopShipBtn { 
	position: inherit; transform: translate( 0%, 0%); border: none;
	display: block; margin: 0px auto 0px;; padding: 0; min-width: inherit; text-align: center;
}
.portPopShipBtn button { height: 33px; line-height: 37px; border-radius: 7px 7px 0 0; padding: 0 7px; }
.portPopShipBtn button.on, .portPopShipBtn button:hover { padding: 0 15px; }



/* 선석 정보, 일정 */
.wharfWrap {
	position: absolute; top: 70px; right: -370px; transition: 0.3s; z-index: 102;
	max-width: 370px; height: auto; max-height: calc(100vh - 95px); 
	background: rgba(255, 255, 255, 0.5); backdrop-filter: blur(50px);
	-webkit-backdrop-filter: blur(50px); border-radius: 30px 30px 17px 17px;
	box-shadow: 
		1px 1px 17px rgba(0, 110, 219, 0.3),
		inset 0 1px 0 rgba(255, 255, 255, 0.5),
		inset 0 -1px 0 rgba(255, 255, 255, 0.1),
		inset 0 0 60px 30px rgba(255, 255, 255, 3);
		
	padding: 0px 0px 0; box-sizing: border-box;
	oveflow:hidden;
}
.wharfWrap.active { right: 10px; overflow-y:auto;}
.wharfWrap .wharfTit { 
	position: relative; display: block; height: 60px; line-height: 60px; color: #006fdb;
	background: #fff; border: 1px solid #006edb; border-radius: 58px;
	padding: 0 0 0 20px; box-sizing: border-box;
}
.wharfWrap .wharfTit .wharfLike { 
	display: inline-block; vertical-align: middle;
	width: 21px; height: 21px; padding: 0;  font-size: 0; border: 1px solid #aaa; 
	background: #fff url('../../images/abs/icon/shipListStar.png') no-repeat center; margin: -3px 2px 0 20px;
}
.wharfWrap .wharfTit .wharfLike.on { 
	border: 1px solid #006edb;
	background: #fff url('../../images/abs/icon/shipListStarOn.png') no-repeat center;
}
.wharfWrap .wharfTit .wharfClose { 
	position: absolute; right: 15px; top: 50%; transform: translate(0%, -50%); z-index: 11; 
	width: 30px; height: 30px; font-size: 0; padding: 0; border-radius: 30px; border: 1px solid #555;
	background: url('../../images/abs/icon/contNavClose.png') no-repeat center; background-size: 13px;
}

.wharfWrap .wharfCont { padding: 20px; }
.wharfWrap .wharfCont .common.titTable tbody th, .wharfWrap .wharfCont .common.titTable tbody td { padding: 3px 0 3px 10px; font-size: 15px; text-align: left; }

.wharfWrap .wharfCont .common tbody tr { border-bottom: 1px solid #aad5ff; }
.wharfWrap .wharfCont .common tbody th { background: #f6f9fe; color: #00164d; line-height: 35px; text-align: cneter; }
.wharfWrap .wharfCont .common tbody td { 
	background: #fff; padding: 3px 0 3px 10px; line-height: 35px; text-align: left; border-bottom: none;
	text-overflow: ellipsis;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}

.wharfWrap .wharfCont h3 {
	position: relative; padding: 10px; box-sizing: border-box; margin: 20px 0 10px;
	font-size: 17px; color: #1b1a1a; font-weight: bold; background: #fff;
    border: 1px solid #d6ecfe; border-left: 3px solid #006edb; color: #006edb;
}


.expectWrap {
	position: absolute; bottom: -300px; left: 10px; transition: 0.3s; z-index: 701;
	width: calc(100% - 20px); min-height: 50px; overflow: auto; 
	background: rgba(255, 255, 255, 0.5); backdrop-filter: blur(50px);
	-webkit-backdrop-filter: blur(50px); border-radius: 17px;
	box-shadow: 
		1px 1px 17px rgba(0, 110, 219, 0.3),
		inset 0 1px 0 rgba(255, 255, 255, 0.5),
		inset 0 -1px 0 rgba(255, 255, 255, 0.1),
		inset 0 0 60px 30px rgba(255, 255, 255, 3);
	padding: 0px 0px 0; box-sizing: border-box;
}
.expectWrap.active { bottom: 10px; }
.expectWrap h3 {
	position: relative; padding: 13px 10px; box-sizing: border-box; width: calc(100% - 20px); margin: 10px auto 10px;
	font-size: 19px; color: #1b1a1a; font-weight: bold; background: #fff;
    border: 1px solid #d6ecfe; border-left: 3px solid #006edb; color: #006edb;
}
.expectWrap h3 .wharfClose { 
	position: absolute; right: 0px; top: 50%; transform: translate(0%, -50%); z-index: 11; 
	width: 45px; height: 45px; font-size: 0; padding: 0; border-radius: 0; border-left: 1px solid #d6ecfe;
	background: url('../../images/abs/icon/contNavClose.png') no-repeat center;
}

.expectWrap h3 .contTitBtn { position: absolute; right: 65px; top: 50%; transform:translate( 0%, -50%); margin-left: 0; }
.expectWrap h3 .contTitBtn .expectBtn { background: #757575; height: 35px; line-height: 35px; margin-right: 7px; padding: 0 10px; }
.expectWrap h3 .contTitBtn input {
	height: 35px; line-height: 35px; border: 1px solid #d6ecfe; border-radius: 7px;
    box-sizing: border-box; margin-top: 0px; padding: 0 27px 0 7px; font-size: 15px; border: 1px solid #757575;
}

.expectWrap .expectCont { width: calc(100% - 20px); margin: 0px auto 10px; background: #fff; overflow-x: auto; }






/* 선박 정보, 일정 */
.shipListViewWrap {
	 right: -370px;
}
.shipListViewWrap.active { right: 10px;}

.shipListViewWrap .shipListViewCont { padding: 10px 20px 20px; }

.shipListViewWrap .shipListViewCont .shipListInfo ul { 
	margin-bottom: 10px;
    display: table;
    width: 100%;
    table-layout: fixed;
    width: calc(100% + 10px);
    margin-left: -5px;
    margin-right: -5px;
    list-style: none;
    border-spacing: 10px 0; 
}
.shipListViewWrap .shipListViewCont .shipListInfo ul li { 
	display: table-cell;
    vertical-align: top;
    width:50%;
	border: 1px solid #abd5ff;
	border-top: 2px solid #004ba8;
	border-radius: 7px;
	font-size: 13px;
	padding: 7px 10px 10px;
	box-sizing: border-box;
	background: #fff;
	word-break: break-all;
    white-space: normal;
    overflow-wrap: break-word;
}
.shipListViewWrap .shipListViewCont .shipListInfo ul li span { font-size: 12px; color: #777; }
.shipListViewWrap .shipListViewCont .shipListInfo ul li h5 { font-size: 15px; font-weight: bold; color: #004ba8; }
.shipListViewWrap .shipListViewCont .shipListInfo ul li.block { background: #f0f0f0; color: #777; border: 1px solid #fff; }
.shipListViewWrap .shipListViewCont .shipListInfo ul li.block span { color: #aaa; }
.shipListViewWrap .shipListViewCont .shipListInfo ul li.block h5 { color: #999; }



.shipListViewWrap .shipListViewCont .upTxt { display: block; text-align: right; font-size: 13px; font-weight: bold; }

.shipListViewWrap .shipListViewCont .shipVisual { position: relative; width: 100%; height: 130px; border: 1px solid #aad5ff; border-top: 2px solid #006fdb; margin-bottom: 10px; border-radius: 0 0 7px 7px; background: #fff; }
.shipListViewWrap .shipListViewCont .shipVisual .visual { position: relative; height: 130px; background: #1b2751; border-radius: 0 0 7px 7px; }
.shipListViewWrap .shipListViewCont .shipVisual .visual::before { content:""; position: absolute; left: 0; bottom: 0; z-index: 10; width: 100%; height: 30px; background: rgba(125, 189, 255, 0.77); border-radius: 0 0 7px 7px; }
.shipListViewWrap .shipListViewCont .shipVisual .visual>img { 
	position: absolute; left: 50%; bottom: 17px; transform: translate(-50%, 0%);
	max-width: 60%;
}
.shipListViewWrap .shipListViewCont .shipVisual .visual .visualReset { 
	position: absolute; left: 10px; bottom: 5px; transform: translate(0%, 0%); z-index: 11; 
	width: 15px; padding: 0; border: none;
	border-radius: 0; background: none;
}
.shipListViewWrap .shipListViewCont .shipVisual .visual .visualReset img { width: 100%; }

.shipListViewWrap .shipListViewCont .shipVisual .visual>div { 
	position: absolute; left: 50%; top: 10px; transform: translate(-50%, 0%);
	width: calc(100% - 30px); height: 45px; 
}
.shipListViewWrap .shipListViewCont .shipVisual .visual>div>span { color: #fff; font-weight: bold; font-size: 13px; }
.shipListViewWrap .shipListViewCont .shipVisual .visual>div>span:nth-child(1) { position: absolute; left: 0; top: 0; }
.shipListViewWrap .shipListViewCont .shipVisual .visual>div>span:nth-child(2) { position: absolute; left: 0; bottom: 0; }
.shipListViewWrap .shipListViewCont .shipVisual .visual>div>span:nth-child(3) { position: absolute; right: 0; top: 0; }
.shipListViewWrap .shipListViewCont .shipVisual .visual>div>span:nth-child(4) { position: absolute; right: 0; bottom: 0; }
.shipListViewWrap .shipListViewCont .shipVisual button { 
	position: absolute; right: 4px; bottom: 4px; font-size: 13px; height: auto; line-height: inherit; padding: 0 7px; color: #555; border-radius: 7px 0 7px 7px;
	font-size: 13px; border: 1px solid #abd5ff; background: #ebf5ff; 
}

.shipListViewWrap .shipListViewCont .cont01 {
	display: flex; justify-content: space-between; align-items: center; padding: 10px; color: #00164d; font-size: 13px; border-radius: 3px 3px 7px 7px;
	background: #fff url('../../images/abs/icon/shipListArrow.png') no-repeat center; border: 1px solid #abd5ff; margin-top: 10px; 
}

.shipListViewWrap .shipListViewCont .cont02 {
	display: flex; justify-content: space-between; align-items: center; padding: 10px; color: #00164d; font-size: 13px; border-radius: 3px 3px 7px 7px;
	background: #fff; border: 1px solid #abd5ff; margin: 10px 0; font-size: 0;
}
.shipListViewWrap .shipListViewCont .cont02>span { 
	position: relative; display: block; width: calc(33.3% - 2px); height: 45px; font-size: 13px; margin: 0;
	border-right: 1px solid #abd5ff; padding: 10px; box-sizing: border-box; text-align: left; line-height: 0;
}
.shipListViewWrap .shipListViewCont .cont02>span:last-child { border-right: none; }
.shipListViewWrap .shipListViewCont .cont02>span span { position: absolute; right: 10px; bottom: 10px; font-weight: bold; }


.shipListViewWrap .shipListViewCont .common.titTable { width: 100%; border-radius: 7px 7px 17px 17px; }
.shipListViewWrap .shipListViewCont .common.titTable .country { max-width: 37px; margin-right: 10px; }

.shipListViewWrap .shipListViewCont .common.titTable .countryTxt { display: inline-block; padding: 2px 5px; background: #555; color: #fff; margin-left: 20px; line-height: 20px; font-size: 13px; border-radius: 7px; }
.shipListViewWrap .shipListViewCont .common.titTable .countryTxt.search { line-height: 23px; height: 23px; background: #004ba8; margin-left: 0; }

.shipListViewWrap .shipListViewCont .common.bTn { border-top: 1px solid #aad5ff;}
.shipListViewWrap .shipListViewCont .common.bTn th { text-align: left; padding: 3px 0 3px 10px; }







.mapBtnWrap {
	position: fixed; bottom: 16px; left: 50%; transform: translate(-50%, 0%); transition: 0.3s; z-index: 100;
	text-align: center; min-width: 299px; background: rgba(255, 255, 255, 0.5); backdrop-filter: blur(50px);
	-webkit-backdrop-filter: blur(50px); border-radius: 10px;
	box-shadow: 
		1px 1px 17px rgba(0, 110, 219, 0.3),
		inset 0 1px 0 rgba(52, 63, 80, 0.5),
		inset 0 -1px 0 rgba(52, 63, 80, 0.1),
		inset 0 0 60px 30px rgba(52, 63, 80, 3);
	padding: 7px 5px 20px; box-sizing: border-box;
}
.mapBtnWrap ul { display: flex;
    gap: 7px;
    flex-direction: row;
    padding-bottom:10px; }
.mapBtnWrap ul li {
	position: relative;
	display:flex;
	justify-content: center;
    align-items: center;
    gap:4px;
    width:calc(100%/8);
	min-width:42px;
	min-height:42px;
	padding: 0;
	font-size: 0;
	background: #1a242d;
	border-radius: 7px;
	cursor: pointer;
	transition: 0.3s;
}
.mapBtnWrap ul li img { opacity: 1;
	width:28px; }
.mapBtnWrap ul li.active img, .mapBtnWrap ul li:hover img { opacity: 1; } 

.mapBtnWrap ul li .ttTxt { 
	opacity: 0;
	display: inline-block;
	position: absolute;
	left: 50%;
	bottom: 27px;
	transform: translate(-50%, 0%);
	z-index: 10;
	min-width: 67px;
	height: 10px;
	line-height: 27px;
	border-radius: 7px;
	word-break: keep-all;
	padding: 0px 5px;
	box-sizing: border-box;
	background: #006eda;
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	transition: 0.3s;
	text-align: center;
	overflow: hidden;
}
.mapBtnWrap ul li:hover .ttTxt { display:none; bottom: 39px; opacity: 1; height: 27px; overflow: visible; }

.mapBtnWrap ul li .ttTxt::before { 
	content: "";
	position: absolute;
	left: 50%;
	bottom: -7px;
	transform: translate(-50%, 0%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7px 6px 0px 6px;
	border-color: #006eda transparent transparent transparent;
	transition: 0.3s;
	display:none;
}
.mapBtnWrap ul li:hover { background: #006eda; }


.mapBtnWrap ul li .tbTxt { 
	display: inline-block;
	position: absolute;
	left: 50%;
	bottom: -26px;
	transform: translate(-50%, 0%);
	z-index: 10;
	min-width: 67px;
	height: 27px;
	line-height: 27px;
	word-break: keep-all;
	padding: 0px 5px;
	box-sizing: border-box;
	background: none;
	color: #fff;
	font-size: 13px;
	font-weight: 600;
	transition: 0.3s;
	text-align: center;
	letter-spacing: -1px;
}

.mapBtnWrap ul li.active { background: #006eda; transition: 0.3s; }
.mapBtnWrap ul li.active .ttTxt { display: none; }
.mapBtnWrap ul li.active .mapBtnCont {  height: auto; bottom: 53px; opacity: 1; transition: 0.3s; overflow: inherit; }



.mapBtnCont { 
	position: fixed; left: 50%; bottom: 90px; transform: translate(-50%, 0%); z-index: 9;
	min-width: 300px; max-width: 1000px; height: 0; background: #343f50; border-radius: 7px; padding: 0px;
	opacity: 0; transition: 0.3s; overflow: hidden;
}
#mapBtn01, #mapBtn02 { width: 1077px; }
.mapBtnCont.active { opacity: 1; bottom: 100px; height: auto; padding: 7px; overflow: visible; }


.mapBtnCont::before { 
	content:""; position: absolute; left: 50%; bottom: -7px; transform: translate(-50%, 0%);
	width: 0; height: 0; border-style: solid; border-width: 7px 6px 0px 6px;
	border-color: #343f50 transparent transparent transparent; transition: 0.3s;
}


.mapBtnCont .nomalCheck { 
	min-width: 193px;
	display: inline-block; color: #fff; font-size: 13px; font-weight: bold; margin: 2px 5px; 
}
.mapBtnCont .nomalCheck .t_bold2 { font-size: 16px; margin-left: 10px; }



.mapBtnCont .weatherWrap { width: 100%; height: auto; }
.mapBtnCont .weatherWrap h3 {
	position: relative;
	display:flex;
	align-items: center;
	gap:4px;
	font-size: 17px;
	font-weight: bold;
	color: #fff;
	border: 1px solid #43536b;
	border-top: 2px solid #43536b;
	border-bottom: 2px solid #43536b;
	background: #1a242d;
	line-height: 35px;
	margin-bottom: 10px;
	padding: 0 0 0 13px;
	box-sizing: border-box;
	border-radius: 7px;
}
.mapBtnCont .weatherWrap h3 .icon{
	display: flex;
	width: 24px;
	height: 24px;
	padding: 1px 0;
	justify-content: center;
	align-items: center;
	gap: 10px;
	background-repeat:no-repeat;
	background-position:center center;
}
.mapBtnCont .weatherWrap h3 .icon.marine{
	background-image:url(../../images/abs/icon/icon_weather_marine_weather.svg);
}
.mapBtnCont .weatherWrap h3 .icon.air{
	background-image:url(../../images/abs/icon/icon_weather_air.svg);
}
.mapBtnCont .weatherWrap h3 .icon.ulsan-main{
	background-image:url(../../images/abs/icon/icon_weather_ulsan_main.svg);
}
.mapBtnCont .weatherWrap h3 .icon.ulsan-new{
	background-image:url(../../images/abs/icon/icon_weather_ulsan_new.svg);
}
.mapBtnCont .weatherWrap h3 .icon.onsan{
	background-image:url(../../images/abs/icon/icon_weather_onsan.svg);
}
.mapBtnCont .weatherWrap h3 .icon.wave{
	background-image:url(../../images/abs/icon/icon_weather_wave.svg);
}
.mapBtnCont .weatherWrap h3>span { position: absolute; right: 13px; top: 50%; transform: translate(0%, -50%); display: inline-block; vertical-align: top; font-size: 11px; font-weight: normal; color: #bbb; }
.mapBtnCont .weatherWrap h3>span>span { position: relative; display: inline-block; vertical-align: top; font-weight: bold; margin: 0 3px 0 7px; padding-right: 7px; color: #ddd; }
.mapBtnCont .weatherWrap h3>span>span:before { content:""; position: absolute; right: 0; top: 53%; transform: translate(0%, -50%); width: 1px; height: 10px; background: #ddd; }
.mapBtnCont .weatherWrap h3>span>span.noLine::before { display: none; }

.mapBtnCont .weatherWrap .weatherList { width: 100%; display: flex; justify-content: center; flex-wrap: nowrap; overflow-x: auto; }
.mapBtnCont .weatherWrap .weatherList .post { min-width: 112px; margin: 0 5px 10px; box-sizing: border-box; border-top: none; border-radius: 10px 10px 7px 7px; text-align: center; font-size: 0; border: 1px solid #43536b; }
.mapBtnCont .weatherWrap .weatherList .post>ul { display: block; }
.mapBtnCont .weatherWrap .weatherList .post>ul>li:nth-child(1) { 
	display: block; width: 100%; background: #47556b; border-radius: 5px; line-height: 25px;
	font-size: 13px; font-weight: bold; color: #e6f0ff; text-align: center;
}
.mapBtnCont .weatherWrap .weatherList .post>ul>li:nth-child(2) { 
	display: inline-block; font-size: 17px; font-weight: bold; padding: 5px 5px 7px 5px; color: #fff; 
}
.mapBtnCont .weatherWrap .weatherList .post>ul>li>span { 
	display: inline-block; font-size: 13px; font-weight: 500; color: #aaa; 
}


.mapBtnCont.notiBox .weatherWrap h3 b {
	display: inline-block; width: 18px; height: 18px; line-height: 18px; border-radius: 18px;
	font-size: 13px; border: 1px solid #43536b; margin-left: 7px; text-align: center; color: #fff; cursor: pointer; 
}
.mapBtnCont.notiBox .weatherWrap .weatherList .post { min-width: 137px; } 
.mapBtnCont.notiBox .weatherWrap .weatherList .post>ul>li { line-height: 19px; padding: 5px 0; }
.mapBtnCont.notiBox .weatherWrap .weatherList .post>ul>li>span { display: block; font-size: 12px; word-break: break-all; }


.mapBtnCont .weatherWrap.depts02 { display: flex; justify-content: center; flex-wrap: nowrap; }
.mapBtnCont .weatherWrap.depts02>div { width: calc(50% - 5px); margin: 5px 0 0 5px; }
.mapBtnCont .weatherWrap.depts02>div h3 { width: 100%; }
.mapBtnCont .weatherWrap.depts02>div .weatherList { width: 100%; }


.mapBtnCont .weatherWrap .weatherWrapTable { max-width: 700px; border-top: 2px solid #43536b; }
.mapBtnCont .weatherWrap .weatherWrapTable th { background: #47556b; color: #e6f0ff; border-bottom: 1px solid #43536b; border-right: 1px solid #43536b; }
.mapBtnCont .weatherWrap .weatherWrapTable td { color: #fff; border-bottom: 1px solid #43536b; border-left: 1px solid #43536b; }

#mapBtn05 { width: 610px; }
#mapBtn06 {
    min-width: 700px;
}

.mapBtnCont .search-box { background: none; border: none; margin: 0; width: auto; max-width: none; padding: 5px 135px 7px 7px; }
.mapBtnCont .search-box .sh3select li { width: 137px; display: inline-block; vertical-align: middle; margin: 0 5px; }
.mapBtnCont .search-box .sh3select li .type_tit {
    display: inline-block; position: relative;
    width: 100%; margin-bottom: 5px;
    font-size: 15px; color: #fff; font-weight: 600; padding-left: 8px; box-sizing: border-box;
}
.mapBtnCont .search-box .searchBtnWrap .search { font-size: 15px; padding: 0 10px; color: #fff; font-weight: bold; background: #1a242d; border: 1px solid  #43536b; border-radius: 7px; }
.mapBtnCont .search-box .searchBtnWrap { position: absolute; right: 5px; top: 50%; transform: translate(0%, -50%); height: calc(100% - 10px); }


.mapBtnCont .sRList { margin-bottom: 5px; }
.mapBtnCont .sRList h5 { 
	position: relative; font-size: 17px; font-weight: bold; color: #fff; border: 1px solid #43536b; background: #1a242d;
	line-height: 35px; margin: 5px 0 5px; padding: 0 0 0 13px; box-sizing: border-box; border-radius: 7px;
}
.mapBtnCont .sRList ul { width: clac(100% - 20px); margin: 0 auto; }
.mapBtnCont .sRList ul li { padding: 5px 8px; box-sizing: border-box; color: #eee; border: 1px solid #43536b; transition: 0.3s; cursor: pointer; }
.mapBtnCont .sRList ul li:hover { color: #fff; text-decoration: underline; }
.mapBtnCont .sRList ul li.noData { line-height: 70px; text-align: center; color: #aaa; cursor: default; }
.mapBtnCont .sRList ul li.noData:hover { color: #aaa; text-decoration: none; }

.mapBtnCont .selbtns button { padding: 7px 10px; background: #47556b; color: #e6f0ff; font-size: 15px; font-weight: bold; }



/* 정박지 대기 순서 관리 */
.OrdrMngFormTableWrap { display: flex; justify-content: space-between; flex-wrap: nowrap; overflow-x: auto; }
.OrdrMngFormTableWrap table { width: calc(33.3% - 10px); min-width: 700px; border-right: 2px solid #006edb; }
.OrdrMngFormTableWrap table:last-child { border-right: none; }



/* 커스터마이징 */
.chartCustomizeMng .chart-header { position: relative; margin-top: 10px; }
.chartCustomizeMng .chart-header h3 { display: inline-block; margin-right: 20px; }
.chartCustomizeMng .chart-header input { 
	display: inline-block; vertical-align: middle;
	height: 35px; line-height: 35px; border: 1px solid #d6ecfe; border-radius: 7px;
    box-sizing: border-box; margin-top: 0px; padding: 0 27px 0 7px; font-size: 15px; border: 1px solid #aaa;
    margin: 0 10px 0px 0;
}
.chartCustomizeMng .chart-header span { font-size: 15px; line-height: 30px; display: inline-block; vertical-align: middle; margin: 0px 7px 0 0; }
.chartCustomizeMng .chart-header button {
	position: absolute; right: 0; top: 50%; transform: translate(0%, -50%);
}
.chartCustomizeMng .chart-header button.add { right: 97px; }
.chartCustomizeMng .common { margin: 10px 0 30px; }
.chartCustomizeMng .common tr td button { padding: 0 10px; height: 30px; line-height: 30px; }
.chartCustomizeMng .common tr td select { height: 32px; line-height: 32px; padding: 0 27px 0 5px; }


/* 상세테이블 */
.tableListLogWrap { line-height: 0; }
.popTableListLog { width: 100%; background: #f0f0f0; padding: 20px; box-sizing: border-box; line-height: 0; }
.popTableListLog table { border-top: 2px solid #555; line-height: 20px; }
.popTableListLog table thead tr th { background: #f0f0f0; color: #333; }








/* 로그인 */
.loginWrap {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 3770;
  transition: 0.3s;
  transform: translate(-50%, -50%);
  max-width: 900px;
  min-width: 300px;
  max-height: calc(100vh - 60px);
  min-height: 200px;
  border-radius: 17px;
  background: rgba(255, 255, 255, 0.97);
  padding: 40px 40px 40px;
  box-sizing: border-box;
  backdrop-filter: blur(17px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.3);
  box-shadow:
    1px 1px 17px rgba(0, 110, 219, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.5),
    inset 0 -1px 0 rgba(255, 255, 255, 0.1),
    inset 0 0 60px 30px rgba(255, 255, 255, 3);
}
.loginWrap button { padding: 0; }
.loginWrap .loginClose {
	position: absolute; right: -10px; top: -10px; background: #1e429b;
	width: 37px; height: 37px; line-height: 37px; border-radius: 37px; text-align: center; 
}

.loginWrap .logo { width: 290px; margin: 0px auto 15px; }
.loginWrap .logo span { display: block; text-align: center; font-size: 27px; font-weight: bold; font-weight: bold; color: #1e429b; margin-top: 20px; }
.loginWrap .logo img { width: 100%; }


.loginWrap .loginCont {
	width: 100%; height: 100%;
}
.loginWrap .loginCont .loginBtn {
	width: 100%; border: 1px solid #4379ff; 
	border-radius: 45px; font-size: 0;
}
.loginWrap .loginCont .loginBtn li { 
	display: inline-block; width: calc(55% - 0.5px); margin: 0 -5%;
	cursor: pointer; line-height: 45px; color: #000; text-align: center; border-radius: 45px;
	font-size: 14px; font-weight: bold; vertical-align: baseline;
}
.loginWrap .loginCont .loginBtn li label { vertical-align: baseline; cursor: pointer; }
.loginWrap .loginCont .loginBtn li.on { background: #1e429b; color: #fff; }
.loginWrap .loginCont .loginBtn li:first-child.on { border-right: 1px solid #4379ff; }
.loginWrap .loginCont .loginBtn li:last-child.on { border-left: 1px solid #4379ff; }

.loginWrap .loginCont .loginInput { margin: 10px 0 0; }
.loginWrap .loginCont .loginInput li { line-height: 0; font-size: 0; }
.loginWrap .loginCont .loginInput li label { font-size: 0; text-indent: -9999px; }
.loginWrap .loginCont .loginInput li .loginInputCont { 
	width :100%; line-height: 40px; font-size: 15px;
	padding: 0 0 0 10px; box-sizing: border-box; 
	border: 1px solid #1e429b; border-radius: 7px; outline: none;
}

.loginWrap .loginCont .loginInput li:last-child { 
	position: relative; padding: 0 0 0 7px; line-height: 25px; box-sizing: border-box; 
	display: flex; justify-content: space-between; align-items: center;
}
.loginWrap .loginCont .loginInput li:last-child label { font-size: 13px; color: #333; text-indent: 0; }

.loginWrap .loginCont .loginInput li:last-child .idPsdSearch { 
	height: auto; letter-spacing: -0.7px; 
	font-size: 13px; padding: 0 5px; background: none; color: #333; line-height: 22px; border-radius: 7px;
}
/** id/pw button */
.loginWrap .loginCont .loginInput li:last-child .idPsdSearch button {
	background: none; border: none; padding: 0; margin: 0; 
    font-size: inherit; color: inherit; cursor: pointer; font-weight: bold;
}
.loginWrap .loginCont .loginInput li:last-child .idPsdSearch button:hover {
    text-decoration: underline;
}
 
.loginWrap .loginCont .loginClearBtn { width :100%; line-height: 45px; height: 45px; font-size: 16px; font-weight: bold; color: #fff; background: #1e429b; margin-top: 10px; border: 1px solid #4379ff; border-radius: 7px; }
.loginWrap .loginCont .loginPsdClearBtn { line-height: 37px; background: none; font-size: 14px; color: #333; }


.tableLegend {display: flex; align-items:center}
span.departure, span.berthing, span.schedule {display: inline-block; width: 20px; height: 20px; border: 1px solid #efefef;}
.departure, .tui-grid-row-even>td.departure, .tui-grid-row-odd>td.departure {background-color: #DEF2FC !important;}
.berthing,.tui-grid-row-even>td.berthing, .tui-grid-row-odd>td.berthing {background-color: #F2E3ED !important;}





.topRightBox .mobileMy { display: none; }

.tui-grid-container { border-top: 2px solid #006edb !important; }
.tui-grid-cell-header { background-color: #f6faff !important; border-color:#d6ecfe !important; color: #222 !important; /*border-left-width: 0px !important;*/ border-right-width: 0px !important; font-weight: bold !important; }

.scrollNone { overflow-x: hidden !important; }


.allVessel { background: #777; padding: 0 !important; width: 24px; line-height: 25px; }


@media all and (max-width:1240px){
	
	.shipList { top: 60px; }
	.mapPortWrap { top: 62px; min-width: 177px; }
	
	/* 메뉴 Wrap */
	#header { display: block; height: 50px;}
	#header.open{overflow:initial;}
	
	/* 햄버거 아이콘 */
	#header .navMIcon { 
		display: block; position: absolute; top: 50%; right: 10px; transform: translate(0%, -50%); z-index: 3770;
		width: 33px; height: 33px;
	}
	
	#header .navMIcon span {
		position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);
		width: 33px; height: 3px; display: block; background: #006eda; border-radius: 3px; transition: 0.3s;
	}
	#header .navMIcon span:nth-child(1) { top: calc(50% - 8px); }
	#header .navMIcon span:nth-child(3) { opacity: 1; top: calc(50% + 8px); }
	
	#header .navMIcon.on span { position: absolute; left: 50%; top: 50%; height: 3px; background: #fff; margin-top: 0; transition: 0.3s; }
	#header .navMIcon.on span:nth-child(1) { transform: translate(-50%, -50%) rotate(-45deg); }
	#header .navMIcon.on span:nth-child(2) { transform: translate(-50%, -50%) rotate(45deg); }
	#header .navMIcon.on span:nth-child(3) { opacity: 0; }
	
	
	/* 메뉴 */
		
	#header nav, 
	#header .topRightBox {display:none; transform: initial; position: absolute; top: 0;left: 100%; width: 70%; max-width: 500px; transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), opacity 0.3s linear, visibility 0.3s linear; will-change: transform; border-radius:10px 0 0 0; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; touch-action: none;}
	#header nav {height: 100dvh; background: #fff; z-index: 3701;}
	#header .topRightBox {flex-direction: column; /* height: 140px; */ background: #006eda; border-radius: 10px 0 0 0; z-index: 3702; overflow:visible;}
	#header nav.active,
	#header .topRightBox.active {display:block; transform: translateX(-100%); visibility: visible; opacity: 1;}
	#header .topRightBox::before { 
		content:""; position: absolute; right: 0; bottom: 0; display:none; 
		width: 0; height: 7px; border-radius: 7px 0 0 7px; background: #3c4f6b; 
		transition: width 0.5s ease 0.2s;		
	}
	#header .topRightBox.active::before { width: calc(100% + 5px); width: calc(100% + 5px);}
	
	#header .topRightBox .mobileMy { display: block; color: #fff; margin: 30px 0 0 25px; }
	#header .topRightBox .mobileMy h5 { font-size: 27px; display: block; color: #fff; }
	#header .topRightBox .mobileMy h5 span { font-size: 15px; }
	
	/* 모바일 메뉴 패널(파란 배경) 위 세션 타이머 */
	/* #header .topRightBox .sessionTimerWrap #upaSessionRemaining.upa-session-remaining {
		color: #fff;
		line-height: normal;
	}
	#header .topRightBox .sessionTimerWrap #upaSessionRemaining.upa-session-remaining.upa-session-remaining--warn {
		color: #ffeb3b;
	} */

	#header .topRightBox div:nth-child(2) {  margin: 15px 0 10px 24px; }
	#header .topRightBox div { display: inline-block; vertical-align: middle; margin: 15px 0 10px 6px; }

	#header .topRightBox div:nth-child(2) {  margin: 15px 0 10px 20px; }
	#header .topRightBox div { display: inline-block; vertical-align: middle; margin: 15px 0 10px 8px; }
	
	
	/* Nav */
	#header nav #gnb { display: block; height: calc(100vh - 150px); margin-top: 150px; background: #fff; border-radius: 0 0 0 10px; overflow-x: hidden;}
	#header nav #gnb>li { width: 100%; }
	
	/* 1depth */
	#header nav #gnb>li>a { 
		height: 50px; line-height: 47px; padding: 0px 10px; box-sizing: border-box; text-align: left; 
		background: #fff url('../../images/common/ico_mMenu.png') no-repeat center right 17px; border-bottom: 1px solid #d6ecfe; 
	}
	#header nav #gnb>li.empty>a{background-image:none;}
	#header nav #gnb>li:hover>a { color: #333; }
	#header nav #gnb>li.active::before { display: none; }
	
	#header nav #gnb>li.active>a::before, #header nav #gnb>li:hover>a::before { display: none; }
	
	
	/* 2depth */
	#header nav #gnb li .menuS { 
		position: inherit; top: auto; left: auto; transform: translate(0%, 0%); 
		width: 100%;  border-radius: 0;
		height: 0; opacity: 0; margin: 0px;
		background: #f3faff; /* border: 1px solid #d6ecfe; */ border-top: none; transition: 0.3s;
	}
	#header nav #gnb li.active .menuS { height: auto; opacity: 1; margin: 0; }
	
	
	#header nav #gnb>li:hover .menuS { width: 100%; height: auto; opacity: 1; }
	#header nav #gnb li .menuS li a { width: 100%; padding: 10px 20px 10px; text-align: left; border-bottom: 1px solid transparent; font-size: 15px; font-weight:500; color: #333; }
	#header nav #gnb li .menuS li:last-child a { border-bottom: none; }
	#header nav #gnb li .menuS li a:hover { color: #333; background: #d6ecfe; text-decoration: none; }
	
	
	
	
	/* Nav Hover */
	#header nav #gnb>li.active>a { background: #3c4f6b url('../../images/common/ico_mMenuOn.png') no-repeat center right 17px;; color: #fff; }
	
	
	/* 콘텐츠 Wrap */
	#LContWrap { top: 50px; height: calc(100vh - 50px); border-radius: 7px 7px 0 0; }
	
	
	
	
	
	/* top 마이페이지 버튼 리스트 */
	.alarmWrap>button { margin-right: 0; background:#fff;}
	.alarmWrap.myIconWrap:hover .myList{left: initial; transform: initial; left: 0; top: 38px;}
	
	.alarmWrap.myIconWrap .myList { position: absolute; right: auto; top: 35px; left: 20px; width: 157px; height: 0; opacity: 0; border: none; overflow: hidden; transition: 0.3s; }
	.alarmWrap.myIconWrap .myList li { display: block; line-height: 33px; background: #fff; border-radius: 7px; margin: 3px 0; border: 1px solid #d6ecfe; }
	.alarmWrap.myIconWrap .myList li a { display: block; line-height: 30px; border-bottom: 1px solid #ddd; padding: 0 0 0 10px; font-size: 14px; font-weight: bold; transition: 0.3s; }
	.alarmWrap.myIconWrap .myList li a:hover { color: #006edb; }
	.alarmWrap.myIconWrap .myList li:last-child a { border-bottom: none; }
	.alarmWrap.myIconWrap.active .myList, 
	.alarmWrap.myIconWrap:hover .myList { width: 157px; height: auto; opacity: 1; padding: 5px 0 0 0; transition: 0.3s; } 
	
	@media all and (max-width:1240px){
		.alarmWrap .alarmPop h1 button{height:22px;}
		.alarmWrap .alarmPop h1 button a{line-height:1;}
	}
	
	/* 터미널 */
	.bgBox { height: calc(100vh - 40px) !important; }
	.lnkMngWrap { flex-wrap: wrap; align-items: flex-start !important; max-height: calc(100vh - 100px); overflow-y: auto; }
	.lnkMngWrap .linkBox { width: calc(33.3% - 70px); height: auto; margin: 10px; }

	
}


@media all and (max-width:960px){

	/* 콘텐츠 검색 */
	.search-box { width: calc(100% - 65px); padding: 5px; margin: 5px 0 30px; }
	.search-box form ul { flex-wrap: nowrap; overflow-x: auto; padding: 5px; }
	.search-box form ul li.datepicker { display: flex; justify-content: space-between; flex-wrap: nowrap; }
	.datepicker { flex-wrap: nowrap; }
	
	.searchBtnWrap { position: absolute; right: -65px; top: 0; transform: translate( 0%, 0%); height: calc(100% - 0px); }
	.searchBtnWrap .search { padding: 0 15px; }
	
	/* sub 메뉴 */
	.pageTlt { padding-right: 40px; box-sizing: border-box; }
	.pageTlt .depth { width: auto; flex: 1; }
	.pageTlt .depth button.selected { width: calc(100% - 20px); padding: 0 0px 0 10px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
	.pageTlt .depth button.selected::after { right: 17px; }
	.pageTlt .depth.depth2 button.selected::before { display: none; }
	
	.pageTlt .depth .dropdown li { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
	
	.mapBtnCont.active { 
		width: calc(100% - 40px); min-width: auto;
		max-height: calc(100vh - 500px);
		overflow: auto; padding: 10px;
	}
	.mapBtnCont .nomalCheck { min-width: auto; }
	
	#mapBtn01, #mapBtn02, #mapBtn05, #mapBtn06 { width: calc(100% - 40px); min-width: inherit; }
	
	#mapBtn06 .scr { width: 100%; overflow-x: auto; }
	
	.mapBtnCont .weatherWrap .weatherList { justify-content: flex-start; }
	.mapBtnCont .weatherWrap.depts02 { display: block; }
	.mapBtnCont .weatherWrap.depts02>div { width: 100%; }
	.mapBtnCont .weatherWrap h3>span { display: none; }
	
	
	
	.wharfWrap .wharfCont table.common { width: 330px; }
	
	
	
	.btnArea .warningTxt.serachWTxt { top: -20px; }
	
	
	
	/* 터미널 */
	.lnkMngWrap .linkBox { width: calc(50% - 70px); }
	
	
	.half-box { flex-wrap: wrap; }
	.half-box>div { width: 100% !important; }
	
}

@media screen and (max-width: 787px) {
	.shipList{
		top: 90px;
	}
}

@media all and (max-width:780px){
	.mapBtnWrap ul { display: flex; justify-content: center; flex-wrap: nowrap; width: 100%; min-width: 250px; }
	
	#map .toggleBtn { display: none; }
	
	.map-controls { top: 50px !important; }
	
	.shipLegend { justify-content: center; flex-wrap: nowrap; overflow-x: auto; width: calc(100% - 40px); }
	.shipLegend>div { display: flex; justify-content: flex-start; flex-wrap: nowrap; }
	.shipLegend>div>div.ship1Legend { top: 5px; } .shipLegend>div>div.ship2Legend { top: 5px; }
	
		
	/* 서브타이틀 버튼 */
	.contTitWrap .warningTxt { display: block; margin: 10px 0 0; }
	.contTitWrap .contTitBtn { 
		position: inherit; width: 100%; margin: 10px auto 0px;  border-top: 1px solid #ddd; padding-top: 10px;
		text-align: center; top: 0; transform: translate(0%, 0%);
	}
	
	
	button { padding: 0 15px; }
	.chartCustomizeMng .chart-header button { position: initial; right: 0; transform: translate(0%, 0%); margin: 10px 5px; }
	
	.chartCustomizeMng .chart-header { background: #fff; padding: 10px 10px; border-top: 2px solid #006edb; box-sizing: border-box; }
	.chartCustomizeMng .chart-header h3 { margin-right: 10px; }
	.chartCustomizeMng .chart-header #chtNm_Es30prZJTmyhyWHIwONy { width: calc(100% - 120px); }
	.chartCustomizeMng .chart-header span { margin: 0px 2px 0 0; }
	
	
	
	table.board-write { margin: 0;}
	
	
	/* 터미널 */
	.lnkMngWrap .linkBox { width: calc(100% - 70px); }
	
}


@media all and (max-width:560px){
	
	/* 메뉴 */
	.topBar>.logo>.logoWrap { margin-left: 0; }
	
	.shipLegend>div { min-width: 98px; }
	
	.mapBtnCont { width: calc(100% - 40px); }
	
	.shipLegend { justify-content: flex-start; } 
	
	table.board-write tr td select { width: 100% !important; margin-bottom: 5px; }
	table.board-write tr td select:last-child { margin-bottom: 0; }
	
	
	.wharfWrap { width: calc(100% - 20px); }
	.wharfWrap .wharfCont { overflow: auto; }
	.shipListViewWrap .shipListViewCont { overflow: hidden; }
	
	
	table.board-write tr td input { width: 100% !important; margin-bottom: 10px; }
	
}


@media screen and (max-width: 360px) {
    .shipList .icoSearchWrap.active {
        width: 280px;
    }
}
}

.winPopWrap .board-list .scr { overflow-x: hidden; height: calc(100vh - 57px); }

/* 공지사항 아이콘 */
.noticeBtn img {
    width: 18px;
    margin-top: 0px;
}
