@charset "utf-8";


.flont_load{
  display: flex;
  align-items:center;
  justify-content:center;
}
.flont_load:before{

 transition: opacity 0s ease;
 transition-delay: 0.3s;

}
.flont_load_logo{
  width: 160px;
  position: relative;
  z-index: 5;

 transition: opacity 0s ease;
 transition-delay: 0.3s;

}



.flont_load:after{
  content: "";
  z-index: 10;
  position: absolute;
  

  background: var(--key-color);

  left: 0%;
  right: 100%;
  top: 0;
  bottom: 0;

  transition: right 0.3s cubic-bezier(.645,.045,.355,1),left 0.3s cubic-bezier(.645,.045,.355,1);
  transition-delay: 0s, 0.3s;

}
.flont_load.on:after{
  right: 0%;  
  left: 100%;
}

.flont_load.on:before{
  opacity: 0;
}
.flont_load.on .flont_load_logo{
  opacity: 0;
}
.flont_load.off{
  display: none;
}

.l-nav3{
    transform: translate(100%, 50%);
    transition: transform 0.8s cubic-bezier(0.55, 0.05, 0.22, 0.99);
}
.l-nav3.on{
    transform: translate(0%, 50%);
}

.l-head1{
    transform: translate(0%, -100%);  
    transition: transform 0.8s cubic-bezier(0.55, 0.05, 0.22, 0.99);
}
.l-head1.on{
    transform: translate(0%, 0%);  
}

.mainv_ttl_txt1.on .mask_txt,
.mainv_ttl_txt2.on .mask_txt{
  opacity: 1;
}

.mainv_ttl_txt1.on .mask_txt_main,
.mainv_ttl_txt2.on .mask_txt_main {
    right: 0%;
}


.head-news {}




/* -----------------  */

.mainv{
  position: relative;
  z-index: 2;
}
.mainv_inner{
  overflow: hidden;
}

.mainv_slide{
  height: 100vh;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.mainv_slide li{
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transform: translate(-100%, 0px);
  overflow: hidden;
}

.mainv_slide_img{
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  transform: translate(100%, 0px);
}
.mainv_slide img{
  transform: scale(1.2);
}


.mainv_slide li:nth-child(1){
  z-index: 2;
/*  transform: translate(0%, 0px);*/
}

.mainv_slide li:nth-child(1) .mainv_slide_img{
/*  transform: translate(0%, 0px);*/
}
.mainv_slide li:nth-child(1) img{
/*  transform: scale(1);*/
}

.mainv_slide li.on{
  transition: transform 1.15s ease;
  transform: translate(0%, 0px);
}

.mainv_slide li.on .mainv_slide_img{
  transition: transform 1.15s ease;
  transform: translate(0%, 0px);
}

.mainv_slide li.on img{
  transition: transform 1.15s ease;
  transform: scale(1);
}

.mainv_slide li.on2 img{
  transition: transform 1.15s ease;
  transform: scale(1.2);
}

.mainv_news{
  border: solid 2px #FD1D1D;
  margin-top: 81px;
  /* position: absolute; */
  /* z-index: 5; */
  /* bottom: 0; */
  /* left: 0; */
  /* right: 0; */
  /* display: flex; */
  transition: transform 0.8s cubic-bezier(0.55, 0.05, 0.22, 0.99);
}

.mainv_news + .l-head .l-head1{
    transform: translate(0px, 0%);
}


.mainv_news_ttl{
  color: #fff;
  font-weight: 700;
  background: #FD1D1D;
  /* width: 260px; */
  /* display: flex; */
  /* align-items:center; */
  /* justify-content:center; */
  font-size: 24px;
  padding: 6px 8px;
}
.mainv_news_ttl .c-icon{
  width: 32px;
  height: 32px;
  top: -2px;
  margin-right: 5px;
}

.mainv_news_main{
  background: #fff;
  flex: 1;
}
.mainv_news_list{}
.mainv_news_list li{}
.mainv_news_list a{display: flex;align-items: center;padding: 16px 22px;color: #FD1D1D;}
.mainv_news_list_date{
    font-weight: 700;
    font-size: 17px;
    letter-spacing: var(--letter-spacing1);
    color: #FD1D1D;
    width: 104px;
}
.mainv_news_list_ttl{
    font-weight: 400;
    font-size: 18px;
    flex: 1;
}

.mainv_news_list_ttl .line1_s,
.mainv_news_list_ttl .line1_c{
  background-image: url(https://www.kanazawa-it.ac.jp/assets/img/common/line_r.png);
}

.mainv_ttl{
  position: absolute;
  z-index: 1;
  bottom: 43px;
  left: 0;
  right: 0;
}
.mainv_ttl_txt1{
    display: block;
    width: 76.02%;
}
.mainv_ttl_txt2{
    /* text-align: right; */
    display: block;
    margin-left: 19.2%;
    width: 74.96%;
    margin-top: 2vw;
}
.mainv_sub_ttl{
  font-size: 24px;
  font-size: 1.67vw;
  color: #fff;
  line-height: 1.2;
  position: absolute;
  z-index: 1;
  bottom: calc(43px + 26vw);
  left: 54vw;
  line-height: 1.4;
  letter-spacing: var(--letter-spacing1);
  text-shadow: 3.00863px 3.00863px 15.0432px rgba(0, 0, 0, 0.73);
  filter: blur(15px);
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.26, 0.06, 0, 1), filter 0.6s cubic-bezier(0.18, 0.06, 0.23, 1);
}
.mainv_sub_ttl.on{
  opacity: 1;
  filter: blur(0px);
}
.mainv_sub_ttl span{
  font-size: 30px;
  font-size: 2.07vw;
}

.mainv_bnr{
  aspect-ratio: 400 / 400;
  position: absolute;
  z-index: 1;
  /* top: 0; */
  right: 6.9vw;
  width: 14vw;
  bottom: calc(56px + 21.5vw);
  filter: blur(15px);
  opacity: 0;
  transform: scale(1.0);
  transition: opacity 0.6s cubic-bezier(0.26, 0.06, 0, 1), filter 0.6s cubic-bezier(0.18, 0.06, 0.23, 1),transform 0.3s cubic-bezier(0.43, 0.05, 0.17, 1);
  overflow: hidden;
}
.mainv_bnr.on{
  opacity: 1;
  filter: blur(0px);
}
.mainv_bnr_txt,
.mainv_bnr_img{
  position: absolute;
  z-index: 1;
  /* bottom: calc(56px + 2vw); */
  left: 0;
  width: 100%;
  height: 100%;
}

.mainv_bnr_txt{
    animation: rotate 20s linear infinite;
}

@keyframes rotate {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

/* -------------------------- */

.bnr_fix{
  position: fixed;
  z-index: 5;
  width: 187px;
  bottom: 0;
  right: 0;
  bottom: 58px;
  visibility: hidden;
  transition: transform .2s, opacity .2s, visibility 0s .2s;
  opacity: 0;



}

.bnr_fix.on{
  visibility: visible;
  transition: transform .4s, opacity .4s;
  opacity: 1;
  /* width: 162px; */
  /* bottom: 60px; */
}
.bnr_fix.off{
  visibility: hidden;
  transition: transform .2s, opacity .2s, visibility 0s .2s;
  opacity: 0;
}

.bnr_fix_img{
  display: block;
  position: relative;
  z-index: 1;


  transition: transform 0.3s cubic-bezier(0.43, 0.05, 0.17, 1);

  transform: translate(0,0);
}
.bnr_fix_btn{
  display: block;
  background: var(--line-caption1);
  width: 30px;
  height: 30px;
  border-radius: 100px;
  text-indent: -999px;
  overflow: hidden;
  top: 18px;
  right: 25px;
  position: absolute;
  z-index: 5;
}

.bnr_fix_btn:after,
.bnr_fix_btn:before{
    content: "";
    z-index: 1;
    position: absolute;
    background: #000;
    height: 1px;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    width: 15px;
  transform: rotate(-30deg);
}
.bnr_fix_btn:after{
  transform: rotate(30deg);
}


/* -------------------------- */

.special{
    overflow: hidden;
    /* background: var(--bg-color2); */
    position: relative;
    z-index: 1;
}

.special:before{
  content: "";
  z-index: -1;
  position: absolute;
  background: var(--bg-color2);
  top: 275px;
  bottom: -2px;
  right:0;
  left: 0;
}

.special_inner{
    padding-top: 78px;
    padding-bottom: 0;
}

.special-row{
  display: flex;
  align-items:center;
}

.special_head{
  position: relative;
  z-index: 2;
}

.special_ttl_head{
  display: flex;
  align-items:center;
  margin: 0 0 46px;
}

.special_ttl{
  font-size: 24px;
  color: var(--key-color);
  line-height: var(--line-height1);
  /* margin-bottom: 3px; */
  margin-right: 40px;
}
.special_ttl_mes{
  /* font-size: 15px; */
}

.special_control{
  margin-top: 18px;
  display: flex;
  justify-content:center;
}




.special_slide{
  position: relative;
  z-index: 1;
}
.special_slide:before{
  /* content: ""; */
  z-index: 3;
  position: absolute;
  background: var(--bg-color2);
  width: 1000px;
  top:-2px;
  bottom:-2px;
  right:100%;
}
.special_slide_list{}
.special_slide_list li
.special_img{
    aspect-ratio: 1446 / 884;
    position: relative;
    z-index: 1;
    overflow: hidden;
    /* margin: 0 0 15px; */
}

.special_slide_pagination{
  margin: 0 20px;
}

.special_slide_pagination .swiper-pagination-bullet {
    margin: 0 8px;
}
.special_slide_pagination .swiper-pagination-bullet-active {
    opacity: 1;
    background: var(--key-color);
}


@media screen and (max-width: 1200px) {

  .special_inner .row{
    display: block;
  }
  .special_inner .row > div{
    max-width: none;
  }

  .special_head{
    margin-bottom: 30px;
  }

  .special_ttl_head{
    display: block;
    margin: 0 0 22px;
  }

  .special_ttl_mes br{
    display: none;
  }


}



/* -------------------------- */

.user{
    background: var(--bg-color2);
}
.user_inner{
    padding-top: 79px;
    padding-bottom: 79px;
}
.user_bnr{
  display: flex;
}
.user_bnr a{
  width: 33.3333%;
  position: relative;
  z-index: 1;

  position: relative;
  z-index: 1;
  display: block;
}
.user_bnr a:after{
  content: "";
  z-index: 1;
  position: absolute;


  height: 200px;
  left: 0px;
  right: 0;
  bottom: 0;
  background: var(--bg-color3);
}




.user_bnr_img{
    aspect-ratio: 426 / 580;
    position: relative;
    z-index: 1;
    overflow: hidden;
}
.user_bnr_ttl{
    position: absolute;
    z-index: 5;
    bottom: 24px;
    left: 40px;
    right: 40px;
    color: #fff;
}
.user_bnr_ttl_txt{
  font-weight: 700;
  font-size: 24px;
  line-height: 150%;
  margin-left: 15px;
  letter-spacing: var(--letter-spacing1);
}
.user_bnr_ttl .c-icon{
  top: -5px;
}
.user_bnr_ttl .c-arrow{
  position: absolute;
  z-index: 1;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 28px;
  height: 28px;
}

.user_row{
  margin-top: 33px;
}


@media screen and (max-width: 1300px) {

  .user_bnr_ttl .c-icon {
    width: 2.45vw;
    height: 2.45vw;
}
  .user_bnr_ttl_txt{
    font-size: 1.85vw;
    margin-left: 1.1vw;
}
  .user_bnr_ttl .c-arrow{
    width: 2.16vw;
    height: 2.16vw;
}


  .user_bnr_ttl {
      bottom: 1.8vw;
      left: 3.1vw;
      right: 3.1vw;
  }
}


/* -------------------------- */

.flont_ttl{}

.flont_ttl_en{
  font-size: 40px;
  line-height: var(--line-height1);
  letter-spacing: var(--letter-spacing1);
  color: var(--key-color);
}
.flont_ttl_mes{
  /* font-size: 15px; */
  margin-top: 16px;
}

.flont_ttl.-beside{
  display: flex;
  align-items:center;
  margin-bottom: 60px;
}

@media (width > 767px) {
    .event:has(.event_slide_list .swiper-slide:nth-child(4)) .event_control {
        display: flex;
        margin-top: -40px;
    }
}

.flont_ttl.-beside .flont_ttl_mes{
  margin-top: 0;
  margin-left: 43px;
}

.flont_ttl.-color-w .flont_ttl_en,
.flont_ttl.-color-w{
  color: #fff;
}

.flont_link1{
  text-align: right;
  margin-top: 33px;
}

/* -------------------------- */

.news{}
.news_inner{
    padding-top: 80px;
}

@media screen and (max-width: 950px) {

  .news_inner .row{
    display: block;
  }
  .news_inner .row > div{
    max-width: none;
  }
  .flont_ttl{margin-bottom: 34px;}


}



/* -------------------------- */
.event{
    overflow: hidden;
}
.event_inner{
    padding-top: 103px;
}

.event_slide_list{
  flex-wrap: nowrap;
}

.event_slide_list li{
  margin-left: 0;
  border-bottom: var(--line-color1);
}
.event_control {
    margin-bottom: 25px;
}

/* -------------------------- */
.physics{
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.physics_inner{
    padding-top: 248px;
    padding-left: 17.2%;
    padding-bottom: 160px;
}
.physics_head{
  /* height: 680px; */
  position: relative;
  z-index: 1;
  /* margin-left: 17.2%; */
}
.physics_head:before{
  content: "";
  z-index: -4;
  position: absolute;

  background: #fff;
  top: -1px;
  bottom: -1px;
  right: 100%;
  width: 1000px;


}



.physics_head:after{
  content: "";
  z-index: -4;
  position: absolute;

  height: 340px;
  background: var(--bg-color3);

  bottom: 0;
  right: calc((100% - 100vw) / 2);
  left: 0;
}
.physics_head_main{
  position: absolute;
  z-index: 1;
  bottom: 0;
  right: 0;
  padding: 0 16px 48px 40px;
  border-left: 1px solid #fff;
}
.physics_head_link{
    margin-top: 24px;
}
.physics_head_bg{
  display: flex;
  width: 385%;
  position: relative;
  z-index: -5;

  animation-name: scrolltext;
  animation-duration: 30s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

.physics_head_bg_box{

}

/*@keyframes scrolltext{
    0%{ transform: translate(0%, 0%); }
    100%{ transform: translate(-100%, 0%); }
}
*/

@keyframes scrolltext{
    0%{ left: 0%; }
    100%{ left: -192.5%; }
}


.physics_txt{
  position: absolute;
  z-index: 1;
  top: 101px;
  left: 0;
}
.physics_row{margin-top: 32px;position: relative;z-index: 5;}




@media screen and (max-width: 1440px) {

  .physics_inner {
      padding-top: 17.4vw;
  }
  .physics_txt{
    width: 26.03vw;
    top: 7.01vw;
  }

}







/* -------------------------- */
.aboutkit{
  background: url(https://www.kanazawa-it.ac.jp/assets/img/flont/aboutkit_bg.png) 50% 50% no-repeat;
  background-size: cover;
}
.aboutkit_inner{
  padding-top: 113px;
  padding-bottom: 130px;
  text-align: center;
}
.aboutkit_txt{
  width: 60%;
  margin: 0 auto 80px;
}
.aboutkit_link{
  margin-top: 23px;
}

@media screen and (max-width: 1440px) {

  .aboutkit_inner {
      padding-top: 7.8vw;
      padding-bottom: 9vw;
  }

  .aboutkit_txt {
      margin-bottom: 5.5vw;
  }

}


/* -------------------------- */

.data{}
.data_inner{
    padding-top: 162px;
}
.data_main_slide{

}
.data_main{
  display: flex;
  border-left: var(--line-color1);
}
.data_box{
  border-right: var(--line-color1);
  width: 25%;
  padding: 0 3%;
}
.data_icon{
    margin-bottom: 63px;
}
.data_list{
  display: flex;
  align-items: flex-end;
}



.data_list_inner{}
.data_list_ttl{
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 10px;
}

.data_list_box1{
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.data_list_box{
  display: flex;
  align-items:flex-end;
}
.data_list_box + .data_list_box{
  margin-top: 5px;
}
.data_list_name{
  font-size: 16px;
  font-weight: 700;
  width: 17px;
  line-height: 1;
  position: relative;
  z-index: 1;
  bottom: 10px;
  margin: 0 7px 0 0;
}
.data_list_suu{
  display: flex;
  font-weight: 700;
  font-size: 72px;
  line-height: 72px;
  height: 72px;
  color: var(--key-color);
  overflow: hidden;
}
.data_list_unit{
  font-size: 16px;
  font-weight: 700;
  bottom: 5px;
  position: relative;
  z-index: 1;
  margin-left: 6px;
  line-height: 1;
}

.data_list_suu > span{
    transform: translate(0px, 100%);
    transition: transform 1.1s cubic-bezier(0.43, 0.05, 0.17, 1);
  height: 72px;
}
.data_list_suu > span span{
  display: block;
  height: 72px;
}
.data_list_suu .data_list_suu0{
    transform: translate(0px, 0%);
}

.data_list_suu.scBomb_anim .data_list_suu1{
    transform: translate(0px, 0%);
}
.data_list_suu.scBomb_anim .data_list_suu3{
    transform: translate(0px, -200%);
}
.data_list_suu.scBomb_anim .data_list_suu6{
    transform: translate(0px, -500%);
}
.data_list_suu.scBomb_anim .data_list_suu9{
    transform: translate(0px, -800%);
}




@media screen and (max-width: 1440px) {

  .data_icon{
    width: 5.56vw;
    margin-bottom: 4.35vw;
}

  .data_list_ttl{
    font-size: 1.38vw;
    margin-bottom: 0.7vw;
}

  .data_list_box + .data_list_box{
    margin-top: 0.4vw;
}
  .data_list_name{
    font-size: 1.12vw;
    margin: 0 0.45vw 0 0;
    width: 1.19vw;
    bottom: 0.6vw;
}
  .data_list_suu{
    font-size: 5vw;
    height: 5vw;
    line-height: 5vw;
}
  .data_list_suu > span{
    height: 5vw;
  }
  .data_list_suu > span span{
    height: 5vw;
  }


  .data_list_unit{
    font-size: 1.12vw;
    margin-left: 0.45vw;
    bottom: 0.5vw;
}


}


/* -------------------------- */

.life{
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.life_inner{
    padding-top: 318px;
    padding-bottom: 443px;
    position: relative;
    z-index: 5;
}
.life_list{
  width: 400px;
  margin: 0 auto;
}
.life_list li{
  border-bottom: var(--line-color1);
}
.life_list li:nth-child(n+2){
  margin-top: 20px;
}
.life_list a{
  display: block;
  padding: 31px 0;
  position: relative;
  z-index: 1;
}
.life_list_ttl{
   font-weight: 700;
    font-size: 40px;
    line-height: var(--line-height1);
    letter-spacing: var(--letter-spacing1);
    color: var(--key-color);
    display: block;
}
.life_list_mes{
  margin-top: 10px;
  display: block;
}
.life_list .c-arrow{
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
}

.life_txt{
  position: absolute;
  z-index: 6;
  top: 169px;
  right: 0;
}

.life_img{
  position: absolute;
  z-index: 1;
}
.life_img1{
  z-index: 5;
  top: 294px;
  left: 0;
  width: 368px;
}
.life_img2{
    top: 715px;
    left: 188px;
    width: 290px;
}
.life_img3{
    right: 0;
    top: 742px;
    width: 213px;
}



@media screen and (max-width: 1440px) {
  .life_inner {
      padding-top: 22.1vw;
      padding-bottom: 30.8vw;
  }
  .life_txt{
    width: 26.53vw;
    top: 11.75vw;
}
  .life_img1{
    width: 25.56vw;
    top: 20.39vw;
}
  .life_img2{
    top: 49.65vw;
    left: 13.1vw;
    width: 20.2vw;
}
  .life_img3{
    top: 51.5vw;
    width: 14.8vw;
}
}

@media screen and (max-width: 1180px) {
  .life_list{
    width: 34vw;
}
  .life_list li{}
  .life_list li:nth-child(n+2){}
  .life_list a{
    padding: 2.6vw 7vw 2.6vw 0;
}
  .life_list_ttl{
    font-size: 3.4vw;
}
  .life_list_mes{
    /* font-size: 1.27vw; */
    margin-top: 0.9vw;
}
  .life_list .c-arrow{
    width: 5.43vw;
    height: 5.43vw;
}

      .life_img2 {
          top: 51.65vw;
          left: 10.1vw;
          width: 19.2vw;
      }

}



/* -------------------------- */
.life2{}
.life2_inner{
    /* padding-top: 153px; */
}
.life2_list{
  display: flex;
  flex-wrap: wrap;
}
.life2_list a{
  display: flex;
  align-items:center;
  margin-left: 40px;
  border-bottom: var(--line-color1);
  border-top: var(--line-color1);
  padding: 31px 55px 31px 0;
  position: relative;
  z-index: 1;
}

.life2_list_img{
    aspect-ratio: 160 / 160;
    width: 160px;
    position: relative;
    z-index: 1;
    overflow: hidden;
    margin-right: 24px;
}
.life2_list_main{
  flex: 1;
}
.life2_list_ttl{
  font-size: 24px;
  font-weight: 700;
  line-height: var(--line-height2);
  padding-left: 46px;
  position: relative;
  z-index: 1;
  margin-bottom: 10px;

  transition: color 0.35s cubic-bezier(0.18, 0.06, 0.23, 1);
}
.life2_list_ttl .c-icon{
  position: absolute;
  z-index: 1;
  margin: auto;
  top: 0;
  left: 0;
  bottom: 0;
}

.life2_list_mes{}



.life2_list .c-arrow{
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;

}



.life2_list.-col2 a{
  width: calc(50% - 20px);
}
.life2_list.-col2 a:nth-child(2n+1){
  margin-left: 0;
}
.life2_list.-col2 a:nth-child(n+3){
  /* margin-top: 24px; */
  border-top: none;
}


@media screen and (max-width: 1440px) {
  .life2_list_img{width: 11.12vw;}

}

@media screen and (max-width: 950px) {
  .life2_list{
    display: block;
  }
  .life2_list a{
    width: auto !important;
    margin-left: 0;
  }
  .life2_list a:nth-child(n+2){
    border-top: none;
  }


}

/* -------------------------- */
.guide{
  overflow: hidden;
  position: relative;
  z-index: 1;
}
.guide_inner{
    padding-top: 362px;
    /* padding-left: 17.2%; */
    padding-bottom: 160px;
}
.guide_head{
  height: 680px;
  position: relative;
  z-index: 1;
  /* margin-left: 17.2%; */
}
.guide_head:before{
  content: "";
  z-index: -5;
  position: absolute;
  background: url(https://www.kanazawa-it.ac.jp/assets/img/flont/guide_bg.jpg) 50% 50% repeat-x;
  background-size: auto 100%;
  top:0;
  bottom: 0;
  right: calc((100% - 100vw) / 2);
  left: 0;
}
.guide_head:after{
  content: "";
  z-index: -2;
  position: absolute;
  height: 340px;
  background: var(--bg-color3);
  bottom: 0;
  right: calc((100% - 100vw) / 2);
  left: 0;
}
.guide_head_main{
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 0;
  padding: 0 0 48px 62px;
  /* border-left: 1px solid #fff; */
}
.guide_head_link{
    margin-top: 24px;
}
.guide_head_bg{
    background: linear-gradient(90deg, #ffffffba 0%, rgba(255, 255, 255, 0) 100%);
    position: absolute;
    z-index: -4;
    top: 0;
    bottom: 0;
    width: 30%;
}
.guide_txt{
  position: absolute;
  z-index: 1;
  top: 162px;
  left: 0;
}
.guide_row{margin-top: 32px;}

.guide_list{
  position: relative;
  z-index: 1;
  margin-top: 87px;
  height: 1px;
}

.guide_list_inner{
  background: #fff;
  position: absolute;
  z-index: 1;
  bottom: 0;
  right: 0;
  width: 57%;
  padding: 27px 0 0 63px;
}

.guide_list_inner:before{
  content: "";
  z-index: 1;
  position: absolute;


  background: #fff;
  width: 1000px;

  top:0;
  bottom: 0;
  left: 100%;
}

.guide_link{
  margin-top: 30px;
  text-align: right;
}


@media screen and (max-width: 1440px) {
  .guide_head{
    height: 47.23vw;
}
  .guide_head_main{
    width: 34vw;
    padding: 0 0 3.3vw 4.3vw;
}
  .guide_list_inner{
    padding: 1.8vw 0 0 4.4vw;
}
  .guide_inner{
    padding-top: 25.1vw;
}

  .guide_txt{
      top: 11.2vw;
      width: 26.19vw;
  }

}

@media screen and (max-width: 1100px) {


  .guide_inner{
    padding-top: 30.1vw;
}

  .guide_txt{
  top: 5.2vw;
  }
  .guide_list{
    margin-top: 130px;
  }

}

/* -------------------------- */
.pickup{
    margin-top: 100px;
}
.pickup_head{
  display: flex;
  align-items:center;
  overflow: hidden;
  margin-bottom: 36px;
}
.pickup_ttl{
  font-weight: 700;
  font-size: 24px;
  color: var(--key-color);
  letter-spacing: var(--letter-spacing1);
}
.pickup_mes{
  position: relative;
  z-index: 1;
  margin-left: 34px;
}
.pickup_mes:before{
  content: "";
  z-index: 1;
  position: absolute;

  border-bottom: var(--line-color1);

  width: 100000px;
  height: 0px;
  left: calc(100% + 30px);
  margin: auto;
  top: 0;
  bottom: 0;
}
.pickup_list{}

/* -------------------------- */
/* -------------------------- */
/* -------------------------- */
/* -------------------------- */



/*---------------------------------------------------------
  ホバー (PCのみ)
---------------------------------------------------------*/

@media screen and (min-width: 768px) {


  .bnr_fix_img:hover{
    transform: translate(0,-10px);
  }



  .mainv_bnr:hover{
    transform: scale(1.1);
  }


  a:hover .life2_list_ttl{
    color: var(--key-color);
  }

}


/*---------------------------------------------------------
  スマホ
---------------------------------------------------------*/

@media screen and (max-width: 767px) {


.flont_load{}
.flont_load:before{}
.flont_load_logo{}



.flont_load:after{}
.flont_load.on:after{}

.flont_load.on:before{}
.flont_load.on .flont_load_logo{}
.flont_load.off{}

.l-nav3{
  visibility: hidden;
  transition: transform .2s, opacity .2s, visibility 0s .2s;
  opacity: 0;
}

.l-nav3.on2{
  visibility: visible;
  transition: transform .4s, opacity .4s;
  opacity: 1;

}

.l-head1{}
.l-head1.on{}

.mainv_ttl_txt1.on .mask_txt,
.mainv_ttl_txt2.on .mask_txt{}

.mainv_ttl_txt1.on .mask_txt_main,
.mainv_ttl_txt2.on .mask_txt_main {}


/* ------------------  */



  .mainv_slide{
    height: 100vw;
}

  .mainv_slide li{}

  .mainv_slide_img{}
  .mainv_slide img{}


  .mainv_slide li:nth-child(1){}

  .mainv_slide li:nth-child(1) .mainv_slide_img{}
  .mainv_slide li:nth-child(1) img{}

  .mainv_slide li.on{}

  .mainv_slide li.on .mainv_slide_img{}

  .mainv_slide li.on img{}

  .mainv_slide li.on2 img{}

  .mainv_news{
    margin-top: 60px;
}
  .mainv_news_ttl{
    /* width: 86px; */
    font-size: 18px;
}
  .mainv_news_ttl .c-icon{
    /* display: block; */
}

  .mainv_news_main{}
  .mainv_news_list{}
  .mainv_news_list li{}
  .mainv_news_list a{
    padding: 15px 16px;
    display: block;
}
  .mainv_news_list_date{
    font-size: 16px;
}
  .mainv_news_list_ttl{
    font-size: 15px;
    /* height: calc(13px* 1.5* 2); */
    /* line-height: 1.5; */
    /* -webkit-line-clamp: 2; */
    /* margin-top: 0px; */
}

  .mainv_ttl{
    bottom: 0;
}
  .mainv_ttl_txt1{
    width: 99.02%;
}
  .mainv_ttl_txt2{
    margin-left: 0%;
    width: 100.02%;
    margin-top: 4vw;
}
  .mainv_sub_ttl{
    bottom: calc(0px + 33.3vw);
    font-size: 5vw;
    left: 4.5vw;
}
  .mainv_sub_ttl span{
    font-size: 6.07vw;
}
  .mainv_bnr{
    bottom: -202px;
    right: 4.2vw;
    width: 34vw;
  }


  /* -------------------------- */

  .bnr_fix{
    width: 162px;
    bottom: 93px;
}

  .bnr_fix.on{}
  .bnr_fix.off{}

  .bnr_fix_img{}
  .bnr_fix_btn{
    top: -2px;
    right: 15px;
    width: 40px;
    height: 40px;
}

  .bnr_fix_btn:after,
  .bnr_fix_btn:before{
    width: 18px;
}
  .bnr_fix_btn:after{}


  /* -------------------------- */

  .special{}
  .special_inner{
    padding-top: 42px;
    /* padding-bottom: 41px; */
}

  .special_head{
    margin-bottom: 22px;
}
  .special_ttl{
    font-size: 20px;
    margin-bottom: 9px;
}
  .special_ttl_mes{
}

  .special_control{}



  .special_slide{}
  .special_slide:before{}
  .special_slide_list{}
  .special_slide_list li
  .special_img{}






  /* -------------------------- */

  .user{}
  .user_inner{
    padding-top: 40px;
    padding-bottom: 40px;
}
  .user_bnr{
    display: block;
}
  .user_bnr a{
    width: 100%;
  }
  .user_bnr a:after{
    height: 50%;
}




  .user_bnr_img{
    aspect-ratio: 656 / 320;
}
  .user_bnr_ttl{
    bottom: 17px;
    left: 25px;
    right: 25px;
}
  .user_bnr_ttl_txt{
    font-size: 18px;
    margin-left: 8px;
}
  .user_bnr_ttl .c-icon{
    width: 24px;
    height: 24px;
    top: -4px;
}
  .user_bnr_ttl .c-arrow{
    width: 19px;
    height: 19px;
}

  .user_row{
    display: block;
    margin-top: 14px;
}

  .user_row a{
    width: auto !important;
    margin: 0 !important;
}
  .user_row a:nth-child(n+2){
}





  /* -------------------------- */

  .flont_ttl{
    margin-bottom: 23px;
}

  .flont_ttl_en{
    font-size: 32px;
}
  .flont_ttl_mes{
    margin-top: 9px;
}

  .flont_ttl.-beside{
    display: block;
    margin-bottom: 23px;
}
  .flont_ttl.-beside .flont_ttl_mes{
    margin: 9px 0 0;
}

  .flont_ttl.-color-w .flont_ttl_en,
  .flont_ttl.-color-w{}

  .flont_link1{
    margin-top: 26px;
}

  /* -------------------------- */

  .news{}
  .news_inner{
    padding-top: 40px;
}





  /* -------------------------- */
  .event{}
  .event_inner{
    padding-top: 30px;
}
  .event_slide_prev,
  .event_slide_next{
    background: var(--sub-color3);
  }
  .event_control{
    margin-bottom: 24px;
  }
  /* -------------------------- */
  .physics{}
  .physics_inner{
    padding-left: 0;
    padding-top: 30.6vw;
    padding-bottom: 81px;
}
  .physics_head{}
  .physics_head:before{}



  .physics_head:after{}
  .physics_head_main{
    padding: 0 0px 10vw 9.4%;
    width: 73%;
}
  .physics_head_link{}
  .physics_head_bg{
    width: 728%;
}

@keyframes scrolltext{
    0%{ left: 0%; }
    100%{ left: -364%; }
}

  .physics_head_bg_box{}




  .physics_txt{
    width: 42.5vw;
    top: 9.01vw;
}
  .physics_row{
    margin-top: 18px;
}












  /* -------------------------- */
  .aboutkit{
    background-image: url(https://www.kanazawa-it.ac.jp/assets/img/flont/aboutkit_bg_sp.jpg);
}
  .aboutkit_inner{
    padding-top: 16.8vw;
    padding-bottom: 16vw;
}
  .aboutkit_txt{
    width: 99%;
    margin-bottom: 13.5vw;
}
  .aboutkit_link{
    margin-top: -7px;
}




  /* -------------------------- */

  .data{}
  .data_inner{
    padding-top: 80px;
}
  .data_main_slide{
    overflow-x: auto;
    margin-left: calc((100% - 100vw ) / 2);
    margin-right: calc((100% - 100vw ) / 2);
    padding: 5px 0;
  }
  .data_main{
    width: 932px;
    padding: 0 15px;
    border-left: none;
}
  .data_box{
    width: 25%;
    padding: 0 24px;
}
  .data_box:nth-child(1){
    border-left: var(--line-color1);
  }



  .data_icon{
    width: 63px;
    margin-bottom: 65px;
}
  .data_list{}
  .data_list_inner{}
  .data_list_ttl{
    font-size: 14px;
    margin-bottom: 5px;
}
  .data_list_box{}
  .data_list_box + .data_list_box{
    margin-top: 7px;
}
  .data_list_name{
    font-size: 13px;
    width: 20px;
    bottom: 5px;
}
  .data_list_suu{
    font-size: 48px;
    line-height: 48px;
    height: 48px;
}

  .data_list_suu > span{
    height: 48px;
  }
  .data_list_suu > span span{
    height: 48px;
  }


  .data_list_unit{
    font-size: 13px;
    bottom: 4px;
}







  /* -------------------------- */

  .life{}
  .life_inner{
    padding-top: 164.1vw;
    padding-bottom: 61.8vw;
}
  .life_list{
    width: auto;
}
  .life_list li{}
  .life_list li:nth-child(n+2){
    margin-top: 0px;
}
  .life_list a{
    padding: 23px 0;
}
  .life_list_ttl{
    font-size: 32px;
}
  .life_list_mes{
    margin-top: 10px;
}
  .life_list .c-arrow{
    width: 45px;
    height: 45px;
}

  .life_txt{
    width: 42.53vw;
    top: 22.75vw;
}
  .life_txt:before{
    content: "";
    z-index: -1;
    position: absolute;
    width: 84%;
    height: 79%;
    background: rgba(255, 255, 255, 0.5);
    filter: blur(50px);

    left: -22%;
    top: 12%;
}

  .life_img{}
  .life_img1{
    width: 66.56vw;
    top: 45.39vw;
}
  .life_img2{
    top: 121.65vw;
    left: 36.1vw;
    width: 45.2vw;
}
  .life_img3{
    top: auto;
    bottom: 22vw;
    width: 43vw;
}









  /* -------------------------- */
  .life2{}
  .life2_inner{}
  .life2_list{}
  .life2_list a{
    padding: 22px 29px 22px 0;
}

  .life2_list_img{
    width: 128px;
}
  .life2_list_main{}
  .life2_list_ttl{
    font-size: 18px;
    padding-left: 32px;
}
  .life2_list_ttl .c-icon{}

  .life2_list_mes{}



  .life2_list .c-arrow{}



  .life2_list.-col2 a{}
  .life2_list.-col2 a:nth-child(2n+1){}
  .life2_list.-col2 a:nth-child(n+3){}






  /* -------------------------- */
  .guide{}
  .guide_inner{
    padding-top: 44.1vw;
    padding-bottom: 83px;
}
  .guide_head{
    height: 125.23vw;
}
  .guide_head:before{}
  .guide_head:after{}
  .guide_head_main{
    width: auto;
    padding: 0 0 24.3vw 8.3vw;
}
  .guide_head_link{}
  .guide_head_bg{
    width: 38%;
}
  .guide_txt{
    top: 22.2vw;
    width: 44vw;
}
  .guide_row{}

  .guide_list{
    margin-top: -49px;
    height: auto;
    pointer-events: none;
}

  .guide_list_inner{
    bottom: auto;
    top: 0;
    position: static;
    margin: 0 0  0 auto;
    pointer-events: auto;
    width: 82%;
    padding: 17px 0 0 22px;
}

  .guide_list_inner:before{}

  .guide_link{
    margin-top: 24px;
}






  /* -------------------------- */
  .pickup{
    margin-top: 77px;
}
  .pickup_head{
    display: block;
    border-top: var(--line-color1);
    padding-top: 28px;
    margin-bottom: 25px;
}
  .pickup_ttl{
    font-size: 20px;
}
  .pickup_mes{
    margin: 7px 0 0;
}
  .pickup_mes:before{
    display: none;
}
  .pickup_list{}
  /* -------------------------- */
  .foot_bg{}
  .foot_bg img{}
  /* -------------------------- */
  /* -------------------------- */
  /* -------------------------- */
  /* -------------------------- */

}


@media print{
  .mainv{
    display: none;
  }

  .data_list_suu .data_list_suu1{
      transform: translate(0px, 0%);
  }
  .data_list_suu .data_list_suu3{
      transform: translate(0px, -200%);
  }
  .data_list_suu .data_list_suu6{
      transform: translate(0px, -500%);
  }
  .data_list_suu .data_list_suu9{
      transform: translate(0px, -800%);
  }


}