/* CSS Document */
/********************************************************/
/******** 共通（body,inner,pタグ,imgタグの基本設定） ********/
/*******************************************************/
body p { word-break:break-all;}
.inner { width:95%; max-width:1100px; margin:0 auto;}
.spOnly { display: none;}
.pcOnly { display: block;}
.googleMap iframe { max-width: 100%; }
#page-top { width: 60px; height: 60px; position: fixed; right: 0; bottom: 0; z-index: 3;}
img[src$=".svg"] { width: 100%; height: 100%; object-fit: contain;}
a { text-decoration: none; }
a:hover { text-decoration: none;}
@media only screen and (max-width:768px){
    body { font-size: 1.4rem; text-rendering: geometricPrecision;}
    
    .inner { max-width: 90%;}
    .spOnly { display: block;}
    .pcOnly { display: none;}

    img { width: 100%; height: auto;}
    img[src$=".svg"] { width: 100%; height: auto;}
    .column2 { width: 100%; margin: 0 auto;}
    .column3 { width: 100%; margin: 0 auto;}
    .column3 + .column3 { margin-top: 30px;}

}
@media only screen and (max-width:768px){
    .wp-block-columns { margin-bottom: 0!important;}
}


/**********************/
/** 全ページ共通パーツ **/
/**********************/

.stickyBannerArea { width: 44px; height: calc( 100svh - (80px + 80px)); position: fixed; right: 0; top: 80px; z-index: 12; }

.stickyBanner { width: 100%; /*height: 33%; min-height: 155px;*/ height: 200px; position: absolute; /*top: 38%;*/ top: 250px; }
.stickyBanner a { width: 100%; height: 100%; display: block; background: #FFD200; padding: 2.0rem 1.0rem 2.0rem; font-weight: 700; color: #000; writing-mode: vertical-rl; position: relative; /*font-size: 2.1vh;*/ font-size: 1.6rem; }

.stickyBanner2 { width: 200px; /*height: 35%; min-height: 200px;*/ height: 230px; cursor: pointer; position: absolute; right: -156px; top: 0; z-index: 12; display: flex; transition: all .3s; }
.stickyBanner2.active { right: 0px; transition: all .3s; }
.stickyBanner2 .stickyTitle { flex-flow: column; width: 44px; writing-mode: vertical-rl; position: relative; background: url(images/icon_join_white.svg) 15px 5% no-repeat #00478e; background-size: 50%; color: #fff; font-weight: 600; padding: 5rem 1.0rem 1rem; /*font-size: 2.1vh;*/ font-size: 1.6rem; }
.stickyBanner2 .stickyTitle img { display: inline-block; margin-bottom: 0.7rem; }
.stickyBanner2 .stickyTitle:hover { opacity: 0.7; }
.stickyBanner2 .stickyContent { width: 160px; background: #00478e; color: #fff; padding: 1rem; }
.stickyBanner2 .stickyContent a { display: block; margin: 0 auto 1rem; font-size: 1.3rem; color: #fff; border: solid 1px #fff; padding: 0.9rem; line-height: 1.1; }
.stickyBanner2 .stickyContent a:nth-of-type(1) { background: #006E8C; }
.stickyBanner2 .stickyContent a:nth-of-type(2) { background: #4092A9; }
.stickyBanner2 .stickyContent a:nth-of-type(3) { background: #80B6C5; }

.stickyBanner3 { width: 100%; height: 10%; position: absolute; top: 77%; right: 15px; }
.stickyBanner3 a { width: 100%; height: 100%; display: block; }
.stickyBanner3 a img { width: 100%; height: 100%; display: block; }

@media only screen and (max-width:768px){
    .stickyBanner2 { height: 200px; }
    .stickyBanner2 .stickyTitle { font-size: 1.3rem; }
    .stickyBanner { height: 166px; top: 205px; }
    .stickyBanner a { font-size: 1.3rem; }
    .stickyBanner3 { top: 380px; }

}


/*
@media only screen and (max-width:768px){
    .stickyBanner { height: 150px; position: fixed; bottom: 70px; }
    .stickyBanner a { padding: 1.5rem 1.6rem 1.5rem; font-size: 1.2rem; }
    .stickyBanner a::after,.stickyBanner a::before { width: 12px; height: 12px; }

}
@media only screen and (max-height:700px){
    .stickyBanner { height: 150px; position: fixed; bottom: 70px; }
    .stickyBanner a { padding: 1.5rem 1.6rem 1.5rem; font-size: 1.2rem; }
    .stickyBanner a::after,.stickyBanner a::before { width: 12px; height: 12px; }
}
*/

/*
.stickyBanner2 { width: 200px; height: 280px; cursor: pointer; position: fixed; right: -156px; bottom: 340px; z-index: 12; display: flex; transition: all .3s; }
.stickyBanner2.active { right: 0px; transition: all .3s; }
.stickyBanner2 .stickyTitle { flex-flow: column; width: 44px; writing-mode: vertical-rl; position: relative; background: url(images/icon_join_white.svg) 15px 5% no-repeat #00478e; background-size: 50%; color: #fff; font-weight: 600; padding: 5rem 1.0rem 1rem; font-size: 1.6rem;   }
.stickyBanner2 .stickyTitle img { display: inline-block; margin-bottom: 0.7rem; }
.stickyBanner2 .stickyTitle:hover { opacity: 0.7; }
.stickyBanner2 .stickyContent { width: 160px; background: #00478e; color: #fff; padding: 2rem; }
.stickyBanner2 .stickyContent a { display: block; margin: 0 auto 1rem; font-size: 1.4rem; color: #fff; border: solid 1px #fff; padding: 0.5rem; }
.stickyBanner2 .stickyContent a:nth-of-type(1) { background: #006E8C; }
.stickyBanner2 .stickyContent a:nth-of-type(2) { background: #4092A9; }
.stickyBanner2 .stickyContent a:nth-of-type(3) { background: #80B6C5; }


@media only screen and (max-width:768px){
    .stickyBanner2 { height: 220px; bottom: 280px; }
    .stickyBanner2 .stickyTitle { font-size: 1.2rem; background-size: 40%; padding: 4rem 1.4rem 1rem; }
    .stickyBanner2 .stickyContent a { font-size: 1.2rem; }

}
@media only screen and (max-height:700px){
    .stickyBanner2 { height: 220px; bottom: 280px; }
    .stickyBanner2 .stickyTitle { font-size: 1.2rem; background-size: 40%; padding: 4rem 1.4rem 1rem; }
    .stickyBanner2 .stickyContent a { font-size: 1.2rem; }

}
    */

/*LINEバナー3校目 stickyも追加*/
/*
.stickyBanner3 { width: 44px; height: 44px; position: fixed; right: 0; top: 80px; z-index: 12;}
.stickyBanner3 a { width: 100%; height: 100%; display: block; }
.stickyBanner3 a img { width: 100%; height: 100%; display: block; }
*/


.floatingBanner { position: fixed; }

.fltB01 { top: 20%; left: 15px; width: 150px; height: 150px; z-index: 13; }
.fltB01 a { display: block; }
.fltB01 a img { width: 100%; height: 100%; }

.fltB02 { top: calc(20% + 160px); left: 15px; width: 150px; height: 150px; z-index: 13; }
.fltB02 a { display: block; }
.fltB02 a img { width: 100%; height: 100%; }

@media only screen and (max-width:768px){
    .fltB01 { top: 16%; left: 10px; width: 120px; height: 120px; }
    .fltB02 { top: calc( 16% + 120px ); left: 10px; width: 120px; height: 120px; }
}
@media only screen and ( min-width: 769px ) and ( max-height: 667px ) {
    .fltB01 { top: 24%; left: 10px; width: 120px; height: 120px; }
    .fltB02 { top: calc( 24% + 120px ); left: 10px; width: 120px; height: 120px; }
}
@media only screen and ( min-width: 769px ) and ( max-height: 666px ) {
    .fltB01 { top: 25%!important; left: 10px; width: 120px; height: 120px; }
    .fltB02 { top: calc( 25% + 120px )!important; left: 10px; width: 120px; height: 120px; }
}



/*LINEバナー3校目*/
.fltB03 { /*top: 15%;*/ top: 100px; left: 25px; width: 150px; height: auto; z-index: 13; position: fixed!important; }
.fltB03 a img { /*width: 100%;*/ width: 70%; height: auto; }
@media only screen and (max-width:768px){
    .fltB03 { top: 20px; left: 60%; width: 25%; height: auto; position: absolute!important; }
    .fltB03 a img { width: 100%; }
}
@media only screen and (/*max-height:700px*/ /*max-height:650px*/ /*max-height:568px*/ max-height: 667px ){
    .fltB03 { /*top: 26px;*/ /*top: 100px;*/ top: 30px; }
}
@media only screen and ( max-height: 667px ) and ( min-width: 769px ) and ( max-width: 1279px ){
    .fltB03 { top: calc( 100vw / 15 ); }
}
@media only screen and ( max-height: 667px ) and ( min-width: 1280px ) {
    .fltB03 { top: 100px; }
}



.logo { width: 190px; position: fixed; bottom: 10%; left: 5%; z-index: 5;}
.home .logo { position: fixed; bottom: calc(50% - 75px); left: 25%; transform: translateX(-50%);}
@media only screen and (max-height:700px){
    .home .logo { position: fixed; bottom: calc(50% - 35px); }
}



.screenArea { width: 100%; height: 100vh; position: relative; overflow: hidden;}
.pageScreenArea { width: 100%; height: 100%; position: relative;}
.screenBox { width: 100%; height: 100vh; background-position: center; background-repeat:repeat, no-repeat; background-size:100px, cover; position: fixed; top: 0; left: 0; opacity: 0; transition: 0.8s; z-index: -5;}

.fadeIn .screenBox { opacity: 1; transition: 0.8s;}
.firstViewArea .screenBox { background-image:url(images/topBackFilter.png) , url(images/topBack01.jpg);}
.aboutArea .screenBox { background-image:url(images/topBackFilter.png) ,url(images/topBack02.jpg);}
.toursArea .screenBox { background-image:url(images/topBackFilter.png) ,url(images/topBack03.jpg);}
.courseArea .screenBox { background-image:url(images/topBackFilter.png) ,url(images/topBack04.jpg);}
.careerArea .screenBox { background-image:url(images/topBackFilter.png) ,url(images/topBack07.jpg);}
.programArea .screenBox { background-image:url(images/topBackFilter.png) ,url(images/topBack04.jpg);}
.parentProgramArea .screenBox { background-image:url(images/topBackFilter.png) ,url(images/topBack04.jpg);}
.newsArea .screenBox { background-image:url(images/topBackFilter.png) ,url(images/topBackFilter.png) ,url(images/topBack05.jpg);}
.newsArea .screenBox { background-repeat: repeat, repeat, no-repeat; background-size: 100px, 100px, cover;}
.faqArea .screenBox { background-image:url(images/topBackFilter.png) ,url(images/topBack06.jpg);}
.inquiry .screenBox { background-image:url(images/topBackFilter.png) ,url(images/topBack06.jpg);}

.singleArea .screenBox { background-image:url(images/topBackFilter.png) ,url(images/topBackFilter.png) ,url(images/topBack05.jpg);}
.singleArea .screenBox { background-repeat: repeat, repeat, no-repeat; background-size: 100px, 100px, cover;}




.boxLeft { width: 50%; height: 100%; position: relative;}
.bandArea { display: flex; align-items: center; justify-content: center; width: 40%; min-width: 640px; height: 100%; position: absolute; left: 50%; top: 0; z-index: 10;}
.bandAreaByColor { flex-wrap: wrap; }
.byColorItem { width: 100%; display: flex; justify-content: center; align-items: flex-start; position: relative; z-index: 0;}
.byColorItemM { height: auto; min-height: calc( 100vh - 305px); }
.home .byColorItemM { height: 85%; min-height: 700px; }
.archive .byColorItem { padding-top: 5rem; }
.information .byColorItem { padding-top: 5rem; padding-bottom: 5rem; }

.byColorItemS { height: 15%; max-height: calc( 100% - 700px);}
.blueBand { background: rgba(33, 171, 196, 0.9);}
.darkBlueBand { background: rgba(0,110,140,0.9);}
.whiteBand { background: rgba(255,255,255,0.9);}
.bandContents { width: 80%;}

.pageBandArea { width: 40%; min-width: 640px; height: 100%; min-height: 100vh; position: relative; left: 50%; top: 0;}
.pageContHeader { background: rgba(33, 171, 196, 0.9); padding: 100px 50px 0; overflow: hidden; }
.pageContImg { position: relative; right: 20%; max-width: none; width: 110%; padding-top: 10px;}
.pageContImg img { max-width: none; width: 100%;}
.pageContImgRight { right: 10%;}
.pageContBottom { background: rgba(255,255,255,0.9); padding: 0 50px; }

.singleContents { padding: 10% 30px 10% 0; min-height: calc(100vh - 350px);}

.pageNav { position: fixed; top: 310px; left: 70px;}
.pageNav li { margin-bottom: 1.8rem;}
.pageNav li span { display: inline;  }
.pageNav a { color: #333; font-size: 1.8rem; font-weight: 700; letter-spacing: 0.05em; background: rgba(255,255,255,0.8); padding: 0.7rem; }
.pageNav a::before { content: ""; display: inline-block;; line-height: 1; width: 0; height: 0; border-style: solid; border-color: transparent; border-width: 0.375em 0.64952em; border-left-color: currentColor; border-right: 0; margin-right: 1rem; }

.borderBox { border: solid 1px #707070; border-left: none; border-right: none; padding: 30px 0; margin: 30px 0;}

@media only screen and (max-height:800px){
    /*高さが800px以下のとき*/
    .byColorItemM { min-height: 700px; }
    .byColorItemS { height: calc(100% - 700px); }
    .scrollArrow { display: none;}
    
    /*.home .bandContents.first .headlineVertical { margin-top: -100px; }*/
    @media only screen and (max-height:680px){
        .home .bandContents.first .headlineVertical { margin-top: 0; }
        .home .scrollArrow.first { display: none!important;}
    }
    .home .scrollArrow.first { display: inline; width: 13px; }

    @media only screen and (max-width: 768px){
        .home .scrollArrow.first { display: none!important;}
        
        @media only screen and (max-height:550px){
            .firstViewArea .spTopImg { width: 75%; }
            .bandContents.first .headlineVertical { margin-top: 0!important; font-size: 1.4rem; }
            .home .firstViewArea .bandContents { padding: 60% 0 10%!important; }
            .home .scrollArrow.first { display: none!important;}
        }
    }

    /*.scrollArrow { width: 13px; }*/
    /*.headlineVertical { font-size: 4vh; }*/


}
@media only screen and (max-height:600px){
    /*高さが600px以下のとき*/
    .byColorItemM { height: auto!important; }
}

@media only screen and (max-width:768px){
    .screenArea { height: 100%; overflow: visible;}
    .pageScreenArea .screenBox { transition: none;}

    .logo { display: none;}

    .headerArea { position: relative; top: 0; left: 0%; width: 100%; height: 70px; background: rgba(33, 171, 196, 0.9);}

    .screenBox { width: 102%; left: -1%; background-position: center; background-repeat: no-repeat; background-size: cover; filter: blur(3px);}

    .firstViewArea .screenBox { background-image:  url(images/topBack01.jpg);}
    .aboutArea .screenBox { background-image: url(images/topBack02.jpg);}
    .toursArea .screenBox { background-image: url(images/topBack03.jpg);}
    .courseArea .screenBox { background-image: url(images/topBack04.jpg);}
    .careerArea .screenBox { background-image: url(images/topBack07.jpg);}
    .programArea .screenBox { background-image: url(images/topBack04.jpg);}
    .parentProgramArea .screenBox { background-image: url(images/topBack04.jpg);}
    .newsArea .screenBox { background-image: url(images/topBack05.jpg);}
    .newsArea .screenBox { background-repeat: no-repeat; background-size: cover;}
    .faqArea .screenBox { background-image: url(images/topBack06.jpg);}
    .inquiry .screenBox { background-image: url(images/topBack06.jpg);}

    .singleArea .screenBox { background-image: url(images/topBack05.jpg);}
    .singleArea .screenBox { background-repeat: no-repeat; background-size: cover;}


    .bandArea { /*width: 80%;*/ width: 90%; min-width: auto; height: 100%; /*left: 10%;*/ left: 5%; position: relative;}
    .home .bandArea { width: 80%; left: 10%; }
    .bandContents { padding: 80% 0 40%;}
    .byColorItemM { height: 100%; min-height: auto;}
    .byColorItemS { height: 100%; min-height: auto; }
    .scrollArrow { display: none;}
    
    .archiveNewsArea { padding: 5% 0 10%;}
    
    .pageBandArea { width: 90%; min-width: auto; height: 100%; left: 3%; position: relative; margin-top: 40px; padding-right: 15px; }
    .boxLeft { width: 88%; /*margin:0 auto;*/ padding: 20px 0 0 3%; position: static;}
    .home .boxLeft { display: none;}
    .pageNav { position: static; margin-top: 15px; width: 100%; display: flex; justify-content: space-between; }
    .pageNavi li { display:flex; flex-direction:column; }
    .pageNav li span { display: none;  }
    .pageNav a { font-size: 1.1rem; display: block; text-align: center; border: solid 2px; height: 5rem;  }
    .faq .pageNav a { height: 3rem;  }

    .faq .pageNav { flex-wrap: wrap; justify-content: center; }
    .faq .pageNav li { margin: 0.5rem 1rem; }

    .pageContImg { width: 100%; right: 0;}
    .pageContHeader { padding: 20px 5% 10px 5%;}
    .pageContBottom { padding: 10px 5% 20px 5%; }

    .singleContents { padding: 0;}

    .subNavi { width: 90%; min-width: auto; left: 5%; position: relative; margin-top: 40px;}
    .faq .subPageNav { flex-wrap: wrap; justify-content: center; }
    .faq .subPageNav li { margin: 0.5rem 1rem; flex-grow: 0; }
}



/**********************/
/****** ヘッダー ******/
/**********************/

.siteTitle { /*width: 17%;*/ width: 250px; position: fixed; /*top: 2%; left: 1%;*/ top: 10px; left: 15px; z-index: 5; letter-spacing: 0.35em; text-shadow: 0 0 10px #000,0 0 10px #000; }
.hamburgerMenu .siteTitle { position: static; width: 275px; text-shadow: none;}
.siteTitle img { filter: drop-shadow(0px 0px 5px #000); }
@media only screen and (max-width:768px){
    .siteTitle { width: 200px; text-align: left; position: absolute; top: 0; left: 27%; transform: translateX(-50%); text-shadow: none; letter-spacing: 0.25em;}
    .siteTitle a { display: flex; justify-content: center; align-items: center; }
    .siteTitle a img { width: 100%; max-width: none;}
}


/**********************/
/****** フッター ******/
/**********************/
.footerArea { width: 40%; min-width: 640px; margin-left: 50%; padding: 30px 50px; background: #fff; position: relative; z-index: 11;}

.home .footerArea { margin-left: 50%; }


.footerNav li { padding-right: 1em; }
.footerNav li + li { /*border-left: solid 1px #000;*/ padding-left: 1em;}
.footerNav li:last-child { padding-right: none; }
.footerNav a{ color: #000; font-size: 1.4rem;}
.footerLogArea { justify-content: center; align-items: center;}
.footerLogArea figure { width: 60px;}
.footerLogArea p { margin-left: 20px; font-size: 2.0rem; font-weight: 700; line-height: 1.2;}
.footerLogArea p span { display: block; font-size: 1.5rem; font-weight: 500;}
.footerAddressArea {}
.footerAddress { font-size: 1.4rem; line-height: 1.5; text-align: center; margin-top: 10px;}
.snsArea { gap: 2em; padding:5px 0; }
.snsArea p { height: 30px;}
.snsArea .iconX { height: 25px;}
.copyright { margin-top: 20px; line-height: 1.0;}


@media only screen and (max-width:768px){
    .footerArea { width: 100%; min-width: auto; margin: 0 auto; padding: 30px 7% 100px 3%;}
    .home .footerArea { width: 90%; min-width: auto; margin: 0 auto; }
    .footerLogArea p { font-size: 1.6rem; }
    .footerLogArea p span { font-size: 1.3rem; }
    .footerAddress { font-size: 1.2rem; }

    .footerNav li + li { border-left: none;}
    .footerNav li { line-height:1; }
    .footerNav a{ font-size: 1.2rem;}
    .footerLeft { width: 100%; text-align-last: left; margin-bottom: 30px;}
    .snsArea img { height: 20px; width: auto;}

    .copyright { font-size: 1.0rem; }


}


.category .footerArea { margin-left: 0; width: 100%; }
.category .screenArea { overflow: auto; }
.single .footerArea { margin-left: 0; width: 100%; }
.single .screenArea { overflow: auto; }







/**********************/
/****** TOPページ *****/
/**********************/
.scrollArrow { width: 16px; position: absolute; /*bottom: 30px;*/bottom: 40px; left: 50%; z-index: -1;}

.topReadText { font-size: 1.6rem; line-height: 1.8; letter-spacing: 0.05em;}

.topCareer { padding-top:1rem; border-top: solid 1px #fff; }

.firstViewNewsArea { background: rgba(3, 71, 138, 0.5); position: fixed; width: 50%; bottom: 0px; z-index: 10; margin-top: -202px;}
.firstViewNewsAreaTitle { width: 32%; min-width: 180px; color: #fff; font-size: 1.8rem; font-weight: bold; border: solid 1px #fff; border-left: none; line-height: 2; letter-spacing: 0.1em;}
.firstViewNewsAreaListBtn { font-size: 1.6rem; font-weight: bold; color: #fff; border: solid 1px #fff; margin-left: 2.0rem; display: flex; justify-content: center; align-items: center; padding: 0 4rem; height: 38px; background: rgba(255,255,255,0.3); }
.firstViewNewsAreaListBtn:after { content:none; }
.topNewsList { width: 60%; margin: 0 100px 0 auto; padding: 20px 0;}
.topNewsList li a { display: block; position: relative; }
.newsTitle { font-size: 1.6rem; font-weight: 700; line-height: 2.0;}
.newsList a { color: #000;}
.newsDate { font-size: 1.6rem; line-height: 1.6; font-weight: 500;}
.newsCat { font-size: 1.1rem; line-height: 1.6; font-weight: 500;color: #fff; padding: 2px; line-height: 1; margin-left: 1em;}
.newsCat a { color: #fff; font-size: 1.3rem;}
.newsCat.event { background: #00a24f; }
.newsCat.recruit { background: #00a4bd; }
.newsCat.news { background: #00478e; }


.newsListWhite a { color: #fff;}
.newsList li { border-top: dotted 1px #000; padding: 10px;}
.newsList li:nth-last-of-type(1) { border-bottom: dotted 1px #000;}
.newsListWhite li { border: none; }
.newsListWhite li + li { border-top: dotted 1px #fff; }
.newsListWhite li:nth-last-of-type(1) { border-bottom: none; }


@media only screen and (max-width:768px){
    .firstViewNewsArea { position: fixed; width: 100%; bottom: 0px; z-index: 11; margin-top: -202px;  }
    .topNewsList { width: 96%; padding: 5px 2%; margin: 0 auto; }
    .firstViewNewsAreaTitle { width: 32%; min-width: 180px; color: #fff; font-size: 1.2rem; }
    .firstViewNewsAreaListBtn { font-size: 1.1rem; height: auto; }
    .newsDate { font-size: 1.1rem; line-height: 1.3; font-weight: 500;}
    .newsTitle { font-size: 1.3rem; font-weight: 700; line-height: 1.6; padding:5px;}
    .topNewsList li a:after { content: none; }
    .topNewsList li a { padding-right: 0px; }
    .newsList li { padding: 5px;}
    .newsCat a { font-size: 1.1rem;}

}



.toursArea .bandContents { position: relative; z-index: 1;}
.toursArea .topReadText { margin-top: 54%;}
.toursImg { position: absolute; z-index: 0; top: 39%; left: 23%; width: 85%; transform: translateY(-50%);}
.toursImg img { width: 100%; max-width: none;}

.topMgn65 { margin-top: 65%;}
.topMgn50 { margin-top: 50%;}
.topMgn30 { margin-top: 30%;}
.topMgn20 { margin-top: 20%;}
.topMgn10 { margin-top: 10%;}
.topMgn5 { margin-top: 5%;}

.btmMgn65 { margin-bottom: 65%;}
.btmMgn50 { margin-bottom: 50%;}
.btmMgn30 { margin-bottom: 30%;}
.btmMgn20 { margin-bottom: 20%;}
.btmMgn10 { margin-bottom: 10%;}
.btmMgn5 { margin-bottom: 5%;}
.btmMgn3 { margin-bottom: 3%;}
.btmMgn2 { margin-bottom: 2%;}
.btmMgn1 { margin-bottom: 1%;}

/*「いつどこ」のキャッチコピー*/
.read { position: absolute; left: 25%; transform: translateX(-50%); font-family: "Zen Old Mincho", serif; font-size: 2.5rem; font-weight: 900; letter-spacing: 0.1em; color: #181818;  position: fixed; opacity: 0; transition: 0.5s; width: 425px; height: 100px; bottom: calc(50% + 100px); }
.read span { background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 10%, rgba(255,255,255,1) 90%, rgba(255,255,255,0) 100%); padding: 0 15px 0 25px;}
.read.active { opacity: 1; transition: 0.5s;}
.readVertical { writing-mode: vertical-rl;}

.spTopImg { display: none;}

.frontContArea { position: relative;}

@media only screen and (max-width:768px){
    .screenScroll.fadeIn { z-index: auto;}
    .pageScreenArea.fadeIn { z-index: auto;}
    .read { display: none;}
    
    .toursImg { top: 37%; display: none;}

    .spTopImg { display: block; position: absolute; top: 5%; z-index: 11; width: 82.5%; }
    .spTopImgRight { right: 0;}

    .firstViewArea .spTopImg { /*top: 5%;*/ top: 0; }

    .topMgn65 { margin-top: 20%;}

    .topReadText { font-size: 1.4rem;}
    .topReadTextNargin { font-size: 1.4rem; margin-top: 15px !important;}

    .toursArea .topReadText { margin-top: 20%;}
   
}


/**********************/
/****** 中ページ ****/
/**********************/
/*パンくず*/
.breadcrumbs { position: fixed; /*top: 100px;*/ top: 90px; left: 15px; color: #fff; text-shadow: 0 0 5px #000; padding: 0.3rem 1rem; }
.breadcrumbs a { color: #fff; text-decoration: underline; font-size: 1.3rem; }
.breadcrumbs a:hover { text-decoration: none;}
.breadcrumbs .current-item { color:#fff; font-weight: 600; font-size: 1.3rem; }
@media only screen and (max-width:768px){
    .breadcrumbs { position: static; margin-bottom: 10px; }
}

/*一字左に出す*/
.textOutdent { text-indent: -1em; padding-left: 1em; }

/*見学先一覧テーブル*/
@media only screen and (max-width:768px){
    .tourTable td { padding: 5px;}
    .tourTable td:first-child { border-top: solid 1px #000!important; margin-top: 10px;}
    .tourTable td + td { padding: 5px 0 0 25px; border: none!important;}
}

/*スケジュールのテーブル*/
.scheduleTable table th { font-weight: 700; border-color: #bfbfbf!important;}
.scheduleTable table td { border-color: #bfbfbf!important;}
.scheduleTable3colum table th { border: solid 1px #bfbfbf!important;}
.scheduleTable3colum table thead th { border: none!important;}
.scheduleTable3colum table td { border: solid 1px #bfbfbf!important;}
@media only screen and (max-width:768px){
    .scheduleTable table th { border: none!important; text-align: left; padding: 10px 10px 0 10px;}
    .scheduleTable table td { /*padding-left: 20px; */padding-top: 0;}

    .scheduleTable3colum table th { display: table-cell; width: auto; border: solid 1px #bfbfbf!important;}
    .scheduleTable3colum table td { display: table-cell; width: auto;}
}

.formTitle { width: 30%; font-size: 1.6rem;}
.formInput { width: 65%; }
.formInput input[type="email"] { width: 100%;}
.formInput input[type="text"] { width: 100%;}
.formArea input[type="submit"] { display: block; width: 30%; background: #000; color: #fff; margin: 0 auto;}

.newsCatListArea { position: fixed; top: calc(30% + 90px); left: 5%;}
.newsCatList { display: flex; align-items: center; gap: 10px; margin-top: 10px;}
.newsCatListTitle { font-family: "Zen Old Mincho", serif; font-size: 1.8rem; font-weight: 900; color: #fff; text-shadow: 0 0 10px #000, 0 0 10px #000;}
.newsCatList li { width: 130px; text-align: center;}
.newsCatList a { display: block; /*background: #fff;*/ color: #000; font-weight: 700; padding: 10px;}


@media only screen and (max-width:768px){
    .newsCatList { flex-wrap: wrap; justify-content: center; }
    .newsCatList li { width: 45%; text-align: center;}
    .newsCatList a { font-size: 1.3rem; }

}

.pageNewsContBox { min-height: 70vh;}

/*ページネーション設定*/
.pagenation { width: 100%; margin: 20px auto 0;}
.pagenation .wp-pagenavi{ display: flex; justify-content: center; align-items: center; gap: 15px;}
.pagenation .wp-pagenavi a, .wp-pagenavi span { border: none; background: #fff; border: solid 1px #00478e; font-size: 1.4rem; padding: 10px 5px; font-weight: 700; line-height: 1.4;}
.pagenation .wp-pagenavi a { text-align: center; width: 45px; height: 45px; color: #333; }
.pagenation .wp-pagenavi .previouspostslink, .pagenation .wp-pagenavi .nextpostslink { background: #00478e; color: #fff; line-height: 1.2;}
.wp-pagenavi span.current { width: 45px; height: 45px; text-align: center; background: #00a4bd; color: #FFF; padding: 10px 5px; border: none; }
.wp-pagenavi span.pages { align-self: flex-end; padding: 4px 10px; width: 90px; text-align: center; }
@media only screen and (max-width:768px){
    .wp-pagenavi span.pages { padding: 0.7rem 1rem; width: 100%; }
    .pagenation .wp-pagenavi a, .wp-pagenavi span { font-size: 1.4rem; padding: 0.7rem 1rem; }

    .pagenation .wp-pagenavi{ gap: 15px; flex-wrap: wrap; }
    .pagenation .wp-pagenavi a { text-align: center; width: calc(70%/5); height: 40px; color: #333; }
    .wp-pagenavi span.current { width: calc(70%/5); height: 40px; text-align: center; background: #00a4bd; color: #FFF; padding: 0.7rem 1rem; border: none; }

}



@media only screen and (max-width:768px){
    .newsCatListArea { position: static; margin-bottom: 50px;}

}

/*施設一覧ポップアップ表示内*/
.fancy-ico span { transition: none!important; }/*ポップアップの閉じるボタンアニメーション停止*/
.tourListItem { background: rgba(255, 255, 255, 0.9); /*padding: 8% 50px;*/ padding: 15px 50px;}
.tourListItem .mds001 { margin-bottom: 20px;}
.tourListItem .headlineBlue { font-size: 2.2rem; font-weight: 700; line-height: 1.4; color: #333; margin: 1rem auto 1rem; padding: 0.7rem 0; display: flex; align-items: center; }
.tourListItem .headlineBlue::before { content:''; border-top: solid 1px #03478a; flex-grow: 1; margin-right: 3rem; }
.tourListItem .headlineBlue::after { content:''; border-top: solid 1px #03478a; flex-grow: 1; margin-left: 3rem; }
@media only screen and (max-width:768px){
    .tourListItem .headlineBlue { font-size: 1.6rem; }
}
.tourListItem ol { list-style-type: decimal; margin: 3rem 0 5rem 2rem; }
.tourListItem ol li { margin: 1rem 0; }


.single-tour-list .copyright { margin: 0;}
.fancyFooterArea{ width: 100%; padding: 30px 0; background: #fff; text-align: center; }

@media only screen and (max-width:768px){
    .tourListItem { /*padding: 10% 5%;*/ padding: 5%;}

}


.information .bandArea .byColorItemS { height: 15%!important; max-height: 15%!important; }
.information .newsList { /*padding: 2rem 0;*/ }

.information .footerArea { margin-left: 0; width: 100%; }
.information .screenArea { overflow: auto; }

@media only screen and (max-width:768px){
    .information .footerArea { width: 100%; }
}

/*20240712　東追記*/
.textLinkBlank a { display: block; color: #006E8C; border:none; font-size: 1.6rem; transition: .2s cubic-bezier(0.45, 0, 0.55, 1); }
.textLinkBlank img { width: auto!important; height: 15px!important; margin-left: 0.5rem; border: none; }
.textLinkBlankBlue a { display: block; color: #03478a; border:none; transition: .2s cubic-bezier(0.45, 0, 0.55, 1); }
.textLinkBlankBlue img { width: 20px!important; height: 20px!important; margin-left: 0.5rem; border: none; }
@media only screen and (max-width:768px){
  .textLinkBlank a { font-size: 1.4rem; text-align: left; }
  .textLinkBlank img { width: auto!important; height: 10px!important; }
}

/*20240722　東追記*/
@media only screen and (max-width:768px){
.spsizechange { font-size: 1.4rem; }
}

.newsCatList .cat-item-1 a { background: #fff; }
.newsCatList .cat-item-2 a { background: #00a24f; color: #fff;}
.newsCatList .cat-item-3 a { background: #00478e; color: #fff; }
.newsCatList .cat-item-4 a { background: #00a4bd; color: #fff;}


.postid-330 h1.mds001 { display: none; }
.postid-335 h1.mds001 { display: none; }
.postid-334 h1.mds001 { display: none; }
.postid-329 h1.mds001 { display: none; }
.postid-319 h1.mds001 { display: none; }
.postid-333 h1.mds001 { display: none; }
.postid-326 h1.mds001 { display: none; }
.postid-331 h1.mds001 { display: none; }
.postid-328 h1.mds001 { display: none; }
.postid-332 h1.mds001 { display: none; }
.postid-337 h1.mds001 { display: none; }
.postid-327 h1.mds001 { display: none; }
.postid-336 h1.mds001 { display: none; }
.postid-336 .tourListItem .mds001 {margin-bottom: 5px!important;}
.postid-338 h1.mds001 { display: none; }

#menu-item-74 a{ padding:10px 0 ; }

/*LINE BANNER 初校時*/
.LinegBanner { position: fixed; z-index:1000; right: 10%; top: 10%; width: 300px; height: auto; }
.LinegBanner a { width: 100%; height: 100%; display: flex; justify-content: space-between; align-items: center; /*border: solid 3px #04cf15;*/ border-radius: 50px; background: #04cf15; padding: 10px 15px; }
.LinegBanner a div { padding: 0 15px 0 0; }
.LinegBanner a span:nth-of-type(1) { display: block; font-size: 12px; font-weight: 600; color: #fff; padding: 0; }
.LinegBanner a span:nth-of-type(2) { display: block; font-size: 16px; font-weight: 900; color: #fff; }
.LinegBanner a img { height: 40px; width: auto;  }
.LinegBanner a .sp { display: none; }

/* 0.5フェードイン */
.fadeIn500ms {
    animation-name: fadeIn500ms;
    animation-delay: 500ms;
    animation-duration: 1.5s;
    animation-fill-mode: forwards;
    transform: translateY(50px);
    opacity: 0;
}
@keyframes fadeIn500ms {
    0% {
    }
    100% {
        transform: translateY(0);
        opacity: 1;
    }
}

@media only screen and (max-width: 780px){
    .LinegBanner { position: fixed; z-index:100; left: 3%; bottom: 10px; width: 300px; height: auto; }
    .LinegBanner a div { padding: 0 10px 0 0; }
    .LinegBanner a .sp { display: block; }
    .LinegBanner a .pc { display: none; }
    .LinegBanner a img { height: auto; width: 50%;  }
    .LinegBanner a span:nth-of-type(1) { font-size: 9px; padding: 0 0 5px; }
    .LinegBanner a span:nth-of-type(2) { font-size: 11px; font-weight: 800; }

}

.lineAdv { background: #fcfff9; padding: 2rem 0; }
.lineAdv a { width: 1000px; margin: 0 auto; padding: 2rem; background: #fff; display: flex; justify-content: space-between; border: solid 10px #04cf15; border-radius: 20px; }
.lineAdv a img { height: auto; width: 150px; background: #fff;  }
.lineAdv a div span:nth-of-type(1) { font-size: 2.0rem; font-weight: 700; color: #04cf15; display: block; margin-bottom: 0.7rem; }
.lineAdv a div span:nth-of-type(2) { font-size: 3.0rem; font-weight: 700; color: #04cf15; display: block; margin-bottom: 1rem; }
.lineAdv a div span:nth-of-type(3) { font-size:2.0rem; font-weight: 700; color: #666; }
@media only screen and (max-width: 780px){
    .lineAdv a { width: 90%; display: block; }
    .lineAdv a img { margin: 1rem auto; display: block;  }
    .lineAdv a div span:nth-of-type(1) { font-size: 1.6rem; text-align: center; }
    .lineAdv a div span:nth-of-type(2) { font-size: 1.6rem; text-align: center; }
    .lineAdv a div span:nth-of-type(3) { font-size:1.4rem; text-align: center; }
}



