@charset "UTF-8";

/* -------------------------------------------------------------------------------------------------
#p-sections
------------------------------------------------------------------------------------------------- */

#p-sections {
    padding-top: 120px;
}

.p-sections_block_slide {
    margin: 120px 0 0 0;
}

.p-sections_block {
    max-width: 240px;
    margin: 0 auto;
}

.p-sections_block_img {
    position: relative;
    padding-bottom: 100%;
    margin: 0 0 60px 0;
}

.p-sections_block_img .c-img_cover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.p-sections_block_text {}

.p-sections_block_title {
    font-size: 24px;
    color: #000;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.15em;
    margin: 0 0 23px 0;
}

.p-sections_block_lead {
    font-size: 16px;
    line-height: 2.375;
    letter-spacing: 0.12em;
}


/* sp */
@media screen and (max-width: 700px) {

    #p-sections {
        padding-top: 110px;
    }

    .p-sections_block_slide {
        margin: 110px 0 0 0;
    }

    .p-sections_block {
        /*width: 240px;*/
    }

    .p-sections_block_img {
        position: relative;
        padding-bottom: 100%;
        margin: 0 0 33px 0;
    }

    .p-sections_block_img .c-img_cover {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .p-sections_block_text {}

    .p-sections_block_title {
        font-size: 18px;
        margin: 0 0 14px 0;
    }

    .p-sections_block_lead {
        font-size: 14px;
        line-height: 2.71;
    }

}

/* -------------------------------------------------------------------------------------------------
#p-highlight
------------------------------------------------------------------------------------------------- */

#p-highlight {}

.p-highlight_vision_wrap {
    margin-top: 72px;
    margin-bottom: 60px;
}

/* .p-h_block01 */

.p-h_block01 {}

.p-h_block01 .c-art_block {
    text-align: right;
}

.p-h_block01_text01 {
    top: 0;
    left: 50px;
}

.p-h_block01_text02 {
    bottom: 30px;
    right: calc(53.8% + 60px);
}

.p-h_block01_img {
    width: 53.8%;
    margin: 0 0 0 auto;
}

.p-h_block01_img .c-art_block_img_in {
    padding-bottom: 149.8%;
}

/* sp */
@media screen and (max-width: 900px) {

    #p-highlight {}

    .p-h_block01 {
        text-align: right;
        padding: 0 0 0 25px;
    }

    .p-h_block01 .c-art_block {
        text-align: right;
    }

    .p-h_block01_text01 {
        margin: 0 0 55px 0;
    }

    .p-h_block01_text02 {
        text-align: right;
        margin: 35px 0 0 0;
        padding: 0 0 0 60px;
    }

    .p-h_block01_img {
        width: 100%;
        padding: 0 0 0 60px;
    }

}

/* .p-h_block02 */

.p-h_block02 {}

.p-h_block02 .c-art_block {}

.p-h_block02_text01 {
    top: 60px;
    left: calc(54.32% + 60px);
}

.p-h_block02_img {
    width: 54.32%;
}

.p-h_block02_img .c-art_block_img_in {
    padding-bottom: 100%;
}

/* sp */
@media screen and (max-width: 900px) {


    .p-h_block02 {}

    .p-h_block02 .c-art_block {}

    .p-h_block02_text01 {
        padding: 0 85px 0 0;
    }

    .p-h_block02_img {
        padding: 0 85px 0 0;
        margin: 0 0 37px 0;
        width: 100%;
    }

}

/* .p-h_block03 */

.p-h_block03 {}

.p-h_block03 .c-art_block {
    display: block;
    max-width: 980px;
    margin: 0 auto;
}

.p-h_block03_text01 {
    position: static;
    margin: 57px 0 0 100px;
}

.p-h_block03_img {
    width: 100%;
}

.p-h_block03_img .c-art_block_img_in {
    padding-bottom: 55.9%;
}



/* sp */
@media screen and (max-width: 900px) {

    .p-h_block03 {}

    .p-h_block03 .c-art_block {}

    .p-h_block03_text01 {
        position: static;
        margin: 43px 0 0 43px;
    }

    .p-h_block03_img {
        width: auto;
        margin: 0 -50px;
    }

}

@media screen and (max-width: 700px) {
    .p-h_block03_img {
        margin: 0 -25px;
    }
}

/* .p-h_block04 */

.p-h_block04 {}

.p-h_block04 .c-art_block {
    display: block;
    /*	max-width: 1180px;  */
    margin: 0 auto;
}

.p-h_block04_text01 {
    position: static;
    margin: 57px 0 0 100px;
}

.p-h_block04_img {
    width: 100%;
}

.p-h_block04_img .c-art_block_img_in {
    padding-bottom: 44.0%;
}



/* sp */
@media screen and (max-width: 900px) {

    .p-h_block04 {}

    .p-h_block04 .c-art_block {}

    .p-h_block04_text01 {
        position: static;
        margin: 43px 0 0 43px;
    }

    .p-h_block04_img {
        width: auto;
        margin: 0 -50px;
    }

}

@media screen and (max-width: 700px) {
    .p-h_block04_img {
        margin: 0 -25px;
    }
}

/* .p-h_block05 */

.p-h_block05 {}

.p-h_block05 .c-art_block {
    display: block;
    max-width: 1180px;
    margin: 0 auto;
}

.p-h_block05_text01 {
    position: static;
    margin: 57px 0 0 100px;
}

.p-h_block05_img {
    width: 100%;
}

.p-h_block05_img .c-art_block_img_in {
    padding-bottom: 33.9%;
}



/* sp */
@media screen and (max-width: 900px) {

    .p-h_block05 {}

    .p-h_block05 .c-art_block {}

    .p-h_block05_text01 {
        position: static;
        margin: 43px 0 0 43px;
    }

    .p-h_block05_img {
        width: auto;
        margin: 0 -50px;
    }

}

@media screen and (max-width: 700px) {
    .p-h_block05_img {
        margin: 0 -25px;
    }
}


/* -------------------------------------------------------------------------------------------------
#p-goodslist
------------------------------------------------------------------------------------------------- */

#p-goodslist {}


/* .p-g_block01 */

.p-g_block01 {}

.p-g_block01 .c-art_block {
    justify-content: flex-start;
}

.p-g_block_text {
    width: 100%;
    max-width: 540px;
    margin: 50px auto 0;
    font-size: 16px;
    line-height: 2.375;
    letter-spacing: 0.012em;
}


.p-g_block01_text01 {
    left: calc(50% - 270px);
    margin: 0 auto;
}

.p-g_block01_img {
    width: 100%;
    margin: 0 0;
}

#p-goodslist .c-lead_text_wrap {
    margin-bottom: 90px;
}

.p-g_block01_img .c-art_block_img_in {
    padding-bottom: 50%;
}

.p-g_block01_text01 .c-art_block_text_in {
    width: 100%;
    max-width: 540px;
    margin: 50px auto 0;
}

/* sp */
@media screen and (max-width: 900px) {

    #p-goodslist {}

    .p-g_block01_text01 {
        width: auto;
        padding: 0 0 0 0;
        margin: 30px 0 0 0;
    }

    .p-g_block01_text01 .c-art_block_text_in {
        width: 100%;
        max-width: 325px;
        display: block;
    }

    .p-g_block01_img {
        width: auto;
        margin: 0 auto 0;
        padding: 0;
    }

    #p-goodslist .c-lead_text_wrap {
        margin-bottom: 80px;
    }

}

@media screen and (max-width: 700px) {
    .p-g_block01_img {
        margin: 0;
    }
}

/* -------------------------------------------------------------------------------------------------
#p-eventinfo
------------------------------------------------------------------------------------------------- */

#p-eventinfo {}

.p-event_block_list_wrap {
    margin: 90px auto 0 auto;
    max-width: 1010px;
}

.p-event_block_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 -30px -90px 0;
}

.p-event_block_list_item {
    padding: 0 30px 90px 0;
    width: 50%;
}

.p-event_block {
    max-width: 420px;
}

.p-event_block_img {
    position: relative;
    padding-bottom: 57.2%;
    margin: 0 0 38px 0;
}

.p-event_block_img .c-img_cover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.p-event_block_text {}

.p-event_block_title {
    font-size: 16px;
    color: #000;
    font-weight: 700;
    letter-spacing: 0.15em;
    line-height: 2.5;
    margin: 0 0 15px 0;
}

.p-event_block_lead {
    font-size: 16px;
    line-height: 2.375;
}

.p-event_block_btn_area {
    margin: 43px 0 0 0;
}


.p_twitter_widget_wrap {
    margin: 100px 0 0 0;
    text-align: center;
}

.p_twitter_widget {
    max-width: 582px;
    margin: 0 auto;
}

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

    .p-event_block_list_item {
        width: 50%;
    }

    .p-event_block_list_wrap {
        max-width: 580px;
    }

    .p-event_block_title {
        font-size: 18px;
    }

    .p-event_block_lead {
        font-size: 14px;
    }

}


/* sp */
@media screen and (max-width: 700px) {

    #p-eventinfo {}

    .p-event_block_list_wrap {
        margin: 90px auto 0 auto;
        max-width: 240px;
    }

    .p-event_block_list {
        margin: 0 0px -60px 0;
    }

    .p-event_block_list_item {
        padding: 0 0px 60px 0;
        width: 100%;
    }

    .p-event_block {
        max-width: 240px;
    }

    .p-event_block_btn_area {
        margin: 20px 0 0 0;
    }

    .p_twitter_widget_wrap {
        margin: 50px 0 0 0;
    }

}

/* -------------------------------------------------------------------------------------------------
#p-message
------------------------------------------------------------------------------------------------- */

#p-message {}


.p-message_block_wrap {
    margin: 86px 0 0 0;
}

.p-message_block {
    max-width: 540px;
    margin: 0 auto;
}

.p-message_block_img {
    text-align: center;
    margin: 0 0 80px 0;
}

.p-message_block_text {
    font-size: 16px;
    line-height: 2.375;
    letter-spacing: 0.012em;
}

.p-message_block_name {
    display: flex;
    justify-content: flex-end;
    margin: 22px 0 0 0;
}

.p-message_block_name figure {
    margin: 0 -40px 0 0;
}

/* sp */
@media screen and (max-width: 700px) {

    #p-message {}

    .p-message_block_wrap {
        margin: 45px 0 0 0;
    }

    .p-message_block {
        max-width: 270px;
        margin: 0 auto;
    }

    .p-message_block_img {
        text-align: center;
        margin: 0 0 35px 0;
    }

    .p-message_block_text {
        font-size: 14px;
        line-height: 2.71;
    }

    .p-message_block_name {
        margin: 18px 0 0 0;
    }

    .p-message_block_name figure {
        margin: 0 -25px 0 0;
    }

}

/* -------------------------------------------------------------------------------------------------
#p-ticketinfo
------------------------------------------------------------------------------------------------- */

#p-ticketinfo {}

.p-ticketinfo_table_area {
    margin: 83px 0 0px 0;
}

.p-ticketinfo_table_wrap {
    max-width: 820px;
    margin: 0 auto;
}

.p-ticketinfo_table_sp {
    display: none;
}

.p-ticketinfo_table_pc {}

.p-ticketinfo_table {
    width: 100%;
    line-height: 1.66;
    font-size: 24px;
    letter-spacing: 0.15em;
}

.p-ticketinfo_table tr th,
.p-ticketinfo_table tr td {
    text-align: center;
    vertical-align: middle;
    padding: 20px 30px;
    border-right: 1px solid #b5b5b6;
    border-bottom: 1px solid #b5b5b6;
}

.p-ticketinfo_table tr th:last-child,
.p-ticketinfo_table tr td:last-child {
    border-right: none;
}

.p-ticketinfo_table thead tr th,
.p-ticketinfo_table thead tr td {
    height: 80px;
}

.p-ticketinfo_table tbody tr th,
.p-ticketinfo_table tbody tr td {
    height: 200px;
}

.p-ticketinfo_table tbody tr th {
    width: 160px;
    white-space: nowrap;
}

.p-ticketinfo_table tbody tr th span {
    display: inline-block;
    vertical-align: bottom;
    text-align: left;
}

.p-ticketinfo_table tbody tr td {
    color: #000;
    font-weight: 700;
}


.p-ticketinfo_table_check_wrap {
    margin: 47px 0 0 0;
    display: flex;
    justify-content: center;
}

.p-ticketinfo_table_check {
    font-size: 16px;
    letter-spacing: 0.12em;
    line-height: 2.375;
}

.p-ticketinfo_table_check li {
    position: relative;
    padding: 0 0 0 1.25em;
}

.p-ticketinfo_table_check li:after {
    content: "※";
    position: absolute;
    top: 0;
    left: 0;
}

/* sp */
@media screen and (max-width: 700px) {

    #p-ticketinfo {}

    .p-ticketinfo_table_area {
        margin: 50px 0 0 0;
    }

    .p-ticketinfo_table_wrap {
        max-width: 275px;
        margin: 0 auto;
    }

    .p-ticketinfo_table_sp {
        display: block;
    }

    .p-ticketinfo_table_pc {
        display: none;
    }

    .p-ticketinfo_table {
        width: 100%;
        font-size: 14px;
        letter-spacing: 0.12em;
    }

    .p-ticketinfo_table tr th,
    .p-ticketinfo_table tr td {
        text-align: left;
        vertical-align: middle;
        padding: 20px 0 20px 39px;
        border-bottom: 1px solid #b5b5b6;
        border-radius: none;
    }

    .p-ticketinfo_table tr th:last-child,
    .p-ticketinfo_table tr td:last-child {
        border-right: none;
    }

    .p-ticketinfo_table thead tr th,
    .p-ticketinfo_table thead tr td {
        height: auto;
        padding-bottom: 20px;
        padding-top: 0;
        text-align: center;
        padding-left: 0;
        padding-right: 0;
        color: #000;
        font-weight: 700;
    }

    .p-ticketinfo_table tbody tr th,
    .p-ticketinfo_table tbody tr td {
        height: 80px;
    }

    .p-ticketinfo_table tbody tr th {
        width: 50%;
    }

    .p-ticketinfo_table tbody tr td {
        width: 50%;
        color: #000;
        font-weight: 700;
    }

    .p-ticketinfo_block_wrap {}

    .p-ticketinfo_block {
        margin: 0 0 50px 0;
    }

    .p-ticketinfo_block:last-child {
        margin-bottom: 0;
    }

    .p-ticketinfo_table_check_wrap {
        margin: 42px 0 0 0;
        display: flex;
        justify-content: center;
    }

    .p-ticketinfo_table_check {
        font-size: 14px;
        letter-spacing: 0.12em;
        line-height: 2.71;
    }

}


/* -------------------------------------------------------------------------------------------------
#p-access
------------------------------------------------------------------------------------------------- */


#p-access {}

#p-access .c-cm_block_area {
    margin-top: 0;
}

.p-access_vision_wrap {
    margin-top: 90px;
    margin-bottom: 53px;
}

.p-access_vision {
    position: relative;
    height: 440px;
}

.p-access_vision iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/* sp */
@media screen and (max-width: 700px) {

    #p-access {}

    .p-access_vision_wrap {
        margin-top: 48px;
        margin-bottom: 23px;
    }

    .p-access_vision {
        height: 220px;
    }

}


/* -------------------------------------------------------------------------------------------------
#p-other
------------------------------------------------------------------------------------------------- */

#p-other {}

.p-other_btn_list_wrap {
    margin: 84px 0 0 0;
    border-top: 1px solid #9fa0a0;
    border-bottom: 1px solid #9fa0a0;
    overflow: hidden;
}

.p-other_btn_list {
    display: flex;
    margin: 0 -1px -1px 0;
}

.p-other_btn_list_item {
    width: 33.333%;
    border-right: 1px solid #9fa0a0;
    border-bottom: 1px solid #9fa0a0;
    display: flex;
    flex-direction: column;
}

.p-other_btn_list_item .c-btn_wrap {
    height: 120px;
}

.p-other_btn_list_item .c-btn_wrap .c-btn {
    position: relative;
    align-items: center;
    font-size: 16px;
    color: #000;
    font-weight: 700;
    transition: opacity 0.4s ease 0s;
}

.p-other_btn_list_item .c-btn_wrap .c-btn:hover {
    opacity: 0.4;
}

.p-other_btn_list_item .p-other_arrow {
    position: absolute;
    right: 4px;
    bottom: 5px;
}

/* sp */
@media screen and (max-width: 700px) {

    #p-other {}

    .p-other_btn_list_wrap {
        margin: 49px 0 0 0;
        border-top: 1px solid #9fa0a0;
        border-bottom: none;
        overflow: hidden;
    }

    .p-other_btn_list {
        flex-wrap: wrap;
        margin: 0 0 0 0;
    }

    .p-other_btn_list_item {
        border-right: none;
        border-bottom: 1px solid #9fa0a0;
        width: 100%;
    }

    .p-other_btn_list_item .c-btn_wrap {
        height: 62px;
    }

    .p-other_btn_list_item .c-btn_wrap .c-btn {
        font-size: 14px;
        font-weight: 400;
    }

    .p-other_btn_list_item .p-other_arrow {
        position: absolute;
        right: 4px;
        bottom: 5px;
    }

}


/* -------------------------------------------------------------------------------------------------
#p-sponsor
------------------------------------------------------------------------------------------------- */

#p-sponsor {
    padding-bottom: 80px;
}

.p-sponsor_block_wrap {
    margin: 81px 0 0 0;
    line-height: 1;
}

.p-sponsor_block {
    font-size: 16px;
    margin: 0 0 115px 0;
}

.p-sponsor_block:last-child {
    margin-bottom: 0;
}

.p-sponsor_block_title01 {
    font-weight: 700;
    color: #000;
    text-align: center;
    letter-spacing: 0.15em;
    margin: 0 0 34px 0;
}


.p-sponsor_block_list_wrap {
    margin: 0 0 70px 0;
}

.p-sponsor_block_list_wrap:last-child {
    margin-bottom: 0;
}

.p-sponsor_block_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin: 0 -1em -1em 0;
}

.p-sponsor_block_list_item {
    padding: 0 1em 1em 0;
}

.p-sponsor_block_list_item_br {
    width: 100%;
}

.p-sponsor_block.type_big {
    font-size: 24px;
}

.p-sponsor_block.type_big .p-sponsor_block_title01 {
    margin-bottom: 40px;
}

.p-sponsor_block.type_image {}

.p-sponsor_block.type_image .p-sponsor_block_list {
    margin: 0 -26px -26px 0;
}

.p-sponsor_block.type_image .p-sponsor_block_list_item {
    padding: 0 26px 26px 0;
}

.p-sponsor_block.type_image .p-sponsor_block_list-l {
    margin: 0 -42px -42px 0;
}

.p-sponsor_block.type_image .p-sponsor_block_list_item-l {
    padding: 0 42px 42px 0;
}

.p-sponsor_block_lead {
    line-height: 2.375;
    text-align: center;
}

/* sp */
@media screen and (max-width: 700px) {

    #p-sponsor {
        padding-bottom: 80px;
    }

    .p-sponsor_block_wrap {
        margin: 81px 0 0 0;
        line-height: 1;
    }

    .p-sponsor_block {
        font-size: 14px;
        margin: 0 0 115px 0;
    }

    .p-sponsor_block:last-child {
        margin-bottom: 0;
    }

    .p-sponsor_block_title01 {
        letter-spacing: 0.12em;
        margin: 0 0 34px 0;
    }

    .p-sponsor_block_list_wrap {
        margin: 0 0 70px 0;
    }

    .p-sponsor_block .p-sponsor_block_list_item {
        width: 100%;
        text-align: center;
    }

    .p-sponsor_block.type_image .p-sponsor_block_list-l {
        margin: 0 -36px -36px 0;
    }

    .p-sponsor_block.type_image .p-sponsor_block_list_item-l {
        padding: 0 36px 36px 0;
    }

    .p-sponsor_block.type_big {
        font-size: 18px;
    }

    .p-sponsor_block.type_big .p-sponsor_block_title01 {
        margin-bottom: 30px;
    }

    .p-sponsor_block.type_image .p-sponsor_block_list_item {
        width: auto;
    }


}


/* ----------------------------------------------------- #p-exhibits ----------------------------------------------------- */

#p-exhibits {
    margin: 0;
    background-color: #000;
}

.p-exhibits_img_list_zone {
    margin: 0;
    position: relative;
    left: 50%;
    margin: 0 0 0 -50vw;
    width: 100vw;
}

.p-exhibits_img_list_area {
    overflow: hidden;
    height: 460px;
}

.p-exhibits_img_list_wrap {
    overflow-x: scroll;
    width: 100%;
    height: 600px;
}

.p-exhibits_img_list {
    display: inline-block;
    vertical-align: bottom;
    padding: 20px 30px;
    white-space: nowrap;
}

.p-exhibits_img_list li {
    display: inline-block;
    vertical-align: top;
    width: 275px;
    margin: 0 10px 0 0;
    letter-spacing: 0.05em;
}

.p-exhibits_img_list li:last-child {
    margin-right: 0;
}

.window_slide_list li img {
    opacity: 1 !important;
}

.p-exhibits_img {}

@media screen and (min-width: 701px) {
    .p-exhibits_sp {
        height: 0;
        overflow: hidden;
    }
}

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

    #p-exhibits {
        /*margin-top: 120px;*/
    }

    .p-exhibits_pc {
        height: 0;
        overflow: hidden;
    }

    .window_slide_list li {
        width: 269px;
        margin: 0 30px 0 0;
    }

    .p-exhibits_img {
        border: 1px solid #333333;
    }

}