@charset "utf-8";
/*------------------------------------------------------------------------------------------
*
*
    home_sp.css
*
*
------------------------------------------------------------------------------------------ */
/* --------------------------------------------------------------------------------------------------------------
*
    max-width: 640px;
*
-------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width: 640px) {

#wrap{
    margin: 0 auto;
}

/* --------------------------------------------------
*
    #mv
*
-------------------------------------------------- */
#mv{
    margin: 0 0 -5px 0;
    padding: 45px 0 5% 0;
    position: relative;
}

#mv h1{
    position: relative;
    top: 0;
    left: -10vw;
}

#mv h1 img{
    width: 95vw;
}

#mv .head_logo{
    width: 100%;
    text-align: center;
    position: absolute;
    top: 18px;
    left: 0;
    z-index: 2;
}

#mv .head_logo img{
    width: 149px;
}

#mv .badge{
    position: absolute;
    top: 55px;
    right: -5px;
}

#mv .badge img{
    width: 26.25vw;
}


/* --------------------------------------------------
*
    #yodogawa
*
-------------------------------------------------- */
#yodogawa{
    margin: 0 0 30px 0;
    text-align: center;
}

#yodogawa p{
    font-size: 14px;
    line-height: 1.857em;
    display: inline-block;
    text-align: left;
}



/* --------------------------------------------------
*
    #event_info
*
-------------------------------------------------- */
.box_line{
    width: 100%;
    margin: 15px auto;
    padding: 15px 0 20px 0;
    background-image:url(../images/parts_line_box_mid.png);
    background-size: 100%;
    background-repeat: repeat-y;
    background-position: center top;
    position: relative;
    text-align: center;
}

.box_line .ib{
    display: inline-block;
    text-align: left;
}

.box_line .inner{
    padding: 0 7.5%;
}

.box_line .s{
    font-size: 90%;
}

.box_line:before,
.box_line:after{
    content: '';
    display: block;
    width: 100%;
    height: 2.5vw;
    background-size: 100%;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    z-index: 2;
}

.box_line:before{
    background-image:url(../images/parts_line_box_top.png);
    top: -2.45vw;
}

.box_line:after{
    background-image:url(../images/parts_line_box_btm.png);
    bottom: -2.45vw;
}

.box_line h2{
    margin: 0 0 15px 0;
    font-size: 26px;
}

.box_line h2 span{
    margin: 0 0 10px 0;
    display: block;
    font-size: 14px;
}

.box_line .notes{
    font-size: 14px;
    line-height: 1.875em;
}

.box_line dl{
    margin: 0 0 10px 0;
    font-size: 14px;
    line-height: 1.8em;
    position: relative;
    white-space: nowrap;
}

.box_line dl .cl{
    clear: both;
}

.box_line dl:after{
    content: '';
    display: block;
    clear: both;
    font-size: 0;
}

.box_line dt{ clear: both; float: left;}
.box_line dd{ float: left;}

.box_line .btn_ticket{
    width: 100%;
    max-width: 357px;
    margin: 15px auto 0 auto;
}

.box_line .btn_ticket img{
    width: 100%;
    max-width: 320px;
    opacity: 1 !important;
    position: relative;
    z-index: 2;
    position: relative;
    top: -2px;
    left: -3px;
    transform: translate3d(0, 0, 0);
    transition: top .15s ease .0s, left .15s ease .0s, opacity .15s ease .0s;
}

.is_pc .box_line .btn_ticket a:hover img,
.is_sp .box_line .btn_ticket a.touch img{
    opacity: .95 !important;
    top: 0px;
    left: -1px;
    transition: top .2s ease .05s, left .2s ease .05s, opacity .2s ease .05s;
}

.box_line .btn_ticket a{
    margin: 0 auto;
    max-width: 320px;
    border-radius: 3.125vw;
    display: block;
    position: relative;
}

.box_line .btn_ticket a:before{
    content: '';
    width: 100%;
    max-width: 320px;
    height: 100%;
    border-radius: 3.125vw;
    display: block;
    background-color: #42210b;
    position: absolute;
    left: 0;
    bottom: 0;
}

.box_line dl a{
    border-bottom: 2px solid #42210b;
    transition: opacity .1s ease .0s;
}

.is_pc .box_line dl a:hover,
.is_sp .box_line dl a.touch{
    opacity: .7;
    transition: opacity .15s ease .05s;
}

#event_info{
    margin-bottom: 50px;
}


/* --------------------------------------------------
*
    .post_body
*
-------------------------------------------------- */
.post_body{
    width: 100%;
    margin: 0 auto 45px auto;
    padding: 5% 5% 0 5%;
    box-sizing: border-box;
    text-align: left;
    background-color: #FFF;
}

.post_body p{
    margin: 0 0 1.5em 0;
    line-height: 1.875em;
}

.post_body a{
    padding: 0 0 2px 0;
    border-bottom: 1px solid #42210b;
    transition: opacity .1s ease .0s;
}

.is_pc .post_body a:hover,
.is_sp .post_body a.touch{
    opacity: .7;
    transition: opacity .15s ease .05s;
}

.post_body .pic{
    margin: 25px 0 0 0;
    line-height: 0;
    text-align: left;
    position: relative;
    left: 0;
}

.post_body .pic img{
    width: 100%;
}

.section_shikake{
    width: 100%;
    margin: 0 auto 30px auto;
    padding: 20px 0 0 0;
    box-sizing: border-box;
    border: 3px solid #ffff00;
    background-color: #fff;
    text-align: left;
}

.section_shikake h3{
    margin: 0 0 20px 0;
    text-align: center;
}

.section_shikake h3 img{
    width: 96%;
    max-width: 420px;
}

.section_shikake .inner{
    padding: 0 5%;
}

.section_shikake .inner p{
    margin: 0 0 25px 0;
    line-height: 1.875em;
}

.section_shikake .inner_box{
    padding: 15px 10px;
    margin: -5px 5% 30px 5%;
    border: 1px solid #42210b;
    box-sizing: border-box;
    background-color: #ffff00;
    text-align: center;
}

.section_shikake .inner_box p{
    display: inline-block;
    text-align: left;
    line-height: 2em;
    white-space: nowrap;
}

.section_shikake.n05 .img{
    margin: -15px 0 5px 0;
    text-align: center;
}

.section_shikake.n05 .img img{
    width: 90%;
    max-width: 320px;
}

.section_shikake.n07 .img{
    margin: -15px 0 30px 0;
    text-align: center;
}

.section_shikake.n07 .img img{
    width: 80%;
    max-width: 260px;
}

.afterword{
    max-width: 360px;
    margin: 0px auto 40px auto;
    font-size: 14px;
    line-height: 2em;
    display: block;
    text-align: left;
    position: relative;
    left: 0;
}

#btm_info{
    margin: 0 auto 10% auto;
    display: inline-block;
}

.profile{
    margin: 0 0 -25px 0;
}

.profile a{
    padding: 0 0 2px 0;
    border-bottom: 1px solid #42210b;
    transition: opacity .1s ease .0s;
}

.is_pc .profile a:hover,
.is_sp .profile a.touch{
    opacity: .7;
    transition: opacity .15s ease .05s;
}

.profile .pic{
    margin: 30px 0 -15px 0;
    position: relative;
    left: -2.5%;
}

.profile .pic img{
    width: 105%;
    max-width: 420px;
}

.profile h3{
    margin: 35px 0 10px 0;
    font-size: 16px;
    text-align: left;
}

.profile p{
    margin: 0 0 2em 0;
    font-size: 13px;
    line-height: 1.875em;
    text-align: left;
}

/* --------------------------------------------------
*
    .banner_list
*
-------------------------------------------------- */
.banner_list{
    margin: 35px 0;
    text-align: center;
    position: relative;
    z-index: 10;
}

.banner_list p{
    margin: 0 0 15px 0;
}

.banner_list p:last-child{ margin: 0;}

.banner_list img{
    width: 80%;
    max-width: 400px;
}


/* --------------------------------------------------
*
    footer
*
-------------------------------------------------- */
footer{
    padding: 35px 0;
    background-color: #85decf;
    position: relative;
    text-align: center;
}

footer ul{
    max-width: 300px;
    margin: 0 auto 25px auto;
    letter-spacing: -.40em;
}

footer li{
    width: 25%;
    text-align: center;
    display: inline-block;
    letter-spacing: normal;
}

footer li img{
    width: auto;
    height: 40px;
}

footer .copyright img{
    width: 200px;
}

footer .credit{
    font-size: 11px;
}



} /* ----- max-width: 640px ----- */
