/***************************************
course.css
***************************************/

.br_sp {display: none;}
.br_pc {display: block;}

@media screen and (orientation: portrait) and (max-width: 767px){
	
.br_sp {display: block;}
.br_pc {display: none;}
	
}


/* subject list
============================ */

.tab_group {
  display: flex;
  justify-content: space-between;
  column-gap: .2rem;
  margin: 2rem 0;
}

.tab_group li {
  flex: 1;
  height: 3rem;
  background: #dedede;
  color: #999;
  text-align: center;
  line-height: 3rem;
  cursor: pointer;
}

.tab_group li.tab_active {
  background: var(--Main_Color);
  color: #fff;
}

.tab_group li:hover {
  opacity: .7;
  transition: .3s all ease-in;
}


@media screen and (orientation: portrait) and (max-width: 767px){

  .tab_group {
    flex-wrap: wrap;
    column-gap: 0;
    width: 96%;
    height: auto;
    margin: 2rem auto;
  }

  .tab_group li {
    flex: none;
    width: 49%;
    margin: .2rem 0;
  }

}




/* Lecture_Unit
============================ */

.tab_contents {
  margin: 4rem 0;
}

.lecture_unit {
  margin: 2rem 0;
}

.lecture_title_area {
  display: flex;
  justify-content:space-between;
  align-items: center;
  width: 100%;
  min-height: 4rem;
  margin: 1rem 0;
  padding: 0 .5rem;
  color: #fff;
  font-size: .8rem;
  line-height: 1;
}

@media screen and (orientation: portrait) and (max-width: 767px){

  .lecture_unit { /* index.htmlからid指定でジャンプしたときにheaderが被らないように処理 */
    margin-top: -4rem;
    padding-top: 4rem;
  }

  .lecture_title_area {
    display: block;
    margin-bottom: 0;
    padding: 0;
    background-color: #fff !important;
  }

  .lecture_title_area div:last-of-type {
    justify-content: space-between;
    flex-direction: row-reverse;
    padding: .5rem 0;
    color: #666;
  }

}

.en .lecture_title_area,
.en .lecture_title_area div:first-of-type {
  background-color: #004578;
}
.fr .lecture_title_area,
.fr .lecture_title_area div:first-of-type {
  background-color: #84687d;
}
.mt .lecture_title_area,
.mt .lecture_title_area div:first-of-type {
  background-color: #008586;
}
.jp .lecture_title_area,
.jp .lecture_title_area div:first-of-type {
  background-color: #336238;
}
.tr .lecture_title_area,
.tr .lecture_title_area div:first-of-type {
  background-color: #696969;
}
.sc .lecture_title_area,
.sc .lecture_title_area div:first-of-type {
  background-color: #6e8518;
}
.hi .lecture_title_area,
.hi .lecture_title_area div:first-of-type {
  background-color: #9e575f;
}
.esre .lecture_title_area,
.esre .lecture_title_area div:first-of-type {
  background-color: #815c34;
}

.lecture_title_area div {
  display: flex;
  align-items: center;
  line-height: 1;
}

.lecture_title_area h3 {
  flex: 1;
  margin: 0 1rem 0 0;
  font-weight: bold;
  font-size: 1.2rem;
  font-family: var(--Font_Weight_Bold);
}

.lecture_title_area h3 span {
	color: #ff0000;
}

@media screen and (orientation: portrait) and (max-width: 767px){

  .lecture_title_area div:last-of-type {
    font-weight: bold;
    font-family: var(--Font_Weight_Bold);
  }

  .lecture_title_area div {
    min-height: 4rem;
    padding: 0 .5rem;
  }

}

.lecture_title_area p {
  margin: 0;
}

.lecture_title_area div:first-of-type p.gtz::before {
  content: "(";
}

.lecture_title_area div:first-of-type p.gtz::after {
  content: ")";
}

.lecture_title_area div:first-of-type p.selection {
  width: 3.2rem;
  margin: 0 0 0 .5rem;
  padding: .2rem 0;
  background: #f00;
  color: #fff;
  font-size: .8rem;
  text-align: center;
  vertical-align: middle;
}

.lecture_title_area div:first-of-type p.certification {
  display: none;
}

.lecture_title_area div:last-of-type p {
  display: table;
  margin: 0 1rem 0 auto;
  padding: .5rem;
  border: 1px solid #fff;
  text-align: center;
}

.lecture_title_area div:last-of-type p span {
  display: block;
  padding-top: .2rem;
  font-size: .6rem;
}

@media screen and (orientation: portrait) and (max-width: 767px){

  .lecture_title_area div:last-of-type p {
    margin: 0 .5rem 0 0;
    border: 1px solid #666;
  }

  .lecture_title_area div:last-of-type p span {
    display: inline;
    padding-top: 0;
    font-size: .8rem;
  }

}

.lecture_title_area div:last-of-type ul {
  display: flex;
}

.lecture_title_area div:last-of-type ul li {
  width: 2.4rem;
  margin: 0;
  padding: .5rem .2rem;
  border: 1px solid #fff;
  text-align: center;
  line-height: 1;
  opacity: .3;
}

.lecture_title_area div:last-of-type ul li:nth-of-type(even) {
  width: 1rem;
  padding: .5rem 0;
  border-right: none;
  border-left: none;
}

@media screen and (orientation: portrait) and (max-width: 767px){

  .lecture_title_area div:last-of-type ul {
    margin: 0 0 0 .5rem;
  }

  .lecture_title_area div:last-of-type ul li {
    border: 1px solid #666;
  }

}

.lecture_title_area div:last-of-type ul li.on {
  border-color: #edf6ff;
  background: #edf6ff;
  opacity: 1;
}

.en .lecture_title_area div:last-of-type ul li.on {
  border-right-color: #004578;
  border-left-color: #004578;
  color: #004578;
}

.fr .lecture_title_area div:last-of-type ul li.on {
  border-right-color: #84687d;
  border-left-color: #84687d;
  color: #84687d;
}

.mt .lecture_title_area div:last-of-type ul li.on {
  border-right-color: #008586;
  border-left-color: #008586;
  color: #008586;
}

.jp .lecture_title_area div:last-of-type ul li.on {
  border-right-color: #336238;
  border-left-color: #336238;
  color: #336238;
}

.tr .lecture_title_area div:last-of-type ul li.on {
  border-right-color: #696969;
  border-left-color: #696969;
  color: #696969;
}

.sc .lecture_title_area div:last-of-type ul li.on {
  border-right-color: #6e8518;
  border-left-color: #6e8518;
  color: #6e8518;
}

.hi .lecture_title_area div:last-of-type ul li.on {
  border-right-color: #9e575f;
  border-left-color: #9e575f;
  color: #9e575f;
}

.esre .lecture_title_area div:last-of-type ul li.on {
  border-right-color: #815c34;
  border-left-color: #815c34;
  color: #815c34;
}

/** Section-Lecture_Unit_elements_area **/

.lecture_contents_area {
  display: flex;
  align-items: flex-start;
}

@media screen and (orientation: portrait) and (max-width: 767px){

  .lecture_contents_area {
    flex-flow: column;
    flex-direction: column-reverse;
    width: 100%;
    margin: 0 auto;
  }
  
  .lecture_title_area div:last-of-type ul li.on {
    border-color: var(--Dark_Sub_Color) !important;
    color: var(--Dark_Sub_Color) !important;
  }
  
  .lecture_title_area div:last-of-type ul li:not(.on) + li.on {
    border-left: 1px solid var(--Dark_Sub_Color) !important;
  }
  
  .lecture_title_area div:last-of-type ul li.on + li:not(.on) {
    border-right: none !important;
  }
  
  .lecture_title_area div:last-of-type ul li.on:has( + li:not(.on)) {
    border-right: 1px solid var(--Dark_Sub_Color) !important;
  }
  
  .lecture_title_area div:last-of-type ul li:not(.on):has( + li.on) {
    border-left: none !important;
  }

}

.lecture_timetable_area {
  width: 20rem;
  margin-bottom: 1rem;
  margin-right: 1rem;
  border: 1px solid #deebf7;
  font-size: .9rem;
}

@media screen and (orientation: portrait) and (max-width: 767px){

  .lecture_timetable_area {
    width: 100%;
    padding: 0;
  }
  
}

.lecture_timetable_area p {
  margin: 0;
  padding: .5rem;
  background-color: #deebf7;
  font-weight: bold;
  font-size: 1rem;
  font-family: var(--Font_Weight_Bold);
  line-height: 1;
}

.lecture_timetable_area div {
  padding: .5rem;
}


.lecture_timetable_area .note li {
  padding-left: 1rem;
  text-indent: -1rem; 
}

/** Section-Lecture_Unit_overview_area **/
.lecture_element_area {
  flex: 1;
  margin-bottom: 1rem;
}

@media screen and (orientation: portrait) and (max-width: 767px){

  .lecture_element_area {
    width: 100%;
  }

}

.lecture_element_area dl {
  margin: .5rem 0 1rem 0;
}

.lecture_element_area dl.tr_list dd {
	margin-bottom: 1rem;
}

.lecture_element_area dl dt {
  margin-top: .5rem;
  font-weight: bold;
  font-family: var(--Font_Weight_Bold);
}

.lecture_element_area dl dt::before {
  content: "【";
}

.lecture_element_area dl dt::after {
  content: "】";
}

.lecture_element_area dl dd {
  padding-left: 1rem;
  text-align: justify;
  line-height: 1.6;
}


.lecture_element_area h4 {
  line-height: 1.2;
  margin: .5rem 0;
  font-weight: bold;
  font-size: 1.2rem;
  font-family: var(--Font_Weight_Bold);
}

.lecture_element_area h4::before {
  content: "●";
}

.lecture_element_area h5 {
  line-height: 1.2;
  margin: 1rem 0;
  color: var(--Dark_Sub_Color);
  font-weight: bold;
  font-size: 1rem;
  font-family: var(--Font_Weight_Bold);
}

@media screen and (orientation: portrait) and (max-width: 767px){

  .lecture_element_area h4 {
    font-size: 1.2rem;
    margin: 1rem 0;
    font-weight: bold;
    font-family: var(--Font_Weight_Bold);
    line-height: 1.6;
  }

  .lecture_element_area h5 {
    font-size: 1rem;
    margin: 1rem 0;
    font-weight: bold;
    font-family: var(--Font_Weight_Bold);
    line-height: 1.6;
  }

}

.lecture_element_area p {
  text-align:justify;
}

.lecture_element_area ol {
  padding-left: 1.2rem;
  list-style-type: decimal;
}

.lecture_element_area ul {
  padding-bottom: .5rem;
  padding-left: .8rem;
  font-size: .8rem;
  text-indent: -.8rem;
}

.lecture_element_area ul li::before {
  content: "※";
}



/** Appendix **/
.appendix {
  margin: .5rem 0;
  font-size: .8rem;
}

.appendix li {
  margin-left: .8rem;
  text-indent: -.8rem;
  line-height: 1.6;
}


/** class_curriculum_table **/
.curriculum_table {
  width: 100%;
  margin-bottom: .5rem;
}

.curriculum_table th, .curriculum_table td {
  border: 1px solid #ccc;
  font-size: .7rem;
  line-height: 1.6;
}

.curriculum_table th {
  padding: .2rem 0;
}

.curriculum_table td {
  padding: .2rem .5rem;
}

.curriculum_table thead {
  border: 2px solid var(--Dark_Sub_Color);
}

.curriculum_table thead th {
  background-color: var(--Dark_Sub_Color);
  color: #fff;
  font-weight: bold;
}

.curriculum_table tbody {
  border: 2px solid #ccc;
}

.curriculum_table tbody th {
  background-color: #eee;
  vertical-align: middle;
}

.curriculum_table tbody td {
  vertical-align: middle;
}

.curriculum_table tbody td.season_lesson {
  text-align: center;
}

.curriculum_table tbody td span {
  display: inline-block;
  padding-right: .5rem;
}

.curriculum_table ul li {
  font-size: .7rem;
  text-indent: -.7rem;
}

.curriculum_table ul li::before {
  content: "・";
}



/* 講座紹介時間割 */

.lecture_timetable_area dl {
  width: 100%;
  padding-bottom: 1rem;
}

.lecture_timetable_area dl dt {
  margin-top: .5rem;
}

.lecture_timetable_area dl dt::before {
  content: "●";
}

.lecture_timetable_area dl dd {
  margin: 0;
  padding: 0 0 0 1rem;
  line-height: 1;
}

.lecture_timetable_area dd span {
  display: inline-block;
  margin: 0;
  padding: 0;
  border: 1px solid #fff;
  background: #deebf7;
  line-height: 1.2rem;
}

.lecture_timetable_area dd span:first-of-type {
  width: auto;
  margin-right: .5rem;
  padding: 0 .5rem;
}

.lecture_timetable_area .note {
  text-align:justify;
}


/* GTZ・時間のラベルの枠 */
.label_area {
  display: block;
}

.label_area::after {
  display: block;
  clear: both;
  content: "";
}


/* 講座紹介時間割（追加：選抜クラス） */

ul.senbatsu {
	text-align: justify;
	margin: .5rem;
}

ul.senbatsu li {
	padding-left: 1rem;
    text-indent: -1rem;
	font-size: .8rem;
	letter-spacing: .02rem;
}

ul.senbatsu li::before {
	content: "※";
}

@media screen and (orientation: portrait) and (max-width: 767px){

  .label_branch {
    overflow: hidden;
    margin-top: 2.5vw;
  }

  .label_branch li {
    float: left;
    height: 14vw;
    margin-right: 1.25vw;
    padding: 3vw 4vw 0 4vw;
  }

  .label_branch li.on {
    background: #ac6e72;
    color: #fff;
  }

  .label_branch li.on::after {
    display: block;
    width: 1.25vw;
    height: 1.25vw;
    margin: 0 auto;
    border-right: 0.5vw solid #fff;
    border-bottom: 0.5vw solid #fff;
    transform: rotate(45deg);
    content: "";
  }

  .label_branch li.off {
    background-color: #dedede;
    color: #999;
  }

  .label_branch li.on.li_active {
    height: 15vw;
    background: #84060d;
  }
  
  /* 時間割黒ラベル */
  .label_time_course {
    display: table;
    margin-bottom: 1.35vw;
    padding: 1.35vw;
    border: #000 0.54vw solid;
    background: #000;
    color: #fff;
    font-weight: bold;
    font-size: 95%;
    font-family: var(--Font_Weight_Bold);
  }
  
}

/*講座アコーティオン*/

.accbox label {
  display: none;
}

.accbox input {
    display: none;
}

@media screen and (orientation: portrait) and (max-width: 767px){

  .accbox {
    margin: 0;
    padding: 0;
  }

  /*ラベル*/
  .accbox label {
    display: block;
    position: relative;
    width: 62.5vw;
    height: 10vw;
    margin: 0 auto 5.434vw auto;
    border: 0.5vw solid #84060d;
    background :#fff;
    color: #84060d;
    font-weight: bold;
    font-size: 117%;
    font-family: var(--Font_Weight_Bold);
    text-align: center;
    line-height: 9vw;
    transition: all 0.5s;
    cursor :pointer;
  }

  .accbox label:not(.open)::after {
    display: block;
    position: absolute;
    top: 2.5vw;
    right: 3vw;
    width: 2.5vw;
    height: 2.5vw;
    border-right: 0.5vw solid #84060d;
    border-bottom: 0.5vw solid #84060d;
    transform: rotate(45deg);
    content: "";
  }

  .accbox label.open::after {
    display: block;
    position: absolute;
    top: 4vw;
    right: 3vw;
    width: 2.5vw;
    height: 2.5vw;
    border-top: 0.5vw solid #84060d;
    border-left: 0.5vw solid #84060d;
    transform: rotate(45deg);
    content: "";
  }


  /*中身を非表示にしておく*/
  .accbox .accshow {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
  }

  /*クリックで中身表示*/
  .cssacc:checked + .accshow {
    height: auto;
    opacity: 1;
  }

}





/*  accordion
-------------------------*/

.lecture_timetable_area p {
  position: relative;
  margin:0 auto;
  text-align: center !important;
}

.lecture_timetable_area p:hover {
  transition: .5s;
}

@media screen and (orientation: portrait) and (max-width: 767px){

  .lecture_timetable_area p::before {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 1rem;
    font-weight: 900;
    line-height: 1;
    transform: translate(0%, -50%);
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    font-family: var(--Font_Awesome);
    content: "\f13a";
    cursor: pointer;
  }

  .lecture_timetable_area.acd_active p::before {
    content: "\f139";
  }

  .lecture_timetable_area.acd_active p:hover::before {
    transition: .5s;
  }

}



/*  accordion
-------------------------*/

.lecture_element_area .tab_area {
  display: flex;
}

.lecture_element_area .tab_area {
  margin: 0;
  padding: 0;
}

.lecture_element_area .tab_area li {
  width: 50%;
  margin: 0;
  padding: .5rem;
  border: 1px solid #dedede;
  background-color: #dedede;
  color: #999;
  font-weight: bold;
  font-size: 1rem;
  font-family: var(--Font_Weight_Bold);
  text-align: center;
  text-indent: 0;
  line-height: 1;
  cursor: pointer;
}

.lecture_element_area .tab_area li::before {
  content: none;
}

.lecture_element_area .tab_area li.active {
  border: 1px solid #deebf7;
  background-color: #deebf7;
  color: #666;
}

.lecture_element_area .tab_area li:hover {
  opacity: .7;
  transition: .3s all ease-in;
}

.lecture_element_area > div {
  display: none;
}

.lecture_element_area > div.active {
  display: block;
  padding: 1rem;
  border: 1px solid #deebf7;
  border-top: none;
}

@media screen and (orientation: portrait) and (max-width: 767px){

  .lecture_element_area > div.active {
    padding: .5rem;
  }

}

/*  other_course
-------------------------*/

section.other_course {
	margin: 2rem 2rem;
}

.other_course ul li a::after {
	padding-left: 1rem;
    color: var(--Main_Color);
    font-weight: 900;
    font-family: var(--Font_Weight_Bold);
    font-family: var(--Font_Awesome);
    content: var(--Arrow_Right);
}

@media screen and (orientation: portrait) and (max-width: 767px){
	section.other_course {
	margin: 1rem 0;
		padding-left: 1rem;
}
}

/*  11月からの新規開講講座
-------------------------*/

h1.nov_topt {
	text-align: center;
	font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
    font-size: 1.9rem;
	font-weight: 900;
	letter-spacing: .2rem;
	width: fit-content;
	margin: 3rem auto 2.5rem;
	color: #002063;
	border-bottom: 2px solid #002063;
	animation: color-change-nov 5s linear infinite;
}

@keyframes color-change-nov {
  0%,100%{
	border-color:#002063;
  }

  25%{
	border-color:#ee7522;
  }
  
  50%{
	border-color:#f5c51d;
  }
  
  75%{
	border-color:#002063;
  }
}

h3.nov_topm {
	font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
    font-size: 1.3rem;
	letter-spacing: .15rem;
	width: fit-content;
	margin: 0rem auto 3rem;
	color: #002063;
	text-align: center;
	line-height: 2.8rem;
}

section.nov_newcourse h2 {
	font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
    font-size: 1.7rem;
	letter-spacing: .2rem;
	width: fit-content;
	margin: 4rem auto 3rem;
	color: #002063;
}

section.nov_newcourse h2 span.fsize_l {
	font-size: 2.2rem;
	color: #ee7522;
}

section.nov_newcourse h2 span.fsize_m {
	font-size: 1.9rem;
	color: #ee7522;
}

section.nov_newcourse h2 span.fsize_s {
	font-size: 1.6rem;
}

section.nov_newcourse > ul {
	display: flex;
	flex-wrap: wrap;
	align-content: space-between;
}

section.nov_newcourse > ul li {
	width: calc(50% - 2rem);
	margin: 1rem;
	border: 1px solid #002063;
	position: relative;
}

section.nov_newcourse > ul li:first-of-type {
	width: 100%;
}

section.nov_newcourse > ul dt {
	background-color: #fff;
	color: #fff;
	padding: .3rem 1rem .2rem;
	font-size: 1.2rem;
	border-left: 5px solid;
	border-image: linear-gradient(to bottom, #e3b224, #e38224, #fff) 1;
}

section.nov_newcourse > ul dd {
	padding: .8rem 1rem 2.5rem;
	text-align: justify;
}

section.nov_newcourse > ul dd span {
    font-weight: 900;
    font-family: var(--Font_Weight_Bold);
}

section.nov_newcourse > ul a {
	text-align: right;
	position: absolute;
	bottom: 0;
	right: 0;
	margin-top: auto;
	margin-right: 1rem;
}

section.nov_newcourse > ul a::after {
    font-family: var(--Font_Awesome);
    content: "\f101";
    font-weight: 900;
	margin-left: .5rem;
}

@media screen and (orientation: portrait) and (max-width: 767px){
	
	h1.nov_topt {
    font-size: 1.2rem;
	font-weight: 900;
	letter-spacing: .1rem;
	margin: 1rem auto;
	width: fit-content;
		text-align: center;
}
	
	h3.nov_topm {
    font-size: 1rem;
	letter-spacing: .01rem;
	margin: 0rem auto 1rem;
		line-height: 1.7rem;
}
	
	section.nov_newcourse h2 {
    font-size: 1.3rem;
	letter-spacing: .1rem;
	margin: 1rem 0rem 0rem 1rem ;
}
	
	section.nov_newcourse h2 span.fsize_l {
	font-size: 1.8rem;
}

section.nov_newcourse h2 span.fsize_m {
	font-size: 1.6rem;
}
	
	section.nov_newcourse h2 span.fsize_s {
	font-size: 1.4rem;
}
	
	section.nov_newcourse > ul li {
	width: 100%;
	margin: 1rem;
}
	
}


/*  ９月からの新規開講講座
-------------------------*/

h1.sep_topt {
	font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
    font-size: 2.2rem;
	font-weight: 900;
	letter-spacing: .2rem;
	width: fit-content;
	margin: 3rem auto 2.5rem;
	color: #002063;
	border-bottom: 2px solid #fff;
	animation: color-change 5s linear infinite;
}

@keyframes color-change {
  0%,100%{
	border-color:#fff;
  }

  25%{
	border-color:#ee7522;
  }
  
  50%{
	border-color:#f5c51d;
  }
  
  75%{
	border-color:#fff;
  }
}

h3.sep_topm {
	font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
    font-size: 1.3rem;
	letter-spacing: .2rem;
	width: fit-content;
	margin: 0rem auto 3rem;
	color: #002063;
	text-align: center;
}

section.sep_newcourse h2 {
	font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
    font-size: 1.7rem;
	letter-spacing: .2rem;
	width: fit-content;
	margin: 4rem auto 3rem;
	color: #002063;
}

section.sep_newcourse h2 span.fsize_l {
	font-size: 2.2rem;
	color: #ee7522;
}

section.sep_newcourse h2 span.fsize_m {
	font-size: 1.9rem;
	color: #ee7522;
}

section.sep_newcourse h2 span.fsize_s {
	font-size: 1.6rem;
}

section.sep_newcourse > ul {
	display: flex;
	flex-wrap: wrap;
	align-content: space-between;
}

section.sep_newcourse > ul li {
	width: calc(50% - 2rem);
	margin: 1rem;
	border: 1px solid #002063;
	position: relative;
}

section.sep_newcourse > ul li.col_1 {
	width: 100%;
	margin: 1rem;
	border: 1px solid #002063;
	position: relative;
}

section.sep_newcourse > ul li.col_1 dl .link_2col {
    display: flex;
    justify-content: flex-end;
}

section.sep_newcourse > ul li.col_1 dl .link_2col a {
    margin: 0 1rem;
}

section.sep_newcourse > ul dt {
	background-color: #002063;
	color: #fff;
	padding: .3rem 1rem .2rem;
	font-size: 1.2rem;
	border-left: 5px solid;
	border-image: linear-gradient(to bottom, #e3b224, #e38224, #002063) 1;
}

section.sep_newcourse > ul dd {
	padding: .8rem 1rem 2.5rem;
	text-align: justify;
}

section.sep_newcourse > ul dd span {
    font-weight: 900;
    font-family: var(--Font_Weight_Bold);
}

section.sep_newcourse > ul li dl > a {
	text-align: right;
	position: absolute;
	bottom: 0;
	right: 0;
	margin-top: auto;
	margin-right: 1rem;
}

section.sep_newcourse > ul a::after {
    font-family: var(--Font_Awesome);
    content: "\f101";
    font-weight: 900;
	margin-left: .5rem;
}

@media screen and (orientation: portrait) and (max-width: 767px){
	
	h1.sep_topt {
    font-size: 1.5rem;
	font-weight: 900;
	letter-spacing: .1rem;
	margin: 1rem auto;
}
	
	h3.sep_topm {
    font-size: 1rem;
	letter-spacing: .03rem;
	margin: 0rem auto 1rem;
}
	
	section.sep_newcourse h2 {
    font-size: 1.3rem;
	letter-spacing: .1rem;
	margin: 1rem 0rem 0rem 1rem ;
}
	
	section.sep_newcourse h2 span.fsize_l {
	font-size: 1.8rem;
}

section.sep_newcourse h2 span.fsize_m {
	font-size: 1.6rem;
}
	
	section.sep_newcourse h2 span.fsize_s {
	font-size: 1.4rem;
}
	
	section.sep_newcourse > ul li {
	width: 100%;
	margin: 1rem;
}
	
}


/*  ９月入学者「入学金50％OFF」キャンペーン実施中
-------------------------*/

    #main_content .campaign {
    border: 2px solid #ffa500;
    background-color: #fffff0;
    padding: 1rem;
    border-radius: .5rem;
    text-align: center;
}

#main_content .campaign p {
    font-size: 1.4rem;
    font-weight: bold;
    margin: 0;
}

@media screen and (orientation: portrait) and (max-width: 767px){
    
    #main_content .campaign {
        width: 90%;
        margin: 0 auto;
}

#main_content .campaign p {
    font-size: 1.2rem;
}
    
}

