.sub_bg {
	background: url("../images/design_b/sub_bg01.png")no-repeat 50% 50% / cover;
}

.sub01 {
	max-width: 1620px;
	margin: 0 auto;
}
.sub01_1 {
	padding-bottom: 80px;
}
.sub01_1 .flex {
	justify-content: center;
}
.sub01_1 .flex .thumb {
	width: 500px;
	border-radius: 30px;
	overflow: hidden;
}
.sub01_1 .flex .thumb img {
	width: 100%;
}
.sub01_1 .flex .info {
	width: calc(100% - 530px);
	max-width: 790px;
	margin-left: 30px;
	padding: 50px 40px 0;
	box-sizing: border-box;
}
.sub01_1 .flex .info > p {
	font-size: 24px;
	margin-bottom: 15px;
}
.sub01_1 .flex .info > h3 {
	font-size: 48px;
	color: #0A66C2;
	margin-bottom: 10px;
}
.sub01_1 .flex .info > h3 + div {
	font-size: 20px;
	line-height: 1.5;
}
.sub01_1 .flex .info .sign {
	margin-top: 75px;
	font-weight: 800;
}
.sub01_1 .flex .info .sign p {
	font-size: 20px;
	margin-bottom: 10px;
	font-weight: 600;
}
.sub01_1 .flex .info .sign div span {
	display: inline-block;
	vertical-align: middle;
	font-size: 24px;
	margin-right: 20px;
}
.sub01_1 .flex .info .sign div span.makgeolli {
	font-family: 'Makgeolli';
	font-size: 64px;
}






.sub01_2 .info_form {
	position: relative;
	background: url("../images/sub02_img01.png")no-repeat 50% 50% / cover;
	border-radius: 30px;
	height: 680px;
}
.sub01_2 .info_form .box {
	max-width: 700px;
	position: absolute;
	bottom: 50px;
	right: 50px;
	background: rgba(255, 255, 255, 0.9);
	border-radius: 30px;
	padding: 40px;
	box-sizing: border-box;
}
.sub01_2 .info_form .box > div {
	margin-bottom: 20px;
	font-size: 0;
}
.sub01_2 .info_form .box > div strong {
	display: inline-block;
	vertical-align: middle;
	width: 110px;
	height: 48px;
	line-height: 50px;
	background: #0A66C2;
	border-radius: 10px;
	color: #fff;
	text-align: center;
	font-size: 20px;
	font-weight: 600;
}
.sub01_2 .info_form .box > div span {
	display: inline-block;
	vertical-align: middle;
	width: calc(100% - 130px);
	margin-left: 20px;
	font-size: 20px;
	line-height: 1.5;
}
.sub01_2 .info_form .box > div:last-child {
	margin-bottom: 0;
}
.sub01_2 .info_form .box > div:last-child strong {
	vertical-align: top;
}

.sub01_2 .road_map {
	margin-top: 250px;
}
.sub01_2 .road_map .roadmap-icon {
	position: relative;
	display: block;
    width: 122px; 
    height: 60px; 
	line-height: 62px;
    position: relative;
	background: #FFFFFF;
	border: 1px solid #232323;
	border-radius: 10px;
	font-size: 20px;
	font-weight: 800;
	text-align: center;
}
.sub01_2 .road_map .roadmap-slider:before {
    content: ""; 
    position: absolute; 
    top: 95px; 
    left: 0; 
    width: 100%; 
    border-bottom: 1px dashed #151515;
}
.sub01_2 .road_map .roadmap-content {
	position: relative;
    padding-top: 95px;
}
.sub01_2 .road_map .roadmap-content ul li {
    padding-bottom: 35px; 
    position: relative;
}
.sub01_2 .road_map .roadmap-content ul li:last-child {
    padding-bottom: 0;
}
.sub01_2 .road_map .roadmap-content ul li:before {
    content: ""; 
    position: absolute; 
    top: 18px; 
    left: -23px; 
    width: 2px; 
    height: 100%; 
    border-left: 1px dashed;
}
.sub01_2 .road_map .roadmap-content ul li p {
    font-size: 20px;
}
.sub01_2 .road_map .roadmap-content ul li p span {
	display: inline-block;
    font-size: 16px;
}
.sub01_2 .road_map .roadmap-content ul li:last-child:before {
    content: unset;
}
.sub01_2 .road_map .phase-title:before {
    content: ""; 
    position: absolute; 
    top: 1px; 
    left: -30px; 
    width: 15px; 
    height: 15px; 
    border: 1px solid; 
    background: #232323;
}
.sub01_2 .road_map .roadmap-content:before {
    content: ""; 
    position: absolute; 
    top: 33px;
    left: 11px;
    width: 2px; 
    height: 50px; 
    border-left: 1px dashed;
}
.sub01_2 .road_map .roadmap .patter {
    position: absolute; 
    top: 0; 
    left: 0; 
    opacity: 0.02;
}
.sub01_2 .road_map .roadmap .patter-2 {
    top: unset; 
    left: unset; 
    right: 0; 
    bottom: 0;
}
.sub01_2 .road_map .roadmap-icon:before {
    content: '';
    display: block;
    width: 22px;
    height: 22px;
    border: 2px solid #0A66C2;
    border-radius: 50%;
    box-sizing: border-box;
    position: absolute;
    bottom: -45px;
    left: -1px;
    background: #fff;
	z-index: 1;
}
.sub01_2 .road_map .roadmap-icon:after {
	content: '';
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    box-sizing: border-box;
    position: absolute;
    bottom: -40px;
    left: 4px;
    background: #0A66C2;
	z-index: 1;
}
.sub01_2 .road_map .phase-title:after {
    background: #fff;
}
.sub01_2 .road_map .roadmap-content:before {
    border-color: #151515;
}







.sub01_3 .tree {
	position: relative;
	max-width: 1660px;
	margin: 0 auto;
}
.sub01_3 .tree:after {
	content: '';
	display: block;
	height: 457px;
	border-right: 1px dashed #151515;
	position: absolute;
	left: 50%;
	top: 30px;
    z-index: -1;
}
.sub01_3 .tree .top > div {
	position: relative;
	width: calc(50% - 100px);
	text-align: center;
	box-sizing: border-box;
}
.sub01_3 .tree .top > div > div span {
	display: block;
	width: 200px;
	font-size: 20px;
	padding: 20px 0;
	border-radius: 10px;
	color: #fff;
	margin-bottom: 50px;
}
.sub01_3 .tree .top > div.left {
	text-align: left;
	padding-left: 70px;
}
.sub01_3 .tree .top > div.left:after {
	content: '';
	display: block;
	width: 100%;
	border-bottom: 1px dashed #151515;
	position: absolute;
	left: 25%;
	top: 30px;
    z-index: -1;
}
.sub01_3 .tree .top > div.left > div {
	position: relative;
}
.sub01_3 .tree .top > div.left > div span {
	background: #333F50;
	text-align: center;
}
.sub01_3 .tree .top > div.left > div:after {
    content: '';
    display: block;
    width: calc(50% - -70px);
    border-bottom: 1px dashed #151515;
    position: absolute;
    left: 0;
    top: 30px;
    z-index: -1;
}
.sub01_3 .tree .top > div.left > div:first-child:after {
	display: none;
}
.sub01_3 .tree .top > div.mid {
	width: 200px;
}
.sub01_3 .tree .top > div.mid .gray_btn span {
	background: #616B75;
}
.sub01_3 .tree .top > div.mid .blue_btn span {
	background: #1765B0;
}
.sub01_3 .tree .top > div.right {
	text-align: right;
	overflow: hidden;
	padding-right: 70px;
}
.sub01_3 .tree .top > div.right:after {
	content: '';
	display: block;
	width: 100%;
	border-bottom: 1px dashed #151515;
	position: absolute;
	left: -25%;
	top: 30px;
    z-index: -1;
}
.sub01_3 .tree .top > div.right > div:first-child:after {
	display: none;
}
.sub01_3 .tree .top > div.right > div span {
	background: #385723;
	float: right;
	text-align: center;
}
.sub01_3 .tree .depth1 {
	justify-content: center;
}
.sub01_3 .tree .depth1 .round_btn {
	position: relative;
	width: 180px;
	height: 180px;
	border-radius: 50%;
	background: #007CFB;
	color: #fff;
	text-align: center;
	font-size: 20px;
	margin-bottom: 50px;
}
.sub01_3 .tree .depth1 .round_btn span {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	transform: translateY(-50%);
	line-height: 1.5;
}
.sub01_3 .tree .depth3 > div {
	width: 50%!important;
}
.sub01_3 .tree .depth3 > div.left:after {
    width: 75%;
}
.sub01_3 .tree .depth3 > div.right:after {
    width: 75%;
	left: 0;
}
/*
.sub01_3 .tree .bottom:after {
	content: '';
	display: block;
	height: calc(100% - 100px);
	border-right: 1px dashed #151515;
	position: absolute;
	left: 50%;
	top: 30px;
    z-index: -1;
}*/
.sub01_3 .tree .bottom .purple_btn span {
	display: block;
	width: 200px;
	font-size: 20px;
	padding: 20px 0;
	border-radius: 10px;
	background: #5758AA;
	color: #fff;
	text-align: center;
	margin: 0 auto;
}
.sub01_3 .tree .bottom .flex {
	position: relative;
	margin-top: 50px;
	padding: 0 1px;
}
.sub01_3 .tree .bottom .flex:before {
    content: '';
    display: block;
    height: calc(100% - 165px);
    border-right: 1px dashed #151515;
    position: absolute;
    left: 50%;
    top: -85px;
    z-index: -1;
}
.sub01_3 .tree .bottom .flex > div {
	position: relative;
	flex: 1;
}
.sub01_3 .tree .bottom .flex > div:after {
    content: '';
    display: block;
    width: 100%;
    border-bottom: 1px dashed #151515;
    position: absolute;
    left: 50%;
    top: 0;
    z-index: -1;
}
.sub01_3 .tree .bottom .flex > div:last-child:after {
	display: none;
}
.sub01_3 .tree .bottom .flex > div span {
    display: block;
    background: #FFFFFF;
    border: 1px solid #0A66C2;
    border-radius: 10px;
    width: 68px;
    height: 200px;
    padding: 45px 25px;
    box-sizing: border-box;
    margin: 50px auto 0;
	line-height: 1.5;
}
.sub01_3 .tree .bottom .flex > div:before {
	content: '';
	display: block;
	height: 50px;
	border-right: 1px dashed #151515;
	position: absolute;
	top: 0;
	left: 50%;
	z-index: -1;
}

.sub01_3.y_bu .tree:after {
	height: 460px;
}







.design_b .sub01_1 {
	margin-bottom: -120px;
}
.design_b .sub01_1 .flex .info {
    max-width: 805px;
}
.design_b .sub01_1 .flex .info > h3 {
	color: #000;
}

.design_b .sub01_2 .info_form .box > div strong {
	background: #FF7700;
}
.design_b .sub01_2 .road_map .roadmap-icon:before {
	border: 2px solid #FF7700;
}
.design_b .sub01_2 .road_map .roadmap-icon:after {
	background: #FF7700;
}


.design_b .sub01_3 .tree .top > div.mid .gray_btn span,
.design_b .sub01_3 .tree .top > div.left > div span,
.design_b .sub01_3 .tree .top > div.right > div span {
	background: #fff;
	color: #FC4C02;
	border: 1px solid #FC4C02;
	border-radius: 100px;
}
.design_b .sub01_3 .tree .top > div.mid .blue_btn span {
	background: #FC4C02;
	color: #fff;
	border-radius: 100px;
}
.design_b .sub01_3 .tree .bottom .purple_btn span {
	background: #999;
	color: #fff;
	border-radius: 100px;
}
.design_b .sub01_3 .tree .bottom .flex > div span {
	background: #e7e7e7;
	color: #151515;
	border: 1px solid #e7e7e7;
	border-radius: 100px;
}








@media screen and (max-width: 1600px) {
}
@media screen and (max-width: 1400px) {
}
@media screen and (max-width: 1280px) {
	.sub01_1 .flex .thumb {
		width: 450px;
	}
	.sub01_1 .flex .info {
		width: calc(100% - 465px);
		margin-left: 15px;
	}
	.sub01_1 .flex .info .sign {
		margin-top: 65px;
	}
	.sub01_1 .flex .info > p {
		font-size: 20px;
	}
	.sub01_1 .flex .info > h3 {
		font-size: 35px;
	}
	.sub01_1 .flex .info > h3 + div {
		font-size: 16px;
	}
	.sub01_1 .flex .info .sign p {
		font-size: 18px;
	}
	.sub01_1 .flex .info .sign div span {
		font-size: 20px;
	}
	.sub01_1 .flex .info .sign div span.makgeolli {
		font-size: 55px;
	}
	
	
	
	.design_b .sub01_1 {
		margin-bottom: -80px;
	}
}
@media screen and (max-width: 1024px) {
	.sub01_1 {
		padding-bottom: 40px;
	}
	.sub01_1 .flex {
		align-items: center;
	}
	.sub01_1 .flex .thumb {
		border-radius: 20px;
		max-width: 350px;
		width: 100%;
	}
	.sub01_1 .flex .info {
		width: calc(100% - 365px);
		padding: 30px 0px 0 20px;
	}
	.sub01_1 .flex .info > p {
		font-size: 16px;
		margin-bottom: 10px;
	}
	.sub01_1 .flex .info > h3 {
		font-size: 20px;
	}
	.sub01_1 .flex .info > h3 + div {
		font-size: 14px;
	}
	.sub01_1 .flex .info .sign {
		margin-top: 40px;
	}
	.sub01_1 .flex .info .sign p {
		font-size: 16px;
	}
	.sub01_1 .flex .info .sign div span {
		font-size: 16px;
	}
	.sub01_1 .flex .info .sign div span.makgeolli {
		font-size: 45px;
	}
	.sub01_1 .flex .info .sign div span img {
		width: 100px;
	}
	
	
	
	
	.sub01_2 .info_form {
		height: auto;
		background: none;
	}
	.sub01_2 .info_form:before {
		content: '';
		display: block;
		width: 100%;
		height: 200px;
		background: url("../images/sub02_img01.png")no-repeat 50% 50% / cover;
		border-radius: 30px;
		margin-bottom: 30px;
	}
	.sub01_2 .info_form .box {
		position: static;
		max-width: 100%;
		padding: 0;
	}
	.sub01_2 .info_form .box > div {
		margin-bottom: 10px;
	}
	.sub01_2 .info_form .box > div strong {
		width: 89px;
		height: 40px;
		line-height: 40px;
		font-size: 14px;
	}
	.sub01_2 .info_form .box > div span {
		font-size: 14px;
	}
	
	
	.sub01_2 .road_map {
		margin-top: 80px;
	}
	.sub01_2 .road_map .roadmap-icon {
		width: 114px;
		height: 60px;
		line-height: 65px;
		font-size: 16px;
	}
	.sub01_2 .road_map .roadmap-content ul li p {
		font-size: 14px;
	}
	
	
	
	.sub01_3 .tree:after {
	    height: 280px;
	}
	.sub01_3 .tree .top > div {
		width: calc(50% - 45px);
	}
	.sub01_3 .tree .top > div > div span {
		width: 90px;
		padding: 7px 0;
		font-size: 14px;
		margin-bottom: 30px;
	}
	.sub01_3 .tree .top > div.left {
		padding-left: 20px;
	}
	.sub01_3 .tree .top > div.left:before {
		height: calc(100% - 63px);
		left: calc(50% - -55px);
		top: 15px;
	}
	.sub01_3 .tree .top > div.left:after {
		top: 15px;
	}
	.sub01_3 .tree .top > div.left > div:after {
		top: 15px;
		width: calc(50% - -45px);
	}
	.sub01_3 .tree .top > div.mid {
		width: 90px;
	}
	.sub01_3 .tree .top > div.right {
		padding-right: 20px;
	}
	.sub01_3 .tree .top > div.right:after {
		top: 15px;
	}
	.sub01_3 .tree .depth1 .round_btn {
		width: 90px;
		height: 90px;
		font-size: 14px;
		margin-bottom: 30px;
	}
	
	.sub01_3 .tree .bottom:after {
		height: calc(100% - 170px);
	}
	.sub01_3 .tree .bottom .flex {
		margin-top: 20px;
		padding: 0 2px;
	}
	.sub01_3 .tree .bottom .flex:before {
	    height: calc(100% - 106px);
	    top: -35px;
	}
	.sub01_3 .tree .bottom .purple_btn span {
		width: 90px;
		padding: 7px 0;
		font-size: 14px;
	}
	.sub01_3 .tree .bottom .flex > div span {
		font-size: 14px;
		width: 33px;
		height: 120px;
		padding: 20px 9px;
		margin-top: 20px;
	}
	.sub01_3 .tree .bottom .flex > div:before {
		height: 20px;
	}
	.sub01_3.y_bu .tree:after {
	    height: 230px;
	}
	
	
	
	.design_b .sub01_1 {
		margin-bottom: -40px;
	}
}
@media screen and (max-width: 768px) {
	.sub01_1 .flex .thumb {
		width: 100%;
	}
	.sub01_1 .flex .info {
		width: 100%;
		max-width: 100%;
		margin-left: 0;
		padding: 30px 0 0;
	}
	
	
}
@media screen and (max-width: 380px) {
	.sub01_3 .tree {
		margin: 0 -20px;
		width: 100vw;
	}
	.sub01_3 .tree .top > div.left {
		padding-left: 1%;
	}
	.sub01_3 .tree .top > div.left:before {
		left: calc(50% - -45px);
	}
	.sub01_3 .tree .top > div.right {
		padding-right: 1%;
	}
}
