.uni_main {
  margin: 0 auto;
  padding: 0;
  max-width: 128rem;
  width: 100%;
  font-family: var(--NotoSans);
}


/*---------- header ----------*/
.head_sec {
  margin: 0 auto;
  padding: 0;
  color: #FFFFFF;
  background-image: url('../img/about_fv.jpg');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  max-width: 128rem;
  width: 100%;
  height: 20rem;
  text-align: center;
}

.head_title {
  padding-top: 5.0rem;
  font-size: 3.0rem;
  line-height: calc(47 / 28);
  font-weight: 600;
  letter-spacing: 0.02em;
}

.head_text {
  padding-top: 0.7rem;
  font-size: 1.8rem;
  line-height: calc(36 / 18);
  font-weight: 600;
}


/*---------- 産学連携活動 ----------*/
.opening_sec {
  max-width: 108.0rem;
  width: auto;
  margin: 4.3rem auto 0;
  position: relative;
}

.opening_title {
  font-size: 1.8rem;
  line-height: calc(36 / 24);
  font-weight: 600;
  color: #000000;
  margin-bottom: 5.8rem;
  width: 65rem;
}

.uni_color_change {
  color: #000000;
}

.opening_text {
  width: 68rem;
  display: flex;
  line-height: calc(27/18);
  gap: 3.5rem;
  align-items: baseline;
  padding: 0.5rem 0;
  border-bottom: 0.1rem solid #EDEDED;
}

.opening_text:first-child {
  padding-top: 0;
}

.opening_detail_title {
  font-size: 1.5rem;
  font-weight: 600;
  color: #27A64D;
  /* flex-basis: 6rem; */
  width: 10%;
}

.opening_detail_text {
  font-size: 1.5rem;
  font-weight: 300;
  width: 90%;
}

.detail_text_other {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.uni_arrow {
  clip-path: polygon(0 calc(50% - (40% / 2)),
      50% calc(50% - (40% / 2)),
      50% 0,
      100% 50%,
      50% 100%,
      50% calc(50% + (40% / 2)),
      0 calc(50% + (40% / 2)));
  width: 2.357rem;
  height: 1.38rem;
  aspect-ratio: 1;
  background-color: #26A64D;
}




.uni_graph_image {
  width: 35rem;
  height: 35rem;
  position: absolute;
  top: 2rem;
  right: 5rem;
  object-fit: contain;
}


.approach_sec {
  max-width: 108.0rem;
  width: 100%;
  margin: 5.8rem auto 0;
}

.app_title {
  font-size: 2rem;
  line-height: calc(39 / 26);
  font-weight: 600;
  position: relative;
  padding-left: 2.6rem;
  /* letter-spacing: 0.05rem; */
  margin-bottom: 3.7rem;
}

.app_title::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 1rem;
  height: 3.6rem;
  background-color: #26A64D;
}

.app_container {
  padding: 4.5rem 9rem;
  background-color: #F1FAF2;
  border-radius: 1rem;
  margin-bottom: 10rem;
}

.app_content {
  margin-bottom: 5rem;
}

.app_content_list {
  position: relative;
  padding: 2rem 7rem;
  font-size: 1.8rem;
  font-weight: 600;
  color: #27A64D;
  background-color: #FFFFFF;
  border: 0.2rem solid #26A64D;
  margin-bottom: 0.5rem;
  border-radius: 1rem;
}

.app_content_list:last-child {
  margin-bottom: 0;
}

.app_content_number {
  width: 6rem;
  height: 6rem;
  padding: 1.5rem;
  background: #27A64D 0% 0% no-repeat padding-box;
  color: #FFFFFF;
  border-radius: 50%;
  font-size: 2rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0.4rem;
  left: -3rem;
  font-family: var(--DmSans);
}

.app_graph_one {
  height: 45rem;
  object-position: bottom;
}

.app_graph_one_en {
  height: 48rem;
}


/* 01 */
.app_content_folder {
  margin-bottom: 10rem;
}

.app_title_number_wrap {
  display: flex;
  gap: 1.4rem;
  align-items: center;
  margin-bottom: 3.3rem;
}



.app_title_number {
  width: 5rem;
  height: 5rem;
  padding: 1rem 1.4rem 1.3rem;
  background: #27A64D 0% 0% no-repeat padding-box;
  color: #FFFFFF;
  border-radius: 50%;
  font-size: 2rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--DmSans);
}

.app_content_title {
  font-size: 2rem;
  line-height: calc(30/26);
  font-weight: 600;
  color: #000000;
}

.app_content_list_wrap {
  background-color: #F5F5F5;
  border-radius: 1rem;
  padding: 4.5rem 9rem;
  margin-bottom: 4rem;
}

.app_content_white {
  background-color: #FFFFFF;
  border-radius: 1rem;
  padding: 4rem 4.2rem;
  margin-bottom: 4rem;
}

.app_list_heading_flex {
  display: flex;
  gap: 1rem;
  align-items: center;
}

.app_list_heading {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: calc(40/22);
}

.app_list_symbol {
  font-size: 2rem;
  color: #27A64D;
}

.app_graph_two {
  height: 45rem;
  object-position: bottom;
}

.app_graph_two_en {
  height: 50rem;
}

/* 事例 */
.app_case_example {
  font-size: 2.4rem;
  line-height: calc(36 / 24);
  font-weight: 600;
  position: relative;
  padding-left: 2.5rem;
  /* letter-spacing: 0.05rem; */
  margin-bottom: 3.05rem;
}

.app_case_example::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 0.5rem;
  height: 3rem;
  background-color: #26A64D;
}

.app_case_contents_flex {
  display: flex;
  gap: 1.4rem;
}


.app_case_contents {
  width: 35rem;
  box-shadow: 0 0 10rem #6F6F6F29;
  border-radius: 1rem;
  padding-bottom: 2.2rem;
}

.case_content_title {
  padding: 1.5rem 1.5rem 1.5rem;
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.044rem;
  color: #27A64D;
  text-align: center;
  border-bottom: 0.1rem solid #27A64D;
  margin-bottom: 1.855rem;
  display: flex;
  justify-content: center;
  align-items: center;
}

.other_en_title {
  height: 7.6rem;
  font-size: 1.2rem;
}

.case_image_one {
  width: 32rem;
  height: 18rem;
  margin: 0 1.5rem 2.1rem;
}

.case_content_text {
  color: #000000;
  font-size: 1.4rem;
  font-weight: 300;
  line-height: calc(27/18);
  margin: 0 2.2rem 0 2.8rem;
}

/* 02 */

.app_graph_three {
  height: 49rem;
  object-position: bottom;
}

.app_graph_three_en {
  height: 51rem;
}

/* 03 */
.app_folder_end {
  margin-bottom: 4.7rem;
}

.app_graph_four {
  height: 50rem;
  object-position: bottom;
}


/* マーケティングを支える体制 */
.marketing_sec {
  padding: 5.825rem 10rem 3.659rem 10rem;
  background-image: url('../img/globe_image.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  /* margin-bottom: 12rem; */
}

.mark_title {
  font-size: 2.6rem;
  line-height: calc(39 / 26);
  font-weight: 600;
  position: relative;
  padding-left: 2.6rem;
  /* letter-spacing: 0.05rem; */
  margin-bottom: 1.2rem;
}

.mark_title::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 1rem;
  height: 3.6rem;
  background-color: #26A64D;
}

.mark_image {
  text-align: center;
}

.mark_image_list {
  width: 92.318rem;
  height: 78.141rem;
  object-fit: contain;
}

.mark_image_list_en {
  width: 70rem;
  height: auto;
}

@media screen and (max-width:699.98px) {

  /* sp版でのみ表示コンテンツ */
  .sp_category_sec {
    margin-top: 2rem;
    justify-content: center;
    display: flex;
  }

  .sp_category_link {
    border: 0.1rem solid #26A64D;
  }

  .sp_category_link:nth-child(2),
  .sp_category_link:nth-child(3) {
    border-left: 0;
  }

  .sp_category_folder {
    width: 11.3rem;
    height: 5.4rem;
    padding-top: 1.4rem;
    text-align: center;
  }

  .sp_category_text {
    font-size: 1.5rem;
    line-height: calc(23/15);
    font-weight: 600;
    color: #26A64D;
  }

  .sp_category_symbol {
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    width: 0.9rem;
    height: 0.678rem;
    aspect-ratio: 1;
    display: inline-block;
    background-color: #05A54D;
    margin-bottom: 1.061rem;
  }

  /* page-to-university */

  .opening_sec {
    margin-top: 4.1rem;
    margin-left: 2rem;
  }

  .opening_title {
    line-height: calc(32/24);
    margin-bottom: 1.3rem;
    width: 100%;
  }

  .opening_text {
    width: 33.6rem;
    gap: 2.5rem;
    padding: 1.7rem 0;
  }

  .opening_text:first-child {
    padding-top: 2rem;
    border-top: 0.1rem solid #EDEDED;
    ;
  }

  .opening_detail_title {
    font-size: 1.6rem;
    width: 5.4rem;
    flex-basis: 5.4rem;
  }

  .detail_text_other {
    flex-direction: column;
  }

  .uni_arrow {
    transform: rotate(90deg);
    width: 1.59rem;
    height: 1.651rem;
  }

  .opening_detail_text_left {
    width: 100%;
    text-align: left;
  }

  .uni_graph_image {
    position: static;
    width: 32.694rem;
    height: 32.54rem;
    margin-top: 1.7rem;
    object-position: top;
  }


  /* 3つのアプローチ */
  .approach_sec {
    margin-top: 2.185rem;
  }

  .app_title {
    line-height: calc(38 / 26);
    padding-left: 2.7rem;
    margin-bottom: 2.575rem;
    margin-left: 2rem;
    font-size: 2rem;
  }

  .app_title::before {
    top: 0;
    transform: translateY(0%);
    width: 1rem;
    height: 100%;
  }

  .app_container {
    padding: 4.5rem 0 0;
    overflow: hidden;
    margin-bottom: 6.1rem;
  }

  .app_content {
    padding: 0 4.2rem;
  }

  .app_content_list {
    height: 10rem;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0 1.5rem;
    font-size: 1.8rem;
    line-height: calc(28/22);
    margin-bottom: 3.5rem;
  }

  .app_content_number {
    width: 4rem;
    height: 4rem;
    font-size: 1.6rem;
    top: -2.5rem;
    left: 50%;
    transform: translateX(-50%);
  }

  .app_graph_one {
    width: 80rem;
  }

  .uni_scroll {
    position: relative;
    overflow: auto;
    max-width: 100%;
    padding-left: 4.2rem;
  }

  /* jsのスクロール */
  .js-scrollable {
    width: 37.5rem;
    overflow-x: scroll;
    overflow-y: hidden;
    width: 100%;
  }

  .scroll-hint-icon {
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%);
  }

  /* 01 */
  .app_content_folder {
    margin-bottom: 6.3rem;
  }

  .app_title_number_wrap {
    margin-bottom: 2.6rem;
    margin-left: 2rem;
  }

  .app_title_number {
    width: 4rem;
    height: 4rem;
    padding: 0.7rem 1rem 0.9rem;
    font-size: 1.8rem;
  }

  .app_content_title {
    font-size: 1.8rem;
    line-height: calc(30/24);
  }

  .app_content_list_wrap {
    padding: 2rem 0;
    margin-bottom: 2.1rem;
    /* overflow: hidden; */
  }

  .app_content_white {
    margin-left: 3.3rem;
    margin-right: 3.2rem;
    padding: 2rem 1.7rem;
    margin-bottom: 0;
  }

  .app_list_heading_flex {
    align-items: start;
    gap: 0.5rem;
    margin-bottom: 1.8rem;
  }

  .app_list_symbol {
    font-size: 1.6rem;
    padding-top: 0.4rem
  }

  .app_list_heading {
    font-size: 1.6rem;
    line-height: calc(28 / 19);
  }

  .app_graph_two {
    width: 90rem;
  }

  /* 事例 */
  .app_case_example {
    margin: 0 2rem 2rem 2rem;
  }

  .app_case_contents_flex {
    flex-direction: column;
    gap: 2rem;
    margin: 0 2rem;
  }

  .app_case_contents {
    width: 33.5rem;
  }

  .case_content_title {
    padding: 2.7rem 0.5rem 2rem;
    font-size: 2rem;
    letter-spacing: 0.048rem;
    line-height: calc(30/24);
  }

  .other_en_title {
    height: 9.511rem;
    font-size: 1.7rem;
  }

  .case_image_one {
    width: 30.4rem;
    height: 17rem;
    margin: 0 1.5rem 1.5rem 1.6rem;
  }

  .case_content_text {
    font-size: 1.5rem;
    line-height: calc(30/20);
  }

  /* 02 */
  .title_number_other {
    align-items: start;
  }

  .app_graph_three {
    width: 90rem;
  }

  /* 03 */
  .app_graph_four {
    width: 85rem;
  }

  /* マーケティングを支える体制 */

  .marketing_sec {
    padding: 3.425rem 1.792rem 6.139rem 1.779rem;
    /* margin-bottom: 6.5rem; */
  }

  .mark_title {
    line-height: calc(34/26);
  }

  .mark_title::before {
    top: 0;
    transform: translateY(0%);
  }

  .mark_image_list {
    width: 33.92rem;
    height: 119.24rem;
  }
}