@charset "UTF-8";


/***************************************************

	case

***************************************************/

main {
    padding-bottom: 0;
}

.page_head .text_wrapp .en_title{
	padding-left: 66px;
}

.page_head .text_wrapp .en_title::before{
	content: '';
	display: inline-block;
	width: 50px;
	height: 50px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/icon_h1_case.svg');
	position: absolute;
    top: 12px;
    left: 0;
}



/********** single **********/

.solution_relation_wrapp{
	background: var(--color3);
	padding: 80px 0 0;
}

.solution_relation_wrapp .relation_title{
	font-size: 40px;
	font-weight: 500;
	line-height: 1.75;
	color: var(--color1);
	text-align: center;
	letter-spacing: 0.04em;
	margin-bottom: 40px;
}

.solution_relation_wrapp .solution_products{
	width: 1328px;
	margin: 0 auto;
}

.solution_relation_wrapp .solution_products ul{
	width: 1200px;
	margin: 0 auto -24px;
	display: flex;
	flex-wrap: wrap;
}

.solution_relation_wrapp .solution_products ul li{
	width: 282px;
	margin: 0 24px 24px 0;
	background: #fff;
}

.solution_relation_wrapp .solution_products ul li:nth-child(4n + 4){
	margin-right: 0;
}

.solution_relation_wrapp .solution_products ul li a{
	display: block;
	height: 100%;
    padding: 12px 12px 0;
    box-sizing: border-box;
    position: relative;
}

.solution_relation_wrapp .solution_products ul li a:hover{
	opacity: 1;
}

.solution_relation_wrapp .solution_products ul li a .image_wrapp{
	width: 100%;
	height: 163px;
	/*aspect-ratio: 16 / 9;*/
	overflow: hidden;
}

.solution_relation_wrapp .solution_products ul li a .image_wrapp img{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: all 0.2s linear;
	transform: scale(1.0);
}

.solution_relation_wrapp .solution_products ul li a:hover .image_wrapp img{
	transform: scale(1.05);
}

.solution_relation_wrapp .solution_products ul li a .text_block{
	padding: 16px 8px 60px;
	text-align: center;
}

.solution_relation_wrapp .solution_products ul li a .text_block .catch{
	font-size: 18px;
	font-weight: 400;
	line-height: 2.0;
	color: var(--color1);
	transition: all 0.2s linear;
}

.solution_relation_wrapp .solution_products ul li a:hover .text_block .catch{
	opacity: 0.5;
}

.solution_relation_wrapp .solution_products ul li a .text_block .title{
	font-size: 18px;
	font-weight: 400;
	line-height: 2.0;
	color: var(--color1);
	margin-bottom: 12px;
	transition: all 0.2s linear;
}

.solution_relation_wrapp .solution_products ul li a:hover .text_block .title{
	opacity: 0.5;
}

.solution_relation_wrapp .solution_products ul li a .text_block .link_btn{
	display: inline-block;
	width: 134px;
	height: 48px;
	border-radius: 48px;
	border: 1px solid var(--color1);
	background: var(--color1);
	color: #fff;
    position: absolute;
    bottom: 12px;
    left: 0;
    right: 0;
    margin: auto;
	transition: all 0.2s linear;
}

.solution_relation_wrapp .solution_products ul li a:hover .text_block .link_btn{
	opacity: 1;
	background: #fff;
	color: var(--color1);
}

.solution_relation_wrapp .solution_products ul li a .text_block .link_btn::after{
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/icon_arrow_forward3.svg');
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translate(0, -50%);
    transition: all 0.2s linear;
}

.solution_relation_wrapp .solution_products ul li a:hover .text_block .link_btn::after{
	background-image: url('../images/common/icon_arrow_forward.svg');
}

.solution_relation_wrapp .solution_products ul li a .text_block .link_btn strong{
	font-size: 16px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.04em;
    position: absolute;
    top: 50%;
    left: 24px;
    transform: translate(0, -50%);
}


.pagination{
	padding: 80px 0 120px;
	background: var(--color3);
}

.pagination ul{
	display: flex;
	justify-content: center;
    align-items: center;
	gap: 24px;
}

.pagination ul li{
	width: 177px;
}

.pagination ul li.back{
	width: 191px;
}

.pagination ul li span,
.pagination ul li a{
	display: block;
	width: 100%;
	height: 60px;
	line-height: 58px;
	border-radius: 60px;
	border: 1px solid var(--color1);
	position: relative;
	font-size: 18px;
	font-weight: 500;
	color: var(--color1);
	text-align: center;
	box-sizing: border-box;
	transition: all 0.2s linear;
}

.pagination ul li a:hover{
	background: var(--color1);
	color: #fff;
	opacity: 1;
}

.pagination ul li.prev span,
.pagination ul li.prev a{
	padding-left: 34px;
}

.pagination ul li.next span,
.pagination ul li.next a{
	padding-right: 34px;
}

.pagination ul li.next span::before,
.pagination ul li.next a::before,
.pagination ul li.prev span::before,
.pagination ul li.prev a::before{
	content: '';
	display: inline-block;
	width: 24px;
	height: 24px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	background-image: url('../images/common/icon_arrow_forward.svg');
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translate(0, -50%);
    transition: all 0.2s linear;
}

.pagination ul li.prev span::before,
.pagination ul li.prev a::before{
    right: unset;
    left: 20px;
    transform: translate(0, -50%) scale(-1, 1);
}

.pagination ul li.next a:hover::before,
.pagination ul li.prev a:hover::before{
	filter: brightness(0) invert(1);
}

.pagination ul li span{
	opacity: 0.3;
}



#single_wrapp h3.cont_head{
	font-size: 32px;
	font-weight: 700;
	line-height: 1.5;
}


/********************************************************************************
	リッキド用 CSS
********************************************************************************/

@media(max-width:1420px){


.solution_relation_wrapp .solution_products{
	width: 93.521127vw;
}


}


@media(max-width:1280px){


.solution_relation_wrapp .solution_products ul{
	width: 93.75vw;
	margin: 0 auto -1.875vw;
}

.solution_relation_wrapp .solution_products ul li{
	width: 22.03125vw;
	margin: 0 1.875vw 1.875vw 0;
}

.solution_relation_wrapp .solution_products ul li a{
    padding: 0.9375vw 0.9375vw 0;
}

.solution_relation_wrapp .solution_products ul li a .image_wrapp{

}

.solution_relation_wrapp .solution_products ul li a .text_block{
	padding: 1.25vw 0.625vw 4.6875vw;
}

.solution_relation_wrapp .solution_products ul li a .text_block .catch{
	font-size: 1.40625vw;
}

.solution_relation_wrapp .solution_products ul li a .text_block .title{
	font-size: 1.40625vw;
	margin-bottom: 0.9375vw;
}

.solution_relation_wrapp .solution_products ul li a .text_block .link_btn{
	width: 10.46875vw;
	height: 3.75vw;
	border-radius: 3.75vw;
    bottom: 0.9375vw;
}

.solution_relation_wrapp .solution_products ul li a .text_block .link_btn::after{
	width: 1.5625vw;
	height: 1.5625vw;
    right: 1.25vw;
}

.solution_relation_wrapp .solution_products ul li a .text_block .link_btn strong{
	font-size: 1.25vw;
    left: 1.875vw;
}







.solution_relation_wrapp .related_solution .column_list{
	width: 93.75vw;
}



}


/********************************************************************************
	スマートフォン用 CSS
********************************************************************************/

@media(max-width:680px){

.page_head .text_wrapp .en_title{
	padding-left: 11.2vw;
}

.page_head .text_wrapp .en_title::before{
	width: 9.066667vw;
	height: 9.066667vw;
    top: 1.6vw;
}



/********** single **********/

.single-case #breadcrumbs{
	margin-bottom: 8.533333vw;
}

.solution_relation_wrapp{
	padding: 17.066667vw 6.4vw 0;
}

.solution_relation_wrapp .relation_title{
	font-size: 6.4vw;
	line-height: 1.5;
	letter-spacing: 0;
	margin-bottom: 10.666667vw;
}

.solution_relation_wrapp .solution_products{
	width: auto;
}

.solution_relation_wrapp .solution_products ul{
	width: auto;
	margin: 0 auto;
	display: block;
}

.solution_relation_wrapp .solution_products ul li{
	width: auto;
	margin: 0 0 3.2vw;
}

.solution_relation_wrapp .solution_products ul li:last-child{
	margin-bottom: 0;
}

.solution_relation_wrapp .solution_products ul li a{
    padding: 3.2vw 3.2vw 0;
}

.solution_relation_wrapp .solution_products ul li a .image_wrapp{
	height: 45.333333vw;
}

.solution_relation_wrapp .solution_products ul li a:hover .image_wrapp img{
	transform: scale(1.0);
}

.solution_relation_wrapp .solution_products ul li a .text_block{
	padding: 4.266667vw 2.133333vw 13.866667vw;
	text-align: center;
}

.solution_relation_wrapp .solution_products ul li a .text_block .catch{
	font-size: 4.266667vw;
}

.solution_relation_wrapp .solution_products ul li a .text_block .title{
	font-size: 4.266667vw;
	margin-bottom: 4.266667vw;
}

.solution_relation_wrapp .solution_products ul li a:hover .text_block .title,
.solution_relation_wrapp .solution_products ul li a:hover .text_block .catch{
	opacity: 1;
}

.solution_relation_wrapp .solution_products ul li a .text_block .link_btn{
	width: 35.733333vw;
	height: 12.8vw;
	border-radius: 12.8vw;
	bottom: 3.2vw;
}

.solution_relation_wrapp .solution_products ul li a .text_block .link_btn::after{
	width: 5.333333vw;
	height: 5.333333vw;
    right: 4.266667vw;
}

.solution_relation_wrapp .solution_products ul li a .text_block .link_btn strong{
	font-size: 4.266667vw;
    left: 6.4vw;
}


.pagination{
	padding: 17.066667vw 0 42.666667vw;
}

.pagination ul{
	gap: 5.333333vw;
	position: relative;
}

.pagination ul li{
	width: 40.266667vw;
}

.pagination ul li.back{
	width: 43.733333vw;
	position: absolute;
	top: 21.333333vw;
	left: 0;
	right: 0;
	margin: auto;
}

.pagination ul li span,
.pagination ul li a{
	height: 12.8vw;
	line-height: 11.733333vw;
	border-radius: 12.8vw;
	font-size: 4.266667vw;
}

.pagination ul li.prev span,
.pagination ul li.prev a{
	padding-left: 7.466667vw;
}

.pagination ul li.next span,
.pagination ul li.next a{
	padding-right: 7.466667vw;
}

.pagination ul li.next span::before,
.pagination ul li.next a::before,
.pagination ul li.prev span::before,
.pagination ul li.prev a::before{
	width: 5.333333vw;
	height: 5.333333vw;
    right: 4.266667vw;
}

.pagination ul li.prev span::before,
.pagination ul li.prev a::before{
    right: unset;
    left: 4.266667vw;
    transform: translate(0, -50%) scale(-1, 1);
}



#single_wrapp h3.cont_head{
	font-size: 5.333333vw;
}




}

