/*--------------------------------------------------- */
/* sns_block */
/*--------------------------------------------------- */
.sns_block {
    margin-top: 80px;
    padding-bottom: 200px;
}

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

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

    .sns_block {
        margin-top: 130px;
        padding-bottom: 100px;
    }
}

.sns_block .flex {
    margin-top: 69px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: center;
    gap: 10px;
}

.sns_block .heading {
    display: flex;
    justify-content: center;
    text-align: center;
    margin-bottom: 43px;
}

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

@media screen and (max-width: 480px) {
    .sns_block .heading {
        margin-bottom: 40px;
    }
}

.sns_block .heading img {
    display: inline;
}

.sns_block .heading span {
    margin-top: 27px;
    display: block;
}

.text_block p {
    display: block;
    width: 70%;
    margin: 0 auto;
    font-size: 1.7rem;
    line-height: 1.5;
    text-align: center;
}

@media screen and (max-width: 768px) {
    .text_block p {
        width: 100%;
    }


}

@media screen and (max-width: 480px) {
    .text_block p {
        width: 100%;
        font-size: 1.4rem;
        line-height: 1.5;
        text-align: left;
        font-feature-settings: "palt";
    }

    .text_block p br {
        display: none;
    }
}

.sns_block .btn_area {
    margin-top: 86px;
}

.sns_block .btn_area a:hover {
    opacity: 0.7;
}

.sns_block .flex .no1 {
    width: calc(100% - 370px);
}

.sns_block .flex .no1 ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.sns_block .flex .no1 ul:before, .sns_block .flex .no1 ul:after {
    content: "";
    display: block;
    width: calc(33.3333333333% - 7px);
}

.sns_block .flex .no1 ul:before {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
}

.sns_block .flex .no1 ul img {
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.sns_block .flex .no1 ul li {
    margin-bottom: 10px;
    height: 238px;
    width: calc(25.5% - 17px);
}


@media (min-width: 769px) {
    .sns_block .flex .no1 ul a:hover {
        opacity: 0.5;
        -webkit-transition-duration: 0.5s;
        transition-duration: 0.5s;
    }
}

.sns_block .flex .all_ver {
    width: 100%;
}

.sns_block .flex .all_ver ul:before, .sns_block .flex .all_ver ul:after {
    width: calc(25% - 10px);
}

.sns_block .flex .no2 {
    width: 320px;
}

.sns_block .flex .no2 iframe {
    width: 100%;
}

.sns_block .flex .no2 .iframe_wrap .fb-page>span {
    height: 414px !important;
}

.sns_block .flex .no2 .iframe_wrap .fb-page iframe {
    height: 414px !important;
}

.sns_block .flex .catch_block {
    position: relative;
    padding-bottom: 8px;
    margin-bottom: 24px;
}

.sns_block .flex .catch_block:after {
    content: "";
    content: "";
    border-bottom: 1px solid #fff;
    width: 100%;
    height: 1px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    /* style */
}

.sns_block .flex .catch_block .catch {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.sns_block .flex .catch_block .catch h3 {
    font-family: "Roboto", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
    font-size: 24px;
    font-size: 2.4rem;
    padding-left: 4px;
    color: #fff;
    line-height: 1.2em;
    font-weight: 400;
}

.sns_block .btn_wrap {
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.sns_block .btn_wrap .common_btn {
    margin: auto;
    text-align: center;
}

@media screen and (max-width: 768px) {
    .sns_block .heading_top img {
        height: 20px;
    }

    .sns_block .headingarea p {
        margin-top: 30px;
    }

    .sns_block {
        margin-top: 80px;
    }

}

/*--------------------------------------------------- */
/* instagram */
/*--------------------------------------------------- */
.sns_block .instagram ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.sns_block .instagram li {
    position: relative;
    overflow: hidden;
}

.sns_block .instagram li img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.sns_block .instagram li figcaption {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    -webkit-transition: 0.3s;
    transition: 0.3s;
    opacity: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.sns_block .instagram li figcaption p {
    font-size: 16px;
    font-size: 1.6rem;
    color: #fff;
    position: relative;
}

.sns_block .instagram li figcaption p:after {
    content: "";
    /* style */
    width: calc(100% + 30px);
    height: calc(100% + 20px);
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    margin: auto;
    z-index: 3;
    border: 1px solid #fff;
}

.sns_block .instagram li:hover figcaption {
    opacity: 1;
}

.sns_block .instagram video {
    width: 100%;
    height: 100%;
    border: 1px solid #ddd;
    position: relative;
}

.sns_block .instagram .videos {
    position: relative;
    height: 100%;
}

.sns_block .instagram .videos:before {
    content: "";
    content: "";
    display: inline-block;
    width: 78px;
    height: 78px;
    /*background-image: url(../img/icon-movie.png);*/
    background-size: contain;
    vertical-align: middle;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    z-index: 1;
    /* style */
}

.sns_block .flex .all_ver ul li:nth-of-type(4), .sns_block .flex .all_ver ul li:nth-of-type(5), .sns_block .flex .all_ver ul li:nth-of-type(6) {
    margin-bottom: 17px;
}

@media (max-width: 768px) {
    .sns_block .instagram .videos:before {
        /*background-image: url(../img/icon-movie@2x.png);*/
    }
}

@media (max-width: 480px) {
    .sns_block .instagram .videos:before {
        width: 50px;
        height: 50px;
    }

    .sns_block .flex .all_ver ul li:nth-of-type(4), .sns_block .flex .all_ver ul li:nth-of-type(5), .sns_block .flex .all_ver ul li:nth-of-type(6) {
        margin-bottom: 20px;
    }
}

.sns_block .instagram .btnInsta a, .sns_block .instagram .btnInsta a:visited {
    position: relative;
    color: #fff;
    background-color: #ffc000;
    border: 1px solid #ffc000;
    padding: 8px 16px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1em;
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 40px auto 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (min-width: 769px) {
    .sns_block .instagram .btnInsta a:hover, .sns_block .instagram .btnInsta a:visited:hover {
        background-color: #fff;
        color: #ffc000;
        border: 1px solid #ffc000;
        -webkit-transition-duration: 0.5s;
        transition-duration: 0.5s;
    }
}

@media (max-width: 768px) {
    .sns_block .instagram li {
        width: calc(33.33333% - 10px);
        margin-bottom: 16px;
    }

    .sns_block .instagram li figcaption {
        display: none;
    }

    .sns_block .flex .all_ver ul li {
        width: calc(50% - 10px);
        height: 340px;
    }
}

@media (max-width: 480px) {
    .sns_block .instagram li {
        height: 120px;
        width: calc(50% - 4px);
        margin-bottom: 8px;
    }

    .sns_block .instagram li figcaption {
        display: none;
    }

    .sns_block .headingarea p {
        font-size: 1.0rem;
        font-feature-settings: "palt";
    }
}

@media screen and (max-width: 480px) {
    .sns_block .flex .all_ver ul li {
        width: calc(50% - 10px);
        margin-bottom: 20px;
        height: 200px;
    }



    .sns_block .btnarea {
        margin-top: 34px;
    }

    .footer_sns a {
        margin: 0 10px;
    }
}