@charset "utf-8";
/* CSS Document */

/*-----------------------------------------------------------------------------
	PC SP 共通
-----------------------------------------------------------------------------*/






/*-----------------------------------------------------------------------------
	PC
-----------------------------------------------------------------------------*/
@media screen and (min-width:768px){
	
	
	
	
	
	
/*----------------------------------
	会社概要
----------------------------------*/	
	.profile{
		position: relative;
		padding-bottom: 200px;
		margin-bottom: 140px;
	}
	
	.profile::after,
	.person::after{
		content: "";
		display: block;
		background-color: #7FC7CA;
		width: 39%;
		height: 126px;
		position: absolute;
		left: 0;
		bottom: 0;
	}
	
	.profile .flex,
	.person .flex{
		display: flex;
	}
	
	.profile .flex .img_box,
	.profile .flex .text_box,
	.person .flex .img_box,
	.person .flex .text_box{
		width: 50%;
	}
	
	.profile .flex .img_box figure:first-of-type{
		margin-bottom: 100px;
	}
	
	.profile .flex .img_box figure,
	.profile .flex .img_box .img_wrap,
	.person .flex .img_box .img_wrap{
		width: 575px;
		height: auto;
	}
	
	.profile .flex .img_box .img_wrap img,
	.person .flex .img_box .img_wrap img{
		width: 100%;
		height: 100%;
		object-fit: contain;
	}
	
	.profile .flex .img_box figure.map{
		aspect-ratio: 575/347;
	}
	
	.profile .flex .img_box figure.map iframe{
		width: 100%;
		height: 100%;		
	}
	
	figcaption{
		font-weight: 700;
		font-family: '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic','Noto Sans JP', sans-serif;
		margin-top: 30px;
	}
	
	.profile .flex .text_box>div,
	.person .flex .text_box>div{
		margin-left: 50px;
	}
	
	.profile .flex .text_box dl{
		display: flex;
		border-top: 1px solid #707070;
		padding: 30px 0;
	}
	
	.profile .flex .text_box dl:last-of-type{
		border-bottom: 1px solid #707070;
	}
	
	.profile .flex .text_box dt,
	.profile .flex .text_box dd{
		font-weight: 700;
		font-family: '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic','Noto Sans JP', sans-serif;		
	}
	
	.profile .flex .text_box dt{
		width: 130px;
	}
	
	.profile .flex .text_box dd{
		font-weight: 500;
		width: calc(100% - 130px);
	}
	
	
	
/*----------------------------------
	有資格者
----------------------------------*/	
	.person{
		position: relative;
		padding-bottom: 20px;
		margin-bottom: 240px;
	}
	
	.person::after{
		background-color: #A8A8A8;
		left: auto;
		right: 0;
	}
	
	/* .person .flex{
		flex-direction: row-reverse;
	} */
	
	.person .flex ul li{
		font-weight: 500;
		font-family: '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', 'Noto Sans JP', sans-serif;
		line-height: 2.8;
	}
	
	.person .flex .img_box .img_wrap{
		margin-left: auto;
	}
	
	.person .inner2 .w40{
		width: 45%;
		border-bottom: 1px solid #707070;
		border-top: 1px solid #707070;
		padding: 50px;
	}
	.person .inner2 .w60{
		width: 55%;
	}
	
	
/*----------------------------------
	所有機器
----------------------------------*/		
	.machine{
		margin-bottom: 160px;
	}
	
	.machine ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	.machine ul::after{
		content: "";
		display: block;
		width: 356px;
	}
	
	.machine ul li{
		margin-bottom: 100px;
	}
	
	.machine ul li,
	.machine ul li .img_wrap{
		width: 356px;
		height: auto;
	}
	.machine ul li .img_wrap{
		
	}
	
	.machine ul li .img_wrap img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	
	.machine ul li figcaption{
		font-weight: 500;
		text-align: center;
	}
	
	
	
	
}











/*-----------------------------------------------------------------------------
	SP
-----------------------------------------------------------------------------*/
@media screen and (max-width:767px){
	
	
	
	
/*----------------------------------
	会社概要(SP)
----------------------------------*/	
	.profile{
		position: relative;
		padding-bottom: 100px;
		margin-bottom: 70px;
	}
	
	.profile::after,
	.person::after{
		content: "";
		display: block;
		background-color: #7FC7CA;
		width: 35%;
		height: 66px;
		position: absolute;
		left: 0;
		bottom: 0;
	}
	
	.profile .inner2{
		width: 90%;
		margin: auto;
	}
	
	.profile .flex{
		display: flex;
		flex-direction: column-reverse;
	}
	
	.profile .flex .img_box figure:first-of-type{
		margin-bottom: 50px;
	}
	
	.profile .flex .img_box figure,
	.profile .flex .img_box .img_wrap,
	.person .flex .img_box figure,
	.person .flex .img_box .img_wrap{
		max-width: 575px;
		width: 100%;
		height: auto;
		margin: auto;
	}
	
	.profile .flex .img_box .img_wrap img,
	.person .flex .img_box .img_wrap img{
		width: 100%;
		height: 100%;
		object-fit: contain;
	}
	
	.profile .flex .img_box figure.map{
		aspect-ratio: 575/347;
	}
	
	.profile .flex .img_box figure.map iframe{
		width: 100%;
		height: 100%;		
	}
	
	figcaption{
		font-weight: 700;
		font-family: '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic','Noto Sans JP', sans-serif;
	}
	
	.profile .flex .text_box{
		margin-bottom: 40px;
	}
	
	.profile .flex .text_box>div{
		/*margin-left: 90px;*/
	}
	
	.profile .flex .text_box dl{
		display: flex;
		border-top: 1px solid #707070;
		padding: 30px 0;
		display: block;
	}
	
	.profile .flex .text_box dl:last-of-type{
		border-bottom: 1px solid #707070;
	}
	
	.profile .flex .text_box dt,
	.profile .flex .text_box dd{
		font-weight: 700;
		font-family: '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic','Noto Sans JP', sans-serif;		
	}
	
	.profile .flex .text_box dt{
		width: 115px;
		margin-bottom: 20px;
	}
	
	.profile .flex .text_box dd{
		font-weight: 500;
		width: 100%;
	}	
	
	
	
	
/*----------------------------------
	有資格者(SP)
----------------------------------*/	
	.person{
		position: relative;
		padding-bottom: 100px;
		margin-bottom: 70px;
	}
	
	.person::after{
		background-color: #A8A8A8;
		left: auto;
		right: 0;
	}
	
	.person .inner2{
		width: 90%;
		margin: auto;
	}
	
	.person .flex ul li{
		font-weight: 500;
		font-family: '游ゴシック体', YuGothic, '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', 'Yu Gothic', 'Noto Sans JP', sans-serif;
		line-height: 2.8;
	}
	
	.person .flex .img_box .img_wrap{
		margin-bottom: 10px;
		margin-top: 80px;
	}	
	
	.person .inner2 .w40{
		width: 100%;
		border-bottom: 1px solid #707070;
		border-top: 1px solid #707070;
		padding: 50px 0;
	}
	.person .inner2 .w60{
		width: 100%;
	}
	
	
	
/*----------------------------------
	所有機器(SP)
----------------------------------*/		
	.machine{
		margin-bottom: 80px;
	}
	
	.machine ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	
	.machine ul::after{
		content: "";
		display: block;
		width: 160px;
	}
	
	.machine ul li{
		margin: 0 5px 50px;
	}
	
	.machine ul li,
	.machine ul li .img_wrap{
		width: 165px;
		height: auto;
	}
	.machine ul li .img_wrap{
		
	}
	
	.machine ul li .img_wrap img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	
	.machine ul li figcaption{
		font-weight: 500;
		text-align: center;
		margin-top: 10px;
		font-size: 1rem;
	}	
	
	
	
	
}



