.sub {overflow: hidden; max-width: 100%; background:url(../images/portfolio/tab_bg.png) left top no-repeat; background-size: cover;}
.portfolio_wrap .inner { max-width: 1320px;}
.portfolio_wrap section { line-height: 1.4;}
.portfolio_wrap .sub_tit { margin-bottom: 65px; text-align: center; line-height:1.4;}
.portfolio_wrap .sub_tit strong { font-size: clamp(24px,2.6042vw,50px); font-weight: 700; color:var(--color-text-primary);}
.portfolio_wrap .sub_tit strong span { line-height:1.2;}
.portfolio_wrap  .review_con { text-align: center;}
.portfolio_wrap  .review_con .flex_box { display: flex; align-items: center; gap:0 30px; padding:60px 108px; border-radius: 20px; background: #F9F8FD; box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.10);}
.portfolio_wrap  .review_con .flex_box .img {overflow: hidden; margin-bottom: 24px; border-radius: 10px; border: 2px solid var(--color-black); box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.10);  background-color: var(--color-white);}
.portfolio_wrap .review_con .flex_box .img img {display: block; width: 100%; object-fit: cover;}
.portfolio_wrap .review_con .btn05 { margin-top: 40px; font-size:clamp(17px,1.5625vw,22px);}
.portfolio_wrap .concern_con { display: flex; flex-direction: column; gap:30px;}
.portfolio_wrap .concern_con .item { display: flex; align-items: stretch; gap:0 24px;}
.portfolio_wrap .concern_con .item .lef,
.portfolio_wrap .concern_con .item .rig { display: flex; flex-wrap:wrap; align-items: center; min-height: 250px; width:calc((100% - 72px)/2);}
.portfolio_wrap .concern_con .item .arr { display: flex; align-items: center;}
.portfolio_wrap .concern_con .item .lef { position:relative; z-index:5; padding:40px;border-radius: 20px; border: 2px solid var(--color-black);background: #FAFAFA;}
.portfolio_wrap .concern_con .item .rig { padding:50px 40px;border-radius: 20px;border: 2px solid var(--color-black);background: #E2DAFE;}
.portfolio_wrap .concern_con .item .lef strong { font-size: clamp(18px,1.6667vw,32px); color:var(--color-black); font-weight: 700;}
.portfolio_wrap .concern_con .item .lef p {margin-top: 20px; font-size: clamp(14px,1.0417vw,20px); color:var(--color-text-secondary); line-height: 1.5;}
.portfolio_wrap .concern_con .item .rig strong { font-size: clamp(15px,1.4063vw,27px); color:var(--color-black); font-weight: 500;}
.portfolio_wrap .concern_con .item .rig strong span {display: block; font-size: clamp(18px,1.6667vw,32px); color:#4700FF; font-weight: 700;}
.portfolio_wrap .concern_con .item .rig p {margin-top: 20px; font-size: clamp(14px,1.0417vw,20px); color:var(--color-text-primary); font-weight: 500;}
.portfolio_wrap .concern_con .item .img_box {display: flex; flex-direction: column; align-items: center; margin-top: 30px; padding:20px 0; width:100%; border-radius: 10px; border: 1px solid #DDD; background: var(--color-white); text-align:center;}
.portfolio_wrap .concern_con .item .img_box span {display: inline-block; margin-top: 20px; font-size:clamp(14px,1.25vw,24px); color:var(--color-black); font-weight: 500;}
.portfolio_wrap .concern_con .item .rig .img_box span {font-weight: 700;}

.portfolio_wrap .section01 {  padding:165px 0; background: linear-gradient(360deg, #FFF 0%, #CDC8FF 100%);}
.portfolio_wrap .section01 .vis_txt { margin-bottom: 40px; font-weight: 700; text-align: center;}
.portfolio_wrap .section01 .vis_txt span { display: block; font-size: clamp(18px,1.25vw,24px); color:var(--color-point01);}
.portfolio_wrap .section01 .vis_txt p { margin-top: 24px; font-size: clamp(30px,3.125vw,60px); color:var(--color-text-primary);}
.portfolio_wrap .section01 .fix_tab_menu {overflow:auto; display: flex; justify-content: center; align-items: center; gap:0 22px; position: relative; transition:.5s;}
.portfolio_wrap .section01 .fix_tab_menu.fix { position:fixed; left:0; right:0; top:100px; z-index: 99;}
.portfolio_wrap .section01 .fix_tab_menu::-webkit-scrollbar { width: 4px; height: 4px;}
.portfolio_wrap .section01 .fix_tab_menu::-webkit-scrollbar-track {background: transparent;}
.portfolio_wrap .section01 .fix_tab_menu::-webkit-scrollbar-thumb { background: transparent; border-radius: 10px;}
.portfolio_wrap .section01 .fix_tab_menu::-webkit-scrollbar-thumb:hover {background: rgba(255,255,255,.4);}
.portfolio_wrap .section01 .fix_tab_menu a {display:inline-flex; align-items: center; padding:0 30px; height:60px; border-radius: 60px; border: 2px solid #E1E1E1; background: var(--color-white);}
.portfolio_wrap .section01 .fix_tab_menu a.all { display: none;}
.portfolio_wrap .section01 .fix_tab_menu a span { font-size:clamp(14px,1.1458vw,22px); font-weight:500; color:var(--color-text-secondary);}
.portfolio_wrap .section01 .fix_tab_menu a.active { border-color: var(--color-black); background-color: var(--color-point01);}
.portfolio_wrap .section01 .fix_tab_menu a.active span { color:var(--color-white); font-weight: 700;}
.portfolio_wrap .section01 .review_con { margin-top: 60px; }
.portfolio_wrap .section01_2 { padding-bottom: 160px; background: linear-gradient(180deg, #FFF 0%, rgba(255, 255, 255, 0.00) 50%), linear-gradient(113deg, #D6C7FF 35.13%, #91B1F4 102.57%);}

.portfolio_wrap .section02{background:url(../images/portfolio/sec_bg02.png) center no-repeat; background-size: cover;}
.portfolio_wrap .section03,
.portfolio_wrap .section04,
.portfolio_wrap .section05,
.portfolio_wrap .section06 {background:url(../images/portfolio/sec_bg.png) center no-repeat; background-size: cover;}
.portfolio_wrap .section02_2,
.portfolio_wrap .section03_2,
.portfolio_wrap .section04_2,
.portfolio_wrap .section05_2,
.portfolio_wrap .section06_2 { padding:160px 0; background: linear-gradient(113deg, #D6C7FF 35.13%, #91B1F4 102.57%);}

.portfolio_wrap .section05 .review_con .flex_box .img,
.portfolio_wrap .section06 .review_con .flex_box .img { background-color: var(--color-black);}

.portfolio_wrap .section07 { background:url(../images/portfolio/sec07_bg.jpg) left top no-repeat; background-size: cover;}
.portfolio_wrap .section07 .txt_wrap { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; height:600px; gap:40px;}
.portfolio_wrap .section07 .txt_wrap strong { font-size:clamp(30px,2.8125vw,54px); color:var(--color-text-primary); font-weight:700;}
.portfolio_wrap .section07 .txt_wrap .btn03 {height:80px;}
.portfolio_wrap .section07 .txt_wrap .btn03 span {padding-right: 54px; font-weight: 800;}

/* 반응형 */
@media all and (max-width: 1320px){
    .portfolio_wrap  .inner { max-width: 100%; padding:0 40px; width: 100%;}
    .portfolio_wrap .section01 .fix_tab_menu { gap:16px;}
    .portfolio_wrap .section01 .fix_tab_menu a { height:45px;}
    .portfolio_wrap .section07 .txt_wrap .btn03 { height:60px;}
}
@media all and (max-width: 1024px){
    .sub {background:url(../images/portfolio/mob_bg.png) left top no-repeat; background-size: cover;}

    .portfolio_wrap .section01 .fix_tab_menu { gap:10px; max-width: 100%;}
    .portfolio_wrap .section01 .fix_tab_menu.fix { left:50%; transform: translateX(-50%); width: max-content;}
    .portfolio_wrap .section01 .fix_tab_menu a { flex-shrink: 0;}
    .portfolio_wrap .section01 .fix_tab_menu a.all { display: inline-flex;}
    .portfolio_wrap .review_con .flex_box { padding:20px;}
    .portfolio_wrap .concern_con .item .lef, .sub .concern_con .item .rig{display:flex; flex-direction:column; justify-content:space-between; min-height: auto; padding:16px;}

    .portfolio_wrap .section01 { padding:120px 0 80px; background:none;}
    .portfolio_wrap .section01_2 {background:none;}
    .portfolio_wrap .section02,
    .portfolio_wrap .section03,
    .portfolio_wrap .section04,
    .portfolio_wrap .section05,
    .portfolio_wrap .section06{background:none;}
    .portfolio_wrap .section02_2,
    .portfolio_wrap .section03_2,
    .portfolio_wrap .section04_2,
    .portfolio_wrap .section05_2,
    .portfolio_wrap .section06_2 { padding:80px 0; background:none;}

	.portfolio_wrap .concern_con .item .img_box { padding:10px; margin-top: 20px;}
    
}
@media all and (max-width: 768px){
    .portfolio_wrap .inner { padding:0 20px;}
    .portfolio_wrap .sub_tit { margin-bottom: 40px;}

	.portfolio_wrap .section01_2 { padding-bottom:80px;}

    .portfolio_wrap .review_con .flex_box { flex-direction: column; gap:16px; border-radius: 10px;}
    .portfolio_wrap .review_con .flex_box .arr { transform: rotate(90deg); width: 21px;}
    .portfolio_wrap .review_con .flex_box .img { border-radius: 5px; margin-bottom: 12px;}
    .portfolio_wrap .review_con .btn05 { margin-top: 24px;}
	
	.portfolio_wrap .concern_con{gap:20px;}
	.portfolio_wrap .concern_con .item .lef,
	.portfolio_wrap .concern_con .item .rig {border-radius:10px;}
    .portfolio_wrap .concern_con .item { gap:10px;  word-break:keep-all;}
    .portfolio_wrap .concern_con .item .arr img { height: 16px;}    
    .portfolio_wrap .concern_con .item .lef, .sub .concern_con .item .rig { width:calc((100% - 34px)/2);}
    .portfolio_wrap .concern_con .item .lef strong br:not(.not) { display: none;}
	
	.portfolio_wrap .concern_con .item .lef p,
	.portfolio_wrap .concern_con .item .rig p { margin-top: 12px; word-break:break-all;}
	.portfolio_wrap .concern_con .item .lef p br,
	.portfolio_wrap .concern_con .item .rig p br { display:none;}

    .portfolio_wrap .section01 .vis_txt {margin-bottom: 24px;}
    .portfolio_wrap .section01 .vis_txt p { margin-top: 16px;}
    .portfolio_wrap .section01 .fix_tab_menu {padding:0 20px; justify-content: flex-start;}
    .portfolio_wrap .section01 .fix_tab_menu a { padding:0 20px; height: 36px;}
    .portfolio_wrap .section01 .review_con {margin-top: 40px;}
    
    .portfolio_wrap .section07 { background-image:url(../images/portfolio/msec07_bg.jpg);}
    .portfolio_wrap .section07 .txt_wrap { height:328px;}
    .portfolio_wrap .section07 .txt_wrap .btn03 {height:44px;}
    .portfolio_wrap .section07 .txt_wrap .btn03 span {padding-right: 30px; background-size: 24px auto;}
}
