@charset "UTF-8";
/**/
/**/
/* ==================================================
Page Cont
================================================== */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap');
#ktsCont {
  font-family: 'Noto Sans JP', sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 500;
  font-style: normal;
  color: #3e4e57;
  font-size: 19px;
  line-height: 1.6em;
  background-color: #FFFFFF;
  word-break: break-all;
}
@media screen and (max-width: 750px) {
  #ktsCont {
    font-size: 3.73333vw;
  }
}
#ktsCont * {
  box-sizing: border-box;
}
/**/
/**/
/* ==================================================
Page wrap & kye visual
================================================== */
.kokuyo-st-container #kokuyo-st-main-contents #ktsCont #contents .wrap {
  width: 1100px;
  margin: 0 auto;
  padding: 80px 0px;
  box-sizing: border-box;
}
.kokuyo-st-container #kokuyo-st-main-contents #ktsCont #contents .wrap2 {
  margin: 0 auto;
  padding: 80px 0px;
  box-sizing: border-box;
}
@media screen and (max-width: 980px) {
  .kokuyo-st-container #kokuyo-st-main-contents #ktsCont #contents .wrap {
    width: 100%;
    padding: 10vw 15px;
  }
  .kokuyo-st-container #kokuyo-st-main-contents #ktsCont #contents .wrap2 {
    width: 100%;
    padding: 10vw -15px;
  }
  .kokuyo-st-container .pagetop {
    width: 100%;
  }
  .kokuyo-st-container .pagetop a {
    margin-right: 15px;
  }
}
@media screen and (max-width: 750px) {
  body {
    min-width: inherit;
  }
  .kokuyo-st-container .pagetop a {
    margin-right: 0;
  }
}
#ktsCont .kv {
  width: 100%;
}
#ktsCont .kv .kv_wrap {
  max-width: 1380px;
  padding: 0;
  margin: 0 auto;
  position: relative;
  background-color: #6c8dc8;
  background-image: url(../img/kv_bg.jpg);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: cover;
}
#ktsCont .kv .kv_wrap img {
  width: 100% !important;
  height: auto !important;
}
@media screen and (max-width: 750px) {
  #ktsCont .kv {}
  #ktsCont .kv .kv_wrap {
    background-image: url(../img/kv_bg_sp.jpg);
  }
}
/**/
/**/
/* ==================================================
Page style
================================================== */
/*  ページ固有Table
-----------------------------------*/
#ktsCont .table .c01 th {
  background-color: #fafafa;
  /*color: #ffffff;*/
  text-align: center;
  border-color: #575757;
}
#ktsCont .table .c01 td {
  background-color: #ffffff;
  text-align: center;
  border-color: #575757;
}
#ktsCont .table .c02 th {
  background-color: #2289cb;
  color: #ffffff;
  text-align: center;
}
#ktsCont .table .c02 td {
  background-color: #dbeaf9;
  text-align: center;
}
#ktsCont .table .c03 th {
  background-color: #6ccfe2;
  color: #ffffff;
  text-align: center;
}
#ktsCont .table .c03 td {
  background-color: #dff5f9;
  text-align: center;
}
#ktsCont .table .c04 th {
  background-color: #ffbe2c;
  color: #ffffff;
  text-align: center;
}
#ktsCont .table .c04 td {
  background-color: #fdf7d6;
  text-align: center;
}
#ktsCont .table table td:first-child.bdL {
  border-left: 1px solid #595757;
  ;
}
#ktsCont .table p {
  white-space: nowrap;
}
@media screen and (max-width: 750px) {
  #ktsCont .table th, #ktsCont .table td {
    white-space: nowrap;
  }
}
#ktsCont .table table th {
  font-size: 18px !important;
  line-height: 1.4em;
}
#ktsCont .table table td {
  font-size: 18px !important;
  line-height: 1.4em;
}
/*  ナビゲーション 並びhack
-----------------------------------*/
#stationery #lnavi ul.ktsGnaviList.wrap::after {
  content: none;
}
#stationery #lnavi {
  width: 100%;
  background: #fff;
  z-index: 99;
  border-bottom: 1px solid #bcbcbc;
}
#stationery #lnavi.fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
}
#stationery #lnavi ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 900px;
  margin: 0 auto;
  height: 60px;
  line-height: 60px;
  font-size: 15px;
}
#stationery #lnavi ul li {
  display: inline-block;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.025em;
  /*width: 100%;
	max-width: 316px;*/
}
#stationery #lnavi ul li a {
  display: inline-block;
  color: #575757;
  text-decoration: none;
}
#stationery #lnavi ul li a:hover {
  color: #0097d8;
}
#stationery #lnavi ul li a.now {
  color: #0097d8;
}
/*  動画埋め込み
-----------------------------------*/
#ktsCont .movie {
  width: 100%;
  margin: 0 auto;
}
#ktsCont .movie_wrap {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
#ktsCont .movie_wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
/**/
/**/
/* ==================================================
ページ固有 style
================================================== */
/*  Common
-----------------------------------*/
#ktsCont a {
  color: #262626;
}
#ktsCont a:hover {
  color: #313131;
}
#ktsCont img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 750px) {}
/**/
/**/
/*  #contents
-----------------------------------*/
body {
  background-color: #e2e0df;
}
#contents {
  position: relative;
}
#ktsCont .main_bg_outer {}
#ktsCont .main_bg_wrap {}
#ktsCont .main_bg {
  background-color: #e2e0df;
  background-image: url(../img/main_bg_01.svg);
  background-position: -0.9vw center;
  background-size: 4.34782vw 100%; /*60pc 100%*/
  background-repeat: no-repeat;
  overflow: auto; /* スクロールは維持 */
  scrollbar-width: none; /* Firefox用 */
  -ms-overflow-style: none; /* IE, Edgeレガシー用 */
}
#ktsCont .main_bg::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Edge用 */
}
#ktsCont .main_bg_bar_top {
  width: 4.34782vw;
  position: sticky;
  left: 0;
  tom: 0;
  background-color: #0236ff;
}
#ktsCont .main_bg_bar_bottom {
  width: 4.34782vw;
  position: sticky;
  left: 0;
  bottom: 0;
  background-color: #7898fb;
}
@media screen and (max-width: 750px) {
  #contents {}
  #ktsCont .main_bg_outer {}
  #ktsCont .main_bg_wrap {}
  #ktsCont .main_bg {
    background-image: url(../img/main_bg_01_sp.svg);
    background-position: 0 center;
    background-size: auto 100vh;
  }
}
#ktsCont .main_cnt_block {
  height: 100%;
  /*margin: 150px 0 0 0;*/
  padding: 150px 0;
}
#ktsCont h1.page_ttl {
  font-size: 4.56521vw; /*63px*/
  font-weight: 700;
  line-height: 1.4em;
  text-align: center;
  /*color: #0236ff;*/
  color: transparent;
  letter-spacing: 0.18em;
  margin: 0 -0.25em 0 0.25em;
}
#ktsCont h1.page_ttl2 {
  font-size: 4.56521vw; /*63px*/
  font-weight: 700;
  line-height: 1.4em;
  text-align: center;
  /*color: #0236ff;*/
  color: transparent;
  letter-spacing: 0.18em;
  margin: 0 -0.25em 0 0.25em;
}
#ktsCont h2.page_subttl {
  font-size: 2.17391vw; /*30px*/
  font-weight: 500;
  line-height: 0.8em;
  text-align: center;
  color: #0236ff;
  margin: 1em 0 0 0;
}
#ktsCont h2.page_subttl small {
  font-size: 1.06895vw; /*15px*/
}
#ktsCont p.page_subttl_txt {
  font-size: 1.5942vw; /*22px*/
  font-weight: 500;
  line-height: 2em;
  text-align: center;
  color: #3e4e57;
  letter-spacing: 0.05em;
  margin: 4em 0 0 0;
}
#ktsCont .main_txt_wrap {}
#ktsCont .main_txt_wrap h3 {
  font-size: 2.31884vw; /*32px*/
  font-weight: 700;
  /*color: #0236ff;*/
  color: transparent;
  margin: 0 0 0.8em 0;
  line-height: 1.5em;
}
#ktsCont .main_txt_wrap h4 {
  font-size: 1.44927vw; /*20px*/
  font-weight: 700;
  color: #0236ff;
  margin: 0 0 0.3em 0;
}
#ktsCont .main_txt_wrap p {
  font-size: 1.37681vw; /*19px*/
  font-weight: 500;
  line-height: 1.85em;
  letter-spacing: 0.03em;
}
#ktsCont .main_txt_wrap a {
  text-decoration: underline;
}
#ktsCont .main_txt_wrap p.small,
#ktsCont .main_txt_wrap p small {
  font-size: 1.08695vw; /*15px*/
}
#ktsCont .main_txt_wrap ul {}
#ktsCont .main_txt_wrap ul li {
  display: flex;
  font-size: 1.37681vw;
  font-weight: 500;
  line-height: 1.85em;
  letter-spacing: 0.03em;
}
#ktsCont .main_txt_wrap ul li .col_01 {
  width: 7em;
}
#ktsCont .main_txt_wrap ul li .col_02 {
  margin-left: 1em;
}
#ktsCont .main_txt_01 {
  margin: 11.5942vw 0 0 30.28985vw; /*160px 0 0 418px*/
}
#ktsCont .main_txt_02 {
  margin: 4.34782vw 0 0 30.28985vw; /*60px 0 0 418px*/
}
#ktsCont .main_txt_03 {
  margin: 3.62318vw 0 0 30.28985vw; /*50px 0 0 418px*/
}
#ktsCont .main_txt_04 {
  margin: 7.24637vw 0 0 30.28985vw; /*100px 0 0 418px*/
}
#ktsCont .main_txt_05 {
  margin: 3.62318vw 0 0 30.28985vw; /*50px 0 0 418px*/
}
#ktsCont .main_txt_06 {
  margin: 7.24637vw 0 0 30.28985vw; /*100px 0 0 418px*/
  padding-bottom: 8vw;
}
#ktsCont .manabi_lab_img_01 {
  width: 56.95652vw; /*786px*/
  margin: 1em 0 0 0;
}
@media screen and (max-width: 750px) {
  #ktsCont .main_cnt_block {
    height: 100%;
    /*margin: 150px 0 0 0;*/
    padding: 0;
  }
  #ktsCont h1.page_ttl {
    font-size: 10.66666vw; /*40px*/
    font-weight: 700;
    line-height: 1.4em;
    text-align: center;
    letter-spacing: 0.18em;
    margin: 20.26666vw -0.25em 0 0.25em;
  }
  #ktsCont h1.page_ttl2 {
    font-size: 10.66666vw; /*40px*/
    font-weight: 700;
    line-height: 1.4em;
    text-align: center;
    letter-spacing: 0.18em;
    margin: 0 -0.25em 0 0.25em;
  }
  #ktsCont h2.page_subttl {
    font-size: 6.8vw; /*25.5px*/
    font-weight: 500;
    line-height: 0.8em;
    text-align: center;
    margin: 15.46666vw 0 0 0;
  }
  #ktsCont h2.page_subttl small {
    font-size: 3.2vw; /*12px*/
  }
  #ktsCont p.page_subttl_txt {
    font-size: 4.8vw; /*18px*/
    font-weight: 500;
    line-height: 2em;
    text-align: center;
    color: #3e4e57;
    letter-spacing: 0.05em;
    margin: 7vw 0 0 0;
  }
  #ktsCont .main_txt_wrap {
    width: 80.8vw;
    margin: 0 auto;
  }
  #ktsCont .main_txt_wrap h3 {
    font-size: 8.53333vw; /*32px*/
    font-weight: 700;
    margin: 21vw 0 0.8em 0;
  }
  #ktsCont .main_txt_wrap h4 {
    font-size: 5.33333vw; /*20px*/
    font-weight: 700;
    margin: 0 0 0.3em 0;
  }
  #ktsCont .main_txt_wrap p {
    font-size: 3.73333vw; /*14px*/
    font-weight: 500;
    line-height: 1.85em;
    letter-spacing: 0.03em;
  }
  #ktsCont .main_txt_wrap a {
    text-decoration: underline;
  }
  #ktsCont .main_txt_wrap p.small {
    font-size: 3.73333vw; /*14px*/
  }
  #ktsCont .main_txt_wrap ul {}
  #ktsCont .main_txt_wrap ul li {
    display: block;
    font-size: 3.73333vw; /*14px*/
    font-weight: 500;
    line-height: 1.85em;
    letter-spacing: 0.03em;
  }
  #ktsCont .main_txt_wrap ul li .col_01 {
    width: 100%;
  }
  #ktsCont .main_txt_wrap ul li .col_02 {
    margin-left: 0;
  }
  #ktsCont .main_txt_01 {
    margin: 20vw 0 0 0; /*160px 0 0 418px*/
  }
  #ktsCont .main_txt_02 {
    margin: 10.4vw 0 0 0; /*60px 0 0 418px*/
  }
  #ktsCont .main_txt_03 {
    margin: 8.8vw 0 0 0; /*50px 0 0 418px*/
  }
  #ktsCont .main_txt_04 {
    margin: 8.8vw 0 0 0; /*100px 0 0 418px*/
  }
  #ktsCont .main_txt_05 {
    margin: 8.5vw 0 0 0; /*50px 0 0 418px*/
  }
  #ktsCont .main_txt_06 {
    margin: 12vw 0 0 0; /*100px 0 0 418px*/
    padding-bottom: 8vw;
  }
  #ktsCont .manabi_lab_img_01 {
    width: 80.8vw; /*786px*/
    margin: 1em 0 0 0;
  }
}
/**/
/**/
#ktsCont .slide_mask {
  display: inline-block;
  position: relative;
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
  color: transparent;
}
#ktsCont .slide_mask.vEnd {
  color: #0236ff;
}
#ktsCont .slide_mask::before {
  content: "";
  position: absolute;
  left: -100%;
  top: 0;
  width: 100%;
  height: 100%;
  background: #0236ff;
  z-index: 2;
  transition: all 0.5s ease;
}
#ktsCont .slide_mask.view::before {
  left: 0%;
}
#ktsCont .slide_mask.view.vEnd::before {
  left: 100%;
}
#ktsCont .slide_mask_U1, #ktsCont .slide_mask_U2, #ktsCont .slide_mask_U3, #ktsCont .slide_mask_U4 {
  display: inline-block;
  position: relative;
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
  color: transparent;
}
#ktsCont .slide_mask_U1.vEnd, #ktsCont .slide_mask_U2.vEnd, #ktsCont .slide_mask_U3.vEnd, #ktsCont .slide_mask_U3.vEnd {
  color: #0236ff;
}
#ktsCont .slide_mask_U1::before, #ktsCont .slide_mask_U2::before, #ktsCont .slide_mask_U3::before, #ktsCont .slide_mask_U4::before {
  content: "";
  position: absolute;
  left: -100%;
  top: 0;
  width: 100%;
  height: 100%;
  background: #0236ff;
  z-index: 2;
  transition: all 0.5s ease;
}
#ktsCont .slide_mask_U1.view::before, #ktsCont .slide_mask_U2.view::before, #ktsCont .slide_mask_U3.view::before, #ktsCont .slide_mask_U4.view::before {
  left: 0%;
}
#ktsCont .slide_mask_U1.view.vEnd::before, #ktsCont .slide_mask_U2.view.vEnd::before, #ktsCont .slide_mask_U3.view.vEnd::before, #ktsCont .slide_mask_U4.view.vEnd::before {
  left: 100%;
}
/**/
/**/