html{font-size: 62.5%;}
body{
    color: #0b3775;
    font-size: 1.6rem;
    font-family:游ゴシック Medium, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
.sp-br{display: none;}
.pc-br{display: initial;}

/* nav */
h1 a{
    background: url(/img/img-nav-logo.png) no-repeat;
    background-position: center;
    background-size: contain;
    display: inline-block;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    width: 100%;
    height: auto; 
    transition: ease-in .3s;
}
h1 {
    margin-top: 20px;
    width: 20%;
}
h1 a:hover{
    opacity: .8;
}

.concept{background-color: #f5f9ff;}

    section{padding: 80px 0;}
    section > div{
        margin: 0 auto;
        /* width: 84.375%; */
        max-width: 1120px;
    }
    .sp-nav{display: none;}
    .pc-nav{
        display:block;
        position: -webkit-sticky; /* safari用 */
        position: sticky;
        top: 0;
        z-index: 9999;
    }
    .pc-nav div{
        background-color: #fff;
        display: flex;
        justify-content: space-between;
        padding-left:30px;
    }
    .pc-nav ul{
        display: inline-flex;
    }
    .pc-nav li a{
        color: #333;
        display: inline-block;
        font-weight: bold;
        text-decoration: none;
        margin-left: 20px;
        padding: 20px;
        transition: ease-in .3s;
    }
    .pc-nav li a:hover{
        color: #0b3775;
    }

    .pc-nav ul li:nth-child(5) a{
        background: #e5e645;
        display: inline-block;
        margin-left: 20px;
        padding: 20px;
        transition: ease-in .3s;
    } 
    .pc-nav ul li:nth-child(5) a:hover{
        color: #fff;
        background: #0b3775;
    } 

    /* footer */

    footer{
        color: #fff;
        background-color: #0b3775;
        padding: 80px 0 20px;
    }
    footer > div{
        margin: 0 auto;
        width: 84.375%;
        max-width: 1120px;
    }
    footer > div > ul{
        display: flex;
        justify-content:space-between;
        align-items: flex-end;
    }
    footer img{
        width: 112px;
        height: 110px;
    }
    address{
        line-height: 1.5;
        margin-top: 20px;
    }
    footer p {
        margin-top: 20px;
    }

    footer p a {
        display: block;
        width: 300px;
        height: 50px;
        text-align: center;
        line-height: 50px;
        background: #fff;
        font-weight: bold;
        text-decoration: none;
        transition: ease-in .3s;
      }
      footer p a span{
        color: #0b3775;
        position: relative;
        padding-right: 20px;
      }
      footer p a span::after{
        content: "";
        position: absolute;
        top: 50%;
        right: 0;
        width: 8px;
        height: 8px;
        border-top: 2px solid #0b3775;
        border-right: 2px solid #0b3775;
        transform: rotate(45deg);
        margin-top: -5px;
      }
      footer p a:hover {
          color: #fff;
          background: #e5e645;
        }
       footer .sns{
           display:inline-flex;
       } 
       footer .sns img{
           width: 40px;
           height: 40px;
       }
       footer .sns li:nth-child(2){
           margin-left: 20px;
       }
       footer small{
           display: block;
           font-size: 0.6rem;
           margin-top: 80px;
       }

/* sp */
@media all and (max-width: 767px) {
    .sp-br{display: initial;}
    .pc-br{display: none;}

    h1 {margin-top: 0;}
    h1 a{
        width: 237px;
        height: 11px;
        display: grid;
    }
    section > div{
        margin: 0 30px;
        /* width: 100%; */
    }
    .pc-nav{
        display: none;
    }
/* spのナビゲーション */
.sp-nav{
    background-color: #fff;
    display: block;
    padding: 30px;
    position:fixed;
    top: 0;
    z-index: 100;
    width: 100%;
}

a{
    text-decoration: none;
    color: #fff;
    }
    
    /*ナビのスタイル*/
    nav.NavMenu{
    position: fixed;
    z-index: 12;
    top: 0;
    left: 0;
    background: #0b3775;
    text-align: center;
    width: 100%;
    height: 100%;
    display: none;
    }
    
    nav.NavMenu ul{
    width: 100%;
    margin: 0 auto;
    padding: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    }
    
    nav.NavMenu ul li{
    font-size: 24px;
    list-style-type: none;
    width: 100%;
    padding-bottom: 0px;
    }
    
    nav.NavMenu ul li:last-child{
    padding-bottom: 0;
    }
    
    nav.NavMenu ul li a{
    display: block;
    color: #fff;
    padding: 15px 0;
    font-weight: bold;
    font-size: 18px;
    }
    
    /*ボタンのスタイル*/
    .Toggle {
    position: fixed;
    right:30px;
    top: 15px;
    width: 45px;
    height: 45px;
    cursor: pointer;
    z-index: 13;
    display: block;
    }
    
    .Toggle span {
    display: block;
    position: absolute;
    width: 35px;
    border-bottom: solid 4px #0b3775;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    left: 6px;
    }
    
    .Toggle span:nth-child(1) {
    top: 9px;
    }
    
    .Toggle span:nth-child(2) {
    top: 20px;
    }
    
    .Toggle span:nth-child(3) {
    top: 31px;
    }
    
    .Toggle.active span:nth-child(1) {
    top: 18px;
    left: 6px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
    border-bottom: solid 3px #fff;
    }
    .Toggle.active span:nth-child(2),
    .Toggle.active span:nth-child(3) {
    top: 18px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
    border-bottom: solid 3px #fff;
    }

    /* footer */

    footer > div > ul{
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }

    footer > div > ul li:first-child{
        text-align: center;
    }

    footer p a {
        width: 100%;
      }
    footer .sns{
        margin-top: 40px;
    } 
    footer .sns img{
        width: 60px;
        height: 60px;
    }
    footer img{
        width: 112px;
        height: auto;
        margin: 0 auto;
    }
    footer small{
        text-align: center;
    }
    address{
        text-align: left;
    }
}

