@charset "UTF-8";
/*===============================================================

  _site_frame.scssとは別物です。

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

	基本のレイアウト
	section_contents

===============================================================*/
.section_contents .section_inner {
  padding-top: 80px;
  padding-bottom: 120px;
}

.section_contents img {
  width: 100%;
  height: auto;
}

.section_contents * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.section_contents a,
.section_contents a:hover {
  text-decoration: none;
}

/*
.section_contents .content_wrp {
  padding-bottom: 100px;
} 
*/
/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_contents .section_inner {
    padding-top: 7vw;
    padding-bottom: 10vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	headline	
-------------------------------------------------------------*/
.section_contents .headline {
  text-align: center;
}

.section_contents .headline .title {
  font-size: 40px;
  line-height: 1.5;
}

.section_contents .headline .read {
  font-size: 22px;
  line-height: 1.5;
  font-weight: bold;
}

.section_contents .headline * + .read {
  margin-top: 10px;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .section_contents .headline .title {
    font-size: 3.74vw;
  }
  .section_contents .headline .read {
    font-size: 2.06vw;
    margin-top: 0.93vw;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_contents .headline .title {
    font-size: 5vw;
  }
  .section_contents .headline .read {
    font-size: 4vw;
  }
  .section_contents .headline * + .read {
    margin-top: 2vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	visual	
-------------------------------------------------------------*/
.section_contents .visual {
  margin-top: 30px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	content	
-------------------------------------------------------------*/
.section_contents .headline + .content,
.section_contents .visual + .content {
  margin-top: 50px;
}

.section_contents .content + .content {
  margin-top: 80px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_contents .headline + .content,
  .section_contents .visual + .content {
    margin-top: 5vw;
  }
  .section_contents .content + .content {
    margin-top: 10vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	/school/index.html
	/education/index.html
	content_photo_on_txt

===============================================================*/
.content_photo_on_txt .photo {
  position: relative;
  z-index: 1;
}

.content_photo_on_txt .txtbox {
  position: relative;
  z-index: 2;
  background: #fff;
  border-radius: 5px;
  -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);
  width: 70%;
  max-width: 750px;
  padding: 30px;
  margin: 0 30px auto auto;
  margin-top: -100px;
}

.content_photo_on_txt .txtbox .title {
  font-size: 25px;
  line-height: 1.5;
}

.content_photo_on_txt .txtbox .title + p {
  margin-top: 0.7em;
}

.content_photo_on_txt .txtbox p {
  font-size: 18px;
  line-height: 1.8;
}

.content_photo_on_txt .btn_line_arw {
  text-align: right;
}

.content_photo_on_txt .btn_line_arw a {
  font-size: 18px;
  margin-left: auto;
  margin-right: 0;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .content_photo_on_txt .txtbox {
    width: 95%;
    max-width: inherit;
    padding: 5vw;
    margin: 0 auto;
    margin-top: -3vw;
  }
  .content_photo_on_txt .txtbox .title {
    font-size: 4.5vw;
    line-height: 1.5;
  }
  .content_photo_on_txt .txtbox p {
    font-size: 3.5vw;
    line-height: 1.6;
  }
  .content_photo_on_txt .btn_line_arw {
    text-align: center;
  }
  .content_photo_on_txt .btn_line_arw a {
    font-size: 4vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	/career-debut/index.html
	参加企業の一部を紹介
	content_box

===============================================================*/
.content_box {
  background: #fff;
  padding: 50px;
  -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);
  text-align: center;
  border-radius: 5px;
}

/*	h3	*/
.content_box h3 {
  font-size: 25px;
  line-height: 1.8;
}

/*	h4	*/
.content_box h4 {
  font-size: 20px;
  line-height: 1.8;
}

/*	p	*/
.content_box p {
  font-size: 18px;
  line-height: 2;
}

/*	margin	*/
.content_box * + h3,
.content_box * + h4,
.content_box * + p {
  margin-top: 2em;
}

.content_box h3 + p,
.content_box h3 + h4,
.content_box h4 + p {
  margin-top: 2em;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .content_box {
    padding: 5vw;
    -webkit-box-shadow: 0 0 3vw 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 3vw 0 rgba(0, 0, 0, 0.1);
  }
  /*	h3	*/
  .content_box h3 {
    font-size: 4.2vw;
    line-height: 1.6;
  }
  /*	h4	*/
  .content_box h4 {
    font-size: 4vw;
  }
  /*	p	*/
  .content_box p {
    font-size: 3.5vw;
    line-height: 1.6;
  }
  /*	margin	*/
  .content_box * + h3,
  .content_box * + h4,
  .content_box * + p {
    margin-top: 3vw;
  }
  .content_box h3 + p,
  .content_box h3 + h4,
  .content_box h4 + p {
    margin-top: 3vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	FAQ
	/school/index.html
	section_btn_bar

===============================================================*/
.section_btn_bar {
  padding: 30px 50px;
  text-align: center;
}

.section_btn_bar .btn_bnr a {
  margin: 0 auto;
  display: inline-block;
  color: #fff;
  font-size: 20px;
  line-height: 1;
  padding: 20px 30px;
  min-width: 300px;
  border: solid 1px #fff;
  position: relative;
}

.section_btn_bar .btn_bnr a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
  border: solid 1px #fff;
  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;
}

.section_btn_bar .btn_bnr a:hover {
  text-decoration: none;
  background: #000;
  color: #fff;
  border: solid 1px #000;
}

.section_btn_bar .btn_bnr a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
  border: solid 1px #fff;
  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;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_btn_bar {
    padding: 5vw;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .section_btn_bar .btn_bnr a {
    font-size: 4vw;
    line-height: 1;
    padding: 3vw 5vw;
    min-width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	/education/index.html
	インターンシップのボタン
	bg_photo_link

===============================================================*/
.bg_photo_link {
  position: relative;
  padding: 80px 50px;
  overflow: hidden;
  background-position: center center;
  background-size: cover;
  z-index: 0;
}

.bg_photo_link::after {
  content: "";
  background: inherit;
  -webkit-filter: blur(5px);
  -moz-filter: blur(5px);
  -o-filter: blur(5px);
  -ms-filter: blur(5px);
  filter: blur(5px);
  position: absolute;
  top: -10px;
  left: -10px;
  right: -10px;
  bottom: -10px;
  z-index: -1;
}

.bg_photo_link .btn_bnr a {
  margin: 0 auto;
  display: block;
  color: #fff;
  font-weight: bold;
  font-size: 25px;
  line-height: 1;
  padding: 60px 30px;
  background: rgba(0, 0, 0, 0.7);
  position: relative;
  max-width: 700px;
  text-align: center;
  text-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
  background: rgba(255, 255, 255, 0.8);
  color: #000;
  border-radius: 5px;
}

.bg_photo_link .btn_bnr a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
  border: solid 1px #000;
  width: 10px;
  height: 10px;
  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;
}

.bg_photo_link .btn_bnr a:hover {
  text-decoration: none;
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
}

.bg_photo_link .btn_bnr a:hover::after {
  border: solid 1px #fff;
  border-top: none;
  border-left: none;
}

.bg_photo_link .btn_bnr + .btn_bnr {
  margin-top: 10px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .bg_photo_link {
    padding: 5vw;
  }
  .section_contents .section_inner .bg_photo_link {
    width: calc(100% + 40px);
    margin-left: -20px;
  }
  .bg_photo_link .btn_bnr a {
    font-size: 4vw;
    line-height: 1.4;
    padding: 5vw;
  }
  .bg_photo_link .btn_bnr a::after {
    width: 2vw;
    height: 2vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	/entrance/eligibility.html
	コメントアウト中
	btn_wide

===============================================================*/
.btn_wide {
  max-width: 800px;
  margin: 0 auto;
  margin-top: 80px;
}

.btn_wide a {
  border: solid 1px #ccc;
  border-radius: 3px;
  display: block;
  position: relative;
  font-size: 20px;
  line-height: 1;
  padding: 30px;
  color: #000;
  background: #fff;
}

.btn_wide a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
  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);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.btn_wide a:hover {
  color: #000 !important;
  border: solid 1px #666;
}

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

	/entrance/
	/education/

	フッタ部のローカルナビ
	section_footer_menu

===============================================================*/
.section_footer_menu {
  background: #fff;
  padding: 80px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.section_footer_menu .content_local_contents 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: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-top: -50px;
}

.section_footer_menu .content_local_contents ul li {
  width: 24%;
  margin-right: 1.3%;
  margin-top: 50px;
}

.section_footer_menu .content_local_contents ul li:nth-child(4n) {
  margin-right: 0%;
}
.section_footer_menu .content_local_contents ul li:nth-child(10) {
  margin-top: 24.2px !important;
}

.section_footer_menu .content_local_contents ul li a {
  display: block;
  text-align: center;
  font-size: 16px;
  line-height: 1.6;
  padding-bottom: 10px;
  border-bottom: solid 1px #000;
  color: #000;
}

.section_footer_menu .content_local_contents ul li a:hover {
  text-decoration: none;
  /*  letter-spacing: 0.2em;*/
  /*  transform: scale(1.05);*/
  opacity: 0.6;
}

.section_footer_menu .content_local_contents + .content_bnr_list {
  margin-top: 50px;
}

.section_footer_menu .content_bnr_list img {
  width: 100%;
  height: auto;
}

.section_footer_menu .content_bnr_list 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;
}

.section_footer_menu .content_bnr_list ul li {
  width: 49%;
  margin-top: 25px;
}

.section_footer_menu .content_bnr_list ul li.col3 {
  width: 32%;
}

.section_footer_menu .content_bnr_list ul li a {
  display: block;
  border-radius: 5px;
  overflow: hidden;
}

.section_footer_menu .content_bnr_list ul li a:hover {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
  -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.2);
}

/* タブレット以下 */
@media screen and (max-width: 1220px) {
  .section_footer_menu {
    padding: 50px;
  }
} /* for tablet max-width: 1070px */
/* タブレット以下 */
@media screen and (max-width: 1120px) {
  .section_footer_menu {
    padding: 50px 0;
  }
  .section_footer_menu .content_width {
    padding: 0 50px;
  }
  .section_footer_menu .content_local_contents ul {
    margin-top: -4.67vw;
  }
  .section_footer_menu .content_local_contents ul li {
    margin-top: 4.67vw;
    width: 25%;
    margin-right: 0;
  }
  .section_footer_menu .content_local_contents ul li:nth-child(10) {
    margin-top: 2.59vw !important;
  }
  .section_footer_menu .content_local_contents ul li a {
    font-size: 1.5vw;
  }
  .section_footer_menu .content_local_contents ul li a {
    font-size: 1.3vw;
    letter-spacing: 0;
  }
  .section_footer_menu .content_local_contents + .content_bnr_list {
    margin-top: 4.67vw;
  }
  .section_footer_menu .content_bnr_list ul li {
    margin-top: 2.34vw;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 1000px) {
  .section_footer_menu .content_width {
    padding: 0 30px;
  }
}
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_footer_menu {
    padding: 5vw;
  }
  .section_footer_menu .content_width {
    padding: 0;
  }
  .section_footer_menu .content_local_contents ul {
    margin-top: -5vw;
  }
  .section_footer_menu .content_local_contents ul li {
    width: 50%;
    height: 11vw;
    margin-top: 5vw;
  }
  .section_footer_menu .content_local_contents ul li:nth-child(10) {
    margin-top: 0.2vw !important;
  }
  .section_footer_menu .content_local_contents ul li a {
    font-size: 3vw;
    padding-bottom: 2vw;
    letter-spacing: 0;
  }
  .section_footer_menu .content_local_contents ul li a:hover {
    text-decoration: none;
    letter-spacing: 0;
  }
  .section_footer_menu .content_local_contents + .content_bnr_list {
    margin-top: 5vw;
  }
  .section_footer_menu .content_bnr_list ul li,
  .section_footer_menu .content_bnr_list ul li.col3 {
    margin-top: 3vw;
    width: 100%;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	SP時のヘッダ
	/common/include/page-header.php
	tca_header

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

.tca_header img {
  width: 100%;
  height: auto;
}

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

	header_body

===============================================================*/
.tca_header .header_body {
  text-align: center;
  background: #fff;
  position: relative;
  -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);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.tca_header .header_body .header_body_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;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.tca_header .header_body .logo {
  width: 40%;
  max-width: 415px;
  height: 90px;
  margin-right: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-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-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 1;
}

.tca_header .header_body .logo a {
  display: block;
  width: 100%;
  height: auto;
}

.tca_header .header_nav {
  width: calc(100% - 430px);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  height: 50px;
  vertical-align: top;
}

.header_subnavi {
  position: absolute;
  top: 10px;
  right: calc((100% - 1400px) / 2);
  margin: auto;
  height: 30px;
  padding: 0;
  width: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.header_fixed {
  padding-top: 90px;
}

.header_fixed .header_body {
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 999;
  -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);
}

/* タブレット以下 */
@media screen and (max-width: 1400px) {
  .tca_header .header_body .logo {
    padding-left: 15px;
    height: 70px;
  }
  .tca_header .header_nav {
    width: 100%;
    padding: 0 15px;
    height: 40px;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .header_fixed {
    padding-top: 0;
  }
  .header_fixed .header_body {
    position: static;
  }
  .tca_header .header_body {
    height: 50px;
  }
  .tca_header .header_body .header_body_inner {
    display: block;
    max-height: 50px;
    padding: 0;
  }
  .tca_header .header_body .logo {
    width: 83%;
    max-width: 266px;
    margin-right: auto;
    padding: 0;
    height: 50px;
  }
} /* for SP max-width: $width_sp */
@media screen and (max-width: 320px) {
  .tca_header .header_body .logo {
    width: 83%;
    max-width: 240px;
    margin-right: auto;
    padding: 0;
    height: 50px;
  }
}
/*-------------------------------------------------------------
	header_subnavi	
-------------------------------------------------------------*
.header_subnavi .btns {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
}
.header_subnavi .btns li {
	width: 100px;
	margin-left: 10px;
}
.header_subnavi .btns li a {
	display: block;
	background-color: #fff;
	background-image: url("../images/top/launcher_event.svg");
	background-repeat: no-repeat;
	background-position: 5px center;
	background-size: 22px 22px;
	padding: 5px;
	padding-left: 25px;
	font-size: 14px;
	line-height: 1;
	color: #000;
	border-radius: 2px;
}
.header_subnavi .btns li.event a {
	background-image: url("../images/top/launcher_event.svg");
	background-color: #ff4e4e;
	color: #fff;
}
.header_subnavi .btns li.siryo a {
	background-image: url("../images/top/launcher_siryo.svg");
}
.header_subnavi .btns li.access a {
	background-image: url("../images/top/launcher_access.svg");
}
.header_subnavi .btns li a:hover {
	opacity: 0.7;
	text-decoration: none;
}
/* we are TCA	*
.header_subnavi .btns li.wearetca {
	width: auto;
}
.header_subnavi .btns li.wearetca a {
	display: block;
	color: #fff;
	padding: 5px 10px;
	font-weight: normal;

	background: #693e82;
}
/* ネット出願 *
.header_subnavi .btns li.webentry {
	width: auto;
}
.header_subnavi .btns li.webentry a {
	display: block;
	color: #fff;
	padding: 5px 10px;
	font-weight: bold;
	white-space: nowrap;
	background: #cd0000;
}
.header_subnavi .btns li.webentry {
	position: relative;
}
.header_subnavi .btns li.webentry .sublist {
	position: absolute;
	top: 24px;
	left: 0;
	display: none;
	width: 100%;
	z-index: 999;
}
.header_subnavi .btns li.webentry:hover .sublist {
	display: block;
}
.header_subnavi .btns li.webentry:hover a {
	border-radius: 2px 2px 0 0;
}
.header_subnavi .btns li.webentry .sublist li {
	width: auto;
	margin: 0;
}
.header_subnavi .btns li.webentry .sublist li a {
	border-radius: 0;
}
.header_subnavi .btns li.webentry .sublist li a:hover {
	color: #ffc;
	background: #cf672c;
	opacity: 1;
}
.header_subnavi .btns li.webentry .sublist li:last-child a {
	border-radius: 0 0 2px 2px;
}
/* オンライン・オープンキャンパス *
.header_subnavi .btns li.online_open_campus {
	width: auto;
}
.header_subnavi .btns li.online_open_campus a {
	color: #fff;
	letter-spacing: 0;
	background-image: url("../images/top/launcher_online.svg");
	background-size: 18px auto;
	background-color: #0078c9;
	padding: 5px 10px;
	padding-left: 28px;
}
@keyframes topButton {
	0% { background-position: 0% 50% }
	50% { background-position: 100% 50% }
	100% { background-position: 0% 50% }
}

/* タブレット以下 *
@media screen and (max-width: 1400px) {
.header_subnavi {
	right: 10px;
}
/* 2020/9/28追加 ネットAOエントリー終了後削除 *
.header_subnavi .btns li a {
	font-size: 12px;
	line-height: 14px;
	letter-spacing: 0;
}
}/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {

}/* for SP max-width: $width_sp */
/*===============================================================

	.header_nav 

===============================================================*
.tca_header .header_nav .header_nav_inner .navlist {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content: flex-end;
}
.tca_header .header_nav li {
	position: relative;
	padding: 0;
	border: solid 5px #f00;
}
.tca_header .header_nav a {
	display: block;
  color: #000;
  text-decoration: none;
  text-align: center;
  align-items: center;
  font-size: 14px;
  line-height: 20px;
  white-space: nowrap; /*2020/10/20 無料送迎バスページで開業されるため *
  padding: 15px 15px;
  font-weight: bold;
}
.tca_header .header_nav .panel {
	display: none;
	position: absolute;
	width: 240px;
	background: #fff;
	z-index: 200;
	top: 50px;
	left: 0;
	padding: 0 0;
	box-shadow: 0 20px 20px 0 rgba(0,0,0,0.1);
}
.tca_header .header_nav .entrance .panel {
	left: auto;
	right: 0;
}
.tca_header .header_nav .course .panel {
	display: none;
	position: absolute;
	width: 100%;
	background: #fff;
	z-index: 200;
	top: 90px;
	left: 0;
	padding: 30px 0;
}
.tca_header .header_nav li:hover .panel {
	display: block;
}
.tca_header .header_nav li:hover a {
	background: #fff;
}
/* 2021.3.2 菅追加孫メニュー *
.tca_header .header_nav .havegrandson {
	position: relative;
}
.tca_header .header_nav .small {
	font-size: .7em;
}
.tca_header .header_nav .grandsonlist {
	display: none;
	position: absolute;
	width: 240px;
	background: #fff;
	z-index: 200;
	top: 0;
	right: 100%;
	padding: 0 0;
	box-shadow: 0 20px 20px 0 rgba(0,0,0,0.1);
	z-index: -1;
}
.tca_header .header_nav .grandsonlist.bottom {
	top: auto;
	bottom: 0;
}
.tca_header .header_nav .havegrandson:hover .grandsonlist {
	display: block;
}
/* タブレット以下 *
@media screen and (max-width: 1400px) {
.tca_header .header_nav a {
	padding: 10px 10px;
}
.tca_header .header_nav .header_nav_inner .navlist {
	justify-content:space-between;
}
.tca_header .header_nav li {
	width: calc(100% / 8);
}
.tca_header .header_nav li li {
	width:100%;
}
.tca_header .header_nav .panel {
	top: 40px;
}
}/* for tablet max-width: 1070px *

@media screen and (max-width: 1200px) {
.tca_header .header_nav li {
	width: auto;
}
}	/* for tablet max-width: 1200px *
@media screen and (max-width: 900px) {
.tca_header .header_nav a {
	font-size: 1.5vw;
}
}	/* for tablet max-width: 900px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {

}/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	panel	
-------------------------------------------------------------*
.tca_header .header_nav .panel {
	text-align: left;
}

.tca_header .header_nav .panel .sublist li a {
	text-align: left;
	position: relative;
	padding: 15px 10px;
	font-size: 13px;
	line-height: 1.4;
	font-weight: normal;
	letter-spacing: 0.1px;
}
.tca_header .header_nav .panel .sublist li + li {
	border-top: dashed 1px #ddd;
}
.tca_header .header_nav .panel .sublist li 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;
	transform: rotate(-45deg);
	transition: all 0.3s;
}
.tca_header .header_nav .panel .sublist li a:hover{
	background: #eee;
}
.tca_header .header_nav .panel .sublist li a:hover::after {
	right: 8px;
}
.tca_header .header_nav .panel .sublist li.havegrandson > a::after {
	content:none;
}
/* タブレット以下 *
@media screen and (max-width: 1070px) {

}/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {

}/* for SP max-width: $width_sp */
/*===============================================================

	専攻パネル

===============================================================*
.tca_header .header_nav .course {
	position: inherit;
}
.tca_header .header_nav .course .course_panel {
	width: 100%;
	top: 90px;
}
.tca_header .header_nav .course_menu {
	border-top: solid 1px #ddd;
	margin-top: 20px;
}
.tca_header .header_nav .course_menu {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
	padding-top: 20px;
}
.tca_header .header_nav .course_menu .label {
	width: 70px;
}
.tca_header .header_nav .course_menu .course_nav {
	width: calc(100% - 85px);
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
}
/* タブレット以下 *
@media screen and (max-width: 1400px) {
.tca_header .header_nav .course .course_panel {
	top: 110px;
}
}/* for tablet max-width: 1070px */
/* タブレット以下 *
@media screen and (max-width: 1070px) {
.tca_header .header_nav .course .course_panel .panel_inner {
	padding: 0 20px;
}
}/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {

}/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	文字	
-------------------------------------------------------------*
.tca_header .header_nav .paneltitle {
	font-size: 22px;
	line-height: 1;
}
.tca_header .header_nav .label .year_system {
	font-size: 40px;
	line-height: 1;
	font-weight: bold;
}
.tca_header .header_nav .label .year_system span {
	font-size: 20px;
	line-height: 1;
	font-weight: bold;
}
.tca_header .header_nav .label .skill {
	font-size: 11px;
	line-height: 1;
	padding: 3px 0;
	border: solid 1px #000;
	text-align: center;
	margin-top: 5px;
}
.tca_header .header_nav .world {
	text-align: left;
	border-left: solid 3px #e60012;
	padding-left: 15px;
}
.tca_header .header_nav .world a {
	padding: 0;
	text-align: left;
	display: inline-block;
}
.tca_header .header_nav .world .title a {
	font-size: 15px;
	line-height: 1.2;
}
.tca_header .header_nav .world li {
	padding: 0;
	line-height: 1;
}
.tca_header .header_nav .world li a {
	font-size: 12px;
	line-height: 1.4;
	margin-top: 5px;
	padding: 0;
	font-weight: normal;
}
.tca_header .header_nav .world a:hover {
	background: #ff0;
}
/* タブレット以下 *
@media screen and (max-width: 1070px) {
.tca_header .header_nav .world {
	width:50%;
	margin-top: 20px;
}
.tca_header .header_nav .world:nth-child(1),
.tca_header .header_nav .world:nth-child(2) {
	margin-top: 0;
}
}/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {

}/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	バリエーション	
-------------------------------------------------------------*
.tca_header .header_nav .super_product_design_world {	border-color: #e60012;}
.tca_header .header_nav .super_e_entertainment_world {	border-color: #93176f;}
.tca_header .header_nav .super_comic_world {	border-color: #d65e6c;}
.tca_header .header_nav .car_world {	border-color: #59bded;}
.tca_header .header_nav .design_world {	border-color: #fcc800;}
.tca_header .header_nav .manga_illustration_novel_world {	border-color: #eb6ea5;}
.tca_header .header_nav .game_world {	border-color: #8fc31f;}
.tca_header .header_nav .cg_movie_animation_world {	border-color: #74c6be;}


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

	パンくず
===============================================================*/
.breadcrumb {
  margin: 0 auto;
  padding: 10px 0;
  font-weight: 400;
  color: #000;
  background-color: white;
  background: #f5f5f5;
}

.breadcrumb .content_width {
  position: relative;
  width: 100%;
  margin: 0 50px;
}

.breadcrumb .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.breadcrumb ul {
  width: 72.1495327103%;
  overflow: hidden;
}

.breadcrumb ul li {
  float: left;
  font-size: 11px;
  line-height: 17px;
  list-style-type: none;
  font-weight: bold;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  padding-right: 20px;
  position: relative;
}

.breadcrumb ul li:last-child {
  float: none;
}

.breadcrumb ul li span {
  font-weight: bold;
}

.breadcrumb ul li::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 8px;
  margin: auto;
  border: solid 1px #666;
  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;
}

.breadcrumb ul li:last-child:after {
  content: none;
  padding: 0;
}

.breadcrumb ul li a {
  font-weight: normal;
  color: #666;
  text-decoration: none;
}

.breadcrumb ul li a:hover {
  color: #000;
}

.breadcrumb .btn-public-info {
  display: none;
  /*position: absolute;
     width: 298px;*/
  position: absolute;
  width: 18.69% !important; /* 298/1070*100 */
  right: 0px;
  top: -4px;
  margin-top: -2px;
  left: auto;
  margin-left: auto;
}

.breadcrumb .btn-public-info img {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 1300px) {
  .breadcrumb .content_width {
    margin: 0 25px;
    padding: 0;
  }
} /* for tablet max-width: 1070px */
/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .breadcrumb {
    padding: 10px 0;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .breadcrumb {
    display: none;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	下層ページ　パンクズ直下のh1見出し

===============================================================*/
#h1-midashi {
  color: #000;
  background: #f5f5f5;
  padding: 0 0 5px 0;
  text-align: left;
  margin-top: -10px;
}

#h1-midashi .container {
  width: 100%;
  padding: 0 50px;
}

#h1-midashi img {
  max-width: 680px;
  margin: 0 auto;
}

#h1-midashi .title {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  line-height: 1.8;
  color: #000;
  font-weight: 500;
  letter-spacing: 0.2em;
}

#h1-midashi .title span {
  display: none;
}

/* タブレット以下 */
@media screen and (max-width: 1300px) {
  #h1-midashi {
    margin-top: -10px;
  }
  #h1-midashi .container {
    width: 100%;
    padding: 0 25px;
  }
  #h1-midashi .title {
    font-size: 18px;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  #h1-midashi {
    margin-top: 0;
    padding: 0;
    text-align: center;
  }
  #h1-midashi .container {
    width: 100%;
    padding: 0;
  }
  #h1-midashi .title {
    font-size: 3.5vw;
    line-height: 2.2;
  }
  #h1-midashi .title span {
    display: none;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	フレームフッター
	pagetop

===============================================================*/
#pagetop {
  clear: both;
  padding: 9px 0;
  text-align: center;
  background-color: #ffff00;
}

#pagetop:hover {
  background-color: #f2e500;
}

#pagetop a {
  color: #000;
  display: block;
  font-size: 12px;
  line-height: 24px;
  width: 100%;
  height: 24px;
  position: relative;
}

#pagetop a::before,
#pagetop a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  border: solid 2px #000;
  width: 8px;
  height: 8px;
  border-top: none;
  border-left: none;
  -webkit-transform: rotate(-135deg) translate(0, 0);
          transform: rotate(-135deg) translate(0, 0);
}

#pagetop a::after {
  -webkit-transform: rotate(-135deg) translate(-4px, -4px);
          transform: rotate(-135deg) translate(-4px, -4px);
}

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

	section_footersubnav　フッターサブナビエリア

===============================================================*
.section_footersubnav {
	border-top: 8px solid #ff0;
	background: rgba(0,0,0,0.1)!important;
}

/* タブレット以下 *
@media screen and (max-width: 1070px) {

}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.section_footersubnav {

}

}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	content_subnav
-------------------------------------------------------------*
.content_subnav {
	margin-top: -20px;
}
.content_subnav li {
	float: left;
	width: 31.5%;
	margin-right: 2.75%;
	margin-top: 20px;
}
.content_subnav li:nth-child(3n) {
	margin-right: 0;
}
.content_subnav li a {
	display: block;
	padding: 20px 0;
	color: #666;
	font-size: 15px;
	line-height: 1;
	font-weight: normal;
	text-align: center;
	background: #fff;
	border-radius: 2px;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.05);
}
.content_subnav li a:hover {
	color: #000;
	text-decoration: none;
	background: #fff;
}

/* タブレット以下 *
@media screen and (max-width: 1070px) {

}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.content_subnav {
	margin-top: -10px;
}
.content_subnav li {
	float: none;
	width: 100%;
	margin-right: 0;
	margin-top: 10px;
}
.content_subnav li a {
	padding: 15px 0;
	font-size: 14px;
	line-height: 1;
}

}	/* for SP max-width: $width_sp */
/*===============================================================

	sidenav

===============================================================*
.sidenav {
	position: fixed;
	bottom: 50px;
	/*right: -60px; htmlに直接記載*
	width: 60px;
	list-style: none;
	padding: 0px;
	z-index: 9999;
}
.sidenav li {
	position: relative;
	width: 60px;
	height: 140px;
	overflow: hidden;
}
.sidenav li.pagetop {
	height: 60px;
}
.sidenav li a {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	transition: .2s ease-out;
}
.sidenav li a img {
	width: 120px;
	height: 140px;
}
.sidenav li.pagetop a img {
	width: 60px;
	height: 120px;
}
.sidenav li a:hover {
	right: -60px;
}
.sidenav li.pagetop a:hover {
	top: -60px;
	right: 0;
}
.sidenav li a:hover img {
	opacity: 1;
}
/* タブレット以下 *
@media screen and (max-width: 1070px) {

}/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.sidenav {
	display: none;
}
}/* for SP max-width: $width_sp */
/*===============================================================

	SP固定フッターメニュー
	sp_bottom_menu

===============================================================*/
.sp_bottom_menu {
  position: fixed;
  z-index: 1000;
  bottom: 0;
  width: 100%;
  background-color: white;
  border-top: 2px solid #ffffff;
  background-image: linear-gradient(-45deg, #fff 25%, #eee 25%, #eee 50%, #fff 50%, #fff 75%, #eee 75%, #eee);
  background-size: 4px 4px;
  -webkit-box-shadow: 0px 0px 6px 0px #b3b3b3;
          box-shadow: 0px 0px 6px 0px #b3b3b3;
  -webkit-transition: all 0.8s;
  transition: all 0.8s;
}

.sp_bottom_menu ul li {
  width: 25%;
  width: 16.6%;
  width: 25%;
  padding: 0 3px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  float: left;
  border-left: 2px solid #ffffff;
}

.sp_bottom_menu ul li:last-child {
  border-left: 2px solid #ffffff;
}

.sp_bottom_menu ul li a {
  display: block;
  padding: 0;
}

.fixed-enjoy {
  border: 0px solid #ffffff;
}

.sp_bottom_menu .sns a {
  padding: 10px;
}

/* 2021 0701 */
.sp_bottom_menu ul {
  padding: 1vw;
  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;
}

.sp_bottom_menu ul li {
  width: calc((100% - 2vw) / 3);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}

.sp_bottom_menu ul li a {
  font-size: 3vw;
  text-align: center;
  padding: 2vw;
  background: #fff;
  color: #000;
  border: solid 1px #ddd;
}

.sp_bottom_menu ul li img {
  width: 30%;
  height: auto;
  display: block;
  margin: 0 auto;
}

/* 2023/10/30菅 名称変更対応 */
.sp_bottom_menu ul li.event a {
  font-size: 2.3vw;
  line-height: 3vw;
  padding: 1.4vw 2vw;
}

/* ここまで */
/*===============================================================

	page_nav

===============================================================*
.page_nav {
	background: #f5f5f5;
	border-radius: 3px;
	padding: 20px 10px 20px;
}
.page_nav .icon {
	width: 60px;
	margin: 0 auto;
	display: none;
}
.page_nav .dir_name {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	margin-top: 5px;
}
.page_nav .dir_name span {
	display: block;
	font-size: 10px;
}
.page_nav .dir_name a {
	color: #000;
}
.page_nav .dir_name a:hover {
	color: #666;
	text-decoration: none;
}
.page_nav ul {
	margin-top: 20px;
	border-bottom: dotted 1px #ccc;
}
.page_nav ul li {
	margin-top: 0;
}
.page_nav ul li:first-child {
	margin-top: 0;
}
.page_nav ul li a {
	position: relative;
	color: #333;
	font-size: 13px;
	line-height:1.3;
	font-weight: normal;
	display: block;
	overflow: hidden;
	border-radius: 5px;
	padding: 15px 10px 15px 3px;
	border-top: dotted 1px #ccc;
}
.page_nav ul li a:after {
	content: "";
    position: absolute;
	top: 50%;
	right: 6px;
	width: 4px;
	height: 4px;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	-webkit-transform: rotate(-45deg) translate(50%);
	transform: rotate(-45deg) translate(50%);
	z-index: 1;
	transition: .2s;
}
.page_nav ul li a:hover {
	color: #000;
	background: #fefefe;
	text-decoration: none;
}
.page_nav ul li a:hover:after {
}

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

	.carousel_slider .slider

===============================================================*
.carousel_slider {
	max-height: inherit;
	overflow: hidden;
}
.carousel_slider .slider {
	position:relative;
	opacity: 0;
}
.carousel_slider .slider .slide,
.carousel_slider ul.slick_slider li {
	position:relative;
}
.carousel_slider .slider img {
	width:100%; height: auto;
}
/* タブレット以下 *
@media screen and (max-width: 940px) {

}	/* for tablet max-width: 940px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.carousel_slider {

}
.carousel_slider .slider .slide {
	width:100%;
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	slick-active	
-------------------------------------------------------------*
.slick-slide {
	transition: all 0.2s;
	z-index: -1;
}
.slick-current {
	transform: scale(1,1) translate(0px,0px);
	z-index: 1;
	/*box-shadow: 0 0 20px 0 rgba(0,0,0,0.5);*
}
.slick-current + .slick-active {
}
/* タブレット以下 *
@media screen and (max-width: 1070px) {

}/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.slick-active {
	transition: all 0s;
}
}/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	.carousel_slider .slider .pager
-------------------------------------------------------------*

.carousel_slider .slider .pager {
	position:absolute;
	top:0;
	bottom:0;
	margin:auto;
	width:35px;
	height:110px;
	z-index:5;
}
.carousel_slider .slider .prev {
	left: 0;
}
.carousel_slider .slider .next {
	right: 0;
}
/* タブレット以下 *
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {

}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	.carousel_slider .slider .pager a
-------------------------------------------------------------*
.carousel_slider .slider .pager a {
	display:block;
	width:35px;
	height:110px;
	border-radius:0;
	overflow:hidden;
	text-indent:-1000%;
	position:relative;
	background: rgba(255,255,255,0.8);
	border-radius: 7px 0 0 7px;
}
.carousel_slider .slider .pager a:hover {
	opacity: 0.7;
}
.carousel_slider .slider .pager a:after {
	content:'';
	position:absolute;
	top:0; bottom:0; left:0; right:0; margin:auto;
	border-right:solid 2px #000;
	border-bottom:solid 2px #000;
	width:15px;
	height:15px;
	transform: rotate(-45deg) translate(-2px,-2px);
	transition: all .3s;
}
.carousel_slider .slider .prev a:after {
	transform: rotate(135deg) translate(-2px,-2px);
}
.carousel_slider .slider .pager a:hover:after {
}
.carousel_slider .slider .prev a {
	border-radius: 0 7px 7px 0;
}

/* タブレット以下 *
@media screen and (max-width: 960px) {

}	/* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.carousel_slider .slider .pager {
	width:20px;
	height:60px;
}
.carousel_slider .slider .pager a {
	display:block;
	width:20px;
	height:60px;
	border-radius: 5px 0 0 5px;
}
.carousel_slider .slider .pager a:hover {
	opacity: 0.7;
}
.carousel_slider .slider .pager a:after {
	border-right:solid 1px #000;
	border-bottom:solid 1px #000;
	width:8px;
	height:8px;
}
.carousel_slider .slider .prev a {
	border-radius: 0 5px 5px 0;
}
}	/* for SP max-width: $width_sp */
/*===============================================================

	ドットナビゲーション

===============================================================*
.carousel_slider .slick-dots {
	height: 10px;
	bottom: 20px;
	font-size: 0;
	padding: 0;
}
.carousel_slider .slick-dots li {
	position: relative;
	width: 10px;
	height: 10px;
}
.carousel_slider .slick-dots li button {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 10px;
	height: 10px;
	cursor: pointer;
	background-color: rgba(201, 202, 202, 1);
	border-radius: 50%;
	transition: all 300ms ease-in-out;
	transform: translate(-50%, -50%);
	padding: 0;
}
.carousel_slider .slick-dots li button:hover {
	background-color: rgba(255, 241, 0, 1);
}
.carousel_slider .slick-dots li button:before {
	content: none;
}
.carousel_slider .slick-dots li.slick-active button {
	background-color: rgba(255, 241, 0, 1);
}
.carousel_slider .slick-dotted.slick-slider {
	margin-bottom: 0;
}

/* タブレット以下 *
@media screen and (max-width: 1070px) {

}/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.carousel_slider .slick-dots {
	height: 5px;
	bottom: 10px;
}
.carousel_slider .slick-dots li {
	width: 5px;
	height: 5px;
}
.carousel_slider .slick-dots li button {
	width: 5px;
	height: 5px;
}
}/* for SP max-width: $width_sp */
/*===============================================================

	/index.html
	トップページ、職業図鑑、あなゆめのバナー
	汎用バナーエリア 2カラム、3カラム

===============================================================*/
.section_bnr_container img {
  width: 100%;
  height: auto;
}

.section_2column_bnr img {
  /*	box-shadow: 5px 5px 0 0 rgba(0, 0, 0, .1);*/
  -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: 20px;
}

.section_bnr_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;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: -20px;
}

.section_bnr_container ul li {
  margin-top: 20px;
}

.section_2column_bnr ul li {
  width: 48%;
}

.section_3column_bnr ul li {
  width: 32%;
}

.section_4column_bnr ul li {
  width: 24%;
}

.section_5column_bnr ul li {
  width: 19%;
}

.section_bnr_container a img {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.section_bnr_container a img:hover {
  opacity: 0.7;
}

.section_bnr_container ul:after {
  content: "";
  display: block;
  height: 0;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

.section_3column_bnr ul:after {
  width: 32%;
}

.section_4column_bnr ul:after,
.section_4column_bnr ul:before {
  width: 24%;
}

.section_5column_bnr ul:after,
.section_5column_bnr ul:before {
  width: 19%;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_bnr_container ul li {
    width: 100% !important;
  }
  .section_bnr_container ul li + li {
    margin-top: 10px;
  }
  .section_2column_bnr img {
    border-radius: 3vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	sectionを左右で2カラム

===============================================================*
.section_in_2section {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:space-between;
}
.section_in_2section .section {
	width: 50%;
}

/* タブレット以下 *
@media screen and (max-width: 1070px) {

}/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.section_in_2section .section {
	width: 100%;
}
}/* for SP max-width: $width_sp */
/*===============================================================

	keyframes

===============================================================*
@keyframes view_popup_animation {
    0% {transform: translate(0px, 0px) rotateZ(0deg)}
    25% {transform: translate(2px, 2px) rotateZ(1deg)}
    50% {transform: translate(0px, 2px) rotateZ(0deg)}
    75% {transform: translate(2px, 0px) rotateZ(-1deg)}
    100% {transform: translate(0px, 0px) rotateZ(0deg)}
}

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

	seisaku

===============================================================*
.seisaku {
	padding: 30px;
	background: #eee;
	margin-top: 30px;
	margin-bottom: 10px;
}
.seisaku .title {
	font-size: 20px;
	line-height: 1.5;
}
.seisaku p {
	font-size: 14px;
	line-height: 1.4;
	margin-top: 10px;
}

/* タブレット以下 *
@media screen and (max-width: 1070px) {

}/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {

}/* for SP max-width: $width_sp */
/*===============================================================

	入学ガイド系ページで利用
	/entrance/eligibility.html
	ドット付きリスト

===============================================================*/
.dot_list {
  margin-top: 20px;
}

.dot_list li {
  position: relative;
  padding: 0.5em 0 0 1em;
}

.dot_list li:before {
  content: "・";
  position: absolute;
  top: 0.5em;
  left: 0;
}

/* 一番上 */
.dot_list li:first-child {
  padding-top: 0;
}

.dot_list li:first-child:before {
  top: 0;
}

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

	遅延表示  /common/js/common.js

===============================================================*/
.delay_view {
  -webkit-transform: translate(0, 30px);
          transform: translate(0, 30px);
  opacity: 0.5;
  opacity: 1;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.delay_view.view_active {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  opacity: 1;
}

.delay_view img {
  -webkit-transition: all 1s;
  transition: all 1s;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.delay_view .balloon img,
.delay_view .blog_item img,
.delay_view.view_active img {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.delay_view .fig_box,
.delay_view .thumb,
.delay_view .fitimg {
  overflow: hidden;
}

.delay_view .linkbnr {
  overflow: visible;
}

.delay_view.item_2_1 {
  -webkit-transform: translate(0, 100px);
          transform: translate(0, 100px);
}

.delay_view.item_2_1:nth-child(odd) {
  -webkit-transform: translate(0, 100px);
          transform: translate(0, 100px);
}

.delay_view.view_active.item_2_1,
.delay_view.view_active.item_2_1:nth-child(odd) {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.delay_view .year_system_4 {
  overflow: hidden;
}

.delay_view .year_system_4 li {
  -webkit-transform: translate(0, 100px);
          transform: translate(0, 100px);
  -webkit-transition: -webkit-transform 0.5s;
  transition: -webkit-transform 0.5s;
  transition: transform 0.5s;
  transition: transform 0.5s, -webkit-transform 0.5s;
}

.delay_view .year_system_4 li:nth-child(2) {
  -webkit-transition: -webkit-transform 1s;
  transition: -webkit-transform 1s;
  transition: transform 1s;
  transition: transform 1s, -webkit-transform 1s;
}

.delay_view .year_system_4 li:nth-child(3) {
  -webkit-transition: -webkit-transform 1.5s;
  transition: -webkit-transform 1.5s;
  transition: transform 1.5s;
  transition: transform 1.5s, -webkit-transform 1.5s;
}

.delay_view .year_system_4 li:nth-child(4) {
  -webkit-transition: -webkit-transform 2s;
  transition: -webkit-transform 2s;
  transition: transform 2s;
  transition: transform 2s, -webkit-transform 2s;
}

.delay_view.view_active .year_system_4 li {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .delay_view {
    -webkit-transform: translate(0, 50px);
            transform: translate(0, 50px);
    opacity: 1;
    /*transition:all .8s;*/
  }
  .delay_view.view_active {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
    opacity: 1;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	遅延表示  /common/js/common.js

===============================================================*/
.sp_popbtn a {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

.sp_popbtn.pop_active a {
  -webkit-transform: scale(1.04, 1.04);
          transform: scale(1.04, 1.04);
}

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

	btn_bg_slash

===============================================================*
.btn_bg_slash {
	width: 100%;
}
.btn_bg_slash a {
	display:block;
	/*background: url("/common/images/assets/btn_bg_slash.png");*
	background: #f5f5f5;
	font-size: 16px;
	font-weight: bold;
	line-height: 20px;
	padding: 20px 0;
	text-align: center;
	color: #000;
	/*box-shadow: 0px 2px 0px 0px rgba(0, 0, 0, 0.2);*
	border-radius: 0px;
	letter-spacing: 0.1px;
}
.btn_bg_slash a:hover {
	text-decoration:none;
	opacity: 0.6;
	color: #000 !important;
}
/* タブレット以下 *
@media screen and (max-width: 1070px) {

}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_bg_slash a {
	font-size: 14px;
	padding: 10px 0;
}
}	/* for SP max-width: $width_sp */
/*===============================================================

	古い記述対応

===============================================================*/
#main {
  padding: 24px 0;
}

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

	留学生　企業プロジェクトの流れ
	/visitor/company/index.html
	content_wrp

===============================================================*/
.content_wrp {
  /*	padding: 20px;*/
  letter-spacing: 0.1px;
}

.content_wrp .content_title {
  text-align: left;
  padding: 15px 20px;
  border-radius: 5px;
}

.content_wrp .content_title .title {
  font-size: 25px;
  line-height: 1.3;
}

.content_wrp .content_title .title_s {
  font-size: 20px;
  line-height: 1.3;
}

.content_wrp * + .content_title {
  margin-top: 30px;
}

.content_wrp .content_title .title .small {
  font-size: 12px;
  vertical-align: middle;
}

.content_title .title img {
  width: auto;
  height: 24px;
  vertical-align: top;
  margin-right: 10px;
  margin-top: 2px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .content_wrp {
    padding: 15px;
  }
  .content_wrp .content_title {
    padding: 8px 10px;
  }
  .content_wrp .content_title .title {
    font-size: 4vw;
  }
  .content_wrp .content_title .title_s {
    font-size: 3.5vw;
  }
  .content_wrp .content + .content_title {
    margin-top: 15px;
  }
  .content_wrp .content_title .title .small {
    font-size: 2.5vw;
  }
  .content_title .title img {
    height: 4.5vw;
    margin-right: 2vw;
    margin-top: 0;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	content_wrp

===============================================================*/
.content_wrp * + .content {
  margin-top: 15px;
}

.content_wrp .content_title + .content {
  margin-top: 30px;
}

.content_wrp .flex_container .content {
  margin-top: 15px;
}

.content_wrp .content_headline {
  border-left: solid 3px #5fc1c7;
  padding-left: 15px;
}

.content_wrp .content_headline .title {
  font-size: 24px;
  line-height: 1.4;
}

.content_wrp .content_headline .title_s {
  font-size: 20px;
  line-height: 1.4;
}

.content_wrp .content_headline .read {
  font-size: 20px;
  line-height: 1.4;
  font-weight: bold;
  color: #5fc1c7;
}

.content_wrp .flex_container .item {
  margin-top: 0;
}

.content_wrp * + .flex_container .item {
  margin-top: 15px;
}

.content_wrp .txt_block * + p {
  margin-top: 15px;
}

.content_wrp .txt_block .label {
  background: #fff;
  border: solid 1px #000;
  border-radius: 5px;
  padding: 10px 15px;
  font-size: 20px;
  line-height: 1;
  font-weight: bold;
}

.content_wrp .txt_block .content_headline .title {
  font-size: 20px;
}

.content_wrp * + .content_headline {
  margin-top: 15px;
}

.content_wrp .flow_end {
  text-align: center;
  font-size: 32px;
  line-height: 1;
  font-weight: bold;
  padding: 10px 15px;
  background: #eb6ea5;
  color: #fff;
  border-radius: 5px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .content_wrp * + .content {
    margin-top: 3vw;
  }
  .content_wrp .content_title + .content {
    margin-top: 3vw;
  }
  .content_wrp .content_headline {
    border-left: solid 3px #5fc1c7;
    padding-left: 2.5vw;
  }
  .content_wrp .content_headline .title {
    font-size: 4.2vw;
    line-height: 1.4;
  }
  .content_wrp .content_headline .title_s {
    font-size: 4vw;
    line-height: 1.4;
  }
  .content_wrp .content_headline .read {
    font-size: 3vw;
    margin-top: 1vw;
  }
  .content_wrp .flex_container .item {
    margin-top: 5vw;
  }
  .content_wrp .txt_block * + p {
    margin-top: 3vw;
  }
  .content_wrp .txt_block .label {
    padding: 2vw 3vw;
    font-size: 4vw;
  }
  .content_wrp .txt_block .content_headline .title {
    font-size: 4.5vw;
  }
  .content_wrp * + .content_headline {
    margin-top: 3vw;
  }
  .content_wrp .flow_end {
    font-size: 5vw;
    padding: 2vw 3vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	/education/seminar.html
	/education/career-support.html
	講師紹介、内定者の声
	content_people

===============================================================*/
.content_wrp .content_people {
  background: #fff;
  border-radius: 5px;
  padding: 15px;
}

.content_wrp .fig + .content_people {
  border-radius: 0 0 5px 5px;
}

.content_wrp .txt_block * + .profile {
  margin-top: 20px;
}

.content_wrp .txt_block .profile .name {
  font-weight: bold;
}

.content_wrp .txt_block .profile .name .status {
  font-weight: normal;
}

.content_wrp .txt_block .profile p {
  margin-top: 5px;
  font-size: 12px;
  line-height: 1.4;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .content_wrp .txt_block .profile {
    margin-top: 5vw;
  }
  .content_wrp .txt_block .profile .name {
    font-weight: bold;
    font-size: 3.8vw;
  }
  .content_wrp .txt_block .profile .name .status {
    font-weight: normal;
  }
  .content_wrp .txt_block .profile p {
    margin-top: 0.5vw;
    font-size: 3vw;
    line-height: 1.6;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------

	/education/career-support.html
	TCAの誇るサポートシステムが、あなたを確実に就職へ導きます
	content_flow	

-------------------------------------------------------------*/
.content_flow {
  padding-bottom: 60px;
  position: relative;
}

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

.content_flow.no_arw {
  padding-bottom: 0;
}

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

	TCAの合同企業説明会はココが違う！
	/career-debut/index.html
	merit_list

===============================================================*/
.merit_list {
  padding-top: 10px;
}

.merit_list dt {
  font-size: 18px;
  line-height: 1.4;
  font-weight: bold;
  margin-top: 15px;
  padding-top: 15px;
  border-top: dashed 1px #231815;
}

.merit_list dd {
  padding-top: 5px;
  font-size: 12px;
  line-height: 1.6;
}

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

	/education/career-support.html
	内定者の声
	voice_headline

===============================================================*/
.voice_headline {
  border-bottom: solid 1px #8fc31f;
  padding-bottom: 15px;
}

.voice_headline .title {
  font-size: 15px;
  line-height: 1.2;
}

.voice_headline .sub {
  font-size: 16px;
  line-height: 1.6;
  margin-top: 5px;
  font-weight: bold;
}

.voice_headline .sub + .title {
  margin-top: 5px;
}

.voice_headline .read {
  font-size: 12px;
  line-height: 1.2;
  margin-top: 5px;
}

.voice_headline .name {
  font-size: 18px;
  line-height: 1.2;
  font-weight: bold;
  text-align: right;
  margin-top: 15px;
}

.voice_headline .course {
  font-size: 12px;
  line-height: 1.2;
  font-weight: normal;
  padding-right: 10px;
}

.voice_headline .san {
  font-size: 12px;
  line-height: 1.2;
  font-weight: normal;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .voice_headline {
    padding-bottom: 10px;
  }
  .voice_headline .title {
    font-size: 4.5vw;
    line-height: 1.6;
  }
  .voice_headline .title .title {
    display: block;
    padding-top: 1vw;
  }
  .voice_headline .sub {
    margin-top: 1.5vw;
    font-size: 3.8vw;
  }
  .voice_headline .sub + .title {
    margin-top: 0.5vw;
  }
  .voice_headline .read {
    font-size: 3vw;
    margin-top: 1.5vw;
  }
  .voice_headline .name {
    font-size: 5vw;
    margin-top: 0.5vw;
    text-align: left;
  }
  .voice_headline .name .course {
    font-size: 3vw;
    padding-right: 2.5vw;
  }
  .voice_headline .name .san {
    font-size: 3vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	title_tag	
-------------------------------------------------------------*/
.title_tag {
  background: #fc0;
  color: #fff;
  font-size: 14px;
  line-height: 1;
  padding: 2px 2px 2px 5px;
  border-radius: 3px;
  margin-right: 12px;
  position: relative;
}

.title_tag::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: -12px;
  margin: auto;
  width: 16px;
  height: 16px;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 5px solid #fc0;
  border-right: 5px solid transparent;
  border-width: 8px;
  -webkit-transform: translate(3px, 0);
          transform: translate(3px, 0);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .title_tag {
    background: #fc0;
    color: #fff;
    font-size: 4vw;
    line-height: 1;
    padding: 2px 2vw;
    margin-right: 2vw;
    position: relative;
  }
  .title_tag::after {
    display: none;
  }
  .sub .title_tag {
    font-size: 3.5vw;
    padding: 2px 1.5vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	voice_photo_txt

===============================================================*
.voice_photo_txt {
}
.voice_photo_txt .photo {
	width: 28%;
	float: left;
	margin-top: 15px;
}
.content_wrp .voice_photo_txt * + .content_headline,
.voice_photo_txt .content_headline {
	width: 68%;
	float: right;
	margin-top: 15px;
	margin-bottom: 10px;
}
.voice_txt .content_headline .title ,
.voice_photo_txt .content_headline .title {
	font-size: 15px;
	line-height: 1.6;
}
.voice_photo_txt .voice_txt {
	padding-left: 32%;
}
.voice_txt p {
	font-size: 14px;
	line-height: 1.7;
	letter-spacing: 0.7px;
}
.voice_txt .content_headline .title {
	margin-top: 15px;
	margin-bottom: 15px;
}
.voice_photo {
	margin-top: 15px;
}

/* タブレット以下 *
@media screen and (max-width: 1070px) {

}/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.voice_photo_txt {
}
.voice_photo_txt .photo {
	width: 20%;
	margin-top: 2.5vw;
}
.content_wrp .voice_photo_txt * + .content_headline,
.voice_photo_txt .content_headline {
	width: 76%;
	margin-top: 2.5vw;
	margin-bottom: 0;
}
.voice_txt .content_headline .title ,
.voice_photo_txt .content_headline .title {
	font-size: 4vw;
	line-height: 1.4;
}
.voice_photo_txt .voice_txt {
	clear: both;
	padding-left: 0%;
	padding-top: 2.5vw;
}
.voice_txt p {
	font-size: 3.5vw;
	line-height: 1.6;
}
.voice_txt .content_headline .title {
	margin-top: 4vw;
	margin-bottom: 2.5vw;
}
.voice_photo {
	margin-top: 4vw;
}
}/* for SP max-width: $width_sp */
/*===============================================================

	content_corporation

===============================================================*
.content_corporation .voice_headline {
	border-bottom: 0;
	padding-bottom: 0;
}
.content_wrp .content_corporation .content_headline .title {
	font-size: 20px;
}
.content_wrp .content_corporation .content_headline + p {
	font-size: 14px;
	line-height: 1.6;
	margin-top: 15px;
}
/* タブレット以下 *
@media screen and (max-width: 1070px) {

}/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.content_wrp .content_corporation .content_headline .title {
	font-size: 4vw;
}
.content_wrp .content_corporation .content_headline + p {
	font-size: 3.5vw;
	line-height: 1.6;
	margin-top: 2.5vw;
}
}/* for SP max-width: $width_sp */
/*===============================================================

	/education/internship.html
	/education/w-curriculum.html

	content_list

===============================================================*/
.content_list {
  padding: 15px;
  background: #fff;
  border-radius: 5px;
}

.content_list ul {
  padding: 0;
  border-right: solid 1px #000;
}

.content_list ul:last-child {
  border-right: solid 0px #000;
}

.content_list ul li {
  font-size: 12px;
  line-height: 1.4;
  padding-right: 10px;
  margin-top: 3px;
}

.content_list ul .key_color {
  font-weight: bold;
}

.content_list ul * + .title {
  margin-top: 20px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .content_list .flex_container .col_3_1,
  .content_list .flex_container .col_4_1,
  .content_list .flex_container .col_5_1 {
    width: 50%;
    margin: 0;
  }
  .content_list ul {
    padding: 0;
    border-right: solid 0px #000;
  }
  .content_list ul:nth-child(odd) {
    padding-right: 2vw;
    border-right: solid 1px #000;
  }
  .content_list ul:nth-child(even) {
    padding-left: 2vw;
  }
  .content_list ul li {
    font-size: 2.5vw;
    line-height: 1.4;
    padding-right: 0;
    margin-top: 0.5vw;
  }
  .content_list ul * + .title {
    margin-top: 3vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	背景カラーなど

===============================================================*
/* 背景	*
.section_yellow .bg_color_slash, .bg_color_slash_yellow {
	background-image: repeating-linear-gradient(-45deg, #ffdd03, #ffdd03 6px, #fff49a 0, #fff49a 7px);
  background: #fff49a;
}
.section_blue .bg_color_slash, .bg_color_slash_blue  {
	background-image: repeating-linear-gradient(-45deg, #5fc1c7, #5fc1c7 6px, #a0d7dc 0, #a0d7dc 7px);
  background: #5fc1c7;
}
.section_green .bg_color_slash, .bg_color_slash_green {
	background-image: repeating-linear-gradient(-45deg, #bad245, #bad245 6px, #dde9ad 0, #dde9ad 7px);
  background: #dde9ad;
}
.section_pink .bg_color_slash, .bg_color_slash_pink {
	background-image: repeating-linear-gradient(-45deg, #f2abca, #f2abca 6px, #f6c4d9 0, #f6c4d9 7px);
  background: #e56e9a;
}
.section_purple .bg_color_slash, .bg_color_slash_purple {
	background-image: repeating-linear-gradient(-45deg, #ca9dc4, #ca9dc4 6px, #CFA7CD 0, #CFA7CD 7px);
  background: #ca9dc4;
}
.section_lightblue .bg_color_slash, .bg_color_slash_lightblue {
	background-image: repeating-linear-gradient(-45deg, #7dccf3, #7dccf3 6px, #a3d9f6 0, #a3d9f6 7px);
  background: #a3d9f6;
}


/* 背景色　薄い	*
.section_yellow .content_wrp, .bg_yellow {
	background: #fffcdb;
}
.section_blue .content_wrp, .bg_blue {
	background: #e6f4f5;
}
.section_green .content_wrp, .bg_green  {
	background: #f6f8e3;
}
.section_pink .content_wrp, .bg_pink {
	background: #fdf2f7;
}
.section_purple .content_wrp, .bg_purple {
	background: #F8F2F8;
}
.section_lightblue .content_wrp, .bg_lightblue {
	background: #d4eefb;
}

/* 背景色　濃い	*
.section_yellow .content_wrp .flow_end, .bg_yellow_dark {
	background: #ffdd03;
}
.section_blue .content_wrp .flow_end, .bg_blue_dark {
	background: #5fc1c7;
}
.section_green .content_wrp .flow_end, .bg_green_dark {
	background: #8fc31f;
}
.section_pink .content_wrp .flow_end, .bg_pink_dark {
	background: #eb6ea5;
}
.section_purple .content_wrp .flow_end, .bg_purple_dark {
	background: #CFA7CD;
}

/* 線色	*
.section_yellow .content_list ul,
.section_yellow .content_wrp .voice_headline,
.section_yellow .content_wrp .content_headline {
	border-color: #ffdd03;
}
.section_blue .content_list ul,
.section_blue .content_wrp .voice_headline,
.section_blue .content_wrp .content_headline {
	border-color: #5fc1c7;
}
.section_green .content_list ul,
.section_green .content_wrp .voice_headline,
.section_green .content_wrp .content_headline {
	border-color: #8fc31f;
}
.section_pink .content_list ul,
.section_pink .content_wrp .voice_headline,
.section_pink .content_wrp .content_headline {
	border-color: #f4b4d0;
}
.section_purple .content_list ul,
.section_purple .content_wrp .voice_headline,
.section_purple .content_wrp .content_headline {
	border-color: #CFA7CD;
}

/* 文字色	*
.section_yellow .key_color,
.section_yellow .content_wrp .content_headline .read {
	color: #ffdd03;
}
.section_blue .key_color,
.section_blue .content_wrp .content_headline .read {
	color: #5fc1c7;
}
.section_green .key_color,
.section_green .content_wrp .content_headline .read {
	color: #8fc31f;
}
.section_pink .key_color,
.section_pink .content_wrp .content_headline .read {
	color: #eb6ea5;
}
.section_purple .key_color,
.section_purple .content_wrp .content_headline .read {
	color: #7b558d;
}
.section_lightblue .key_color, 
.section_lightblue .content_wrp .content_headline .read{
	color: #7dccf3;
}



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

	/school/faq.html
	電話番号など
	paperbox　2020/3/10 UPDATE

===============================================================*/
.paperbox {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow: hidden;
}

.paperbox:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
  height: 30px;
  border: 1px solid #000;
  background: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: none;
}

.paperbox_yellow:before {
  background: #fdfe54;
}

.paperbox_red:before {
  background: #b82619;
}

.paperbox:after {
  content: "";
  position: absolute;
  top: -18px;
  right: -18px;
  width: 40px;
  height: 40px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  background: #fff;
  border-bottom: 3px solid #000;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: none;
}

.paperbox .inner {
  border: 0px solid #666;
  padding: 30px;
  border-radius: 3px;
  background: #fff;
  background: #f5f5f5;
  text-align: center;
}

.paperbox .title {
  color: #c60000;
  font-size: 28px;
  line-height: 1.6;
  font-weight: bold;
  text-align: center;
}

.paperbox .title_red {
  color: #c60000;
}

.paperbox .title_icon {
  display: inline-block;
  font-size: 28px;
  line-height: 1.6;
  font-weight: bold;
  text-align: center;
  /*
  	background: url("/common/images/assets/icon_abroad_right.svg") no-repeat center right;
  	background-size: 40px 38px;
  	padding-right: 50px;
  */
}

.paperbox .read {
  font-size: 16px;
  line-height: 1.8;
  font-weight: bold;
  text-align: center;
  margin-top: 15px;
}

.paperbox .detail {
  font-size: 14px;
  line-height: 1.8;
  text-align: center;
  margin-top: 15px;
}

.paperbox .link_red,
.paperbox .link_red:hover {
  color: #c60000;
  font-weight: bold;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .paperbox:before {
    border: 2px solid #000;
  }
  .paperbox:after {
    top: -19px;
    right: -19px;
    border-bottom: 2px solid #000;
  }
  .paperbox .inner {
    border: 1px solid #ccc;
    padding: 5vw;
  }
  .paperbox .title {
    font-size: 4.5vw;
    line-height: 1.4;
  }
  .paperbox .title_icon {
    font-size: 4.5vw;
    line-height: 1.4;
    background-position: bottom right;
    background-size: 15% auto;
  }
  .paperbox .read {
    font-size: 3.5vw;
    line-height: 1.6;
    text-align: left;
    margin-top: 2vw;
  }
  .paperbox .detail {
    font-size: 3.5vw;
    line-height: 1.6;
    text-align: left;
    margin-top: 2vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	contact_box	2020/3/10
-------------------------------------------------------------*/
.contact_box {
  text-align: center;
}

.contact_box .head {
  width: auto;
  margin: 0 auto;
  font-size: 30px;
  line-height: 1;
  font-weight: bold;
  border-bottom: 1px solid #ccc;
  padding-bottom: 15px;
}

.contact_box .tel_only {
  display: inline-block;
  font-size: 60px;
  line-height: 1;
  font-weight: bold;
  background: url("/common/images/assets/icon_freedial_40x25.svg") no-repeat left center;
  background-size: 80px 50px;
  padding-left: 100px;
  margin-top: 25px;
}

.contact_box .read {
  font-size: 20px;
  line-height: 1.4;
  font-weight: bold;
  letter-spacing: 2px;
  margin-top: 0;
}

.contact_box * + .read {
  margin-top: 15px;
}

.contact_box .caption {
  font-size: 16px;
  line-height: 1.4;
  margin-top: 20px;
}

.contact_box .link .tel,
.contact_box .link .mail,
.contact_box .link .fax {
  display: inline-block;
  font-size: 20px;
  line-height: 1.5;
  font-weight: bold;
  margin: 0 10px;
  margin-top: 10px;
}

.contact_box .link .tel {
  background: url("/common/images/assets/icon_freedial_40x25.svg") no-repeat left center;
  background-size: auto 22px;
  padding-left: 45px;
}

.contact_box .link .mail {
  background: url("/common/images/assets/icon_mail_bk.svg") no-repeat left center;
  background-size: auto 22px;
  padding-left: 40px;
}

.contact_box .link .fax {
  background: url("/common/images/assets/icon_fax_bk.svg") no-repeat left center;
  background-size: auto 25px;
  padding-left: 38px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .contact_box {
    text-align: center;
  }
  .contact_box .head {
    width: 100%;
    font-size: 5vw;
    border-bottom: 1px dashed #ccc;
    padding-bottom: 3vw;
  }
  .contact_box .tel_only {
    font-size: 6vw;
    background-size: contain;
    padding-left: 12vw;
    margin-top: 4vw;
  }
  .contact_box .read {
    font-size: 4vw;
    letter-spacing: 2px;
    text-align: center;
  }
  .contact_box * + .read {
    margin-top: 3vw;
  }
  .contact_box .caption {
    font-size: 3.5vw;
    margin-top: 4vw;
  }
  .contact_box .link {
    margin-top: 0;
  }
  .contact_box .link .tel {
    font-size: 6vw;
    padding-left: 11vw;
    margin: 0;
    margin-top: 4vw;
    background-size: auto 60%;
  }
  .contact_box .link .mail {
    font-size: 6vw;
    padding-left: 9.5vw;
    margin: 0;
    margin-top: 2vw;
    background-size: auto 60%;
  }
  .contact_box .link .fax {
    font-size: 6vw;
    padding-left: 11vw;
    margin: 0;
    margin-top: 2vw;
    background-size: auto 90%;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	/visitor/teacher/
	forbox	
-------------------------------------------------------------*/
.forbox {
  text-align: center;
}

.forbox + .forbox {
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px solid #ccc;
}

.forbox .head {
  position: relative;
  font-size: 24px;
  line-height: 1.4;
  font-weight: bold;
  padding-bottom: 0;
}

.forbox .head:after {
  content: "";
  position: absolute;
  width: 100px;
  height: 5px;
  background: #000;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  display: none;
}

.forbox_blue .head {
  color: #4b80b8;
}

.forbox_orange .head {
  color: #f79227;
}

.forbox_green .head {
  color: #94c56b;
}

.forbox .head .icon img {
  width: auto;
  height: 40px;
}

.forbox p {
  font-size: 14px;
  line-height: 1.8;
  margin-top: 20px;
}

.forbox .tel {
  letter-spacing: -0.4em;
  text-align: center;
  margin-top: 20px;
}

.forbox .tel dt {
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  font-size: 14px;
  line-height: 34px;
  padding: 0px 40px;
  background: #4b80b8;
  letter-spacing: normal;
  border-radius: 17px 0 0 17px;
}

.forbox .tel dd {
  display: inline-block;
  vertical-align: middle;
  color: #4b80b8;
  font-size: 20px;
  line-height: 32px;
  font-weight: bold;
  padding: 0px 40px;
  border: 1px solid #4b80b8;
  letter-spacing: normal;
  border-radius: 0 17px 17px 0;
  background: #fff;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .forbox + .forbox {
    margin-top: 15px;
    padding-top: 15px;
  }
  .forbox .head {
    font-size: 4vw;
    line-height: 1.4;
    padding-bottom: 3vw;
  }
  .forbox .head:after {
    height: 3px;
  }
  .forbox .head .icon img {
    width: auto;
    height: 6vw;
  }
  .forbox p {
    font-size: 3.5vw;
    line-height: 1.6;
    text-align: left;
    margin-top: 10px;
  }
  .forbox .tel {
    margin-top: 4vw;
  }
  .forbox .tel dt {
    display: block;
    color: #fff;
    font-size: 4vw;
    line-height: 1;
    padding: 2vw 0;
    border-radius: 0;
  }
  .forbox .tel dd {
    display: block;
    font-size: 4.5vw;
    line-height: 1;
    padding: 2vw 0;
    border-radius: 0;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	矢印部分
-------------------------------------------------------------*/
.forbox_green .arrow_link {
  margin-top: 10px;
}

.forbox_green .arrow_link a {
  position: relative;
  display: block;
  width: 90px;
  background: #94c56b;
  color: #fff;
  font-size: 16px;
  line-height: 1;
  text-decoration: none;
  letter-spacing: -0.08em;
  padding: 5px 0;
  margin: 0 auto;
}

.forbox_green .arrow_link a:hover {
  opacity: 0.8;
}

.forbox_green .arrow_link a:before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border: 20px solid transparent;
  border-left: 20px solid #94c56b;
  top: 0;
  bottom: 0;
  right: -40px;
  margin: auto;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .forbox_green .arrow_link {
    margin-top: 4vw;
  }
  .forbox_green .arrow_link a {
    width: 75px;
    font-size: 14px;
    line-height: 1;
    padding: 5px 0;
  }
  .forbox_green .arrow_link a:before {
    border: 18px solid transparent;
    border-left: 18px solid #94c56b;
    top: 0;
    bottom: 0;
    right: -36px;
    margin: auto;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	/school/faq.html
	faq_box 2020/3/10

===============================================================*/
.content * + .faq_box {
  margin-top: 20px;
}

.faq_box dl {
  border-bottom: solid 1px #ccc;
}

.faq_box dt,
.faq_box dd {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  text-align: left;
  padding: 30px;
}

.faq_box dt {
  min-height: 50px;
  color: #e1716f;
  font-size: 18px;
  font-weight: bold;
  text-align: justify;
  text-justify: inter-ideograph; /*IE*/
  border-top: solid 1px #ccc;
  border-bottom: dashed 1px #ccc;
  padding: 20px 0 20px 50px;
  margin: 0;
}

.faq_box dd {
  font-size: 16px;
  text-align: justify;
  text-justify: inter-ideograph; /*IE*/
  padding: 20px 0 20px 50px;
}

.faq_box dt + dd {
  margin-bottom: 0;
  padding-bottom: 20px;
  border: 0;
}

.faq_box dt + dd:last-child {
  border: none;
  padding-bottom: 20px;
  margin-bottom: 0;
}

.faq_box dt:before,
.faq_box dd:before {
  position: absolute;
  width: 1em;
  top: 17px;
  left: 0;
  text-align: center;
  padding: 0;
  margin: auto;
}

.faq_box dt:before {
  content: "Q";
  width: 30px;
  height: 30px;
  color: #fff;
  font-size: 18px;
  line-height: 30px;
  font-weight: bold;
  background-color: #e1716f;
  border-radius: 50%;
  padding-left: 1px;
}

.faq_box dd:before {
  content: "A";
  width: 30px;
  height: 30px;
  color: #000;
  font-size: 18px;
  line-height: 30px;
  font-weight: bold;
  background-color: #ffff00;
  border-radius: 50%;
  padding-left: 2px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .content * + .faq_box {
    margin-top: 4vw;
  }
  .faq_box dt {
    font-size: 3.8vw;
    padding: 4vw 0 4vw 11vw;
  }
  .faq_box dd {
    font-size: 3.5vw;
    padding: 4vw 0 4vw 11vw;
  }
  .faq_box dt:before,
  .faq_box dd:before {
    width: 8vw;
    height: 8vw;
    font-size: 3.8vw;
    line-height: 8vw;
    border-radius: 50%;
    padding-left: 0;
    top: 3vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	/education/career-support.html
	キャリアセンター4つのポイント
	point_label_box

===============================================================*/
.section .content_bg_white {
  background-color: #fff;
}

.point_label_box .flex_container {
  margin-top: 20px;
}

.content_wrp * + .point_label_box .flex_container .item {
  margin-top: 0;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	.point_label_box .point_icon	
-------------------------------------------------------------*/
.point_label_box .point_icon {
  border: solid 2px #000;
  background: #fff;
  text-align: center;
  position: relative;
}

.point_label_box .point_icon .point {
  font-size: 16px;
  line-height: 30px;
  border-bottom: dotted 2px #000;
}

.point_label_box .point_icon .number {
  font-size: 60px;
  line-height: 80px;
  font-weight: bold;
  color: #eb6ea5;
}

.point_label_box .point_icon:before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 20px;
  height: 20px;
  border: 2px solid #000;
  background: #eb6ea5;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.point_label_box .point_icon:after {
  content: "";
  position: absolute;
  bottom: -12px;
  right: -7px;
  width: 20px;
  height: 30px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  background: #fdf2f7;
  border-left: 2px solid #000;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .point_label_box .point_icon .point {
    font-size: 14px;
    line-height: 25px;
  }
  .point_label_box .point_icon .number {
    font-size: 40px;
    line-height: 60px;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .point_label_box .point_icon .point {
    font-size: 2vw;
    line-height: 4vw;
  }
  .point_label_box .point_icon .number {
    font-size: 5vw;
    line-height: 8vw;
  }
  .point_label_box .point_icon:before {
    width: 10px;
    height: 10px;
  }
  .point_label_box .point_icon:after {
    bottom: -6px;
    right: -4px;
    width: 10px;
    height: 15px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	career_title
-------------------------------------------------------------*/
.career_title_wrp {
  margin-top: 20px;
}

.career_title {
  font-size: 50px;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

.career_title span {
  font-size: 70px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .career_title {
    font-size: 6vw;
  }
  .career_title span {
    font-size: 10vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	point_label_box
-------------------------------------------------------------*/
.point_icon {
  width: 100px;
  height: auto;
  float: left;
}

.point_txt_wrp {
  margin-left: 103px;
}

.point_label_box .point_sub_title {
  font-size: 20px;
  line-height: 1.2;
  padding: 10px 0 10px 20px;
}

.point_label_box .point_title {
  font-size: 40px;
  line-height: 1.2;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  padding: 0 0 0 20px;
}

.point_label_box .caption {
  font-size: 14px;
  padding-left: 20px;
  padding-top: 20px;
  margin-left: 103px;
  border-top: 1px solid #000;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .point_icon {
    width: 80px;
  }
  .point_label_box .caption,
  .point_txt_wrp {
    margin-left: 83px;
  }
  .point_label_box .point_sub_title {
    font-size: 18px;
    line-height: 1.2;
    padding: 10px 0 0 15px;
  }
  .point_label_box .point_title {
    font-size: 30px;
    padding: 10px 0 10px 15px;
  }
  .point_label_box .caption {
    padding-left: 15px;
    padding-top: 15px;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .point_icon {
    width: 50px;
  }
  .point_txt_wrp {
    margin-left: 60px;
    padding-top: 1.5vw;
  }
  .point_label_box .point_sub_title {
    font-size: 3vw;
    padding: 0 0 5px 0;
  }
  .point_label_box .point_title {
    font-size: 5vw;
    padding: 0 0 0 0;
  }
  .point_label_box .caption {
    padding: 3vw 0 0 0;
    margin-left: 0;
    clear: both;
    font-size: 3.5vw;
  }
  .point_label_box .item .photo {
    margin-top: 20px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	/education/overseas-training.html
	/education/internship.html

	bold_corner_box

===============================================================*/
.bold_corner_box {
  position: relative;
  padding: 40px;
  border: 2px dotted #ea5514;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.bold_corner_box:before {
  content: "";
  position: absolute;
  top: -3px;
  left: -3px;
  width: 20px;
  height: 20px;
  border-top: 4px solid #ea5514;
  border-bottom: 0px solid transparent;
  border-left: 4px solid #ea5514;
  border-right: 0px solid transparent;
}

.bold_corner_box:after {
  content: "";
  position: absolute;
  top: -3px;
  right: -3px;
  width: 20px;
  height: 20px;
  border-top: 4px solid #ea5514;
  border-bottom: 0px solid transparent;
  border-left: 0px solid transparent;
  border-right: 4px solid #ea5514;
}

.bold_corner_box .inner:before {
  content: "";
  position: absolute;
  bottom: -3px;
  left: -3px;
  width: 20px;
  height: 20px;
  border-top: 0px solid transparent;
  border-bottom: 4px solid #ea5514;
  border-left: 4px solid #ea5514;
  border-right: 0px solid transparent;
}

.bold_corner_box .inner:after {
  content: "";
  position: absolute;
  bottom: -3px;
  right: -3px;
  width: 20px;
  height: 20px;
  border-top: 0px solid transparent;
  border-bottom: 4px solid #ea5514;
  border-left: 0px solid transparent;
  border-right: 4px solid #ea5514;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .bold_corner_box {
    padding: 15px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	head txt	
-------------------------------------------------------------*/
.bold_corner_box .head {
  font-size: 28px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  padding-bottom: 15px;
  border-bottom: 3px solid #ea5514;
}

.bold_corner_box .txt {
  padding-top: 20px;
}

.bold_corner_box .txt p {
  font-size: 14px;
  line-height: 2;
  font-weight: bold;
  text-align: center;
}

.bold_corner_box .txt p .l {
  font-size: 18px;
}

.bold_corner_box .txt p .orange {
  color: #ea5514;
}

.bold_corner_box .txt .caution {
  font-size: 10px;
  line-height: 1.5;
  font-weight: normal;
  text-align: right;
  margin-top: 20px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .bold_corner_box .head {
    font-size: 5vw;
    line-height: 1.4;
    padding-bottom: 10px;
  }
  .bold_corner_box .txt {
    padding-top: 15px;
  }
  .bold_corner_box .txt p {
    font-size: 3.5vw;
    line-height: 1.7;
    text-align: left;
  }
  .bold_corner_box .txt p .l {
    font-size: 4vw;
  }
  .bold_corner_box .txt .caution {
    font-size: 2.5vw;
    text-align: left;
    margin-top: 1vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	title_underline
-------------------------------------------------------------*
.title_underline {
	margin: 0 auto;
	text-align: center;
}
.title_underline .title {
	display: inline-block;
	font-size: 36px;
	font-weight: bold;
	border-bottom: 3px dotted #000;
	padding-bottom: 3px;
}
.title_underline .title + .underline_txt {
	margin-top: 20px;
	font-size: 16px;
	line-height: 2.0;
	font-weight: bold;
	text-align: center;
}
.section_lightblue .txt_color {
	color: #7dccf3;
}

/* タブレット以下 *
@media screen and (max-width: 1070px) {

}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.title_underline .title {
	font-size: 6.5vw;
	line-height: 1.2;
}
.title_underline .title + .underline_txt  {
	font-size: 3vw;
	text-align: left;
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	check_box
-------------------------------------------------------------*
.checkbox li{
	position:relative;
	font-size: 15px;
	font-weight: bold;
	padding-left:24px;
	margin-top: 5px;
}
.checkbox li:first-child{
	margin-top:0;
}
.checkbox li:before,
.checkbox li:after{
	content:"";
	display:block;
	position:absolute;
}
.checkbox li:before{
	width:14px;
	height:14px;
	background:#ffffff;
  border:2px solid #000000;
	left:0;top:2px;
}
.checkbox li:after{
	border-left:3px solid #7dccf3;
	border-bottom:3px solid #7dccf3;
	width:11px;
	height:5px;
	-webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
	left:6px;
	top:3px;
}
/* タブレット以下 *
@media screen and (max-width: 1070px) {

}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {

}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------

	/education/w-curriculum.html
	Wカリキュラムの事例
	case_box
-------------------------------------------------------------*/
.case_box .item {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 3px solid #7dccf3;
}

.case_box .box_title {
  text-align: center;
  padding: 10px 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.section_lightblue .case_box .box_title {
  background-color: #7dccf3;
  color: #fff;
}

.box_content {
  background-color: #fff;
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.case_box .box_wrp {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  border-radius: 5px;
  padding: 10px;
}

.section_lightblue .case_box .box_wrp {
  background-color: #7dccf3;
  color: #000;
}

.case_box .box_wrp span {
  font-size: 12px;
}

.case_box .box_border {
  border-top: 1px dotted #7dccf3;
}

.case_box .box_border p {
  padding: 20px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .case_box .flex_container .item + .item {
    margin-top: 8vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	label tag
-------------------------------------------------------------*/
.case_box .label {
  position: absolute;
  top: -34px;
  left: -6px;
  font-size: 10px;
  font-weight: bold;
  color: #7dccf3;
}

.case_box .tag {
  position: absolute;
  top: -20px;
  left: -10px;
  width: 40px;
  height: 40px;
  background: #fff100;
  border: 2px solid #7dccf3;
  border-radius: 50%;
  color: #7dccf3;
  font-size: 18px;
  line-height: 36px;
  text-align: center;
  font-weight: bold;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .case_box .label {
    top: -24px;
    left: -6px;
  }
  .case_box .tag {
    top: -10px;
    left: -10px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	+ icon
-------------------------------------------------------------*/
.case_box .icon {
  position: relative;
  width: 20px;
  height: 20px;
  margin: 5px auto;
}

.case_box .icon::before,
.case_box .icon::after {
  position: absolute;
  top: 9px;
  left: 50%;
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  border-top: 5px solid #000;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.case_box .icon:after {
  top: 1px;
  left: -5px;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

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

	/career-debut/debut-results.html
	section_local_nav_btns

===============================================================*/
.section_local_nav_btns {
  padding: 50px 0;
  background: #f5f5f5;
}

.section_local_nav_btns .flex_container {
  margin-top: -30px;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .section_local_nav_btns {
    padding: 30px;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_local_nav_btns .flex_container {
    margin-top: -20px;
  }
  .section_local_nav_btns {
    padding: 20px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	btnlist	
-------------------------------------------------------------*/
.section_local_nav_btns .btnlist a {
  display: block;
  color: #000;
  font-size: 14px;
  line-height: 1.2;
  font-weight: bold;
  padding: 20px 20px;
  border: solid 1px #ccc;
  position: relative;
  background: #fff;
  border-radius: 5px;
}

.section_local_nav_btns .btnlist a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  margin: auto;
  border: solid 1px #333;
  width: 6px;
  height: 6px;
  border-top: none;
  border-left: none;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.section_local_nav_btns .btnlist a:hover {
  text-decoration: none;
  color: #000;
}

.section_local_nav_btns .btnlist a:hover::after {
  right: 10px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_local_nav_btns .btnlist a {
    font-size: 3vw;
    line-height: 1.2;
    padding: 3vw;
  }
  .section_local_nav_btns .btnlist a::after {
    right: 2vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	btn_arw_round

===============================================================*
.btn_arw_round {
	width:100%;
}
.btn_arw_round a {
	position:relative;
	display:block;
	background-color:#e61e19;
	text-align:center;
	color:#fff;
	font-size:14px;
	line-height:20px;
	font-weight:bold;
	padding:15px 0;
	border-radius:6px;
}
.btn_arw_round a:after {
	position:absolute;
	content:" ";
	width:5px; height:5px;
	top:0; left:auto; bottom:0; right:15px;
	margin:auto;
	border-top:solid 2px #fff;
	border-left:solid 2px #fff;
	transform: rotate(135deg);
}
.btn_arw_round a:hover {
	text-decoration:none;
}


.btn_arw_round_blue a {
	background-color: #4a84be;
	border: 1px solid #4a84be;
}
.btn_arw_round_blue a:hover {
	border: 1px solid #4a84be;
	background-color: #fff;
	color: #4a84be;
}
.btn_arw_round_blue a:hover:after {
	border-top:solid 2px #4a84be;
	border-left:solid 2px #4a84be;
}

.btn_arw_round_orange a {
	background-color: #eeb718;
	border: 1px solid #eeb718;
}
.btn_arw_round_orange a:hover {
	border: 1px solid #eeb718;
	background-color: #fff;
	color: #eeb718;
}
.btn_arw_round_orange a:hover:after {
	border-top:solid 2px #eeb718;
	border-left:solid 2px #eeb718;
}


.btn_arw_round_pink a {
	background-color: #ea6d9f;
	border: 1px solid #ea6d9f;
}
.btn_arw_round_pink a:hover {
	border: 1px solid #ea6d9f;
	background-color: #fff;
	color: #ea6d9f;
}
.btn_arw_round_pink a:hover:after {
	border-top:solid 2px #ea6d9f;
	border-left:solid 2px #ea6d9f;
}

.btn_arw_round_yellowgreen a {
	background-color: #c2d84e;
	border: 1px solid #c2d84e;
}
.btn_arw_round_yellowgreen a:hover {
	border: 1px solid #c2d84e;
	background-color: #fff;
	color: #c2d84e;
}
.btn_arw_round_yellowgreen a:hover:after {
	border-top:solid 2px #c2d84e;
	border-left:solid 2px #c2d84e;
}

.btn_arw_round_green a {
	background-color: #34ada9;
	border: 1px solid #34ada9;
}
.btn_arw_round_green a:hover {
	border: 1px solid #34ada9;
	background-color: #fff;
	color: #34ada9;
}
.btn_arw_round_green a:hover:after {
	border-top:solid 2px #34ada9;
	border-left:solid 2px #34ada9;
}

.btn_arw_round_yellow a {
	background-color: #ffff00;
	border: 1px solid #ffff00;
	color: #000;
}
.btn_arw_round_yellow a:after {
	border-top:solid 2px #000;
	border-left:solid 2px #000;
}
.btn_arw_round_yellow a:hover {
	border: 1px solid #ffff00;
	background-color: #fff;
	color: #000;
}

/* タブレット以下 *
@media screen and (max-width: 1070px) {

}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {

}	/* for SP max-width: $width_sp */
/*===============================================================

	section_career

===============================================================*
.section .content_bg_white {
	background-color: #fff;
}

.section .bg_color_blue {
	background-image: none;
	background-color: #4a84be;
	color: #fff;
}
.section .bg_color_orange {
	background-color: #eeb718;
	color: #fff;
}
.section .bg_color_pink {
	background-color: #ea6d9f;
	color: #fff;
}
.section .bg_color_yellowgreen {
	background-color: #c2d84e;
	color: #fff;
}
.section .bg_color_green {
	background-color: #34ada9;
	color: #fff;
}
.section .bg_color_yellow {
	background-color: #ffff00;
	color: #000;
}
/* タブレット以下 *
@media screen and (max-width: 1070px) {

}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {

}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	dot_title
-------------------------------------------------------------*
.dot_title {
	font-size: 17px;
	font-weight: 600;
	padding-bottom: 4px;
	border-bottom: dotted 3px #4A84BE;
	color: #4A84BE;
}


/* タブレット以下 *
@media screen and (max-width: 1070px) {

}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {

}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	carrer_list
-------------------------------------------------------------*
.career_list ul {
	margin-top: 20px;
}
.career_list li { 
	display: inline-block;
	width:30%;
	margin-right:4%; 
	margin-bottom: 18px;
	vertical-align: top;
	font-size: 13px;
}
.career_list li span {
	font-size: 11px;
}
.career_list li:nth-child(3n) {
	margin-right: 0;
}



/* タブレット以下 *
@media screen and (max-width: 1070px) {

}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.career_list li { 
	display: inline-block;
	width:45%;
	margin-right:4%; 
}
.career_list li:nth-child(3n) {
	margin-right: 4%;
}
.career_list li:nth-child(2n) {
	margin-right: 0;
}
.career_list li:nth-child(2n+1) {
	clear:both;
}
}	/* for SP max-width: $width_sp */
/*===============================================================

	page_header

===============================================================*
.page_header {
}

/* タブレット以下 *
@media screen and (max-width: 1070px) {

}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {

}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	label	
-------------------------------------------------------------*
.page_header .label {
	display:flex;
	flex-direction:row;
	flex-wrap:wrap;
	justify-content:flex-start;
	align-items: center;
}
.page_header .label .icon {
	width: 50px;
	height: 50px;
	box-sizing: border-box;
	border: solid 3px #ffe200;
	border-radius: 50%;
	position: relative;
	z-index: 2;
	background: #fff;
}
.page_header .label .icon img {
	width:100%; height: auto;
}
.page_header .label .label_title {
	background: #ffe200;
	padding: 5px 20px 5px 20px;
	box-sizing: border-box;
	border-radius: 0 15px 15px 0;
	font-size: 18px;
	line-height: 20px;
	margin-left: -10px;
	position: relative;
	z-index: 1;
	vertical-align:middle;
}
.page_header .label .label_title .sub {
	font-size: 10px;
	font-weight: normal;
	vertical-align:middle;
	margin-left: 10px;
	position: relative;
	z-index: 2;
	letter-spacing: 0.1px;
}
.page_header .label .label_title .sub::after {
	content:'';
	position:absolute;
	top: 0; bottom: 0; left: 0; right: 0;
	margin: auto;
	background: #fff;
	width:100%;
	height:6px;
	z-index: -1;
}

/* タブレット以下 *
@media screen and (max-width: 1070px) {

}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.page_header .label .icon {
	width: 16vw;
	height: 16vw;
	margin-left: -2.2vw;
}
.page_header .label .label_title {
	padding: 2.5vw 8vw;
	box-sizing: border-box;
	border-radius: 0 15px 15px 0;
	font-size: 4.5vw;
	line-height: 1.2;
	margin-left: -5.5vw;
	position: relative;
	z-index: 1;
	vertical-align:middle;
	width: calc(100% - 9vw);
}
.page_header .label .label_title .sub {
	font-size: 2.5vw;
	margin-left: 0;
	display: block;
	padding-top: 0.5vw;
}
.page_header .label .label_title .sub::after {
	display: none;
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	バリエーション
-------------------------------------------------------------*
.page_header_yellow .label .icon {
	border-color: #ffe200;
}
.page_header_yellow .label .label_title {
	background: #ffe200;
}
.page_header_green .label .icon {
	border-color: #c2d84e;
}
.page_header_green .label .label_title {
	background: #c2d84e;
}
.page_header_pink .label .icon {
	border-color: #f3b3cf;
}
.page_header_pink .label .label_title {
	background: #f3b3cf;
}
.page_header_blue .label .icon {
	border-color: #5fc1c7;
}
.page_header_blue .label .label_title {
	background: #5fc1c7;
}

/*-------------------------------------------------------------
	page_header txt	
-------------------------------------------------------------*
.page_header .txt {
	padding: 0 15px;
	margin-top: 10px;
}
.page_header .title {
	font-size: 30px;
	line-height: 1.4;
}
.page_header p {
	line-height: 1.6;
	letter-spacing: 0.1px;
	font-feature-settings: "palt";
}
.page_header * + p {
	margin-top: 15px;
}
/* タブレット以下 *
@media screen and (max-width: 1070px) {

}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.page_header .txt {
	padding: 0 0;
	margin-top: 2.5vw;
}
.page_header .title {
	font-size: 4.8vw;
}
.page_header * + p {
	margin-top: 3vw;
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	page_header .photo	
-------------------------------------------------------------*
.page_header .photo {
	margin-top: 30px;
}
.page_header .photo img {
	width:100%; height: auto;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .page_header .photo {
    margin-top: 3vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	/feature/high_school_1st_2nd/index.html
	/information/oshigoto-viking/index.html

	プロとして活躍する卒業生など、古いタイプの下層ページのメインビジュアル

===============================================================*/
#page_mainvisual {
  position: relative;
  width: 100%;
  padding-top: 45.625%;
}

#page_mainvisual .container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("/education/common/images/education_top_mainvisual.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  padding: 0;
}

#page_mainvisual .container .content_width {
  position: relative;
  height: 100%;
}

#page_mainvisual .container .catch {
  position: absolute;
  top: 13%;
  left: 0;
  width: 100%;
  font-size: 2.3vw;
  line-height: 1.5;
  font-weight: bold;
  letter-spacing: 0.06em;
  text-shadow: 0 0 5px rgba(255, 255, 255, 0.8);
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  #page_mainvisual .container .catch {
    padding: 0 20px;
    font-size: 3.8vw;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  #page_mainvisual {
    padding-top: 100%;
  }
  #page_mainvisual .container {
    background-image: url("../images/education_top_mainvisual_sp.jpg");
  }
  #page_mainvisual .container .catch {
    top: 7.5%;
    left: 8.75%;
    font-size: 4.8vw;
    padding: 0;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	page_mainvisual （2021/8/5）

===============================================================*/
.page_mainvisual {
  position: relative;
  padding-bottom: 80px;
  /*  text-align: center;*/
}

.page_mainvisual .photo {
  width: 100%;
}

.page_mainvisual .photo img {
  width: 100%;
  height: 600px;
  -o-object-fit: cover;
     object-fit: cover;
  font-family: "object-fit:cover;";
}

.page_mainvisual .txtbox {
  position: absolute;
  max-width: 750px;
  width: 50%;
  background: #fff;
  z-index: 5;
  right: 0;
  bottom: 20px;
  border-radius: 5px 0 0 5px;
  -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);
  text-align: left;
}

.page_mainvisual .txtbox .box_inner {
  position: relative;
  padding: 40px 40px;
}

.page_mainvisual .title {
  font-size: 30px;
  font-weight: bold;
  padding: 10px;
}

.page_mainvisual p {
  font-size: 17px;
  padding: 10px;
}

.page_mainvisual .scroll_txt {
  position: absolute;
  top: 0;
  bottom: 0;
  right: -30px;
  margin: auto;
  font-size: 8px;
  line-height: 20px;
  font-weight: bold;
  width: 100px;
  height: 20px;
  border-bottom: solid 1px #000;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

.page_mainvisual .scroll_arw {
  position: relative;
}

.page_mainvisual .scroll_arw::after {
  content: "";
  position: absolute;
  bottom: -3px;
  right: -2px;
  margin: auto;
  width: 14px;
  height: 1px;
  background: #000;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

/* タブレット以下 */
@media screen and (max-width: 1300px) {
  .page_mainvisual .txtbox {
    width: 75%;
  }
  .page_mainvisual .txtbox .box_inner {
    position: relative;
    padding: 30px;
  }
  .page_mainvisual .title {
    font-weight: bold;
    padding: 8px;
  }
  .page_mainvisual p {
    padding: 8px;
  }
} /* for tablet max-width: 1070px */
/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .page_mainvisual .txtbox {
    bottom: -5vw;
  }
  .page_mainvisual .txtbox .box_inner {
    padding: 3vw;
  }
  .page_mainvisual .title {
    font-size: 3vw;
    padding: 1vw;
  }
  .page_mainvisual p {
    font-size: 1.8vw;
    padding: 1vw;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .page_mainvisual {
    padding-bottom: 5vw;
  }
  .page_mainvisual .photo {
    position: relative;
    z-index: 1;
  }
  .page_mainvisual .photo img {
    width: 100%;
    height: 65vw;
    position: relative;
    z-index: -1;
  }
  .page_mainvisual .txtbox {
    position: relative;
    z-index: 5;
    width: 90vw;
    margin: 0 0 0 auto;
    margin-top: -10vw;
    /*  border-radius: 5px;*/
    bottom: 0;
  }
  .page_mainvisual .txtbox .box_inner {
    position: relative;
    padding: 5vw;
  }
  .page_mainvisual .title {
    font-size: 4.5vw;
  }
  .page_mainvisual p {
    font-size: 3.5vw;
  }
  .page_mainvisual .scroll_txt {
    display: none;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	delay_block

===============================================================*/
.page_mainvisual .photo,
.page_mainvisual .photo,
.page_mainvisual .title,
.page_mainvisual p {
  position: relative;
  display: inline-block;
  color: transparent;
  background: #f5f5f5;
}

.page_mainvisual .photo::after,
.page_mainvisual.show .photo::after,
.page_mainvisual .title::after,
.page_mainvisual p::after,
.page_mainvisual.show p::after,
.page_mainvisual.show .title::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #ff0;
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  -webkit-transition: all 0.4s cubic-bezier(0.51, -0.01, 0.21, 1.01);
  transition: all 0.4s cubic-bezier(0.51, -0.01, 0.21, 1.01);
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffff00+0,d3ff89+100 */
  background: #ffff00; /* Old browsers */ /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #ffff00 0%, #d3ff89 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#ffff00", endColorstr="#d3ff89",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background: #ffff00; /* Old browsers */
}

.page_mainvisual .photo img {
  position: relative;
  z-index: 1;
  opacity: 0;
}

/*.page_mainvisual .photo,*/
.page_mainvisual .photo::after {
  width: 100%;
  height: 100%;
  background: #666;
  z-index: 1;
}

.page_mainvisual p::after,
.page_mainvisual.show p::after {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#efff89+0,00ffd0+100 */
  background: #efff89; /* Old browsers */ /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #efff89 0%, #00ffd0 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#efff89", endColorstr="#00ffd0",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background: #ffff00; /* Old browsers */
}

.page_mainvisual .photo::after,
.page_mainvisual.show .photo::after {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#89ff9f+0,faff00+100 */
  background: #89ff9f; /* Old browsers */ /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(135deg, #89ff9f 0%, #faff00 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#89ff9f", endColorstr="#faff00",GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
  background: #ffff00; /* Old browsers */
}

.page_mainvisual .photo::after,
.page_mainvisual .title::after,
.page_mainvisual p::after {
  width: 0%;
}

/* 表示　*/
.page_mainvisual.show .photo::after,
.page_mainvisual.show p::after,
.page_mainvisual.show .title::after {
  width: 100%;
}

.page_mainvisual.show.done .photo img {
  position: relative;
  z-index: 1;
  opacity: 1;
}

/* 表示　*/
.page_mainvisual.done.show .photo,
.page_mainvisual.done.show p,
.page_mainvisual.done.show .title {
  color: #000;
  background: transparent;
}

.page_mainvisual.done.show .photo::after,
.page_mainvisual.done.show p::after,
.page_mainvisual.done.show .title::after {
  left: auto;
  right: 0;
  width: 0%;
}

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

	/visitor/abroad/
	留学生系ページ
	icon_headline

===============================================================*/
.icon_headline {
  position: relative;
  text-align: center;
  padding: 40px 0 20px;
}

.icon_headline:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100px;
  height: 3px;
  background: #000;
}

.icon_headline .title {
  display: inline-block;
  vertical-align: bottom;
  font-size: 28px;
  line-height: 1.4;
  font-weight: bold;
}

.icon_headline .icon_tca {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  display: block;
}

.icon_headline .icon_tca img {
  width: 75px;
  height: auto;
}

.icon_headline .icon_left img {
  width: 60px;
  height: auto;
  margin-right: 20px;
}

.icon_headline .icon_right img {
  width: 60px;
  height: auto;
  margin-left: 20px;
}

.icon_headline + p {
  margin-top: 1.5em;
  text-align: center;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .icon_headline {
    position: relative;
    text-align: center;
    padding: 9vw 0 4vw;
  }
  .icon_headline:after {
    width: 20vw;
    height: 2px;
  }
  .icon_headline .title {
    font-size: 5vw;
  }
  .icon_headline .icon_tca img {
    width: 15vw;
    height: auto;
  }
  .icon_headline .icon_left img {
    width: 10vw;
    margin-right: 1vw;
  }
  .icon_headline .icon_right img {
    width: 10vw;
    margin-left: 1vw;
  }
  .icon_headline + p {
    text-align: left;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	/visitor/alum/
	卒業生の方へ　証明書発行
	document

===============================================================*/
.section_gray {
  background-image: repeating-linear-gradient(-45deg, #e9e9e9, #e9e9e9 6px, #f9f9f9 0, #f9f9f9 7px);
  background: #f5f5f5;
}

.section_gray .content_wrp {
  background: none;
}

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

.indent_list {
  margin-top: 20px;
}

.indent_list li {
  padding-left: 1em;
  font-size: 14px;
  line-height: 1.4;
  margin-top: 5px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .indent_list {
    margin-top: 3vw;
  }
  .indent_list li {
    padding-left: 1em;
    font-size: 3.5vw;
    margin-top: 2vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	document_headline
-------------------------------------------------------------*/
.document_headline .title img {
  width: 70px;
  height: 49px;
  margin-bottom: 20px;
}

.document_headline .title_wrp {
  margin: 0 auto;
  text-align: center;
}

.document_headline .title_wrp .title {
  display: inline-block;
  color: #000;
  font-size: 30px;
  line-height: 1;
  text-align: center;
  margin: 0 auto;
  padding: 0 10px;
  vertical-align: top;
}

.document_headline .title_wrp .left {
  display: inline-block;
  width: 85px;
  height: 94px;
  vertical-align: top;
  margin-top: 25px;
}

.document_headline .title_wrp .right {
  display: inline-block;
  width: 75px;
  height: 83px;
  vertical-align: top;
  margin-top: 25px;
}

.document_headline .title_wrp .underline {
  width: 100px;
  border-top: 3px solid #000;
  margin: 0 auto;
  margin-top: 8px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .document_headline .title img {
    width: 50px;
    height: auto;
  }
  .document_headline .title_wrp .title {
    font-size: 24px;
  }
  .document_headline .title_wrp .left {
    width: 55px;
    height: auto;
    margin-top: 25px;
  }
  .document_headline .title_wrp .right {
    width: 45px;
    height: auto;
    margin-top: 25px;
  }
  .document_headline .title_wrp .underline {
    width: 100px;
    border-top: 2px solid #000;
    margin-top: 4vw;
  }
} /* for SP max-width: 736px */
/*-------------------------------------------------------------
	circle_box
-------------------------------------------------------------*/
.document_headline .detail_wrp {
  text-align: center;
  margin-top: 30px;
}

.circle_box {
  display: inline-block;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  background-color: #c60000;
  border-radius: 30px;
  color: #fff;
  margin: 0 auto;
  padding: 8px 25px;
}

.circle_box + p {
  text-align: center;
  margin-top: 20px;
  font-weight: bold;
}

.circle_box + p span {
  font-size: 20px;
  color: #c60000;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .circle_box + p {
    margin-top: 3vw;
  }
  .document_headline .detail_wrp {
    margin-top: 10vw;
  }
  .circle_box + p span {
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	document_box
-------------------------------------------------------------*/
.document_box {
  background-color: #fff;
  border-bottom: 8px solid #cf000e;
  padding: 50px;
  margin-top: 30px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.document_box .content_headline {
  border-left: none;
  padding-left: 0;
}

.document_box * + .content_headline {
  margin-top: 40px;
}

.document_box .content_headline .title {
  display: inline-block;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
  color: #c60000;
  border-bottom: 2px solid #000;
  padding-bottom: 10px;
}

.document_box .content_headline .title span {
  font-size: 12px;
}

.document_box .document_txt .pdf_download {
  margin: 10px 20px 10px 0;
}

.document_box .document_txt .pdf_download a {
  font-size: 13px;
  line-height: 2;
  background: url("/visitor/alum/common/images/icon_pdf.png") no-repeat;
  background-position: left center;
  padding: 5px 0 10px 35px;
}

.document_box .document_footline {
  margin-top: 30px;
  border-top: 1px dotted #000;
  padding-top: 30px;
}

.document_box .notes {
  font-size: 12px;
  background: none;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .document_box {
    border-bottom: 5px solid #cf000e;
    padding: 5vw;
    margin-top: 5vw !important;
  }
  .document_box * + .content_headline {
    margin-top: 5vw;
  }
  .document_box .content_headline .title {
    font-size: 4.5vw;
    line-height: 1.4;
    padding-bottom: 3vw;
    border-bottom: 1px solid #000;
  }
  .document_box .content_headline .title span {
    font-size: 3vw;
    display: block;
  }
  .document_box .document_txt .pdf_download {
    margin: 3vw 20px 3vw 0;
  }
  .document_box .document_txt .pdf_download a {
    font-size: 3.5vw;
    padding: 2vw 0 3vw 35px;
  }
  .document_box .document_footline {
    border-top: 1px dotted #666;
    padding-top: 5vw;
    margin-top: 5vw;
  }
  .document_box .notes {
    font-size: 3.5vw;
    background: none;
    padding: 0;
    margin-top: 0;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	document_txt	
-------------------------------------------------------------*/
.document_txt .red {
  color: #c60000;
}

.document_box .document_txt * + .title,
.document_box .document_txt {
  margin-top: 30px;
}

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

.document_box .document_txt p.title + p {
  margin-top: 10px;
}

.document_box .document_txt .title {
  font-size: 14px;
  font-weight: normal;
}

.document_box .document_txt .title.bold {
  font-weight: bold;
}

.document_box .document_txt .subtitle {
  font-size: 14px;
  font-weight: bold;
}

.document_box .document_txt p {
  font-size: 14px;
}

.document_box .document_txt .subtitle + p {
  margin-top: 5px;
}

.document_box .document_txt p.caption {
  font-size: 10px;
  margin-top: 5px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .document_box .document_txt {
    margin-top: 4vw;
  }
  .document_box .document_txt .title {
    font-size: 3.5vw;
  }
  .document_box .document_txt * + .title {
    margin-top: 4vw;
  }
  .document_box .document_txt .subtitle {
    font-size: 3.5vw;
    font-weight: bold;
  }
  .document_box .document_txt p {
    font-size: 3.5vw;
  }
  .document_box .document_txt * + p {
    margin-top: 3vw;
  }
  .document_box .document_txt p.title + p {
    margin-top: 1vw;
  }
  .document_box .document_txt .subtitle + p {
    margin-top: 2vw;
  }
  .document_box .document_txt p.caption {
    font-size: 2.5vw;
    margin-top: 2vw;
  }
  .document_box .document_txt img {
    width: 100%;
    height: auto;
  }
} /* for SP max-width: $width_sp */
/*----------------------------
	round_label	
----------------------------*/
.document_txt .round_label {
  background: #c60000;
  color: #fff;
  text-align: center;
  padding: 6px 12px;
  border-radius: 24px;
  margin-right: 10px;
}

/* タブレット以下 */
/* for tablet max-width: 1180px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .document_txt .round_label {
    padding: 1.5vw 4vw;
    border-radius: 3vw;
    margin-right: 10px;
    font-size: 3vw;
    line-height: 1;
    display: block;
    margin-bottom: 1vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	.document_txt.notes_box
-------------------------------------------------------------*/
.document_txt.notes_box {
  background: #ebaaaa;
  padding: 25px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .document_txt.notes_box {
    padding: 15px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	document_box table
-------------------------------------------------------------*/
table .bg_pink {
  background-color: #df7475;
}

.document_box table {
  width: 100%;
}

.document_box table thead th,
.document_box table tbody th,
.document_box table tbody td {
  width: 40%;
  color: #000;
  font-size: 12px;
  line-height: 1.8;
  text-align: center;
  padding: 12px;
  border: 1px solid #ccc;
}

.document_box table tbody td + td {
  width: 20%;
}

.document_box .document_txt + .notes {
  margin-top: 20px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .document_box table thead th,
  .document_box table tbody th,
  .document_box table tbody td {
    font-size: 3.5vw;
    line-height: 1.6;
    padding: 2vw;
  }
  .circle_box + p span {
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	/visitor/abroad/
	留学生系
	btn_solid

===============================================================*/
.btn_solid {
  width: 100%;
}

.btn_solid a {
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 20px;
  font-weight: bold;
  line-height: 20px;
  text-align: center;
  border: 3px solid #000;
  border-radius: 5px;
  background: #fff;
  padding: 21px 0 19px;
  margin: 0 7px 7px 0; /* 立体分 */
  -webkit-box-shadow: 5px 5px 0 -3px #7dccf3, 6px 6px 0 -3px #7dccf3, 7px 7px 0 -3px #7dccf3, 1px 1px 0 0 #000, 2px 2px 0 0 #000, 3px 3px 0 0 #000, 4px 4px 0 0 #000, 5px 5px 0 0 #000, 6px 6px 0 0 #000, 7px 7px 0 0 #000;
          box-shadow: 5px 5px 0 -3px #7dccf3, 6px 6px 0 -3px #7dccf3, 7px 7px 0 -3px #7dccf3, 1px 1px 0 0 #000, 2px 2px 0 0 #000, 3px 3px 0 0 #000, 4px 4px 0 0 #000, 5px 5px 0 0 #000, 6px 6px 0 0 #000, 7px 7px 0 0 #000;
}

.btn_solid a:hover {
  text-decoration: none;
  opacity: 0.6;
}

.btn_solid_wide a {
  padding: 35px 0;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .btn_solid a {
    font-size: 16px;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .btn_solid a {
    font-size: 4.5vw;
    border: 2px solid #000;
    padding: 3vw 0;
    margin: 0 5px 5px 0; /* 立体分 */
  }
} /* for SP max-width: $width_sp */
/* SP向けレイアウトの指定：～500px */
@media only screen and (max-width: 500px) {
  /*
  .btn_solid a {
  	font-size: 4.5vw;
  	padding: 15px 0;
  }
  .btn_solid_wide a {
  	padding: 15px 0;
  }*/
} /* for SP max-width: 500px */
/*-------------------------------------------------------------
	color
-------------------------------------------------------------*
.btn_solid_purple a {
	color: #8b5d9d;
	box-shadow:
	5px 5px 0 -3px #8b5d9d,
	6px 6px 0 -3px #8b5d9d,
	7px 7px 0 -3px #8b5d9d,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000,
	6px 6px 0 0 #000,
	7px 7px 0 0 #000;
}
.btn_solid_purple a:hover {
	color: #8b5d9d;
}
.btn_solid_bluegreen a {
	color: #6ac6c5;
	box-shadow:
	5px 5px 0 -3px #6ac6c5,
	6px 6px 0 -3px #6ac6c5,
	7px 7px 0 -3px #6ac6c5,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000,
	6px 6px 0 0 #000,
	7px 7px 0 0 #000;
}
.btn_solid_bluegreen a:hover {
	color: #6ac6c5;
}
.btn_solid_yellow a {
	color: #000;
	box-shadow:
	5px 5px 0 -3px #ffff00,
	6px 6px 0 -3px #ffff00,
	7px 7px 0 -3px #ffff00,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000,
	6px 6px 0 0 #000,
	7px 7px 0 0 #000;
}
.btn_solid_yellow a:hover {
	color: #000;
}
.btn_solid_orange a {
	color: #f79227;
	box-shadow:
	5px 5px 0 -3px #f79227,
	6px 6px 0 -3px #f79227,
	7px 7px 0 -3px #f79227,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000,
	6px 6px 0 0 #000,
	7px 7px 0 0 #000;
}
.btn_solid_orange a:hover {
	color: #f79227;
}
.btn_solid_pink a {
	color: #f795c5;
	box-shadow:
	5px 5px 0 -3px #f795c5,
	6px 6px 0 -3px #f795c5,
	7px 7px 0 -3px #f795c5,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000,
	6px 6px 0 0 #000,
	7px 7px 0 0 #000;
}
.btn_solid_pink a:hover {
	color: #f795c5;
}
.btn_solid_green a {
	color: #94c56b;
	box-shadow:
	5px 5px 0 -3px #94c56b,
	6px 6px 0 -3px #94c56b,
	7px 7px 0 -3px #94c56b,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000,
	6px 6px 0 0 #000,
	7px 7px 0 0 #000;
}
.btn_solid_green a:hover {
	color: #94c56b;
}
.btn_solid_blue a {
	color: #66c6ff;
	box-shadow:
	5px 5px 0 -3px #66c6ff,
	6px 6px 0 -3px #66c6ff,
	7px 7px 0 -3px #66c6ff,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000,
	6px 6px 0 0 #000,
	7px 7px 0 0 #000;
}
.btn_solid_blue a:hover {
	color: #66c6ff;
}
.btn_solid_red a {
	box-shadow:
	5px 5px 0 -3px #c60000,
	6px 6px 0 -3px #c60000,
	7px 7px 0 -3px #c60000,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000,
	6px 6px 0 0 #000,
	7px 7px 0 0 #000;
}
/* タブレット以下 *
@media screen and (max-width: 1070px) {

}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_purple a {
	color: #8b5d9d;
	box-shadow:
	5px 5px 0 -2px #8b5d9d,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000;
}
.btn_solid_purple a:hover {
	color: #8b5d9d;
}
.btn_solid_bluegreen a {
	color: #6ac6c5;
	box-shadow:
	5px 5px 0 -2px #6ac6c5,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000;
}
.btn_solid_bluegreen a:hover {
	color: #6ac6c5;
}
.btn_solid_yellow a {
	color: #000;
	box-shadow:
	5px 5px 0 -2px #ffff00,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000;
}
.btn_solid_yellow a:hover {
	color: #000;
}
.btn_solid_orange a {
	color: #f79227;
	box-shadow:
	5px 5px 0 -2px #f79227,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000;
}
.btn_solid_orange a:hover {
	color: #f79227;
}
.btn_solid_pink a {
	color: #f795c5;
	box-shadow:
	5px 5px 0 -2px #f795c5,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000;
}
.btn_solid_pink a:hover {
	color: #f795c5;
}
.btn_solid_green a {
	color: #94c56b;
	box-shadow:
	5px 5px 0 -2px #94c56b,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000;
}
.btn_solid_green a:hover {
	color: #94c56b;
}
.btn_solid_blue a {
	color: #66c6ff;
	box-shadow:
	5px 5px 0 -2px #66c6ff,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000;
}
.btn_solid_blue a:hover {
	color: #66c6ff;
}
.btn_solid_red a {
	box-shadow:
	5px 5px 0 -2px #c60000,
	1px 1px 0 0 #000,
	2px 2px 0 0 #000,
	3px 3px 0 0 #000,
	4px 4px 0 0 #000,
	5px 5px 0 0 #000;
}
}	/* for SP max-width: $width_sp */
/*===============================================================

	btn_solid_icon

===============================================================*
.btn_solid_icon {
	width:100%;
}
.btn_solid_icon a {
	display: block;
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 30px;
	font-weight: bold;
	line-height: 1.0;
	-webkit-font-feature-settings:"palt";
  font-feature-settings:"palt";
	text-align: center;
	color: #000;
	border: 3px solid #000;
	border-radius: 5px;
	background: #fff;
	padding: 27px 0 18px;
	margin: 0 7px 7px 0; /* 立体分 *
}
.btn_solid_icon a:hover {
	text-decoration:none;
	opacity: 0.6;
	color: #000;
}
.btn_solid_icon a:before,
.btn_solid_icon a:after{
	content: '';
  display: inline-block;
  width: 50px;
  height: 50px;
	background-repeat: no-repeat;
  background-size: contain;
	vertical-align: middle;
}
.btn_solid_icon span {
	font-size: 18px;
}
/* タブレット以下 *
@media screen and (max-width: 1070px) {
.btn_solid_icon a {
	font-size: 20px;
}
.btn_solid_icon span {
	font-size: 15px;
}
}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {	
.btn_solid_icon a {
	font-size: 3.5vw;
	line-height: 1.2;
	border: 2px solid #000;
	margin: 0 5px 5px 0; /* 立体分 *
}
.btn_solid_icon span {
	font-size: 3vw;
	display: block;
	margin-top: 4px;
}
.btn_solid_icon a:before,
.btn_solid_icon a:after{
	width: 30px;
  height: 30px;
}
}	/* for SP max-width: $width_sp */
/* SP向けレイアウトの指定：～500px *
@media only screen and (max-width: 500px) {
.btn_solid_icon a {
	font-size: 4.5vw;
	padding: 3vw 0 2vw;
}
}	/* for SP max-width: 500px */
/*===============================================================

	各アイコン設定

===============================================================*/
/*-------------------------------------------------------------
	icon debut
-------------------------------------------------------------*
.btn_solid_debut a:before {
  background-image: url("/common/images/btn_icon/btn_debut_left.svg");
	margin-right: 10px;
}
.btn_solid_debut a:after {
  background-image: url("/common/images/btn_icon/btn_debut_right.svg");
}

/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_debut a:before {
	margin-right: 10px;
}
.btn_solid_debut a:after {
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon career
-------------------------------------------------------------*
.btn_solid_career a:before {
  background-image: url("/common/images/btn_icon/btn_career_left.svg");
	margin-right: 10px;
}
.btn_solid_career a:after {
  background-image: url("/common/images/btn_icon/btn_career_right.svg");
	margin-left: 10px;
}

/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_career a:before {
	margin-right: 10px;
}
.btn_solid_career a:after {
	margin-left: 10px;
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon dousoukai
-------------------------------------------------------------*
.btn_solid_dousoukai a:before {
	background-image: url("/common/images/btn_icon/btn_dousoukai_left.svg");
	margin-right: 10px;
}
.btn_solid_dousoukai a:after {
  background-image: url("/common/images/btn_icon/btn_dousoukai_right.svg");
	margin-left: 10px;
}

/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_dousoukai a:before {
	margin-right: 10px;
}
.btn_solid_dousoukai a:after {
	margin-left: 10px;
}
}	/* for SP max-width: $width_sp */
/* |||||||||| */
/* |||||||||| */
/*-------------------------------------------------------------
	icon pro
-------------------------------------------------------------*
.btn_solid_pro a:before {
  width: 60px;
  background-image: url("/common/images/btn_icon/btn_pro_left.svg");
	margin-right: 5px;
}
.btn_solid_pro a:after {
  background-image: url("/common/images/btn_icon/btn_pro_right.svg");
}


/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_pro a:before {
	width: 40px;
  height: 30px;
	margin-right: 5px;
}
.btn_solid_pro a:after {
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon gallery
-------------------------------------------------------------*
.btn_solid_gallery a:before {
  width: 110px;
  height: 50px;
  background-image: url("/common/images/btn_icon/btn_gallery_left.svg");
	margin-top: -10px;
	margin-right: 5px;
}
.btn_solid_gallery a:after {
  width: 70px;
  height: 50px;
  background-image: url("/common/images/btn_icon/btn_gallery_right.svg");
	margin-left: 5px;
}
/* タブレット以下 *
@media screen and (max-width: 1070px) {
.btn_solid_gallery a:before {
  width: 90px;
  height: 50px;
	margin-right: 5px;
}
.btn_solid_gallery a:after {
  width: 60px;
  height: 50px;
}
}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_gallery a:before {
  width: 60px;
	height: 30px;
  background-image: url("/common/images/btn_icon/btn_gallery_left_sp.svg");
	margin-top: 0;
	margin-right: 8px;
}
.btn_solid_gallery a:after {
  width: 30px;
  height: 30px;
	margin-left: 3px;
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon instructor
-------------------------------------------------------------*
.btn_solid_instructor a:before {
  width: 70px;
  height: 50px;
  background-image: url("/common/images/btn_icon/btn_instructor_left.svg");
	margin-right: 10px;
}
.btn_solid_instructor a:after {
  width: 65px;
  height: 50px;
  background-image: url("/common/images/btn_icon/btn_instructor_right.svg");
	margin-left: 10px;
}

/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_instructor a:before {
	width: 35px;
  height: 30px;
}
.btn_solid_instructor a:after {
	width: 35px;
  height: 30px;
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon school
-------------------------------------------------------------*
.btn_solid_school a:before {
  background-image: url("/common/images/btn_icon/btn_school_left.svg");
	margin-right: 5px;
}
.btn_solid_school a:after {
  background-image: url("/common/images/btn_icon/btn_school_right.svg");
	margin-left: 5px;
}
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_school a:before {
}
.btn_solid_school a:after {
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon contact
-------------------------------------------------------------*
.btn_solid_contact a:before {
  background-image: url("/common/images/btn_icon/btn_contact_left.svg");
	margin-right: 5px;
}
.btn_solid_contact a:after {
  background-image: url("/common/images/btn_icon/btn_contact_right.svg");
	margin-left: 5px;
}

/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_contact a:before {
}
.btn_solid_contact a:after {
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon supportsystem
-------------------------------------------------------------*
.btn_solid_supportsystem a:before {
  width: 70px;
  background-image: url("/common/images/btn_icon/btn_support_system_left.svg");
	margin-right: 5px;
}
.btn_solid_supportsystem a:after {
  background-image: url("/common/images/btn_icon/btn_support_system_right.svg");
	margin-left: 5px;
}
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_supportsystem a:before {
	width: 50px;
}
.btn_solid_supportsystem a:after {
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon voice
-------------------------------------------------------------*
.btn_solid_voice a:before {
  background-image: url("/common/images/btn_icon/btn_voice_left.svg");
	margin-right: 10px;
}
.btn_solid_voice a:after {
  background-image: url("/common/images/btn_icon/btn_voice_right.svg");
	margin-left: 10px;
}

/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_voice a:before {
}
.btn_solid_voice a:after {
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon 6world
-------------------------------------------------------------*
.btn_solid_6world a:before {
  background-image: url("/common/images/btn_icon/btn_6world_left.svg");
	margin-right: 10px;
}
.btn_solid_6world a:after {
  background-image: url("/common/images/btn_icon/btn_6world_right.svg");
	margin-left: 10px;
}
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_6world a:before {
}
.btn_solid_6world a:after {
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon 6world_double
-------------------------------------------------------------*
.btn_solid_6world_double a {
  background-image: url("/common/images/btn_icon/btn_6world_double.svg");
	background-repeat: no-repeat;
  background-size: 80% 50px;
	background-position: center center;
	vertical-align: middle;
	padding: 12px 0 22px;
}
.btn_solid_6world_double a:before,
.btn_solid_6world_double a:after {
	display: none;
}
/* タブレット以下 *
@media screen and (max-width: 1070px) {
.btn_solid_6world_double a {
	background-image: url("/common/images/btn_icon/btn_6world_double_sp.svg");
  background-size: 80% 50px;
	padding: 25px 0 28px;
}
}	/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_6world_double a {
  background-size: 47% 50px;
	padding: 10px 0 16px;
}
}	/* for SP max-width: $width_sp */
/* SP向けレイアウトの指定：～500px *
@media only screen and (max-width: 500px) {
.btn_solid_6world_double a {
  background-size: 80% 50px;
	padding: 13px 0 16px;
}
}	/* for SP max-width: 500px */
/*-------------------------------------------------------------
	icon rinen
-------------------------------------------------------------*
.btn_solid_rinen a:before {
  background-image: url("/common/images/btn_icon/btn_rinen_left.svg");
	margin-right: 10px;
}
.btn_solid_rinen a:after {
  background-image: url("/common/images/btn_icon/btn_rinen_right.svg");
	margin-left: 10px;
}

/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_rinen a:before {
}
.btn_solid_rinen a:after {
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon education_system
-------------------------------------------------------------*
.btn_solid_education_system a:before {
  background-image: url("/common/images/btn_icon/btn_education_system_left.svg");
	margin-right: 10px;
}
.btn_solid_education_system a:after {
  background-image: url("/common/images/btn_icon/btn_education_system_right.svg");
	margin-left: 10px;
}

/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_education_system a:before {
}
.btn_solid_education_system a:after {
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon support
-------------------------------------------------------------*
.btn_solid_support a:before {
  background-image: url("/common/images/btn_icon/btn_support_left.svg");
	margin-right: 10px;
}
.btn_solid_support a:after {
  background-image: url("/common/images/btn_icon/btn_support_right.svg");
	margin-left: 10px;
}

/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_support a:before {
}
.btn_solid_support a:after {
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon money
-------------------------------------------------------------*
.btn_solid_money a:before {
  background-image: url("/common/images/btn_icon/btn_money_left.svg");
}
.btn_solid_money a:after {
  background-image: url("/common/images/btn_icon/btn_money_right.svg");
	margin-left: 10px;
}

/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_money a:before {
}
.btn_solid_money a:after {
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon money
-------------------------------------------------------------*
.btn_solid_curriculum a:before {
  background-image: url("/common/images/btn_icon/btn_curriculum_left.svg");
	margin-right: 10px;
}
.btn_solid_curriculum a:after {
  width: 65px;
  height: 50px;
  background-image: url("/common/images/btn_icon/btn_curriculum_right.svg");
	margin-left: 10px;
}

/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_curriculum a:before {
	width: 35px;
	height: 30px;
	margin-right: 5px;
}
.btn_solid_curriculum a:after {
	width: 35px;
  height: 30px;
	margin-left: 8px;
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	btn_solid_kokusai
-------------------------------------------------------------*
.btn_solid_kokusai a {
	padding: 20px 0 15px;
}
.btn_solid_kokusai a:before,
.btn_solid_kokusai a:after {
	display: none;
}

/* SP向けレイアウトの指定：～$width_sp *
@media only screen and (max-width: $width_sp) {
.btn_solid_kokusai a:before,
.btn_solid_kokusai a:after {
	display: none;
}
}	/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	icon gallery_wide
-------------------------------------------------------------*
.btn_solid_gallery_wide img {
	width: 100%;
	height: auto;
}
.btn_solid_gallery_wide a {
	padding: 20px;
}
.btn_solid_gallery_wide a:before,
.btn_solid_gallery_wide a:after {
	display: none;
}

/* SP向けレイアウトの指定：～1070px *
@media only screen and (max-width: 1070px) {

}	/* for SP max-width: 1070px */
/* SP向けレイアウトの指定：～400px *
@media only screen and (max-width: 500px) {
.btn_solid_gallery_wide a {
	padding: 5px;
}	

}	/* for SP max-width: 400px */
/*-------------------------------------------------------------
	icon tcalife_wide
-------------------------------------------------------------*
.btn_solid_tcalife_wide img {
	width: 100%;
	height: auto;
}
.btn_solid_tcalife_wide a {
	padding: 20px;
}
.btn_solid_tcalife_wide a:before,
.btn_solid_tcalife_wide a:after {
	display: none;
}
/* SP向けレイアウトの指定：～1070px *
@media only screen and (max-width: 1070px) {

}	/* for SP max-width: 1070px */
/* SP向けレイアウトの指定：～400px *
@media only screen and (max-width: 500px) {
.btn_solid_tcalife_wide a {
	padding: 5px;
}	

}	/* for SP max-width: 400px */
/*===============================================================

	btn_with_icon

===============================================================*/
.btn_with_icon {
  width: 100%;
}

.btn_with_icon a {
  position: relative;
  display: block;
  background-color: #e61e19;
  text-align: left;
  color: #000;
  font-size: 16px;
  line-height: 20px;
  font-weight: bold;
  padding: 20px;
  /*	padding-left: 50px;*/
  border-radius: 0px;
}

.btn_with_icon a:after {
  position: absolute;
  content: " ";
  width: 10px;
  height: 10px;
  top: 0;
  left: auto;
  bottom: 0;
  right: 15px;
  margin: auto;
  border-top: solid 1.5px #000;
  border-left: solid 1.5px #000;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}

.btn_with_icon a:hover {
  text-decoration: none;
  opacity: 0.6;
  color: #000;
}

.btn_with_icon a span {
  font-size: 11px;
}

.btn_with_icon_green a {
  background-color: #3dcb6d;
}

.btn_with_icon_bluegreen a {
  background-color: #6ac6c5;
}

.btn_with_icon_elmgreen a {
  background-color: #94c56b;
}

.btn_with_icon_pink a {
  background-color: #f795c5;
}

.btn_with_icon_yellow a {
  background-color: #ffff00;
}

.btn_with_icon_paleyellow a {
  background-color: #ffcc33;
}

.btn_with_icon_orange a {
  background-color: #f79227;
}

.btn_with_icon_skyblue a {
  background-color: #66c6ff;
}

.btn_with_icon_steelblue a {
  background-color: #689aca;
}

.btn_with_icon_purple a {
  background-color: #987ea8;
}

.btn_with_icon_firered a {
  background-color: #fc7c69;
}

/*
.btn_with_icon_eboard a {
	background-image: url("/common/images/btn_icon/btn_eboard.svg");
	background-repeat: no-repeat;
	background-size: 40px 38px;
	background-position: 8px 12px;
}
.btn_with_icon_success a {
	background-image: url("/common/images/btn_icon/btn_success.svg");
	background-repeat: no-repeat;
	background-size: 34px 31px;
	background-position: 12px;
}
.btn_with_icon_com a {
	background-image: url("/common/images/btn_icon/btn_com.svg");
	background-repeat: no-repeat;
	background-size: 28px 33px;
	background-position: 15px 13px;
}
.btn_with_icon_manual a {
	background-image: url("/common/images/btn_icon/btn_manual.svg");
	background-repeat: no-repeat;
	background-size: 34px 43px;
	background-position: 10px 8px;
	letter-spacing: -0.05em;
}
.btn_with_icon_safe a {
	background-image: url("/common/images/btn_icon/btn_safe.svg");
	background-repeat: no-repeat;
	background-size: 26px 35px;
	background-position: 15px 13px;
}
.btn_with_icon_kokusai a {
	background-image: url("/common/images/btn_icon/btn_kokusai.svg");
	background-repeat: no-repeat;
	background-size: 26px 33px;
	background-position: 15px 13px;
}
.btn_with_icon_highschool3 a {
	background-image: url("/common/images/btn_icon/btn_highschool-3.svg");
	background-repeat: no-repeat;
	background-size: 28px 32px;
	background-position: 13px 15px;
}
.btn_with_icon_highschool12 a {
	background-image: url("/common/images/btn_icon/btn_highschool-1to2.svg");
	background-repeat: no-repeat;
	background-size: 36px 35px;
	background-position: 9px 12px;
}
.btn_with_icon_universe a {
	background-image: url("/common/images/btn_icon/btn_univese.svg");
	background-repeat: no-repeat;
	background-size: 32px 38px;
	background-position: 9px 12px;
}
.btn_with_icon_abroad a {
	background-image: url("/common/images/btn_icon/btn_abroad.svg");
	background-repeat: no-repeat;
	background-size: 40px 24px;
	background-position: 7px 19px;
}
.btn_with_icon_session a {
	background-image: url("/common/images/btn_icon/btn_facility.svg");
	background-repeat: no-repeat;
	background-size: 32px 26px;
	background-position: 9px 17px;
	line-height: 15px;
	padding: 16px 0 13px;
	padding-left: 50px;
}
.btn_with_icon_intern a {
	background-image: url("/common/images/btn_icon/btn_intern.svg");
	background-repeat: no-repeat;
	background-size: 32px 25px;
	background-position: 9px 17px;
	line-height: 15px;
	padding: 16px 0 13px;
	padding-left: 50px;
}
.btn_with_icon_recruite a {
	background-image: url("/common/images/btn_icon/btn_recruit.svg");
	background-repeat: no-repeat;
	background-size: 32px 23px;
	background-position: 10px 20px;
	line-height: 15px;
	padding: 16px 0 13px;
	padding-left: 50px;
}
.btn_with_icon_seminar a {
	background-image: url("/common/images/btn_icon/btn_zemi.svg");
	background-repeat: no-repeat;
	background-size: 32px 21px;
	background-position: 10px 20px;
	line-height: 15px;
	padding: 16px 0 13px;
	padding-left: 50px;
}

*/
/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .btn_with_icon a {
    font-size: 4vw;
  }
  .btn_with_icon a:after {
    width: 8px;
    height: 8px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	留学生系
	/visitor/abroad/
	keypoint_block

===============================================================*/
.keypoint_block {
  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;
  letter-spacing: 0.1px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.keypoint_block .txt {
  width: 62%;
}

.keypoint_block .fig {
  width: 35%;
}

.keypoint_block .title {
  font-size: 30px;
  line-height: 1.4;
}

.keypoint_block p {
  font-size: 16px;
  line-height: 1.75;
  margin-top: 1em !important;
}

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

.keypoint_block .txt strong {
  color: #c60000;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .keypoint_block .txt {
    width: 55%;
  }
  .keypoint_block .fig {
    width: 40%;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .keypoint_block .txt,
  .keypoint_block .fig {
    width: 100% !important;
  }
  .keypoint_block .fig {
    margin-top: 4vw;
  }
  .keypoint_block .title {
    font-size: 5vw;
  }
  .keypoint_block p {
    font-size: 3.5vw;
    line-height: 1.6;
  }
  .keypoint_block * + p {
    margin-top: 2.5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	inline_fig	
-------------------------------------------------------------*/
.keypoint_block .inline_fig {
  width: 60px;
  height: auto;
  margin: 20px;
}

.keypoint_block .inline_fig img {
  width: 60px;
  height: auto;
}

.keypoint_block .inline_fig_right {
  float: right;
}

.keypoint_block .inline_fig_left {
  float: left;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
/* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	バリエーション	
-------------------------------------------------------------*/
.keypoint_block_parents .txt {
  width: 48%;
}

.keypoint_block_parents .fig {
  width: 50%;
}

.keypoint_block_parents2 .txt {
  width: 54%;
}

.keypoint_block_parents2 .fig {
  width: 42%;
}

.keypoint_block_abroad .txt {
  width: 42%;
}

.keypoint_block_abroad .fig {
  width: 55%;
}

.keypoint_block_abroad2 .txt {
  width: 42%;
}

.keypoint_block_abroad2 .fig {
  width: 45%;
}

.keypoint_block_abroad2 .fig2 {
  width: 10%;
}

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

	留学生系
	/visitor/parents/
	table_pink

===============================================================*/
.table_pink .title {
  font-size: 30px;
  line-height: 1.4;
}

.table_pink p {
  font-size: 16px;
  line-height: 1.75;
}

.table_pink * + p {
  margin-top: 1em;
}

.table_pink .txt strong {
  color: #c60000;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .table_pink .title {
    font-size: 5vw;
  }
  .table_pink p {
    font-size: 3.5vw;
    line-height: 1.6;
  }
  .table_pink * + p {
    margin-top: 2.5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	table
-------------------------------------------------------------*/
.table_pink table {
  border-bottom: solid 1px #000;
  width: 100%;
  margin-top: 40px;
}

.table_pink table th {
  width: 200px;
  padding: 12px;
  font-weight: bold;
  border: solid 1px #000;
  border-right: 0;
  border-bottom: 0;
  background: #ebaaaa;
  color: #000;
  font-size: 14px;
  line-height: 1.8;
  text-align: center;
  vertical-align: middle;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.table_pink table td {
  padding: 12px;
  border: solid 1px #000;
  border-bottom: 0;
  color: #000;
  font-size: 14px;
  line-height: 1.8;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.table_pink table td + td {
  border-left: 0;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .table_pink table {
    border-bottom: none;
  }
  .table_pink table th {
    padding: 2vw;
    display: list-item;
    list-style: none;
    border: none;
    width: 100%;
    font-size: 4vw;
    line-height: 1.6;
  }
  .table_pink table td {
    padding: 3vw;
    display: list-item;
    list-style: none;
    width: 100%;
    font-size: 3.5vw;
    line-height: 1.6;
    font-weight: normal;
    background-color: #fff;
    border: solid 1px #ddd;
    border-top: none;
  }
  .table_pink table tr + tr th {
    margin-top: 20px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	/visitor/teacher/
	留学生系
	solid_box

===============================================================*/
.solid_box {
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #000;
  border: 1px solid #666;
  border-radius: 5px;
  background: #fff;
}

.solid_box .item_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: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-top: -20px;
}

.solid_box .item_wrp .item {
  position: relative;
  width: 23.5%;
  margin-right: 2%;
  margin-top: 20px;
}

.solid_box .item_wrp .item:nth-child(4n) {
  margin-right: 0;
}

.solid_box_titlewrp {
  border-bottom: 1px dotted #666;
}

.solid_box_titlewrp .solid_title {
  display: block;
  color: #f79227;
  font-size: 24px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  padding: 25px;
}

.solid_box_txt {
  padding: 30px 30px 30px;
}

.solid_box_txt .head {
  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;
  font-size: 15px;
  line-height: 1.4;
  font-weight: bold;
}

.solid_box_txt .head .num {
  color: #f79227;
  width: 20px;
}

.solid_box_txt .head .name {
  width: calc(100% - 20px);
}

.solid_box_txt p {
  font-size: 13px;
  line-height: 1.6;
  margin-top: 5px;
}

.solid_box_txt * + .img {
  margin-top: 20px;
}

.solid_box_txt .img_over {
  position: absolute;
  bottom: -50px;
  left: 0;
  right: 0;
  margin: auto;
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .solid_box .item_wrp .item {
    width: 48%;
    margin-right: 4%;
  }
  .solid_box .item_wrp .item:nth-child(2n) {
    margin-right: 0;
  }
  .solid_box_txt .img_over {
    bottom: -60px;
    left: auto;
    width: 50%;
    -webkit-transform: none;
    transform: none;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .solid_box {
    border: 1px solid #000;
  }
  .solid_box .item_wrp {
    margin-top: -20px;
  }
  .solid_box .item_wrp .item {
    width: 100%;
    margin-right: 0;
  }
  .solid_box_titlewrp .solid_title {
    font-size: 4.5vw;
    padding: 5vw;
  }
  .solid_box_txt {
    padding: 5vw;
  }
  .solid_box_txt .head {
    font-size: 4vw;
  }
  .solid_box_txt .head .num {
    width: 5vw;
  }
  .solid_box_txt .head .name {
    width: calc(100% - 5vw);
  }
  .solid_box_txt p {
    font-size: 3.5vw;
    margin-top: 5px;
  }
  .solid_box_txt * + .img {
    margin-top: 20px;
  }
  .solid_box_txt .img_over {
    position: static;
    width: 40%;
    margin-top: -15vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	/campus_life/our_school_life_01.html
	バナー
	shadow_banner

===============================================================*/
.shadow_banner .fitimg {
  overflow: visible !important;
}

.shadow_banner a {
  display: block;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.shadow_banner a:hover {
  opacity: 0.7;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .shadow_banner {
    margin-top: -3vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	/tbs_project/など
	バナー
	shadow_banner2

===============================================================*/
.shadow_banner2 {
  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;
  margin: -40px -20px 0;
}

.shadow_banner2 .item {
  margin: 40px 20px 0;
}

.shadow_banner2 .item.col1 {
  -ms-flex-preferred-size: 100%;
      flex-basis: 100%;
}

.shadow_banner2 .item.col2 {
  -ms-flex-preferred-size: calc(50% - 40px);
      flex-basis: calc(50% - 40px);
}

.shadow_banner2 .item.col3 {
  -ms-flex-preferred-size: calc(33.3333333333% - 40px);
      flex-basis: calc(33.3333333333% - 40px);
}

.shadow_banner2 .item.col4 {
  -ms-flex-preferred-size: calc(25% - 40px);
      flex-basis: calc(25% - 40px);
}

.shadow_banner2 a {
  display: block;
  border-radius: 5px;
  overflow: hidden;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.shadow_banner2 a:hover {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
  -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.2);
}

@media only screen and (max-width: 800px) {
  .shadow_banner2 {
    display: block;
    margin: -3vw 0 0;
  }
  .shadow_banner2 .item {
    margin: 3vw 0 0;
  }
  .shadow_banner2 .item.col1,
  .shadow_banner2 .item.col2,
  .shadow_banner2 .item.col3,
  .shadow_banner2 .item.col4 {
    width: 100%;
  }
}
/*===============================================================

	あなゆめ
	/tbs_project/index.html
	scale_banner
	shadow_banner

===============================================================*/
.scale_banner .fitimg {
  overflow: visible !important;
}

.scale_banner a {
  display: block;
  -webkit-transition: 0.1s;
  transition: 0.1s;
}

.scale_banner a:hover {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

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

	専攻、下層ページなど多数利用
	ワールド/専攻バナー

===============================================================*/
.bnr_world_majors a {
  position: relative;
  display: block;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #000;
  background: #65a3db;
  padding: 30px 0;
}

.thiscontents .bnr_world_majors a:hover,
.bnr_world_majors a:hover {
  color: #000;
  text-decoration: none;
}

.bnr_world_majors a .icon {
  position: absolute;
  top: 50%;
  left: 3%;
  width: 9.3457943925%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.bnr_world_majors a p {
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  padding-left: 6%;
}

.bnr_world_majors a p .small {
  font-size: 0.75em;
  margin-right: 0.8em;
}

.bnr_world_majors a p .white {
  color: #fff;
}

.bnr_world_majors a p .yellow {
  color: #fff100;
}

.bnr_world_majors a p .eng {
  display: block;
  font-size: 18px;
  margin-top: 5px;
}

/* 2カラム */
.col_2_1 .bnr_world_majors a .icon {
  left: 5%;
  width: 13%;
}

.col_2_1 .bnr_world_majors {
  position: relative;
  padding-top: 30%;
}

.col_2_1 .bnr_world_majors a {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  overflow: hidden;
  padding: 0;
}

.col_2_1 .bnr_world_majors a p {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  padding-left: 6%;
}

.col_2_1 .bnr_world_majors a p .small,
.col_2_1 .bnr_world_majors a p .solid {
  display: none;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .bnr_world_majors a p {
    font-size: 3vw;
  }
  .bnr_world_majors a p .eng {
    font-size: 1.8vw;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .bnr_world_majors a {
    padding: 3.6vw 0;
  }
  .bnr_world_majors a .icon {
    left: 3vw;
    width: 10%;
  }
  .bnr_world_majors a p {
    font-size: 4.8vw;
    padding: 0;
  }
  .bnr_world_majors a p .small {
    display: block;
  }
  .bnr_world_majors a p .eng {
    font-size: 3.2vw;
    margin-top: 0;
  }
  /* 2カラム */
  .col_2_1 .bnr_world_majors a {
    padding: 0;
  }
  .col_2_1 .bnr_world_majors a p {
    font-size: 5.6vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	トップページとバス	
	section_information

===============================================================*/
.section_information {
  position: relative;
  background: #fff;
}

.opencampus .section_information {
  background: none;
}

.section_information .section_inner {
  padding: 10px 0;
}

.section_information .section_inner.event {
  padding: 40px 0 0;
}

.section_information .content {
  text-align: left;
  padding-bottom: 0;
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid #ffa9a9;
  background: #fff3f8;
}

.section_information .content .title {
  font-size: 16px;
}

.section_information .content p {
  font-size: 14px;
}

.section_information .content * + p {
  margin-top: 1em;
}

.section_information .content p + p.bold {
  margin-top: 1.5em;
}

.creative_top_page .section_information {
  background: none;
}

.creative_top_page .section_information .section_inner {
  padding: 10px;
  margin-top: -10px;
}

.creative_top_page .section_information .content_width {
  background: #fff;
}

/* タブレット以下 */
@media screen and (max-width: 1260px) {
  .opencampus .section_information {
    padding: 0 30px;
  }
} /* for tablet max-width: 1070px */
/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .section_information .section_inner {
    padding: 10px;
  }
  .opencampus .section_information {
    padding: 10px;
  }
  .creative_top_page .section_information .section_inner {
    padding: 15px;
    margin-top: 0;
  }
  .creative_top_page .section_information .content {
    padding: 15px;
    text-align: left;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_information .content .title {
    font-size: 4vw;
    line-height: 1.6;
  }
  .section_information .content p {
    font-size: 3.5vw;
    line-height: 1.6;
    word-break: break-all;
    letter-spacing: 0;
  }
  .opencampus .section_information {
    padding: 0;
  }
  .section_information .section_inner {
    padding: 10px;
    margin-top: 0;
  }
  .section_information .section_inner.event {
    padding: 5vw 5vw 0;
  }
  .section_information .content {
    padding: 10px;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	トップページ
	holiday_notice

===============================================================*/
.holiday_notice {
  padding: 30px;
  border: solid 1px #ddd;
  background: rgba(255, 255, 255, 0.9);
  margin-bottom: 30px;
  margin-top: 40px;
}

.holiday_notice .title {
  font-size: 18px;
  line-height: 1.4;
  text-align: center;
  color: red;
}

.thiscontents .holiday_notice p {
  font-size: 14px;
  line-height: 1.8;
  margin-top: 0.8em;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .holiday_notice {
    padding: 30px;
    margin-top: 0;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .holiday_notice {
    padding: 4vw;
    margin-top: 4vw;
  }
  .holiday_notice .title {
    font-size: 4.5vw;
  }
  .holiday_notice p {
    text-align: left;
    font-size: 3.5vw;
    line-height: 1.6;
    margin-top: 0.8em;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	トップ
	section_circle_room

===============================================================*/
.section_circle_room {
  background: rgba(0, 0, 0, 0.05);
}

.content_circle_room {
  background: rgba(255, 255, 255, 0.9);
  padding: 40px;
  -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);
  text-align: center;
  border-radius: 30px;
}

.section_circle_room .title {
  margin: 0;
  font-size: 40px;
  line-height: 1;
}

.section_circle_room p {
  font-size: 18px;
  line-height: 1.5;
  margin-top: 10px;
}

.section_circle_room 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;
}

.section_circle_room ul li {
  width: 49%;
  margin-top: 20px;
}

.section_circle_room ul li img {
  width: 100%;
  height: auto;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.section_circle_room ul li img:hover {
  opacity: 0.7;
}

.section_circle_room ul li.view_popup {
  -webkit-transform: scale(1.1, 1.1);
          transform: scale(1.1, 1.1);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  z-index: 2;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.3);
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .content_circle_room {
    padding: 30px;
  }
  .section_circle_room .title {
    font-size: 3.7vw;
  }
  .section_circle_room p {
    font-size: 1.5vw;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .section_circle_room .section_inner {
    padding: 5vw;
  }
  .content_circle_room {
    padding: 20px;
    border-radius: 5vw;
  }
  .section_circle_room .title {
    font-size: 7.5vw;
  }
  .section_circle_room p {
    font-size: 3.5vw;
    margin-top: 2vw;
  }
  .section_circle_room ul {
    padding-top: 2vw;
  }
  .section_circle_room ul li {
    width: 100%;
    margin-top: 3vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	入学案内系
	/entrance/
	basic_content 2020/3/9

===============================================================*/
.basic_content + .basic_content {
  margin-top: 80px !important;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content + .basic_content {
    margin-top: 10vw !important;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	basic_content 見出し 2020/3/9

===============================================================*/
.basic_content .h_lv1 {
  font-size: 25px;
  font-weight: bold;
  line-height: 1.4;
  text-align: center;
  border-radius: 0px;
  padding: 30px 15px;
  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;
  padding-bottom: 10px;
}

.basic_content * + .h_lv1 {
  margin-top: 50px;
}

.basic_content .h_lv1.bg_gray {
  border-color: #888;
}

.basic_content .h_lv1.bg_blue {
  border-color: #182980;
  color: #182980;
}

.basic_content .h_lv1.align_left {
  text-align: left;
}

.basic_content .h_lv1 .caution {
  display: inline-block;
  font-size: 70%;
  font-weight: normal;
  margin-top: 0 !important;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content .h_lv1 {
    font-size: 5vw;
    padding: 6vw 3vw;
    padding-bottom: 2vw;
  }
  .basic_content * + .h_lv1 {
    margin-top: 5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	h2	
-------------------------------------------------------------*/
.basic_content .h_lv2 {
  font-size: 24px;
  line-height: 1.4;
  font-weight: bold;
  border-top: solid 1px #666;
  padding-top: 50px;
  position: relative;
  z-index: 1;
}

.basic_content .h_lv2::after {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  margin: auto;
  width: 100px;
  height: 4px;
  background: #000;
  z-index: 2;
}

.basic_content * + .h_lv2 {
  margin-top: 60px;
}

.basic_content .txt_detail + .h_lv2 {
  margin-top: 0;
  border-top: solid 0px #666;
  padding-top: 30px;
  font-size: 20px;
}

.basic_content .txt_detail + .h_lv2::after {
  display: none;
}

.basic_content .h_lv1 + .h_lv2 {
  margin-top: 30px;
}

.basic_content .h_lv2 .tag {
  display: inline-block;
  vertical-align: bottom;
  color: #fff;
  font-size: 16px;
  padding: 2px 5px;
  margin-left: 10px;
  background: #999;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content .h_lv2 {
    font-size: 4.2vw;
    padding-top: 8vw;
  }
  .basic_content * + .h_lv2 {
    margin-top: 8vw;
  }
  .basic_content .h_lv2::after {
    width: 15vw;
  }
  .basic_content .txt_detail + .h_lv2 {
    margin-top: 0;
    border-top: solid 0px #666;
    padding-top: 4vw;
    font-size: 4vw;
  }
  .basic_content .h_lv1 + .h_lv2 {
    margin-top: 4vw;
  }
  .basic_content .h_lv2 .tag {
    font-size: 4vw;
    padding: 0.5vw 1vw;
    margin-left: 2vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	h3	
-------------------------------------------------------------*/
.basic_content .h_lv3 {
  font-size: 20px;
  line-height: 1.4;
  font-weight: bold;
  margin-top: 60px;
  padding-left: 0;
  padding-top: 30px;
  position: relative;
  color: #182980;
}

.basic_content .h_lv3::after {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 100px;
  height: 2px;
  background: #182980;
}

.basic_content .h_lv3_blue::after {
  background: #a2e6ff;
}

.basic_content .h_lv3_yellow::after {
  background: #ffc300;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content .h_lv3 {
    font-size: 4vw;
    margin-top: 8vw;
    padding-left: 0;
    padding-top: 5vw;
  }
  .basic_content .h_lv3::after {
    top: 0vw;
    width: 15vw;
    height: 1px;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	labeltxt	
-------------------------------------------------------------*/
.basic_content .labeltxt {
  font-size: 16px;
  line-height: 1.2;
  font-weight: bold;
  margin-top: 40px;
  padding: 10px 10px;
  display: inline-block;
  border: solid 1px #999;
}

.thiscontents .basic_content .labeltxt + * {
  margin-top: 20px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content .labeltxt {
    font-size: 4vw;
    margin-top: 4vw;
    padding: 0.5vw 2vw;
  }
  .thiscontents .basic_content .labeltxt + * {
    margin-top: 2vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	本文
-------------------------------------------------------------*/
.thiscontents .basic_content * + p {
  margin-top: 30px;
}

.thiscontents .basic_content .h_lv3 + p {
  margin-top: 20px;
}

.thiscontents .basic_content .caution {
  margin-top: 20px;
  line-height: 1.4;
  font-size: 70%;
}

.basic_content .caution + .caution {
  margin-top: 0px;
}

.basic_content .under_line_wave {
  color: #cd0000;
  font-weight: bold;
  background: url("/entrance/images/entrance_border_wave.svg") repeat-x left bottom;
  background-size: auto 4px;
  padding-bottom: 6px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .thiscontents .basic_content * + p {
    margin-top: 3vw;
  }
  .thiscontents .basic_content .h_lv3 + p {
    margin-top: 2vw;
  }
  .thiscontents .basic_content .caution {
    margin-top: 2vw;
    font-size: 3vw;
  }
  .thiscontents .basic_content .caution + .caution {
    margin-top: 1vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	リスト	
-------------------------------------------------------------*/
.basic_content li {
  font-size: 16px;
  line-height: 1.4;
}

.num_list li {
  list-style-type: decimal;
  list-style-position: inside;
  padding: 0;
}

.basic_content .ul_list li {
  line-height: 1.8;
}

.basic_content .ul_list,
* + ul.txtlink,
.basic_content * + .dot_list,
* + .num_list,
* + .check_list {
  margin-top: 30px;
}

.check_list li {
  font-weight: bold;
  position: relative;
  padding-left: 20px;
  font-size: 16px;
}

.check_list li::after {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  margin: auto;
  border: solid 1px #666;
  width: 10px;
  height: 10px;
}

.basic_content .txtlink li,
.num_list li,
.check_list li {
  margin-top: 10px;
}

.basic_content .txtlink li:first-child,
.num_list li:first-child,
.check_list li:first-child {
  margin-top: 0;
}

.check_list li.checked::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 3px;
  margin: auto;
  border: solid 2px #cd0000;
  width: 6px;
  height: 10px;
  border-top: none;
  border-left: none;
  -webkit-transform: rotate(45deg) translate(-2px, -2px);
          transform: rotate(45deg) translate(-2px, -2px);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.txtindent {
  padding-left: 1em !important;
  text-indent: -1em;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content h6.lead,
  .basic_content li {
    font-size: 3.5vw;
    line-height: 1.4;
  }
  * + ul.txtlink,
  .basic_content * + .dot_list,
  * + .num_list,
  * + .check_list {
    margin-top: 4vw;
  }
  .basic_content .txtlink li,
  .num_list li,
  .check_list li {
    font-size: 3.5vw;
    margin-top: 1vw;
  }
  .check_list li {
    padding-left: 5.2vw;
  }
  .check_list li::after {
    top: 0.6vw;
    left: 0;
    width: 3vw;
    height: 3vw;
  }
  .check_list li.checked::before {
    top: 0.7vw;
    left: 0.5vw;
    margin: auto;
    width: 1.5vw;
    height: 3vw;
    -webkit-transform: rotate(45deg) translate(-0.5vw, -1vw);
            transform: rotate(45deg) translate(-0.5vw, -1vw);
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	caption_wrp	
-------------------------------------------------------------*/
.basic_content .caption_wrp {
  margin-top: 30px;
}

.basic_content .caption_wrp p {
  margin-top: 0;
  font-size: 80%;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content .caption_wrp p {
    margin-top: 0;
    font-size: 70%;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	txtlink	
-------------------------------------------------------------*/
.basic_content .txtlink a {
  color: #0099cc;
}

.basic_content .txtlink a:hover {
  color: #00b5f1;
}

.basic_content .txtlink a::after {
  border-top: solid 2px #0099cc;
  border-left: solid 2px #0099cc;
  top: 5px;
}

.basic_content .txtlink a:hover {
  opacity: 0.7;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content .txtlink a::after {
    border-top: solid 1px #0099cc;
    border-left: solid 1px #0099cc;
  }
  .basic_content .txtlink li {
    font-size: 3.5vw;
  }
  .basic_content .txtlink a {
    padding-left: 3vw;
  }
  .basic_content .txtlink a::after {
    top: 1.6vw;
    width: 1.5vw;
    height: 1.5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	address	
-------------------------------------------------------------*/
.basic_content .address {
  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;
  border: solid 1px #ccc;
  padding: 10px;
}

.basic_content .address .label {
  background: #eee;
  padding: 15px;
  text-align: center;
  font-weight: bold;
}

.basic_content .address .txt {
  font-weight: bold;
  margin-left: 15px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content .address {
    margin-top: 6vw;
    padding: 3vw;
  }
  .basic_content .address .label {
    padding: 1vw 3vw;
    width: 100%;
    font-size: 3.5vw;
  }
  .basic_content .address .txt {
    margin-left: 0;
    margin-top: 2vw;
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	入学案内系
	entry_content

===============================================================*/
.entry_content {
  padding: 50px;
  background: #fff;
  text-align: center;
  margin-top: 30px;
  border-radius: 5px;
}

.entry_content_yellow {
  background: #f8f8d6;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .entry_content {
    padding: 5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	entry_content_headline	
-------------------------------------------------------------*/
.entry_content_headline {
  position: relative;
  padding: 5px 25px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  margin: 0 auto;
  text-align: center;
}

.entry_content_headline::before,
.entry_content_headline::after {
  position: absolute;
  top: 0;
  content: "";
  width: 10px;
  height: 100%;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.entry_content_headline::before {
  left: -5px;
  border-left: 1px solid #000;
}

.entry_content_headline::after {
  right: -5px;
  border-right: 1px solid #000;
}

.entry_content_headline .title {
  font-size: 22px;
  line-height: 1.2;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .entry_content_headline {
    padding: 2vw;
  }
  .entry_content_headline::before,
  .entry_content_headline::after {
    width: 2vw;
  }
  .entry_content_headline .title {
    font-size: 3.5vw;
    padding: 0 3vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	入学案内系
	step_list

===============================================================*/
.step_list {
  margin-top: 40px;
  text-align: left;
}

.step_list .step_text {
  margin-top: 30px;
}

.step_list .strong {
  color: #cd0000;
  font-weight: bold;
}

.step_list li {
  position: relative;
  padding-bottom: 60px;
}

.step_list li:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 30px;
  height: 30px;
  /*border-top: 5px solid rgba(24, 41, 128,0.7);*/
  border-top: 5px solid rgba(0, 0, 0, 0.2);
  border-bottom: 5px solid transparent;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-width: 20px;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.step_list li:last-child {
  padding-bottom: 0;
}

.step_list li:last-child:after {
  content: none;
}

.step_list .last {
  position: relative;
  padding-bottom: 0;
}

.step_list .last::after {
  display: none;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .step_list {
    margin-top: 5vw;
  }
  .step_list .step_text {
    margin-top: 3vw;
  }
  .step_list li {
    padding-bottom: 15vw;
  }
  .step_list li:after {
    width: 8vw;
    height: 8vw;
    border-width: 5.5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	step_point	
-------------------------------------------------------------*/
.step_list .step_point {
  text-align: center;
  margin-top: 30px;
  padding: 20px 0 15px 0;
}

.step_list .step_point p {
  position: relative;
  display: inline-block;
  color: #000;
  background: rgba(255, 255, 255, 0.6);
  border-radius: 2px;
  padding: 20px 20px;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.05);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.05);
  border: solid 2px #ff0;
}

.step_list .step_point p:before {
  content: "POINT";
  position: absolute;
  width: 50px;
  height: auto; /* for IE */
  top: -10px;
  left: -10px;
  background: #ff0;
  color: #000;
  font-size: 10px;
  line-height: 20px;
  -webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.05);
          box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.05);
  font-weight: bold;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .step_list .step_point p {
    padding: 5vw;
    text-align: left;
    font-size: 3.2vw;
  }
  .step_list .step_point {
    margin-top: 5vw;
    padding: 3vw 0;
  }
  .step_list .step_point p:before {
    width: 14vw;
    top: -2vw;
    left: -4vw;
    font-size: 3vw;
    line-height: 5vw;
    text-align: center;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	step_list txt	
-------------------------------------------------------------*/
.step_list p {
  font-size: 14px;
}

.step_list .step_title {
  color: #182980;
  border: 1px solid rgba(24, 41, 128, 0.3);
  padding: 20px 0;
  font-size: 18px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
  background: #fff;
  border-radius: 3px;
  color: #000;
  border: solid 1px rgba(0, 0, 0, 0.3);
}

.step_list .step_sub_title {
  font-size: 17px;
  border-bottom: 2px solid #000;
  padding-bottom: 5px;
  display: inline-block;
}

.step_list .step_title + .step_sub_title {
  margin-top: 30px;
}

.step_list .last .step_title {
  color: #fff;
  background: #182980;
  border: 0;
  letter-spacing: 0.5em;
  padding: 15px 0;
  font-size: 20px;
  color: #cd0000;
  background: #fff;
  border: solid 1px rgba(0, 0, 0, 0.3);
}

.entry_content_yellow .step_list .step_sub_title {
  /*border-color:#ffc300;*/
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .step_list p {
    font-size: 3.5vw;
  }
  .step_list .step_title {
    padding: 2vw 0;
    font-size: 3.8vw;
    line-height: 1.5;
  }
  .step_list .last .step_title {
    font-size: 5vw;
    padding: 3vw 0;
  }
  .step_list .step_sub_title {
    font-size: 3.5vw;
    line-height: 1.4;
    border-bottom: 1px dashed #000;
    padding-bottom: 3vw;
    display: block;
  }
  .step_list .step_title + .step_sub_title {
    margin-top: 3vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	proposal	
-------------------------------------------------------------*/
.step_list .proposal {
  font-weight: bold;
  margin-top: 20px;
}

.step_list .proposal .subject {
  color: #cd0000;
}

.step_list .proposal p {
  margin-top: 0;
  font-size: 16px;
}

.step_list .step_text_bottom p {
  margin-top: 0;
  font-size: 14px;
}

.step_list .step_text_bottom {
  margin-top: 30px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .step_list .proposal {
    margin-top: 3vw;
  }
  .step_list .proposal p {
    font-size: 3.5vw;
  }
  .step_list .step_text_bottom p {
    font-size: 3.5vw;
  }
  .step_list .step_text_bottom {
    margin-top: 3vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	foo	
-------------------------------------------------------------*/
.step_list .step_text .date {
  margin-top: 20px;
}

.step_list .step_text .date + .date {
  margin-top: 10px;
}

.step_list .step_text .date dt {
  display: inline-block;
  color: #fff;
  font-size: 14px;
  border-radius: 2px;
  padding: 2px 10px;
}

.step_list .step_text .date dd {
  display: inline-block;
  font-weight: bold;
  padding: 3px 0 2px 10px;
}

.step_list .step_text .date.regist dt,
.step_list .step_text .date.start dt {
  background: #cd0000;
}

.step_list .step_text .date.regist dd,
.step_list .step_text .date.start dd {
  color: #cd0000;
}

.step_list .step_text .date.submit dt {
  background: #182980;
}

.step_list .step_text .date.submit dd {
  color: #182980;
}

.step_list .step_text .date.submit dd .caution {
  color: #000;
  font-weight: normal;
  padding-left: 10px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .step_list .step_text .date {
    margin-top: 3vw;
  }
  .step_list .step_text .date + .date {
    margin-top: 2vw;
  }
  .step_list .step_text .date dt {
    font-size: 3.2vw;
    border-radius: 2px;
    padding: 0.5vw 2vw;
  }
  .step_list .step_text .date dd {
    display: block;
    font-size: 3.5vw;
    padding: 1vw 0 2vw 2vw;
  }
  .step_list .step_text .date.submit dd .caution {
    display: block;
    margin-top: 0;
    padding: 0;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	step_document	
-------------------------------------------------------------*/
.step_list .step_document {
  background: rgba(255, 255, 255, 0.8);
  border-radius: 5px;
  padding: 20px;
  margin-top: 15px;
}

.step_list .step_document li {
  padding: 0;
}

.step_list .step_document li + li {
  margin-top: 15px;
}

.step_list .step_document li:after {
  content: none;
}

.step_list .step_document li p {
  font-size: 14px;
  margin-top: 5px;
}

.step_list .step_document li .name {
  position: relative;
  font-size: 16px;
  font-weight: bold;
  padding-left: 1.5em;
}

.step_list .step_document li .name:before {
  content: attr(data-no) ".";
  position: absolute;
  top: 0;
  left: 0;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .step_list .step_document {
    padding: 3vw;
    margin-top: 3vw;
  }
  .step_list .step_document li + li {
    margin-top: 3vw;
  }
  .step_list .step_document li p {
    font-size: 3.2vw;
    margin-top: 0.5vw;
  }
  .step_list .step_document li .name {
    font-size: 3.2vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	表組
-------------------------------------------------------------*/
.basic_content .table > thead > tr > th,
.basic_content .table > tbody > tr > th,
.basic_content .table > tfoot > tr > th,
.basic_content .table > thead > tr > td,
.basic_content .table > tbody > tr > td,
.basic_content .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;
}

.basic_content .table {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
}

.basic_content * + .table {
  margin-top: 20px;
}

.basic_content .h_lv3 + .table {
  /*margin-top: 10px;*/
}

.basic_content .table th,
.basic_content .table td {
  text-align: center;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border: solid 1px #ccc;
  border-collapse: collapse;
  padding: 15px;
  margin: 0;
}

.basic_content .table th {
  font-size: 16px;
  background-color: rgba(172, 233, 255, 0.3);
}

.basic_content .table td {
  font-size: 16px;
  font-weight: bold;
  text-align: left;
  vertical-align: middle;
}

/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content .table > thead > tr > th,
  .basic_content .table > tbody > tr > th,
  .basic_content .table > tfoot > tr > th,
  .basic_content .table > thead > tr > td,
  .basic_content .table > tbody > tr > td,
  .basic_content .table > tfoot > tr > td {
    padding: 2vw;
  }
  .basic_content * + .table {
    margin-top: 3vw;
  }
  .basic_content .h_lv3 + .table {
    /*margin-top: 2vw;*/
  }
  .basic_content .table th,
  .basic_content .table td {
    padding: 2vw;
  }
  .basic_content .table th,
  .basic_content .table td {
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	btn_detail	
-------------------------------------------------------------*/
.basic_content .btn_detail a {
  position: relative;
  text-decoration: none;
  display: block;
  background-color: #182980;
  text-align: center;
  color: #fff;
  font-size: 20px;
  line-height: 20px;
  font-weight: normal;
  padding: 20px 0;
  border-radius: 3px;
}

.basic_content .btn_detail a:after {
  position: absolute;
  content: " ";
  width: 8px;
  height: 8px;
  top: 0;
  left: auto;
  bottom: 0;
  right: 10px;
  margin: auto;
  border-top: solid 1px #fff;
  border-left: solid 1px #fff;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}

.basic_content .btn_detail a:hover {
  text-decoration: none;
  color: #fff;
  background-color: #162c9c;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .btn_detail {
    width: 100%;
    margin: 0 auto;
    margin-top: 5vw;
  }
  .btn_detail a {
    font-size: 4.5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	list	
-------------------------------------------------------------*/
.basic_content .ul_list {
  margin-top: 1em;
}

.basic_content .ul_list li {
  font-size: 16px;
  line-height: 1.6;
  padding-left: 1em;
  text-indent: -1em;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content .ul_list {
    margin-top: 1em;
  }
  .basic_content .ul_list li {
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	caption_wrp	
-------------------------------------------------------------*/
.basic_content .caption_wrp {
  margin-top: 1em;
}

.basic_content .caption_wrp p {
  color: #888;
  font-size: 14px;
  line-height: 1.6;
  padding-left: 1em;
  text-indent: -1em;
  margin-top: 0;
}

.basic_content .caption_wrp p.red {
  color: #cd0000;
  font-weight: bold;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content .caption_wrp {
    margin-top: 1em;
  }
  .basic_content .caption_wrp p {
    font-size: 3vw;
    margin-top: 0;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	column_wrp	
-------------------------------------------------------------*/
.basic_content .column_wrp {
  padding: 30px;
  margin-top: 40px;
  background: #f5f5f5;
}

.basic_content .column_wrp .head {
  font-size: 20px;
  line-height: 1.6;
  font-weight: bold;
  text-align: center;
  /*text-decoration: underline;*/
}

.basic_content .column_wrp .head.red {
  color: #cd0000;
}

.basic_content .column_wrp .lead {
  font-size: 16px;
  line-height: 1.6;
  font-weight: bold;
  text-align: center;
}

.basic_content .column_wrp p {
  margin-top: 10px;
}

.basic_content .column_wrp .btn {
  width: 300px;
  margin: 0 auto;
  margin-top: 20px;
}

.basic_content .column_wrp .btn a {
  position: relative;
  display: block;
  font-size: 18px;
  line-height: 1.4;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  padding: 20px;
  background: #fff;
}

.basic_content .column_wrp .btn a:hover {
  opacity: 0.7;
}

.basic_content .column_wrp .btn a:after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  top: 0;
  left: auto;
  bottom: 0;
  right: 15px;
  margin: auto;
  border-top: solid 1px #337ab7;
  border-left: solid 1px #337ab7;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content .column_wrp {
    padding: 3vw;
    margin-top: 4vw;
  }
  .basic_content .column_wrp .head {
    font-size: 3.5vw;
    text-align: left;
  }
  .basic_content .column_wrp .lead {
    font-size: 3.5vw;
    text-align: left;
  }
  .basic_content .column_wrp p {
    margin-top: 2vw;
  }
  .basic_content .column_wrp .btn {
    width: 100%;
    margin-top: 2vw;
  }
  .basic_content .column_wrp .btn a {
    font-size: 3.5vw;
    padding: 2vw;
  }
  .basic_content .column_wrp .btn a:after {
    width: 2vw;
    height: 2vw;
    right: 3vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	two_point_circle	
-------------------------------------------------------------*/
.basic_content .two_point_circle {
  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: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 30px;
}

.basic_content .two_point_circle:before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 50px;
  height: 2px;
  background: #cd0000;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.basic_content .two_point_circle:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 50px;
  height: 2px;
  background: #cd0000;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.basic_content .two_point_circle .item {
  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: 200px;
  height: 200px;
  background: #daf5ff;
  margin: 0 30px;
  border-radius: 50%;
}

.basic_content .two_point_circle .item:nth-child(2) {
  background: #ffff9b;
}

.basic_content .two_point_circle .item p {
  font-size: 19px;
  line-height: 1.4;
  font-weight: bold;
  text-align: center;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content .two_point_circle {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-top: 3vw;
  }
  .basic_content .two_point_circle:before {
    width: 8vw;
    height: 2px;
  }
  .basic_content .two_point_circle:after {
    width: 8vw;
    height: 2px;
  }
  .basic_content .two_point_circle .item {
    width: 40vw;
    height: 40vw;
    margin: 0;
  }
  .basic_content .two_point_circle .item p {
    font-size: 4vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	two_box	
-------------------------------------------------------------*/
.basic_content .two_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;
  margin-top: 40px;
}

.basic_content .two_box .item {
  width: 50%;
}

.basic_content .two_box .txt {
  position: relative;
  padding: 20px;
  background: #f5f5f5;
}

.basic_content .two_box .txt:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -30px;
  margin: auto;
  width: 15px;
  height: 15px;
  border-top: 15px solid transparent;
  border-right: 15px solid #f5f5f5;
  border-bottom: 15px solid transparent;
  border-left: 15px solid transparent;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.basic_content .two_box .head {
  color: #000;
  font-size: 16px;
  line-height: 1.4;
  font-weight: bold;
  text-align: left;
}

.basic_content .two_box p {
  font-size: 16px;
  line-height: 1.4;
  text-align: left;
  margin-top: 20px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .basic_content .two_box {
    margin-top: 4vw;
  }
  .basic_content .two_box .item {
    width: 100%;
  }
  .basic_content .two_box .item + .item {
    margin-top: 4vw;
  }
  .basic_content .two_box .txt {
    padding: 5vw;
  }
  .basic_content .two_box .txt:after {
    content: "";
    position: absolute;
    top: -7vw;
    bottom: auto;
    left: 0;
    right: 0;
    margin: auto;
    width: 4vw;
    height: 4vw;
    border-top: 4vw solid transparent;
    border-right: 4vw solid transparent;
    border-bottom: 4vw solid #f5f5f5;
    border-left: 4vw solid transparent;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .basic_content .two_box .head {
    font-size: 3.5vw;
  }
  .basic_content .two_box p {
    font-size: 3.5vw;
    margin-top: 2vw;
  }
} /* for SP max-width: $width_sp */
/*===============================================================

	scroll_subfix_wrp

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

.scroll_subfix_wrp .scroll_subfix_item.fix {
  position: fixed;
  top: 120px;
  right: calc((100% - 1070px) / 2);
  /*z-index: 1000;*/
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
  .scroll_subfix_wrp .sub .fix {
    top: 70px;
  }
} /* for tablet max-width: 960px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .scroll_subfix_wrp {
    display: block;
  }
  .scroll_subfix_wrp .main {
    width: 100%;
    padding: 20px;
  }
  .scroll_subfix_wrp .sub {
    width: 100%;
  }
  .scroll_subfix_wrp .sub .scroll_subfix_item .inner {
    padding: 20px;
  }
} /* for SP max-width: 736px */
/*===============================================================

	/entrance/scholarship.html
	学費サポート

===============================================================*/
/*-------------------------------------------------------------
	box_2_item	
-------------------------------------------------------------*/
.box_2_item .item {
  margin-top: 20px;
  border: 1px solid rgba(0, 0, 0, 0.2);
}

.box_2_item .head {
  font-size: 16px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  padding: 15px;
  background: #eee;
}

.box_2_item dl {
  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;
  padding: 5px 20px 20px;
}

.box_2_item dl dt {
  position: relative;
  width: 60%;
  font-size: 16px;
  line-height: 1.6;
  padding: 15px 0 0;
}

.box_2_item dl .caption {
  display: block;
  font-size: 0.6em;
}

.box_2_item dl dt:before {
  content: "";
  position: absolute;
  top: 25px;
  right: 19px;
  margin: auto;
  width: 30px;
  height: 1px;
  background: #000;
}

.box_2_item dl dt:after {
  content: "";
  position: absolute;
  top: 20px;
  right: 20px;
  margin: auto;
  width: 10px;
  height: 10px;
  border-top: solid 1px #000;
  border-left: solid 1px #000;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.box_2_item dl dd {
  width: 40%;
  font-size: 16px;
  line-height: 1.6;
  font-weight: bold;
  padding: 15px 0 0;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .box_2_item .item {
    margin-top: 3vw;
  }
  .box_2_item .head {
    font-size: 3.5vw;
    padding: 2vw;
  }
  .box_2_item dl {
    padding: 0 2vw 2vw;
  }
  .box_2_item dl dt {
    width: 64%;
    font-size: 3.5vw;
    padding: 2vw 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .box_2_item dl dt:before {
    top: 4.5vw;
    right: 2.9vw;
    width: 4vw;
    height: 1px;
  }
  .box_2_item dl dt:after {
    top: 3.5vw;
    right: 3vw;
    width: 2vw;
    height: 2vw;
  }
  .box_2_item dl dd {
    width: 36%;
    font-size: 3.5vw;
    padding: 2vw 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	bold_red	
-------------------------------------------------------------*/
.bold_red {
  color: #e1716f;
  line-height: 1.6;
  font-weight: bold;
  text-align: center;
  margin-top: 20px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .bold_red {
    font-size: 3.5vw;
    margin-top: 3vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	table_th_left	
-------------------------------------------------------------*/
.table_th_left table {
  width: 100%;
}

.table_th_left th {
  width: 25%;
  text-align: left !important;
}

.table_th_left td {
  font-weight: normal !important;
  text-align: left !important;
}

.table_th_left td li {
  font-size: 14px;
  line-height: 1.6;
  text-indent: -1.5em;
  padding-left: 1.5em;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .table_th_left {
    overflow-x: scroll;
    white-space: nowrap;
  }
  /*スクロールバー全体*/
  .table_th_left::-webkit-scrollbar {
    height: 3px;
  }
  /*スクロールバーの軌道*/
  .table_th_left::-webkit-scrollbar-track {
    background: #eee;
  }
  /*スクロールバーの動く部分*/
  .table_th_left::-webkit-scrollbar-thumb {
    background-color: #666;
  }
  .table_th_left td li {
    font-size: 3vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	table_th_top
-------------------------------------------------------------*/
.table_th_top {
  margin-top: 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.table_th_top table {
  border-collapse: collapse;
  width: 100%;
}

.table_th_top table td {
  font-weight: normal !important;
  text-align: center !important;
}

.table_th_top table tr:nth-child(even) th,
.table_th_top table tr:nth-child(even) td {
  /*	background: rgba(0,0,0,0.03);*/
}

.table_th_top table .bold {
  font-weight: bold;
}

.table_th_top table .bg {
  display: inline-block;
  font-size: 80%;
  padding: 5px;
  margin-bottom: 5px;
  background: rgba(172, 233, 255, 0.3);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .table_th_top {
    overflow-x: scroll;
    white-space: nowrap;
    padding-bottom: 1vw;
  }
  /*スクロールバー全体*/
  .table_th_top::-webkit-scrollbar {
    height: 3px;
  }
  /*スクロールバーの軌道*/
  .table_th_top::-webkit-scrollbar-track {
    background: #eee;
  }
  /*スクロールバーの動く部分*/
  .table_th_top::-webkit-scrollbar-thumb {
    background-color: #666;
  }
  .table_th_top table .bg {
    padding: 1vw;
    margin-bottom: 1vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	txt_3_item	
-------------------------------------------------------------*/
.txt_3_item .item {
  background: #eee;
  padding: 15px;
  margin-top: 20px;
  background: none;
  border: solid 1px rgba(0, 0, 0, 0.2);
}

.txt_3_item .item p {
  font-size: 16px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .txt_3_item .item {
    padding: 3vw;
    margin-top: 3vw;
  }
  .txt_3_item .item p {
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	txt_2_item	
-------------------------------------------------------------*/
.txt_2_item .item {
  margin-top: 20px;
}

.txt_2_item .item .head {
  position: relative;
  font-size: 16px;
  line-height: 1.4;
  font-weight: bold;
  text-align: left;
  background: #f5f5f5;
  padding: 10px;
  padding-left: 50px;
}

.txt_2_item .item .head .num {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  color: #000;
  background: #ff0;
  padding: 10px 15px;
}

.txt_2_item .item .head .small {
  font-size: 10px;
}

.txt_2_item .item p {
  font-size: 14px;
  line-height: 1.6;
  margin-top: 15px;
}

.txt_2_item .item p + p {
  margin-top: 5px;
}

.txt_2_item .item .red {
  color: #e1716f;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .txt_2_item .item {
    margin-top: 5vw;
  }
  .txt_2_item .item .head {
    font-size: 3.5vw;
    padding: 2vw;
    padding-left: 9vw;
  }
  .txt_2_item .item .head .num {
    padding: 2vw;
  }
  .txt_2_item .item .head .small {
    display: block;
    font-size: 3vw;
  }
  .txt_2_item .item p {
    font-size: 3.5vw;
    margin-top: 2vw;
  }
  .txt_2_item .item p + p {
    margin-top: 2vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------
	btn_2_item	
-------------------------------------------------------------*/
.btn_2_item .item {
  margin-top: 30px;
}

.btn_2_item .item a {
  position: relative;
  display: block;
  height: 100%;
  text-decoration: none;
  padding: 20px;
  /*border-radius: 10px;*/
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /*
  	background: #daf5ff;
  	background: #f0f0f0;
  */
  border: solid 1px #337ab7;
}

.btn_2_item .item a:hover {
  opacity: 0.7;
}

.btn_2_item .item a:after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  top: 0;
  left: auto;
  bottom: 0;
  right: 15px;
  margin: auto;
  border-top: solid 1px #337ab7;
  border-left: solid 1px #337ab7;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.btn_2_item .item .read {
  font-size: 14px;
  line-height: 1.4;
}

.btn_2_item .item .head {
  font-size: 18px;
  line-height: 1.4;
  font-weight: bold;
  text-align: left !important;
  padding: 0;
}

.btn_2_item .btn_back {
  width: 300px;
  margin: 0 auto;
  margin-top: 40px;
}

.btn_2_item .btn_back a {
  position: relative;
  display: block;
  font-size: 16px;
  line-height: 2;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  padding: 10px;
  /*border-radius: 10px;*/
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #daf5ff;
}

.btn_2_item .btn_back a:hover {
  opacity: 0.7;
}

.btn_2_item .btn_back a:after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  top: 0;
  left: 15px;
  bottom: 0;
  right: auto;
  margin: auto;
  border-top: solid 1px #337ab7;
  border-left: solid 1px #337ab7;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .btn_2_item .item {
    margin-top: 3vw;
  }
  .btn_2_item .item a {
    padding: 5vw 3vw;
    /*border-radius: 5px;*/
  }
  .btn_2_item .item a:after {
    width: 2vw;
    height: 2vw;
    right: 3vw;
  }
  .btn_2_item .item .read {
    font-size: 3vw;
    padding-bottom: 0.5vw;
  }
  .btn_2_item .item .head {
    font-size: 3.5vw;
  }
  .btn_2_item .btn_back {
    width: 100%;
    margin-top: 6vw;
  }
  .btn_2_item .btn_back a {
    font-size: 3.5vw;
    padding: 2vw;
  }
  .btn_2_item .btn_back a:after {
    width: 2vw;
    height: 2vw;
    left: 3vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------

	/education/overseas-training.html
	海外実学研修、奨学金関連
	txt_detail	

-------------------------------------------------------------*/
.txt_detail {
  margin-top: 40px;
  border-bottom: 1px dashed #ccc;
}

.txt_detail .item {
  padding: 30px 0;
  border-top: 1px dashed #ccc;
}

.txt_detail .name {
  font-size: 20px;
  line-height: 1.6;
  text-align: center;
  padding: 5px 0;
  background: #eee;
}

.txt_detail .name + * {
  margin-top: 20px;
}

.txt_detail * + .name {
  margin-top: 20px;
}

.txt_detail .head {
  font-size: 17px;
  line-height: 1.6;
  font-weight: bold;
  text-align: left;
  padding: 0;
}

.txt_detail * + .head {
  margin-top: 20px;
}

.txt_detail .head + * {
  margin-top: 20px;
}

.txt_detail p {
  margin-top: 5px !important;
}

.txt_detail p.tel {
  font-size: 24px;
  line-height: 1;
  font-weight: bold;
}

.txt_detail p .tag {
  display: inline-block;
  padding: 0 3px;
  margin-right: 5px;
  border: 2px solid #666;
}

.txt_detail p .small {
  display: block;
  font-size: 80%;
}

.txt_detail .txt {
  margin-top: 40px;
}

.txt_detail .txt ul {
  margin-top: 20px;
}

.txt_detail .txt li {
  font-size: 80%;
  line-height: 1.4;
  margin-top: 5px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .txt_detail {
    margin-top: 3vw;
  }
  .txt_detail .item {
    padding: 5vw 0;
  }
  .txt_detail .name {
    font-size: 4.5vw;
    padding: 1vw 0;
  }
  .txt_detail .name + * {
    margin-top: 2vw;
  }
  .txt_detail * + .name {
    margin-top: 2vw;
  }
  .txt_detail .head {
    font-size: 3.5vw;
  }
  .txt_detail * + .head {
    margin-top: 2vw;
  }
  .txt_detail p {
    font-size: 3.5vw;
    margin-top: 2vw !important;
  }
  .txt_detail p.tel {
    font-size: 5vw;
  }
  .txt_detail p .tag {
    padding: 0 1vw;
    margin-right: 2vw;
  }
  .txt_detail p .small {
    font-size: 3vw;
  }
  .txt_detail .txt {
    margin-top: 4vw;
  }
  .txt_detail .txt ul {
    margin-top: 4vw;
  }
  .txt_detail .txt li {
    font-size: 3vw;
    margin-top: 2vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------

	奨学金系
	/entrance/loan_jfc.html
	contact_detail	

-------------------------------------------------------------*/
.contact_detail {
  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;
  padding: 20px 30px;
  margin-top: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
}

.contact_detail .left {
  width: 45%;
}

.contact_detail .right {
  width: 55%;
}

.contact_detail .right2 {
  width: 40%;
}

.contact_detail .qr {
  width: 10%;
  margin-left: 5%;
}

.contact_detail .head {
  font-size: 14px;
  line-height: 1;
  font-weight: normal;
  color: #666;
}

.contact_detail .read {
  font-size: 16px;
  line-height: 2;
  font-weight: normal;
}

.contact_detail .read .tag {
  display: inline-block;
  color: #fff;
  font-size: 16px;
  line-height: 1.6;
  font-weight: bold;
  padding: 1px 5px;
  margin-right: 5px;
  background: #999;
}

.contact_detail .tel {
  font-size: 40px;
  line-height: 1;
  font-weight: bold;
  margin-top: 10px !important;
  width: 100%;
  display: block;
}

.contact_detail .caption {
  font-size: 12px;
  line-height: 1.4;
  margin-top: 5px !important;
}

.contact_detail .link {
  width: 100%;
  font-size: 16px;
  line-height: 2;
  font-weight: bold;
  text-align: center;
  margin-top: 10px !important;
}

.contact_detail .link a {
  position: relative;
  display: block;
  width: 100%;
  text-decoration: none;
  padding: 10px;
  background: #ff0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #000;
}

.contact_detail .link a:after {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  top: 0;
  left: auto;
  bottom: 0;
  right: 15px;
  margin: auto;
  border-top: solid 1px #000;
  border-left: solid 1px #000;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.contact_detail .link a:hover {
  opacity: 0.7;
  color: #000;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .contact_detail {
    padding: 3vw;
    margin-top: 3vw;
  }
  .contact_detail .item {
    padding: 0;
  }
  .contact_detail .item + .item {
    margin-top: 2vw;
  }
  .contact_detail .left {
    width: 100%;
  }
  .contact_detail .right {
    width: 100%;
    margin-top: 2vw;
  }
  .contact_detail .right2 {
    width: 100%;
    margin-top: 3vw;
    padding-top: 3vw;
    border-top: solid 1px #ddd;
  }
  .contact_detail .qr {
    display: none;
  }
  .contact_detail .head {
    font-size: 3vw;
  }
  .contact_detail .read {
    font-size: 3vw;
  }
  .contact_detail .read .tag {
    font-size: 3vw;
    padding: 0.5vw 1vw;
    margin-right: 1vw;
  }
  .contact_detail .tel {
    font-size: 6vw;
    margin-top: 2vw !important;
  }
  .contact_detail .caption {
    font-size: 3vw;
    margin-top: 1vw !important;
  }
  .contact_detail .link {
    font-size: 3.5vw;
    margin-top: 3vw !important;
  }
  .contact_detail .link a {
    padding: 2vw;
  }
  .contact_detail .link a:after {
    width: 2vw;
    height: 2vw;
    right: 3vw;
  }
  .contact_detail .link a:hover {
    opacity: 0.7;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------

	/entrance/scholarship.html
	出願から入学までの流れ
	step_right	
-------------------------------------------------------------*/
.step_right {
  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;
}

.step_right .item {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  position: relative;
  width: 8%;
  height: 180px;
  margin-right: 3.5%;
  margin-top: 30px;
  background: #daf5ff;
}

.step_right .item:last-child {
  margin-right: 0;
}

.step_right .item:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: -30px;
  margin: auto;
  width: 10px;
  height: 10px;
  border-top: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 10px solid #ccc;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.step_right .item:last-child:after {
  display: none;
}

.step_right .item .head {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 16px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  text-orientation: upright;
  height: 100%;
}

.step_right .item_l {
  width: 12%;
}

.step_right .item_l .head {
  font-size: 18px;
}

.step_right .item_tag {
  width: 4%;
  height: 100px;
  background: #e1716f;
}

.step_right .item_tag .head {
  color: #fff;
  font-size: 14px;
  font-weight: normal;
}

/* タブレット以下 */
@media screen and (max-width: 1070px) {
  .step_right .item:after {
    right: -3.5vw;
  }
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 800px) {
  .step_right {
    display: block;
    text-align: center;
    margin-top: 4vw;
  }
  .step_right .item {
    width: 100%;
    height: auto;
    margin-right: 0;
    margin-top: 5vw;
  }
  .step_right .item:first-child {
    margin-top: 3vw;
  }
  .step_right .item:after {
    left: 0;
    right: 0;
    top: auto;
    bottom: -5.5vw;
    width: 2vw;
    height: 2vw;
    border-top: 2vw solid #000;
    border-right: 2vw solid transparent;
    border-bottom: 2vw solid transparent;
    border-left: 2vw solid transparent;
  }
  .step_right .item .head {
    position: static;
    -webkit-transform: none;
    transform: none;
    font-size: 3.5vw;
    padding: 3vw;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
    -ms-writing-mode: horizontal-tb;
    text-orientation: inherit;
    height: auto;
  }
  .step_right .item_l .head {
    font-size: 3.5vw;
  }
  .step_right .item_tag {
    width: 40%;
    margin-left: auto;
    margin-right: auto;
  }
  .step_right .item_tag .head {
    font-size: 3.5vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------

	/entrance/scholarship_jasso.html
	奨学金制度 日本学生支援機構
	step_down	
-------------------------------------------------------------*/
.step_down .title {
  font-size: 30px;
  line-height: 1.4;
  font-weight: bold;
  text-align: center;
}

.step_down .title .small {
  display: block;
  font-size: 16px;
}

.step_down .read {
  font-size: 16px;
  margin-top: 20px;
  line-height: 1.4;
}

.step_down .steps {
  text-align: center;
}

.step_down .steps .item {
  position: relative;
  margin-top: 30px;
  border: solid 1px #ccc;
}

.step_down .steps .item:first-child {
  margin-top: 20px;
}

.step_down .steps .item:after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  right: 0;
  margin: auto;
  width: 10px;
  height: 10px;
  border-top: 10px solid #666;
  border-right: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 10px solid transparent;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.step_down .steps .item:last-child:after {
  display: none;
}

.step_down .steps .item .head {
  font-size: 16px;
  line-height: 1;
  font-weight: bold;
  text-align: center;
  padding: 10px 15px;
  background: #daf5ff;
  border: 0px solid #000;
}

.step_down .steps .item_tag {
  width: 200px;
  margin-left: auto;
  margin-right: auto;
}

.step_down .steps .item_tag .head {
  font-size: 14px;
  font-weight: normal;
}

.step_down .steps .item .txt {
  margin: 0;
  padding: 15px;
  background: #fafafa;
  border: 0px solid #000;
  border-top: none;
}

.step_down .steps .item .txt p + p {
  margin-top: 5px;
}

.step_down .caption {
  color: #e1716f;
  margin-top: 20px;
}

.step_down .caption .head {
  font-size: 16px;
  font-weight: bold;
}

.step_down .caption p {
  font-size: 14px;
  margin-top: 5px;
}

/* タブレット以下 */
/* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 800px) {
  .step_down {
    margin-top: 4vw;
  }
  .step_down .title {
    font-size: 4.5vw;
  }
  .step_down .title .small {
    font-size: 3.5vw;
  }
  .step_down .read {
    font-size: 4vw;
    margin-top: 2vw;
  }
  .step_down .steps .item {
    margin-top: 5vw;
  }
  .step_down .steps .item:first-child {
    margin-top: 3vw;
  }
  .step_down .steps .item:after {
    bottom: -5.5vw;
    width: 2vw;
    height: 2vw;
    border-top: 2vw solid #000;
    border-right: 2vw solid transparent;
    border-bottom: 2vw solid transparent;
    border-left: 2vw solid transparent;
  }
  .step_down .steps .item .txt {
    padding: 2vw;
  }
  .step_down .steps .item .head {
    font-size: 3.5vw;
    padding: 3vw;
  }
  .step_down .steps .item_tag {
    width: 40%;
  }
  .step_down .steps .item .txt p + p {
    margin-top: 1vw;
  }
  .step_down .caption {
    padding: 2vw;
    margin-top: 2vw;
  }
  .step_down .caption .head {
    font-size: 3.5vw;
  }
  .step_down .caption p {
    font-size: 3.5vw;
    margin-top: 1vw;
  }
} /* for SP max-width: $width_sp */
/*-------------------------------------------------------------

	page_footer.php
	現在コメントアウト中y	side_launcher	

-------------------------------------------------------------*/
.side_launcher {
  position: fixed;
  top: 0;
  bottom: 0;
  right: 30px;
  margin: auto;
  width: auto;
  height: 160px;
  font-size: 14px;
  line-height: 20px;
  color: #000;
  z-index: 11;
}

.side_launcher {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.side_launcher .top_launcher_btn + .top_launcher_btn {
  margin-top: 20px;
}

.side_launcher .top_launcher_btn a {
  display: block;
  font-size: 15px;
  line-height: 40px;
  width: 40px;
  height: 40px;
  white-space: nowrap;
  text-indent: 100%;
  text-align: center;
  overflow: hidden;
  border-radius: 20px;
  border: solid 2px #000;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-decoration: none;
  color: #000;
  font-weight: bold;
  background-color: rgba(255, 255, 255, 0.7);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 35px 35px;
  letter-spacing: 0px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.side_launcher .top_launcher_event a {
  background-image: url("../images/top/launcher_event.svg");
}

.side_launcher .top_launcher_siryo a {
  background-image: url("../images/top/launcher_siryo.svg");
}

.side_launcher .top_launcher_access a {
  background-image: url("../images/top/launcher_access.svg");
}

.side_launcher .top_launcher_online a {
  background-image: url("../images/top/launcher_online.svg");
}

.side_launcher .top_launcher_btn a:hover {
  display: block;
  font-size: 16px;
  line-height: 40px;
  width: 160px;
  height: 40px;
  white-space: nowrap;
  text-indent: 25px;
  overflow: hidden;
  background-position: 7px center;
  background-color: #ff0;
}

.side_launcher .top_launcher_btn.top_launcher_online a {
  letter-spacing: 0;
  background-size: 30px 30px;
}

.side_launcher .top_launcher_btn.top_launcher_online a:hover {
  width: 310px;
  text-indent: 35px;
  background-position: 12px center;
}

/* タブレット以下 */
@media screen and (max-width: 1200px) {
  /*
  .side_launcher {
  	top: 30px; bottom: auto;
  }*/
} /* for tablet max-width: 1070px */
/* SP向けレイアウトの指定：～$width_sp */
@media only screen and (max-width: 800px) {
  .side_launcher {
    position: relative;
    -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-align: center;
        -ms-flex-align: center;
            align-items: center;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    padding: 0 2%;
  }
  .side_launcher .top_launcher_btn {
    width: 32%;
  }
  .side_launcher .top_launcher_btn + .top_launcher_btn {
    margin-top: 0;
  }
  .side_launcher .top_launcher_btn a:hover,
  .side_launcher .top_launcher_btn a,
  .side_launcher .top_launcher_btn.top_launcher_online a:hover,
  .side_launcher .top_launcher_btn.top_launcher_online a {
    display: block;
    font-size: 3vw;
    line-height: 1.5;
    font-weight: normal;
    width: 100%;
    height: auto;
    padding: 1vw 0;
    padding-top: 10vw;
    text-indent: 0vw;
    overflow: hidden;
    border-radius: 0;
    border: solid 1px #666;
    background-position: top center;
    background-size: 12vw 12vw;
  }
  .side_launcher .top_launcher_btn.top_launcher_online a:hover,
  .side_launcher .top_launcher_btn.top_launcher_online a {
    font-size: 2.6vw;
    line-height: 1.1;
    letter-spacing: 0;
    background-size: 10vw 10vw;
    padding-top: 9.3vw;
  }
} /* for SP max-width: $width_sp */