@charset"utf-8";

header {position:fixed;top:0;z-index:999;width:100%; background:#fff;}
#header-wrap{position:relative;width:90%;margin:0 auto; text-align:right;}
#header-wrap h1{position:absolute;line-height:100px}
#header-wrap nav li{position:relative;display:inline-block;}
#header-wrap nav > ul > li > a{line-height:100px; font-size:20px; padding:0 25px; font-weight:600}
#header-wrap nav > ul >  li:hover > a{color:#ec6800}
#header-wrap nav li:last-child a{padding-right:0}
#header-wrap nav li ul{display:none;position:absolute;left:0;z-index:999; width:200px;text-align:left;}
#header-wrap nav li.open ul{display:block; background:#0052a5; color:#fff}
#header-wrap nav li li{height:40px;width:100%;border-bottom:1px solid rgba(255,255,255,.1)}
#header-wrap nav li li a{display:inline-block; width:100%;line-height:40px; padding:0 10px}
#header-wrap nav li li:hover{background:#003b76}

.main-visual{position:relative;width:90%;height:550px; margin:0 auto; overflow:hidden;margin-top:100px;}
.slid-txt{position:absolute;z-index:99;width:450px; right:8%;top:50%;-webkit-transform: translateY(-50%); -moz-transform: translateY(-50%);-ms-transform: translateY(-50%); -o-transform: translateY(-50%); transform: translateY(-50%);}
.slid-txt .tit{font-size:45px; font-weight:200}
.slid-txt .tit strong{display:block; font-weight:600}
.bg-01{height:550px;background:url(../images/visual-01.png) no-repeat 50% 50%; background-size:cover;}
.bg-02{height:550px;background:url(../images/visual-02.png) no-repeat 50% 50%; background-size:cover}
.slid-btn{position:absolute;z-index:991; bottom:0; width:70px; height:70px; background:#fff; cursor:pointer}
.slid-btn.button-next{right:0;background:#fff url(../images/btn-next.png) no-repeat 50% 50%;}
.slid-btn.button-prev{right:70px;background:#fff url(../images/btn-prev.png) no-repeat 50% 50%;}
.slid-btn.button-prev:after{position:absolute; content:''; width:1px; height:14px;background:#666; right:0;top:50%;margin-top:-7px}

.business{width:90%; max-width:1280px;padding:120px 0; margin:0 auto}
.main-con{position:relative;}
.main-con:before{content:'';position:absolute; top:0; left:50%;width:1px; height:80px; background:#000; border:0}
.main-con h2,.sub_container h3{font-size:45px; font-weight:200;text-align:center}
.sub_container h3{position:relative;font-weight:600; padding-top:100px;}
.sub_container h3:before{content:'';position:absolute; top:0; left:50%;width:1px; height:80px; background:#000; border:0}
.main-con h2 span,.sub_container h3 span{text-transform:uppercase; font-weight:400; color:#aaa;display:block;font-size:14px; letter-spacing:15px}
.main-con h2 span em,.sub_container h3 em{letter-spacing:0} 
.main-con h2 strong{font-weight:600}
.community{background:#f7f5f5;padding:120px 0;}

.business ul{display:flex;flex-wrap:wrap; justify-content:space-between; margin-top:30px }
.business li{position:relative;width:calc(100%/4 - 20px); border:1px solid #ddd; border-radius:5px;overflow:hidden;padding-bottom:40px}
.business li:hover{border:1px solid #ed6e00; box-shadow:10px 1px 10px rgba(0,0,0,.1); }
.business li dl{padding:25px}
.business li dt{font-size:22px; font-weight:600}
.business li dd{font-size:14px; color:#666; margin-top:10px; line-height:1.5;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;word-wrap:break-word;height: 3em;}
.business li p{position:absolute; bottom:0;left:0;padding:0 15px;width:100%;height:40px; line-height:40px; text-align:center; border-top:1px solid #ddd; font-weight:600; color:#999; font-size:14px;vertical-align:middle}
.business li:hover p{background:#ed6e00; color:#fff}
.business li img{width:100%}

.community ul{width:90%; max-width:1280px;margin:0 auto;display:flex;flex-wrap:wrap; justify-content:space-between;margin-top:30px}
.community li{width:calc(100%/3 - 20px);padding:30px;background:#fff; color:#666; line-height:1.5; border:1px solid #ddd; border-radius:5px}
.community li:hover{border:1px solid #000}
.community li p{ width:100%;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;word-wrap:break-word;line-height:1.5; height: 3em;}
.community li .cate{background:#ed6e00; color:#fff; font-size:13px; padding:5px; border-radius:5px}
.community li .tit{font-size:25px; font-weight:500; line-height:1.3; color:#000;margin:15px 0; width:100%;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;word-wrap:break-word;height: 2.6em;}
.community .more{text-align:center; margin-top:30px}
.community .more a{border-bottom:1px solid #000}


footer{padding:30px 0; line-height:1.7;border-top:1px solid rgba(0,0,0,.1)}
.footer_con{width:90%; max-width:1280px; margin:0 auto;}
.footer_con span{display:inline-block; margin-right:20px; color:#666}
.footer_con h4{font-weight:400}
.footer_con .copy{font-size:13px; color:#888}

#sub-visual{position:relative;margin-top:100px; height:250px; background:url(../images/sub-top.png) no-repeat 50% 50%; background-size:cover}
.sub_tit{position:absolute; top:50%; left:0; width:100%; text-align:center; color:#fff;-webkit-transform: translateY(-50%); -moz-transform: translateY(-50%);-ms-transform: translateY(-50%); -o-transform: translateY(-50%); transform: translateY(-50%);font-size:14px}
.sub_tit h2{font-size:40px}
.sub_container{width:90%; max-width:1280px;margin:0 auto 80px auto}
.sub_container h4{font-size:24px;margin-top:80px; margin-bottom:10px}

.board-tab{width:100%;display:flex;flex-wrap:wrap;margin:30px 0 20px 0}
.board-tab li{width:calc(100%/4)}
.board-tab li a{width:100%;display:inline-block; height:50px; line-height:50px; background:#f6f6f6;text-align:center}
.board-tab li.active a,.board-tab li:hover a{background:#ec6800; color:#fff}
.w4 li{width:calc(100%/4)}
.w6 li{width:calc(100%/6)}
.w7 li{width:calc(100%/7)}
.cate select{display:none}
.btype-list .total-num {display:none}

.dot-list li{background:url(../images/ico-dot.png) no-repeat 0 7px; padding-left:10px;margin-top:10px; font-size:14px; line-height:1.2;}
.dot-list li:first-child{margin-top:0}

.greeting{position:relative;margin-top:30px;overflow:hidden}
.greeting .img{position:absolute;z-index:-1;width:50%}
.greeting .img img{width:100%}
.greeting .con{float:right;width:65%;margin-top:100px; background:#f6f6f6;;padding:70px; line-height:1.6}
.greeting .con strong{font-size:27px; font-weight:600}
.greeting .con ul{padding:15px;background:#fff; margin-top:10px; margin-bottom:20px}

.location{display:flex;flex-wrap:wrap;}
.location li{width:50%;display:flex;flex-wrap:wrap;align-items:center;margin-top:10px}
.location li strong,.location li span{display:inline-block}
.location li strong{width:100px; background:#333; height:40px;line-height:40px;; color:#fff; border-radius:50px; text-align:center;}
.location li span{width:calc(100% - 100px); padding-left:20px}

.edu-list,.edu-list2{display:flex; flex-wrap:wrap;width:100%}
.edu-list > li{width:calc(100%/3 - 20px); border:1px solid #ddd; border-radius:5px;margin-right:30px; margin-top:30px; padding:25px; color:#666; line-height:1.5}
.edu-list > li:nth-child(3n){margin-right:0}
.edu-list > li img{width:100%;}
.edu-list > li .tit,.edu-list2 > div .tit{font-size:18px;margin:10px 0; font-weight:600; color:#000}
.edu-list > li .dot-list,.edu-list2 > div .dot-list{margin-top:15px}

.edu-list2{border:1px solid #ddd; padding:25px;margin-top:30px}
.edu-list2 > div.img{width:350px;padding-left:0}
.edu-list2 > div.img img{width:100%}
.edu-list2 > div{width:calc(100% - 350px); padding-left:30px}

.sitelink-wrap{background:#fff;padding:30px 0;}
.sitelink-wrap > div{position:relative;width:calc(90% - 80px); max-width:1200px; margin:0px auto;}
.sitelink-wrap .slid-ban{width:100%;overflow:hidden;}
.sitelink-wrap .slid-ban img{max-width:100%; display:block; border:1px solid #ddd}
.sitelink-wrap  .swiper-button-prev,
.sitelink-wrap  .swiper-container-rtl .swiper-button-next{width:32px; height:32px;bottom:0;left:-40px;}
.sitelink-wrap  .swiper-button-next,
.sitelink-wrap  .swiper-container-rtl .swiper-button-prev{width:32px; height:32px;right:-40px;}
.sitelink-wrap .swiper-slide a{display:inline-block;}

.vision{margin-top:50px;}
.vision .tit{border:3px solid #014199; padding:15px; text-align:center;font-size:20px; color:#fff;margin-bottom:5px;color:#014199; border-radius:50px}
.vision > div:nth-child(n+2){margin-top:20px}
.vision dl{width:100%;display:flex; flex-wrap:wrap;justify-content:space-between}
.vision dt{text-align:center; color:#fff;border-radius:7px;position:relative;width:120px;background:#014199;min-height:60px}
.vision dd{text-align:center; color:#000}
.vision dt span{display:block;position:absolute; width:100%; text-align:center;top:50%;left:0;padding:0 5px;-webkit-transform: translateY(-50%); -moz-transform: translateY(-50%);-ms-transform: translateY(-50%); -o-transform: translateY(-50%); transform: translateY(-50%);}
.vision dd{width:calc(100% - 140px);display:flex; flex-wrap:wrap; justify-content:space-between}
.vision .ex{text-align:center; padding:10px 10px 20px 10px; margin-top:30px; color:red}
.vision dd.vision-con{background:#d4e2fb; border-radius:50px;display:table}
.vision dd.vision-con > div{display:table-cell;vertical-align:middle}

.vision dd.vision-target > div{width:calc(50% - 10px);background:rgba(255,145,37,.4); border-radius:50px; line-height:60px}
.vision dd.vision-target > div:last-child{background:}
.vision dd.vision-strategy > div{width:calc(100%/4 - 30px);position:relative;}
.vision dd.vision-strategy > div:before{content:'';position:absolute;z-index:9; width:14px; height:14px; border:3px solid #ddd;border-radius:100%;right:-26px;top:50%;margin-top:-7px; background:#fff}
.vision dd.vision-strategy > div:after{content:'';position:absolute;z-index:-1; width:50px; height:1px; background:#ddd; border:0; top:50%; right:-50px}
.vision dd.vision-strategy > div:last-child:before,.vision dd.vision-strategy > div:last-child:after{display:none}
.vision dd.vision-strategy > div span{display:block; width:100%; height:0; padding-bottom:100%; border-radius:100%; background:#ddd;position:relative; overflow:hidden}
.vision dd.vision-strategy > div span em{position:absolute;top:50%; left:15px;width:calc(100% - 30px);font-size:1.15em;-webkit-transform: translateY(-50%); -moz-transform: translateY(-50%);-ms-transform: translateY(-50%); -o-transform: translateY(-50%); transform: translateY(-50%);}

.target{position:relative;display:flex; flex-wrap:wrap;justify-content:space-between}
.target > div{width:calc(100%/3 - 20px); border-radius:20px;overflow:hidden}
.target > div img{max-width:100%}

.target-list li{display:flex; flex-wrap:wrap; border:3px solid #ddd; border-radius:7px;margin-top:10px;padding:15px 20px}
.target-list li span{width:calc(100% - 40px); display:inline-block}
.target-list li span.num{width:30px; height:30px;line-height:30px;background:#014199; border-radius:100%; color:#fff;text-align:center;margin-right:10px;margin-top:-3px}
.target-txt{margin-top:40px;padding-top:40px; text-align:center;font-size:1.3em;background:url(/images/quote_img01.png) no-repeat top center;background-size:30px}

@media(max-width:1300px){
.slid-txt{background:rgba(255,255,255,.5); padding:50px 50px;width:480px}
.slid-txt .tit{font-size:40px}

}

@media(max-width:1000px){
#header-wrap{width:100%;}
#header-wrap h1{position:absolute;line-height:70px; padding-left:5%;}
#header-wrap h1 img{height:35px;}
nav ul{display:none}
nav.open ul{position:absolute;width:100%; margin-top:70px;display:block; background:#0052a5}
nav.open li{position:relative;width:100%;text-align:left;color:#fff}
#header-wrap nav.open > ul > li{border-bottom:1px solid rgba(255,255,255,.1)}
#header-wrap nav.open > ul > li > a{height:50px; line-height:50px; font-size:16px; width:100%;}
#header-wrap nav.open > ul > li.open ul{position:relative; width:100%;margin-top:0; background:#003b76}
#header-wrap nav.open > ul > li.open li a{padding:0 30px}
#header-wrap nav.open > ul > li.open li a:before{content:'- '}
#header-wrap nav.open > ul > li.open li:hover a{background:#0058b1}

.toggle-nav{float:right;position:relative;width:70px; height:70px;cursor:pointer;margin-right:5% }
.toggle-nav:after{content:'';position:absolute;top:50%; left:50%;margin-left:-2px; width:15px; height:2px;background:#000;-webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%);-ms-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); transform: translate(-50%, -50%);-webkit-transition: all 0.45s ease-in-out;  transition: all 0.45s ease-in-out;}
.toggle-nav:before{content:'';position:absolute;top:50%; left:50%;height:18px; width:20px; border-top:2px solid #000; border-bottom:2px solid #000;-webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%);-ms-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); transform: translate(-50%, -50%);-webkit-transition: all 0.45s ease-in-out;  transition: all 0.45s ease-in-out;}
.toggle-nav:hover:after{margin-left:0; width:20px}
.toggle-nav.view:after{width:20px;transform:rotate(-45deg); margin:0}
.toggle-nav.view:before{width:20px;height:1px;border-bottom:0;transform:rotate(45deg)}

.main-visual{margin-top:70px}

.slid-txt{width:70%;right:15%;text-align:center;padding:30px;}
.slid-txt .tit{font-size:35px}
.slid-txt p{word-break:keep-all}

.main-con h2, .sub_container h3{font-size:35px}
.business li{width:calc(100%/2 - 15px)}
.business li:nth-child(n+3) {margin-top:30px}
.community li{width:calc(100%/3 - 10px)}
.business li dt{font-size:20px}
.community li{font-size:14px}
.community li .tit{font-size:20px}

.sub_container{font-size:14px;}
#sub-visual{margin-top:70px; height:180px}
.sub_tit h2{font-size:30px}
.sub_tit p{padding:0 10px}

.greeting .con{padding:45px}
.greeting .con strong{font-size:22px}

.location li{width:100%;}

.edu-list{justify-content:space-between}
.edu-list > li{width:calc(100%/2 - 15px);margin-right:0}

.vision .tit{font-size:17px;}


.target p{width:150px}
.target p:nth-child(3),.target p:nth-child(4){width:150px}
.target p:nth-child(3){margin-right:90px}
.target p:nth-child(4){margin-left:90px}


}

@media(max-width:768px){
.main-visual{height:450px;}
.slid-txt .tit{font-size:20px; margin-bottom:10px}
.slid-txt{width:80%;right:10%;padding:25px;font-size:14px;}
.bg-01{height:450px;background-position:20% 50%; background-size:cover;}
.bg-02{height:450px;background-position:30% 50%; background-size:cover}


.main-con h2, .sub_container h3{font-size:24px}
.business,.community{padding:80px 0}
.main-con:before{height:60px}
.business li{width:100%}
.business li:nth-child(n+2) {margin-top:20px}
.business li dt{font-size:17px}
.business li p{font-size:13px}
.community li{width:100%}
.community li:nth-child(n+2){margin-top:10px}
.community li{font-size:12px}
.community li .tit{font-size:17px}

.footer_con{font-size:13px}
.footer_con h4{font-size:15px}
.footer_con span{display:block}
.footer_con .copy{font-size:12px}

.sub_container{font-size:13px;}
.sub_tit h2{font-size:25px}
.sub_tit p{padding:0 20px;font-size:11px;}
.sub_container h3:before{height:60px}
.sub_container h3{padding-top:80px}
.main-con h2, .sub_container h3{font-size:24px}
.main-con h2 span, .sub_container h3 span{font-size:12px;letter-spacing: 7px;}
.sub_container h4{margin-top:40px;font-size:20px}

.greeting .img{position:relative;width:100%;}
.greeting .con{float:none;width:100%; margin-top:-50px;padding:25px}
.greeting .con strong{font-size:18px}
.map iframe{height:300px}
.location li strong{width:80px}
.location li span{width:calc(100% - 80px); line-height:1.5}

.edu-list > li,.edu-list2{width:100%; padding:15px}
.edu-list > li .tit, .edu-list2 > div .tit{font-size:16px}
.edu-list2 > div{width:100%;padding:0}
.edu-list2 > div.img{width:100%}

.target p{width:80px}
.target p:nth-child(3),.target p:nth-child(4){width:80px}
.target p:nth-child(3){margin-right:50px}
.target p:nth-child(4){margin-left:50px}

.vision dt{width:60px;font-size:12px;padding:0}
.vision dd{width:calc(100% - 70px)}
.vision dd.vision-target > div{width:calc(50% - 2px);}
.vision dd.vision-strategy > div {width: 100%; margin-bottom: 20px;}
.vision dd.vision-strategy > div:last-child {margin-bottom: 0 !important;}
.vision dd.vision-strategy > div span {height: auto; padding: 20px; border-radius:100px;}
.vision dd.vision-strategy > div span em {position: relative; left: auto; right: auto; -webkit-transform: none;-moz-transform: none;-ms-transform: none;-o-transform: none;transform: none;}
.vision > div:nth-child(5) dd p{font-size:14px}
.dot-list li{font-size:12px}
.vision .tit{font-size:14px}
.vision dt{min-height:50px;font-size:.85em}
.vision dd.vision-con > div{font-size:.85em}
.vision dd.vision-target > div{line-height:50px;font-size:.85em}
.vision dd.vision-strategy > div span{padding:15px 10px;font-size:.8em}
.vision dd.vision-strategy > div span em br {display: none;}
.vision dd.vision-strategy > div:before {left: 50%; top: auto; bottom: 0; margin-bottom: -17px;-webkit-transform: translateX(-50%);-moz-transform: translateX(-50%);-ms-transform: translateX(-50%);-o-transform: translateX(-50%);transform: translateX(-50%);}
.vision dd.vision-strategy > div:after{width:1px; height:40px; top:auto; right:auto;left: 50%; -webkit-transform: translateX(-50%);-moz-transform: translateX(-50%);-ms-transform: translateX(-50%);-o-transform: translateX(-50%);transform: translateX(-50%);}


.target > div{width:calc(100%/3 - 5px); border-radius:10px}
.target-list li span{padding-top:2px}
.target-list li span.num{padding-top:0}

.w6 li{width:calc(100%/3)}
}