@charset "utf-8";

.pc {
	display: inline;
}

.sp {
	display: none;
}

#rContent {
	width: min(100%, 1920px);
	padding: 110px 0 0;
	color: #e3e3e3;
	text-align: left;
}

.grad_ttl {
	margin-bottom: 110px;
}

.inner {
	width: min(80%, 1540px);
	padding: 0;
	box-sizing: border-box;
	margin: 0 auto;
}

.mainTitle {
	text-align: center;
	padding: 0;
	margin-bottom: 110px;
}

.mainTitle.mb_small {
	margin-bottom: 56px;
}

.mainTitle .sub {
	padding: 0;
	margin: 0 0 10px;
	border: none;
	font-size: min(calc(36 / 1566 * 100vw), 36px);
	font-weight: 500;
	line-height: 1.44;
}

.mainTitle .main {
	font-size: min(calc(57 / 1566 * 100vw), 57px);
	font-weight: 500;
	line-height: 1.44;
}

.top_text {
	margin-bottom: 110px;
	text-align: center;
	font-size: min(calc(24 / 1566 * 100vw), 24px);
	font-weight: 500;
	line-height: 1.44;
}

.catch_wrap {
	text-align: center;
	margin-bottom: 110px;
}

.catch_wrap .top_text {
	margin-bottom: 48px;
}

.catch_wrap .text {
	font-size: 123%;
	font-weight: 400;
	line-height: 1.44;
}

.fv_video {
	width: min(80%, 1540px);
	margin: 0 auto 220px;
}

.fv_video video {
	width: 100%;
	aspect-ratio: 1536 / 864;
	object-fit: cover;
}

.fv_video .inner {
	width: 100%;
}

.fv_video .caption {
	margin-top: 10px;
	font-size: 92%;
	font-weight: 400;
	line-height: 1.44;
}

.content_ttl {
	margin-bottom: 48px;
	font-size: 277%;
	font-weight: 500;
	line-height: 1.44;
}

.flex_content {
	display: flex;
	align-items: flex-end;
	gap: min(calc(48 / 1566 * 100vw), 48px);
}

.flex_content:not(:last-of-type) {
	margin-bottom: 110px;
}

.flex_content .img {
	width: 50%;
	max-width: 744px;
}

.flex_content .img img {
	width: 100%;
	max-width: none;
}

.flex_content .text {
	width: 50%;
	font-size: 123%;
	font-weight: 400;
	line-height: 1.44;
}

.feature {
	margin-bottom: 220px;
}

.system {
	margin-bottom: 220px;
}

.system img {
	width: 100%;
	max-width: none;
}

.system .text {
	margin-top: 48px;
	font-size: 123%;
	font-weight: 400;
	line-height: 1.44;
}

.system_content:not(:last-of-type) {
	margin-bottom: 110px;
}

.table_wrap {
	max-width: 1200px;
	margin: 48px auto 0;
}

.tableWrap {
	max-width: 1200px;
	margin: 0 auto;
}

.table_wrap .table_ttl {
	margin-bottom: 21px;
	font-size: 154%;
	font-weight: 500;
	line-height: 1.44;
}

.table_wrap .table {
	border: 1px solid #e3e3e3;
}

.table_wrap .table .item {
	display: flex;
}

.table_wrap .table .item:not(:last-child) {
	border-bottom: 1px solid #e3e3e3;
}

.table_wrap .table .item dt,
.table_wrap .table .item dd {
	padding: 8px 8px 8px 30px;
	font-size: 123%;
	font-weight: 400;
	line-height: 1.44;
}

.table_wrap .table .item dt {
	width: 40%;
	background-color: #303336;
	border-right: 1px solid #e3e3e3;
}

.table_wrap .table .item dd {
	width: 60%;
}

.table_wrap .table .item:nth-child(odd) dd {
	background: #1a1a1a;
}

.table_wrap .caption {
	font-size: 92%;
	font-weight: 400;
	line-height: 1.44;
	padding-left: 2em;
	text-indent: -1.8em;
}

.table_wrap .caption:first-of-type {
	margin-top: 10px;
}

.small_cap {
	font-size: 50%;
	vertical-align: super;
}

.spec_content_wrap {
	margin-bottom: 110px;
}

.spec .flex_content {
	margin-bottom: 48px;
}

.flex_content.guideline_content {
	margin-bottom: 56px;
}

.speclist {
	margin-bottom: 10px;
}

th.speclist_title2 {
	background-color: #303336 !important;
}

.tbl02 tr.even td,
.tbl02 tbody th,
.tbl02 tbody td {
	padding: 8px 8px 8px 30px;
	background-color: transparent;
	font-size: 123.07%;
	font-weight: 400 !important;
}

th.speclist_title2 {
	text-align: left;
	font-size: 123.07%;
}

.tbl02 tbody th {
	border: 1px solid #e3e3e3;
	text-align: left;
}

.tbl02 tr:nth-child(odd) th,
.tbl02 tr:nth-child(odd) td {
	background-color: #1a1a1a;
}

.tbl02.speclist tbody th.speclist_title:first-child,
.tbl02 tbody th.bgc {
	background-color: #252627;
}

.speclist_cap {
	margin-bottom: 110px;
	font-size: 92%;
	font-weight: 400;
	line-height: 1.44;
}

.aosBanner {
	margin-bottom: 220px;
}

.aosBanner .grad_ttl {
	display: none;
}

.aosBanner a img {
	width: 100%;
	max-width: none;
}

.solution_text {
	margin-bottom: 48px;
	font-size: 123%;
	font-weight: 400;
	line-height: 1.44;
}

.solution_content:not(:last-of-type) {
	margin-bottom: 110px;
}

.solutionBox {
	display: flex;
	align-items: center;
	gap: min(calc(41 / 1566 * 100vw), 41px);
}

.solutionBox .solutionItem:has(.img) {
	width: 45%;
	max-width: 672px;
}

.solutionBox .solutionItem img {
	width: 100%;
}

.solutionBox .solutionItem .kouritsu {
	margin-bottom: 20px;
	font-size: 154%;
	font-weight: 500;
	line-height: 1.44;
}

.solution .kyakuchuu {
	margin-top: 10px;
	font-size: 92%;
	font-weight: 400;
	line-height: 1.44;
}

/* レスポンシブ */

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

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

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

body.responsive-sp .grad_ttl {
	margin-bottom: 56px;
}

body.responsive-sp .grad_ttl.sp_mb0 {
	margin-bottom: 0;
}

body.responsive-sp .inner {
	width: 100%;
	padding: 0 15px;
}

body.responsive-sp .mainTitle {
	padding: 0;
	margin: 0 0 56px;
}

body.responsive-sp .mainTitle .sub {
	padding: 0;
	margin: 0 0 10px;
	font-size: 16px;
}

body.responsive-sp .mainTitle .main {
	font-size: 20px;
}

body.responsive-sp .top_text {
	margin-bottom: 56px;
	font-size: 14px;
}

body.responsive-sp .catch_wrap {
	margin-bottom: 21px;
}

body.responsive-sp .catch_wrap .top_text {
	margin-bottom: 10px;
}

body.responsive-sp .catch_wrap .text {
	font-size: 12px;
}

body.responsive-sp .fv_video {
	width: 100%;
	margin-bottom: 112px;
}

body.responsive-sp .fv_video video {
	aspect-ratio: 393 / 493;
}

body.responsive-sp .content_ttl {
	margin-bottom: 21px;
	font-size: 16px;
}

body.responsive-sp .flex_content {
	flex-direction: column;
	align-items: stretch;
	gap: 10px;
}

body.responsive-sp .flex_content:not(:last-of-type) {
	margin-bottom: 56px;
}

body.responsive-sp .flex_content .img {
	width: 100%;
	max-width: none;
}

body.responsive-sp .flex_content .text {
	width: 100%;
	font-size: 12px;
}

body.responsive-sp .feature {
	margin-bottom: 112px;
}

body.responsive-sp .system {
	margin-bottom: 112px;
}

body.responsive-sp .system picture:not(.system_img) {
	display: block;
	width: calc(100% + 30px);
	position: relative;
	left: -15px;
}

body.responsive-sp .system .text {
	margin-top: 10px;
	font-size: 12px;
}

body.responsive-sp .spec .flex_content {
	margin-bottom: 21px;
}

body.responsive-sp .spec_content_wrap {
	margin-bottom: 56px;
}

body.responsive-sp .table_wrap {
	margin-top: 21px;
}

body.responsive-sp .table_wrap .table_ttl {
	margin-bottom: 10px;
	font-size: 13px;
}

body.responsive-sp .table_wrap .table .item dt,
body.responsive-sp .table_wrap .table .item dd {
	padding-left: 15px;
	font-size: 16px;
}

body.responsive-sp .tbl02 tr.even td,
body.responsive-sp .tbl02 tbody th,
body.responsive-sp .tbl02 tbody td {
	padding-left: 15px;
}

body.responsive-sp .aosBanner {
	margin-bottom: 112px;
}

body.responsive-sp .aosBanner .grad_ttl {
	display: block;
}

body.responsive-sp .aosBanner .content_ttl {
	display: none;
}

body.responsive-sp .system_content:not(:last-of-type) {
	margin-bottom: 56px;
}

body.responsive-sp .solution_content:not(:last-of-type) {
	margin-bottom: 56px;
}

body.responsive-sp .solution_text {
	margin-bottom: 21px;
	font-size: 12px;
}

body.responsive-sp .solutionBox {
	flex-direction: column;
	gap: 28px;
}

body.responsive-sp .solutionBox .solutionItem:has(.img) {
	width: 100%;
}

body.responsive-sp .arrow_img_wrap {
	width: 13px;
	position: relative;
}

body.responsive-sp .arrow_img_wrap .kouritsu {
	width: fit-content;
	margin: 0;
	white-space: nowrap;
	font-size: 13px;
	position: absolute;
	top: 0;
	left: 20px;
}
