/* header */

@media screen {

    /* #region 共通 */
    header {
        position: fixed;
        z-index: 899;
        top: 0;
        left: 0;
        width: 100%;
        padding: 20px 0;
        background: rgba(255,255,253,0.9);
    }

        header .inner {
            position: relative;
            max-width: 1060px;
            padding: 0 20px;
            display: flex;
            align-items: center;
            height: 100%;
            margin: 0 auto;
        }
        /* .logo */

        header .logo {
            position: relative;
            width: 250px;
            margin: 0;
            padding: 0;
        }

            header .logo img {
                width: 250px;
            }

            header .logo a {
                font-weight: bold;
                text-decoration: none;
                color: #FFF;
            }

    header {
        transition: height 0.4s cubic-bezier(0.34, 0.615, 0.4, 0.985);
    }

        header.scroll {
            height: 60px;
            position: fixed;
            z-index: 899;
            box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
        }

        header .logo {
            transition: width 0.4s cubic-bezier(0.34, 0.615, 0.4, 0.985);
        }

        header.scroll .logo {
            width: 70px;
        }

      

    /* #endregion */

    /* #region navi */
    .navi {
        margin: 0 0 0 auto;
        padding: 0;
        font-size: 14px;
        font-weight: bold;
        display: flex;
        list-style: none;
        font-family: 'gothfont';
    }

        .navi li {
            float: left;
            width: auto;
            margin: 6px 0 0px 20px;
            height: 50px;
            align-items: center;
            overflow: hidden;
            color: rgba(200,177,84,0.75);
        }

                .navi li:first-child {
                    margin-left: 0;
                }

                .navi li:nth-child(1),
                .navi li:nth-child(2),
                .navi li:nth-child(3),
                .navi li:nth-child(4) {
                    padding-top: 16px;
                }

                .navi li:nth-child(4) {
                    margin-right: 40px;
                }

                .navi li:nth-child(5) {
                    float: right;
                    position: relative;
                    width: 160px;
                    margin: 5px 0 5px 10px;
                    padding: 0;
                    color: rgba(200,177,84,0.75);
                    border: 1px solid rgba(200,177,84,0.75);
                    overflow: hidden;
                }

                    .navi li:nth-child(5) p {
                        padding: 15px 0 11px 0;
                    }
                    .navi li:nth-child(5):hover {
                        background-color: rgba(237,237,237,0.2);
                    }
                .navi li:nth-child(6) {
                    float: right;
                    width: 160px;
                    position: relative;
                    margin: 5px 0 5px 10px;
                    padding: 0;
                    color: rgba(200,177,84,0.75);
                    border: 1px solid rgba(200,177,84,0.75);
                    overflow: hidden;
                }

                    .navi li:nth-child(6) p {
                        padding: 15px 0 11px 0;
                    }

                    .navi li:nth-child(6):hover {
                        background-color: rgba(237,237,237,0.2);
                    }

                .navi li:nth-child(7),
                .navi li:nth-child(8) {
                    display: none;
                }

                .navi li a {
                    position: relative;
                    display: block;
                    box-sizing: border-box;
                    text-decoration: none;
                }

            .navi li a {
                color: rgba(200,177,84,0.75);
            }

                    .navi li a p {
                        font-size: 11px;
                        color: rgba(200,177,84,0.75);
                        text-align: center;
                    }

                        .navi li a p span {
                            display: block;
                            font-size: 14px;
                            color: rgba(200,177,84,0.75);
                        }

                    .navi li a:hover {
                        color: rgba(200,177,84,0.75);
                    }

                    .navi li a:nth-child(1)::after,
                    .navi li a:nth-child(2)::after,
                    .navi li a:nth-child(3)::after,
                    .navi li a:nth-child(4)::after,
                    .navi li a:nth-child(5)::after,
                    .navi li a:nth-child(6)::after {
                        content: '';
                        /*絶対配置で線の位置を決める*/
                        position: absolute;
                        bottom: 0;
                        left: -5%;
                        /*線の形状*/
                        width: 110%;
                        height: 2px;
                        background: rgba(200,177,84,0.75);
                        /*アニメーションの指定*/
                        transition: all .3s;
                        transform: scale(0, 1); /*X方向0、Y方向1*/
                        transform-origin: center top; /*上部中央基点*/
                    }

                    .navi li a:nth-child(1):hover::after,
                    .navi li a:nth-child(2):hover::after,
                    .navi li a:nth-child(3):hover::after,
                    .navi li a:nth-child(4):hover::after,
                    .navi li a:nth-child(5):hover::after,
                    .navi li a:nth-child(6):hover::after {
                        transform: scale(1, 1); /*X方向にスケール拡大*/
                    }
    /* #endregion */

    /* #region navi-toggle */
    .sp-navi-toggle {
        display: none;
        margin: auto 0;
        font-size: 10px;
        font-weight: bold;
        line-height: 1;
        position: absolute;
        top: 5px;
        bottom: 0;
        right: 40px;
        width: 32px;
        height: 40px;
        transition: all 0.4s;
        border: none;
        outline: none;
        background: none;
        -webkit-appearance: unset;
    }

        .sp-navi-toggle .menu {
            position: absolute;
            bottom: 0;
            left: -1%;
            display: block;
            width: 34px;
            height: 14px;
            color: rgba(200,177,84,0.75);
            /*color: #856454;*/
        }

        .sp-navi-toggle .close {
            position: absolute;
            bottom: 0;
            left: -1%;
            display: block;
            width: 34px;
            height: 14px;
            color: #FFF;
        }

        .sp-navi-toggle .close {
            display: none;
        }

        .sp-navi-toggle .bar {
            position: absolute;
            left: 0;
            width: 100%;
            height: 2px;
            background-color: rgba(200,177,84,0.75);
            /*background-color: #856454;*/
        }

            .sp-navi-toggle .bar:nth-of-type(1) {
                top: 0;
            }

            .sp-navi-toggle .bar:nth-of-type(2) {
                top: 10px;
            }

            .sp-navi-toggle .bar:nth-of-type(3) {
                top: 20px;
            }
    /* #endregion */

    /* #region close-button */
    html.sidebar-is-open .sp-navi-toggle .bar:nth-of-type(1) {
        top: 5px;
        transform: rotate(45deg);
    }

    html.sidebar-is-open .sp-navi-toggle .bar:nth-of-type(2) {
        top: 5px;
        transform: rotate(-45deg);
    }

    html.sidebar-is-open .sp-navi-toggle .bar:nth-of-type(3) {
        display: none;
    }

    html.sidebar-is-open .sp-navi-toggle .menu {
        display: none;
    }

    html.sidebar-is-open .sp-navi-toggle .close {
        display: block;
    }
    /* #endregion */

    /* #region sp-navi */

    .sp-navi-box {
        display: none;
    }

    .sp-navi {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        list-style: none;
        width: 100%;
        height: 100vh;
        font-size: 14px;
        margin: 0;
        padding: 0;
        background: rgba(0,0,0,1.00);
    }

        .sp-navi li {
            padding: 20px 0;
        }

            .sp-navi li a {
                display: block;
                box-sizing: border-box;
                text-decoration: none;
                color: #FFF;
                font-weight: bold;
                font-family: serif;
            }

                .sp-navi li a:hover {
                    text-decoration: underline;
                }

    /* #endregion */
}

@media screen and (max-width: 956px) {

    /* #region 共通 */

    /* #endregion */

    /* #region navi */

    .navi li:nth-child(4) {
        margin-right: 10px;
    }

    .navi li:nth-child(5),
    .navi li:nth-child(6){
        width:160px;
    }

    /* #endregion */

    /* #region navi-toggle */

    /* #endregion */

}

@media screen and (max-width: 820px) {

    /* #region 共通 */
    /* #region 共通 */
    header .logo {
        padding: 0;
    }

        header .logo a {
        }

    header {
        position: fixed;
        z-index: 899;
        top: 0;
        left: 0;
        width: 100%;
        padding: 10px 0 10px 0;
        background: rgba(255,255,253,0.9);
    }

        header .logo img {
            width: 200px;
            margin-top: 6px;
        }





        /* #endregion */

    /* #region navi */
        header .navi {
            display: none;
        }
    /* #endregion */

    /* #region navi-toggle */
    .sp-navi-toggle {
        display: block;
    }

    /* #endregion */

    /* #region close-button */
    html.sidebar-is-open .sp-navi-box {
        display: block;
    }

    html.sidebar-is-open {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        overflow: hidden;
        width: 100%;
    }
    /* #endregion */

    /* #region sp-navi */

    .sp-navi {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        list-style: none;
        width: 100%;
        height: 100vh;
        font-size: 14px;
        margin: 0;
        padding: 0;
        background: rgba(0,0,0,1.00);
    }

        .sp-navi li {
            padding: 20px 0;
            overflow: hidden;
        }

            .sp-navi li a {
                display: block;
                box-sizing: border-box;
                text-decoration: none;
                color: #FFF;
                font-weight: bold;
                font-family: serif;
            }

                .sp-navi li a:hover {
                    text-decoration: underline;
                }

    .navi5div {
        display: block;
        position: relative;
        width: 100%;
        height: 100%;
        overflow: hidden;
    }

    .navi5,
    .navi6 {
        display: block;
        padding-bottom: 0 !important;
        overflow: hidden;
    }

        .navi5 a p {
            float: left;
            width: 150px;
            text-align: center;
            padding: 7px 0 5px 0;
            color: rgba(200,177,84,0.75);
            border: 1px solid rgba(200,177,84,0.75);
            overflow: hidden;
        }

            .navi5 a p span {
                width: 100%;
                color: rgba(200,177,84,0.75);
                overflow: hidden;
            }

        .navi6 a p {
            float: left;
            width: 150px;
            height: 54px;
            text-align: center;
            padding: 16px 0 0 0;
            color: rgba(200,177,84,0.75);
            border: 1px solid rgba(200,177,84,0.75);
            overflow: hidden;
        }

            .navi6 a p span {
                width: 100%;
                color: rgba(200,177,84,0.75);
                overflow: hidden;
            }

    .sp-navi li:nth-child(7) {
        display: initial;
    }

        .sp-navi li:nth-child(7) span {
            float: left;
            display: inline-flex;
            margin: 0 5px;
            width: 30px;
        }

            .sp-navi li:nth-child(7) span img {
                width: 30px;
            }

    /* #endregion */

}

@media screen and (max-width: 639px) {


    /* #region 共通 */
    header .logo {
        padding: 0;
    }

        header .logo a {
        }

    header {
        position: fixed;
        z-index: 899;
        top: 0;
        left: 0;
        width: 100%;
        padding: 10px 0 10px 0;
        background: rgba(255,255,253,0.9);
    }

        header .logo img {
            width: 200px;
            margin-top: 6px;
        }





    /* #endregion */

    /* #region navi */
        header .navi {
            display: none;
        }
    /* #endregion */

    /* #region navi-toggle */
    .sp-navi-toggle {
        display: block;
    }

    /* #endregion */

    /* #region close-button */
    html.sidebar-is-open .sp-navi-box {
        display: block;
    }

    html.sidebar-is-open {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        overflow: hidden;
        width: 100%;
    }
    /* #endregion */

    /* #region sp-navi */

    .sp-navi {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        list-style: none;
        width: 100%;
        height: 100vh;
        font-size: 14px;
        margin: 0;
        padding: 0;
        background: rgba(0,0,0,1.00);
    }

        .sp-navi li {
            padding: 20px 0;
            overflow: hidden;
        }

            .sp-navi li a {
                display: block;
                box-sizing: border-box;
                text-decoration: none;
                color: #FFF;
                font-weight: bold;
                font-family: serif;
            }

                .sp-navi li a:hover {
                    text-decoration: underline;
                }
    .navi5div {
        display: block ;
        position:relative;
        width:100%;
        height:100%;
        overflow: hidden;
    }

    .navi5,
    .navi6 {
        display: block;
        padding-bottom: 0 !important;
        overflow: hidden;
    }

        .navi5 a p {
            float: left;
            width: 150px;
            text-align: center;
            padding: 7px 0 5px 0;
            color: rgba(200,177,84,0.75);
            border: 1px solid rgba(200,177,84,0.75);
            overflow: hidden;
        }

            .navi5 a p span {
                width: 100%;
                color: rgba(200,177,84,0.75);
                overflow: hidden;
            }

        .navi6 a p {
            float: left;
            width: 150px;
            height: 54px;
            text-align: center;
            padding: 16px 0 0 0;
            color: rgba(200,177,84,0.75);
            border: 1px solid rgba(200,177,84,0.75);
            overflow: hidden;
        }

            .navi6 a p span {
                width: 100%;
                color: rgba(200,177,84,0.75);
                overflow: hidden;
            }

    .sp-navi li:nth-child(7) {
        display: initial;
    }

        .sp-navi li:nth-child(7) span {
            float: left;
            display: inline-flex;
            margin: 0 5px;
            width: 30px;
        }

            .sp-navi li:nth-child(7) span img {
                width: 30px;
            }

    /* #endregion */

   
}

@media screen and (max-width: 450px) {

    /* #region 共通 */

    /* #endregion */

    /* #region PC仕様 */

    /* #endregion */

    /* #region モバイル仕様 */

    /* #endregion */
}
