@charset "utf-8";
.sp {
	display: none;
}

.pc {
	display: block;
}

#rContent {
	padding: 0;
}

#rContainer {
	text-align: left;
	max-width: none;
}

/*========== FV ==========*/
.fv {
	width: min(80%, 1540px);
	margin: 110px auto;
	position: relative;
	z-index: 1;
}

.img_fv img {
	width: 100%;
}

.wrap_txt_fv {
	color: #fff;
	font-weight: 500;
	position: absolute;
	top: 50%;
	left: min(calc(65 / 1920 * 100vw), 65px);
	transform: translateY(-50%);
}

.lead_txt_fv {
	font-size:  min(calc(24 / 1920 * 100vw), 24px);
	letter-spacing: 0.1em;
	margin-bottom:  min(calc(40 / 1920 * 100vw), 40px);
}

.ttl_fv {
	display: flex;
	gap: min(calc(32 / 1920 * 100vw), 32px);
	letter-spacing: 0.1em;
}

.ttl_fv span:first-child {
	font-size: min(calc(48 / 1920 * 100vw), 48px);
	position: relative;
}

.ttl_fv span:first-child::after {
	content: "";
	display: block;
	width: 1px;
	height: 100%;
	background: #fff;
	position: absolute;
	top: 0;
	right: max(calc(-16 / 1920 * 100vw), -16px);
}

.ttl_fv span:nth-child(2) {
	font-size: min(calc(57 / 1920 * 100vw), 57px);
	font-weight: 400;
	line-height: calc(64 / 57);
}

/*========== 主な特長 ==========*/
.contents {
	margin-bottom: 64px;
}

.contents:last-child {
	margin-bottom: 0;
}

.ttl_h3 {
	font-size: 36px;
	font-weight: 400;
	line-height: calc(64.8 / 36);
	letter-spacing: 0.1em;
	margin-bottom: 24px;
}

.txt {
	font-size: 16px;
	font-weight: 300;
	line-height: 2;
}

.flex_box {
	display: flex;
	justify-content: center;
	gap: 30px;
}

.bg_white {
	background: #fff;
	padding: 24px 20px;
	box-sizing: border-box;
	border-radius: 10px;
}

.ul_unit {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 16px 22px;
}

.ul_unit li {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.ul_unit li img {
	height: 105px;
}

.ul_unit li span {
	display: block;
	text-align: center;
	margin-top: 16px;
	font-size: 14px;
	font-weight: 300;
}

/* 製品の特長 */
.ttl_h4 {
	font-size: 18px;
	line-height: 2;
	font-weight: 400;
	margin-bottom: 8px;
}

.ul_img {
	display: flex;
	gap: 8px;
}

/*========== 参考仕様 ==========*/
.specification .ttl_h3 span {
	position: relative;
}

.specification .ttl_h3 sup {
	font-size: 16px;
	position: absolute;
	top: 0;
	right: 0;
	transform: translate(100%, 80%);
}

.ttl_h4_2 {
	font-size: 28px;
	font-weight: 400;
	letter-spacing: 0.05em;
	line-height: calc(50.4 / 28);
	margin-bottom: 24px;
}

.img_specification {
	width: min(100%, 600px);
	margin: 0 auto 24px;
}

/* テーブル */
.table_specification {
	width: 100%;
	box-sizing: border-box;
	border-collapse: collapse;
	border: 1px solid #8C8C8C;
}

.table_specification th,
.table_specification td {
	border-collapse: collapse;
	border: 1px solid #8C8C8C;
	padding: 8px 20px;
	font-size: 16px;
	font-weight: 300;
	vertical-align: text-top;
}

.specification2 .table_specification th,
.specification2 .table_specification td {
	width: 50%;
}

.table_specification th {
	background: rgba(40, 40, 40, 0.1);
}

.col1 {
	width: 17.865169%;
}

.col2 {
	width: 33.258427%;
}

.col3 {
	width: 48.876404%;
}


.table_note {
	font-size: 10px;
	vertical-align: top;
}

.ul_table {
	margin-top: 8px;
}

.ul_table li {
	margin-bottom: 8px;
	font-size: 14px;
}

.ul_table li:last-child {
	margin-bottom: 0;
}

/*========== オプション ==========*/
.wrap_option_table {
	margin-top: 24px;
}

.wrap_option_table table {
	width: 100%;
	box-sizing: border-box;
	border-collapse: collapse;
	border: 1px solid #8C8C8C;
	table-layout: fixed;
}

.wrap_option_table table td {
	padding: 8px 20px;
	border: 1px solid #8C8C8C;
	font-size: 16px;
	font-weight: 300;
}

/* システム関係 */
.ul_sistem {
	gap: 12px;
}
.ul_sistem li:nth-child(1) {
	width: min(calc(100% / 2 - 12px / 2), 178px);
}
.ul_sistem li:nth-child(2) {
	width: min(calc(100% / 2 - 12px / 2), 178px);
}
.ul_sistem li:nth-child(3) {
	width: min(calc(100% / 2 - 12px / 2), 178px);
}
.ul_sistem li:nth-child(4) {
	width: min(calc(100% / 2 - 12px / 2), 178px);
}

/* ソリューション機器 */
.wrap_solution_contents {
	margin-top: 24px;
}

.ul_solution {
	gap: 32px 80px;
}
.ul_solution li:nth-child(1) {
	width: 253px;
}
.ul_solution li:nth-child(2) {
	width: 149px;
}
.ul_solution li:nth-child(3) {
	width: 113px;
}
.ul_solution li:nth-child(4) {
	width: 253px;
}
.ul_solution li:nth-child(5) {
	width: 253px;
}

/*========== 導入事例 ==========*/
.txt_case {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.txt_case p {
	margin-bottom: 16px;
}

.txt_case p:last-child {
	margin-bottom: 0;
}

.txt_case a.primary_btn span {
	font-size: 20px;
}

/* ========================================
	SP
======================================== */
body.responsive-sp .sp {
	display: block;
}

body.responsive-sp .pc {
	display: none;
}

body.responsive-sp #rContent {
	padding: 0;
}

/*========== FV ==========*/
body.responsive-sp .fv {
	width: 100%;
	margin: 0;
	padding: 56px 0;
}

body.responsive-sp .wrap_txt_fv {
	position: static;
	transform: translateY(0);
	padding: 0 20px;
	margin-bottom: 24px;
}

body.responsive-sp .lead_txt_fv {
	font-size: 15px;
	margin-bottom:  32px;
}

body.responsive-sp .ttl_fv {
	gap: 16px;
}

body.responsive-sp .ttl_fv span:first-child {
	font-size: 21px;
}

body.responsive-sp .ttl_fv span:first-child::after {
	right: -8px;
}

body.responsive-sp .ttl_fv span:nth-child(2) {
	font-size: 25px;
	line-height: calc(28.8 / 25);
}

/*========== 主な特長 ==========*/
body.responsive-sp .grad_ttl {
	margin: 0 0 40px;
	background: linear-gradient(to right, #1747c4 0%, #1967cc 50%, #1c86d3 100%);
	padding: 0;
	letter-spacing: 0.15em;
}

body.responsive-sp .grad_ttl::after {
	content: none;
}

body.responsive-sp .grad_ttl span {
	width: 100%;
	text-align: center;
}

body.responsive-sp .contents {
	margin-bottom: 48px;
}

body.responsive-sp .contents:last-child {
	margin-bottom: 0;
}

body.responsive-sp .ttl_h3 {
	font-size: 16px;
	line-height: calc(28.8 / 16);
	letter-spacing: 0;
	margin-bottom: 16PX;
}

body.responsive-sp .txt {
	font-size: 14px;
}

body.responsive-sp .flex_box {
	display: block;
}

body.responsive-sp .left_contents,
body.responsive-sp .right_contents {
	width: 100%;
}

body.responsive-sp .feature .txt,
body.responsive-sp .feature2 .txt {
	margin-bottom: 16px;
}

body.responsive-sp .feature .bg_white {
	padding: 12px;
}

body.responsive-sp .ul_unit {
	gap: 19px 17px;
}

body.responsive-sp .ul_unit li {
	align-items: center;
}

body.responsive-sp .ul_unit li:nth-child(1) {
	width: 77px;
}

body.responsive-sp .ul_unit li:nth-child(2) {
	width: 98px;
}

body.responsive-sp .ul_unit li:nth-child(2) img {
	width: 76px;
}

body.responsive-sp .ul_unit li:nth-child(3) {
	width: 80px;
}

body.responsive-sp .ul_unit li:nth-child(4) {
	width: 73px
}

body.responsive-sp .ul_unit li:nth-child(5) {
	width: 74px
}

body.responsive-sp .ul_unit li:nth-child(6) {
	width: 74px
}

body.responsive-sp .ul_unit li img {
	height: auto;
}

body.responsive-sp .ul_unit li span {
	margin-top: 12px;
	font-size: 10px;
}

/* 製品の特長 */
body.responsive-sp .ttl_h4 {
	font-size: 18px;
	line-height: 2;
	font-weight: 400;
	margin-bottom: 8px;
}

body.responsive-sp .ul_img {
	display: flex;
	gap: 8px;
}

/*========== 参考仕様 ==========*/
body.responsive-sp .ttl_h4_2 {
	font-size: 15px;
	line-height: calc(27 / 15);
	margin-bottom: 8px;
}

body.responsive-sp .img_specification {
	margin: 0 auto 8px;
}

body.responsive-sp .specification .ttl_h3 sup {
	transform: translate(100%, 0);
}

/* テーブル */
body.responsive-sp .table_specification {
	table-layout: fixed;
	word-break: break-all;
	word-wrap: break-all;
}

body.responsive-sp .table_specification th,
body.responsive-sp .table_specification td {
	padding: 8px 10px;
	font-size: 14px;
}

body.responsive-sp .table_specification td {
	vertical-align: middle;
}

body.responsive-sp .col1 {
	width: 19.81982%;
}

body.responsive-sp .col2 {
	width: 31.531532%;
}

body.responsive-sp .col3 {
	width: 48.648648%;
}

body.responsive-sp .ul_table li {
	font-size: 12px;
}

/*========== オプション ==========*/
body.responsive-sp .wrap_option_table {
	margin-top: 8px;
}

body.responsive-sp .wrap_option_table table td {
	padding: 8px 10px;
	font-size: 14px;
}

/* システム関係 */
body.responsive-sp .wrap_system_contents {
	margin-top: 8px;
}
body.responsive-sp .ul_sistem li:nth-child(1) {
	width: min(calc(100% / 2 - 12px / 2), 138px);
}
body.responsive-sp .ul_sistem li:nth-child(2) {
	width: min(calc(100% / 2 - 12px / 2), 138px);
}
body.responsive-sp .ul_sistem li:nth-child(3) {
	width: min(calc(100% / 2 - 12px / 2), 138px);
}
body.responsive-sp .ul_sistem li:nth-child(4) {
	width: min(calc(100% / 2 - 12px / 2), 138px);
}

/* ソリューション機器 */
body.responsive-sp .wrap_solution_contents {
	margin-top: 8px;
}

body.responsive-sp .ul_solution {
	gap: calc(32 / 393 * 100vw) calc(16 / 393 * 100vw);
}
body.responsive-sp .ul_solution li:nth-child(1) {
	width: calc(167 / 393 * 100vw);
}
body.responsive-sp .ul_solution li:nth-child(2) {
	width: calc(98 / 393 * 100vw);
}
body.responsive-sp .ul_solution li:nth-child(3) {
	width: calc(74 / 393 * 100vw);
}
body.responsive-sp .ul_solution li:nth-child(4) {
	width: calc(167 / 393 * 100vw);
}
body.responsive-sp .ul_solution li:nth-child(5) {
	width: calc(167 / 393 * 100vw);
}

/*========== 導入事例 ==========*/
body.responsive-sp .case .right_contents {
	margin: 16px 0 24px;
}

body.responsive-sp #cont03 + .wrap_contents .case .right_contents {
	margin-bottom: 0;
}

body.responsive-sp .wrap_btn {
	margin-top: 24px;
}

body.responsive-sp a.primary_btn {
	margin: 0 auto;
}

body.responsive-sp .wrap_btn .sp:not(:first-child) {
	margin-top: 16px;
}