
/* ////////////////////////////////////////////////
# mv
//////////////////////////////////////////////// */
@media (min-width: 768px), print {
	.c-header__in {
		position: relative;
		margin: 0 auto;
		padding-top: calc(70 / var(--font-size) * 1rem) !important;
		max-width: unset;
	}
	.c-header__in::after {
		content: '';
		display: block;
		background: url('../img/training/open-training/mv.jpg') center center no-repeat;
		background-size: cover;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		padding-top: 350px;
		z-index: -1;
	}
	.bl_txt-main {
		max-width: 1168px;
		margin: 0 auto;
		padding: 0 calc(60 / var(--font-size) * 1rem);
	}
	h1 {
		line-height: 1.5;
		color: #1C2478;
		font-family: Arial, Helvetica, sans-serif;
		font-size: calc(48 / var(--font-size) * 1rem);
	}
	h1 span.sub-text{
		font-size: calc(36 / var(--font-size) * 1rem);
		display: inline-block;
	}

}
@media (min-width: 1441px){
	.c-header__in {
		padding-top: calc(90/1440*100vw) !important;
	}
	.main-container__header {
		padding: 0;
		height: calc(350/1440*100vw);
	}
	.c-header__in::after{
		height: calc(350/1440*100vw);
	}
}
@media (max-width: 767px) {
	.c-header__in::after {
    content: '';
    display: block;
	background: url('../img/training/open-training/mv_sp.jpg') right center no-repeat;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
		padding-top: 430px;
		z-index: -1;
	}
	h1 {
		line-height: 1.5;
		color: #1C2478;
		font-family: Arial, Helvetica, sans-serif;
		font-size: calc(34 / var(--font-size) * 1rem);
	}
	h1 span.sub-text{
		font-size: calc(28 / var(--font-size) * 1rem);
		display: inline-block;
	}
}

/* ////////////////////////////////////////////////
# 特長リスト
//////////////////////////////////////////////// */
@media (min-width: 768px), print {

	.lead-features {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		column-gap: calc(10 / var(--font-size) * 1rem);
		row-gap: calc(30 / var(--font-size) * 1rem);
		max-width: calc(1048 / var(--font-size) * 1rem);
		margin-top: calc(50 / var(--font-size) * 1rem);
		margin-inline: auto;
	}
	.lead-features__item {
		background: linear-gradient(0deg, #FFF 0%, #ECEDF6 100%);
		padding-top: calc(22 / var(--font-size) * 1rem);
		padding-inline: calc(30 / var(--font-size) * 1rem);
	}
	.lead-features__head {
		display: flex;
		gap: calc(30 / var(--font-size) * 1rem);
	}
	.lead-features__num {
		flex-shrink: 0;
		display: flex;
		align-items: end;
		padding-bottom: calc(6 / var(--font-size) * 1rem);
		border-bottom: calc(2 / var(--font-size) * 1rem) solid #1C2478;
		gap: calc(5 / var(--font-size) * 1rem);
		color: #1C2478;
	}
	.lead-features__num-label {
		display: inline-block;
		margin-bottom: calc(3 / var(--font-size) * 1rem);
		text-box-trim: trim-both;
		text-box-edge: cap alphabetic;
		color: #1C2478;
		font-size: calc(14 / var(--font-size) * 1rem);
		font-weight: 700;
		line-height: 1.5;
	}
	.lead-features__num-index {
		text-box-trim: trim-both;
		text-box-edge: cap alphabetic;
		font-family: Jost;
		color: #1C2478;
		font-size: calc(36 / var(--font-size) * 1rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: -0.02em;
	}
	.lead-features__title {
		margin-top: calc(8 / var(--font-size) * 1rem);
		color: #1C2478;
		text-box-trim: trim-both;
		text-box-edge: cap alphabetic;
		font-size: calc(20 / var(--font-size) * 1rem);
		font-weight: 700;
		line-height: 1.5;
	}
	.lead-features__title > .__small {
		font-size: calc(14 / var(--font-size) * 1rem);
	}
	.lead-features__txt {
		margin-top: calc(16 / var(--font-size) * 1rem);
		color: var(--black-color);
		font-size: calc(16 / var(--font-size) * 1rem);
		font-weight: 500;
		line-height: 1.6;
	}
	.lead-features__note {
		margin-top: calc(12 / var(--font-size) * 1rem);
		color: var(--gray-color-100);
		font-size: calc(14 / var(--font-size) * 1rem);
		font-weight: 500;
		line-height: 1.5;
	}
}
@media (max-width: 767px) {
	.lead-features {
		display: grid;
		grid-template-columns: 1fr;
		gap: calc(30 / var(--font-size) * 1rem);
		margin-top: calc(40 / var(--font-size) * 1rem);
	}
	.lead-features__item {
		background: linear-gradient(0deg, #FFF 0%, #ECEDF6 100%);
		padding-top: calc(20 / var(--font-size) * 1rem);
		padding-inline: calc(16 / var(--font-size) * 1rem);
	}
	.lead-features__head {
		display: flex;
		align-items: center;
		gap: calc(20 / var(--font-size) * 1rem);
	}
	.lead-features__num {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: calc(6 / var(--font-size) * 1rem);
		padding-bottom: calc(6 / var(--font-size) * 1rem);
		border-bottom: calc(2 / var(--font-size) * 1rem) solid #1C2478;
	}
	.lead-features__num-label {
		text-box-trim: trim-both;
		text-box-edge: cap alphabetic;
		color: #1C2478;
		text-align: center;
		font-size: calc(12 / var(--font-size) * 1rem);
		font-weight: 700;
		line-height: 1.5;
	}
	.lead-features__num-index {
		color: #1C2478;
		text-box-trim: trim-both;
		text-box-edge: cap alphabetic;
		font-family: Jost;
		font-size: calc(24 / var(--font-size) * 1rem);
		font-weight: 700;
		line-height: 1.5;
		letter-spacing: -0.02em;
	}
	.lead-features__title {
		color: #1C2478;
		text-box-trim: trim-both;
		text-box-edge: cap alphabetic;
		font-size: calc(18 / var(--font-size) * 1rem);
		font-weight: 700;
		line-height: 1.3;
	}
	.lead-features__txt {
		margin-top: calc(16 / var(--font-size) * 1rem);
		color: var(--black-color);
		font-size: calc(14 / var(--font-size) * 1rem);
		font-weight: 500;
		line-height: 1.6;
	}
	.lead-features__note {
		margin-top: calc(12 / var(--font-size) * 1rem);
		color: var(--gray-color-100);
		font-size: calc(13 / var(--font-size) * 1rem);
		font-weight: 500;
		line-height: 1.5;
	}
}

/* ////////////////////////////////////////////////
# コース
//////////////////////////////////////////////// */
@media (min-width: 768px), print {
	.course__content:has(.course-description) .course-item-block {
		margin-top: calc(30 / var(--font-size) * 1rem);
	}
	.course-detail-link {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: calc(12 / var(--font-size) * 1rem);
		margin-top: calc(20 / var(--font-size) * 1rem);
		color: #1C2478;
		font-family: "Noto Sans JP";
		font-size: calc(16 / var(--font-size) * 1rem);
		font-weight: 700;
		line-height: 1.6;
		text-decoration: underline;
	}
	.course-detail-link::before {
		content: '';
		display: inline-block;
		flex-shrink: 0;
		width: calc(14 / var(--font-size) * 1rem);
		height: auto;
		aspect-ratio: 14/12;
		background: url('../img/training/open-training/ico_arrow.png') center center no-repeat;
		background-size: contain;
		margin-top: calc(2 / var(--font-size) * 1rem);
	}
}
@media (max-width: 767px) {
	.course__content:has(.course-description) .course-item-block {
		margin-top: calc(26 / var(--font-size) * 1rem);
	}
	
	.course-detail-link {
		display: flex;
		align-items: center;
		gap: calc(12 / var(--font-size) * 1rem);
		margin-top: calc(16 / var(--font-size) * 1rem);
		color: #1C2478;
		font-family: "Noto Sans JP";
		font-size: calc(16 / var(--font-size) * 1rem);
		font-weight: 700;
		line-height: 1.6;
		text-decoration: underline;
	}
	.course-detail-link::before {
		content: '';
		display: inline-block;
		flex-shrink: 0;
		width: calc(14 / var(--font-size) * 1rem);
		height: auto;
		aspect-ratio: 14/12;
		background: url('../img/training/open-training/ico_arrow.png') center center no-repeat;
		background-size: contain;
		margin-top: calc(2 / var(--font-size) * 1rem);
	}
}
