@charset "utf-8";

/*========================

top.css

========================*/

#container {
align-items:start;
display:flex;
flex-wrap: wrap;
justify-content:start;
overflow:hidden;
}

/*---------------------------------------------
left_nav
---------------------------------------------*/
#left_nav {
position:fixed;
}

#left_nav #left_nav_menu #left_nav_conversion #left_nav_conversion_bottom .bigginers {
display:none;
}

#main {
align-content:start;
display:flex;
flex-direction:column;
width:calc(100% - 290px);
position: relative;
}

#main #main_cont {
align-items:start;
display:flex;
flex:1;
flex-wrap:wrap;
margin-left: auto;
padding:0 30px 0 0;
row-gap:20px;
/*max-width: 1480px;*/
width:calc(100vw - 325px);
}

#main #main_left {
display:flex;
flex-direction:column;
flex:1;
overflow: hidden;
row-gap:30px;
padding: 0 20px 0 0;
}

#main #main_cont #main_right {
display:flex;
flex-direction:column;
flex-basis:300px;
padding-top:40px;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#main #main_cont #main_right.lazyloaded {
opacity:1;
}

#main #main_middle {
display:flex;
flex-direction:column;
row-gap:40px;
margin:0 0 0 auto;
padding: 0 30px 80px 0;
width:calc(100vw - 325px);
}

#main #main_bottom {
display:flex;
flex-direction:column;
padding:0 30px 30px;
position:relative;
}

#main .section {
flex:1;
}

/*---------------------------------------------
main_visual
---------------------------------------------*/
#main_visual {
width:calc(100% - 310px);
margin-left: 30px;
margin-left:auto;
height:700px;
}

#main_visual > ol {
border-radius:0 0 0 100px;
height:700px;
overflow:hidden;
z-index:1;
}

#main_visual > ol li.slick-slide {
align-items:center;
border-radius:0 0 0 100px;
/*display:flex;*/
justify-content:center;
height:700px;
margin: 0;
overflow:hidden;
}

/*--- short ---*/

#main_visual ol li.short a {
display: flex;
width: 100%;
align-items: center;
justify-content: center;
height: 700px;
overflow: hidden;
position:relative;
}

#main_visual ol li.short a .short_cont {
background-color:var(--yellow);
background-image:url(../img/top/t_early_course.webp);
background-size:180% auto;
background-repeat:no-repeat;
background-position:center center;
height: 700px;
width: 100%;
display: flex;
justify-content: center;
align-items: center;
opacity:0;
-webkit-transition:opacity 3s;
transition:opacity 3s;
z-index:2;
}

#main_visual ol li.short a .short_cont.lazyloaded {
opacity:1;
}

#main_visual ol li.short a .short_cont .title {
width:50%;
height:100%;
display:flex;
align-items:center;
justify-content:center;
flex-direction:column;
padding:50px 0 0;
position: relative;
z-index:2;
}

#main_visual ol li.short a .short_cont .title .pic {
max-width:450px;
width:calc(100vw / 2 - 15vw);
margin-right:-50px;
position:relative;
}

#main_visual ol li.short a .short_cont .title .pic img {
height:auto;
width:100%;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#main_visual ol li.short a .short_cont .title .pic img.lazyloaded {
opacity:1;
}

#main_visual ol li.short a .short_cont .title .pic .symbol {
align-items:center;
background-color:var(--orange);
border-radius:50px;
display:flex;
justify-content:center;
position:absolute;
right:50px;
bottom:10px;
height:100px;
width:100px;
}

#main_visual ol li.short a .short_cont .title .pic .symbol span {
color:var(--white);
display:block;
font-size: calc(1.0rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
text-align:center;
line-height:1.3;
}

#main_visual ol li.short a .short_cont .title .plan_info {
align-items:center;
column-gap:10px;
display:flex;
flex-wrap:wrap;
justify-content:center;
padding-top:10px;
row-gap:10px;
opacity:0;
-webkit-transition:opacity 3s;
transition:opacity 3s;
}

#main_visual ol li.short a .short_cont .title .plan_info.lazyloaded {
opacity:1;
}

#main_visual ol li.short a .short_cont .title .plan_info h2 {
font-size: calc(1.5rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
}

#main_visual ol li.short a .short_cont .title .plan_info dl {
display:flex;
}

#main_visual ol li.short a .short_cont .title .plan_info dl dt {
background-color:var(--blue);
color:var(--white);
font-size: calc(1.4rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
line-height:1;
padding:10px;
}

#main_visual ol li.short a .short_cont .title .plan_info dl dd {
align-items:center;
background-color:var(--white);
color:var(--blue);
display:flex;
font-size: calc(1.4rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
line-height:1;
padding:5px;
}

#main_visual ol li.short a .short_cont .title .plan_info p {
font-size: calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
margin-top:5px;
text-align:center;
width:100%;
}

#main_visual ol li.short a .short_cont .contents {
background-size:28vw auto;
background-repeat:no-repeat;
background-position:65% 75%;
width:50%;
padding:50px 0 0;
position:relative;
height:100%;
display:flex;
align-items:center;
justify-content:center;
position: relative;
z-index:2;
}

#main_visual ol li.short a .short_cont .contents h3 {
aspect-ratio: 225 / 161;
position:absolute;
left:0;
top:calc(50% + 0vw);
margin-top:-5vw;
margin-left:-3vw;
height: 13vw;
width:auto;
max-width:320px;
z-index:3;
}

#main_visual ol li.short a .short_cont .contents h3 img {
height:100%;
width:100%;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#main_visual ol li.short a .short_cont .contents h3 img.lazyloaded {
opacity:1;
}

#main_visual ol li.short a .short_cont .contents figure {}
#main_visual ol li.short a .short_cont .contents figure img {
position:absolute;
bottom:0;
right:5vw;
height:40vw;
max-height:540px;
width:auto;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#main_visual ol li.short a .short_cont .contents figure img.lazyloaded {
opacity:1;
}

/*--- bg ---*/
.circles {
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
overflow:hidden;
z-index:1;
}

.circles li {
position:absolute;
display:block;
list-style:none;
width:20px;
height:20px;
background:rgba(255, 255, 255, 0.3);
animation:bg_move_circles 25s linear infinite;
left:-300px;
}

.circles li:nth-child(1) {
top: 25%;
width: 80px;
height: 80px;
animation-delay: 0s;
}

.circles li:nth-child(2) {
top:5%;
width:40px;
height:40px;
animation-delay:2s;
animation-duration:12s;
}

.circles li:nth-child(3) {
top:55%;
width:20px;
height:20px;
animation-delay:4s;
}

.circles li:nth-child(4) {
top:85%;
width:60px;
height:60px;
animation-delay:0s;
animation-duration:18s;
}

.circles li:nth-child(5) {
top:50%;
width:20px;
height:20px;
animation-delay:0s;
}

.circles li:nth-child(6) {
top:60%;
width:110px;
height:110px;
animation-delay:3s;
}

.circles li:nth-child(7) {
top:20%;
width:150px;
height:150px;
animation-delay:7s;
}

.circles li:nth-child(8) {
top:35%;
width:50px;
height:50px;
animation-delay:15s;
animation-duration:45s;
}

.circles li:nth-child(9) {
top:75%;
width:30px;
height:30px;
animation-delay:2s;
animation-duration:35s;
}

.circles li:nth-child(10) {
top:10%;
width:125px;
height:125px;
animation-delay:0s;
animation-duration:11s;
}

@keyframes bg_move_circles {
0%{
transform:translateX(0) rotate(0deg);
opacity:1;
border-radius:0;
}
100%{
transform:translateX(1000px) rotate(720deg);
opacity:0;
border-radius:50%;
}
}

/*--- gallery ---*/
#main_visual ol li.gallery {
background-color:var(--blue);
}

#main_visual ol li.gallery .gallery_cont {
display:flex;
height:100%;
justify-content:flex-end;
padding:0 30px 0 0;
position:relative;
width:100%;
}

#main_visual ol li.gallery .gallery_cont .title {
align-items:center;
display:flex;
flex:0 0 40%;
justify-content:center;
height:100%;
position:absolute;
top:0;
right:auto;
bottom:0;
left:80px;
margin:auto;
width:23vw;
}

#main_visual ol li.gallery .gallery_cont .title h2 {
align-items: center;
align-content: center;
display: flex;
flex-wrap:wrap;
justify-content:center;
padding-top:50px;
z-index:2;
}

#main_visual ol li.gallery .gallery_cont .title h2 img {
height:auto;
width:100%;
}

#main_visual ol li.gallery .gallery_cont .title .txt {
color:var(--white);
flex-shrink:0;
font-size: calc(0.9rem + ((1vw - 0.48rem) * 0.6944));
margin-top:30px;
line-height:1.8;
text-align:left;
width:100%;
}

#main_visual ol li.gallery .gallery_cont .photo_wrap {
column-gap:15px;
display:flex;
flex: 0 1 60%;
height: 700px;
overflow:hidden;
}

#main_visual ol li.gallery .gallery_cont .photo_wrap .photo {
display:flex;
height:700px;
flex-wrap:wrap;
opacity:0;
row-gap:15px;
width:20vw;
-webkit-transition:opacity 3s;
transition: opacity 3s;
animation: loop-slideY2 60s infinite linear 1s both;
-webkit-animation: loop-slideY2 60s infinite linear 1s both;
}

#main_visual ol li.gallery .gallery_cont .photo_wrap .photo.lazyloaded {
opacity:1;
} 

#main_visual ol li.gallery .gallery_cont .photo_wrap .photo img {
border-radius:10px;
height:100%;
object-fit:cover;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
width:100%;
}

#main_visual ol li.gallery .gallery_cont .photo_wrap .photo img.lazyloaded {
opacity:1;
}

#main_visual ol li.gallery .gallery_cont .photo_wrap .photo .photo_left1 {
height:30%;
}

#main_visual ol li.gallery .gallery_cont .photo_wrap .photo .photo_left2 {
height:50%;
}

#main_visual ol li.gallery .gallery_cont .photo_wrap .photo .photo_left3 {
height:30%;
} 

#main_visual ol li.gallery .gallery_cont .photo_wrap .photo .photo_center1 {
height:40%;
}

#main_visual ol li.gallery .gallery_cont .photo_wrap .photo .photo_center2 {
height:40%;
}

#main_visual ol li.gallery .gallery_cont .photo_wrap .photo .photo_center3 {
height:40%;
}

#main_visual ol li.gallery .gallery_cont .photo_wrap .photo .photo_right1 {
height:30%;
}

#main_visual ol li.gallery .gallery_cont .photo_wrap .photo .photo_right2 {
height:40%;
}

#main_visual ol li.gallery .gallery_cont .photo_wrap .photo .photo_right3 {
height:40%;
}

/*--- campaign ---*/

#main_visual ol li.campaign {
background-image:url(../img/top/bg_campaign.jpg);
background-size:cover;
background-repeat:no-repeat;
}

#main_visual ol li.campaign a {
width:100%;
}

#main_visual ol li.campaign a .campaign_cont {
align-items: start;
height:700px;
display:flex;
flex-direction:column;
justify-content: center;
position: relative;
width: 100%;
z-index:2;
overflow:hidden;
}

#main_visual ol li.campaign a .campaign_cont > figure {}
#main_visual ol li.campaign a .campaign_cont > figure img {
aspect-ratio: 354 / 545;
position:absolute;
bottom:-10vw;
left:-5vw;
height:50vw;
max-height:700px;
width:auto;
}

#main_visual ol li.campaign a .campaign_cont .box_wrap {
align-items:center;
display:flex;
justify-content:center;
height:700px;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
overflow:hidden;
position:absolute;
width:100%;
z-index:3;
z-index:2;
}

#main_visual ol li.campaign a .campaign_cont .box_wrap.lazyloaded {
opacity:1;
}

#main_visual ol li.campaign a .campaign_cont .box {
background-color:var(--white);
border-radius:20px;
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);
display:flex;
flex-direction:column;
position:absolute;
row-gap:15px;
top:auto;
/*right:60px;*/
right:auto;
bottom:auto;
left:calc(100vw / 2 - 25vw);
margin:0 auto -80px auto;
flex:0 1 300px;
width:calc(100vw / 2 - 50px);
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
display:flex;
padding:0;
max-width:45vw;
}

#main_visual ol li.campaign a .campaign_cont .box.lazyloaded {
opacity:1;
} 

#main_visual ol li.campaign a .campaign_cont .box h3 {
color:var(--campaign_red);
font-size: calc(3.8rem + ((1vw - 0.48rem) * 0.6944));
font-weight:700;
line-height:1.2;
padding:35px 50px 0;
width:100%;
}

#main_visual ol li.campaign a .campaign_cont .box .contents {
display:flex;
flex-direction:column;
justify-content:space-between;
padding:0 0 30px 50px;
}

#main_visual ol li.campaign a .campaign_cont .box .contents ul {
display:flex;
flex-direction:column;
row-gap:20px;
}

#main_visual ol li.campaign a .campaign_cont .box .contents ul li {
}

#main_visual ol li.campaign a .campaign_cont .box .contents ul li img {
max-width:55%;
}

#main_visual ol li.campaign a .campaign_cont .box .contents .pic {
position:absolute;
/*border:3px solid var(--white);*/
/*box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);*/
border-radius:4vw;
height:7vw;
width:7vw;
z-index:2;
}

#main_visual ol li.campaign a .campaign_cont .box .contents .pic.a {
right:10vw;
top:13vw;
}

#main_visual ol li.campaign a .campaign_cont .box .contents .pic.b {
right:5vw;
top:7vw;
}

#main_visual ol li.campaign a .campaign_cont .box .contents > figure {
border-radius:0 0 20px 0;
position:absolute;
overflow:hidden;
right:0;
bottom:0;
max-height:320px;
width: 175px;
z-index:3;
aspect-ratio: 35 / 64;
}

#main_visual ol li.campaign a .campaign_cont .box .contents > figure img {
bottom:-3vw;
height:100%;
right:-0.5vw;
width:auto;
position: relative;
}

#main_visual ol li.campaign a .campaign_cont .box .contents > p {
font-size: calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
padding-top:10px;
}

/*--- online ---*/
#main_visual ol li.online_gakka {
position:relative;
}

#main_visual ol li.online_gakka a {
width:100%;
}

#main_visual ol li.online_gakka a .online_cont {
}

#main_visual ol li.online_gakka a .online_cont .box_wrap {
align-items:center;
display:flex;
justify-content:center;
height:700px;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
overflow:hidden;
position:absolute;
width:100%;
z-index:2;
}

#main_visual ol li.online_gakka a .online_cont .box_wrap.lazyloaded {
opacity:1;
}

#main_visual ol li.online_gakka a .online_cont .box_wrap .box {
background-color:var(--white);
border-radius:20px;
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);
display:flex;
flex-direction:column;
position:absolute;
top:auto;
right:auto;
bottom:auto;
left:auto;
margin:0 auto -80px auto;
padding:50px 20px 40px;
flex:0 1 300px;
max-width:480px;
width:calc(100vw /2 - 50px);
padding:0;
row-gap:0;
z-index:2;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#main_visual ol li.online_gakka a .online_cont .box_wrap .box.lazyloaded {
opacity:1;
}

#main_visual ol li.online_gakka a .online_cont .box_wrap .box:before {
border-radius:20px 20px 0 0;
content:" ";
position:absolute;
top:0;
left:0;
height:50%;
width:100%;
}

#main_visual ol li.online_gakka a .online_cont .box_wrap .jitaku_info {
position:absolute;
top:125px;
right:23%;
height:160px;
width:160px;
z-index:3;
}

#main_visual ol li.online_gakka a .online_cont .box_wrap .box .icon {
position:absolute;
height:60px;
width:60px;
z-index:2;
}

#main_visual ol li.online_gakka.animation_on a .online_cont .box_wrap .box .icon {
animation: icon_rotate-anim 5.8s ease infinite both;
}

@keyframes icon_rotate-anim {
    0%, 20% {
        transform:rotate(0deg)
    }

    22% {
        transform:rotate(-5deg)
    }
    24% {
        transform:rotate(0deg)
    }
    26% {
        transform:rotate(-5deg)
    }
    28% {
        transform:rotate(0deg)
    }
    30% {
        transform: rotate(-5deg)
    }
    32%, 100% {
        transform:rotate(0deg)
    }
}

#main_visual ol li.online_gakka a .online_cont .box_wrap .box .icon img {
height:60px;
width:60px;
}

#main_visual ol li.online_gakka a .online_cont .box_wrap .box .icon.a {
animation-delay: 2s;
left:20px;
top:90px;
height:54px;
width:54px;
}

#main_visual ol li.online_gakka a .online_cont .box_wrap .box .icon.b {
animation-delay: 1s;
left:15px;
top:15px;
height:48px;
width:48px;
}

#main_visual ol li.online_gakka a .online_cont .box_wrap .box .icon.c {
animation-delay: 2s;
left:-10px;
top:155px;
}

#main_visual ol li.online_gakka a .online_cont .box_wrap .box .icon.d {
animation-delay: 1s;
right:20px;
top:90px;
height:48px;
width:48px;
}

#main_visual ol li.online_gakka a .online_cont .box_wrap .box .icon.e {
animation-delay: 2s;
right:10px;
top:155px;
}

#main_visual ol li.online_gakka a .online_cont .title {
align-items:start;
/*background-image:url(../img/top/p_board.jpg);*/
background-size:cover;
background-repeat:no-repeat;
border-radius:20px 20px 0 0;
display:flex;
/*flex:0 0 40%;*/
/*justify-content:start;*/
height:100%;
min-height:200px;
padding:40px 60px 0px;
position:relative;
}

#main_visual ol li.online_gakka a .online_cont .title h2 {
align-items: flex-end;
display:flex;
padding:0 30px;
position:relative;
justify-content:space-between;
width:100%;
}

#main_visual ol li.online_gakka a .online_cont .title h2 span {
font-size: calc(0.7rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
line-height:1.4;
margin-left:-50px;
padding-bottom:5px;
}

#main_visual ol li.online_gakka a .online_cont .photo {
display: grid;
flex: 1 1 70%;
height: 700px;
}

#main_visual ol li.online_gakka a .online_cont .photo img {
object-fit:cover;
height:700px;
width:100%;
}

#main_visual ol li.online_gakka a .online_cont p.txt {
padding:25px 15px 25px;
text-align:center;
}

#main_visual ol li.online_gakka a .online_cont p.txt span {
/*color:var(--white);*/
font-size: calc(0.8rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
line-height:1.4;
}

#main_visual ol li.online_gakka a .online_cont ul {
column-gap:15px;
display:flex;
justify-content:space-between;
padding:10px 30px 0 30px;
display:none;
}

#main_visual ol li.online_gakka a .online_cont ul li {
display:flex;
flex-direction:column;
width:calc(100% /  2 - 10px);
}

#main_visual ol li.online_gakka a .online_cont ul li dl {
align-items:center;
display:flex;
flex-direction:column;
height:100%;
justify-content:center;
padding:0;
position:relative;
}

#main_visual ol li.online_gakka a .online_cont ul li dl dt {
align-items:center;
/*background-color:var(--deep_green);*/
background-color:var(--middle_orange);
border-radius:6px;
color:var(--white);
display:flex;
font-size: calc(0.3rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
justify-content:center;
line-height:1.4;
padding:8px 10px;
position:relative;
text-align:center;
width:86%;
}

#main_visual ol li.online_gakka a .online_cont ul li dl dt:after {
content:" ";
width: 0;
height: 0;
border-style: solid;
border-right: 6px solid transparent;
border-left: 6px solid transparent;
border-top: 10px solid var(--middle_orange);
border-bottom: 0;
left:50%;
bottom:-8px;
margin-left:-5px;
position:absolute;
}

#main_visual ol li.online_gakka a .online_cont ul li dl dt span {
display: -webkit-box;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp:2;
overflow:hidden;
text-align:left;
}

#main_visual ol li.online_gakka a .online_cont ul li dl dd {
align-items:start;
/*background-color:var(--light_green);*/
background-color:var(--light_orange);
border-radius:6px;
display:flex;
flex-grow:1;
flex-direction:column;
font-size: calc(0.4rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
justify-content:start;
line-height:1.4;
margin-top:-5px;
padding:15px 15px 10px;
width:100%;
}

#main_visual ol li.online_gakka a .online_cont ul li dl dd span {
font-size: calc(0.4rem + ((1vw - 0.48rem) * 0.6944));
text-align:left;
}

#main_visual ol li.online_gakka a .online_cont .box p.note {
/*color:var(--white);*/
font-size: calc(0.3rem + ((1vw - 0.48rem) * 0.6944));
padding:10px 30px 15px;
display:none;
}

#main_visual ol li.online_gakka a .half {
flex-direction:column;
display:flex;
flex-wrap:wrap;
position:relative;
}

#main_visual ol li.online_gakka a .half img {
opacity:0;
-webkit-transition:opacity 3s;
transition:opacity 3s;
}

#main_visual ol li.online_gakka a .half img:first-child {
top:0;
height:350px;
left:0;
width:40%;
object-fit: cover;
}

#main_visual ol li.online_gakka a .half img:nth-child(2) {
bottom:0;
height:350px;
left:0;
width:40%;
object-fit: cover;
}

#main_visual ol li.online_gakka a .half img:nth-child(3) {
right:0;
width:60%;
position:absolute;
height:700px;
z-index:1;
object-fit: cover;
}

#main_visual ol li.online_gakka a .half img.lazyloaded {
opacity:1;
}

/*--- facility ---*/

#main_visual ol li.facility {
background-size:cover;
background-repeat:no-repeat;
position:relative;
}

#main_visual ol li.facility .bg {
opacity:0;
-webkit-transition:opacity 3s;
transition:opacity 3s;
position:absolute;
height:700px;
width:100%;
z-index:1;
}

#main_visual ol li.facility .bg.lazyloaded {
opacity:1;
}

#main_visual ol li.facility .bg img {
animation: change-img-anim2 15s infinite ease-in-out; 
opacity: 0;
object-fit:cover;
object-position:center center;
position:absolute;
opacity: 0;
object-fit:cover;
object-position:center center;
position:absolute;
width:100%;
height:100%;
}

#main_visual ol li.facility .bg img.lazyloaded {
}

#main_visual ol li.facility .bg img:first-child {
animation-delay: 0s;
}

#main_visual ol li.facility .bg img:nth-child(2) {
animation-delay: 5s;
}

#main_visual ol li.facility .bg img:nth-child(3) {
animation-delay: 10s;
}

@keyframes change-img-anim2 { 
0%{ opacity:0; }
5%{ opacity:1; }
27%{ opacity:1; }
30%{ opacity:0; }
100%{ opacity:0; } 
}

#main_visual ol li.facility a {
display: flex;
width: 100%;
align-items: center;
justify-content: center;
height: 700px;
overflow: hidden;
width:100%;
}

#main_visual ol li.facility a .facility_cont {
align-items: start;/*--- facility ---*/

#main_visual ol li.facility {
/*background-image:url(../img/top/bg_facility.jpg);*/
/*background-image:url(../img/top/mainvisual_facility05.jpg);*/
background-size:cover;
background-repeat:no-repeat;
position:relative;
}

#main_visual ol li.facility .bg {
opacity:0;
-webkit-transition:opacity 3s;
transition:opacity 3s;
position:absolute;
height:700px;
width:100%;
z-index:1;
}

#main_visual ol li.facility .bg.lazyloaded {
opacity:1;
}

#main_visual ol li.facility .bg img {
animation: change-img-anim2 15s infinite ease-in-out; 
opacity: 0;
object-fit:cover;
object-position:center center;
position:absolute;
opacity: 0;
object-fit:cover;
object-position:center center;
position:absolute;
width:100%;
}

#main_visual ol li.facility .bg img.lazyloaded {
}

#main_visual ol li.facility .bg img:first-child {
animation-delay: 0s;
}

#main_visual ol li.facility .bg img:nth-child(2) {
animation-delay: 5s;
}

#main_visual ol li.facility .bg img:nth-child(3) {
animation-delay: 10s;
}

@keyframes change-img-anim2 { 
0%{ opacity:0; }
5%{ opacity:1; }
27%{ opacity:1; }
30%{ opacity:0; }
100%{ opacity:0; } 
}

#main_visual ol li.facility a {
display: flex;
width: 100%;
align-items: center;
justify-content: center;
height: 700px;
overflow: hidden;
width:100%;
}

#main_visual ol li.facility a .facility_cont {
align-items: start;
height: 700px;
display: flex;
flex-direction:column;
justify-content: center;
position: relative;
width: 100%;
z-index:2;
}

#main_visual ol li.facility a .facility_cont .title_area {
padding-left:calc(5vw + 50px);
}

#main_visual ol li.facility a .facility_cont .title_area .title {
padding-top:50px;
position:relative;
z-index:1;
}

#main_visual ol li.facility a .facility_cont .title_area .title h4 {
max-width:35vw;
min-width:300px;
}

#main_visual ol li.facility a .facility_cont .title_area .title h4 img {
height:auto;
width:100%;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#main_visual ol li.facility a .facility_cont .title_area .title h4 img.lazyloaded {
opacity:1;
}

#main_visual ol li.facility a .half {
flex-wrap:wrap;
position:absolute;
height:700px;
width:100%;
z-index:1;
left:0;
top:0;
}

#main_visual ol li.facility a .half img {
width:50%;
height:350px;
object-fit:cover;
}

#main_visual ol li.facility a .facility_cont figure {
}

#main_visual ol li.facility a .facility_cont figure img {
position:absolute;
bottom:-5vw;
right:-4vw;
height:65vw;
max-height:650px;
width:auto;
}
height: 700px;
display: flex;
flex-direction:column;
justify-content: center;
position: relative;
width: 100%;
z-index:2;
}

#main_visual ol li.facility a .facility_cont .title_area {
padding-left:50px;
}

#main_visual ol li.facility a .facility_cont .title_area .title {
padding-top:50px;
position:relative;
z-index:1;
}

#main_visual ol li.facility a .facility_cont .title_area .title h4 {
max-width:35vw;
min-width:300px;
}

#main_visual ol li.facility a .facility_cont .title_area .title h4 img {
height:auto;
width:100%;
}

#main_visual ol li.facility a .half {
flex-wrap:wrap;
position:absolute;
height:700px;
width:100%;
z-index:1;
left:0;
top:0;
}

#main_visual ol li.facility a .half img {
width:50%;
height:350px;
object-fit:cover;
}

#main_visual ol li.facility a .facility_cont figure {
}

#main_visual ol li.facility a .facility_cont figure img {
position:absolute;
bottom:-5vw;
right:-4vw;
height:65vw;
max-height:650px;
width:auto;
}

/*--- golf ---*/
#main_visual ol li.golf {
background-image:url(../img/top/bg_golf.webp);
background-size:cover;
background-repeat:no-repeat;
}

#main_visual ol li.golf a {
display: flex;
width: 100%;
align-items: center;
justify-content: center;
height: 700px;
overflow: hidden;
width:100%;
}

#main_visual ol li.golf a .golf_cont {
height: 700px;
width: 100%;
display: flex;
flex-direction:column;
justify-content: center;
align-items: center;
position: relative;
z-index:2;
}

#main_visual ol li.golf a .golf_cont .pic img {
position:absolute;
bottom:0;
left:0;
height:70vw;
max-height:700px;
width:auto;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#main_visual ol li.golf a .golf_cont .pic img.lazyloaded {
opacity:1;
}

#main_visual ol li.golf a .golf_cont figure {
bottom: -10vw;
left: 0;
position: absolute;
width:38vw;
max-width:300px;
aspect-ratio: 81 / 175;
}

#main_visual ol li.golf a .golf_cont figure img {
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#main_visual ol li.golf a .golf_cont figure img.lazyloaded {
opacity:1;
}

#main_visual ol li.golf a .golf_cont .title_area {
margin-bottom:-80px;
}

#main_visual ol li.golf a .golf_cont .title_area .title {
position:relative;
max-width:500px;
width:50vw;
}

#main_visual ol li.golf a .golf_cont .title_area .title:after {
content:" ";
position:absolute;
right:-4.5vw;
bottom:-4vw;
background-image:url(../img/top/i_golf.png);
background-size:cover;
background-repeat:no-repeat;
width:10vw;
height:10vw;
z-index:1;
}

#main_visual ol li.golf a .golf_cont .title_area .title span {
background-color:var(--golf);
color:var(--white);
font-size: calc(1.0rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
padding:10px;
position:absolute;
top:-55px;
left:10px;
z-index:2;
}

#main_visual ol li.golf a .golf_cont .title_area .title h4 {
padding:0;
}

#main_visual ol li.golf a .golf_cont .title_area .title h4 img {
position:relative;
width:100%;
z-index:2;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#main_visual ol li.golf a .golf_cont .title_area .title h4 img.lazyloaded {
opacity:1;
}

#main_visual ol li.golf a .golf_cont .title_area .title img.free {
position:absolute;
top:-3px;
right:50px;
z-index:2;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#main_visual ol li.golf a .golf_cont .title_area .title img.lazyloaded {
opacity:1;
}

#main_visual ol li.golf a .golf_cont .lead {
padding-top:30px;
padding-left:10px;
position:relative;
z-index:2;
}

#main_visual ol li.golf a .golf_cont .lead span {
color:var(--white);
font-weight:600;
font-size: calc(0.9rem + ((1vw - 0.48rem) * 0.6944));
}

#main_visual ol li.golf a .golf_cont .pic {
position:absolute;
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);
border-radius:5vw;
height:10vw;
width:10vw;
}

#main_visual ol li.golf a .golf_cont .pic.a {
right:13vw;
top:9vw;
}

#main_visual ol li.golf a .golf_cont .pic.b {
right:7vw;
top:21vw;
}

#main_visual ol li.golf a .golf_cont .pic img {
border-radius:5vw;
border:8px solid var(--white);
height:10vw;
width:10vw;
}

/*--- new_motor ---*/
.new_motor {
height:100%;
position:relative;
width:100%;
}

.new_motor .new_motor_cont {
background-image:url(../img/top/bg_new_motor.webp);
background-position:center top;
background-size:cover;
background-repeat:no-repeat;
height:100%;
position:relative;
width:100%;
}

.new_motor .new_motor_cont .pic {
align-content: center;
align-items: center;
justify-content: flex-end;
height:100%;
position:relative;
width:100%;
}

.new_motor .new_motor_cont .pic.pc img {
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

.new_motor .new_motor_cont .pic.pc img.lazyloaded {
opacity:1;
}

.new_motor .new_motor_cont .pic.pc img:first-child {
position:absolute;
height:auto;
width:90%;
aspect-ratio: 61 / 16;
z-index:2;
left:6vw;
top:calc(2vw + 100px);
min-width:300px;
max-width:520px;
}

.new_motor .new_motor_cont .pic.pc img:nth-child(2) {
position:absolute;
height:auto;
width:auto;
aspect-ratio: 95 / 53;
z-index:1;
right:20px;
bottom:0;
min-width:60vw;
max-width:95vw;
}

/*--- new_year ---*/
#main_visual ol li.new_year {
height:100%;
position:relative;
width:100%;
}

#main_visual ol li.new_year a {
display:block;
height:100%;
position:relative;
width:100%;
}

#main_visual ol li.new_year a:before {
background-image:url(../img/top/bg_newyear_left.webp);
background-position:center center;
background-size:239px 164px;
background-repeat:no-repeat;
content:" ";
position:absolute;
left:-10px;
bottom:-60px;
height:164px;
width:239px;
z-index:1;
}

#main_visual ol li.new_year a:after {
background-image:url(../img/top/bg_newyear_right.webp);
background-position:center center;
background-size:341px 165px;
background-repeat:no-repeat;
content:" ";
position:absolute;
right:-60px;
bottom:-40px;
height:165px;
width:341px;
z-index:1;
}

#main_visual ol li.new_year a .new_year_cont {
align-items:center;
background-image:url(../img/top/bg_newyear.webp);
background-position:center top;
background-size:cover;
background-repeat:no-repeat;
display:flex;
justify-content:center;
height:100%;
position:relative;
width:100%;
}

#main_visual ol li.new_year a .new_year_cont:before {
background-image:url(../img/top/bg_newyear_left.webp);
background-position:center center;
background-size:239px 164px;
background-repeat:no-repeat;
content:" ";
position:absolute;
left:0;
top:-5px;
height:164px;
width:239px;
z-index:1;
}

#main_visual ol li.new_year a .new_year_cont:after {
background-image:url(../img/top/bg_newyear_right.webp);
background-position:center center;
background-size:341px 165px;
background-repeat:no-repeat;
content:" ";
position:absolute;
right:0;
top:10px;
height:165px;
width:341px;
z-index:1;
}

#main_visual ol li.new_year a .new_year_cont .pic {
display:flex;
aspect-ratio: 92 / 39;
justify-content: center;
position:absolute;
top:50px;
right:0;
bottom:0;
left:-15px;
margin:auto;
width:100%;
max-width:1080px;
z-index:2;
}

#main_visual ol li.new_year a .new_year_cont .pic img {
height:100%;
width:100%;
aspect-ratio: 98 / 39;
object-position:center center;
}

/*--- thumbnail ---*/

/*
#thumbnail {
position: absolute;
display:flex;
justify-content:flex-end;
top: calc(700px - 52px);
width: calc(100% - 30px);
left:30px;
}

#thumbnail #number .slick-track {
align-items:flex-end;
display: flex;
}

#thumbnail #number li {
align-items: center;
background-color:var(--white);
display: flex;
font-weight:600;
font-family: Arial,roboto,helvetica;
justify-content: center;
height:38px;
position:relative;
margin:0;
width:48px;
}

#thumbnail #number li:after {
background-color:var(--gray_eb);
content:" ";
height:5px;
position:absolute;
bottom:0;
left:50%;
margin-left:-16px;
width:32px;
}

#thumbnail #number li.slick-active:after {
background-color:var(--gray_eb);
}

#thumbnail #number li.slick-current:after {
background-color:var(--blue);
}

#thumbnail #number li.slick-current {
border-radius:3px 3px 0 0;
color:var(--blue);
font-size:calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
width:48px;
height:52px;
}
*/

/*--- thumbnail ---*/
#thumbnail {
background-color:var(--white);
border-radius:10px 0 0 0;
top:calc(700px - 43px);
right:0;
position:absolute;
padding:0;
width:auto;
z-index:2;
}

#thumbnail .slick-track {
transform:none !important;
width: 100% !important;
}

#thumbnail #number {
display:flex;
height:auto;
position:relative;
width:auto;
z-index:11;
}

#thumbnail #number li {
display: flex;
justify-content: center;
font-size:1.3rem;
left:auto !important;
right:0 !important;
opacity:1 !important;
padding:15px 25px;
position:relative;
width:53px !important;t;
}

#thumbnail #number li:first-child {
border-radius:10px 0 0 0;
}

#thumbnail #number li:after {
background-color:var(--gray_eb);
content:" ";
height:5px;
position:absolute;
bottom:0;
left:50%;
margin-left:-18px;
width:32px;
}

#thumbnail #number li.slick-active:after {
background-color:var(--gray_eb);
}

#thumbnail #number li.slick-current:after {
background-color:var(--blue);
}

#thumbnail #number li:hover {
background-color:var(--light_yellow);
cursor:pointer;
}

#thumbnail #number li:hover:after {
background-color:var(--blue);
}

/*---------------------------------------------
main_right
---------------------------------------------*/
#main_right #holiday {
background-color:var(--middle_green);
border-radius:10px;
display:flex;
flex-direction:column;
padding:10px;
row-gap:10px;
}

#main_right #holiday .btn {
justify-content: center;
display: flex;
}

#main_right #holiday .btn a {
border-color:var(--white);
font-size: calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
padding:15px 30px;
max-width:300px;
}

#main_right #holiday .btn a:after {
font-size: calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
margin-top: -5px;
right:10px;
}

#main_right #holiday #holiday_cont {
display:flex;
flex-direction:column;
row-gap:10px;
}

#main_right #holiday #holiday_cont a {
display:flex;
flex-direction:column;
row-gap:10px;
}

#main_right #holiday dl {
background-color:var(--white);
border-radius:3px;
padding:10px 10px 15px;
}

#main_right #holiday dl dt {
border-bottom:1px solid var(--deep_green);
display:flex;
justify-content:start;
min-width:100px;
padding:0 0 10px;
position:relative;
z-index:2;
}

#main_right #holiday dl dt > span {
align-items:flex-end;
background-color:var(--deep_green);
border-radius:3px;
column-gap:3px;
display:flex;
flex:1;
justify-content:center;
padding:5px;
min-width:80px;
width:calc(100% - 77px);
flex:0 1 auto;
}

#main_right #holiday dl dt > span > span {
color:var(--white);
font-weight:600;
font-size:1.3rem;
line-height:1;
position:relative;
z-index:2;
}

#main_right #holiday dl dt > span > span:first-child {
font-family: Arial;
font-size: 3.2rem;
}

#main_right #holiday dl dt > span > span:nth-child(2) {
line-height:1.6;
}

#main_right #holiday dl dt:after {
background-image:url(../img/common/i_figure_b.webp);
background-position:center center;
background-size:67px 81px;
background-repeat:no-repeat;
content:" ";
position:absolute;
right:0;
bottom:0;
height:81px;
width:67px;
z-index:1;
}

#main_right #holiday dl dd {
font-weight:600;
font-size:1.6rem;
padding:15px 0 0;
text-align:center;
}

#main_right #holiday dl dd span {
color:var(--red);
line-height:1.6;
}

#main_right #holiday ol {
column-gap:10px;
display:flex;
flex-wrap:wrap;
row-gap:10px;
}

#main_right #holiday ol li {
align-items:flex-end;
background-color:var(--white);
border-radius:3px;
column-gap:1px;
display:flex;
flex:1 1 auto;
justify-content:center;
row-gap:5px;
padding:10px;
}

#main_right #holiday ol li span {
font-family: Arial;
font-weight:600;
}

#main_right #holiday ol li span:nth-child(odd) {
font-weight:600;
font-size: 2.5rem;
}

#main_right #holiday ol li span:nth-child(even) {
font-size:1.2rem;
line-height:1.3;
}

/*--- news ---*/

#main_right #news {
background-color:var(--white);
border-radius:0 0 10px 10px;
}

#main_right #news h2 {
background-color:var(--light_green);
font-size:1.5rem;
font-weight:600;
padding:25px;
}

#main_right #news h2 span {
color:var(--blue);
}

#main_right #news ol {
display:flex;
flex-direction:column;
}

#main_right #news ol li {
flex:1 0 100%;
}

#main_right #news ol li a {
display:flex;
padding:25px;
position:relative;
}

#main_right #news ol li a:after {
background-color:var(--gray_dd);
content:" ";
height:1px;
bottom:0;
left:15px;
position:absolute;
width:calc(100% - 30px);
}

#main_right #news ol li a:hover:before {
background-color:var(--light_yellow);
content:" ";
height:100%;
top:0;
left:0;
position:absolute;
width:100%;
z-index:1;
} 

#main_right #news ol li a dl {
display:flex;
flex-direction:column;
row-gap:10px;
position:relative;
z-index:2;
}

#main_right #news ol li a dl dt {
align-items:center;
column-gap:5px;
display:flex;
justify-content:space-between;
}

#main_right #news ol li a dl dt span:first-child {
color:var(--blue);
font-family: Arial,roboto,helvetica;
font-size:calc(1.0rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
}

#main_right #news ol li a dl dt span:last-child {
border-radius:3px;
color:var(--white);
font-size:calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
font-weight: 600;
letter-spacing:-0.01em;
line-height:1;
padding: 3px 6px;
overflow: hidden;
/*display: -webkit-box;*/
text-overflow: ellipsis;
white-space:nowrap;
-webkit-box-orient: vertical;
-webkit-line-clamp:1;
}

#main_right #news ol li a dl dt span.mod-label-info {
background: #FF7E28;
}

#main_right #news ol li a dl dt span.mod-label-campaign {
background: #d365ad;
}

#main_right #news ol li a dl dt span.mod-label-student {
background: #ffb200;
}

#main_right #news ol li a dl dt span.mod-label-entry {
background: #38c27b;
}

#main_right #news ol li a dl dt span.mod-label-recruit {
background: #0091df;
}

#main_right #news ol li a dl dd {
font-size:1.3rem;
line-height:1.6;
}

#main_right #news .news_detail {
display:flex;
justify-content:center;
padding:15px;
}

#main_right #news .news_detail a {
border:1px solid var(--gray_dd);
border-radius:25px;
display:flex;
font-size:1.3rem;
font-weight:600;
justify-content:center;
padding:15px;
position:relative;
width:100%;
}

#main_right #news .news_detail a:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-size:1.1rem;
font-weight:600;
right:10px;
top:50%;
margin-top:-5px;
opacity:1;
position:absolute;
z-index:3;
}

#main_right #news .news_detail a:hover {
border:1px solid var(--blue);
color:var(--blue);
}

#main_right #news .news_detail a:hover:after {
color:var(--blue);
}

/*--- right_banner_area ---*/
#right_banner_area {
display:flex;
flex-direction:column;
/*padding-top:40px;*/
row-gap:15px;
width:100%;
}

/*--- online ---*/
#right_banner_area .online_gakka_banner {
display:flex;
position:relative;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
width:100%;
}

#right_banner_area .online_gakka_banner.lazyloaded {
opacity:1;
}

#right_banner_area .online_gakka_banner a {
display:flex;
position:relative;
width:100%;
}

#right_banner_area .online_gakka_banner a dl {
display:flex;
flex: 0 0 100%;
flex-direction:column;
position:relative;
}

#right_banner_area .online_gakka_banner a dl:after {
background-image:url(../img/common/t_online.webp);
background-repeat:no-repeat;
background-size:contain;
background-position:left center;
height:80px;
content:" ";
position:absolute;
top:50%;
left:50%;
margin-top:-50px;
margin-left:-80px;
width:160px;
}

#right_banner_area .online_gakka_banner a dl dt {
background: rgb(52,137,95);
background: linear-gradient(270deg, rgba(52,137,95,1) 0%, rgba(100,182,140,1) 100%);
animation:tv_noize 1.0s steps(10) infinite;
background-image:url(../img/common/bg_noise.jpg);
background-repeat:no-repeat;
background-size:100% auto;
background-position:left center;
border-radius:6px 6px 0 0;
height:50%;
position:relative;
min-height:130px;
}

@keyframes tv_noize {
  from {
  background-position: 0 0;
  }
  to {
  background-position: 100% 100%;
  }
}


#right_banner_area .online_gakka_banner a dl dt {
opacity:0;
-webkit-transition:opacity 3s;
transition:opacity 3s;
}

#right_banner_area .online_gakka_banner a dl dt.lazyloaded {
opacity:1;
}

#right_banner_area .online_gakka_banner a dl dt img {
animation: change-img-anim 15s infinite ease-out;
border-radius:6px 6px 0 0;
opacity: 0;
object-fit:cover;
object-position:center center;
position:absolute;
width:100%;
height:164px;
}

#right_banner_area .online_gakka_banner a dl dt img:first-child {
animation-delay: 10s;

}
#right_banner_area .online_gakka_banner a dl dt img:nth-child(2) {
animation-delay: 15s;
}

@keyframes change-img-anim { 
0%{ opacity:0; }
10%{ opacity:1; }
/*27%{ opacity:1; }*/
70%{ opacity:1; }
90%{ opacity:0; }
100%{ opacity:0; } 
}

#right_banner_area .online_gakka_banner a dl dt span {
display:flex;
height:130px;
position:relative;
overflow:hidden;
width:100%;
}

#right_banner_area .online_gakka_banner a dl dt span:before {
/*background-image:url(../img/common/i_online_set.png);*/
/*background-repeat:no-repeat;*/
/*background-size:100% auto;*/
/*background-position:left center;*/
height:170px;
content:" ";
position:absolute;
bottom:-20px;
left:-10px;
width:200px;
}

#right_banner_area .online_gakka_banner a dl dt:after {
background-image:url(../img/common/i_figure_online.webp);
background-repeat:no-repeat;
background-size:cover;
background-position:right center;
height:170px;
content:" ";
position:absolute;
bottom:0;
right:0;
width:140px;
}

#right_banner_area .online_gakka_banner.lazyloaded a dl dt:after {
opacity:1;
}

#right_banner_area .online_gakka_banner a dl dd {
align-items:center;
background-color:var(--white);
border-radius:0 0 10px 10px;
column-gap:20px;
display:flex;
height:50%;
justify-content:space-between;
padding:35px 20px 20px 20px;
}

#right_banner_area .online_gakka_banner a dl dd p {
flex:1;
font-size: calc(0.7rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
line-height:1.4;
}

#right_banner_area .online_gakka_banner a dl dd img {
height:auto;
width:70px;
aspect-ratio: 57 / 50;
}

#right_banner_area .online_gakka_banner a:hover dl dd {
background-color:var(--light_yellow);
}

#right_banner_area .voice_banner a {
background-color:var(--blue);
border-radius:10px;
display:flex;
}

#right_banner_area .voice_banner a img {
border-radius:10px;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#right_banner_area .voice_banner a img.lazyloaded {
opacity:1;
}

#right_banner_area .voice_banner a:hover img {
opacity:0.7;
}

#right_banner_area #sub_banner_area {
}

#right_banner_area #sub_banner_area ul {
display:flex;
flex-direction:column;
row-gap:15px;
}

#right_banner_area #sub_banner_area ul li {
}

#right_banner_area #sub_banner_area ul li a {
display:flex;
overflow: hidden;
}

#right_banner_area #sub_banner_area ul li a img {
height:auto;
min-height:100px;
object-fit:cover;
opacity:0;
-webkit-transition:opacity 3s, transform 0.35s ease-in-out;
transition: opacity 3s, transform 0.35s ease-in-out;
width:100%;
}

#right_banner_area #sub_banner_area ul li a img.lazyloaded {
opacity:1;
}

#right_banner_area #sub_banner_area ul li a:hover img {
transform:scale(1.15) rotate(2deg);
}

/*---------------------------------------------
section
---------------------------------------------*/
.section .section_title {
align-items: center;
display:flex;
flex-direction:column;
justify-content:center;
row-gap:10px;
text-align:center;
}

.section .section_title > h2 {
display:flex;
justify-content:center;
}

.section .section_title .icon {
display:flex;
justify-content:center;
margin-bottom:10px;
}

.section .section_title .icon img {
height:auto;
width:70px;
}

.section .section_title > h2 > span {
font-weight:600;
font-size:2.6rem;
}

.section .section_title > span.en {
color:var(--gray_9f);
font-weight:600;
font-size:1.2rem;
}

.section h2.section_title {
align-items:center;
background-color:var(--blue);
border-radius:10px 10px 0 0;
column-gap:20px;
display:flex;
flex-direction:unset;
justify-content:start;
padding:40px;
position:relative;
width:100%;
}

.section h2.section_title img {
height:31px;
width:auto;
}

.section h2.section_title span {
color:var(--white);
font-weight:600;
font-size:2.6rem;
line-height:1;
}

/*---------------------------------------------
important_info
---------------------------------------------*/
#important_info {
padding-top:20px;
padding-left: 310px;
padding-right:30px;
}

#important_info #important_info_cont {
background-color: var(--blue03);
border-radius:0 0 10px 10px;
padding:15px;
column-gap:15px;
display:flex;
flex-wrap:wrap;
}

#important_info h2 {
background-color:var(--blue);
border-radius:10px 10px 0 0;
color:var(--white);
font-weight:600;
font-size:2.6rem;
line-height:1;
padding:25px 0 25px 20px;
width:100%;
}


#important_info #important_info_cont #info_cont_left {
align-items: flex-end;
display: flex;
flex-direction: column;
justify-content: start;
padding:0;
row-gap: 15px;
width: 260px;
}

#important_info #important_info_cont #holiday {
background-color:var(--middle_green);
border-radius:10px;
display:flex;
flex-direction:column;
flex-grow:0;
padding:10px 10px 20px;
row-gap:15px;
width:100%;
}

#important_info #important_info_cont #holiday .btn {
justify-content: center;
display: flex;
}

#important_info #important_info_cont #holiday .btn a {
border-color:var(--white);
font-size: calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
padding:15px 30px;
max-width:300px;
}

#important_info #important_info_cont #holiday .btn a:after {
font-size: calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
margin-top: -5px;
right:10px;
}

#important_info #important_info_cont #holiday #holiday_cont {
display:flex;
flex-direction:column;
row-gap:10px;
}

#important_info #important_info_cont #holiday #holiday_cont a {
display:flex;
flex-direction:column;
row-gap:10px;
}

#important_info #important_info_cont #holiday dl {
background-color:var(--white);
border-radius:3px;
padding:10px 10px 10px;
}

#important_info #important_info_cont #holiday dl dt {
border-bottom:1px solid var(--deep_green);
display:flex;
justify-content:start;
min-width:100px;
padding:0 0 10px;
position:relative;
z-index:2;
}

#important_info #important_info_cont #holiday dl dt > span {
align-items:flex-end;
background-color:var(--deep_green);
border-radius:3px;
column-gap:3px;
display:flex;
flex:1;
justify-content:center;
padding:5px;
min-width:80px;
/*width:calc(100% - 77px);*/
flex:0 1 auto;
}

#important_info #important_info_cont #holiday dl dt > span > span {
color:var(--white);
font-weight:600;
font-size:1.3rem;
line-height:1;
position:relative;
z-index:2;
}

#important_info #important_info_cont #holiday dl dt > span > span:first-child {
font-family: Arial;
font-size: 3.2rem;
}

#important_info #important_info_cont #holiday dl dt > span > span:nth-child(2) {
line-height:1.6;
}

#important_info #important_info_cont #holiday dl dt:after {
background-image:url(../img/common/i_figure_b.webp);
background-position:center center;
background-size:67px 81px;
background-repeat:no-repeat;
content:" ";
position:absolute;
right:0;
bottom:0;
height:81px;
width:67px;
z-index:1;
}

#important_info #important_info_cont #holiday dl dd {
font-weight:600;
font-size:1.6rem;
padding:10px 0 0;
text-align:center;
}

#important_info #important_info_cont #holiday dl dd span {
color:var(--red);
line-height:1.6;
}

#important_info #important_info_cont #holiday ol {
column-gap:10px;
display:flex;
flex-wrap:wrap;
row-gap:10px;
}

#important_info #important_info_cont #holiday ol li {
align-items:flex-end;
background-color:var(--white);
border-radius:3px;
column-gap:1px;
display:flex;
flex:1 1 auto;
flex-wrap:wrap;
justify-content:center;
row-gap:5px;
padding:10px;
}

#important_info #important_info_cont #holiday ol li span {
font-family: Arial;
font-weight:600;
}

#important_info #important_info_cont #holiday ol li span:nth-child(odd) {
font-weight:600;
font-size: 2.5rem;
}

#important_info #important_info_cont #holiday ol li span:nth-child(even) {
font-size:1.2rem;
line-height:1.3;
}

#important_info #important_info_cont #holiday ol li .new_year_holiday {
color:var(--red);
font-size: calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
text-align:center;
width:100%;
}

/*--- recruit ---*/
#important_info #important_info_cont #recruit {
background-color:var(--white);
border-radius:10px;
display:flex;
flex-direction:column;
flex-grow:0;
padding:15px 10px 10px;
row-gap:10px;
width:100%;
}

#important_info #important_info_cont #recruit dl {
display:flex;
flex-direction:column;
row-gap:8px;
}

#important_info #important_info_cont #recruit dl dt {
color:var(--blue);
font-size: calc(0.9rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
text-align:center;
}

#important_info #important_info_cont #recruit dl dd {
font-size: calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
text-align:center;
}

#important_info #important_info_cont #recruit ul {
border-top:1px dotted var(--gray_cc);
display:flex;
flex-direction:column;
}

#important_info #important_info_cont #recruit ul li {
border-bottom:1px dotted var(--gray_cc);
}

#important_info #important_info_cont #recruit ul li a {
background-color:var(--blue01);
column-gap:10px;
display:flex;
padding:5px 5px;
position:relative;
}

#important_info #important_info_cont #recruit ul li a:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-size: calc(0.4rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
right:10px;
top:50%;
margin-top:-5px;
opacity:1;
position:absolute;
z-index:1;
}

#important_info #important_info_cont #recruit ul li a .pic {
aspect-ratio: 3 / 2;
width:60px;
}

#important_info #important_info_cont #recruit ul li a .pic img {
height:100%;
width:100%;
object-fit:cover;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#important_info #important_info_cont #recruit ul li a .pic img.lazyloaded {
opacity:1;
}

#important_info #important_info_cont #recruit ul li a .txt {
align-items:start;
display:flex;
flex-grow:1;
flex-direction:column;
justify-content:center;
row-gap:5px;
}

#important_info #important_info_cont #recruit ul li a .txt span.job {
color:var(--blue);
font-weight:600;
font-size: calc(0.7rem + ((1vw - 0.48rem) * 0.6944));
}

#important_info #important_info_cont #recruit ul li a .txt span.job_detail {
font-size: calc(0.6rem + ((1vw - 0.48rem) * 0.6944));
}

#important_info #important_info_cont #recruit ul li a:hover {
background-color:var(--light_yellow);
}

#important_info #important_info_cont #recruit ul li a:hover:after {
color:var(--blue);
}


/*--- news ---*/
#important_info #important_info_cont #news {
flex-grow:1;
padding:0;
}

#important_info #important_info_cont #news ol {
background-color:var(--white);
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.2);
border-radius:10px;
display:flex;
flex-direction:column;
flex-grow:1;
}

#important_info #important_info_cont #news ol li {
border-top:1px solid var(--gray_dd);
width: 100%;
height: 100%;
min-height: 60px;
}

#important_info #important_info_cont #news ol li label,
#important_info #important_info_cont #news ol li a {
display:flex;
font-size: calc(0.8rem + ((1vw - 0.48rem) * 0.6944));
padding: 15px 20px;
line-height: 1.4;
width:100%;
z-index: 2;
position: relative;
}

#important_info #important_info_cont #news ol li a:hover {
background-color:var(--light_yellow);
}

#important_info #important_info_cont #news ol li dl {
position: relative;
height: 100%;
width: 100%;
}

#important_info #important_info_cont #news ol li dl dt {
align-items: center;
column-gap:10px;
display:flex;
justify-content:space-between;
width:100%;
z-index:1;
}

#important_info #important_info_cont #news ol li dl dt span:first-child {
color:var(--blue);
font-family: Arial;
font-size: calc(1.0rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
flex-grow:0;
line-height:1.6;
z-index:1;
}

#important_info #important_info_cont #news ol li dl dt span:last-child {
border-radius:15px;
color:var(--white);
font-size: calc(0.5rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
letter-spacing:-0.01em;
/*flex-basis:160px;*/
text-align: center;
line-height:1.6;
/*padding:2px 8px;*/
overflow: hidden;
display: -webkit-box;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp:1;
z-index:1;
}

#important_info #important_info_cont #news ol li dl dt > span:last-child span {
flex-basis: 160px;
padding: 2px 8px;
min-width: 160px;
}

#important_info #important_info_cont #news ol li dl dt > span:last-child span.mod-label-info {
background: #FF7E28;
}

#important_info #important_info_cont #news ol li dl dt > span:last-child span.mod-label-campaign {
background: #d365ad;
}

#important_info #important_info_cont #news ol li dl dt > span:last-child span.mod-label-student {
background: #ffb200;
}

#important_info #important_info_cont #news ol li dl dt > span:last-child span.mod-label-entry {
background: #38c27b;
}

#important_info #important_info_cont #news ol li dl dt > span:last-child span.mod-label-recruit {
background: #0091df;
}

#important_info #important_info_cont #news ol li dl dd {
font-size: calc(0.8rem + ((1vw - 0.48rem) * 0.6944));
line-height:1.6;
padding-top:5px;
overflow: hidden;
display: -webkit-box;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp:1;
}

#important_info #important_info_cont #news ol li:first-child,
#important_info #important_info_cont #news ol li:first-child a {
border-radius:10px 10px 0 0;
border-top:none;
}

#important_info #important_info_cont #news ol li:last-child,
#important_info #important_info_cont #news ol li:last-child a {
border-radius:0 0 10px 10px;
}

/*---------------------------------------------
license
---------------------------------------------*/
#license {
display:flex;
flex-direction:column;
padding-top:40px;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#license.lazyloaded {
opacity:1;
}

#license h2.section_title:after {
background-image:url(../img/common/i_figure_a.webp);
background-position:center center;
background-size:120px 150px;
background-repeat:no-repeat;
bottom:0;
content:" ";
height:150px;
position:absolute;
right:30px;
width:120px;
}

#license #license_cont {
background-color:var(--blue03);
border-radius:0 0 10px 10px;
column-gap:15px;
display:flex;
flex-wrap:wrap;
margin-bottom:0;
padding:15px;
row-gap:15px;
}

#license #license_cont .license_car {
background-color:var(--white);
border-radius:10px;
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.2);
column-gap:15px;
display:flex;
flex-wrap:wrap;
flex:1 1 65%;
padding:15px;
row-gap:15px;
position:relative;
}

#license #license_cont .license_car .mark {
align-items:center;
background-color:var(--yellow);
border-radius:60px;
display:flex;
height:120px;
justify-content:center;
left:10px;
position:absolute;
top:10px;
transform:rotate(-15deg);
width:120px;
z-index:2;
}

#license #license_cont .license_car .mark span {
font-size:1.6rem;
font-weight:600;
line-height:1.4;
text-align:center;
}

#license #license_cont .license_car > a {
display:flex;
flex:1 1 57%;
/*min-width:300px;*/
}

#license #license_cont .license_car > a dl {
display:flex;
flex-direction:column;
flex:1 1 60%;
/*min-width:300px;*/
}

#license #license_cont .license_car > a dl > dt {
overflow: hidden;
}

#license #license_cont .license_car > a dl > dt img {
height:210px;
object-fit:cover;
transition:transform 0.35s ease-in-out;
width:100%;
opacity:0;
-webkit-transition:opacity 3s, transform 0.35s ease-in-out;
transition: opacity 3s, transform 0.35s ease-in-out;
}

#license #license_cont .license_car > a dl > dt img.lazyloaded {
opacity:1;
}

#license #license_cont .license_car > a dl dd {
align-items:center;
display:flex;
flex:1;
width:100%;
}

#license #license_cont .license_car > a dl dd h3 {
align-items:center;
display:flex;
justify-content:space-between;
padding:15px 40px 15px 30px;
position:relative;
width:100%;
}

#license #license_cont .license_car > a dl dd h3:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-size:1.3rem;
font-weight:600;
right:10px;
top:50%;
margin-top:-5px;
opacity:1;
position:absolute;
z-index:1;
}

#license #license_cont .license_car > a dl dd h3 span {
font-weight:600;
font-size:2.3rem;
}

#license #license_cont .license_car > a dl dd h3 img {
height:70px;
width:auto;
}

#license #license_cont .license_car > a:hover {
background-color:var(--light_yellow);
border-radius:0 0 10px 10px;
}

#license #license_cont .license_car > a:hover dl dt img {
transform:scale(1.15) rotate(2deg);
}

#license #license_cont .license_car > a:hover h3:after {
color:var(--blue);
}

#license #license_cont .license_car > a:hover h3 span {
color:var(--blue);
}

#license #license_cont .license_car .option_plan {
background-color:var(--light_green);
display:flex;
flex-direction:column;
flex:1 1 40%;
min-width:280px;
}

#license #license_cont .license_car .option_plan dl {
display:flex;
flex-direction:column;
flex-grow: 1;
height;100%;
padding:15px;
}

#license #license_cont .license_car .option_plan dl dt {
background-image:url(../img/top/bg_license_option_plan.webp);
background-position:center center;
background-size:cover;
text-align:center;
}

#license #license_cont .license_car .option_plan dl dt img {
height:auto;
object-fit:cover;
width:100%;
max-width:280px;
}

#license #license_cont .license_car .option_plan dl dd {
background-color:var(--white);
display:flex;
flex:1;
flex-direction:column;
padding:0;
height:100%;
}

#license #license_cont .license_car .option_plan dl dd h4 {
display:flex;
}

#license #license_cont .license_car .option_plan dl dd h4 a {
display:flex;
font-size: calc(0.7rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
letter-spacing:-0.01;
padding:15px;
position:relative;
width:100%;
}

#license #license_cont .license_car .option_plan dl dd h4 a:hover {
color:var(--blue);
}

#license #license_cont .license_car .option_plan dl dd h4 a:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-size:1.1rem;
font-weight:600;
right:10px;
top:50%;
margin-top:-5px;
opacity:1;
position:absolute;
z-index:3;
}

#license #license_cont .license_car .option_plan dl dd h4 a:hover:after {
color:var(--blue);
}

#license #license_cont .license_car .option_plan dl dd ul {
display:flex;
flex-direction:column;
justify-content:space-around;
flex-grow: 1;
padding:0 15px 15px;
}

#license #license_cont .license_car .option_plan dl dd ul li {
border-bottom:1px solid var(--gray_dd);
}

#license #license_cont .license_car .option_plan dl dd ul li:first-child {
border-top:1px solid var(--gray_dd);
}

#license #license_cont .license_car .option_plan dl dd ul li a {
display:flex;
font-size:1.2rem;
padding:10px 0;
width:100%;
overflow: hidden;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp:1;
}

#license #license_cont .license_car .option_plan dl dd ul li a:hover {
color:var(--blue);
}




#license #license_cont .license_motor {
background-color:var(--white);
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.2);
border-radius:10px;
display:flex;
flex:1 1 40%;
padding:15px;
/*width:calc(35% - 15px);*/
min-width:400px;
/*max-width:300px;*/
position:relative;
}

#license #license_cont .license_motor .mark {
align-items:center;
background-color:var(--yellow);
border-radius:calc(45px + 0.5vw);
display:flex;
height:calc(90px + 1vw);
justify-content:center;
left:10px;
position:absolute;
top:10px;
transform:rotate(-15deg);
width:calc(90px + 1vw);
z-index:2;
}

#license #license_cont .license_motor .mark span {
font-size: calc(0.5rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
line-height:1.4;
text-align:center;
}

#license #license_cont .license_motor > a {
display:flex;
width:100%;
}

#license #license_cont .license_motor > a dl {
display:flex;
flex-direction:column;
width:100%;
}

#license #license_cont .license_motor > a dl dt {
overflow: hidden;
}

#license #license_cont .license_motor > a dl dt img {
height:210px;
object-fit:cover;
object-position:center top;
opacity:0;
-webkit-transition:opacity 3s, transform 0.35s ease-in-out;
transition: opacity 3s, transform 0.35s ease-in-out;
width:100%;
}

#license #license_cont .license_motor > a dl dt img.lazyloaded {
opacity:1;
}

#license #license_cont .license_motor > a:hover {
background-color:var(--light_yellow);
border-radius:0 0 10px 10px;
}

#license #license_cont .license_motor > a:hover dl dt img {
transform:scale(1.15) rotate(2deg);
}

#license #license_cont .license_motor > a dl dd {
align-items:center;
display:flex;
flex:1;
width:100%;
}

#license #license_cont .license_motor > a dl dd h3 {
align-items:center;
display:flex;
justify-content:space-between;
padding:15px 30px 15px 20px;
position:relative;
width:100%;
}

#license #license_cont .license_motor > a dl dd h3:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-size:1.3rem;
font-weight:600;
right:10px;
top:50%;
margin-top:-5px;
opacity:1;
position:absolute;
z-index:3;
}

#license #license_cont .license_motor > a:hover dl dd h3:after {
color:var(--blue);
}

#license #license_cont .license_motor > a dl dd h3 span {
font-weight:600;
font-size:2.3rem;
}

#license #license_cont .license_motor > a dl dd h3 img {
height:70px;
width:auto;
}

#license #license_cont .other_menu {
column-gap:15px;
display:flex;
flex:1 0 40%;
flex-wrap:wrap;
justify-content:space-between;
row-gap:15px;
min-width: calc(100% - 415px);
}

#license #license_cont .other_menu li {
background-color:var(--white);
border-radius:10px;
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.2);
display:flex;
flex-direction:column;
flex:1 1 40%;
min-width: calc(100% / 4 - 15px);
max-width:calc(100% / 2 - 5px);
}

#license #license_cont .other_menu li a {
display:flex;
padding:10px 10px 0;
height:100%;
}

#license #license_cont .other_menu li a:hover {
background-color:var(--light_yellow);
border-radius:10px;
}

#license #license_cont .other_menu li a dl {
display:flex;
flex-direction:column;
height:100%;
width:100%;
}

#license #license_cont .other_menu li a dl dt {
flex-shrink:1;
overflow: hidden;
}

#license #license_cont .other_menu li a dl dt img {
height:auto;
min-height:100px;
object-fit:cover;
opacity:0;
-webkit-transition:opacity 3s, transform 0.35s ease-in-out;
transition: opacity 3s, transform 0.35s ease-in-out;
width:100%;
}

#license #license_cont .other_menu li a dl dt img.lazyloaded {
opacity:1;
}

#license #license_cont .other_menu li a:hover dl dt img {
transform:scale(1.15) rotate(2deg);
}

#license #license_cont .other_menu li a dl dd {
align-items:center;
display:flex;
flex-grow:1;
font-weight:600;
}

#license #license_cont .other_menu li a dl dd h3 {
align-items:center;
display:flex;
justify-content:space-between;
padding:15px 0;
position:relative;
width:100%;
}

#license #license_cont .other_menu li a dl dd h3:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-size:1.3rem;
font-weight:600;
right:0;
top:50%;
margin-top:-7px;
opacity:1;
position:absolute;
z-index:3;
}

#license #license_cont .other_menu li a:hover dl dd h3:after {
color:var(--blue);
}

#license #license_cont .other_menu li a dl dd h3 span {
font-weight:600;
font-size: calc(0.8rem + ((1vw - 0.48rem) * 0.6944));
overflow: hidden;
display: -webkit-box;
/*padding:15px 0 15px 0;*/
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp:1;
}

#license #license_cont .other_menu li a:hover dl dd h3 span {
color:var(--blue);
}

/*---------------------------------------------
license_nav_menu
---------------------------------------------*/
#license_nav_menu {
display:flex;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#license_nav_menu.lazyloaded {
opacity:1;
}

#license_nav_menu ul {
background-color:var(--white);
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.2);
border-radius:10px;
display:flex;
flex-wrap:wrap;
padding:15px 20px;
}

#license_nav_menu ul li {
display:flex;
justify-content:center;
padding:10px;
flex:1 1 200px;
position:relative;
min-width:200px;
/*max-width:calc(100% / 3);*/
z-index:2;
}

#license_nav_menu ul li:first-child,
#license_nav_menu ul li:nth-child(2) {
flex:1 1 50%;
}

#license_nav_menu ul li:before {
background-color:var(--gray_dd);
content:" ";
height:1px;
bottom:0;
left:0;
position:absolute;
width:100%;
}

#license_nav_menu ul li a {
align-items:center;
background-repeat:no-repeat;
display:flex;
justify-content:center;
padding:20px 0;
position:relative;
width:100%;
z-index:2;
}


#license_nav_menu ul li a:before {
background-color:var(--gray_dd);
content:" ";
height:calc(100% - 20px);
bottom:10px;
right:-10px;
position:absolute;
width:1px;
}


#license_nav_menu ul li:hover:after {
background-color:var(--light_yellow);
content:" ";
border-radius:6px;
height:calc(100% - 20px);
left:5px;
top:10px;
position:absolute;
width:calc(100% - 10px);
z-index:1;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#license_nav_menu.lazyloaded ul li:hover:after {
opacity:1;
}

#license_nav_menu ul li:first-child a {
background-image:url(../img/common/i_facility.png);
background-position:center 20px;
background-size:auto 42px;
}

#license_nav_menu ul li:nth-child(2) a {
background-image:url(../img/common/i_entry.png);
background-position:center 26px;
background-size:auto 32px;
}

#license_nav_menu ul li:nth-child(3) a {
background-image:url(../img/common/i_course.png);
background-position:center 24px;
background-size:auto 38px;
}

#license_nav_menu ul li:nth-child(4) a {
background-image:url(../img/common/i_schoolbus.png);
background-position:center 28px;
background-size:auto 38px;
}

#license_nav_menu ul li:nth-child(5) a {
background-image:url(../img/common/i_access.png);
background-position:center 28px;
background-size:auto 36px;
}

#license_nav_menu ul li:nth-child(6) a {
background-image:url(../img/common/i_coupon.png);
background-position:center 32px;
background-size:auto 30px;
}

#license_nav_menu ul li:nth-child(7) a {
background-image:url(../img/common/i_instructor.jpg);
background-position:center 24px;
background-size:auto 48px;
}

#license_nav_menu ul li:nth-child(8) a {
background-image:url(../img/common/i_voice.png);
background-position:center 20px;
background-size:auto 52px;
}

#license_nav_menu ul li:nth-child(9) a {
background-image:url(../img/common/i_faq.png);
background-position:center 28px;
background-size:auto 42px;
}

/*
#license_nav_menu ul li:nth-child(10) a {
background-image:url(../img/common/i_faq.png);
background-position:center 28px;
background-size:auto 42px;
}
*/

#license_nav_menu ul li:first-child a:hover {
background-size:auto 56px;
}

#license_nav_menu ul li:nth-child(2) a:hover {
background-size:auto 42px;
}

#license_nav_menu ul li:nth-child(3) a:hover {
background-size:auto 48px;
}

#license_nav_menu ul li:nth-child(4) a:hover {
background-size:auto 48px;
}

#license_nav_menu ul li:nth-child(5) a:hover {
background-size:auto 46px;
}

#license_nav_menu ul li:nth-child(6) a:hover {
background-size:auto 36px;
}

#license_nav_menu ul li:nth-child(7) a:hover {
background-size:auto 56px;
}

#license_nav_menu ul li:nth-child(8) a:hover {
background-size:auto 64px;
}

#license_nav_menu ul li:nth-child(9) a:hover {
background-size:auto 52px;
}

/*
#license_nav_menu ul li:nth-child(10) a:hover {
background-size:auto 52px;
}
*/

#license_nav_menu ul li:last-child a:after {
background-color:var(--gray_dd);
content:" ";
height:calc(100% - 20px);
bottom:10px;
right:-10px;
position:absolute;
width:1px;
}

#license_nav_menu ul li a span {
font-size:1.5rem;
font-weight:600;
line-height:1.4;
padding:70px 0 0;
text-align:center;
z-index:2;
}

/*---------------------------------------------
student
---------------------------------------------*/
#student {
display:flex;
flex-direction:column;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#student.lazyloaded {
opacity:1;
}

#student h2.section_title:after {
background-image:url(../img/common/i_figure_a.webp);
background-position:center center;
background-size:120px 150px;
background-repeat:no-repeat;
bottom:0;
content:" ";
height:150px;
position:absolute;
right:30px;
width:120px;
}

#student #student_cont {
background-color:var(--blue03);
border-radius:0 0 10px 10px;
column-gap:15px;
display:flex;
flex-wrap:wrap;
padding:15px;
row-gap:15px;
}

#student #student_cont #student_menu {
column-gap:15px;
display:flex;
flex:1 1 auto;
justify-content:space-between;
}

#student #student_cont #student_menu .menu {
background-color:var(--white);
border-radius:10px;
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.2);
display:flex;
flex:1 1 30%;
max-width:calc(100% / 3 - 15px);
}

#student #student_cont #student_menu .menu a {
display:flex;
padding:15px 15px 0;
width:100%;
}

#student #student_cont #student_menu .menu a:hover {
background-color:var(--light_yellow);
border-radius:10px;
}

#student #student_cont #student_menu .menu a dl {
width:100%;
}

#student #student_cont #student_menu .menu a dl dt {
height:180px;
overflow: hidden;
}

#student #student_cont #student_menu .menu a dl dt img {
height:180px;
object-fit:cover;
opacity:0;
-webkit-transition:opacity 3s, transform 0.35s ease-in-out;
transition: opacity 3s, transform 0.35s ease-in-out;
width:100%;
}

#student #student_cont #student_menu .menu a dl dt img.lazyloaded {
opacity:1;
}

#student #student_cont #student_menu .menu a:hover dl dt img {
transform:scale(1.15) rotate(2deg);
}

#student #student_cont #student_menu .menu a dl dd {

}

#student #student_cont #student_menu .menu a dl dd h3 {
align-items:center;
display:flex;
justify-content:space-between;
padding:15px 0;
position:relative;
width:100%;
}

#student #student_cont #student_menu .menu a dl dd h3:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-size:1.3rem;
font-weight:600;
right:0;
top:50%;
margin-top:-7px;
opacity:1;
position:absolute;
z-index:3;
}

#student #student_cont #student_menu .menu a dl dd h3 span {
display:flex;
font-size: calc(0.8rem + ((1vw - 0.48rem) * 0.6944));
font-weight:600;
}

#student #student_cont .sub_menu {
column-gap:15px;
display:flex;
flex-wrap:wrap;
flex:1 0 30%;
justify-content:space-between;
row-gap:15px;
}

#student #student_cont .sub_menu li {
background-color:var(--white);
border-radius:10px;
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.2);
display:flex;
flex:1 1 20%;
max-width:calc(100% / 3 - 15px);
min-width: 150px;
}

#student #student_cont .sub_menu li.school_bus {
flex:1 1 35%;
max-width:calc(50% - 15px);
}

#student #student_cont .sub_menu li a {
display:flex;
padding:15px 15px 0;
width:100%;
}

#student #student_cont .sub_menu li a:hover {
background-color:var(--light_yellow);
border-radius:10px;
}

#student #student_cont .sub_menu li a dl {
width:100%;
}

#student #student_cont .sub_menu li a dl dt {
background-color:var(--blue03);
overflow: hidden;
}

#student #student_cont .sub_menu li a dl dt img {
height:100px;
object-fit:cover;
opacity:0;
-webkit-transition:opacity 3s, transform 0.35s ease-in-out;
transition: opacity 3s, transform 0.35s ease-in-out;
width:100%;
}
#student #student_cont .sub_menu li a dl dt img.lazyloaded {
opacity:1;
}

#student #student_cont .sub_menu li.school_bus a dl dt img {
object-position:center top;
}

#student #student_cont .sub_menu li a:hover dl dt img {
transform:scale(1.15) rotate(2deg);
}

#student #student_cont .sub_menu li a dl dd {

}

#student #student_cont .sub_menu li a dl dd h3 {
align-items:center;
display:flex;
justify-content:space-between;
padding:15px 0;
position:relative;
width:100%;
}

#student #student_cont .sub_menu li a dl dd h3:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-size:1.3rem;
font-weight:600;
right:0;
top:50%;
margin-top:-7px;
opacity:1;
position:absolute;
z-index:3;
}

#student #student_cont .sub_menu li a dl dd h3 span {
display:flex;
font-weight:600;
font-size: calc(0.8rem + ((1vw - 0.48rem) * 0.6944));
}

/*---------------------------------------------
course
---------------------------------------------*/
#course {
display:flex;
flex-direction:column;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#course.lazyloaded {
opacity:1;
}

#course h2.section_title:after {
background-image:url(../img/common/i_figure_a.webp);
background-position:center center;
background-size:120px 150px;
background-repeat:no-repeat;
bottom:0;
content:" ";
height:150px;
position:absolute;
right:30px;
width:120px;
}

#course #course_cont {
background-color:var(--blue03);
border-radius:0 0 10px 10px;
display:flex;
flex-direction:column;
padding:15px;
}

#course #course_cont #course_menu {
column-gap:15px;
display:flex;
flex-wrap:wrap;
justify-content:space-between;
row-gap:15px;
}

#course #course_cont #course_menu .menu {
background-color:var(--white);
border-radius:10px;
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.2);
display:flex;
flex:1 1 30%;
max-width:calc(100% / 3 - 15px);
}

#course #course_cont #course_menu .menu a {
display:flex;
padding:15px 15px 0;
width:100%;
}

#course #course_cont #course_menu .menu a:hover {
background-color:var(--light_yellow);
border-radius:10px;
}

#course #course_cont #course_menu .menu a dl {
width:100%;
}

#course #course_cont #course_menu .menu a dl dt {
height:140px;
overflow: hidden;
}

@media screen and (min-width:1680px) {
#course #course_cont #course_menu .menu a dl dt img {
height:180px;
}
}

#course #course_cont #course_menu .menu a dl dt img {
height:140px;
object-fit:cover;
opacity:0;
-webkit-transition:opacity 3s, transform 0.35s ease-in-out;
transition: opacity 3s, transform 0.35s ease-in-out;
width:100%;
}

#course #course_cont #course_menu .menu a dl dt img.lazyloaded {
opacity:1;
}

#course #course_cont #course_menu .menu a:hover dl dt img {
transform:scale(1.15) rotate(2deg);
}

#course #course_cont #course_menu .menu a dl dd {

}

#course #course_cont #course_menu .menu a dl dd h3 {
align-items:center;
display:flex;
justify-content:space-between;
padding:15px 0;
position:relative;
width:100%;
}

#course #course_cont #course_menu .menu a dl dd h3:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-size:1.3rem;
font-weight:600;
right:0;
top:50%;
margin-top:-7px;
opacity:1;
position:absolute;
z-index:3;
}

#course #course_cont #course_menu .menu a dl dd h3 span {
display:flex;
font-weight:600;
font-size: calc(0.8rem + ((1vw - 0.48rem) * 0.6944));
overflow: hidden;
display: -webkit-box;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp:1;
}

/*---------------------------------------------
about
---------------------------------------------*/
#main #about {
background-color:var(--white);
border-radius:10px;
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);
display:flex;
flex-direction:column;
position:relative;
opacity:0;
-webkit-transition:opacity 3s;
transition:opacity 3s;
}

#main #about.lazyloaded {
opacity:1;
}

#main #about h2 {
display:flex;
justify-content:center;
padding:60px 0 0;
}

#main #about #about_cont {
padding:50px 0 50px;
}

#main #about #about_cont #about_slider ul li {
display:flex;
flex-direction:column;
height:100%;
row-gap:20px;
margin: 0 50px;
}

#main #about #about_cont #about_slider ul li .pic {
display:flex;
height:calc(300px + 5vw);
justify-content:center;
position:relative;
}

#main #about #about_cont #about_slider ul li .pic:before {
background-color: rgb(0 0 0 / 0.5);
border-radius:20px;
content:" ";
height:100%;
left:0;
position:absolute;
top:0;
width:100%;
}

#main #about #about_cont #about_slider .slick-active .pic:before {
content:none;
}

#main #about #about_cont #about_slider ul li .pic img {
border-radius:20px;
object-fit:cover;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
object-position: center top;
width:100%;
}

#main #about #about_cont #about_slider ul li .pic img.lazyloaded {
opacity:1;
}

#main #about #about_cont #about_slider ul li dl {
display:flex;
flex-direction:column;
flex-grow:1;
row-gap:15px;
}

#main #about #about_cont #about_slider ul li dl dt {
font-size:1.8rem;
font-weight:600;
line-height:1.6;
}

#main #about #about_cont #about_slider ul li dl dd {
font-size:1.6rem;
line-height:1.6;
}

#main #about #about_cont #about_slider .slick-prev {
margin-top:-110px;
left:calc(100% / 3 - 160px);
}

#main #about #about_cont #about_slider .slick-next {
margin-top:-110px;
right:calc(100% / 3 - 160px);
}

#main #about #about_cont #about_slider .detail {
display:flex;
flex: 0 1 auto;
justify-content:center;
}

#main #about #about_cont #about_slider .detail a {
border:1px solid var(--gray_dd);
border-radius:30px;
display:flex;
font-size:1.3rem;
font-weight:600;
justify-content:center;
padding:20px;
position:relative;
max-width:300px;
width:100%;
}

#main #about #about_cont #about_slider .detail a:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-size:1.1rem;
font-weight:600;
right:10px;
top:50%;
margin-top:-5px;
opacity:1;
position:absolute;
z-index:3;
}

#main #about #about_cont #about_slider .detail a:hover {
border:1px solid var(--blue);
color:var(--blue);
}

#main #about #about_cont #about_slider .detail a:hover:after {
color:var(--blue);
}

#main #about #about_cont #about_slider .slick-slider {
display:flex;
align-content: stretch;
justify-content: space-between;
height: 100%;
overflow:hidden;
}

#main #about #about_cont #about_slider .slick-list {
display: flex;
}

#main #about #about_cont #about_slider .slick-list .slick-track {
display: flex;
justify-content: space-between;
height: 100%;
align-content: stretch;
}

/*---------------------------------------------
instructor
---------------------------------------------*/
#instructor {
padding:0;
position:relative;
width:100%;
opacity:0;
-webkit-transition:opacity 3s;
transition:opacity 3s;
}

#instructor.lazyloaded {
opacity:1;
}

#instructor .pic_top {
border-radius:10px 10px 0 0;
content:" ";
height:50%;
position:absolute;
left:0;
top:0;
width:100%;
z-index:1;
}

#instructor .pic_top.lazyloaded {
opacity:1;
}

#instructor .pic_top.lazyloaded:before {
background-image:url(../img/top/mainvisual_04b.jpg);
background-size:cover;
background-repeat:no-repeat;
background-position:left top;
border-radius:10px 0 0 0;
content:" ";
height:50%;
position:absolute;
left:0;
top:0;
width:50%;
z-index:1;
}

#instructor .pic_top.lazyloaded:after {
background-image:url(../img/top/mainvisual_04c.jpg);
background-size:cover;
background-repeat:no-repeat;
background-position:right top;
border-radius:0;
content:" ";
height:50%;
position:absolute;
right:0;
top:0;
width:50%;
z-index:1;
}

#instructor #instructor_cont {
background-color:var(--white);
border-radius:20px;
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.2);
padding:70px 0 50px 0;
position:relative;
z-index:1;
}

#instructor #instructor_cont > p {
font-size:1.5rem;
text-align:center;
}

#instructor #instructor_cont .detail {
display:flex;
justify-content:center;
padding:45px 15px 0;
}

#instructor #instructor_cont .detail a {
border:1px solid var(--gray_dd);
border-radius:30px;
display:flex;
flex:0 1 300px;
font-size:1.3rem;
font-weight:600;
justify-content:center;
padding:20px;
position:relative;
width:100%;
}

#instructor #instructor_cont .detail a:after {
content:"\f054";
color:var(--gray_cc);
font-family:var(--icon);
font-size:1.1rem;
font-weight:600;
right:15px;
top:50%;
margin-top:-5px;
opacity:1;
position:absolute;
z-index:3;
}

#instructor #instructor_cont .detail a:hover {
color:var(--blue);
border:1px solid var(--blue);
}

#instructor #instructor_cont .detail a:hover:after {
color:var(--blue);
}

#instructor #instructor_cont .figure {
position:absolute;
right:0;
top:-30px;
height:200px;
width:400px;
}

#instructor #instructor_cont .figure img {

}

#instructor #instructor_cont .figure img:first-child {
top:-30px;
position:absolute;
height:200px;
right:140px;
width:auto;
}

#instructor #instructor_cont .figure img:nth-child(2) {
top:-30px;
position:absolute;
height:200px;
right:70px;
width:auto;
z-index:1;
}

#instructor #instructor_cont .figure img:nth-child(3) {
top:-30px;
position:absolute;
height:200px;
right:15px;
width:auto;
}


/*---------------------------------------------
gallery
---------------------------------------------*/
#gallery {
padding:50px 0;
overflow:hidden;
}

#gallery ol.slideshow {
align-items:center;
column-gap:60px;
display:flex;
justify-content:space-between;
animation: loop-slide 60s infinite linear 1s both;
-webkit-animation: loop-slide 60s infinite linear 1s both;
flex:0 0 100%;
}

#gallery ol.slideshow li {
flex:0 0 auto;
width:256px;
height:auto;
}

#gallery ol.slideshow li a {
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#gallery ol.slideshow li a.lazyloaded {
opacity:1;
}

#gallery ol.slideshow li.lazyloaded {
opacity:1;
}

#gallery ol.slideshow li img {
border-radius:10px;
height:auto;
min-height:308px;
width:100%;
object-fit:cover;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#gallery ol.slideshow li img.lazyloaded {
opacity:1;
}

@-webkit-keyframes loop-slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes loop-slide {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
#gallery.slide_paused:hover ol.slideshow { -webkit-animation-play-state:paused; animation-play-state: paused; }
#gallery.slide_paused:active ol.slideshow { -webkit-animation-play-state:paused; animation-play-state:paused; }

/*---------------------------------------------
voice
---------------------------------------------*/
#voice {
padding-bottom:150px;
padding-left:320px;
position:relative;
overflow:hidden;
}

#voice:before {
background-image:url(../img/top/mainvisual_03a_figure.png);
background-position:center bottom;
background-size:contain;
background-repeat:no-repeat;
content:" ";
position:absolute;
display: block;
/*left:calc(8vw * -1);*/
left:160px;
bottom:0;
height:580px;
width:366px;
width:20vw;
z-index:2;
}

/*
#voice:before {
background-image:url(../img/common/t_voice_op30.png);
background-position:center center;
background-size:188px 56px;
background-repeat:no-repeat;
content:" ";
position:absolute;
left:40px;
bottom:130px;
height:56px;
width:188px;
z-index:1;
}*/


#voice:after {
background-image:url(../img/common/i_circle_op30.png);
background-position:center center;
background-size:780px 780px;
background-repeat:no-repeat;
content:" ";
position:absolute;
right:-200px;
top:-300px;
height:780px;
width:780px;
z-index:1;
}

#voice #voice_cont {
display:flex;
padding:50px 50px 50px 6vw;
position:relative;
background-color:var(--blue03);
border-radius:20px;
overflow:hidden;
width:calc(100% -  30px);
}

#voice #voice_cont:before {
background-image:url(../img/common/i_quote_op30.png);
background-position:center center;
background-size:177px 126px;
background-repeat:no-repeat;
content:" ";
position:absolute;
left:30px;
top:-30px;
height:126px;
width:177px;
z-index:1;
}

#voice #voice_cont:after {
background-image:url(../img/common/i_quote_op30.png);
background-position:center center;
background-size:177px 126px;
background-repeat:no-repeat;
content:" ";
position:absolute;
left:80px;
bottom:-30px;
height:126px;
width:177px;
z-index:1;
}

#voice #voice_cont #voice_left {
align-items:center;
display:flex;
flex-direction:column;
justify-content:center;
flex: 0 0 280px;
row-gap:30px;
z-index:2;
}

#voice #voice_cont #voice_left h2 {
align-items:center;
display:flex;
flex-direction:column;
justify-content:center;
row-gap:10px;
}

#voice #voice_cont #voice_left h2 span:first-child {
color:var(--black);
font-weight:600;
font-size:2.8rem;
}

#voice #voice_cont #voice_left h2 span.en {
color:var(--white);
font-weight:600;
font-size:1.2rem;
opacity:0.6;
}

#voice #voice_cont #voice_left .icon {
}

#voice #voice_cont #voice_left .icon img {
height:auto;
width:140px;
}

#voice #voice_cont #voice_left .detail {
display:flex;
justify-content:center;
}

#voice #voice_cont #voice_left .detail a {
background-color:var(--white);
border-radius:25px;
display:flex;
flex:1 1 100%;
font-size:1.3rem;
font-weight:600;
justify-content:center;
padding:15px 60px;
position:relative;
width:100%;
}

#voice #voice_cont #voice_left .detail a:after {
content:"\f054";
color:var(--gray_dd);
font-family:var(--icon);
font-size:1.1rem;
font-weight:600;
right:15px;
top:50%;
margin-top:-5px;
opacity:1;
position:absolute;
z-index:3;
}

#voice #voice_cont #voice_left .detail a:hover {
background-color:var(--light_yellow);
}

#voice #voice_cont #voice_right .voice {
display:grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: repeat(8, 1fr);
grid-column-gap: 30px;
grid-row-gap: 30px;
max-height:600px;
grid-auto-flow: row;
grid-auto-columns: 200px;
}

#voice #voice_cont #voice_right .voice li {
background-color:var(--white);
border-radius:10px;
padding:15px 20px 20px;
position:relative;
}

#voice #voice_cont #voice_right .voice li:before {
background-image:url(../img/common/i_quote_blk.png);
background-position:center center;
background-size:29px 21px;
background-repeat:no-repeat;
content:" ";
position:absolute;
left:20px;
top:-14px;
height:21px;
width:29px;
z-index:1;
}

#voice #voice_cont #voice_right .voice li:after {
border-radius:6px;
box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.2);
content:" ";
height: 48px;
aspect-ratio: cos(30deg);
clip-path: polygon(0 0,100% 50%,0 100%);
background-color:var(--white);
position:absolute;
bottom:-20px;
right:20px;
}

#voice #voice_cont #voice_right .voice1 { grid-area: 1 / 1 / 3 / 2; }
#voice #voice_cont #voice_right .voice2 { grid-area: 1 / 2 / 4 / 3; }
#voice #voice_cont #voice_right .voice3 { grid-area: 1 / 3 / 5 / 4; }
#voice #voice_cont #voice_right .voice4 { grid-area: 3 / 1 / 7 / 2; }
#voice #voice_cont #voice_right .voice5 { grid-area: 4 / 2 / 6 / 3; }
#voice #voice_cont #voice_right .voice6 { grid-area: 5 / 3 / 8 / 4; }
#voice #voice_cont #voice_right .voice7 { grid-area: 7 / 1 / 9 / 2; }
#voice #voice_cont #voice_right .voice8 { grid-area: 6 / 2 / 9 / 3; }
#voice #voice_cont #voice_right .voice9 { grid-area: 8 / 3 / 9 / 4; }

#voice #voice_cont #voice_right .voice li dl {
column-gap:10px;
display:flex;
position:relative;
z-index:3;
}

#voice #voice_cont #voice_right .voice li dl dt {
align-items:center;
display:flex;
flex-direction:column;
justify-content:center;
flex: 1 0 52px;
row-gap:10px;
min-width:52px;
}

#voice #voice_cont #voice_right .voice li dl dt img {
border:1px solid var(--gray_dd);
border-radius:50%;
height:52px;
object-fit:cover;
width:52px;
}

#voice #voice_cont #voice_right .voice li dl dt span {
font-size:1.2rem;
font-weight:600;
}

#voice #voice_cont #voice_right .voice li dl dd {
overflow: hidden;
}

#voice #voice_cont #voice_right .voice li dl dd span {
font-size:1.4rem;
line-height:1.7;
display: -webkit-box;
overflow: hidden;
text-overflow: ellipsis;
-webkit-box-orient: vertical;
-webkit-line-clamp:3;
}

#voice #voice_cont #voice_right .voice li dl.pattern2 {
flex-direction:column;
row-gap:5px;
}

#voice #voice_cont #voice_right .voice li dl.pattern3 {
}

#voice #voice_cont #voice_right .voice li dl.pattern3 dl dt {
position:absolute;
left:50%;
margin-left:26px;
}

#voice #voice_cont #voice_right .voice li.voice1 dl dd span {
-webkit-line-clamp:3;
}

#voice #voice_cont #voice_right .voice li.voice2 dl dd span {
-webkit-line-clamp:6;
}

#voice #voice_cont #voice_right .voice li.voice3 dl dd span {
-webkit-line-clamp:6;
}

#voice #voice_cont #voice_right .voice li.voice4 dl dd span {
-webkit-line-clamp:6;
}

#voice #voice_cont #voice_right .voice li.voice6 dl dd span {
-webkit-line-clamp:6;
}

#voice #voice_cont #voice_right .voice li.voice7 dl dd span {
-webkit-line-clamp:6;
}

#voice #voice_cont #voice_right .voice li.voice8 dl dd span {
-webkit-line-clamp:6;
}


/* 0.5秒間かけてフェードイン */
.fadeUp .fadeIn500ms {
    animation-name: fadeIn500ms;
    animation-delay: 500ms;
    animation-duration: 1.5s;
    animation-fill-mode: forwards;
    opacity: 0;
    transform: translateY(30px);
}
@keyframes fadeIn500ms {
    0% {
    }
    100% {
        opacity: 1;
        transform: translateY(-0);
　　}
}
/* 1秒間かけてフェードイン */
.fadeUp .fadeIn1s {
    animation-name: fadeIn1s;
    animation-delay: 1s;
    animation-duration: 1.5s;
    animation-fill-mode: forwards;
    opacity: 0;
    transform: translateY(30px);
}
@keyframes fadeIn1s {
    0% {
    }
    100% {
        opacity: 1;
        transform: translateY(-0);
　　}
}
/* 1.5秒間かけてフェードイン */
.animation_on .fadeIn1500ms,
.fadeUp .fadeIn1500ms {
    animation-name: fadeIn1500ms;
    animation-delay: 1500ms;
    animation-duration: 1.5s;
    animation-fill-mode: forwards;
    opacity: 0;
    transform: translateY(30px);
}
@keyframes fadeIn1500ms {
    0% {
    }
    100% {
        opacity: 1;
        transform: translateY(-0);
　　}
}
/* 2秒間かけてフェードイン */
.fadeUp .fadeIn2s {
    animation-name: fadeIn2s;
    animation-delay: 2s;
    animation-duration: 1.5s;
    animation-fill-mode: forwards;
    opacity: 0;
    transform: translateY(30px);
}
@keyframes fadeIn2s {
    0% {
    }
    100% {
        opacity: 1;
        transform: translateY(-0);
　　}
}
/* 2.5秒間かけてフェードイン */
.fadeUp .fadeIn2500ms {
    animation-name: fadeIn2500ms;
    animation-delay: 2500ms;
    animation-duration: 1.5s;
    animation-fill-mode: forwards;
    opacity: 0;
    transform: translateY(30px);
}
@keyframes fadeIn2500ms {
    0% {
    }
    100% {
        opacity: 1;
        transform: translateY(-0);
　　}
}
/* 3秒間かけてフェードイン */
.fadeUp .fadeIn3s {
    animation-name: fadeIn3s;
    animation-delay: 3s;
    animation-duration: 1.5s;
    animation-fill-mode: forwards;
    opacity: 0;
    transform: translateY(30px);
}
@keyframes fadeIn3s {
    0% {
    }
    100% {
        opacity: 1;
        transform: translateY(-0);
　　}
}
/* 3.5秒間かけてフェードイン */
.fadeUp .fadeIn3500ms {
    animation-name: fadeIn3500ms;
    animation-delay: 3500ms;
    animation-duration: 1.5s;
    animation-fill-mode: forwards;
    opacity: 0;
    transform: translateY(30px);
}
@keyframes fadeIn3500ms {
    0% {
    }
    100% {
        opacity: 1;
        transform: translateY(-0);
　　}
}

/*---------------------------------------------
hirakyo_channel
---------------------------------------------*/
#hirakyo_channel {
background-color:var(--white);
display:flex;
flex-direction:column;
justify-content:center;
flex:1;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
padding:30px 320px 50px;
position:relative;
z-index:1;
width:100%;
}

#hirakyo_channel.lazyloaded {
opacity:1;
}

#hirakyo_channel #channel_photo_left {
height:100%;
left:0;
top:0;
overflow:hidden;
position:absolute;
width:240px;
}

#hirakyo_channel #channel_photo_left ul {
display:flex;
height:100%;
flex-direction:column;
justify-content:space-between;
margin-top:-50px;
row-gap:30px;
animation: loop-slideY 60s infinite linear 1s both;
-webkit-animation: loop-slideY 60s infinite linear 1s both;
}

#hirakyo_channel #channel_photo_left ul li {
min-height:300px;
}

#hirakyo_channel #channel_photo_left ul li img {
border-radius:0 30px 30px 0;
height:300px;
object-fit:cover;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#hirakyo_channel #channel_photo_left ul li img.lazyloaded {
opacity:1;
}

#hirakyo_channel #channel_photo_right {
height:100%;
overflow:hidden;
right:0;
top:0;
position:absolute;
width:240px;
}

#hirakyo_channel #channel_photo_right ul {
display:flex;
height:100%;
flex-direction:column;
justify-content:space-between;
margin-top:-50px;
row-gap:30px;
animation: loop-slideY2 60s infinite linear 1s both;
-webkit-animation: loop-slideY2 60s infinite linear 1s both;
}

#hirakyo_channel #channel_photo_right ul li {
min-height:300px;
}

#hirakyo_channel #channel_photo_right ul li img {
border-radius:30px 0 0 30px;
height:300px;
object-fit:cover;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#hirakyo_channel #channel_photo_right ul li img.lazyloaded {
opacity:1;
}

@-webkit-keyframes loop-slideY {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(100%);
  }
}
@keyframes loop-slideY {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(100%);
  }
}

@-webkit-keyframes loop-slideY2 {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-700px);
  }
}
@keyframes loop-slideY2 {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-700px);
  }
}


#hirakyo_channel #hirakyo_channel_cont {
padding: 30px 0 0;
display: flex;
align-items: start;
justify-content: start;
flex-direction: column;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-nav {
background-color:var(--white);
border-radius:6px 6px 0 0;
width:100%;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-title {
display:flex;
flex-direction:column;
/*padding:30px 30px 0;*/
padding:0;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-title h3 {
align-items:center;
column-gap:10px;
display:flex;
justify-content:start;
padding-bottom:15px;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-title h3 img {
height:30px;
width:auto;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-title h3 span {
font-weight:600;
font-size:1.6rem;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-title p {
font-size:1.3rem;
line-height:1.4;
padding-bottom:10px;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-box {
background-color:var(--blue03);
border-radius:0 0 10px 10px;
display:block;
flex-direction: unset;
padding:30px;
width:100%;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-box .js-tab-content {
align-content: start;
align-items: start;
background-color: var(--white);
border-radius:10px;
display: none;
flex-direction: column;
height:760px;
padding: 30px;
justify-content: start;
overflow-y:scroll;
position:relative;
width:100%;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-box .js-tab-content.selected {
display:flex;
opacity:1;
row-gap: 20px;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-box .js-tab-content h4 {
font-weight:600;
font-size:1.6rem;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-box .js-tab-content ul {
border-top:1px solid var(--gray_dd);
column-gap:20px;
display:flex;
justify-content:start;
padding:20px 0;
width:100%;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-box .js-tab-content ul:last-child {
border-bottom:1px solid var(--gray_dd);
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-box .js-tab-content ul li {
background-color: var(--blue01);
border-radius: 10px;
display:flex;
flex-direction:column;
padding: 20px;
row-gap:15px;
min-width: calc(100% / 2 - 10px);
max-width: calc(100% / 2 - 10px);
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-box .js-tab-content ul li .movie {
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-box .js-tab-content ul li .movie.lazyloaded {
opacity:1;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-box .js-tab-content ul li .movie iframe {
height:auto;
opacity:0;
-webkit-transition:opacity 3s;
transition: opacity 3s;
width:100%;
}

#hirakyo_channel #hirakyo_channel_cont .js-tab-box .js-tab-content ul li .movie iframe.lazyloaded {
opacity:1;
}

dl.explain {
display:flex;
flex-direction:column;
row-gap:10px;
}

dl.explain dt {
color:var(--blue);
font-size:1.5rem;
font-weight:600;
line-height:1.4;
}

dl.explain dd {
font-size:1.4rem;
line-height:1.6;
}

/*--- instagram ---*/
#instagram_widget {
margin: 0 auto;
position: relative;
width: 100%;
}

/*--- facebook ---*/
#facebook_frame {
height: 700px;
max-width: 500px;
margin: 0 auto;
position: relative;
width: 100%;
}

.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget iframe[style]{
width: 100% !important;
}

/*--- twitter ---*/
#twitter_widget {
height: 700px;
max-width: 500px;
margin: 0 auto;
position: relative;
width: 100%;
}

/*--- event ---*/
.movie iframe {
width: 600px;
height: 400px;
margin: 0 auto;
display: block;
}



/*---------------------------------------------
.close_left_nav
---------------------------------------------*/
#container.close_left_nav #main #main_cont {
margin-right: auto;
/*padding:0;*/
width:100%;
}

#container.close_left_nav #main #main_left {
padding: 0 30px 30px 30px;
}

#container.close_left_nav #main_visual {
width:calc(100% - 30px);
}

#container.close_left_nav #important_info {
padding-left: 30px;
}

#container.close_left_nav #main #main_middle {
padding: 0 0 30px 30px;
width:100%;
}


@media screen and (min-width:1280px) {
#main_visual ol li.new_motor .new_motor_cont .pic {
justify-content: center;
}

#main_visual ol li.new_motor .new_motor_cont .pic.pc img:first-child {
top: calc(3vw + 120px);
}

#main_visual ol li.new_motor .new_motor_cont .pic.pc img:nth-child(2) {
right:auto;
}

}


@media screen and (min-width:1680px) {
#student #student_cont .sub_menu li,
#student #student_cont .sub_menu li.school_bus {
max-width:calc(100% / 2 - 5px);
}
#license #license_cont .license_motor {
max-width: 400px;
flex:0 1 40%;
}
#license #license_cont .other_menu li {
max-width:calc(100% / 2 - 15px);
}
#student #student_cont .sub_menu li a dl dt,
#student #student_cont .sub_menu li a dl dt img {
height:160px;
}
#course #course_cont #course_menu .menu a dl dt,
#course #course_cont #course_menu .menu a dl dt img {
height:220px;
}

}
