*{
	box-sizing:border-box;
	padding:0;
	margin:0;
	word-break:normal;
	word-wrap:break-word;
}
html {
	scroll-behavior: smooth;
	margin-top: 0 !important;
}
body {
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3","ヒラギノ角ゴ Pro W6", "メイリオ","Meiryo",Arial, sans-serif;
	background-color: #fff;
	color: #000;
	font-size: 16px;
	line-height: 1.6;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}
.clearfix:before,
.clearfix:after{
	display: table;
  	content: " ";
}
.clearfix:after{
	clear: both;
}
a {
	color: #2d589c;
	text-decoration: none;
}
a:hover {
	text-decoration: underline;
	color: #2d589c;
}
a:visited {
	color: #5c4b8d;
}
@media screen and (max-width:767px) {
	.pc-content {
		display: none!important;
	}
	.wrap {
		max-width: 500px;
		padding: 15px;
		margin: 0 auto;
	}
	.lp_header {
		padding-top: 12px;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.product_lead {
		padding-top: 9px;
	}
	.header_logo {
		display: flex;
		align-items: center;
		margin-bottom: 0;
	}
	.header_logo img {
		width: 120px;
		margin-right: 12px;
	}
	.header_title {
		font-size: 12px;
		font-weight: bold;
	}
	.header_link {
		font-size: 11px;
		line-height: 1.3em;
		font-weight: bold;
		background-color: #454b5a;
		padding: 8px 16px;
		margin-left: 10px;
		border-radius: 8px;
	}
	.header_link a {
		display: flex;
		align-items: center;
		color: #fff;
		text-decoration: none;
	}
	.header_link .icon {
		width: 16px;
		background-color: #fff;
		border-radius: 50%;
		display: flex;
		align-items: center;
		margin-left: 8px;
	}
	.product_page, .download_page {
		background: url('../img/KV_BgimgSP.png') no-repeat;
		background-position: center top;
		background-size: auto;
	}
	.page_title {
		text-align: left;
		margin-bottom: 32px;
	}
	.page_title .subtitle, .product_header .product_text .sub_title {
		display: inline-block;
		font-size: 14px;
		line-height: 1.5em;
		font-weight: bold;
		color: #0e7478;
		background-color: #fff;
		border: 1px solid #18bdc3;
		border-radius: 20px;
		padding: 8px 18px;
		margin-bottom: 12px;
	}
	h1 {
		font-weight: bold;
		font-size: 28px;
		line-height: 1.3em;
		color: #000;
	}
	.intra-navi {
		background-color: #f7f8fa;
		padding: 16px 24px;
	}
	.intra-navi ul {
		max-width: 470px;
		margin: 0 auto;
 	}
	.intra-navi ul li {
		font-size: 16px;
		color: #2d589c;
	}
	.intra-navi ul li:not(:last-child) {
		margin-bottom: 16px;
	}
	.intra-navi ul li a {
		text-decoration: none;
		color: #2d589c;
	}
	.intra-navi ul li a:hover{
		text-decoration: underline;
		color: #2d589c;
	}
	.intra-navi ul li a:visited{
		color: #5c4b8d;
	}
	#producs_list {
		background: url('../img/Index_BgimgSP.png') no-repeat;
		background-position: center top;
		background-size: 100vw;
		padding: 24px 0 24px 0;
	}
	#producs_list .product_frame {
		margin-bottom: 16px;
		border-radius: 8px;
		background-color: #fff;
		box-shadow: 0 0 8px 1px rgba(0,0,0,0.33);
		padding: 20px;
		display: flex;
		flex-direction: column;
	}
	#producs_list .product_content {
		margin-bottom: 32px;
	}
	#producs_list .product_title {
		padding: 4px 0 4px 24px;
		margin-bottom: 16px;
		border-left: 2px solid #c73a64;
	}
	#producs_list .product_title .sub_title {
		font-size: 16px;
		line-height: 1.5em;
		font-weight: bold;
		color: #454b5a;
		margin: 0;
	}
	#producs_list .product_title h2 {
		font-size: 22px;
		font-weight: bold;
		margin: 0;
	}
	#producs_list .product_features {
		margin: 0 0 24px 24px;
		font-size: 16px;
		line-height: 1.8em;
	}
	#producs_list .product_features li, #about_4din .service_features>li, #about_4din .service_features>li div li, .no1_banner li, #product_point .point_list .cell li, #product_overview .scene_example li, #product_form .information .specification li {
		display: flex;
		align-items: flex-start;
		font-weight: bold;
	}
	#product_point .point_list .cell li.notice {
		font-size: 14px;
		font-weight: normal;
		margin-top: 12px;
	}
	#producs_list .product_features li::before, #about_4din .service_features>li::before, .no1_banner li::before, #product_point .point_list .cell li::before, #product_overview .scene_example li::before, #product_form .information .specification li::before {
		content: "⚫︎";
		color: #18bdc3;
		font-size: 0.72em;
		margin-right: 0.6em;
	}
	#product_point .point_list .cell li.notice::before {
		content: "※";
		color: #000;
		margin-right: 0.8em;
	}
	.featured_link, .contact_link, .download_link {
		display: inline-flex;
		align-items: center;
		color: #fff;
		text-decoration: none;
		background: linear-gradient(#c73a64, #cb1e52);
		border: 1px solid #c73a64;
		border-radius: 24px;
		padding: 12px 12px;
		box-shadow: 0 4px 10px 0 rgba(0,0,0,0.3);
	}
	.featured_link:hover, .contact_link:hover, .download_link:hover {
		background: linear-gradient(#fff, #fff);
		border: 1px solid #c73a64;
		text-decoration: none;
		color: #c73a64!important;
		box-shadow: none;
	}
	.featured_link:visited, .contact_link:visited, .download_link:visited {
		color: #fff;
	}
	#producs_list .product_content a {
		width: 90%;
		margin: 0 5%;
		font-size: 16px;
		font-weight: bold;
	}
	.featured_link .title, .contact_link .title, .download_link .title {
		text-align: center;
		width: calc(100% - 24px);
		padding-left: 24px;
		font-size: 16px;
	}
	.featured_link .icon, .contact_link .icon, .download_link .icon {
		display: flex;
		align-items: center;
		width: 24px;
		height: 24px;
		background-color: #fff;
		border-radius: 16px;
	}
	.product_link {
		display: inline-flex;
		align-items: center;
		color: #fff;
		text-decoration: none;
		background-color: #454b5a;
		border: 1px solid #454b5a;
		border-radius: 24px;
		padding: 8px 40px;
		box-shadow: 0 4px 10px 0 rgba(0,0,0,0.3);
	}
	.product_link:visited .title {
		color: #fff;
		text-decoration: none;
	}
	.product_link:hover .title {
		color: #454b5a;
	}
	.product_link:hover {
		background: #fff;
		border: 1px solid #454b5a;
		color: #454b5a;
		box-shadow: none;
		text-decoration: none;
	}
	.product_link .icon {
		width: 16px;
		background-color: #fff;
		border-radius: 50%;
		display: flex;
		align-items: center;
		margin-left: 8px;
	}
	h2.paragraph_title {
		position: relative;
		text-align: center;
		font-size: 24px;
		line-height: 1.3em;
		font-weight: bold;
		padding-bottom: 16px;
		margin-bottom: 32px;
	}
	h2.paragraph_title:before {
		content: '';
		position: absolute;
		left: 50%;
		bottom: 0;
		width: 100px;
		height: 2px;
		transform: translateX(-50%);
		background-color: #c73a64;
	}
	.full_figure {
		width: 100&;
		margin-bottom: 40px;
	}
	.body-text {
		margin-bottom: 40px;
		font-size: 16px;
		line-height: 1.8em;
	}
	.catch {
		font-weight: bold;
		font-size: 20px;
		line-height: 1.8em;
		text-align: justify;
	}
	.catch strong {
		color: #0e7478;
		font-weight: inherit;
	}
	#index_possibility {
		margin-bottom: 20px;
	}
	#about_4din .border-box {
		border: 1px solid #aeb5be;
		border-radius: 8px;
		padding: 32px 20px;
		margin-bottom: 24px;
	}
	h3.chart_title {
		text-align: center;
		margin-bottom: 12px;
		font-size: 24px;
		font-weight: bold;
		color: #0e7478;
	}
	#about_4din .chart_content {
		margin-bottom: 32px;
	}
	#about_4din .chart_content dl {
		border-top: 1px dotted #aeb5be;
		padding: 16px 0;
	}
	#about_4din .chart_content dt {
		font-size: 18px;
		line-height: 1.5em;
		font-weight: bold;
		padding: 4px 0 4px 12px;
		color: #454b5a;
		border-left: 2px solid #454b5a;
		margin-bottom: 12px;
	}
	#about_4din .chart_content dl:last-child {
		border-bottom: 1px dotted #aeb5be;
	}
	#about_4din .chart_content dd {
		margin-left: 12px;
	}
	#about_4din .service_features {
		font-size: 16px;
		line-height: 1.8em;
	}
	#about_4din .service_features>li div ul li {
		font-size: 14px;
		font-weight: normal;
		line-height: 1.8em;
	}
	#about_4din .service_features>li div li::before {
		content: "⚫︎";
		color: #7b818d;
		font-size: 0.72em;
		margin-right: 0.72em;
	}
	#about_4din .figure_content {
		margin-bottom: 32px;
	}
	#about_4din .figure_content .description {
		margin-bottom: 20px;
	}
	#about_4din .figure_content .map {
	}
	#about_4din .figure_content .description .title {
		font-size: 16px;
		margin-bottom: 8px;
	}
	#about_4din .figure_content .description .note {
		font-size: 14px;
	}
	#about_4din .figure_content .description .hilite {
		font-size: 20px;
		font-weight: bold;
		border: 1px solid #18bdc3;
		border-radius: 8px;
		padding: 4px 20px 16px 20px;
		margin-bottom: 8px;
	}
	#about_4din .figure_content .description .hilite .topic {
		display: flex;
		align-items: first baseline;
	}
	#about_4din .figure_content .description .hilite .topic .amount {
		font-size: 60px;
		margin: 0 12px;
		color: #0e7478;
	}
	#about_4din .achievements {
		margin-bottom: 8px;
	}
	#about_4din .achievements .cell {
		box-shadow: 0 0 10px 0 rgba(0,0,0,0.3);
		margin-bottom: 16px;
	}
	#about_4din .achievements .cell .title {
		background-color: #454b5a;
		padding: 8px 0;
	}
	#about_4din .achievements .cell .title h4 {
		display: flex;
		align-items: first baseline;
		justify-content: center;
		font-size: 18px;
		font-weight: bold;
		color: #fff;
	}
	#about_4din .achievements .cell .title h4 .amount {
		font-size: 54px;
		line-height: 1em;
	}
	#about_4din .achievements .cell .cell_content {
		font-size: 14px;
		line-height: 1.5em;
		padding: 20px;
	}
	#about_4din .achievements .cell .cell_content h5 {
		font-size: 18px;
		line-height: 1.5em;
		font-weight: bold;
		color: #0e7478;
		margin-bottom: 16px;
	}
	#about_4din .achievements .cell .cell_content h6 {
		font-weight: bold;
		margin-bottom: 8px;
	}
	#about_4din .achievements .cell .cell_content p {
		margin-bottom: 16px;
	}
	#about_4din .achievements .cell .cell_content ul {
		line-height: 1.6em;
		margin-bottom: 12px;
	}
	#about_4din .achievements .cell .cell_content li::before {
		content: "⚫︎";
		color: #7b818d;
		font-size: 0.72em;
		margin: 0 0.72em;
	}
	#about_4din .achievements .cell .cell_content .notice {
		font-size: 12px;
		line-height: 1.5em;
	}
	#about_4din .achievement_notice {
		font-size: 14px;
		text-align: right;
	}
	#other_services {
		background-color: #f7f8fa;
		padding: 24px 0;
	}
	#other_services .service_list {
		margin-bottom: 24px;
	}
	#other_services .service_list li {
		margin-bottom: 24px;
	}
	#other_services .service_list li h3 {
		font-size: 18px;
		font-weight: bold;
		text-align: center;
		padding-bottom: 16px;
		margin-bottom: 16px;
		border-bottom: 1px solid #aeb5be;
	}
	#other_services .service_list li .cell_content {
		font-size: 16px;
		line-height: 1.5em;
	}
	#other_services .linkbtn {
		text-align: center;
	}
	#other_services .contact_link {
		width: 100%;
		font-size: 16px;
	}
	.product_header {
	}
	.product_header .product_text {
		margin-bottom: 12px;
	}
	.product_header .product_image {
	}
	.product_header .product_text .product_title {
		padding: 8px 0 2px 24px;
		margin-bottom: 20px;
		border-left: 2px solid #c73a64;
	}
	.product_header .product_text .product_title h2 {
		font-size: 28px;
		line-height: 1.0em;
		font-weight: bold;
		margin-bottom: 8px;
	}
	.product_header .product_text .product_title h3 {
		font-size: 16px;
		font-weight: normal;
	}
	.product_header .product_text .catch {
		font-size: 28px;
		font-weight: bold;
		line-height: 1.3em;
	}
	.linkbtn {
		margin: 40px 0;
		text-align: center;
	}
	.linkbtn .download_link {
		width: 90%;
		margin: 0 5%;
 		font-size: 16px;
	}
	.no1_banner {
		align-items: center;
		max-width: 1018px;
		box-shadow: 0 0 10px 0 rgba(0,0,0,0.3);
		padding: 20px;
		margin: 0 auto 40px auto;
		outline: 1px solid #18bdc3;
		outline-offset: -8px;
	}
	.no1_banner .emblem {
		display: flex;
		align-items: center;
		margin-bottom: 20px;
	}
	.no1_banner .emblem img {
		width: 26vw;
		margin-right: 12px;
	}
	.no1_banner .title {
		flex: 1;
		font-size: 18px;
		line-height: 1.3em;
		font-weight: bold;
		margin-bottom: 8px;
	}
	.no1_banner .title .amount {
		font-size: 26px;
		color: #0e7478;
	}
	.no1_banner .title .amount sup {
		font-size: 16px;
	}
	.no1_banner .list_head {
		display: inline-block;
		padding: 8px 16px;
		font-size: 14px;
		font-weight: bold;
		background-color: #e8f9f9;
		border-radius: 4px;
		margin-bottom: 8px;
	}
	.no1_banner ul {
		line-height: 1.8em;
	}
	.no1_banner .notice {
		text-align: right;
		font-size: 12px;
	}
	#product_process {
		position: relative;
		background-image: url('../img/assignment_BgimgSP.png');
		background-repeat: no-repeat;
		background-position: center top;
		margin-top: -40px;
	}
	#product_process::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 6%, #eef1f4 6%);
		z-index: -1;
	}
	#product_process .content {
		padding: 100px 0 280px 0;
	}
	#product_process .head, #product_point .head {
		position: relative;
		max-width: 450px;
		margin: 0 auto 40px auto;
		padding: 40px 0 16px 0;
		background-color: #fff;
		border-radius: 8px;
		text-align: center;
	}
	#product_process .head:after, #product_point .head:after {
		content: "";
		position: absolute;
		right: 0;
		bottom: -20px;
		left: 0;
		width: 0px;
		height: 0px;
		margin: auto;
		border-style: solid;
		border-color: #fff transparent transparent transparent;
		border-width: 20px 20px 0 20px;
	}
	#product_process .head .icon, #product_point .head .icon {
		position: absolute;
		width: 54px;
		top: -27px;
		left: 50%;
		transform: translateX(-50%);
	}
	#product_process .head h3, #product_point .head h3 {
		position: relative;
		text-align: center;
		font-size: 24px;
		line-height: 1.3em;
		font-weight: bold;
		padding-bottom: 8px;
		margin-bottom: 8px;
	}
	#product_process .head h3:before, #product_point .head h3:before {
		content: '';
		position: absolute;
		left: 50%;
		bottom: 0;
		width: 100px;
		height: 2px;
		transform: translateX(-50%);
		background-color: #c73a64;
	}
	#product_process .head .maintext, #product_point .head .maintext {
		font-size: 14px;
		font-weight: bold;
		color: #454b5a;
	}
	#product_process .subject {
		margin-bottom: 16px;
	}
	#product_process .subject li {
		background-color: #fff;
		box-shadow: 0 4px 8px 0 rgba(0,0,0,0.3);
		margin-bottom: 16px;
	}
	#product_process .subject dl {
		width: 100%;
		text-align: center;
	}
	#product_process .subject dt {
		display: inline-block;
		padding: 2px 28px;
		margin: 0 auto;
		background-color: #454b5a;
		color: #fff;
		font-size: 18px;
		font-weight: bold;
	}
	#product_process .subject dd {
		text-align: left;
		padding: 20px 24px;
		min-height: 120px;
		font-size: 18px;
		font-weight: bold;
		line-height: 1.5em;
		background: url('../img/Gen_Problem.svg') no-repeat;
		background-position: center;
		background-size: 79px;
	}
	#product_process .arrow {
		text-align: center;
	}
	#product_process .solution {
		text-align: center;
		font-size: 24px;
		font-weight: bold;
		line-height: 1.3em;
	}
	#product_process .solution strong {
		color: #0e7478;
		background: linear-gradient(transparent 50%, #fff 50%);
		font-weight: inherit;
	}
	#product_point {
		position: relative;
		background-image: url('../img/solution_BgimgSP.png');
		background-repeat: no-repeat;
		background-position: center top;
		margin-top: -300px;
	}
	#product_point .content {
		padding-top: 120px;
	}
	#product_point .content.rwi {
		padding-bottom: 40px;
	}
	#product_point::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 6%, #18bdc3 6%);
		z-index: -1;
	}
	#product_point .point_list {
		padding-bottom: 16px;
	}
	#product_point .point_list .cell {
		background-color: #fff;
		border: 8px solid #e8f9f9;
		outline: 1px solid #18bdc3;
		outline-offset: -8px;
		margin-bottom: 16px;
		padding: 16px;
		box-shadow: 0 4px 8px 0 rgba(0,0,0,0.3);
	}
	#product_point .point_list .cell img {
		display: block;
		margin: 0 auto 12px auto;
		width: 120px;
	}
	#product_point .point_list .cell ul {
		line-height: 1.8em;
	}
	#product_point .point_list h4 {
		font-size: 20px;
		font-weight: bold;
		color: #454b5a;
		text-align: center;
		line-height: 1.3em;
		margin-bottom: 16px;
	}
	#product_point .screen_sample {
		background-color: #f7f8fa;
		border-radius: 8px;
		padding: 24px;
		box-shadow: 0 4px 8px 0 rgba(0,0,0,0.3);
	}
	#product_point .screen_sample h3 {
		font-size: 24px;
		line-height: 1.3em;
		font-weight: bold;
		text-align: center;
		margin-bottom: 24px;
	}
	#product_point .screen_sample .screenshot {
		text-align: center;
	}
	#product_point .screen_sample .screenshot img {
		width: 648px;
	}
	.product_download {
		background: url('../img/cta_BgimgSP.png') no-repeat;
		background-size: cover;
		padding: 32px 15px;
		margin-bottom: 40px;
	}
	.product_download .content {
		max-width: 470px;
		margin: 0 auto;
		background-color: #fff;
		border-radius: 8px;
		padding: 20px 20px 0 20px;
		box-shadow: 0 4px 8px 0 rgba(0,0,0,0.3);
	}
	.product_download .content .product_text {
		font-weight: bold;
		color: 454b5a;
		margin-bottom: 24px;
	}
	.product_download .content .product_text .subtitle {
		font-size: 16px;
		line-height: 1.3em;
		margin-bottom: 8px;
		color: #454b5a;
	}
	.product_download .content .product_text .product_name {
		font-size: 20px;
		line-height: 1.3em;
		margin-bottom: 12px;
	}
	.product_download .content .product_text .catch {
		font-size: 23px;
		line-height: 1.5em;
		margin-bottom: 20px;
	}
	.product_download .content .product_text .download_link {
		width: 90%;
		margin: 0 5%;
	}
	.product_download .content .document_image {
		max-width: 180px;
		margin: 0 auto;
	}
	
	#product_overview {
	}
	#product_overview .fill-box {
		background-color: #f7f8fa;
		border-radius: 8px;
		padding: 20px;
		margin-bottom: 40px;
	}
	#product_overview .cases {
		margin-bottom: 40px;
	}
	#product_overview .cases .cell {
	}
	#product_overview .cases li:first-child {
		margin-bottom: 24px;
		padding-bottom: 20px;
		border-bottom: 1px solid #aeb5be;
	}
	#product_overview .cases .head {
		display: flex;
		align-items: flex-start;
		margin-bottom: 12px;
	}
	#product_overview .cases .head .num {
		background-color: #454b5a;
		width: 80px;
		color: #fff;
		border-radius: 6px;
		padding: 6px 18px;
		font-size: 14px;
		font-weight: bold;
		margin-right: 20px;
	}
	#product_overview .cases .head .subject {
		flex: 1;
		font-size: 22px;
		font-weight: bold;
	}
	#product_overview .cases .product_logo {
		width: 100%;
		margin-bottom: 20px;
	}
	#product_overview .cases .description {
		font-size: 16px;
		line-height: 1.8em;
	}
	#product_overview .cases .case_image {
		width: 90%;
		margin: 20px 5% 0 5%;
	}
	#product_overview .scene {
		font-size: 20px;
		line-height: 1.5em;
		margin-bottom: 64px;
	}
	#product_overview .scene .scene_example {
		background-color: #fff;
		border-radius: 8px;
		padding: 24px;
		margin-bottom: 24px;
	}
	#product_overview .scene .scene_example li:not(:last-child) {
		margin-bottom: 4px;
	}
	#product_overview .scene .scene_image {
	}
	#product_overview .flow {
		background-color: #18bdc3;
		border-radius: 16px;
		padding: 14px;
		display: flex;
		flex-direction: column;
		margin-bottom: 40px;
	}
	#product_overview .flow .cell {
		padding: 14px;
		background-color: #fff;
		margin-bottom: 8px;
	}
	#product_overview .flow .cell:first-child {
		border-radius: 12px 12px 0 0;
	}
	#product_overview .flow .cell:last-child {
		border-radius: 0 0 12px 12px;
		margin-bottom: 0;
	}
	#product_overview .flow .cell .num {
		font-size: 36px;
		font-weight: bold;
		line-height: 1.0em;
		margin-bottom: 14px;
	}
	#product_overview .flow .cell h3 {
		font-size: 20px;
		line-height:1.5em;
		font-weight: bold;
		color: #0e7478;
		margin-bottom: 8px;
	}
	#product_overview .flow .cell .description {
		font-size: 14px;
		line-height: 1.5em;
	}
	#product_overview .faq {
	}
	#product_overview .faq li {
		margin-bottom: 16px;
		padding: 20px;
		background-color: #fff;
		border-radius: 6px;
		box-shadow: 0 4px 10px 0 rgba(0,0,0,0.3);
	}
	#product_overview .faq li:hover {
		background-color: #e8f9f9;
	}
	#product_overview .faq dt label {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	#product_overview .faq .icon {
		display: inline-flex;
		width: 36px;
		height: 36px;
		margin-right: 14px;
		border-radius: 50%;
		font-size: 22px;
		font-weight: bold;
		align-items: self-start;
		justify-content: center;
	}
	#product_overview .faq dt .icon {
		background-color: #0e7478;
		color: #fff;
	}
	#product_overview .faq dt h3 {
		font-size: 18px;
		line-height: 1.5em;
		font-weight: bold;
		flex: 1;
		margin-right: 4px;
	}
	#product_overview .faq dd {
		max-height: 0;
		opacity: 0;
		overflow: hidden;
		margin-top: 0;
		transition: max-height 0.4s ease, opacity 0.4s ease, margin-top 0.4s ease;
	}
	#product_overview .faq dd .answer {
		display: flex;
		align-items: flex-start;
	}
	#product_overview .faq dd .icon {
		background-color: #eef1f4;
		color: #454b5a;
	}
	#product_overview .faq dd .description {
		flex: 1;
		align-self: center; 
	}
	#product_overview .faq dt .toggle {
		width: 32px;
		height: 32px;
		background: url('../img/Plus.svg') no-repeat;
		cursor: pointer;
	}
	#product_overview .faq dl input[type="checkbox"]:checked + dt .toggle {
		background: url('../img/minus.svg') no-repeat;
	}
	#product_overview .faq dl input[type="checkbox"] {
		display: none;
	}
	#product_overview .faq dl input[type="checkbox"]:checked ~ dd {
		max-height: 500px;
		opacity: 1;
		margin-top: 12px;
	}
	
	
	#product_form {
		position: relative;
		background-image: url('../img/assignment_BgimgSP.png');
		background-repeat: no-repeat;
		background-position: center top;
		margin: 0;
		padding : 80px 0 20px 0;
	}
	#product_form::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 6%, #eef1f4 6%);
		z-index: -1;
	}
	#product_form .content {
		background-color: #fff;
		border-radius: 8px;
		padding: 0 20px 20px 20px;
		margin-bottom: 20px;
	}
	#product_form .form_title {
		margin-bottom: 32px;
		text-align: center;
	}
	#product_form .head {
		display: inline-block;
		padding: 4px 30px;
		margin: 0 auto 20px auto;
		background-color: #454b5a;
		color: #fff;
		font-size: 16px;
		font-weight: bold;
	}
	#product_form .column {
	}
	#product_form .information {
		flex: 1;
	}
	#product_form .input_section {
		max-width: 500px;
	}
	#product_form .form_exp {
		font-size: 16px;
		line-eheight: 1.8em;
		margin-bottom: 32px;
	}
	#product_form .form_body {
		font-size: 16px;
		line-eheight: 1.5em;
	}
	#product_form .form_body dl dt {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
	}
	#product_form .form_body .mark {
		font-size: 12px;
		border-radius: 4px;
		padding: 4px 8px;
		color: #fff;
		font-weight: bold;
		background-color: #5d6370;
		margin-right: 8px;
	}
	#product_form .form_body .mark.required {
		background-color: #c9242f;
	}
	#product_form .form_body .content_head {
		font-weight: bold;
	}
	#product_form .form_body .content_notice {
		font-size: 12px;
	}
	#product_form .form_body dt {
		margin-bottom: 16px;
	}
	#product_form .form_body dt .form_parts {
		width: 100%;
		margin-top: 12px;
	}
	#product_form .form_body .form_parts label {
		display: flex;
		align-items: center;
		column-gap: 4px;
		width: fit-content;
		line-height: 1;
		cursor: pointer;
		line-height: 1.6em;
	}
	#product_form .form_body dd.term-of-use .form_parts label {
		margin: 0 auto 40px auto;
	}
	#product_form .form_body dd {
		margin-bottom: 24px;
	}
	#product_form .form_body dd.separate {
		border-bottom: 1px dashed #000;
		padding-bottom: 16px;
	}
	#product_form .form_body dd .info {
		font-size: 12px;
		line-height: 1.5em;
	}
	#product_form .form_body dd .example {
	}
	#product_form .form_body dd .error_msg {
		color: #c9242f;
	
	}
	#product_form input[type="checkbox"] {
		appearance: none;
		position: relative;
		min-width: 24px;
		height: 24px;
		border: 1px solid #000;
		border-radius: 4px;
		cursor: pointer;
		margin-right: 8px;
	}
	#product_form input[type="checkbox"]:checked {
		background-color: #2d589c;
	}
	#product_form input[type="checkbox"]:checked::after {
		content: "";
		position: absolute;
		top: 3px;
		left: 3px;
		width: 14px;
		height: 10px;
		border-bottom: 3px solid #ffffff;
		border-left: 3px solid #ffffff;
		transform: rotate(-45deg);
	}
	#product_form input[type="text"] {
		width: 100%;
		appearance: none;
		position: relative;
		height: 24px;
		border: 1px solid #000;
		border-radius: 4px;
		cursor: pointer;
		margin-bottom: 8px;
		box-sizing: border-box;
		padding: 20px;
	}
	#product_form .form_body dd .form_parts:not(:last-child) {
		margin-bottom: 12px;
	}
	#product_form .download_link {
		width: 90%;
		margin: 0 5%;
	}
	#product_form .information .form_logo {
		width: 168px;
		margin-bottom: 32px;
	}
	#product_form .information h3 {
		font-size: 24px;
		font-weight: bold;
		margin-bottom: 20px;
	}
	#product_form .information h3 strong {
		color: #0e7478;
		font-weight: inherit;
	}
	#product_form .information .description {
		font-size: 20px;
		font-weight: bold;
		margin-bottom: 12px;
	}
	#product_form .information .document_image {
		margin-bottom: 16px;
	}
	#product_form .information .specification {
		border: 1px solid #18bdc3;
		border-radius: 8px;
		background-color: #f4fcfc;
		padding: 16px;
		margin-bottom: 40px;
	}
	#product_form .information .chart_title {
		font-size: 14px;
		margin-bottom: 12px;
	}
	#product_gateway {
		padding: 32px 0 9px 0;
	}
	#product_gateway .content {
		display: flex;
		align-items: flex-start;
		margin: 0 15px 40px 15px;
		background-color: #fff;
		border-radius: 8px;
		padding: 20px;
		box-shadow: 0 4px 10px 0 rgba(0,0,0,0.3);
	}
	#product_gateway.rwi .content {
		background: url('../img/Gen_bannerimg1.png') no-repeat;
		background-size: 170%;
		background-position: top center;
	}
	#product_gateway.rwe .content {
		background: url('../img/Ins_bannerimg2.png') no-repeat;
		background-size: 170%;
		background-position: top center;
	}
	#product_gateway .content .product_text {
		background-color: #fff;
		padding: 16px 24px;
	}
	#product_gateway .content .product_text .subtitle {
		font-size: 12px;
		font-weight: bold;
		line-height: 1.5em;
		color: #0e7478;
		margin-bottom: 4px;
	}
	#product_gateway .content .product_text .catch {
		font-size: 16px;
		line-height: 1.3em;
		margin-bottom: 12px;
	}
	#product_gateway .content .product_text .product_name {
		font-size: 24px;
		font-weight: bold;
		line-height: 1.2em;
		padding: 0 0 0 12px;
		margin-bottom: 20px;
		border-left: 2px solid #c73a64;
	}
	#product_gateway .product_list a, .download_page .product_list a {
		display: flex;
		align-items: center;
		text-decoration: none;
		color: #2d589c;
		font-size: 16px;
		justify-content: flex-end;
	}
	#product_gateway .downloadbtn {
		text-align: center;
	}
	
	.download_page h1 {
		text-align: center;
		font-size: 40px;
		font-weight: bold;
		margin-bottom: 40px;
	}

	.download_dialog {
		max-width: 500px;
		margin: 0 auto 40px auto;
		background-color: #fff;
		border-radius: 8px;
		padding: 20px;
		box-shadow: 0 4px 10px 0 rgba(0,0,0,0.3);
	}
	.download_dialog .message {
		text-align: left;
		font-size: 20px;
		font-weight: bold;
		line-height: 1.8em;
		margin-bottom: 32px;
	}
	.download_dialog .downloadbtn {
		text-align: center;
	}
	.download_dialog .download_link {
		width: 80%;
	}
	.product_list {
		text-align: right;
	}
	footer {
		width: 100%;
		padding: 12px 0;
		background-color: #454b5a;
	}
	.lpfooter {
		font-size: 16px;
		position: relative;
	}
	.lpfooter .footer_logo {
		padding-bottom: 24px;
		margin-bottom: 32px;
		border-bottom: 1px solid #fff;
	}
	.lpfooter .footer_logo img {
		width: 120px;
	}
	.lpfooter .footer_navi {
		color: #fff;
		margin-bottom: 40px;
	}
	.lpfooter .footer_navi li {
		align-items: center;
		margin-bottom: 20px;
	}
	.lpfooter .footer_navi li a, .lpfooter .footer_navi li a:visited {
		color: #fff;
		text-decoration: none;
	}
	.lpfooter .footer_navi li a:hover {
		text-decoration: underline;
	}
	.lpfooter .footer_navi li .icon {
		margin-left: 8px;
	}
	.lpfooter .footer_copy {
		font-size: 12px;
		color: #fff;
	}
	.btn_pagetop {
		display: flex;
		align-items: center;
		justify-content: center;
		background-color: #fff;
		border: 1px solid #2d589c;
		width: 48px;
		height: 48px;
		border-radius: 24px;
		position: fixed;
		bottom: 16px;
		right: 16px;
	}
	.btn_pagetop img {
		width: 24px;
	}
}
@media screen and (max-width:360px) {
	.header_link {
		margin: 10px 0 0 0;
	}
	.header_link .sp-content br {
		display: none;
	}
}
@media screen and (min-width:768px), print {
	.sp-content {
		display: none!important;
	}
	.wrap {
		min-width: 720px;
		max-width: 1208px;
		padding: 0 24px;
		margin: 0 auto;
	}
	.lp_header {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		justify-content: space-between;
	}
	.header_logo {
		flex: 1;
		display: flex;
		align-items: center;
		margin: 20px 0 24px 0;
	}
	.header_logo img {
		width: 168px;
		margin-right: 20px;
	}
	.header_title {
		font-size: 20px;
		font-weight: bold;
		word-break: keep-all;
		overflow-wrap: break-word;
	}
	.header_link {
		font-size: 16px;
		font-weight: bold;
		background-color: #454b5a;
		padding: 12px 16px;
		border-radius: 0 0 8px 8px;
	}
	.header_link a {
		display: flex;
		align-items: center;
		color: #fff;
		text-decoration: none;
	}
	.header_link .icon {
		width: 16px;
		background-color: #fff;
		border-radius: 50%;
		display: flex;
		align-items: center;
		margin-left: 8px;
	}
	.product_page, .download_page {
		background: url('../img/KV_BgimgPC.png') no-repeat;
		background-position: center top;
		background-size: auto;
	}
	.page_title {
		text-align: center;
		margin-bottom: 56px;
	}
	.page_title .subtitle, .product_header .product_text .sub_title {
		display: inline-block;
		font-size: 16px;
		font-weight: bold;
		color: #0e7478;
		border: 1px solid #18bdc3;
		background-color: #fff;
		border-radius: 24px;
		padding: 8px 18px;
		margin-bottom: 12px;
	}
	h1 {
		font-weight: bold;
		font-size: 40px;
		color: #000;
	}
	.intra-navi {
		width: 100%;
		background-color: #f7f8fa;
		text-align: center;
	}
	.intra-navi ul {
		display: inline-flex;
		margin: 16px auto;
 	}
	.intra-navi ul li {
		font-size: 16px;
		color: #2d589c;
	}
	.intra-navi ul li a {
		text-decoration: none;
		color: #2d589c;
	}
	.intra-navi ul li a:hover{
		text-decoration: underline;
		color: #2d589c;
	}
	.intra-navi ul li a:visited{
		color: #5c4b8d;
	}
	.intra-navi ul li:not(:last-child) {
		margin-right: 32px;
	}
	#producs_list {
		background: url('../img/Index_BgimgPC.png') no-repeat;
		background-position: center top;
		background-size: auto;
		padding: 56px 0 64px 0;
	}
	#producs_list .product_frame {
		margin-bottom: 16px;
		border-radius: 8px;
		background-color: #fff;
		box-shadow: 0 0 8px 1px rgba(0,0,0,0.33);
		padding: 32px 60px;
		display: flex;
	}
	#producs_list .product_content {
		width :60%;
	}
	#producs_list .product_image {
		width :40%;
		text-align: right;
	}
	#producs_list .product_image img {
	}
	#producs_list .product_title {
		padding: 8px 0 8px 40px;
		margin-bottom: 16px;
		border-left: 2px solid #c73a64;
	}
	#producs_list .product_title .sub_title {
		font-size: 16px;
		font-weight: bold;
		color: #454b5a;
		margin: 0;
	}
	#producs_list .product_title h2 {
		font-size: 26px;
		font-weight: bold;
		margin: 0;
	}
	#producs_list .product_features {
		margin: 0 0 32px 40px;
		font-size: 16px;
		line-height: 1.8em;
	}
	#producs_list .product_features li, #about_4din .service_features>li, #about_4din .service_features>li div li, .no1_banner li, #product_point .point_list .cell li, #product_overview .scene_example li, #product_form .information .specification li {
		display: flex;
		align-items: flex-start;
		font-weight: bold;
	}
	#product_point .point_list .cell li.notice {
		font-size: 14px;
		font-weight: normal;
		margin-top: 12px;
	}
	#producs_list .product_features li::before, #about_4din .service_features>li::before, .no1_banner li::before, #product_point .point_list .cell li::before, #product_overview .scene_example li::before, #product_form .information .specification li::before {
		content: "⚫︎";
		color: #18bdc3;
		font-size: 0.72em;
		margin-right: 0.6em;
	}
	#product_point .point_list .cell li.notice::before {
		content: "※";
		color: #000;
		margin-right: 0.8em;
	}
	.featured_link, .contact_link, .download_link {
		display: inline-flex;
		align-items: center;
		color: #fff;
		text-decoration: none;
		background: linear-gradient(#c73a64, #cb1e52);
		border: 1px solid #c73a64;
		border-radius: 32px;
		padding: 10px 4px;
		box-shadow: 0 4px 10px 0 rgba(0,0,0,0.3);
	}
	.featured_link {
		padding: 16px 12px;
	}
	.featured_link:hover, .contact_link:hover, .download_link:hover {
		background: linear-gradient(#fff, #fff);
		color: #c73a64!important;
		border: 1px solid #c73a64;
		text-decoration: none;
		box-shadow: none;
	}
	.featured_link:visited, .contact_link:visited, .download_link:visited {
		color: #fff;
	}
	.product_link {
		display: inline-flex;
		align-items: center;
		color: #fff;
		text-decoration: none;
		background-color: #454b5a;
		border: 1px solid #454b5a;
		border-radius: 24px;
		padding: 8px 40px;
		box-shadow: 0 4px 10px 0 rgba(0,0,0,0.3);
	}
	.product_link:visited .title {
		color: #fff;
		text-decoration: none;
	}
	.product_link:hover .title {
		color: #454b5a;
	}
	.product_link:hover {
		background: #fff;
		border: 1px solid #454b5a;
		color: #454b5a;
		box-shadow: none;
		text-decoration: none;
	}
	.product_link .icon {
		width: 16px;
		background-color: #fff;
		border-radius: 50%;
		display: flex;
		align-items: center;
		margin-left: 8px;
	}
	#producs_list .product_content a {
		width: 400px;
		font-size: 18px;
		font-weight: bold;
	}
	.featured_link .title, .contact_link .title, .download_link .title {
		text-align: center;
		width: calc(100% - 32px);
		padding-left: 24px;
		font-size: 16px;
	}
	.featured_link .icon, .contact_link .icon, .download_link .icon {
		display: flex;
		align-items: center;
		width: 24px;
		height: 24px;
		background-color: #fff;
		border-radius: 16px;
	}
	h2.paragraph_title {
		position: relative;
		text-align: center;
		font-size: 30px;
		font-weight: bold;
		padding-bottom: 16px;
		margin-bottom: 40px;
	}
	h2.paragraph_title:before {
		content: '';
		position: absolute;
		left: 50%;
		bottom: 0;
		width: 100px;
		height: 2px;
		transform: translateX(-50%);
		background-color: #c73a64;
	}
	.full_figure {
		width: 100&;
		margin-bottom: 40px;
	}
	.body-text {
		margin-bottom: 40px;
		font-size: 16px;
		line-height: 1.8em;
	}
	.catch {
		font-weight: bold;
		font-size: 20px;
		line-height: 1.8em;
		text-align: justify;
	}
	.catch strong {
		color: #0e7478;
		font-weight: inherit;
	}
	#index_possibility {
		margin-bottom: 80px;
	}
	#about_4din .border-box {
		border: 1px solid #aeb5be;
		border-radius: 8px;
		padding: 40px;
		margin-bottom: 80px;
	}
	h3.chart_title {
		text-align: center;
		margin-bottom: 32px;
		font-size: 26px;
		font-weight: bold;
		color: #0e7478;
	}
	#about_4din .chart_content {
		margin-bottom: 40px;
	}
	#about_4din .chart_content dl {
		display: flex;
		align-items: center;
		border-top: 1px dotted #aeb5be;
		padding: 16px 0;
	}
	#about_4din .chart_content dt {
		width: 240px;
		margin-left: 40px;
		font-size: 18px;
		line-height: 1.5em;
		font-weight: bold;
		padding: 4px 0 4px 12px;
		color: #454b5a;
		border-left: 2px solid #454b5a;
	}
	#about_4din .chart_content dl:last-child {
		border-bottom: 1px dotted #aeb5be;
	}
	#about_4din .service_features {
		font-size: 16px;
		line-height: 1.8em;
	}
	#about_4din .service_features>li div ul li {
		font-size: 14px;
		font-weight: normal;
		line-height: 1.8em;
	}
	#about_4din .service_features>li div li::before {
		content: "⚫︎";
		color: #7b818d;
		font-size: 0.72em;
		margin-right: 0.72em;
	}
	#about_4din .figure_content {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		margin-bottom: 40px;
	}
	#about_4din .figure_content .description {
		width: 35%;
	}
	#about_4din .figure_content .map {
		width: 60%;
	}
	#about_4din .figure_content .description .title {
		font-size: 16px;
		margin-bottom: 8px;
	}
	#about_4din .figure_content .description .note {
		font-size: 14px;
	}
	#about_4din .figure_content .description .hilite {
		font-size: 20px;
		font-weight: bold;
		border: 1px solid #18bdc3;
		border-radius: 8px;
		padding: 4px 20px 16px 20px;
		margin-bottom: 8px;
	}
	#about_4din .figure_content .description .hilite .topic {
		display: flex;
		align-items: first baseline;
	}
	#about_4din .figure_content .description .hilite .topic .amount {
		font-size: 60px;
		margin: 0 12px;
		color: #0e7478;
	}
	#about_4din .achievements {
		display: flex;
		align-items: stretch;
		justify-content: space-between;
		margin-bottom: 8px;
	}
	#about_4din .achievements .cell {
		width: 32%;
		box-shadow: 0 0 10px 0 rgba(0,0,0,0.3);
	}
	#about_4din .achievements .cell .title {
		background-color: #454b5a;
		padding: 8px 0;
	}
	#about_4din .achievements .cell .title h4 {
		display: flex;
		align-items: first baseline;
		justify-content: center;
		font-size: 18px;
		font-weight: bold;
		color: #fff;
	}
	#about_4din .achievements .cell .title h4 .amount {
		font-size: 54px;
		line-height: 1em;
	}
	#about_4din .achievements .cell .cell_content {
		font-size: 14px;
		line-height: 1.5em;
		padding: 20px;
	}
	#about_4din .achievements .cell .cell_content h5 {
		font-size: 18px;
		line-height: 1.5em;
		font-weight: bold;
		color: #0e7478;
		margin-bottom: 16px;
	}
	#about_4din .achievements .cell .cell_content h6 {
		font-weight: bold;
		margin-bottom: 8px;
	}
	#about_4din .achievements .cell .cell_content p {
		margin-bottom: 16px;
	}
	#about_4din .achievements .cell .cell_content ul {
		line-height: 1.6em;
		margin-bottom: 12px;
	}
	#about_4din .achievements .cell .cell_content li::before {
		content: "⚫︎";
		color: #7b818d;
		font-size: 0.72em;
		margin: 0 0.72em;
	}
	#about_4din .achievements .cell .cell_content .notice {
		font-size: 12px;
		line-height: 1.5em;
	}
	#about_4din .achievement_notice {
		font-size: 14px;
		text-align: right;
	}
	#other_services {
		background-color: #f7f8fa;
		padding: 40px 0 56px 0;
	}
	#other_services .service_list {
		display: flex;
		align-items: stretch;
		justify-content: space-between;
		margin-bottom: 40px;
	}
	#other_services .service_list li {
		width: 31%;
	}
	#other_services .service_list li h3 {
		font-size: 18px;
		font-weight: bold;
		text-align: center;
		padding-bottom: 16px;
		margin-bottom: 16px;
		border-bottom: 1px solid #aeb5be;
	}
	#other_services .service_list li .cell_content {
		font-size: 16px;
		line-height: 1.5em;
	}
	#other_services .linkbtn {
		text-align: center;
	}
	#other_services .contact_link {
		width: 33%;
		font-size: 16px;
	}
	.product_header {
		display: flex;
		align-items: center;
	}
	.product_header .product_text {
		width: 50%;
	}
	.product_header .product_image {
		width: 50%;
	}
	.product_header .product_text .product_title {
		padding: 8px 0 2px 24px;
		margin-bottom: 24px;
		border-left: 2px solid #c73a64;
	}
	.product_header .product_text .product_title h2 {
		font-size: 50px;
		line-height: 1em;
		font-weight: bold;
		margin-bottom: 16px;
	}
	.product_header .product_text .product_title h3 {
		font-size: 16px;
		font-weight: bold;
	}
	.product_header .product_text .catch {
		font-size: 46px;
		font-weight: bold;
		line-height: 1.3em;
	}
	.linkbtn {
		margin: 40px 0;
		text-align: center;
	}
	.linkbtn .download_link {
		width: 320px;
		font-size: 16px;
	}
	.no1_banner {
		display: flex;
		align-items: center;
		max-width: 1018px;
		box-shadow: 0 0 10px 0 rgba(0,0,0,0.3);
		padding: 12px 40px;
		margin: 0 auto 40px auto;
		outline: 1px solid #18bdc3;
		outline-offset: -8px;
	}
	.no1_banner .emblem {
		width: 320px;
	}
	.no1_banner .emblem img {
		margin: 0 40px;
	}
	.no1_banner .title {
		font-size: 24px;
		font-weight: bold;
		display: inline-flex;
		align-items: first baseline;
		margin-bottom: 8px;
	}
	.no1_banner .title .amount {
		font-size: 36px;
		color: #0e7478;
	}
	.no1_banner .title .amount sup {
		font-size: 24px;
	}
	.no1_banner .list_head {
		display: inline-block;
		padding: 8px 16px;
		font-size: 14px;
		font-weight: bold;
		background-color: #e8f9f9;
		border-radius: 4px;
		margin-bottom: 8px;
	}
	.no1_banner ul {
		line-height: 1.8em;
	}
	.no1_banner .notice {
		text-align: right;
		font-size: 12px;
	}
	#product_process {
		position: relative;
		background-image: url('../img/assignment_BgimgPC.png');
		background-repeat: no-repeat;
		background-position: center top;
		margin-top: -160px;
	}
	#product_process::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 50%, #eef1f4 50%);
		z-index: -1;
	}
	#product_process .content {
		padding: 300px 0 360px 0;
	}
	#product_process .head, #product_point .head {
		position: relative;
		width: 600px;
		margin: 0 auto 40px auto;
		padding: 40px 0 16px 0;
		background-color: #fff;
		border-radius: 8px;
		text-align: center;
	}
	#product_process .head:after, #product_point .head:after {
		content: "";
		position: absolute;
		right: 0;
		bottom: -20px;
		left: 0;
		width: 0px;
		height: 0px;
		margin: auto;
		border-style: solid;
		border-color: #fff transparent transparent transparent;
		border-width: 20px 20px 0 20px;
	}
	#product_process .head .icon, #product_point .head .icon {
		position: absolute;
		width: 70px;
		top: -35px;
		left: 50%;
		transform: translateX(-50%);
	}
	#product_process .head h3, #product_point .head h3 {
		position: relative;
		text-align: center;
		font-size: 30px;
		font-weight: bold;
		padding-bottom: 8px;
		margin-bottom: 8px;
	}
	#product_process .head h3:before, #product_point .head h3:before {
		content: '';
		position: absolute;
		left: 50%;
		bottom: 0;
		width: 100px;
		height: 2px;
		transform: translateX(-50%);
		background-color: #c73a64;
	}
	#product_process .head .maintext, #product_point .head .maintext {
		font-size: 18px;
		font-weight: bold;
		color: #454b5a;
	}
	#product_process .subject {
		display: flex;
		align-items: stretch;
		justify-content: space-between;
		margin-bottom: 16px;
	}
	#product_process .subject li {
		width: 32%;
		background-color: #fff;
		box-shadow: 0 4px 8px 0 rgba(0,0,0,0.3);
	}
	#product_process .subject dl {
		width: 100%;
		text-align: center;
	}
	#product_process .subject dt {
		display: inline-block;
		padding: 6px 30px;
		margin: 0 auto;
		background-color: #454b5a;
		color: #fff;
		font-size: 18px;
		font-weight: bold;
	}
	#product_process .subject dd {
		text-align: left;
		padding: 16px 24px;
		min-height: 160px;
		font-size: 22px;
		font-weight: bold;
		line-height: 1.5em;
		background: url('../img/Gen_Problem.svg') no-repeat;
		background-position: center;
		background-size: 100px;
	}
	#product_process .arrow {
		text-align: center;
	}
	#product_process .solution {
		text-align: center;
		font-size: 36px;
		font-weight: bold;
		line-height: 1.3em;
	}
	#product_process .solution strong {
		color: #0e7478;
		font-weight: inherit;
		background: linear-gradient(transparent 50%, #fff 50%);
	}
	#product_point {
		position: relative;
		background-image: url('../img/solution_BgimgPC.png');
		background-repeat: no-repeat;
		background-position: center top;
		margin-top: -480px;
	}
	#product_point .content {
		padding-top: 300px;
	}
	#product_point .content.rwi {
		padding-bottom: 40px;
	}
	#product_point::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 50%, #18bdc3 50%);
		z-index: -1;
	}
	#product_point .point_list {
		display: flex;
		flex-wrap: wrap;
		align-items: stretch;
		justify-content: center;
		padding-bottom: 16px;
	}
	#product_point .point_list .cell {
		width: calc(50% - 24px);
		max-width: 500px;
		margin: 0 12px 24px 12px;
		background-color: #fff;
		border: 8px solid #e8f9f9;
		outline: 1px solid #18bdc3;
		outline-offset: -8px;
		padding: 16px 40px;
		box-shadow: 0 4px 8px 0 rgba(0,0,0,0.3);
	}
	#product_point .point_list .cell img {
		display: block;
		margin: 0 auto 12px auto;
		width: 190px;
	}
	#product_point .point_list .cell ul {
		line-height: 1.8em;
	}
	#product_point .point_list h4 {
		font-size: 22px;
		font-weight: bold;
		color: #454b5a;
		text-align: center;
		line-height: 1.3em;
		margin-bottom: 24px;
	}
	#product_point .screen_sample {
		background-color: #f7f8fa;
		border-radius: 8px;
		padding: 32px 40px 24px 40px;
		box-shadow: 0 4px 8px 0 rgba(0,0,0,0.3);
	}
	#product_point .screen_sample h3 {
		font-size: 26px;
		font-weight: bold;
		text-align: center;
		margin-bottom: 24px;
	}
	#product_point .screen_sample .screenshot {
		text-align: center;
	}
	#product_point .screen_sample .screenshot img {
		width: 648px;
	}
	.product_download {
		background: url('../img/cta_Bgimg.png') no-repeat;
		background-size: cover;
		padding: 40px 0;
		margin-bottom: 60px;
	}
	.product_download .content {
		width: 720px;
		display: flex;
		align-items: flex-start;
		margin: 0 auto;
		background-color: #fff;
		border-radius: 8px;
		padding: 40px 40px 0 20px;
	}
	.product_download .content .product_text {
		width: 70%;
		font-weight: bold;
		color: 454b5a;
	}
	.product_download .content .product_text .subtitle {
		font-size: 16px;
		line-height: 1.3em;
		margin-bottom: 8px;
		color: #454b5a;
	}
	.product_download .content .product_text .product_name {
		font-size: 20px;
		line-height: 1.3em;
		margin-bottom: 12px;
	}
	.product_download .content .product_text .catch {
		font-size: 23px;
		line-height: 1.5em;
		margin-bottom: 20px;
	}
	.product_download .content .product_text .download_link {
		width: 80%;
	}
	.product_download .content .document_image {
		width: 30%;
	}
	
	#product_overview {
	}
	#product_overview .fill-box {
		background-color: #f7f8fa;
		border-radius: 8px;
		padding: 40px 40px 24px 40px;
		margin-bottom: 40px;
	}
	#product_overview .cases {
		margin-bottom: 60px;
	}
	#product_overview .cases .cell {
		display: flex;
		align-items: flex-start;
	}
	#product_overview .cases li:first-child {
		margin-bottom: 24px;
		padding-bottom: 20px;
		border-bottom: 1px solid #aeb5be;
	}
	#product_overview .cases .head {
		display: flex;
		align-items: center;
		margin-bottom: 12px;
	}
	#product_overview .cases .head .num {
		background-color: #454b5a;
		color: #fff;
		border-radius: 6px;
		padding: 6px 18px;
		font-size: 14px;
		font-weight: bold;
		margin-right: 20px;
	}
	#product_overview .cases .head .subject {
		font-size: 22px;
		font-weight: bold;
	}
	#product_overview .cases .product_logo {
		width: 600px;
		margin-bottom: 24px;
	}
	#product_overview .cases .description {
		font-size: 16px;
		line-height: 1.8em;
	}
	#product_overview .cases .case_image {
		width: 50%;
		margin-left: 40px;
	}
	#product_overview .scene {
		display: flex;
		align-items: center;
		font-size: 20px;
		line-height: 1.5em;
		margin-bottom: 80px;
		justify-content: space-between;	
	}
	#product_overview .scene .scene_example {
		width: 60%;
		background-color: #fff;
		border-radius: 8px;
		padding: 24px;
	}
	#product_overview .scene .scene_example li:not(:last-child) {
		margin-bottom: 4px;
	}
	#product_overview .scene .scene_image {
		width: 36%;
	}
	#product_overview .flow {
		background-color: #18bdc3;
		border-radius: 16px;
		padding: 14px;
		display: flex;
		align-items: stretch;
		justify-content: space-between;
		margin-bottom: 80px;
	}
	#product_overview .flow .cell {
		width: 24.7%;
		padding: 14px;
		background-color: #fff;
	}
	#product_overview .flow .cell:first-child {
		border-radius: 12px 0 0 12px;
	}
	#product_overview .flow .cell:last-child {
		border-radius: 0 12px 12px 0;
	}
	#product_overview .flow .cell .num {
		font-size: 36px;
		font-weight: bold;
		line-height: 1.0em;
		margin-bottom: 14px;
	}
	#product_overview .flow .cell h3 {
		font-size: 20px;
		line-height:1.5em;
		font-weight: bold;
		color: #0e7478;
		margin-bottom: 12px;
	}
	#product_overview .flow .cell .description {
		font-size: 14px;
		line-height: 1.5em;
	}
	#product_overview .faq {
	}
	#product_overview .faq li {
		margin-bottom: 16px;
		padding: 16px 40px;
		background-color: #fff;
		border-radius: 6px;
		box-shadow: 0 4px 10px 0 rgba(0,0,0,0.3);
	}
	#product_overview .faq li:hover {
		background-color: #e8f9f9;
	}
	#product_overview .faq dt label {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	#product_overview .faq .icon {
		display: inline-flex;
		width: 50px;
		height: 50px;
		margin-right: 32px;
		border-radius: 25px;
		font-size: 28px;
		font-weight: bold;
		align-items: self-start;
		justify-content: center;
	}
	#product_overview .faq dt .icon {
		background-color: #0e7478;
		color: #fff;
	}
	#product_overview .faq dt h3 {
		font-size: 20px;
		font-weight: bold;
		flex: 1;
	}
	#product_overview .faq dd {
		max-height: 0;
		opacity: 0;
		overflow: hidden;
		margin-top: 0;
		transition: max-height 0.4s ease, opacity 0.4s ease, margin-top 0.4s ease;
	}
	#product_overview .faq dd .answer {
		display: flex;
		align-items: flex-start;
	}
	#product_overview .faq dd .icon {
		background-color: #eef1f4;
		color: #454b5a;
	}
	#product_overview .faq dd .description {
		flex: 1;
		align-self: center; 
	}
	#product_overview .faq dt .toggle {
		width: 32px;
		height: 32px;
		background: url('../img/Plus.svg') no-repeat;
		cursor: pointer;
	}
	#product_overview .faq dl input[type="checkbox"]:checked + dt .toggle {
		background: url('../img/minus.svg') no-repeat;
	}
	#product_overview .faq dl input[type="checkbox"] {
		display: none;
	}
	#product_overview .faq dl input[type="checkbox"]:checked ~ dd {
		max-height: 500px;
		opacity: 1;
		margin-top: 12px;
	}
	#product_form {
		position: relative;
		background-image: url('../img/assignment_BgimgPC.png');
		background-repeat: no-repeat;
		background-position: center top;
		margin: -200px 0 0 0;
		padding : 320px 0 20px 0;
	}
	#product_form::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 50%, #eef1f4 50%);
		z-index: -1;
	}
	#product_form .content {
		background-color: #fff;
		border-radius: 8px;
		padding: 0 40px 40px 40px;
		margin-bottom: 80px;
	}
	#product_form .form_title {
		margin-bottom: 40px;
		text-align: center;
	}
	#product_form .head {
		display: inline-block;
		padding: 6px 30px;
		margin: 0 auto 20px auto;
		background-color: #454b5a;
		color: #fff;
		font-size: 18px;
		font-weight: bold;
	}
	#product_form .column {
		display :flex;
		align-items: flex-start;
		justify-content: space-between;
	}
	#product_form .information {
		flex: 1;
		max-width: 500px;
	}
	#product_form .input_section {
		width: 500px;
		margin-left: 40px;
	}
	#product_form .form_exp {
		font-size: 16px;
		line-eheight: 1.8em;
		margin-bottom: 32px;
	}
	#product_form .form_body {
		font-size: 16px;
		line-eheight: 1.5em;
	}
	#product_form .form_body dl dt {
		display: flex;
		align-items: center;
	}
	#product_form .form_body .mark {
		font-size: 12px;
		border-radius: 4px;
		padding: 2px 8px;
		color: #fff;
		font-weight: bold;
		background-color: #5d6370;
		margin-right: 8px;
	}
	#product_form .form_body .mark.required {
		background-color: #c9242f;
	}
	#product_form .form_body .content_head {
		font-weight: bold;
	}
	#product_form .form_body .content_notice {
		font-size: 12px;
	}
	#product_form .form_body dt {
		margin-bottom: 12px;
	}
	#product_form .form_body dt .form_parts {
		margin-left: 32px;
	}
	#product_form .form_body .form_parts label {
		display: flex;
		align-items: center;
		column-gap: 4px;
		width: fit-content;
		line-height: 1;
		cursor: pointer;
	}
	#product_form .form_body dd.term-of-use .form_parts label {
		margin: 0 auto 40px auto;
	}
	#product_form .form_body dd {
		margin-bottom: 24px;
	}
	#product_form .form_body dd.separate {
		border-bottom: 1px dashed #000;
		padding-bottom: 16px;
	}
	#product_form .form_body dd .info {
		font-size: 12px;
		line-height: 1.5em;
	}
	#product_form .form_body dd .example {
	}
	#product_form .form_body dd .error_msg {
		color: #c9242f;
	
	}
	#product_form input[type="checkbox"] {
		appearance: none;
		position: relative;
		width: 24px;
		height: 24px;
		border: 1px solid #000;
		border-radius: 4px;
		cursor: pointer;
		margin-right: 8px;
	}
	#product_form input[type="checkbox"]:checked {
		background-color: #2d589c;
	}
	#product_form input[type="checkbox"]:checked::after {
		content: "";
		position: absolute;
		top: 1px;
		left: 3px;
		width: 14px;
		height: 10px;
		border-bottom: 3px solid #ffffff;
		border-left: 3px solid #ffffff;
		transform: rotate(-45deg);
	}
	#product_form input[type="text"] {
		width: 100%;
		appearance: none;
		position: relative;
		height: 24px;
		border: 1px solid #000;
		border-radius: 4px;
		cursor: pointer;
		margin-bottom: 8px;
		box-sizing: border-box;
		padding: 20px;
	}
	#product_form .form_body dd .form_parts:not(:last-child) {
		margin-bottom: 12px;
	}
	#product_form .download_link {
		width: 80%;
		margin: 0 10%;
	}
	#product_form .information .form_logo {
		width: 168px;
		margin-bottom: 40px;
	}
	#product_form .information h3 {
		font-size: 26px;
		font-weight: bold;
		margin-bottom: 20px;
	}
	#product_form .information h3 strong {
		color: #0e7478;
		font-weight: inherit;
	}
	#product_form .information .description {
		font-size: 20px;
		font-weight: bold;
		margin-bottom: 12px;
	}
	#product_form .information .document_image {
		margin-bottom: 16px;
	}
	#product_form .information .specification {
		border: 1px solid #18bdc3;
		border-radius: 8px;
		background-color: #f4fcfc;
		padding: 32px;
	}
	#product_form .information .chart_title {
		font-size: 14px;
		margin-bottom: 12px;
	}
	#product_gateway {
		padding: 40px 0 0 0;
		margin-bottom: 24px;
	}
	#product_gateway .content {
		width: 720px;
		display: flex;
		align-items: flex-start;
		margin: 0 auto 40px auto;
		background-color: #fff;
		border-radius: 8px;
		padding: 40px;
		box-shadow: 0 4px 10px 0 rgba(0,0,0,0.3);
	}
	#product_gateway.rwi .content {
		background: url('../img/Gen_bannerimg1.png') no-repeat;
		background-size: cover;
	}
	#product_gateway.rwe .content {
		background: url('../img/Ins_bannerimg2.png') no-repeat;
		background-size: cover;
	}
	#product_gateway .content .product_text {
		width: 60%;
		background-color: #fff;
		padding: 20px;
	}
	#product_gateway .content .product_text .subtitle {
		font-size: 12px;
		font-weight: bold;
		line-height: 1.5em;
		color: #0e7478;
		margin-bottom: 4px;
	}
	#product_gateway .content .product_text .catch {
		font-size: 18px;
		line-height: 1.3em;
		margin-bottom: 20px;
	}
	#product_gateway .content .product_text .product_name {
		font-size: 30px;
		font-weight: bold;
		line-height: 1.2em;
		padding: 0 0 0 20px;
		margin-bottom: 20px;
		border-left: 2px solid #c73a64;
	}
	#product_gateway .product_list a, .download_page .product_list a {
		display: flex;
		align-items: center;
		text-decoration: none;
		color: #2d589c;
		font-size: 16px;
		justify-content: flex-end;
	}
	.download_page h1 {
		text-align: center;
		font-size: 40px;
		font-weight: bold;
		margin-bottom: 40px;
	}

	.download_dialog {
		width: 720px;
		margin: 0 auto 80px auto;
		background-color: #fff;
		border-radius: 8px;
		padding: 40px;
		box-shadow: 0 4px 10px 0 rgba(0,0,0,0.3);
	}
	.download_dialog .message {
		text-align: center;
		font-size: 20px;
		font-weight: bold;
		line-height: 1.8em;
		margin-bottom: 32px;
	}
	.download_dialog .downloadbtn {
		text-align: center;
	}
	.download_dialog .download_link {
		width: 50%;
	}
	.product_list {
		text-align: right;
	}
	
	
	footer {
		margin-top: auto;
		width: 100%;
		padding: 40px 0;
		background-color: #454b5a;
	}
	footer a {
		color: #fff;
		text-decoration: none;
	}
	.lpfooter {
		font-size: 16px;
		position: relative;
	}
	.lpfooter .footer_logo {
		padding-bottom: 24px;
		margin-bottom: 32px;
		border-bottom: 1px solid #fff;
	}
	.lpfooter .footer_logo img {
		width: 168px;
	}
	.lpfooter .footer_navi {
		display: flex;
		color: #fff;
		margin-bottom: 40px;
	}
	.lpfooter .footer_navi li {
		display: inline-flex;
		align-items: center;
		margin-right: 40px;
	}
	.lpfooter .footer_navi li .icon {
		margin-left: 8px;
	}
	.lpfooter .footer_copy {
		font-size: 12px;
		color: #fff;
	}
	.lpfooter .footer_navi li a, .lpfooter .footer_navi li a:visited {
		color: #fff;
		text-decoration: none;
	}
	.lpfooter .footer_navi li a:hover {
		text-decoration: underline;
	}
	.btn_pagetop {
		display: flex;
		align-items: center;
		justify-content: center;
		background-color: #fff;
		border: 1px solid #2d589c;
		width: 48px;
		height: 48px;
		border-radius: 24px;
		position: fixed;
		bottom: 40px;
		right: 40px;
	}
	.btn_pagetop img {
		width: 24px;
	}
}