@charset "UTF-8";
/* CSS Document */
.pc_only{display:none!important;}

.sm_mb0{
	margin-bottom:0!important;}
.sm_mb20{
	margin-bottom:20px!important;}
.sm_mb40{
	margin-bottom:40px!important;}

.sm_mw200px{
    max-width: 200px;
}
.sm_mw250px{
    max-width: 250px;
    width: 100%;
}
.sm_mw300px{
    max-width: 300px;
}

.txt150sm{
    font-size: 1.5em!important;
}

.t_align_left_sm{
	text-align:left;}



/*------------------------------*/
html {
  scroll-padding-top: 75px;
}
body{
    padding-top: 80px;
}

.header_nav_link_02_ml{
	margin-left: auto;
}

.header_nav_body {
    padding-left: 0;
    height: 80px;
	z-index: 1111111112;
}

.header_nav_link a {
    height: 80px;
	width: 80px;
	color: #555;
	font-weight: bold;
	border-left: 1px solid #ddd;
}

.headroom--not-top .header_nav_link a {
	width: 70px;
    height: 70px;
    font-size: .7em;
    padding-top: 3px;
}


a.header_menu_toggle_btn{
	background: #009167;
	position: relative;
	right: 0;
	top: 0;
	width: 80px;
	height: 80px;
}

.header_menu_toggle_btn_icon {
  position: absolute;
  top: 49%;
  left: 50%;
        width: 34px;
        height: 20px;
        margin-left: -17px;
        margin-top: -18px;
  transition: .3s;
}
.header_menu_toggle_btn_icon_body:after {
        content: "MENU";
        position: absolute;
        width: 100%;
        text-align: center;
        top: auto;
        font-size: 12px;
        font-weight: bold;
        margin-top: 0;
        color: #fff;
        left: 0;
        bottom: 11.5px;
  transition: .3s;
}
body.uk-offcanvas-container .header_menu_toggle_btn_icon_body:after {
        content: "CLOSE";
}
.header_menu_toggle_btn_icon span {
  width: 100%;
  position: absolute;
  background: #fff;
  height: 2px;
  left: 0;
  transition: .3s;
  transition-delay: .3s;
}
.header_menu_toggle_btn_icon span:nth-child(1) {
  top: 0;
}
.header_menu_toggle_btn_icon span:nth-child(2) {
  top: 9px;
  transition-delay: 0;
}
.header_menu_toggle_btn_icon span:nth-child(3) {
  top: 18px;
}
.uk-offcanvas-container .header_menu_toggle_btn_icon {
}
.uk-offcanvas-container .header_menu_toggle_btn_icon span{
}
.uk-offcanvas-container .header_menu_toggle_btn_icon span:nth-child(1) {
  transform: translateY(9px) rotate(45deg);
}
.uk-offcanvas-container .header_menu_toggle_btn_icon span:nth-child(2) {
  opacity: 0;
}
.uk-offcanvas-container .header_menu_toggle_btn_icon span:nth-child(3) {
  transform: translateY(-9px) rotate(-45deg);
}


.headroom--not-top a.header_menu_toggle_btn {
        width: 70px;
        height: 70px;
    }
.headroom--not-top .header_menu_toggle_btn_icon_body:after {
        font-size: 11px;
        bottom: 10px;
    }

.headroom--not-top .header_menu_toggle_btn_icon {
    transform: scale(.9);
    }

.header_nav_logo a{
	display: flex;
	width: auto;
	height: 100%;
	align-items: center;
	justify-content: center;
	transition: .3s;
	padding-left: 12px;
}
.header_nav_logo a img{
	width: 200px;
	transition: .3s;
}
.headroom--not-top .header_nav_logo a img{
	width: 170px;
}

#main_menu {
    opacity: 0;
    transition: .5s;
    width: 100vw;
    display: block;
    right: 0;
    left: 0;
    z-index: -10000000;
    visibility: hidden;
}
.uk-offcanvas-page #main_menu.uk-offcanvas {
    opacity: 1;
    z-index: 1111111111;
    visibility: inherit;
    left: 0;
}
#main_menu .uk-offcanvas-bar {
    left: auto;
    right: 0;
    padding: 70px 0 60px;
    width: 400px;
	background: #fff;
    color: #000;
    line-height: 1.4;
        overflow-x: hidden;
}

.uk-offcanvas-page .header_nav_body:after {
    opacity: 1;
}

.sp_g_nav{
	margin-top: 30px;
}

.sp_g_nav_main_ul a{
	text-decoration: none;
	display: block;
	padding: 17px 40px 17px 20px;
	border-bottom: 1px solid #ddd;
	transition: .3s;
}
.sp_g_nav_main_ul a:hover{
	background: rgba(0,0,0,.15);
}
.sp_g_nav_main_ul >li> a:hover{
    background: #40AD8D;
    color: #fff!important;
}
.sp_g_nav_main_ul>li>a{
	color: #444!important;
}
.sp_g_nav_main_ul_sub a{
	color: #fff!important;
	border-bottom: 1px solid rgba(255,255,255,.3);
}
.sp_g_nav_main_ul{
	line-height: 1.3;
        font-weight: bold;
	border-top: 1px solid #ddd;}

.sp_g_nav_main_ul_sub_body ,
.sp_g_nav_main_ul_sub2_body{
	position: fixed;
	width: 400px;
	height: calc(100% - 80px);
	background: #009167;
	display: block;
	padding-top: 20px;
	padding-bottom: 60px;
	left: 100%;
	bottom: 0;
	z-index: 2;
	transition: .3s;
	overflow-y: auto;
}
.headroom--not-top .sp_g_nav_main_ul_sub_body ,
.headroom--not-top .sp_g_nav_main_ul_sub2_body{
	height: calc(100vh - 70px);
}
.sp_g_nav_main_ul_sub>li:last-child ,
.sp_g_nav_main_ul_sub2>li:last-child{
}
.sp_g_nav_main_ul_sub2_body{
	background: #026f4f;
	z-index: 3;
}
.li_sub_on.active>.sp_g_nav_main_ul_sub_body ,
.li_sub_on.active>.sp_g_nav_main_ul_sub2_body{
	left: calc(100% - 400px);
}

.sp_g_nav_main_ul_sub:after ,
.sp_g_nav_main_ul_sub2:after{
}
.sp_g_nav_main_ul_sub2:after{
}


.sp_g_nav_main_ul_sub li{
	display: block;
}

.sp_g_nav_main_ul_sub_close_li{
	margin: 20px 0;
}

.sp_g_nav_main_ul_sub_close,
.sp_g_nav_main_ul_sub_close2{
	display: inline-block;
	padding: 5px 0 5px 25px;
	position: relative;
        cursor: pointer;
}
.sp_g_nav_main_ul_sub_close:hover,
.sp_g_nav_main_ul_sub_close2:hover{
	text-decoration: underline;
}
.sp_g_nav_main_ul_sub_close:before,
.sp_g_nav_main_ul_sub_close2:before{
	content: "戻る";
	cursor: pointer;
}


.sp_g_nav_main_ul_sub li:nth-child(2) a{
	border-top: 1px solid rgba(255,255,255,.3);
}

.sp_g_nav_main_ul a{
	position: relative;
}
.sp_g_nav_main_ul a:after{
    position: absolute;
    top: 50%;
    right: 12px;
    display: block;
    content: '';
    width: 15px;
    height: 15px;
    margin-top: -7.5px;
	background-image: url("/common2025/img/header/arrow_up_right.svg");
	background-repeat: no-repeat;
	background-size: contain;
}
.sp_g_nav_main_ul>li> a:after{
	background-image: url("/common2025/img/header/arrow_up_right_black.svg");
}
.sp_g_nav_main_ul >li> a:hover::after{
	background-image: url("/common2025/img/header/arrow_up_right.svg");
}
.sp_g_nav_main_ul .li_sub_on >a:after{
    right: 15px;
	background-image: url("/common2025/img/header/arrow_right.svg");
}
.sp_g_nav_main_ul >li.li_sub_on >a:after{
	background-image: url("/common2025/img/header/arrow_right_black.svg");
}
.sp_g_nav_main_ul >li.li_sub_on> a:hover::after{
	background-image: url("/common2025/img/header/arrow_right.svg");
}
.sp_g_nav_main_ul_sub .li_sub_on >a:after{
	border-color: rgba(255,255,255,.8);
}

.sp_g_nav_main_ul_sub_close_li{
	padding: 0 20px;
	color: #fff;
}

.sp_g_nav_main_ul_sub_close:after,
.sp_g_nav_main_ul_sub_close2:after{
	opacity: .9;
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    content: '';
    width: 20px;
    height: 20px;
    margin-top: -10px;
	background-image: url("/common2025/img/header/arrow_left.svg");
	background-repeat: no-repeat;
	background-size: contain;
}

.sp_menu_bottom_btn_grid {
	margin-left: -5px;
}
.sp_menu_bottom_btn_grid>* {
	padding-left: 5px;
}
.sp_menu_bottom_btn_grid>*.uk-grid-margin {
	margin-top: 5px;
}
.sp_menu_bottom_btn_grid a{
	display: block;
	color: #fff;
	text-decoration: none;
	text-align: center;
	background: #007B57;
	padding:17px 5px ;
	font-weight: bold;
	font-size: .95em;
	transition: .3s;
}
.sp_menu_bottom_btn_grid a:hover{
	opacity: .6;
}

.sp_menu_bottom_cat_link_flex{
	display: flex;
	flex-wrap: wrap;
        border-bottom: 1px solid #ddd;
}
.sp_menu_bottom_cat_link_flex>*{
	width: 50%;
}
.sp_menu_bottom_cat_link_flex>*:nth-child(n+2){
        border-left: 1px solid #ddd;
}
    .sp_menu_bottom_cat_link_flex > *:nth-child(n+3) {
        border-top: 1px solid #ddd;
    }
.sp_menu_bottom_cat_link_flex a{
	display: block;
	font-weight: bold;
	color: #444!important;
	text-decoration: none;
	text-align: center;
	padding: 17px 5px;
}
.sp_menu_bottom_cat_link_flex a:hover{
    background: #40AD8D;
    color: #fff!important;
}

body.sp_sub_menu_active #main_menu .uk-offcanvas-bar {
        /*background: #009167;*/
}
body.sp_sub_menu_active2 #main_menu .uk-offcanvas-bar {
        /*background: #026f4f;*/
}

body.sp_sub_menu_active #main_menu .uk-offcanvas-bar .main_menu_content>*,
body.sp_sub_menu_active #main_menu .uk-offcanvas-bar .sp_g_nav_main_ul >li>a,
body.sp_sub_menu_active2 #main_menu .uk-offcanvas-bar .sp_g_nav_main_ul_sub >li>a{
	/*opacity: 0;
	pointer-events: none;*/
}

body.sp_sub_menu_active #main_menu .uk-offcanvas-bar .main_menu_content>*.sp_g_nav {
	opacity: 1;
	pointer-events: auto;
}


#main_menu ::-webkit-scrollbar {
	width: 5px;
}

.sp_menu_bottom_btn_icon{
	margin-right: 1px;
        vertical-align: -1px;}
.sp_menu_bottom_btn_icon img{
	width: 26px;
}

.sp_menu_bottom_btn_grid a{
container-type: inline-size;
}

@container (max-width: 160px) {
.sp_menu_bottom_btn_icon img{
	display: none;
}
}

.sp_g_nav_main_ul_sub_close_li span{
	margin-left: 2.5em;
	position: relative;
}
.sp_g_nav_main_ul_sub_close_li span:before{
	position: absolute;
        width: 1px;
        height: 130%;
        content: "";
        display: block;
        background: #fff;
        left: -1.25em;
        top: -15%;
        opacity: .3;
}


.sp_g_nav_main_ul a,
.sp_menu_bottom_cat_link_flex a,
.sp_menu_bottom_btn_grid a{
	padding-top: 14px;
	padding-bottom: 14px;
}

.gakka_sub_menu_grid a {
    padding: 12px 30px 12px 12px;
}
.gakka_sub_menu_grid a:after {
    right: 12px;
}



.common_link_list_title{
	font-size: 1.1em;
	border-radius: 7px 7px 0 0;
	padding: 8px 12px;
}
.common_link_list li a,
.common_clm_link_ul li a{
	font-size: .95em;
	padding: 10px 25px 10px 12px;
}


.subpage_main_img_title_body{
	height: 270px;
	padding: 60px 5%;
}
.subpage_main_img_title{
}
.subpage_main_img_title h1{
	font-size: 2.1em;
}


.common_en_title{
	font-size: 2.5em;
}

.footer_content_01_grid {
	margin-left: -15px;
}
.footer_content_01_grid>* {
	padding-left: 15px;
}
.footer_content_01_grid>*.uk-grid-margin{
	margin-top: 15px;
}

.pagetitle:before {
    height: 190px;
}



.undergraduate_top_gakubu_img{
	width: 460px;
}


.mce-content-body h2, .mce-content-body h3.title, .pagebody h2, .pagebody h3.title ,
.common_title2 ,.pagebody_title_h2{
    font-size: 1.78em;
    margin-bottom: 1.2em;
}

.mce-content-body h3, .mce-content-body h3.headline, .pagebody h3, .pagebody h3.headline,
.common_title3 {
    font-size: 1.35em;
    margin-bottom: 25px;
    padding-left: 30px;
	margin-top: 40px;
}


.mce-content-body h4, .mce-content-body h4.headline, .pagebody h4, .pagebody h4.headline {
    margin: 0 0 8px;
    font-size: 105%;
}


.common_page_nai_link_ul a{
	padding-left: 42px;
}
.common_page_nai_link_ul a:before{
	margin-top: -17px;
	width: 34px;
	height: 34px;
	font-size: 13px;
}

.sotugyousei_main_lead >div {
    padding: 0 15px;
    font-size: 1.3em;
}

.columnbox {
    display: block;
    width: 100%;
    margin-left: 0;
}
.columnbox .column {
    width: 100%;
    margin: 0 ;
}
.columnbox .column:nth-child(n+2) {
    margin-top: 40px;
}

.mce-content-body h3, .mce-content-body h3.headline, .pagebody h3, .pagebody h3.headline {
    padding-left: 10px;
    line-height: 1.2;
    border-left: 5px solid #009167;
}
.mce-content-body h3:before, .mce-content-body h3.headline:before, .pagebody h3:before, .pagebody h3.headline:before {
	display: none;
}



.gakubu_top2025_kenkyu_lead{
	display: none;
}



.five_strengths_pic01_flex_img{
	width: auto;
	height: 280px;
}

.columnbox .column4 {
    width: 100%;
    margin: 0 0 40px 0;
}

.columnbox .column3 {
    width: 100%;
    margin: 0 0 40px 0;
}

.page-id-1119 .columnbox .column3 img{
	width: 500px;
}


.mce-content-body ul.pagelist li a,
.pagebody ul.pagelist li a,
.articlelist_top h2 a{
	padding: 15px 25px 15px 15px;
}
.mce-content-body ul.pagelist li a:after,
.pagebody ul.pagelist li a:after,
.articlelist_top h2 a:after{
    position: absolute;
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-left: 7px solid #fff;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    margin-top: -7px;
    right: 10px;
}

.toppage_research_white_link2025{
}
.toppage_research_white_link2025 img{
}

.toppage_features_slider_white_box {
    border-radius: 12px;
    padding: 30px;
}
.toppage_features_slider_white_box_width {
    padding: 20px 10px;
}


.toppage_flex_title{
  display: block;
	text-align: center;
}

.toppage_flex_title_left{
	margin-bottom: 20px;
}

.toppage_flex_title_right>div{
  height: 100%;
  padding-left: 0;
	margin-left: 0;
	align-items: center;
	display: block;
	position: relative;
	font-weight: bold;
}
.toppage_flex_title_right>div:before{
	display: none;
}

footer#footer {
    margin-top: 100px;
}