@charset "UTF-8";
/* 2018 Index CSS DOCUMENT */
.red {
    color: #E50012;
}

/*** BANNER CONTAINER ***/
.banner-container {
    width: 966px;
    margin: 0 auto 190px;
}

.banner-container .image {
    width: 100%;
    margin: 25px auto 0;
}

.change-schedule {
    display: block;
    margin-top: 1em;
    text-align: right;
}


/*** GUIDE ***/
#GUIDE {
    /*padding: 300px 0 170px;*/
    padding: 185px 0 170px;
    background-image: url("../images/index/guide-bg.png");
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
}

#GUIDE .viewport {
    width: 966px;
    margin: 0 auto;
}

/*
#GUIDE .Flex {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
*/

#GUIDE .image {
    width: 464px;
    border: 1px solid #c0c0c0;
    margin-bottom: 45px;
}
#GUIDE .txtarea{
    width: 464px;
}

#GUIDE .covid-19 {
    width: 100%;
    border: 1px solid #E50012;
    padding: 20px;
    box-sizing: border-box;
}

#AREA .link_btn {

}

#GUIDE .link_btn > * {
    font-size: 18px;
}

#GUIDE .link_btn > *::before {
    border-width: 5px 0 0 8px;
}

#GUIDE .link_btn > *::after {
    width: 240px;
    margin-top: 10px;
}

#GUIDE .txtarea dt {
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 0.02em;
    line-height: 1.7083333;
    margin-bottom: 30px;
}

.corona {
    display: table;
    max-width: 450px;
    width: 96%;
    height: 45px;
    font-size: 16px;
    text-align: center;
    color: red;
    border: 2px solid red;
    margin: 0 auto 45px;
}

.corona > * {
    display: table-cell;
    vertical-align: middle;
}

.corona > * > * {
    text-decoration: underline;
}

.coming-soon {
    font-size: 18px;
    letter-spacing: 0.02em;
    line-height: 1.5em;
    text-align: center;
}

.paragraph1 {
    font-size: 18px;
    letter-spacing: 0.02em;
    line-height: 1.5;
    margin-bottom: 30px;
}

.paragraph1 .date {
    font-size: 22px;
    font-weight: bold;
}

.paragraph1 .time {
    font-weight: bold;
}

.paragraph2 {
    font-size: 18px;
    font-weight: bold;
    /*color: red;*/
    margin-bottom: 20px;
}

.paragraph3 {
    font-size: 14px;
    margin-bottom: 15px;
}

.paragraph3 span {
    font-size: 16px;
    font-weight: bold;
}

.paragraph4 {
    font-size: 14px;
}

.paragraph4 span {
    font-size: 16px;
    font-weight: bold;
}


/*** MOVIE ***/
.movie-wrap {
    padding: 45px 0 0;
}

.movie-wrap p {
    font-size: 16px;
    letter-spacing: 0.02em;
    line-height: 1.5;
    margin-bottom: 15px;
}

.movie-item {
    position: relative;
    width: 100%;
}

.movie-item:first-of-type {
    margin-bottom: 25px;
}

.movie-item::before {
    display: block;
    content: "";
    padding-top: 56.2719812426729%;
}

.movie-item > * {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

/*** GREETING ***/
#GREETING {
    padding: 190px 0 0;
}

#GREETING .viewport {
    width: 780px;
    margin: 0 auto;
}

#GREETING .intro dt {
    margin-bottom: 80px;
}

#GREETING .intro dd {
    font-size: 16px;
}

#GREETING .intro dd p {
    display: block;
    margin-bottom: 20px;
}

#GREETING .intro dd cite {
    display: block;
    text-align: right;
}

#GREETING .secttl {
    font-size: 34px;
    text-align: center;
    letter-spacing: 0.08em;
    line-height: 1;
    color: #000;
}

#GREETING .secttl.triangle::after {
    border-style: solid;
    border-width: 0 5px 9px 5px;
    border-color: transparent transparent #414141 transparent;
    margin: 20px auto 30px;
}

/*** COURSE ***/
#COURSE {
    margin-bottom: 190px;
}

#COURSE .viewport {
    width: 580px;
    margin: 0 auto;
}

#COURSE .intro > dt {
    margin-bottom: 80px;
}

#COURSE .intro dd {
    font-size: 16px;
}

#COURSE .course-facluty {
    font-size: 24px;
    margin-bottom: 20px;
}

#COURSE .course-category {
    font-weight: bold;
    display: block;
    margin-bottom: 12px;
}

#COURSE .course-text {
    margin-bottom: 25px;
}

#COURSE .course-text:last-child {
    margin-bottom: 0;
}

#COURSE .secttl {
    font-size: 34px;
    text-align: center;
    letter-spacing: 0.08em;
    line-height: 1;
    color: #000;
}

#COURSE .secttl.triangle::after {
    border-style: solid;
    border-width: 0 5px 9px 5px;
    border-color: transparent transparent #414141 transparent;
    margin: 20px auto 30px;
}

/*** LECTURE ***/
#LECTURE {
    padding: 0 0 190px;
    background-image: url("../images/index/lecture-bg.png");
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
}

#LECTURE .intro {
    text-align: center;
    margin-bottom: 115px;
}

#LECTURE .intro .ttl {
    font-size: 34px;
    letter-spacing: 0.08em;
    line-height: 1;
    color: #000;
}

#LECTURE .secttl.triangle::after {
    border-style: solid;
    border-width: 0 5px 9px 5px;
    border-color: transparent transparent #414141 transparent;
    margin: 20px auto 30px;
}

#LECTURE .intro .text p {
    font-size: 16px;
    letter-spacing: 0.02em;
    line-height: 1.6875;
    /*margin-bottom: 1.6875em;*/
}

/*#LECTURE .intro .text p:last-child {
    margin-bottom: 0;
}*/
#LECTURE .intro .text p span {
    margin-left: 1em;
}

.lec_list {
    margin: 0 0 50px 0;
    justify-content: center;
    gap: 30px;
}

.lec_list > * {
    width: 280px;
}
.lec_list + p {
    text-align: center;
    margin-bottom: 45px;
}

.lec_detail .image {
    margin-bottom: 20px;
}

.lec_detail .time {
    margin-bottom: 15px;
}

.lec_detail .ttl {
    font-weight: bold;
}

#LECTURE .btn {
    max-width: 420px;
}

/*** REQUEST ***/
#REQUEST{
    margin-bottom: 160px;
    font-size: 14px;
}
.req-sub-headline{
    font-size: 16px;
    margin-bottom: 16px;
    margin-top: 16px;
    font-weight: bold;
}
#REQUEST .secttl {
    text-align: center;
    letter-spacing: 0.08em;
    line-height: 1;
    color: #000;
}

#REQUEST .secttl.triangle::after {
    border-style: solid;
    border-width: 0 5px 9px 5px;
    border-color: transparent transparent #414141 transparent;
    margin: 20px auto 30px;
}
#REQUEST li{
    padding-left: 1em;
    text-indent: -1em;
}
#REQUEST p{
    display: block;
    margin-bottom: 10px;
}
/*** NEWS ***/
#NEWS {
    padding-bottom: 205px;
}

#NEWS > .Flex {
    width: 956px;
    margin: 0 auto;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

#NEWS .secttl {
    margin-right: 80px;
}

.news_list {
    width: 615px;
}

.news_detail {
    margin-bottom: 15px;
}

.news_detail a {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.news_detail:last-child {
    margin-bottom: 0;
}

.news_detail .category {
    margin-right: 20px;
}

.news_detail .date {
    font-size: 16px;
    letter-spacing: 0.02em;
}

.news_detail .date::after {
    display: inline-block;
    content: "";
    width: 6px;
    height: 1px;
    background-color: #707070;
    margin: 0 2em;
    vertical-align: middle;
}

.news_detail a > div {
    max-width: 505px;
}

.news_detail .date,
.news_detail .ttl {
    display: inline-block;
    vertical-align: middle;
}

.news_detail .ttl {
    max-width: 332px;
    vertical-align: middle;
}

/*** PICK UP ***/
#PICKUP {
    padding-bottom: 170px;
    background-image: url("../images/index/pickup-bg.png");
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
}

#PICKUP .secttl {
    text-align: center;
    line-height: 1.38461538;
}

#PICKUP .secttl {
    margin-bottom: 120px;
}

.pu_list {
    width: 1166px;
    margin: 0 auto 105px;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.pu_detail {
    position: relative;
}

.pu_detail .image {
    width: 550px;
    height: 375px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.pu_detail .ttl {
    position: absolute;
    font-size: 24px;
    letter-spacing: 0.02em;
    top: calc(50% - 22.5px);
    transform: translateY(-50%);
    max-width: 90%;
}

.pu_detail .ttl span {
    display: inline-block;
    color: #fff;
    background-color: #000;
    line-height: 1.9166;
    padding: 0 0.46em;
}

.pu_list > .pu_detail:nth-child(odd) .ttl {
    left: -50px;
}

.pu_list > .pu_detail:nth-child(even) {
    margin-top: 130px;
}

.pu_list > .pu_detail:nth-child(even) .ttl {
    text-align: left;
    right: -50px;
}

.pu_detail .link_btn {
    margin-top: 20px;
    text-align: right;
}

.pu_detail .link_btn > * {
    letter-spacing: 0.2em;
    text-align: center;
}

/*** EVENT ***/
#EVENT {
    padding: 0 0 70px;
    background-image: url("../images/index/event-bg.png");
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
}

#EVENT .secttl {
    text-align: center;
    line-height: 1.38461538;
    margin-bottom: 120px;
}

.eve_list {
    margin: 0 auto 75px;
    row-gap: 45px;
}

.eve_list > * {
    width: 290px;
}


.eve_detail .imgframe {
    margin-bottom: 20px;
}

.eve_detail .image {
    width: 280px;
    height: 280px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.eve_detail .ttl {
    font-size: 18px;
    letter-spacing: 0.04em;
    line-height: 1.5555;
    margin-bottom: 5px;
}

.eve_detail .date {
    font-size: 16px;
}

.eve_detail .time {
    font-size: 16px;
}

.eve_detail p {
    margin-top: 5px;
}

/*** BANNER ***/
#bnr-1 {
    padding-bottom: 170px;
}

/*** AREA ***/
#AREA {
    padding-bottom: 170px;
    background-image: url("../images/index/area-bg.png");
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
}

#AREA .secttl {
    text-align: center;
    line-height: 1.38461538;
    margin-bottom: 120px;
}

#AREA .secttl::after {
    border-style: solid;
    border-width: 0 3px 5px 3px;
    border-color: transparent transparent #707070 transparent;
    margin: 3px auto 0;
}

#AREA .left {
    width: 540px;
}

#AREA .right {
    position: relative;
    width: 490px;
    font-size: 15px;
    text-align: center;
}

#AREA .right .info {
    position: absolute;
    display: block;
    padding: 10px 15px;
    border: 1px solid red;
    color: red;
    top: 40%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
    background-color: #fff;
}

#AREA .left .image {
    margin-bottom: 45px;
}

#AREA .right .image {
    margin-bottom: 45px;
}

#AREA .link_btn {

}

#AREA .link_btn > * {
    font-size: 18px;
}

#AREA .link_btn > *::before {
    border-width: 5px 0 0 8px;
}

#AREA .link_btn > *::after {
    width: 176px;
    margin-top: 10px;
}

#AREA .list_container {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 30px;
}

#AREA #food_drink .ttl {
    /*
    text-decoration-line: line-through;
    text-decoration-color: #e50111;
    text-decoration-thickness: 2px;
     */
}

#AREA #food_drink {
    position: relative;
}

#AREA #food_drink .red {
    position: absolute;
    width: 280px;
    top: 55px;
    right: 20px;
}

.list {
    margin-bottom: 30px;
}

.right > *:last-child {
    margin-bottom: 0;
}

.list dt {
    font-size: 12px;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 10px;
    padding-left: 20px;
}

.list li {
    padding: 7px 20px;
}

.list li:nth-child(odd) {
    background-color: #FAFAFA;
}

.list li:nth-child(even) {
    background-color: #F5F4F4;
}

.ex {
    width: 100%;
    border: 1px dotted #000000;
    /*
    padding: 20px 70px 20px 0;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    */
    padding: 20px;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.ex > * {
    width: 50%;
}

.ex p {
    font-size: 16px;
    font-weight: bold;
    line-height: 1.6875;
    text-align: center;
    padding: 23px 50px;
    border-right: 1px dotted #000000;
}

.ex dl {
    padding: 0 50px;
    box-sizing: border-box;
    /*padding-top: 20px;*/
}

.ex .ttl,
.ex dd {
    font-size: 14px;
    line-height: 1.71428571;
}

.ex .ttl {
    font-weight: bold;
}

/*** WORKS ***/
#WORKS {
    padding-bottom: 170px;
}

#WORKS .secttl {
    text-align: center;
    line-height: 1.38461538;
    margin-bottom: 25px;
}

#WORKS .intro_txt {
    font-size: 14px;
    letter-spacing: 0.02em;
    text-align: center;
    margin-bottom: 85px;
}

.works_list {
    width: 1366px;
    padding-bottom: 50px;
    margin: 0 auto;
}

.works_list .slick-slide {
    padding: 0 30px;
}

.works_detail {
    position: relative;
    display: block;
    width: 100%;
    overflow: hidden;
    outline: none;
    /*width: 360px;*/
}

.works_detail .link_btn {
    position: absolute;
    display: table;
    width: 185px;
    height: 38px;
    right: 0;
    bottom: 0;
    background-color: #fff;
}

.works_detail .link_btn > * {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

.works_detail .link_btn > *::after {
    position: absolute;
    bottom: 0;
    width: 100%;
}

.slick-dots li {
    width: auto;
    height: auto;
}

.slick-dots li button {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background-color: #414141;
}

.slick-dots .slick-active button {
    background-color: red;
}

/*** ACCESS ***/
#ACCESS {
    padding-bottom: 185px;
}

#ACCESS .secttl {
    text-align: center;
    line-height: 1.38461538;
    margin-bottom: 135px;
}

#ACCESS .intro {
    margin-bottom: 90px;
}

#ACCESS .intro dt {
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 0.02em;
    line-height: 1.6818;
    text-align: center;
    margin-bottom: 25px;
}

#ACCESS .intro .text p {
    font-size: 18px;
    letter-spacing: 0.02em;
    line-height: 1.7222;
    text-align: center;
    margin-bottom: 45px;
}

#ACCESS .intro .link_btn > *::after {
    width: 200px;
}

#ACCESS .intro .link_btn > * span {
    position: relative;
    padding-left: 18px;
}

#ACCESS .intro .link_btn > * span::before {
    position: absolute;
    display: block;
    content: "";
    width: 11px;
    height: 15px;
    background-image: url("../images/index/google.svg");
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

#ACCESS .left {
    width: 440px;
}

#ACCESS .left p {
    font-size: 16px;
    line-height: 2;
    margin-bottom: 15px;
}

#ACCESS .btn_container {
    width: 424px;
}

#ACCESS .left > .btn_container {
    margin-bottom: 40px;
}

#ACCESS .btn_container .btn {
    margin-bottom: 15px;
}

#ACCESS .btn_container .btn:last-child {
    margin-bottom: 0;
}

#ACCESS .btn_container small {
    display: block;
    font-size: 13px;
    margin-bottom: 5px;
}

#ACCESS .left .ttl {
    display: inline-block;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0.02em;
    line-height: 1;
    padding-bottom: 5px;
    border-bottom: 1px solid #707070;
    margin-bottom: 15px;
}

/*#ACCESS .left dl .btn {
    opacity: .3;
}*/
#ACCESS .left small {
    display: block;
    font-size: 13px;
    margin-top: 15px;
}

/*** SNS ***/
#SNS {
    padding-bottom: 100px;
    background-image: url("../images/index/sns-bg.png");
    background-size: 100% 100%;
    background-position: center center;
    background-repeat: no-repeat;
}

.LOGO {
    display: block;
    width: 280px;
}

#SNS .secttl {
    text-align: center;
    line-height: 1.38461538;
}

#SNS .secttl {
    margin-bottom: 120px;
}

#SNS .ttl {
    font-size: 20px;
    letter-spacing: 0.2em;
    line-height: 1;
    margin-bottom: 15px;
}

#SNS .link_btn {
    letter-spacing: 0.2em;
    margin-top: 35px;
}

#TWITTER {
    width: 400px;
}

#TWITTER .twitter-timeline {
    min-height: 433px !important;
    height: 100%;
}

.lec_detail .name {
    font-size: 18px;
    margin-top: 10px;
}

@media screen and (max-width: 414px) {
    /*** BANNER ***/
    .banner-container {
        width: 355px;
        margin: 0 auto 60px;
    }

    /*** GREETING ***/
    #GREETING {
        padding: 40px 0 0;
    }

    #GREETING .viewport {
        width: 355px;
    }

    #GREETING .intro dt {
        margin-bottom: 40px;
    }

    #GREETING .secttl {
        font-size: 18px;
        letter-spacing: 0.02em;
    }

    #GREETING .secttl.triangle::after {
        border-width: 0 3px 5px 3px;
        margin: 10px auto 20px;
    }

    /*** COURSE ****/
    #COURSE {
        margin-bottom: 85px;
    }

    #COURSE .viewport {
        width: 355px;
        margin: 0 auto;
    }

    #COURSE .intro > dt {
        margin-bottom: 60px;
    }

    #COURSE .course-facluty {
        font-size: 18px;
        margin-bottom: 20px;
    }

    #COURSE .course-category {
        font-weight: bold;
        display: block;
        margin-bottom: 12px;
    }

    #COURSE .course-text {
        margin-bottom: 25px;
    }

    #COURSE .course-text:last-child {
        margin-bottom: 0;
    }

    #COURSE .secttl {
        font-size: 18px;
        letter-spacing: 0.02em;
    }

    #COURSE .secttl.triangle::after {
        border-width: 0 3px 5px 3px;
        margin: 10px auto 20px;
    }

    /*** GUIDE ***/
    #GUIDE {
        padding: 35px 0 85px;
        background-image: url("../images/index/sp_guide-bg.png");
    }

    #GUIDE .viewport {
        width: 355px;
        margin: 0 auto;
    }

    #GUIDE .Flex > * {
        width: 100%;
    }

    #GUIDE .image {
        width: 100%;
        margin-bottom: 25px;
    }

    #GUIDE .link_btn {
        margin-bottom: 45px;
    }

    #GUIDE .link_btn > * {
        font-size: 12px;
    }

    #GUIDE .link_btn > *::after {
        width: 180px;
    }

    #GUIDE .txtarea dt {
        font-size: 18px;
        margin-bottom: 25px;
    }

    .corona {
        font-size: 14px;
    }

    #GUIDE .coming-soon {
        margin-bottom: 45px;
    }

    .paragraph1 {
        position: relative;
        padding-bottom: 30px;
        margin-bottom: 30px;
    }

    .paragraph1::after {
        position: absolute;
        display: block;
        content: "";
        width: 6px;
        height: 1px;
        background-color: #707070;
        bottom: 0;
        left: 0;
    }

    .paragraph1 .date {
        font-size: 18px;
        font-weight: normal;
        line-height: 1;
        margin-bottom: 0.7222em;
    }

    .paragraph1 .time {
        font-size: 14px;
        line-height: 1;
        font-weight: normal;
        margin-bottom: 0.7142em;
    }

    .paragraph1 br {
        display: none;
    }

    .paragraph1 span {
        display: block;
    }

    .paragraph2 {
        font-size: 14px;
    }

    .paragraph3 span {
        font-size: 14px;
    }

    .paragraph4 span {
        font-size: 14px;
    }

    .movie-wrap p {
        font-size: 14px;
    }

    /*** LECTURE ***/
    #LECTURE {
        padding: 0 0 100px;
        background: none;
    }

    #LECTURE .secttl {
        font-size: 18px;
        letter-spacing: 0.02em;
    }

    #LECTURE .secttl.triangle::after {
        border-width: 0 3px 5px 3px;
        margin: 10px auto 20px;
    }

    #LECTURE .intro {
        margin-bottom: 60px;
    }

    #LECTURE .intro .text p {
        font-size: 12px;
    }

    #LECTURE .intro .text p span {
        margin-left: 0;
    }

    .lec_list {
        margin-bottom: 25px;
    }

    .lec_list > * {
        width: 100%;
    }

    .lec_list li {
        margin-bottom: 60px;
    }

    .lec_list li:last-child {
        margin-bottom: 0;
    }

    .lec_detail,
    .lec_detail .image {
        width: 100%;
    }

    .lec_detail .date {
        font-size: 23px;
    }

    .lec_detail .time {
        font-size: 18px;
    }

    .lec_detail .ttl {
        font-size: 19px;
    }

    .lec_detail .name {
        font-size: 22px;
    }

    .lec_detail .job {
        font-size: 14px;
    }

    /*** NEWS ***/
    #NEWS {
        width: 100%;
        background-image: url("../images/index/sp_news-bg.png");
        background-size: 100% 100%;
        background-position: center center;
        background-repeat: no-repeat;
        padding-bottom: 100px;
    }

    #NEWS > .Flex {
        width: 355px;
        margin: 0 auto;
    }

    #NEWS .secttl {
        width: 100%;
        text-align: center;
        margin: 0 0 35px;
    }

    .news_list {
        width: 100%;
    }

    .news_detail {
        margin-bottom: 20px;
    }

    .news_detail .category {
        width: 78px;
        height: 24px;
        margin: 0 0 10px 0;
    }

    .news_detail .category > * {
        font-size: 12px;
    }

    .news_detail .date,
    .news_detail .ttl {
        vertical-align: top;
    }

    .news_detail .ttl {
        max-width: 182px;
        margin-top: 0;
    }

    .news_detail a > div {
        width: 100%;
        margin-top: 5px;
        margin-left: 5px;
    }

    #NEWS .link_btn {
        width: 117px;
        margin: 40px auto 0;
    }

    /*** PICK UP ***/
    #PICKUP {
        padding-bottom: 100px;
        background-image: url("../images/index/sp_pickup-bg.png");
    }

    .pu_list {
        width: 355px;
        margin: 0 auto;
    }
    .pu_detail{
        width: 100%;
        margin-left: 5px;
        margin-right: 5px;
    }
    .pu_detail dl {
        width: 100%;
    }

    .pu_list > .pu_detail:nth-child(even) {
        margin-top: 0;
    }

    .pu_detail .ttl {
        font-size: 16px;
        /*width: 168px;*/
        margin-top: 0;
        max-width: 85%;
        bottom: 0;
        top: auto;
        transform: translateY(-36px);
    }

    .pu_detail .image {
        width: 280px;
        height: 280px;
    }

    .pu_list .pu_detail .image {
        margin-right: 0;
        margin-left: auto;
    }

    .pu_list .pu_detail:nth-child(odd) .ttl {
        left: 0;
    }

    .pu_list .pu_detail:nth-child(even) .ttl {
        left: 0;
    }

    .pu_list .pu_detail:nth-child.link_btn {
        text-align: right;
    }


    #PICKUP > .link_btn {
        margin-top: 40px;
    }

    /*.pu_list .pu_detail:nth-child(2) {
       margin-top: 40px;
   }*/
    .pu_list .pu_detail {
        margin-bottom: 40px;
    }

    .pu_list .pu_detail:last-child {
        margin-bottom: 0;
    }

    /*** EVENT ***/
    #EVENT {
        background: none;
    }

    #EVENT .secttl {
        margin-bottom: 60px;
    }

    .eve_list {
        margin: 0 auto;
    }

    .eve_detail {
        width: 170px;
        border:1px solid #cecece;
        /*position: relative;*/
    }

    .eve_detail .imgframe {
        margin-bottom: 0;
    }
    .eve_detail .imgframe::after{
        display: none;
    }

    .eve_detail .image {
        width: 170px;
        height: 170px;
        /*
        width: 140px;
        height: 140px;
        */
    }

    .eve_detail .txtarea {
        display: none;
        width: 190px;
        max-height: 114px;
        padding-bottom: 26px;
    }

    .eve_detail .date {
        font-size: 20px;
    }

    .eve_detail .time {
        font-size: 14px;
        margin-bottom: 10px;
    }

    .eve_detail .ttl {
        font-size: 14px;
        margin-top: 0;
    }

    .eve_detail .link_btn {
        position: absolute;
        right: 0;
        bottom: 0;
    }


    /*** BANNER ***/
    #bnr-1 {
        padding-bottom: 100px;
    }

    #bnr-1 p {
        font-size: 12px;
        letter-spacing: 0.02em;
        line-height: 1;
        margin-top: 10px;
    }

    #bnr-1 p::before {
        display: inline-block;
        content: "-";
        padding-right: 10px;
    }


    /*** AREA ***/
    #AREA {
        padding-bottom: 85px;
        background: none;
    }

    #AREA .left {
        width: 100%;
        margin-bottom: 50px;
    }

    #AREA .link_btn > * {
        font-size: 12px;
    }

    #AREA .link_btn > *::after {
        width: 117px;
    }

    #AREA .right {
        width: 100%;
    }

    #AREA #food_drink {
        position: static;
    }

    #AREA #food_drink .red {
        position: static;
        width: 100%;
        top: auto;
        right: auto;
        margin-top: 15px;
    }

    .list li {
        padding: 7px 10px;
    }

    .list li > span > span {
        display: block;
    }

    .ex {
        padding: 20px 25px;
    }

    .ex p {
        width: 100%;
        padding: 0 0 15px;
        border-right: none;
        border-bottom: 1px dotted #707070;
    }

    .ex dl {
        width: 100%;
        padding: 0;
    }

    .ex > dl:last-child {
        padding-top: 25px;
    }

    .ex .ttl {
        margin-top: 0;
    }

    /*** WORKS ***/
    #WORKS {
        padding-bottom: 100px;
        background-image: url("../images/index/sp_works-bg.png");
        background-size: 100% 100%;
        background-position: center center;
        background-repeat: no-repeat;
    }

    .works_list {
        width: 100%;
    }

    #WORKS .intro_txt {
        margin-bottom: 35px;
    }

    #WORKS .secttl::after {
        margin-top: 35px;
    }

    .works_list .slick-slide {
        padding: 0 15px;
    }

    /*** ACCESS ***/
    #ACCESS {
        padding-bottom: 100px;
        background-image: url("../images/index/sp_access-bg.png");
        background-size: 100% 100%;
        background-position: center center;
        background-repeat: no-repeat;

    }

    #ACCESS .secttl {
        margin-bottom: 50px;
    }

    #ACCESS .intro {
        margin-bottom: 50px;
    }

    #ACCESS .intro dt {
        font-size: 18px;
    }

    #ACCESS .intro .text p {
        margin-bottom: 30px;
    }

    #ACCESS .left {
        width: 100%;
    }

    #ACCESS .btn_container {
        width: 100%;
    }

    #ACCESS .right {
        display: none;
    }

    #ACCESS .image {
        margin-bottom: 55px;
    }

    /*** SNS ***/
    #SNS {
        background-image: url("../images/index/sp_sns-bg.png");
    }

    #SNS .ttl {
        text-align: center;
    }

    #TWITTER {
        width: 100%;
    }

    #TWITTER .twitter-timeline {
        min-height: 350px !important;
        height: auto;
    }

    #SNS .link_btn {
        margin-top: 40px;
    }
}

#gallery_btn {
    cursor: pointer;
}

#lightgallery {
    display: none;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    height: 0;
    overflow: hidden;
    transition: .4s;
}

#lightgallery.active {
    height: 186px;
    margin-top: 15px;
}

#lightgallery .item {
    display: block;
    width: 85px;
    margin: 0 5px 5px 0;
}

#lightgallery img {
    width: 100%;
}

.lg-backdrop,
.lg-outer {
    z-index: 9999;
}

#gallery_container {
    display: none;
}

.build_ttl {
    display: block;
    font-size: 13px;
    margin-bottom: 10px;
}

.twitter-post-wrapper{
    width: 100%;
    height: 433px;
    overflow: scroll;
}

@media screen and (max-width: 414px) {
    #lightgallery {
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    #lightgallery.active {
        height: 248px;
        margin-top: 15px;
    }

    #lightgallery .item {
        margin: 0 0 5px 0;
    }
}
.sponsor{
    margin-top: 40px;
}
.sponsor p{
    display: block;
    text-align: center;
}