@charset "utf-8";
@import "cmn_reset.css";
/* ---------------------------------------------------------

	帝京中学校・高等学校【レスポンシブ】
	Date: 2017.12.00

	01. 基礎設定
	02. 画面構成
	03. ヘッダー
	04. フッター
	05. 共通パーツ：全ページ
	06. トップページ
	07. 共通パーツ：下層ページ
	08. 中学校の教育
	09. 高等学校の教育
	10. 中学校入試ガイド
	11. 高等学校入試ガイド
	12. 進路指導
	13. 学校生活
	14. 学校案内
	15. 情報公開
	16. 在校生・保護者・卒業生の方へ
	17. 帝京ムービー
	18. アクセス
	19. 資料請求
	20. サイトマップ
	21. 帝京グループ
	22. 教職員募集
	23. サイトポリシー・プライバシーポリシー
	24. 【塾の先生対象】学校説明会のご案内
	25. フォーム（いじめ相談・資料請求・塾の先生説明会）
	26. ニュース・トピックス
	27. 説明会関連
	28. オープンスクール
	29. スペシャルレポート
	30. 高校入試相談用紙ダウンロード
	31. エラーページ
	32. クラブ活動方針
	33. 入試・学校選びのご質問
	34. 学校紹介動画
	35. 育てる生徒像
	36. Web出願ガイド
	37. 中学校文化部特集
	38. 帰国生の方へ
	39. 追加

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

	01. 基礎設定

--------------------------------------------------------- */
html {
  color: #333;
  font-size: 14px;
  font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "メイリオ", 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, sans-serif;
  }
}
body {
  background-color: #fff;
  height: 100%;
}
img {
  height: auto;
  max-width: 100%;
}
a {
  color: #005293;
  text-decoration: none;
}
a:hover {
  color: #005293;
  text-decoration: none;
}
.device_com a:hover {
  opacity: 0.8;
  text-decoration: none;
}
.fnt_serif {
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
@media all and (-ms-high-contrast:none) {
  .fnt_serif {
    font-family: "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  }
}
.pc_b {
  display: block;
}
.pc_i {
  display: inline;
}
.sp_b, .sp_i {
  display: none;
}
.ls5 {
  letter-spacing: -0.5em;
}
/*===============================================
	基礎設定：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .pc_b, .pc_i {
    display: none;
  }
  .sp_b {
    display: block;
  }
  .sp_i {
    display: inline;
  }
}
/* ---------------------------------------------------------

	02. 画面構成

--------------------------------------------------------- */
.wrapper {
  min-height: 100%;
  min-width: 1040px;
  overflow: hidden;
  padding-bottom: 390px;
  position: relative;
}
.cmn_contents {
  margin-bottom: 50px;
}
.cmn_container {
  margin: 0 auto;
  max-width: 740px;
  padding: 0 20px;
  position: relative;
  width: 100%;
}
.cmn_ctr_box {
  padding: 30px 20px;
}
.cmn_ctr_wide {
  max-width: 1040px;
}
.cmn_ctr_medium {
  max-width: 920px;
}
.cmn_ctr_narrow {
  max-width: 810px;
}
/*===============================================
	画面構成：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .wrapper {
    background: none;
    min-width: inherit;
    padding-bottom: 0;
    width: 100%;
  }
  .wrapper.header_nav_open {
    height: 100vh;
    overflow: hidden;
  }
  .cmn_contents {
    margin-bottom: 30px;
  }
  .cmn_container {
    padding: 0 15px;
  }
  .cmn_ctr_box {
    padding: 25px 15px;
  }
  .cmn_ctr_box + .cmn_ctr_box {
    padding-top: 15px;
  }
}
/* ---------------------------------------------------------

	03. ヘッダー

--------------------------------------------------------- */
header {
  background-color: #005aaa;
  height: 86px;
  position: relative;
  width: 100%;
  z-index: 10000;
}
header .cmn_container {
  padding-top: 20px;
}
.header_logo {
  height: 47px;
  width: 262px;
}
.header_logo a {
  background: url(../img/common/header_logo01.png) no-repeat;
  background-size: contain;
  display: block;
  height: 100%;
  text-indent: -9999px;
}
.header_gnav {
  position: absolute;
  top: 36px;
  right: 20px;
}
.header_gnav:after {
  content: '';
  clear: both;
  display: block;
}
.header_gnav > li {
  float: left;
  position: relative;
  width: auto;
}
.header_gnav > li:last-child {
  border-right: none;
}
.header_gnav > li:hover:before {
  content: '';
  background-color: transparent;
  display: block;
  height: 20px;
  position: absolute;
  bottom: -20px;
  left: 0;
  width: 100%;
}
.header_gnav a {
  color: #fff;
  display: block;
  font-size: 12px;
  font-weight: bold;
  padding: 19px 1.4em;
}
.header_gnav > li > a {
  pointer-events: none;
}
.device_com .header_gnav > li:hover > a {
  background-color: #014479;
  color: #fff;
}
.header_gnav_smenu {
  background-color: #005aaa;
  display: none;
  position: absolute;
  top: 50px;
  left: 0;
  width: 100%;
}
.header_gnav_schoollife .header_gnav_smenu {
  left: auto;
  right: 0;
}
.header_gnav_smenu li {
  line-height: 1.2;
}
.header_gnav_smenu li + li {
  border-top: 1px solid #265880;
}
.header_gnav_smenu li a {
  display: flex;
  align-items: center;
  height: 50px;
  padding: 0 10px;
}
.header_sns {
	position: absolute;
    top: 0px;
    right: 484px;
    width: 26px;
}
.header_sns_list {
	padding: 4px 0;
}
.header_instagram {
	width: 26px;
}
.device_com .header_gnav_smenu li a:hover {
  background-color: #fff;
  color: #014479;
  opacity: 1;
}
.header_snav {
  overflow: hidden;
  position: absolute;
  top: -1px;
  right: 20px;
}
.header_snav li {
  float: left;
  margin-left: 1px;
  width: auto;
}
.header_snav a {
  background-color: #f57900;
  border-top: none;
  color: #fff;
  display: block;
  font-size: 14px;
  font-weight: bold;
  padding: 8px 10px;
}
.header_snav a:before {
  content: '';
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  height: 14px;
  margin-right: 3px;
  vertical-align: bottom;
}
.header_snav li:nth-child(1) a:before {
  background-image: url(../img/common/header_ico_students01_2018.png);
  width: 16px;
}
.header_snav li:nth-child(2) a:before {
  background-image: url(../img/common/header_ico_inquiry01_2018.png);
  width: 16px;
}
.header_snav li:nth-child(3) a:before {
  background-image: url(../img/common/header_ico_access01_2018.png);
  width: 12px;
}
.header_switch {
  display: none;
}
/*===============================================
	ヘッダー：768px未満
===============================================*/
@media screen and (max-width:767px) {
  header {
    background-size: auto 55px;
    height: 55px;
  }
  header .cmn_container {
    padding-top: 13px;
  }
  .header_logo {
    height: 30px;
    width: 168px;
  }
  nav {
    display: none;
    background-color: #fff;
    height: calc(100vh - 55px);
    overflow: auto;
    padding: 15px;
    position: absolute;
    top: 55px;
    left: 0;
    width: 100%;
  }
  .header_gnav {
    border: 1px solid #005293;
    border-bottom: none;
    margin-bottom: 10px;
    position: static;
  }
  .header_gnav > li {
    border-right: none;
    border-bottom: 1px solid #005293;
    float: none;
    width: 100%;
  }
  .header_gnav > li:hover:before {
    display: none;
  }
  .header_gnav a {
    color: #005293;
    display: block;
    font-size: 16px;
    padding: 14px 10px;
    position: relative;
  }
  .header_gnav_acc > a:before {
    content: '';
    border-right: 1px solid #005293;
    border-bottom: 1px solid #005293;
    display: block;
    height: 10px;
    position: absolute;
    top: 50%;
    right: 22px;
    transform: rotate(45deg) translateY(-100%);
    width: 10px;
  }
  .header_gnav_acc.js-acc_open > a:before {
    right: 15px;
    transform: rotate(-135deg) translateY(0);
  }
  .header_gnav_smenu {
    background-color: #efefef;
    display: none;
    position: static;
  }
  .header_gnav_smenu li, .header_gnav_smenu li + li {
    border-top: 1px solid #005293;
  }
  .header_snav {
    border: 1px solid #005293;
    border-bottom: none;
    padding: 0;
    position: static;
  }
  .header_snav li {
    border-bottom: 1px solid #005293;
    margin-left: 0;
    width: 100%;
  }
  .header_snav li:not(:first-child) {
    width: 50%;
  }
  .header_snav li:last-child {
    border-left: 1px solid #005293
  }
  .header_snav a {
    background-color: #f57900;
    border: none;
    border-top: none;
    box-shadow: none;
    color: #fff;
    display: block;
    font-size: 14px;
    padding: 14px 10px;
    text-align: center;
  }
  .header_snav a:before {
    content: '';
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    height: 14px;
    margin-right: 5px;
    vertical-align: text-bottom;
  }
  .header_switch {
    display: block;
    position: absolute;
    top: 12px;
    right: 12px;
    width: 32px;
  }
  .header_switch a {
    color: #fff;
    display: block;
    font-family: Verdana, sans-serif;
    font-size: 10px;
    height: 100%;
    padding-top: 24px;
    text-align: center;
    text-decoration: none;
    width: 100%;
  }
  .header_switch:after, .header_switch a:before, .header_switch a:after {
    content: '';
    background-color: #fff;
    height: 2px;
    position: absolute;
    top: 0;
    left: 3px;
    width: 26px;
  }
  .header_switch a:before {
    top: 8px;
  }
  .header_switch a:after {
    top: 16px;
  }
  .header_switch.header_nav_open:after {
    display: none;
  }
  .header_switch.header_nav_open a:before {
    top: 10px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .header_switch.header_nav_open a:after {
    top: 10px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .header_sns {
    top: 0;
    right: 17vw;
	width: 8.4vw
  }
  .header_sns_list {
	padding: 3vw 0;
  }
}
/* ---------------------------------------------------------

	04. フッター

--------------------------------------------------------- */
footer {
  background-color: #f5f5f5;
  height: 270px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}
footer .cmn_container {
  height: 232px;
  overflow: hidden;
  padding: 18px;
}
.footer_logo {
  float: left;
  height: 62px;
  margin-top: 47px;
  width: 312px;
}
.footer_logo a {
  background: url(../img/common/footer_logo_24.png) no-repeat;
  background-size: contain;
  display: block;
  height: 100%;
  text-indent: -9999px;
}
.footer_address {
  float: left;
  line-height: 1.9;
  padding-left: 50px;
  white-space: nowrap;
  width: auto;
}
.footer_address > dt {
  text-indent: -0.5em;
}
.footer_address > dt:first-child {
  float: left;
  width: 6.0em;
}
.footer_address dl dt {
  float: left;
  width: 6.0em;
}
.footer_address dl dd {
  letter-spacing: 0.1em;
}
.footer_menu {
  float: right;
  width: auto;
}
.footer_menu a {
  color: #333;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.65;
  padding-left: 18px;
  position: relative;
}
.footer_menu a:before {
  content: '';
  background-color: #333;
  border-radius: 50%;
  display: block;
  height: 10px;
  margin-top: -5px;
  position: absolute;
  top: 50%;
  left: 0;
  width: 10px;
}
.footer_menu a:after {
  content: '';
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  display: block;
  height: 4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  left: 2px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  width: 4px;
}
.footer_menu_em {
  margin-bottom: 0.3em;
}
.footer_menu_em a {
  background-color: #005293;
  color: #fff;
  display: block;
  margin-left: -0.5em;
  padding: 0.2em 1.5em;
}
.footer_menu_club a {
  background-color: #0b7301;
}
.footer_menu_em a:before {
  background-color: #fff;
  left: 0.5em;
}
.footer_menu_em a:after {
  border-color: #005293;
  left: calc(0.5em + 2px);
}
.footer_menu_club a:after {
  border-color: #0b7301;
}
.footer_recruit {
  background-color: #faf9f9;
  height: 160px;
  padding: 38px 0;
}
.footer_recruit p {
  height: 75px;
  margin: 0 auto;
  width: 240px;
}
.footer_recruit a {
  background: url(../img/common/footer_recruit_bg01.png);
  background-size: 9px;
  border: 3px solid #ccd4db;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  font-weight: bold;
  height: 100%;
  letter-spacing: 0.05em;
}
.footer_recruit a span {
  display: block;
  font-size: 14px;
  letter-spacing: 0;
  margin-top: 9px;
  position: relative;
  text-align: center;
  width: 9em;
}
.footer_recruit a span:after {
  content: '';
  border-right: 1px solid #006cab;
  border-bottom: 1px solid #006cab;
  display: inline-block;
  height: 5px;
  margin-left: 3px;
  -webkit-transform: rotate(-45deg) translateY(-55%);
  transform: rotate(-45deg) translateY(-55%);
  vertical-align: middle;
  width: 5px;
}
.footer_copyright {
  background-color: #005293;
  color: #fff;
  font-family: Verdana, sans-serif;
  font-size: 12px;
  padding: 13px 0;
  text-align: center;
}
/* 教職員募集 非表示 */
.wrapper {
  padding-bottom: 270px;
}
footer {
  height: 270px;
}
.footer_recruit {
  display: none;
}
/*===============================================
	フッター：768px未満
===============================================*/
@media screen and (max-width:767px) {
  footer {
    height: auto;
    position: static;
  }
  footer .cmn_container {
    height: auto;
    padding: 22px 15px 18px;
  }
  .footer_logo {
    float: none;
    height: 44px;
    margin: 0 auto 18px;
    width: 220px;
  }
  .footer_address {
    float: none;
    font-size: 12px;
    margin: 0 auto 18px;
    max-width: 27.0em;
    padding-left: 0;
  }
  .footer_menu {
    float: none;
    margin: 0 auto;
    max-width: 290px;
  }
  .footer_menu:after {
    content: '';
    clear: both;
    display: table;
  }
  .footer_menu li {
    float: left;
    width: 44%;
  }
  .footer_menu li:nth-child(even) {
    margin-left: 4%;
    width: 52%;
  }
  .footer_menu a {
    font-size: 13px;
  }
  .footer_menu_em a {
    margin-left: -0.3em;
    padding: 0.2em 1.5em;
  }
  .footer_menu_em a:before {
    background-color: #fff;
    left: 0.5em;
  }
  .footer_menu_em a:after {
    border-color: #005293;
    left: calc(0.5em + 2px);
  }
  .footer_recruit {
    height: auto;
    padding: 20px 0;
  }
  .footer_copyright {
    font-size: 10px;
    line-height: 1.5;
    padding: 10px 0;
  }
  /* 教職員募集 非表示 */
  .wrapper {
    padding-bottom: 0;
  }
}
/*===============================================
	フッター：360px未満
===============================================*/
@media screen and (max-width:359px) {
  .footer_address {
    font-size: 10px;
    max-width: 290px;
  }
}
/* ---------------------------------------------------------

	05. 共通パーツ

--------------------------------------------------------- */
/* ページトップボタン
--------------------------------------------------------- */
.btn_pagetop {
  display: none;
  height: 60px;
  position: fixed;
  bottom: 25px;
  right: 25px;
  width: 60px;
  z-index: 1000;
}
.btn_pagetop.stop {
  position: absolute;
  bottom: 63px;
}
.btn_pagetop a {
  background-color: rgba(0, 82, 147, 0.75);
  border-radius: 50%;
  display: block;
  height: 100%;
  outline: none;
  position: relative;
  text-indent: -9999px;
  width: 100%;
}
.btn_pagetop a:after {
  content: '';
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  display: block;
  height: 24px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: rotate(-45deg) translate(-20%, -50%);
  transform: rotate(-45deg) translate(-20%, -50%);
  width: 24px;
}
.device_com .btn_pagetop a:hover {
  opacity: 0.8;
}
/*===============================================
	ページトップボタン：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .btn_pagetop {
    height: 40px;
    bottom: 10px;
    right: 10px;
    width: 40px;
  }
  .btn_pagetop.stop {
    bottom: 60px;
  }
  .btn_pagetop a:after {
    border-width: 1px;
    height: 18px;
    width: 18px;
  }
}
/* グリッド：2カラム
-------------------------------------------------------------- */
.grid_2col {
  overflow: hidden;
}
.grid_2col > * {
  float: left;
  width: 48.5%;
}
.grid_2col > *:nth-child(even) {
  float: right;
}
/*===============================================
	グリッド：2カラム：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .grid_2col > * {
    float: none;
    width: 100%;
  }
  .grid_2col > *:nth-child(even) {
    float: none;
  }
  .grid_2col > * + * {
    margin-top: 20px;
  }
}
/* グリッド：2カラム（写真）
-------------------------------------------------------------- */
.grid_2col_photo {
  overflow: hidden;
}
.grid_2col_photo > * {
  float: left;
  width: 49.8%;
}
.grid_2col_photo > *:nth-child(even) {
  float: right;
}
/*===============================================
	グリッド：2カラム（写真）：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .grid_2col_photo > * {
    float: none;
    width: 100%;
  }
  .grid_2col_photo > *:nth-child(even) {
    float: none;
  }
  .grid_2col_photo > * + * {
    margin-top: 4px;
  }
}
/* グリッド：3カラム
-------------------------------------------------------------- */
.grid_3col {
  overflow: hidden;
}
.grid_3col > * {
  float: left;
  margin-right: 0.5%;
  text-align: center;
  width: 33%;
}
.grid_3col > *:nth-child(3n) {
  margin-right: 0;
}
/*===============================================
	グリッド：3カラム：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .grid_3col > * {
    float: none;
    margin-right: 0;
    width: 100%;
  }
  .grid_3col > * + * {
    margin-top: 15px;
  }
}
/* グリッド：4カラム
-------------------------------------------------------------- */
.grid_4col {
  overflow: hidden;
}
.grid_4col > * {
  float: left;
  margin-right: 2.0%;
  width: 23.5%;
}
.grid_4col > *:nth-child(4n) {
  margin-right: 0;
}
/*===============================================
	グリッド：4カラム：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .grid_4col {
    margin-bottom: -4%;
  }
  .grid_4col > * {
    margin: 0 4% 4% 0;
    width: 48%;
  }
  .grid_4col > *:nth-child(2n) {
    margin-right: 0;
  }
}
/* ボックス：背景色のあるボックス
-------------------------------------------------------------- */
.cmn_bg_colored:before {
  content: '';
  background-color: #eff9fb;
  display: block;
  height: 100%;
  margin-left: -100vw;
  position: absolute;
  top: 0;
  left: 50%;
  width: 200vw;
  z-index: -1;
}
/* メニュー：アンカーリンク
--------------------------------------------------------- */
.cmn_anchor_menu {
  margin: 30px 0 50px;
  overflow: hidden;
}
.cmn_anchor_menu li {
  margin-bottom: 0.5%;
}
.cmn_anchor_menu li a {
  background-color: #005293;
  color: #fff;
  display: block;
  font-size: 16px;
  padding: 10px;
  position: relative;
  text-align: center;
}
.cat_junior .cmn_anchor_menu li a {
  background-color: #01a7bd;
}
.cmn_anchor_menu li a:after {
  content: '';
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  display: block;
  height: 10px;
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: rotate(45deg) translateY(-100%);
  transform: rotate(45deg) translateY(-100%);
  width: 10px;
}
/*===============================================
	メニュー：アンカーリンク：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .cmn_anchor_menu {
    margin: 25px 0 40px;
  }
  .cmn_anchor_menu li + li {
    margin-top: 10px;
  }
}
/* リンク：テキストリンク
--------------------------------------------------------- */
.cmn_contents .cmn_link_txt {
  line-height: 1.5;
  position: relative;
}
.cmn_link_txt a {
  background: url(../img/common/ico_arrow_link01.png) left 2px no-repeat;
  background-size: 16px;
  display: inline-block;
  min-height: 16px;
  padding-left: 20px;
}
/* ボタン：標準ボタン
--------------------------------------------------------- */
.cmn_btn {
  margin: 20px auto 0;
  max-width: 250px;
  width: 100%;
}
.cmn_btn a {
  background: linear-gradient(to bottom, #09559d 0%, #0072b5 100%);
  color: #fff;
  border-radius: 6px;
  box-shadow: 0 4px 0 0 #ced6d6;
  display: block;
  font-size: 18px;
  padding: 10px 0;
  position: relative;
  text-align: center;
}
.cmn_btn a:after {
  content: '';
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  display: block;
  height: 10px;
  position: absolute;
  top: 50%;
  right: 5px;
  -webkit-transform: rotate(-45deg) translateY(-70%);
  transform: rotate(-45deg) translateY(-70%);
  width: 10px;
}
.cmn_btn_wide {
  max-width: 400px;
}
/*===============================================
	ボタン：標準ボタン：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .cmn_btn a {
    font-size: 16px;
  }
}
/* ボタン：標準ダウンロード
--------------------------------------------------------- */
.cmn_btn_download a {
  background: #005aaa url(../img/common/ico_download01.png) 96% center no-repeat;
  background-size: 12px auto;
  border-radius: 4px;
  box-shadow: 0 4px 0 0 #ced6d6;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  height: 38px;
  padding: 0 30px;
  text-align: center;
}
.cat_junior .cmn_btn_download a {
  background-color: #1bb0c4;
}
/*===============================================
	ボタン：標準ダウンロード：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .cmn_btn_download a {
    background-position: 96% center;
    padding: 0 25px 0 15px;
  }
}
/* ボタン：PDFダウンロード
--------------------------------------------------------- */
.cmn_btn_pdf a {
  background: #005aaa url(../img/common/ico_pdf01.png) 96% center no-repeat;
  background-size: 17px auto;
  border-radius: 4px;
  box-shadow: 0 4px 0 0 #ced6d6;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  height: 38px;
  padding: 0 30px;
  text-align: center;
}
.cat_junior .cmn_btn_pdf a {
  background-color: #1bb0c4;
}
/*===============================================
	ボタン：PDFダウンロード：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .cmn_btn_pdf a {
    background-position: 94% center;
    padding: 0 25px 0 15px;
  }
}
/* ボタン：無効化
--------------------------------------------------------- */
.cmn_btn_nolink a, .cat_junior .cmn_btn_nolink a {
  background-color: #dedede;
  pointer-events: none;
}
/* テーブル：標準
-------------------------------------------------------------- */
.cmn_table {
  border-collapse: separate;
  border-spacing: 2px;
  line-height: 1.5;
  margin-left: -2px;
  table-layout: fixed;
  width: calc(100% + 4px);
}
.cmn_table thead th {
  background-color: #005293;
  color: #fff;
  padding: 5px;
  text-align: center;
}
.cat_junior thead th {
  background-color: #01a7bd;
}
.cmn_table tbody th {
  background-color: #9e9c9c;
  color: #fff;
  font-weight: normal;
}
.cmn_table tbody td {
  background-color: #e2e2e2;
  padding: 5px;
  text-align: center;
}
.cmn_table tfoot td {
  background-color: #888787;
  color: #fff;
  padding: 5px;
  text-align: center;
}
.cmn_table_unfix {
  table-layout: auto;
}
.cmn_table_caption {
  text-align: right;
}
/*===============================================
	テーブル：標準：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .cmn_table {
    table-layout: auto;
  }
  .cmn_table tbody th {
    padding: 5px;
  }
  .cmn_table_caption {
    font-size: 12px;
  }
}
/* テーブル：レスポンシブ対応
-------------------------------------------------------------- */
/*===============================================
	テーブル：レスポンシブ対応：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .table_wrapper {
    overflow: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
}
/* ライトボックス：フェードイン
-------------------------------------------------------------- */
.mfp-fade.mfp-bg {
  opacity: 0;
  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;
  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;
}
.mfp-fade .mfp-close {
  background-color: #005aaa;
  height: 40px;
  right: 0;
  opacity: 1;
  padding: 0;
  text-align: center;
  width: 40px;
}
/* ---------------------------------------------------------

	06. トップページ

--------------------------------------------------------- */
/* トップ：メインビジュアル
--------------------------------------------------------- */
.top_mv {
  height: 436px;
  margin-bottom: 20px;
  position: relative;
}
.top_mv .cmn_container {
  height: 100%;
}
.top_mv h2 {
  background: url(../img/top/mv_tit02.png) center/contain no-repeat;
  height: 100px;
  position: absolute;
  top: 80px;
  right: 50%;
  text-indent: -9999px;
  -webkit-transform: translateX(500px);
  transform: translateX(500px);
  width: 331px;
  z-index: 10;
}
.top_mv_slider {
  display: flex;
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
  width: 99999px;
}
.top_mv_slider.is-active {
  -webkit-animation: topMvTicker 96s linear infinite;
  animation: topMvTicker 96s linear infinite; /* スライド数×16s */
  visibility: visible;
  will-change: transform;
}
@-webkit-keyframes topMvTicker {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-33.333%);
    transform: translateX(-33.333%);
  }
}
@keyframes topMvTicker {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-33.333%);
    transform: translateX(-33.333%);
  }
}
.top_mv_slider div {
  position: relative;
}
.top_mv_slider p {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  transform: translateX(10%);
  width: 100%;
  z-index: 1;
}
.top_mv_slider div.is-fade p {
  opacity: 1;
  transform: translateX(0);
  transition: opacity 2s, transform 2s;
}
.top_mv_slider div:nth-child(7).is-fade p {
  transition-delay: 0;
}
.top_mv_slider div:nth-child(8).is-fade p {
  transition-delay: 16s;
}
.top_mv_slider div:nth-child(9).is-fade p {
  transition-delay: 32s;
}
.top_mv_slider div:nth-child(10).is-fade p {
  transition-delay: 48s;
}
.top_mv_slider div:nth-child(11).is-fade p {
  transition-delay: 64s;
}
.top_mv_slider div:nth-child(12).is-fade p {
  transition-delay: 80s;
}
#home .top_mv_slider div.is-show p {
  opacity: 1 !important;
  transform: translateX(0) !important;
}
/*===============================================
	トップ：メインビジュアル：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .top_mv {
    height: 200px;
    margin-bottom: 90px;
  }
  .top_mv h2 {
    height: 100px;
    top: 30px;
    right: 5%;
    -webkit-transform: none;
    transform: none;
    width: 52%;
  }
  .top_mv_slider div img {
    height: 200px;
    width: auto;
  }
  .top_mv_slider.is-active {
    -webkit-animation: topMvTicker 100s linear infinite;
    animation: topMvTicker 100s linear infinite; /* スライド数×16.66s */
  }
  .top_mv_slider div:nth-child(7).is-fade p {
    transition-delay: 0;
  }
  .top_mv_slider div:nth-child(8).is-fade p {
    transition-delay: 17s;
  }
  .top_mv_slider div:nth-child(9).is-fade p {
    transition-delay: 34s;
  }
  .top_mv_slider div:nth-child(10).is-fade p {
    transition-delay: 51s;
  }
  .top_mv_slider div:nth-child(11).is-fade p {
    transition-delay: 67s;
  }
  .top_mv_slider div:nth-child(12).is-fade p {
    transition-delay: 83s;
  }
}
/*===============================================
	トップ：メインビジュアル：425px未満
===============================================*/
@media screen and (max-width:424px) {
  .top_mv h2 {
    background-position: center;
  }
}
/* トップ：緊急情報
--------------------------------------------------------- */
.top_caution {
  background-color: #f1f1f1;
  margin: -20px 0 20px;
  padding: 10px 0;
}
.top_caution dl {
  line-height: 1.5;
  margin: 0 auto;
  max-width: 1040px;
  overflow: hidden;
  padding: 0 20px;
  width: 100%;
}
.top_caution dt {
  background-color: #f30;
  color: #fff;
  font-weight: bold;
  float: left;
  padding: 5px;
  text-align: center;
  width: 6em;
}
.top_caution dd {
  padding: 5px 0 5px 6.8em;
}
/*===============================================
	トップ：緊急情報：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .top_caution {
    margin: 0;
  }
  .top_caution dl {
    padding: 0 15px;
  }
  .top_caution dt {
    float: none;
    margin-bottom: 5px;
    padding: 3px;
    width: 100%;
  }
  .top_caution dd {
    padding: 3px 0;
  }
}
/* トップ：SPメニュー
--------------------------------------------------------- */
.top_sp_menu {
  display: none;
}
/*===============================================
	トップ：SPメニュー：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .top_sp_menu {
    display: block;
    padding: 10px;
  }
  .top_sp_menu header {
    display: none;
  }
  .top_sp_menu_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: -8px;
  }
  .top_sp_menu_list > li {
    margin-bottom: 8px;
    width: calc((100% - 8px) / 2);
  }
  .top_sp_menu_list .header_gnav_acc > a {
    background-color: #1bb0c4;
    border-top: 3px solid #2cc0d4;
    color: #fff;
    display: flex;
    align-items: center;
    font-size: 12px;
    font-weight: bold;
    height: 60px;
    padding: 10px 10px 13px 10px;
    position: relative;
  }
  .top_sp_menu_list li.header_gnav_acc:nth-child(2) > a, .top_sp_menu_list li.header_gnav_acc:nth-child(4) > a {
    background-color: #005aaa;
    border-top-color: #1b74c3;
  }
  .top_sp_menu_list li.header_gnav_acc:nth-child(n+5) > a {
    background-color: #4e6986;
    border-top-color: #6f8aa7;
  }
  .top_sp_menu_list .header_gnav_acc > a::before {
    content: '';
    background-color: #0a9db1;
    border: none;
    display: block;
    height: 3px;
    position: absolute;
    top: -3px;
    right: 0;
    transform: none;
    width: 50%;
  }
  .top_sp_menu_list li.header_gnav_acc:nth-child(2) > a::before, .top_sp_menu_list li.header_gnav_acc:nth-child(4) > a::before {
    background-color: #005097;
  }
  .top_sp_menu_list li.header_gnav_acc:nth-child(n+5) > a::before {
    background-color: #3a5572;
  }
  .top_sp_menu_list .header_gnav_acc > a::after {
    content: '';
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    display: block;
    height: 8px;
    position: absolute;
    top: 50%;
    right: 15px;
    transform: rotate(45deg) translate(-30%, -100%);
    width: 8px;
  }
  .top_sp_menu_list .header_gnav_acc.js-acc_open > a::after {
    transform: rotate(225deg) translate(0%, 40%);
  }
  .top_sp_menu_list .top_sp_menu_panel {
    display: none;
    padding-top: 8px;
    position: relative;
    width: calc(200% + 8px);
  }
  .top_sp_menu_list .js-acc_open .top_sp_menu_panel {
    z-index: 10;
  }
  .top_sp_menu_list li:nth-child(even) .top_sp_menu_panel {
    transform: translateX(calc(-50% + (-8px / 2)));
  }
  .top_sp_menu_list .header_gnav_smenu {
    background-color: #fafafa;
    border: 1px solid #1bb0c4;
    display: block;
    padding: 15px 10px;
    position: relative;
    top: 0;
    width: 100%;
  }
  .top_sp_menu_list li:nth-child(-2n+4) .header_gnav_smenu {
    border-color: #005aaa;
  }
  .top_sp_menu_list li:nth-child(n+5) .header_gnav_smenu {
    border-color: #4e6986;
  }
  .top_sp_menu_list .header_gnav_smenu::before {
    content: '';
    background-color: #1bb0c4;
    display: block;
    height: 8px;
    position: absolute;
    top: -9px;
    left: -1px;
    width: calc(50% - (6px / 2));
  }
  .top_sp_menu_list li:nth-child(even) .header_gnav_smenu::before {
    background-color: #005aaa;
    left: auto;
    right: -1px;
  }
  .top_sp_menu_list li:nth-child(n+5) .header_gnav_smenu::before {
    background-color: #4e6986;
  }
  .top_sp_menu_list .header_gnav_smenu li {
    border: none;
  }
  .top_sp_menu_list .header_gnav_smenu li + li {
    border: none;
    margin-top: 1em;
  }
  .top_sp_menu_list .header_gnav_smenu li a {
    display: inline;
    color: #1bb0c4;
    font-size: 12px;
    font-weight: bold;
    height: auto;
    padding: 0;
    position: relative;
  }
  .top_sp_menu_list li:nth-child(even) .header_gnav_smenu li a {
    color: #005aaa;
  }
  .top_sp_menu_list li:nth-child(n+5) .header_gnav_smenu li a {
    color: #4e6986;
  }
  .top_sp_menu_list .header_gnav_smenu li a::before {
    content: '';
    border-top: 1px solid #1bb0c4;
    border-right: 1px solid #1bb0c4;
    display: inline-block;
    height: 5px;
    margin-right: 8px;
    transform: rotate(45deg) translateY(-50%);
    width: 5px;
  }
  .top_sp_menu_list li:nth-child(even) .header_gnav_smenu li a::before {
    border-color: #005aaa;
  }
  .top_sp_menu_list li:nth-child(n+5) .header_gnav_smenu li a::before {
    border-color: #4e6986;
  }
}
/* トップ：コンテンツ共通
--------------------------------------------------------- */
.top_title {
  font-size: 18px;
  font-weight: bold;
  padding: 35px 20px 40px;
  text-align: center;
}
.top_title span {
  color: #006cab;
  display: block;
  font-size: 13px;
  font-weight: normal;
  margin-top: 12px;
}
.top_cmn_list {
  letter-spacing: -.5em;
  margin: 0 auto;
  max-width: 1000px;
  padding: 50px 0 45px;
  text-align: center;
}
.top_cmn_list li {
  color: #fff;
  display: inline-block;
  margin-right: 2.66%;
  letter-spacing: normal;
  text-align: left;
  vertical-align: top;
  width: 23.0%;
}
.top_cmn_list li:nth-child(4n) {
  margin-right: 0;
}
/*===============================================
	トップ：コンテンツ共通：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .top_title {
    padding: 15px;
  }
  .top_title span {
    margin-top: 10px;
  }
  .top_cmn_list {
    margin: 0 auto;
    max-width: 320px;
    padding: 20px 15px 0;
  }
  .top_cmn_list li {
    margin-right: 0;
    margin-bottom: 20px;
    width: 100.0%;
  }
}
/* トップ：注目情報
--------------------------------------------------------- */
.top_featured {
  position: absolute;
  bottom: 10px;
  left: 0;
  text-align: center;
  width: 100%;
}
.top_featured_list {
  letter-spacing: -.5em;
  text-align: center;
}
.top_featured_list li {
  display: inline-block;
  letter-spacing: normal;
  margin: 0 10px;
  max-width: 174px;
  position: relative;
}
.top_featured_list a {
  border-radius: 50%;
  display: block;
  height: 100%;
  overflow: hidden;
  position: relative;
}
.top_featured_list a::after {
  content: '詳しくはコチラ';
  background-color: #de7318;
  color: #fff;
  display: block;
  font-size: 11px;
  font-weight: bold;
  padding: 4px 0.5em;
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translateX(-50%);
  width: 8em;
}
.device_com .top_featured_list a:hover {
  opacity: 0.8;
}
.top_featured_img {
  border-radius: 50%;
  height: 100%;
  overflow: hidden;
  padding-top: 50%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
.top_featured_txt {
  position: absolute;
  bottom: 54%;
  left: 50%;
  text-align: center;
  transform: translateX(-50%);
  width: 100%;
}
.top_featured_txt > span {
  color: #fff;
  display: block;
  text-align: center;
}
.top_featured_date {
  font-size: 28px;
  font-weight: bold;
  letter-spacing: -0.05em;
  margin-bottom: 10px;
}
.top_featured_txt .top_featured_lead {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  font-size: 16px;
  height: 2em;
  margin: 0 auto 10px;
  width: 7em;
}
.top_featured_tit {
  font-size: 16px;
  margin: 0 auto;
  width: 10em;
}
.top_featured_date span {
  margin: 0 -0.3em;
}
.top_featured_contact .top_featured_txt {
  line-height: 1.3;
}
.top_featured_contact .top_featured_lead {
  margin-bottom: 0;
}
/*===============================================
	トップ：注目情報：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .top_featured {
    padding: 0 20px;
  }
  .top_featured_list {
    letter-spacing: -.5em;
    text-align: center;
  }
  .top_featured_list li {
    display: inline-block;
    letter-spacing: normal;
    margin: 0 10px;
    max-width: inherit;
    width: 50%;
  }
  .top_featured_list a {
    display: block;
    height: 100%;
  }
  .top_featured_list a::after {
    font-size: 8px;
    padding: 3px 0.5em;
  }
  .top_featured .slick-arrow {
    background-color: transparent;
    border: none;
    cursor: pointer;
    display: block;
    height: 40px;
    margin-top: -15px;
    outline: none;
    padding: 0;
    position: absolute;
    top: 50%;
    text-indent: -9999px;
    width: 20px;
    z-index: 10;
  }
  .top_featured .slick-arrow:after {
    content: '';
    border-top: 1px solid #333;
    border-left: 1px solid #333;
    display: block;
    height: 15px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: rotate(-45deg) translate(20%, -50%);
    width: 15px;
  }
  .top_featured .slick-prev {
    left: -15px;
  }
  .top_featured .slick-next {
    right: -15px;
    transform: rotate(180deg);
  }
  .top_featured_txt {
    bottom: 55%;
  }
  .top_featured_txt > span {
    letter-spacing: -0.05em;
  }
  .top_featured_date {
    font-size: 6vw;
    margin-bottom: 3%;
  }
  .top_featured_txt .top_featured_lead {
    font-size: 3.5vw;
    margin-bottom: 5px;
  }
  .top_featured_tit {
    font-size: 3.3vw;
  }
  .top_featured_contact .top_featured_lead {
    margin-bottom: 0;
  }
}
/* トップ：説明会バナー
--------------------------------------------------------- */
.top_schedule {
  height: 100%;
  margin: 0 auto;
  position: relative;
  width: 1000px;
}
.top_schedule ul {
  display: flex;
  flex-direction: column-reverse;
  position: absolute;
  top: 35px;
  right: 0;
  width: 250px;
}
.top_schedule li {
  background-color: #fff;
  border-radius: 10px;
  overflow: hidden;
}
.top_schedule li + li {
  margin-bottom: 10px;
}
.top_schedule a {
  border: 2px solid #ffc41f;
  border-radius: 10px;
  display: block;
  font-feature-settings: 'palt';
  text-align: center;
}
.top_schedule_date {
  background-color: #ffc41f;
  color: #2359a4;
  font-size: 22px;
  font-weight: bold;
  padding: 8px 10px;
}
.top_schedule_title {
  color: #333;
  font-size: 20px;
  font-weight: bold;
  padding: 9px 25px;
  position: relative;
}
.top_schedule_title::after {
  content: '';
  border-top: 2px solid #555;
  border-right: 2px solid #555;
  display: block;
  height: 10px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: rotate(45deg) translateY(-70%);
  width: 10px;
}
/*===============================================
	トップ：説明会バナー：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #home .footer_copyright {
    padding-bottom: 80px;
  }
  #home .btn_pagetop, #home .btn_pagetop.stop {
    position: fixed;
    bottom: 70px;
  }
  .top_schedule {
    height: auto;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 100;
  }
  .top_schedule ul {
    flex-direction: row-reverse;
    justify-content: space-between;
    padding: 10px;
    position: static;
    width: 100%;
  }
  .top_schedule li {
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(51, 51, 51, 0.4);
    width: calc(50% - 5px);
  }
  .top_schedule li + li {
    margin-bottom: 0;
  }
  .top_schedule a {
    border-radius: 8px;
  }
  .top_schedule_date {
    font-size: 13px;
    padding: 5px;
  }
  .top_schedule_title {
    font-size: 13px;
    padding: 5px 10px;
    position: relative;
  }
  .top_schedule_title::after {
    border-top: 1px solid #555;
    border-right: 1px solid #555;
    height: 7px;
    right: 8px;
    width: 7px;
  }
}
/* トップ：SPECIAL REPORT
--------------------------------------------------------- */
.top_report {
  padding: 20px 0 40px;
}
.top_report h3 {
  color: #005aaa;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.1em;
  margin-bottom: 25px;
  text-align: center;
}
.top_report_list {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  max-width: 1000px;
}
.top_report_list li {
  width: 23%;
}
.top_report_list li:not(:first-child) {
  margin-left: calc(8% / 3);
}
.top_report_list a {
  color: #fff;
  line-height: 1.5;
  height: 100%;
}
.top_report_list p {
  border: 1px solid #005aaa;
}
.top_report_list h4 {
  background-color: #005aaa;
  border: 1px solid #005aaa;
  padding: 0.4em 30px 0.3em 0.5em;
  position: relative;
}
.top_report_list h4:after {
  content: '';
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  display: block;
  height: 10px;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%) rotate(45deg);
  width: 10px;
}
/*===============================================
	トップ：SPECIAL REPORT：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .top_report {
    padding: 20px 30px;
  }
  .top_report h3 {
    font-size: 20px;
    margin-bottom: 20px;
  }
  .top_report_list {
    display: none;
  }
  .top_report_list.slick-initialized {
    display: block;
  }
  .top_report_list li {
    margin: 0 5px;
    width: 100%;
  }
  .top_report_list li:not(:first-child) {
    margin-left: 5px;
  }
  .top_report_list .slick-arrow {
    background-color: transparent;
    border: none;
    cursor: pointer;
    display: block;
    height: 40px;
    margin-top: -15px;
    outline: none;
    padding: 0;
    position: absolute;
    top: 50%;
    text-indent: -9999px;
    width: 20px;
    z-index: 10;
  }
  .top_report_list .slick-arrow:after {
    content: '';
    border-top: 1px solid #333;
    border-left: 1px solid #333;
    display: block;
    height: 15px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: rotate(-45deg) translate(20%, -50%);
    width: 15px;
  }
  .top_report_list .slick-prev {
    left: -20px;
  }
  .top_report_list .slick-next {
    right: -20px;
    transform: rotate(180deg);
  }
}
/* トップ：NEWS
--------------------------------------------------------- */
.top_2col_wrap {
  display: flex;
}
.top_2col {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 50%;
}
.top_news {
  background-color: #e9f3fb;
  float: left;
  padding: 20px 40px 20px 0;
}
.top_2col_inner {
  height: 100%;
  max-width: 440px;
  position: relative;
}
.top_news .top_2col_inner {
  margin-left: auto;
}
.top_2col_inner h3 {
  color: #005aaa;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.1em;
  margin-bottom: 25px;
}
.top_news_list {
  height: 376px;
  overflow-y: auto;
}
#home .top_news_list {
  border-top: 1px solid #9abcdb;
}
#home .top_news_list li {
  border-bottom-color: #9abcdb;
}
.top_2col_archive {
  position: absolute;
  top: 5px;
  right: 0;
}
.top_2col_archive a {
  border-bottom: 1px solid #006cab;
  font-size: 12px;
  padding-bottom: 2px;
}
.device_com .top_2col_archive a:hover {
  border-bottom-color: transparent;
}
/*===============================================
	トップ：NEWS：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .top_2col_wrap {
    display: block;
  }
  .top_2col {
    height: auto;
    padding: 20px 15px;
    width: 100%;
  }
  .top_news {
    float: none;
  }
  .top_2col_inner {
    height: 100%;
    max-width: inherit;
  }
  .top_news .top_2col_inner {
    margin-left: 0;
  }
  .top_2col_inner h3 {
    font-size: 20px;
    margin-bottom: 20px;
  }
  .top_news_list {
    height: auto;
  }
  .top_news_list li:nth-child(n+7) {
    display: none;
  }
}
/* トップ：MOVIES
--------------------------------------------------------- */
.top_movies {
  background-color: #f6f3e7;
  padding: 20px 0 20px 40px;
}
.top_movies .top_2col_inner {
  margin-right: auto;
}
.top_movies h3 {
  color: #ce293f;
  margin-bottom: 23px;
}
.top_movies_list {
  border-bottom: 2px dotted #ce293f;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
  padding-bottom: 20px;
}
.top_movies_list li {
  width: 30.9%;
}
.top_movies_list li:nth-child(n+4) {
  margin-top: 3.65%;
}
.top_movies_list a {
  display: block;
  outline: none;
}
.device_com .top_movies_list a:hover {
  opacity: 0.8;
}
.top_movies_img {
  height: 76px;
  margin-bottom: 7px;
  overflow: hidden;
  position: relative;
}
.top_movies_img img {
  height: 100%;
  max-width: inherit;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.top_movies_img:after {
  content: '';
  background: url(../img/top/movies_ico01.png) no-repeat;
  background-size: contain;
  display: block;
  height: 26px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 40px;
}
.top_movies_txt {
  color: #333;
  font-size: 12px;
  line-height: 1.3;
}
.top_movies_menu {
  display: flex;
  justify-content: space-between;
}
.top_movies_menu > li:first-child {
  width: 36%;
}
.top_movies_menu > li:last-child {
  width: 60%;
}
.top_movies_menu ul li + li {
  margin-top: 10px;
}
.top_movies_menu a {
  background: linear-gradient(to bottom, #e33951 0%, #ba1a2e 100%);
  border: 2px solid #ce293f;
  color: #fff;
  display: block;
  font-size: 18px;
  font-weight: bold;
  opacity: 0.9;
  padding: 36px 0;
  text-align: center;
}
.top_movies_menu ul li a {
  padding: 10px 0;
}
.top_movies_menu ul li a span {
  font-size: 0.8em;
  margin-left: 0.4em;
}
.top_movies_menu .top_movies_menu_junior a {
  background: linear-gradient(to bottom, #1bb0c4 0%, #127c8a 100%);
  border: 2px solid #1795a6;
}
.top_movies_menu .top_movies_menu_senior a {
  background: linear-gradient(to bottom, #005aaa 0%, #01427c 100%);
  border: 2px solid #014b8e;
}
/*===============================================
	トップ：MOVIES：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .top_movies {
    float: none;
    padding: 20px 15px;
  }
  .top_movies .top_2col_inner {
    margin-right: 0;
  }
  .top_movies_list {
    border-bottom-width: 1px;
    margin: 0 auto 20px;
    max-width: 450px;
    padding-bottom: 20px;
  }
  .top_movies_list li {
    width: 48%;
  }
  .top_movies_list li:nth-child(n+3) {
    margin-top: 4%;
  }
  .top_movies_img {
    height: auto;
  }
  .top_movies_img img {
    height: auto;
    max-width: 100%;
    position: static;
    transform: none;
  }
  .top_movies_img:after {
    height: 33px;
    width: 50px;
  }
  .top_movies_txt {
    font-size: 14px;
  }
  .top_movies_menu {
    display: block;
  }
  .top_movies_menu li:first-child, .top_movies_menu li:last-child {
    width: 100%;
  }
  .top_movies_menu li + li {
    margin-top: 10px;
  }
  .top_movies_menu a {
    padding: 10px 0;
  }
}
/* トップ：中高インデックス
--------------------------------------------------------- */
.top_index {
  padding: 40px 0 50px;
}
.top_index_list {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 1000px;
}
.top_index_list > li {
  width: 48.0%;
}
.top_index_box {
  background-color: #1bb0c4;
  box-shadow: 0 0 0 5px #1bb0c4 inset, 0 0 0 6px #60c8d6 inset;
  padding: 5px;
  position: relative;
}
.top_index_junior:after {
  content: '';
  background: url(../img/top/index_item_junior01.png) center/contain no-repeat;
  display: block;
  height: 166px;
  position: absolute;
  top: -40px;
  right: 20px;
  width: 80px;
}
.top_index_senior {
  background-color: #005aaa;
  box-shadow: 0 0 0 5px #005aaa inset, 0 0 0 6px #4d8cc4 inset;
}
.top_index_senior:after {
  content: '';
  background: url(../img/top/index_item_senior01.png) center/contain no-repeat;
  display: block;
  height: 166px;
  position: absolute;
  top: -40px;
  right: 20px;
  width: 86px;
}
.top_index_list h3 {
  font-size: 24px;
  font-weight: bold;
  text-align: center
}
.top_index_list h3 a {
  color: #fff;
  display: block;
  padding: 18px 0;
  position: relative;
}
.top_index_list h3 a:after {
  content: '';
  border-bottom: 1px solid #60c8d6;
  display: block;
  height: 1px;
  position: absolute;
  bottom: 0;
  left: -5px;
  width: calc(100% + 10px);
}
.top_index_senior h3 a:after {
  border-bottom-color: #4d8cc4;
}
.top_index_list h3 span {
  display: block;
  font-size: 10px;
  margin-top: 12px;
}
.top_index_inner {
  display: flex;
  justify-content: space-between;
  padding: 10px;
}
.top_index_menu {
  line-height: 1.7;
  padding: 8px;
  width: 50%;
}
.top_index_menu a {
  color: #fff;
}
.top_index_menu a:before {
  content: '▶';
  font-size: 10px;
  margin-right: 0.3em;
  position: relative;
  top: -1px;
}
.top_index_guide {
  background-color: #fff;
  padding: 10px;
  width: 50%;
}
.top_index_guide h4 {
  color: #1bb0c4;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
}
.top_index_senior .top_index_guide h4 {
  color: #005aa9;
}
.top_index_guide ul {
  line-height: 1.7;
}
.top_index_guide a {
  color: #333;
}
.top_index_guide a:before {
  content: '▶';
  font-size: 10px;
  margin-right: 0.3em;
  position: relative;
  top: -1px;
}
.cmn_index_sns {
  background-color: #ebf9ee;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1em;
  padding: 0.75em 1em;
}
.cmn_index_sns h4 {
  color: #016a1a;
  font-size: 15px;
  font-weight: bold;
}
.cmn_index_sns_list {
  display: flex;
  align-items: center;
  gap: 1em;
  margin-left: 1em;
}
.cmn_index_sns_list img {
  max-width: 36px;
}
.international_sns {
  margin-top: 1.5em;
}
/*===============================================
	トップ：中高インデックス：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .top_index {
    padding: 30px 15px;
  }
  .top_index_list {
    flex-direction: column;
  }
  .top_index_list > li {
    width: 100%;
  }
  .top_index_list > li + li {
    margin-top: 25px;
  }
  .top_index_junior:after {
    height: 128px;
    top: -25px;
    right: 15px;
    width: 62px;
  }
  .top_index_senior:after {
    height: 128px;
    top: -20px;
    right: 15px;
    width: 67px;
  }
  .top_index_list h3 {
    font-size: 20px;
    padding-left: 15px;
    text-align: left;
  }
  .top_index_list h3 a {
    padding: 12px 0;
  }
  .top_index_list h3 a:after {
    left: -20px;
    width: calc(100% + 25px);
  }
  .top_index_list h3 span {
    margin-top: 10px;
  }
  .top_index_inner {
    display: block;
  }
  .top_index_menu {
    padding: 0 10px 10px;
    width: 100%;
  }
  .top_index_guide {
    width: 100%;
  }
  .top_index_guide h4 {
    font-size: 15px;
  }
  .cmn_index_sns {
    flex-direction: column;
    padding: 1em;
  }
  .cmn_index_sns h4 {
    margin-bottom: 0.75em;
  }
  .cmn_index_sns_list {
    gap: 1.5em;
    margin-left: 0;
  }
  .cmn_index_sns_list img {
    max-width: 40px;
  }
}
/* トップ：進路指導
--------------------------------------------------------- */
.top_career {
  background: url(../img/top/career_bg01.jpg) center no-repeat;
  background-size: cover;
}
.top_career .top_title, .top_career .top_title span {
  color: #fff;
}
.top_career .top_cmn_list {
  padding-top: 0;
  text-align: center;
}
.top_career_list li:last-child {
  margin-right: 0;
}
.top_career_list a {
  color: #fff;
  display: block;
  font-weight: bold;
  text-align: center;
}
.top_career_list a img {
  margin-bottom: 15px;
}
/* トップ：学校生活
--------------------------------------------------------- */
.top_schoollife_wrap {
  background: url(../img/top/schoollife_bg01.png) center;
}
.top_schoollife_list a {
  background-color: #fff;
  color: #333;
  display: block;
  font-weight: bold;
  line-height: 2.2;
  text-align: center;
}
/* トップ：教職員募集ボタン
--------------------------------------------------------- */
#home .top_btn_recruit {
  top: 460px;
}
#home .top_btn_recruit.fixed {
  top: 20px;
}
#home .top_btn_recruit a {
  background: linear-gradient(to bottom, #9e5d18 0%, #c6a077 100%);
  border-color: #ceac88
}
#home .top_btn_recruit a:before {
  background-color: #ccaa85;
}
/*===============================================
	トップ：教職員募集ボタン：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #home .top_btn_recruit {
    opacity: 0;
    pointer-events: none;
    top: 60px;
    transition: opacity 1s;
    z-index: 10001;
  }
  #home .top_btn_recruit.fixed {
    opacity: 1;
    pointer-events: auto;
    top: 10px;
    transition: opacity 1s;
  }
}
/* ---------------------------------------------------------

	07. 下層ページ共通

--------------------------------------------------------- */
/* 下層共通：メインビジュアル
--------------------------------------------------------- */
.cmn_mv {
  height: 250px;
  overflow: hidden;
  position: relative;
}
.cmn_mv:before {
  content: '';
  background-position: right center;
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
}
.cat_junior .cmn_mv:before {
  background-image: url(../img/junior/mv_img01.jpg);
}
.cat_senior .cmn_mv:before {
  background-image: url(../img/senior/mv_img01.jpg);
}
.cat_exam_j .cmn_mv:before {
  background-image: url(../img/exam_j/mv_img01.jpg);
}
.cat_exam_s .cmn_mv:before {
  background-image: url(../img/exam_s/mv_img01.jpg);
}
.cat_career .cmn_mv:before {
  background-image: url(../img/career/mv_img01.jpg);
}
.cat_schoollife .cmn_mv:before {
  background-image: url(../img/schoollife/mv_img01.jpg);
}
.cat_philosophy .cmn_mv:before {
  background-image: url(../img/philosophy/mv_img01.jpg);
}
#information .cmn_mv:before {
  background-image: url(../img/information/mv_img01.jpg);
}
.cat_student .cmn_mv:before {
  background-image: url(../img/student/mv_img01.jpg);
}
#movie .cmn_mv:before {
  background-image: url(../img/movies/mv_img01.jpg);
}
#access .cmn_mv:before {
  background-image: url(../img/access/mv_img01.jpg);
}
.cat_inquiry .cmn_mv:before {
  background-image: url(../img/inquiry/mv_img01.jpg);
}
#sitemap .cmn_mv:before {
  background-image: url(../img/sitemap/mv_img01.jpg);
}
#sitepolicy .cmn_mv:before {
  background-image: url(../img/sitepolicy/mv_img01.jpg);
}
#privacy .cmn_mv:before {
  background-image: url(../img/privacy/mv_img01.jpg);
}
#group .cmn_mv:before {
  background-image: url(../img/group/mv_img01.jpg);
}
#recruit .cmn_mv:before {
  background-image: url(../img/recruit/mv_img01_2022.jpg);
}
.cat_cramschool .cmn_mv:before {
  background-image: url(../img/cramschool/mv_img01.jpg);
}
.cat_news .cmn_mv:before {
  background-image: url(../img/news/mv_img01.jpg);
}
#exam_info_j .cmn_mv:before {
  background-image: url(../img/exam_info/mv_img01.jpg);
}
.open_school .cmn_mv:before {
  background-image: url(../img/open_school/mv_img01.jpg);
}
#report .cmn_mv:before {
  background-image: url(../img/report/mv_img01.jpg);
}
#report_2019 .cmn_mv:before {
  background-image: url(../img/report_2019/mv_img01_2020.jpg);
}
#medical_2019 .cmn_mv:before {
  background-image: url(../img/medical_2019/mv_img01.jpg);
  background-position: left center;
}
#report_2020 .cmn_mv:before {
  background-image: url(../img/report_2020/mv_img01.jpg);
  background-position: 30% center;
}
#club_policy .cmn_mv:before {
  background-image: url(../img/schoollife/mv_img01.jpg);
}
.exam_s_dl .cmn_mv:before {
  background-image: url(../img/exam_s_dl/mv_img01.jpg);
}
#introduction .cmn_mv:before {
  background-image: url(../img/introduction/mv_img01.jpg);
}
.cat_ideal .cmn_mv:before {
  background-image: url(../img/ideal/mv_img01.jpg);
}
#web_app .cmn_mv:before {
  background-image: url(../img/web_app/mv_img01.jpg);
}
.junior_culture .cmn_mv:before {
  background-image: url(../img/junior_culture/mv_img01.jpg);
}
.returnee .cmn_mv:before {
  background-image: url(../img/returnee/mv_img01.jpg);
}
.cmn_mv_inner {
  background-position: left center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 250px;
  margin: 0 0 0 auto;
  max-width: inherit;
  padding: 0;
  position: relative;
  width: 50%;
}
.cat_junior .cmn_mv_inner {
  background-image: url(../img/junior/mv_img02.jpg);
}
.cat_senior .cmn_mv_inner {
  background-image: url(../img/senior/mv_img02.jpg);
}
.cat_exam_j .cmn_mv_inner {
  background-image: url(../img/exam_j/mv_img02.jpg);
}
.cat_exam_s .cmn_mv_inner {
  background-image: url(../img/exam_s/mv_img02.jpg);
}
.cat_career .cmn_mv_inner {
  background-image: url(../img/career/mv_img02.jpg);
}
.cat_schoollife .cmn_mv_inner {
  background-image: url(../img/schoollife/mv_img02.jpg);
}
.cat_philosophy .cmn_mv_inner {
  background-image: url(../img/philosophy/mv_img02.jpg);
}
#information .cmn_mv_inner {
  background-image: url(../img/information/mv_img02.jpg);
}
.cat_student .cmn_mv_inner {
  background-image: url(../img/student/mv_img02.jpg);
}
#movie .cmn_mv_inner {
  background-image: url(../img/movies/mv_img02.jpg);
}
#access .cmn_mv_inner {
  background-image: url(../img/access/mv_img02.jpg);
}
.cat_inquiry .cmn_mv_inner {
  background-image: url(../img/inquiry/mv_img02.jpg);
}
#sitemap .cmn_mv_inner {
  background-image: url(../img/sitemap/mv_img02.jpg);
}
#sitepolicy .cmn_mv_inner {
  background-image: url(../img/sitepolicy/mv_img02.jpg);
}
#privacy .cmn_mv_inner {
  background-image: url(../img/privacy/mv_img02.jpg);
}
#group .cmn_mv_inner {
  background-image: url(../img/group/mv_img02.jpg);
}
#recruit .cmn_mv_inner {
  background-image: url(../img/recruit/mv_img02.jpg);
}
.cat_cramschool .cmn_mv_inner {
  background-image: url(../img/cramschool/mv_img02.jpg);
}
.cat_news .cmn_mv_inner {
  background-image: url(../img/news/mv_img02.jpg);
}
#exam_info_j .cmn_mv_inner {
  background-image: url(../img/exam_info/mv_img02.jpg);
}
.open_school .cmn_mv_inner {
  background-image: url(../img/open_school/mv_img02.jpg);
}
#report .cmn_mv_inner {
  background-image: url(../img/report/mv_img02.jpg);
}
#report_2019 .cmn_mv_inner {
  background-image: url(../img/report_2019/mv_img02.jpg);
}
#medical_2019 .cmn_mv_inner {
  background-image: url(../img/medical_2019/mv_img02.jpg);
}
#report_2020 .cmn_mv_inner {
  background-image: url(../img/report_2020/mv_img02.jpg);
  background-position: 30% center;
}
#club_policy .cmn_mv_inner {
  background-image: url(../img/schoollife/mv_img02.jpg);
}
.exam_s_dl .cmn_mv_inner {
  background-image: url(../img/sitemap/mv_img02.jpg);
}
#introduction .cmn_mv_inner {
  background-image: url(../img/introduction/mv_img02.jpg);
}
.cat_ideal .cmn_mv_inner {
  background-image: url(../img/ideal/mv_img02.jpg);
}
.cat_ideal_junior .cmn_mv_inner {
  background-image: url(../img/ideal/mv_img02_jr.jpg);
}
#web_app .cmn_mv_inner {
  background-image: url(../img/web_app/mv_img02.jpg);
}
.junior_culture .cmn_mv_inner {
  background-image: url(../img/junior_culture/mv_img02.jpg);
}
.returnee .cmn_mv_inner {
  background-image: url(../img/returnee/mv_img02.jpg);
}
.cmn_mv_tit {
  background-color: rgba(1, 1, 1, 0.1);
  color: #fff;
  font-size: 36px;
  font-weight: normal;
  letter-spacing: 0.1em;
  line-height: 1.2;
  padding: 15px 15px 15px 65px;
  position: absolute;
  top: 50%;
  left: -40px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: calc(100% + 40px);
}
.cmn_mv_eng {
  color: rgba(1, 1, 1, 0.15);
  font-size: 38px;
  letter-spacing: 0.2em;
  line-height: 1.3;
  position: absolute;
  bottom: -10px;
  left: 5px;
  white-space: nowrap;
}
/*===============================================
	下層共通：メインビジュアル：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .cmn_mv, .cmn_mv .cmn_mv_inner {
    height: 130px;
  }
  .open_school .cmn_mv:before {
    background-position: 20% center;
  }
  .cmn_mv_tit {
    font-size: 18px;
    letter-spacing: 0;
    line-height: 1.5;
    padding: 15px 15px 15px 45px;
    left: -30px;
    width: calc(100% + 30px);
  }
  .cmn_mv_eng {
    display: none;
  }
}
/* 下層共通：カテゴリーメニュー
---------------------------------------------- */
.cmn_cnav {
  background-color: #f4f6f8;
  height: 50px;
}
.cmn_cnav ol {
  letter-spacing: -.5em;
  margin: 0 auto;
  max-width: 1000px;
  padding-top: 5px;
  text-align: center;
}
.cmn_cnav li {
  display: inline-block;
  letter-spacing: normal;
  margin-right: 5px;
  vertical-align: top;
  width: 14.4%;
}
.cmn_cnav li:last-child {
  margin-right: 0;
}
.cmn_cnav li a {
  background-color: #005293;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  height: 40px;
  line-height: 1.2;
  padding-top: 1px;
  text-align: center;
}
.cat_senior .cmn_cnav li:nth-child(1) a {
  background-color: #930000;
}
.cat_senior .cmn_cnav li:nth-child(2) a {
  background-color: #0168b9;
}
.cat_senior .cmn_cnav li:nth-child(3) a {
  background-color: #016a1a;
}
.cat_senior .cmn_cnav li:nth-child(4) a {
  background-color: #c3bc00;
}
.cat_nth_1 .cmn_cnav li:nth-child(1) a, .cat_nth_2 .cmn_cnav li:nth-child(2) a, .cat_nth_3 .cmn_cnav li:nth-child(3) a, .cat_nth_4 .cmn_cnav li:nth-child(4) a, .cat_nth_5 .cmn_cnav li:nth-child(5) a {
  background-color: #fff;
  border-top: 2px solid #005293;
  color: #005293;
  cursor: default;
  height: 45px;
  opacity: 1;
  padding-top: 0;
}
.cat_senior.cat_nth_1 .cmn_cnav li:nth-child(1) a {
  border-top-color: #930000;
  color: #930000;
}
.cat_senior.cat_nth_2 .cmn_cnav li:nth-child(2) a {
  border-top-color: #0168b9;
  color: #0168b9;
}
.cat_senior.cat_nth_3 .cmn_cnav li:nth-child(3) a {
  border-top-color: #016a1a;
  color: #016a1a;
}
.cat_senior.cat_nth_4 .cmn_cnav li:nth-child(4) a {
  border-top-color: #c3bc00;
  color: #c3bc00;
}
/*===============================================
	下層共通：カテゴリーメニュー：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .cmn_cnav {
    background-color: #f4f6f8;
    height: auto;
  }
  .cmn_cnav ol {
    padding: 6px 15px 0;
    text-align: left;
  }
  .cmn_cnav li {
    margin: 0 6px 6px 0;
    width: calc(50% - 3px);
  }
  .cmn_cnav li:nth-child(even) {
    margin-right: 0;
  }
  .cmn_cnav li a {
    height: 45px;
  }
  .cat_nth_1 .cmn_cnav li:nth-child(1) a, .cat_nth_2 .cmn_cnav li:nth-child(2) a, .cat_nth_3 .cmn_cnav li:nth-child(3) a, .cat_nth_4 .cmn_cnav li:nth-child(4) a {
    border: 2px solid #ddd;
    height: 45px;
  }
}
/* 下層共通：コンテンツ部
--------------------------------------------------------- */
.cmn_tit_page {
  color: #454545;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin-bottom: 50px;
  padding: 45px 0 18px;
  position: relative;
  text-align: center;
}
.cmn_tit_page:after {
  content: '';
  background-color: #005aaa;
  height: 2px;
  margin-left: -121px;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 242px;
}
.cat_junior .cmn_tit_page:after {
  background-color: #01a7bd;
}
.cmn_tit_horizon {
  border-bottom: 3px solid #005aaa;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.1em;
  padding: 40px 0 20px;
  position: relative;
  text-align: center;
}
.cmn_tit_horizon:after {
  content: '';
  background-color: #005aaa;
  height: 1px;
  position: absolute;
  bottom: 3px;
  left: 0;
  width: 100%;
}
.cat_junior .cmn_tit_horizon {
  border-bottom-color: #01a7bd;
}
.cat_junior .cmn_tit_horizon:after {
  background-color: #01a7bd;
}
.cmn_tit_underline {
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 18px;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: 20px;
  padding-bottom: 12px;
  position: relative;
  text-align: center;
}
.cmn_tit_underline:before, .cmn_tit_underline:after {
  content: '';
  display: block;
  height: 2px;
  position: absolute;
  bottom: 0;
  width: 70px;
}
.cmn_tit_underline:before {
  background-color: #005aaa;
  right: 50%;
}
.cmn_tit_underline:after {
  background-color: #003360;
  left: 50%;
}
.cat_junior .cmn_tit_underline:before {
  background-color: #01a7bd;
}
.cat_junior .cmn_tit_underline:after {
  background-color: #036977;
}
.cmn_tit_square {
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 18px;
  font-weight: normal;
  margin-bottom: 15px;
}
.cmn_tit_square:before {
  content: '■';
  color: #005aaa;
  font-size: 15px;
  margin-right: 0.5em;
}
.cat_junior .cmn_tit_square:before {
  color: #01a7bd;
}
.cmn_tit_band {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 10px;
  padding: 8px 5px;
  text-align: center;
}
.cat_junior .cmn_tit_band {
  background-color: #bae7ed;
  color: #1bb0c4;
}
.cat_senior .cmn_tit_band {
  background-color: #d9e7f3;
  color: #005aaa;
}
.cmn_tit_border {
  border-bottom: 1px dotted #ccc;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 10px;
  padding-bottom: 10px;
}
.cmn_tit_border_sub {
  font-size: 14px;
  font-weight: normal;
}
.cmn_tit_normal {
  color: #005aaa;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 20px;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: 1.0em;
  text-align: center;
}
.cat_junior .cmn_tit_normal {
  color: #01a7bd;
}
.cmn_contents p, .cmn_list_normal li {
  line-height: 2.0;
}
.cmn_txt_lead {
  text-align: center;
}
.cmn_list_circle li {
  line-height: 2.0;
  padding-left: 1.0em;
  text-indent: -1.0em;
}
.cmn_list_circle li:before {
  content: '●';
}
.cmn_txt_vertical {
  line-height: 1 !important;
  margin: 0 auto;
  width: 1.0em;
  white-space: normal;
}
.cmn_ctr_img {
  margin: 20px auto 25px;
  max-width: 770px;
  overflow: hidden;
}
.cmn_ctr_img p {
  float: left;
  width: 50%;
}
/*===============================================
	下層共通：コンテンツ部：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .cmn_tit_page {
    font-size: 22px;
    letter-spacing: 0;
    margin-bottom: 25px;
    padding: 25px 0 15px;
  }
  .cmn_tit_page:after {
    margin-left: -81px;
    width: 162px;
  }
  .cmn_tit_horizon {
    font-size: 20px;
    letter-spacing: 0;
    padding: 30px 0 15px;
  }
  .cmn_tit_underline {
    margin-bottom: 15px;
    padding-bottom: 10px;
  }
  .cmn_tit_underline:before, .cmn_tit_underline:after {
    width: 60px;
  }
  .cmn_tit_square {
    font-size: 16px;
  }
  .cmn_tit_square:before {
    font-size: 14px;
  }
  .cmn_tit_band {
    font-size: 16px;
    padding: 8px 0;
  }
  .cmn_tit_border {
    font-size: 16px;
    margin-bottom: 6px;
    padding-bottom: 6px;
  }
  .cmn_tit_border_sub {
    font-size: 12px;
  }
  .cmn_tit_normal {
    font-size: 18px;
    margin-bottom: 0.8em;
  }
  .cmn_contents p, .cmn_list_normal li {
    line-height: 1.5;
  }
  .cmn_list_circle li {
    line-height: 1.5;
  }
  .cmn_txt_lead {
    text-align: left;
  }
  .cmn_ctr_img {
    margin: 15px auto;
    max-width: 350px;
  }
  .cmn_ctr_img p {
    float: none;
    width: 100%;
  }
}
/* ---------------------------------------------------------

	08. 中学校の教育

--------------------------------------------------------- */
/* 中高一貫教育・コース紹介
--------------------------------------------------------- */
#outline .cmn_contents {
  margin-bottom: 0;
}
.outline_lead {
  margin-bottom: 50px;
  max-width: 810px;
}
.outline_lead h3 {
  background-color: #1bb0c4;
  border-bottom: 3px solid #8dd8e2;
  color: #fff;
  font-size: 24px;
  margin-bottom: 20px;
  padding: 11px 0;
  text-align: center;
}
.outline_lead h3 + p {
  margin-bottom: 25px;
  text-align: center;
}
.outline_lead li {
  font-size: 12px;
  line-height: 1.5;
  padding-left: 1.0em;
  text-indent: -1.0em;
}
.outline_flow_table {
  margin-bottom: 10px;
}
.outline_flow_table thead th:nth-child(1) {
  background-color: #b8b8b8;
}
.outline_flow_table thead th:nth-child(2) {
  background-color: #aaa;
}
.outline_flow_table thead th:nth-child(3) {
  background-color: #9c9b9b;
}
.outline_flow_table thead th:nth-child(4) {
  background-color: #8e8d8d;
}
.outline_flow_table thead th:nth-child(5) {
  background-color: #807f7f;
}
.outline_flow_table thead th:nth-child(6) {
  background-color: #727171;
}
.outline_flow_table .outline_flow_arrow td {
  color: #fff;
  height: 84px;
  padding: 10px 15px;
  position: relative;
}
.outline_flow_1 {
  background: linear-gradient(to right, #1499b8 0%, #0973a4 100%);
}
.outline_flow_arrow td:before, .outline_flow_arrow td:after {
  content: '';
  display: block;
  height: 84px;
  position: absolute;
  top: 0;
  z-index: 10;
}
.outline_flow_1:before {
  background: url(../img/junior/outline_flow_arrow01.png) left center no-repeat;
  background-size: 31px 100%;
  left: 0;
  width: 31px;
}
.outline_flow_1:after {
  background: url(../img/junior/outline_flow_arrow02.png) left center no-repeat;
  background-size: 36px 100%;
  right: -18px;
  width: 36px;
}
.outline_flow_2 {
  background: linear-gradient(to right, #0a75a5 0%, #015595 100%);
}
.outline_flow_2:after {
  background: url(../img/junior/outline_flow_arrow03.png) left center no-repeat;
  background-size: 36px 100%;
  right: -18px;
  width: 36px;
}
.outline_flow_3 {
  background: linear-gradient(to right, #015494 0%, #005293 100%);
}
.outline_flow_3:after {
  background: url(../img/junior/outline_flow_arrow04.png) left center no-repeat;
  background-size: 32px 100%;
  right: 0;
  width: 32px;
}
.outline_flow_table .outline_flow_special td {
  background-color: #b84f4f;
  color: #fff;
  font-size: 18px;
  padding: 10px;
}
.outline_flow_table .outline_flow_advance td {
  background-color: #5877ba;
  color: #fff;
  font-size: 18px;
  padding: 10px;
}
.outline_flow_table .outline_flow_special td span, .outline_flow_table .outline_flow_advance td span {
  font-size: 14px;
  margin-left: 1.0em;
}
.outline_tab_menu {
  background-color: #eaeaea;
  height: 80px;
  padding-top: 20px;
}
.outline_tab_menu ul {
  margin: 0 auto;
  max-width: 880px;
  overflow: hidden;
}
.outline_tab_menu li {
  float: left;
  width: 48.5%;
}
.outline_tab_menu li:last-child {
  float: right;
}
.outline_tab_menu a {
  background-color: #fff;
  border: 1px solid #b84f4f;
  color: #b84f4f;
  display: block;
  line-height: 50px;
  font-size: 18px;
  font-weight: bold;
  position: relative;
  text-align: center;
}
.outline_tab_menu li:last-child a {
  border-color: #5877ba;
  color: #5877ba;
}
.outline_tab_menu a.active {
  background-color: #b84f4f;
  color: #fff;
  height: 60px;
}
.outline_tab_menu li:last-child a.active {
  background-color: #5877ba;
  color: #fff;
}
.outline_tab_menu a.active:after {
  content: '▼';
  font-size: 13px;
  line-height: 1;
  margin-left: -0.5em;
  position: absolute;
  bottom: 3px;
  left: 50%;
}
.outline_tab_panel {
  display: none;
}
.outline_tab_panel.active {
  display: block;
}
#outline_special .cmn_tit_horizon {
  border-bottom-color: #b84f4f;
}
#outline_special .cmn_tit_horizon:after {
  background-color: #b84f4f;
}
#outline_special .cmn_tit_normal {
  color: #b84f4f;
}
#outline_special .cmn_tit_underline:before {
  background-color: #b84f4f;
}
#outline_special .cmn_tit_underline:after {
  background-color: #690d0d;
}
#outline_special .cmn_list_circle li:before {
  color: #b84f4f;
}
#outline .cmn_ctr_img {
  margin-bottom: 40px;
}
.outline_cycle, .outline_repeat {
  width: 46.5%;
}
.outline_cycle_img {
  margin: 5px auto 0;
  width: 254px;
}
.outline_repeat dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  overflow: hidden;
  padding-top: 5px;
}
.outline_repeat dt {
  background-color: #b84f4f;
  color: #fff;
  display: flex;
  align-items: center;
  min-height: 90px;
  padding: 0 0.5em;
  width: 2.0em;
}
.outline_repeat dt:not(:first-child) {
  margin-top: 0.75em;
}
.outline_repeat dt:nth-of-type(2) {
  background-color: #828282;
}
.outline_repeat dd {
  border: 1px solid #b84f4f;
  color: #b84f4f;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.5;
  min-height: 90px;
  padding: 10px;
  text-align: center;
  width: calc(100% - 3.0em);
}
.outline_repeat dd:not(:first-of-type) {
  margin-top: 0.75em;
}
.outline_repeat dd:nth-of-type(1) {
  border: none;
  padding: 0;
}
.outline_repeat dd ul:first-child {
  width: 100%;
}
.outline_repeat dd ul:first-child li {
  border: 1px solid #b84f4f;
  padding: 4px;
  white-space: nowrap;
}
.outline_repeat dd ul:first-child li + li {
  margin-top: 3px;
}
.outline_table {
  margin: 20px 0 10px;
}
.outline_table thead th {
  background-color: #888787;
}
.outline_table tbody td {
  background-color: #b6bbbc;
  color: #fff;
}
.outline_table tbody tr:nth-child(n+2) td:nth-last-child(7), .outline_table tbody tr:nth-child(n+2) td:nth-last-child(8) {
  background-color: #bf7272;
}
.outline_table tbody td:nth-last-child(1), .outline_table tbody td:nth-last-child(3), .outline_table tbody td:nth-last-child(5) {
  background-color: #b84f4f;
}
.outline_table tfoot td:nth-last-child(1), .outline_table tfoot td:nth-last-child(3), .outline_table tfoot td:nth-last-child(5) {
  background-color: #690d0d;
}
#outline_advance .outline_table tbody tr:nth-child(n+2) td:nth-last-child(7), #outline_advance .outline_table tbody tr:nth-child(n+2) td:nth-last-child(8) {
  background-color: #788ebf;
}
#outline_advance .outline_table tbody td:nth-last-child(1), #outline_advance .outline_table tbody td:nth-last-child(3), #outline_advance .outline_table tbody td:nth-last-child(5) {
  background-color: #5877ba;
}
#outline_advance .outline_table tfoot td:nth-last-child(1), #outline_advance .outline_table tfoot td:nth-last-child(3), #outline_advance .outline_table tfoot td:nth-last-child(5) {
  background-color: #1f3f85;
}
.outline_table_caption {
  background-color: #fff;
  border: 1px solid #b84f4f;
  color: #b84f4f;
  line-height: 1.5 !important;
  margin-left: auto;
  margin-right: -2px;
  margin-bottom: 40px;
  padding: 5px;
  position: relative;
  text-align: center;
  width: calc(75% + 2px);
}
.outline_table_caption:before, .outline_table_caption:after, .outline_table_caption span:before {
  content: '';
  background: url(../img/junior/outline_ico_arrow01.png) no-repeat;
  background-size: contain;
  height: 11px;
  position: absolute;
  top: -11px;
  left: 23%;
  width: 26px;
}
.outline_table_caption:after {
  left: 56.5%;
}
.outline_table_caption span:before {
  left: 90%;
}
.outline_table_total {
  background-color: #fff;
  border: 2px solid #b84f4f;
  color: #b84f4f;
  table-layout: fixed;
  text-align: center;
  width: 100%;
}
.outline_table_total td {
  border: 1px solid #b84f4f;
  font-size: 18px;
  padding: 5px;
}
.outline_table_total tr:nth-child(1) td {
  background-color: #ededed;
  font-weight: bold;
}
.outline_table_total tr:nth-child(2) td {
  font-size: 14px;
}
.outline_table_right {
  position: relative;
}
.outline_table_right span {
  font-size: 14px;
  position: absolute;
  bottom: 9px;
  right: 15px;
}
.outline_highlevel_img {
  margin-top: 20px;
  text-align: center;
}
#outline_advance .cmn_tit_horizon {
  border-bottom-color: #5877ba;
}
#outline_advance .cmn_tit_horizon:after {
  background-color: #5877ba;
}
#outline_advance .cmn_tit_normal {
  color: #5877ba;
}
#outline_advance .cmn_tit_underline:before {
  background-color: #5877ba;
}
#outline_advance .cmn_tit_underline:after {
  background-color: #274991;
}
.outline_program {
  margin: 20px auto 40px;
  max-width: 770px;
}
.outline_program > div {
  margin-right: 3.5%;
  width: 31.0%;
}
.outline_table_program thead th {
  padding: 5px;
}
.outline_table_program_flow thead th:first-child {
  background-color: transparent;
  width: 5.0em;
}
/*
.outline_table_program thead th:first-child {
	background-color: transparent;
	width: 5.0em;
}
*/
.outline_table_program thead th {
  background-color: #274991;
}
/*
.outline_table_program tbody th {
	background-color: #aaa;
	color: #fff;
	padding: 5px;
	width: 5.0em;
}
*/
.outline_table_program tbody td {
  background-color: #5877ba;
  color: #fff;
  padding: 5px;
}
.outline_event {
  display: flex;
  justify-content: space-between;
  margin-top: 1.5em;
}
.outline_event_item {
  flex: 0 0 31%;
}
.outline_event_item li {
  line-height: 1.4;
}
.outline_event_item li + li {
  margin-top: 0.6em;
}
.outline_event_item li::before {
  color: #274991;
}
.outline_event_title {
  background-color: #274991;
  color: #fff;
  font-size: 1.15em;
  font-weight: bold;
  margin-bottom: 0.5em;
  padding: 0.5em;
}
.outline_event_note {
  margin-block: 1em 40px;
}
.outline_advance_three {
  counter-reset: advance_three;
  margin-top: 30px;
}
.outline_advance_three dt {
  background-color: #e0ecf4;
  color: #5877ba;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 13px;
  padding: 13px;
  position: relative;
  text-align: center;
}
.outline_advance_three dt:after {
  content: counter(advance_three);
  counter-increment: advance_three;
  color: rgba(2, 120, 136, 0.2);
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 72px;
  font-style: italic;
  font-weight: normal;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.outline_advance_three dd + dt {
  margin-top: 18px;
}
.outline_advance_three dd {
  line-height: 2.0;
  text-align: center;
}
.outline_summer {
  margin-top: 20px;
}
.outline_summer > div {
  width: 49.3%;
}
.outline_summer thead th {
  background-color: #5877ba;
  padding: 5px;
}
.outline_summer thead th:first-child {
  width: 8em;
}
.outline_summer tbody th {
  background-color: #d2d2d3;
  color: #333;
}
.outline_summer tbody th[colspan="2"] {
  background-color: #888787;
  color: #fff;
  font-weight: bold;
  padding: 5px 15px;
  text-align: left;
}
.outline_summer tbody td {
  background-color: #ececec;
  color: #333;
  padding: 5px;
  text-align: left;
}
/*===============================================
	中高一貫教育・コース紹介：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .outline_lead {
    margin-bottom: 30px;
  }
  .outline_lead h3 {
    font-size: 18px;
    margin-bottom: 15px;
    padding: 10px 0;
  }
  .outline_lead h3 + p {
    margin-bottom: 20px;
  }
  .outline_flow_table {
    table-layout: fixed;
  }
  .outline_flow_table .outline_flow_arrow td {
    height: auto;
    text-align: left;
  }
  .outline_flow_arrow td:before, .outline_flow_arrow td:after {
    height: 100%;
  }
  .outline_flow_table tbody .outline_flow_1 {
    padding-left: 23px;
  }
  .outline_flow_1:before {
    background-size: 15px 100%;
    width: 15px;
  }
  .outline_flow_1:after {
    background-size: 18px 100%;
    right: -9px;
    width: 18px;
  }
  .outline_flow_2:after {
    background-size: 18px 100%;
    right: -9px;
    width: 18px;
  }
  .outline_flow_3:after {
    background-size: 16px 100%;
    right: 0;
    width: 16px;
  }
  .outline_flow_table .outline_flow_special td, .outline_flow_table .outline_flow_advance td {
    font-size: 16px;
    padding: 5px;
  }
  .outline_tab_menu {
    height: 65px;
    padding-top: 15px;
  }
  .outline_tab_menu ul {
    padding: 0 15px;
  }
  .outline_tab_menu a {
    line-height: 40px;
    font-size: 16px;
  }
  .outline_tab_menu a.active {
    height: 50px;
  }
  .outline_tab_menu a.active:after {
    font-size: 12px;
  }
  #outline .cmn_ctr_img {
    margin-bottom: 20px;
  }
  .outline_cycle, .outline_repeat {
    width: 100%;
  }
  .outline_cycle_img {
    margin-bottom: 30px;
  }
  .outline_repeat dd {
    width: calc(100% - 2.5em);
  }
  .outline_table {
    margin: 15px 0 10px;
  }
  .outline_table_caption {
    margin: 0 0 25px;
    padding: 5px 10px;
    width: 100%;
  }
  .outline_table_caption:before {
    margin-left: -13px;
    left: 50%;
  }
  .outline_table_caption:after, .outline_table_caption span:before {
    display: none;
  }
  .outline_table_total td {
    font-size: 16px;
    padding: 10px;
  }
  .outline_table_total tr:nth-child(2) td {
    font-size: 14px;
  }
  .outline_table_right {
    position: relative;
  }
  .outline_table_right span {
    display: block;
    margin-top: 5px;
    position: static;
  }
  .outline_highlevel_img {
    margin-top: 15px;
  }
  .outline_program {
    margin: 15px auto 20px;
  }
  .outline_program > div {
    margin-right: 0;
    width: 100%;
  }
  .outline_program > div + div {
    margin-top: 15px;
  }
  .outline_table_program_flow {
    overflow-x: scroll;
  }
  .outline_table_program_flow > .outline_table_program {
    white-space: nowrap
  }
  .outline_event {
    display: block;
    margin-top: 1em;
  }
  .outline_event_item + .outline_event_item {
    margin-top: 1em;
  }
  .outline_event_note {
    margin-block: 0.5em 20px;
  }
  .outline_advance_three {
    margin-top: 25px;
  }
  .outline_advance_three dd {
    line-height: 1.5;
  }
  .outline_summer {
    margin-top: 15px;
  }
  .outline_summer > div {
    width: 100%;
  }
  .outline_summer thead th {
    background-color: #5877ba;
    padding: 7px;
  }
  .outline_summer > div + div {
    margin-top: -2px;
  }
  .outline_summer > div:last-child thead {
    display: none;
  }
  .outline_summer > div:last-child tbody th {
    width: 8em;
  }
}
/* 中学校の学習
--------------------------------------------------------- */
#subject .cmn_contents {
  margin-bottom: 0;
}
.subject_feature > div {
  margin-top: 5px;
  width: 47%;
}
.subject_feature .img {
  margin-bottom: 20px;
}
.subject_menu {
  margin-bottom: 40px;
}
.subject_menu ul {
  margin: 0 auto;
  max-width: 700px;
  overflow: hidden;
}
.subject_menu li {
  float: left;
  margin-right: 1.5%;
  width: 18.8%;
}
.subject_menu li:last-child {
  margin-right: 0;
}
.subject_menu li a {
  background: linear-gradient(to bottom, #e7f2f3 0%, #f3f6f6 100%);
  color: #01a7bd;
  display: block;
  font-size: 20px;
  letter-spacing: 1.0em;
  height: 100%;
  padding: 13px 0 23px;
  padding-left: 1.0em;
  position: relative;
  text-align: center;
}
.subject_menu li a:after {
  content: '';
  border-right: 1px solid #01a7bd;
  border-bottom: 1px solid #01a7bd;
  display: block;
  height: 10px;
  position: absolute;
  bottom: 5px;
  left: 50%;
  -webkit-transform: rotate(45deg) translateX(-50%);
  transform: rotate(45deg) translateX(-50%);
  width: 10px;
}
.subject_box {
  padding-bottom: 40px;
}
.subject_box + .subject_box {
  margin-top: 45px;
}
.subject_box:before {
  content: '';
  background-color: #f2fbfc;
  display: block;
  height: 68%;
  margin-left: -50vw;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 100vw;
  z-index: -1;
}
.subject_box h4 {
  background: linear-gradient(to bottom, #e7f2f3 0%, #f3f6f6 100%);
  color: #01a7bd;
  font-size: 20px;
  font-weight: normal;
  letter-spacing: 1.0em;
  padding: 13px 0;
  padding-left: 1.0em;
  position: relative;
  text-align: center;
}
.subject_box h4 span {
  font-size: 36px;
  letter-spacing: 0.1em;
  opacity: 0.1;
  position: absolute;
  bottom: -0.4em;
  right: 0;
}
/*===============================================
	中学校の学習：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .subject_feature > div {
    margin: 0 auto;
    max-width: 330px;
    width: 100%;
  }
  .subject_feature > div + div {
    margin-top: 25px;
  }
  .subject_feature .img {
    margin-bottom: 15px;
  }
  .subject_menu ul {
    padding: 0 15px;
  }
  .subject_menu li a {
    font-size: 16px;
    letter-spacing: 0;
    padding-left: 0;
  }
  .subject_box {
    padding-bottom: 25px;
  }
  .subject_box + .subject_box {
    margin-top: 30px;
  }
  .subject_box:before {
    height: 55%;
  }
  .subject_box h4 span {
    display: none;
  }
}
/* 学校だより
--------------------------------------------------------- */
#letter .cmn_contents {
  margin-bottom: 0;
}
#letter .cmn_tit_page {
  margin-bottom: 40px;
}
.letter_list {
  margin: 20px auto 0;
  padding: 40px 0 60px;
}
.letter_list ol {
  margin-bottom: -4.4%;
  overflow: visible;
}
.letter_list ol:after {
  content: '';
  clear: both;
  display: block;
}
.letter_list li {
  margin: 0 7.4% 4.4% 0;
  width: 28.4%;
}
.letter_list .img {
  margin-bottom: 25px;
}
/*===============================================
	学校だより：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #letter .cmn_tit_page {
    margin-bottom: 30px;
  }
  .letter_list {
    margin: 20px auto 0;
    padding: 20px 0 40px;
  }
  .letter_list ol {
    margin-bottom: -15px;
    overflow: visible;
    padding: 0 20px;
  }
  .letter_list ol:after {
    content: '';
    clear: both;
    display: block;
  }
  .letter_list li {
    float: left;
    margin: 0 8.0% 25px 0;
    width: 46.0%;
  }
  .letter_list li:nth-child(3n) {
    margin-right: 8.0%;
  }
  .letter_list li:nth-child(even) {
    margin-right: 0;
  }
  .letter_list li + li {
    margin-top: 0;
  }
  .letter_list .img {
    margin-bottom: 10px;
  }
}
/* ---------------------------------------------------------

	09. 高等学校の教育

--------------------------------------------------------- */
.senior_teacher {
  padding: 50px 0 35px;
  position: relative;
}
.senior_teacher:after {
  content: '';
  height: 13px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100vw;
}
#special .senior_teacher:after {
  background: linear-gradient(to right, #f9f0f0 0%, #fcf7f7 100%);
}
#advance .senior_teacher:after {
  background: linear-gradient(to right, #f1f4f8 0%, #f3f5f8 100%);
}
#international .senior_teacher:after {
  background: linear-gradient(to right, #e2e7e6 0%, #e2e8e7 100%);
}
#athlete .senior_teacher:after {
  background: linear-gradient(to right, #edede9 0%, #efefee 100%);
}
.senior_teacher_mv {
  margin-bottom: 30px;
}
.senior_teacher_mv:after {
  content: '';
  clear: both;
  display: block;
}
.senior_teacher_tit {
  float: left;
  padding: 70px 0 60px;
  position: relative;
  width: 50%;
}
.senior_teacher_tit:before {
  content: '';
  height: 100%;
  margin-right: -110px;
  position: absolute;
  top: 0;
  right: 0;
  width: 100vw;
  z-index: -1;
}
#special .senior_teacher_tit:before {
  background: linear-gradient(to bottom, #f7ecec 0%, #efd9d9 100%);
}
#advance .senior_teacher_tit:before {
  background: linear-gradient(to bottom, #e2e8f1 0%, #e6eaf2 100%);
}
#international .senior_teacher_tit:before {
  background: linear-gradient(to bottom, #e2e8e7 0%, #e2e7e6 100%);
}
#athlete .senior_teacher_tit:before {
  background: linear-gradient(to bottom, #efefee 0%, #edede9 100%);
}
.senior_teacher_tit h3 {
  display: inline-block;
  font-size: 30px;
  font-weight: normal;
  margin-bottom: 25px;
  position: relative;
}
.senior_teacher_tit h3:before {
  content: '';
  background-color: #ebcfcf;
  border-radius: 50%;
  display: block;
  height: 60px;
  position: absolute;
  top: -15px;
  right: -40px;
  width: 80px;
  z-index: -1;
}
.senior_teacher_tit h3:after {
  content: '';
  border: 8px solid transparent;
  border-top: 20px solid #ebcfcf;
  display: block;
  height: 0;
  position: absolute;
  top: 38px;
  right: 10px;
  -webkit-transform: rotate(20deg);
  transform: rotate(20deg);
  width: 0;
  z-index: -1;
}
#special .senior_teacher_tit h3:before {
  background-color: #ebcfcf;
}
#special .senior_teacher_tit h3:after {
  border-top-color: #ebcfcf;
}
#advance .senior_teacher_tit h3:before {
  background-color: #cedbea;
}
#advance .senior_teacher_tit h3:after {
  border-top-color: #cedbea;
}
#international .senior_teacher_tit h3:before {
  background-color: #cbdbd2;
}
#international .senior_teacher_tit h3:after {
  border-top-color: #cbdbd2;
}
#athlete .senior_teacher_tit h3:before {
  background-color: #eae9db;
}
#athlete .senior_teacher_tit h3:after {
  border-top-color: #eae9db;
}
#special .senior_teacher_tit h3 span {
  color: #930000;
}
#advance .senior_teacher_tit h3 span {
  color: #0168b9;
}
#international .senior_teacher_tit h3 span {
  color: #016a1a;
}
#athlete .senior_teacher_tit h3 span {
  color: #c2bb3c;
}
.senior_teacher_tit h4 {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
}
.senior_teacher_img {
  float: left;
  margin-top: 30px;
  position: relative;
  width: 50%;
}
.senior_teacher_img:before {
  content: '';
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  z-index: -1;
}
#special .senior_teacher_img:before {
  background: linear-gradient(to bottom, #fcf7f7 0%, #f9f0f0 100%);
}
#advance .senior_teacher_img:before {
  background: linear-gradient(to bottom, #f3f5f9 0%, #f1f4f8 100%);
}
#international .senior_teacher_img:before {
  background: linear-gradient(to bottom, #e2e8e7 0%, #e2e7e6 100%);
}
#athlete .senior_teacher_img:before {
  background: linear-gradient(to bottom, #efefee 0%, #efefee 100%);
}
.senior_teacher h5 {
  clear: both;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 15px;
}
#special .senior_teacher h5 {
  color: #930000;
}
.senior_caution_bottom {
  margin-top: 1.5em;
}
.international_contact {
  background-color: #ebf9ee;
  margin-top: 3em;
  max-width: 700px;
  padding: 2em;
}
.international_contact_text p + p {
  margin-top: 1em;
}
.international_contact_image img {
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: 0 72%;
}
/*===============================================
	高等学校の教育（共通）：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .senior_teacher {
    padding: 30px 15px 30px;
  }
  .senior_teacher:after {
    left: 0;
  }
  .senior_teacher_mv {
    margin-bottom: 15px;
  }
  .senior_teacher_tit {
    float: none;
    margin-bottom: 15px;
    padding: 15px 0 10px;
    text-align: center;
    width: 100%;
  }
  .senior_teacher_tit:before {
    margin-right: 0;
    right: -15px;
  }
  .senior_teacher_tit h3 {
    font-size: 24px;
    margin-bottom: 10px;
  }
  .senior_teacher_tit h3:before {
    height: 40px;
    top: -5px;
    width: 55px;
  }
  .senior_teacher_tit h3:after {
    top: 22px;
    right: -5px;
  }
  .senior_teacher_tit h4 {
    font-size: 16px;
  }
  .senior_teacher_img {
    float: none;
    margin-top: 0;
    text-align: center;
    width: 100%;
  }
  .senior_teacher_img:before {
    display: none;
  }
  .senior_teacher_img img {
    height: 150px;
  }
  .international_contact {
    margin-top: 2em;
    max-width: calc(100% - 30px);
  }
}
/* 特進コース
--------------------------------------------------------- */
#special .cmn_tit_page:after {
  background-color: #930000;
}
#special .cmn_tit_normal {
  color: #930000;
}
#special .cmn_tit_underline:before {
  background-color: #930000;
}
#special .cmn_tit_underline:after {
  background-color: #610000;
}
#special .cmn_ctr_img {
  margin-bottom: 40px;
}
.special_flow {
  background-color: #f4e5e5;
  margin-bottom: 40px;
  padding: 20px 0;
  position: relative;
}
.special_flow li {
  padding: 0 15px 50px;
  position: relative;
}
.special_flow li + li {
  border-left: 1px dotted #930000;
}
.special_flow h4 {
  color: #930000;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px;
}
.special_flow h4::first-letter {
  font-size: 24px;
}
.special_flow {
  overflow: visible;
}
.special_flow:after {
  content: '';
  clear: both;
  display: block;
}
.special_flow dt {
  float: left;
  font-weight: bold;
  line-height: 50px;
  text-align: center;
  width: 4.0em;
}
.special_flow dd {
  background-color: #930000;
  color: #fff;
  font-weight: bold;
  line-height: 50px;
  margin-left: 4.5em;
  padding: 0 15px;
  position: relative;
  text-align: left;
}
.special_flow dd:nth-of-type(2) {
  background-color: #9e9c9c;
  width: calc((100% - 4.5em) * 0.5);
}
.special_flow li:last-child dd:nth-of-type(1):before {
  content: '';
  background-color: #c37272;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  width: 37.5%;
  z-index: 10;
}
.special_flow .special_flow_explain {
  background-color: #fff;
  border: 1px solid #930000;
  border-radius: 5px;
  color: #930000;
  font-size: 12px;
  font-weight: normal;
  line-height: 1;
  margin: 10px 0 0 auto;
  padding: 12px;
  position: absolute;
  bottom: 0;
  right: 15px;
  width: 15em;
}
.special_flow .special_flow_explain:after {
  content: '';
  border-right: 1px dotted #930000;
  display: block;
  height: 85px;
  position: absolute;
  bottom: 100%;
  right: 23px;
  width: 1px;
  z-index: 100;
}
.special_table {
  margin: 20px 0 5px;
}
.special_table thead th {
  background-color: #888787;
}
.special_table thead tr:nth-child(1) th:first-child, .special_table thead tr:nth-child(1) th:nth-child(2) {
  width: 70px;
}
.special_table thead tr:nth-child(2) th:nth-last-child(1), .special_table thead tr:nth-child(2) th:nth-last-child(3) {
  background-color: #bf7272;
}
.special_table thead tr:nth-child(2) th:nth-last-child(2), .special_table thead tr:nth-child(2) th:nth-last-child(4) {
  background-color: #a5a2a2;
}
.special_table tbody td:first-child {
  background-color: #bf7272;
  color: #fff;
}
.special_table tbody tr:not(:last-child) td:nth-last-child(1), .special_table tbody tr:not(:last-child) td:nth-last-child(3) {
  background-color: #b84f4f;
  color: #fff;
}
.special_ctr_img {
  position: relative;
}
/* .special_btn_day {
	position: absolute;
	top: 350px;
	right: 20px;
	z-index: 1000;
}
.special_btn_day.fixed {
	position: fixed;
	top: 20px;
} */
.special_btn_day a {
  background: linear-gradient(to bottom, #950304 0%, #c06b6b 100%);
  border: 4px solid #c87e7e;
  border-radius: 50%;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  height: 180px;
  line-height: 1.4;
  padding-bottom: 15px;
  position: absolute;
  top: 50%;
  left: 75%;
  transform: translate(-50%, -50%);
  width: 180px;
}
.special_btn_day a:before {
  content: '';
  background-color: #c67979;
  border-radius: 50%;
  height: 30px;
  margin-left: -15px;
  position: absolute;
  bottom: 26px;
  left: 50%;
  width: 30px;
}
.special_btn_day a:after {
  content: '';
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  display: block;
  height: 10px;
  position: absolute;
  bottom: 42px;
  left: 50%;
  -webkit-transform: rotate(-45deg) translateX(-90%);
  transform: rotate(-45deg) translateX(-90%);
  width: 10px;
}
.special_result {
  margin-block: 1.5em 0;
}
.special_result h4 {
  color: #930000;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-weight: normal;
  margin-bottom: 0.5em;
}
.special_result .cmn_table + h4 {
  margin-top: 0.7em;
}
.special_result .cmn_table thead th {
  background-color: #930000;
}
.special_result_summary tbody td {
  background-color: #fff;
  border-bottom: 1px dashed #930000;
}
.special_result_summary tbody td span {
  font-weight: bold;
  font-size: 18px;
}
.special_support {
  margin-block: 2em 0;
}
.special_support li + li {
  margin-top: 1.5em;
}
.special_title_num {
  color: #930000;
  display: flex;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 18px;
  font-weight: normal;
  line-height: 1.4;
  margin-bottom: 0.5em;
}
.special_title_num span {
  border: 1px solid #930000;
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  height: 1.4em;
  margin-right: 0.25em;
  width: 1.4em;
}
.special_event li + li {
  margin-top: 1.5em;
}
.special_event_image {
  margin-top: 0.75em;
}
#special .cmn_tit_horizon {
  border-bottom-color: #930000;
  margin-bottom: 0.5em;
}
#special .cmn_tit_horizon::after {
  background-color: #930000;
}
/*===============================================
	特進コース：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #special .cmn_ctr_img {
    margin-bottom: 25px;
  }
  .special_flow {
    margin-bottom: 30px;
    padding: 0 15px;
  }
  .special_flow li {
    padding: 15px 0;
  }
  .special_flow li + li {
    border-left: none;
    border-top: 1px dotted #930000;
    margin-top: 0;
  }
  .special_flow h4 {
    margin-bottom: 15px;
  }
  .special_flow h4::first-letter {
    font-size: 20px;
  }
  .special_flow dt {
    line-height: 30px;
  }
  .special_flow dd {
    line-height: 30px;
  }
  .special_flow .special_flow_explain {
    position: relative;
    right: 0;
  }
  .special_flow .special_flow_explain:after {
    height: 55px;
    right: 20%;
  }
  /* .special_btn_day {
		position: absolute;
		top: 300px;
		right: 10px;
	}
	.special_btn_day.fixed {
		top: 10px;
	} */
  .special_btn_day a {
    font-size: 18px;
    height: 140px;
    margin-top: 1em;
    margin-inline: auto;
    position: relative;
    top: 0;
    left: 0;
    transform: none;
    width: 140px;
  }
  .special_btn_day a:before {
    height: 20px;
    margin-left: -10px;
    bottom: 20px;
    width: 20px;
  }
  .special_btn_day a:after {
    height: 8px;
    bottom: 31px;
    width: 8px;
  }
  .special_result {
    margin-block: 1em 0;
  }
  .special_result .cmn_table + h4 {
    margin-top: 20px;
  }
  .special_support {
    margin-block: 1em 0;
  }
  .special_title_num {
    font-size: 16px;
    line-height: 1.4;
    margin-bottom: 0.4em;
  }
}
/* 特進コース：1日の流れ
--------------------------------------------------------- */
#day .cmn_tit_page:after {
  background-color: #930000;
}
#day .cmn_tit_normal {
  color: #930000;
}
.day_list {
  margin: 0 auto 50px;
  max-width: 1200px;
}
.day_list_box {
  display: flex;
  overflow: hidden;
}
.day_list_box:nth-child(even) {
  flex-direction: row-reverse;
}
.day_list_img {
  width: 50%;
}
.day_list_txt {
  background-color: #f4e5e5;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-left: 70px;
  position: relative;
  width: 50%;
}
.day_list_box:nth-child(even) .day_list_txt {
  padding-left: 0;
  padding-right: 70px;
}
.day_list_txt:before {
  content: '';
  background-color: #d19292;
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  left: -2px;
  width: 4px;
}
.day_list_box:nth-child(even) .day_list_txt:before {
  left: auto;
  right: -2px;
}
.day_list_txt h4 {
  background-color: #ae4040;
  border-radius: 50%;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 36px;
  font-style: italic;
  font-weight: normal;
  height: 100px;
  padding-right: 7px;
  position: absolute;
  top: 50%;
  left: -50px;
  text-align: center;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100px;
}
.day_list_box:nth-child(even) .day_list_txt h4 {
  left: auto;
  right: -50px;
}
.day_list_box:last-child .day_list_txt h4 {
  font-size: 28px;
}
.day_list_txt h5 {
  background: linear-gradient(to bottom, transparent 0%, transparent 50%, #fff 50%, #fff 100%);
  color: #ae4040;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.6;
  margin-bottom: 20px;
  padding-left: 1.0em;
}
.day_list_box:nth-child(even) .day_list_txt h5 {
  padding-right: 1.0em;
  text-align: right;
}
.day_list_txt h6 {
  color: #ae4040;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 15px;
  width: 280px;
}
.day_list_box:nth-child(even) .day_list_txt h6 {
  margin-left: auto;
  text-align: right;
}
.day_list_txt p {
  width: 280px;
}
.day_list_box:nth-child(even) .day_list_txt p {
  margin-left: auto;
}
/*===============================================
	特進コース：1日の流れ：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .day_list {
    margin: 0 auto 30px;
    max-width: 600px;
  }
  .day_list_box {
    display: block;
  }
  .day_list_img {
    width: 100%;
  }
  .day_list_txt {
    display: block;
    padding: 38px 15px 15px;
    width: 100%;
  }
  .day_list_box:nth-child(even) .day_list_txt {
    padding: 38px 15px 15px;
  }
  .day_list_txt:before {
    height: 4px;
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
  }
  .day_list_box:nth-child(even) .day_list_txt:before {
    left: 0;
    right: auto;
  }
  .day_list_txt h4 {
    font-size: 22px;
    height: 65px;
    padding-right: 5px;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 65px;
  }
  .day_list_box:nth-child(even) .day_list_txt h4 {
    left: 50%;
    right: auto;
  }
  .day_list_box:last-child .day_list_txt h4 {
    font-size: 18px;
  }
  .day_list_box h5 {
    background: #fff;
    line-height: 1.3;
    margin-bottom: 12px;
    padding: 3px 0.5em;
  }
  .day_list_box:nth-child(even) .day_list_txt h5 {
    padding-right: 0;
    padding: 3px 0.5em;
    text-align: left;
  }
  .day_list_txt h6 {
    margin-bottom: 10px;
    width: 100%;
  }
  .day_list_box:nth-child(even) .day_list_txt h6 {
    margin-left: 0;
    text-align: left;
  }
  .day_list_txt p {
    width: 100%;
  }
  .day_list_box:nth-child(even) .day_list_txt p {
    margin-left: 0;
  }
}
/* 進学コース
--------------------------------------------------------- */
#advance .cmn_tit_page:after {
  background-color: #0168b9;
}
#advance .cmn_tit_normal {
  color: #0168b9;
}
#advance .cmn_tit_underline:before {
  background-color: #0168b9;
}
#advance .cmn_tit_underline:after {
  background-color: #003967;
}
#advance .cmn_ctr_img {
  margin-bottom: 40px;
}
#advance .cmn_tit_square {
  margin-top: 25px;
}
.senior_flow {
  margin: 25px 0 5px;
}
.senior_flow > li {
  background-color: #e5f0f8;
  margin-right: 4%;
  padding: 20px;
  position: relative;
}
.senior_flow > li:first-child {
  width: 30%;
}
.senior_flow > li:nth-child(2) {
  width: 46%;
}
.senior_flow > li:last-child {
  width: 16%;
}
.senior_flow > li:not(:last-child):after {
  content: '';
  border-right: 1px solid #9e9c9c;
  border-bottom: 1px solid #9e9c9c;
  height: 25px;
  position: absolute;
  top: 50%;
  right: -30px;
  -webkit-transform: rotate(-45deg) translateY(-50%);
  transform: rotate(-45deg) translateY(-50%);
  width: 25px;
}
.senior_flow h4 {
  color: #225ba4;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px;
}
.senior_flow h4::first-letter {
  font-size: 24px;
}
.senior_flow dl {
  margin: 0 auto 15px;
  max-width: 180px;
}
.senior_flow dt {
  float: left;
  font-weight: bold;
  line-height: 50px;
  text-align: center;
  width: 4.0em;
}
.senior_flow dd {
  background-color: #0168b9;
  color: #fff;
  font-weight: bold;
  line-height: 50px;
  margin-left: 4.5em;
  padding: 0 15px;
  position: relative;
  text-align: left;
}
.senior_flow dd:nth-of-type(2) {
  background-color: #9e9c9c;
  width: calc((100% - 4.5em) * 0.6);
}
.senior_flow thead th {
  background-color: #0168b9;
}
.senior_flow thead th:first-child {
  width: 4em;
}
.senior_flow tbody th {
  background-color: #9e9c9c;
  color: #fff;
}
.senior_flow tbody td {
  background-color: #fff;
  color: #333;
  padding: 5px 0;
}
.senior_flow_third p {
  line-height: 1.5;
  text-align: left;
}
.senior_flow_third p:nth-of-type(1) {
  color: #225ba4;
  margin-bottom: 10px;
}
.senior_flow_third p:nth-of-type(2) {
  background-color: #fff;
  padding: 10px;
}
.advance_schedule h5 {
  color: #2e5794;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 7px;
}
.advance_table thead th {
  background-color: #418ecb;
}
.advance_table tbody th {
  background-color: #878687;
  color: #fff;
}
.advance_table tbody td {
  background-color: #dbdcdb;
  color: #333;
  padding: 5px 0;
}
.advance_table_explain {
  border: 1px solid #0168b9;
  color: #2e5794;
  font-weight: bold;
  margin-top: 15px;
  position: relative;
  text-align: center;
}
.advance_table_explain:before, .advance_table_explain:after {
  content: '';
  border: 7px solid transparent;
  border-bottom: 18px solid #0168b9;
  display: block;
  height: 0;
  margin-left: -7px;
  position: absolute;
  top: -25px;
  left: 50%;
  width: 0
}
.advance_table_explain:after {
  border-bottom-color: #fff;
  top: -22px;
}
.senior_flow + .cmn_table_caption {
  margin-bottom: 25px;
}
.advance_lead {
  margin-block: 1em 40px;
}
.advance_select {
  display: flex;
  justify-content: space-between;
  margin-block: 2em 40px;
}
.advance_select > li {
  background-color: #e5f0f8;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex-basis: 47%;
  font-size: 1.15em;
  padding: 20px;
  position: relative;
  text-align: center;
}
.advance_select > li:first-child::after {
  content: '';
  border-right: 1px solid #9e9c9c;
  border-bottom: 1px solid #9e9c9c;
  height: 25px;
  position: absolute;
  top: 50%;
  right: -10%;
  -webkit-transform: rotate(-45deg) translateY(-50%);
  transform: rotate(-45deg) translateY(-50%);
  width: 25px;
}
.advance_select h4 {
  color: #225ba4;
  font-size: 16px;
  font-weight: bold;
}
.advance_select h4 em {
  font-size: 24px;
  font-style: normal;
  margin-right: 0.15em;
}
.advance_select p {
  margin-block: auto;
}
.advance_select ul {
  margin-top: 1em;
}
.advance_select ul li {
  background-color: #225ba4;
  color: #fff;
  padding: 0.5em 1em;
}
.advance_select ul li + li {
  margin-top: 0.5em;
}
/*===============================================
	進学コース：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #advance .cmn_ctr_img {
    margin-bottom: 30px;
  }
  .senior_flow {
    margin: 25px 0 5px;
  }
  .senior_flow > li {
    margin-right: 0;
    padding: 15px;
  }
  .senior_flow > li:first-child, .senior_flow > li:nth-child(2), .senior_flow > li:last-child {
    width: 100%;
  }
  .senior_flow > li:not(:last-child):after {
    height: 20px;
    top: auto;
    bottom: -10px;
    right: 50%;
    -webkit-transform: rotate(45deg) translate(50%, 0);
    transform: rotate(45deg) translate(50%, 0);
    width: 20px;
  }
  .senior_flow > li + li {
    margin-top: 25px;
  }
  .senior_flow h4 {
    margin-bottom: 15px;
  }
  .senior_flow h4::first-letter {
    font-size: 20px;
  }
  .senior_flow dl {
    margin: 0 auto 15px;
    max-width: 100%;
  }
  .senior_flow dt {
    line-height: 30px;
  }
  .senior_flow dd {
    line-height: 30px;
  }
  .senior_flow .cmn_table {
    table-layout: fixed;
  }
  .senior_flow thead th {
    background-color: #0168b9;
  }
  .senior_flow thead th:first-child {
    width: 4em;
  }
  .senior_flow tbody th {
    background-color: #9e9c9c;
    color: #fff;
  }
  .senior_flow tbody td {
    background-color: #fff;
    color: #333;
    padding: 5px 0;
  }
  .senior_flow_third p {
    line-height: 1.5;
    text-align: left;
  }
  .senior_flow_third p:nth-of-type(1) {
    color: #225ba4;
    margin-bottom: 10px;
  }
  .senior_flow_third p:nth-of-type(2) {
    background-color: #fff;
    padding: 10px;
  }
  .advance_lead {
    margin-bottom: 30px;
  }
  .advance_table {
    table-layout: fixed;
    width: 100%;
  }
  .advance_table tbody th {
    padding: 5px 10px;
  }
  .advance_table tbody td {
    padding: 5px;
  }
  .advance_table_explain {
    padding: 5px 0;
  }
  .advance_select {
    display: block;
    margin-block: 1.5em 20px;
  }
  .advance_select > li {
    display: block;
    font-size: 1em;
    padding: 20px;
  }
  .advance_select > li + li {
    margin-top: 30px;
  }
  .advance_select > li:first-child::after {
    content: '';
    border-right: 1px solid #9e9c9c;
    border-bottom: 1px solid #9e9c9c;
    height: 20px;
    position: absolute;
    top: calc(100% - 10px);
    right: 50%;
    -webkit-transform: rotate(45deg) translateX(50%);
    transform: rotate(45deg) translateX(50%);
    width: 20px;
  }
  .advance_select h4 {
    margin-bottom: 1em;
  }
}
/*===============================================
	進学コース：534px未満
===============================================*/
@media screen and (max-width:533px) {
  .advance_table {
    width: 500px;
  }
}
/* インターナショナルコース
--------------------------------------------------------- */
#international .cmn_tit_page:after {
  background-color: #016a1a;
}
#international .cmn_tit_normal {
  color: #016a1a;
}
#international .cmn_tit_underline:before {
  background-color: #016a1a;
}
#international .cmn_tit_underline:after {
  background-color: #003b0e;
}
.international_flow {
  margin-bottom: 25px;
}
.international_flow > li {
  background-color: #e5f0e8;
}
.international_flow > li:first-child {
  margin-right: 15%;
  width: 27%;
}
.international_flow > li:nth-child(2) {
  padding-left: 40px;
  width: 29%;
}
.international_flow > li:last-child {
  width: 25%;
}
.international_flow > li:nth-child(2) h4 {
  margin-left: -20px;
}
.international_flow > li:nth-child(2) dl {
  margin-left: -10px;
}
.international_flow > li:not(:last-child):after {
  top: 23%;
}
.international_flow > li:first-child:after {
  right: -80px;
}
.international_flow h4 {
  color: #016a1a;
}
.international_flow dd {
  background-color: #016a1a;
}
.international_flow thead th {
  background-color: #016a1a;
}
.international_flow .senior_flow_third p:nth-of-type(1) {
  color: #016a1a;
  margin-bottom: 15px;
}
.international_flow_inner {
  position: relative;
}
.international_flow > li:first-child table {
  width: 180px;
}
.international_flow_abroad {
  background-color: #016a1a;
  border-radius: 5px;
  color: #fff;
  padding: 15px 10px;
  position: absolute;
  top: 2px;
  left: 190px;
  width: 185px;
  z-index: 10;
}
.international_flow_abroad h5 {
  font-size: 15px;
  margin-bottom: 10px;
}
.international_flow_abroad p + h5 {
  margin-top: 18px;
}
.international_flow_abroad p {
  font-size: 13px;
  line-height: 1.3;
}
.international_flow_explain {
  background-color: #016a1a;
  color: #fff;
  padding: 5px;
  position: relative;
  text-align: center;
}
.international_flow_explain:before, .international_flow_explain:after, .international_flow_explain span:before {
  content: '';
  border: 18px solid transparent;
  border-bottom: 18px solid #016a1a;
  display: block;
  height: 0;
  position: absolute;
  top: -36px;
  width: 0;
}
.international_flow_explain:before {
  left: 12%;
}
.international_flow_explain:after {
  left: 55%;
}
.international_flow_explain span:before {
  left: 86%;
}
.international_flow_explain + .cmn_table_caption {
  margin-bottom: 30px;
}
.international_motto {
  margin-bottom: 40px;
  text-align: center;
}
.international_motto:before {
  background-color: #e5f0e8;
}
.international_motto h3 {
  border-right: 1px solid #016a1a;
  border-left: 1px solid #016a1a;
  display: inline-block;
  font-size: 20px;
  font-weight: normal;
  margin: 0 auto 25px;
  padding: 0 1.0em;
}
.international_motto h4 {
  color: #016a1a;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.8;
  margin-bottom: 10px;
  text-align: left;
}
.international_motto p {
  text-align: left;
}
.international_special .cmn_txt_lead {
  color: #016a1a;
  margin-bottom: 40px;
}
.international_special_box {
  border: 1px solid #016a1a;
  padding: 0 25px 10px;
}
.international_special_box h4 {
  font-size: 18px;
  font-weight: normal;
  line-height: 1.3;
  margin: -20px auto 20px;
  text-align: center;
}
.international_special_box h4 span {
  background-color: #fff;
  display: inline-block;
  padding: 0 1.0em;
}
.international_special_box ul {
  overflow: hidden;
}
.international_special_box li {
  border-bottom: 1px dotted #016a1a;
  float: left;
  line-height: 1.5;
  margin-right: 6%;
  padding: 1.0em 0;
  width: 47%;
}
.international_special_box li:nth-child(1), .international_special_box li:nth-child(2) {
  padding-top: 0;
}
.international_special_box li:nth-child(3), .international_special_box li:nth-child(5) {
  border-bottom: none;
}
.international_special_box li:nth-child(2), .international_special_box li:nth-child(4), .international_special_box li:nth-child(5) {
  margin-right: 0;
}
.international_lead a {
  color: #016a1a;
  font-weight: bold;
}
.international_english {
  padding-top: 40px;
}
.international_english_list {
  margin-top: 2em;
  overflow: visible;
}
.international_english_list::after {
  content: '';
  clear: both;
  display: block;
}
.international_english_list > * {
  width: 47%;
}
.international_english_list li + li {
  border-top: 1px dotted #888;
  margin-top: 1.5em;
  padding-top: 1.5em;
}
.international_english_list div {
  margin-top: 0.5em;
}
.international_title {
  color: #016a1a;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 16px;
  font-weight: normal;
  margin-bottom: 0.5em;
}
.international_title span {
  border: 1px solid #016a1a;
  display: inline-block;
  font-size: 0.9em;
  margin-left: 0.5em;
  padding: 0.25em 0.5em;
}
.international_english_list div {
  margin-top: 0.5em;
}
.international_abroad {
  padding-top: 40px;
}
.international_abroad_list {
  margin-top: 2em;
}
.international_abroad_list .international_title {
  margin-bottom: 0.5em;
}
.international_abroad_list .cmn_list_circle {
  margin-bottom: 0.5em;
}
.international_abroad_list .cmn_list_circle li::before {
  color: #016a1a;
}
.international_note {
  margin-top: -0.25em;
  margin-bottom: 0.75em;
  padding-left: 1em;
  text-indent: -1em;
}
.international_result {
  padding-top: 40px;
}
.international_result_title {
  color: #016a1a;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.4;
  margin-block: 1.5em 1em;
  text-align: center;
}
.international_table {
  table-layout: auto;
}
.international_table thead th {
  background-color: #016a1a;
}
.international_table tbody td:nth-last-child(4) {
  background-color: #9e9c9c;
  color: #fff;
}
.international_table tbody tr:last-child td:first-child {
  background-color: #016a1a;
  color: #fff;
}
/*===============================================
	進学コース：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .international_flow {
    margin-bottom: 10px;
  }
  .international_flow > li:first-child {
    margin-right: 0;
    margin-bottom: 122px;
    padding-bottom: 20px;
    width: 100%;
  }
  .international_flow > li:nth-child(2) {
    padding-left: 15px;
    padding-top: 20px;
    width: 100%;
  }
  .international_flow > li:last-child {
    width: 100%;
  }
  .international_flow > li:nth-child(2) h4 {
    margin-left: 0;
  }
  .international_flow > li:nth-child(2) dl {
    margin-left: auto;
  }
  .international_flow > li:not(:last-child):after {
    top: auto;
    bottom: -10px;
  }
  .international_flow > li:first-child:after {
    right: -30px;
  }
  .international_flow .senior_flow_third p:nth-of-type(1) {
    margin-bottom: 10px;
  }
  .international_flow > li:first-child table {
    width: 100%;
  }
  .international_flow_abroad {
    top: auto;
    margin-left: -92px;
    bottom: -155px;
    left: 50%;
  }
  .international_flow_explain {
    margin-bottom: 5px;
    padding: 5px 10px;
  }
  .international_flow_explain:before, .international_flow_explain:after, .international_flow_explain span:before {
    display: none;
  }
  .international_motto {
    margin-bottom: 25px;
  }
  .international_motto:before {
    background-color: #e5f0e8;
  }
  .international_motto h3 {
    font-size: 18px;
    line-height: 1.3;
    margin: 0 auto 20px;
    padding: 0 0.5em;
  }
  .international_motto h4 {
    line-height: 1.4;
  }
  .international_special .cmn_txt_lead {
    margin-bottom: 35px;
  }
  .international_special_box {
    padding: 0 15px 10px;
  }
  .international_special_box h4 {
    font-size: 16px;
    margin: -20px auto 15px;
  }
  .international_special_box li {
    float: none;
    margin-right: 0;
    width: 100%;
  }
  .international_special_box li:nth-child(2) {
    padding-top: 1.0em;
  }
  .international_special_box li:nth-child(3) {
    border-bottom: 1px dotted #016a1a;
  }
  .international_english {
    padding-top: 20px;
  }
  .international_english_list {
    margin-top: 1.5em;
  }
  .international_english_list > * {
    width: 100%;
  }
  .international_english_list > * + * {
    border-top: 1px dotted #016a1a;
    margin-top: 1.5em;
    padding-top: 1.5em;
  }
  .international_title span {
    font-size: 0.75em;
    position: relative;
    top: -0.15em;
  }
  .international_abroad {
    padding-top: 20px;
  }
  .international_abroad_list {
    margin-top: 1.5em;
  }
  .international_result {
    padding-top: 20px;
  }
}
/* アスリートコース
--------------------------------------------------------- */
#athlete .cmn_tit_page:after {
  background-color: #c3bc00;
}
#athlete .cmn_tit_normal {
  color: #c3bc00;
}
#athlete .cmn_tit_underline:before {
  background-color: #c3bc00;
}
#athlete .cmn_tit_underline:after {
  background-color: #736f00;
}
#athlete .cmn_ctr_img {
  margin-bottom: 40px;
}
.athlete_column:before {
  background-color: #f9f8e5;
}
.athlete_column .grid_2col > div {
  width: 47.5%;
}
.athlete_number .cmn_txt_lead {
  margin-bottom: 40px;
}
.athlete_result h3 {
  margin-bottom: 25px;
}
.athlete_result dt {
  border: 1px solid #c3bc00;
  color: #c3bc00;
  font-weight: bold;
  margin-bottom: 10px;
  padding: 7px 10px;
  text-align: center;
}
.athlete_result dd + dt {
  margin-top: 22px;
}
.athlete_result dd {
  line-height: 1.7;
  text-align: center;
}
/*===============================================
	アスリートコース：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #athlete .cmn_ctr_img {
    margin-bottom: 30px;
  }
  .athlete_column .grid_2col > div {
    text-align: center;
    width: 100%;
  }
  .athlete_column .grid_2col > div + div {
    margin-top: 30px;
  }
  .athlete_number .cmn_txt_lead {
    margin-bottom: 20px;
    text-align: center;
  }
  .athlete_graf {
    margin: 0 auto;
    max-width: 350px;
  }
  .athlete_result h3 {
    margin-bottom: 20px;
  }
  .athlete_result dd + dt {
    margin-top: 15px;
  }
  .athlete_result dd {
    line-height: 1.5;
  }
}
/* ---------------------------------------------------------

	10. 中学校入試ガイド

--------------------------------------------------------- */
/* 中学校 説明会・公開行事日程
--------------------------------------------------------- */
#schedule_j .table_wrapper, #schedule_s .table_wrapper {
  margin-top: 10px;
}
#schedule_j .table_wrapper + .cmn_tit_normal, #schedule_s .table_wrapper + .cmn_tit_normal {
  margin-top: 40px;
}
.schedule_btn_wrap {
  background-color: #f2f2f2;
  margin-bottom: 15px;
  padding: 1px 10px;
}
.schedule_btn_wrap .cmn_btn_wide {
  margin: 15px auto;
}
.schedule_table thead th:first-child, .schedule_table tbody th:first-child {
  width: 14em;
}
.schedule_table thead th:nth-child(2), .schedule_table tbody td:nth-last-child(2) {
  width: 16em;
}
.schedule_table tbody th {
  padding: 7px;
}
.schedule_table tbody td {
  padding: 7px 10px;
  text-align: left;
}
.schedule_require {
  background-color: #db8100;
  display: block;
  margin-top: 3px;
}
.schedule_norequire {
  background-color: #005cdb;
  display: block;
  margin-top: 3px;
}
/*====== 230414 ryo added ====== */
#schedule_j .table_wrapper .schedule_table thead th:first-child, #schedule_j .table_wrapper .schedule_table tbody th:first-child {
  width: 21em;
}
#schedule_j .table_wrapper .schedule_table thead th:nth-child(2), #schedule_j .table_wrapper .schedule_table tbody td {
  width: auto;
}
#schedule_j .table_wrapper .schedule_s_kobetsu tbody th {
  padding-right: 7px;
  text-align: center;
}
#schedule_j .schedule_table tbody th {
  padding-right: 2.5em;
  text-align: right;
}
#schedule_j .schedule_require {
  display: inline-block;
  margin-top: 0;
  margin-left: 5px;
  padding: 0 5px;
}
#schedule_j .schedule_norequire {
  margin-left: auto;
  margin-right: auto;
  max-width: 200px;
}
/*===============================================
	中学校 説明会・公開行事日程：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #schedule_j .table_wrapper, #schedule_s .table_wrapper {
    white-space: normal;
  }
  .schedule_table, .schedule_table {
    table-layout: fixed;
    width: 500px;
  }
  .schedule_table thead th:first-child, .schedule_table tbody th:first-child {
    width: 9em;
  }
  .schedule_table thead th:nth-child(2), .schedule_table tbody td:nth-last-child(2) {
    width: 10em;
  }
  /*====== 230414 ryo added ====== */
  #schedule_j .table_wrapper .schedule_table {
    width: 100%;
  }
  #schedule_j .table_wrapper .schedule_table thead th:first-child, #schedule_j .table_wrapper .schedule_s_kobetsu tbody th:first-child {
    width: 9em;
  }
  #schedule_j .schedule_table tbody th {
    padding-right: 7px;
    text-align: center;
  }
  #schedule_j .schedule_table tbody th br {
    display: block;
  }
  #schedule_j .schedule_require {
    display: block;
    margin-top: 3px;
    margin-left: 0;
    padding: 0;
  }
}
/* 中学校 入試要項
--------------------------------------------------------- */
#outline_j .cmn_contents {
  margin-bottom: 0;
}
#outline_j .cmn_btn_pdf {
  margin: 0 auto 60px;
  max-width: 250px;
}
.exam_outline_info > dt {
  background-color: #d9e7f3;
  color: #005aaa;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 10px;
  padding: 10px;
  text-align: center;
}
.cat_junior .exam_outline_info > dt {
  background-color: #d9f2f6;
  color: #01a7bd;
}
.exam_outline_info > dt span {
  font-size: 14px;
}
.exam_outline_info > dd {
  line-height: 2.0;
  text-align: center;
}
.exam_outline_info > dd + dt {
  margin-top: 20px;
}
.exam_outline_info li {
  padding-left: 1.3em;
  text-align: left;
  text-indent: -1.3em;
}
.exam_outline_info li:before {
  content: '●';
  color: #005aaa;
  margin-right: 0.3em;
}
.cat_junior .exam_outline_info li:before {
  color: #01a7bd;
}
.exam_outline_info .cmn_table thead th:first-child {
  width: 10em;
}
.exam_outline_info .cmn_table + p {
  margin-top: 5px;
  text-align: left;
}
.exam_outline_info_time {
  padding-left: 1.0em;
  text-align: left;
  text-indent: -1.0em;
}
.exam_outline_info_caution {
  color: #ff7f01;
  font-weight: bold;
  text-align: left;
}
.exam_outline_tit {
  background-color: #01a7bd;
  color: #fff;
  font-weight: bold;
  padding: 10px;
  text-align: center;
}
.table_wrapper + .exam_outline_tit {
  margin-top: 30px;
}
.exam_outline_table thead th:first-child, .exam_outline_table tbody th {
  width: 7em;
}
.exam_outline_table thead th:first-child, .exam_outline_table tbody th {
  background-color: #8f8f8f;
}
.exam_outline_table thead th:nth-child(n+2) {
  background-color: #bfbfbf;
}
.exam_outline_table tbody td:not([colspan]) {
  text-align: left;
}
.exam_outline_table .label {
  background-color: #bfbfbf;
  color: #fff;
  display: block;
  margin: 4px 0;
  padding-top: 1px;
  text-align: center;
}
.exam_outline_table li {
  padding-left: 1.3em;
  text-align: left;
  text-indent: -1.3em;
}
.exam_outline_table li:before {
  content: '●';
  color: #01a7bd;
  margin-right: 0.3em;
}
.exam_outline_returnee tbody td:not([colspan]) {
  text-align: center;
}
/*===============================================
	中学校 入試要項：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #outline_j .cmn_btn_pdf {
    margin: 0 auto 40px;
  }
  .exam_outline_info > dt {
    font-size: 16px;
    margin-bottom: 5px;
    padding: 5px;
  }
  .exam_outline_info > dt span {
    font-size: 12px;
  }
  .exam_outline_info > dd {
    line-height: 1.7;
  }
  .exam_outline_info .cmn_table thead th:first-child {
    width: 4em;
  }
  .exam_outline_info_caution {
    margin-top: 5px;
  }
  .table_wrapper + .exam_outline_tit {
    margin-top: 25px;
  }
  .exam_outline_recommend {
    table-layout: fixed;
  }
}
/* 中学校 インターネット出願について
--------------------------------------------------------- */
#flow_j .cmn_tit_underline {
  margin-top: 40px;
}
#flow_j .cmn_tit_normal {
  margin-top: 35px;
}
.exam_flow_list {
  display: flex;
  flex-wrap: wrap;
  line-height: 1.7;
  margin-bottom: 5px;
}
.exam_flow_list dt {
  background-color: #d9f2f6;
  border: 1px solid #01a7bd;
  color: #01a7bd;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  padding: 10px 0;
  position: relative;
  text-align: center;
  width: 14em;
}
.exam_flow_list dt:after {
  content: '';
  border-bottom: 1px solid #01a7bd;
  border-right: 1px solid #01a7bd;
  display: block;
  height: 15px;
  position: absolute;
  bottom: -20px;
  left: 50%;
  transform: rotate(45deg) translateX(-50%);
  width: 15px;
}
.exam_flow_list dd {
  border: 1px solid #01a7bd;
  border-left: none;
  display: flex;
  align-items: center;
  margin-bottom: 20px;
  padding: 10px 10px 10px 15px;
  width: calc(100% - 14em);
}
.exam_flow_finish {
  background-color: #f2f2f2;
  padding: 15px;
}
.exam_flow_finish .em {
  color: #e80000;
  padding-left: 1.0em;
  text-indent: -1.0em;
}
.exam_flow_contact {
  margin-top: 1.0em;
}
/*===============================================
	中学校 インターネット出願について：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #flow_j .cmn_tit_underline {
    margin-top: 25px;
  }
  #flow_j .cmn_tit_normal {
    margin-top: 30px;
  }
  .exam_flow_list {
    display: block;
    margin-bottom: 5px;
  }
  .exam_flow_list dt {
    display: block;
    margin-bottom: 0;
    padding: 5px 10px;
    position: relative;
    text-align: center;
    width: 100%;
  }
  .exam_flow_list dt:after {
    display: none;
  }
  .exam_flow_list dd:after {
    content: '';
    border-bottom: 1px solid #01a7bd;
    border-right: 1px solid #01a7bd;
    display: block;
    height: 15px;
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: rotate(45deg) translateX(-50%);
    width: 15px;
  }
  .exam_flow_list dd {
    border-left: 1px solid #01a7bd;
    border-top: none;
    padding: 5px 10px;
    position: relative;
    width: 100%;
  }
  .exam_flow_finish {
    padding: 10px;
  }
  .exam_flow_finish .em {
    margin-top: 5px;
  }
}
/* 中学校 出願状況・入試結果
--------------------------------------------------------- */
.result_box {
  color: #e80000;
  margin: 30px 0;
  text-align: center;
}
.result_date {
  margin: -5px 0 15px;
  text-align: right;
}
.result_tit {
  font-size: 16px;
  margin-bottom: 10px;
}
#result_j .table_wrapper + .result_tit, .result_table_caution + .result_tit {
  margin-top: 40px;
}
#result_j.table_wrapper + .cmn_tit_normal {
  margin-top: 60px;
}
#result_j .table_wrapper + .table_wrapper, .result_table_caution + .table_wrapper {
  margin-top: 20px;
}
.result_table thead th[rowspan] {
  background-color: #db8100;
}
.result_table tbody th:not([rowspan]) {
  background-color: #e2e2e2;
  color: #333;
}
.result_table tbody th[rowspan="2"], .result_table tbody th:not(:first-child)[rowspan="3"] {
  background-color: #e2e2e2;
  color: #333;
}
.result_table tbody .result_total th, .result_table tbody .result_total td {
  background-color: #bfbfbf;
  color: #fff;
}
.result_table_straight tbody th:not([rowspan]) {
  background-color: #9e9c9c;
  color: #fff;
}
.result_table_rec thead th[rowspan] {
  background-color: #db8100;
}
.result_table_rec tbody th {
  background-color: #e2e2e2;
  color: #333;
}
/* Tablepress用 */
.result_table tbody .row-1 td[rowspan] {
  background-color: #db8100;
  color: #fff;
  font-weight: bold;
}
.result_table tbody .row-1 td:not([rowspan]), .result_table tbody .row-2 td:not([rowspan]) {
  background-color: #01a7bd;
  color: #fff;
  font-weight: bold;
}
.result_table_add4 tbody td[rowspan="4"] {
  background-color: #9e9c9c;
  color: #fff;
}
.result_table_add4 tbody .row-6 td, .result_table_add4 tbody .row-10 td, .result_table_add4 tbody .row-14 td {
  background-color: #bfbfbf;
  color: #fff;
}
.result_table_no4 tbody td[rowspan="3"] {
  background-color: #9e9c9c;
  color: #fff;
}
.result_table_no4 tbody .row-5 td, .result_table_no4 tbody .row-8 td, .result_table_no4 tbody .row-11 td {
  background-color: #bfbfbf;
  color: #fff;
}
.result_table_straight tbody td:first-child {
  background-color: #9e9c9c;
  color: #fff;
}
.result_table_straight tbody .row-5 td:nth-child(n+2) {
  background-color: #bfbfbf;
  color: #fff;
}
.result_table_rec tbody td[rowspan] {
  padding: 5px 0;
}
.result_table_rec tbody tr:last-child td {
  background-color: #bfbfbf;
  color: #fff;
}
.result_caution {
  color: #ff7f01;
  font-weight: bold;
  margin-top: 10px;
  padding-left: 1.0em;
  text-indent: -1.0em;
}
#result_rst {
  margin-top: 50px;
}
/*===============================================
	中学校 出願状況・入試結果：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .result_date {
    margin: 25px 0;
  }
  #result_rst {
    margin-top: 40px;
  }
  .result_table_rec tbody td[rowspan] {
    padding: 5px;
  }
}
/* 中学校 入試問題ダウンロード
--------------------------------------------------------- */
#download_j .cmn_bg_colored + .cmn_bg_colored, #download_s .cmn_bg_colored + .cmn_bg_colored {
  margin-top: 30px;
}
.download_list {
  margin: 25px 0 10px;
  overflow: visible;
}
.download_list:after {
  content: '';
  clear: both;
  display: block;
}
.download_list li {
  margin-right: 4%;
  text-align: center;
  width: 22%;
}
.download_list li p:nth-child(2) {
  margin: 3px 0;
}
.download_caution {
  margin-top: 30px;
}
/*===============================================
	中学校 入試問題ダウンロード：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .download_list {
    margin-bottom: 0;
  }
  .download_list {
    margin-bottom: -25px;
  }
  .download_list li {
    margin-bottom: 25px;
    width: 48%;
  }
  .download_list li p:nth-child(2) {
    margin: 10px 0 5px;
  }
  .download_caution {
    margin-top: 25px;
  }
}
/* ---------------------------------------------------------

	11. 高等学校入試ガイド

--------------------------------------------------------- */
/* 高等学校 説明会・公開行事日程
--------------------------------------------------------- */
.schedule_lead_caution {
  margin: 1em 0 2em;
}
.schedule_lead_caution strong, .schedule_explain strong {
  color: #ff7f01;
  font-weight: bold;
}
#schedule_s .table_wrapper .schedule_table thead th:first-child, #schedule_s .table_wrapper .schedule_table tbody th:first-child {
  width: 21em;
}
#schedule_s .table_wrapper .schedule_table thead th:nth-child(2), #schedule_s .table_wrapper .schedule_table tbody td {
  width: auto;
}
#schedule_s .table_wrapper .schedule_s_kobetsu tbody th {
  padding-right: 7px;
  text-align: center;
}
#schedule_s .schedule_table tbody th {
  padding-right: 2.5em;
  text-align: right;
}
#schedule_s .schedule_require {
  display: inline-block;
  margin-top: 0;
  margin-left: 5px;
  padding: 0 5px;
}
#schedule_s .schedule_norequire {
  margin-left: auto;
  margin-right: auto;
  max-width: 200px;
}
.schedule_table dd + dt {
  margin-top: 15px;
}
/*===============================================
	高等学校 説明会・公開行事日程：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #schedule_s .table_wrapper .schedule_table {
    width: 100%;
  }
  #schedule_s .table_wrapper .schedule_table thead th:first-child, #schedule_s .table_wrapper .schedule_s_kobetsu tbody th:first-child {
    width: 9em;
  }
  #schedule_s .schedule_table tbody th {
    padding-right: 7px;
    text-align: center;
  }
  #schedule_s .schedule_table tbody th br {
    display: block;
  }
  #schedule_s .schedule_require {
    display: block;
    margin-top: 3px;
    margin-left: 0;
    padding: 0;
  }
  .schedule_table dd + dt {
    margin-top: 10px;
  }
}
/* 高等学校 入試要項
--------------------------------------------------------- */
#outline_s .cmn_bg_colored:before {
  background-color: #f2f7fb;
}
.exam_s_outline_tab_menu li {
  margin-right: 1.5%;
  width: 32.33%;
}
.exam_s_outline_tab_menu li:last-child {
  float: left;
  margin-right: 0;
}
.exam_s_outline_tab_menu li a {
  border-color: #005aaa;
  color: #005aaa;
}
.exam_s_outline_tab_menu li a.active, .exam_s_outline_tab_menu li:last-child a.active {
  background-color: #005aaa;
}
.exam_s_cmn_info {
  margin-top: -10px;
  padding-top: 0;
}
.exam_s_outline_panel {
  display: none;
}
.exam_s_outline_panel.active {
  display: block;
}
#outline_s .exam_outline_info p {
  text-align: left;
}
#outline_s .exam_outline_info em {
  font-style: normal;
  font-weight: bold;
}
.exam_s_outline_table {
  margin-top: 10px;
}
.exam_s_outline_table tbody td {
  text-align: left;
}
.exam_s_outline_table tbody td p {
  line-height: 1.5;
}
.exam_s_outline_table tbody td p + p {
  margin-top: 7px;
}
#outline_2 {
  margin-top: 40px;
}
#outline_2 h5 {
  margin: 25px 0 10px;
}
.exam_s_outline_plus {
  background-color: #f3f7fa;
  display: table;
  line-height: 1.5;
  margin: 15px 0 50px;
  padding: 15px;
  width: 100%;
}
.exam_s_outline_plus_2 {
  background-color: #ffffff;
}
.exam_s_outline_plus dt {
  display: table-cell;
  font-weight: bold;
  margin-bottom: 5px;
  vertical-align: middle;
  width: 7.5em;
}
.exam_s_outline_plus dd {
  display: table-cell;
}
#outline_s table + .cmn_tit_normal {
  margin-top: 40px;
}
#outline_s table + .cmn_tit_normal + p {
  color: #ff7f01;
  font-weight: bold;
  letter-spacing: -0.04em;
  margin: -10px 0 10px;
}
#outline_s table + table {
  margin-top: 20px;
}
.exam_s_scholarship_table thead th:first-child {
  width: 5em;
}
.exam_s_scholarship_table thead th:nth-child(2), .exam_s_scholarship_table thead th:nth-child(3) {
  width: 10em;
}
/*===============================================
	高等学校 入試要項：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #outline_2 {
    margin-top: 25px;
  }
  .exam_s_outline_table {
    white-space: normal;
  }
  .exam_s_outline_table table {
    table-layout: fixed;
    width: 700px;
  }
  .exam_s_outline_plus {
    margin-bottom: 40px;
    padding: 10px;
  }
  #outline_s table + .cmn_tit_normal {
    margin-top: 30px;
  }
  #outline_s table + .cmn_tit_normal + p {
    margin-top: -5px;
  }
  #outline_s table + table {
    margin-top: 15px;
  }
  .exam_s_scholarship_table {
    white-space: normal;
    width: 710px;
  }
}
/* 高等学校 入試結果
--------------------------------------------------------- */
.result_s_table {
  table-layout: auto;
}
.result_s_table tbody th {
  background-color: #bfbfbf;
}
.result_s_table tbody th[rowspan="12"], .result_s_table tbody th[rowspan="18"] {
  background-color: #9e9c9c;
}
/* Tablepress用 */
.result_s_table tbody tr:first-child td {
  background-color: #005293;
  color: #fff;
  font-weight: bold;
  padding: 5px;
  text-align: center;
}
.result_s_table tbody td[rowspan="12"], .result_s_table tbody td[rowspan="26"] {
  background-color: #9e9c9c;
  color: #fff;
}
.result_s_table tbody td[rowspan="6"], .result_s_table tbody td[rowspan="8"] {
  background-color: #bfbfbf;
  color: #fff;
}
.result_s_table tbody td:nth-last-child(2), .result_s_table tbody td:last-child {
  width: 10em;
}
/* 高等学校 入試問題ダウンロード
--------------------------------------------------------- */
#download_s .cmn_bg_colored:before {
  background: #f2f7fb;
}
.download_list.grid_3col > li {
  margin-right: 17%;
}
.download_list.grid_3col > li:nth-child(3n) {
  margin-right: 0;
}
.download_list_caution {
  margin-top: 1.5em;
}
/*===============================================
	高等学校 入試問題ダウンロード：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .download_list.grid_3col > li {
    float: left;
    margin-right: 4%;
  }
  .download_list.grid_3col > li:nth-child(3n) {
    margin-right: 4%;
  }
  .download_list.grid_3col > li:nth-child(even) {
    margin-right: 0;
  }
  .download_list.grid_3col > li + li {
    margin-top: 0;
  }
  .download_list_2020 {
    margin-bottom: -20px;
  }
}
/* 適性検査出題例
--------------------------------------------------------- */
#tekisei .cmn_cnav {
  display: none;
}
.tekisei_title {
  margin-top: 30px;
}
.tekisei_list {
  display: flex;
  justify-content: space-between;
  padding-bottom: 10px;
}
.tekisei_list li {
  flex-basis: 30%;
}
.tekisei_btn {
  margin: 0.5em 0 1.5em;
}
.tekisei_btn a {
  padding: 0.3em 0;
}
/*===============================================
	適性検査出題例：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .tekisei_title {
    margin-top: 25px;
  }
}
/* ---------------------------------------------------------

	12. 進路指導

--------------------------------------------------------- */
/* 進路指導の取り組み
--------------------------------------------------------- */
#program .cmn_contents {
  margin-bottom: 0;
}
.program_table {
  border-spacing: 5px;
  margin-top: -5px;
  margin-left: -5px;
  margin-bottom: 30px;
  width: calc(100% + 10px);
}
.program_table thead th:first-child {
  background-color: #dbdcdb;
  width: 5em;
}
.program_table thead th:not(:first-child) {
  background-color: #005aaa;
  color: #fff;
}
.program_table tbody th {
  background-color: #dbdcdb;
  color: #333;
}
.program_table tbody td {
  background-color: #fff;
  border: 1px solid #005aaa;
  color: #333;
  font-size: 12px;
  text-align: left;
  vertical-align: top;
}
.program_table td li {
  padding-left: 1.3em;
  text-indent: -1.3em;
}
.program_table td li:before {
  content: '●';
  color: #005aaa;
  margin-right: 0.3em;
}
.program_ctr_img {
  margin: 0 auto 30px;
  max-width: 590px;
  overflow: hidden;
}
.program_ctr_img p {
  color: #005aaa;
  float: left;
  line-height: 1.4;
  text-align: center;
  width: 50%;
}
.program_ctr_img p img {
  margin-bottom: 10px;
}
.program_voice {
  padding: 75px 0 50px 110px;
}
.program_voice:before {
  background: url(../img/career/program_voice_bg01.png);
  background-size: 9px;
}
.program_voice h3 {
  background-color: #fff;
  color: #005aaa;
  font-size: 18px;
  font-weight: normal;
  letter-spacing: 0.1em;
  margin-bottom: 15px;
  padding: 11px 15px;
  position: relative;
  width: 296px;
}
.program_voice h3:before {
  content: '';
  background-color: #005aaa;
  display: block;
  height: 26px;
  position: absolute;
  top: 7px;
  left: 0;
  width: 3px;
  z-index: 10;
}
.program_voice h3 span {
  background-color: #005aaa;
  border: 3px solid #005aaa;
  color: #fff;
  display: block;
  font-size: 13px;
  font-weight: bold;
  padding: 15px;
  position: absolute;
  top: -25px;
  left: 154px;
  text-align: right;
  width: 340px;
  z-index: -1;
}
.program_voice .img {
  position: absolute;
  top: 50px;
  right: 20px;
}
.program_voice .txt {
  background-color: #f0f6fb;
  padding: 15px;
  width: 494px;
}
/*===============================================
	進路指導の取り組み：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .program_ctr_img {
    margin-bottom: 25px;
  }
  .program_ctr_img p {
    float: none;
    width: 100%;
  }
  .program_ctr_img p + p {
    margin-top: 15px;
  }
  .program_voice {
    height: auto;
    padding: 25px 15px;
  }
  .program_voice h3 {
    font-size: 16px;
    margin-bottom: 30px;
    width: 160px;
  }
  .program_voice h3:before {
    height: 24px;
  }
  .program_voice h3 span {
    border-width: 2px;
    font-size: 12px;
    padding: 10px;
    top: 20px;
    left: 100px;
    width: 120%;
  }
  .program_voice .img {
    height: 200px;
    margin-bottom: 10px;
    overflow: hidden;
    position: static;
    text-align: center;
  }
  .program_voice .txt {
    padding: 10px;
    width: 100%;
  }
}
/* 進路状況
--------------------------------------------------------- */
.data_graf {
  margin-top: 30px;
}
.data_graf h4 {
  margin-bottom: 30px;
}
.data_graf p {
  text-align: center;
}
.data_list {
  margin: 50px auto 0;
}
.data_list .cmn_tit_underline:not(:nth-of-type(1)) {
  margin-top: 30px;
}
.data_table {
  table-layout: fixed;
}
.data_table tbody .data_table_recommend th {
  background-color: #83a8d5;
}
.data_table tbody .data_table_teikyo th {
  background-color: #e1b578;
}
.data_table_caption {
  display: flex;
  margin-top: 20px;
}
.data_table_caption li::before {
  content: '';
  display: inline-block;
  height: 1em;
  margin-right: 5px;
  vertical-align: bottom;
  width: 1em;
}
.data_table_caption li:first-child::before {
  background-color: #83a8d5;
}
.data_table_caption li:last-child::before {
  background-color: #e1b578;
}
.data_table_caption li + li {
  margin-left: 20px;
}
/*===============================================
	進路指導の取り組み：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .data_graf {
    margin-top: 35px;
  }
  .data_graf h4 {
    margin-bottom: 20px;
  }
  .data_graf {
    margin: 0 auto;
    max-width: 300px;
  }
  .data_graf > div + div {
    margin-top: 30px;
  }
  .data_graf > div:first-child h4 {
    margin-bottom: 3px;
  }
  .data_list {
    margin: 40px auto 0;
  }
  .data_list .grid_2col > div + div {
    margin-top: -2px;
  }
  .data_list .grid_2col > div + div thead {
    display: none;
  }
  .data_table_caption {
    display: block;
  }
  .data_table_caption li + li {
    margin-left: 0;
    margin-top: 10px;
  }
}
/* 合格体験記
--------------------------------------------------------- */
#message .cmn_contents {
  margin-bottom: 0;
}
.message_info {
  max-width: 650px;
  padding-bottom: 30px;
  position: relative;
}
.message_txt + .message_info {
  margin-top: 50px;
}
.message_info h3 {
  color: #005aaa;
  font-size: 24px;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: 5px;
}
.message_name {
  font-size: 20px;
  margin-bottom: 15px;
}
.message_info ul {
  border-left: 10px solid #7facd4;
  padding-left: 20px;
}
.message_info li {
  color: #005aaa;
  line-height: 1.8;
}
.message_info li:first-child {
  font-size: 18px;
}
.message_img {
  max-width: 250px;
  position: absolute;
  bottom: 0;
  right: 20px;
}
#message .cmn_bg_colored:before {
  background: url(../img/career/message_txt_bg01.png);
  background-size: 8px;
}
.message_txt {
  padding: 30px 0;
}
.message_txt_inner {
  background-color: #fff;
  padding: 30px 110px;
}
.message_txt_inner p + p {
  margin-top: 1.5em;
}
/*===============================================
	合格体験記：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .message_info {
    max-width: 360px;
    padding-bottom: 0;
  }
  .message_txt + .message_info {
    margin-top: 30px;
  }
  .message_info h3 {
    font-size: 18px;
  }
  .message_name {
    font-size: 16px;
    margin-bottom: 10px;
  }
  .message_info ul {
    border-width: 4px;
    margin-bottom: 10px;
    padding-left: 5px;
  }
  .message_info li {
    line-height: 1.5;
  }
  .message_info li:first-child {
    font-size: 16px;
  }
  .message_img {
    margin: 0 auto;
    max-width: 160px;
    position: static;
  }
  .message_txt {
    padding: 25px 0;
  }
  .message_txt_inner {
    background-color: #fff;
    margin: 0 auto;
    max-width: calc(100% - 30px);
    padding: 25px 15px;
  }
}
/* オール帝京特別選抜
--------------------------------------------------------- */
/*===============================================
	オール帝京特別選抜：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .selection_chart {
    width: 700px;
  }
}
/* ---------------------------------------------------------

	13. 学校生活

--------------------------------------------------------- */
.schoollife_mv {
  background: url(../img/schoollife/schoollife_mv01.jpg) center no-repeat;
  background-size: cover;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 200px;
  margin: 15px auto 30px;
  max-width: 1000px;
  padding-top: 25px;
  position: relative;
}
.schoollife_mv h2 {
  color: #fff;
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 0.05em;
  position: relative;
  text-align: center;
}
.schoollife_mv h2 span {
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  display: block;
  height: 20px;
  position: absolute;
  top: -30px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  text-indent: -9999px;
  width: 100vw;
}
#facilities .schoollife_mv h2 span {
  background-image: url(../img/schoollife/facilities_mv_tit01.png);
}
#event .schoollife_mv h2 span {
  background-image: url(../img/schoollife/event_mv_tit01.png);
}
#club .schoollife_mv h2 span {
  background-image: url(../img/schoollife/club_mv_tit01.png);
}
#uniform .schoollife_mv h2 span {
  background-image: url(../img/schoollife/uniform_mv_tit01.png);
}
/*===============================================
	学校生活（共通）：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .schoollife_mv {
    height: 65px;
    margin: 10px auto 25px;
    padding-top: 23px;
  }
  .schoollife_mv h2 {
    font-size: 22px;
  }
  .schoollife_mv h2 span {
    height: 18px;
    top: -25px;
  }
}
/* 施設
--------------------------------------------------------- */
.facilities_list {
  margin: 40px 0 -30px;
}
.facilities_list li {
  margin-bottom: 4.0%;
  width: 47.5%;
}
.facilities_list li img {
  margin-bottom: 10px;
}
/*===============================================
	施設：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .facilities_list {
    margin: 25px 0 -25px;
  }
  .facilities_list li {
    margin-bottom: 25px;
    width: 100%;
  }
}
/* 年間行事
--------------------------------------------------------- */
.event_schedule {
  margin: 30px 0 50px;
  overflow: hidden;
}
.event_list {
  float: left;
  width: 48.5%;
}
.event_list dt {
  border-bottom: 1px solid #005293;
  color: #005293;
  font-size: 16px;
  margin: 48px 0 15px;
  padding-bottom: 10px;
}
.event_list:first-of-type dt {
  margin-top: 0;
}
.event_list dt span {
  font-size: 28px;
}
.event_list dd {
  line-height: 1.7;
  padding-left: 20px;
}
.event_list dd li {
  padding-left: 1.5em;
  text-indent: -1.5em;
}
.event_list dd li:before {
  content: '●';
  color: #005293;
  font-size: 10px;
  margin-right: 0.5em;
}
.event_img {
  float: right;
  margin-top: 40px;
  max-width: 316px;
  width: 45%;
}
.event_list:first-of-type + .event_img {
  margin-top: 37px;
}
.event_img p + p {
  margin-top: 40px;
}
.event_tit {
  color: #005293;
  font-size: 22px;
  margin-bottom: 15px;
}
.event_tit:not(:first-of-type) {
  margin-top: 35px;
}
.event_tit span {
  font-size: 17px;
}
.event_tit + .grid_2col {
  margin-bottom: 10px;
}
/*===============================================
	年間行事：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .event_schedule {
    margin: 30px 0 40px;
  }
  .event_list {
    float: none;
    width: 100%;
  }
  .event_list dt {
    margin-top: 25px;
  }
  .event_list dt span {
    font-size: 24px;
  }
  .event_list dd {
    line-height: 1.5;
    padding-left: 5px;
  }
  .event_img {
    float: none;
    margin-top: 10px;
    width: 100%;
  }
  .event_list:first-of-type + .event_img {
    margin-top: 10px;
  }
  .event_img img {
    margin-bottom: 5px;
  }
  .event_img p + p {
    margin-top: 15px;
  }
  .event_tit {
    font-size: 20px;
  }
  .event_tit:not(:first-of-type) {
    margin-top: 30px;
  }
  .event_tit + .grid_2col p + p {
    margin-top: 10px;
  }
}
/* クラブ活動
--------------------------------------------------------- */
#club .cmn_tit_underline {
  margin-top: 50px;
}
#club .cmn_tit_normal {
  margin-bottom: 10px;
}
#club .table_wrapper + .cmn_tit_normal {
  margin-top: 40px;
}
.club_table tbody th {
  padding: 0.5em 0;
}
.club_table_hp {
  background-color: #005293;
  color: #fff;
  display: inline-block;
  margin-top: 0.1em;
  padding: 0.2em 1em 0.1em;
}
.club_table_hp:hover {
  color: #fff;
}
.photo_wrapper {
  margin-bottom: 10px;
  position: relative;
}
.photo_nav_wrapper {
  position: relative;
}
.photo_slider {
  display: none;
  overflow: hidden;
}
.photo_slider.slick-initialized {
  display: block;
}
.photo_slider_arrow {
  background-color: #005293;
  background-image: url(../img/schoollife/club_photo_ico_arrow01.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 7px 10px;
  cursor: pointer;
  height: 100%;
  position: absolute;
  top: 0;
  width: 16px;
  z-index: 10;
}
.photo_slider_prev {
  left: 0;
}
.photo_slider_next {
  right: 0;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
.photo_nav {
  display: none;
  padding: 0 24px;
}
.photo_nav.slick-initialized {
  display: block;
}
.photo_nav .photo_slider {
  margin: 0 -4px;
}
.photo_nav .slick-slide {
  margin: 0 4px;
  outline: none;
}
.device_com .photo_slider_arrow:hover, .device_com .photo_nav .slick-slide:hover {
  opacity: 0.8;
}
/*===============================================
	クラブ活動：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #club .cmn_txt_lead {
    text-align: center;
  }
  #club .cmn_tit_underline {
    margin-top: 30px;
  }
  #club .table_wrapper + .cmn_tit_normal {
    margin-top: 25px;
  }
  #club .table_wrapper {
    white-space: normal;
  }
  .club_table {
    table-layout: fixed;
    width: 700px;
  }
}
/* 制服
--------------------------------------------------------- */
#uniform .cmn_contents {
  margin-bottom: 0;
}
.uniform_mv {
  margin: 30px 0 20px;
}
.uniform_mv p {
  background-color: #f6f5f4;
  padding: 20px 0;
  text-align: center;
}
.uniform_mv img {
  display: block;
  margin: 0 auto;
}
.uniform_woman {
  margin: 20px 0 10px;
}
.uniform_woman p {
  margin: 0 auto 20px;
  max-width: 340px;
}
.uniform_woman img {
  margin-bottom: 5px;
}
.uniform_point {
  padding: 50px 20px;
}
.uniform_point:before {
  background: #f2f6f9;
}
.uniform_point h3 {
  background-color: #d9e5ef;
  color: #005293;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 25px;
  padding: 12px;
  position: relative;
  text-align: center;
}
.uniform_point h3::after {
  content: '';
  background: url(../img/schoollife/uniform_point_tit01.png) no-repeat;
  background-size: contain;
  display: block;
  height: 60px;
  margin-right: 15px;
  position: absolute;
  top: -35px;
  right: 50%;
  width: 130px;
}
.uniform_point_column {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.uniform_point_column:nth-of-type(2) {
  flex-direction: row-reverse;
}
.uniform_point_column .img {
  margin-right: auto;
  max-width: 340px;
  width: 48%;
}
.uniform_point_column:nth-of-type(2) .img {
  margin-right: 0;
  margin-left: auto;
}
.uniform_point_column div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 48%;
}
.uniform_point_column h4 {
  color: #005393;
  font-size: 16px;
  line-height: 1.7;
  margin-bottom: 10px;
  text-align: center;
}
.uniform_point_column div p {
  max-width: 100%;
}
/*===============================================
	制服：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .uniform_mv {
    margin: 20px 0;
  }
  .uniform_mv p:first-child img {
    margin: 0 auto;
  }
  .uniform_point {
    padding: 30px 15px 15px;
  }
  .uniform_point h3 {
    font-size: 16px;
    margin-bottom: 15px;
  }
  .uniform_point h3::after {
    height: 40px;
    margin-right: 35px;
    top: -18px;
    width: 88px;
  }
  .uniform_point_column {
    display: block;
  }
  .uniform_point_column .img {
    margin: 0 auto 10px;
    width: 100%;
  }
  .uniform_point_column:nth-of-type(2) .img {
    margin: 0 auto 10px;
  }
  .uniform_point_column div {
    display: block;
    margin-bottom: 15px;
    width: 100%;
  }
}
/* ---------------------------------------------------------

	14. 学校案内

--------------------------------------------------------- */
/* 学校長のことば
--------------------------------------------------------- */
.greeting_img {
  margin-bottom: 30px;
  text-align: center;
}
.greeting_tit {
  font-size: 22px;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: 20px;
  text-align: center;
}
.greeting_message p + p {
  margin-top: 1.5em;
}
/*===============================================
	学校長のことば：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .greeting_img {
    margin-bottom: 15px;
  }
  .greeting_tit {
    font-size: 20px;
    margin-bottom: 15px;
  }
  .greeting_message p + p {
    margin-top: 1.0em;
  }
}
/* 建学の精神・沿革
--------------------------------------------------------- */
.history_lead {
  background-color: #f2f2f2;
  font-size: 16px;
  font-weight: bold;
  margin: 30px 0;
  padding: 15px;
  text-align: center;
}
#history .cmn_ctr_img p {
  text-align: center;
}
#history p + .cmn_tit_normal {
  margin-top: 50px;
}
.history_list {
  border-top: 2px solid #ccc;
  border-bottom: 2px solid #ccc;
  display: flex;
  flex-wrap: wrap;
  line-height: 1.5;
  overflow: hidden;
  padding: 2px 0;
}
.history_list dt {
  border-right: 1px dotted #ccc;
  border-bottom: 1px solid #ccc;
  color: #005293;
  padding: 10px;
  text-align: center;
  width: 10em;
}
.history_list dd {
  border-bottom: 1px solid #ccc;
  display: flex;
  justify-content: space-between;
  padding: 10px;
  width: calc(100% - 10em);
}
.history_list dt:first-of-type, .history_list dd:first-of-type {
  border-top: 1px solid #ccc;
}
.history_list dt:nth-of-type(even), .history_list dd:nth-of-type(even) {
  background-color: #f7f7f7;
}
.history_list dd p {
  line-height: 1.5;
  padding: 0 5px;
}
.history_list dd p:not(.img) {
  flex: 1 1 auto;
}
.history_list dd .img {
  font-size: 12px;
  flex: 0 0 160px;
}
/*===============================================
	建学の精神・沿革：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .history_lead {
    margin: 20px 0 10px;
    padding: 15px;
  }
  #history .cmn_ctr_img p {
    margin: 0 auto;
    max-width: 350px;
  }
  #history p + .cmn_tit_normal {
    margin-top: 40px;
  }
  .history_list {
    display: block;
  }
  .history_list dt {
    background-color: #f7f7f7;
    border-right: none;
    padding: 7px;
    width: 100%;
  }
  .history_list dd {
    display: block;
    overflow: hidden;
    padding: 7px 0;
    width: 100%;
  }
  .history_list dd:first-of-type {
    border-top: none;
  }
  .history_list dt:nth-of-type(even) {
    background-color: #f7f7f7;
  }
  .history_list dd:nth-of-type(even) {
    background-color: transparent;
  }
  .history_list dd p {
    padding: 0;
  }
  .history_list dd .img {
    float: left;
    margin-top: 7px;
    margin-right: 4%;
    max-width: 160px;
    width: 48%;
  }
  .history_list dd .img:last-child {
    margin-right: 0;
  }
}
/* ---------------------------------------------------------

	15. 情報公開

--------------------------------------------------------- */
#information .cmn_tit_page {
  margin-bottom: 20px;
}
.information_list {
  margin-bottom: -20px;
}
.information_list li {
  margin-bottom: 20px;
}
.information_list li a {
  height: 50px;
}
.information_btn_plan {
  margin: 0 auto;
  max-width: 340px;
}
.information_btn_plan a {
  height: 50px;
}
.information_list_ijime {
  letter-spacing: -.5em;
  text-align: center;
}
.information_list_ijime li {
  display: inline-block;
  letter-spacing: normal;
  margin-right: 3%;
  width: 48.5%;
}
.information_list_ijime li:nth-child(even) {
  margin-right: 0;
}
/*===============================================
	情報公開：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #information .cmn_tit_page {
    margin-bottom: 0;
  }
  .information_list {
    margin: 25px auto -15px;
    max-width: 340px;
  }
  .information_list li {
    margin-bottom: 15px;
  }
  .information_list li a {
    height: 40px;
  }
  .information_btn_plan a {
    height: 40px;
  }
  .information_list_ijime {
    margin: 0 auto -15px;
    max-width: 340px;
  }
  .information_list_ijime li {
    margin-right: 0;
    width: 100%;
  }
}
/* ---------------------------------------------------------

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

--------------------------------------------------------- */
/* 在校生・保護者・卒業生の方へ：インデックス
--------------------------------------------------------- */
#student .cmn_cnav {
  display: none;
}
.student_list {
  margin: 50px 0 -3%;
}
.student_list li {
  height: 100px;
  margin-bottom: 3%;
}
.student_list li a {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  height: 100%;
  line-height: 1.3;
  text-align: center;
}
.student_list li:nth-child(1) a {
  background-image: url(../img/student/student_img01.jpg);
}
.student_list li:nth-child(2) a {
  background-image: url(../img/student/student_img02.jpg);
}
.student_list li:nth-child(3) a {
  background-image: url(../img/student/student_img03.jpg);
}
.student_list li:nth-child(4) a {
  background-image: url(../img/student/student_img04.jpg);
}
/*===============================================
	在校生・保護者・卒業生の方へ：インデックス：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .student_list {
    margin-top: 30px;
  }
  .student_list li {
    height: 60px;
  }
  .student_list li + li {
    margin-top: 10px;
  }
  .student_list li a {
    padding: 0 10px;
  }
}
/* 学費補助制度（就学支援金等）・奨学金
--------------------------------------------------------- */
.scholarship_table + .cmn_tit_normal {
  margin-top: 50px;
}
.scholarship_table tbody th {
  color: #333;
  padding: 10px;
  text-align: left;
  width: 21em;
}
.scholarship_table .scholarship_junior th {
  background-color: #d9f2f6;
}
.scholarship_table .scholarship_senior th {
  background-color: #d9e7f3;
}
.scholarship_table tbody td {
  background-color: #f2f2f2;
  padding: 10px;
  text-align: left;
}
.scholarship_table td dl {
  overflow: hidden;
}
.scholarship_table td dt {
  float: left;
  width: 6em;
}
.scholarship_table td dd {
  padding-left: 6em;
}
.scholarship_table h4 {
  margin-top: 1em;
}
.scholarship_table p {
  line-height: 1.5;
}
.scholarship_table dl + p {
  margin-top: 0.3em;
}
.scholarship_table_bottom td dt {
  width: 3em;
}
.scholarship_table_bottom td dd {
  padding-left: 3em;
}
.scholarship_label {
  color: #fff;
  display: block;
  margin-top: 3px;
  text-align: center;
}
.scholarship_junior .scholarship_label {
  background-color: #01a7bd;
}
.scholarship_senior .scholarship_label {
  background-color: #005293;
}
.scholarship_em {
  font-weight: bold;
}
.scholarship_caution {
  color: #e80000;
}
.scholarship_table_caution {
  border-top: 1px solid #efefef;
  margin-top: 30px;
  padding-top: 25px;
  padding-left: 1.0em;
  text-indent: -1.0em;
}
.scholarship_table_caution li {
  line-height: 1.7;
}
.scholarship_pdf_lead {
  margin-top: 1.0em;
}
.scholarship_pdf_lead span {}
.scholarship_pdf_lead a:before {
  content: '■';
  font-size: 10px;
  margin-right: 4px;
  position: relative;
  top: -1px;
}
.scholarship_pdf_list {
  padding: 10px 0;
}
.scholarship_pdf_list li {
  padding-left: 1.0em;
  text-indent: -1.0em;
}
.scholarship_pdf_list li a:before {
  content: '■';
  font-size: 10px;
  margin-right: 4px;
  position: relative;
  top: -1px;
}
#scholarship_1st + .scholarship_table tbody th {
  width: 17em;
}
/*===============================================
	学費補助制度（就学支援金等）・奨学金：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .scholarship_table + .cmn_tit_normal {
    margin-top: 40px;
  }
  .scholarship_table tbody th {
    width: 10em;
  }
  .scholarship_table td dt {
    float: none;
    font-weight: bold;
    width: 100%;
  }
  .scholarship_table td dd {
    padding-left: 0;
  }
  .scholarship_table td dd + dt {
    margin-top: 10px;
  }
  .scholarship_table_bottom td dt {
    width: 100%;
  }
  .scholarship_table_bottom td dd {
    padding-left: 0;
  }
  .scholarship_table dl + p {
    margin-top: 0.8em;
  }
  .scholarship_label {
    padding: 3px;
  }
  .scholarship_table_caution {
    margin-top: 20px;
    padding-top: 15px;
  }
  #scholarship_1st + .scholarship_table tbody th {
    width: 10em;
  }
}
/* 在校生 各種手続
--------------------------------------------------------- */
#recovery .cmn_contents {
  margin-bottom: 0;
}
#recovery .cmn_ctr_box {
  padding-bottom: 40px;
}
#recovery .cmn_bg_colored:before {
  background: #f2f7fb;
}
#recovery .cmn_container + .cmn_tit_normal {
  margin-top: 40px;
}
#recovery .cmn_container .cmn_txt_lead {
  margin-bottom: 20px;
}
.process_list li p:nth-child(2) {
  line-height: 2.6;
}
.process_list li:nth-child(3) p:nth-child(2) {
  line-height: 1.4;
}
.process_list li small {
  display: block;
  font-size: 0.9em;
  line-height: 1.4;
}
.process_list li .ls {
  letter-spacing: -0.2em;
}
.recovery_list {
  letter-spacing: -.5em;
  margin: 0;
  text-align: center;
}
.recovery_list li {
  display: inline-block;
  letter-spacing: normal;
  margin-right: 2%;
  width: 32%;
}
.recovery_list li:last-child {
  margin-right: 0;
}
.recovery_list li .cmn_btn_pdf {
  margin: 0 auto;
  width: 70%;
}
.recovery_list li .ls {
  letter-spacing: -0.2em;
}
/*===============================================
	在校生 各種手続：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #recovery .cmn_ctr_box {
    padding-bottom: 10px;
  }
  #recovery .cmn_container:first-of-type .recovery_list {
    text-align: left;
  }
  .recovery_list li {
    width: 48%;
  }
  .recovery_list li .cmn_btn_pdf {
    width: 100%;
  }
}
/* 各種証明書発行申請
--------------------------------------------------------- */
#certificate .cmn_contents {
  margin-bottom: 0;
}
#certificate .cmn_bg_colored:before {
  background: #f2f7fb;
}
#certificate .cmn_tit_normal:not(:first-of-type) {
  margin-top: 40px;
}
#certificate .cmn_tit_underline:not(:first-of-type) {
  margin: 20px 0 10px;
}
.certificate_visit {
  line-height: 1.5;
  margin-bottom: 15px;
}
.certificate_visit dt {
  font-weight: bold;
  margin-bottom: 5px;
}
.certificate_visit dd + dt {
  margin-top: 20px;
}
.certificate_caution {
  line-height: 1.5;
  padding-left: 1.0em;
  text-indent: -1.0em;
}
.certificate_mail {
  line-height: 1.5;
  margin: 10px 0 15px;
}
.certificate_mail li {
  padding-left: 1.0em;
  text-indent: -1.0em;
}
.certificate_mail li:before {
  content: '●';
  color: #005293;
}
.certificate_fee .cmn_tit_square {
  font-size: 16px;
  margin-bottom: 10px;
}
.certificate_fee .certificate_rapid {
  color: #e80000;
  line-height: 1.5;
  padding-left: 1.0em;
  text-indent: -1.0em;
}
.certificate_download {
  margin: 0 0 30px;
}
.certificate_download li {
  margin: 0 14%;
}
/*===============================================
	各種証明書発行申請：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #certificate .cmn_tit_normal:not(:first-of-type) {
    margin-top: 30px;
  }
  .certificate_visit dd + dt {
    margin-top: 15px;
  }
  .certificate_fee .cmn_tit_square {
    font-size: 14px;
    margin-bottom: 5px;
  }
  .certificate_fee .cmn_table {
    table-layout: fixed;
  }
  .certificate_download {
    margin: 0 0 15px;
  }
  .certificate_download li {
    float: left;
    margin: 0;
  }
  .certificate_download li:nth-child(even) {
    float: right;
  }
}
/* 校歌
--------------------------------------------------------- */
.song_player {
  background-color: #f2f7fb;
  margin: 30px auto;
  max-width: 350px;
  padding: 5px 10px;
  text-align: center;
  width: 100%;
}
.song_player audio {
  width: 100%;
}
.song_download {
  overflow: visible;
}
.song_download:after {
  content: '';
  clear: both;
  display: block;
}
.song_jasrac {
  margin-top: 30px;
  text-align: right;
}
/* ---------------------------------------------------------

	17. 帝京ムービー

--------------------------------------------------------- */
.movie_list {
  margin-bottom: -30px;
}
.movie_list li {
  margin: 0 5% 30px 0;
  width: 30%;
}
.movie_list li a {
  color: #333;
  display: block;
  height: 100%;
  outline: none;
  position: relative;
}
.device_com .movie_list li a:hover {
  opacity: 0.8;
}
.movie_thumb {
  margin-bottom: 3px;
  position: relative;
}
.movie_thumb:after {
  content: '';
  background: url(../img/top/movies_ico01.png) no-repeat;
  background-size: contain;
  display: block;
  height: 39px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 60px;
}
#home .movie_thumb:after {
  height: 26px;
  width: 40px;
}
.junior_culture .movie_thumb::after {
  height: 64px;
  width: 100px;
}
/*===============================================
	帝京ムービー：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .movie_list {
    margin: 0 auto;
    max-width: 290px;
  }
  .movie_list li {
    float: left;
    margin: 0 4% 4% 0;
    width: 48%;
  }
  .movie_list li:nth-child(3n) {
    margin-right: 4%;
  }
  .movie_list li:nth-child(even) {
    margin-right: 0;
  }
  .movie_list li a {
    font-size: 12px;
  }
  .movie_list li p {
    line-height: 1.3;
  }
  .movie_thumb:after {
    height: 26px;
    width: 40px;
  }
  .junior_culture .movie_thumb::after {
    height: 38px;
    width: 60px;
  }
}
/* ---------------------------------------------------------

	18. アクセス

--------------------------------------------------------- */
.access_train {
  overflow: hidden;
}
.access_train > div {
  float: left;
  width: 57.89%;
}
.access_train > div:last-child {
  float: right;
  width: 42.11%;
}
.access_train > div:first-child h4, .access_train > div:first-child .cmn_txt_lead {
  margin-right: 8%;
}
.access_train .cmn_txt_lead {
  margin-bottom: 20px;
}
.access_train .img {
  height: 320px;
}
.access_bus {
  background-color: #f2f2f2;
  line-height: 1.5;
  margin: 30px 0 50px;
  padding: 15px;
}
.access_bus li {
  padding-left: 1.1em;
  text-indent: -1.1em;
}
.access_bus li:before {
  content: '●';
  color: #005293;
  font-size: 12px;
  margin-right: 0.2em;
}
.access_map {
  margin-bottom: 10px;
}
/*===============================================
	交通アクセス：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .access_train > div {
    float: none;
    width: 100%;
  }
  .access_train > div:last-child {
    float: none;
    width: 100%;
  }
  .access_train > div:first-child h4, .access_train > div:first-child .cmn_txt_lead {
    margin-right: 0;
  }
  .access_train .cmn_txt_lead {
    text-align: center;
  }
  .access_train .img {
    height: auto;
    margin-bottom: 25px;
  }
  .access_train > div:last-child .img {
    margin: -15px auto;
    max-width: 72.7%;
  }
  .access_bus {
    margin: 0 0 35px;
    padding: 10px;
  }
}
/* ---------------------------------------------------------

	19. 資料請求

--------------------------------------------------------- */
#inquiry p + .cmn_tit_normal {
  margin-top: 40px;
}
#inquiry p + .cmn_tit_underline {
  margin-top: 30px;
}
#inquiry p + p {
  margin-top: 1.0em;
}
#inquiry .cmn_btn {
  margin-top: 30px;
}
.inquiry_censent_caution {
  color: #f00;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.4;
  margin-top: 30px;
}
/*===============================================
	資料請求：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #inquiry p + .cmn_tit_normal {
    margin-top: 30px;
  }
  #inquiry p + .cmn_tit_underline {
    margin-top: 25px;
  }
}
/* ---------------------------------------------------------

	20. サイトマップ

--------------------------------------------------------- */
.sitemap_list {
  overflow: hidden;
}
.sitemap_list > dl {
  float: left;
  line-height: 2.0;
  margin-right: 5%;
  margin-bottom: 30px;
  width: 30%;
}
.sitemap_list > dl:nth-child(3n) {
  margin-right: 0;
}
.sitemap_list dt {
  border-bottom: 1px dotted #005293;
  margin-bottom: 5px;
  padding-bottom: 5px;
}
.sitemap_list dd li {
  padding-left: 1.0em;
  text-indent: -1.0em;
}
.sitemap_list dd li:before {
  content: '・';
}
.sitemap_list dd a {
  color: #333;
}
.sitemap_others {
  float: left;
  line-height: 2.0;
  width: 30%;
}
/*===============================================
	サイトマップ：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .sitemap_list > dl {
    float: none;
    margin-right: 0;
    margin-bottom: 20px;
    width: 100%;
  }
  .sitemap_others {
    float: none;
    width: 100%;
  }
}
/* ---------------------------------------------------------

	21. 帝京グループ

--------------------------------------------------------- */
.group_list {
  background-color: #f3f7fa;
  padding: 15px;
}
.group_list a {
  background-color: #005293;
  color: #fff;
  display: block;
  font-size: 16px;
  padding: 12px 0;
  text-align: center;
}
.group_list a:after {
  content: '';
  background: url(../img/common/ico_window.png) center no-repeat;
  background-size: 14px;
  display: inline-block;
  height: 14px;
  margin-left: 10px;
  width: 14px;
}
.group_list + .cmn_tit_normal {
  margin-top: 35px;
}
.group_list.grid_2col {
  margin-bottom: -0.5%;
}
.group_list.grid_2col li {
  margin-bottom: 0.5%;
  width: 49.75%;
}
/*===============================================
	帝京グループ：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .group_list + .cmn_tit_normal {
    margin-top: 30px;
  }
  .group_list.grid_2col {
    margin-bottom: 0;
  }
  .group_list.grid_2col li {
    margin-bottom: 0;
    width: 100%;
  }
}
/* ---------------------------------------------------------

	22. 教職員募集

--------------------------------------------------------- */
#recruit .cmn_tit_page + .cmn_ctr_box {
  padding-top: 0;
}
#recruit .cmn_tit_normal {
  color: #333;
  margin-bottom: 0.3em;
  text-align: left;
}
.recruit_table tbody th {
  width: 12em;
}
.recruit_table tbody td {
  padding-left: 10px;
  text-align: left;
}
.recruit_txt_nooffer {
  text-align: center;
}
/* ---------------------------------------------------------

	23. サイトポリシー・プライバシーポリシー

--------------------------------------------------------- */
#sitepolicy .cmn_tit_normal, #privacy .cmn_tit_normal {
  margin-top: 40px;
}
.policy_column {
  background-color: #f3f7fa;
  line-height: 1.5;
  margin-top: 10px;
  padding: 15px;
}
.policy_column dt {
  font-weight: bold;
  margin-bottom: 5px;
}
.policy_column li {
  padding-left: 1.0em;
  text-indent: -1.0em;
}
#sitepolicy .cmn_contents a {
  text-decoration: underline;
}
.device_com #sitepolicy .cmn_contents a:hover {
  text-decoration: none;
}
.policy_sign {
  margin-top: 20px;
  text-align: right;
}
/*===============================================
	サイトマップ・プライバシーポリシー：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #sitepolicy .cmn_tit_normal, #privacy .cmn_tit_normal {
    margin-top: 30px;
  }
  .policy_column {
    padding: 10px;
  }
}
/* ---------------------------------------------------------

	24. 【塾の先生対象】学校説明会のご案内

--------------------------------------------------------- */
#cramschool .cmn_contents {
  margin-bottom: 0;
}
.cat_cramschool .cmn_mv_tit span {
  display: inline-block;
  font-size: 30px;
  margin-bottom: 10px;
  text-indent: -0.5em;
}
.cat_cramschool .cmn_tit_page span {
  display: inline-block;
  font-size: 24px;
  margin-bottom: 5px;
}
.cat_cramschool .cmn_bg_colored {
  padding-bottom: 50px;
}
.cramschool_sign {
  margin: 10px 0 20px;
  text-align: right;
}
.cramschool_table {
  margin-bottom: 50px;
  table-layout: auto;
}
.cramschool_table tbody th {
  width: 10em;
}
.cramschool_table tbody td:first-of-type {
  width: 15em;
}
.cramschool_table tbody dt {
  font-weight: bold;
}
.cramschool_table tbody dd span {
  color: #e80000;
}
.cramschool_confirm {
  color: #e80000;
  font-weight: bold;
}
/*===============================================
	【塾の先生対象】学校説明会のご案内：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .cat_cramschool .cmn_mv_tit span {
    font-size: 14px;
    margin-bottom: 3px;
  }
  .cat_cramschool .cmn_tit_page span {
    font-size: 18px;
  }
  .cat_cramschool .cmn_bg_colored {
    padding-bottom: 30px;
  }
  .cramschool_table {
    margin-bottom: 30px;
  }
  .cramschool_table tbody th {
    width: 3em;
  }
  .cramschool_table tbody td:first-of-type {
    width: 48%;
  }
  #cramschool .cmn_bg_colored p {
    text-align: center;
  }
}
/* ---------------------------------------------------------

	25. フォーム（いじめ相談・資料請求・塾の先生説明会）

--------------------------------------------------------- */
.form_table {
  margin: 20px 0 30px;
}
.form_table tbody th {
  background-color: #d9e5ef;
  color: #005293;
  padding: 15px;
  text-align: left;
  width: 12em;
}
.form_table tbody td {
  background-color: #f2f6f9;
  color: #333;
  padding: 15px;
  text-align: left;
}
.form_table tbody td p {
  line-height: 1.5;
}
.form_table tbody td p + p {
  margin-top: 10px;
}
.form_require {
  border: 1px solid #d70202;
  color: #d70202;
  font-size: 12px;
  margin-left: 5px;
  padding: 2px;
}
.form_validation {
  display: none;
  font-size: 12px;
}
input[type="radio"], input[type="checkbox"] {
  margin-right: 0.5em;
}
label + label {
  margin-left: 1.5em;
}
input + .form_label {
  margin-left: 0.5em;
}
.form_label + input {
  margin-left: 0.5em;
}
.form_inquiry_name p:first-child .form_label {
  margin-left: 1.0em;
}
.form_inquiry_name p:first-child .form_label:nth-of-type(2) {
  margin-left: 1.5em;
}
.form_class input, .form_name input, .form_inquiry_name input {
  width: 10em;
}
.form_zipcode input, .form_tel input, .form_cram_people input[type="text"] {
  width: 15em;
}
.form_address input, .form_mail input, .form_cram_name input {
  /*width: calc(90% - 7em);*/ /*バリデーション表記あり時*/
  width: 100%;
}
.form_table .form_year td {
  line-height: 2.0;
  padding-left: calc(15px - 0.5em);
}
.form_year label {
  display: inline-block;
  margin: 0 0.5em;
}
.form_year label + label {
  margin-left: 0.5em;
}
.form_caution {
  color: #005293;
  margin-bottom: 30px;
  text-align: center;
}
.form_caution_inquiry {
  color: #e80000;
  text-align: center;
  margin-bottom: 30px;
}
.form_submit {
  margin: 0 auto;
  max-width: 520px;
  text-align: center;
  width: 100%;
}
.form_submit input {
  background: linear-gradient(to bottom, #09559d 0%, #0072b5 100%);
  color: #fff;
  border-radius: 6px;
  box-shadow: 0 4px 0 0 #ced6d6;
  display: inline-block;
  font-size: 18px;
  height: 100%;
  line-height: 2.0;
  max-width: 250px;
  outline: none;
  padding: 10px 0;
  position: relative;
  text-align: center;
  width: 100%;
}
.form_submit .form_btn_back {
  background: linear-gradient(to bottom, #4a4b4c 0%, #939494 100%);
}
.form_submit input:after {
  content: '';
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  display: block;
  height: 10px;
  position: absolute;
  top: 50%;
  right: 5px;
  -webkit-transform: rotate(-45deg) translateY(-70%);
  transform: rotate(-45deg) translateY(-70%);
  width: 10px;
}
.form_submit input + input {
  margin-left: 20px;
}
.device_com .form_submit input:hover {
  opacity: 0.8;
}
.mw_wp_form .form_year label {
  margin: 0;
}
.mw_wp_form .form_year .horizontal-item {
  display: inline-block;
  margin: 0 0.5em;
}
.mw_wp_form .form_year .error {
  margin: 0 0.5em;
}
.mw_wp_form .form_year .horizontal-item + .horizontal-item {
  margin-left: 0.5em;
}
.mw_wp_form .form_number .horizontal-item + .horizontal-item {
  margin-left: 1.5em;
}
.mw_wp_form_confirm .form_year td {
  padding-left: 15px;
}
.mw_wp_form_confirm .form_label, .mw_wp_form_confirm .form_validation, .mw_wp_form_confirm .form_explain {
  display: none;
}
.mw_wp_form_confirm .form_label_class {
  display: inline-block;
  margin-left: 0;
}
/*===============================================
	フォーム（いじめ相談・資料請求・塾の先生説明会）：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .form_table {
    margin-bottom: 25px;
  }
  .form_table tbody th {
    display: block;
    padding: 15px 10px;
    width: 100%;
  }
  .form_table tbody td {
    display: block;
    padding: 15px 10px;
  }
  .mw_wp_form .form_school .horizontal-item:nth-child(2)::after {
    content: "\A";
    white-space: pre;
  }
  .mw_wp_form .form_school .horizontal-item:nth-child(3) {
    margin-left: 0;
  }
  .form_year dl {
    line-height: 2.0;
  }
  .form_class input, .form_name input, .form_inquiry_name input {
    width: 6em;
  }
  .form_inquiry_name input {
    /*width: 22%;*/ /*バリデーション表記あり時*/
    width: 34%;
  }
  .form_zipcode input, .form_tel input, .form_cram_people input[type="text"] {
    /*width: 10em;*/ /*バリデーション表記あり時*/
  }
  .form_address input, .form_mail input, .form_cram_name input {
    /*width: calc(100% - 6em);*/ /*バリデーション表記あり時*/
  }
  .form_caution {
    margin-bottom: 25px;
  }
  .form_caution_inquiry {
    margin-bottom: 25px;
  }
  .mw_wp_form_confirm .form_year td {
    padding-left: 10px;
  }
  .mw_wp_form_confirm .form_submit input {
    width: calc(50% - 5px);
  }
  .mw_wp_form_confirm .form_submit input + input {
    margin-left: 10px;
  }
}
/* ---------------------------------------------------------

	26. ニュース・トピックス

--------------------------------------------------------- */
.cat_news .cmn_contents {
  margin: 0 auto;
  max-width: 1000px;
  overflow: hidden;
  padding: 45px 20px 50px;
}
.news_ctr_main {
  float: left;
  width: 75.5%;
}
.news_main_tit {
  border-bottom: 2px solid #005293;
  font-size: 24px;
  line-height: 1.3;
  padding-bottom: 12px;
}
#news_single .news_main_tit {
  font-size: 22px;
}
.cmn_news_list {
  font-size: 12px;
  line-height: 1.7;
}
.cmn_news_list li {
  border-bottom: 1px solid #bdbdbd;
  display: flex;
  align-items: flex-start;
  padding: 1.4em 0;
}
.cmn_news_date {
  color: #006cab;
  flex: 0 0 auto;
  font-weight: bold;
  width: 6.5em;
}
.cmn_news_tag {
  background-color: #006cab;
  color: #fff;
  flex: 0 0 auto;
  margin-right: 1.5em;
  text-align: center;
  width: 6.0em;
}
.cmn_news_tag_exam {
  background-color: #de7317;
}
.cmn_news_tag_event {
  background-color: #0b7301;
}
.cmn_news_tag_junior {
  background-color: #19b0c3;
}
.cmn_news_tag_senior {
  background-color: #005aaa;
}
.cmn_news_tag_topic {
  background-color: #c33;
}
.cmn_news_title {
  width: 100%;
}
.cmn_news_title a {
  color: #333;
}
.news_ctr_main .news_single_date {
  line-height: 1.5;
  margin-bottom: 12px;
}
.news_single_date .cmn_news_tag {
  display: inline-block;
  line-height: 1.5;
  margin-left: 1em;
}
.news_ctr_side {
  float: right;
  width: 18.75%;
}
.news_side_list + .news_side_list {
  margin-top: 30px;
}
.news_side_list dt {
  border: 1px solid #005293;
  color: #005293;
  font-size: 16px;
  margin-bottom: 12px;
  padding: 7px;
}
.news_side_list li {
  font-size: 16px;
  line-height: 1.5;
}
.news_side_list li + li {
  margin-top: 5px;
}
.news_side_list li a:before {
  content: '';
  background: url(../img/common/ico_arrow_link01.png) left center no-repeat;
  background-size: 8px;
  display: inline-block;
  height: 10px;
  margin-right: 5px;
  width: 10px;
}
.news_pagination {
  letter-spacing: -.5em;
  margin-top: 35px;
  text-align: center;
}
.news_pagination li {
  display: inline-block;
  letter-spacing: normal;
  margin-bottom: 5px;
}
.news_pagination li + li {
  margin-left: 5px;
}
.news_pagination li > a, .news_pagination li > span {
  background-color: #f6f6f6;
  color: #333;
  display: block;
  line-height: 30px;
  min-width: 30px;
  padding: 0 5px;
  text-align: center;
  text-decoration: none;
}
.news_pagination .current, .device_com .news_pagination a:hover {
  background-color: #005393;
  color: #fff;
}
.news_box {
  margin-top: 1em;
  overflow: hidden;
}
.news_box p + p {
  margin-top: 1.0em;
}
.news_imgs_box {
  overflow: hidden;
}
.news_imgs_box img {
  display: block;
  float: left;
  width: 50%;
}
/*===============================================
	ニュース・トピックス：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .cat_news .cmn_contents {
    padding: 25px 20px;
  }
  .news_ctr_main {
    float: none;
    margin-bottom: 30px;
    width: 100%;
  }
  .news_main_tit {
    font-size: 22px;
  }
  .cmn_news_list li {
    flex-wrap: wrap;
    padding: 1em 0;
  }
  .cmn_news_date {
    margin-bottom: 0.5em;
  }
  .cmn_news_title {
    width: 100%;
  }
  .news_ctr_side {
    float: none;
    width: 100%;
  }
  .news_side_list + .news_side_list {
    margin-top: 20px;
  }
  .news_side_list li {
    font-size: 14px;
  }
  .news_pagination {
    margin-top: 25px;
  }
  .news_box img {
    height: auto !important;
    width: auto !important;
  }
  .news_imgs_box img {
    float: none;
    width: 100%;
  }
  .news_imgs_box img + img {
    margin-top: 10px;
  }
}
/* ---------------------------------------------------------

	27. 説明会関連

--------------------------------------------------------- */
/* 中学校入試直前説明会
--------------------------------------------------------- */
.exam_info_table {
  margin-bottom: 30px;
}
.exam_info_table tbody th {
  width: 10em;
}
.cat_junior .exam_info_table tbody th {
  background-color: #1bb0c4;
}
.cat_senior .exam_info_table tbody th {
  background-color: #005aaa;
}
.exam_info_table tbody td {
  padding: 10px 5px;
}
.cmn_txt_lead .em {
  color: #e80000;
  font-weight: bold;
}
.cmn_txt_lead + .table_wrapper {
  margin-top: 15px;
}
/*===============================================
	各種証明書発行申請：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .exam_info_table {
    margin-bottom: 20px;
  }
  .exam_info_table tbody th {
    width: 4em;
  }
}
/* ---------------------------------------------------------

	28. オープンスクール

--------------------------------------------------------- */
.open_school_mv {
  margin: 50px auto;
}
.open_lead {
  text-align: center;
}
.open_bg_colored {
  margin: 50px 0 70px;
  padding: 40px 0;
  position: relative;
}
.open_bg_colored:before {
  content: '';
  background: url(../img/open_school/bg_slash01.png) center/24px;
  border-top: 4px solid #fffbca;
  border-bottom: 4px solid #fffbca;
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  z-index: -1;
}
.open_date {
  display: flex;
  justify-content: center;
}
.open_date dt {
  background-color: #fff;
  border: 2px solid #005293;
  border-radius: 16px;
  color: #005293;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: bold;
  height: 60px;
  width: 140px;
}
.open_date dd {
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 0.2em;
  padding-left: 30px;
}
.open_date dd .num {
  color: #005293;
  font-size: 50px;
}
.open_date dd .ls {
  letter-spacing: -0.5em;
}
.open_bg_colored .cmn_btn a, .open_caution + .cmn_btn a {
  box-shadow: 0 4px 0 0 rgba(1, 1, 1, 0.15);
  padding: 16px 0;
}
#open_school .cmn_tit_normal {
  font-size: 30px;
}
.open_acc + .cmn_tit_underline {
  margin-top: 40px;
}
.open_acc dt {
  border: 1px solid #005293;
  cursor: pointer;
  display: flex;
  font-size: 18px;
  font-weight: bold;
  position: relative;
}
.device_com .open_acc dt:hover {
  opacity: 0.8;
}
.open_acc dd + dt {
  margin-top: 15px;
}
.open_acc dt:before {
  content: '';
  background-color: #005293;
  height: 1px;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 24px;
}
.open_acc dt:after {
  content: '';
  background-color: #005293;
  height: 24px;
  position: absolute;
  top: 50%;
  right: 31px;
  transform: translateY(-50%);
  width: 1px;
}
.open_acc dt.is-open:after {
  display: none;
}
.open_acc dt span:first-child {
  background-color: #005293;
  color: #fff;
  display: block;
  flex: 0 0 auto;
  padding: 15px 0;
  text-align: center;
  width: 170px;
}
.open_acc dt span:last-child {
  color: #005293;
  display: block;
  padding: 15px;
}
.open_acc dd {
  display: none;
  padding: 15px 0;
}
.open_table thead th:nth-child(1) {
  width: 17em;
}
.open_table thead th:nth-child(2) {
  width: 5em;
}
.open_table tbody th {
  background-color: #dce5f1;
  color: #333;
  padding: 10px 0.5em;
  text-align: left;
}
.open_table tbody td {
  padding: 10px 0.5em;
}
.open_table tbody td:nth-of-type(1) {
  padding: 10px 0;
}
.open_table tbody td:nth-of-type(2) {
  text-align: left;
}
.open_table .open_table_primary th {
  background-color: #dce5f1;
}
.open_table .open_table_junior th {
  background-color: #ebf0de;
}
.open_table .open_table_pj th {
  background-color: #f1dbdb;
}
.open_table .open_table_other th {
  background-color: #fde9d9;
}
.open_table_caution {
  line-height: 1.4;
  margin: 15px 0 35px;
  padding-left: 1.0em;
  text-indent: -1.0em;
}
.open_caution {
  background-color: #f2f7fb;
  border: 1px solid #005293;
  border-radius: 20px;
  margin: 40px 0 50px;
  padding: 20px 25px;
}
.open_caution li {
  color: #005293;
  font-size: 16px;
  line-height: 1.6;
  padding-left: 1.0em;
  text-indent: -1.0em;
}
.open_apply_list {
  margin-bottom: 50px;
}
.open_apply_list li {
  background: url(../img/open_school/bg_slash01.png) center/24px;
  border: 4px solid #fffbca;
  border-radius: 20px;
  font-size: 18px;
  line-height: 1.6;
  padding: 25px 10px;
  text-align: center;
}
.open_apply_list li + li {
  margin-top: 32px;
  position: relative;
}
.open_apply_list li + li:after {
  content: '';
  border: 10px solid transparent;
  border-top-color: #005293;
  display: block;
  height: 0;
  margin-left: -10px;
  position: absolute;
  top: -25px;
  left: 50%;
  width: 0;
}
.open_apply_list a {
  border-bottom: 1px solid #005aaa;
  display: inline-block;
}
p.open_apply_fax {
  font-size: 30px;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}
.open_apply_fax span {
  color: #005aaa;
  font-size: 50px;
}
.open_apply_fax + p {
  font-size: 16px;
  margin-bottom: 50px;
  text-align: center;
}
#open_apply .open_bg_colored {
  margin-bottom: 10px;
}
.open_apply_download {
  margin-bottom: 30px;
  padding: 40px 0 45px;
  text-align: center;
}
.open_apply_download:before {
  background-color: #f2f7fb;
}
.open_apply_download ul {
  margin: 0 auto;
  max-width: 640px;
}
.open_apply_download li {
  max-width: 250px;
}
.open_apply_download h4 {
  color: #005aaa;
  font-weight: normal;
  margin-bottom: 20px;
}
.open_apply_download .cmn_btn_pdf {
  margin-top: 15px;
}
/*===============================================
	オープンスクール：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .open_school_mv {
    margin: 25px 0;
  }
  .open_bg_colored {
    margin: 20px 0 30px;
    padding: 25px 0;
  }
  .open_bg_colored:before {
    background-size: 12px;
  }
  .open_date {
    display: block;
  }
  .open_date dt {
    border-width: 1px;
    border-radius: 8px;
    font-size: 16px;
    height: 30px;
    margin-bottom: 10px;
    width: 5em;
  }
  .open_date dd {
    font-size: 16px;
    letter-spacing: 0.1em;
    padding-left: 0;
    text-align: center;
  }
  .open_date dd .num {
    font-size: 24px;
  }
  .open_bg_colored .cmn_btn a, .open_caution + .cmn_btn a {
    padding: 10px 0;
  }
  #open_school .cmn_tit_normal {
    font-size: 20px;
  }
  .open_acc + .cmn_tit_underline {
    margin-top: 25px;
  }
  .open_acc dt {
    font-size: 14px;
  }
  .open_acc dd + dt {
    margin-top: 10px;
  }
  .open_acc dt:before {
    right: 10px;
    width: 20px;
  }
  .open_acc dt:after {
    height: 20px;
    right: 19px;
  }
  .open_acc dt span:first-child {
    width: 8em;
  }
  .open_acc dd {
    padding: 15px 0;
  }
  .open_table {
    table-layout: fixed;
    white-space: normal;
    width: 550px;
  }
  .open_table thead th:nth-child(1) {
    width: 11em;
  }
  .open_table thead th:nth-child(2) {
    width: 3.5em;
  }
  .open_table_caution {
    margin-bottom: 25px;
  }
  .open_caution {
    margin: 30px 0 20px;
    border-radius: 15px;
    padding: 15px;
  }
  .open_caution li {
    font-size: 14px;
  }
  .open_apply_list {
    margin-bottom: 30px;
  }
  .open_apply_list li {
    border-radius: 10px;
    font-size: 14px;
    padding: 15px;
  }
  p.open_apply_fax {
    font-size: 20px;
    line-height: 1.4;
  }
  .open_apply_fax span {
    font-size: 32px;
  }
  .open_apply_fax + p {
    font-size: 14px;
    margin-top: 5px;
    margin-bottom: 30px;
  }
  #open_apply .open_date {
    display: flex;
  }
  #open_apply .open_date dt {
    margin-bottom: 0;
  }
  #open_apply .open_date dd {
    padding-left: 1.0em;
    text-align: left;
  }
  .open_apply_download {
    margin-bottom: 25px;
    padding: 30px 0 35px;
  }
  .open_apply_download ul {
    margin: 0 auto;
    max-width: 250px;
  }
  .open_apply_download li + li {
    margin-top: 35px;
  }
}
/* ---------------------------------------------------------

	29. スペシャルレポート

--------------------------------------------------------- */
.report_quote {
  color: #fff;
  position: absolute;
  bottom: 10px;
  right: 10px;
}
.report_title {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 1.2em;
}
* + .report_title {
  margin-top: 2.0em;
}
.report_box p + p {
  margin-top: 1.0em;
}
.report_img {
  margin: 30px auto;
  max-width: 500px;
  text-align: center;
}
.report_img p + p {
  margin-top: 0.5em;
  text-align: left;
}
.report_grid_2col_caption {
  margin-top: -20px;
}
.report_box .report_grid_2col_caption + p {
  margin-top: 20px;
}
.report_box .report_end {
  border-top: 1px dotted #ccc;
  margin-top: 40px;
  padding-top: 40px;
}
.report .cmn_tit_border {
  margin: 25px 0 15px;
}
.report_course, .report_course_2col_item {
  line-height: 2.0;
}
.report_course dt, .report_course_2col_item dt {
  font-weight: bold;
}
.report_course dd + dt, .report_course_2col_item dd + dt {
  margin-top: 1em;
}
.report_course_column {
  background-color: #f6f6f6;
  margin-top: 0.5em;
  padding: 15px 20px;
}
.report_box .report_course_img {
  margin: 0.8em 0 25px;
}
.report_course_img.grid_2col {
  margin: calc(0.8em - 30px) 0 -20px;
}
#medical_2019 .cmn_tit_border {
  margin-top: 50px;
}
.medical_list_caution {
  font-size: 12px;
  line-height: 1.8;
  margin-top: 20px;
}
.medical_table {
  border: 1px solid #ccc;
  border-collapse: collapse;
  border-spacing: 0;
  margin-left: 0;
  table-layout: fixed;
  width: 100%;
}
.medical_table + .medical_table {
  margin-top: 20px;
}
.medical_table caption {
  background-color: #dfecfa;
  border: 1px solid #ccc;
  border-bottom: none;
  color: #14569e;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.4;
  padding: 10px;
  text-align: left;
}
.medical_table tbody tr {
  border-top: 1px solid #ccc;
}
.medical_table tbody td {
  background-color: #fff;
  padding: 10px;
  text-align: left;
}
.medical_table tbody td:first-child {
  vertical-align: top;
  width: 33%;
}
.medical_table tbody td:not(:last-child) {
  border-right: 1px dashed #ccc;
}
.medical_table_caution {
  font-size: 12px;
  margin-top: 5px;
}
.medical_list_pass li {
  display: inline-block;
  line-height: 2;
}
.medical_list_pass li::before {
  content: '●';
  color: #14569e;
  font-size: 0.8em;
  margin-right: 0.2em;
}
.medical_graph {
  margin: 20px auto 40px;
  max-width: 272px;
}
.medical_course_img {
  border-top: 1px dashed #ccc;
  margin-top: 40px;
  padding-top: 10px;
}
.medical_course_img > div {
  letter-spacing: -0.02em;
  margin-bottom: 0;
  width: 50%;
}
.medical_course_img .medical_graph {
  margin-bottom: 0;
}
.medical_message_section {
  border-bottom: 1px dashed #ccc;
  margin: 120px 0 50px;
  padding-bottom: 50px;
}
.report_2020_anchor {
  display: flex;
  justify-content: space-between;
}
.report_2020_anchor li {
  width: 22%;
}
.report_2020_anchor a {
  background: url(../img/report_2020/anchor_bg.png) center/100% 100% no-repeat;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  height: 100%;
  line-height: 1.4;
  padding: 60px 0 50px;
  position: relative;
  text-align: center;
}
.report_2020_anchor a::before {
  content: '';
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  display: block;
  height: 40px;
  position: absolute;
  top: 15px;
  left: 50%;
  transform: translateX(-50%);
  width: 40px;
}
.report_2020_anchor li:nth-child(1) a::before {
  background-image: url(../img/report_2020/anchor_ico01.png);
}
.report_2020_anchor li:nth-child(2) a::before {
  background-image: url(../img/report_2020/anchor_ico02.png);
}
.report_2020_anchor li:nth-child(3) a::before {
  background-image: url(../img/report_2020/anchor_ico03.png);
}
.report_2020_anchor li:nth-child(4) a::before {
  background-image: url(../img/report_2020/anchor_ico04.png);
}
.report_2020_anchor a::after {
  content: '';
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
  display: block;
  height: 18px;
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: rotate(45deg) translateX(-50%);
  width: 18px;
}
.report_2020_title {
  margin-top: 50px;
  padding-top: 40px;
}
.report_2020_title span {
  background-color: #f6f6f6;
  color: #1f518e;
  display: block;
  font-size: 24px;
  font-weight: bold;
  padding: 50px 0 30px;
  position: relative;
  text-align: center;
}
.report_2020_title span::before {
  content: '';
  background: url(../img/report_2020/anchor_bg.png) center/contain no-repeat;
  display: block;
  height: 56px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 56px;
}
.report_2020_title span::after {
  content: '';
  background-position: center;
  background-repeat: no-repeat;
  background-size: 70% 70%;
  display: block;
  height: 56px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 56px;
}
#report_2020_1 span::after {
  background-image: url(../img/report_2020/anchor_ico01.png);
}
#report_2020_2 span::after {
  background-image: url(../img/report_2020/anchor_ico02.png);
}
#report_2020_3 span::after {
  background-image: url(../img/report_2020/anchor_ico03.png);
}
#report_2020_4 span::after {
  background-image: url(../img/report_2020/anchor_ico04.png);
}
.report_2020_subtitle {
  color: #1f518e;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.1em;
  margin: 2em 0 1em;
  text-align: center;
}
.report_2020_boxtitle {
  background-color: #1f518e;
  color: #fff;
  font-size: 20px;
  font-weight: normal;
  padding: 1em;
  text-align: center;
}
.report_2020_box + .report_2020_boxtitle {
  margin-top: 30px;
}
.report_2020_list + .report_2020_boxtitle {
  margin-top: 60px;
}
.report_2020_box {
  background-color: #f4f4f4;
  padding: 40px 30px 30px;
}
.report_2020_box .report_img {
  margin-top: 0;
}
.report_2020_2col {
  margin: 1em 0;
  overflow: hidden;
}
.report_2020_2col .report_img {
  float: right;
  margin: 0 0 20px 20px;
}
.report_2020_2col p:last-child {
  margin-top: 0;
}
.report_2020_boxname {
  font-weight: bold;
  text-align: right;
}
.report_2020_box_student {
  background-color: #faf5eb;
}
.report_2020_box_student p:nth-last-of-type(2) {
  border-top: 1px dotted #ccc;
  padding-top: 1.2em;
}
.report_2020_list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 3.5%;
}
.report_2020_list li {
  margin-right: 3.5%;
  position: relative;
  width: 31%;
}
.report_2020_list li::after {
  content: attr(data-num);
  background-color: #1f518e;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 34px;
  font-size: 18px;
  position: absolute;
  top: 0;
  left: 0;
  width: 34px;
}
.report_2020_list li:nth-child(3n) {
  margin-right: 0;
}
.report_2020_list li:nth-child(n+4) {
  margin-top: 3%;
}
.report_2020_list p + p {
  line-height: 1.5;
  margin-top: 5px;
}
.report_course_medic {
  color: #f00;
}
.report_course_2col {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.report_course_2col_item {
  width: 48%;
}
.report_course_2col_item:nth-child(n+3) {
  margin-top: 15px;
}
.report_course_2col_item dd::before {
  content: '●';
  color: #005293;
  font-size: 10px;
  margin-right: 0.5em;
}
.report_course_2col_category {
  border-bottom: 1px solid #005293;
  color: #005293;
  font-size: 16px;
  margin-bottom: 15px;
  padding-bottom: 10px;
}
.report_course_2col_uni {
  font-weight: bold;
}
.report_course_2col_item dd {
  padding-left: 1.0em;
  text-indent: -1.0em;
}
/*===============================================
	スペシャルレポート：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #report .cmn_mv_tit {
    line-height: 1.3;
  }
  .report_quote {
    font-size: 10px;
    bottom: 5px;
    right: 5px;
  }
  .report_title {
    font-size: 16px;
  }
  .report_img {
    margin: 25px auto;
  }
  .report_grid_2col_caption {
    margin-top: -15px;
  }
  .report_box .report_end {
    margin-top: 30px;
    padding-top: 30px;
  }
  .report .cmn_tit_border {
    margin: 15px 0 10px;
  }
  .report_course, .report_course_2col_item {
    line-height: 1.5;
  }
  .report_course dd + dt, .report_course_2col_item dd + dt {
    margin-top: 0.8em;
  }
  .report_course_column {
    padding: 15px;
  }
  .report_box .report_course_img {
    margin: 0.8em 0 20px;
    text-align: center;
  }
  .report_course_img.grid_2col {
    margin: calc(0.8em - 10px) 0 0;
  }
  .report_course_img.grid_2col .report_img {
    margin: 10px auto;
  }
  #medical_2019 .cmn_tit_border {
    margin-top: 30px;
  }
  .medical_list_caution {
    margin-top: 15px;
  }
  .medical_table_course tbody td:last-child {
    width: 20%;
  }
  .medical_graph {
    margin: 15px auto 20px;
    max-width: 220px;
  }
  .medical_course_img {
    margin-top: 30px;
    padding-top: 0;
  }
  .medical_course_img > div {
    letter-spacing: 0;
    width: 100%;
  }
  .medical_message_section {
    margin: 60px 0 30px;
    padding-bottom: 30px;
  }
  .report_2020_anchor {
    flex-wrap: wrap;
  }
  .report_2020_anchor li {
    width: 48%;
  }
  .report_2020_anchor li:nth-child(n+3) {
    margin-top: 4%;
  }
  .report_2020_anchor a {
    font-size: 17px;
    min-height: 146px;
    padding: 60px 0 40px;
  }
  .report_2020_title {
    margin-top: 30px;
  }
  .report_2020_title span {
    font-size: 20px;
  }
  .report_2020_subtitle {
    font-size: 22px;
  }
  .report_2020_boxtitle {
    font-size: 18px;
  }
  .report_2020_box + .report_2020_boxtitle {
    margin-top: 25px;
  }
  .report_2020_list + .report_2020_boxtitle {
    margin-top: 30px;
  }
  .report_2020_box {
    padding: 20px 15px 15px;
  }
  .report_2020_2col .report_img {
    float: none;
    margin: 0;
  }
  .report_2020_2col p:last-child {
    margin-top: 1em;
  }
  .report_2020_list {
    margin-top: 4%;
  }
  .report_2020_list li {
    margin-right: 4%;
    width: 48%;
  }
  .report_2020_list li::after {
    height: 25px;
    font-size: 14px;
    width: 25px;
  }
  .report_2020_list li:nth-child(3n) {
    margin-right: 4%;
  }
  .report_2020_list li:nth-child(even) {
    margin-right: 0;
  }
  .report_2020_list li:nth-child(n+3) {
    margin-top: 4%;
  }
  .report_course_2col_item {
    width: 100%;
  }
  .report_course_2col_item:nth-child(n+2) {
    margin-top: 15px;
  }
}
/* ---------------------------------------------------------

	30. 高校入試相談用紙ダウンロード

--------------------------------------------------------- */
.exam_s_dl_table {
  margin-bottom: 50px;
}
.exam_s_dl_table tbody th {
  width: 8em;
}
.exam_s_dl_table tbody td {
  text-align: left;
}
.exam_s_dl_table tbody td span {
  color: #f00;
  font-weight: bold;
}
.cmn_btn_no a {
  /* background: linear-gradient(to bottom, #97999a 0%, #b7b7b7 100%); */
}
.exam_s_dl_list {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
.exam_s_dl_list li {
  width: 48%;
}
.exam_s_mihon_title {
  text-align: center;
}
.exam_s_mihon .cmn_btn a {
  background: #fff;
  border: 1px solid #09559d;
  color: #09559d;
}
#exam_s_dl .open_bg_colored {
  margin-top: 70px;
  margin-bottom: 0;
  padding: 25px 0;
}
#exam_s_dl .open_bg_colored h3 {
  color: #005293;
  font-size: 22px;
  text-align: center;
}
#exam_s_dl .cmn_bg_colored {
  padding: 30px 0;
  text-align: center;
}
#exam_s_dl .cmn_bg_colored p {
  margin-bottom: 10px;
}
.exam_s_dl_caution {
  color: #f00;
  font-weight: bold;
}
#download .cmn_bg_colored {
  padding: 20px 0 40px;
}
#download .cmn_btn a {
  padding-left: 0.4em;
}
#download .cmn_btn a::after {
  display: none;
}
/*===============================================
	高校入試相談用紙ダウンロード：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .exam_s_dl .cmn_mv:before {
    background-position: center;
  }
  .exam_s_dl_table {
    margin-bottom: 40px;
  }
  .exam_s_dl_table tbody th {
    width: 5em;
  }
  .exam_s_dl_list {
    display: block;
  }
  .exam_s_dl_list li {
    width: 100%;
  }
  .exam_s_dl_list li + li {
    margin-top: 30px;
  }
}
/* ---------------------------------------------------------

	31. エラーページ

--------------------------------------------------------- */
.cat_error .cmn_contents {
  margin-bottom: 100px;
  padding-top: 55px;
}
.cat_error .cmn_contents p + p {
  margin-top: 1.5em;
}
/* ---------------------------------------------------------

	32. クラブ活動方針

--------------------------------------------------------- */
#club_policy .cmn_tit_normal {
  margin-top: 40px;
}
.clubpolicy_list li {
  line-height: 2.0;
  padding-left: 1em;
  text-indent: -1em;
}
.clubpolicy_list_schedule li {
  padding-left: 7em;
  text-indent: -7em;
}
.clubpolicy_download {
  display: flex;
  flex-wrap: wrap;
}
.clubpolicy_download li {
  width: 32%;
}
.clubpolicy_download li:not(:nth-child(3n)) {
  margin-right: 2%;
}
.clubpolicy_download li:nth-child(n+4) {
  margin-top: 2%;
}
/*===============================================
	クラブ活動方針：768px未満
===============================================*/
@media screen and (max-width:767px) {
  #club_policy .cmn_tit_normal {
    margin-top: 30px;
  }
  .clubpolicy_list_schedule li {
    padding-left: 1em;
    text-indent: -1em;
  }
  .clubpolicy_download li {
    width: 48%;
  }
  .clubpolicy_download li:not(:nth-child(3n)) {
    margin-right: 0;
  }
  .clubpolicy_download li:not(:nth-child(even)) {
    margin-right: 4%;
  }
  .clubpolicy_download li:nth-child(n+3) {
    margin-top: 4%;
  }
}
/* ---------------------------------------------------------

	33. 入試・学校選びのご質問

--------------------------------------------------------- */
.form_contact_table tbody th {
  width: 13em;
}
.form_contact_table tbody textarea {
  border-color: #d2d2d2;
  width: 100%;
}
.form_contact_table tbody .form_date .horizontal-item {
  display: inline-block;
  line-height: 2;
}
.mw_wp_form_confirm .form_contact_table .form_date p {
  display: none;
}
/*===============================================
	入試・学校選びのご質問：768px以上
===============================================*/
@media screen and (min-width:768px) {
  .form_contact_table tbody .form_date .horizontal-item {
    margin-left: 0;
  }
  .form_contact_table tbody .form_date .horizontal-item:nth-child(1), .form_contact_table tbody .form_date .horizontal-item:nth-child(4) {
    width: 11em;
  }
  .form_contact_table tbody .form_date .horizontal-item:nth-child(2), .form_contact_table tbody .form_date .horizontal-item:nth-child(5) {
    width: 10em;
  }
}
/*===============================================
	入試・学校選びのご質問：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .form_contact_table tbody th {
    width: 100%;
  }
  .mw_wp_form .form_contact_table .form_date .horizontal-item:nth-child(-2n+7) {
    margin-left: 0;
  }
  .mw_wp_form .form_contact_table .form_date .horizontal-item:nth-child(-2n+5) {
    width: 9em;
  }
  .mw_wp_form .form_contact_table .form_date .horizontal-item:nth-child(3) {
    margin-left: 0;
  }
}
/*===============================================
	入試・学校選びのご質問：375px未満
===============================================*/
@media screen and (max-width:374px) {
  .mw_wp_form .form_contact_table .form_date .horizontal-item:nth-child(-n+7) {
    margin-left: 0;
  }
  .mw_wp_form .form_contact_table .form_date .horizontal-item:nth-child(-2n+5) {
    width: 100%;
  }
}
/* ---------------------------------------------------------

	34. 学校紹介動画

--------------------------------------------------------- */
.movie_index {
  margin-top: 3em;
}
.movie_index_list {
  font-size: 16px;
  line-height: 2;
  margin-top: 0.8em;
}
.movie_index_list dt {
  font-weight: normal;
}
.movie_index_list dt span {
  font-size: 0.85em;
}
.movie_index_junior .movie_index_list a {
  color: #0095a9;
}
.movie_index_nolink a {
  pointer-events: none;
}
.movie_index_coming {
  margin-top: 1.1em;
}
.intro_sec {
  margin-top: 20px;
}
.intro_sec .cmn_tit_horizon {
  margin-bottom: 1em;
}
.intro_sec .js-lightbox_iframe a[href="#"] {
  pointer-events: none;
}
.intro_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.intro_list li {
  width: 48%;
}
.intro_list li:nth-child(n+3) {
  margin-top: 4%;
}
.intro_common .cmn_tit_horizon {
  border-bottom-color: #b84f4f;
}
.intro_common .cmn_tit_horizon::after {
  background-color: #b84f4f;
}
.intro_common .cmn_tit_normal {
  color: #b84f4f;
}
.intro_junior .cmn_tit_horizon {
  border-bottom-color: #0095a9;
}
.intro_junior .cmn_tit_horizon::after {
  background-color: #0095a9;
}
.intro_junior .cmn_tit_normal {
  color: #0095a9;
}
.intro_contact {
  margin: 60px auto;
  max-width: 40em;
}
/*===============================================
	学校説明会動画：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .movie_index {
    margin-top: 2.5em;
  }
  .movie_index_senior {
    margin-top: 30px;
  }
  .movie_index_list {
    font-size: 14px;
  }
  .intro_sec {
    margin-top: 10px;
  }
  .intro_list {
    display: block;
  }
  .intro_list li {
    width: 100%;
  }
  .intro_list li:nth-child(n+3), .intro_list li + li {
    margin-top: 1.5em;
  }
  .intro_contact {
    margin: 40px auto;
    max-width: 90%;
  }
}
/* ---------------------------------------------------------

	35. 育てる生徒像

--------------------------------------------------------- */
.ideal_section {
  border: 1px solid #ccc;
  margin-top: 5em;
  padding: 0 2em 2em;
  position: relative;
  text-align: center;
}
.ideal_section_title {
  background-color: #005293;
  color: #fff;
  display: inline-block;
  font-size: 20px;
  font-weight: normal;
  line-height: 1.4;
  padding: 0.5em 1.5em;
  position: relative;
  top: -1.2em;
}
.ideal_section_title strong {
  font-weight: normal;
  margin-left: 0.5em;
}
.ideal_section_leadtitle {
  color: #454545;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin-bottom: 1em;
}
.ideal_section_image {
  margin: 0 auto;
  max-width: 660px;
}
.ideal_motto {
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 18px;
  line-height: 1.4;
  margin-top: 1.5em;
  padding-top: 1.5em;
  position: relative;
}
.ideal_motto dt {
  border-top: 2px solid #333;
  border-bottom: 2px solid #333;
  display: inline-block;
  padding: 0.3em 0.5em 0.2em;
}
.ideal_motto dt::before {
  content: '';
  border-top: 2px solid #333;
  border-left: 2px solid #333;
  display: block;
  height: 1em;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  width: 1em;
}
.ideal_motto dd:first-of-type {
  font-size: 1.5em;
  margin-top: 0.5em;
}
.ideal_motto dd:last-child {
  margin-top: 0.8em;
}
.ideal_motto_list {
  display: flex;
  justify-content: space-between;
  margin-top: 1.5em;
}
.ideal_motto_list li {
  background-color: #005293;
  color: #fff;
  flex-basis: 32%;
  font-weight: bold;
  line-height: 1.6;
  padding: 0.8em 1em;
  text-align: center;
}
.ideal_index_title {
  margin-top: 2.5em;
}
.ideal_index_menu {
  padding: 1.5em;
  text-align: center;
}
.ideal_index_junior {
  background-color: #d9f2f6;
}
.ideal_index_senior {
  background-color: #d9e7f3;
}
.ideal_index_menu + .ideal_index_menu {
  margin-top: 1.5em;
}
.ideal_index_menu h4 {
  font-size: 18px;
  font-weight: bold;
}
.ideal_index_menu ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 1.5em auto 0;
  max-width: 660px;
}
.ideal_index_menu li {
  flex-basis: 48%;
  margin-top: 0;
  max-width: inherit;
}
.ideal_index_menu li:nth-child(n+3) {
  margin-top: 4%;
}
.ideal_index_menu a {
  padding: 0.8em;
}
.ideal_index_junior a {
  background: linear-gradient(to bottom, #0091a5 0%, #1bb0c4 100%);
}
.cat_ideal_junior .ideal_section_leadtitle, .cat_ideal_senior .ideal_section_leadtitle {
  margin-bottom: 0;
}
.ideal_goal {
  margin-top: 4em;
}
.ideal_goal_heading {
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 0;
}
.ideal_goal_heading::before {
  content: '';
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  z-index: -1;
}
.cat_ideal_junior .ideal_goal_heading::before {
  background-color: #eff9fb;
}
.cat_ideal_senior .ideal_goal_heading::before {
  background-color: #f2f7fb;
}
.ideal_goal_text {
  display: flex;
  align-items: center;
  flex-basis: 50%;
  font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 18px;
  line-height: 1.6;
  padding: 0 1em 1em;
}
.ideal_goal_en {
  display: block;
  font-style: italic;
}
.ideal_goal_en em {
  font-size: 1.8em;
  margin-left: 0.3em;
}
.ideal_goal_jp {
  display: block;
  margin-top: 0.5em;
}
.ideal_goal_image {
  flex-basis: 50%;
}
.ideal_goal .ideal_section::before {
  content: '';
  border-right: 3px solid #333;
  border-bottom: 3px solid #333;
  display: block;
  height: 1em;
  position: absolute;
  top: -4em;
  left: 50%;
  transform: translateX(-50%) rotate(45deg);
  width: 1em;
}
.ideal_goal .ideal_section_title {
  font-size: 18px;
}
.ideal_section_goaltitle {
  font-size: 1.2em;
  line-height: 1.5;
  margin-bottom: 0.5em;
}
.ideal_goal .ideal_section p, .ideal_goal .ideal_section ul {
  line-height: 2;
  text-align: left;
}
.ideal_goal .ideal_section li {
  padding-left: 1em;
  text-indent: -1em;
}
.cat_ideal_junior .ideal_goal .ideal_section_title {
  background-color: #01a7bd;
}
/*===============================================
	育てる生徒像：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .ideal_section {
    margin-top: 4em;
    padding: 0 1.5em 1.5em;
    text-align: center;
  }
  .ideal_section_title {
    font-size: 18px;
  }
  .ideal_section_title strong {
    display: block;
    margin-left: 0;
  }
  .ideal_section_leadtitle {
    font-size: 22px;
    letter-spacing: 0.01em;
    line-height: 1.4;
  }
  .ideal_motto {
    font-size: 16px;
  }
  .ideal_motto_list {
    display: block;
  }
  .ideal_motto_list li + li {
    margin-top: 10px;
  }
  .ideal_index_title {
    margin-top: 2em;
  }
  .ideal_index_menu + .ideal_index_menu {
    margin-top: 0.8em;
  }
  .ideal_index_menu h4 {
    font-size: 16px;
  }
  .ideal_index_menu ul {
    display: block;
  }
  .ideal_index_menu li + li, .ideal_index_menu li:nth-child(n+3) {
    margin-top: 10px;
  }
  .ideal_goal {
    margin-top: 2em;
  }
  .ideal_goal_heading {
    display: block;
    padding-bottom: 1em;
  }
  .ideal_goal_text {
    display: block;
    font-size: 16px;
    line-height: 1.4;
    padding: 0.5em 0 1em;
  }
  .ideal_goal_en em {
    font-size: 1.4em;
    margin-left: 0.3em;
  }
  .ideal_goal_jp {
    margin-top: 0.5em;
  }
  .ideal_goal .ideal_section::before {
    top: -3.5em;
  }
  .ideal_goal .ideal_section {
    padding: 0 1em 1em;
  }
  .ideal_goal .ideal_section_title {
    font-size: 15px;
    padding: 0.5em;
  }
  .ideal_goal .ideal_section p, .ideal_goal .ideal_section ul {
    line-height: 1.5;
  }
}
/* ---------------------------------------------------------

	36. Web出願ガイド

--------------------------------------------------------- */
.web_app_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.web_app_list li {
  width: 48%;
}
.web_app_list li:nth-child(n+3) {
  margin-top: 3%;
}
.web_app_list li p + p {
  margin-top: 0.8em;
}
/*===============================================
	Web出願ガイド：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .web_app_list {
    display: block;
  }
  .web_app_list li {
    width: 100%;
  }
  .web_app_list li:nth-child(n+3), .web_app_list li + li {
    margin-top: 1.5em;
  }
}
/* ---------------------------------------------------------

	37. 中学校文化部特集

--------------------------------------------------------- */
.jc_index_image {
  margin-block: 2em 1.5em;
}
.jc_index_content {
  margin-top: 2em;
}
.jc_index_butttons {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 2%;
}
.jc_index_butttons .cmn_btn {
  flex-basis: 32%;
  margin: 1.5em 0 0;
  width: auto;
}
.jc_single_movie {
  margin-top: 20px;
}
.jc_single_movie a {
  display: block;
}
.junior_culture .cmn_tit_page {
  margin-bottom: 0;
}
.junior_culture .cmn_tit_page::after {
  background-color: #01a7bd;
}
.junior_culture .cmn_tit_horizon {
  border-bottom-color: #01a7bd;
}
.junior_culture .cmn_tit_horizon::after {
  background-color: #01a7bd;
}
.jc_interview_list dt:not(:first-child) {
  margin-top: 1.25em;
}
.jc_interview_list .special_title_num {
  color: #01a7bd;
  padding-bottom: 0.1em;
}
.jc_interview_list .special_title_num span {
  border-color: #01a7bd;
}
.jc_interview_list p {
  display: flex;
}
.jc_interview_teacher {
  background-color: #f2fbfc;
  margin-block: 2em 3em;
  padding: 1.5em;
}
.jc_interview_teacher .cmn_tit_normal {
  color: #01a7bd;
  margin-bottom: 0.25em;
  text-align: left;
}
/*===============================================
	中学校文化部特集：768px未満
===============================================*/
@media screen and (max-width:767px) {
  .jc_single_movie {
    margin-top: 15px;
  }
  .jc_interview_image p + p {
    margin-top: 10px;
  }
}
/* ---------------------------------------------------------

	38. 帰国生の方へ

--------------------------------------------------------- */
.returnee_transfer_text {
  margin-top: 20px;
}
.returnee_junior a {
  background: linear-gradient(to bottom, #0d99ac 0%, #01a7bd 100%);
}
.returnee_link_list {
  margin-top: 30px;
}
.returnee_link_item {
  margin-bottom: 20px;
}
.returnee_link_title {
  text-align: center;
  font-weight: bold;
  border-top: 1px solid #005aaa;
  padding-top: 10px;
}
.returnee_link_btn {
  max-width: inherit;
}
.returnee_link_pdf a {
  max-width: 400px;
  height: 56px;
  margin: 0 auto;
}
.qa_list {
  margin-bottom: 40px;
}
.qa_list_question {
  position: relative;
  font-size: 16px;
  font-weight: bold;
  color: #005aaa;
  background-color: #dfecfa;
  padding: 8px 0 8px 50px;
  line-height: 32px;
  margin-bottom: 12px;
}
.qa_list_question:before {
  position: absolute;
  left: 0;
  width: 32px;
  height: 32px;
  background: #003b83;
  color: #fff;
  content: 'Q';
  text-align: center;
  font-size: 24px;
  font-family: 'Cormorant Garamond', serif;
  line-height: 32px;
  margin-left: 8px;
}
.qa_list_answer {
  position: relative;
  padding: 8px 0 8px 50px;
  line-height: 32px;
}
.qa_list_answer:before {
  position: absolute;
  left: 0;
  width: 32px;
  height: 32px;
  background: #f57900;
  color: #fff;
  content: 'A';
  text-align: center;
  font-size: 24px;
  font-family: 'Cormorant Garamond', serif;
  line-height: 32px;
  margin-left: 8px;
}
.returnee-contact {
  text-align: center;
  background-color: #f5f5f5;
  max-width: 700px;
}
/*===============================================
	帰国生の方へ：768px以上
===============================================*/
@media screen and (min-width: 767px) {}
/*===============================================
	帰国生の方へ：768px未満
===============================================*/
@media screen and (max-width: 767px) {
  .qa_list_question {
    line-height: 26px;
  }
  .returnee_link_pdf a {
    height: 48px;
  }
}

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

	39. 追加

--------------------------------------------------------- */
.international_junior {
	color: #005aaa;
}
.international_junior span {
	border: 1px solid #005aaa;
}
.international_abroad_list_junior .cmn_list_circle li::before {
	color: #005aaa;
}
.border01 {
	border: 1px solid #ccc;
}
/*===============================================
	追加：768px以上
===============================================*/
@media screen and (min-width: 767px) {
	.inter-ddp_img p:first-child {
		width: 28%;
	}
	.inter-ddp_img p:nth-child(2) {
		width: 72%;
	}
}
/*===============================================
	追加：768px未満
===============================================*/
@media screen and (max-width: 767px) {
	.inter-ddp_img p:first-child {
		width: 60%;
		margin: 0 auto;
	}
}