@charset "utf-8";

/* ===============================================================
    汎用パーツ 削除
=============================================================== */
/* ===============================================================
    フォーム部品
=============================================================== */
/* =============================
    フォーム内HTML要素
============================= */
/*----- 一覧エリア -----*/
input[type="text"],
input[type="date"],
input[type="password"],
input[type="email"],
select,
textarea{
  border:solid 1px #cccccc;
  border-radius:4px;
  color:#1C1C1C;
  line-height: 1;
  padding:0;
  vertical-align:middle;
  font-size: 14px;
}
textarea{
  line-height: 1.4;
  padding-top:0;
}
/*input type file is not setting*/
input[disabled="disabled"],
select[disabled="disabled"],
textarea[disabled="disabled"]{
  -moz-appearance: none;
  appearance: none;
  background: #eeeeee;
  color: #878787;
  cursor: not-allowed;
}
/*ラジオボタン,チェックボックス*/
input[type="radio"],
input[type="checkbox"]{
  display: inline-block;
  vertical-align: middle;
  margin-right:4px;
  line-height: 1;
  font-size:14px;
}
label{
  display: inline-block;
  font-size: 14px;
  vertical-align:middle;
  line-height: 1;
}
select {
  text-align: left;
  -webkit-appearance: menulist-button;
  font-size: 14px;
}
.toggle_content input[type="radio"],
.toggle_content input[type="checkbox"] {
  line-height: 26px;
  margin-right:0px;
}
#gakumon-search ul.toggle_content li input {margin: 7px;}
#gakumon-search ul.toggle_content li label {line-height: 26px;}
/* =============================
    フォームサイズバリエーション
============================= */
.input-Sel,.input-sel {width: 200px;}
.input-SS,.input-ss {width: 100px;}
.input-S,.input-s {width: 300px;}
.input-SM,.input-sm {width: 300px;}
.input-SL,.input-sl {width: 400px;}
.input-M,.input-m {width: 500px;}
.input-L,.input-l {width: 800px;}
/* =============================
    フォームグループ
============================= */
/*通常フォームグループ*/
.form-group{
  margin:0;
  width: 100%;
  border: none;
  padding: 0;
}
/*clearfix*/
.form-group::after{
  display: block;
  content: "";
  clear: both;
}
.form-group input,
.form-group select,
.form-group textarea,
.form-group button,
.form-group li{
  display: inline-block;
  vertical-align: middle;
}
/*form-group直下のみ左フロート(firefox対策)*/
.form-group>input,
.form-group>select,
.form-group>textarea,
.form-group>button,
.form-group>label,
.form-group>span,
.form-group>ul{
  display:block;
  float: left;
}
.form-group select{padding:4px 0 4px 8px;}
/*フォーム分類用ラベル*/
.form-group legend{
  display:block;
  float: left;
  font-size: 14px;
  width: 5em;
  height: 1.4em;
  position: relative;
  margin: 2px 0px 0px;
  padding: 2px 0 2px 0px;
}
.form-group label{margin:0 1em 1em 0;}
.form-group .btn{margin:0 0 16px;}
.form-group .btn+.btn{margin-left:24px;}
.form-group .link-btn{
  margin:0 0 14px;
  line-height: 1;
  font-size: 14px;
  padding: 4px 2px;
}
.form-group + .form-group{margin-top:4px;}
/*常に横並びフォームグループ*/
.form-group-inline{display: inline-block;}
.form-group-inline input,
.form-group-inline select,
.form-group-inline textarea,
.form-group-inline button,
.form-group-inline label{
  display: inline-block;
  vertical-align: middle;
  margin-right: 4px;
}
.form-group-inline label{margin:8px 4px 4px 0;}
.form-group .form-group-labels{margin-left: 80px;}
/*フォーム項目に連動するラベル*/
.form-text-ellipsis,
.form-text{margin:0 4px 4px;}
/*ラベル以外のテキスト*/
.form-text{
  font-size: 14px;
  line-height: 1.6;
}
/*一定文字数以上は非表示されるフォーム内テキスト*/
.form-text-ellipsis{
  display: inline-block;
  font-size: 14px;
  line-height: 1;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 15em;
}
.search_sp {
  margin: 10px;
  height: 30px;
}
/* フォーム追記 */
.form-group select,
.toggle_content select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.toggle_content select,
.form-group select {
	width: 100%;
	padding: 8px 34px 8px 7px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #999;
	background: #eee;
	background: url(/sp/images/school/btn_arrow.png) right 50% no-repeat, -webkit-linear-gradient(top, #fff 0%,#efebe1 100%);
	background: url(/sp/images/school/btn_arrow.png) right 50% no-repeat, linear-gradient(to bottom, #fff 0%,#efebe1 100%);
	background-size: 28px, 100%;
  text-overflow:ellipsis;
  box-sizing:border-box;
  white-space:normal;
  line-height:1.2;
}
.toggle_content select:not(.toggle_content label select, .toggle_content div select),
.form-group select:not(.form-group label select, .form-group div select) {
  width: 94%;
  margin: 10px 10px 5px;
}
.toggle_content select option.tx-grey,
.form-group select option.tx-grey {
  color: #ccc !important;
}
input#koumei[type="text"] {
  margin: 10px;
  padding: 6px;
  width: 90%;
}
input#school_name_1[type="text"],
input#school_name_2[type="text"],
input#school_name_3[type="text"],
input#school_name_4[type="text"],
input#school_name_5[type="text"] {
  padding: 6px;
  width: 100%;
}
option:checked {background: #0091d5;}
ul.ul_table {margin: 0 auto;}
.t12-f00 {font-size: 12px;color: #ff0000;}
/* ===============================================================
    ボタン
=============================================================== */
/* =============================
    通常ボタン
============================= */
.btn:hover{
  box-shadow: 0px 6px 12px 0px rgba(130,130,130,0.6);
  transform: scale(1.1);
  -webkit-transform: scale(1.1);
}
.btn span{
  color: #fff;
  display: inline;
  line-height: 1;
  padding: 0 4px;
}
/* =============================
    通常ボタンバリエーション
============================= */
.btn-default{
	background: #dcdddd;
  border: 2px solid #cccccc;
}
.btn-default-simple{background: #4a4a4a;}
.btn-danger{background: red;}
/*リンク状ボタン*/
.link-btn{
  border: none;
  color: #0091d5;
  cursor: pointer;
  display: inline-block;
  font-size: 14px;
  line-height: 1;
  margin: 0;
  padding:0;
  position: relative;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  background: transparent;
}
.link-btn:hover{
  color: #0091d5;
  box-shadow: none;
  transform: none;
  font-weight: bold;
  text-decoration: underline;
}
.btn-result{
  font-size: 16px;
  padding: 18px 14px;
  width: 22em;
  background: #ff9900;
  color: #ffffff;
}
/* =============================
    ボタンサイズバリエーション
============================= */
.btn-lg{width: 20em;}
.btn-xl{width: 30em;font-size: 18px;}
.btn-sm{padding: 6px 12px;font-size: 12px;}
.btn-xs{padding:2px;font-size: 10px;}
.btn-sm-black{padding: 6px 12px;font-size: 12px;color: #000000;}
/* =============================
    ボタングループ
============================= */
/*複数ボタン横並び配置*/
.btn-group{margin: 0 auto 16px;text-align: center;}
.btn-group>.btn+.btn{margin-left: 18px;}
.btn-group-xs{margin: 0 auto;padding: 0;text-align: center;}
/* ===============================================================
    タイポグラフィ
=============================================================== */
/* =============================
    見出しグループ
============================= */
/*ラベル付き見出しグループ*/
.heading-group{
  width: 100%;
  margin-bottom: 16px;
}
.heading-group-label{
  background: #9dc3e6;
  font-size: 14px;
  text-align: center;
  width: 8em;
  border-radius: 4px;
  color: #fff;
  padding:2px 4px;
}
.heading-group-title{
  font-size: 21px;
  margin: 4px 0;
  border-left: 4px solid #2D77C2;
  font-weight: bold;
  line-height: 1.2;
  padding-left: 10px;
  margin-left: 10px;
}
.heading-group-title span {
  font-size: 10px;
}

.heading-group-title>small{
  font-size: 14px;
  color: #1c1c1c;
  display: inline;
}
#search_content .heading-group-title a {color:#2b6ba9;}
/* =============================
    戻るリンク
============================= */
.link-page-top{
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  border: 1px solid #0091d5;
  width: 7em;
  margin:1em 0 2em auto;
  border-radius: 4px;
}
.link-page-top>a{
  text-decoration: none;
  color: #0091d5;
  padding: 4px;
  width: 100%;
  display: inline-block;
}
.link-page-top>a:hover{
  background:  #0091d5;
  color: #fff;
}
/* =============================
    このページを印刷する
============================= */
.link-page-print{
  text-align: center;
  font-size: 12px;
  font-weight: bold;
  border: 1px solid #0091d5;
  width: 10em;
  margin:1em 0 1em auto;
  border-radius: 4px;
}
.link-page-print .fa{margin-right: 4px;}
.link-page-print>a{
  text-decoration: none;
  color: #0091d5;
  display: inline-block;
  padding: 4px;
  width: 120px;
}
.link-page-print>a:hover{
  background:  #0091d5;
  color: #fff;
  width: 120px;
}
.page-break {
  display:block;
  clear:both;
  page-break-after:always;
}
/* =============================
    リンクグループ
============================= */
.list-link-inline{
  display: inline-block;
  margin: 0 auto 14px;
  padding: 0;
}
.list-link-inline li{
  display: inline-block;
  color: #1c1c1c;
  font-weight: bold;
  margin: 0;
  padding:0;
}
.list-link-inline li+li::before{
  display: inline-block;
  content: "/";
  padding-right:2px;
}
.list-link-inline li a{
  display: inline-block;
  color: #0091d5;
  text-decoration: none;
  padding: 4px 2px;
}
.list-link-inline .isLinkActive{
  display: inline-block;
  color: #fff;
  background: #0091d5;
  text-decoration: none;
  padding: 4px;
}
/* ===============================================================
    アラート（エラーメッセージ）
=============================================================== */
/*アラートメッセージ*/
.alert{font-size: 14px;margin-bottom: 1em;}
.alert.alert-success{color: blue;}
.alert.alert-danger{color: red;}
.alert.is-alert-hidden,.alert.isAlertHidden{display: none;}
/* ===============================================================
    アイコン(font awesome)
=============================================================== */
.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/* =============================
    アイコンカラーバリエーション
============================= */
.fa-danger::before{color: #ff0000;}
.fa-orange::before{color: #F25000;}
.fa-darkorange::before{color: #E59D00;}
.fa-mikan::before{color: #F28000;}
.fa-yuzu::before{color: #E5BC00;}
.fa-tomato::before{color: #F02000;}
.fa-coral::before{color: #ff7f50;}
.fa-deeppink::before{color: #ff1493;}
.fa-magenta::before{color: #B70ADA;}
.fa-hotpink::before{color: #ED00D6;}
.fa-primary::before{color: #000080;}
.fa-secondary::before{color: #0000cd;}
.fa-dodgerblue::before{color: #0B95E7;}
.fa-vividblue::before{color: #0B46E7;}
.fa-strongblue::before{color: #390BDA;}
.fa-darkgreen::before{color: #46A609;}
.fa-seagreen::before{color: #2e8b57;}
.fa-springgreen::before{color: #00ff7f;}
.fa-lime::before{color: #00ff00;}
.fa-purered::before{color: #f00035;}
.fa-darkcyan::before{color: #04A86C;}
.fa-strongcyan::before{color: #05BFC2;}
#fa-small{font-size: 10px;}
/* =============================
    フローアイコン
============================= */
.flow-icon{
  position: relative;
  display:block;
  padding:16px;
  color: #000;
  text-decoration: none;
  margin: 16px auto;
  width: 50px;
  height: 60px;
}
.flow-icon::before,
.flow-icon::after{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
.flow-icon::before{
  left: 24px;
  box-sizing: border-box;
  width: 30px;
  height: 30px;
  border: 30px solid transparent;
  border-left: 30px solid #034bd2;
}
.flow-icon::after{
  left: 0;
  width: 30px;
  height: 26px;
  border-left: 30px solid #034bd2;
}
/* =============================
    フローアイコンカラーバリエーション
============================= */
.flow-icon-primary::before,
.flow-icon-primary::after{border-left-color: #034bd2;}
/* =============================
    フローアイコン方向バリエーション
============================= */
.flow-icon-down{transform: rotate(90deg);}
.flow-icon-right{transform: rotate(0deg);}
.flow-icon-top{transform: rotate(270deg);}
.flow-icon-left{transform: rotate(180deg);}
/* ===============================================================
    ページャー
=============================================================== */
/* =============================
    汎用ページャー
============================= */
.block_right {
  margin-bottom: 10px;
  text-align: right;
  width: 280px;
}
.block_right .pager_num li::after {
  content: "|";
  padding: 0 5px;
}
.block_right .pager_num li {
  display: inline-block;
  font-size: 14px;
}
.block_right .pager_num li:last-child::after {content: "";}
.block_right_wide {width: 100%;}
/* 入試情報 */
.l-contents {position: relative;}
.icon-quest {padding-left: 10px;margin-bottom:5px;}
.icon-quest span {
  letter-spacing: 0.04em;
  font-size: 1rem;
  padding:10px 2px; 
  margin-bottom:10px; 
}
.icon-quest a { color: #1c1c1c !important;}
.fa-question-circle-o:before {
  content: "\f059";
  font-size: 1.4rem;
  color: red;
}
.under-line { border-bottom: 1px solid #333;}
.bg-beige { background: #EAE9DB; font-size: 0.8rem; line-height: 1.4; margin:0 auto 20px auto;width: 94%;}
.bg-beige p {padding: 10px 10px;}
.radius10 { border-radius: 10px;}
.radius4 { border-radius: 4px;}
/* ===============================================================
    汎用カレンダー部品
=============================================================== */
/* =============================
    汎用カレンダータイトル
============================= */
.calendar-heading-group{
  display: table-cell;
  width: 100%;
  vertical-align: bottom;
}
.calendar-heading1{
  font-size: 24px;
  color: #1c1c1c;
  margin: 0px 0;
  font-weight: bold;
}
.calendar-heading2{
  font-size: 32px;
  color: #034bd2;
  margin: 4px 0;
}
/* =============================
    汎用カレンダー表
============================= */
/*カレンダー表*/
.calendar-grid{
  width: 100%;
  border: none;
  table-layout: fixed;
  border-collapse:collapse;
}
/*カレンダー月*/
.calendar-month{
  background: #00a0e9;
  color: #fff;
  text-align: center;
  height: 7em;
}
.calendar-month date{
  display: inline-block;
  font-size: 22px;
  vertical-align: baseline;
  margin-top: 12px;
  padding: 0 20px 0;
}
.calendar-month .date{
  display: inline-block;
  font-size: 22px;
  vertical-align: baseline;
  margin-top: 12px;
  padding: 0 20px 0;
}
.calendar-month em{
  font-size: 60px;
  font-style: normal;
  vertical-align: baseline;
  padding: 0 20px 0;
}
.calendar-month span{display: inline-block;}
.calendar-grid-week{color: #fff;}
.calendar-grid-week th{
  vertical-align: middle;
  text-align: center;
  font-size: 14px;
  padding:2px 1px 10px;
  width:14.28571428571429%;
}
.calendar-grid-week dl{
  background: #00a0e9;
  padding: 2px 0px 5px;
}
.calendar-grid-body{
  color: #1b1b1b;
  font-size: 14px;
}
.calendar-grid-body>tr:nth-of-type(even){background: rgba(239,239,239,0.7);}
.calendar-grid-body td,
.calendar-grid-body td:empty{
  vertical-align: top;
  text-align: left;
  font-size: 12px;
  padding:4px 4px 10px;
  border: 1px solid #00a0e9;
  height: 14em;
  width:14.28571428571429%;
}
/*カレンダー予定*/
.calendar-grid-body dl{
  display: block;
  margin: 0;
  padding: 0;
  width:100%;
  font-size: 14px;
  line-height: 1.2;
  overflow-y: hidden;
}
/*カレンダー予定日付*/
.calendar-grid-body dt{
  display: block;
  padding: 0;
  margin: 5px 0px;
  position: relative;
  color: #00a0e9;
  font-size:16px;
  font-weight: bold;
}
.calendar-grid-body dt small{
  font-size: .8em;
  margin-left:8px;
}
/*カレンダー予定内容*/
.calendar-grid-body dd>a{
  color: inherit;
  text-decoration: none;
}
.calendar-grid-body dd>a:hover{
  color: #0091d5;
  font-weight: bold;
  text-decoration: underline;
}
.calendar-grid-body dd:not(:empty){
  display: block;
  padding: 0;
  margin: 5px 0px;
  line-height: 1.4;
  font-size:11px;
  height: 1.4em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.calendar-grid-body dd date:not(:empty){
  display: inline-block;
  margin-right:4px;
  font-size:10px;
  color: #034bd2;
}
.calendar-grid-body dd .date:not(:empty){
  display: inline-block;
  margin-right:4px;
  font-size:10px;
  color: #034bd2;
}
.calendar-grid-body dd small:not(:empty){
  display: inline-block;
  margin-left:4px;
  font-size:10px;
  color: #034bd2;
}
/*カレンダー曜日別設定*/
/*週の土曜日*/
.isCalendarSaturday{background: #cee;}
/*週の日曜/祝日*/
.isCalendarSunday,.isCalendarHoliday{background: lightpink;}
/*当日*/
.isCalendarToday{background: lightgreen;}
/* ===============================================================
    ガントチャート
=============================================================== */
/* =============================
    汎用ガントチャート
============================= */
/*ガントチャート月*/
.gantt-chart-month{
  text-align: center;
  table-layout: fixed;
  position: relative;
}
.gantt-chart-month date{
  padding: 4px;
  font-size: 16px;
}
.gantt-chart-month .date{
  padding: 4px;
  font-size: 14px;
}
.gantt-chart-month em{
  font-size: 2.0em;
  font-weight: bold;
}
.gantt-chart-month a{
  display: inline-block;
  color: #8fc5e1;
}
.gantt-chart-pager-prev{
  display: block;
  position: absolute;
  font-size: 34px;
  top:6px;
  left: 24%;
  padding: 4px 8px;
  border-radius: 100px;
  text-align: center;
}
.gantt-chart-pager-next{
  display: block;
  position: absolute;
  font-size: 34px;
  top:6px;
  right: 24%;
  padding: 4px 8px;
  border-radius: 100px;
  text-align: center;
}
/*ガントチャート大分類*/
.exam-schedule-body {margin:0 5px;}
.gantt-chart-list{
  display: block;
  width: 100%;
  list-style: none;
  margin: 0;
  padding: 0;
}
.gantt-chart-list-row{
  display: block;
  width: 100%;
  list-style: none;
  margin: 0;
  padding: 0;
}
/*ガントチャート表*/
.gantt-chart-grid{
  width: 100%;
  margin:0 auto;
  border: none;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
}
.exam-schedule-block {width: 100%;}
/* ▼スケジュール表の見方 */
.info-icon { font-size: 12px; margin: 0 12px;}
.icon-list { overflow: hidden; margin: 5px 6px; }
.icon-list li { float: left; margin-right: 0px; padding: 2px 10px 2px 0; vertical-align:middle;}
.icon-list li:before { content: ""; background: url(../images/icon-entry.png) no-repeat left top; display:inline-block; height:14px; width: 20px;
background-size:contain; vertical-align:middle; padding: 5px 0px; margin: 0 2px 0 0;}
.icon-list li:nth-of-type(2):before { content: ""; background: url(../images/icon-entryend.png) no-repeat left top; display:inline-block; height:14px; width: 20px;
background-size:contain; vertical-align:middle; padding: 5px 0px; margin: 0 2px 0 0;}
.icon-list li:nth-of-type(3):before { content: "";  background: url(../images/icon-ex.png) no-repeat left top; display:inline-block; height:14px; width: 20px;
background-size:contain; vertical-align:middle; padding: 5px 0px; margin: 0 2px 0 0;}
.icon-list li:nth-of-type(4):before { content: "";  background: url(../images/icon-sakura.png) no-repeat left top; display:inline-block; height:14px; width: 20px;
background-size:contain; vertical-align:middle; padding: 5px 0px; margin: 0 2px 0 0;}
.icon-list li:nth-of-type(5):before { content: "";  background: url(../images/icon-deadline.png) no-repeat left top; display:inline-block; height:14px; width: 20px;
background-size:contain; vertical-align:middle; padding: 5px 0px; margin: 0 2px 0 0;}
.icon-list li:nth-of-type(6):before { content: "";  background: url(../images/icon-deadline2.png) no-repeat left top; display:inline-block; height:14px; width: 20px;
background-size:contain; vertical-align:middle; padding: 5px 0px; margin: 0 2px 0 0;}
/*空要素の罫線を消去して結合しているように見せる*/
/*列の結合*/
.gantt-chart-grid .colspan-cell{border-right:none;}
.gantt-chart-grid .colspan-cell:empty{
  border-left:none;
  border-right:none;
}
/*行の結合*/
.gantt-chart-grid .rowspan-cell{border-bottom:none;}
.gantt-chart-grid .rowspan-cell:empty{
  border-top:none;
  border-bottom:none;
}
/*ガントチャート行見出し*/
.gantt-chart-head{
  background: transparent;
  color: #1c1c1c;
}
.gantt-chart-head th{
  vertical-align: middle;
  text-align: center;
  font-size: 10px;
  padding: 0;
  border: 1px solid #999999;
  font-weight: normal;
}
/*ガントチャート行見出し日付部分*/
.gantt-chart-head th date{
  border-bottom: 1px solid #999999;
  display: block;
  font-size: 8px;
}
.gantt-chart-head th .date{
  border-bottom: 1px solid #999999;
  display: block;
  font-size: 8px;
}
/*ガントチャート行見出し列幅調整*/
.gantt-chart-head th {
  padding: 5px 0px;
  text-align: center;
  width: 17%;
}
.gantt-chart-head th:first-of-type{width: 15%;}
/*ガントチャート曜日色*/
.col-week-head {background: transparent;}
/*週の日曜/祝日*/
.iscolSunday,.isColHoliday{background: #ffcccc;}
/*週の土曜日*/
.isColSaturday{background: #cee;}
/*当日*/
.isColToday{background: lightgreen;}
/*ガントチャート本体部分*/
.gantt-chart-body{
  color: #1c1c1c;
  font-size: 10px;
  border:none;
}
/*ガントチャート列見出し*/
.gantt-chart-body th{
  text-align: center;
  padding: 4px 0px;
  word-wrap: break-word;
  border: 1px solid #999999;
  font-weight: normal;
}
.gantt-chart-body th>span,
.gantt-chart-body th>small{
  display: inline-block;
  margin: 4px 2px;
}
.gantt-chart-body th:first-of-type { width: 30px;}
.gantt-chart-body th:nth-of-type(2) { width: 25px; }
#exam-schedule-table th>small{
  display: inline-block;
  margin: 4px 4px;
}
.gantt-chart-body th>.btn{
  padding: 4px 2px;
  margin: 6px auto;
  font-weight: normal;
  word-break: break-all;
}
/*ガントチャートデータ列*/
.gantt-chart-body td,
.gantt-chart-body td:empty{
  vertical-align: middle;
  text-align: center;
  border: 1px solid #999999;
  word-wrap: break-word;
  overflow-wrap: break-word;
  height:22px;
  width:17%;
  padding:0;
}
.gantt-chart-grid .gantt-chart-body td.date {width:10% !important;}
.gantt-chart-grid .gantt-chart-body td:nth-of-type(2) {width:5% !important;}
.gantt-chart-grid .gantt-chart-body tr:first-of-type td {border-top:none;}
.gantt-chart-body td img {
  height: 100%;
  vertical-align: middle;
}
.arrow-b {text-decoration: none;}
.gantt-chart-body td p.arrow-b {
  position: relative;
  display: inline-block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #f26832;
  border-right: 2px solid #f26832;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  text-indent: -9999px;
  text-align: center;
  margin-top: 3px;
}
/*ガントチャートデータ内容*/
/*ガントチャートデータ矢印*/
.gantt-chart-body td>.fa{
  font-size: 16px;
  font-weight: bold;
  color: #FF6600;
}
/*ガントチャートイベント*/
.gantt-chart-body td>span{
  color: #fff;
  display: inline-block;
  margin: 4px auto;
  padding: 4px 4px;
  font-size: 10px;
}
/*ガントチャートイベント1*/
.gantt-event-primary{background: #0091d5;}
/*ガントチャートイベント2*/
.gantt-event-secondary{background: #00ac97;}
/*ガントチャートイベント3*/
.gantt-event-success{background: #FF6600;}
/*ガントチャートイベント4*/
.gantt-event-4{background: #FACC2E;}
/*ガントチャートイベント5*/
.gantt-event-5{background: #FE2E64;}
/*ガントチャートイベント6*/
.gantt-event-6{background: #81F781;}
/*ガントチャート曜日別設定*/
/*週の土曜日*/
.isCalendarSaturday{background: #cee;}
/*週の日曜/祝日*/
.isCalendarSunday,.isCalendarHoliday{background: #f7d2b2;}
/*当日*/
.isCalendarToday{background: lightgreen;}
/* 願書請求ボタン */
a.btn-request {
  border-radius: 4px;
  cursor: pointer;
  display: inline-block ;
  font-size: 11px;
  line-height: 1.2;
  overflow: hidden;
  padding: 6px 2px;
  position: relative;
  transition: all .1s ease-in;
  -webkit-transition: all .1s ease-in;
  text-align: center;
  text-decoration: none;
  background: #ff9900;
  color: #ffffff;
  font-weight: normal;
  margin:0 3px;
}
a.btn-request:hover{
  box-shadow: 0px 2px 4px 0px rgba(130,130,130,0.4);
  transform: scale(1.1);
  -webkit-transform: scale(1.1);
  color: #ffffff;
}
/* 検索結果、固定ヘッダーとの調整 */
#resultop {
  margin-top:-20px;
  padding-top:20px;
}
/* ===============================================================
    モーダルウィンドウ
=============================================================== */
/* =============================
    汎用モーダルウィンドウ
============================= */
/*---- モーダルウィンドウエリア（ページ全体） ----*/
.modal-layout{
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: fixed;
  display: none;
  padding:10px;
}
  /*モーダルウィンドウ背景*/
.modal-overlay {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  background: #000;
  opacity: 0.5;
  z-index: 5;
}
.modal-overlay>.close-overlay {
  width: 100%;
  height: 100%;
  display: block;
  cursor: pointer;
  text-decoration: none;
  opacity: 0;
}
/*モーダルウィンドウ枠*/
.modal-window{
  display: block;
  background: #fff;
  position: absolute;
  z-index: 10;
  padding: 10px;
}
  /*モーダルウィンドウ基本設定*/
.modal-window-default{
  top: 30%;
  left: 50%;
  margin: -150px 0 0 -300px;
  width: 580px;
  height: 410px;
  border: 5px solid #2D77C2;
  font-size: 12px;
}
/*モーダルウィンドウ基本設定(エラーメッセージ)*/
.modal-window-errmsg{
  top: 50%;
  left: 50%;
  margin: -150px 0 0 -300px;
  width: 580px;
  height: 100px;
  border: 5px solid #2D77C2;
  font-size: 12px;
}
  /*モーダルウィンドウヘッダー枠*/
.modal-window-header{width: 100%;}
.modal-close-btn {
  width: 100%;
  text-align: right;
}
.modal-close-btn a{
  text-decoration: none;
  font-weight: normal;
  margin: 0 auto 0 0;
  font-size: 0.8em;
}
.modal-close-btn a:hover{opacity: .7;}
.modal-close-btn .fa{
  border:1px solid #2D77Cc;
  margin-right: 5px;
  color: #2d77cc;
  padding-left: 1px;
  font-style: normal;
}
/*モーダルウィンドウ内コンテンツ*/
.modal-contents{
  width: 100%;
  margin: 0 auto;
}
.modal-contents-errmsg{
  width: 100%;
  margin: 0 auto;
  color: red;
}
.modal-contents-header{
  width: 100%;
  margin: 0 auto;
}
.modal-contents-row {
  border-bottom: #2D77C2 solid 1px;
  margin-top: 4px;
}
.modal-contents label{
  font-size: 12px;
  margin: 8px 4px;
}
.modal-contents .label-heading {width:7em;}
.modal-window .search_btn {
  text-align: center;
  margin-top: 10px;
}
.modal-window button{
  text-align: center;
  margin: 5px 250px;
  border: 1px solid #ccc;
  border-radius: 2px;
  background: linear-gradient(to bottom, #fff 0%, #eee 100%);
  background: -webkit-linear-gradient(top, #fff 0%, #eee 100%);
  padding: 3px 8px;
}
/* 既存 */
#open01 {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none;
  position: fixed;
  padding:10px;
  font-size: 12px;
}
#open01 .modal_close_btn {
  text-align: right;
  margin-bottom: 10px;
  font-size: 0.8em;
}
#open01 .modal_close_btn .close_icon {
  border:1px solid #2D77Cc;
  margin-right: 5px;
  color: #2d77cc;
  padding-left: 1px;
}
#open01 .close_overlay {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  text-indent: -9999px;
  position: absolute;
  background: #000;
  opacity: 0.5;
  z-index: 5;
}
#open01 .area2 {
  border-bottom: #2D77C2 solid 1px;
  margin-top: 10px;
  padding-bottom:10px;
}
#open01 .modal_window {
  top: 30%;
  left: 50%;
  margin: -150px 0 0 -300px;
  width: 580px;
  height: 410px;
  display: block;
  background: #fff;
  position: absolute;
  z-index: 10;
  padding: 10px;
  border: 5px solid #2D77C2;
}
#open01 .area2 .rightmgn3 {margin-right:4em;}
#open01 .area2 .rightmgn2 {margin-right:2.9em;}
/* IE11 */
*::-ms-backdrop, #open01 .area2 .rightmgn2 {margin-right:2.8em;}
#open01 .area2 .rightmgn1 {margin-right:1.1em;}
/* IE11 */
*::-ms-backdrop, #open01 .area2 .rightmgn1 {margin-right:1.0em;}
#open01 .search_btn {
  text-align: center;
  margin-top: 10px;
}
#modal label:before{content:" ";}
#open01 .modal_window button{
  text-align: center;
  margin: 5px 250px;
  border: 1px solid #ccc;
  border-radius: 2px;
  background: linear-gradient(to bottom, #fff 0%, #eee 100%);
  background: -webkit-linear-gradient(top, #fff 0%, #eee 100%);
}
#bikouDetail{word-wrap: break-word;}
#bikouText{word-break: break-all;}
.modal-window-overflow{
  overflow-y: scroll;
  height: 600px;
}
/* CSS3 ModalWindow SET
-------------------------- */
@-webkit-keyframes modalFadeIn {
  0% {opacity:0;display:block;}
100% {opacity:1;}
}
div#modal div:target {
  -webkit-animation-name: modalFadeIn;
  -webkit-animation-duration: 1s;
  -webkit-animation-iteration-count: 1;
  opacity: 1;
  display:block;
}
/* ===============================================================
    汎用バナーブロック
=============================================================== */
.banner-block-horizontal{list-style: none;}
.banner-block-horizontal>li{display: inline-block;}
#oc-calendar-applist img{
  text-align: right;
  width: 500px;
}
#oc-calendar-applist{text-align: right;}
#oc-calendar-logo{text-align: center;}
#oc-calendar-legend{
  text-align: right;
  margin-bottom: 4px;
}
/* ===============================================================
    汎用ブロックレイアウト
=============================================================== */
/* =============================
    検索フォームレイアウト
============================= */
/*検索フォームレイアウト全体*/
.list-search-block{
  width: 100%;
  display: block;
  margin: 16px 0 0px 0;
}
/*検索フォームヘッダー*/
.list-search-header{
  width: 100%;
  margin: 16px 0;
}
.list-search-body{
  width: 100%;
  margin: 16px 0;
}
/*検索フォームフッター*/
.list-search-footer{
  width: 100%;
  margin: 0px 0;
}
/* =============================
    検索フォーム機能
============================= */
/*検索フォーム表*/
.list-search-table{
  width: 100%;
  border: none;
  table-layout: auto;
  border-collapse:collapse;
}
.list-search-table caption p {margin-bottom:5px;}
/*検索フォーム表を複数並べた場合上罫線を消す*/
.list-search-table+.list-search-table>thead th{border-top: none;}
.list-search-table>thead{
  background: #2d77c2;
  color: #fff;
}
.list-search-table>thead th{
  vertical-align: middle;
  text-align: left;
  font-size: 16px;
  padding:4px 16px 8px;
  border: 1px solid #1c1c1c;
  font-weight: normal;
}
.list-search-table>tbody{
  color: #1c1c1c;
  font-size: 15px;
}
.list-search-table>tbody th{
  vertical-align: top;
  text-align: left;
  padding:8px 14px 8px;
  border: 1px solid #1c1c1c;
}
.list-search-table>tbody td{
  vertical-align: top;
  text-align: left;
  padding:8px 24px 8px;
  border: 1px solid #1c1c1c;
}
.list-search-table td.point-y .form-group legend {
  background: #FFE100;
  padding: 2px 5px;
  margin-right:3px;
  height: 1.6em;
}
/* =============================
    検索結果レイアウト
============================= */
/*検索結果注釈*/
.list-result-caption{
  width: 100%;
  margin:0;
  padding: 0 8px;
}
/*検索結果凡例リスト*/
.list-result-caption-group{
  width: 100%;
  text-align: left;
  font-size: 14px;
  line-height: 28px;
}
.list-result-caption-group::after{
  display: block;
  content: "";
  clear: both;
}
.list-result-caption-group>dt{
  display: block;
  width: 5em;
  padding: 0;
  margin: 0;
  float: left;
  font-weight: bold;
}
.list-result-caption-group>dd{
  display: block;
  padding: 0;
  margin: 0 5px;
  font-weight: bold;
  float: left;
}
/*検索結果凡例アイコン*/
.list-result-caption-group .fa{
  display:inline-block;
  font-size: 24px;
  margin:0 4px 4px 0;
  vertical-align: middle;
}
/*検索結果レイアウトブロック*/
.list-result{
  margin:0 10px 20px;
  padding: 0;
}
/*検索結果レイアウトブロック枠線あり*/
.list-result-border{
  border: 1px solid #2d77c2;
  border-radius: 4px;
}
/*検索結果ヘッダー*/
.list-result-header{
  display: table;
  width: 95%;
  table-layout: fixed;
  margin: 8px 0;
}
.list-result-header>.heading-group{
  display: table-cell;
  vertical-align: bottom;
}
.list-result-header>.btn-group{
  display: table-cell;
  text-align: right;
  vertical-align: bottom;
  width: 50%;
}
/*検索結果中心レイアウト*/
.list-result-body{
  width: 100%;
  margin:8px 0 16px;
}
/*検索結果フッターレイアウト*/
.list-result-footer{display: none;}
.list-result-caption-group-s{font-size: 11px;}
/* =============================
    検索結果機能
============================= */
.theme_blue {
  background: #7acae6;
  padding: 6px;
  margin: 5px 0;
  text-align: center;
  font-size: 14px;
  line-height: 1.2;
  font-weight: bold;
}
.theme_blue2 {
  cursor: pointer;
  text-decoration: none;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #2d78b4), color-stop(0.65, #679dcb));
  background: -webkit-linear-gradient(top, #679dcb 65%, #2d78b4 100%);
  font-size: 15px;
  color: #fff;
  font-size: 15px;
  padding: 4px 8px;
  background: #4b91d6;
}
.theme_blue_sub {
  padding: 5px 6px;
  border-bottom: 1px solid #2f9dd0;
  border-top: none;
  background: #e3f0f7;
  font-size: 12px;
  font-weight: bold;
}
/*検索結果表*/
.list-result-table{
  width: 100% !important;
  border: none;
  border-collapse: collapse;
  border-spacing: 0;
}
.list-result-table>thead{background: #e3f0f7;}
.list-result-table>thead th{
  vertical-align: middle;
  font-size: 12px;
  padding:5px 8px 2px;
}
.list-result-table>tbody{
  color: #1c1c1c;
  font-size: 11px;
}
.list-result-table>tbody th{
  text-align: left;
  font-size: 11px;
  padding:8px 8px 4px;
  background: #e3f0f7;
	border-right: 1px solid #2f9dd0;
}
.list-result-table>tbody td{
  vertical-align: middle;
  text-align: left;
  font-size: 11px;
  padding:6px 6px 3px;
  word-wrap: break-word;
}
.list-result-table>tbody th.n-subject { 
  width: 10% !important;
  background: #eee;
  padding: 3px 2px;
  vertical-align: middle;
  text-align: center;
  font-size:11px;
}
/* 日付 */
.table-date {
  table-layout: fixed;
  border-top: 1px solid #2f9dd0;
  border-collapse: collapse;
  border-spacing: 0;
}
.table-date>thead th {
  font-size: 11px;
  background: #67b4e2;
  color: #fff;
  padding:4px 0px;
  text-align: center;
  border-bottom: 1px solid #2f9dd0;
	border-right: 1px solid #2f9dd0;
}
.table-date>tbody td {
  text-align: center;
  padding:4px 0px;
  border-bottom: 1px solid #2f9dd0;
	border-right: 1px solid #2f9dd0;
}
.table-date>thead th:first-of-type { width : 20%;}
.table-date>thead th:nth-of-type(2) { width : 20%;}
.table-date>thead th:nth-of-type(3) { width : 20%;}
.table-date>thead th:nth-of-type(4) { width : 20%;}
.table-date>thead th:nth-of-type(5) { width : 20%; border-right:none;}
.table-date>tbody td:nth-of-type(5) { border-right:none;}
/* ボタンエリア */
.box-boder-blue {border-top: none;padding: 20px 10px 0;}
/* 試験日の余白 */
.list-result-table td:nth-of-type(7) p {margin-top:10px;}
.list-result-table td:nth-of-type(7) p:first-of-type {margin-top:0px;}
/*受験科目リスト*/
.list-result-item-inline{
  display: table;
  margin: 5px 0px 5px 0px;
  width:100%;
  line-height: 1.2;
}
.list-result-item-inline dt{
  display: table-cell;
  padding: 0;
  width:7.6em;
  position: relative;
}
.list-result-item-inline dt.w5em{width:5em;}
.list-result-item-inline dt::after{
  display: inline-block;
  position: absolute;
  right: 4px;
  content: ":";
  font-size: 12px;
}
.list-result-item-inline dt>.fa{
  margin-right: 4px;
  font-size: 20px;
}
.list-result-item-inline dd{
  display: table-cell;
  line-height: 1.4;
  word-break:break-all;
}
.list-result-item-set{
  line-height: 1.4;
  word-break:break-all;
  margin: 5px 0px 5px 0px;
}
#annotation{width:2.5em;}
#annotation::after{content: "";}
#kamokusu1{
  width:3em;
  vertical-align: middle;
}
/*注釈*/
.list-annotation {margin-top: 1em;}
.list-annotation dl {
  margin: 5px 0px 5px 0px;
  width:100%;
  font-size: 10px;
  line-height: 1.3;
}
.list-annotation dt{
  display: table-cell;
  padding: 0;
  width:2.5em;
  position: relative;
}
.list-annotation dd{
  display: table-cell;
  word-break:break-all;
}
#kamokusu1{
  width:3em;
  vertical-align: middle;
}
/* ===============================================================
    受験コンシェルジュ専用
=============================================================== */
/*受験コンシェルジュ内コンテンツでのみ使用*/
.theme-concierge{
  width: 100%;
  margin: 0 auto;
}
/*最新のフォント設定と幅の計算方法をまとめて設定*/
.theme-concierge *{
  /*ボーダー・余白をwidthに含む*/
  box-sizing: border-box;
  font-family:"Meiryo UI" , "メイリオ" , Meiryo , Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" ,  "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
}
/*上記設定でfont-awesomeアイコンフォントのフォントファミリーが上書きされるため、再設定*/
.theme-concierge .fa{
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.guide-i {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.fa-chevron-left {transform: rotate(-30deg);}
.fa-chevron-left:before{content:"▼";}
.fa-chevron-right {transform: rotate(30deg);}
.fa-chevron-right:before{content:"▼";}
/*受験コンシェルジュヘッダー*/
.concierge-header{
  width: 100%;
  margin: 0;
}
/*コンシェルジュページ見出し */
/* .concierge-header h1, */
.concierge-header h2 {
  font-size: 19px;
  font-weight: bold;
  color: #0091d5;
  border-bottom: 1px solid #0091d5;
  margin: 5px 10px;
  line-height: 28px;
}
#nyushi_19p_list .concierge-header h2 {
  font-size: 20px;
  font-weight: bold;
  color: #0091d5;
  border-bottom: 1px solid #0091d5;
  margin: 0;
  padding: 0px;
  border-left: none;
}
.concierge-header small{
  font-size: 16px;
  margin-left: 8px;
}
/*clearfix*/
.concierge-header::after{
  display: block;
  content: "";
  clear: both;
}
.theme_yell {
  border-left: 5px solid #f4db26;
  padding-left: 6px;
  margin: 6px 5px;
  font-size: 14px;
}
.concierge-header h2.bg_js88_search {
  border: 1px solid #2d78b4;
  cursor: pointer;
  text-decoration: none;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #2d78b4), color-stop(0.65, #679dcb));
  background: -webkit-linear-gradient(top, #679dcb 65%, #2d78b4 100%);
  font-size: 15px;
  color: #FFFFFF;
  margin:0;
  padding: 5px;
}
/*受験コンシェルジュフッター*/
.concierge-footer{
  width: 100%;
  margin:14px 0 10px;
}
/*clearfix*/
.concierge-footer::after{
  display: block;
  content: "";
  clear: both;
}
/* ===============================================================
    トップメニュー
=============================================================== */
#concierge-menu {
  overflow:hidden;
  margin:14px auto 20px;
  width:94%;
  display:table;
}    
#concierge-menu li {
  position:relative;
  width:100%;
  padding: 10px 10px 10px 10px ;
  border-radius:6px;
  display:block;
  border:solid 1px #0091d5;
  background-color:#eaf8ff;
  margin-bottom:14px;
  overflow:hidden;
  list-style:none;
  line-height:1.5;
}
.conciergeText h3 { 
  font-size:15px;
  color:#333;
  font-weight:normal;
  margin-bottom:5px;
  border-bottom:1px solid #0091d5;
  padding-bottom:5px;
  padding-left:5px;
}
.conc-no {color:#0091d5; font-size:16px; margin-right:5px;font-weight:bold;}
.conciergeText p {padding:5px;font-size:12px;}
#concierge-menu li a {
  font-size:14px;
  display: block;
  padding:6px 10px;
  border-radius:8px;
  margin: 2px auto 5px;
  background:#ffa035;
  color:#fff;
  width:86%;
  box-shadow: 0px 3px 3px 0px rgba(130,130,130,0.3);
  -webkit-box-shadow: 0px 3px 3px 0px rgba(130,130,130,0.3);
  -moz-box-shadow: 0px 3px 3px 0px rgba(130,130,130,0.3);
  border:1px solid #fff;
  text-decoration:none;
  font-weight:bold;
}
#concierge-menu li a:hover {
  background-color:#0091d5;
  background: -moz-linear-gradient(#2d77c2, #0091d5);
  background: -webkit-gradient(linear, left top, left bottom, from(#2d77c2), to(#0091d5));
  /* IE10+ */
  background: -moz-linear-gradient(top, #2d77c2, #0091d5);
  /* IE8-9 */
  background: -ms-linear-gradient(top, #2d77c2, #0091d5);
  color:#fff;
  text-decoration:none;
}   
.fa-arrow:before {
  content: "\f144";
  content: "\f0a9";
  font-size: 16px;
}
#concierge-menu li .fa {
  margin-right: 5px;
  font-size:16px;
}
/* =============================
    OCカレンダーレイアウト
============================= */
/* =============================
    入試日程・合格発表一覧レイアウト
============================= */
#nyushi_19p_list .theme-concierge .school_search_list {
  background: #fff none repeat scroll 0 0;
  display: none;
  margin: 0 12px;
  padding: 0;
  position: absolute;
  width: 182px;
  z-index: 1;
}
#nyushi_19p_list .theme-concierge .school_search_list ul {
  border: 1px solid #aaa;
  list-style-type: none;
  margin: 0;
  max-height: 140px;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0;
  width: 100%;
}
#nyushi_19p_list .theme-concierge .school_search_list ul li {
  width: 100%;
  padding: 5px 8px;
  font-size: 14px;
}
#nyushi_19p_list .theme-concierge .school_search_list ul li:after {content: "";}
#nyushi_19p_list .theme-concierge .school_search_list ul li.Scl-selected {
  background:#3399ff;
  color:#fff;
}
#nyushi_19p_list h2 {
  font-size: 16px;
  color: #fff;
  padding: 5px 10px;
  margin: 0px;
  border: none;
}
#gakumon-search .context {padding: 4px 0 0 10px;}
/* =============================
    科目選択と偏差値検索レイアウト
============================= */
#nittei {font-size: 12px;}
/*請求用CSS*/
.delrequest_cart {
  color: black;
  cursor: pointer;
  font-size: 10px;
  font-weight: normal;
  text-align: right;
}
/* プレビュー用 */
#prevGakumon , #prevKaijou{margin-bottom: 10px;}
#prevGakumon ul li , #prevKaijou ul li{
  display: inline-block;
  width: 140px;
  margin-bottom: 5px;
  margin-right: 5px;
  vertical-align:top;
  word-break: break-all;
}
#prevKaijou ul li.pre_chk::before{
  content: "■";
  display: inline;
  float: left;
}
#prevKaijou ul li.pre_nochk::before{
  content: "□";
  display: inline;
  float: left;
}
#prevConInfo{margin-bottom: 10px;}
/* ===============================================================
    ユーティリティクラス
=============================================================== */
/*強制text-align*/
.txtL{text-align: left !important;}
.txtC{text-align: center !important;}
.txtR{text-align: right !important;}
/*強制フロート解除*/
.clearfix::after{
  display: block;
  content: "";
  clear: both;
}
.line-height-reset {line-height: normal !important;}
.list-search-table th{font-weight:normal;}
/* ===============================================================
    科目選択と偏差値検索
=============================================================== */
.vt-m { vertical-align:middle;}
.form-group .fromsp { line-height:2;margin:0 10px 10px;}
.gyou01 { margin-top: 1em;}
.pl-1em { padding-left: 1em;}
.posi50 {top:50%; height:100px;}
/* モーダル用 */
.modal-contents .form-group label{
  font-size: 14px;
  margin: 5px 2px;
}
/* ===============================================================
    入試日程・合格発表検索
=============================================================== */
.ex-icon { margin: 7px 10px; font-size: 12px;}
.ex-icon li:before{content:"■"; font-size: 18px; margin-right:1px; line-height: 1.2;}
.ex-icon li:first-of-type:before { color: #d2291b;}
.ex-icon li:nth-of-type(2):before { color: #c273ad;}
.ex-icon li:nth-of-type(3):before { color: #ee7c19;}
.ex-icon li:nth-of-type(4):before { color: #8dc323;}
.ex-icon li:nth-of-type(5):before { color: #6bc2ed;}
.gantt-chart-head th:before{content:"■"; font-size: 12px;}
.gantt-chart-head th:first-of-type:before {display: none;} 
.gantt-chart-head th:nth-of-type(2):before { color: #d2291b;}
.gantt-chart-head th:nth-of-type(3):before { color: #c273ad;}
.gantt-chart-head th:nth-of-type(4):before { color: #ee7c19;}
.gantt-chart-head th:nth-of-type(5):before { color: #8dc323;}
.gantt-chart-head th:nth-of-type(6):before { color: #6bc2ed;}
.display-no { display: none;}
.btn-detail {
  color: #fff;
  background: orangered;
  padding: 3px 6px;
  font-size: 10px;
  border-radius: 3px;
  margin-left:2px; 
  cursor:pointer;
}
.btn-detail:before {
  content: "▲";
  margin-right:1px;
  margin-bottom:2px;
}  
.btn-detail-close {
  color: #fff;
  background: orangered;
  padding: 3px 6px;
  font-size: 10px;
  border-radius: 3px;
  margin-left:2px; 
  cursor:pointer;
}
.btn-detail-close:before {
  content: "▼";
  margin-right:1px;
  margin-bottom:2px;
}
.info-detail {
  overflow: hidden;
  margin: 6px 10px 6px 10px;
  word-wrap: break-word;
}
.info-detail dt {
  width: 100%;
  margin-bottom: 2px;
}
.info-detail dt:before{content: "■ ";}
.info-detail dd {margin-bottom: 4px;}
.school_choice input{
  height:29px;
  padding: 2px 0 2px 8px;
}
.school_choice th{font-weight: normal;}
.exam-schedule-header{margin-bottom: 5px;}
.school_choice .form-group legend{font-size: 16px;}
.school_choice .form-group legend::after{
  content: "";
  display: block;
  right: 4px;
  position: absolute;
  top: 0;
}
.school_choice .input-S{width: 180px;}
/* 科目選択と偏差値検索用・センター結果で、今から願書の出せる大学を選ぶ */
.school_choice .input-M{width: 300px;}
.w40 { width: 40px !important;}
/* ===============================================================
    共通追加
=============================================================== */
.f10 { font-size:10px;}
.f12 { font-size:12px;}
.f14 { font-size:14px;}
.f-bold { font-weight:bold;}
.mt0 { margin-top: 0px !important;}
.mt-40 { margin-top: -40px !important;}
.w20p { width: 20% !important;}
.w40p { width: 40% !important;}
.w80p { width: 80% !important;}
.btn_back_top a:before {left: 37px;}
#pageTop {
  position: fixed;
  bottom: 20px;
  right: 10px;
}
.btn_back_top a:after {left: 41px;}
#pageTop a {
  display: block;
  z-index: 999;
  padding: 8px 0 0 8px;
  width: 38px;
  height: 38px;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
}
.btn_back_top {
  display:none;
  height:18px;
}
#pageTop a:hover {
  text-decoration: none;
  opacity: 0.8;
}
/* ===============================================================
    スクロールありスケジュール表
=============================================================== */
.exam-schedule-body {margin: 0 2px 0 6px;}
.scrollarea-wrap {
  padding: 0;
  width: 100%;
  overflow-x: hidden;
  overflow-y: hidden;
  display: table;
  border-collapse: collapse;
}
/*　検索結果　スクロールあり　*/
.sc-header {
  overflow: hidden;
  width: 100%;
  display: table;
  border-collapse: collapse;
  border-left: 1px solid #999999;
}
.sc-header li {
  float: left;
  width: 16.5% ;
  width: calc(17% - 2px);
  vertical-align: middle;
  text-align: center;
  font-size: 10px;
  padding: 5px 0;
  display: table-cell;
  border-collapse: collapse;
  border-right: 1px solid #999999;
  border-top: 1px solid #999999;
  border-bottom: 1px solid #999999;
  font-weight: normal;
  white-space:nowrap;
}
.sc-header li:first-of-type {
  width: 14.5% ;
  width: calc(15% - 2px);
  float: left;
}
.sc-header li:before {
  content: "■";
  font-size: 11px;
  line-height:1;
}
.sc-header li:before { color: #d2291b;}
.sc-header li:first-of-type:before {display: none;} 
.sc-header li:nth-of-type(2):before { color: #d2291b;}
.sc-header li:nth-of-type(3):before { color: #c273ad;}
.sc-header li:nth-of-type(4):before { color: #ee7c19;}
.sc-header li:nth-of-type(5):before { color: #8dc323;}
.sc-header li:nth-of-type(6):before { color: #6bc2ed;}
.scrollarea-dl {
  margin: 0 auto;
  padding: 0;
  height: 300px;
  width: 100%;
  padding-right: 17px;
  overflow-y: scroll;
  overflow-x: hidden;
  border-left: 1px solid #999999;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.scrollarea-wrap dt {
  vertical-align: middle;
  text-align: center;
  display: table-cell;
  border-bottom: 1px solid #999999;
  border-right: 1px solid #999999;
  border-collapse: collapse;
  height: 24px;
  float: left;
  width: 14.5% ;
  width: calc(15% - 2px);
  border-collapse: collapse;
}
.scrollarea-wrap dd, .scrollarea-wrap dd:empty {
  display: table-cell;
  border-collapse: collapse;
  border-bottom: 1px solid #999999;
  border-right: 1px solid #999999;
  height: 24px;
  float: left;
  width: 16.5% ;
  width: calc(17% - 2px);
  border-collapse: collapse;
  vertical-align: middle;
  text-align: center;
  font-size: 10px;
}
.scrollarea-wrap dt.date {
  font-size: 10px;
  overflow:hidden;
  display:table;
  table-layout: fixed;
}
.scrollarea-wrap dt.date span {
  display:table-cell;
  vertical-align:middle;
}
.scrollarea-wrap dt.date span:first-of-type {width: 56%;}
.scrollarea-wrap dt.date span:nth-of-type(2) {
  border-left: 1px solid #999999;
  display:table-cell;
}
.scrollarea-wrap dd img {height:100%;}
.arrow-b {
  text-decoration: none;
}
.scrollarea-wrap .arrow-b {
  position: relative;
  display: inline-block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #f26832;
  border-right: 2px solid #f26832;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  text-indent: -9999px;
  text-align: center;
  margin-top: 3px;
}
.isCalendarSunday dt, .isCalendarSunday dd {background: #f7d2b2;}
html.android {
  .sc-header {
  overflow: hidden;
  width: calc(100% - 17px);}
  .scrollarea-wrap dt {height: 25px;}
  .scrollarea-wrap dt {width: calc(15% - 1px);}
}
@-moz-document url-prefix() {
  .sc-header {overflow: hidden;width: calc(100% - 17px);}
  .scrollarea-wrap dt {height: 24px;}
  .scrollarea-wrap dt {width: calc(15% - 1px);}
}
/* ===============================================================
    共通ボタン
=============================================================== */
.table_cell01 {
  display: table-cell;
  width: 40%;
  padding-right: 3%;
  padding-left: 5%;
}
#gakumon-search h2.tit_section {
  background-color: #2D77C2;
  color: #FFF;
  padding: 10px 10px 5px 10px;
  border-bottom: #888 1px solid;
}
/* 注意文 */
.tx-caution { border:1px solid #ff0000; margin: 10px auto 0px; width: 94%; color: #ff0000;}
.tx-caution p { padding:10px; line-height: 1.4; font-size: 12px;}
/* ===============================================================
    ログイン
=============================================================== */
.login-concierge { font-family:"Meiryo UI" , "メイリオ" , Meiryo , Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" ,  "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;}
.login-concierge-02 { width:95%; margin: 0 auto;}
.login-concierge #login-tit-banner {background:url('/common_img/13phase/bg_title.gif') no-repeat; width:94%; height:43px; margin-top:10px;}
.login-concierge .login-banner-txt {line-height:43px; padding-left:30px;}
.login-concierge .login-main {width:94%; background:#cde5f5; margin: 5px auto;}
.login-concierge .login-main_space {margin:10px 100px; padding:10px 0;}
.login-concierge .firsttime { width:94%; height:18px; background:#e5ffac; margin:10px auto; padding:6px 0; font-size: 14px;}
.login-concierge p img {vertical-align:2px;}
.login-concierge .ttl-blue {
  font-size: 18px;
  font-weight: bold;
  border-bottom: 2px solid #0091d5;
  margin: 30px 0 10px;
  padding-bottom: 2px;
}
.login-concierge .ttl-blue span { display: block; margin-bottom: 5px; border-left: 6px solid #0091d5; padding-left: 7px;}
.login-concierge .ttls-blue { font-size: 20px; color: #0091d5; margin: 30px 0 10px; font-weight: bold;}
#concierge-detail {
  overflow:hidden;
  margin:20px auto 20px;
  width:92%;
  border:solid 1px #0091d5;
  padding:14px 10px 0;
  border-radius: 10px;
} 
#concierge-detail li {
  position:relative;
  border-radius:6px;
  display:block;
  margin-bottom:30px;
  overflow:hidden;
  list-style:none;
  line-height:1.4;
  font-size: 14px;
}
#concierge-detail li h4 {
  font-size: 18px;
  color: #0091d5;
  font-weight: bold;
  margin-bottom: 10px;
  border-bottom: 1px solid #0091d5;
  padding-bottom: 5px;
  padding-left: 5px;
  line-height: 1.2;
  letter-spacing: -0.02em;
}
#concierge-detail h4 .conc-no {
  color: #0091d5;
  font-size: 18px;
  margin-right: 5px;
  font-weight: bold;
}
/* ===============================================================
    あなたにおうすすめ！学校情報（広告）
=============================================================== */
.recommend-box-slide { position: relative;}
.recommend-box-slide a { color: #1072b8; text-decoration: none; }
.recommend-box-slide ul.recommend-box-slide-ul {margin: 10px;border-collapse: collapse; overflow: hidden;}
.recommend-box-slide-ul li { width: 100%; 
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #C7C7C7;
  display: flex;
}
.recommend-box-slide-ul li:nth-of-type(n+2) {border-top: none;}
.recommend-box-slide-ul li .chkBox {
  width: 30px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #F0F0F0;
  border-right: 1px solid #c7c7c7;
}
.recommend-box-slide-ul li .chkBox input[type="checkbox"] {
  transform: scale(1.5);
  margin-right: 0;
}
.recommend-box-slide-ul li .leftBox {
  padding: 10px;
  flex: 1;
}   
.recommend-box-slide .scl_name {
  font-size: 15px;
  font-weight: bold;
  margin-bottom: 6px;
}
.recommend-box-slide .scl_name a {color: #1981E8;}
.recommend-box-slide-ul li .leftBox .ph {display: flex;}
.recommend-box-slide-ul li .leftBox .ph img {
  width: 60px;
  height: 60px;
  margin-right: 5px;
}
.recommend-box-slide-ul li .leftBox .linkArea {
  text-align: right;
  margin-top: 10px;
}
.recommend-box-slide-ul li .leftBox .linkArea a {
  color: #00C2FF;
  position: relative;
  margin-left: 5px;
}
.recommend-box-slide-ul li .leftBox .linkArea a::before {content: "▶";}
.recommend-box-slide .scl_copy { font-size: 12px; text-align: left; margin-bottom: 8px; }
.recommend-box-slide .btn-shiryo { text-align: right; }
.recommend-box-slide .slick-dots { position: relative; bottom: 0; }
.recommend-box-slide .btn-shiryo img { display: inherit;}
.recommend-box-slide .slick-dots li {
  position: relative;
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.recommend-box-slide .slick-dots li button::before {
  font-family: slick;
  font-size: 6px;
  line-height: 20px;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 8px;
  height: 8px;
  content: " ";
  background: #fff;
  border-radius: 50%;
  text-align: center;
  opacity: 1;
  color: black;
  -webkit-font-smoothing: antialiased;
  border: 2px solid #FF6200;
}
.recommend-box-slide .slick-dots li.slick-active button:before {
  background: #FF6200;
  opacity: 1;
}
.recommend-box-slide .slide-arrow.prev-arrow.slick-arrow,
.recommend-box-slide .slide-arrow.next-arrow.slick-arrow {
  position: absolute;
  cursor: pointer;
  top: 50%;
}
.recommend-box-slide .slide-arrow.next-arrow.slick-arrow {right: 0;}
.recommend-box-slide .slide-arrow.prev-arrow.slick-arrow:before,
.recommend-box-slide .slide-arrow.next-arrow.slick-arrow:before {
  width: 20px;
  height: 20px;
  background: none;
  position: absolute;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
  border-radius: 20px;
  cursor: pointer;
}
.recommend-box-slide .slide-arrow.prev-arrow.slick-arrow:after,
.recommend-box-slide .slide-arrow.next-arrow.slick-arrow:after {
  box-sizing: border-box;
  width: 8px;
  height: 8px;
  border-top: 2px solid #999;
  border-right: 2px solid #999;
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
  z-index: 999;
  position: absolute;
  content: "";
}
.recommend-box-slide .slide-arrow.prev-arrow.slick-arrow:after {left: 0}
.recommend-box-slide .slide-arrow.next-arrow.slick-arrow:after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  right: 0;
}
.recommend-box-slide .slick-slide { outline: none; }
.recommend-box-slide .slick-slide .scl_photo img { width:100%; }
.recommend-box-slide .slick-track { display: flex !important; }
.recommend-box-slide .slick-slide { height: inherit !important; }