/* ===== education intro ===== */
.edu-intro-page { padding: 72px 0 120px; background: linear-gradient(180deg, #f7f9fc 0%, #ffffff 38%); }
.training-overview-section .overview-width { width: min(1320px, calc(100% - 48px)); margin: 0 auto; }
.overview-width .overview-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.overview-grid .overview-column { min-width: 0; padding: 28px 28px 30px; border: 1px solid #dfe5ee; border-radius: 20px; background: #fff; box-shadow: 0 10px 30px rgba(23, 36, 61, 0.06); }
.overview-column .overview-section-title { display: inline-flex; align-items: center; justify-content: center; margin-bottom: 18px; padding: 8px 14px; border-radius: 999px; font-size: 2.1rem; line-height: 1.2; font-weight: 700; color: #1f3f8f; background: #eaf0ff; }
.overview-column .overview-section-title.general { margin-top: 26px; color: #056c73; background: #e1f8f9; }
.overview-column .overview-course { margin-top: 14px; padding-top: 14px; border-top: 1px dashed #cfd7e5; }
.overview-column .overview-course:first-of-type { margin-top: 0; padding-top: 0; border-top: 0; }
.overview-course .course-title { font-size: 1.95rem; line-height: 1.35; font-weight: 700; color: #18253d; letter-spacing: -0.01em; }
.overview-course .course-desc-list { margin-top: 6px; }
.course-desc-list li { position: relative; padding-left: 12px; font-size: 1.6rem; line-height: 1.55; font-weight: 400; color: #4a5568; }
.course-desc-list li::before { content: "•"; position: absolute; top: 0; left: 0; color: #6b7c9f; }
/* edu-grid */
.sub-block .edu-grid { display: grid; grid-template-columns: repeat(2, 1fr); margin-top: 20px; gap: 15px;}
.edu-grid .edu-card { padding: 22px 24px; background: #f2f6f7; border-radius: 12px; border: 1px solid #c9d0d1; }
.edu-card .edu-card-title { font-size: 1.7rem; font-weight: 700; line-height: 1.45; margin-bottom: 10px; }
.edu-card .edu-card-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 5px; }
.edu-card-list li { font-size: 1.6rem; color: #555; line-height: 1.6; padding-left: 22px; position: relative; }
.edu-card-list li::before { content: '—'; position: absolute; left: 0; font-size: 1rem; top: 2px; }

@media all and (max-width: 1024px) {
	.edu-intro-page { padding: 56px 0 92px; }
	.training-overview-section .overview-width { width: min(100%, calc(100% - 32px)); }
	.overview-width .overview-grid { grid-template-columns: 1fr; gap: 18px; }
	.overview-grid .overview-column { padding: 22px 20px 24px; border-radius: 16px; }
	.overview-column .overview-section-title { margin-bottom: 14px; font-size: 1.9rem; }
	.overview-column .overview-section-title.general { margin-top: 22px; }
	.overview-column .overview-course { margin-top: 12px; padding-top: 12px; }
	.overview-course .course-title { font-size: 1.8rem; }
	.course-desc-list li { font-size: 1.5rem; }
}
@media all and (max-width: 768px) {
	.sub-block .edu-grid { grid-template-columns: 1fr; gap: 15px; margin-top: 10px; }
	.edu-card-list li { font-size: 1.45rem; }
}
@media all and (max-width: 480px) {
	.edu-intro-page { padding: 42px 0 72px; }
	.training-overview-section .overview-width { width: min(100%, calc(100% - 24px)); }
	.overview-grid .overview-column { padding: 18px 16px 20px; }
	.overview-column .overview-section-title { margin-bottom: 12px; padding: 6px 12px; font-size: 1.7rem; }
	.overview-column .overview-section-title.general { margin-top: 18px; }
	.overview-column .overview-course { margin-top: 10px; padding-top: 10px; }
	.overview-course .course-title { font-size: 1.6rem; }
	.overview-course .course-desc-list { margin-top: 4px; }
	.course-desc-list li { padding-left: 10px; font-size: 1.4rem; line-height: 1.5; }
	.edu-card-list li { font-size: 1.35rem; padding-left: 18px; }
	.sub-block .edu-grid { margin-top: 0; gap: 0; }
	.edu-grid .edu-card { padding: 15px 0; border: 0; border-radius: 0; border-bottom: 1px dashed var(--line); background: transparent; }
	.edu-card .edu-card-title { font-size: 1.5rem; }
	
}
