@charset "utf-8";
@import "cmn_reset.css";
@import "cmn_options.css";

@import url('https://fonts.googleapis.com/css?family=Roboto&display=swap');
@import url('https://fonts.googleapis.com/css?family=Yellowtail&display=swap');

/* ---------------------------------------------------------

	東野高等学校【レスポンシブ】
	Date: 2016.09.06

	00. 基本設定
	01. ヘッダー
	02. フッター
	03. ページトップボタン
	04. ラッパー・コンテンツ
	05. トップページ
	06. 下層ページ共通
	07. 東野高等学校について
	08. コース紹介
	09. 学習
	10. 進路
	11. 学校生活
	12. 入試関連
	13. お知らせ
	14. 交通アクセス
	15. 各種証明書・申請書発行
	16. お問い合わせ・資料請求
	17. 在校生・保護者・卒業生の方へ
	18. 教職員/在校生用ページ
	19. クラブブログ
	20. 校長ブログ
	21. お問い合わせ・資料請求
	22. 入試期間用
	23. 印刷用
	24. 特設ページバナー
	25. ENGLISH
	26. 東野MOVIE
	27. 教員座談会

--------------------------------------------------------- */

/* ---------------------------------------------------------

	00. 基本設定

--------------------------------------------------------- */
html {
	color: #111;
	font-size: 14px;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 500; /* Win用：游ゴシック体のウェイト調整 */
	height: 100%;
  line-height: 1;
	position: relative;
	-webkit-font-smoothing: antialiased;
}
@media all and (-ms-high-contrast:none) {
	html {
		font-family: "Meiryo UI", "メイリオ", Meiryo, "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	}
}
body {
	background-color: #fff;
	height: 100%;
}
img {
	height: auto;
	vertical-align: top;
	width: 100%;
}

.fnt_serif {
  font-family: "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "HG明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif;
}
@media all and (-ms-high-contrast:none) {
	.fnt_serif {
		font-family: "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	}
}
.fnt_en {
  text-align: inherit !important;
}

.clr_normal {color: #111;}
.clr_green {color: #14adbd;}
.clr_yellow {color: #ffea00;}
.clr_red {color: #f31313;}

.font_roboto {font-family: 'Roboto', sans-serif;}

a:link,
a:visited {
	color: #111;
	text-decoration: none;
}
a:hover {
	color: #111;
	text-decoration: underline;
}
a.link_txt {
	color: #14adbd;
	text-decoration: underline;
}
a.link_txt:hover {
	text-decoration: none;
}
.layout_pc a.alpha:hover,
.layout_pc .alpha a:hover {
  opacity: 0.8;
	text-decoration: none;
}
.layout_sp a.alpha:hover,
.layout_sp .alpha a:hover {
	text-decoration: none;
}

.pc_b {display: block;}
.pc_i {display: inline;}

.sp_b,
.sp_i {display: none;}

/*===============================================
	基礎設定：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.pc_b,
	.pc_i {display: none;}

	.sp_b {display: block;}
	.sp_i {display: inline;}
}



/* ---------------------------------------------------------

	01. ヘッダー

--------------------------------------------------------- */
header {
	background-color: #f5f5f5;
	height: 110px;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1000;
}
header h1 {
	float: left;
	margin: 28px 0 0 25px;
	height: 32px;
	width: 269px;
}
header .header_logo {
	background: url(/material/img/common/header_logo_2019_01.png) no-repeat;
	background-size: contain;
	display: block;
	height: 100%;
	margin-bottom: 12px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	width: 100%;
}
header .header_tel {
	border: 1px solid rgba(51,51,51,0.3);
	display: block;
	font-size: 16px;
	font-weight: bold;
	padding: 3px 0;
	pointer-events: none;
	text-align: center;
}
.header_tel span:before {
	content: '';
	background: url(/material/img/common/header_tel_2019_01.png) no-repeat;
	background-size: contain;
	display: inline-block;
	height: 14px;
	margin-right: 5px;
	position: relative;
	top: 1px;
	width: 14px;
}

.header_gnav {
	display: flex;
	position: absolute;
	bottom: 6px;
	right: 20px;
}
.header_gnav > li {
	position: relative;
	height: 56px;
}
.header_gnav > li:not(:first-child)::before {
	content: '';
	background: linear-gradient(to bottom, #333 50%, #c0c0c0 50%);
	display: block;
	height: 20px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(-50%, -50%);
	width: 1px;
}
.header_gnav > li > a {
	color: #333;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	font-weight: bold;
	height: 100%;
	padding: 0 1.5em;
	width: 100%;
}
.header_gnav > li > a span {
	font-size: 10px;
	font-weight: normal;
	margin-top: 7px;
}

.header_gnav_sub_wrap {
	display: none;
	position: fixed;
	top: 104px;
	left: 20px;
	width: calc(100% - 40px);
}
.header_gnav_sub_wrap::before {
	content: '';
	background-color: #333;
	display: block;
	height: 6px;
	margin-left: auto;
	width: 5em;
}
#header_gnav_about .header_gnav_sub_wrap::before {
	margin-right: 36em;
	width: 13em;
}
#header_gnav_class .header_gnav_sub_wrap::before {
	margin-right: 28em;
	width: 8em;
}
#header_gnav_education .header_gnav_sub_wrap::before {
	margin-right: 21.5em;
	width: 6.5em;
}
#header_gnav_course .header_gnav_sub_wrap::before {
	margin-right: 16em;
	width: 5.5em;
}
#header_gnav_life .header_gnav_sub_wrap::before {
	margin-right: 8.5em;
	width: 7.5em;
}
#header_gnav_exam .header_gnav_sub_wrap::before {width: 8.5em;}

.header_gnav_sub {
	background-color: #333;
	display: flex;
	flex-wrap: wrap;
	padding: 30px calc((100% - 850px) / 2) 20px;
}
.header_gnav_sub li {
	width: 15%;
}
.header_gnav_sub li:not(:nth-child(6n+1)) {
	margin-left: 2%;
}
.header_gnav_sub li:nth-child(n+7) {
	margin-top: 2%;
}
.header_gnav_photo li a {
	color: #fff;
	display: block;
	font-weight: bold;
	line-height: 1.3;
	text-align: center;
}
.header_gnav_photo li a img {
	margin-bottom: 5px;
}
.header_gnav_photo .header_gnav_twoline a > span {
	line-height: 1.3;
	padding: 5px 0;
}

.header_gnav_sub li.noLink a {
	color: #999;
	cursor: default;
	font-size: 12px;
	/* padding-top: 70px; */
} /* 準備中用 */
.header_gnav_sub li.noLink a:hover {
	opacity: 1;
} /* 準備中用 */
.header_gnav_sub li.noLink a img {
	opacity: 0.5;
}

.header_snav {
	display: flex;
	position: absolute;
	top: 0;
	right: 20px;
}
.header_snav li {
	border-bottom: 1px solid #b6c0bf;
	border-left: 1px solid #b6c0bf;
	width: 130px;
}
.header_snav li:last-child {
	width: 150px;
}
.header_snav li:last-child {
	border-right: 1px solid #b6c0bf;
}
.header_snav li a {
	color: #333;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: bold;
	padding: 8px 3px;
	text-align: center;
}
.header_snav li a::before {
	content: '';
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	height: 17px;
	margin-right: 5px;
	width: 17px;
}
.header_snav li.header_snav_access a::before {
	background-image: url(/material/img/common/header_access01.png);
	width: 12px;
}
.header_snav li.header_snav_contact a::before {background-image: url(/material/img/common/header_request01.png);}
.header_snav li.header_snav_request a::before {background-image: url(/material/img/common/header_request03.png);}
.header_snav li.header_snav_donation a::before {background-image: url(/material/img/common/header_donation01.png);}
.header_snav li.header_snav_recruit a::before {background-image: url(/material/img/common/header_recruit01.png);}

.header_acc {display: none;}

/*===============================================
  ブレイクポイント：1000px以上
===============================================*/
@media screen and (min-width:1000px) {
	.home header {transition: background-color 0.3s;}
	.home header.scroll {
		background-color: transparent;
	}

	.home header .header_logo {transition: background 0.3s;}
	.scroll .header_logo {background-image: url(/material/img/common/header_logo_2019_02.png);}

	.home header .header_tel {transition: border 0.3s, color 0.3s;}
	header.scroll .header_tel {
		border-color: #fff;
		color: #fff;
	}
	.home .header_tel span::before {transition: background 0.3s;}
	header.scroll .header_tel span::before {background-image: url(/material/img/common/header_tel_2019_02.png);}

	.home .header_gnav > li:not(:first-child)::before {
		transform: background 0.3s;
	}
	.scroll .header_gnav > li:not(:first-child)::before {
		background: linear-gradient(to bottom, rgba(255,255,255,0.5) 50%, #fff 50%);
	}

	.home .header_gnav > li > a {transition: color 0.3s;}
	.scroll .header_gnav > li > a {color: #fff;}

	.home .header_snav li {transition: border 0.3s;}
	.scroll .header_snav li {
		border-bottom-color: #fff;
		border-left-color: #fff;
	}
	.home .header_snav li:last-child {transition: border 0.3s;}
	.scroll .header_snav li:last-child {border-right-color: #fff;}

	.home .header_snav li a {transition: color 0.3s;}
	.scroll .header_snav li a {color: #fff;}

	.home .header_snav li a {transition: background 0.3s;}
	.scroll .header_snav li.header_snav_access a::before {background-image: url(/material/img/common/header_access02.png);}
	.scroll .header_snav li.header_snav_contact a::before {background-image: url(/material/img/common/header_request02.png);}
	.scroll .header_snav li.header_snav_request a::before {background-image: url(/material/img/common/header_request04.png);}
	.scroll .header_snav li.header_snav_donation a::before {background-image: url(/material/img/common/header_donation02.png);}
	.scroll .header_snav li.header_snav_recruit a::before {background-image: url(/material/img/common/header_recruit02.png);}
}

/*===============================================
  ブレイクポイント：1000px未満
===============================================*/
@media screen and (max-width:999px) {
	header {
		background-color: #f5f5f5;
		height: 50px;
		position: absolute;
	}
	.home header,
	.home header.scroll {background-color: #f5f5f5}
	header h1 {
		float: none;
		margin: 0;
		height: 50px;
		padding: 8px 0 0 10px;
		width: 145px;
	}
	header .header_logo {
		height: 16px;
		margin-bottom: 3px;
	}
	header .header_tel {
		font-size: 10px;
		font-weight: normal;
		padding: 1px 0;
		pointer-events: auto;
	}
	.header_tel span:before {
		background-size: contain;
		height: 10px;
		margin-right: 3px;
		width: 10px;
	}

	header nav {
		background-color: #f5f5f5;
		/* box-shadow: 0 5px 15px rgba(1,1,1,0.2); */
		display: none;
		padding: 0 0 15px;
		position: absolute;
		top: 50px;
		left: 0;
		width: 100%;
	}
	.header_gnav {
		border-top: 1px solid rgba(51,51,51,0.3);
		display: block;
		margin: 10px auto 0;
		max-width: calc(100% - 20px);
		position: static;
	}
	.header_gnav > li {
		border-bottom: 1px solid rgba(51,51,51,0.3);
		display: block;
		height: auto;
		position: relative;
		width: 100%;
	}
	.header_gnav > li:not(:first-child)::before {display: none;}
	.header_gnav > li > a {
		color: #333;
		display: block;
		font-size: 15px;
		font-weight: normal;
		height: 100%;
		line-height: 48px;
		padding-left: 10px;
		position: relative;
		text-indent: inherit;
		width: 100%;
	}
	.header_gnav > li > a.acc_switch:before {
		content: '';
		background-color: rgba(51,51,51,0.3);
		height: 16px;
		position: absolute;
		top: 16px;
		right: 23px;
		width: 2px;
	}
	.header_gnav > li > a.acc_open.acc_switch:before {
		display: none;
	}
	.header_gnav > li > a.acc_switch:after {
		content: '';
		background-color: rgba(51,51,51,0.3);
		height: 2px;
		margin-top: -1px;
		position: absolute;
		top: 50%;
		right: 16px;
		width: 16px;
	}
	.header_gnav > li > a span.font_roboto {display: none;}

	.header_gnav_sub_wrap {
		display: none;
		position: static;
		width: 100%;
	}
	.header_gnav_sub_wrap::before {display: none;}
	.header_gnav_sub {
		background-color: transparent;
		display: block;
		padding: 0 0 15px;
	}
	.header_gnav_sub li {
		width: 100%;
	}
	.header_gnav_sub li:not(:nth-child(6n+1)) {
		margin-left: 0;
	}
	.header_gnav_sub li:nth-child(n+7) {
		margin-top: 0;
	}
	.header_gnav_sub li img,
	.header_gnav_sub li br {display: none;}
	.header_gnav_sub li a {
		color: #333;
		font-size: 12px;
		font-weight: normal;
		padding: 12px 5px 12px 15px;
		text-align: left;
	}
	.header_gnav_sub li.noLink a {
		color: #999;
	} /* 準備中用 */

	.header_snav {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin-top: 5px;
		padding: 10px;
		position: static;
	}
	.header_snav li {
		border: none;
		width: calc(50% - 5px);
	}
	.header_snav li:last-child {
		border: none;
		width: calc(50% - 5px);
	}
	.header_snav li:nth-child(n+3) {
		margin-top: 10px;
	}
	.header_snav li a {
		background-color: #fff;
		font-weight: normal;
	}

	.header_acc {
		display: block;
		height: 30px;
		position: absolute;
		top: 10px;
		right: 15px;
		width: 30px;
	}
	.header_acc p {
		height: 30px;
		width: 30px;
	}
	.header_acc p:before,
	.header_acc p:after {
		content: '';
		background-color: #333;
		height: 3px;
		margin-top: -2px;
		position: absolute;
		top: 50%;
		left: 0;
		width: 30px;
	}
	.header_acc.header_acc_open p:before {
		transform: translateY(0px) rotate(45deg);
	}
	.header_acc.header_acc_open p:after {
		transform: translateY(0px) rotate(-45deg);
	}
	.header_acc a {
		display: block;
		height: 100%;
		overflow: hidden;
		text-indent: 100%;
		white-space: nowrap;
		width: 100%;
	}
	.header_acc a:before,
	.header_acc a:after {
		content: '';
		background-color: #333;
		height: 3px;
		margin-top: -2px;
		position: absolute;
		top: 50%;
		left: 0;
		width: 30px;
	}
	.header_acc a:before {top: 5px;}
	.header_acc a:after {top: 25px;}
	.header_acc.header_acc_open a:before,
	.header_acc.header_acc_open a:after {
		display: none;
  }
}



/* ---------------------------------------------------------

	02. フッター

--------------------------------------------------------- */
footer {
	background-color: #abdde2;
	padding-top: 75px;
	width: 100%;
}

.footer_menu {
	display: flex;
	justify-content: space-between;
	gap: 4px;
	margin: 0 auto;
	max-width: 1040px;
	padding: 0 20px;
}
.footer_menu li {
	height: 140px;
	width: 14%;
}
.footer_menu li a {
	background-color: rgba(255,255,255,0.8);
	background-position: center 25px;
	background-repeat: no-repeat;
	background-size: auto 44px;
	display: block;
	font-feature-settings: 'palt';
	font-size: 13px;
	font-weight: bold;
	height: 100%;
	line-height: 1.5;
	padding-top: 80px;
	text-align: center;
	width: 100%;
}
.footer_menu li.footer_menu_office a {background-image: url(/material/img/common/footer_menu_office.png);}
.footer_menu li.footer_menu_pta a {background-image: url(/material/img/common/footer_menu_pta.png);}
.footer_menu li.footer_menu_certificate a {background-image: url(/material/img/common/footer_menu_certificate.png);}
.footer_menu li.footer_menu_contact a {background-image: url(/material/img/common/footer_menu_contact.png);}
.footer_menu li.footer_menu_request a {background-image: url(/material/img/common/footer_menu_request.png);}
.footer_menu li.footer_menu_access a {background-image: url(/material/img/common/footer_menu_access.png);}
.footer_menu li.footer_menu_english a {background-image: url(/material/img/common/footer_menu_english.png);}
.footer_menu li.footer_menu_hiccs a {background-image: url(/material/img/common/footer_menu_hiccs.png);}

.footer_inner {
	background-color: #5c5c5c;
	color: #fff;
	margin-top: 65px;
	padding: 0 20px 30px;
	text-align: center;
}
.footer_pagetop {
	padding-top: 25px;
	position: relative;
}
.footer_pagetop::before {
	content: '';
	background-color: #fff;
	height: 40px;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 1px;
}
.footer_pagetop a {
	color: #fff;
	font-weight: bold;
	letter-spacing: 0.05em;
}
.footer_logo {
	margin: 35px auto 0;
	max-width: 328px;
}
.footer_address {
	font-size: 16px;
	margin: 25px 0 10px;
}
.footer_tel a {
	color: #fff;
	font-size: 16px;
	pointer-events: none;
}
.footer_tel::before {
	content: '';
	background: url(/material/img/common/header_tel_2019_02.png) center/contain no-repeat;
	display: inline-block;
	height: 14px;
	margin-right: 5px;
	position: relative;
	top: 1px;
	width: 14px;
}
.footer_policy {
	margin-top: 25px;
}
.footer_policy a {
	color: #fff;
}
.footer_copyright {
	font-size: 10px;
	line-height: 1.5;
	margin-top: 15px;
	width: auto;
}

/*===============================================
  ブレイクポイント：980px未満
===============================================*/
@media screen and (max-width:979px) {
	.footer_menu {
		justify-content: start;
		flex-wrap: wrap;
		gap: 0.5%;
	}
	.footer_menu li {
		height: 120px;
		width: 33%;
	}
	.footer_menu li:nth-child(n+4) {
		margin-top: 0.5%;
	}
	.footer_menu li a {
		background-position: center 18px;
		padding-top: 70px;
	}
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	footer {
		padding-top: 30px;
	}

	.footer_menu {
		display: block;
		padding: 0 25px;
	}
	.footer_menu li {
		height: 50px;
		width: 100%;
	}
	.footer_menu li:nth-child(n+4) {
		margin-top: 5px;
	}
	.footer_menu li + li {
		margin-top: 5px;
	}
	.footer_menu li a {
		background-position: 10px center;
		background-size: auto 30px;
		display: flex;
		align-items: center;
		font-size: 12px;
		height: 100%;
		line-height: 1.5;
		padding-top: 0;
		padding-left: 55px;
		text-align: left;
	}

	.footer_inner {
		margin-top: 45px;
	}
	.footer_pagetop {
		padding-top: 15px;
	}
	.footer_pagetop::before {
		height: 20px;
	}
	.footer_pagetop a {
		font-size: 12px;
	}
	.footer_logo {
		margin-top: 30px;
		max-width: 220px;
	}
	.footer_address {
		font-size: 14px;
		margin-top: 15px;
	}
	.footer_tel a {
		font-size: 14px;
		pointer-events: auto;
	}
	.footer_tel::before {
		height: 12px;
		width: 12px;
	}
	.footer_policy {
		font-size: 12px;
		margin-top: 35px;
	}
	.footer_policy a {
		color: #fff;
	}
}



/* ---------------------------------------------------------

	03. ページトップボタン

--------------------------------------------------------- */
.btn_pagetop {
	background: url(/material/img/common/bg_btn_green01.png) center;
	cursor: pointer;
	display: none;
	height: 56px;
	outline: none;
	overflow: hidden;
	position: fixed;
	bottom: 30px;
	right: 30px;
	text-indent: -9999px;
	width: 56px;
	z-index: 1000;
}
.btn_pagetop:hover {
	opacity: 0.8;
}
.btn_pagetop a {
	display: block;
	height: 100%;
	position: relative;
	width: 100%;
	z-index: 1000;
}
.btn_pagetop a:before {
	content: '';
	background-color: #fff;
	height: 19px;
	position: absolute;
	top: 17px;
	left: 21px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	width: 1px;
}
.btn_pagetop a:after {
	content: '';
	background-color: #fff;
	height: 19px;
	position: absolute;
	top: 17px;
	right: 21px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	width: 1px;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.btn_pagetop {
		height: 40px;
		bottom: 15px;
		right: 15px;
		width: 40px;
	}
	.btn_pagetop a:before {
		height: 13px;
		top: 13px;
		left: 15px;
	}
	.btn_pagetop a:after {
		height: 13px;
		top: 13px;
		right: 15px;
	}
}



/* ---------------------------------------------------------

	04. ラッパー・コンテンツ

--------------------------------------------------------- */
.wrapper {
	margin-top: 110px;
}

.contents {
	background-color: #fff;
	margin: 0 auto;
	max-width: 940px;
	overflow: hidden;
	padding: 0 20px;
	position: relative;
}

/*===============================================
  ブレイクポイント：1000px未満
===============================================*/
@media screen and (max-width:999px) {
	.wrapper {
		margin-top: 50px;
	}
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.contents {
		padding: 0 10px;
	}
}



/* ---------------------------------------------------------

	05. トップページ

--------------------------------------------------------- */

/* トップページ：基本設定変更
--------------------------------------------------------- */
#top_header {
	background-color: transparent;
}

#home.wrapper {
	margin-top: 0;
	overflow: hidden;
}


/* トップページ：背景動画
--------------------------------------------------------- */
.top_bg {
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: -1;
}
.top_bg video {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}
.top_bg.is-portrait video {
	height: 100%;
	width: auto;
}

/* トップページ：メインビジュアル
--------------------------------------------------------- */
.top_mv {
	background: url(/material/img/top/mv_cover.png) center top repeat-x;
	height: 100%;
	min-height: 650px;
	overflow: hidden;
	position: relative;
	width: 100%;
}
.top_mv.top_mv_movie_double {
	min-height: 820px;
}

.top_mv_box {
	background-color: rgba(0,154,170,0.7);
	color: #fff;
	height: 100%;
	padding: 110px 25px 0;
	width: 320px;
}
.top_mv_box h2 {
	font-size: 94px;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 1.15;
	width: 4.2em;
}
.top_mv_box h2 span {
	letter-spacing: 0.025em;
}
.top_mv_box h3 {
	font-size: 28px;
	font-weight: 500;
	letter-spacing: 0.082em;
	margin-top: 0.4em;
	text-indent: 0.15em;
	width: 14em;
}

.top_mv_movie_wrap {
	margin: 40px auto 0;
	max-width: 200px;
}
.top_mv_movie_wrap div + div {
	margin-top: 25px;
}
.top_mv_movie a {
	color: #fff;
	display: block;
}
.top_mv_movie_img {
	background-color: #fff;
	margin-bottom: 10px;
	position: relative;
}
.top_mv_movie_img::after {
	content: '';
	background: url(../img/top/mv_btn_play.png) center/contain no-repeat;
	display: block;
	height: 68px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 68px;
}
.top_mv_movie_banner .top_mv_movie_img::after {
	display: none;
}
.top_mv_movie p {
	font-size: 16px;
	line-height: 1.3;
	text-align: center;
}

.movie_panel {
	margin: 0 auto;
	max-width: 1000px;
	position: relative;
}
.movie_panel video {
	width: 100%;
}
.mfp-movie.mfp-wrap .mfp-content {
	padding: 40px 0;
}
.mfp-movie .mfp-close {
	color: #fff;
	font-size: 56px;
	top: -40px;
}
.mfp-movie .mfp-close:active {
	top: -40px;
}

.page_link_top {
	position: absolute;
	top: -50px;
	left: 50%;
	transform: translateX(-50%);
}
.page_link_top::before {
	content: '';
	background-color: #fff;
	display: block;
	height: 50px;
	position: absolute;
	top: 150%;
	left: 50%;
	transform: translateX(-50%);
	width: 1px;
	z-index: -1;
}
.page_link_top a {
	color: #fff;
	letter-spacing: 0.05em;
}

.top_mv_caution_wrap {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}
.top_mv_caution {
	display: flex;
	font-size: 16px;
	line-height: 1.7;
	position: relative;
	z-index: 10;
}
.top_mv_caution dt {
	background-color: #cd1111;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	width: 6em;
}
.top_mv_caution dd {
	background-color: #f2f2f2;
	padding: 15px 20px;
	width: calc(100% - 6em);
}

.top_mv_anniv {
	position: absolute;
	right: 0;
	bottom: 150px;
	text-align: right;
}
.top_mv_anniv a {
	background-color: rgb(0 154 170 / 0.7);
	color: #fff;
	display: block;
	font-weight: bold;
	letter-spacing: 0.1em;
	padding: 2em 2.5em;
	text-decoration: none;
}
.top_mv_anniv h2 {
	border-bottom: 1px solid #b1e2e8;
	font-size: 22px;
	font-style: italic;
	font-weight: normal;
	margin-bottom: 0.5em;
	text-align: center;
	padding-bottom: 0.5em;
}
.top_mv_anniv h2 em {
	font-size: 1.63em;
}
.top_mv_anniv_inner {
	display: grid;
	grid-template: 'title image' auto
	'subtitle subtitle' auto /1fr 5em;
	align-items: center;
	gap: 1em;
	text-align: right;
}
.top_mv_anniv_title {
	grid-area: title;
	font-size: 28px;
	line-height: 1.75;
}
.top_mv_anniv_inner img {
	grid-area: image;
}
.top_mv_anniv_sub {
	grid-area: subtitle;
	font-size: 20px;
}
.top_mv_anniv_link {
	border-top: 1px solid #b1e2e8;
	font-family: initial;
	font-size: 18px;
	margin-top: 1em;
	padding-top: 0.75em;
}

/*===============================================
  ブレイクポイント：960px未満
===============================================*/
@media screen and (max-width:959px) {
	.top_mv_anniv h2 {
		font-size: 20px;
	}
	.top_mv_anniv_title {
		font-size: 24px;
	}
	.top_mv_anniv_sub {
		font-size: 18px;
	}
	.top_mv_anniv_link {
		font-size: 16px;
	}
	.top_mv_anniv_inner {
		grid-template-columns: 1fr 3em;
	}
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.top_mv {
		background: none;
		height: auto;
		min-height: inherit;
		padding-top: 120%;
	}
	.top_mv.top_mv_movie_double {
		min-height: inherit;
	}

	.top_mv_box {
		height: auto;
		padding: 0 15px 20px;
		width: 100%;
	}
	.top_mv_box h2 {
		font-size: 70px;
		letter-spacing: 0.1em;
		line-height: 1;
		margin: 0 auto -0.55em;
		position: relative;
		top: -0.7em;
	}
	.top_mv_box h3 {
		font-size: 21px;
		letter-spacing: 0.08em;
		margin: 0 auto;
	}

	.top_mv_movie_wrap {
		margin-top: 25px;
		max-width: 275px;
	}
	.top_mv_movie p {
		font-size: 15px;
	}

	.mfp-movie .mfp-close {
		font-size: 40px;
	}

	.page_link_top {display: none;}

	.top_mv_caution_wrap {
		position: static;
	}
	.top_mv_caution {
		font-size: 14px;
		line-height: 1.5;
	}
	.top_mv_caution dt {
		width: 5em;
	}
	.top_mv_caution dd {
		padding: 10px;
		width: calc(100% - 5em);
	}

	.top_mv_anniv {
		top: 50px;
		left: 0;
		right: auto;
		bottom: auto;
		width: 100%;
		text-align: center;
	}
	.top_mv_anniv a {
		display: grid;
		justify-content: center;
		padding: 1em;
	}
	.top_mv_anniv h2 {
		font-size: 14px;
		font-style: italic;
		font-weight: normal;
		margin-bottom: 0.75em;
		padding-bottom: 0.5em;
		margin-inline: auto;
		width: fit-content;
	}
	.top_mv_anniv_inner {
		grid-template: 'title image' auto
		'subtitle image' auto / 1fr 4em;
		gap: 0.5em 1em;
	}
	.top_mv_anniv_title {
		font-feature-settings: 'palt';
		font-size: 16px;
		text-align: right;
	}
	.top_mv_anniv_sub {
		font-size: 12px;
	}
	.top_mv_anniv_link {
		margin-inline: auto;
		width: 250px;
	}
}

/* トップページ：入試関連バナー
--------------------------------------------------------- */
.top_banner_exam {
	background-color: #fff;
	border-bottom: 2px solid #f2f2f2;
	padding: 30px 0;
}
.top_banner_exam_inner {
	margin: 0 auto;
	max-width: 1040px;
	padding: 0 20px;
}

.top_banner_goukaku {
	margin-bottom: 2%;
}
.top_banner_goukaku a {
	background: url(../img/top/banner_goukaku.jpg) center/150px;
	color: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	font-weight: bold;
	height: 80px;
	position: relative;
}
.top_banner_goukaku a::before {
	content: '';
	background: url(../img/top/banner_goukaku_sakura01.png) center/contain no-repeat;
	display: block;
	height: 44px;
	position: absolute;
	top: 10px;
	left: 15px;
	width: 34px;
}
.top_banner_goukaku a::after {
	content: '';
	background: url(../img/top/banner_goukaku_sakura01.png) center/contain no-repeat;
	display: block;
	height: 44px;
	position: absolute;
	bottom: 10px;
	right: 15px;
	transform: rotate(180deg);
	width: 34px;
}
.top_banner_goukaku a span {
	background-color: #fff;
	border-radius: 6px;
	color: #ec7ca7;
	display: block;
	font-size: 14px;
	margin-top: 10px;
	padding: 5px 15px;
}

.top_banner_kifu a {
	background: #14adbd url(../img/top/donation_bg.png) center 70%/180px auto;
	color: #fff;
	display: grid;
	grid-template-columns: 50px auto;
	place-content: center;
	align-items: center;
	column-gap: 0.5em;
	font-size: 18px;
	font-weight: bold;
	height: 80px;
	line-height: 1.3;
	position: relative;
}
.top_banner_kifu a::before {
	content: '';
	background: url(../img/common/header_donation02.png) center/contain no-repeat;
	display: block;
	height: 50px;
	width: 50px;
}

.top_banner_online a {
	background-color: #ff8e5c;
	color: #fff;
	display: grid;
	grid-template-columns: 74px auto;
	place-content: center;
	align-items: center;
	column-gap: 0.5em;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.3;
	height: 80px;
	position: relative;
}
.top_banner_online a::before {
	content: '';
	background: url(../img/top/online_ico.svg) center/contain no-repeat;
	display: block;
	height: 50px;
	width: 74px;
}

.top_banner_contest a {
	background-color: #62b84e;
	color: #fff;
	display: grid;
	grid-template-columns: 50px auto;
	place-content: center;
	align-items: center;
	column-gap: 0.75em;
	font-feature-settings: 'palt';
	font-size: 18px;
	font-weight: bold;
	line-height: 1.3;
	height: 80px;
	position: relative;
}
.top_banner_contest a::before {
	content: '';
	background: url(../img/top/contest_ico.svg) center/contain no-repeat;
	display: block;
	height: 50px;
	width: 50px;
}

.top_banner_2col {
	display: flex;
	justify-content: space-between;
	/* margin-bottom: 2%; */
}
.top_banner_2col p {width: 100%;}
.top_banner_2col p:nth-child(even) {margin-left: 2%;}

.top_banner_3col {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	column-gap: 2%;
}
.top_banner_3col .top_banner_online span {
	display: block;
}

.top_banner_exam_list .top_banner_goukaku {
	margin-bottom: 0;
	width: 66%;
}
.top_banner_exam_list .top_banner_goukaku a {
	height: 123px;
}

.top_banner_exam_list {
	display: flex;
	justify-content: center;
}
.top_banner_exam_list + .top_banner_exam_list {
	margin-top: 2%;
}
.top_banner_exam_list li {
	width: 32%;
}
.top_banner_exam_list li + li {
	margin-left: 2%;
}

/*===============================================
  ブレイクポイント：960px未満
===============================================*/
@media screen and (max-width:960px) {
	.top_banner_3col .top_banner_kifu a,
	.top_banner_3col .top_banner_online a,
	.top_banner_3col .top_banner_contest a {
		font-size: 16px;
		grid-template-columns: 40px auto;
	}
	.top_banner_3col .top_banner_kifu a::before,
	.top_banner_3col .top_banner_online a::before,
	.top_banner_3col .top_banner_contest a::before {
		width: 40px;
	}
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.top_banner_exam {
		padding: 25px 0;
	}
	.top_banner_exam_inner {
		padding: 0 25px;
	}

	.top_banner_goukaku {
		margin: 0 auto;
		max-width: 280px;
	}
	.top_banner_goukaku a {
		background-size: 75px;
		font-size: 17px;
		height: 107px;
		line-height: 1.4;
		text-align: center;
	}
	.top_banner_goukaku a::before {
		content: '';
		background: url(../img/top/banner_goukaku_sakura01.png) center/contain no-repeat;
		display: block;
		height: 44px;
		position: absolute;
		top: 10px;
		left: 15px;
		width: 34px;
	}
	.top_banner_goukaku a::after {
		content: '';
		background: url(../img/top/banner_goukaku_sakura01.png) center/contain no-repeat;
		display: block;
		height: 44px;
		position: absolute;
		bottom: 10px;
		right: 15px;
		transform: rotate(180deg);
		width: 34px;
	}
	.top_banner_goukaku a span {
		font-size: 12px;
		margin-top: 5px;
		padding: 3px 12px;
	}

	.top_banner_kifu {
		margin: 0 auto;
		max-width: 280px;
	}
	.top_banner_kifu a {
		background-position: center 40%;
		background-size: 120px;
		font-size: 17px;
		height: 107px;
	}

	.top_banner_online {
		margin: 0 auto;
		max-width: 280px;
	}
	.top_banner_online a {
		background-position: center 40%;
		background-size: 120px;
		font-size: 17px;
		height: 107px;
	}

	.top_banner_2col {
		display: block;
		margin: 0 auto 10px;
		max-width: 280px;
	}
	.top_banner_2col p:nth-child(even) {
		margin-top: 10px;
		margin-left: 0;
	}

	.top_banner_3col {
		grid-template-columns: 1fr;
		row-gap: 10px;
		margin-inline: auto;
		max-width: 280px;
	}
	.top_banner_3col > li {
		margin: 0;
	}
	.top_banner_3col .top_banner_kifu a,
	.top_banner_3col .top_banner_online a,
	.top_banner_3col .top_banner_contest a {
		font-size: 18px;
		grid-template-columns: 70px auto;
	}
	.top_banner_3col .top_banner_kifu a::before,
	.top_banner_3col .top_banner_online a::before,
	.top_banner_3col .top_banner_contest a::before {
		width: 70px;
	}

	.top_banner_exam_list .top_banner_goukaku {
		width: 100%;
	}
	.top_banner_exam_list .top_banner_goukaku a {
		height: 107px;
	}

	.top_banner_exam_list {
		display: block;
		margin: 10px auto 0;
		max-width: 280px;
	}
	.top_banner_exam_list + .top_banner_exam_list {
		margin-top: 10px;
	}
	.top_banner_exam_list li {
		width: 100%;
	}
	.top_banner_exam_list li + li {
		margin-top: 10px;
		margin-left: 0;
	}
}

/* トップページ：MOVIE
--------------------------------------------------------- */
.top_movie {
	background-color: #f2f2f2;
}
.top_movie_inner {
	margin: 0 auto;
	max-width: 1080px;
	padding: 55px 40px;
}
.top_movie_inner h2 {
	color: #14adbd;
	font-size: 50px;
	font-weight: normal;
	text-align: center;
}
.top_movie_inner h3 {
	font-size: 16px;
	font-weight: normal;
	margin: 10px 0 25px;
	text-align: center;
}

.top_movie_list {
	display: flex;
	justify-content: space-between;
	margin-left: -10px;
	width: calc(100% + 20px);
}
.top_movie_list li {
	font-size: 16px;
	font-weight: bold;
	width: 32%;
}
.top_movie_list li:nth-child(1) a {color: #5c3135;}
.top_movie_list li:nth-child(2) a {color: #343852;}
.top_movie_list li:nth-child(3) a {color: #37484b;}
.top_movie_list .top_mv_movie_img {
	box-shadow: 5px 5px 5px rgba(1,1,1,0.15);
	margin-bottom: 15px;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.top_movie_inner {
		padding: 35px 30px 40px;
	}
	.top_movie_inner h2 {
		font-size: 40px;
		text-align: center;
	}
	.top_movie_inner h3 {
		font-size: 14px;
		margin: 10px 0 25px;
		text-align: center;
	}

	.top_movie_list {
		display: block;
		margin-left: 0;
		width: 100%;
	}
	.top_movie_list li {
		font-size: 14px;
		width: 100%;
	}
	.top_movie_list li + li {
		margin-top: 25px;
	}
	.top_movie_list .top_mv_movie_img {
		margin-bottom: 10px;
	}
}

/* トップページ：PICK UP
--------------------------------------------------------- */
.top_pickup {
	background-color: #fff;
}
.top_pickup_inner {
	margin: 0 auto;
	max-width: 1080px;
	padding: 55px 40px;
}
.top_pickup_inner h2 {
	color: #14adbd;
	font-size: 50px;
	font-weight: normal;
	text-align: center;
}
.top_pickup_inner h3 {
	font-size: 16px;
	font-weight: normal;
	margin: 10px 0 25px;
	text-align: center;
}

.top_pickup_list {
	display: none;
	margin-left: -15px;
	position: relative;
	width: calc(100% + 30px);
}
.top_pickup_list.slick-initialized {
	display: block;
}
.top_pickup_list::before {
	content: '';
	background-color: #f2f2f2;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%);
	width: 100vw;
}
.top_pickup .slick-track {
	padding: 10px 0;
}
.top_pickup_slide {
	margin: 0 12px;
}
.top_pickup_slide a {
	display: block;
}
.top_pickup_img {
	box-shadow: 5px 5px 5px rgba(1,1,1,0.15);
}
.top_pickup_txt {
	box-shadow: 2px 2px 8px rgba(1,1,1,0.2);
	margin: -48px auto 0;
	position: relative;
	width: 80%;
	z-index: 10;
}
.top_pickup_txt h4 {
	background-color: rgba(51,51,51,0.8);
	color: #fff;
	display: flex;
	align-items: center;
	font-size: 18px;
	height: 48px;
	padding-left: 15px;
	position: relative;
}
.top_pickup_txt h4::before,
.top_pickup_txt h4::after {
	content: '';
	display: block;
	height: 1px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 10px;
}
.top_pickup_txt h4::before {
	background-color: #fff;
	right: 0;
}
.top_pickup_txt h4::after {
	background-color: #333;
	right: -10px;
}
.top_pickup_txt p {
	background-color: #fff;
	font-size: 16px;
	line-height: 1.5;
	padding: 15px;
}

.top_pickup .slick-arrow {
	background: center/contain no-repeat;
	border: none;
	cursor: pointer;
	height: 35px;
	outline: none;
	position: absolute;
	top: 50%;
	text-indent: -9999px;
	transform: translateY(-50%);
	width: 19px;
}
.top_pickup .slick-prev {
	background-image: url(../img/top/pickup_arrow_prev.png);
	left: -25px;
}
.top_pickup .slick-next {
	background-image: url(../img/top/pickup_arrow_next.png);
	right: -25px;
}
.top_pickup .slick-arrow:hover {
	opacity: 0.8;
}

.top_pickup .slick-dots {
	display: flex;
	justify-content: center;
	margin-top: 35px;
	position: relative;
	z-index: 10;
}
.top_pickup .slick-dots button {
	background-color: #fff;
	border: none;
	cursor: pointer;
	height: 6px;
	margin: 0 3px;
	outline: none;
	text-indent: -9999px;
	width: 48px;
}
.top_pickup .slick-dots .slick-active button {
	background-color: #14adbd;
}
.top_pickup .slick-dots button:hover {opacity: 0.8;}

.top_pickup_noLink a {
	pointer-events: none;
}
.top_pickup_noLink .top_pickup_img {
	filter: grayscale(1);
}
.top_pickup_noLink .top_pickup_txt h4 {
	color: #bbb;
}
.top_pickup_noLink .top_pickup_txt p {
	color: #888;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.top_pickup_inner {
		padding: 35px 30px 50px;
	}
	.top_pickup_inner h2 {
		font-size: 40px;
		text-align: center;
	}
	.top_pickup_inner h3 {
		font-size: 14px;
		margin: 10px 0 15px;
		text-align: center;
	}

	.top_pickup_txt {
		margin: -40px auto 0;
		width: 85%;
	}
	.top_pickup_txt h4 {
		font-size: 16px;
		height: 40px;
	}
	.top_pickup_txt p {
		font-size: 14px;
	}

	.top_pickup .slick-prev {
		left: -15px;
	}
	.top_pickup .slick-next {
		right: -15px;
	}
	.top_pickup .slick-arrow:hover {
		opacity: 1;
	}

	.top_pickup .slick-dots {
		margin-top: 20px;
	}
	.top_pickup .slick-dots button {
		height: 10px;
		width: 40px;
	}
}

/* トップページ：NEWS
--------------------------------------------------------- */
.top_news {
	position: relative;
	z-index: 10;
}
.top_news::before {
	content: '';
	background-color: #fff;
	display: block;
	height: calc(100% - 90px);
	position: absolute;
	top: 45px;
	left: 0;
	width: 100vw;
}
.top_news_inner {
	background-color: #fff;
	margin: 0 auto;
	max-width: calc(100% - 80px);
	padding: 60px calc((100% - 1080px) / 2) 50px;
	position: relative;
	z-index: 10;
}

.top_news h2 {
	color: #14adbd;
	font-size: 50px;
	font-weight: normal;
	text-align: center;
}
.top_news h3 {
	font-size: 16px;
	font-weight: normal;
	margin-top: 10px;
	text-align: center;
}
.top_news h4 {
	color: #333;
	font-size: 22px;
	font-weight: normal;
	margin-bottom: 15px;
	padding-left: 0.5em;
	position: relative;
}
.top_news h4::before {
	content: '';
	background: url(../img/top/news_ico_title.png) center/contain no-repeat;
	display: block;
	height: 8px;
	position: absolute;
	top: -0.7em;
	left: 0;
	width: 14px;
}

.top_news_box {
	margin-top: 45px;
	position: relative;
}
.top_news_box + .top_news_box {
	margin-top: 70px;
}

.top_news_list {
	font-size: 16px;
}
.top_news_list dt {
	clear: both;
	float: left;
	line-height: 1.7;
	padding: 15px 0;
	width: 15.5em;
}
.top_news_list dt .news_date {
	display: inline-block;
	padding-left: 2em;
	position: relative;
	width: 8.5em;
}
.top_news_list dt .news_date::before {
	content: '';
	background-color: #333;
	display: block;
	height: 1px;
	position: absolute;
	top: 50%;
	left: 1em;
	transform: translateY(-50%);
	width: 0.6em;
}
dt.news_cat_exam .news_date::before {background-color: #b4843f;}
dt.news_cat_event .news_date::before {background-color: #216ea3;}
dt.news_cat_club .news_date::before {background-color: #24948c;}
dt.news_cat_info .news_date::before {background-color: #b34c47;}
.top_news_list dt .news_tag {
	background-color: #fff;
	border: 1px solid;
  display: inline-block;
	font-size: 14px;
  text-align: center;
	width: 7em;
}
.top_news_list dd {
	line-height: 1.7;
	overflow: inherit;
	padding: 15px 15px 15px 15.5em;
}
.top_news_list dd:nth-of-type(odd) {
	background-color: #f8f8f8;
}

.top_news_thumb_list {
	display: grid;
	grid-template: auto / repeat(auto-fit, minmax(220px, 1fr));
	gap: 2em;
	font-size: 16px;
	line-height: 1.6;
	margin-top: 1.5em;
}
.top_news_thumb_list_thumbnail {
	margin: 0;
}
.top_news_thumb_list_heading {
	display: flex;
	align-items: center;
	font-size: 14px;
	font-weight: normal;
	padding-block: 1em;
}
.top_news_thumb_list_heading .news_date {
	margin-right: 1em;
}
.top_news_thumb_list_heading .news_ico_new {
	margin-inline: -0.5em 1em;
}
.top_news_thumb_list_heading .news_tag {
	background-color: #fff;
	border: 1px solid;
	display: block;
	font-size: 14px;
	margin-left: auto;
	text-align: center;
	width: 7em;
}
.layout_pc .top_news_thumb_list a:hover {
	opacity: 0.8;
	text-decoration: none;
}
.layout_pc .top_news_thumb_list a:hover .news_text {text-decoration: underline;}

.top_news_category {
	display: flex;
	position: absolute;
	top: -7px;
	right: 7px;
}
.top_news_category li {
	width: 130px;
}
.top_news_category li + li {
	margin-left: 14px;
}
.top_news_category a {
	border: 1px solid #111;
	display: block;
	font-size: 16px;
	padding: 8px 0;
	position: relative;
	text-align: center;
}
.top_news_category a::after {
	content: '';
	background-color: #111;
	display: block;
	height: 1px;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(50%, -50%);
	width: 14px;
}
.top_news_category_exam a {border-color: #b4843f; color: #b4843f;}
.top_news_category_exam a::after {background-color: #b4843f;}
.top_news_category_event a {border-color: #216ea3; color: #216ea3;}
.top_news_category_event a::after {background-color: #216ea3;}
.top_news_category_club a {border-color: #24948c; color: #24948c;}
.top_news_category_club a::after {background-color: #24948c;}
.top_news_category_info a {border-color: #b34c47; color: #b34c47;}
.top_news_category_info a::after {background-color: #b34c47;}
.top_news_category_bus a {border-color: #1e6da2; color: #1e6da2;}
.top_news_category_bus a::after {background-color: #1e6da2;}

.top_news_exam > .top_news_category {
	top: 0;
}
.top_news_exam_heading {
	display: flex;
	align-items: center;
	margin-bottom: 9px;
}
.top_news_exam_heading h4 {margin-bottom: 0;}
.top_news_exam_heading .top_news_category {
	margin-left: 1.5em;
	position: static;
}
.top_news_exam_heading .top_news_category_exam,
.top_news_exam_heading .top_news_category_bus {
	width: auto;
}
.top_news_exam_heading .top_news_category_exam a {
	background-color: #b4843f;
	color: #fff;
	padding-right: 1em;
	padding-left: 1em;
}
.top_news_exam_heading .top_news_category_bus a {
	background-color: #1e6da2;
	color: #fff;
	padding-right: 1em;
	padding-left: 1em;
}
.top_news_exam_heading .top_news_category_exam a::before,
.top_news_exam_heading .top_news_category_bus a::before {
	content: '';
	background-color: #fff;
	display: block;
	height: 1px;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0, -50%);
	width: 7px;
	z-index: 1;
}

.top_news_all {
	margin: 30px 0 0 auto;
	max-width: 240px;
}
.top_news_all a {
	background-color: #14adbd;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	height: 60px;
	position: relative;
}
.top_news_all a::before,
.top_news_all a::after {
	content: '';
	display: block;
	height: 1px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 15px;
}
.top_news_all a::before {
	background-color: #fff;
	right: 0;
}
.top_news_all a::after {
	background-color: #14adbd;
	right: -15px;
}

.top_news_banner_wrap {
	display: flex;
	align-items: flex-start;
	margin-top: 30px;
}
.top_news_banner {
	flex-basis: 60%;
	max-width: 490px;
}
.top_news_banner a {
	display: block;
}
.top_news_banner_wrap .top_news_all {
	flex-basis: 35%;
	margin: 0 0 0 auto;
}

.news_tag {
	border: 1px solid #888;
}
.news_tag_event {
	border-color: #216ea3;
	color: #216ea3;
}
.news_tag_club {
	border-color: #24948c;
	color: #24948c;
}
.news_tag_exam {
	border-color: #b4843f;
	color: #b4843f;
}
.news_tag_info {
	border-color: #b34c47;
	color: #b34c47;
}
.news_tag_all {
	border-color: #888;
	color: #666;
}
.news_tag_bus {
	border-color: #1e6da2;
	color: #1e6da2;
}

/*===============================================
  ブレイクポイント：1000px未満
===============================================*/
@media screen and (max-width:1080px) {
	.top_news_inner {
		padding: 60px 40px 50px;
	}

	.top_news_box h4 {
		font-size: 18px;
	}

	.top_news_list {
		font-size: 14px;
	}
	.top_news_list dt .news_tag {
		font-size: 12px;
	}

	.top_news_category li {
		width: 105px;
	}

	.top_news_exam_heading .top_news_category_exam a {
		font-size: 14.5px;
		padding-left: 0.5em;
	}
	.top_news_exam_heading .top_news_category_bus a {
		font-size: 14.5px;
		padding-left: 0.5em;
	}
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.top_news::before {
		height: calc(100% - 40px);
		top: 20px;
	}
	.top_news_inner {
		max-width: calc(100% - 20px);
		padding: 35px 10px;
	}

	.top_news h2 {
		font-size: 40px;
	}
	.top_news h3 {
		font-size: 14px;
		margin-top: 10px;
	}
	.top_news h4 {
		font-size: 16px;
		padding-left: 0.25em;
	}

	.top_news_box {
		margin-top: 35px;
	}
	.top_news_box + .top_news_box {
		margin-top: 30px;
	}

	.top_news_list dt {
		float: none;
		padding: 10px 5px 5px;
		width: 100%;
	}
	.top_news_list dt .news_date {
		padding-left: 1.5em;
		padding-right: 1em;
		width: auto;
	}
	.top_news_list dt .news_date::before {
		left: 0.5em;
	}
	.top_news_list dd {
		line-height: 1.5;
		padding: 0 10px 10px;
	}
	.top_news_list dt:nth-of-type(odd) {
		background-color: #f8f8f8;
	}

	.top_news_thumb_list {
		grid-template: auto / repeat(auto-fit, minmax(140px, 1fr));
		gap: 1em 2em;
	}
	.top_news_thumb_list_heading {
		padding-bottom: 0.75em;
		position: relative;
	}
	.top_news_thumb_list_heading .news_tag {
		font-size: 12px;
	}
	.top_news_thumb_list_heading .news_ico_new {
		margin-inline: 0;
		position: absolute;
		top: 0;
		left: 0;
	}

	.top_news_category {
		display: flex;
		justify-content: flex-end;
		margin-top: 15px;
		position: static;
	}
	.top_news_category li {
		width: 80px;
	}
	.top_news_category li + li {
		margin-left: 5px;
	}
	.top_news_category a {
		font-size: 12px;
	}
	.top_news_category a::after {
		width: 10px;
	}

	.top_news_exam_heading .top_news_category {
		margin-top: 0;
		margin-left: auto;
	}
	.top_news_exam_heading .top_news_category_exam a {
		font-size: 12px;
	}
	.top_news_exam_heading .top_news_category_bus {
		width: 7.5em;
	}
	.top_news_exam_heading .top_news_category_bus a {
		font-size: 12px;
		padding-block: 2px;
		text-align: left;
	}

	.top_news_all {
		margin: 30px auto 0;
		max-width: 200px;
	}
	.top_news_all a {
		font-size: 14px;
		height: 50px;
	}
	.top_news_all a::before,
	.top_news_all a::after {
		width: 12px;
	}
	.top_news_all a::after {
		right: -12px;
	}

	.top_news_banner_wrap {
		display: block;
	}
	.top_news_banner {
		margin: 0 auto;
		max-width: inherit;
	}
	.top_news_banner_wrap .top_news_all {
		margin: 30px auto 0;
	}
}

/* トップページ：ブログバナー
--------------------------------------------------------- */
.top_banner {
	display: flex;
	justify-content: center;
	gap: 2%;
	margin: 0 auto;
	max-width: 1000px;
	padding: 80px 0;
	position: relative;
	width: calc(100% - 80px);
	z-index: 1;
}
.top_banner::before {
	content: '';
	background-color: rgba(1,1,1,0.4);
	height: calc(100% + 90px);
	position: absolute;
	top: -45px;
	left: 50%;
	transform: translateX(-50%);
	width: 100vw;
	z-index: -1;
}
.top_banner div {
	background-color: #fff;
	box-shadow: 1px 1px 10px rgba(1,1,1,0.3);
	position: relative;
	width: 49%;
}

.top_banner_new::before {
	content: 'ブログ更新しました！';
	color: #fff;
	font-weight: bold;
	position: absolute;
	top: -30px;
	left: 50%;
	transform: translateX(-50%);
}
.top_banner_new::after {
	content: '';
	background-color: #fff;
	display: block;
	height: 18px;
	position: absolute;
	top: -9px;
	left: 50%;
	transform: translateX(-50%);
	width: 1px;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.top_banner {
		display: block;
		padding: 30px 0;
		width: calc(100% - 20px);
	}
	.top_banner::before {
		height: calc(100% + 40px);
		top: -20px;
	}
	.top_banner div {
		box-shadow: 1px 1px 5px rgba(1,1,1,0.3);
		width: 100%;
	}
	.top_banner div.top_banner_new {
		margin-top: 30px;
	}
	.top_banner div + div {
		margin-top: 15px;
	}
	.top_banner div + div.top_banner_new {
		margin-top: 50px;
	}
}

/* トップページ：東野ツアー
--------------------------------------------------------- */
.top_tour {
	position: relative;
	z-index: 10;
}
.top_tour::before {
	content: '';
	background-color: #fff;
	display: block;
	height: calc(100% - 90px);
	position: absolute;
	top: 45px;
	left: 0;
	width: 100vw;
	z-index: -1;
}
.top_tour::after {
	content: '';
	background-color: #abdde2;
	display: block;
	height: 45px;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100vw;
	z-index: -1;
}
.top_tour_inner {
	background: url(../img/top/tour_bg.png) center -20px;
	border: 10px solid #fff;
	margin: 0 auto;
	max-width: calc(100% - 80px);
	padding: 50px 30px 40px;
	position: relative;
}
.top_tour_inner h2 {
	height: 105px;
	margin: 0 auto;
	max-width: 1060px;
	padding-top: 50px;
	position: relative;
	text-align: center;
}
.top_tour_inner h2::after {
	content: '';
	background: url(../img/top/tour_title_eng.png) center/contain no-repeat;
	height: 29px;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 223px;
}
.top_tour_inner h2 img {
	width: 304px;
}
.top_tour_lead {
	font-size: 16px;
	line-height: 1.8;
	margin: 30px 0 45px;
	text-align: center;
}
.top_tour_head {
	margin: 0 auto;
	max-width: 1000px;
	position: relative;
	z-index: 1;
}
.top_tour_head .top_tour_student {
	background-image: url(../img/top/2024/tour_student.png);
	height: 220px;
	top: 40px;
	left: -30px;
	width: 135px;
}

.top_tour_box {
	margin: 0 auto;
	max-width: 1120px;
	min-height: 620px;
	position: relative;
}
.top_tour_box + .top_tour_box {
	margin-top: 35px;
}
.top_tour_box_img {
	height: 440px;
	margin: 0 auto;
	overflow: hidden;
	position: relative;
	width: calc(100% - 60px);
}
.top_tour_box_img img {
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: auto;
}

.top_tour_info {
	margin-top: -45px;
	position: relative;
	width: calc(100% - 480px);
	z-index: 1;
}
.top_tour_info::after {
	content: '';
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	bottom: 100%;
	left: 0;
}
.top_tour_title {
	color: #fff;
	font-size: 32px;
	font-weight: bold;
	min-width: 13em;
	padding-left: 90px;
	position: relative;
}
.top_tour_title::before,
.top_tour_title::after {
	content: '';
	display: block;
	height: 2px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translatey(-50%);
	width: 30px;
}
.top_tour_title::after {
	background-color: #fff;
	left: 30px;
}
.top_tour_text {
	font-size: 16px;
	line-height: 1.8;
	margin-top: 30px;
}

.top_tour_list {
	counter-reset: tourNum;
	display: flex;
	flex-direction: row-reverse;
	flex-wrap: wrap;
	max-width: 450px;
	position: absolute;
	top: 152px;
	right: 0;
	z-index: 10;
}
.top_tour_list li {
	background-color: #fff;
	box-shadow: 5px 5px 10px rgba(1,1,1,0.2);
	height: 140px;
	width: 140px;
}
.top_tour_list li:not(:nth-child(3n+1)) {
	margin-right: 15px;
}
.top_tour_list li:nth-child(n+4) {
	margin-top: 15px;
}
.top_tour_list .top_tour_list_blank {
	background-color: transparent;
	box-shadow: none;
}
.top_tour_list li a {
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	height: 100%;
	line-height: 1.3;
	padding-top: 80px;
	position: relative;
	text-align: center;
}
.top_tour_list li a::before {
	content: counter(tourNum, decimal-leading-zero);
	counter-increment: tourNum;
	color: rgba(255,255,255,0.7);
	font-family: 'Yellowtail', sans-serif;
	font-size: 22px;
	font-weight: normal;
	position: absolute;
	top: 3px;
	left: 10px;
}
.top_tour_list li a::after {
	content: '';
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	border-radius: 50%;
	box-shadow: 1px 1px 10px rgba(255,255,255,0.3);
	display: block;
	height: 70px;
	position: absolute;
	top: 10px;
	left: 50%;
	transform: translateX(-50%);
	width: 70px;
}

#top_tour_exam .top_tour_list li.noLink a,
#top_tour_about .top_tour_list li.noLink a {
	background: linear-gradient(125deg, #eee 0%, #aaa 100%);
	color: rgba(255,255,255,0.7);
	pointer-events: none;
}
#top_tour_exam .top_tour_list li.noLink a::after,
#top_tour_about .top_tour_list li.noLink a  {
	opacity: 0.5;
}

.top_tour_student {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	position: absolute;
	z-index: 10;
}

.top_tour_box_reverse .top_tour_info {margin-left: auto;}
.top_tour_box_reverse .top_tour_list {
	flex-direction: row;
	left: 0;
}
.top_tour_box_reverse .top_tour_list li:not(:nth-child(3n+1)) {
	margin-right: 0;
	margin-left: 15px;
}

.top_tour_list_2row {top: 307px;}

#top_tour_about .top_tour_student {
	background-image: url(../img/top/2024/tour_about_student.png);
	height: 260px;
	position: absolute;
	top: -92px;
	right: -30px;
	width: 303px;
}
#top_tour_about .top_tour_info::after {
	background-image: url(../img/top/tour_about_title.png);
	height: 38px;
	width: 129px;
}
#top_tour_about .top_tour_title::before {background: linear-gradient(to right, #ff7777 0%, #ff89b8 100%);}
#top_tour_about .top_tour_list li a {background: linear-gradient(125deg, #ff7777 0%, #ff89b8 100%);}
#top_tour_about .top_tour_list li:nth-child(1) a::after {background-image: url(../img/top/2024/tour_about_menu01.png);}
#top_tour_about .top_tour_list li:nth-child(4) a::after {background-image: url(../img/top/tour_about_menu02.png);}
#top_tour_about .top_tour_list li:nth-child(5) a::after {background-image: url(../img/top/tour_about_menu03.png);}
#top_tour_about .top_tour_list li:nth-child(8) a::after {background-image: url(../img/top/tour_about_menu04.png);}
#top_tour_about .top_tour_list li:nth-child(9) a::after {background-image: url(../img/top/tour_about_menu05.png);}

#top_tour_class .top_tour_student {
	background-image: url(../img/top/2024/tour_class_student.png);
	height: 269px;
	position: absolute;
	top: 42px;
	left: 5px;
	width: 264px;
}
#top_tour_class .top_tour_info::after {
	background-image: url(../img/top/tour_class_title.png);
	height: 19px;
	width: 69px;
}
#top_tour_class .top_tour_title::before {background: linear-gradient(to right, #df91f5 0%, #8d7cf5 100%);}
#top_tour_class .top_tour_list li a {background: linear-gradient(125deg, #df91f5 0%, #8d7cf5 100%);}
#top_tour_class .top_tour_list li:nth-child(1) a::after {background-image: url(../img/top/2024/tour_class_menu01.png);}
#top_tour_class .top_tour_list li:nth-child(2) a::after {background-image: url(../img/top/2024/tour_class_menu02.png);}
#top_tour_class .top_tour_list li:nth-child(4) a::after {background-image: url(../img/top/2024/tour_class_menu03.png);}

#top_tour_education .top_tour_student {
	background-image: url(../img/top/2024/tour_education_student.png);
	height: 278px;
	position: absolute;
	top: 35px;
	right: 15px;
	width: 319px;
}
#top_tour_education .top_tour_info::after {
	background-image: url(../img/top/tour_education_title.png);
	height: 25px;
	width: 94px;
}
#top_tour_education .top_tour_title::before {background: linear-gradient(to right, #7495ff 0%, #5ad4f2 100%);}
#top_tour_education .top_tour_list li a {background: linear-gradient(125deg, #7495ff 0%, #5ad4f2 100%);}
#top_tour_education .top_tour_list li:nth-child(1) a::after {background-image: url(../img/top/2023/tour_education_menu01.png);}
#top_tour_education .top_tour_list li:nth-child(2) a::after {background-image: url(../img/top/2023/tour_education_menu02.png);}
#top_tour_education .top_tour_list li:nth-child(5) a::after {background-image: url(../img/top/2023/tour_education_menu03.png);}
#top_tour_education .top_tour_list li:nth-child(6) a::after {background-image: url(../img/top/tour_education_menu04.png);}

#top_tour_course .top_tour_student {
	background-image: url(../img/top/2024/tour_course_student.png);
	height: 297px;
	position: absolute;
	top: 22px;
	left: -15px;
	width: 273px;
}
#top_tour_course .top_tour_info::after {
	background-image: url(../img/top/tour_course_title.png);
	height: 20px;
	width: 61px;
}
#top_tour_course .top_tour_title::before {background: linear-gradient(to right, #2bded8 0%, #4bdd9d 100%);}
#top_tour_course .top_tour_list li a {background: linear-gradient(125deg, #2bded8 0%, #4bdd9d 100%);}
#top_tour_course .top_tour_list li:nth-child(1) a::after {background-image: url(../img/top/tour_course_menu01.png);}
#top_tour_course .top_tour_list li:nth-child(2) a::after {background-image: url(../img/top/tour_course_menu02.png);}
#top_tour_course .top_tour_list li:nth-child(4) a::after {background-image: url(../img/top/tour_course_menu04.png);}
#top_tour_course .top_tour_list li:nth-child(5) a::after {background-image: url(../img/top/2024/tour_course_menu03.png);}

#top_tour_life .top_tour_student {
	background-image: url(../img/top/2024/tour_life_student.png);
	height: 235px;
	position: absolute;
	top: -80px;
	right: 0px;
	width: 293px;
}
#top_tour_life .top_tour_info::after {
	background-image: url(../img/top/tour_life_title.png);
	height: 34px;
	width: 118px;
}
#top_tour_life .top_tour_title::before {background: linear-gradient(to right, #59f27a 0%, #b2e765 100%);}
#top_tour_life .top_tour_list li a {background: linear-gradient(125deg, #59f27a 0%, #b2e765 100%);}
#top_tour_life .top_tour_list li:nth-child(1) a::after {background-image: url(../img/top/tour_life_menu06.png);}
#top_tour_life .top_tour_list li:nth-child(4) a::after {background-image: url(../img/top/2023/tour_life_menu01.png);}
#top_tour_life .top_tour_list li:nth-child(5) a::after {background-image: url(../img/top/tour_life_menu02.png);}
#top_tour_life .top_tour_list li:nth-child(7) a::after {background-image: url(../img/top/2022/tour_life_menu03.png);}
#top_tour_life .top_tour_list li:nth-child(8) a::after {background-image: url(../img/top/2023/tour_life_menu04.png);}
#top_tour_life .top_tour_list li:nth-child(9) a::after {background-image: url(../img/top/2024/tour_life_menu05.png);}

#top_tour_exam .top_tour_student {
	background-image: url(../img/top/2024/tour_exam_student.png);
	height: 253px;
	position: absolute;
	top: -95px;
	left: 0;
	width: 264px;
}
#top_tour_exam .top_tour_info::after {
	background-image: url(../img/top/tour_exam_title.png);
	height: 34px;
	width: 149px;
}
#top_tour_exam .top_tour_title::before {background: linear-gradient(to right, #f5d839 0%, #f89e4f 100%);}
#top_tour_exam .top_tour_list li a {background: linear-gradient(125deg, #f5d839 0%, #f89e4f 100%);}
#top_tour_exam .top_tour_list li:nth-child(1) a::after {background-image: url(../img/top/tour_exam_menu01.png);}
#top_tour_exam .top_tour_list li:nth-child(2) a::after {background-image: url(../img/top/tour_exam_menu02.png);}
#top_tour_exam .top_tour_list li:nth-child(3) a::after {background-image: url(../img/top/tour_exam_menu03.png);}
#top_tour_exam .top_tour_list li:nth-child(4) a::after {background-image: url(../img/top/tour_exam_menu07.png);}
#top_tour_exam .top_tour_list li:nth-child(5) a::after {background-image: url(../img/top/tour_exam_menu03.png);}
#top_tour_exam .top_tour_list li:nth-child(6) a::after {background-image: url(../img/top/tour_exam_menu06.png);}
#top_tour_exam .top_tour_list li:nth-child(7) a::after {background-image: url(../img/top/tour_exam_menu04.png);}
#top_tour_exam .top_tour_list li:nth-child(8) a::after {background-image: url(../img/top/tour_exam_menu05.png);}
#top_tour_exam .top_tour_list li:nth-child(9) a::after {background-image: url(../img/top/tour_exam_menu08.png);}

/* .js-anim_scroll .top_tour_lead {transition-delay: 0.5s;} */
.js-anim_scroll .top_tour_head .top_tour_student {transition-delay: 0.5s;}
.js-anim_scroll .top_tour_info {transition-delay: 1.5s;}
.js-anim_scroll .top_tour_list {transition-delay: 1.0s;}
.js-anim_scroll .top_tour_student {transition-delay: 0.5s;}

/*===============================================
  ブレイクポイント：1000px未満
===============================================*/
@media screen and (max-width:999px) {
	.top_tour_inner {
		padding: 30px;
	}
	.top_tour_inner h2 {
		height: 96px;
	}
	.top_tour_inner h2 img {
		width: 262px;
	}
	.top_tour_lead {
		font-size: 15px;
		margin-bottom: 50px;
	}
	.top_tour_head .top_tour_student {display: none;}

	.top_tour_box + .top_tour_box {
		margin-top: 50px;
	}
	.top_tour_box_img {
		height: 380px;
		width: 100%;
	}

	.top_tour_info {
		margin-top: 20px;
		width: 100%;
	}
	.top_tour_info::after {
		bottom: 94%;
	}
	.top_tour_title {
		color: #333;
		min-width: inherit;
		padding-left: 90px;
	}
	.top_tour_title::after {
		background-color: #c9c9c9;
	}
	.top_tour_text {
		margin-top: 15px;
	}

	.top_tour_list {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		margin: 10px -1% 0;
		max-width: inherit;
		position: static;
	}
	.top_tour_list li {
		margin: 1% 1%;
		width: 23%;
	}
	.top_tour_list li:not(:nth-child(3n+1)) {margin-right: 1%;}
	.top_tour_list li:nth-child(n+4) {margin-top: 1%;}
	.top_tour_list .top_tour_list_blank {display: none;}

	.top_tour_box_reverse .top_tour_info {margin-left: 0;}
	.top_tour_box_reverse .top_tour_list li:not(:nth-child(3n+1)) {
		margin-right: 1%;
		margin-left: 1%;
	}

	#top_tour_class .top_tour_student {top: -98px;}
	#top_tour_education .top_tour_student {top: -85px;}
	#top_tour_course .top_tour_student {top: -105px;}
	#top_tour_life .top_tour_student {top: -95px;}
	#top_tour_exam .top_tour_student {top: -95px;}
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.top_tour::before {
		height: calc(100% - 40px);
		top: 20px;
	}
	.top_tour::after {
		height: 20px;
	}
	.top_tour_inner {
		border-width: 5px;
		max-width: calc(100% - 20px);
		padding: 30px 10px;
	}
	.top_tour_inner h2 {
		height: 82px;
		padding-top: 30px;
	}
	.top_tour_inner h2::after {
		height: 20px;
		width: 135px;
	}
	.top_tour_inner h2 img {
		width: 180px;
	}
	.top_tour_lead {
		font-size: 14px;
		line-height: 1.7;
		margin-top: 5px;
		text-align: left;
	}

	.top_tour_box {
		margin: 50px auto 0;
	}
	.top_tour_box:first-of-type {
		margin-top: 45px;
	}
	.top_tour_box_img {
		height: 200px;
	}

	.top_tour_info::after {
		bottom: 100%;
		transform: scale(0.7);
		transform-origin: left bottom;
	}
	.top_tour_title {
		font-size: 20px;
		padding-left: 45px;
	}
	.top_tour_title::before,
	.top_tour_title::after {
		width: 15px;
	}
	.top_tour_title::after {
		left: 15px;
	}
	.top_tour_text {
		font-size: 14px;
		line-height: 1.7;
	}

	.top_tour_list li {
		height: 132px;
		margin: 2%;
		width: 46%;
	}
	.top_tour_list li:not(:nth-child(3n+1)) {margin-right: 2%;}
	.top_tour_list li:nth-child(n+4) {margin-top: 2%;}

	.top_tour_list li a {
		font-size: 12px;
		line-height: 1.3;
		padding-top: 70px;
	}
	.top_tour_list li a::after {
		height: 60px;
		top: 10px;
		width: 60px;
	}

	.top_tour_student {
		right: 0;
		transform: scale(0.7);
	}

	.top_tour_box_reverse .top_tour_list li:not(:nth-child(3n+1)) {
		margin-right: 2%;
		margin-left: 2%;
	}

	#top_tour_about .top_tour_student {
		top: -105px;
		right: -80px;
	}
	#top_tour_class .top_tour_student {
		top: -105px;
		left: -50px;
	}
	#top_tour_education .top_tour_student {
		top: -98px;
		right: -50px;
	}
	#top_tour_course .top_tour_student {
		top: -120px;
		left: -50px;
	}
	#top_tour_life .top_tour_student {
		top: -105px;
		right: -50px;
	}
	#top_tour_exam .top_tour_student {
		top: -105px;
		left: -50px;
	}

	.js-anim_scroll .top_tour_info {transition-delay: 1.0s;}
	.js-anim_scroll .top_tour_list {transition-delay: 1.5s;}
	.js-anim_scroll .top_tour_student.is-action {transition-delay: 0.5s;}
	.js-anim_scroll .top_tour_student.js-anim_scroll_right {transform: scale(0.7) matrix(1, 0, 0, 1, 50, 0);}
	.js-anim_scroll .top_tour_student.js-anim_scroll_left {transform: scale(0.7) matrix(1, 0, 0, 1, -50, 0);}
	.js-anim_scroll .top_tour_student.is-action {transform: scale(0.7);}
}



/* ---------------------------------------------------------

	06. 下層ページ共通

--------------------------------------------------------- */

/* メインビジュアル・パンくずリスト・メインコンテンツ・サイドコンテンツ
--------------------------------------------------------- */
.cmn_mv {
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
	height: 200px;
	margin-bottom: 10px;
	overflow: hidden;
	position: relative;
	width: 100%;
}
.cmn_mv p {
	background-color: #000;
	display: inline-block;
	font-size: 15px;
	margin-top: 70px;
	padding: 24px 25px 21px;
}
.cmn_mv p img {
	height: auto;
	width: auto;
}
.cmn_mv p img:first-child {
	margin-right: 14px;
}
.about .cmn_mv {background-image: url(/material/img/about/about_mv01.jpg);}
.education .cmn_mv {
	background-image: url(/material/img/education/education_mv01_2018.jpg);
	background-position: center top;
}
.course .cmn_mv {background-image: url(/material/img/course/course_mv01.jpg);}
.school-life .cmn_mv {background-image: url(/material/img/school-life/school-life_mv01.jpg);}
.exam .cmn_mv {background-image: url(/material/img/exam/exam_mv01.jpg);}
.news .cmn_mv {background-image: url(/material/img/news/news_mv01.jpg);}
.error .cmn_mv {background-image: url(/material/img/common/error_mv01.jpg);}
#access .cmn_mv {background-image: url(/material/img/access/access_mv01.jpg);}
#certificate .cmn_mv {background-image: url(/material/img/certificate/certificate_mv01.jpg);}
.officials .cmn_mv {background-image: url(/material/img/officials/officials_mv01.jpg);}
#privacy .cmn_mv {background-image: url(/material/img/privacy/privacy_mv01.jpg);}
#hiccs .cmn_mv {background-image: url(/material/img/hiccs/hiccs_mv01.jpg);}
#contact .cmn_mv {background-image: url(/material/img/contact/contact_mv01.jpg);}
#english .cmn_mv {background-image: url(/material/img/english/english_mv01.jpg);}
#movie .cmn_mv {background-image: url(/material/img/movie/movie_mv01.jpg);}

.breadcrumb {
	font-size: 12px;
	line-height: 1.3;
	margin-bottom: 60px;
}
.breadcrumb a {
	color: #14adbd;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.cmn_mv {
		background: none;
		height: auto;
	}
	.cmn_mv p {
		background-color: #000;
		display: block;
		font-size: 15px;
		margin-top: 0;
		padding: 24px 25px 21px;
	}
	.cmn_mv p img:first-child {
		margin-right: 0;
	}
	.cmn_mv p img:last-child {
		display: block;
		margin-top: 10px;
	}

	.breadcrumb {
		margin-bottom: 35px;
	}
}

/* メインコンテンツ（各タイトル・本文テキスト）
--------------------------------------------------------- */
.contents_main {
	float: left;
	margin-bottom: 60px;
	width: 72%;
}
.contents_main h1 {
	font-size: 30px;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 20px;
	padding-bottom: 1px;
	position: relative;
	z-index: 1;
}
.contents_main h1:after {
	content: '';
	background-color: #f2f2f2;
	display: block;
	height: 16px;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: -1;
}
.tit_page_sub {
	font-size: 0.6em;
	margin-left: 1em;
	position: relative;
	bottom: 0.125em;
}

.contents_main .tit_bold {
	color: #14adbd;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
	margin: 30px 0 12px;
}

.contents_main .tit_square {
	border-bottom: 1px solid #14adbd;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 8px;
	padding-bottom: 10px;
}
.contents_main .tit_square span {
	color: #14adbd;
}
.contents_main .cnt_txt + .tit_square {
	margin-top: 30px;
}

.contents_main .tit_big {
	color: #14adbd;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 10px;
}
.contents_main .cnt_txt + .tit_big {
	margin-top: 40px;
}

.contents_main .tit_band {
	background-color: #f2f2f2;
	border-top: 1px solid #3fabb6;
	border-bottom: 1px solid #3fabb6;
	color: #3fabb6;
	font-size: 19px;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 10px;
	overflow: hidden;
	padding: 13px 8px;
}
.contents_main .cnt_txt + .tit_band {
	margin-top: 30px;
}
.contents_main .tit_band_tag {
	display: inline-block;
	font-size: 18px;
}
.contents_main .tit_band_partition {
	display: table;
	padding: 8px 8px 9px;
	width: 100%;
}
.contents_main .tit_band_num {
	display: table-cell;
	padding: 5px 0.7em 5px 0;
	white-space: nowrap;
	width: 6.0em;
}
.contents_main .tit_band_tit {
	border-left: 1px solid #3fabb6;
	display: table-cell;
	padding: 5px 0 5px 0.7em;
	position: relative;
	width: auto;
}
.contents_main .tit_band_twoline {
	line-height: 1.2;
	padding: 2px;
}

.contents_main .tit_num {
	color: #3fabb6;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 10px;
	padding-left: 30px;
	position: relative;
}
.contents_main .tit_num_ico {
	background-color: #3fabb6;
	color: #fff;
	display: block;
	margin-right: 8px;
	padding: 1px;
	position: absolute;
	top: -1px;
	left: 0;
	text-align: center;
	width: 1.4em;
}
.contents_main .cnt_txt + .tit_num {
	margin-top: 15px;
}

.contents_main .tit_em {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 10px;
}

.contents_main .tit_belt {
	background-color: #3fabb6;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 20px;
	padding: 8px 12px;
}

.contents_main .cnt_txt {
	line-height: 1.6;
	text-align: justify;
}
.contents_main .cnt_txt.left {
	line-height: 1.6;
	text-align: left;
}
.contents_main .cnt_txt + .cnt_txt {
	margin-top: 1.5em;
}

.contents_main .cnt_txt_caution {
	line-height: 1.6;
	margin-top: 10px;
	padding-left: 1.0em;
	text-indent: -1.0em;
}

.contents_main .cnt_img {
	margin-bottom: 18px;
}
.contents_main .cnt_txt + .cnt_img {
	margin-top: 18px;
}

.contents_wide {
	float: none;
	margin-bottom: 60px;
	width: 100%;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.contents_main {
		float: none;
		margin-bottom: 40px;
		width: 100%;
	}
	.contents_main h1 {
		font-size: 24px;
	}

	.contents_main .tit_big {
		font-size: 20px;
	}
	.contents_main .tit_square {
		font-size: 16px;
	}
	.contents_main .tit_bold {
		font-size: 16px;
	}
	.contents_main .tit_band {
		font-size: 17px;
	}
	.contents_main .tit_band_twoline {
		padding: 4px;
	}

	.contents_main .tit_band_partition {
		display: block;
		padding: 8px;
		width: 100%;
	}
	.contents_main .tit_band_num {
		display: block;
		padding: 0 0 5px;
		white-space: normal;
		width: 100%;
	}
	.contents_main .tit_band_tit {
		border-left: none;
		display: block;
		padding: 0;
	}
}

/*===============================================
  ブレイクポイント：425px以下
===============================================*/
@media screen and (max-width:425px) {
	.sp_br {display: block;}
}

/* サイドコンテンツ
--------------------------------------------------------- */
.contents_side {
	float: right;
	margin-bottom: 60px;
	width: 23%;
}
.contents_side > ul > li {
	display: table;
	height: 70px;
	position: relative;
	width: 100%;
}
.contents_side > ul > li + li {
	margin-top: 1px;
}
.contents_side > ul > li > a {
	background: url(/material/img/common/bg_btn_black01.png) center;
	color: #fff;
	display: table-cell;
	font-weight: bold;
	line-height: 1.3;
	padding: 0 10px 0 12px;
	vertical-align: middle;
}
.contents_side > ul > li.noLink a {
	color: #999;
	cursor: default;
} /* 準備中用 */
.contents_side > ul > li.noLink a:hover {
	opacity: 1;
} /* 準備中用 */

/* サイドコンテンツ（お知らせ用）
--------------------------------------------------------- */
.contents_side_tit {
	font-weight: bold;
	margin-bottom: 5px;
}
.contents_side > ul + .contents_side_news,
.contents_side > ul + .contents_side_tit,
.contents_side > ul + .contents_side_news > ul + .contents_side_tit {
	margin-top: 25px;
}
.contents_side_news > ul > li {
	display: table;
	height: 40px;
	position: relative;
	width: 100%;
}
.contents_side_news > ul > li + li {
	margin-top: 1px;
}
.contents_side_news > ul > li > a {
	background: url(/material/img/common/bg_slash01.png) center;
	background-color: #666;
	border: 1px solid #888;
	color: #fff;
	display: table-cell;
	font-weight: bold;
	line-height: 1.3;
	padding: 0 10px 0 18px;
	vertical-align: middle;
}
.contents_side_news > ul > li > .news_tag_event {
	background-color: #1e6da2;
	border-color: #6895b4;
}
.contents_side_news > ul > li > .news_tag_club {
	background-color: #1e948c;
	border-color: #4a9e98;
}
.contents_side_news > ul > li > .news_tag_exam {
	background-color: #b5833b;
	border-color: #c5a06b;
}
.contents_side_news > ul > li > .news_tag_info {
	background-color: #b34b47;
	border-color: #bd716e;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.contents_side {
		float: none;
		margin-bottom: 20px;
		width: 100%;
	}
	.contents_side > ul > li {
		height: 40px;
	}
}

/* ボックス：2カラム
-------------------------------------------------------------- */
.box_2col > ul {
	margin-bottom: 15px;
	overflow: hidden;
}
.box_2col > ul > li {
	float: left;
	line-height: 1.3;
	width: 48.38%;
}
.box_2col > ul > li:nth-child(even) {
	float: right;
}
.box_2col_reverse > ul > li {
	float: right;
}
.box_2col_reverse > ul > li:nth-child(even) {
	float: left;
}
p.cnt_txt + .box_2col {margin-top: 20px;}
.box_2col + p.cnt_txt {margin-top: 30px;}
.box_2col li img {
	margin-bottom: 7px;
}

/* ボックス：2カラム（グレー背景）
-------------------------------------------------------------- */
.box_2col_gray > ul {
	margin-bottom: 0;
}
.box_2col_gray > ul > li {
	background-color: #f2f2f2;
	margin-bottom: 2%;
	padding: 20px;
	width: 49%;
}
.box_2col_gray h3 {
	text-align: center;
}
.box_2col_gray h4 {
	color: #3fabb6;
	font-size: 16px;
	font-weight: bold;
	margin: 10px 0;
}

/* ボックス：3カラム
-------------------------------------------------------------- */
.box_3col > ul {
	margin: 0 -3.87% -3.87% 0;
	overflow: hidden;
}
.box_3col > ul > li {
	float: left;
	margin: 0 3.87% 3.87% 0;
	width: 29.45%;
}
.box_3col .box_3col_two {
	width: 62.77%;
}

/* ボックス：ボックスの行表示
-------------------------------------------------------------- */
.box_row {
	margin: 20px 0;
}
.box_row > div {
	border-top: 1px dotted #ccc;
	padding: 30px 0;
}
.box_row > div:last-child {
	padding-bottom: 0;
}


/* ボックス：ボタン共通
--------------------------------------------------------- */
.box_btn {
	background-color: #f2f2f2;
	margin-bottom: 30px;
	padding: 10px;
}
.box_btn ul {
	overflow: hidden;
}
.box_btn li {
	float: left;
	height: 60px;
}
.box_btn li:last-child {
	margin-right: 0;
}
.box_btn li a {
	background: url(/material/img/common/bg_btn_green01.png) center;
	color: #fff;
	display: block;
	font-weight: bold;
	line-height: 60px;
	text-align: center;
}

/* ボックス：１ボタン
------------------------------------ */
.box_1btn li {
	float: none;
	margin: 0 auto;
	max-width: 310px;
	width: 100%;
}
.box_1btn li:first-child {
	margin-right: auto;
}
.error .box_1btn {
	margin: 60px auto 0;
	width: 72%;
}

/* ボックス：2ボタン
--------------------------------------------------------- */
.box_2btn li {
	width: 49%;
}
.box_2btn li:first-child {
	margin-right: 2%;
}

/* ボックス：3ボタン
--------------------------------------------------------- */
.box_3btn li {
	margin-right: 2%;
	width: 32%;
}

/* ボックス：4ボタン
--------------------------------------------------------- */
.box_4btn li {
	margin-right: 2%;
	width: 23.5%;
}

/* ボックス：5ボタン
--------------------------------------------------------- */
.box_5btn li {
	margin-right: 1%;
	width: 19.2%;
}

/* ボックス：グレー背景
--------------------------------------------------------- */
.box_gray {
	background-color: #f2f2f2;
	margin-bottom: 25px;
	padding: 15px;
}
.box_gray dt {
	color: #3fabb6;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	margin-bottom: 6px;
}
.box_gray dd {
	line-height: 1.6;
}

/* ボックス：グレー背景+ボーダー
--------------------------------------------------------- */
.box_gray_border {
	background-color: #f2f2f2;
	border: 5px solid #d7d7d7;
	margin-bottom: 25px;
	padding: 20px;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.box_2col_gray > ul > li {
		margin-bottom: 10px;
	}
}

/*===============================================
  ブレイクポイント：425px以下
===============================================*/
@media screen and (max-width:425px) {
	.box_2col > ul > li {
		float: none;
		width: 100%;
	}
	.box_2col > ul > li:nth-child(even) {
		float: none;
		margin-top: 10px;
	}

	.box_3col > ul {
		margin-right: 0;
	}
	.box_3col > ul > li {
		float: none;
		margin-right: 0;
		width: 100%;
	}
	.box_3col .box_3col_two {
		width: 100%;
	}

	.box_gray {
		border: 3px solid #d7d7d7;
		padding: 10px;
	}

	.error .box_1btn {
		margin: 30px auto 0;
		max-width: 648px;
		width: 100%;
	}
	.box_5btn li a {
		display: table;
		height: 60px;
		line-height: 1.3;
		padding: 12px 0;
		width: 100%;
	}
	.box_5btn li a span {
		display: table-cell;
		vertical-align: middle;
	}
}

/* テーブル：標準
--------------------------------------------------------- */
.table_normal {
	line-height: 1.6;
	width: 100%;
}
.table_normal_fixed {table-layout: fixed;}
.table_normal caption {
	font-size: 16px;
	font-weight: bold;
	margin: 10px 0 5px;
	text-align: left;
}
.table_normal caption:before {
	content: '■';
	color: #14adbd;
}
.table_normal th {
	background-color: #14adbd;
	border: 1px solid #bcbcbc;
	color: #fff;
	font-weight: bold;
	padding: 5px 15px;
	text-align: center;
}
.table_normal td {
	border: 1px solid #bcbcbc;
	padding: 5px 15px;
}
.table_normal small {
	font-size: 92%;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.table_normal_fixed {
		table-layout: auto;
	}

	/* テーブル：SP表示時のスクロール対応
	--------------------------------------------------------- */
	.table_wrapper {
		overflow-x: auto;
		position: relative;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}
}

/* リスト：標準
--------------------------------------------------------- */
.list_normal li {
	line-height: 1.6;
	padding-left: 1.0em;
	text-align: left;
	text-indent: -1.0em;
}

/* タブ
-------------------------------------------------------------- */
.js-tab_panel {
	display: none;
}
.js-tab_panel.active {
	display: block;
}

/* スクロールアニメーション
--------------------------------------------------------- */
.js-anim_scroll,
.js-anim_item {
	opacity: 0;
	transition: transform 1.0s, opacity 1.0s;
	will-change: transform;;
}
.js-anim_scroll_up {transform: matrix(1, 0, 0, 1, 0, 50);}
.js-anim_scroll_down {transform: matrix(1, 0, 0, 1, 0, -50);}
.js-anim_scroll_right {transform: matrix(1, 0, 0, 1, 50, 0);}
.js-anim_scroll_left {transform: matrix(1, 0, 0, 1, -50, 0);}
.js-anim_scroll.is-action,
.js-anim_item.is-action {
	opacity: 1;
	transform: none;
}



/* ---------------------------------------------------------

	07. 東野高等学校について

--------------------------------------------------------- */

/* 理事長・校長メッセージ
--------------------------------------------------------- */
#principal .contents_main h2 {
	color: #14adbd;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 15px;
}
#principal .contents_main h2:nth-of-type(2) {
	margin-top: 40px;
}
#principal .cnt_txt + .cnt_txt {
	margin-top: 1.0em;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#principal .contents_main h2 {
		margin-bottom: 10px;
	}
	#principal .contents_main h2:nth-of-type(2) {
		margin-top: 30px;
	}
}

/* 教育目標
--------------------------------------------------------- */
.box_academics img {
	max-width: 450px;
}

/* 学園の沿革・概要
--------------------------------------------------------- */
.table_history {
	line-height: 1.6;
	width: 100%;
}
.table_history caption {
	color: #14adbd;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 10px;
	text-align: left;
}
.table_history td {
	padding: 13px 15px;
	text-align: justify;
}

.table_chronology {
	margin-bottom: 45px;
}
.table_chronology tr {
	border-bottom: 1px solid #fff;
}
.table_chronology th {
	background-color: #14adbd;
	color: #fff;
	padding: 13px;
	text-align: center;
	vertical-align: middle;
	width: 80px;
}
.table_chronology td {
	background-color: #f2f2f2;
}

.table_overview {
	border-top: 1px solid #bbbbbb;
}
.table_overview th {
	background-color: #f2f2f2;
	border-right: 1px solid #bcbcbc;
	border-bottom: 1px solid #bcbcbc;
	padding: 13px 15px;
	text-align: left;
	white-space: nowrap;
	vertical-align: top;
}
.table_overview td {
	border-bottom: 1px solid #bcbcbc;
}
.table_overview td:last-child {
	border-left: 1px solid #bcbcbc;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#history .table_wrapper {
		white-space: normal;
	}
	.table_overview {
		width: 400px;
	}
}

/* 校章・校歌
--------------------------------------------------------- */
#badge_img {
	padding: 30px 0 50px;
	text-align: center;
}
#badge_img img {
	max-width: 166px;
}

.box_gray_border ol {
	line-height: 1.6;
	padding-left: 1em;
}
.box_gray_border ol li {
	list-style: decimal;
}
.box_gray_border ol li + li {
	margin-top: 2em;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#badge_img {
		padding: 30px 0;
	}
}



/* ---------------------------------------------------------

	08. コース紹介

--------------------------------------------------------- */
.wrapper.class .breadcrumb {
	margin-bottom: 0;
	padding: 10px 0;
}

.class_mv {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	color: #fff;
	padding-bottom: 5.5em;
	text-align: center;
}

.class_mv_label {
	background-color: #000;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 46px;
	margin: 0 auto;
	width: 220px;
}
.class_mv_label img {
	height: 15px;
	width: auto;
}
.class_mv_label img + img {
	margin-left: 15px;
}
.class_mv_lead {
	border-top: 1px dashed #fff;
	border-bottom: 1px dashed #fff;
	display: inline-block;
	font-size: 20px;
	margin-top: 45px;
	padding: 13px 1em;
}
.class_mv_title {
	font-size: 54px;
	font-weight: bold;
	letter-spacing: 0.08em;
	margin-top: 30px;
	padding-inline: 1em;
}
.class_mv_title span {
	display: inline-block;
	line-height: 1.2;
}
.class_mv_name {
	font-size: 20px;
	margin-top: 25px;
}

.class_menu_wrap {
	margin-bottom: 45px;
	position: relative;
}
.class_menu_wrap::before {
	content: '';
	background-color: #f6f6f6;
	height: calc(100% - 20px);
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	z-index: -1;
}
.class_menu {
	background-color: #f6f6f6;
	display: flex;
	justify-content: center;
	margin: -20px auto 0;
	max-width: 584px;
	padding: 20px;
}
.class_menu li {
	height: 68px;
	width: 180px;
}
.class_menu li + li {
	margin-left: 2px;
}
.class_menu li a {
	background-color: #e2e3e5;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	height: 100%;
	line-height: 1.3;
	text-align: center;
}
.class_menu .is-active a {color: #fff;}

.class_lead h2 {
	font-size: 24px;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
}
.class_lead_text {
	margin-block: 3em;
}

.class_movie {
	background-color: #fff;
	margin: 40px 0 50px;
	position: relative;
}
.class_movie a {
	border: 4px solid #111;
	display: block;
	height: 100%;
}
.class_movie a::after {
	content: '';
	background: url(../img/top/mv_btn_play.png) center/contain no-repeat;
	display: block;
	height: 150px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 150px;
}

.class_lead_list {
	counter-reset: numList;
	display: flex;
	justify-content: center;
	margin: 45px 0;
	position: relative;
	z-index: 1;
}
.class_lead_list li {
	background-color: rgba(0,0,0,0.5);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	font-weight: bold;
	height: 154px;
	line-height: 1.5;
	position: relative;
	text-align: center;
	width: 200px;
}
.class_lead_list li::before {
	content: '';
	display: block;
	height: 100%;
	position: absolute;
	top: -7px;
	left: -7px;
	width: 100%;
	z-index: -1;
}
.class_lead_list li::after {
	content: counter(numList, decimal-leading-zero);
	counter-increment: numList;
	font: bold 24px/1 'Roboto', sans-serif;
	letter-spacing: 0.08em;
	position: absolute;
	top: 7px;
	left: 10px;
	z-index: 10;
}
.class_lead_list li + li {
	margin-left: 20px;
}
.class_lead p {
	line-height: 1.6;
	text-align: justify;
}

.class_sec.contents {
	margin-top: 80px;
	overflow: visible;
}
.class_sec.contents:last-child {
	padding-bottom: 80px;
}
.class_sec_head_eng {
	color: #333;
	font-weight: bold;
	letter-spacing: 0.1em;
	margin-bottom: 10px;
	text-align: center;
}
.class_sec_head {
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 40px;
	position: relative;
	padding: 18px 0;
	text-align: center;
	z-index: 1;
}
.class_sec_head::before {
	content: '';
	background-color: #fbfbfb;
	border-top: 1px dashed #333;
	border-bottom: 1px dashed #333;
	height: 100%;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100vw;
	z-index: -1;
}
.class_sec_title {
	font-size: 24px;
	font-weight: bold;
	line-height: 1.4;
	margin-bottom: 30px;
	text-align: center;
}
.class_sec .cnt_txt {
	line-height: 1.6;
	text-align: justify;
}

.class_sec_list {
	margin: 20px 0;
}
.class_sec_list li {
	background-color: #f7f7f7;
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	padding: 20px;
}
.class_sec_list li:nth-child(even) {
	flex-direction: row;
}
.class_sec_list li + li {
	margin-top: 20px;
}
.class_sec_list_img {
	width: 320px;
}
.class_sec_list_inner {
	width: calc(100% - 340px);
}
.class_sec_list_inner h4 {
	border-bottom: 1px dashed #333;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 10px;
	padding-bottom: 7px;
}

.class_sec_list_2col {
	display: flex;
	justify-content: space-between;
}
.class_sec_list_2col li {
	display: block;
	width: 49%;
}
.class_sec_list_2col li + li {margin-top: 0;}
.class_sec_list_2col .class_sec_list_img {
	margin-bottom: 10px;
	width: 100%;
}
.class_sec_list_2col .class_sec_list_inner {
	width: 100%;
}

.class_sec_list_3col {
	display: flex;
	flex-wrap: wrap;
}
.class_sec_list_2col + .class_sec_list_3col {
	margin-top: calc(2% - 40px);
}
.class_sec_list_3col li {
	display: block;
	width: 32%;
}
.class_sec_list_3col li:not(:nth-child(3n)) {margin-right: 2%;}
.class_sec_list_3col li + li {
	margin-top: 0;
}
.class_sec_list_3col li:nth-child(n+4) {
	margin-top: 20px;
}
.class_sec_list_3col .class_sec_list_img {
	margin-bottom: 10px;
	width: 100%;
}
.class_sec_list_3col .class_sec_list_inner {
	width: 100%;
}

.class_table {table-layout: fixed;}
.class_table thead th {border: none;}
.class_table thead th.class_table_blank {
	background-color: transparent !important;
	padding: 0;
	width: 1.5em;
}
.class_table tbody th,
.class_table tbody td {
	border-bottom: none;
	height: 2em;
}
/* .class_table tbody th:not([rowspan]), */
.class_table tbody tr:not(:nth-child(1)):not(:nth-child(6)):not(:nth-child(9)) td {
	height: 4em;
	padding-block: 0;
}
.class_table thead th:first-child {
	background-color: transparent !important;
	border-left: none;
	width: 3em;
}
.class_table thead th:not(:nth-child(2)):not(.class_table_blank):not(:last-child) {
	border-left-color: #fff !important;
}
.class_table thead th:not(:last-child) {
	border-right: none !important;
}
.class_table tbody tr:first-child th {
	background-color: transparent !important;
	border-top: none !important;
	border-left: none !important;
}
.class_table tbody tr:last-child th {
	background-color: transparent !important;
	border-top: solid;
	border-bottom: none !important;
	border-left: none !important;
}
.class_table tbody td.class_table_blank {
	border-right: none !important;
	border-bottom: none !important;
	border: none !important;
}
.class_table tbody tr:nth-child(2) td:last-child {
	border-top: none;
	border-bottom: 1px solid;
}
.class_table_sat {
	display: grid;
	gap: 0.5em;
	place-items: center;
}
.class_table_sat span {
	background-color: #ededed;
	display: grid;
	place-items: center;
	height: 6em;
	width: 6em;
}
.class_table_caution {
	line-height: 1.4;
	margin-top: 12px;
	padding-left: 1em;
	text-indent: -1em;
}

.class_teaching.contents {
	background-color: transparent;
	margin-top: 0;
	overflow: visible;
	padding-bottom: 80px;
}
.class_teaching_mv {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	height: 460px;
	margin-top: 80px;
}
.class_teaching_box {
	color: #fff;
	margin-top: -160px;
	padding: 30px;
	position: relative;
	z-index: 10;
}
.class_teaching_box h2 {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 20px;
	padding-bottom: 20px;
	position: relative;
	text-align: center;
}
.class_teaching_box h2::after {
	content: '';
	background-color: #fff;
	display: block;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 60px;
}
.class_teaching_box p.cnt_txt {
	line-height: 1.9;
}
.class_teaching_title {
	border-bottom: 1px dashed #333;
	font-size: 18px;
	font-weight: bold;
	margin: 40px 0 15px;
	padding-bottom: 15px;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.class_mv {
		padding-bottom: 3.25em;
	}

	.class_mv_label {
		height: 36px;
		width: 180px;
	}
	.class_mv_label img {
		height: 12px;
	}
	.class_mv_label img + img {
		margin-left: 12px;
	}
	.class_mv_lead {
		font-size: 15px;
		margin-top: 25px;
		padding: 12px 1em;
	}
	.class_mv_title {
		font-size: 24px;
		letter-spacing: 0.05em;
		margin-top: 30px;
	}
	.class_mv_name {
		font-size: 14px;
		margin-top: 20px;
	}

	.class_menu_wrap {
		margin-bottom: 30px;
	}
	.class_menu_wrap::before {
		height: calc(100% - 10px);
	}
	.class_menu {
		margin: -10px auto 0;
		padding: 10px;
		width: 90%;
	}
	.class_menu li {
		height: auto;
		width: calc((100% - 4px) / 3);
	}
	.class_menu li a {
		font-size: 12px;
		padding: 5px 0;
	}

	.class_lead h2 {
		font-size: 18px;
	}

	.class_sec.contents:last-child {
		padding-bottom: 50px;
	}

	.class_movie {
		margin: 30px 0;
	}
	.class_movie a {
		border-width: 3px;
	}
	.class_movie a::after {
		height: 70px;
		width: 70px;
	}

	.class_lead_list {
		display: block;
		margin: 20px auto;
		max-width: 280px;
	}
	.class_lead_list li {
		font-size: 16px;
		height: 80px;
		padding-bottom: 5px;
		width: 100%;
	}
	.class_lead_list li::before {
		top: -5px;
		left: -5px;
	}
	.class_lead_list li::after {
		font-size: 20px;
	}
	.class_lead_list li + li {
		margin-left: 0;
		margin-top: 15px;
	}

	.class_sec.contents {
		margin-top: 50px;
	}
	.class_sec_head {
		font-size: 22px;
		margin-bottom: 25px;
		padding: 12px 0;
	}
	.class_sec_title {
		font-size: 18px;
		margin-bottom: 20px;
	}

	.class_sec_list {
		margin: 10px 0;
	}
	.class_sec_list li {
		display: block;
		padding: 15px;
	}
	.class_sec_list li:nth-child(even) {
		flex-direction: row;
	}
	.class_sec_list li + li {
		margin-top: 15px;
	}
	.class_sec_list_img {
		margin-bottom: 8px;
		width: 100%;
	}
	.class_sec_list_inner {
		width: 100%;
	}
	.class_sec_list_inner h4 {
		font-size: 16px;
	}

	.class_sec_list_2col {
		display: block;
	}
	.class_sec_list_2col li {
		width: 100%;
	}
	.class_sec_list_2col li + li {margin-top: 10px;}

	.class_sec_list_3col {
		display: block;
	}
	.class_sec_list_2col + .class_sec_list_3col {margin-top: -15px;}
	.class_sec_list_3col li {
		width: 100%;
	}
	.class_sec_list_3col li + li,
	.class_sec_list_3col li:nth-child(n+4) {
		margin-top: 10px;
	}

	.class_table {
		table-layout: auto;
	}

	.class_teaching.contents {
		padding-bottom: 50px;
	}
	.class_teaching_mv {
		height: 240px;
		margin-top: 50px;
	}
	.class_teaching_box {
		margin-top: -140px;
		padding: 20px 15px;
	}
	.class_teaching_box h2 {
		font-size: 18px;
		margin-bottom: 15px;
		padding-bottom: 15px;
	}
	.class_teaching_box h2::after {
		width: 50px;
	}
	.class_teaching_box ul {
		flex-wrap: wrap;
		margin-top: 15px;
	}
	.class_teaching_box li {
		height: 40px;
		width: 48%;
	}
	.class_teaching_box li:nth-child(n+3) {
		margin-top: 4%;
	}
	.class_teaching_title {
		font-size: 16px;
		margin: 30px 0 10px;
		padding-bottom: 10px;
	}
	.international_other_list {
		justify-content: space-between;
		margin-top: 15px;
	}
	.international_other_list li {
		height: 40px;
		width: 49%;
	}
	.international_other_list li:not(:nth-child(4n+1)) {
		margin-left: 0;
	}
	.international_other_list li:nth-child(n+3) {
		margin-top: 2%;
	}
}

/* Iクラス
--------------------------------------------------------- */
#international .class_mv {background-image: url(../img/class/international_mv01.jpg);}
#international .class_menu .is-active a {background-color: #5c3135;}
#international .class_lead h2 {color: #5c3135;}
#international .class_movie a {border-color: #401116;}
#international .class_lead_list li::before {background-color: #904c53;}
#international .class_sec_head {color: #5c3135;}
#international .class_sec_head::before {border-color: #5c3135;}
#international .class_sec_title {color: #5c3135;}
#international .class_sec_list_inner h4 {
	border-color: #5c3135;
	color: #5c3135;
}
#international .class_table thead th {
	background-color: #5c3135;
	border-right: 1px solid #5c3135;
	border-left: 1px solid #5c3135;
}
#international .class_table tbody th {
	background-color: #5c3135;
	border-color: #5c3135;
	border-top: 1px solid #fff;
	border-bottom: none;
	border-left: none;
	color: #fff;
}
#international .class_table tbody td {
	border-color: #5c3135;
	text-align: center;
}
#international .class_table tbody tr:first-child th {border-bottom: 1px solid #5c3135;}
#international .class_table tbody tr:last-child td {border-bottom: 1px solid #5c3135;}
#international .class_table_sat span:first-child {background-color: #fdb4b4;}
#international .class_table_sat span:last-child {background-color: #f7d8db;}
#international .class_teaching_mv {background-image: url(../img/class/international_mv02.jpg);}
#international .class_teaching_box {background-color: rgba(92,49,53,0.9);}
#international .class_teaching_title {
	border-color: #5c3135;
	color: #5c3135;
}

.international_teaching_list {
	display: flex;
	justify-content: space-between;
	margin-top: 25px;
}
.international_teaching_list li {
	background-color: rgba(255,255,255,0.2);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	height: 46px;
	width: 23.5%;
}

.international_other_list {
	display: flex;
	flex-wrap: wrap;
	margin-top: 25px;
}
.international_other_list li {
	background-color: rgba(92,49,53,0.1);
	color: #5c3135;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	height: 46px;
	width: 23.5%;
}
.international_other_list li:not(:nth-child(4n+1)) {
	margin-left: 2%;
}
.international_other_list li:nth-child(n+5) {
	margin-top: 2%;
}

.international_banner {
	background-color: #f7f7f7;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 40px 0;
}
.international_banner p {
	max-width: 400px;
}

.class_international {
	position: relative;
}
.international_banner_discussion {
	box-shadow: 2px 2px 5px rgba(1,1,1,0.2);
	position: absolute;
	top: 415px;
	right: 20px;
	width: 200px;
	z-index: 100;
}
.international_banner_discussion.is-fixed {
	position: fixed;
	top: 130px;
}
.international_banner_discussion a {
	background-color: #5c3135;
	background-image: url(../img/class/international_discussion_img.jpg), url(../img/class/international_discussion_bg.png);
	background-position: center bottom, center 10px;
	background-repeat: no-repeat;
	background-size: 100% auto, 80% auto;
	color: #fff;
	display: block;
	font-size: 10px;
	line-height: 1.6;
	padding: 16px 0 calc(46.5% + 10px);
	text-align: center;
}
.international_banner_discussion a::before {
	content: '';
	border: 1px dotted #fff;
	display: block;
	height: calc(100% - 10px);
	position: absolute;
	top: 5px;
	left: 5px;
	width: calc(100% - 10px);
}
.international_banner_discussion a span {
	display: block;
	font-size: 1.6em;
	font-weight: bold;
}

#discussion .international_banner_discussion a {
	background: #5c3135 url(../img/class/international_discussion_bg.png) center/auto 80% no-repeat;
	font-size: 12px;
	letter-spacing: -0.05em;
	padding: 16px 0;
}
#discussion .international_banner_discussion a span {
	font-size: 1.15em;
}

.class_sec_list .class_int_canada {
	display: grid;
	align-items: center;
	gap: 20px;
}
.class_int_canada_image {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2em;
}
.class_int_canada .class_sec_list_inner {
	width: 100%;
}
.class_int_canada .class_sec_list_img {
	width: 100%;
}

/*===============================================
  ブレイクポイント：1000px未満
===============================================*/
@media screen and (max-width:999px) {
	.international_banner {
		padding-bottom: 130px;
	}
	.international_banner_discussion {
		max-width: 300px;
		position: fixed;
		top: auto;
		bottom: 10px;
		right: 50%;
		transform: translateX(50%);
		width: calc(100% - 50px);
	}
	.international_banner_discussion.is-fixed {
		top: auto;
	}
	.international_banner_discussion.is-stop {
		position: absolute;
		bottom: 30px;
	}
	.international_banner_discussion a {
		background: #5c3135 url(../img/class/international_discussion_bg.png) center/auto 180% no-repeat;
		font-size: 12px;
		line-height: 1.5;
		padding: 12px 0;
	}
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.international_teaching_list {
		flex-wrap: wrap;
		margin-top: 15px;
	}
	.international_teaching_list li {
		height: 40px;
		width: 48%;
	}
	.international_teaching_list li:nth-child(n+3) {
		margin-top: 4%;
	}

	.international_other_list {
		justify-content: space-between;
		margin-top: 15px;
	}
	.international_other_list li {
		height: 40px;
		width: 49%;
	}
	.international_other_list li:not(:nth-child(4n+1)) {
		margin-left: 0;
	}
	.international_other_list li:nth-child(n+3) {
		margin-top: 2%;
	}

	.international_banner {
		padding: 20px 20px 120px;
	}

	.class_sec_list .class_int_canada {
		gap: 10px;
	}
	.class_int_canada_image {
		display: grid;
		grid-template-columns: 1fr;
		gap: 10px;
	}
}

/* Iクラス：座談会
--------------------------------------------------------- */
#discussion .class_mv {background-image: url(../img/class/discussion_mv01.jpg);}

.discussion_mv {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding-top: 46px;
	position: relative;
}
.discussion_mv .class_mv_label {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
.discussion_mv .class_mv_title {
	letter-spacing: 0.05em;
	line-height: 1.1;
}
.discussion_mv h1 {
	margin-top: 0;
}
.discussion_mv .tb_b {display: none;}

.discussion_lead {
	background: #efefef url(../img/class/discussion_map01.png) center/auto 100% no-repeat;
	padding: 70px 0 40px;
	text-align: center;
}
.discussion_lead .contents {
	background-color: transparent;
}
.discussion_lead_title {
	color: #5c3135;
	font-size: 36px;
	font-weight: bold;
	line-height: 1.4;
}
.discussion_lead_text {
	color: #5c3135;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.7;
	margin-top: 25px;
	text-align: left;
}
.discussion_lead_list {
	display: flex;
	justify-content: space-between;
	font-weight: bold;
	line-height: 1.5;
	margin: 55px auto 30px;
	max-width: 750px;
	text-align: center;
}
.discussion_lead_image {
	margin-bottom: 5px;
	max-width: 180px;
}
.discussion_lead_profile {
	color: #5c3135;
}
.discussion_lead_name {
	font-size: 17px;
}
.discussion_lead_kana {
	color: #fff;
}

.discussion_lead_mc {
	border: 2px dotted #fff;
	display: inline-flex;
	align-items: center;
	font-weight: bold;
	line-height: 1.5;
	margin: 0 auto;
	padding: 1em;
}
.discussion_lead_mc_title {
	background-color: #5c3135;
	border-radius: 50%;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100px;
	line-height: 1.5;
	width: 100px;
}
.discussion_lead_mc div:not(.discussion_lead_mc_title) {
	margin-left: 54px;
	max-width: 140px;
}

.discussion_sec {
	margin-top: 80px;
}
.discussion_sec_last {
	padding-bottom: 80px;
}
.discussion_title {
	color: #5c3135;
	font-size: 28px;
	font-weight: bold;
	line-height: 1.4;
	margin-bottom: 50px;
	text-align: center;
}
.discussion_list {
	display: flex;
	flex-wrap: wrap;
	line-height: 1.6;
}
.discussion_list dt {
	color: #5c3135;
	font-weight: bold;
	width: 6em;
}
.discussion_list dd {
	width: calc(100% - 6em);
}
.discussion_list dt:not(:first-child),
.discussion_list dd:not(:first-of-type) {
	margin-top: 1.5em;
}

.discussion_image {
	margin: 80px auto 0;
	max-width: 1400px;
}

/*===============================================
  ブレイクポイント：1024px未満
===============================================*/
@media screen and (max-width:1023px) {
	.discussion_mv .tb_b {display: block;}

	.discussion_sec_last {
		padding-bottom: 130px;
	}
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.discussion_mv .class_mv_title:last-child {
		margin-top: 15px;
	}
	.discussion_mv .class_mv_name {
		line-height: 1.4;
	}

	.discussion_lead {
		padding: 40px 0;
	}
	.discussion_lead_title {
		font-size: 22px;
	}
	.discussion_lead_text {
		font-size: 15px;
		margin-top: 20px;
	}
	.discussion_lead_list {
		flex-wrap: wrap;
		margin: 25px auto;
		max-width: 310px;
	}
	.discussion_lead_list li {
		width: 45%;
	}
	.discussion_lead_list li:last-child {
		margin-top: 15px;
		width: 100%;
	}
	.discussion_lead_image {
		margin: 0 auto 5px;
		max-width: 130px;
	}
	.discussion_lead_name {
		font-size: 15px;
	}

	.discussion_lead_mc {
		border: 2px dotted #fff;
		display: inline-flex;
		align-items: center;
		font-weight: bold;
		line-height: 1.5;
		margin: 0 auto;
		padding: 1em;
	}
	.discussion_lead_mc_title {
		flex: 0 0 auto;
		height: 5em;
		line-height: 1.3;
		width: 5em;
	}
	.discussion_lead_mc div:not(.discussion_lead_mc_title) {
		margin-left: 10px;
		max-width: 140px;
	}
	.discussion_lead_mc .discussion_lead_kana {
		font-size: 0.8em;
		line-height: 1.2;
	}

	.discussion_sec {
		margin-top: 40px;
	}
	.discussion_title {
		font-size: 20px;
		margin-bottom: 25px;
	}
	.discussion_list dt {
		width: 5em;
	}
	.discussion_list dd {
		width: calc(100% - 5em);
	}
	.discussion_list dt:not(:first-child),
	.discussion_list dd:not(:first-of-type) {
		margin-top: 1em;
	}

	.discussion_image {
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		height: 0;
		margin: 40px auto 0;
		padding-top: 61.17%;
	}
	.discussion_image01 {background-image: url(../img/class/discussion_img01_sp.jpg);}
	.discussion_image02 {background-image: url(../img/class/discussion_img02_sp.jpg);}
	.discussion_image img {display: none;}
}

/* Sクラス
--------------------------------------------------------- */
#super .class_mv {background-image: url(../img/class/super_mv01.jpg);}
#super .class_mv {background-image: url(../img/class/super_mv01.jpg);}
#super .class_menu .is-active a {background-color: #343852;}
#super .class_lead h2 {color: #343852;}
#super .class_movie a {border-color: #2e3046;}
#super .class_lead_list li::before {background-color: #747aa2;}
#super .class_sec_head {color: #343852;}
#super .class_sec_head::before {border-color: #343852;}
#super .class_sec_title {color: #343852;}
#super .class_sec_list_inner h4 {
	border-color: #343852;
	color: #343852;
}
#super .class_table thead th {
	background-color: #343852;
	border-right: 1px solid #343852;
	border-left: 1px solid #343852;
}
#super .class_table tbody th {
	background-color: #343852;
	border-color: #343852;
	border-top: 1px solid #fff;
	border-bottom: none;
	border-left: none;
	color: #fff;
}
#super .class_table tbody td {
	border-color: #343852;
	text-align: center;
}
#super .class_table tbody tr:first-child th {border-bottom: 1px solid #343852;}
#super .class_table tbody tr:last-child td {border-bottom: 1px solid #343852;}
#super .class_teaching_mv {background-image: url(../img/class/super_mv02.jpg);}
#super .class_teaching_box {background-color: rgba(52,56,82,0.9);}
#super .class_teaching_title {
	border-color: #343852;
	color: #343852;
}

.super_table_camp tbody tr:nth-last-child(n+4):nth-last-child(-n+5) td {
	background-color: #f2f3fc;
}

.super_tag_test {
	margin: 10px 0;
}
.super_tag_test::before {
	content: '';
	background-color: #f2f3fc;
	display: inline-block;
	height: 14px;
	margin-right: 7px;
	vertical-align: middle;
	width: 40px;
}

/* Aクラス
--------------------------------------------------------- */
#advance .class_mv {background-image: url(../img/class/advance_mv01.jpg);}
#advance .class_mv {background-image: url(../img/class/advance_mv01.jpg);}
#advance .class_menu .is-active a {background-color: #37484b;}
#advance .class_lead h2 {color: #37484b;}
#advance .class_movie a {border-color: #37474a;}
#advance .class_lead_list li::before {background-color: #72888c;}
#advance .class_sec_head {color: #37484b;}
#advance .class_sec_head::before {border-color: #37484b;}
#advance .class_sec_title {color: #37484b;}
#advance .class_sec_list_inner h4 {
	border-color: #37484b;
	color: #37484b;
}
#advance .class_table thead th {
	background-color: #37484b;
	border-right: 1px solid #37484b;
	border-left: 1px solid #37484b;
}
#advance .class_table tbody th {
	background-color: #37484b;
	border-color: #37484b;
	border-top: 1px solid #fff;
	border-bottom: none;
	border-left: none;
	color: #fff;
}
#advance .class_table tbody td {
	border-color: #37484b;
	text-align: center;
}
#advance .class_table tbody tr:first-child th {border-bottom: 1px solid #37484b;}
#advance .class_table tbody tr:last-child td {border-bottom: 1px solid #37484b;}
#advance .class_table_sat span:first-child {background-color: #a1cfd7;}
#advance .class_table_sat span:last-child {background-color: #d4edf1;}
#advance .class_teaching_mv {background-image: url(../img/class/advance_mv02.jpg);}
#advance .class_teaching_box {background-color: rgba(55,72,75,0.9);}
#advance .class_teaching_title {
	border-color: #37484b;
	color: #37484b;
}

/* サポート
--------------------------------------------------------- */
#support .class_mv {background-image: url(../img/class/support_mv01.jpg);}
#support .class_mv {background-image: url(../img/class/support_mv01.jpg);}
#support .class_menu .is-active a {background-color: #343852;}
#support .class_lead h2 {color: #343852;}
#support .class_movie a {border-color: #2e3046;}
#support .class_lead_list li::before {background-color: #747aa2;}
#support .class_sec_head {color: #343852;}
#support .class_sec_head::before {border-color: #343852;}
#support .class_sec_title {color: #343852;}
#support .class_sec_list_inner h4 {
	border-color: #343852;
	color: #343852;
}



/* ---------------------------------------------------------

	09. 学習

--------------------------------------------------------- */

/* 東野高校の学習
--------------------------------------------------------- */
.box_program {
	margin-top: 15px;
}
.box_program img {
	max-width: 236px;
}

.table_curriculum {
	margin-bottom: 40px;
	text-align: center;
	width: 100%;
}
.table_curriculum th {
	border-top: 1px solid #bcbcbc;
	border-bottom: 1px solid #bcbcbc;
	font-weight: normal;
	padding: 13px 10px;
}
.table_curriculum tr:nth-child(odd) {background-color: #f2f2f2;}
.table_curriculum th:first-child {border-left: none;}
.table_curriculum td {
	border: 1px solid #bcbcbc;
	padding: 13px 10px;
}
.table_curriculum td:last-child {border-right: none;}
.table_curriculum tr:first-child th {
	background-color: #14adbd;
	border-top: 1px solid #14adbd;
	color: #fff;
	font-weight: bold;
}
.table_curriculum tr:first-child th + th {
	border-left: 1px solid #fff;
}

/* 各コース共通
--------------------------------------------------------- */
.class_message {
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: 232px auto;
	border-top: 2px solid #111;
	border-bottom: 2px solid #111;
	margin-bottom: 50px;
	padding: 25px 38% 25px 0;
}
.class_message h3 {
	font-size: 22px;
	font-weight: bold;
	line-height: 1.4;
	margin-bottom: 10px;
}
.class_message h3 + p {
	margin-bottom: 1.5em;
}
.class_message p {
	line-height: 1.6;
}
.class_message p + p {
	margin-top: 0.5em;
}
.class_message .class_message_target {
	background-color: #f2f2f2;
	font-weight: bold;
	margin-top: 1.0em;
	padding: 10px;
}
#alpha-course .class_message {background-image: url(../img/education/alpha-course_message01.jpg);}
#beta-course .class_message {background-image: url(../img/education/beta-course_message01.jpg);}
#advanced-course .class_message {background-image: url(../img/education/advanced-course_message01.jpg);}

#international_curriculum {
	margin-top: -120px;
	padding-top: 120px;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.class_message {
		background-position: center bottom;
		background-size: 232px auto;
		margin-bottom: 40px;
		padding: 15px 0 360px;
	}
	.class_message h3 {
		font-size: 18px;
	}
	.class_message h3 + p {
		margin-bottom: 1.0em;
	}

	#international_curriculum {
		margin-top: 0;
		padding-top: 0;
	}
}

/* グローバル教育
--------------------------------------------------------- */
#global hr {
	border: none;
	border-top: 1px dotted #3fabb6;
	margin: 30px 0;
}
.global_box_canada {
	margin: 15px 0 40px;
}

.global_box_message {
	background-color: #ecf6f7;
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	margin: 20px 0 40px;
	padding: 30px 20px;
	position: relative;
}
.global_box_message > div:first-child {
	flex: 0 0 auto;
	margin-left: 25px;
	width: 244px;
}
.global_box_message_profile {
	line-height: 1.4;
	margin-top: 10px;
}
.global_box_message_text {
	width: calc(100% - 270px);
}
.global_box_message_text h4 {
	color: #3fabb6;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.4;
}
.global_box_message_text p {
	line-height: 1.7;
	margin-top: 15px;
}
.global_box_message_tag {
	background-color: #3fabb6;
	color: #fff;
	font-weight: bold;
	padding: 12px 15px;
	position: absolute;
	top: 0;
	right: 0;
}

.teachers_box {
	background-color: #fff;
	border: 1px solid #3fabb6;
}
.teachers_box .global_box_message_tag {
	background-color: #fff;
	border: 1px solid #3fabb6;
	border-top: none;
	border-right: none;
	color: #3fabb6;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.global_box_message {
		display: block;
		padding: 20px 15px;
	}
	.global_box_message > div:first-child {
		margin-left: 0;
		width: 100%;
	}
	.global_box_message_profile {
		margin: 10px 0 15px;
	}
	.global_box_message_text {
		width: 100%;
	}
	.global_box_message_text h4 {
		font-size: 18px;
		margin-top: 10px;
	}
	.global_box_message_tag {
		padding: 10px 12px;
	}
}

/* 教科ガイド
--------------------------------------------------------- */
#subject .sp_br {display: block;}

/*===============================================
  ブレイクポイント：425px以下
===============================================*/
@media screen and (max-width:425px) {
	.sp_br {display: block;}
}

/* シラバス
--------------------------------------------------------- */
.syllabus_box_3btn ul {
	margin-bottom: -2%;
}
.syllabus_box_3btn li {
	margin-bottom: 2%;
}
.syllabus_box_3btn li:nth-child(3n) {
	margin-right: 0;
}



/* ---------------------------------------------------------

	10. 進路

--------------------------------------------------------- */

/* 進路指導
--------------------------------------------------------- */
.guidance_table {
	margin-bottom: 50px;
}
.guidance_table tbody th {
	background-color: #f2f2f2;
	color: #14adbd;
}
.guidance_table tbody td {
	text-align: center;
}

/* 進路データ
--------------------------------------------------------- */
.clr_kuni {color: #c94141;}
.clr_soukei {color: #c9a141;}
.clr_gmarch {color: #87c941;}
.clr_seisei {color: #3bb262;}
.clr_nittou {color: #4174c9;}
.clr_daitou {color: #7b41c9;}
#data .tit_big {
	font-size: 20px;
	margin-top: 35px;
}
#data .table_normal th:nth-child(1) {
	padding: 5px 10px;
	width: 12em;
}
#data .table_normal th:nth-child(3) {width: 5em;}
#data .table_normal tr:nth-child(n+2) th {
	background-color: #f2f2f2;
	color: #14adbd;
	text-align: left;
}
#data .table_normal td:last-child {text-align: center;}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.table_shiritsu {
		white-space: normal;
	}
	.table_shiritsu table {
		width: 500px;
	}
}

/* 卒業生メッセージ
--------------------------------------------------------- */
.message_heading {
	background-color: #00b2bc;
	margin-top: 50px;
	padding: 20px 10px;
	text-align: center;
}
.message_heading_num {
	font-size: 35px;
	font-weight: bold;
	margin-bottom: 0.15em;
}
.message_heading_subtitle {
	font-size: 12px;
	margin-bottom: 1.25em;
}
.message_heading_title {
	color: #fff;
	font-size: 20px;
	line-height: 1.3;
	margin-bottom: 0.5em;
}
.message_heading_profile {
	color: #fff;
	line-height: 1.4;
}

.message_heading_movie {
	display: flex;
}
.message_heading_movie::before {
	content: '';
	background: url(/material/img/course/2020/message_img01.jpg) left top/cover no-repeat;
	display: block;
	width: 50%;
}
.message_heading_movie::after {
	content: '';
	background: url(/material/img/course/2020/message_img02.jpg) center top/cover no-repeat;
	display: block;
	width: 50%;
}
.message_heading_movie .message_heading {
	flex: 0 0 auto;
	margin-top: 0;
}

.message_lead_title {
	font-size: 19px;
	font-weight: bold;
	margin: 1.5em 0 0.8em;
	text-align: center;
}
.message_lead_text.cnt_txt {
	margin-bottom: 2em;
	text-align: center;
}

.message_movie_list {
	margin-bottom: 100px;
}
.message_movie_list li {
	display: flex;
}
.message_movie_list li:nth-child(even) {
	flex-direction: row-reverse;
}
.message_movie_text {
	background-color: #bdbebf;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	padding: 60px 0;
	width: 50%;
}
.message_movie_num {
	color: #fff;
	font-size: 40px;
	margin-right: 0.3em;
}
.message_movie_subtitle {
	line-height: 1.4;
}
.message_movie_title {
	color: #fff;
	font-size: 18px;
	margin-top: 0.8em;
	text-align: center;
	width: 100%;
}
.message_movie_item {
	width: 50%;
}
.message_movie_item a {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	display: block;
	height: 100%;
	overflow: hidden;
	position: relative;
	text-indent: 100%;
	white-space: nowrap;
}
.message_movie_item a::after {
	content: '';
	background: url(/material/img/course/2020/message_ico01.png) center/contain no-repeat;
	display: block;
	height: 80px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 80px;
}
.message_movie_list li:nth-child(1) .message_movie_item a {background-image: url(/material/img/course/2020/message_img03.jpg);}
.message_movie_list li:nth-child(2) .message_movie_item a {background-image: url(/material/img/course/2020/message_img04.jpg);}
.message_movie_list li:nth-child(3) .message_movie_item a {background-image: url(/material/img/course/2020/message_img05.jpg);}

.message_movie_list .is-nolink a {
	pointer-events: none;
}
.message_movie_item.is-nolink {
	position: relative;
}
.message_movie_item.is-nolink::before {
	content: '';
	background-color: rgba(20,40,40,0.7);
	display: block;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1;
}
.message_movie_item.is-nolink::after {
	content: 'coming soon…';
	background: none;
	color: #dedede;
	font-size: 24px;
	font-weight: bold;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	white-space: nowrap;
	width: auto;
	z-index: 1;
}
.message_movie_item.is-nolink a::after {display: none;}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.message_heading {
		margin-top: 30px;
	}
	.message_heading_num {
		font-size: 28px;
	}
	.message_heading_title {
		font-size: 18px;
	}

	.message_heading_movie {
		flex-wrap: wrap;
	}
	.message_heading_movie::before {
		height: 160px;
		order: 2;
		width: 50%;
	}
	.message_heading_movie::after {
		height: 160px;
		order: 3;
		width: 50%;
	}
	.message_heading_movie .message_heading {
		flex: 0 0 auto;
		order: 1;
		width: 100%;
	}

	.message_lead_title {
		font-size: 18px;
	}
	.message_lead_text.cnt_txt {
		text-align: left;
	}

	.message_movie_list {
		margin-bottom: 60px;
	}
	.message_movie_list li {
		display: block;
	}
	.message_movie_list li + li {
		margin-top: 15px;
	}
	.message_movie_text {
		padding: 15px 0;
		width: 100%;
	}
	.message_movie_num {
		font-size: 34px;
		margin-right: 0.3em;
	}
	.message_movie_subtitle {
		font-size: 12px;
	}
	.message_movie_item {
		height: 150px;
		width: 100%;
	}
}



/* ---------------------------------------------------------

	11. 学校生活

--------------------------------------------------------- */

/* 3種のWEEK
--------------------------------------------------------- */
.week_anchor {
	margin-block: 3em;
}
.week_anchor li a {
	display: grid;
	grid-template-columns: repeat(2, auto);
	place-content: center;
	gap: 0.5em;
}

.week_quest_flow {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2em;
	margin-block: 2em 3em;
}
.week_quest_flow_item {
	border: 1px solid #3fabb6;
	position: relative;
}
.week_quest_flow_item:not(:last-child)::after {
	content: '';
	border: 1em solid transparent;
	border-left-color: #3fabb6;
	position: absolute;
	top: 50%;
	left: calc(100% + 0.75em);
}
.week_quest_flow_item h3 {
	background-color: #ecf6f7;
	color: #3fabb6;
	font-weight: bold;
	padding: 0.5em 1em;
	text-align: center;
}
.week_quest_flow_item ul {
	display: grid;
	gap: 0.5em;
	padding: 1em;
}
.week_quest_flow_item li {
	line-height: 1.5;
	padding-left: 1em;
	text-indent: -1em;
}
.week_quest_flow_item li::before {
	content: '・';
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.week_anchor li a {
		grid-template-columns: auto;
		gap: 0;
		height: 100%;
		line-height: 1.5;
	}
	.week_quest_flow {
		grid-template-columns: auto;
		margin-inline: auto;
		max-width: 250px;
	}
	.week_quest_flow_item:not(:last-child)::after {
		border-left-color: transparent;
		border-top-color: #3fabb6;
		top: calc(100% + 0.75em);
		left: 50%;
		translate: -50% 0;
	}
}

/* 一日の生活
--------------------------------------------------------- */
.box_time {
	background-color: #f2f2f2;
	display: table;
	margin: 40px 0 10px;
	min-height: 220px;
	position: relative;
	width: 100%;
}
.box_time:before {
	content: '';
	border: 10px solid transparent;
	border-top: 10px solid #3fabb6;
	height: 0;
	position: absolute;
	top: -23px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
}
.box_time:first-of-type {margin-top: 15px;}
.box_time:first-of-type:before {display: none;}
.box_time_left {
	display: table-cell;
	padding: 20px;
	width: 260px;
}
.box_time_left .ico {
	margin: 0 auto 12px;
	max-width: 60px;
}
.box_time_right {
	background-repeat: no-repeat;
	background-size: cover;
	color: transparent;
	display: table-cell;
	vertical-align: top;
}
.box_time_right:before {
	content: '';
	display: block;
	float: left;
	height: 220px;
	width: 1px;
}
.box_time:nth-of-type(1) .box_time_right {
	background-image: url(/material/img/school-life/time_img01.jpg);
	background-position: right bottom;
}
.box_time:nth-of-type(2) .box_time_right {
	background-image: url(/material/img/school-life/2023/time_img02.jpg);
	background-position: right top;
}
.box_time:nth-of-type(3) .box_time_right {
	background-image: url(/material/img/school-life/2023/time_img03.jpg);
}
.box_time:nth-of-type(4) .box_time_right {
	background-image: url(/material/img/school-life/time_img04_2021.jpg);
	background-position: center;
}
.box_time:nth-of-type(5) .box_time_right {
	background-image: url(/material/img/school-life/2023/time_img05.jpg);
}
.box_time:nth-of-type(6) .box_time_right {
	background-image: url(/material/img/school-life/2023/time_img06.jpg);
}
.none img {visibility: hidden;}
.table_time {
	text-align: center;
	width: 100%;
}
.table_time tr + tr {
	border-top: 1px solid #f2f2f2;
}
.table_time th {
	background-color: #3fabb6;
	color: #fff;
	font-weight: bold;
	padding: 6px;
	width: 55%;
}
.table_time td {
	background-color: #fff;
	padding: 6px 3px;
	width: 45%;
}

.time_saturday {
	border-top: 2px dotted #3fabb6;
	margin-top: 3em;
	padding-top: 3em;
}

.table_saturday_wrap {
	background-color: #f2f2f2;
	display: inline-block;
	margin-top: 1.5em;
	padding: 1.5em;
}
.table_time_saturday {
	width: auto;
}
.table_time_saturday th,
.table_time_saturday td {
	padding-inline: 1em;
	width: auto;
}

.time_next_wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 3em;
}
.table_next_saturday td {
	padding: 1em;
}
.table_next_saturday .class_table_sat  {
	margin-top: 1em;
}
.table_next_saturday .class_table_sat span {
	background-color: #aaa;
	color: #fff;
	font-weight: bold;
	height: 3em;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.box_time {
		display: block;
		margin: 40px 0 10px;
		min-height: inherit;
	}
	.box_time:before {
		content: '';
		border: 10px solid transparent;
		border-top: 10px solid #3fabb6;
		height: 0;
		position: absolute;
		top: -23px;
		left: 50%;
		transform: translateX(-50%);
		width: 0;
	}
	.box_time_left {
		display: block;
		padding: 20px;
		width: 100%;
	}
	.box_time_left .ico {
		margin: 0 auto 12px;
		max-width: 60px;
	}
	.box_time_right {
		background-repeat: no-repeat;
		background-size: cover;
		display: block;
		padding-top: 56%;
		vertical-align: top;
		width: 100%;
	}
	.box_time_right:before {
		display: none;
	}

	.time_saturday {
		margin-top: 2em;
		padding-top: 2em;
	}

	.table_saturday_wrap {
		display: block;
	}
	.table_time_saturday {
		line-height: 1.4;
		width: 100%;
	}
}

/* 年間行事
--------------------------------------------------------- */
.list_event {
	border-top: 1px solid #bcbcbc;
	border-bottom: 1px solid #bcbcbc;
	margin: 25px 0 45px;
}
.list_event > li {
	border-bottom: 1px dotted #bcbcbc;
	display: table;
	padding: 20px 0;
	width: 100%;
}
.list_event > li:last-child {border-bottom: none;}
.list_event h2 {
	display: table-cell;
	padding-right: 20px;
	vertical-align: top;
	width: 100px;
}
.list_event_month {
	background-color: #f2f2f2;
	color: #3fabb6;
	display: block;
	font-size: 27px;
	font-weight: bold;
	height: 110px;
	padding-top: 30px;
	text-align: center;
	width: 110px;
}
.list_event_eng {
	display: block;
	font-size: 12px;
	font-weight: normal;
	margin-top: 5px;
}
.list_event ul {
	border-left: 1px solid #bcbcbc;
	display: table-cell;
	padding: 0 10px 0 20px;
	vertical-align: top;
}
.list_event ul li {
	line-height: 1.6;
}
.list_event p {
	display: table-cell;
	vertical-align: top;
	width: 200px;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.list_event > li {
		border-bottom: 1px dotted #bcbcbc;
		display: block;
		padding: 20px 0;
		width: 100%;
	}
	.list_event h2 {
		display: block;
		padding-right: 0;
		vertical-align: top;
		width: 100%;
	}
	.list_event_month {
		background-color: #f2f2f2;
		color: #3fabb6;
		display: block;
		font-size: 20px;
		font-weight: bold;
		height: auto;
		padding: 10px 0;
		text-align: center;
		width: 100%;
	}
	.list_event_eng {
		display: block;
		font-size: 12px;
		font-weight: normal;
		margin-top: 5px;
	}
	.list_event ul {
		border-left: none;
		display: block;
		padding: 15px 0;
	}
	.list_event p {
		display: block;
		width: 100%;
	}
}

/* 制服
--------------------------------------------------------- */
.box_uniform {
	margin: 50px 0 40px;
}
.box_uniform li + li {
	margin-top: 60px;
}
.box_uniform_title {
	border-top: 1px dashed #14adbd;
	border-bottom: 1px dashed #14adbd;
	color: #14adbd;
	font-size: 20px;
	font-weight: normal;
	letter-spacing: 0.3em;
	margin-bottom: 40px;
	padding: 25px;
	text-align: center;
}

.uniform_girls_panel {
	border-top: 1px dashed #14adbd;
	margin-top: 60px;
	padding-top: 40px;
}
.uniform_girls_panel h2 {
	color: #14adbd;
	font-size: 15px;
	margin-bottom: 10px;
	text-indent: -0.5em;
}

.list_uniform {
	display: flex;
	justify-content: space-between;
}
.list_uniform li {
	font-size: 12px;
	line-height: 1.4;
	width: 32%;
}
.list_uniform li img {
	display: block;
	margin-bottom: 5px;
}

.uniform_2col {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.5em;
	margin-top: 2em;
}

/*===============================================
  ブレイクポイント：425px以下
===============================================*/
@media screen and (max-width:460px) {
	.box_uniform {
		margin: 30px 0;
	}
	.box_uniform li + li {
		margin-top: 40px;
	}
	.box_uniform_title {
		font-size: 18px;
		letter-spacing: 0.2em;
		margin-bottom: 20px;
		padding: 15px;
	}

	.uniform_girls_panel {
		margin-top: 40px;
		padding-top: 20px;
	}

	.list_uniform {
		flex-wrap: wrap;
	}
	.list_uniform li {
		width: 47%;
	}
	.list_uniform li:nth-child(n+3) {
		margin-top: 15px;
	}
}

/* クラブ活動
--------------------------------------------------------- */
#club h2.tit_belt {
	margin-top: 30px;
}
.btn_blog a {
	background: url(/material/img/common/bg_btn_blue01.png) center;
	color: #fff;
	display: block;
	font-weight: bold;
	margin-top: 10px;
	padding: 13px 5px;
	text-align: center;
	width: 100%;
}
.box_club_special h3 + p {
	position: relative;
}
.box_club_special h3 + p:after {
	content: url(/material/img/school-life/club_ico01.png);
	position: absolute;
	top: -10px;
	left: -20px;
}
/*.btn_blog {display: none;} */

.club_movie {
	position: relative;
}
.club_movie a {
	display: block;
	height: 100%;
}
.club_movie a::after {
	content: '';
	background: url(../img/top/mv_btn_play.png) center/contain no-repeat;
	display: block;
	height: 80px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 80px;
}

/*===============================================
  ブレイクポイント：425px以下
===============================================*/
@media screen and (max-width:425px) {
	#club .box_3btn li:first-child a {
		font-size: 13px;
		letter-spacing: -1px;
	}
}

/* 施設・設備
--------------------------------------------------------- */
.facilities_satellite {
	margin-top: 10px;
}
.facilities_satellite a {
	color: #14adbd;
	line-height: 20px;
	text-align: center;
}
.facilities_satellite a:after {
	content: url(/material/img/common/ico_arrow_white01.png);
	background: url(/material/img/common/bg_slash_green01.png) center;
	display: inline-block;
	height: 20px;
	margin-left: 5px;
	padding: 1px 0 0 2px;
	vertical-align: bottom;
	width: 20px;
}



/* ---------------------------------------------------------

	12. 入試関連

--------------------------------------------------------- */

/* 説明会＆相談会
--------------------------------------------------------- */
#briefing .contents_main h3 {
	color: #14adbd;
	font-size: 20px;
	line-height: 1.3;
	margin-bottom: 7px;
}
#briefing .contents_main .tag:after {
	content: '要予約';
	background-color: #3fabb6;
	border-radius: 4px;
	color: #fff;
	display: inline-block;
	font-size: 14px;
	margin-left: 0.5em;
	padding: 3px 10px;
	position: relative;
	top: -1px;
	vertical-align: bottom;
}
#briefing .contents_main .tag_no_require:after {
	content: '予約不要';
}
#briefing .contents_main .tag_application:after {
	content: '要申込';
}
#briefing .contents_main .tag_semi_require:after {
	content: '一部要予約';
}
#briefing .contents_main .tag + .tag:before {
	content: '・';
}
#briefing .contents_main .cnt_txt + .box_gray {
	margin-top: 7px;
}
#briefing .contents_main .box_gray + h3 {
	margin-top: 30px;
}
#briefing .contents_main .box_gray + .box_gray {
	margin-top: -15px;
}
#briefing .contents_main .box_gray h4 {
	color: #3fabb6;
	font-weight: bold;
	line-height: 1.6;
	margin-bottom: 5px;
}
#briefing .contents_main .box_gray .cnt_txt + .cnt_txt {
	margin-top: 5px;
}
#briefing .box_gray li {
	line-height: 1.6;
}
#briefing .box_gray li:before {
	content: '・';
}
#briefing .date {
	display: inline-block;
	text-align: right;
	width: 2.5em;
}
.off_campus {margin-top: 50px;}
.briefing_caution {
	margin: 50px 0 20px;
}
.briefing_caution li {
	line-height: 1.6;
	padding-left: 1.0em;
	text-indent: -1.0em;
}

.list_dl {
	overflow: hidden;
}
.list_dl dt {
	color: inherit;
	clear: both;
	float: left;
	font-size: 14px;
	font-weight: normal;
	line-height: 1.6;
	margin-bottom: 0;
	width: 5.5em;
}
.list_dl dd {
	line-height: 1.6;
	padding-left: 3.5em;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#briefing .contents_main h2 {
		font-size: 18px;
	}
	#briefing .contents_main h3 {
		font-size: 18px;
	}
	#briefing .contents_main .tag_require:after,
	#briefing .contents_main .tag_no_require:after {
		top: 0;
	}
}

/* 募集要項
--------------------------------------------------------- */
#application table {
	font-size: 12px;
}
#application .table_normal th {
	padding: 5px;
}
#application .table_normal td {
	padding: 5px;
	text-align: center;
}
#application .table_normal .rec {
	background-color: #def9fc;
	color: #14adbd;
}
#application .table_normal .type {
	background-color: #f2f2f2;
	color: #111;
	font-weight: normal;
}
#application .table_oubo tr:last-child td {
	vertical-align: top;
}
#application .table_club {
	margin: 15px 0;
}
#application .table_club th {
	width: 6em;
}
#application .table_club th + td {
	width: 15em;
}
#application .table_club td {
	vertical-align: middle;
}
.application_money {
	line-height: 1.6;
	font-size: 16px;
	font-weight: bold;
	margin: 30px 0 15px;
}
.application_star {
	border: 3px solid #14adbd;
	margin: 20px 0;
	overflow: hidden;
	padding: 10px;
	position: relative;
}
/* .application_star:after {
	content: '★';
	background-color: #14adbd;
	color: #ffea00;
	height: 1.5em;
	line-height: 1.5;
	position: absolute;
	top: -3px;
	left: -3px;
	text-align: center;
	width: 1.5em;
} */
.application_star p {
	float: left;
	font-size: 12px;
	padding: 0 40px 0 0;
	width: 40%;
}
.application_star p span {
	background-color: #f2f2f2;
	border: 1px solid #bcbcbc;
	display: inline-block;
	margin-right: 3px;
	width: 3em;
}
.application_star table {
	border: 1px solid #bcbcbc;
	/*float: right;*/
	position: relative;
	width: 100%;
}
.application_star td {
	background-color: #f2f2f2;
	border: 1px solid #bcbcbc;
	line-height: 1.5;
	padding: 5px;
	text-align: center;
}
.application_star td:last-child {
	background-color: #fff;
}
.table_star_wrapper {
	float: right;
	position: relative;
	width: 60%;
}
.table_star_wrapper:before {
	content: '例';
	font-size: 12px;
	position: absolute;
	top: 0;
	left: -1.5em;
}

.table_app_num {table-layout: fixed;}
.table_app_num br {display: none;}

.table_app tr:nth-of-type(1) th:first-child {width: 6em;}

.table_app_eng {
	margin-bottom: 30px;
}
.table_app_eng td:nth-child(2) {background-color: #f2f2f2;}

.table_examdate tr:first-child th:first-child {
	width: 6em;
}
.table_examdate strong {
	display: block;
	padding-left: 1em;
	text-indent: -1em;
}

/*===============================================
  ブレイクポイント：940px以下
===============================================*/
@media screen and (max-width:650px) {
	#application .table_wrapper {
		overflow-x: auto;
		position: relative;
		-webkit-overflow-scrolling: touch;
	}
	#application .table_oubo br {display: block;}
	.application_star p {
		float: none;
		padding: 0;
		width: 100%;
	}
	.application_star table {
		float: none;
		margin-top: 15px;
		position: relative;
		width: 100%;
	}
	.application_star caption {
		margin-bottom: 3px;
		position: static;
	}
	.table_star_wrapper {
		float: none;
		padding-left: 1.2em;
		width: 100%;
	}
	.table_star_wrapper:before {
		left: 0;
	}

	#application .table_normal_fixed {
		white-space: normal;
		width: 600px;
	}

	.table_app_num {table-layout: auto;}
	.table_app_num br {display: block;}

	.table_app.table_club {
		width: 500px;
		white-space: normal;
	}
}

/* 出願・入学手続について
--------------------------------------------------------- */
#flow .contents_main h4 {
	border-bottom: 1px solid #3fabb6;
	font-size: 14px;
	font-weight: bold;
	padding-bottom: 5px;
}
#flow .contents_main h4 span {
	background-color: #14adbd;
	color: #fff;
	display: inline-block;
	margin-right: 5px;
	padding: 1px;
	text-align: center;
	width: 1em;
}
.flow_box {
	margin-bottom: 40px;
	position: relative;
}
.flow_box:after {
	content: '';
	border: 10px solid transparent;
	border-top: 10px solid #3fabb6;
	height: 0;
	position: absolute;
	bottom: -30px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
}
.flow_box a {
	color: #3fabb6;
	text-decoration: underline;
}
.layout_pc .flow_box a:hover {
	text-decoration: none;
}
.flow_box_noarrow:after {
	display: none;
}
#flow .contents_main p span.u_line {
	text-decoration: underline;
}
#flow .contents_main ul.noLink a {
	cursor: default;
	background: url(/material/img/common/bg_btn_black01.png) center;
}
#flow .contents_main ul.noLink a:hover {
	text-decoration: none;
}

.flow_btn_pdf {
	margin: 15px auto 0;
	max-width: 310px;
}
.flow_btn_pdf a {
	background-color: #ff7e00;
	border: 4px solid #ffa34a;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 60px;
	text-align: center;
	text-decoration: none;
}
.flow_btn_pdf a::before {
	content: '';
	background: url(/material/img/common/ico_pdf01.png) center/contain no-repeat;
	display: inline-block;
	height: 36px;
	margin-right: 5px;
	width: 30px;
}

/* 学費
--------------------------------------------------------- */
#tuition .contents_main h3 {
	border-bottom: 1px solid #3fabb6;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.2;
	margin: 25px 0 10px;
	padding: 0 0 5px 18px;
	position: relative;
}
#tuition .contents_main h3:before {
	content: '■';
	color: #14adbd;
	position: absolute;
	top: 0;
	left: 0;
}
#tuition .table_normal {
	font-size: 12px;
}
#tuition .table_normal th,
#tuition .table_normal td {
	text-align: center;
}
#tuition .table_normal tr:nth-child(n+2) th {
	background-color: #f2f2f2;
	color: #111;
	font-weight: normal;
	text-align: left;
}
#tuition .table_uniform tr:nth-child(2) th {
	background-color: #def9fc;
	color: #14adbd;
	width: 50%;
}
#tuition .table_uniform tr:nth-child(n+3) th {
	text-align: left;
}
#tuition .table_uniform tr:nth-child(n+3) td {
	text-align: right;
}
#tuition .table_goods {
	margin-top: 25px;
	table-layout: fixed;
}
#tuition .table_goods tr td {
	text-align: center !important;
}

#tuition .table_uniform {font-feature-settings: 'palt';}
#tuition .table_uniform th {padding-left: calc(10px + 1em);}
#tuition .table_uniform th.uniform_star,
#tuition .table_uniform th.uniform_select {padding-left: 10px;}
.uniform_star::before {content: '★';}
.uniform_select::before {content: '☆';}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#tuition .table_goods {
		table-layout: auto;
	}
}

/* 奨学生（特待生）制度について
--------------------------------------------------------- */
#scholarship .contents_main {
	counter-reset: scholarship-num;
}
#scholarship .contents_main h3 {
	border-bottom: 1px solid #3fabb6;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.2;
	margin: 25px 0 10px;
	padding: 0 0 5px 18px;
	position: relative;
}
#scholarship .contents_main h3:nth-of-type(-n+4) {
	counter-increment: scholarship-num;
	padding-left: 22px;
}
#scholarship .contents_main h3:nth-of-type(-n+4):before {
	content: counter(scholarship-num, upper-roman);
	background-color: #14adbd;
	color: #fff;
	font-weight: normal;
	position: absolute;
	top: 0;
	left: 0;
	text-align: center;
	width: 1.2em;
}
#scholarship .contents_main h3:nth-of-type(n+5):before {
	content: '■';
	color: #14adbd;
	position: absolute;
	top: 0;
	left: 0;
}
.scholarship_list {
	padding-left: 1.5em;
}
.scholarship_list > li {
	font-weight: bold;
	list-style: decimal;
}
.scholarship_list > li p,
.scholarship_list > li li,
.scholarship_list > li table {
	font-weight: normal;
}

#scholarship .contents_main table {
	font-size: 12px;
	margin-top: 10px;
	text-align: center;
}
#scholarship .table_special tr:nth-child(n+3) th,
#scholarship .table_club tbody th {
	background-color: #f2f2f2;
	color: #111;
	font-weight: normal;
}

.scholarship_2col {
	display: flex;
	justify-content: space-between;
}
.scholarship_2col > * {
	flex: 0 0 48%;
}
#scholarship .contents_main .scholarship_2col table {margin-top: 0;}

.scholarship_note {
	margin-block: 2em 1em;
	padding-left: 1em;
	text-indent: -1em;
}

.scholarship_example {
	display: flex;
	flex-wrap: wrap;
	margin-top: -0.5em;
	padding-inline: 0.5em;
}
.scholarship_example dt {
	color: inherit;
	flex: 0 0 3em;
	font-size: inherit;
	line-height: 1.6;
	margin-bottom: 0;
}
.scholarship_example dd {
	flex: 1 1 calc(100% - 3em);
}
.scholarship_example dt:not(:first-child),
.scholarship_example dd:not(:first-of-type) {margin-top: 1em;}
.scholarship_num {margin-top: 0.25em;}
.scholarship_num em {
	background-color: #14adbd;
	color: #fff;
	font-size: 1.125em;
	font-style: normal;
	padding: 0.2em;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.scholarship_2col {display: block;}
	#scholarship .contents_main .scholarship_2col table {margin-top: 10px;}
}

/* Q&A
--------------------------------------------------------- */
#qanda .contents_main dl {
	border-top: 1px dotted #3fabb6;
}
#qanda .contents_main dt {
	color: #14adbd;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.3;
	padding: 20px 20px 2px 58px;
	position: relative;
}
#qanda .contents_main dt:nth-of-type(even) {
	background-color: #f2f2f2;
}
#qanda .contents_main dt:before {
	content: 'Q';
	background-color: #14adbd;
	color: #fff;
	display: inline-block;
	margin-right: 5px;
	padding-bottom: 4px;
	position: absolute;
	top: 18px;
	left: 20px;
	text-align: center;
	width: 1.5em;
}
#qanda .contents_main dd {
	border-bottom: 1px dotted #3fabb6;
	line-height: 1.5;
	padding: 11px 20px 20px 58px;
	position: relative;
}
#qanda .contents_main dd:nth-of-type(even) {
	background-color: #f2f2f2;
}
#qanda .contents_main dd:before {
	content: 'A';
	background-color: #000;
	color: #fff;
	display: inline-block;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	margin-right: 5px;
	position: absolute;
	top: 5px;
	left: 20px;
	text-align: center;
	width: 1.5em;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#qanda .contents_main dt {
		padding: 10px 10px 2px 48px;
	}
	#qanda .contents_main dt:before {
		top: 8px;
		left: 10px;
	}
	#qanda .contents_main dd {
		padding: 11px 10px 10px 48px;
	}
	#qanda .contents_main dd:before {
		top: 5px;
		left: 10px;
	}
}

/* 出願までの流れ
--------------------------------------------------------- */
#notice .contents_main h1 {margin-bottom: 30px;}
#notice .contents_main .tit_big {
	padding-left: 1.7em;
	text-indent: -1.7em;
}

.notice_box:last-child,
.notice_box:last-child .box_gray {margin-bottom: 0;}
.notice_box:last-child::after {display: none;}
.notice_box .box_gray {
	padding: 20px;
}
.notice_2col > ul > li {
	width: 47%;
}
.notice_box .tit_square {
	border-bottom-style: dotted;
	font-size: 16px;
	line-height: 1.4;
	margin-bottom: 12px;
	padding-bottom: 8px;
	padding-left: 1em;
	text-indent: -1em;
}
.notice_box .tit_em {
	font-size: 14px;
}

.notice_caution {
	background-color: #d0ebef;
	line-height: 1.6;
	padding: 8px;
	text-align: center;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#notice .contents_main h1 {margin-bottom: 20px;}

	.notice_box .box_gray {
		padding: 15px;
	}
	.notice_2col > ul > li {
		width: 100%;
	}
	.notice_2col > ul > li:nth-child(even) {
		margin-top: 20px;
	}
	.notice_box .tit_square {
		margin-bottom: 10px;
	}

	.notice_caution {
		margin-top: 20px;
	}
}

/* 中学校の先生へのお願い
--------------------------------------------------------- */
.for-teachers_list > li {
	line-height: 1.6;
	list-style: decimal;
	margin-left: 1.2em;
}
.for-teachers_list > li + li {
	margin-top: 0.5em;
}



/* ---------------------------------------------------------

	13. NEWS

--------------------------------------------------------- */

/* NEWS一覧
--------------------------------------------------------- */
.list_news {
	border-top: 1px dotted #3fabb6;
	margin-bottom: 30px;
}
.list_news dt {
	clear: both;
	float: left;
	line-height: 1.7;
	padding: 13px 0;
	text-align: center;
	width: 17em;
}
.list_news dt .news_date {
	display: inline-block;
	text-align: center;
	width: 7.0em;
}
.list_news dt .news_tag {
	background-color: #fff;
	border: 1px solid;
  display: inline-block;
	font-size: 12px;
  font-weight: bold;
  padding: 1px 10px;
  text-align: center;
	width: 10em;
}
.list_news dd {
	border-bottom: 1px dotted #3fabb6;
	line-height: 1.7;
	overflow: inherit;
	padding: 13px 10px 13px 17em;
}
.list_news dd:nth-of-type(even) {
	background-color: #f2f2f2;
}
.news_ico_new {
	color: #ff0000;
	margin-left: 5px;
	text-transform: uppercase;
}

/*===============================================
  ブレイクポイント：425px以下
===============================================*/
@media screen and (max-width:425px) {
	.list_news dt {
		float: none;
		text-align: left;
		width: 100%;
	}
	.list_news dt:nth-of-type(even) {
		background-color: #f2f2f2;
	}
	.list_news dd {
		padding: 0 10px 9px;
	}

	.gallery br {
		display: none;
	}
	.gallery .gallery-item {
		float: none !important;
		margin: 10px 0 0 0;
		width: 100% !important;
	}
}

/* ページネーション
------------------------------------ */
.wp-pagenavi {
	text-align: center;
}
.wp-pagenavi span,
.wp-pagenavi a {
	background-color: #fff;
	border: 1px solid #d6d6d6;
	display: inline-block;
	margin: 2px;
	min-height: 26px;
	min-width: 26px;
	padding: 5px;
	text-decoration: none;
	vertical-align: middle;
}
.wp-pagenavi a:hover,
.wp-pagenavi .current {
	background-color: #14adbd;
	border-color: #000;
	color: #fff;
	font-weight: bold;
}

/* お知らせ詳細
--------------------------------------------------------- */
.box_news {
	background-color: #ebf8f9;
	border-top: 1px dotted #3fabb6;
	border-bottom: 1px dotted #3fabb6;
	margin-bottom: 20px;
	padding: 20px 0;
}
.box_news .news_date {
	margin-bottom: 12px;
	padding: 0 20px;
}
.box_news .news_tag {
	background-color: #fff;
  display: inline-block;
	font-size: 12px;
  font-weight: bold;
	margin-left: 10px;
  padding: 2px 10px;
  text-align: center;
	width: 10em;
}
.box_news_inner {
	padding: 10px 20px;
}
.box_news > h2 {
	border-bottom: 1px dotted #3fabb6;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 10px;
	padding: 0 20px 10px;
}
.box_news p {
	line-height: 1.6;
}
.box_news p + p {
	margin-top: 10px;
}
.box_news p a,
.box_news li a {
	color: #14adbd;
	text-decoration: underline;
}
.box_news p a:hover,
.box_news li a:hover {
	text-decoration: none;
}
.box_news a.group {
	display: block;
}
.box_news a.group + a.group {
	margin-top: 10px;
}

#single table {
	background-color: #fff;
	line-height: 1.6;
	margin: 10px 0;
}
#single table caption {
	font-size: 16px;
	font-weight: bold;
	margin: 10px 0 5px;
	text-align: left;
}
#single table caption:before {
	content: '■';
	color: #14adbd;
}
#single table th {
	background-color: #14adbd;
	border: 1px solid #bcbcbc;
	color: #fff;
	font-weight: bold;
	padding: 5px;
	text-align: center;
}
#single table td {
	border: 1px solid #bcbcbc;
	padding: 5px;
}

#single .box_news ul li {
	line-height: 1.6;
	padding-left: 1.0em;
	text-align: left;
	text-indent: -1.0em;
}
#single .box_news ul li:before {
	content: '・';
}

#single .sub2section,
#kocho_single .sub2section,
#kocho_blog .sub2section {
	margin: 10px 0;
}
#single .sub2Title,
#single .sub2title,
#kocho_single .sub2Title,
#kocho_single .sub2title,
#kocho_blog .sub2Title,
#kocho_blog .sub2title {
	background-color: #fff;
	font-size: 16px;
	font-weight: bold;
	margin: 20px 0 10px;
	padding: 8px 5px !important;
}
#single .sub2Title + p,
#single .sub2title + p,
#kocho_single .sub2Title + p,
#kocho_single .sub2title + p,
#kocho_blog .sub2Title + p,
#kocho_blog .sub2title + p {
	margin-top: 10px;
}
#single .kakoiBox,
#kocho_single .kakoiBox,
#kocho_blog .kakoiBox {
	background-color: #f2f2f2;
	border: 3px solid #d7d7d7;
	line-height: 1.6;
	margin: 10px 0 15px;
	padding: 15px;
}
#kocho_single .kakoiBoxWhite,
#kocho_blog .kakoiBoxWhite {background-color: #fff;}
#kocho_single .kakoiBoxBeige,
#kocho_blog .kakoiBoxBeige {background-color: #fff8ef;}
#single .textRed,
#single .eishinRedText,
#kocho_single .textRed,
#kocho_single .eishinRedText,
#kocho_blog .textRed,
#kocho_blog .eishinRedText {
	color: #de1b2b;
}
#single .alignright,
#kocho_single .alignright,
#kocho_blog .alignright {
	width: auto;
}

.photo_2col {
	margin: 3% 0 -3%;
	overflow: hidden;
}
.photo_2col > div {
	float: left;
	line-height: 1.4;
	margin: 0 3% 2.0% 0;
	width: 48.5%;
}
.photo_2col > div:nth-child(even) {
	margin-right: 0;
}
.photo_2col > div img {
	margin-bottom: 8px;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.photo_2col {
		margin: 15px 0 -15px;
		overflow: hidden;
	}
	.photo_2col > div {
		float: none;
		margin: 0 0 15px 0;
		width: 100%;
	}
	.photo_2col > div img {
		margin-bottom: 5px;
	}
}



/* ---------------------------------------------------------

	14. アクセス

--------------------------------------------------------- */
#access_map_container {
	border: 10px solid #f2f2f2;
	margin-bottom: 50px;
	position: relative;
	padding-top: 64.5%;
}
#map_embed {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
}
#map_embed .title {
	font-size: 14px;
}
#map_embed .adress {
	line-height: 1.2;
	margin: 5px 0;
}
#map_embed .link a {
	color: #427fed;
	text-decoration: none;
}

#access .tit_square {
	margin-top: 40px;
}
.access_img {
	border: 10px solid #f2f2f2;
}
.access_bus {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 670px;
	overflow: hidden;
}
.access_bus li {
	margin: 0 2% 2% 0;
	position: relative;
	width: 31.33%;
}
.access_bus li:nth-child(3n) {
	margin-right: 0;
}
.access_bus p:first-child {
	background-color: #f2f2f2;
	padding: 10px 10px 3px;
}
.access_bus h4 {
	background-color: #000;
	border-right: 10px solid #f2f2f2;
	border-left: 10px solid #f2f2f2;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	padding: 5px 5px 5px 8px;
}
.access_bus p img {
	background-color: #f2f2f2;
	padding: 10px;
	vertical-align: bottom;
}
.access_bus .access_kamikita:after {
	content: '';
	background: url(/material/img/access/access_kamikita01.png) no-repeat;
	background-size: contain;
	display: block;
	height: 22%;
	position: absolute;
	top: 70px;
	left: 12px;
	width: 42%;
}
.access_route ul {
	background-color: #f2f2f2;
	overflow: hidden;
}
.access_route li {
	float: left;
	position: relative;
	width: 26%;
}
.access_route li + li {
	margin-left: 6%;
}
.access_route li:nth-child(2) {
	width: 36%;
}
.access_route li p {
	display: table;
	height: 100%;
	position: relative;
	width: 100%;
}
.access_route:first-child li:last-child p {
	height: auto;
}
.access_route li p + p {
	margin-top: 10px;
}
.access_route li a {
	background: url(/material/img/common/bg_btn_black01.png) center;
	color: #fff;
	display: table-cell;
	font-size: 14px;
	font-weight: bold;
	height: 100%;
	padding: 13px 3px;
	text-align: center;
	vertical-align: middle;
	width: 100%;
}
.access_route li a span {
	font-size: 12px;
	font-weight: normal;
}
.access_route li:nth-child(2) a {
	background: url(/material/img/common/bg_btn_green01.png) center;
}
.access_route li p a {
	padding: 5px;
}
.access_arrow_left:before {
	content: '';
	background-color: #000;
	display: block;
	height: 3px;
	position: absolute;
	top: 50%;
	right: -20%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 12px;
}
.access_arrow_left:after {
	content: '';
	border: 6px solid transparent;
	border-right: 7px solid #000;
	display: block;
	height: 0;
	position: absolute;
	top: 50%;
	right: -10%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 0;
}
.access_arrow_right:before {
	content: '';
	background-color: #000;
	display: block;
	height: 3px;
	position: absolute;
	top: 50%;
	left: -20%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 12px;
}
.access_arrow_right:after {
	content: '';
	border: 6px solid transparent;
	border-left: 7px solid #000;
	display: block;
	height: 0;
	position: absolute;
	top: 50%;
	left: -9%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 0;
}

#access br.pc {display: block;}
#access br.sp {display: none;}

.access_btn_modal {
	background-color: #f2f2f2;
	padding: 0 10px 10px;
}
.access_btn_modal a {
	background: url(/material/img/common/bg_btn_green01.png) center;
	color: #fff;
	display: block;
	font-size: 13px;
	font-weight: bold;
	line-height: 1.4;
	outline: none;
	padding: 5px;
	text-align: center;
}
.access_btn_modal a:hover {
	opacity: 0.8;
	text-decoration: none;
}

.access_modal {
	background-color: #fff;
	margin: 0 auto;
	max-width: 800px;
	position: relative;
	width: 94%;
}
.access_modal button.mfp-close {
	color: #fff;
	font-size: 40px;
	height: 48px;
	line-height: 48px;
	opacity: 1;
	width: 48px;
}
.access_modal h2 {
	background-color: #15a4b2;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	padding: 1.0em;
}
.access_modal ol {
	counter-reset: michi-jyun;
	height: calc(90vh - 48px);
	letter-spacing: -.5em;
	overflow-y: auto;
	padding: 30px 50px 15px;
}
.access_modal li {
	display: inline-block;
	letter-spacing: normal;
	line-height: 1.4;
	margin-bottom: 1.0em;
	position: relative;
	vertical-align: top;
	width: 47%;
}
.access_modal li:after {
	counter-increment: michi-jyun;
	content: counter(michi-jyun);
	background-color: #15a4b2;
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	line-height: 40px;
	position: absolute;
	top: 0;
	left: 0;
	text-align: center;
	width: 40px;
}
.access_modal li:nth-child(even) {
	margin-left: 6%;
}
.access_modal li img {
	margin-bottom: 5px;
}

#access_satellite.tit_square {
	margin-top: -100px;
	padding-top: 140px;
}

.access_modal_inner {
	padding: 1em 2em;
	height: calc(90vh - 48px);
	overflow-y: auto;
}
.access_modal_inner p {
	line-height: 1.6;
    text-align: justify;
	padding: 0.5em 0;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.access_bus li {
		margin: 0 4% 4% 0;
		width: 48%;
	}
	.access_bus li:nth-child(2n) {
		margin-right: 0;
	}
	#access br.pc {display: none;}
	#access br.sp {display: block;}

	.access_btn_modal a {
		font-size: 12px;
	}
	.access_btn_modal a:hover {
		opacity: 1;
	}

	.access_modal button.mfp-close {
		font-size: 35px;
		height: 39px;
		line-height: 39px;
		width: 39px;
	}
	.access_modal h2 {
		font-size: 15px;
		padding: 0.8em;
	}
	.access_modal ol {
		height: calc(90vh - 2.6em);
		margin-bottom: -1.0em;
		overflow-y: auto;
		padding: 15px;
	}
	.access_modal li {
		display: block;
		font-size: 13px;
		margin: 0 auto 1.0em;
		max-width: 330px;
		width: 100%;
	}
	.access_modal li:after {
		font-size: 15px;
		line-height: 30px;
		width: 30px;
	}
	.access_modal li:nth-child(even) {
		margin-left: 0;
	}

	#access_satellite.tit_square {
		margin-top: 20px;
		padding-top: 20px;
	}
}

/*===============================================
  ブレイクポイント：425px以下
===============================================*/
@media screen and (max-width:425px) {
	.access_ls {
		letter-spacing: -2px;
	}

	#access_satellite.tit_square {
		margin-top: 20px;
		padding-top: 20px;
	}
}



/* ---------------------------------------------------------

	15. 各種証明書・申請書発行

--------------------------------------------------------- */
#certificate .box_btn {
	padding: 20px;
}
.box_info {
	border: 1px solid #14adbd;
	display: table;
	margin-top: 30px;
	width: 100%;
}
.box_info_left {
	border-right: 1px solid #14adbd;
	color: #14adbd;
	display: table-cell;
	font-weight: normal;
	line-height: 1.6;
	padding: 18px;
	text-align: left;
	white-space: nowrap;
	width: 33%;
}
.box_info_right {
	background-color: #f2f2f2;
	display: table-cell;
	padding: 18px;
	width: 67%;
}

/*===============================================
  ブレイクポイント：425px以下
===============================================*/
@media screen and (max-width:425px) {
	#certificate .box_btn li {
		float: none;
		width: 100%;
	}
	#certificate .box_btn li + li {
		margin-top: 10px;
	}
	.box_info {
		display: block;
	}
	.box_info_left {
		border-right: none;
		border-bottom: 1px solid #14adbd;
		display: block;
		padding: 10px;
		width: 100%;
	}
	.box_info_right {
		display: block;
		padding: 10px;
		width: 100%;
	}
}



/* ---------------------------------------------------------

	17. 在校生・保護者・卒業生の方へ

--------------------------------------------------------- */

/* 在校生・保護者・卒業生の方へ
--------------------------------------------------------- */
.officials_list {
	background-color: #f2f2f2;
	margin-top: 30px;
	padding: 25px;
}
.officials_list li + li {
	margin-top: 20px;
}
.officials_list a {
	color: #14adbd;
	display: inline-block;
	font-weight: bold;
	line-height: 1.4;
	min-height: 24px;
	padding: 3px 0 0 30px;
	position: relative;
	text-decoration: underline;
}
.officials_list a::before {
	content: '';
	background: url(/material/img/common/ico_file01.png) center/contain no-repeat;
	display: inline-block;
	height: 24px;
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
}
.officials_list a:hover {
	text-decoration: none;
}

/* 後援会・PTA・同窓会, ご寄付をお考えの方へ
--------------------------------------------------------- */
#organization .contents_side_news,
#donation .contents_side_news {
	display: none;
}
#organization .contents_main h2.tit_big,
#donation .contents_main h2.tit_big {
	margin-bottom: -10px;
}
#organization h3,
#donation h3 {
	font-size: 16px;
	font-weight: bold;
	margin: 25px 0 10px;
}
#organization h3:before,
#donation h3:before {
	content: '■';
	color: #14adbd;
}
#organization .box_btn li:last-child a {
	background-image: url(/material/img/common/bg_btn_black01.png);
}

/*===============================================
  ブレイクポイント：425px以下
===============================================*/
@media screen and (max-width:425px) {
	#organization .box_btn li,
	#donation .box_btn li {
		float: none;
		width: 100%;
	}
	#organization .box_btn li + li,
	#donation .box_btn li + li {
		margin-top: 10px;
	}
}



/* ---------------------------------------------------------

	18. 教職員/在校生ログイン

--------------------------------------------------------- */
.box_login {
	margin-bottom: 15px;
	overflow: hidden;
}
.box_login li {
	background-color: #f2f2f2;
	float: left;
	padding: 20px;
	width: 49%;
}
.box_login li + li {
	margin-left: 2%;
}
.box_login li a {
	background: url(/material/img/common/bg_btn_green01.png) center;
	color: #fff;
	display: table;
	font-size: 16px;
	font-weight: bold;
	height: 100%;
	line-height: 1.3;
	padding: 22px 5px;
	text-align: center;
	width: 100%;
}
.box_login li a > span {
	display: table-cell;
	vertical-align: middle;
	width: 100%;
}
.box_login li a span span {
	font-size: 14px;
	font-weight: normal;
}

/*===============================================
  ブレイクポイント：425px以下
===============================================*/
@media screen and (max-width:425px) {
	.box_login li {
		float: none;
		padding: 10px;
		width: 100%;
	}
	.box_login li + li {
		margin-top: 2%;
		margin-left: 0;
	}
	.box_login li a {
		padding: 10px;
	}
}



/* ---------------------------------------------------------

	19. クラブブログ

--------------------------------------------------------- */
.club .cmn_mv {background-image: url(/material/img/club/club_mv01.jpg);}
.club .cmn_mv p {
	background-color: #497adc;
}
.club .contents_main h1 {
	color: #497adc;
}
.club .contents_main h1:before {
	content: '▶';
	font-size: 15px;
	margin-right: 7px;
	vertical-align: middle;
}
.club .club_list > li {
	background-color: #f2f2f2;
	border: 1px solid #497adc;
	padding: 15px;
}
.club .club_list > li + li {
	margin-top: 10px;
}
.club .club_list .club_date {
	color: #497adc;
	margin-bottom: 15px;
}
.club .club_list .tag_club {
	background-color: #497adc;
	color: #f2f2f2;
	font-weight: bold;
	margin-right: 10px;
	padding: 3px 7px;
}
.club .club_list .tag_club_special {background-color: #cd2770;}
.club .club_list .tag_club_motion {background-color: #28a25c;}
.club .club_list .tag_club_culture {background-color: #cc7e01;}
.club .club_list h2 {
	color: #497adc;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 10px;
}
.club .club_list h2 a {
	color: #497adc;
	text-decoration: none;
}
.club .club_list h2 a:hover {
	text-decoration: underline;
}
.club .club_list .single_content p {
	line-height: 1.6;
}
.club .club_list .single_content p + p,
.club .club_list .single_content img {
	margin-top: 10px;
}
.club .club_list .single_content a {
	color: #497adc;
	text-decoration: underline;
}
.club .club_list .single_content a:hover {
	text-decoration: none;
}
.club .box_2col > ul {
	margin-bottom: 0;
}
.club .wp-pagenavi {
	margin-top: 25px;
}
.club .box_1btn {
	margin-top: 60px;
}
.club .box_btn li a {
	background: url(/material/img/common/bg_btn_black01.png) center
}

.contents_side_club .side_club_tit {
	color: #497adc;
	font-size: 20px;
}
.contents_side_club .side_club_list > li {
	display: block;
	height: auto;
}
.contents_side_club .side_club_list > li > a {
	background: url(/material/img/common/bg_btn_blue01.png) center;
	border: none;
	display: block;
	padding: 11px 10px;
}
.contents_side_club li.side_club_special a.side_club_switch {background-image: url(/material/img/club/bg_club_shitei01.png);}
.contents_side_club li.side_club_motion a {background-image: url(/material/img/club/bg_club_athletic01.png);}
.contents_side_club li.side_club_culture a {background-image: url(/material/img/club/bg_club_academic01.png);}
.contents_side_club li a.side_club_switch:before {
	content: '';
	background-color: #fff;
	display: block;
	height: 2px;
	position: absolute;
	top: 18px;
	right: 10px;
	width: 16px;
}
.contents_side_club li a.side_club_switch:after {
	content: '';
	background-color: #fff;
	display: block;
	height: 16px;
	position: absolute;
	top: 11px;
	right: 17px;
	width: 2px;
}
.contents_side_club li a.side_club_switch.acc_open:after {
	display: none;
}
.contents_side_club .side_club_list li ul {
	background-color: #f2f2f2;
	/*display: none;*/
	padding: 15px 10px;
}
.contents_side_club .side_club_list li ul li {
	height: auto;
	position: relative;
}
.contents_side_club .side_club_list li ul li + li {
	margin-top: 10px;
}
.contents_side_club .side_club_list li ul li a {
	background: none;
	border: none;
	color: #497adc;
	display: inline-block;
	line-height: 1.2;
	padding-left: 15px;
	position: relative;
}
.contents_side_club .side_club_list li.side_club_special ul li a {color: #cd2770;}
.contents_side_club .side_club_list li.side_club_motion ul li a {color: #28a25c;}
.contents_side_club .side_club_list li.side_club_culture ul li a {color: #cc7e01;}
.contents_side_club .side_club_list li ul li a:before {
	content: '▶';
	font-size: 10px;
	position: absolute;
	top: 2px;
	left: 0;
}

.side_club_footballsite {
	margin-top: 25px;
}
.side_club_footballsite a {
	background-color: #e9f5ff;
	border: 2px solid #007bc8;
	color: #024e97;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	line-height: 1.3;
	padding: 0.3em;
}
.side_club_footballsite a::before {
	content: '';
	background: url(/material/img/club/bg_footballsite.png) center/contain no-repeat;
	display: inline-block;
	height: 2.5em;
	margin-right: 0.4em;
	width: 2.5em;
}

.side_club_baseball {
	margin-top: 10px;
}
.side_club_baseball a {
	background-color: #e4ecfc;
	border: 2px solid #0546D7;
	color: #0546D7;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	line-height: 1.3;
	min-height: 49px;
	padding: 0.3em;
}



/* ---------------------------------------------------------

	20. 校長ブログ

--------------------------------------------------------- */
.kocho .cmn_mv {background-image: url(/material/img/blog/blog_mv01.jpg);}
.kocho .cmn_mv p {
	background-color: #86726a;
}

.kocho_box {
	background: url(../img/blog/bg_gray01.png);
	padding: 20px;
	position: relative;
}
.kocho_box:after {
	content: '';
	border: 7px solid transparent;
	border-top-color: #86726a;
	border-left-color: #86726a;
	display: block;
	height: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
}
.kocho_box + .kocho_box {
	margin-top: 20px;
}
.kocho_date {
	margin-bottom: 15px;
}
.kocho_box .kocho_title {
	border-bottom: 2px solid #86726a;
	color: #86726a;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 15px;
	padding-bottom: 15px;
}
.kocho_box .kocho_title a {
	color: #86726a;
	text-decoration: none;
}
.kocho_box_inner p {
	line-height: 1.8;
}
.kocho_box_inner p + p,
.kocho_box_inner img {
	margin-top: 15px;
}
.kocho_box_inner a {
	color: #86726a;
	text-decoration: underline;
}
.kocho_box_inner a:hover {
	text-decoration: none;
}
.kocho .box_2col > ul {
	margin-bottom: 0;
}
.kocho .wp-pagenavi {
	margin-top: 25px;
}
.kocho .box_1btn {
	margin-top: 60px;
}
.kocho .box_btn li a {
	background: url(/material/img/blog/bg_btn_brown01.png) center
}

.kocho .wp-pagenavi span,
.kocho .wp-pagenavi a {
	background-color: #f2f2f2;
	border: none;
}
.kocho .wp-pagenavi a:hover,
.kocho .wp-pagenavi .current {
	background-color: #86726a;
	color: #fff;
}

.contents_side_blog_profile {
	background: url(../img/blog/bg_gray01.png) center;
	margin-bottom: 30px;
	padding: 5px 5px 12px;
}
.contents_side_blog_profile .img {
	margin-bottom: 12px;
}
.contents_side_blog_profile .img img {
	border: 1px solid #fff;
}
.contents_side_blog_profile .tit {
	margin-bottom: 8px;
	padding-left: 8px;
}
.contents_side_blog_profile .name {
	font-weight: bold;
	padding-left: 8px;
}
.contents_side_blog_all {
	margin-top: 30px;
}
.contents_side .contents_side_blog_all li a {
	background-image: url(/material/img/blog/bg_btn_brown01.png);
}

.kocho_nopost {
	margin-top: 30px;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.kocho_box {
		padding: 15px;
	}
	.kocho_box .kocho_title {
		border-bottom-width: 1px;
		font-size: 18px;
	}
	.kocho_box_inner p {
		line-height: 1.6;
	}
	.kocho_box_inner p + p,
	.kocho_box_inner img {
		margin-top: 10px;
	}
	.kocho .box_1btn {
		margin-top: 60px;
	}

	.contents_side_blog_profile {
		text-align: center;
	}
	.contents_side_blog_profile .img {
		margin-bottom: 8px;
	}
	.contents_side_blog_profile .tit {
		margin-bottom: 5px;
		padding-left: 0;
	}
	.contents_side_blog_profile .name {
		padding-left: 0;
	}

	.kocho_nopost {
		margin-top: 15px;
	}
}



/* ---------------------------------------------------------

	21. お問い合わせ・資料請求

--------------------------------------------------------- */
#contact .box_1btn {
	margin: 40px auto 0;
	max-width: 650px;
}

.contact_maintenance_tel {
	background-color: #f2f2f2;
	color: #2d99a4;
	font-size: 30px;
	font-weight: bold;
	margin-top: 15px;
	padding: 20px;
	text-align: left;
}
.contact_maintenance_tel:before {
	content: '';
	background: url(/material/img/common/header_tel02.png) no-repeat;
	background-size: contain;
	display: inline-block;
	height: 24px;
	margin-right: 10px;
	width: 24px;
}

.contact_btn_wrap {
	padding-top: 40px;
	text-align: center;
}
#contact_btn_confirm {
	display: inline-block;
	text-align: center;
}
.contact_btn_wrap .box_btn li a {
	background: #ccc none center;
	pointer-events: none;
}
.contact_btn_wrap .contact_btn_confirm:checked ~ .box_btn li a {
	background: url(/material/img/common/bg_btn_green01.png) center;
	pointer-events: auto;
}



/* ---------------------------------------------------------

	22. 入試期間用

--------------------------------------------------------- */

/* 合格発表バナー
--------------------------------------------------------- */
.top_exam_result {
	float: left;
	margin-bottom: 35px;
	overflow: hidden;
	text-align: center;
	width: 645px;
}
.top_exam_result a {
	background: url(/material/img/common/ico_sakura01.png) 2% center no-repeat, url(/material/img/common/ico_sakura02.png) 98% center no-repeat, url(/material/img/common/bg_sakura01.png);
	border-radius: 10px;
	color: #fff;
	display: block;
	font-size: 20px;
	font-weight: bold;
	padding: 4px 9px 9px 9px;
}
.top_exam_result a .result_word1 {
	line-height: 1.5;
	padding-right: 0.2em;
}
.top_exam_result a .result_word3 {
	background-color: #fff;
	border-radius: 6px;
	color: #f35489;
	display: inline-block;
	font-size: 14px;
	margin: 3px auto 0;
	padding: 5px 10px;
}
.top_exam_result a .result_word3:after {
	content: url(/material/img/common/ico_arrow_pink01.png);
	margin-left: 5px;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.top_exam_result {
		float: none;
		margin-right: 0;
		width: 100%;
	}
	.top_exam_result a {
		background: url(/material/img/common/ico_sakura01.png) 3% center no-repeat, url(/material/img/common/ico_sakura02.png) 97% center no-repeat, url(/material/img/common/bg_sakura01.png);
		background-size: 35px auto, 35px auto, 100px;
		color: #fff;
		font-size: 19px;
		padding: 6px 50px 9px;
	}
	.top_exam_result a .result_word2 {
		display: inline-block;
		margin-bottom: 4px;
	}
}

/* インターネット出願バナー
--------------------------------------------------------- */
.top_news_flow_bnr,
:not(.top_news_flow_bnr) + .top_news_exam_bnr {
	margin-top: -50px;
}
.top_exam_result + .top_news_bnr_wrap .top_news_flow_bnr {
	margin-top: 0;
}

.top_news_exam_bnr ~ .top_news_blog {
	position: static;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.top_news_flow_bnr,
	:not(.top_news_flow_bnr) + .top_news_exam_bnr {
		margin: 0 auto 10px;
	}
}

/* 試験当日のご案内バナー
--------------------------------------------------------- */
.top_news_announce_bnr {
	height: 48px;
	width: 200px;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.top_news_announce_bnr {
		margin: 0 auto 10px;
	}
}



/* ---------------------------------------------------------

	23. 印刷用

--------------------------------------------------------- */
@media print {
	header {
		position: static;
	}
}



/* ---------------------------------------------------------

	24. 特設ページバナー

--------------------------------------------------------- */
.top_bnr_landing {
	display: none;
}

/*===============================================
  LP2018：トップページSPバナー：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.top_bnr_landing {
		background-color: rgba(1,1,1,0.7);
		display: flex;
		align-items: center;
		justify-content: center;
		height: 100vh;
		padding: 20px;
		position: fixed;
		top: 0;
		left: 0;
		width: 100vw;
		z-index: 100000;
	}
	.top_bnr_landing.is-close {
		display: none;
	}
	.top_bnr_landing p {
		max-width: 300px;
		position: relative;
		width: 80%;
	}
	.top_bnr_landing p:before {
		content: '';
		background: #3fabb6 url(/material/img/top/mv_btn_close01.png) center/18px no-repeat;
		display: block;
		height: 40px;
		position: absolute;
		top: -40px;
		right: -40px;
		width: 40px;
	}
}



/* ---------------------------------------------------------

	25. ENGLISH

--------------------------------------------------------- */
.table_ourschool {
	margin-bottom: 50px;
}
.table_ourschool th {
	background-color: #f2f2f2;
	color: #111;
	font-weight: normal;
	text-align: left;
	width: 16em;
}

.table_ourhistory {
	border-collapse: separate;
	border-spacing: 1px;
	margin-bottom: 50px;
}
.table_ourhistory th {
	border: none;
	font-weight: normal;
}
.table_ourhistory td {
	background-color: #f2f2f2;
	border: none;
}

.english_club {
	margin-bottom: 50px;
}
.english_club h3 {
	background-color: #14adbd;
	color: #fff;
	font-size: 14px;
	font-weight: normal;
	margin-bottom: 15px;
	padding: 8px;
}
.english_club .box_2col > ul > li {
	width: 50%;
}
.english_club > ul ul ul li {
	padding-left: 1.3em;
	text-indent: -1.3em;
}

#english .list_event {
	margin-top: 15px;
}

/*===============================================
  ENGLISH：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#english .cmn_mv p img:last-child {
		margin-top: 0;
	}

	.table_ourschool {
		margin-bottom: 40px;
	}
	.table_ourschool th {
		width: 35%;
	}

	.table_ourhistory {
		margin-bottom: 40px;
	}

	.english_club {
		margin-bottom: 40px;
	}
	.english_club .box_2col > ul > li {
		float: left;
	}
	.english_club .box_2col > ul > li + li {
		margin-top: 0;
	}
	.english_club h3 {
		margin-bottom: 10px;
	}
}



/* ---------------------------------------------------------

	26. 東野MOVIE

--------------------------------------------------------- */
.movie_menu {
	background-color: #f2f2f2;
	display: flex;
	justify-content: space-between;
	margin-bottom: 50px;
	padding: 10px;
}
.movie_menu li {
	height: 60px;
	width: calc((100% - 40px) / 5);
}
.movie_menu a {
	background: url(/material/img/common/bg_btn_green01.png) center;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	height: 100%;
	position: relative;
	text-align: center;
	text-decoration: none;
}
.movie_menu a.active {
	background-image: url(/material/img/common/bg_btn_deepgreen01.png);
}
.movie_menu a.active:after {
	content: '';
	border: 10px solid transparent;
	border-top: 10px solid #06717c;
	display: block;
	height: 0;
	position: absolute;
	bottom: -20px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
}
.movie_menu .movie_menu_nolink a {
	background: url(/material/img/common/bg_btn_gray01.png) center;
	pointer-events: none;
}

.movie_list + .movie_list {
	margin-top: 3.87%;
}
.movie_list a {
	display: block;
}
.movie_list_img {
	background-color: #fff;
	margin-bottom: 10px;
	position: relative;
}
.movie_list_img::after {
	content: '';
	background: url(../img/top/mv_btn_play.png) center/contain no-repeat;
	display: block;
	height: 68px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 68px;
}
.movie_list_category {
	background-color: rgba(13,166,182,0.8);
	color: #fff;
	font-weight: bold;
	padding: 0.6em 1em;
	position: absolute;
	top: 0;
	left: 0;
}
.movie_list_movie_education {background-color: rgba(180,132,63,0.8);}
.movie_list_movie_club {background-color: rgba(36,148,140,0.8);}
.movie_list_movie_event {background-color: rgba(33,110,163,0.8);}
.movie_list_movie_others {background-color: rgba(101,101,101,0.8);}

.movie_list_title {
	font-size: 16px;
	line-height: 1.3;
}

.movie_list_hide {
	display: none;
}

.movie_btn_more {
	margin-top: 50px;
}
.movie_btn_more a {
	background: url(/material/img/common/bg_btn_green01.png) center;
	color: #fff;
	display: block;
	font-weight: bold;
	line-height: 60px;
	margin: 0 auto;
	max-width: 310px;
	text-align: center;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.movie_menu {
		margin-bottom: 25px;
	}
	.movie_menu li {
		height: 40px;
		width: calc((100% - 20px) /5)
	}
	.movie_list li + li {
		margin-top: 25px;
	}

	.movie_menu a.active:after {
		border-width: 8px;
		border-top-width: 8px;
		bottom: -16px;
	}

	.movie_list_title {
		font-size: 15px;
	}

	.movie_btn_more {
		margin-top: 30px;
	}
	.movie_btn_more a {
		line-height: 45px;
	}
}



/* ---------------------------------------------------------

	27. 教員座談会

--------------------------------------------------------- */
.teacher_heading {
	background-color: #00b2bc;
	margin-bottom: 3em;
	padding: 2.5em 0;
}
.teacher_heading_en {
	font-weight: bold;
	letter-spacing: 0.02em;
	line-height: 1.4;
	text-align: center;
}
.teacher_heading_title {
	color: #fff;
	font-size: 1.8em;
	font-weight: normal;
	line-height: 1.6;
	margin-top: 1em;
	text-align: center;
}
.teacher_heading_lead {
	font-weight: bold;
	line-height: 1.7;
	margin: 1.5em auto 0;
	max-width: 590px;
	padding: 0 2em;
}
.teacher_heading_list {
	display: flex;
	margin-top: 3em;
}
.teacher_heading_list p {
	font-size: 0.8em;
	line-height: 1.6;
	margin-top: 0.8em;
	padding: 0 1.5em;
}
.teacher_heading_list p strong {font-size: 1.3em;}
.teacher_heading_list p span {display: inline-block;}

.teacher_section + .teacher_section {
	margin-top: 4em;
}

.teacher_title {
	font-size: 1.6em;
	line-height: 1.5;
	padding-top: 1.4em;
	position: relative;
	text-align: center;
}
.teacher_title::before {
	content: '';
	background-color: #00b2bc;
	display: block;
	height: 0.6em;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 0.6em;
}

.teacher_question {
	color: #00b2bc;
	font-weight: bold;
	line-height: 1.6;
	margin-top: 2em;
}
.teacher_list + .teacher_question {
	margin-top: 3em;
}
.teacher_list {
	display: flex;
	flex-wrap: wrap;
	line-height: 1.6;
	margin-top: 2em;
}
.teacher_list dt {
	color: #00b2bc;
	font-weight: bold;
	width: 5em;
}
.teacher_list dd {
	width: calc(100% - 5em);
}
.teacher_list dt:not(:first-of-type),
.teacher_list dd:not(:first-of-type) {
	margin-top: 1em;
}

.teacher_image {
	margin: 4em 0 3em;
}

/*===============================================
  ブレイクポイント：960px未満
===============================================*/
@media screen and (max-width:959px) {
	.teacher_heading_title .sp_b,
	.teacher_title .sp_b {display: block;}
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.teacher_heading {
		padding: 2.5em 0 1em;
	}
	.teacher_heading_title {
		font-size: 1.5em;
		margin-top: 0.8em;
	}
	.teacher_heading_lead {
		padding: 0 1.5em;
	}
	.teacher_heading_list {
		display: block;
		margin-top: 2em;
	}
	.teacher_heading_list li + li {
		margin-top: 1em;
	}
	.teacher_heading_list p {
		margin-top: 0.5em;
	}

	.teacher_section + .teacher_section {
		margin-top: 3em;
	}

	.teacher_title {
		font-size: 1.2em;
	}

	.teacher_question {
		margin-top: 1.5em;
	}
	.teacher_list + .teacher_question {
		margin-top: 2em;
	}
	.teacher_list {
		margin-top: 1.5em;
	}

	.teacher_image {
		margin: 3em 0;
	}
}



/* ---------------------------------------------------------

	28. フォトコンテスト

--------------------------------------------------------- */
.contents_main .contest_lead {
	font-size: 18px;
	line-height: 2.5;
	margin-block: 2em;
	text-align: center;
}
.contest_notion {
	display: grid;
	place-content: center;
}

/*===============================================
  ブレイクポイント：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.contents_main .contest_lead {
		font-size: 16px;
		line-height: 2;
		text-align: left;
	}

	.contest_box_2btn ul {
		display: grid;
		gap: 10px;
	}
	.contest_box_2btn li {
		float: none;
		width: 100%;
	}
}
