@charset "utf-8";
/* 사용 color 수정 */
:root {
    --primary: #ff9d00;
    --primary-hover: #ffba4c;
    --secandary: #fffaf1;
}

/* GNB 메뉴 줄내림 방지 */
.header .gnb li a {
    white-space: nowrap;
}

.sourcing .inner {max-width: 112rem; padding: 12rem 2.5rem 12rem 2.5rem; }
.sourcing .inner .sectionTit {margin-bottom: 6rem; text-align: center;}
.sourcing .inner .graysubTit {margin-bottom: 6rem; text-align: center;}
.sourcing .inner .smartBox {display: grid; grid-gap: 1.2rem; grid-template-columns: repeat(2, 1fr);}
.sourcing .inner .smartBox > div {position: relative; padding: 2.4rem; padding-left: 12rem; box-shadow: 0 0.8rem 2.4rem rgba(78,78,78,0.12);border-radius: 2rem; background: #fff no-repeat center left 2.4rem / 7.6rem;}
.sourcing .inner .smartBox > div .smartTit {margin-bottom: 1.4rem; font-size: 2.4rem; font-weight: bold;}
.sourcing .inner .smartBox > div span {color: #667085; font-size: 1.5rem;}
.sourcing .inner .smartBox > div svg {position: absolute; left: 2.4rem; top: 50%; transform: translateY(-50%);}
.sourcing .inner .smartBox > div svg rect {fill: var(--secandary);}
.sourcing .inner .smartBox > div svg path {stroke: var(--primary);}

@media screen and (max-width: 767px) {
    .sectionTit .pointColor {
        display: inline-block;
    }
    .sourcing .inner {
        padding-top: 8rem;
        padding-bottom: 8rem;
    }
    .sourcing .inner .sectionTit {
        margin-bottom: 4rem;
    }
    .sourcing.bgGray .inner .sectionTit {
        font-size: 22px;
    }
}

/* 데스크톱에서 메뉴 간격 조정 */
@media screen and (min-width: 1024px) {
    .header .gnb li {
        margin-right: 12px;
        margin-left: 0;
    }
    
    .header .gnb li:last-child {
        margin-right: 0;
    }
    
    /* 긴 메뉴명을 위한 폰트 크기 조정 (선택사항) */
    .header .gnb li a {
        font-size: 14px;
        padding: 8px 6px;
    }
}

/* 컨텐츠 그리드 레이아웃 */
.contentGrid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

/* provide 섹션의 contentGrid는 2열로 */
.provide .contentGrid {
    gap: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.provide .contentGrid .cotentBoxRight {
    display: flex;
    gap: 40px;
    align-items: center;
}

.provide .contentGrid .contentBox.tax  {
    padding-top: 120px;
}

.provide .contentGrid .contentBox.line {
    font-size: 3rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding-top: 100px;
}


.contentBox.line ul li {
    display: flex;
    gap: 0.8rem;
    padding-left: 0;
    font-size: 28px;
    height: 55px;
}

.contentBox.line ul li .circleLine {
    color: #000;
    line-height: 50px;
}


.contentGridWork {
    display: grid;
    grid-template-rows: 1fr auto 1fr;
    gap: 40px;
    align-items: stretch;
    justify-items: stretch;
    margin-top: 40px;
}

@media screen and (max-width: 1023px) {
    .contentGrid {
        grid-template-columns: 1fr;
    }

    .contentGridWork {
        grid-template-rows: 1fr auto 1fr;
        gap: 20px;
        margin-top: 30px;
    }
    
    .contentGridWork .contentCard {
        grid-template-columns: 1fr;
        gap: 15px;
        padding: 20px 15px;
    }
    
    .contentGridWork .contentCard h4 {
        grid-column: 1;
        margin-bottom: 20px;
        font-size: 20px;
    }
    
    .contentGridWork .contentCard2 {
        grid-template-columns: 1fr;
        gap: 15px;
        padding: 20px 15px;
    }
    
    .contentGridWork .contentCard2 h4 {
        grid-column: 1;
        margin-bottom: 20px;
        font-size: 20px;
    }
    
    .contentGridWork .contentCard .workSection,
    .contentGridWork .contentCard2 .workSection {
        min-height: auto;
        padding: 15px;
    }
    
    .contentGridWork .contentCard .workSection h5,
    .contentGridWork .contentCard2 .workSection h5 {
        font-size: 15px;
        padding: 8px 15px;
        margin-bottom: 12px;
        min-width: auto;
        max-width: 100%;
        width: auto;
    }
    
    .contentGridWork .contentCard .workSection ul,
    .contentGridWork .contentCard2 .workSection ul {
        font-size: 14px;
    }
    
    .contentGridWork .contentCard .workSection ul li,
    .contentGridWork .contentCard2 .workSection ul li {
        font-size: 13px;
        padding: 4px 0;
    }
    
    .contentGridWork .workPlus {
        font-size: 30px;
        margin: 10px 0;
    }
    
    .contentBox {
        padding: 30px 20px;
    }
    
    .contentBox h4 {
        font-size: 22px;
        margin-bottom: 25px;
    }
    
    .contentBox ul li {
        font-size: 16px;
    }

    .provide .inner {
        padding: 80px 25px;
    }

    .provide .contentGrid {
        gap: 20px;
    }
    
    .provide .contentBox ul li {
        font-size: 14px;
    }

    .provide .contentBox:first-child ul li {
        padding-left: 0;
    }

    .provide .contentGrid .contentBox.line, .provide .contentGrid .contentBox.tax {
        padding-top: 40px;
    }
    .provide .contentGrid .contentBox.line ul li {
        height: 46px;
    }
    .provide .contentBox.line ul li .circleLine {
        line-height: 25px;
    }
}

@media screen and (max-width: 767px) {
    .contentGridWork {
        gap: 15px;
        margin-top: 20px;
        grid-template-rows: auto auto auto;
    }
    
    .contentGridWork .contentCard,
    .contentGridWork .contentCard2 {
        padding: 15px 10px;
        gap: 12px;
        grid-template-columns: 1fr !important;
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }
    
    .contentGridWork .contentCard h4,
    .contentGridWork .contentCard2 h4 {
        font-size: 18px;
        margin-bottom: 15px;
        grid-column: 1 !important;
    }
    
    .contentGridWork .contentCard .workSection,
    .contentGridWork .contentCard2 .workSection {
        padding: 12px;
        min-height: auto;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }
    
    .contentGridWork .contentCard .workSection h5,
    .contentGridWork .contentCard2 .workSection h5 {
        font-size: 14px;
        padding: 6px 12px;
        margin-bottom: 10px;
        width: auto;
        max-width: 100%;
    }
    
    .contentGridWork .contentCard .workSection ul,
    .contentGridWork .contentCard2 .workSection ul {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }
    
    .contentGridWork .contentCard .workSection ul li,
    .contentGridWork .contentCard2 .workSection ul li {
        font-size: 12px;
        line-height: 1.6;
        word-break: keep-all;
        overflow-wrap: break-word;
    }
    
    .contentGridWork .workPlus {
        font-size: 24px;
        margin: 8px 0;
    }

    .provide .inner {
        padding-left: 25px;
        padding-right: 25px;
    }
    .provide .contentBox ul li {
        padding-left: 0;
        font-size: 9px;
    }
    .provide .contentGrid .contentBox.line ul li {
        height: 35px;
    }
    .provide .contentBox.line ul li .circleLine {
        line-height: 12px;
    }
    .provide .contentGrid .contentBox.line, .provide .contentGrid .contentBox.tax {
        /* padding-top: 37px; */
    }
}

@media screen and (max-width: 420px ) {
    .provide .contentGrid {
        flex-wrap: wrap;
        display: flex;
        flex-direction: column;
    }
    .provide .contentGrid .cotentBoxRight {
        gap: 10px;
    }
    .provide .contentGrid .contentBox.line, .provide .contentGrid .contentBox.tax {
        padding-top: 0;
    }
}


/* 컨텐츠 카드 스타일 */
.contentCard {
    background: #fff;
    padding: 30px 20px;
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

.contentCard h4 {
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 20px;
    color: var(--primary);
    text-align: center;
}

.contentCard h5 {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
    color: #1D2939;
}

.contentCard ul {
    list-style: none;
    padding: 0;
    line-height: 2;
}

.contentCard ul li {
    color: #1D2939;
    font-size: 15px;
}

.contentCard .workSection {
    margin-bottom: 0;
}

.contentCard .workSection:last-child {
    margin-bottom: 0;
}

.contentGridWork .contentCard {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    row-gap: 0;
    align-items: stretch;
    height: 100%;
    min-height: 0;
    align-self: stretch;
}

.contentGridWork .contentCard2 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    align-items: stretch;
    height: 100%;
    min-height: 0;
    align-self: stretch;
}

.contentGridWork .contentCard h4 {
    grid-column: 1 / -1;
    margin-bottom: 30px;
    text-align: center;
}

.contentGridWork .contentCard .workSection {
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
    height: 100%;
    min-height: 200px;
}

.contentGridWork .contentCard .workSection h5 {
    text-align: center;
    margin-bottom: 15px;
    font-weight: bold;
    color: #1D2939;
}

.contentGridWork .contentCard .workSection ul {
    text-align: center;
    display: inline-block;
    margin: 0 auto;
}

.contentGridWork .contentCard .workSection ul li {
    text-align: left;
}

.contentGridWork .contentCard2 h4 {
    grid-column: 1 / -1;
    margin-bottom: 30px;
    text-align: center;
}

.contentGridWork .contentCard2 .workSection {
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
    height: 100%;
    min-height: 200px;
}

.contentGridWork .contentCard2 .workSection h5 {
    text-align: center;
    margin-bottom: 15px;
    padding: 10px 20px;
    background: var(--primary);
    color: #fff;
    border-radius: 25px;
    display: inline-block;
    font-weight: bold;
    font-size: 16px;
    white-space: nowrap;
    min-width: 120px;
    width: 100%;
    max-width: 150px;
    box-sizing: border-box;
}

.contentGridWork .contentCard2 .workSection ul {
    text-align: center;
    display: inline-block;
    margin: 0 auto;
}

.contentGridWork .contentCard2 .workSection ul li {
    text-align: left;
}

.sourcing.business .contentGridWork .contentCard h4 {
    margin-bottom: 0;
}

/* outsourcing_semo.html 전용 visual 섹션 */
.visualOutsourcing {
    position: relative;
    width: 100%;
    height: 25rem;
    overflow: hidden;
    margin-top: 5rem;
}

.visualOutsourcing .thumbnail {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.visualOutsourcing .thumbnail.outsourcingBg {
    background-image: url('../images/testimg3.png');
    background-size: cover;
    background-position: center;
}

.visualOutsourcing .inner {
    max-width: 112rem;
    padding: 12rem 2.5rem 12rem 2.5rem;
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    z-index: 1;
    box-sizing: border-box;
}

/* visualOutsourcing 텍스트 색상 - 흰색 */
.visualOutsourcing .txtArea {
    color: #fff;
    padding-bottom: 3rem;
    
}

.visualOutsourcing .txtArea h2 {
    font-size: 3rem;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}

.pointColor {
    color: var(--primary);
}

/* visualOutsourcing 버튼 - 주황색 */
.visualOutsourcing .headingBtn {
    background-color: var(--primary);
    color: #fff;
}

.visualOutsourcing .headingBtn:hover {
    background-color: var(--primary-hover);
}

/* 태블릿 */
@media screen and (min-width: 768px) and (max-width: 1023px) {
    .visualOutsourcing {
        height: 400px;
    }
    
    .visualOutsourcing .inner {
        padding: 6rem 2rem;
    }
    
    .visualOutsourcing .txtArea h2 {
        font-size: 2.8rem;
    }
}

/* 데스크톱 */
@media screen and (min-width: 1024px) {
    .visualOutsourcing {
        height: 500px;
    }
}

/* 반응형 - 모바일 */
@media screen and (max-width: 767px) {
    .visualOutsourcing {
        height: 300px;
        min-height: 300px;
    }
    
    .visualOutsourcing .inner {
        padding: 3rem 1.5rem !important;
        align-items: center;
        justify-content: center;
    }
    
    .visualOutsourcing .txtArea {
        padding-bottom: 20px;
        text-align: left;
    }
    
    .visualOutsourcing .txtArea h2 {
        font-size: 1.8rem;
        line-height: 1.4;
    }
    
    .visualOutsourcing .txtArea h2 p {
        margin: 0.5rem 0;
    }
    
    .visualOutsourcing .headingBtn {
        font-size: 14px;
        padding: 12px 24px;
        transform: scale(0.9);
    }
    
    .visualOutsourcing .headingBtn .rightIcon {
        width: 24px;
        height: 18px;
    }
    
    .visualOutsourcing .headingBtn .rightIcon svg {
        width: 24px;
        height: 18px;
    }
    
    .visualOutsourcing .visualTop {
        width: 100%;
    }
    
    .visualOutsourcing .left {
        width: 100%;
        text-align: center;
    }
}

/* 컨텐츠 박스 스타일 */
.contentBox {
    margin-top: 0;
    background: #fff;
    padding: 60px 0;
}

.contentBox .inner {
    max-width: 112rem;
    margin: 0 auto;
    padding: 12rem 2.5rem 12rem 2.5rem;
}

.contentBox.bgGray {
    background: #f5f5f5;
}

.contentBox .sectionTit {
    font-size: 3.2rem;
    font-weight: bold;
    color: #1D2939;
    margin-bottom: 30px;
    line-height: 1;
    text-align: center;
}

.contentBox .contentText {
    text-align: center;
    margin-bottom: 10rem;
}

.contentBox h4 {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 30px;
    color: #1D2939;
    padding-bottom: 15px;
    border-bottom: 3px solid var(--primary);
    position: relative;
}

.contentBox h4::after {
    content: '';
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 60px;
    height: 3px;
    background: var(--primary);
}

.contentBox ul {
    list-style: none;
    padding: 0;
    line-height: 2.2;
}

.contentBox ul li {
    color: #1D2939;
    font-size: 18px;
    padding: 8px 0;
    padding-left: 30px;
    position: relative;
    transition: color 0.3s ease;
}

/* 반응형 */
@media screen and (max-width: 1023px) {
    .contentBox {
        padding: 0;
    }
    .contentBox .contentText {
        margin-bottom: 5rem;
    }
    .contentBox .inner .sectionTit:first-child {
        margin-bottom: 0;
    }
    .contentBox .inner .sectionTit {
        line-height: 1.5;
    }
}
@media screen and (max-width: 767px) {
    .contentBox .inner .sectionTit {
        font-size: 2rem;
    }
}

/* 업무영역 플러스 기호 */
.workPlus {
    font-size: 40px;
    font-weight: bold;
    color: var(--primary);
    text-align: center;
}

/* 테이블 스타일 */
.contentTable {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    margin-top: 5px;
}

.contentTable thead tr {
    background: var(--primary);
    color: #fff;
}

.contentTable th {
    padding: 15px 20px 15px 2ch;
    border: 1px solid #ddd;
    font-weight: bold;
    text-align: center;
    font-size: 12px;
}

.contentTable th.textCenter {
    text-align: center;
}

.contentTable tbody tr {
    background: #fff;
}

.contentTable tbody tr:nth-child(even) {
    background: #f9f9f9;
}


.contentTable td {
    padding: 15px;
    border: 1px solid #ddd;
    color: #1D2939;
    font-size: 12px;
}

.contentTable td.textCenter {
    text-align: center;
}

.contentTable td.highlight {
    color: var(--primary);
    font-weight: bold;
}

/* 테이블 컨테이너 */
.tableContainer {
    margin-top: 40px;
    overflow-x: auto;
}

/* 하이라이트 텍스트 */
.highlightText {
    margin-top: 20px;
    font-size: 20px;
    font-weight: bold;
    color: var(--primary);
    text-align: center;
}

/* 장점 그리드 */
.advantageGrid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-top: 40px;
}

.advantageGrid h4 {
    font-size: 20px;
    font-weight: bold;
    margin-bottom: 10px;
    color: #1D2939;
    text-align: left;
}

.advantageGrid p {
    color: #1D2939;
    line-height: 1.8;
    text-align: left;
    font-size: 14px;
}

@media screen and (max-width: 767px) {
    .advantageGrid {
        grid-template-columns: 1fr;
    }
    .contentTable th, .contentTable td {
        padding: 4px;
        word-break: break-all;
    }
}


/* 유튜브 박스 스타일 - Corporation_semo.html용 */
.corporation-page .videoWrapper .ytbox01,
.corporation-page .videoWrapper .ytbox02,
.corporation-page .videoWrapper .ytbox03,
.corporation-page .videoWrapper .ytbox04,
.corporation-page .videoWrapper .ytbox05,
.corporation-page .videoWrapper .ytbox06,
.corporation-page .videoWrapper .ytbox07,
.corporation-page .videoWrapper .ytbox08 {
    width: 100%;
    margin: 0;
    float: none;
}

.corporation-page .videoWrapper .ytbox01 img,
.corporation-page .videoWrapper .ytbox02 img,
.corporation-page .videoWrapper .ytbox03 img,
.corporation-page .videoWrapper .ytbox04 img,
.corporation-page .videoWrapper .ytbox05 img,
.corporation-page .videoWrapper .ytbox06 img,
.corporation-page .videoWrapper .ytbox07 img,
.corporation-page .videoWrapper .ytbox08 img {
    width: 100%;
    height: auto;
    display: block;
}

/* 유튜브 버튼 스타일 - Corporation_semo.html용 */
.corporation-page .videoWrapper .button,
.corporation-page .videoWrapper .button02,
.corporation-page .videoWrapper .button03,
.corporation-page .videoWrapper .button04,
.corporation-page .videoWrapper .button05,
.corporation-page .videoWrapper .button06,
.corporation-page .videoWrapper .button07,
.corporation-page .videoWrapper .button08 {
    display: block;
    width: 100%;
    text-decoration: none;
    text-align: center;
    transition: all 0.3s ease;
}

.corporation-page .videoWrapper .button:hover,
.corporation-page .videoWrapper .button02:hover,
.corporation-page .videoWrapper .button03:hover,
.corporation-page .videoWrapper .button04:hover,
.corporation-page .videoWrapper .button05:hover,
.corporation-page .videoWrapper .button06:hover,
.corporation-page .videoWrapper .button07:hover,
.corporation-page .videoWrapper .button08:hover {
    opacity: 0.8;
}

/* 유튜브 버튼 텍스트 스타일 - Corporation_semo.html용 */
.corporation-page .videoWrapper .btn_txt,
.corporation-page .videoWrapper .btn_txt02,
.corporation-page .videoWrapper .btn_txt03,
.corporation-page .videoWrapper .btn_txt04,
.corporation-page .videoWrapper .btn_txt05,
.corporation-page .videoWrapper .btn_txt06,
.corporation-page .videoWrapper .btn_txt07,
.corporation-page .videoWrapper .btn_txt08 {
    display: inline-block;
    margin-top: 10px;
    padding: 8px 16px;
    background-color: #f5f5f5;
    color: #5A5C5F;
    font-size: 14px;
    font-weight: normal;
    line-height: 1.4;
    border-radius: 4px;
    transition: all 0.3s ease;
}

.corporation-page .videoWrapper .button:hover .btn_txt,
.corporation-page .videoWrapper .button02:hover .btn_txt02,
.corporation-page .videoWrapper .button03:hover .btn_txt03,
.corporation-page .videoWrapper .button04:hover .btn_txt04,
.corporation-page .videoWrapper .button05:hover .btn_txt05,
.corporation-page .videoWrapper .button06:hover .btn_txt06,
.corporation-page .videoWrapper .button07:hover .btn_txt07,
.corporation-page .videoWrapper .button08:hover .btn_txt08 {
    background-color: var(--primary);
    color: #fff;
}

/* 반응형 - 태블릿 - Corporation_semo.html용 */
@media screen and (max-width: 1023px) {
    .corporation-page .videoWrapper {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }
    
    .corporation-page .videoWrapper .btn_txt,
    .corporation-page .videoWrapper .btn_txt02,
    .corporation-page .videoWrapper .btn_txt03,
    .corporation-page .videoWrapper .btn_txt04,
    .corporation-page .videoWrapper .btn_txt05,
    .corporation-page .videoWrapper .btn_txt06,
    .corporation-page .videoWrapper .btn_txt07,
    .corporation-page .videoWrapper .btn_txt08 {
        font-size: 13px;
        padding: 7px 14px;
    }
}

/* 반응형 - 모바일 - Corporation_semo.html용 */
@media screen and (max-width: 767px) {
    .corporation-page .videoWrapper {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .corporation-page .videoWrapper .btn_txt,
    .corporation-page .videoWrapper .btn_txt02,
    .corporation-page .videoWrapper .btn_txt03,
    .corporation-page .videoWrapper .btn_txt04,
    .corporation-page .videoWrapper .btn_txt05,
    .corporation-page .videoWrapper .btn_txt06,
    .corporation-page .videoWrapper .btn_txt07,
    .corporation-page .videoWrapper .btn_txt08 {
        font-size: 12px;
        padding: 6px 12px;
    }
}

/* visualConsulting 스타일 */
.visualConsulting {
    position: relative;
    width: 100%;
    height: 250px;
    overflow: hidden;
    margin-top: 5rem;
}

.visualConsulting .thumbnail {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.visualConsulting .thumbnail.consultingBg {
    background-image: url('../images/testimg5.png');
    background-size: cover;
    background-position: center;
    max-height: 40rem;
}

.visualConsulting .inner {
    max-width: 112rem;
    max-height: 40rem;
    padding: 12rem 2.5rem 12rem 2.5rem;
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    box-sizing: border-box;
}

/* visualConsulting 텍스트 색상 - 흰색 */
.visualConsulting .txtArea {
    color: #fff;
}

.visualConsulting .txtArea h2 {
    font-size: 3.5rem;
}

/* visualConsulting 버튼 - 주황색 */
.visualConsulting .headingBtn {
    background-color: var(--primary);
    color: #fff;
}

.visualConsulting .headingBtn:hover {
    background-color: var(--primary-hover);
}

/* 태블릿 */
@media screen and (min-width: 768px) and (max-width: 1023px) {
    .visualConsulting {
        height: 400px;
    }
    
    .visualConsulting .inner {
        padding: 6rem 2rem;
    }
    
    .visualConsulting .txtArea h2 {
        font-size: 2.8rem;
    }
}

/* 데스크톱 */
@media screen and (min-width: 1024px) {
    .visualConsulting {
        height: 500px;
    }
}

/* 반응형 - 모바일 */
@media screen and (max-width: 767px) {
    .visualConsulting {
        height: 300px;
        min-height: 300px;
    }
    
    .visualConsulting .inner {
        padding: 3rem 1.5rem !important;
        align-items: center;
        justify-content: center;
    }
    
    .visualConsulting .txtArea {
        text-align: left;
        padding-bottom: 0;
    }
    
    .visualConsulting .txtArea h2 {
        font-size: 1.8rem;
        line-height: 1.4;
    }
    
    .visualConsulting .txtArea h2 p {
        margin: 0.5rem 0;
    }
    
    .visualConsulting .headingBtn {
        font-size: 14px;
        padding: 12px 24px;
        transform: scale(0.9);
    }
    
    .visualConsulting .visualTop {
        width: 100%;
    }
    
    .visualConsulting .left {
        width: 100%;
        text-align: center;
    }
}

/* visualCorporation 스타일 */
.visualCorporation {
    position: relative;
    width: 100%;
    height: 250px;
    overflow: hidden;
    margin-top: 5rem;
}

.visualCorporation .thumbnail {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.visualCorporation .thumbnail.corporationBg {
    background-image: url('../images/testimg6.png');
    background-size: cover;
    background-position: center;
}

.visualCorporation .inner {
    max-width: 112rem;
    padding: 12rem 2.5rem 12rem 2.5rem;
    position: relative;
    height: 100%;
    display: flex;
    align-items: center;
    z-index: 1;
    box-sizing: border-box;
}

/* visualCorporation 텍스트 색상 - 흰색 */
.visualCorporation .txtArea {
    color: #fff;
    padding-bottom: 30px;
}

.visualCorporation .txtArea h2 {
    font-size: 3rem;
}

/* visualCorporation 버튼 - 주황색 */
.visualCorporation .headingBtn {
    background-color: var(--primary);
    color: #fff;
}

.visualCorporation .headingBtn:hover {
    background-color: var(--primary-hover);
}

/* 태블릿 */
@media screen and (min-width: 768px) and (max-width: 1023px) {
    .visualCorporation {
        height: 400px;
    }
    
    .visualCorporation .inner {
        padding: 6rem 2rem;
    }
    
    .visualCorporation .txtArea h2 {
        font-size: 2.8rem;
    }
}

/* 데스크톱 */
@media screen and (min-width: 1024px) {
    .visualCorporation {
        height: 500px;
    }
}

/* 컨텐츠 텍스트 스타일 */
.contentText {
    font-size: 16px;
    line-height: 1.8;
    color: #333;
    margin-top: 20px;
    margin-bottom: 30px;
}

/* 법인컨설팅 유형 스타일 */
.consultingType {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    margin-top: 40px;
}

.typeCategory {
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.typeTitle {
    font-size: 24px;
    font-weight: bold;
    color: var(--primary);
    margin-bottom: 20px;
    text-align: center;
}

.typeItems {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}

.typeItem {
    background: var(--secandary);
    padding: 15px;
    border-radius: 8px;
    text-align: center;
    font-size: 16px;
    color: #333;
    transition: all 0.3s ease;
}

.typeItem:hover {
    background: var(--primary);
    color: #fff;
    transform: translateY(-3px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

/* 반응형 - 태블릿 */
@media screen and (max-width: 1023px) {
    .consultingType {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .typeItems {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* 반응형 - 모바일 */
@media screen and (max-width: 767px) {
    .visualCorporation {
        height: 300px;
        min-height: 300px;
    }
    
    .visualCorporation .inner {
        padding: 3rem 1.5rem !important;
        align-items: center;
        justify-content: center;
    }
    
    .visualCorporation .txtArea {
        padding-bottom: 20px;
        text-align: left;
    }
    
    .visualCorporation .txtArea h2 {
        font-size: 1.8rem;
        line-height: 1.4;
    }
    
    .visualCorporation .txtArea h2 p {
        margin: 0.5rem 0;
    }
    
    .visualCorporation .headingBtn {
        font-size: 14px;
        padding: 12px 24px;
        transform: scale(0.9);
    }
    
    .visualCorporation .visualTop {
        width: 100%;
    }
    
    .visualCorporation .left {
        width: 100%;
        text-align: center;
    }
    
    .contentText {
        font-size: 14px;
    }
    
    .typeCategory {
        padding: 20px;
    }
    
    .typeTitle {
        font-size: 20px;
    }
    
    .typeItems {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    
    .typeItem {
        padding: 12px;
        font-size: 14px;
    }
}

/* 레이어 팝업 스타일 - Corporation_semo.html에만 적용 */
.corporation-page #layer01,
.corporation-page #layer02,
.corporation-page #layer03,
.corporation-page #layer04,
.corporation-page #layer05,
.corporation-page #layer06,
.corporation-page #layer07,
.corporation-page #layer08 {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 600px;
    padding: 30px;
    background: rgba(255, 255, 255, 0.95);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
    border: 1px solid #dadada;
    border-radius: 8px;
    z-index: 1001;
}

.corporation-page #layer01:target,
.corporation-page #layer02:target,
.corporation-page #layer03:target,
.corporation-page #layer04:target,
.corporation-page #layer05:target,
.corporation-page #layer06:target,
.corporation-page #layer07:target,
.corporation-page #layer08:target {
    display: block;
}

.corporation-page #layer01 .inner01,
.corporation-page #layer02 .inner02,
.corporation-page #layer03 .inner03,
.corporation-page #layer04 .inner04,
.corporation-page #layer05 .inner05,
.corporation-page #layer06 .inner06,
.corporation-page #layer07 .inner07,
.corporation-page #layer08 .inner08 {
    position: relative;
}

.corporation-page #layer01 .cont01,
.corporation-page #layer02 .cont02,
.corporation-page #layer03 .cont03,
.corporation-page #layer04 .cont04,
.corporation-page #layer05 .cont05,
.corporation-page #layer06 .cont06,
.corporation-page #layer07 .cont07,
.corporation-page #layer08 .cont08 {
    position: relative;
    width: 100%;
    max-width: 560px;
    margin: 0 auto;
    padding-bottom: 56.25%; /* 16:9 비율 */
    height: 0;
    overflow: hidden;
}

.corporation-page #layer01 .cont01 iframe,
.corporation-page #layer02 .cont02 iframe,
.corporation-page #layer03 .cont03 iframe,
.corporation-page #layer04 .cont04 iframe,
.corporation-page #layer05 .cont05 iframe,
.corporation-page #layer06 .cont06 iframe,
.corporation-page #layer07 .cont07 iframe,
.corporation-page #layer08 .cont08 iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
}

.corporation-page #layer01 #player01,
.corporation-page #layer02 #player02,
.corporation-page #layer03 #player03,
.corporation-page #layer04 #player04,
.corporation-page #layer05 #player05,
.corporation-page #layer06 #player06,
.corporation-page #layer07 #player07,
.corporation-page #layer08 #player08 {
    display: block;
    width: 100%;
    height: 100%;
}

.corporation-page #layer01 .inner01 .close01,
.corporation-page #layer02 .inner02 .close02,
.corporation-page #layer03 .inner03 .close03,
.corporation-page #layer04 .inner04 .close04,
.corporation-page #layer05 .inner05 .close05,
.corporation-page #layer06 .inner06 .close06,
.corporation-page #layer07 .inner07 .close07,
.corporation-page #layer08 .inner08 .close08 {
    position: absolute;
    top: -40px;
    right: 0;
    display: block;
    width: 35px;
    height: 35px;
    background: rgba(0, 0, 0, 0.8);
    color: #fff;
    text-align: center;
    line-height: 35px;
    text-decoration: none;
    border-radius: 50%;
    font-size: 0;
    font-weight: bold;
    transition: all 0.3s ease;
    z-index: 1002;
    cursor: pointer;
    overflow: hidden;
}

.corporation-page #layer01 .inner01 .close01::before,
.corporation-page #layer02 .inner02 .close02::before,
.corporation-page #layer03 .inner03 .close03::before,
.corporation-page #layer04 .inner04 .close04::before,
.corporation-page #layer05 .inner05 .close05::before,
.corporation-page #layer06 .inner06 .close06::before,
.corporation-page #layer07 .inner07 .close07::before,
.corporation-page #layer08 .inner08 .close08::before {
    content: '×';
    display: block;
    font-size: 28px;
    line-height: 35px;
    color: #fff;
}

.corporation-page #layer01 .inner01 .close01:hover,
.corporation-page #layer02 .inner02 .close02:hover,
.corporation-page #layer03 .inner03 .close03:hover,
.corporation-page #layer04 .inner04 .close04:hover,
.corporation-page #layer05 .inner05 .close05:hover,
.corporation-page #layer06 .inner06 .close06:hover,
.corporation-page #layer07 .inner07 .close07:hover,
.corporation-page #layer08 .inner08 .close08:hover {
    background: rgba(255, 0, 0, 0.8);
    transform: scale(1.1) rotate(90deg);
}

.corporation-page .dim01,
.corporation-page .dim02,
.corporation-page .dim03,
.corporation-page .dim04,
.corporation-page .dim05,
.corporation-page .dim06,
.corporation-page .dim07,
.corporation-page .dim08 {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1000;
}

.corporation-page #layer01:target ~ .dim01,
.corporation-page #layer02:target ~ .dim02,
.corporation-page #layer03:target ~ .dim03,
.corporation-page #layer04:target ~ .dim04,
.corporation-page #layer05:target ~ .dim05,
.corporation-page #layer06:target ~ .dim06,
.corporation-page #layer07:target ~ .dim07,
.corporation-page #layer08:target ~ .dim08 {
    display: block;
}

/* 레이어 팝업 반응형 - 태블릿 */
@media screen and (max-width: 1023px) {
    .corporation-page #layer01,
    .corporation-page #layer02,
    .corporation-page #layer03,
    .corporation-page #layer04,
    .corporation-page #layer05,
    .corporation-page #layer06,
    .corporation-page #layer07,
    .corporation-page #layer08 {
        width: 85%;
        padding: 20px;
    }
}

/* 레이어 팝업 반응형 - 모바일 */
@media screen and (max-width: 767px) {
    .corporation-page #layer01,
    .corporation-page #layer02,
    .corporation-page #layer03,
    .corporation-page #layer04,
    .corporation-page #layer05,
    .corporation-page #layer06,
    .corporation-page #layer07,
    .corporation-page #layer08 {
        width: 95%;
        padding: 15px;
    }
    
    .corporation-page #layer01 .inner01 .close01,
    .corporation-page #layer02 .inner02 .close02,
    .corporation-page #layer03 .inner03 .close03,
    .corporation-page #layer04 .inner04 .close04,
    .corporation-page #layer05 .inner05 .close05,
    .corporation-page #layer06 .inner06 .close06,
    .corporation-page #layer07 .inner07 .close07,
    .corporation-page #layer08 .inner08 .close08 {
        top: -30px;
        width: 30px;
        height: 30px;
        line-height: 30px;
    }
    
    .corporation-page #layer01 .inner01 .close01::before,
    .corporation-page #layer02 .inner02 .close02::before,
    .corporation-page #layer03 .inner03 .close03::before,
    .corporation-page #layer04 .inner04 .close04::before,
    .corporation-page #layer05 .inner05 .close05::before,
    .corporation-page #layer06 .inner06 .close06::before,
    .corporation-page #layer07 .inner07 .close07::before,
    .corporation-page #layer08 .inner08 .close08::before {
        font-size: 24px;
        line-height: 30px;
    }
}

/* 유튜브 섹션 스타일 - outsourcing_semo.html용 */
.yt_cection {
    background: #fff;
    width: 100%;
    padding: 60px 0;
    text-align: center;
}

.yttxt {
    font-size: 2.8rem;
    font-weight: bold;
    color: #1D2939;
    margin-bottom: 40px;
    padding-top: 0;
}

.ytbox {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2.5rem;
}

.ytbox iframe {
    width: 100%;
    max-width: 738px;
    height: 415px;
    border: none;
    display: block;
    margin: 0 auto;
}

/* 유튜브 섹션 스타일 - Corporation_semo.html용 */
.corporation-page .content_1 {
    background: #fff;
    width: 100%;
    padding: 60px 0 20px 0;
    text-align: center;
}

.corporation-page .mid_txt {
    max-width: 112rem;
    margin: 0 auto;
    padding: 0 2.5rem;
}

.corporation-page .youtube_txt_1 {
    font-size: 2.8rem;
    font-weight: bold;
    color: #1D2939;
    margin: 0;
    padding: 0;
}

.corporation-page .content_2 {
    background: #fff;
    width: 100%;
    padding: 0 0 60px 0;
    margin: 0 auto;
    max-width: 100%;
}

.corporation-page .content_2.cf::after {
    content: "";
    display: block;
    clear: both;
}

.corporation-page .yt_content {
    margin: 0 auto;
    position: relative;
    margin-top: 30px;
    max-width: 1200px;
    padding: 0 2.5rem;
}

.corporation-page .yt_content::after {
    content: "";
    display: block;
    clear: both;
}

.corporation-page .ytbox01,
.corporation-page .ytbox02,
.corporation-page .ytbox03,
.corporation-page .ytbox04,
.corporation-page .ytbox05,
.corporation-page .ytbox06,
.corporation-page .ytbox07,
.corporation-page .ytbox08 {
    float: left;
    margin: 5px;
    width: calc(25% - 10px);
    min-width: 200px;
    position: relative;
    box-sizing: border-box;
}

.corporation-page .ytbox01 img,
.corporation-page .ytbox02 img,
.corporation-page .ytbox03 img,
.corporation-page .ytbox04 img,
.corporation-page .ytbox05 img,
.corporation-page .ytbox06 img,
.corporation-page .ytbox07 img,
.corporation-page .ytbox08 img {
    width: 100%;
    height: auto;
    display: block;
}

/* Corporation_semo.html 버튼 스타일 */
.corporation-page .button,
.corporation-page .button02,
.corporation-page .button03,
.corporation-page .button04,
.corporation-page .button05,
.corporation-page .button06,
.corporation-page .button07,
.corporation-page .button08 {
    display: inline-block;
    height: auto;
    color: #000;
    text-decoration: none;
    text-align: center;
    width: 100%;
}

.corporation-page .button img,
.corporation-page .button02 img,
.corporation-page .button03 img,
.corporation-page .button04 img,
.corporation-page .button05 img,
.corporation-page .button06 img,
.corporation-page .button07 img,
.corporation-page .button08 img {
    width: 100%;
    height: auto;
    display: block;
}

.corporation-page .button .btn_txt,
.corporation-page .button02 .btn_txt02,
.corporation-page .button03 .btn_txt03,
.corporation-page .button04 .btn_txt04,
.corporation-page .button05 .btn_txt05,
.corporation-page .button06 .btn_txt06,
.corporation-page .button07 .btn_txt07,
.corporation-page .button08 .btn_txt08 {
    color: #5A5C5F;
    font-size: 14px;
    line-height: 1.4;
    display: inline-block;
    margin-top: 10px;
    padding: 8px 16px;
    background-color: #f5f5f5;
    border-radius: 4px;
    transition: all 0.3s ease;
}

.corporation-page .button:hover .btn_txt,
.corporation-page .button02:hover .btn_txt02,
.corporation-page .button03:hover .btn_txt03,
.corporation-page .button04:hover .btn_txt04,
.corporation-page .button05:hover .btn_txt05,
.corporation-page .button06:hover .btn_txt06,
.corporation-page .button07:hover .btn_txt07,
.corporation-page .button08:hover .btn_txt08 {
    background-color: var(--primary);
    color: #fff;
}

/* Corporation_semo.html 반응형 */
@media screen and (max-width: 1023px) {
    .corporation-page .ytbox01,
    .corporation-page .ytbox02,
    .corporation-page .ytbox03,
    .corporation-page .ytbox04,
    .corporation-page .ytbox05,
    .corporation-page .ytbox06,
    .corporation-page .ytbox07,
    .corporation-page .ytbox08 {
        width: calc(50% - 10px);
    }
    
    .corporation-page .youtube_txt_1 {
        font-size: 2.2rem;
    }
}

@media screen and (max-width: 767px) {
    .corporation-page .yt_content {
        padding: 0 1.5rem;
    }
    
    .corporation-page .ytbox01,
    .corporation-page .ytbox02,
    .corporation-page .ytbox03,
    .corporation-page .ytbox04,
    .corporation-page .ytbox05,
    .corporation-page .ytbox06,
    .corporation-page .ytbox07,
    .corporation-page .ytbox08 {
        width: 100%;
        min-width: auto;
        margin: 5px 0;
    }
    
    .corporation-page .youtube_txt_1 {
        font-size: 1.8rem;
    }
    
    .corporation-page .button .btn_txt,
    .corporation-page .button02 .btn_txt02,
    .corporation-page .button03 .btn_txt03,
    .corporation-page .button04 .btn_txt04,
    .corporation-page .button05 .btn_txt05,
    .corporation-page .button06 .btn_txt06,
    .corporation-page .button07 .btn_txt07,
    .corporation-page .button08 .btn_txt08 {
        font-size: 12px;
        padding: 6px 12px;
    }
}

/* 반응형 - 태블릿 */
@media screen and (max-width: 1023px) {
    .yt_cection {
        padding: 40px 0;
    }
    
    .yttxt {
        font-size: 2.2rem;
        margin-bottom: 30px;
    }
    
    .ytbox iframe {
        height: 350px;
    }
}

/* 반응형 - 모바일 */
@media screen and (max-width: 767px) {
    .yt_cection {
        padding: 30px 0;
    }
    
    .yttxt {
        font-size: 1.8rem;
        margin-bottom: 20px;
        padding: 0 2.5rem;
    }
    
    .ytbox {
        position: relative;
        height:0; padding-bottom: 56.25%; margin: 40px 0px;
        padding-left: 0;
        padding-right: 0;
    }
    
    .ytbox iframe {
        /* position: absolute; */
        /* height: 100%; */
        position: absolute; width:100%; height:100%;
    }
}

/* 푸터 상단 영역 */
.footerTop {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* 상담 폼 스타일 - consulting_semo.html */
.consulting_section .inner {
    max-width: 112rem;
    padding: 8rem 2.5rem 8rem 2.5rem;
}

.consulting_section .sub_txt1 {
    margin: 30px 0;
    margin-bottom: 6rem;
    text-align: center;
}

.consulting_section .txt_1 {
    font-size: 1.8rem;
    font-weight: bold;
    color: #323438;
}

.consulting_section .imp {
    color: red;
}

.consulting_section .btn_content {
    max-width: 1200px;
    margin: 0 auto 50px;
}

.consulting_section .consultation_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.consulting_section .cheklist1,
.consulting_section .cheklist2,
.consulting_section .cheklist3,
.consulting_section .cheklist5,
.consulting_section .cheklist6 {
    padding: 20px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: #fff;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-height: 80px;
}

.consulting_section .cheklist3,
.consulting_section .cheklist6 {
    grid-column: 1 / -1;
}

.consulting_section .cheklist1:hover,
.consulting_section .cheklist2:hover,
.consulting_section .cheklist3:hover,
.consulting_section .cheklist5:hover,
.consulting_section .cheklist6:hover {
    border-color: #0090ff;
    background-color: #f0f8ff;
}

.consulting_section .cheklist1:has(.list_radio:checked),
.consulting_section .cheklist2:has(.list_radio:checked),
.consulting_section .cheklist3:has(.list_radio:checked),
.consulting_section .cheklist5:has(.list_radio:checked),
.consulting_section .cheklist6:has(.list_radio:checked) {
    border: 1px solid #0090ff;
    background-color: #f0f8ff;
}

.consulting_section .list_radio {
    margin: 0;
    width: 16px;
    height: 16px;
    cursor: pointer;
    flex-shrink: 0;
    margin-top: 2px;
    accent-color: #0090ff;
    display: block !important;
    appearance: auto;
    -webkit-appearance: radio;
    -moz-appearance: radio;
    opacity: 1 !important;
    visibility: visible !important;
}

.consulting_section .cheklist1 label,
.consulting_section .cheklist2 label,
.consulting_section .cheklist3 label,
.consulting_section .cheklist5 label,
.consulting_section .cheklist6 label {
    display: flex;
    flex-direction: column;
    cursor: pointer;
    flex: 1;
    gap: 5px;
}

.consulting_section .btnbox,
.consulting_section .btnbox06 {
    font-weight: bold;
    font-size: 16px;
    color: #323438;
    margin: 0;
}

.consulting_section .cheklist1:has(.list_radio:checked) .btnbox,
.consulting_section .cheklist2:has(.list_radio:checked) .btnbox,
.consulting_section .cheklist3:has(.list_radio:checked) .btnbox,
.consulting_section .cheklist5:has(.list_radio:checked) .btnbox06,
.consulting_section .cheklist6:has(.list_radio:checked) .btnbox {
    color: #0090ff;
}

.consulting_section .list_txt {
    padding: 0;
    margin: 0;
    font-size: 13px;
    color: #666;
    line-height: 1.5;
}

.consulting_section .boxbtn07 {
    width: 100%;
    padding: 10px;
    margin-top: 10px;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 14px;
    box-sizing: border-box;
}

.consulting_section .boxbtn07:focus {
    outline: none;
    border-color: #0090ff;
}

/* sub_txt2 input 필드 스타일 - 라디오 박스와 동일한 사이즈 */
.consulting_section .sub_txt2 {
    max-width: 1200px;
    margin: 0 auto 50px;
}

.consulting_section .input_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-bottom: 30px;
}

.consulting_section .input_item {
    padding: 20px;
    border: 1px solid #ddd;
    border-radius: 8px;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-height: 80px;
}

.consulting_section .input_item .subbox_txt {
    font-size: 16px;
    font-weight: bold;
    color: #323438;
    margin: 0;
}

.consulting_section .input_item .price,
.consulting_section .input_item .job,
.consulting_section .input_item .phone,
.consulting_section .input_item .name,
.consulting_section .input_item .mail {
    width: 100%;
    padding: 12px;
    border: 1px solid #ddd;
    border-radius: 5px;
    font-size: 14px;
    box-sizing: border-box;
    height: auto;
    max-width: 100%;
}

.consulting_section .input_item .price:focus,
.consulting_section .input_item .job:focus,
.consulting_section .input_item .phone:focus,
.consulting_section .input_item .name:focus,
.consulting_section .input_item .mail:focus {
    outline: none;
    border-color: #0090ff;
}

.consulting_section .subbox0 {
    margin-top: 30px;
}

.consulting_section .subbox4 {
    text-align: center;
}

.consulting_section .txt_2 {
    margin: 25px 0 15px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #323438;
    text-align: left;
    padding-left: 2rem;
}

.consulting_section .question {
    margin: 0 auto;
    border: 1px solid #ddd;
    border-radius: 5px;
    width: 100%;
    /* max-width: 600px; */
    height: 120px;
    padding: 15px;
    font-size: 14px;
    color: #000;
    text-align: left;
    resize: none;
    box-sizing: border-box;
    font-family: 'Noto Sans KR', sans-serif;
}

.consulting_section .question:focus {
    border-color: #0090ff;
}

.consulting_section .btn {
    text-align: center;
    margin: 30px 0;
    max-width: 1200px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.consulting_section .counsel_btn {
    width: 100%;
    max-width: 250px;
    padding: 16px 12px;
    border: 1px solid var(--primary);
    border-radius: 8px;
    background-color: var(--primary);
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.3s ease;
    box-sizing: border-box;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.consulting_section .counsel_btn:hover {
    background-color: var(--primary-hover);
    border-color: var(--primary-hover);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* 반응형 - 태블릿 */
@media screen and (max-width: 1023px) {
    .consulting_section .input_grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
}

/* 반응형 - 모바일 */
@media screen and (max-width: 767px) {
    .consulting_section .input_grid {
        gap: 12px;
    }
    
    .consulting_section .input_item {
        padding: 15px;
        min-height: 70px;
    }
    
    .consulting_section .input_item .subbox_txt {
        font-size: 14px;
    }

    .consulting_section .txt_2 {
        font-size: 14px;
    }
    
    .consulting_section .input_item .price,
    .consulting_section .input_item .job,
    .consulting_section .input_item .phone,
    .consulting_section .input_item .name,
    .consulting_section .input_item .mail {
        font-size: 13px;
        padding: 10px;
    }
    
    .consulting_section .counsel_btn {
        padding: 15px;
        min-height: 70px;
        font-size: 16px;
    }
}

/* 반응형 - 태블릿 */
@media screen and (max-width: 1023px) {
    .consulting_section .consultation_grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .consulting_section .cheklist3,
    .consulting_section .cheklist6 {
        grid-column: 1;
    }
}

/* 반응형 - 모바일 */
@media screen and (max-width: 767px) {
    .consulting_section .consultation_grid {
        gap: 12px;
    }
    
    .consulting_section .cheklist1,
    .consulting_section .cheklist2, 
    .consulting_section .cheklist3,
    .consulting_section .cheklist5,
    .consulting_section .cheklist6 {
        padding: 15px;
        min-height: 70px;
    }
    
    .consulting_section .btnbox,
    .consulting_section .btnbox06 {
        font-size: 14px;
    }
    
    .consulting_section .list_txt {
        font-size: 12px;
    }
}

/* 상담 폼 스타일 - consulting_semo.php */
.contentBox .sub_txt1 {
    margin: 30px 0;
    text-align: center;
}

.contentBox .txt_1 {
    font-size: 1.8rem;
    font-weight: bold;
    color: #323438;
}

.contentBox .imp {
    color: red;
}

.contentBox .btn_content {
    max-width: 1200px;
    margin: 0 auto 50px;
    display: flex;
    gap: 30px;
    align-items: flex-start;
}

.contentBox .consultation_left {
    width: 200px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.contentBox .category_btn {
    width: 100%;
    padding: 15px 20px;
    border: 1px solid #999;
    border-radius: 5px;
    background-color: #F9F9F9;
    color: #323438;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.contentBox .category_btn:hover {
    background-color: #e8e8e8;
    border-color: #666;
}

.contentBox .category_btn.active {
    background-color: lightsteelblue;
    border-color: #0090ff;
    color: #0090ff;
}

.contentBox .consultation_right {
    flex: 1;
    min-width: 0;
}

.contentBox .option_panel {
    display: none;
}

.contentBox .option_panel.active {
    display: block;
}

.contentBox .option_panel .option_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.contentBox .option_panel .cheklist1,
.contentBox .option_panel .cheklist2,
.contentBox .option_panel .cheklist3,
.contentBox .option_panel .cheklist4,
.contentBox .option_panel .cheklist5,
.contentBox .option_panel .cheklist6 {
    margin-bottom: 0;
}

.contentBox .option_panel .option_grid .cheklist3,
.contentBox .option_panel .option_grid .cheklist5,
.contentBox .option_panel .option_grid .cheklist6 {
    grid-column: 1 / -1;
}

.contentBox .option_panel .list_txt ul {
    list-style: none;
    padding: 0;
    margin: 5px 0 0 0;
}

.contentBox .option_panel .list_txt li {
    padding: 2px 0;
    font-size: 13px;
    color: #666;
}

.contentBox .cheklist4 .txtbox04 {
    display: none;
}

.contentBox .btn_content::after {
    content: "";
    display: block;
    clear: both;
}

.contentBox .cheklist1,
.contentBox .cheklist2,
.contentBox .cheklist3,
.contentBox .cheklist4,
.contentBox .cheklist5,
.contentBox .cheklist6 {
    padding: 15px;
    border: 1px solid #999;
    border-radius: 5px;
    background-color: #F9F9F9;
    text-align: left;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    min-height: 70px;
    display: flex;
    align-items: center;
}

.contentBox .cheklist1:hover,
.contentBox .cheklist2:hover,
.contentBox .cheklist3:hover,
.contentBox .cheklist4:hover,
.contentBox .cheklist5:hover,
.contentBox .cheklist6:hover {
    background-color: lightsteelblue;
    border: 1px solid #0090ff;
}

.contentBox .list_radio:checked + label .btnbox,
.contentBox .list_radio:checked + label .btnbox04,
.contentBox .list_radio:checked + label .btnbox06 {
    color: #0090ff;
}

.contentBox .cheklist1:has(.list_radio:checked),
.contentBox .cheklist2:has(.list_radio:checked),
.contentBox .cheklist3:has(.list_radio:checked),
.contentBox .cheklist4:has(.list_radio:checked),
.contentBox .cheklist5:has(.list_radio:checked),
.contentBox .cheklist6:has(.list_radio:checked) {
    background-color: lightsteelblue;
    border: 1px solid #0090ff;
}

/* 라디오 버튼 선택 시 텍스트 색상 변경 */
.contentBox .cheklist1:has(.list_radio:checked) .btnbox,
.contentBox .cheklist2:has(.list_radio:checked) .btnbox,
.contentBox .cheklist3:has(.list_radio:checked) .btnbox,
.contentBox .cheklist5:has(.list_radio:checked) .btnbox06,
.contentBox .cheklist6:has(.list_radio:checked) .btnbox {
    color: #0090ff;
}

.contentBox .list_radio {
    margin: 0 10px 0 0;
    vertical-align: middle;
    cursor: pointer;
    flex-shrink: 0;
}

.contentBox .cheklist1 label,
.contentBox .cheklist2 label,
.contentBox .cheklist3 label,
.contentBox .cheklist5 label,
.contentBox .cheklist6 label {
    display: flex;
    flex-direction: column;
    cursor: pointer;
    width: 100%;
}

.contentBox .btnbox,
.contentBox .btnbox04,
.contentBox .btnbox06 {
    font-weight: bold;
    font-size: 16px;
    color: #323438;
    margin-bottom: 5px;
}

.contentBox .list_txt {
    padding: 0;
    margin: 0;
    font-size: 13px;
    color: #666;
    line-height: 1.4;
    cursor: pointer;
}

.contentBox .txtbox04 {
    font-weight: bold;
    font-size: 16px;
    color: #323438;
    margin-bottom: 10px;
}


.contentBox .cheklist6 label {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.contentBox .boxbtn07 {
    margin-top: 10px;
    border: 1px solid #000;
    border-radius: 5px;
    width: 100%;
    padding: 8px;
    font-size: 14px;
    box-sizing: border-box;
}

.contentBox .sub_txt2 {
    margin: 0 auto;
    max-width: 1200px;
}

.contentBox .subbox_,
.contentBox .subbox {
    margin: 0 auto 30px;
    max-width: 100%;
}

.contentBox .subbox2,
.contentBox .subbox1 {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
}

.contentBox .subbox_txt {
    font-size: 16px;
    font-weight: bold;
    color: #323438;
    display: block;
    margin-bottom: 8px;
    width: 100%;
}

.contentBox .price,
.contentBox .job,
.contentBox .phone,
.contentBox .name,
.contentBox .mail {
    border: 1px solid #999;
    border-radius: 5px;
    width: 100%;
    max-width: 300px;
    height: 40px;
    padding: 0 15px;
    font-size: 14px;
    color: #000;
    box-sizing: border-box;
}

.contentBox .subbox0 {
    margin: 0 auto;
    max-width: 1200px;
}

.contentBox .subbox4 {
    text-align: center;
}

.contentBox .txt_2 {
    margin: 25px 0 15px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #323438;
}

.contentBox .question {
    margin: 0 auto;
    border: 1px solid #999;
    border-radius: 5px;
    width: 100%;
    max-width: 600px;
    height: 120px;
    padding: 15px;
    font-size: 14px;
    color: #000;
    text-align: left;
    resize: vertical;
    box-sizing: border-box;
    font-family: 'Noto Sans KR', sans-serif;
}

.contentBox .btn {
    text-align: center;
    margin: 30px 0;
}

.contentBox .counsel_btn {
    width: 100%;
    max-width: 400px;
    height: 50px;
    font-size: 18px;
    color: #fff;
    background-color: var(--primary);
    border: 0;
    border-radius: 5px;
    font-weight: bold;
    cursor: pointer;
    transition: all 0.3s ease;
}

.contentBox .counsel_btn:hover {
    background-color: var(--primary-hover);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* 반응형 - 태블릿 */
@media screen and (max-width: 1023px) {
    .contentBox .btn_content {
        flex-direction: column;
        gap: 20px;
    }
    
    .contentBox .consultation_left {
        width: 100%;
        flex-direction: row;
        flex-wrap: wrap;
    }
    
    .contentBox .category_btn {
        flex: 1;
        min-width: 120px;
    }
    
    .contentBox .option_panel .option_grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .contentBox .option_panel .option_grid .cheklist3,
    .contentBox .option_panel .option_grid .cheklist5,
    .contentBox .option_panel .option_grid .cheklist6 {
        grid-column: 1;
    }
    
    .contentBox .subbox2,
    .contentBox .subbox1 {
        flex-direction: column;
        align-items: center;
    }
    
    .contentBox .price,
    .contentBox .job,
    .contentBox .phone,
    .contentBox .name,
    .contentBox .mail {
        max-width: 100%;
    }
}

/* 반응형 - 모바일 */
@media screen and (max-width: 767px) {
    .contentBox .txt_1,
    .contentBox .txt_2 {
        font-size: 1.5rem;
    }
    
    .contentBox .btn_content {
        gap: 12px;
    }
    
    .contentBox .cheklist1,
    .contentBox .cheklist2,
    .contentBox .cheklist3,
    .contentBox .cheklist4,
    .contentBox .cheklist5,
    .contentBox .cheklist6 {
        padding: 12px;
    }
    
    .contentBox .list_txt {
        padding: 5px 0 0 20px;
        font-size: 12px;
    }
    
    .contentBox .counsel_btn {
        max-width: 100%;
        font-size: 16px;
    }
}

/* index.html */
@media screen and (max-width: 767px) {
    .provide .inner .provideReport {
        overflow: hidden;
    }
}


/* 세무대행 서비스 */
.service .inner {
    padding: 10rem 4rem;
}
.service .inner .serviceBox {
    background-color: #fff;
    padding: 50px;
}
.service .inner .serviceBox .serviceList > li .label, .service .inner .serviceBox .serviceList > li .desc {
    font-size: 18px;
}

@media screen and (max-width: 767px) {
    .service .inner {
        padding-left: 25px;
        padding-right: 25px;
    }
    .service .inner .serviceBox {
        padding: 20px;
        box-shadow: 0 0.8rem 2.4rem rgba(0, 0, 0, 0.08);
    }
}

/* 요금 안내 */
.ratePlan .inner .serviceBox.outsourcingBox {
    background-color: #fff;
    border: 1px solid #e4e7ec;
}
.ratePlan .inner .serviceBox.outsourcingBox .benefitList {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
}
.ratePlan .inner .serviceBox.outsourcingBox .benefitList li svg {
    flex-shrink: 0;
}
.ratePlan .inner .serviceBox.outsourcingBox .benefitList li span {
    font-size: 18px;
}

@media screen and (max-width: 767px) {
    .ratePlan .inner .serviceBox.outsourcingBox {
        border: 0;
        padding: 30px 20px;
    }
}

/* 뉴스레터 */
@media screen and (max-width: 767px) {
    .newsletter .inner .sectionTit {
        margin-top: 4rem;
    }
}

/* footer */
@media screen and (max-width: 767px) {
    .footer .inner .footerTit {
        margin-bottom: 0;
    }
    .footer .inner .infoBox .col .info {
        font-size: 11px;
    }
    .footer .inner .infoBox.gnb {
        display: none;
    }
}