:root {
  --color-blue: #C9052F;
}

.PageFv {
  background: linear-gradient(180deg,rgba(74, 74, 74, 1) 0%, rgba(193, 193, 193, 1) 100%);
}

.PageFvTitle {
  --color-blue: #000;
}

.PageFvTitle small span {
  color: #ec395f;
  border-bottom: 1px solid #EC395F;
}

.PageFv .ContainerButtonSm {
  justify-content: flex-start;
}

.PageLocalNavi ul li a {
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2215.818%22%20height%3D%2212.53%22%3E%3Cpath%20fill%3D%22%23ec395f%22%20d%3D%22m15.818%206.265-5.932%205.933a1.136%201.136%200%201%201-1.606-1.606l4.328-4.327L8.28%201.938A1.136%201.136%200%201%201%209.886.33Z%22%2F%3E%3Cpath%20fill%3D%22%23ec395f%22%20d%3D%22M13.493%207.326H1.136A1.135%201.135%200%200%201%20.001%206.191a1.135%201.135%200%200%201%201.135-1.135h12.357a1.135%201.135%200%200%201%201.135%201.135%201.135%201.135%200%200%201-1.135%201.135Z%22%2F%3E%3C%2Fsvg%3E');
}

.SectionTitle {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-size: 162%;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.06em;
  color: #fff;
  background: linear-gradient(90deg,rgba(167, 22, 53, 1) 0%, rgba(226, 68, 68, 1) 100%);
  padding: 22px 0;
  margin: 0;
}

.SectionTitle small {
  color: inherit;
  font-size: 60%;
}

.SectionTrouble {
  
}

.SectionTrouble .GridSet {
  padding: 80px 0 50px 0;
}

.SectionTrouble .PageSolutionIntroduction {
  margin-bottom: 54px;
  padding: 0;
}

.SectionTrouble .PageSolutionIntroduction .FlexColumnSet {
  align-items: center;
}

.SectionTrouble .PageSolutionIntroduction .TextStyle1 {
  text-align: center;
  margin: 0;
}

.SectionTrouble .PageSolutionIntroduction .PageSolutionIntroductionImage {
  display: block;
  width: 100%;
}

.SectionTrouble .PageSolutionIntroduction .PageSolutionIntroductionImage + .TextStyle2 {
  text-align: left;
  margin-top: 8px;
}


.SectionTroubleBg {
  background-color: #eeeff2;
}

.SectionTroubleList {
  display: block;
  margin-left: -5%;
  margin-right: -5%;
}

.SectionTroubleList img {
  display: block;
  width: 100%;
}

.SectionTroubleSolution {

}

.SectionTroubleSolution .GridSet {
  padding-top: 0;
}

.SectionTroubleSolutionArrow {
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 30px;
}

.SectionTroubleSolution .FlexColumnSet {
  align-items: center;
}

.SectionTroubleSolutionTitle {
  margin-left: auto;
  margin-right: auto;
  margin-top: -33px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 380px;
  height: 66px;
  font-size: 120%;
  color: #fff;
  background-color: #ec395f;
  border-radius: 100px;
  letter-spacing: 0.08em;
  border: 5px solid #fff;
  margin-bottom: 22px;
}

.SectionTroubleSolutionText {
  font-size: 120%;
  font-weight: bold;
  line-height: 1.8;
  letter-spacing: 0.06em;
}

.SectionTroubleSolutionText span {
  font-size: 110%;
  color: #ec395f;
  border-bottom: 1px solid #EC395F;
}

.SectionTroubleSolutionImage {
  display: block;
  width: 100%;
}

.SectionTroubleSummary {
  font-size: 120%;
  background-color: #F3F6F8;
  text-align: center;
  font-weight: bold;
  padding: 14px;
  letter-spacing: 0.1em;
  margin-top: 20px;
}

.SectionTroubleSummary:not(:last-of-type) {
  margin-bottom: 50px;
}

.SectionTroubleSummary span {
  color: #c9052f;
}

.SectionFaq .GridSet {
  padding: 80px 0;
}

.ProductFaq {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-direction: column;
	row-gap: 14px;
}

/* .ProductFaq:nth-child(1n+2) {
  margin-top: 30px;
} */

.ProductFaqButton .IconQ,
.ProductFaqContent .IconA {

}

.ProductFaqButton .IconQ {
	margin-right: 16px;
  margin-top: 3px;
}

.ProductFaqButton {
  position: relative;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	width: 100%;
	border: none;
	background-color: transparent;
	padding: 20px 40px 20px 20px;
	/* background-color: #F2F5FF; */
	border-radius: 5px;
	font-size: 16px;
	font-weight: bold;
	text-align: left;
}

.ProductFaqButton::before,
.ProductFaqButton::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  display: block;
  width: 15px;
  height: 2px;
  background-color: #000;
  transition: all 0.3s ease-in-out;
}

.ProductFaqButton::before {
  transform: translateY(-50%);
}

.ProductFaqButton::after {
  transform: translateY(-50%) rotate(90deg);
}

.ProductFaqButton[aria-expanded="true"]::after {
  transform: translateY(-50%) rotate(180deg);
}

.ProductFaqContent .IconA {
	margin-right: 18px;
}

.ProductFaqContent {
	width: 100%;
	display: none;
	padding: 20px;
	background-color: #F4F4F4;
	border-radius: 5px;
	font-size: 15px;
	box-sizing: border-box;
}

.ProductFaqContent > div {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}

.ButtonContactA {
  --color-blue: #20378B;
}

.SectionOptions {
  background-color: #fff7f7;
}

.SectionSystemContact {
  margin-bottom: 30px;
}

.ButtonDocumentRequest {
  width: auto;
  height: 50px;
  border-radius: 4px;
  background-image: linear-gradient(225deg, #f45c5d 0%, #de3031 100%);
  background-position: center;
  margin-top: 8px;
  font-size: 90%;
  font-weight: normal;
}

.SectionReason .GridSet {
  padding: 80px 0 50px 0;
}

.SectionReason .PageSolutionIntroduction {
  margin-bottom: 54px;
  padding: 0;
}


.SectionReason .PageSolutionIntroduction .TextStyle1 {
  text-align: center;
  margin: 0;
}

.SectionReason .SectionReasonBtnModal {
  max-width: 340px;
  width: 100%;
  margin: 66px auto 74px auto;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2222.423%22%20height%3D%2216.394%22%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221.6%22%20d%3D%22M.8%204.632h14.98v10.962H.8z%22%2F%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221.6%22%20d%3D%22M6.643%204.632V.8h14.98v10.962h-5.841%22%2F%3E%3C%2Fsvg%3E'), linear-gradient(90deg, rgba(226, 68, 68, 1) 0%, rgba(167, 22, 53, 1) 100%);
  background-repeat: no-repeat;
  background-position: right 20px center, center center;
}

.sectionNetStateVisualization {
  background-color: #eaf5f8;
  margin-bottom: 65px;
}

.sectionNetStateVisualizationTitle {
  font-size: 140%;
  color: #fff;
  background-color: #647ca2;
  padding: 18px;
  text-align: center;
  letter-spacing: 0.06em;
}

.sectionNetStateVisualizationWrapper {
  padding: 18px 42px 42px 42px;

  img {
    display: block;
    width: 100%;
  }
}

.CardProductNetStableImage {
  background-color: #fff;
  border: 1px solid #E2E2E2;
  margin-bottom: 15px;
}

.CardProductNetStableImage img {
  display: block;
  width: 100%;
}

.CardProductNetStableBody .ButtonSm {
  max-width: 100%;
}

.productListNetStable {
  margin-bottom: 60px;
}

.sectionNetStableOptionalService {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 34px;
  padding: 28px;
  border: 1px solid #C9052F;
  border-radius: 10px;
}

.sectionNetStableOptionalServiceTitle {
  font-size: 120%;
  color: #c9052f;
}

.sectionNetStableOptionalServiceText {
  margin-bottom: 0;
}

.SectionWorkFlow {
  padding: 30px 0 56px 0;
  box-sizing: border-box;
  border: 1px solid #EFEFEF;
  background-color: #fff;
  border-radius: 13px;
  border: 3px solid #C9052F;
}

.SectionWorkFlowTitle {
  text-align: center;
  font-size: 140%;
  letter-spacing: 0.06em;
  line-height: 1.6;
  font-weight: bold;
  color: #c9052f;
  margin-bottom: 25px;
}

.SectionWorkFlowList {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-wrap: wrap;
  row-gap: 22px;
}

.SectionWorkFlowList li {
  width: calc(100% / 5);
  font-weight: bold;
  text-align: center;
}

.SectionWorkFlowList li img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  margin-bottom: 10px;
}

.SectionNetworkDiagnosticService .GridSet {
  padding: 80px 0 50px 0;
}

.SectionNetworkDiagnosticService .PageSolutionIntroduction {
  margin-bottom: 54px;
  padding: 0;
}

.SectionNetworkDiagnosticService .PageSolutionIntroduction .TextStyle1 {
  margin-bottom: 0;
}

.SectionNetworkDiagnosticServiceOverview {
  max-width: 892px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 55px;
}

.CardNetworkDiagnosticServiceOverview {
  border: 1px solid #C9052F;
  border-radius: 10px;
  height: 100%;
  padding: 16px 28px;
  box-sizing: border-box;
}

.CardNetworkDiagnosticServiceOverviewTitle {
  font-size: 120%;
  color: #c9052f;
  text-align: center;
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: 1px solid #C9052F;
}

.CardNetworkDiagnosticServiceOverviewText {
  margin-bottom: 0;
  line-height: 2;
}

.SectionNetworkDiagnosticServiceFlow {
  display: block;
  max-width: 653px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin: 50px auto 70px auto;
}

.SectionFreeDiagnosticService {
  border: 3px solid #747474;
  border-radius: 12px;
}

.SectionFreeDiagnosticServiceTitle {
  text-align: center;
  font-size: 130%;
  letter-spacing: 0.08em;
  color: #fff;
  background-color: #747474;
  padding: 0;
}

.SectionFreeDiagnosticServiceTitle span {
  padding: 12px 155px;
  display: inline-block;
  position: relative;
}

.SectionFreeDiagnosticServiceTitle span::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  display: block;
  width: 115px;
  height: 107px;
  background-image: url("../../../../image/page/keyword_security/netstable/free_diagnostic_service_title.png");
  background-size: contain;
  background-position: center;
}

.SectionFreeDiagnosticServiceBody {
  padding: 20px 10px 32px 10px;
}

.SectionFreeDiagnosticServiceBody .ButtonSm {
  margin-left: auto;
  margin-right: auto;
}

.SectionCostDown {
  padding: 50px 35px 35px 35px;
  background-color: #fff7f7;
}

.SectionCostDownTitle {
  text-align: center;
  letter-spacing: 0.08em;
  font-weight: bold;
  font-size: 110%;
  margin-bottom: 28px;
}

.SectionCostDownContent {
  display: block;
}

.SectionCostDownContent img {
  display: block;
  width: 100%;
}

.SectionCostDownAfter {
  font-size: 120%;
  text-align: center;
  color: #ec395f;
  font-weight: bold;
  padding-top: 46px;
  margin-top: 14px;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22118%22%20height%3D%2236%22%3E%3Cpath%20fill%3D%22%23fcd8d8%22%20d%3D%22M59%2036%200%200h118Z%22%2F%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  background-position: top 0 center;
}

.SectionProductPoint {
  background-color: #fdfaed;
}

.SectionProductPoint .GridSet {
  padding: 80px 0 50px 0;
}

.SectionProductPointTitle {
  text-align: center;
  font-size: 180%;
  font-weight: bold;
  margin-bottom: 60px;
  padding: 0;
}

.SectionProductPointContents img {
  display: block;
  width: 100%; 
}

.SectionFeature .GridSet {
  padding: 80px 0 50px 0;
}

.SectionFeatureTitle {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 237%;
  color: #000;
  text-align: center;
  letter-spacing: 0.08em;
  margin-bottom: 50px;
  padding: 0;
  line-height: 1;
}

.SectionFeatureTitle::before,
.SectionFeatureTitle::after {
  content: "";
  display: block;
  margin-top: 30px;
  width: 132px;
  height: 1px;
  background-color: #000;
}

.SectionFeatureTitle::before {
  margin-right: 30px;
}

.SectionFeatureTitle::after {
  margin-left: 30px;
}

.SectionFeatureTitle span {
  display: inline;
  padding: 0;
  background-color: transparent;
}


.SectionFeatureTitle > span {
}

.SectionFeatureTitle > span > span {
  font-size: 178%;
  color: #ec395f;
  line-height: 1;
}

.SectionFeatureLead {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  font-size: 110%;
  letter-spacing: 0.08em;
  margin-bottom: 28px;
}

.SectionFeatureLead span {
  color: #fff;
  background-color: #ec395f;
  border-radius: 22px;
  padding: 8px 20px;
}

.SectionFeature .FlexColumnSet {
  margin-bottom: 60px;
}

.CardFeature {
  position: relative;
  padding: 50px 24px 38px 24px;
  border-radius: 12px;
  border: 2px solid #EC395F;
  background-color: #fff;
  box-sizing: border-box;
  height: 100%;
}

.CardFeature::before {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  display: block;
  width: 60px;
  height: 60px;
  border-radius: 30px;
  border: 5px solid #fff;
  background-color: #ec395f;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2223.378%22%20height%3D%2216.95%22%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-width%3D%223%22%20d%3D%22m1.169%205.239%207.61%209.463L22.312%201.056%22%2F%3E%3C%2Fsvg%3E');
  background-position: center;
  background-repeat: no-repeat;
  box-sizing: border-box;
}

.CardFeatureTitle {
  text-align: center;
  margin-bottom: 18px;
  font-size: 120%;
  margin-bottom: 20px;
  letter-spacing: 0.08em;
}

.CardFeatureImage {
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 14px;
  max-width: 100%;
}


.SectionFlow .GridSet {
  padding: 80px 0;
}

.SectionFlow .PageSolutionIntroduction {
  margin-bottom: 54px;
  padding: 0;
}

.SectionFlow .PageSolutionIntroduction .TextStyle1 {
  margin-bottom: 0;
}

.SectionFlow .FlexColumnSet {
  --flex-column-gutter-x: 25px;
  margin-bottom: 66px;
}

.CardFlowPoint {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  background-color: #fff7f7;
  padding: 38px 20px 20px 20px;
  box-sizing: border-box;
}

.CardFlowPointNum {
  position: absolute;
  top: -18px;
  left: -6px;
  display: block;
  width: 56px;
}

.CardFlowPointTitle {
  text-align: center;
  font-size: 110%;
  letter-spacing: 0.08em;
  color: #ec395f;
  margin-bottom: 18px;
  line-height: 1.5;
}


.SectionAgileworksTitle {
  font-weight: bold;
  margin: 0;
}

.SectionAgileworksTitle > span {
  display: inline-block;
  font-size: 90%;
  color: #fff;
  background: linear-gradient(240deg,rgba(84, 111, 211, 1) 0%, rgba(32, 55, 139, 1) 100%);
  padding: 10px 36px 6px 18px;
  clip-path: polygon(0 0, calc(100% - 20px) 0, 100% 100%, 0% 100%);
  letter-spacing: 0.08em;
}

.SectionAgileworksTitle > span > span {
  font-size: 160%;
}

.SectionAgileworksWrapper {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  background: linear-gradient(135deg,rgba(242, 245, 255, 1) 0%, rgba(200, 211, 240, 1) 100%);
}

.SectionAgileworksBg {
  width: 50%;

}

.SectionAgileworksContent {
  padding: 35px 0 35px 40px;
}

.SectionAgileworksLogo {
  margin-bottom: 16px;
}

.SectionAgileworksBtn {
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  width: 184px;
  height: 44px;
  border-radius: 5px;
  color: #fff !important;
  text-decoration: none !important;
  letter-spacing: 0.05em;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2222.423%22%20height%3D%2216.394%22%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221.6%22%20d%3D%22M.8%204.632h14.98v10.962H.8z%22%2F%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-miterlimit%3D%2210%22%20stroke-width%3D%221.6%22%20d%3D%22M6.643%204.632V.8h14.98v10.962h-5.841%22%2F%3E%3C%2Fsvg%3E'), linear-gradient(240deg,rgba(84, 111, 211, 1) 0%, rgba(32, 55, 139, 1) 100%);
  background-repeat: no-repeat;
  background-position: right 14px center, 0 0;
  padding-right: 8px;
  box-sizing: border-box;
}

.CardFlowPointText {
  margin-bottom: 0;
}

.SectionFlowTrouble {
  position: relative;
  border-radius: 12px;
  border: 2px solid #EC395F;
  padding: 66px 20px 40px 20px;
  background-color: #fff;
}

.SectionFlowTroubleTitle {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  max-width: 518px;
  width: 100%;
  box-sizing: border-box;
  text-align: center;
  padding: 12px;
  border: 2px solid #EC395F;
  border-radius: 100px;
  color: #ec395f;
  background-color: #fff;
  line-height: 1.6;
  margin: 0;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}

.SectionFlowTroubleText {
  font-size: 110%;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.08em;
}

.SectionAchievements {
  background-color: #fff7f7;
}


.SectionAchievements .GridSet {
  padding: 80px 0;
}

.SectionAchievements .PageSolutionIntroduction {
  margin-bottom: 54px;
  padding: 0;
}

.SectionAchievements .PageSolutionIntroduction .FlexColumnSet {
  align-items: center;
}

.SectionAchievements .PageSolutionIntroductionTitle {
  font-size: 130%;
  text-align: left;
}

.SectionAchievements .PageSolutionIntroduction .TextStyle1 {
  text-align: left;
  margin: 0;
}

.SectionAchievements .PageSolutionIntroduction .PageSolutionIntroductionImage {
  display: block;
  width: 100%;
}

.SectionUseExample {
  background-color: #fff;
  padding: 40px;
  margin-bottom: 70px;
}

.SectionUseExampleTitle {
  font-size: 130%;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.06em;
  border-bottom: 1px solid #C9052F;
  padding-bottom: 14px;
  margin-bottom: 24px;
  color: #c9052f;
}

.CardUseExample--horizon {
  display: flex;
  align-items: center;
  gap: 32px;
}

.CardUseExample--horizon:nth-of-type(1n+2) {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #ddd;
}

.CardUseExampleImage {
  display: block;
  width: 100%;
}

.CardUseExample--horizon .CardUseExampleImage {
  max-width: 205px;
}

.CardUseExampleTitle {
  
}

.CardUseExampleBody {
  
}

.SectionAchievementsUser {
  text-align: center;
  background-color: #fff7f7;
  padding: 18px;
  font-size: 120%;
  letter-spacing: 0.06em;
  font-weight: bold;
  color: #ec395f;
  margin-bottom: 30px;
}

.SectionAchievementsUser span {
  border-bottom: 1px solid #ec395f;
}

.SectionAchievements .BoxPatternCustomA {
  background-color: #fff7f7;
}

.SectionAchievements .BoxPatternCustomA h4 {
  font-size: 110%;
  line-height: 1.7;
  margin-bottom: 26px;
}

.SectionAchievements .BoxPatternCustomA .BoxPatternCustomInner {
  background-color: #fff;
  padding: 30px;
}

.SectionAchievements .BoxPatternCustomA .BoxPatternCustomInner:nth-child(1n+2) {
  margin-top: 20px;
}

.SectionAchievementsConnection {
  display: block;
  max-width: 630px;
  margin-left: auto;
  margin-right: auto;
}

.SectionAchievementsConnection img {
  display: block;
  width: 100%;
}

.SectionAchievementsSampleTitle {
  font-size: 150%;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.06em;
  margin-bottom: 20px;
}

.SectionAchievementsSampleTitle > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 34px;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217.894%22%20height%3D%2234.447%22%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23000%22%20d%3D%22m.447.224%2017%2034%22%2F%3E%3C%2Fsvg%3E'), url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2217.894%22%20height%3D%2234.447%22%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23000%22%20d%3D%22m17.447.224-17%2034%22%2F%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  background-position: left 0 center, right 0 center;
}

.SectionAchievementsSampleTitle > span > span {
  color: #ec395f;
}

.SectionAchievementsSampleImage {
  display: block;
}

.SectionAchievementsSampleImage img {
  display: block;
  width: 100%;
}

.SectionSupport .GridSet {
  padding: 80px 0;
}

.SectionSupport .PageSolutionIntroduction {
  margin-bottom: 54px;
  padding: 0;
}

.SectionSupport .PageSolutionIntroduction .FlexColumnSet {
  align-items: center;
}

.SectionSupport .PageSolutionIntroduction .TextStyle1 {
  text-align: left;
  margin: 0;
}


.SectionSupport .PageSolutionIntroduction .PageSolutionIntroductionImage {
  display: block;
  width: 100%;
}

.SectionOptions .GridSet {
  padding: 80px 0;
}

.SectionOptions .PageSolutionIntroduction {
  margin-bottom: 54px;
  padding: 0;
}

.SectionOptions .PageSolutionIntroduction .TextStyle1 {
  margin-bottom: 0;
}

.SectionOptions .FlexColumnSet {
  --flex-column-gutter-x: 30px;
  --flex-column-gutter-y: 30px;
}

.SectionOptions .CardOption {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background-color: #fff;
  box-shadow: 0 3px 14px #FFD8D8;
  padding: 30px;
}

.SectionOptions .CardOption .CardOptionImage {
  margin-bottom: 24px;
}

.SectionOptions .CardOption .CardOptionText {
  margin-bottom: 0;
  font-weight: bold;
  letter-spacing: 0.08em;
}


.SectionNetStableContact {
  background-image: url("../../../../image/page/keyword_security/netstable/contact_bg_pc.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.SectionNetStableContact .GridSet {
  padding: 60px 0;
}

.SectionNetStableContactTitle {
  font-size: 162%;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.06em;
  background-image: none;
  padding-bottom: 0;
  margin-bottom: 26px;
}

.SectionNetStableContactTitle span {
  display: inline;
  background-color: transparent;
  padding: 0 50px;
  background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2225.795%22%20height%3D%2238.713%22%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M15.237.696%2025.098%207.6M9.734%2012.497l11.627%203.115M8.599%2025.47l11.991-1.05M11.97%2038.048l10.909-5.087M4.64%202.938l18.239%208.506M.542%2018.229l20.049%201.754M1.922%2033.999l19.439-5.209%22%2F%3E%3C%2Fsvg%3E'),url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2225.795%22%20height%3D%2238.712%22%3E%3Cpath%20fill%3D%22none%22%20stroke%3D%22%23fff%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M10.557.696.696%207.6M16.061%2012.498%204.434%2015.613M17.196%2025.471l-11.992-1.05M13.825%2038.047%202.916%2032.96M21.155%202.938%202.916%2011.444M25.253%2018.229%205.204%2019.983M23.873%2034%204.434%2028.791%22%2F%3E%3C%2Fsvg%3E');
  background-repeat: no-repeat;
  background-position: left 0 center, right 0 center;
  color: #fff;
}

.ContainerButtonSm {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 25px;
}

.ButtonSm {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: 298px;
  height: 52px;
  border-radius: 5px;
  text-decoration: none;
  font-weight: bold;
  font-size: 100%;
  letter-spacing: 0.06em;
}

.ButtonSm:visited,
.ButtonSm:-webkit-any-link  {
  text-decoration: none;
}

.ButtonSm--white {
  color: #000;
  background-color: #fff;
}

.ButtonSm--red {
  --link-color: #fff;
  background: linear-gradient(90deg,rgba(226, 68, 68, 1) 0%, rgba(167, 22, 53, 1) 100%);
}

.SectionSupportService {
  padding: 28px 35px;
  border: 3px solid #EC395F;
  border-radius: 15px;
  margin-top: 20px;
}

.SectionSupportServiceTitle {
  text-align: center;
  color: #ec395f;
  font-size: 120%;
  padding-bottom: 20px;
  margin-bottom: 30px;
  border-bottom: 1px solid #EC395F;
  line-height: 1.6;
}

.SectionSupportServiceContent {
  display: block;
}

.SectionSupportServiceContent img {
  display: block;
  width: 100%;
  margin-bottom: 14px;
}

.SectionSupportServiceArrow {
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
}

.SectionSupportServiceAfter {
  font-size: 100%;
  letter-spacing: 0.08em;
  color: #ec395f;
  background-color: #fff7f7;
  border-radius: 10px;
  padding: 25px;
  border: 1px solid #ec395f;
  text-align: center;
  font-weight: bold;
}

.FixedXPointCatalog {
  position: fixed;
  right: 30px;
  bottom: 30px;
  width: 250px;
  z-index: 3;
}

.FixedXPointCatalogClose {
  cursor: pointer;
  background-color: transparent;
  border: none;
  padding: 0;
  position: absolute;
  top: -10px;
  right: -10px;
}

.FixedXPointCatalogLink {
  display: block;
  width: 100%;
}

.FixedXPointCatalogLink img {
  display: block;
  width: 100%;
}

.remodal-close {
  background-color: #000;
}

.RemodalOtherFeatureTitle {
  text-align: center;
  font-size: 140%;
  color: #c9052f;
  border-bottom: 1px solid #c9052f;
  margin-bottom: 40px;
  padding-bottom: 8px;
}

.RemodalOtherFeatureContents {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}

.CardOtherFeatureImage {
  display: block;
  width: 100%;
  margin-bottom: 22px;
}

.CardOtherFeatureTitle {
  color: #c9052f;
  font-size: 100%;
}

.RemodalNetStableProduct {

}

.RemodalNetStableProductContents {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}

.RemodalNetStableProductImage {
  width: 34.8%;
  border: 1px solid #E2E2E2;
}

.RemodalNetStableProductContent {
  width: 62.18%;
}

.RemodalNetStableProductContent table th,
.RemodalNetStableProductContent table td {
  padding: 6px 10px;
}

.RemodalNetStableProductContent table th {
  color: #fff;
  background-color: #9b9b9b;
}

.RemodalNetStableProductTitle {
  font-size: 140%;
  color: #c9052f;
  border-bottom: 1px solid #c9052f;
  margin-bottom: 28px;
  padding-bottom: 8px;
  font-weight: bold;
  background-image: none;
}

@media screen and (min-width: 768px) {
  .PageFv {
    height: 432px;
    background-image: url("../../../../image/page/keyword_security/netstable/fv_bg.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom 0 center;
  }

  .PageFv .SectionContainer {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column;
    height: 100%;
    background-image: url("../../../../image/page/keyword_security/netstable/fv_image.png");
    background-size: 417px auto;
    background-position: right 0 bottom -10px;
    background-repeat: no-repeat;
    max-width: 1032px;
  }

  .PageFvNote {
    position: absolute;
    font-size: 70%;
    max-width: 464px;
    width: 100%;
    bottom: 40px;
    right: -60px;
  }

  .PageFv .ContainerButtonSm {
    max-width: 583px;
  }

  .PageFvTitle {
    margin-bottom: 36px;
  }

  .PageFvTitle small {
    font-size: 24px;
    margin-bottom: 22px;
  }

  .PageFvTitle small span {
    font-size: inherit;
  }

  .PageFvTitle img {
    display: block;
    width: 427px;
    margin-bottom: 22px;
  }

  .PageFvTitle span {
    font-size: 19px;
  }

  .PageSolutionIntroduction .TextStyle1 {
    margin-bottom: 94px;
  }

  .PageLocalNavi ul {
    align-items: stretch;
    column-gap: 1.56%;
    row-gap: 10px;
  }

  .PageLocalNavi ul li {
    width: 32.26%;
    min-height: 45px;
    flex: initial;
  }

  .PageLocalNavi ul li:nth-child(1n+2) {
    margin-left: 0;
  }

  .ProductFaqButton {
		position: relative;
		padding-right: 40px;
		cursor: pointer;
	}
}

@media screen and (min-width: 768px) and (max-width: 1000px) {
  .ContainerButtonSm {
    margin-left: 10%;
    flex-direction: column;
  }
}

@media screen and (max-width: 767px) {
  .PageFv {
    padding: 30px 0 26px 0;
    height: 372px;
    box-sizing: border-box;
    background-image: url("../../../../image/page/keyword_security/netstable/fv_image.png"), linear-gradient(180deg,rgba(74, 74, 74, 1) 0%, rgba(193, 193, 193, 1) 100%);
    background-size: 270px auto, cover;
    background-repeat: no-repeat;
    background-position: top 120px center, center;

  }

  .PageFv .SectionContainer {
    position: static;
    transform: initial;
  }

  .PageFvNote {
    margin-top: 10px;
    font-size: 70%;
    /* position: absolute;
    font-size: 70%;
    max-width: 464px;
    width: 100%;
    bottom: 40px;
    right: -60px; */
  }

  .PageFvTitle {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    margin-bottom: 178px;
    text-align: center;
  }

  .PageFvTitle small {
    font-size: 20px;
    margin-bottom: 12px;
    font-weight: bold;
  }

  .PageFvTitle small span {
    font-size: inherit;
  }

  .PageFvTitle img {
    width: 238px;
    margin-bottom: 15px;
  }

  .PageFvTitle span {
    font-size: 85%;
  }

  .JS .SectionTitle {
    font-size: 120%;
    padding: 14px;
    margin: 0;
  }

  .JS .SectionTitleBg {
    margin-left: 0;
    margin-right: 0;
  }

  .ButtonDocumentRequest {
    display: inline-flex;
  }

  .ButtonContactA,
  .ButtonDocumentRequest {
    width: 100%;
  }

  .SectionNetStableContact {

  }

  .JS #main-area .SectionNetStableContact .GridSet {
    padding: 46px 0;
    background: none;
  }

  .JS #main-area .SectionNetStableContactTitle {
    font-size: 125%;
    margin-bottom: 24px;
    margin-left: 0;
    margin-right: 0;
  }

  .JS #main-area .SectionNetStableContactTitle > span {
    display: block;
  }
  
  .SectionTroubleSolution .GridSet {
    padding-top: 0;
  }

  .JS #main-area .SectionTrouble .GridSet,
  .JS #main-area .SectionReason .GridSet,
  .JS #main-area .SectionProductPoint .GridSet,
  .JS #main-area .SectionFeature .GridSet,
  .JS #main-area .SectionNetworkDiagnosticService .GridSet {
    padding: 40px 0 30px 0;
  }

  .JS #main-area .SectionFaq .GridSet,
  .JS #main-area .SectionAchievements .GridSet,
  .JS #main-area .SectionSupport .GridSet,
  .JS #main-area .SectionNetStableContact .GridSet,
  .JS #main-area .SectionOptions .GridSet,
  .JS #main-area .SectionFlow .GridSet {
    padding: 30px 0;
  }

  .JS #main-area .SectionTrouble .SectionTroubleBg .GridSet {
    padding-bottom: 30px;
  }

  .SectionTroubleList {
    margin: 0;
  }

  .JS #main-area .SectionTrouble .SectionTroubleSolution .GridSet {
    padding-top: 0;
  }

  .SectionTrouble .PageSolutionIntroduction .TextStyle1 {
    text-align: left;
  }

  .SectionWorkFlowTitle {
    font-size: 120%;
  }

  .SectionTroubleSolutionTitle {
    position: relative;
    z-index: 1;
    max-width: 100%;
    height: 58px;
    font-size: 110%;
    box-sizing: border-box;
  }

  .SectionTroubleSolutionText {
    font-size: 110%;
  }

  .SectionWorkFlow {
    padding: 20px 30px;
  }

  .SectionWorkFlowTitle {
    margin-bottom: 30px;
  }

  .SectionWorkFlowList {
    justify-content: space-between;
  }

  .SectionWorkFlowList li {
    width: 48%;
  }

  .SectionWorkFlowList .TextStyle1 {
    font-size: 80%;
  }

  .SectionCostDown {
    padding: 20px;
  }

  .SectionFeatureLead {
    font-size: 90%;
    text-align: center;
  }

  .SectionFeatureLead span {
    border-radius: 100px;
  }

  .JS .SectionFeatureTitle {
    font-size: 120%;
    margin-bottom: 40px;
  }

  .SectionFeatureTitle::before,
  .SectionFeatureTitle::after {
    width: 70px;
    margin-top: 10px;
  }

  .SectionFeatureTitle::before {
    margin-right: 20px;
  }

  .SectionFeatureTitle::after {
    margin-left: 20px;
  }

  .SectionFeature .FlexColumnSet {
    --flex-column-gutter-y: 40px;
  }

  .SectionReason .FlexColumnSet {
    --flex-column-gutter-y: 40px;
  }

  .CardProductNetStableBody .ButtonSm {
    width: 100%;
  }

  .sectionNetStableOptionalService {
    flex-direction: column;
  }

  .CardFeature {
    padding: 40px 16px 16px 16px;
  }

  .CardFeature .TextStyle1 {
    margin-bottom: 0;
  }

  .SectionAgileworksContent {
    padding: 30px 20px;
  }

  .SectionAchievementsSampleTitle {
    font-size: 90%;
  }

  .SectionAchievementsSampleTitle > span {
    display: inline-block;
  }

  .SectionFlowTrouble {
    padding: 66px 16px 20px 16px;
  }

  .SectionFlowTroubleTitle {
    width: 280px;
  }

  .SectionAchievements .BoxPatternCustomA .BoxPatternCustomInner {
    padding: 16px;
  }

  .SectionSupportServiceAfter {
    text-align: left;
  }

  .FixedXPointCatalog {
    width: 155px;
    right: 8px;
    bottom: 8px;
    bottom: 70px;
  }

  .FixedXPointCatalogClose {
    top: -13px;
    right: -5px;
  }

  .SectionReason .PageSolutionIntroduction .TextStyle1 {
    text-align: left;
  }

  .SectionFreeDiagnosticServiceTitle {
    font-size: 110%;
  }

  .SectionFreeDiagnosticServiceTitle span {
    padding-right: 20px;
  }

  .CardUseExample--horizon {
    display: block;
  }

  .CardUseExample--horizon .CardUseExampleImage {
    width: 100%;
    max-width: 100%;
  }

  .CardUseExampleImage {
    margin-bottom: 20px;
  }

  .JS .RemodalNetStableProductTitle {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
  }

  .RemodalNetStableProductContents {
    display: block;
  }

  .RemodalNetStableProductImage {
    width: 100%;
    margin-bottom: 30px;
  }

  .RemodalNetStableProductContent {
    width: 100%;
  }
}

