@charset "utf-8";

/*--------------------------------------------------------------------------
   Overwright
---------------------------------------------------------------------------*/
.page-ttl {
  background: url(../image/top/img_kv_pc.jpg) no-repeat center center;
  background-size: cover;
}

/*--------------------------------------------------------------------------
   Content
---------------------------------------------------------------------------*/

/* department
-----------------------------------------------------------------*/
.department {
  padding: 88px 0;
}
.department .sec-ttl + .txt {
  margin-bottom: 65px;
}
.department .course-list {
  display: flex;
  justify-content: space-between;
  margin-bottom: 60px;
}
.department .course-list li {
  width: calc((100% - 5%) / 3);
}
.department .course-list .pic {
  position: relative;
}
.department .course-list .pic .baloon {
  position: absolute;
  top: -18px;
}
.department .course-list .course01 .baloon {
  right: -10px;
  width: 28.63%;
}
.department .course-list .course02 .baloon {
  left: -14px;
  width: 30.45%;
}
.department .course-list .course03 .baloon {
  right: -10px;
  width: 28.63%;
}
.department .course-list .course04 .baloon {
  right: -10px;
  width: 28.63%;
}
.department .course-list .txt-area {
  position: relative;
  z-index: 5;
  padding: 20px 15px 24px;
  border-radius: 14px;
  margin: -28% 5% 0;
  text-align: center;
  color: #fff;
}
.department .course-list .course01 .txt-area {
  background: #20aee5;
}
.department .course-list .course02 .txt-area {
  background: #f5ac3c;
}
.department .course-list .course03 .txt-area {
  background: #ec7a9a;
}
.department .course-list .course04 .txt-area {
  background: #8800ff;
}
.department .course-list h3 {
  margin-bottom: 8px;
  font-size: 1.9rem;
}
.department .course-list .year {
  margin-bottom: 18px;
}
.department .course-list .year span {
  display: inline-block;
  margin: 0 3px;
  padding: 0 10px;
  border-radius: 3px;
  font-size: 1.4rem;
}
.department .course-list .course01 .year span {
  background: #d1eefd;
  color: #20aee5;
}
.department .course-list .course02 .year span {
  background: #fff4df;
  color: #f5ac3c;
}
.department .course-list .course03 .year span {
  background: #fbe5eb;
  color: #ec7a9a;
}
.department .course-list .btn-detail a {
  max-width: 280px;
  width: 86%;
  height: 45px;
  line-height: 41px;
  font-size: 1.6rem;
  background-position: right 22px center;
}
.btn_line_round a:before,
.btn_line_round span:before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  z-index: -1;
  background-color: #231815;
  transition: all 200ms linear;
}
.btn_line_round a:hover,
.btn_line_round span:hover {
  color: #ffffff;
  border-color: #231815;
}
.btn_line_round a:hover:before,
.btn_line_round span:hover:before {
  left: 0;
}
.department .course-list .btn-detail a:hover {
  background-position: right -30px center;
}
.btn_line_round._w a:before,
.btn_line_round._w span:before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  z-index: -1;
  background-color: #ffffff;
  transition: all 200ms linear;
}
.btn_line_round._w a:hover,
.btn_line_round._w span:hover {
  border-color: #ffffff;
}
.btn_line_round._w a.hovergreen:hover,
.btn_line_round._w span.hovergreen:hover {
  color: #7fbe26;
}
.btn_line_round._w a.hoverbio:hover,
.btn_line_round._w span.hoverbio:hover {
  color: #20aee5;
}
.btn_line_round._w a.hovermed:hover,
.btn_line_round._w span.hovermed:hover {
  color: #f5ac3c;
}
.btn_line_round._w a.hoverpsy:hover,
.btn_line_round._w span.hoverpsy:hover {
  color: #ec7a9a;
}
.btn_line_round._w a.hoverint:hover,
.btn_line_round._w span.hoverint:hover {
  color: #ff1d25;
}
.btn_line_round._w a:hover:before,
.btn_line_round._w span:hover:before {
  left: 0;
}
.department .international {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 640px;
  margin: 40px auto 0;
  padding: 24px 15px;
  border-radius: 14px;
  background: #ff1d25;
  color: #fff;
}
.department .international h3 {
  max-width: 205px;
  padding-right: 24px;
  border-right: 1px solid #fff;
  line-height: 1;
  font-size: 2.6rem;
}
.department .international h3 span.en {
  display: block;
  margin-top: 8px;
  padding: 0 10px;
  border-radius: 3px;
  background: #efcbcb;
  color: #ff1d25;
  line-height: 1.8;
  font-size: 1.4rem;
}
.department .international .btn-detail {
  margin-left: 24px;
  max-width: 320px;
  width: 50%;
}
.department .international .btn-detail a {
  width: 100%;
  margin: 0;
  height: 45px;
  line-height: 41px;
  font-size: 1.6rem;
  background-position: right 22px center;
}

/* department
-----------------------------------------------------------------*/
.department {
  padding: 50px 0 100px;
}
.department .txt-lead {
  margin-bottom: 25px;
  text-align: center;
  font-size: 2.8rem;
  line-height: 1.5;
  font-weight: 800;
  color: #7fbc26;
}
.department .txt-lead + .txt {
  margin-bottom: 50px;
  font-size: 1.8rem;
  text-align: center;
}
.department .course-list {
  display: flex;
  justify-content: space-between;
  max-width: 1350px;
  margin: 0 auto;
}
.department .course-list li {
  max-width: 420px;
  width: calc((100% - 30px) / 4);
}
.department .course-list li a:hover {
  opacity: 0.8;
}
.department .course-list .txt-area {
  position: relative;
  margin: -15% 20px 0;
  border-radius: 10px;
  background: #fff;
}
/*
.department .course-list .txt-area a{
  display: block;
  padding: 20px 15px;
  background: #7FBE26;
  border-radius: 10px; 
}
*/
.department .course-list .txt-area .txt {
  margin-bottom: 15px;
  text-align: center;
  font-size: 2.6rem;
  color: #fff;
  font-weight: bold;
  line-height: 1;
}
.department .course-list .txt-area .btn span {
  max-width: 280px;
  height: 45px;
  line-height: 43px;
  font-size: 1.6rem;
  background-size: 20px auto;
  background-position: right 15px center;
}

/*--------------------------------------------------------------------------
   tablet
---------------------------------------------------------------------------*/

@media screen and (max-width: 1260px) {
  .department .course-list h3 {
    font-size: 2.4rem;
  }
}

/*--------------------------------------------------------------------------
   mobile
---------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {
  .page-ttl {
    background: url(../image/top/img_kv_sp.jpg) no-repeat center center;
    background-size: cover;
  }

  .department .txt-lead {
    font-size: 1.6rem;
  }

  .department .txt-lead + .txt {
    font-size: 1.4rem;
  }

  /* department
-----------------------------------------------------------------*/
  .department {
    padding: 50px 0;
  }
  #Page .department .sec-ttl img {
    width: auto;
    height: 24px;
  }
  .department .sec-ttl + .txt {
    margin-bottom: 25px;
  }
  .department .course-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 0;
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
  }
  .department .course-list li {
    width: 48%;
    margin-bottom: 15px;
  }
  .department .course-list .btn-detail a,
  .department .international .btn-detail a {
    background-position: right 15px center;
  }
  .department .international {
    display: block;
  }
  .department .international h3 {
    margin-bottom: 15px;
    max-width: initial;
    padding-right: 0;
    border-right: none;
    text-align: center;
  }
  .department .international h3 span {
    display: block;
  }
  .department .international h3 span.en {
    display: inline-block;
  }
  .department .international .btn-detail {
    margin-left: 0;
    max-width: initial;
    width: 100%;
  }
}
