/**********************************
 *
 * 共通CSS
 *
 **********************************/

.disnone {
    display:none;
}

.pcClass {
    display:block;
}

.spClass {
    display:none;
}

.panel img {
    width:100%;
    height:auto;
    vertical-align: bottom;
}

.mv-none {
    opacity:0;
	transform: translate(0,80px);
	-webkit-transform: translate(0,80px);
}
.mv{
    opacity:1;
    -webkit-transition: all .9s;
    transition: all .9s;
	transform: translate(0,0);
	-webkit-transform: translate(0,0);
}


html {
    box-sizing: border-box;
}
*, *:before, *:after {
    box-sizing: inherit;
}


/**********************************
 *
 * ヘッダ
 *
 **********************************/
header {
    width:98%;
    height:80px;
    background-color:#fff;
    color:#222222;
    line-height:80px;
    padding:0 0 0 2%
}

header .classH1 {
    width:12%;
    height:auto;
    // display:block;
    float:left;
 
}

header .classH1 img{
    vertical-align: middle!important;
}

header nav {
    width: 88%;
    height: 80px;
    float:left;
}

header ul {
    width: 100%;
    display: inline-block;
}

header ul li {
    float:right;
    margin:0 1%;
    position:relative;
    display: block;
}


header ul li:first-child {
    width:100px;
    text-align:center;
    margin:0;

}

header ul li:first-child:hover {
    background-color: #0b395b;
    color:#fff;
}

header ul li:first-child a:hover {
    color:#fff;
}

header ul li a {
    display:block;
    height:80px;
    text-decoration:none;
    color:#222222;
    font-weight:bold;
    font-size: 17px;
}


/**********************************
 *
 * ボディ
 *
 **********************************/
body {
    font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, 'MS PGothic', arial, helvetica, sans-serif;
    width:100%;
    height:auto;
    position:relative;
    font-size:14px;
    font-weight:normal;
    color:#fff;
    line-height:180%;
    letter-spacing: 0.01em;
}

article {
    clear: both;
    position: relative;
    width:100%;
    padding:110px 0;
}

article .title {
    text-align:center;
}

article h2{
    font-size:54px;
    letter-spacing: 0.05em;
    padding-bottom:15px;
}

article h3{
    min-width:120px;
    font-size:12px;
    letter-spacing: 0.01em;
}

article h3 p {
}

article h4{
    font-size:30px;
    padding-bottom:35px;
    line-height: 1.3
}

.inner {
    width:100%;
    padding:0 5%;
    position:relative;
    margin:0 auto;
    margin-bottom:40px;
}

/**********************************
 *
 * ボーダー
 *
 **********************************/
.boader {
    width:40px;
    margin-bottom:10px;
    display: inline-flex;
}
/*
.white {
    background-color:#fff;
    color:#345a8b;
}

.gray {
    background-color:#f0f0f0;
    color:#345a8b;
}*/

.border-gray {
    color:#f0f0f0;
    width:100%;
    height:1px;

}



/**********************************
 *
 * FOOTER
 *
 **********************************/

footer {
    width:100%;
    height:90px;
    line-height:90px;
    background-color:#0b395b;
    color:#fff;
    font-size:12px;
}


footer ul{
    width:98%;
    padding:0 1%;
}

footer ul li {
    float:left;
    
}

footer ul li:last-child {
    float:right;
    font-size: 13px;
    letter-spacing: 0.5px;
}

footer ul li a{
    text-decoration:none;
    color:#fff;
    font-size: 14px;
}


footer ul .facebookBtn {
    height:30px;
}

footer ul .facebookBtn img {
    vertical-align: middle;
}

#pageTitle {
    width: 100%;
    padding: 80px 0 45px 0;
    background-color: #0B395B;
    text-align:center;
}

#pageTitle h1 {
    font-size:40px;
    letter-spacing: 0.05em;
    font-weight: bold;
}

#pageTitle h2 {
    font-size:14px;
    letter-spacing: 0.01em;
}

.breadcrumb {
    padding-top: 25px;
    line-height: 1;
}

.breadcrumb .scroll {
    white-space: nowrap;
    overflow-x: auto;
}
.ie9 .breadcrumb .scroll {
    overflow: visible;
}
.breadcrumb span,
.breadcrumb a {
    color: #000;
    font-weight: 500;
    font-size: 12px;
    line-height: 1;
    text-decoration: none;
}
.breadcrumb.second {
    padding-top: 44px;
}
.titleContent {
    font-size: 44px;
    line-height: 1;
    color: #0A395B;
    font-weight: bold;
    letter-spacing: 0.5px;
}

.mainContent {
    max-width: 1080px;
    padding: 0 20px;
    margin: 0 auto;
    overflow: hidden;
}

.brSp {
    display: none !important;
}
.brPc {
    display: initial !important;
}

.sm {
    display: none !important;
}

#style-1::-webkit-scrollbar-track
{
    background-color: #fff;
}

#style-1::-webkit-scrollbar
{
    padding-top: 5px;
    height: 7px;
    background-color: #F5F5F5;
}

#style-1::-webkit-scrollbar-thumb
{
    background-color: #ccc;
}
/*------------------------------------------------------------*/
/* スマホサイト用
 ------------------------------------------------------------*/
@media screen and (max-width: 780px) {

    .sm {
        display: block !important
    }
    .md {
        display: none !important
    }

    * {
        -webkit-box-sizing: border-box;
           -moz-box-sizing: border-box;
             -o-box-sizing: border-box;
            -ms-box-sizing: border-box;
                box-sizing: border-box;
        -webkit-text-size-adjust: 100%;
    }


    /**********************************
     *
     * 共通CSS
     *
     **********************************/
	.pcClass{
        display:none;
    }
	.spClass{
        display:block;
    }



    /**********************************
     *
     * ヘッダ
     *
     **********************************/
    header {
        width:100%;
        height:40px;
        line-height:40px;
        padding:0 0 0 2%;
        // position: relative;
    }

    header .classH1 {
        width:45px;
        max-width:45px;
    }

    header nav {
        width: 88%;
        height: 40px;
        float:left;
    }


    /**********************************
     *
     * ボディ
     *
     **********************************/
    body {
        font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, 'MS PGothic', arial, helvetica, sans-serif;
        width:100%;
        font-size:12px;
        line-height:150%;
        letter-spacing: 0.01em;
    }

    article {
        width:100%;
        padding:55px 0;
    }


    article h2{
        font-size:24px;
    }

    article h3{
        font-size:8px;
    }

    article h4{
        font-size:16px;
        padding-bottom:25px;
        text-align: center;
        line-height: 1.5;
    }

    .inner {
        width:96%;
        padding:0 2%;
        margin: 0 auto;
    }

    /**********************************
     *
     * ボーダー
     *
     **********************************/
    .boader {
        width:20px;
        margin-bottom:10px;
    }


    /**********************************
     *
     * ナビゲーション
     *
     **********************************/
    header .menu {
        position:absolute;
        top:0px;
        right:0;
        display:block;
        width: 40px;
        height: 40px;
        text-align: center;
        background-color:#0b395b;
        color:#fff;
        z-index:400;
    }

    #pageTitle h1 {
        font-size: 24px;
    }

    .menu-trigger,
    .menu-trigger span {
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
        cursor:pointer;
    }
    .menu-trigger {
        position: relative;
        width: 20px;
        height: 40px;
    }
    .menu-trigger span {
        position: absolute;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #fff;
        border-radius: 4px;
    }
    .menu-trigger span:nth-of-type(1) {
        top:11px;
    }
    .menu-trigger span:nth-of-type(2) {
        top: 19px;
    }
    .menu-trigger span:nth-of-type(3) {
        bottom:11px;
    }
    .menu-trigger.active span:nth-of-type(1) {
        -webkit-transform: translateY(7px) rotate(-45deg);
        transform: translateY(7px) rotate(-45deg);
    }
    .menu-trigger.active span:nth-of-type(2) {
        opacity: 0;
    }
    .menu-trigger.active span:nth-of-type(3) {
        -webkit-transform: translateY(-8px) rotate(45deg);
        transform: translateY(-9px) rotate(45deg);
    }


    .cateMenu {
        position:absolute;
        width:100%;
        height:100%;
        top:0;
        left:0;
        background-color: rgba(0, 28, 43, 0.7);
        z-index:300;
        display: none;
    }
    .cateMenu.opacity {
        display: block;
    }

    .cateMenu ul{
        width:100%;
        padding:50px 0 36px 0;
    }

    .cateMenu ul li, .cateMenu ul li:first-child{
        width:100%;
        padding:0 0 35px 0;
        text-align:center;
    }

    .cateMenu ul li a{
        font-size: 24px;
        line-height:100%;
        width:100%;
        display:block;
        text-decoration:none;
        color:#fff;
        margin: 0 auto;
        padding-bottom:5px;
        height: auto;
    }

    .cateMenu ul li p a{
        font-size: 12px;
        line-height:100%;
        width:100%;
        display:block;
        color:#fff;
        text-decoration:none;
        margin: 0 auto;
        padding-bottom:0;
    }

    .cateMenu ul .facebookBtn{
        width:100%;
    }

    .cateMenu ul .facebookBtn a{
        width:40px;
        height:40px;
        margin: 0 auto;
    }



    /**********************************
     *
     * FOOTER
     *
     **********************************/

    footer {
        height: auto;
        line-height: normal;
        padding: 8px 0 0px 0;
    }


    footer ul{
        width:100%;
        padding:0 4%;
    }

    footer ul li {
        float: left;
        padding-left: 1%;
        padding-right: 6%;
        display: block;
        padding-top: 16px;
    }

    footer ul li:last-child {
        float: none;
        width: 100%;
        display: block;
        clear: both;
        position: relative;
        padding:29px 0 30px;
        font-size:12px;
        letter-spacing: -0.1px;
    }
    .brSp {
        display: initial !important;
    }
    .brPc {
        display: none !important;
    }

    #pageTitle {
        padding:20px 0 5px 0;
    }

    // #pageTitle h2 {
    //     font-size:20px;
    // }

    #pageTitle h2 {
        font-size:10px;
    }

    .mainContent {
        width: 100%;
    }

    .breadcrumb {
        padding: 0;
        padding-top: 11px;
    }
    .breadcrumb span,
    .breadcrumb a {
        color: #000;
        font-size: 10px;
    }
    .breadcrumb .scroll {
        height: 22px;
    }

    .titleContent {
        font-size: 23px;
    }
}


/*updated scroll to top footer*/
footer {position: relative;}
.btnToTop {
    cursor: pointer;
    position: absolute;
    top: -27px;
    right: 86px;
    z-index: 10;
    width: 64px;
    height: 28px;
    background-color: #0b395b;
}
.btnToTop .iconArrow {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}
.btnToTop .iconArrow:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 10;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    border-style: solid;
    border-width: 0 12px 10px 12px;
    border-color: transparent transparent white transparent;
}
@media screen and (max-width: 780px) {
    .btnToTop {
        right: 25px;
        width: 42px;
        height: 23px;

        top: -22px;
    }
    .btnToTop .iconArrow:before {
         border-width: 0 7px 5px 7px;
    }

    .breadcrumb.second {
        padding-top: 11px;
    }
}
