.con-box + .con-box {padding-top: 80px;}
.features-list {--gap: calc(24 / 1920 * 100vw);display: flex;gap: var(--gap);}
.features-list > li {width: calc((100% - (var(--gap) * 3)) / 4);box-shadow: 0px 2px 20px rgba(0, 0, 0, 0.08);border-radius: 24px;overflow: hidden;padding: 40px 24px;box-sizing: border-box;background: #fff;}
.features-list > li .img {width: 60px;height: 60px;margin: 0 0 30px;}
.features-list > li .img img {width: 100%;height: 100%;object-fit: cover;}
.features-list > li .title {font-weight: 400;font-size: 18px;line-height: 150%;letter-spacing: -0.025em;color: #000a1a;padding: 0 0 10px;}
.features-list > li .txt {font-weight: 400;font-size: 14px;line-height: 150%;letter-spacing: -0.025em;color: #555;}

.intro-list{display: flex;justify-content: center;gap: min(20px, calc(20 / 1920 * 100vw));margin: 0 min(-18.5px, calc(-18.5 / 1920 * 100vw));padding: 40px 0;}
.intro-list > li{position: relative;width: min(283px, calc(283 / 1920 * 100vw));flex-shrink: 0;padding: min(18.5px, calc(18.5 / 1920 * 100vw));}
.intro-list > li .item{position: relative;width: 100%;height: min(283px, calc(283 / 1920 * 100vw));background: #ced4ef;box-shadow: 0px 0px 11.3333px rgba(187, 139, 255, 0.6), inset 1.41667px 1.41667px 2.83333px rgba(45, 11, 82, 0.2), inset -28.3333px -28.3333px 85px rgba(19, 8, 39, 0.08), inset 5.66667px 5.66667px 5.66667px rgba(255, 255, 255, 0.9), inset -2.83333px -2.83333px 2.83333px rgba(215, 197, 255, 0.8);border-radius: 50%;padding: min(14.5px, calc(14.5 / 1920 * 100vw));box-sizing: border-box;}
.intro-list > li .item::before{position: absolute;content: "";display: block;width: min(368px, calc(368 / 1920 * 100vw));height: min(198px, calc(198 / 1920 * 100vw));filter: drop-shadow(0px 0px 11.3333px rgba(187, 139, 255, 0.6));left: 50%;transform: translatex(-50%);pointer-events: none;}
.intro-list > li .item::after{position: absolute;content: "";display: block;width: min(41px, calc(41 / 1920 * 100vw));height: min(24px, calc(24 / 1920 * 100vw));top: 50%;right: calc(-50 / 1920 * 100vw);z-index: 5;pointer-events: none;}
.intro-list > li:nth-child(1) .item::before{background: url(../img/content/ellipse-decor01.png) no-repeat center / contain;z-index: 2;}
.intro-list > li:nth-child(2) .item::before{background: url(../img/content/ellipse-decor02.png) no-repeat center / contain;z-index: 1;}
.intro-list > li:nth-child(3) .item::before{background: url(../img/content/ellipse-decor03.png) no-repeat center / contain;z-index: 1;}
.intro-list > li:nth-child(4) .item::before{background: url(../img/content/ellipse-decor04.png) no-repeat center / contain;}
.intro-list > li:nth-child(odd) .item::before{top: calc(100% - min(156px, calc(156 / 1920 * 100vw)));}
.intro-list > li:nth-child(even) .item::before{bottom: calc(100% - min(148px, calc(148 / 1920 * 100vw)));}
.intro-list > li:nth-child(1) .item::after{background: url(../img/content/arrow-decor01.png) no-repeat center / contain;}
.intro-list > li:nth-child(2) .item::after{background: url(../img/content/arrow-decor02.png) no-repeat center / contain;}
.intro-list > li:nth-child(3) .item::after{background: url(../img/content/arrow-decor03.png) no-repeat center / contain;}
.intro-list > li:nth-child(odd) .item::after{transform: translatey(calc(-50% - min(10px, calc(10 / 1920 * 100vw))));}
.intro-list > li:nth-child(even) .item::after{transform: translatey(calc(-50% + min(2px, calc(2 / 1920 * 100vw))));}
.intro-list > li .item-wrap{display:flex;align-items: center;justify-content: center;flex-direction: column;width: 100%;height: 100%;background: linear-gradient(133.41deg, #eef1ff 9.01%, #fff 89.35%);box-shadow: inset -28.3333px -28.3333px 85px rgba(255, 255, 255, 0.8), inset 17px 17px 56.6667px rgba(0, 0, 0, 0.12), inset -2.83333px -2.83333px 2.83333px rgba(255, 255, 255, 0.8);border-radius: 50%;padding: 20px;box-sizing: border-box;}
.intro-list > li .img{width: min(60px, calc(60 / 1920 * 100vw));height: min(60px, calc(60 / 1920 * 100vw));margin: 0 auto 9px;}
.intro-list > li .img img{width: 100%;height: 100%;object-fit: cover;}
.intro-list .txt01{font-weight: 600;font-size: min(24px, calc(24 / 1920 * 100vw));line-height: 150%;letter-spacing: -0.025em;color: #1f4e79;}
.intro-list .txt02 {font-weight: 600;font-size: min(34px, calc(34 / 1920 * 100vw));line-height: 150%;letter-spacing: -0.025em;color: #256ef4;}


.h4-tit01 {display: flex;align-items: center;gap: 40px;}
.h4-tit01 > span {font-family: Paperlogy;font-weight: 400;font-size: 18px;line-height: 150%;letter-spacing: -0.025em;color: #555555;}

.roadmap-wrap { display: flex; align-items: center; gap: 20px; }
.roadmap-wrap .right { max-width: 387px; width: 100%; }
.roadmap-wrap .left { flex: 1; display: flex; flex-direction: column; justify-content: space-between; gap: 40px; }
.roadmap-wrap .flow-arrow-wrap { max-width: 85px; width: 100%; }
.curriculum-col { display: flex; flex-direction: column; gap: 16px; flex: 1; }
.roadmap-wrap .left .year-row { display: flex; align-items: stretch; gap: 40px; }
.roadmap-wrap .left .year-label-wrap { display: flex; align-items: center; gap: 0; flex-shrink: 0; }
.roadmap-wrap .left .year-label { width: 130px; border-radius: 16px; background: #1F4E79; color: #fff; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; padding: 14px 8px; flex-shrink: 0; min-height: 138px; box-sizing: border-box; position: relative; }
.roadmap-wrap .left .year-label::before { content: ""; position: absolute; z-index: -1; background: #3387FF; width: 4px; height: 100%; bottom: -130px; left: 50%; transform: translateX(-50%); }
.roadmap-wrap .left .year-label::after { content: ""; position: absolute; z-index: -1; background: #3387FF; width: 100%; height: 4px; top: 50%; right: -50px; transform: translateY(-50%); }
.roadmap-wrap .left .year-row:last-child .year-label::before { display: none; }
.roadmap-wrap .left .year-label .yr { font-weight: 600; font-size: 15px; line-height: 150%; letter-spacing: -0.025em; text-align: center; color: #fff; }
.roadmap-wrap .left .year-label .yr-name { font-weight: 600; font-size: 20px; line-height: 150%; letter-spacing: -0.025em; text-align: center; color: #fff; }
.roadmap-wrap .left .subjects-area {border: 1px solid #1A1A1A33; border-radius: 12px; display: flex; flex-direction: column; justify-content: center; padding: 10px; background: #fff;gap: 8px;}
.roadmap-wrap .left .subjects-area ul.subjects-row { list-style: none; display: flex; flex-wrap: wrap; gap: 10px 12px; }
.roadmap-wrap .left .subjects-area li.pill { border-radius: 8px; padding: 12px; font-weight: 400; font-size: 18px; line-height: 150%; letter-spacing: -0.025em; white-space: nowrap; color: #555555; background: #CCE1FF; border: 1px solid #0000000D; }
.roadmap-wrap .left .subjects-area li.pill-yellow { background: #FFF8E1; }
.roadmap-wrap .left .subjects-area li.pill-bold { font-weight: 700; color: #000A1A; }
.roadmap-wrap .left .legend { display: flex; align-items: center; gap: 20px; }
.roadmap-wrap .left .legend-item { display: flex; align-items: center; gap: 6px; }
.roadmap-wrap .left .legend-item p { font-weight: 600; font-size: 18px; line-height: 150%; letter-spacing: -0.025em; color: #555555; display: flex; align-items: center; gap: 16px; }
.roadmap-wrap .left .legend-item p::before { content: ""; width: 32px; height: 32px; border: 1px solid #00000033; display: inline-block; border-radius: 50%; flex-shrink: 0; }
.roadmap-wrap .left .legend-item:first-child p::before { background: #CCE1FF; }
.roadmap-wrap .left .legend-item:last-child p::before { background: #FFF8E1; }
.flow-arrow-wrap { flex-shrink: 0; display: flex; align-items: center; justify-content: center; }
.flow-arrow { width: 56px; height: 56px; object-fit: contain; display: block; }

.roadmap-wrap .right .career-header { background: #4a5568; color: #fff; font-weight: 400; font-size: 18px; line-height: 150%; letter-spacing: -0.025em; text-align: center; border-radius: 8px; padding: 4px 0; margin: 0 0 20px; }
.roadmap-wrap .right .career-col { list-style: none; width: 100%; display: flex; flex-direction: column; gap: 20px; padding: 30px; border: 1px solid #00000033; border-radius: 16px; box-sizing: border-box; }
.roadmap-wrap .right .career-card { background: #E5F0FF; color: #0054CC; font-weight: 600; font-size: 18px; line-height: 150%; letter-spacing: -0.025em; border-radius: 8px; padding: 32px 15px; text-align: center; min-height: 95px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; }


@media (min-width: 1921px) {
	.intro-list > li .item::after {right: -50px;}
}

@media (max-width: 1200px) {
	.roadmap-wrap {flex-direction: column;}
	.roadmap-wrap .flow-arrow-wrap img {transform: rotate(90deg);}
	.roadmap-wrap .right {max-width: unset;}
	.roadmap-wrap .left {width: 100%;}
	.roadmap-wrap .left .subjects-area {flex: 1;}
	.roadmap-wrap .left .subjects-area li.pill {flex: 1;}
}


@media (max-width: 1024px) {
	.about-box {flex-direction:column;gap: 40px;}
	.info-list {flex-direction: column;gap: 20px;padding: 0 0 20px;}
	.features-list {--gap: 24px;flex-wrap: wrap;gap: var(--gap);}
	.features-list > li {width: calc((100% - var(--gap)) / 2);padding: 24px;}
	.features-list > li .heading {display: flex;align-items: center;gap: 8px;padding: 0 0 20px;}
	.features-list > li .img {margin: 0;width: 28px;height: 28px;}
	.features-list > li .title {padding: 0;}

	.intro-list {flex-direction: column;margin: 0;gap: 0;}
	.intro-list > li {width: 100%;padding: 0 0 98px;}
	.intro-list > li:last-child {padding: 0;}
	.intro-list > li .item {height: auto;padding: 24px 20px;background: #fff;box-shadow: 0px 0px 20px rgba(187, 139, 255, 0.24);border-radius: 16px;}
	.intro-list > li .item-wrap {align-items: flex-start;justify-content: flex-start;background: transparent;box-shadow: none;padding: 0;}
	.intro-list > li .img {width: 24px;height: 24px;margin: 0;}
	.intro-list .txt01 {font-size: 18px;}
	.intro-list .txt02 {font-size: 22px;}
	.intro-list > li .item::before {width: 32px;height: 89px;}
	.intro-list > li:nth-child(odd) .item::before {top:100%;background: url(../img/content/ellipse-decor01-mo.png) no-repeat center / contain;}
	.intro-list > li:nth-child(even) .item::before {top:100%;background: url(../img/content/ellipse-decor02-mo.png) no-repeat center / contain;}
	.intro-list > li:last-child .item::before,
	.intro-list > li .item::after,
	.intro-list > li .item-detail::before,
	.intro-list .item-detail {display: none;}


	.roadmap-wrap .left .year-label .yr-name {font-size: 18px;}
	.roadmap-wrap .left .subjects-area li.pill {font-size: 15px;}
}

@media (max-width: 768px) {
	.features-list {flex-direction: column;gap: 20px;}
	.features-list > li {width: 100%;}

	.h4-tit01 {font-weight: 600;font-size: 18px;line-height: 150%;gap: 5px;flex-wrap: wrap;padding: 0 0 32px;}
	.h4-tit01 > span {font-size: 13px;}

	.roadmap-wrap .left {flex-direction: column-reverse;gap: 16px;}
	.roadmap-wrap .left .legend {border: 1px solid #0000000D;border-radius: 8px;padding: 8px 10px;gap: 10px 40px;flex-wrap: wrap;}
	.roadmap-wrap .left .legend-item p::before {width: 20px;height: 20px;}
	.roadmap-wrap .left .legend-item p {font-size: 13px;}

	.roadmap-wrap .left .year-label::before {display: none;}
	.roadmap-wrap .left .year-label::after {display: none;}
	.roadmap-wrap .left .year-row {flex-direction: column;gap: 24px;}

	.roadmap-wrap .left .year-label-wrap {display: block;}
	.roadmap-wrap .left .year-label {width: auto;flex-direction: unset;background: unset;justify-content: flex-start;min-height: unset;padding: 0;gap: 10px;}
	.roadmap-wrap .left .year-label .yr-name br {display: none;}
	.roadmap-wrap .left .year-label .yr {font-size: 14px;color: #1F4E79;}
	.roadmap-wrap .left .year-label .yr-name {color: #1F4E79;font-weight: 600;}
	.roadmap-wrap .left .subjects-area {border: 0;padding: 0;}
	.roadmap-wrap .left .subjects-area li.pill {border-radius: 40px;flex: unset;}
	.roadmap-wrap .left .subjects-area ul.subjects-row {gap: 8px;}
	.curriculum-col {gap: 60px;}

	.roadmap-wrap .right .career-col {padding: 0;border: 0;border-radius: 0;}
	.roadmap-wrap .right .career-card {padding: 15px;min-height: unset;}
}