@charset "UTF-8";
* {
  box-sizing: border-box; }

html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  font-size: 62.5%;
  overflow-y: scroll;
  scroll-behavior: smooth; }

html, body, #wrap {
  height: 100%; }

body {
  position: relative;
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.6rem;
  font-weight: 500;
  color: #222222;
  line-height: 1.8;
  background: #B0CBF3 url("./innovation/images/_common/body_bg.png") repeat-y scroll center center;
  background-size: cover; }
  @media (min-width: 1199px) {
    body {
      font-size: 1.8rem; } }

#wrap {
  position: relative;
  margin: 0 auto;
  padding-top: 74px;
  scroll-margin-top: 74px; }

figure,
figure img {
  width: 100%;
  padding: 0;
  margin: 0; }

img {
  vertical-align: bottom; }

a {
  color: #0645AD;
  text-decoration: none;
  -webkit-transition: 0.3s all ease;
  -moz-transition: 0.3s all ease;
  -ms-transition: 0.3s all ease;
  -o-transition: 0.3s all ease;
  transition: 0.3s all ease; }
  a:hover {
    color: #1d9fd8;
    -webkit-transition: 0.3s all ease;
    -moz-transition: 0.3s all ease;
    -ms-transition: 0.3s all ease;
    -o-transition: 0.3s all ease;
    transition: 0.3s all ease; }

input, select, option, button {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  -ms-border-radius: 0;
  border-radius: 0;
  border: none;
  outline: 0;
  margin: 0;
  background: #FFF; }

textarea,
input[type="number"],
input[type="text"] {
  padding: .5rem;
  font-size: 1.4rem;
  border: 1px solid #d0d0d0;
  border-radius: 4px; }

textarea:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="text"]:focus {
  border: 1px solid #333; }

.select_box {
  display: inline-block;
  position: relative;
  border: 1px solid #d0d0d0;
  vertical-align: middle; }
  .select_box select {
    padding: 0.5rem;
    padding-right: 1em;
    border: none;
    outline: 0;
    background: #FFF;
    background-image: none;
    box-shadow: none;
    text-indent: 0.01px;
    text-overflow: ellipsis;
    cursor: pointer; }
    .select_box select option {
      color: #222222; }
  .select_box::after {
    position: absolute;
    top: calc(50% - 2px);
    right: 8px;
    width: 0;
    height: 0;
    border-width: 5px;
    border-style: solid;
    border-color: #d0d0d0 transparent transparent transparent;
    content: "";
    pointer-events: none; }

button {
  font-family: inherit;
  appearance: none;
  border: 0;
  border-radius: 4px;
  background: #009441;
  color: #fff;
  padding: .5rem 1em;
  font-size: 1.2rem;
  cursor: pointer;
  -webkit-transition: 0.3s all ease;
  -moz-transition: 0.3s all ease;
  -ms-transition: 0.3s all ease;
  -o-transition: 0.3s all ease;
  transition: 0.3s all ease; }
  button:hover {
    background: #00e163; }
  button:focus {
    outline: none;
    box-shadow: 0 0 0 4px #cbd6ee; }

.btn {
  text-align: center; }
  .btn a {
    position: relative;
    background: #009441;
    color: #fff;
    font-size: 1.6rem;
    padding: 1em calc(2em + 12px) 1em 2em;
    -webkit-transition: 0.3s all ease;
    -moz-transition: 0.3s all ease;
    -ms-transition: 0.3s all ease;
    -o-transition: 0.3s all ease;
    transition: 0.3s all ease; }
    .btn a:link, .btn a:visited {
      background: #009441; }
    .btn a:hover, .btn a:active {
      background: #00e163; }
    .btn a::after {
      content: "";
      position: absolute;
      right: 0;
      top: calc(50% - 6px);
      display: block;
      width: 0;
      height: 0;
      border: solid 6px #009441;
      border-color: transparent transparent transparent #FFF; }

/*----------------------------------------------

  AOS 移動距離

----------------------------------------------*/
.aos_item[data-aos="fade-up"] {
  transform: translateY(50px);
  transition-property: transform, opacity;
  opacity: 0; }
  .aos_item[data-aos="fade-up"].aos-animate {
    transform: translateY(0px);
    opacity: 1; }

.aos_item[data-aos="fade-down"] {
  transform: translateY(-50px);
  transition-property: transform, opacity;
  opacity: 0; }
  .aos_item[data-aos="fade-down"].aos-animate {
    transform: translateY(0px);
    opacity: 1; }

.aos_item[data-aos="fade-left"] {
  transform: translateX(100px);
  transition-property: transform, opacity;
  opacity: 0; }
  .aos_item[data-aos="fade-left"].aos-animate {
    transform: translateX(0px);
    opacity: 1; }

.aos_item[data-aos="fade-right"] {
  transform: translateX(-100px);
  transition-property: transform, opacity;
  opacity: 0; }
  .aos_item[data-aos="fade-right"].aos-animate {
    transform: translateX(0px);
    opacity: 1; }

/*----------------------------------------------

  ヘッダー / .site_header

----------------------------------------------*/
.site_header {
  display: flex;
  border-top: solid 1px #009441;
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  height: 74px;
  width: 100%;
  background: #FFF; }

.site_header_wrap {
  max-width: 1140px;
  margin: 0 auto;
  display: flex;
  align-items: center; }

.site_header_logo {
  margin: 0; }
  .site_header_logo img {
    display: block; }

.site_header_title {
  margin: 0 0 0 1em; }
  .site_header_title img {
    display: block; }

/*----------------------------------------------

  フッター / .site_footer

----------------------------------------------*/
.site_footer {
  padding: 1em;
  text-align: center;
  background: #FFF; }

/*----------------------------------------------

  共通パーツ

----------------------------------------------*/
article section {
  padding: 2em 0; }

/* ページトップへ戻る */
.pagetop {
  display: none;
  position: fixed;
  z-index: 9000;
  margin: 0; }

.pagetop a {
  display: block;
  background: #FFF;
  border: 2px solid #009441;
  text-align: center;
  color: #FFF;
  font-size: 1.8rem;
  text-decoration: none;
  width: 50px;
  height: 50px;
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  opacity: 1;
  border-radius: 50%; }

.pagetop a:hover {
  background: #009441;
  text-align: center;
  text-decoration: none;
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  opacity: 1; }

.pagetop a i {
  margin-right: 0;
  padding-top: .7em;
  color: #009441; }

.pagetop a:hover i {
  color: #FFF; }

/* ページトップへ戻る */
.pagetop {
  bottom: 1rem;
  right: 1rem; }

/*----------------------------------------------

  container

----------------------------------------------*/
.container {
  margin: 0 auto; }

/*----------------------------------------------

  トップページ

----------------------------------------------*/
.site_title_sec {
  position: relative;
  padding: 0 0 4rem; }
  .site_title_sec::after {
    display: block;
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    height: calc(100% - 4rem);
    width: 50%;
    background: #5777cf;
    background: linear-gradient(180deg, #5777cf 0%, #51a2ff 100%, #020024 3893%); }

.site_title_wrap {
  position: absolute;
  top: 28%;
  left: 6%;
  z-index: 100; }

.site_title, .site_title_copy {
  margin: 0;
  padding: 0;
  color: #FFF;
  font-weight: 800;
  font-feature-settings: "palt"; }
  .site_title span, .site_title_copy span {
    display: inline-block;
    padding: 0.5em 2rem;
    background: #6e3edf;
    background: linear-gradient(270deg, #6e3edf 0%, #3576c1 47%, #164495 100%, #020024 3893%); }

.site_title {
  font-size: 4.2rem;
  line-height: 1.2; }

.site_title_copy {
  margin-top: .5em;
  line-height: 1.6;
  font-size: 2rem; }
  .site_title_copy span::before {
    content: "- "; }
  .site_title_copy span::after {
    content: " -"; }

.site_title_fig {
  margin-left: 20%; }
  .site_title_fig img {
    width: 100%;
    height: auto; }

.main_container {
  max-width: 1180px;
  margin: 0 auto 4em;
  padding: 3rem 0;
  background: #FFF; }
  .main_container p + p {
    margin-top: 2em; }

.main_container_index .container > div + div {
  margin-top: 3em; }

.index_main_title {
  margin: 0 auto;
  color: #030746;
  font-size: 2.4rem;
  line-height: 1.4; }

.index_main_copy {
  font-size: 1.8rem;
  line-height: 1.6; }

.index_main_str_fig {
  text-align: center; }
  .index_main_str_fig img {
    width: auto;
    margin: 0 auto .5em; }
  .index_main_str_fig figcaption {
    font-size: 1.6rem; }

/*----------------------------------------------

  実務教員紹介

----------------------------------------------*/
.teacher_info_sec {
  background: #611729 url(./innovation/images/_common/teacher_list_bg.jpg) center bottom no-repeat;
  background-size: cover; }

.teacher_info_wrap {
  max-width: 1180px;
  margin: 0 auto;
  padding: 4rem 0;
  background: rgba(255, 255, 255, 0.8); }

.teacher_info_title {
  position: relative;
  color: #611729;
  text-align: center;
  max-width: 500px;
  margin: 0 auto 1.5em;
  padding: 1em; }
  .teacher_info_title::before, .teacher_info_title::after {
    content: "";
    position: absolute;
    width: 64px;
    height: 38px;
    border: solid 2px #611729; }
  .teacher_info_title::before {
    top: 0;
    left: 0;
    border-width: 2px 0 0 2px; }
  .teacher_info_title::after {
    bottom: 0;
    right: 0;
    border-width: 0 2px 2px 0; }

.teacher_info_copy {
  text-align: center; }

.teacher_info_list {
  display: flex;
  margin: 2em auto; }
  .teacher_info_list .teacher_field_title {
    margin: 0 auto 1em;
    text-align: center;
    padding: .25em 1em;
    font-size: 2rem;
    font-feature-settings: "palt";
    background: #611729;
    color: #FFF; }
  .teacher_info_list .teacher_list {
    list-style: none;
    margin: 0;
    padding: 0; }
    .teacher_info_list .teacher_list li {
      box-shadow: 0px 3px 15px rgba(0, 0, 0, 0.1); }
      .teacher_info_list .teacher_list li a {
        position: relative;
        display: flex;
        background: #FFF; }
        .teacher_info_list .teacher_list li a .teacher_list_fig {
          width: 140px; }
        .teacher_info_list .teacher_list li a .teacher_list_doc {
          display: flex;
          align-items: center;
          width: calc(100% - 140px);
          padding: 0 2em; }
          .teacher_info_list .teacher_list li a .teacher_list_doc .teacher_list_name {
            font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
            line-height: 1.4;
            margin: 0;
            font-size: 3.6rem;
            font-weight: normal;
            color: #222222;
            font-weight: normal; }
            .teacher_info_list .teacher_list li a .teacher_list_doc .teacher_list_name span {
              display: block;
              font-weight: 800;
              font-size: 2rem; }
        .teacher_info_list .teacher_list li a:hover {
          transform: scale(1.025); }
        .teacher_info_list .teacher_list li a::after {
          content: "";
          display: block;
          position: absolute;
          bottom: 1rem;
          right: 1rem;
          width: 0;
          height: 0;
          border: solid 6px #611729;
          border-color: transparent #611729 #611729 transparent; }
      .teacher_info_list .teacher_list li + li {
        margin-top: 1em; }

.teacher_field_back {
  margin: 2em auto 0; }
  .teacher_field_back a {
    border: solid 1px #611729;
    padding: 1em;
    color: #611729;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: transparent; }
    .teacher_field_back a::after {
      display: block;
      content: "";
      width: 40px;
      height: 8px;
      border-bottom: 1px solid #611729;
      border-right: 1px solid #611729;
      transform: skew(45deg);
      -webkit-transition: 0.3s all ease;
      -moz-transition: 0.3s all ease;
      -ms-transition: 0.3s all ease;
      -o-transition: 0.3s all ease;
      transition: 0.3s all ease; }
    .teacher_field_back a:hover {
      background: #611729;
      color: #FFF; }
      .teacher_field_back a:hover::after {
        transform: translateX(0.5em) skew(45deg);
        border-color: #FFF; }

.histoy_table th {
  white-space: nowrap;
  vertical-align: top;
  padding-right: 1em;
  font-weight: normal; }

/*----------------------------------------------

  固定ページ

----------------------------------------------*/
.page_header {
  position: relative;
  padding: 0 0 4rem; }
  .page_header::after {
    display: block;
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
    height: calc(100% - 4rem);
    width: 50%;
    background: #5777cf;
    background: linear-gradient(180deg, #5777cf 0%, #51a2ff 100%, #020024 3893%); }

.page_header_title_wrap {
  position: absolute;
  top: 28%;
  left: 6%;
  z-index: 100; }
  .page_header_title_wrap .page_header_title {
    margin: 0;
    padding: 0;
    color: #FFF;
    font-weight: 800;
    font-feature-settings: "palt";
    font-size: 3rem; }
    .page_header_title_wrap .page_header_title span {
      display: inline-block;
      padding: 0.5em 2rem;
      background: #6e3edf;
      background: linear-gradient(270deg, #6e3edf 0%, #3576c1 47%, #164495 100%, #020024 3893%); }

.page_header_fig {
  margin-left: 20%; }
  .page_header_fig img {
    width: 100%;
    height: auto; }

/*----------------------------------------------

  教員個別ページ

----------------------------------------------*/
.teacher_prof_wrap {
  font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
  display: flex;
  column-gap: 4rem;
  justify-content: space-between;
  margin: 0 auto 3em;
  width: 100%; }
  .teacher_prof_wrap .teacher_prof_doc {
    width: calc(100% - 4rem - 260px); }
    .teacher_prof_wrap .teacher_prof_doc .teacher_prof_name {
      margin: 1em auto;
      font-size: 6rem;
      font-weight: 400;
      line-height: 1; }
      .teacher_prof_wrap .teacher_prof_doc .teacher_prof_name span {
        display: inline-block;
        font-size: 3rem;
        padding-left: 1em; }
    .teacher_prof_wrap .teacher_prof_doc .teacher_prof_message {
      position: relative;
      display: flex;
      justify-content: center;
      margin: 0;
      padding: 2rem;
      font-size: 3rem;
      font-weight: 400; }
      .teacher_prof_wrap .teacher_prof_doc .teacher_prof_message::before, .teacher_prof_wrap .teacher_prof_doc .teacher_prof_message::after {
        content: "";
        display: block;
        position: absolute;
        width: 64px;
        height: 38px;
        border: solid 1px #9DA0D1; }
      .teacher_prof_wrap .teacher_prof_doc .teacher_prof_message::before {
        top: 0;
        left: 0;
        border-width: 1px 0 0 1px; }
      .teacher_prof_wrap .teacher_prof_doc .teacher_prof_message::after {
        bottom: 0;
        right: 0;
        border-width: 0 1px 1px 0; }
      .teacher_prof_wrap .teacher_prof_doc .teacher_prof_message p {
        margin: 0; }
  .teacher_prof_wrap .teacher_prof_fig {
    position: relative;
    width: 260px; }
    .teacher_prof_wrap .teacher_prof_fig::after {
      content: "";
      display: block;
      position: absolute;
      z-index: -1;
      top: -20px;
      right: -30px;
      height: 100%;
      width: 100%;
      background: #5777cf;
      background: linear-gradient(180deg, #5777cf 0%, #51a2ff 100%, #020024 3893%);
      opacity: .4; }

.teacher_prof_list {
  list-style: none;
  padding: 0;
  margin: 0; }
  .teacher_prof_list > li {
    padding: 0;
    margin: 0; }
    .teacher_prof_list > li + li {
      margin-top: 3em; }
    .teacher_prof_list > li > dl {
      margin: 0; }
      .teacher_prof_list > li > dl > dt {
        width: 100%;
        position: relative;
        display: flex;
        flex-direction: row-reverse;
        justify-content: flex-end;
        align-items: center; }
        .teacher_prof_list > li > dl > dt strong {
          font-weight: 400;
          background: #FFF;
          padding-right: 2rem; }
        .teacher_prof_list > li > dl > dt span {
          display: inline-block;
          padding-right: 2rem;
          font-family: 'Poppins', sans-serif;
          font-size: 4.4rem;
          color: #010872;
          background: #FFF; }
        .teacher_prof_list > li > dl > dt::after {
          content: "";
          display: block;
          position: absolute;
          z-index: -1;
          top: 50%;
          left: 0;
          width: 100%;
          border-bottom: solid 1px #a0a0a0; }
      .teacher_prof_list > li > dl > dd {
        padding: 0;
        margin-left: 1em; }
        .teacher_prof_list > li > dl > dd p {
          margin: 0; }
          .teacher_prof_list > li > dl > dd p + p {
            margin-top: 1em; }
          .teacher_prof_list > li > dl > dd p + figure {
            margin-top: 2em; }

.arai_book {
  border: solid 10px #EBEBEB;
  padding: 2em;
  margin-top: 3em;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 4rem; }
  .arai_book figure {
    max-width: 240px; }
    .arai_book figure img {
      border: solid 1px #a0a0a0; }
  .arai_book .arai_book_doc {
    max-width: 420px; }
    .arai_book .arai_book_doc h3 {
      border-left: solid 6px #010872;
      padding-left: .5em;
      font-size: 2.8rem; }
    .arai_book .arai_book_doc dl {
      margin: 0 auto 1em 2rem; }
      .arai_book .arai_book_doc dl dt {
        margin: 0;
        font-weight: 800; }
      .arai_book .arai_book_doc dl dd {
        margin: 0; }
    .arai_book .arai_book_doc .caution_list {
      list-style: none;
      padding: 0;
      margin: 0 0 0 2rem; }
      .arai_book .arai_book_doc .caution_list li {
        font-size: 1.3rem;
        text-indent: -1em;
        margin-left: 1em; }
        .arai_book .arai_book_doc .caution_list li::before {
          content: "※"; }

.ishikawa_lecture_photo {
  margin: 2em 0; }
  .ishikawa_lecture_photo figure {
    margin-bottom: 2em; }

.career_title::before {
  content: "＜"; }
.career_title::after {
  content: "＞"; }
