@charset "utf-8";
/* 新年度入れ替え時表示 上部表示メッセージ */
.attention {width: 100%;text-align: center;margin: 5px 0;display: block;color: #333;padding: 10px 0;line-height: 1.5em!important;background-color: #FFEFEF;border: 2px solid #e3e3e3;letter-spacing: 0!important;margin-bottom: -10px;}
@media screen and (max-width: 812px){.attention { margin-top: 90px!important;}}

/* ======================================
	進学館の講座
====================================== */
#about {
    width: 100%;
    border: 1px solid #005bac;
    padding: 20px;
}
/* ======================================
↓旧　学年別講座リンク
====================================== */
#grade{
    margin: 0 0 50px 0;;
}
#grade .gradeDsc{
    width: 100%;
    border: 2px solid #005bac;
    padding: 15px 10px;
}
 #grade .gradeDsc table{
    margin: 0 0 10px 0;
}
#grade .gradeDsc table tr{
    width:50vw; 
    margin: 0 auto;
}
#grade .gradeDsc table tr td{
    width:200px; 
    background: #11b4e5;
    border-right: 1px solid #fff;
    padding: 15px;
}
#grade .gradeDsc table tr td a{
    text-align: center;
    color: #fff;
    font-size: 1rem;
    letter-spacing: 3px;
    font-weight: bold;
    display: block;
}
#grade .gradeDsc table tr td:hover{
    opacity: 0.7;
}
#grade .gradeDsc table tr td a:hover{
    opacity: 1;
}
@media screen and (max-width:812px){
#grade {
    margin: 0;
}
}
@media screen and (max-width:414px){
#grade .gradeDsc table tr td{
    padding:10px 7px;
}
#grade .gradeDsc table tr td a{
    font-size: 0.9rem;
}
.jump{
    margin: 30px 0 !important;
}
}

/* ======================================
↓旧　学年別講座リンク
====================================== */
#Grade{
    margin: 0 0 50px 0;;
}
#Grade .gradeDsc{
    width: 100%;
    padding: 10px!important;
    background-color: #E5E9EC;
    border: 1px solid #005bac;
}
#Grade .bdrRnone a{
    border-right: none !important;
    }
#Grade .gradeDsc table{
    margin: 0 0 10px 0;
}
#Grade .gradeDsc table tr{
    width:50vw; 
    margin: 0 auto;
}
#Grade .gradeDsc table tr td{
    width:200px; 
    background: #11b4e5;
    border-right: 1px solid #fff;
    line-height: 3.5rem;
}
#Grade .gradeDsc table tr td a{
    text-align: center;
    color: #fff;
    font-size: 1rem;
    letter-spacing: 0px;
    font-weight: bold;
    display: block!important;
	width:100%;
	height:100%;
}
#Grade .gradeDsc table tr td:hover{
    opacity: 0.7;
}
#grade .gradeDsc table tr td a:hover{
    opacity: 1;
}
@media screen and (max-width:812px){
#Grade {
    margin: 0;
}
}
@media screen and (max-width:414px){
#Grade .gradeDsc table tr td{
    line-height: 2.5rem;
}
#Grade .gradeDsc table tr td a{
    font-size: 0.9rem;
}
}
/* ======================================
↓新　学年別講座リンク
====================================== */  
#GradeWrap{
    margin: 0 0 50px 0;
}
.GradeLink {
  display: flex;
  justify-content: space-between;
  margin-top: 15px;
}

.GradeLink a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #11B4E5;
  color: #FFF;
  width: 100%;
  position: relative;
  border-radius: 3px;
  font-size: 1.0rem;
  letter-spacing: 1.9px!important;
}
@media screen and (min-width: 768px) {
.GradeLink li {
    width: calc(14.285% - 14.285px);
  }
.GradeLink a {
    height: 80px;
    line-height: 1.4;
  }
}
@media screen and (max-width: 840px) {
.GradeLink {
	flex-wrap: wrap;
  }
.GradeLink li {
    width: calc(33.3% - 6px);
  }
.GradeLink li:nth-child(n+4) {
    margin-top: 10px;
  }
.GradeLink a {
    height: 57px;
  }}


/* ======================================
↓旧	進学館の基幹講座／能力開発講座／WEB講座
====================================== */
#main, #plus, #web {
    margin: 0 0 30px 0;
}
#main .lectureDsc {
    width: 100%;
    border: 2px solid #005bac;
    text-align: center;
    padding: 20px;
    margin: 0 0 10px 0;
}
#plus .lectureDsc {
    width: 100%;
    border: 2px solid #d62840;
    text-align: center;
    padding: 20px;
    margin: 0 0 10px 0;
}
#web .lectureDsc {
    width: 100%;
    border: 2px solid #00b4c0;
    padding: 20px;
    margin: 0 0 10px 0;
}
#main .box3, #plus .box3, #web .box3{
    margin: 10px 0 10px 0;
}
#main .box3 h4 a{
	width: 33.33333%;
	height: 150px;
	background-color: #288cd6;
	color: #fff;
	border-right: 10px solid #fff;
	text-align: center;
	background-image: url("../images/common/arrow_blue.png");
	background-position: 95.5% 50%;
	background-repeat: no-repeat;
	background-size: 20px;
	font-size: 20px;
	padding: 0 40px;
	vertical-align: baseline;
	float:left;
}
#plus .box3 h4 a{
    width: 33.33333%;
	height: 150px;
	background-color: #ffdee3 ;
	color: #d22038;
	border-right: 10px solid #fff;
	text-align: center;
    background-image: url("../images/common/arrow_pink.png");
    background-position: 95.5% 50%;
    background-repeat: no-repeat;
    background-size: 20px;
	font-size: 20px;
	padding: 0 40px;
    vertical-align: baseline;
	float:left;
}
#web .box3 h4 a{
    width: 33.33333%;
	height: 150px;
	background-color: #00b4c0;
	color: #fff;
	border-right: 10px solid #fff;
	text-align: center;
    background-image: url("../images/common/arrow_dsky.png");
    background-position: 95.5% 50%;
    background-repeat: no-repeat;
    background-size: 20px;
	font-size: 20px;
	padding: 0 40px;
    vertical-align: baseline;
	float:left;
}
#main .box3 h4 .box3Irr2, #plus .box3 h4 .box3Irr2, #web .box3 h4 .box3Irr2{
    padding: 50px 20px !important;
    line-height: 1.3;
}
.bdrRnone a{
    border-right: none !important;
}
#main .taisho {
    width: 23vw;
    max-width: 90px;
    background: #fff;
    color: #288cd6;
    padding: 3px;
    display: block;
    font-size: 12px;
    margin: 20px 0 12px 0 !important;
    border-radius: 5px;
    float: none;
}
#plus .taisho {
    width: 23vw;
    max-width: 90px;
    background: #fff;
    color: #d62840;
    padding: 3px;
    display: block;
    font-size: 12px;
    margin: 20px 0 12px 0 !important;
    border-radius: 5px;
    float: none;
}
#web .taisho {
    width: 23vw;
    max-width: 90px;
    background: #fff;
    color: #00b4c0;
    padding: 3px;
    display: block;
    font-size: 12px;
    margin: 20px 0 12px 0 !important;
    border-radius: 5px;
    float: none;
}
@media screen and (min-width:1200px){
#main .box3 h4 a, #plus .box3 h4 a, #web .box3 h4 a{
    width: 33.33%;
}
}
@media screen and (max-width:812px){
#main .box3, #plus .box3, #web .box3{
    margin: 0 ;
}
#main .box3 h4 a, #plus .box3 h4 a, #web .box3 h4 a{
	width: 100%;
	height: auto;
    display: block;
    font-size: 1.2rem;
    border-right: none;
	padding: 20px 20px 60px 20px;
    margin: 0 0 10px 0;
	float:none;
}
#main .taisho, #plus .taisho, #web .taisho {
    width: 23vw;
    max-width: 80px;
    background: #fff;
    padding: 5px;
    display: block;
    font-size: 12px;
    margin: 0 0 12px 0 !important;
}
}

/* ======================================
↓新	進学館の基幹講座／能力開発講座／WEB講座
====================================== */
.WrapBox,.WrapBox2{
    display: flex;
		flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
}
.WrapBox a{
    width: 32%;
}
.WrapBox2 a{
    width: 49%;
}

@media screen and (max-width:767px) { 
.WrapBox,.WrapBox2{
    display:block!important;}
.WrapBox a,.WrapBox2 a{
    width:100%!important;}
.CourseLinkBox{
    margin: 10px 0!important;}
}

.CourseLinkBox{
    padding: 16px 8px;
    margin: 10px 0;
    height: 60px;
    display: table;
    width: 100%;
    line-height: 1.2em!important;
    letter-spacing: 0!important;
    text-align: center;
    border-radius:3px!important;
    border: 1px solid #BDBDBD;
    background-color: #E5E9EC;
	font-feature-settings: "palt";
    }
.CourseLinkBox span{
    font-size: 75%;
    height:45px;
    width: 90px;
    display:table-cell;
    vertical-align: middle;
    background-color:#11B4E5;
    border-radius:3px!important;
    color: #FFF;
}
.CourseLinkBox .sTitle{
    font-size:80%;
    height:auto;
    width: auto;
    display:inline-block;
    vertical-align: middle;
    background-color:#E5E9EC;
    border-radius:0;
    color: #333;	
}
.CourseLinkBox p{ 
    color: #8B8B8B!important;
    font-size: 80%;
		margin-bottom: 0!important;
    }
.CourseLinkBox .title {
    font-weight: bold;
    font-size: 110%;
    color: #333!important;
    margin: 3px 0;
}
/* ======================================
↓アルゴリズム
====================================== */

.algo_event{
    margin: 15px 0 20px;
}

.algo_event p{
    display: inline-block;
    margin-bottom: 0;
}

.algo_event_title{
    color: #fff;
    padding: 0.5em;
    display: inline-block;
    line-height: 1.3;
    background: #005bac;
    vertical-align: middle;
    border-radius: 25px 0px 0px 25px;
}

.algo_event p.algo_event_title{
    margin-right: 10px;
}

.algo_event_title:before {
    content: '●';
    color: white;
    margin-right: 8px;
}

.algo_event_txt{
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 0;
}

.algo_event_btn{
    display: block;
	text-align: center;
	text-decoration: none;
	margin-left: 5px;
	padding: 0 1rem;
	font-weight: bold;
	border: 2px solid #27acd9;
	color: #fff;
	transition: 0.5s;
    background-color: #27acd9;
    font-weight: 100;
}

.algo_event_btn:hover {
	color: #27acd9;
	background: #fff;
}

.algo_event_btn:before{
    display: inline-block;
    content: "\025b6";
    font-size: 0.6rem;
    margin-right: 10px;
    vertical-align: middle;
}

@media screen and (max-width:767px) {
    .algo_event_title{
        width: 100%;
    }
    .algo_event p.algo_event_txt{
        margin: 10px 0;
    }
    .algo_event p.algo_event_btn{
        display: block;
        width: 70%;
        margin: 10px auto 0;
    }

    .subInfo .online_end_message{
        font-size: 1.2rem;
        margin: 10px 0 20px;
        line-height: 1.4;
    }

    .online_end_message span{
        font-size: 1.0rem !important;
    }
    
}

.online_end_message{
    font-size: 1.4rem;
    font-weight: 900;
    line-height: 1.3;
    margin: 10px 0 40px;
    text-align: center;
}

.online_end_message span{
    font-size: 1.2rem;
    font-weight: normal;
}