/* slide */
.banner-top-sp { display: none; }
.carousel-item img { width: 100%; }

.banner-text {bottom: 30px;text-align: left;}
.banner-text h3 {font-family: 'Noto Sans JP', sans-serif;background:rgba(255, 255, 255, 0.9);position:relative;font-size: 35px;font-weight: bold;color: #000;display: none;padding: 0px 20px 0;/* border-bottom: 10px solid #fff000; *//* line-height: 64px; */}
.banner-text h3::before{content:'';width:100%;height:12px;background: rgba(255, 240, 0, 0.6);position:absolute;bottom:0;left:0;z-index:0;}
.banner-text h3 p{position:relative;z-index:2;top: -1px;}
.banner-text strong {font-size: 43px;}
.carousel-item.active h3 { display: inline-block; }

.nintei{margin-top:20px;}
.nintei p{text-align:center;font-weight:bold; font-size:20px;}
.fl{float:left; width:30%}
.fr_nin{float:right; position:relative; top:-25px;width:70%}
.cb{clear: both;}

@media(max-width:500px) {
    .nintei p{text-align:left;}
    .fl{clear: both; width:100%;text-align: center;}
    .fr_nin{clear: both;width:100%; text-align:center}
    .br_sp{display:none;}
}



.kenburns-top-left{ -moz-animation:kenburns-top-left 5s ease-out both; -webkit-animation:kenburns-top-left 5s ease-out both; animation:kenburns-top-left 5s ease-out both; }
.kenburns-top{ -moz-animation:kenburns-top 5s ease-out both; -webkit-animation:kenburns-top 5s ease-out both; animation:kenburns-top 5s ease-out both;}
.kenburns-right{ -moz-animation:kenburns-right 5s ease-out both; -webkit-animation:kenburns-right 5s ease-out both; animation:kenburns-right 5s ease-out both; }

.tracking-in-expand{ -moz-animation:tracking-in-expand .7s cubic-bezier(.215,.61,.355,1.000) both; -webkit-animation:tracking-in-expand .7s cubic-bezier(.215,.61,.355,1.000) both; animation:tracking-in-expand .7s cubic-bezier(.215,.61,.355,1.000) both; }
.tracking-in-expand-1{ -moz-animation:tracking-in-expand .7s cubic-bezier(.215,.61,.355,1.000) 1s both; -webkit-animation:tracking-in-expand .7s cubic-bezier(.215,.61,.355,1.000) 1s both; animation:tracking-in-expand .7s cubic-bezier(.215,.61,.355,1.000) 1s both}
.tracking-in-expand-2{ -moz-animation:tracking-in-expand .7s cubic-bezier(.215,.61,.355,1.000) 2s both; -webkit-animation:tracking-in-expand .7s cubic-bezier(.215,.61,.355,1.000) 2s both; animation:tracking-in-expand .7s cubic-bezier(.215,.61,.355,1.000) 2s both}


/*
@-webkit-keyframes kenburns-top-left{
    0%{-webkit-transform:scale(1.1) translate(-15px,-10px);transform:scale(1.1) translate(-15px,-10px);-webkit-transform-origin:16% 16%;transform-origin:16% 16%}
    100%{-webkit-transform:scale(1.0) translate(0px,0px);transform:scale(1.0) translate(0px,0px);-webkit-transform-origin:top left;transform-origin:top left}
}
@keyframes kenburns-top-left{
    0%{-webkit-transform:scale(1.1) translate(-15px,-10px);transform:scale(1.1) translate(-15px,-10px);-webkit-transform-origin:16% 16%;transform-origin:16% 16%}
    100%{-webkit-transform:scale(1.0) translate(0px,0px);transform:scale(1.0) translate(0px,0px);-webkit-transform-origin:top left;transform-origin:top left; }
}

@-webkit-keyframes kenburns-top{
    0%{-webkit-transform:scale(1.1) translateY(-15px);transform:scale(1.1) translateY(-15px);-webkit-transform-origin:50% 16%;transform-origin:50% 16%}
    100%{-webkit-transform:scale(1.0) translateY(0px);transform:scale(1.0) translateY(0px);-webkit-transform-origin:top;transform-origin:top}
}
@keyframes kenburns-top{
    0%{-webkit-transform:scale(1.1) translateY(-15px);transform:scale(1.1) translateY(-15px);-webkit-transform-origin:50% 16%;transform-origin:50% 16%}
    100%{-webkit-transform:scale(1.0) translateY(0px);transform:scale(1.0) translateY(0px);-webkit-transform-origin:top;transform-origin:top}
}

@-webkit-keyframes kenburns-right{
    0%{-webkit-transform:scale(1.1) translate(-15px,-10px);transform:scale(1.1) translate(-15px,-10px);-webkit-transform-origin:84% 50%;transform-origin:84% 50%}
    100%{-webkit-transform:scale(1.0) translateX(0px);transform:scale(1.0) translateX(0px);-webkit-transform-origin:right;transform-origin:right}
}
@keyframes kenburns-right{
    0%{-webkit-transform:scale(1.1) translate(-15px,-10px);transform:scale(1.1) translate(-15px,-10px);-webkit-transform-origin:84% 50%;transform-origin:84% 50%}
    100%{-webkit-transform:scale(1.0) translateX(0px);transform:scale(1.0) translateX(0px);-webkit-transform-origin:right;transform-origin:right}
}


@-webkit-keyframes tracking-in-expand{0%{letter-spacing:-.5em;opacity:0}40%{opacity:.6}100%{opacity:1}}
@keyframes tracking-in-expand{0%{letter-spacing:-.5em;opacity:0}40%{opacity:.6}100%{opacity:1}}
*/

/* top news */
.top-news .news { border-left: 1px solid #d4d4d4; }
.tag-news {display: block;min-width: 115px;font-size: 13px;padding: 2px;height: 18px;line-height: 13px;color: #fff;text-align: center;}
.tag-news.new { background: #fa9608; }
.tag-news.campaign { background: #8d32b7; }
.tag-news.notice { background: #4dacee; }
.text-news { width: 100%; display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding-top: 4px; padding-bottom: 6px; }
.text-news:hover { text-decoration: underline; }
.news-pc{ display: block}
.news-sp{display: none;}

/* service */
.title-service {display: block;font-size: 18px;font-weight: 900;text-align: center;margin: 0px auto 10px;}
.title-service span { display: block; width: 100px; height: 4px; margin: 4px auto; }
.link-service { display: inline-block; position: relative; transition: none; }
.link-service { width: 85%; margin: 0 auto; cursor: pointer; }
.link-service .bg-white { transition: all 0.3s; }
.link-service .img-black { display: block; }
.link-service .img-white { display: none; }
@media(min-width:768px) {
    
.link-service:hover {  color: #fff; }
.link-service:hover .img-black { display: none; }
.link-service:hover .img-white { display: block; }
.link-service:hover .bg-white { background: none !important; }
.link-service:hover .title-service span { background: #fff !important; }


}
.link-2 {  width: 241px; height: 292px; position: absolute; top: 18%; right: -125px; display: none;    z-index: 6; }
.link-2 li{background:url(../images/link2.png) no-repeat;padding:0 0 0 46px; }
.link-2 li a{ display: block; text-align: center; font-size: 16px; font-weight: 600;}
#link-2-1{ background-position: 0 0; height: 76px; line-height: 76px;}
#link-2-2{ background-position: 0 -76px;height: 76px; line-height: 76px;}
#link-2-3{ background-position: 0 -150px;height: 76px; line-height: 76px;}
#link-2-4{ background-position: 0 -226px;height: 66px; line-height: 66px;}
#link-2-1:hover{ background-position: -241px 0;}
#link-2-2:hover{ background-position: -241px -76px;}
#link-2-3:hover{ background-position: -241px -150px;}
#link-2-4:hover{ background-position: -241px -226px;}


.link-1{width: 233px; height: 210px;position: absolute; top: 10%; left: -140px; display: none;}
.link-1 li{background:url(../images/link1.png) no-repeat;padding: 0 37px 0 0; }
.link-1 li a{ display: block; text-align: center; font-size: 16px; font-weight: 600;}
#link-1-1{ background-position: 0 0; height: 73px; line-height: 73px;}
#link-1-2{ background-position: 0 -73px;height: 67px; line-height: 67px;}
#link-1-3{ background-position: 0 -140px;height: 67px; line-height: 67px;}
#link-1-4{ background-position: 0 -207px;height: 71px; line-height: 71px;}
#link-1-1:hover{ background-position: -233px 0;}
#link-1-2:hover{ background-position: -233px -73px;}
#link-1-3:hover{ background-position: -233px -140px;}
#link-1-4:hover{ background-position: -233px -207px;}


.bg-calendar {  text-align: center; position: relative; }
.script-calendar {/*position: absolute; top: 15%; left: 0; right: 0;*/margin: auto;max-width: 907px;background-image: url('/index/images/bg-calendar-mid.png');background-repeat: repeat-y; background-size: 100%;}

/* flyer */
.title-flyer h2 { word-wrap: break-word;display: block; font-size: 20px; font-weight: 700; text-align: left; margin: 12px auto; position: relative; }
.title-flyer h2 .new { display: inline-block; position: relative; color: #fff; padding: 2px 4px; background: #ff0024; font-size: 12px; font-weight: 300; margin-right: 20px; }
.title-flyer h2 .new::after { content: ''; height: 0; border-top: 11px solid #ff0024; border-bottom: 10px solid #ff0024; border-right: 8px solid transparent; position: absolute; top: 0; right: -8px; }
.title-flyer h2 .date { font-weight: 300; font-size: 13px; position: absolute; bottom: 8px; right: 0; }
.title-flyer h2 span { display: block; width: 100%; height: 4px; margin: 4px auto; }
.link-flyer { display: inline-block; }
.link-flyer:hover { box-shadow: 0px 0px 6px 2px rgba(0, 0, 0, 0.2); }
.title-flyer-txt{word-wrap: break-word; }
.title-flyer-txt a{min-width:150px;margin:10px 0 0 0;background: #5bd2ee;color: #FFF !important;/* height: 38px; */display: inline-block;padding: 8px 15px;font-size: 15px;/* line-height: 40px; */border-radius: 5px;transition: 0.5s;margin: 5px 5px;}
.title-flyer-txt a i{font-size: 17px;margin-right:5px;}
.title-flyer-txt a:hover{ background: #d3e869; color: #000 !important;}
  

.flyer-img {  position: relative; height: 420px; }
.flyer-img img {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: auto;
    width: auto;
    max-width: 100%;
    max-height: 100%;
    margin: auto;

}

.map { width: 75%; }

/* access */
.content-access { padding: 50px 0 100px; }
.access { padding: 0 44px 30px; width: 420px; position: absolute; right: 0; bottom: -55px; box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.2); }
.access p span { display: block; font-weight: 500; margin-top: 8px; }
.access .btn-map { color: #fff; font-size: 25px; display: block; padding: 18px 12px; margin: 14px auto; text-align: center; } 


.show-pc { display: block; }
.output{ display: inline-block; }
.show-sp { display: none; }


.cm_movie video{
    width: 100%;
    height: auto !important;
}

@media(max-width:1600px) {
    .banner-text { bottom: 10px; }
}
@media(max-width:1024px) {
 	.banner-text {bottom: 0px;}
	.banner-text h3 {font-size: 26px;}
	.banner-text strong { font-size: 30px; }

 
    .link-service {width: 100%;}
    .link-2 { right: -15px; }
    .link-1 {left: -40px;}
    .script-calendar {top: 8%;padding: 14px;/* margin: 0 0 -5px; */}

}
@media(max-width:768px) {
    .app_sp{
        background-image: url(/index/images/app_bck.jpg);
        background-repeat: no-repeat;
        background-size: 100%;
        max-width: 340px;
        margin: auto;
    }
    .app_title{
        position: relative;
        top: -25px;
    }
    .app_link {
        /* display: flex; */
        background: #FFF;
        margin: -22px 5px 0px;
        position: relative;
        top: -4px;
        justify-content: space-evenly;
        padding: 15px 15px;
        align-items: baseline;
    }
    .app_link a{
        width: 100%;
        border-bottom: none !important;
        max-width: 190px;
        display: block;
        margin: 2px auto 15px;
    }
    .app_link a img{
        width:100%;
    }
}

@media(max-width:620px) {
    .banner-text {bottom: 13px;padding-top: 0;padding-bottom: 0;right: 8%;left: 8%;}
    /* .carousel-item img { width: 200%; } */
	.banner-text h3 { font-size: 16px; padding: 0 5px;}
	.banner-text strong { font-size: 20px; }
    .script-calendar {margin: 0 0 -5px;}




    .kenburns-top-left-sp{ -moz-animation:kenburns-top-left-sp 5s ease-out both; -webkit-animation:kenburns-top-left-sp 5s ease-out both; animation:kenburns-top-left-sp 5s ease-out both; }
    .kenburns-top-sp{ -moz-animation:kenburns-top-sp 5s ease-out both; -webkit-animation:kenburns-top-sp 5s ease-out both; animation:kenburns-top-sp 5s ease-out both;}
    .kenburns-right-sp{ -moz-animation:kenburns-right-sp 5s ease-out both; -webkit-animation:kenburns-right-sp 5s ease-out both; animation:kenburns-right-sp 5s ease-out both; }
    

    
    /*
    @-webkit-keyframes kenburns-top-left-sp{0%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0);-webkit-transform-origin:16% 16%;transform-origin:16% 16%}100%{-webkit-transform:scale(1.1) translate(-20px,-15px);transform:scale(1.1) translate(-20px,-15px);-webkit-transform-origin:top left;transform-origin:top left}}@keyframes kenburns-top-left{0%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0);-webkit-transform-origin:16% 16%;transform-origin:16% 16%}100%{-webkit-transform:scale(1.25) translate(-20px,-15px);transform:scale(1.25) translate(-20px,-15px);-webkit-transform-origin:top left;transform-origin:top left; }}
    
    @-webkit-keyframes kenburns-top-sp{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0);-webkit-transform-origin:50% 16%;transform-origin:50% 16%}100%{-webkit-transform:scale(1.1) translateY(-15px);transform:scale(1.1) translateY(-15px);-webkit-transform-origin:top;transform-origin:top}}@keyframes kenburns-top{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0);-webkit-transform-origin:50% 16%;transform-origin:50% 16%}100%{-webkit-transform:scale(1.25) translateY(-15px);transform:scale(1.25) translateY(-15px);-webkit-transform-origin:top;transform-origin:top}}
    
    @-webkit-keyframes kenburns-right-sp{0%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0);-webkit-transform-origin:84% 50%;transform-origin:84% 50%}100%{-webkit-transform:scale(1.1) translateX(20px);transform:scale(1.1) translateX(20px);-webkit-transform-origin:right;transform-origin:right}}@keyframes kenburns-right{0%{-webkit-transform:scale(1) translate(0,0);transform:scale(1) translate(0,0);-webkit-transform-origin:84% 50%;transform-origin:84% 50%}100%{-webkit-transform:scale(1.25) translateX(20px);transform:scale(1.25) translateX(20px);-webkit-transform-origin:right;transform-origin:right}}
  
    */

}






@media(max-width:994px) {
    .top-news .date {/* width: 100%; */}
    .tag-news {min-width: 75px; font-size:11px;}




}

@media(max-width:860px) {
    .link-2 { right: 0; top: 50%; z-index: 9; }
}


@media(max-width:767px) {
    .show-pc,.output { display: none; }
    .show-sp { display: block; }

    .title-service span {margin: 10px auto 0;     height: 3px;}
    .title-service {font-size: 17px; margin: 10px auto 10px;}
    .service-link .modal-content { border: 2px solid #000; border-radius: 10px; background: rgb(255,250,122); background: linear-gradient(180deg, rgba(255,250,122,1) 0%, rgba(255,219,40,1) 100%); box-shadow: 0px 0px 2px 3px #ffde30 inset;}
    .service-link .modal-body li {font-size: 18px; font-weight:bold; height:55px; line-height:55px; text-align:center;}
    .service-link .modal-body li a{ display: block;}
    .service-link .close { opacity: 1; position: absolute; right: 15px;}

    .banner-top-sp {display: block;padding: 0;}

    .map { width: 100%; }
    .access { width: 100%; position: relative; bottom: 0; padding: 30px 44px; margin-top: 18px; }

    .top-news .news {border-left: 0;padding: 10px 5px;}

    .text-news {border-bottom: 1px solid #ececec;/* padding: 5px 5px 10px; */}

    .news-pc{ display: none}
    .news-sp{display: block;}

    .link-service img{ width:50%}
    .content-access {
        padding: 15px 0 30px;
    }
    .title-flyer h2 .date {
        bottom: 0;
        position: relative;
    }
    .link-flyer { width: 80%;    margin: 0 0 10px;}
    .flyer-img {height: auto; width: 80%; }
    .flyer-img img{ position: relative;}

 	.banner-text {bottom: 10px;}
	.banner-text h3 {font-size: 20px; margin-top:5px}
	.banner-text strong { font-size: 22px; }
}
@media(max-width:620px) {
 	.banner-text {bottom: 20px;}
	.banner-text h3 {font-size: 18px; margin-top:5px}
	.banner-text strong { font-size: 20px; }
}


/* top new*/
.card__f {
    display: flex;
    line-height: 1.5;
}
.card__f-image {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 45%;
    margin: 0 auto;
    padding: 1em;
}
.card__f-text {
    flex: 1;
    min-width: 0;
    display: flex;
    padding: 1em;
}

.card__f-text p{
    text-align:left;
    padding:15px 0 25px;
}

.detail_btn{
    background-color:#44cbe9;
    color:#fff!important;
    padding:15px 80px;
    margin-inline:auto;
    font-size:17px;
    cursor: pointer;
    position:relative;
    top:20px;
}

.detail_btn::after { 
    content: "";
    margin: auto;
    position: absolute;
    top: 2px;
    bottom: 0;
    right: 20px;
    width: 11px;
    height: 11px; 
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    transform: rotate(45deg);
}

.detail_btn2{
    background-color:#f49424;
    color:#fff!important;
    padding:15px 80px;
    margin-inline:auto;
    font-size:17px;
    cursor: pointer;
    position:relative;
    top:20px;
}

h4{
    font-size:18px;
    font-weight:bold;
    text-align:left;
    padding:5px 0 10px;
    border-bottom:3px solid #44cbe9;
    width:550px;
}


@media(max-width:980px) {
    h4{width:100%;}
    .card__f {display: block}
    .card__f-image {width:100%;padding:1em 0;}
    .card__f-text {padding:1em 0;}
}