/*
Theme Name: CIS 2016 Theme
Theme URI: http://cis.hosei.ac.jp
Description: CIS 2016 Theme
Author: Hosei University
Author URI: http://cis.hosei.ac.jp
Version: 1.0.5
License: Apache License 2.0
License http://www.apache.org/licenses/LICENSE-2.0
Template: habakiri
*/

/*
Theme Color:
- cis: #00919c
- cisgs: #383735
- ddp: #e60012

@media (min-width: 0px) and (max-width : 767px) {
@media screen and (min-width: 767px) {
@media only screen and (max-width: 767px) {
@media only screen and (min-width: 992px) {
@media only screen and (min-width: 992px) {
@media only screen and (min-width: 992px) and (max-width: 1199px) {
@media screen and (min-width: 0px) and (max-width : 767px) {
@media screen and (min-width: 0px) and (max-width : 991px) {
@media (min-width: 768px) {
@media screen and (min-width: 768px) and (max-width : 991px) {
@media screen and (min-width : 992px) {
*/

@font-face {
    font-family: "MyYuGothicM";
    font-weight: normal;
    src: local("YuGothic-Medium"), /* Postscript name */
        local("Yu Gothic Medium"), /* for Chrome */
        local("YuGothic-Regular"); /* Medium がない場合 */
}
@font-face {
    font-family: "MyYuGothicM";
    font-weight: bold;
    src: local("YuGothic-Bold"),   /* Postscript name */
        local("Yu Gothic");        /* for Chrome */
}

body {
    font-family:
        MyYuGothicM, /* Windows 游ゴシック */
        YuGothic, /* OS X 游ゴシック */
        -apple-system, /* iOS San Francisco */
        BlinkMacSystemFont, /* iOS Chrome San Francisco */
        "Hiragino Kaku Gothic ProN", /* OS X, iOS ヒラギノ */
        Meiryo, /* Windows メイリオ */
        sans-serif;
    line-height: 1.8;
    font-weight: 500;
}

p, ul, ol, dl, table {
    margin-bottom: 20px;
}

dd, dt {
    font-size: 110%;
    line-height: 2;
}

hr {
    color: #00919c;
    height: 1px;
    background-color: #00919c;
    border: none;
}

blockquote {
    margin-bottom: 5px;
    padding-top: 5px;
    padding-bottom: 5px;
}

input {
    font-family: "FontAwesome";
}

img {
	transition: 0.6s;
}

table {
    margin-bottom: 23px;
    max-width: 100%;
    width: 100%;
}
table, table > tbody > tr > td, table > tbody > tr > th, table > tfoot > tr > td, table > tfoot > tr > th, table > thead > tr > td, table > thead > tr > th {
    border: 1px solid #ddd;
}

figcaption {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
}

#main a:hover img {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
}

.section {
    padding-top: 30px;
    padding-bottom: 15px;
}
.section:first-of-type {
    padding-top: 0;
}
    .section-title {
        margin-bottom: 20px;
    }
@media screen and (min-width: 0px) and (max-width : 767px) {
    .section {
        padding-top: 10px;
        padding-bottom: 10px;
    }
}

.l_contents h1, .l_contents h2 {
    font-weight: bold;
}
@media screen and (min-width: 0px) and (max-width : 480px) {
    h1, h2 {
        font-size: 1.3em;
        font-weight: bold;
    }
    h3, h4 {
        font-size: 1.2em;
        font-weight: bold;
        margin-top: 5px;
    }
    .l_contents .container, .l_contents .container-fluid {
        padding-left: 0;
        padding-right: 0;
    }
    #main .container, #main .container-fluid {
        padding-left: 5px;
        padding-right: 5px;
    }
    .row > [class*="col-"] {
        padding-left: 5px;
        padding-right: 5px;
    }
    .section-title {
        margin-bottom: 15px;
    }
}
@media screen and (min-width: 481px) and (max-width : 767px) {
    h1, h2 {
        font-size: 1.3em;
        font-weight: bold;
    }
    h3, h4 {
        font-size: 1.2em;
        font-weight: bold;
        margin-top: 5px;
    }
    .l_contents .container, .l_contents .container-fluid {
        padding-left: 0;
        padding-right: 0;
    }
    #main .container, #main .container-fluid {
        padding-left: 5px;
        padding-right: 5px;
    }
    .row > [class*="col-"] {
        padding-left: 5px;
        padding-right: 5px;
    }
}

@media screen and (min-width: 768px) and (max-width : 991px) {
    h1, h2 {
        font-size: 1.6em;
    }
    h3, h4 {
        font-size: 1.4em;
    }
}
@media screen and (min-width: 1200px) and (max-width: 1601px) {
    .container {
        width: 970px;
    }
}

/**
 * ヘッダー
 */

.l_header {
    height: 111px;
}
@media screen and (max-width: 767px) {
    .l_header {
        height: 67px;
    }
}
/* メニューバー固定 */
.l_navbar_cis {
    left: 0;
    padding: 3px 0 0 0;
    position: fixed;
    right: 0;
    top: 0;
    transition: all 0.25s ease-out 0s;
    border-radius: 0;
    margin-bottom: 0;
}
    .l_navbar_cis > .container {
        padding: 0;
    }
    .l_navbar_cis .list-inline {
        margin-bottom: 0;
    }

    .l_navbar_cis .navbar-toggle {
        margin-top: 13px;
        margin-right: 5px;
        border-color: #00919c;
    }
        .l_gs .l_navbar_cis .navbar-toggle {
            border-color: #383735;
        }
        .l_ddp .l_navbar_cis .navbar-toggle {
            border-color: #e60012;
        }
    .l_navbar_cis .navbar-toggle .icon-bar {
        background-color: #00919c;
    }
        .l_gs .l_navbar_cis .navbar-toggle .icon-bar {
            background-color: #383735;
        }
        .l_ddp .l_navbar_cis .navbar-toggle .icon-bar {
            background-color: #e60012;
        }

/* スクロール */
.header-scroll .l_navbar_cis {
    padding: 0;
    background: rgba(255, 255, 255, 0.9) none repeat scroll 0 0;
    box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, 0.1);
    transition: all 0.25s ease-out 0s;
}
/* PC */
@media screen and (min-width: 767px) {
    .header-scroll .l_global_nav_upper {
        display: none;
    }
}

.l_logo_hosei, .l_logo_cis {
    padding-left: 0;
}
/* PC */
@media only screen and (min-width: 992px) {
    .header-scroll .l_logo_cis img {
        height: 60px;
    }
}

/* メニューデザイン確認用 */
/*
.dropdown-menu {
    display: block;
}
*/
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .l_navbar_cis {
        border: none;
    }
    .l_navbar_cis .navbar-collapse {
        margin-right: 0;
        margin-left: 0;
        padding: 0;
        background-color: #fff;
        border-bottom: solid #00919c 5px;
    }
        .l_gs .l_navbar_cis .navbar-collapse {
            border-bottom: solid #383735 5px;
        }
        .l_ddp .l_navbar_cis .navbar-collapse {
            border-bottom: solid #e60012 5px;
        }
    .l_navbar_cis .navbar-nav {
        margin: 0 -5px;
    }
    .l_navbar_cis .navbar-header {
        margin: 0;
    }
    .l_navbar_cis .navbar-nav li {
        border-bottom: solid #e0ded9 1px;
    }
    .l_navbar_cis .navbar-nav .dropdown-menu {
        padding-top: 0;
        padding-bottom: 0;
        border-top: solid #00919c 1px;
    }
        .l_navbar_cis .navbar-nav .dropdown-menu ul {
            padding-bottom: 0;
        }
        .l_navbar_cis .navbar-nav .dropdown-menu li a {
            padding-top: 10px;
            padding-bottom: 10px;
        }
        .l_navbar_cis .navbar-nav .dropdown-menu .active a {
            background-color: #00919c;
        }
}
/* PC */
@media screen and (min-width: 768px) {
    .l_navbar_cis .navbar-nav ul {
        padding: 0;
        border: none;
        border-radius: 0;
    }
    .l_navbar_cis .navbar-nav > li ul {
        transition: visibility 0.1s ease-in 0s, opacity 0.1s ease-in 0s;
    }
    .l_navbar_cis .navbar-nav .dropdown-menu a {
        font-size: 12px;
    }
    .l_navbar_cis .navbar-nav a {
        color: #000000;
    }
    .l_navbar_cis .navbar-nav .dropdown a {
        color: #000000;

    }
        .l_navbar_cis .navbar-nav .dropdown-menu {
            margin-top: 0;
            width: 220px;
        }
            .l_navbar_cis .navbar-nav .dropdown .active a {
                color: #ffffff;
                background-color: #7fc8ce;
            }
                .l_gs .l_navbar_cis .navbar-nav .dropdown .active a {
                    color: #ffffff;
                    background-color: #7d7b7b;
                }
                .l_ddp .l_navbar_cis .navbar-nav .dropdown .active a {
                    color: #ffffff;
                    background-color: #e60012;
                }
        .l_navbar_cis .navbar-nav a:hover,
        .l_navbar_cis .navbar-nav .dropdown a:hover {
            color: #ffffff;
            background-color: #00919c;
        }
            .l_gs .l_navbar_cis .navbar-nav a:hover,
            .l_gs .l_navbar_cis .navbar-nav .dropdown a:hover {
                background-color: #383735;
            }
            .l_ddp .l_navbar_cis .navbar-nav a:hover,
            .l_ddp .l_navbar_cis .navbar-nav .dropdown a:hover {
                background-color: #e60012;
            }
    /* 一番上のみに適用するため、後述の dropdown-menu で上書き */
    .l_navbar_cis .navbar-nav .menu-item > a {
        padding: 24px 15px 25px 15px;
    }
        .header-scroll .l_navbar_cis .navbar-nav .menu-item > a {
            padding: 20px 15px 20px 15px;
        }
    .l_navbar_cis .navbar-nav .dropdown-menu {
        background: rgba(255, 255, 255, 0.95) none repeat scroll 0 0;
    }
    .l_navbar_cis .navbar-nav .dropdown-menu li a {
        padding: 10px;
    }
        .header-scroll .l_navbar_cis .navbar-nav .dropdown-menu li a {
            padding: 10px;
        }
}
/* スマートフォン: sm */
@media screen and (min-width: 992px) and (max-width : 1600px) {
    .l_global_nav_lower_links {
        padding: 0;
    }
}
/* スマートフォン: sm */
@media screen and (min-width: 768px) and (max-width : 991px) {
    .l_global_nav_lower_links a {
        font-size: 90%;
    }
    .l_navbar_cis .navbar-nav .menu-item > a {
        font-size: 90%;
        padding: 24px 5px 25px 5px;
    }
        .header-scroll .l_navbar_cis .navbar-nav .menu-item > a {
            padding: 24px 5px 25px 5px;
        }
        .l_sub_global_search #link-saga {
            display: none;
        }
}

/* スマートフォン */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .l_logo_cis {
        padding-left: 5px;
    }
    .l_logo_hosei {
        padding: 17px 10px 0 0;
    }
}
/* スマートフォン: sm */
@media screen and (min-width: 768px) and (max-width : 991px) {
    .l_logo_cis {
        padding-right: 0;
    }
}

/* ヘッダー上部 */
.l_global_nav_upper {
    border-bottom: solid #777 2px;
}
    .l_global_nav_upper_list {
        font-size: 80%;
        padding-top: 2px;
    }
        .l_global_nav_upper_list li {
            padding-top: 2px;
        }
        .l_global_nav_upper_search input {
            width: 100%;
            border: 2px solid #777;
            border-radius: 0px;
            margin-bottom: 3px;
        }
        .l_link_lang {
            margin-left: 8px;
        }
/* スマートフォン */
@media screen and (max-width: 767px) {
    .l_header .l_global_nav_upper {
        padding: 10px 0;
        border-top: solid #777 2px;
        border-bottom: solid #777 2px;
    }
        .l_global_nav_upper_list {
            text-align: center;
        }
        .l_global_nav_upper_list li {
            padding: 2px 1px;
        }
    .l_global_nav_upper_search  {
        padding-top: 10px;
    }
    .l_sub_global_search {
        text-align: center;
        padding: 10px 0 15px 0;
    }
}
/* スマートフォン: sm */
@media screen and (min-width: 768px) and (max-width : 991px) {
    .l_global_nav_upper_search {
        width: 35%;
    }
        .l_global_nav_upper_search .pull-left {
            width: 80%;
        }
        .l_global_nav_upper_search .pull-right {
            width: 20%;
        }
}

/* ヘッダー下部 */
.l_global_nav_lower {
}
    .l_sub_global_search {
        padding-top: 12px; 
    }

/**
 * フッター
 */
.l_footer {
    color: #ffffff;
    border-top: solid #00919c 1px;
    background: url(images/footer-bg.jpg);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    /*
    background-attachment: fixed;
    */
    padding: 50px 0 300px 0;
}
    .l_gs .l_footer {
        border-top: solid #383735 1px;
    }
    .l_ddp .l_footer {
        border-top: solid #e60012 1px;
    }
@media screen and (min-width: 0px) and (max-width : 767px) {
    .l_footer_logo {
        text-align: center;
    }
}
    .l_footer #copyright {
        margin-top: 10px;
    }
    .l_footer #contact {
        margin-top: 30px;
    }


/* #footer-nav */
#footer-nav {
}
    #footer-nav a {
        color: #ffffff;
    }
    #footer-nav a:hover {
        color: #00919c;
    }
    #footer-nav ul li {
        margin-right: 30px;
        line-height: 3;
        vertical-align: top;
    }
    #footer-nav .sub-menu {
        list-style: outside none none;
        margin-left: 0;
        padding-left: 0;
    }

/**
 * トップページ
 */
.l_top h1 {
    font-weight: bold;
    text-align: left;
    padding-left: 30px;
    background-image: url(images/h2.png);
    background-repeat: no-repeat;
    border-bottom: solid #00919c 1px;
}
    .l_gs .l_top h1 {
        background-image: url(images/h2-gs.png);
        border-bottom: solid #383735 1px;
    }
    .l_ddp .l_top h1 {
        background-image: url(images/h2-ddp.png);
        border-bottom: solid #e60012 1px;
    }
/* スマートフォン */
@media screen and (min-width: 0) and (max-width : 767px) {
    .l_top h1 {
        padding-bottom: 5px;
    }
}

/* トップスライダー */
/*
@media screen and (min-width: 1200px) and (max-width: 1601px) {
    .l_top_slider .ms-view {
         max-width: 970px;
    }
}
*/
@media screen and (min-width: 366px) and (max-width : 767px) {
    /* 右半分ずれるバグ修正 */
    .l_top_slider .ms-container {
        /* overflow-x: visible !important; */
    }
}
    .l_top_slider a {
        text-decoration: none;
    }
    
    .l_top_slider .l_top_slider_fluid {
        position: absolute;
        width: 100%;
        height: 45%;
        z-index: 1;
        bottom: 0;
        left: 0;
    }

.l_top section {
    text-align: center;
}
    .l_top section a {
        color: #000000;
        text-decoration: none;
    }

.l_top_campuslife {
    padding-top: 0;
}

.l_top_depts .u_item p {
    text-align: center; 
}

.l_top_search  input {
    font-size: 20px;
    height: 50px;
    padding-right: 10px;
    padding-left: 15px;
    border: solid #000000 3px;
}

/**
 * ページ
 */
.l_page h1, .l_page h2 {
    color: #ffffff;
    background-color: #00919c;
    padding: 0.2em 0 0.1em 0.5em;
    margin: 0.8em 0;
}
    .l_gs .l_page h1, .l_gs .l_page h2 {
        background-color: #383735;
    }
    .l_ddp .l_page h1, .l_ddp .l_page h2 {
        background-color: #e60012;
    }
    .l_page h1:first-of-type, .l_page h2:first-of-type {
        margin-top: 0;
    }
.l_ddp .l_page .l_answers ul li {
    list-style: none;
    margin-top: 30px;
    padding: 5px 0 0 60px;
    min-height: 100px;
    background-image: url(images/h3-ddp-answer.png);
    background-repeat: no-repeat;
    border-bottom: solid #e60012 5px;
}

    .l_page > p {
        margin: 0 0.5em;
    }
@media screen and (min-width: 1601px) {
    .l_page p {
        font-size: 110%;
        line-height: 2.5;
    }
    .l_page ul {
        margin: 1em 0;
        line-height: 2.5;
    }
}
    .l_page .breadcrumbs {
        margin-bottom: 5px;
    }

.l_page_header {
}
    .l_page_header h1 {
        /* margin-bottom: 1.5em; */
    }
    .l_page_header img {
        height: auto;
        max-height: 475px;
	    box-shadow: 0 2px 6px rgba(0, 0, 0, .25);
    }
    .l_page_header_contents {
        background-color: #fafafa;
    }
        .l_page_header_contents_1 {
            font-size: 150%;
        }
/* スマートフォン */
@media screen and (min-width: 0) and (max-width : 767px) {
    .l_page_header small {
        font-size: 80%;
    }
    .l_page_header_contents {
        padding: 1px 10px !important;
    }
        .l_contents h1 {
            margin-top: 10px;
            font-size: 150%;
        }
        .l_contents .l_page_header_contents_1 h2 {
            font-size: 120%;
        }
}
/* PC */
@media screen and (min-width: 768px) {
   .l_page_header small {
        color: #ffffff;
    }
    .l_page_header_contents {
        padding: 45px 30px 45px 30px;
    }
        .l_contents .l_page_header_contents_1 h1 {
            padding-top: 100px;
        }
        .l_contents .l_page_header_contents_1 h2 {
            padding-top: 100px;
            font-size: 200%;
        }
        .l_page_header_contents_2 {
            padding-top: 60px;
        }
        .l_page_header_contents_2 h2 {
            font-size: 250%;
        }
}
@media screen and (min-width: 768px) and (max-width : 991px) {
    .l_page_header_contents {
        margin-right: 15px;
        margin-left: 15px;
        padding: 20px 15px;
    }
        .l_page_header_contents_2 {
            padding-top: 45px;
        }
}

/* CS, DM ページ */
.l_depts .l_profile {
    margin-bottom: 30px;
}
/* スマートフォン */
@media screen and (min-width: 0) and (max-width : 767px) {
.l_depts .l_profile {
    margin-bottom: 15px;
}
    .l_depts .l_profile .col-sm-6 {
        padding: 0;
    }
    .l_depts .l_profile h3 {
        font-size: 1.5em;
        margin: 5px 0;
    }
    .l_depts .l_profile h4 {
        text-align: center;
    }
    .l_depts .l_profile ul {
        font-size: 1em;
        line-height: 1.2;
        margin-bottom: 0;
        padding-left: 20px;
    }
}
@media screen and (min-width: 768px) and (max-width : 991px) {
    .l_depts .l_profile .col-sm-6 {
        padding-left: 0;
    }
    .l_depts .l_profile h3 {
        font-size: 1.7em;
        margin: 0 0 5px 0;
    }
    .l_depts .l_profile h4 {
        font-size: 1em;
        margin: 5px 0;
    }
    .l_depts .l_profile ul {
        font-size: 1em;
        line-height: 1.2;
        margin-bottom: 0;
        padding-left: 15px;
    }
}
@media only screen and (min-width: 992px) {
    .l_depts .l_profile .col-sm-6 {
        padding-left: 5px;
    }
    .l_depts .l_profile h3 {
        font-size: 1.7em;
        margin: 10px 0 5px 0;
    }
    .l_depts .l_profile h4 {
        font-size: 1em;
        margin: 5px 0;
    }
    .l_depts .l_profile ul {
        font-size: 1em;
        line-height: 1.5;
        margin-bottom: 0;
        padding-left: 15px;
    }
}

/**
 * レイアウトパーツ
 */

/* ニュース */
.l_top .l_top_news {
    background-image: url("images/news-top-bg.jpg");
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    margin: 15px 0 0 0;
    padding: 15px 0;
}
    .l_top_news_container {
        padding: 30px 20px;
        background-color: #f7f7f7;
    }
    .l_top_news_section {
        margin-bottom: 15px;
    }
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width: 767px) {
.l_top .l_top_news {
    background-image: none;
    margin: 0;
    padding: 0;
}    
    .l_top_news_container {
        padding: 10px 20px;
    }
    .l_top_news_section {
        padding: 0;
        margin-bottom: 0;
    }
}
    .l_top_news h1 {
        margin-bottom: 15px;
    }

.l_news {
    text-align: left;
    margin: 5px 0;
    background-color: #fff;
}
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width: 767px) {
    .l_news {
        font-size: 90%;
        padding-bottom: 5px;
    }
}
    .l_news .l_news_container {
        padding: 0;
    }
        .l_common .l_news_container, .l_cis .l_news_container {
            border-left: solid #00919c 6px !important;
        }
        .l_gs .l_news_container {
            border-left: solid #383735 6px;
        }
        .l_ddp .l_news_container {
            border-left: solid #e60012 6px;
        }
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width: 767px) {
        .l_common .l_news_container, .l_cis .l_news_container {
            border-top: solid #00919c 1px;
            border-right: solid #00919c 1px;
            border-bottom: solid #00919c 1px;
            border-left: solid #00919c 6px;
        }
        .l_gs .l_news_container {
            border-top: solid #383735 1px;
            border-right: solid #383735 1px;
            border-bottom: solid #383735 1px;
            border-left: solid #383735 6px;
        }
        .l_ddp .l_news_container {
            border-top: solid #e60012 1px;
            border-right: solid #e60012 1px;
            border-bottom: solid #e60012 1px;
            border-left: solid #e60012 6px;
        }
        .l_news_time_box_container {
            display: block;
            margin-bottom: 2px;
            border-bottom: solid #00919c 1px;
        }
            .l_gs .l_news_time_box_container {
                border-bottom: solid #383735 1px;
            }
            .l_ddp .l_news_time_box_container {
                border-bottom: solid #e60012 1px;
            }
}
/* 在学生向けアイコン表示 */
.l_internal .l_news_container {
    background-image: url("images/news-internal.png");
    background-position: right;
    background-repeat: no-repeat;
}

    .l_news a {
        display: block;
        padding: 10px 10px;
    }
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width: 767px) {
    .l_news a {
        display: block;
        padding: 3px 10px 5px 10px;
    }
}
        .l_news_time_box {
            margin: 0;
            padding: 2px;
        }
/* PC */
@media screen and (min-width: 768px) {
        .l_news_time_box {
            float: left;
            display: block;
            text-align: center;
            padding: 5px;
            width: 50px;
            height: 50px;
            line-height: 1.5;
            border: solid #00919c 1px;
        }
            .l_gs .l_news_time_box {
                border: solid #383735 1px;
            }
            .l_ddp .l_news_time_box {
                border: solid #e60012 1px;
            }

            .l_news_category {
                margin: 0 10px 0 5px;
                padding: 15px 0;
            }
}
        .l_news_body {
            text-align: left;
            line-height: 1;
        }
        .l_news_body h1.l_news_title {
            display: inline;
            color: #000;
            font-size: 100%;
            font-weight: normal;
            line-height: 1.5;
            margin: 0;
            padding: 0;
            border: none;
            background: none;
        }

/* 対談 */
.l_campuslife_container img {
    margin-bottom: 10px;
}
    .l_campuslife_person {
        margin-bottom: 15px;
    }
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width: 767px) {
    .l_campuslife_person h4 {
        margin-bottom: 30px;
    }
    .l_campuslife_person .col-xs-12 {
        padding: 0;
    }
}

/* ガイド */
.l_guide .l_guide_list {
    padding-left: 0;
}
    .l_guide .l_guide_list li {
        list-style: none;
        font-size: 120%;
        margin-bottom: 15px;
        padding-left: 6px;
        border-left: solid #00919c 10px;
        border-bottom: solid #00919c 1px;
    }
        .l_gs .l_guide .l_guide_list li {
            border-left: solid #383735 10px;
            border-bottom: solid #383735 1px;
        }
        .l_ddp .l_guide .l_guide_list li {
            border-left: solid #e60012 10px;
            border-bottom: solid #e60012 1px;
        }

/* リストアイテム */
.l_contents .l_list_item {
    margin: 12px 0 0 0;
    padding: 0;
}
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .l_list_item div {
        padding: 15px 0;
    }
}
/* PC */
@media only screen and (min-width: 768px) {
    .l_list_item {
        text-align: left;
        border: solid #00919c 1px;
    }
    .l_list_item:first-of-type {
        margin-top: 0;
    }
}
    .l_list_item:last-of-type {
        margin-bottom: 0;
    }
    .l_list_item div {
        padding-left: 0;
        padding-right: 0;
    }

    .l_list_item .l_list_item_text {
        padding-left: 15px;
        padding-right: 15px;
    }
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .l_list_item .l_list_item_text {
        padding-top: 0;
    }
        .l_list_item h2 {
            margin-top: 0;
        }
}
        .l_list_item .l_list_item_text p {
            line-height: 1.2;
            margin-bottom: 0;
        }
    @media only screen and (min-width: 992px) and (max-width: 1600px) {
        .l_list_item .l_list_item_text h2 {
            font-size: 18px;
        }
        .l_list_item .l_list_item_text p {
            font-size: 12px;
            margin-bottom: 0;
        }
    }
    .l_list_item_single h3 {
        margin: 1.5em 0 0 1.5em;
        font-weight: bold;
    }
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .l_list_item_single h3 {
        text-align: center;
        margin-top: -15px;
    }
}
/* PC */
@media screen and (min-width: 1602px) {
    .l_list_item_single h3 {
        margin-top: 2em;
    }
}
    .l_list_item_single a {
        color: #000000;
    }

/* 角丸 */
/* PC */
@media only screen and (min-width: 992px) {
    .l_list_item_radius, .l_list_item_radius .l_list_item {
        border-radius: 10px;
    }
        .l_list_item_radius img {
            border-top-left-radius: 10px;
            border-bottom-left-radius: 10px;
        }
        .l_contents .l_list_item_radius .hvr-fade {
            border-radius: 10px;
        }
}

/**
 * l_list_group_links レイアウト
 * Bootstrap list-group 拡張
 */
.l_list_group_links li {
    background-image: url(images/triangle-bottom-15px.png);
    background-repeat: no-repeat;
    background-position: center bottom 10px;
    width: 13%;
}
    .l_list_group_links li.c_syllabus {
        background-image: url(images/icon-syllabus.png);
        background-position: center top;
    }
    .l_list_group_links li.c_reaserch_db {
        background-image: url(images/icon-research-db.png);
        background-position: center top;
    }
.l_list_group_links .list-group-item {
    padding: 0;
    border-bottom: solid #00919c 7px;
    border-radius: 0;
}
    .l_list_group_links a {
        display: block;
        color: #000;
        width: 100%;
        min-height: 121px;
        padding: 10px 0 30px 0;
        text-decoration: none;
        font-weight: bold;
        line-height: 1.3;
    }
        .l_list_group_links .l_list_group_links_no_label a {
            padding-top: 25px;
        }
/* IE10 or later */
@media all and (-ms-high-contrast:none) {
        .l_list_group_links .l_list_group_links_no_label {
            margin-bottom: -1px;
        }
}
    .l_list_group_links label {
        display: block;
        font-size: 160%;
    }

/* スマートフォン */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .l_list_group_links li {
        background-position: center bottom 5px;
        font-size: 75%;
        width: 30%;
    }
    .l_list_group_links a {
        min-height: 84px;
        padding: 5px 0 25px 0;
    }
        .l_list_group_links .l_list_group_links_no_label a {
            padding-top: 20px;
        }
}
/* PC */
@media only screen and (min-width: 768px) and (max-width : 991px) {
    .l_list_group_links li {
        font-size: 80%;
    }
    .l_list_group_links a {
        min-height: 98px;
    }
        .l_list_group_links .l_list_group_links_no_label a {
            padding-top: 23px;
        }
}
@media only screen and (min-width: 992px) and (max-width : 1600px) {
    .l_list_group_links li {
        font-size: 90%;
    }
    .l_list_group_links a {
        min-height: 105px;
    }
        .l_list_group_links .l_list_group_links_no_label a {
            padding-top: 23px;
        }
}

/**
 * l_media レイアウト
 * Bootstrap media 拡張
 */
    .l_media a {
        color: #000000;
        text-decoration: none;
    }
    .l_media p {
        line-height: 1.8em;
    }
    .l_media li {
        line-height: 1.4em;
    }
    .l_media .media-body {
        padding: 20px;
    }
        .l_media .media-body .media-heading {
            font-weight: bold;
        } 
        .l_media .media-body p, .l_media .media-body ul {
            margin-bottom: 0;
        }

.l_media_radius .media-left {
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}
    .l_media_radius .media-body {
        border-radius: 10px;
    }

.l_media_v_margin a {
    margin: 10px 0;
}

/**
 * 2x2 レイアウト
 */
.l_row_2 {
}
    .l_row_2 a {
        color: #000;
        padding: 15px 0;
    }
        .l_row_2 a.l_row_circle_180 {
            padding: 0;
        }
    .l_row_2_figure {
        margin-bottom: 15px;
    }
    .l_row_2_caption {
        margin-bottom: 15px;
    }
        .l_row_2_caption li {
            line-height: 1.3;
        }
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .l_row_2_caption {
        text-align: center;
        margin-bottom: 10px;
    }
    .l_row_2_caption p {
        text-align: left;
    }
}
    .l_row_2 h3 {
        font-weight: bold;
        margin: 5px 0;
    }
    .l_row_2 h4 {
        margin: 3px 0;
    }

/**
 * 2x2 2x2 レイアウト
 */
.l_row_4 {
}
    .l_row_4_figure {
        margin-bottom: 15px;
    }
    .l_row_4_caption {
        margin-bottom: 15px;
    }
        .l_row_4_caption li {
            line-height: 1.3;
        }
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .l_row_4_caption {
        text-align: center;
        margin-bottom: 10px;
    }
}
    .l_row_4 h3 {
        font-weight: bold;
        margin: 5px 0;
    }
    .l_row_4 h4 {
        margin: 3px 0;
    }

/* PC */
@media screen and (min-width: 768px) {
    .l_row_circle_180 {
        border-top-left-radius: 43%;
        border-bottom-left-radius: 43%;
        border-left: none;
        margin-bottom: 15px;
    }
        .l_row_circle_180, .l_row_circle_180 .hvr-fade {
            border-top-left-radius: 80px;
            border-bottom-left-radius: 80px;
        }
        .l_row_circle_180 {
            margin-left: 45px;
            padding: 0;
        }        
        .l_row_circle_180 img {
            margin-left: -15px;
        }
}

/**
 * プロフィール
 * 教員紹介個別ページ 
 */
    .l_profile h3 {
        font-weight: bold;
    }
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .l_profile h3 {
        text-align: center;
        font-weight: bold;
    }
}
    .l_profile_research {
        padding: 1em 0;
        border-top: solid #7fc8ce 2px;
        border-bottom: solid #7fc8ce 2px;
    }
        .l_ddp .l_profile_research {
            padding: 1em 0 0 0;
            border-top: solid #e60012 2px;
            border-bottom: none;
        }

/* OB・OG インタビュー */
    .l_contents .l_interviews_header {
        color: #ffffff;
        background-color: #00919c;
        margin: 30px 0;
    }
        .l_interviews_h1 {
            border-bottom: solid #ffffff 2px;
        }
        .l_interviews_header h2 {
            margin: 0;
            padding-left: 0;
        }
        .l_interviews_header h3 {
            font-weight: bold;
            font-size: 180%;
        }
        .l_interviews_header p {
            margin: 0;
            padding: 10px 0;
            line-height: 1.2em;
        }
        .l_interviews_header small {
            color: #ffffff;
        }
/* PC */
@media screen and (min-width : 768px) {
    .l_interviews_header p {
        font-size: 130%;
    }
    .l_interviews .text-right {
        padding-right: 45px;
    }
}
    .l_interviews_contents h3:first-of-type {
        margin-top: 0;
    }

.l_tile {
    margin: 0 auto;
}
    .l_tile .l_tile_box { 
        text-align: left;
        width: 49%;
        margin: 10px 0;
        padding: 5px 5px 5px 15px;
        background-color: #fafafa;
    }
    .l_tile h3 {
        margin: 10px 0;
    }
    .l_tile ul {
        margin: 0;
        padding-left: 15px;
        line-height: 1.5;
    }
    .l_tile li {
        list-style: none;
        font-size: 90%;
    }
/* スマートフォン + PC */
@media screen and (min-width: 0px) and (max-width : 991px) {
.l_tile {
    width: 100%;
    text-align: center;
    margin-left: -10px;
}
    .l_tile .l_tile_box {
        width: 100%;
        margin: 10px 0;
        background-color: #fafafa;
    }
}

/* アクセス */
.l_campus_map ul {
    font-size: 1em;
    line-height: 1.4;
    list-style: none;
    padding-left: 0;
}

#access-map {
    width: 100%;
}
    #main #access-map img {
        opacity: 1.0;
    } 

/* ページリンク */
.l_previous_next_page_link {
    margin-top: 15px;
}

/**
 * コンポーネント
 */
.c_points .badge {
    background-color: #00919c;
}

/* h2 counter */
.c_h2_counter {
	counter-reset: h2Counter;
}
    .c_h2_counter h2 {
        counter-increment: h2Counter;
        position: relative;
        padding: 0.3em 0 0.1em 2.5em;
        border-bottom: 1px solid #ccc;
    }
    .c_h2_counter h2::before {
        position: absolute;
        /* bottom: 0; */
        left: 0.2em;
        content: counter(h2Counter);
        color: #ffffff;
        font-size: 2.5em;
        font-weight: bold;
        line-height: 0.5em;
        text-align: center;
    }
/* IE10 or later */
@media all and (-ms-high-contrast:none) {
    .c_h2_counter h2 {
        padding-bottom: 0;
    }
    .c_h2_counter h2::before {
        bottom: 0.1;
        margin-top: 10px;
    }
}

/* h3 counter */
.c_h3_counter {
	counter-reset: h3Counter;
}
    .c_h3_counter h3 {
        counter-increment: h3Counter;
        position: relative;
        padding: 0.3em 0 0.1em 2.5em;
    }
    .c_h3_counter h3::before {
        position: absolute;
        /* bottom: 0; */
        left: 0.2em;
        content: counter(h3Counter);
        font-size: 2.5em;
        font-weight: bold;
        line-height: 0.5em;
        text-align: center;
    }
/* IE10 or later */
@media all and (-ms-high-contrast:none) {
    .c_h3_counter h3 {
        padding-bottom: 0;
    }
    .c_h3_counter h3::before {
        bottom: 0.1;
        margin-top: 10px;
    }
}


.c_map img {
    padding-bottom: 15px;
}
/* PC */
@media screen and (min-width: 768px) {
    .c_map_title {
        min-height: 100px;
    }
    .c_map_description {
        min-height: 110px;
    }
    .c_map_image {
        min-height: 180px;
    }
}

.c_map_id {
    color: #00919c;
    font-size: 180%;
    font-weight: bold;
}
    .c_map_id_name {
        font-size: 180%;
        font-weight: bold;
        margin-left: 5px;
        line-height: 1;
    }

/**
 * ユーティリティ
 */

.u_image_cover {
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
}

/**
 * 画像の上に半透明で文字を表示
 */
.u_item {
    position: relative;
    margin-bottom: 15px;
}
/* PC */
@media screen and (min-width: 768px) {
    .u_item figcaption {
        text-align: center;
        position: absolute;
        z-index: 1;
        bottom: 0;
        left: 0;
        right: 0;
        color: #fff;
        background: rgba(0, 0, 0, 0.5) none repeat scroll 0 0;
        text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
    }
}
        .u_item figcaption p {
            margin-bottom: 10px;
        }
    .u_item h2 {
        text-align: left;
        margin: 10px 0 0 0;
        padding: 0 10px;
    }
    .u_item p {
        text-align: left;
        margin-bottom: 15px;
        padding: 0 10px;
    }

.u_dl_horizontal_80 dt {
    width: 80px;
}
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .u_dl_horizontal_80 dt {
        border-left: solid #00919c 3px;
        margin: 10px 0;
        padding-left: 10px;
    }
}
/* PC */
@media screen and (min-width: 768px) {
    .u_dl_horizontal_80 dd {
        margin-left: 120px;
    }
}

/**
 * オーバーレイ
 */
.u_overray_base {
    position: relative;
}
.u_overray {
    color: #ffffff;
    background: rgba(0, 0, 0, 0.5) none repeat scroll 0 0;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
    .u_overray_left {
        position: absolute;
        z-index: 1;
        top: 0;
        left: 3%;
        height: 100%;
    }
    .u_overray_right {
        position: absolute;
        z-index: 1;
        top: 0;
        right: 3%;
        height: 100%;
    }
    .u_overray_bottom {
        position: absolute;
        z-index: 1;
        bottom: 0;
        width: 100%;
    }
@media screen and (min-width: 767px) {
    .u_overray_base_sm {
        position: relative;
    }
    .u_overray_sm {
        color: #ffffff;
        background: rgba(0, 0, 0, 0.5) none repeat scroll 0 0;
        text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
    }
        .u_overray_left_sm {
            position: absolute;
            z-index: 1;
            top: 0;
            left: 3%;
            height: 100%;
        }
        .u_overray_right_sm {
            position: absolute;
            z-index: 1;
            top: 0;
            right: 3%;
            height: 100%;
        }
}

/**
 * margin: h: 水平, v: 垂直
 */
/* xs */
@media only screen and (max-width: 767px) {
    .u_xs_h_margin_30 {
        margin-top: 30px;
        margin-bottom: 30px;
    }
}

/* sm */
@media only screen and (max-width: 768px) and (max-width: 991px) {
    .u_sm_v_margin_15 {
        margin: 15px 0;
    }
    .u_sm_v_margin_30 {
        margin: 30px 0;
    }
}

.u_row_v_margin_0 {
    margin-top: 0;
    margin-bottom: 0;
}

.u_v_margin_30, .u_row_v_margin_30 .row {
    margin-top: 30px;
    margin-bottom: 30px;
}
    .u_row_v_margin_30 .row:first-of-type {
        margin-top: 0;
        margin-bottom: 30px;
    }
    .u_row_v_margin_30 > [class*="col-"] {
        margin-top: 30px;
        margin-bottom: 30px;
    }

/**
 * padding: 
 */
.u_row_nopadding {
    margin-left: 0;
    margin-right: 0;
}
    .u_row_nopadding > [class*="col-"] {
        padding-left: 0;
        padding-right: 0;
    }
@media screen and (min-width: 1200px) and (max-width: 1601px) {
.u_row_nopadding {
    margin-left: 0;
    margin-right: 0;
}
    .u_row_nopadding > [class*="col-"] {
        padding-left: 1px;
        padding-right: 1px;
    }
}

.u_row_v_padding_0 {
    padding-left: 0;
    padding-right: 0;
}

.u_h_padding_15 {
    padding-left: 15px;
    padding-right: 15px;
}

.u_v_padding_30, .u_row_v_padding_30 .row {
    padding-top: 30px;
    padding-bottom: 30px;
}
    .u_v_padding_30 > [class*="col-"] {
        padding-bottom: 30px;
    }

.u_row_v_middle {
    font-size: 0;
}
    .u_row_v_middle > [class*="col-"] {
        float: none;
        display: inline-block;
        vertical-align: middle;
        font-size: 14px;
    }


/*
.u_li_graduation_cap  li:before {
    font-family: FontAwesome;
    content: '\f19d\a';
}
*/

/* ボーダー */
.u_border_theme {
    border: solid #00919c 1px;
}
.u_border_theme_left_area {
    border-top: solid #00919c 1px;
    border-right: none;
    border-bottom: solid #00919c 1px;
    border-left: solid #00919c 1px;
}
.u_border_theme_right_area {
    border-top: solid #00919c 1px;
    border-right: solid #00919c 1px;
    border-bottom: solid #00919c 1px;
    border-left: none;
}

.u_color_common {
    color: #00919c;
}
.u_color_cis {
    color: #00919c;
}
.u_color_gs {
    color: #383735;
}
.u_color_gs {
    color: #383735;
}
.u_color_ddp {
    color: #cd1717;
}

.u_bc_cis_cf {
    border-color: #2E8F9B !important;
}
.u_bc_cis_is {
    border-color: #B70050 !important;
}
.u_bc_cis_ms {
    border-color: #3F6FB4 !important;
}
.u_bc_gs_master {
    border-color: #80071a !important;
}
.u_bc_gs_doctor {
    border-color: #383735 !important;
}
.u_bc_ddp {
    border-color: #cd1717 !important;
}

.u_bg_gs_master {
    background-color: #80071a !important;
}
.u_bg_ddp {
    background-color: #e60012 !important;
}

.u_bg_gray1 {
    background-color: #fafafa;
}
.u_bg_gray2 {
    background-color: #f2f2f2;
}
.u_bg_gray3 {
    color: #ffffff;
    background-color: #7f7f7f;
}

/* FIXME: rename */
.u_color_theme {
    color: #00919c;
}

.u_after_content:after {
    position: absolute;
    right: 0;
    font-size: 2.5em;
    line-height: 0.5em;
}
/* IE10 or later */
@media all and (-ms-high-contrast:none) {
    .u_after_content:after {
        bottom: 0.1;
        margin-top: 10px;
    }
}
.u_after_content_cf {
    background-color: #2E8F9B !important;
}
    .u_after_content_cf:after {
        content: "CF";
    }
.u_after_content_is {
    background-color: #B70050 !important;
}
    .u_after_content_is:after {
        content: "IS";
    }
.u_after_content_ms {
    background-color: #3F6FB4 !important;
}
    .u_after_content_ms:after {
        content: "MS";
    }

/* Bootstrap */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .btn {
        white-space: normal;
    }
}
.btn-theme {
    background-color: none;
    border-radius: 0;
    border-color: #00919c;
}
    .btn-theme.active, .btn-theme.focus, .btn-theme:active, .btn-theme:focus, .btn-theme:hover, .open > .btn-theme.dropdown-toggle {
        background-color: #00919c;
        border-color: #00808a;
        color: #fff;
    }
.l_gs .btn-theme {
    background-color: none;
    border-radius: 0;
    border-color: #383735;
}
    .l_gs .btn-theme.active, .l_gs .btn-theme.focus, .l_gs .btn-theme:active, .l_gs .btn-theme:focus, .l_gs .btn-theme:hover, .l_gs .open > .btn-theme.dropdown-toggle {
        background-color: #383735;
        border-color: #171717;
        color: #fff;
    }
.l_ddp .btn-theme {
    background-color: none;
    border-radius: 0;
    border-color: #e60012;
}
    .l_ddp .btn-theme.active, .l_ddp .btn-theme.focus, .l_ddp .btn-theme:active, .l_ddp .btn-theme:focus, .l_ddp .btn-theme:hover, .l_ddp .open > .btn-theme.dropdown-toggle {
        background-color: #e60012;
        border-color: #86030f;
        color: #fff;
    }

.btn-themeborder {
    background-color: #fff;
    border-color: #00919c;
    color: #000000;
}
    .btn-themeborder.active,
    .btn-themeborder.focus,
    .btn-themeborder:active,
    .btn-themeborder:focus,
    .btn-themeborder:hover,
    .open > .btn-themeborder.dropdown-toggle {
        background-color: #00919c;
        border-color: #00919c;
        color: #fff;
    }
.l_gs .btn-themeborder {
    background-color: #fff;
    border-color: #383735;
    color: #000000;
}
    .l_gs .btn-themeborder.active,
    .l_gs .btn-themeborder.focus,
    .l_gs .btn-themeborder:active,
    .l_gs .btn-themeborder:focus,
    .l_gs .btn-themeborder:hover,
    .open > .btn-themeborder.dropdown-toggle {
        background-color: #383735;
        border-color: #383735;
        color: #fff;
    }
.l_ddp .btn-themeborder {
    background-color: #fff;
    border-color: #e60012;
    color: #000000;
}
    .l_ddp .btn-themeborder.active,
    .l_ddp.btn-themeborder.focus,
    .l_ddp.btn-themeborder:active,
    .l_ddp.btn-themeborder:focus,
    .l_ddp .btn-themeborder:hover,
    .l_ddp .open > .btn-themeborder.dropdown-toggle {
        background-color: #e60012;
        border-color: #e60012;
        color: #fff;
    }

.l_table_theme thead > tr {
    color: #000;
    font-size: 110%;
    background-color: #ededed;
}
    .text-center .l_table_theme_head th {
        text-align: center;
    }
    .l_table_theme .l_table_theme_head td {
        font-size: 110%;
        font-weight: bold;
        text-align: center;
        padding: 8px;
    }
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .l_table_theme > [class*="col-"] {
        padding: 0;
    }
    .l_table_theme th, .l_table_theme td {
        font-size: 70%;
        padding: 0;
    }
    .l_table_theme .l_table_theme_head td {
        font-size: 80%;
    }
}

.l_table_timetable {
    background-color: #dfdfdf;
}
    .l_table_timetable th, .l_table_timetable td {
        font-size: 110%;
        padding: 2px !important;
        border: solid #ffffff 3px !important;
        vertical-align: middle !important;
    }
    .l_table_timetable tbody tr {
        height: 100px;
    }
    .l_table_timetable td.time {
        color: #ffffff;
        white-space: nowrap;
        background-color: #00919c;
    }
    .l_table_timetable label {
        font-size: 130%;
    }
    .l_table_timetable td.active {
        background-color: #cde7eb !important;
    }
/* スマートフォン */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .l_timetable > [class*="col-"] {
        padding: 0;
    }
    .l_table_timetable th, .l_table_timetable td {
        font-size: 70%;
        padding: 0;
    }
    .l_table_timetable tbody tr {
        height: 60px;
    }
}

/**
 * -------------------------------------------------- [Bootstrap navbar animation]
 */

.navbar-toggle .icon-bar { transition: .2s ease; }
.navbar-toggle.collapsed .icon-bar:nth-child(2) { transform: rotate(0)translateY(0)translateX(0); }
.navbar-toggle.collapsed .icon-bar:nth-child(3) { opacity: 1 }
.navbar-toggle.collapsed .icon-bar:nth-child(4) { transform: rotate(0)translateY(0)translateX(0); }
.navbar-toggle .icon-bar:nth-child(2) { transform: rotate(-45deg)translateY(5px)translateX(-5px); }
.navbar-toggle .icon-bar:nth-child(3) { opacity: 0 }
.navbar-toggle .icon-bar:nth-child(4) { transform: rotate(45deg)translateY(-4px)translateX(-3px); }

/**
 * -------------------------------------------------- [multi-level-bootstrap-menu]
 */

/* PC */
@media screen and (min-width: 767px) {
    .open-menu-link {
        display: none;
        visibility: hidden;
    }
    .menu-item-has-children:hover > .dropdown-menu {
        display: block;
    }

    .dropdown-submenu {
        position: relative;
    }

    .dropdown-submenu > .dropdown-menu {
        top: 0;
        left: 100%;
    }

    .dropdown-submenu:hover > .dropdown-menu {
        display: block;
    }

    .dropdown-submenu > a:after {
        display: block;
        content: " ";
        float: right;
        width: 0;
        height: 0;
        border-color: transparent;
        border-style: solid;
        border-width: 5px 5px 5px 5px;
        border-left-color: #555;
        margin-top: 5px;
        margin-right: -10px;
    }

    .dropdown-submenu:hover > a:after {
        border-left-color: #fff;
    }

    .dropdown-submenu.pull-left {
        float: none;
    }

    .dropdown-submenu.pull-left > .dropdown-menu {
        left: -100%;
        margin-left: 10px;
        -webkit-border-radius: 6px 0 6px 6px;
        -moz-border-radius: 6px 0 6px 6px;
        border-radius: 6px 0 6px 6px;
    }
}

/* スマートフォン */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .dropdown-menu {
        float: none;
        position: relative;
        z-index: auto;
    }
    .expand {
        display: block !important; 
    }
    .menu-item-has-children {
        position: relative;
    }
    .caret {
        display: none;
    }
    .open-menu-link {
        display: none;
        position: absolute;
        right: 2px;
        top: 2px;
        font-size: 22px;
        cursor: pointer;
        width: 40px;
        height: 40px;
        text-align: center;
    }
        .menu-open {
            color: #fff;
            padding-top: 2px;
            background-color: #00919c; 
        }
            .l_gs .menu-open {
                background-color: #383735; 
            }
            .l_ddp .menu-open {
                background-color: #e60012; 
            }
        .menu-close {
            color: #00919c;
        }
            .l_gs .menu-close {
                color: #383735;
            }
            .l_ddp .menu-close {
                color: #e60012;
            }
    .visible {
        display: block !important;
    }
}

/**
 * -------------------------------------------------- [JavaScript]
 */

/* inview.js + Animation */
#main img {
    opacity: 0;
    transition: 0.3s;
}
#main .fadeIn {
    opacity: 1.0;
}

/* app.js */
#to-top {
    position: fixed;
    display: none;
    opacity: 0.6;
    width: 50px;
    height: 50px;
    text-align: center;
    color: #ffffff;
    background-color: #00919c;
    border-radius: 3px;
    bottom: 15px;
    right: 15px;
    font-size: 28px;
}
    .l_gs #to-top {
        background-color: #383735;
    }
    .l_ddp #to-top {
        background-color: #e60012;
    }
    #to-top:hover {
        opacity: 1;
        background-color: #00919c;
    }
        .l_gs #to-top:hover {
            background-color: #383735;
        }
        .l_ddp #to-top:hover {
            background-color: #e60012;
        }

/**
 * -------------------------------------------------- [オーバーライド]
*/

.site-branding {
    padding: 0;
}

.l_contents .sub-page-contents {
    padding-top: 10px;
}

.l_contents .breadcrumbs {
    font-size: 1em;
    margin-bottom: 30px;
}
.l_contents .breadcrumbs a {
    color: #00919c;
}

/*
.l_header .responsive-nav .sub-menu a {
    color: #000000;
    background-color: #ffffff;
    background: rgba(255, 255, 255, 0.8) none repeat scroll 0 0;
}
    .l_header .responsive-nav .sub-menu a:hover {
        color: #ffffff;
        background-color: #00919c;
    }
*/

/**
 * Hover.css
 */
.l_contents .hvr-sweep-to-right::before {
    background: rgba(0, 145, 156, 0.5) none repeat scroll 0 0;
}
    .l_gs .l_contents .hvr-sweep-to-right::before {
        background: rgba(40, 5, 22, 0.5) none repeat scroll 0 0;
    }
    .l_ddp .l_contents .hvr-sweep-to-right::before {
        background: rgba(230, 0, 12, 0.5) none repeat scroll 0 0;
     }

.l_contents .hvr-fade:hover,
.l_contents .hvr-fade:focus {
    background: #00919c none repeat scroll 0 0;
}
    .l_gs .l_contents .hvr-fade:hover,
    .l_gs .l_contents .hvr-fade:focus {
        background: #383735 none repeat scroll 0 0;
    }
    .l_ddp .l_contents .hvr-fade:hover,
    .l_ddp .l_contents .hvr-fade:focus {
        background: #e60012 none repeat scroll 0 0;
    }
.l_list_item .hvr-fade {
    width: 100%;
}

.l_contents .hvr-underline-from-left::before {
    background: #00919c none repeat scroll 0 0;
}
.l_gs .l_contents .hvr-underline-from-left::before {
    background: #383735 none repeat scroll 0 0;
}
.l_ddp .l_contents .hvr-underline-from-left::before {
    background: #e60012 none repeat scroll 0 0;
}
    .l_contents .l_common .hvr-underline-from-left::before {
        background: #00919c none repeat scroll 0 0;
    }
    .l_contents .l_cis .hvr-underline-from-left::before {
        background: #00919c none repeat scroll 0 0;
    }
    .l_contents .l_gs .hvr-underline-from-left::before {
        background: #383735 none repeat scroll 0 0;
    }
    .l_contents .l_ddp .hvr-underline-from-left::before {
        background: #e60012 none repeat scroll 0 0;
    }

.l_contents .hvr-icon-back::before {
    content: "\f053";
}
.l_contents .hvr-icon-forward::before {
    content: "\f054";
}

/**
 * WordPress
 */
.wp-caption-text {
    font-size: 1.5em;
    text-align: center;
}

/**
 * Bootstrap
 */
@media screen and (min-width: 0px) and (max-width : 767px) {
    .row {
        margin: 0;
    }
}

.label-sm {
    font-size: 12px;
}
.label-md {
    font-size: 16px;
}
.label-lg {
    font-size: 20px;
}

/*
 * IE10 or later
 * IE + 游ゴシック体 使用時のずれ対策
 * http://qiita.com/hrdaya/items/0f5985794e2a2b451ac0
 */
@media all and (-ms-high-contrast:none) {
    .btn {
        padding-top: 12px;
        padding-bottom: 7px;
    }
    .btn::before {
        margin-top: 0;
        padding-bottom: 2px !important;
    }
}
