@charset "UTF-8";


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

	SERVICE

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

.under_page_head{
	background-image: url('../images/service/page_kv.jpg');
}

.webp .under_page_head{
	background-image: url('../images/service/page_kv.webp');
}


.service_cont_wrapp{
	width: 1100px;
	margin: 95px auto 0;
	padding-bottom: 215px;
}

.service_cont_wrapp ul.service_cont_ul{
	display: flex;
	flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    counter-reset: service_num 0;
}

.service_cont_wrapp ul.service_cont_ul > li{
	width: 518px;
	margin-bottom: 160px;
	position: relative;
}

.service_cont_wrapp ul.service_cont_ul > li:nth-child(even){
	transform: translateY(50px);
}

.service_cont_wrapp ul.service_cont_ul > li .li_title{
	line-height: 1.6;
	margin-bottom: 24px;
	position: relative;
	display: flex;
	align-items: flex-end;
}

.service_cont_wrapp ul.service_cont_ul > li .li_title::before{
	counter-increment: service_num 1;
	content: counter(service_num) '';
	display: inline-block;
	font-style: italic;
	font-weight: 600;
	font-size: 76px;
	line-height: 1;
	font-family: "Roboto", sans-serif;
	border-right: 1px solid var(--text);
	padding-right: 20px;
	margin-right: 20px;
}

.service_cont_wrapp ul.service_cont_ul > li .li_title strong{
	display: block;
	font-size: 32px;
	font-weight: 600;
	letter-spacing: 1px;
}

.service_cont_wrapp ul.service_cont_ul > li .li_title small{
	display: block;
	font-size: 16px;
	letter-spacing: 1px;	
}

.service_cont_wrapp ul.service_cont_ul > li .catch{
	font-size: 21px;
	font-weight: 600;
	line-height: 1.4;
	margin-bottom: 10px;
}

.service_cont_wrapp ul.service_cont_ul > li .caption{
	font-size: 12px;
	line-height: 1.6;
	margin-bottom: 20px;
}

.service_cont_wrapp ul.service_cont_ul > li a{
	color: var(--text);
}

.service_cont_wrapp ul.service_cont_ul > li.no-posts a {
    pointer-events: none;
    cursor: default;
}

.service_cont_wrapp ul.service_cont_ul > li .image_block{
	position: relative;
}

.service_cont_wrapp ul.service_cont_ul > li .image_block .image_wrapp{
	width: 500px;
	height: 380px;
	overflow: hidden;
	position: relative;
}

.service_cont_wrapp ul.service_cont_ul > li .image_block a .image_wrapp img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all 0.2s linear;
}

.service_cont_wrapp ul.service_cont_ul > li .image_block a:hover .image_wrapp img{
	transform: scale(1.1);
}

.service_cont_wrapp ul.service_cont_ul > li.no-posts .image_block a:hover .image_wrapp img{
	transform: scale(1);
}

.service_cont_wrapp ul.service_cont_ul > li .image_block .en_name{
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 1px;
	transform: rotate(90deg);
	transform-origin: left bottom;
	position: absolute;
    top: -13px;
    left: 505px;
    white-space: nowrap;
}

.service_cont_wrapp ul.service_cont_ul > li .data_wrapp{
	display: inline-block;
	min-width: 360px;
	background: rgba(255, 255, 255, 0.8);
	border: 1px solid #C4C4C4;
	padding: 20px;
	position: absolute;
	bottom: -110px;
	right: 0;
	z-index: 2;
	box-sizing: border-box;
}

.service_cont_wrapp ul.service_cont_ul > li .data_wrapp .item{
	font-size: 21px;
	font-weight: 600px;
	line-height: 1;
	margin-bottom: 10px;
}

.service_cont_wrapp ul.service_cont_ul > li .data_wrapp ul{

}

.service_cont_wrapp ul.service_cont_ul > li .data_wrapp ul li{
	font-size: 13px;
	font-weight: 600;
	line-height: 1.6;
	padding-left: 1em;
	position: relative;
}

.service_cont_wrapp ul.service_cont_ul > li .data_wrapp ul li::before{
	content: '・';
	display: inline-block;
	position: absolute;
    top: 0;
    left: 0;
}







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

@media(max-width:1440px){


.service_cont_wrapp{
	width: 76.388889vw;
	margin: 6.597222vw auto 0;
	padding-bottom: 14.930556vw;
}

.service_cont_wrapp ul.service_cont_ul > li{
	width: 35.972222vw;
	margin-bottom: 11.111111vw;
}

.service_cont_wrapp ul.service_cont_ul > li:nth-child(even){
	transform: translateY(3.472222vw);
}

.service_cont_wrapp ul.service_cont_ul > li .li_title{
	margin-bottom: 1.666667vw;
}

.service_cont_wrapp ul.service_cont_ul > li .li_title::before{
	font-size: 5.277778vw;
	padding-right: 1.388889vw;
	margin-right: 1.388889vw;
}

.service_cont_wrapp ul.service_cont_ul > li .li_title strong{
	font-size: 2.222222vw;
}

.service_cont_wrapp ul.service_cont_ul > li .li_title small{
	font-size: 1.111111vw;	
}

.service_cont_wrapp ul.service_cont_ul > li .catch{
	font-size: 1.458333vw;
	margin-bottom: 0.694444vw;
}

.service_cont_wrapp ul.service_cont_ul > li .caption{
	font-size: 0.833333vw;
	margin-bottom: 1.388889vw;
}

.service_cont_wrapp ul.service_cont_ul > li .image_block .image_wrapp{
	width: 34.722222vw;
	height: 26.388889vw;
}

.service_cont_wrapp ul.service_cont_ul > li .image_block .en_name{
	font-size: 0.902778vw;
    top: -0.902778vw;
    left: 35.069444vw;
}

.service_cont_wrapp ul.service_cont_ul > li .data_wrapp{
	min-width: 25vw;
	padding: 1.388889vw;
	bottom: -7.638889vw;
}

.service_cont_wrapp ul.service_cont_ul > li .data_wrapp .item{
	font-size: 1.458333vw;
	margin-bottom: 0.694444vw;
}

.service_cont_wrapp ul.service_cont_ul > li .data_wrapp ul li{
	font-size: 0.902778vw;
}





}


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

@media(max-width:430px){


.service_cont_wrapp{
	width: auto;
	margin: 10.666667vw 5.333333vw 0;
	padding-bottom: 16vw;
}

.service_cont_wrapp ul.service_cont_ul{
	display: block;
}

.service_cont_wrapp ul.service_cont_ul > li{
	width: auto;
	margin-bottom: 8vw;
}

.service_cont_wrapp ul.service_cont_ul > li:nth-child(even){
	transform: translateY(0);
}

.service_cont_wrapp ul.service_cont_ul > li .li_title{
	margin-bottom: 5.333333vw;
}

.service_cont_wrapp ul.service_cont_ul > li .li_title::before{
	font-size: 12.266667vw;
	padding-right: 2.666667vw;
	margin-right: 2.666667vw;
}

.service_cont_wrapp ul.service_cont_ul > li .li_title strong{
	font-size: 5.333333vw;
}

.service_cont_wrapp ul.service_cont_ul > li .li_title small{
	font-size: 3.2vw;	
}

.service_cont_wrapp ul.service_cont_ul > li .catch{
	font-size: 4.266667vw;
	margin-bottom: 2.666667vw;
}

.service_cont_wrapp ul.service_cont_ul > li .caption{
	font-size: 3.2vw;
	margin-bottom: 5.333333vw;
}

.service_cont_wrapp ul.service_cont_ul > li a{
	color: var(--text);
}

.service_cont_wrapp ul.service_cont_ul > li .image_block .image_wrapp{
	width: 85.333333vw;
	height: 64vw;
}

.service_cont_wrapp ul.service_cont_ul > li .image_block a:hover .image_wrapp img{
	transform: scale(1);
}

.service_cont_wrapp ul.service_cont_ul > li .image_block .en_name{
	font-size: 3.2vw;
    top: -3.2vw;
    left: 86.666667vw;
}

.service_cont_wrapp ul.service_cont_ul > li .data_wrapp{
	min-width: 84.533333vw;
	max-width: calc(100% - 13.333333vw);
	padding: 4vw;
	position: relative;
	bottom: unset;
	top: -1.866667vw;
	right: unset;
	left: 5.333333vw;
}

.service_cont_wrapp ul.service_cont_ul > li .data_wrapp .item{
	font-size: 4.8vw;
	margin-bottom: 2.666667vw;
}

.service_cont_wrapp ul.service_cont_ul > li .data_wrapp ul li{
	font-size: 3.466667vw;
}








}

