@charset "UTF-8";
/* course.css */

.mission_img {
	width: 100%;
	max-width: inherit;
}
.mar_emh_T { margin-top:0.5em; }
.mar_em_T  { margin-top:1em;   }	
.mar_emh_B { margin-bottom:0.5em; }
.mar_em_B  { margin-bottom:1em;   }


/* ===== MV ===== */
.mv_text {
	width:  100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	position: absolute;
	top:  0;
	left: 0;
	padding: clamp(40px,5vw,60px) clamp(40px,5vw,60px);
}
#mv .mv_text h1 {
	font-size: 2.8vw;
	line-height: 1.7;
	letter-spacing: .1em;
	position: relative;
	text-align: left;
	display: block;
	text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.8);
	padding-top: 0;
	color: #fff;
}
#mv .mv_text h1:before {
	content: none !important;
}
#mv .mv_course {
	width: 40%;
	min-width: 300px;
	display: block;
	margin-top:  auto;
	margin-left: auto;
}
@media screen and (max-width:850px) {
	.mv_text {
		padding: 25px;
		padding: 6vw;
	}
	#mv .mv_text h1 {
		font-size: 14px;
		font-size: 3.5vw;
		letter-spacing: .05em;
		margin-left:  auto;
		margin-right: 0;
	}
	#mv .mv_course {
		width: 60%;
		min-width: inherit;
		margin-left:  0;
		margin-right: auto;
	}
}









/* ===== grad-box table ===== */
/* --- table デザイン調整 --- */
.table_td_none td:first-of-type {
	border-left: none !important;
}
#sec_table .grad_box > p {
	font-weight: normal;
}
.grad_box table .strong {
	width: 100%;
	display: block;
}


/* --- table 幅調整 --- */
.table_4column th {
	width: calc(100%/4);
}
.table_first_mini tr:first-of-type th {
	width: 180px;
}
.min_6em {
	width: 11em;
}


/* table下のdl */
.dl_tableEX div + div {
	margin-top: 20px;
}
.dl_tableEX dt {
	display: inline-block;
	line-height: 1.3;
	margin-bottom: .25em;
	padding: .25em .5em;
	color: #bf9c50;
	background-color: #fff;
}
/* btn_flex(text/btn) */
.btn_flex {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
}
.btn_wrap {
	width: 100%;
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;	
}
.btn_flex p,
.btn_wrap p {
	width: fit-content;
	min-width: fit-content;
	margin-right: 1.5em;
}
.btn_flex .btn   {
	width: 40vw;
	max-width: 400px;
}
.btn_flex .btn a {
	width: 100%;
}
.btn_flex .btn img,
.btn_wrap .btn img {
	width: 100%;
	max-width: inherit;
}

/* ===== ウエア購入費 ===== */
.wear_box {
	width: 80%;
	max-width: 500px;
	display: flex;
	flex-wrap: nowrap;
	margin-left:  auto;
	margin-right: auto;
	padding: 15px 20px 20px;
	background-color: #fff;
}
.wear_box * {
	color: #070a4a;
}
.wear_box .img_wrap {
	width: 30%;
	margin-right: 5%;
}
.wear_box img {
	width: 100%;
}
.wear_box .cont_wrap {
	width: 75%;
}
.wear_box .cont_wrap h3 {
	margin-bottom: .35em;
}
.wear_box .cont_wrap p  {
	line-height: 1.5;
	margin-bottom: 1.5em;
}
.wear_box dl {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-end;
}
.wear_price dt,
.wear_price dd {
	line-height: 1;
}
.wear_price dt {
	font-weight: 500;
	margin-right: .75em;
}
.wear_price dd {
	margin-bottom: 0;
}
.wear_box .align_right {
	margin-top: .5em;
	margin-bottom: 0 !important;
}


/* ===== grad box red ===== */
.red_grad dd {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
}
.red_grad dd:before {
	content: "";
	width:  1.8em;
	height: 0;
	min-width: 1.8em;
	font-size: min(2.1vw,21px);
	display: block;
}



/* ===== 主な戦歴 ===== */
.senreki_wrap {
	width: fit-content;
	margin-left:  auto;
	margin-right: auto;
}
/* 見出し */
.senreki_wrap h2 {
	line-height: 1;
	display: inline-block;
	margin-bottom: 1em;
	padding: .5em 2em;
	border: 1.5px solid #000;
	border-radius: 50px;
}
/* 内容 */
.senreki_wrap * {
	color: #000;
}
.senreki_wrap dl div {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	justify-content: flex-start;
}
.senreki_wrap div:first-of-type dt,
.senreki_wrap div:first-of-type dd {
	padding-top: .25em;
}
.senreki_wrap dt,
.senreki_wrap dd {
	padding-top:    .5em;
	padding-bottom: .5em;
}
.senreki_wrap dt {
	min-width: 6em;
	position: relative;
}
.senreki_wrap dt:before {
	content: "";
	width: 1.5px;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	right: 1em;
	background-color: #000;
}

/* ===== アドバンスコースの特徴 ===== */
.p_middle.list_flex span {
	line-height: 1.6;
}


/* ===== School Course 固有 ===== */
/* 見出し下のdl */
.intro_big div {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	justify-content: flex-start;
}
.intro_big div {
	margin-top: .75em;
}
.intro_big dt  {
	width: fit-content;
	min-width: 6.4em;
	text-align: left;
	transform: translateY(-.25em);
}
.intro_big dd {
	text-align: left;
	font-weight: normal;
}
/* table */
#school_table_wrap .gold_grad table {
	min-width: 1100px;
}
#school_table_wrap .gold_grad th,
#school_table_wrap .gold_grad td {
	text-align: center;
	vertical-align: middle;
}
#school_table_wrap .gold_grad td,
#school_table_wrap .gold_grad td * {
	font-size: 13px;
	font-weight: normal;
}
td p {
	line-height: 1.7;
}

#school_table_wrap .add_four {
	width: 140px;
}
#school_table_wrap .add_two {
	width: 80px;
}
#school_table_wrap .add_common {
	width: 350px;
}
.add_common_medium {
	width: 250px;
}
.add_common_small {
	width: 200px;
}


/* ===== コース各種 画像Swiper ===== */
.swiper img {
	width: 100% !important;
}
.swiper-slide {
	padding: 0 1%;
}






@media screen and (max-width:850px) {
	/* ===== 理念 ===== */
	#sec_first h2.p_big {
		font-size: 18px;
	}

	/* ===== mission card ===== */
	#sec_first h3 {
		margin-bottom: .75em;
	}
	.mission_card {
		padding: 8px;
		border-radius: 10px;
		background-color: #070a4a;
	}
	.mission_card + .mission_card {
		margin-top: 10px;
	}
	.mission_card .white_grad {
		padding: 15px 20px;
		border-radius: 5px;
  		 background-image: linear-gradient(45deg, rgba(230, 230, 230, 1), rgba(255, 255, 255, 1) 50%);
	}
	.mission_card h4 {
		font-size: 18px;
		text-align: center;
		color: #a0141a;
		margin-bottom: .5em;
	}

	/* ページごとのmission 調整 */
	#mission_advance .mission_card {
		background-color: #bf9c50;
	}
	#mission_school .mission_card {
		background-color: #971e23;
	}

	/* btn_flex(text/btn) */
	.btn_flex {
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	.btn_flex p,
	.btn_wrap p {
		text-align: center;
		margin-right: 0;
		margin-bottom: .5em;
	}
	.btn_wrap p {
		margin-bottom: 1em;
	}
	.btn_flex .btn {
		width: 90%;
		max-width: 280px;
	}


	/* ===== table調整 ===== */
	.min_3em         { width:6em; }
	.table_add_width { width:160px; }

	.grad_box table.width340 {
		min-width: 340px;
	}
	.grad_box table.width340 th {
		width: 55%;
	}
	.grad_box table.width340 td {
		width: 45%;
	}


	/* ===== grad box red ===== */
	.red_grad dd:before {
		font-size: 16px;
	}


	/* ===== ウエア購入費 ===== */
	.wear_box {
		width: 100%;
		max-width: 400px;
	}
	.wear_box .img_wrap {
		width: 32%;
		margin-right: 8%;
	}
	.wear_box .cont_wrap {
		width: 65%;
	}


	/* ===== 主な戦歴 ===== */
	.senreki_wrap p + p {
		margin-top: .5em;
	}


	/* ===== School Course 固有 ===== */
	/* 見出し下のdl */
	.intro_big div {
		flex-wrap: wrap;
	}
	.intro_big dt,  {
		width: 100%;
	}
	/* --- スクール紹介のテーブル --- */
	#sp_school_table_mini table {
		min-width: 500px !important;
	}
	#sp_school_table_mini th {
		width: 150px;
	}
	/* --- スクール紹介のテーブル --- */
	#sp_school_table_mini h3 {
		text-align: left;
		margin-bottom: 1em;
	}
	#sp_school_table_mini h3 small {
		font-size: .75em;
		line-height: 1;
		display: inline-block;
		color: #bf9c50;
		background-color: #fff;
		margin-left: .35em;
		padding: .25em .35em;
	}
	#sp_school_table_mini .table_wrap + h3 {
		margin-top: 30px;
	}
	/* ===== コース各種 画像Swiper ===== */
	.swiper-slide {
		padding: 0 .5%;
	}
}