@charset "UTF-8";
/* grid_pc */
.row {
  display: flex; }

.column {
  margin-left: 4%; }

.column:first-child {
  margin-left: 0; }

.one.column {
  width: 4.66666666667%; }

.two.column {
  width: 13.3333333333%; }

.three.column {
  width: 22%; }

.four.column {
  width: 30.6666666667%; }

.five.column {
  width: 39.3333333333%; }

.six.column {
  width: 48%; }

.seven.column {
  width: 56.6666666667%; }

.eight.column {
  width: 65.3333333333%; }

.nine.column {
  width: 74.0%; }

.ten.column {
  width: 82.6666666667%; }

.eleven.column {
  width: 91.3333333333%; }

.twelve.column {
  width: 100%; }

.row.row_reverse {
  flex-direction: row-reverse; }
  .row.row_reverse .column:last-child {
    margin-left: 0; }
  .row.row_reverse .column:first-child {
    margin-left: 4%; }

:target {
  scroll-margin-top: 96px; }

/*----------------------------------------------

  header

----------------------------------------------*/
.site_header {
  height: 96px; }

/*----------------------------------------------

  footer

----------------------------------------------*/
.site_footer_wrap {
  max-width: 1500px; }
  @media (min-width: 1199px) {
    .site_footer_wrap {
      gap: 0 8rem; } }

.site_footer_nav {
  display: flex;
  gap: 2rem; }
  .site_footer_nav > ul {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin: 0;
    padding: 0; }
    .site_footer_nav > ul > li {
      list-style: none;
      display: flex;
      gap: 2em;
      margin: 0;
      padding: 0;
      font-size: 1.6rem; }
      .site_footer_nav > ul > li > a {
        display: block;
        font-size: 1.6rem;
        min-width: 15rem;
        color: #8e6d42; }
      .site_footer_nav > ul > li ul {
        list-style: none;
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        margin: 0;
        padding: 0; }
        .site_footer_nav > ul > li ul li {
          font-size: 1.4rem; }
          .site_footer_nav > ul > li ul li:not(:first-child) {
            border-left: solid 1px #8e6d42; }
          .site_footer_nav > ul > li ul li a {
            display: flex;
            padding: 0 1em;
            color: #8e6d42; }

/*----------------------------------------------

  layout

----------------------------------------------*/
.txt_center_pc {
  text-align: center; }

.txt_right_pc {
  text-align: right; }

.pc_big {
  font-size: 120%; }

.pc_big_s {
  font-size: 110%; }

.pc_big_m {
  font-size: 150%; }

.pc_big_l {
  font-size: 180%;
  margin: 0; }

.pc_big_xl {
  font-size: 240%;
  margin: 0; }

.pc_none {
  display: none; }

/*----------------------------------------------

  container

----------------------------------------------*/
.container {
  max-width: 940px;
  margin: 0 auto; }
  @media (min-width: 1199px) {
    .container {
      max-width: 1170px; }
      .container.lg {
        max-width: 90%; } }
  .container.xs {
    max-width: 640px; }
  .container.sm {
    max-width: 800px; }
  .container.md {
    max-width: 880px; }
  .container.wide {
    width: 100%;
    max-width: 90%; }

/*----------------------------------------------

  article

----------------------------------------------*/
/*----------------------------------------------

  asset

----------------------------------------------*/
.feature_list li a {
  text-align: center; }

/*----------------------------------------------

  fix_nav

----------------------------------------------*/
@media screen and (max-height: 700px) {
  .fix_nav {
    padding: 1em 0; }

  .fix_nav_oc {
    font-size: 1.3rem; }

  .fix_nav_shiryo {
    font-size: 1.3rem; }

  .fix_nav_sns {
    flex-direction: row;
    margin: auto 0 2.5em; }
    .fix_nav_sns li a {
      font-size: 1.4rem;
      width: 24px;
      height: 24px; } }
/*----------------------------------------------

  index

----------------------------------------------*/
.index_nextoc_doc .index_nextoc_doc_title:before {
  display: block; }
  @media (min-width: 1199px) {
    .index_nextoc_doc .index_nextoc_doc_title:before {
      display: inline-block; } }
@media (max-width: 1199px) {
  .index_nextoc_doc .index_nextoc_doc_title {
    margin-bottom: 2em; }
  .index_nextoc_doc .index_nextoc_meta {
    flex-wrap: wrap; }
    .index_nextoc_doc .index_nextoc_meta p {
      text-align: left;
      width: 100%; } }

.index_hero_copy_wrap {
  width: 36%; }
  .index_hero_copy_wrap p {
    font-size: clamp(1.6rem, 3.6vw, 5.4rem); }

.btn_index_nextoc {
  top: 440px; }
  @media (max-width: 1399px) {
    .btn_index_nextoc {
      top: 420px; } }
  @media (max-width: 1299px) {
    .btn_index_nextoc {
      top: 400px; } }
  @media (max-width: 1199px) {
    .btn_index_nextoc {
      top: 400px; } }

/*----------------------------------------------

  学科・コース

----------------------------------------------*/
.page_contents .biyo_career_sec {
  padding-top: 7em;
  padding-bottom: 10em;
  background: url(./images/course/biyo_career_bg.jpg) scroll center center;
  background-size: cover;
  padding: 7em 2em 4em; }
  .page_contents .biyo_career_sec .biyo_career_inner {
    max-width: 40%;
    margin: 0 auto 0 2em; }
    .page_contents .biyo_career_sec .biyo_career_inner .biyo_career_list li {
      font-size: 1.8rem; }

.biyo_intro_wrap {
  margin-top: 8em; }

.biyo_intro_title {
  display: block;
  padding: 0; }
  .biyo_intro_title span {
    position: absolute;
    display: block;
    top: -3em;
    left: 7.5%;
    font-size: 4rem; }
    .biyo_intro_title span::after {
      content: "";
      display: block;
      position: absolute;
      top: 0em;
      left: -1em;
      width: 0;
      height: 4em;
      border-left: solid 1px; }
  .biyo_intro_title::after {
    position: absolute;
    right: 0;
    z-index: 10;
    top: -1.5em;
    font-size: clamp(3rem, 10vw, 22rem); }

.biyo_intro_doc {
  position: relative;
  padding: 0;
  padding-left: 3em;
  background: transparent;
  width: auto; }
  .biyo_intro_doc::before {
    top: 0;
    left: 0;
    font-size: 4rem;
    line-height: 1; }
  @media (max-width: 1199px) {
    .biyo_intro_doc {
      padding-left: 2em; }
      .biyo_intro_doc::before {
        font-size: 2.5rem; } }
  .biyo_intro_doc h3 {
    font-size: clamp(2rem, 2vw, 3.2rem); }
  .biyo_intro_doc p {
    font-size: clamp(1.4rem, 1.2vw, 2rem); }

.biyo_intro_list_01 {
  position: relative; }
  .biyo_intro_list_01 .biyo_intro_photo {
    width: 40%; }
  .biyo_intro_list_01 .biyo_intro_doc {
    position: absolute;
    top: 2.5em;
    left: 18%; }
    @media (max-width: 1199px) {
      .biyo_intro_list_01 .biyo_intro_doc {
        left: 14%; } }

.biyo_intro_list_02 {
  position: absolute;
  top: -4em;
  right: 0;
  width: 40%; }
  @media (max-width: 1199px) {
    .biyo_intro_list_02 {
      width: 38%; } }
  .biyo_intro_list_02 .biyo_intro_photo {
    position: relative;
    display: block; }
    .biyo_intro_list_02 .biyo_intro_photo .biyo_intro_list_02_01 {
      position: relative;
      width: 50%;
      z-index: 4; }
    .biyo_intro_list_02 .biyo_intro_photo .biyo_intro_list_02_02 {
      position: relative;
      width: 60%;
      margin: 0 0 0 auto;
      z-index: 2;
      margin-top: -40%; }
  .biyo_intro_list_02 .biyo_intro_doc {
    position: absolute;
    top: 52%;
    left: -20%;
    z-index: 5;
    margin: 0; }

.biyo_intro_list_03 {
  position: relative;
  margin-top: -6%;
  margin-right: 4%;
  display: flex;
  flex-direction: row-reverse;
  align-items: flex-end;
  gap: 2em; }
  .biyo_intro_list_03 .biyo_intro_photo {
    width: 50%; }
  .biyo_intro_list_03 .biyo_intro_doc {
    margin: 0; }

.page_contents .riyo_career_sec {
  padding-top: 8em;
  padding-bottom: 10em; }

.riyo_intro_wrap {
  margin-top: 8em; }

.riyo_intro_title {
  display: block;
  padding: 0; }
  .riyo_intro_title span {
    position: absolute;
    display: block;
    top: -3em;
    left: 7.5%;
    font-size: 4rem; }
    .riyo_intro_title span::after {
      content: "";
      display: block;
      position: absolute;
      top: 0em;
      left: -1em;
      width: 0;
      height: 4em;
      border-left: solid 1px; }
  .riyo_intro_title::after {
    position: absolute;
    right: 2rem;
    z-index: 10;
    top: -1.5em;
    font-size: clamp(3rem, 10vw, 22rem); }

.riyo_intro_doc {
  position: relative;
  padding: 0;
  padding-left: 3em;
  background: transparent;
  width: auto; }
  .riyo_intro_doc::before {
    top: 0;
    left: 0;
    font-size: 4rem;
    line-height: 1; }
  @media (max-width: 1199px) {
    .riyo_intro_doc {
      padding-left: 2em; }
      .riyo_intro_doc::before {
        font-size: 2.5rem; } }
  .riyo_intro_doc h3 {
    font-size: clamp(2rem, 2vw, 3.2rem); }
  .riyo_intro_doc p {
    font-size: clamp(1.4rem, 1.2vw, 2rem); }

.riyo_intro_list_01 {
  position: relative;
  z-index: 5;
  display: flex;
  flex-direction: row-reverse; }
  .riyo_intro_list_01 .riyo_intro_photo {
    width: 50%; }
  .riyo_intro_list_01 .riyo_intro_doc {
    width: 45%;
    transform: translateX(45%); }

.riyo_intro_list_02 {
  position: relative;
  z-index: 4;
  top: -4rem;
  display: flex; }
  @media (min-width: 1199px) {
    .riyo_intro_list_02 {
      top: -12rem; } }
  @media (min-width: 1499px) {
    .riyo_intro_list_02 {
      top: -14rem; } }
  .riyo_intro_list_02 .riyo_intro_photo {
    width: 50%; }
    @media (min-width: 1499px) {
      .riyo_intro_list_02 .riyo_intro_photo {
        width: 60%; } }
  .riyo_intro_list_02 .riyo_intro_doc {
    position: relative;
    top: 6rem;
    flex: 1;
    padding-right: 7%;
    margin-left: 1em; }
    @media (min-width: 1199px) {
      .riyo_intro_list_02 .riyo_intro_doc {
        top: 14rem; } }
    @media (min-width: 1499px) {
      .riyo_intro_list_02 .riyo_intro_doc {
        top: 20rem; } }

.riyo_intro_list_03 {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: row-reverse; }
  .riyo_intro_list_03 .riyo_intro_photo {
    width: 55%;
    padding-right: 7%; }
  .riyo_intro_list_03 .riyo_intro_doc {
    width: 46%;
    margin-right: -2em; }
    @media (min-width: 1299px) {
      .riyo_intro_list_03 .riyo_intro_doc {
        width: 40%;
        margin-right: -5em; } }

/*----------------------------------------------

 学校紹介 

----------------------------------------------*/
/*----------------------------------------------

 入試情報

----------------------------------------------*/
.admission_policy {
  padding: 0 30px 20px;
  width: 80%; }

/*----------------------------------------------

  お知らせ

----------------------------------------------*/
.news_list .news_list_photo {
  max-width: 400px; }
