/* sub_visual */
.sub_visual {
	margin-bottom: 150px;
	/* padding: 0 1.15%; */
	box-sizing: border-box;
	display: flex;
	align-items: center;
	aspect-ratio: 1 / 0.46875;
}

.sub_bgt01 {
	background: url(/img/sub_title_bg.png)no-repeat top;
	background-size: cover;
	border-radius: 0 0 30px 30px;
}

.sub_bgt02 {
	background: url(/img/sub_title_bg2.png)no-repeat top;
	background-size: cover
}

.sub_bgt03 {
	background: url(/img/sub_title_bg3.png)no-repeat top;
	background-size: cover
}

.sub_bgt04 {
	background: url(/img/sub_title_bg4.png)no-repeat top;
	background-size: cover
}

.sub_bgt05 {
	background: url(/img/sub_title_bg5.png)no-repeat top;
	background-size: cover
}

.sub_bgt06 {
	background: url(/img/sub_title_bg6.png)no-repeat top;
	background-size: cover
}

.sub_bgt08 {
	background: url(/img/sub_title_bg8.png)no-repeat top;
	background-size: cover
}

.sub_bgt09 {
	background: url(/img/sub_title_bg9.png)no-repeat top;
	background-size: cover
}

/* 서브 gif 파일 이미지 크기 */
.gif_img {
	width: 90% !important;
	padding-left: 5%
}

.gif_img2 {
	width: 71% !important;
	padding-left: 10%
}

.gif_img3 {
	width: 86% !important;
	padding-left: 4%
}

.gif_img4 {
	width: 82% !important;
	padding-left: 8%
}

.gif_img5 {
	width: 82% !important;
	padding-right: 10%
}

.gif_img6 {
	width: 82% !important;
	padding-left: 10%
}

.sub_visual ul {
	display: table;
	vertical-align: middle;
}

.sub_visual ul li {
	display: table-cell;
	width: 50%;
	vertical-align: middle;
}

.sub_visual ul li img {
	width: 100%;
}

.sub_visual ul li p {
	/* float: right; */
	width: 92%;
	margin-top: 38px;
	padding-right: 5.7%;
	font-size: 24px;
	box-sizing: border-box;
	word-break: keep-all;
	letter-spacing: -0.05em;
	color: #666;
	font-weight: 400;
	line-height: 42px;
	font-style: normal;
	font-family: 'Montserrat';
}


.sub_visual ul li .sub_eng_tit
 {
	font-size: 18px;
	color: #666;
	font-weight: 400;
	line-height: 32px;
	font-family: 'Montserrat';
}

.sub_visual ul li p strong {
	font-weight: 500;
}

.sub_visual ul li p.large {
	width: 91%;
}

.sub_visual ul li p span.col01 {
	color: #e4185d;
}

.sub_visual ul li p span.col02 {
	color: #5ac102;
}

.sub_visual ul li p span.col03 {
	color: #4972f6;
}

.sub_visual ul li p span.col04 {
	color: #656566;
}

.sub_visual ul li p span.col05 {
	color: #222e77;
}



/* sub_container */

.sub_container {
	padding: 0 80px;
}


.sub_container ul {
	overflow: hidden;
	margin-bottom: 0;
	display: flex;
	gap: 100px;
}

.sub_container ul.type02 {
	gap: 20px 0;
	flex-wrap: wrap;
}

.history_page_num .ul_not_flex {
	display: unset;
}

.port_top_box01 {
	aspect-ratio: 1 / 0.5625 !important;
	height: unset !important;
}

@media (max-width: 1024px) {
    .port_top_box01 {
        aspect-ratio: unset !important;
        padding: 160px 0 80px !important;
    }
}

@media (max-width: 700px) {
    .port_top_box01 {
        padding: 140px 0 60px !important;
		min-height: 70vh;
    }
	.port_top_box01 video {
		min-height: 70vh;
	}
}


.sub_container ul.row_reverse {
	flex-direction: row-reverse;
}


.sub_container ul li {
	float: left;
	position: relative;
	width: 50%;
}

.sub_container ul li>img {
	width: 100%;
	height: 100%;
	display: block;
}

.sub_container.rightType ul li {
	float: right;
}

.sub_container ul li.textPart {
	box-sizing: border-box;
	/* padding: 60px 5% 0 6.843%; */
	/* padding-top: 90px; */
	padding-top: 60px;
	word-break: keep-all;
}

.sub_container ul li.textPart span {
	font-size: 28px;
	line-height: 1;
	font-style: normal;
	margin-bottom: 15px;
	display: block;
	color: #222;
font-family: 'Pretendard';
font-weight: 700;
line-height: 42px;
}

.sub_container ul li.textPart h3 {
	color: #222;
	font-family: 'Montserrat';
	/* font-size: 90px; */
	font-size: 87px;
	font-style: normal;
	font-weight: 600;
	line-height: 100px;
	word-break: break-word;
	margin-bottom: 30px;
}

.sub_container ul li.textPart p {
	color: #222;

	font-size: 24px;
	font-style: normal;
	font-weight: 400;
	line-height: 42px;
	margin-bottom: 30px;
}

.sub_container ul li.textPart .last {
	color: #666;
	font-size: 24px;
	font-style: normal;
	font-weight: 400;
	line-height: 42px;
}

.sub_container ul li.textPart span.col01 {
	color: #666;
}

.sub_container ul li.textPart span.col02 {
	color: #666;
}

.sub_container ul li.textPart span.col03 {
	color: #666;
}

.sub_container ul li.textPart span.col04 {
	color: #666;
}

.sub_container ul li.textPart span.col05 {
	color: #666;
}

.sub_container ul li.textPart span.col06 {
	color: #666;
}

.sub_container ul li.textPart span.col07 {
	color: #4a72f6;
}

.sub_container ul li.textPart span.col08 {
	color: #20252e;
}

.sub_container ul li.textPart span.col09 {
	color: #e3175c;
}

.sub_container ul li.textPart span.col10 {
	color: #6798ff
}

.sub_container ul li.textPart span.col11 {
	color: #4f2cff
}

.sub_container ul li.textPart span.col12 {
	color: #e71b00;
}

.sub_container ul li.textPart span.col13 {
	color: #177fd4;
}

.sub_container ul li.textPart span.col14 {
	color: #00aeb5;
}

.sub_container dl dd img {
	width: 100%;
}


/* 서브타이틀 */
.sub h4 {
	/*font-size:110px;*/
	font-size: 4.296875vw;
	text-align: center;
	letter-spacing: -0.025em;
}

.sub h5 {
	/*font-size:110px;*/
	font-size: 3.156875vw;
	text-align: center;
	letter-spacing: -0.025em;
	font-weight: 500;
	word-break: keep-all;
}

.sub .sub_text {
	margin-bottom: 45px;
	/*font-size:32px;*/
	font-size: 1.25vw;
	text-align: center;
	letter-spacing: -0.025em;
	word-break: keep-all;
}

.sub .sub_text p {
	/*font-size:34px;*/
	font-size: 1.328125vw;
	font-weight: 500;
	color: #000;
}

.sub h4 .col02 {
	color: #e2195d;
}

.sub h5 .col03 {
	color: #1b64de;
}

.sub .sub_text span.col01 {
	color: #e2195d;
}

.sub .sub_text span.col03 {
	color: #1b64de;
}

/* 서브타이틀 */
.sub_new h4 {
	font-size: 2.6vw;
	text-align: center;
	letter-spacing: -0.05em;
	margin: 0;
}

.sub_new .sub_text {
	margin: 10px 0 40px;
	font-size: 1.07vw;
	text-align: center;
	letter-spacing: -0.05em;
	color: #222;
	word-break: keep-all;
}

.sub_new .sub_text p {
	font-size: 1.8vw;
	color: #000;
	letter-spacing: -0.075em;
}

.sub_new .sub_text p span {
	font-size: 500;
}

.sub_new .sub_text p span.col01 {
	color: #ff395d;
}

.sub_new .sub_text p span.col02 {
	color: #6798ff;
}

.sub_new .sub_text p span.col03 {
	color: #fb6ea0;
}


/* homepage */
.website_con01 {
	margin-bottom: 120px;
	box-sizing: border-box;

	display: flex;
	flex-direction: column;
	gap: 90px;
}

.website_con02 {
	margin-bottom: 180px;
	box-sizing: border-box;
}

.website_con02 ul {
	overflow: hidden;
}

.website_con02 ul li {
	position: relative;
	float: left;
	width: 50%;
}

.website_con02 ul li img {
	width: 100%;
}

.website_con02 ul li p {
	position: absolute;
	top: 6%;
	left: 0;
	width: 100%;
	text-align: center;
	font-size: 2vw;
	color: #000;
	letter-spacing: -0.05em;
	font-weight: 700;
}

.website_con02 ul li p.hver {
	color: #fff;
}

.website_con03 {
	margin-bottom: 180px;
	box-sizing: border-box;
}

.website_con03 .img_part img {
	width: 100%;
	display: block;
}


.com_tit_box01.home_p_center {
	flex-direction: column;
	justify-content: center;
	text-align: center;
} 

.com_alt01.home_p_center02 {
	text-align: center;
	margin-left:unset;
}

.con.con_before::before {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 50px;
	background-color: #fff;
	border-radius: 0 0 50px 50px;
}




@media all and (max-width:1600px) {

	.sub_container ul li.textPart h3 {
		line-height: 90px;
	}

	.sub_container ul li.textPart p {
		margin-top: 20px;
	}

	

	.sub_container ul li {
		margin: 0 auto;
	}
	.sub_container ul li.textPart {
		padding-top: 30px;
	}
	.sub_container {
		padding: 0 20px;
	}
	.sub_container ul li.textPart h3 {
		font-size: 65px;
	}

}


@media all and (max-width:1300px) {
	
	.sub_container ul li.textPart h3 {
		line-height: 70px;
	}

	.sub_container ul li.textPart h3,
	.sub_container ul li.textPart span
	 {
		margin-bottom: 0;
	}

	.sub_container ul li.textPart p {
		margin-bottom: 20px;
	}
	.website_con01,
	.mobile_con01
	 {
		gap: 45px;
	}
	.sub_container ul li.textPart h3 {
		font-size: 55px;
	}
}

@media all and (max-width:1000px) {
	.sub_container ul, 
	.sub_container ul.row_reverse
	{
		flex-direction: column;
		gap: 0;
	}
	.sub_container ul li.textPart h3 {
		line-height: 50px;
		margin-top: 10px;
	}
}




/* mobile */
.mobile_con01 {
	margin-bottom: 120px;
	box-sizing: border-box;

	display: flex;
    flex-direction: column;
    gap: 90px;
}

.mobile_con02 {
	margin-bottom: 180px;
	box-sizing: border-box;
}

.mobile_con02 ul {
	overflow: hidden;
	background: #202020;
}

.mobile_con02 ul li {
	position: relative;
	float: left;
	width: 33.333%;
	overflow: hidden;
}

.mobile_con02 ul li img {
	width: 100%;
	display: block;
	-webkit-animation-duration: 0.8s;
	animation-duration: 0.8s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}

.mobile_con02 ul li .text_t {
	position: absolute;
	top: 6%;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
}

.mobile_con02 ul li .text_t h6 {
	font-size: 1.5625vw;
	color: #fff;
	font-weight: 300;
}

.mobile_con02 ul li .text_t p {
	position: absolute;
	top: 20%;
	left: 0;
	width: 100%;
	text-align: center;
	font-size: 1.40625vw;
	color: #fff;
	letter-spacing: -0.025em;
	opacity: 0.5;
	font-weight: 300;
}

.mobile_con02 ul li .text_t span {
	font-size: 1.09375vw;
	color: #fff;
	opacity: 0.7;
	letter-spacing: -0.05em;
}

/* design */
.design_con01 {
	margin-bottom: 120px;
	box-sizing: border-box;

	display: flex;
    flex-direction: column;
    gap: 90px;
}

.design_con02 {
	margin-bottom: 180px;
	box-sizing: border-box;
}

/* container02 */
.container02 {
	width: 100%;
}

.container02 ul {
	overflow: hidden;
}

.container02 ul li {
	position: relative;
	float: left;
	width: 25%;
	font-size: 0;
	overflow: hidden;
}

.container02 ul li img {
	width: 100%;
	-webkit-transition: all 0.4s linear;
	-moz-transition: all 0.4s linear;
	-o-transition: all 0.4s linear;
	-ms-transition: all 0.4s linear;
	transition: all 0.4s linear;
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-o-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}

.container02 ul li:hover img {
	-webkit-transform: scale(1.2, 1.2);
	-moz-transform: scale(1.2, 1.2);
	-o-transform: scale(1.2, 1.2);
	-ms-transform: scale(1.2, 1.2);
	transform: scale(1.2, 1.2);
	-webkit-transition: all 0.4s linear;
	-moz-transition: all 0.4s linear;
	-o-transition: all 0.4s linear;
	-ms-transition: all 0.4s linear;
	transition: all 0.4s linear;
}


/* software */
.solution_tit {
	width: 240px;
	height: 48px;
	background: #e31659;
	line-height: 48px;
	position: absolute;
	left: 50%;
	top: -30px;
	transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
}

.solution_tit p {
	text-align: center;
	font-size: 20px;
	color: #ffffff;
	letter-spacing: 0.4em;
	font-weight: 500;
	text-transform: uppercase;
}

.software_con01 {
	margin-bottom: 120px;
	box-sizing: border-box;

	display: flex;
	flex-direction: column;
	gap: 90px;
}
.software_con01 .sub_container ul li:first-child,
.software_con02 .sub_container ul li:first-child,
.software_con03 .sub_container ul li:first-child,
.software_con04 .sub_container ul li:first-child,
.software_con05 .sub_container ul li:first-child {
	width: 55% !important;
	padding-right: 4% !important;
}
.software_con01 .sub_container ul li.textPart,
.software_con02 .sub_container ul li.textPart,
.software_con03 .sub_container ul li.textPart,
.software_con04 .sub_container ul li.textPart,
.software_con05 .sub_container ul li.textPart {
	width: 45% !important;
}
@media all and (max-width:1024px) {
    .software_con01 .sub_container ul li:first-child,
    .software_con01 .sub_container ul li.textPart {
        width: 100% !important;
        padding-right: 0 !important;
    }
}
@media all and (max-width:999px) {
	.software_con01 .sub_container ul li:first-child,
	.software_con01 .sub_container ul li.textPart {
		width: 100%;
	}
}

.software_con02 {
	margin-bottom: 180px;
	box-sizing: border-box;
}

.software_con02 .inner_box2 {
	background: #f7f7f7;
	padding: 100px 0;
	margin-top: 80px;
	margin-bottom: 130px;
	position: relative
}

.software_con02 .inner_box2 h5 {
	opacity: 0;
	font-size: 2.34375vw;
	font-weight: 500;
	text-align: center;
	color: #222;
	letter-spacing: -0.025em;
	opacity: 1 \0/IE8+9;
}

.software_con02 .inner_box2 h5 img {
	width: 3.6vw;
	display: inline-block;
	vertical-align: middle;
	position: relative;
	top: -2px;
	margin-right: 15px;
}

.software_con02 .inner_box2 .soft_stext {
	opacity: 0;
	margin: 1% 0 4%;
	font-size: 1.171875vw;
	color: #888;
	text-align: center;
	word-break: keep-all;
	opacity: 1 \0/IE8+9;
}

.software_con02 .inner_box2 ul {
	font-size: 0;
	text-align: center;
}

.software_con02 .inner_box2 ul li {
	opacity: 0;
	display: inline-block;
	width: 18.1640625%;
	margin: 0 1.8% 3.25%;
	vertical-align: top;
	opacity: 1 \0/IE8+9;
	border-top: 1px solid #c9c9c9;
	padding-top: 15px;
	position: relative;
}

.software_con02 .inner_box2 ul li:before {
	content: "";
	width: 19px;
	height: 19px;
	background: #b6b6b6;
	border-radius: 50%;
	position: absolute;
	left: 50%;
	top: -9px;
	transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
}

.software_con02 .inner_box2 ul li img {
	width: 100%;
}

.software_con02 .inner_box2 ul li h6 {
	margin-bottom: 4%;
	font-size: 1.171875vw;
	color: #222;
	font-weight: 500;
	letter-spacing: -0.025em;
}

.software_con02 .inner_box2 ul li p {
	margin-top: 5%;
	font-size: 1.09375vw;
	color: #888;
}

.software_con02 .inner_box2 a {
	opacity: 0;
	opacity: 1 \0/IE8+9;
	display: block;
	margin: 1.8% auto 0;
	padding: 0.8% 0;
	width: 10.368852459%;
	text-align: center;
	color: #424242;
	font-size: 1.09375vw;
	background: none;
	border: 1px solid #646464;
}

.software_con02 .inner_box2 a i {
	margin: 1.5% 0 0 10%;
	color: #3e4145;
	font-size: 1.3671875vw;
}

.software_con02 .inner_box2.on h5 {
	-webkit-animation: fadeInUp 0.7s 0.1s 1 cubic-bezier(.77, 0, .175, 1);
	-moz-animation: fadeInUp 0.7s 0.1s 1 cubic-bezier(.77, 0, .175, 1);
	-o-animation: fadeInUp 0.7s 0.1s 1 cubic-bezier(.77, 0, .175, 1);
	animation: fadeInUp 0.7s 0.1s 1 cubic-bezier(.77, 0, .175, 1);
	animation-fill-mode: forwards;
	-webkit-animation-fill-mode: forwards;
}

.software_con02 .inner_box2.on .soft_stext {
	-webkit-animation: fadeInUp 0.7s 0.2s 1 cubic-bezier(.77, 0, .175, 1);
	-moz-animation: fadeInUp 0.7s 0.2s 1 cubic-bezier(.77, 0, .175, 1);
	-o-animation: fadeInUp 0.7s 0.2s 1 cubic-bezier(.77, 0, .175, 1);
	animation: fadeInUp 0.7s 0.2s 1 cubic-bezier(.77, 0, .175, 1);
	animation-fill-mode: forwards;
	-webkit-animation-fill-mode: forwards;
}

.software_con02 .inner_box2.on ul li {
	-webkit-animation: fadeInUp 0.7s 0.3s 1 cubic-bezier(.77, 0, .175, 1);
	-moz-animation: fadeInUp 0.7s 0.3s 1 cubic-bezier(.77, 0, .175, 1);
	-o-animation: fadeInUp 0.7s 0.3s 1 cubic-bezier(.77, 0, .175, 1);
	animation: fadeInUp 0.7s 0.3s 1 cubic-bezier(.77, 0, .175, 1);
	animation-fill-mode: forwards;
	-webkit-animation-fill-mode: forwards;
}

.software_con02 .inner_box2.on ul li:nth-of-type(n+5) {
	-webkit-animation: fadeInUp 0.7s 0.4s 1 cubic-bezier(.77, 0, .175, 1);
	-moz-animation: fadeInUp 0.7s 0.4s 1 cubic-bezier(.77, 0, .175, 1);
	-o-animation: fadeInUp 0.7s 0.4s 1 cubic-bezier(.77, 0, .175, 1);
	animation: fadeInUp 0.7s 0.4s 1 cubic-bezier(.77, 0, .175, 1);
	animation-fill-mode: forwards;
	-webkit-animation-fill-mode: forwards;
}

.software_con02 .inner_box2.on a {
	-webkit-animation: fadeInUp 0.7s 0.5s 1 cubic-bezier(.77, 0, .175, 1);
	-moz-animation: fadeInUp 0.7s 0.5s 1 cubic-bezier(.77, 0, .175, 1);
	-o-animation: fadeInUp 0.7s 0.5s 1 cubic-bezier(.77, 0, .175, 1);
	animation: fadeInUp 0.7s 0.5s 1 cubic-bezier(.77, 0, .175, 1);
	animation-fill-mode: forwards;
	-webkit-animation-fill-mode: forwards;
}



/* portfolio 
.port_tab {padding:140px 0;}
.port_tab ul {font-size:0; text-align:right; width:100%;}
.port_tab ul li {display:inline-block; width:15%; border:1px solid #d6d6d6; border-left:0; box-sizing:border-box; text-align:center; vertical-align:top;}
.port_tab ul li:first-child {border-left:1px solid #d6d6d6;}
.port_tab ul li img {display:block; width:62.2%; margin:0 auto 8%;} 
.port_tab ul li.on,.port_tab ul li:hover {background:#e41957; color:#fff; border:1px solid #e41957;}
.port_tab ul li > a{overflow:hidden;display:block; padding:5% 0;font-size:0.78125vw;}
.port_tab ul li.on > a,.port_tab ul li:hover > a {color:#fff; }
*/
/* portfolio */
.port_type {
	background: #ff1844;
}

.port_tab {
	/* padding: 90px 0 60px;
	padding-top: 0 */
}

.port_tab ul {
	text-align: center;
	width: 100%;
	margin: 50px auto;
	max-width: 1320px;
	display: flex;
	flex-wrap: wrap;
	gap: 20px 50px;
}

.port_tab ul li {
	width: calc(14.2857% - 43px);
	text-align: center;
	box-sizing: border-box;
}
.port_tab ul li .button_newnew {
	width: 100%;
	height: auto;
	aspect-ratio: 1/1;
}
.port_tab ul li.on .button_newnew .not_sun {
    color: #000000;
}
.port_tab ul li.on .button_newnew {
	box-shadow: 8px 8px 15px #bebebe, -8px -8px 15px #ffffff;
	transform: translateY(-1px);
}

.port_tab ul li.on .button_newnew .btn_red_sun {
    color: #FF0707;
}

/* .port_tab ul li.on,
.port_tab ul li:hover {
	background: #618bd7;
	color: #fff;
	border: 1px solid #618bd7;
} */

.port_tab ul li:nth-of-type(1).on,
.port_tab ul li:nth-of-type(1):hover {
	/* background-color: #f40b53;
	border: 1px solid #f40b53; */
}

.port_tab ul li:nth-of-type(2).on,
.port_tab ul li:nth-of-type(2):hover {
	/* background-color: #ff2879;
	border: 1px solid #ff2879; */
}

.port_tab ul li:nth-of-type(3).on,
.port_tab ul li:nth-of-type(3):hover {
	/* background-color: #08b8fc;
	border: 1px solid #08b8fc; */
}

.port_tab ul li:nth-of-type(4).on,
.port_tab ul li:nth-of-type(4):hover {
	/* background-color: #6455cc;
	border: 1px solid #6455cc; */
}

.port_tab ul li:nth-of-type(5).on,
.port_tab ul li:nth-of-type(5):hover {
	/* background-color: #fd570e;
	border: 1px solid #fd570e; */
}

.port_tab ul li:nth-of-type(6).on,
.port_tab ul li:nth-of-type(6):hover {
	/* background-color: #3880ff;
	border: 1px solid #3880ff; */
}

.port_tab ul li:nth-of-type(7).on,
.port_tab ul li:nth-of-type(7):hover {
	/* background-color: #00df9d;
	border: 1px solid #00df9d; */
}

.port_tab ul li.on,
.port_tab ul li:hover a {
	/* color: #fff */
}

.port_tab ul li.on a {
	color: #fff
}


/* portfolio 수정 - 20200420 */
.portfolio {
	background: #f9f9f9;
}
.ul_prt_parent {
	border-top: 3px solid #f1f1f1;
}
.portfolio_projectBox {
	margin: 0 0 1.15%;
	/* padding: 0 1.15%; */
	padding-bottom: 150px;
	box-sizing: border-box;
	width: 100%;
	max-width: 2560px;
	margin: 0 auto;
	padding-top: 50px;
	border-top: 3px solid #f1f1f1;
}

.portfolio_projectBox ul {
	max-width: 2440px;
	margin: 0 auto;
	overflow: hidden;
}

.portfolio_projectBox ul:after {
	content: '';
	display: block;
	clear: both;
}

.portfolio_projectBox ul li {
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
	width: calc(25% - 15px);
}

.portfolio_projectBox ul li:hover .img_part img {
	transform: scale(1.1) translateX(-50%);
	-ms-transform: scale(1.1) translateX(-50%);
	-webkit-transform: scale(1.1) translateX(-50%);
	-o-transform: scale(1.1) translateX(-50%);
	-moz-transform: scale(1.1) translateX(-50%);
}

.portfolio_projectBox ul li:hover .text_part:before {
	background: #222
}

.portfolio_projectBox ul li:hover .text_part h5 {
	color: #222;
	font-weight: 500;
}

.portfolio_projectBox ul li:hover .text_part p {
	color: #222
}

.portfolio_projectBox ul li:nth-of-type(4n) {
	margin-right: 0;
}

.portfolio_projectBox ul li .img_part {
	position: relative;
	overflow: hidden;
	padding: 50% 0
}

.portfolio_projectBox ul li .img_part img {
	width: 100%;
	transition: all 0.3s;
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	-moz-transform: translateX(-50%)
}

.portfolio_projectBox ul li .text_part {
	height: 80px;
	margin-top: 20px;
	padding: 0 10px 30px;
	box-sizing: border-box;
	word-break: keep-all;
	overflow: hidden;
	position: relative;
}

.portfolio_projectBox ul li .text_part:before {
	content: '';
	display: block;
	position: absolute;
	width: 3px;
	height: 20px;
	background: #c0c0c0;
	left: 0;
	top: 4px;
}

.portfolio_projectBox ul li .text_part h5 {
	display: inline-block;
	vertical-align: top;
	font-size: 17px;
	color: #a7a7a7;
	letter-spacing: 0em;
	font-weight: 300;
	margin: 0;
}

.portfolio_projectBox ul li .text_part p {
	display: inline-block;
	vertical-align: top;
	font-size: 17px;
	color: #a7a7a7;
	letter-spacing: 0em;
	font-weight: 300;
}

/* .portfolio_projectBox .more_btn {width:100px; margin:10px auto 0;} */
.portfolio_projectBox .more_btn {
	width: 250px;
	height: 70px;
	background-color: #e3185c;
	color: #fff;
	margin: 10px auto 0;
}

.portfolio_projectBox .more_btn a {
	color: #fff;
	font-weight: 500;
	font-size: 22px;
	letter-spacing: -0.05em;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	gap: 10px;
}

.portfolio_projectBox .more_btn a i {
	display: block;
	width: 16px;
	height: 16px;
	background: url(/img/plus_16x16.png) no-repeat center center / contain;
}

@media all and (max-width:1600px) {
	.portfolio_projectBox ul {
		overflow: hidden;
	}

	.portfolio_projectBox ul li {
		width: calc(33.333333% - 14px);
	}

	.portfolio_projectBox ul li:nth-of-type(4n) {
		margin-right: 20px;
	}

	.portfolio_projectBox ul li:nth-of-type(3n) {
		margin-right: 0;
	}
}

@media all and (max-width:1000px) {
	.portfolio_projectBox ul li {
		width: calc(50% - 10px);
	}

	.portfolio_projectBox ul li:nth-of-type(3n) {
		margin-right: 20px;
	}

	.portfolio_projectBox ul li:nth-of-type(2n) {
		margin-right: 0;
	}
}

@media all and (max-width:999px) {

	/* .portfolio_projectBox .more_btn {width:11.5625%; margin:1.5% auto 0;} */
	.portfolio_projectBox ul li .text_part {
		height: auto;
		padding: 0 1vw 3vw;
		margin-top: 2vw
	}

	.portfolio_projectBox ul li .text_part h5 {
		font-size: 14px;
		padding-left: 5px;
		box-sizing: border-box;
	}

	.portfolio_projectBox ul li .text_part:before {
		height: 14px;
	}
}

@media all and (max-width:767px) {
	.portfolio_projectBox ul li {
		width: 100%;
	}

	.portfolio_projectBox ul li:nth-of-type(3n) {
		margin-right: 0;
	}

	.portfolio_projectBox ul li:nth-of-type(2n) {
		margin-right: 0;
	}

	.portfolio_projectBox .more_btn {
		width: 180px;
		height: 55px;
	}

	.portfolio_projectBox .more_btn a {
		font-size: 18px;
	}

	.contact_box .right_box .submit_box a {
		width: 200px;
	}
}




/* contact */
.contact ul li:first-child {
	width: 50%;
}

.contact ul li:last-child {
	width: calc(100% - 50%);
	text-align: right;
}

.contact ul li:first-child dl {
	float: right;
	margin-top: 3%;
	width: 90%;
	padding-right: 5.7%;
}

.contact ul li:first-child dl dd {
	display: inline-block;
	vertical-align: middle;
	font-size: 1.09375vw;
	color: #fff;
	line-height: 1;
}

.contact ul li:first-child dl dt {
	display: inline-block;
	vertical-align: middle;
}

.contact ul li:first-child dl dt {
	width: 3.535%;
	margin: 0 0.5% 0 4%;
}

.contact ul li:first-child dl dd a {
	font-size: 1.640625vw;
	color: #fff;
}

.contact ul li:first-child dl dd a.num {
	font-size: 1.7578125vw;
	color: #fff;
	cursor: default;
}


.contact_con01 {
	padding: 75px 2.8% 137px;
	margin-bottom: 95px;
	background: #f8f8f8;
	margin-bottom: 95px;
	box-sizing: border-box;
}

.contact_con01 h4 {
	margin-bottom: 70px;
	font-size: 2.734375vw;
	text-align: center;
}

.contact_con01 ul {
	overflow: hidden;
}

.contact_con01 ul li {
	float: left;
	width: 100%;
	overflow: hidden;
	margin-bottom: 25px;
}

.contact_con01 ul li.half {
	width: 50%;
}

.contact_con01 ul li p {
	float: left;
	width: 9.1796vw;
	line-height: 70px;
	box-sizing: border-box;
	font-size: 1.484375vw;
}

.contact_con01 ul li p span {
	color: #e41957;
}

.contact_con01 ul li.no02 p {
	padding-left: 7%;
}

.contact_con01 ul li>div {
	float: left;
	width: calc(100% - 9.1796vw);
}

.contact_con01 ul li>div input {
	width: 100%;
	height: 70px;
	box-sizing: border-box;
	font-size: 1.2vw;
	padding: 10px;
	border: 1px solid #d5d3d3;
	background: #fff;
}

.contact_con01 ul li>div input.col01 {
	border: 1px solid #e41957;
}

.contact_con01 textarea {
	resize: none;
	width: 100%;
	height: 760px;
	padding: 15px;
	font-size: 1.2vw;
	box-sizing: border-box;
	border: 1px solid #d5d3d3;
}

.contact_con01 .agree_wrap {
	padding: 25px 0;
}

.contact_con01 .agree_wrap input {
	width: 1.171875vw;
	height: 1.171875vw;
	vertical-align: middle;
}

.contact_con01 .agree_wrap label {
	font-size: 1.328125vw;
	letter-spacing: -0.075em;
	color: #444;
}

.contact_con01 .agree_wrap a {
	float: right;
	display: inline-block;
	padding: 1% 0;
	width: 10.368852459%;
	text-align: center;
	color: #fff;
	font-size: 1.328125vw;
	background: #8b8e97;
}

.contact_con01 .btn a {
	display: block;
	margin: 3% auto 0;
	padding: 1.2% 0;
	width: 16%;
	text-align: center;
	color: #fff;
	font-size: 1.6796875vw;
	background: #e41957;
}

.contact_con01 .btnCuzDuplBootrap a {
	display: block;
	margin: 3% auto 0;
	padding: 1.2% 0;
	width: 16%;
	text-align: center;
	color: #fff;
	font-size: 1.6796875vw;
	background: #e41957;
}

.program_table {
	margin: 0 1.15%;
	box-sizing: border-box;
	margin-bottom: 120px
}


/* 동적효과 */
#wrap.about .sub_container ul li .inner img {
	width: 100%;
}

.sub_container ul li .inner {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	overflow: hidden;
}

.sub_container ul li .inner img {
	width: 100%;

	display: block;
	position: absolute;
	z-index: 10;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-o-transition: all 0.2s;
	-ms-transition: all 0.2s;
	transition: all 0.2s;
}

.inner img.t0l0 {
	top: 0;
	left: 0;
}

.inner img.t0r0 {
	top: 0;
	right: 0;
}

.inner img.b0l0 {
	bottom: 0;
	left: 0;
}

.inner img.b0r0 {
	bottom: 0;
	right: 0;
}

.inner img.upside {
	transform: translate(0, -1100px);
	-webkit-transform: translate(0, -1100px);
	-moz-transform: translate(0, -1100px);
	-o-transform: translate(0, -1100px);
}

.inner img.under {
	transform: translate(0, 1000px);
	-webkit-transform: translate(0, 1000px);
	-moz-transform: translate(0, 1000px);
	-o-transform: translate(0, 1000px);
}

.inner img.leftside {
	transform: translate(-1100px, 0);
	-webkit-transform: translate(-1100px, 0);
	-moz-transform: translate(-1100px, 0);
	-o-transform: translate(-1100px, 0);
}

.inner img.rightside {
	transform: translate(1000px, 0);
	-webkit-transform: translate(1000px, 0);
	-moz-transform: translate(1000px, 0);
	-o-transform: translate(1000px, 0);
}

.inner img.sidelt {
	transform: translate(-1000px, -1000px);
	-webkit-transform: translate(-1000px, -1000px);
	-moz-transform: translate(-1000px, -1000px);
	-o-transform: translate(-1000px, -1000px);
}

.inner img.sidert {
	transform: translate(500px, -1000px);
	-webkit-transform: translate(500px, -1000px);
	-moz-transform: translate(500px, -1000px);
	-o-transform: translate(500px, -1000px);
}

.inner img.siderb {
	transform: translate(1000px, 500px);
	-webkit-transform: translate(1000px, 500px);
	-moz-transform: translate(1000px, 500px);
	-o-transform: translate(1000px, 500px);
	-ms-transform: translate(1000px, 500px);
}

.inner img.sidelb {
	transform: translate(-1000px, 500px);
	-webkit-transform: translate(-1000px, 500px);
	-moz-transform: translate(-1000px, 500px);
	-o-transform: translate(-1000px, 500px);
}


/*homepage*/
.sub_container ul li .inner img.web01_01 {
	width: 100%;
	z-index: 1;
}

.sub_container ul li .inner img.web01_02 {
	width: 15%;
	z-index: 2;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.web01_03 {
	width: 44.2622%;
	z-index: 2;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.web01_04 {
	width: 33.0327%;
	z-index: 3;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.web01_05 {
	width: 39.6721%;
	z-index: 3;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.web01_06 {
	width: 33.0327%;
	z-index: 4;
	transition-delay: 0.3s;
}

.sub_container ul li .inner img.web01_07 {
	width: 30.6557%;
	z-index: 4;
	transition-delay: 0.3s;
}

.sub_container ul li .inner img.web02_01 {
	width: 60.6557%;
	z-index: 1;
}

.sub_container ul li .inner img.web02_02 {
	width: 28.9344%;
	z-index: 2;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.web02_03 {
	width: 75%;
	z-index: 2;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.web03_01 {
	width: 72.1311%;
}

.sub_container ul li .inner img.web03_02 {
	width: 19.836%;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.web03_03 {
	width: 75%;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.web03_04 {
	width: 75%;
	transition-delay: 0.3s;
}

.sub_container ul li .inner img.web04_01 {
	width: 100%;
}

.website_con03 .img_part {
	position: relative;
}

.website_con03 .img_part .inner {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	overflow: hidden;
}

.website_con03 .img_part .inner img {
	display: block;
	position: absolute;
	z-index: 10;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-o-transition: all 0.2s;
	-ms-transition: all 0.2s;
	transition: all 0.2s;
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-o-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}

.website_con03 .img_part .inner img.w03_01 {
	width: 47.4180%;
	z-index: 1;
	transform: translate(-100%, 0);
}

.website_con03 .img_part .inner img.w03_02 {
	width: 47.213%;
	top: 0;
	left: 35.0819672131%;
	transition-delay: 0.1s;
	transform: translate(0, -1000%);
}

.website_con03 .img_part .inner img.w03_03 {
	width: 32.6639%;
	transition-delay: 0.2s;
	transform: translate(1000px, 0);
	-webkit-transform: translate(1000px, 0);
}

.website_con03 .img_part .inner img.w03_04 {
	width: 17.1311%;
	bottom: 0;
	left: 37.5%;
	transition-delay: 0.3s;
	transform: translate(0, 1000px);
	-webkit-transform: translate(0, 1000px);
}

.website_con03 .img_part .inner img.on {
	transform: translate(0, 0);
}

.website_con03 .img_part .inner img:hover {
	z-index: 11;
	-webkit-transform: scale(1.2);
	-moz-transform: scale(1.2);
	-o-transform: scale(1);
	-ms-transform: scale(1.2);
	transform: scale(1.2);
}

/*mobile*/
.sub_container ul li .inner img.tanz {
	width: 47.295%;
}

.sub_container ul li .inner img.mo01_01 {
	width: 20.3278%;
	z-index: 3;
}

.sub_container ul li .inner img.mo01_02 {
	width: 36.5573%;
	z-index: 2;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.mo01_03 {
	width: 55.8196%;
	z-index: 1;
	transition-delay: 0.3s;
}

.sub_container ul li .inner img.mo01_06 {
	width: 48.7704%;
	z-index: 4;
	transition-delay: 0.4s;
}

.sub_container ul li .inner img.mo01_04 {
	width: 44.2622%;
	z-index: 1;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.mo01_07 {
	width: 27.9508%;
	z-index: 1;
}

.sub_container ul li .inner img.mo02_01 {
	width: 100%;
	z-index: 1;
}

.sub_container ul li .inner img.mo02_02 {
	width: 47.6229%;
	z-index: 2;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.mo02_03 {
	width: 29.2622%;
	z-index: 3;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.mo03_01 {
	width: 100%;
	z-index: 1;
}

.sub_container ul li .inner img.mo03_02 {
	width: 45.5737%;
	transform: translate(1500px, -1500px);
	z-index: 2;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.mo03_03 {
	width: 54.918%;
	transform: translate(-1500px, 1500px);
	z-index: 3;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.mo04_slide {
	transform: translate(-1500px, 1500px);
}

.sub_container ul li .inner img.mo04_01 {
	width: 52.7868%;
	z-index: 1;
}

.sub_container ul li .inner img.mo04_02 {
	width: 58.2786%;
	z-index: 2;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.mo04_03 {
	width: 45.7377%;
	z-index: 3;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.mo04_04 {
	width: 58.2786%;
	z-index: 4;
	transition-delay: 0.3s;
}

.sub_container ul li .inner img.mo04_05 {
	width: 16.3114%;
	z-index: 5;
	transition-delay: 0.3s;
}


/*design */
.sub_container ul li .inner img.de01_01 {
	width: 58.2786%;
	z-index: 1;
}

.sub_container ul li .inner img.de01_02 {
	width: 77.459%;
	z-index: 2;
	transform: translate(-1500px, -1000px);
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.de01_03 {
	/* width: 45.5737%; */
	z-index: 3;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.de01_04 {
	width: 44.6721%;
	z-index: 3;
	transition-delay: 0.3s;
}

.sub_container ul li .inner img.de02_01 {
	width: 68.6065%;
	z-index: 3;
}

.sub_container ul li .inner img.de02_02 {
	width: 81.4754%;
	z-index: 2;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.de02_03 {
	width: 69.5081%;
	z-index: 1;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.de02_04 {
	width: 71.6393%;
	z-index: 3;
	transition-delay: 0.3s;
}


/* new design */
.sub_container ul li.new_design_ui .inner img.de02_01 {
    width: 52.6065%;
    top: 34%;
}

.sub_container ul li.new_design_ui .inner img.de02_02 {
    width: 45.4754%;
    top: 6%;
    right: 19%;
}

.sub_container ul li.new_design_ui .inner img.de02_04 {
width: 53.6393%;
    top: 38%;
}





.sub_container ul li .inner img.de03_01 {
	width: 50%;
}

.sub_container ul li .inner img.de03_02 {
	width: 50%;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.de03_03 {
	width: 100%;
	transition-delay: 0.2s;
}


/* software */
.sub_container ul li .inner img.so01_01 {
	/* width: 75%; */
	z-index: 1;
}

.sub_container ul li .inner img.so01_02 {
	/* width: 50%; */
	z-index: 2;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.so01_03 {
	/* width: 34.2622%; */
	z-index: 2;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.so01_04 {
	/* width: 50%; */
	z-index: 3;
	transition-delay: 0.3s;
}

.sub_container ul li .inner img.so02_01 {
	width: 100%;
}

.sub_container ul li .inner img.so02_02 {
	/* width: 74.918%; */
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.so02_03 {
	/* width: 74.836%; */
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.so02_04 {
	/* width: 70.9016%; */
	transition-delay: 0.3s;
}

.sub_container ul li .inner img.so03_01 {
	width: 100%;
	z-index: 1
}

.sub_container ul li .inner img.so03_02 {
	/* width: 49.6721%; */
	z-index: 2;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.so04_01 {
	/* width: 75%; */
	z-index: 1;
	height: 100%;

}

.sub_container ul li .inner img.so04_02 {
	/* width: 58.7704%; */
	z-index: 2;
	-webkit-animation-duration: 0.8s;
	animation-duration: 0.8s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
	height: 100%;

}

/* about */
.sub_container ul li .inner img.ab01_01 {
	width: 50%;
	z-index: 1;
}

.sub_container ul li .inner img.ab01_02 {
	width: 50%;
	z-index: 1;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.ab01_03 {
	width: 100%;
	z-index: 2;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.ab02_01 {
	width: 100%;
}


/* 20200109 추가 shopping */
.shopping_con01 {
	/* margin-bottom: 150px; */

	margin-bottom: 120px;
	box-sizing: border-box;

	display: flex;
	flex-direction: column;
	gap: 90px;
}

.sub_container ul li .inner img.sop01_01 {
	width: 100%;
	z-index: 1;
}

.sub_container ul li .inner img.sop01_02 {
	width: 58%;
	z-index: 2;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.sop01_03 {
	width: 66%;
	z-index: 2;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.sop02_01 {
	width: 100%;
	z-index: 1;
}

.sub_container ul li .inner img.sop02_02 {
	width: 65.9%;
	z-index: 2;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.sop02_03 {
	width: 42.8%;
	z-index: 2;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.sop02_04 {
	width: 58%;
	z-index: 2;
	transition-delay: 0.3s;
}

.sub_container ul li .inner img.sop02_05 {
	width: 40%;
	z-index: 2;
	transition-delay: 0.3s;
}

.sub_container ul li .inner img.sop02_06 {
	width: 51.8%;
	z-index: 2;
	transition-delay: 0.4s;
}

.sub_container ul li .inner img.sop03_01 {
	width: 59.8%;
	z-index: 1;
}

.sub_container ul li .inner img.sop03_02 {
	width: 59.8%;
	z-index: 2;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.sop03_03 {
	width: 40.163934426%;
	z-index: 2;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.sop04_01 {
	width: 100%;
	z-index: 1;
}

.sub_container ul li .inner img.sop04_02 {
	width: 50%;
	z-index: 1;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.sop04_03 {
	width: 60.7377%;
	z-index: 2;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.sop04_04 {
	width: 100%;
	z-index: 2;
	transition-delay: 0.3s;
}

.sub_container ul li .inner img.sop04_05 {
	width: 53.196%;
	z-index: 2;
	transition-delay: 0.4s;
}

.sub_container ul li .inner img.sop04_06 {
	width: 58.77%;
	z-index: 2;
	transition-delay: 0.5s;
}

.sub_container ul li .inner img.sop05_01 {
	width: 67.049%;
	z-index: 2;
}

.sub_container ul li .inner img.sop05_02 {
	width: 45.4%;
	z-index: 1;
	transition-delay: 0.1s;
}

.sub_container ul li .inner img.sop05_03 {
	width: 45.4%;
	z-index: 2;
	transition-delay: 0.2s;
}

.sub_container ul li .inner img.sop05_04 {
	width: 45.4%;
	z-index: 3;
	transition-delay: 0.3s;
}


.sub_container ul li .inner img.on {
	transform: translate(0, 0);
}

#member {
	padding: 3% 2%;
}

@media all and (max-width:2120px) {

	/* sub_visual */
	.dn2120 {
		display: none;
	}
}

@media all and (max-width:1800px) {}


@media all and (max-width:1450px) {

	/* sub_visual */
	.sub_visual ul li p {
		font-size: 1.8vw;
	}
	

}

@media all and (max-width:1320px) {
	.port_tab ul{
		justify-content: center;
	}
	.port_tab ul li {
		width: calc(25% - 38px);
		max-width: 170px;
	}
}

@media all and (max-width:1300px) {

	/* 서브타이틀 */
	.sub h4 {
		font-size: 56px;
	}

	.sub h5 {
		font-size: 48px;
	}

	.sub_new h4 {
		font-size: 50px;
	}

	.sub .sub_text {
		font-size: 17px;
	}

	.sub .sub_text p {
		font-size: 16px;
	}

	.sub_new .sub_text {
		font-size: 17px
	}

	.sub_new .sub_text p {
		font-size: 16px;
	}

	/* sub_container */
	.sub_container ul li.textPart span {
		font-size: 15px;
	}

	.sub_container ul li.textPart h3 {
		font-size: 70px;
	}

	.sub_container ul li.textPart h3.long {
		font-size: 70px;
	}

	.sub_container ul li.textPart p {
		font-size: 17px;
	}

	.sub_container ul li.textPart br {
		display: none;
	}

	.sub_container ul li.textPart .last {
		font-size: 16px;
	}


	.website_con02 ul li p {
		font-size: 26px;
	}

	.software_con02 .inner_box2 h5 {
		font-size: 30px;
	}

	.software_con02 .inner_box2 .soft_stext {
		font-size: 15px;
	}

	.software_con02 .inner_box2 ul li h6 {
		font-size: 15px;
	}

	.software_con02 .inner_box2 ul li p {
		font-size: 14px;
	}

	.software_con02 .inner_box2 a {
		font-size: 14px;
		width: 13%;
	}

	.software_con02 .inner_box2 a i {
		font-size: 17px;
	}

	.contact_con01 h4 {
		margin-bottom: 50px;
		font-size: 35px;
	}

	.contact_con01 ul li p {
		float: left;
		width: 11vw;
		line-height: 60px;
		font-size: 18px;
	}

	.contact_con01 ul li>div {
		width: calc(100% - 11vw);
	}

	.contact_con01 ul li>div input {
		height: 60px;
		font-size: 14px;
	}

	.contact_con01 textarea {
		height: 600px;
		font-size: 14px;
	}

	.contact_con01 .agree_wrap input {
		width: 15px;
		height: 15px;
		font-size: 14px;
	}

	.contact_con01 .agree_wrap label {
		font-size: 16px;
	}

	.contact_con01 .agree_wrap a {
		font-size: 14px;
	}

	.contact_con01 .btn a {
		font-size: 20px;
	}

	.contact_con01 .btnCuzDuplBootrap a {
		font-size: 20px;
	}


	/* .port_tab ul li:nth-of-type(5) {
		border-top: 0;
		border-left: 1px solid #d6d6d6;
	} */

}

/* 모바일 */
@media all and (max-width:999px) {

	/* sub_visual */
	.sub_visual {
		margin-bottom: 12%;
		padding-top: 15.5155155155vw;
		padding-bottom: 10.5105105105vw;
		height: unset;
	}

	.sub_visual.mb_reverse_visual
	 {
				margin-bottom: 12%;
		padding-top: 24.5155155155vw;
		padding-bottom: 0;
		height: unset;
	}

	.sub_visual ul {
		display: block;
	}

	
	.sub_visual ul li {
		display: block;
		width: 100%;
	}

		.sub_visual.mb_reverse_visual ul,
		.mv_reverse02
		 {
		display: flex;
		flex-direction: column-reverse;
	}

	.sub_visual ul li:first-child {
		padding: 10% 2%;
		overflow: hidden;
		box-sizing: border-box;
	}
	.port_tab ul li {
		width: calc(33.3333% - 34px);
	}
	.sub_visual ul li p {
		margin-top: 6%;
		font-size: 5vw;
		padding-right: 3%;
	}




	/* sub_container */
	.sub_container ul li {
		float: none;
		width: 100%;
	}

	.sub_container.rightType ul li {
		float: none;
	}

	.sub_container ul li.textPart {
		padding: 10% 4%;
	}

	.sub_container ul li.textPart h3 {
		font-size: 46px;
	}

	.sub_container ul li.textPart h3.long {
		font-size: 51px;
	}

	.sub_container ul li.textPart h3.pdl {
		font-size: 57px;
	}


	.sub h4 {
		letter-spacing: -0.07em;
	}

	.sub .sub_text {
		margin-bottom: 5%;
		word-break: keep-all;
	}

	.sub .sub_text p {
		margin-top: 1.2%;
		margin-bottom: 20px;
	}


	/* homepage */
	.website_con01 {
		margin-bottom: 15%;
	}

	.website_con02 {
		margin-bottom: 15%;
	}

	.website_con03 {
		margin-bottom: 15%;
	}

	.website_con02 ul li {
		position: relative;
		float: none;
		width: 100%;
	}

	.inner_type .container01 {
		margin-bottom: 10%;
	}

	/* mobile */
	.mobile_con01 {
		margin-bottom: 15%;
	}

	.mobile_con02 {
		margin-bottom: 15%;
	}

	.mobile_con02 ul li {
		float: none;
		width: 100%;
	}

	.mobile_con02 ul li .text_t {
		top: 5%;
	}

	.mobile_con02 ul li .text_t h6 {
		font-size: 40px;
	}

	.mobile_con02 ul li .text_t p {
		font-size: 36px;
	}

	.mobile_con02 ul li .text_t span {
		font-size: 28px;
	}

	.container02 ul li {
		width: 50%;
	}


	/* software */
	.software_con01 {
		margin-bottom: 15%;
	}

	.software_con02 {
		margin-bottom: 15%;
	}

	.software_con02 .inner_box2 {
		padding: 10% 0;
	}

	.software_con02 .inner_box2 h5 {
		font-size: 27px;
		text-align: center;
		letter-spacing: -0.025em;
	}

	.software_con02 .inner_box2 h5 img {
		width: 10vw
	}

	.software_con02 .inner_box2 .soft_stext {
		margin: 3% 1% 10%;
	}

	.software_con02 .inner_box2 ul li {
		width: 42%;
	}

	.software_con02 .inner_box2 ul li h6 {
		margin-bottom: 4%;
	}

	.software_con02 .inner_box2 ul li p {
		margin-top: 5%;
		letter-spacing: -0.07em;
		word-break: keep-all;
	}

	.software_con02 .inner_box2 a {
		padding: 2% 0;
		width: 22%;
	}

	/* portfolio */
	.port_tab {
		margin: 5% 0 13%;
		padding: 0;
	}

	.port_tab ul {
		overflow: hidden;
	}




	/* portfolio */
	.port_tab {
		margin: 6% 0 5%;
		padding: 0;
	}

	.port_tab ul {
		overflow: hidden;
		font-size: 0;
		text-align: center;
	}



	.sub_visual.port_type>ul>li:first-child {
		padding: 13% 2%;
		overflow: hidden;
		box-sizing: border-box;
	}

	/**/
	/* contact */
	.contact ul li:first-child {
		padding: 10% 2%;
		width: 100%;
	}

	.contact ul li:last-child {
		width: 100%;
	}

	.contact ul li:first-child dl {
		width: 89%;
		padding-right: 0;
	}

	.contact ul li:first-child dl dd {
		font-size: 4.8vw;
		line-height: 1.5;
	}

	.contact ul li:first-child dl dt {
		width: 6%;
		margin: 0 2% 0 0;
	}

	.contact ul li:first-child dl dd a {
		font-size: 5vw;
	}

	.contact ul li:first-child dl dd a.num {
		font-size: 5.625vw;
	}

	.contact ul li:first-child dl>span {
		display: block;
	}

	.contact_con01 {
		padding: 9% 2% 12%;
		margin-bottom: 15%;
	}

	.contact_con01 h4 {
		margin-bottom: 10%;
	}

	.contact_con01 ul li {
		margin-bottom: 4%;
	}

	.contact_con01 ul li.half {
		width: 100%;
	}

	.contact_con01 ul li p {
		width: 28%;
		line-height: 45px;
		font-size: 16px;
	}

	.contact_con01 ul li.no02 p {
		padding-left: 0;
	}

	.contact_con01 ul li>div {
		float: left;
		width: calc(100% - 28%);
	}

	.contact_con01 ul li>div input {
		height: 45px;
	}

	.contact_con01 textarea {
		resize: none;
		width: 100%;
		height: 400px;
		padding: 15px;
		box-sizing: border-box;
		border: 1px solid #d5d3d3;
	}

	.contact_con01 .agree_wrap {
		padding: 4% 0;
	}

	.contact_con01 .agree_wrap input {
		width: 14px;
		height: 14px;
	}

	.contact_con01 .agree_wrap label {}

	.contact_con01 .agree_wrap a {
		padding: 2% 0;
		width: 22%;
	}

	.contact_con01 .btn a {
		display: block;
		margin: 8% auto 0;
		padding: 2% 0;
		width: 30%;
	}

	.contact_con01 .btnCuzDuplBootrap a {
		display: block;
		margin: 8% auto 0;
		padding: 2% 0;
		width: 30%;
	}


	.shopping_con01 {
		margin-bottom: 5.015vw;
	}


}

@media all and (max-width:640px) {
	.software_con02 .inner_box2 ul li {
		width: 96%;
	}
	.port_tab ul {
		gap: 20px;
	}
	.port_tab ul li {
		width: calc(50% - 10px);
		max-width: 120px;
	}
	.port_tab ul .buttonTit span{
		font-size: 14px;
	}
}

@media all and (max-width:600px) {

	.container02 ul li {
		width: 100%;
	}
}


.br_mb_only {
	display: none;
}

@media all and (max-width:550px) {

	.sub_container ul li.textPart {
		padding: 20px 0 0 0;
	}


	.br_mb_only {
		display: block;
	}

	.sub h4 {
		font-size: 45px;
	}

	.sub h5 {
		font-size: 32px;
	}

	.sub_new h4 {
		font-size: 44px;
	}

	.website_con02 ul li p {
		font-size: 22px;
	}

	.mobile_con02 ul li .text_t h6 {
		font-size: 24px;
	}

	.mobile_con02 ul li .text_t p {
		position: relative;
		top: 0;
		margin-top: 11%;
		font-size: 16px;
	}

	.mobile_con02 ul li .text_t span {
		font-size: 14px;
	}

	.software_con02 .inner_box2 ul li p {
		font-size: 12px;
	}

	.software_con02 .inner_box2 a {
		padding: 4% 0;
		width: 35%;
	}

	.contact_con01 .btn a {
		padding: 4% 0;
		width: 45%;
	}

	.contact_con01 .btnCuzDuplBootrap a {
		padding: 4% 0;
		width: 45%;
	}
}

@media all and (max-width:330px) {
	.sub_container ul li.textPart h3 {
		font-size: 52px;
		letter-spacing: -0.1em;
	}
}



/* vizen2014  에서 가져옴 시작 **/

.mb7 {
	margin-bottom: 7px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.mb24 {
	margin-bottom: 24px !important;
}

.mb25 {
	margin-bottom: 25px !important;
}

.mb27 {
	margin-bottom: 27px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.mb35 {
	margin-bottom: 35px !important;
}

.mb38 {
	margin-bottom: 38px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.mb42 {
	margin-bottom: 42px !important;
}

.mb45 {
	margin-bottom: 45px !important;
}

.mb48 {
	margin-bottom: 48px !important;
}

.mb50 {
	margin-bottom: 50px !important;
}

.mb60 {
	margin-bottom: 60px !important;
}

.mb65 {
	margin-bottom: 65px !important;
}

.mb80 {
	margin-bottom: 80px !important;
}

.mappt400 {
	padding-top: 400px !important;
}

.pb50 {
	padding-bottom: 50px !important
}


/*정렬*/
.tc {
	text-align: center;
}

.tl {
	text-align: left !important;
}

.tr {
	text-align: right !important;
}

.font15 {
	font-size: 15px;
}

.font17 {
	font-size: 17px;
}

.font18 {
	font-size: 18px;
	letter-spacing: -0.4px;
}

.font20 {
	font-size: 20px;
	letter-spacing: -0.4px;
}

.font22 {
	font-size: 22px;
	letter-spacing: -1px;
}

.font30 {
	font-size: 30px;
	letter-spacing: -1px;
}

/*버튼*/
.btnZone {
	overflow: hidden;
	position: relative;
	width: 100%;
}

.btnZone .btnLeft {
	float: left;
}

.btnZone .btnRight {
	float: right;
}

.btnZone.bottom {
	margin-bottom: 100px;
}

.btnZone.bottom .btnLeft {
	width: 4.875%;
}

.btnZone.bottom .right_wrap {
	position: absolute;
	right: 0;
	top: 0;
	width: 9.75%;
	font-size: 0;
	text-align: right;
}

.btnZone.bottom .right_wrap a {
	display: inline-block;
	width: 50%;
}

/*버튼 센터 */
.more_btn {
	text-align: center;
	margin-top: 20px;
}

.btnC {
	position: relative;
	text-align: center;
	padding: 0 0;
	clear: both;
	width: 100%;
	vertical-align: middle;
}

.btnC span {
	display: inline-block;
	vertical-align: top;
	margin: 10px 0;
}

#bbs .btnC .btnAll {
	width: 98%;
	margin: 0 1px;
	text-align: center;
	vertical-align: middle;
}

/*포트폴리오Read*/
.portfolioRead {
	position: relative;
	max-width: 1600px;
	margin: 0 auto;
}

.portfolioRead img {
	max-width: 100%;
}

.portfolioRead .topZone {
	position: relative;
	width: 100%;
	margin: 0 0 60px 0;
}

.portfolioRead .topZone dl {
	text-align: center;
}

.portfolioRead .topZone dl dt {
	font-size: 1.875vw;
	color: #333333;
	padding: 0 9.75% 0 4.875%;
	letter-spacing: -1px;
}

.portfolioRead .topZone dl dd {
	font-size: 1.09375vw;
	color: #86888b;
	padding: 0 9.75% 0 4.875%;
}

.portfolioRead .topZone .list_btn {
	position: absolute;
	left: 0;
	top: 0;
	width: 4.875%;
}

.portfolioRead .topZone .list_control_btn {
	position: absolute;
	right: 0;
	top: 0;
	width: 9.75%;
	font-size: 0;
	text-align: right;
}

.portfolioRead .topZone .list_control_btn a {
	display: inline-block;
	width: 50%;
}

.portfolioRead .detail {
	margin: 0 0 48px 0;
	padding: 0 0 46px 0;
	border-bottom: 1px solid #dedede;
}

.portfolioRead .detail ul {
	overflow: hidden;
	margin: 0 0 57px 0;
}

.portfolioRead .detail ul li {
	float: left;
	margin: 0 12px 0 0;
	padding: 0 0 0 12px;
	/* background: url(/img/portfolioRead_bar.gif) no-repeat left center; */
}

.portfolioRead .detail ul li.first {
	padding-left: 0;
	background: none;
}

.portfolioRead .detail ul li a {
	color: #656565;
}

/*공지사항*/
.noticList ul li {
	clear: both;
	width: calc(100% - 20px);
	min-height: 80px;
	margin: 0 10px 10px;
	padding: 0 0 10px;
	border-bottom: 1px solid #e2e2e2;
}

.noticList a.bgA {
	display: block;
	width: 100%;
	min-height: 90px;
	background: url('/img/noticList_off.gif') no-repeat center right;
}

.info_div1 ul.ul_prt_parent>li>a {
	display: block;
	overflow: hidden;
}

.noticList ul li span.num {
	float: left;
	display: block;
	height: 80px;
	line-height: 80px;
	color: #666;
	font-size: 47px;
	/* font-style: oblique; */
	text-align: center;
	letter-spacing: -1px;
	margin-right: 30px;
}

/* .noticList ul li span.num span.day{display:block; color:#bdbdbd; font-size:13px; font-style:normal; margin-top:-8px;} */
.noticList ul li .noticList_txtWrap {
	float: left;
	margin-top: 10px;
}

.noticList ul li span.day {
	display: block;
	color: #666;
	font-size: 22px;
	font-style: normal;
	margin-top: 10px;
}

.noticList ul li span.subject {
	display: block;
	width: 100%;
	height: 35px;
	font-size: 22px;
	color: #666;
	line-height: 35px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.noticList ul li .noticList_txtWrap02 {
	width: calc(100% - 140px);
	height: 80px;
	line-height: 80px;
	overflow: hidden;
	margin-top: 0;
}

.noticList ul li .noticList_txtWrap02>span {
	display: inline-block;
}

.noticList ul li .noticList_txtWrap02 span.subject {
	width: calc(100% - 155px);
	height: 80px;
	line-height: 80px;
}

.noticList ul li .noticList_txtWrap02 span.day {
	float: right;
	line-height: 80px;
	width: 140px;
	margin-left: 10px;
	text-align: right;
	margin-top: 0;
}

.noticList ul .current {
	background: #fff;
	width: 100%;
	box-sizing: border-box;
	font-size: 115%;
	color: #666;
	padding: 2%;
}

.noticList.no_edit_text .current * {
	font-size: 18px !important;
	line-height: 1.5 !important;
	font-family: "Noto Sans KR", sans-serif !important;
	color: #444 !important;
}

.noticList ul li.active>a.bgA {
	background: url('/img/noticList_on.gif') no-repeat center right;
}

.noticList ul li.active span.num {
	color: #FF0707;
}

.noticList ul li.active span.num span.day {
	color: #000000;
}

.noticList ul li.active span.subject {
	color: #000000;
}
.noticList ul li.active .noticList_txtWrap02 span.day {
	color: #000;
}

.noticList img {
	max-width: 100%;
}

/* vizen2014  에서 가져옴 끝 */

@media all and (max-width:1300px) {
	.portfolioRead .topZone dl dt {
		font-size: 24px;
		word-break: keep-all;
	}

	.portfolioRead .topZone dl dd {
		font-size: 14px;
	}
}

@media all and (max-width:999px) {

	.btnZone.bottom .btnLeft {
		width: 10%;
	}

	.btnZone.bottom .right_wrap {
		width: 20%;
	}

	.portfolioRead .topZone dl dt {
		padding: 0 20% 0 10%;
	}

	.portfolioRead .topZone dl dd {
		padding: 0 20% 0 10%;
	}

	.portfolioRead .topZone .list_btn {
		width: 10%;
	}

	.portfolioRead .topZone .list_control_btn {
		width: 20%;
	}

	.portfolioRead .detail ul li a {
		font-size: 13px;
	}

	.portfolioRead .detail ul li {
		padding: 0;
	}


	.noticList ul li {
		clear: both;
		width: 100%;
		min-height: 50px;
		margin: 0 0 0;
		padding: 0 0 10px;
	}

	.noticList ul li span.num {
		height: 50px;
		line-height: 50px;
		color: #bdbdbd;
		font-size: 14px;
		font-style: oblique;
		text-align: center;
		letter-spacing: -1px;
		margin-right: 10px;
	}

	.noticList ul li .noticList_txtWrap {
		float: left;
		margin-top: 10px;
	}

	.noticList ul li span.day {
		display: block;
		color: #bdbdbd;
		font-size: 13px;
		font-style: normal;
		margin-top: 10px;
	}

	.noticList ul li span.subject {
		height: 35px;
		font-size: 14px;
		color: #777;
		line-height: 35px;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.noticList ul li .noticList_txtWrap02 {
		width: calc(100% - 40px);
		height: 50px;
		line-height: 50px;
		overflow: hidden;
		margin-top: 0;
	}

	.noticList ul li .noticList_txtWrap02>span {
		display: inline-block;
	}

	.noticList ul li .noticList_txtWrap02 span.subject {
		width: calc(100% - 95px);
		height: 50px;
		line-height: 50px;
	}

	.noticList ul li .noticList_txtWrap02 span.day {
		float: right;
		line-height: 50px;
		width: 70px;
		margin-left: 10px;
		text-align: right;
		margin-top: 0;
	}

	.noticList ul .current {
		width: 94%;
		font-size: 115%;
		color: #666;
		padding: 2%;
	}

	.noticList.no_edit_text .current * {
		font-size: 12px !Important
	}

	.noticList ul li.active>a.bgA {
		background: url('/img/noticList_on.gif') no-repeat center right;
	}

	.noticList ul li.active span.num {
		color: #000000;
	}

	.noticList ul li.active span.num span.day {
		color: #000000;
	}

	.noticList ul li.active span.subject {
		color: #000000;
	}

	.noticList img {
		max-width: 100%;
	}

	.btnOver>a {
		display: inline-block;
		margin-top: 3%;
		width: 26%;
	}

	.btnOver>a>img {
		width: 100%;
	}

}


.visual_toptop {
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 2
}

.visual_toptop img {
	width: 100%;
}

@media all and (max-width:1620px) {
	.w1620hidden {
		display: none
	}
}

/* portfolio 페이지 상단 동적 효과 */

/* 동적효과 */
.sub_popo {
	padding: 0;
	position: relative;
	padding-top: 275px;
}

.sub_popo ul li {
	position: relative;
}

.sub_popo ul li .inner {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	overflow: hidden;
}

.inner img.t0l0 {
	top: 0;
	left: 0;
}

.inner img.t0r0 {
	top: 0;
	right: 0;
}

.inner img.b0l0 {
	bottom: 0;
	left: 0;
}

.inner img.b0r0 {
	bottom: 0;
	right: 0;
}

.inner img.upside {
	transform: translate(0, -2000px);
	-webkit-transform: translate(0, -2000px);
	-moz-transform: translate(0, -2000px);
	-o-transform: translate(0, -2000px);
}

.inner img.under {
	transform: translate(0, 1000px);
	-webkit-transform: translate(0, 1000px);
	-moz-transform: translate(0, 1000px);
	-o-transform: translate(0, 1000px);
}

.inner img.leftside {
	transform: translate(-2000px, 0);
	-webkit-transform: translate(-2000px, 0);
	-moz-transform: translate(-2000px, 0);
	-o-transform: translate(-2000px, 0);
}

.inner img.rightside {
	transform: translate(1800px, 0);
	-webkit-transform: translate(1800px, 0);
	-moz-transform: translate(1800px, 0);
	-o-transform: translate(1800px, 0);
}

.inner img.sidelt {
	transform: translate(-1000px, -1000px);
	-webkit-transform: translate(-1000px, -1000px);
	-moz-transform: translate(-1000px, -1000px);
	-o-transform: translate(-1000px, -1000px);
}

.inner img.sidert {
	transform: translate(500px, -1500px);
	-webkit-transform: translate(500px, -1500px);
	-moz-transform: translate(500px, -1500px);
	-o-transform: translate(500px, -1500px);
}

.inner img.siderb {
	transform: translate(1500px, 1000px);
	-webkit-transform: translate(1500px, 1000px);
	-moz-transform: translate(1500px, 1000px);
	-o-transform: translate(1500px, 1000px);
	-ms-transform: translate(1500px, 1000px);
}

.inner img.sidelb {
	transform: translate(-1000px, 500px);
	-webkit-transform: translate(-1000px, 500px);
	-moz-transform: translate(-1000px, 500px);
	-o-transform: translate(-1000px, 500px);
}

@media all and (min-width:2000px) {
	.inner img.under {
		transform: translate(0, 2000px);
		-webkit-transform: translate(0, 2000px);
		-moz-transform: translate(0, 2000px);
		-o-transform: translate(0, 2000px);
	}
}

/* sub_visual */
.sub_popo {
	overflow: hidden
}

.sub_popo ul {
	position: relative;
	width: 100%;
	vertical-align: middle;
	margin-bottom: 0;
	padding-bottom: 100px;
}

.sub_popo>ul>li {
	position: relative;
	float: left;
	width: 50%;
	vertical-align: middle;
	box-sizing: border-box;
	z-index: 2;
	box-sizing: border-box;
}

.sub_popo>ul>li:first-child {
	padding: 5.6% 0 0 5.5078125%;
	padding-left: 1.15%
}

.sub_popo>ul>li img.st00_mb {
	margin-bottom: 1.5%;
}

.sub_popo ul li .ihide {
	position: relative;
	z-index: -1;
}

.sub_popo ul li h3 {
	font-size: 2.5vw;
	color: #fff;
	letter-spacing: -0.1em;
}

.sub_popo ul li p {
	box-sizing: border-box;
	word-break: keep-all;
	letter-spacing: -0.05em;
	color: #fff;
	font-weight: 300;
}

.sub_popo ul li p strong {
	text-decoration: underline;
}

.trans {
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
}

.sub_popo ul li p span.under {
	text-decoration: underline;
}

.sub_popo ul li p span.po01 {
	color: #04fee4;
}

.sub_popo ul li p span.po02 {
	color: #e41957;
	font-weight: 700;
}

.sub_popo ul li p span.po03 {
	color: #f9fc03;
	font-weight: 700;
}

.sub_popo ul li p span.po04 {
	color: #ffeb11;
}

.sub_popo ul li p span.po05 {
	color: #bbff03;
}

.sub_popo>ul>li.inimg {
	display: block;
	float: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.sub_popo>ul>li.inimg .po_inner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.sub_popo>ul>li.inimg .de_inner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*homepage*/
.sub_popo ul li .inner img {
	display: block;
	position: absolute;
	z-index: 10;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-o-transition: all 0.2s;
	-ms-transition: all 0.2s;
	transition: all 0.2s;
}

.sub_popo ul li img.hoarrow {
	width: 6.953125%;
	display: none;
}

.sub_popo ul li img.no01 {
	left: 23.59375%;
}

.sub_popo ul li img.no02 {
	left: 23.59375%;
	top: 20.3985932005%;
}

.sub_popo ul li img.no03 {
	left: 30.546875%;
	top: 13.0487%;
}

.sub_popo ul li img.no04 {
	left: 37.5%;
	top: 6%;
}

.sub_popo ul li img.no05 {
	left: 23.59375%;
	top: 41%;
}

.sub_popo ul li img.no06 {
	left: 30.5%;
	top: 33.5329341317%;
}

.sub_popo ul li img.no07 {
	left: 37%;
	top: 26%;
}

.sub_popo ul li img.no08 {
	left: 43.8%;
	top: 19%;
}

.sub_popo ul li img.no09 {
	left: 50.5%;
	top: 12%;
}

.sub_popo ul li img.no10 {
	left: 23.59375%;
	top: 62%;
}

.sub_popo ul li img.no11 {
	left: 30.5%;
	top: 54.5%;
}

.sub_popo ul li img.no12 {
	left: 37.2%;
	top: 47%;
}

.sub_popo ul li img.no13 {
	left: 44%;
	top: 39.5%;
}

.sub_popo ul li img.no14 {
	left: 50.7%;
	top: 32%;
}

.sub_popo ul li img.no15 {
	left: 57.5%;
	top: 24.8%;
}

.sub_popo ul li img.no16 {
	left: 64.5%;
	top: 18%;
}

.sub_popo ul li img.no17 {
	left: 23.59375%;
	top: 83%;
}

.sub_popo ul li img.no18 {
	left: 30.5%;
	top: 76%;
}

.sub_popo ul li img.no19 {
	left: 37%;
	top: 68%;
}

.sub_popo ul li img.no20 {
	left: 43.8%;
	top: 60%;
}

.sub_popo ul li img.no21 {
	left: 50.5%;
	top: 52.5%;
}

.sub_popo ul li img.no22 {
	left: 57%;
	top: 45%;
}

.sub_popo ul li img.no23 {
	left: 64%;
	top: 38%;
}

.sub_popo ul li img.no24 {
	left: 71%;
	top: 30.5%;
}

.sub_popo ul li img.no25 {
	left: 77.5%;
	top: 23.5%;
}

.sub_popo ul li img.no26 {
	left: 50.5%;
	top: 74%;
}

.sub_popo ul li img.no27 {
	left: 57.2%;
	top: 66.5%;
}

.sub_popo ul li img.no28 {
	left: 64%;
	top: 59%;
}

.sub_popo ul li img.no29 {
	left: 57.2%;
	top: 88%;
}

.sub_popo ul li img.no30 {
	left: 64%;
	top: 81%;
}

.sub_popo ul li img.no31 {
	left: 71%;
	top: 73%;
}

.sub_popo ul li img.no32 {
	left: 71%;
	top: 95%;
}

.sub_popo ul li img.no33 {
	left: 78.5%;
	top: 88%;
}

.sub_popo>ul>li.inimg .port_b {
	position: absolute;
	width: 100%;
	height: 100%;
	bottom: 0;
	left: 0;
}

.sub_popo>ul>li.inimg .po_inner img {
	display: block;
	position: absolute;
	z-index: 10;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-o-transition: all 0.2s;
	-ms-transition: all 0.2s;
	transition: all 0.2s;
	transform: translate(1500px, 1500px);
	-webkit-transform: translate(1500px, 1500px);
	-moz-transform: translate(1500px, 1500px);
	-o-transform: translate(1500px, 1500px);
}

.sub_popo>ul>li.inimg .po_inner .po_i01 {
	width: 23.906%;
	top: -1.5%;
	right: 30.5%;
}

.sub_popo>ul>li.inimg .po_inner .po_i02 {
	width: 23.906%;
	bottom: -32%;
	right: 29%;
	transition-delay: 0.1s;
}

.sub_popo>ul>li.inimg .po_inner .po_i03 {
	width: 23.906%;
	bottom: -25%;
	right: 13%;
	transition-delay: 0.2s;
}

.sub_popo>ul>li.inimg .po_inner .po_i04 {
	width: 23.906%;
	top: -4%;
	right: 13%;
	transition-delay: 0.2s;
}

.sub_popo>ul>li.inimg .po_inner .po_i05 {
	width: 23.906%;
	bottom: -23%;
	right: -4.5%;
	transition-delay: 0.2s;
}

.sub_popo>ul>li.inimg .po_inner .po_i06 {
	width: 23.906%;
	bottom: 43%;
	right: -1%;
	transition-delay: 0.3s;
}

.sub_popo>ul>li.inimg .po_inner .po_i07 {
	width: 23.906%;
	bottom: -9%;
	right: -18.3%;
	transition-delay: 0.3s;
}

.sub_popo>ul>li.inimg .po_inner .po_i08 {
	width: 23.906%;
	top: -52.5%;
	right: -7.5%;
	transition-delay: 0.3s;
}

.sub_popo>ul>li.inimg.on .po_inner img {
	transform: translate(0, 0);
}

@media all and (max-width:1920px) {
	.sub_popo>ul>li.inimg .po_inner .po_i01 {
		top: 3.5%;
		right: 29.5%;
	}

	.sub_popo>ul>li.inimg .po_inner .po_i02 {
		bottom: -32%;
		right: 28%;
	}

	.sub_popo>ul>li.inimg .po_inner .po_i03 {
		bottom: -25%;
		right: 12%;
	}

	.sub_popo>ul>li.inimg .po_inner .po_i04 {
		top: 1%;
		right: 11.7%;
	}

	.sub_popo>ul>li.inimg .po_inner .po_i05 {
		bottom: -23%;
		right: -6%;
	}

	.sub_popo>ul>li.inimg .po_inner .po_i06 {
		bottom: 46%;
		right: -1%;
	}

	.sub_popo>ul>li.inimg .po_inner .po_i07 {
		bottom: -6%;
		right: -19.3%;
	}

	.sub_popo>ul>li.inimg .po_inner .po_i08 {
		top: -52.5%;
		right: -7.5%;
	}
}

@media all and (max-width:999px) {

	/* sub_visual */
	.sub_popo {
		padding-top: 15.5155155155vw;
	}

	.sub_popo ul {
		display: block;
		padding-bottom: 0;
	}

	.sub_popo>ul>li {
		display: block;
		width: 100%;
		float: none;
	}

	.sub_popo>ul>li:first-child {
		padding: 13% 2%;
		overflow: hidden;
		box-sizing: border-box;
	}

	.sub_popo ul li h3 {
		font-size: 6vw;
	}

	.sub_popo ul li p {
		font-size: 5vw;
	}

	.inner_type {
		padding-top: 9%;
	}


	#wrap.momain {
		background-size: 340% auto;
	}

	.homain .sub_popo {
		padding-top: 100px;
	}

	.port_type {
		padding-top: 100px;
	}

	.abmain .sub_popo {
		margin: -130px 0 13%;
		background: #131a20 url(/img/ab_tit.jpg) no-repeat 76% bottom;
		background-size: auto 60%;
		padding-top: 100px;
	}

	.comain .sub_popo {
		margin: -130px 0 13%;
		padding-top: 100px;
		background: #674fff url(/img/con_titbg.jpg) no-repeat 75% bottom;
		background-size: 235% auto;
	}

	.demain .sub_popo {
		margin: -130px 0 13%;
		padding-top: 100px;
	}

	.momain .sub_popo {
		margin: -130px 0 0;
		padding-top: 100px;
		background-size: auto 100%;
	}

	.sub_popo>ul>li.inimg {
		bottom: 0;
		top: auto;
	}

	#wrap02 .sub_popo>ul>li.inimg img.cont_tit {
		width: 200%;
		max-width: 1500%;
		bottom: 0;
		top: auto;
		right: -25%;
	}

	.sub_popo>ul>li.inimg.po_wrap {
		height: 55%;
	}

	.sub_popo>ul>li.inimg .po_inner {
		width: 200%;
		height: 100%;
		bottom: 0;
		left: auto;
		right: -10%;
	}

	.sub_popo>ul>li.inimg .de_inner {
		width: 170%;
		height: 78%;
		margin-top: 14.5%;
		bottom: 0;
		left: auto;
		right: -6.5%;
	}

}

/* ------ sub_container_text ------ */
.sub_container_text {
	margin: 60px 0;
}

.sub_container_text ul {
	font-size: 0;
	letter-spacing: -4px;
}

.sub_container_text ul li {
	text-align: center;
	padding: 40px 30px;
	box-sizing: border-box;
	display: inline-block;
	vertical-align: top;
	width: calc(25% - 15px);
	margin-right: 20px;
	border: 1px solid #eee;
	min-height: 356px;
	background: #fff;
	box-sizing: border-box;
}

.demain .sub_container_text ul li {
	padding: 60px 30px;
}

.sub_container_text ul li:last-child {
	margin-right: 0;
}

.sub_container_text ul li i {
	display: inline-block;
	vertical-align: top;
}

.sub_container_text ul li h5 {
	font-size: 24px;
	color: #222;
	letter-spacing: -0.05em;
	font-weight: bold;
	margin: 0;
}

.sub_container_text ul li p {
	font-size: 20px;
	color: #222;
	letter-spacing: -0.05em;
	font-weight: 300;
	margin-bottom: 14px;
}

.sub_container_text ul li span {
	font-size: 20px;
	color: #979797;
	letter-spacing: -0.045em;
	font-weight: 200;
	word-break: keep-all;
}

.sub_container_text ul li span b {
	font-weight: 400;
	color: #797979;
	display: block;
}

.sub_container_text.type02 ul li {
	width: calc(33.333333% - 14px);
	margin-right: 21px;
	margin-bottom: 21px;
	min-height: 495px
}

.sub_container_text.type02 ul li:nth-of-type(3n) {
	margin-right: 0;
}

.sub_container_text.type02 ul li p {
	margin-bottom: 25px;
}

.sub_container_text.type02 ul li span {
	font-size: 18px;
}

.sub_container_text.type02 ul li span b {
	margin-bottom: 30px
}

@media all and (max-width:1920px) {
	.sub_container_text ul li span br {
		display: none;
	}
}

@media all and (max-width:1300px) {
	.sub_container_text ul li {
		width: calc(50% - 20px);
		margin-right: 40px;
		margin-bottom: 40px;
	}

	.sub_container_text ul li:nth-of-type(2n) {
		margin-right: 0;
	}

	.sub_container_text.type02 ul li {
		width: calc(50% - 20px);
		margin-right: 40px;
		margin-bottom: 40px;
		min-height: auto
	}

	.sub_container_text.type02 ul li:nth-of-type(3n) {
		margin-right: 40px;
	}

	.sub_container_text.type02 ul li:nth-of-type(2n) {
		margin-right: 0;
	}
}

@media all and (max-width:767px) {
	.sub_container_text ul li {
		width: 100%;
		margin: 15px 0;
		padding: 20px;
		min-height: auto;
	}

	.sub_container_text ul li:nth-of-type(2n) {
		margin: 15px 0
	}

	.sub_container_text ul li:last-child {
		margin: 15px 0
	}

	.sub_container_text ul li h5 {
		font-size: 16px
	}

	.sub_container_text ul li p {
		font-size: 14px
	}

	.sub_container_text ul li span {
		font-size: 14px
	}

	.sub_container_text.type02 ul li {
		width: 100%;
		margin: 15px 0;
	}

	.sub_container_text.type02 ul li:nth-of-type(3n) {
		margin: 15px 0;
	}

	.sub_container_text.type02 ul li:nth-of-type(2n) {
		margin: 15px 0;
	}

	.sub_container_text.type02 ul li p {
		margin-bottom: 20px;
	}

	.sub_container_text.type02 ul li span {
		font-size: 14px;
	}

	.sub_container_text.type02 ul li span b {
		margin-bottom: 20px
	}

}

/* - about - */




.about_con01 {
	margin-bottom: 120px;
	box-sizing: border-box;

	display: flex;
	flex-direction: column;
	gap: 90px;
}


.about_con07 {
	padding: 0 60px 160px;
	box-sizing: border-box;
}

.about_con07 ul {
	border: 1px solid #e8e8e8;
	font-size: 0;
	letter-spacing: -4px;
}

.about_con07 ul li {
	width: 25%;
	padding: 60px 0;
	display: inline-block;
	vertical-align: top;
	text-align: center;
	position: relative;
}

.about_con07 ul li:before {
	content: "";
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: #ebebeb;
	position: absolute;
	display: block;
	right: -7px;
	top: 200px
}

.about_con07 ul li:last-child:before {
	display: none;
}

.about_con07 ul li .round_box {
	width: 324px;
	height: 324px;
	margin: 0 auto;
	border-radius: 50%;
	border: 1px solid #dfdfdf;
	padding: 20px;
	position: relative;
	box-sizing: border-box;
}

.about_con07 ul li .round_box .progress_bar {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.about_con07 ul li .round_box .progress_bar04 {
	transform: rotate(-90deg);
	-ms-transform: rotate(-90deg);
	-webkit-transform: rotate(-90deg);
	-o-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
}

.about_con07 ul li .round_box .progress_bar03 {
	transform: rotate(-180deg);
	-ms-transform: rotate(-180deg);
	-webkit-transform: rotate(-180deg);
	-o-transform: rotate(-180deg);
	-moz-transform: rotate(-180deg);
}

.about_con07 ul li .round_box .progress_bar02 {
	transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
}

.about_con07 ul li .round_box .progress_bar01 {
	transform: rotate(0);
	-ms-transform: rotate(0);
	-webkit-transform: rotate(0);
	-o-transform: rotate(0);
	-moz-transform: rotate(0);
}

.about_con07 ul li .round_box .up {
	width: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 2;
	transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
}

.about_con07 ul li .round_box .up span {
	line-height: 1.1;
	display: block;
	font-size: 32px;
	color: #FF0707;
	letter-spacing: -0.025em;
	font-weight: bold;
}

.about_con07 ul li .round_box .up h5 {
	font-size: 32px;
	margin: 10px 0;
	color: #222;
	letter-spacing: -0.025em;
	font-weight: bold;
}

.about_con07 ul li .round_box .up p {
	font-size: 26px;
	color: #FF0707;
	letter-spacing: -0.025em;
	font-weight: 300;
}

.about_con07 ul li .text {
	padding: 70px 20px 0;
	min-height: 340px;
	box-sizing: border-box;
	position: relative;
}

.about_con07 ul li .text:before {
	content: "";
	width: 1px;
	height: 340px;
	background: #e8e8e8;
	display: block;
	position: absolute;
	right: 0;
	top: 0;
}

.about_con07 ul li:last-child .text:before {
	display: none;
}

.about_con07 ul li .text p {
	font-size: 20px;
	color: #222;
	letter-spacing: -0.05em;
	margin-bottom: 30px;
}

.about_con07 ul li .text span {
	font-size: 20px;
	color: #999;
	font-weight: 300;
	letter-spacing: -0.05em;
}

.about_con07 .bot_btn {
	text-align: center;
	margin-top: 60px;
}

.about_con07 .bot_btn a {
	display: inline-block;
	vertical-align: top;
	padding: 24px 70px;
	background: #6700e6;
	font-size: 32px;
	color: #fff;
	letter-spacing: -0.025em;
}

.about_con07 .bot_btn a img {
	display: inline-block;
	vertical-align: middle;
	margin-left: 10px;
	position: relative;
	top: -2px;
}

img.history_bg {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%
}

.history_box {
	position: relative;
	left: 0;
	top: 0;
	width: 100%;
	/* height: 42.96875vw; */
	/* height: 38.5vw; */
	overflow-y: scroll;
	-ms-overflow-style: none;

	/* aspect-ratio: 1 / 0.87951; */
	aspect-ratio: 1 / 0.90;
}

.history_box::-webkit-scrollbar {
	display: none;
}

.history_page_num {
	position: absolute;
	right: 25px;
	bottom: 20px;
	z-index: 10;
}

.history_page_num ul {
	height: 100%;
}

.history_page_num ul li {
	position: static;
	width: 100%;
	margin: 8px auto;
	float: none;
}

.history_page_num ul li a {
	font-size: 0;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #cbcbcb;
	display: block;
}

.history_page_num ul li a.on {
	background: #370716
}

.history_box .icon_box {
	position: absolute;
	right: 0;
	top: 0;
}

.history_box dl {
	width: 640px;
	margin: 0 auto;
	margin-top: -10px;
	position: relative;
}

.history_box dl dt {
	top: 60px;
	position: absolute;
	width: 170px;
	height: 67px;
	background: #f41156;
	font-size: 36px;
	color: #fff;
	letter-spacing: 0em;
	line-height: 67px;
	text-align: center;
	font-weight: 500;
	border-radius: 5px;
	box-shadow: 6px 12px 9px rgba(0, 0, 0, 0.31);
}

.history_box dl dd {
	padding: 30px 20px;
	box-sizing: border-box;
	position: relative;
}

.history_box dl dd p {
	font-size: 0;
	letter-spacing: -4px;
}

.history_box dl dd p:after {
	clear: both;
	content: "";
	display: block;
	height: 0;
	visibility: hidden
}

.history_box dl dd p b {
	width: 60px;
	padding: 0 10px;
	font-size: 26px;
	color: #c3c3c3;
	letter-spacing: -0.075em;
	font-weight: bold;
	display: block;
	float: left;
	box-sizing: border-box;
}

.history_box dl dd p span {
	width: calc(100% - 60px);
	font-size: 26px;
	color: #222;
	letter-spacing: -0.075em;
	font-weight: 300;
	display: block;
	float: left;
}

.history_box dl:nth-of-type(1) dd {
	padding-top: 110px
}

.history_box dl:nth-of-type(1) dt {
	top: 120px
}

.history_box dl:nth-of-type(2n-1) dd {
	box-shadow: inset 5px 2px 8px rgba(0, 0, 0, 0.1);
	border-right: 0;
	border-left: 10px solid #fff;
	border-radius: 15px 0 0 15px
}

.history_box dl:nth-of-type(2n-1) dt {
	left: -200px;
}

.history_box dl:nth-of-type(2n) dd {
	box-shadow: inset -5px 14px 8px rgba(0, 0, 0, 0.1);
	border-left: 0;
	border-right: 10px solid #fff;
	border-radius: 0 15px 15px 0
}

.history_box dl:nth-of-type(2n) dt {
	right: -200px;
}

.history_box dl:nth-of-type(2n) dd p b {
	float: right;
}

.history_box dl:nth-of-type(2n) dd p span {
	float: right;
	text-align: right
}

.history_box dl dd:before {
	content: "";
	width: 100%;
	border-top: 10px solid #fff;
	background: #fff;
	position: absolute;
	left: 0;
	top: 0;
}

.history_box dl dd p {
	margin: 20px 0;
}

@media all and (max-width:2560px) {
	.history_box .icon_box {
		width: 12.890625vw
	}

	.history_box .icon_box img {
		width: 100%
	}

	.history_box dl {
		width: 21vw
	}

	.history_box dl dd {
		padding: 1.171875vw 0.78125vw
	}

	.history_box dl:nth-of-type(1) dd {
		padding-top: 4.296875vw;
	}

	.history_box dl:nth-of-type(2n-1) dd {
		border-width: 0.390625vw;
	}

	.history_box dl:nth-of-type(2n) dd {
		border-width: 0.390625vw
	}

	.history_box dl dt {
		top: -2.34375vw;
		width: 5vw;
		height: 2.6171875vw;
		font-size: 1.40625vw;
		line-height: 2.6171875vw;
	}

	.history_box dl:nth-of-type(1) dt {
		top: 4.6875vw
	}

	.history_box dl:nth-of-type(2n-1) dt {
		left: -5.5vw;
	}

	.history_box dl:nth-of-type(2n) dt {
		right: -5.5vw
	}

	.history_box dl dd p {
		margin: 0.78125vw 0;
	}

	.history_box dl dd p b {
		width: 2.34375vw;
		font-size: 1.015625vw;
		padding: 0 0.390625;
	}

	.history_box dl dd p span {
		width: calc(100% - 2.34375vw);
		/* font-size: 1.015625vw; */
		font-size: 20px;
	}
}

@media all and (max-width:1600px) {
	.abmain .sub_visual .split_box span.a {
		left: 14vw;
	}

	.abmain .sub_visual .split_box span.b {
		left: 26vw;
	}

	.abmain .sub_visual .split_box span.o {
		left: 6vw;
	}

	.abmain .sub_visual .split_box span.u {
		left: 20vw;
	}

	.abmain .sub_visual .split_box span.t {
		left: 13vw;
	}

	.about_con07 ul li .round_box {
		width: 260px;
		height: 260px;
	}

	.about_con07 ul li .text p br {
		display: none
	}

	.about_con07 ul li .text span br {
		display: none
	}

}

@media all and (max-width:1400px) {
	.about_con07 ul li {
		width: 50%;
	}

	.about_con07 ul li:nth-of-type(2n):before {
		display: none;
	}

	.about_con07 ul li:nth-of-type(2n) .text:before {
		display: none;
	}
}

@media all and (max-width:1000px) {


	.com_tit_box01 {
		justify-content: center;
	}

	.sub_visual ul li p {
		text-align: center;
		padding-right: unset;
	}

	.sub_visual ul li p {
		font-size: 16px;
		line-height: 1.5em;
	}

	.sub_visual ul li .sub_eng_tit {
		font-size: 16px;
		line-height: 1.5em;
	}



	.abmain .sub_visual .split_box span.a {
		left: 18vw;
		top: -10px;
	}

	.abmain .sub_visual .split_box span.b {
		left: 73vw;
		top: 20%;
	}

	.abmain .sub_visual .split_box span.o {
		left: 10vw;
		top: 40%;
	}

	.abmain .sub_visual .split_box span.u {
		left: 53vw;
		top: 60%;
	}

	.abmain .sub_visual .split_box span.t {
		left: 33vw;
		bottom: -10px;
	}

	.about_con03 {
		padding-top: 80px !important
	}

	.about_con07 {
		padding: 0 0 80px
	}

	.about_con07 ul li {
		width: 100%;
		display: block;
		padding: 30px;
		box-sizing: border-box;
	}

	.about_con07 ul li .text {
		min-height: auto;
	}

	.about_con07 ul li:before {
		display: none;
	}

	.about_con07 ul li .text:before {
		display: none;
	}

	.history_box {
		height: 80.7vw;
	}

	.history_box .icon_box {
		width: 25vw
	}

	.history_box dl {
		width: 55vw
	}

	.history_box dl dd {
		padding: 3vw 2vw
	}

	.history_box dl:nth-of-type(1) dd {
		padding-top: 11vw;
	}

	.history_box dl:nth-of-type(2n-1) dd {
		border-width: 1vw;
	}

	.history_box dl:nth-of-type(2n) dd {
		border-width: 1vw
	}

	.history_box dl dt {
		z-index: 3;
		top: -3vw;
		width: 17vw;
		height: 6.7vw;
		font-size: 3.6vw;
		line-height: 6.7vw;
	}

	.history_box dl:nth-of-type(1) dt {
		top: 7vw
	}

	.history_box dl:nth-of-type(2n-1) dt {
		left: -14vw;
	}

	.history_box dl:nth-of-type(2n) dt {
		right: -14vw
	}

	.history_box dl dd p {
		margin: 2vw 0;
	}

	.history_box dl dd p b {
		width: 6vw;
		font-size: 2.2vw;
		padding: 0 1vw;
	}

	.history_box dl dd p span {
		width: calc(100% - 6vw);
		font-size: 2.2vw;
	}
}

@media all and (max-width:640px) {
	.about_con07 ul li {
		padding: 30px 10px;
	}

	.about_con07 ul li .round_box {
		width: 230px;
		height: 230px;
	}

	.about_con07 ul li .round_box .up span {
		font-size: 26px
	}

	.about_con07 ul li .round_box .up h5 {
		font-size: 26px
	}

	.about_con07 ul li .round_box .up p {
		font-size: 18px
	}

	.about_con07 ul li .text {
		padding: 40px 20px 0;
	}

	.about_con07 ul li .text p {
		font-size: 16px
	}

	.about_con07 ul li .text span {
		font-size: 16px
	}

	.about_con07 .bot_btn {
		margin-top: 30px
	}

	.about_con07 .bot_btn a {
		padding: 10px 20px;
		font-size: 20px;
	}

	.history_page_num {
		bottom: -10px
	}

	.history_page_num ul li a {
		width: 8px;
		height: 8px;
	}
}

@media all and (max-width:360px) {
	.history_box .icon_box {
		right: -6vw;
		top: -4vw;
	}

	.history_box dl {
		width: 70vw
	}

	.history_box dl:nth-of-type(1) dt {
		top: 4vw
	}

	.history_box dl:nth-of-type(2n-1) dt {
		left: -10vw;
	}

	.history_box dl dt {
		top: -3vw
	}

	.history_box dl:nth-of-type(2n) dt {
		right: -10vw;
	}
}

/* contactUs complete */
.txt_center_box {
	text-align: center;
}
.sub_complete_ment {
	font-size: 24px;
	font-weight: 400;
	line-height: 1.5em;
	color: #222;
	word-break: keep-all;
}
.sub_complete_ment02 {
	font-size: 36px;	
	font-weight: 400;
	line-height: 1.5em;
	color: #222;
}
.com_btn_box01.contact {
	gap: 30px;
	margin-top: 60px;
}

@media all and (max-width:1024px) {
	.sub_complete_ment {
		font-size: 20px;
	}
	.sub_complete_ment02 {
		font-size: 26px;	
	}
}

@media all and (max-width:700px) {
	.img.contact img {
		height: 250px;
	}
	.sub_complete_ment {
		font-size: 16px;
	}
	.sub_complete_ment02 {
		font-size: 18px;
	}
}
/* END contactUs complete */

/* policy */
.policy_border {
	padding-top: 50px;
	margin-bottom: 50px;
	border-bottom: 1px solid #dedede;
}
.policy_row + .policy_row {
	margin-top: 50px;
}
.com_dot_txt {
	width: fit-content;
	position: relative;
	padding-left: 15px;
	font-size: 24px;
	font-weight: 400;
	line-height: 1.5em;
	color: #222;
	margin: 0 auto;
}
.com_dot_txt::after {
	position: absolute;
	content: '';
	left: 0;
	top: 15px;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background-color: #222;
}
.policy_border_box {
	padding: 40px;
	border-radius: 50px;
	border: 1px solid #dedede;
}
.policy_border_box .policy_etc_ment {
	margin-top: 40px;
}
.policy_etc_ment {
	font-size: 18px;
	font-weight: 400;
	color: #888;
	line-height: 1.5em;
}

@media all and (max-width:1024px) {
	.com_dot_txt {
		font-size: 20px;
	}
	.policy_etc_ment {
		font-size: 16px;
	}
	.policy_border_box {
		padding: 20px;
	}
	.com_dot_txt::after {
		top: 9px;
	}
	.com_dot_txt {
		padding-left: 8px;
	}
}

@media all and (max-width:700px) {
	.com_dot_txt {
		font-size: 16px;
	}
	.policy_etc_ment {
		font-size: 14px;
	}
}
/* END policy */

/* employment */
.employ_complete_box {
	margin: 50px 0;
	padding: 180px 0;
	text-align: center;
	border-top: 1px solid #DEDEDE;
	border-bottom: 1px solid #DEDEDE;
	text-align: center;
	font-size: 48px;
	color: #222;
	font-weight: 400;
	line-height: 1.5em;
}

@media all and (max-width:1024px) {
	.employ_complete_box {
		margin: 40px 0;
		padding: 100px 0;
		font-size: 38px;
	}
}

@media all and (max-width:700px) {
	.employ_complete_box {		
		padding: 60px 0;
		font-size: 20px;
	}
}
/* END employment */

/* notice_read */
.notice_read_box {
	padding: 50px 0;
	margin: 50px 0;
	border-top: 1px solid #DEDEDE;
	border-bottom: 1px solid #DEDEDE;
}
.notice_read_tit {
	font-size: 44px;
	font-weight: 700;
	line-height: 1.5em;
	color: #222;
}
.notice_read_date {
	margin-top: 20px;
	font-size: 24px;
	font-weight: 400;
	color: #FF0707;
	line-height: 1.5em;
}
.notice_read_alt {
	margin: 50px 0;
}

@media all and (max-width:1024px) {
	.notice_read_tit {
		font-size: 34px;
	}
	.notice_read_date {
		font-size: 20px;
	}
}

@media all and (max-width:700px) {
	.notice_read_tit {
		font-size: 24px;
	}
	.notice_read_date {
		font-size: 16px;
	}
	.notice_read_box {
		padding: 40px 0;
		margin: 40px 0;
	}
	.notice_read_alt{
		margin: 40px 0;
	}
}
/* END notice_read */

/* portfolio 추가 */
.port_tab.custom {
	margin: 50px 0;
}
.sub_video_box_wrap {
	position: relative;
}
.sub_video_box {
	position: absolute;
	z-index: 11;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.sub_vis_txt_box {
	z-index: 12;
}
/* END portfolio */


/* 페이저 */
.programPage{margin-top:75px; text-align:center; font-size:0;}
.programPage a{display:inline-block; width:38px; height:38px; line-height:38px; font-size:14px; background:#fff; color:#666; vertical-align:middle; border:1px solid #dadada; border-left:0; box-sizing:border-box;}
.programPage a img{margin-top:13.5px;}
.programPage a.page_first{border-left:1px solid #dadada;}
.programPage a.page_prev{border:0; width:43px; margin-right:24px;}
.programPage a.page_next{border:0; width:43px; margin-left:24px;}
.programPage a:hover{background:#e5e5e5; font-weight:bold;}
.programPage a.active{background:#e5e5e5; font-weight:bold;}
.programPage a.page_prev:hover, .programPage a.page_next:hover{background:inherit;}

.mo_programPage{height:50px; line-height:50px; text-align:center; background:#e5e5e5; margin-top:30px; display:none;}
.mo_programPage a{display:block; width:100%; height:100%; font-size:16px; color:#454545;}
.mo_programPage a span{font-size:14px; padding-left:18px;}

.pager_custom .programPage{padding-bottom:150px;}
.pager_custom .programPage a{font-size:20px; width:50px; height:50px; line-height:50px; color:#666666; border-radius:50%; border:none; font-weight:300; box-sizing:border-box; background:transparent;}
.pager_custom .programPage a.active{font-weight:700; color:#fff; border:1px solid #e3185c; background:#e3185c;}
.pager_custom .programPage a + a{margin-left:6px;}
#wrap .pager_custom .programPage a img{margin-top:0px; max-width:unset;}
.pager_custom .programPage a.page_prev,
.pager_custom .programPage a.page_next{width:auto; height:auto; margin:0 10px}

/* file 추가 */
.com_label_box0001_wrap .com_label_box0001_wrap_sub_box {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
.custom_file_box0001 {
	width: 100%;
}
.com_label_box0001_wrap .com_label_box0001 {
	width: calc(100% - 310px);
	border-radius: 15px;
    overflow: hidden;
    border: 1px solid #dedede;
    background-color: #fff;
    height: 70px;
    padding: 0 20px;
	font-size: 18px;
	font-weight: 400;
	color: #222;
	padding-right: 90px;
	position: relative;
	display: flex;
	align-items: center;
}
.com_label_box0001_wrap .com_label_box0001_wrap_sub_box.add  .com_label_box0001 {
	width: 100%;
}
.com_label_box0001_wrap .com_label_box0001 a {
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
}
.com_label_box0001_wrap .com_label_box0001 a.file_remove_btn0001 {
	right: 54px;
}
.com_label_box0001_wrap .btn_box00001 {
	width: 290px;
	display: flex;
	gap: 10px;
}
.com_label_box0001_wrap input[type="file"] {
	display: none;
}
.com_label_box0001_wrap .btn_box00001 .add_btn0001 {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 18px;
	font-weight: 400;
	color: #222;
	border-radius: 15px;
	border: 1px solid #DEDEDE;
	flex: 1;
}
.com_label_box0001_wrap .btn_box00001 .add_btn0001.type02 {
	border-color: #FF0707;
	color: #FF0707;
}
.com_label_box0001_wrap_sub_box + .com_label_box0001_wrap_sub_box {
	margin-top: 20px;
}
@media all and (max-width:1024px) {
	.com_label_box0001_wrap .com_label_box0001 {
		height: 60px;
	}
	.com_label_box0001_wrap .com_label_box0001,
	.com_label_box0001_wrap .btn_box00001 .add_btn0001 {
		font-size: 16px;
	}

}

@media all and (max-width:700px) {
	.com_label_box0001_wrap .com_label_box0001 {
		height: 50px;
	}
	.com_label_box0001_wrap .com_label_box0001,
	.com_label_box0001_wrap .btn_box00001 .add_btn0001 {
		font-size: 14px;
	}
	.com_label_box0001_wrap .com_label_box0001 {
		width: 100%;
	}
	.com_label_box0001_wrap .com_label_box0001_wrap_sub_box {
		gap: 10px;
	}
	.com_label_box0001_wrap .btn_box00001 {
		width: 190px;
		margin-left: auto;
		height: 50px;
	}
	
}

@media screen and (min-width: 2560px) {
	.history_box dl {
		width: 45%;
		margin: 0 auto;
		margin-top: -10px;
		position: relative;
	}
}
/* END file 추가 */

/* 탭 메뉴 */
.tab-wrap_yo {
  display: flex;
  justify-content: space-between;
  gap: 60px;
  width: 100%;
  margin: 75px auto;
}

.tab_yo {
  flex: 1;
  text-align: center;
  /* padding: 16px 0; */
  border-radius: 20px;
  background: #EEE;
  color: #111;
  font-size: 17px;
  font-weight: 500;
box-shadow: -2px -2px 4px 0px rgba(255, 255, 255, 0.50) inset, 2px 2px 4px 0px rgba(188, 188, 188, 0.25) inset, 5px 5px 10px 0px rgba(188, 188, 188, 0.50) inset, -5px -5px 10px 0px #FFF inset;
  transition: all 0.2s ease-in-out;
  position: relative;
  top: 0;
  cursor: pointer;
  user-select: none;  
  height: 75px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 눌렀을 때 눌리는 시각 효과 */
.tab_yo:active {
  transform: translateY(3px);
}

/* 활성화된 탭 */
.tab_yo:hover,
.tab_yo.active_yo {
  background: #FF0707;
  color: white;
box-shadow: -5px -5px 10px 0px rgba(255, 63, 63, 0.50), 5px 5px 12px 0px rgba(103, 23, 23, 0.50);
  z-index: 2;
transition: all 0.3s ease-in-out;
}

.bbsno {
	font-size: 18px;
	margin: 15px 0;
}

@media all and (max-width: 768px) {
	.tab_yo {
		font-size: 14px;
		height: 60px;
		  border-radius: 15px;
	}
	.tab-wrap_yo {
		gap: 15px;
	}
}

.blog_content_slide .item .blog_slide_tit {
	    font-size: 24px;
    font-weight: 600;
    color: #333;
    overflow: hidden;
    white-space: normal;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}

.insight .blog_hash_box {
	text-align: end;
}

@media all and (max-width: 768px) {

	.insight .blog_hash_box {
	text-align: center;
}
}

/* 20250516 추가 */

@media all and (max-width: 770px) {
	.programCon  .prd_page_nav_wrapper {
		display: none;
	}
}

@media all and (max-width: 768px) {
	.ej_du_wrap.mb_du_jul_yo .ejun_daum_box{
        flex-direction: column;
    }

	.ej_du_wrap.mb_du_jul_yo .ejun_daum_box .pag_bt {
		width: 100%;
	}

	.ej_du_wrap.mb_du_jul_yo .daum_bt a {
		flex-direction: row-reverse;
	}
	.ej_du_wrap.mb_du_jul_yo .ejun_daum_box .daum_bt .pag_txt {
		text-align: unset;
	}
	.ej_du_wrap.mb_du_jul_yo .daum_bt .pag_yo span {
		padding-left: 5px;
	}


}

/* 20250604추가 */

.br_pc_only {
	display: block;
}

.new_txt_yo {
	color: #FFF;
font-family: Pretendard;
font-size: 24px;
font-style: normal;
font-weight: 400;
line-height: 42px; /* 175% */
}
.new_txt_yo.eng_yo {
	color: #D2D2D2;
font-family: Pretendard;
font-size: 18px;
font-style: normal;
font-weight: 400;
line-height: 32px; /* 177.778% */
}



@media all and (max-width: 1800px) {
	.br_pc_only.sub {
	display: none;
}
}

@media all and (max-width: 1024px) {
	.br_pc_only {
	display: none;
}
.content .homepage_sub01_visual .inner .txt_box .txt {
	font-size: 22px;
}
.new_txt_yo {
	font-size: 21px;
}
}


.homepage_sub03 .con_box .txt_box p.moda_p_yo {
	color: #666;
text-align: center;
font-family: "Noto Sans KR";
font-size: 24px;
font-style: normal;
font-weight: 400;
line-height: 31.99px; /* 133.292% */
letter-spacing: -1.08px;
text-shadow: unset;
}
.moda_p_yo b {
	color: #004EA1;
	font-weight: 700;
}

.tit_span_yo {
	color: #C8C8C8;
font-size: 24px;
font-style: normal;
font-weight: 700;
line-height: normal;
letter-spacing: -1.75px;
}