@charset "utf-8";


/*************************************************
	index専用
*************************************************/

/*----トップローディング ---------------------*/
.loading {width: 100vw;height: 100vh;transition: all 1s;background-color: #FFF;position: fixed;top: 0;left: 0;z-index: 9999;opacity: 1;visibility: visible;}
.loading-animation{position: absolute;font-size:11px;color: #666;text-align: center;width: 100%;padding-top:120px;height:60px;display: block;top:42%;
									background:url(../img/loading.png) no-repeat center top,url(../js/loading.svg) no-repeat center bottom 5px;opacity: 1;visibility: visible;transition: 0.8s;}
.loading-animation.is-noactive {opacity: 0;visibility: hidden;top:36%;}
.loading.is-active {opacity:0; visibility: hidden;display: none;}


/*----トップローディング ---------------------
#loader {position: fixed;z-index:900;top: 0;text-align: center;width: 100%;height: 100%;background: #fff;}
#load-text {position: absolute;font-size:11px;color: #666;text-align: center;width: 100%;top:40%;padding-top:110px;height:60px;display: block;
						background:url(../img/loading.png) no-repeat center top,url(../js/loading.svg) no-repeat center bottom 5px;}
*/



/*TOPページ上部の背景big画像-------------*/
.headerimgs-wrapper{position: relative;}
#headerimgs{}

/* 画像を少し暗くする
.sp-image-container{background-color:#000;}
.slider-pro img.sp-image{opacity:0.9;}
*/

.index-bigimg-text-box{position:absolute;top:39%;z-index: 2;right: 0;left: 0;margin: 0 auto;display: table;text-align:center;}
.index-bigimg-text1{position: relative;}
.index-bigimg-text1 img{max-width:863px;height:auto;}
.index-bigimg-text2{position: relative;margin-top:30px;}
.index-bigimg-text2 img{max-width:631px;height:auto;}

/*矢印円の立体回転----
.index-bigimg-circle {position: relative;z-index:-1;transform-style: preserve-3d;width: 500px;height: 500px;margin: auto;animation: rotate 20s infinite linear;margin-top:-230px;}
.index-bigimg-circle .box {position: absolute;transform: rotateX(90deg);}
@keyframes rotate {
  0% {transform: rotateX(-20deg) rotateY(0deg)}
  33% {transform: rotateX(-20deg) rotateY(120deg)}
  66% {transform: rotateX(-20deg) rotateY(240deg)}
  100% {transform: rotateX(-20deg) rotateY(360deg)}
}
*/



/*横に並ぶ●ボタン　右下に並べる---*/		
.sp-buttons {position: absolute;padding-top: 10px;right: 28px;bottom: 11px;left: 0;margin: 0 0 0 auto;display: table;width: unset;}
.sp-button {background-color: rgba(255,255,255,0.7);border: none;border-radius: 50%;margin: 0 7px;width:10px !important;height:10px !important;}
.sp-selected-button {background-color: #1fbaf5;}



/*スクロールダウンボタン*/
.btn-scroll-box{position:absolute;bottom:50px;right:0;left: 0;display:block;transition: 0.6s;z-index:1;}
.btn-scroll-box:hover{opacity:0.6;cursor: pointer;bottom:40px;}

.btn-scroll-box a {position: absolute;opacity:1;padding-top: 42px;left:48.8%;z-index: 2;display: inline-block;color: #fff;font-size: 13px;-webkit-transform: translate(0, -50%);transform: translate(0, -50%);text-decoration: none;}
.btn-scroll-box a span {position: absolute;top: 0;left: 57%;width: 23px;height: 40px;margin-left: -15px;border: 2px solid #fff;border-radius: 50px;box-sizing: border-box;}
.btn-scroll-box a span::before {position: absolute;top: 10px;left: 50%;content: '';width: 6px;height: 6px;margin-left: -3px;background-color: #fff;border-radius: 100%;-webkit-animation: sdb 2s infinite;animation: sdb 2s infinite;box-sizing: border-box;}
@-webkit-keyframes sdb {
  0% {-webkit-transform: translate(0, 0);opacity: 0;}
  40% {opacity: 1;}
  80% {-webkit-transform: translate(0, 20px);opacity: 0;}
  100% {opacity: 0;}
}
@keyframes sdb {
  0% {transform: translate(0, 0);opacity: 0;}
  40% {opacity: 1;}
  80% {transform: translate(0, 20px);opacity: 0;}
  100% {opacity: 0;}
}





/*/////////////　introduction　////////////////*/
.section.intro{padding: 100px 0 0 0;}

.intro-box{position:relative;max-width: 1250px;margin: 0 auto;background: url(../img/beige_dot.png);padding: 70px 7%;}
.intro-midashi1{color: #d09b00;font-family: YakuHanMP, 'Noto Serif JP', serif;font-weight: 500;font-size: 150%;float: left;}
.intro-eng{background: url(../img/index_intro_eng.png) no-repeat left top / contain;width: 647px;height: 147px;text-indent: -8989px;display: table;overflow: hidden;margin-top: 23px;float: left;}
.intro-img{float: right;margin: -55px -20px 0 0;}
.intro-com{line-height:2.2;margin-top: 30px;}
.intro-box .naka-kuwashii{margin:0 0 0 auto;width: 340px;height: 70px;}
					
.ilist-img2{position:absolute;top:270px;left:-185px;}
.ilist-img3{position: absolute;bottom: 130px;right: -180px;}
			


/*/////////////　newsお知らせ　////////////////*/
.section#index-news{padding: 180px 0 100px 0;margin-bottom: 0;}
.section#index-news .container{max-width:1180px;}
.section#index-news h2{text-align: left;margin: 0 0 35px 1.3%;font-size: 260%;}
.section#index-news h2 small{display:block;}

.news-wrapp{background-color:rgba(255,255,255,0.8);padding:40px 5%;border-radius:20px;}
.news-wrapp-inner{float:right;width:83%;margin:0 0 0 auto;height:315px;overflow:auto;
	scrollbar-base-color : #ffffff;
	scrollbar-face-color: #dfdfdf;
	scrollbar-highlight-color: #ffffff;
	scrollbar-shadow-color: #ffffff;
	scrollbar-3dlight-color: #ffffff;
	scrollbar-arrow-color: #999999;
	scrollbar-track-color: #ffffff;
	scrollbar-darkshadow-color: #ffffff;
border-top: 1px solid #c8d6df;
}


.news-box{margin-right: 5px;border-bottom: 1px solid #c8d6df;}
.news-box dl{}
.news-box dt{float:left;}
.news-box dd{padding:0 10px 0 140px;}

.news-box dt .date{font-size:86%;line-height: 1;margin-top: 4px;letter-spacing: 0;}
.news-box dt .date img{margin:0 0 5px 9px;}

.news-box dd .title {line-height:1.3;transition: 0.8s;font-size: 105%;}

.news-box dl a{text-decoration:none;display: block;padding:19px 1% 19px 2%;}
.news-box dl a:hover{background-color: #f1fcf7;}
.news-box dl a:hover dd .title{padding-left: 5px;}


/*クルッと回るボタン*/
.btn-more-title{float: left;font-size: 90%;width: 10%;margin: 150px 0 0 12px;}

.btn-more {float:left;margin: 0 0 0 7px;}
.btn-more > a{position:relative; display:inline-block; padding:0 80px 0 0;text-decoration: none;color: #006fdd;}
.btn-more > a:after{content:'';position:absolute;width:43px; display:inline-block;height:5px;background:url(../img/arrow_more_blue.png) no-repeat right center;margin-left: 6px;transition: 0.4s;top: 7px;}
.btn-more > a .btn-circle{ position:absolute; top:30%; right:0; margin-top:-20px; width:60px; height:60px; }
.btn-more > a .btn-circle .circle { position:absolute; fill:transparent; stroke-width:2.0;}
.btn-more > a .btn-circle .circle.off{ stroke:#dfdfdf;}
.btn-more > a .btn-circle .circle.on{ stroke:#006fdd; stroke-dasharray:25 157; transform:rotate(-30deg); transition:all 0.6s cubic-bezier(.21,.51,.51,1);}
.btn-more > a:hover .btn-circle .circle.on{stroke:#006fdd;stroke-dasharray: 157 157;stroke-width: 1.5;}
.btn-more > a:hover{}
.btn-more > a:hover:after,
.btn-more > span:hover:after{margin-left:13px;}

.ilist-img4{position:absolute;bottom:-30px;left:-250px;}
.ilist-img6{position: absolute;top: -105px;right: 70px;}

.width-img1{background:url(../img/width_img1.jpg) no-repeat center top;height:700px;margin-bottom: 100px;}



/*/////////////　Recruit採用情報　////////////////*/
.section.index-recruit{background:url(../img/index_recruit_bg.jpg) no-repeat center bottom;padding: 40px 0 90px 0;}

.section.index-recruit h2{position:relative;font-size:220%;display: table;margin: 0 auto 50px auto;}
.section.index-recruit h2:before{position:absolute;content: '';width: 246px;height:126px;background-image: url(../img/index_recruit.png);background-size: contain;background-repeat: no-repeat;top: -71px;left: -200px;}

.index-recruit-box{position:relative;max-width:900px;margin:0 auto;}
.index-recruit-midashi{color:#1fb8f3;font-family: YakuHanMP, 'Noto Serif JP', serif;font-weight: 600;font-size: 190%;line-height:1.4;text-align:center;margin-bottom:20px;}
.index-recruit-com1{text-align:center;margin-bottom:30px;font-size: 105%;font-weight: bold;}
.index-recruit-illit{text-align:center;margin-bottom: 75px;}
.ilist-img7{position:absolute;top:-150px;right:-250px;}


.recruit-banner-wrap{background-color:#fff;padding:0 9% 70px 9%;display:table;margin:0 auto 60px auto;border-radius:0 0 30px 30px;}
.recruit-banner{position: relative;width: 960px;height: 290px;overflow: hidden;margin: 0 auto;transition: 0.5s;}
.recruit-banner:hover{margin-top:-5px;margin-bottom:5px;}
.recruit-banner a{display: block;}
.recruit-banner a:hover{opacity:0.6;}
.recruit-banner a > img{position:absolute;z-index: 100;}
.recruit-banner .bx-wrapper{margin:0 0 0 auto;}
.bxslider-recruit-banner div{height:0;padding:28.5% 0;background-position: right top !important;background-size: cover !important;}


/*数字で見る----*/
.suuji-wrap{max-width:1310px;margin:0 auto;}

ul.suuji-flex-ul{margin: 0 !important;}
ul.suuji-flex-ul li{display:inline-block;width: 305px;height: 255px;max-width: 100%;padding-top: 20px;border: 2px solid #ffbf00;box-sizing: border-box;text-align: center;text-decoration: none;margin:0 8px 21px 8px !important;border-radius: 10px;
																				background-color:#fdfcef;background-repeat:no-repeat;background-position:center center;background-size:80%;vertical-align: top;}
ul.suuji-flex-ul li .title{height: 54px;color: #0ba8e3;font-size: 138%;font-weight: bold;text-align: center;line-height: 1.3;display: flex;align-items: center;justify-content: center;}
ul.suuji-flex-ul li .suuji{position: relative; width: 100%; height: 135px; margin:auto;}
ul.suuji-flex-ul li .suuji .num{position: absolute; top: 50%; left: 50%; color: #d87701;	font-size: 150%;	font-weight: 800;	font-family:YakuHanJP,'Noto Sans JP', sans-serif;	white-space:nowrap;	line-height: 1.1;	transform:translate(-50%,-50%);	z-index: 2;letter-spacing: 0;}
ul.suuji-flex-ul li .suuji .num span.count-up{display:inline;font-size: 223%;line-height: 1;}
ul.suuji-flex-ul li .suuji .num span{display:inline;font-weight: 800;}
ul.suuji-flex-ul li .suuji .num p{font-weight: 800;}
ul.suuji-flex-ul li .suuji .num small{line-height: 1; display: block; margin-bottom: -3px; font-size: 65%;}
ul.suuji-flex-ul li .suuji .num p.num-cap{display:block;font-weight:normal; font-size: 62%;margin-top: 5px;}

ul.suuji-flex-ul li.number01{background-image:url(../img/suuji_img1.png);}
ul.suuji-flex-ul li.number02{background-image:url(../img/suuji_img2.png);}
#number #number-counter.graph.number03 svg circle.line {stroke-dashoffset: 486;}
#number #number-counter.graph.number04 svg circle.line {stroke-dashoffset: 460;}
ul.suuji-flex-ul li.number05{background-image:url(../img/suuji_img5.png);}
ul.suuji-flex-ul li.number06{background-image:url(../img/suuji_img6.png);}
#number #number-counter.graph.number07 svg circle.line {stroke-dashoffset: 198;}
ul.suuji-flex-ul li.number08{background-image:url(../img/suuji_img8.png);}
ul.suuji-flex-ul li.number09{background-image:url(../img/suuji_img9.png);}



/*数字で見るの円形でくるっと動く*/
/*<circle class="base" cx="77" cy="77" r="68"> 半径r="68"×2+stroke-width18＝154*/
#number .graph svg {position: absolute;top: 57%;left: 50%;width: 154px;height: 154px;transform: translate(-50%,-50%) rotate(-90deg);}
#number .graph svg circle {position: relative;fill: none;stroke-width: 18;stroke: #fff;stroke-dasharray: 534;stroke-dashoffset: 0;stroke-linecap: butt;}
#number .graph.graph_animated svg circle.line {stroke: #e0dfde;-webkit-animation: circleAnim 2s forwards;	animation: circleAnim 2s forwards;}
@-webkit-keyframes circleAnim {
  0% {stroke-dasharray: 0 534;}
  99.9%, to {stroke-dasharray: 534 534;}
}
@keyframes circleAnim {
  0% {stroke-dasharray: 0 534;}
  99.9%, to {stroke-dasharray: 534 534;}
}
/*白フチ*/
#number .suuji .num b,
ul.suuji-flex-ul li .suuji .num p.num-cap{text-shadow: 1px 0 0 #fff, -1px 0 0 #fff, 0 1px 0 #fff, 0 -1px 0 #fff, 2px 2px 1px #fff, -2px 2px 1px #fff, 2px -2px 1px #fff, -2px -2px 1px #fff, 2px 0px 1px #fff, 0px 2px 1px #fff, -2px 0px 1px #fff, 0px -2px 1px #fff;}

.kigyou{display:inline-block;background-color:#fff;border-radius:20px;padding:40px 0 0 50px;width:445px;height:215px;margin: 17px 100px 0 30px;}
.kigyou div{list-style-type: disc;}
.kigyou div p{display: list-item;font-size: 120%;font-weight: bold;color: #004385;}

.illust{display:inline-block;}












