@charset "UTF-8";

* {
    margin: 0;
    padding: 0;
}
@font-face {
    font-family: 'jiyuchoregular';
    src: url('./font/jiyucho-webfont.woff2') format('woff2'),
    url('./font/jiyucho-webfont.woff') format('woff'),
    url('./font/jiyucho-webfont.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;

}

a{text-decoration: none}
ul,ol,li,h1,h2,h3,h4,h5,h6,dl{margin: 0;padding: 0;border: 0;outline: 0;font-size: 100%;vertical-align: baseline;font-weight: normal}
div{margin: 0;padding: 0}
ol,ul{list-style: none}
a img,img{border: none}

html {
    font-size: 25px;
}
body,html {
    width: 100%;
    height: auto;
    min-width: 1024px;
    font-family: 'jiyuchoregular', 'じゆうちょうフォント', -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, sans-serif;
    -webkit-text-size-adjust: 100%;
    box-sizing: border-box;
    color: #000;
    background-color: #fff;
}

img {
    width:100%;
    max-width: 100%;
    height: auto;
}

a {
    color: #ff467b;
}
a:hover {
    color: #ff467b;
    text-decoration: underline;
}

.inview0 {
    opacity: 0;
    transition: .8s;
}
.inview1 {
    opacity: 1;
    transition: .8s;
}

.clearfix:after {
    display:block;
    clear:both;
    height:0;
    visibility:hidden;
    content:".";
}
#exterior_wrapper {
    position:relative;
    top: 0;
    width: 100%;
    height: auto;
    overflow: hidden;
}
section {
    position: relative;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 50px 0;
    text-align: center;
}
.inner {
    position: relative;
    top: 0;
    width: 1024px;
    max-width: 1024px;
    margin: 0 auto;
}

header {
    position: fixed;
    top: 0;
    width: 100%;
    height: 90px;
    text-align: center;
    background: #ff468f url("images/menu_bg.png") repeat;
    z-index: 1;
}

#menu {
    position: relative;
    width: 90%;
    height: 100%;
    min-width: 908px;
    display: inline-block;
}
#menu li {
    position: relative;
    width: auto;
    height: 90px;
    float: left;
    overflow: hidden;
}
.caption {
    margin-bottom: 43px;
}
.caption img {
    width: 100%;
}

#top_section {
    height: 2177px;
    padding: 0;
    background: #fff url("images/top_bg.jpg") repeat;
}
#top_section .top_star {
    position: absolute;
    top: 0;
    left: -50px;
    width: 109.66%;
}
#top_section #top_chara {
    position: relative;
    top: 110px;
    width: 100%;
}
#top_section #top_catch {
    position: relative;
    top: -1263px;
    width: 79.68%;
}
#top_section #event_logo {
    position: relative;
    top: -600px;
    width: 80.96%
}
#top_section .event_catch {
    position: relative;
    top: -590px;
    width: 89.16%;
}
#top_section .caption {
    position: relative;
    top: -564px;
}

#event_info_section {
    border-bottom: solid #b38776 10px;
    background: #fbfadc url("images/event_bg.png") top center repeat;
}
#event_info_section .event_bg {
    position: absolute;
    top: -98px;
    left: 0;
    max-width: initial;
    width: 100%;
}
#event_info_section .event_info {
    position: relative;
    top: -30px;
    margin: 0 auto;
}

#ticket_section {
    background: #fbfadc url("images/ticket_bg.jpg") top center repeat;
    height: 4360px;
}
#ticket_section .inner {
    height: 4360px;
}
#ticket_section .ticket_close {
    position: absolute;
    top: 110px;
    left: 50%;
    width: 72.4%;
    margin-left: -36.18%;
}

#ticket_section .ticket_box {
    position: relative;
    width: 91.113%;
    height: auto;
    margin: 0 4.4435% 50px;
    float: left;
}
#ticket_section .ticket_box li {
    position: relative;
    line-height: 0;
}
#ticket_section .ticket_box .ticket_info_box {
    position: relative;
    width: 100%;
    height: 795px;
    background-color: #ff628f;
    display: inline-block;
}
#ticket_section .ticket_box .ticket_info_box_ippan {
    position: relative;
    width: 100%;
    height: 1180px;
    background-color: #ff628f;
    display: inline-block;
}
#ticket_section .ticket_box_border_top {
    position: relative;
}
#ticket_section .ticket_box_border_bottom {
    position: relative;
}
#ticket_section .ticket_title_bg {
    position: relative;
    width: 676px;
}
#ticket_section .ticket_title {
    position: relative;
    top: -38px;
    color: #ff467b;
    font-size: 1.7916rem;
}
#ticket_section .ticket_info {
    position: relative;
    top: 24px;
    margin-bottom: 10px;
    width: 876px;
}
#ticket_section .ticket_url {
    position: relative;
    top: -142px;
    color: #ffff29;
    font-size: 1.7916rem;
    font-weight: bold;
    font-family: 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro W4', 'ヒラギノ角ゴ Std W4', 'Meiryo', "メイリオ", sans-serif;
}
#ticket_section .ticket_url a {
    color: #ffff29;
}
#ticket_section .ticket_ippan {
    position: relative;
    top: 30px;
    width: 876px;
    margin-bottom: 15px;
    color: #fff;
    line-height: 1.3;
    font-size: 1.416666rem;
    font-weight: bold;
    font-family: 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro W4', 'ヒラギノ角ゴ Std W4', 'Meiryo', "メイリオ", sans-serif;
}
#ticket_section .ticket_url_ippan {
    color: #ffff29;
}
#ticket_section .ticket_url_ippan a {
    color: #ffff29;
}
#ticket_section .ticket_term {
    position: relative;
    top: 18px;
    width: 876px;
}
#ticket_section .ticket_term_text {
    position: relative;
    top: 58px;
    color: #ffff29;
    font-size: 1.416666rem;
}

#goods_section {
    background-color: #c399d5;
    color: #fff;
}
#goods_section .goods_contents {
    position: relative;
    width: 89%;
    margin: 15px auto 50px;
    font-size: 1.416666rem;
    line-height: 1.2;
    font-family: 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro W6', 'ヒラギノ角ゴ Std W6', 'Meiryo', "メイリオ", sans-serif;
}
.goods_contents_info {
    width: 83%;
    margin: 0 auto;
    font-size: 80%;
    text-align: left;
}
#goods_section .goods_contents img {
    max-width: 760px;
    margin: 30px auto;
}
#goods_section .link_button {
    width: 53%;
    margin: 40px 0 100px;
}
.goods_info_text {
    width: 89%;
    margin: 80px auto 50px;
    text-align: left;
    font-size: 90%;
    font-family: 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro W4', 'ヒラギノ角ゴ Std W4', 'Meiryo', "メイリオ", sans-serif;
    color: #FFFF93;
    line-height: 1.2;
}

#goods_movie_wrapper {
    width: 89%;
    margin: 15px auto 50px;
}

#access_section {
    background-color: #fff;
}
#access_section .access_url {
    color: #ff467b;
}
#access_section .access_url a {
    color: #ff467b;
}

#guideline_section {
    background: #fbfadc url("images/ticket_bg.jpg") top center repeat;
}
.guideline_text {
    position: relative;
    width: 89%;
    text-align: left;
    font-weight: bold;
    margin: 0 auto;
    font-family: 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro W4', 'ヒラギノ角ゴ Std W4', 'Meiryo', "メイリオ", sans-serif;
}
.guideline_text .font-middle {
    font-size: 24px;
    line-height: 1.25;
    color: #b3467b;
}


#map {
    width: 96%;
    height: 600px;
}
.red {
    color: red;
}
.yellow {
    color: #ffff00;
}
.pink {
    color: #e7467b;
}

footer {
    position: relative;
    width: 100%;
    height: auto;
    padding-top: 25px;
    text-align: center;
    color: #656565;
    background-color: #fff;
}
footer p {
    height: auto;
    text-align: center;
    font-size: 0.5rem;
}
.footer_text {
    color: #e7467b;
    line-height: 1.8;
    margin-bottom: 60px;
    font-family: 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro W4', 'ヒラギノ角ゴ Std W4', 'Meiryo', "メイリオ", sans-serif;
}
.footer_logo {
    width: 45.21%;
    margin-bottom: 60px;
}


/* ----------------------------------------------------- */

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

    body {
        min-width: 320px;
        text-align: center;
    }
    #exterior_wrapper {
        width: 100%;
        margin: 0 auto;
    }
    .inner {
        min-width:320px;
    }
    #top_section {
        background-size: 416px 416px;
    }
    #ticket_section {
        background-size: 176px 176px;
    }
    #guideline_section {
        background-size: 176px 176px;
    }

    #map {
        height: 600px;
    }

}


/* ----------------------------------------------------- */

@media screen and (min-width: 481px) and (max-width: 800px) {

    body {
        min-width: 480px;
        text-align: center;
    }
    #exterior_wrapper {
        width: 100%;
        margin: 0 auto;
    }
    .inner {
        min-width: 480px;
    }


}
