@charset "utf-8";

/*============
  TOPページ
============*/
/*== #mv ==*/
#mv {}
	#mv .mv_main {
		max-width: 1560px;
		width: 81.25%;
		margin: 0 0 0 auto;
		position: relative;
	}
		#mv .mv_main .mv_txt {
			font-size: 56px;
			position: absolute;
			top: 40%;
			left: -150px;
		}
			#mv .mv_main .mv_txt01 {
				background-color: #2789CB;
				color: #fff;
				/* width: 560px; */
				padding-left: 26px;
				padding-right: 26px;
				font-weight: 600;
			}
			#mv .mv_main .mv_txt02 {
				background-color: #2789CB;
				color: #fff;
				margin-top: 15px;
				padding-left: 26px;
				padding-right: 26px;
				display: inline-block;
				font-weight: 600;
			}

#mv .slick-dots {
	display: flex;
	position: absolute;
	transform: rotateZ(90deg);
	transform-origin: 0% 0%;
	left: -25px;
	bottom: 65px;
	width: 90px;
	height: 18px;
}
	#mv .slick-dots li {
		margin:0 auto;
	}
		#mv .slick-dots li.slick-active button {
			opacity: 1;
		}
		#mv .slick-dots li.slick-active button:before {
			opacity: 1;
			color: #2789CB;
		}
		#mv .slick-dots li button:before {
			width: 12px;
			height: 12px;
			opacity: 1;
			font-size: 14px;
		}
#mv .slick-dotted.slick-slider {
	margin-bottom: 0;
}

/*=========
スクロールダウンのためのCSS
===============*/
/*スクロールダウン全体の場所*/
.scroll_ber {
	/*描画位置※位置は適宜調整してください*/
	position:absolute;
	left: -17%;
	bottom: -9%;
}
/*Scrollテキストの描写*/
.scroll_ber span {
	/*描画位置*/
	position: absolute;
	left: -9px;
	
	/*テキストの形状*/
	bottom: 89px;
	color: #212121;
	font-size: 12px;
	letter-spacing: 1.12px;
	/*縦書き設定*/
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	height: 50px;
	font-family: 'Oswald';
}
/* 丸の描写 */
.scroll_ber:before {
	content: "";
	/*描画位置*/
	position: absolute;
	bottom:0;
	left: -6px;
	/*丸の形状*/
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: #212121;
	/*丸の動き1.6秒かけて透過し、永遠にループ*/
	animation:
	circlemove 1.6s ease-in-out infinite,
	cirlemovehide 1.6s ease-out infinite;
}
/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove {
	  0%{bottom:75px;}
	 100%{bottom:-5px;}
}
/*上から下にかけて丸が透過→不透明→透過する*/
@keyframes cirlemovehide {
	0%{opacity:0}
	50%{opacity:1;}
	80%{opacity:0.9;}
	100%{opacity:0;}
}
/* 線の描写 */
.scroll_ber:after {
	content:"";
	/*描画位置*/
	position: absolute;
	bottom:0;
	left:0;
	/*線の形状*/
	width:2px;
	height: 78px;
	background: #212121;
}


/*== #top_about ==*/
#top_about {
	padding-top: 160px;
	max-width: 1560px;
	width: 81.25%;
}
	#top_about .img_box {
		max-width: 880px;
		width: 56.4103%;
	}
	#top_about .inner {
		max-width: 680px;
		width: 43.59%;
		padding-left: 5.1282%;
		box-sizing: border-box;
	}
		#top_about .inner .tips_box .ttl_tips {
			position: relative;
		}
			#top_about .inner .tips_box .ttl_tips:before {
				content: "";
				position: absolute;
				height: 25px;
				width: 290px;
				background-color: #FFDE91;
				bottom: 4px;
				z-index: -1;
			}
		#top_about .inner .about_txt {
			margin-top: 85px;
			margin-top: 12.9310%;
		}
		#top_about .inner .about_txt + .about_txt {
			margin-top: 20px;
		}
		#top_about .inner .btn_l {
			margin-top: 10%; 
		}



/*== #top_news ==*/
#top_news {
	margin-top: 160px;
	max-width: 1200px;
	margin: 160px auto 170px;
	justify-content: space-between;
	align-items: center;
}
	#top_news .tips_box {
		max-width: 320px;
		width: 26.6667%;
		padding-right: 9.9166%;
	}
		#top_news .tips_box .txt_link {
			margin-top: 35px;
			padding-right: 10px;
		}
			#top_news .tips_box .txt_link a {
				position: relative;
			}
				#top_news .tips_box .txt_link a:hover {
					color: #2789CB;
				}
				#top_news .tips_box .txt_link a:after {
					content: "";
					position: absolute;
					top: 2px;
					right: -22px;
					background-image: url(../img/pc/arrow_r.svg);
					background-repeat: no-repeat;
					width: 7px;
					height: 12px;
				}

	#top_news .content {
		max-width: 880px;
		width: 73.3334%;
	}
		#top_news .content .news_box {
			line-height: 1;
			border-bottom: 1px solid #B7B7B7;
			align-items: center;
		}
			#top_news .content .news_box a {
				display: inline-block;
				width: 100%;
				padding-top: 25px;
				padding-bottom: 25px;
				transition: .3s;
				position: relative;
			}
			#top_news .content .news_box:first-child a {
				padding-top: 0;
			}
				#top_news .content .news_box a:after {
					content: "";
					position: absolute;
					top: 32px;
					right: 20px;
					background-image: url(../img/pc/arrow_r.svg);
					background-repeat: no-repeat;
					width: 7px;
					height: 12px;
				}
				#top_news .content .news_box a:hover {
					text-decoration: none;
				}
				#top_news .content .news_box:first-child a:after {
					top: 15px;
				}
				#top_news .content .news_box .category {
					margin-left: 20px;
					background-color: #2789CB;
					color: #fff;
					padding: 8px 20px;
					font-size: 12px;
					min-width: 88px;
					min-height: 28px;
					display: inline-block;
					vertical-align: middle;
				}
				#top_news .content .news_box .news_date {
					font-size: 14px;
					margin-left: 20px;
					color: #B7B7B7;
				}
				#top_news .content .news_box .news_title {
					display: inline-block;
					margin-left: 35px;
					color: #010101;
					white-space: nowrap;
					overflow: hidden;
					width: 450px;
					text-overflow: ellipsis;
					-webkit-text-overflow: ellipsis;
					-o-text-overflow: ellipsis;
					vertical-align: middle;
					font-size: 16px;
					font-weight: 600;
				}
				#top_news .content .news_box a:hover .news_title {
					text-decoration: underline;
					color: #2789CB;
				}

@media screen and (max-width:1440px) { 
	#top_news {
		max-width: 1000px;
	}
		#top_news .tips_box {
			padding-right: 4%;
		}
		#top_news .content .news_box .news_title {
			width: 350px;
		}
}


/*== #top_service ==*/
#top_service {
	/* padding-top: 170px; */
	padding-bottom: 160px;
	background-color: #F8F9F8;
}
	#top_service .img_box {
		width: 100%;
	}
	#top_service .tips_box {
		margin-top: 160px;
	}
	#top_service .wave_inner {
		padding-top: 90px;
		position: relative;
	}
		#top_service .wave_inner:before {
			top: 0;
			left: 0;
		}
		#top_service .wave_inner:after {
			bottom: -100px;
			right: 0;
			z-index: -1;
		}
		#top_service .service_list {
			margin: 0 auto;
			max-width: 1200px;
			flex-wrap: wrap;
			justify-content: space-between;
		}
			
			#top_service .service_list li {
				max-width: 560px;
				width: 46.6667%;
				background-color: #2789CB;
				margin-bottom: 80px;
				position: relative;
				-webkit-box-shadow: 0 3px 6px #ccc;
				box-shadow: 0 3px 6px #ccc;
				transition: .3s;
			}
				#top_service .service_list li:hover {
					transform: translateY(5px);
					text-decoration: none;
					-webkit-box-shadow: 0 0 3px #ddd;
					box-shadow: 0 0 3px #ddd;
					transition: .3s;
					opacity: .8;
				}
				#top_service .service_list li:after {
					content: "";
					position: absolute;
					bottom: 10px;
					right: 10px;
					background-image: url(../img/pc/triangle.svg);
					background-repeat: no-repeat;
					width: 40px;
					height: 40px;
				}
				#top_service .service_list li a {
					color: #fff;
					text-decoration: none;
				}
					#top_service .service_list li a .list_ttl {
						font-size: 36px;
						margin-top: 40px;
						padding-left: 8.9285%;
						padding-right: 8.9285%;
						font-weight: 600;
					}
					#top_service .service_list li a .list_txt {
						margin-top: 30px;
						padding-left: 8.9285%;
						padding-right: 8.9285%;
						padding-bottom: 40px;
						text-align: justify;
					}


/*============
  事業内容
============*/
#service {
	position: relative;
}

/*== #service_topArea ==*/
#service_topArea {
	margin-top: 60px;
	margin-bottom: 50px;
}
	#service_topArea .txt_tips {
		margin-top: 35px;
	}

/*== #service_box ==*/
#service_box {
	padding-top: 160px;
	padding-bottom: 160px;
	background-color: #F8F8F8;
	position: relative;
}
	#service_box:before {
		content: "";
		position: absolute;
		top: -200px;
		left: 50%;
		transform: translateX(-50%);
		background-image: url(../img/pc/service.svg);
		background-repeat: no-repeat;
		background-size: contain;
		height: 260px;
		max-width: 906px;
		width: 100%;
		z-index: -999;
	}
	#service_box .tips_menu {
		text-align: center;
		/* justify-content: center; */
	}
		#service_box .tips_menu li {
			background-color: transparent;
			border: none;
			border-radius: inherit;
			display: inline-block;
			max-width: initial;
			width: auto;
		}
		#service_box .tips_menu li + li {
			margin-left: 0;
			padding-left: 75px;
		}
			#service_box .tips_menu li a {
				height: 40px;
				line-height: 40px;
			}
	#service_box .service_list {
		max-width: 1000px;
		margin: 0 auto;
		position: relative;
		z-index: 99;
	}
		#service_box .service_list .wave_inner:after {
			bottom: -36px;
		}
		#service_box .service_list li {}
		#service_box .service_list li + li {
			margin-top: 120px;
		}
		#service_box .service_list li:nth-child(even) {
			flex-direction: row-reverse;
		}
			#service_box .service_list li .img_box.left {
				max-width: 500px;
				width: 100%;
			}
			#service_box .service_list li .detail {
				max-width: 500px;
				width: 50%;
				padding-left: 8%;
				text-align: center;
				position: relative;
			}
			#service_box .service_list li:nth-child(even) .detail {
				padding-left: 0;
				padding-right: 8%;
			}
				#service_box .service_list li .detail .number {
					margin: 0 auto;
				}
				#service_box .service_list li:nth-child(1) .detail .number {
					max-width: 84px;
					width: 100%;
				}
				#service_box .service_list li:nth-child(2) .detail .number {
					max-width: 92px;
					width: 100%;
				}
				#service_box .service_list li:nth-child(3) .detail .number {
					max-width: 90px;
					width: 100%;
				}
				#service_box .service_list li:nth-child(4) .detail .number {
					max-width: 92px;
					width: 100%;
				}
				#service_box .service_list li:nth-child(5) .detail .number {
					max-width: 90px;
					width: 100%;
				}
				#service_box .service_list li:nth-child(6) .detail .number {
					max-width: 94px;
					width: 100%;
				}
				#service_box .service_list li .detail .list_ttl {
					font-size: 36px;
					font-weight: 600;
					position: relative;
					display: inline-block;
					z-index: 5;
				}
				#service_box .service_list li .detail .list_txt {
					margin-top: 40px;
					text-align: left;
				}
					#service_box .service_list li .detail .list_ttl:before {
						content: "";
						height: 25px;
						width: 100%;
						background-color: #FFDE91;
						position: absolute;
						bottom: 4px;
						z-index: -1;
					}
				#service_box .service_list li .detail .btn_s {
					position: absolute;
					bottom: 0;
					left: 39%;
				}
				#service_box .service_list li:nth-child(even) .detail .btn_s {
					left: 22%;
					transform: translateX(0);
				}
	#service_box .btn_l {
		margin-top: 80px;
	}
		/*#service_box .btn_l a {
			background-color: #fff;
		}*/


/*============
  会社概要
============*/
#company {
	position: relative;
}

/*== #company_topArea ==*/
#company_topArea {
	margin-top: 60px;
	margin-bottom: 80px;
}
	
/*== #company_box ==*/
#company_box {
	padding-top: 160px;
	padding-bottom: 160px;
	background-color: #F8F8F8;
	position: relative;
}
	#company_box:before {
		content: "";
		position: absolute;
		top: -175px;
		left: 50%;
		transform: translateX(-50%);
		background-image: url(../img/pc/company.svg);
		background-repeat: no-repeat;
		background-size: contain;
		height: 260px;
		max-width: 1071px;
		width: 100%;
		z-index: -999;
	}
	#company_box .tips_menu {
		text-align: center;
		/* justify-content: center; */
	}
		#company_box .tips_menu li {
			background-color: transparent;
			border: none;
			border-radius: inherit;
			display: inline-block;
		}
		#company_box .tips_menu li + li {
			 margin-left: 0;
		}
			#company_box .tips_menu li a {
				height: 40px;
				line-height: 40px;
			}
#company_box .wave_inner:after {
	bottom: -10px;
}
	#company_box .greetings {
		max-width: 1000px;
		margin: 0 auto;
		position: relative;
		z-index: 999;
	}
		#company_box .greetings .ttl_h3 {
			font-size: 28px;
			font-weight: 600;
			line-height: 1.4282;
			text-align: center;
		}
		#company_box .greetings .img_box {
			margin: 40px auto 0;
			max-width: 880px;
			width: 88%;
		}
		#company_box .greetings .greetings_txt {
			text-align: center;
			margin-top: 40px;
		}
	#company_box .overview {
		margin: 120px auto 0;
		max-width: 880px;
	}
		#company_box .overview .ttl_h3 {
			font-size: 28px;
			font-weight: 600;
			line-height: 1.4282;
			text-align: center;
		}
		#company_box .overview .table_box {
			margin-top: 40px;
		}
			#company_box .overview .table_box .inview {
				display: flex;
				border-bottom: 1px solid #B7B7B7;
				padding-top: 40px;
				padding-bottom: 35px;
			}
			#company_box .overview .table_box .inview:first-child {
				border-top: 1px solid #B7B7B7;
			}
				#company_box .overview .table_box .inview dt {
					max-width: 250px;
					width: 100%;
					padding-left: 4.5454%;
					font-weight: 600;
				}
	#company_box .access {
		margin: 120px auto 0;
		max-width: 1000px;
		position: relative;
		z-index: 999;
	}
		#company_box .access .ttl_h3 {
			font-size: 28px;
			font-weight: 600;
			line-height: 1.4282;
			text-align: center;
		}
		#company_box .access .access_txt {
			text-align: center;
			margin-top: 40px;
		}
		#company_box .access .map {
			margin-top: 40px;
			font-size: 0;
		}
			#company_box .access .map iframe {
				max-width: 1000px;
				width: 100%;
				height: 600px;
			}


/*============
  プライバシーポリシー
============*/
#privacy {
	position: relative;
}

/*== #privacy_topArea ==*/
#privacy_topArea {
	margin-top: 60px;
	margin-bottom: 80px;
}
	/*#privacy_topArea .tips_box .txt_tips {
		padding-bottom: 80px;
	}*/
/*== #privacy_box ==*/
#privacy_box {
	background-color: #F8F8F8;
	padding-top: 85px;
	padding-bottom: 160px;
	position: relative;
}
	#privacy_box:before {
		content: "";
		position: absolute;
		top: -200px;
		left: 50%;
		transform: translateX(-50%);
		background-image: url(../img/pc/privacy.svg);
		background-repeat: no-repeat;
		background-size: contain;
		height: 260px;
		max-width: 1804px;
		width: 100%;
		z-index: -999;
	}
	#privacy_box .privacy_list {
		max-width: 800px;
		margin: 0 auto;
		flex-wrap: wrap;
	}
		#privacy_box .privacy_list li {
			max-width: 400px;
			width: 50%;
			padding-right: 5%;
			margin-bottom: 100px;
		}
		#privacy_box .privacy_list li:nth-child(even) {
			padding-right: 0;
			padding-left: 5%;
		}
		#privacy_box .privacy_list li:last-child {
			margin-bottom: 0;
			width: 100%;
			max-width: inherit;
		}
			#privacy_box .privacy_list li .ttl_h3 {
				font-size: 28px;
				font-weight: 600;
				line-height: 1.7142;
				padding-left: 45px;
			}
			#privacy_box .privacy_list li .list_txt {
				margin-top: 40px;
				text-align: justify;
			}
			#privacy_box .privacy_list li:last-child .list_txt a {
				border-bottom: 1px solid #212121;
			}
				#privacy_box .privacy_list li:last-child .list_txt a:hover {
					text-decoration: none;
					color: #2789CB;
					border-bottom: 1px solid #2789CB;
				}
				#privacy_box .privacy_list li ol {
					margin-top: 35px;
				}
					#privacy_box .privacy_list li ol li {
						margin-bottom: 0;
						padding-left: 0!important;
						width: 100%;
					}
					#privacy_box .privacy_list li ol li + li {
						margin-top: 20px;
					}

@media screen and (max-width:1440px) { 
	#privacy_box:before {
		top: -150px;
	}
}