@charset "utf-8";
#wrapper {
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
    box-sizing: border-box;
}
.main_wrapper {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: 0 20px;
    box-sizing: border-box;
}
.main_wrapper .normal_txt {
    font-size: 16px;
    color:  #444;
    line-height: 1.6;
}
.main_wrapper .normal_ttl {
    font-size: 22px;
    color: #12336E;
    line-height: 1;
    padding-bottom: 10px;
    border-bottom: 3px solid #12336E;
    margin-bottom: 30px;
    display: inline-block;
    font-weight: bold;
}
.bg_gray {
    background: #F0F2F6!important;
}
.bg_f {
    background: #fff!important;
}
.mb_10 {
    margin-bottom: 10px!important;
}
.mb_20 {
    margin-bottom: 20px!important;
}
.mb_40 {
    margin-bottom: 40px!important;
}
.mb_60 {
    margin-bottom: 60px!important;
}
.mt_60 {
    margin-top: 60px!important;
}
.pt_100 {
    padding-top: 100px!important;
}
/*================================================
トップコンテンツ　end
 ================================================*/
.top_con {
    padding: 80px 0;
    text-align: center;
    box-sizing: border-box;
    background-image: url("../images/main_bg.jpg");
    background-size: cover;
    background-repeat: no-repeat;
}
.top_con h1 {
    font-size: 12vw;
    color: #fff;
    font-weight: bold;
    line-height: 1.4;
    margin-top: 40px;
    margin-bottom: 60px;
    text-shadow: 0px 0px 6px rgba(0,0,0,0.8);
}
.top_con h2 {
    font-size: 5vw;
    font-weight: bold;
    color: #fff;
    line-height: 1.6;
    text-shadow: 0px 0px 6px rgba(0,0,0,0.8);
}
/*large*/
@media (min-width: 600px) {
.top_con h1 {
    font-size: 75px;
}
.top_con h2 {
    font-size: 21px;
}
    }
/*large end*/

/*================================================
トップコンテンツ　end
 ================================================*/


/*================================================
概要
 ================================================*/
.beyond_conA {
    background: #12336E;
    text-align: center;
    padding: 80px 0;
}
.beyond_conA h3 {
    font-size: 6vw;
    color:  #fff;
    line-height: 1;
    padding-bottom: 10px;
    border-bottom: 3px solid #fff;
    margin-bottom: 40px;
    display: inline-block;
    font-weight: bold;
}
.beyond_conA .dec_txt {
    font-size: 16px;
    color: #fff;
    line-height: 1.6;
}
/*large*/
@media (min-width: 600px) {
.beyond_conA {
    padding: 100px 0;
}
.beyond_conA h3 {
    font-size: 32px;
    }
}
/*large end*/

/*================================================
概要　end
 ================================================*/



/*================================================
サポーター・アンバサダー
 ================================================*/
.beyond_conB {
    background: #fff;
    text-align: center;
    padding: 80px 0;
}
.beyond_conB h3 {
    font-size: 6vw;
    color:  #12336E;
    line-height: 1;
    padding-bottom: 10px;
    border-bottom: 3px solid #12336E;
    margin-bottom: 60px;
    display: inline-block;
    font-weight: bold;
}
.beyond_conB .flex_2con {
    text-align: left;
}
.beyond_conB .left_img {
    margin-bottom: 30px;
}
.beyond_conB .left_img img {
    width: 100%;
}
.beyond_conB .name_txt {
    font-size: 22px;
    padding-bottom: 10px;
    border-bottom: 1px solid #444;
    margin-bottom: 20px;
}
.right_txt a {
    color: #29ABE2;
    text-decoration: underline;
}
.right_txt a:hover {
    text-decoration: none;
}

/*large*/
@media (min-width: 600px) {
.beyond_conB {
    padding: 100px 0;
}
.beyond_conB h3 {
    font-size: 32px;
    margin-bottom: 80px;
    }
.beyond_conB .flex_2con {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0;
    }
.beyond_conB .left_img {
    width: 25%;
    max-width: 400px;
    margin-bottom: 0;
    margin-right: 60px;
    }
.beyond_conB .right_txt {
    width: 70%;
    }
.beyond_conB .name_txt {
    padding-bottom: 10px;
    margin-bottom: 20px;
    }
}
/*large end*/
/*================================================
サポーター・アンバサダー　end
 ================================================*/


/*================================================
第二回作品
 ================================================*/
.beyond_conC {
    background: #F0F2F6;
    text-align: center;
    padding: 80px 0;
}
.beyond_conC h3 {
    font-size: 6vw;
    color:  #12336E;
    line-height: 1;
    padding-bottom: 10px;
    border-bottom: 3px solid #12336E;
    margin-bottom: 30px;
    display: inline-block;
    font-weight: bold;
}
.beyond_conC .maim_img {
    width: 100%;
    max-width: 600px;
    margin: 20px auto;
}
.beyond_conC .maim_img img,
.beyond_conC .sub_img img {
    width: 100%;
}
.beyond_conC .sub_img {
    width: 100%;
    margin: 20px auto 40px;
}
.beyond_conC .large_txt {
    font-size: 4vw;
    color:  #444;
    margin-bottom: 40px;
}
.beyond_conC .flex_2con {
    text-align: left;
}
.beyond_conC .left_img {
    margin-bottom: 20px;
}
.beyond_conC .left_img img {
    width: 100%;
}
.beyond_conC .name_txt {
    font-size: 22px;
    padding-bottom: 20px;
    border-bottom: 1px solid #444;
    margin-bottom: 20px;
}
.beyond_conC .profile_txt {
    font-size: 16px;
    line-height: 1.6;
}
/*large*/
@media (min-width: 600px) {
.beyond_conC h3 {
    font-size: 32px;
    margin-bottom: 40px;
    padding-top: 100px;
    }
.beyond_conC .large_txt {
    font-size: 28px;
}
.beyond_conC .maim_img{
    margin: 20px auto 40px;
}
.beyond_conC .sub_img {
    margin: 20px auto 60px;
}
.beyond_conC .flex_2con {
    display: flex;
    justify-content: space-between;
    }
.beyond_conC .left_img {
    width: 25%;
    max-width: 200px;
    margin-bottom: 0;
    margin-right: 5%;
    }
.beyond_conC .right_txt {
    width: 75%;
    }
.beyond_conC .name_txt {
    padding-bottom: 10px;
    margin-bottom: 20px;
    }
}
/*large end*/
/*================================================
第一回作品　end
 ================================================*/

/*================================================
キックオフ
 ================================================*/
.beyond_conD {
    background: #fff;
    text-align: center;
    padding: 80px 0;
}
.beyond_conD h3 {
    font-size: 6vw;
    color:  #12336E;
    line-height: 1;
    padding-bottom: 10px;
    border-bottom: 3px solid #12336E;
    margin-bottom: 30px;
    display: inline-block;
    font-weight: bold;
}
.beyond_conD .large_txt {
    font-size: 4vw;
    color:  #444;
    margin-bottom: 20px;
}
.beyond_conD .small_txt {
    font-size: 3vw;
}
.beyond_conD .kick_off_img {
    margin: 0 auto 10px;
    max-width: 720px;
}
.beyond_conD .kick_off_img img {
    width: 100%;
}
.beyond_conD .flex_4con {
    margin-top: 60px;
}
.beyond_conD .flex_4con p {
    margin-bottom: 20px;
    }
/*large*/
@media (min-width: 600px) {
.beyond_conD h3 {
    font-size: 32px;
    margin-bottom: 40px;
    }
.beyond_conD .large_txt {
    font-size: 24px;
    margin-bottom: 40px;
}
.beyond_conD .small_txt {
    font-size: 16px;
}
.beyond_conD .kick_off_img {
    margin: 0 auto 20px;
}
.beyond_conD .flex_4con {
    display: flex;
    justify-content: space-between;
    }
.beyond_conD .flex_4con p {
    flex: 1;
    margin: 10px;
    }
}
/*large end*/
/*================================================
キックオフ　end
 ================================================*/


/*================================================
News
 ================================================*/
.beyond_conF {
    background: #fff;
    text-align: center;
    padding: 80px 0;
}
.beyond_conF h3 {
    font-size: 6vw;
    color:  #12336E;
    line-height: 1;
    padding-bottom: 10px;
    border-bottom: 3px solid #12336E;
    margin-bottom: 30px;
    display: inline-block;
    font-weight: bold;
}
.beyond_conF .large_txt {
    font-size: 4vw;
    color:  #444;
    margin-bottom: 40px;
}
.beyond_conF .info_flex_2con {
    text-align: left;
    width: 100%;
}
.beyond_conF .information li {
    border-bottom: 1px solid #e2e2e2;
    padding: 10px 0 10px;;
    line-height: 2em;
}
.beyond_conF ul.information {
    width: 100%;
    margin-bottom: 30px;
}
.beyond_conF .information dl {
    display: table;
}
.beyond_conF .information dt {
    min-width: 90px;
    max-width: 90px;
    font-size: 16px;
    padding-right: 40px;
    display: table-cell;
    vertical-align: middle;
    text-align: left;
    border-bottom: none;
}
.beyond_conF .information dd {
    display: table-cell;
    width: 100%;
    font-size: 16px;
    line-height: 1.4;
    text-align: left;
    vertical-align: middle;
}
.beyond_conF .information dd a {
    color: #29ABE2;
    text-decoration: underline;
}
.beyond_conF .information dd a:hover {
    text-decoration: none;
}
.beyond_conF .info_tw {
    width: 100%;
/*    border: 1px solid #e2e2e2;*/
    }
/*large*/
@media (min-width: 600px) {
.beyond_conF h3 {
    font-size: 32px;
    margin-bottom: 40px;
    }
.beyond_conF .large_txt {
    font-size: 24px;
}
.beyond_conF .info_flex_2con {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    }
.beyond_conF .news_content {
    width: 55%;
}
.beyond_conF ul {
    width: 55%;
    max-width: 630px;
    margin-right: 40px;
    }
.beyond_conF .info_tw {
    width: 40%;
    max-width: 400px;
    }
}
/*large end*/
/*================================================
News　end
 ================================================*/




/*================================================
誘導
 ================================================*/
.beyond_conE {
    background: #fff;
    text-align: center;
    padding: 80px 0;
}
.beyond_conE .large_txt {
    font-size: 4vw;
    color:  #444;
    margin-bottom: 40px;
}
.beyond_conE .link_btn {
    width: 100%;
    max-width: 400px;
}
.beyond_conE .link_btn a {
    width: 90%;
    background: #00a9e4;
    height: 50px;
    border-radius: 40px;
    color: #fff;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    text-align: center;
    line-height: 50px;
    box-shadow: 5px 9px 8px -6px rgba(0,0,0,0.6);
    box-sizing: border-box;
    margin-bottom: 30px;
}
/*large*/
@media (min-width: 600px) {
.beyond_conE {
    padding: 100px 0;
}
.beyond_conE .large_txt {
    font-size: 24px;
    margin-bottom: 40px;
}
.beyond_conE .link_btn_area {
    display: flex;
    justify-content: center;
    }

}
/*large end*/

/*================================================
誘導　end
 ================================================*/


/*================================================
フッター
 ================================================*/
footer {
    background: #12336E;
    text-align: center;
    padding: 80px 0;
}
footer h2 {
    font-size: 6vw;
    color:  #fff;
    line-height: 1;
    padding-bottom: 10px;
    border-bottom: 3px solid #fff;
    margin-bottom: 40px;
    display: inline-block;
    font-weight: bold;
}
footer p {
    color: #fff;
    font-size: 16px;
}
footer p a {
    color: #fff;
    font-size: 16px;
    margin-top: 10px;
    display: inline-block;
}
footer img {
    max-width: 240px;
}
.copyright {
    padding: 20px 0;
    color: #fff;
    font-size: 12px;
    background: #000;
    text-align: center;
}
/*large*/
@media (min-width: 600px) {
    footer h2 {
        font-size: 32px;
    }
}


/*================================================
下部バナー
 ================================================*/
.beyond_conBnr {
    background: #fff;
    text-align: center;
    padding: 80px 0;
}
.flex_2box_child {
    margin-bottom: 40px;
}
/*large*/
@media (min-width: 600px) {
.beyond_conBnr {
    padding: 100px 0;
}
.flex_2box {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    }
.flex_2box_child {
    flex: 1;
    margin: 10px;
    }
}

/*================================================
下部バナー end
 ================================================*/

/*================================================
作品情報
 ================================================*/
.beyond_conH {
    background: #fff;
    text-align: center;
    padding: 20px 0 60px;
}
.beyond_conH h3 {
    font-size: 6vw;
    color:  #12336E;
    line-height: 1;
    padding-bottom: 10px;
    border-bottom: 3px solid #12336E;
    margin-bottom: 30px;
    display: inline-block;
    font-weight: bold;
}
.beyond_conH .conH_txt {
    font-size: 16px;
    color:  #444;
    text-align: left;
}
.beyond_conH .bb_con {
    border-bottom: 1px solid #e2e2e2;
    padding-bottom: 40px;
}
.beyond_conH .conH_ttl {
    margin: 20px 0;
    font-size: 20px;
    text-align: left;
    font-weight: bold;
}
.beyond_conH .conH_flex {
    margin-bottom: 40px;
}
.beyond_conH .conH_flex_left {
    width: 100%;
    margin-bottom: 30px;
}
.beyond_conH .conH_flex_right {
    text-align: left;
}
.beyond_conH .conH_name_txt {
    font-size: 18px;
    margin-bottom: 10px;
}
/*large*/
@media (min-width: 600px) {
.beyond_conH h3 {
    font-size: 32px;
    margin-bottom: 40px;
    }
.beyond_conH .conH_flex {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    justify-content: space-between;
    }
.beyond_conH .conH_flex_left {
    width: 25%;
    max-width: 200px;
    margin-right: 5%;
    margin-bottom: 0;
    }
.beyond_conH .conH_flex_left img {
    width: 100%;
    }
.beyond_conH .conH_flex_right {
    width: 75%;
    }
}
/*large end*/

/*================================================
作品情報　end
 ================================================*/


/*================================================
アコーディオン
 ================================================*/
.toggle {
    display: none;
}
.option {
    position: relative;
    margin-bottom: 1em;
}
.title,
.content {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
    transition: all 0.3s;
}
.title {
    border: solid 1px #ccc;
    padding: 1em;
    display: block;
    margin-bottom: 10px;
}
.title::after,
.title::before {
    content: "";
    position: absolute;
    right: 1.25em;
    top: 1.25em;
    width: 2px;
    height: 0.75em;
    background: #999;
    transition: all 0.3s;
}
.title::after {
    transform: rotate(90deg);
}
.content {
    max-height: 0;
    overflow: hidden;
}
.content {
margin: 0;
}
.toggle:checked + .title + .content {
    max-height: 320px;
    transition: all 0.5s;
    overflow-y: scroll;
}
.toggle:checked + .title::before {
    transform: rotate(90deg) !important;
}
/*================================================
アコーディオン　end
 ================================================*/

.text_a-l {
    text-align: left!important;
}
.text_a-r {
    text-align: right!important;
}

.iframe-wrapper {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.iframe-wrapper iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

/*================================================
上映会などノーマル
 ================================================*/
.beyond_con_normal {
    background: #F0F2F6;
    text-align: center;
    padding: 80px 0;
}
.beyond_con_normal h3 {
    font-size: 6vw;
    color:  #12336E;
    line-height: 1;
    padding-bottom: 10px;
    border-bottom: 3px solid #12336E;
    margin-bottom: 30px;
    display: inline-block;
    font-weight: bold;
}
.beyond_con_normal .info_txt {
    font-size: 4.5vw;
    color:  #444;
    margin-bottom: 40px;
}
.beyond_con_normal .link_btn {
    width: 100%;
    max-width: 400px;
}
.beyond_con_normal .info_txt span.font-s {
    font-size: 14px;
}
.beyond_con_normal .link_btn a {
    width: 90%;
    background: #12336E;
    height: 50px;
    border-radius: 40px;
    color: #fff;
    text-decoration: none;
    display: inline-block;
    font-size: 16px;
    text-align: center;
    line-height: 50px;
    box-shadow: 5px 9px 8px -6px rgba(0,0,0,0.6);
    box-sizing: border-box;
    margin-bottom: 30px;
}
.beyond_con_normal .view_flex_con {
    margin-bottom: 30px;
}
.beyond_con_normal .view_flex_left {
    width: 100%;
    margin-bottom: 30px;
}
.beyond_con_normal .view_flex_right {
    text-align: left;
}
.top_border_ttl {
    border-top: 1px solid #e2e2e2;
    padding: 20px 0;
    font-size: 18px;
}
/*large*/
@media (min-width: 600px) {
.beyond_con_normal {
    padding: 100px 0;
}
.beyond_con_normal h3 {
    font-size: 32px;
    margin-bottom: 40px;
    }
.beyond_con_normal .info_txt {
    font-size: 20px;
    margin-bottom: 40px;
}
.beyond_con_normal .link_btn_area {
    display: flex;
    justify-content: center;
    }
.beyond_con_normal .view_flex_con {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    }
.beyond_con_normal .view_flex_left {
    width: 35%;
    margin-right: 5%;
    margin-bottom: 0;
    }
.beyond_con_normal .view_flex_left img {
    width: 100%;
    }
.beyond_con_normal .view_flex_right {
    width: 65%;
    }
}
/*large end*/

/*================================================
上映会　end
 ================================================*/



/*================================================
受賞歴
 ================================================*/
.award_ttl {
    font-size: 18px;
    font-weight: bold;
    color: #993D87;
    margin-bottom: 10px;
    text-align: left;
}
/*large*/
@media (min-width: 600px) {
.award_ttl {
    font-size: 20px;
    }
}


/*================================================
受賞歴　end
 ================================================*/


/*注意事項*/
.attention_box {
    font-size: 14px;
    color: #444;
    padding: 15px;
    border:  2px solid #999;
    margin: 15px 0 30px;
    
}

.flex_2col {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.flex_2col_img {
    width: 100%;
    margin-bottom: 15px;
}
/*large*/
@media (min-width: 600px) {
.flex_2col_img {
    width: calc(50% - 10px);
    margin-bottom: 20px;
    }
}

.font-normal {
    font-weight: normal!important;
}
.font-bold {
    font-weight: bold!important;
}
.sub_ttl {
    font-size: 20px;
    margin-bottom: 20px;
    color: #444;
    line-height: 1.4;
}
.sub_txt {
    font-size: 18px;
    font-weight: bold;
}
.txt_area {
    text-align: left;
    margin-bottom: 60px;
}
.link_txt a {
    color: #29ABE2;
    text-decoration: underline;
    -webkit-transition: all .3s;
    transition: all .3s;
}
.link_txt a:hover {
    text-decoration: none;
}

.txt_center {
    text-align: center!important;
}