/* --------------------------------
    Foundation
-------------------------------- */
body
{
    font-family: YuGothic, 'Yu Gothic Medium', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
    position: relative;

}
.container{
    max-width: 1920px;
    margin: auto; 
    background:#ffffff;
    color:#000000;
}
header .logo img{
    width: 200px;
    position: absolute;
    top:0;
    left: 0;
}
footer{
    margin-top:40px; 
    text-align: center;
}
.inner{
    margin: 0 10%;
    overflow: hidden;
}


a:link,
a:visited
{
    color: #deb816;
}

a:hover,
a:active
{
    opacity: .8;
}

img
{
    width: 100%;
}

@media only screen and (max-width: 768px){
    .main-banner ul li{
        display:block;
        width: 100%;
        margin: 10px 0;
    }
}

h2.ttl {
    font-size:4em;
    margin: 10px 0;
    color: #000000;
    text-shadow:2px 2px 0 #d7b45c, -2px -2px 0 #d7b45c,
                  -2px 2px 0 #d7b45c, 2px -2px 0 #d7b45c,
                  0px 2px 0 #d7b45c,  0-2px 0 #d7b45c,
                  -2px 0 0 #d7b45c, 2px 0 0 #d7b45c;
    border-bottom: 1px solid #000000; 
}
.artist{
    overflow: hidden;
    margin: 40px 0;
}
.artist .artist_col2{
    width: 50%;
    float: left;
    overflow: hidden;
}
.artist .artist_col2 li img{
    width: 250px;
}

.schedule , .ticket{
    display: inline-block;
    width: 48%;
    height: auto;
    float:left;
    overflow: hidden;
    margin: 40px 0;

}
.schedule {
    margin-right:2%;
}
.ticket {
    margin-left:2%;
}
.information{
    display: inline-block;
    width: 100%;
    margin: 40px 0;
}
.information .caption {
    margin: 40px auto; 
    text-align: center;
}
.information .caption p{
    display: inline-block;
    padding: 8px;
    background: #D1475E;
    border: 1px solid #d7b45c;
    color: #ffffff;
    font-size: 1.5em;
}
.archive {
    width: 100%;
    margin: 40px 0; 
}
.archive ul{
    text-align: center;
    margin: 0 auto 30px auto;
    overflow: hidden;
    background: #f0f0f0;
}
.archive ul li {
    display: inline-block;
    float: left;
    width: 23%;
    margin: 5px 1%;
}
.subttl {
    display: inline-block;
    width: 250px;
    padding: 4px;
    background: #2B9E91;
    border: 1px solid #d7b45c;
    color: #ffffff;
    margin: 4px 0;

}
.txt{
    line-height: 24px;
}
.goods ul{
    overflow: hidden;
    text-align: center;
    margin-bottom: 20px;
}
.goods ul li{
    display: inline-block;
    width: 40%;
    padding: 1em;
    border: 1px solid #aaaaaa;
}
.goods ul li .image img{
    max-width: 100%;
}
.goods ul li .txt{
    margin-top:20px; 
}
.goods ul li .name{
    font-size:1.5em;
}

@media only screen and (max-width: 768px){
    .inner{
        margin: 0 4%;
        overflow: hidden;
    }
    header .logo {
        width: 100%;
        display: block;
        background: #000000;
    }
    header .logo img{     
        position: relative;
        //display: block;
        width: 25%
    }
    h2.ttl{
        //display: inline-block;
        font-size: 2.5em;
        max-width: 100%;
    }
    .artist{
        margin: 20px 0;
    }
    .artist .artist_col2{
        width: 100%;
    }
    .artist .artist_col2 li img{
        display:block;
        width: 80%;
        margin: 10px auto;
    }
    .schedule , .ticket{
        display: block;
        width: 100%;
        overflow: hidden;
        margin: 20px 0;
    }
    .information{
        margin: 20px 0;
    }
    .information .caption {
        margin: 10px auto; 
        text-align: center;
    }
    .information .caption p{
        display: block;
        padding: 4px;
        font-size: 1.2em;
    }
    .goods ul li{
        width: 90%;
    }
    .archive ul li {
        display: inline-block;
        float: left;
        width: 45%;
        margin: 6px 2.5%;
    }
}