﻿@charset "UTF-8";

@media (max-width: 1023px) {
    body {
    }

    .container {
        padding: 40px 0 0 0;
    }

    /* header. */
    .header {
        min-height: 64px;
        top: 12px;
        left: 8px;
        width: calc(100% - 16px)
    }

    .title-head {
        min-width: 1px;
        max-width: 100%;
        width: 100%;
        height: 50px;
        min-height: 42px;
        padding: 0;
        font-size: 24px;
        line-height: 1.16666666;
    }

        .title-head picture {
            width: 100%;
        }

        .title-head p {
            padding: 5px 90px 5px 60px;
            min-width: 100%
        }

    .title-head--exc p {
        padding: 5px 90px 5px 32px;
    }

    .heading {
        padding: 10px 10px 0 10px
    }

        .heading h2 {
            margin-bottom: 10px
        }

    .img-head {
        width: 100%;
        height: auto;
        display: block;
        margin: 0;
        max-width: 100%;
    }
    /* footer image. */
    img.img-footer {
        width: auto;
        height: auto;
        max-width: 100%;
        margin: 0 auto;
    }
    /* nav. */
    .nav-head {
        padding: 0;
        min-height: 36px;
        width: auto;
        top: 13px
    }

        .nav-head ul {
            width: 100%;
            padding-right: 0px;
            margin: 0;
            font-size: 11px;
        }

            .nav-head ul li {
                padding: 0;
                vertical-align: middle;
                line-height: 1.5em;
                height: 32px;
            }

        .nav-head span {
            padding: 0em;
        }

            .nav-head span:before {
                line-height: 1em;
            }

        .nav-head a {
            padding: .333em;
        }

        .nav-head ul > li.li-user {
            padding-left: 4em;
            width: auto;
            display: none
        }

            .nav-head ul > li.li-user span.myid {
                padding-left: 2em;
                width: auto;
                max-width: 300px;
                display: block;
                text-overflow: ellipsis;
                white-space: nowrap;
                overflow: hidden;
                text-align: left;
            }

        .nav-head ul > li.li-language {
            text-align: right;
        }

        .nav-head select.select-language {
            height: 24px;
            padding: 0 1.5em 0 .35em
        }

        .nav-head table,
        .nav-head thead,
        .nav-head tr,
        .nav-head td {
            display: block
        }

        label.custom-select::after {
            margin-top: -5px;
        }

        .content-hidden {
            display: none;
        }


    /* globalnav. */
    .nav {
        width: auto;
        display: block;
        position: fixed;
        bottom: inherit;
        top: 0;
        padding-top: 0;
        left: 0;
        z-index: 12;
        width: 100%;
        background-color: transparent;
        height: auto;
        padding-bottom: 0;
        -webkit-transition: 0.5s ease-in-out;
        -moz-transition: 0.5s ease-in-out;
        transition: 0.5s ease-in-out;
        margin: 0;
    }

        .nav ul {
            width: auto;
            display: block;
            height: auto;
            -webkit-transition: 0.5s ease-in-out;
            -moz-transition: 0.5s ease-in-out;
            transition: 0.5s ease-in-out;
            top: -100%;
            position: relative;
            border: none;
            background-color: transparent;
            padding-right: 0
        }

            .nav ul li {
                display: block;
                border-left: none;
                padding: 1em 0 0 0;
                display: none;
                -webkit-transition: 0.5s ease-in-out;
                -moz-transition: 0.5s ease-in-out;
                transition: 0.5s ease-in-out;
            }

    /* toggle button. */
    #nav-toggle {
        display: none;
        position: fixed;
        left: 10px;
        top: 95px;
        width: 30px;
        height: 30px;
        cursor: pointer;
        z-index: 101;
        display: block;
        padding: 0;
        display: none;
    }

        #nav-toggle div {
            position: relative;
        }

        #nav-toggle span {
            display: block;
            position: absolute;
            height: 4px;
            width: 100%;
            left: 0;
            -webkit-transition: 0.35s ease-in-out;
            -moz-transition: 0.35s ease-in-out;
            transition: 0.35s ease-in-out;
        }

            #nav-toggle span:nth-child(1) {
                top: 0;
            }

            #nav-toggle span:nth-child(2) {
                top: 8px;
            }

            #nav-toggle span:nth-child(3) {
                top: 16px;
            }

    .nav.open ul li a {
        text-align: center;
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 1;
    }

    /* #nav-toggle animation. */
    .open #nav-toggle span:nth-child(1) {
        top: 8px;
        -webkit-transform: rotate(315deg);
        -moz-transform: rotate(315deg);
        transform: rotate(315deg);
    }

    .open #nav-toggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }

    .open #nav-toggle span:nth-child(3) {
        top: 8px;
        -webkit-transform: rotate(-315deg);
        -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
    }

    .open #global-nav {
        /* #global-nav top + #mobile-head height. */
        -moz-transform: translateY(556px);
        -webkit-transform: translateY(556px);
        transform: translateY(556px);
    }

    /* #global-nav スライドアニメーション */
    .nav.open {
        height: 100%;
        overflow: auto;
        top: 0;
        padding-top: 20px;
    }

        .nav.open ul {
            top: 0;
        }

    .nav-ul_01 li:first-child {
        padding-top: 2.5em;
    }

    .nav.open ul li,
    #nav-toggle {
        display: block;
    }

    .nav li:before {
        display: none;
    }

    /* toppage content. */
    .mv {
        width: calc(100% - 48px);
        margin: 96px auto 0 auto;
    }

    .hero {
        height: 480px;
        margin: 0 auto 0px auto;
        background-size: contain;
        padding: 0;
    }
    /* login */
    .login {
        position: static;
        bottom: auto;
        right: auto;
        width: 100%;
        margin-bottom: 8px
    }

    .login-body {
        padding: 24px
    }

        .login-body fieldset {
            flex-direction: column;
            width: 100%;
        }

            .login-body fieldset .form-input,
            .login-body fieldset .btn {
                width: 100%;
            }

            .login-body fieldset .form-input {
                padding: 0;
                margin-bottom: 16px
            }
    /*content*/
    .index-main .index-section {
        padding: 48px 24px;
        width: calc(100% - 48px );
    }

    .index-free-inner {
        padding: 0 32px
    }

    .index-main .index-section.index-contact {
        padding: 32px 56px;
        width: 100%
    }

    .index-contact-inner {
        width: auto;
        flex-direction: column
    }

    .index-contact-box {
        padding: 0
    }

    .title-contact {
        padding: 8px 16px;
        margin-bottom: 16px
    }

        .title-contact span {
            font-size: 17px
        }

    .title-link, .title-info, .index-free .title-free-4 {
        font-size: 20px;
        font-size: 2rem;
        line-height: 1;
        padding: 16px 24px;
        margin: 0 0 32px 0
    }
    /*link*/
    .li-link_index {
        padding: 0 8px;
        margin: 0 0 -24px 0
    }

        .li-link_index li {
            width: calc(100% / 2);
            padding: 0 24px;
            margin: 0 0 24px 0
        }



    /*info*/
    .li-info_index li a {
        padding: 10px 8px
    }

    .li-info_index dl {
        display: block;
    }

        .li-info_index dl dt {
            padding: 0 0 5px 0;
        }

        .li-info_index dl dd {
            padding: 0;
        }

    .info-id {
        border-right: none;
        margin-right: 0;
        line-height: 18px;
        height: 18px
    }
    /* =======================================================
EVENT-DETAIL
======================================================= */
    .event-detail {
        width: 100%;
        height: auto;
    }

    .event-detail_inner {
        height: auto;
        padding: 32px
    }

    .event-ttl {
        font-size: 20px;
        margin-bottom: 16px
    }

    .ui-dialog {
        width: 95% !important;
        left: 50%;
        top: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    }
    /* =======================================================
Venue Vote
======================================================= */
    .VenueVoteLogo {
        max-width: 310px;
        max-height: 100px;
        width: auto;
        height: auto;
        display: block;
    }
    /*header*/
    .VenueHeader {
        margin-bottom: 20px;
        flex-direction: column;
        align-items: flex-start;
    }
    /*待機メッセージ*/
    .VoteWord {
        font-size: 18px;
        text-align: center;
    }
    /*end*/
}
