@charset "UTF-8";
/* -------------------------------------------------- */
/* file   : alma_mater.css                          */
/* update : 2020                                      */
/* -------------------------------------------------- */
/* -------------------------*/
/* 定義 */
/* -------------------------*/
.color_game {
  color: #e50166;
}

.color_it {
  color: #119ba3;
}

.mt01 {
  margin-top: 10px;
}

.flex_box {
  width: 100%;
  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;
}

.flex_100 {
  width: 100%;
  border: solid 1px #333;
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 50px;
  text-align: center;
  position: relative;
}

.flex_100.last {
  margin-bottom: 80px;
}

.flex_100:before {
  content: '';
  height: 46px;
  width: 6px;
  background: #25a5ec;
  position: absolute;
  top: -50px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.flex_100:after {
  content: '';
  position: absolute;
  top: -10px;
  left: 50%;
  width: 0px;
  height: 0px;
  margin: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 10px solid transparent;
  border-top: 8px solid #25a5ec;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.flex_100.first:before, .flex_100.first:after {
  content: none;
}

.flex_100 p {
  text-align: center;
}

.flex_50 {
  width: 48%;
}

.flex_50_box {
  border: solid 1px #333;
  padding: 20px;
  margin-bottom: 50px;
  text-align: center;
  position: relative;
}

.flex_50_box p {
  text-align: center;
}

.flex_50_box:before {
  content: '';
  height: 46px;
  width: 6px;
  background: #25a5ec;
  position: absolute;
  top: -50px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.flex_50_box:after {
  content: '';
  position: absolute;
  top: -10px;
  left: 50%;
  width: 0px;
  height: 0px;
  margin: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 10px solid transparent;
  border-top: 8px solid #25a5ec;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.flex_50_box.first:before {
  height: 55px;
  top: -64px;
}

.flex_50_box.first::after {
  top: -13px;
}

.tit01 {
  position: relative;
  text-align: center;
  background: #fff;
  z-index: 2;
  margin-top: -50px;
  margin-bottom: 20px;
}

.repay .admission_table th {
  width: 190px;
}

/*---------------------------------*/
/* ハンバーガーメニューになるサイズのCSS */
/*---------------------------------*/
/*-------------------------------*/
/* SP用のCSS */
/*-------------------------------*/
@media screen and (max-width: 559px) {
  /* sp */
  .mt01 {
    margin-top: 5px;
  }
  .alma_mater .admission_table .blue {
    width: 100%;
  }
  .alma_mater .admission_table td {
    padding: 5px 5px 10px;
  }
  .repay .admission_table th {
    width: 100%;
  }
  .flex_50_box.first:before {
    height: 72px;
    top: -83px;
  }
  /*----------------sp end---------------*/
}
