@charset "utf-8";
/****************************************************************************************************

home

****************************************************************************************************/
@media (max-width:950px){
}
@media (max-width:768px){
}
@media (max-width:568px){
}
/****************************************************************************************************

全体

****************************************************************************************************/
#SiteID{
    z-index: 10;
}
#Footer{
}
@media (max-width:568px){
#Footer{
    padding-bottom: 70px;
}
}
#FooterUtilityLink{
    display: none;
}

#FloatingBack2top{
}
@media (max-width:568px){
#FloatingBack2top{
    bottom: 80px;
}
}
/****************************************************************************************************

ユーティリティ

****************************************************************************************************/
/*--------------------------------------------------
--------------------------------------------------*/
#UtilityLink{
    position: relative;
    z-index: 5;
    width: 100%;
    margin: 0 auto;
    background-color: rgba(0,0,102,0.2);
}
@media (max-width:568px){
#UtilityLink{
    display: none;
}
}

#UtilityLink a{
    color: #fff;
}
#UtilityLink *{
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    box-sizing:border-box;
}

/*--------------------------------------------------
--------------------------------------------------*/
.utilityLinkBody__outer{
    position: relative;
    margin: 0 auto;
    padding-top: 38px;
    max-width: 950px;
}
@media (max-width:768px){
.utilityLinkBody__outer{
    padding-top: 0;
}
}
#UtilityLinkBody{
    float: none;
    position: absolute;
    top: 0;
    right: 0;
    margin: 0 auto;
    width: 950px;
    display: flex;
    justify-content: flex-end;
}
@media (max-width:950px){
#UtilityLinkBody{
    width: 100%;
}
}
@media (max-width:768px){
#UtilityLinkBody{
    position: static;
}
}
@media (max-width:568px){
#UtilityLinkBody{
    display: none;
}
}
/*--------------------------------------------------
--------------------------------------------------*/
.utilityLinkBody__item{
    margin-left: 0 !important;
    margin-right: 0 !important;
}
    .utilityLinkBody__item.-family{ background-color: #000066; }
    .utilityLinkBody__item.-fb{ background-color: #1877F2; }
    .utilityLinkBody__item.-instagram{
        background: linear-gradient(45deg, rgba(254,212,117,1) 0%,rgba(229,61,93,1) 50%,rgba(194,49,134,1) 70%,rgba(156,56,187,1) 100%);
    }
    .utilityLinkBody__item.-youtube{ background-color: #FF0200; }

.utilityLinkBody__item a{
    position: relative;
    /* display: flex; */
    display: block;
    padding: 10px 10px;
}
.utilityLinkBody__item br{
    display: none;
}
@media (max-width:880px){
.utilityLinkBody__item br{
    display: inline;
}
}
@media (max-width:768px){
.utilityLinkBody__item br{
    display: none;
}
}

.linkSNS{
    display: block;
    padding-left: 30px;
}
.linkSNS__img{
    position: absolute;
    top: center;
    left: 10px;
    /* margin-right: 10px; */
    width: 20px;
}
/****************************************************************************************************

メイン

****************************************************************************************************/
#Main{
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    box-sizing:border-box;

    position: relative;
    z-index: 1;

    margin:-38px auto 0;
    padding:0;
    width:100%;
    background:none;
}
@media (max-width:950px){
}
@media (max-width:568px){
#Main{
    margin-top: 0;
}
}

    #Main *{
        -webkit-box-sizing:border-box;
        -moz-box-sizing:border-box;
        box-sizing:border-box;
    }
    #Main *:last-child{ margin-bottom: 0 !important; }
/****************************************************************************************************

コンテンツ

****************************************************************************************************/
#Contents{
    float:none;
    margin-bottom:30px;
    width:100%;
}
@media (max-width:950px){
}
@media (max-width:768px){
}
@media (max-width:568px){
}
/****************************************************************************************************

プロモーション

****************************************************************************************************/
.promotion{
}
.promotionSlide{
    border-bottom: 1px solid #EEEEEE;
    background-color: #fff;
}
@media (max-width:1050px){
}
/*--------------------------------------------------
スライドリスト
--------------------------------------------------*/
.promotionList{
    margin: 0 auto;
    width: 1050px;
    overflow: hidden;
}
@media (max-width:1050px){
.promotionList{
    width: 100%;
}
}
/*--------------------------------------------------
サムネイル
--------------------------------------------------*/
.promotionThum{
    padding: 20px 0;
    background-color: rgb(0,127,255,0.1);
}

/*--------------------------------------------------
サムネイルリスト
ボックス
--------------------------------------------------*/
.promotionThum__inner{
    position: relative;
    margin: 0 auto;
    width: 950px;
}
@media (max-width:950px){
.promotionThum__inner{
    width: 100%;
}
}
/*--------------------------------------------------
サムネイルリスト
--------------------------------------------------*/
.promotionThumList{
    margin: 0 20px;
}

@media (max-width:950px){
.promotionThumList{
    margin: 0 20px;
    width: auto;
}
}
@media (max-width:568px){
.promotionThumList{
    margin: 0 30px;
    width: auto;
}
}


.promotionThumList .slick-list{
    padding: 0 !important;
}
@media (max-width:568px){
}


/*--------------------------------------------------
サムネイルリスト　子
--------------------------------------------------*/
.promotionThumList li{
    margin: 0 5px;
}

    .promotionThumList .slick-slide img{
        margin: 0 auto;
        width: 100%;
    }

.promotionThumList .slick-current{
    position: relative;
}
.promotionThumList .slick-current::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(2,82,177,0.4);
}
/*--------------------------------------------------
カーソル
--------------------------------------------------*/
.promotionThumList .slick-arrow{
    position: absolute;
    z-index: 1;
    top: calc(50% - 12px);

    background: none;
    border: none;
    line-height: 1;
    width: 24px;
    height: 24px;
    text-indent: 100%;
    white-space:nowrap;
    overflow:hidden;
}

    .promotionThumList .slick-arrow.slick-prev{
        left: -24px;
        background: url(../images/slide/slide_prev.png) no-repeat;
    }
@media (max-width:568px){
    .promotionThumList .slick-arrow.slick-prev{
        left: -30px;
    }
}

    .promotionThumList .slick-arrow.slick-next{
        right: -24px;
        background: url(../images/slide/slide_next.png) no-repeat;
    }
@media (max-width:568px){
    .promotionThumList .slick-arrow.slick-next{
        right: -30px;
    }
}
/****************************************************************************************************



****************************************************************************************************/
/*--------------------------------------------------
--------------------------------------------------*/
.home__box{
    padding: 40px 0;
}
@media (max-width:568px){
.home__box{
    padding: 20px 0;
}
}

    /*
    最新情報とfb
    sns
    */
    .home__box.-box1{
        background-color: #fff;
    }
    /*
    イベントレポート
    */
    .home__box.-box2{
        background-color: rgba(0, 0, 102, 0.05);
    }
    /*バナー*/
    .home__box.-box3{
        background-color: rgba(0,127,255,0.1);
    }
    /*関連サイト*/
    .home__box.-box4{
        background-color: rgba(0, 0, 102, 0.05);
    }
/*--------------------------------------------------
--------------------------------------------------*/
.home__boxBody{
    margin: 0 auto;
    width: 950px;
}
@media (max-width:950px){
.home__boxBody{
    width: 100%;
}
}
@media (max-width:568px){
.home__boxBody{
    padding: 0 10px;
}
}

    .home__box.-box1 .home__boxBody{
        display: flex;
    }
@media (max-width:568px){
    .home__box.-box1 .home__boxBody{
        display: block;
    }
}

    .home__box.-box2 .home__boxBody{ width: 970px; }
@media (max-width:970px){
    .home__box.-box2 .home__boxBody{ width: 100%; }
}

    .home__box.-box3 .home__boxBody{ width: 970px; }
@media (max-width:970px){
    .home__box.-box3 .home__boxBody{ width: 100%; }
}
/****************************************************************************************************

最新情報

****************************************************************************************************/
.news{
    width: calc( 560 / 950 * 100%);
}
@media (max-width:568px){
.news{
    margin-bottom: 20px;
    width: 100%;
}
}

.newsBox{
    margin-bottom:20px;
    border:1px solid #ccc;
    background:#fff;
}

    .newsBox .newsBoxHeader{
        margin-bottom:8px;
        padding:10px;
        border-bottom:2px solid #000066;
        background:#F8F8FC;
    }
    
        .newsBox .newsBoxHeader h2{
            float:left;
            color:#000066;
            font-size: 1.6rem;
            font-weight: bold;
        }
@media (max-width:568px){
        .newsBox .newsBoxHeader h2{
            font-size: 1.4rem;
        }
}
    
        .newsBox .newsBoxHeader p{
            float:right;
            margin-top:3px;
            margin-bottom:0;
            padding-right:20px;
        }
        
    .newsBox .newsBoxBody{
        padding:10px;
    }

    .newsBox .newsBoxBody li{
        margin-bottom:15px;
        padding:0 0 10px;
        border-bottom:1px dotted #8080B3;
    }

        .newsBox .newsBoxBody li:last-child{
            margin-bottom:10px;
            padding:0;
            border-bottom:none;
        }

.newsBox__list.-entryFixed{
}
    .newsBox__list.-entryFixed li:last-child{
        padding-bottom: 10px;
        border-bottom:1px dotted #8080B3;
    }
/*--------------------------------------------------------------------------------
--------------------------------------------------------------------------------*/
.newsBox__section{
    margin-bottom: 30px;
}
/*--------------------------------------------------------------------------------
--------------------------------------------------------------------------------*/
.newsBox__heading.-type1{
    position: relative;
    margin-bottom: 15px;
    padding-left: 10px;
    font-size: 1.4rem;
    color: #000066;
}
    .newsBox__heading.-type1::before{
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 3px;
        height: 100%;
        background-color: #000066;
    }
/****************************************************************************************************

fb

****************************************************************************************************/
.facebook{
    margin-left: auto;
    width: calc( 370 / 950 * 100%);
}
@media (max-width:568px){
.facebook{
    width: 100%;
}
}

.facebook__embed.-pc{}
.facebook__embed.-sp{ display: none; }
@media (max-width:568px){
.facebook__embed.-pc{ display: none;}
.facebook__embed.-sp{ display: block; }
}


.facebook__heading{
    position: relative;
    margin-bottom: 15px;
    /* padding: 10px;
    border: 1px solid #ccc;
    background: #F8F8FC; */
}

/* .facebook__heading::before{
    content: '';
    display: block;
    position: absolute;
    top: -10px;
    left: 10px;
    width: 40px;
    height: 39px;
    background: url(../images/sns_icon_fb.png) no-repeat;
} */


.facebook__headingText{
    font-size: 1.4rem;
    color: #000066;
}
@media (max-width:568px){
.facebook__headingText{
    font-size: 1.3rem;
}
}

.facebook__headingImg{
    /* position: absolute;
    top: -10px;
    left: 10px; */
    display: inline-block;
    margin-right: 15px;
    width: 30px;
    vertical-align: middle;
}
/****************************************************************************************************

イベントレポート

****************************************************************************************************/
.eventReport{
}
/*--------------------------------------------------
--------------------------------------------------*/
.eventReport__heading{
    margin-bottom: 10px;
    font-weight: bold;
    font-size: 2.4rem;
    text-align: center;
    color: #000066;
}
@media (max-width:568px){
.eventReport__heading{
    font-size: 1.6rem;
}
}
/*--------------------------------------------------
--------------------------------------------------*/
.eventReportList{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
@media (max-width:568px){
.eventReportList{
    display: block;
}
}
/*--------------------------------------------------
--------------------------------------------------*/
.eventReportList__item{
    margin: 0 calc( 10 / 970 * 100% ) 20px;
    width: calc( 300 / 970 * 100% );
    background: #fff;
}
@media (max-width:568px){
.eventReportList__item{
    margin: 0 auto 20px;
    width: 300px;
}
}

    #Main .eventReportList__item:last-child{
        margin-bottom: 20px !important;
    }
    .eventReportList__item.-sleep{ display: none; }
    .eventReportList__item.-active{
        animation: reportItem__fadeIn 0.1s ease-in-out;
    }
@keyframes reportItem__fadeIn{
    0%{
        visibility: hidden;
        opacity: 0;
    }
    1%{
        visibility: visible;
        opacity: 0;
    }
    100%{
        visibility: visible;
        opacity: 1;
    }
}
/*--------------------------------------------------
--------------------------------------------------*/
.eventReportList__link{
    text-decoration: none;
    color: #333;
}
    .eventReportList__link:hover{
        text-decoration: none;
    }
/*--------------------------------------------------
--------------------------------------------------*/
.eventReportList__fig{
}
    .eventReportList__link:hover .eventReportList__fig{
        opacity: 0.8;
    }
/*--------------------------------------------------
--------------------------------------------------*/
.eventReportList__body{
    padding: 20px;
}
/*--------------------------------------------------
--------------------------------------------------*/
.eventReportList__title{
    margin-bottom: 5px;
    font-weight: bold;
    font-size: 1.4rem;
}
/*--------------------------------------------------
--------------------------------------------------*/
.eventReportList__text{
}
/*--------------------------------------------------
--------------------------------------------------*/
.eventReport__btn{
    margin: 0 auto;
    padding: 10px;
    width: 640px;
    text-align: center;
    background-color: #CFCEEC;
    border-radius: 32px;
    cursor: pointer;
}
@media (max-width:640px){
.eventReport__btn{
    width: 100%;
}
}
@media (max-width:568px){
}

    .eventReport__btn:hover{
        background-color: #B0AED0;
    }

.eventReport__btn span{
    display: inline-block;
    padding: 10px 10px 10px 30px;
    background: url(../images/event_report_icon.png) no-repeat 0 center;
    font-weight: bold;
}
/****************************************************************************************************

bnr

****************************************************************************************************/
.bnr{
}

.bnrList{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
@media (max-width:568px){
.bnrList{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
}

.bnrList__item{
    margin: 0 calc(10 / 970 * 100%) 10px;
    width: calc(220 / 970 * 100%);
}
@media (max-width:568px){
.bnrList__item{
    margin: 0 10px 10px;
    width: calc(180 / 548 * 100%);
}
}
/****************************************************************************************************

sns

****************************************************************************************************/
.sns{
    width: 100%;
}

.snsList{
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px dotted #ccc;
}
@media (max-width:568px){
.snsList{
    display: block;
    margin-bottom: 10px;
    padding-bottom: 0;
    border-bottom: none;
}
}
.snsList:last-child{
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}
@media (max-width:568px){
}


.snsList__item{
    margin: 0 15px;
}
@media (max-width:568px){
.snsList__item{
    margin: 0 0 10px;
}
}

.snsList__item a{
    text-decoration: none;
}

.snsList__link{
    display: flex;
    align-items: center;
}
    .snsList__link::before{
        content: '';
        display: block;
        margin-right: 15px;
        width: 30px;
        height: 30px;
        background-repeat: no-repeat;
        background-size: contain;
    }

.snsList__link.-facebook::before{ background-image: url(../images/sns_icon_fb.png); }
.snsList__link.-youtube::before{ background-image: url(../images/sns_icon_youtube.png); }
.snsList__link.-instagram::before{ background-image: url(../images/sns_icon_instagram.png); }
.snsList__link.-twitter::before{ background-image: url(../images/sns_icon_twitter.png); }
/****************************************************************************************************

related

****************************************************************************************************/
.related{
    display: flex;
    justify-content: center;
}
@media (max-width:568px){
.related{
    justify-content: flex-start;
}
}


.relatedCol{
    display: flex;
}
@media (max-width:568px){
.relatedCol{
    display: block;
    width: 50%;
}
}


.relatedList{
    margin: 0 20px;
}
@media (max-width:568px){
.relatedList{
    margin: 0 0 5px;
}
}

.relatedList__item{
    margin-bottom: 5px;
}
/****************************************************************************************************

フローティングバナー

****************************************************************************************************/
.floatingBnr{
    display: none;
}
@media (max-width:568px){
.floatingBnr{
    position: fixed;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    z-index: 1;
}
}

.floatingBnrList{
    display: flex;
}

.floatingBnrList__item{
    font-size: 1.3rem;
    line-height: 1.2;

    min-height: 50px;
}

    .floatingBnrList__item.-family{
        background-color: #000066;
        flex-basis: calc( 100% - 50px * 3 );
        max-width: calc( 100% - 50px * 3 );
    }
    .floatingBnrList__item.-sns{
        flex-basis: 50px;
        max-width: 50px;
    }
    .floatingBnrList__item.-fb{
        background-color: #1877F2;
    }
    .floatingBnrList__item.-instagram{
        background: linear-gradient(45deg, rgba(254,212,117,1) 0%,rgba(229,61,93,1) 50%,rgba(194,49,134,1) 70%,rgba(156,56,187,1) 100%);
    }
    .floatingBnrList__item.-youtube{
        background-color: #FF0200;
    }


.floatingBnrList__item a{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    color: #fff;
}
    .floatingBnrList__item a:hover{
        text-decoration: none;
    }

.floatingBnrList__item span{
    padding: 10px 0;
}

    .floatingBnrList__item.-sns span{
        position: relative;
        padding-left: 30px;
    }
        .floatingBnrList__item.-sns span::before{
            /* content: '';
            position: absolute;
            top: calc( 50% - 10px );
            left: 0;
            display: inline-block;
            width: 20px;
            height: 20px;
            background: url(../images/sns_icon_fb2.png) no-repeat;
            background-repeat: no-repeat;
            background-size: contain; */
        }
        .floatingBnrList__item.-fb span::before{
            /* background-image: url(../images/sns_icon_fb2.png); */
        }
        .floatingBnrList__item.-instagram span::before{
            /* background-image: url(../images/sns_icon_instagram2.png); */
        }

    .floatingBnrList__item.-sns img{
        width: 30px;
    }




