@charset "UTF-8";


/*****************************************************
　共通　
*****************************************************/
/* #wrap 
------------------------------------------------- */
#wrap{
	overflow:hidden;
}
/* .section 
------------------------------------------------- */
.section{
	padding:135px 0 0;
}
/* タイトル 
------------------------------------------------- */
.section-ttl{
	font-size:28px;
	font-size:2.8rem;
	font-weight:700;
	letter-spacing:0.15em;
	margin:0 0 50px;
	text-align:center;
}
.section-ttl span{
	display:inline-block;
	font-size:inherit;
	font-weight:inherit;
}
.section-ttl span:after{
	border-bottom:4px solid #00a0e9;
	content:'';
	display:block;
	margin:20px 0 0;
}


/*****************************************************
　メインビジュアル　
*****************************************************/
#main-visual{
	margin:0 0 4.16vw;
}
#main-visual > .inner{
	position:relative;
}
@keyframes fadein_s{
	0%{
		opacity:0;
	}
	100%{
		opacity:1;
	}
}
/* スライド 
------------------------------------------------- */
#slide-wrap{
	position:relative;
}
#slide-wrap .slide-wrap_bg{
	animation:fadein_s 1s ease 0s forwards;
	background:#00a0e9;
	bottom:-4.16vw;
	content:'';
	display:block;
	height:100%;
	max-width:1740px;
	opacity:0;
	position:absolute;
	right:3.12vw;
	width:97%;
	z-index:0;
}
#slide{
	margin:0 0 0 auto;
	max-width:1490px;
	width:83%;
}
#slide .slick-list{
	overflow:visible;
}
#slide .slick-dots{
	/*bottom:-31px;*/
	bottom:-1.61vw;
	display:flex;
	justify-content:center;
	left:0;
	margin:0 auto;
	right:0;
	z-index:0;
}
#slide .slick-dots li{
	height:11px;
	margin:0 10px;
	width:11px;
}
#slide .slick-dots li button{
	background:#a8e2ff;
	border-radius:50%;
	height:11px;
	padding:0;
	width:11px;
}
#slide .slick-dots li.slick-active button{
	background:#fff;
}
#slide .slick-dots li button:before{
	display:none;
}
/* コンテンツ 
------------------------------------------------- */
#slide .s-item{
	position:relative;
}
#slide .s-item a:hover,
#slide .s-item a img:hover{
	opacity:1;
	transition:none;
}
#slide .s-item_inner{
	animation:fadein_s 1s ease 1s forwards;
	align-items:center;
	display:flex;
	height:100%;
	left:-7.81vw;
	opacity:0;
	position:absolute;
	top:0;
	z-index:0;
}
/* ----- 画像 ----- */
#slide .s-item .img{
	animation:fadein_s 1s ease 0.5s forwards;
	opacity:0;
}
#slide .s-item .img .sp{
	display:none;
}
/* ----- キャッチコピー ----- */
#slide .catchcopy .catchcopy_txt + .catchcopy_txt{
	margin:1.56vw 0 0;
}
#slide .catchcopy p{
	background:#fff;
	display:inline-block;
	font-size:2.6vw;
	font-weight:700;
	letter-spacing:0.15em;
	line-height:1.5;
	padding:0.36vw 0.93vw;
}
#slide .catchcopy p span{
	color:#009fe9;
	font-size:inherit;
	font-weight:inherit;
}
/* ----- キャッチコピー下コンテンツ ----- */
#slide .s-item_box{
	background:rgba(255,255,255,0.9);
	display:inline-block;
	margin:4.16vw 0 0;
	padding:1.82vw 3.12vw 0.78vw 1.56vw;
	position:relative;
}
#slide .s-item_box:before{
	background:url('../../images/new/top/bgblue-arrow_icon.png') no-repeat center center;
	background-size:contain;
	content:'';
	display:block;
	height:2.08vw;
	margin:-1.04vw 0 0;
	position:absolute;
	right:0;
	top:50%;
	width:2.08vw;
	z-index:0;
}
#slide .s-item_box .ttl{
	background:#00a0e9;
	border:2px solid #00a0e9;
	color:#fff;
	display:inline-block;
	font-size:0.93vw;
	font-weight:700;
	letter-spacing:0.05em;
	left:1.04vw;
	padding:0 13px 0 0;
	position:absolute;
	top:-1.14vw;
	z-index:0;
}
#slide .s-item_box .ttl span{
	background:#fff;
	color:#00a0e9;
	display:inline-block;
	font-size:1.14vw;
	font-weight:inherit;
	margin:0 0.52vw 0 0;
	padding:0.41vw 0.57vw;
}
#slide .s-item_box .subttl{
	font-size:0.83vw;
	font-weight:700;
	letter-spacing:0.15em;
	line-height:1.5;
	margin:0 0 0.36vw;
	text-decoration:underline;
}
#slide .s-item_box .subttl span{
	color:#009fe9;
	font-size:inherit;
	font-weight:inherit;
	text-decoration:underline;
}
#slide .s-item_box .txt{
	font-size:0.83vw;
	font-weight:700;
	letter-spacing:0.1em;
	line-height:1.6;
}


/*****************************************************
　新着情報　
*****************************************************/
/* ニュースリスト 
------------------------------------------------- */
.news-list{
	height:395px;
	margin:0 auto;
	max-width:960px;
	overflow:scroll;
	width:100%;
}
.news-list ul{
	list-style-type:none;
}
.news-list ul li{
	border-bottom:1px solid #ddd;
	display:flex;
	font-weight:700;
	justify-content:space-between;
	letter-spacing:0.1em;
	line-height:1.6;
	padding:26px 0;
}
.news-list ul li:first-child{
	border-top:1px solid #ddd;
}
.news-list ul li .date{
	color:#00a0e9;
	font-weight:inherit;
	line-height:inherit;
	width:160px;
}
.news-list ul li a{
	width:calc(100% - 160px - 60px);
}


/*****************************************************
　事業と取り組み　
*****************************************************/
#business{
	position:relative;
	z-index:0;
}
#business .slidein-rl{
	background:#e5f5fd;
	bottom:60px;
	content:'';
	height:395px;
	left:340px;
	position:absolute;
	transform:translateX(100vw);
	width:calc(100% + 100vw);
	z-index:-1;
}
#business .slidein-rl.active{
	animation:slidein_rl 1s ease-in-out 0s forwards;
}
@keyframes slidein_rl{
	0%{
		transform:translateX(100vw);
	}
	100%{
		transform:translateX(0);
	}
}
/* 各ボックス 
------------------------------------------------- */
.business-list{
	display:flex;
	justify-content:space-between;
	margin:110px auto 0;
	max-width:1760px;
	width:100%;
}
.business-list .b-item{
	max-width:395px;
	text-align:center;
	width:23%;
}
.business-list .b-item a{
	display:block;
	position:relative;
}
.business-list .b-item a .txt{
	align-items:center;
	height:100%;
	display:flex;
	justify-content:center;
	left:50%;
	position:absolute;
	top:50%;
	transform:translate(-50%,-50%);
	width:100%;
	z-index:0;
}
.business-list .b-item .txt br{
	display:none;
}
.business-list .b-item .ttl,
.business-list .b-item .subttl,
.business-list .b-item .subtxt{
	display:inline-block;
	line-height:1.4;
}
.business-list .b-item .ttl{
	background:#fff;
	color:#00a0e9;
	font-size:28px;
	font-size:2.8rem;
	font-weight:700;
	letter-spacing:0.15em;
	padding:8px 23px 9px;
}
.business-list .b-item .subttl{
	background:#00a0e9;
	color:#fff;
	font-size:18px;
	font-size:1.8rem;
	font-weight:700;
	letter-spacing:0.15em;
	padding:10px 21px 11px;
}
.business-list .b-item .subtxt{
	background:#fff;
	color:#000;
	font-weight:700;
	letter-spacing:0.15em;
	padding:10px 23px 11px;
}


/*****************************************************
　受賞　
*****************************************************/
#award{
	position:relative;
	z-index:0;
}
#award .slidein-lr.active{
	background:#e5f5fd;
	bottom:175px;
	content:'';
	height:395px;
	position:absolute;
	right:240px;
	transform:translateX(-100vw);
	width:calc(100% + 100vw);
	z-index:-1;
}
#award .slidein-lr.active{
	animation:slidein-lr 1s ease 0s forwards;
}
@keyframes slidein-lr{
	0%{
		transform:translateX(-100vw);
	}
	100%{
		transform:translateX(0);
	}
}
/* 各ボックス 
------------------------------------------------- */
.award-list{
	display:flex;
	margin:0 auto 70px;
	max-width:1400px;
	width:100%;
}
.award-list .a-item{
	/*max-width:369px;*/
	max-width:450px;
	text-align:center;
	width:32%;
}
.award-list .a-item + .a-item{
	margin:0 0 0 2%;
}
.award-list .a-item br{
	display:none;
}
.award-list .a-item .from{
	background:#fff;
	border:2px solid #00a0e9;
	display:inline-block;
	font-weight:700;
	letter-spacing:0.15em;
	line-height:1.8;
	padding:7px 21px 8px;
}
.award-list .a-item .ttl{
	background:#00a0e9;
	color:#fff;
	display:inline-block;
	font-size:18px;
	font-size:1.8rem;
	font-weight:700;
	letter-spacing:0.15em;
	line-height:1.8;
	padding:7px 23px;
}
.award-list .a-item .txt{
	font-weight:700;
	letter-spacing:0.15em;
	line-height:1.8;
	margin:15px 0 18px;
}
.award-list .a-item:first-child .img{
	margin:calc(15px + 1.8em + 18px) 0 0;
}

/* 各ボックス （202111修正）
------------------------------------------------- */
.award-list{
	display:flex;
	margin:0 auto 70px;
	max-width:1400px;
	width:100%;
}
.award-list .a-item2{
	/*max-width:369px;*/
	max-width:450px;
	text-align:center;
	width:32%;
}
.award-list .a-item2 + .a-item2{
	margin:0 0 0 2%;
}
.award-list .a-item2 br{
	display:none;
}
.award-list .a-item2 .from{
	background:#fff;
	border:2px solid #00a0e9;
	display:inline-block;
	font-weight:700;
	letter-spacing:0.15em;
	line-height:1.8;
	padding:7px 21px 8px;
}
.award-list .a-item2 .ttl{
	background:#00a0e9;
	color:#fff;
	display:inline-block;
	font-size:18px;
	font-size:1.8rem;
	font-weight:700;
	letter-spacing:0.15em;
	line-height:1.8;
	padding:7px 23px;
}
.award-list .a-item2 .txt{
	font-weight:700;
	letter-spacing:0.15em;
	line-height:1.8;
	margin:15px 0 18px;
}
.award-list .a-item2:nth-child(2) .img{
	margin:calc(15px + 1.8em + 18px) 0 0;
}



/* 各ボックス （20220920修正）
------------------------------------------------- */
.award-list{
	display:flex;
	margin:0 auto 70px;
	max-width:1400px;
	width:100%;
}
.award-list .a-item3{
	/*max-width:369px;*/
	max-width:450px;
	text-align:center;
	width:32%;
}
.award-list .a-item3 + .a-item3{
	margin:0 0 0 2%;
}
.award-list .a-item3 br{
	display:none;
}
.award-list .a-item3 .from{
	background:#fff;
	border:2px solid #00a0e9;
	display:inline-block;
	font-weight:700;
	letter-spacing:0.15em;
	line-height:1.8;
	padding:7px 21px 8px;
}
.award-list .a-item3 .ttl{
	background:#00a0e9;
	color:#fff;
	display:inline-block;
	font-size:18px;
	font-size:1.8rem;
	font-weight:700;
	letter-spacing:0.15em;
	line-height:1.8;
	padding:7px 23px;
}
.award-list .a-item3 .txt{
	font-weight:700;
	letter-spacing:0.15em;
	line-height:1.8;
	margin:15px 0 18px;
    font-feature-settings: "palt";
}
.award-list .a-item3:nth-child(1) .img{
	margin:calc(5px + 1.0em + 25px) 0 0;
}

.award-list .a-item3:nth-child(2) .img {
    margin: calc(15px + 1.8em + 45px) 0 0;
}


@media screen and (max-width:1024px){
	/*****************************************************
	　共通　
	*****************************************************/
	/* .section 
	------------------------------------------------- */
	.section{
		padding:13.33vw 0 0;
	}
	/* タイトル 
	------------------------------------------------- */
	.section-ttl{
		font-size:4.26vw;
		margin:0 0 6.66vw;
	}
	.section-ttl span:after{
		border-width:0.53vw;
		margin:2.66vw 0 0;
	}


	/*****************************************************
	　メインビジュアル　
	*****************************************************/
	#main-visual{
		margin:0 0 12vw;
	}
	#main-visual > .inner{
		margin:0 0 0 2vw;
	}
	/* スライド 
	------------------------------------------------- */
	#slide-wrap .slide-wrap_bg{
		bottom:-11.33vw;
		right:0;
		width:92.68vw;
	}
	#slide{
		width:86vw;
	}
	#slide .slick-dots{
		bottom:-6.26vw;
	}
	#slide .slick-dots li{
		height:2.13vw;
		margin:0 1.6vw;
		width:2.13vw;
	}
	#slide .slick-dots li button{
		height:2.13vw;
		width:2.13vw;
	}
	/* コンテンツ 
	------------------------------------------------- */
	#slide .s-item_inner{
		left:-4vw;
	}
	/* ----- 画像 ----- */
	/*#slide .s-item .img img{
		height:100.53vw;
		max-width:none;
	}*/
	#slide .s-item .img .sp{
		display:block;
		width:100%;
	}
	#slide .s-item .img .pc{
		display:none;
	}
	/* ----- キャッチコピー ----- */
	#slide .catchcopy .catchcopy_txt + .catchcopy_txt{
		margin:4vw 0 0;
	}
	#slide .catchcopy p{
		font-size:6.66vw;
		padding:0.66vw 2.66vw;
	}
	/* ----- キャッチコピー下コンテンツ ----- */
	#slide .s-item_box{
		margin:12vw 2.66vw 0 0;
		padding:6.66vw 10.66vw 5.06vw 4vw;
	}
	#slide .s-item_box:before{
		height:8vw;
		margin:-4vw 0 0;
		width:8vw;
	}
	#slide .s-item_box .ttl{
		border-width:0.26vw;
		font-size:3.46vw;
		left:2.66vw;
		padding:0 1.6vw 0 0;
		top:-4vw;
	}
	#slide .s-item_box .ttl span{
		font-size:4vw;
		margin:0 1.33vw 0 0;
		padding:1.33vw 1.06vw;
	}
	#slide .s-item_box .subttl{
		font-size:2.93vw;
		margin:0 0 1.86vw;
	}
	#slide .s-item_box .txt{
		font-size:2.93vw;
	}


	/*****************************************************
	　新着情報　
	*****************************************************/
	/* ニュースリスト 
	------------------------------------------------- */
	.news-list{
		height:66.66vw;
		max-width:none;
	}
	.news-list ul li{
		border-width:0.13vw;
		display:block;
		padding:3.33vw 4vw;
	}
	.news-list ul li:first-child{
		border-width:0.13vw;
	}
	.news-list ul li .date,
	.news-list ul li a{
		display:block;
		width:auto;
	}


	/*****************************************************
	　事業と取り組み　
	*****************************************************/
	#business .slidein-rl{
		bottom:0;
		height:calc(100% - 13.33vw - 15.33vw);
		left:4.66vw;
		width:85.33vw;
	}
	/* 各ボックス 
	------------------------------------------------- */
	.business-list{
		flex-wrap:wrap;
		margin:6.66vw auto 0;
		padding:8vw 0;
		width:69.33vw;
	}
	.business-list .b-item{
		max-width:none;
		width:30.66vw;
	}
	.business-list .b-item_1,
	.business-list .b-item_2{
		margin:0 0 8vw;
	}
	.business-list .b-item a{
		position:static;
	}
	.business-list .b-item a .txt{
		height:auto;
		display:block;
		margin:2.66vw 0 0;
		position:static;
		transform:none;
		width:auto;
	}
	.business-list .b-item .txt br{
		display:block;
	}
	.business-list .b-item .ttl,
	.business-list .b-item .subttl,
	.business-list .b-item .subtxt{
		line-height:1.5;
	}
	.business-list .b-item .ttl{
		font-size:3.73vw;
		padding:1.33vw 2.4vw;
	}
	.business-list .b-item .subttl{
		font-size:3.2vw;
		padding:1.33vw 2.4vw;
	}
	.business-list .b-item .subtxt{
		font-size:2.4vw;
		padding:1.33vw 2.4vw;
	}
	.business-list .b-item_2 .subtxt{
		padding:1.33vw 1.9vw;
	}


	/*****************************************************
	　受賞　
	*****************************************************/
	#award .slidein-lr.active{
		bottom:16vw;
		height:calc(100% - 13.33vw - 14.66vw - 8vw - 16vw);
		right:4.66vw;
		width:85.33vw;
	}
	/* 各ボックス 
	------------------------------------------------- */
	.award-list{
		flex-wrap:wrap;
		justify-content:center;
		margin:0 auto 10.66vw;
		width:77.33vw;
	}
	.award-list .a-item{
		max-width:none;
		width:37.33vw;
	}
	.award-list .a-item + .a-item{
		margin:0;
	}
	.award-list .a-item:nth-child(2){
		margin:0 0 0 2.67vw;
	}
	.award-list .a-item:nth-child(3){
		margin:8vw 0 0;
	}
	.award-list .a-item br{
		display:block;
	}
	.award-list .a-item .from{
		border-width:0.26vw;
		line-height:1.5;
		padding:1.33vw 2vw;
	}
	.award-list .a-item .ttl{
		font-size:3.2vw;
		letter-spacing:0.05em;
		line-height:1.5;
		padding:1.33vw 1.6vw;
	}
	.award-list .a-item .txt{
		font-size:3.2vw;
		line-height:1.5;
		margin:1.33vw 0 2vw;
	}
	.award-list .a-item:first-child .img{
		margin:calc(14.4vw + 1.33vw + 2vw) 0 0;
	}
    
    /* 各ボックス （202111追加修正）k
	------------------------------------------------- */
	
	.award-list .a-item2{
		max-width:none;
		width:37.33vw;
	}
	.award-list .a-item2 + .a-item2{
		margin:0;
	}
	.award-list .a-item2:nth-child(2){
		margin:0 0 0 2.67vw;
	}
	.award-list .a-item2:nth-child(3){
		margin:8vw 0 0;
	}
	.award-list .a-item2 br{
		display:block;
	}
	.award-list .a-item2 .from{
		border-width:0.26vw;
		line-height:1.5;
		padding:1.33vw 2vw;
	}
	.award-list .a-item2 .ttl{
		font-size:3.2vw;
		letter-spacing:0.05em;
		line-height:1.5;
		padding:1.33vw 1.6vw;
	}
	.award-list .a-item2 .txt{
		font-size:3.2vw;
		line-height:1.5;
		margin:1.33vw 0 2vw;
	}
	.award-list .a-item2:first-child .img{
		margin:calc(0.1vw + 1.33vw + 2vw) 0 0;
	}
    .award-list .a-item2:nth-child(2) .img{
		margin:calc(15.5vw + 1.33vw + 2vw) 0 0;
	}
    
    
      /* 各ボックス （202209追加修正）k
	------------------------------------------------- */
	
	.award-list .a-item3{
		max-width:none;
		width:49.33vw;
	}
	.award-list .a-item3 + .a-item3{
		margin:0;
	}
	.award-list .a-item3:nth-child(2){
		margin:8vw 0 0 2.67vw;
	}
	.award-list .a-item3:nth-child(3){
		margin:8vw 0 0;
	}
	.award-list .a-item3 br{
		display:block;
	}
	.award-list .a-item3 .from{
		border-width:0.26vw;
		line-height:1.5;
		padding:1.33vw 2vw;
	}
	.award-list .a-item3 .ttl{
		font-size:3.2vw;
		letter-spacing:0.05em;
		line-height:1.5;
		padding:1.33vw 1.6vw;
	}
	.award-list .a-item2 .txt{
		font-size:3.2vw;
		line-height:1.5;
		margin:1.33vw 0 2vw;
	}
	.award-list .a-item3:first-child .img{
		margin:calc(0.1vw + 1.33vw + 2vw) 0 0;
	}
    .award-list .a-item3:nth-child(2) .img{
		margin:calc(7.5vw + 1.33vw + 2vw) 0 0;
	}
}

    /* KFGグループ追加（202209追加修正）k
	------------------------------------------------- */

.inner2 {
    margin: 0 auto;
    width: 96%;
    text-align: center;
}

.company{
margin-left: auto;
margin-right: auto;
width: 100%;
padding-top: 30px;    
}


.kfg img{
    vertical-align: middle;
    margin-right: 20px;
    display: inline-block;
}
.kfg span{
    display: inline-block;
    line-height: 1.6em;
}
@media screen and (max-width: 559px) {
.kfg span {
    margin-top: 20px;
}
}



/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc_d { display: block !important; }
.sp_d { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
    .pc_d { display: none !important; }
    .sp_d { display: block !important; }
}

