@charset "UTF-8";
/*===============================================================
	変数
===============================================================*/
/*　画面左右のマージン　*/
/*　幅　*/
/*	グリッド幅  */
/*	セクション、コンテンツ間のマージン　*/
/*===============================================================
	色
===============================================================*/
/*===============================================================

	section_aim 目指せる仕事・職場・専門士とは

===============================================================*/
.section_aim {
  padding: 30px 0;
  /* タブレット以下 */
  /* for tablet max-width: $width_tab */
  /* SP向けレイアウトの指定：～$width_sp */
  /* for SP max-width: $width_sp */
  /*-------------------------------------------------------------
  	content_aim	
  -------------------------------------------------------------*/
  /*===============================================================
  	目指せる職場
  	section_aim
  ===============================================================*/
  /*
  年度更新
  .[01] .aim_list li::after { background: #[02] !important; }
  */
  /* タブレット以下 */
  /* タブレット以下 */
  /* for tablet max-width: $width_tab */
  /* SP向けレイアウトの指定：～$width_sp */
  /* for SP max-width: $width_sp */
  /*===============================================================
  	//	section_aim 目指せる仕事・職場・専門士とは
  ===============================================================*/
}
.section_aim .section_inner {
  /*padding-top: 60px;*/
}
@media screen and (max-width: 1220px) {
  .section_aim {
    padding: 0;
  }
  .section_aim .content + .content {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 800px) {
  .section_aim {
    padding: 3vw 0;
  }
  .section_aim .content + .content {
    margin-top: 5vw;
  }
  .section_aim .section_inner {
    /*padding-top: 20px;*/
  }
}
.section_aim .content_aim {
  /*
  年度更新
  .head.b_radius.color_[01] {	color: #[02];	border-radius: 50px;	}
  */
  /*
  年度更新
  .[01] .box .list li::before {	background: #[02];}
  */
  /* タブレット以下 */
  /* for tablet max-width: $width_tab */
  /* SP向けレイアウトの指定：～$width_sp */
  /* for SP max-width: $width_sp */
}
.section_aim .content_aim .head {
  font-size: 26px;
  line-height: 1;
  font-weight: 500;
  text-align: center;
  padding: 15px 0;
  background: #333;
  color: #fff;
  border-radius: 30px 30px 0 0;
}
.section_aim .content_aim .head.b_radius {
  border-radius: 0;
  border-width: 2px;
  border-style: solid;
  background: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.section_aim .content_aim .head.b_radius.color_super_technology_world {
  color: #e50111;
  border-radius: 50px;
}
.section_aim .content_aim .head.b_radius.color_super_e_entertainment_world {
  color: #1d50a0;
  border-radius: 50px;
}
.section_aim .content_aim .head.b_radius.color_ai_it_technology_world {
  color: #5ab431;
  border-radius: 50px;
}
.section_aim .content_aim .head.b_radius.color_automotive_design_world {
  color: #f1b000;
  border-radius: 50px;
}
.section_aim .content_aim .head.b_radius.color_design_world {
  color: #8f61a2;
  border-radius: 50px;
}
.section_aim .content_aim .head.b_radius.color_manga_illustration_world {
  color: #dc4f93;
  border-radius: 50px;
}
.section_aim .content_aim .head.b_radius.color_game_cg_movie_animation_world {
  color: #52b489;
  border-radius: 50px;
}
.section_aim .content_aim .box {
  background: #fff;
  padding: 30px;
  border-radius: 0 0 30px 30px;
}
.section_aim .content_aim .box.nobg {
  background: none;
}
.section_aim .content_aim .box .list {
  margin-top: -20px;
}
.section_aim .content_aim .box .list li {
  position: relative;
  float: left;
  width: 33.3333%;
  font-size: 15px;
  line-height: 1.6;
  font-weight: 500;
  padding-left: 20px;
  margin-top: 20px;
}
.section_aim .content_aim .box .list li:before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 10px;
  height: 10px;
  background: #59bded;
}
.super_technology_world .section_aim .content_aim .box .list li::before {
  background: #e50111;
}
.super_e_entertainment_world .section_aim .content_aim .box .list li::before {
  background: #1d50a0;
}
.ai_it_technology_world .section_aim .content_aim .box .list li::before {
  background: #5ab431;
}
.automotive_design_world .section_aim .content_aim .box .list li::before {
  background: #f1b000;
}
.design_world .section_aim .content_aim .box .list li::before {
  background: #8f61a2;
}
.manga_illustration_world .section_aim .content_aim .box .list li::before {
  background: #dc4f93;
}
.game_cg_movie_animation_world .section_aim .content_aim .box .list li::before {
  background: #52b489;
}
.section_aim .content_aim .box .work {
  font-size: 15px;
  line-height: 2;
  font-weight: 500;
  text-align: center;
}
.section_aim .content_aim .box .detail {
  width: auto;
  max-width: 850px;
  margin: 0 auto;
  font-size: 15px;
  line-height: 2;
  font-weight: 500;
}
@media screen and (max-width: 1070px) {
  .section_aim .content_aim .box .list li {
    width: 50%;
  }
  .section_aim .content_aim .box .work {
    text-align: left;
  }
}
@media only screen and (max-width: 800px) {
  .section_aim .content_aim {
    /*	
    年度更新
    .head.b_radius.color_[01] {	color: #[02];	border-radius: 5vw;	}
    */
  }
  .section_aim .content_aim .head {
    font-size: 4.5vw;
    padding: 3vw 0;
    border-radius: 5vw 5vw 0 0;
  }
  .section_aim .content_aim .head.b_radius {
    border-width: 1px;
  }
  .section_aim .content_aim .head.b_radius.color_super_technology_world {
    color: #e50111;
    border-radius: 5vw;
  }
  .section_aim .content_aim .head.b_radius.color_super_e_entertainment_world {
    color: #1d50a0;
    border-radius: 5vw;
  }
  .section_aim .content_aim .head.b_radius.color_ai_it_technology_world {
    color: #5ab431;
    border-radius: 5vw;
  }
  .section_aim .content_aim .head.b_radius.color_automotive_design_world {
    color: #f1b000;
    border-radius: 5vw;
  }
  .section_aim .content_aim .head.b_radius.color_design_world {
    color: #8f61a2;
    border-radius: 5vw;
  }
  .section_aim .content_aim .head.b_radius.color_manga_illustration_world {
    color: #dc4f93;
    border-radius: 5vw;
  }
  .section_aim .content_aim .head.b_radius.color_game_cg_movie_animation_world {
    color: #52b489;
    border-radius: 5vw;
  }
  .section_aim .content_aim .box {
    background: #fff;
    padding: 5vw;
    border-radius: 0 0 5vw 5vw;
  }
  .section_aim .content_aim .box .list {
    margin-top: 0;
  }
  .section_aim .content_aim .box .list li {
    font-size: 3vw;
    line-height: 1.3;
    padding-left: 4vw;
    margin-top: 1.5vw;
    font-weight: normal;
  }
  .section_aim .content_aim .box .list li:before {
    top: 0.9vw;
    width: 2vw;
    height: 2vw;
  }
  .section_aim .content_aim .box .work {
    font-size: 3vw;
    line-height: 1.8;
    font-weight: normal;
  }
  .section_aim .content_aim .box .detail {
    font-size: 3.2vw;
    line-height: 1.8;
    font-weight: normal;
  }
}
.section_aim .title {
  font-size: 18px;
  line-height: 1;
  font-weight: 600;
  text-align: center;
  padding: 30px 20px;
  padding-bottom: 25px;
  background: #fff;
  border: solid 1px #ccc;
  border-bottom: 0;
  color: #000;
  letter-spacing: 0.4em;
  border-radius: 20px 20px 0 0;
}
.section_aim .aim_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 40px;
  padding-top: 0;
  border: solid 1px #ccc;
  border-top: 0;
  border-radius: 0 0 20px 20px;
  background: rgba(255, 255, 255, 0.5);
}
.section_aim .aim_list li {
  width: 50%;
  font-size: 16px;
  line-height: 1.3;
  margin-top: 1.5em;
  position: relative;
  padding-left: 15px;
}
.section_aim .aim_list li::after {
  content: "";
  position: absolute;
  top: 5px;
  left: 0;
  margin: auto;
  width: 9px;
  height: 9px;
  background: #000;
  border-radius: 10px;
}
.section_aim .aim_list li.course {
  width: 100%;
  font-size: 18px;
  line-height: 1.3;
  margin-top: 1.5em;
  padding-left: 0;
  font-weight: 500;
  border-bottom: solid 1px #ddd;
  padding-bottom: 10px;
}
.section_aim .aim_list li.course::after {
  content: none;
}
.section_aim .aim_list li + .course {
  margin-top: 3em;
}
.super_technology_world .section_aim .aim_list li::after {
  background: #e50111 !important;
}
.super_e_entertainment_world .section_aim .aim_list li::after {
  background: #1d50a0 !important;
}
.ai_it_technology_world .section_aim .aim_list li::after {
  background: #5ab431 !important;
}
.automotive_design_world .section_aim .aim_list li::after {
  background: #f1b000 !important;
}
.design_world .section_aim .aim_list li::after {
  background: #8f61a2 !important;
}
.manga_illustration_world .section_aim .aim_list li::after {
  background: #dc4f93 !important;
}
.game_cg_movie_animation_world .section_aim .aim_list li::after {
  background: #52b489 !important;
}
.course_design_technology_advanced_diploma .section_aim .aim_list li::after {
  background: #e50111 !important;
}
.course_mechanical_designer_cg_advanced_diploma .section_aim .aim_list li::after {
  background: #e50111 !important;
}
.course_comic_illustration_advanced_diploma .section_aim .aim_list li::after {
  background: #e50111 !important;
}
.course_novel_scenario_advanced_diploma .section_aim .aim_list li::after {
  background: #e50111 !important;
}
.course_furniture_design_technology_advanced_diploma .section_aim .aim_list li::after {
  background: #e50111 !important;
}
.course_game_graphic_illustration_advanced_diploma .section_aim .aim_list li::after {
  background: #1d50a0 !important;
}
.course_game_programmer_planner_vr_advanced_diploma .section_aim .aim_list li::after {
  background: #1d50a0 !important;
}
.course_game_video_data_scientist_advanced_diploma .section_aim .aim_list li::after {
  background: #1d50a0 !important;
}
.course_vfx_cg_images_advanced_diploma .section_aim .aim_list li::after {
  background: #1d50a0 !important;
}
.course_animation_advanced_diploma .section_aim .aim_list li::after {
  background: #1d50a0 !important;
}
.course_ai_engineer_advanced_diploma .section_aim .aim_list li::after {
  background: #5ab431 !important;
}
.course_it_engineer_advanced_diploma .section_aim .aim_list li::after {
  background: #5ab431 !important;
}
.course_metaverse_designer_advanced_diploma .section_aim .aim_list li::after {
  background: #5ab431 !important;
}
.course_automotive_design_department .section_aim .aim_list li::after {
  background: #f1b000 !important;
}
.course_graphic_design .section_aim .aim_list li::after {
  background: #8f61a2 !important;
}
.course_digital_illustration_manga .section_aim .aim_list li::after {
  background: #dc4f93 !important;
}
.course_manga .section_aim .aim_list li::after {
  background: #dc4f93 !important;
}
.course_comic_illustration .section_aim .aim_list li::after {
  background: #dc4f93 !important;
}
.course_game_graphic_character .section_aim .aim_list li::after {
  background: #52b489 !important;
}
.course_game_programmer .section_aim .aim_list li::after {
  background: #52b489 !important;
}
.course_cg_creators .section_aim .aim_list li::after {
  background: #52b489 !important;
}
.course_animation .section_aim .aim_list li::after {
  background: #52b489 !important;
}
.course_video_picture_creators .section_aim .aim_list li::after {
  background: #52b489 !important;
}
@media screen and (max-width: 1220px) {
  .section_aim .section_aim {
    padding: 0;
  }
  .section_aim .content + .content {
    margin-top: 30px;
  }
}
@media screen and (max-width: 1070px) {
  .section_aim .title {
    font-size: 1.6;
    padding: 2vw 0;
  }
  .section_aim .aim_list li {
    font-size: 1.5vw;
    padding-left: 1vw;
  }
  .section_aim .aim_list li::after {
    top: 0.6vw;
    width: 0.5vw;
    height: 0.5vw;
  }
}
@media only screen and (max-width: 800px) {
  .section_aim .title {
    font-size: 4.2vw;
    padding: 5vw 0 4vw 0;
  }
  .section_aim .aim_list {
    padding: 3vw 5vw 3vw 5vw;
    margin-top: -2vw;
  }
  .section_aim .aim_list li {
    font-size: 3.2vw;
    line-height: 1.3;
    padding: 3vw 0;
    padding-left: 4vw;
    width: 100%;
    margin-top: 0vw;
  }
  .section_aim .aim_list li + li {
    border-top: solid 1px #ddd;
  }
  .section_aim .aim_list li::after {
    top: 4vw;
    width: 2vw;
    height: 2vw;
  }
}

/*--------------------------------------------------------------
	トップ、一覧
--------------------------------------------------------------*/
/*===============================================================

	block_calender_slider

===============================================================*/
.block_calender_slider {
  position: relative;
  margin-top: 30px;
  /* タブレット */
  /* for TABLET */
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
  /*-------------------------------------------------------------
  	table_calender	
  -------------------------------------------------------------*/
  /*-------------------------------------------------------------
  	.pager
  -------------------------------------------------------------*/
  /* SP */
  /* for SP */
  /*-------------------------------------------------------------
  	.pager a
  -------------------------------------------------------------*/
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
  /*-------------------------------------------------------------
  	calendar_caption	
  -------------------------------------------------------------*/
  /*-------------------------------------------------------------
  	block_calender_slider　ここまで	
  -------------------------------------------------------------*/
}
.block_calender_slider .month_title {
  color: #000;
  padding-bottom: 20px;
  text-align: center;
  font-size: 30px;
}
.block_calender_slider .calender_slider {
  overflow: hidden;
  width: 100%;
  border-bottom: solid 1px rgba(0, 0, 0, 0.1);
}
.block_calender_slider .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  overflow: hidden;
  -webkit-transition: all 0.6s;
  transition: all 0.6s;
}
.block_calender_slider .drag {
  position: absolute;
  left: 0;
  top: 0;
}
.block_calender_slider .slide {
  width: 100%;
}
@media screen and (max-width: 800px) {
  .block_calender_slider {
    margin-top: 0;
    padding-bottom: 5vw;
  }
  .block_calender_slider .month_title {
    padding-bottom: 3vw;
    font-size: 5vw;
    line-height: 10vw;
  }
  .block_calender_slider .pager {
    position: absolute;
    top: 2px;
  }
}
.block_calender_slider .table_calender {
  width: 100%;
  border-bottom: solid 1px #ddd;
  border-right: solid 1px #ddd;
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.block_calender_slider .table_calender td,
.block_calender_slider .table_calender th {
  text-align: center;
  width: 14.2857142857%;
  border-top: solid 1px #ddd;
  border-left: solid 1px #ddd;
  background: #fff;
  padding: 0;
  color: #000;
  font-weight: bold;
  padding: 15px 0;
  min-height: 100px;
  position: relative;
}
.block_calender_slider .table_calender .event {
  padding: 0;
  position: relative;
}
.block_calender_slider .table_calender .event > a {
  display: block;
  padding: 15px 0;
  color: #000;
  background: #FFFFDF;
}
.block_calender_slider .table_calender .event a:hover {
  background: #ff0;
  text-decoration: none;
}
.block_calender_slider .table_calender tr th:last-child,
.block_calender_slider .table_calender tr td:last-child {
  color: #0E7CC1;
}
.block_calender_slider .table_calender tr th:last-child a,
.block_calender_slider .table_calender tr td:last-child a {
  color: #0E7CC1;
}
.block_calender_slider .table_calender .holiday,
.block_calender_slider .table_calender tr td.holiday:last-child,
.block_calender_slider .table_calender tr th:nth-child(1),
.block_calender_slider .table_calender tr td:nth-child(1) {
  color: #FD004E;
}
.block_calender_slider .table_calender .holiday a,
.block_calender_slider .table_calender tr td.holiday:last-child a,
.block_calender_slider .table_calender tr th:nth-child(1) a,
.block_calender_slider .table_calender tr td:nth-child(1) a {
  color: #FD004E;
}
.block_calender_slider .table_calender .blank,
.block_calender_slider .table_calender .close {
  background: #f5f5f5;
}
.block_calender_slider .table_calender .blank .cap,
.block_calender_slider .table_calender .close .cap {
  font-weight: normal;
  line-height: 25px;
  margin-top: 10px;
  color: #000;
}
.block_calender_slider .table_calender .blank {
  background: #E8E8E8;
}
.block_calender_slider .table_calender .past {
  background: #E8E8E8;
  background-image: linear-gradient(-45deg, #fff 25%, #eee 25%, #eee 50%, #fff 50%, #fff 75%, #eee 75%, #eee);
  background-size: 4px 4px;
  color: rgba(0, 0, 0, 0.3);
}
.block_calender_slider .table_calender .past a {
  opacity: 0.3;
  pointer-events: none;
  background: none;
}
.block_calender_slider .table_calender tr td.past:nth-child(1) {
  color: rgba(253, 0, 78, 0.3);
}
.block_calender_slider .table_calender tr td.past:nth-child(1) a {
  color: rgba(253, 0, 78, 0.3);
}
.block_calender_slider .table_calender tr td.past:last-child {
  color: rgba(14, 124, 193, 0.3);
}
.block_calender_slider .table_calender tr td.past:last-child a {
  color: rgba(14, 124, 193, 0.3);
}
.block_calender_slider .table_calender thead th {
  background: #333;
  color: #fff;
  border-top: solid 1px #333;
  border-left: solid 1px #555;
}
.block_calender_slider .table_calender .bus a {
  position: relative;
}
.block_calender_slider .table_calender .bus a::after {
  content: "";
  position: absolute;
  top: 5px;
  right: 5px;
  margin: auto;
  width: 15px;
  height: 15px;
  background-image: url(/open-cumpas/common/images/assets/icon_bus_red.svg);
  background-size: cover;
  background-repeat: no-repeat;
}
@media screen and (max-width: 800px) {
  .block_calender_slider .table_calender td,
  .block_calender_slider .table_calender th {
    font-size: 4vw;
  }
  .block_calender_slider .table_calender .blank .cap,
  .block_calender_slider .table_calender .close .cap {
    line-height: 1.2;
    margin-top: 10px;
  }
  .block_calender_slider .table_calender thead th {
    padding: 2vw 0;
  }
  .block_calender_slider .table_calender tbody td,
  .block_calender_slider .table_calender .day,
  .block_calender_slider .table_calender .sun,
  .block_calender_slider .table_calender .close,
  .block_calender_slider .table_calender .event,
  .block_calender_slider .table_calender .blank,
  .block_calender_slider .table_calender .past {
    padding: 3vw 0;
  }
  .block_calender_slider .table_calender .event {
    padding: 0;
  }
  .block_calender_slider .table_calender .event a {
    padding: 3vw 0;
  }
  .block_calender_slider .table_calender .bus a::after {
    top: 2px;
    right: 2px;
    width: 3.5vw;
    height: 3.5vw;
  }
}
.block_calender_slider .pager {
  position: absolute;
  top: 5px;
  z-index: 10;
}
.block_calender_slider .pager a {
  color: rgba(0, 0, 0, 0);
}
.block_calender_slider .prev {
  left: 10px;
}
.block_calender_slider .next {
  right: 10px;
}
.block_calender_slider .deactive {
  pointer-events: none;
  opacity: 0.2;
}
@media screen and (max-width: 800px) {
  .block_calender_slider .pager {
    top: 0;
  }
  .block_calender_slider .prev {
    left: 0;
  }
  .block_calender_slider .next {
    right: 0;
  }
}
.block_calender_slider .pager a {
  display: block;
  width: 30px;
  height: 30px;
  border: solid 1px #000;
  border-radius: 50px;
  overflow: hidden;
  text-indent: -200%;
  position: relative;
}
.block_calender_slider .pager a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.block_calender_slider .next a::before {
  right: 0;
  left: 0;
  border: solid 1px #000;
  width: 8px;
  height: 8px;
  border-top: none;
  border-left: none;
  -webkit-transform: rotate(-45deg) translate(-1px, -1px);
          transform: rotate(-45deg) translate(-1px, -1px);
}
.block_calender_slider .next a::after {
  right: 18px;
  width: 14px;
  height: 2px;
  background-color: #fff;
}
.block_calender_slider .prev a::before {
  right: 0;
  left: 0;
  border: solid 1px #000;
  width: 8px;
  height: 8px;
  border-top: none;
  border-left: none;
  -webkit-transform: rotate(135deg) translate(-1px, -1px);
          transform: rotate(135deg) translate(-1px, -1px);
}
.block_calender_slider .prev a::after {
  left: 18px;
  width: 14px;
  height: 2px;
  background-color: #fff;
}
.block_calender_slider .pager a:hover {
  opacity: 0.7;
}
@media screen and (max-width: 800px) {
  .block_calender_slider .pager a {
    width: 8vw;
    height: 8vw;
  }
  .block_calender_slider .next a::before {
    width: 6px;
    height: 6px;
  }
  .block_calender_slider .next a::after {
    right: 12px;
    width: 10px;
  }
  .block_calender_slider .prev a::before {
    width: 6px;
    height: 6px;
  }
  .block_calender_slider .prev a::after {
    left: 12px;
    width: 10px;
  }
  .block_calender_slider .next:hover a::before {
    right: 8px;
  }
  .block_calender_slider .next:hover a::after {
    right: 10px;
  }
  .block_calender_slider .prev:hover a::before {
    left: 8px;
  }
  .block_calender_slider .prev:hover a::after {
    left: 10px;
  }
}
.block_calender_slider .calendar_caption {
  margin-top: 15px;
  font-size: 14px;
  line-height: 20px;
  position: relative;
  padding-left: 30px;
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.block_calender_slider .calendar_caption::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
  margin: auto;
  display: block;
  background: #FFFFDF;
  border: solid 1px #ddd;
  width: 20px;
  height: 20px;
  margin-right: 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.block_calender_slider .calendar_caption .bus_info {
  padding-left: 15px;
}
.block_calender_slider .calendar_caption .bus_info img {
  width: 19px;
  height: auto;
  margin-right: 5px;
}
.block_calender_slider .calendar_caption .bus_info a {
  color: #000;
  text-decoration: underline;
}
.block_calender_slider .calendar_caption .bus_info a:hover {
  color: #ff4e4e;
}
@media screen and (max-width: 800px) {
  .block_calender_slider .calendar_caption {
    margin-top: 3vw;
    font-size: 3.5vw;
    line-height: 5vw;
    padding-left: 7vw;
  }
  .block_calender_slider .calendar_caption::after {
    width: 5vw;
    height: 5vw;
    margin-right: 0;
  }
  .block_calender_slider .calendar_caption .bus_info {
    padding-left: 5vw;
  }
  .block_calender_slider .calendar_caption .bus_info img {
    width: 5vw;
    margin-right: 2vw;
  }
}

/*===============================================================

	section_bnr_area_01　バナーエリア01

===============================================================*/
.section_bnr_area_01 {
  background: #ff4e4e;
}

.section_bnr_area_01 .section_inner {
  padding-top: 70px;
  padding-bottom: 70px;
}

/* $width_content以下 */
@media screen and (max-width: 1000px) {
  .section_bnr_area_01 .section_inner {
    padding-top: 50px;
    padding-bottom: 50px;
  }
} /*  max-width: $width_content */
/* タブレット以下 */
/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_bnr_area_01 .section_inner {
    padding-top: 5vw;
    padding-bottom: 5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	bnr_area_01
-------------------------------------------------------------*/
.bnr_area_01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.bnr_area_01 .bnr {
  width: calc((100% - 30px) / 2);
}

.bnr_area_01 .bnr:nth-child(odd) {
  margin-left: 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .bnr_area_01 .bnr {
    width: 100%;
  }
  .bnr_area_01 .bnr + .bnr {
    margin-top: 15px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	bnr_area_02
-------------------------------------------------------------*/
.bnr_area_02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.bnr_area_02 .bnr {
  width: calc((100% - 30px) / 2);
}

/*
.bnr_area_02 .bnr:nth-child(odd) {
	margin-left: 0;
}
*/
.bnr_area_02 .bnr:nth-child(n+3) {
  margin-top: 20px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～800xpx */
@media only screen and (max-width: 800px) {
  .bnr_area_02 .bnr {
    width: 100%;
  }
  .bnr_area_02 .bnr + .bnr {
    margin-top: 15px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	section_bus_info

===============================================================*/
.section_bus_info {
  background: #fff;
  /* SP向けレイアウトの指定：～$width_sp */
  /* for SP max-width: $width_sp */
}
.section_bus_info .section_inner {
  padding-top: 70px;
  padding-bottom: 70px;
}
@media only screen and (max-width: 800px) {
  .section_bus_info .section_inner {
    padding-top: 5vw;
    padding-bottom: 5vw;
  }
}

/*-------------------------------------------------------------
	btn_bus
-------------------------------------------------------------*/
.btn_bus {
  max-width: 400px;
  margin: 0 auto;
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.btn_bus a {
  font-size: 20px;
  line-height: 1.5;
  padding: 20px;
  text-align: center;
  display: block;
  background: #fff000;
  color: #000;
  font-weight: bold;
}
.btn_bus a:hover {
  text-decoration: none;
  background: #ff0;
}
@media screen and (max-width: 800px) {
  .btn_bus a {
    font-size: 5vw;
    line-height: 1.5;
    padding: 5vw 0;
  }
}

/*===============================================================

	2023/6/1
	section_event_top_kv

===============================================================*/
.section_event_top_kv {
  /* タブレット */
  /* for TABLET */
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.section_event_top_kv .event_top_kv {
  /*
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items: center;
  */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 50px;
}
.section_event_top_kv .event_top_kv .title {
  width: 58%;
  /*
  width: 90%;
  margin: 0 auto;
  */
}
.section_event_top_kv .event_top_kv .bnr_block {
  width: 38%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  text-align: center;
  /*
  margin: 40px -20px 0;
  justify-content: center;
  */
  /*
  .bnr_movie,
  .bnr_guidance {
  	width: 40%;
  	margin: 0 20px;
  }
  */
}
.section_event_top_kv .event_top_kv .bnr_block img {
  border-radius: 5px;
  overflow: hidden;
}
.section_event_top_kv .event_top_kv .bnr_block a {
  color: #000;
  display: block;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.section_event_top_kv .event_top_kv .bnr_block a:hover {
  -webkit-transform: scale(1.03);
          transform: scale(1.03);
  text-decoration: none;
}
.section_event_top_kv .event_top_kv .bnr_block .txt {
  margin-top: 5px;
  font-size: 75%;
}
.section_event_top_kv .event_top_kv .bnr_block .bnr_guidance,
.section_event_top_kv .event_top_kv .bnr_block .bnr_movie {
  margin-top: 10px;
}
.section_event_top_kv .event_top_kv .bnr_block .bnr_guidance .pc_tablet,
.section_event_top_kv .event_top_kv .bnr_block .bnr_movie .pc_tablet {
  display: inline;
}
@media screen and (max-width: 1300px) {
  .section_event_top_kv .event_top_kv {
    padding: 50px 50px 0 50px;
    /*
    .title {
    	width: 100%;
    }
    */
  }
}
@media screen and (max-width: 1000px) {
  .section_event_top_kv .event_top_kv {
    padding: 30px 30px 0 30px;
  }
  .section_event_top_kv .bnr_movie .pc_tablet {
    display: inline;
  }
}
@media screen and (max-width: 800px) {
  .section_event_top_kv .event_top_kv {
    padding: 5vw;
    padding-bottom: 0;
  }
  .section_event_top_kv .event_top_kv .title {
    width: 100%;
  }
  .section_event_top_kv .event_top_kv .bnr_block {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    width: 100%;
    text-align: center;
    margin: 0 auto;
    margin-top: 3vw;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    /*
    display:flex;
    flex-direction:row;
    flex-wrap:wrap;
    */
  }
  .section_event_top_kv .event_top_kv .bnr_block .bnr_movie,
  .section_event_top_kv .event_top_kv .bnr_block .bnr_guidance {
    width: calc((100% - 3vw) / 2);
    margin: 0;
    margin-top: 3vw;
  }
  .section_event_top_kv .event_top_kv .bnr_block .bnr_movie .pc_tablet,
  .section_event_top_kv .event_top_kv .bnr_block .bnr_guidance .pc_tablet {
    display: none;
  }
  .section_event_top_kv .event_top_kv .bnr_block img {
    border-radius: 2vw;
    overflow: hidden;
  }
  .section_event_top_kv .event_top_kv .bnr_block .txt {
    margin-top: 1vw;
    font-size: 3.2vw;
  }
}

/*===============================================================

	2023/6/1
	section_event_wrp

===============================================================*/
.section_event_wrp {
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
  /*-------------------------------------------------------------
  	btn_remove_filters	
  -------------------------------------------------------------*/
  /*-------------------------------------------------------------
  	btn_open_close	
  -------------------------------------------------------------*/
  /*-------------------------------------------------------------
  	eventlist_header	
  -------------------------------------------------------------*/
  /*-------------------------------------------------------------
  	eventlist_body	
  -------------------------------------------------------------*/
  /*===============================================================

  	event_list

  ===============================================================*/
  /*===============================================================

  	event_item

  ===============================================================*/
  /*===============================================================

  	event_list_pickup

  ===============================================================*/
  /*===============================================================

  	event_genre_list

  ===============================================================*/
  /*===============================================================

  	event_type_list

  ===============================================================*/
  /*===============================================================

  	詳細ページ用	section_event_list_recomend

  ===============================================================*/
  /*-------------------------------------------------------------
  	section_event_list_result	
  -------------------------------------------------------------*/
  /*-------------------------------------------------------------
  	section_event_wrp ここまで	
  -------------------------------------------------------------*/
}
.section_event_wrp a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.section_event_wrp a:hover {
  text-decoration: none;
}
.section_event_wrp * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.section_event_wrp .section_event_list + .section_event_list .section_inner {
  padding-top: 0;
}
@media screen and (max-width: 800px) {
  .section_event_wrp .section_event_list + .section_event_list .section_inner {
    padding-top: 0vw;
    padding-bottom: 0vw;
  }
  .section_event_wrp .section_event_list_result {
    padding-bottom: 10vw;
  }
  .section_event_wrp .section_event_list_recomend .eventlist_header {
    min-height: inherit;
    padding-bottom: 3vw;
  }
  .section_event_wrp .section_event_top_kv + .section_event_list_pickup .section_inner {
    padding-top: 5vw;
  }
}
.section_event_wrp .btn_remove_filters {
  width: 220px;
  margin: 0 auto;
  margin-top: 50px;
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.section_event_wrp .btn_remove_filters a {
  background: #333;
  display: block;
  position: relative;
  padding: 15px;
  font-size: 18px;
  line-height: 1;
  color: #fff;
  border-radius: 50px;
  text-align: center;
}
.section_event_wrp .btn_remove_filters a:hover {
  background: #ed4b4b;
}
.section_event_wrp .btn_remove_filters a::before,
.section_event_wrp .btn_remove_filters a::after {
  content: "";
  width: 20px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  margin: auto;
}
.section_event_wrp .btn_remove_filters a::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.section_event_wrp .btn_remove_filters a::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.section_event_wrp .btn_open_close {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  -webkit-transform: translateY(-3px);
          transform: translateY(-3px);
  z-index: 2;
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.section_event_wrp .btn_open_close a {
  display: block;
  width: 50px;
  height: 50px;
  border-radius: 50px;
  position: relative;
  background: #fafafa;
  border: solid 1px #ff4e4e;
}
.section_event_wrp .btn_open_close a::before,
.section_event_wrp .btn_open_close a::after {
  content: "";
  width: 20px;
  height: 2px;
  background: #ff4e4e;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  margin: auto;
}
.section_event_wrp .btn_open_close a::after {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
}
.section_event_wrp .btn_open_close.open a::after {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}
@media screen and (max-width: 800px) {
  .section_event_wrp .btn_open_close {
    display: block;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    width: 8vw;
    height: 8vw;
  }
  .section_event_wrp .btn_open_close a {
    width: 8vw;
    height: 8vw;
  }
  .section_event_wrp .btn_open_close a::before,
  .section_event_wrp .btn_open_close a::after {
    width: 5vw;
    height: 2px;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
  }
}
.section_event_wrp .eventlist_header {
  position: relative;
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.section_event_wrp .eventlist_header::before {
  content: "";
  width: 100%;
  height: 1px;
  background: #ff4e4e;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 1;
}
.section_event_wrp .eventlist_header .title {
  position: relative;
  display: inline-block;
  color: #ff4e4e;
  font-size: 35px;
  line-height: 1.2;
  background: #f7f7f7;
  z-index: 2;
  padding-right: 0.5em;
}
.section_event_wrp .eventlist_header .btn_remove_filters {
  width: 170px;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  z-index: 3;
}
.section_event_wrp .eventlist_header .btn_remove_filters a {
  padding: 10px 15px;
  text-align: left;
}
@media screen and (max-width: 1300px) {
  .section_event_wrp .eventlist_header .title {
    font-size: 35px;
  }
  .section_event_wrp .eventlist_header .btn_remove_filters {
    top: -0.7vw;
    bottom: auto;
    width: 50px;
    height: 50px;
  }
  .section_event_wrp .eventlist_header .btn_remove_filters a {
    width: 50px;
    height: 50px;
    padding: 0;
    text-align: left;
    overflow: hidden;
    text-indent: 200%;
    white-space: nowrap;
  }
}
@media screen and (max-width: 800px) {
  .section_event_wrp .eventlist_header {
    padding-right: 10vw;
    padding-top: 0vw;
    min-height: 15vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .section_event_wrp .eventlist_header::before {
    top: 0;
    bottom: auto;
  }
  .section_event_wrp .eventlist_header .title {
    font-size: 4.5vw;
  }
  .section_event_wrp .eventlist_header .btn_remove_filters {
    top: 5vw;
    width: 8vw;
    height: 8vw;
  }
  .section_event_wrp .eventlist_header .btn_remove_filters a {
    width: 8vw;
    height: 8vw;
  }
  .section_event_wrp .eventlist_header .btn_remove_filters a::before,
  .section_event_wrp .eventlist_header .btn_remove_filters a::after {
    width: 5vw;
    height: 2px;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
  }
}
.section_event_wrp .eventlist_body {
  margin-top: 50px;
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
@media screen and (max-width: 800px) {
  .section_event_wrp .eventlist_body {
    margin-top: 0vw;
    padding-bottom: 5vw;
  }
}
.section_event_wrp .event_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -50px;
  margin-left: -30px;
  width: calc(100% + 30px);
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.section_event_wrp .event_list .event_item {
  width: calc((100% - 90px) / 3);
  margin-top: 50px;
  margin-left: 30px;
}
@media screen and (max-width: 1000px) {
  .section_event_wrp .event_list {
    width: calc(100% + 30px);
  }
  .section_event_wrp .event_list .event_item {
    width: calc((100% - 60px) / 2);
    margin-top: 50px;
    margin-left: 30px;
  }
}
@media screen and (max-width: 800px) {
  .section_event_wrp .event_list {
    margin-top: -8vw;
    margin-left: 0;
    width: 100%;
  }
  .section_event_wrp .event_list .event_item:nth-child(3n),
  .section_event_wrp .event_list .event_item {
    width: 100%;
    margin-top: 8vw;
    margin-left: 0;
  }
}
.section_event_wrp .event_item {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
  /* タブレット */
  /* for TABLET */
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.section_event_wrp .event_item.hover .detail_link a {
  color: #000;
}
.section_event_wrp .event_item.hover .detail_link a::after {
  background: #000;
  width: 100%;
}
.section_event_wrp .event_item .txt {
  margin-top: 15px;
}
.section_event_wrp .event_item .txt .title {
  font-size: 20px;
  line-height: 1.4;
}
.section_event_wrp .event_item .txt .lead {
  font-size: 14px;
  line-height: 1.3;
  margin-top: 15px;
}
.section_event_wrp .event_item .date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 15px;
}
.section_event_wrp .event_item .date .label {
  width: 60px;
  text-align: center;
  padding: 5px 0 4px 0;
  border: solid 1px #ff4e4e;
  color: #ff4e4e;
  font-size: 14px;
  line-height: 1;
}
.section_event_wrp .event_item .date .day {
  width: calc(100% - 70px);
  font-size: 14px;
  line-height: 1;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  word-break: break-all;
}
.section_event_wrp .event_item .btns {
  margin-top: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  overflow: hidden;
  border-radius: 30px;
}
.section_event_wrp .event_item .btns [class^=btn_] {
  width: 100%;
}
.section_event_wrp .event_item .btns [class^=btn_] a {
  text-align: center;
  display: block;
  color: #fff;
  font-size: 14px;
  line-height: 2;
  padding: 5px 0;
}
.section_event_wrp .event_item .btns .btn_form a {
  background: #ff4e4e;
}
.section_event_wrp .event_item .btns .btn_form a:hover {
  background: #ed4b4b;
}
.section_event_wrp .event_item .btns .btn_line a {
  background: #00bc26;
}
.section_event_wrp .event_item .btns .btn_line a:hover {
  background: #00ad23;
}
.section_event_wrp .event_item .detail_link {
  text-align: center;
  margin-top: 15px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.section_event_wrp .event_item .detail_link a {
  color: #666;
  display: inline-block;
  position: relative;
  padding-bottom: 5px;
  font-size: 15px;
}
.section_event_wrp .event_item .detail_link a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  bottom: 0;
  width: 20px;
  height: 1px;
  background: #666;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.section_event_wrp .event_item .detail_link a:hover {
  color: #ff4e4e;
  color: #000;
}
.section_event_wrp .event_item .detail_link a:hover::after {
  background: #ff4e4e;
  background: #000;
  width: 100%;
}
@media screen and (max-width: 1400px) {
  .section_event_wrp .event_item .btns [class^=btn_] a {
    font-size: 1.1vw;
  }
}
@media screen and (max-width: 1000px) {
  .section_event_wrp .event_item .btns [class^=btn_] a {
    font-size: 1.5vw;
  }
}
@media screen and (max-width: 800px) {
  .section_event_wrp .event_item .txt {
    margin-top: 3vw;
  }
  .section_event_wrp .event_item .txt .title {
    font-size: 4.5vw;
  }
  .section_event_wrp .event_item .txt .lead {
    font-size: 4vw;
    margin-top: 2vw;
  }
  .section_event_wrp .event_item .date {
    margin-top: 3vw;
  }
  .section_event_wrp .event_item .date .label {
    width: 12vw;
    text-align: center;
    padding: 1.5vw 0 1vw 0;
    font-size: 3.5vw;
  }
  .section_event_wrp .event_item .date .day {
    width: calc(100% - 15vw);
    font-size: 4vw;
  }
  .section_event_wrp .event_item .date .day .sp {
    display: none;
  }
  .section_event_wrp .event_item .btns {
    margin-top: 3vw;
  }
  .section_event_wrp .event_item .btns [class^=btn_] a {
    font-size: 3.5vw;
    padding: 2vw 0;
  }
  .section_event_wrp .event_item .detail_link {
    margin-top: 2vw;
  }
  .section_event_wrp .event_item .detail_link a {
    font-size: 4vw;
  }
}
@media screen and (max-width: 800px) {
  .section_event_wrp .event_list_pickup {
    margin-top: -5vw;
  }
}
.section_event_wrp .event_list_pickup .event_item {
  /* SP */
  /* for SP */
}
@media screen and (max-width: 800px) {
  .section_event_wrp .event_list_pickup .event_item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-top: 5vw;
    margin-top: 5vw;
    border-top: dashed 1px #555;
  }
  .section_event_wrp .event_list_pickup .event_item .thumb {
    width: 43%;
  }
  .section_event_wrp .event_list_pickup .event_item .txt {
    width: 53%;
    margin-top: 0;
  }
  .section_event_wrp .event_list_pickup .event_item .txt .title {
    font-size: 4vw;
  }
  .section_event_wrp .event_list_pickup .event_item .txt .lead {
    font-size: 3.5vw;
    line-height: 1.5;
    margin-top: 2vw;
  }
  .section_event_wrp .event_list_pickup .event_item .date,
  .section_event_wrp .event_list_pickup .event_item .btns,
  .section_event_wrp .event_list_pickup .event_item .detail_link {
    width: 100%;
  }
}
.section_event_wrp .event_genre_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -20px;
  /* タブレット */
  /* for TABLET */
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
  /* バリエーション*/
}
.section_event_wrp .event_genre_list .item {
  width: calc((100% - 60px) / 4);
  margin-top: 20px;
  margin-right: 20px;
  background-image: url("/course2024/common/images/thumbnail/thumb_3dcg_creator.jpg");
  background-size: cover;
  border-radius: 10px;
  overflow: hidden;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  will-change: transform;
}
.section_event_wrp .event_genre_list .item a {
  display: block;
  padding: 20px;
  color: #fff;
  border-radius: 10px;
  overflow: hidden;
  min-height: 180px;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
  position: relative;
  z-index: 1;
}
.section_event_wrp .event_genre_list .item a::after {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.8)), to(rgba(0, 0, 0, 0.5)));
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.5) 100%);
  z-index: -1;
  opacity: 0.7;
}
.section_event_wrp .event_genre_list .item .title {
  font-size: 16px;
  line-height: 1.4;
}
.section_event_wrp .event_genre_list .item .label {
  display: inline-block;
  background: #ff4e4e;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1;
  border-radius: 50px;
  margin-top: 10px;
}
.section_event_wrp .event_genre_list .item a:hover::after {
  opacity: 1;
}
.section_event_wrp .event_genre_list .item p {
  font-size: 12px;
  line-height: 1.5;
  margin-top: 15px;
}
.section_event_wrp .event_genre_list .item:nth-child(4n) {
  margin-right: 0;
}
@media screen and (max-width: 1400px) {
  .section_event_wrp .event_genre_list .item:nth-child(4n),
  .section_event_wrp .event_genre_list .item {
    width: calc((100% - 40px) / 3);
    margin-right: 20px;
  }
  .section_event_wrp .event_genre_list .item:nth-child(3n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 1000px) {
  .section_event_wrp .event_genre_list .item:nth-child(3n),
  .section_event_wrp .event_genre_list .item:nth-child(4n),
  .section_event_wrp .event_genre_list .item {
    width: calc((100% - 20px) / 2);
    margin-right: 20px;
  }
  .section_event_wrp .event_genre_list .item:nth-child(3n) a,
  .section_event_wrp .event_genre_list .item:nth-child(4n) a,
  .section_event_wrp .event_genre_list .item a {
    min-height: 130px;
  }
  .section_event_wrp .event_genre_list .item:nth-child(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 800px) {
  .section_event_wrp .event_genre_list {
    margin-top: -1px;
  }
  .section_event_wrp .event_genre_list .item:nth-child(3n),
  .section_event_wrp .event_genre_list .item:nth-child(4n),
  .section_event_wrp .event_genre_list .item {
    width: calc((100% - 6vw) / 2);
    margin-right: 3vw;
    width: 100%;
    margin-right: 0;
    margin-top: 1px;
    background-position: center -14vw;
    border-radius: 2vw;
  }
  .section_event_wrp .event_genre_list .item:nth-child(3n) a,
  .section_event_wrp .event_genre_list .item:nth-child(4n) a,
  .section_event_wrp .event_genre_list .item a {
    border-radius: 2vw;
    padding: 3vw;
    min-height: 20vw;
  }
  .section_event_wrp .event_genre_list .item:nth-child(3n) .title,
  .section_event_wrp .event_genre_list .item:nth-child(4n) .title,
  .section_event_wrp .event_genre_list .item .title {
    font-size: 4vw;
  }
  .section_event_wrp .event_genre_list .item:nth-child(3n) .label,
  .section_event_wrp .event_genre_list .item:nth-child(4n) .label,
  .section_event_wrp .event_genre_list .item .label {
    padding: 1vw 1vw;
    font-size: 2.5vw;
    margin-top: 2vw;
    border-radius: 1vw;
  }
  .section_event_wrp .event_genre_list .item:nth-child(3n) p,
  .section_event_wrp .event_genre_list .item:nth-child(4n) p,
  .section_event_wrp .event_genre_list .item p {
    font-size: 2.5vw;
    line-height: 1.4;
    margin-top: 3vw;
    padding-left: 20vw;
    margin-top: -5vw;
  }
  .section_event_wrp .event_genre_list .item:nth-child(2n) {
    margin-right: 0;
  }
}
.section_event_wrp .event_genre_list .genre_illustration {
  background-image: url("/course2024/common/images/thumbnail/thumb_comic_illustration_advanced_diploma.jpg");
}
.section_event_wrp .event_genre_list .genre_game_graphics {
  background-image: url("/course2024/common/images/thumbnail/thumb_game_graphic_illustration_advanced_diploma.jpg");
}
.section_event_wrp .event_genre_list .genre_game_development {
  background-image: url("/course2024/common/images/thumbnail/thumb_game_programmer.jpg");
}
.section_event_wrp .event_genre_list .genre_design {
  background-image: url("/course2024/common/images/thumbnail/thumb_graphic_design.jpg");
}
.section_event_wrp .event_genre_list .genre_mechanical_design {
  background-image: url("/course2024/common/images/thumbnail/thumb_mechanical_designer_cg_advanced_diploma.jpg");
}
.section_event_wrp .event_genre_list .genre_vfx_cg_video {
  background-image: url("/course2024/common/images/thumbnail/thumb_vfx_cg_images_advanced_diploma.jpg");
}
.section_event_wrp .event_genre_list .genre_novels {
  background-image: url("/course2024/common/images/thumbnail/thumb_novel_scenario_advanced_diploma.jpg");
}
.section_event_wrp .event_genre_list .genre_animation {
  background-image: url("/course2024/common/images/thumbnail/thumb_animation_advanced_diploma.jpg");
}
.section_event_wrp .event_genre_list .genre_engineer {
  background-image: url("/course2024/common/images/thumbnail/thumb_ai_engineer_advanced_diploma.jpg");
}
.section_event_wrp .event_genre_list .genre_product_interior {
  background-image: url("/course2024/common/images/thumbnail/thumb_furniture_design_technology_advanced_diploma.jpg");
}
.section_event_wrp .event_genre_list .genre_car {
  background-image: url("/course2024/common/images/thumbnail/thumb_car_design.jpg");
}
.section_event_wrp .event_type_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -20px;
  /* タブレット */
  /* for TABLET */
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.section_event_wrp .event_type_list .item {
  width: calc((100% - 60px) / 4);
  margin-top: 20px;
  margin-right: 20px;
}
.section_event_wrp .event_type_list .item a {
  display: block;
  background: #fff;
  text-align: center;
  border: solid 2px #ff4e4e;
  color: #333;
  font-weight: bold;
  font-size: 18px;
  border-radius: 10px;
  min-height: 120px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.section_event_wrp .event_type_list .item a:hover {
  background: rgba(255, 78, 78, 0.1);
}
.section_event_wrp .event_type_list .item strong {
  display: block;
  margin-top: 5px;
  color: #ff4e4e;
  font-size: 12px;
}
.section_event_wrp .event_type_list .item:nth-child(4n) {
  margin-right: 0;
}
@media screen and (max-width: 1400px) {
  .section_event_wrp .event_type_list .item a {
    font-size: 1.55vw;
    min-height: 8.57vw;
  }
  .section_event_wrp .event_type_list .item strong {
    margin-top: 0.36vw;
    font-size: 0.95vw;
  }
}
@media screen and (max-width: 1000px) {
  .section_event_wrp .event_type_list .item:nth-child(4n),
  .section_event_wrp .event_type_list .item {
    width: calc((100% - 20px) / 2);
    margin-top: 20px;
    margin-right: 20px;
  }
  .section_event_wrp .event_type_list .item:nth-child(4n) a,
  .section_event_wrp .event_type_list .item a {
    font-size: 2.5vw;
    min-height: 14vw;
  }
  .section_event_wrp .event_type_list .item:nth-child(4n) strong,
  .section_event_wrp .event_type_list .item strong {
    margin-top: 0.36vw;
    font-size: 1.8vw;
  }
  .section_event_wrp .event_type_list .item:nth-child(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 800px) {
  .section_event_wrp .event_type_list {
    margin-top: -3vw;
  }
  .section_event_wrp .event_type_list .item:nth-child(4n),
  .section_event_wrp .event_type_list .item {
    width: calc((100% - 6vw) / 2);
    margin-top: 3vw;
    margin-right: 3vw;
  }
  .section_event_wrp .event_type_list .item:nth-child(4n) a,
  .section_event_wrp .event_type_list .item a {
    font-size: 3.5vw;
    min-height: 20vw;
  }
  .section_event_wrp .event_type_list .item:nth-child(4n) strong,
  .section_event_wrp .event_type_list .item strong {
    margin-top: 1vw;
    font-size: 2.5vw;
  }
  .section_event_wrp .event_type_list .item:nth-child(2n) {
    margin-right: 0;
  }
}
.section_event_wrp .section_event_list_recomend {
  background: #fafafa;
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.section_event_wrp .section_event_list_recomend .eventlist_header {
  text-align: center;
}
.section_event_wrp .section_event_list_recomend .eventlist_header::before {
  display: none;
}
.section_event_wrp .section_event_list_recomend .eventlist_header .title {
  padding: 0;
}
.section_event_wrp .section_event_list_recomend + .section_bnr_area_02 {
  background: #fff;
}
.section_event_wrp .section_event_list_recomend + .section_bnr_area_02 .section_inner {
  padding: 50px 0;
}
@media screen and (max-width: 800px) {
  .section_event_wrp .section_event_list_recomend .eventlist_header {
    text-align: center;
    padding: 0;
    padding-bottom: 5vw;
  }
  .section_event_wrp .section_event_list_recomend .eventlist_header .title {
    text-align: center;
    margin: 0 auto;
    font-size: 6vw;
  }
  .section_event_wrp .section_event_list_recomend + .section_bnr_area_02 .section_inner {
    padding: 3vw;
  }
}
.section_event_wrp .section_event_list_result {
  /* タブレット */
  /* for TABLET */
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.section_event_wrp .section_event_list_result .eventlist_header {
  padding-right: 10em;
}
@media screen and (max-width: 1300px) {
  .section_event_wrp .section_event_list_result .eventlist_header {
    padding-right: 2em;
  }
}
/*===============================================================

	一覧ページ用	genle_name

===============================================================*/
.genle_name {
  line-height: 1;
}

/*===============================================================

	section_event_top_movie

===============================================================*/
.section_event_top_movie {
  margin-top: -20px;
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.section_event_top_movie .section_inner {
  padding-top: 0;
}
.section_event_top_movie .block_youtube {
  text-align: center;
}
.section_event_top_movie .block_youtube .title {
  font-size: 25px;
}
.section_event_top_movie .block_youtube .youtube {
  margin-top: 20px;
}
@media screen and (max-width: 800px) {
  .section_event_top_movie {
    margin-top: 0;
  }
  .section_event_top_movie .block_youtube .title {
    font-size: 4.5vw;
  }
  .section_event_top_movie .block_youtube .youtube {
    margin-top: 3vw;
  }
}

/*--------------------------------------------------------------
	詳細ページ
--------------------------------------------------------------*/
/*===============================================================

	section_event_entry

===============================================================*/
.section_event_entry {
  background: #fff;
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
  /*-------------------------------------------------------------
  	btn_block	
  -------------------------------------------------------------*/
}
.section_event_entry .title_block {
  text-align: center;
}
.section_event_entry .title_block .title {
  font-size: 30px;
  line-height: 1;
}
.section_event_entry .event_data {
  padding: 50px;
  margin-top: 30px;
  background: #f0f0f0;
  border-radius: 30px;
}
.section_event_entry .event_data .flex_container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #fff;
  -webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  overflow: hidden;
}
.section_event_entry .event_data .thumb_block,
.section_event_entry .event_data .txt_block {
  width: 50%;
}
.section_event_entry .event_data .txt_block {
  padding: 0 30px;
}
.section_event_entry .event_data .lead {
  font-size: 16px;
}
.section_event_entry .event_data .title {
  margin-top: 0.4em;
  font-size: 25px;
  line-height: 1.5;
}
.section_event_entry .event_data .date {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 15px;
}
.section_event_entry .event_data .date .label {
  width: 60px;
  text-align: center;
  padding: 5px 0 4px 0;
  border: solid 1px #ff4e4e;
  color: #ff4e4e;
  font-size: 14px;
  line-height: 1;
}
.section_event_entry .event_data .date .day {
  width: calc(100% - 70px);
  width: 100%;
  display: block;
  font-size: 14px;
  line-height: 1.6;
  margin-top: 10px;
}
.section_event_entry .event_data .btn_block {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 10px;
}
@media screen and (max-width: 1000px) {
  .section_event_entry .event_data {
    padding: 30px;
  }
  .section_event_entry .event_data .flex_container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .section_event_entry .event_data .thumb_block,
  .section_event_entry .event_data .txt_block {
    width: 100%;
  }
  .section_event_entry .event_data .txt_block {
    padding: 30px;
  }
}
@media screen and (max-width: 800px) {
  .section_event_entry .title_block .title {
    font-size: 6vw;
  }
  .section_event_entry .event_data {
    padding: 5vw;
    margin-top: 5vw;
    border-radius: 5vw;
  }
  .section_event_entry .event_data .flex_container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .section_event_entry .event_data .thumb_block,
  .section_event_entry .event_data .txt_block {
    width: 100%;
  }
  .section_event_entry .event_data .txt_block {
    padding: 5vw;
    padding-bottom: 6vw;
  }
  .section_event_entry .event_data .lead {
    font-size: 3.8vw;
  }
  .section_event_entry .event_data .title {
    font-size: 4.2vw;
  }
  .section_event_entry .event_data .date {
    margin-top: 3vw;
  }
  .section_event_entry .event_data .date .label {
    width: 14vw;
    text-align: center;
    padding: 1vw 0 0.5vw 0;
    font-size: 3vw;
  }
  .section_event_entry .event_data .date .day {
    width: 100%;
    margin-top: 2vw;
    font-size: 3.2vw;
    line-height: 1.4;
    overflow: visible;
    white-space: inherit;
    text-overflow: inherit;
    word-break: inherit;
  }
  .section_event_entry .event_data .date .day .sp {
    display: none;
  }
}
.section_event_entry .btn_block {
  text-align: center;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 30px;
  /* SP向けレイアウトの指定：～$width_sp */
  /* for SP max-width: $width_sp */
}
.section_event_entry .btn_block .btn_detail {
  display: block;
  width: 100%;
  max-width: 500px;
  margin: 0 auto;
}
.section_event_entry .btn_block .btn_detail.pc_tablet {
  display: block;
}
.section_event_entry .btn_block .btn_detail.sp {
  display: none;
}
.section_event_entry .btn_block .btn_detail + .btn_detail {
  margin-left: 30px;
}
.section_event_entry .btn_block .btn_line + .btn_line {
  margin-left: auto;
}
.section_event_entry .btn_block .btn_detail a {
  font-size: 20px;
  line-height: 70px;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 0;
  color: #fff;
  background-color: #ff4e4e;
}
.section_event_entry .btn_block .btn_detail a::after {
  content: "";
  width: 10px;
  height: 10px;
  right: 20px;
}
.section_event_entry .btn_block .btn_detail a:hover {
  opacity: 0.7;
}
.section_event_entry .btn_block .btn_entry a {
  background-color: #ff4e4e;
  border-radius: 100px;
}
.section_event_entry .btn_block .btn_line a {
  background-color: #00BC26;
  border-radius: 100px;
}
@media only screen and (max-width: 800px) {
  .section_event_entry .btn_block {
    padding: 0;
    margin-top: 5vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .section_event_entry .btn_block .btn_detail {
    width: 100%;
    max-width: 100%;
  }
  .section_event_entry .btn_block .btn_detail.pc_tablet {
    display: none;
  }
  .section_event_entry .btn_block .btn_detail.sp {
    display: block;
  }
  .section_event_entry .btn_block .btn_detail + .btn_detail {
    margin-left: 0;
    margin-top: 2vw;
  }
  .section_event_entry .btn_block .btn_detail a {
    font-size: 4vw;
    line-height: 12vw;
  }
  .section_event_entry .btn_block .btn_detail a:after {
    width: 7px;
    height: 7px;
    right: 10px;
  }
}

/*===============================================================

	section_detail_main

===============================================================*/
.section_detail_main {
  /*background: #fff url(../images/assets/bg_graydot_redtxture.gif) repeat-x;*/
}

.section_detail_main .section_inner {
  padding: 0;
  padding-bottom: 70px;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .section_detail_main .section_inner {
    padding-bottom: 70px;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_detail_main {
    /*background: #fff url(../images/assets/bg_graydot_redtxture_sp.gif) repeat-x;*/
    background: #fff;
  }
  .section_detail_main .section_inner {
    padding: 0 20px;
    padding-bottom: 20px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	section_detail_main detail_header	
-------------------------------------------------------------*/
.section_detail_main .detail_header {
  display: table;
  table-layout: fixed;
  background: #fff;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  /*  background:#ff4e4e url( ../images/header/header_detail_bg.jpg) center no-repeat;*/
  background: #ff0 url("/open-campus/common/images/header/header_detail_bg.svg");
  background-size: cover;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #000;
}

.section_detail_main .detail_header .img {
  width: 40%;
  vertical-align: middle;
  background: #000;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}

.section_detail_main .detail_header .img:before {
  content: "";
  display: block;
  padding-top: 70.7%; /* 高さを幅の75%に固定 */
}

.section_detail_main .detail_header .img img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

.section_detail_main .detail_header .txt {
  width: 60%;
  vertical-align: top;
  padding: 45px;
  padding-top: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.section_detail_main .detail_header .txt .inner {
  position: relative;
}

/* タブレット以下 */
@media screen and (max-width: 1220px) {
  .section_detail_main .detail_header .img {
    width: 45%;
  }
  .section_detail_main .detail_header .txt {
    width: 55%;
    padding: 3vw;
    padding-top: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_detail_main .detail_header {
    display: block;
    width: calc(100% + 40px);
    margin-left: -20px;
  }
  .section_detail_main .detail_header .img {
    display: block;
    width: 100%;
  }
  .section_detail_main .detail_header .txt {
    padding: 5vw;
    padding-bottom: 10vw;
    display: block;
    width: 100%;
  }
  .section_detail_main .detail_header .txt .inner {
    max-width: 100%;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	read headline	
-------------------------------------------------------------*/
.section_detail_main .detail_header .read {
  font-size: 2vw;
  line-height: 1.4;
  font-weight: bold;
  font-weight: normal;
  text-align: left;
  /*margin-top:20px;*/
  display: inline-block;
  position: relative;
}

.section_detail_main .detail_header .headline {
  font-size: 3vw;
  line-height: 1.3;
  font-weight: bold;
  text-align: left;
  margin: 1.2vw 0 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_detail_main .detail_header .read {
    font-size: 4vw;
    font-weight: normal;
    /*margin-top:10px;*/
  }
  .section_detail_main .detail_header .headline {
    font-size: 6vw;
    margin-top: 1vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon_tag
-------------------------------------------------------------*/
.section_detail_main .detail_header .icon {
  position: absolute;
  top: 0;
  right: 0;
  display: none;
}

.section_detail_main .detail_header .tag {
  padding-right: 115px;
  padding: 0;
  padding-bottom: 1.5vw;
}

.section_detail_main .detail_header .tag li {
  float: left;
  font-size: 12px;
  line-height: 1;
  margin-bottom: 5px;
  margin-right: 5px;
  padding: 5px 10px;
  color: #fff;
  background-color: #000;
}

.section_detail_main .detail_header .icon li {
  float: right;
  width: 30px;
  height: 30px;
  margin-left: 5px;
  border-radius: 3px;
  padding: 3px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.section_detail_main .detail_header .icon .bus {
  background: #fff100;
}

.section_detail_main .detail_header .icon .lunch {
  background: #fff100;
  padding: 6px;
}

.section_detail_main .detail_header .icon .beginner {
  padding: 4px;
  background: #434343;
}

/* $width_content以下 */
/* for tablet max-width:$width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_detail_main .detail_header .tag {
    padding-right: 0;
    padding-bottom: 10px;
    display: none;
  }
  .section_detail_main .detail_header .tag li {
    font-size: 11px;
  }
  .section_detail_main .detail_header .icon {
    top: -39px;
    right: -10px;
  }
  .section_detail_main .detail_header .icon li {
    width: 19px;
    height: 19px;
    margin-left: 3px;
    margin-top: 0;
    padding: 2px;
    -webkit-box-sizing: inherit;
            box-sizing: inherit;
    position: relative;
  }
  .section_detail_main .detail_header .icon .lunch {
    padding: 2px;
  }
  .section_detail_main .detail_header .icon .lunch img {
    width: 13px;
  }
  .section_detail_main .detail_header .icon .beginner {
    padding: 2px;
  }
  .section_detail_main .detail_header .icon img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
  }
} /* for SP max-width: $width_sp */
/* SP向けレイアウトの指定：～374px */
@media only screen and (max-width: 374px) {
  .section_detail_main .detail_header .icon li {
    width: 15px;
    height: 15px;
    margin-left: 3px;
  }
  .section_detail_main .detail_header .icon img {
    width: 11px;
    /*	height: 12px;*/
  }
} /* for SP max-width: 374px */
/*-------------------------------------------------------------
	section_detail_main content_detail
-------------------------------------------------------------*/
.section_detail_main .content_detail {
  width: 1000px;
  margin: 0 auto;
  /*
  margin-top:50px;
  padding: 50px;
  padding-top: 25px;
  box-sizing: border-box;
  background: #fff;
  */
  /*
  margin-top: -30px;
  z-index: 100;
  position: relative;
  box-shadow: 0 0 30px 0 rgba(0,0,0,0.05);
  */
}

/* タブレット以下 */
/* タブレット以下 */
@media screen and (max-width: 1220px) {
  .section_detail_main .content_detail {
    width: 100%;
    padding: 0 25px;
  }
} /* for tablet max-width: $width_content */
/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .section_detail_main .content_detail {
    width: 100%;
    padding: 0;
  }
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_detail_main .content_detail {
    margin-top: 20px;
    padding: 0;
    -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.5);
            box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.5);
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	section_detail_main .detail_main
-------------------------------------------------------------*/
.section_detail_main .detail_main p {
  font-size: 16px;
  line-height: 1.5;
  text-align: left;
  margin-top: 20px;
}

.section_detail_main .detail_main p.target {
  color: #ff4e4e;
  font-weight: bold;
  text-align: center;
  border: 1px solid #ff4e4e;
  border-radius: 5px;
  padding: 0.5em 1em;
  margin: 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_detail_main .detail_main p {
    font-size: 14px;
  }
  .section_detail_main .detail_main p.target {
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	section_detail_main .free_html
-------------------------------------------------------------*/
.section_detail_main .free_html {
  font-size: 14px;
  line-height: 1.6;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	section_detail_main .btn_prev
-------------------------------------------------------------*/
.section_detail_main .btn_prev {
  display: none;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	section_detail_main .link_content
-------------------------------------------------------------*/
.section_detail_main .txtlink.link_content {
  padding-bottom: 50px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_detail_main .txtlink.link_content {
    padding: 20px;
    margin: 0;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	info_list_wrp

===============================================================*/
.info_list_wrp {
  width: 780px;
  margin: 0 auto;
  border: 5px solid #ffff00;
  border-top: none;
  background: #fff;
  -webkit-box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  width: 1000px;
  border: 0;
  position: relative;
  margin-top: -10px;
  border-radius: 30px;
  overflow: hidden;
}

.info_list_wrp h3 {
  margin-top: 0;
  margin-bottom: 10px;
  line-height: 1.1;
  padding: 20px 0;
  font-weight: 500;
}

.infolist_title {
  background: #ffff00;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 0.05em;
  text-align: center;
  padding: 10px 0;
}

.info_list_content {
  position: relative;
  padding: 50px;
  padding-top: 30px;
}

.info_list_wrp .list_nav_wrp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.info_list_wrp .list_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 0px solid #ddd;
  width: 80%;
}

.info_list_wrp .list_nav + * {
  margin-top: 15px;
}

.info_list_wrp .list_nav li {
  font-size: 16px;
  line-height: 30px;
  font-weight: bold;
  margin-right: 10px;
  padding-bottom: 10px;
}

.info_list_wrp .list_nav li .caption {
  font-size: 11px;
  padding-left: 5px;
  font-weight: normal;
}

.info_list_wrp .list_nav li img {
  width: 30px;
  height: 30px;
  margin-right: 5px;
  vertical-align: middle;
}

/*　バス	*/
.info_list_wrp .list_nav li.bus {
  opacity: 0;
  display: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.info_list_wrp .list_nav li.bus.hasbus {
  display: block;
  opacity: 1;
}

.info_list_wrp .list_nav li.bus.nobus {
  opacity: 0;
}

.info_list_wrp .list_nav .loader {
  display: none;
  width: 30px;
  height: 30px;
  background: #434343 url("../images/assets/ajax-loader_gray.gif") no-repeat center center;
  border-radius: 5px;
}

.info_list_wrp .list_nav_right {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: 20%;
}

.info_list_wrp .list_nav_right .btn_line {
  width: 200px;
  font-size: 18px;
  line-height: 30px;
  font-weight: bold;
  text-align: center;
  margin-right: 0;
  margin-left: auto;
}

.info_list_wrp .list_nav_right .btn_line a {
  display: block;
  color: #fff;
  padding: 10px 0;
  background: #00bc26;
  border-radius: 100px;
}

.info_list_wrp .list_nav_right .btn_line a:hover {
  text-decoration: none;
  background: #00ad23;
}

/* タブレット以下 */
@media screen and (max-width: 1220px) {
  .info_list_wrp {
    width: auto;
    margin: 0 50px;
    margin-top: -20px;
  }
} /* for tablet max-width: $width_content */
/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .info_list_wrp {
    width: auto;
    margin: 0 20px;
    margin-top: -20px;
  }
  .info_list_content {
    padding: 30px;
    padding-top: 20px;
  }
  .info_list_wrp .list_nav {
    width: 70%;
  }
  .info_list_wrp .list_nav_right {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    width: 30%;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .info_list_wrp {
    width: calc(100% + 20px);
    margin-left: -10px;
    border-top: 5px solid #ffff00;
    border: 5px solid #ffff00;
    margin-top: -15px;
    overflow: visible;
    border-radius: 5vw;
  }
  .info_list_content {
    padding: 15px;
    padding-top: 10px;
  }
  .thiscontents .infolist_title {
    width: 30vw;
    padding: 2vw 0;
    margin: 0 auto;
    margin-top: -5vw;
    font-size: 4vw;
    border-radius: 5vw;
  }
  .info_list_wrp .list_nav {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .info_list_wrp .list_nav + * {
    margin-top: 15px;
  }
  .info_list_wrp .list_nav li {
    font-size: 14px;
    line-height: 20px;
  }
  .info_list_wrp .list_nav li img {
    width: 20px;
    height: 20px;
  }
  .info_list_wrp .list_nav li .caption {
    font-size: 11px;
    line-height: 1.4;
    display: block;
    padding: 0;
    margin-top: 5px;
  }
  .info_list_wrp .list_nav_wrp {
    display: block;
  }
  .info_list_wrp .list_nav {
    isplay: block;
    width: 100%;
  }
  .info_list_wrp .list_nav_right {
    width: 100%;
    margin-top: 0;
  }
  .info_list_wrp .list_nav_right .btn_line {
    width: 100%;
    font-size: 14px;
    line-height: 16px;
    margin-bottom: 0;
    font-size: 4vw;
    line-height: 1;
  }
  .info_list_wrp .list_nav_right .btn_line a {
    padding: 15px 0;
    padding: 4vw 0;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	information
-------------------------------------------------------------*/
.info_list_wrp .information {
  text-align: center;
  padding-bottom: 0;
  padding: 20px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #ffe1ee;
}

.info_list_wrp .information p {
  color: #c00;
  font-size: 16px;
  font-weight: bold;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
  .info_list_wrp .information {
    width: 100%;
  }
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .info_list_wrp .information {
    text-align: left;
    padding: 15px;
  }
  .info_list_wrp .information p {
    font-size: 14px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	info_list
-------------------------------------------------------------*/
.info_list {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  padding: 15px 0;
}

.info_list + .info_list {
  border-top: 0px solid #ddd;
}

.morelist .info_list:first-child {
  border-top: 0px solid #ddd;
}

.info_list .list_txt {
  width: calc(100% - 170px);
  margin-right: 10px;
  float: left;
}

.info_list .list_date {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.7;
  width: 25%;
  float: left;
}

.info_list .list_date .sat {
  color: #1437cc;
}

.info_list .list_date .sun,
.info_list .list_date .holiday {
  color: #de1616;
}

.info_list .list_time {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.3;
  width: calc(75% - 10px);
  float: left;
  margin-top: 0px;
  margin-left: 10px;
  padding: 7px 0;
}

.info_list .list_btn {
  width: 160px;
  float: right;
}

.info_list .list_btn a {
  position: relative;
  display: block;
  background-color: #ff4e4e;
  text-align: center;
  color: #fff;
  font-size: 14px;
  line-height: 20px;
  font-weight: bold;
  padding: 10px 0;
  border-radius: 100px;
}

.info_list .list_btn a:hover {
  text-decoration: none;
  background-color: #ed4b4b;
}

/* タブレット以下 */
/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .info_list .list_txt {
    width: calc(100% - 25vw);
    margin-right: 0;
  }
  .info_list .list_date {
    width: 100%;
    font-size: 5vw;
    float: none;
    line-height: 1.3;
  }
  .info_list .list_time {
    width: 100%;
    font-size: 3.5vw;
    line-height: 1.4;
    margin-top: 1vw;
    margin-left: 0;
    padding: 0;
  }
  .info_list .list_btn {
    width: 24vw;
    margin: 0 auto;
  }
  .info_list .list_btn a {
    font-size: 3.5vw;
    line-height: 1.2;
    padding: 3vw 0;
    border-radius: 1vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	list_date.hasbus	
-------------------------------------------------------------*/
.hidden_date {
  display: none;
}

.info_list.hasbus .list_date {
  background: url("../images/assets/icon_bus.svg") no-repeat right center;
  background-size: 30px 30px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .info_list.hasbus .list_date {
    background: url("/open-campus/common/images/assets/icon_bus.svg") no-repeat right center;
    background-size: 20px 20px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	morelist
-------------------------------------------------------------*/
.info_list_content .morelist {
  display: none;
}

/* タブレット以下 */
/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	list_btn_detail
-------------------------------------------------------------*/
.list_btn_detail {
  width: 160px;
  margin: 0 auto;
  margin-top: 20px;
}

.list_btn_detail a {
  position: relative;
  display: block;
  background-color: #ededed;
  text-align: center;
  color: #000;
  font-size: 14px;
  line-height: 14px;
  font-weight: bold;
  padding: 10px 0;
}

.list_btn_detail a:hover {
  color: #000;
  text-decoration: none;
  background-color: #ccc;
}

/* タブレット以下 */
/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .list_btn_detail {
    width: 200px;
  }
  .list_btn_detail a {
    padding: 15px 0;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	txtlink link_content
-------------------------------------------------------------*/
.txtlink.link_content {
  width: 780px;
  margin: 40px auto 0;
}

.txtlink.link_content a {
  font-size: 16px;
}

.txtlink.link_content a:after {
  width: 6px;
  height: 6px;
}

/* タブレット以下 */
/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 780px) {
  .txtlink.link_content {
    width: 100%;
    margin-top: 30px auto 0;
  }
  .txtlink.link_content a {
    font-size: 14px;
  }
  .txtlink.link_content a:after {
    width: 8px;
    height: 8px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	.line_area
-------------------------------------------------------------*/
/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .line_area {
    margin-top: 15px;
    padding: 10px 5px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    background: #dff6df;
    border-radius: 0;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .line_area .txt {
    width: 50%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .line_area .txt a {
    font-size: 4vw;
    font-weight: bold;
    color: #00b900;
    line-height: 20px;
    text-decoration: none;
  }
  .line_area .btn_line {
    width: 45%;
    text-align: center;
    background: #00b900;
    border-radius: 3px;
    padding: 8px 5px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .line_area .btn_line a {
    font-size: 4vw;
    font-weight: bold;
    color: #fff;
    padding-left: 5px;
    line-height: 30px;
    text-decoration: none;
  }
  .line_area .btn_line img {
    width: 30px;
    height: auto;
  }
  .line_area .txt a:hover {
    color: #00b900;
    opacity: 0.8;
  }
  .line_area .btn_line:hover {
    opacity: 0.8;
  }
} /* for SP max-width: $width_sp */
/* SP向けレイアウトの指定：～374px */
@media only screen and (max-width: 374px) {
  .line_area {
    padding: 10px 5px;
  }
  .line_area .btn_line {
    border-radius: 8px;
  }
  .line_area .btn_line a {
    font-size: 13px;
    line-height: 25px;
  }
  .line_area .btn_line img {
    width: 25px;
  }
} /* for SP max-width: 374px */
/*===============================================================

	holding_content

===============================================================*/
.holding_content {
  padding-bottom: 0;
}

/* タブレット以下 */
/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .holding_content {
    padding-bottom: 0;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	section_btn

===============================================================*/
.section_btn {
  background: #fff;
  padding: 40px 20px;
  border-top: solid 1px rgba(0, 0, 0, 0.1);
  text-align: center;
}

.section_btn .btn_detail {
  display: inline-block;
  width: 400px;
  margin: 0 5px 0;
}

.section_btn .btn_detail a {
  font-size: 20px;
  line-height: 70px;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 0;
  color: #fff;
  background-color: #ff4e4e;
}

.section_btn .btn_detail a:after {
  content: "";
  width: 10px;
  height: 10px;
  right: 20px;
}

.section_btn .btn_entry a {
  background-color: #ff4e4e;
  border-radius: 100px;
}

.section_btn .btn_line a {
  background-color: #00BC26;
  border-radius: 100px;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
  .section_btn .btn_detail {
    width: 350px;
  }
  .section_btn .btn_detail + .btn_detail {
    margin-top: 10px;
  }
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_btn {
    padding: 20px;
  }
  .section_btn .btn_detail {
    display: block;
    width: 100%;
    margin: 0 auto;
  }
  .section_btn .btn_detail + .btn_detail {
    margin-top: 10px;
  }
  .section_btn .btn_detail a {
    font-size: 16px;
    line-height: 50px;
  }
  .section_btn .btn_detail a:after {
    width: 7px;
    height: 7px;
    right: 10px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	section_widebtn

===============================================================*/
.section_widebtn {
  background: #e61e19;
  width: 100%;
}

.section_widebtn .btntitle {
  /*	font-size: 24px;*/
  font-size: 20px;
  font-weight: bold;
  position: relative;
  line-height: 7;
  text-align: center;
}

.section_widebtn .btntitle a {
  display: block;
  text-decoration: none;
  color: #fff;
}

.section_widebtn .btntitle .txt {
  position: relative;
}

.section_widebtn .btntitle .txt:after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  top: 0;
  /*	left:auto; */
  bottom: 0;
  right: -70px;
  margin: auto;
  border-top: solid 1px #fff;
  border-left: solid 1px #fff;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.section_widebtn .btntitle .btn_border {
  width: 400px;
  height: 70px;
  border: solid 1px #fff;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.section_widebtn .btntitle a:hover {
  background: #ff8705;
  /*	background: #ff610c;*/
}

/* タブレット以下 */
/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_widebtn .btntitle {
    font-size: 16px;
    line-height: 6;
  }
  .section_widebtn .btntitle .txt:after {
    width: 7px;
    height: 7px;
    right: -20px;
  }
  .section_widebtn .btntitle .btn_border {
    width: 250px;
    height: 50px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	section_timetable

===============================================================*/
.section_timetable {
  background-color: #fff800;
  color: #000;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
.section_timetable .notes {
  padding: 20px;
  margin-top: 30px;
  border-radius: 10px;
}
.section_timetable .notes p {
  font-size: 14px;
  line-height: 1.6;
}

.section_timetable .section_inner {
  background-color: #fff800;
  color: #000;
  position: relative;
  z-index: 1;
}

.section_timetable .content {
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}

/* $width_content以下 */
@media screen and (max-width: 1300px) {
  .section_timetable .content {
    width: 100%;
  }
}
/*  max-width: $width_content */
/* $width_content以下 */
@media screen and (max-width: 1000px) {
  .section_timetable .content:after {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    top: -5%;
    bottom: auto;
    right: -5%;
  }
}
/*  max-width: $width_content */
/* タブレット以下 */
@media screen and (max-width: 960px) {
  .section_timetable .content {
    width: 100%;
  }
}
/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  /*
  .section_timetable .content:after {
  	content: url(../images/timetable/img_girl_sp.png);
  	top: -1%;
  	bottom: auto;
  	right: 0;
  }*/
}
/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	title_wrp
-------------------------------------------------------------*/
.section_timetable .title_wrp {
  text-align: center;
  z-index: 3;
}

.section_timetable .title_wrp .title_icon img {
  width: 50px;
  height: auto;
}

.section_timetable .title_wrp .title {
  margin-top: 8px;
}

.section_timetable .title_wrp .title img {
  width: 360px;
  height: auto;
}

/* タブレット以下 */
/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp*/
@media only screen and (max-width: 800px) {
  .title_wrp .title {
    font-size: 24px;
  }
  .section_timetable .title_wrp .title img {
    width: 300px;
  }
}
/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	timeline
-------------------------------------------------------------*/
.timeline_wrp {
  width: 1000px;
  padding: 50px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
  border-radius: 10px;
  margin-top: -40px;
}

.timeline {
  list-style: none;
}

.timeline > li {
  overflow: hidden;
  position: relative;
}

.timeline-date {
  /*width: 100px;*/
  width: 10%;
  float: left;
  text-align: left;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
}

.thiscontents .timeline-date {
  margin-top: 30px;
  line-height: 1.5;
}

.timeline-content {
  /*width: 80%;*/
  width: 85%;
  float: right;
  border-left: 3px #000 solid;
  padding-left: 30px;
  padding-top: 30px;
}

.timeline li:first-child .timeline-date {
  margin-top: 10px;
}

.timeline li:first-child .timeline-content {
  padding-top: 10px;
}

.timeline li:last-child .timeline-content {
  padding-bottom: 10px;
}

.timeline-content h3:before {
  content: "";
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 14px;
  height: 14px;
  background: #ffff00;
  position: absolute;
  top: 0;
  bottom: 0;
  left: -38.5px;
  right: auto;
  margin: auto;
  border-radius: 100%;
  border: 3px solid #000;
}

.timeline-content h3 {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  text-align: left;
  margin-bottom: 0;
  margin-top: 0;
  position: relative;
  /*	margin-top: 30px;*/
}
.timeline-content h3 span {
  display: block;
  font-size: 0.7em;
  font-weight: normal;
}

.timeline-content p {
  font-size: 16px;
  line-height: 1.5;
  text-align: left;
  margin-top: 5px;
}

.timeline-content p .red {
  color: #ff4e4e;
}

.section_timetable .caption {
  font-size: 13px;
  line-height: 1.5;
  text-align: center;
  margin-top: 30px;
  color: #999;
}

/* 2021/12/21追加 時間なしバージョン */
.timeline.non_date > li {
  overflow: visible;
}

.timeline.non_date > li:before,
.timeline.non_date > li:after {
  font-size: 0;
  display: block;
  visibility: hidden;
  clear: both;
  height: 0;
  content: "";
}

.timeline.non_date .timeline-content {
  width: 100%;
}

/* タブレット以下 */
@media screen and (max-width: 1300px) {
  .timeline_wrp {
    width: 100%;
  }
}
/* for tablet max-width: 960px */
/* タブレット以下 */
@media screen and (max-width: 960px) {
  .timeline_wrp {
    width: 100%;
    padding: 15px;
  }
  .timeline {
    margin-top: 20px;
  }
  .timeline-date {
    font-size: 20px;
    width: 90px;
  }
  .thiscontents .timeline-date {
    margin-top: 20px;
  }
  .timeline-content {
    padding-top: 20px;
  }
  .timeline-content h3 {
    font-size: 20px;
    /*	margin-top: 20px;*/
  }
}
/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .timeline-date {
    width: 60px;
    margin-right: 10px;
    font-size: 16px;
  }
  .timeline-content {
    width: calc(100% - 70px);
    padding-left: 20px;
  }
  .timeline-content h3:before {
    left: -28.5px;
    top: 0.8vw;
    bottom: auto;
  }
  .timeline-content h3 {
    font-size: 5vw;
    line-height: 1.3;
  }
  .timeline-content p {
    font-size: 3.8vw;
  }
  .section_timetable .caption {
    font-size: 3vw;
    line-height: 1.5;
    margin-top: 20px;
    text-align: left;
  }
}
/* for SP max-width: $width_sp */
/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 490px) {
  .timeline-content {
    /*	width: 70%;*/
    padding-left: 15px;
  }
  .timeline-content h3:before {
    left: -23.5px;
  }
  .thiscontents .timeline-date {
    /*  width: 60px;*/
    margin-right: 10px;
  }
}
/*-------------------------------------------------------------
	timeline-content .photo	 2019/5/20
-------------------------------------------------------------*/
.timeline-content .photo {
  position: relative;
  width: 100%;
  max-width: 150px;
  margin-top: -25px;
  margin-left: 15px;
  float: right;
  border-radius: 50%;
  overflow: hidden;
  z-index: 1;
  /* scaleIn fix for Safari */
}
.timeline-content .photo.mt0 {
  margin-top: 0;
}

.timeline-content .photo img {
  width: 100%;
  height: auto;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .timeline-content .photo {
    float: none;
    margin: 0;
    margin-top: 10px;
    max-width: 100%;
  }
  .timeline-content .photo + * {
    margin-top: 10px;
  }
}
/* for SP max-width: $width_sp */
/*===============================================================

	timetable_box

===============================================================*/
.timetable_box {
  background: #fff800;
  padding: 30px 0;
  padding-top: 20px;
}

.timetable_box .icon,
.timetable_box .icon img {
  width: 40px;
  height: 40px;
  margin: 0 auto;
}

.timetable_box .time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.timetable_box .title {
  width: 100%;
  font-size: 24px;
  text-align: center;
  margin: 10px 0 20px;
}

.timetable_box .am,
.timetable_box .pm {
  width: 48.5%;
  background: #fff;
  border-radius: 10px;
  padding: 20px;
  margin-top: 20px;
}

.timetable_box .day {
  background: #fff;
  border-radius: 10px;
  padding: 20px;
  margin-top: 20px;
}

.timetable_box .am .subtitle,
.timetable_box .pm .subtitle,
.timetable_box .day .subtitle {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 10px;
}

.timetable_box .subtitle .sat {
  color: #1437cc;
}

.timetable_box .subtitle .sun {
  color: #de1616;
}

.timetable_box .am {
  margin-right: 3%;
}

.timetable_box ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

.timetable_box ul li p {
  width: 25%;
  font-size: 24px;
  line-height: 1.5;
  font-weight: bold;
  text-align: right;
  padding: 10px 30px 10px 0;
}

.timetable_box ul li .timeline-content {
  width: 75%;
}

.timetable_box ul li .timeline-content p {
  width: auto;
  font-size: 16px;
  line-height: 1.6;
  font-weight: normal;
  text-align: left;
  padding: 0;
}

.timetable_box ul li:first-child p {
  padding-top: 10px;
}

.timetable_box ul li .timeline-content {
  position: relative;
  float: none;
  padding: 10px 10px 10px 30px;
}

.timetable_box ul li:first-child .timeline-content {
  padding-top: 10px;
}

.timetable_box ul li h5 {
  position: relative;
  font-size: 24px;
  line-height: 1.5;
  font-weight: bold;
  text-align: left;
  margin: 0;
}

.timetable_box ul li h5 .degree {
  display: block;
  font-size: 0.6em;
}

.timetable_box ul li .avator {
  position: relative;
  width: 200px;
  max-width: 100%;
  margin: 10px 0;
}

.timetable_box ul li .avator .inner {
  position: relative;
  width: 100%;
  padding-top: 100%;
}

.timetable_box ul li .avator .inner img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  border-radius: 100%;
}

.timetable_box ul li .timeline-content:before {
  content: "";
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 14px;
  height: 14px;
  background: #ffff00;
  position: absolute;
  top: 28px;
  left: -8.5px;
  right: auto;
  margin: auto;
  border-radius: 100%;
  border: 3px solid #000;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.timetable_box ul li:first-child .timeline-content:before {
  /*top: 22px;*/
}

.timetable_box ul li .timeline-content .btn {
  margin-top: 10px;
}

.timetable_box ul li .timeline-content .btn a {
  position: relative;
  display: block;
  color: #fff;
  font-size: 20px;
  line-height: 70px;
  font-weight: bold;
  text-align: center;
  -webkit-box-shadow: none;
          box-shadow: none;
  background-color: #ff4e4e;
  border-radius: 35px;
  padding: 0;
}

.timetable_box ul li .timeline-content .btn a:hover {
  text-decoration: none;
  opacity: 0.7;
}

.timetable_box ul li .timeline-content .btn a:after {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  top: 0;
  left: auto;
  bottom: 0;
  right: 20px;
  margin: auto;
  border-top: solid 1px #fff;
  border-left: solid 1px #fff;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}

.timetable_box .alert {
  text-align: center;
  text-indent: -1em;
  padding-left: 1em;
  margin-top: 1em;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .section_timetable .content {
    width: 100%;
  }
}
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .timetable_box:after {
    content: none;
  }
  .timetable_box {
    padding: 35px 0 0;
  }
  .timetable_box .icon {
    margin-top: -35px;
  }
  .timetable_box .icon,
  .timetable_box .icon img {
    width: 30px;
    height: 30px;
  }
  .timetable_box .title {
    font-size: 4vw;
    line-height: 1.4;
    margin: 10px 0 15px;
  }
  .timetable_box .time {
    display: block;
  }
  .timetable_box .am,
  .timetable_box .pm,
  .timetable_box .day {
    width: auto;
    background: #fff;
    border-radius: 10px;
    padding: 15px 0;
  }
  .timetable_box .am .subtitle,
  .timetable_box .pm .subtitle,
  .timetable_box .day .subtitle {
    font-size: 4.2vw;
    margin: 0;
  }
  .timetable_box .am {
    margin-right: 0;
    margin-bottom: 20px;
  }
  .timetable_box ul.timeline {
    margin-top: 10px;
  }
  .timetable_box ul li p {
    width: 30%;
    font-size: 4vw;
  }
  .timetable_box ul li .timeline-content {
    width: 70%;
  }
  .timetable_box ul li .timeline-content p {
    font-size: 3.5vw;
  }
  .timetable_box ul li .timeline-content:before {
    top: 4vw;
  }
  .timetable_box ul li h5 {
    font-size: 4vw;
  }
  .timetable_box ul li .avator {
    max-width: 60%;
    margin: 10px 0 0;
  }
  .timetable_box ul li .timeline-content .btn a {
    font-size: 4vw;
    line-height: 10vw;
    border-radius: 5vw;
  }
  .timetable_box ul li .timeline-content .btn a:after {
    width: 7px;
    height: 7px;
    right: 10px;
  }
  .timetable_box .alert {
    text-align: left;
  }
}
/* for SP max-width: $width_sp */
/* SP向けレイアウトの指定：～$width_sp */
/*-------------------------------------------------------------
	timeline-content .guest	 2024/8/19菅
-------------------------------------------------------------*/
.timeline-content .guest {
  background: #f0f0f0;
  padding: 20px;
  margin-top: 10px;
}
@media only screen and (max-width: 800px) {
  .timeline-content .guest {
    padding: 10px;
  }
}
.timeline-content .guest h4 {
  color: #ed4b4b;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom: 0.5em;
}
@media only screen and (max-width: 800px) {
  .timeline-content .guest h4 {
    font-size: 18px;
  }
}
.timeline-content .guest h4 .degree {
  display: inline-block;
  color: #000;
  font-size: 0.7em;
}
.timeline-content .guest h4 .name {
  display: inline-block;
}
.timeline-content .guest p {
  line-height: 1.6;
  text-align: justify;
}
@media only screen and (max-width: 800px) {
  .timeline-content .guest p {
    font-size: 13px;
  }
}
.timeline-content .guest + .other {
  margin-top: 10px;
}
.timeline-content .guest + .other span {
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #ff0));
  background: linear-gradient(transparent 50%, #ff0 50%);
}

/*-------------------------------------------------------------
	timeline-content .breakdown	 2024/8/19菅
-------------------------------------------------------------*/
.timeline-content .breakdown {
  margin-top: 10px;
}
.timeline-content .breakdown .item {
  position: relative;
  padding-left: 30px;
  padding-bottom: 15px;
}
@media only screen and (max-width: 800px) {
  .timeline-content .breakdown .item {
    padding-left: 7vw;
  }
}
.timeline-content .breakdown .item:last-child {
  padding-bottom: 0;
}
.timeline-content .breakdown h4 {
  color: #4b93ed;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.2;
}
@media only screen and (max-width: 800px) {
  .timeline-content .breakdown h4 {
    font-size: 5vw;
  }
}
.timeline-content .breakdown h4 .num {
  position: absolute;
  top: 2px;
  left: 0;
  display: block;
  width: 24px;
  height: 24px;
  color: #fff;
  font-size: 16px;
  line-height: 24px;
  text-align: center;
  background: #4b93ed;
  border-radius: 100%;
}
@media only screen and (max-width: 800px) {
  .timeline-content .breakdown h4 .num {
    top: 0;
    left: 0;
    display: block;
    width: 6vw;
    height: 6vw;
    font-size: 4vw;
    line-height: 6vw;
  }
}
.timeline-content .breakdown p {
  line-height: 1.6;
  text-align: justify;
}
@media only screen and (max-width: 800px) {
  .timeline-content .breakdown p {
    font-size: 3.5vw;
  }
}
.timeline-content .breakdown .experience li {
  display: inline-block;
  color: #4b93ed;
  font-size: 14px;
  line-height: 1.4;
  border: 1px solid #4b93ed;
  padding: 0.25em 0.5em;
  margin-top: 10px;
  margin-right: 10px;
}
@media only screen and (max-width: 800px) {
  .timeline-content .breakdown .experience li {
    font-size: 2.8vw;
    margin-top: 5px;
    margin-right: 5px;
  }
}

/*===============================================================

	プロフィール
	最終更新：2019/09/26 山下
	/include/profile/html/

===============================================================*/
.section_profile {
  background: url("/open-campus/common/include/profile/images/profile_bg.png") repeat left top #e0e8f3;
  background-size: 240px auto;
}
.section_profile .headline_pop + .headline {
  margin-top: 30px;
}
@media only screen and (max-width: 800px) {
  .section_profile .headline_pop + .headline {
    margin-top: 0;
  }
}

.section_profile.special_guest {
  background: url("/open-campus/common/include/profile/images/profile_bg.png") repeat left top #fff100;
  background-size: 240px auto;
}

.section_profile.bg2020 {
  background: url("/open-campus/common/include/profile/images/profile_bg_2020.png") repeat left top #e0e8f3;
  background-size: 297px auto;
}

/* 見出し */
.section_profile .headline_diagonal {
  margin-bottom: 20px;
}

.section_profile .headline_diagonal h2 {
  /*color: #fff;*/
  font-size: 30px;
  font-weight: bold;
  text-align: center;
  margin: 0;
  line-height: 1;
}

.section_profile .headline .title {
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  margin: 0;
}

.section_profile .headline + .content {
  margin-top: 40px;
}

.section_profile .profile + .headline_diagonal {
  margin-top: 50px;
}

/* TCAカフェ + 青紅先生イベント */
.section_profile .headline .event_read {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  margin: 20px 0 0;
}

.section_profile .headline .event_title {
  font-size: 3vw;
  font-weight: bold;
  text-align: center;
  margin: 10px 0 20px;
}

/* コンテンツ */
.section_profile .profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  background: #fff;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  padding: 40px;
  border-radius: 30px;
}

.section_profile .profile + .profile,
.section_profile .topic + .profile {
  margin-top: 50px;
}

.section_profile .profile .left {
  -webkit-box-flex: 1;
      -ms-flex: 1 0;
          flex: 1 0;
  /*margin-right: 30px;*/
}

.section_profile .profile .right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-left: 30px;
}

.section_profile .profile .right.start {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.section_profile .personal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 30px;
}

.section_profile .avatar {
  position: relative;
  width: 100px;
  height: 100px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  border: 5px solid #ff4e4e;
  border-radius: 100%;
  margin-right: 30px;
  z-index: 1;
  /* for Safari */
}

.section_profile .profile .name {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: calc(100% - 130px);
  /*470px;*/
  font-size: 36px;
  line-height: 1.2;
  /*line-height: 2.777777777777778;*/
  font-weight: bold;
  margin: 0;
}

.section_profile .profile .name .post {
  display: inline-block;
  font-size: 20px;
  margin-left: 5px;
}

.section_profile .profile .name .degree {
  font-size: 30px;
  margin-left: 5px;
}

.section_profile .profile p {
  font-size: 16px;
  word-break: break-all;
  text-align: justify;
  text-justify: inter-ideograph;
  /* IE */
}

.section_profile .profile p.mt1em {
  margin-top: 1em;
}

.section_profile .profile ul.dotlist {
  margin-top: 1em;
}

.section_profile .profile ul.dotlist li {
  position: relative;
  font-size: 16px;
  text-indent: -1em;
  padding-left: 1em;
}

.section_profile .profile ul.dotlist li:before {
  content: "・";
}

.section_profile .profile ul.dotlist li.subtitle {
  font-weight: bold;
  text-indent: 0;
  padding-left: 0;
}

.section_profile .profile ul.dotlist li.subtitle:before {
  content: none;
}

.section_profile .profile p.catch {
  color: #ff4e4e;
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
  margin-bottom: 20px;
}

.section_profile .profile p.link {
  margin-top: 20px;
}

.section_profile .profile p.ti1 {
  padding-left: 1em;
  text-indent: -1em;
}

.section_profile .profile .works {
  width: 100%;
}

.section_profile .profile .works ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

/* 2019.5.20 縦組み */
.section_profile .profile .works.vertical ul {
  display: block;
}

.section_profile .profile .works ul li .caption {
  display: block;
  font-size: 12px;
  text-align: right;
  margin-top: 5px;
}

.section_profile .profile .works ul li .copyrights {
  display: block;
  font-size: 10px;
  text-align: left;
  margin-top: 5px;
}

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

	ここから作品サイズ別

----------------------------------------*/
/* 1作品縦長 */
.section_profile .profile .works ul.w245 li {
  width: 245px;
}

/* 2作品縦長 */
.section_profile .profile .works ul.w200 li {
  width: 200px;
  margin-right: 30px;
}

.section_profile .profile .works ul.w200 li:last-child {
  margin-right: 0;
}

/* 2019.5.20 縦組み */
.section_profile .profile .works.vertical ul li {
  margin-right: 0;
}

.section_profile .profile .works.vertical ul li + li {
  margin-top: 10px;
}

/* 1作品横長 */
.section_profile .profile .works ul.w360 li {
  width: 360px;
}

/* 2作品横長 */
.section_profile .profile .works ul.w230 li {
  width: 230px;
}

.section_profile .profile .works ul.w230 li:first-child {
  margin-right: 15px;
}

/* 動画 */
.section_profile .profile .works ul li video {
  width: 100%;
}

/* イベント3カラム */
.section_profile .profile .event {
  position: relative;
  width: 360px;
  padding-top: 22.2222222222%;
}

.section_profile .profile .event .tag {
  position: absolute;
  top: 0;
  left: -5px;
  color: #fff;
  font-size: 16px;
  line-height: 1;
  font-weight: bold;
  background: #ff4e4e;
  border-left: 30px solid #da3030;
  -webkit-box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.2);
  padding: 4.1666666667%;
  -webkit-transform: rotate(-3deg);
          transform: rotate(-3deg);
  margin: 0;
}

.section_profile .profile .event ul.col3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.section_profile .profile .event ul.col3 li {
  position: relative;
  width: 30.5555555556%;
  color: #fff;
  padding-top: 30.5555555556%;
  margin-right: 4.1666666667%;
}

.section_profile .profile .event ul.col3 li:last-child {
  margin-right: 0;
}

.section_profile .profile .event ul.col3 li .circle {
  position: absolute;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  /*font-size: 18px;*/
  line-height: 1.375;
  font-weight: bold;
  text-align: center;
  background: #ff4e4e;
  border-radius: 50%;
  z-index: 1;
  /* scaleIn fix for Safari */
}

.section_profile .profile .event ul.col3 li .circle .small {
  color: #fff;
  font-size: 85%;
}

.section_profile .profile .event .caution {
  position: relative;
  font-size: 12px;
  padding-left: 1em;
  margin-top: 15px;
}

.section_profile .profile .event .caution span {
  position: absolute;
  top: 0;
  left: 0;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .section_profile .headline_diagonal {
    margin-bottom: 15px;
  }
  .section_profile .headline_diagonal h2 {
    /*font-size: 18px;*/
    /*	font-size: 6.0vw;*/
  }
  .section_profile .profile {
    display: block;
    padding: 5vw;
    margin-top: 0;
    border-radius: 5vw;
  }
  .section_profile .profile + .headline_diagonal {
    margin-top: 30px;
  }
  .section_profile .profile + .profile,
  .section_profile .topic + .profile {
    margin-top: 20px;
  }
  .section_profile .profile .left {
    width: 100%;
  }
  .section_profile .profile .right {
    width: 100%;
    margin-left: 0;
  }
  .section_profile .personal {
    display: block;
    margin-bottom: 10px;
  }
  .section_profile .avatar {
    width: 160px;
    height: 160px;
    margin: 0 auto 10px;
  }
  .section_profile .profile .name {
    width: auto;
    font-size: 26px;
    line-height: 1.7;
    font-weight: bold;
    margin: 0;
  }
  .section_profile .profile .name .degree {
    font-size: 20px;
    margin-left: 5px;
  }
  .section_profile .profile .name .post {
    display: block;
    font-size: 14px;
    margin-left: 0;
  }
  .section_profile .profile p {
    font-size: 14px;
    line-height: 1.6;
  }
  .section_profile .profile p.catch {
    font-size: 16px;
  }
  .section_profile .profile p.link {
    margin-top: 15px;
  }
  .section_profile .profile ul.dotlist li {
    font-size: 14px;
    line-height: 1.6;
  }
  .section_profile .profile .works ul.w245,
  .section_profile .profile .works ul.w200,
  .section_profile .profile .works ul.w230,
  .section_profile .profile .works ul.w360 {
    display: block;
    width: 100% !important;
    margin-top: 20px;
  }
  .section_profile .profile .works ul.w245 li,
  .section_profile .profile .works ul.w200 li,
  .section_profile .profile .works ul.w230 li,
  .section_profile .profile .works ul.w360 li {
    width: 100% !important;
    margin-right: 0 !important;
    margin-bottom: 20px !important;
  }
  .section_profile .profile .works ul li:last-child {
    margin-bottom: 0 !important;
  }
  .section_profile .profile .works ul li .caption {
    font-size: 10px;
  }
  .section_profile .profile .event {
    padding-top: 60px;
    margin: 20px auto 0;
  }
}
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_profile .headline_diagonal h2 {
    font-size: 6vw;
  }
  .section_profile .headline .title {
    font-size: 6vw;
  }
  .section_profile .headline + .content {
    margin-top: 15px;
  }
  .section_profile .personal {
    margin-bottom: 5px;
  }
  .section_profile .profile .name {
    font-size: 5.5vw;
  }
  .section_profile .profile .name .degree {
    font-size: 4vw;
  }
  .section_profile .profile .name .post {
    font-size: 3.5vw;
  }
  .section_profile .profile p {
    font-size: 3.5vw;
    letter-spacing: 0.03em;
  }
  .section_profile .profile p.catch {
    font-size: 4vw;
    margin-bottom: 3vw;
  }
  .section_profile .profile ul.dotlist li {
    font-size: 3.5vw;
    letter-spacing: 0.03em;
  }
  .section_profile .profile .event {
    width: 100%;
    padding-top: 20%;
    margin: 15px 0 0;
  }
  .section_profile .profile .event .tag {
    font-size: 4.2vw;
  }
  .section_profile .profile .event ul.col3 li .circle {
    /*font-size: 4.2vw;*/
  }
  .section_profile .profile .event .caution {
    font-size: 3.2vw;
    margin-top: 15px;
  }
  /* TCAカフェ + 青紅先生イベント */
  .section_profile .headline .event_read {
    font-size: 3.8vw;
    margin: 15px 0 0;
  }
  .section_profile .headline .event_title {
    font-size: 6vw;
    margin: 5px 0 15px;
  }
}
/* for SP max-width: $width_sp */
/*===============================================================

	プロフィール/トピック
	最終更新：2019/2/6 菅

===============================================================*/
/* コンテンツ */
.section_profile .topic {
  background: #fff;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  padding: 40px;
  margin-top: 40px;
}

.section_profile .profile .name .post {
  font-size: 20px;
  margin-left: 5px;
}

.section_profile .topic .topic_title {
  font-size: 30px;
  text-align: center;
  margin: 0 0 20px;
}

.section_profile .topic p {
  font-size: 16px;
  word-break: break-all;
  text-align: justify;
  text-justify: inter-ideograph;
  /* IE */
}

.section_profile .topic ul.photo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  margin-top: 20px;
}

.section_profile .topic ul.photo li {
  width: 475px;
  margin-right: 40px;
}

.section_profile .topic ul.photo li:last-child {
  margin-right: 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_profile .topic {
    padding: 20px;
    margin-top: 20px;
  }
  .section_profile .profile .name .post {
    font-size: 4.5vw;
    margin-left: 0;
  }
  .section_profile .topic .topic_title {
    font-size: 5vw;
    margin: 0 0 15px;
  }
  .section_profile .topic p {
    font-size: 3.5vw;
  }
  .section_profile .topic ul.photo {
    display: block;
    margin-top: 15px;
  }
  .section_profile .topic ul.photo li {
    width: 100%;
    margin-right: 0;
  }
  .section_profile .topic ul.photo li:last-child {
    margin-top: 15px;
  }
}
/* for SP max-width: $width_sp */
/*===============================================================

	wrap center
	最終更新：2023/05/26 北澤

===============================================================*/
.profile.wrap {
  -ms-flex-wrap: wrap !important;
      flex-wrap: wrap !important;
}

.profile.wrap .center {
  margin-top: 40px;
  width: 100%;
}

.profile.wrap .center + .left,
.profile.wrap .center + .right,
.profile.wrap .center + .center {
  margin-top: 40px;
}

.profile.wrap .bg_gray {
  padding: 20px;
  border: 1px solid #ddd;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .profile.wrap .center {
    margin-top: 20px;
  }
  .profile.wrap .center + .left,
  .profile.wrap .center + .right,
  .profile.wrap .center + .center {
    margin-top: 20px;
  }
  .profile.wrap .bg_gray {
    padding: 10px;
    border: 1px solid #ddd;
  }
}
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～768px */
/* for SP max-width: 768px */
/*===============================================================

	コンテンツ枠
	最終更新：2023/07/18 菅

===============================================================*/
.content.radius_shadow {
  background: #fff;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  padding: 40px;
}
@media only screen and (max-width: 800px) {
  .content.radius_shadow {
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
    border-radius: 5vw;
    padding: 20px;
  }
}

/*===============================================================

	section_experience_outline

===============================================================*/
.section_experience_outline {
  background: #fff;
  color: #000;
  border-top: solid 1px #ddd;
  position: relative;
}

.section_experience_outline .section_inner {
  padding-bottom: 60px;
}

.section_experience_outline .content {
  padding-bottom: 0;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
  .section_experience_outline .section_inner {
    padding-bottom: 50px;
  }
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_experience_outline {
    border-top: solid 0px #ddd;
    padding-top: 15px;
  }
  .section_experience_outline .section_inner {
    padding-top: 20px;
    padding-bottom: 20px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	section_experience_outline .item

===============================================================*/
.section_experience_outline .item .title,
.item_box .item .title {
  font-size: 20px;
  line-height: 1.4;
  font-weight: bold;
  margin: 0;
}

.item_box .item .title + .subtitle {
  font-size: 18px;
  margin: 0.5em 0;
}

.section_experience_outline .item p,
.item_box .item p {
  font-size: 16px;
  line-height: 1.5;
  font-weight: bold;
}

.section_experience_outline .item p,
.item_box .item p {
  font-size: 18px;
  line-height: 1.5;
  font-weight: bold;
}

.section_experience_outline .item * + p,
.item_box .item * + p {
  font-size: 16px;
  line-height: 1.5;
  font-weight: normal;
  margin-top: 5px;
}

.item_box .item p.num {
  position: absolute;
  top: 0;
  left: 50%;
  width: 30px;
  height: 30px;
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  line-height: 30px;
  font-weight: bold;
  text-align: center;
  background: #ff4e4e;
  border-radius: 50%;
  margin: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 10;
}

.item_box .item p.num.wh {
  color: #000;
  background: #fff;
  border: 1px solid #ddd;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_experience_outline .item .title,
  .item_box .item .title {
    font-size: 4.5vw;
  }
  .item_box .item .title + .subtitle {
    font-size: 4vw;
  }
  .section_experience_outline .item p,
  .item_box .item p {
    font-size: 3.8vw;
    line-height: 1.3;
  }
  .item_box .item p.num {
    width: 26px;
    height: 26px;
    font-size: 16px;
    line-height: 26px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	only_txt	
-------------------------------------------------------------*/
.section_experience_outline .item,
.item_box .item {
  position: relative;
  border: double 8px #fff;
  border-radius: 10px;
  padding: 20px;
  -webkit-box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0);
          box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0);
  /**/
  border-radius: 0px;
  border: solid 1px #ddd;
  color: #dc3434;
  color: #000;
  background: rgba(255, 255, 255, 0.9);
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /**/
}

.section_experience_outline .only_txt .item,
.item_box .only_txt .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.section_experience_outline .item::after,
.section_experience_outline .item::before,
.item_box .item::after,
.item_box .item::before {
  content: "";
  position: absolute;
  margin: auto;
  width: 10px;
  height: 10px;
}

.section_experience_outline .item::after,
.item_box .item::after {
  top: -1px;
  left: -1px;
  border-top: 10px solid #000;
  border-bottom: 10px solid transparent;
  border-left: 10px solid #000;
  border-right: 10px solid transparent;
  border-width: 12px;
  border-width: 1px;
}

.section_experience_outline .item::before,
.item_box .item::before {
  bottom: -1px;
  right: -1px;
  border-top: 10px solid transparent;
  border-bottom: 10px solid #000;
  border-left: 10px solid transparent;
  border-right: 10px solid #000;
  border-width: 12px;
  border-width: 1px;
}

.section_experience_outline .item::after,
.section_experience_outline .item::before,
.item_box .item::after,
.item_box .item::before {
  width: 10px;
  height: 10px;
  border-width: 1px;
}

.section_experience_outline .item .txt,
.item_box .item .txt {
  margin: 0;
  padding: 0;
}

.only_txt .item .txt {
  width: 100%;
  text-align: center;
}

.section_experience_outline .item .txt + .txt,
.item_box .item .txt + .txt,
.section_experience_outline .item .txt + .column,
.item_box .item .txt + .column {
  margin-top: 30px;
}

.section_experience_outline .item .txt.ls0,
.item_box .item .txt.ls0 {
  letter-spacing: 0;
}

.section_experience_outline .item .photo + .txt,
.item_box .item .photo + .txt {
  margin-top: 20px;
}

.item_box .item .copyright {
  position: absolute;
  bottom: 0;
  right: 0;
  font-size: 10px;
  line-height: 20px;
  margin-right: 20px;
  margin-top: 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_experience_outline .item,
  .item_box .item {
    padding: 15px;
    margin-top: 10px;
  }
  .section_experience_outline .item::after,
  .section_experience_outline .item::before,
  .item_box .item::after,
  .item_box .item::before {
    border-width: 1px;
  }
  .section_experience_outline .item .txt,
  .item_box .item .txt {
    text-align: left;
  }
  .section_experience_outline .item .photo + .txt,
  .item_box .item .photo + .txt {
    margin-top: 15px;
  }
  .item_box .item .copyright {
    font-size: 8px;
    line-height: 15px;
    margin-right: 15px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	矢印	
-------------------------------------------------------------*/
.section_experience_outline::after {
  content: "";
  position: absolute;
  top: -20px;
  left: 0;
  right: 0;
  margin: auto;
  width: 20px;
  height: 25px;
  border-top: 30px solid #ff4e4e;
  border-right: 20px solid transparent;
  border-bottom: 30px solid transparent;
  border-left: 20px solid transparent;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-animation: updown ease-in-out 1.5s infinite;
          animation: updown ease-in-out 1.5s infinite;
  -webkit-transform-origin: center 0 0;
          transform-origin: center 0 0;
  opacity: 1;
}

@-webkit-keyframes updown {
  0% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
  50% {
    -webkit-transform: translate(0px, 25px);
            transform: translate(0px, 25px);
  }
  100% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
}

@keyframes updown {
  0% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
  50% {
    -webkit-transform: translate(0px, 25px);
            transform: translate(0px, 25px);
  }
  100% {
    -webkit-transform: translate(0px, 0px);
            transform: translate(0px, 0px);
  }
}
/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_experience_outline::after {
    content: "";
    position: absolute;
    top: -10px;
    left: 0;
    right: 0;
    margin: auto;
    width: 20px;
    height: 25px;
    border-top: 20px solid #ff4e4e;
    border-right: 20px solid transparent;
    border-bottom: 20px solid transparent;
    border-left: 20px solid transparent;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	LINEで質問
	最終更新：2020/05/27
	/include/lne_question/html/

===============================================================*/
.section_line_question {
  background: #52b34c;
}

.section_line_question .content {
  position: relative;
}

.section_line_question .line_question_wrp {
  position: relative;
  background: #fff;
  padding: 40px 40px 0;
  -webkit-box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
}

.section_line_question .chance {
  text-align: center;
  margin-bottom: 20px;
}

.section_line_question .chance .title {
  position: relative;
  display: inline-block;
  color: #fff;
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}

.section_line_question .chance .title:before,
.section_line_question .chance .title:after {
  content: "";
  position: absolute;
  top: 50%;
  width: 30px;
  height: 3px;
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.section_line_question .chance .title:before {
  left: -1.5em;
}

.section_line_question .chance .title:after {
  right: -1em;
}

.section_line_question .headline .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
      align-content: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 26px;
  line-height: 40px;
}

.section_line_question .headline .title .logo {
  position: relative;
  width: 40px;
  height: 40px;
  margin: 0 5px;
}

.section_line_question .headline .title .logo img {
  position: absolute;
  width: 100%;
  height: auto;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.section_line_question .line_question_body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 20px;
}

.section_line_question .line_question_body .text {
  width: 80.8080808081%;
  padding-bottom: 40px;
  margin-right: 2.0202020202%;
}

.section_line_question .line_question_body .text .indent_list {
  text-indent: -1em;
  margin-top: 0;
}

.section_line_question .line_question_body .closing {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 3px solid #0e427c;
  background: #fff;
  border-radius: 5px;
  margin-top: 15px;
}

.section_line_question .line_question_body .closing .closing_head {
  width: 50%;
  height: 54px;
  background: #0e427c;
}

.section_line_question .line_question_body .closing .closing_head .title {
  color: #fff;
  font-size: 24px;
  line-height: 54px;
  font-weight: bold;
  text-align: center;
}

.section_line_question .line_question_body .closing .closing_body {
  width: 50%;
  height: 54px;
}

.section_line_question .line_question_body .closing .closing_body p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
      align-content: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #000;
  font-size: 20px;
  line-height: 54px;
  font-weight: bold;
  text-align: center;
}

.section_line_question .line_question_body .closing .closing_body p .limit {
  font-family: "Interstate-Bold-Condensed", sans-serif;
  color: #0e427c;
  font-size: 54px;
  font-weight: normal;
  margin-left: 5px;
}

.section_line_question .line_question_body .student {
  position: relative;
  width: 17.1717171717%;
}

.section_line_question .line_question_body .student img {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: auto;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_line_question .line_question_wrp {
    overflow-y: hidden;
    padding: 15px 15px 0;
  }
  .section_line_question .chance {
    margin-bottom: 15px;
  }
  .section_line_question .chance .title {
    font-size: 5.4vw;
    line-height: 1.3;
  }
  .section_line_question .chance .title:before,
  .section_line_question .chance .title:after {
    width: 5vw;
  }
  .section_line_question .chance .title:before {
    left: -1.75em;
  }
  .section_line_question .chance .title:after {
    right: -1.75em;
  }
  .section_line_question .headline .title {
    font-size: 4.4vw;
    line-height: 7vw;
  }
  .section_line_question .headline .title .logo {
    width: 7vw;
    height: 7vw;
    margin: 0 1vw;
  }
  .section_line_question .line_question_body {
    position: relative;
    display: block;
    margin-top: 15px;
  }
  .section_line_question .line_question_body .text {
    width: 100%;
    padding-bottom: 15px;
    margin-right: 0;
  }
  .section_line_question .line_question_body .text .indent_list {
    text-indent: -1em;
    margin-top: 0;
  }
  .section_line_question .line_question_body .closing {
    display: block;
    width: 50%;
    margin-top: 15px;
  }
  .section_line_question .line_question_body .closing .closing_head {
    width: 100%;
    height: auto;
  }
  .section_line_question .line_question_body .closing .closing_head .title {
    font-size: 4.2vw;
    line-height: 1.5;
    padding: 0.5em 0;
  }
  .section_line_question .line_question_body .closing .closing_body {
    width: 100%;
    height: auto;
    padding: 0.5em 0;
  }
  .section_line_question .line_question_body .closing .closing_body p {
    display: block;
    font-size: 4.2vw;
    line-height: 1.2;
  }
  .section_line_question .line_question_body .closing .closing_body p .limit {
    display: block;
    font-size: 9vw;
    margin-left: 0;
  }
  .section_line_question .line_question_body .student {
    position: absolute;
    bottom: -25vw;
    right: 0;
    width: 40%;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	.section_line_question

===============================================================*/
.section_line_question {
  background: #fff;
}

.section_line_question .line_question_head {
  text-align: center;
}

.section_line_question .line_question_head .title {
  /*color: #00BC26;*/
  font-size: 18px;
  line-height: 1.6;
  font-weight: bold;
}

.section_line_question .line_question_body {
  border: 2px solid #00BC26;
  border-radius: 10px;
  padding: 20px 40px;
  margin-top: 20px;
}

.section_line_question .line_question_body .checkbox_list li {
  position: relative;
  font-weight: bold;
  padding-left: 25px;
}

.section_line_question .line_question_body .checkbox_list li + li {
  margin-top: 5px;
}

.section_line_question .line_question_body .checkbox_list li:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  background: url("/open-campus/common/images/assets/icon_checkbox_green.svg") no-repeat center 4px;
}

.section_line_question .alert {
  font-size: 0.8em;
  text-indent: -1em;
  padding-left: 1em;
  margin-top: 1em;
}

.section_line_question .alert + .alert {
  margin-top: 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_line_question .line_question_head .title {
    font-size: 3.5vw;
  }
  .section_line_question .line_question_body {
    padding: 15px;
  }
  .section_line_question .line_question_body .checkbox_list li {
    font-size: 3.5vw;
    padding-left: 5vw;
  }
  .section_line_question .line_question_body .checkbox_list li:before {
    width: 4vw;
    height: 4.5vw;
  }
  .section_line_question .alert {
    font-size: 0.8em;
    text-indent: -1em;
    padding-left: 1em;
    margin-top: 1em;
  }
  .section_line_question .alert + .alert {
    margin-top: 0;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	4年制コース
	最終更新：2019/12/23

===============================================================*/
.section_4year_course {
  background-color: #fff;
  background-size: 200px auto;
  background-position: top right, bottom left;
  background-repeat: no-repeat;
  padding: 50px 0 0;
}

/*-------------------------------------------------------------
	コース別色指定
-------------------------------------------------------------*/
/* ものづくり創造デザイナーコース */
.section_4year_course.product_design_course {
  border-top: 10px solid;
  -o-border-image: linear-gradient(to right, #E60012 0%, #7D0000 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#E60012), to(#7D0000));
     border-image: linear-gradient(to right, #E60012 0%, #7D0000 100%);
  border-image-slice: 1;
  /*
  	background-image: url("/open-campus/common/include/experience/images/product_design_course/bg_rt.svg"),
  		url("/open-campus/common/include/experience/images/product_design_course/bg_lb.svg");
  */
}

.section_4year_course.product_design_course .course_color {
  color: #CA0915;
}

.section_4year_course.product_design_course .course_bg_gradient {
  -webkit-background: -webkit-gradient(linear, left top, right top, from(#E60012), to(#7D0000));
  -webkit-background: linear-gradient(to right, #E60012 0%, #7D0000 100%);
  background: -webkit-gradient(linear, left top, right top, from(#E60012), to(#7D0000));
  background: linear-gradient(to right, #E60012 0%, #7D0000 100%);
}

.section_4year_course.product_design_course .curriculum_box2 ul li.first {
  background: #E60012;
}

.section_4year_course.product_design_course .curriculum_box2 ul li.second {
  background: #C7000B;
}

.section_4year_course.product_design_course .curriculum_box2 ul li.third {
  background: #A40000;
}

.section_4year_course.product_design_course .curriculum_box2 ul li.fourth {
  background: #7D0000;
}

/* テクノロジーデザインマスターコース */
.section_4year_course.technology_design {
  border-top: 10px solid;
  -o-border-image: linear-gradient(to right, #008D3F 0%, #004D1A 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#008D3F), to(#004D1A));
     border-image: linear-gradient(to right, #008D3F 0%, #004D1A 100%);
  border-image-slice: 1;
  /*
  	background-image: url("/open-campus/common/include/experience/images/technology_design/bg_rt.svg"),
  		url("/open-campus/common/include/experience/images/technology_design/bg_lb.svg");
  */
}

.section_4year_course.technology_design .course_color {
  color: #005F32;
}

.section_4year_course.technology_design .course_bg_gradient {
  -webkit-background: -webkit-gradient(linear, left top, right top, from(#008D3F), to(#004D1A));
  -webkit-background: linear-gradient(to right, #008D3F 0%, #004D1A 100%);
  background: -webkit-gradient(linear, left top, right top, from(#008D3F), to(#004D1A));
  background: linear-gradient(to right, #008D3F 0%, #004D1A 100%);
}

.section_4year_course.technology_design .curriculum_box2 ul li.first {
  background: #008D3F;
}

.section_4year_course.technology_design .curriculum_box2 ul li.second {
  background: #007C36;
}

.section_4year_course.technology_design .curriculum_box2 ul li.third {
  background: #00662A;
}

.section_4year_course.technology_design .curriculum_box2 ul li.fourth {
  background: #004D1A;
}

/* ホビー&トイデザイナーマスターコース */
.section_4year_course.hobby_toy_designer {
  border-top: 10px solid;
  -o-border-image: linear-gradient(to right, #28b3ca 0%, #007d98 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#28b3ca), to(#007d98));
     border-image: linear-gradient(to right, #28b3ca 0%, #007d98 100%);
  border-image-slice: 1;
  /*
  	background-image: url("/open-campus/common/include/experience/images/hobby_toy_designer/bg_rt.svg"),
  		url("/open-campus/common/include/experience/images/hobby_toy_designer/bg_lb.svg");
  */
}

.section_4year_course.hobby_toy_designer .course_color {
  color: #00a4b8;
}

.section_4year_course.hobby_toy_designer .course_bg_gradient {
  -webkit-background: -webkit-gradient(linear, left top, right top, from(#28b3ca), to(#007d98));
  -webkit-background: linear-gradient(to right, #28b3ca 0%, #007d98 100%);
  background: -webkit-gradient(linear, left top, right top, from(#28b3ca), to(#007d98));
  background: linear-gradient(to right, #28b3ca 0%, #007d98 100%);
}

.section_4year_course.hobby_toy_designer .curriculum_box2 ul li.first {
  background: #12b8d7;
}

.section_4year_course.hobby_toy_designer .curriculum_box2 ul li.second {
  background: #00a4b8;
}

.section_4year_course.hobby_toy_designer .curriculum_box2 ul li.third {
  background: #008eac;
}

.section_4year_course.hobby_toy_designer .curriculum_box2 ul li.fourth {
  background: #007d98;
}

/* ゲームグラフィック&イラストレーションマスターコース */
.section_4year_course.game_graphic_illustration {
  border-top: 10px solid;
  -o-border-image: linear-gradient(to right, #b0508e 0%, #652968 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#b0508e), to(#652968));
     border-image: linear-gradient(to right, #b0508e 0%, #652968 100%);
  border-image-slice: 1;
  /*
  	background-image: url("/open-campus/common/include/experience/images/game_graphic_illustration/bg_rt.svg"),
  		url("/open-campus/common/include/experience/images/game_graphic_illustration/bg_lb.svg");
  */
}

.section_4year_course.game_graphic_illustration .course_color {
  color: #93176F;
}

.section_4year_course.game_graphic_illustration .course_bg_gradient {
  -webkit-background: -webkit-gradient(linear, left top, right top, from(#b0508e), to(#652968));
  -webkit-background: linear-gradient(to right, #b0508e 0%, #652968 100%);
  background: -webkit-gradient(linear, left top, right top, from(#b0508e), to(#652968));
  background: linear-gradient(to right, #b0508e 0%, #652968 100%);
}

.section_4year_course.game_graphic_illustration .curriculum_box2 ul li.first {
  background: #B73284;
}

.section_4year_course.game_graphic_illustration .curriculum_box2 ul li.second {
  background: #A60977;
}

.section_4year_course.game_graphic_illustration .curriculum_box2 ul li.third {
  background: #931574;
}

.section_4year_course.game_graphic_illustration .curriculum_box2 ul li.fourth {
  background: #6C216D;
}

/* ゲームプログラマー・プランナー&VRマスターコース */
.section_4year_course.game_programmer_planner_vr {
  border-top: 10px solid;
  -o-border-image: linear-gradient(to right, #1a408b 0%, #171f5a 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#1a408b), to(#171f5a));
     border-image: linear-gradient(to right, #1a408b 0%, #171f5a 100%);
  border-image-slice: 1;
  /*
  	background-image: url("/open-campus/common/include/experience/images/game_programmer_planner_vr/bg_rt.svg"),
  		url("/open-campus/common/include/experience/images/game_programmer_planner_vr/bg_lb.svg");
  */
}

.section_4year_course.game_programmer_planner_vr .course_color {
  color: #172A88;
}

.section_4year_course.game_programmer_planner_vr .course_bg_gradient {
  -webkit-background: -webkit-gradient(linear, left top, right top, from(#1a408b), to(#171f5a));
  -webkit-background: linear-gradient(to right, #1a408b 0%, #171f5a 100%);
  background: -webkit-gradient(linear, left top, right top, from(#1a408b), to(#171f5a));
  background: linear-gradient(to right, #1a408b 0%, #171f5a 100%);
}

.section_4year_course.game_programmer_planner_vr .curriculum_box2 ul li.first {
  background: #1D50A2;
}

.section_4year_course.game_programmer_planner_vr .curriculum_box2 ul li.second {
  background: #003894;
}

.section_4year_course.game_programmer_planner_vr .curriculum_box2 ul li.third {
  background: #132370;
}

.section_4year_course.game_programmer_planner_vr .curriculum_box2 ul li.fourth {
  background: #101649;
}

/* VFX・CG・映像マスターコース */
.section_4year_course.cg_images_vfx {
  border-top: 10px solid;
  -o-border-image: linear-gradient(to right, #F18904 0%, #CB480E 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#F18904), to(#CB480E));
     border-image: linear-gradient(to right, #F18904 0%, #CB480E 100%);
  border-image-slice: 1;
  /*
  	background-image: url("/open-campus/common/include/experience/images/cg_images_vfx/bg_rt.svg"),
  		url("/open-campus/common/include/experience/images/cg_images_vfx/bg_lb.svg");
  */
}

.section_4year_course.cg_images_vfx .course_color {
  color: #CB480E;
}

.section_4year_course.cg_images_vfx .course_bg_gradient {
  -webkit-background: -webkit-gradient(linear, left top, right top, from(#F18904), to(#CB480E));
  -webkit-background: linear-gradient(to right, #F18904 0%, #CB480E 100%);
  background: -webkit-gradient(linear, left top, right top, from(#F18904), to(#CB480E));
  background: linear-gradient(to right, #F18904 0%, #CB480E 100%);
}

.section_4year_course.cg_images_vfx .curriculum_box2 ul li.first {
  background: #ED6C00;
}

.section_4year_course.cg_images_vfx .curriculum_box2 ul li.second {
  background: #CD5D00;
}

.section_4year_course.cg_images_vfx .curriculum_box2 ul li.third {
  background: #A84A00;
}

.section_4year_course.cg_images_vfx .curriculum_box2 ul li.fourth {
  background: #803400;
}

/* アニメーションマスターコース */
.section_4year_course.animation_master {
  border-top: 10px solid;
  -o-border-image: linear-gradient(to right, #e95568 0%, #932f3e 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#e95568), to(#932f3e));
     border-image: linear-gradient(to right, #e95568 0%, #932f3e 100%);
  border-image-slice: 1;
  /*
  	background-image: url("/open-campus/common/include/experience/images/animation_master/bg_rt.svg"),
  		url("/open-campus/common/include/experience/images/animation_master/bg_lb.svg");
  */
}

.section_4year_course.animation_master .course_color {
  color: #e95568;
}

.section_4year_course.animation_master .course_bg_gradient {
  -webkit-background: -webkit-gradient(linear, left top, right top, from(#e95568), to(#932f3e));
  -webkit-background: linear-gradient(to right, #e95568 0%, #932f3e 100%);
  background: -webkit-gradient(linear, left top, right top, from(#e95568), to(#932f3e));
  background: linear-gradient(to right, #e95568 0%, #932f3e 100%);
}

.section_4year_course.animation_master .curriculum_box2 ul li.first {
  background: #e95568;
}

.section_4year_course.animation_master .curriculum_box2 ul li.second {
  background: #d34c5e;
}

.section_4year_course.animation_master .curriculum_box2 ul li.third {
  background: #b94152;
}

.section_4year_course.animation_master .curriculum_box2 ul li.fourth {
  background: #932f3e;
}

/* コミックイラストマスターコース */
.section_4year_course.comic_illustration_master {
  border-top: 10px solid;
  -o-border-image: linear-gradient(to right, #eb6ba4 0%, #990054 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#eb6ba4), to(#990054));
     border-image: linear-gradient(to right, #eb6ba4 0%, #990054 100%);
  border-image-slice: 1;
  /*
  	background-image: url("/open-campus/common/include/experience/images/comic_illustration_master/bg_rt.svg"),
  		url("/open-campus/common/include/experience/images/comic_illustration_master/bg_lb.svg");
  */
}

.section_4year_course.comic_illustration_master .course_color {
  color: #e4007f;
}

.section_4year_course.hoge4year .course_bg_gradient {
  -webkit-background: -webkit-gradient(linear, left top, right top, from(#eb6ba4), to(#990054));
  -webkit-background: linear-gradient(to right, #eb6ba4 0%, #990054 100%);
  background: -webkit-gradient(linear, left top, right top, from(#eb6ba4), to(#990054));
  background: linear-gradient(to right, #eb6ba4 0%, #990054 100%);
}

.section_4year_course.comic_illustration_master .curriculum_box2 ul li.first {
  background: #eb6ba4;
}

.section_4year_course.comic_illustration_master .curriculum_box2 ul li.second {
  background: #e4007f;
}

.section_4year_course.comic_illustration_master .curriculum_box2 ul li.third {
  background: #b90068;
}

.section_4year_course.comic_illustration_master .curriculum_box2 ul li.fourth {
  background: #990054;
}

/* ノベル&シナリオマスターコース */
.section_4year_course.novel_scenario_master {
  border-top: 10px solid;
  -o-border-image: linear-gradient(to right, #f9bc3d 0%, #f18c41 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#f9bc3d), to(#f18c41));
     border-image: linear-gradient(to right, #f9bc3d 0%, #f18c41 100%);
  border-image-slice: 1;
  /*
  	background-image: url("/open-campus/common/include/experience/images/novel_scenario_master/bg_rt.svg"),
  		url("/open-campus/common/include/experience/images/novel_scenario_master/bg_lb.svg");
  */
}

.section_4year_course.novel_scenario_master .course_color {
  color: #f6ab00;
}

.section_4year_course.novel_scenario_master .course_bg_gradient {
  -webkit-background: -webkit-gradient(linear, left top, right top, from(#f9bc3d), to(#f18c41));
  -webkit-background: linear-gradient(to right, #f9bc3d 0%, #f18c41 100%);
  background: -webkit-gradient(linear, left top, right top, from(#f9bc3d), to(#f18c41));
  background: linear-gradient(to right, #f9bc3d 0%, #f18c41 100%);
}

.section_4year_course.novel_scenario_master .curriculum_box2 ul li.first {
  background: #f9bc3d;
}

.section_4year_course.novel_scenario_master .curriculum_box2 ul li.second {
  background: #f6ab00;
}

.section_4year_course.novel_scenario_master .curriculum_box2 ul li.third {
  background: #f49c2a;
}

.section_4year_course.novel_scenario_master .curriculum_box2 ul li.fourth {
  background: #f18c41;
}

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

	2025年度ワールド
	スーパークリエーターワールド

-------------------------------------------------------------*/
.section_4year_course.super_creator_world {
  border-top: 10px solid;
  -o-border-image: linear-gradient(to right, #e50111 0%, #d00000 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#e50111), to(#d00000));
     border-image: linear-gradient(to right, #e50111 0%, #d00000 100%);
  border-image-slice: 1;
}

.section_4year_course.super_creator_world .course_color {
  color: #e50111;
}

.section_4year_course.super_creator_world .course_bg_gradient {
  background: -webkit-gradient(linear, left top, right top, from(#e50111), to(#d00000));
  background: linear-gradient(to right, #e50111 0%, #d00000 100%);
}

.section_4year_course.super_creator_world .curriculum_box2 ul li.first {
  background: #bb0000;
}

.section_4year_course.super_creator_world .curriculum_box2 ul li.second {
  background: #a60000;
}

.section_4year_course.super_creator_world .curriculum_box2 ul li.third {
  background: #910000;
}

.section_4year_course.super_creator_world .curriculum_box2 ul li.fourth {
  background: #7c0000;
}

/* スーパークリエーターワールド */
.section_4year_course.super_entertainment_world {
  border-top: 10px solid;
  -o-border-image: linear-gradient(to right, #1d50a0 0%, #083b8b 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#1d50a0), to(#083b8b));
     border-image: linear-gradient(to right, #1d50a0 0%, #083b8b 100%);
  border-image-slice: 1;
}

.section_4year_course.super_entertainment_world .course_color {
  color: #1d50a0;
}

.section_4year_course.super_entertainment_world .course_bg_gradient {
  background: -webkit-gradient(linear, left top, right top, from(#1d50a0), to(#083b8b));
  background: linear-gradient(to right, #1d50a0 0%, #083b8b 100%);
}

.section_4year_course.super_entertainment_world .curriculum_box2 ul li.first {
  background: #002676;
}

.section_4year_course.super_entertainment_world .curriculum_box2 ul li.second {
  background: #001161;
}

.section_4year_course.super_entertainment_world .curriculum_box2 ul li.third {
  background: #00004c;
}

.section_4year_course.super_entertainment_world .curriculum_box2 ul li.fourth {
  background: #000037;
}

/* デザインワールド */
.section_4year_course.design_world {
  border-top: 10px solid;
  -o-border-image: linear-gradient(to right, #8f61a2 0%, #7a4c8d 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#8f61a2), to(#7a4c8d));
     border-image: linear-gradient(to right, #8f61a2 0%, #7a4c8d 100%);
  border-image-slice: 1;
}

.section_4year_course.design_world .course_color {
  color: #8f61a2;
}

.section_4year_course.design_world .course_bg_gradient {
  background: -webkit-gradient(linear, left top, right top, from(#8f61a2), to(#7a4c8d));
  background: linear-gradient(to right, #8f61a2 0%, #7a4c8d 100%);
}

.section_4year_course.design_world .curriculum_box2 ul li.first {
  background: #653778;
}

.section_4year_course.design_world .curriculum_box2 ul li.second {
  background: #502263;
}

.section_4year_course.design_world .curriculum_box2 ul li.third {
  background: #3b0d4e;
}

.section_4year_course.design_world .curriculum_box2 ul li.fourth {
  background: #260039;
}

/* マンガ・イラスト・ノベルワールド */
.section_4year_course.manga_illustration_novel_world {
  border-top: 10px solid;
  -o-border-image: linear-gradient(to right, #dc4f93 0%, #c73a7e 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#dc4f93), to(#c73a7e));
     border-image: linear-gradient(to right, #dc4f93 0%, #c73a7e 100%);
  border-image-slice: 1;
}

.section_4year_course.manga_illustration_novel_world .course_color {
  color: #dc4f93;
}

.section_4year_course.manga_illustration_novel_world .course_bg_gradient {
  background: -webkit-gradient(linear, left top, right top, from(#dc4f93), to(#c73a7e));
  background: linear-gradient(to right, #dc4f93 0%, #c73a7e 100%);
}

.section_4year_course.manga_illustration_novel_world .curriculum_box2 ul li.first {
  background: #b22569;
}

.section_4year_course.manga_illustration_novel_world .curriculum_box2 ul li.second {
  background: #9d1054;
}

.section_4year_course.manga_illustration_novel_world .curriculum_box2 ul li.third {
  background: #88003f;
}

.section_4year_course.manga_illustration_novel_world .curriculum_box2 ul li.fourth {
  background: #73002a;
}

/* ゲーム・CG・アニメワールド */
.section_4year_course.game_cg_animation_world {
  border-top: 10px solid;
  -o-border-image: linear-gradient(to right, #52b489 0%, #3d9f74 100%);
     border-image: -webkit-gradient(linear, left top, right top, from(#52b489), to(#3d9f74));
     border-image: linear-gradient(to right, #52b489 0%, #3d9f74 100%);
  border-image-slice: 1;
}

.section_4year_course.game_cg_animation_world .course_color {
  color: #52b489;
}

.section_4year_course.manga_illustration_novel_world .course_bg_gradient {
  background: -webkit-gradient(linear, left top, right top, from(#52b489), to(#3d9f74));
  background: linear-gradient(to right, #52b489 0%, #3d9f74 100%);
}

.section_4year_course.game_cg_animation_world .curriculum_box2 ul li.first {
  background: #288a5f;
}

.section_4year_course.game_cg_animation_world .curriculum_box2 ul li.second {
  background: #13754a;
}

.section_4year_course.game_cg_animation_world .curriculum_box2 ul li.third {
  background: #006035;
}

.section_4year_course.game_cg_animation_world .curriculum_box2 ul li.fourth {
  background: #004b20;
}

.section_4year_course .headline {
  text-align: left;
}

.section_4year_course .headline .course_en {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.section_4year_course .headline .course_en .qualification span {
  display: inline-block;
  color: #fff;
  font-size: 18px;
  line-height: 1;
  font-weight: bold;
  padding: 7px 10px;
}

.section_4year_course .headline .course_en .en {
  font-size: 20px;
  margin-right: 10px;
}

.section_4year_course .headline .course {
  font-size: 43px;
  margin: 15px 0 30px;
}

.section_4year_course .headline .lead {
  font-size: 24px;
  margin-bottom: 15px;
}

.section_4year_course .headline .description {
  font-weight: bold;
  text-align: justify;
  text-justify: inter-ideograph; /*IE */
}

.section_4year_course .lesson_box {
  background: #f8f8f8;
  padding: 40px;
}

.section_4year_course .lesson_box .head .title {
  font-size: 22px;
}

.section_4year_course .lesson_box .head .title .course_color {
  font-size: 1.2em;
}

.section_4year_course .lesson_box .head .title .cap {
  display: inline-block;
  margin-left: 10px;
}

.section_4year_course .lesson_box .head .lead {
  text-align: justify;
  text-justify: inter-ideograph; /*IE */
  margin-top: 30px;
}

.section_4year_course .lesson_box .head .t_type {
  margin-top: 15px;
}

.section_4year_course .lesson_box .head .one_to_ten {
  width: 200px;
}

.section_4year_course .lesson_box .head .one_to_ten_x_tca {
  width: 442px;
}

.section_4year_course .lesson_box .lesson {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 30px;
}

.section_4year_course .lesson_box .lesson .txt {
  width: 68.6868686869%;
  margin-right: 3.0303030303%;
}

.section_4year_course .lesson_box .lesson .sub_title {
  font-size: 20px;
}

.section_4year_course .lesson_box .lesson .sub_title + p {
  margin-top: 10px;
  text-align: justify;
  text-justify: inter-ideograph; /*IE */
}

.section_4year_course .lesson_box .lesson .ph {
  width: 28.2828282828%;
}

.section_4year_course .lesson_box .lesson .profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.section_4year_course .lesson_box .lesson .profile .degree {
  width: 55%;
  font-size: 12px;
  font-weight: bold;
  text-align: right;
  margin-right: 5%;
}

.section_4year_course .lesson_box .lesson .profile .degree .name {
  font-size: 2em;
}

.section_4year_course .lesson_box .lesson .profile .profile_ph {
  width: 40%;
}

.section_4year_course .lesson_box .lesson.only {
  margin-top: 0;
}

.section_4year_course .lesson_box .works {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 30px;
}

.section_4year_course .lesson_box .works .left {
  width: 49.2424242424%;
  margin-right: 1.5151515152%;
}

.section_4year_course .lesson_box .works .right {
  width: 49.2424242424%;
}

.section_4year_course .lesson_box .works .right ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.section_4year_course .lesson_box .works .right ul li {
  width: 48.4615384615%;
  margin-top: 10px;
}

.section_4year_course .lesson_box .works .right ul li:nth-child(odd) {
  margin-right: 3.0769230769%;
}

.section_4year_course .lesson_box .works .right ul li:nth-child(-n+2) {
  margin-top: 0;
}

.section_4year_course .lesson_box .works .work_title {
  display: block;
  font-size: 12px;
  text-align: right;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .section_4year_course {
    padding: 30px 15px;
  }
  .section_4year_course .lesson_box {
    margin: 0 -15px;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_4year_course {
    background-size: 40vw auto;
    padding: 30px 15px 15px;
  }
  .section_4year_course .headline .course_en .qualification span {
    font-size: 3.8vw;
    padding: 3px 5px;
  }
  .section_4year_course .headline .course_en {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .section_4year_course .headline .course_en .en {
    font-size: 3.5vw;
    margin-top: 5px;
    margin-right: 0;
  }
  .section_4year_course .headline .course {
    font-size: 6vw;
    line-height: 1.2em;
    margin: 10px 0;
  }
  .section_4year_course .headline .lead {
    font-size: 4.2vw;
    margin-bottom: 10px;
  }
  .section_4year_course .lesson_box {
    padding: 20px 15px;
  }
  .section_4year_course .lesson_box .head .title {
    font-size: 4vw;
  }
  .section_4year_course .lesson_box .head .title .cap {
    display: block;
    font-size: 4.6vw;
    margin-top: 10px;
    margin-left: 0;
  }
  .section_4year_course .lesson_box .head .lead {
    margin-top: 15px;
  }
  .section_4year_course .lesson_box .head .t_type {
    overflow-x: scroll;
  }
  .section_4year_course .lesson_box .head .t_type .fitimg {
    width: 180vw;
  }
  .section_4year_course .lesson_box .head .one_to_ten {
    width: 40vw;
  }
  .section_4year_course .lesson_box .head .one_to_ten_x_tca {
    width: 60vw;
  }
  .section_4year_course .lesson_box .lesson {
    display: block;
    margin-top: 20px;
  }
  .section_4year_course .lesson_box .lesson .txt {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }
  .section_4year_course .lesson_box .lesson .sub_title {
    font-size: 4vw;
    line-height: 1.5;
    letter-spacing: 0;
  }
  .section_4year_course .lesson_box .lesson .sub_title + p {
    margin-top: 10px;
  }
  .section_4year_course .lesson_box .lesson .ph {
    width: 100%;
  }
  .section_4year_course .lesson_box .lesson .profile {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
  .section_4year_course .lesson_box .lesson .profile .degree {
    font-size: 3vw;
    text-align: left;
    margin-right: 0;
    margin-left: 5%;
  }
  .section_4year_course .lesson_box .works {
    display: block;
    margin-top: 15px;
  }
  .section_4year_course .lesson_box .works .left {
    width: 100%;
    margin-right: 0;
  }
  .section_4year_course .lesson_box .works .right {
    width: 100%;
    margin-top: 15px;
  }
  .section_4year_course .lesson_box .works .right ul li {
    margin-top: 15px;
  }
  .section_4year_course .lesson_box .works .work_title {
    font-size: 2.8vw;
    line-height: 1.2;
    letter-spacing: 0;
    margin-top: 5px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	2024年度ワールド別色指定
-------------------------------------------------------------*/
/*ーパーテクノロジーワールド*/
.section_4year_course.super_technology_world {
  border-top: 10px solid #e50111;
}

.section_4year_course.super_technology_world .course_bg_gradient {
  background: #e50111;
}

.section_4year_course.super_technology_world .course_color {
  color: #e50111;
}

.section_4year_course.super_technology_world .curriculum_box2 ul li.first {
  background: #bb0000;
}

.section_4year_course.super_technology_world .curriculum_box2 ul li.second {
  background: #a60000;
}

.section_4year_course.super_technology_world .curriculum_box2 ul li.third {
  background: #910000;
}

.section_4year_course.super_technology_world .curriculum_box2 ul li.fourth {
  background: #7c0000;
}

/*スーパーeエンターテインメントワールド*/
.section_4year_course.super_e_entertainment_world {
  border-top: 10px solid #1d50a0;
}

.section_4year_course.super_e_entertainment_world .course_bg_gradient {
  background: #1d50a0;
}

.section_4year_course.super_e_entertainment_world .course_color {
  color: #1d50a0;
}

.section_4year_course.super_e_entertainment_world .curriculum_box2 ul li.first {
  background: #002676;
}

.section_4year_course.super_e_entertainment_world .curriculum_box2 ul li.second {
  background: #001161;
}

.section_4year_course.super_e_entertainment_world .curriculum_box2 ul li.third {
  background: #00004c;
}

.section_4year_course.super_e_entertainment_world .curriculum_box2 ul li.fourth {
  background: #000037;
}

/*AI・ITテクノロジーワールド*/
.section_4year_course.ai_it_technology_world {
  border-top: 10px solid #5ab431;
}

.section_4year_course.ai_it_technology_world .course_bg_gradient {
  background: #5ab431;
}

.section_4year_course.ai_it_technology_world .course_color {
  color: #5ab431;
}

.section_4year_course.ai_it_technology_world .curriculum_box2 ul li.first {
  background: #308a07;
}

.section_4year_course.ai_it_technology_world .curriculum_box2 ul li.second {
  background: #1b7500;
}

.section_4year_course.ai_it_technology_world .curriculum_box2 ul li.third {
  background: #066000;
}

.section_4year_course.ai_it_technology_world .curriculum_box2 ul li.fourth {
  background: #004b00;
}

/*自動車デザインワールド*/
.section_4year_course .automotive_design_world {
  border-top: 10px solid #f1b000;
}

/*===============================================================

	.section_covid-19

===============================================================*/
.section_covid-19 {
  background: #fff;
}

.section_covid-19 .covid-19_box {
  border: 2px solid #ff4e4e;
  border-radius: 10px;
  padding: 30px;
}

.section_covid-19 .covid-19_head {
  text-align: center;
}

.section_covid-19 .covid-19_head .title {
  position: relative;
  display: inline-block;
  font-size: 24px;
  line-height: 30px;
  font-weight: bold;
}

.section_covid-19 .covid-19_head .title:before {
  content: "";
  position: absolute;
  top: 0;
  left: -40px;
  width: 30px;
  height: 30px;
  background: url("/open-campus/common/images/assets/icon_alert_red.svg") no-repeat center;
  background-size: 100% auto;
}

.section_covid-19 .covid-19_body {
  margin-top: 30px;
}

.section_covid-19 .covid-19_body .checkbox_list {
  padding: 20px;
}

.section_covid-19 .covid-19_body .checkbox_list li {
  position: relative;
  font-weight: bold;
  padding-left: 25px;
}

.section_covid-19 .covid-19_body .checkbox_list li + li {
  margin-top: 10px;
}

.section_covid-19 .covid-19_body .checkbox_list li:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  background: url("/open-campus/common/images/assets/icon_checkbox_red.svg") no-repeat center 4px;
}

.section_covid-19 .covid-19_body .alert {
  font-size: 0.8em;
  text-indent: -1em;
  padding-left: 1em;
  margin-top: 1em;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_covid-19 .covid-19_box {
    padding: 15px;
  }
  .section_covid-19 .covid-19_head .title {
    font-size: 4.2vw;
    line-height: 6vw;
  }
  .section_covid-19 .covid-19_head .title:before {
    left: -6vw;
    width: 6vw;
    height: 6vw;
  }
  .section_covid-19 .covid-19_body {
    margin-top: 15px;
  }
  .section_covid-19 .covid-19_body .checkbox_list {
    padding: 15px 0;
  }
  .section_covid-19 .covid-19_body .checkbox_list li {
    font-size: 3.5vw;
    padding-left: 5vw;
  }
  .section_covid-19 .covid-19_body .checkbox_list li:before {
    width: 4vw;
    height: 4.5vw;
  }
  .section_covid-19 .covid-19_body .alert {
    font-size: 0.8em;
    text-indent: -1em;
    padding-left: 1em;
    margin-top: 1em;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	section_how_to_join_line

===============================================================*/
.section_how_to_join_line {
  text-align: center;
}

.join_step {
  position: relative;
  border: solid 3px #00BC26;
  padding: 50px;
}

.join_step .step_container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.join_step .step_title {
  font-size: 30px;
  line-height: 1.3;
  background: #fff;
  color: #00BC26;
  padding: 5px 10px;
  position: absolute;
  top: -28px;
  left: 0;
  right: 0;
  margin: auto;
  width: 200px;
  border: solid 3px #00BC26;
}

.join_step .step {
  width: 49%;
  position: relative;
  background: #EEECE9;
  padding: 35px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.join_step .num {
  background: #79431B;
  color: #fff;
  font-size: 25px;
  line-height: 40px;
  position: absolute;
  top: -20px;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
  width: 40px;
  height: 40px;
  border-radius: 40px;
}

.join_step .num span {
  font-size: 8px;
  line-height: 1;
  display: block;
}

.join_step .title {
  font-size: 25px;
  color: #452E1D;
}

.join_step .txt {
  margin-top: 20px;
}

.join_step .qr img {
  height: 130px;
  width: auto;
}

.join_step .caption {
  margin-top: 10px;
  font-size: 12px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .join_step {
    padding: 5vw;
    padding-top: 2vw;
    margin-top: 5vw;
  }
  .join_step .step_title {
    font-size: 5vw;
    line-height: 10vw;
    padding: 0vw 3vw;
    width: 100%;
    position: static;
    border: 0;
    border-bottom: solid 2px #00BC26;
  }
  .join_step .step {
    width: 100%;
    padding: 5vw;
    margin-top: 8vw;
  }
  .join_step .num {
    font-size: 5vw;
    line-height: 8vw;
    top: -4vw;
    left: 0;
    right: 0;
    margin: auto;
    text-align: center;
    width: 8vw;
    height: 8vw;
    border-radius: 8vw;
    position: absolute;
  }
  .join_step .title {
    font-size: 5vw;
    line-height: 1.4;
  }
  .join_step .txt {
    margin-top: 20px;
  }
  .join_step .qr img {
    height: 130px;
    width: auto;
  }
  .join_step .caption {
    margin-top: 10px;
    font-size: 12px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	.join_step .step_container u
-------------------------------------------------------------*/
.join_step .step_container ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 20px;
  padding-top: 10px;
  background: #fff;
  border-radius: 5px;
  margin-top: -10px;
}

.join_step .step_container ul li {
  font-size: 14px;
  line-height: 1.2;
  text-align: left;
  margin-top: 10px;
  padding-left: 1em;
  position: relative;
}

.join_step .step_container ul li:nth-child(odd) {
  width: 40%;
}

.join_step .step_container ul li:nth-child(even) {
  width: 60%;
}

.join_step .step_container ul li span {
  font-size: 75%;
}

.join_step .step_container ul li::after {
  content: "";
  position: absolute;
  top: 5px;
  left: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  background: #A9651C;
  border-radius: 50%;
}

.join_step .limit {
  color: #ff4e4e;
  font-size: 16px;
  font-weight: bold;
  text-align: left;
  margin-top: 30px;
}

.join_step .alert {
  text-indent: -1em;
  padding-left: 1em;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .join_step .step_container ul {
    padding: 5vw;
    padding-top: 2.5vw;
    background: #fff;
    border-radius: 0;
  }
  .join_step .step_container ul li {
    width: 100%;
    font-size: 4vw;
    line-height: 1.2;
    margin-top: 2.5vw;
  }
  .join_step .step_container ul li:nth-child(odd) {
    width: 100%;
  }
  .join_step .step_container ul li:nth-child(even) {
    width: 100%;
  }
  .join_step .step_container ul li span {
    font-size: 75%;
  }
  .join_step .step_container ul li::after {
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    margin: auto;
    width: 6px;
    height: 6px;
    background: #A9651C;
    border-radius: 50%;
  }
  .join_step .btn_detail a {
    background: #00BC26;
    -webkit-box-shadow: 0 0 0 0;
            box-shadow: 0 0 0 0;
  }
  .join_step .limit {
    font-size: 3.5vw;
    margin-top: 4vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	step_notes	
-------------------------------------------------------------*/
.step_notes {
  margin-top: 30px;
}

.step_notes li {
  font-size: 14px;
  line-height: 1.2;
  text-align: left;
  margin-top: 10px;
  padding-left: 1em;
  position: relative;
}

.step_notes ul li::after {
  content: "";
  position: absolute;
  top: 5px;
  left: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  background: #ccc;
  border-radius: 50%;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .step_notes {
    margin-top: 4vw;
  }
  .step_notes li {
    font-size: 3.5vw;
    line-height: 1.2;
    margin-top: 2.5vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	section_event_access

===============================================================*/
.section_event_access {
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.section_event_access .google_map iframe {
  width: 100%;
  height: 300px;
}
@media screen and (max-width: 800px) {
  .section_event_access .google_map iframe {
    width: 100%;
    height: 60vw;
  }
}

/*===============================================================

	2024/5/8
	section_information
	※frame.cssのオーバーライドになります

===============================================================*/
.section_information .section_inner {
  padding: 50px 0 0;
}
@media only screen and (max-width: 800px) {
  .section_information .section_inner {
    padding: 5vw 5vw 0;
  }
}
.section_information .content {
  border: none;
  background: #fff;
  border-radius: 10px;
}
@media only screen and (max-width: 800px) {
  .section_information .content {
    padding: 4vw;
  }
}
.section_information .content .title .sun {
  color: #FD004E;
}
.section_information .btn_bus {
  max-width: 100%;
  margin-top: 1em;
}
.section_information .btn_bus a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #ff4e4e;
  font-size: 16px;
  text-align: left;
  background: transparent;
  border: 2px solid #ff4e4e;
  border-radius: 3em;
  padding: 0.75em;
}
@media only screen and (max-width: 800px) {
  .section_information .btn_bus a {
    font-size: 3.5vw;
  }
}
.section_information .btn_bus a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  width: 10px;
  height: 10px;
  border-bottom: 2px solid #ff4e4e;
  border-right: 2px solid #ff4e4e;
  -webkit-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
}
@media only screen and (max-width: 800px) {
  .section_information .btn_bus a::after {
    width: 2vw;
    height: 2vw;
    right: 4vw;
  }
}
.section_information .btn_bus a:hover {
  background: #fff3f8;
}
.section_information .btn_bus a .icon img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 19px;
  margin-right: 10px;
}
.section_information .btn_bus a .icon img img {
  width: 100%;
  height: auto;
}

/*-------------------------------------------------------------
	recommend_info_box
-------------------------------------------------------------*/
.info_box_wrp {
  margin-top: -10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
}

.info_box_wrp > a {
  display: none;
}

.recommend_info_box {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 15px;
  background: #fff;
  width: calc((100% - 30px) / 2);
  margin-top: 30px;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 10px;
}

.show_box.show_odd {
  margin-left: 0;
}

/* $width_content以下 */
@media screen and (max-width: 1000px) {
  .info_box_wrp {
    margin-top: 0;
  }
  .recommend_info_box {
    width: calc((100% - 20px) / 2);
    /*
    margin-left: 20px;
    */
    margin-top: 20px;
  }
} /*  max-width: $width_content */
/* タブレット以下 */
@media screen and (max-width: 960px) {
  .info_box_wrp {
    display: block;
  }
  .recommend_info_box {
    width: 100%;
    margin-left: 0px;
    margin-top: 20px;
  }
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .info_box_wrp {
    margin-top: 5px;
  }
  .recommend_info_box {
    width: 100%;
    margin-left: 0px;
    margin-top: 5vw;
    padding: 5vw;
  }
  .show_box:nth-child(-n+2) {
    margin-top: 8vw;
  }
  .show_box:first-child {
    margin-top: 20px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
.recommend_info_box .left
-------------------------------------------------------------*/
.recommend_info_box .left {
  width: 200px;
  /*	width: calc(100% - 265px - 15px);*/
  float: left;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
  .recommend_info_box .left {
    width: 170px;
  }
  .recommend_info_box .left {
    width: 40%;
  }
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .recommend_info_box .left {
    /*width: calc(100% /2.5*1);*/
    width: 100%;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
.recommend_info_box .right 
-------------------------------------------------------------*/
.recommend_info_box .right {
  width: calc(100% - 200px - 15px);
  float: left;
  margin-left: 15px;
  text-align: left;
}

.recommend_info_box .title {
  margin-top: 10px;
  font-size: 18px;
  line-height: 1.4;
}

.recommend_info_box .right p {
  font-size: 14px;
  margin-top: 8px;
  line-height: 1.5;
  font-weight: normal;
}

.recommend_info_box .right p br {
  display: none;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
  .recommend_info_box .right {
    width: calc(100% - 170px - 15px);
  }
  .recommend_info_box .right {
    width: calc(60% - 10px);
    margin-left: 10px;
  }
  .recommend_info_box .right p {
    font-size: 14px;
  }
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .recommend_info_box .right {
    /*width: calc(100% /2.5*1.5 - 10px);*/
    width: 100%;
    margin-left: 0;
    margin-top: 2.5vw;
  }
  .recommend_info_box .title {
    margin-top: 2.5vw;
    margin-bottom: 1vw;
    font-size: 4.5vw;
    line-height: 1.4;
  }
  .recommend_info_box .right p {
    margin-top: 0px;
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
.recommend_info_box .cat
-------------------------------------------------------------*/
.recommend_info_box .cat {
  float: left;
  width: calc(100% - 40px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.recommend_info_box .cat li {
  font-size: 12px;
  line-height: 23px;
  font-weight: 500;
  text-align: center;
  padding: 0 5px;
  border: solid 1px #ff4e4e;
  width: 100%;
  width: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #ff4e4e;
  letter-spacing: 0em;
  box-sizing: border-box;
}

.recommend_info_box .cat .job_viking,
.recommend_info_box .cat .find_like,
.recommend_info_box .cat .try_like {
  background: #fff;
  border: 0;
  border-bottom: solid 2px #62b6dd;
  color: #62b6dd;
  padding: 0;
  padding-bottom: 2px;
  margin-right: 10px;
}

.recommend_info_box .cat .job_viking {
  border-bottom: solid 2px #62b6dd;
  color: #3994BE;
}

.recommend_info_box .cat .find_like {
  border-bottom: solid 2px #ffc043;
  color: #FFA900;
}

.recommend_info_box .cat .try_like {
  border-bottom: solid 2px #42bb9a;
  color: #379D81;
}

.recommend_info_box .cat .briefing {
  background: #ff4e4e;
  color: #fff;
}

.recommend_info_box .cat .online_visit,
.recommend_info_box .cat .online {
  background: #fff;
  border-color: #0079CF;
  color: #0079CF;
  border-color: #999;
  color: #666;
}

.recommend_info_box .cat .event + .online_visit,
.recommend_info_box .cat .special_lecture + .online_visit,
.recommend_info_box .cat .briefing + .online_visit,
.recommend_info_box .cat .event + .online,
.recommend_info_box .cat .special_lecture + .online,
.recommend_info_box .cat .briefing + .online {
  border-left: 0;
}

.recommend_info_box .cat .job_viking + .online_visit,
.recommend_info_box .cat .find_like + .online_visit,
.recommend_info_box .cat .try_like + .online_visit {
  margin-left: 5px;
}

.recommend_info_box .cat .event {
  background: #FFCE00;
  border-color: #FFCE00;
  color: #fff;
}

.recommend_info_box .cat .special_lecture {
  background: #0079CF;
  border-color: #0079CF;
  color: #fff;
  letter-spacing: 0.1em;
  /*  width: 49%;*/
}

/* $width_content以下 */
@media screen and (max-width: 1000px) {
  .recommend_info_box .cat {
    width: auto;
  }
  .recommend_info_box .cat li {
    font-size: 12px;
    line-height: 24px;
  }
} /* max-width: $width_content */
/* タブレット以下 */
@media screen and (max-width: 960px) {
  .recommend_info_box .cat {
    /*	width: 200px;*/
  }
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .recommend_info_box .cat {
    /*	width: 130px;*/
  }
  .recommend_info_box .cat li {
    font-size: 12px;
    line-height: 14px;
    padding: 5px 5px;
  }
  .recommend_info_box .cat .job_viking,
  .recommend_info_box .cat .find_like,
  .recommend_info_box .cat .try_like {
    padding-bottom: 5px;
  }
} /* for SP max-width: $width_sp */
/* SP向けレイアウトの指定：～374px */
@media only screen and (max-width: 374px) {
  /*
  .recommend_info_box .cat {
  	font-size: 7px;
  	width: 80px;
  	line-height: 15px;
  	padding: 0;
  }
  */
} /* for SP max-width: 374px */
/*-------------------------------------------------------------
	.recommend_info_box .icon
-------------------------------------------------------------*/
.recommend_info_box .icon {
  width: 24px;
  height: 24px;
  float: right;
  margin-left: 1px;
  border-radius: 3px;
  padding: 3px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.recommend_info_box .icon img {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  vertical-align: top;
}

.recommend_info_box .icon.icon_bus {
  background: #fff100 url("../images/assets/ajax-loader.gif") no-repeat center center;
}

.recommend_info_box .icon.icon_bus img {
  opacity: 0;
}

.recommend_info_box.hasbus .icon.icon_bus img {
  opacity: 1;
}

.recommend_info_box.hasbus .icon.icon_bus,
.recommend_info_box.hasbus .icon.icon_bus .none {
  display: block !important;
  background: #fff100;
}

.recommend_info_box.nobus .icon.icon_bus {
  opacity: 0;
}

.recommend_info_box .icon.icon_lunch {
  background: #fff100;
  padding: 6px;
}

.recommend_info_box .icon.icon_beginner {
  padding: 4px;
  background: #434343;
  display: none;
}

/* $width_content以下 */
@media screen and (max-width: 1000px) {
  .recommend_info_box .icon_wrp {
    margin-top: 0;
  }
  .recommend_info_box .icon {
    margin-left: 5px;
    margin-right: 0;
    margin-top: 0;
  }
} /* for tablet max-width:$width_content */
/* タブレット以下 */
@media screen and (max-width: 960px) {
  .recommend_info_box .icon_wrp {
    margin-top: 0;
  }
  .recommend_info_box .icon {
    float: right;
    margin-top: 0;
  }
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .recommend_info_box .icon_wrp {
    margin-top: 0;
  }
  .recommend_info_box .icon {
    width: 20px;
    height: 20px;
    margin-left: 3px;
    margin-top: 0;
    padding: 2px;
    -webkit-box-sizing: inherit;
            box-sizing: inherit;
    position: relative;
  }
  .recommend_info_box .icon.icon_lunch {
    padding: 2px;
  }
  .recommend_info_box .icon.icon_lunch img {
    width: 14px;
  }
  .recommend_info_box .icon.icon_beginner {
    padding: 2px;
  }
  .recommend_info_box .icon img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
  }
} /* for SP max-width: $width_sp */
/* SP向けレイアウトの指定：～374px */
@media only screen and (max-width: 374px) {
  /*	
  .recommend_info_box .icon {
  	width: 15px;
  	height: 15px;
  	margin-left: 3px;
  }
  .recommend_info_box .icon.icon_lunch img {
  	width: 11px;
  }
  .recommend_info_box .icon img {
  	width: 11px;
  	height: 12px;
  }
  */
} /* for SP max-width: 374px */
/*-------------------------------------------------------------
	.recommend_info_box .date_wrp
-------------------------------------------------------------*/
.recommend_info_box .date_wrp {
  border-top: solid 1px #dcdcdc;
  margin-top: 15px;
  padding-top: 10px;
}

.recommend_info_box .date_wrp .date {
  font-size: 14px;
  color: #ff4e4e;
  text-align: center;
  width: 60px;
  padding: 3px 5px;
  border: solid 1px #ff4e4e;
  float: left;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-weight: bold;
}

.recommend_info_box .date_wrp .datelist {
  font-size: 16px;
  text-align: left;
  font-weight: bold;
  width: calc(100% - 60px);
  float: left;
  margin-top: 0;
  padding-left: 10px;
  line-height: 29px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.recommend_info_box .date_wrp .sun,
.recommend_info_box .date_wrp .holiday {
  /*	color: #e61673;*/
  color: #de1616;
}

.recommend_info_box .date_wrp .sat {
  /*	color: #345b8a;*/
  color: #1437CC;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
  .recommend_info_box .date_wrp .datelist {
    font-size: 14px;
  }
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .recommend_info_box .date_wrp {
    padding-top: 10px;
    margin-top: 10px;
  }
  .recommend_info_box .date_wrp .date {
    font-size: 10px;
    width: 45px;
    padding: 2px 0;
  }
  .recommend_info_box .date_wrp .datelist {
    width: calc(100% - 45px);
    font-size: 12px;
    line-height: 21px;
  }
} /* for SP max-width: $width_sp */
/* SP向けレイアウトの指定：～374px */
@media only screen and (max-width: 374px) {
  .recommend_info_box .date_wrp .date {
    font-size: 9px;
    width: 40px;
  }
  .recommend_info_box .date_wrp .datelist {
    width: calc(100% - 40px);
    font-size: 12px;
    line-height: 19px;
  }
} /* for SP max-width: 374px */
/*-------------------------------------------------------------
	.recommend_info_box .btn_wrp 
-------------------------------------------------------------*/
.recommend_info_box .btn_wrp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 102%;
  margin-left: -1%;
  margin-right: -1%;
}

.recommend_info_box .btn_wrp .btn_detail {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  -ms-flex-preferred-size: 31.3333%;
      flex-basis: 31.3333%;
  width: auto;
  margin-top: 15px;
  margin-left: 1%;
  margin-right: 1%;
  border-radius: 4px;
  overflow: hidden;
  will-change: transform;
}

.recommend_info_box .btn_wrp .btn_detail a {
  font-size: 14px;
  padding: 12px 0;
  color: #fff;
  border-radius: 5px;
  -webkit-box-shadow: none;
          box-shadow: none;
  font-weight: 500;
}

.recommend_info_box .btn_wrp .btn_detail a:after {
  display: none;
}

.recommend_info_box .btn_wrp .btn_detail.detail a {
  background: #999;
}

.recommend_info_box .btn_wrp .btn_detail.entry a {
  background: #FF3644;
}

.recommend_info_box .btn_wrp .btn_detail.line a {
  background: #00BC26;
}

.recommend_info_box .btn_wrp .btn_detail a:hover {
  opacity: 0.7;
}

/* タブレット以下 */
@media screen and (max-width: 1220px) {
  .recommend_info_box .btn_wrp .btn_detail a {
    font-size: 1.2vw;
  }
} /* for tablet max-width: $width_content */
/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .recommend_info_box .btn_wrp .btn_detail a {
    font-size: 1.1vw;
  }
} /* for tablet max-width: $width_content */
/* タブレット以下 */
@media screen and (max-width: 960px) {
  .recommend_info_box .btn_wrp .btn_detail a {
    font-size: 15px;
  }
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .recommend_info_box .btn_wrp .btn_detail {
    margin-top: 10px;
  }
  .recommend_info_box .btn_wrp .btn_detail a {
    font-size: 3.8vw;
    line-height: 1.3;
    padding: 2vw 0;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	コロナ取り組み
	最終更新：2020/10/01
	/include/hoge/html/

===============================================================*/
.corona_wrp {
  background-color: #fff;
  text-align: center;
  padding-bottom: 40px;
}

.corona_wrp .corona_detail {
  display: none;
  margin-top: -50px;
}

.corona_wrp .corona_title {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.6;
  padding: 30px 0 20px 0;
}

.corona_wrp .corona_txt {
  text-align: left;
  margin: 0 auto;
  padding: 0 30px;
  max-width: 800px;
  margin-top: 50px;
}

.corona_wrp .corona_txt p {
  font-size: 15px;
  line-height: 1.6;
}

.corona_wrp .corona_txt .caption {
  font-size: 75%;
  margin-top: 15px;
}

.corona_wrp .measures {
  margin-top: 50px;
  padding: 30px;
  border-radius: 10px;
  background: #fff;
  border: solid 1px #ddd;
  /*  box-shadow: 0 0 20px 0 rgba(0,0,0,0.1);*/
}

.corona_wrp .measures .title {
  font-size: 22px;
  color: #fa9d04;
}

.corona_wrp .measures ul {
  margin-top: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.corona_wrp .measures ul li {
  font-size: 12px;
  line-height: 1.4;
  color: #fa9d04;
  border: solid 1px #fa9d04;
  padding: 10px;
  border-radius: 5px;
  margin-top: 10px;
  width: 49.5%;
}

.corona_wrp .measures .caption {
  margin-top: 20px;
  font-size: 80%;
}

.corona_wrp .movie {
  margin-top: 50px;
  padding-bottom: 50px;
}

.corona_wrp .movie .youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.corona_wrp .movie .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.corona_wrp .corona_btn {
  width: 300px;
  margin: 0 auto;
}

.corona_wrp .corona_btn a {
  display: block;
  font-size: 15px;
  line-height: 1;
  padding: 10px 15px;
  color: #000;
  border: solid 1px #000;
  text-align: center;
  border-radius: 3px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.corona_wrp .corona_btn a:hover {
  text-decoration: none;
  /*  background: #FAC103;*/
  /*
    background: rgba(255,255,255,0.5);
    border: solid 1px #fff;
    box-shadow: 0 0 20px 0 rgba(0,0,0,0.1);
  */
  opacity: 0.7;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .corona_wrp .corona_title {
    font-size: 22px;
  }
  .corona_wrp {
    padding: 40px;
    padding-top: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .corona_wrp .corona_detail {
    margin-top: -30px;
  }
  .corona_wrp .measures,
  .corona_wrp .movie,
  .corona_wrp .corona_txt {
    margin-top: 30px;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～840px */
@media only screen and (max-width: 840px) {
  .corona_wrp .movie {
    width: 100%;
  }
} /* for SP max-width: 840px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .corona_wrp .corona_detail {
    margin-top: -5vw;
    padding: 0 2vw;
  }
  .corona_wrp .measures,
  .corona_wrp .movie,
  .corona_wrp .corona_txt {
    margin-top: 5vw;
  }
  .corona_wrp {
    margin: 0 auto;
    padding: 5vw 3vw;
  }
  .corona_wrp .corona_txt {
    padding: 0;
  }
  .corona_wrp .flex_container {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0;
  }
  .corona_wrp .corona_title {
    font-size: 3.8vw;
    padding: 0 0 3vw 0;
    text-align: center;
    font-weight: bold;
  }
  .corona_wrp .corona_txt p {
    font-size: 3.5vw;
    line-height: 1.6;
  }
  .corona_wrp .flex_container .item {
    margin-top: 2vw;
  }
  .corona_wrp .corona_icon {
    width: 15vw;
    height: 15vw;
  }
  .corona_wrp .item p {
    font-size: 3vw;
  }
  .corona_wrp .movie {
    padding-bottom: 4vw;
  }
  .corona_wrp .measures {
    padding: 5vw;
    border-radius: 5px;
  }
  .corona_wrp .measures .title {
    font-size: 4vw;
  }
  .corona_wrp .measures ul {
    margin-top: 3vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .corona_wrp .measures ul li {
    font-size: 3.5vw;
    line-height: 1.4;
    padding: 3vw;
    margin-top: 1vw;
    width: 100%;
    border-radius: 2px;
  }
  .corona_wrp .measures .caption {
    margin-top: 3vw;
    font-size: 3.2vw;
    text-align: left;
  }
  .corona_wrp .corona_btn {
    width: 70%;
  }
  .corona_wrp .corona_btn a {
    font-size: 3.5vw;
    padding: 3vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	admission_policy

===============================================================*/
.admission_policy {
  text-align: center;
}

.admission_policy .title {
  font-size: 20px;
  line-height: 1.5;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	アドミッション・ポリシー
-------------------------------------------------------------*/
.entrance_ao .apply {
  border: 1px solid #182980;
  background: #fff;
  border-radius: 0;
  overflow: hidden;
  margin-top: 30px;
}

.entrance_ao .apply .subtitle {
  color: #182980;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  background: #DAF5FF;
  border-bottom: 1px solid #182980;
  padding: 10px 0;
}

.entrance_ao .apply ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.entrance_ao .apply ul li {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 50%;
  padding: 0 15px;
  margin: 15px 0;
  text-align: left;
}

.entrance_ao .apply ul li:nth-child(odd) {
  border-right: 1px dotted #182980;
}

.entrance_ao .apply ul li .inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  color: #182980;
  font-weight: bold;
  padding: 10px 0;
}

.entrance_ao .apply ul li .inner:after {
  content: "";
  position: absolute;
  bottom: -16px;
  left: 0;
  width: 100%;
  border-bottom: 1px dotted #182980;
}

.entrance_ao .apply ul li:nth-child(n+3) .inner:after {
  content: none;
}

.entrance_ao .apply ul li .inner p {
  position: relative;
  padding-left: 30px;
}

.entrance_ao .apply ul li .inner p:before {
  content: "";
  position: absolute;
  top: 2px;
  left: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 20px;
  height: 20px;
  background: #fff;
  border: 2px solid #182980;
}

.entrance_ao .apply ul li .inner p:after {
  content: "";
  position: absolute;
  top: 2px;
  left: 4px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 20px;
  height: 8px;
  border-bottom: 3px solid #c00;
  border-left: 3px solid #c00;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.entrance_ao .apply ul li .inner .icon {
  height: 52px;
}

.entrance_ao .apply ul li .inner .icon img {
  height: 100%;
  width: auto;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .entrance_ao .apply {
    margin-top: 0;
  }
  .entrance_ao .apply .subtitle {
    font-size: 4.4vw;
    padding: 10px 0;
  }
  .entrance_ao .apply ul {
    display: block;
  }
  .entrance_ao .apply ul li {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: auto;
    border-bottom: 1px dotted #182980;
    padding: 15px 0;
    margin: 0 15px;
  }
  .entrance_ao .apply ul li:last-child {
    border-bottom: 0;
  }
  .entrance_ao .apply ul li:nth-child(odd) {
    border-right: 0;
  }
  .entrance_ao .apply ul li .inner {
    padding: 0;
  }
  .entrance_ao .apply ul li .inner:after {
    content: none;
    position: absolute;
    bottom: -10px;
    left: 0;
    width: 100%;
  }
  .entrance_ao .apply ul li .inner p {
    position: relative;
    font-size: 3.8vw;
    padding-left: 6vw;
  }
  .entrance_ao .apply ul li .inner p:before {
    top: 1vw;
    width: 4vw;
    height: 4vw;
    border: 2px solid #182980;
  }
  .entrance_ao .apply ul li .inner p:after {
    top: 0.8vw;
    left: 0.8vw;
    width: 4vw;
    height: 2vw;
    border-bottom: 2px solid #c00;
    border-left: 2px solid #c00;
  }
  .entrance_ao .apply ul li .inner .icon {
    height: 12vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	ネットAOエントリー
-------------------------------------------------------------*/
.net_ao_entry {
  background: #fafafa;
  padding: 50px;
  margin-top: 50px;
}

.net_ao_entry p {
  text-align: center;
}

.net_ao_entry p + p {
  margin-top: 10px;
}

.net_ao_entry .notice {
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
}

.net_ao_entry .notice span {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #ff0));
  background: linear-gradient(transparent 50%, #ff0 50%);
  padding: 0 0.5em;
}

.net_ao_entry .caution {
  font-size: 12px;
  line-height: 1.5;
}

.net_ao_entry .banner {
  margin-top: 20px;
}

.net_ao_entry .banner a {
  display: block;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.net_ao_entry .banner a:hover {
  -webkit-transform: scale(1.05, 1.05);
          transform: scale(1.05, 1.05);
}

/* narrow */
.page_content .net_ao_entry {
  /*margin-top: 30px;*/
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .net_ao_entry {
    padding: 4vw;
    margin-top: 8vw;
  }
  .net_ao_entry p {
    text-align: left;
  }
  .net_ao_entry p + p {
    margin-top: 3vw;
  }
  .net_ao_entry .notice {
    font-size: 4.4vw;
    text-align: center;
  }
  .net_ao_entry .notice span {
    font-size: 4vw;
  }
  .net_ao_entry .caution {
    font-size: 3vw;
  }
  .net_ao_entry .banner {
    margin-top: 3vw;
  }
  .page_content .net_ao_entry {
    margin-top: 8vw;
  }
} /* for SP max-width: $width_sp */
/* 高校生の皆様へ */
.for_high_school_student .schedule {
  position: relative;
  background: #f5f5f5;
  padding: 20px;
  margin: 15px 0 30px;
}

.for_high_school_student .schedule .date {
  text-align: center;
}

.for_high_school_student .schedule ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 10px;
}

.for_high_school_student .schedule ul li {
  -ms-flex-preferred-size: 16.6666666667%;
      flex-basis: 16.6666666667%;
  font-size: 14px;
  text-align: center;
  border-right: dotted 1px #ccc;
}

.for_high_school_student .schedule ul li:last-child {
  border-right: none;
}

.for_high_school_student .schedule ul + .date {
  border-top: dotted 1px #ccc;
  padding-top: 20px;
  margin-top: 20px;
}

.for_high_school_student ul.line_copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  background: #f0faf0;
  padding: 20px;
  margin: 15px 0;
}

.for_high_school_student ul.line_copy li {
  -ms-flex-preferred-size: 33.3333333333%;
      flex-basis: 33.3333333333%;
  font-size: 14px;
  line-height: 2;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .for_high_school_student .schedule {
    padding: 4vw;
    margin: 4vw 0;
  }
  .for_high_school_student .schedule .date {
    font-size: 3.5vw;
  }
  .for_high_school_student .schedule ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 4vw;
  }
  .for_high_school_student .schedule ul li {
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%;
    font-size: 3.2vw;
  }
  .for_high_school_student .schedule ul li:nth-child(3n) {
    border-right: none;
  }
  .for_high_school_student .schedule ul li:nth-child(n+4) {
    margin-top: 2vw;
  }
  .for_high_school_student .schedule ul + .date {
    padding-top: 4vw;
    margin-top: 4vw;
  }
  .for_high_school_student ul.line_copy {
    display: block;
    padding: 4vw;
    margin: 4vw 0;
  }
  .for_high_school_student ul.line_copy li {
    font-size: 3.2vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	column

===============================================================*/
.column + .column {
  margin-top: 50px;
}

.column .title {
  font-size: 28px;
  margin: 0;
}

.column * + .title {
  margin-top: 30px;
}

.column .subtitle {
  font-size: 18px;
  margin: 0;
}

.column * + .subtitle {
  margin-top: 30px;
}

.column .title + .subtitle {
  margin-top: 15px;
}

.column p {
  font-size: 16px;
  line-height: 1.7;
  margin: 0;
}

.column * + p {
  margin-top: 20px;
}

.column .headline_pop + p {
  margin-top: 40px;
}

.column p + p {
  margin-top: 10px;
}

.column .ph img {
  width: 100%;
  height: auto;
}

.column .ph + * {
  margin-top: 20px;
}

.column * + .datalist_list {
  margin-top: 15px;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .column .title {
    font-size: 2vw;
    margin: 0;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .column + .column {
    margin-top: 30px;
  }
  .column .title {
    font-size: 6vw;
  }
  .column * + .title {
    margin-top: 30px;
  }
  .column .subtitle {
    font-size: 4.5vw;
  }
  .column * + .subtitle {
    margin-top: 20px;
  }
  .column .title + .subtitle {
    margin-top: 5px;
  }
  .column p {
    font-size: 4vw;
    line-height: 1.7;
  }
  .column * + p {
    margin-top: 3vw;
  }
  .column .headline_pop + p {
    margin-top: 7vw;
  }
  .column p + p {
    margin-top: 2vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	headline_pop　吹き出しのタイトル

===============================================================*/
.headline_pop {
  position: relative;
  text-align: center;
}

.headline_pop .title {
  display: inline-block;
  color: #fff;
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  word-break: keep-all;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.3rem 1.5rem;
  margin: 0 auto;
  position: relative;
}

.headline_pop .title:after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .headline_pop .title {
    font-size: 3vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .headline_pop {
    margin-bottom: 5vw;
  }
  .headline_pop .title {
    position: relative;
    top: 0;
    font-size: 4.2vw;
    line-height: 1.3;
    padding: 0.8rem 1.5rem;
    margin: 0 0 20px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	headline_gray_slash　

===============================================================*/
.headline_gray_slash {
  background-image: linear-gradient(-45deg, #fff 25%, #eee 25%, #eee 50%, #fff 50%, #fff 75%, #eee 75%, #eee);
  background-size: 4px 4px;
}

.headline_gray_slash .title {
  font-size: 25px;
  line-height: 1.5;
  font-weight: bold;
  padding: 0.5rem 1rem;
  margin: 0 auto;
  position: relative;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .headline_pop .title {
    font-size: 3vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .headline_pop {
    margin-bottom: 5vw;
  }
  .headline_pop .title {
    position: relative;
    top: 0;
    font-size: 4.2vw;
    line-height: 1.3;
    padding: 0.5rem 1rem;
    margin: 0 0 20px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	headline_pop	バリエーション
-------------------------------------------------------------*/
.headline_pop_yellow .title {
  color: #000;
  background: #ff0;
}

.headline_pop_yellow .title:after {
  border-color: #ff0 transparent transparent transparent;
}

.headline_pop_black .title {
  color: #fff;
  background: #000;
}

.headline_pop_black .title:after {
  border-color: #000 transparent transparent transparent;
}

/*===============================================================

	.headline_diagonal　左右に斜線

===============================================================*/
.headline_diagonal {
  text-align: center;
}

.headline_diagonal h2,
.headline_diagonal .title {
  text-align: center;
  font-size: 28px;
  position: relative;
  width: auto;
  padding: 0 30px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 auto;
  display: inline-block;
  text-align: center;
  color: #ff4e4e;
  line-height: 1;
}

.headline_diagonal h2:before,
.headline_diagonal h2:after,
.headline_diagonal .title:before,
.headline_diagonal .title:after {
  content: "";
  position: absolute;
  top: 0px;
  height: 35px;
  border-left: solid 2px #ff4e4e;
}

.headline_diagonal h2:before,
.headline_diagonal .title:before {
  left: 0px;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
}

.headline_diagonal h2:after,
.headline_diagonal .title:after {
  right: 0px;
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
}

.headline_diagonal .read {
  margin-top: 20px;
  font-size: 18px;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .headline_diagonal h2:before,
  .headline_diagonal h2:after,
  .headline_diagonal .title:before,
  .headline_diagonal .title:after {
    height: 25px;
  }
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 780px) {
  .headline_diagonal h2,
  .headline_diagonal .title {
    text-align: center;
    font-size: 5vw;
    position: relative;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0;
    margin: 0 auto;
    line-height: 1.2;
  }
  .headline_diagonal h2:before,
  .headline_diagonal h2:after,
  .headline_diagonal .title:before,
  .headline_diagonal .title:after {
    content: "";
    position: absolute;
    top: 2px;
    height: 20px;
    border-left: solid 2px #ff4e4e;
  }
  .headline_diagonal h2:before,
  .headline_diagonal .title:before {
    left: -15px;
  }
  .headline_diagonal h2:after,
  .headline_diagonal .title:after {
    right: -15px;
  }
  .headline_diagonal .read {
    margin-top: 15px;
    font-size: 4vw;
  }
} /* for SP max-width: $width_sp */
/* SP向けレイアウトの指定：～400px */
@media only screen and (max-width: 460px) {
  .headline_diagonal h2,
  .headline_diagonal h2 {
    font-size: 5vw;
  }
}
/*-------------------------------------------------------------
	.headline_diagonal バリエーション
-------------------------------------------------------------*/
.headline_diagonal_blue h2,
.headline_diagonal_blue .title {
  color: #3dc8ca;
}

.headline_diagonal_blue h2:before,
.headline_diagonal_blue h2:after,
.headline_diagonal_blue .title:before,
.headline_diagonal_blue .title:after {
  border-left: solid 2px #3dc8ca;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
/* for SP max-width: $width_sp */
/* 複数業 */
.headline_diagonal_multi {
  text-align: center;
}

.headline_diagonal_multi .text {
  position: relative;
  display: inline-block;
  color: #ff4e4e;
  font-size: 28px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  padding: 0 1em; /* 行数で角度など調節が必要かも */
}

.headline_diagonal_multi .text:before,
.headline_diagonal_multi .text:after {
  content: "";
  position: absolute;
  top: 0px;
  height: 100%;
  border-left: solid 2px #ff4e4e;
}

.headline_diagonal_multi .text:before {
  right: 100%;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
}

.headline_diagonal_multi .text:after {
  left: 100%;
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
}

.headline_diagonal_multi .read {
  margin-top: 20px;
  font-size: 18px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .headline_diagonal_multi .text {
    font-size: 4.2vw;
    padding: 0 1.5em; /* 行数で角度など調節が必要かも */
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	datalist_table

===============================================================*/
.datalist_table {
  width: 100%;
  margin: 0 auto;
  margin-top: 30px;
  text-align: left;
}

.datalist_table dl {
  width: 100%;
  overflow: hidden;
  border-bottom: solid 1px #ddd;
}

.datalist_table dt {
  width: 11em;
  float: left;
  padding: 15px;
  font-size: 16px;
  font-weight: bold;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
}

.datalist_table dd {
  padding: 15px;
  padding-left: 11em;
  border-top: solid 1px #ddd;
  font-size: 16px;
  margin: 0;
}

/* タブレット以下 */
/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .datalist_table {
    width: 100%;
    margin-top: 20px;
  }
  .datalist_table dt {
    width: 100%;
    float: none;
    padding: 15px 0 0 0;
    font-size: 4vw;
    border-top: solid 1px #ddd;
  }
  .datalist_table dd {
    padding: 0px 0 15px 0;
    border-top: solid 0px #ddd;
    font-size: 4vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	datalist_list

===============================================================*/
.datalist_list {
  width: 100%;
  margin: 0 auto;
  margin-top: 30px;
  text-align: left;
}

.datalist_list dl {
  border-top: solid 1px #ddd;
}

.datalist_list dt {
  padding: 30px;
  padding-bottom: 0;
  font-size: 16px;
  font-weight: bold;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
}

.datalist_list dd {
  padding: 30px;
  padding-top: 10px;
  font-size: 16px;
  margin: 0;
  border-bottom: solid 1px #ddd;
}

/* タブレット以下 */
/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .datalist_list {
    width: 100%;
    margin-top: 20px;
  }
  .datalist_list dt {
    width: 100%;
    float: none;
    padding: 15px 0 0 0;
    font-size: 4vw;
    font-weight: bold;
  }
  .datalist_list dd {
    padding: 0px 0 15px 0;
    font-size: 4vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	開催情報枠をfree_htmlで利用
	最終更新：2019/3/28

===============================================================*/
.free_html .event_info_inner {
  position: relative;
  text-align: center;
  background: #fff;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  overflow: hidden;
  margin-top: -30px;
}

.free_html .event_info_header {
  text-align: center;
  background: #ffff00;
  padding: 10px 0;
}

.free_html .event_info_header .title {
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 0.05em;
  margin: 0;
  padding: 0;
}

.free_html .event_info_header .title span {
  font-size: 16px;
}

.free_html .event_info .event_info_content_body {
  text-align: left;
  padding: 30px 50px 50px;
}

.free_html .event_info .event_info_content_body.p50 {
  padding: 50px;
}

.free_html .event_info .event_info_content + .event_info_content {
  margin-top: 50px;
}

.free_html .event_info .event_info_content .caution {
  font-size: 14px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .free_html .event_info {
    padding-bottom: 0px;
    width: calc(100% + 20px);
    margin-left: -10px;
  }
  .free_html .event_info_inner {
    border-top: 5px solid #ffff00;
    border: 5px solid #ffff00;
    border-radius: 5vw;
    overflow: visible;
    margin-top: -5px;
  }
  .free_html .event_info_header {
    position: absolute;
    top: 0;
    left: 50%;
    display: inline-block;
    border-radius: 5vw;
    padding: 0 4vw;
    -webkit-transform: translate(-50%, -54%);
    transform: translate(-50%, -54%);
  }
  .free_html .event_info_header .title {
    font-size: 3.8vw; /*4vw; 元サイズ*/
    white-space: nowrap;
    padding: 5px 5px;
  }
  .free_html .event_info_header .title span {
    font-size: 3vw;
  }
  .free_html .event_info .event_info_content_body,
  .free_html .event_info .event_info_content_body.p50 {
    text-align: left;
    padding: 15px;
    padding-top: 25px;
  }
  .free_html .event_info .event_info_content + .event_info_content {
    margin-top: 30px;
  }
  .free_html .event_info .event_info_content .caution {
    font-size: 2.8vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	free_htmlでお知らせ
	最終更新：2021/1/18

===============================================================*/
.free_html .event_notice_inner {
  position: relative;
  text-align: center;
  background: #fff;
  -webkit-box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
  margin-top: -30px;
}

.free_html .line_only_noline + .event_notice .event_notice_inner {
  margin-top: 40px;
}

.free_html .event_notice_header {
  text-align: center;
  background: #ff0;
  padding: 10px 0;
}

.free_html .event_notice_header .title {
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.05em;
  margin: 0;
  padding: 0;
}

.free_html .event_notice_header .title span {
  font-size: 3.5vw;
}

.free_html .event_notice .event_notice_content_body {
  text-align: left;
  padding: 50px;
}

.free_html .event_notice .event_notice_content + .event_notice_content {
  margin-top: 50px;
}

.free_html .event_notice .event_notice_content p + p {
  margin-top: 1em;
}

.free_html .event_notice .event_notice_content a {
  text-decoration: underline;
}

.free_html .event_notice .event_notice_content .caution {
  font-size: 3.2vw;
}

.free_html .event_notice .event_notice_content .subtitle {
  color: #182980;
  font-size: 18px;
  line-height: 1.6;
  font-weight: bold;
  text-align: center;
  margin: 30px 0 15px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .free_html .event_notice {
    padding-bottom: 0px;
    width: calc(100% + 20px);
    margin-left: -10px;
  }
  .free_html .event_notice_inner {
    border-top: 5px solid #ffff00;
    border: 5px solid #ffff00;
    -webkit-box-shadow: 0 8px 0 rgba(0, 0, 0, 0.08);
            box-shadow: 0 8px 0 rgba(0, 0, 0, 0.08);
    margin-top: -5px;
  }
  .free_html .line_only_noline + .event_notice .event_notice_inner {
    margin-top: 30px;
  }
  .free_html .event_notice_header {
    padding: 0;
  }
  .free_html .event_notice_header .title {
    font-size: 3.8vw; /*4vw; 元サイズ*/
    white-space: nowrap;
    padding: 5px 0;
  }
  .free_html .event_notice_header .title span {
    font-size: 3vw;
  }
  .free_html .event_notice .event_notice_content_body,
  .free_html .event_notice .event_notice_content_body.p50 {
    text-align: left;
    padding: 15px;
  }
  .free_html .event_notice .event_notice_content + .event_notice_content {
    margin-top: 30px;
  }
  .free_html .event_notice .event_notice_content .caution {
    font-size: 2.8vw;
  }
  .box_content .subtitle {
    font-size: 3.8vw;
    margin: 4vw 0 1vw;
  }
  .free_html .event_notice .event_notice_content .subtitle {
    font-size: 3.8vw;
    margin: 4vw 0 2vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	freeHTML
	最終更新：2021/08/03

===============================================================*/
.special_lecture_freehtml {
  text-align: center;
  padding: 0 20px;
}

.special_lecture_freehtml .headline_pop {
  margin-bottom: 30px;
}

.special_lecture_freehtml .inderline {
  display: inline;
  font-size: 20px;
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #ff0));
  background: linear-gradient(transparent 50%, #ff0 50%);
}

.special_lecture_freehtml .inderline + p {
  font-size: 16px;
  margin-top: 2em;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .special_lecture_freehtml .inderline {
    font-size: 2.6vw;
  }
  .special_lecture_freehtml .inderline {
    font-size: 2vw;
  }
  .special_lecture_freehtml p {
    text-align: left;
  }
  .special_lecture_freehtml p.center {
    text-align: center;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .special_lecture_freehtml {
    text-align: left;
    padding: 0;
  }
  .special_lecture_freehtml .headline_pop {
    margin-bottom: 0;
  }
  .special_lecture_freehtml .inderline {
    font-size: 4vw;
  }
  .special_lecture_freehtml .inderline + p {
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	該当イベントなし
	.nodata_box
-------------------------------------------------------------*/
.nodata_box,
.guidance_nodata_box {
  /*	display: none;*/
  margin-top: 80px;
  text-align: center;
}

.nodata_box p {
  font-size: 16px;
  padding: 50px 15px;
  color: #333;
  border: solid 1px #ccc;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
}

.guidance_nodata_box {
  padding: 30px;
  border: solid 1px #fff;
}

.guidance_nodata_box p {
  font-size: 16px;
  color: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
  .nodata_box p,
  .guidance_nodata_box p {
    font-size: 14px;
  }
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .nodata_box,
  .guidance_nodata_box {
    margin-top: 10vw;
  }
  .nodata_box p {
    padding: 10px 15px;
  }
  .nodata_box p,
  .guidance_nodata_box p {
    font-size: 12px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	メンテナンス中
	.maintenance_box
-------------------------------------------------------------*/
.maintenance_box {
  margin: 0 auto;
  margin-top: 30px;
  max-width: 1000px;
}

.maintenance_box p {
  font-size: 16px;
  padding: 50px 15px;
  border: solid 1px #ccc;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
}

/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 1220px) {
  .maintenance_box {
    margin: 0 30px;
    margin-top: 30px;
  }
} /* for SP max-width: $width_sp */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .maintenance_box {
    margin: 5vw;
  }
  .maintenance_box p {
    font-size: 3.5vw;
    padding: 5vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	photo_txt_box

===============================================================*/
.photo_txt_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.photo_txt_box + .photo_txt_box {
  margin-top: 30px;
}

.photo_txt_box.reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.photo_txt_box.auto {
  margin: 0 -20px;
}

.photo_txt_box .photo_area {
  width: 40%;
}

.photo_txt_box .txt_area {
  width: 57%;
}

.photo_txt_box.auto .photo_area {
  margin: 0 20px;
}

.photo_txt_box.auto .photo_area.w200px {
  width: 200px;
  -ms-flex-preferred-size: 200px;
      flex-basis: 200px;
}

.photo_txt_box.auto .txt_area {
  width: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin: 0 20px;
}

.photo_txt_box .photo {
  width: 100%;
  height: auto;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .photo_txt_box.auto {
    margin: 0;
  }
  .photo_txt_box.col_reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .photo_txt_box + .photo_txt_box {
    margin: 0;
    margin-top: 30px;
  }
  .photo_txt_box.auto .photo_area,
  .photo_txt_box .photo_area {
    width: 100% !important;
    -ms-flex-preferred-size: 100% !important;
        flex-basis: 100% !important;
    margin: 0;
  }
  .photo_txt_box.auto .txt_area,
  .photo_txt_box .txt_area {
    width: 100% !important;
    -ms-flex-preferred-size: 100% !important;
        flex-basis: 100% !important;
    margin: 0;
    margin-top: 15px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
.photo_txt_box .txt_area
-------------------------------------------------------------*/
.photo_txt_box .txt_area .title {
  font-size: 25px;
  line-height: 1.2;
  margin: 0;
  padding: 0;
}

.photo_txt_box .txt_area p {
  font-size: 16px;
  line-height: 1.6;
  margin: 0;
  padding: 0;
}

.photo_txt_box .txt_area * + p {
  margin-top: 15px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .photo_txt_box .txt_area .title {
    font-size: 5vw;
    line-height: 1.2;
    margin: 0;
    padding: 0;
  }
  .photo_txt_box .txt_area p {
    font-size: 4vw;
    line-height: 1.6;
    margin: 0;
    padding: 0;
  }
  .photo_txt_box .txt_area * + p {
    margin-top: 10px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
.photo_txt_box .photo_area
-------------------------------------------------------------*/
.photo_txt_box .photo_area {
  position: relative;
}

.photo_txt_box .photo_area .pop {
  position: absolute;
  top: -15px;
  left: -15px;
  width: 60px;
  height: 60px;
  font-size: 13px;
  line-height: 60px;
  font-weight: bold;
  background: #ff4e4e;
  color: #fff;
  text-align: center;
  border-radius: 50%;
}

.photo_txt_box.reverse .photo_area .pop {
  top: -15px;
  right: -15px;
  left: auto;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .photo_txt_box .photo_area {
    position: relative;
  }
  .photo_txt_box .photo_area .pop {
    position: absolute;
    top: -10px;
    left: -10px;
    width: 40px;
    height: 40px;
    font-size: 10px;
    line-height: 40px;
    font-weight: bold;
    background: #ff4e4e;
    color: #fff;
    text-align: center;
    border-radius: 50%;
  }
  .photo_txt_box.reverse .photo_area .pop {
    top: -10px;
    right: -10px;
    left: auto;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	photo_txt_box	
-------------------------------------------------------------*/
.photo_txt_box .btn {
  padding: 0;
  margin: 0;
  margin-top: 30px;
  width: auto;
  display: inline-block;
  float: right;
}

.photo_txt_box.reverse .btn {
  float: left;
}

.photo_txt_box .btn a {
  background: #eee;
  color: #000;
  font-size: 14px;
  line-height: 1.2;
  font-weight: bold;
  text-align: center;
  padding: 10px 20px;
  position: relative;
  display: block;
}

.photo_txt_box .btn a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
  border: solid 0px #000;
  width: 6px;
  height: 6px;
  border-top: none;
  border-left: none;
  -webkit-transform: rotate(-45deg) translate(-1px, -1px);
          transform: rotate(-45deg) translate(-1px, -1px);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.photo_txt_box .btn a:hover {
  text-decoration: none;
  background: #ff0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .photo_txt_box .btn,
  .photo_txt_box.reverse .btn {
    float: none;
    margin: 0 auto;
    margin-top: 20px;
    display: block;
    width: 80%;
  }
  .photo_txt_box .btn a {
    font-size: 4vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

list_container

===============================================================*/
.list_container {
  padding: 40px;
  /*	padding: 90px 40px 40px;*/
  background: #fff;
  /*	box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);*/
  /*	border: 1px solid #ddd;*/
  margin-top: 22px;
}

.list_container p {
  font-size: 1.6rem;
}

.list_container .inner {
  position: relative;
}

.list_container h2 {
  position: absolute;
  top: -82px;
  left: 50%;
  display: inline-block;
  color: #fff;
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
  word-break: keep-all;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.5rem 2rem;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.list_container h2:after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.list_container .inner .message p {
  font-size: 18px;
  line-height: 2;
  text-align: center;
}

.list_container .inner .message p .red {
  color: #de1616;
  font-weight: bold;
}

.list_container .inner .list {
  /*	border-bottom: 1px solid #ddd;*/
  /*	padding-bottom: 30px;*/
}

.list_container .inner .list h3 {
  text-align: center;
  margin: 20px 0;
}

.list_container .inner .list h3 span {
  position: relative;
  display: inline-table; /* Firefox */
  color: #ff4e4e;
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}

.list_container .inner .list h3 span:before,
.list_container .inner .list h3 span:after {
  content: "";
  position: absolute;
  top: 0;
  height: 30px;
  border-left: solid 2px #ff4e4e;
}

.list_container .inner .list h3 span:before {
  left: -2rem;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
}

.list_container .inner .list h3 span:after {
  right: -2rem;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
}

.list_container .inner .list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 20px;
}

.list_container .inner .list ul li {
  width: 31%;
  margin-right: 3.5%;
  margin-bottom: 3rem;
}

.list_container .inner .list ul li:nth-child(3n) {
  margin-right: 0;
}

.list_container .inner .list ul li:nth-last-child(-n+3) {
  margin-bottom: 0;
}

.list_container .inner .list ul li h4 {
  color: #fff;
  font-size: 15px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  padding: 0.5rem 0;
  margin: 0;
}

.list_container .inner .list .ti1 {
  text-indent: -1em;
  padding-left: 1em;
}

.list_container .inner .list .ti1 + .ti1 {
  margin: 0;
}

/*ワールド色*/
.list_container .manga_world h4 {
  background: #eb6ea0;
}

.list_container .manga_world .key_color {
  color: #eb6ea0;
}

.list_container .game_world h4 {
  background: #c3d94e;
}

.list_container .game_world .key_color {
  color: #c3d94e;
}

.list_container .digital_media_world h4 {
  background: #33aeaa;
}

.list_container .digital_media_world .key_color {
  color: #33aeaa;
}

.list_container .visual_design_world h4 {
  background: #efb81a;
}

.list_container .visual_design_world .key_color {
  color: #efb81a;
}

.list_container .car_world h4 {
  background: #4b86be;
}

.list_container .car_world .key_color {
  color: #4b86be;
}

/*カテゴリ色*/
.list_container .cat_manga h4 {
  background: #93176f;
}

.list_container .cat_manga .key_color {
  color: #93176f;
}

.list_container .cat_novel h4 {
  background: #87DAAE;
}

.list_container .cat_novel .key_color {
  color: #87DAAE;
}

.list_container .cat_game h4 {
  background: #eb498f;
}

.list_container .cat_game .key_color {
  color: #eb498f;
}

.list_container .cat_cganimation h4 {
  background: #00c7c0;
}

.list_container .cat_cganimation .key_color {
  color: #00c7c0;
}

.list_container .cat_design h4 {
  background: #feaa00;
}

.list_container .cat_design .key_color {
  color: #feaa00;
}

.list_container .cat_podctinterior h4 {
  background: #D75992;
}

.list_container .cat_podctinterior .key_color {
  color: #D75992;
}

.list_container .cat_super_creater h4 {
  background: #000;
}

.list_container .cat_super_creater .key_color {
  color: #000;
}

/* 2022年度 */
.list_container .cat_super_technology h4 {
  background: #e60012;
}

.list_container .cat_super_technology .key_color {
  color: #e60012;
}

.list_container .cat_super_e-entertainment h4 {
  background: #59bded;
}

.list_container .cat_super_e-entertainment .key_color {
  color: #59bded;
}

.list_container .cat_super_comic h4 {
  background: #d65e6c;
}

.list_container .cat_super_comic .key_color {
  color: #d65e6c;
}

.list_container .inner .list ul li p {
  font-size: 16px;
  margin: 1rem 0 0;
}

.list_container .inner .notes {
  padding: 1.5rem 1rem 0;
  margin: 0;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .list_container h2 {
    font-size: 3vw;
  }
  .list_container .inner .list ul li h4 {
    font-size: 1.4vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .list_container {
    padding: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
    margin-top: 0;
  }
  .list_container h2 {
    position: relative;
    top: 0;
    font-size: 5vw;
    padding: 0.5rem 1rem;
    margin: 0 0 20px;
  }
  .list_container .inner .message p {
    font-size: 4.5vw;
    line-height: 1.7;
  }
  .list_container .inner .list {
    padding-bottom: 0;
  }
  .list_container .inner .list h3 span {
    font-size: 6vw;
  }
  .list_container .inner .list h3 span:before,
  .list_container .inner .list h3 span:after {
    content: "";
    position: absolute;
    top: 0.5rem;
    height: 12vw;
    border-left: solid 2px #ff4e4e;
  }
  .list_container .inner .list h3 span:before {
    left: -1rem;
  }
  .list_container .inner .list h3 span:after {
    right: -1rem;
  }
  .list_container .inner .list ul {
    display: block;
  }
  .list_container .inner .list ul li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 1.5rem;
  }
  .list_container .inner .list ul li:nth-last-child(-n+3) {
    margin-bottom: 1.5rem;
  }
  .list_container .inner .list ul li h4 {
    font-size: 4.5vw;
  }
  .list_container .inner .list ul li p {
    font-size: 4vw;
    margin: 1rem 0 0;
  }
  .list_container .inner .notes {
    font-size: 4vw;
    padding: 1.5rem 0 0;
    margin: 0;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	クラス追加
-------------------------------------------------------------*/
.txt_center,
.flex_container.txt_center .txt {
  text-align: center;
}

.txt_pink {
  color: #ff4e4e;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
/* for SP max-width: $width_sp */
/*===============================================================

list_container2024

===============================================================*/
.list_container2024 {
  position: relative;
  background: #fff;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  padding: 50px;
}
@media only screen and (max-width: 800px) {
  .list_container2024 {
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
    border-radius: 5vw;
    padding: 8vw 4vw 4vw;
  }
}
.list_container2024 .balloon {
  position: absolute;
  top: 0;
  left: 50%;
  display: inline-block;
  color: #fff;
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
  word-break: keep-all;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.5rem 2rem;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media only screen and (max-width: 800px) {
  .list_container2024 .balloon {
    font-size: 4vw;
    padding: 0.5rem 1rem;
  }
}
.list_container2024 .balloon:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  margin-top: -1px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media only screen and (max-width: 800px) {
  .list_container2024 .balloon:after {
    border-width: 3vw 2vw 0 2vw;
  }
}
.list_container2024 .lead {
  font-size: 18px;
  line-height: 1.8;
  text-align: center;
}
@media only screen and (max-width: 800px) {
  .list_container2024 .lead {
    font-size: 3.8vw;
  }
}
.list_container2024 .lead strong {
  font-size: 1.2em;
  padding: 0 0.5em;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), to(#ff0));
  background-image: linear-gradient(transparent 50%, #ff0 100%);
}
.list_container2024 .list .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 20px;
  overflow: hidden;
  margin-top: 40px;
}
@media only screen and (max-width: 800px) {
  .list_container2024 .list .item {
    display: block;
    margin-top: 4vw;
  }
}
.list_container2024 .list .item .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  color: #fff;
}
.list_container2024 .list .item .text .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #fff;
  padding: 20px;
}
@media only screen and (max-width: 800px) {
  .list_container2024 .list .item .text .title {
    padding: 4vw;
  }
}
.list_container2024 .list .item .text .title .icon {
  -ms-flex-preferred-size: 30px;
      flex-basis: 30px;
  width: 30px;
}
@media only screen and (max-width: 800px) {
  .list_container2024 .list .item .text .title .icon {
    -ms-flex-preferred-size: 6vw;
        flex-basis: 6vw;
    width: 6vw;
  }
}
.list_container2024 .list .item .text .title .icon img {
  width: 100%;
  height: auto;
}
.list_container2024 .list .item .text .title .name {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 20px;
  font-weight: bold;
  margin-left: 10px;
}
@media only screen and (max-width: 800px) {
  .list_container2024 .list .item .text .title .name {
    font-size: 4vw;
  }
}
.list_container2024 .list .item .text .menu {
  min-height: 12em;
  padding: 20px;
  margin-top: -0.5em;
}
@media only screen and (max-width: 800px) {
  .list_container2024 .list .item .text .menu {
    min-height: 0;
    padding: 4vw;
  }
}
.list_container2024 .list .item .text .menu li {
  line-height: 1.6;
  text-indent: -1em;
  padding-left: 1.25em;
  margin-top: 0.5em;
}
@media only screen and (max-width: 800px) {
  .list_container2024 .list .item .text .menu li {
    font-size: 3.5vw;
  }
}
.list_container2024 .list .item .text .menu li:before {
  content: "■";
  color: #ff0;
  margin-right: 0.25em;
}
.list_container2024 .list .item .thumb {
  -ms-flex-preferred-size: 30%;
      flex-basis: 30%;
  max-width: 360px;
}
@media only screen and (max-width: 800px) {
  .list_container2024 .list .item .thumb {
    height: 50vw;
  }
}
.list_container2024 .list .item .thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (max-width: 800px) {
  .list_container2024 .list .item .thumb.sp_top img {
    -o-object-position: top;
       object-position: top;
  }
}
.list_container2024 .list .item.graphic_design .text {
  background-image: -webkit-gradient(linear, right bottom, left top, from(#ff3e5c), color-stop(50%, #e9546b));
  background-image: linear-gradient(to left top, #ff3e5c 0%, #e9546b 50%);
}
.list_container2024 .list .item.illust_manga .text {
  background-image: -webkit-gradient(linear, right bottom, left top, from(#ed6c00), color-stop(50%, #ed6c00));
  background-image: linear-gradient(to left top, #ed6c00 0%, #ed6c00 50%);
}
.list_container2024 .list .item.novel_scenario .text {
  background-image: -webkit-gradient(linear, right bottom, left top, from(#ff8e9b), color-stop(50%, #f19ca6));
  background-image: linear-gradient(to left top, #ff8e9b 0%, #f19ca6 50%);
}
.list_container2024 .list .item.anime .text {
  background-image: -webkit-gradient(linear, right bottom, left top, from(#ca26af), color-stop(50%, #a64a97));
  background-image: linear-gradient(to left top, #ca26af 0%, #a64a97 50%);
}
.list_container2024 .list .item.vtuber .text {
  background-image: -webkit-gradient(linear, right bottom, left top, from(#5663da), color-stop(50%, #757cbb));
  background-image: linear-gradient(to left top, #5663da 0%, #757cbb 50%);
}
.list_container2024 .list .item.game .text {
  background-image: -webkit-gradient(linear, right bottom, left top, from(#0abdff), color-stop(50%, #2aaedf));
  background-image: linear-gradient(to left top, #0abdff 0%, #2aaedf 50%);
}
.list_container2024 .list .item.cg_mecha_design .text {
  background-image: -webkit-gradient(linear, right bottom, left top, from(#3bd1e6), color-stop(50%, #5cb8c5));
  background-image: linear-gradient(to left top, #3bd1e6 0%, #5cb8c5 50%);
}
.list_container2024 .list .item.video_vfx .text {
  background-image: -webkit-gradient(linear, right bottom, left top, from(#8de734), color-stop(50%, #8dc556));
  background-image: linear-gradient(to left top, #8de734 0%, #8dc556 50%);
}

/*===============================================================

職業体験フェスタ
syokutai
list_container_syokutai

===============================================================*/
.syokutai .assemble {
  max-width: 500px;
  margin: 0 auto;
}
@media only screen and (max-width: 800px) {
  .syokutai .assemble {
    max-width: 80vw;
    margin-top: 10vw;
  }
}
.syokutai .exhibitor {
  text-align: center;
  margin-top: 40px;
}
.syokutai .exhibitor .title {
  display: inline-block;
  font-size: 18px;
  line-height: 2;
  border: 1px solid #000;
  padding: 0 1em;
  margin-bottom: 20px;
}
@media only screen and (max-width: 800px) {
  .syokutai .exhibitor .title {
    font-size: 3.8vw;
    margin-bottom: 4vw;
  }
}
.syokutai .exhibitor .list_school {
  -webkit-columns: 2;
     -moz-columns: 2;
          columns: 2;
  -webkit-column-gap: 80px;
     -moz-column-gap: 80px;
          column-gap: 80px;
  -webkit-column-rule-style: dotted;
     -moz-column-rule-style: dotted;
          column-rule-style: dotted;
  -webkit-column-rule-width: 1px;
     -moz-column-rule-width: 1px;
          column-rule-width: 1px;
  -webkit-column-rule-color: #000;
     -moz-column-rule-color: #000;
          column-rule-color: #000;
}
@media only screen and (max-width: 800px) {
  .syokutai .exhibitor .list_school {
    -webkit-columns: 1;
       -moz-columns: 1;
            columns: 1;
    padding: 0 4vw;
  }
}
.syokutai .exhibitor .list_school li {
  font-size: 16px;
  line-height: 1.8;
  text-align: left;
}
@media only screen and (max-width: 800px) {
  .syokutai .exhibitor .list_school li {
    font-size: 3.5vw;
    text-align: center;
  }
}

.list_container_syokutai {
  position: relative;
  background: #fff;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  padding: 50px;
}
@media only screen and (max-width: 800px) {
  .list_container_syokutai {
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
    border-radius: 5vw;
    padding: 8vw 4vw 4vw;
  }
}
.list_container_syokutai .title {
  max-width: 800px;
  margin: 0 auto;
}
.list_container_syokutai .alert {
  font-size: 0.7em;
  text-align: right;
  margin-top: 1em;
}
.list_container_syokutai .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0 -20px;
}
@media only screen and (max-width: 800px) {
  .list_container_syokutai .list {
    display: block;
  }
}
.list_container_syokutai .list .item {
  -ms-flex-preferred-size: calc((100% - 20px - 40px - 40px - 20px) / 3);
      flex-basis: calc((100% - 20px - 40px - 40px - 20px) / 3);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: 20px;
  overflow: hidden;
  margin: 40px 20px 0;
}
@media screen and (max-width: 1000px) {
  .list_container_syokutai .list .item {
    -ms-flex-preferred-size: calc((100% - 20px - 40px - 40px - 20px) / 2);
        flex-basis: calc((100% - 20px - 40px - 40px - 20px) / 2);
  }
}
@media only screen and (max-width: 800px) {
  .list_container_syokutai .list .item {
    display: block;
    margin-top: 4vw;
  }
}
.list_container_syokutai .list .item .text {
  color: #fff;
}
.list_container_syokutai .list .item .text .title {
  text-align: center;
  padding: 20px 5px;
}
@media only screen and (max-width: 800px) {
  .list_container_syokutai .list .item .text .title {
    padding: 4vw 0;
  }
}
.list_container_syokutai .list .item .text .title .icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 40px;
  height: 40px;
  background: #fff;
  border-radius: 30px;
  margin: 0 auto 10px;
}
.list_container_syokutai .list .item .text .title .icon img {
  height: 20px;
  width: auto;
}
.list_container_syokutai .list .item .text .title .name {
  font-size: 20px;
  font-weight: bold;
  margin-left: 10px;
}
@media only screen and (max-width: 800px) {
  .list_container_syokutai .list .item .text .title .name {
    font-size: 4vw;
  }
}
.list_container_syokutai .list .item .text .eng {
  text-align: center;
}
.list_container_syokutai .list .item .text .eng li {
  display: inline-block;
  font-size: 12px;
  line-height: 1.4;
}
@media only screen and (max-width: 800px) {
  .list_container_syokutai .list .item .text .eng li {
    font-size: 3vw;
  }
}
.list_container_syokutai .list .item .text .eng li:after {
  content: "/";
  padding: 0 5px;
}
@media only screen and (max-width: 800px) {
  .list_container_syokutai .list .item .text .eng li:after {
    padding: 0 1vw;
  }
}
.list_container_syokutai .list .item .text .eng li:last-child:after {
  content: none;
  padding: 0;
}
.list_container_syokutai .list .item .text .menu {
  min-height: 12em;
  padding: 20px;
  margin-top: -0.5em;
}
@media only screen and (max-width: 800px) {
  .list_container_syokutai .list .item .text .menu {
    min-height: 0;
    padding: 4vw;
  }
}
.list_container_syokutai .list .item .text .menu li {
  line-height: 1.6;
  text-indent: -1em;
  padding-left: 1.25em;
  margin-top: 0.5em;
}
@media only screen and (max-width: 800px) {
  .list_container_syokutai .list .item .text .menu li {
    font-size: 3.5vw;
  }
}
.list_container_syokutai .list .item .text .menu li:before {
  content: "■";
  color: #ff0;
  margin-right: 0.25em;
}
.list_container_syokutai .list .item .thumb {
  margin-top: auto;
}
.list_container_syokutai .list .item .thumb img {
  width: 100%;
  height: auto;
}
.list_container_syokutai .list .item.design_game_it {
  background: #003686;
}
.list_container_syokutai .list .item.animal_marine_pet_nature {
  background: #6fba2c;
}
.list_container_syokutai .list .item.bio_cosmetic_pharmaceuticals {
  background: #009e96;
}
.list_container_syokutai .list .item.medicalcare_childcare_welfare {
  background: #757cbb;
}
.list_container_syokutai .list .item.sports {
  background: #ea5514;
}
.list_container_syokutai .list .item.music_dance_movie_entertainment {
  background: #a64a97;
}
.list_container_syokutai .list .item.beauty {
  background: #f6ab00;
}
.list_container_syokutai .list .item.hotel_bridal_tourism_airline {
  background: #008842;
}
.list_container_syokutai .list .item.sweets_food {
  background: #ef858c;
}

/*===============================================================

昔あったのになくなっていたスタイル
list_box
event_dot_list

===============================================================*/
.list_box {
  position: relative;
  border: 1px solid #ff4e4e;
  border-radius: 10px;
  padding: 44px 40px 34px;
  margin-top: 30px;
}

.list_box .title {
  position: absolute;
  top: -20px;
  left: 0;
  width: 100%;
  text-align: center;
  margin: 0;
  font-size: 100%;
  line-height: 1;
}

.list_box .title span {
  display: inline-block;
  color: #ff4e4e;
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  background: #fff;
  padding: 0 15px;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .list_box {
    padding: 6vw 4vw 4vw;
    margin-top: 4vw;
  }
  .list_box .title {
    top: -4vw;
  }
  .list_box .title span {
    font-size: 2.6vw;
    padding: 0 1.5vw;
  }
  .list_box.one_line_title {
    padding: 4vw 4vw 3.8vw;
  }
  .list_box.one_line_title .title {
    top: -2.2vw;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
  .list_box {
    padding: 9vw 5vw 5vw;
    margin-top: 5vw;
  }
  .list_box .title {
    top: -6vw;
  }
  .list_box .title span {
    max-width: 90%;
    font-size: 4.6vw;
    padding: 0 2vw;
    line-height: 1.4;
  }
  .list_box.one_line_title {
    padding: 5.5vw 5vw 4vw;
  }
  .list_box.one_line_title .title {
    top: -3.2vw;
  }
} /* for SP max-width: 800px */
.event_dot_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.event_dot_list > :not(:nth-child(3n-2)) {
  margin-left: 20px;
}

.event_dot_list li {
  font-size: 18px;
  font-weight: bold;
  padding-left: 1em;
  text-indent: -1em;
}

.event_dot_list li::before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  background: #ff4e4e;
  border-radius: 50%;
  margin-right: 5px;
}

.event_dot_list.multi {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.event_dot_list.multi > :not(:nth-child(3n-2)) {
  margin-left: 10px;
}

.event_dot_list.multi > :nth-child(n+4) {
  margin-top: 20px;
}

.event_dot_list.multi li {
  width: calc((100% - 20px) / 3);
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .event_dot_list > :not(:nth-child(3n-2)) {
    margin-left: 2vw;
  }
  .event_dot_list li {
    font-size: 1.8vw;
  }
  .event_dot_list li::before {
    width: 1.5vw;
    height: 1.5vw;
    margin-right: 0.5vw;
  }
  .event_dot_list.multi > :not(:nth-child(3n-2)) {
    margin-left: 1vw;
  }
  .event_dot_list.multi > :nth-child(n+4) {
    margin-top: 2vw;
  }
  .event_dot_list.multi li {
    width: calc((100% - 2vw) / 3);
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～800px */
@media only screen and (max-width: 800px) {
  .event_dot_list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .event_dot_list > :not(:nth-child(3n-2)) {
    margin-left: 0;
  }
  .event_dot_list > :nth-child(n+2) {
    margin-top: 1vw;
  }
  .event_dot_list li {
    width: 100%;
    font-size: 4vw;
  }
  .event_dot_list li::before {
    width: 3vw;
    height: 3vw;
    margin: 0 1.5vw 0.1vw 0;
  }
  .event_dot_list.multi > :not(:nth-child(3n-2)),
  .event_dot_list.multi > :nth-child(n+4) {
    margin: 0;
  }
  .event_dot_list.multi > :nth-child(n+2) {
    margin-top: 1vw;
  }
  .event_dot_list.multi li {
    width: 100%;
  }
} /* for SP max-width: 800px */
/*===============================================================

	label_and_txt

===============================================================*/
/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .label_and_txt li {
    width: 100%;
    margin: 0;
    text-align: center;
  }
  .label_and_txt .label {
    font-size: 5vw;
    line-height: 1.5;
    padding: 0;
  }
  .label_and_txt .label .week {
    font-size: 3vw;
    line-height: 1.5;
    width: 4.5vw;
    height: 4.5vw;
    margin-left: 5px;
    border-radius: 50%;
  }
  .label_and_txt .txt {
    font-size: 4vw;
    line-height: 1.5;
    margin-top: 10px;
    display: block;
    font-weight: bold;
  }
  .label_and_txt .arw {
    padding: 0;
    padding-bottom: 25px;
  }
  .label_and_txt .arw::after {
    border-top: 5px solid #f00;
    border-bottom: 5px solid transparent;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-width: 10px;
    top: auto;
    bottom: 0;
    left: 0;
    right: 0;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	1〜3まで選んで体験できるよ
	最終更新：2021/05/28

===============================================================*/
.multiple_offers {
  position: relative;
}

.multiple_offers p {
  font-size: 16px;
}

.multiple_offers h2 {
  position: absolute;
  top: calc((40px + 1.8em) * -1);
  left: 50%;
  display: inline-block;
  color: #fff;
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  word-break: keep-all;
  white-space: nowrap;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.5em 2em;
  margin: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.multiple_offers h2:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.multiple_offers .message p {
  font-size: 16px;
  line-height: 1.8;
  text-align: center;
}

.multiple_offers .message p .red {
  color: #ff4e4e;
  font-weight: bold;
}

.multiple_offers .list {
  border-bottom: 1px solid #ddd;
  padding-bottom: 30px;
}

.multiple_offers .list.noborder {
  border-bottom: none;
  padding-bottom: 0;
}

.multiple_offers .list h3 {
  text-align: center;
  margin: 30px 0 0;
}

.multiple_offers .list h3 span {
  position: relative;
  display: inline-block;
  color: #ff4e4e;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
}

.multiple_offers .list h3 span:before,
.multiple_offers .list h3 span:after {
  content: "";
  position: absolute;
  top: 0;
  height: 100%;
  border-left: solid 2px #ff4e4e;
}

.multiple_offers .list h3 span:before {
  left: -1em;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
}

.multiple_offers .list h3 span:after {
  right: -1em;
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
}

.multiple_offers .list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.multiple_offers .list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.multiple_offers .list ul li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 31%;
  background-image: linear-gradient(-45deg, #fff 25%, #eee 25%, #eee 50%, #fff 50%, #fff 75%, #eee 75%, #eee);
  background-size: 4px 4px;
  padding: 10px 20px;
  margin-top: 40px;
}

.multiple_offers .list ul.col2 li {
  width: 48%;
  margin-right: 4%;
}

.multiple_offers .list ul.col2 li:nth-child(2n),
.multiple_offers .list ul.col2 li:last-child {
  margin-right: 0;
}

.multiple_offers .list ul.col3 li {
  width: 31%;
  margin-right: 3.5%;
}

.multiple_offers .list ul.col3 li:nth-child(3n),
.multiple_offers .list ul.col3 li:last-child {
  margin-right: 0;
}

.multiple_offers .list ul.col4 li {
  width: 22.75%;
  margin-right: 3%;
}

.multiple_offers .list ul.col4 li:nth-child(4n),
.multiple_offers .list ul.col3 li:last-child {
  margin-right: 0;
}

.multiple_offers .list ul li:before,
.multiple_offers .list ul li:after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  border-top: 1px solid rgba(0, 0, 0, 0.4);
  border-left: 1px solid rgba(0, 0, 0, 0.4);
}

.multiple_offers .list ul li:before {
  top: -1px;
  left: -1px;
}

.multiple_offers .list ul li:after {
  bottom: -1px;
  right: -1px;
  -webkit-transform: scale(-1, -1);
          transform: scale(-1, -1);
}

.multiple_offers .list ul li h4 {
  font-size: 16px;
  line-height: 1.6;
  font-weight: bold;
  text-align: center;
  margin: 0;
}

.multiple_offers .notes {
  font-size: 14px;
  padding: 1em 1em 0;
  margin: 0;
  background: #fff;
  letter-spacing: 0.03em;
}

.multiple_offers .course_list h3 {
  text-align: center;
  margin: 40px 0 0;
}

.multiple_offers .course_list h3 span {
  position: relative;
  display: inline-table; /* Firefox */
  color: #ff4e4e;
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}

.multiple_offers .course_list h3 span:before,
.multiple_offers .course_list h3 span:after {
  content: "";
  position: absolute;
  top: 0;
  height: 1.7em;
  border-left: solid 2px #ff4e4e;
}

.multiple_offers .course_list h3 span:before {
  left: -2rem;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
}

.multiple_offers .course_list h3 span:after {
  right: -2rem;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
}

.multiple_offers .course_list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.multiple_offers .course_list ul li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  color: #fff;
  text-align: center;
  padding: 20px 20px;
  margin-top: 20px;
}

.multiple_offers .course_list ul.col2 li {
  width: 48%;
  margin-right: 4%;
}

.multiple_offers .course_list ul.col2 li:nth-child(2n),
.multiple_offers .course_list ul.col2 li:last-child {
  margin-right: 0;
}

/* 2025/7/11 */
.multiple_offers .profile {
  background: #fff;
  padding: 30px 0 0;
  margin: 0;
}
.multiple_offers .profile .personal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0.5em;
}
.multiple_offers .profile .tag {
  display: inline-block;
  color: #fff;
  font-size: 14px;
  line-height: 2;
  background: #ff4e4e;
  padding: 0 0.5em;
  margin-right: 10px;
}
.multiple_offers .profile .name {
  font-size: 24px;
  font-weight: bold;
}
.multiple_offers .profile .degree {
  margin-top: 10px;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .multiple_offers h2 {
    font-size: 3vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .multiple_offers p {
    font-size: 3.5vw;
  }
  .multiple_offers h2 {
    position: relative;
    top: calc((5vw + 1em) * -1);
    font-size: 4vw;
    padding: 0.5em 1em;
    margin-bottom: -1em;
  }
  .multiple_offers h2:after {
    border-width: 3vw 2vw 0 2vw;
  }
  .multiple_offers .message p {
    font-size: 3.5vw;
  }
  .multiple_offers .list {
    padding-bottom: 15px;
  }
  .multiple_offers .list.noborder {
    padding-bottom: 0;
  }
  .multiple_offers .list h3 {
    margin: 0 0 6vw;
  }
  .multiple_offers .list h3 span {
    font-size: 4vw;
  }
  .multiple_offers .list h3 span:before,
  .multiple_offers .list h3 span:after {
    top: 0.5em;
    top: -0.1em;
  }
  .multiple_offers .list h3 span:before {
    left: -1.5em;
  }
  .multiple_offers .list h3 span:after {
    right: -1.5em;
  }
  .multiple_offers .list ul {
    display: block;
  }
  .multiple_offers .list ul li {
    width: 100%;
    padding: 15px 15px;
    margin-top: 15px;
  }
  .multiple_offers .list ul.col2 li {
    width: 100%;
    margin-right: 0;
  }
  .multiple_offers .list ul.col3 li {
    width: 100%;
    margin-right: 0;
  }
  .multiple_offers .list ul.col4 li {
    width: 100%;
    margin-right: 0%;
  }
  .multiple_offers .list ul li h4 {
    font-size: 3.6vw;
  }
  .multiple_offers .notes {
    font-size: 3.2vw;
    padding: 1.5em 0 0;
  }
  .multiple_offers .course_list h3 {
    margin: 15px 0 0;
  }
  .multiple_offers .course_list h3 span {
    font-size: 6vw;
    line-height: 1.1;
  }
  .multiple_offers .course_list h3 span:before,
  .multiple_offers .course_list h3 span:after {
    content: "";
    position: absolute;
    top: 0.3rem;
    height: 12vw;
    border-left: solid 2px #ff4e4e;
  }
  .multiple_offers .course_list h3 span:before {
    left: -1rem;
  }
  .multiple_offers .course_list h3 span:after {
    right: -1rem;
  }
  .multiple_offers .course_list ul {
    display: block;
  }
  .multiple_offers .course_list ul li {
    width: 100%;
    padding: 15px 15px;
    margin-top: 15px;
  }
  .multiple_offers .course_list ul li h4 {
    font-size: 3.3vw;
  }
  .multiple_offers .course_list ul.col2 li {
    width: 100%;
    margin-right: 0;
  }
  /* 2025/7/11 */
  .multiple_offers .profile {
    padding: 15px 0 0;
  }
  .multiple_offers .profile .personal {
    display: block;
  }
  .multiple_offers .profile .tag {
    font-size: 3.2vw;
    margin-right: 0;
    margin-bottom: 5px;
  }
  .multiple_offers .profile .name {
    font-size: 6vw;
  }
  .multiple_offers .profile .degree {
    margin-top: 10px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	チャレンジ2カラム
	charange_2col

===============================================================*/
.anime_and_cg_special.charange_2col .solution_box .headline_diagonal {
  margin-bottom: 15px;
}

.anime_and_cg_special.charange_2col .solution_box .title {
  line-height: 1.5;
}

.anime_and_cg_special.charange_2col .solution_box + .gridcontainer {
  margin-top: 0;
}

.anime_and_cg_special.charange_2col .headline + .content {
  margin-top: 30px;
}

.anime_and_cg_special.charange_2col .datalist_list dl {
  border-top: 0;
}

.anime_and_cg_special.charange_2col .datalist_list dt {
  padding: 5px 15px;
}

.anime_and_cg_special.charange_2col .datalist_list dd + dt {
  margin-top: 15px;
}

.anime_and_cg_special.charange_2col .datalist_list dd {
  border-bottom: 0;
  padding: 10px 0 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .anime_and_cg_special.charange_2col .headline_pop {
    margin-bottom: 1.5vw;
  }
  .anime_and_cg_special.charange_2col .headline + .content {
    margin-top: 0;
  }
  .anime_and_cg_special.charange_2col .solution_box + .gridcontainer {
    margin-top: 15px;
  }
  .anime_and_cg_special.charange_2col .column p {
    font-size: 3.5vw;
  }
  .anime_and_cg_special.charange_2col .datalist_list dt {
    font-size: 3.8vw;
  }
  .anime_and_cg_special.charange_2col .datalist_list dd {
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	LINE限定イベント案内
	最終更新：2020/05/27

===============================================================*/
.line_only,
.line_only_noline {
  text-align: center;
}

.line_only p,
.line_only_noline p {
  position: relative;
  display: inline;
  font-size: 24px;
  line-height: 1.5;
  font-weight: bold;
  padding-left: 46px;
}

.line_only p {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #ff0));
  background: linear-gradient(transparent 50%, #ff0 50%);
}

.line_only p:before,
.line_only_noline p:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 36px;
  height: 36px;
  background: url("/open-campus/common/images/assets/icon_line.svg") no-repeat center;
  background-size: 100% auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.line_only_noline p a {
  color: #00b900;
  text-decoration: underline;
}

.line_only_noline p a:hover {
  color: #00ad23;
}

.line_only_noline p .alert {
  display: block;
  font-size: 16px;
  font-weight: normal;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .line_only p,
  .line_only_noline p {
    font-size: 5vw;
    padding-left: 7vw;
  }
  .line_only p:before,
  .line_only_noline p:before {
    top: -0.5vw;
    width: 6vw;
    height: 6vw;
    -webkit-transform: none;
            transform: none;
  }
  .line_only_noline p .alert {
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	詳細は後日
	最終更新：2023/03/09

===============================================================*/
.more_detail_later {
  text-align: center;
}

.more_detail_later p {
  position: relative;
  display: inline;
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
  padding-left: 46px;
}

.more_detail_later p {
  /*background: -webkit-linear-gradient(transparent 50%, #ff0 50%);
  background: linear-gradient(transparent 50%, #ff0 50%);*/
}

.more_detail_later p:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 30px;
  height: 30px;
  background: url("/open-campus/common/images/assets/icon_alert_red.svg") no-repeat center;
  background-size: 100% auto;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.more_detail_later p a {
  color: #00b900;
  text-decoration: underline;
}

.more_detail_later p a:hover {
  color: #00ad23;
}

.more_detail_later p .alert {
  display: block;
  font-size: 16px;
  font-weight: normal;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .more_detail_later p {
    font-size: 5vw;
    padding-left: 7vw;
  }
  .more_detail_later p:before {
    top: -0.5vw;
    width: 6vw;
    height: 6vw;
    -webkit-transform: none;
            transform: none;
  }
  .more_detail_later p .alert {
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	listup_box リストの囲み

===============================================================*/
.listup_box {
  position: relative;
  border: 1px solid #ff4e4e;
  padding: 44px 29px 34px;
  margin-top: 40px;
}

.listup_box .title {
  position: absolute;
  top: -18px;
  left: 0;
  width: 100%;
  text-align: center;
  margin: 0;
}

.listup_box .title span {
  display: inline-block;
  color: #ff4e4e;
  font-size: 26px;
  font-weight: bold;
  text-align: center;
  background: #fff;
  padding: 0 15px;
}

.listup_box ul {
  text-align: center;
}

.listup_box ul li {
  display: inline-block;
  font-size: 18px;
  font-weight: bold;
  margin-right: 20px;
}

.listup_box ul li:last-child {
  margin-right: 0;
}

.listup_box ul li:before {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  background: #ff4e4e;
  border-radius: 50%;
  margin-right: 5px;
}

.listup_box + .alert_indent {
  text-align: center;
  text-indent: -1em;
  padding-left: 1em;
  margin-top: 1em;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .listup_box {
    position: relative;
    border: 1px solid #ff4e4e;
    padding: 7vw 3vw 3vw;
    margin-top: 5vw;
  }
  .listup_box .title {
    top: -4.6vw;
  }
  .listup_box .title span {
    font-size: 4.6vw;
    line-height: 1.3;
    padding: 0 1vw;
  }
  .listup_box ul {
    text-align: left;
    margin-top: 10px;
  }
  .listup_box ul li {
    display: block;
    font-size: 4vw;
    margin-right: 0;
  }
  .listup_box ul li:before {
    width: 3vw;
    height: 3vw;
    margin-right: 5px;
  }
  .listup_box + .alert_indent {
    text-align: left;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	event_flow_ob_th_day

===============================================================*/
.event_flow_ob_th_day {
  margin-top: 40px;
  text-align: center;
}

.event_flow_ob_th_day .title {
  font-size: 30px;
  line-height: 1.5;
}

.event_flow_ob_th_day .flow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 20px;
}

.event_flow_ob_th_day .flow li {
  width: 23%;
  border: solid 1px rgba(172, 233, 255, 0.8);
  background: rgba(172, 233, 255, 0.3);
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 10px;
  font-weight: bold;
  position: relative;
}

.event_flow_ob_th_day .flow li::before,
.event_flow_ob_th_day .flow li::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: -18px;
  margin: auto;
  border: solid 1px rgb(172, 233, 255);
  width: 6px;
  height: 6px;
  border-top: none;
  border-left: none;
  -webkit-transform: rotate(-45deg) translate(-1px, -1px);
          transform: rotate(-45deg) translate(-1px, -1px);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.event_flow_ob_th_day .flow li::after {
  right: -12px;
}

.event_flow_ob_th_day .flow li:last-child::before,
.event_flow_ob_th_day .flow li:last-child::after {
  display: none;
}

.event_flow_ob_th_day .flow + * {
  margin-top: 20px;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .event_flow_ob_th_day .flow li {
    font-size: 1.5vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .event_flow_ob_th_day {
    margin-top: 8vw;
    border-top: solid 1px #ccc;
    padding-top: 5vw;
  }
  .event_flow_ob_th_day .title {
    font-size: 5vw;
  }
  .event_flow_ob_th_day .flow {
    margin-top: 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .event_flow_ob_th_day .flow li {
    padding: 2vw;
    width: 100%;
    font-size: 4vw;
    margin-top: 5vw;
  }
  .event_flow_ob_th_day .flow li::before,
  .event_flow_ob_th_day .flow li::after {
    content: "";
    position: absolute;
    top: auto;
    bottom: -3vw;
    left: 0;
    right: 0;
    margin: auto;
    border: solid 1px rgb(172, 233, 255);
    width: 3vw;
    height: 3vw;
    border-top: none;
    border-left: none;
    -webkit-transform: rotate(45deg) translate(-1px, -1px);
            transform: rotate(45deg) translate(-1px, -1px);
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .event_flow_ob_th_day .flow li::after {
    bottom: -4vw;
  }
  .event_flow_ob_th_day .flow + * {
    margin-top: 3vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	how_to_join

===============================================================*/
.how_to_join {
  border: solid 1px #ddd;
  padding: 30px;
}

.how_to_join .title {
  font-size: 25px;
  line-height: 1.5;
}

.how_to_join .title + p {
  margin-top: 10px;
  font-size: 16px;
  line-height: 1.6;
}

.how_to_join .flex_container p {
  font-size: 14px;
  line-height: 1.4;
  margin-top: 10px;
}

.how_to_join .btn_line a {
  background-color: #00BC26;
  -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.1);
  padding: 20px 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .how_to_join {
    padding: 5vw;
  }
  .how_to_join .title {
    font-size: 4vw;
    text-align: center;
  }
  .how_to_join .title + p {
    margin-top: 2vw;
    font-size: 3.5vw;
  }
  .how_to_join .flex_container p {
    font-size: 3.5vw;
    margin-top: 2vw;
    text-align: center;
  }
} /* for SP max-width: $width_sp */
/* ----------------------------------------------
  .line_btn
---------------------------------------------- */
.line_btn {
  text-align: center;
  margin-top: 30px;
}

.line_btn a {
  display: inline-block;
  width: 100%;
  max-width: 600px;
}

.line_btn a:hover {
  opacity: 0.7;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .line_btn {
    margin-top: 10px;
  }
}
/* ----------------------------------------------
  .presentation_btn
---------------------------------------------- */
.presentation_btn {
  text-align: center;
  margin-top: 30px;
}

.presentation_btn a {
  position: relative;
  display: inline-block;
  width: 100%;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-decoration: none !important;
  background: #6a84c2;
  padding: 20px 0;
  max-width: 600px;
}

.presentation_btn a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  width: 8px;
  height: 8px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(-45deg) translate(50%);
          transform: rotate(-45deg) translate(50%);
  z-index: 1;
}

.presentation_btn a:hover {
  color: #fff;
  opacity: 0.7;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .presentation_btn {
    margin-top: 4vw;
  }
  .presentation_btn a {
    font-size: 3.8vw;
    padding: 4vw 0;
  }
  .presentation_btn a:after {
    right: 4vw;
    width: 2vw;
    height: 2vw;
  }
}
/* ----------------------------------------------
  .highschool_btn
---------------------------------------------- */
.highschool_btn {
  text-align: center;
  margin-top: 30px;
}

.highschool_btn a {
  position: relative;
  display: inline-block;
  width: 100%;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-decoration: none !important;
  background: #ED4B4B;
  padding: 20px 0;
  max-width: 600px;
}

.highschool_btn a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  width: 8px;
  height: 8px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(-45deg) translate(50%);
          transform: rotate(-45deg) translate(50%);
  z-index: 1;
}

.highschool_btn a:hover {
  color: #fff;
  opacity: 0.7;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .highschool_btn {
    margin: 4vw 20px 0;
  }
  .highschool_btn a {
    font-size: 3.8vw;
    padding: 4vw 0;
  }
  .highschool_btn a:after {
    right: 4vw;
    width: 2vw;
    height: 2vw;
  }
}
/* ----------------------------------------------
  .general_btn
---------------------------------------------- */
.general_btn {
  text-align: center;
  margin-top: 30px;
}

.general_btn a {
  position: relative;
  display: inline-block;
  width: 100%;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-decoration: none !important;
  background: #ffa200;
  padding: 20px 0;
  max-width: 600px;
}

.general_btn a:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  width: 8px;
  height: 8px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(-45deg) translate(50%);
          transform: rotate(-45deg) translate(50%);
  z-index: 1;
}

.general_btn a:hover {
  color: #fff;
  opacity: 0.7;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .general_btn {
    margin: 4vw 20px 0;
  }
  .general_btn a {
    font-size: 3.8vw;
    padding: 4vw 0;
  }
  .general_btn a:after {
    right: 4vw;
    width: 2vw;
    height: 2vw;
  }
}
/*===============================================================

	ランチなし
	最終更新：2021/2/2

===============================================================*/
.no_lunch {
  text-align: center;
}

.no_lunch p {
  position: relative;
  font-size: 16px;
  line-height: 1.5;
  text-align: left;
  padding-left: 30px;
}

.no_lunch p:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 24px;
  height: 24px;
  background: url("/open-campus/common/images/assets/icon_alert_red.svg") no-repeat center;
  background-size: 100% auto;
}

.no_lunch_wrp + .viking {
  margin-top: 70px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .no_lunch p {
    font-size: 3.5vw;
    padding-left: 5vw;
  }
  .no_lunch p:before {
    top: 0.5vw;
    width: 4vw;
    height: 4vw;
  }
  .no_lunch_wrp + .viking {
    margin-top: 20px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	番号リスト（1桁）
	最終更新：2021/3/15

===============================================================*/
.num_list2 li {
  position: relative;
  list-style-type: none;
  font-size: 16px;
  line-height: 1.6;
  padding-left: 1.8em;
  margin-top: 10px;
}

.num_list2 li:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 1.6em;
  height: 1.6em;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.8em;
  line-height: 1.6;
  text-align: center;
  border: 1px solid #000;
  border-radius: 100%;
}

.num_list2 li:nth-child(1):before {
  content: "1";
}

.num_list2 li:nth-child(2):before {
  content: "2";
}

.num_list2 li:nth-child(3):before {
  content: "3";
}

.num_list2 li:nth-child(4):before {
  content: "4";
}

.num_list2 li:nth-child(5):before {
  content: "5";
}

.num_list2 li:nth-child(6):before {
  content: "6";
}

.num_list2 li:nth-child(7):before {
  content: "7";
}

.num_list2 li:nth-child(8):before {
  content: "8";
}

.num_list2 li:nth-child(9):before {
  content: "9";
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .num_list2 li {
    font-size: 3.5vw;
    margin-top: 5px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	photo_wall

===============================================================*/
.photo_wall {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: -30px;
}

.photo_wall .item {
  width: 25%;
  margin-top: 30px;
  text-align: center;
  padding: 0 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.photo_wall_2column .item {
  width: 50%;
}

.photo_wall_3column .item {
  width: 33%;
}

.photo_wall_4column .item {
  width: 25%;
}

.photo_wall .caption {
  margin-top: 15px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .photo_wall {
    margin-top: -20px;
  }
  .photo_wall .item {
    width: 50%;
    margin-top: 20px;
    text-align: center;
    padding: 0 10px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	.photo_wall .photo
-------------------------------------------------------------*/
.photo_wall .photo {
  position: relative;
  -webkit-box-shadow: 0 2px 15px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 2px 15px 0 rgba(0, 0, 0, 0.1);
}

.photo_wall .item .photo img {
  width: 100%;
  height: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: solid 10px #fff;
}

/*　影	*/
.photo_wall .photo::after,
.photo_wall .photo::before {
  content: "";
  position: absolute;
  bottom: 0;
  margin: auto;
  width: 45%;
  height: 40px;
  background: rgba(0, 0, 0, 0.8);
  -webkit-filter: blur(10px);
          filter: blur(10px);
  z-index: -1;
}

.photo_wall .photo::after {
  left: 0;
  -webkit-transform: rotate(-5deg) translate(15px, -10px);
          transform: rotate(-5deg) translate(15px, -10px);
}

.photo_wall .photo::before {
  right: 0;
  -webkit-transform: rotate(5deg) translate(-15px, -10px);
          transform: rotate(5deg) translate(-15px, -10px);
}

/*　ランダム	*/
.photo_wall.random_deg .item .photo {
  -webkit-transform: rotate(1.5deg);
          transform: rotate(1.5deg);
}

.photo_wall.random_deg .item:nth-child(1) .photo {
  -webkit-transform: rotate(-2deg);
          transform: rotate(-2deg);
}

.photo_wall.random_deg .item:nth-child(2n+1) .photo {
  -webkit-transform: rotate(2deg);
          transform: rotate(2deg);
}

.photo_wall.random_deg .item:nth-child(3n+1) .photo {
  -webkit-transform: rotate(-1.5deg);
          transform: rotate(-1.5deg);
}

.photo_wall.random_deg .item:nth-child(6n) .photo {
  -webkit-transform: rotate(-3deg);
          transform: rotate(-3deg);
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .photo_wall .photo {
    -webkit-transform: rotate(1deg);
            transform: rotate(1deg);
  }
  .photo_wall .item .photo img {
    border: solid 5px #fff;
  }
  .photo_wall .photo::after {
    left: 0;
    -webkit-transform: rotate(-5deg) translate(15px, -8px);
            transform: rotate(-5deg) translate(15px, -8px);
  }
  .photo_wall .photo::before {
    right: 0;
    -webkit-transform: rotate(5deg) translate(-15px, -8px);
            transform: rotate(5deg) translate(-15px, -8px);
  }
  .photo_wall.random_deg .item:nth-child(1) .photo {
    -webkit-transform: rotate(-2deg);
            transform: rotate(-2deg);
  }
  .photo_wall.random_deg .item:nth-child(2n+1) .photo {
    -webkit-transform: rotate(-2deg);
            transform: rotate(-2deg);
  }
  .photo_wall.random_deg .item:nth-child(3n+1) .photo {
    -webkit-transform: rotate(-1.5deg);
            transform: rotate(-1.5deg);
  }
  .photo_wall.random_deg .item:nth-child(6n) .photo {
    -webkit-transform: rotate(2.5deg);
            transform: rotate(2.5deg);
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	headline_stripe

===============================================================*/
.headline_stripe {
  background-image: -webkit-gradient(linear, right top, left top, color-stop(25%, #fff100), color-stop(25%, #fff800), color-stop(50%, #fff800), color-stop(50%, #fff100), color-stop(75%, #fff100), color-stop(75%, #fff800), to(#fff800));
  background-image: linear-gradient(-90deg, #fff100 25%, #fff800 25%, #fff800 50%, #fff100 50%, #fff100 75%, #fff800 75%, #fff800);
  /* 幅8px、高さ8pxで背景画像のサイズを指定 */
  background-size: 50px 50px;
  padding: 60px 0;
  margin: 0;
}

.headline_stripe .content_width {
  position: relative;
}

.headline_stripe .title {
  position: relative;
  color: #000;
  font-size: 36px;
  line-height: 40px;
  text-align: center;
  margin: 0;
}

.headline_stripe .title:before,
.headline_stripe .title:after {
  content: none;
}

.headline_stripe .copy {
  position: absolute;
  top: -82px;
  left: 50%;
  display: inline-block;
  color: #fff;
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  word-break: keep-all;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.3rem 1.5rem;
  margin: 0;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.headline_stripe .copy:after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.headline_stripe .content_width .left {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 120px;
  -webkit-transform: translate(-370px, -50%);
          transform: translate(-370px, -50%);
}

.headline_stripe .content_width .right {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 80px;
  -webkit-transform: translate(260px, -50%);
          transform: translate(260px, -50%);
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .headline_stripe {
    background-size: 30px 30px;
    padding: 30px 0;
  }
  .headline_stripe .title {
    font-size: 5.7vw;
    line-height: 1.4;
  }
  .headline_stripe .copy {
    top: -50px;
    font-size: 3.2vw;
    line-height: 1.2;
    border-radius: 5px;
    padding: 10px 15px;
  }
  .headline_stripe .copy:after {
    bottom: -10px;
    border-width: 10px 8px 0 8px;
  }
  .headline_stripe .content_width .left, .headline_stripe .content_width .right {
    display: none;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	btns_box

===============================================================*/
.btns_box {
  position: relative;
  border: 3px dashed #ff4e4e;
  padding: 40px;
  padding-top: 30px;
  margin-top: 50px;
}

.free_html .btns_box {
  padding: 20px;
  padding-top: 15px;
}

.btns_box .title {
  position: absolute;
  top: -15px;
  left: 0;
  width: 100%;
  text-align: center;
  margin: 0;
}

.btns_box .title span {
  display: inline-block;
  color: #ff4e4e;
  font-size: 26px;
  line-height: 30px;
  font-weight: bold;
  text-align: center;
  background: #fff;
  padding: 0 20px;
}

.btns_box .btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 15px;
}

.btns_box .btns .type {
  text-align: center;
  width: 33%;
}

.free_html .type {
  width: 33%;
}

.btns_box .btns .type_label {
  font-size: 16px;
  line-height: 1.5;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .btns_box {
    padding: 25px 20px 20px;
    margin-top: 50px;
  }
  .free_html .btns_box {
    padding: 15px 0 0 0;
    border: 0;
    border-top: double 4px #ff4e4e;
  }
  .btns_box .title {
    top: -2.5vw;
    font-size: 5vw;
    line-height: 1;
  }
  .btns_box .title span {
    font-size: 5vw;
    line-height: 1;
    padding: 0 15px;
  }
  .free_html .btns_box .title {
    top: -2.5vw;
    font-size: 5vw;
    line-height: 1;
  }
  .free_html .btns_box .title span {
    font-size: 5vw;
    line-height: 1;
    padding: 0 10px;
  }
  .btns_box .btns {
    margin-top: 10px;
  }
  .btns_box .btns .type {
    text-align: center;
    width: 100%;
  }
  .btns_box .btns .type + .type {
    margin-top: 15px;
  }
  .btns_box .btns .type_label {
    font-size: 3.5vw;
    border-top: dashed 1px #666;
    border-bottom: 0;
    padding: 15px 0 0 0;
    margin: 0;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	.btns_box .type a
-------------------------------------------------------------*/
.btns_box .type a {
  font-weight: bold;
  display: block;
  color: #000;
  margin-top: 5px;
  background: #ff0;
  padding: 5px 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.05);
          box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.05);
}

.btns_box .type a:hover {
  -webkit-transform: scale(1.05, 1.05);
          transform: scale(1.05, 1.05);
}

.btns_box .tel a:hover {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
  cursor: default;
}

.btns_box .type a span {
  font-size: 20px;
  line-height: 40px;
  font-weight: bold;
  display: inline-block;
  color: #000;
  background-image: url("/common/images/assets/icon_freedial_40x25.svg");
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 25px 25px;
}

.btns_box .tel a span {
  background-image: url("/common/images/assets/icon_freedial_40x25.svg");
  background-size: 40px 25px;
  padding-left: 50px;
  font-size: 30px;
}

.btns_box .line a span {
  background-image: url("/common/images/assets/icon_line_25x25.svg");
  background-size: 35px 35px;
  padding-left: 40px;
}

.btns_box .mail a span {
  background-image: url("/common/images/assets/icon_mail_30x25.svg");
  background-size: 30px 25px;
  padding-left: 35px;
}

.free_html .btns_box .type a span {
  font-size: 15px;
}

.free_html .btns_box .tel a span {
  font-size: 20px;
}

/* タブレット以下 */
@media screen and (max-width: 1400px) {
  .btns_box .type a span {
    font-size: 16px;
    line-height: 30px;
  }
  .btns_box .tel a span {
    background-size: 30px 20px;
    padding-left: 40px;
    font-size: 1.2vw;
  }
  .btns_box .line a span {
    background-size: 30px 30px;
    padding-left: 35px;
  }
  .btns_box .mail a span {
    background-size: 25px 20px;
    padding-left: 30px;
  }
  .free_html .btns_box .type a span {
    font-size: 1.2vw;
  }
  .free_html .btns_box .tel a span {
    font-size: 1.4vw;
  }
} /* for tablet max-width: 1180px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .btns_box .tel a:hover {
    -webkit-transform: scale(1.05, 1.05);
            transform: scale(1.05, 1.05);
    cursor: pointer;
  }
  .btns_box .type a {
    margin-top: 1vw;
  }
  .btns_box .type a span {
    font-size: 5vw;
    line-height: 10vw;
    margin-top: 0px;
  }
  .free_html .btns_box .type a span {
    font-size: 4.5vw;
  }
  .btns_box .tel a span {
    background-size: 30px 20px;
    padding-left: 40px;
    font-size: 4vw;
  }
  .free_html .btns_box .tel a span {
    font-size: 5vw;
  }
  .btns_box .line a span {
    background-size: 30px 30px;
    padding-left: 35px;
  }
  .btns_box .mail a span {
    background-size: 25px 20px;
    padding-left: 30px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	CTA
	/creative/entrance/以下の.entrance_ao .briefing_lineと同じ
-------------------------------------------------------------*/
.cta_btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 30px -15px 0;
}
@media screen and (max-width: 1070px) {
  .cta_btn {
    display: block;
    margin: 0;
  }
}
@media only screen and (max-width: 800px) {
  .cta_btn {
    margin-top: 4vw;
  }
}
.cta_btn li {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  margin: 0 15px;
}
@media screen and (max-width: 1070px) {
  .cta_btn li {
    margin: 30px 0 0;
  }
}
@media only screen and (max-width: 800px) {
  .cta_btn li {
    margin: 15px 0 0;
  }
}
.cta_btn li a {
  display: block;
  color: #fff;
  font-size: 20px;
  line-height: 60px;
  font-weight: bold;
  padding: 10px 0;
  border-radius: 100px;
  text-align: center;
}
@media screen and (max-width: 1070px) {
  .cta_btn li a {
    font-size: 16px;
    line-height: 40px;
    padding: 5px 0;
  }
}
@media only screen and (max-width: 800px) {
  .cta_btn li a {
    font-size: 3.5vw;
    line-height: 2;
    padding: 4vw 0;
  }
}
.cta_btn li a:hover {
  color: #fff;
}
.cta_btn li.event a, .cta_btn li.entry a {
  background: #ff4e4e;
}
.cta_btn li.event a:hover, .cta_btn li.entry a:hover {
  color: #fff;
  background: #ed4b4b;
}
.cta_btn li.line a {
  background: #00bc26;
}
.cta_btn li.line a:hover {
  background: #00ad23;
}

/*===============================================================

	solution_box アンダーライン見出し、リード、フレックスボックスみだし
  https://www.tca.ac.jp/cre-contents/event/detail/ao_briefing/	

===============================================================*/
.solution_box {
  text-align: center;
}

.solution_box .title {
  display: inline;
  font-size: 24px;
  line-height: 1.6;
  font-weight: bold;
  margin: 0 0 20px;
}

.solution_box .read {
  font-size: 18px;
  margin-top: 10px;
}

.solution_box .read.left {
  text-align: left;
}

.solution_box .flexwrp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  margin-top: 20px;
}

.solution_box .flexwrp li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #ddd;
  padding: 30px 0;
}

.solution_box .flexwrp li span {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}

.solution_box .inbox4 li {
  width: 25%;
  margin-right: 2%;
}

.solution_box .inbox3 li {
  width: 33.3%;
  margin-right: 2%;
}

.solution_box .inbox2 li {
  width: 50%;
  margin-right: 2%;
}

.solution_box .flexwrp.inbox1 {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.solution_box .inbox1 li {
  width: 100%;
  padding: 20px 0;
  margin-top: 10px;
}

.solution_box .flexwrp li:last-child {
  margin-right: 0;
}

.solution_box .flexwrp li:before,
.solution_box .flexwrp li:after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  border-top: 1px solid rgba(0, 0, 0, 0.4);
  border-left: 1px solid rgba(0, 0, 0, 0.4);
}

.solution_box .flexwrp li:before {
  top: -1px;
  left: -1px;
}

.solution_box .flexwrp li:after {
  bottom: -1px;
  right: -1px;
  -webkit-transform: scale(-1, -1);
          transform: scale(-1, -1);
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .solution_box h3 {
    font-size: 3vw;
    line-height: 1.2;
    margin: 0 0 20px;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .solution_box .title {
    font-size: 4.8vw;
    margin: 0 0 15px;
  }
  .solution_box .read {
    font-size: 4vw;
    line-height: 1.3;
    margin-top: 10px;
  }
  .solution_box .flexwrp {
    display: block;
    margin-top: 15px;
  }
  .solution_box .flexwrp li {
    width: 100%;
    font-size: 4vw;
    padding: 10px 0;
    margin-right: 0;
    margin-bottom: 5px;
  }
  .solution_box .flexwrp li:nth-child(even) {
    margin-right: 0;
  }
  .solution_box .flexwrp li:last-child {
    margin-bottom: 0;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	synchronous_event
	同時開催イベント（we are TCAなど）

===============================================================*/
.synchronous_event {
  background: #fff;
  border-radius: 30px;
  overflow: hidden;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  margin-top: 80px;
}
@media only screen and (max-width: 800px) {
  .synchronous_event {
    border-radius: 5vw;
    margin-top: 6vw;
  }
}
.synchronous_event--heading {
  font-size: 20px;
  line-height: 1.1;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-align: center;
  background: #ffff00;
  padding: 20px !important;
}
@media only screen and (max-width: 800px) {
  .synchronous_event--heading {
    font-size: 4vw;
    padding: 2vw 0 !important;
  }
}
.synchronous_event--inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 40px;
  margin: 0 -20px;
}
@media only screen and (max-width: 800px) {
  .synchronous_event--inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    padding: 5vw;
    margin: 0;
  }
}
.synchronous_event--img {
  -ms-flex-preferred-size: 300px;
      flex-basis: 300px;
  margin: 0 20px;
}
@media only screen and (max-width: 800px) {
  .synchronous_event--img {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    margin: 0;
  }
}
.synchronous_event--text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin: 0 20px;
}
@media only screen and (max-width: 800px) {
  .synchronous_event--text {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    margin: 4vw 0 0;
  }
}
.synchronous_event--text-title {
  font-size: 30px;
  line-height: 1.6;
  font-weight: bold;
}
@media only screen and (max-width: 800px) {
  .synchronous_event--text-title {
    font-size: 5vw;
  }
}
.synchronous_event--text-date {
  font-weight: bold;
  margin-top: 10px !important;
}
@media only screen and (max-width: 800px) {
  .synchronous_event--text-date {
    margin-top: 5px !important;
  }
}
.synchronous_event--text-date .sat {
  color: #1437cc;
}
.synchronous_event--text-date .holiday, .synchronous_event--text-date .sun {
  color: #de1616;
}
.synchronous_event--text-lead {
  margin-top: 10px;
}
/*--------------------------------------------------------------
	イベント個別
--------------------------------------------------------------*/
/*===============================================================

	youtube埋め込みレスポンシブ対応

===============================================================*/
.youtube_box {
  margin-top: 30px;
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  -webkit-box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
}

.youtube_box.mt0 {
  margin-top: 0 !important;
}

.youtube_box.noshadow {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.youtube_box iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/* タブレット以下 */
/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .youtube_box {
    margin-top: 20px;
    -webkit-box-shadow: 0 8px 0 rgba(0, 0, 0, 0.08);
            box-shadow: 0 8px 0 rgba(0, 0, 0, 0.08);
  }
  .youtube_box.mt0 {
    margin-top: 0 !important;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	2022/4/19
	section_lesson_info

===============================================================*/
.section_lesson_info {
  background: #f5f5f5;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
/* for SP max-width: $width_sp */
/*===============================================================
	2022/4/19
	lesson_info_wrp
===============================================================*/
/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	lesson_header	
-------------------------------------------------------------*/
.lesson_info_wrp .lesson_header {
  text-align: center;
}

.lesson_info_wrp .lesson_header .title {
  font-size: 30px;
  line-height: 1.5;
  font-weight: bold;
}

.lesson_info_wrp .lesson_header .subtitle {
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
  background: #ED4B4B;
  color: #fff;
  padding: 10px;
  border-radius: 50px;
}

.lesson_info_wrp .lesson_header .title + .subtitle {
  margin-top: 10px;
}

.lesson_info_wrp * + .lesson_header {
  margin-top: 30px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .lesson_info_wrp .lesson_header .title {
    font-size: 6vw;
  }
  .lesson_info_wrp .lesson_header .subtitle {
    font-size: 5vw;
    padding: 5px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================
	2019/10/23
	lesson_info_box
===============================================================*/
.lesson_info_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background: #fff;
  border-radius: 30px;
  padding: 30px;
  margin-top: 30px;
  position: relative;
  border: 10px solid #ff0;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
}

.lesson_info_box .info {
  width: calc(100% - 170px);
}

.lesson_info_box .photo {
  width: 150px;
}

.lesson_info_box .photo img {
  width: 100%;
  height: auto;
  border-radius: 150px;
  overflow: hidden;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .lesson_info_box {
    padding: 5vw;
    margin-top: 8vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    border: 2.2vw solid #ff0;
  }
  .flex_container .lesson_info_box {
    margin-top: 7vw;
  }
  .lesson_info_box .info,
  .lesson_info_box .photo {
    width: 100%;
  }
  .lesson_info_box .photo {
    text-align: center;
  }
  .lesson_info_box .photo img {
    width: 50%;
    height: auto;
    margin: 0 auto;
  }
  .lesson_info_box .info {
    margin-top: 3vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	lesson_info_box 文字	
-------------------------------------------------------------*/
.lesson_info_box .subtitle {
  font-size: 18px;
  line-height: 1.4;
  font-weight: bold;
  color: #ED4B4B;
}

.lesson_info_box .title {
  font-size: 25px;
  line-height: 1.4;
  font-weight: bold;
}

.lesson_info_box .subtitle + .title {
  margin-top: 10px;
}

.lesson_info_box .profile {
  font-size: 16px;
  line-height: 1.6;
  margin-top: 10px;
}

.lesson_info_box .labels {
  position: absolute;
  top: -15px;
  left: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.lesson_info_box .labels .label {
  font-size: 15px;
  line-height: 1.5;
  margin-right: 10px;
  border-radius: 50px;
  background: #000;
  color: #fff;
  padding: 3px 15px;
  font-weight: 500;
}

.lesson_info_box .labels .label + .label {
  background: #ff0;
  color: #000;
  background: #666;
  color: #fff;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .lesson_info_box .subtitle {
    font-size: 4vw;
  }
  .lesson_info_box .title {
    font-size: 4.6vw;
  }
  .lesson_info_box .subtitle + .title {
    margin-top: 3vw;
  }
  .lesson_info_box .profile {
    font-size: 3.5vw;
    margin-top: 2vw;
  }
  .lesson_info_box .labels {
    position: absolute;
    top: -3.5vw;
    left: 3vw;
  }
  .lesson_info_box .labels .label {
    font-size: 3.2vw;
    margin-right: 5px;
    padding: 1vw 2vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================
	2024/9/27
	lesson_info_box2
===============================================================*/
.lesson_info_box2 {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  border-radius: 30px;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  padding: 30px;
  margin-top: 60px !important;
}
@media only screen and (max-width: 800px) {
  .lesson_info_box2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    border-radius: 20px;
    padding: 5vw;
    margin-top: 10vw !important;
  }
}
.lesson_info_box2 .info {
  width: calc(100% - 170px);
}
@media only screen and (max-width: 800px) {
  .lesson_info_box2 .info {
    width: 100%;
    margin-top: 3vw;
  }
}
.lesson_info_box2 .photo {
  width: 150px;
}
@media only screen and (max-width: 800px) {
  .lesson_info_box2 .photo {
    width: 100%;
    text-align: center;
  }
}
.lesson_info_box2 .photo img {
  width: 100%;
  height: auto;
  border-radius: 150px;
  overflow: hidden;
}
@media only screen and (max-width: 800px) {
  .lesson_info_box2 .photo img {
    width: 50%;
    margin: 0 auto;
  }
}
.lesson_info_box2 .subtitle {
  color: #ff4e4e;
  font-size: 18px;
  line-height: 1.4;
  font-weight: bold;
}
@media only screen and (max-width: 800px) {
  .lesson_info_box2 .subtitle {
    font-size: 4vw;
  }
}
.lesson_info_box2 .title {
  font-size: 25px;
  line-height: 1.4;
  font-weight: bold;
}
@media only screen and (max-width: 800px) {
  .lesson_info_box2 .title {
    font-size: 4.6vw;
  }
}
.lesson_info_box2 .subtitle + .title {
  margin-top: 10px;
}
@media only screen and (max-width: 800px) {
  .lesson_info_box2 .subtitle + .title {
    margin-top: 3vw;
  }
}
.lesson_info_box2 .profile {
  font-size: 16px;
  line-height: 1.6;
  margin-top: 10px;
}
@media only screen and (max-width: 800px) {
  .lesson_info_box2 .profile {
    font-size: 3.5vw;
    margin-top: 2vw;
  }
}
.lesson_info_box2 .btn {
  margin-top: 20px;
}
.lesson_info_box2 .btn a {
  position: relative;
  display: block;
  color: #fff;
  font-size: 20px;
  line-height: 60px;
  text-align: center;
  -webkit-box-shadow: none;
          box-shadow: none;
  background-color: #ff4e4e;
  border-radius: 30px;
  padding: 0;
  max-width: 400px;
}
@media only screen and (max-width: 800px) {
  .lesson_info_box2 .btn a {
    font-size: 3.8vw;
    line-height: 12vw;
    border-radius: 6vw;
  }
}
.lesson_info_box2 .btn a:hover {
  text-decoration: none;
  opacity: 0.7;
}
.lesson_info_box2 .btn a:after {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  top: 0;
  left: auto;
  bottom: 0;
  right: 20px;
  margin: auto;
  border-top: solid 1px #fff;
  border-left: solid 1px #fff;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
@media only screen and (max-width: 800px) {
  .lesson_info_box2 .btn a:after {
    width: 7px;
    height: 7px;
    right: 10px;
  }
}
.lesson_info_box2 .labels {
  position: absolute;
  top: 0;
  left: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media only screen and (max-width: 800px) {
  .lesson_info_box2 .labels {
    position: absolute;
    left: 3vw;
  }
}
.lesson_info_box2 .labels .label {
  font-size: 18px;
  line-height: 1.5;
  margin-right: 10px;
  border-radius: 50px;
  background: #ff4e4e;
  color: #fff;
  padding: 3px 15px;
  font-weight: 500;
}
@media only screen and (max-width: 800px) {
  .lesson_info_box2 .labels .label {
    font-size: 3.8vw;
    margin-right: 5vw;
    padding: 1vw 3vw;
  }
}
.lesson_info_box2 .labels .label + .label {
  background: #ff0;
  color: #000;
  background: #666;
  color: #fff;
}
/*===============================================================

	2023/7/19
	section_event_schedule

===============================================================*/
.section_event_schedule {
  margin-top: 30px;
}
@media only screen and (max-width: 800px) {
  .section_event_schedule {
    margin-top: 6vw;
  }
}
.section_event_schedule .list {
  border-top: 1px solid #ddd;
}
.section_event_schedule .list .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #ddd;
  margin: 0 -10px;
}
@media only screen and (max-width: 800px) {
  .section_event_schedule .list .item {
    display: block;
    margin: 0;
  }
}
.section_event_schedule .list .item .date {
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
  font-size: 20px;
  font-weight: bold;
  line-height: 1.8;
  padding: 15px;
  margin: 0 10px;
}
@media only screen and (max-width: 800px) {
  .section_event_schedule .list .item .date {
    font-size: 4vw;
    padding: 3vw 2vw 0;
    margin: 0;
  }
}
.section_event_schedule .list .item .date .sat {
  color: #1437cc;
}
.section_event_schedule .list .item .date .sun {
  color: #de1616;
}
.section_event_schedule .list .item .event_content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 15px;
  margin: 0 10px;
}
@media only screen and (max-width: 800px) {
  .section_event_schedule .list .item .event_content {
    padding: 0 2vw 3vw;
    margin: 0;
  }
}
.section_event_schedule .list .item .event_content .title {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  margin-bottom: 10px;
}
@media only screen and (max-width: 800px) {
  .section_event_schedule .list .item .event_content .title {
    font-size: 4vw;
    margin-bottom: 3vw;
  }
}
.section_event_schedule .list .item .event_content .detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -10px;
}
@media only screen and (max-width: 800px) {
  .section_event_schedule .list .item .event_content .detail {
    display: block;
    margin: 0;
  }
}
.section_event_schedule .list .item .event_content .detail .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin: 0 10px;
}
@media only screen and (max-width: 800px) {
  .section_event_schedule .list .item .event_content .detail .text {
    margin: 0;
  }
}
.section_event_schedule .list .item .event_content .detail .fig {
  -ms-flex-preferred-size: 200px;
      flex-basis: 200px;
  margin: 0 10px;
}
@media only screen and (max-width: 800px) {
  .section_event_schedule .list .item .event_content .detail .fig {
    width: 100%;
    margin: 3vw 0 0;
  }
}

/*===============================================================

	スーパーセレクション体験
	最終更新：2018/11/01
	/include/super_selection/html/

===============================================================*/
/* web font */
@font-face {
  font-family: "Interstate-Bold-Condensed";
  src: url("/common/font/Interstate_BoldCondensed.eot") format("eot"), url("/common/font/Interstate_BoldCondensed.woff2") format("woff2"), url("/common/font/Interstate_BoldCondensed.woff") format("woff"), url("/common/font/Interstate_BoldCondensed.ttf") format("truetype");
}
.super_selection p {
  font-size: 1.6rem;
}

/* フリーhtmlエリア */
.super_selection {
  padding: 40px;
  background: #fff;
  -webkit-box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
}

.super_selection .inner {
  text-align: center;
}

.super_selection h2 {
  margin: 0 0 30px;
}

.super_selection h2 span {
  font-size: 3rem;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #ff0));
  background: linear-gradient(transparent 50%, #ff0 50%);
}

.super_selection .baloon {
  position: relative;
  background: #e60012;
  margin-bottom: 20px;
}

.super_selection .baloon:after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 15px 0 15px;
  border-color: #e60012 transparent transparent transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.super_selection .baloon p {
  position: relative;
  display: inline-block;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  padding: 1rem 0;
  margin: 0;
}

.super_selection .list {
  border: 2px solid #dadada;
  border-radius: 10px;
}

.super_selection .list .world {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  padding: 23px;
}

.super_selection .list .world li.course {
  width: 305px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-right: 2px dotted #dadada;
  padding: 0 23px 0 0;
}

.super_selection .list .world li.course:nth-child(2) {
  width: 330px;
  padding: 0 23px 0 25px;
}

.super_selection .list .world li.course:last-child {
  border-right: none;
  padding: 0 0 0 25px;
}

.super_selection .list .world li.course h3 {
  font-size: 2.6rem;
  line-height: 1.1;
  font-weight: bold;
  padding-bottom: 15px;
  margin: 0;
}

.super_selection .list .world .en {
  font-family: "Interstate-Bold-Condensed";
}

.super_selection .list .field {
  margin-top: 10px;
}

.super_selection .list .field li {
  font-size: 1.8rem;
  line-height: 40px;
  font-weight: bold;
  text-align: center;
}

.super_selection .list .world li.ken_okuyama h3 {
  color: #e60012;
}

.super_selection .list .world li.ken_okuyama .field li:nth-child(odd) {
  background: #ffd1d5;
}

.super_selection .list .world li.ken_okuyama .field li:nth-child(even) {
  background: #ffecee;
}

.super_selection .list .world li.matt_suzuki h3 {
  color: #1f77d9;
}

.super_selection .list .world li.matt_suzuki .field li:nth-child(odd) {
  background: #cee2f9;
}

.super_selection .list .world li.matt_suzuki .field li:nth-child(even) {
  background: #e9f3ff;
}

.super_selection .list .world li.masanori_shinozuka h3 {
  color: #878990;
}

.super_selection .list .world li.masanori_shinozuka .field li:nth-child(odd) {
  background: #d5d7dd;
}

.super_selection .list .world li.masanori_shinozuka .field li:nth-child(even) {
  background: #eceef4;
}

.super_selection .notes {
  font-size: 1.6rem;
  text-align: center;
  margin: 15px 0 0;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .super_selection {
    padding: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
    margin-top: 40px;
  }
  .super_selection .notes {
    font-size: 14px;
    text-align: left;
    margin: 10px 0 0;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .super_selection h2 {
    margin: 0 0 20px;
  }
  .super_selection h2 span {
    font-size: 2.2rem;
  }
  .super_selection .baloon p {
    font-size: 1.5rem;
    line-height: 1.5;
    padding: 1rem 0;
    margin: 0;
  }
  .super_selection .list .world {
    display: block;
    padding: 13px;
  }
  .super_selection .list .world li.course {
    width: auto;
    border-right: none;
    border-bottom: 2px dotted #dadada;
    padding: 0 0 13px;
    margin-bottom: 15px;
  }
  .super_selection .list .world li.course:nth-child(2) {
    width: auto;
    padding: 0 0 13px;
  }
  .super_selection .list .world li.course:last-child {
    border-bottom: none;
    padding: 0;
    margin-bottom: 0;
  }
  .super_selection .list .world li.course h3 {
    font-size: 2rem;
    padding-bottom: 10px;
  }
  .super_selection .list .field li {
    font-size: 1.4rem;
    line-height: 30px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	お仕事バイキング
	最終更新：2018/11/01
	/include/viking/html/

===============================================================*/
.viking p {
  font-size: 16px;
}

/* フリーhtmlエリア */
.viking {
  padding: 40px;
  background: #fff;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 30px;
}

.viking .inner {
  position: relative;
}

.viking h2 {
  position: absolute;
  top: -82px;
  left: 50%;
  display: inline-block;
  color: #fff;
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
  word-break: keep-all;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.5rem 2rem;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.viking h2:after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.viking .inner .message p {
  font-size: 18px;
  line-height: 2;
  text-align: center;
}

.viking .inner .message p .red {
  color: #de1616;
  font-weight: bold;
}

.viking .inner .list {
  border-bottom: 1px solid #ddd;
  padding-bottom: 30px;
}

.viking .inner .list h3 {
  text-align: center;
  margin: 20px 0;
}

.viking .inner .list h3 span {
  position: relative;
  display: inline-table; /* Firefox */
  color: #ff4e4e;
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}

.viking .inner .list h3 span:before,
.viking .inner .list h3 span:after {
  content: "";
  position: absolute;
  top: 50%;
  height: 100%;
  border-left: solid 2px #ff4e4e;
}

.viking .inner .list h3 span:before {
  left: -2rem;
  -webkit-transform: rotate(-30deg) translateY(-50%);
          transform: rotate(-30deg) translateY(-50%);
}

.viking .inner .list h3 span:after {
  right: -2rem;
  -webkit-transform: rotate(30deg) translateY(-50%);
          transform: rotate(30deg) translateY(-50%);
}

.viking .inner .list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.viking .inner .list ul li {
  width: 31%;
  margin-right: 3.5%;
  margin-bottom: 3rem;
}

.viking .inner .list ul li.col2 {
  width: 46.5%;
}

.viking .inner .list ul li .label {
  display: inline-block;
  color: #fff;
  background: #ff4e4e;
  padding: 8px 10px;
  font-size: 12px;
  line-height: 1;
  border-radius: 50px;
  margin-top: 10px;
}

.viking .inner .list ul li:nth-child(3n) {
  margin-right: 0;
}

.viking .inner .list ul li:nth-last-child(-n+3) {
  margin-bottom: 0;
}

.viking .inner .list ul li.col2:nth-child(3n) {
  margin-right: 3.5%;
}

.viking .inner .list ul li.col2:nth-last-child(-n+3) {
  margin-bottom: 3rem;
}

.viking .inner .list ul li.col2:nth-child(2n) {
  margin-right: 0;
}

.viking .inner .list ul li.col2:nth-last-child(-n+2) {
  margin-bottom: 0;
}

.viking .inner .list ul li h4 {
  color: #fff;
  font-size: 16px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  padding: 0.5rem 0;
  margin: 0;
}

.viking .inner .list ul li .image {
  position: relative;
}

.viking .inner .list ul li .image h4.tag {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  color: #fff;
  font-size: 16px;
  line-height: 2;
  font-weight: bold;
  text-align: center;
  background: #ff4e4e;
  padding: 0 0.5rem;
  margin: 0;
}

.viking .inner .list ul li h4 .small {
  font-size: 0.75em;
}

.viking .inner .list ul li.genre_illustration h4 {
  background: #dc4f93;
}

.viking .inner .list ul li.genre_game_media h4 {
  background: #52b489;
}

.viking .inner .list ul li.genre_media h4 {
  background: #1d50a0;
}

.viking .inner .list ul li.genre_design h4 {
  background: #8f61a2;
}

.viking .inner .list ul li.genre_novels_furniture_mecha h4 {
  background: #e50111;
}

.viking .inner .list ul li.genre_engineer h4 {
  background: #5ab431;
}

.viking .inner .list ul li.genre_car h4 {
  background: #f1b000;
}

.viking .inner .list ul li p {
  font-size: 16px;
  margin: 0.5em 0 0;
}

.viking .inner .list ul li p {
  font-size: 16px;
  margin: 0.7rem 0 0;
}

.viking .inner .notes {
  padding: 1rem 1rem 0;
  margin: 0;
  background: #fff;
  letter-spacing: 0.03em;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .viking h2 {
    font-size: 3vw;
  }
  .viking .inner .list ul li h4 {
    font-size: 1.4vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .viking {
    padding: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
    margin-top: 0;
  }
  .viking h2 {
    position: relative;
    top: 0;
    font-size: 5vw;
    padding: 0.5rem 1rem;
    margin: 0 0 20px;
  }
  .viking .inner .message p {
    font-size: 4.5vw;
    line-height: 1.7;
  }
  .viking .inner .list {
    padding-bottom: 0;
  }
  .viking .inner .list h3 span {
    font-size: 6vw;
    line-height: 1.1;
  }
  .viking .inner .list h3 span:before,
  .viking .inner .list h3 span:after {
    content: "";
    position: absolute;
    /* 2023/9/21菅修正
    top: 0.3rem;
    */
    height: 120%;
    border-left: solid 2px #ff4e4e;
  }
  .viking .inner .list h3 span:before {
    left: -1rem;
  }
  .viking .inner .list h3 span:after {
    right: -1rem;
  }
  .viking .inner .list ul {
    display: block;
  }
  .viking .inner .list ul li,
  .viking .inner .list ul li.col2 {
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .viking .inner .list ul li .label {
    padding: 2.5vw 3vw;
    font-size: 3vw;
    margin-top: 4vw;
    border-radius: 4vw;
  }
  .viking .inner .list ul li:nth-last-child(-n+3) {
    margin-bottom: 1.5rem;
  }
  .viking .inner .list ul li.col2:nth-last-child(-n+3) {
    margin-bottom: 15px;
  }
  .viking .inner .list ul li.col2:nth-last-child(-n+2) {
    margin-bottom: 1.5rem;
  }
  .viking .inner .list ul li h4 {
    font-size: 4.5vw;
  }
  .viking .inner .list ul li p {
    font-size: 4vw;
    margin: 0.7rem 0 0;
  }
  .viking .inner .notes {
    font-size: 4vw;
    padding: 1.5rem 0 0;
    margin: 0;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	ワクワクダブル体験Day
	最終更新：2024/12/25
	/include/w_taiken/html/

===============================================================*/
.w_taiken {
  position: relative;
  padding: 40px;
  background: #fff;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  /*-------------------------------------------------------------
  inner
  -------------------------------------------------------------*/
  /*-------------------------------------------------------------
  &.opencampus .inner .list
  -------------------------------------------------------------*/
  /*===============================================================
  //w_taiken
  ===============================================================*/
}
@media screen and (max-width: 800px) {
  .w_taiken {
    border-radius: 20px;
    padding: 5vw;
    margin-top: 0;
  }
}
.w_taiken h2 {
  position: absolute;
  top: calc((40px + 1.8em) * -1);
  left: 50%;
  display: inline-block;
  color: #fff;
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  word-break: keep-all;
  white-space: nowrap;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.5em 2em;
  margin: 0;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 1000px) {
  .w_taiken h2 {
    font-size: 3vw;
  }
}
@media screen and (max-width: 800px) {
  .w_taiken h2 {
    position: relative;
    top: calc((5vw + 1em) * -1);
    font-size: 4vw;
    padding: 0.5em 1em;
    margin-bottom: -1em;
  }
}
.w_taiken h2:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 800px) {
  .w_taiken h2:after {
    border-width: 3vw 2vw 0 2vw;
  }
}
.w_taiken h2 .small {
  font-size: 70%;
}
.w_taiken .message p {
  font-size: 16px;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 800px) {
  .w_taiken .message p {
    font-size: 3.5vw;
    text-align: left;
  }
}
.w_taiken .inner {
  position: relative;
}
.w_taiken .inner .list {
  border-bottom: 1px solid #ddd;
  padding-bottom: 30px;
}
@media screen and (max-width: 800px) {
  .w_taiken .inner .list {
    padding-bottom: 0;
  }
}
.w_taiken .inner .list + .list {
  margin-top: 50px;
}
.w_taiken .inner .list h3 {
  text-align: center;
  margin: 30px 0;
}
@media screen and (max-width: 800px) {
  .w_taiken .inner .list h3 {
    margin: 6vw 0;
  }
}
.w_taiken .inner .list h3 span {
  position: relative;
  display: inline-block;
  color: #ff4e4e;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 800px) {
  .w_taiken .inner .list h3 span {
    font-size: 4vw;
  }
}
.w_taiken .inner .list h3 span:before, .w_taiken .inner .list h3 span:after {
  content: "";
  position: absolute;
  top: 0;
  height: 100%;
  border-left: solid 2px #ff4e4e;
}
@media screen and (max-width: 800px) {
  .w_taiken .inner .list h3 span:before, .w_taiken .inner .list h3 span:after {
    top: 0.5em;
    top: -0.1em;
  }
}
.w_taiken .inner .list h3 span:before {
  left: -1em;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
}
@media screen and (max-width: 800px) {
  .w_taiken .inner .list h3 span:before {
    left: -1.5em;
  }
}
.w_taiken .inner .list h3 span:after {
  right: -1em;
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
}
@media screen and (max-width: 800px) {
  .w_taiken .inner .list h3 span:after {
    right: -1.5em;
  }
}
.w_taiken .inner .list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-left: -30px;
}
@media screen and (max-width: 800px) {
  .w_taiken .inner .list ul {
    display: block;
    margin-left: 0;
  }
}
.w_taiken .inner .list ul li {
  width: calc((100% - 90px) / 3);
  margin-left: 30px;
  margin-bottom: 1.5em;
  /* 2025年度 */
}
@media screen and (max-width: 800px) {
  .w_taiken .inner .list ul li {
    width: 100% !important;
    margin-left: 0;
    margin-bottom: 4vw;
  }
}
.w_taiken .inner .list ul li .label {
  display: inline-block;
  color: #fff;
  background: #ff4e4e;
  padding: 8px 10px;
  font-size: 12px;
  line-height: 1;
  border-radius: 50px;
  margin-top: 10px;
}
@media screen and (max-width: 800px) {
  .w_taiken .inner .list ul li .label {
    padding: 2.5vw 3vw;
    font-size: 3vw;
    margin-top: 4vw;
    border-radius: 4vw;
  }
}
@media screen and (max-width: 800px) {
  .w_taiken .inner .list ul li:nth-last-child(-n+3) {
    margin-bottom: 1.5em;
  }
}
.w_taiken .inner .list ul li h4 {
  color: #fff;
  font-size: 16px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  padding: 0.5em 0;
  margin: 0;
}
@media screen and (max-width: 800px) {
  .w_taiken .inner .list ul li h4 {
    font-size: 4.5vw;
  }
}
.w_taiken .inner .list ul li h4.sm {
  font-size: 14px;
  line-height: 24px;
  padding: 8px 0;
}
@media screen and (max-width: 800px) {
  .w_taiken .inner .list ul li h4.sm {
    font-size: 4.5vw;
    line-height: 1.5;
    padding: 0.5em 0;
  }
}
.w_taiken .inner .list ul li h4 .small {
  font-size: 0.75em;
}
.w_taiken .inner .list ul li.genre_illustration h4 {
  background: #dc4f93;
}
.w_taiken .inner .list ul li.genre_game_media h4 {
  background: #52b489;
}
.w_taiken .inner .list ul li.genre_media h4 {
  background: #1d50a0;
}
.w_taiken .inner .list ul li.genre_design h4 {
  background: #8f61a2;
}
.w_taiken .inner .list ul li.genre_novels_furniture_mecha h4 {
  background: #e50111;
}
.w_taiken .inner .list ul li.genre_engineer h4 {
  background: #5ab431;
}
.w_taiken .inner .list ul li.genre_car h4 {
  background: #f1b000;
}
.w_taiken .inner .list ul li.genre_super_e_entertainment h4 {
  background: #1d50a0;
}
.w_taiken .inner .list ul li.super_creator_world h4 {
  background: #e50111;
}
.w_taiken .inner .list ul li.super_entertainment_world h4 {
  background: #1d50a0;
}
.w_taiken .inner .list ul li.automotive_design_world h4 {
  background: #f1b000;
}
.w_taiken .inner .list ul li.design_world h4 {
  background: #8f61a2;
}
.w_taiken .inner .list ul li.manga_illustration_novel_world h4 {
  background: #dc4f93;
}
.w_taiken .inner .list ul li.game_cg_animation_world h4 {
  background: #52b489;
}
.w_taiken .inner .list ul li p {
  font-size: 16px;
  text-align: center;
  margin: 0.5em 0 0;
}
@media screen and (max-width: 800px) {
  .w_taiken .inner .list ul li p {
    font-size: 4vw;
    text-align: left;
  }
}
.w_taiken .inner .list ul.col2 li {
  width: calc((100% - 60px) / 2);
}
.w_taiken .inner .notes {
  font-size: 14px;
  letter-spacing: 0.03em;
  padding: 1.5em 1em 0;
  background: #fff;
  margin: 0;
}
@media screen and (max-width: 800px) {
  .w_taiken .inner .notes {
    font-size: 3.2vw;
    padding: 1.5em 0 0;
    margin: 0;
  }
}
.w_taiken.opencampus .inner .list {
  /* 2025年度 */
}
.w_taiken.opencampus .inner .list ul li p {
  line-height: 1.5;
  font-weight: bold;
  text-align: left;
  margin-top: 0.7em;
}
.w_taiken.opencampus .inner .list ul li.genre_illustration p {
  color: #dc4f93;
}
.w_taiken.opencampus .inner .list ul li.genre_game_media p {
  color: #52b489;
}
.w_taiken.opencampus .inner .list ul li.genre_media p {
  color: #1d50a0;
}
.w_taiken.opencampus .inner .list ul li.genre_design p {
  color: #8f61a2;
}
.w_taiken.opencampus .inner .list ul li.genre_novels_furniture_mecha p {
  color: #e50111;
}
.w_taiken.opencampus .inner .list ul li.genre_engineer p {
  color: #5ab431;
}
.w_taiken.opencampus .inner .list ul li.genre_car p {
  color: #f1b000;
}
.w_taiken.opencampus .inner .list ul li.genre_super_e_entertainment p {
  color: #1d50a0;
}
.w_taiken.opencampus .inner .list ul li.super_creator_world p {
  color: #e50111;
}
.w_taiken.opencampus .inner .list ul li.super_entertainment_world p {
  color: #1d50a0;
}
.w_taiken.opencampus .inner .list ul li.automotive_design_world p {
  color: #f1b000;
}
.w_taiken.opencampus .inner .list ul li.design_world p {
  color: #8f61a2;
}
.w_taiken.opencampus .inner .list ul li.manga_illustration_novel_world p {
  color: #dc4f93;
}
.w_taiken.opencampus .inner .list ul li.game_cg_animation_world p {
  color: #52b489;
}

/*===============================================================

	出願・入学説明会
	最終更新：2018/11/07 山下
	/include/application_briefing/html/

===============================================================*/
.application_briefing p {
  font-size: 1.6rem;
}

/* インクルードエリア */
.application_briefing {
  position: relative;
  text-align: center;
}

.application_briefing .notes {
  margin: 20px 0 0;
}

.application_briefing .notes .bold {
  font-weight: bold;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .application_briefing {
    padding: 0 0 20px;
    -webkit-box-shadow: none;
            box-shadow: none;
    margin-top: 10px;
  }
  .application_briefing .notes {
    font-size: 4vw;
    padding: 1.5rem 0 0;
    margin: 0;
    text-align: left;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	AO入学説明会
	最終更新：2018/12/21 千葉
include/freehtml/html/ao_briefing.html

===============================================================*/
/* インクルードエリア */
.ao_briefing .notes {
  font-size: 1.6rem;
  margin: 20px 0 0;
  text-align: center;
}

.ao_briefing .notes .bold {
  font-weight: bold;
}

.ao_briefing .notes + .tel_entry {
  margin-top: 30px;
}

.ao_briefing .timetable_box {
  padding: 30px;
  padding-top: 20px;
  border-radius: 20px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .ao_briefing .headline_pop .title {
    width: 100%;
    padding: 10px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .ao_briefing .listup_box {
    padding: 3vw 5vw 3vw;
  }
  .ao_briefing .listup_box .title span {
    font-size: 4.3vw;
  }
  .ao_briefing .notes {
    font-size: 4vw;
    padding: 1.5rem 0 0;
    margin: 0;
    text-align: left;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	特別保護者説明会
	最終更新：2018/11/20 山下
	/include/parent_special/html/

===============================================================*/
.parent_special p {
  font-size: 16px;
}

.text_box {
  position: relative;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media screen and (max-width: 800px) {
  .parent_special .headline_pop {
    margin-bottom: 0;
  }
  .parent_special .headline_pop .title {
    position: relative;
    top: 0;
    font-size: 5vw;
    line-height: 1.3;
    padding: 0.8rem 1.5rem;
    margin: 0 0 20px;
  }
  .parent_special p {
    font-size: 4vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

  いつでも・なんでも相談会
	anytime_anything

===============================================================*/
.anytime_anything .consultation {
  border: solid 5px #eee;
  padding: 30px;
  margin-top: 20px !important;
}

.consultation .photo_txt_box + .photo_txt_box {
  padding-top: 30px;
  border-top: dashed 1px #666;
}

.anytime_anything .read p {
  font-size: 18px;
  line-height: 1.5;
  text-align: center;
}

.anytime_anything .read p span {
  font-weight: bold;
  margin: 0 10px;
  font-size: 22px;
}

.anytime_anything .read p + p {
  margin-top: 20px;
}

.anytime_anything .read p.caution {
  font-size: 12px;
}

/* タブレット以下 */
/* for tablet max-width: 1180px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .anytime_anything .consultation {
    border: solid 0px #eee;
    padding: 0;
    margin-top: 20px !important;
  }
  .consultation .photo_txt_box + .photo_txt_box {
    padding-top: 30px;
    border-top: dashed 1px #666;
  }
  .anytime_anything .read p {
    font-size: 4vw;
    line-height: 1.5;
    text-align: left;
  }
  .anytime_anything .read p span {
    font-weight: bold;
    margin: 0;
    font-size: 4.5vw;
    display: inline-block;
    width: auto;
    margin-bottom: 5px;
  }
  .anytime_anything .read p + p {
    margin-top: 10px;
    text-align: left;
  }
  .anytime_anything .read p.caution {
    font-size: 3vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	オンラインAO入学&出願説明会
	最終更新：2020/07/10
	/include/online_ao_briefing/html/

===============================================================*/
/* FAQ */
.more_info_box {
  text-align: center;
}

.more_info_box .title {
  display: inline;
  font-size: 24px;
  line-height: 1;
  font-weight: bold;
  margin: 0 0 20px;
}

.more_info_box .faq_box dl {
  text-align: left;
  border-bottom: none;
}

.more_info_box .faq_box dt {
  color: #ff4e4e;
}

.more_info_box .faq_box dt:first-child {
  border-top: none;
}

.more_info_box .faq_box dt:before {
  background-color: #ff4e4e;
}

.more_info_box .faq_box dd {
  font-weight: bold;
}

.more_info_box .faq_box dd a:hover {
  text-decoration: none;
}

.more_info_box .caption {
  font-size: 75%;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .more_info_box .title {
    font-size: 5vw;
    margin: 0 0 15px;
  }
} /* for SP max-width: $width_sp */
.online_ao_briefing .solution_box {
  margin-bottom: -50px;
}

.online_ao_briefing .solution_box .app_logo {
  text-align: center;
}

.online_ao_briefing .solution_box .app_logo li {
  display: inline-block;
  margin: 0 10px;
}

.online_ao_briefing .solution_box .app_logo li.zoom {
  width: 270px;
}

.online_ao_briefing .solution_box .app_logo li.skype {
  width: 100px;
}

.online_ao_briefing .solution_box .app_logo li.line {
  width: 105px;
}

.online_ao_briefing .solution_box p {
  text-align: left;
  margin-top: 15px;
}

.online_ao_briefing .solution_box .title {
  display: inline-block;
  margin: 30px 0 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .online_ao_briefing .solution_box {
    margin-bottom: 0;
  }
  .online_ao_briefing .solution_box .title {
    margin-top: 15px;
  }
  .online_ao_briefing .solution_box .app_logo li {
    margin: 0 5px;
  }
  .online_ao_briefing .solution_box .app_logo li.zoom {
    width: 135px;
  }
  .online_ao_briefing .solution_box .app_logo li.skype {
    width: 50px;
  }
  .online_ao_briefing .solution_box .app_logo li.line {
    width: 53px;
  }
  .online_ao_briefing .solution_box p {
    margin-top: 10px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	オンラインなどでバスアイコンを出さないイベント対応

===============================================================*/
.online_ao_briefing_index .icon_wrp,
.online_ao_briefing_detailpage .list_nav_wrp .hasbus,
.online_briefing_index .icon_wrp,
.online_briefing_detailpage .list_nav_wrp .hasbus,
.night_open_campus_index .icon_wrp,
.night_open_campus_detailpage .list_nav_wrp .hasbus {
  display: none !important;
}

.online_ao_briefing_detailpage .info_list .list_date,
.online_briefing_detailpage .info_list .list_date,
.night_open_campus_detailpage .info_list .list_date {
  background: none !important;
}

/*===============================================================

	LINEによる「いつでも、なんでも」相談会
	最終更新：2021/01/07
	/include/freehtml/line_1to1.html

===============================================================*/
.free_html .line_1to1 .event_info_inner {
  margin-top: 50px;
}

.line_1to1 .consultation {
  border: solid 5px #eee;
  padding: 30px;
  margin-top: 20px !important;
}

.consultation .photo_txt_box + .photo_txt_box {
  padding-top: 30px;
  border-top: dashed 1px #666;
}

.line_1to1 .read p {
  font-size: 18px;
  line-height: 1.5;
  text-align: center;
}

.line_1to1 .read p span {
  font-weight: bold;
  margin: 0 10px;
  font-size: 22px;
}

.line_1to1 .read p + p {
  margin-top: 20px;
}

.line_1to1 .read p.caution {
  font-size: 12px;
}

.line_1to1 .cell_box {
  margin-top: 30px;
}

/* タブレット以下 */
/* for tablet max-width: 1180px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .line_1to1 .consultation {
    border: solid 0px #eee;
    padding: 0;
    margin-top: 20px !important;
  }
  .line_1to1 .photo_txt_box + .photo_txt_box {
    padding-top: 30px;
    border-top: dashed 1px #666;
  }
  .line_1to1 .read p {
    font-size: 4vw;
    line-height: 1.5;
    text-align: left;
  }
  .line_1to1 .read p span {
    font-weight: bold;
    margin: 0;
    font-size: 4.5vw;
    display: inline-block;
    width: auto;
    margin-bottom: 5px;
  }
  .line_1to1 .read p + p {
    margin-top: 10px;
    text-align: left;
  }
  .line_1to1 .read p.caution {
    font-size: 3vw;
  }
  .free_html .event_info.line_1to1 .event_info_content_body {
    padding-top: 10vw;
  }
  .line_1to1_detailpage .line_area {
    display: none !important;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	進路変更者向け学校説明会
	最終更新：2018/11/19
	/include/turning/html/

===============================================================*/
.free_html .turning_wrp {
  position: relative;
  text-align: center;
  background: #fff;
  -webkit-box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
  margin-top: -30px;
}

.free_html .turning .turning_content {
  text-align: left;
  padding: 30px 50px 50px;
}

.free_html .turning .turning_content p {
  font-size: 1.6rem;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .free_html .turning {
    padding-bottom: 0px;
  }
  .free_html .turning_wrp {
    border-top: 5px solid #ffff00;
    border: 5px solid #ffff00;
    -webkit-box-shadow: 0 8px 0 rgba(0, 0, 0, 0.08);
            box-shadow: 0 8px 0 rgba(0, 0, 0, 0.08);
    margin-top: -35px;
  }
  .free_html .turning .everyday_title {
    width: 180px;
  }
  .free_html .turning .turning_content {
    padding: 15px;
  }
  .free_html .turning .turning_content p {
    font-size: 1.4rem;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	平日授業見学会
	最終更新：2018/11/19
	/include/class_inspection/html/

===============================================================*/
.free_html .class_inspection_wrp {
  position: relative;
  text-align: center;
  background: #fff;
  -webkit-box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
  margin-top: -30px;
}

.free_html .class_inspection_content {
  text-align: left;
  padding: 30px 50px 50px;
}

.free_html .class_inspection_content p {
  font-size: 1.6rem;
}

.free_html .class_inspection_content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  margin: 30px 0;
}

.free_html .class_inspection_content ul li {
  width: 31%;
  border: 1px solid #ff4e4e;
  margin-right: 3.5%;
}

.free_html .class_inspection_content ul li:last-child {
  margin-right: 0;
}

.free_html .class_inspection_content ul li h4 {
  color: #fff;
  font-weight: bold;
  text-align: center;
  background: #ff4e4e;
  padding: 5px 0;
  margin: 0;
}

.free_html .class_inspection_content ul li p {
  font-weight: bold;
  text-align: center;
  padding: 15px 4px 14px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .free_html .class_inspection {
    padding-bottom: 0;
  }
  .free_html .class_inspection_wrp {
    border-top: 5px solid #ffff00;
    border: 5px solid #ffff00;
    -webkit-box-shadow: 0 8px 0 rgba(0, 0, 0, 0.08);
            box-shadow: 0 8px 0 rgba(0, 0, 0, 0.08);
    margin-top: -35px;
  }
  .free_html .class_inspection .everyday_title {
    width: 220px;
  }
  .free_html .class_inspection_content {
    padding: 15px;
  }
  .free_html .class_inspection_content p {
    font-size: 1.4rem;
  }
  .free_html .class_inspection_content ul {
    display: block;
    margin: 15px 0;
  }
  .free_html .class_inspection_content ul li {
    width: auto;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .free_html .class_inspection_content ul li:last-child {
    margin-bottom: 0;
  }
  .free_html .class_inspection_content ul li h4 {
    font-size: 1.4rem;
    padding: 5px 0;
  }
  .free_html .class_inspection_content ul li p {
    padding: 10px 4px 9px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	個別相談会
	最終更新：2018/11/19
	/include/parsonal/html/

===============================================================*/
.free_html .parsonal_wrp {
  position: relative;
  text-align: center;
  background: #fff;
  -webkit-box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
  margin-top: -30px;
}

.free_html .parsonal_content {
  text-align: left;
  padding: 30px 50px 50px;
}

.free_html .parsonal_content p {
  font-size: 1.6rem;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .free_html .parsonal {
    padding-bottom: 0;
  }
  .free_html .parsonal_wrp {
    border-top: 5px solid #ffff00;
    border: 5px solid #ffff00;
    -webkit-box-shadow: 0 8px 0 rgba(0, 0, 0, 0.08);
            box-shadow: 0 8px 0 rgba(0, 0, 0, 0.08);
    margin-top: -35px;
  }
  .free_html .parsonal .everyday_title {
    width: 220px;
  }
  .free_html .parsonal_content {
    padding: 15px;
  }
  .free_html .parsonal_content p {
    font-size: 1.4rem;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	夜の相談会
	最終更新：2020/6/23
	/include/night_open_campus/

===============================================================*/
.night_open_campus .headline_pop {
  margin-top: 20px;
}

.night_open_campus .headline_pop + .read {
  padding-top: 30px;
  text-align: center;
}

.night_open_campus .btns_box .btns.btn2 .type {
  width: 49%;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .night_open_campus .read p {
    text-align: center;
  }
  .night_open_campus p span {
    margin: 0 1vw;
  }
  .night_open_campus .headline_pop {
    margin-top: 3vw;
  }
  .night_open_campus .headline_pop + .read {
    padding-top: 0vw;
    margin-top: -5vw;
    text-align: left;
  }
  .night_open_campus .btns_box .btns.btn2 .type {
    width: 100%;
  }
  .night_open_campus.anytime_anything .read p + p {
    text-align: center;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	学費サポート相談会
	最終更新：2018/11/19
	/include/support/html/

===============================================================*/
.free_html .support_wrp {
  position: relative;
  text-align: center;
  background: #fff;
  -webkit-box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
  margin-top: -30px;
}

.free_html .support_content {
  text-align: left;
  padding: 30px 50px 50px;
}

.free_html .support_content p {
  font-size: 1.6rem;
}

.free_html .support_content .headline_diagonal {
  text-align: center;
  margin-top: 20px;
}

.free_html .support_content .subtitle {
  position: relative;
  display: inline-block;
  color: #ff4e4e;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  padding: 0 20px;
  margin: 0 auto;
}

.free_html .support_content .subtitle:after,
.free_html .support_content .subtitle:before {
  content: "";
  position: absolute;
  top: 0px;
  height: 28px;
  border-left: solid 2px #ff4e4e;
}

.free_html .support_content .subtitle:before {
  left: 0px;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
}

.free_html .support_content .subtitle:after {
  right: 0px;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
}

.free_html .support_content ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  margin: 20px 0 30px;
}

.free_html .support_content ul li {
  position: relative;
  width: 31%;
  border: 1px solid #ddd;
  margin-right: 3.5%;
}

.free_html .support_content ul li:last-child {
  margin-right: 0;
}

.free_html .support_content ul li:before,
.free_html .support_content ul li:after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  border-width: 1px;
}

.free_html .support_content ul li:before {
  bottom: -1px;
  right: -1px;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
}

.free_html .support_content ul li:after {
  top: -1px;
  left: -1px;
  border-top: 1px solid #000;
  border-left: 1px solid #000;
}

.free_html .support_content ul li p {
  font-size: 18px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  padding: 14px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .free_html .support {
    padding-bottom: 0;
  }
  .free_html .support_wrp {
    border-top: 5px solid #ffff00;
    border: 5px solid #ffff00;
    -webkit-box-shadow: 0 8px 0 rgba(0, 0, 0, 0.08);
            box-shadow: 0 8px 0 rgba(0, 0, 0, 0.08);
    margin-top: -35px;
  }
  .free_html .support .everyday_title {
    width: 180px;
  }
  .free_html .support_content {
    padding: 15px;
  }
  .free_html .support_content p {
    font-size: 1.4rem;
  }
  .free_html .support_content .subtitle {
    font-size: 16px;
    padding: 0 10px;
  }
  .free_html .support_content .subtitle:after,
  .free_html .support_content .subtitle:before {
    height: 18px;
  }
  .free_html .support_content ul {
    display: block;
    margin: 15px 0;
  }
  .free_html .support_content ul li {
    width: auto;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .free_html .support_content ul li:last-child {
    margin-bottom: 0;
  }
  .free_html .support_content ul li p {
    font-size: 14px;
    line-height: 1.2;
    padding: 9px 4px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	お仕事体験
	最終更新：2018/11/08 菅
	/include/experience/html/

===============================================================*/
/* web font
既に読み込んでいるので移行は不要
*/
@font-face {
  font-family: "Interstate-Bold-Condensed";
  src: url("/common/font/Interstate_BoldCondensed.eot") format("eot"), url("/common/font/Interstate_BoldCondensed.woff2") format("woff2"), url("/common/font/Interstate_BoldCondensed.woff") format("woff"), url("/common/font/Interstate_BoldCondensed.ttf") format("truetype");
}
.en {
  font-family: "Interstate-Bold-Condensed";
}

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

スーパークリエーターワールド

------------------------------*/
.section_super_creater_world {
  background: #fff;
}

.section_super_creater_world p {
  font-size: 16px;
}

.section_super_creater_world .headline {
  padding: 30px 0;
}

.section_super_creater_world .headline .title {
  position: relative;
}

.section_super_creater_world .headline .title .year4 {
  width: 165px;
  margin: 0 auto;
}

.section_super_creater_world .headline .title p {
  margin: 0;
}

.section_super_creater_world .headline .title .major.en {
  color: #fff;
  font-size: 60px;
  letter-spacing: 0;
  line-height: 1.2;
}

.section_super_creater_world .headline .title .major.jp {
  color: #fff;
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 0;
  line-height: 1.2;
}

.section_super_creater_world .headline .title .course {
  display: inline-block;
  color: #fff;
  font-size: 36px;
  line-height: 40px;
  font-weight: bold;
  vertical-align: bottom;
  margin: 0;
}

.section_super_creater_world .headline .title .course .en {
  font-size: 40px;
}

.section_super_creater_world .headline .title .sv {
  display: inline-block;
  color: #fff;
  font-size: 14px;
  line-height: 30px;
  font-weight: bold;
  border: 2px solid #fff;
  border-radius: 5px;
  padding: 0 10px;
  margin-right: 10px;
}

.section_super_creater_world .headline .title .sv .name {
  font-size: 18px;
}

.section_super_creater_world .headline .title .qualification {
  position: absolute;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  top: 0;
  right: 0;
  width: 100px;
  height: 100px;
  color: #fff;
  font-size: 15px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  border: 2px solid #fff;
  margin: 0;
}

.section_super_creater_world .content .title {
  font-size: 32px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_super_creater_world .headline {
    padding: 15px 0;
  }
  .section_super_creater_world .headline .title {
    font-size: 0;
  }
  .section_super_creater_world .headline .title .year4 {
    width: 30%;
    max-width: 165px;
    margin-bottom: 2px;
  }
  .section_super_creater_world .headline .title .major.en {
    font-size: 7vw;
    line-height: 1.2;
  }
  .section_super_creater_world .headline .title .major.jp {
    font-size: 3.8vw;
    line-height: 1.2;
    margin-bottom: 15px;
  }
  .section_super_creater_world .headline .title .course {
    display: block;
    font-size: 5.5vw;
    line-height: 1;
    margin: 0 0 10px;
  }
  .section_super_creater_world .headline .title .course .en {
    font-size: 7vw;
  }
  .section_super_creater_world .headline .title .sv {
    font-size: 2vw;
    line-height: 2;
    /*border: 1px solid #fff;*/
    margin-right: 0;
    margin-bottom: 10px;
  }
  .section_super_creater_world .headline .title .sv .name {
    font-size: 3vw;
  }
  .section_super_creater_world .headline .title .qualification {
    position: static;
    display: inline-block;
    top: auto;
    right: auto;
    width: auto;
    height: auto;
    font-size: 3.5vw;
    line-height: 2;
    border: 1px solid #fff;
    padding: 0 3vw;
  }
  .section_super_creater_world .content .title {
    font-size: 5vw;
    line-height: 1.3;
    margin-bottom: 10px;
    /*    margin-top:20px;*/
  }
} /* for SP max-width: $width_sp */
/* goal_box */
.goal_box {
  padding: 0 50px;
  margin-bottom: 50px;
  margin-top: 20px;
}

.goal_box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

.goal_box ul li {
  width: 460px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 18px;
  margin-right: 50px;
}

.goal_box ul li:last-child {
  margin-right: 0;
}

.goal_box ul li .subtitle {
  font-size: 17px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  border-bottom: 2px solid #e94d42;
  padding-bottom: 18px;
  margin: 0;
  letter-spacing: 0.03em;
}

.goal_box ul li p {
  text-align: justify;
  text-justify: inter-ideograph; /*IE */
  padding-top: 20px;
  margin: 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .goal_box {
    padding: 0;
    margin-bottom: 30px;
    margin-top: 0;
  }
  .goal_box ul {
    display: block;
  }
  .goal_box ul li {
    width: auto;
    padding: 13px 18px 18px;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .goal_box ul li:last-child {
    margin-bottom: 0;
  }
  .goal_box ul li .subtitle {
    font-size: 5vw;
    padding-bottom: 8px;
  }
  .goal_box ul li p {
    font-size: 4vw;
    padding-top: 10px;
  }
} /* for SP max-width: $width_sp */
/* goal_box2 */
.goal_box2 {
  padding: 0 50px;
  margin-bottom: 50px;
}

.goal_box2 .title {
  color: #e94d42;
}

.goal_box2 p {
  text-align: justify;
  text-justify: inter-ideograph; /*IE */
  padding-top: 20px;
  margin: 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .goal_box2 {
    padding: 0;
    margin-bottom: 30px;
  }
  .goal_box2 p {
    font-size: 4vw;
    padding-top: 10px;
  }
} /* for SP max-width: $width_sp */
/* field_box */
.field_box {
  padding: 0 50px;
  margin-bottom: 50px;
}

.field_box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.field_box ul li {
  width: 31%;
  margin-right: 3.5%;
  margin-bottom: 3rem;
}

.field_box ul li:nth-child(3n) {
  margin-right: 0;
}

.field_box ul li:nth-last-child(-n+3) {
  margin-bottom: 0;
}

.field_box ul li .caption {
  font-size: 12px;
  margin-top: 0.5rem;
}

.field_box p {
  font-size: 16px;
  margin-top: 20px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .field_box {
    padding: 0;
    margin-bottom: 7vw;
  }
  .goal_box h3, .field_box h3 {
    margin-top: 20px;
  }
  .field_box ul {
    display: block;
  }
  .field_box ul li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 1rem;
  }
  .field_box ul li:nth-last-child(-n+3) {
    margin-bottom: 1rem;
  }
  .field_box ul li:last-child {
    margin-bottom: 0;
  }
  .field_box ul li .caption {
    font-size: 3vw;
    margin-top: 0.5rem;
  }
  .field_box p {
    font-size: 4vw;
    margin-top: 10px;
  }
} /* for SP max-width: $width_sp */
/* curriculum_box */
.curriculum_box {
  padding: 0 50px;
}

.curriculum_box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  margin-bottom: 20px;
}

.curriculum_box ul li {
  position: relative;
  width: 250px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 15px 15px 15px 45px;
}

.curriculum_box ul li.first {
  width: 220px;
  background: #ef98a0;
  padding-left: 15px;
}

.curriculum_box ul li.second {
  background: #e5666f;
}

.curriculum_box ul li.first_second {
  width: 470px;
  background: #e5666f;
  padding-left: 15px;
}

.curriculum_box ul li.second .arw svg .polygon {
  fill: #ef98a0;
}

.curriculum_box ul li.third {
  background: #df333f;
}

.curriculum_box ul li.third .arw svg .polygon {
  fill: #e5666f;
}

.curriculum_box ul li.fourth {
  background: #e60012;
}

.curriculum_box ul li.fourth .arw svg .polygon {
  fill: #df333f;
}

.curriculum_box ul li .arw.pc_tablet {
  position: absolute;
  top: 0;
  left: -1px;
  height: 100%;
  width: 31px;
  overflow: hidden;
}

.curriculum_box ul li .arw.pc_tablet svg {
  display: block;
  width: 100%;
  height: 100%;
}

.curriculum_box ul li .year {
  color: #fff;
  font-size: 30px;
  font-style: italic;
  text-align: center;
  border-bottom: 2px dotted #fff;
  padding-bottom: 15px;
  margin-top: 10px;
  line-height: 1.1;
  font-weight: normal;
}

.curriculum_box ul li .copy {
  color: #fff;
  font-size: 18px;
  line-height: 1.2;
  font-weight: bold;
  text-align: center;
  margin: 15px 0;
}

.curriculum_box ul li p {
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  text-align: justify;
  text-justify: inter-ideograph; /*IE */
  margin: 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .curriculum_box {
    padding: 0;
  }
  .curriculum_box ul {
    display: block;
    margin-bottom: 15px;
  }
  .curriculum_box ul li {
    position: relative;
    width: auto;
    padding: 8vw 15px 15px 15px;
    overflow: hidden;
  }
  .curriculum_box ul li.first,
  .curriculum_box ul li.first_second {
    width: auto;
    padding-top: 5px;
  }
  .curriculum_box ul li .arw.sp {
    position: absolute;
    display: block;
    top: -1px;
    left: 0;
    width: 100%;
    overflow: hidden;
    padding-top: 8vw;
    z-index: 2;
  }
  .curriculum_box ul li .arw.sp svg {
    position: absolute;
    display: block;
    top: 0;
    left: -1%;
    height: 100%;
    width: 102%;
    z-index: 3;
  }
  .curriculum_box ul li .year {
    font-size: 6vw;
    padding-bottom: 10px;
  }
  .curriculum_box ul li .copy {
    font-size: 4.5vw;
    line-height: 1.2;
    margin-top: 10px;
  }
  .curriculum_box ul li p {
    font-size: 3.5vw;
    padding: 0 15px;
    margin: 0;
  }
} /* for SP max-width: $width_sp */
/* curriculum_box2 */
.curriculum_box2 {
  margin-top: 50px;
}

.curriculum_box2 .title {
  font-size: 24px;
  line-height: 1.4;
  font-weight: bold;
  text-align: center;
}

.curriculum_box2 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  margin-top: 15px;
}

.curriculum_box2 ul li {
  position: relative;
  width: 25%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 30px 20px;
}

.curriculum_box2 ul li .year {
  color: #fff;
  font-size: 30px;
  line-height: 1.1;
  text-align: center;
  font-weight: normal;
}

.curriculum_box2 ul li .copy {
  color: #fff;
  font-size: 17px;
  line-height: 1.2;
  font-weight: bold;
  letter-spacing: 0;
  text-align: center;
  border-top: 2px dotted #fff;
  border-bottom: 2px dotted #fff;
  padding: 10px 0;
  margin: 20px 0;
}

.curriculum_box2 ul li p {
  color: #fff;
  font-size: 14px;
  text-align: justify;
  text-justify: inter-ideograph; /*IE */
  word-break: break-all;
  margin: 0;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .curriculum_box2 {
    margin: 30px -15px 0;
  }
  .curriculum_box2 ul li {
    width: 50%;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .curriculum_box2 .title {
    font-size: 4.4vw;
  }
  .curriculum_box2 ul {
    display: block;
  }
  .curriculum_box2 ul li {
    width: 100%;
    padding: 20px;
  }
  .curriculum_box2 ul li .year {
    font-size: 6vw;
  }
  .curriculum_box2 ul li .copy {
    font-size: 4vw;
    line-height: 1.2;
    margin: 15px 0;
  }
  .curriculum_box2 ul li p {
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/* feature_box */
.feature_box p {
  font-size: 16px;
  /*font-weight: bold;*/
  padding: 0 50px;
  margin: 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .feature_box p {
    font-size: 4vw;
    /*line-height: 1.5;*/
    padding: 0;
  }
} /* for SP max-width: $width_sp */
/* job_experience_box */
.job_experience_box h2 {
  position: absolute;
  top: -82px;
  left: 50%;
  display: inline-block;
  color: #fff;
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
  word-break: keep-all;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.5rem 2rem;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.job_experience_box h2:after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.job_experience_box .message p {
  font-size: 18px;
  line-height: 2;
  text-align: center;
}

.job_experience_box .message p .red {
  color: #de1616;
  font-weight: bold;
}

.job_experience_box .list {
  /*border-bottom: 1px solid #ddd;
  padding-bottom: 30px;*/
}

.job_experience_box .list h3 {
  text-align: center;
  margin: 20px 0;
}

.job_experience_box .list h3 span {
  position: relative;
  display: inline-table; /* Firefox */
  color: #ff4e4e;
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}

.job_experience_box .list h3 span:before,
.job_experience_box .list h3 span:after {
  content: "";
  position: absolute;
  top: 0;
  height: 30px;
  border-left: solid 2px #ff4e4e;
}

.job_experience_box .list h3 span:before {
  left: -2rem;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
}

.job_experience_box .list h3 span:after {
  right: -2rem;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
}

.job_experience_box .list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.job_experience_box .list ul li {
  width: 31%;
  margin-right: 3.5%;
  margin-bottom: 3rem;
}

.job_experience_box .list ul li:nth-child(3n) {
  margin-right: 0;
}

.job_experience_box .list ul li:nth-last-child(-n+3) {
  margin-bottom: 0;
}

.job_experience_box .list ul li h4 {
  color: #fff;
  font-size: 16px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  padding: 0.5em 0;
  margin: 0;
}

.job_experience_box .list ul li.creator_world h4 {
  background: #e60012;
}

.job_experience_box .list ul li.car_world h4 {
  background: #4b86be;
}

.job_experience_box .list ul li.visual_design_world h4 {
  background: #efb81a;
}

.job_experience_box .list ul li.manga_world h4 {
  background: #eb6ea0;
}

.job_experience_box .list ul li.game_world h4 {
  background: #c3d94e;
}

.job_experience_box .list ul li.digital_media_world h4 {
  background: #33aeaa;
}

.job_experience_box .list ul li.technology_world h4 {
  background: #a75f9B;
}

.job_experience_box .list ul li.super_creater_world h4 {
  background: #000;
}

.job_experience_box .list ul li p {
  font-size: 16px;
  margin: 1em 0 0;
}

.job_experience_box .notes {
  letter-spacing: 0.03em;
  border-top: 1px solid #ddd;
  background: #fff;
  padding: 1.5em 1em 0;
  margin: 3em 0 0;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .job_experience_box h2 {
    font-size: 3vw;
  }
  .job_experience_box .list ul li h4 {
    font-size: 1.4vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .job_experience_box {
    padding: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
    margin-top: 0;
  }
  .job_experience_box h2 {
    position: relative;
    top: 0;
    font-size: 5vw;
    padding: 0.5rem 1rem;
    margin: 0 0 20px;
  }
  .job_experience_box .message p {
    font-size: 4.5vw;
    line-height: 1.7;
  }
  .job_experience_box .list {
    padding-bottom: 0;
  }
  .job_experience_box .list h3 span {
    font-size: 6vw;
  }
  .job_experience_box .list h3 span:before,
  .job_experience_box .list h3 span:after {
    content: "";
    position: absolute;
    top: 0.5rem;
    height: 12vw;
    border-left: solid 2px #ff4e4e;
  }
  .job_experience_box .list h3 span:before {
    left: -1rem;
  }
  .job_experience_box .list h3 span:after {
    right: -1rem;
  }
  .job_experience_box .list ul {
    display: block;
  }
  .job_experience_box .list ul li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 1.5rem;
  }
  .job_experience_box .list ul li:nth-last-child(-n+3) {
    margin-bottom: 1.5rem;
  }
  .job_experience_box .list ul li h4 {
    font-size: 4.5vw;
  }
  .job_experience_box .list ul li p {
    font-size: 4vw;
    margin: 1rem 0 0;
  }
  .job_experience_box .notes {
    font-size: 4vw;
    padding: 1.5rem 0 0;
    margin: 0;
  }
  .curriculum_box ul li .year {
    margin-top: 10px;
    line-height: 1.1;
  }
} /* for SP max-width: $width_sp */
/* outline_box */
.outline_box .text p {
  font-size: 18px;
  font-weight: bold;
  text-align: left;
  text-align: justify;
  text-justify: inter-ideograph; /* IE */
  margin-bottom: 1rem;
}

.outline_box .text p:last-child {
  margin-bottom: 0;
}

.outline_box .image {
  position: relative;
  float: right;
  width: 375px;
  border-radius: 50%;
  overflow: hidden;
  margin-left: 40px;
  z-index: 1; /* scaleIn fix for Safari */
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .outline_box .image {
    float: none;
    width: 100%;
    /*max-width: 200px;*/
    margin: 0 auto 15px;
  }
  .outline_box .text p {
    font-size: 3.6vw;
  }
} /* for SP max-width: $width_sp */
/* breakdown_box */
.breakdown_box {
  background: #fff;
  padding-top: 40px;
}

.breakdown_box ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  /*align-items: center;*/
  border-bottom: 1px dashed #eaeaea;
  padding: 40px 0;
}

.breakdown_box ul li:first-child {
  padding-top: 0;
}

.breakdown_box ul li:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.breakdown_box ul li:nth-child(even) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.breakdown_box ul li .photo {
  width: 640px;
  margin-left: 40px;
}

.breakdown_box ul li:nth-child(even) .photo {
  margin-right: 40px;
  margin-left: 0;
}

.breakdown_box ul li .text {
  width: 530px;
  text-align: center;
}

.breakdown_box ul li .text p {
  font-size: 16px;
  line-height: 1.5;
  margin: 0;
}

.breakdown_box ul li .text .title {
  position: relative;
  display: inline-table; /* Firefox */
  font-size: 26px;
  text-align: center;
  margin: 0 0 40px;
  line-height: 1.2;
}

.breakdown_box ul li .text .title:before,
.breakdown_box ul li .text .title:after {
  content: "";
  position: absolute;
  top: 0;
  height: 1.8rem;
  border-left: solid 2px #000;
}

.breakdown_box ul li .text .title:before {
  left: -1.2rem;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
}

.breakdown_box ul li .text .title:after {
  right: -1.2rem;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
}

.breakdown_box ul li .text .item {
  margin: 0 0 20px;
}

.breakdown_box ul li .text .subtitle {
  color: #ff4e4e;
  font-size: 20px;
  line-height: 20px;
  font-weight: bold;
  text-align: center;
  margin: 0;
}

.breakdown_box .caution {
  font-size: 12px;
  text-align: center;
  margin: 40px 0 0;
}

.breakdown_box ul li .vr {
  text-align: center;
  margin-top: 60px;
}

.breakdown_box ul li .vr .head {
  color: #ff4e4e;
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
}

.breakdown_box ul li .vr .img {
  position: relative;
  width: 40%;
  overflow: hidden;
  border-radius: 50%;
  margin: 0 auto;
  margin-top: 10px;
  z-index: 1; /* scaleIn fix for Safari */
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .breakdown_box {
    padding-top: 20px;
  }
  .breakdown_box ul li {
    display: block;
    padding: 20px 0;
  }
  .breakdown_box ul li .photo {
    width: 100%;
    margin-left: 0;
    margin-top: 20px;
  }
  .breakdown_box ul li:nth-child(even) .photo {
    margin-right: 0;
  }
  .breakdown_box ul li .text {
    width: 100%;
  }
  .breakdown_box ul li .text .title {
    font-size: 5vw;
    margin: 0 0 20px;
    line-height: 1.2;
  }
  .breakdown_box ul li .text .title:before,
  .breakdown_box ul li .text .title:after {
    height: 1.6rem;
  }
  .breakdown_box ul li .text .item {
    margin: 0 0 15px;
  }
  .breakdown_box ul li .text .subtitle {
    font-size: 4vw;
    line-height: 1.5;
  }
  .breakdown_box ul li .text p {
    font-size: 3.2vw;
  }
  .breakdown_box .caution {
    font-size: 2.6vw;
    margin: 20px 0 0;
  }
  .breakdown_box ul li .vr {
    margin-top: 20px;
  }
  .breakdown_box ul li .vr .head {
    font-size: 16px;
  }
  .breakdown_box ul li .vr .img {
    position: relative;
    width: 40%;
    overflow: hidden;
    border-radius: 50%;
    margin: 0 auto;
    margin-top: 10px;
    z-index: 1; /* scaleIn fix for Safari */
  }
} /* for SP max-width: $width_sp */
/* reason_box */
.reason_box {
  padding: 0 50px;
  margin-bottom: 50px;
}

.content .reason_box .title {
  position: relative;
  color: #fff;
  font-size: 2.4rem;
  line-height: 40px;
  font-weight: bold;
  text-align: center;
  background: #3f82b2;
  padding: 0;
  margin-bottom: 30px;
}

.content .reason_box .title:before,
.content .reason_box .title:after {
  content: "";
  position: absolute;
  top: 0;
  width: 0;
  height: 0;
  border-style: solid;
}

.content .reason_box .title:before {
  left: 0;
  border-width: 20px 0 20px 10px;
  border-color: transparent transparent transparent #fff;
}

.content .reason_box .title:after {
  right: 0;
  border-width: 20px 10px 20px 0;
  border-color: transparent #fff transparent transparent;
}

.reason_box ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.reason_box ul li {
  position: relative;
  width: 31%;
  text-align: center;
  border: 1px solid #ddd;
  padding: 15px 5px;
  margin-right: 3.5%;
}

.reason_box ul li:last-child {
  margin-right: 0;
}

.reason_box ul li p {
  font-weight: bold;
  margin: 0;
}

.reason_box ul li p.num {
  position: absolute;
  top: -10px;
  left: -10px;
  width: 30px;
  height: 30px;
  color: #fff;
  font-size: 2rem;
  line-height: 30px;
  font-weight: bold;
  text-align: center;
  background: #3f82b2;
  border-radius: 50%;
}

.reason_box ul li .point {
  color: #ff4e4e;
  font-size: 2rem;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .reason_box p {
    font-size: 4vw;
  }
  .content .reason_box .title {
    font-size: 1.8rem;
    line-height: 24px;
    margin-bottom: 20px;
    padding: 4px 0;
  }
  .content .reason_box .title:before {
    left: 0;
    border-width: 40px 0 40px 10px;
    border-color: transparent transparent transparent #fff;
  }
  .content .reason_box .title:after {
    right: 0;
    border-width: 40px 10px 40px 0;
    border-color: transparent #fff transparent transparent;
  }
  .reason_box {
    padding: 0;
    margin-bottom: 20px;
  }
  .reason_box ul {
    display: block;
  }
  .reason_box ul li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .reason_box ul li:last-child {
    margin-bottom: 0;
  }
  .reason_box ul li p {
    font-size: 4.5vw;
  }
  .reason_box ul li .point {
    font-size: 5.5vw;
  }
} /* for SP max-width: $width_sp */
/* project_box */
.project_box {
  padding: 0 50px;
  margin-bottom: 50px;
}

.project_box .company_project {
  background: #dbebf6;
  border-radius: 10px;
  padding: 20px 40px;
}

.project_box .company_project .under_dot {
  font-weight: bold;
  text-align: center;
  border-bottom: 2px dotted #c6d7e3;
  padding-bottom: 20px;
  margin-bottom: 20px;
}

.project_box .company_project ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.project_box .company_project ul li {
  width: 50%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding-right: 20px;
}

.project_box .company_project ul li:last-child {
  border-right: none;
  padding-right: 0;
  padding-left: 20px;
}

.project_box .company_project ul li .project_title {
  color: #3f82b2;
  line-height: 1.5;
  margin-bottom: 10px;
}

.project_box .company_project ul li .project_image {
  margin-bottom: 10px;
}

.project_box .company_project ul li .project_image .caption {
  font-size: 1.2rem;
  text-align: right;
  margin-top: 5px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .project_box {
    padding: 0;
    margin-bottom: 50px;
  }
  .project_box .company_project {
    padding: 15px;
  }
  .project_box .company_project .under_dot {
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
  .project_box .company_project ul {
    display: block;
  }
  .project_box .company_project ul li {
    width: 100%;
    border-bottom: 2px dotted #c6d7e3;
    padding-right: 0;
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
  .project_box .company_project ul li:last-child {
    border: none;
    padding: 0;
    margin: 0;
  }
  .project_box .company_project ul li .project_title {
    color: #3f82b2;
    margin-bottom: 10px;
  }
  .project_box .company_project ul li .project_image {
    margin-bottom: 10px;
  }
  .project_box .company_project ul li .project_image .caption {
    font-size: 1.2rem;
    text-align: right;
    margin-top: 5px;
  }
} /* for SP max-width: $width_sp */
/* special_box */
.special_box {
  padding: 0 50px;
  margin-top: 50px;
}

.special_box .inner {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 2px solid #e60012;
  padding: 18px;
}

.special_box .title {
  line-height: 1.3 !important;
  font-weight: bold;
  text-align: center;
  border-bottom: 2px solid #e94d42;
  padding-bottom: 18px;
  margin: 0;
}

.special_box .title .caption {
  display: block;
  color: #e60012;
  font-size: 20px;
  line-height: 1.5;
}

.special_box .teacher {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

.special_box .left {
  width: 390px;
  margin-right: 20px;
}

.special_box .right {
  width: 520px;
}

.special_box .right .info {
  margin-bottom: 20px;
}

.special_box .right .degree {
  color: #fff;
  font-size: 16px;
  line-height: 1.5;
  font-weight: bold;
  display: inline-block;
  background: #e94d42;
  padding: 2px 5px;
  margin: 0 0 10px;
}

.special_box .right .name {
  font-size: 30px;
  line-height: 1.3;
  font-weight: bold;
  margin: 0;
}

.special_box .right .career {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  margin: 20px 0 0;
}

.special_box .right .career dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: 15px;
  background: #000;
  padding: 0 5px;
}

.special_box .right .career dd {
  padding: 0 10px;
}

.special_box .right .career li {
  font-size: 12px;
  letter-spacing: 0.03em;
  line-height: 1.42857143;
}

.special_box p {
  text-align: justify;
  text-justify: inter-ideograph; /*IE */
  margin: 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .special_box {
    padding: 0;
    margin-top: 30px;
  }
  .special_box .inner {
    padding: 15px;
  }
  .special_box .title {
    font-size: 5vw;
    padding-bottom: 8px;
  }
  .special_box .title .caption {
    font-size: 4vw;
    line-height: 1.5;
    padding-bottom: 2vw;
  }
  .special_box .teacher {
    display: block;
  }
  .special_box .left {
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .special_box .right {
    width: 100%;
  }
  .special_box .right .info {
    margin-bottom: 10px;
  }
  .special_box .right .degree {
    font-size: 3.4vw;
  }
  .special_box .right .name {
    font-size: 8vw;
    line-height: 1.1;
  }
  .special_box .right .career {
    display: block;
    margin: 15px 0 0;
  }
  .special_box .right .career li {
    font-size: 3.4vw;
    line-height: 1.4;
  }
  .special_box .right .career dt {
    display: block;
    text-align: center;
    padding: 0 5px;
  }
  .special_box .right .career dd {
    padding: 10px 0 0;
  }
  .special_box p {
    font-size: 3.6vw;
  }
} /* for SP max-width: $width_sp */
/* free html experience_common */
.free_html .experience_common {
  position: relative;
  background: #fff;
  -webkit-box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
  padding: 40px;
  margin-top: 80px;
}

.free_html .experience_common h2 {
  position: absolute;
  top: -1em;
  left: 50%;
  display: inline-block;
  color: #fff;
  font-size: 18px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  word-break: keep-all;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.5rem 2rem;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.free_html .experience_common h2.line2 {
  top: -2em;
}

.free_html .experience_common h2:after {
  content: "";
  position: absolute;
  bottom: -14px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.free_html .experience_common .message p {
  font-size: 16px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .free_html {
    margin-top: -3vw;
  }
  .free_html .experience_common {
    -webkit-box-shadow: none;
            box-shadow: none;
    padding: 0;
    margin-top: 0;
  }
  .free_html .experience_common h2 {
    position: relative;
    top: auto;
    left: auto;
    display: block;
    font-size: 14px;
    line-height: 1.3;
    padding: 1rem;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transform: none;
    transform: none;
    margin-bottom: 20px;
  }
  .free_html .experience_common .message p {
    font-size: 14px;
  }
} /* for SP max-width: $width_sp */
/*------------------------------

ものづくり創造デザイナーコース

------------------------------*/
.section_industrial_design .headline {
  /*background: url("/open-campus/common/include/experience/images/headline_diagonal_bg.png") #e60012;
  background-size: 187px auto;*/
  background: url("/open-campus/common/include/experience/images/product_design_course/bg_texture_creater_world_kenokuyama.svg") repeat top left #e60012;
  background-size: 400px 530px;
}

.section_industrial_design .goal_box ul li {
  border: 2px solid #e60012;
}

.section_industrial_design .goal_box ul li .subtitle {
  color: #e60012;
  border-bottom: 2px solid #e60012;
}

.section_industrial_design .curriculum_box ul li.first {
  background: #ef98a0;
}

.section_industrial_design .curriculum_box ul li.second {
  background: #e5666f;
}

.section_industrial_design .curriculum_box ul li.second .arw svg .polygon {
  fill: #ef98a0;
}

.section_industrial_design .curriculum_box ul li.third {
  background: #df333f;
}

.section_industrial_design .curriculum_box ul li.third .arw svg .polygon {
  fill: #e5666f;
}

.section_industrial_design .curriculum_box ul li.fourth {
  background: #e60012;
}

.section_industrial_design .curriculum_box ul li.fourth .arw svg .polygon {
  fill: #df333f;
}

/* monodukuri_design */
.section_industrial_design .monodukuri_design {
  background: #d8e0f1;
  border: 2px solid #e94d42;
  padding: 30px;
}

.section_industrial_design .monodukuri_design .fig img {
  width: 100%;
  height: auto;
}

.section_industrial_design .monodukuri_design .net_img {
  text-align: center;
  width: 70%;
  margin: 0 auto;
  margin-top: -60px;
}

.section_industrial_design .monodukuri_design p {
  margin-top: 20px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_industrial_design .monodukuri_design {
    padding: 15px;
  }
  .section_industrial_design .monodukuri_design .net_img {
    width: 110%;
    margin-left: -5%;
    margin-top: -10px;
    z-index: 2;
    position: relative;
  }
  .section_industrial_design .monodukuri_design .net_img + .fig {
    margin-top: -10px;
    z-index: 1;
  }
} /* for SP max-width: $width_sp */
/*------------------------------

VFX・CG・映像マスターコース

------------------------------*/
.section_cg_images_vfx .headline {
  /*background: url("/open-campus/common/include/experience/images/headline_diagonal_bg.png") #1f77d9;
  background-size: 187px auto;*/
  background: url("/open-campus/common/include/experience/images/cg_images_vfx/bg_texture_creater_world_matt.svg") repeat top left #191d6a;
  background-size: 400px 530px;
}

.section_cg_images_vfx .goal_box ul li {
  border: 2px solid #1f77d9;
}

.section_cg_images_vfx .goal_box ul li .subtitle {
  color: #1f77d9;
  border-bottom: 2px solid #1f77d9;
}

.section_cg_images_vfx .curriculum_box ul li.first {
  background: #4a8cd9;
}

.section_cg_images_vfx .curriculum_box ul li.second,
.section_cg_images_vfx .curriculum_box ul li.first_second {
  background: #3481d9;
}

.section_cg_images_vfx .curriculum_box ul li.second .arw svg .polygon {
  fill: #4a8cd9;
}

.section_cg_images_vfx .curriculum_box ul li.third {
  background: #1f77d9;
}

.section_cg_images_vfx .curriculum_box ul li.third .arw svg .polygon {
  fill: #3481d9;
}

.section_cg_images_vfx .curriculum_box ul li.fourth {
  background: #175aa6;
}

.section_cg_images_vfx .curriculum_box ul li.fourth .arw svg .polygon {
  fill: #1f77d9;
}

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

eビジュアルデザイナーコース

------------------------------*/
.section_it_visual_design .headline {
  /*background: url("/open-campus/common/include/experience/images/headline_diagonal_bg.png") #878990;
  background-size: 187px auto;*/
  background: url("/open-campus/common/include/experience/images/e_visual_course/bg_texture_creater_world_shinozuka.svg") repeat top left #878990;
  background-size: 400px 530px;
}

.section_it_visual_design .goal_box ul li {
  border: 2px solid #878990;
}

.section_it_visual_design .goal_box ul li .subtitle {
  color: #878990;
  border-bottom: 2px solid #878990;
}

.section_it_visual_design .curriculum_box ul li.first {
  background: #9ea0a8;
}

.section_it_visual_design .curriculum_box ul li.second {
  background: #878990;
}

.section_it_visual_design .curriculum_box ul li.second .arw svg .polygon {
  fill: #9ea0a8;
}

.section_it_visual_design .curriculum_box ul li.third {
  background: #6e7075;
}

.section_it_visual_design .curriculum_box ul li.third .arw svg .polygon {
  fill: #878990;
}

.section_it_visual_design .curriculum_box ul li.fourth {
  background: #595758;
}

.section_it_visual_design .curriculum_box ul li.fourth .arw svg .polygon {
  fill: #6e7075;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_super_creater_world.section_it_visual_design .headline .title .course {
    font-size: 5vw;
  }
  .section_super_creater_world.section_it_visual_design .headline .title .course .en {
    font-size: 6vw;
  }
  .section_super_creater_world.section_it_visual_design .content .title {
    font-size: 4.8vw;
  }
}
/*------------------------------

カーデザイナー

------------------------------*/
.section_car_designer .headline {
  background: url("/open-campus/common/include/experience/images/headline_diagonal_bg.png") #3f82b2;
  background-size: 187px auto;
}

.section_car_designer .curriculum_box ul li.first {
  background: #4c9ed9;
}

.section_car_designer .curriculum_box ul li.second {
  background: #4795cc;
}

.section_car_designer .curriculum_box ul li.second .arw svg .polygon {
  fill: #4c9ed9;
}

.section_car_designer .curriculum_box ul li.second .transfer {
  text-align: center;
  background: #3f82b2;
  padding: 5px 10px;
  margin: 15px 0;
}

.section_car_designer .curriculum_box ul li.third {
  background: #3f82b2;
}

.section_car_designer .curriculum_box ul li.third .arw svg .polygon {
  fill: #4795cc;
}

.section_car_designer .curriculum_box ul li.third .company_project {
  text-align: center;
  background: #367099;
  padding: 5px 10px;
  margin: 15px 0;
}

.section_car_designer .curriculum_box ul li.fourth {
  background: #367099;
}

.section_car_designer .curriculum_box ul li.fourth .arw svg .polygon {
  fill: #3f82b2;
}

/*===============================================================

	ものづくりデザイン体験
	最終更新：2018/12/20
	/include/product_design/html/

===============================================================*/
.section_include1 .product_design .outline {
  margin-bottom: 30px;
}

.section_include1 .product_design .outline p {
  font-size: 16px;
  line-height: 1.7;
}

.section_include1 .product_design .baloon {
  position: relative;
  background: #ff4e4e;
  margin-bottom: 20px;
}

.section_include1 .product_design .baloon:after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 15px 0 15px;
  border-color: #ff4e4e transparent transparent transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.section_include1 .product_design .baloon p {
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  padding: 1rem 0;
  margin: 0;
}

.section_include1 .product_design .flex_container .item .no {
  position: absolute;
  top: -10px;
  left: 50%;
  width: 40px;
  height: 40px;
  color: #fff;
  font-size: 20px;
  line-height: 40px;
  font-weight: bold;
  text-align: center;
  border-radius: 50%;
  background: #ff4e4e;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_include1 .product_design .outline p {
    font-size: 14px;
  }
  .section_include1 .product_design .baloon p {
    font-size: 15px;
    line-height: 1.4;
    letter-spacing: 0;
  }
  .section_include1 .product_design .flex_container .item:not(:first-child) {
    margin-top: 30px;
  }
  .section_include1 .product_design .flex_container .item .no {
    top: -5px;
    width: 30px;
    height: 30px;
    font-size: 16px;
    line-height: 30px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	インテリアデザイナー＆コーディネーター体験
	最終更新：2018/10/18
	/include/interior_designer_coordinator/html/

===============================================================*/
.interior_designer_coordinator {
  margin-top: -30px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .interior_designer_coordinator {
    margin-top: -20px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	クリエーティブ体験
	/include/cre_exp/html/

===============================================================*/
.creative_experience p {
  font-size: 16px;
}

/* フリーhtmlエリア */
.creative_experience {
  padding: 40px;
  background: #fff;
  -webkit-box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
}

.creative_experience .inner {
  position: relative;
}

.creative_experience h2 {
  position: absolute;
  top: -82px;
  left: 50%;
  display: inline-block;
  color: #fff;
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
  word-break: keep-all;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.5rem 2rem;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.creative_experience h2:after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.creative_experience .inner .message p {
  font-size: 18px;
  line-height: 2;
  text-align: center;
}

.creative_experience .inner .message p .red {
  color: #de1616;
  font-weight: bold;
}

.creative_experience .inner .list h3 {
  text-align: center;
  margin: 20px 0;
}

.creative_experience .inner .list h3 span {
  position: relative;
  display: inline-table; /* Firefox */
  color: #ff4e4e;
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}

.creative_experience .inner .list h3 span:before,
.creative_experience .inner .list h3 span:after {
  content: "";
  position: absolute;
  top: 0;
  height: 1.7em;
  border-left: solid 2px #ff4e4e;
}

.creative_experience .inner .list h3 span:before {
  left: -2rem;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
}

.creative_experience .inner .list h3 span:after {
  right: -2rem;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
}

.creative_experience .inner .list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.creative_experience .inner .list ul li {
  width: 31%;
  margin-right: 3.5%;
  margin-bottom: 3rem;
}

.creative_experience .inner .list ul li:nth-child(3n) {
  margin-right: 0;
}

.creative_experience .inner .list ul li:nth-last-child(-n+3) {
  margin-bottom: 0;
}

.creative_experience .inner .list ul li h4 {
  color: #fff;
  font-size: 16px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  padding: 0.5rem 0;
  margin: 0;
}

.creative_experience .inner .list ul li h4 .small {
  color: #fff;
  font-weight: bold;
}

.creative_experience .inner .list ul li h4 .small {
  font-size: 0.75em;
}

.creative_experience .inner .list ul li.manga_world h4 {
  background: #eb6ea0;
}

.creative_experience .inner .list ul li.game_world h4 {
  background: #c3d94e;
}

.creative_experience .inner .list ul li.digital_media_world h4 {
  background: #33aeaa;
}

.creative_experience .inner .list ul li.visual_design_world h4 {
  background: #efb81a;
}

.creative_experience .inner .list ul li.car_world h4 {
  background: #4b86be;
}

.creative_experience .inner .list ul li.super_creater_world h4 {
  background: #000;
}

.creative_experience .inner .list ul li.game_w_taiken h4 {
  background: #eb6ea0;
}

.creative_experience .inner .list ul li p {
  font-size: 16px;
  margin: 0.7rem 0 0;
}

.creative_experience .inner .notes {
  padding: 1rem 1rem 0;
  margin: 0;
  background: #fff;
  letter-spacing: 0.03em;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .creative_experience h2 {
    font-size: 3vw;
  }
  .creative_experience .inner .list ul li h4 {
    font-size: 1.4vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .creative_experience {
    padding: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
    margin-top: 0;
  }
  .creative_experience h2 {
    position: relative;
    top: 0;
    font-size: 5vw;
    padding: 0.5rem 1rem;
    margin: 0 0 20px;
  }
  .creative_experience .inner .message p {
    font-size: 3.8vw;
    line-height: 1.7;
  }
  .creative_experience .inner .list {
    padding-bottom: 0;
  }
  .creative_experience .inner .list h3 span {
    font-size: 6vw;
    line-height: 1.1;
  }
  .creative_experience .inner .list h3 span:before,
  .creative_experience .inner .list h3 span:after {
    content: "";
    position: absolute;
    top: 0.3rem;
    height: 12vw;
    border-left: solid 2px #ff4e4e;
  }
  .creative_experience .inner .list h3 span:before {
    left: -1rem;
  }
  .creative_experience .inner .list h3 span:after {
    right: -1rem;
  }
  .creative_experience .inner .list ul {
    display: block;
  }
  .creative_experience .inner .list ul li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
  .creative_experience .inner .list ul li:nth-last-child(-n+3) {
    margin-bottom: 1.5rem;
  }
  .creative_experience .inner .list ul li h4 {
    font-size: 4vw;
  }
  .creative_experience .inner .list ul li p {
    font-size: 3.5vw;
    margin: 0.7rem 0 0;
  }
  .creative_experience .inner .notes {
    font-size: 4vw;
    padding: 1.5rem 0 0;
    margin: 0;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	イラストダブル体験
	最終更新：2109/10/18
	/include/illust_double/html/

===============================================================*/
.illust_double .headline .read {
  margin-top: 0;
  font-size: 150%;
  line-height: 1.6;
}

.illust_double .headline + .content {
  margin-top: 20px;
}

.illust_double .genre {
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  background: #fc0;
  padding: 0.2em 0;
  margin-top: -20px;
}

.illust_double .genre + p {
  margin-top: 15px;
}

.illust_double .genre + .title {
  margin-top: 10px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .illust_double .genre {
    font-size: 4.5vw;
    margin-top: -15px;
  }
  .illust_double .genre + p {
    margin-top: 10px;
  }
  .illust_double .genre + .title {
    margin-top: 5px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	TCAイラストスタジオ体験
	最終更新：2021/3/15
	/include/illust_studio/html/

===============================================================*/
.illust_studio .headline + .content {
  margin-top: 30px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .illust_studio .headline_pop {
    margin-bottom: 0;
  }
  .illust_studio .headline + .content {
    margin-top: 0;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	アニメ&CGスぺシャル体験
	anime_and_cg_special

===============================================================*/
.anime_and_cg_special .datalist_table dt {
  width: 5em;
}

.anime_and_cg_special .datalist_table dd {
  padding-left: 5em;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .anime_and_cg_special .datalist_table dt {
    width: 100%;
  }
  .anime_and_cg_special .datalist_table dd {
    padding-left: 0;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	絵本作家スペシャル体験
	最終更新：2018/10/18
	/include/picture_book_special/html/

===============================================================*/
.picture_book_special .read {
  font-size: 18px;
}

.picture_book_special .read + .headline {
  margin-top: 20px;
}

.picture_book_special .flex_container .item_2_1:last-child {
  margin-bottom: -50px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .picture_book_special .read {
    font-size: 3.8vw;
  }
  .picture_book_special .flex_container .item_2_1:last-child {
    margin-bottom: -15px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	オンライン イラスト添削
	最終更新：2020/7/29
	/include/online_illust_correction/

===============================================================*/
.section_online_illust_correction {
  text-align: center;
}

.section_online_illust_correction .read {
  font-size: 20px;
  line-height: 1.6;
}

.online_illust_correction_detailpage .section_detail_main .section_inner {
  padding-bottom: 0;
}

.online_illust_correction_detailpage .detail_header + .content {
  display: none;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_online_illust_correction {
    text-align: left;
  }
  .section_online_illust_correction .read {
    font-size: 4vw;
  }
  .online_illust_correction_detailpage .section_detail_main .detail_header .txt {
    padding: 15px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	ゲームデータサイエンティストSPECIAL！
	最終更新：2021/12/21
	/include/game_data_scientist_special/html/

===============================================================*/
.section_include1 .game_data_scientist_special .solution_box {
  margin-bottom: 40px;
}

.section_include1 .game_data_scientist_special .txt_img_box.mt {
  margin-top: 40px;
}

.section_include1 .game_data_scientist_special .txt_img_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.section_include1 .game_data_scientist_special .txt_img_box .image {
  width: 26%;
  margin-left: 4%;
}

.section_include1 .game_data_scientist_special .txt_img_box .text {
  -webkit-box-flex: 1;
      -ms-flex: 1 0;
          flex: 1 0;
}

.section_include1 .game_data_scientist_special .txt_img_box .text p {
  margin-top: 30px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_include1 .game_data_scientist_special .solution_box {
    margin-bottom: 30px;
  }
  .section_include1 .game_data_scientist_special .solution_box .title {
    font-size: 4vw;
  }
  .section_include1 .game_data_scientist_special .item_2_1 + .item_2_1 {
    margin-top: 5vw;
  }
  .section_include1 .game_data_scientist_special .txt_img_box {
    display: block;
  }
  .section_include1 .game_data_scientist_special .txt_img_box.mt {
    margin-top: 8vw;
  }
  .section_include1 .game_data_scientist_special .txt_img_box .text p {
    margin-top: -5vw;
  }
  .section_include1 .game_data_scientist_special .txt_img_box .text p.mt {
    margin-top: 5vw;
  }
  .section_include1 .game_data_scientist_special .txt_img_box .image {
    width: auto;
    margin-left: 0;
    margin-top: 5vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	イラスト・アニメ・マンガ・ゲーム描き放題スペシャル
	最終更新：2021/11/08
	/include/kakiho_special/html/

===============================================================*/
.kakiho_special .flex_container .item {
  margin-top: 0;
}

.kakiho_special .flex_container .item .goods {
  margin-bottom: 10px;
}

.kakiho_special .flex_container .item p {
  color: #ff4e4e;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}

.kakiho_special .message {
  margin-top: 60px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .kakiho_special .flex_container .item {
    margin-top: 15px;
  }
  .kakiho_special .flex_container .item:first-child {
    margin-top: 0;
  }
  .kakiho_special .flex_container .item .goods {
    width: 60%;
    margin: 0 auto 10px;
  }
  .kakiho_special .flex_container .item p {
    font-size: 4vw;
  }
  .kakiho_special .message {
    margin-top: 30px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	ゲームクリエーター祭り
	最終更新：2020/10/21
	/include/game_creator_festival/html/

===============================================================*/
.game_creator_festival .headline_pop {
  margin-bottom: 30px;
}

.game_creator_festival .lead {
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .game_creator_festival .headline_pop {
    margin-bottom: 0;
  }
  .game_creator_festival .lead {
    font-size: 14px;
    text-align: left;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	JIKEI COM Game & e-Sports SHOW
	最終更新：2021/10/21
	/include/jikei_com_game_show/html/

===============================================================*/
.section_include1 .jikei_com_game_show .outline .title {
  color: #ff4e4e;
  font-size: 30px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 0.5em;
}

.section_include1 .jikei_com_game_show .outline .subtitle {
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 1em;
}

.section_include1 .jikei_com_game_show .outline .title span,
.section_include1 .jikei_com_game_show .outline .subtitle span {
  display: inline-block;
}

.section_include1 .jikei_com_game_show .outline p {
  font-size: 16px;
  line-height: 1.7;
}

.section_include1 .jikei_com_game_show .flex_container {
  margin-top: 40px;
}

/* 基本的にwe areと同じ */
.section_include1 .jikei_com_game_show .item {
  color: #000;
  border: double 8px #fff;
  border-radius: 10px;
  padding: 20px;
  -webkit-box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0);
          box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0);
  border-radius: 0px;
  border: solid 1px #ddd;
  background: rgba(255, 255, 255, 0.9);
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 0;
}

.section_include1 .jikei_com_game_show .item:before,
.section_include1 .jikei_com_game_show .item:after {
  content: "";
  position: absolute;
  margin: auto;
  width: 10px;
  height: 10px;
}

.section_include1 .jikei_com_game_show .item:before {
  bottom: -1px;
  right: -1px;
  border-top: 10px solid transparent;
  border-bottom: 10px solid #000;
  border-left: 10px solid transparent;
  border-right: 10px solid #000;
  border-width: 1px;
}

.section_include1 .jikei_com_game_show .item:after {
  top: -1px;
  left: -1px;
  border-top: 10px solid #000;
  border-bottom: 10px solid transparent;
  border-left: 10px solid #000;
  border-right: 10px solid transparent;
  border-width: 1px;
}

.section_include1 .jikei_com_game_show .item p {
  font-size: 18px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
}

.section_include1 .jikei_com_game_show .appearance {
  margin-top: 20px;
}

.btn_streaming a {
  position: relative;
  display: block;
  width: 100%;
  color: #fff;
  font-size: 20px;
  line-height: 70px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  background: #ff4e4e;
  padding: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.btn_streaming a:hover {
  color: #fff;
  opacity: 0.7;
}

.btn_streaming a:after {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  top: 0;
  left: auto;
  bottom: 0;
  right: 20px;
  margin: auto;
  border-top: solid 1px #fff;
  border-left: solid 1px #fff;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_include1 .jikei_com_game_show .outline {
    margin-top: 30px;
  }
  .section_include1 .jikei_com_game_show .outline p {
    font-size: 14px;
  }
  .section_include1 .jikei_com_game_show .item:not(:first-child) {
    margin-top: 20px;
  }
  .btn_streaming a {
    font-size: 16px;
    line-height: 22px;
    padding: 10px 0;
  }
  .btn_streaming a:after {
    width: 7px;
    height: 7px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	東京ゲームショウ見学ツアー
	最終更新：2019/7/31
	/include/tokyo_game_show/html/

===============================================================*/
/*-------------------------------------------------------------
	.time_wrp
-------------------------------------------------------------*/
.time_wrp .items {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.time_wrp .item {
  width: 48%;
  margin-right: 4%;
  text-align: center;
}

.time_wrp .item:nth-of-type(2) {
  margin-right: 0;
}

.time_wrp .item .subtitle {
  display: inline-block;
  font-size: 30px;
  line-height: 1.6;
  font-weight: bold;
  text-align: center;
  margin-top: 30px;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #ff4e4e));
  background: linear-gradient(transparent 70%, #ff4e4e 70%);
}

.time_wrp .caution {
  text-align: center;
  margin-top: 30px;
}

.time_wrp .item .photo {
  margin-top: 15px;
}

.time_wrp .item .map iframe {
  width: 100%;
  height: 400px;
}

.time_wrp .item .caption {
  text-align: center;
  color: #ff4e4e;
  font-weight: bold;
  font-size: 18px;
  margin-top: 5px;
}

.time_wrp .item .photo img {
  width: 100%;
  height: auto;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .time_wrp .item p {
    font-size: 3vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .time_wrp .items {
    display: block;
  }
  .time_wrp .item {
    width: 100%;
    margin-right: 0;
    margin-top: 0;
  }
  .time_wrp .item:nth-of-type(2) {
    margin-top: 20px;
  }
  .time_wrp .item .headline_pop {
    margin-bottom: 0;
  }
  .time_wrp .item .subtitle {
    font-size: 4.5vw;
    margin-top: 0;
  }
  .time_wrp .caution {
    margin-top: 20px;
  }
  .time_wrp .item .map iframe {
    width: 100%;
    height: 200px;
  }
  .time_wrp .item .caption {
    font-size: 4vw;
    margin-top: 1.5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	.include_title_photo_wrp
-------------------------------------------------------------*/
.include_title_photo_wrp .items {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.include_title_photo_wrp .title {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 160px;
  height: 160px;
  background: #ffff00;
  -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  font-size: 20px;
  line-height: 1.2;
  font-weight: bold;
  text-align: center;
  padding-top: 32px;
}

.include_title_photo_wrp .item {
  width: 48%;
  margin-right: 4%;
}

.include_title_photo_wrp .item:nth-of-type(2) {
  margin-right: 0;
}

.include_title_photo_wrp .caution {
  font-size: 20px;
  line-height: 1.6;
  font-weight: bold;
  text-align: center;
  margin-top: 30px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .include_title_photo_wrp .items {
    display: block;
  }
  .include_title_photo_wrp .title {
    position: static;
    width: 100%;
    height: auto;
    background: #ffff00;
    -webkit-box-shadow: none;
            box-shadow: none;
    border-radius: 0%;
    font-size: 15px;
    padding: 2vw 0;
  }
  .include_title_photo_wrp .item {
    width: 100%;
    margin-right: 0;
    margin-top: 10px;
  }
  .include_title_photo_wrp .caution {
    font-size: 14px;
    line-height: 1.4;
    margin-top: 10px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	TCA GAMEクエスト
	最終更新：2020/02/06
	/include/game_quest/html/

===============================================================*/
.game_quest .label_square {
  background: #000;
}

.game_quest .label_square {
  background: #000;
}

.game_quest .item_box .item .title {
  color: #9fc238;
}

.game_quest .notice {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #ff0;
  padding: 2.8037383178%;
  margin-top: 50px;
}

.game_quest p {
  font-weight: bold;
}

.game_quest .left {
  width: 37.6237623762%;
  margin-right: 2.9702970297%;
}

.game_quest .left .headline {
  font-size: 30px;
  font-weight: bold;
  text-align: left;
}

.game_quest .left .headline + p {
  font-size: 22px;
  margin-top: 15px;
}

.game_quest .notice_photo {
  width: 28.2178217822%;
  margin-right: 2.9702970297%;
}

.game_quest .right {
  width: 28.2178217822%;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .game_quest .notice {
    display: block;
    padding: 15px;
    margin-top: 30px;
  }
  .game_quest .left {
    width: 100%;
    margin-right: 0;
  }
  .game_quest .left .headline {
    font-size: 4.8vw;
  }
  .game_quest .left .headline + p {
    font-size: 4vw;
    margin-top: 5px;
  }
  .game_quest .notice_photo {
    width: 100%;
    margin-right: 0;
    margin-top: 15px;
  }
  .game_quest .right {
    width: 100%;
    margin-top: 15px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	サイバーコネクトツー
	最終更新：2019/8/23
	/include/cyberconnect2/html/

===============================================================*/
.cyberconnect2 .headline_pop {
  margin-bottom: 30px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .cyberconnect2 .headline_pop {
    margin-bottom: 5vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	anime_festival2

===============================================================*/
.anime_festival2 .headline_pop.headline_pop_black .title {
  font-size: 18px;
}

.anime_festival2 .headline + .solution_box {
  margin-top: 20px;
}

.section_profile .profile .works .horizontal_img li {
  width: 230px;
}

.section_profile .profile .works .horizontal_img li:last-child {
  margin-left: 15px;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .section_profile .profile .works .horizontal_img {
    margin-top: 20px;
  }
  .section_profile .profile .works .horizontal_img li {
    width: 50%;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .anime_festival2 .headline_pop {
    margin-bottom: 1vw;
  }
  .anime_festival2 .headline + .solution_box {
    margin-top: 0;
  }
  .section_profile .profile .works .horizontal_img {
    display: block;
  }
  .section_profile .profile .works .horizontal_img li {
    width: 100%;
    margin-top: 15px;
  }
  .section_profile .profile .works .horizontal_img li:last-child {
    margin-left: 0;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
cell_box
-------------------------------------------------------------*/
.cell_box {
  text-align: center;
  /*	padding: 0 0 50px 0;*/
}

.cell_box .cell_title {
  font-size: 25px;
  color: #fff;
  background: #ff4e4e;
  /*
  	color: #000;
  	background:#ff0;
  */
  padding: 15px;
  text-align: center;
  margin: 25px 0 0;
  border-radius: 5px;
}

.cell_box .cell_wrp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 10px;
}

.cell_box .cell {
  width: calc((100% - 15px) / 2);
}

.cell_box .cell .item {
  font-size: 18px;
  font-weight: bold;
  color: #000;
  background: #fff;
  padding: 10px 0;
  margin-top: 15px;
  /*	border: solid 1px #ff4e4e;*/
  border: solid 1px #ddd;
  position: relative;
}

.cell_box .cell .item:before,
.cell_box .cell .item:after {
  content: "";
  position: absolute;
  margin: auto;
  width: 10px;
  height: 10px;
  border-width: 1px;
}

.cell_box .cell .item:before {
  bottom: -1px;
  right: -1px;
  border-top: 10px solid transparent;
  border-bottom: 10px solid #000;
  border-left: 10px solid transparent;
  border-right: 10px solid #000;
  border-width: 12px;
  border-width: 1px;
}

.cell_box .cell .item:after {
  top: -1px;
  left: -1px;
  border-top: 10px solid #000;
  border-bottom: 10px solid transparent;
  border-left: 10px solid #000;
  border-right: 10px solid transparent;
  border-width: 12px;
  border-width: 1px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .cell_box .cell_wrp {
    display: block;
  }
  .cell_box .cell {
    width: 100%;
  }
  .cell_box .cell .item {
    font-size: 4vw;
    padding: 10px 0;
    margin-top: 10px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
timetable_box single
-------------------------------------------------------------*/
.section_timetable .content.timetable_box:after {
  -webkit-transform: rotate(0deg) scale(0.7, 0.7);
          transform: rotate(0deg) scale(0.7, 0.7);
  bottom: -27%;
  right: 2%;
}

.timetable_box.single .am,
.timetable_box.single .pm {
  width: 70%;
  margin: 0 auto;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .section_timetable .content.timetable_box .icon {
    margin-top: 0;
  }
  .section_timetable .content.timetable_box:after {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    top: 0;
    bottom: auto;
    right: -5%;
  }
  .timetable_box.single .am,
  .timetable_box.single .pm {
    width: 90%;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_timetable .content.timetable_box .icon {
    margin-top: -10px;
    width: 30px;
    height: 30px;
  }
  .section_timetable .content.timetable_box .icon img {
    width: 100%;
    height: auto;
  }
  .section_timetable .content.timetable_box:after {
    content: url(../images/timetable/img_girl_sp.png);
    top: -1%;
    bottom: auto;
    right: -12%;
  }
  .timetable_box.single .am,
  .timetable_box.single .pm {
    width: 100%;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	デザインフェスタ
	最終更新：2020/02/06
	/include/design_festa/html/

===============================================================*/
.design_festa .headline + .content {
  margin-top: 30px;
}

.design_festa + .cell_box {
  margin-top: 30px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .design_festa .headline_pop {
    margin-bottom: 0;
  }
  .design_festa .headline + .content {
    margin-top: 0;
  }
  .design_festa + .cell_box {
    margin-top: 15px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	クリエーティブの業界では欠かせないテクノロジーの技術
	最終更新：2021/3/15
	/include/technology_creative/html/

===============================================================*/
.technology_creative .item .lead {
  font-weight: bold;
  margin-top: 10px;
}

.technology_creative .item .offer {
  margin-top: 10px;
}

.technology_creative .item .offer .headline_pop {
  margin-bottom: 20px;
}

.technology_creative .item .offer .headline_pop .title {
  font-size: 16px;
}

.technology_creative .item .offer .challenge {
  color: #ff4e4e;
  font-weight: bold;
  text-align: center;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .technology_creative .item .lead {
    font-size: 3.5vw;
    margin-top: 5px;
  }
  .technology_creative .item .offer .headline_pop .title {
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	offer_message
===============================================================*/
.offer_message {
  text-align: center;
}

.offer_message .title {
  font-size: 30px;
  display: inline-block;
  position: relative;
  padding-bottom: 5px;
}

.offer_message .title::after {
  content: "";
  position: absolute;
  bottom: 0px;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 5px;
  background: #ff0;
}

.offer_message p {
  font-size: 18px;
  line-height: 1.7;
  margin-top: 20px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .offer_message {
    text-align: left;
  }
  .offer_message .title {
    font-size: 5.5vw;
    padding-bottom: 5px;
    display: block;
  }
  .offer_message .title::after {
    display: none;
  }
  .offer_message p {
    font-size: 4vw;
    line-height: 1.7;
    margin-top: 3vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	ライブ２Dを体験しよう！
	最終更新：2020/12/20

===============================================================*/
.live2d .message {
  text-align: center;
  margin-top: 20px;
}

.live2d .breakdown_box ul li .text .subtitle {
  margin-bottom: 15px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .live2d .headline_pop {
    margin-bottom: 0;
  }
  .live2d .message {
    text-align: left;
    margin-top: 0;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	myschool_camp

===============================================================*/
/*
.myschool_camp_detailpage .info_list.hasbus .list_date {
	background-image: none;
}
.myschool_camp_detailpage .info_list_wrp .list_nav li.bus.hasbus {
	display: none;
}
*/
.myschool_camp .none {
  display: none;
}

.myschool_camp .outline {
  border: solid 5px #ddd;
  padding: 30px;
  background: url("/open-campus/common/include/myschool_camp/images/mountain.svg") no-repeat;
  background-position: right 20px top 20px;
  background-size: 150px auto;
}

.myschool_camp .date_wrp .date {
  position: relative;
  float: left;
  padding: 5px 10px;
  margin-bottom: 0 !important;
  margin-right: 20px;
  background: #ff4e4e;
  border-radius: 5px;
  color: #fff;
  font-size: 25px;
  line-height: 1;
  font-weight: bold;
}

.myschool_camp .date_wrp .date + .date:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -14px;
  margin: auto;
  width: 8px;
  height: 8px;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 8px solid #ff4e4e;
  border-right: 8px solid transparent;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.myschool_camp .date_wrp .date .day {
  display: inline-block;
  vertical-align: text-bottom;
  width: 25px;
  height: 25px;
  padding: 5px;
  margin-left: 5px;
  margin-right: 0;
  border-radius: 50%;
  background: #fff;
  color: #ff4e4e;
  font-size: 15px;
  line-height: 1;
  text-align: center;
}

.myschool_camp .date_wrp .txt {
  float: left;
  font-size: 24px;
  line-height: 1;
  margin-top: 5px;
  margin-bottom: 0 !important;
  height: auto;
}

.myschool_camp .date_wrp .txt .caution {
  font-size: 0.6em;
}

.myschool_camp .read {
  font-size: 18px;
  line-height: 1.6;
  margin-top: 20px;
}

.myschool_camp .schedule {
  margin-top: 30px;
  border-top: dotted 1px #ddd;
  padding-top: 30px;
}

.myschool_camp .schedule .item {
  margin-top: 0;
}

.myschool_camp .schedule .item ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
}

.myschool_camp .schedule .item .label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 20%;
  color: #fff;
  font-size: 18px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  padding: 0px 10px;
  background: #ff4e4e;
}

.myschool_camp .schedule .item .txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 16px;
  line-height: 1.4;
  margin: 0;
  padding-left: 15px;
  width: 80%;
}

.myschool_camp .schedule + .fig {
  margin-top: 30px;
}

.myschool_camp .pickup {
  text-align: center;
  margin-top: 30px;
  border-top: dotted 1px #ddd;
}

.myschool_camp .pickup .head {
  font-size: 36px;
  line-height: 1;
  font-weight: bold;
  margin: 0;
  /*text-shadow: 3px 3px 0px #ff4e4e;*/
  padding: 60px 0 30px 0;
  color: #ff4e4e;
}

.myschool_camp .pickup .flex_container {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.myschool_camp .pickup .item {
  position: relative;
  padding: 20px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff000;
  margin-top: 30px;
  min-height: 150px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}

.myschool_camp .pickup .num {
  position: absolute;
  top: -15px;
  left: 0;
  right: 0;
  margin: auto;
  width: 30px;
  font-size: 30px;
  line-height: 1;
}

.myschool_camp .pickup .txt {
  font-size: 20px;
  line-height: 1.4;
  font-weight: bold;
  margin-top: 10px;
}

.myschool_camp .pickup .txt .small {
  display: block;
  font-size: 13px;
  line-height: 1.4;
  font-weight: normal;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .myschool_camp .pickup .item {
    width: 48%;
    margin-right: 4%;
  }
  .myschool_camp .pickup .item:nth-child(2n) {
    margin-right: 0;
  }
  .myschool_camp .pickup .txt .small {
    height: auto;
  }
} /* for tablet max-width: $width_content */
/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .myschool_camp .schedule .item .label {
    font-size: 18px;
  }
  .myschool_camp .schedule .item .txt {
    font-size: 14px;
  }
  .myschool_camp .pickup .item {
    width: 48%;
    margin-right: 4%;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .myschool_camp .outline {
    padding: 20px;
    background: none;
  }
  .myschool_camp .date_wrp .date {
    float: none;
    padding: 5px 10px;
    margin-right: 0;
    font-size: 6vw;
    line-height: 1;
    text-align: center;
    width: 100%;
  }
  .myschool_camp .date_wrp .date + .date {
    margin-top: 6vw;
  }
  .myschool_camp .date_wrp .date + .date:after {
    left: 0;
    right: 0;
    top: -11vw;
    width: 3vw;
    height: 3vw;
    border-top: 3vw solid #ff4e4e;
    border-bottom: 3vw solid transparent;
    border-left: 3vw solid transparent;
    border-right: 3vw solid transparent;
  }
  .myschool_camp .date_wrp .date .day {
    width: 6vw;
    height: 6vw;
    padding: 1vw;
    margin-left: 1vw;
    font-size: 4vw;
  }
  .myschool_camp .date_wrp .txt {
    float: none;
    font-size: 4vw;
    line-height: 1.4;
    margin-top: 4vw;
  }
  .myschool_camp .read {
    font-size: 4vw;
    margin-top: 4vw !important;
  }
  .myschool_camp .schedule {
    margin-top: 20px;
    padding-top: 20px;
  }
  .myschool_camp .schedule .item + .item {
    margin-top: 20px;
  }
  .myschool_camp .schedule .item .label {
    width: 30%;
    font-size: 5vw;
  }
  .myschool_camp .schedule .item .txt {
    width: 70%;
    font-size: 3.5vw;
  }
  .myschool_camp .pickup {
    margin-top: 20px;
    padding-top: 20px;
  }
  .myschool_camp .pickup .head {
    font-size: 6vw;
    line-height: 1.3;
    margin: 0;
    padding: 3vw 0;
  }
  .myschool_camp .pickup .item {
    width: 100%;
    margin-right: 0;
    padding: 5vw 2vw;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin-top: 4vw;
    min-height: inherit;
  }
  .myschool_camp .pickup .num {
    width: 100%;
    height: auto;
    font-size: 6vw;
    line-height: 1;
    top: -3vw;
  }
  .myschool_camp .pickup .txt {
    font-size: 5vw;
    margin-top: 0vw;
  }
  .myschool_camp .pickup .txt .small {
    font-size: 3vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	myschool_echakai

===============================================================*/
.myschool_echakai .item .lead {
  font-weight: bold;
  margin-top: 10px;
}

/*
.myschool_echakai .flex_container {
	margin-top: -30px;
}
.myschool_echakai .item {
  background: #ffec00 url("../include/myschool_echakai/images/item_bg_pattern.png") no-repeat top right;
  background-size: 300px 300px;
  border: 5px solid #000;
  box-sizing: border-box;
  box-shadow: 8px 8px 0 rgba(0,0,0,0.08);
}
.myschool_echakai .item:nth-child(1) {
	background-color: #ffec00;
}
.myschool_echakai .item:nth-child(2) {
	background-color: #ff89bf;
}
.myschool_echakai .item:nth-child(3) {
	background-color: #77ccff;
}
.myschool_echakai .item:nth-child(4) {
	background-color: #ffbb48;
}
.myschool_echakai .item .head {
  background: rgba(255,255,255,0.5);
}
.myschool_echakai .item .tag {
  float: left;
  width: 80px;
  height: 80px;
  color: #fff;
  font-size: 50px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  background: #000;
  padding: 5px;
  margin: -15px 0 0 -15px;
}
.myschool_echakai .item .tag .small {
	display: block;
  color: #fff;
  font-size: 20px;
}
.myschool_echakai .item .title {
  display: block;
  color: #000;
  font-size: 26px;
  line-height: 1.4;
  padding-left: 90px;
  margin-top:10px;
}
.myschool_echakai .item .detail {
  padding: 20px;
}
.myschool_echakai .item .detail .img {
  float: left;
  width: 46%;
  margin-right: 20px;
  margin-bottom: 10px;
}
.myschool_echakai .item .detail p {
  font-size: 16px;
  line-height: 1.8;
  margin-top: 0;
}
*/
/* タブレット以下 */
@media screen and (max-width: 1000px) {
  /*
  .myschool_echakai .item .title {
    font-size: 2.4vw;
    padding-left: 80px;
  }  
  */
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .myschool_echakai .item .lead {
    margin-top: 5px;
  }
  /*
  .myschool_echakai .flex_container {
  	margin-top: -20px;
  }  
  .myschool_echakai .item {
    background-size: 200px 200px;
    box-shadow: 0 8px 0 rgba(0,0,0,0.08);
  }
  .myschool_echakai .item .tag {
    float: left;
    width: 50px;
    height: 50px;
    font-size: 26px;
    padding: 5px;
    margin: -10px 0 0 -10px;
  }
  .myschool_echakai .item .tag .small {
    font-size: 12px;
    margin-bottom: 2px;
  }
  .myschool_echakai .item .title {
    font-size: 18px;
    padding-left: 50px;
  }
  .myschool_echakai .item .detail .img {
    float: none;
    width: 100%;
    margin-right: 0;
    margin-bottom: 0;
  }
  .myschool_echakai .item .detail p {
    font-size: 14px;
    line-height: 1.6;
    margin-top: 10px;
  }
  */
} /* for SP max-width: $width_sp */
/*===============================================================

	TCA カフェ
	最終更新：2020/07/10
	/include/hoge/html/

===============================================================*/
.riboon_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 30px;
}

.riboon_box .item {
  position: relative;
  width: 28%;
  background: #fffdf2;
  -webkit-box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.05);
          box-shadow: 5px 5px 0 rgba(0, 0, 0, 0.05);
  padding: 15px 0;
  margin-right: 8%;
  z-index: 1;
}

.riboon_box.col3 .item:nth-child(3n) {
  margin-right: 0;
}

.riboon_box .item .title_ribbon {
  position: relative;
  top: 0;
  left: -6%;
  width: 112%;
  color: #fff;
  font-size: 20px;
  line-height: 28px;
  font-weight: bold;
  outline: none;
  text-transform: uppercase;
  -webkit-box-shadow: 0 36px 0 -18px #fffdf2;
          box-shadow: 0 36px 0 -18px #fffdf2;
  padding: 14px 30px;
  margin: 0 0 18px;
}

.riboon_box .item .title_ribbon:before {
  content: "";
  position: absolute;
  top: 18px;
  left: -5%;
  z-index: -1;
  width: 110%;
  height: 0;
  border: 28px solid rgba(0, 0, 0, 0);
  border-left: 14px solid #fff;
  border-right: 14px solid #fff;
}

.riboon_box .item .title_ribbon:after {
  content: "";
  width: 100%;
  height: 0;
  position: absolute;
  top: 100%;
  left: 0;
  border-top: 18px solid #22110c;
  border-left: 18px solid transparent;
  border-right: 18px solid transparent;
  z-index: -1;
}

.riboon_box .item .title_ribbon,
.riboon_box .item .title_ribbon:before {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(8%, transparent), color-stop(8%, rgba(255, 255, 255, 0.1)), color-stop(14%, rgba(255, 255, 255, 0.1)), color-stop(14%, transparent), color-stop(86%, transparent), color-stop(86%, rgba(255, 255, 255, 0.1)), color-stop(92%, rgba(255, 255, 255, 0.1)), color-stop(92%, transparent)), -webkit-gradient(linear, left bottom, right top, color-stop(40%, transparent), color-stop(40%, rgba(255, 255, 255, 0.1)), color-stop(60%, rgba(255, 255, 255, 0.1)), color-stop(60%, transparent)), -webkit-gradient(linear, left top, left bottom, from(#300b00), to(#300b00));
  background-image: linear-gradient(transparent 8%, rgba(255, 255, 255, 0.1) 8%, rgba(255, 255, 255, 0.1) 14%, transparent 14%, transparent 86%, rgba(255, 255, 255, 0.1) 86%, rgba(255, 255, 255, 0.1) 92%, transparent 92%), linear-gradient(to top right, transparent 40%, rgba(255, 255, 255, 0.1) 40%, rgba(255, 255, 255, 0.1) 60%, transparent 60%), linear-gradient(#300b00, #300b00);
  background-size: cover, 4px 4px, cover; /*base white*/
}

.riboon_box .item .title_ribbon,
.riboon_box .item .title_ribbon:before,
.riboon_box .item .title_ribbon:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-origin: border-box;
}

.riboon_box .item .list .list_item {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4;
}

.riboon_box .item .list .list_item + .list_item {
  margin-top: 15px;
}

.riboon_box .item .list .list_item .major {
  display: block;
  font-size: 0.8em;
  letter-spacing: 0;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .riboon_box .item .title_ribbon {
    font-size: 2vw;
    line-height: 3.6vw;
    -webkit-box-shadow: 0 3.8vw 0 -1.8vw #fffdf2;
            box-shadow: 0 3.8vw 0 -1.8vw #fffdf2;
    padding: 1.4vw 1vw;
    margin: 0 0 1.8vw;
  }
  .riboon_box .item .title_ribbon:before {
    top: 1.8vw;
    border: 3.2vw solid rgba(0, 0, 0, 0);
    border-left: 1.6vw solid #fff;
    border-right: 1.6vw solid #fff;
  }
  .riboon_box .item .title_ribbon:after {
    border-top: 1.6vw solid #22110c;
    border-left: 1.6vw solid transparent;
    border-right: 1.6vw solid transparent;
  }
  .riboon_box .item .list .list_item {
    font-size: 1.8vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .riboon_box {
    display: block;
    margin-top: 0;
  }
  .riboon_box .item {
    width: 90%;
    margin: 15px auto 0;
  }
  .riboon_box.col3 .item:nth-child(3n) {
    margin-right: auto;
  }
  .riboon_box .item .title_ribbon {
    left: -2%;
    width: 104%;
    font-size: 4vw;
    line-height: 6vw;
    -webkit-box-shadow: 0 6.2vw 0 -3vw #fffdf2;
            box-shadow: 0 6.2vw 0 -3vw #fffdf2;
    padding: 3vw 1vw;
    margin: 0 0 3vw;
    z-index: auto;
  }
  .riboon_box .item .title_ribbon:before {
    top: 3vw;
    left: -3%;
    width: 106%;
    border: 6vw solid rgba(0, 0, 0, 0);
    border-left: 2vw solid #fff;
    border-right: 2vw solid #fff;
  }
  .riboon_box .item .title_ribbon:after {
    border-top: 3vw solid #22110c;
    border-left: 3vw solid transparent;
    border-right: 3vw solid transparent;
  }
  .riboon_box .item .list .list_item {
    font-size: 3.8vw;
  }
}
/*===============================================================

	myschool_game_event

===============================================================*/
.myschool_game_event .flex_container {
  margin-top: -30px;
}

.myschool_game_event .item {
  background: #54b7d4;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-shadow: 8px 8px 0 rgba(0, 0, 0, 0.08);
          box-shadow: 8px 8px 0 rgba(0, 0, 0, 0.08);
}

.myschool_game_event .item .head {
  background-color: #26acca;
  background-image: url("../include/myschool_game_event/images/bg_icon01.png"), url("../include/myschool_game_event/images/bg_icon02.png"), url("../include/myschool_game_event/images/bg_icon03.png"), url("../include/myschool_game_event/images/bg_icon04.png");
  background-repeat: no-repeat;
  background-position: top 10px left 10px, top 10px right 10px, bottom 10px left 10px, bottom 10px right 10px;
  background-size: 30px 30px;
  padding: 15px;
}

.myschool_game_event .item .head .tag {
  color: #fff;
  font-size: 26px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
}

.myschool_game_event .item .head .title {
  display: block;
  color: #fff034;
  font-size: 30px;
  line-height: 1.4;
  text-align: center;
  margin-top: 10px;
  margin-bottom: 0;
}

.myschool_game_event .item .detail {
  padding: 20px;
}

.myschool_game_event .item .detail p {
  color: #fff;
  font-size: 16px;
  line-height: 1.8;
  margin-top: 0;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .myschool_game_event .item .head .title {
    font-size: 2.8vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .myschool_game_event .flex_container {
    margin-top: -20px;
  }
  .myschool_game_event .item {
    -webkit-box-shadow: 0 8px 0 rgba(0, 0, 0, 0.08);
            box-shadow: 0 8px 0 rgba(0, 0, 0, 0.08);
  }
  .myschool_game_event .item .head {
    padding: 10px;
  }
  .myschool_game_event .item .head .tag {
    font-size: 16px;
  }
  .myschool_game_event .item .head .title {
    font-size: 18px;
    margin-top: 5px;
  }
  .myschool_game_event .item .detail p {
    font-size: 14px;
    line-height: 1.6;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	Myスクールゆめたび
	最終更新：2024/07/26
	/include/myschool_yumetabi/html/

===============================================================*/
.myschool_yumetabi {
  position: relative;
  background: #fff;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  padding: 50px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi {
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
    border-radius: 5vw;
    padding: 8vw 4vw 4vw;
  }
}
.myschool_yumetabi.hidden {
  overflow: hidden;
}
.myschool_yumetabi .balloon {
  position: absolute;
  top: 0;
  left: 50%;
  display: inline-block;
  color: #fff;
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
  word-break: keep-all;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.5rem 2rem;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .balloon {
    font-size: 4vw;
    padding: 0.5rem 1rem;
  }
}
.myschool_yumetabi .balloon:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  margin-top: -1px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .balloon:after {
    border-width: 3vw 2vw 0 2vw;
  }
}
.myschool_yumetabi .lead {
  font-size: 24px;
  line-height: 1.8;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .lead {
    font-size: 4.2vw;
  }
}
.myschool_yumetabi .lead strong {
  font-size: 1.2em;
  padding: 0 0.5em;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), to(#ff0));
  background-image: linear-gradient(transparent 50%, #ff0 100%);
}
.myschool_yumetabi .headline_diagonal_multi {
  margin-top: 30px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .headline_diagonal_multi {
    margin-top: 6vw;
  }
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .headline_diagonal_multi .text {
    padding: 0 1em;
  }
}
.myschool_yumetabi .event {
  margin-top: 30px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event {
    margin-top: 6vw;
  }
}
.myschool_yumetabi .event .list {
  border-top: 1px solid #ddd;
}
.myschool_yumetabi .event .list .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #ddd;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item {
    display: block;
    margin: 0;
  }
}
.myschool_yumetabi .event .list .item .event_content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 40px 0;
  margin: 0;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content {
    padding: 4vw 0;
    margin: 0;
  }
}
.myschool_yumetabi .event .list .item .event_content .title {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  margin-bottom: 20px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content .title {
    font-size: 4vw;
    margin-bottom: 4vw;
  }
}
.myschool_yumetabi .event .list .item .event_content .detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content .detail {
    display: block;
    margin: 0;
  }
}
.myschool_yumetabi .event .list .item .event_content .detail .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content .detail .text {
    margin: 0;
  }
}
.myschool_yumetabi .event .list .item .event_content .detail .area_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: -20px -10px 0;
}
@media screen and (max-width: 1000px) {
  .myschool_yumetabi .event .list .item .event_content .detail .area_list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.myschool_yumetabi .event .list .item .event_content .detail .area_list .area {
  -ms-flex-preferred-size: 25%;
      flex-basis: 25%;
  background: rgba(0, 0, 0, 0.03);
  margin: 20px 10px 0;
}
@media screen and (max-width: 1000px) {
  .myschool_yumetabi .event .list .item .event_content .detail .area_list .area {
    -ms-flex-preferred-size: calc(100% - 20px);
        flex-basis: calc(100% - 20px);
  }
}
.myschool_yumetabi .event .list .item .event_content .detail .area_list .area .photo {
  overflow: hidden;
}
.myschool_yumetabi .event .list .item .event_content .detail .area_list .area .name {
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  padding: 0.25em 0.5em;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content .detail .area_list .area .name {
    font-size: 3.5vw;
  }
}
.myschool_yumetabi .event .list .item .event_content .detail .area_list .area .name.kasai {
  background: #55bdb6;
}
.myschool_yumetabi .event .list .item .event_content .detail .area_list .area .name.shibuya {
  background: #54c3f1;
}
.myschool_yumetabi .event .list .item .event_content .detail .area_list .area .name.harajuku {
  background: #f6ae6a;
}
.myschool_yumetabi .event .list .item .event_content .detail .area_list .area .name.akihabara {
  background: #ef858c;
}
.myschool_yumetabi .event .list .item .event_content .detail .area_list .area .reference {
  font-size: 14px;
  line-height: 1.6;
  padding: 10px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content .detail .area_list .area .reference {
    font-size: 3.2vw;
    padding: 2vw;
  }
}
.myschool_yumetabi .event .list .item .event_content .detail .headline {
  text-align: center;
  margin-bottom: 20px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content .detail .headline {
    margin-bottom: 4vw;
  }
}
.myschool_yumetabi .event .list .item .event_content .detail .headline span {
  position: relative;
  display: inline-block;
  color: #00b0bd;
  font-size: 24px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content .detail .headline span {
    font-size: 4.8vw;
  }
}
.myschool_yumetabi .event .list .item .event_content .detail .headline span:before, .myschool_yumetabi .event .list .item .event_content .detail .headline span:after {
  content: "";
  position: absolute;
  top: 50%;
  width: 20px;
  height: 1px;
  background: #00b0bd;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.myschool_yumetabi .event .list .item .event_content .detail .headline span:before {
  right: 100%;
  margin-right: 10px;
}
.myschool_yumetabi .event .list .item .event_content .detail .headline span:after {
  left: 100%;
  margin-left: 10px;
}
.myschool_yumetabi .event .list .item .event_content .detail .special .special_event_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 -20px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content .detail .special .special_event_list {
    display: block;
    margin: 0;
  }
}
.myschool_yumetabi .event .list .item .event_content .detail .special .special_event_list .special_event {
  -ms-flex-preferred-size: 50%;
      flex-basis: 50%;
  margin: 0 20px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content .detail .special .special_event_list .special_event {
    margin: 4vw 0 0;
  }
}
.myschool_yumetabi .event .list .item .event_content .detail .special .special_event_list .special_event .photo {
  width: 100%;
  border-radius: 100%;
  overflow: hidden;
  margin: 0 auto;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content .detail .special .special_event_list .special_event .photo {
    width: 60%;
  }
}
.myschool_yumetabi .event .list .item .event_content .detail .special .special_event_list .special_event .heading {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  margin-top: 10px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content .detail .special .special_event_list .special_event .heading {
    font-size: 4vw;
    margin-top: 2vw;
  }
}
.myschool_yumetabi .event .list .item .event_content .detail .special .special_event_list .special_event .heading .small {
  font-size: 0.8em;
}
.myschool_yumetabi .event .list .item .event_content .detail .special .special_event_list .special_event p {
  font-size: 14px;
  line-height: 1.6;
  margin-top: 10px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content .detail .special .special_event_list .special_event p {
    font-size: 3.5vw;
    margin-top: 2vw;
  }
}
.myschool_yumetabi .event .list .item .event_content .detail .fig {
  -ms-flex-preferred-size: 200px;
      flex-basis: 200px;
  margin: 0 10px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content .detail .fig {
    width: 100%;
    margin: 3vw 0 0;
  }
}
.myschool_yumetabi .event .list .item .event_content .detail .fig span {
  display: block;
  font-size: 0.6em;
  text-align: right;
  margin-top: 0.5em;
}
.myschool_yumetabi .event .list .item .event_content .detail .alert {
  font-size: 12px;
  text-align: right;
  margin-top: 1em;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .event .list .item .event_content .detail .alert {
    font-size: 3vw;
  }
}
.myschool_yumetabi .faq {
  margin-top: -50px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .faq {
    margin-top: -8vw;
  }
}
.myschool_yumetabi .faq .title {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  background: #ff0;
  padding: 15px 0;
  margin: 0 -50px 50px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .faq .title {
    font-size: 4vw;
    padding: 2vw 0;
    margin: 0 -8vw 4vw;
  }
}
.myschool_yumetabi .faq .list {
  border-top: 1px solid #ddd;
}
.myschool_yumetabi .faq .list .faq_item {
  border-bottom: 1px solid #ddd;
}
.myschool_yumetabi .faq .list .faq_item .q {
  position: relative;
  font-weight: bold;
  background: rgba(0, 0, 0, 0.03);
  padding: 20px;
  padding-left: 60px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .faq .list .faq_item .q {
    padding: 4vw;
    padding-left: 10vw;
  }
}
.myschool_yumetabi .faq .list .faq_item .q:before {
  content: "Q";
  position: absolute;
  top: 20px;
  left: 15px;
  color: #00b0bd;
  font-size: 30px;
  line-height: 1;
  font-weight: bold;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .faq .list .faq_item .q:before {
    top: 4vw;
    left: 2vw;
    font-size: 6vw;
  }
}
.myschool_yumetabi .faq .list .faq_item .a {
  position: relative;
  padding: 20px;
  padding-left: 60px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .faq .list .faq_item .a {
    padding: 4vw;
    padding-left: 10vw;
  }
}
.myschool_yumetabi .faq .list .faq_item .a:before {
  content: "A";
  position: absolute;
  top: 20px;
  left: 15px;
  color: #ff4e4e;
  font-size: 30px;
  line-height: 1;
  font-weight: bold;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .faq .list .faq_item .a:before {
    top: 4vw;
    left: 2vw;
    font-size: 6vw;
  }
}
.myschool_yumetabi .after .title {
  text-align: center;
  margin: 30px 0;
}
@media screen and (max-width: 800px) {
  .myschool_yumetabi .after .title {
    margin: 6vw 0;
  }
}
.myschool_yumetabi .after .title span {
  position: relative;
  display: inline-block;
  color: #ff4e4e;
  font-size: 22px;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 800px) {
  .myschool_yumetabi .after .title span {
    font-size: 3.5vw;
  }
}
.myschool_yumetabi .after .title span:before, .myschool_yumetabi .after .title span:after {
  content: "";
  position: absolute;
  top: 0;
  height: 100%;
  border-left: solid 2px #ff4e4e;
}
@media screen and (max-width: 800px) {
  .myschool_yumetabi .after .title span:before, .myschool_yumetabi .after .title span:after {
    top: 0.5em;
    top: -0.1em;
  }
}
.myschool_yumetabi .after .title span:before {
  left: -1.5em;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
}
@media screen and (max-width: 800px) {
  .myschool_yumetabi .after .title span:before {
    left: -1.5em;
  }
}
.myschool_yumetabi .after .title span:after {
  right: -1.5em;
  -webkit-transform: rotate(30deg);
          transform: rotate(30deg);
}
@media screen and (max-width: 800px) {
  .myschool_yumetabi .after .title span:after {
    right: -1.5em;
  }
}
.myschool_yumetabi .after .event {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -20px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .after .event {
    display: block;
    margin: 0;
  }
}
.myschool_yumetabi .after .event .thumb {
  width: 320px;
  margin: 0 20px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .after .event .thumb {
    margin: 0;
  }
}
.myschool_yumetabi .after .event .detail {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin: 0 20px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .after .event .detail {
    display: block;
    margin: 4vw 0 0;
  }
}
.myschool_yumetabi .after .event .detail .catch {
  font-size: 18px;
  font-weight: bold;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .after .event .detail .catch {
    font-size: 3.8vw;
  }
}
.myschool_yumetabi .after .event .detail .date {
  font-size: 18px;
  font-weight: bold;
  margin-top: 20px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .after .event .detail .date {
    font-size: 3.5vw;
    margin-top: 4vw;
  }
}
.myschool_yumetabi .after .event .detail .date span.sat {
  color: #1437cc;
}
.myschool_yumetabi .after .event .detail .date span.sun {
  color: #de1616;
}
.myschool_yumetabi .after .event .detail .caution {
  font-size: 14px;
  margin-bottom: 20px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .after .event .detail .caution {
    font-size: 3.2vw;
    margin-bottom: 4vw;
  }
}
.myschool_yumetabi .after .event .detail .btn {
  margin-top: auto;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .after .event .detail .btn {
    margin-top: 4vw;
  }
}
.myschool_yumetabi .after .event .detail .btn a {
  position: relative;
  display: block;
  background-color: #ff4e4e;
  text-align: center;
  color: #fff;
  font-size: 14px;
  line-height: 20px;
  font-weight: bold;
  padding: 10px 0;
  border-radius: 100px;
}
@media only screen and (max-width: 800px) {
  .myschool_yumetabi .after .event .detail .btn a {
    font-size: 3.5vw;
    line-height: 1.2;
    padding: 3vw 0;
    border-radius: 1vw;
  }
}
.myschool_yumetabi .after .event .detail .btn a:hover {
  text-decoration: none;
  background-color: #ed4b4b;
}

/*===============================================================

	金の卵展
	最終更新：2022/7/27
	/include/golden_egg/html/

===============================================================*/
.section_include1 .golden_egg .headline_pop {
  margin: -70px auto 30px;
}

.section_include1 .golden_egg .headline_pop .title {
  color: #000;
  background: #d7d29b;
}

.section_include1 .golden_egg .headline_pop .title:after {
  border-color: #d7d29b transparent transparent transparent;
}

.section_include1 .golden_egg .flex_container + .flex_container {
  margin-top: 30px;
}

.section_include1 .golden_egg .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #000;
  border: double 8px #fff;
  border-radius: 10px;
  padding: 20px;
  -webkit-box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0);
          box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0);
  border-radius: 0px;
  border: solid 1px #ddd;
  background: rgba(255, 255, 255, 0.9);
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 0;
}

.section_include1 .golden_egg .item:before,
.section_include1 .golden_egg .item:after {
  content: "";
  position: absolute;
  margin: auto;
  width: 10px;
  height: 10px;
}

.section_include1 .golden_egg .item:before {
  bottom: -1px;
  right: -1px;
  border-top: 10px solid transparent;
  border-bottom: 10px solid #000;
  border-left: 10px solid transparent;
  border-right: 10px solid #000;
  border-width: 1px;
}

.section_include1 .golden_egg .item:after {
  top: -1px;
  left: -1px;
  border-top: 10px solid #000;
  border-bottom: 10px solid transparent;
  border-left: 10px solid #000;
  border-right: 10px solid transparent;
  border-width: 1px;
}

.section_include1 .golden_egg .item p {
  width: 100%;
  font-size: 18px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
}

.section_include1 .golden_egg .solution_box .title {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #d7d29b));
  background: linear-gradient(transparent 50%, #d7d29b 50%);
}

.section_include1 .golden_egg .solution_box .read {
  margin: 20px 0;
}

.section_include1 .golden_egg .appearance {
  margin-top: 0;
}

.section_access .notice {
  border: 1px solid #ff4e4e;
  padding: 20px;
}

.section_access .notice p {
  color: #ff4e4e;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}

.section_access .note p {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}

.section_include1 .golden_egg .last_year {
  text-align: center;
  margin: 40px 0 20px;
}

.section_include1 .golden_egg .last_year .message {
  display: inline-block;
  font-size: 18px;
  line-height: 1.6;
  font-weight: bold;
  background: #ff0;
  padding: 0.5em 2em;
}

.section_include1 .golden_egg .last_year .message span {
  font-size: 1.2em;
  margin: 0 0.25em;
}

.section_include1 .golden_egg .follow_up {
  font-size: 24px;
  line-height: 1.6;
  font-weight: bold;
  text-align: center;
}

.section_include1 .golden_egg .follow_up span {
  font-size: 1.2em;
  margin: 0 0.25em;
}

.section_include1 .golden_egg .works {
  text-align: center;
  background: #d7d29b;
  padding: 1em;
  margin: 30px 0 10px;
}

.section_include1 .golden_egg .works .title {
  font-size: 24px;
  line-height: 1.6;
  font-weight: bold;
  margin-bottom: 0.5em;
}

.section_include1 .golden_egg .works .message {
  font-size: 18px;
  line-height: 1.6;
  font-weight: bold;
}

.section_include1 .golden_egg .works .message span {
  font-size: 1.2em;
  margin: 0 0.25em;
}

.section_include1 .golden_egg .synchronous {
  text-align: center;
  border: 2px solid #000;
  padding: 1em;
  margin: 30px 0 50px;
}

.section_include1 .golden_egg .synchronous .title {
  color: #bbb041;
  font-size: 24px;
  line-height: 1.6;
  font-weight: bold;
  margin-bottom: 0.5em;
}

.section_include1 .golden_egg .synchronous .message {
  font-size: 18px;
  line-height: 1.6;
  font-weight: bold;
}

.section_include1 .golden_egg .synchronous .message span {
  font-size: 0.6em;
}

.section_include1 .golden_egg .synchronous .total {
  display: inline-block;
  font-weight: bold;
  background: #d7d29b;
  border-radius: 30px;
  padding: 0 1em;
  margin-top: 0.5em;
}

.section_include1 .golden_egg .balloon {
  text-align: center;
  margin: 20px 0;
}

.section_include1 .golden_egg .balloon span {
  position: relative;
  display: inline-table; /* Firefox */
  color: #ff4e4e;
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}

.section_include1 .golden_egg .balloon span:before,
.section_include1 .golden_egg .balloon span:after {
  content: "";
  position: absolute;
  top: 0;
  height: 1.7em;
  border-left: solid 2px #ff4e4e;
}

.section_include1 .golden_egg .balloon span:before {
  left: -2rem;
  -webkit-transform: rotate(-30deg);
  transform: rotate(-30deg);
}

.section_include1 .golden_egg .balloon span:after {
  right: -2rem;
  -webkit-transform: rotate(30deg);
  transform: rotate(30deg);
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_include1 .golden_egg .headline_pop {
    margin: 0;
  }
  .section_include1 .golden_egg .item:not(:first-child),
  .section_include1 .golden_egg .appearance:not(:first-child) {
    margin-top: 20px;
  }
  .section_include1 .golden_egg .item p {
    font-size: 3.5vw;
  }
  .section_access .notice p {
    font-size: 3.5vw;
    line-height: 1.3;
  }
  .section_access .note p {
    font-size: 3.5vw;
    text-align: left;
  }
  .section_include1 .golden_egg .last_year {
    margin-top: 20px;
  }
  .section_include1 .golden_egg .solution_box .read {
    font-size: 3.5vw;
    line-height: 1.6;
    text-align: left;
  }
  .section_include1 .golden_egg .last_year .message {
    display: block;
    font-size: 3.8vw;
    padding: 0.5em 1em;
  }
  .section_include1 .golden_egg .follow_up {
    font-size: 4.2vw;
  }
  .section_include1 .golden_egg .works {
    margin: 20px 0 10px;
  }
  .section_include1 .golden_egg .works .title {
    font-size: 4vw;
  }
  .section_include1 .golden_egg .works .message {
    font-size: 3.5vw;
  }
  .section_include1 .golden_egg .synchronous {
    margin: 20px 0;
  }
  .section_include1 .golden_egg .synchronous .title {
    font-size: 4vw;
  }
  .section_include1 .golden_egg .synchronous .message {
    font-size: 3.5vw;
  }
  .section_include1 .golden_egg .balloon span {
    font-size: 4.6vw;
    line-height: 1.1;
  }
  .section_include1 .golden_egg .balloon span:before,
  .section_include1 .golden_egg .balloon span:after {
    content: "";
    position: absolute;
    height: 6vw;
    border-left: solid 2px #ff4e4e;
  }
  .section_include1 .golden_egg .balloon span:before {
    left: -1rem;
  }
  .section_include1 .golden_egg .balloon span:after {
    right: -1rem;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	クリエーティブ甲子園表彰式
	業界で活躍する卒業生たちのトークライブ
	最終更新：2021/02/10
	/include/creative_koshien_awards/html/
	/include/graduater_talk_live/html/

===============================================================*/
.creative_koshien_awards .content h4,
.graduater_talk_live .content h4 {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 1em;
}

.creative_koshien_awards .content p,
.graduater_talk_live .content p {
  font-size: 18px;
  text-align: center;
}

.creative_koshien_awards .content p + p,
.graduater_talk_live .content p + p {
  margin-top: 1em;
}

.creative_koshien_awards .content .red,
.graduater_talk_live .content .red {
  color: #ED4B4B;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .creative_koshien_awards .content h4,
  .graduater_talk_live .content h4 {
    font-size: 4vw;
    text-align: left;
  }
  .creative_koshien_awards .content p,
  .graduater_talk_live .content p {
    text-align: left;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .creative_koshien_awards .content p,
  .graduater_talk_live .content p {
    font-size: 3.8vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	Student's Interview
	最終更新：2019/12/17

===============================================================*/
.students_interview {
  padding: 30px;
  margin-top: 60px;
}

.students_interview.game_programmer {
  border: 10px solid #2ea9e8;
}

.students_interview .title {
  position: relative;
  margin-bottom: 30px;
}

.students_interview .title:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  height: 5px;
  width: 100px;
  background: #2ea9e8;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.students_interview .title h3 {
  font-family: "Interstate-Bold-Condensed";
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  color: #2ea9e8;
  font-size: 30px;
  line-height: 1;
  font-weight: normal;
  text-align: center;
  padding-bottom: 10px;
}

.students_interview .interview_flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.students_interview .interview_flex .profile {
  width: 18.691588785%;
  margin-right: 3.738317757%;
}

.students_interview .interview_flex .profile .photo {
  position: relative;
  border-radius: 50%;
  overflow: hidden;
  margin-bottom: 10px;
  z-index: 1; /* scaleIn fix for Safari */
}

.students_interview .interview_flex .profile .major {
  font-weight: bold;
}

.students_interview .interview_flex .profile .name {
  font-size: 24px;
  line-height: 1.7;
  font-weight: bold;
}

.students_interview .interview_flex .profile .degree {
  font-size: 14px;
}

.students_interview .interview_flex .profile .entry {
  font-size: 14px;
  font-weight: bold;
}

.students_interview .interview_flex .profile .entry .howto {
  display: inline-block;
  color: #fff;
  line-height: 1.6;
  background: #2ea9e8;
  border-radius: 3px;
  padding: 0 5px;
  margin-right: 5px;
}

.students_interview .interview_flex .qanda {
  width: 77.5700934579%;
}

.students_interview .interview_flex .qanda dl dt {
  position: relative;
  display: block;
  color: #2ea9e8;
  font-size: 18px;
  font-weight: bold;
  border-bottom: 1px dotted #333;
  padding: 0 0 5px 3em;
}

.students_interview .interview_flex .qanda dl dt .no {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  color: #fff;
  font-weight: bold;
  background: #2ea9e8;
  border-radius: 3px;
  padding: 0 0.5em;
}

.students_interview .interview_flex .qanda dl dd {
  padding: 5px 0 20px;
}

.students_interview .interview_flex .qanda dl dd:last-child {
  padding-bottom: 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .students_interview {
    padding: 15px;
    margin-top: 30px;
  }
  .students_interview.game_programmer {
    border: 5px solid #2ea9e8;
  }
  .students_interview .title {
    margin-bottom: 15px;
  }
  .students_interview .title:after {
    height: 3px;
    width: 20vw;
  }
  .students_interview .title h3 {
    font-size: 6vw;
    padding-bottom: 10px;
  }
  .students_interview .interview_flex {
    display: block;
  }
  .students_interview .interview_flex .profile {
    width: 100%;
    margin-right: 0;
  }
  .students_interview .interview_flex .profile ul li {
    text-align: center;
  }
  .students_interview .interview_flex .profile .photo {
    width: 60vw;
    max-width: 200px;
    margin: 0 auto 10px;
  }
  .students_interview .interview_flex .profile .major {
    font-size: 3.5vw;
  }
  .students_interview .interview_flex .profile .name {
    font-size: 4.6vw;
  }
  .students_interview .interview_flex .profile .degree {
    font-size: 3.2vw;
  }
  .students_interview .interview_flex .profile .entry {
    font-size: 3.2vw;
  }
  .students_interview .interview_flex .qanda {
    width: 100%;
    margin-top: 15px;
  }
  .students_interview .interview_flex .qanda dl dt {
    font-size: 3.8vw;
    line-height: 1.5;
  }
  .students_interview .interview_flex .qanda dl dd {
    font-size: 3.8vw;
    padding: 5px 0 15px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	TCA 文化祭
	最終更新：2018/11/13
	/include/culture_festival/html/

===============================================================*/
.section_include1.culture_festival {
  padding-top: 40px;
}

.culture_festival .breakdown_box {
  border-top: 1px dashed #eaeaea;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
/* for SP max-width: $width_sp */
/*===============================================================

	school_festival

===============================================================*/
.lively_line {
  text-align: center;
}

.lively_line + * {
  margin-top: 10px;
}

.lively_line .lively {
  position: relative;
  display: inline-block;
  /* color:#ff6b6b; */
  font-size: 30px;
  line-height: 1.6;
  font-weight: bold;
  padding: 0 20px;
}

.school_festival .online {
  color: #0078c9;
  font-size: 1.25em;
  font-weight: bold;
}

.school_festival .offline {
  color: #c1282e;
  font-size: 1.25em;
  font-weight: bold;
}

.lively_line .lively:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0px;
  margin: auto;
  width: 3px;
  height: 100%;
  /* background:#ff6b6b; */
  background: #000;
  -webkit-transform: skew(20deg);
  transform: skew(20deg);
}

.lively_line .lively:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0px;
  margin: auto;
  width: 3px;
  height: 100%;
  /* background:#ff6b6b; */
  background: #000;
  -webkit-transform: skew(-20deg);
  transform: skew(-20deg);
}

.school_festival .flex_container {
  margin-top: -40px;
}

.school_festival .largeimg {
  width: 100%;
  /*height: 560px;
  background: #fafafa;*/
  margin: 20px 0 10px;
}

.school_festival .item {
  /*background: #4f9900;*/
  /*background: #fff800; /* 2023年度 */
  background: #fff; /* 2024年度 */
  border-radius: 30px; /* 2024年度 */
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1); /* 2024年度 */
  overflow: hidden; /* 2024年度 */
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /*  box-shadow: 8px 8px 0 rgba(0,0,0,0.08);*/
}

.school_festival .item .txt {
  padding: 20px;
  margin-top: 0;
}

.school_festival .item .txt .sub {
  text-align: center;
  margin-bottom: 0.5em;
}

.school_festival .item .txt .sub span {
  display: inline-block;
  color: #fff;
  font-size: 16px;
  line-height: 1.8;
  font-weight: bold;
  padding: 0 1em;
}

.school_festival .item.student .txt .sub span {
  background: #598f35;
}

.school_festival .item.current .txt .sub span {
  background: #ea5514;
}

.school_festival .item.creator_company .txt .sub span {
  background: #952d35;
}

.school_festival .item.job .txt .sub span {
  background: #ea5514;
}

.school_festival .item.event .txt .sub span {
  background: #1f5494;
}

.school_festival .item .txt .title {
  /*color: #fff;*/
  font-size: 24px;
  line-height: 1.4;
  font-weight: bold;
  text-align: center;
  margin: 0;
}

.school_festival .item.student .txt .title {
  color: #598f35;
}

.school_festival .item.current .txt .title {
  color: #ea5514;
}

.school_festival .item.creator_company .txt .title {
  color: #952d35;
}

.school_festival .item.job .txt .title {
  color: #ea5514;
}

.school_festival .item.event .txt .title {
  color: #1f5494;
}

.school_festival .item .txt .title + p {
  margin-top: 10px;
}

.school_festival .item .txt ul {
  margin-top: 10px;
}

.school_festival .item .txt li {
  font-size: 16px;
  line-height: 1.8;
  text-indent: -1em;
  padding-left: 1em;
  /*color: #FFF;*/
}

.school_festival .item .txt .alert {
  font-size: 0.75em;
  line-height: 1.4;
  text-indent: -1em;
  padding-left: 1em;
}

/* 学園祭スペシャルゲスト */
.school_festival .flex_container {
  /*margin-bottom: 50px;*/
}

.school_festival .guest .item {
  background: transparent;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 0;
}

.school_festival .guest .item:before,
.school_festival .guest .item:after {
  content: none;
}

.school_festival .guest .item .txt {
  padding: 0;
}

.school_festival .guest .item .txt .title {
  color: #000;
  font-size: 16px;
  text-align: center;
}

.school_festival .guest .item .txt p {
  text-align: center;
  margin-bottom: 5px;
}

.school_festival .guest .item .txt p span {
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  background: #3dc8ca;
  padding: 0.3em 1em;
}

/* オンライン/オフライン */
.school_festival .flex_container.online_offline {
  position: relative;
}

.school_festival .flex_container.online_offline .item {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 10px;
}

.school_festival .flex_container.online_offline .title {
  position: relative;
  color: #fff;
  font-size: 30px;
  text-align: center;
  padding: 0.5em 0;
  margin: 0;
}

.school_festival .flex_container.online_offline .title .icon {
  position: absolute;
  top: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100px;
  height: 100px;
  background: #fff;
  border-radius: 100%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.school_festival .flex_container.online_offline .title .icon img {
  display: block;
  height: 50px;
  width: auto;
}

.school_festival .flex_container.online_offline .inner {
  padding: 37px;
}

.school_festival .flex_container.online_offline .list li {
  position: relative;
  font-size: 18px;
  font-weight: bold;
  padding-left: 1.25em;
  margin-bottom: 0.5em;
}

.school_festival .flex_container.online_offline .list li:first-child {
  /*margin-bottom: 0;*/
}

.school_festival .flex_container.online_offline .list li:before {
  content: "●";
  position: absolute;
  top: 0;
  left: 0;
}

.school_festival .flex_container.online_offline .item p {
  font-size: 16px;
  font-weight: normal;
}

.school_festival .flex_container.online_offline:after {
  content: "OR";
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 80px;
  height: 80px;
  color: #fff;
  font-size: 20px;
  line-height: 80px;
  font-weight: bold;
  text-align: center;
  background: #000;
  border-radius: 100%;
  margin-top: 20px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

/* オンライン */
.school_festival .online_content {
  position: relative;
  background: #e5f1f9;
  border: 3px solid #0078c9;
}

.school_festival .online_content .title {
  background: #0078c9;
}

.school_festival .online_content .title .icon {
  left: -20px;
  border: 3px solid #0078c9;
}

.school_festival .online_content .list li:before {
  color: #0078c9;
}

.school_festival .online_content .list li .under_line {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 120, 201, 0)), color-stop(60%, rgba(0, 120, 201, 0)), color-stop(60%, rgba(0, 120, 201, 0.3)), to(rgba(0, 120, 201, 0.3)));
  background-image: linear-gradient(to bottom, rgba(0, 120, 201, 0), rgba(0, 120, 201, 0) 60%, rgba(0, 120, 201, 0.3) 60%, rgba(0, 120, 201, 0.3) 100%);
}

/* 来校 */
.school_festival .offline_content {
  background: #f9e9ea;
  border: 3px solid #c1282e;
}

.school_festival .offline_content .title {
  background: #c1282e;
}

.school_festival .offline_content .title .icon {
  right: -20px;
  border: 3px solid #c1282e;
}

.school_festival .offline_content .list li:before {
  color: #c1282e;
}

.school_festival .offline_content .list li .under_line {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(193, 40, 46, 0)), color-stop(60%, rgba(193, 40, 46, 0)), color-stop(60%, rgba(193, 40, 46, 0.3)), to(rgba(193, 40, 46, 0.3)));
  background-image: linear-gradient(to bottom, rgba(193, 40, 46, 0), rgba(193, 40, 46, 0) 60%, rgba(193, 40, 46, 0.3) 60%, rgba(193, 40, 46, 0.3) 100%);
}

.school_festival .content_bnr {
  margin: 50px 0;
}

.school_festival .content_bnr .title {
  display: inline-block;
  font-size: 35px;
  line-height: 1;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(80%, transparent), color-stop(0%, #ff0));
  background: linear-gradient(transparent 80%, #ff0 0%);
  color: #000;
  letter-spacing: 0.04em;
}

.school_festival .bnr_area {
  margin-top: 30px;
}

.school_festival .bnr_area a:hover {
  opacity: 0.8;
  text-decoration: none;
}

.school_festival .content_bnr .event_title {
  font-size: 18px;
}

.school_festival .content_bnr .alert {
  font-size: 0.8em;
  text-indent: -1em;
  padding-left: 1em;
  margin-top: 1em;
}

.school_festival .content_bnr .alert {
  font-size: 0.8em;
  text-indent: -1em;
  padding-left: 1em;
  margin-top: 1em;
}

/* 特別講義バナー */
.special_lesson_banner {
  margin-top: 50px;
}
@media only screen and (max-width: 800px) {
  .special_lesson_banner {
    margin-top: 8vw;
  }
}
.special_lesson_banner .heading {
  text-align: center;
  margin-bottom: 30px;
}
@media only screen and (max-width: 800px) {
  .special_lesson_banner .heading {
    margin-bottom: 5vw;
  }
}
.special_lesson_banner .heading .text {
  display: inline;
  font-size: 35px;
  line-height: 1.4;
  text-align: center;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(80%, transparent), color-stop(0%, #ff0));
  background: linear-gradient(transparent 80%, #ff0 0%);
}
@media only screen and (max-width: 800px) {
  .special_lesson_banner .heading .text {
    font-size: 4.2vw;
  }
}
.special_lesson_banner .item {
  background: #fff;
  border-radius: 30px;
  overflow: hidden;
}
@media only screen and (max-width: 800px) {
  .special_lesson_banner .item {
    border-radius: 5vw;
  }
}
.special_lesson_banner + .item {
  margin-top: 30px;
}
@media only screen and (max-width: 800px) {
  .special_lesson_banner + .item {
    margin-top: 5vw;
  }
}
.special_lesson_banner .wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #000;
}
@media only screen and (max-width: 800px) {
  .special_lesson_banner .wrapper {
    display: block;
  }
}
.special_lesson_banner .wrapper:hover {
  color: #000;
  opacity: 0.8;
}
.special_lesson_banner .wrapper .thumb {
  -ms-flex-preferred-size: 40%;
      flex-basis: 40%;
}
@media only screen and (max-width: 800px) {
  .special_lesson_banner .wrapper .thumb {
    width: 100%;
  }
}
.special_lesson_banner .wrapper .thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.special_lesson_banner .wrapper .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 50px;
}
@media only screen and (max-width: 800px) {
  .special_lesson_banner .wrapper .text {
    width: 100%;
    padding: 5vw;
  }
}
.special_lesson_banner .wrapper .text .lead {
  font-size: 20px;
  line-height: 1.6;
  margin-bottom: 0.5em;
}
@media only screen and (max-width: 800px) {
  .special_lesson_banner .wrapper .text .lead {
    font-size: 3.5vw;
  }
}
.special_lesson_banner .wrapper .text .title {
  font-size: 24px;
  line-height: 1.6;
  font-weight: bold;
}
@media only screen and (max-width: 800px) {
  .special_lesson_banner .wrapper .text .title {
    font-size: 4vw;
  }
}

/* メインビジュアル */
.school_festival .mainvisual {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #fff; /* 2024年度 */
  border-radius: 30px; /* 2024年度 */
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1); /* 2024年度 */
  padding: 40px 20px;
  margin: 0 0 60px;
}

.school_festival .mainvisual .fig {
  -ms-flex-preferred-size: 200px;
      flex-basis: 200px;
  margin: 0 20px;
}

.school_festival .mainvisual .concept {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin: 0 20px;
}

.school_festival .mainvisual .concept .title {
  font-size: 20px;
  line-height: 1.6;
  font-weight: bold;
  margin-bottom: 1em;
}

.school_festival .mainvisual .concept p {
  text-align: justify;
}

.school_festival .mainvisual .concept p.author {
  font-weight: bold;
  margin-top: 1em;
}

/* フロアマップ */
.school_festival .floormap {
  margin-top: 80px;
}

.school_festival .floormap .title {
  font-size: 28px;
  line-height: 1.6;
  font-weight: bold;
  text-align: center;
  margin-bottom: 1em;
}

.school_festival .floormap .alert {
  margin-top: 20px;
}

.school_festival .floormap .alert li {
  font-size: 14px;
  line-height: 1.6;
  text-indent: -1em;
  padding-left: 1em;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .school_festival .item .txt .title {
    font-size: 2.8vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .lively_line .lively {
    font-size: 18px;
  }
  .school_festival .flex_container {
    /*margin-top: -10px;*/
  }
  .school_festival .item {
    /*box-shadow: 0 8px 0 rgba(0,0,0,0.08);*/
  }
  .school_festival .item .txt .sub span {
    font-size: 13px;
  }
  .school_festival .item .txt .title {
    font-size: 18px;
  }
  .school_festival .item .txt ul {
    margin-top: 5px;
  }
  .school_festival .item .txt li {
    font-size: 14px;
    line-height: 1.6;
  }
  .school_festival .headline_diagonal .title:before {
    left: -10px;
  }
  /* 学園祭スペシャルゲスト */
  .school_festival .headline_diagonal .title:after {
    right: -10px;
  }
  .school_festival .flex_container {
    /*margin-bottom: 30px;*/
  }
  .school_festival .item_box.guest .item .photo + .txt {
    margin-top: 5px;
  }
  .school_festival .guest .item .txt .title {
    font-size: 14px;
  }
  /* オンライン/オフライン */
  .school_festival .flex_container .item {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-radius: 20px;
    margin-top: 20px;
  }
  .school_festival .flex_container .title {
    font-size: 5vw;
  }
  .school_festival .flex_container .title .icon {
    width: 16vw;
    height: 16vw;
  }
  .school_festival .flex_container .title .icon img {
    height: 9vw;
  }
  .school_festival .flex_container .inner {
    padding: 13px;
  }
  .school_festival .flex_container .list li {
    font-size: 3.8vw;
  }
  .school_festival .flex_container .item p {
    font-size: 3.5vw;
    font-weight: normal;
  }
  .school_festival .flex_container:after {
    content: none;
  }
  /* オンライン */
  .school_festival .online_content {
    border: 2px solid #0078c9;
  }
  .school_festival .online_content .title .icon {
    left: -15px;
    border: 2px solid #0078c9;
  }
  /* 来校 */
  .school_festival .offline_content {
    border: 2px solid #c1282e;
  }
  .school_festival .offline_content .title .icon {
    right: auto;
    left: -15px;
    border: 2px solid #c1282e;
  }
  .school_festival .offline_content .or {
    position: absolute;
    bottom: 100%;
    left: 50%;
    width: 40px;
    height: 40px;
    color: #fff;
    font-size: 4vw;
    line-height: 40px;
    font-weight: bold;
    text-align: center;
    background: #000;
    border-radius: 100%;
    margin-bottom: -10px;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    z-index: 10;
  }
  /* メインビジュアル */
  .school_festival .mainvisual {
    display: block;
    padding: 6vw;
    margin: 0 0 30px;
  }
  .school_festival .mainvisual .fig {
    width: 80%;
    margin: 0 auto 6vw;
  }
  .school_festival .mainvisual .concept {
    margin: 0;
  }
  .school_festival .mainvisual .concept .title {
    font-size: 4vw;
  }
  .school_festival .content_bnr {
    margin-top: 10vw 0 0 0;
  }
  .school_festival .content_bnr .title {
    font-size: 6.5vw;
  }
  .school_festival .bnr_area {
    margin-top: 5vw;
  }
  .school_festival .bnr_area .bnr + .bnr {
    margin-top: 5vw;
  }
  .school_festival .content_bnr .event_title {
    font-size: 3.8vw;
  }
  /* フロアマップ */
  .school_festival .floormap {
    margin-top: 30px;
  }
  .school_festival .floormap .title {
    font-size: 5vw;
  }
  .school_festival .floormap .map.sp {
    width: 100vw;
    margin: 0 -20px;
  }
  .school_festival .floormap .alert {
    margin-top: 10px;
  }
  .school_festival .floormap .alert li {
    font-size: 3.2vw;
  }
} /* for SP max-width: $width_sp */
/* 2020 */
/*===============================================================

	  section_include_school_festival

  ===============================================================*/
.section_include_school_festival .flex_container .item .txt {
  /*
    background: #f5f5f5;
    padding: 20px;
    margin-top: 0;
   */
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
  step_flow
  -------------------------------------------------------------*/
.label_square {
  width: 90px;
  color: #fff;
  font-weight: bold;
  font-size: 15px;
  line-height: 25px;
  font-weight: bold;
  text-align: center;
  background: #ff4e4e;
  z-index: 10;
  margin: -33px auto 10px;
  display: block;
}

.item_box.step_flow .item {
  margin-top: 50px;
}

.item_box.step_flow .item .label_square:after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 15px 0px 15px;
  border-color: #ff4e4e transparent transparent transparent;
  position: absolute;
  top: 0;
  bottom: 0;
  left: auto;
  right: -11%;
  margin: auto;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.item_box.step_flow .item:last-of-type .label_square:after {
  content: none;
}

.item_box.step_flow .item:after {
  /*
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 15px 0px 15px;
    border-color: #ff4e4e transparent transparent transparent;
    position: absolute;
    top: 0;
    bottom: 0;
    left: auto;
    right: -11%;
    margin: auto;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
   */
}

.item_box.step_flow .item:last-of-type:after {
  /*	content: none;*/
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .item_box.step_flow .item .label_square:after {
    right: -3.6vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .label_square {
    margin: -28px auto 10px;
  }
  .item_box.step_flow .item {
    margin-top: 60px;
  }
  .item_box.step_flow .item:first-of-type {
    margin-top: 35px;
  }
  .item_box.step_flow .item .label_square:after {
    top: auto;
    bottom: -25px;
    left: 0;
    right: 0;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	夏限定！ホラーフェスタ
	最終更新：2019/6/6
	/include/horror_festa/html/

===============================================================*/
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .horror_festa .headline_pop {
    margin-bottom: 0;
  }
}
/*===============================================================

	ハロウィン
	最終更新：2019/7/31
	/include/halloween/html/

===============================================================*/
/*-------------------------------------------------------------
	menu_wrp	
-------------------------------------------------------------*/
.menu_wrp {
  width: auto;
  max-width: 700px;
  margin: 0 auto;
}

.menu_wrp .headline_diagonal h2 {
  color: #000;
}

.menu_wrp .headline_diagonal h2:before,
.menu_wrp .headline_diagonal h2:after {
  border-color: #000;
}

.menu_wrp .list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-top: 20px;
}

.menu_wrp .list li {
  width: 33%;
  margin-right: 0.5%;
  font-size: 18px;
  line-height: 1.2;
  font-weight: bold;
  text-align: center;
  padding: 30px 0;
  background: #f39700;
}

.menu_wrp .list li:nth-child(3) {
  margin-right: 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .menu_wrp .list {
    margin-top: 10px;
  }
  .menu_wrp .list li {
    width: 100%;
    margin-right: 0;
    font-size: 3.5vw;
    padding: 4vw 0;
  }
  .menu_wrp .list li + li {
    margin-top: 5px;
  }
  .menu_wrp .list li:nth-child(3) {
    margin-right: 0;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	.secret_guest_wrp
-------------------------------------------------------------*/
.secret_guest_wrp {
  width: auto;
  max-width: 700px;
  position: relative;
  background: #ffff00 url("../include/halloween/images/img_secret.png") no-repeat bottom right 30px;
  background-size: 15% auto;
  padding: 30px;
  margin: 0 auto;
}

.secret_guest_wrp .tag {
  content: "";
  position: absolute;
  top: -20px;
  left: 0;
  right: 0;
  margin: auto;
  width: 150px;
  padding: 10px 0;
  background: #e61e19;
  color: #fff;
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
}

.secret_guest_wrp .head {
  font-size: 32px;
  line-height: 1.4;
  font-weight: bold;
  padding-right: 15%;
  margin: 0;
}

.secret_guest_wrp .caption {
  font-size: 16px;
  line-height: 1.6;
  padding-right: 15%;
  margin-top: 10px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .secret_guest_wrp {
    background: #ffff00 url("../include/halloween/images/img_secret.png") no-repeat bottom right 20px;
    background-size: 20% auto;
    padding: 15px;
  }
  .secret_guest_wrp .tag {
    top: -15px;
    width: 110px;
    padding: 7.5px 0;
    font-size: 14px;
    line-height: 15px;
  }
  .secret_guest_wrp .head {
    font-size: 4.5vw;
    padding-right: 25%;
    margin-top: 4vw;
  }
  .secret_guest_wrp .caption {
    font-size: 3.5vw;
    line-height: 1.4;
    padding-right: 25%;
    margin-top: 2vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	TCA クリスマスフェスタ
	最終更新：2018/11/15
	/include/chriatmas/html/

===============================================================*/
/* free html */
.free_html .christmas {
  position: relative;
  background: #fff;
  -webkit-box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
  padding: 40px;
}

.free_html .christmas h2 {
  position: absolute;
  /*一行*/
  /*	top: -30px;*/
  /*改行処理*/
  top: -55px;
  left: 50%;
  display: inline-block;
  color: #fff;
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
  word-break: keep-all;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.5rem 2rem;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  text-align: center;
}

.free_html .christmas h2:after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.free_html .christmas h2 .small {
  font-size: 18px;
}

.free_html .christmas .message {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

.free_html .christmas .text {
  width: 650px;
}

.free_html .christmas .text p {
  font-size: 20px;
  font-weight: bold;
}

.free_html .christmas .text .catch {
  color: #ff4e4e;
  font-size: 22px;
  margin: 0 0 5px;
}

.free_html .christmas .text .name {
  font-size: 60px;
  margin: 0 0 10px;
}

.free_html .christmas .text .name .degree {
  font-size: 50px;
}

.free_html .christmas .text .event_detail {
  display: inline-block;
  font-size: 30px;
  margin: 0 0 20px;
}

.free_html .christmas .image {
  width: 320px;
  margin-left: 20px;
}

/*コンテンツ全体にリンク*/
.free_html .link_content .christmas .text .event_detail {
  color: #000;
}

.free_html .link_content .christmas .text .catch {
  color: #ff4e4e;
}

.free_html .link_content a .christmas:hover {
  /*	opacity: .7;*/
}

.free_html .link_content a .christmas p:hover {
  /*	text-decoration: none;*/
}

/*斜線調整*/
.breakdown_box.christmas ul li .text .title:before,
.breakdown_box.christmas ul li .text .title:after {
  height: 3.6rem;
}

/*グリッド調整*/
.grid_chrismas .grid_1 .column {
  text-align: center;
}

.grid_chrismas .grid_1 .column p {
  display: inline-block;
  font-size: 20px;
  /*	font-weight: bold;*/
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .free_html .christmas {
    margin-left: 20px;
    margin-right: 20px;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .free_html .christmas {
    padding: 0 0 15px;
    -webkit-box-shadow: none;
            box-shadow: none;
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .free_html .christmas h2 {
    position: relative;
    top: 0;
    font-size: 3.8vw;
    padding: 0.5rem 1rem;
    margin: 0 0 20px;
  }
  .grid_chrismas .grid_1 .column p {
    font-size: 4vw;
  }
  .free_html .christmas h2 .small {
    font-size: 3vw;
  }
  .free_html .christmas .message {
    display: block;
  }
  .free_html .christmas .text {
    width: 100%;
    margin-bottom: 15px;
  }
  .free_html .christmas .text p {
    font-size: 3.5vw;
  }
  .free_html .christmas .text .catch {
    font-size: 4vw;
    margin: 0;
  }
  .free_html .christmas .text .name {
    font-size: 7vw;
    margin: 0;
  }
  .free_html .christmas .text .name .degree {
    font-size: 5vw;
  }
  .free_html .christmas .text .event_detail {
    font-size: 6vw;
    margin: 0 0 10px;
  }
  .free_html .christmas .image {
    width: 100%;
    margin-left: 0;
  }
} /* for SP max-width: $width_sp */
/* include1 */
.section_include1.chriatmas {
  padding-top: 40px;
}

.headline_stripe.christmas_party {
  background-image: linear-gradient(-45deg, #bb0000 25%, #bf0f0f 25%, #bf0f0f 50%, #bb0000 50%, #bb0000 75%, #bf0f0f 75%, #bf0f0f);
}

.headline_stripe.christmas_party .title {
  color: #fff;
}

.headline_stripe.christmas_party .copy {
  background: #2a733f;
}

.headline_stripe.christmas_party .copy:after {
  border-color: #2a733f transparent transparent transparent;
}

.headline_stripe.christmas_party .content_width .left {
  width: 100px;
  -webkit-transform: translate(-340px, -50%);
          transform: translate(-340px, -50%);
}

.headline_stripe.christmas_party .content_width .right {
  width: 190px;
  -webkit-transform: translate(240px, -50%);
          transform: translate(240px, -50%);
}

.headline_stripe.job_experience {
  background-image: linear-gradient(-45deg, #2a733f 25%, #307744 25%, #307744 50%, #2a733f 50%, #2a733f 75%, #307744 75%, #307744);
}

.headline_stripe.job_experience.halloween {
  /* https://css-stripe-generator.firebaseapp.com */
  background-size: auto auto;
  background-color: rgb(234, 85, 4);
  background-image: repeating-linear-gradient(-45deg, transparent, transparent 20px, rgba(255, 255, 255, 0.1882352941) 20px, rgba(255, 255, 255, 0.1882352941) 21px);
  /*
  background-image: linear-gradient(
  	-90deg,
  	#E57100 25%,
  	#E57100 25%,
  	#E57100 50%,
  	#D96B00 50%,
  	#D96B00 75%,
  	#E57100 75%,
  	#E57100
  );
  */
}

.headline_stripe.job_experience .title {
  color: #fff;
}

.headline_stripe.job_experience .copy {
  background: #bb0000;
}

.headline_stripe.job_experience.halloween .copy {
  background: #920783;
}

.headline_stripe.job_experience .copy:after {
  border-color: #bb0000 transparent transparent transparent;
}

.headline_stripe.job_experience.halloween .copy:after {
  border-color: #920783 transparent transparent transparent;
}

.headline_stripe.job_experience .content_width .left {
  width: 70px;
  -webkit-transform: translate(-300px, -50%);
          transform: translate(-300px, -50%);
}

.headline_stripe.job_experience .content_width .right {
  width: 70px;
  -webkit-transform: translate(220px, -50%);
          transform: translate(220px, -50%);
}

.headline_stripe.halloween_party {
  background-image: -webkit-gradient(linear, right top, left top, color-stop(25%, #f86500), color-stop(25%, #fb7920), color-stop(50%, #fb7920), color-stop(50%, #f86500), color-stop(75%, #f86500), color-stop(75%, #fb7920), to(#fb7920));
  background-image: linear-gradient(-90deg, #f86500 25%, #fb7920 25%, #fb7920 50%, #f86500 50%, #f86500 75%, #fb7920 75%, #fb7920);
}

.headline_stripe.halloween_party .title {
  color: #fff;
}

.headline_stripe.halloween_party .copy {
  background: #5a50a0;
}

.headline_stripe.halloween_party .copy:after {
  border-color: #5a50a0 transparent transparent transparent;
}

.chriatmas .outline_box .image {
  border-radius: 0;
}

.chriatmas .breakdown_box {
  padding-top: 0;
}

.chriatmas .breakdown_box ul {
  border-top: 1px dashed #eaeaea;
  padding: 40px 0 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .headline_stripe.job_experience {
    margin-top: 20px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	btns

===============================================================*/
.free_html .christmas .btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.free_html .christmas .btns .btn_yellow {
  width: 48%;
}

.free_html .christmas .btns .btn_yellow a {
  display: block;
  font-size: 16px;
  line-height: 1;
  color: #000;
  background: #ff0;
  padding: 15px;
  text-align: center;
  position: relative;
  font-weight: bold;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-decoration: none;
}

.free_html .christmas .btns .btn_yellow a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
  border: solid 1px #000;
  width: 6px;
  height: 6px;
  border-top: none;
  border-left: none;
  -webkit-transform: rotate(-45deg) translate(-1px, -1px);
          transform: rotate(-45deg) translate(-1px, -1px);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-decoration: none;
}

.free_html .christmas .btns .btn_yellow a:hover {
  -webkit-transform: scale(1.05, 1.05);
          transform: scale(1.05, 1.05);
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .free_html .christmas .btns .btn_yellow a {
    font-size: 1.5vw;
    padding: 1.8vw 3vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .free_html .christmas .btns {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .free_html .christmas .btns .btn_yellow {
    width: 100%;
  }
  .free_html .christmas .btns .btn_yellow a {
    font-size: 4vw;
    padding: 5vw 3vw;
    margin: 15px 0 15px 0;
  }
  .free_html .christmas .btns .btn_yellow a::after {
    right: 2vw;
  }
  .free_html .christmas .btns .btn_yellow + .btn_yellow {
    margin-top: 3vw;
  }
} /* for SP max-width: $width_sp */
/* everyday_title */
.everyday_title {
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.05em;
  text-indent: 0.05em;
  text-align: center;
  background: #ffff00;
  padding: 10px 0;
}

.everyday_title .reserved {
  font-size: 16px;
  margin-left: 5px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .everyday_title {
    font-size: 16px;
    padding: 5px 0;
    margin: 0 auto;
    margin-top: -18.5px;
  }
  .everyday_title .reserved {
    font-size: 12px;
    margin-left: 5px;
  }
} /* for SP max-width: $width_sp */
/* tel_entry */
.tel_entry {
  position: relative;
  border: 1px solid #ff4e4e;
  padding: 29px 19px 19px;
  margin-top: 50px;
}

.tel_entry .title {
  position: absolute;
  top: -1.3rem;
  left: 0;
  width: 100%;
  text-align: center;
  margin: 0;
}

.tel_entry .title span {
  display: inline-block;
  color: #ff4e4e;
  font-size: 2.6rem;
  font-weight: bold;
  text-align: center;
  background: #fff;
  padding: 0 1rem;
}

.tel_entry p.tel {
  font-size: 4rem !important;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  margin: 0 0 0.5rem;
}

.tel_entry p.tel a {
  color: #000;
}

.tel_entry p.tel a:hover {
  text-decoration: none;
}

.tel_entry p.caution {
  font-size: 1.4rem !important;
  text-align: center;
  margin: 0;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .tel_entry {
    position: relative;
    border: 1px solid #ff4e4e;
    padding: 25px 0px 14px;
    margin-top: 30px;
  }
  .tel_entry .title {
    position: absolute;
    top: -1.6rem;
    left: 0;
    width: 100%;
    text-align: center;
    margin: 0;
  }
  .tel_entry .title span {
    font-size: 1.4rem;
    padding: 0 1rem;
  }
  .tel_entry p.tel {
    font-size: 2.6rem !important;
    margin: 0 0 0.5rem;
  }
  .tel_entry p.caution {
    font-size: 1rem !important;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	U35先生からカワイイ女の子の描き方を教えてもらおう！
	最終更新：2022/01/17

===============================================================*/
.u35_lesson_freehtml {
  text-align: center;
  padding: 0 1em;
  margin-top: 2em;
}

.u35_lesson_freehtml p {
  display: inline;
  font-size: 20px;
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #ff0));
  background: linear-gradient(transparent 50%, #ff0 50%);
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .u35_lesson_freehtml {
    text-align: justify;
  }
  .u35_lesson_freehtml p {
    font-size: 2.6vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .u35_lesson_freehtml {
    padding: 0;
  }
  .u35_lesson_freehtml p {
    font-size: 4vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	岩元辰郎先生によるライブペイント開催！！
	最終更新：2019/4/17 菅
	/include/iwamoto_tatsuro/html/

===============================================================*/
.iwamoto_tatsuro p {
  font-size: 1.6rem;
  text-align: center;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media screen and (max-width: 800px) {
  .iwamoto_tatsuro .headline_pop {
    margin-bottom: 0;
  }
  .iwamoto_tatsuro .headline_pop .title {
    position: relative;
    top: 0;
    font-size: 5vw;
    line-height: 1.3;
    padding: 0.8rem 1.5rem;
    margin: 0 0 20px;
  }
  .iwamoto_tatsuro p {
    font-size: 4vw;
    text-align: left;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	二木 幸生氏来校！！
	最終更新：2021/01/20
	/include/futatsugi_yukio/html/

===============================================================*/
.futatsugi_yukio .content p {
  font-size: 18px;
  text-align: center;
  margin-top: 30px;
}

.futatsugi_yukio .content .red {
  color: #de1616;
  font-weight: bold;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .futatsugi_yukio .content p {
    font-size: 3.8vw;
    margin-top: -5vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	根津孝太氏特別講義
	最終更新：2021/01/28
	/include/nezu_kota/html/

===============================================================*/
.nezu_kota .content p {
  font-size: 18px;
  text-align: center;
  margin-top: 30px;
}

.nezu_kota .content .red {
  color: #de1616;
  font-weight: bold;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .nezu_kota .content p {
    text-align: left;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .nezu_kota .content p {
    font-size: 3.8vw;
    margin-top: -5vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	「ブスに花束を。」の作者でマンガ家の作楽ロク先生による直接指導！
	最終更新：2018/10/20
	/include/sakurakuroku/html/

===============================================================*/
.sakurakuroku .headline_diagonal {
  margin-top: 30px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .sakurakuroku .headline_diagonal {
    margin-top: 15px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	小山 順一朗氏来校！！
	最終更新：2020/06/16

===============================================================*/
.koyama_junichiro_freehtml {
  text-align: center;
  padding: 0 1em;
}

.koyama_junichiro_freehtml .headline_pop {
  margin-bottom: 30px;
}

.koyama_junichiro_freehtml p {
  display: inline;
  font-size: 20px;
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #ff0));
  background: linear-gradient(transparent 50%, #ff0 50%);
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .koyama_junichiro_freehtml {
    text-align: justify;
  }
  .koyama_junichiro_freehtml p {
    font-size: 2.6vw;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .koyama_junichiro_freehtml {
    padding: 0;
  }
  .koyama_junichiro_freehtml .headline_pop {
    margin-bottom: 0;
  }
  .koyama_junichiro_freehtml p {
    font-size: 4vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	TCB先生、清原 紘先生の特別授業
	最終更新：2018/12/20
	/include/tcb_kiyohara/html/

===============================================================*/
/* free html */
.free_html .tcb_kiyohara {
  position: relative;
  background: #fff;
  -webkit-box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
  padding: 40px;
  margin-top: 80px;
}

.free_html .tcb_kiyohara h2 {
  position: absolute;
  top: -40px;
  left: 50%;
  display: inline-block;
  color: #fff;
  font-size: 18px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  word-break: keep-all;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.5rem 2rem;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.free_html .tcb_kiyohara h2:after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.free_html .tcb_kiyohara .message ul li:first-child {
  border-bottom: 1px solid #ddd;
  padding-bottom: 30px;
}

.free_html .tcb_kiyohara .message ul li:last-child {
  padding-top: 30px;
}

.free_html .tcb_kiyohara .message ul li p {
  font-size: 20px;
  font-weight: bold;
}

.free_html .tcb_kiyohara .message ul li p.degree {
  font-size: 16px;
}

.free_html .tcb_kiyohara .message ul li p .red {
  color: #ff4e4e;
  font-size: 30px;
}

.free_html .tcb_kiyohara .message ul li p.degree .red {
  font-size: 16px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .free_html .tcb_kiyohara {
    -webkit-box-shadow: none;
            box-shadow: none;
    padding: 0;
    margin-top: 0;
  }
  .free_html .tcb_kiyohara h2 {
    position: relative;
    top: auto;
    left: auto;
    display: block;
    font-size: 14px;
    line-height: 1.3;
    padding: 1rem;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transform: none;
    transform: none;
    margin-bottom: 20px;
  }
  .free_html .tcb_kiyohara .message ul li:first-child {
    padding-bottom: 15px;
  }
  .free_html .tcb_kiyohara .message ul li:last-child {
    padding-top: 15px;
  }
  .free_html .tcb_kiyohara .message ul li p {
    font-size: 16px;
  }
  .free_html .tcb_kiyohara .message ul li p.degree {
    font-size: 12px;
  }
  .free_html .tcb_kiyohara .message ul li p .red {
    font-size: 20px;
  }
  .free_html .tcb_kiyohara .message ul li p.degree .red {
    font-size: 12px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	ヨコオタロウ先生の特別授業
	最終更新：2019/2/5
	/include/yokootaro/html/

===============================================================*/
/* free html */
.free_html .yokootaro {
  position: relative;
  background: #fff;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  padding: 40px;
  margin-top: 80px;
}

.free_html .yokootaro h2 {
  position: absolute;
  top: -40px;
  left: 50%;
  display: inline-block;
  color: #fff;
  font-size: 18px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  word-break: keep-all;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.5rem 2rem;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.free_html .yokootaro h2:after {
  content: "";
  position: absolute;
  bottom: -15px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.free_html .yokootaro .message p {
  font-size: 16px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .free_html .yokootaro {
    -webkit-box-shadow: none;
            box-shadow: none;
    padding: 0;
    margin-top: 0;
  }
  .free_html .yokootaro h2 {
    position: relative;
    top: auto;
    left: auto;
    display: block;
    font-size: 14px;
    line-height: 1.3;
    padding: 1rem;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transform: none;
    transform: none;
    margin-bottom: 20px;
  }
  .free_html .yokootaro .message p {
    font-size: 14px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	ヨコオタロウ先生の特別授業
	最終更新：2019/2/5
	/include/yokootaro/html/

===============================================================*/
/* free html */
.free_html .drawn_shooting {
  position: relative;
  background: #fff;
  -webkit-box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 6px 6px 0px 0px rgba(0, 0, 0, 0.08);
  padding: 40px;
  margin-top: 80px;
}

.free_html .drawn_shooting h2 {
  position: absolute;
  top: -20px;
  left: 50%;
  display: inline-block;
  color: #fff;
  font-size: 18px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  word-break: keep-all;
  background: #ff4e4e;
  border-radius: 5px;
  padding: 0.5rem 2rem;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.free_html .drawn_shooting h2:after {
  content: "";
  position: absolute;
  bottom: -14px;
  left: 50%;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 10px 0 10px;
  border-color: #ff4e4e transparent transparent transparent;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.free_html .drawn_shooting .message p {
  font-size: 16px;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .free_html .drawn_shooting {
    -webkit-box-shadow: none;
            box-shadow: none;
    padding: 0;
    margin-top: 0;
  }
  .free_html .drawn_shooting h2 {
    position: relative;
    top: auto;
    left: auto;
    display: block;
    font-size: 4vw;
    line-height: 1.3;
    padding: 1rem;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transform: none;
    transform: none;
    margin-bottom: 20px;
  }
  .free_html .drawn_shooting .message p {
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	experience_box

===============================================================*/
.headline_diagonal + .experience_box,
.headline_diagonal_multi + .experience_box {
  margin-top: 30px;
}

.experience_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.experience_box .item {
  position: relative;
  padding: 30px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  border-radius: 10px;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.08);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.08);
}

.experience_box .item .txt p.small_txt {
  font-size: 15px;
}

.experience_box .title_block {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 15px;
  border-bottom: dashed 1px #000;
}

.experience_box .title_block .title {
  font-size: 30px;
}

.experience_box .title_block .number {
  display: block;
  background: #ff0;
  color: #000;
  text-align: center;
  width: 50px;
  height: 50px;
  border-radius: 50px;
  line-height: 50px;
  font-size: 25px;
  font-weight: bold;
  margin-right: 15px;
}

.experience_box .img + .title_block,
.experience_box .title_block + .txt,
.experience_box .img + .txt {
  margin-top: 20px;
}

.experience_box .txt .title {
  font-size: 20px;
  line-height: 1.4;
  font-weight: bold;
}

.experience_box .description {
  font-size: 18px;
  line-height: 1.5;
}

.experience_box .item * + .description {
  margin-top: 5px;
}

/*------- 2カラム -------*/
.experience_box.column1 .item {
  width: 100%;
}

/*------- 2カラム -------*/
.experience_box.column2 .item {
  width: 48%;
}

/*------- 3カラム -------*/
.experience_box.column3 .item {
  width: 31%;
}

/*------- 4カラム -------*/
.experience_box.column4 .item {
  width: 23.5%;
}

/*20220909 追加*/
.experience_box .profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  background: #fff;
  padding: 30px;
  margin-top: 30px;
}

.experience_box .profile p {
  font-size: 16px;
  word-break: break-all;
  text-align: justify;
  text-justify: inter-ideograph; /* IE */
}

.experience_box .profile .left {
  -webkit-box-flex: 1;
      -ms-flex: 1 0;
          flex: 1 0;
  /*margin-right: 30px;*/
}

.experience_box .profile .right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-left: 30px;
}

.experience_box .personal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 30px;
}

.experience_box .profile .name {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: calc(100% - 130px); /*470px;*/
  font-size: 36px;
  line-height: 1.2;
  /*line-height: 2.777777777777778;*/
  font-weight: bold;
  margin: 0;
}

.experience_box .profile .name .post {
  font-size: 20px;
  margin-left: 5px;
}

.experience_box .profile .works {
  width: 100%;
}

.experience_box .profile .works ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

.experience_box .profile .works ul.w340 li {
  width: 340px;
}

/* タブレット以下 */
@media screen and (max-width: 1000px) {
  .experience_box .profile {
    display: block;
    margin-top: 30px;
  }
  .experience_box .profile p {
    font-size: 14px;
    line-height: 1.6;
  }
  .experience_box .profile .left {
    width: 100%;
  }
  .experience_box .profile .right {
    width: 100%;
    margin-left: 0;
  }
  .experience_box .personal {
    display: block;
    margin-bottom: 10px;
  }
  .experience_box .profile .name {
    width: auto;
    font-size: 26px;
    line-height: 1.7;
    font-weight: bold;
    margin: 0;
  }
  .experience_box .profile .name .post {
    display: block;
    font-size: 14px;
    margin-left: 0;
  }
  .experience_box .profile .works ul.w340 {
    display: block;
    width: 100% !important;
    margin-top: 20px;
  }
  .experience_box .profile .works ul.w340 li {
    width: 100% !important;
    margin-right: 0 !important;
    margin-bottom: 20px !important;
  }
} /* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .headline_diagonal + .experience_box,
  .headline_diagonal_multi + .experience_box {
    margin-top: 5vw;
  }
  .experience_box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .experience_box .item {
    padding: 3vw;
  }
  .experience_box .title_block {
    padding-bottom: 3vw;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .experience_box .title_block .title {
    font-size: 6vw;
    line-height: 1.4;
    width: calc(100% - 12vw);
  }
  .experience_box .title_block .number {
    width: 10vw;
    height: 10vw;
    border-radius: 10vw;
    line-height: 10vw;
    font-size: 5vw;
    margin-right: 2vw;
  }
  .experience_box .img + .title_block,
  .experience_box .title_block + .txt,
  .experience_box .item + .item {
    margin-top: 4vw;
  }
  .experience_box .img + .txt {
    margin-top: 3.5vw;
  }
  .experience_box .txt .title {
    font-size: 4.5vw;
  }
  .experience_box .description {
    font-size: 3.8vw;
  }
  .experience_box .item * + .description {
    margin-top: 1vw;
  }
  /*------- カラム -------*/
  .experience_box.column2 .item,
  .experience_box.column3 .item,
  .experience_box.column4 .item {
    width: 100%;
  }
  .experience_box .profile {
    display: block;
    padding: 5vw;
    margin-top: 5vw;
  }
  .experience_box .profile p {
    font-size: 3.5vw;
    letter-spacing: 0.03em;
  }
  .experience_box .profile .name .post {
    font-size: 4.5vw;
    margin-left: 0;
  }
  .experience_box .profile .name {
    font-size: 5.5vw;
  }
  .experience_box .profile .name .post {
    font-size: 4.5vw;
    margin-left: 0;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	専攻別お仕事体験系イベント
	目指せる職場、目指せる仕事
	最終更新：2023/04/22
	event_detail_page section_aim

===============================================================*/
.event_detail_page {
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.event_detail_page .section_aim {
  background: #ddd;
}
.event_detail_page .section_aim .aim_list {
  background: rgba(255, 255, 255, 0.9);
}
/*===============================================================

	ボタン　hover時の設定

===============================================================*/
.thiscontents {
  /* タブレット */
  /* for TABLET */
  /* SP */
  /* for SP */
}
.thiscontents .btn_detail_red a:hover {
  color: #fff;
}
/*===============================================================

	we are TCA 2019  /  we are TCA in 西葛西
	最終更新：2024/12/26
	/include/weare/html/
	/include/weare_nishikasai/html/

===============================================================*/
.section_include1 .weare {
  margin-top: -50px;
}

.section_include1 .weare .weare_number {
  font-size: 18px;
  font-weight: bold;
  margin-top: 10px;
}

.section_include1 .weare .weare_number span {
  color: #ff4e4e;
  font-size: 28px;
  margin: 0 5px 0 10px;
}

.section_include1 .weare .solution_box {
  margin: 0;
}

.section_include1 .weare .solution_box + .solution_box {
  margin-top: 80px;
}

.section_include1 .weare .solution_box .inner {
  margin: 40px 0;
}

.section_include1 .weare .solution_box .num {
  font-size: 1.8em;
}

.section_include1 .weare .item {
  color: #000;
  border: double 8px #fff;
  border-radius: 10px;
  padding: 20px;
  -webkit-box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0);
  box-shadow: 4px 4px 0px 0px rgba(0, 0, 0, 0);
  border-radius: 0px;
  border: solid 1px #ddd;
  background: rgba(255, 255, 255, 0.9);
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-top: 0;
}

.section_include1 .weare .item:before,
.section_include1 .weare .item:after {
  content: "";
  position: absolute;
  margin: auto;
  width: 10px;
  height: 10px;
}

.section_include1 .weare .item:before {
  bottom: -1px;
  right: -1px;
  border-top: 10px solid transparent;
  border-bottom: 10px solid #000;
  border-left: 10px solid transparent;
  border-right: 10px solid #000;
  border-width: 1px;
}

.section_include1 .weare .item:after {
  top: -1px;
  left: -1px;
  border-top: 10px solid #000;
  border-bottom: 10px solid transparent;
  border-left: 10px solid #000;
  border-right: 10px solid transparent;
  border-width: 1px;
}

.section_include1 .weare .item p {
  font-size: 18px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
}

.section_include1 .weare .item_box .item {
  margin-top: 30px;
}

.section_include1 .weare .item_box .item .title {
  color: #ff4e4e;
  text-align: left;
}

.section_include1 .weare .item_box .item p {
  text-align: left;
}

.section_include1 .weare .outline {
  padding: 40px 0 10px;
}

.section_include1 .weare .outline p {
  font-size: 16px;
  line-height: 1.7;
  text-align: center;
}

.section_include1 .weare .appearance {
  margin-top: 20px;
}

.section_access {
  position: relative;
  padding-bottom: 50px;
}

.section_access:after {
  content: "";
  position: absolute;
  top: -20px;
  left: 0;
  right: 0;
  margin: auto;
  width: 20px;
  height: 25px;
  border-top: 30px solid #ff4e4e;
  border-right: 20px solid transparent;
  border-bottom: 30px solid transparent;
  border-left: 20px solid transparent;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-animation: updown ease-in-out 1.5s infinite;
  animation: updown ease-in-out 1.5s infinite;
  -webkit-transform-origin: center 0 0;
  transform-origin: center 0 0;
  opacity: 1;
}

.section_access.golden_egg:after {
  border-top: 30px solid #d7d29b;
}

.section_access .section_inner {
  padding-bottom: 0;
}

.section_access .headline_diagonal {
  margin-bottom: 20px;
}

.section_access .headline_diagonal h2:before,
.section_access .headline_diagonal h2:after {
  content: none;
}

.section_access .headline_diagonal h2 {
  line-height: 1.5;
}

.section_access .headline_diagonal .alert {
  font-size: 0.9em;
  text-align: left;
  text-indent: -1em;
  padding-left: 1em;
  margin-top: 0.5em;
}

.section_access .train {
  font-size: 16px;
  text-align: center;
  margin-bottom: 20px;
}

/* 場所がTCAの場合写真いれる 2019/7/24 suga */
.section_access .tca {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 20px;
}

.section_access .tca .text {
  width: 800px;
  margin-right: 30px;
}

.section_access .tca .text .headline_diagonal h2 {
  display: block;
  text-align: left;
  padding: 0;
}

.section_access .tca .address,
.section_access .tca .train {
  font-size: 16px;
}

.section_access .tca .train {
  color: #c60000;
  font-weight: bold;
  text-align: left;
  margin-top: 20px;
}

.section_access.golden_egg .train {
  color: #bbb041;
}

.section_access .tca .ph {
  width: 240px;
}

.section_access iframe {
  width: 100%;
  height: 400px;
  margin: 0;
  padding: 0;
}

.section_access .bus {
  border: 1px solid #ff4e4e;
  padding: 20px;
}

.section_access .bus .illust {
  float: right;
  width: 100px;
}

.section_access .bus p {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}

.section_access .bus p.tel {
  font-size: 22px;
  margin-top: 1rem;
}

.section_access .bus p.tel a {
  color: #000;
}

.section_access .bus p.tel a:hover {
  text-decoration: none;
}

.section_access .bus .bus_stop {
  margin-top: 1rem;
}

.section_access .bus .bus_stop_title {
  color: #ff4e4e;
  text-align: center;
}

.section_access .bus .bus_stop_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.section_access .bus .bus_stop_list li {
  width: 12.5714285714%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  /*border: 1px solid #dadada;*/
  background: #f0f0f0;
  padding: 5px 0;
  margin-top: 10px;
  margin-right: 2%;
}

.section_access .bus .bus_stop_list li:nth-child(7n) {
  margin-right: 0;
}

.section_access .bus .bus_stop_list li:nth-child(n+7) {
  margin-top: 0;
}

.section_include1 .weare .flex_container .item .no {
  position: absolute;
  top: -10px;
  left: 50%;
  width: 40px;
  height: 40px;
  color: #fff;
  font-size: 20px;
  line-height: 40px;
  font-weight: bold;
  text-align: center;
  border-radius: 50%;
  background: #ff4e4e;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.section_include1 .weare .weare_nishikasai .item {
  /*
      display:flex;
      flex-direction:row;
      flex-wrap:wrap;
      justify-content:space-between;
      align-content: center;
  */
}

.section_include1 .weare .weare_nishikasai .item p {
  font-size: 16px;
  line-height: 1.5;
  text-align: left;
  font-weight: normal;
  text-align: center;
}

.section_include1 .weare .weare_nishikasai .item p.label {
  min-height: 3em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.section_include1 .weare .weare_nishikasai .item p + p {
  font-size: 16px;
  line-height: 1.5;
  font-weight: bold;
  text-align: left;
  color: #ff4e4e;
  position: relative;
  text-indent: 1em;
  border-top: dotted 1px #ddd;
  padding-top: 1em;
  margin-top: 1em;
}

/*
.section_include1 .weare .weare_nishikasai .item p + p:before {
content: '';
width: 0;
height: 0;
border-style: solid;
border-width: 8px 6px 0px 6px;
border-color: #ff4e4e transparent transparent transparent;
position: absolute;
top: 0;
bottom: 0;
left: 0;
margin: auto;
-webkit-transform: rotate(-90deg);
transform: rotate(-90deg);
}
*/
.section_include1 .weare .weare_nishikasai.intro .item {
  margin-top: 20px;
}

.section_include1 .weare .weare_nishikasai.intro .item p {
  font-size: 14px;
  text-align: center;
  margin-top: 5px;
}

.section_include1 .weare .content + .content {
  margin-top: 100px;
}

.section_include1 .weare .headline_pop + .flex_container {
  margin-top: 50px;
}

.section_include1 .weare .headline_pop_yellow + .flex_container {
  margin-top: 30px;
}

.section_include1 .weare .weare_nishikasai .read {
  color: #ff4e4e;
}

.section_include1 .weare .weare_nishikasai .class_list .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.section_include1 .weare .weare_nishikasai .class_list .item p {
  font-weight: 500;
}

/* タブレット以下 */
/* for tablet max-width: $width_content */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_include1 .weare {
    margin-top: 0;
  }
  .section_include1 .weare .weare_number {
    font-size: 4vw;
    margin-top: 4vw;
  }
  .section_include1 .weare .weare_number span {
    font-size: 6vw;
    margin: 0 3vw 0 6vw;
  }
  .section_include1 .weare .item:not(:first-child),
  .section_include1 .weare .appearance:not(:first-child) {
    margin-top: 20px;
  }
  .section_include1 .weare .outline {
    padding: 20px 0 0;
  }
  .section_include1 .weare .outline p {
    font-size: 14px;
    text-align: left;
  }
  .section_include1 .weare .item_box .item .title {
    font-size: 3.8vw;
  }
  .section_include1 .weare .item_box .item p {
    font-size: 3.5vw;
  }
  .section_include1 .weare .solution_box {
    margin: 0;
  }
  .section_include1 .weare .solution_box + .solution_box {
    margin-top: 6vw;
  }
  .section_include1 .weare .solution_box .inner {
    margin: 4vw 0;
  }
  .section_access {
    padding-top: 30px;
    padding-bottom: 20px;
  }
  .section_access:after {
    top: -10px;
    border-top: 20px solid #ff4e4e;
    border-bottom: 20px solid transparent;
  }
  .section_access.golden_egg:after {
    border-top: 20px solid #d7d29b;
  }
  .section_access .headline_diagonal {
    margin-bottom: 15px;
  }
  .section_access .train {
    font-size: 14px;
    margin-bottom: 15px;
  }
  /* 場所がTCAの場合写真いれる 2019/7/24 suga */
  .section_access .tca {
    display: block;
    padding-bottom: 15px;
  }
  .section_access .tca .text {
    width: 100%;
    margin-right: 0;
  }
  .section_access .headline_diagonal h2 {
    font-size: 4.5vw;
    text-align: center;
  }
  .section_access .tca .address,
  .section_access .tca .train {
    font-size: 3.5vw;
    text-align: center;
  }
  .section_access .tca .train {
    margin-top: 15px;
  }
  .section_access .tca .ph {
    width: 100%;
  }
  .section_access iframe {
    height: 100vw;
  }
  .section_access .bus {
    padding: 15px;
  }
  .section_access .bus .illust {
    float: none;
    width: 30%;
    margin: 0 auto 1rem;
  }
  .section_access .bus p {
    font-size: 14px;
  }
  .section_access .bus p.tel {
    font-size: 20px;
    text-align: center;
  }
  .section_access .bus .bus_stop_list li {
    width: 48%;
    font-size: 13px;
    padding: 5px 0;
    margin-top: 8px;
    margin-right: 4%;
  }
  .section_access .bus .bus_stop_list li:nth-child(7n) {
    margin-right: 4%;
  }
  .section_access .bus .bus_stop_list li:nth-child(2n) {
    margin-right: 0;
  }
  .section_access .bus .bus_stop_list li:nth-child(n+7) {
    margin-top: 8px;
  }
  .section_include1 .weare .weare_nishikasai.intro .item {
    margin-top: 2vw;
    padding: 2vw;
  }
  .section_include1 .weare .weare_nishikasai.intro .item p {
    font-size: 3.5vw;
  }
  .section_include1 .weare .headline_pop + .flex_container {
    margin-top: 8vw;
  }
  .section_include1 .weare .headline_pop_yellow + .flex_container {
    margin-top: -4vw;
  }
  .section_include1 .weare .content + .content {
    margin-top: 10vw;
  }
  .weare_nishikasai .headline_pop {
    margin-left: -10px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	TCA新入生キックオフ入学準備説明会
	最終更新：2024/8/20
	/include/kickoff/html/

===============================================================*/
.kickoff {
  margin-top: -50px;
}
@media only screen and (max-width: 800px) {
  .kickoff {
    margin-top: 0;
  }
}
.kickoff .question {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.kickoff .question .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid #ddd;
  background-image: linear-gradient(-45deg, #fff 25%, #eee 25%, #eee 50%, #fff 50%, #fff 75%, #eee 75%, #eee);
  background-size: 4px 4px;
  padding: 0.75em 0.5em;
}
.kickoff .question .item p {
  line-height: 1.4;
  font-weight: bold;
  text-align: center;
}

/*===============================================================

	留学生のための入学相談会
	最終更新：2025/02/27
	/include/briefing_international_student/html/

===============================================================*/
.briefing_international_student {
  background: #f7f7f7;
}
.briefing_international_student.bg_white {
  background: #fff;
}
.briefing_international_student .message {
  margin: -50px 0 -20px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .message {
    margin: -2vw 0 1vw;
  }
}
.briefing_international_student .message .copy {
  text-align: center;
  margin-bottom: 40px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .message .copy {
    margin-bottom: 8vw;
  }
}
.briefing_international_student .message .copy_title {
  position: relative;
  display: inline-block;
  font-size: 30px;
  line-height: 1.5;
  font-weight: bold;
  background: -webkit-gradient(linear, left top, right top, from(#ff0f80), to(#ffd735));
  background: linear-gradient(90deg, #ff0f80 0%, #ffd735 100%);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-bottom: 20px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .message .copy_title {
    font-size: 6vw;
    margin-bottom: 4vw;
  }
}
.briefing_international_student .message .copy_title:before, .briefing_international_student .message .copy_title:after {
  content: "";
  position: absolute;
  top: 50%;
  width: 2px;
  height: 2em;
}
.briefing_international_student .message .copy_title:before {
  right: 100%;
  background: #ff0f80;
  margin-right: 1em;
  -webkit-transform: translateY(-50%) rotate(-30deg);
          transform: translateY(-50%) rotate(-30deg);
}
.briefing_international_student .message .copy_title:after {
  left: 100%;
  background: #ffd735;
  margin-left: 1em;
  -webkit-transform: translateY(-50%) rotate(30deg);
          transform: translateY(-50%) rotate(30deg);
}
.briefing_international_student .message .copy_title .eng {
  display: block;
  font-size: 0.4em;
}
.briefing_international_student .message .copy_lead {
  font-size: 24px;
  line-height: 1.6;
  font-weight: bold;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .message .copy_lead {
    font-size: 5vw;
  }
}
.briefing_international_student .message .copy_lead .tca {
  display: inline-block;
  color: #000;
  background: #fff800;
  padding: 0 0.25em;
}
.briefing_international_student .message .copy_lead .num {
  font-size: 1.4em;
  background: -webkit-gradient(linear, left top, right top, from(#353fff), to(#03c4db));
  background: linear-gradient(90deg, #353fff 0%, #03c4db 100%);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent;
}
.briefing_international_student .message .slogan {
  text-align: center;
}
.briefing_international_student .message .slogan_wrap {
  display: inline-block;
  background: #fff;
  border-radius: 20px;
  -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
  padding: 30px 60px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .message .slogan_wrap {
    padding: 4vw;
  }
}
.briefing_international_student .message .slogan_title {
  font-size: 24px;
  line-height: 1.5;
  font-weight: bold;
  margin-bottom: 20px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .message .slogan_title {
    font-size: 4.8vw;
    margin-bottom: 4vw;
  }
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .message .slogan_lead {
    text-align: justify;
  }
}
.briefing_international_student .harryup {
  text-align: center;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .harryup {
    margin: -2vw 0 1vw;
  }
}
.briefing_international_student .harryup_title {
  font-size: 24px;
  line-height: 1.8;
  font-weight: bold;
  margin-bottom: 20px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .harryup_title {
    font-size: 4.8vw;
    margin-bottom: 4vw;
  }
}
.briefing_international_student .harryup_title .until {
  font-size: 1.25em;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .harryup_title + p {
    text-align: justify;
  }
}
.briefing_international_student .harryup_schedule {
  text-align: left;
  margin: 60px 0 -20px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .harryup_schedule {
    margin: 8vw 0 1vw;
  }
}
.briefing_international_student .harryup .schedule_block {
  margin-top: 20px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .strength {
    margin: -2vw 0 1vw;
  }
}
.briefing_international_student .strength_title {
  font-size: 30px;
  line-height: 1.8;
  font-weight: bold;
  text-align: center;
  margin-bottom: 40px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .strength_title {
    font-size: 6vw;
    margin-bottom: 4vw;
  }
}
.briefing_international_student .strength_feature {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -20px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .strength_feature {
    display: block;
    margin: 0;
  }
}
.briefing_international_student .strength_feature + .strength_feature {
  margin-top: 40px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .strength_feature + .strength_feature {
    margin-top: 6vw;
  }
}
.briefing_international_student .strength_feature .item1 {
  -ms-flex-preferred-size: calc(50% - 40px);
      flex-basis: calc(50% - 40px);
  margin: 0 20px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .strength_feature .item1 {
    margin: 0;
  }
}
.briefing_international_student .strength_feature .item1 p {
  text-align: justify;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .strength_feature .item1 + .item1 {
    margin-top: 4vw;
  }
}
.briefing_international_student .strength_feature .item2 {
  -ms-flex-preferred-size: calc(65% - 40px);
      flex-basis: calc(65% - 40px);
  margin: 0 20px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .strength_feature .item2 {
    margin: 0;
  }
}
.briefing_international_student .strength_feature .item2 p {
  text-align: justify;
}
.briefing_international_student .strength_feature .photo {
  -ms-flex-preferred-size: calc(35% - 40px);
      flex-basis: calc(35% - 40px);
  margin: 0 20px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .strength_feature .photo {
    margin: 4vw 0 0;
  }
}
.briefing_international_student .strength_feature .feature_title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 20px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .strength_feature .feature_title {
    margin-bottom: 4vw;
  }
}
.briefing_international_student .strength_feature .feature_title .point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 11px;
  line-height: 1;
  text-align: center;
  background: #ff0;
  padding: 10px 5px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .strength_feature .feature_title .point {
    font-size: 2.5vw;
    padding: 2vw;
  }
}
.briefing_international_student .strength_feature .feature_title .point .num {
  -webkit-box-flex: 0;
      -ms-flex: 0 1;
          flex: 0 1;
  font-size: 30px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .strength_feature .feature_title .point .num {
    font-size: 5vw;
  }
}
.briefing_international_student .strength_feature .feature_title .text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 18px;
  line-height: 1.4;
  padding-left: 20px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .strength_feature .feature_title .text {
    font-size: 3.8vw;
    padding-left: 2vw;
  }
}
.briefing_international_student .strength_btn {
  text-align: center;
  margin-top: 40px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .strength_btn {
    margin-top: 4vw;
  }
}
.briefing_international_student .application {
  margin-top: 80px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .application {
    margin: 8vw 0 1vw;
  }
}
.briefing_international_student .application_title {
  font-size: 30px;
  line-height: 1.8;
  font-weight: bold;
  text-align: center;
  margin-bottom: 40px;
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .application_title {
    font-size: 6vw;
    margin-bottom: 4vw;
  }
}
.briefing_international_student .under_line {
  display: inline-block;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), color-stop(59%, transparent), color-stop(60%, #ff0));
  background: linear-gradient(transparent 0%, transparent 59%, #ff0 60%);
}
.briefing_international_student .line_btn {
  position: relative;
  width: 500px;
  display: inline-block;
  color: #fff;
  font-size: 20px;
  line-height: 70px;
  font-weight: bold;
  -webkit-box-shadow: none;
          box-shadow: none;
  background-color: #00BC26;
  border-radius: 100px;
  padding: 0;
}
@media screen and (max-width: 1000px) {
  .briefing_international_student .line_btn {
    max-width: 100%;
  }
}
@media only screen and (max-width: 800px) {
  .briefing_international_student .line_btn {
    font-size: 4vw;
    line-height: 12vw;
  }
}
.briefing_international_student .line_btn:after {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
  border-top: solid 1px #fff;
  border-left: solid 1px #fff;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
.briefing_international_student .line_btn:hover {
  color: #fff;
  opacity: 0.7;
}
/*----------------------------------------

	frame.cssより転載

----------------------------------------*/
.h_lv1 {
  font-size: 25px;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  border-radius: 0px;
  padding: 30px 15px !important;
  border: solid 1px #666;
  /*	border-top: solid 3px #ff0;*/
  /*  background: rgba(255,255,255,0.5);*/
  border-radius: 5px 5px 0 0;
  border-bottom: 0 !important;
  padding-bottom: 10px !important;
}
@media only screen and (max-width: 800px) {
  .h_lv1 {
    font-size: 5vw;
    padding: 6vw 3vw !important;
    padding-bottom: 2vw !important;
  }
}

.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
  line-height: 1.4;
  text-align: center;
  vertical-align: middle;
  /*border-top: 1px solid rgba(0,0,0,0.3);*/
  padding: 10px;
}
@media only screen and (max-width: 800px) {
  .table > thead > tr > th,
  .table > tbody > tr > th,
  .table > tfoot > tr > th,
  .table > thead > tr > td,
  .table > tbody > tr > td,
  .table > tfoot > tr > td {
    padding: 2vw;
  }
}

.table {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
}

* + .table {
  margin-top: 20px;
}

.table th,
.table td {
  font-weight: normal;
  text-align: center;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border: solid 1px #ccc;
  border-collapse: collapse;
  padding: 15px;
  margin: 0;
}
@media only screen and (max-width: 800px) {
  .table th,
  .table td {
    padding: 2vw;
  }
}

.table th {
  font-size: 14px;
  background-color: rgba(172, 233, 255, 0.3);
}
@media only screen and (max-width: 800px) {
  .table th {
    font-size: 3.2vw;
  }
}

.table td {
  font-size: 14px;
  text-align: left;
  vertical-align: middle;
}
@media only screen and (max-width: 800px) {
  .table td {
    font-size: 3.2vw;
  }
}

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

	frame.cssより転載

----------------------------------------*/
.diploma_system + .diploma_system {
  margin-top: 20px;
}

.diploma_system {
  /*-------------------------------------------------------------
  vocational_school
  -------------------------------------------------------------*/
  /*-------------------------------------------------------------
  icon_eq
  -------------------------------------------------------------*/
  /*-------------------------------------------------------------
  university
  -------------------------------------------------------------*/
}
.diploma_system .label {
  font-size: 16px;
  font-weight: bold;
}
.diploma_system .block_wrp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 5px;
}
.diploma_system .block_wrp .vocational_school {
  width: 70%;
}
.diploma_system .block_wrp .icon_eq {
  width: 10%;
}
.diploma_system .block_wrp .university {
  width: 20%;
}
@media screen and (max-width: 800px) {
  .diploma_system .label {
    font-size: 4vw;
    font-weight: bold;
  }
  .diploma_system .block_wrp {
    margin-top: 2vw;
  }
}
.diploma_system .vocational_school {
  background-color: #333;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 15px;
  text-align: center;
}
.diploma_system .vocational_school .skil_wrp {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  margin-top: 10px;
}
.diploma_system .vocational_school .skil {
  background-color: #fff800;
  color: #000;
  padding: 10px;
  font-size: 14px;
  width: calc((100% - 25px) * 0.6);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.diploma_system .vocational_school .icon_plus + .skil {
  width: calc((100% - 25px) * 0.4);
}
.diploma_system .vocational_school .icon_plus {
  position: relative;
  width: 25px;
}
.diploma_system .vocational_school .icon_plus::after, .diploma_system .vocational_school .icon_plus::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 70%;
  height: 3px;
  background-color: #fff800;
}
.diploma_system .vocational_school .icon_plus::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
@media screen and (max-width: 800px) {
  .diploma_system .vocational_school {
    padding: 3vw;
  }
  .diploma_system .vocational_school .skil_wrp {
    margin-top: 2vw;
  }
  .diploma_system .vocational_school .skil {
    background-color: #fff800;
    color: #000;
    padding: 2vw 1vw;
    font-size: 3.2vw;
    width: calc((100% - 5vw) * 0.6);
  }
  .diploma_system .vocational_school .icon_plus + .skil {
    width: calc((100% - 5vw) * 0.4);
  }
  .diploma_system .vocational_school .icon_plus {
    position: relative;
    width: 5vw;
  }
}
.diploma_system .icon_eq {
  padding: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.diploma_system .icon_eq span {
  display: block;
  border-top: solid 1px #333;
  border-bottom: solid 1px #333;
  height: 10px;
  position: relative;
  width: 100%;
}
.diploma_system .icon_eq span::after, .diploma_system .icon_eq span::before {
  content: "";
  position: absolute;
  margin: auto;
  width: 6px;
  height: 6px;
  border-radius: 8px;
  background-color: #333;
}
.diploma_system .icon_eq span::after {
  top: -10px;
  left: 0;
}
.diploma_system .icon_eq span::before {
  bottom: -10px;
  right: 0;
}
@media screen and (max-width: 800px) {
  .diploma_system .icon_eq {
    padding: 2vw;
  }
  .diploma_system .icon_eq span {
    height: 2vw;
  }
}
.diploma_system .university {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ccc;
  padding: 15px;
  text-align: center;
}
.diploma_system .university .title {
  line-height: 1.4;
}
.diploma_system .university p {
  font-size: 80%;
  line-height: 1.4;
  margin-top: 0.3em;
}
@media screen and (max-width: 800px) {
  .diploma_system .university {
    padding: 3vw;
    text-align: center;
  }
  .diploma_system .university .title {
    font-size: 3.8vw;
    line-height: 1.4;
  }
  .diploma_system .university p {
    font-size: 3.2vw;
  }
}

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

	/visitor/common/scss/sborad/index.scssより転載

----------------------------------------*/
.visiter_application_method {
  background: #fff;
  border-radius: 20px;
  -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
  padding: 50px;
}

.visiter_application_method .tabhead {
  margin-top: 0;
  margin-bottom: 50px;
}

.visiter_application_method .tabhead ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.visiter_application_method .tabhead .item0 {
  -ms-flex-wrap: 20%;
      flex-wrap: 20%;
  margin-top: 0;
}

.visiter_application_method .tabhead .item0.active {
  -webkit-transform: none;
          transform: none;
}

.visiter_application_method .tabhead .item0 a {
  position: relative;
  display: block;
  color: #000;
  font-weight: bold;
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: none;
  background: none;
  cursor: pointer;
  padding: 20px;
  z-index: 0;
}

.visiter_application_method .tabhead .item0 a:before {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
  left: 50%;
  width: 0;
  height: 0;
  border: 0px solid #fff800;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  z-index: -1;
}

.visiter_application_method .tabhead .item0.active a:before {
  width: 2em;
  height: 2em;
  border: 5px solid #fff800;
  border-radius: 100%;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.visiter_application_method .tabhead .item0 a:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 5%;
  width: 90%;
  height: 8px;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  -webkit-transform: skewX(45deg);
          transform: skewX(45deg);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.visiter_application_method .tabhead .item0 a:hover {
  border: none;
  background: none;
  text-decoration: none;
  padding: 20px;
  opacity: 0.7;
}

.visiter_application_method .tabhead .item0 a:hover:after {
  left: 0;
  width: 100%;
}

.visiter_application_method .tabbody {
  padding: 0;
  border: none;
}

.visiter_application_method .tabbody .btn_detail {
  width: auto;
}

.visiter_application_method .tabbody .btn_detail a {
  background: #32a3e7;
  -webkit-box-shadow: none;
          box-shadow: none;
  border-radius: 0;
}

.visiter_application_method .tabbody .btn_detail a:hover {
  opacity: 0.7;
}

.visiter_application_method .tabbody .btn_detail a:after {
  border-width: 2px;
}

@media only screen and (max-width: 800px) {
  .visiter_application_method {
    padding: 6vw;
  }
  .visiter_application_method .tabhead {
    margin-top: 0;
    margin-bottom: 10vw;
  }
  .visiter_application_method .tabhead .item0 {
    margin-top: 0;
  }
  .visiter_application_method .tabhead .item0.active {
    -webkit-transform: none;
            transform: none;
  }
  .visiter_application_method .tabhead .item0 a,
  .visiter_application_method .tabhead .item0.active a:hover {
    font-size: 2.8vw;
    padding: 4vw 2vw;
  }
  .visiter_application_method .tabhead .item0 a:hover {
    padding: 4vw 2vw;
  }
  .visiter_application_method .tabhead .item0.active a:before {
    width: 1.75em;
    height: 1.75em;
    border: 3px solid #fff800;
  }
  .visiter_application_method .tabhead .item0 a:after {
    height: 2vw;
  }
  .visiter_application_method .tabbody {
    padding: 0;
  }
  .visiter_application_method .tabbody .btn_detail a:hover {
    opacity: 0.7;
  }
  .visiter_application_method .tabbody .btn_detail a:after {
    right: 2vw;
    width: 2vw;
    height: 2vw;
  }
}
/*===============================================================

	TCA学校説明会&キャンパス見学ツアー
	最終更新：2025/5/30
	/include/briefing_campus_tour/html/

===============================================================*/
.briefing_campus_tour {
  margin-top: -50px;
}
@media only screen and (max-width: 800px) {
  .briefing_campus_tour {
    margin-top: -10vw;
  }
}
.briefing_campus_tour .briefing_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: -40px -20px 0;
}
@media only screen and (max-width: 800px) {
  .briefing_campus_tour .briefing_list {
    display: block;
    margin: 0;
  }
}
.briefing_campus_tour .briefing_list .item {
  position: relative;
  background: #fff;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  padding: 40px;
  margin: 40px 20px 0;
}
@media only screen and (max-width: 800px) {
  .briefing_campus_tour .briefing_list .item {
    -webkit-box-shadow: 0 0 4vw 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 4vw 0 rgba(0, 0, 0, 0.1);
    border-radius: 4vw;
    padding: 6vw;
    margin: 4vw 0 0;
  }
}
.briefing_campus_tour .briefing_list .item.col1 {
  -ms-flex-preferred-size: calc(100% - 40px);
      flex-basis: calc(100% - 40px);
}
.briefing_campus_tour .briefing_list .item.col2 {
  -ms-flex-preferred-size: calc((100% - 80px) / 2);
      flex-basis: calc((100% - 80px) / 2);
}
.briefing_campus_tour .briefing_list .item .title {
  position: absolute;
  top: 15px;
  left: -10px;
  height: 50px;
  color: #fff;
  font-size: 20px;
  line-height: 50px;
  font-weight: bold;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.2);
  /*text-shadow:
  	1px 1px 0 #000,
  	1px 0 0 #000,
  	0 1px 0 #000,
  	-1px 1px 0 #000,
  	-1px 0 0 #000,
  	0 1px 0 #000,
  	-1px -1px 0 #000,
  	-1px 0 0 #000,
  	0 -1px 0 #000,
  	1px -1px 0 #000,
  	1px 0 0 #000,
  	0 -1px 0 #000;*/
  background-image: -webkit-gradient(linear, left top, right top, from(#E73838), to(#ffd634));
  background-image: linear-gradient(to right, #E73838 0%, #ffd634 100%);
  padding-left: 40px;
  padding-right: 10px;
  z-index: 10;
}
@media only screen and (max-width: 800px) {
  .briefing_campus_tour .briefing_list .item .title {
    top: 2vw;
    left: -2vw;
    height: 10vw;
    font-size: 4vw;
    line-height: 10vw;
    padding-left: 6vw;
    padding-right: 2vw;
  }
}
.briefing_campus_tour .briefing_list .item .title:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-color: transparent #981d1d transparent transparent;
  border-width: 0px 10px 10px 0px;
}
@media only screen and (max-width: 800px) {
  .briefing_campus_tour .briefing_list .item .title:before {
    border-width: 0px 2vw 2vw 0px;
  }
}
.briefing_campus_tour .briefing_list .item .title:after {
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  display: block;
  border: 25px solid #ffd634;
  border-right-width: 10px;
  border-right-color: transparent;
  z-index: -1;
}
@media only screen and (max-width: 800px) {
  .briefing_campus_tour .briefing_list .item .title:after {
    border: 5vw solid #ffd634;
    border-right-width: 2.5vw;
    border-right-color: transparent;
  }
}
.briefing_campus_tour .briefing_list .item .title + p {
  margin-top: 40px;
}
.briefing_campus_tour .briefing_list .item .tuition_alone {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin: 0 -20px;
}
@media only screen and (max-width: 800px) {
  .briefing_campus_tour .briefing_list .item .tuition_alone {
    display: block;
    margin: 0;
  }
}
.briefing_campus_tour .briefing_list .item .tuition_alone .text, .briefing_campus_tour .briefing_list .item .tuition_alone .photo {
  -ms-flex-preferred-size: calc((100% - 80px) / 2);
      flex-basis: calc((100% - 80px) / 2);
  margin: 0 20px;
}
@media only screen and (max-width: 800px) {
  .briefing_campus_tour .briefing_list .item .tuition_alone .text, .briefing_campus_tour .briefing_list .item .tuition_alone .photo {
    margin: 0;
  }
}
.briefing_campus_tour .briefing_list .item .subtitle {
  color: #E73838;
  font-size: 18px;
  margin: 2.5em 0 1em;
}
@media only screen and (max-width: 800px) {
  .briefing_campus_tour .briefing_list .item .subtitle {
    font-size: 3.8vw;
    margin: 4vw 0 2vw;
  }
}
.briefing_campus_tour .briefing_list .item .check_list li {
  position: relative;
  padding-left: 1.3em;
}
.briefing_campus_tour .briefing_list .item .check_list li:after, .briefing_campus_tour .briefing_list .item .check_list li:before {
  content: "";
  position: absolute;
  top: 0.43em;
  left: 0.5em;
  display: block;
  background: #E73838;
  height: 11px;
  width: 4px;
  border: none;
  border-radius: 10px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.briefing_campus_tour .briefing_list .item .check_list li:before {
  top: 0.6em;
  left: 0.2em;
  height: 8px;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.briefing_campus_tour .briefing_list .item .field_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 20px;
}
@media only screen and (max-width: 800px) {
  .briefing_campus_tour .briefing_list .item .field_list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 4vw;
  }
}
.briefing_campus_tour .briefing_list .item .field_list li {
  -ms-flex-preferred-size: 20%;
      flex-basis: 20%;
}
@media only screen and (max-width: 800px) {
  .briefing_campus_tour .briefing_list .item .field_list li {
    -ms-flex-preferred-size: 33.3333333333%;
        flex-basis: 33.3333333333%;
  }
}
@media only screen and (max-width: 800px) {
  .briefing_campus_tour .briefing_list .item .field_list li.col_sp_50 {
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
  }
}
.briefing_campus_tour .briefing_list .item .field_list li.illust {
  background-image: -webkit-gradient(linear, left top, right top, from(#e50111), to(#fe3443));
  background-image: linear-gradient(to right, #e50111 0%, #fe3443 100%);
}
.briefing_campus_tour .briefing_list .item .field_list li.game {
  background-image: -webkit-gradient(linear, left top, right top, from(#1d50a0), to(#3072d9));
  background-image: linear-gradient(to right, #1d50a0 0%, #3072d9 100%);
}
.briefing_campus_tour .briefing_list .item .field_list li.cg {
  background-image: -webkit-gradient(linear, left top, right top, from(#dc4f93), to(#e98fba));
  background-image: linear-gradient(to right, #dc4f93 0%, #e98fba 100%);
}
.briefing_campus_tour .briefing_list .item .field_list li.design {
  background-image: -webkit-gradient(linear, left top, right top, from(#8f61a2), to(#b191be));
  background-image: linear-gradient(to right, #8f61a2 0%, #b191be 100%);
}
.briefing_campus_tour .briefing_list .item .field_list li.anime {
  background-image: -webkit-gradient(linear, left top, right top, from(#52b489), to(#87cbad));
  background-image: linear-gradient(to right, #52b489 0%, #87cbad 100%);
}
.briefing_campus_tour .briefing_list .item .field_list li p {
  color: #fff;
  line-height: 2;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 800px) {
  .briefing_campus_tour .briefing_list .item .field_list li p {
    font-size: 3.2vw;
  }
}
/*# sourceMappingURL=opencampus.css.map */