@charset "shift-JIS";


/*--------------------
背景色
--------------------*/
#mainColumn .contents.bgcolor_box {
	background: #af0000;
	background: linear-gradient(90deg, #af0000 20%, #a60101 40%, #800 100%);
	border-radius: 10px;
	color;
	#fff;
	color: #fff;
	padding: 2rem;
}

@media screen and (max-width:767px) {
	#mainColumn .contents.bgcolor_box {
		padding: 1rem;
	}
}

/*--------------------
見出し
--------------------*/
h2.spring_ttl,
p.reason_ttl {
	background: transparent;
	border-bottom: none;
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	text-align: center;
	font-style: italic;
}

h2.spring_ttl:after {
	background: transparent;
}

p.reason_ttl {
	font-size: 1.8rem;
	margin-top: 0 !important;
}


/*--------------------
テキスト装飾
--------------------*/
.text_box {
	position: relative;
	padding: 1px 2rem 2rem 2rem;
	background-color: #fff;
	color: #333;
	text-align: center;
	line-height: 1.8;
	font-weight: 800;
}

.text_box:after {
	position: absolute;
	content: '';
	display: inline-block;
	width: 80px;
	height: 94px;
	background-image: url(/kaikeishi/start/spring/images/index/light.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
	top: 20px;
	right: 20px;
}

@media screen and (max-width:767px) {
	.text_box:after {
		width: 50px;
		height: 64px;
		top: 120px;
		right: 30px;
	}
}

.text_box p {
	font-weight: 800;
}

.dashed {
	border-bottom: dashed 1px #c21e1e;
}

.emp {
	/* font-size: 1.2rem; */
	font-weight: 800;
	color: #c21e1e;
}


strong.emp {
	font-size: 1.4rem;
	font-weight: 800;
	color: #c21e1e;
	background: linear-gradient(transparent 60%, #ff6 60%);
}


.yellow {
	color: #ff6;
}

ul.reason {
	margin: auto;
	background: #750000;
	border-radius: 10px;
	padding: 2rem;
}

@media screen and (max-width:767px) {
	ul.reason {
		width: 100%;
	}
}

ul.reason li {
	border-bottom: 1px solid #8c0000;
	padding-bottom: 10px;
	margin-bottom: 10px;
}

ul.reason li:last-child {
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0;
}

ul.reason a {
	color: #fff;
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	line-height: 2;
	font-size: 1.2rem;
}

span.reason {
	color: #bf6666;
	font-style: italic;
}

@media screen and (max-width:767px) {
	ul.reason {}

	ul.reason li {
		margin-bottom: 10px;
	}

	ul.reason li:last-child {
		margin-bottom: 0;
	}

	ul.reason a {
		line-height: 1.6rem;
	}

	span.reason {
		display: block
	}
}

/*---------------------
ボタンの影
---------------------*/
.btnLink {
	box-shadow: rgba(0, 0, 0, 0.2) 0px 3px 10px;
	transition: all .3s;
}

.btnLink:hover {
	box-shadow: none;
	text-decoration: none;
}


/*---------------------
LECが選ばれる3つの理由
---------------------*/

/*高さ調整*/
#reason02 {
	scroll-margin-top: 80px;
}

@media screen and (max-width: 768px) {
	#reason02 {
		scroll-margin-top: 60px;
	}
}


h3.reason_ttl01,
h3.reason_ttl02,
h3.reason_ttl03 {
	background: transparent;
	border-bottom: none;
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-weight: 800;
	font-size: 2.2rem;
	/* margin-bottom: 40px; */
}


h3.reason_ttl02 {
	margin-bottom: -0px;
}

h3.reason_ttl01 {
	margin-bottom: 0px;
}

h3.reason_ttl01:after,
h3.reason_ttl02:after,
h3.reason_ttl03:after {
	background: transparent;
}

h3.reason_ttl01::before,
h3.reason_ttl02::before,
h3.reason_ttl03::before {
	position: absolute;
	content: "";
	background: url(/kaikeishi/start/spring/images/index/medal01.png) no-repeat bottom right / contain;
	width: 135px;
	height: 175px;
	top: -80px;
	right: 0px;
}

h3.reason_ttl02::before {
	background: url(/kaikeishi/start/spring/images/index/medal02.png) no-repeat bottom right / contain;
	top: -130px;
}

h3.reason_ttl03::before {
	right: -30px;
	background: url(/kaikeishi/start/spring/images/index/medal03.png) no-repeat bottom right / contain;
	top: -150px;
}


@media screen and (max-width:767px) {

	h3.reason_ttl01,
	h3.reason_ttl02,
	h3.reason_ttl03 {
		font-size: 1.6rem;
		margin-bottom: 0;
		line-height: 1.2;
	}

	h3.reason_ttl03 {
		margin-bottom: 10px;
	}


	h3.reason_ttl01::before,
	h3.reason_ttl02::before,
	h3.reason_ttl03::before {
		width: 80px;
		height: 106px;
		top: -80px;
		right: 0px;
	}

	h3.reason_ttl02::before {
		top: -110px;
	}
}

h4.reason_ttl03 {
	font-size: 1.8rem;
}

@media screen and (max-width:767px) {
	h4.reason_ttl03 {
		font-size: 1.4rem;
	}
}


.conclusion {
	font-weight: 800;
	font-size: 2.0rem;
	text-align: center;
	margin-top: 20px;

}

@media screen and (max-width:767px) {
	.conclusion {
		font-size: 1.2rem;
	}
}

.solution_box p span.point {
	color: #ac0000;
	font-weight: 800;
	font-size: 2.8rem;
	line-height: 1.2;
}

@media screen and (max-width:767px) {

	.solution_box p span.point {
		font-size: 2.4rem;

	}
}

/**/
.solution_box {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 1.5rem;
	position: relative;
	overflow: hidden;
	background: linear-gradient(135deg, #eef3f7 0%, #c7d3df 100%);
	border-radius: 20px;
	padding: 2rem 2rem 0 2rem;
	/* margin-bottom: 40px; */
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .6);
}

.solution_box::before {
	/* content: ""; */
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 85% 15%, rgba(255, 255, 255, .55), transparent 28%),
		radial-gradient(circle at 0% 100%, rgba(176, 0, 0, .08), transparent 35%);
	pointer-events: none;
}

.solution_box p {
	position: relative;
	z-index: 1;
	margin: 0;
	align-self: center;
	line-height: 1.35;
	letter-spacing: .03em;
}

.solution_box .point {
	display: inline-block;
	color: #b00000;
	font-size: clamp(2rem, 4vw, 3.4rem);
	font-weight: 900;
	line-height: 1.25;
	text-shadow: 1px 1px 0 rgba(255, 255, 255, .7);
}

.solution_box p {
	color: #222;
	font-size: clamp(1.5rem, 3vw, 2.2rem);
}

.solution_box img {
	position: relative;
	z-index: 1;
	display: block;
	max-width: 210px;
	width: 38vw;
	height: auto;
	align-self: end;
	/* filter: drop-shadow(0 8px 10px rgba(0, 0, 0, .18)); */
}

/* スマホ */
@media screen and (max-width: 768px) {
	.solution_box {
		grid-template-columns: 1fr;
		gap: 1rem;
		padding: 2rem 1.5rem 0;
		text-align: center;
	}

	.solution_box img {
		justify-self: center;
		width: 60%;
		max-width: 260px;
	}
}

/*---------------------
理由02
---------------------*/

.total_priceBOX {
	color: #ab0000;
	text-align: center;
	font-weight: 800;
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 1.5rem;
	position: relative;
	overflow: hidden;
	background: linear-gradient(135deg, #eef3f7 0%, #c7d3df 100%);
	border-radius: 20px;
	padding: 2rem 2rem 0 2rem;
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .6);
	margin-bottom: 40px;
}


/* スマホ */
@media screen and (max-width: 768px) {

	.total_priceBOX {
		grid-template-columns: 1fr;
		gap: 1rem;
		padding: 2rem 1.5rem 0;
		text-align: center;
	}

	.total_priceBOX img {
		justify-self: center;
		width: 60%;
		max-width: 260px;
	}
}

.total_priceBOX img {
	position: relative;
	z-index: 1;
	display: block;
	max-width: 210px;
	width: 38vw;
	height: auto;
	align-self: end;
	filter: drop-shadow(0 8px 10px rgba(0, 0, 0, .18));
}

.total_priceBOX p {
	font-weight: 800;
	font-size: 1.6rem;
}

/* スマホ */
@media screen and (max-width: 768px) {
	.total_priceBOX p {
		line-height: 1.2;
	}
}

.price,
.total_price {
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	font-weight: 800;

}

.total_price {
	font-size: 3.8rem;
	font-size: 3.8rem;
	display: inline;
	background-image: linear-gradient(#ffeb3b, #ffeb3b);
	background-repeat: no-repeat;
	background-size: 100% 0.2em;
	background-position: 0 80%;
}

.price_box01,
.price_box02 {
	border-radius: 10px;
	padding: 1rem;
	color: #444;
	border: 2px solid #acd9ae;
	background: #f4faf5;
}

.price_box02 {
	border: 2px solid #b0ceef;
	background: #f4f7fb;
}

.price_box01 p.tantou,
.price_box02 p.ronbun {
	text-align: center;
}


dl.price_tantou,
dl.price_ronbun {
	/* background: #4CAF50; */
	border-radius: 10px;
	padding: 1rem;
	color: #4CAF50;
	text-align: center;
}


dl.price_tantou dt,
dl.price_ronbun dt {
	font-weight: 800;
	font-size: 1.2rem;
	background: #4CAF50;
	padding: 5px 1rem 0 1rem;
	display: inline-block;
	border-radius: 999px;
	margin-bottom: 1rem;
	color: #fff;
}

dl.price_ronbun dt {
	background: #3f51b5;
}

dl.price_ronbun dd {
	color: #3f51b5;
}



dl.price_tantou dd .price,
dl.price_ronbun dd .price {
	font-weight: 800;
	font-size: 2.6rem;
}

ul.costcut {
	border-radius: 10px;
	padding: 1rem;
	width: 100%;
	border: solid 3px #f5c1c1;
}

ul.costcut li {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-bottom: 10px;
	border-bottom: 1px solid #ccc;
	padding-bottom: 10px;
}

ul.costcut .text {
	display: flex;
	align-items: flex-start;
}

ul.costcut .num {
	margin-right: 0.3em;
	flex-shrink: 0;
}

ul.costcut li:last-child {
	border-bottom: none;
	padding-bottom: 0;
}


ul.costcut li:last-child {
	margin-bottom: 0;
}

ul.costcut li:last-child {
	margin-bottom: 0;
}

ul.costcut li dl dt {
	font-size: 1.2rem;
	color: #c8000b;
	font-weight: bold;
	text-indent: -1em;
	padding-left: 1em;
}


ul.costcut li img {
	width: 80px;
	height: auto;
	margin-left: auto;
}



/* スマホ */
@media screen and (max-width: 768px) {
	ul.costcut li {
		display: flex;
	}

	ul.costcut li dl dt {
		line-height: 1.2;
		margin-bottom: 10px;
		font-size: 16px;
	}

	ul.costcut li img {
		width: 50px;
	}
}

/*--------------
テーブル上書き
--------------*/
table.detail th {
	color: #333;
}


table.detail td {
	background: #fff;
	color: #333;
}

.attBox01 {
	color: #333;
}

/**/
.contents_box {
	background: #fff;
	padding: 1rem;
	border-radius: 10px;
	color: #333;
}

/*--------------
合格者
--------------*/

.success {
	display: flex;
	gap: 1rem;
	align-items: flex-start;
	border: 1px solid #bf9745;
	padding: 1rem;
	background: #8d0000;
	border-radius: 5px;
	margin-top: 20px;
}

.success img {
	width: 100px;
	height: auto;
}

h4.success_ttl .voice {
	font-size: 16px;
	padding: 0 1rem;
	border-radius: 999px;
	color: #8d0000;
	background: #f1c138;
}

h4.success_ttl {
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
	text-align: center;
	border-left: none;
	position: relative;
	color: #f1c138;
	padding-left: 0;
	line-height: 1.4;
	margin-top: 10px;
}

h4.success_ttl:before {
	position: absolute;
	content: "";
	top: 70%;
	left: 0;
	width: 22px;
	height: 50px;
	transform: translateY(-50%);
	background-image: url(/kaikeishi/start/spring/images/index/laurel01.png);
	background-size: contain;
	background-repeat: no-repeat;
}

h4.success_ttl:after {
	position: absolute;
	content: "";
	top: 70%;
	right: 0;
	width: 22px;
	height: 50px;
	transform: translateY(-50%);
	background-image: url(/kaikeishi/start/spring/images/index/laurel02.png);
	background-size: contain;
	background-repeat: no-repeat;
}

@media screen and (max-width: 768px) {
	h4.success_ttl {
		font-size: 1.2rem;
	}
}

h5.success_name {
	font-weight: 800;
	border-left: none;
	display: flex;
	gap: 1rem;
	align-items: flex-end;
	line-height: 1;
	margin-bottom: 1rem;
}

h5.success_name img {
	width: 40px;
	height: auto;
}

@media screen and (max-width: 768px) {
	h5.success_name {
		gap: 0.5rem;
		margin-bottom: 0.5rem;
	}

	h5.success_name img {
		width: 30px;
		height: auto;
	}
}


h5.success_name:after {
	content: " さん";
	font-size: 12px;
}


dl.success_innder dt {
	position: relative;
	display: inline-block;
	height: 30px;
	line-height: 30px;
	padding: 0 2rem;
	background:
		repeating-linear-gradient(#ccb455 0 100%);
	background-repeat: no-repeat;
	background-size: 87% 100%;
	background-position: center;
	background-color: #ccb455;
	color: #a50000;
	font-weight: bold;
	text-align: center;
	margin-bottom: 1rem;
}

dl.success_innder dt::before,
dl.success_innder dt::after {
	position: absolute;
	top: 0;
	width: 0px;
	height: 0px;
	border-color: transparent #8d0000;
	border-style: solid;
	content: '';
}

dl.success_innder dt::before {
	left: 0;
	border-width: 15px 0px 15px 10px;
}

dl.success_innder dt::after {
	right: 0;
	border-width: 15px 10px 15px 0px;
}



dl.success_innder dd {
	font-size: 14px;
}

/* スマホ */
@media screen and (max-width: 768px) {
	h5.success_name {
		font-size: 16px;
	}

	dl.success_innder dt {
		margin-bottom1rem;
	}
}

/* スマホだけ */
@media screen and (max-width: 768px) {
	.success {
		display: grid;
		grid-template-columns: 70px 1fr;
		gap: 0.5rem 1rem;
		align-items: start;
	}

	.success>img {
		grid-column: 1;
		grid-row: 1 / 3;
		width: 70px;
	}

	.success>div {
		display: contents;
	}

	h5.success_name {
		grid-column: 2;
		grid-row: 1;
		font-size: 16px;
		margin-bottom: 0;
	}

	dl.success_innder {
		display: contents;
	}

	dl.success_innder dt {
		grid-column: 2;
		grid-row: 2;
		margin-bottom: 0;
		justify-self: start;
	}

	dl.success_innder dd {
		grid-column: 1 / -1;
		grid-row: 3;
		margin-top: 0.5rem;
		font-size: 13px;
	}
}

/*-----------------
tLink-aの上書き
-----------------*/

.success_more {
	grid-column: 1 / -1;
	text-align: right;
	margin-top: 1rem;
}


.tLink-b {
	background: url("/kaikeishi/start/spring/images/index/t-arrow.png") no-repeat right 0.35em;
	padding-left: 20px;
	color: #fff;
	text-align: left;
	display: inline-block;
	width: auto;
	white-space: nowrap;
	text-align: right;
	background-position: left 0.35em;
	font-size: 14px;
}


.success_more .tLink-b {
	background: url("/kaikeishi/start/spring/images/index/t-arrow.png") no-repeat right 0.35em;
	padding-right: 20px;
	color: #fff;
	text-align: right;
	display: inline-block;
	width: auto;
	white-space: nowrap;
	text-align: left;
	background-position: right 0.35em;
	font-size: 14px;
}

.nice_price {
	color: #ab0000;
}


/*----------------------------
理由03
----------------------------*/
#reason03 h4,
#reason03 h4.reason_ttl03 {
	font-weight: 800;
	border-left: none;
	padding-left: 0;
	margin-bottom: 1rem;
}



@media screen and (max-width: 768px) {
	#reason03 h4 {
		font-size: 1.2rem;
	}
}

#reason03 h4.reason_ttl03 {
	color: #e3b252;
}

#reason03 {
	margin-bottom: 0 !important;
}

h4.text_ttl {
	font-weight: 800;
	border-left: none;
	padding-left: 0;
	margin-bottom: 1rem;
	display: flex;
	gap: 1rem;
	align-items: center;
}


h4.text_ttl img {
	width: 250px;
	height: auto;
	margin-left: auto;
}


@media screen and (max-width: 768px) {
	.contents_box h2{
		font-size:1.4rem;
		}
	.contents_box h3.h2Style{
		font-size:1.4rem;
	}
	.contents_box h3{
		font-size:1.3rem;
		}
			h4.text_ttl {
		flex-direction: column;
	}

	h4.text_ttl .ttl_txt {
		font-size: 18px;
		line-height: 1.4;
		text-align: center;
	}

	h4.text_ttl img {
		margin: auto;
	}
}



/*-----------------
オリジナルテキスト
-----------------*/
.text_area {
	display: flex;
	gap: 1rem;
	flex: 1;
}


.text_other dl dt,
.text_lec dl dt {
	font-weight: 800;
	padding: 5px 10px;
	color: #fff;
	background: #999;
	margin-bottom: 1rem;
	text-align: center;
}


@media screen and (max-width: 768px) {
	.text_other dl dt {
		font-size: 11px;
		padding: 5px 0px;
	}
}

.text_lec dl dt {
	font-weight: 800;
	padding: 5px 10px;
	background: #e26565;
}

.text_other,
.text_lec {
	margin-top: 0 !important;
	flex: 1;
	border: 2px solid #ccc;
	border-radius: 10px;
	padding: 1rem;
}

.text_lec {
	border: 2px solid #efaaaa;
}


/*-----------------
LECの場合
-----------------*/
.text_img {
	background: #fff;
	background: linear-gradient(90deg, #f7f7f5 20%, #ebeae8 100%);
	border-radius: 10px;
}

.text_img img {
	margin: auto;
	display: block;
}


.style_outer {
	padding: 1rem;
	border-radius: 10px;
	border: 2px solid #f3aeae;
	background: #fbe8e8;
}

.style_outer h5 {
	font-weight: 800;
	border-left: none;
	margin-bottom: 1rem;
}

.style_box {
	display: flex;
	gap: 1rem;
}

@media screen and (max-width: 768px) {
	.style_box {
		flex-direction: column;
	}

	ul.style_img {
		display: flex;
		gap: 1rem;
	}
}

.style_box ul {
	margin-top: 0 !important;
}

.style_box ul.disc li,
ul.style_img li {
	margin-bottom: 1rem;
}

.style_box ul.disc li:last-child,
ul.style_img li:last-child {
	margin-bottom: 0px;
}

ul.style_img li {
	width: 200px;
	height: auto;
}

/*------------
通学スタイル
------------*/

.multi_box {
	display: flex;
	/* gap:1rem; */
	align-items: flex-start;
}


.multi_box img {
	width: 200px;
	height: auto;
}

@media screen and (max-width: 768px) {
	.multi_box {
		flex-direction: column;
	}

	.multi_box img {
		width: 90%;
		height: auto;
		margin: auto;
	}
}



/*------------
学習フォロー
------------*/
.follow {
	display: flex;
	gap: 1rem;
	margin-top: 2em;
}

@media screen and (max-width: 768px) {
	.follow {
		flex-direction: column;
		margin-top: 0;
	}
}


.lower-mainBox .follow_inner {
	flex: 1;
	margin-top: -1em;
	border: 1px solid #ccc;
	padding: 1rem;
	border-radius: 10px;
}


@media screen and (max-width: 768px) {

	.lower-mainBox .follow_inner {
		margin-top: 1em;
	}
}


.follow_inner dl {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.follow_inner dt {
	font-weight: 800;
	color: #af0000;
	border-left: 7px solid #da8a8a;
	line-height: 1;
	padding-left: 10px;
}

.follow a {
	width: 100%;
	text-align: center;
	margin: auto;
}





/*------------------------
コンバージョンボタン
------------------------*/
.cv_area {
	margin: 2rem 1rem;
	text-align: center;
}


.cv_list {
	display: flex;
	gap: 1rem;
	margin-bottom: 1rem
}

.cv_list li {
	flex: 1;
}

.btn_request a,
.btn_soudan a,
.btn_trial a,
.cv_btn a {
	color: #fff;
	display: block;
	padding: 1rem;
	border-radius: 12px;
	box-shadow: 0 4px 12px rgba(0, 0, 0, .18);
	transition: all .3s ease;
	text-align: center;
	font-weight: 700;
}


@media screen and (max-width: 768px) {

	.btn_request a,
	.btn_soudan a,
	.btn_trial a,
	.cv_btn a {
		font-size: 12px;
		padding: 10px 5px;
		border-radius: 8px;
	}
}


/* 青ボタン */
.btn_request a,
.btn_soudan a,
.btn_trial a,
.BtnRequest,
.BtnSoudan,
.BtnOtameshi {
	background: linear-gradient(135deg, #0086cc 0%, #5bbdff 100%);
}

.btn_request a:hover,
.btn_soudan a:hover,
.btn_trial a:hover,
.BtnRequest:hover,
.BtnSoudan:hover,
.BtnOtameshi:hover {
	transform: translateY(2px);
	box-shadow: 0 2px 6px rgba(0, 0, 0, .15);
	background: linear-gradient(135deg, #5bbdff 0%, #0086cc 100%);
	text-decoration: none;
}

.cv_btn a,
.cvBtn {
	position: relative;
	background: linear-gradient(90deg,
			#8f7308 0%,
			#cfae2a 15%,
			#ffe57a 35%,
			#fff7cf 50%,
			#ffe57a 65%,
			#cfae2a 85%,
			#8f7308 100%);

	border: 2px solid #d6b43b;
	color: #5a4700;
	text-shadow: 0 1px 1px rgba(255, 255, 255, .6);
	display: block;
	text-align: center;
	font-weight: 800;
	font-size: 1.5rem;
	width: 68%;
	max-width: 500px;
	padding: 1.2rem 4rem;
	margin: auto;
	border-radius: 14px;
	box-shadow:
		0 5px 14px rgba(0, 0, 0, .22),
		inset 0 2px 1px rgba(255, 255, 255, .5);

	overflow: hidden;
	transition: all .3s ease;
}

.cvBtn {
	width: 100%;
}

@media screen and (max-width: 768px) {

	.cv_btn a {
		width: 80%;
		max-width: 600px;
		padding: 1.2rem 4rem;
	}

	.cvBtn {
		height: 50px;
	}
}




/* キラッ */
.cv_btn a::before,
.cvBtn::before {
	content: "";
	position: absolute;
	top: 0;
	left: -75%;
	width: 40%;
	height: 100%;

	background: rgba(255, 255, 255, .35);

	transform: skewX(-25deg);

	transition: .7s;
}

.cv_btn a:hover::before,
.cvBtn:hover::before {
	left: 130%;
}


/* 矢印 */

.cv_btn a::after,
.cvBtn::after {
	content: "";

	position: absolute;
	right: 1.6rem;
	top: 50%;

	width: 10px;
	height: 10px;

	border-top: 3px solid #7a5d00;
	border-right: 3px solid #7a5d00;

	transform: translateY(-50%) rotate(45deg);

	transition: all .3s ease;
}

/* hover */
.cv_btn a:hover,
.cvBtn:hover {
	transform: translateY(2px);
	box-shadow:
		0 2px 8px rgba(0, 0, 0, .18),
		inset 0 1px 1px rgba(255, 255, 255, .3);
	color: #3f3200;
	background: linear-gradient(90deg,
			#a78612 0%,
			#d8b833 20%,
			#ffe57a 50%,
			#d8b833 80%,
			#a78612 100%);
	text-decoration: none;
}


/* hover時に矢印ちょい動く */
.cv_btn a:hover::after,
.cvBtn:hover::after {
	right: 1.1rem;
	color: #4d3b00;
}



/*-----------------
固定ボタン上書き
-----------------*/

ul.cvList {
	padding: 0;
	display: flex;
	gap: 1rem;
	align-items: center;
	justify-content: center;
}


ul.cvList li {
	display: list-item;
}


@media screen and (max-width: 767px) {
	ul.cvList {
		flex-wrap: wrap;
	}

	ul.cvList .cvApply {
		flex-basis: 100%;
		width: 100%;
		margin-top: 10px;
	}

	ul.cvList .cvApply .cvBtn {
		display: block;
	}
}

/*-------------
フキダシ
-------------*/

.fukidashi {
	position: relative;
	display: inline-block;
	margin-bottom: 10px;
	padding: 16px;
	border: 3px solid #85c5f8;
	border-radius: 999px;
	background-color: #ffffff;
	text-align: left;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	color: #e50012;
	font-weight: 800;
}


@media screen and (max-width: 768px) {


	.fukidashi {
		text-align: center;
		padding: 10px 30px;
	}
}

.fukidashi::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 20px 10px 0 10px;
	border-color: #85c5f8 transparent transparent;
	translate: -50% 100%;
}

.fukidashi::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	border-style: solid;
	border-width: 15.5px 7.8px 0 7.8px;
	border-color: #85c5f8 transparent transparent;
	translate: -50% 100%;
}


.fukidashi {
	animation: floating-y 1.8s ease-in-out infinite alternate-reverse;
}

@keyframes floating-y {
	0% {
		transform: translateY(-10%);
	}

	100% {
		transform: translateY(10%);
	}
}


/*-------------------
サポート
-------------------*/
dl.supportInner dt {
	background: #8c0000;
	color: #fff;
	padding: 10px;
	font-weight: bold;
	text-align: center;
}


/*-------------------
講師を並べる
-------------------*/
ul.teacher_box {
	display: flex;
	gap: 1rem;
	justify-content: center;
	align-items: center;
	text-align: center;
}

ul.teacher_box li {
	line-height: 1.2;
}


@media screen and (max-width: 768px) {
	ul.teacher_box li {
		font-size: 12px;
	}

	ul.teacher_box li img {
		width: 80px;
		height: auto;
		margin: auto;
	}
}

.request01,
.request02 {
	background: #fff1c9;
	border-radius: 10px;
	padding: 1rem;
}

.request02 {
	background: #fddfdd;
}