@charset "utf-8";

html {
    width: 100%;
    height: 100%;
}

body {
    font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, arial, helvetica, sans-serif;
    width: 100%;
    height: 100%;
}


/* ##### ローディング ##### */

#loading {
    position: absolute;
    left: 40%;
    top: 40%;
}


/* ##### ナビゲーションメニュー ##### */

nav {
    position: absolute;
    top: 20px;
    left: 30px;
    width: 1000px;
    z-index: 1;
}

nav ul {
    margin: 0;
    padding: 0;
}

nav ul li {
    float: left;
    display: block;
    width: 100px;
    margin: 0 20px;
}

nav ul li:first-child {
    margin-right: 150px;
}

nav ul li:nth-child(3) {
    margin: 0 40px 0 30px;
}

nav ul li img {
    height: 25px;
}

nav ul li:first-child img {
    margin-top: -5px;
}

nav ul li:first-child h1 {
    width: 0;
    margin: 0;
}

nav ul li h2 {
    width: 0;
    margin: 0;
}

nav ul li a {
    display: block;
    width: 100px;
    height: 50px;
    padding-top: 20px;
    padding-left: 30px;
}

nav ul li:first-child a {
    display: block;
    padding: 0px 30px 15px 0;
}

nav ul li a:hover {
    opacity: 0.5;
    transition: 0.5s;
}

nav ul li a {
    opacity: 1.0;
    transition: 0.5s;
}


/* ##### メニュートリガー非表示 ##### */

.nav-a {
    display: none;
}


/* ##### スライドショー（vegas2） ##### */

.full {
    width: 100%;
    height: 100%;
}


/* ##### スマホ　スライドショー非表示 ##### */

.mobile {
    display: none;
}


/* ##### フッター ##### */

footer#white {
    position: absolute;
    bottom: 0;
    left: 50%;
    margin: 5px 0;
    font-size: 12px;
    color: #fff;
}

footer#black {
    margin: 10px 0;
    text-align: center;
    font-size: 12px;
    color: #000;
}


/* ##### グロナビ黒ライン ##### */

.nav-line {
    width: 100% !important;
    height: 100px !important;
    background: #000 !important;
}


/* ########## 1024px以下 ##########*/

@media (max-width: 1024px) {

    /* ##### ローディング ##### */
    #loading img {
        width: 300px;
        position: absolute;
        left: 40%;
        top: 40%;
    }

    /* ##### ハンバーガーメニュー ##### */
    nav {
        display: none;
    }

    .nav-a {
        display: block;
        position: relative;
        z-index: 1;
    }

    .nav-a img {
        position: fixed;
        top: 20px;
        left: 20px;
    }

    .nav-b {
        display: block;
        position: fixed;
        top: 30px;
        right: 10%;
        z-index: 1;
    }

    .gblnv_box {
        width: 100%;
    }

    .gblnv_box a {
        margin: 0;
    }

    .gblnv_block {
        background-color: #DEB887;
        color: #000;
        height: 340px;
        display: none;
        border: 1px solid #000;
    }

    .gblnv_block ul {
        list-style: none;
        margin: 0px;
        padding: 0px;
    }

    .gblnv_block ul li {
        line-height: 100%;
        margin: 0;
        padding: 0;
    }

    .gblnv_block ul li a {
        display: block;
        color: #000;
        text-decoration: none;
        font-size: 20px;
        margin: 0px;
        padding: 25px 20px;
        font-family: 'Josefin Sans', sans-serif;
    }

    .gblnv_block ul li a:hover {
        text-decoration: underline;
        opacity: 0.5;
        transition: .5s;
    }

    .onanimation {
        display: block;
    }

    .menu-trigger,
    .menu-trigger span {
        display: inline-block;
        transition: all 1s;
        box-sizing: border-box;
    }

    .menu-trigger {
        position: relative;
        width: 40px;
        height: 40px;
    }

    .menu-trigger span {
        position: absolute;
        left: 0;
        width: 100%;
        height: 4px;
        background-color: #fff;
        border-radius: 3px;
        box-shadow: 0px 0px 6px 3px #666;
    }

    .menu-trigger span:nth-of-type(1) {
        top: 0;
    }

    .menu-trigger span:nth-of-type(2) {
        top: 18px;
    }

    .menu-trigger span:nth-of-type(3) {
        bottom: 0;
    }

    .menu-trigger.active span:nth-of-type(1) {
        transform: translateY(18px) rotate(-45deg);
    }

    .menu-trigger.active span:nth-of-type(2) {
        left: 50%;
        opacity: 0;
        animation: active-menu-bar02 .1s forwards;
    }

    @keyframes active-menu-bar02 {
        100% {
            height: 0;
        }
    }

    .menu-trigger.active span:nth-of-type(3) {
        transform: translateY(-18px) rotate(45deg);
    }

    footer#white {
        display: none;
    }

    #footer p {
        margin: 3px 0;
        text-align: center;
        font-size: 12px;
        color: #000;
    }
}


/* ########## 768px以下 ##########*/


/* ##### ローディング ##### */

@media (max-width: 768px) {
    #loading img {
        display: none;
    }

    /* ##### スマホ　縦画像 ##### */
    .full,
    .full img {
        display: none;
        width: 0;
        height: 0;
    }

    .mobile,
    .mobile img {
        display: block;
        width: 100%;
        overflow: hidden;
        margin-bottom: 1px;
    }
}
