@charset "utf-8";
/* MOBILE */

/* body */
body { background-color:#313131 }



/* visual */  
#visual , #VS_inner , #VS_slide , .slide_box  { position: relative }
#VS_inner ,#VS__list , .slide_box { z-index:49 }
#visual_slide , #VS_inner , #VS__list , .VS__item , #VS_slide , .slide_box { display:block ; width:100% ; height:50rem }  
#visual , #VS_inner , .slide_box { overflow:hidden }  
#VS__list { position:absolute }

.VS__item , .VS__item.show { transition:0.5s all }
.VS__item { 
    opacity:0 ; transition-delay:0.5s ; 
    position:absolute ; top:0 ; left:0 ; z-index:40 ;
    font-size:0 ; color:transparent } 
.VS__item.show    { z-index:41 ; opacity:1 ; transition-delay:0s } 
.VS__item::before { 
    content:"" ; display:block ; width:100% ; height:100% ; position:absolute ; left:0 ; top:0 ;
    background-color:rgba(0,0,0,0.5) }
  
.VS__item { background-repeat:no-repeat ; background-position:center center ; background-size:cover } 
.VS__item.slide1 { background-image:url(../img_sub/visual11_MB.jpg) }
.VS__item.slide2 { background-image:url(../img_sub/visual12_MB.jpg) }
.VS__item.slide3 { background-image:url(../img_sub/visual13_MB.jpg) }

.slide__arrow , .slide__btn__pp , .slide__page__btn , .slide_more { transition:0.3s all }
.slide__arrow , .slide__btn__pp , #slide_page_nav { display:block ; overflow:hidden }

.slide__btn__pp , #slide_page_nav { z-index:56 }
.slide__btn__pp { 
    opacity:0.5 ; 
    width:2rem ; height:2rem ; border:solid 1px rgba(255,255,255,0.5) ; border-radius:4rem ; box-sizing:border-box ;    
    position:absolute ; right:1rem ; top:1rem ; font-size:0 ; color:transparent ;  
    background:url(../img/slide_play.png) no-repeat -0.1rem -0.1rem ; background-size:auto 4rem }
.slide__btn__pp:hover , .slide__btn__pp:focus { opacity:1 ; border-color:rgba(255,255,255,0.2) }
.slide__btn__pp.play { background-position:-2.1rem -0.1rem }

.slide__page    { width:80% ; position:absolute ; left:50% ; bottom:1rem ; z-index:56 ; transform:translateX(-50%) }
#slide_page_nav { text-align:center ; font-size:0 }
.slide__page__item { display:inline-block ; overflow:hidden ; margin:0 0.4rem }
.slide__page__btn  {     
    display:block ; overflow:hidden ; width:1rem ; height:1rem ; border-radius:3rem ;
    background-color:#ffffff ; opacity:0.5 ;
    font-size:0 ; color:transparent
}
.slide__page__btn:hover , .slide__page__btn:focus , .now .slide__page__btn { opacity:1 }  
.now .slide__page__btn , .now .slide__page__btn:hover , .now .slide__page__btn:focus { background-color:#ff9828 ; width:5rem }
  
.VS__item::before {
    display:block ; content:"" ; width:100% ; height:100% ;
    position:absolute ; left:0 ; top:0 ;
    background:linear-gradient(to bottom ,
        rgba(0,0,0,0.2) 0% ,
        rgba(0,0,0,0.2) 40% ,
        rgba(0,0,0,0.6) 60% ,
        rgba(0,0,0,0.6) 100% );  
}

.slide__box { 
    width:90% ; text-align:center ; 
    position:absolute ; left:50% ; bottom:6rem ; transform:translateX(-50%) }
.slide__box__tag , .slide__box__title { display:block ; text-shadow:0 0 0.3rem rgba(0,0,0,0.3) ; word-break:keep-all }
.slide__box__tag { font-size:2rem ; line-height:3rem ; color:#ffffff ; margin-bottom:1rem  }
.slide__box__title {
    font-size:3.6rem ; line-height:5rem ; color:#ff9828 ;
    font-family:"GongGothicMedium",sans-serif ; 
}
.slide__box__caption { display:none }
.slide__box__link {  
    display:block ;  width:100% ; height:100% ;
    font-size:0 ; color:transparent ;  
}

.icon__arrow , .icon__arrow::before , .icon__arrow::after { display:block ; transition:0.3s all }
.icon__arrow , .icon__arrow::after { width:4rem ; height:4rem }
.icon__arrow { position:relative }
.icon__arrow::before , .icon__arrow::after {
    position:absolute ; left:50% ; top:50% ; transform:translate(-50%,-50%) ;
    overflow:hidden ; border-radius:100% ; box-sizing:border-box ;
    content:"" ;
}
.icon__arrow::before { 
    width:100% ; height:100% ; border-radius:100% ;
    border:solid 1px rgba(255,255,255,0.1)
}
.icon__arrow::after { 
    background:url(../img/icon_sprite.png) no-repeat -25.5rem -0.5rem ; background-size:auto 10rem ;
    transform:translate(-50%,-50%) scale(0.9) ; opacity:0.5 ;
}
.slide__box:hover .icon__arrow::before { border-color:#ff9828 ; background-color:#ff9828}
.slide__box:hover .icon__arrow::after  { 
    transform:translate(-50%,-50%) scale(1) ; opacity:1 ;
    background-position:-25.5rem -5.5rem
}

.slide__box__tag .icon__arrow   { display:none }
.slide__box__title .icon__arrow { margin:2rem auto 0 } 
  
.slide__arrow , .slide__arrow::before  { transition:0.3s all } 
.slide__arrow { 
    position:absolute ; top:50% ; z-index:55 ; transform:translateY(-50%) ; opacity:0 ; 
    width:4rem ; height:4rem ;  background-color:rgba(0,0,0,0.2) ; border-radius:100% ;
    font-size:0 ; color:transparent }
.slide__arrow:hover , .slide__arrow:focus { background-color:rgba(0,0,0,0.5) }      
.slide__arrow.prev { left:-5rem }
.slide__arrow.next { right:-5rem }
#visual_slide:hover .slide__arrow.prev , .slide__arrow.prev:hover , .slide__arrow.prev:focus { left:0.5rem ; opacity:1 }
#visual_slide:hover .slide__arrow.next , .slide__arrow.next:hover , .slide__arrow.next:focus { right:0.5rem ; opacity:1 }
.slide__arrow::before { 
    display:block ; content:"" ; width:20% ; height:20% ; 
    border:solid 1px rgba(255,255,255,0.7) ; border-bottom:none ;
    position:absolute ; left:50% ; top:50% ; transform:translate(-50%,-50%) ; 
}  
.slide__arrow.prev::before { 
    transform:translate(-50%,-50%) rotate(-45deg) ; border-right:none ;
    left:55%
}
.slide__arrow.next::before {  
    transform:translate(-50%,-50%) rotate(45deg) ; border-left:none ;
    left:45%
} 
.slide__arrow:hover.prev::before , .slide__arrow:focus.prev::before ,
.slide__arrow:hover.next::before , .slide__arrow:focus.next::before { border-color:#ffffff }
.slide__arrow:hover.prev::before , .slide__arrow:focus.prev::before { transform:translate(-50%,-50%) rotate(-45deg) scale(1.1) }
.slide__arrow:hover.next::before , .slide__arrow:focus.next::before { transform:translate(-50%,-50%) rotate(45deg) scale(1.1) }
  


/* special */
.main__content__container { background-color:#ffffff ; padding:7rem 1.5rem 1rem ; position:relative }
.main__content__bg { display:none }
.main__sec__title  {
    font-size:3rem ; line-height:4rem ; font-family:"GongGothicMedium",sans-serif ; color:#111111 ; text-align:center ;
    margin-bottom:2rem ;
}
.main__title__icon {
    display:inline-block ; width:4rem ; height:4rem ; margin-right:0.2rem ;
    background:url(../img/main_sprite.png) no-repeat left top ; background-size:4rem auto ;
} 
.main__title__icon.icon2 { background-position:0 -4rem } 
.main__sec { text-align:center ; margin-bottom:4rem ; font-size:0 }
.spc__item , .culture__item { display:inline-block ; width:32.7% ; min-width:30rem ; max-width:38rem ; margin:0 0.3% 3rem }
.spc__link , .spc__img , .spc__img::before , .spc__img::after , .spc__tag , .spc__icon , .spc__txt { display:block }
.spc__link , .spc__img , .spc__icon { position:relative } 
.spc__img , .culture__img { overflow:hidden ; height:20rem ; background-color:#eeeeee ; border-radius:0.8rem }
.spc__icon , .spc__img::before , .spc__img::after ,
.spc__icon::before , .spc__icon::after { position:absolute ; left:50% ; top:50% ; transform:translate(-50%,-50%) }
.spc__img::before , .spc__img::after {
    content:"" ; box-sizing:border-box ;
    width:100% ; height:100% ; 
}
.spc__img::before {
    transform:translate(-50%,-50%) scale(1.01) ;
    background:no-repeat center ; background-size:cover ;
}
.spc__img::before , .spc__img::after , .spc__txt ,
.spc__icon::before , .spc__icon::after { transition:0.3s all }

.item21 .spc__img::before { background-image:url(../img/thum21_MB.jpg) }
.item22 .spc__img::before { background-image:url(../img/thum22_MB.jpg) }
.item23 .spc__img::before { background-image:url(../img/thum23_MB.jpg) }
.item24 .spc__img::before { background-image:url(../img/thum24_MB.jpg) }

.spc__img::after {
    background:none ;
    background:url(../img/thum20_mask.png) no-repeat center top ; background-size:cover ; opacity:0.4 ;
    top:11rem ; transform:translateX(-50%) scale(1.01) ;
}  
.spc__tag { 
    position:absolute ; left:50% ; transform:translateX(-50%) ; text-align:center ;
    font-size:1.8rem ; line-height:2.4rem ; color:#ffffff ; font-weight:600 ;
    top:15rem ; text-shadow:0 0 0.3rem rgba(0,0,0,0.3) ;
}
.spc__icon { 
    clip-path: polygon(75% 0, 100% 50%, 75% 100%, 25% 100%, 0% 50%, 25% 0%);
    display:block ; width:3.2rem ; height:2.8rem ; overflow:hidden ;
    top:20rem ; background-color:#13c1f5 ;
}
.spc__txt { 
    padding-top:2rem ; letter-spacing:-0.1rem ; word-break:keep-all ;
    font-size:2rem ; line-height:3rem ; font-weight:500 ; color:#111111 }
.spc__txt br { display:none }
.spc__link:hover .spc__img::before , .spc__link:focus .spc__img::before { transform:translate(-50%,-50%) scale(1.1) }
.spc__link:hover .spc__img::after , .spc__link:focus .spc__img::after   { 
    background:none ; background-color:#000000 ; opacity:0.2 ;
    top:50% ; left:50% ; transform:translate(-50%,-50%) scale(1.02)
}
.spc__icon::before , .spc__icon::after { 
    width:1.2rem ; height:0.2rem ; display:block ; content:"" ;
    background-color:#ffffff ;
}
.spc__link:hover .spc__icon::before , .spc__link:focus .spc__icon::before ,
.spc__icon::after { transform:translate(-50%,-50%) rotate(90deg) }
.spc__link:hover .spc__icon::after , .spc__link:focus .spc__icon::after { transform:translate(-50%,-50%) rotate(180deg) }



/* etc */ 
.etc__item { display:inline-block ; width:49% ; max-width:18rem ; margin:0 0.5% 3rem }
.etc__tag , .etc__link , .etc__img , .etc__img::before , .etc__img::after , .etc__title ,
.etc__icon , .etc__icon__title { display:block ; overflow:hidden }
.etc__tag  { font-size:1.4rem ; line-height:1.6rem ; margin-bottom:0.4rem ; opacity:0.8 }
.etc__link , .etc__img , .event__link , .event__link::before , .etc__link::after { border-radius:0.6rem }
.etc__link  { 
    width:100% ; min-height:27.4rem ; position:relative ; padding-top:19rem ;
    background-color:#ffffff ;

}
.etc__link::after { 
    display:block ; content:"" ; width:100% ; height:100% ; box-sizing:border-box ;
    border:solid 1px rgba(0,0,0,0.1) ;
    position:absolute ; left:0 ; top:0
}
.etc__img { position:absolute ; left:0 ; top:0 ; width:100% ; height:18rem }
.etc__img::before , .etc__img::after , .etc__icon::before , .etc__icon::after , .etc__link , .etc__title { transition:0.3s all }
.etc__img::before , .etc__img::after , .event__link::before { 
    content:"" ; width:100% ; height:100% ;
    position:absolute ; left:50% ; top:50% ; transform:translate(-50%,-50%) 
}
.etc__img::before , .etc__img::after { transform:translate(-50%,-50%) scale(1.01) }
.etc__img::before { background:no-repeat center ; background-size:cover } 
.etc__img::after  { background-color:#000000 ; opacity:0.3 } 
.etc__link:hover .etc__img::before , .etc__link:focus .etc__img::before { transform:translate(-50%,-50%) scale(1.1) }
.etc__link:hover .etc__img::after , .etc__link:focus .etc__img::after   { opacity:0.6 }
 
.item31 .etc__img::before { background-image:url(../img/thum31_MB.jpg) }
.item32 .etc__img::before { background-image:url(../img/thum32_MB.jpg) }
.item41 .etc__img::before { background-image:url(../img/thum41_MB.jpg) }
.etc__title br { display:none }
.etc__title    { 
    padding:0 1rem 1.2rem ;
    font-size:1.6rem ; line-height:2.4rem ; word-break:keep-all ;
} 
.etc__icon , .etc__icon__title { position:absolute ; left:50% ; transform:translateX(-50%) }
.etc__icon { 
    top:5.5rem ; width:7rem ; height:7rem ; 
    -webkit-mask-image:url(../img/thum30_mask.png);
    mask-image:url(../img/thum30_mask.png);
    mask-repeat:no-repeat ; mask-size:100% 100% ;
}
.etc__icon::before , .etc__icon::after { 
    display:block ; content:"" ;  ; opacity:0.8 ; 
    position:absolute ; left:50% ; top:50% ; transform:translate(-50%,-50%) ;
}
.etc__link:hover .etc__icon::before , .etc__link:focus .etc__icon::before ,
.etc__link:hover .etc__icon::after , .etc__link:focus .etc__icon::after { opacity:1 }
.etc__link:hover .etc__icon::after , .etc__link:focus .etc__icon::after { transform:translate(-50%,-50%) scale(0.9) } 
.etc__link:hover .etc__title , .etc__link:focus .etc__title { color:#111111 }
.etc__link:hover , .etc__link:focus { box-shadow:0 0.1rem 0.3rem rgba(0,0,0,0.2) }

.etc__icon::before { background-color:#ffd819 ; width:100% ; height:100% }
.item41 .etc__icon::before { background-color:#58d137 } 
.etc__icon::after  { 
    width:6rem ; height:6rem ; transform:translate(-50%,-50%) scale(0.8) ;
    background:url(../img/main_sprite.png) no-repeat 0 0 ; background-size:6rem auto }
.item31 .etc__icon::after { background-position:0 -12rem }
.item32 .etc__icon::after { background-position:0 -18rem }
.item41 .etc__icon::after { background-position:0 -24rem }
.etc__icon__title  { 
    top:13rem ; word-break:keep-all ; width:80% ;
    font-size:1.4rem ; line-height:1.8rem ; color:#ffffff ; 
    text-shadow:0 0 0.3rem rgba(0,0,0,0.3) ;
}  
.event__link { 
    display:block ; overflow:hidden ; width:100% ; height:25rem ; 
    background:url(../img/event_banner_MB.jpg) no-repeat center ; 
    position:relative ;
}
.event__link::before { border:solid 1px rgba(0,0,0,0.05) ; box-sizing:border-box }



/* culture */
#sec_culture { margin-bottom:0 }
.culture__item { position:relative }
.culture__link , .culture__img , .culture__link::after { display:block ; overflow:hidden ; border-radius:0.8rem }
.culture__link , .culture__img { position:relative }
.culture__link { width:100% ; min-height:32rem ; background-color:#ffffff }
.culture__link::after { 
    content:"" ; width:100% ; height:100% ; box-sizing:border-box ;
    border:solid 1px rgba(0,0,0,0.1) ;
    position:absolute ; left:0 ; top:0
}
.culture__img::before , .culture__img::after {
    display:block ; content:"" ; width:100% ; height:100% ;
    position:absolute ; left:50% ; top:50% ; transform:translate(-50%,-50%) scale(1.01) ;
}
.culture__img::before { background:no-repeat center ; background-size:cover; }
.culture__img::after  { background-color:#000000 ; opacity:0.1 }
.item51 .culture__img::before { background-image:url(../img/thum51_MB.jpg) }
.item52 .culture__img::before { background-image:url(../img/thum52_MB.jpg) }
.item53 .culture__img::before { background-image:url(../img/thum53_MB.jpg) }

.culture__tag , .culture__title { display:block ; width:85% ; margin:auto  ; text-align:center ; word-break:keep-all }
.culture__tag { 
    font-size:1.4rem ; line-height:2rem ; 
    padding:1rem 0 ; border-bottom:solid 1px #ff1359 }
.culture__title    { font-size:1.8rem ; line-height:2.4rem ; font-weight:500 ; padding:1rem 0 }
.culture__title br { display:none }
.culture__icon { position:absolute ; right:1rem ; top:1rem }

.culture__link ,
.culture__img::before , .culture__img::after , .culture__tag , .culture__title { transition:0.3s all }
.culture__link:hover , .culture__link:focus { background-color:#313131 }
.culture__link:hover .culture__img::before , .culture__link:focus .culture__img::before { transform:translate(-50%,-50%) scale(1.1) }
.culture__link:hover .culture__img::after , .culture__link:focus .culture__img::after   { opacity:0.2 }

.culture__link:hover .culture__tag , .culture__link:focus .culture__tag ,
.culture__link:hover .culture__title , .culture__link:focus .culture__title { text-shadow:0 0 0.3rem rgba(0,0,0,0.3) }
.culture__link:hover .culture__tag , .culture__link:focus .culture__tag     { color:#ff1359 }
.culture__link:hover .culture__title , .culture__link:focus .culture__title { color:#ffffff }
.culture__link:hover .culture__icon::before , .culture__link:focus .culture__icon::before { 
    background-color:rgba(0,0,0,0.6) ; border:0 }  
.culture__link:hover .culture__icon::after , .culture__link:focus .culture__icon::after { 
    transform:translate(-50%,-50%) scale(1) ; opacity:1  }




/* PC */
@media all and (min-width:1024px){ 
 
    /* body */
    body { background:url(../img/bg_txt.png) no-repeat right top #313131 ; background-attachment:fixed }

    

    /* visual */ 
    #visual { overflow:hidden }
    #visual , .icons__list { width:100% ; margin:auto }
    #visual_slide { position:relative }
     
    #visual , #visual_slide , #VS_inner , #VS__list , .VS__item , #VS_slide , .slide_box { height:80rem }
    #VS_inner {  
        -webkit-mask-image:url(../img/main_visual_mask.png);
        mask-image:url(../img/main_visual_mask.png);
        mask-repeat:no-repeat ; mask-size:100% 100% ;
        position:absolute ; left:50% ; top:50% ; width:100% ; max-width:150rem ;
        transform:translate(-50%,-50%)  
    } 

    .VS__item.slide1 { background-image:url(../img_sub/visual11_PC.jpg) }
    .VS__item.slide2 { background-image:url(../img_sub/visual12_PC.jpg) }
    .VS__item.slide3 { background-image:url(../img_sub/visual13_PC.jpg) }

    .slide__btn__pp { top:2rem ; left:50% ; margin-left:45rem }
    .slide__arrow   { width:8rem ; height:8rem ; background-color:rgba(255,255,255,0.05) }
    .slide__arrow.prev , #visual_slide:hover .slide__arrow.prev , .slide__arrow.prev:hover , .slide__arrow.prev:focus ,
    .slide__arrow.next , #visual_slide:hover .slide__arrow.next , .slide__arrow.next:hover , .slide__arrow.next:focus { opacity:1 }
    .slide__arrow.prev , #visual_slide:hover .slide__arrow.prev , .slide__arrow.prev:hover , .slide__arrow.prev:focus { left:-4rem }
    .slide__arrow.next , #visual_slide:hover .slide__arrow.next , .slide__arrow.next:hover , .slide__arrow.next:focus { right:-4rem }

    .slide__arrow:hover , .slide__arrow:focus { background-color:#111111 ; box-shadow:0 0.1rem 0.3rem rgba(0,0,0,0.3) } 
     
    .slide__arrow::before { width:14% ; height:14% ; opacity:0.5 }
    .slide__arrow:hover::before , .slide__arrow:focus::before { opacity:1 }
    .slide__arrow.prev::before { left:75% }
    .slide__arrow.next::before { left:25% }
    .VS__item::before , .slide__box__caption , .slide__box__caption > span { transition:0.3s all }
    .VS__item::before { 
        background:url(../img/main_visual_mask.png) no-repeat 0 0 ; background-size:100%;
        opacity:0.7 ; transform:none ; 
        top:45% ; left:auto ; right:35%
    } 
    .VS__item:hover::before { opacity:0.8 }
    .slide__box { 
        width:45% ; padding-left:5rem  ; max-width:55rem ; 
        transform:none ; right:47% ; left:auto ; bottom:auto ; top:50% ;
        text-align:left ;
    }
    .slide__box__tag { 
        font-size:2.2rem ; line-height:4rem ; margin-bottom:1.5rem ; padding-right:5.5rem ;
        display:inline-block ; position:relative ;
    }
    .slide__box__title { font-size:5rem ; line-height:6rem ; margin-bottom:4rem }
 
    .slide__box__title .icon__arrow { display:none }
    .slide__box__tag .icon__arrow   { 
        display:block ;
        position:absolute ; right:0 ; top:0
    }
    .slide__box__caption {
        display:block ; 
        font-size:1.8rem ; line-height:3.2rem ; color:rgba(255,255,255,0.7) ; font-weight:300 ;
        text-align:justify ; word-break:b ;
        text-shadow:0 0 0.3rem rgba(0,0,0,0.3) ;
    }
    .slide__box__caption > span { 
        font-size:inherit ; line-height:inherit ; font-weight:inherit ; color:inherit ; text-align:inherit ;
        word-break:inherit ; text-shadow:inherit ;
        border-bottom:solid 1px rgba(255,255,255,0.1) ; padding-bottom:0.3rem ;
    }
    .slide__box__link:hover .slide__box__caption > span ,
    .slide__box__link:focus .slide__box__caption > span { color:#ffffff ; border-color:rgba(255,255,255,0.3) }

    .slide__page , .now .slide__page__btn , .now .slide__page__btn:hover , .now .slide__page__btn:focus { width:1rem } 
    .slide__page { 
        bottom:auto ; top:50% ; left:auto ; right:51% ; transform:none ;
        margin-right:50rem ; padding-top:1rem ;
    }
    .slide__page__item { margin:0 0 1rem 0 } 
    .now .slide__page__btn , .now .slide__page__btn:hover , .now .slide__page__btn:focus { height:5rem }
    


    /* special */ 
    .main__content__container { padding:10rem 0 5rem ; position:relative ; background:none }
    .main__content__container::before { 
        width:100% ; height:95rem ; content:"" ; left:0 ; bottom:0 ; z-index:-1 ;
        background:url(../img/footer_bg.jpg) no-repeat center bottom ; background-size:cover ;
    }
    .main__content__bg {
        display:block ; width:100% ; height:166rem ; 
        position:absolute ; left:0 ; top:-16rem ; z-index:-1 ; 
    }  
    .main__content__container::before ,
    .main__bg__top , .main__bg__bottom ,  .main__bg__img { display:block ; position:absolute }
    .main__bg__top , .main__bg__bottom { 
        width:100% ; height:50.1% ; 
        background:url(../img/main_special_bg.svg) no-repeat ; background-size:cover ; 
        left:50% ; transform:translateX(-50%);
    }
    .main__bg__top    { top:0 ; background-position:left top }
    .main__bg__bottom { bottom:0 ; background-position:left bottom }
    .main__bg__img {
        width:99rem ; height:100% ; background:url(../img/main_special_img.svg) no-repeat right center ;
        right:0 ; top:0 ; opacity:0.05 ;
    }
     
    .main__sec         { width:98% ; max-width:140rem ; margin:0 auto 10rem }
    .main__sec::after  { display:block ; content:"" ; clear:both }

    .main__sec__title  { font-size:5rem ; line-height:6rem ; margin-bottom:4rem }
    .main__title__icon { 
        width:6rem ; height:6rem ; position:relative ; top:-1rem ;
        background-size:6rem auto ;
    }
    .main__title__icon.icon2 { background-position:0 -6rem } 

    .spc__item { display:block ; width:32.14% ; float:left ; margin:0 1.78% 0 0 ; max-width:none }
    .spc__item:last-child { margin-right:0 ; float:right }
    .spc__img  { 
        height:30rem ;
        -webkit-mask-image:url(../img/thum20_mask.png);
        mask-image:url(../img/thum20_mask.png);
        mask-repeat:no-repeat ; mask-size:100% 100% ;
    }
    .item21 .spc__img::before { background-image:url(../img/thum21_PC.jpg) }
    .item22 .spc__img::before { background-image:url(../img/thum22_PC.jpg) }
    .item23 .spc__img::before { background-image:url(../img/thum23_PC.jpg) }
    .item24 .spc__img::before { background-image:url(../img/thum24_PC.jpg) }
    .spc__img::after { top:20rem }

    .spc__tag  { font-size:2.4rem ; line-height:3rem ; top:24rem ; width:100% }
    .spc__icon { top:30rem }
    .spc__txt  { font-size:2.2rem ; line-height:3rem }
    .spc__txt br { display:block }



    /* etc */ 
    #sec_etc   { padding-right:28rem ; position:relative } 
    .etc__item { display:block ; float:left ; margin:0 1.78% 0 0 ; width:31.25% ; max-width:35rem }
    .etc__item.event { float:none ; position:absolute ; right:0 ; top:0 ; margin:0 } 
    .etc__item.event , .event__link  { width:27rem ; max-width: none }
    .event__link  { height:39rem ; background-image:url(../img/event_banner_PC.jpg) }
    .etc__link , .etc__img , .event__link , .event__link::before , .etc__link::after { border-radius:1.2rem }
    .etc__link , .event__link { box-shadow:0 0.1rem 0.3rem rgba(0,0,0,0.2) }
    .etc__link { min-height:39rem ; padding-top:30rem }
    .etc__img { height:28rem }
    .etc__tag { margin-bottom:0.8rem }

    .item31 .etc__img::before { background-image:url(../img/thum31_PC.jpg) }
    .item32 .etc__img::before { background-image:url(../img/thum32_PC.jpg) }
    .item41 .etc__img::before { background-image:url(../img/thum41_PC.jpg) }

    .etc__title { 
        padding:0 1rem 1rem ; letter-spacing:-0.1rem ;
        font-size:2.4rem ; line-height:3.4rem ;  font-weight:600 ; 
    } 
    .etc__icon__title { 
        top:20rem  ; 
        font-size:1.6rem ; line-height:2.4rem ; font-weight:500 ;  
    } 
    .etc__icon {  
        width:9rem ; height:9rem ; top:14.5rem ;
        transform:translate(-50%,-50%) ;
    }



    /* culture */
    #sec_culture   { margin-bottom:8rem }
    .culture__item { display:block ; float:left ; margin:0 ; min-width:auto }
    .culture__item.item51 { width:49.28% ; max-width:69rem ; margin-right:2.14% } 
    .culture__item.item52 { width:24.28% ; max-width:34rem }
    .culture__item.item53 { width:22.14% ; max-width:31rem ; float:right }

    .culture__link , .culture__img , .culture__link::after { border-radius:1.2rem }
    .culture__link { min-height:56rem ; padding:44rem 2rem 1rem } /* 2line 60rem */
    .culture__img  { 
        width:100% ; height:44rem ; background-color:#313131 ;
        position:absolute ; left:0 ; top:0 }

    .item51 .culture__img::before { background-image:url(../img/thum51_PC.jpg) }
    .item52 .culture__img::before { background-image:url(../img/thum52_PC.jpg) }
    .item53 .culture__img::before { background-image:url(../img/thum53_PC.jpg) }

    .culture__tag , .culture__title { width:100% }
    .culture__tag { font-size:2.4rem ; line-height:3rem ; font-weight:600 ; padding:1.5rem 0 }
    .culture__title { font-size:1.8rem ; line-height:2.8rem ; font-weight:400 ; }
 
    

} 
 




/* PRINT */
@media print {   }  