@charset "UTF-8";


/*--------------------------------
ヘッダー
--------------------------------*/


header{
    border-top:3px solid #c92d2b;
}

.head-logo{
    text-align: center;
}

.head-logo h1{
    max-width:300px;
    margin: 10px auto;
}

main{
    margin-bottom:40px;
}

/* スマホの時は上部固定 */

@media(max-width:768px){
    
    body{
        position: relative;
    }
    header{
        position:fixed;
        top:0;
        z-index:10;
        width:100%;
        background: rgba(255, 255, 255, 0.8);
        -webkit-box-shadow: 0px 5px 6px 1px #d3d3d3;
        box-shadow: 0px 5px 6px 1px #d3d3d3;
    }
    .head-logo h1{
        text-align: left;
        max-width:260px;
        margin:10px 0 0 10px;
    }
    
    .main-slide{
   margin-top:120px;
    }
    
    @media(max-width:768px){
        main{
            margin-top:120px;
        }
    }
}



/*======================================================
ナビ設定
======================================================*/

.g-nav li a:hover{
    text-decoration: none;
}

/*　スマホでのドロワーメニュー */

@media(max-width:768px){
    .wrapper {
        height: 100%;
        overflow-x: hidden;
        position: relative;
    }
    .overlay {
        content: "";
        display: block;
        width: 0;
        height: 0;
        background-color: rgba(0, 0, 0, 0.5);
        position: absolute;
        top: 0;
        left: 0;
        z-index: 2;
        opacity: 0;
        -webkit-transition: opacity .5s;
        transition: opacity .5s;
    }
    .overlay.open {
        width: 100%;
        height: 100%;
        opacity: 1;
    }
    
    //main {
        height: 100%;
        min-height: 100vh;
        padding: 0 50px;
        background-color: #eee;
        -webkit-transition: all .5s;
        transition: all .5s;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .menu-trigger {
        display: inline-block;
        width: 36px;
        height: 28px;
        vertical-align: middle;
        cursor: pointer;
        position: fixed;
        top: 30px;
        right: 30px;
        z-index: 100;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        -webkit-transition: -webkit-transform .5s;
        transition: -webkit-transform .5s;
        transition: transform .5s;
        transition: transform .5s, -webkit-transform .5s;
    }
    .menu-trigger.active {
        -webkit-transform: translateX(0px);
        transform: translateX(-0px);
    }
    .menu-trigger span {
        display: inline-block;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        position: absolute;
        left: 0;
        width: 100%;
        height: 4px;
        background-color: #000;
    }
    .menu-trigger.active span {
        background-color: #fff;
    }
    .menu-trigger span:nth-of-type(1) {
        top: 0;
    }
    .menu-trigger.active span:nth-of-type(1) {
        -webkit-transform: translateY(12px) rotate(-45deg);
        transform: translateY(12px) rotate(-45deg);
    }
    .menu-trigger span:nth-of-type(2) {
        top: 12px;
    }
    .menu-trigger.active span:nth-of-type(2) {
        opacity: 0;
    }
    .menu-trigger span:nth-of-type(3) {
        bottom: 0;
    }
    .menu-trigger.active span:nth-of-type(3) {
        -webkit-transform: translateY(-12px) rotate(45deg);
        transform: translateY(-12px) rotate(45deg);
    }

    .g-nav {
        width: 250px;
        height: 100%;
        padding-top: 100px;
        background-color: rgba(0, 0, 0, 0.8);
        position: fixed;
        top: 0;
        right: 0;
        z-index: 10;
        -webkit-transform: translate(250px);
        transform: translate(250px);
        -webkit-transition: all .5s;
        transition: all .5s;
    }
    .g-nav.open {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
    .g-nav li {
        color: #fff;
        padding: 10px 20px;
        border-bottom:1px solid #999;
    }
    
    .g-nav li:first-child{
        border-top: 1px solid #999;
    }
    
    .g-nav li a:link,.g-nav li a:visited,.g-nav li a:hover{
        color:#fff;
        text-decoration: none;
    }

    * {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }
    .g-nav ul {
        list-style: none;
    }
}


/*------------------------------
PCの場合のグローバルナビ
------------------------------*/

@media(min-width:769px){
    .g-nav{
        background: #02004d;
        max-width: 1240px;
        margin: 0 auto 30px;
    }

    .g-nav ul{
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        height:60px;
    }
    
    .g-nav li{
        width: calc( 100% / 5 );
        text-align: center;
        font-size:1.4rem;
        height:60px;
        line-height: 60px;
        display: block;
    }
    
    .g-nav li a{
        width: 100%;
        height: 60px;
        display: block;
    }
    
    .g-nav a:link, .g-nav a:visited, .g-nav a:hover{
        color:#fff;
        text-decoration: none;
    }
    
    .g-nav li.current{
        background: #080490;;
    }
    
    .g-nav a:hover{
        background: #080490;
        color:#fff;
    }
    
    .home .g-nav li.current{
        background: #02004d;
    }
    

}

/*------------------------------
footer
------------------------------*/

footer{
    background: #02004d;
    text-align: center;
    padding:30px 0;
    position: relative;
}

footer p, footer li,footer a{
    color:#fff;
    font-size:1.3rem;
}

.f-logo{
    max-width:200px;
    margin:20px auto;

}

.f-sns{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.f-sns img{
    width:40px;
    margin:20px 10px;
}

#pageTop{
    position:fixed;
    right:0;
    bottom:0;
}

#pageTop img{
    width:80px;
    opacity: 0.8;
}

.f-info a:link,.f-info a:visited,.f-info a:hover{
    color:#fff;    
}
