@charset "utf-8";

/*
.m-plus-2-<uniquifier> {
    font-family: "M PLUS 2", sans-serif;
    font-optical-sizing: auto;
    font-weight: <weight>;
    font-style: normal;
}

.bungee-regular {
    font-family: "Bungee", sans-serif;
    font-weight: 400;
    font-style: normal;
}


.noto-sans-jp-<uniquifier> {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: <weight>;
    font-style: normal;
}
*/

/* ------------------------------------------------ ページフェードイン */
body {
    margin: 0;
    padding: 0;
    animation: fadeIn 7s ease 0s 1 normal;
    -webkit-animation: fadeIn 7s ease 0s 1 normal;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

*::after,* {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* ------------------------------------------------ コンテンツフェードイン */
.fuwatAnime {
    -webkit-animation-fill-mode: both;
    -ms-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-duration: 1.5s;
    -ms-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-name: fuwatAnime;
    -ms-animation-name: fuwatAnime;
    animation-name: fuwatAnime;
    visibility: visible !important;
}
@-webkit-keyframes fuwatAnime {
    0% {
        opacity: 0;
        -webkit-transform: translateY(50px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
    }
}
@keyframes fuwatAnime {
    0% {
        opacity: 0;
        -webkit-transform: translateY(50px);
        -ms-transform: translateY(50px);
        transform: translateY(50px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}

/* ------------------------------------------------ 共通 */
* {
    margin: 0;
    padding: 0;
    list-style: none;
    box-sizing: border-box;
}

body {
    position: relative;
    height: 100%;
    margin: 0;
    padding: 0;
    font-size: 16px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-style: normal;
    background: #00178E;
    background: linear-gradient(-90deg, rgba(0, 23, 142, 1) 0%, rgba(0, 43, 100, 1) 100%);
    letter-spacing: 1.5px;
    line-height: 150%;
    z-index: -100;
}

h1,h2,h3,h4 {
    margin: 0;
    padding: 0;
    font-size: inherit;
}

a {
    font-size: 14px;
    color: #333;
    text-decoration: none;
    letter-spacing: 1.5px;
    line-height: 150%;
}
a:hover {
    transition: 0.5s;
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
}

p,
ul {
    font-size: 14px;
    letter-spacing: 1.5px;
    line-height: 150%;
}

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

.justify {
    text-align: justify;
    text-justify: distribute-all-lines;
}

.pconly {
    display: block;
}
.sponly {
    display: none;
}
.pc_tb_only {
    display: block;
}
.sp_only {
    display: none;
}
    @media (max-width: 767px) {
        .pconly {
            display: none;
        }
        .sponly {
            display: block;;
        }
        .pc_tb_only {
            display: none;
        }
        .sp_only {
            display: block;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .pconly {
            display: none;
        }
        .sponly {
            display: block;;
        }
        .pc_tb_only {
            display: block;
        }
        .sp_only {
            display: none;
        }
    }

/* ------------------------------------------------ マージン */
.mb30 {
    margin-bottom: 30px;
}
.mb60 {
    margin-bottom: 60px;
}
.mb90 {
    margin-bottom: 90px;
}
.mb120 {
    margin-bottom: 120px;
}
    @media (max-width: 767px) {
        .mb30 {
            margin-bottom: 15px;
        }
        .mb60 {
            margin-bottom: 30px;
        }
        .mb90 {
            margin-bottom: 45px;
        }
        .mb120 {
            margin-bottom: 60px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .mb30 {
            margin-bottom: 15px;
        }
        .mb60 {
            margin-bottom: 30px;
        }
        .mb90 {
            margin-bottom: 45px;
        }
        .mb120 {
            margin-bottom: 60px;
        }
    }

/* ------------------------------------------------ フォント・配置 */
.font12 {
    font-size: 12px;
}
.font14 {
    font-size: 14px;
}
.font16 {
    font-size: 16px;
}

.center {
    text-align: center;
}

/* ------------------------------------------------ スライドショー */
#outside {
    position: relative;
    width: 100%;
    height: 100%;
}
.cycle-slideshow img {
    position: relative;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    overflow: hidden;
    object-fit: cover;
}
    @media (max-width: 767px) {
        #outside {
            width: 100vw;
            height: 100vh;
        }
        .cycle-slideshow img {
            width: 100vw;
            height: 100vh;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        #outside {
            width: 100vw;
            height: 100vh;
        }
        .cycle-slideshow img {
            width: 100vw;
            height: 100vh;
        }
    }

.outside_wrap {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    width: 1150px;
    height: 100%;
    margin: 0 auto;
    z-index: 999;
}
    @media (max-width: 767px) {
        .outside_wrap {
            width: 95%;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .outside_wrap {
            width: 95%;
        }
    }

img.home_logo_abso {
    position: absolute;
    top: 10px;
    left: 0;
    width: 110px;
    height: 110px;
}
    @media (max-width: 767px) {
        img.home_logo_abso {
            top: 10px;
            width: 70px;
            height: 70px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        img.home_logo_abso {
            top: 10px;
            width: 70px;
            height: 70px;
        }
    }

.flexbox_main_logo {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    width: 100%;
}
.main_logo01 {
    width: 50%;
    width: 410px;
    height: 300px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    background: url(../images/home/main_logo01_2507.svg);
    margin: 0 15px;
    z-index: 999;
}
.main_logo02 {
    width: 50%;
    width: 410px;
    height: 300px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    background: url(../images/home/main_logo02_2508.svg);
    margin: 0 15px;
    z-index: 999;
}
    @media (max-width: 767px) {
        .flexbox_main_logo {
            top: 47%;
        }
        .main_logo01 {
            width: 100%;
            width: 300px;
            height: 220px;
        }
        .main_logo02 {
            width: 100%;
            width: 300px;
            height: 220px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .main_logo01 {
            width: 300px;
            height: 220px;
        }
        .main_logo02 {
            width: 300px;
            height: 220px;
        }
    }

.main_chatch {
    position: absolute;
    left: 50%;
    bottom: 30px;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    width: 100%;
    text-align: center;
    color: #fff;
    text-shadow: 0 0 5px #000;
    font-size: 25px;
    font-weight: bold;
    z-index: 999;
}
    @media (max-width: 767px) {
        .main_chatch {
            bottom: 15px;
            font-size: 16px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .main_chatch {
            bottom: 50px;
            font-size: 22px;
        }
    }

/* ------------------------------------------------ チケット購入 */
.button_box {
    position: relative;
    width: 100%;
    height: 300px;
    background-color: #000000;
}
.button_box_wrap {
    position: relative;
    width: 1150px;
    height: 300px;
    margin: 0 auto;
}
    @media (max-width: 767px) {
        .button_box {
            height: 150px;
        }
        .button_box_wrap {
            width: 90%;
            height: 150px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .button_box {
            height: 230px;
        }
        .button_box_wrap {
            width: 90%;
            height: 230px;
        }
    }

.tikets_btn_txt {
    text-align: center;
    font-size: 45px;
    font-weight: 900;
    color: #fff;
    padding: 45px 0;
}
.button_box_wrap .btn {
    position: relative;
    text-align: center;
}
.button_box_wrap .btn img {
    width: 980px;
}
    @media (max-width: 767px) {
        .tikets_btn_txt {
            font-size: 18px;
            padding: 15px 0;
        }
        .button_box_wrap .btn img {
            width: 100%;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .tikets_btn_txt {
            font-size: 35px;
            padding: 30px 0;
        }
        .button_box_wrap .btn img {
            width: 100%;
        }
    }

.get_tickets {
    position: fixed;
    bottom: 0px;
    left: 100px;
    width: 250px;
    height: 250px;
    z-index: 999;
}
    @media (max-width: 767px) {
        .get_tickets {
            bottom: 5px;
            left: 5px;
            width: 150px;
            height: 150px;
            z-index: 9999;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .get_tickets {
            bottom: 5px;
            left: 5px;
            width: 150px;
            height: 150px;
            z-index: 9999;
        }
    }


/* ------------------------------------------------ エリア */
.wrapper {
    width: 100%;
}
.wrap {
    position: relative;
    width: 1150px;
    height: auto;
    margin: 0 auto;
}
    @media (max-width: 767px) {
        .wrap {
            width: 90%;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .wrap {
            width: 90%;
        }
    }

.contents_box {
    background-color: #fff;
    padding: 90px 0;
}
    @media (max-width: 767px) {
        .contents_box {
            padding: 45px 0;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .contents_box {
            padding: 45px 0;
        }
    }

/* ------------------------------------------------ お知らせ */
.news_box {
    width: 75%;
    margin: 0 auto;
    padding-bottom: 60px;
}
h1.news_ttl a {
    font-size: 18px;
}
h1.news_ttl {
    font-weight: none;
    border-bottom: 1px dotted #ccc;
    margin-bottom: 15px;
    padding-bottom: 15px;
}
    @media (max-width: 767px) {
        .news_box {
            width: 100%;
            padding-bottom: 0;
        }
        h1.news_ttl a {
            font-size: 15px;
        }
        h1.news_ttl {
            margin-bottom: 15px;
            padding-bottom: 15px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .news_box {
            width: 100%;
            padding-bottom: 0;
        }
        h1.news_ttl a {
            font-size: 15px;
        }
        h1.news_ttl {
            margin-bottom: 15px;
            padding-bottom: 15px;
        }
    }

/* ------------------------------------------------ メインイベント */
.ttl_box_main {
    position: relative;
    width: 100%;
    height: 240px;
}
.ttl_box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    width: 100%;
    text-align: center;
    color: #fff;
}
    @media (max-width: 767px) {
        .ttl_box_main {
            height: 150px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .ttl_box_main {
            height: 150px;
        }
    }

.ttl_en {
    font-family: "Bungee", sans-serif;
    font-size: 77px;
}
.ttl_jp {
    font-size: 26px;
    margin-top: 30px;
}
    @media (max-width: 767px) {
        .ttl_en {
            font-size: 45px;
            line-height: 50px;
        }
        .ttl_jp {
            font-size: 22px;
            margin-top: 10px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .ttl_en {
            font-size: 45px;
        }
        .ttl_jp {
            font-size: 22px;
            margin-top: 15px;
        }
    }

.flexbox_4_6 {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}
.f_item_txt {
    width: 45%;
}
.f_item_img {
    width: 50%;
}
    @media (max-width: 767px) {
        .f_item_txt {
            width: 100%;
            margin-bottom: 30px;
        }
        .f_item_img {
            width: 100%;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {

    }

.contents_ttl {
    font-family: "Bungee", sans-serif;
    font-size: 32px;
    color: #fff;
    margin-bottom: 30px;
}
    @media (max-width: 767px) {
        .contents_ttl {
            font-size: 27px;
            margin-bottom: 15px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .contents_ttl {
            font-size: 27px;
            margin-bottom: 15px;
        }
    }

.contents_ttl_grn {
    background: #5CB2A0;
    background: linear-gradient(90deg, rgba(92, 178, 160, 1) 0%, rgba(0, 91, 149, 1) 100%);
    padding: 0 15px;
    border-radius: 0 15px 15px 0;
}
.contents_ttl_pnk {
    background: #E3006C;
    background: linear-gradient(90deg, rgba(227, 0, 108, 1) 0%, rgba(0, 91, 149, 1) 100%);
    padding: 0 15px;
    border-radius: 0 15px 15px 0;
}
.contents_ttl_org {
    background: #F09434;
    background: linear-gradient(90deg, rgba(240, 148, 52, 1) 0%, rgba(0, 91, 149, 1) 100%);
    padding: 0 15px;
    border-radius: 0 15px 15px 0;
}

.contents_chatch {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 15px;
}
.contents_ble_chatch {
    font-size: 37px;
    color: #2a59a6;
    font-weight: bold;
    line-height: 45px;
    margin-bottom: 30px;
}
.contents_pnk_chatch {
    font-size: 35px;
    color: #c4005d;
    font-weight: bold;
    line-height: 45px;
    margin-bottom: 30px;
}
.contents_org_chatch {
    font-size: 35px;
    color: #ba4d08;
    font-weight: bold;
    line-height: 45px;
    margin-bottom: 30px;
}
.contents_txt {
    font-size: 18px;
    margin-bottom: 30px;
}
.link_txt a {
    font-size: 18px;
    color: #0066cc;
}
.link_txt::after {
    content: '';
    display: inline-block;
    width: 15px;
    height: 15px;
    background: url(../images/common/arrow_right.svg);
    background-size: contain;
    margin-right: 5px;
    transform: translateY(1px);
}
    @media (max-width: 767px) {
        .contents_chatch {
            font-size: 20px;
            line-height: 26px;
            margin-bottom: 8px;
        }
        .contents_ble_chatch {
            font-size: 31px;
            line-height: 35px;
            margin-bottom: 15px;
        }
        .contents_pnk_chatch {
            font-size: 29px;
            line-height: 35px;
            margin-bottom: 15px;
        }
        .contents_org_chatch {
            font-size: 29px;
            line-height: 35px;
            margin-bottom: 15px;
        }
        .contents_txt {
            font-size: 15px;
            margin-bottom: 15px;
        }
        .link_txt a {
            font-size: 15px;
        }
        .link_txt::after {
            width: 15px;
            height: 15px;
            margin-right: 3px;
            transform: translateY(1.5px);
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .contents_chatch {
            font-size: 20px;
            line-height: 26px;
            margin-bottom: 8px;
        }
        .contents_ble_chatch {
            font-size: 31px;
            line-height: 35px;
            margin-bottom: 15px;
        }
        .contents_pnk_chatch {
            font-size: 29px;
            line-height: 35px;
            margin-bottom: 15px;
        }
        .contents_org_chatch {
            font-size: 29px;
            line-height: 35px;
            margin-bottom: 15px;
        }
        .contents_txt {
            font-size: 15px;
            margin-bottom: 15px;
        }
        .link_txt a {
            font-size: 15px;
        }
        .link_txt::after {
            width: 15px;
            height: 15px;
            margin-right: 3px;
            transform: translateY(1.5px);
        }
    }

.separator {
    width: 100%;
    height: 120px;
}
    @media (max-width: 767px) {
        .separator {
            height: 60px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .separator {
            height: 60px;
        }
    }

/* ------------------------------------------------ サブイベント */
.sub_event_box {
    background: #4F168F;
    background: linear-gradient(-90deg, rgba(79, 22, 143, 1) 0%, rgba(0, 43, 77, 1) 100%);
    padding: 0 0 90px;
}
    @media (max-width: 767px) {
        .sub_event_box {
            padding: 0 0 45px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .sub_event_box {
            padding: 0 0 45px;
        }
    }

.flexbox_5_5 {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}
.f_item_5_5 {
    width: 47%;
    background-color: #fff;
    margin-bottom: 60px;
    padding: 30px;
}
.f_item_5_5:last-of-type {
    margin-bottom: 0px;
}
    @media (max-width: 767px) {
        .flexbox_5_5 {
            padding: 30px 0;
        }
        .f_item_5_5 {
            width: 100%;
            margin-bottom: 0;
            padding: 15px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {

    }

.subevent_ttl {
    font-family: "Bungee", sans-serif;
    font-size: 32px;
    color: #fff;
    margin-bottom: 15px;
}
.subevent_ttl_ppl {
    background: #811583;
    background: linear-gradient(-90deg,rgba(129, 21, 131, 1) 0%, rgba(0, 91, 149, 1) 100%);
    padding: 0 15px;
    border-radius: 0 15px 15px 0;
}
.subevent_chatch {
    font-size: 21px;
    font-weight: bold;
}
.subevent_ppl_chatch {
    font-size: 26px;
    color: #2e3190;
    font-weight: bold;
    line-height: 45px;
    margin-bottom: 15px;
}
    @media (max-width: 767px) {
        .subevent_ttl {
            font-size: 27px;
            margin-bottom: 10px;
        }
        .subevent_ttl_ppl {
            padding: 0 15px;
            border-radius: 0 15px 15px 0;
        }
        .subevent_chatch {
            font-size: 17px;
        }
        .subevent_ppl_chatch {
            font-size: 22px;
            line-height: 25px;
            margin-bottom: 10px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .subevent_ttl {
            font-size: 27px;
            margin-bottom: 10px;
        }
        .subevent_ttl_ppl {
            padding: 0 15px;
            border-radius: 0 15px 15px 0;
        }
        .subevent_chatch {
            font-size: 17px;
        }
        .subevent_ppl_chatch {
            font-size: 22px;
            line-height: 25px;
            margin-bottom: 10px;
        }
    }

.flexbox_5_5 img {
    margin-bottom: 15px;
}
.subevent_txt {
    font-size: 16px;
    margin-bottom: 15px;
}
.link_txt_subevent a {
    font-size: 16px;
    color: #0066cc;
}
.link_txt_subevent::after {
    content: '';
    display: inline-block;
    width: 15px;
    height: 15px;
    background: url(../images/common/arrow_right.svg);
    background-size: contain;
    margin-right: 5px;
    transform: translateY(2px);
}
    @media (max-width: 767px) {
        .subevent_txt {
            font-size: 14px;
            margin-bottom: 15px;
        }
        .link_txt_subevent a {
            font-size: 14px;
            color: #0066cc;
        }
        .link_txt_subevent::after {
            width: 13px;
            height: 13px;
            margin-right: 3px;
            transform: translateY(1.5px);
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .subevent_txt {
            font-size: 14px;
            margin-bottom: 15px;
        }
        .link_txt_subevent a {
            font-size: 14px;
            color: #0066cc;
        }
        .link_txt_subevent::after {
            width: 13px;
            height: 13px;
            margin-right: 3px;
            transform: translateY(1.5px);
        }
    }

/* ------------------------------------------------ チケット購入・クラファンで応援 */
.tickets_crowdfun_box {
    background-color: #f2efe3;
    padding: 90px 0;
}
    @media (max-width: 767px) {
        .tickets_crowdfun_box {
            padding: 45px 0;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .tickets_crowdfun_box {
            padding: 45px 0;
        }
    }

.tickets_txt01 {
    text-align: center;
    font-size: 50px;
    font-weight: 900;
    color: #ea0663;
    line-height: 55px;
    margin-bottom: 30px;
}
.tickets_txt02 {
    text-align: center;
    font-size: 25px;
    font-weight: bold;
    margin-bottom: 30px;
}
    @media (max-width: 767px) {
        .tickets_txt01 {
            font-size: 35px;
            line-height: 40px;
            margin-bottom: 15px;
        }
        .tickets_txt02 {
            font-size: 21px;
            margin-bottom: 15px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .tickets_txt01 {
            font-size: 42px;
            line-height: 55px;
            margin-bottom: 30px;
        }
        .tickets_txt02 {
            font-size: 21px;
            margin-bottom: 15px;
        }
    }

.tickets_crowdfun_box_wrap .tikets_btn_txt {
    color: #000;
}
.tickets_crowdfun_box_wrap .btn,
.tickets_crowdfun_box_wrap .btn02 {
    text-align: center;
}
.tickets_crowdfun_box_wrap .btn img,
.tickets_crowdfun_box_wrap .btn02 img {
    width: 1090px;
}
    @media (max-width: 767px) {
        .tickets_crowdfun_box_wrap .btn img,
        .tickets_crowdfun_box_wrap .btn02 img {
            width: 100%;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .tickets_crowdfun_box_wrap .btn img,
        .tickets_crowdfun_box_wrap .btn02 img {
            width: 100%;
        }

    }

.dotted {
    width: 100%;
    border-bottom: 1px dotted #000;
    margin-bottom: 90px;
    padding-bottom: 90px;
}
    @media (max-width: 767px) {
        .dotted {
            margin-bottom: 45px;
            padding-bottom: 45px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .dotted {
            margin-bottom: 45px;
            padding-bottom: 45px;
        }
    }

.crowdfu_txt01 {
    text-align: center;
    font-size: 50px;
    font-weight: 900;
    color: #2e3190;
    line-height: 55px;
    margin-bottom: 30px;
}
    @media (max-width: 767px) {
        .crowdfu_txt01 {
            font-size: 30px;
            line-height: 40px;
            margin-bottom: 15px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .crowdfu_txt01 {
            font-size: 42px;
            line-height: 55px;
            margin-bottom: 15px;
        }
    }

.flexbox_3_7 {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}
.flexbox_3_7 iframe {
    width: 100%;
}
.f_item_3_img {
    width: 25%;
}
.f_item_7_txt {
    width: 70%;
}
.tickets_crowdfun_box_txt01 {
    font-size: 25px;
    font-weight: 900;
    margin-bottom: 30px;
}
.tickets_crowdfun_box_txt02 {
    font-size: 18px;
}
    @media (max-width: 767px) {
        .f_item_3_img {
            width: 70%;
            margin: 0 auto 30px;
        }
        .f_item_7_txt {
            width: 100%;
        }
        .tickets_crowdfun_box_txt01 {
            font-size: 21px;
            margin-bottom: 15px;
        }
        .tickets_crowdfun_box_txt02 {
            font-size: 15px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .f_item_3_img {
            width: 35%;
        }
        .f_item_7_txt {
            width: 60%;
        }
        .tickets_crowdfun_box_txt01 {
            font-size: 21px;
            margin-bottom: 15px;
        }
        .tickets_crowdfun_box_txt02 {
            font-size: 15px;
        }
    }

/* ------------------------------------------------ イベント概要 */
.overview_box {
    background-color: #fff;
    padding: 90px 0 0;
}
    @media (max-width: 767px) {
        .overview_box {
            padding: 45px 0;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .overview_box {
            padding: 45px 0;
        }
    }

.ble_ttl .ttl_box_main {
    position: inherit;
    width: inherit;
    width: 100%;
    height: 150px;
}
.ble_ttl .ttl_box {
    position: inherit;
    top: inherit;
    left: inherit;
    transform: inherit;
    -webkit-transform: inherit;
    -ms-transform: inherit;
    color: #0c2b84;
}
    @media (max-width: 767px) {
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .ble_ttl .ttl_box_main {
            height: 100px;
        }
    }

table.overview {
    width: 100%;
    border-spacing: 0;
}
table.overview tr th {
    width: 15%;
    padding: 20px;
    border-bottom: 1px solid #000;
}
table.overview tr:last-of-type th {
    border-bottom: none;
}
table.overview tr td {
    width: 90%;
    padding: 20px;
    border-bottom: 1px solid #000;
}
table.overview tr:last-of-type td {
    border-bottom: none;
}
table.overview a {
    padding-bottom: 3px;
    border-bottom: 1px dotted #999;
}
    @media (max-width: 767px) {
        table.overview tr th {
            display: block;
            width: 100%;
            padding: 10px 0;
            border-bottom: none;
        }
        table.overview tr td {
            display: block;;
            width: 100%;
            padding: 10px 0;
            border-bottom: 1px solid #ccc;
        }
        table.overview tr:last-of-type td {
            border-bottom: none;
        }
        table.overview a {
            padding-bottom: 3px;
            border-bottom: 1px dotted #999;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        table.overview tr th {
            width: 20%;
        }
        table.overview tr td {
            width: 80%;
        }
    }

/* ------------------------------------------------ アクセス */
.flexbox_1_9 {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    margin-bottom: 30px;
}
.f_item_1_9_img {
    width: 13%;
}
.f_item_1_9_txt {
    width: 85%;
}
    @media (max-width: 767px) {
        .flexbox_1_9 {
            margin-bottom: 30px;
        }
        .f_item_1_9_img {
            width: 30%;
            margin: 0 auto 15px;
        }
        .f_item_1_9_txt {
            width: 100%;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .f_item_1_9_img {
            width: 20%;
        }
        .f_item_1_9_txt {
            width: 75%;
        }
    }

.access_chatch {
    font-size: 50px;
    font-weight: 900;
    color: #0c2b84;
}
.access_add {
    font-size: 20px;
}
    @media (max-width: 767px) {
        .access_chatch {
            text-align: center;
            font-size: 34px;
            line-height: 40px;
            margin-bottom: 10px;
        }
        .access_add {
            text-align: center;
            font-size: 16px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .access_chatch {
            font-size: 42px;
            line-height: 48px;
            margin-bottom: 15px;
        }
        .access_add {
            font-size: 16px;
        }
    }

.overview_box .border_box {
    text-align: center;
    font-size: 18px;
    border: 1px solid #000;
    margin-bottom: 30px;
    padding: 10px;
}
    @media (max-width: 767px) {
        .overview_box .border_box {
            text-align: inherit;
            font-size: 15px;
            margin-bottom: 15px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .overview_box .border_box {
            font-size: 15px;
            margin-bottom: 15px;
        }
    }

.access_ttl_ble {
    font-size: 20px;
    color: #0c2b84;
}
.access_cap {
    font-size: 16px;
}
iframe {
    vertical-align: bottom;
}
    @media (max-width: 767px) {
        .access_ttl_ble {
            font-size: 18px;
        }
        .access_cap {
            font-size: 15px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .access_ttl_ble {
            font-size: 18px;
        }
        .access_cap {
            font-size: 15px;
        }
    }

/* ------------------------------------------------ FAQ */
.faq_box {
    background-color: #f2efe3;
    padding: 90px 0;
}
.faq_box .wrap {
    width: 900px;
}
    @media (max-width: 767px) {
        .faq_box {
            padding: 45px 0;
        }
        .faq_box .wrap {
            width: 90%;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .faq_box {
            padding: 45px 0;
        }
        .faq_box .wrap {
            width: 90%;
        }
    }

.faq_ttl_txt_box {
    margin-bottom: 30px;
}
.faq_ttl {
    font-family: "Bungee", sans-serif;
    font-size: 30px;
    color: #0c2b84;
}
.faq_ttl span {
    font-family: ;
    font-weight: 900;
    font-size: 35px;
    margin-right: 5px;
}
    @media (max-width: 767px) {
        .faq_ttl_txt_box {
            margin-bottom: 15px;
        }
        .faq_ttl {
            font-size: 24px;
        }
        .faq_ttl span {
            font-size: 30px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .faq_ttl_txt_box {
            margin-bottom: 15px;
        }
        .faq_ttl {
            font-size: 24px;
        }
        .faq_ttl span {
            font-size: 30px;
        }
    }

/* ------------------------------------------------ スポンサー */
.sponsor_box {
    background-color: #fff;
    padding: 90px 0 0;
}
    @media (max-width: 767px) {
        .sponsor_box {
            background-color: #fff;
            padding: 45px 0 0;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .sponsor_box {
            background-color: #fff;
            padding: 45px 0 0;
        }
    }

.flexbox_sponsor_a {
    display: flex;
    flex-flow: row wrap;
    padding: 60px 0;
    border-bottom: 2px dotted #ccc;
}
.f_item_sponsor_a {
    width: 31.3333%;
    margin: 0 1% 30px;
}
    @media (max-width: 767px) {
        .flexbox_sponsor_a {
            padding: 30px 0;
        }
        .f_item_sponsor_a {
            width: 100%;
            margin: 0 0% 15px;
        }
        .f_item_sponsor_a:last-of-type {
            margin: 0;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .flexbox_sponsor_a {
            padding: 30px 0;
        }
        .f_item_sponsor_a {
            margin: 0 1% 15px;
        }
        .f_item_sponsor_a:last-of-type {
            margin: 0;
        }
    }

.flexbox_sponsor_b {
    display: flex;
    flex-flow: row wrap;
    padding: 60px 0;
    border-bottom: 2px dotted #ccc;
}
.f_item_sponsor_b {
    width: 23%;
    margin: 0 1% 15px;
}
    @media (max-width: 767px) {
        .flexbox_sponsor_b {
            padding: 30px 0;
        }
        .f_item_sponsor_b {
            width: 48%;
            margin: 0 1% 8px;
        }
        .f_item_sponsor_b:last-of-type {
            margin: 0;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .flexbox_sponsor_b {
            padding: 30px 0;
        }
        .f_item_sponsor_b {
            width: 23%;
            margin: 0 1% 8px;
        }
        .f_item_sponsor_b:last-of-type {
            margin: 0;
        }
    }

.flexbox_sponsor_c {
    display: flex;
    flex-flow: row wrap;
    padding: 60px 0;
    border-bottom: 2px dotted #ccc;
}
.f_item_sponsor_c {
    width: 21%;
    margin: 0 2% 15px;
}
.f_item_sponsor_a img,
.f_item_sponsor_b img,
.f_item_sponsor_c img {
    width: 100%;
}
    @media (max-width: 767px) {
        .flexbox_sponsor_c {
            padding: 30px 0;
        }
        .f_item_sponsor_c {
            width: 46%;
            margin: 0 2% 15px;
        }
        .f_item_sponsor_c:last-of-type {
            margin: 0;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .flexbox_sponsor_c {
            padding: 30px 0;
        }
        .f_item_sponsor_c {
            width: 22%;
            margin: 0 1.5% 8px;
        }
        .f_item_sponsor_c:last-of-type {
            margin: 0;
        }
    }

.sponsor_ttl {
    font-size: 30px;
    color: #0c2b84;
    margin-bottom: 30px;
}
.supporter_txt {
    font-size: 18px;
}
    @media (max-width: 767px) {
        .sponsor_ttl {
            font-size: 25px;
            margin-bottom: 15px;
        }
        .supporter_txt {
            font-size: 15px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .sponsor_ttl {
            font-size: 25px;
            margin-bottom: 15px;
        }
        .supporter_txt {
            font-size: 15px;
        }
    }

/* ------------------------------------------------ footer */
footer {
    width: 100%;
    height: 100%;
    background: #0c2b84 url('../images/footer/footer_bg.jpg') no-repeat top center;
    background-size: cover;
    color: #fff;
}
footer .wrap {
    width: 1150px;
    margin: 0 auto;
    padding: 30px 0 90px;
}
footer .wrap p a {
    color: #fff;
}
    @media (max-width: 767px) {
        footer .wrap {
            width: 90%;
            padding: 45px 0;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        footer .wrap {
            width: 90%;
            padding: 45px 0;
        }
    }

.footer_asterisk {
    text-align: center;
    margin-bottom: 90px;
}
.flexbox_footer {
    display: flex;
    flex-flow: row wrap;
}
.f_item_footer {
    width: 40%;
    margin-right: 5%;
}
footer a.link_bb {
    color: #fff;
    border-bottom: 1px dotted #fff;
    padding-bottom: 3px;
}
    @media (max-width: 767px) {
        .footer_asterisk {
            text-align: left;
            margin-bottom: 45px;
        }
        .flexbox_footer {
            margin-bottom: 15px;
        }
        .f_item_footer {
            width: 100%;
            margin-right: 0;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .footer_asterisk {
            text-align: center;
            margin-bottom: 90px;
        }
        .f_item_footer {
            width: 45%;
        }
    }

.copy {
    text-align: center;
    font-size: 12px;
    color: #fff;
    background-color: #000;
    padding: 30px;
}
    @media (max-width: 767px) {
        p.copy {
            right: 15px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        p.copy {
            right: 15px;
        }
    }