@charset "utf-8";
/* ============================================================
	コーポ共通フッタ
	============================================================ */

/**
 * コーポレートと共通のフッタのCSS
 * 
 * 一旦コーポレートページと分離し、研究所で利用している部分のみ記載している
 */

/* TOPへ戻るボタン
	============================================================ */

@media screen and (min-width: 751px) {
    #pageTop,
    #gotop_pc {
        width: 40px;
        height: 40px;
        position: absolute;
        bottom: 45px;
        right: 45px;
    }
}

/**
 * フッタは、PC用とSP用の２つあり、メディアクエリでdisplay属性を切り替えることで、表示を制御している。
 */

/* フッタ枠
	============================================================ */

@media screen and (min-width: 751px) {
    /**
	 * スマホ用フッタを非表示
	 */
    .spfooter {
        display: none !important;
    }
    /* #update2015_footer関連 */
    #update2015_footer {
        position: relative;
        font-size: 12px;
        color: #333;
        background-color: #fff;
        line-height: 1.4;
        vertical-align: middle;
        text-align: left;
        letter-spacing: 0.05em;
    }
    #update2015_footer a,
    #update2015_footer a:focus,
    #update2015_footer a:active,
    #update2015_footer a:hover,
    #update2015_footer a:visited {
        color: #333;
        text-decoration: none;
    }
    #update2015_footer a {
        color: #666 !important;
    }
    #update2015_footer a:hover {
        color: #63b2ed !important;
    }
    #update2015_footer h2 {
        text-align: center;
        margin: 0 0 25px 0;
    }
    #update2015_footer h2.font01 {
        font-family: 'Noto Sans Japanese';
        font-size: 26px;
        font-weight: 100;
    }
    #update2015_footer .fontType01 {
        font-family: 'Noto Sans Japanese';
    }
    #update2015_footer #footer_sec-03 .innerBlock>ul.list01>li>ul.kiyaku {
        text-wrap: nowrap;
    }
    #update2015_footer #footer_sec-03 .innerBlock>ul.list01>li:last-child {
        width: 220px;
    }
}

@media screen and (max-width: 750px) {
    /**
	 * PC用フッタを非表示
	 */
    .pcfooter {
        display: none !important;
    }
    #update2015_footer,
    #update2015_footer_sp {
        width: 100%;
        overflow: hidden;
        font-size: 12px;
    }
    #update2015_footer p,
    #update2015_footer_sp p {
        line-height: 1.4;
    }
    #update2015_footer a,
    #update2015_footer a:focus,
    #update2015_footer a:active,
    #update2015_footer a:hover,
    #update2015_footer a:visited,
    #update2015_footer_sp a,
    #update2015_footer_sp a:focus,
    #update2015_footer_sp a:active,
    #update2015_footer_sp a:hover,
    #update2015_footer_sp a:visited {
        color: #333;
        text-decoration: none;
    }
    /* font settings */
    #update2015_footer,
    #update2015_footer_sp {
        font-family: Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
        font-weight: 300;
    }
    #update2015_footer h2.font01,
    #update2015_footer_sp h2.font01 {
        font-family: Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
        font-size: 25px;
        line-height: 1.5em;
        font-weight: 100;
        text-align: center;
        padding: 60px 0 10px 0;
    }
    #update2015_footer h3,
    #update2015_footer_sp h3 {
        font-family: Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
        font-size: 16px;
        font-weight: 200;
    }
}

/* フッタ　セクション３
	============================================================ */

@media screen and (min-width: 751px) {
    /**
	 * 研究所ではsec-03しか使用しない
	 */
    #footer_sec-03 {
        font-size: 11px;
        background: #f7f7f7;
    }
    /* innerBlock */
    #footer_sec-03 .innerBlock {
        width: 1000px;
        margin: 0 auto;
        padding: 35px 0 0 0;
        overflow: hidden;
        zoom: 1;
    }
    #footer_sec-03 .innerBlock .list01 .ttl01 {
        margin: 15px 0 25px 20px;
        font-weight: bold;
    }
    #footer_sec-03 .innerBlock .list01 .ttl01.ttl01_in {
        margin: 0
    }
    #footer_sec-03 .innerBlock>ul.list01 {
        overflow: hidden;
        zoom: 1;
        margin: 0;
    }
    #footer_sec-03 .innerBlock>ul.list01>li {
        width: 200px;
        height: 490px;
        float: left;
        border-left: 1px solid #cccccc;
    }
    #footer_sec-03 .innerBlock>ul.list01>li:first-child {
        width: 180px;
        border-left: none;
    }
    #footer_sec-03 .innerBlock>ul.list01>li>ul {
        margin: 0 0 0 20px;
    }
    #footer_sec-03 .innerBlock>ul.list01>li>ul>li {
        line-height: 24px;
    }
    #footer_sec-03 .innerBlock .list02 {
        margin: 20px auto 30px;
        text-align: center;
        padding: 20px 0;
        border-top: 1px solid #ccc;
        border-bottom: 1px solid #ccc;
    }
    #footer_sec-03 .innerBlock .list02 ul {
        text-align: center;
        margin: 0 auto;
        overflow: hidden;
        zoom: 1;
    }
    #footer_sec-03 .innerBlock .list02 ul>li {
        display: inline-block;
        *display: inline;
        *zoom: 1;
        margin-left: 25px;
    }
    #footer_sec-03 .innerBlock .list02 ul>li:before {
        content: "● ";
        color: #cccccc;
        font-size: 10px;
    }
    #footer_sec-03 .innerBlock .list02 ul>li:first-child {
        margin-left: 0;
    }
    #footer_sec-03 .innerBlock .copy {
        text-align: center;
    }
}

@media screen and (max-width: 750px) {
    #footer_sec-03,
    #footer_sec-03_sp {
        width: 100%;
        margin: 0 auto;
        overflow: hidden;
        background: #f7f7f7;
    }
    #footer_sec-03 .list02 .list03,
    #footer_sec-03_sp .list02 .list03 {
        width: 93%;
        text-align: center;
        margin: 0 auto;
        overflow: hidden;
        padding: 30px 0 10px 0;
        border-bottom: 1px solid #ccc;
    }
    #footer_sec-03 .list02 .list03>li,
    #footer_sec-03_sp .list02 .list03>li {
        display: inline-block;
        *display: inline;
        *zoom: 1;
        margin-left: 10px;
        font-size: 10px;
    }
    #footer_sec-03 .list02 .list03>li:first-child,
    #footer_sec-03_sp .list02 .list03>li:first-child {
        margin-left: 0;
    }
    #footer_sec-03 .list02 .list03>li:before,
    #footer_sec-03_sp .list02 .list03>li:before {
        content: "● ";
        color: #cccccc;
        font-size: 10px;
    }
    #footer_sec-03 .copy,
    #footer_sec-03_sp .copy {
        font-size: 10px;
        line-height: 14px;
        text-align: center;
        margin: 20px 0 30px;
    }
}

/* フッタメニュー（SPのみ）
	============================================================ */

@media screen and (max-width: 750px) {
    #footerMenuNavi {
        margin: 40px auto 0;
    }
    #footerMenuNavi .list01 {
        margin: 0 20px;
    }
    #footerMenuNavi .list01>li {
        color: #333333;
        border-top: 1px #e6e6e6 solid;
    }
    #footerMenuNavi .list01>li:last-child {
        border-bottom: 1px #e6e6e6 solid;
    }
    #footerMenuNavi .list01>a {
        padding: 20px 0;
    }
    #footerMenuNavi .list02 {
        display: none;
    }
    #footerMenuNavi .active .list02 {
        display: block;
    }
    #footerMenuNavi .list02 li {
        color: #333333;
        border-top: 1px #e6e6e6 solid;
    }
    #footerMenuNavi .list02 li a {
        padding: 20px 0;
        display: block;
    }
    #footerMenuNavi .list02>li>p {
        font-weight: bold;
        padding: 20px 0;
        display: block;
    }
    #footerMenuNavi .list02 li:last-child {
        padding-bottom: 0;
    }
    #footerMenuNavi .open {
        position: relative;
        padding: 20px 0;
        display: block;
    }
    #footerMenuNavi .open:before,
    #footerMenuNavi .open:after {
        content: "";
        position: absolute;
        top: 50%;
        right: 19px;
        width: 11px;
        height: 3px;
        margin: -1px 0 0 0;
        background: #999;
    }
    #footerMenuNavi .open:after {
        -webkit-transform: rotate(90deg);
        -moz-transform: rotate(90deg);
    }
    #footerMenuNavi .close {
        position: relative;
        padding: 20px 0;
    }
    #footerMenuNavi .close:before {
        content: "";
        position: absolute;
        top: 50%;
        right: 19px;
        width: 11px;
        height: 3px;
        margin: -1px 0 0 0;
        background: #999;
    }
    #footerMenuNavi .close::after {
        content: none;
    }
}

.blank_icon {
    width: auto !important;
    height: auto !important;
    vertical-align: middle !important;
}