@charset "UTF-8";


@import url('https://fonts.googleapis.com/css?family=EB+Garamond|Noto+Sans+JP|Roboto');
/*
font-family: 'Noto Sans JP', sans-serif;
font-family: 'Roboto', sans-serif;
font-family: 'EB Garamond', serif;
*/


/* ==========================================================
*
* Basic Setting
*
========================================================== */
html {
    font-size: 62.5%;/* 16px x 0.625 = 10px(=1rem) */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    min-height:100%;
}

body {
    font-size: 1.4rem;
    line-height:125%;
    font-family: 'Noto Sans JP', sans-serif;
    /*font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;*/
   /* font-family:"Noto Sans", sans-serif; */
}

*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

a{
    text-decoration:none;
    color: #0000ff;
}

* a:hover{
    text-decoration:underline;
    color: #00bfff;
}

a:hover > img{
    opacity:0.75;
}

body.open{
    /**/
}

.pgFrame{
    display:block;
    overflow:hidden;
    width:100%;
    /*min-width:980px;*/
    max-width:1024px;
    margin:0 auto;
    position:relative;
}

/* for Sp --------------------*/
@media screen and (max-width: 679px) {
    .pgFrame{
        min-width:100%;
        max-width:100%;
    }
   

}

/* ==========================================================
*
* アイコンフォント
*
========================================================== */
@font-face {
  font-family: 'jbond_ift';
  src:
    url('./fonts/jbond_ift.ttf?oyotbk') format('truetype'),
    url('./fonts/jbond_ift.woff?oyotbk') format('woff'),
    url('./fonts/jbond_ift.svg?oyotbk#jbond_ift') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="jbnd-"]::before, [class^="jbnd-"]::after, 
[class*=" jbnd-"]::before, [class*=" jbnd-"]::after,{
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'jbond_ift';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ==========================================================
*
* ヘッダ
*
========================================================== */
#header{
    display:block;
    /*overflow:hidden;*/
    width:100%;
    height:110px;
    border-bottom:2px solid #000000;
    background-color:#ffffff;
    /*min-width:980px;*/
    position:fixed;
    top:0;
    left:0;
    z-index:250;
    font-family: 'Noto Sans JP', sans-serif;
}

#header > .pgFrame{
    height:100%;
    overflow:visible;
}


/* for Sp --------------------*/
@media screen and (max-width: 780px) {
    #header{
        min-width:100%;
        height:80px;
    }
}

/********************************
 メインロゴ
********************************/
#mainLogo{
    display:inline-block;
    overflow:hidden;
    position:absolute;
    top:10px;
    left:0;
    /*top:50%;
    left:0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);*/
}


#mainLogo > a{
    display:block;
    overflow:hidden;
    color:#000000;
    font-weight:bold;
    text-decoration:none;
}

#mainLogo > a > img{
    float:left;
    margin-right:10px;
    width:250px;
    height:auto;
}

#mainLogo > a > span{
    vertical-align:middle;
    display:inline-block;
    font-size:30px;
    font-weight:bold;
    line-height:72px;
    float:left;
    /*margin-top:9px;*/
}

/* for TB --------------------*/
@media screen and (max-width: 959px) {
    #mainLogo{
        left: 0;
        padding:0 10px 36px;
    }
}


/* for Sp --------------------*/
/*@media screen and (max-width: 679px) {*/
@media screen and (max-width: 780px) {
    #mainLogo{
        display:block;
        padding:0;
        top:50%;
        left:10px;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    #mainLogo > a{
        display:inline-block;
    }

    #mainLogo > a > img{
        float:none;
        width:150px;
        height:30px;
        margin-right:0;
    }

    #mainLogo > a > span{
       display:block;
       font-size: 15px;
       line-height:125%;
       float:none;
    }
}

/* for SP(narrow) --------------------*/
@media screen and (max-width: 320px) {
    #mainLogo > a > span{
       font-size: 12px;
    }
}

/********************************
 メニュー表示ボタン
********************************/
#sp_menuBtn{
    display:none;
    width:30px;
    height:30px;
}

a.jbnd-menu{
    display:block;
    overflow:hidden;
    text-decoration:none;
    color:#000000;
    width:30px;
    height:30px;
    padding:3px;
}


a.jbnd-menu > span::before{
    font-family: 'jbond_ift';
    display:block;
    content:"\e900";
    font-size:24px;
}

.open a.jbnd-menu > span::before{
    font-family: 'jbond_ift';
    content:"\e901";
}


/* for Sp --------------------*/
/*@media screen and (max-width: 679px) {*/
@media screen and (max-width: 780px) {
    #sp_menuBtn{
        display:inline-block;
        text-align:center;
        position:absolute;
        top: 50%;
        right:10px;
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%);
    }

}


/* ==========================================================
*
* グローバルナビ
*
========================================================== */
#nav{
    display:inline-block;
    /*overflow:hidden;*/
    font-size:1.6rem;
    position:absolute;
    bottom:0px;
    left:10px;
}

#nav > ul{
    display:block;
    letter-spacing:-.4rem;
    /*overflow:hidden;*/
}

#nav > ul > li{
    display:inline-block;
    /*overflow:hidden;*/
    line-height:100%;
    height:40px;
    /*margin-left:1em;*/
    vertical-align:middle;
    position:relative;
    letter-spacing:normal;

}

#nav > ul > li > a{
    display:block;
    /*overflow:hidden;*/
    color:#000000;
    text-decoration:none;
    padding:0.5em 0;
    /*border-bottom-width: 2px;
    border-bottom-style:solid;
    border-bottom-color:#ffffff;*/
    /*font-family: 'Roboto',sans-serif;
    text-transform: uppercase;*/
    font-weight: bold;
    font-size: 20px;
}


#profile #nav > ul > li:nth-child(1) > a,
#system #nav > ul > li:nth-child(2) > a,
#repo #nav > ul > li:nth-child(3) > a,
#news #nav > ul > li:nth-child(4) > a,
#news_ditail #nav > ul > li:nth-child(4) > a,
#contact #nav > ul > li:nth-child(5) > a{
    color:#EE0000;
    /*border-bottom-color:#000044;*/
}

#nav > ul > li > a > span{
    display:inline-block;
    /*overflow:hidden;*/
    padding:0 1em;
    border-left:1px solid #848484;
}

.pc #nav > ul > li > a:hover > span{
    color:#EE0000;
    /*border-bottom-color:#4b5971;*/
}

.pc #nav > ul > li:hover > ul.sndLNav{
    display:block;
}


#exNav{
    display:none;
}

ul.sndLNav{
    display:none;
    overflow:hidden;
    width:15em;
    position:absolute;
    top:40px;
    left:0;
    z-index:260;
    background-color:#ffffff;
    border-top: 2px solid #595757;
    border-right: 1px solid #595757;
    border-left: 1px solid #595757;

    box-shadow: 5px 5px 5px rgba(0,0,0,0.4);
    -moz-box-shadow: 5px 5px 5px rgba(0,0,0,0.4);
    -webkit-box-shadow: 5px 5px 5px rgba(0,0,0,0.4);
    -o-box-shadow: 5px 5px 5px rgba(0,0,0,0.4);
    -ms-box-shadow: 5px 5px 5px rgba(0,0,0,0.4);
}

ul.sndLNav > li{
    display:block;
    overflow:hidden;
    border-bottom: 1px solid #595757;
}

ul.sndLNav > li > a{
    display:block;
    overflow:hidden;
    padding:0.5em 1em;
    font-weight:normal;
    text-decoration:none;
    font-size:1.4rem;
    color:#000000;

}

.pc ul.sndLNav > li > a:hover {
    color: #ffffff;
    background-color: #4b5971;
}

ul.sndLNav > li > a:after{
    font-family: 'jbond_ift';
    content: "\e90b";
    display: inline-block;
    float: right;
}

/* for Sp --------------------*/
/*@media screen and (max-width: 679px) {*/
@media screen and (max-width: 780px) {
    #nav{
        display:block;
        overflow-y:auto;
        width:100%;
        height:calc(100vh - 80px);
        padding:0 1em;
        position:fixed;
        top:80px;
        left:100%;
        right:auto;
        background-color:rgba(0,0,0,0.9);
        z-index:500;

        transition: all 0.5s ease-in-out;
        -webkit-transition: all 0.5s ease-in-out;
        -moz-transition: all 0.5s ease-in-out;
        -o-transition: all 0.5s ease-in-out
    }

    .open #nav{
        left:0;
    }

    #nav > ul > li{
        display:block;
        margin-left:0;
        height:auto;
    }

    #nav > ul > li > a{
        color:#ffffff;
        font-size: 2.1rem;
        padding: 0.5em 0;
        border-bottom:none;
        line-height:125%;
    }

    #nav > ul > li > a > span{
        display:block;
        padding:0 0;
        border-left:none;
    }

    #profile #nav > ul > li:nth-child(1) > a,
    #system #nav > ul > li:nth-child(2) > a,
    #repo #nav > ul > li:nth-child(3) > a,
    #news #nav > ul > li:nth-child(4) > a,
    #news_ditail #nav > ul > li:nth-child(4) > a,
    #contact #nav > ul > li:nth-child(5) > a{
        color:#00bfff;
    }

    ul.sndLNav{
        display:block;
        width:100%;
        position:relative;
        top:auto;
        left:auto;
        background-color:unset;
        background-color:transparent;
        border:none;
        margin-bottom:1em;

        box-shadow:none;
        -moz-box-shadow:none;
        -webkit-box-shadow:none;
        -o-box-shadow:none;
        -ms-box-shadow:none;
    }

    ul.sndLNav > li{
        padding:0 0;
    }

    ul.sndLNav > li > a{
        padding:1em 1em;
        font-size:inherit;
        color:#ffffff;
    }




    #exNav{
        display:block;
        margin-bottom:100000px;
    }

    #exNav > hr{
        display:inline-block;
        width:20%;
        border:1px solid #ffffff;
        margin-bottom:1em;
    }


    #exNav > ul.exlinkA > li,
    #exNav > ul.exlinkB > li{
        display:block;
        overflow:hidden;
    }

    #exNav > ul.exlinkA > li a,
    #exNav > ul.exlinkB > li a{
        display:block;
        overflow:hidden;
        color:#ffffff;
        padding:1em 0;
        text-decoration:none;
    }

    #exNav > ul.exlinkA{
        font-size:1.4rem;
    }

    #exNav > ul.exlinkB{
        font-size:1.4rem;
    }


}



/*****************************************************
 言語セレクタ
*****************************************************/
.cp_ipselect {
    display:inline-block;
    overflow: hidden;
    /*width:60px;*/
    text-align: center;
    /*border: 1px solid #000000;*/
    border-radius: 2px;
    position:absolute;
    bottom:2px;
    right:10px;
}



.cp_ipselect > a{
    display:inline-block;
    overflow:hidden;
    width:45px;
    height:30px;

    background-color:#ffffff;
    border:1px solid #000044;
    background-position:0 0;
    background-repeat:no-repeat;
    background-size:cover;
    opacity:0.3;
    margin-left:5px;
}

.cp_ipselect > a.curernt{
    /*padding:2px;*/
    opacity:1.0;
    /*border:2px solid #000044;*/

}

.cp_ipselect > a > span{
    display:none;
}

.cp_ipselect > a:nth-child(1){
    background-image: url('../images/language/jp.png');
}
.cp_ipselect > a:nth-child(2){
    background-image: url('../images/language/us.png');
}
.cp_ipselect > a:nth-child(3){
    background-image: url('../images/language/cn.png');
}

/*
.cp_ipselect > label{
    display:inline-block;
    overflow:hidden;
    cursor:pointer;
    background-color:#ffffff;
    margin-left:5px;
}

.cp_ipselect > label > span{
    display:block;
    overflow:hidden;
    width:30px;
    height:20px;
    background-position:0 0;
    background-repeat:no-repeat;
    background-size:cover;
    border:1px solid #000044;
    opacity:0.3;
}

.cp_ipselect > label > input[type='radio']{
    display:none;
}
.cp_ipselect > label:nth-child(1) > span{
    background-image: url('../images/language/jp.png');
}
.cp_ipselect > label:nth-child(2) > span{
    background-image: url('../images/language/us.png');
}
.cp_ipselect > label:nth-child(3) > span{
    background-image: url('../images/language/cn.png');
}
.cp_ipselect > label > input[type='radio']:checked + span{
    opacity:1.0;

}
*/

/* for Sp --------------------*/
/*@media screen and (max-width: 679px) {*/
@media screen and (max-width: 780px) {
    .cp_ipselect {
        top: 50%;
        right:50px;
        bottom:auto;
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%);
    }  

    .cp_ipselect > a{
        width:30px;
        height:20px;
    }
}

/* ==========================================================
*
* タイトル
*
========================================================== */

#titleBase{
    display:block;
    overflow:hidden;
    width:100%;
    height:200px;
    position:relative;
    margin-bottom:25px;
    position:relative;

    background-color:rgba(0,0,22,0.7);
    background-repeat:no-repeat;
    background-position:0 50%;
    background-size:cover;

}

#titleBase:before{
    content:"";
    display:block;
    overflow:hidden;
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;

    /*
    background-color:rgba(30,47,77,0.8);
    */
    background: -moz-linear-gradient(left, rgba(0,0,22,0.7) 0%, rgba(0,0,22,0.7) 50%, rgba(0,0,22,0) 100%);
    background: -webkit-linear-gradient(left, rgba(0,0,22,0.7) 0%,rgba(0,0,22,0.7) 50%,rgba(0,0,22,0) 100%);
    background: linear-gradient(to right, rgba(0,0,22,0.7) 0%,rgba(0,0,22,0.7) 50%,rgba(0,0,22,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b3000016', endColorstr='#00000016',GradientType=1 );

    /*
    background: -moz-linear-gradient(left, rgba(0,0,68,0.8) 0%, rgba(0,0,68,0.8) 50%, rgba(0,0,68,0) 100%);
    background: -webkit-linear-gradient(left, rgba(0,0,68,0.8) 0%,rgba(0,0,68,0.8) 50%,rgba(0,0,68,0) 100%);
    background: linear-gradient(to right, rgba(0,0,68,0.8) 0%,rgba(0,0,68,0.8) 50%,rgba(0,0,68,0) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cc000044', endColorstr='#00000044',GradientType=1 );
    */
}

#profile #titleBase{
    background-image: url('../images/bg_02.png');
}
/*#profile #titleBase:before{
    background-color:rgba(0,0,22,0.8);
}*/

#repo #titleBase{
    background-image: url('../images/bg_04.png');
}
/*#repo #titleBase:before{
    background-color:rgba(16,10,12,0.8);
}*/

#data #titleBase{
    background-image: url('../images/bg_06.png');
}
/*#data #titleBase:before{
    background-color:rgba(16,10,12,0.8);
}*/

#system #titleBase{
    background-image: url('../images/bg_03.png');
}
/*#system #titleBase:before{
    background-color:rgba(0,0,22,0.8);
}*/

#news #titleBase,
#news_ditail #titleBase{
    background-image: url('../images/bg_01.png');
}
/*#news #titleBase:before,
#news_ditail #titleBase:before{
    background-color:rgba(0,0,22,0.8);
}*/


#titleBase h1{
    display:inline-block;
    overflow:hidden;
    font-size: 3.4rem;
    font-weight:nomal;
    line-height:155%;
    color:#ffffff;
    position:absolute;
    top:50%;
    left:0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}


#titleBase h1 > span{
    display:block;
    font-size:2.4rem;
    font-family: 'EB Garamond', serif;
}

.safezone{
    display: block;
    overflow: hidden;
    width: 100%;
    height:100%;
    max-width: 980px;
    margin:0 auto;
    position:relative;
}

/* for TB --------------------*/
@media screen and (max-width: 899px) {
    #titleBase h1{
        left:10px;
        /*left:auto;*/
    }

}

/* for Sp --------------------*/
/*@media screen and (max-width: 679px) {*/
@media screen and (max-width: 780px) {
    #titleBase{
        height:140px;
    }

    #titleBase h1{
        font-size: 2.8rem;
    }

    #titleBase h1 > span{
        font-size: 2.1rem;
    }

    .safezone{
        padding:0 1em;
    }
}


/*****************************************************
 情報ページ用シンプルタイトル
 *****************************************************

#data h1,
#disclosure h1{
    display:block;
    overflow:hidden;
    font-size: 2.4rem;
    font-weight:bold;
    line-height:155%;
    text-align:center;
    padding:2em 0 2em;
    color:#4b5971;
}

#data h1 > span,
#disclosure h1 > span{
    display:inline-block;
    padding:0 1em 0.25em;
    border-bottom:4px solid #4b5971;
}*/

/* ==========================================================
*
* コンテンツボディ
*
========================================================== */
#contents{
    display:block;
    overflow:hidden;
    padding-top:110px;
    position:relative;
    /*padding-bottom:100px;*/
    height:auto;
    min-height:calc(100vh - 188px);
}


#mainFrame{
    display:block;
    overflow:hidden;
    width:100%;
    max-width:980px;
    margin:0 auto;
}



.columnbody{
    padding:0 2em;
}

/* for Sp --------------------
@media screen and (max-width: 679px) {*/
@media screen and (max-width: 780px) {
    #contents{
        padding-top:80px;
        min-height:auto;
    }

    #mainFrame{
        max-width:100%;
        min-height:auto;
    }

    .columnbody{
        padding:0 0;
    }

}

/*****************************************************
 本文
*****************************************************/
#contentBody{
    clear:both;
    display:block;
    overflow:hidden;
    width:100%;
    position:relative;
    padding-bottom:auto;
}

#contentBody > section:before {
   content:"";
   display:block;
   height:100px;
   margin:-100px 0 0;
}

/* for TB --------------------*/
@media screen and (max-width: 959px) {
    #contentBody{
        padding:0 1em 50px;
    }

    /*#contentBody > section:before {
       height:78px;
       margin:-78px 0 0;
    }*/
}

/* for Sp --------------------*/
/*@media screen and (max-width: 679px) {*/
@media screen and (max-width: 780px) {

    #contentBody{
        width:100%;
        min-height:auto;
        padding:0 1em 2em;
    }

}

/*****************************************************
 ヘッドライン
*****************************************************/
#contentBody > section{
    margin-bottom: 3em;
}


#contentBody h3,
#contentBody h4,
#contentBody h5{
    display:block;
    overflow:hidden;
    font-weight: normal;
    /*font-family: 'EB Garamond';*/
}

#contentBody h2 > span,
#contentBody h3 > span,
#contentBody h4 > span,
#contentBody h5 > span{
    display:block;
    overflow:hidden;
    line-height:145%;
}


/*H2タイトル*/
#contentBody h2{
    padding: 0.5em 0.5em 0.5em 1.0em;
    margin-bottom: 15px;
   
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;

    background: rgb(204,204,204);
    background: -moz-linear-gradient(left, rgba(204,204,204,1) 0%, rgba(255,255,255,1) 100%);
    background: -webkit-linear-gradient(left, rgba(204,204,204,1) 0%,rgba(255,255,255,1) 100%);
    background: linear-gradient(to right, rgba(204,204,204,1) 0%,rgba(255,255,255,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cccccc', endColorstr='#ffffff',GradientType=1 );

    /*
    background: rgb(238,238,238);
    background: -moz-linear-gradient(left, rgba(238,238,238,1) 0%, rgba(255,255,255,1) 100%);
    background: -webkit-linear-gradient(left, rgba(238,238,238,1) 0%,rgba(255,255,255,1) 100%);
    background: linear-gradient(to right, rgba(238,238,238,1) 0%,rgba(255,255,255,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#ffffff',GradientType=1 );
    */
}
#contentBody h2 > span{
    font-size: 2.0rem;
    font-weight:bold;
    padding-left:1.2em;
    color:#000000;
    position:relative;
}

#contentBody h2 > span::after{
    display:inline-block;
    content:"";
    width:16px;
    height:16px;
    background-color:#EE0000;

    position: absolute;
    top: 7px;
    left:0;
    /*transform:translateY(-50%);*/
}


/*H3タイトル*/
#contentBody h3 > span{
    font-size:1.8rem;
    font-weight:bold;
    margin-bottom:1em;
    padding-left:10px;
    border-left: 8px double #4b5971;
}
/*#contentBody h3 > span::before {
  font-family: 'jbond_ift';
  content: "\e905";
  margin-right:0.25em;
}*/


#contentBody h4 > span{
    font-size:1.6rem;
    font-weight:bold;
    margin-bottom:1em;
}

#contentBody h5 > span{
    /*font-size:1.4rem;*/
    font-weight:bold;
    margin-bottom:0.5em;
}

/* for Sp --------------------*/
@media screen and (max-width: 679px) {

    #contentBody h2 > span {
        
    }
}


/*****************************************************
 その他パーツ
****************************************************/
#contentBody p{
    display:block;
    overflow:hidden;
    line-height: 1.8em;
    /*font-size:1.4rem;*/
    margin-bottom: 1.8em;
    font-weight: normal;
}

#contentBody p.cautionTxt{
    font-size:1.3rem;
    text-indent:-1em;
    padding-left:1em;
}

.fitImg img {
    width: 100%;
    height:auto;
}


/* for Sp --------------------*/
@media screen and (max-width: 679px) {


}

/*****************************************************
 リンクボタン
****************************************************/
/*楕円リンク*/
a.roundBtn{
    display:inline-block;
    overflow:hidden;
    border-radius: 25px;
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
    padding:0.5em 1.5em;
    color:#4b5971;
    text-decoration:none;
    font-weight:bold;
    background-color:rgba(255,255,255,0.6);
    border:1px solid #4b5971;
}

.pc a.roundBtn:hover{
    color:#ffffff;
    background-color:#4b5971;
}

/*四角リンク（赤）*/
a.redBtn{
    display:inline-block;
    overflow:hidden;
    padding:0.5em 1.5em;
    color:#4b5971;
    text-decoration:none;
    font-weight:bold;
    background-color:#efcedc;
    border:1px solid #e27ca8;
}

.pc a.redBtn:hover{
    color:#ffffff;
    background-color:#e27ca8;
}



/* for Sp --------------------*/
@media screen and (max-width: 679px) {


}


/*****************************************************
 アイコンリンク
****************************************************/
a[href $='.pdf'],
a[href ^='http'],{
    text-decoration:none;
    display:inline-block;
    overflow:hidden;
    font-weight:bold;
    line-height:100%;
}

/*PDFリンクボタン*/
a[href $='.pdf'] > span::before{
    font-family: 'jbond_ift';
    content:"\eadf";
    margin:0 0.25em;
}

/*外部ウィンドリンク*/
a[href ^='http'] > span::before{
    font-family: 'jbond_ift';
    content: "\e904";
    margin:0 0.25em;
}



/* for Sp --------------------*/
@media screen and (max-width: 679px) {


}

/*****************************************************
 四角罫
****************************************************/
.squareBox{
    display:inline-block;
    overflow:hidden;
    text-decoration:none;
    font-family: 'Roboto', sans-serif;
    color:#000000;
    border-width:1px;
    border-style:solid;
    border-color:#000000;
    line-height:100%;
    padding:0.25em 1em;
    margin-top:1em;
    /*font-size: 1.2rem;*/
    letter-spacing: 1px;
}

/*四角罫ボタン*/

a.squareBox{
    text-decoration:none;
}

a.squareBox:hover{
    background-color:#4682b4;
    color:#ffffff;
}

.squareBox > span::after{
    font-family: 'jbond_ift';
    content:"\e90b";
    margin-left:0.25em;
}

/*****************************************************
 2列表
****************************************************/
dl[class^='dlCompact_']{
    display:block;
    overflow:hidden;
    line-height:175%;
}

dl[class^='dlCompact_'] > dt{
    clear:both;
    display:block;
    overflow:hidden;
    width:20%;
    float:left;
}
dl[class^='dlCompact_'] > dd{
    display:block;
    overflow:hidden;
    width:80%;
    float:left;
    padding-left:1em;
    margin-bottom:1em;
}


/* for Sp --------------------*/
@media screen and (max-width: 679px) {
    dl[class^='dlCompact_'] > dt{
        width:100%;
        float:none;
    }
    dl[class^='dlCompact_'] > dd{
        width:100%;
        float:none;
        padding-left:2em;
    }


}

/*****************************************************
 リスト
****************************************************/
ol.numList{
    list-style-type:decimal;
    margin-bottom:1em;
}

ol.numList > li{
    margin-left:1em;
    margin-bottom:1em;
}

/*****************************************************
 テーブル
****************************************************/
table{
    width:100%;
}

table th,
table td{
    padding:0.5em 1em;
    border:1px solid #c3c3c3;
}

table th{
    text-align:center;
    background-color:#4b5971;
    color:#ffffff;
    font-weight:bold;
}

.scTable{
    display:block;
    overflow:hidden;
}
.scTableCmt{
    display:none;
}


/* for Sp --------------------*/
@media screen and (max-width: 679px) {

    .scTable{
        overflow-x:auto;
        padding-bottom:1em;
        position:relative;
    }

    .scTable > table{
        width:auto;
        min-width:800px;
    }

    .scTableCmt{
        display:block;
        text-align:center;
        font-size:0.9rem;
        color:#800000;
    }
 
}



/*****************************************************
 ページャー
****************************************************/
#pager{
    display:block;
    overflow:hidden;
    text-align:center;
    border-top:2px solid #cccccc;
    margin-top:50px;
    padding-top:2em;
}

#pager ul > li{
    display:inline-block;
    overflow:hidden;
    padding:0 0.5em;
}

#pager ul > li:nth-child(2){
    border-left:1px solid #cccccc;
    border-right:1px solid #cccccc;
}

#pager ul > li > a{
    display:block;
    overflow:hidden;
    text-decoration:none;
    line-height:100%;
}

#pager ul > li > a.jbnd-prv > span::before{
    font-family: 'jbond_ift';
    content:"\e90a";
    margin-right:5px;
}
#pager ul > li > a.jbnd-nxt > span::after{
    font-family: 'jbond_ift';
    content:"\e90b";
    margin-left:5px;
}

/*****************************************************
 その他共有パーツ
****************************************************/
.times{
    font-family: TimesNewRoman,Times New Roman,Times,serif!important;
    font-weight:bold;
    font-size:inherit;
}


strong{
    font-weight:normal;
    font-family: TimesNewRoman,Times New Roman,Times,serif!important;
    font-size:inherit;
    font-weight:bold;
    font-size:1.1em;
}

.redTxt{
    color:#ff0000;
}

.lTxt{
    font-size:1.2em!important;
}
.sTxt{
    font-size:0.9em!important;
}


.alRight{
    text-align:right;
}

.alCenter{
    text-align:center;
}

.mgl1em{
    margin-left:1em!important;
}
.mgb1em{
    margin-bottom:1em!important;
}
.mgb2em{
    margin-bottom:2em!important;
}

.tidt1{
    text-indent:-1em;
    padding-left:1em;
}
.tidt2{
    text-indent:-2em;
    padding-left:2em;
}

.noPC{
    display:none;
}


/* for Sp --------------------*/
@media screen and (max-width: 679px) {

    .noPC{
        display:block;
        display:initial;
    }

}


/*****************************************************
 サブナビゲーション
*****************************************************/
#subNavi{
    display:block;
    overflow:hidden;
    padding-bottom: 30px;
    width:100%;
    height:auto;
    min-height:100px;
}


#subNavi > ul{
    display:block;
    overflow:hidden;
    letter-spacing:-.4em;
}

#subNavi > ul > li{
    display:inline-block;
    overflow:hidden;
    min-width:33%;
    letter-spacing:normal;
    float:left;
}

#subNavi > ul > li > a{
    display:block;
    overflow:hidden;
    /*font-size: 1.4rem;*/
    text-align:center;

    color: #595757;
    line-height:100%;
    text-decoration:none;
    margin: 0.25em;
    padding:0.5em 1em;
    border: 1px solid #595757;
}

#subNavi > ul > li > a >span::after{
    font-family: 'jbond_ift';
    content:"\e90c";
    display:inline-block;
    float:right;
}

.pc #subNavi > ul > li > a:hover{
    color:#ffffff;
    background-color:#4b5971;
    /*background-color:#4682b4;*/
}


/* for Sp --------------------*/
@media screen and (max-width: 679px) {

    #subNavi{
        min-height:auto;
    }

    #subNavi > ul > li{
        display:block;
        margin-left:0;
        width:100%;
    }

}

/* ==========================================================
*
* ページ下部Box
*
========================================================== */
#endBlock{
    clear:both;
    display:block;
    overflow:hidden;
    text-align:right;
}

a.jbnd-up{
    display:inline-block;
    overflow:hidden;
    text-decoration:none;
    font-size:22px;
    line-height:100%;
    color:#4b5971;
    padding:10px;
    border:1px solid #4b5971;
    background-color:#ffffff;
}

a.jbnd-up > span{
    display:none;
}
a.jbnd-up::before {
    font-family: 'jbond_ift';
    content: "\e90d";
}

.pc a.jbnd-up:hover{
    color:#ffffff;
    background-color:#4682b4;
}


/* for TB --------------------*/
@media screen and (max-width: 959px) {
/* for Sp --------------------
@media screen and (max-width: 679px) {*/

    #endBlock{
        padding:0 1em 1em;
    }

}


/* ==========================================================
*
* フッタ
*
========================================================== */

#footer{
    font-family: 'Noto Sans JP', sans-serif;
    display:block;
    overflow:hidden;
    width: 100%;
    text-align:center;
    color:#ffffff;
    background-color:#000044;
    padding:20px 0 1em;
}

#footer a{
    display:block;
    overflow:hidden;
}

#footer p{
    padding:0 1em;
}

#footer small{
    font-size:1.2rem;
}

#ftLogo{
    display:inline-block;
    overflow:hidden;
    margin-bottom:40px;
}

#ftLogo > a{
    text-decoration:none;
    color:#ffffff;
    font-weight:bold;
}

#ftLogo > a > img{
    margin-bottom:10px;
}

#ftLogo > a > span{
    word-break:keep-all;
}


/*****************************************************
 フッタナビ
*****************************************************/
#ftNavi{
    clear:both;
    display:block;
}
#ftNavi > ul{
    display:block;
    overflow:hidden;
    width:100%;
    margin-bottom:20px;
    font-size:1.6rem;
}

#ftNavi > ul.exlink{
    font-size:1.4rem;
}


#ftNavi > ul > li {
    display:inline-block;
    overflow:hidden;
    text-align:center;
    padding:2px 1em;
}

#ftNavi > ul > li > a{
    color:#ffffff;
    /*font-weight:bold;*/
    text-decoration:none;
}

#ftNavi > ul > li > a:hover{
    color:#00bfff;
    text-decoration:underline;
}

#ftNavi > ul.exlink > li{
    padding:0.5em 1em;
}


#ftNavi > hr{
    width:150px;
    border:none;
    border-top:2px solid #ffffff;
    margin:50px auto 20px;
}


/* for Sp --------------------*/
@media screen and (max-width: 679px) {

    #ftNavi > ul{
        /*font-size:1.4rem!important;*/
    }


    #ftNavi > hr{
        margin:2em auto 2em;
    }


    #ftNavi > ul{
        font-size:1.6rem;
    }


    #ftNavi > ul > li {
        display:block;
        overflow:hidden;
        text-align:left;
        padding: 0;
    }

    #ftNavi > ul.exlink > li {
        padding: 0;
    }

    #ftNavi > ul > li > a{
        padding:0.5em 1em;
    }

}



