@charset "utf-8";

/* ------------------------------
 メインイメージ（PC）
------------------------------ */
.mainImgBox {
	position: relative;
	z-index: 800;
}
.mainImgBox::after {
	content: "";
	display: block;
	clear: both;
}
.mainTitle {
	margin: auto;
	font-size: 4.8rem;
	font-weight: bold;
	line-height: 1.5;
}
.mainTextBox {
	display: block;
	position: relative;
	margin-top: -200px;
	margin-bottom: -65px;
	padding-top: 290px;
	padding-bottom: 160px;
	background-color:#f2f6f8;
	z-index: 0;
}
.mainTextBox .mainLogo {
	text-align: center;
}
.mainTextBox .mainLogo img {
	margin-bottom: 20px;
}
.mainTextBox .mainLogo p {
	font-size: 1.6rem;
	font-weight: bold;
}
@media print, screen and (min-width: 768px) {
	.mainImgBox .mainImg {
		width: 80%;
		float: right;
	}
	.mainImgBox .mainImg img {
		width: 100%;
		min-width: 1092px;
		object-fit: cover;
	}
	.mainTitle {
		width: 1140px;
		position: absolute;
		bottom: 165px;
		left: 0;
		right: 0;
	}
	.mainTextBox .mainText {
		float: left;
	}
	.mainTextBox .mainLogo {
		float: right;
		width: 250px;
		padding-top: 16px;
	}
}
@media print, screen and (min-width: 1366px) {
	.mainImgBox .mainImg {
		width: 70%;
	}
}
/* ------------------------------
 メインイメージ（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	.mainTextBox {
		margin-top: 0;
		padding-top: 40px;
		padding-bottom: 120px;
	}
	.mainTextBox .cms_block {
		width: 100%;
		padding-right: 5%;
		padding-left: 5%;
	}
	.mainTitle {
		font-size: 2.8rem;
		margin-bottom: 20px;
	}
	.mainTextBox .mainText {
		margin-bottom: 40px;
	}
}
@media screen and (max-width: 360px) {
	.mainTitle {
		font-size: 2.6rem;
	}
}
@media screen and (max-width: 320px) {
	.mainTitle {
		font-size: 2.4rem;
	}
}

/* ------------------------------
 SIerの視点（PC）
------------------------------ */
.visionBlock {
	text-align: center;
	margin-bottom: 100px;
}
.visionBlock h3 br {
	display: none;
}
.visionBlock img {
	display: block;
	margin: 0 auto;
}
.cms_block.visionBox .cms_image {
	position: relative;
	height: 196px;
	padding-top: 42px;
	border-radius: 16px;
	background-color: #32a1bf;
	color: #fff;
}
.cms_block.visionBox .cms_image:nth-child(2) {
	background-color: #2d7ead;
}
.cms_block.visionBox .cms_image:last-child {
	background-color: #2b587a;
}
.cms_block.visionBox .cms_image img {
	width: auto;
	height: 56px;
	margin-bottom: 28px;
}
.cms_block.visionBox .cms_image .cms_caption_b {
	position: relative;
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: .1em;
}
.cms_block.visionBox .cms_image .cms_caption_b span {
	display: inline-block;
	position: relative;
}
.cms_block.visionBox .cms_image .cms_caption_b span::before {
	content: "・・・・";
	display: inline-block;
	position: absolute;
	top: -17px;
	left: 0;
}
.cms_block.visionBox .cms_image:last-child .cms_caption_b span::before {
	content: "・・・・・・";
}
@media print, screen and (min-width: 768px) {
	.cms_block.visionBox {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 0 !important;
		padding-bottom: 64px;
	}
	.cms_block.visionBox .cms_image {
		width: 350px;
		margin-bottom: 0 !important;
	}
	.cms_block.visionBox .cms_image:not(:last-child) {
		margin-right: 45px;
	}
	.cms_block.visionBox .cms_image:not(:last-child)::after {
		content: "";
		position: absolute;
		top: 50%;
		right: -34px;
		width: 24px;
		height: 24px;
		margin-top: -12px;
		background: url(/shared/img/icon_cross.png) no-repeat 0 0 / cover;
	}
	.visionBlock .btn {
		margin-top: -162px;
		padding: 162px 0 100px;
		background-color: #f2f6f8;
	}
}
/* ------------------------------
 SIerの視点（SP）
------------------------------ */
@media screen and (max-width:767px) {
	.visionBlock {
		margin-bottom: 35px;
	}
	.cms_block.visionBox {
		width: 100%;
		margin-bottom: 0;
		padding-right: 5%;
		padding-left: 5%;
		background: linear-gradient(0deg, rgba(242,246,248,1) 0%, rgba(242,246,248,1) 50%, rgba(255,255,255,1) 50%, rgba(255,255,255,1) 100%);
	}
	.cms_block.visionBox .cms_image:not(:last-child) {
		margin-bottom: 64px;
	}
	.cms_block.visionBox .cms_image:not(:last-child)::after {
		content: "";
		position: absolute;
		bottom: -44px;
		left: 50%;
		width: 24px;
		height: 24px;
		margin-left: -12px;
		background: url(/shared/img/icon_cross.png) no-repeat 0 0 / cover;
	}
	.cms_block.visionBox .cms_image .cms_caption_b {
		font-size: 1.7rem;
	}
	.visionBlock .btn {
		padding: 40px 0;
		background-color: #f2f6f8;
	}
}
@media screen and (max-width: 375px) {
	.visionBlock h3 br {
		display: inline;
	}
}

/* ------------------------------
 SIerの事業紹介（PC）
------------------------------ */
.businessBlock {
	position: relative;
	margin-bottom: 80px;
}
.businessBlock::after {
	content: "";
	display: block;
	clear: both;
}
@media print, screen and (min-width: 768px) {
	.businessBlock {
		height: 534px;
		padding-top: 40px;
		background: linear-gradient(0deg, rgba(242,246,248,1) 0%, rgba(242,246,248,1) 59%, rgba(255,255,255,1) 59%, rgba(255,255,255,1) 100%);
		margin-bottom: 0;
	}
	.businessBlock .inBlock {
		width: 1140px;
	}
	.cms_block.businessBox h2 {
		margin-bottom: 35px !important;
		text-align: left;
	}
	.cms_block.businessBox p {
		width: 550px;
		margin-bottom: 55px;
	}
	.cms_block.businessBox .btn {
		margin-bottom: 40px;
		text-align: left;
	}
	.cms_block.businessBox .btn a {
		text-align: center;
	}
	.businessImg {
		position: absolute;
		top: 0;
		right: 0;
		left: calc(50% + 32px);
	}
	.businessImg img {
		width: 100%;
		height: 434px;
		object-fit: cover;
	}
}
/* ------------------------------
 SIerの事業紹介（SP）
------------------------------ */
@media screen and (max-width:767px) {
	.businessBlock {
		margin-bottom: 35px;
	}
	.cms_block.businessBox {
		width: 100%;
		margin-bottom: 40px;
		padding-right: 5%;
		padding-left: 5%;
	}
	.cms_block.businessBox p {
		margin-bottom: 35px;
	}
}

/* ------------------------------
 リューション事例（PC）
------------------------------ */
.solutionBlock {
	position: relative;
	margin-bottom: 80px;
}
.solutionBlock::after {
	content: "";
	display: block;
	clear: both;
}
@media print, screen and (min-width: 768px) {
	.solutionBlock {
		height: 534px;
		padding-top: 40px;
		background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 59%, rgba(242,246,248,1) 59%, rgba(242,246,248,1) 100%);
	}
	.solutionBlock .inBlock {
		width: 1140px;
	}
	.solutionBlock .solutionBox {
		width: 538px;
		margin-right: 0;
	}
	.cms_block.solutionBox h2 {
		margin-bottom: 35px !important;
		text-align: left;
	}
	.cms_block.solutionBox p {
		width: 550px;
		margin-bottom: 55px;
	}
	.cms_block.solutionBox .btn {
		margin-bottom: 40px;
		text-align: left;
	}
	.cms_block.solutionBox .btn a {
		text-align: center;
	}
	.solutionImg {
		position: absolute;
		top: 0;
		left: 0;
		right: calc(50% + 32px);
	}
	.solutionImg img {
		width: 100%;
		height: 434px;
		object-fit: cover;
	}
}
/* ------------------------------
 リューション事例（SP）
------------------------------ */
@media screen and (max-width:767px) {
	.solutionBlock {
		margin-bottom: 35px;
	}
	.cms_block.solutionBox {
		width: 100%;
		margin-bottom: 40px;
		padding-right: 5%;
		padding-left: 5%;
	}
	.cms_block.solutionBox p {
		margin-bottom: 35px;
	}
}
/* ------------------------------
 AI連携・省人型 ロボット外観検査装置ソリューション
------------------------------ */
.btn_new_block {
	margin-bottom: 90px !important;
	width: 800px;
}
.btn_new {
	overflow: hidden;
	position: relative;
}
.btn_new a {
	background: #EB5C00;
	color: #fff;
	padding: 30px;
	display: block;
	text-align: center;
	line-height: 1.75;
}
.btn_new a:hover {
    opacity: 1;
    background-color: #f27d14;
}
.btn_new small {
	display: block;
	font-size: 1.6rem;
}
.btn_new p {
	font-weight: bold;
	font-size: 2.4rem;
}
.btn_new::after {
	display: block;
    content: 'NEW';
    background: #FCEE21;
    width: 7em;
    height: 7em;
    color: #000000;
    text-align: center;
    line-height: 11.5em;
    transform: rotate(45deg);
    position: absolute;
    top: -3.5em;
    right: -3.5em;
    font-size: 12px;
    font-weight: bold;
}
/* ------------------------------
 AI連携・省人型 ロボット外観検査装置ソリューション（SP）
------------------------------ */
@media screen and (max-width:767px) {
	.btn_new small {
		font-size: 1.3rem;
	}
	.btn_new p {
		font-size: 2rem;
	}
	.btn_new_block {
		margin-bottom: 60px !important;
		width: auto;
	}
}