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

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

	聖学院中学校・高等学校【レスポンシブ】
	Date: 2017.04.06

	01. 基礎設定
	02. 画面構成
	03. ヘッダー
	04. フッター
	05. 共通パーツ
	06. トップページ
	07. 学校紹介
	08. 教育内容
	09. スクールライフ
	10. 進路情報
	11. 入試情報
	12. 帰国生の方へ
	13. 在校生・保護者の方へ
	14. 卒業生の方へ
	15. アクセス
	16. お問い合わせ
	17. 資料請求
	18. English
	19. よくある質問
	20. サイトポリシー
	21. サイトマップ
	22. 404エラー
	23. お知らせ（WP系）
	24. 校長ブログ

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

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

	01. 基礎設定

--------------------------------------------------------- */
html {
	color: #111;
	font-size: 13px;
	font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "Meiryo UI", "メイリオ", Meiryo, sans-serif;
  font-weight: 500;
	height: 100%;
  line-height: 1;
	position: relative;
	-webkit-font-smoothing: antialiased;
}
@media all and (-ms-high-contrast:none) {
	html {
		font-family: arial, "Meiryo UI", "メイリオ", Meiryo, sans-serif;
	}
}
body {
	background-color: #fff;
	height: 100%;
}
img {
	height: auto;
	max-width: 100%;
}

a {
	color: #1d1288;
	text-decoration: underline;
}
a:hover {
	color: #1d1288;
	text-decoration: none;
}
.layout_pc a:hover img {
  opacity: 0.8;
	text-decoration: none;
}

.pc {display: block;}
.sp {display: none;}

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



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

	02. 画面構成

--------------------------------------------------------- */
.wrapper {
	background: url(../img/common/contents_bg01.png) left 175px repeat-x;
	min-height: 100%;
	min-width: 1040px;
	overflow: hidden;
	padding-bottom: 300px;
	position: relative;
}

.container {
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
	width: 1040px;
}

/*===============================================
  画面構成：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.wrapper {
		background: none;
		min-width: inherit;
		padding-top: 55px;
		padding-bottom: 0;
		width: 100%;
	}

	.container {
		padding: 0 10px;
		width: 100%;
	}
}



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

	03. ヘッダー

--------------------------------------------------------- */
header {
	height: 175px;
	position: relative;
	text-align: center;
	width: 100%;
	z-index: 1000;
}
header:before {
	content: '';
	background-color: #1d1288;
	height: 50px;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
}
header .container {
	height: 175px;
	padding-top: 25px;
}
header .header_logo {
	height: 44px;
	margin: 0 auto;
	text-indent: -9999px;
	width: 282px;
}
header .header_logo a {
	background: url(../img/common/header_logo01.png) center top no-repeat;
	background-size: contain;
	display: block;
	height: 100%;
	width: 100%;
}
.layout_pc header .header_logo a:hover {opacity: 0.8;}

.header_gnav {
	display: inline-block;
	height: 50px;
	letter-spacing: -.5em;
	margin-left: -498px;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: auto;
}
.header_gnav:before {
	content: '';
	background-color: #8281c1;
	height: 16px;
	position: absolute;
	top: 17px;
	right: -1px;
	width: 1px;
}
.header_gnav_drop {
	display: inline-block;
	height: 50px;
	letter-spacing: normal;
	position: relative;
	width: 165px;
}
.header_gnav_drop:before {
	content: '';
	background-color: #8281c1;
	height: 16px;
	position: absolute;
	top: 17px;
	left: -1px;
	width: 1px;
}
.header_gnav_drop + .header_gnav_drop {
	margin-left: 1px;
}
.header_gnav_hover {
	color: #fff;
	cursor: default;
	display: block;
	font-size: 14px;
	font-weight: bold;
	height: 100%;
	line-height: 50px;
	text-decoration: none;
	width: 100%;
}
.layout_pc .header_gnav_hover:hover {background-color: #f8b500;}

.header_gnav_drop_list {
	border: 1px solid #eef3f9;
	box-shadow: 2px 3px 0 rgba(1,1,1,0.1);
	display: none;
	position: absolute;
	top: 50px;
	left: -1px;
	width: 167px;
}
.header_gnav_drop_list li {
	height: 40px;
	width: 100%;
}
.header_gnav_drop_list li + li {
	border-top: 1px solid #eef3f9;
}
.header_gnav_drop_list li a {
	background-color: #fff;
	color: #1d1288;
	display: block;
	font-weight: bold;
	height: 100%;
	line-height: 40px;
	padding-left: 5px;
	text-align: left;
	text-decoration: none;
	width: 100%;
}
.header_gnav_drop_list li a:before {
	content: '';
	border: 3px solid transparent;
	border-left: 3px solid #f8b500;
	display: inline-block;
	height: 0;
	margin-right: 2px;
	vertical-align: middle;
	width: 0;
}
.layout_pc .header_gnav_drop_list li a:hover {
	background-color: #f8b500;
	color: #fff;
}

.cat_intro .header_gnav_drop:nth-child(1) .header_gnav_hover,
.cat_education .header_gnav_drop:nth-child(2) .header_gnav_hover,
.cat_life .header_gnav_drop:nth-child(3) .header_gnav_hover,
.cat_course .header_gnav_drop:nth-child(4) .header_gnav_hover,
.cat_exam .header_gnav_drop:nth-child(5) .header_gnav_hover,
.cat_returnee .header_gnav_drop:nth-child(6) .header_gnav_hover {
	background-color: #f8b500;
}

.header_snav {
	font-size: 13px;
	letter-spacing: -.5em;
	position: absolute;
	top: 95px;
	left: 0;
	width: 100%;
}
.header_snav li {
	display: inline-block;
	letter-spacing: normal;
}
.header_snav li + li {
	margin-left: 2.0em;
}
.header_snav li a {
	font-weight: bold;
	text-decoration: none;
}
.header_snav li a:before {
	content: '';
	border: 3px solid transparent;
	border-left: 3px solid #f8b500;
	display: inline-block;
	height: 0;
	margin-right: 5px;
	vertical-align: middle;
	width: 0;
}
.layout_pc .header_snav li a:hover {opacity: 0.8;}

#header_btn_request {
	height: 30px;
	position: absolute;
	top: 35px;
	right: 20px;
	width: 135px;
}
#header_btn_request a {
	background-color: #f8b500;
	border: 3px solid #fde298;
	color: #fff;
	display: block;
	font-size: 14px;
	font-weight: bold;
	height: 100%;
	line-height: 26px;
	text-decoration: none;
	width: 100%;
}
.layout_pc #header_btn_request a:hover {opacity: 0.8;}

#header_sp_access {display: none;}
#header_nav_switch {display: none;}

/*===============================================
  ヘッダー：768px未満
===============================================*/
@media screen and (max-width:767px) {
	header {
		background-color: #fff;
		height: 55px;
		position: fixed;
		top: 0;
		left: 0;
	}
	header:before {display: none;}
	header .container {
		height: 55px;
		padding-top: 14px;
	}
	header .header_logo {
		height: 27px;
		margin: 0;
		width: 170px;
	}

	nav {
		box-shadow: 0 4px 8px rgba(1,1,1,0.2);
		display: none;
		height: calc(100% - 55px);
		overflow-y: auto;
		position: fixed;
		top: 55px;
		left: 0;
		width: 100%;
	}
	.header_gnav {
		display: block;
		height: auto;
		letter-spacing: normal;
		margin-left: 0;
		position: static;
		text-align: left;
		width: 100%;
	}
	.header_gnav:before {display: none;}
	.header_gnav_drop {
		display: block;
		height: auto;
		letter-spacing: normal;
		position: relative;
		width: 100%;
	}
	.header_gnav_drop:before {display: none;}
	.header_gnav_drop + .header_gnav_drop {
		border-top: 1px solid #fff;
		margin-left: 0;
	}
	.header_gnav_hover {
		background-color: #1d1288;
		font-size: 14px;
		line-height: 45px;
		padding-left: 15px;
		position: relative;
	}
	.header_gnav_hover:before,
	.header_gnav_hover:after {
		content: '';
		background-color: #fff;
		height: 1px;
		position: absolute;
		top: 22px;
		right: 18px;
		width: 15px;
	}
	.header_gnav_hover:after {
		height: 15px;
		top: 15px;
		right: 25px;
		width: 1px;
	}
	.header_gnav_hover.header_nav_open:after {display: none;}

	.header_gnav_drop_list {
		background-color: #fff;
		border: none;
		border-bottom: 1px solid #ddd;
		box-shadow: none;
		display: none;
		margin-bottom: -1px;
		overflow: hidden;
		position: relative;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 10;
	}
	.header_gnav_drop_list li {
		border-bottom: 1px solid #ddd;
		float: left;
		width: 50%;
	}
	.header_gnav_drop_list li + li {border-top: none;}
	.header_gnav_drop_list li:nth-child(2n+1) {
		border-right: 1px solid #ddd;
	}
	.header_gnav_drop_list li:last-child,
	.header_gnav_drop:first-child .header_gnav_drop_list li:nth-last-child(2),
	.header_gnav_drop:nth-child(5) .header_gnav_drop_list li:nth-last-child(2) {
		border-bottom: none;
	}
	.header_gnav_drop_list li a {
		font-size: 12px;
	}

	.header_snav {
		background-color: #eef3f9;
		letter-spacing: normal;
		overflow: hidden;
		position: static;
		text-align: center;
	}
	.header_snav li {
		border-bottom: 1px solid #1d1288;
		display: block;
		float: left;
		height: 45px;
		width: 50%;
	}
	.header_snav li:nth-child(2n+1) {border-right: 1px solid #1d1288;}
	.header_snav li:last-child {border-bottom: none;}
	.header_snav li + li {margin-left: 0;}
	.header_snav li a {
		display: block;
		line-height: 45px;
		height: 100%;
		width: 100%;
	}
	.header_snav li a:before {display: none;}

	#header_btn_request {
		background-color: #1d1288;
		height: auto;
		padding: 20px 0;
		position: static;
		width: 100%;
	}
	#header_btn_request a {
		display: block;
		font-size: 17px;
		height: 35px;
		line-height: 29px;
		margin: 0 auto;
		width: 165px;
	}

	#header_sp_access {
		display: block;
		position: absolute;
		top: 12px;
		right: 50px;
	}
	#header_sp_access a {
		background: #f8b500 url("../img/common/header_ico_access01.png") 5px center no-repeat;
		background-size: auto 17px;
		border-radius: 5px;
		color: #fff;
		display: block;
		font-size: 12px;
		font-weight: bold;
		height: 100%;
		padding: 9px 5px 9px 20px;
		text-decoration: none;
		width: 100%;
	}

	#header_nav_switch {
		background-color: #1d1288;
		display: block;
		height: 30px;
		position: absolute;
		top: 12px;
		right: 10px;
		text-indent: -9999px;
		width: 30px;
	}
	#header_nav_switch a {
		display: block;
		height: 100%;
		width: 100%;
	}
	#header_nav_switch:after,
	#header_nav_switch a:before,
	#header_nav_switch a:after {
		content: '';
		background-color: #fff;
		height: 2px;
		position: absolute;
		top: 14px;
		left: 9px;
		width: 12px;
	}
	#header_nav_switch a:before {top: 8px;}
	#header_nav_switch a:after {top: 20px;}
	#header_nav_switch.header_nav_open:after {display: none;}
	#header_nav_switch.header_nav_open a:before {
		top: 14px;
		-webkit-transform: rotate(45deg);
						transform: rotate(45deg);
	}
	#header_nav_switch.header_nav_open a:after {
		top: 14px;
		-webkit-transform: rotate(-45deg);
						transform: rotate(-45deg);
	}
}



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

	04. フッター

--------------------------------------------------------- */
footer {
	background-color: #fff;
	border-top: 1px solid #eef3f9;
	height: 300px;
	font-size: 12px;
	position: absolute;
	bottom: 0;
	left: 0;
	text-align: center;
	width: 100%;
}
.wrapper.header_spmenu_open footer {
	position: static;
}
footer .container {
	height: 230px;
	padding-top: 50px;
}
footer h2 {
	color: #1d1288;
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 25px;
}
footer p {
	line-height: 2.0;
}
footer p span {
	display: inline-block;
}
footer p span + span {
	margin-left: 1.5em;
}
footer p a {
	color: #111;
	text-decoration: none;
}
.layout_pc footer p a:hover {
	color: #111;
	text-decoration: underline;
}

.footer_menu {
	letter-spacing: -.5em;
	margin-top: 50px;
}
.footer_menu li {
	border-right: 1px solid #ccc;
	display: inline-block;
	letter-spacing: normal;
}
.footer_menu li:first-child {
	border-left: 1px solid #ccc;
}
.footer_menu li a {
	color: #111;
	display: block;
	padding: 0 15px;
	text-decoration: none;
}
.layout_pc .footer_menu li a:hover {
	color: #111;
	text-decoration: underline;
}

.footer_copyright {
	background-color: #1d1288;
	color: #ccc;
	font-family: Verdana, sans-serif;
	height: 70px;
	line-height: 70px;
}

/*===============================================
  フッター：768px未満
===============================================*/
@media screen and (max-width:767px) {
	footer {
		height: auto;
		position: static;
	}
	footer .container {
		height: auto;
		padding: 30px 0;
	}
	footer h2 {
		margin-bottom: 20px;
	}
	footer p span {
		display: block;
	}
	footer p span + span {
		margin-left: 0;
	}

	.footer_menu {
		margin: 25px auto -1.0em;
		width: 250px;
	}
	.footer_menu li {
		margin-bottom: 1.0em;
	}
	.footer_menu li:nth-child(3),
	.footer_menu li:nth-child(4) {
		border-left: 1px solid #ccc;
	}

	.footer_copyright {
		height: 100px;
		line-height: 2.0;
		padding-top: 14px;
	}
}



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

	05. 共通パーツ

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

/* ページトップボタン
--------------------------------------------------------- */
#btn_pagetop {
	display: none;
	height: 50px;
	position: fixed;
	bottom: 25px;
	right: 70px;
	width: 50px;
	z-index: 1000;
}
#btn_pagetop.stop {
	position: absolute;
	bottom: 105px;
}
#btn_pagetop a {
	background: #1d1288 url(../img/common/btn_pagetop01.png) center no-repeat;
	background-size: auto 11px;
	display: block;
	height: 100%;
	outline: none;
	text-indent: -9999px;
	width: 100%;
}
.layout_pc #btn_pagetop a:hover {opacity: 0.8;}

/*===============================================
  ページトップボタン：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#btn_pagetop {
		background-size: 40px;
		height: 40px;
		margin-right: 0;
		bottom: 15px;
		right: 8px;
		width: 40px;
	}
	#btn_pagetop.stop {
		bottom: 15px;
	}
	#btn_pagetop a {
		background-size: auto 9px;
	}
}

/* パンくずリスト
---------------------------------------------- */
.cmn_breadcrumb {
	letter-spacing: -.5em;
	padding: 15px 0;
}
.cmn_breadcrumb li {
	display: inline-block;
	letter-spacing: normal;
}
.cmn_breadcrumb li + li:before {
	content: '>';
	margin: 0 15px 0 10px;
}
.cmn_breadcrumb a {
	text-decoration: none;
}
.cmn_breadcrumb a:hover {
	text-decoration: underline;
}

/*===============================================
  パンくずリスト：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.cmn_breadcrumb {
		display: none;
	}
}

/* 下層メインビジュアル
---------------------------------------------- */
.cmn_mv {
	margin-bottom: 30px;
}
.cmn_mv_img {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border: 5px solid #fff;
	box-shadow: 2px 3px 0 rgba(1,1,1,0.1);
	height: 145px;
	width: 100%;
}
.cat_intro .cmn_mv_img {background-image: url(../img/intro/mv_img01.jpg);}
.cat_education .cmn_mv_img {background-image: url(../img/education/mv_img01.jpg);}
.cat_life .cmn_mv_img {background-image: url(../img/life/mv_img01.jpg);}
.cat_course .cmn_mv_img {background-image: url(../img/course/mv_img01.jpg);}
.cat_exam .cmn_mv_img {background-image: url(../img/exam/mv_img01.jpg);}
.cat_returnee .cmn_mv_img {background-image: url(../img/returnee/mv_img01.jpg);}
.cat_others .cmn_mv_img {background-image: url(../img/others/mv_img01.jpg);}
#english .cmn_mv_img {background-image: url(../img/english/mv_img01.jpg);}
.cat_news .cmn_mv_img {background-image: url(../img/news/news_mv_img01.jpg);}
.cat_blogs .cmn_mv_img {background-image: url(../img/blogs/mv_img01.jpg);}

.cmn_mv_img h2 {
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto 70px;
	height: 100%;
	text-indent: -9999px;
	width: 100%;
}
.cat_intro .cmn_mv_img h2 {background-image: url(../img/intro/mv_tit01.png);}
.cat_education .cmn_mv_img h2 {background-image: url(../img/education/mv_tit01.png);}
.cat_life .cmn_mv_img h2 {background-image: url(../img/life/mv_tit01.png);}
.cat_course .cmn_mv_img h2 {background-image: url(../img/course/mv_tit01.png);}
.cat_exam .cmn_mv_img h2 {background-image: url(../img/exam/mv_tit01.png);}
.cat_returnee .cmn_mv_img h2 {background-image: url(../img/returnee/mv_tit01.png);}
#current .cmn_mv_img h2 {background-image: url(../img/others/current_mv_tit01.png);}
#graduates .cmn_mv_img h2 {background-image: url(../img/others/graduates_mv_tit01.png);}
#access .cmn_mv_img h2 {background-image: url(../img/others/access_mv_tit01.png);}
#faq .cmn_mv_img h2 {background-image: url(../img/others/faq_mv_tit01.png);}
#inquiry .cmn_mv_img h2 {background-image: url(../img/others/inquiry_mv_tit01.png);}
#request .cmn_mv_img h2 {background-image: url(../img/others/request_mv_tit01.png);}
#sitemap .cmn_mv_img h2 {background-image: url(../img/others/sitemap_mv_tit01.png);}
#sitepolicy .cmn_mv_img h2 {background-image: url(../img/others/sitepolicy_mv_tit01.png);}
#english .cmn_mv_img h2 {background-image: url(../img/english/mv_tit01.png);}
#error404 .cmn_mv_img h2 {background-image: url(../img/others/404_mv_tit01.png);}
.cat_news .cmn_mv_img h2 {background-image: url(../img/news/news_mv_tit01.png);}
.cat_blogs .cmn_mv_img h2 {background-image: url(../img/blogs/mv_tit01.png);}

/*===============================================
  下層メインビジュアル：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.cmn_mv {
		margin-bottom: 0;
	}
	.cmn_mv_img {
		border: none;
		box-shadow: none;
		height: 90px;
		margin-left: -20px;
		width: calc(100% + 40px);
	}
	.cat_intro .cmn_mv_img {background-position: left center;}
	.cat_life .cmn_mv_img {background-position: 20% center;}
	.cat_others .cmn_mv_img {background-position: 75% center;}
	#english .cmn_mv_img {background-position: right center;}

	.cmn_mv_img h2 {
		background-position: 92% center;
		background-size: auto 50px;
	}
	#english .cmn_mv_img h2 {
		background-image: url(../img/english/mv_tit01_sp.png);
		background-size: auto 68px;
	}
}

/* サブメニュー
--------------------------------------------------------- */
.cmn_sidemenu {
	background-color: #fff;
	border: 3px solid #eef3f9;
	box-shadow: 2px 3px 0 rgba(1,1,1,0.1);
	float: right;
	margin: -3px 0 50px;
	width: 28.8%;
}
.cmn_sidemenu h3 {
	background-color: #1d1288;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	line-height: 60px;
	text-align: center;
}
.cmn_sidemenu h4 {
	background-color: #eee;
	line-height: 40px;
	padding-left: 15px;
}
.cmn_sidemenu h4 {
	border-bottom: 1px solid #e2e2e2;
	position: relative;
}
.cmn_sidemenu h4.archive_open {
	border-bottom-color: transparent;
}
.cmn_sidemenu h4:before,
.cmn_sidemenu h4:after {
	content: '';
	background-color: #777;
	height: 1px;
	position: absolute;
	top: 20px;
	right: 18px;
	width: 15px;
}
.cmn_sidemenu h4:after {
	height: 15px;
	top: 13px;
	right: 25px;
	width: 1px;
}
.cmn_sidemenu h4.archive_open:after {display: none;}
.cmn_sidemenu ul {
	width: 100%;
}
.cmn_sidemenu li {
	display: table;
	height: 40px;
	width: 100%;
}
.cmn_sidemenu li + li {
	border-top: 1px solid #eef3f9;
}
.cmn_sidemenu .cmn_sidemenu_lower {
	border-top-style: dotted;
}
.cmn_sidemenu li a {
	display: table-cell;
	height: 100%;
	font-weight: bold;
	line-height: 1.3;
	padding-left: 30px;
	position: relative;
	text-decoration: none;
	vertical-align: middle;
	width: 100%;
}
.cmn_sidemenu .cmn_sidemenu_lower a {
	padding-left: 46px;
}
.cmn_sidemenu li a:before {
	content: '';
	border: 3px solid transparent;
	border-left: 3px solid #f8b500;
	display: inline-block;
	height: 0;
	position: absolute;
	top: 16px;
	left: 17px;
	vertical-align: middle;
	width: 0;
}
.cmn_sidemenu .cmn_sidemenu_lower a:before {
	border: 2px solid #f8b500;
	top: 17px;
	left: 35px;
}
.layout_pc .cmn_sidemenu li a:hover,
.cat_nth_1 .cmn_sidemenu li:nth-child(1) a,
.cat_nth_2 .cmn_sidemenu li:nth-child(2) a,
.cat_nth_3 .cmn_sidemenu li:nth-child(3) a,
.cat_nth_4 .cmn_sidemenu li:nth-child(4) a,
.cat_nth_5 .cmn_sidemenu li:nth-child(5) a,
.cat_nth_6 .cmn_sidemenu li:nth-child(6) a,
.cat_nth_7 .cmn_sidemenu li:nth-child(7) a {
	background-color: #f8b500;
	color: #fff;
}

.blogs_sidemenu img {
	display: block;
	margin: 15px auto;
}
.blogs_sidemenu p {
	line-height: 1.8;
	padding: 0 20px 15px;
}

/*===============================================
  サブメニュー：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.cmn_sidemenu {
		background-color: #fff;
		border: none;
		box-shadow: none;
		float: none;
		margin: 0 0 20px;
		width: 100%;
	}
	.cmn_sidemenu h3 {
		display: none;
	}
	.cmn_sidemenu ul {
		border-bottom: 1px solid #eef3f9;
		overflow: hidden;
	}
	.cmn_sidemenu li a {

	}
	.cmn_sidemenu li {
		border-bottom: 1px solid #eef3f9;
		float: left;
		width: 50%;
	}
	.cmn_sidemenu .cmn_sidemenu_lower a {
		padding-left: 15px;
	}
	.cmn_sidemenu li + li {
		border-top: none;
	}
	.cmn_sidemenu .cmn_sidemenu_lower {
		border-top: none;
	}
	.cmn_sidemenu li:nth-child(2n+1) {
		border-right: 1px solid #eef3f9;
	}
	.cmn_sidemenu li:last-child,
	.cat_intro .cmn_sidemenu li:nth-last-child(2) {
		border-bottom: none;
	}
	.cat_exam .cmn_sidemenu li:first-child {
		border-right-style: dashed;
	}
	.cmn_sidemenu li a {
		font-size: 12px;
		padding: 0 5px 0 15px;
	}
	.cmn_sidemenu li a:before {
		margin-right: 3px;
		top: 17px;
		left: 7px;
	}
	.cmn_sidemenu .cmn_sidemenu_lower a:before {
		left: 7px;
	}
	.cmn_sidemenu .blogs_sidemenu {
		width: 100%;
	}
}

/* コンテンツ：メインカラム
--------------------------------------------------------- */
.contents_wide {
	background-color: #fff;
	margin-bottom: 80px;
	padding: 0 25px;
}
.contents_wide h3 {
	border-top: 3px solid #1d1288;
	border-bottom: 1px solid #eef3f9;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.3;
	margin: 0 0 25px -25px;
	padding: 18px 20px;
	width: calc(100% + 50px);
}

.contents_main {
	background-color: #fff;
	margin-bottom: 50px;
	padding: 0 25px 30px;
	width: 68.8%;
}
.contents_main > h3:first-child {
	border-top: 3px solid #1d1288;
	border-bottom: 1px solid #eef3f9;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1.3;
	margin: 0 0 30px -25px;
	padding: 18px 20px;
	width: calc(100% + 50px);
}
.tit_lead {
	color: #1d1288;
	font-size: 16px;
	font-style: italic;
	font-weight: bold;
	line-height: 1.8;
	margin-bottom: 25px;
}
.tit_border_wrap + .tit_border_wrap {
	margin-top: 45px;
}
.tit_border {
	border-left: 1px solid #ccc;
	display: table;
	font-size: 16px;
	font-style: italic;
	font-weight: bold;
	height: 58px;
	line-height: 1.7;
	margin-bottom: 30px;
	padding-left: 20px;
}
.tit_border > span {
	display: table-cell;
	vertical-align: middle;
}
.tit_border span .sub {
	display: inline-block;
	font-size: 13px;
	font-style: normal;
	font-weight: normal;
	margin-top: 5px;
}
.tit_dia {
	border-bottom: 1px solid #eef3f9;
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 35px;
	padding-bottom: 18px;
	position: relative;
}
.tit_dia:before {
	content: '';
	background-color: #f8b500;
	display: inline-block;
	height: 13px;
	margin-right: 10px;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
	width: 13px;
}
.contents_wide p,
.contents_main p {
	line-height: 2.0;
}

.contents_wide .img_wrap,
.contents_main .img_wrap {
	overflow: hidden;
}
.contents_wide .img_wrap img,
.contents_main .img_wrap img {
	display: block;
	margin-bottom: 3px;
}
.contents_wide .img_left,
.contents_main .img_left {
	float: left;
	font-weight: bold;
	margin: 0 20px 10px 0;
}
.contents_wide .img_right,
.contents_main .img_right {
	float: right;
	font-weight: bold;
	margin: 0 0 10px 20px;
}

/*===============================================
  コンテンツ：メインカラム：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.contents_wrap .container {
		padding: 0;
	}

	.contents_wide {
		margin-bottom: 40px;
		padding: 0 15px;
	}
	.contents_wide h3 {
		background-color: #1d1288;
		border: none;
		color: #fff;
		font-size: 15px;
		margin: 0 0 20px -15px;
		width: calc(100% + 30px);
	}

	.contents_main .tit_border_wrap + .tit_border_wrap {
		margin-top: 30px;
	}
	.contents_main {
		margin-bottom: 40px;
		padding: 0 15px;
		width: 100%;
	}
	.contents_main h3:first-child {
		background-color: #1d1288;
		border: none;
		color: #fff;
		font-size: 15px;
		margin: 0 0 20px -15px;
		width: calc(100% + 30px);
	}
	.contents_main .tit_lead {
		line-height: 1.6;
		margin-bottom: 25px;
	}
	.contents_main .tit_border {
		height: 55px;
		line-height: 1.3;
		margin-bottom: 20px;
		padding-left: 15px;
	}
	.contents_wide p,
	.contents_main p {
		line-height: 1.7;
	}

	.contents_wide .img_wrap img,
	.contents_main .img_wrap img {
		display: block;
		margin: 0 auto 3px;
	}
	.contents_wide .img_left,
	.contents_main .img_left {
		display: block;
		float: none;
		margin: 0 0 15px 0;
		text-align: center;
	}
	.contents_wide .img_right,
	.contents_main .img_right {
		display: block;
		float: none;
		margin: 0 0 15px 0;
		text-align: center;
	}
}

/* ボード
--------------------------------------------------------- */
.cmn_board {
	background-color: #fefcf5;
	background-color: #f8f5e8;
	border: 3px solid #eef3f9;
	box-shadow: 2px 3px 0 rgba(1,1,1,0.1);
	padding: 25px;
}
.cmn_board_tit {
	border-left: 1px solid #1d1288;
	color: #1d1288;
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 15px;
	padding-left: 10px;
}
.cmn_board p {
	margin-bottom: 30px;
}
.cmn_board p:last-child {
	margin-bottom: 0;
}

.cmn_board {
	line-height: 1.8;
}
.cmn_board dt {
	background-color: #fff;
	color: #1d1288;
	font-weight: bold;
	padding: 15px 15px 5px;
}
.cmn_board dd {
	background-color: #fff;
	padding: 0 15px 15px;
}
.cmn_board dd + dt {
	margin-top: 2px;
}

.cmn_board_wrap {
	overflow: hidden;
}
.cmn_board_wrap .cmn_board {
	float: left;
	width: 49%;
}
.cmn_board_wrap .cmn_board:nth-child(2n) {
	float: right;
}

/*===============================================
  ボード：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.cmn_board {
		border: 2px solid #eef3f9;
		box-shadow: 1px 2px 0 rgba(1,1,1,0.1);
		padding: 20px;
	}
	.cmn_board p {
		margin-bottom: 25px;
	}

	.cmn_board_wrap .cmn_board {
		float: none;
		width: 100%;
	}
	.cmn_board_wrap .cmn_board + .cmn_board {
		float: none;
		margin-top: 15px;
	}
}

/* グリッド：2カラム
--------------------------------------------------------- */
.grid_2col {
	overflow: hidden;
}
.grid_2col > li {
	float: left;
	text-align: center;
	width: 48.5%;
}
.grid_2col > li:nth-child(even) {
	float: right;
}

/*===============================================
  グリッド：2カラム：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.grid_2col > li {
		float: none;
		width: 100%;
	}
	.grid_2col > li + li {
		margin-top: 15px;
	}
}

/* グリッド：3カラム
--------------------------------------------------------- */
.grid_3col {
	overflow: hidden;
}
.grid_3col > li {
	float: left;
	margin-right: 0.5%;
	text-align: center;
	width: 33%;
}
.grid_3col > li:nth-child(3n) {
	margin-right: 0;
}

/*===============================================
  グリッド：3カラム：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.grid_3col > li {
		float: none;
		margin-right: 0;
		width: 100%;
	}
	.grid_3col > li + li {
		margin-top: 25px;
	}
}

/* グリッド：4カラム
--------------------------------------------------------- */
.grid_4col {
	overflow: hidden;
}
.grid_4col > li {
	float: left;
	margin-right: 0.66%;
	width: 24.5%;
}
.grid_4col > li:nth-child(4n) {
	margin-right: 0;
}

/*===============================================
  グリッド：4カラム：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.grid_4col {
		margin-bottom: -2%;
	}
	.grid_4col > li {
		margin: 0 2% 2% 0;
		width: 49%;
	}
	.grid_4col > li:nth-child(2n) {
		margin-right: 0;
	}
}

/* ボタン：標準
--------------------------------------------------------- */
.cmn_btn_wrap {
	background-color: #eee;
	padding: 10px;
}
.cmn_btn a {
	background-color: #1d1288;
	border: 4px solid #5148a6;
	color: #fff;
	display: block;
	font-size: 16px;
	font-weight: bold;
	height: 100%;
	line-height: 1.3;
	padding: 15px 10px;
	position: relative;
	text-decoration: none;
	text-align: center;
	width: 100%;
}
.cmn_btn_yellow a {
	background-color: #f7b500;
	border-color: #f8cc54;
}
.cmn_btn a:before {
	content: '';
	border: 3px solid transparent;
	border-left: 3px solid #fff;
	display: inline-block;
	height: 0;
	margin-right: 7px;
	position: relative;
	top: -2px;
	vertical-align: middle;
	width: 0;
}
.layout_pc .cmn_btn a:hover {
	opacity: 0.8;
}

/*===============================================
  ボタン：標準：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.cmn_btn a {
		font-size: 14px;
		padding: 10px;
	}
}

/* リンク：黄色矢印
--------------------------------------------------------- */
.cmn_link_arrow {
	display: inline-block;
	font-weight: bold;
	padding-left: 11px;
	position: relative;
	text-indent: -11px;
}
.cmn_link_arrow:before {
	content: '';
	border: 3px solid transparent;
	border-left: 3px solid #f8b500;
	display: inline-block;
	height: 0;
	margin-right: 5px;
	vertical-align: middle;
	width: 0;
}

/* ページ内リンク
--------------------------------------------------------- */
.anker_menu {
	letter-spacing: -.5em;
	margin-bottom: 25px;
	text-align: center;
}
.anker_menu li {
	border-right: 1px solid #d9d9d9;
	display: inline-block;
	letter-spacing: normal;
	padding: 0 2em;
}
.anker_menu li:first-child {
	border-left: 1px solid #d9d9d9;
}
.anker_menu li a {
	font-size: 14px;
	font-weight: bold;
	position: relative;
	text-decoration: none;
}
.anker_menu li a:before {
	content: '';
	border: 3px solid transparent;
	border-top: 3px solid #f8b500;
	display: inline-block;
	height: 0;
	margin-right: 7px;
	vertical-align: middle;
	width: 0;
}
.layout_pc .anker_menu li a:hover {
	opacity: 0.8;
}

/*===============================================
  ページ内リンク：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.anker_menu li {
		padding: 0 1em;
	}
}

/* テーブル：標準
--------------------------------------------------------- */
.cmn_table {
	line-height: 1.5;
	width: 100%;
}
.cmn_table th {
	background-color: #1d1288;
	border: 1px solid #fff;
	color: #fff;
	padding: 10px;
	text-align: center;
}
.cmn_table tr:nth-child(n+2) th {
	background-color: #dfddec;
	color: #111;
}
.cmn_table td {
	background-color: #eee;
	border: 1px solid #fff;
	padding: 10px;
	text-align: center;
}

/* テーブル：レスポンシブ対応
--------------------------------------------------------- */
/*===============================================
  テーブル：レスポンシブ対応：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.table_wrapper {
		overflow: auto;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
	}
}

/* ライトボックス：フェードイン
--------------------------------------------------------- */
.mfp-fade.mfp-bg {
  opacity: 0;
  -webkit-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}
.mfp-fade.mfp-bg.mfp-ready {
  opacity: 0.5;
}
.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}
.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  -webkit-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}



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

	06. トップページ

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

/* トップ：メインビジュアル
--------------------------------------------------------- */
.top_mv {
	margin-bottom: 40px;
	min-height: 505px;
	padding-top: 45px;
}
#top_mv_slider {
	border: 5px solid #fff;
	box-shadow: 2px 3px 0 rgba(1,1,1,0.1);
	display: none;
	margin-bottom: 35px;
	position: relative;
	width: 100%;
}
#top_mv_slider.slick-initialized {
	display: block;
}
#top_mv_slider .slick-arrow {
	border: none;
	color: transparent;
	cursor: pointer;
	font-size: 0;
	height: 59px;
	line-height: 0;
	outline: none;
	padding: 0;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
					transform: translateY(-50%);
	width: 21px;
}
#top_mv_slider .slick-arrow:hover {
	opacity: 0.8;
}
#top_mv_slider .slick-prev {
	background: url(../img/top/mv_ico_prev01.png) no-repeat;
	background-size: contain;
	left: -50px;
}
#top_mv_slider .slick-next {
	background: url(../img/top/mv_ico_next01.png) no-repeat;
	background-size: contain;
	right: -50px;
}

.top_mv_lead {
	background: url(../img/top/mv_lead01.png) center no-repeat;
	background-size: contain;
	height: 75px;
	margin: 0 auto;
	text-indent: -9999px;
	width: 100%;
}

.top_info {
	position: absolute;
	bottom: 172px;
	right: 40px;
}
.top_info li {
	line-height: 1.3;
	-webkit-transform: skewX(-7deg);
					transform: skewX(-7deg);
	width: 290px;
}
.top_info li + li {
	margin-top: 2px;
}
.top_info li a {
	background-color: rgba(255,255,255,0.9);
	border-left: 3px solid #f3c032;
	display: block;
	height: 100%;
	padding: 17px 20px;
	text-decoration: none;
	width: 100%;
}
.layout_pc .top_info li a:hover {
	opacity: 0.8;
}
.top_info h3 {
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 5px;
	-webkit-transform: skewX(7deg);
					transform: skewX(7deg);
}
.top_info p {
	color: #111;
	-webkit-transform: skewX(7deg);
					transform: skewX(7deg);
}

.top_caution {
	display: table;
	position: absolute;
	bottom: 110px;
	left: 25px;
	width: 990px;
}
.top_caution h3 {
	background-color: #f30;
	color: #fff;
	display: table-cell;
	font-weight: bold;
	padding: 7px;
	text-align: center;
	vertical-align: middle;
	width: 95px;
}
.top_caution p {
	background-color: #fff;
	display: table-cell;
	line-height: 1.3;
	padding: 7px 10px;
	vertical-align: middle;
}

/*===============================================
  トップ：メインビジュアル：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.top_mv {
		margin-bottom: 20px;
		min-height: inherit;
		padding-top: 0;
	}
	#top_mv_slider {
		border: none;
		box-shadow: none;
		display: none;
		margin-bottom: 20px;
		margin-left: -10px;
		width: calc(100% + 20px);
	}
	#top_mv_slider .slick-arrow {display: none;}

	.top_mv_lead {
		height: 50px;
		margin-bottom: 20px;
	}

	.top_info {
		margin-bottom: 15px;
		position: static;
	}
	.top_info li {
		-webkit-transform: skewX(0);
						transform: skewX(0);
		width: 100%;
	}
	.top_info li a {
		background-color: #eef3f9;
	}
	.top_info h3,
	.top_info p {
		-webkit-transform: skewX(0);
						transform: skewX(0);
	}

	.top_caution {
		position: static;
		width: 100%;
	}
	.top_caution h3 {
		width: 90px;
	}
}

/* トップページ：インデックス
--------------------------------------------------------- */
.top_index {
	margin-bottom: 30px;
}
.top_index_wrap {
	float: right;
	width: 375px;
}
.top_index_inner {
	border: 3px solid #eef3f9;
	box-shadow: 2px 3px 0 rgba(1,1,1,0.1);
	padding: 20px;
}
.top_index_inner h2 {
	border-left: 1px solid #1d1288;
	border-right: 1px solid #1d1288;
	color: #1d1288;
	display: inline-block;
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 22px;
	padding: 0 12px;
	position: relative;
}
.top_index_inner h2:after {
	content: 'News';
	color: #666;
	font-weight: normal;
	margin-left: 10px;
	position: absolute;
	left: calc(100% + 5px);
}

.top_index_news {
	margin-bottom: 25px;
}
.top_news_tag {
	letter-spacing: -.5em;
	margin: -5px 0 15px;
}
.top_news_tag li {
	display: inline-block;
	letter-spacing: normal;
	margin: 0 3px 3px 0;
}
.top_news_tag li a {
	background-color: #009d83;
	border-radius: 6px;
	color: #fff;
	display: block;
	padding: 3px 5px;
	text-decoration: none;
}
.layout_pc .top_news_tag li a:hover {
	background-color: #f8b500;
}
.top_index_inner ol li {
	font-size: 14px;
	line-height: 1.3;
}
.top_index_inner ol li + li {
	margin-top: 10px;
}
.top_index_inner ol li .news_date {
	display: block;
	margin-bottom: 3px;
}
.top_index_inner ol li .news_title {
	font-size: 13px;
	line-height: 1.5;
	position: relative;
}
.top_index_inner ol li.top_news_new .news_title:after {
	content: 'NEW!';
	background-color: #f8b500;
	color: #fff;
	display: inline-block;
	font-size: 12px;
	margin-left: 5px;
	padding: 2px;
}
.top_index_entrance {
	background-color: #fefcf5;
}
.top_index_entrance h2:after {
	content: 'Entrance';
}
.top_btn_archive {
	margin-top: 1.2em;
	text-align: right;
}
.top_btn_archive a {
	text-decoration: none;
}

.top_index_menu {
	width: 590px;
}
.top_index_menu li {
	background-color: #1d1288;
	box-shadow: 2px 3px 0 rgba(205,203,226,1);
	float: left;
	height: 160px;
	margin: 0 10px 25px 0;
	width: 190px;
}
.top_index_menu li:nth-child(3n) {
	margin-right: 0;
}
.top_index_menu li a {
	color: #fff;
	display: block;
	font-weight: bold;
	height: 100%;
	padding: 3px;
	text-align: center;
	text-decoration: none;
	width: 100%;
}
.top_index_menu li img {
	margin-bottom: 7px;
}

/*===============================================
  トップページ：インデックス：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.top_index {
		margin-bottom: 15px;
	}
	.top_index_wrap {
		float: none;
		margin-bottom: 25px;
		width: 100%;
	}
	.top_index_inner {
		border: 2px solid #eef3f9;
		box-shadow: none;
		padding: 15px;
	}
	.top_index_inner h2 {
		margin-bottom: 25px;
	}

	.top_index_news {
		margin-bottom: 15px;
	}
	.top_news_tag li a {
		font-size: 12px;
		padding: 5px;
	}

	.top_index_menu {
		margin: 0 auto;
		max-width: 370px;
		width: 100%;
	}
	.top_index_menu li {
		background-color: #1d1288;
		box-shadow: 1px 2px 0 rgba(205,203,226,1);
		float: left;
		height: auto;
		margin: 0 2% 10px 0;
		width: 49%;
	}
	.top_index_menu li:nth-child(3n) {
		margin-right: 2%;
	}
	.top_index_menu li:nth-child(2n) {
		margin-right: 0;
	}
	.top_index_menu li a {
		padding: 3px 3px 5px;
	}
	.top_index_menu li img {
		margin-bottom: 5px;
	}
}

/* トップページ：バナー
--------------------------------------------------------- */
.top_banner {
	background-color: #eef3f9;
	padding: 40px 0;
}
.top_banner ul {
	margin: 0 -20px -20px 0;
	overflow: hidden;
	padding: 0 30px;
}
.top_banner li {
	background-color: #fff;
	float: left;
	height: 85px;
	margin: 0 20px 20px 0;
	width: auto;
}
.top_banner a {
	display: block;
	height: 100%;
	padding: 3px;
	width: 100%;
}
.layout_pc .top_banner a:hover {
	opacity: 0.8;
}
.top_banner a img {
	height: 100%;
}

.top_banner .top_banner_txt {
	width: 220px;
}
.top_banner_txt a {
	background-position: 3px 3px;
	background-repeat: no-repeat;
	background-size: auto 79px;
	display: table;
	font-weight: bold;
	line-height: 1.5;
	padding: 3px 3px 3px 88px;
	text-decoration: none;
}
.top_banner_txt a span {
	display: table-cell;
	vertical-align: middle;
}
.top_banner_pamphlet a {
	background-image: url(../img/top/bnr_pamphlet01.jpg);
}
.top_banner_ess a {
	background-image: url(../img/top/bnr_ess01.jpg);
}
.top_banner_anpi a {
	background-image: url(../img/top/bnr_anpi01.jpg);
}

/*===============================================
  トップページ：バナー：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.top_banner {
		padding: 20px 0;
	}
	.top_banner ul {
		margin: 0 -10px -5px 0;
		letter-spacing: -.5em;
		padding: 0;
		text-align: center;
	}
	.top_banner li {
		display: inline-block;
		float: none;
		letter-spacing: normal;
		margin: 0 10px 5px 0;
	}

	.top_banner .top_banner_txt {
		text-align: left;
	}
}



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

	07. 学校紹介

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

/* 校長挨拶
--------------------------------------------------------- */
#principal .contents_main p + p {
	margin-top: 1.5em;
}
.principal_name {
	background: url(../img/intro/principal_tit01.png) center no-repeat;
	background-size: auto 20px;
	margin-bottom: 20px;
	text-indent: -9999px;
}

/* 教育理念
--------------------------------------------------------- */
#philosophy .img_wrap {
	margin-bottom: 40px;
}
#philosophy .tit_bold {
	font-size: 13px;
	font-weight: bold;
	margin: 40px 0 15px;
}

/*===============================================
  教育理念：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#philosophy .img_wrap {
		margin-bottom: 30px;
	}
	#philosophy .tit_bold {
		margin-top: 30px;
	}
}

/* 沿革
--------------------------------------------------------- */
.history_list {
	border-top: 1px solid #eef3f9;
	line-height: 1.5;
	margin-bottom: 25px;
	overflow: hidden;
}
.history_list dt {
	color: #1d1288;
	float: left;
	font-weight: bold;
	padding: 10px 0;
	text-align: center;
	width: 75px;
}
.history_list dd {
	background-color: #f7f7fb;
	border-bottom: 1px solid #eef3f9;
	padding: 10px 15px 10px 85px;
}
.history_list dd:nth-of-type(2n) {
	background-color: #fff;
}

.history_principal {
	background-color: #eee;
	margin-bottom: 25px;
	padding: 25px;
}
.history_principal li {
	color: #1d1288;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
}
.history_principal img {
	background-color: #fff;
	border: 2px solid #1d1288;
	margin-bottom: 10px;
	padding: 10px;
}
.history_principal span {
	color: #111;
	display: block;
	font-size: 13px;
	margin-bottom: 8px;
}

.history_photo li {
	background-color: #eee;
}
.history_photo span {
	display: inline-block;
	letter-spacing: -0.02em;
	line-height: 1.5;
	padding: 10px;
}

/*===============================================
  沿革：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#philosophy .img_wrap {
		margin-bottom: 30px;
	}
	#philosophy .tit_bold {
		margin-top: 30px;
	}
}

/* クラス数・生徒数
--------------------------------------------------------- */
#number .tit_border,
#number .table_wrapper + .tit_lead {
	margin-top: 40px;
}

#number .table_wrapper.table_number_area {
	overflow: hidden;
}
#number .table_number_area .cmn_table {
	float: left;
	table-layout: fixed;
	width: 33%;
}
#number .table_number_area .cmn_table th {
	line-height: 1.2;
	height: 40px;
	padding: 0;
}

/*===============================================
  クラス数・生徒数：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#number .tit_border {
		margin-top: 30px;
	}
	#number .table_wrapper + .tit_lead {
		margin-top: 30px;
		margin-bottom: 10px;
	}

	#number .table_wrapper.table_number_area {
		overflow: auto;
	}
	#number .table_wrapper_inner {
		overflow: hidden;
		width: 450px;
	}
	#number .table_number_area .cmn_table {
		table-layout: auto;
		width: 150px;
	}
	#number .table_number_area .cmn_table td {
		width: 4em;
	}
}

/* 教員紹介
--------------------------------------------------------- */
.teacher_list {
	margin-bottom: -19px;
	overflow: hidden;
}
.teacher_list li {
	background-color: #f0f0f0;
	float: left;
	margin: 0 19px 19px 0;
	padding-bottom: 15px;
	width: 200px;
}
.teacher_list li:nth-child(3n) {
	margin-right: 0;
}
.teacher_list p {
	line-height: 1.5;
	padding: 0 15px;
}
.teacher_list .img {
	margin-bottom: 10px;
	padding: 0;
}
.teacher_list .position {
	font-size: 12px;
}
.teacher_list .name {
	color: #1d1288;
	font-size: 20px;
	font-weight: bold;
}
.teacher_list .name_en {
	font-size: 12px;
	margin-bottom: 10px;
}

/*===============================================
  教員紹介：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.teacher_list {
		margin-bottom: -3%;
	}
	.teacher_list li {
		margin: 0 3% 3% 0;
		padding-bottom: 10px;
		width: 48.5%;
	}
	.teacher_list li:nth-child(3n) {
		margin-right: 3%;
	}
	.teacher_list li:nth-child(2n) {
		margin-right: 0;
	}
	.teacher_list p {
		padding: 0 10px;
	}
	.teacher_list .img {
		margin-bottom: 7px;
	}
	.teacher_list .img img {
		width: 100%;
	}
	.teacher_list .name_en {
		margin-bottom: 7px;
	}
}

/* 校章・校歌
--------------------------------------------------------- */
.symbol_list {
	margin-bottom: 40px;
}
.symbol_list li {
	background-color: #eee;
	padding: 5px 5px 10px;
}
.symbol_list li img {
	margin-bottom: 10px;
}
.symbol_list li span {
	display: inline-block;
	line-height: 1.6;
	padding: 0 10px;
	text-align: left;
}

.symbol_kouka {
	background-color: #eee;
	padding: 10px 15px;
}
.symbol_player {
	background-color: #fff;
	margin-top: 10px;
	padding: 10px;
}
.symbol_player audio {
	width: 100%;
}



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

	08. 教育内容

--------------------------------------------------------- */
.education_box {
	overflow: hidden;
}
.education_box + .education_box {
	margin-top: 50px;
}
.education_box h4 {
	background-color: #1d1288;
	border-bottom: 3px solid #c9e7ff;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 25px;
	padding: 7px 20px;
}
.education_box .img {
	float: right;
	margin-top: 5px;
	width: 240px;
}
.education_box .txt {
	float: left;
	width: 375px;
}

/*===============================================
  教育内容：共通：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.education_box + .education_box {
		margin-top: 30px;
	}
	.education_box h4 {
		font-size: 15px;
		margin-bottom: 15px;
		padding: 5px 10px;
	}
	.education_box .img {
		float: none;
		margin: 0 auto 15px;
	}
	.education_box .txt {
		float: none;
		width: 100%;
	}
}

/* 人間力の育成
--------------------------------------------------------- */
#human .tit_dia {
	margin-bottom: 25px;
	padding-top: 20px;
}
#human .tit_lead {
	margin-bottom: 18px;
}
#human .tit_border {
	margin: 50px 0 25px;
}
#human .tit_bold {
	font-style: italic;
	font-weight: bold;
	margin: 25px 0;
}

.human_onlyone {
	margin: 15px 0 40px;
}
#human .education_box + .tit_dia {
	margin-top: 20px;
}

#human .llt_table_wrapper {
	clear: both;
	padding-top: 25px;
}
#human .llt_table th {
	background-color: #1d1288;
	color: #fff;
	padding: 5px;
	text-align: center;
	width: 2.5em;
}
#human .llt_table th span {
	-webkit-writing-mode: vertical-rl;
			-ms-writing-mode: tb-rl;
					writing-mode: vertical-rl;
	white-space: nowrap;
}
#human .llt_table td {
	padding: 2px 5px;
	text-align: left;
}
#human .llt_table td:nth-of-type(1) {
	background-color: #dfddec;
	width: 220px;
}
#human .llt_table td li {
	list-style: disc;
	margin-left: 1.5em;
}

/*===============================================
  人間力の育成：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#human .tit_dia {
		margin-bottom: 15px;
		padding-top: 15px;
	}
	#human .tit_lead {
		margin-bottom: 12px;
	}
	#human .tit_border {
		margin: 30px 0 15px;
	}
	#human .tit_bold {
		margin: 15px 0;
	}
	.human_onlyone {
		margin: 15px 0 25px;
	}
}

/* 思考力の育成
--------------------------------------------------------- */
#thinking .tit_dia {
	margin-bottom: 25px;
	padding-top: 20px;
}
#thinking .tit_lead {
	margin-bottom: 18px;
}
#thinking .tit_border {
	margin: 0 0 25px;
}
#thinking .tit_bold {
	font-size: 14px;
	font-weight: bold;
	margin-top: 15px;
}

#thinking .cmn_board {
	margin: 25px 0 50px;
}
#thinking .cmn_board .grid_2col {
	margin-bottom: 30px;
}
#thinking .cmn_board dl + dl {
	margin-top: 12px;
}
#thinking .cmn_board dt {
	background-color: #1d1288;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	padding: 5px;
}
#thinking .cmn_board dd {
	padding: 10px 15px;
	text-align: left;
}
#thinking .cmn_board ol li {
	list-style: disc;
	margin-left: 1.5em;
}
#thinking .cmn_board ol li.no-liststyle {
	list-style: none;
	margin-left: 0;
}
#thinking .cmn_board dd p {
	background-color: #eee;
	color: #1d1288;
	font-weight: bold;
	margin: 10px 0 5px;
	padding: 5px;
	position: relative;
	text-align: center;
}
#thinking .cmn_board dd p:after {
	content: '';
	border: 5px solid transparent;
	border-bottom: 10px solid #eee;
	display: block;
	height: 0;
	margin-left: -5px;
	position: absolute;
	top: -15px;
	left: 50%;
	width: 0;
}
#thinking .cmn_board .cmn_table {
	border-collapse: separate;
	border-spacing: 1px;
}
#thinking .cmn_board .cmn_table caption {
	caption-side: bottom;
	margin-top: 5px;
	text-align: left;
}
#thinking .cmn_board .cmn_table th {
	background-color: #1d1288;
	border: none;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	width: 80px;
}
#thinking .cmn_board .cmn_table td {
	background-color: #fff;
	border: none;
	padding: 15px;
	text-align: left;
	width: 100%;
}
#thinking .cmn_board td p {
	background-color: #eee;
	color: #1d1288;
	display: inline-block;
	font-weight: bold;
	margin-bottom: 12px;
	padding: 5px 10px;
	position: relative;
	text-align: center;
}
#thinking .cmn_board td p:after {
	content: '';
	border: 5px solid transparent;
	border-top: 10px solid #eee;
	display: block;
	height: 0;
	position: absolute;
	bottom: -15px;
	left: 30px;
	width: 0;
}

.thinking_math {
	background-color: #f9f7ef;
	margin-top: 20px;
	text-align: center;
	padding: 20px;
}
.thinking_math > p {
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 25px;
}
.thinking_math .grid_3col {
	overflow: visible;
	position: relative;
}
.thinking_math .grid_3col:before {
	content: '';
	background-color: #111;
	height: 2px;
	position: absolute;
	top: -17px;
	left: 15.5%;
	width: 69%;
}
.thinking_math .grid_3col > li {
	margin-right: 3.5%;
	position: relative;
	width: 31%;
}
.thinking_math .grid_3col > li:nth-child(3n) {
	margin-right: 0;
}
.thinking_math .grid_3col > li:nth-child(1):before,
.thinking_math .grid_3col > li:nth-child(3):before {
	content: '';
	background-color: #111;
	height: 13px;
	margin-left: -1px;
	position: absolute;
	top: -17px;
	left: 50%;
	width: 2px;
}
.thinking_math li h6 {
	color: #fff;
	font-size: 16px;
	padding: 5px;
}
.thinking_math li:nth-child(1) h6 {background-color: #c4ac27;}
.thinking_math li:nth-child(2) h6 {background-color: #ca567f;}
.thinking_math li:nth-child(3) h6 {background-color: #59b83c;}
.thinking_math li p {
	background-color: #fff;
	display: table;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.3;
	padding: 20px 5px;
	position: relative;
	width: 100%;
}
.thinking_math li:nth-child(1) p {color: #c4ac27;}
.thinking_math li:nth-child(2) p {color: #ca567f;}
.thinking_math li:nth-child(3) p {color: #59b83c;}
.thinking_math li p:after {
	content: '';
	border: 5px solid transparent;
	border-left: 8px solid #111;
	display: block;
	height: 0;
	margin-top: -5px;
	position: absolute;
	top: 50%;
	left: -14px;
	width: 0;
}
.thinking_math li:nth-child(1) p:after {
	border-left: 5px solid transparent;
	border-top: 8px solid #111;
	margin: 0 0 0 -5px;
	top: -37px;
	left: 50%;
}
.thinking_math li p span {
	display: table-cell;
	vertical-align: middle;
}

.thinking_achievement {
	margin-top: 35px;
	position: relative;
}
.thinking_achievement:before {
	content: '';
	border: 8px solid transparent;
	border-top: 12px solid #111;
	height: 0;
	margin-left: -8px;
	position: absolute;
	top: -22px;
	left: 50%;
	width: 0;
}
.thinking_achievement dt {
	background-color: #5394c1;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	padding: 7px;
	text-align: center;
}
.thinking_achievement dd {
	background-color: #e0eaf1;
	padding: 20px 20px 15px;
}
.thinking_achievement .grid_2col {
	margin-bottom: 10px;
}
.thinking_achievement li {
	background-color: #fff;
	color: #5394c1;
	font-size: 14px;
	font-weight: bold;
	padding: 10px;
}
.thinking_achievement .tit {
	color: #5394c1;
	font-size: 16px;
	font-weight: bold;
}

#thinking .tit_border_wrap + .tit_dia {
	margin-top: 50px;
}
#thinking_science ~ p + .education_box {
	margin-top: 30px;
}

/*===============================================
  思考力の育成：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#thinking .anker_menu li {
		padding: 0 10px;
	}
	#thinking .tit_dia {
		margin-bottom: 15px;
		padding-top: 15px;
	}
	#thinking .tit_lead {
		margin-bottom: 12px;
	}
	#thinking .tit_border {
		margin: 20px 0 15px;
	}
	#thinking .tit_bold {
		margin: 15px 0;
	}
	#thinking .cmn_board {
		margin: 15px 0 35px;
		padding: 15px;
	}
	#thinking .cmn_board .grid_2col {
		margin-bottom: 0;
	}
	#thinking .cmn_board dl + dl {
		margin-top: 15px;
	}
	#thinking .cmn_board dt {
		font-size: 14px;
	}
	#thinking .cmn_board dd {
		padding: 10px;
	}

	.thinking_math {
		padding: 15px;
	}
	.thinking_math > p {
		font-size: 13px;
		margin-bottom: 15px;
	}
	.thinking_math .grid_3col {
		margin: 0 auto;
		width: 80%;
	}
	.thinking_math .grid_3col:before {
		height: 71%;
		top: 14.5%;
		left: auto;
		right: -15px;
		width: 2px;
	}
	.thinking_math .grid_3col > li {
		margin-right: 0;
		position: relative;
		width: 100%;
	}
	.thinking_math .grid_3col > li:nth-child(1):before,
	.thinking_math .grid_3col > li:nth-child(3):before {
		height: 2px;
		margin: -1px 0 0 0;
		position: absolute;
		top: 50%;
		left: auto;
		right: -15px;
		width: 12px;
	}
	.thinking_math li h6 {
		font-size: 15px;
	}
	.thinking_math li p {
		padding: 10px 5px;
	}
	.thinking_math li p:after {
		border-left: 5px solid transparent;
		border-top: 8px solid #111;
		margin: 0 0 0 -5px;
		top: -40px;
		left: 50%;
	}
	.thinking_math li:nth-child(1) p:after {
		border-top: 5px solid transparent;
		border-right: 8px solid #111;
		margin: -17px 0 0 0;
		top: 50%;
		left: auto;
		right: -8px;
	}

	.thinking_achievement dt {
		font-size: 15px;
	}
	.thinking_achievement dd {
		padding: 15px 15px 10px;
	}
	.thinking_achievement li {
		padding: 7px;
	}
	.thinking_achievement li + li {
		margin-top: 10px;
	}

	#thinking .tit_border_wrap + .tit_dia {
		margin-top: 30px;
	}
	#thinking_science ~ p + .education_box {
		margin-top: 20px;
	}
}

/* 国際力の育成
--------------------------------------------------------- */
#international .tit_dia {
	margin-bottom: 25px;
	padding-top: 20px;
}
#international .tit_lead {
	margin-bottom: 18px;
}
#international .tit_border {
	margin: 0 0 25px;
}
#international .tit_bold {
	font-size: 14px;
	font-weight: bold;
	margin-top: 15px;
}

#international .cmn_table {
	border-collapse: separate;
	border-spacing: 1px;
	table-layout: fixed;
}
#international .cmn_table th {
	border: 1px solid #1d1288;
}
#international .cmn_table td {
	background-color: #fff;
	border: 1px solid #1d1288;
	color: #1d1288;
}
.international_caption li {
	display: inline-block;
	line-height: 1.5;
	margin-top: 5px;
	vertical-align: top;
	width: 33%;
}
.international_caption li:last-child {
	width: 65%;
}
.international_caption li br {
	line-height: 0;
}

#international .cmn_board + .tit_dia {
	margin-top: 40px;
}
#international_foreign ~ p + .education_box {
	margin-top: 30px;
}

/*===============================================
  国際色の育成：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#international .anker_menu li {
		padding: 0 12px;
	}
	#international .tit_dia {
		margin-bottom: 15px;
		padding-top: 15px;
	}
	#international .tit_lead {
		margin-bottom: 12px;
	}
	#international .tit_border {
		margin: 20px 0 15px;
	}
	#international .tit_bold {
		margin: 15px 0;
	}
	#international .cmn_board {
		margin: 15px 0 35px;
		padding: 15px;
	}
	#international .cmn_table {
		table-layout: auto;
	}
	.international_caption li {
		padding: 0 5px;
	}

	#international .cmn_board + .tit_dia {
		margin-top: 30px;
	}
	#international_foreign ~ p + .education_box {
		margin-top: 20px;
	}
}

/* 聖学院の中高一貫教育
--------------------------------------------------------- */
#pillar .tit_lead {
	margin: 30px 0 18px;
}
#pillar p + .pillar_box {
	margin-top: 35px;
}
.pillar_box {
	border: 1px solid #1d1288;
	position: relative;
}
.pillar_box:before {
	content: '';
	background-color: #1d1288;
	display: block;
	height: 10px;
	margin-left: -2px;
	position: absolute;
	bottom: -10px;
	left: 50%;
	width: 4px;
}
.pillar_box:after {
	content: '';
	border: 10px solid transparent;
	border-top: 12px solid #1d1288;
	display: block;
	height: 0;
	margin-left: -10px;
	position: absolute;
	bottom: -32px;
	left: 50%;
	width: 0;
}
.pillar_box + .pillar_box {
	margin-top: 30px;
}
.pillar_box dt {
	background-color: #1d1288;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	padding: 10px;
	text-align: center;
}
.pillar_box dd {
	background-color: #eee;
}
.pillar_box li {
	border-bottom: 1px dotted #1d1288;
	display: table;
	padding: 15px 20px;
	width: 100%;
}
.pillar_box li:last-child {
	border-bottom: none;
}
.pillar_box li .tit {
	display: table-cell;
	min-height: 63px;
	padding-top: 8px;
	width: 80px;
}
.pillar_box li .tit span {
	background-color: #fff;
	border: 2px solid #1d1288;
	color: #1d1288;
	display: block;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.5;
	min-height: 64px;
	padding-top: 20px;
	text-align: center;
	vertical-align: middle;
}
.pillar_box li .tit_double span {
	padding-top: 10px;
}
.pillar_box li .txt {
	display: table-cell;
	padding-left: 20px;
	vertical-align: top;
}
.pillar_box dd p.lead {
	border-bottom: 1px dotted #1d1288;
	padding: 15px;
}
.pillar_box:nth-of-type(3):before {
	display: none;
}
.pillar_box:nth-of-type(3) li .tit span {
	background-color: #1d1288;
	color: #fff;
}

.pillar_finish {
	background-color: #f7b500;
	color: #1d1288;
	font-size: 18px;
	font-weight: bold;
	margin-top: 40px;
	padding: 25px;
	text-align: center;
}

/*===============================================
  聖学院の中高一貫教育：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#pillar p + .pillar_box {
		margin-top: 25px;
	}
	.pillar_box li {
		padding: 10px 15px;
	}
	.pillar_box li .tit {
		display: block;
		min-height: auto;
		padding-top: 3px;
		width: 100%;
	}
	.pillar_box li .tit span {
		display: block;
		margin-bottom: 10px;
		min-height: auto;
		padding: 5px;
	}
	.pillar_box li .txt {
		display: block;
		padding-left: 0;
	}

	.pillar_finish {
		font-size: 16px;
		margin-top: 35px;
		padding: 20px;
	}
}

/* カリキュラム・各教科の特色
--------------------------------------------------------- */
#curriculum .tit_dia {
	margin-bottom: 25px;
	padding-top: 20px;
}
#curriculum .tit_lead {
	margin: 30px 0 18px;
}
#curriculum .tit_border {
	margin-top: 30px;
}
#curriculum .em {
	color: #1d1288;
	font-weight: bold;
}
.curriculum_class {
	clear: both;
	display: table;
	margin-bottom: 15px;
	overflow: hidden;
	padding-top: 20px;
	width: 100%;
}
.curriculum_class dl {
	background-color: #eee;
	display: table-cell;
	width: 50%;
}
.curriculum_class dl + dl {
	border-left: 1px solid #fff;
}
.curriculum_class dt {
	background-color: #1d1288;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	padding: 10px;
	text-align: center;
}
.curriculum_class dd {
	line-height: 2.0;
	padding: 15px;
}

#curriculum .education_box h4,
#feature .education_box h4 {
	border-bottom: none;
	display: table;
	padding: 0;
	width: 100%;
}
#curriculum .education_box h4 {
	margin-bottom: 10px;
}
#curriculum .education_box h4 span.tit,
#feature .education_box h4 span.tit {
	border-bottom: 3px solid #c9e7ff;
	display: table-cell;
	padding: 7px 0;
	text-align: center;
	vertical-align: middle;
	width: 100px;
}
#curriculum .education_box h4 span.tit_junior {
	width: 7em;
}
#curriculum .education_box h4 span.lead,
#feature .education_box h4 span.lead {
	background-color: #eee;
	border-bottom: 3px solid #f6f6f6;
	color: #1d1288;
	display: table-cell;
	font-size: 14px;
	padding: 7px 15px;
	vertical-align: middle;
}
#curriculum .js-lightbox {
	margin-bottom: 5px;
}
#curriculum .js-lightbox a {
	outline: none;
}

#curriculum .education_box + .tit_dia {
	margin-top: 40px;
}

.mfp-close-btn-in.mfp-img .mfp-close,
.mfp-close-btn-in.mfp-gallery .mfp-close {
	background-color: #fff;
	color: #111;
	font-size: 40px;
	height: 36px;
	line-height: 36px;
	right: 0;
	width: 36px;
}

/*===============================================
  カリキュラム・各教科の特色：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#curriculum .anker_menu {
		margin: 0 auto 25px;
		max-width: 300px;
	}
	#curriculum .anker_menu li + li {
		border-left: 1px solid #d9d9d9;
		margin-top: 15px;
	}
	#curriculum .tit_dia {
		margin-bottom: 15px;
		padding-top: 15px;
	}
	#curriculum .tit_lead {
		margin: 20px 0 15px;
	}
	#curriculum .tit_border {
		margin-top: 25px;
	}
	.curriculum_class {
		display: block;
	}
	.curriculum_class dl {
		display: block;
		width: 100%;
	}
	.curriculum_class dl + dl {
		border-left: none;
		margin-top: 2px;
	}
	.curriculum_class dd {
		padding: 10px;
	}

	#curriculum .education_box h4 span.tit:not(.tit_junior) {
		padding: 5px 0;
		width: 75px;
	}
	#feature .education_box h4 span.tit {
		padding: 5px 0;
		width: 60px;
	}
	#curriculum .education_box h4 span.lead,
	#feature .education_box h4 span.lead {
		padding: 5px 10px;
	}

	#curriculum .education_box + .tit_dia {
		margin-top: 30px;
	}
}

/* シラバス
--------------------------------------------------------- */
#syllabus h3 + p {
	margin-bottom: 30px;
}
#syllabus h3 + p a {
	text-decoration: none;
}
#syllabus h3 + p a:hover {
	text-decoration: underline;
}
.syllabus_list p.cmn_link_arrow {
	display: block;
	font-weight: bold;
	margin-bottom: 12px;
	position: relative;
}
.syllabus_list p.cmn_link_arrow a {
	line-height: 1.5;
	text-decoration: none;
}
.layout_pc .syllabus_list p.cmn_link_arrow a:hover {
	text-decoration: underline;
}
.syllabus_list ul {
	margin-bottom: -0.5%;
	overflow: hidden;
}
.syllabus_list ul + ul {
	margin-top: 0.5%;
}
.syllabus_list li {
	display: table;
	float: left;
	margin: 0 0.5% 0.5% 0;
	width: 33%;
}
.syllabus_list li:nth-child(3n) {
	margin-right: 0;
}
.syllabus_list li a {
	background-color: #eee;
	border: 2px solid #f6f6f6;
	color: #111;
	display: table-cell;
	height: 100%;
	line-height: 1.5;
	padding: 7px 5px;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
	width: 100%;
}
.layout_pc .syllabus_list li a:hover {
	opacity: 0.8;
}

/*===============================================
  過去問ダウンロード：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.syllabus_list li {
		margin: 0 1% 1% 0;
		width: 49.5%;
	}
	.syllabus_list li:nth-child(3n) {
		margin-right: 1%;
	}
	.syllabus_list li:nth-child(2n) {
		margin-right: 0;
	}
}



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

	09. スクールライフ

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

/* クラブ活動
--------------------------------------------------------- */
#club .tit_border_wrap {
	overflow: hidden;
}
.club_list {
	width: 300px;
}
.club_list.junior {float: left;}
.club_list.high {float: right;}
.club_list li {
	height: 40px;
}
.club_list li + li {
	margin-top: 1px;
}
.club_list li a {
	background-color: #eee;
	border: 2px solid #f2f2f2;
	color: #111;
	display: block;
	font-size: 14px;
	height: 100%;
	outline: none;
	position: relative;
	text-decoration: none;
	width: 100%;
}
.club_list li a:after {
	content: '';
	border: 3px solid transparent;
	border-left: 3px solid #f8b500;
	display: block;
	height: 0;
	position: absolute;
	top: 15px;
	right: 5px;
	width: 0;
}
.club_list.high li a:after {border-left-color: #1d1288;}
.club_list .no-info a:after {display: none;}
.layout_pc .club_list li a:hover {
	opacity: 0.8;
}
.club_list li span {
	background-color: #f8b500;
	border: 2px solid #ffd973;
	color: #fff;
	display: inline-block;
	font-size: 14px;
	font-weight: bold;
	line-height: 36px;
	margin: -2px 10px 0 -2px;
	padding: 0 10px;
}
.club_list.high li span {
	background-color: #1d1288;
	border-color: #7b74bd;
}
.club_list .no-info {
	background-color: #eee;
	border: 2px solid #f2f2f2;
	color: #111;
	display: block;
	font-size: 14px;
	height: 40px;
	outline: none;
	position: relative;
	text-decoration: none;
	width: 100%;
}
.club_list .no-info span {
	border-color: #f8b500;
}
.club_list.high .no-info span {
	border-color: #1d1288;
}

.club_popup {
	margin: 0 auto;
	padding: 50px 0 30px;
	width: 740px;
}
.club_popup_inner {
	background-color: #fff;
	overflow: hidden;
	padding: 20px 25px 25px;
}
.club_popup h4 {
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	padding: 10px 20px;
}
.club_popup_j h4 {background-color: #f7b80d;}
.club_popup_h h4 {background-color: #1d1288;}
.club_popup_wrap {
	overflow: hidden;
}
.club_popup_left {
	float: left;
	width: 340px;
}
.club_popup_right {
	float: right;
	width: 340px;
}
.club_popup .img img {
	height: auto;
	width: 100%;
}
.club_popup .txt {
	line-height: 1.7;
	margin-bottom: 15px;
}
.club_popup_wrap dl {
	display: table;
	line-height: 1.5;
	width: 100%;
}
.club_popup_wrap dl + dl {
	margin-top: 10px;
}
.club_popup_wrap dt {
	background-color: #f7b80d;
	color: #fff;
	display: table-cell;
	font-weight: bold;
	padding: 10px;
	vertical-align: middle;
	width: 100px;
}
.club_popup_j .club_popup_wrap dt {background-color: #f7b80d;}
.club_popup_h .club_popup_wrap dt {background-color: #1d1288;}
.club_popup_wrap dd {
	background-color: #eee;
	display: table-cell;
	padding: 10px;
}

.club_popup .cmn_board {
	background-color: #f8f5e8;
	margin-top: 25px;
	overflow: hidden;
	padding-top: 15px;
}
.club_popup .cmn_board h5 {
	color: #555;
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 15px;
	text-align: center;
}
.club_popup .cmn_board dl {
	background-color: #fff;
	float: left;
	line-height: 1.5;
	width: 48.5%;
}
.club_popup .cmn_board dl:nth-of-type(2n) {
	float: right;
}
.club_popup .cmn_board dt {
	border-bottom: 1px dotted #f8f5e8;
	color: #f7b80d;
	font-weight: bold;
	padding: 7px 20px;
}
.club_popup .cmn_board dl:nth-of-type(2n) dt {
	color: #1d1288;
}
.club_popup .cmn_board dd {
	padding: 7px 20px;
}
.club_popup .cmn_board li {
	list-style: disc;
	margin-left: 1.5em;
}

.mfp-gallery button.mfp-arrow {
	height: 60px;
	margin-top: -30px;
	width: 60px;
}
.mfp-gallery button.mfp-arrow:active {
	margin-top: -30px;
}
.mfp-gallery button.mfp-arrow:before {
	border: none;
	border-bottom: 2px solid #fff;
	border-left: 2px solid #fff;
	height: 30px;
	margin-top: 15px;
	margin-left: 0;
	width: 30px;
}
.mfp-gallery button.mfp-arrow:after {
	display: none;
}
.mfp-gallery button.mfp-arrow-left:before {
	left: 20px;
	-webkit-transform: rotate(45deg);
					transform: rotate(45deg);
}
.mfp-gallery button.mfp-arrow-right:before {
	left: 10px;
	-webkit-transform: rotate(-135deg);
					transform: rotate(-135deg);
}

.mfp-club.mfp-close-btn-in .mfp-close {
	background-color: #fff;
	font-size: 40px;
	height: 36px;
	line-height: 36px;
	margin-right: -370px;
	top: 7px;
	right: 50%;
	width: 36px;
}
.mfp-club button.mfp-arrow {
	position: fixed;
}
.mfp-club button.mfp-arrow-left {
	margin-left: -430px;
	left: 50%;
}
.mfp-club button.mfp-arrow-right {
	margin-right: -430px;
	right: 50%;
}

/*===============================================
  サイトマップ：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.club_list {
		width: 100%;
	}
	.club_list + .club_list {
		margin-top: 15px;
	}
	.club_list.junior {float: none;}
	.club_list.high {float: none;}

	.club_popup {
		padding: 40px 0 20px;
		width: 82%;
	}
	.club_popup_inner {
		padding: 10px;
	}
	.club_popup h4 {
		color: #fff;
		font-size: 16px;
		padding: 10px;
	}
	.club_popup_left {
		float: none;
		width: 100%;
	}
	.club_popup_right {
		float: none;
		margin-top: 5px;
		width: 100%;
	}
	.club_popup .txt {
		margin-bottom: 10px;
	}
	.club_popup_wrap dl {
		display: table;
		line-height: 1.5;
		width: 100%;
	}
	.club_popup_wrap dl + dl {
		margin-top: 5px;
	}

	.club_popup .cmn_board {
		margin-top: 15px;
		padding: 10px;
	}
	.club_popup .cmn_board h5 {
		font-size: 15px;
		margin-bottom: 10px;
	}
	.club_popup .cmn_board dl {
		float: none;
		width: 100%;
	}
	.club_popup .cmn_board dl:nth-of-type(2n) {
		float: none;
		margin-top: 10px;
	}
	.club_popup .cmn_board dt {
		padding: 7px 10px;
	}
	.club_popup .cmn_board dd {
		padding: 7px 10px;
	}
	.club_popup .cmn_board li {
		margin-left: 1.0em;
	}

	.mfp-club.mfp-close-btn-in .mfp-close {
		margin-right: 0;
		top: 4px;
		right: 9%;
	}
	.mfp-club button.mfp-arrow-left {
		margin-left: 0;
		left: 0;
	}
	.mfp-club button.mfp-arrow-right {
		margin-right: 0;
		right: 0;
	}
}

/* 年間行事
--------------------------------------------------------- */
.schedule_list {
	border: 1px solid #eee;
	margin-top: 70px;
}
.schedule_list dl {
	display: table;
	width: 100%;
}
.schedule_list dt {
	background-color: #eee;
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto 62px;
	display: table-cell;
	position: relative;
	text-indent: -9999px;
	width: 180px;
}
.schedule_list dl:nth-of-type(1) dt {background-image: url(../img/life/schedule_ico04.png);}
.schedule_list dl:nth-of-type(2) dt {background-image: url(../img/life/schedule_ico05.png);}
.schedule_list dl:nth-of-type(3) dt {background-image: url(../img/life/schedule_ico06.png);}
.schedule_list dl:nth-of-type(4) dt {background-image: url(../img/life/schedule_ico07.png);}
.schedule_list dl:nth-of-type(5) dt {background-image: url(../img/life/schedule_ico08.png);}
.schedule_list dl:nth-of-type(6) dt {background-image: url(../img/life/schedule_ico09.png);}
.schedule_list dl:nth-of-type(7) dt {background-image: url(../img/life/schedule_ico10.png);}
.schedule_list dl:nth-of-type(8) dt {background-image: url(../img/life/schedule_ico11.png);}
.schedule_list dl:nth-of-type(9) dt {background-image: url(../img/life/schedule_ico12.png);}
.schedule_list dl:nth-of-type(10) dt {background-image: url(../img/life/schedule_ico01.png);}
.schedule_list dl:nth-of-type(11) dt {background-image: url(../img/life/schedule_ico02.png);}
.schedule_list dl:nth-of-type(12) dt {background-image: url(../img/life/schedule_ico03.png);}
.schedule_list dl:nth-of-type(2n) dt {background-color: #fff;}
.schedule_list dt:after {
	content: '';
	background: url(../img/common/ico_arrow_down01.png);
	background-size: contain;
	display: block;
	height: 19px;
	position: absolute;
	bottom: -10px;
	left: 50%;
	-webkit-transform: translateX(-50%);
					transform: translateX(-50%);
	width: 16px;
	z-index: 10;
}
.schedule_list dl:last-child dt:after {
	display: none;
}
.schedule_list dd {
	display: table-cell;
	padding: 20px 20px 10px;
}
.schedule_list dl:nth-of-type(2n) dd {background-color: #eee;}
.schedule_list dd .img {
	margin-bottom: 12px;
}
.schedule_list dd li {
	line-height: 2.0;
}

/*===============================================
  年間行事：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.schedule_list {
		margin-top: 30px;
	}
	.schedule_list dt {
		background-size: auto 30px;
		width: 20%;
	}
	.schedule_list dd {
		padding: 15px 15px 10px;
	}
	.schedule_list dd .img {
		margin-bottom: 10px;
	}
	.schedule_list dd li {
		line-height: 1.8;
		padding-left: 1.3em;
		text-indent: -1.3em;
	}
}

/* 聖学院生の一日/制服紹介
--------------------------------------------------------- */
#day_day {
	padding-top: 20px;
}
#day_uniform {
	margin-top: 100px;
	padding-top: 20px;
}

#day .tit_border {
	margin-bottom: 60px;
}
#day .tit_border:nth-of-type(2) {
	margin-top: 60px;
}

.day_box {
	position: relative;
}
.day_box:after {
	content: '';
	background: url(../img/common/ico_arrow_down01.png);
	background-size: contain;
	display: block;
	height: 19px;
	position: absolute;
	bottom: -40px;
	left: 50%;
	-webkit-transform: translateX(-50%);
					transform: translateX(-50%);
	width: 16px;
	z-index: 10;
}
.day_box:nth-of-type(4):after,
.day_box:nth-of-type(8):after {
	display: none;
}
.day_box + .day_box {
	margin-top: 60px;
}
.day_box h6 {
	background-color: #1d1288;
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto 66px;
	border: 5px solid #dbe7f6;
	border-radius: 50%;
	height: 160px;
	position: absolute;
	top: -35px;
	left: 20px;
	text-indent: -9999px;
	width: 160px;
}
.day_box:nth-of-type(2n) h6 {
	left: auto;
	right: 20px;
}
.day_box:nth-of-type(1) h6 {background-image: url(../img/life/day_time01.png);}
.day_box:nth-of-type(2) h6 {background-image: url(../img/life/day_time02.png);}
.day_box:nth-of-type(3) h6 {background-image: url(../img/life/day_time03.png);}
.day_box:nth-of-type(4) h6 {background-image: url(../img/life/day_time04.png);}
.day_box:nth-of-type(5) h6 {background-image: url(../img/life/day_time05.png);}
.day_box:nth-of-type(6) h6 {background-image: url(../img/life/day_time06.png);}
.day_box:nth-of-type(7) h6 {background-image: url(../img/life/day_time07.png);}
.day_box:nth-of-type(8) h6 {background-image: url(../img/life/day_time08.png);}
.day_box dt {
	background-color: #eef3f9;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
			-ms-flex-direction: column;
					flex-direction: column;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	font-size: 16px;
	font-weight: normal;
	height: 57px;
	line-height: 1.5;
	text-align: center;
}
.day_box dt span {
	color: #1d1288;
	display: block;
	font-size: 12px;
}
.day_box dd {
	border: 3px solid #eef3f9;
	width: 100%;
}

.uniform_box {
	margin-top: 50px;
	overflow: hidden;
}
.uniform_box li {
	float: left;
	text-align: center;
	width: 50%;
}
.uniform_box li img {
	position: relative;
	z-index: 10;
}
.uniform_box li p {
	background-color: #1d1288;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	height: 75px;
	margin-top: -35px;
	padding-top: 30px;
}
.uniform_box li:last-child p {
	background-color: #f8b500;
}

/*===============================================
  聖学院生の一日/制服紹介：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#day_uniform {
		margin-top: 50px;
	}

	#day .tit_border {
		margin-bottom: 40px;
	}
	#day .tit_border:nth-of-type(2) {
		margin-top: 40px;
	}

	.day_box:after {
		bottom: -35px;
	}
	.day_box + .day_box {
		margin-top: 50px;
	}
	.day_box h6 {
		background-size: auto 40px;
		height: 80px;
		top: -25px;
		left: 0;
		width: 80px;
	}
	.day_box:nth-of-type(1) h6 {
		background-size: auto 32px;
	}
	.day_box:nth-of-type(2n) h6 {
		right: 0;
	}
	.day_box dt {
		font-size: 15px;
	}

	.uniform_box {
		margin-top: 30px;
	}
	.uniform_box li img {
		height: 250px;
	}
	.uniform_box li p {
		font-size: 15px;
		height: 55px;
		margin-top: -20px;
		padding-top: 20px;
	}
}

/* 生徒会活動
--------------------------------------------------------- */
.student_list {
	margin-bottom: -2.33%;
}
.student_list li {
	margin: 0 2.33% 2.33% 0;
	width: 23%;
}
.student_list h5 {
	background-color: #eee;
	color: #1d1288;
	font-size: 14px;
	font-weight: bold;
	line-height: 50px;
	margin-bottom: 5px;
	text-align: center;
}

/*===============================================
  生徒会活動：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.student_list {
		margin-bottom: -4%;
	}
	.student_list li {
		margin: 0 4% 4% 0;
		width: 48%;
	}
	.student_list h5 {
		line-height: 40px;
	}
}

/* 施設紹介
--------------------------------------------------------- */
#facilities .anker_menu {
	margin-top: 50px;
}
#facilities .tit_border {
	margin-top: 40px;
}
.facilities_list {
	margin-bottom: -18px;
	overflow: hidden;
}
.facilities_list li {
	background-color: #eee;
	float: left;
	margin-bottom: 18px;
	width: 310px;
}
.facilities_list_single li {
	float: none;
	width: 100%;
}
.facilities_list li:nth-child(2n) {
	float: right;
}
.facilities_list li h5 {
	color: #1d1288;
	font-size: 14px;
	font-weight: bold;
	padding: 15px 15px 10px;
}
.facilities_list li p {
	padding: 0 15px 15px;
}

#facilities .cmn_board {
	margin-top: 50px;
}
#facilities .cmn_board .grid_2col {
	margin-bottom: 25px;
}
#facilities .cmn_board .grid_2col li {
	text-align: left;
}
#facilities .cmn_board .grid_2col img {
	display: block;
	margin-bottom: 10px;
}

/*===============================================
  施設紹介：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#facilities .anker_menu {
		margin: 30px auto -15px;
		max-width: 250px;
	}
	#facilities .anker_menu li {
		margin-bottom: 15px;
	}
	#facilities .anker_menu li:nth-child(4) {
		border-left: 1px solid #d9d9d9;
	}
	#facilities .tit_border {
		margin-top: 30px;
	}
	.facilities_list {
		margin: 0 auto -15px;
		max-width: 310px;
		overflow: hidden;
	}
	.facilities_list li {
		float: none;
		margin-bottom: 15px;
		width: 100%;
	}
	.facilities_list li:nth-child(2n) {
		float: none;
	}

	#facilities .cmn_board .grid_2col {
		margin: 0 auto 25px;
		max-width: 286px;
	}
	#facilities .cmn_board .grid_2col img {
		margin-bottom: 10px;
	}
}



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

	10. 進路情報

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

/* 進路指導
--------------------------------------------------------- */
.lecture_chart {
	background-color: #f9f7ef;
	margin: 25px 0 35px;
	padding: 20px;
}
.lecture_chart h5 {
	color: #1d1288;
	font-size: 14px;
	font-weight: bold;
	margin-bottom: 10px;
}
#lecture .lecture_chart .cmn_table th {
	background-color: #1d1288;
	color: #fff;
	white-space: nowrap;
}
#lecture .lecture_chart .cmn_table td {
	background-color: #fff;
	border-top: 1px solid #f9f7ef;
	border-bottom: 1px solid #f9f7ef;
	text-align: left;
}

.lecture_column_wrap {
	overflow: hidden;
}
.lecture_column_wrap .img {
	float: right;
	width: 240px;
}
.lecture_column_wrap .txt {
	float: left;
	width: 375px;
}

#lecture .tit_border {
	margin-top: 50px;
}
#lecture .lecture_column_wrap + .tit_lead {
	margin-top: 40px;
}

/*===============================================
  進路指導：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.lecture_chart {
		margin: 20px 0 30px;
		padding: 15px;
	}

	.lecture_column_wrap .img {
		float: none;
		margin-bottom: 15px;
		text-align: center;
		width: 100%;
	}
	.lecture_column_wrap .txt {
		float: none;
		width: 100%;
	}

	#lecture .tit_border {
		margin-top: 30px;
	}
	#lecture .lecture_column_wrap + .tit_lead {
		margin-top: 25px;
	}
}

/* 進路実績
--------------------------------------------------------- */
.result_list {
	line-height: 1.5;
	margin-bottom: 10px;
	overflow: hidden;
}
.result_list dt {
	float: left;
	padding: 15px 10px;
	width: 7em;
}
.result_list dd {
	padding: 15px 10px 15px 7em;
}
.result_list dd:nth-of-type(2n+1) {
	background-color: #eee;
}
.result_list dd a {
	position: relative;
}
.result_list dd.result_list_new a:after {
	content: 'NEW!';
	background-color: #f8b500;
	color: #fff;
	display: inline-block;
	font-size: 12px;
	margin-left: 5px;
	padding: 2px;
}

#result .cmn_table {
	table-layout: fixed;
}
#result tr:first-child th:first-child {
	width: 180px;
}
#result tr:nth-child(n+3) th:first-child {
	color: #1d1288;
}

#result .result_img {
	margin: 60px 0 50px;
}
#result .medical_table th {
	background-color: #808080;
}
#result .medical_table tr:nth-child(n+2) th {
	background-color: #e0e0e0;
}
#result .medical_table tr:nth-child(n+3) th:first-child {
	color: #111;
}

/*===============================================
  進路実績：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#result .cmn_table {
		table-layout: auto;
	}
	#result tr:first-child th:first-child {
		width: auto;
	}
	#result .result_img {
		margin: 40px 0 30px;
	}
}

/* OB・保護者の声
--------------------------------------------------------- */
.voice_box {
	background: url(../img/course/voice_bg01.png);
	border: 6px solid #e7f1f4;
	overflow: hidden;
	padding: 20px 25px;
}
.voice_box_parent {
	background: url(../img/course/voice_bg02.png);
	border: 6px solid #f5efe6;
}
.voice_box + .voice_box {
	margin-top: 10px;
}
.voice_box .img {
	float: left;
	line-height: 1.5;
	text-align: center;
	width: 175px;
}
.voice_box.reverse .img {
	float: right;
}
.voice_box .img img {
	border: 6px solid #fff;
	display: block;
	margin: 0 auto 15px;
}
.voice_box .img span {
	font-size: 18px;
}
.voice_box .txt {
	float: right;
	width: 377px;
}
.voice_box.reverse .txt {
	float: left;
}

#voice .tit_dia {
	margin: 20px 0;
	padding-top: 20px;
}

/*===============================================
  OB・保護者の声：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#voice .anker_menu {
		max-width: 300px;
	}
	#voice .anker_menu li + li {
		border-left: 1px solid #d9d9d9;
		margin-top: 15px;
	}
	.voice_box {
		padding: 10px 15px;
	}
	.voice_box .img {
		float: none;
		margin-bottom: 10px;
		width: 100%;
	}
	.voice_box.reverse .img {
		float: none;
	}
	.voice_box .img img {
		margin-bottom: 10px;
	}
	.voice_box .img span {
		font-size: 16px;
	}
	.voice_box .txt {
		float: none;
		width: 100%;
	}
	.voice_box.reverse .txt {
		float: none;
	}
}



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

	11. 入試情報

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

/* 学校説明会
--------------------------------------------------------- */
#info .tit_border_wrap {
	position: relative;
}
#info .info_btn {
	height: 128px;
	position: absolute;
	top: -65px;
	right: 0;
	width: 128px;
}
#info .info_btn a {
	background: url(../img/exam/info_img01.jpg) center no-repeat;
	border: 4px solid #d8d8d8;
	border-radius: 50%;
	color: #fff;
	display: block;
	font-weight: bold;
	height: 100%;
	line-height: 1.5;
	padding: 42px 0 0 20px;
	position: relative;
	text-decoration: none;
	text-shadow: 1px 1px 8px #715200;
	width: 100%;
}
#info .info_btn a:before {
	content: '';
	border: 3px solid transparent;
	border-left: 3px solid #fff;
	display: block;
	height: 0;
	margin-top: -3px;
	position: absolute;
	top: 50%;
	left: 12px;
	width: 0;
}
.layout_pc #info .info_btn a:hover {
	opacity: 0.8;
}

.briefing_caution {
	margin: 25px 0 20px;
}
.briefing_caution li {
	line-height: 1.5;
	padding-left: 1.0em;
	text-indent: -1.0em;
}

.briefing_explain {
	margin-bottom: 10px;
	text-align: right;
}
.briefing_explain span {
	display: inline-block;
	line-height: 32px;
	padding-right: 40px;
}
.briefing_explain span + span {
	margin-left: 10px;
}
.briefing_explain .ico_returnee {
	background: url("../img/exam/info_ico_returnee01.png") right center no-repeat;
	color: #25a21b;
}
.briefing_explain .ico_thinking {
	background: url("../img/exam/info_ico_thinking01.png") right center no-repeat;
	color: #de9153;
}
.briefing_explain .ico_food {
	background: url("../img/exam/info_ico_food01.png") right center no-repeat;
	color: #4ea3c2;
}

.briefing_list > dt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: stretch;
			-ms-flex-align: stretch;
					align-items: stretch;
	margin-bottom: 1px;
	width: 100%;
}
.briefing_list > dd + dt {
	margin-top: 4px;
}
.briefing_list > dd {
	line-height: 1.5;
}
.briefing_list .date {
	background-color: #1d1288;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	font-weight: bold;
	line-height: 1.3;
	min-height: 42px;
	padding: 7px 0.2em 7px 0.7em;
	width: 22%;
}
.briefing_title_wrap {
	background-color: #eee;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	min-height: 42px;
	-webkit-box-pack: justify;
			-ms-flex-pack: justify;
					justify-content: space-between;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	width: 79%;
}
.briefing_list .title {
	background-color: #eee;
	font-weight: bold;
	line-height: 1.3;
	padding: 7px 15px;
}
.briefing_list .title a {
	color: #1d1288;
	padding-left: 18px;
	text-indent: 0;
}
.briefing_list .title a:before {
	border-width: 6px;
	margin-right: 7px;
	position: absolute;
	top: 2px;
	left: 0;
	z-index: 10;
}
.briefing_list .title a:after {
	content: '';
	background-color: #1d1288;
	height: 19px;
	position: absolute;
	top: -2px;
	left: -7px;
	width: 19px;
	z-index: 1;
}
.briefing_list .ico {
	background-color: #eee;
	height: 42px;
	padding: 7px 10px;
	text-align: right;
}
.briefing_list i {
	background-size: contain;
	display: inline-block;
	height: 28px;
	vertical-align: top;
	width: 28px;
}
.briefing_list i + i {
	margin-left: 6px;
}
.briefing_list .ico_returnee {background-image: url("../img/exam/info_ico_returnee01.png");}
.briefing_list .ico_thinking {background-image: url("../img/exam/info_ico_thinking01.png");}
.briefing_list .ico_food {background-image: url("../img/exam/info_ico_food01.png");}

.briefing_info {
	background-color: #eee;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
			flex-wrap: wrap;
	-webkit-box-align: stretch;
			-ms-flex-align: stretch;
					align-items: stretch;
	overflow: hidden;
	padding: 10px 10px 6px;
}
.briefing_info dt {
	background-color: #dfddec;
	color: #1d1288;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
			-ms-flex-pack: center;
					justify-content: center;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	font-weight: bold;
	margin-bottom: 4px;
	padding: 5px 10px;
	width: 15%;
}
.briefing_info dt:nth-of-type(even) {
	margin-left: 0.6%;
}
.briefing_info dd {
	background-color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	margin-bottom: 4px;
	padding: 5px 10px;
	width: 34.7%;
}
.briefing_info dd:last-child {
	width: 85%;
}
.briefing_info li {
	padding-left: 1.0em;
	text-indent: -1.0em;
}
.briefing_info li:before {
	content: '■';
	font-size: 10px;
	margin-right: 0.2em;
}
.briefing_info li.caution:before {
	content: '※';
	font-size: 13px;
	margin-right: 0;
}

#info .cmn_table th,
#info .cmn_table td {
	padding: 10px 5px;
}
#info .cmn_table .em {
	color: #f00;
}
#info .cmn_table .time {
	display: block;
	margin-top: 5px;
}
#info .cmn_table td {
	padding: 10px;
	text-align: left;
}
#info .cmn_table td:first-child {
	background-color: #dfddec;
	font-weight: bold;
	white-space: nowrap;
}
#info .cmn_table td:nth-child(2) {
	font-weight: bold;
}
#info .cmn_table li {
	line-height: 1.5;
}
#info .cmn_table p {
	line-height: 1.5;
}

#info .cram_table td:nth-child(n+2):nth-child(-n+3) {
	white-space: nowrap;
}
#info .outside_table td:nth-child(n+3) {
	white-space: nowrap;
}
#info .table_caution {
	margin-top: 10px;
}
#info .table_caution li {
	line-height: 1.5;
	padding-left: 1.0em;
	text-indent: -1.0em;
}

/*===============================================
  学校説明会：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#info .tit_border_wrap {
		position: relative;
	}
	#info .info_btn {
		height: 70px;
		margin: 15px auto;
		position: static;
		width: 250px;
	}
	#info .info_btn a {
		border: 3px solid #d8d8d8;
		border-radius: 0;
		height: 70px;
		line-height: 70px;
		padding: 0;
		text-align: center;
	}
	#info .info_btn a:before {
		display: inline-block;
		margin-top: 0;
		margin-right: 7px;
		position: static;
		vertical-align: middle;
	}

	.briefing_explain span {
		line-height: 1.3;
		padding-right: 37px;
	}
	.briefing_explain span + span {
		margin-left: 7px;
	}

	.briefing_list > dt {
		display: block;
	}
	.briefing_list .date {
		display: block;
		min-height: auto;
		padding-left: 15px;
		text-align: left;
		width: 100%;
	}
	.briefing_title_wrap {
		display: table;
		min-height: auto;
		width: 100%;
	}
	.briefing_list .title {
		display: table-cell;
		padding: 7px 12px;
		vertical-align: middle;
	}
	.briefing_list .ico {
		display: table-cell;
		padding-left: 0;
		vertical-align: middle;
		white-space: nowrap;
	}

	.briefing_info dt {
		width: 33%;
	}
	.briefing_info dt:nth-of-type(even) {
		margin-left: 0;
	}
	.briefing_info dd {
		width: 67%;
	}
	.briefing_info dd:last-child {
		width: 67%;
	}

	#info .cmn_table th,
	#info .cmn_table td {
		padding: 10px;
	}
	#info tr:first-child th:first-child {
		width: auto;
	}
}

/* 思考力セミナー
--------------------------------------------------------- */
.seminar_step {
	background-color: #eee;
	padding: 20px 25px 15px;
	position: relative;
}
.seminar_step:after {
	content: '';
	border: 10px solid transparent;
	border-top: 10px solid #1d1288;
	border-left: 10px solid #1d1288;
	display: block;
	height: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
}
.seminar_step + .seminar_step {
	margin-top: 10px;
}
.seminar_step h5 {
	color: #1d1288;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 15px;
}
.seminar_step .grid_2col {
	margin-bottom: 10px;
}

.seminar_movie a {
	outline: none;
}
.mfp-close-btn-in .mfp-iframe-scaler .mfp-close {
	background-color: #fff;
	color: #111;
	font-size: 40px;
	height: 36px;
	line-height: 36px;
	right: 0;
	width: 36px;
}

.seminar_relation h5 {
	color: #1d1288;
	font-size: 13px;
	font-weight: bold;
	margin-bottom: 15px;
	text-align: center;
}
.seminar_relation a {
	border: 1px solid #dfdfdf;
	display: inline-block;
}

#seminar .cmn_table td {
	text-align: left;
}

/*===============================================
  思考力セミナー：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.seminar_step {
		padding: 15px;
	}
	.seminar_step h5 {
		font-size: 16px;
	}
	.seminar_step .grid_2col {
		margin-bottom: 10px;
	}
}

/* 募集要項
--------------------------------------------------------- */
#guide .cmn_btn_yellow p + p {
	margin-top: 10px;
}

.guide_box {
	background: url(../img/exam/guide_img01.jpg) left center no-repeat;
	line-height: 2.0;
	margin: 30px 0 20px;
	min-height: 144px;
	padding: 10px 0 0 155px;
}
.guide_box li {
	padding-left: 1.0em;
	text-indent: -1.0em;
}

#guide .cmn_board {
	margin: 25px 0;
}
#guide .cmn_board li {
	list-style: disc;
	margin-left: 1.2em;
}

/*===============================================
  募集要項：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.guide_box {
		background-position: center top;
		line-height: 1.7;
		min-height: 144px;
		padding: 160px 0 0 0;
	}
}

/* 出願状況
--------------------------------------------------------- */
#application h3 + p {
	margin-bottom: 30px;
}
#application .cmn_table {
	line-height: 1.5;
	width: 100%;
}
#application .cmn_table th {
	background-color: #1d1288;
	border: 1px solid #fff;
	color: #fff;
	padding: 10px;
	text-align: center;
}
#application .cmn_table tr:nth-child(n+2) th {
	background-color: #dfddec;
	color: #111;
}
#application .cmn_table td {
	background-color: #eee;
	border: 1px solid #fff;
	padding: 10px;
	text-align: center;
	vertical-align: middle;
}
#application .cmn_table tfoot th {
	background-color: #eee;
	color: #000;
	font-weight: normal;
}
#application .cmn_table tr:nth-child(-n+3) td,
#application .cmn_table th:first-child,
#application .cmn_table td:first-child {
	background-color: #dfddec;
	color: #000;
}
#application .cmn_table td:first-child {
	white-space: nowrap;
}
#application .cmn_table tr:first-child td:nth-child(n+3) {
	background-color: #1d1288;
	color: #fff;
	font-weight: bold;
}

/* 入試結果
--------------------------------------------------------- */
#exam_result .cmn_table th,
#exam_result .cmn_table td {
	padding: 5px;
}
#exam_result tr:nth-child(2) td {
	background-color: #dfddec;
	color: #000;
}
#exam_result tr:first-child th,
#exam_result th:first-child {
	white-space: nowrap;
}
#exam_result .table_wrapper + p {
	margin-top: 10px;
	padding-left: 1.0em;
	text-indent: -1.0em;
}

/*===============================================
  入試結果：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.guide_box {
		background-position: center top;
		line-height: 1.7;
		min-height: 144px;
		padding: 160px 0 0 0;
	}
}

/* 過去問ダウンロード
--------------------------------------------------------- */
#download h3 + p {
	margin-bottom: 30px;
}
.download_list + .download_list {
	margin-top: 25px;
}
.download_list dt {
	font-weight: bold;
	margin-bottom: 10px;
	position: relative;
}
.download_list dt:before {
	content: '●';
	font-size: 10px;
	margin-right: 4px;
	position: relative;
	top: -1px;
	vertical-align: middle;
}
.download_list ul {
	margin-bottom: -1%;
	overflow: hidden;
}
.download_list ul + ul {
	margin-top: 1%;
}
.download_list li {
	float: left;
	margin: 0 0.3% 1% 0;
	width: 24.7%;
}
.download_list .download_double {
	width: 49.7%;
}
.download_list li:nth-child(4n) {
	margin-right: 0;
}
.download_list li a {
	background-color: #eee;
	border: 2px solid #f6f6f6;
	color: #111;
	display: block;
	height: 100%;
	padding: 7px 5px;
	text-align: center;
	text-decoration: none;
	width: 100%;
}
.download_list .download_answer a {
	background-color: #e6f9f9;
	border-color: #f2fbfb;
}
.layout_pc .download_list li a:hover {
	opacity: 0.8;
}

.download_reader {
	display: table;
	margin-top: 50px;
	overflow: hidden;
	padding: 20px;
}
.download_reader p {
	display: table-cell;
	vertical-align: middle;
}
.download_reader .txt {
	padding-left: 20px;
}

/*===============================================
  過去問ダウンロード：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#download h3 + p {
		margin-bottom: 25px;
	}
	.download_list li {
		margin: 0 1% 1% 0;
		width: 49.5%;
	}
	.download_list .download_double {
		width: 100%;
	}
	.download_list li:nth-child(2n) {
		margin-right: 0;
	}
	.download_list li a {
		padding: 7px 0px;
	}

	.download_reader {
		display: none;
	}
}

/* 転編入について
--------------------------------------------------------- */
#transfer h3 + p {
	margin-bottom: 30px;
}
.transfer_table {
	margin-top: 15px;
}
.transfer_table tr:first-child th {
	background-color: #dfddec;
	color: #111;
}
.transfer_table th,
.transfer_table td {
	text-align: left;
}
.transfer_list li {
	line-height: 2.0;
	list-style: decimal;
	margin-left: 1.5em;
}

/*===============================================
  転編入について：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.transfer_table th {
		white-space: nowrap;
	}
}



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

	12. 帰国生の方へ

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

/* 帰国生入試
--------------------------------------------------------- */
.guide_caution {
	color: #f00;
	margin-bottom: 15px;
}
.guide_caption {
	margin: 40px 0 5px;
}

#returnee_guide .cmn_btn_yellow p + p {
	margin-top: 10px;
}
#returnee_guide .guide_box {
	background: url(../img/returnee/guide_img01.jpg) left center no-repeat;
	min-height: 146px;
	padding: 50px 0 0 155px;
}

/* 帰国生転編入について
--------------------------------------------------------- */
.transfer_right {
	margin-top: 10px;
	line-height: 2.0;
}
.transfer_right dt {
	color: #1d1288;
	font-weight: bold;
}
.transfer_right dd {
	padding-left: 2.5em;
	text-indent: -2.5em;
}

/* 帰国生レポート
--------------------------------------------------------- */
.report_list {
	margin-top: 30px;
}
.report_list li {
	background: url(../img/returnee/report_bg01.png);
	overflow: hidden;
	padding: 20px;
}
.report_list li + li {
	margin-top: 10px;
}
.report_img {
	border: 6px solid #fff;
	width: 210px;
}
.report_list li:nth-child(odd) .report_img {float: left;}
.report_list li:nth-child(even) .report_img {float: right;}
.report_txt {
	width: 370px;
}
.report_list li:nth-child(odd) .report_txt {float: right;}
.report_list li:nth-child(even) .report_txt {float: left;}
.report_txt h5 {
	color: #f8b500;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 10px;
	padding-top: 5px;
}
.report_txt p {
	color: #fff;
}

/*===============================================
  帰国生レポート：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.report_list {
		margin-top: 25px;
	}
	.report_list li {
		padding: 15px;
	}
	.report_img {
		border: 4px solid #fff;
		margin: 0 auto 10px;
		max-width: 210px;
		width: 100%;
	}
	.report_list li:nth-child(odd) .report_img {float: none;}
	.report_list li:nth-child(even) .report_img {float: none;}
	.report_txt {
		width: 100%;
	}
	.report_list li:nth-child(odd) .report_txt {float: none;}
	.report_list li:nth-child(even) .report_txt {float: none;}
	.report_txt h5 {
		margin-bottom: 10px;
	}
}



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

	13. 在校生・保護者の方へ

--------------------------------------------------------- */
.result_list_archive {
	margin-bottom: 60px;
}
.result_list_archive a {
	margin: 0 auto;
	max-width: 618px;
}
#current .current_table_first {
	table-layout: fixed;
}
#current .current_table_first th,
#current .current_table_first td {
	text-align: left;
}
#current .current_table_second tr:nth-child(2) th {
	background-color: #1d1288;
	color: #fff;
}

#current .cmn_board_wrap {
	margin-top: 25px;
}
#current .cmn_board_wrap .cmn_board {
	padding: 20px;
}
#current .cmn_btn_yellow {
	max-width: 270px;
}

/*===============================================
  在校生・保護者の方へ：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#current .current_table_first {
		table-layout: auto;
	}
	#current .cmn_board_wrap .cmn_board {
		padding: 15px;
	}
}



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

	14. 卒業生の方へ

--------------------------------------------------------- */
#graduates .caution {
	color: #f00;
}
#graduates .cmn_table tr:nth-child(2) th {
	background-color: #1d1288;
	color: #fff;
}
#graduates .cmn_table .sub {
	font-size: 12px;
}

#graduates .tit_lead {
	margin-top: 30px;
	margin-bottom: 10px;
}

.graduates_list {
	display: table;
	line-height: 1.5;
	margin: 10px 0;
	width: 100%;
}
.graduates_list + .graduates_list {
	margin-top: 5px;
}
.graduates_list dt {
	background-color: #1d1288;
	border: 1px solid #1d1288;
	color: #fff;
	display: table-cell;
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
	width: 130px;
}
.graduates_list dd {
	border: 1px solid #1d1288;
	display: table-cell;
	padding: 10px 15px;
	vertical-align: middle;
}
.graduates_list ol li {
	list-style: decimal;
	margin-left: 1.5em;
}
.graduates_list_caution li {
	line-height: 1.5;
	padding-left: 1.0em;
	text-indent: -1.0em;
}
.graduates_list_caution li + li {
	margin-top: 5px;
}

#graduates .cmn_board_wrap {
	margin-top: 30px;
}
#graduates .cmn_board_wrap .cmn_board {
	padding: 20px;
}
#graduates .cmn_btn_yellow {
	max-width: 270px;
}

/*===============================================
  卒業生の方へ：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.graduates_list {
		display: block;
	}
	.graduates_list dt {
		display: block;
		width: 100%;
	}
	.graduates_list dd {
		display: block;
	}
}



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

	15. アクセス

--------------------------------------------------------- */
#access .tit_border_wrap {
	overflow: hidden;
	position: relative;
}
.access_map {
	border: 6px solid #eee;
	float: right;
	padding: 24px;
	width: 660px;
}
.access_info {
	float: left;
	width: 270px;
}
.access_info dl {
	background-color: #eee;
	margin-bottom: 10px;
	line-height: 2.0;
	padding: 15px;
}
.access_info dt {
	color: #1d1288;
	font-weight: bold;
}
.access_info ul {
	background-color: #eee;
	line-height: 2.0;
	margin-bottom: 10px;
	padding: 15px;
}
.access_info li {
	padding-left: 1.0em;
	text-indent: -1.0em;
}
.access_info li span {
	color: #f00;
	font-weight: bold;
}

.access_btn_pdf {
	max-width: 270px;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
}
.access_list {
	margin-bottom: -20px;
}
.access_list li {
	background-color: #eee;
	counter-increment: map;
	margin-bottom: 20px;
	padding: 6px;
}
.access_list li p {
	line-height: 1.7;
	padding: 8px 10px 3px 46px;
	position: relative;
}
.access_list li p:after {
	content: counter(map);
	background-color: #1d1288;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	height: 36px;
	line-height: 36px;
	position: absolute;
	top: 8px;
	left: 0;
	text-align: center;
	width: 36px;
}

/*===============================================
  アクセス：印刷
===============================================*/
@media print {
	#access header,
	#access footer,
	#access .cmn_mv,
	#access .no-print {
		display: none;
	}
}

/*===============================================
  アクセス：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.access_map {
		border: 4px solid #eee;
		float: none;
		margin-bottom: 15px;
		padding: 6px;
		width: 100%;
	}
	.access_info {
		float: none;
		width: 100%;
	}

	.access_btn_pdf {
		max-width: inherit;
		margin: 0 auto 25px;
		position: static;
	}
	.access_list {
		margin-bottom: -15px;
	}
	.access_list li {
		margin-bottom: 15px;
	}
	.access_list li p {
		padding: 8px 10px 3px 40px;
	}
	.access_list li p:after {
		height: 30px;
		line-height: 30px;
		width: 30px;
	}
}

/*===============================================
  アクセス：375px未満
===============================================*/
@media screen and (max-width:374px) {
	.access_list li {
		float: none;
		margin: 0 auto 15px;
		max-width: 218px;
		min-height: 212px;
		width: 100%;
	}
	.access_list li:nth-child(2n) {
		margin-right: auto;
	}
	.access_list li p {
		padding: 8px 10px 3px 40px;
	}
	.access_list li p:after {
		height: 30px;
		line-height: 30px;
		width: 30px;
	}
}



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

	16. お問い合わせ

--------------------------------------------------------- */
#inquiry .form_message {
	margin: 30px 0;
}

form .require {
	color: #f00;
}
form ul.error {
	margin: -20px 0 30px;
}
form ul.error li {
	color: #f00;
	line-height: 1.7;
	list-style: disc;
	margin-left: 1.5em;
}
.form_table caption {
	margin-bottom: 5px;
	text-align: left;
}
.form_table th {
	background-color: #dfddec;
	color: #111;
	height: 52px;
	text-align: left;
	width: 180px;
}
.form_table td {
	text-align: left;
}
.form_table input[type="text"] {
	border: 1px solid #d8d8d8;
	max-width: 340px;
	padding: 5px;
	width: 100%;
}
.form_table select {
	font-size: 13px;
}
.form_table textarea {
	border: 1px solid #d8d8d8;
	height: 240px;
	padding: 5px;
	resize: none;
	width: 100%;
}
.form_btn_submit {
	background-color: #eee;
	margin: 0 auto;
	padding: 20px;
	text-align: center;
	width: calc(100% - 2px);
}
.form_btn_submit input[type="submit"] {
	background-color: #1d1288;
	border: 4px solid #5148a6;
	color: #fff;
	display: inline-block;
	font-size: 16px;
	font-weight: bold;
	height: 60px;
	max-width: 270px;
	position: relative;
	text-align: center;
	width: 60%;
}
.layout_pc .form_btn_submit input[type="submit"]:hover {
	opacity: 0.8;
}

.form_btn_back {
	background-color: #555;
	border: 4px solid #888;
	color: #fff;
	display: inline-block;
	font-size: 16px;
	font-weight: bold;
	height: 60px;
	line-height: 52px;
	max-width: 135px;
	text-align: center;
	text-decoration: none;
	vertical-align: top;
	width: 30%;
}
.form_btn_back:hover {
	color: #fff;
	opacity: 0.8;
}

/*===============================================
  お問い合わせ：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.form_table {
		table-layout: fixed;
	}
	.form_table th {
		padding: 10px 5px;
		width: 6em;
	}
	.form_table input[type="text"],
	.form_table textarea,
	.form_btn_submit input[type="submit"] {
		border-radius: 0 !important;
	}
}



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

	17. 資料請求

--------------------------------------------------------- */
.request_caution {
	background-color: #eee;
	margin: 10px 0 40px;
	padding: 15px;
}

#request .form_message {
	margin-top: 30px;
	padding-bottom: 30px;
}
#request .check_list {
	margin: 5px 0 10px;
}
#request .check_list li + li,
#request .radio_list li + li {
	margin-top: 5px;
}

/*===============================================
  資料請求：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#request .form_table th {
		width: 7em;
	}
}



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

	18. English

--------------------------------------------------------- */
.english_box {
	background-color: #faf6e8;
	border: 3px solid #824d29;
	padding: 35px 40px;
}
.english_box_inner {
	overflow: hidden;
}
.english_box h4 {
	border-left: 1px solid #794a2b;
	color: #794a2b;
	display: inline-block;
	float: left;
	font-size: 16px;
	line-height: 1.5;
	margin-bottom: 25px;
	padding-left: 15px;
	width: 560px;
}
.english_box .reverse h4 {
	float: right;
}
.english_img_left {
	color: #824d29;
	float: left;
	font-size: 16px;
	padding-right: 20px;
	text-align: center;
	width: 300px;
}
.english_img_left img {
	margin-bottom: 10px;
}
.english_img_right {
	float: right;
	padding-left: 20px;
	width: 300px;
}
.english_box_inner .txt {
	float: left;
	width: 560px;
}
.english_box_inner.reverse .txt {
	float: right;
}
.english_box_inner:nth-of-type(2) {
	margin-top: 40px;
}
.english_address {
	background-color: #fff;
	float: right;
	margin-top: 40px;
	padding: 20px;
	width: 560px;
}
.english_address h5 {
	color: #824d29;
	font-size: 14px;
	margin-bottom: 10px;
}

/*===============================================
  English：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.english_box {
		border: 2px solid #824d29;
		padding: 20px;
	}
	.english_box h4 {
		float: none;
		font-size: 15px;
		width: 100%;
	}
	.english_box .reverse h4 {
		float: none;
	}
	.english_img_left {
		float: none;
		font-size: 14px;
		margin-bottom: 10px;
		padding-right: 0;
		width: 100%;
	}
	.english_img_left img {
		margin-bottom: 10px;
	}
	.english_img_right {
		float: none;
		margin-bottom: 15px;
		padding-left: 0;
		text-align: center;
		width: 100%;
	}
	.english_box_inner .txt {
		float: none;
		width: 100%;
	}
	.english_box_inner.reverse .txt {
		float: none;
	}
	.english_address {
		float: none;
		margin-top: 20px;
		padding: 15px;
		width: 100%;
	}
	.english_address h5 {
		line-height: 1.5;
	}
}



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

	19. よくある質問

--------------------------------------------------------- */
.faq_list dt {
	background-color: #eee;
	color: #1d1288;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
	min-height: 88px;
	padding: 20px 20px 20px 70px;
	position: relative;
	width: 100%;
}
.faq_list dd + dt {
	margin-top: 10px;
}
.faq_list dt:after,
.faq_list dd:after {
	content: 'Q';
	background-color: #1d1288;
	color: #fff;
	font-size: 26px;
	height: 40px;
	line-height: 40px;
	position: absolute;
	top: 24px;
	left: 20px;
	text-align: center;
	width: 40px;
}
.faq_list dd {
	border: 1px solid #eee;
	color: #333;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
			-ms-flex-align: center;
					align-items: center;
	line-height: 1.7;
	min-height: 88px;
	padding: 20px 20px 20px 70px;
	position: relative;
}
.faq_list dd:after {
	content: 'A';
	background-color: #565656;
	font-weight: bold;
}

/*===============================================
  よくある質問：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.faq_list dt {
		font-size: 14px;
		min-height: auto;
		padding: 10px 10px 10px 55px;
	}
	.faq_list dt:after,
	.faq_list dd:after {
		font-size: 20px;
		height: 35px;
		line-height: 35px;
		top: 12px;
		left: 10px;
		width: 35px;
	}
	.faq_list dd {
		min-height: auto;
		padding: 10px 10px 10px 55px;
	}
}



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

	20. サイトポリシー

--------------------------------------------------------- */
#sitepolicy .cmn_board {
	margin-top: 15px;
	padding: 20px;
}

/*===============================================
  サイトポリシー：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#sitepolicy .cmn_board {
		padding: 15px;
	}
}



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

	21. サイトマップ

--------------------------------------------------------- */
.sitemap_list > li {
	margin-right: 3%;
	margin-bottom: 50px;
	width: 31%;
}
.sitemap_list dt {
	background-color: #1d1288;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 15px;
	padding: 10px 15px;
	text-align: left;
}
.sitemap_list ol li,
.sitemap_list_sub ol li {
	line-height: 1.5;
	text-align: left;
}
.sitemap_list ol li + li,
.sitemap_list_sub ol li + li {
	margin-top: 15px;
}
.sitemap_list ol li a,
.sitemap_list_sub ol li a {
	font-weight: bold;
	position: relative;
	text-decoration: none;
}
.sitemap_list ol .sitemap_list_lower a {
	padding-left: 15px;
}
.sitemap_list ol li a:before,
.sitemap_list_sub ol li a:before {
	content: '';
	border: 3px solid transparent;
	border-left: 3px solid #f7b500;
	display: inline-block;
	height: 0;
	margin: 0 5px 0 2px;
	position: relative;
	top: -2px;
	vertical-align: middle;
	width: 0;
}
.sitemap_list ol .sitemap_list_lower a:before {
	border: 2px solid #f7b500;
	margin-right: 7px;
}
.sitemap_nolink:before {
	border-left-color: #888;
}
.layout_pc .sitemap_list ol li a:hover,
.layout_pc .sitemap_list_sub ol li a:hover {
	text-decoration: underline;
}

.sitemap_list_sub {
	border-top: 1px solid #1d1288;
	border-bottom: 1px solid #1d1288;
	overflow: hidden;
	padding: 30px 0;
}

/*===============================================
  サイトマップ：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.sitemap_list > li {
		margin-bottom: 30px;
		width: 100%;
	}
	.sitemap_list_sub > li + li {
		margin-top: 15px;
	}
}

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

	22. 404エラー

--------------------------------------------------------- */
#error404 .contents_wide p + p {
	margin-top: 1.0em;
}
#error404 .cmn_btn_wrap {
	margin: 1.5em auto 0;
}
#error404 .cmn_btn {
	margin: 0 auto;
	max-width: 270px;
}



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

	23. お知らせ等（WP系）

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

/* アーカイブ
--------------------------------------------------------- */
.archive_list li {
	background-color: #f9f9f9;
	display: table;
	line-height: 1.7;
	padding: 15px 20px;
	width: 100%;
}
.archive_list li + li {
	margin-top: 2px;
}
.archive_date {
	display: table-cell;
	vertical-align: middle;
	width: 7em;
}
.archive_title {
	display: table-cell;
	position: relative;
	vertical-align: middle;
}
.archive_new .archive_title:after {
	content: 'NEW!';
	background-color: #f8b500;
	color: #fff;
	margin-left: 10px;
	padding: 3px;
}

/*===============================================
  アーカイブ：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.archive_list li {
		padding: 10px;
	}
	.archive_date {
		width: 6.5em;
	}
}

/* ページネーション
--------------------------------------------------------- */
.wp-pagenavi {
	margin-top: 30px;
	text-align: center;
}
.wp-pagenavi a,
.wp-pagenavi span {
	background-color: #eee;
	border: none;
	display: inline-block;
	margin: 2px;
	padding: 8px 10px;
	text-decoration: none;
}
.wp-pagenavi span.current {
	background-color: #1d1288;
	color: #fff;
	font-weight: bold;
}

/*===============================================
  ページネーション：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.wp-pagenavi {
		margin-top: 25px;
	}
}

/* 記事詳細
--------------------------------------------------------- */
#news_single .news_date {
	font-size: 15px;
	margin-top: -10px;
}
#news_single .contents_main h4 {
	background-color: #f9f9f9;
	border-bottom: 1px dotted #1d1288;
	color: #1d1288;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	text-indent: -0.5em;
	padding: 20px;
}
#news_single .news_box {
	background-color: #f9f9f9;
	padding: 20px;
}
#news_single .news_box p + p {
	margin-top: 1.5em;
}

#news_single .news_box .gallery {
	margin: 15px auto 25px;
	overflow: hidden;
}
#news_single .news_box .gallery a {
	outline: none;
}
#news_single .news_box .gallery img {
	border: 2px solid #cfcfcf;
}
#news_single .news_box .gallery .gallery-caption {
	line-height: 1.5;
	margin: 5px auto 0;
	max-width: 150px;
	padding: 0 5px;
}
#news_single .news_box .gallery-item {
	float: left;
	margin-top: 10px;
	text-align: center;
}
#news_single .news_box .gallery-columns-2 .gallery-item {
	margin-right: 2%;
	width: 49%;
}
#news_single .news_box .gallery-columns-2 .gallery-item:nth-of-type(2n) {
	margin-right: 0;
}
#news_single .news_box .gallery-columns-3 .gallery-item {
	margin-right: 2%;
	width: 32%;
}
#news_single .news_box .gallery-columns-3 .gallery-item:nth-of-type(3n) {
	margin-right: 0;
}
#news_single .news_box .gallery-columns-4 .gallery-item {
	margin-right: 1.33%;
	width: 24%;
}
#news_single .news_box .gallery-columns-4 .gallery-item:nth-of-type(4n) {
	margin-right: 0;
}
#news_single .news_box .gallery-columns-5 .gallery-item {
	margin-right: 1%;
	width: 19.2%;
}
#news_single .news_box .gallery-columns-5 .gallery-item:nth-of-type(5n) {
	margin-right: 0;
}
#news_single .news_box .gallery-columns-6 .gallery-item {
	margin-right: 0.8%;
	width: 16%;
}
#news_single .news_box .gallery-columns-6 .gallery-item:nth-of-type(6n) {
	margin-right: 0;
}

/*===============================================
  記事詳細：768px未満
===============================================*/
@media screen and (max-width:767px) {
	#news_single .news_date {
		margin-top: -5px;
		margin-bottom: 3px;
	}
	#news_single .contents_main h4 {
		font-size: 15px;
		padding: 15px;
	}
	#news_single .news_box {
		padding: 15px;
	}
	#news_single .news_box p + p {
		margin-top: 1.0em;
	}
	#news_single .news_box .gallery {
		margin: 10px auto 20px;
		max-width: 310px;
	}
	#news_single .news_box .gallery .gallery-item {
		margin-right: 2%;
		width: 49%;
	}
	#news_single .news_box .gallery-columns-3 .gallery-item:nth-of-type(3n),
	#news_single .news_box .gallery-columns-4 .gallery-item:nth-of-type(4n),
	#news_single .news_box .gallery-columns-5 .gallery-item:nth-of-type(5n),
	#news_single .news_box .gallery-columns-6 .gallery-item:nth-of-type(6n) {
		margin-right: 2%;
	}
	#news_single .news_box .gallery-columns-3 .gallery-item:nth-of-type(2n),
	#news_single .news_box .gallery-columns-4 .gallery-item:nth-of-type(2n),
	#news_single .news_box .gallery-columns-5 .gallery-item:nth-of-type(2n),
	#news_single .news_box .gallery-columns-6 .gallery-item:nth-of-type(2n) {
		margin-right: 0;
	}
	#news_single .news_box br[style="clear: both"] {
		display: none;
	}
}

/* 説明会情報テンプレート
--------------------------------------------------------- */
#news_single .news_box h3,
.news_bf_tit {
	background-color: #1d1288;
	color: #fff;
	display: inline-block;
	font-size: 14px;
	font-weight: bold;
	margin: 25px 0 10px;
	padding: 5px 10px;
}
#news_single .news_box h3:first-child,
.news_bf_tit:first-child {
	margin-top: 0;
}
#news_single .news_briefing_box p + p {
	margin-top: 0.6em;
}

.news_bf_app {
	margin-bottom: 10px;
	overflow: hidden;
}
.news_bf_app li {
	float: left;
	max-width: 160px;
	width: 49%;
}
.news_bf_app li + li {
	margin-left: 2%;
}
.news_bf_app a {
	font-size: 12px;
	padding: 5px;
}
.news_bf_app a:before {
	margin: -3px 0 0;
	position: absolute;
	top: 50%;
	right: 5px;
}
.news_bf_app a span {
	display: block;
	font-size: 16px;
}
.news_bf_caution {
	color: #f00;
	margin-top: 0 !important;
}
.news_bf_pumph img {
	max-height: 300px;
}
.news_bf_access:before {
	content: '>';
	margin-right: 3px;
}

/*===============================================
  校長ブログ：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.news_bf_app a {
		font-size: 10px;
	}
	.news_bf_app a:before {
		right: 2px;
	}
	.news_bf_app a span {
		font-size: 14px;
	}
}

/* SEIGアルバム
--------------------------------------------------------- */
.album_list {
	margin-bottom: -20px;
}
.album_list li {
	background-color: #eee;
	margin-bottom: 20px;
}
.album_list li .album_photo {
	height: 110px;
	overflow: hidden;
	position: relative;
	width: 100%;
}
.album_list li .album_photo img {
	height: 100%;
	max-width: inherit;
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
					transform: translateX(-50%);
	width: auto;
}
.album_list li .album_date {
	line-height: 1.5;
	padding: 10px 10px 0;
}
.album_list li .album_title {
	line-height: 1.5;
	padding: 5px 10px 10px;
}



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

	24. 校長ブログ

--------------------------------------------------------- */
.blogs_list li + li {
	margin-top: 25px;
}
.blogs_date {
	font-size: 15px;
	margin-top: -10px;
}
.blogs_box {
	box-shadow: 2px 2px 0 rgba(1,1,1,0.2);
}
.blogs_box dt {
	background-color: #eee;
	color: #1d1288;
	font-size: 16px;
	font-style: italic;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
}
.blogs_box dt a {
	display: block;
	height: 100%;
	padding: 18px 6px;
	text-decoration: none;
	width: 100%;
}
.layout_pc .blogs_box dt a:hover {
	opacity: 0.8;
}
.blogs_box dd {
	background: url(../img/blogs/blogs_bg01.png);
	border: 6px solid #eee;
	border-top: none;
	padding: 20px;
}
.blogs_box p + p {
	margin-top: 1.5em;
}

.blogs_archives_list {
	margin-bottom: 50px;
}
.blogs_archives_list li + li {
	margin-top: 15px;
}
.blogs_archives_list h4 {
	background-color: #eee;
	box-shadow: 2px 2px 0 rgba(1,1,1,0.2);
	color: #1d1288;
	font-size: 16px;
	font-style: italic;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
}
.blogs_archives_list a {
	display: block;
	height: 100%;
	padding: 18px 6px;
	text-decoration: none;
	width: 100%;
}
.layout_pc .blogs_archives_list a:hover {
	opacity: 0.8;
}

.singles_btn_top {
	background-color: #eee;
	margin-top: 40px;
	padding: 20px;
}
.singles_btn_top a {
	margin: 0 auto;
	max-width: 270px;
}

/*===============================================
  校長ブログ：768px未満
===============================================*/
@media screen and (max-width:767px) {
	.blogs_date {
		margin-top: -5px;
		margin-bottom: 3px;
	}
	.blogs_box dt {
		font-size: 15px;
	}
	.blogs_box dt a {
		padding: 15px 4px;
	}
	.blogs_box dd {
		border: 4px solid #eee;
		border-top: none;
		padding: 10px 15px;
	}
	.blogs_box p + p {
		margin-top: 1.0em;
	}

	.blogs_archives_list {
		margin-bottom: 40px;
	}
	.blogs_archives_list h4 {
		font-size: 15px;
	}
	.blogs_archives_list a {
		padding: 15px 4px;
	}

	.singles_btn_top {
		margin-top: 30px;
		padding: 15px;
	}
}