@charset "euc-kr";
@import url(font.css);

/* lecture landing.css
------------------------------------------------------ */
.lecture-landing {
	background: #ebf5f7;
	padding: 0;
}
.lecture-landing h4.title {
	font-family: 'Paperlogy';
	font-weight: 800;
	font-size: 3.8rem;
	color: var(--ged-color-gray9);
	margin: 0;
}
.lecture-landing h4.title + p {
	font-size: 1.7rem;
	font-weight: 500;
	color: var(--ged-color-gray7);
	line-height: 1.4;
	margin: 2rem 0 0;
}
.lecture-landing h4.title u {
	text-decoration: none;
	border-bottom: 2px solid;
}
.lecture-landing p > b {
	font-weight: 800;
}
.lecture-landing .content {
	margin: 8rem 0 0;
}
.lecture-landing .card {
	background: #fff;
	padding: 6rem;
	border-radius: 30px;
}
.lecture-landing .card-title {
	font-size: 2.8rem;
	font-weight: 800;
	color: var(--ged-color-gray9);
	letter-spacing: -0.02em;
	text-align: left;
}
.lecture-landing section {
	padding: 12rem 0;
}

.intro {
	text-align: center;
	/* background: linear-gradient(180deg, #fff 85%, transparent); */
	background: #fff;
	padding: 5rem 0 10rem;
}
body:has(section.review) .intro { background: #fff; }
.intro .intro-title-sub {
	color: var(--ged-color-blue4);
	font-size: 2.3rem;
	font-weight: 800;
}
.intro .intro-title {
	font-family: 'Paperlogy';
	font-size: 5.8em;
	font-weight: 900;
	color: var(--ged-color-gray9);
	text-shadow: 0 30px 50px #fff;
	position: relative;
	z-index: 1;
	margin: 0.2em 0;
}
.intro .intro-bg {
	background-color: var(--ged-color-gray3);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	width: 100%; height: 58rem;
}
.intro .intro-bg .container {
	height: 100%;
	position: relative;
}
.intro .intro-bg img {
	position: absolute; left: 0; bottom: 0;
}
.intro .intro-text {
	background: linear-gradient(180deg, #fff 80%, transparent);
	border-radius: 30rem;
	padding: 1.4em 1em 2.4em;
	box-shadow: 0 20px 60px rgba(0,0,0,0.06);
	position: relative;
	z-index: 1;
	width: 85%;
	margin: 0 auto;
	margin-top: -8rem;
}
.intro .intro-text p {
	font-size: 4.2rem;
	font-weight: 700;
	color: var(--ged-color-gray9);
	display: flex; align-items: center; justify-content: center;
}
.intro .intro-text p strong:first-child span {
	font-weight: 300;
	display: inline-block;
	margin: 0 0.2em;
}
.intro .intro-text p strong:last-child {
	color: red;
	display: inline-flex; align-items: center; justify-content: center;
}
.intro .intro-text p strong:last-child span {
	font-size: 1.5em;
	vertical-align: sub;
	margin-left: 0.4em;
}
.intro .intro-text p:last-child {
	font-size: 2.7rem;
	font-weight: 600;
	border: 2px solid;
	width: fit-content;
	margin: 0 auto;
	padding: 0.5em 1em 0.5em 0.8em;
	border-radius: 10em;
}
.intro .intro-text p:last-child em {
	font-size: 0.9em;
	display: inline-flex;
	align-items: center; justify-content: center;
	border-radius: 100%;
	background: var(--ged-color-gray9);
	font-weight: 300;
	color: #fff;
	width: 3.8rem; height: 3.8rem;
	margin-right: 0.4em;
}
.intro .intro-text p:last-child b {
	color: red;
}

/* 수강후기 / 자격증 발급현황
------------------------------------------------------ */
section.review { background: #fff; }
section.review .content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 4rem;
}
section.review .review-slider {
	display: flex;
	flex-direction: column;
	flex: 1 1 65%;
	min-width: 0;
	position: relative;
	padding: 0 7rem;
}
section.review .review-track {
	flex: 1 1 auto;
}
/* owl-carousel 높이 채우기 + 카드 높이 균일 */
section.review .review-track .owl-stage-outer,
section.review .review-track .owl-stage {
	height: 100%;
}
section.review .review-track .owl-stage {
	display: flex;
}
section.review .review-track .owl-item {
	display: flex;
}
section.review .review-card {
	box-sizing: border-box;
	width: 100%; min-height: 30rem;
	background: var(--ged-color-blue0);
	border-radius: 20px;
	padding: 3rem 2.6rem;
	display: flex;
	flex-direction: column;
}
section.review .review-hd {
	flex: unset;
	display: unset;
	padding: 2rem 0 0; margin: 2rem 0 0;
	border-bottom: none;
	border-top: 1px dashed var(--ged-color-gray2);
	margin-top: auto;
}
section.review .rv-title {
	font-size: 1.9rem;
	font-weight: 800;
	color: var(--ged-color-gray9);
	line-height: 1.3;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
section.review .rv-meta {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-top: 0.8rem;
	font-size: 1.3rem;
	font-weight: 600;
	color: var(--ged-color-gray6);
}
section.review .rv-meta .rv-name {
	font-weight: 700;
	color: var(--ged-color-blue4);
}
section.review .rv-meta .rv-date {
	position: relative;
	padding-left: 2rem;
}
section.review .rv-meta .rv-date::before {
	content: '';
	position: absolute;
	left: 0; top: 50%;
	transform: translateY(-50%);
	width: 1px; height: 1.1rem;
	background: var(--ged-color-gray2);
}
section.review .review-text {
	margin: 0;
	font-size: 1.8rem;
	font-weight: 600;
	color: var(--ged-color-gray7);
	line-height: 1.6;
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
section.review .rv-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 5rem; height: 5rem;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 10px 30px rgba(0,0,0,0.12);
	cursor: pointer;
	transition: 0.2s;
	z-index: 2;
}
section.review .rv-arrow::before {
	content: '';
	position: absolute;
	top: 50%; left: 50%;
	width: 1.2rem; height: 1.2rem;
	border-top: 2px solid var(--ged-color-gray7);
	border-right: 2px solid var(--ged-color-gray7);
}
section.review .rv-prev { left: 0; }
section.review .rv-prev::before { transform: translate(-30%, -50%) rotate(-135deg); }
section.review .rv-next { right: 0; }
section.review .rv-next::before { transform: translate(-70%, -50%) rotate(45deg); }
section.review .review-more {
	align-self: center;
	margin-top: 3rem;
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	padding: 1.4rem 3rem;
	font-size: 1.6rem;
	font-weight: 700;
	color: var(--ged-color-gray9);
	background: #fff;
	border: 1px solid var(--ged-color-gray2);
	border-radius: 10rem;
}

section.review .issue-board {
	display: flex;
	flex-direction: column;
	flex: 0 0 31%;
	min-width: 30rem; min-height: 46rem;
	padding: 3rem 2.6rem;
	background: linear-gradient(155deg, #0a2a5c 0%, var(--ged-color-gray9) 100%);
	border-radius: 24px;
	color: #fff;
}
section.review .issue-title {
	margin: 0 0 3rem;
	font-size: 2.1rem;
	font-weight: 800;
	text-align: center;
}
section.review .issue-title::before {
	content: '';
	display: inline-block;
	width: 0.9rem; height: 0.9rem;
	margin-right: 0.6rem;
	border-radius: 50%;
	background: #ff4b4b;
	vertical-align: middle;
	animation: liveBlink 1.2s infinite;
}
@keyframes liveBlink { 0%, 100% { opacity: 1; } 50% { opacity: 0.2; } }
section.review .issue-head,
section.review .issue-list li {
	display: flex;
	align-items: center;
}
section.review .issue-head {
	padding: 0 0.6rem 1.2rem;
	font-size: 1.4rem;
	font-weight: 700;
	color: rgba(255,255,255,0.5);
	border-bottom: 1px solid rgba(255,255,255,0.15);
}
section.review .issue-roll {
	flex: 1 1 auto;
	height: 26rem;
	overflow: hidden;
}
section.review .issue-list {
	animation: issueRoll 18s linear infinite;
}
section.review .issue-roll:hover .issue-list {
	animation-play-state: paused;
}
section.review .issue-list li {
	padding: 1.5rem 0.6rem;
	font-size: 1.5rem;
	font-weight: 600;
	border-bottom: 1px solid rgba(255,255,255,0.08);
}
section.review .ih-course, section.review .ic-course { flex: 1 1 50%; min-width: 0; }
section.review .ih-name, section.review .ic-name { flex: 0 0 22%; text-align: center; }
section.review .ih-state, section.review .ic-state { flex: 0 0 28%; text-align: center; }
section.review .ic-course {
	padding-right: 1rem;
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
section.review .ic-name { color: rgba(255,255,255,0.85); }
section.review .ic-state b {
	display: inline-block;
	padding: 0.5rem 1.2rem;
	font-size: 1.3rem;
	font-weight: 700;
	color: #fff;
	background: linear-gradient(90deg, var(--ged-color-red4), var(--ged-color-red5));
	border-radius: 4px;
}
@keyframes issueRoll {
	from { transform: translateY(0); }
	to   { transform: translateY(-50%); }
}

@media all and (max-width:1023px) {
	section.review .review-slider { flex: 1 1 100%; padding: 0 6rem; }
	section.review .issue-board { flex: 1 1 100%; }
}
@media all and (max-width:767px) {
	section.review .content { gap: 3rem; }
	section.review .review-slider { padding: 0; }
	section.review .review-card, section.review .issue-board { min-height: unset; }
	section.review .rv-arrow { display: none; }
	section.review .issue-roll { height: 28rem; }
}

section.reason .content, section.reason .reason-cards {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 2em;
}
section.reason .card, section.reason .reason-cards .card {
	flex: 0 0 47%;
	max-width: 58rem;
	font-size: 1.8rem;
	font-weight: 600;
	color: var(--ged-color-gray7);
	line-height: 1.8;
}
section.reason .card.act {
	flex: 1 0 100%;
	max-width: calc(58rem * 2 + 2em);
	background-color: #fff;
	background-image: url('/images/sub/lecture/lec_field_bg.png');
	background-repeat: no-repeat;
	background-position: bottom 150% right -15%;
}
section.reason .card h5, section.reason .reason-cards .card h5 {
	padding: 0 0 0.6em;
	border-bottom: 2px dashed var(--ged-color-gray2);
	margin: 0 0 0.6em;
}
section.reason .card.act ul {
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
}
section.reason .card.act ul > li::before {
	content: '';
	background-image: url('/images/sub/lecture/lec_field_icon.png');
	background-repeat: no-repeat;
	background-position: center center;
	display: inline-block;
	width: 2em; height: 2em;
	background-size: contain;
}
section.reason .card.act ul > li {
	flex: 0 0 40%;
	font-size: 1.1em;
	font-weight: 800;
	color: var(--ged-color-gray9);
	background: var(--ged-color-green1);
	display: flex;
	align-items: center;
	gap: 0.8em;
	padding: 0.8em 0.8em;
	border-radius: 10rem;
	white-space: nowrap;
}
section.reason .card.act ul > li:nth-child(even) {
	background: var(--ged-color-blue2);
}

section.reason .reason-video {
	flex: 1 0 100%;
	max-width: calc(58rem * 2 + 2em);
	margin: 0 auto;
}
section.reason .reason-video .video-wrap {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
section.reason .reason-video .video-wrap iframe,
section.reason .reason-video .video-wrap video {
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	border: 0;
}

section.reason .reason-cards {
	flex: 1 0 100%;
	/* max-width: calc(58rem * 2 + 2em); */
	margin: 4rem auto 0;
}

section.course-info {
	background: #fff;
}
section.course-info .img-wrap {
	background-color: var(--ged-color-blue0);
	border-radius: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 33rem;
	overflow: hidden;
	position: relative;
}
section.course-info .img-wrap h5 {
	color: var(--ged-color-gray9);
	font-size: 3.4rem;
	font-weight: 800;
	position: absolute;
	top: 1.8em; left: 2em;
}
section.course-info .img-wrap img {
	filter: drop-shadow(20px 80px 100px #06b8ea9c);
	margin-left: 10em;
}
section.course-info .img-wrap::before {
	content: '';
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	background-repeat: no-repeat;
	filter: blur(5px);
}
section.course-info .qc-detail .img-wrap::before {
	background-image: url('/images/sub/lecture/lec_qcinfo_img2.png');
	background-position: center right calc(50% - 22em);
}
section.course-info .lec-detail .img-wrap::before {
	background-image: url('/images/sub/lecture/lec_classinfo_img2.png');
	background-position: bottom 3em right calc(50% - 20em);
}
section.course-info .content > div {
	margin: 0 0 5em;
}
section.course-info .content > div:last-child {
	margin: 0;
}
section.course-info ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	position: relative;
}
section.course-info ul > li {
	flex: 0 0 23%;
	height: fit-content;
	background: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.8em;
	box-shadow: 0 10px 30px rgba(0,0,0,0.05);
	border-radius: 20px;
	padding: 2.4em 2em 2.8em;
	word-break: keep-all;
	text-align: center;
}
section.course-info ul > li small {
	color: var(--ged-color-gray5);
	font-size: 1.5rem;
	font-weight: 600;
}
section.course-info ul > li p {
	color: var(--ged-color-gray8);
	font-size: 2.3rem;
	font-weight: 800;
}
section.course-info ul > li img {
	background: #fff;
	border-radius: 100%;
	border: 3px solid #fff;
	overflow: hidden;
}
section.course-info .qc-detail ul {
	margin: -3rem 0 0;
}
section.course-info .lec-detail ul {
	margin: -1rem 0 0;
}
section.course-info .qc-detail ul > li:first-child,
section.course-info .lec-detail ul > li:last-child {
	background: url('/images/sub/lecture/lec_info_bg.png') no-repeat center center;
	background-size: cover;
	padding: 2.4em 3em 2.8em;
}
section.course-info .qc-detail ul > li:first-child small,
section.course-info .lec-detail ul > li:last-child small {
	color: #fff;
	opacity: 0.8;
}
section.course-info .qc-detail ul > li:first-child p,
section.course-info .lec-detail ul > li:last-child p {
	color: #fff;
}

section.video-curri .container {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
}
section.video-curri .sample-video {
	flex: 0 0 58%;
}
section.video-curri .sample-video .video-wrap {
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding-top: 56.25%;
}
section.video-curri .sample-video video {
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
}
.video-play-btn {
	width: 8rem;
	height: 8rem;
	border-radius: 50%;
	background: rgba(0,0,0,0.5);
	position: absolute;
	top: 50%;
	left: 50%; transform: translate(-50%, -50%);
	transition: 0.3s;
}
.video-play-btn::before {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-40%, -50%);
	border-style: solid;
	border-width: 14px 0 14px 20px;
	border-color: transparent transparent transparent #fff;
}
.video-play-btn:hover {
	transform: translate(-50%, -50%) scale(1.1);
	background: none;
}
section.video-curri {
	background: #fff;
}
section.video-curri .curriculum {
	flex: 0 0 36%;
}
section.video-curri .curriculum .content {
	position: relative;
}
section.video-curri .curriculum .content::before,
section.video-curri .curriculum .content::after {
	content: '';
	position: absolute;
	display: inline-block;
}
section.video-curri .curriculum .content::before {
	background: url('/images/sub/lecture/lec_cur_icon.png') no-repeat center center;
	background-size: contain;
	width: 6.3rem; height: 6.3rem;
	top: 1em;
	right: calc(100% - 2rem);
	z-index: 3;
	filter: drop-shadow(4px 4px 8px rgba(0,0,0,0.2));
}
section.video-curri .curriculum .content::after {
	background: url('/images/sub/lecture/lec_cur_img.png') no-repeat center center;
	width: 100%; height: 30rem;
	right: calc(100% - 50%);
	bottom: calc(100% - 15rem);
	z-index: 0;
}
section.video-curri .curriculum .cr-wrap {
	background: #fff;
	border: 1px solid var(--ged-color-gray2);
	padding: 0 2em 1.8em;
	border-radius: 30px;
	max-height: 50rem;
	overflow-y: auto;
	position: relative;
	z-index: 1;
}
section.video-curri .curriculum .cr-wrap li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	border-bottom: 1px dashed var(--ged-color-gray3);
	padding: 1.8em 0;
}
section.video-curri .curriculum .cr-wrap li h5 {
	flex: 1 0 auto;
	max-width: calc(100% - 6rem);
	font-size: 1.8rem;
	font-weight: 600;
	color: var(--ged-color-gray8);
}
section.video-curri .curriculum .cr-wrap li small {
	flex: 0 0 auto;
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1.2;
	color: var(--ged-color-gray3);
}
section.video-curri .curriculum .cr-wrap li small::before {
	content: '\f211';
	font-weight: 300;
	vertical-align: middle;
	margin-right: 0.4em;
}
section.video-curri .curriculum .more-btn {
	display: none;
	cursor: pointer;
}
section.video-curri .curriculum .cr-wrap li:first-child {
	padding: 2em 0 1.8em;
	position: relative;
}
section.video-curri .curriculum .cr-wrap li:first-child::after {
	content: '';
	position: absolute;
	top: 0; left: -2em;
	width: calc(100% + 4em);
	height: 100%;
	background: var(--ged-color-green1);
	z-index: -1;
}
section.video-curri .curriculum .cr-wrap li:first-child h5 {
	font-weight: 800;
	color: var(--ged-color-gray9);
}
section.video-curri .curriculum .cr-wrap li:first-child small {
	color: var(--ged-color-green5);
}
.cr-wrap {
	scrollbar-width: thin;
	scrollbar-color: rgba(0,0,0,0.4) transparent;
}
.cr-wrap::-webkit-scrollbar {
	width: 6px;
}
.cr-wrap::-webkit-scrollbar-thumb {
	background: rgba(0,0,0,0.4);
	border-radius: 10px;
}
.cr-wrap::-webkit-scrollbar-track {
	background: transparent;
}

section.resume-entry {
	padding: 12rem 0 24rem;
}
section.resume-entry .content {
	position: relative;
	z-index: 0;
}
section.resume-entry .content::before {
	content: '';
	position: absolute;
	bottom: -12%; left: 0;
	width: 100%; height: 50%;
	background: linear-gradient(360deg, #06b8ea38, transparent);
	z-index: -1;
}
section.resume-entry .resume-wrap {
	background: #fff;
	width: 90rem;
	margin: 0 auto;
	padding: 6rem 0 0;
}
section.resume-entry h5 {
	font-size: 3.4rem;
	font-weight: 800;
	color: var(--ged-color-gray8);
	letter-spacing: 1em;
	text-align: center;
}
section.resume-entry .resume {
	display: flex;
	flex-wrap: wrap;
	padding: 4rem 6rem 0;
	position: relative;
}
section.resume-entry .resume .img-wrap {
	flex: 0 0 auto;
	width: 16.5rem;
	border: 1px solid var(--ged-color-gray2);
	display: flex;
	align-items: center;
	justify-content: center;
}
section.resume-entry .resume .rs-table {
	flex: 0 0 auto;
	width: calc(100% - 16.5rem);
	border: 1px solid var(--ged-color-gray2);
	border-left: none;
}
section.resume-entry .resume .tr-th {
	background: var(--ged-color-gray0);
	text-align: center;
	font-size: 1.5rem;
	font-weight: 800;
	color: var(--ged-color-gray7);
	letter-spacing: 1em;
	height: 5.4rem;
	line-height: 5.4rem;
	border-bottom: 1px solid var(--ged-color-gray2);
}
section.resume-entry .resume .tr-wrap {
	display: flex;
	align-items: center;
}
section.resume-entry .resume .tr-wrap .tr-group {
	width: 50%;
}
section.resume-entry .resume .td-group {
	width: calc(100% - 12rem);
}
section.resume-entry .resume .td-group .td {
	width: 100%;
}
section.resume-entry .resume .tr {
	display: flex;
	align-items: center;
}
section.resume-entry .resume .th,
section.resume-entry .resume .td {
	font-size: 1.6rem;
	font-weight: 500;
	height: 5.4rem;
	line-height: 5.4rem;
	padding: 0 1em;
	border-left: 1px solid var(--ged-color-gray2);
	border-top: 1px solid var(--ged-color-gray2);
}
section.resume-entry .resume .th {
	width: 12rem;
	color: var(--ged-color-gray6);
	text-align: center;
}
section.resume-entry .resume .td {
	width: calc(100% - 12rem);
	color: var(--ged-color-gray7);
}
section.resume-entry .resume .th-2 {
	letter-spacing: 1.4em;
	padding: 0;
	padding-left: 1.4em;
	border-left: none;
}
section.resume-entry .resume .bdt-none {
	border-top: none;
}
section.resume-entry .rs-table:nth-child(3) {
	width: 100% !important;
	border-top: none;
	border-left: 1px solid var(--ged-color-gray2);
	border-bottom: none;
}
section.resume-entry .resume .rs-table-more {
	position: absolute;
	top: 100%;
	left: 50%; transform: translatex(-50%);
	width: 120rem;
	border: 3px solid var(--ged-color-blue4);
}
section.resume-entry .resume .rs-table-more .tr {
	flex: auto;
	flex-direction: column;
	background: #fff;
}
section.resume-entry .resume .rs-table-more .tr .th {
	width: 100%;
	height: 6rem; line-height: 6rem;
	font-size: 1.8rem;
	font-weight: 600;
}
section.resume-entry .resume .rs-table-more .tr .td {
	width: 100%;
	height: 6rem; line-height: 5.9rem;
	text-align: center;
	font-size: 2.1rem;
	font-weight: 800;
	color: var(--ged-color-gray8);
}
section.resume-entry .resume .rs-table-more .tr:first-child {
	flex: 0 0 25%;
}

section.overcome {
	background-color: black;
	background-image: url('/images/sub/lecture/lec_oc_bg.png');
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain;
}
section.overcome .no-fee-time {
	display: flex;
	align-items: center;
	justify-content: center;
}
section.overcome .no-fee-time p {
	font-size: 2.1rem;
	font-weight: 800;
	color: var(--ged-color-gray5);
	text-align: center;
	margin: 1.4em 0 0;
}
section.overcome .no-fee-time p > b {
	color: red;
}
section.overcome .no-fee-time .plus {
	background: black;
	color: #fff;
	font-size: 2em;
	font-weight: 300;
	width: 1.4em; height: 1.4em;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 100%;
	margin: 0 1.4em;
}
section.overcome .line {
	text-align: center;
	padding: 20em 0 2em;
	position: relative;
}
section.overcome .line::before {
	content: '';
	position: absolute;
	top: 0; left: 50%; transform: translatex(-50%);
	width: 2px;
	height: calc(100% - 7em);
	border-right-width: 2px;
	border-right-style: dashed;
	border-right-color: var(--ged-color-gray7);
}
section.overcome .line img {
	filter: drop-shadow(0 10px 20px var(--ged-color-blue4));
}
section.overcome .title {
	color: #fff;
	text-align: center;
	font-size: 5.2rem;
}
section.overcome .title > u { color: red; }
section.overcome .card-wrap {
	display: flex;
	justify-content: space-between;
}
section.overcome .card-wrap .card {
	flex: 0 0 31%;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 6rem 1rem;
	text-align: center;
	height: 58rem;
}
section.overcome .card-wrap .card-title {
	word-break: keep-all;
}
section.overcome .card-wrap .card-title + p {
	font-size: 1.8rem;
	font-weight: 600;
	color: var(--ged-color-gray8);
	line-height: 1.6;
	margin: 2em 0 0;
}
section.overcome .card-wrap .card img {
	margin-top: auto;
	filter: drop-shadow(0 20px 8px rgba(0,0,0,0.2));
	transition: 0.4s;
}
section.overcome .card-wrap .card:nth-child(1) {
	background: linear-gradient(180deg, #fff 40%, #03ffff);
}
section.overcome .card-wrap .card:nth-child(2) {
	background: linear-gradient(180deg, #fff 40%, #7fff6a);
}
section.overcome .card-wrap .card:nth-child(3) {
	background: linear-gradient(180deg, #fff 40%, #00ffcc);
}
section.overcome .card-wrap .card:nth-child(1) .card-title { color: #01b4b4; }
section.overcome .card-wrap .card:nth-child(2) .card-title { color: #4ec43a; }
section.overcome .card-wrap .card:nth-child(3) .card-title { color: #15cba7; }
section.overcome .card-wrap .card:nth-child(3) img {
	margin-bottom: 2%;
}
section.overcome .card-wrap .card:hover img {
	transform: translatey(-2em);
	filter: drop-shadow(0 20px 30px rgba(0,0,0,0.3));
}
section.howto .step-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 3em;
	position: relative;
	z-index: 0;
}
section.howto .step-wrap::before {
	content: '';
	position: absolute;
	width: 100%; height: 100%;
	background: url('/images/sub/lecture/lec_step_bg.png') no-repeat center center;
	z-index: -1;
}
section.howto .step-wrap .step {
	background: #fff;
	text-align: center;
	width: 30rem; height: 30rem;
	border-radius: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
section.howto .step-wrap .step em {
	font-size: 3em;
	font-weight: 900;
	color: var(--ged-color-blue4);
	border-bottom: 3px solid var(--ged-color-blue4);
}
section.howto .step-wrap .step h5 {
	font-size: 3.2rem;
	font-weight: 800;
	color: var(--ged-color-gray9);
	margin: 0.5em 0 0.6em;
}
section.howto .step-wrap .step h5 + p {
	font-size: 1.8rem;
	font-weight: 600;
	color: var(--ged-color-gray5);
}
section.howto .step-wrap .step.active {
	background: #000;
}
section.howto .step-wrap .step.active h5 {
	color: #fff;
}
section.section-cta {
	background: #d3e4e7;
}
section.section-cta .cta-bar {
	background-color: black;
	background-image: url('/images/sub/lecture/lec_go_bg.png');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	position: fixed;
	left: 50%; transform: translatex(-50%);
	bottom: 1em;
	width: 100%; max-width: 140rem;
	height: 13rem;
	z-index: 99;
	transition: transform 0.4s ease;
	will-change: transform;

	display: flex;
	align-items: center; justify-content: center;
	border-radius: 30px;
	overflow: hidden;
	gap: 3em;
	box-shadow: 0 20px 40px rgba(0,0,0,0.3);
}
section.section-cta .cta-bar img {
	position: absolute;
	top: 1em;
	left: 10%;
}
section.section-cta .cta-bar p {
	font-size: 2.3rem;
	color: #fff;
	margin-left: 10em;
}
section.section-cta .cta-bar .cta-btn {
	background-image: url('/images/sub/lecture/lec_go_btn.png');
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;

	font-size: 2.3rem;
	font-weight: 800;
	color: #fff;
	padding: 2em;
}
section.section-cta .cta-bar.stop {
	position: unset;
	transform: unset;
	height: 18rem;
}
section.section-cta .cta-bar.stop p {
	font-size: 2.8rem;
}
section.section-cta .cta-bar.stop .cta-btn {
	font-size: 3.2rem;
}


/* ------------------------------------------------------

	@tbm tablet + mobile (max-width:1023px)

------------------------------------------------------ */
@media all and (max-width:1023px) {
	.lecture-landing section {
		padding: 8rem 0;
	}
	.lecture-landing .content {
		margin: 6rem 0 0;
	}
	.lecture-landing .card {
		padding: 5rem;
	}
	section.reason .card, section.reason .reason-cards .card {
		flex: 0 0 auto;
		width: 100%; max-width: unset;
	}
	section.course-info ul {
		gap: 0.8em;
	}
	section.course-info ul > li {
		flex: 0 0 48%;
		width: 48%;
		padding: 1.8em 0.4em;
	}
	section.course-info .lec-detail ul {
		margin: 1em 0 0;
	}
	section.course-info ul > li p {
		font-size: 2.1rem;
	}

	section.video-curri .sample-video {
		flex: 1 0 100%;
	}
	section.video-curri .curriculum {
		flex: 1 0 100%;
		margin: 6rem 0 0;
	}
	section.video-curri .curriculum .content {
		width: 94%;
		margin: 4rem auto 0;
	}
	section.video-curri .curriculum .cr-wrap {
		overflow: hidden;
	}
	section.video-curri .curriculum .cr-wrap::after {
		content: '';
		position: absolute;
		bottom: 0; left: 0;
		width: 100%;
		height: 30rem;
		background: linear-gradient(transparent, #fff 85%);
	}
	section.video-curri .curriculum .cr-wrap.open {
		max-height: none;
	}
	section.video-curri .curriculum .cr-wrap.open::after {
		display: none;
	}
	section.video-curri .curriculum .cr-wrap li:last-child {
		margin: 0 0 4em;
	}
	section.video-curri .curriculum .more-btn {
		position: absolute;
		bottom: 1em; left: 50%; transform: translatex(-50%);
		display: block;
		margin: 1em 0 0;
		text-align: center;
		background: #4d5456;
		color: #fff;
		width: 90%;
		padding: 1em;
		border-radius: 10px;
		z-index: 2;
	}
	section.video-curri .curriculum .cr-wrap li {
		padding: 1.4em 0;
	}
	section.video-curri .curriculum .cr-wrap li:first-child {
		padding: 1.8em 0 1.4em;
	}
	section.video-curri .curriculum .cr-wrap li h5 {
		font-size: 1.6rem;
	}
	section.video-curri .curriculum .content::before {
		width: 5rem; height: 5rem;
	}

	section.resume-entry h5 {
		margin-left: 1em;
		font-size: 2.8rem;
	}
	section.resume-entry .resume-wrap {
		width: 92%;
		padding: 4rem 0 0;
	}
	section.resume-entry .resume {
		padding: 3rem 4rem;
	}
	section.resume-entry .resume .rs-table .tr-th + .tr-wrap .tr-group:first-child .tr {
		border-bottom: 1px solid var(--ged-color-gray3);
	}
	section.resume-entry .resume .tr-wrap {
		display: block;
	}
	section.resume-entry .resume .tr-wrap .tr-group {
		width: 100%;
	}
	section.resume-entry .resume .rs-table-more {
		width: 100%;
		position: unset;
		transform: unset;
	}
	section.resume-entry .resume .rs-table-more .tr {
		flex-direction: row;
	}
	section.resume-entry .resume .rs-table-more .tr .th {
		flex: 0 0 12rem;
	}
	section.resume-entry .resume .rs-table-more .tr .td {
		text-align: left;
	}

	section.overcome .card-wrap {
		gap: 20px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
		-ms-overflow-style: none;
		scrollbar-width: none;
	}
	.card-wrap::-webkit-scrollbar {
		display: none;
	}
	section.overcome .card-wrap .card {
		flex: 0 0 60%;
		scroll-snap-align: center;
	}
	section.howto .step-wrap .step {
		width: 26rem; height: 26rem;
	}
	section.howto .step-wrap .step h5 {
		font-size: 2.8rem;
	}

	section.section-cta .cta-bar img {
		width: 18rem;
	}
}

/* ------------------------------------------------------

	@m mobile (max-width:767px)

------------------------------------------------------ */
@media all and (max-width:767px) {
	.lecture-landing section {
		padding: 6rem 0;
	}
	.lecture-landing .content {
		margin: 4rem 0 0;
	}
	.lecture-landing h4.title {
		font-size: 2.6rem;
		word-break: keep-all;
	}
	.lecture-landing h4.title + p {
		font-size: 1.5rem;
	}
	.lecture-landing .card {
		padding: 3.4rem;
	}
	.intro {
		padding: 5rem 0;
	}
	.intro .intro-title-sub {
		font-size: 1.6rem;
	}
	.intro .intro-title {
		font-size: 3em;
		margin: 1rem 0;
	}
	.intro .intro-bg {
		height: 36rem;
	}
	.intro .intro-bg .container {
		max-width: 100%;
	}
	.intro .intro-bg img {
		width: 14rem;
	}
	.intro .intro-text {
		width: 90%;
		border-radius: 40px;
		margin-top: -3rem;
	}
	.intro .intro-text p {
		font-size: 2.6rem;
	}
	.intro .intro-text p:last-child {
		font-size: 1.8rem;
		background-position: bottom 100% left -30%;
	}
	.intro .intro-text p:last-child em {
		width: 3rem; height: 3rem;
		margin-right: 0.2em;
	}
	.intro .intro-text p strong:last-child span {
		font-size: 1.4em;
		margin-left: 0.2em;
	}

	section.reason .content, section.reason .reason-cards {
		gap: 1.2em;
	}
	section.reason .card h5, section.reason .reason-cards .card h5 {
		font-size: 2.1rem;
		line-height: 1.3;
		border-bottom: 1px dashed var(--ged-color-gray2);
	}
	section.reason .card p, section.reason .reason-cards .card p {
		font-size: 1.6rem;
	}
	section.reason .card.act {
		background-position: bottom 180% left -20%;
		min-height: 40rem;
	}
	section.reason .card.act ul {
		gap: 0.4em;
	}
	section.reason .card.act ul > li {
		flex: 1 0 auto;
		width: 100%;
		font-size: 1em;
		padding: 0.4em 0.8em;
	}

	section.course-info .img-wrap {
		width: calc(100% + 8%);
		margin-left: -4%;
		border-radius: 0;
		flex-direction: column;
		z-index: 0;
		height: 28rem;
	}
	section.course-info .qc-detail .img-wrap::before {
		background-position: center right calc(50% - 15em);
		z-index: -1;
	}
	section.course-info .img-wrap h5 {
		position: unset;
		font-size: 2.3rem;
		margin: 0 0 1em;
	}
	section.course-info ul > li p {
		font-size: 1.8rem;
	}
	section.course-info .img-wrap img {
		width: 50%; height: 16rem;
		object-fit: contain;
		margin-left: 0;
	}
	section.course-info ul > li img {
		width: 1.8em;
		display: inline-block;
		border: 1px solid #fff;
		margin-right: 0.2em;
	}
	section.course-info .qc-detail ul {
		margin: 1em 0 0;
	}
	section.course-info .qc-detail ul > li:first-child, section.course-info .lec-detail ul > li:last-child {
		padding: 2em 1em;
	}
	section.course-info .lec-detail ul > li:last-child p {
		font-size: 1.7rem;
	}
	section.course-info .qc-detail ul > li:first-child { display: block; }
	section.course-info .qc-detail ul > li:first-child small {
		display: block;
		margin: 0 0 0.6em;
	}
	section.course-info .qc-detail ul > li:first-child p { display: inline-block; }
	section.course-info .lec-detail .img-wrap::before {
		background-position: center right calc(50% - 10em);
		z-index: -1;
	}

	section.resume-entry .resume {
		padding: 3rem 2rem;
	}
	section.resume-entry .resume .img-wrap {
		width: 10rem;
		padding: 0.4em;
	}
	section.resume-entry .resume .rs-table {
		width: calc(100% - 10rem);
	}
	section.resume-entry .resume .tr-th {
		height: 4.4rem; line-height: 4.4rem;
		font-size: 1.4rem;
	}
	section.resume-entry .resume .th {
		width: 8rem;
	}
	section.resume-entry .resume .td-group,
	section.resume-entry .resume .td  {
		width: calc(100% - 8rem);
	}
	section.resume-entry .resume .th, section.resume-entry .resume .td {
		height: 4.4rem; line-height: 4.4rem;
		font-size: 1.4rem;
	}
	section.resume-entry .resume .th-2 {
		letter-spacing: 0.8em;
		padding-left: 0.8em;
	}
	section.resume-entry .resume .rs-table-more .tr .th,
	section.resume-entry .resume .rs-table-more .tr .td {
		height: 5rem; line-height: 5rem;
		font-size: 1.6rem;
	}
	section.resume-entry .content::before {
		bottom: -9%;
	}

	section.overcome .no-fee-time img {
		width: 12rem;
	}
	section.overcome .no-fee-time p {
		font-size: 1.6rem;
	}
	section.overcome .no-fee-time .plus {
		font-size: 1.2em;
		margin: 0 0.8em;
	}
	section.overcome .line {
		padding: 14em 0 2em;
	}
	section.overcome .line::before {
		border-right-width: 1px;
	}
	section.overcome .title {
		font-size: 3.8rem;
	}
	section.overcome .card-wrap .card {
		flex: 0 0 84%;
		scroll-snap-align: center;
		height: 40rem;
		padding: 5rem 1rem;
	}
	section.overcome .card-wrap .card img {
		width: 13rem;
	}
	section.overcome .card-wrap .card-title {
		font-size: 2.3rem;
	}
	section.overcome .card-wrap .card-title + p {
		font-size: 1.6rem;
		margin: 1.5em 0 0;
	}

	section.howto .step-wrap {
		flex-direction: column;
		gap: 2em;
		padding: 5rem 0;
	}
	section.howto .step-wrap::before {
		transform: rotate(90deg);
		background-size: contain;
		width: calc(100% + 10rem);
	}
	section.howto .step-wrap .step {
		flex-direction: row;
		gap: 2em;
		width: 80%; height: unset;
		padding: 2.4rem 1rem;
		border-radius: 10rem;
	}
	section.howto .step-wrap .step > div {
		text-align: left;
	}
	section.howto .step-wrap .step em {
		font-size: 2.3em;
	}
	section.howto .step-wrap .step h5 {
		font-size: 2.3rem;
		margin: 0 0 0.4em;
	}
	section.howto .step-wrap .step h5 + p {
		font-size: 1.6rem;
	}

	section.section-cta .cta-bar {
		gap: 1em;
		bottom: 6.5rem;
		left: 0; transform: unset;
		border-radius: 0;
		padding: 0 2em;
		height: 10rem;
	}
	section.section-cta .cta-bar img {
		width: 9rem;
		left: 5%;
	}
	section.section-cta .cta-bar p {
		font-size: 1.6rem;
		margin-left: 5em;
		word-break: keep-all;
	}
	section.section-cta .cta-bar .cta-btn {
		font-size: 1.6rem;
		text-wrap: nowrap;
		padding: 2em 1em;
	}
	section.section-cta .cta-bar.stop {
		flex-direction: column;
		height: unset;
		border-radius: 30px;
		padding: 2em;
	}
	section.section-cta .cta-bar.stop img {
		position: unset;
		display: block;
	}
	section.section-cta .cta-bar.stop p {
		font-size: 2.1rem;
		margin: 0;
	}
	section.section-cta .cta-bar.stop .cta-btn {
		font-size: 2.3rem;
		padding: 1.4em;
	}
	section.review .review-text {
		-webkit-line-clamp: 3;
		min-height: calc(1.6em * 3);
		margin-bottom: 2rem;
	}
}

/* ------------------------------------------------------

	@etc (max-width:479px)

------------------------------------------------------ */
@media all and (max-width:479px) {

}
