/* 사업영역 Type01 */
.busi1-1 {width:100%; margin-top:50px; }
.busi1-1:after { content:""; display:block; clear:both; }
.busi1-1 ul { width:100%; overflow:hidden;}
.busi1-1 ul li {display:inline-block; vertical-align:top; width:49%; margin-right:2%; margin-bottom:2%; background:#fff; border-radius:0; overflow:hidden; border:1px solid #eee; box-sizing:border-box; }
.busi1-1 ul li:nth-child(even) {float:right; margin-right:0; }
.busi1-1 ul li a {display:block;  }
.busi1-1 ul li dl {width:100%; font-size:0; }
.busi1-1 ul li dl dt {display:inline-block; vertical-align:middle; width:40%; text-align:center; border-radius:0; overflow:hidden;}
.busi1-1 ul li dl dt img {max-width:100%; transition: 0.5s all ease;}
.busi1-1 ul li dl dd {position:relative; display:inline-block; vertical-align:top; width:60%; padding:40px 4% 0 4%;}
.busi1-1 ul li dl dd .num { position:relative; display:block; text-align:center; width:50px; height:50px; line-height:50px; font-size:1em; color:#666; font-style:normal; font-weight:500; background:#eee; border-radius:0; }
.busi1-1 ul li dl dd .num:before { z-index:0; content: ""; display: block; position: absolute; right:50px; top:50%; transform: translateY(-50%); width:0; height:1px; background:#fff; transition: 0.5s all ease;}
.busi1-1 ul li dl dd h4.t1 {margin:20px 0; font-size:1.85em; color:#000; line-height:1.4; font-weight:700; }
.busi1-1 ul li dl dd p { font-size:1em; color:#222; line-height:1.6; word-break:keep-all; display: -webkit-box; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 4; -webkit-box-orient: vertical;}
.busi1-1 ul li dl dd p span {display:inline; font-size:1em; color:#000; font-weight:700;}
.busi1-1 ul li:hover dl dt img {transform:scale(1.1);}
.busi1-1 ul li:hover dl dd .num {color:#fff; background:#222; }
.busi1-1 ul li:hover dl dd .num:before { z-index:0; content: ""; display: block; position: absolute; right:40px; top:50%; transform: translateY(-50%); width:130%; height:1px; background:#222; }



/* 사업영역 Type02 */
.busi2-1 {width:100%; margin-top:50px;}
.busi2-1:after { content:""; display:block; clear:both; }
.busi2-1 ul {display:flex; flex-wrap: wrap; width:100%; }
.busi2-1 ul li{display:flex; flex-wrap: wrap; justify-content: space-between; align-items: center; width:100%; margin-bottom:50px; }
.busi2-1 ul li:last-child {margin-bottom:0;}
.busi2-1 ul li .imgs { position:relative; width:50%;}
.busi2-1 ul li .imgs img {max-width:100%; }
.busi2-1 ul li .txts{width:50%; padding:0 0 0 60px; }
.busi2-1 ul li .txts .num { display:block; text-align:center; width:50px; height:50px; line-height:50px; font-size:1.25em; color:#fff; font-weight:500; font-style:normal; border-radius:25px 0;}
.busi2-1 ul li .txts h3.t1 { display:block; margin:20px 0 30px 0; font-size:2em; color:#000; line-height:1.2;  font-weight:600; word-break:keep-all;}
.busi2-1 ul li .txts h3.t1 span {color:#45a6e6;}
.busi2-1 ul li .txts p { display:block; margin-top:10px; font-size:1.15em; color:#666; line-height:1.6; word-break:keep-all;}
.busi2-1 ul li .txts p span {display:inline; font-size:1em; color:#000; font-weight:500;}
.busi2-1 ul li:nth-child(even) { flex-direction: row-reverse;}
.busi2-1 ul li:nth-child(even) .txts{ padding:0 60px 0 0; }
.busi2-1 ul li:nth-child(1) .txts .num {background:#45a6e6;}
.busi2-1 ul li:nth-child(2) .txts .num {background:#00529b;}
.busi2-1 ul li:nth-child(3) .txts .num {background:#001364;}
.busi2-1 ul li:nth-child(1) h3.t1 span {color:#45a6e6;}
.busi2-1 ul li:nth-child(2) h3.t1 span {color:#00529b;}
.busi2-1 ul li:nth-child(3) h3.t1 span {color:#001364;}

table.tbl_busi2 {width:100%; margin-top:100px; border-spacing: 0; border-collapse: collapse; box-sizing: border-box; border-top:1px solid #000;}
table.tbl_busi2 thead tr th {padding:15px 15px; text-align:center; font-size:1.15em; color:#000; line-height:1.4; font-weight:600; background:#f7f7f7; border-bottom:1px solid #e1e1e1; border-left:1px solid #e1e1e1; }
table.tbl_busi2 thead tr th:first-child {border-left:0;}
table.tbl_busi2 tbody tr th {width:30%; padding:25px; text-align:center; border-bottom:1px solid #e1e1e1; border-left:1px solid #e1e1e1; }
table.tbl_busi2 tbody tr th:first-child {border-left:0;}
table.tbl_busi2 tbody tr th .imgs {width:100%; text-align:center;}
table.tbl_busi2 tbody tr th .imgs img {max-width:100%;}
table.tbl_busi2 tbody tr th p {margin-top:10px; font-size:1.25em; color:#000; font-weight:500; line-height:1.4; word-break:keep-all; }
table.tbl_busi2 tbody tr td {width:70%; padding:15px 25px; text-align:left; border-bottom:1px solid #e1e1e1; border-left:1px solid #e1e1e1; }
table.tbl_busi2 tbody tr td p {position:relative; margin-top:10px !important; padding-left:12px; font-size:1em; color:#666; line-height:1.4; word-break:keep-all;}
table.tbl_busi2 tbody tr td p:first-child {margin-top:0 !important;}
table.tbl_busi2 tbody tr td p:before {content: ""; display: block; position: absolute; left:0; top:10px; width:4px; height:4px; background:#555;}



/* 사업영역 Type03 */
.busi3-1 {width:100%; margin-top:50px;  border-top:1px solid #222;}
.busi3-1:after { content:""; display:block; clear:both; }
.busi3-1 ul { width:100%; padding:0; margin:0; overflow:hidden;}
.busi3-1 ul li { display:inline-block; vertical-align:top; width:100%; padding:40px 4%; background:#fff; overflow:hidden; border-bottom:1px solid #ddd; box-sizing:border-box; transition: 0.5s all ease;}
.busi3-1 ul li:nth-child(even) {background:#f5f5f5; }
.busi3-1 ul li dl {position:relative; width:100%; font-size:0; }
.busi3-1 ul li dl dt {display:inline-block; vertical-align:middle; width:40%; text-align:center;  overflow:hidden;}
.busi3-1 ul li dl dt img {max-width:100%; transition: 0.5s all ease;}
.busi3-1 ul li dl dd {display:inline-block; vertical-align:middle; width:60%; padding:0 4%; }
.busi3-1 ul li dl dd .num { display:inline; padding:5px; font-size:15px; color:#222; font-style:normal; border-bottom:1px solid #222;}
.busi3-1 ul li dl dd h4.t1 {margin:20px 0; font-size:1.85em; color:#000; line-height:1.4; font-weight:700; }
.busi3-1 ul li dl dd p { font-size:1em; color:#222; line-height:1.6; word-break:keep-all; }
.busi3-1 ul li dl dd p span {display:inline; font-size:1em; color:#000; font-weight:700;}
.busi3-1 ul li dl dd a {position:absolute; right:0; top:0; display:inline-block; padding:10px 15px; min-width:120px; text-align:center; background:#fff; border:1px solid #ddd; box-sizing:border-box; transition: 0.2s all ease;}
.busi3-1 ul li:hover a { color:#fff; background:#45a6e6; border:1px solid #45a6e6; }
.busi3-1 ul li:hover dl dt img {transform:scale(1.1);}



/*사업영역 Type04 */
.busi4-1 { width:100%; }
.busi4-1:after { content:""; display:block; clear:both; }
.busi4-1 ul { width:100%; padding:0; margin:0; overflow:hidden;}
.busi4-1 ul li { float:left; width:32%; margin-right:2%; }
.busi4-1 ul li:nth-child(3n) {margin-right:0; }
.busi4-1 ul li img { display:block; width:100%;}
.busi4-1 ul li strong { display:block; margin-top:30px; font-size:1.5em; font-weight:700; line-height:1.4; text-align:center; }
.busi4-1 ul li span { display:block; margin-top:20px; font-size:1em; line-height:1.6; text-align:center; letter-spacing:-0.04em; }
table.tbl_busi4{width:100%; border-top:1px solid #333; border-collapse:collapse; background:#fff;}
table.tbl_busi4 th{width:35%; padding:10px 10px; text-align:center; font-size:1em; color:#000; line-height:1.4; font-weight:normal; background:#f2f2f2; border-bottom:1px solid #ddd; }
table.tbl_busi4 td{width:65%; padding:10px 20px; text-align:left; font-size:1em; color:#000; line-height:1.4; border-bottom:1px solid #ddd; }
table.tbl_busi4 td .btn_go {display:inline-block; margin:20px 0; padding:10px 30px; font-size:1em; color:#fff; background:#222; border:1px solid #000; transition: 0.5s all ease; }
table.tbl_busi4 td .btn_go:hover {color:#000; background:#fff; }



/*사업영역 Type05 */
.busi5-1 {width:100%; }
.busi5-1:after{ content:""; display:block; clear:both;}
.busi5-1 ul {width:100%; padding:0; margin:0; overflow:hidden;}
.busi5-1 ul li{float:left; width:100%; overflow:hidden; margin-bottom:100px; }
.busi5-1 ul li:last-child {margin-bottom:0;}
.busi5-1 ul li .con_box { width:100%; }
.busi5-1 ul li .con_box:after{ content:""; display:block; clear:both;}
.busi5-1 ul li .con_box .imgs{float:left; width:45%; }
.busi5-1 ul li .con_box .imgs img{max-width:100%;}
.busi5-1 ul li .con_box .txts{float:right; width:55%; padding:30px 0 30px 50px; box-sizing: border-box; }
.busi5-1 ul li .con_box .txts .tit{margin-bottom:30px; font-size:2em; color:#000; line-height:1.2; font-weight:700;}
.busi5-1 ul li .con_box .txts p{margin-top:20px; font-size:1em; color:#333;  line-height:1.6; word-break:keep-all;}
.busi5-1 ul li .con_box .txts .btn_go {display:inline-block; margin-top:40px; padding:10px 30px; font-size:1em; color:#fff; background:#222; border:1px solid #000; transition: 0.5s all ease; }
.busi5-1 ul li .con_box .txts .btn_go:hover {color:#000; background:#fff; }
.busi5-1 ul li.other_type .con_box .imgs{float:right; }
.busi5-1 ul li.other_type .con_box .txts{float:left; padding:30px 50px 30px 0;}
table.tbl_busi5{float:left; width:100%; border-top:1px solid #333; border-collapse:collapse; background:#fff;}
table.tbl_busi5 th{width:35%; padding:10px 10px; text-align:center; font-size:1em; color:#000; line-height:1.4; font-weight:normal; background:#f2f2f2; border-bottom:1px solid #ddd; }
table.tbl_busi5 td{width:65%; padding:10px 20px; text-align:left; font-size:1em; color:#000; line-height:1.4; border-bottom:1px solid #ddd; }





/* 반응형 중간기기 1200px 사이즈 이하*/
@media all and (max-width:1200px){
	
	.busi1-1 ul li dl dd {padding:25px 4% 0 4%;}


	.busi5-1 ul li{margin-bottom:50px; }
	.busi5-1 ul li .con_box .txts {padding:20px 0 30px 40px;}
	.busi5-1 ul li .con_box .txts .tit{font-size:1.5em; }
	.busi5-1 ul li .con_box .txts p{font-size:1em; }
	.busi5-1 ul li.other_type .con_box .txts{ padding:20px 40px 30px 0;}
	
}


/* 반응형 중간기기 992px 사이즈 이하*/
@media all and (max-width:992px){	
	
	.busi1-1 ul li {width:100%; margin-bottom:40px;}
	.busi1-1 ul li dl dt {vertical-align:middle; width:40%; }
	.busi1-1 ul li dl dd {vertical-align:middle; width:60%; padding:25px 4%;}


	.busi2-1 ul li{flex-direction: column; margin-bottom:50px;}
	.busi2-1 ul li .imgs { width:100%; text-align:center;}
	.busi2-1 ul li .imgs img {width:100%;}
	.busi2-1 ul li .txts{width:100%; padding:0; margin-top:20px; text-align:center;}
	.busi2-1 ul li .txts .num {margin:0 auto;}
	.busi2-1 ul li:nth-child(even) { flex-direction: column;}
	.busi2-1 ul li:nth-child(even) .txts{ padding:0; }


	.busi6-2 {padding:40px 25px; background:#f9f9f9;}
	.busi6-2 ul li { width:45%; margin:0; margin:2% 5% 2% 0;}
	.busi6-2 ul li:nth-child(3n) {margin-right:5%;}
	.busi6-2 ul li:nth-child(even) {margin-right:0;}


	.busi7-2 ul li {width:49%; margin-right:0;}
	.busi7-2 ul li:nth-child(even) {float:right; margin-right:0;}
	.busi7-2 ul li .txts p { min-height:auto;}

}


/* 반응형 중간기기 768사이즈 이하 */
@media screen and (max-width: 768px) {		
	
	
	table.tbl_busi2 { margin-top:50px; } 
	table.tbl_busi2 tbody tr th {width:40%; padding:15px; }
	table.tbl_busi2 tbody tr th p {font-size:1em;  }
	table.tbl_busi2 tbody tr td {width:60%; padding:15px 15px; }


	.busi3-1 ul li dl dt { width:100%;}
	.busi3-1 ul li dl dt img { width:100%;}
	.busi3-1 ul li dl dd { width:100%; padding:0; margin-top:25px; text-align:center;}
	.busi3-1 ul li dl dd a {position:relative; margin-top:30px; display:block;}


	.busi4-1 ul li{ width:100%; margin-left:0px; margin-bottom:50px;}


	.busi5-1 ul li{ width:100%; }
	.busi5-1 ul li .con_box .imgs{ width:100%; }
	.busi5-1 ul li .con_box .imgs img{width:100%;}
	.busi5-1 ul li .con_box .txts{width:100%; padding:30px;}
	.busi5-1 ul li .con_box .txts .btn_go {margin-top:30px;}
	.busi5-1 ul li.other_type .con_box .txts{width:100%; padding:30px;}
	.busi5-1 ul li.other_type .con_box .imgs{ width:100%; }
	.busi5-1 ul li.other_type .con_box .imgs img{width:100%;}


}


/* 반응형 작은기기 480사이즈 이하 */
@media screen and (max-width: 480px) {
	
	.busi1-1 ul li dl dt {width:100%; }
	.busi1-1 ul li dl dd {width:100%; text-align:center;}
	.busi1-1 ul li dl dd .num {margin:0 auto; color:#fff; background:#000;}
	.busi1-1 ul li dl dd .num:before { right:0; left:50%; top:0; transform:unset; width:1px; height:0;}
	.busi1-1 ul li dl dd p { display:block !important; -webkit-line-clamp: none !important;}
	.busi1-1 ul li:hover dl dd .num:before { right:0; left:50%; top:-40px;  transform:unset; width:1px; height:100%; }

}


/* 반응형 작은기기 360사이즈 이하 */
@media screen and (max-width: 360px) {	

	
}


/* ===================== Think Different ===================== */

.td-section {
    max-width:1400px;
    margin:0 auto 100px;
    padding:0 20px;
}

/* 상단 타이틀 */
.td-top {
    text-align:center;
    margin-bottom:40px;
}
.td-title {
    font-size:34px;
    font-weight:700;
    color:#c87f2a;
}
.td-sub {
    margin-top:12px;
    font-size:18px;
    line-height:1.7;
    color:#555;
}
.td-main-title {
    margin-top:25px;
    font-size:28px;
    font-weight:700;
    color:#222;
}
.td-highlight {
    margin:25px auto 0;
    padding:18px 25px;
    border:1px solid #f3d7b5;
    background:#fff8ef;
    width:100%;
    max-width:700px;
    color:#222;
    line-height:1.7;
    font-size:18px;
}

/* 질문 박스 */
.td-question-wrap {
    text-align:center;
    margin:50px 0 40px;
}
.td-question-title {
    font-size:20px;
    font-weight:700;
    margin-bottom:15px;
}
.td-question-box {
    border:1px solid #ddd;
    padding:12px 20px;
    display:inline-block;
    font-size:18px;
}

/* 왜 필요한가 */
.td-why {
    text-align:center;
    margin-bottom:40px;
}
.td-why-title {
    font-size:22px;
    font-weight:700;
}
.td-why-sub {
    font-size:18px;
    margin-top:8px;
    color:#666;
}

/* 6개 상단 박스 – 주황 상단 + 흰 내용 박스 */
.td-six-grid {
    display:flex;
    flex-wrap:nowrap;
    justify-content:space-between;
    gap:12px;
    margin-bottom:30px;
}

.td-six-box {
    flex:1;
    min-width:0;
    background:#d86b2b;
    display:flex;              /* 타이틀+내용 세로배치 */
    flex-direction:column;
}

.td-six-box .icon {
    text-align:center;
    color:#fff;
    font-size:18px;
    font-weight:700;
    padding:10px 5px 12px;
}

/* 내용 박스 높이 통일 + 가운데 정렬 */
.td-six-box p {
    margin:0;
    background:#fff;
    text-align:center;
    padding:20px 8px;
    font-size:15px;
    color:#333;
    flex:1;                    /* 모든 박스 동일 높이 */
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:75px;           /* 필요 시 높이 여기서 조절 */
}

/* 6개 박스 아래 + */
.td-plus-row {
    text-align:center;
    font-size:42px;
    font-weight:300;
    color:#c87f2a;
    margin:20px 0 25px;
}

/* 아랫줄 2개 큰 박스 – 갈색 배경 + 흰 내용 박스 */
.td-mid-row {
    display:flex;
    justify-content:center;
    align-items:flex-start;
    gap:40px;
    margin-bottom:50px;
}
.td-mid-box {
    width:40%;
    min-width:260px;
    background:#6a432f;   /* 진한 갈색 */
    box-sizing:border-box;
    padding:0;
}
.td-mid-box .mid-title {
    text-align:center;
    color:#fff;
    font-size:18px;
    font-weight:700;
    padding:12px 10px;
}
.td-mid-box p {
    margin:0 18px 18px;
    background:#fff;
    text-align:center;
    padding:18px 10px 20px;
    font-size:15px;
    color:#333;
}

/* 설명 박스 4개 */
.td-desc-grid {
    display:flex;
    flex-wrap:wrap;
    gap:30px;
    margin-bottom:60px;
}
.td-desc-box {
    flex:1 1 calc(50% - 20px);
    min-width:300px;
}
.d-title {
    font-size:18px;
    font-weight:700;
    color:#c87f2a;
    margin-bottom:10px;
}
.td-desc-box p {
    font-size:16px;
    color:#555;
    line-height:1.7;
}

/* 커리큘럼 */
.td-curriculum {
    text-align:center;
}
.td-curriculum h2 {
    font-size:26px;
    font-weight:700;
    margin-bottom:25px;
}
.td-curriculum table {
    width:100%;
    border-collapse:collapse;
    background:#fff;
}
.td-curriculum table th {
    background:#f5f9f1;
    padding:12px 5px;
    border-bottom:1px solid #ddd;
    font-size:15px;
}
.td-curriculum table td {
    padding:12px 5px;
    border-bottom:1px solid #f2f2f2;
    font-size:15px;
}

/* ========== 반응형 ========== */

@media (max-width:992px){
    .td-six-grid {
        flex-wrap:wrap;                         /* 태블릿 이하는 줄바꿈 허용 */
    }
    .td-six-box {
        flex:0 0 calc(33.33% - 10px);
    }
    .td-mid-box { width:45%; }
}

@media (max-width:768px){
    .td-six-box {
        flex:0 0 48%;
    }
    .td-mid-row {
        flex-direction:column;
    }
    .td-mid-box {
        width:100%;
    }
    .td-desc-box {
        flex:1 1 100%;
    }
}

@media (max-width:480px){
    .td-six-box {
        flex:0 0 100%;
    }
}


/* ===================== 주제별 학습 구성 및 내용 ===================== */

.tp-section {
    max-width:1400px;
    margin:0 auto 100px;
    padding:0 20px;
}

/* 상단 인트로 */
.tp-intro {
    text-align:center;
    margin-bottom:35px;
}
.tp-intro p {
    font-size:16px;
    line-height:1.8;
    color:#555;
}
.tp-intro p.strong {
    margin-top:8px;
    font-weight:700;
    color:#222;
}

/* 중앙 타이틀 */
.tp-main-title {
    text-align:center;
    font-size:22px;
    font-weight:700;
    margin-bottom:30px;
    letter-spacing:0.08em;
}

/* ▶ 6개 블록을 2열 그리드로 */
.tp-topic-grid {
    display:flex;
    flex-wrap:wrap;
    gap:30px;
}

/* 각 주제 블록 (PC에서 2개씩) */
.tp-block {
    flex:1 1 calc(50% - 30px);
    box-sizing:border-box;
}

/* 윗부분: 왼쪽 카드 + 오른쪽 강조박스 */
.tp-main {
    display:flex;
    align-items:stretch;
    gap:18px;
}

/* 왼쪽 카드 */
.tp-main-left {
    flex:1;
    border:1px solid #e3e3e3;
    background:#fff;
    padding:18px 22px 16px;
    box-sizing:border-box;
}
.tp-head {
    font-size:16px;
    font-weight:700;
    color:#222;
    margin-bottom:6px;
}
.tp-head .num {
    margin-right:4px;
}
.tp-question {
    font-size:15px;
    color:#333;
    margin-bottom:12px;
}
.tp-list {
    margin:0;
    padding:0;
    list-style:none;
}
.tp-list li {
    font-size:14px;
    color:#444;
    line-height:1.6;
    background:#fdf5eb;
    padding:7px 10px;
    margin-bottom:4px;
}

/* 오른쪽 강조 박스 (연한 베이지 박스 + 주황 글자) */
.tp-main-right {
    flex:0 0 200px;
    position:relative;
    border:1px solid #f0d9b9;
    background:#fffaf3;
    box-sizing:border-box;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:15px 12px;
    text-align:center;
}
.tp-main-right span {
    font-size:15px;
    font-weight:700;
    color:#c87f2a;
}
.tp-main-right::before {
    content:"";
    position:absolute;
    left:-12px;
    top:50%;
    transform:translateY(-50%);
    border-width:10px 12px 10px 0;
    border-style:solid;
    border-color:transparent #fffaf3 transparent transparent;
}

/* 아래 설명 문단 */
.tp-desc {
    margin-top:10px;
    font-size:14.5px;
    line-height:1.8;
    color:#555;
}

/* 하단 안내 박스 */
.tp-bottom-wrap {
    display:flex;
    flex-wrap:wrap;
    gap:25px;
    margin-top:50px;
}
.tp-bottom-box {
    flex:1 1 calc(50% - 15px);
    min-width:280px;
    border:1px solid #ddd;
    background:#fafafa;
    padding:18px 20px;
    box-sizing:border-box;
}
.tp-bottom-box .bt-title {
    font-size:17px;
    font-weight:700;
    margin-bottom:10px;
    color:#222;
}
.tp-bottom-box p {
    font-size:14.5px;
    color:#555;
    line-height:1.7;
}

/* ================= 반응형 ================= */

/* 992px 이하 – 2열은 유지, 우측 박스 살짝 줄이기 */
@media (max-width:992px){
    .tp-main-right {
        flex:0 0 180px;
    }
}

/* 768px 이하 – 한 줄에 1개씩, 카드 세로 정렬 */
@media (max-width:768px){
    .tp-section {
        padding:0 15px;
    }
    .tp-block {
        flex:1 1 100%;
    }
    .tp-main {
        flex-direction:column;
    }
    .tp-main-right {
        flex:0 0 auto;
        width:100%;
    }
    .tp-main-right::before {
        display:none; /* 모바일에서는 화살표 제거 */
    }
}

/* 480px 이하 – 글자 조금 더 줄이기 */
@media (max-width:480px){
    .tp-intro p {
        font-size:15px;
    }
    .tp-main-title {
        font-size:20px;
    }
    .tp-head {
        font-size:15px;
    }
    .tp-question,
    .tp-main-right span {
        font-size:14px;
    }
    .tp-list li,
    .tp-desc,
    .tp-bottom-box p {
        font-size:13.5px;
    }
}


/* ===================== Coaching (1400px 레이아웃) ===================== */

.coach-section {
    max-width:1400px;
    margin:0 auto 110px;
    padding:0 20px;
}

/* 상단 타이틀 */
.coach-top {
    text-align:center;
    margin-bottom:50px;
}
.coach-title {
    font-size:20px;
    font-weight:700;
    color:#d86b2b;
}
.coach-sub {
    margin-top:10px;
    font-size:16px;
    color:#555;
    line-height:1.7;
}
.coach-main-bar {
    margin:26px auto 0;
    max-width:1100px;
    padding:14px 24px;
    background:#d86b2b;
    color:#fff;
    font-size:18px;
    font-weight:600;
    border-radius:3px;
}

/* 소제목 공통 */
.coach-small-title {
    text-align:center;
    font-size:20px;
    font-weight:700;
    margin:38px 0 18px;
}

/* 정의 박스 */
.coach-def-wrap {
    text-align:center;
    margin-bottom:35px;
}
.coach-def-box {
    max-width:1100px;
    margin:0 auto;
    border:1px solid #f0d9b9;
    background:#fffaf3;
    padding:18px 26px;
    font-size:16px;
    color:#444;
    line-height:1.8;
}

/* 이유는? 1,2,3 */
.coach-reason {
    margin-bottom:50px;
}
.coach-reason-grid {
    max-width:1100px;
    margin:0 auto;
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
    gap:24px;
}
.coach-reason-box {
    flex:1 1 calc(33.33% - 16px);
    border:1px solid #eee;
    background:#fff;
    padding:18px 16px 20px;
    box-sizing:border-box;
    text-align:center;
    position:relative;
    min-height:90px;
}
.coach-reason-box .num {
    position:absolute;
    top:-18px;
    left:50%;
    transform:translateX(-50%);
    width:38px;
    height:28px;
    line-height:28px;
    border-radius:2px;
    background:#d86b2b;
    color:#fff;
    font-weight:700;
    font-size:15px;
}
.coach-reason-box p {
    margin:12px 0 0;
    font-size:15px;
    color:#444;
    line-height:1.6;
}

/* 코칭 리더십 */
.coach-lead {
    text-align:center;
    margin-bottom:55px;
}
.coach-lead-text {
    font-size:15px;
    color:#555;
    line-height:1.7;
}
.coach-lead-bar {
    margin:24px auto 16px;
    max-width:800px;
    padding:16px 24px;
    background:#f7e0ce;
    color:#c35417;
    font-size:17px;
    font-weight:600;
}
.coach-lead-bottom {
    font-size:17px;
    color:#333;
}
.coach-lead-bottom span {
    color:#d86b2b;
    font-weight:700;
}

/* 진단 도구 4원 – 가로 1400 기준 넓게 */
.coach-tools {
    margin:45px 0 55px;
}
.coach-tools-inner {
    width:100%;
    max-width:1200px;
    margin:0 auto;
    padding:30px 40px;
    border:1px solid #eee;
    background:#fff;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:0;
    box-sizing:border-box;
}
.coach-tool-circle {
    width:145px;
    height:145px;
    border-radius:50%;
    border:2px solid #f0d9b9;
    background:#fffaf3;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:15px;
    color:#555;
    text-align:center;
    box-sizing:border-box;
}

/* ================== Coaching Frame (수정본) ================== */

/* 코칭 프레임 전체 래퍼 */
.coach-frame {
    margin-top:10px;
}

/* 좌우 도형·화살표를 크게 / 중앙 정렬 */
.coach-frame-grid {
    max-width:1200px;
    margin:40px auto 0;
    display:flex;
    align-items:center;          /* 세로방향 모두 가운데 */
    justify-content:center;
    gap:80px;                    /* 좌우 여유 */
}

/* 왼쪽 원형 다이어그램 – 전체 조금 더 크게 */
.coach-frame-left {
    position:relative;
    width:380px;
    height:380px;
    margin:0;
}

/* 중앙 원(신뢰관계) – 더 큼 */
.cf-center {
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:160px;
    height:160px;
    border-radius:80px;
    background:#d86b2b;
    color:#fff;
    font-size:16px;
    font-weight:700;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
}

/* 바깥 4개 원 – 전체 비율 키움 */
.cf-circle {
    position:absolute;
    width:135px;
    height:135px;
    border-radius:68px;
    background:#fffaf3;
    border:2px solid #f0d9b9;
    font-size:14px;
    color:#444;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
}
.cf-top    { left:50%; top:0;        transform:translate(-50%,0); }
.cf-right  { right:0; top:50%;       transform:translate(0,-50%); }
.cf-bottom { left:50%; bottom:0;     transform:translate(-50%,0); }
.cf-left   { left:0; top:50%;        transform:translate(0,-50%); }

/* 가운데 화살표 – 더 크고 정확히 가운데 */
.coach-frame-arrow {
    flex:0 0 60px;                /* 고정폭 60px */
    display:flex;
    align-items:center;           /* 세로 정중앙 */
    justify-content:center;       /* 가로 정중앙 */
    font-size:72px;               /* 화살표 크기 업 */
    color:#d86b2b;
    font-weight:300;
}

/* 오른쪽 박스 – 살짝 키움 */
.coach-frame-right {
    flex:1;
    max-width:460px;
    padding:26px 28px;
    border:1px solid #f0d9b9;
    background:#fff;
    box-sizing:border-box;
}
.cfr-title {
    font-size:21px;
    font-weight:700;
    color:#d86b2b;
    margin-bottom:10px;
}
.cfr-sub {
    font-size:17px;
    font-weight:600;
    color:#333;
    margin-bottom:16px;
}
.cfr-note {
    font-size:14px;
    color:#555;
    line-height:1.7;
    background:#fffaf3;
    padding:11px 13px;
}

/* ================= 반응형 ================= */

/* 992px 이하 */
@media (max-width:992px){
    .coach-tools-inner {
        flex-wrap:wrap;
        justify-content:center;
        gap:18px;
    }
    .coach-tool-circle {
        width:135px;
        height:135px;
    }

    .coach-frame-grid {
        gap:40px;
    }
}

/* 768px 이하 – 세로 정렬 */
@media (max-width:768px){
    .coach-section {
        padding:0 15px;
    }

    .coach-reason-box {
        flex:1 1 100%;
        max-width:none;
    }

    .coach-frame-grid {
        flex-direction:column;
        align-items:center;
        gap:30px;
    }
    .coach-frame-arrow {
        display:none;  /* 모바일에서는 화살표 숨김 */
    }
}

/* 480px 이하 – 글자 조금 축소 */
@media (max-width:480px){
    .coach-title { font-size:24px; }
    .coach-sub { font-size:15px; }
    .coach-main-bar { font-size:16px; }

    .coach-def-box { font-size:15px; }

    .coach-tool-circle {
        width:120px;
        height:120px;
        font-size:13px;
    }

    .coach-frame-left {
        width:280px;
        height:280px;
    }
    .cf-center {
        width:120px;
        height:120px;
        font-size:14px;
    }
    .cf-circle {
        width:105px;
        height:105px;
        font-size:13px;
    }
}


/* ===================== 코칭 교육 표 ===================== */

.coach-table-wrap {
    max-width:1400px;
    margin:60px auto 90px;
    padding:0 20px;
}

.coach-table-title {
    text-align:center;
    font-size:30px;
    font-weight:700;
    color:#c87f2a;
    margin-bottom:25px;
}

/* 표 전체 */
.coach-table {
    width:100%;
    border-collapse:collapse;
    font-size:20px;
    background:#fff;
    border-top:2px solid #c87f2a;
}

.coach-table th,
.coach-table td {
    padding:18px 15px;
    line-height:1.6;
    border-bottom:1px solid #e6e6e6;
}

/* 왼쪽 제목(코칭 종류) */
.coach-table th {
    width:260px;
    font-size:18px;
    font-weight:700;
    color:#222;
    background:#fff9f3;
    border-right:1px solid #e6e6e6;
}

/* 오른쪽 설명 */
.coach-table td {
    color:#444;
    font-weight:400;
}

/* 반응형 */
@media (max-width:768px){
    .coach-table th {
        font-size:18px;
        width:180px;
    }
    .coach-table td {
        font-size:16px;
    }
}

@media (max-width:480px){
    .coach-table th,
    .coach-table td {
        display:block;
        width:100%;
        border-right:0;
        padding:14px 10px;
    }

    .coach-table th {
        background:#fff3e7;
        border-bottom:0;
        font-size:17px;
    }

    .coach-table td {
        border-bottom:1px solid #e6e6e6;
        padding-top:5px;
    }
}


/* ===================== 시詩 코칭 ===================== */

.poem-coach-section {
    max-width:1400px;
    margin:0 auto 100px;
    padding:0 20px;
    text-align:center;
}

.pc-title {
    font-size:30px;
    font-weight:700;
    color:#c87f2a;
    margin-bottom:12px;
}

.pc-sub {
    font-size:18px;
    color:#555;
    line-height:1.7;
    margin-bottom:30px;
}

.pc-banner {
    background:#d86b2b;
    color:#fff;
    font-size:20px;
    font-weight:700;
    padding:14px 10px;
    width:100%;
    max-width:750px;
    margin:0 auto 40px;
    border-radius:4px;
}

.pc-cert-wrap {
    width:100%;
    max-width:500px;
    margin:0 auto;
}

.pc-cert-wrap img {
    width:100%;
    height:auto;
    display:block;
    border:1px solid #eee;
}

/* ---------- 반응형 ---------- */
@media (max-width:768px){
    .pc-title { font-size:26px; }
    .pc-sub { font-size:16px; }
    .pc-banner { font-size:18px; }
}

@media (max-width:480px){
    .pc-title { font-size:23px; }
    .pc-sub { font-size:15px; }
    .pc-banner { font-size:16px; padding:12px 6px; }
}


/* ===================== 시 코칭 내용 / 효과 박스 ===================== */

.poem-coach-box {
    max-width:1400px;
    margin:60px auto 90px;
    padding:0 20px;
    display:flex;
    flex-wrap:wrap;
    gap:40px;
}

/* 좌우 컬럼 공통 */
.pcb-col {
    flex:1 1 0;
    min-width:300px;
}

.pcb-title {
    font-size:22px;
    font-weight:700;
    color:#222;
    margin-bottom:18px;
}

/* 리스트 카드 공통 */
.pcb-list {
    list-style:none;
    margin:0;
    padding:0;
    display:flex;
    flex-direction:column;
    gap:12px;
}

.pcb-list li {
    display:flex;
    align-items:stretch;
    background:#fff;
    border:1px solid #e4e4e4;
    border-radius:6px;
    overflow:hidden;
    box-shadow:0 2px 6px rgba(0,0,0,0.03);
    transition:box-shadow .2s ease, transform .2s ease, border-color .2s ease;
}

/* 번호 뱃지 */
.pcb-list .num {
    flex:0 0 46px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:linear-gradient(135deg,#f29a3a,#d86b2b);
    color:#fff;
    font-weight:700;
    font-size:16px;
}

/* 텍스트 영역 */
.pcb-list .txt {
    flex:1;
    padding:14px 16px;
    font-size:16px;
    color:#444;
    line-height:1.6;
}

/* 호버 효과 */
.pcb-list li:hover {
    border-color:#f1c397;
    box-shadow:0 4px 12px rgba(0,0,0,0.08);
    transform:translateY(-2px);
}

/* --------- 반응형 --------- */
@media (max-width:768px){
    .poem-coach-box {
        margin:40px auto 70px;
        gap:30px;
    }
    .pcb-title {
        font-size:20px;
    }
    .pcb-list .txt {
        font-size:15px;
        padding:12px 14px;
    }
}

@media (max-width:480px){
    .poem-coach-box {
        gap:25px;
    }
    .pcb-list .num {
        flex:0 0 40px;
        font-size:15px;
    }
}


/* ===================== 어떤 사람이 듣나? ===================== */

.who-coach-section {
    max-width:1400px;
    margin:70px auto 100px;
    padding:0 20px;
    text-align:center;
}

.who-title {
    font-size:28px;
    font-weight:700;
    color:#c87f2a;   /* 위에 쓰던 포인트 오렌지 */
    margin-bottom:22px;
}

/* 가운데 이미지 박스 (갈색 바탕) */
.who-image-wrap {
    padding:0;             /* 여백 제거 */
    margin-bottom:30px;
    background:none !important;   /* 배경 완전 제거 */
}

.who-image-wrap img {
    display:block;
    margin:0 auto;
    width:100%;
    max-width:1200px;  /* 원하는 너비로 유지 */
    height:auto;
}

/* 하단 리스트 텍스트 */
.who-list {
    margin:0;
    padding:0;
    list-style:none;
    font-size:22px;
    color:#333;
    line-height:1.8;
}

.who-list li + li {
    margin-top:5px;
}

.who-coach-section .who-list {
    font-size:20px !important;
}

.who-coach-section .who-list li {
    font-size:20px !important;
}

/* ---------- 반응형 ---------- */
@media (max-width:768px){
    .who-title { font-size:24px; }
    .who-image-wrap { padding:26px 0; margin-bottom:24px; }
    .who-list { font-size:16px; }
}

@media (max-width:480px){
    .who-title { font-size:22px; }
    .who-image-wrap { padding:22px 0; }
    .who-list { font-size:15px; }
}


/* ===================== 교육 정보 섹션 ===================== */

.edu-info-section {
    max-width:1400px;
    margin:80px auto 120px;
    padding:0 20px;
}

.edu-block {
    margin-bottom:55px;
    text-align:center;
}

/* 제목 (교육 과정 / 교육비 / 문의) */
.edu-title {
    font-size:26px;
    font-weight:700;
    color:#c87f2a;
    margin-bottom:20px;
    position:relative;
}

.edu-title:after {
    content:"";
    display:block;
    width:65px;
    height:3px;
    background:#d86b2b;
    margin:10px auto 0;
    border-radius:2px;
}

/* 내용 텍스트 */
.edu-content {
    font-size:20px;
    color:#444;
    background:#fdf3e5;
    border:1px solid #efc89d;
    padding:18px 10px;
    max-width:700px;
    margin:0 auto;
    border-radius:8px;
}

/* 교육비 박스 */
.edu-box {
    font-size:22px;
    font-weight:600;
    color:#b45f26;
    background:#fff;
    border:2px solid #ebb684;
    padding:22px 15px;
    max-width:700px;
    margin:0 auto;
    border-radius:10px;
    box-shadow:0 4px 10px rgba(0,0,0,0.05);
}

/* 문의 박스 */
.edu-info-section .edu-contact {
    font-size:22px;
    color:#fff;
    font-weight:600;
    background:#d0862f;
    padding:18px 10px;

    max-width:700px;
    margin:0 auto;          /* 가운데 정렬 */
    border-radius:10px;
    text-align:center;

    display:block;
    box-sizing:border-box;
    float:none;             /* 혹시 남아있을 float 제거 */
}

/* ---------------- 모바일 폰트 축소 ---------------- */

/* 태블릿 이하 */
@media (max-width:768px){
    .edu-title { font-size:22px !important; }
    .edu-content { font-size:17px !important; }
    .edu-box { font-size:18px !important; }
    .edu-contact { font-size:18px !important; }
}

/* 모바일 이하 */
@media (max-width:480px){
    .edu-title { font-size:20px !important; }
    .edu-content { font-size:15px !important; }
    .edu-box { font-size:16px !important; }
    .edu-contact { font-size:16px !important; }
}
