@charset "utf-8";

/* ------------------------------
 製品情報（PC）
------------------------------ */
.contentsWide > .inBlock {
	padding: 0;
}
.cms_block.wide {
	padding: 100px 0;
	background-color: #0d2c4f;
	color: #fff;
}
.cms_text.amText {
	margin-bottom: 80px;
}
.cms_text.amText::after {
	content: "";
	clear: both;
	display: block;
}
.cms_block.wide .cms_text.amText h2,
.cms_text.w350 h2 {
	position: relative;
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
	font-size: 1.8rem;
	line-height: 1;
	font-weight: 500;
}
.cms_text.w350 h2 {
	margin-bottom: 55px;
}
.cms_block.wide .cms_text.amText h2 span,
.cms_text.w350 h2 span {
	display: block;
	margin-bottom: 12px;
	font-family: "Montserrat", sans-serif;
	font-size: 5.2rem;
	font-weight: 600;
	letter-spacing: .05em;
}
.cms_block.wide .cms_text.amText h2::before,
.cms_text.w350 h2::before {
	content: "";
	display: block;
	width: 115px;
	height: 4px;
	margin-bottom: 46px;
	background: rgba(224,0,71,1);
	background: linear-gradient(90deg, rgba(224,0,71,1) 0%, rgba(0,102,255,1) 100%);
}
.cms_text.amLink ul li {
	padding-left: 0;
}
.cms_text.amLink ul li::before {
	content: none;
}
.cms_text.amLink ul li a {
	display: block;
}
.cms_text.amLink ul li a img {
	margin-bottom: 12px;
}
.cms_text.amLink ul li a p,
.cms_text.w350 .cms_link {
	display: inline-block;
	position: relative;
	margin-bottom: 4px;
	margin-right: 48px;
	padding: 5px 0 2px;
	border-bottom: 1px solid #b7c0ca;
	color: #fff;
	font-weight: bold;
	text-decoration: none;
}
.cms_block.optronics {
	margin-bottom: 0;
	padding: 100px 0;
}
.optronics .cms_text.w350 .cms_link {
	color: #000;
}
.cms_text.amLink ul li a p::after,
.cms_text.w350 .cms_link::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: -48px;
	width: 40px;
	height: 40px;
	background: url(/shared/img/arrow_r40.svg) no-repeat 0 0 / cover;
}
.contentsWide > .cnavBlock {
	display: none;
}
@media print, screen and (min-width: 768px) {
	.cms_block.wide .cms_text.amText h2 {
		float: left;
		width: 435px;
	}
	.cms_text.amText p {
		float: left;
		width: 705px;
		padding-top: 50px;
	}
	.cms_text.amLink ul {
		display: flex;
		flex-wrap: wrap;
		gap: 34px 48px;
	}
	.cms_text.amLink ul li {
		width: 47.895%;
	}
	.optronics .cms_text.w350 {
		width: 30.702%;
		margin: 0;
	}
}
/* ------------------------------
 製品情報（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	.headlineText,
	.lead {
		text-align: left;
	}
	.cms_block.wide {
		padding: 50px 5%;
	}
	.cms_text.amText {
		margin-bottom: 45px;
	}
	.cms_block.wide .cms_text.amText h2,
	.cms_text.w350 h2 {
		margin-bottom: 25px;
		font-size: 1.7rem;
	}
	.cms_text.w350 h2 {
		margin-bottom: 25px;
	}
	.cms_block.wide .cms_text.amText h2 span,
	.cms_text.w350 h2 span {
		margin-bottom: 8px;
		font-size: 3.8rem;
	}
	.cms_block.wide .cms_text.amText h2::before,
	.cms_text.w350 h2::before {
		width: 86px;
		height: 3px;
		margin-bottom: 30px;
	}
	.cms_text.amLink ul li:not(:last-child) {
		margin-bottom: 25px;
	}
	.cms_block.optronics {
		margin-bottom: 0;
		padding: 50px 0;
	}
}

/* ------------------------------
 製品情報下層モーダル（PC）
------------------------------ */
/* モーダルリンク */
.popboxLink div a {
	display: block;
}
.popboxLink div a img {
	margin-bottom: 12px;
}
.popboxLink div a p {
	display: inline-block;
	position: relative;
	margin-bottom: 4px;
	margin-right: 48px;
	padding: 5px 0 2px;
	border-bottom: 1px solid #b7c0ca;
	color: #000;
	font-weight: bold;
	text-decoration: none;
}
.popboxLink div a p::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: -48px;
	width: 40px;
	height: 40px;
	background: url(/shared/img/plus.svg) no-repeat 0 0 / cover;
}
/* モーダルコンテンツ */
.pop-content {
	overflow-x: hidden;
	overflow-y: auto;
	position: relative;
}
.pop-content > .cms_text > p {
	margin-bottom: 25px;
}
@media print, screen and (min-width: 768px) {
	/* モーダルリンク */
	.popboxLink {
		display: flex;
		flex-wrap: wrap;
		gap: 45px;
	}
	.popboxLink div {
		width: 350px;
	}
	/* モーダルコンテンツ */
	.pop-content {
		width: 1240px;
		max-height: calc(100vh - 120px);
		padding: 50px;
		background-color: #fff;
	}
}
/* ------------------------------
 製品情報下層モーダル（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	/* モーダルリンク */
	.popboxLink div:not(:last-child) {
		margin-bottom: 25px;
	}
	.popboxLink div a p::after {
		bottom: 0;
		margin-top: auto;
		margin-bottom: auto;
	}
	/* モーダルコンテンツ */
	.pop-content {
		width: 100vw;
		height: 100vh;
		padding: 50px 5% 100px;
		background-color: rgba(255,255,255,.95);
	}
}

/* ------------------------------
 製品情報下層技術紹介リンク（PC）
------------------------------ */
.technologyLink .cms_image .cms_caption_b {
	margin-top: 0;

}
.technologyLink .cms_image .cms_caption_b a {
	display: block;
	margin-right: 0;
	padding: 20px 30px 35px;
	border-bottom: none;
	background-color: rgba(0,61,145,.05);
	color: #000;
	font-weight: normal;
}
.technologyLink .cms_image .cms_caption_b a.cms_link {
	margin-bottom: 0;
}
.technologyLink .cms_image .cms_caption_b a::after {
	content: none;
}
.technologyLink .cms_image .cms_caption_b a p {
	margin-bottom: 16px;
	padding-bottom: 16px;
	border-bottom: 1px dotted #b7c0ca;
	position: relative;
	line-height: 34px;
	font-weight: bold;
}
.technologyLink .cms_image .cms_caption_b a p::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 34px;
	height: 34px;
	background: url(/shared/img/arrow_r34.svg) no-repeat 0 0 / cover;
}
@media print, screen and (min-width: 768px) {
	.technologyLink .cms_image {
		margin-bottom: 0;
	}
	.technologyLink .cms_image a:hover + .cms_caption_b {
		opacity: .5;
	}
}
/* ------------------------------
 製品情報下層技術紹介リンク（SP）
------------------------------ */
@media screen and (max-width: 767px) {
	.technologyLink .cms_image .cms_caption_b a {
		display: block;
		padding: 15px 20px 20px;
		background-color: rgba(0,61,145,.05);
		color: #000;
	}
	.technologyLink .cms_image .cms_caption_b a p {
		margin-bottom: 11px;
		padding-bottom: 11px;
	}
}