@charset "utf-8";

body{background:#00913a;
font-family: 'Noto Serif JP', serif; color: #333333;
font-size:1rem; line-height:1.85;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-webkit-text-size-adjust: 100%; 
word-wrap: break-word;
}

body.appear{background:#efefef;}
*{box-sizing: border-box;}
#container{overflow-x: hidden;}

/* header */
#header{background:#ffffff;}
#header h1{font-size: 1.2rem; letter-spacing: 0.1em;
position: absolute;
top: 25px;
left:50%;
transform: translateX(-50%);
color:#182578;
}

#g-nav ul{display: flex; padding: 0 0 0 5%;}
#g-nav ul li{letter-spacing: 0.1em; white-space: nowrap;}
#g-nav ul li:last-child{/*display: none;*/}
#g-nav ul li a{display: block; padding:5px 15px;}

#header ul#utility-navi{position: fixed;
top:0;
right:0;
z-index: 999;
display: flex;
font-size: 0.8rem;
}

#header ul#utility-navi li{text-align: center;}
#header ul#utility-navi li span{display: block;}
#header ul#utility-navi li a{color: #ffffff; padding: 15px 0;
display: block;
width:100px;
transition: all .5s;
}

#header ul#utility-navi li img{width:35%;}
#header ul#utility-navi li:first-child a{background:#67b952;}
#header ul#utility-navi li:first-child a:hover{background:#777777;}
/*
#header ul#utility-navi li:last-child a{background:#67b952;}
#header ul#utility-navi li:last-child a:hover{background:#777777;}
*/


/* lead */
/*
#lead{position: relative; padding: 80px 0 0 0; height:100vh;}
#slider-area{width:80%; height: 80vh; position: relative; top: 0; left:0; z-index: -1;}
#slider-area #slider{width:80%; height:80vh;}
*/
#lead{position: relative; padding: 80px 0 0 0; height:100vh;}
#slider-area{width:100%; height: 88vh; position: relative; top: 0; left:0; z-index: -1;}
#slider-area #slider{width:100%; height:88vh;}

#lead h2.heading{position: absolute; top:280px; text-align: center;
bottom:  0;                 /* 下からの位置指定 */
left:  0;                   /* 左からの位置指定 */
right:  0;                  /* 右からの位置指定 */
margin:  auto;              /* 位置調整と組み合わせて上下中央に */
 animation-delay: 0.8s;}

#lead h3.heading{position: absolute; top:200px; left:10%; font-size: 1.5em; font-weight: bolder; color: #ffffff; animation-delay: 0.3s; text-shadow: 0 0 0.5em rgba(255,255,255,1);}
#lead p.leadup{position: absolute; top:200px; left:10%; font-size: 1.1em; color: #ffffff; letter-spacing: 0.2em; line-height: 1.6; white-space: nowrap;}
#lead p.lead{position: absolute; top:380px; right:4%; font-size: 1.3em; color: #ffffff; letter-spacing: 0.2em; line-height: 1.6; white-space: nowrap; animation-delay: 0.3s;}
#lead .lead span{display: block; padding: 0; font-size: 0.8em;}

/* new */
#news{position: relative;/*position: absolute; left: 0; bottom: 0; */background:#ffffff; width:50%; z-index: 2; padding: 22px; box-shadow: 3px 3px 8px 0px rgba(0, 0, 0, 0.4);}
#news h2{position: relative; font-size:1.3rem; color:#333333; margin: 0 0 30px 0; border-bottom: 3px solid #DCDDDD;}
#news h2::before{
content:'';
position: absolute;
width:20%;
height: 3px;
left:0;
bottom:-3px;
z-index: 2; background-color: #E64915;}
#news h2 span{font-size:1rem; color:#333333;}
#news li{margin:0 0 10px 0;}
#news li a{transition: all .3s;}
#news li a:hover{background:#eeeeee;}
#news li time{display: inline-block; padding:0 20px 0 0; font-size:0.8rem; color: #999999;}
#news p{margin: 0 8px 8px;}


/* service ***************************************/
#service{position: relative; text-align: center; padding: 100px 0 0 0;}
#service header{background:#00913a; color: #ffffff; width:95%; padding: 50px 0 100px 0; z-index: 1;
background-image: url(../imges/top_service-headercontents_bg.jpg);
background-size:contain;
background-repeat: no-repeat;
background-position:right top;
text-align:left;}
#service header h2{font-size: 1.2rem; margin: 0 0 10px 18px; letter-spacing: 0.1em;}
#service header p{margin: 0 0 0px 18px;}
#service header p br{display: none;}
#service .service-area{background:#ffffff; padding: 70px; width:85%; position: relative; top:-50px; left: 0%; z-index: 2; box-shadow: 3px 3px 8px 0px rgba(0, 0, 0, 0.4);}
#service .service-area ul{display: flex; flex-wrap: wrap; justify-content:space-around;
/* スマホ表示用。flipDownを指定している親要素に指定しないとうまく動かない*/
transform:  translate3d(0, 0, 0);}
#service .service-area ul li{opacity: 0; width:31%; padding: 0 0 2% 0; font-size: 1em; line-height:1.2;}
#service .service-area ul li:first-letter{font-size: 2em;}
#service .service-area ul li span{display: block; width:100%; padding: 0;}
#service .service-area ul li span.text{display: block; }
#service .service-area ul li span.img{display: block; width:auto; padding: 0;}
#service .service-area ul li a{display: block;}

/* history-news***************************************/
    #history-news{position: relative; padding:70px; margin: 100px auto;}
    #history-news h2{z-index: 2; font-size:1.5em; font-weight: bolder; color: #e8461e;}
    #history-news h2 span{font-size: 0.7em; font-weight: normal; color: #555555; margin: auto 8px;}
    #history-news img{max-width: 100%; height: auto; /*border: none*/ border: solid 1px #eeeeee; margin:0 auto 8px; padding:0;}
    .history-news-area{display: flex; justify-content: space-between; flex-wrap: wrap;}
        /* history-img***************************************/
    .history-news-img{width:38%; padding: 0 0.5%;}  /* width:48%でハーフ */
    .history-news-img .event{margin:0 auto; animation-delay: 0.3s;}
        /* history-content***************************************/
    .history-news-content{width:58%; padding: 0 1%;}  /* width:48%でハーフ */
    .history-news-content .course-list{display: flex; justify-content: space-around; flex-wrap: wrap; align-items: stretch; margin:0 auto; animation-delay: 0.3s;}
    .history-news-content .course-list menu{width:24%; /*width:32.3%;*/ background: #ffffff; position: relative; /*box-shadow: 10px 10px 0 rgba(0,0,0,0.1);*/
    margin:0 0.5% 0.5%; padding:4px; /*border-radius: 5px;*/ border:solid 1px #cccccc;}
    .history-news-content .course-list menu p{margin:0 auto; line-height:1.5;}
    .history-news-content .course-list menu p span{padding:0 2px;}


/* ho-menu***************************************/
#ho-menu{position: relative; padding:70px 70px 0; margin: 100px auto 0; background:#ffffff; border-top:solid 1px #cccccc; /*border-bottom:solid 1px #cccccc;*/}
#ho-menu h2{z-index: 2; font-size:1.5em; font-weight: bolder; color: #036eb8;}
#ho-menu h2 span{font-size: 0.7em; font-weight: normal; color: #555555; margin: auto 8px;}
#ho-menu p{margin: 0 auto 18px;}
.ho-menu-area{display: flex; justify-content: space-between; flex-wrap: wrap; margin: 2% auto 0;}
.ho-menu-img{width:39%; padding: 0;
background-image: url("../img/ho-menu-img001.jpg");
background-size: contain;
/*background-size:cover;*/
background-repeat: no-repeat;
background-position:bottom right;}
.ho-menu-img .event{margin:0 auto; animation-delay: 0.3s;}
.ho-menu-content{width:59%; padding: 0 0.5%;}
.ho-menu-content img{max-width: 100%; height: auto; margin:0 auto 8px; padding:0; border: solid 1px #cccccc;}
.ho-menu-content .course-list{display: flex; justify-content: space-around; flex-wrap: wrap; align-items: stretch; margin:0 auto; animation-delay: 0.3s;}
.ho-menu-content .course-list p{margin:0 auto; line-height:1.5;}
.ho-menu-content .course-list menu{width:48%; background: #ffffff; position: relative; /*box-shadow: 10px 10px 0 rgba(0,0,0,0.1);*/
margin:0 1% 1%;
padding:0;
/*border-radius: 5px;*/
/*border:solid 1px #cccccc;*/}
.ho-menu-content .course-list menu p{margin:0 auto; line-height:1.5;}
.ho-menu-content .course-list menu p span{padding:0 2px;}
#ho-menu-sub{position: relative; padding:70px; margin: 0 auto 100px; background:#ffffff; /*border-top:solid 1px #cccccc;*/ border-bottom:solid 1px #cccccc;}
#ho-menu-sub h2{z-index: 2; font-size:1.5em; font-weight: bolder; color: #036eb8; margin:0 auto 22px;}
#ho-menu-sub h2 span{font-size: 0.7em; font-weight: normal; color: #555555; margin: auto 8px;}
#buyandsell{position: relative; padding:70px; margin: 100px auto;}
#buyandsell h2{z-index: 2; font-size:1.5em; font-weight: bolder; color: #036eb8;}
#buyandsell h2 span{font-size: 0.7em; font-weight: normal; color: #555555; margin: auto 8px;}
#buyandsell p{margin: 0 auto 18px;}
#buyandsell ul{margin: 0 auto 20px;}
.buyandsell-area{display: flex; justify-content: space-between; flex-wrap: wrap; margin: 2% auto;}
.buyandsell-img{width:48%; padding: 0 1%;
/*    background:url("../img/buyandsell-img001.jpg") no-repeat center;
    background-size: cover;
    height: auto;
    width:48%;
*/
}
.buyandsell-content{width:48%; padding: 0 0.5%;}
.buyandsell-content h3,
.buyandsell-content p,
.buyandsell-content .buyandsell-btn{letter-spacing: 0.1em;}
.buyandsell-content h3 {font-size: 1.2em; font-weight:normal; color: #333333; margin:18px auto 8px; border-bottom: 1px solid #cccccc;}
.buyandsell-content h3 span {font-size: 0.8em; font-weight:normal; color: #888888; margin:auto 18px;}


/*==========================================
 contentCSS
===========================================*/
/* related-title ---------------------------------------*/
.related-title {text-align:center; margin:122px auto 0; padding:0;}
.related-title h4 {font-size: 1.3em; font-weight: normal; margin:18px auto; color: #333333; letter-spacing:2px; line-height: 1.5em; position: relative;text-align: center;}
.related-title h4 span {position: relative; z-index: 2; display: inline-block; margin: 0 4em; padding: 0 1em; background-color: #efefef; text-align: center;}
.related-title h4::before {position: absolute; top: 50%; z-index: 1; content: ''; display: block; width: 100%; height: 1px; background: #bbbbbb;
background: -webkit-linear-gradient(-45deg, transparent, #bbb 10%, #bbb 90%, transparent);
background: linear-gradient(-45deg, transparent, #bbb 10%, #bbb 90%, transparent);}

/* related_stage-contents ---------------------------------------*/
.related_stage-contents {text-align:left; margin: 48px auto;}
.related_stage-contents p{margin:0 auto 8px;}
.related_stage-contents section {width: 100%;}
.related_stage-contents article {width: 100%; margin:88px auto; padding:0;}
.related_stage-contents aside {width: 100%; margin:88px auto; padding:88px 0;}
.related_stage-contents h3 {font-size: 1.3em; font-weight:normal; color: #231815; margin:8px auto 4px; border-bottom: 1px solid #cccccc;}
.related_stage-contents h3 span {font-size: 0.8em; font-weight:normal; color: #888888; margin:auto 18px;}
.related_stage-contents .course-list{display: flex; justify-content: space-around; flex-wrap: wrap; align-items: stretch;}
.related_stage-contents .course-list aside{width:48%; position: relative; margin:1%; padding:20px 20px 50px 20px; border:solid 1px #cccccc;}
.related_stage-contents .white{width: 100%; background:#ffffff;}

.related_stage-contents-service-area{background:#ffffff; padding: 70px; width:85%; position: relative; top:-50px; left: 0%; z-index: 2; box-shadow: 3px 3px 8px 0px rgba(0, 0, 0, 0.4);}
.related_stage-contents-service-area ul{display: flex; flex-wrap: wrap; justify-content:space-around;
/* スマホ表示用。flipDownを指定している親要素に指定しないとうまく動かない*/
transform:  translate3d(0, 0, 0);}
.related_stage-contents-service-area ul li{opacity: 0; width:31%; padding: 0 0 2% 0; font-size: 1em; line-height:1.2;}
.related_stage-contents-service-area ul li:first-letter{font-size: 2em;}
.related_stage-contents-service-area ul li span{display: block; width:100%; padding: 0;}
.related_stage-contents-service-area ul li span.text{display: block; }
.related_stage-contents-service-area ul li span.img{display: block; width:auto; padding: 0;}
.related_stage-contents-service-area ul li a{display: block;}


/* footer ************************************/
#footer{position: relative; display: flex; justify-content: space-between; flex-wrap:wrap; flex-direction: row-reverse;}
#footer address {font-size: 1em;}
#footer .footer-r{width:50%; padding: 80px 80px 0; /*background:#CDBBA5;*/ color: #ffffff;
    background:url("../imges/footer-bkg.jpg") no-repeat center bottom;
    background-size: cover;
    /*height: 50vh;*/
}
#footer .footer-r .footer-contact{height: 48vh;}
#footer .footer-r .footer-contact p{margin:18px auto 22px;}

#footer .footer-l{width:50%; background:#ffffff;}
#footer .footer-l .footer-contact{display: flex; justify-content: space-evenly; align-items: center; text-align: center; background: #ffffff; height: 48vh;}
#footer .footer-l .footer-contact-area h2{font-size: 1.8rem; font-weight:normal; margin: 0 0 18px 0; letter-spacing: 0.1em; color:#182578;}
#footer .footer-l .footer-contact-area h2 span{font-size: 1.2rem; font-weight:normal; margin:2px;}
#footer .footer-l .footer-contact-area a:link,
#footer .footer-l .footer-contact-area a:visited {color: #182578; text-decoration: none;}
#footer .footer-l .footer-contact-area a:hover,
#footer .footer-l .footer-contact-area a:active {color: #888888; text-decoration: none;}

#footer .footer-c{width:100%; padding: 80px 80px 80px; /*background:#CDBBA5;*/ color: #ffffff;
    background:url("../imges/footer_c-bkg.jpg") no-repeat center;
    background-size: cover;
    /*height: 50vh;*/
}

#footer #page-top{
position: absolute;
bottom:0;
right: 0;
width:80px;
height:80px;
background:#eeeeee;
display: flex;
justify-content: center;
align-items: center;
cursor: pointer;
}

#footer #page-top span{
display: inline-block;
width: 15px;
height: 15px;
border-top:2px solid #182578;
border-left: 2px solid #182578;
transform: rotate(45deg);
}

/*==========================================
 footer
===========================================*/
#footermenu {width: 100vw; margin:0 auto 0; padding: 88px 33px; background-color:#00913a; color: #ffffff;}
#footermenu a:link,
#footermenu a:visited {color: #ffffff; text-decoration: none;}
#footermenu a:hover,
#footermenu a:active {color: #a5cd53; text-decoration: none;}
.content_nav {overflow: hidden; float: left; font-size:1em;}
.content_nav ul{margin: 0; padding: 0; list-style: none}
.content_nav li {float: left; margin: 0 8px; padding: 0;}
.content_nav li a:before {color:#ffffff; margin:0 4px; font-family: "Font Awesome 6 Free"; font-weight: 900; content: "\f105";}
.content_nav li.none {display: none;}

.company_nav {overflow: hidden; float: left; font-size:0.8em;}
.company_nav ul{margin: 0; padding: 0; list-style: none}
.company_nav li {float: left; margin: 0 8px; padding: 0;}
.company_nav li a:before {color:#ffffff; margin:0 4px; font-family: "Font Awesome 6 Free"; font-weight: 900; content: "\f105";}
.company_nav li.none {display: none;}
#footermenu address {overflow: hidden; font-size: 0.8em; float: right;}
#footermenu hr {overflow: hidden; width: 100%; border:1px solid #ffffff; margin: 20px 0;}


/*==========================================
 footer_fixedarea PC Tbios off
===========================================*/
#footer_fixedarea {z-index: 8888; margin:0 auto; padding: 8px 0; text-align: center;}




