@charset "UTF-8";


/* ---------------------------------------------
*   header
--------------------------------------------- */

.header {
    padding-top: 139px;
}

.header-nav-trigger {
    position: fixed;
    top: 5vw;
    left: 89.21875vw;
    z-index: 10000;
    display: flex;
    flex-direction: column;
    width: 6.25vw;
    height: 5.625vw;

    justify-content: space-between;
}


.header-nav-trigger__line {
    padding-top: 0.78125vw;
    width: 100%;
    height: 0;
    background-color: #009844;
}

.header-sub {
    text-align: center;
    margin-bottom: 50px;
    font-size: 1.6rem;
}


@media screen and (max-width: 738px) {

    .header {
        padding-top: 34.375vw;
    }

    .header-sub {
        text-align: center;
        margin-bottom: 50px;
        font-size: 1rem;
    }

}


/* ---------------------------------------------
*   header-upper
--------------------------------------------- */

.header-upper {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    z-index: 9000;
    min-width: 1100px;
    background-color: #fff;
}

.header-upper__inner {
    box-sizing: border-box;
    margin-right: auto;
    margin-left: auto;
    padding-right: 0px;
    padding-left: 0px;
    max-width: 1400px;
    /*width: 100%;*/
}

.header-upper__inner:after {
    display: block;
    clear: both;
    content: "";
}

.header-upper__main-link {
    display: flex;
    float: left;
    padding-left: 20px;
    height: 86px;
    align-items: center;
    /*height: 86px;
    position: absolute;
    top: 0;
    left: 20px;*/
}

.header-upper__logo-link {
    display: block;
    overflow: hidden;
    /*padding-top: 48px;*/
    padding-top: 60px;
    /*width: 250px;*/
	width: 365px;
    height: 0;
    background: url(../../img/common/logo_iuhw.png) 0 0 no-repeat;
    background-size: 100% auto;
    transition: opacity 300ms;
}

.header-upper__logo-link:hover {
    opacity: 0.7;
}



/*英語ロゴ*/

.header-upper__logo-link_en {
    display: block;
    overflow: hidden;
    /*padding-top: 48px;*/
    padding-top: 60px;
    /*width: 250px;*/
	width: 365px;
    height: 0;
    background: url(../../img/common/logo_iuhw_en.png) 0 0 no-repeat;
    background-size: 100% auto;
    transition: opacity 300ms;
}

.header-upper__logo-link_en:hover {
    opacity: 0.7;
}







.header-upper__text {
    box-sizing: border-box;
    margin-left: 35px;
    padding: 9px 17px 8px;
    border-radius: 16px;
    background-color: #009844;
    color: #fff;
    text-align: center;
    font-weight: bold;
    font-size: 1.14286rem;
    line-height: 1;
}

.header-upper__text-link {
    transition: opacity 300ms;
}

.header-upper__text-link:hover {
    opacity: 0.7;
}

.header-upper__language {
    display: inline-block;
    margin-right: 6px;
    padding-top: 35px;
}

.header-upper__language-list {
    display: flex;
}

.header-upper__language-listitem {
    position: relative;
    display: block;
    margin: 0 4px;
}

.header-upper__language-listitem:before {
    position: absolute;
    top: 0;
    left: -5px;
    z-index: 999;
    display: block;
    width: 1px;
    height: 20px;
    border-left: 1px solid #d9d9d9;
    content: "";
}

.header-upper__language-listitem:first-child:before {
    border-left: none;
}

.header-upper__language-link {
    display: block;
    overflow: hidden;
    box-sizing: border-box;
    padding-top: 20px;
    height: 0;
    background-position: center top;
    background-size: 100% auto;
    background-repeat: no-repeat;
}

.header-upper__language-link--jp {
    width: 29px;
    background-image: url(../../img/common/btn_language-jp_sprite.png);
}

.header-upper__language-link--en {
    width: 29px;
    background-image: url(../../img/common/btn_language-en_sprite.png);
}

.header-upper__language-link--zh-cn {
    width: 25px;
    background-image: url(../../img/common/btn_language-zh-cn_sprite.png);
}

.header-upper__language-link--zh-tw {
    width: 26px;
    background-image: url(../../img/common/btn_language-zh-tw_sprite.png);
}

.header-upper__language-link--ko {
    width: 25px;
    background-image: url(../../img/common/btn_language-ko_sprite.png);
}

.header-upper__language-link:hover {
    background-position: center center;
}

.header-upper__language-link--current {
    background-color: #f1f7f1;
    background-position: center bottom;
}

.header-upper__language-link--current:hover {
    background-position: center bottom;
}

.header-upper__sub-link {
    display: flex;
    float: right;
}

.header-upper__sns-links {
    display: flex;
    margin-right: 10px;
    width: 70px;
    height: 86px;

    justify-content: space-between;
    align-items: center;
}

.header-upper__sns-link {
    width: 35px;
}

.header-upper__sns-link-icon {
    display: block;
    overflow: hidden;
    padding-top: 35px;
    height: 0;
    background-position: center top;
    background-size: 100% auto;
    background-repeat: no-repeat;
}

.header-upper__sns-link-icon:hover {
    background-position: center bottom;
}

.header-upper__sns-link--twitter .header-upper__sns-link-icon {
    background-image: url(../../img/common/btn_twitter_sprite.png);
}

.header-upper__sns-link--facebook .header-upper__sns-link-icon {
    background-image: url(../../img/common/btn_facebook_sprite.png);
}

.header-upper__form-links {
    display: flex;
    width: 172px;
}

.header-upper__search {
    box-sizing: border-box;
    margin-top: 26px;
    margin-right: 35px;
    width: 174px;
}

.header-upper__search-form {
    position: relative;
}


.header-upper__search-textfield {
    display: block!important;
    overflow: hidden!important;
    box-sizing: border-box!important;
    padding: 0 48px 0 16px!important;
    width: 100%!important;
    height: 35px!important;
    border: none!important;
    border-radius: 5px!important;
    background-color: #efefef!important;
    font-size: 0.875rem!important;
    line-height: 30px!important;
}

.header-upper__search-button {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    margin: 0;
    padding: 0;
    width: 42px;
    height: 100%;
    border: 0;
    border-radius: 0 5px 5px 0;
    background: #6e6e6e;
    box-shadow: none;
    font-size: 0;
    cursor: pointer;
    transition: opacity 300ms;
}

.header-upper__search-button:before {
    position: absolute;
    top: 25%;
    bottom: 0;
    left: 30%;
    overflow: hidden;
    padding-top: 16px;
    width: 16px;
    height: 0;
    background: url(../../img/common/icon_loupe.png) center center no-repeat;
    background-size: 100% auto;
    content: "";
}

.header-upper__form-link {
    width: 50%;
    height: 86px;
}

.header-upper__form-link-text {
    display: block;
    box-sizing: border-box;
    height: 100%;
    background-repeat: no-repeat;
    color: #fff;
    text-align: center;
    font-weight: bold;
    font-size: 0.85714rem;
    line-height: 1.25;
    transition: opacity 300ms;
}

.header-upper__form-link-text:hover {
    opacity: 0.7;
}

.header-upper__form-link--icon-mail .header-upper__form-link-text {
    padding-top: 60px;
    background-color: #3eb373;
    background-image: url(../../img/common/icon_contact.png);
    background-position: center 21px;
}

.header-upper__form-link--icon-doc .header-upper__form-link-text {
    padding-top: 60px;
    background-color: #009844;
    background-image: url(../../img/common/icon_entry.png);
    background-position: center 16px;
}



@media screen and (max-width: 738px) {

    .header-upper {
        min-width: auto;
    }

    .header-upper__inner {
        box-sizing: border-box;
        margin-right: auto;
        margin-left: auto;
        padding-right: 4.6875vw;
        padding-left: 4.6875vw;
        height: 12.5vw;
    }

    .header-upper__main-link {
        padding-top: 0.625vw;
        padding-left: 0;
        height: auto;
    }

    .header-upper__logo {
        padding: 3.4375vw 0 3.59375vw;
    }

    .header-upper__logo-link {
        padding-top: 7.8125vw;
        /*width: 39.0625vw;*/
		width:57vw;
    }
	
    .header-upper__logo-link_en {
        padding-top: 7.8125vw;
        /*width: 39.0625vw;*/
		width:57vw;
    }
	
	

    .header-upper__text {
        margin-left: 5vw;
        padding: 0;
        width: auto;
        border-radius: 0;
        background-color: transparent;
        color: #009844;
        font-size: 0.78571rem;
    }
}


/* ---------------------------------------------
*   header-lower
--------------------------------------------- */

@media screen and (max-width: 738px) {

    .header-lower {
        position: fixed;
        top: 15.3125vw;
        right: 0;
        left: 0;
        z-index: 9000;
        display: flex;
        box-sizing: border-box;
        padding: 5.15625vw 0;
        width: 100%;
        background-color: #f1f7f1;

        justify-content: center;
    }

    .header-lower__text {
        display: block;
        padding: 2.5vw 4.6875vw 2.34375vw;
        border-radius: 30px;
        background-color: #009844;
        color: #fff;
        font-weight: bold;
        font-size: 0.85714rem;
        line-height: 1;
        transition: opacity 300ms;
    }

    .header-lower__text:hover {
        opacity: 0.7;
    }
}




/* ---------------------------------------------
*   header-nav
--------------------------------------------- */

.header-nav {
    position: fixed;
    top: 86px;
    right: 0;
    left: 0;
    z-index: 9000;
    box-sizing: border-box;
    min-width: 1200px;
    width: 100%;
    border-top: 1px solid #d9d9d9;
    background-color: #f1f7f1;
}

.header-nav__list {
    display: flex;
    justify-content: center;
}

.header-nav__list--lower {
    border-top: 1px solid #eaeaea;
    background-color: #f7f7f7;
}

.header-nav__list-item {
    position: relative;
}

.header-nav__list-item > a {
    position: relative;
    display: block;
    padding:14px 30px;
    color: #009844;
    letter-spacing: 1px;
    font-size: 1.14286rem;
}

.header-nav__list-item > a:hover {
    color: #9dd1a6;
}

.header-nav__list-item > a:before,
.header-nav__list-item:last-child > a:after{
    position: absolute;
    top: 50%;
    display: block;
    width: 1px;
    height: 1em;
    background-color: #9dd1a6;
    content: "";
}
.header-nav__list-item > a:before{
    left: 0;
    transform: translate(-0.5px, -50%);
}

.header-nav__list-item:last-child > a:after{
    right: 0;
    transform: translate(0.5px, -50%);
}


.header-nav__list-item--active > a {
    background-color: #9dd1a6;
    color: #ffffff;
    /*cursor: default;*/
}
.header-nav__list-item--active > a:hover {
    color: #ffffff;
}

.header-nav__sublist-link {
    display: block;
}


.header-nav-overlay {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 9000;
    display: none;
    width: 100vw;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.85);
}




/* 三角形のスタイル */
.mgsub:after,
.mgsub:before{
    position: absolute;
    top: 100%;
    left: 50%;
    z-index: 99999;
    display: block;
    width: 0;
    height: 0;
    border: solid transparent;
    border-width: 20px;
    content: "";
}

.mgsub:hover:after {
    margin: -1px 0 0 -20px;
    border-top-color: #f1f7f1;
}

.mgsub:hover:before {
    margin-left: -20px;
    border-top-color: #eaeaea;
}

.mgsub.header-nav__list-item--active:hover:after {
    border-top-color:#9dd1a6;
}

/*メガメニュー開閉処理*/
.mgsub > div[class^='mod-header-megamenu-']{
    height:auto;
    /*display:none;*/
    max-height: 0;
    overflow-y: hidden;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}

.mgsub:hover > div[class^='mod-header-megamenu-']{
    height:auto;
    max-height:370px;
    display:block;
    -webkit-transition: all 0.3s ease-out 0.2s;
    -moz-transition: all 0.3s ease-out 0.2s;
    -ms-transition: all 0.3s ease-out 0.2s;
    -o-transition: all 0.3s ease-out 0.2s;
    transition: all 0.3s ease-out 0.2s;
}




@media screen and (max-width: 738px) {

    .header-nav {
        top: 0;
        right: -84.375vw;
        left: auto;
        z-index: 10000;
        overflow-y: scroll;
        min-width: auto;
        max-height: 100%;
        width: 84.375vw;
        background-color: #fff;
    }

    .header-nav__section {
        display: flex;
        flex-direction: column;

        justify-content: flex-start;
    }

    .header-nav__header {
        box-sizing: border-box;
        padding: 2.98438vw 0 2.98438vw 4.6875vw;
        width: 100%;
        background-color: #009844;
    }

    .header-nav__heading {
        color: #fff;
        font-size: 1rem;
    }

   .header-nav__heading > a{
        display:block;
        overflow:hidden;
    }

    .header-nav__list {
        display: block;
    }

    .header-nav__list-item--megamenu-active:after, .header-nav__list-item--megamenu-active:before {
        display: none;
    }

    .header-nav__list-heading {
        position: relative;
        display: block;
        padding: 2.96875vw 4.6875vw;
        border-bottom: 2px solid #009844;
        background-color: #fff;
        color: #009844;
        font-size: 1rem;
    }

    .header-nav__list-heading--link {
        padding: 2.96875vw 4.6875vw;
        font-size: 1rem;
        transition: opacity 300ms;
    }

    .header-nav__list-heading--link:hover {
        opacity: 0.7;
    }

    .header-nav__list-heading--link:hover {
        color: #009844;
    }

    .header-nav__list-heading--link:before, .header-nav__list-heading--link:after {
        display: none;
    }

    .header-nav__list--lower .header-nav__list-heading {
        font-size: 1rem;
    }

    .header-nav__list--lower .header-nav__list-heading--link {
        padding: 2.96875vw 4.6875vw;
        color: #009844;
    }

    .header-nav__list--lower .header-nav__list-heading--link:hover {
        color: #009844;
    }

    .header-nav__sublist {
        display: none;
        border-bottom: 2px solid #009844;
    }

    .header-nav__sublist-item:nth-child(2n+1) {
        background-color: #f1f7f1;
    }

    .header-nav__sublist-item:nth-child(2n) {
        background-color: #f1f7f1;
    }

    .header-nav__sublist-link {
        padding: 2.96875vw 2.34375vw 2.96875vw 4.6875vw;
        color: #333;
        letter-spacing: -0.02em;
        font-size: 0.92857rem;
        transition: opacity 300ms;
    }

    .header-nav__sublist-link:hover {
        opacity: 0.7;
    }

    .header-nav__sublist--new {
        display: inline-block;
        margin-left: 0.4em;
        color: #f00;
    }

    .mgsub:after,
    .mgsub:before{
        display:none;
    }
}



/* ---------------------------------------------
*   mod-header-megamenu
--------------------------------------------- */
.mod-header-megamenu-about,
.mod-header-megamenu-feature,
.mod-header-megamenu-campus,
.mod-header-megamenu-career,
.mod-header-megamenu-employ {
    position: fixed;
    right: 0;
    left: 0;
    z-index: 9900;
    /*display: none;
    padding-top: 50px;
    padding-bottom: 60px;*/
    min-width: 1100px;
    width: 100%;
    background-color: rgba(0, 152, 68, 0.97);
}


.mod-header-megamenu-about__inner,
.mod-header-megamenu-feature__inner,
.mod-header-megamenu-campus__inner,
.mod-header-megamenu-career__inner,
.mod-header-megamenu-employ__inner{
    display:block;
    overflow:hidden;
    width: 1040px;
    margin: 50px auto 60px;
    background-repeat:repeat-y;
    background-position:0 0;
    background-image:url('../../img/common/mlist_bg_01.png');
}

ul.mlist{
    display:block;
    overflow:hidden;
    width:100%;
}

ul.mlist *{
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

ul.mlist > li{
    display:block;
    overflow:hidden;
    width:33%;
    margin:0;
    padding:0;
    float:left;
}

ul.mlist > li > a{
    display:block;
    overflow:hidden;
    margin:10px 30px;
    color:#ffffff;
    /*border-right:1px solid #ffffff;
    background: url('../../img/common/arrow_right.png') no-repeat 0 0;*/
}

ul.mlist > li > a:hover{
    /*color:#ffff00;*/
    text-decoration:underline;
}

ul.mlist > li > a:before{
    display:block;
    overflow:hidden;
    content:"";
    width:10px;
    height:1.5em;
    background-repeat: no-repeat;
    background: url('../../img/common/arrow_right.png') no-repeat 0 50%;
    float:left;
}

ul.mlist > li > a > span{
    display:block;
    padding-left:20px;
}

/*大学について
.mod-header-megamenu-about__inner{
    background-image:url('../../img/common/mlist_bg_02.png');
}

.mod-header-megamenu-about__inner > ul.mlist > li{
    width:25%;
}
*/

/* ---------------------------------------------
*   mod-images-double （イメージ横２段）
--------------------------------------------- */

.mod-images-double {
    display: flex;
    flex-wrap: wrap;
}

.mod-images-double__content {
    width: 265px;
}

.mod-images-double__content:first-child {
    margin-right: 40px;
}

.mod-images-double__image {
    box-sizing: border-box;
    margin-bottom: 10px;
}

.mod-images-double img {
    width: 100%;
}

@media screen and (max-width: 738px) {

    .mod-images-double__content {
        width: 45.68%;
    }

    .mod-images-double__content:first-child {
        margin-right: 8.62%;
    }

    .mod-images-double__caption {
        font-size: 3.75vw;
    }
}




/* ---------------------------------------------
*  Style for Google Custon Serch Box
--------------------------------------------- */
form.gsc-search-box {
    margin-bottom: 0!important;
}
table.gsc-search-box {
    margin-bottom: 0!important;
}
table.gsc-search-box td {
    vertical-align: top!important;
}

.gsc-search-box .gsc-input-box,
.gsc-search-box .gsc-input-box-hover,
.gsc-search-box .gsc-input-box-focus {
    border: none !important;
    -webkit-box-shadow: none !important;
    -moz-box-shadow: none !important;
    box-shadow: none !important;
}

.gsc-search-box-tools .gsc-search-box .gsc-input {
    padding-right: 0!important;
    margin: 0!important;
    background-image:none!important;
    text-indent: 0!important;
}

.gsib_a {
    padding:0!important;
}

.gsc-input-box {
    /*border-radius: 5px!important;
    border: 1px solid #D9D9D9;*/
    height: 35px!important;
}

input.gsc-input{
    display: block!important;
    overflow: hidden!important;
    box-sizing: border-box!important;
    padding: 0 48px 0 16px!important;
    width: 100%!important;
    height: 35px!important;
    border: none!important;
    border-radius: 5px 0 0 5px!important;
    background-color: #efefef!important;
    font-size: 0.875rem!important;
    line-height: 30px!important;
}

.cse .gsc-search-button input.gsc-search-button-v2,
input.gsc-search-button-v2 {
    width: 13px!important;
    min-width: 13px!important;
    height: 13px!important;
    padding: 11px 14px!important;
    margin-top: 0!important;
}

.cse input.gsc-search-button,
input.gsc-search-button {
    font-family: inherit;
    font-size: 11px;
    font-weight: bold;
    color: #fff;
    padding: 0 8px;
    height: 13px!important;
    min-width: 13px!important;
    border: none!important;
    border-radius: 0 5px 5px 0!important;
    -moz-border-radius: 0 5px 5px 0!important;
    -webkit-border-radius: 0 5px 5px 0!important;
    border-color: #3079ed;
    background-color: #6e6e6e!important;
    background-image: none!important;
    background-image: none!important;
    background-image: none!important;
    background-image: none!important;
    background-image: none!important;
    background-image: none!important;
    filter: unset;
}

.gsst_b {
    padding: 0!important;
    width:0!important;
}

td.gsc-search-button {
    width: 41px!important;
}

input.gsc-search-button {
    margin-left:0!important;
}

#gs_st50 > a{
    display:none;
}