

/* ============================================================== index */
.idx-badge a {
	position: relative;
	text-decoration: none;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	display: grid;
	align-items: center;
}
.idx-badge a::before {
	content: "";
	display: block;
	position: absolute;
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	transition: 0.3s;
	width: calc(100% - 2px);
	left: 0;
	top: 0;
	border: 1px solid var(--color-red);
	opacity: 0;
}
@media screen and (min-width: 1000px) {
	.idx-badge a:hover {
		opacity: 0.75;
	}
	.idx-badge a:hover::before {
		transform: scale(1.05);
		opacity: 1;
	}
}
/* -------------------------------------- banner */
.idx-kv {
	padding: 9em 1em 2em;
	background-color: var(--color-white);
	background-repeat: no-repeat;
	background-position: 100% 0;
	background-size: cover;
	background-image: url("../images/idx/kv_01_sp.jpg");
}
@media screen and (min-width: 750px) {
	.idx-kv {
		padding: 11em 1em 4em;
	}
}
@media screen and (min-width: 1000px) {
	.idx-kv {
		background-position: 100% 0;
		background-image: url("../images/idx/kv_01_pc.jpg");
	}
}
.idx-kv_ttl {
	margin: 0 0 4em;
	line-height: 1.4;
	font-size: 100%;
	font-size: min(4vw, 150%);
	text-align: left;
	font-family: "momochidori-variable", sans-serif;
	font-variation-settings: "ital" 0, "wght" 200, "wdth" 100;	
}
.idx-kv_ttl span {
	display: block;
	color: var(--color-black);
	font-size: 160%;
	font-weight: 300;
	letter-spacing: 0.06em;
}
.idx-kv_ttl i {
	font-size: 140%;
}
.idx-kv_ttl span:nth-of-type(1) i:nth-of-type(1) {
	color: var(--color-pgrn);
}
.idx-kv_ttl span:nth-of-type(1) i:nth-of-type(2) {
	color: var(--color-org);
}
.idx-kv_ttl span:nth-of-type(2) i:nth-of-type(1) {
	color: var(--color-ylw);
}
@media screen and (min-width: 1000px) {
	.idx-kv_ttl {
		margin-left: 1em;
		margin-bottom: 3em;
	}
	.idx-kv_ttl span {
		letter-spacing: 0.1em;
	}
}
.idx-kv .idx-badge {
	width: 40vw;
	max-width: 15em;
}
.idx-kv .idx-badge a {
	display: block;
	opacity: 0.95;
}
@media screen and (min-width: 1000px) {
	.idx-kv .idx-badge {
		margin-left: 1em;
	}
	.idx-kv .idx-badge a {
		transition: 0.3s;
	}
	.idx-kv .idx-badge a:hover {
		opacity: 0.75;
	}
}
/* -------------------------------------- banner */
.idx-1bnr {
	padding: 0.5em;
}
@media screen and (min-width: 1000px) {
	.idx-1bnr {
		padding: 1em;
	}
}
/* -------------------------------------- 01 */
.idx-01 {
	background-color: var(--color-pale);
	background-repeat: no-repeat;
	background-position: 50% 100%;
	background-size: auto calc(100% - 1em);
	background-image: url("../images/idx/idx_01.png");
}
.idx-01 .c-inr {
	font-size: min(3.6vw, 180%);
	padding: 2.4em 0 18em;
}
.idx-01 .c-ttl {
	font-size: 100%;
}
.idx-01 .c-ttl span {
	font-weight: 300;
	letter-spacing: 0.06em;
	color: var(--color-black);
	line-height: 1.6;
	font-family: "momochidori-variable", sans-serif;
	font-variation-settings: "ital" 0, "wght" 200, "wdth" 100;	
}
.idx-01 .c-ttl span i {
	font-size: 125%;
	color: var(--color-grn);
}
.idx-01 .c-ttl span:nth-of-type(2) {
	font-size: 150%;
}
.idx-01 .c-ttl span:nth-of-type(1) i {
	color: var(--color-red);
}
.idx-01 .c-ttl span:nth-of-type(2) i {
	color: var(--color-grn);
}
.idx-01 .c-ttl span:nth-of-type(2) i:nth-of-type(1) {
	color: var(--color-pgrn);
}
.idx-01 .c-ttl span:nth-of-type(2) i:nth-of-type(2) {
	color: var(--color-org);
}
.idx-01 .c-ttl span:nth-of-type(2) i:nth-of-type(3) {
	color: var(--color-ylw);
}
.idx-01 .c-ttl span:nth-of-type(2) i:nth-of-type(4) {
	color: var(--color-grn);
}
.idx-01 .idx-badge {
	position: absolute;
	font-size: 100%;
	right: 1em;
	bottom: 2em;
}
.idx-01 .idx-badge a {
	background-repeat: no-repeat;
	background-position: 50% 0.7em;
	background-size: 2em auto;
	background-image: url("../images/idx/ico_vegetable_w.svg");
	background-color: var(--color-org);
	color: var(--color-white);
	padding: 1.5em;
	opacity: 0.9;
	text-align: center;
}
.idx-01 .idx-badge a::after {
	content: "";
	display: block;
	position: absolute;
	border-radius: 50%;
	aspect-ratio: 1 / 1;
	transition: 0.3s;
	width: calc(100% - 0.4em - 2px);
	left: 0.2em;
	top: 0.2em;
	border: 1px solid var(--color-white);
}
.idx-01 .idx-badge a p {
	position: relative;
}
.idx-01 .idx-badge a p::before,
.idx-01 .idx-badge a p::after {
	content: "";
	display: block;
	position: absolute;
	width: 2em;
	height: 1px;
	bottom: -1em;
	right: calc(50% - 1em);
	background-color: #fff;
}
.idx-01 .idx-badge a p::after {
	width: 0.5em;
	transform: rotate(45deg);
	transform-origin: right bottom;
}
@media screen and (min-width: 1000px) {
	.idx-01 .idx-badge a:hover {
		opacity: 0.75;
	}
	.idx-01 .idx-badge a:hover::after {
		width: calc(100% - 2px);
		left: 0;
		top: 0;
		opacity: 0;
	}
}
.idx-01 .idx-badge p {
	display: grid;
	gap: 0.4em 0;
	padding-top: 0.8em;
}
.idx-01 .idx-badge span {
	display: block;
	line-height: 1;
}
.idx-01 .idx-badge span:nth-of-type(2),
.idx-01 .idx-badge span:nth-of-type(3) {
	font-size: 75%;
}
/* -------------------------------------- 02 */
.idx-02 {
	padding: 4em 1em 8em;
	background-color: #f9fcff;
	background-repeat: repeat-x;
	background-position: 0 100%;
	background-size: auto 6em;
	background-image: url("../images/idx/farmer_01.png");
}
.idx-02::before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 4em;
	top: 0;
	left: 0;
	background: linear-gradient(to top, transparent 0, #e3f9f3 100%);
}
@media screen and (min-width: 750px) {
	.idx-02 {
		padding: 6em 1em 12em;
		background-size: auto 8em;
	}
}
.idx-02 .c-ttl {
	display: grid;
	gap: 0.1em 0;
	font-size: 120%;
	margin: 0 auto 3em;
}
.idx-02 .c-ttl span {
	font-weight: 300;
	letter-spacing: 0.06em;
}
.idx-02 .c-ttl .countup {
	margin-bottom: 0.5em;
}
.idx-02 .c-ttl .countup i {
	line-height: 1;
	font-size: 270%;
	font-size: min(15vw, 450%);
	font-weight: 700;
	color: var(--color-grn);
	display: inline-block;
	margin: 0 0.1em;
	width: 3.4em;
	background: linear-gradient(to bottom, transparent 0, transparent 70%, var(--color-ylw) 70%, var(--color-ylw) 100%);
}
.idx-02 .c-ttl em {
	font-size: 160%;
	color: var(--color-red);
	display: inline-block;
	font-family: "momochidori-variable", sans-serif;
	font-variation-settings: "ital" 0, "wght" 300, "wdth" 100;	
}
.idx-02 .c-ttl em i {
	display: inline-block;
	letter-spacing: -0.08em;
	margin-right: 0.2em;
}
.idx-02 .c-inr {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 3em 0;
	max-width: 1060px;
}
@media screen and (min-width: 750px) {
	.idx-02 .c-inr {
		grid-template-columns: repeat(2, 1fr);
		gap: 3em 2em;
	}
}
.idx-02 .c-inr .c-bx {
	color: var(--color-black);
	text-decoration: none;
}
.idx-02 .c-inr .c-bx h3 {
	margin: 0.3em 0;
	font-family: "momochidori-variable", sans-serif;
	font-variation-settings: "ital" 0, "wght" 500, "wdth" 100;	
}
.idx-02 .c-inr .c-bx:nth-of-type(1) h3 {
	color: var(--color-pgrn);
}
.idx-02 .c-inr .c-bx:nth-of-type(2) h3 {
	color: var(--color-org);
}
.idx-02 .c-inr .c-bx:nth-of-type(3) h3 {
	color: color-mix(in srgb, var(--color-ylw) 80%, var(--color-org));
}
.idx-02 .c-inr .c-bx:nth-of-type(4) h3 {
	color: var(--color-grn);
}
.idx-02 .c-inr .c-bx p {
	font-size: 87.5%;
}
@media screen and (min-width: 1000px) {
	.idx-02 .c-inr .c-bx figure {
		position: relative;
		display: block;
		transition: 0.3s;
	}
	.idx-02 .c-inr .c-bx figure::before {
		content: "";
		display: block;
		position: absolute;
		width: 100%;
		height: 100%;
		transition: 0.3s;
	}
	.idx-02 .c-inr .c-bx:hover figure::before {
		outline: 0.2em solid rgb(255, 255, 255);
    	outline-offset: -0.5em;
	}
}
/* -------------------------------------- banner */
.idx-bnr {
	padding: 0.5em;
}
.idx-bnr .c-inr {
	display: grid;
	gap: 0.5em;
}
@media screen and (min-width: 750px) {
	.idx-bnr {
		padding: 4em 2em;
	}
	.idx-bnr .c-inr {
		grid-template-columns: repeat(3, 1fr);
	}
	.idx-bnr a {
		position: relative;
		display: block;
		transition: 0.3s;
	}
	.idx-bnr a::before {
		content: "";
		display: block;
		position: absolute;
		width: 100%;
		height: 100%;
		transition: 0.3s;
	}
	.idx-bnr a:hover::before {
		outline: 0.2em solid rgb(255, 255, 255);
    	outline-offset: -0.5em;
	}
}
/* -------------------------------------- news */
.idx-news {
	padding: 2em 1em;
}
.idx-news .c-ttl {
	margin-bottom: 2em;
}
.idx-news .c-inr {
	max-width: 1000px;
	border-top: 1px dashed var(--color-logo-grn);
}
.idx-news .c-bx {
	padding: 1em 0;
	border-bottom: 1px dashed var(--color-logo-grn);
}
.idx-news .c-meta {
	display: grid;
	grid-template-columns: 6em 1fr;
	gap: 0.5em;
	align-items: center;
	font-size: 87.5%;
}
.idx-news .c-ctg {
	display: block;
	border-radius: 0.4em;
	line-height: 1;
	font-size: 75%;
	padding: 0.8em;
	text-align: center;
	background-color: var(--color-pgrn);
	color: #fff;
}
.idx-news .c-sbj a {
	color: var(--color-black);
}
.c-cat_0 .c-ctg{ background-color: #9e9e9e; } /* お知らせ */
.c-cat_1 .c-ctg{ background-color: #d63535; } /* 重要 */
.c-cat_2 .c-ctg{ background-color: #ba7361; } /* レポート */
.c-cat_3 .c-ctg{ background-color: #658faa; } /* 講座 */
.c-cat_4 .c-ctg{ background-color: #8ca3e1; } /* プレスリリース */
.c-cat_5 .c-ctg{ background-color: #d9a5a5; } /* テレビ */
.c-cat_6 .c-ctg{ background-color: #7aa6c1; } /* 新聞 */
.c-cat_7 .c-ctg{ background-color: #adadad; } /* その他メディア */
.c-cat_8 .c-ctg{ background-color: #9e9e9e; } /* イベント */
.c-cat_9 .c-ctg{ background-color: #c9b946; } /* 雑誌 */
.c-cat_10 .c-ctg{ background-color: #93bf81; } /* WEB */
.c-cat_default .c-ctg{ background-color: #f9f9f9; } /* その他 */

@media screen and (min-width: 1000px) {
	.idx-news .c-bx {
		display: grid;
		grid-template-columns: 14em 1fr;
		gap: 0.5em;
	}
}
/* ============================================================== programs index */
.c-head.prg-head {
	padding: 8em 1em 0;
	background-position: 0 100%;
	background-image: url("../images/prg/prg_head_01.jpg");
	border-bottom: 0 none;
}
.prg-head::before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 8em;
	top: 0;
	left: 0;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.9) 0, rgba(255, 255, 255, 0.9) 37.5%, transparent 100%);
}
@media screen and (min-width: 1000px) {
	.c-head.prg-head {
		padding: 12em 0 0;
	}
}
.prg-head .c-ttl {
	z-index: 3;
	text-align: left;
	width: fit-content;
	margin: 0;
	padding: 1em 1em 0.3em;
	background-color: var(--color-white);
	line-height: 1;
	border-left: 0.2em solid var(--color-grn);
	border-bottom: 0;
	font-size: 100%;
	position: relative;
}

.prg-head .c-ttl span:nth-of-type(1) {
	position: absolute;
	top: -0.8em;
	padding: 0.3em 0.4em;
	background-color: var(--color-grn);
	color: var(--color-white);
	font-size: 82.5%;
}

.prg-head .c-ttl span:nth-of-type(2) {
	font-family: "momochidori-variable", sans-serif;
	font-variation-settings: "ital" 0, "wght" 300, "wdth" 100;
	line-height: 1.2;
	font-size: 160%;
}

.prg-head .c-ttl span:nth-of-type(2) i {
	font-size: 75%;
}

.prg-head .c-ttl span i {
	display: inline-block;
}

@media screen and (min-width: 1000px) {
	.prg-head .c-ttl {
		font-size: 120%;
		margin: 0 1em;
	}
}
/* -------------------------------------- idx */
.prg-idx .c-set_2-4 {
	margin: 1em 0;
}
.prg-idx .c-set_2-4 h3 {
	font-size: 110%;
	margin: 0.3em 0;
}
.prg-idx .c-set_2-4 ul {
	font-size: 82.5%;
}
.prg-idx .c-set_2-4 .c-bx:nth-of-type(1) h3 {
	color: var(--color-logo-grn);
}
.prg-idx .c-set_2-4 .c-bx:nth-of-type(1) .c-lst li::before {
	background-color: var(--color-logo-grn);
}
.prg-idx .c-set_2-4 .c-bx:nth-of-type(2) h3 {
	color: var(--color-logo-org);
}
.prg-idx .c-set_2-4 .c-bx:nth-of-type(2) .c-lst li::before {
	background-color: var(--color-logo-org);
}
.prg-idx .c-set_2-4 .c-bx:nth-of-type(3) h3 {
	color: var(--color-logo-blu);
}
.prg-idx .c-set_2-4 .c-bx:nth-of-type(3) .c-lst li::before {
	background-color: var(--color-logo-blu);
}
.prg-idx .c-set_2-4 .c-bx:nth-of-type(4) h3 {
	color: var(--color-logo-pnk);
}
.prg-idx .c-set_2-4 .c-bx:nth-of-type(4) .c-lst li::before {
	background-color: var(--color-logo-pnk);
}
/* -------------------------------------- course */
.prg-course .c-inr {
	display: grid;
	gap: 1em 0;
}
.prg-course .c-bx {
	background-color: var(--color-white);
	border: 1px solid #ccc;
	border-top-width: 4px;
	padding: 12em 0.5em 0.5em;
	background-repeat: no-repeat;
	background-position: 50% 1.5em;
	background-size: auto 9em;
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 6;
	gap: 0;
}
.prg-course .c-inr > p {
	margin-bottom: 1em;
}
.prg-course .c-bx:nth-of-type(1) {
	border-top-color: var(--color-course-01);
	background-image: url("../images/prg/tie_01.jpg");
}
.prg-course .c-bx:nth-of-type(2) {
	border-top-color: var(--color-course-02);
	background-image: url("../images/prg/tie_02.jpg");
}
.prg-course .c-bx:nth-of-type(3) {
	border-top-color: var(--color-course-03);
	background-image: url("../images/prg/tie_03.jpg");
}
.prg-course .c-bx .c-tag {
	position: absolute;
	top: 0.5em;
	right: 0.5em;
	background-color: #666;
	color: #fff;
	width: 6em;
	text-align: center;
	border-radius: 0.4em;
	font-size: 75%;
	line-height: 1;
	padding: 0.5em 0;
}
.prg-course .c-bx h3 {
	line-height: 1;
	font-size: 125%;
	text-align: center;
	font-weight: bold;
	margin: 0 0 1em;
}
.prg-course .c-bx:nth-of-type(1) .c-tag {
	background-color: var(--color-course-01);
}
.prg-course .c-bx:nth-of-type(2) .c-tag {
	background-color: var(--color-course-02);
}
.prg-course .c-bx:nth-of-type(3) .c-tag {
	background-color: var(--color-course-03);
}
.prg-course .c-bx:nth-of-type(1) h3 {
	color: var(--color-course-01);
}
.prg-course .c-bx:nth-of-type(2) h3 {
	color: var(--color-course-02);
}
.prg-course .c-bx:nth-of-type(3) h3 {
	color: var(--color-course-03);
}
.prg-course .c-bx ul,
.prg-course .c-bx dl,
.prg-course .c-bx h3 + p {
	margin: 0 1em;
	padding: 0.8em 0;
}
.prg-course .c-bx ul {
	border-top: 1px dashed #ccc;
	color: var(--color-black);
	gap: 0.5em 0;
	align-content: flex-start;
}
.prg-course .c-bx:nth-of-type(1) li::before {
	background-color: var(--color-course-01);
}
.prg-course .c-bx:nth-of-type(2) li::before {
	background-color: var(--color-course-02);
}
.prg-course .c-bx:nth-of-type(3) li::before {
	background-color: var(--color-course-03);
}
.prg-course .c-bx dl {
	display: grid;
	grid-template-columns: 6em 1fr;
	align-items: center;
	border-top: 1px dashed #ccc;
}
.prg-course .c-bx dt {
	font-size: 87.5%;
	color: var(--color-grn);
}
.prg-course .c-bx .c-style dd i {
	font-size: 87.5%;
	display: inline-block;
	margin-right: 0.5em;
	background-color: #666;
	border-radius: 0.4em;
	color: #fff;
	padding: 0.3em 0.5em 0.5em;
	line-height: 1;
}
.prg-course .c-bx:nth-of-type(1) .c-btn {
	background-color: var(--color-course-01);
}
.prg-course .c-bx:nth-of-type(2) .c-btn {
	background-color: var(--color-course-02);
}
.prg-course .c-bx:nth-of-type(3) .c-btn {
	background-color: var(--color-course-03);
}
.prg-course .c-inr > .c-note {
	display: grid;
	gap: 0.5em 0;
	font-size: 82.5%;
	color: var(--color-grn);
}
.prg-course .c-inr > .c-note li {
	margin-left: 1.2em;
	line-height: 1.4;
}
.prg-course .c-inr > .c-note li:before {
	content: "※";
	display: inline-block;
	margin-left: -1.2em;
	margin-right: 0.3em;
}
@media screen and (min-width: 1000px) {
	.prg-course .c-inr {
		grid-template-columns: 1fr 1fr 1fr;
		gap: 0.5em;
	}
	.prg-course .c-inr > .c-note,
	.prg-course .c-inr > p:nth-of-type(1) {
		grid-column: 1 / 4;
	}
	.prg-course .c-bx {
		padding: 12em 0 0.5em;
	}
	.prg-course .c-bx ul,
	.prg-course .c-bx dl,
	.prg-course .c-bx h3 + p {
		font-size: 87.5%;
	}
}
/* ============================================================== programs detail */
/* -------------------------------------- summary */
.prg-summary .c-inr {
	display: grid;
	gap: 1em;
}
.prg-summary .c-btns {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0.5em;
	margin: 1em 0 0;
	padding: 0;
}
.prg-summary .c-btns .c-btn {
	display: block;
	text-align: center;
	font-size: 87.5%;
	padding: 1em 0;
	background-color: var(--color-grn);
}
@media screen and (min-width: 750px) {
	.prg-summary .c-inr {
		grid-template-columns: 15em 1fr;
	}
	.prg-summary .c-btns {
		grid-column: 1 / 3;
		grid-template-columns: repeat(6, 1fr);
	}
}
.prg-summary .c-fig {
	text-align: center;
	margin: 0 0 1em;
}
.prg-summary .c-fig span {
	display: inline-block;
	width: 8em;
}
@media screen and (min-width: 750px) {
	.prg-summary .c-fig {
		grid-row: 1 / 3;
	}
	.prg-summary .c-fig span {
		width: 10em;
	}
}
/* -------------------------------------- curriculum */
.prg-curriculum .c-inr,
.prg-curriculum .c-set {
	display: grid;
	gap: 1em;
	max-width: 860px;
}
.prg-curriculum .c-set {
	background-color: var(--color-white);
}
.prg-curriculum .c-sttl {
	font-size: 115%;
	border-left: 0.3em solid var(--color-red);
	padding-left: 0.5em;
	margin: 0 0 0.5em;
}
.prg-curriculum .c-sttl i {
	display: inline-block;
	font-size: 87.5%;
}
.prg-curriculum h4 + p,
.prg-curriculum h3 + p,
.prg-curriculum .c-note,
.prg-curriculum .c-bx ul {
	font-size: 87.5%;
	margin-top: 0.5em;
}
/* -------------------------------------- flow */
.prg-flow article {
	display: grid;
	gap: 1.5em;
	margin: 0 0 2em;
}
.prg-flow article p {
	margin: 0;
	position: relative;
	background-color: color-mix(in srgb, var(--color-pale) 90%, var(--color-black));
	padding: 1em;
	text-align: center;
}
.prg-flow article p:not(:last-child)::after {
	content: "";
	display: block;
	position: absolute;
	width: 3em;
	height: 1em;
	right: calc(50% - 1.5em);
	bottom: calc(-1em + 1px);
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	background-color: color-mix(in srgb, var(--color-pale) 90%, var(--color-black));
}
.prg-flow article p i {
	display: inline-block;
}
.prg-flow article p i:nth-of-type(1) {
	margin-right: 0.5em;
}
.prg-flow article p:last-of-type {
	background-color: var(--color-org);
	color: var(--color-white);
}
.prg-flow .c-note {
	font-size: 87.5%;
}
@media screen and (min-width: 750px) {
	.prg-flow article {
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
		gap: 0 1em;
	}
	.prg-flow article p {
		display: grid;
		align-content: center;
	}
	.prg-flow article p:not(:last-child)::after {
		width: 0.5em;
		height: 2em;
		right: calc(-0.5em + 1px);
		bottom: calc(50% - 1em);
		clip-path: polygon(0 0, 100% 50%, 0 100%);
	}
}
/* -------------------------------------- fees */
.prg-fees .c-inr {
	max-width: 720px;
}
.prg-fees dl {
	display: grid;
	grid-template-columns: 35% 1fr;
	border: 1px solid #ccc;
}
.prg-fees dt {
	padding: 1em;
	text-align: center;
	background-color: #eee;
	display: grid;
	align-items: center;
}
.prg-fees dd {
	padding: 1em;
	background-color: var(--color-white);
	text-align: right;
}
.prg-fees P {
	text-align: right;
	font-size: 87.5%;
	margin: 0 0.5em;
}
.prg-fees ul {
	margin-top: 2em;
	font-size: 87.5%;
}
/* -------------------------------------- exams */
.prg-exams .c-inr {
	max-width: 720px;
}
.prg-exams dl {
	display: grid;
	grid-template-columns: 35% 1fr;
	border: 1px solid #ccc;
}
.prg-exams dt {
	padding: 1em;
	text-align: center;
	background-color: #eee;
	display: grid;
	align-items: center;
}
.prg-exams dd {
	padding: 1em;
	background-color: var(--color-white);
	text-align: right;
}
.prg-exams dd i {
	display: inline-block;
}
.prg-exams ul {
	margin-top: 2em;
	font-size: 87.5%;
}

/* -------------------------------------- application */
.prg-support .c-inr {
	display: grid;
	gap: 2em 0;
}
.prg-support .c-set {
	font-size: 87.5%;
	display: grid;
	gap: 1em 0;
	background-color: var(--color-white);
}
.prg-support .c-set h3 {
	font-size: 130%;
	font-weight: bold;
}
.prg-support .c-set h4 {
	font-size: 106%;
	margin: 0 0 0.3em;
}
.prg-support .c-set .c-btns {
	padding: 0 0 1.5em;
}
.prg-support .c-set dl {
	display: grid;
	grid-template-columns: 1fr 10em;
	border: 1px solid #ccc;
}
.prg-support .c-set dl + dl {
	border-top: 0 none;
}
.prg-support .c-set dt {
	padding: 0.5em;
	border-right: 1px solid #ccc;
	background-color: #eee;
}
.prg-support .c-set dt i {
	display: inline-block;
}
.prg-support .c-set dd {
	text-align: right;
	white-space: nowrap;
	padding: 0.5em;
}
.prg-support .c-set dl + ul {
	margin-top: 1em;
}

/* -------------------------------------- application */
.prg-application .c-lst {
	font-size: 87.5%;
}
.prg-application .c-inr > .c-lst {
	margin-bottom: 2em;
}
.prg-application .c-set {
	margin-top: 2em;
	display: grid;
	gap: 2em 0;
}
.prg-style_head h3 {
	font-size: 118%;
	font-weight: bold;
	margin-bottom: 0.5em;
}
.prg-style_head p {
	font-size: 87.5%;
}
.prg-style_lst {
	display: grid;
	gap: 1em;
}
@media screen and (min-width: 750px) {
	.prg-style_lst {
		grid-template-columns: repeat(2, 1fr);
	}
	.prg-style_head,
	.prg-style_lst > p:nth-of-type(1) {
		grid-column: 1 / 3;
	}
	.prg-style_lst .c-bx {
		display: grid;
		grid-template-rows: subgrid;
		grid-row: span 5;
		align-items: start;
		gap: 0;
	}
}
.prg-style_lst .c-bx {
	background-color: var(--color-white);
	border: 1px solid #ccc;
	padding: 1em;
	border-radius: 0.4em;
}
.prg-style_lst .c-bx dl {
	display: grid;
	grid-template-columns: 6em 1fr;
	border-top: 1px dashed #ccc;
	font-size: 87.5%;
	padding: 0.5em 0;
}
.prg-style_lst .c-bx .c-sttl {
	margin-bottom: 0.5em;
}
.prg-style_lst .c-bx .c-sttl i {
	font-size: 82.5%;
}
.prg-style_lst .c-bx .c-sttl + p {
	margin-bottom: 0.5em;
}
.prg-style_lst .c-bx dt {
	color: #666;
}
.prg-style_lst .prg-btn {
	margin-top: 1em;
}
.prg-style_lst .prg-btn .c-btn {
	width: 100%;
	text-align: center;
	padding: 0 0.5em;
	background-repeat: no-repeat;
	background-position: calc(100% - 1em) 50%;
	background-size: 1.5em auto;
	background-image: url("../images/common/ico_arrow_ccl_w.svg");
}
.prg-style_lst .prg-btn .c-btn span {
	padding: 1.2em 0;
	display: inline-block;
	background-repeat: no-repeat;
}
.prg-style_lst .prg-btn-01 .c-btn span {
	padding: 1.2em 1em 1.2em 3em;
	background-position: 0 60%;
	background-size: 2em auto;
	background-image: url("../images/common/ico_pc_w.svg");
}
.prg-style_lst .prg-btn-02 .c-btn span {
	padding: 1.2em 1em 1.2em 3em;
	background-position: 0 50%;
	background-size: 1.8em auto;
	background-image: url("../images/common/ico_location_w.svg");
}
.prg-application ul.c-btns {
	display: grid;
	gap: 0.5em;
}
.prg-application ul.c-btns .c-btn {
	width: 100%;
	padding: 0 0.5em;
}
.prg-application ul.c-btns .c-btn span {
	display: inline-block;
	padding-left: 2em;
	background-repeat: no-repeat;
	background-position: 0 50%;
}
.prg-application ul.c-btns li:nth-of-type(1) .c-btn span {
	padding: 1.5em 0.5em 1.5em 3.5em;
	background-size: 2em auto;
	background-image: url("../images/common/ico_pc_w.svg");
}
.prg-application ul.c-btns li:nth-of-type(2) .c-btn span {
	padding: 1em 0.5em 1em 2em;
	background-size: 1.5em auto;
	background-image: url("../images/common/ico_location_w.svg");
}
@media screen and (min-width: 750px) {
	.prg-application ul.c-btns {
		grid-template-columns: 1fr 1fr;
	}
	.prg-application .c-btns li:nth-of-type(2) .c-btn span {
		padding: 1.5em 0.5em 1.5em 2em;
	}
}
/* -------------------------------------- course options (standard) */
.m-standard .prg-summary .c-btns .c-btn:last-child {
	grid-column: span 2;
	background-color: var(--color-course-01);
}
.m-standard .c-ttl {
	border-color: var(--color-course-01);
}
.m-standard .c-head .c-ttl span:nth-of-type(1) {
	background-color: var(--color-course-01);
}
.m-standard .c-bx_line {
	border-color: var(--color-course-01);
}
.m-standard .c-sttl {
	color: var(--color-course-01);
	border-color: var(--color-course-01);
	font-weight: 700;
}
.m-standard .c-lst li::before {
	background-color: var(--color-course-01);
}
.m-standard .prg-style_lst .prg-btn-01 .c-btn,
.m-standard .prg-application .c-btns li:nth-of-type(1) .c-btn {
	background-color: color-mix(in srgb, var(--color-course-01) 85%, var(--color-white));
}
.m-standard .prg-style_lst .prg-btn-02 .c-btn,
.m-standard .prg-application .c-btns li:nth-of-type(2) .c-btn {
	background-color: color-mix(in srgb, var(--color-course-01) 85%, var(--color-black));
}
/* -------------------------------------- course options (pro) */
.m-pro .prg-summary .c-btns .c-btn:last-child {
	background-color: var(--color-course-02);
}
.m-pro .c-ttl {
	border-color: var(--color-course-02);
}
.m-pro .c-head .c-ttl span:nth-of-type(1) {
	background-color: var(--color-course-02);
}
.m-pro .c-head .c-ttl span:nth-of-type(1) {
	background-color: var(--color-course-02);
}
.m-pro .c-bx_line {
	border-color: var(--color-course-02);
}
.m-pro .c-sttl {
	color: var(--color-course-02);
	border-color: var(--color-course-02);
	font-weight: 700;
}
.m-pro .c-lst li::before {
	background-color: var(--color-course-02);
}
.m-pro .prg-curriculum .c-set h3 {
	color: var(--color-grn);
}
.m-pro .prg-curriculum .c-inr > .c-lst,
.m-pro .prg-flow .c-inr>.c-lst {
	font-size: 87.5%;
}
.m-pro .prg-exams .c-inr {
	max-width: 1000px;
}
.m-pro .prg-exams dl {
	grid-template-columns: 6em 1fr;
	font-size: 87.5%;
}
@media screen and (min-width: 750px) {
	.m-pro .prg-exams dl {
		grid-template-columns: 10em 1fr;
	}
}
.m-pro .prg-exams dl + dl {
	border-top: 0 none;
}
.m-pro .prg-exams dt {
	padding: 1em;
	text-align: center;
	background-color: #eee;
	display: grid;
	align-items: center;
}
.m-pro .prg-exams dd {
	padding: 1em;
	background-color: var(--color-white);
	text-align: left;
	display: grid;
	gap: 1em 0;
}
.m-pro .prg-exams dd i {
	display: inline-block;
}
.m-pro .prg-exams dd p {
	margin: 0;
}
.m-pro .prg-exams dd ul {
	margin-top: 0;
	font-size: 100%;
}
.m-pro .prg-exams dd .c-kkm {
	background-color: var(--color-pale);
	border: 1px solid #eee;
	padding: 1em;
}
.m-pro .prg-exams dd .c-kkm h3 {
	font-size: 100%;
	margin-bottom: 0.5em;
}
.m-pro .prg-exams dd .c-kkm p {
	font-size: 87.5%;
}
.m-pro .prg-exams .c-kamoku p {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0 0.5em;
	align-items: start;
}
.m-pro .prg-exams .c-kamoku span:nth-of-type(1) {
	background-color: var(--color-course-02);
	color: var(--color-white);
	font-size: 82.5%;
	border-radius: 0.4em;
	display: inline-block;
	padding: 0.3em 0.5em;
	font-weight: bold;
}
.m-pro .prg-exams .c-btns {
	margin: 0;
	padding: 0;
}
.m-pro .prg-support .c-set h3 {
	color: var(--color-course-02);
}
.m-pro .prg-style_head h3 {
	color: var(--color-course-02);
}
.m-pro .prg-style_head h3 + p i {
	color: var(--color-course-02);
}
.m-pro .prg-style_lst .c-bx p {
	font-size: 87.5%;
}
.m-pro .prg-style_lst .prg-btn-01 .c-btn,
.m-pro .prg-application .c-btns li:nth-of-type(1) .c-btn {
	background-color: color-mix(in srgb, var(--color-course-02) 85%, var(--color-white));
}
.m-pro .prg-style_lst .prg-btn-02 .c-btn,
.m-pro .prg-application .c-btns li:nth-of-type(2) .c-btn {
	background-color: color-mix(in srgb, var(--color-course-02) 85%, var(--color-black));
}
@media screen and (min-width: 750px) {
	.m-pro .prg-style_lst .c-bx {
		grid-row: span 3;
	}
}
/* -------------------------------------- course options (advance) */
.m-advance .c-ttl {
	border-color: var(--color-course-03);
}
.m-advance .c-head .c-ttl span:nth-of-type(1) {
	background-color: var(--color-course-03);
}
.m-advance .c-bx_line {
	border-color: var(--color-course-03);
}
.m-advance .c-sttl {
	color: var(--color-course-03);
	border-color: var(--color-course-03);
}
.m-advance .c-lst li::before {
	background-color: var(--color-course-03);
}
.m-advance .prg-summary .c-btns .c-btn:last-child {
	background-color: var(--color-course-03);
}

.m-advance .prg-summary .c-btns {
	grid-template-columns: repeat(3, 1fr);
}
@media screen and (min-width: 750px) {
	.m-advance .prg-summary .c-btns {
		grid-template-columns: repeat(3, 1fr);
	}
}
.m-advance .prg-application .c-inr {
	max-width: 860px;
}
.m-advance .prg-application .c-inr > p {
	font-size: 87.5%;
}
.m-advance .prg-application p + ul {
	margin-top: 1em;
}
.m-advance .prg-application .c-set {
	background-color: var(--color-white);
	margin: 1em 0;
}
.m-advance .prg-application .c-btn {
	background-color: var(--color-course-03);
}
/* ============================================================== programs payment */
.prg-payment .c-inr {
	display: grid;
	gap: 2em;
	font-size: 87.5%;
	max-width: 860px;
}
.prg-payment .c-bx_line h3 {
	margin-bottom: 1em;
}
.prg-payment .c-bx_line dl {
	display: grid;
	grid-template-columns: 4em 1fr;
}
.prg-payment .c-bx_line ul {
	margin-top: 1em;
}

/* ============================================================== programs faq */
@media screen and (min-width: 750px) {
	.prg-faq.c-pl_btns .c-btns {
		grid-template-columns: repeat(5, 1fr);
	}
}
.prg-faq .c-inr {
	display: grid;
	gap: 2em 0;
	counter-reset: faq;
	max-width: 860px;
	font-size: 87.5%;
}
.prg-faq .c-inr dl {
	counter-increment: faq;
}
.prg-faq .c-inr dt {
	font-size: 110%;
	position: relative;
	padding-left: 2.8em;
	margin-bottom: 0.5em;
	padding-bottom: 0.5em;
	border-bottom: 1px solid #ccc;
}
.prg-faq .c-inr dt::before {
	content: "Q." counter(faq);
	display: block;
	position: absolute;
	left: 0;
	font-weight: bold;
}
.prg-faq .c-inr dd {
	display: grid;
	gap: 0.5em 0;
	color: #444;
}
.prg-faq_flow ul {
	display: grid;
	gap: 0.5em 0;
	margin-bottom: 1em;
}
.prg-faq_flow li {
	position: relative;
	padding-left: 1.2em;
}
.prg-faq_flow li i {
	position: absolute;
	left: 0;
}
/* ============================================================== programs venue */
.prg-venue + .prg-venue {
	margin-top: 3em;
}
@media screen and (min-width: 750px) {
	.prg-venue.c-pl_btns .c-btns {
		grid-template-columns: repeat(7, 1fr);
	}	
}
.prg-venue .c-inr {
	display: grid;
	gap: 1em 0;
	max-width: 860px;
	font-size: 87.5%;
}
.prg-venue .c-inr.prg-venue_lst {
	gap: 2em 0;
}
.prg-venue .c-inr + .c-inr {
	margin-top: 2em;
}
.prg-venue .c-bx_line {
	border-color: #ccc;
}
.prg-venue_lst .c-bx h4 {
	font-size: 100%;
	background-color: var(--color-grn);
	color: var(--color-white);
	padding: 0.3em 0.6em;
	margin: 0 0 0.5em;
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
}
.prg-venue_lst .c-bx h4 span {
	display: inline-block;
	padding: 0 0 0.2em;
}
.prg-venue_lst .c-bx h4 i {
	display: inline-block;
	background-color: var(--color-white);
	color: var(--color-grn);
	font-size: 82.25%;
	padding: 0 0.5em;
	margin-right: 0.5em;
}
.prg-venue_lst .c-bx dl {
	display: grid;
	grid-template-columns: 5em 1fr;
}
.prg-venue_lst .c-bx .c-addr span i {
	display: inline-block;
}
.prg-venue_lst .c-bx .c-addr a {
	display: inline-block;
	margin-left: 1em;
	display: inline-block;
	background-color: var(--color-red);
	color: #fff;
	text-decoration: none;
	font-size: 75%;
	padding: 0 0.5em;
}
.prg-venue_lst .c-bx .c-addr a:hover {
	opacity: 0.7;
}
.prg-venue_lst .c-bx .c-accs {
	margin-top: 0.5em;
}
.prg-venue_lst .c-bx .c-accs dd {
	display: grid;
	gap: 0.3em 0;
}
.prg-venue_lst .c-bx .c-accs div {
	margin: 0;
	display: grid;
	grid-template-columns: 3.5em 1fr;
	align-items: start;
	gap: 0 0.5em;
}
.prg-venue_lst .c-bx .c-accs div > i {
	display: block;
	background-color: #999;
	color: #fff;
	font-size: 75%;
	text-align: center;
	padding: 0.1em 0 0.2em;
	margin-top: 0.2em;
}
.prg-venue_lst .c-bx .c-accs li::before {
	background-color: #999;
}

/* ============================================================== programs lecturer */
.prg-lecturer + .prg-lecturer {
	margin-top: 3em;
}

@media screen and (min-width: 750px) {
	.prg-lecturer.c-pl_btns .c-btns {
		grid-template-columns: repeat(8, 1fr);
	}
}
.prg-lecturer .c-inr {
	display: grid;
	gap: 1em 0;
	max-width: 860px;
	font-size: 87.5%;
}
.prg-lecturer .c-inr.prg-lecturer_lst {
	gap: 2em 0;
}
.prg-lecturer .c-inr + .c-inr {
	margin-top: 2em;
}
.prg-lecturer .c-bx:not(:last-of-type) {
	padding-bottom: 2em;
	border-bottom: 1px solid #ccc;
}
.prg-lecturer .c-bx h4 {
	position: relative;
	font-size: 110%;
	margin: 0 0 0.2em;
}
.prg-lecturer .c-bx h4::before {
	content: "■";
	display: inline-block;
	margin-right: 0.5em;
}

/* ============================================================== qualified common */
.c-head.qlf-head {
	padding: 8em 1em 0;
	background-position: 0 50%;
	background-image: url("../images/qlf/qlf_head_01.jpg");
	border-bottom: 0 none;
}
.qlf-head::before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 8em;
	top: 0;
	left: 0;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.9) 0, rgba(255, 255, 255, 0.9) 37.5%, transparent 100%);
}
@media screen and (min-width: 1000px) {
	.c-head.qlf-head {
		padding: 12em 0 0;
	}
}
.qlf-head .c-ttl {
	z-index: 3;
	text-align: left;
	width: fit-content;
	margin: 0;
	padding: 1em 1em 0.3em;
	background-color: var(--color-white);
	line-height: 1;
	border-left: 0.2em solid var(--color-grn);
	border-bottom: 0;
	font-size: 100%;
	position: relative;
}
.qlf-head .c-ttl span:nth-of-type(1) {
	position: absolute;
	top: -0.8em;
	padding: 0.3em 0.4em;
	background-color: var(--color-grn);
	color: var(--color-white);
	font-size: 82.5%;
}
.qlf-head .c-ttl span:nth-of-type(2) {
	font-family: "momochidori-variable", sans-serif;
	font-variation-settings: "ital" 0, "wght" 300, "wdth" 100;
	line-height: 1.2;
	font-size: 160%;
}
.qlf-head .c-ttl span:nth-of-type(2) i {
	font-size: 75%;
}
.qlf-head .c-ttl span i {
	display: inline-block;
}
@media screen and (min-width: 1000px) {
	.qlf-head .c-ttl {
		font-size: 120%;
		margin: 0 1em;
	}
}
/* ============================================================== qualified index */
/* -------------------------------------- intro */
.qlf-idx_intro .c-inr {
	max-width: 860px;
}
.qlf-idx_intro .c-bx {
	margin: 2em 0 0;
	display: grid;
	gap: 2em;
}
.qlf-idx_intro .c-bx h3 {
	width: fit-content;
	margin: 0 auto;
	text-align: center;
	padding: 0.5em 1em;
	color: var(--color-white);
	background-color: var(--color-org);
	display: grid;
	align-items: center;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
}
.qlf-idx_intro .c-bx h3 i {
	display: block;
}
.qlf-idx_intro .c-bx .c-lst {
	position: relative;
	border: 1px solid var(--color-org);
	width: fit-content;
	margin: 0 auto;
	padding: 1em;
	border-radius: 0.5em;
}
.qlf-idx_intro .c-bx .c-lst::before {
	content: "";
	display: block;
	position: absolute;
	width: 2em;
	aspect-ratio: 2 / 1;
	top: -1.5em;
	left: calc(50% - 1em);
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	background-color: var(--color-org);
}
@media screen and (min-width: 1000px) {
	.qlf-idx_intro .c-bx {
		grid-template-columns: 12em 1fr;
		align-items: center;
	}
	.qlf-idx_intro .c-bx h3 {
		margin-right: 0;
	}
	.qlf-idx_intro .c-bx .c-lst {
		padding: 1.5em 2em;
		gap: 0.8em;
	}
	.qlf-idx_intro .c-bx .c-lst::before {
		left: -3.5em;
		top: calc(50% - 1em);
		transform: rotate(-90deg);
	}
	.qlf-idx_intro .c-bx p:last-of-type {
		grid-column: 1 / 3;
		text-align: center;
	}
}
/* -------------------------------------- voice */
.qlf-idx_voice .c-inr {
	display: grid;
	gap: 1em;
}
.qlf-idx_voice .c-inr .c-btns {
	padding: 0;
}
@media screen and (min-width: 1000px) {
	.qlf-idx_voice .c-inr {
		display: grid;
		grid-template-columns: 24em 1fr;
		align-items: center;
		gap: 2em;
	}
	.qlf-idx_voice .c-inr h2 {
		grid-row: 1 / 3;
	}
	.qlf-idx_voice .c-inr p:nth-of-type(1) {
		align-self: end;
	}
	.qlf-idx_voice .c-inr .c-btns {
		align-self: start;
	}
}
/* -------------------------------------- index list */
.qlf-idx_lst .c-wrp {
	display: grid;
	gap: 1em;
	margin-top: 2em;
}
@media screen and (min-width: 1000px) {
	.qlf-idx_lst .c-wrp {
		grid-template-columns:1fr 1fr;
	}
	.qlf-idx_lst .c-wrp > h3,
	.qlf-idx_lst .c-wrp > p {
		grid-column: 1 / 3;
	}
	.qlf-idx_lst .c-wrp.wrp3 {grid-template-columns:1fr 1fr 1fr;}
	.qlf-idx_lst .c-wrp.wrp3 > h3,
	.qlf-idx_lst .c-wrp.wrp3 > p {
		grid-column: 1 / 4;
	}
}
.qlf-idx_lst .c-wrp > h3 {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0 1em;
	align-items: center;
}
.qlf-idx_lst .c-wrp > h3 span:nth-of-type(1) {
	padding: 0.3em 1.2em;
	border: 2px solid var(--color-black);
	white-space:nowrap;
}
.qlf-idx_lst .c-wrp > h3 span:nth-of-type(2) {
	font-size: 75%;
}
.qlf-idx_lst .c-wrp .c-bx {
	border: 1px solid var(--color-pgrn);
	padding: 1em;
	background-color: var(--color-pale);
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 4;
	gap: 0;
	text-decoration: none;
	color: var(--color-black);
}
.qlf-idx_lst .c-wrp figure {
	margin-bottom: 0.5em;
}
.qlf-idx_lst .c-wrp h4 {
	margin-bottom: 0.5em;
	display: grid;
}
.qlf-idx_lst .c-wrp h4 span:nth-of-type(1) {
	font-size: 75%;
	font-weight: normal;
}
.qlf-idx_lst .c-wrp p:nth-of-type(1) {
	font-size: 87.5%;
}
.qlf-idx_lst .c-wrp .c-btns {
	padding: 0;
}
/* ============================================================== qualified community */
.qlf-community article {
	margin-top: 2em;
}
.qlf-community article h3 {
	font-size: 105%;
	padding: 0.3em;
	border-bottom: 1px solid #999;
	margin-bottom: 0.5em;
}
.qlf-community article .c-lst {
	padding: 0 0.5em;
	display: grid;
	gap: 0.5em;
}
.qlf-community .c-inr_qlf article .c-lst {gap: 2rem 1rem;}
@media screen and (min-width: 1000px) {
	.qlf-community article .c-lst {
		font-size: 87.5%;
		grid-template-columns: 38% 32% 1fr;
	}
	.qlf-community .c-inr_qlf article .c-lst {grid-template-columns:1fr 1fr 1fr;}
	.qlf-community article .c-lst li i {
		font-size: 75%;
	}
}

/* ============================================================== qualified voice */
.qlf-voice.c-pl_btns .c-btns {
	grid-template-columns: 1fr 1fr;
}
@media screen and (min-width: 750px) {
	.qlf-voice.c-pl_btns .c-btns {
		grid-template-columns: 1fr 1fr 1fr;
	}
}
.qlf-voice_lst {
	display: grid;
	gap: 2em;
}
@media screen and (min-width: 1000px) {
	.qlf-voice_lst {
		grid-template-columns: 1fr 1fr;
	}
}
.qlf-voice .c-bx {
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-rows: subgrid;
	grid-row: span 3;
	gap: 0 1em;
	border: 1px solid var(--color-org);
	background-color: var(--color-white);
	border-radius: 0.5em;
	padding: 1em;
}
.qlf-voice .c-bx.c-pro {
	border-color: var(--color-course-02);
}
.qlf-voice .c-bx.c-adv {
	border-color: var(--color-course-03);
}
.qlf-voice .c-bx .c-fig {
	display: block;
	max-width: 10em;
}
.qlf-voice .c-bx .c-fig span {
	display: block;
	overflow: hidden;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
}
.qlf-voice .c-bx .c-name {
	align-self: center;
	font-size: 125%;
}
.qlf-voice .c-bx .c-name span {
	display: block;
}
.qlf-voice .c-bx .c-name span:nth-of-type(1) {
	font-size: 75%;
}
.qlf-voice .c-bx .c-name span:nth-of-type(1) i {
	display: inline-block;
}
.qlf-voice .c-bx .c-name span:nth-of-type(2) i {
	font-size: 75%;
}
.qlf-voice .c-bx .c-desc,
.qlf-voice .c-bx .c-lead {
	grid-column: 1 / 3;
}
.qlf-voice .c-bx .c-lead {
	margin-top: 1em;
	font-size: 100%;
	font-weight: bold;
	color: var(--color-org);
}
.qlf-voice .c-bx.c-pro .c-lead {
	color: var(--color-course-02);
}
.qlf-voice .c-bx.c-adv .c-lead {
	color: var(--color-course-03);
}
.qlf-voice .c-bx .c-desc {
	font-size: 87.5%;
}
/* ============================================================== qualified member */
.qlf-member_intro .c-bx {
	margin-top: 2em;
}
.qlf-member_intro .c-bx dl {
	display: grid;
	grid-template-columns: 6em 1fr;
	border: 1px solid #999;
	max-width: 30em;
	margin: 0 auto;
}
.qlf-member_intro .c-bx dl + dl {
	border-top: 0 none;
	margin: 0 auto 1em;
}
.qlf-member_intro .c-bx dt,
.qlf-member_intro .c-bx dd {
	padding: 0.5em;
}
.qlf-member_intro .c-bx dt {
	border-right: 1px solid #999;
	background-color: var(--color-pale);
	text-align: center;
}
.qlf-member_intro .c-bx dd {
	text-align: right;
}
.qlf-member_intro .c-kome {
	width: fit-content;
	margin: 0 auto;
}
.qlf-member_benefits .c-set {
	display: grid;
	gap: 1em;
}
.qlf-member_benefits .c-bx {
	background-color: var(--color-white);
	border: 1px solid #ccc;
	padding: 1em;
}
.qlf-member_benefits .c-bx h3 {
	color: var(--color-grn);
	margin-bottom: 1em;
	font-weight: bold;
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.3em;
	align-items: center;
}
.qlf-member_benefits .c-bx h3 span:nth-of-type(1) {
	font-size: 87.5%;
	background-color: var(--color-grn);
	color: #fff;
	padding: 0.2em 0.5em;
}
.qlf-member_benefits .c-bx h3 span:nth-of-type(1) i:nth-of-type(2) {
	font-size: 120%;
	line-height: 1;
	display: inline-block;
	margin-left: 0.2em;
}
.qlf-member_benefits .c-bx h3 span:nth-of-type(2) {
	margin-left: 0.2em;
	line-height: 1;
}
.qlf-member_benefits .c-bx .c-desc {
	color: var(--color-org);
	font-weight: bold;
}
.qlf-member_benefits .c-bx .c-fig {
	margin: 1em auto;
	max-width: 360px;
}
.qlf-member_benefits .c-bx:nth-of-type(5) .c-fig {
	max-width: 240px;
}
.qlf-member_benefits .c-bx .c-lst {
	margin: 1em 0;
}
@media screen and (min-width: 1000px) {
	.qlf-member_benefits .c-set {
		grid-template-columns: 1fr 1fr;
	}
	.qlf-member_benefits .c-bx {
		display: grid;
		grid-template-rows: subgrid;
		grid-row: span 4;
		gap: 0;
	}
	.qlf-member_benefits .c-bx .c-fig {
		align-self: center;
	}
}
.qlf-member_benefits .c-kkm {
	margin: 2em 0 0;
}
.qlf-member_benefits .c-kkm h3 {
	border-bottom: 1px solid var(--color-grn);
	padding: 0 0 0.5em;
	margin: 0 0 0.5em;
}
.qlf-member_benefits .c-kkm .c-lst {
	font-size: 87.5%;
	gap: 0.5em;
}
/* ============================================================== qualified partner */
.qlf-partner .c-ttl {
	text-align: center;
}
.qlf-partner .c-ttl i {
	display: inline-block;
}
.qlf-partner .c-ttl i:nth-of-type(1) {
	font-size: 75%;
	margin-right: 0.3em;
}
.qlf-partner .c-kkm {
	padding: 1em;
	background-color: color-mix(in srgb, var(--color-ylw) 20%, var(--color-white));
}
.qlf-partner .c-fig {
	margin: 1em auto 2em;
	max-width: 860px;
}
.qlf-partner .c-kkm h3 {
	margin-bottom: 0.5em;
	color: var(--color-logo-org);
	font-weight: bold;
}
.qlf-partner .c-set {
	display: grid;
	gap: 1em;
}
.qlf-partner .c-set .c-btns {
	padding: 0;
}
.qlf-partner .c-set .c-lst {
	gap: 0.5em;
	margin: 1em 0;
}
.qlf-partner .c-set .c-lst a i {
	font-size: 75%;
	display: inline-block;
	color: #666;
	
}
@media screen and (min-width: 1000px) {
	.qlf-partner .c-set {
		grid-template-columns: 1fr 1fr;
		gap: 1em 2em;
	}
	.qlf-partner .c-set figure {
		grid-row: 1 / 4;
	}
}

/* ============================================================== info legal */
.inf-legal .c-inr {
	display: grid;
	gap: 2em;
	font-size: 87.5%;
	max-width: 860px;
}
.inf-legal h3 {
	font-size: 115%;
	margin-bottom: 0.3em;
	padding-bottom: 0.3em;
	border-bottom: 1px solid #999;
}
.inf-legal dl {
	display: grid;
	grid-template-columns: 5.5em 1fr;
}
.inf-legal dl:not(:last-of-type) {
	margin-bottom: 0.5em;
}
.inf-legal dl span {
	display: inline-block;
}
.inf-legal dl i {
	display: inline-block;
	font-size: 87.5%;
}
.inf-legal dt {
	color: #333;
}
.inf-legal .c-bx > div {
	margin-top: 1em;
}
.inf-legal .c-lst {
	margin-top: 0.5em;
}
.inf-legal .c-price dl {
	margin-top: 0.5em;
	display: grid;
	grid-template-columns: 5.5em 1fr;
	width: 100%;
	max-width: 480px;
	border: 1px solid #ccc;
}
.inf-legal .c-price dt {
	text-align: center;
	background-color: #eee;
	color: var(--color-black);
	padding: 0.5em;
	display: grid;
	align-items: center;
}
.inf-legal .c-price dd {
	padding: 0.5em;
	text-align: right;
}
.inf-legal .c-price dl.dl_chart01{max-width:initial;}
.inf-legal .c-price dl.dl_chart01 dt,.inf-legal .c-price dl.dl_chart01 dd{text-align: left;border-bottom: 1px solid #ccc;}
.inf-legal .c-price dl.dl_chart01 dt:last-of-type,.inf-legal .c-price dl.dl_chart01 dd:last-of-type{border-bottom:none;}
.inf-legal .c-price dl.dl_chart01 .font_b{font-weight: bold;padding-right: 1rem;}
.li_decimal{margin:1rem 0 1rem 2rem;}
.li_decimal li{list-style: decimal;margin-left: 2rem;margin-bottom: .5rem;}
.inf-legal h5{font-size: initial;margin: 1rem 0;}

.c-sct_event h5{display: block;}
dl.dl_chart00{display: block;}
dl.dl_chart00 dt{padding: 10px 10px 5px 10px;border-bottom: solid 3px #d0df95;font-weight: bold;margin: 2rem 0;font-size: 2rem;}
dl.dl_chart00 dd{padding-bottom:4px;}

.c-inr_qlf .c-wrp figure img{aspect-ratio: 16 / 9;object-fit: cover;width: 100%;}
.c-inr_qlf .c-wrp,.c-inr_qlf .c-inr{margin-top: 3em;}
.c-inr_qlf .c-wrp h3 span,.c-inr_qlf .c-inr h3 span{padding: 0.3em 1.2em;border: 2px solid var(--color-black);white-space: nowrap;}
