@charset "UTF-8";
.cx_video.bn{
 border: none;
}

.top_message{
  background-color: #f5f5f5;
  padding: 80px 0 80px 0;
}
.top_message .title {
   font-size: 42px;
			font-weight: 600;
			text-align: center;
			line-height: 1.1;
			margin: 0 0 10px;
}
	.top_message .title img{
	 margin: 0 auto;
		width: 480px;
		max-width: 100%;
	}
.top_message .subtitle {
   font-size: 24px;
			font-weight: 600;
			text-align: center;
			margin: 0 0 40px;
}
.top_message .textList{
 margin: 0px;
	padding: 0px;
}
.top_message .textList .text{
 margin: 0px 0px 10px 0px;
	padding: 0px;
	text-align: center;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.6;
}
.top_video.n{
 background: #FFF;
	padding: 80px 0 0 0;
}
.top_video.n .row{
 margin: 0px 0px 40px 0px;
 display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.top_video.n .row .imgArea{
 width: 320px;
}
.top_video.n .row .textArea{
 width : -webkit-calc(100% - 320px) ;
 width : calc(100% - 320px) ;
}

.top_video.n .row .textArea .index{
   font-size: 24px;
			font-weight: 600;
			text-align: center;
			margin: 0 0 20px;
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			gap:5px;
}
.top_video.n .row .textArea .index img{
  height: 50px;
		width: auto;
}
.top_video.n .row .textArea .text{
			font-size: 18px;
			text-align:left;
}

.feature .sec_ttl h2.title{
 margin: 0px 0px 10px 0px;
	line-height: 1.1;
}
.feature .sec_ttl .subTitle{
 text-align: center;
	font-size: 20px;
	font-weight: 600;
}

.lineUp .sec_ttl h2.title{
 margin: 0px 0px 10px 0px;
	line-height: 1.1;
}
.lineUp .sec_ttl .subTitle{
 text-align: center;
	font-size: 20px;
	font-weight: 600;
}
.lineUp .lineUpItem_img .voice_logo{
 width : -webkit-calc(100% - 40px) ;
 width : calc(100% - 40px) ;
}
.lineUp .lineUpItem_img .chat_logo{
 width : -webkit-calc(100% - 40px) ;
 width : calc(100% - 40px) ;
}
@media screen and (max-width: 767px) {
	.fv_mainMessage.n{
	 padding: 15px 10px;
	}
	.fv_mainMessage.n .h1{
	 font-size: 24px;
  margin-bottom: 10px;
	}
	.fv_mainMessage.n .fv_mainMessage_txt.s{
	 text-align: left;
		margin-bottom: 5px;
	}
	.fv_mainMessage.n .fv_mainMessage_txt.s br{
	 display: none;
	}
	
	.top_message{
	 padding: 60px 0;
	}
	.top_message .title{
	 font-size: 26px;
	}
	.top_message .title img{
	 max-width: 100%;
	}

	.top_message .subtitle{
	 font-size: 14px;
	}
	.top_message .textList .text{
	 font-size: 14px;
		text-align: left;
	}
	.top_message .textList .text br{
	 display: none;
	}
	.top_video.n .row{
	 display: block;
	}
	.top_video.n .row .imgArea{
	 width: auto;
		text-align: center;
		margin: 0px 0px 10px 0px;
	}
	.top_video.n .row .imgArea img{
	 max-width: 50%;
		display: inline-block;
	}
	
	.top_video.n .row .textArea{
	 width: auto;
	}
	.top_video.n .row .textArea .index{
	 font-size: 20px;
		justify-content: center;
	}
	.top_video.n .row .textArea .index img{
	 height: auto;
		max-width : -webkit-calc(100% - 100px) ;
  max-width : calc(100% - 100px) ;
	}
	.top_video.n .row .textArea .text{
	 font-size: 16px;
		text-align: left;
	}
	.top_video.n .row .textArea .text br{
	 display: none;
	}
	.lineUp .lineUpItem_img .chat_logo{
	  margin: 0 auto;
	}
	.lineUp .lineUpItem_img .chat_chat{
	  margin: 0 auto;
	}
	.lineUp .sec_ttl .subTitle{
	     font-size: 16px;
	}
	
	.lineUpItem_text.lf{
	 text-align: left;
		font-size: 14px;
	}
}

	.fv_mainMessage.nc .h1{
	     font-size: 28px;
						color: #202020;
						margin-bottom: 10px;
						line-height: 1.2;
	}
	.fv_mainMessage.nc .logo{
		margin-bottom: 20px;
		/*width: 640px;
			max-width: 100%;*/
		font-size: 30px;
  font-weight: 600;
		color: #202020;	
		letter-spacing: -0.03em;
	}
		.fv_mainMessage.nc .logo img{
			width: 500px;
			max-width: 100%;
	 }
		.sec_wrap.solution.c{
		 background: url(../images/solution_conImg.png) no-repeat;
    background-size: 33%;
    background-position: 96% 125%;
		}
		.sec_wrap.solution.c .solution_conTxt{
		 font-size: 18px;
		}
		.sec_wrap.solution.c .solution_conBox{
		     padding-bottom: 62px;
		}
		.solution .sec_ttl.solution .subTitle{
		 font-size: 24px;
			font-weight: 600;
			text-align: center;
			margin: 0 0 10px;
		}
		.solution .sec_ttl.solution h2.title{
		 margin-bottom: 40px;
		}
		.solution .sec_ttl.solution h2.title img{
		 height: 50px;
			width: auto;
			max-width: 100%;
		}
		
		section.price .sec_ttl.price h2{
		 text-align: center;
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			justify-content: center;
			    gap: 20px;
		}
		section.price .sec_ttl.price h2 img{
		 height: 60px;
			width: auto;
			display: inline-block;
			max-width: 100%;
		}

		
		.sec_ttl h2.title{
		 text-align: center;
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			justify-content: center;
			    gap: 20px;
							color: #464646;
		}
		.sec_ttl h2.title img{
		 height: 50px;
			width: auto;
		}
		.sec_ttl.strongPoint p.s{
		 font-size: 20px;
		}
		
		
		section.price .priceRow {
		 display: flex;
			flex-wrap: wrap;
			justify-content: space-between;
			margin: 40px 0;
		}
		
		section.price .priceRow .priceBox{
		 width : -webkit-calc(50% - 50px) ;
   width : calc(50% - 50px) ;
			padding: 20px 0px;
			border-radius: 20px;
			border: 4px solid #173fa5;
			text-align: center;
		}
			section.price .priceRow.m .priceBox{
			 width : -webkit-calc(33.3% - 50px) ;
   width : calc(33.3% - 50px) ;
			}
		section.price .priceRow .priceBox .name{
		 margin: 0px 0px 10px 0px;
			color:  #173fa5;
			font-size: 24px;
			font-weight: 600;
			line-height: 1.4;
		}
		section.price .priceRow .priceBox .status{
		 margin: 0px 0px 10px 0px;
			font-size: 20px;
			font-weight: 600;
			line-height: 1.4;
		}
		section.price .priceRow .priceBox .statusRow {
		 display: flex;
			flex-wrap: wrap;
			align-items: center;
			justify-content: center;
			gap:10px;
		}
		section.price .priceRow .priceBox .statusRow .s{
		 font-size: 16px;
			line-height: 1.4;
			font-weight: 400;
		}
		section.price .priceRow .priceBox .statusRow .p{
		 font-size: 16px;
			font-weight: 600;
		}
				section.price .priceRow .priceBox .kome{
				 margin: 0px;
					padding: 0px;
					font-size: 16px;
					line-height: 1.3;
				}
				section.price .priceRow .pluss{
				 display: flex;
					flex-wrap: wrap;
					justify-content: center;
					align-items: center;
					width: 50px;
				}

				section.price .priceRow .pluss .c{
				 width: 50px;
					height: 50px;
					border-radius: 50%;
					background: #173fa5;
					color: #FFF;
					font-size: 20px;
					font-weight: 600;
									 display: flex;
					flex-wrap: wrap;
					justify-content: center;
					align-items: center;
				}
							section.price .priceRow.m .pluss{
							 width: 30px;
							}
							section.price .priceRow.m .pluss .c{
							 width: 30px;
									height: 30px;
									font-size: 18px;
									line-height: 30px;
							}
							.solution_ai .solutionItem.item02 h3.s{
							 letter-spacing: -0.02em;
								font-size: 21px;
							}
				@media screen and (max-width: 767px) {
				.fv_mainMessage.nc{
				   padding-right: 15px;
       padding-left: 15px;
				}
				.fv_mainMessage.nc .h1{
				 font-size: 4vw;
					text-align: center;
				}
				.fv_mainMessage.nc .logo{
				 font-size: 5.3vw;
					text-align: center;
				}
				.fv_mainMessage.nc .fv_mainMessage_txt {
				 text-align: left;
				}
				
				 .sec_ttl h2.title{
					 gap: 0px;
						margin: 0px 5px;
					}
					.sec_ttl h2.title img{
					 max-width: 100%;
						height: auto;
					}
					.solution .sec_ttl.solution .subTitle{
					 font-size: 4.8vw;
						margin-top: 10px;
					}
					section.price .sec_ttl.price h2 img{
					 height: auto;
					}
					section.price .priceRow{
					 display: block;
					}
					section.price .priceRow .priceBox{
					 width: auto;
						margin: 0px 0px 20px 0px;
					}
					section.price .priceRow .pluss{
					 width: auto;
						margin: 0px 0px 20px 0px;
					}
			section.price .priceRow.m .priceBox{
			 width : auto;
			}
section.price .priceRow.m .pluss{
					 width: auto;
					}
					
					.attentionItem p.sl{
					 text-align: left
					}
					.sec_ttl.strongPoint p.s{
					 font-size: 16px;
						margin-bottom: 10px;
						text-align: left;
					}
					.sec_ttl.strongPoint p.s br{
					 display: none;
					}
				}
				.ai .fv_mainMessage .fv_mainMessage_left.n .fv_h1Sub {
				 font-size: 22px;
    margin-bottom: 20px;
				line-height: 1.3;
				}
				.ai .fv_mainMessage .fv_mainMessage_left.n .h1{
				 font-size: 27px;
					letter-spacing: -0.03em;
					margin-bottom: 20px;
				}
				@media screen and (max-width: 767px) {
				.ai .fv_mainMessage .fv_mainMessage_left.n .fv_h1Sub {
				 font-size: 4vw;
					text-align: center;
					margin-bottom: 10px;
				}
				.ai .fv_mainMessage .fv_mainMessage_left.n .h1{
				 font-size: 5vw;
					text-align: center;
					margin-bottom: 10px;
				}
				}