@charset "utf-8";
/*v1.0.0*/
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* link-list-group:　START*/
body ul.link-list-group {
  color: #29a688;
}
body ul.link-list-group li a {
  color: #29a688;
}
body ul.link-list-group li a:hover {
  color: #1c7762;
}
@media only screen and (min-width: 1920px) {
  body ul.link-list-group li a {
    font-size: 0.95em;
  }
}
/* link-list-group:　END*/
/* panel: START*/
.panel-group .panel {
  margin-bottom: 0.3em;
  border-radius: 4px;
}
.panel-default {
  border-color: #ddd;
}
.panel {
  margin-bottom: 20px;
  background-color: #fff;
  border-radius: 4px;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
div.panel-group div.panel a div.panel-heading {
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
  background-color: #0C5F80;
  padding-right: 2.2em;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 0;
  position: relative;
}
div.panel-group div.panel a div.panel-heading:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0.5em;
  width: 1em;
  border: 1px solid #ffffff;
}
div.panel-group div.panel a h3 {
  color: #ffffff;
  background-color: #1895D0;
  padding-top: 0.8em;
  padding-bottom: 0.8em;
  padding-left: 0.7em;
  padding-right: 0.4em;
}
div.panel-group div.panel a.collapsed div.panel-heading:before {
  content: '';
  position: absolute;
  top: calc(50% - 0.45em);
  right: 0.95em;
  height: 1em;
  border: 1px solid #ffffff;
}
div.panel-group div.panel div.panel-collapse div.panel-body {
  padding-top: 1.5em;
  padding-bottom: 1.5em;
}
div.panel-group div.panel div.panel-collapse div.panel-body figure {
  margin-bottom: 1em;
  text-align: center;
}
div.panel-group div.panel div.panel-collapse div.panel-body figure img.app-img-4 {
  max-width: 500px;
}
div.panel-group div.panel div.panel-collapse div.panel-body figure figcaption {
  border: 1px dashed grey;
  padding: 0.4em;
  text-align: center;
  margin-top: 0.5em;
}
@media only screen and (min-width: 768px) {
  body div.panel-group div.panel a h3 {
    font-size: 1.2em;
    text-align: center;
  }
  body div.panel-group div.panel div.panel-collapse div.panel-body {
    padding: 1.2em;
  }
}
/* panel: END*/
/* background: START*/
.bg-img-default {
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}
.bg-pos-center {
  background-position: center center;
}
.bg-top-sec {
  background-image: url(../_img/bg-top-sec-mob.jpg);
}
.bg-acc-sec {
  background-image: url(../_img/bg-acc-sec.jpg);
}
.bg-deep-blue {
  background-color: #0256A9;
}
.bg-light-blue {
  background-color: #D5F0FF;
}
.bg-light-grey {
  background-color: #F6F7F7;
}
.bg-deep-blue-55pct {
  background-color: rgba(23, 42, 135, 0.55);
}
.bg-green-45pct {
  background-color: rgba(0, 117, 51, 0.45);
}
.bg-light-blue-45pct {
  background-color: rgba(3, 111, 183, 0.45);
  border: 3px solid rgba(255, 255, 255, 0.6);
}
@media only screen and (min-width: 768px) {
  .bg-banner {
    background-image: url(../_img/banner-pc_v2.svg);
  }
  .bg-top-sec {
    background-image: url(../_img/bg-top-sec-pc.jpg);
  }
}
/* background: END*/
/* responsive table block: START*/
div.table-block {
  overflow-x: auto;
}
div.table-block table {
  background-color: #B8DEF0;
  width: 100%;
  min-width: 940px;
  overflow: scroll;
}
div.table-block table thead {
  font-weight: 600;
}
div.table-block table thead th {
  font-size: 0.9em;
  padding: 0.1em;
  text-align: center;
  border: 1px solid white;
}
div.table-block table tbody tr td {
  padding: 0.2em;
  text-align: center;
  vertical-align: middle;
  border: 1px solid white;
}
div.table-block table tbody tr td.td-heading-1 {
  background-color: #B8DEF0;
  text-align: left;
  font-size: 0.9em;
}
div.table-block table tbody tr td.td-heading-2 {
  text-align: left;
  font-size: 0.85em;
}
div.table-block table tbody tr:nth-child(odd) {
  background-color: #E7F3F9;
}
@media only screen and (min-width: 1200px) {
  div.table-block table thead tr th.th-first {
    width: 18em;
  }
  div.table-block table tbody tr td.td-heading-1 {
    font-size: 1em;
  }
}
@media only screen and (min-width: 1920px) {
  table {
    font-size: 16px !important;
  }
}
/* responsive table block: END*/
body {
  /*----------------Kenny CSS set THE BEGINNING-------------------------*/
  background-color: white;
  /*button1*/
  /*button2*/
  /*button-3*/
  /*----------------Kenny CSS set THE END-------------------------*/
}
body a,
body a:link,
body a:active,
body a:hover,
body a:visited {
  text-decoration: none;
  outline: none;
}
body button,
body button:link,
body button:active,
body button:hover,
body button:visited {
  text-decoration: none;
  outline: none;
}
body section h1 {
  font-size: 2em;
  line-height: 150%;
  letter-spacing: 0;
  color: #036EB7;
  font-weight: 400;
  margin-top: 12px;
  margin-bottom: 12px;
  text-align: center;
}
body section h2 {
  font-size: 1.6em;
  line-height: 150%;
  letter-spacing: 0;
  color: #036EB7;
  font-weight: 400;
  margin-top: 12px;
  margin-bottom: 12px;
  text-align: center;
}
body section h3 {
  font-size: 1em;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: 0;
  color: #036EB7;
  margin-top: 12px;
  margin-bottom: 12px;
}
body section p {
  color: #4E4E4E;
  line-height: 170%;
  font-size: 1em;
}
body section ul li {
  font-size: 1em;
}
body section img {
  image-rendering: -webkit-optimize-contrast;
  width: 100%;
}
body figure {
  margin-bottom: 0;
}
body .no-padding {
  padding-left: 0;
  padding-right: 0;
}
body .no-margin {
  margin-left: 0;
  margin-right: 0;
}
body .mb-0 {
  margin-bottom: 0!important;
}
body .vis-hidden {
  visibility: hidden;
}
body .annotation {
  margin-top: 0.4em;
  margin-left: 0.5em;
  line-height: 140%;
  font-size: 0.85em;
}
body .white {
  color: #ffffff;
}
body ul.unordered-list-group {
  list-style: disc;
  padding-left: 1.35em;
}
body ul.unordered-list-group li {
  line-height: 150%;
}
body ul.unordered-list-group.line-h-200pct li {
  line-height: 200%;
}
body ol.ordered-list-group-hrz {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  list-style: decimal;
  padding-left: 1.35em;
}
body ol.ordered-list-group-hrz li {
  float: left;
  margin-right: 2em;
  white-space: nowrap;
}
body .dashed-underline {
  border-bottom: 1px dashed #2b2b2b;
}
body a.abs-full-wide-link {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
body .line-height-pct130 {
  line-height: 130%;
}
body a button {
  background-color: #ffffff;
  -moz-transition: all 200ms;
  -o-transition: all 200ms;
  -webkit-transition: all 200ms;
  transition: all 200ms;
  outline: none !important;
}
body a button:hover {
  outline: none !important;
}
body a button:active {
  outline: none !important;
}
body a button:focus {
  outline: none !important;
}
body a button h2 {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
  position: relative;
  padding-right: 0.5em;
}
body a button h2 span.arrow-right {
  position: absolute;
  top: 0.3em;
  margin-left: 0.43em;
  width: 0px;
  height: 0px;
  border-top: 0.4em solid transparent;
  border-bottom: 0.4em solid transparent;
  border-left: 0.8em solid #1895D0;
}
body a:hover button {
  background-color: #1895D0;
}
body a:hover button h2 {
  color: #ffffff;
}
body a:hover button h2 span.arrow-right {
  border-left: 0.8em solid #ffffff;
}
body a.btn-2 button {
  background-color: #ffffff;
  -moz-transition: all 200ms;
  -o-transition: all 200ms;
  -webkit-transition: all 200ms;
  transition: all 200ms;
  outline: none !important;
  -webkit-appearance: none;
  appearance: none;
  border-style: none;
  border: 1px solid #1895D0;
  border-radius: 0.8em;
}
body a.btn-2 button:hover {
  outline: none !important;
}
body a.btn-2 button:active {
  outline: none !important;
}
body a.btn-2 button:focus {
  outline: none !important;
}
body a.btn-2 button p {
  margin-top: 0.2em;
  margin-bottom: 0.2em;
  position: relative;
  padding-right: 0.5em;
}
body a.btn-2:hover button {
  border: 1px solid #db992c;
}
body a button.btn-3 {
  min-width: 13em;
  position: relative;
  background-color: #ffffff;
  -moz-transition: all 200ms;
  -o-transition: all 200ms;
  -webkit-transition: all 200ms;
  transition: all 200ms;
  outline: none !important;
  -webkit-appearance: none;
  appearance: none;
  border-style: none;
  border: 1px solid #1895D0;
  border-radius: 30px;
  margin-top: 0.3em;
  margin-bottom: 0.3em;
}
body a button.btn-3 h3 {
  color: #1895D0;
  margin-top: 0.2em;
  margin-bottom: 0.2em;
  padding-left: 0.5em;
  padding-right: 0.5em;
}
body a:hover button.btn-3 {
  outline: none !important;
  border: 1px solid #ffffff;
  background-color: #1895D0;
}
body a:hover button.btn-3 h3 {
  color: #ffffff;
}
body a:active button.btn-3 {
  outline: none !important;
}
body a:focus button.btn-3 {
  outline: none !important;
}
body button.btn-3.btn-small {
  font-size: 14px;
}
body .max-w50 {
  max-width: 50px !important;
}
body .max-w100 {
  max-width: 100px !important;
}
body .max-w150 {
  max-width: 150px !important;
}
body .max-w170 {
  max-width: 170px !important;
}
body .max-w200 {
  max-width: 200px !important;
}
body .max-w250 {
  max-width: 250px !important;
}
body .max-w300 {
  max-width: 300px !important;
}
body .max-w350 {
  max-width: 350px !important;
}
body .max-w400 {
  max-width: 400px !important;
}
body .max-w450 {
  max-width: 450px !important;
}
body .max-w500 {
  max-width: 500px !important;
}
body .max-w550 {
  max-width: 550px !important;
}
body .max-w600 {
  max-width: 600px !important;
}
body .max-w700 {
  max-width: 700px !important;
}
body .max-w750 {
  max-width: 750px !important;
}
body .max-w800 {
  max-width: 800px !important;
}
body .max-w850 {
  max-width: 850px !important;
}
body .max-w900 {
  max-width: 900px !important;
}
body .max-w950 {
  max-width: 950px !important;
}
body .max-w1000 {
  max-width: 1000px !important;
}
body section.all-section {
  display: block;
  font-size: 16px;
}
body section.all-section div.container div.title-row div.title-box {
  display: block;
}
body section.all-section div.container > figure {
  display: block;
  width: 100%;
  text-align: center;
}
body section.all-section div.container > figure img {
  max-width: 600px;
}
body section.all-section div.container table {
  width: 100%;
}
body section.top-sec {
  border-bottom: 1em solid #1895D0;
}
body section.top-sec h1 {
  font-weight: 600;
}
body section.top-sec h2 {
  font-weight: 600;
}
body section.acc-sec a.white {
  transition: all 0.3s;
  position: relative;
  left: 0;
}
body section.acc-sec a.white:hover {
  color: #ffffff;
  position: relative;
  left: 5px;
}
body section.acc-sec div.acc-row div.acc-box {
  width: 100%;
  padding: 1em;
  margin: 0.4em;
  background-color: #036EB7;
  border: 1px solid #ffffff;
}
body section.acc-sec div.acc-row div.acc-box p {
  margin: 0;
}
body section.software-sec {
  background-color: #ffffff;
}
body section.ai-sec div.prod-row h3 {
  font-size: 0.7em;
  margin-bottom: 0;
}
body section.btn-sec {
  background-color: #1895D0;
}
body section.btn-sec div.container div.btn-row {
  flex-direction: column;
  align-items: center;
  padding-top: 2em;
  padding-bottom: 2em;
}
body section.btn-sec.all-section {
  font-size: 15px !important;
}
/* -----------------Pad--------------------------------------*/
@media only screen and (min-width: 768px) {
  body section h1 {
    font-size: 2.3em;
  }
  body section h2 {
    font-size: 1.95em;
  }
  body section h3 {
    font-size: 1.1em;
  }
  body section.top-sec div.banner-block {
    height: 334px;
  }
  body section.software-sec div.container figure img {
    max-width: 1000px!important;
  }
  body section.ai-sec div.prod-row h3 {
    font-size: 1.1em;
  }
  body section.btn-sec div.container div.btn-row {
    flex-direction: row;
    justify-content: center;
  }
  body section.btn-sec div.container div.btn-row button {
    margin-left: 1em;
    margin-right: 1em;
  }
  body section.btn-sec div.container div.btn-row button h3 {
    font-size: 1.3em;
  }
}
/*---------------Desktops and laptops-------------------------*/
@media only screen and (min-width: 992px) {
  body section h2 {
    font-weight: 300;
  }
  body section.top-sec h1 {
    font-weight: 600;
    font-size: 2.8em;
  }
  body section.top-sec h2 {
    font-weight: 600;
  }
  body section.top-sec div.banner-block {
    height: 450px;
  }
  body section.acc-sec div.acc-row div.acc-box {
    width: 18.4%;
  }
  body section.ai-sec div.prod-row h3 {
    font-size: 1.1em;
  }
  body section.btn-sec.all-section {
    font-size: 15px !important;
  }
}
/*---------------Desktops-1200--------------------------------*/
@media only screen and (min-width: 1200px) {
  body section.top-sec div.banner-block {
    height: 533px;
  }
  body section.top-sec h1 {
    font-size: 3em;
  }
  body section.top-sec h2 {
    font-size: 2em;
  }
  body section.acc-sec div.acc-row div.acc-box {
    width: 18.65%;
  }
}
/*---------------Desktops-1600--------------------------------*/
@media only screen and (min-width: 1500px) {
  body section.top-sec div.banner-block {
    height: 541px;
  }
  body section.top-sec h1 {
    font-size: 4em;
  }
  body section.top-sec h2 {
    font-size: 2.8em;
  }
}
/*---------------Desktops-1800--------------------------------*/
@media only screen and (min-width: 1800px) {
  body section.top-sec div.banner-block {
    background-position: center bottom;
  }
}
/*---------------Desktops-1920--------------------------------*/
@media only screen and (min-width: 1920px) {
  body section.all-section {
    font-size: 18px !important;
  }
  body section.top-sec div.banner-block {
    background-position: center bottom;
    max-width: 1920px;
    margin: 0 auto;
  }
  body section.top-sec h1 {
    font-size: 3.3em;
    margin-left: -0.3em;
  }
  body section.top-sec h2 {
    font-size: 2.3em;
    margin-left: -0.4em;
  }
  body section.top-sec article {
    margin-left: -0.8em;
    margin-right: -1.6em;
  }
  body section.acc-sec div.acc-row div.acc-box {
    width: 18.5%;
  }
}
