@charset "UTF-8";
/*
共通
*/
body{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    box-sizing: border-box;
    font-family:barlow-semi-condensed, Arial, Helvetica, source-han-sans-japanese, sans-serif;
    color:#000;
    line-height:1.5;
    font-size:14px;
}
footer{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 10px;
    text-align:center;
}
footer>p{
    text-align:center;
    font-size:12px;
}
p{
    line-height:2;
}
a{
    transition:opacity ease .3s;
    text-decoration:none;
    word-break: break-all;
}
a:hover{
    opacity:.3;
}


main{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
}
.secwrap{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 100px 0;
}
.secinner{
    display: block;
    position: relative;
    width: 90%;
    height: auto;
    margin: 0 auto;
    padding: 0;
}
br.show_sp{
    display: none;
}
.sxsw_ttl{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 0 100px;
    padding: 0;
    margin-left:-2%;
}
.sxsw_ttl>div{
    display: inline-block;
    position: relative;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
}
.sxsw_ttl>div>p{
    width: auto;
    font-weight:900;
    font-size:200px;
    line-height:1;
}
.sxsw_ttl_inner{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    text-align:right;
}
.sxsw_ttl_inner>h2{
    display: inline-block;
    position: relative;
    font-size:20px;
    width: auto;
    background:#fff;
    padding-left:20px;
}
.sxsw_ttl_inner:before{
    content:"";
    display: block;
    position: absolute;
    width: 100%;
    height:10px;
    background:#FFCA51;
    margin: auto;
    padding: 0;
    top:0;
    bottom:0;
}
.sxsw_btn{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
}
.sxsw_btn>a{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 30px 20px;
    font-size:20px;
    text-align:center;
    border-radius:5px;
    background:#FFCA51;
    color:#000;
    max-width:650px;
    font-weight:bold;
}
@media only screen and (max-width: 1250px){
    .sxsw_ttl>div>p{
        font-size:150px;
    }
}
@media only screen and (max-width: 960px){
    br.nosp{
        display: none;
    }
    .sxsw_ttl>div>p{
        font-size:100px;
    }
}
@media only screen and (max-width: 680px){
    .sxsw_ttl>div>p{
        font-size:64px;
    }
    .sxsw_ttl_inner>h2{
        font-size:16px;
    }
    br.show_sp{
        display: inline;
    }
    .sxsw_ttl_inner:before{
        height: 8px;
    }
    
    

}

.img_tile{
    display: flex;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    
}
.img_tile>div{
    display: block;
    position: relative;
    width: 25%;
    height: auto;
    margin: 0;
    padding: 0;
    background-size:cover;
    background-position:center;
    min-height:500px;
}
.img_tile>div>div{
    display: block;
    position: relative;
    width: 100%;
    height: 50%;
    margin: 0;
    padding: 0;
    background-size:cover;
    background-position:center;
}

@media only screen and (max-width: 680px){
    .img_tile{
        flex-wrap:wrap;
    }
    .img_tile>div{
        width: 50%;
        min-height:50%;
    }
}

/*
hero
*/
#hero{
    
    background-size:cover;
    background-position:right top;
}
.hero_back{
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    margin: 0 auto;
    padding: 0;
    left:0;
    top:0;
}
.hero_back>.img_tile{
    height:100%;
    min-height:100%;
}
.hero_back:after{
    content:"";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    margin: auto;
    padding: 0;
    background:rgba(0,0,0,.5);
    top:0;
    left:0;
}
#hero>.secinner{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
#hero>.secinner>h1{
    font-size:24px;
    text-align:center;
    color:#FFCA51;
    margin: 0 auto 20px;
}
#hero>.secinner>h1>span{
    font-size:48px;
}
.hero_btn{
    display: block;
    position: relative;
    width: 90%;
    height: auto;
    margin: 0 auto 40px;
    padding: 0;
    background:#FFCA51;
    text-align:center;
    color:#000;
    max-width:400px;
    border-radius:200px;
}
.hero_btn>a{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 15px;
    color:#000;
    font-weight:bold;
}
.hero_btn>a>p.date{
    font-size:16px;
    line-height:1.5;
}
.hero_btn>a>p.seminar{
    font-size:20px;
    line-height:1.5;
}
.hero_btn>a>p.entry{
    font-size:16px;
    line-height:1.5;
}
.hero_speaker{
    display: flex;
    position: relative;
    width: 90%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    justify-content: center;
    align-items: center;
}
.hero_speaker>.img{
    display: block;
    position: relative;
    width: 150px;
    height: auto;
    margin: 0;
    padding: 0;
    overflow:hidden;
    border-radius:100px;
}
.hero_speaker>.img>img{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
}
.hero_speaker>.txt{
    display: block;
    position: relative;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    margin-left: 30px;
    color:#FFCA51;
}
.hero_speaker>.txt>dl{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 20px;
    font-weight:bold;
    font-size:16px;
}
.hero_speaker>.txt>dl>dt>span{
    font-size:24px;
}
@media only screen and (max-width: 1250px){
    
}
@media only screen and (max-width: 960px){
    #hero>.secinner>h1{
        font-size:16px;
    }
    #hero>.secinner>h1>span{
        font-size:28px;
    }
}
@media only screen and (max-width: 680px){
    
}


/*
problem
*/
#problem h2{
    text-align:center;
    font-size:36px;
    position: relative;
    margin: 0 auto 50px;
}
.problem_block{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 50px;
    padding: 0;
    max-width:900px;
    align-items: flex-end;
}
.problem_block:last-child{
    margin-bottom: 0;
}
.problem_block>.nayami{
    display: block;
    position: relative;
    width: 190px;
    height: auto;
    margin: 0;
    padding: 0;
    font-size:24px;
    font-weight:bold;
}
.problem_block>.fukidashi{
    display: block;
    position: relative;
    width: calc(100% - 190px);
    height: auto;
    margin: 0;
    padding: 30px;
    background:#f5f5f5;
    border-radius:10px;
}
.problem_block>.fukidashi:before{
    content:"";
    display: block;
    position: absolute;
    width: 25px;
    height: 25px;
    background:#f5f5f5;
    left:-12px;
    bottom:13px;
    transform:rotateZ(45deg);
}
.problem_block>.fukidashi>ul{
    padding-left:20px;
}
.problem_block>.fukidashi>ul>li{
    font-size:18px;
    line-height:1.5;
    margin-bottom: 10px;
}
.problem_block>.fukidashi>ul>li:last-child{
    margin-bottom: 0;
}
.problem_block>.fukidashi>ul>li>span{
    font-size:20px;
    font-weight:bold;
}
@media only screen and (max-width: 680px){
    #problem h2{
        font-size:24px;
    }
    .problem_block{
        display: block;
    }
    .problem_block>.nayami{
        font-size:18px;
        margin-bottom: 20px;
        width: 100%;
        text-align:center;
    }
    .problem_block>.fukidashi{
        width: 100%;
    }
    .problem_block>.fukidashi:before{
        bottom:auto;
        top:-12px;
        left:0;
        right:0;
        margin: auto;
    }
    #problem{
        padding-bottom: 50px;
    }
}


/*
about
*/
.sxsw_about_ttl{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 100px;
    padding: 0;
}
.sxsw_about_ttl .sxsw_ttl{
    max-width:600px;
}
.sxsw_about_ttl>p{
    margin-top:50px;
    padding-left:6%;
    
    padding-right:5%;
    font-size:16px;
}
.sxsw_about_ttl>p>span{
    font-size:20px;
    font-weight:bold;
}
.sxsw_about_program{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 150px;
    padding: 0;
    justify-content: space-between;
    align-items: center;
    max-width:1200px;
}
.sxsw_about_program_block{
    display: block;
    position: relative;
    width:calc(50% - 70px);
    height: auto;
    margin: 0;
    padding: 15% 5% 0;
    background-size:cover;
    background-position:right center;
}
.sxsw_about_program_block>div{
    display: flex;
    position: absolute;
    width: auto;
    height: 100px;
    margin: auto;
    padding: 15px 20px;
    background:#000;
    left:0;
    right:0;
    bottom:-50px;
    max-width:260px;
    align-items:center;
    justify-content: center;
}
.sxsw_about_program_block>div>p{
    color:#fff;
    font-size:20px;
    text-align:center;
    line-height:1.5;
}
.sxsw_about_program_plus{
    display: block;
    position: relative;
    width: 50px;
    height: 50px;
    margin: 0;
    padding: 0;
}
.sxsw_about_program_plus::before,.sxsw_about_program_plus::after{
    content:"";
    display: block;
    position: absolute;
    width: 100%;
    height: 5px;
    margin: auto;
    padding: 0;
    background:#000;
    left:0;
    right:0;
    top:0;
    bottom:0;
}
.sxsw_about_program_plus::after{
    transform:rotateZ(90deg);
}
.sxsw_about_recommend{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 100px;
    padding: 50px;
    border:10px solid #FFCA51;
    max-width:1200px;
    text-align:center;
}
.sxsw_about_recommend>h3{
    display: block;
    position: relative;
    width: 370px;
    height: auto;
    text-align:center;
    margin: -80px auto 50px;
    padding: 0;
    background:#fff;
    font-size:28px;
}
.sxsw_about_recommend>ul{
    display: inline-block;
    position: relative;
    width: auto;
    height: auto;
    margin: 0 auto;
    padding: 0;
}
.sxsw_about_recommend>ul>li{
    font-size:20px;
    font-weight:bold;
    margin-bottom: 20px;
    text-align:left;
    width: auto;
}
@media only screen and (max-width: 1250px){
    .sxsw_about_ttl>p{
        margin-top:20px;
    }
}
@media only screen and (max-width: 960px){
    .sxsw_about_ttl{
        display: block;
    }
    .sxsw_about_ttl>p{
        padding-left: 0;
        padding-right:0;
        margin: 0 auto;
        width: 90%;
    }
    .sxsw_about_program{
        flex-direction:column;
    }
    .sxsw_about_program_block{
        width: 100%;
        padding-top:40%;
    }
    .sxsw_about_program_plus{
        margin-top:100px;
        margin-bottom:50px;
    }
}
@media only screen and (max-width: 680px){
    .sxsw_about_recommend>h3{
        font-size:20px;
        width:280px;
    }
    .sxsw_about_recommend{
        padding: 50px 20px;
    }
    .sxsw_about_recommend>ul>li{
        font-size:16px;
    }
    .sxsw_about_recommend>ul{
        padding-left:20px;
    }
    #sxsw_about{
        padding-bottom: 50px;
    }
    .sxsw_about_ttl{
        /*margin-bottom: 0;*/
    }
    #sxsw_about .img_tile>div{
        min-height:70vw;
    }
}


/*
ISSUE
*/
#issue h2{
    text-align:center;
    margin: 0 auto 50px;
    position: relative;
    font-size:36px;
}
.issue_slide_wrap{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    max-width:1200px;

}
.issue_slide{
    background:#f5f5f5;
    border-radius:10px;
    padding: 50px;
}
.issue_marubatsu_wrap{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 50px;
    padding: 0;
    justify-content: space-between;
}
.issue_slide>p{
    font-size:16px;
    display: block;
    position: relative;
    margin: 0 auto;
    max-width:650px;
}
.issue_marubatsu_wrap>div{
    display: flex;
    position: relative;
    width:calc(50% - 20px);
    height: auto;
    margin: 0;
    padding: 50px 30px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-weight:bold;
    border-radius:10px;
}
.issue_marubatsu_wrap>.issue_batsu{
    background:#000;
    color:#fff;
}
.issue_marubatsu_wrap>.issue_maru{
    background:#FFCA51;
    color:#000;
}
.issue_marubatsu_wrap>.issue_batsu>.sign{
    display: block;
    position: relative;
    width: 50px;
    height: 50px;
    margin: 0 auto 20px;
    padding: 0;
}
.issue_marubatsu_wrap>.issue_batsu>.sign:before{
    content:"";
    display: block;
    position: absolute;
    width: 100%;
    height: 6px;
    padding: 0;
    margin: auto;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background:#fff;
    transform:rotateZ(45deg);
}
.issue_marubatsu_wrap>.issue_batsu>.sign:after{
    content:"";
    display: block;
    position: absolute;
    width: 100%;
    height: 6px;
    padding: 0;
    margin: auto;
    top:0;
    bottom:0;
    left:0;
    right:0;
    background:#fff;
    transform:rotateZ(-45deg);
}
.issue_marubatsu_wrap>.issue_maru>.sign{
    display: block;
    position: relative;
    width: 50px;
    height: 50px;
    margin: 0 auto 20px;
    padding: 0;
    border:6px solid #000;
    border-radius:100%;
}
.issue_marubatsu_wrap>.issue_batsu>p{
    text-align:center;
    font-size:24px;
    line-height:1.5;
}
.issue_marubatsu_wrap>.issue_maru>p{
    text-align:center;
    font-size:28px;
    line-height:1.5;
}
.slide_prev{
    display: block;
    position: absolute;
    width: 40px;
    height: 40px;
    margin: auto;
    padding: 0;
    top:0;
    bottom:0;
    border-left:6px solid #000;
    border-bottom:6px solid #000;
    transform:rotateZ(45deg);
    left:-40px;
    transition:all .3s;
}
.slide_prev:hover{
    opacity:.5;
    cursor: pointer;
}
.slide_next{
    display: block;
    position: absolute;
    width: 40px;
    height: 40px;
    margin: auto;
    padding: 0;
    top:0;
    bottom:0;
    border-right:6px solid #000;
    border-top:6px solid #000;
    transform:rotateZ(45deg);
    right:-40px;
    transition:all .3s;
}
.slide_next:hover{
    opacity:.5;
    cursor: pointer;
}
.slide_dot{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 20px auto 0;
    padding: 0;
    justify-content: center;
    align-items: center;
}
.slide_dot button{
    display: none;
}
.slide_dot>li{
    display: block;
    position: relative;
    width: 20px;
    height: 20px;
    background:#f5f5f5;
    border-radius:20px;
    margin: 0 10px;
}
.slide_dot>li.slick-active{
    background:#FFCA51;
}
@media only screen and (max-width: 960px){
    .slide_prev{
        width: 20px;
        height: 20px;
        border-width:4px;
        left:-25px;
    }
    .slide_next{
        width: 20px;
        height: 20px;
        border-width:4px;
        right:-25px;
    }
    .issue_slide>p{
        font-size:14px;
    }
    .issue_marubatsu_wrap>.issue_batsu>p{
        font-size:20px;
    }
    .issue_marubatsu_wrap>.issue_maru>p{
        font-size:24px;
    }
    
}
@media only screen and (max-width: 680px){
    #issue h2{
        font-size:24px;
    }
    .issue_slide_wrap{
        width:calc(100% - 25px);
    }
    .issue_slide{
        padding:0;
        overflow: hidden;
    }
    .slide_prev{
        width: 15px;
        height: 15px;
        border-width:3px;
        left:-15px;
    }
    .slide_next{
        width: 15px;
        height: 15px;
        border-width:3px;
        right:-15px;
    }
    .issue_marubatsu_wrap>div{
        width: 50%;
        border-radius: 0;
        padding: 15px;
    }
    .issue_marubatsu_wrap>.issue_batsu>.sign{
        width: 30px;
        height: 30px;
        margin: 0 auto 10px;
    }
    .issue_marubatsu_wrap>.issue_maru>.sign{
        width: 30px;
        height: 30px;
        margin: 0 auto 10px;
    }
    .issue_marubatsu_wrap{
        margin: 0 auto 20px;
    }
    .issue_marubatsu_wrap>.issue_batsu>p{
        font-size:14px;
    }
    .issue_marubatsu_wrap>.issue_batsu>p>br{
        display: none;
    }
    .issue_marubatsu_wrap>.issue_maru>p{
        font-size:16px;
    }
    .issue_marubatsu_wrap>.issue_maru>p>br{
        display: none;
    }
    .issue_slide>p{
        position: relative;
        width: 90%;
        padding-bottom: 20px;
    }
}
.black_back{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    background:#000;
    color:#fff !important;
}


/*
PROGRAM
*/
#program h2{
    text-align:center;
    margin: 0 auto 10px;
    font-size:36px;
}
#program>.secinner>p{
    text-align:center;
    font-size:18px;
    font-weight:bold;
    margin: 0 auto 50px;
    position: relative;
}
.program_block{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 50px;
    padding: 0;
    justify-content: space-between;
}
.program_block:last-child{
    margin-bottom: 0;
}
.program_block>.txt{
    display: block;
    position: relative;
    width:calc(50% - 20px);
    height: auto;
    margin: 0;
    padding: 0;
}
.program_block>.img{
    display: block;
    position: relative;
    width:calc(50% - 20px);
    height: auto;
    margin: 0;
    padding: 0;
}
.program_block>.txt>h3{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 20px;
    padding: 0;
    font-size:24px;
    border-bottom:10px solid #fff;
}
.program_block>.txt>h3>span{
    font-size:96px;
    font-family:barlow-semi-condensed, Arial, Helvetica, source-han-sans-japanese, sans-serif;
    line-height:1.1;
    padding-right:20px;
}
.program_block>.img>img{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
}
@media only screen and (max-width: 960px){
    .program_block{
        display: block;
    }
    .program_block>.txt{
        width: 100%;
        margin-bottom: 20px;
    }
    .program_block>.img{
        width: 100%;
    }
}
@media only screen and (max-width: 680px){
    #program h2{
        font-size:24px;
    }
    .program_block>.txt>h3{
        font-size:18px;
    }
    .program_block>.txt>h3>span{
        font-size:64px;
    }
    #program{
        padding-bottom: 50px;
    }
}


/*
whats
*/
#sxsw_what{
    background:#000;
    color:#fff;
}
.sxsw_what_ttl{
    display: block;
    position: relative;
    width: 111.11111111%;
    height: auto;
    margin: 0 auto 100px;
    padding: 0;
    left:-5.5555555%;
    text-align:center;
}
.sxsw_ttl>div{
    display: inline-block;
    position: relative;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
}
.sxsw_what_ttl>p{
    width: auto;
    font-weight:900;
    font-size:180px;
    line-height:1;
}
.sxsw_what_ttl_inner{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    
}
.sxsw_what_ttl_inner>h2{
    display: inline-block;
    position: relative;
    font-size:20px;
    width: auto;
    background:#fff;
    background:#000;
    padding: 0 30px;
}
.sxsw_what_ttl_inner:before{
    content:"";
    display: block;
    position: absolute;
    width: 100%;
    height:10px;
    background:#FFCA51;
    margin: auto;
    padding: 0;
    top:0;
    bottom:0;
}
.sxsw_what_wrap{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 100px;
    padding: 0;
    max-width:1150px;
}
.sxsw_what_block{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 50px;
    justify-content: space-between;
}
.sxsw_what_img{
    display: block;
    position: relative;
    width:calc(50% - 25px);
    margin: 0;
    padding: 0;
    height:300px;
    background-size:cover;
    background-position:center;
}
.sxsw_what_img>p{
    position: absolute;
    text-align:right;
    bottom:10px;
    right:10px;
    font-size:12px;
}
.sxsw_what_txt{
    display: block;
    position: relative;
    width:calc(50% - 25px);
    height: auto;
    margin: 0;
    padding: 0;
}
.sxsw_what_block:first-child>.sxsw_what_txt{
    display: flex;
    align-items: center;
}
.sxsw_what_block:first-child>.sxsw_what_txt>h3{
    font-size:44px;
}
.sxsw_what_block:nth-child(2){
    flex-direction: row-reverse;
}
.sxsw_what_txt>p{
    font-size:16px;
}
.sxsw_what_feature{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 50px;
    padding: 0;
    justify-content: space-between;
}
.sxsw_what_feature_block{
    display: block;
    position: relative;
    width:calc(33.33333% - 20px);
    height: auto;
    margin: 0;
    padding: 0;
}
.sxsw_what_feature_key{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 30px;
    padding: 30px 10px;
    border:10px solid #FFCA51;
    text-align:center;
    align-items:center;
    justify-content:center;
    min-height:230px;
}
.sxsw_what_feature_key>p{
    font-weight:bold;
    font-size:18px;
}
.sxsw_what_feature_key>p>span{
    font-size:28px;
}
.sxsw_what_feature_key>p>span.num{
    font-size:36px;
}
.sxsw_what_feature_note{
    display: block;
    position: absolute;
    width: auto;
    height: auto;
    margin: auto;
    padding: 0;
    text-align:right;
    bottom:10px;
    right:10px;
}
.sxsw_what_message{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 100px;
    padding: 30vh 20px 30vh;
    text-align:center;
    background:#fff;
    color:#000;
    font-size:20px;
    font-weight:bold;
    background-size:cover;
    background-position:center;
    background-image:url(../img/whats_4.jpg);
}
.sxsw_what_message:before{
    content:"";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    margin: auto;
    padding: 0;
    top:0;
    left:0;
    background:rgba(255,255,255,.8);
}
.sxsw_what_message>p{
    position: relative;
}
.sxsw_logo_what{
    display: block;
    position: relative;
    width: 400px;
    height: auto;
    margin: 80px auto 100px;
    padding: 0;
    

}
@media only screen and (max-width: 1250px){
    .sxsw_what_ttl>p{
        font-size:150px;
    }
}
@media only screen and (max-width: 960px){
    .sxsw_what_ttl>p{
        font-size:100px;
    }
}
@media only screen and (max-width: 680px){
    .sxsw_what_ttl>p{
        font-size:56px;
    }
    .sxsw_what_ttl_inner>h2{
        font-size:16px;
    }
    .sxsw_what_ttl_inner:before{
        height: 8px;
    }
    .sxsw_logo_what{
        width: 60%;
    }
}



/*
program
*/
#sxsw_program>.sxswinner{
    padding-bottom: 0;
}
.sxsw_program_wrap{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    justify-content: space-between;
}
.sxsw_program_block{
    display: block;
    position: relative;
    width:calc(50% - 30px);
    height: auto;
    margin: 0;
    padding: 0;
}
.sxsw_program_time{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 30px;
    padding: 0 0 10px;
    border-bottom:1px solid #FFCA51;
}
.sxsw_program_time>p{
    font-weight:bold;
    font-size:24px;
    line-height:1.2;
}
.sxsw_program_time>p>span{
    font-size:48px;
}
.sxsw_program_block>h3{
    font-size:24px;
    margin-bottom: 20px;
}
.sxsw_program_block>h3>span{
    font-size:18px;
}
.sxsw_program_block>p{
    font-size:16px;
}
@media only screen and (max-width: 960px){
    .sxsw_what_block{
        display: block;
    }
    .sxsw_what_img{
        width: 100%;
        margin: 0 auto 20px;
    }
    .sxsw_what_txt{
        width: 100%;
    }
    .sxsw_what_feature{
        display: block;
        max-width:500px;
    }
    .sxsw_what_feature_block{
        width: 100%;
        margin-bottom:50px;
    }
}
@media only screen and (max-width: 680px){
    .sxsw_what_block:first-child>.sxsw_what_txt>h3{
        font-size:30px;
    }
    .sxsw_what_feature_key>p{
        font-size:16px;
    }
    .sxsw_what_feature_key>p>span{
        font-size:24px;
    }
    .sxsw_program_wrap{
        display: block;
    }
    .sxsw_program_block{
        width: 100%;
        margin-bottom: 50px;
    }
    .sxsw_program_time>p{
        font-size:20px;
    }
    .sxsw_program_time>p>span{
        font-size:36px;
    }
}


/*
speaker
*/
.sxsw_speakers_wrap{
    display: flex;
    position: relative;
    width: 90%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    justify-content: space-between;
    max-width:1100px;
}
.sxsw_speakers_block{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    justify-content:space-between;
    align-items:center;
    max-width:1100px;
}
.sxsw_speakers_block>.img{
    display: block;
    position: relative;
    width: 400px;
    height: auto;
    margin: 0;
    padding: 0;
}
.sxsw_speakers_block>.img>img{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
}
.sxsw_speakers_block>.txt{
    display: block;
    position: relative;
    width:calc(100% - 450px);
}
.sxsw_speakers_block>.txt>dl{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 20px;
    font-weight:bold;
    font-size:16px;
}
.sxsw_speakers_block>.txt>dl>dt>span{
    font-size:24px;
}
.sxsw_speakers_block>.txt>p{
    font-size:16px;
}
@media only screen and (max-width: 960px){
    .sxsw_speakers_wrap{
        display: block;
    }
    .sxsw_speakers_block{
        display: block;
        width: 100%;
        margin-bottom: 50px;
    }
    .sxsw_speakers_block>.img{
        width: 80%;
        max-width:400px;
        margin: 0 auto 20px;
    }
    .sxsw_speakers_block>.txt{
        width: 100%;
    }
}


#entry{
    background:#FFCA51;   
}
#entry .sxsw_ttl{
    margin-left:auto;
    margin-right:auto;
}
#entry .sxsw_ttl>div{
    display: block;
    margin: 0 auto;
}
#entry .sxsw_ttl>div>p{
    text-align:center;
}
.entry_info{
    display: block;
    position: relative;
    width: 90%;
    height: auto;
    margin: 0 auto 50px;
    padding: 50px;
    border:1px solid #000;
    max-width:800px;
}
.entry_info>dl{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 30px;
    padding: 0;
    max-width:600px;
    font-size:24px;
    font-weight:bold;
}
.entry_info>dl>dt{
    display: block;
    position: relative;
    width:180px;
    height: auto;
    margin: 0 auto;
    padding: 0;
}
.entry_info>dl>dd{
    display: block;
    position: relative;
    width:calc(100% - 180px);
    height: auto;
    margin: 0 auto;
    padding: 0;
}
.entry_price_wrap{
    display: block;
    position: relative;
    width: 90%;
    height: auto;
    margin: 0 auto 50px;
    text-align:center;
}
.entry_price_main{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    text-align:center;
}
.entry_price_main>.price{
    font-size:24px;
    font-weight:bold;
    line-height:1.2;
}
.entry_price_main>.price>span{
    font-size:64px;
    
}
.entry_price_early{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    text-align:center;
}
.entry_price_early:before{
    content:"";
    display: block;
    position: relative;
    width: 40px;
    height: 0;
    border-top:30px solid #CA0F0F;
    border-left:20px solid transparent;
    border-right:20px solid transparent;
    margin: 0 auto;
}
.entry_price_early>.price{
    font-size:24px;
    font-weight:bold;
    color:#CA0F0F;
    line-height:1.2;
}
.entry_price_early>.price>span{
    font-size:64px;
}
.entry_price_early>p.early{
    font-weight:bold;
    font-size:24px;
    line-height:1.5;
}
.entry_price_early>p.early_end{
    font-weight:bold;
    font-size:18px;
}
.entry_btn{
    display: block;
    position: relative;
    width: 90%;
    height: auto;
    margin: 0 auto;
    padding: 0;
}
.entry_btn>a{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 50px 15px;
    color:#FFCA51;
    text-align:center;
    background:#000;
    border-radius:300px;
    max-width:700px;
}
.entry_btn>a>p{
    font-size:28px;
    font-weight:bold;
    line-height:1.5;
}
.entry_btn>a>p>span{
    font-size:18px;
}
@media only screen and (max-width: 680px){
    .entry_info>dl{
        display: block;
        font-size:20px;
    }
    .entry_info>dl>dt{
        width: 100%;
        margin-bottom: 10px;
        border-bottom:2px solid #000;
    }
    .entry_info>dl>dd{
        width: 100%;
    }
    .entry_info{
        padding: 50px 30px;
    }
    .entry_price_early>p.early{
        font-size:20px;
    }
    .entry_price_early>p.early_end{
        font-size:16px;
    }
    .entry_btn>a>p{
        font-size:24px;
    }
    .entry_price_main>.price>span{
        font-size:48px;
    }
    .entry_btn>a{
        padding: 30px 15px;
    }
}




/*
info
*/
#sxsw_info{
    background:#000;
    color:#fff;
}

#sxsw_info .sxsw_ttl_inner>h2{
    background:#000;
}
.sxsw_info_wrap{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 100px;
    padding: 0;
    max-width:800px;
}
.sxsw_info_wrap>dl{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 30px 0;
    border-bottom:1px solid #FFCA51;
    align-items: center;
    justify-content: space-between;
}
.sxsw_info_wrap>dl:first-child{
    border-top:1px solid #FFCA51;
}
.sxsw_info_wrap>dl>dt{
    display: block;
    position: relative;
    width: 200px;
    height: auto;
    font-size:20px;
    font-weight:bold;
    color:#FFCA51;
    text-align:center;
}
.sxsw_info_wrap>dl>dd{
    display: block;
    position: relative;
    width:calc(100% - 250px);
    font-size:16px;
}
.sxsw_info_wrap>dl>dd>span{
    font-size:14px;
}
.sxsw_info_wrap>dl>dd>a{
    color:inherit;
    text-decoration: underline;
}
@media only screen and (max-width: 680px){
    .sxsw_info_wrap>dl{
        display: block;
    }
    .sxsw_info_wrap>dl>dt{
        width: 100%;
        
        margin-bottom: 20px;
    }
    .sxsw_info_wrap>dl>dd{
        width: 100%;
    }
}


/*
access
*/
#sxsw_access{
    background:#000;
    color:#fff;
}
#sxsw_access .sxsw_ttl_inner>h2{
    background:#000;
}
#sxsw_access dl>dd>a{
    color:inherit;
    text-decoration: underline;
}
.sxsw_access_img{
    display: block;
    position: relative;
    width: 100%;
    max-width: 800px;
    height: auto;
    margin: 0 auto 30px;
    padding: 0;
}
#sxsw_access .sxswinner>dl{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto 50px;
    padding: 0;
    max-width:800px;
}
#sxsw_access .sxswinner>dl>dt{
    font-size:20px;
    font-weight:bold;
}
#sxsw_access .sxswinner>dl>dd{
    font-size:16px;
}
.sxsw_access_detail{
    display: block;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    max-width:800px;
}
.sxsw_access_detail>h3{
    font-size:20px;
    margin-bottom: 10px;
}
.sxsw_access_detail>dl{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 30px 0;
    border-top:1px solid #FFCA51;
    font-size:16px;
}
.sxsw_access_detail>dl>dt{
    display: block;
    position: relative;
    width: 150px;
    height: auto;
    margin: 0;
    padding: 0;
    font-weight:bold;
}
.sxsw_access_detail>dl>dd{
    display: block;
    position: relative;
    width: calc(100% - 300px);
    height: auto;
    margin: 0;
    padding: 0;
}
@media only screen and (max-width: 680px){
    .sxsw_access_detail>dl{
        display: block;
    }
    .sxsw_access_detail>dl>dt{
        width: 100%;
        margin-bottom: 20px;
        text-align:center;
    }
    .sxsw_access_detail>dl>dd{
        width: 100%;
    }
}




/*
us
*/
.sxsw_us_wrap{
    display: flex;
    position: relative;
    width: 105.55555555%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    align-items:center;
    justify-content: space-between;
}
.sxsw_us_txt{
    display: block;
    position: relative;
    width: 45.5%;
    height: auto;
    margin: 0;
    padding: 0;
}
.sxsw_us_img{
    display: block;
    position: relative;
    width:50%;
    height: auto;
    min-height:450px;
    margin: 0;
    padding: 0;
    background-size:cover;
    background-position:center;
    background-image:url(../img/us.jpg);
}
.sxsw_us_txt>h3{
    font-size:24px;
    margin-bottom: 30px;
}
.sxsw_us_txt>p>a{
    color:inherit;
    text-decoration: underline;
}
@media only screen and (max-width: 960px){
    .sxsw_us_wrap{
        flex-direction: column-reverse;
        width: 100%;
    }
    .sxsw_us_img{
        width: 100%;
        margin-bottom: 50px;
        min-height:60vw;
    }
    .sxsw_us_txt{
        width: 100%;
    }
}

.past_event{
    display: flex;
    position: relative;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 0;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap:wrap;
}
.past_event>img{
    display: block;
    position: relative;
    width:calc(33.33333% - 10px);
    height: auto;
    margin: 0 0 15px;
    padding: 0;
}
@media only screen and (max-width: 960px){
    .past_event>img{
        width:calc(50% - 5px);
    }
}
@media only screen and (max-width: 680px){
    .past_event>img{
        width:100%;
    }
}
.fixed_btn{
    display: block;
    position: fixed;
    width: calc(100% - 40px);
    height: auto;
    margin: auto;
    bottom:20px;
    right:20px;
    max-width:400px;
}
.fixed_btn .entry_btn{
    width: 100%;
}
.fixed_btn .entry_btn>a{
    padding: 15px;
}
.fixed_btn .entry_btn>a>p{
    font-size:18px;
}
.fixed_btn .entry_btn>a>p>span{
    font-size:14px;
}
@media only screen and (max-width: 680px){
    .fixed_btn{
        max-width:200px;
    }
}