@charset "utf-8";
/* CSS Document */
/*===============================
TOP
===============================*/
/* main
--------------------------------------*/
#top .sec_main .sec_inner{
	position: relative;
}
#top .sec_main .main_img_inner{
	display: block;
	position: relative;
}
#top .sec_main .main_img_inner .btn{
	position: absolute;
	left: 50%;
	bottom: 13.52vw;
	transform: translateX(-50%);
	background-color: #FFFF3A;
	width: 85.5vw;
	height: 14.49vw;
}
#top .sec_main .slide2 .btn{
	bottom: 12.07vw;
}
#top .sec_main .main_img_inner .btn .icon,
#top .sec_main .main_img_inner .btn .txt{
	position: relative;
	z-index: 2;
}
#top .sec_main .main_img_inner .btn .icon{
	width: 7.92vw;
	height: 5.28vw;
}
#top .sec_main .main_img_inner .btn .icon svg{
	width: 100%;
	height: 100%;
}
#top .sec_main .main_img_inner .btn .icon path{
	fill: #2D2D2D;
}
#top .sec_main .main_img_inner .btn .txt{
	color: #2D2D2D;
	font-size: 2rem;
	margin-left: 1.93vw;
	font-weight: 700;
}
#top .sec_main .main_slider_pagination{
	position: absolute;
	bottom: 2.69%;
	z-index: 2;
}
#top .sec_main .slider_arrows{
	height: 90px;
	top: 50%;
	transform: translateY(-50%);
}
#top .sec_main .slider_prev,
#top .sec_main .slider_next{
	background-color: rgba(255, 255, 255, .85);
	width: 40px;
	height: 90px;
}
#top .sec_main .slider_prev{
	left: 0;
}
#top .sec_main .slider_next{
	right: 0;
}
#top .sec_main .slider_prev:before,
#top .sec_main .slider_next:before{
	width: 14px;
	height: 14px;
	border-color: #000;
}

@media screen and (max-width: 959px) {
	#top .sec_main .main_slider_pagination{
		left: 50%;
		transform: translateX(-50%);
	}
}
@media screen and (max-width: 599px) {
	#main_slider .swiper-slide .pc{
		display: none;
	}
	#top .sec_main .slider_arrows{
		display: none;
	}
}

@media screen and (min-width: 600px) {
	#main_slider .swiper-slide .sp{
		display: none;
	}
	#top .sec_main .main_img_inner .btn{
		bottom: 35px;
		width: 300px;
		height: 40px;
	}
	#top .sec_main .slide2 .btn{
		bottom: 27px;
	}
	#top .sec_main .main_img_inner .btn .icon{
		width: 20px;
		height: 12px;
	}
	#top .sec_main .main_img_inner .btn .txt{
		font-size: 15px;
		margin-left: 7px;
	}
}
@media screen and (min-width: 960px) {
	#top .sec_main .main_img_inner .btn{
		bottom: 40px;
		width: 370px;
		height: 60px;
	}
	#top .sec_main .slide2 .btn{
		bottom: 25px;
	}
	#top .sec_main .main_img_inner .btn .icon{
		width: 24px;
		height: 16px;
	}
	#top .sec_main .main_img_inner .btn .txt{
		font-size: 20px;
		margin-left: 10px;
	}
	#top .sec_main .main_slider_pagination{
		right: 7.69%;
	}
}
@media screen and (min-width: 1100px) {
	#top .sec_main .main_img_inner .btn{
		bottom: 50px;
	}
	#top .sec_main .main_img_inner .btn:before{
		background: #2D2D2D;
	}
	#top .sec_main .main_img_inner .btn .icon path{
		transition: fill .3s cubic-bezier(.455,.03,.515,.955);
	}
	#top .sec_main .main_img_inner .btn .txt{
		transition: color .3s cubic-bezier(.455,.03,.515,.955);
	}
	#top .sec_main .main_img_inner .btn:hover .icon path{
		fill: #fff;
	}
	#top .sec_main .main_img_inner .btn:hover .txt{
		color: #fff;
	}
	#top .sec_main .swiper-slide img{
		position: relative;
		width: 1300px;
		height: 500px;
		top: 0;
		left: 0;
		transform: translate(0);
	}
	#top .sec_main .slider_prev:hover,
	#top .sec_main .slider_next:hover{
		background-color: rgba(255, 255, 255, .65);
	}
}
@media screen and (min-width: 1300px) {
	#top .sec_main .sec_inner{
		overflow: hidden;
	}
	#main_slider{
		width: 100%;
		max-width: 1300px;
		margin: 0 auto;
		overflow: visible;
	}
	#top .sec_main .slider_arrows{
		width: 1300px;
		left: 50%;
		transform: translate(-50%, -50%);
	}
}

/* side
--------------------------------------*/
@media screen and (min-width: 600px) {
	#top .l--side_wrap{
		padding-bottom: 70px;
	}
}

/* case
--------------------------------------*/
#top .sec_case .sec_ttl{
	padding-right: 0;
}
#top .sec_case .blc_case{
	position: relative;
}
#top .sec_case .blc_case:not(:last-child){
	margin-bottom: 10.86vw;
}
#top .sec_case .blc_ttl{
	margin-bottom: 4.1vw;
}
#top .sec_case .blc_ttl{
	display: flex;
	align-items: center;
}
#top .sec_case .blc_ttl .img{
	width: 7.97vw;
	height: 5.79vw;
}
#top .sec_case .blc_ttl img{
	height: 100%;
	width: auto;
}
#top .sec_case .blc_ttl span{
	font-size: 1.9rem;
	font-weight: 700;
	vertical-align: middle;
}
#top .sec_case .to_archive span{
	color: #005BAC;
	font-size: 1.5rem;
}

@media screen and (max-width: 599px) {
	#top .sec_case .blc_case .box_archive{
		margin-top: 6.03vw;
	}
	#top .sec_case .blc_case .to_archive{
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		height: 14.49vw;
		border: solid 1px #005BAC;
	}
}

@media screen and (min-width: 600px) {
	#top .sec_case .blc_case:not(:last-child){
		margin-bottom: 57px;
	}
	#top .sec_case .blc_ttl{
		margin-bottom: 25px;
	}
	#top .sec_case .blc_ttl .img{
		width: 40px;
		height: 30px;
	}
	#top .sec_case .blc_case .blc_ttl span{
		font-size: 25px;
	}
	#top .sec_case .blc_case .box_archive{
		display: inline-block;
		position: absolute;
		top: 15px;
		right: 0;
	}
	#top .sec_case .blc_case .to_archive span{
		font-size: 15px;
	}
}
@media screen and (min-width: 1100px) {
	#top .sec_case .blc_case .to_archive:hover span{
		text-decoration: underline;
	}
}

#top .sec_case .product_list{
	background-color: #E9E9E9;
	padding: 4.83vw;
}
#top .sec_case .product_item{
	display: flex;
	background-color: #FFF;
	border: solid 1px #DCDCDC;
	box-sizing: border-box;
}
#top .sec_case .product_item .item_img{
	width: 50.31%;
}
#top .sec_case .product_item .item_img .img{
	width: 100%;
	height: 100%;
}
#top .sec_case .product_item .item_content{
	flex:1;
	height: 25.6vw;
	display: flex;
	align-items: center;
	padding: 0 2.4vw 0 2.7vw;
	font-size: 1.6rem;
	line-height: 1.625;
}

@media screen and (max-width: 599px) {
	#top .sec_case .product_item:not(:last-child){
		margin-bottom: 2.41vw;
	}
}

@media screen and (min-width: 600px) {
	#top .sec_case .product_list{
		padding: 40px;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#top .sec_case .product_item{
		width: calc((100% - 14px) / 2);
	}
	#top .sec_case .product_item:nth-child(n+3){
		margin-top: 14px;
	}
	#top .sec_case .product_item .item_img{
		width: 41.79%;
	}
	#top .sec_case .product_item .item_content{
		height: 120px;
		padding: 0 10px;
		font-size: 18px;
		line-height: 1.44;
	}
}
@media screen and (min-width: 960px) {
	#top .sec_case .product_item .item_content{
		height: 106px;
		padding: 0 15px;
	}
}
@media screen and (min-width: 1100px) {
	#top .sec_case .product_item:hover .hover_layer{
		opacity: 1;
	}
	#top .sec_case .product_item:hover .hover_txt{
		opacity: 1;
		transform: translateX(-50%) translateY(-50%);
		transition-delay: .15s;
	}
}

#top .sec_case .industry_list{
	display: flex;
	flex-wrap: wrap;
}
#top .sec_case .industry_item{
	width: calc((100% - 7.24vw) / 2);
}
#top .sec_case .industry_item .item_ttl{
	display: inline-block;
	margin-top: 3vw;
	margin-bottom: 3vw;
	line-height: 1.2;
	font-size: 1.6rem;
	font-weight: 700;
}
#top .sec_case .industry_item .item_txt{
	font-size: 1.4rem;
	line-height: 1.64;
}

@media screen and (max-width: 1099px) {
	#top .sec_case .industry_item:nth-child(odd){
		margin-right: 30px;
	}
	#top .sec_case .industry_item:nth-child(n+3){
		margin-top: 25px;
	}
}
@media screen and (max-width: 599px) {
	#top .sec_case .industry_item:nth-child(odd){
		margin-right: 7.24vw;
	}
	#top .sec_case .industry_item:nth-child(n+3){
		margin-top: 6.03vw;
	}
}

@media screen and (min-width: 600px) {
	#top .sec_case .blc_case.industry .blc_ttl img{
		width: 31px;
		padding-left: 2px;
		padding-right: 8px;
	}
	#top .sec_case .industry_item{
		width: calc((100% - 30px) / 2);
	}
	#top .sec_case .industry_item .item_ttl{
		margin-top: 15px;
		margin-bottom: 10px;
		font-size: 18px;
	}
	#top .sec_case .industry_item .item_txt{
		font-size: 13px;
		line-height: 1.76;
	}
}
@media screen and (min-width: 1100px) {
	#top .sec_case .industry_item{
		width: 264px;
	}
	#top .sec_case .industry_item:not(:nth-child(3n)){
		margin-right: calc((100% - 792px) / 2);
	}
	#top .sec_case .industry_item:nth-child(n+4){
		margin-top: 27px;
	}
}

#top .sec_case .problem_list{
	background-color: #E9E9E9;
	padding: 4.83vw;
}
#top .sec_case .problem_item{
	display: flex;
	align-items: center;
	box-sizing: border-box;
	background-color: #fff;
	border: solid 1px #DCDCDC;
	width: 100%;
	min-height: 14.49vw;
	padding: 2vw 7vw 2vw 9.66vw;
}
#top .sec_case .problem_item span{
	font-size: 1.6rem;
	line-height: 1.2;
}
#top .sec_case .problem_item span:before{
	border-color: #005BAC;
	top: calc(1.2em / 2);
}

@media screen and (max-width: 1099px) {
	#top .sec_case .problem_item:not(:last-child){
		margin-bottom: 10px;
	}
}
@media screen and (max-width: 599px) {
	#top .sec_case .problem_item:not(:last-child){
		margin-bottom: 2.41vw;
	}
}

@media screen and (min-width: 600px) {
	#top .sec_case .blc_case.problem .blc_ttl img{
		width: 25px;
		padding-left: 4px;
		padding-right: 12px;
	}
	#top .sec_case .problem_list{
		padding: 40px;
	}
	#top .sec_case .problem_item{
		min-height: 80px;
		padding: 10px 30px;
	}
	#top .sec_case .problem_item span{
		font-size: 18px;
	}
}
@media screen and (min-width: 1100px) {
	#top .sec_case .problem_list{
		display: flex;
		flex-wrap: wrap;
	}
	#top .sec_case .problem_item{
		width: calc((100% - 14px) / 2);
		transition:color .3s cubic-bezier(.455,.03,.515,.955)
	}
	#top .sec_case .problem_item:hover{
		color: #FFF;
	}
	#top .sec_case .problem_item span:before{
		transition: border .4s ease;
	}
	#top .sec_case .problem_item:hover span:before{
		border-color: #FFF;
	}
	#top .sec_case .problem_item:nth-child(odd){
		margin-right: 14px;
	}
	#top .sec_case .problem_item:nth-child(n+3){
		margin-top: 14px;
	}
}

/* bnr
--------------------------------------*/
#top .sec_solution_bnr{
	padding-bottom: 12.07vw;
}
#top .sec_solution_bnr .solution_bnr{
	display: block;
}
@media screen and (min-width: 1100px) {
	#top .sec_solution_bnr{
		padding-bottom: 70px
	}
}

/* report
--------------------------------------*/
#top .sec_report{
	background-color: #E9E9E9;
	padding-top: 12.07vw;
	padding-bottom: 12.07vw;
}
#top .sec_report .blc_slider{
	position: relative;
	margin-bottom: 7.24vw;
}
#top .sec_report .report_item{
	width: 60.62vw;
}
#top .sec_report .report_item .item_ttl{
	font-size: 1.4rem;
	line-height: 1.64;
	margin-top: 3.62vw;
	margin-bottom: 3.62vw;
}
#top .sec_report .report_item .item_link{
	text-align: right;
}
#top .sec_report .report_item .to_detail{
	display: inline-block;
	padding-left: 11px;
	font-size: 1.4rem;
}
#top .sec_report .slider_arrows{
	top: 14.49vw;
}

@media screen and (max-width: 599px) {
	#top .sec_report .blc_slider{
		width: 100%;
	}
}

@media screen and (min-width: 600px) {
	#top .sec_report{
		padding-top: 70px;
		padding-bottom: 70px;
	}
	#top .sec_report .blc_slider{
		margin-bottom: 70px;
	}
	#top .sec_report .swiper-wrapper{
		display: flex;
		flex-wrap: wrap;
	}
	#top .sec_report .report_item{
		width: calc((100% - 20px * 3) / 4);
		height: auto;
		display: flex;
		flex-direction: column;
	}
	#top .sec_report .report_item:not(:nth-child(4n)){
		margin-right: 20px;
	}
	#top .sec_report .report_item:nth-child(n+5){
		margin-top: 40px;
	}
	#top .sec_report .report_item .item_ttl{
		font-size: 15px;
		line-height: 1.53;
		margin-top: 15px;
		margin-bottom: 15px;
		flex: 1;
	}
	#top .sec_report .report_item .to_detail{
		font-size: 15px;
	}
	#top .sec_report .slider_arrows{
		display: none;
	}
}

/*===============================

===============================*/
/*
--------------------------------------*/
@media screen and (min-width: 600px) {
}
@media screen and (min-width: 960px) {
}
@media screen and (min-width: 1100px) {
}
