@charset "utf-8";

/*header*/
.inter_header {
    background: url(/common_d/connect/future/other/img/hero.jpg) no-repeat center/cover;	
    background-size: cover;
    margin: 10px 0 0;
    height: 400px;
    position: relative;
}

.inter_ttl{
        position: absolute;
        bottom: 50px;
        left: 5%;
        margin-right: 10%;
        color: #fff;
        font-size: 40px;
        line-height: 1.2em;
        letter-spacing: 0.1em;
        font-weight: 600;
        font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", 'Noto Serif JP', serif;
        text-shadow: #333 1px 0 10px;
    span {
        font-weight: 700;
        font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
        align-items: center;
    }
    span.moji_b {
        font-size: 1.2em;
    }
    span.moji_s {
        font-size: 0.8em;
        vertical-align: top;
    }
}

/*p.inter_top{
    line-height: 1.5;
    font-size: 1.5em;
    font-weight: bold;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", 'Noto Serif JP', serif;
    text-align: center;
    margin: 20px auto 60px;
}*/

/*タイトルホバー*/
.left_appear {
  white-space: nowrap;
  /*overflow: hidden;*/
  animation: flowing-anim 1.5s ease forwards;
}
@keyframes flowing-anim {
 0%{
     opacity: 0;
     transform: translateY(-20px);
   }
100%{
     opacity: 1;
     transform: translateY(0);
   }
}

.inter_middl{
    width:90%;
    max-width:1200px;
    margin:0 auto;
}

h2.catch {
    margin: 30px 0 10px;
    font-size:36px;
    font-weight: 700;
    line-height: 1.6em;
    span.red_bk {
        background-color: red;
        color: #ffffff;
        padding: 0 10px 3px;
        margin-right: 5px;
    }
    span.red_b {
        font-size: 1.3em;/* 文字のサイズ */
        color: red;
    }
    span.bk_b {
        font-size: 1.3em;/* 文字のサイズ */
        color: #000000;
    }
    span.fukuro {
        color: #ffffff;/* 文字の色 */
        font-size: 1.3em;/* 文字のサイズ */
        letter-spacing: 1px;/* 文字間 */
        text-shadow: 
            1px  1px 0px #ff0000,
            -1px  1px 0px #ff0000,
            1px -1px 0px #ff0000,
            -1px -1px 0px #ff0000,
            1px  0px 0px #ff0000,
            0px  1px 0px #ff0000,
            -1px  0px 0px #ff0000,
            0px -1px 0px #ff0000;/* 文字の影 */

    }
}

.catch_sub {
    text-align: right;
    margin-bottom: 30px;
}

h3 {
    font-size: 1.8em;
    font-weight: 500;
    line-height: 1.3;
    margin-top: 10px;
    margin-bottom: 20px;
    span {
        color: red;
        font-weight: 700;
    }
}

.ninzu_box {
    display: flex;
}

.ninzu {
    margin-left: 15px;
}

.ninzu .ninzu_txt {
    border: 1px solid red;
    padding: 10px;
    text-align: center;
    white-space: nowrap;
    line-height: 2.1em;
    width: 270px;
    height: 100px;
    .red_b {
        color: red;
        font-size: 1.1em;
        font-weight: 600;
    }
    .red_bb {
        color: red;
        font-size: 2.8em;
        font-weight: 700;
    }
}

.ninzu .chui {
    padding-top: 5px;
    font-size: 0.7em;
    line-height: 1.4;
    text-indent:-2em; 
    padding-left:2em;
}

.interview_box {
  position: relative;
  width: 80%;
  max-width: 1200px;
  padding: 30px 20px;
  border-radius: 20px;
  box-shadow: 0 2px 3px rgb(0 0 0 / 20%);
  background-color: #f2f8ff;
  color: #333333;
    margin: 0 auto 40px;
  .interview_txt {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto; 
    text-align: center;
  }
}

.interview_box .law_stu_img,
.interview_box .eco_stu_img {
    position: absolute;
    bottom: 20px;
    left: -80px;
}
.interview_box .policy_stu_img {
    position: absolute;
    bottom: 20px;
    right: -100px;
}

.interview_fac {
    font-size:1.8em ;
    font-weight: 600;
    color: #fff;
    text-align: center;
    .bak1 {
        padding: 5px 10px;
        margin: 0 10px;
    }
    .bak2 {
        padding: 5px 20px;
        margin: 0 10px;
        border-radius: 9999px;
    }
    .c_bk {
       color: #333; 
    }
}

.interview_ttl {
    font-size: 1.4em;
    font-weight: 600;
    margin: 10px;
    text-align: center;
}

.interview_fbox {
    display: flex;
    margin: 0 50px;
    flex-wrap: wrap;
    justify-content: space-around;
}

.interview_child {
    width: 45%;
    margin-top: 20px;
    p {
      position: relative;
      background-color: #fff;
      margin-bottom: 10px;
      padding: 5px 10px 5px 50px;
      border: 1px solid;
      font-weight: 600;
      span {
        position: absolute;
        left: 0;
        top: 0;
        font-size: 1.2em;
        padding: 5px;
        width: 40px;
        text-align: center;
        color: #fff;
      }
    }

    p.fc_law{
        border-color: #6355a1;
    }
    p.fc_economics{
        border-color: #00b0ec;
    }
    p.fc_policy{
        border-color: #00abab;
    }
}

.stu_txt {
    width: 90%;
    max-width: 1200px;
    margin: 15px auto 0; 
    span {
        font-size: 1.2em;
        font-weight: 600;
    }  
  }

  /*学問最前線*/
div.bg_or {
    width: 100vw;
    background-color: #fff6e5;
    padding: 30px 0 30px;
    margin-bottom: 40px;
}

.course_wrap {
	margin:0 auto 40px;
	display: flex;
	justify-content: space-between;
	width:90%;
	max-width: 1000px;
}

.course_col01,
.course_col02 {
	width:48%;
}

.course_col01 h4,
.course_col02 h4 {
	font-weight: bold;
	font-size: 1.2em;
	margin-bottom:1em;
    span {
        color: red;
    }
}


.tit_sub {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #231815;
	font-weight: bold;
	margin-bottom: 0.5em;
}
.tit_sub::before,
.tit_sub::after {
    width: 3px;
    height: 18px;
    background-color: #231815;
    content: '';
}

.tit_sub::before {
    transform: rotate(-35deg);
    margin-right: 15px;
}

.tit_sub::after {
    transform: rotate(35deg);
    margin-left: 15px;
}


.first_year dt,
.third_year dt {
	width: 70px;
}

.first_year,
.third_year {
	margin:0;
	padding: 0;
	display: flex;
	align-items: center;
}

.first_year dd,
.third_year dd {
	margin:0 0 0 1rem;
}

.first_year dt img,
.third_year dt img {
	width:100%;
}

.course_col01 .kougi {
	width: 100%;
	padding:0;
	margin:0 auto;
	display: flex;
	justify-content: space-between;
}

.course_col01 .kougi li {
	width:30%;
	padding:3px 0;
	text-align: center;
	border: 1px solid #231815;
	color:#231815;
	background-color: #fff;
} 

.gakumon {
	margin-bottom:60px;
}

.course_col02 img {
	width: min(100%, 350px);
	display: block;
	margin:auto;
}

.saizensen_img {
    margin-top: 20px;
    position: relative;
}

.saizensen_img p {
    position: absolute;
    top: 220px;
    left: 20px;
    color: #fff;
    line-height: 1.4em;
    text-shadow    : 
       5px  5px 5px #333333,
      -5px  5px 5px #333333,
       5px -5px 5px #333333,
      -5px -5px 5px #333333,
       5px  0px 5px #333333,
       0px  5px 5px #333333,
      -5px  0px 5px #333333,
       0px -5px 5px #333333;     
    span {
        font-size: 1.2em;
        font-weight: 600;
    }
}

.saizensen_txt {
    margin-top: 20px;
    margin-left: 30px;
}

.saizensen_txt h4 {
    font-size: 1.4em;
    font-weight: 600;
    margin-bottom: 15px;
}

.saizensen_txt p {
    line-height: 1.5em;
}

/*学問最前線ここまで*/

.f_box {
    display: flex;
}

.align_center {
    align-items: center
}

.txt_r {
    text-align: right;
}


.base_c_law {background-color: #f4f2f7;}
.base_c_eco {background-color: #e8f2f4;}
.base_c_policy {background-color: #e6f4eb;}

.bc_law{background:#6355a1;}
.bc_economics{background:#00b0ec;}
.bc_commerce{background:#00ac6f;}
.bc_kikan{background:#e9b310}
.bc_letters{background:#eb007f;;}
.bc_policy{background:#00abab;}
.bc_gm{background:#03275f;}
.bc_itl{background:#231815;}

.fc_law{color:#6355a1;}
.fc_economics{color:#00b0ec;}
.fc_commerce{color:#00ac6f;}
.fc_kikan{color:#e9b310}
.fc_letters{color:#eb007f;;}
.fc_policy{color:#00abab;}
.fc_gm{color:#03275f;}
.fc_itl{color:#231815;}

/*モーションCSS*/
.bottom {
  transform: translateY(30px);
  opacity: 0;
  transition: opacity 1s, transform 0.5s;
}
.in {
  opacity: 1;
  transform: translateX(0);
  transform: translateY(0);
}
.in_mb {
  opacity: 1;
  transform: translateX(0);
  transform: translateY(0);
}

/*==========TB===========*/

@media (max-width: 959px) {
    .inter_ttl {
        left: 20px;
        margin-right: 20px;
        font-size: 2.2em;
    }

    .catch_sub {
    text-align: left;
    }

    h2.catch span.red_b,
    h2.catch span.bk_b {
        font-size: 1.2em;
    }
   

    .interview_box {
        width: 100%;
    }

    .interview_box .law_stu_img, 
    .interview_box .eco_stu_img {
        left: -30px;
    }
    .interview_box .policy_stu_img{
        right: -60px;
    }

    .interview_box.base_c_law::before {
        transform: scale(0.7);
        left: -60px;
        height: 350px;
    }
    .interview_box.base_c_eco::before {
        transform: scale(0.7);
        left: -60px;
        height: 350px;
    }
    .interview_box.base_c_policy::before {
        transform: scale(0.7);
        right: -80px;
        height: 350px;
    }

    .course_wrap {
        width: 100%;
    }

    .interview_fbox {
        margin: 0 100px;
        flex-direction:column;
    }

    .interview_child {
        width: 100%;
    }

    .stu_txt {
        width: 70%;
    }

    .course_col01 {
        width: 60%;
    }
    .course_col02 {
        width: 35%;
    }

    .saizensen_img img {
        width: 350px;
    }
    .saizensen_img p {
    top: 180px;
    }

    .f_box.tab_wrap {
        flex-wrap: wrap;
    }

    .ninzu_box {
        width: 100%;
        justify-content: center;
        margin-top: 10px;
    }

    .ninzu {
        margin-right: 15px;
        width: 100%;
        max-width: 350px;
    }

    .ninzu .ninzu_txt {
        width: 100%;
    }
}


/*========smp========*/
@media screen and (max-width: 599px){
    .scroll {
        overflow: auto;
    }

    .inter_header {
        height: 250px;
    }

    .inter_ttl {
        left: 0;
        margin-right: 10px;
        font-size: 1.8em;
        bottom: 15px;
        span {
            display: inline-block;
            vertical-align: middle;
            line-height: 1.2em;
            letter-spacing: -0.03em;
        }
        span.moji_b {
            font-size: 1.0em;
        }
        span.moji_s {
            font-size: 0.7em;
            vertical-align: middle;
        }
    }

    .inter_middl {
        width: 95%;
    }


    h2.catch {
        font-size: 28px;
    }

    h3 {
        text-align: center;
    }

    .ninzu_box {
        flex-direction: column;
    }

    .ninzu {
        width: 90%;
        margin: 5px auto;
    }

    .interview_box {
        padding: 30px 0 10px;
    }

    .interview_box .law_stu_img,
    .interview_box .eco_stu_img,
    .interview_box .policy_stu_img {
        bottom: 10px;
        left: 10px;
        height: 150px;
        width: 150px;
        border-radius: 150px;
        object-fit: cover;
        object-position: top 20px left -10px;
        background-color: #fff;
    }
    .interview_box .law_stu_img {
        object-position: top 10px left -10px;
    }
    .interview_box .eco_stu_img {
        object-position: top 10px left 20px;
    }
    .interview_box .policy_stu_img {
        object-position: top 10px left 20px;
    }

    .stu_txt {
        width: 95%;
        padding-left: 160px;
        line-height: 1.6em;
        margin: 70px auto 0;
    }

    .stu_txt.txt_r {
        margin-top: 50px;
        text-align: left;
    }

    .interview_fac {
        font-size: 1.4em;
    }

    .interview_fac .bak1,
    .interview_fac .bak2 {
        margin: 0 5px;
    }

    .interview_ttl {
        font-size: 1.2em;
    }

    .interview_fbox {
        margin: 0 20px;
        flex-direction: column;
    }
   
    .interview_child  {
        width: 100%;
    }

    .course_wrap {
        flex-direction: column;
    }

    .course_col01, .course_col02 {
        width: 100%;
    }

    .first_year dd, .third_year dd {
    margin: 0 0 0 5px;
    }

    .gakumon,.gakusai {
        margin-bottom: 30px;
    }

    .bak1.bc_kikan {
        margin: 0;
        letter-spacing: -0.02em;
    }

    .saizensen_img {
        text-align: center;
    }
    .saizensen_img img {
        width: 90%;
    }

    .saizensen_img p {
        top: auto;
        bottom: 10px;
        left: 30px;
    }

    .saizensen_txt {
        margin-left: auto;
    }

    .f_box {
        flex-direction: column;
    }
}