.noto_sans {
  font-family: var(--NotoSans);
}
.cor_green {
  color: #258830;
}
.cor_red {
  color: #B62035;
}
.cor_whith {
  color: #FFFFFF;
}
.cor_black {
  color: #000000;
}
.bg_cor_green {
  background-color: #258830;
}
.bg_cor_red {
  background-color: #B62035;
}
.font_we_bold {
  font-weight: bold;
}
.font_we_900 {
  font-weight: 900;
}
.font_we_500 {
  font-weight: 500;
}
.front_flex {
  display: flex;
}


/* fv */
.fv_wrap {
  position: relative;
  width: calc(100% - 2rem);
  height: calc(72rem - 5.5rem);
  margin: 1rem 1rem 0;
  border: solid 0.1rem #258830;
}
.slide_top_wrap {
  padding: 0.7rem 0 0.2rem 1rem;
}
.slide_bott_wrap {
  padding: 0 0 0.7rem 7rem;
}
.fv_tit_wrap {
  position: absolute;
  bottom: 2rem;
  left: 2.1rem;
}
.fv_tit_top {
  width: fit-content;
  font-size: 5.7rem;
  line-height: calc(66 / 60);
}
.font_siz_64 {
  font-size: 6.4rem;
}
.mb_3 {
  margin-bottom: 0.3rem;
}
.fv_tit_top span {
  font-size: 12.4rem;
}
.fv_tit_flex {
  align-items: center;
  margin-top: 1.7rem;
}
.fv_tit_left {
  font-size: 10rem;
  writing-mode: vertical-lr;
  line-height: calc(130 / 124);
}
.fv_tit_rigth {
  font-size: 25rem;
  display: block;
  line-height: calc(270 / 250);
  margin-bottom: 3rem;
}

.fv_img {
  width: 94.4rem;
  height: 53.074rem;
  position: absolute;
  top: 7rem;
  right: 1rem;
  z-index: -1;
}
.fv_img video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}


.news_wrap {
  width: calc(100% - 2rem);
  margin: 0 auto 1rem;
  padding: 0.6rem 3.3rem;
  gap: 6rem;
}
.news_tit {
  font-size: 1.6rem;
}
.ml_news {
  margin-left: -1.5rem;
}


/* ロゴスライダー */
.slide_wrap_top,
.slide_wrap_bot {
  background-color: #BBBBBB;
}
.swiper-wrapper {
  transition-timing-function: linear !important;
}
.slide_wrap_bot {
  margin-bottom: 2rem;
}


/* お知らせ */
.fron_news_wrap {
  margin: 14rem 6.5rem 18.5rem;
  padding: 6rem 6rem;
  border: 0.3rem solid #258830;
  position: relative;
}
.news_tit_wrap {
  background-color: #FFFFFF;
  position: absolute;
  left: 7rem;
  top: -7rem;
}
.news_sab_tit {
  font-size: 1.5rem;
  margin-left: 1rem;
}
.fron_news_tit {
  font-size: 9.8rem;
  line-height: calc(74 / 98);
}

.news_li_wrap {
  gap: 3rem 4.5rem;
  flex-wrap: wrap;
  margin: 0 auto;
}
.news_li {
  width: 30rem;
  min-height: 32.8rem;
  display: flex;
  flex-direction: column;
}
.news_li_img {
  width: 100%;
  height: 16.9rem;
  margin-bottom: 1rem;
}
.news_data {
  font-size: 1.3rem;
  margin-bottom: 0.5rem;
}
.news_li_tit {
  font-size: 1.6rem;
  margin-bottom: 1.5rem;
}
.news_data_btn {
  width: 10rem;
  background-color: #B62035;
  border-radius: 4rem;
  margin: auto auto 0;
}
.news_data_btn a {
  width: 100%;
  display: block;
  padding: 0.7rem 0.3rem 0.6rem;
  text-align: center;
  font-size: 1.2rem;
}

/* 取り組み */
.structure_title{
  text-align: center;
  font-size: 3rem;
}

/* re startについて */
.fron_about_wrap {
  width: 64.1rem;
  margin: 0 auto 18rem;
}
.fron_about_tit {
  width: 23.9rem;
  height: 6.905rem;
  margin: 0 auto;
}
.fron_about_text {
  font-size: 2.5rem;
  line-height: calc(45 / 25);
}
.mb_30 {
  margin-bottom: 2.8rem;
}
.about_btn {
  width: 15rem;
  border-radius: 4rem;
  margin: 0 auto ;
}
.about_btn a {
  display: block;
  padding: 0.8rem 0.3rem;
  text-align: center;
  font-size: 1.6rem;
}


/* 教える */
.teach_cont_wrap {
  padding: 3rem 14rem 3rem 7rem;
  min-height: 35.6rem;
  display: flex;
  justify-content: space-between;
  border-bottom: 0.4rem solid #000000;
  position: relative;
  cursor: pointer;
}
.teach_cont_wrap::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #000000;
  position: absolute;
  top: 0;
  left: 0;
  transition: .5s;
  transition-delay: .1s;
  transform: scaleY(0);
  transform-origin: top;
}
.teach_cont_wrap:hover::before {
  transform: scaleY(1);
}
.teach_cont_wrap:nth-last-child(1) {
  border: none;
}

.teach_tit {
  font-size: 15rem;
  position: relative;
  z-index: 1;
}
.teach_tit span:nth-child(1) {
  transition: .5s;
  transition-delay: .2s;
}
.teach_tit span:nth-child(2) {
  position: absolute;
  top: 6.5rem;
  left: 0;
  transform: scaleY(0);
  transition: .3s;
  transition-delay: .2s;
}
.teach_cont_wrap:hover .teach_tit span:nth-child(2) {
  display: inline-block;
  transform: scaleY(1);
}
.teach_cont_wrap:hover .teach_tit span:nth-child(1) {
  opacity: 0;
}
.font_siz_80 {
  font-size: 8rem;
  white-space: nowrap;
}
.cont_text_wrap {
  width: 44.6rem;
  position: relative;
  z-index: 1;
}
.teach_img {
  width: 35.6rem;
  height: 19.8rem;
  margin: 1.7rem auto 0.3rem;
  transform: scale(0);
  transition: .3s;
  transition-delay: .4s;
  transform-origin: center center;
  z-index: 2;
}
.teach_cont_wrap:hover .teach_img {
  transform: scale(1);
}
.teach_text {
  width: 100%;
  font-size: 2rem;
  line-height: calc(25 / 20);
  font-family: "Shippori Mincho", serif;
}
.teach_cont_wrap:hover .teach_text {
  /* font-weight: 500; */
}

/* more　スライド */
.more_slid_wrap,
.more_slid_wrap2 {
  border: 0.4rem solid #000000;
}
.more_slid_wrap .more_slid {
  padding: 0.6rem 0 0.8rem 7rem;
}
.more_text a {
  font-size: 3.5rem;
}




/* 実績 */
.work_wrap {
  padding: 12rem 7rem 9.6rem;
}
.work_tit_wrap {
  color: #003D6D;
}
.mb_50 {
  margin-bottom: 5rem;
}
.work_sab_tit {
  font-size: 1.5rem;
}
.work_tit {
  font-size: 9.8rem;
  line-height: calc(60 / 98);
}

.work_list2 {
  gap: 1rem 2.7rem;
  flex-wrap: wrap;
  flex-direction: column;
  max-height: 70rem;
}
.work_li_wrap {
  flex-wrap: wrap;
}
.work_li {
  width: 35.9rem;
  border: 0.3rem solid #003D6D;
  border-radius: 1rem 1rem 0 0;
}
.work_img,
.work_img_botmm {
  width: 36rem;
  height: 20rem;
}
.work_img img {
  border-radius: 0.7rem 0.7rem 0 0;
}

.li_img_no {
  width: 100%;
  height: 100%;
}

.work_li a {
  width: 100%;
  height: fit-content;
}
/* 下段 */
.work_li_bott {
  width: 35.9rem;
  border: 0.3rem solid #003D6D;
  border-radius: 0 0 1rem 1rem;
}
.work_img_botmm img {
  border-radius: 0 0 0.7rem 0.7rem;
}

.work_arch_tit {
  width: 100%;
  display: block;
  background-color: #003D6D;
  padding: 0.75rem 1rem;
  font-size: 1.7rem;
}


/* 参画企業一覧 */
.partner_wrap {
  background-color: #003D6D;
  padding: 5rem 0 3rem 7rem;
}
.mb_44 {
  margin-bottom: 4.4rem;
}

.part_li_wrap {
  margin-left: 7rem;
  background-color: #FFFFFF;
  padding: 4rem 5.5rem 1.5rem;
}

.part_li_ul {
  overflow-x: scroll;
}

/* スクロールバー設定 */
.part_li_ul::-webkit-scrollbar {
  width: 104rem;
  height: 0.4rem;
  margin-left: -3rem;
  margin-right: 3rem;
}
.part_li_ul::-webkit-scrollbar-track {
  border: 0.1rem solid #003D6D;
  border-radius: 6rem;
}
.part_li_ul::-webkit-scrollbar-thumb {
  background-color: #B62035;
  border-radius: 6rem;
}

.part_li {
  width: 28.4rem;
  height: fit-content;
  padding-left: 2.15rem;
  padding-right: 1rem;
  margin-bottom: 1rem;
  border-right: 0.2rem solid #000000;
}
.part_li:nth-child(1) {
  width: 26rem;
  padding-left: 0;
  padding-right: 1.05rem;
}
.part_li:nth-last-child(1) {
  width: 26rem;
  padding-right: 0;
  border-right: none;
}
.part_img {
  width: 25rem;
  height: 14.1rem;
  margin-bottom: 0.5rem;
}
.part_cat {
  display: inline-block;
  background-color: #003D6D;
  font-size: 1.2rem;
  padding: 0.2rem 1rem;
  text-align: center;
  margin-bottom: 0.5rem;
}

.part_table {
  font-size: 1.6rem;
}
.part_dl {
  margin-bottom: 1rem;
}
.part_dl dt {
  min-width: fit-content;
  margin-right: 0.5rem;
}
.part_dl:nth-last-child(1) {
  margin-bottom: 0;
}
.part_dt {
  border-spacing: 1rem;
}


.font_siz_20 a {
  font-size: 2rem;
}
.more_slid_wrap2 .more_slid {
  padding: 0.7rem 0 0.7rem 5.5rem;
}
.more_slid_wrap2 {
  margin-bottom: 10rem;
}


/* js　アニメーション */
.fv_js,
.fv_js_red {
  position: relative;
}
.fv_js,
.fv_js_red,
.fv_js::after,
.fv_js_red::after {
  animation-delay: var(--animation-delay, 2s); /* アニメーションの開始タイミング */
  animation-iteration-count: var(--iterations, 1); /* 再生される回数 */
  animation-duration: var(--duration, 800ms); /* 完了するまでの所要時間 */
  animation-fill-mode: both; /* 実行の前後 */
  animation-timing-function: cubic-bezier(0, 0, 0.2, 1); /* タイミングの指定 */
}

.fv_js.fv_archive,
.fv_js_red.fv_archive {
  --animation-delay: var(--delay, 0);
  --animation-duration: var(--duration, 800ms);
  --animation-iterations: var(--iterations, 1);
  position: relative;
  animation-name: clip-text;
  white-space: nowrap;
}

.fv_js.fv_archive::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #258830;
  transform: scaleX(0);
  transform-origin: 0 50%;
  pointer-events: none;
  animation-name: text-revealer;
}
.fv_js_red::after {
  background-color: #B62035 !important;
}

@keyframes clip-text {
  from {
    clip-path: inset(0 100% 0 0);
  }
  to {
    clip-path: inset(0 0 0 0);
  }
}

@keyframes text-revealer {
  0%, 50% {
    transform-origin: 0 50%;
  }
  60%, 100% {
    transform-origin: 100% 50%;
  }
  60% {
    transform: scaleX(1);
  }
  100% {
    transform: scaleX(0);
  }
}

/* スクロール */
.js_scroll {
  opacity: 0;
  visibility: hidden;
  transition: all 1s;
  transform: translateY(150px);
}
.scroll {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}



@media screen and (max-width: 699.98px) {
  .pc_onl {
    display: none;
  }
  /* fv */
  .fv_wrap {
    /* height: calc(87.156rem + 0.8rem); */
    height: auto;
  }
  .slide_top_wrap {
    padding: 0.5rem 0 0.3rem;
  }
  .slide_bott_wrap {
    padding: 0 0 0.7rem 0;
  }
  .fv_tit_wrap {
    top: 7rem;
    bottom: auto;
    left: auto;
  }
  .sp_fv_tit {
    margin-bottom: 22.6rem;
  }

  .fv_tit_top {
    font-size: 3rem;
    line-height: calc(40 / 30);
  }
  .mb_3 {
    margin-bottom: 0;
  }
  .fv_tit_top span {
    font-size: 5rem;
  }

  .fv_tit_flex {
    margin-top: 0;
  }
  .fv_tit_left {
    font-size: 5rem;
    line-height: calc(57 / 50);
    position: relative;
    left: -0.2rem;
  }
  .fv_tit_rigth {
    font-size: 10rem;
    line-height: calc(120 / 100);
    margin: 2rem 0 0 0;
  }

  .fv_img {
    width: 100%;
    height: 49rem;
    position: static;
    margin-top: 7rem;
  }

  .fv_img > img{
    object-position: 100%;
  }

  .news_wrap {
    padding: 0.9rem 1rem 0.8rem;
    gap: 1.5rem;
    align-items: center;
    margin: 0 auto;
    font-weight: 500;
  }
  .news_tit:nth-child(1) {
    font-size: 1.3rem;
  }
  .news_tit:nth-child(2) {
    font-size: 1.0rem;
  }
  .news_tit:nth-child(3) {
    font-size: 1.3rem;
  }
  .ml_news {
    margin-left: 0.8rem;
  }

  /* スライダー */
  .sp_slide_mg {
    margin: 0 1rem 10rem;
    border: 0.1rem solid #258830;
  }
  .slide_wrap_bot {
    margin-bottom: 0;
  }


  /* お知らせ */
  .fron_news_wrap {
    margin: 0 0 10rem;
    padding: 0 1.1rem;
    border: none;
    position: relative;
  }
  .news_tit_wrap {
    position: static;
    width: 14.8rem;
    margin: 0 auto 3.7rem;
  }
  .news_sab_tit {
    font-size: 1.5rem;
    margin-left: 0;
    line-height: calc(15 / 15);
  }
  .fron_news_tit {
    font-size: 5rem;
    line-height: calc(40 / 50);
  }

  .news_li_wrap {
    gap: 1.5rem 0.9rem;
  }
  .news_li {
    width: 16.6rem;
    min-height: 23.7rem;
  }
  .news_li_img {
    height: 9.5rem;
    margin-bottom: 0.5rem;
  }
  .news_data {
    font-size: 1.2rem;
  }
  .news_li_tit {
    font-size: 1.3rem;
    line-height: calc(20 / 13);
    margin-bottom: 1rem;
  }
  .news_data_btn {
    width: 9.1rem;
  }
  .news_data_btn a {
    padding: 0.5rem 1.8rem;
    font-size: 1.1rem;
  }


    /* re startについて */
  .fron_about_wrap {
    width: 100%;
    margin: 0 0 10rem;
    padding: 0 2rem;
  }
  .fron_about_text {
    font-size: 1.4rem;
    line-height: calc(26 / 14);
  }
  .mb_30 {
    margin-bottom: 1.8rem;
  }
  .about_btn {
    width: 12.2rem;
  }
  .about_btn a {
    padding: 1rem 0.6rem;
    font-size: 1.1rem;
  }


  /* 教える */
  .teach_cont_wrap {
    padding: 3rem 2.1rem 3.9rem;
    min-height: 22rem;
    flex-direction: column;
    gap: 1rem;
  }

  .teach_tit {
    font-size: 5rem;
    text-align: center;
  }

  .teach_tit span:nth-child(2) {
    top: 0;
    left: 0;
  }

  .font_siz_80 {
    font-size: 4rem;
    white-space: nowrap;
  }
  .cont_text_wrap {
    width: 100%;
  }
  .teach_text {
    width: 100%;
    font-size: 1.5rem;
  }

  
  .more_slid_wrap,
  .more_slid_wrap2 {
    border: 0.4rem solid #000000;
  }
  .more_slid_wrap .more_slid {
    padding: 0.7rem 0 0.7rem 2rem;
  }
  .more_text a {
    font-size: 2rem;
  }


    /* 実績 */
  .work_wrap {
    padding: 10rem 3.7rem 10rem 3.8rem;
  }

  .mb_50 {
    margin-bottom: 4rem;
  }
  .work_sab_tit {
    font-size: 1.5rem;
  }
  .work_tit_wrap {
    width: 18.8rem;
    margin: 0 auto 2rem;
  }
  .work_tit {
    font-size: 5rem;
    line-height: calc(30 / 50);
  }

  .work_list2 {
    display: grid;
    gap: 0;
    max-height: 100%;
  }
  .work_li_wrap {
    flex-wrap: wrap;
    gap: 2rem;
  }
  .work_li {
    width: 100%;
  }

  .mb_5 {
    margin-bottom: 0.5rem;
  }

  .work_img,
  .work_img_botmm {
    width: 29rem;
    height: 16.1rem;
  }
  .work_img img {
    border-radius: 0.7rem 0.7rem 0 0;
  }
  .work_li a {
    width: 100%;
    height: fit-content;
  }
  /* 下段 */
  .work_li_bott {
    width: 100%;
    margin-bottom: 2rem;
  }
  .work_li_bott:nth-last-child(1) {
    margin-bottom: 0;
  }

  .work_arch_tit {
    width: 100%;
    padding: 0.5rem;
    font-size: 1.5rem;
  }


    /* 参画企業一覧 */
  .partner_wrap {
    padding: 5rem 2rem 1.721rem;
  }
  .mb_44 {
    margin-bottom: 3rem;
  }

  .part_li_wrap {
    margin-left: 0;
    padding: 4rem 0.6rem;
  }

  .part_li_ul {
    overflow: visible;
    display: flex;
    flex-wrap: wrap;
    gap: 2rem 0.5rem;
  }


  .part_li {
    width: 15.3rem;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 0;
    border-right: none;
  }
  .part_li:nth-child(1) {
    width: 15.3rem;
    padding-left: 0;
  }
  .part_li:nth-last-child(1) {
    width: 15.3rem;
    padding-right: 0;
    border-right: none;
  }
  .part_img {
    width: 100%;
    height: 8.9rem;
  }

  .part_table {
    font-size: 1.4rem;
  }
  .part_dl {
    margin-bottom: 1rem;
  }
  .part_dl dt {
    min-width: fit-content;
    margin-right: 0.5rem;
  }
  .part_dl:nth-last-child(1) {
    margin-bottom: 0;
  }
  .part_dt {
    border-spacing: 1rem;
  }



  .more_slid_wrap2 .more_slid {
    padding: 0.7rem 2rem 0.6rem 0;
  }
}