* {margin: 0px; padding: 0px;}
a{ text-decoration: none; }
li{ list-style: none; }

.wrapBox{width: 100%; max-width: 1000px; margin: 0px auto;}
.descBox{text-align: center; background: #eee; padding: 10px 0px;}
/*#group_focus{display: none;}*/

/* { popup */
.popupBackground{
	position: fixed; top: 0px; left: 0px; 
	width: 100%; 
	height: 100%; 
	background: rgba(0, 0, 0, 0.5);
	z-index: 9999;
	display: flex;
	justify-content: center;
	align-items: center;
	display: none; /* 팝업 숨김 기본값 (정상) - 클릭 시 JS로 display: flex; 로 변경 필요 */
}
.popupBox{
	position: relative;
	width: 90%;
	max-width: 817px!important;
	background: #fff;
	height: 90%;
	max-height: 850px;
	padding: 35px;
	box-sizing: border-box;
	overflow: hidden;
}
	/*.roll{position: fixed;}*/
	.popupTit{
		display: flex;
		align-items: center;
		width: 100%;
		border-radius: 10px;
		border: 1px solid #0086a1;
		padding: 10px 18px;
		box-sizing: border-box;
		margin-bottom: 26px;
		position: relative;
		font-size: 24px;
		color: #0086a1;
		font-weight: 500;
		background: #fff;
	}
	.popupTit:before {
		content: '';
		display: inline-block;
		width: 40px;
		height: 40px;
		margin-right: 12px;
		background: url('/images/group/titIcon.png');

	}
	.popupTit.roll{
		
	}
		.popupClose{
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			right: 25px;
			width: 20px;
			height: 20px;
			color: transparent;
			background: url('/images/group/closeIcon.png');
		}

	.peopleInfo{
		width: 100%;
		border-radius: 10px;
		border: 0.5px solid #d8d8d8;
		display: flex;
		margin-bottom: 26px;
		background: #f0f0f0;
		height: 285px;
		overflow: hidden;

	}
	.peopleInfo.roll{
		
		height: auto;
		margin-bottom: 40px;
	}
	.peopleInfo .leftPic{
		width: 35%;
		max-width: 254.5px;
		background: #fff;
		display: flex;
		justify-content: center;
		align-items: center;
		margin-right: 29px;
		overflow: hidden;

	}
	.leftPic img{min-width: 100%; height: 100%;}
	.roll .leftPic{
		width: 118px;
		margin-right: 20px;
	}
	.roll .leftPic img{height: 100%;}
	.peopleInfo .rightTxt{
		color: transparent;
		width: 65%;

		padding-top: 49px;
	}
	.roll .rightTxt{
		padding-top: 20px;
		padding-bottom: 10px;
		width: calc(100% - 118px);
	}
	.peopleInfo .rightTxt ul{
		color: #000;	
	}
	.rightTxt ul li{line-height: 29px; display: flex;}
	.rightTxt ul li:first-child{ margin-bottom: 28px; line-height: 120%;}
	.rightTxt ul li:first-child strong{display: none;}
	.rightTxt ul li:first-child span{
		font-size: 25px;
		font-weight: 500;
	}
	.rightTxt ul li strong{
		width: 70px;
		display: flex;
		justify-content: space-between;
		float: left;
		font-weight: 500;
		color: #646464;
		font-size: 19px;
		margin-right: 33px;
	}
	.tablecell {display:table-cell;}
	.rightTxt ul li span, .rightTxt ul li a {
		font-size: 19px;
		color: #000;
	}

	.roll .rightTxt ul:after{
		content: '';
		display: inline-block;
		clear: both;
		width: 0px;
	}
	.roll .rightTxt ul li{line-height: 24px; display: flex; float: left; margin-right: 34px;}
	.roll .rightTxt ul li:first-child{ 
		display: block; 
		float: none; 
		margin-right: 0px; 
		margin-bottom: 0px; 
		line-height: 34px;
	}
	.roll .rightTxt ul li:last-child{
		
	}
	.roll .rightTxt ul li:first-child strong{display: none;}
	.roll .rightTxt ul li:first-child span{
		font-size: 20px;
		font-weight: 500;
	}
	.roll .rightTxt ul li strong{
		width: auto;
		display: inline;
		float: none;
		font-weight: 500;
		color: #646464;
		font-size: 16px;
		margin-right: 10px;
	}
	.roll .rightTxt ul li span, .rightTxt ul li a {
		font-size: 16px;
		color: #000;
	}

	.infoBottom{position: relative; overflow: hidden;}
	.infoTabMenu{border-bottom: 1px solid #eee;}
		.infoTabMenu a{
			display: inline-block;
			width: 125.5px; 
			height: 29px;
			text-align: center; 
			background: #c8c8c8; 
			color: #fff;
			font-size: 14px;
			line-height: 29px;
			border-radius: 10px 10px 0px 0px;
		}
		.infoTab1{float: left;}
		.infoTab2{
			clear: both;
		}
		.infoTab1.on{background: #b99169;}
		.infoTab2.on{background: #0086a1;}

		/*print Btn*/
		.printBtn{
			position: absolute; 
			top: 40px; 
			right: 10px;
			width: 30px;
			height: 23.3px;
			color: transparent;
		}
		.printBtn1{
			background: url('/images/group/printBtn1.png');
			background-size: contain;
			background-position: center;
			background-repeat: no-repeat;
		}
		.printBtn2{
			background: url('/images/group/printBtn2.png');
			background-size: contain;
			background-position: center;
			background-repeat: no-repeat;
		}

		.infoTabContent {
			overflow-x: auto;
			overflow-y: auto;
			height: 355px;
		}
		.infoTabContent::-webkit-scrollbar {
			padding-top: 20px;
			background: transparent;
			width: 5px;
		}
		.infoTabContent::-webkit-scrollbar-thumb {
			background: #ddd;
			border-radius: 50px;

		}
		.infoTabContent::-webkit-scrollbar-track {
			background: #eee;
		}
		.roll .infoTabContent {
			height: 483px;
		}
		.infoTabContent>div{display: none; padding-top: 40px; box-sizing: border-box;}
		#modify{display: block!important;}
		#modify a{color: #fff;}
		.infoTabContent>div.on{display: block;}
		.infoTabContent>div>div{margin-bottom: 40px;}
			.tabBoxTit{
				border-radius: 50px;
				border: 1px solid #ccc;
				display: inline-block;
				padding: 0px 15px;
				margin-bottom: 0px;
				font-weight: 700;
				font-size: 13px;
				margin-bottom: 16.5px;
			}
			.tabBoxTxt{
					font-size: 14px;
					line-height: 20px;
					color: #000;
			}
			.tabBoxTxt li{
				margin-bottom: 6px;
				text-indent: -8px;
				margin-left: 8px;
			}
			.tabBoxTxt li:before{
				content: '·';
				display: inline-block;
				width: 10px;
				text-align: center;
			}
			.infoTab1Box, .infoTab2Box{min-height: 484px;}
			.infoTab1Box .tabBoxTit{
				width: 105px;
				height: 23px;
				display: flex;
				justify-content: center;
				align-items: center;
				border: 1px solid #b99169;
				color: #b99169;
				padding: 0px;
			}
			.infoTab2Box .tabBoxTit{
				width: fit-content;
				height: 23px;
				display: flex;
				justify-content: center;
				align-items: center;
				border: 1px solid #0086a1;
				color: #0086a1;
			}
			.infoTab2Box .tabBoxDesc{
				font-size: 15px;
				line-height: 25px;
				color: #646464;
				font-weight: 600;
				display: flex;
				align-items: center;
			}
			.infoTab2Box .tabBoxDesc>span{
				font-size: 12px;
				margin-left: 4px;
			}
			.infoTab2Box .tabBoxDesc:before{
				content: '';
				width: 1.5px;
				height: 13px;
				background: #999;
				display: inline-block;
				margin-right: 5px;
			}
			#doc1Div, #doc2Div, #movie1Div, #majorsubDiv {
				margin-bottom: 41px;
			}
			#reportDiv span{
				font-size: 13px;
				line-height: 25px;
				color: #646464;
				font-weight: 500;
				display: flex;
				align-items: center;
			}
			#reportDiv span:before{
				content: '';
				width: 1.5px;
				height: 13px;
				background: #999;
				display: inline-block;
				margin-right: 5px;
			}
/* popup } */

/* { chartBox  */
.chartBox{
	width: 100%; 
	padding: 10px 20px;
	 border: 0px solid #ddd!important; 
	 box-sizing: border-box;
	}
	.subChart{margin: 20px 0px;}
	.subChart> a{
		padding: 0px!important; 
		border: 1px solid #ae8c56; 
		display: inline-block;
		margin-top: 0px!important;
		margin-left: 0px!important;
		margin-right: 0px!important;
	}
	.grp_wrap > div.grp_1 a:first-child{margin-bottom: 42px!important;}
	.grp_wrap > div.grp_3 a:first-child:after{
		content: '';
   	display: inline-block;
   	width: 1px;
   	height: 34px;
   	background-color: #ddd;
   	position: absolute;
   	left: 50%;
   	top: 55px;
	}
	.grp_wrap .mini_grp:before{
		position: absolute;
   	display: block;
   	content: '';
   	top: 50%;
  		left: -26px!important;
  		width: 25px;
  		height: 1px;
  		background: #ddd;
	}
	.grp_wrap > div.grp_3 a.mgb20:after{
		content: '';
   	display: inline-block;
   	width: 1px;
   	height: 92px!important;
   	background-color: #ddd;
   	position: absolute;
   	left: 50%;
   	top: 55px;
	}
	.grp_wrap{height: 820px!important;}
/* chartBox } */

/* {  groupTeamBox */
.groupTeamBox{ 
	width: 100%; 
	padding:20px; 
	box-sizing: border-box;
	border:0px solid #666!important; 
}
	.groupTeamInfo{
		width: 100%; 
		height: auto;
		min-height: 95px;
		max-height: 185px;
		background: #fff!important;
		padding: 0px!important;
		box-sizing: border-box;
		margin-bottom: 20px;
		display: flex;
		position: relative;
		border: none!important;
		overflow: hidden!important;
	}
		.groupTeamInfo .teamName{
			position: absolute;
			top: 26px;
			left: 26px;
			font-weight: bold; 
			margin-bottom: 20px; 
			font-size: 22px;
		}
		.groupTeamInfo .teamName:before{
			content: '';
			display: inline-block;
			width: 12px;
			height: 12px;
			background: url('https://www.kiri.or.kr/images/sub/cont_bar1.jpg');
			margin-right: 10px;
		}
	.groupTableBackground{
		width: 100%;
		background: #fff!important;
		padding: 0px!important;
		box-sizing: border-box;

	}
		.popupOpen:before{
			content: '';
			display: inline-block;
			width: 17px;
			height: 17px;
			background: url('https://www.kiri.or.kr/images/sub/grp_det.png');
			margin-right: 5px;
		}
		.popupOpen{}
		.popupOpen:hover{cursor: pointer;}
		.popupClose:hover{cursor: pointer;}

/*  groupTeamBox } */

.teamDesc{
	box-sizing: border-box;
	padding: 20px;
	padding-left: 250px;
	border: 6px solid #efefef;
	overflow-x: auto;
	overflow-y: scroll;
	width: 100%; 
	height: 100%;
	min-height: 95px;
	max-height: 185px;
}
.teamDesc li{padding: 10px; box-sizing: border-box;}

/* { table */
.groupTableBox{width: 100%;}
.groupTableBox tr{width: 100%;}
.groupTableBox td{
	text-align: center;
	padding: 15px 0px;
	border-bottom: solid 1px #ddd;
	border-right: solid 1px #ddd;
}
.groupTableBox td:nth-child(5){
	border-right: none;
}
/* ----- [수정됨] 5번째 열이 last-child가 되면서 위치가 깨지던 문제 해결 ----- */
.groupTableBox td:last-child{
	border-right: none;
	/* position: absolute; */ /* 주석 처리: 화면 이탈 원인 */
	/* font-size: 50%; */
	/* border: none; */
}
.groupTableBox th{
	background: #313641;
	color: #fff;
	border-right: solid 1px #686868;
	font-weight: 500;
	padding: 15px 0px;
	text-align: center;
}
/* ----- [수정됨] 5번째 열이 last-child가 되면서 헤더가 숨겨지던 문제 해결 ----- */
.groupTableBox th:last-child{
	border-right: none;
	/* display: none; */ /* 주석 처리: 프로필 헤더 노출을 위해 해제 */
}
.admTitle{display: none;}

.grp_wrap > div.grp_2:before{
	content: '';
	display: inline-block;
	width: 301px;
	height: 1px;
	background: #ddd;
	position: absolute;
	top: -40px;
	left: 89px;
}
.grp_wrap > div.grp_2:after{
	content: '';
	display: inline-block;
	width: 1px;
	height: 40px;
	background: #ddd;
	position: absolute;
	top: -40px;
	left: 89px;
}
.grp_wrap > div.grp_2 p{display: none;}
.grp_wrap > div.grp_2 a.mini_grp:after{
	content: '';
   	display: inline-block;
   	width: 1px;
   	height: 33px!important;
   	background-color: #ddd;
   	position: absolute;
   	left: -18%;
   	top: -13px;
}
.name2{display: flex; justify-content: space-between; max-width: 70px;}

@media screen and (max-width: 800px){
	.grp_wrap > div.grp_1 a:first-child{
		margin-bottom: 15px!important;
	}
	.grp_2> a.min_grp{margin-bottom: 0px!important;}
	.grp_3> a:nth-child(2){margin-bottom: 0px!important;}
	.grp_wrap > div.grp_3 a.mgb20{margin-bottom: 0px;}
	.grp_wrap .mini_grp:first-child{margin-bottom: 0px;}
	.grp_wrap > div.grp_2:before, .grp_wrap > div.grp_2 a.mini_grp:after{
		display: none;
	}
	.grp_wrap {height: auto!important;}
	.teamDesc{
		padding: 55px 20px 20px 40px;
		min-height: none;
		max-height: none;
		height: auto;
	}
	.teamDesc li{
		margin-bottom: 8px;
		font-size: 14px;
		padding: 0px;
	}
	.groupTeamInfo{
		min-height: none;
		max-height: none;
		height: auto;
	}
	.popupTit{margin-bottom: 10px; padding: 10px;}
	.popupClose{right: 20px;}
	.peopleInfo{
		height: auto;
		margin-bottom: 10px;
	}
	.peopleInfo.roll{
		height: auto;
		margin-bottom: 10px;
	}
	.peopleInfo .leftPic{
		margin-right: 5px;
	}
	.roll .leftPic{
		width: 35%;
		max-width:254.5px;
		margin-right: 5px;
	}
	.peopleInfo .rightTxt{
		padding: 5px 0px;
		display: flex;
		align-items: center;
		width: calc(100% - 118px);
	}
	.roll .rightTxt{
		padding: 5px 0px;
		display: flex;
		align-items: center;
	}
	.rightTxt ul li:first-child{
		margin-bottom: 5px;
		line-height: 102%;
	}
	.roll .rightTxt ul li:first-child{
		margin-bottom: 5px;
		line-height: 102%;
	}
	.rightTxt ul li{
		line-height: 102%;
	}
	.roll .rightTxt ul li{
		line-height: 102%;
		float: none;
		display: flex;
		margin-right: 0px;
	}
	.rightTxt ul li:first-child span{
		font-size: 16px;
	}
	.roll .rightTxt ul li:first-child span{
		font-size: 16px;
	}
	.rightTxt ul li strong{
		font-size: 12px;
		margin-right: 10px;
		width: 50px;
	}
	.roll .rightTxt ul li strong{
		font-size: 12px;
		margin-right: 10px;
		width: 50px;
		display: flex;
		float: left;
	}
	.rightTxt ul li span, .rightTxt ul li a {
		font-size: 12px;
	}
	.roll .rightTxt ul li span, .roll .rightTxt ul li a{
		font-size: 12px;
	}
	.roll .rightTxt ul:after{display: none;}
	.printBtn,#modify{display: none!important;}
	.infoTabContent>div{padding-bottom: 0px; padding-top: 20px;}
	.infoTabContent{height: 270px;}
	.roll .infoTabContent{height: 270px;}
	.infoTab1Box, .infoTab2Box{min-height: 400px;}
	.popupBox{height: auto; padding: 10px;}
	.name2{max-width: 44px;}

	.descBox{
		font-size: 13px;
		color: #777;
	}
	.chartBox{
		padding: 0px;
	}
	.groupTeamBox{
		padding: 0px;
	}

	.groupTeamInfo .teamName{
		font-size: 18px;
		font-weight: 400;
		top: 22px;
		left: 26px;
	}
	.groupTeamInfo .teamName:before{
		width: 10px;
		height: 10px;
		background-size: contain;
	}
	/*모바일 하단*/
	.groupTableBox td{
		border: none;
		text-align: left;
		padding: 5px 10px;
		font-size: 14px;
		color: #555;
	}
	.groupTableBox td:first-child{
		margin-top: 20px;
	}
	.groupTableBox td:nth-child(5){
		margin-top: 20px;
		text-align: center;
		padding: 0.5px 0px;
		line-height: 350%;
		background: #313641;
		color: #fff;
	}
	/* ----- [수정됨] 모바일 환경에서도 프로필(마지막 열) 버튼 노출 유지 ----- */
	/* 
	.groupTableBox td:last-child{
		display: none; 
		margin-top: 20px;
		text-align: center;
		padding: 10px 0px;
		background: #313641;
		color: #fff;
	}
	*/
	.groupTableBox td:first-child:before{
		content: '직급 : ';
		background: url('../images/sub/grm_dot.jpg') no-repeat left center;
		padding-left: 12px;
	}
	.groupTableBox td:nth-child(2):before{
		content: '이름 : ';
		background: url('../images/sub/grm_dot.jpg') no-repeat left center;
		padding-left: 12px;
	}
	.groupTableBox td:nth-child(3):before{
		content: '전화번호 : ';
		background: url('../images/sub/grm_dot.jpg') no-repeat left center;
		padding-left: 12px;
	}
	.groupTableBox td:nth-child(4):before{
		content: '이메일 : ';
		background: url('../images/sub/grm_dot.jpg') no-repeat left center;
		padding-left: 12px;
	}
	.popupOpen{color: #fff; display: block; width: 100%; height: 100%;}
	.popupOpen:before{display: none;}
	.groupTableBox tr:first-child{display: none;}
	.groupTableBox tr{
		display: flex;
		flex-direction: column;
		width: 100%;
		border-top: 1px solid #333;
		background: #eee;
		margin-bottom: 10px;
		padding: 0px;
		box-sizing: border-box;
	}

	@media print {

	}
}