@charset "UTF-8";
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block;
}

audio,
canvas,
video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden],
template {
  display: none;
}

html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

a {
  background: transparent;
}

a:focus {
  outline: thin dotted;
}

a:active,
a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b,
strong,
.strong {
  font-weight: bold;
}

dfn,
em,
.em {
  font-style: italic;
}

hr {
  box-sizing: content-box;
  height: 0;
}

p {
  -webkit-hyphens: auto;
  -epub-hyphens: auto;
  hyphens: auto;
}

pre {
  margin: 0;
}

code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em;
}

pre {
  white-space: pre-wrap;
}

q {
  quotes: "“" "”" "‘" "’";
}

q:before,
q:after {
  content: "";
  content: none;
}

small, .small {
  font-size: 75%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

dl,
menu,
ol,
ul {
  margin: 0;
  padding: 0;
}

menu {
  padding: 0 0 0 40px;
}

ol,
ul {
  list-style-type: none;
}

nav ul,
nav ol {
  list-style: none;
  list-style-image: none;
}

img {
  border: 0;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 0;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

button,
input,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  margin: 0;
}

button,
input {
  line-height: normal;
}

button,
select {
  text-transform: none;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

input[type=checkbox],
input[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

input[type=search] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
  vertical-align: top;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

* {
  box-sizing: border-box;
}

.image-replacement,
.ir {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

.clearfix, .cf {
  zoom: 1;
}
.clearfix:before, .clearfix:after, .cf:before, .cf:after {
  content: "";
  display: table;
}
.clearfix:after, .cf:after {
  clear: both;
}

span.amp {
  font-style: italic;
}

* {
  box-sizing: border-box;
  margin: 0;
}

html, body {
  font-family: Avenir, "Helvetica neue", Helvetica, "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  line-height: 1.5;
  color: #333;
  font-size: 16px;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 16px;
  font-weight: normal;
}

a {
  text-decoration: none;
}

h1, h2, h3, h4, h5, p, dd {
  margin: 0;
}

td {
  text-align: left;
}

header {
  position: fixed;
  top: 0;
  background-color: rgba(255, 255, 255, 0.9);
  width: 100%;
  z-index: 99;
  border-bottom: 1px solid #ddd;
}

.flex {
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
}

.wrap {
  width: 94%;
  max-width: 500px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .wrap {
    max-width: 700px;
  }
}
@media screen and (min-width: 1000px) {
  .wrap {
    max-width: 1000px;
  }
}

.brpc {
  display: none;
}
@media screen and (min-width: 1000px) {
  .brpc {
    display: block;
  }
}

.header_wrap {
  height: 50px;
  width: 100%;
}

.logoTop {
  display: none;
}

.logoTopSp {
  margin: 0;
}
.logoTopSp a {
  display: block;
  width: 100px;
  height: 50px;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  background-image: url(../images/siteimg/logo.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  margin-left: 8px;
}

/* menu */
.scroll-prevent {
  position: fixed;
  z-index: -1;
  width: 100%;
  height: 100%;
}

/* header */
#sp-btn {
  display: block;
  position: absolute;
  top: 0;
  right: 8px;
  width: 50px;
  padding: 16px 10px 14px;
  cursor: pointer;
  z-index: 200;
}
#sp-btn span {
  display: block;
  width: 100%;
  border-radius: 2px;
  height: 3px;
  background: #000;
  transition: all 0.3s;
  position: relative;
}
#sp-btn span + span {
  margin-top: 7px;
}
#sp-btn.active span:nth-child(1) {
  animation: ease 0.7s top forwards;
  background: white;
}
#sp-btn.not-active span:nth-child(1) {
  animation: ease 0.7s top-2 forwards;
}
#sp-btn.active span:nth-child(2) {
  animation: ease 0.7s scaled forwards;
}
#sp-btn.not-active span:nth-child(2) {
  animation: ease 0.7s scaled-2 forwards;
}
#sp-btn.active span:nth-child(3) {
  animation: ease 0.7s bottom forwards;
  background: white;
}
#sp-btn.not-active span:nth-child(3) {
  animation: ease 0.7s bottom-2 forwards;
}
@keyframes top {
  0% {
    top: 0;
    transform: rotate(0);
  }
  50% {
    top: 10px;
    transform: rotate(0);
  }
  100% {
    top: 10px;
    transform: rotate(45deg);
  }
}
@keyframes top-2 {
  0% {
    top: 10px;
    transform: rotate(45deg);
  }
  50% {
    top: 10px;
    transform: rotate(0deg);
  }
  100% {
    top: 0;
    transform: rotate(0deg);
  }
}
@keyframes bottom {
  0% {
    bottom: 0;
    transform: rotate(0);
  }
  50% {
    bottom: 10px;
    transform: rotate(0);
  }
  100% {
    bottom: 10px;
    transform: rotate(135deg);
  }
}
@keyframes bottom-2 {
  0% {
    bottom: 10px;
    transform: rotate(135deg);
  }
  50% {
    bottom: 10px;
    transform: rotate(0);
  }
  100% {
    bottom: 0;
    transform: rotate(0);
  }
}
@keyframes scaled {
  50% {
    transform: scale(0);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes scaled-2 {
  0% {
    transform: scale(0);
  }
  50% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@media screen and (min-width: 1000px) {
  #sp-btn {
    display: none;
  }
}

.header-area {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  background: white;
}
@media screen and (min-width: 1000px) {
  .header-area .header-wrap {
    width: 1000px;
    margin-right: auto;
    margin-left: auto;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
@media screen and (min-width: 1000px) {
  .header-area {
    background: white;
  }
  .header-area .nav {
    padding: 1rem 0.5rem 0.5rem;
    align-items: center;
    justify-content: space-between;
  }
  .header-area .header-search {
    background-color: transparent;
    width: auto;
    padding: 0 0.75rem 0 0.5rem;
  }
  .header-area .cart a {
    background: #0071bc;
    color: white;
    padding: 0.25rem 0.75rem;
  }
  .header-area .search-area form {
    width: 200px;
  }
}

.header-wrap .logo {
  width: 120px;
  padding: 8px;
}
.header-wrap .logo a {
  display: block;
  height: 34px;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  background: url(../images/siteimg/logo.png) no-repeat left center;
  background-size: contain;
}
@media screen and (min-width: 1000px) {
  .header-wrap .logo {
    padding: 0;
    width: 130px;
  }
  .header-wrap .logo a {
    height: 60px;
  }
}

.nav-area {
  position: fixed;
  top: 0;
  height: 100%;
  width: 100%;
  background: rgba(51, 51, 51, 0.7);
  display: none;
  padding-top: 60px;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
  padding-bottom: 1rem;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}
@media screen and (min-width: 1000px) {
  .nav-area {
    position: static;
    display: block !important;
    height: auto;
    padding: 0;
    background-color: transparent;
    overflow: inherit;
  }
  .nav-area .header-cart a {
    background: #0071bc;
    color: white;
  }
  .nav-area .header-cart a:hover {
    color: white;
    opacity: 1;
    background-color: #0071bc;
  }
}

.gnav {
  color: white;
}
.gnav .home {
  display: none;
}
@media screen and (min-width: 1000px) {
  .gnav .home {
    display: block;
  }
}
.gnav a {
  text-decoration: none;
}
@media screen and (min-width: 1000px) {
  .gnav {
    color: inherit;
    justify-content: center;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
  }
}
.gnav > li {
  width: 50%;
}
@media screen and (min-width: 768px) {
  .gnav > li {
    width: 16.666%;
  }
}
@media screen and (min-width: 1000px) {
  .gnav > li {
    width: auto;
  }
  .gnav > li:hover > a {
    color: #005289;
    opacity: 1;
  }
  .gnav > li.login {
    margin-left: 0.5rem;
  }
  .gnav > li.login a {
    line-height: 30px;
    margin: 15px 0;
    background: #0071bc;
    color: white !important;
    border-radius: 15px;
    font-size: 0.8125rem;
  }
}
.gnav > li > a {
  display: block;
  font-size: 0.875rem;
  padding: 0.5rem 20px 0.5rem 0.5rem;
  line-height: 1.5;
  font-weight: bold;
  letter-spacing: 1px;
  color: #0071bc;
  background: white;
  border-bottom: 1px dashed rgba(0, 113, 188, 0.4);
  position: relative;
}
@media screen and (min-width: 1000px) {
  .gnav > li > a {
    font-weight: normal;
    line-height: 60px;
    color: #333;
  }
  .gnav > li > a:hover {
    opacity: 0.7;
  }
}
.gnav > li > a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 7px;
  width: 7px;
  height: 7px;
  border-right: 1px solid #333;
  border-top: 1px solid #333;
  transform: rotate(45deg) translate(-50%, 0);
}
@media screen and (min-width: 1000px) {
  .gnav > li > a::after {
    border: 0;
    width: 3px;
    height: 3px;
    top: 8px;
    right: auto;
    left: 50%;
    transform: translate(-50%, 0);
    background: transparent;
  }
}
@media screen and (min-width: 768px) {
  .gnav > li > a {
    border-bottom: 0;
  }
}
@media screen and (min-width: 1000px) {
  .gnav > li > a {
    padding: 0 1rem;
  }
  .gnav > li > a:hover::after {
    background: #0071bc;
  }
}
.gnav > li.has-child {
  width: 100%;
}
.gnav > li.has-child > a {
  border-bottom: 0;
}
.gnav > li.has-child .noicon a {
  padding: 0.7rem 20px 0.7rem 0.5rem;
}
@media screen and (min-width: 1000px) {
  .gnav > li.has-child {
    width: auto;
  }
}
.gnav .pull-down {
  padding-bottom: 1rem;
}
@media screen and (min-width: 1000px) {
  .gnav .pull-down {
    position: absolute;
    width: 100%;
    left: 0;
    top: 60px;
    padding: 0;
    background: rgba(51, 51, 51, 0.7);
    transition: all 0.2s ease-in;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
  }
  .gnav .pull-down .flex {
    justify-content: flex-start;
    width: 1000px;
    margin-left: auto;
    margin-right: auto;
  }
}
.gnav .pull-down li {
  width: 50%;
}
@media screen and (min-width: 768px) {
  .gnav .pull-down li {
    width: 25%;
  }
}
@media screen and (min-width: 768px) and (min-width: 1000px) {
  .gnav .pull-down li {
    width: 13.42%;
    margin-right: 1%;
    margin-bottom: 1%;
    border: 0;
  }
  .gnav .pull-down li:nth-child(7n) {
    margin-right: 0;
  }
}
.gnav .pull-down li a {
  border-right: 1px solid rgba(255, 255, 255, 0.5);
}
@media screen and (min-width: 1000px) {
  .gnav .pull-down li a {
    border: 0;
    justify-content: center;
    line-height: 1.3;
  }
}
.gnav .pull-down a {
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  display: block;
  font-size: 0.8125rem;
  padding: 0.25rem 0;
  background: #29abe2;
  color: white;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  height: 100%;
  align-items: center;
  flex-wrap: wrap;
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  .gnav .pull-down a {
    border-right: 1px solid #0071bc;
  }
}
@media screen and (min-width: 1000px) {
  .gnav .pull-down a {
    text-align: center;
    border-radius: 3px;
    background: #29abe2;
  }
  .gnav .pull-down a:hover {
    opacity: 0.8;
  }
}
.gnav .sys-icon {
  display: block;
  vertical-align: middle;
  width: 35px;
  height: 35px;
  background: url(../images/siteimg/sys_icon01.png) no-repeat center;
  background-size: contain;
  margin: 0 2px;
}
.gnav .sys-icon.riaco {
  background-image: url(../images/siteimg/sys_icon02.png);
}
.gnav .sys-icon.recor {
  background-image: url(../images/siteimg/sys_icon03.png);
}
.gnav .sys-icon.hasso {
  background-image: url(../images/siteimg/sys_icon04.png);
}
.gnav .sys-icon.arena {
  background-image: url(../images/siteimg/sys_icon05.png);
}
.gnav .sys-icon.gran {
  background-image: url(../images/siteimg/sys_icon06.png);
}
.gnav .sys-icon.gcon {
  background-image: url(../images/siteimg/sys_icon07.png);
}
.gnav .sys-icon.garri {
  background-image: url(../images/siteimg/sys_icon08.png);
}
.gnav .sys-icon.gcal {
  background-image: url(../images/siteimg/sys_icon09.png);
}
.gnav .sys-icon.free {
  background-image: url(../images/siteimg/sys_icon10.png);
}
.gnav .sys-icon.slider {
  background-image: url(../images/siteimg/sys_icon11.png);
}
.gnav .sys-icon.rev {
  background-image: url(../images/siteimg/sys_icon13.png);
}
.gnav .sys-icon.gnews {
  background-image: url(../images/siteimg/sys_icon14.png);
}
.gnav .sys-icon.cdt {
  background-image: url(../images/siteimg/sys_icon15.png);
}
@media screen and (min-width: 1000px) {
  .gnav .has-child:hover .pull-down {
    max-height: 9999px;
    opacity: 1;
    padding: 20px 0 10px;
  }
  .gnav .sys-icon {
    width: 100%;
    display: block;
    height: 60px;
  }
  .gnav .sys-icon.cdt {
    height: 50px;
  }
}

.heroS.pt1 {
  background-color: #EFF9FF;
  background-image: url(../images/siteimg/sys_ttlimg.png);
}

.heroS.pt1 .discTtl, .heroS.pt1 .discTtl2 {
  background: #0071bc;
}

.heroS.pt2 {
  background-color: #E1FAEA;
  background-image: url(../images/siteimg/sys_ttlimg.png);
}

.heroS.pt2 .discTtl, .heroS.pt2 .discTtl2 {
  background-color: #22B5A6;
}

.heroS.pt3 {
  background-color: #EFF9FF;
  background-image: url(../images/siteimg/sys_ttlimg.png);
}

.heroS.pt3 .discTtl, .heroS.pt3 .discTtl2 {
  background-color: #29abe2;
}

.heroS.pt4 {
  background-color: #FAF9E1;
  background-image: url(../images/siteimg/sys_ttlimg4.png);
}

.heroS.pt4 .discTtl, .heroS.pt4 .discTtl2 {
  background-color: #F7D439;
}

.heroS.pt5 {
  background-color: #E6E8F5;
  background-image: url(../images/siteimg/sys_ttlimg.png);
}

.heroS.pt5 .discTtl, .heroS.pt5 .discTtl2 {
  background-color: #A1ABE3;
}

.heroS {
  padding: 12px 0;
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  height: auto;
}
.heroS .heroBox {
  padding: 16px 0;
}
.heroS .discTtl, .heroS .discTtl2 {
  line-height: 3;
  margin-bottom: 0;
  color: #fff;
  text-shadow: 0 0 0 #0071bc;
}

.slider-wrap {
  width: 100%;
  padding-top: 50px;
  background: #02a4ca;
}
.slider-wrap .tabimg {
  display: none;
}
.slider-wrap img {
  width: 100%;
  vertical-align: middle;
}

.sysInd .heroS {
  margin: 0 auto -100px;
  padding: 0;
  height: 100px;
}

.mainContents {
  text-align: center;
  padding-top: 50px;
}
@media screen and (min-width: 1000px) {
  .mainContents {
    padding-top: 60px;
  }
}
.mainContents section {
  padding: 40px 0;
}
.mainContents.toppage {
  padding-top: 0;
}

.toppage img {
  max-width: 100%;
  width: auto;
  vertical-align: middle;
}
.toppage h2.ttl {
  font-weight: bold;
  font-size: 20px;
  line-height: 1.3;
  margin-bottom: 1em;
}
.toppage p {
  font-size: 14px;
}
.toppage section.top-lead {
  padding: 50px 0 20px;
}
@media screen and (min-width: 1000px) {
  .toppage section.top-lead {
    padding: 80px 0 30px;
  }
}
.toppage section.top-smp {
  padding-bottom: 0;
}
@media screen and (min-width: 768px) {
  .toppage section.top-smp {
    margin-top: 30px;
  }
}
@media screen and (min-width: 1000px) {
  .toppage section.top-smp {
    margin-top: 70px;
    padding-top: 50px;
  }
}
@media screen and (min-width: 1000px) {
  .toppage section.install-flow {
    padding: 80px 0;
  }
}
.toppage .top-lead p {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .toppage .top-lead {
    padding-bottom: 0;
  }
}
.toppage .works {
  background: #EFF9FF;
}
@media screen and (min-width: 768px) {
  .toppage p {
    font-size: 16px;
  }
  .toppage h2.ttl {
    font-size: 24px;
  }
}
@media screen and (min-width: 1000px) {
  .toppage p {
    font-size: 18px;
  }
  .toppage p.contactText {
    font-size: 16px;
  }
  .toppage h2.ttl {
    font-size: 32px;
  }
  .toppage .top-list-sys {
    padding-top: 80px;
  }
}

.solution {
  background: #ffffff;
  background: linear-gradient(to bottom, #ffffff 70%, #c5eaf3 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#ffffff", endColorstr="#c5eaf3",GradientType=0 );
}
.solution .text, .solution .img {
  width: 100%;
}
.solution .sol-q {
  font-weight: bold;
  margin-bottom: 3em;
  position: relative;
}
.solution .sol-q::after {
  content: "";
  border: 12px solid transparent;
  border-top-color: #0071bc;
  position: absolute;
  bottom: -40px;
  left: 50%;
  transform: translate(-50%, 0);
}
.solution .sol-q span {
  display: inline-block;
  background: #29abe2;
  color: white;
  padding: 0 1em;
  border-radius: 10px;
  margin-bottom: 0.5em;
}
.solution .sol-answer {
  font-weight: bold;
  color: #0071bc;
}
.solution .img {
  margin: 40px 0 0;
  padding: 0 3%;
  position: relative;
}
.solution .btn {
  position: absolute;
  left: 0;
  top: -30px;
  z-index: 5;
  line-height: 1.2;
  font-size: 12px;
  font-weight: bold;
  width: 80px;
  height: 80px;
  background: #0071bc;
  color: white;
  display: grid;
  place-items: center;
  border-radius: 50%;
}
.solution .btn .num {
  font-size: 16px;
}
.solution .btn .name {
  font-size: 14px;
}
@media screen and (min-width: 1000px) {
  .solution .btn {
    width: 120px;
    height: 120px;
    font-size: 16px;
  }
  .solution .btn .num {
    font-size: 24px;
  }
  .solution .btn .name {
    font-size: 20px;
  }
}
.solution.sol2 {
  background: #ffffff;
  background: linear-gradient(to bottom, #ffffff 70%, #fcf9dc 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#ffffff", endColorstr="#fcf9dc",GradientType=0 );
}
.solution.sol2 .sol-q::after {
  border-top-color: #f9ee33;
}
.solution.sol2 .sol-q span {
  background: #f9ee33;
  color: #333;
}
.solution.sol2 .btn {
  background: #fad31a;
  color: #333;
}
@media screen and (min-width: 768px) {
  .solution .text {
    width: 45%;
    padding-top: 100px;
  }
  .solution .img {
    width: 55%;
  }
  .solution .sol-q {
    font-size: 18px;
  }
  .solution .sol-q span {
    font-size: 14px;
  }
  .solution .sol-answer {
    font-size: 20px;
  }
  .solution.sol1 .text {
    order: 2;
  }
  .solution.sol1 .img {
    order: 1;
  }
}
@media screen and (min-width: 1000px) {
  .solution .sol-q {
    font-size: 24px;
  }
  .solution .sol-q::after {
    bottom: -70px;
    border-width: 22px;
  }
  .solution .sol-q span {
    font-size: 18px;
    border-radius: 18px;
  }
  .solution .sol-answer {
    font-size: 26px;
  }
}

.top-list-sys h2.ttl {
  margin-bottom: 0;
}
.top-list-sys .sys3 {
  justify-content: center;
}
.top-list-sys .sys3 > div {
  width: 50%;
  padding: 0 3%;
}
.top-list-sys .sys3 h3 {
  font-weight: bold;
}
.top-list-sys p {
  font-size: 12px;
}
.top-list-sys .btn {
  padding-top: 1em;
}
.top-list-sys .btn a {
  display: inline-block;
  background: #29abe2;
  color: white !important;
  padding: 0.5em 1em;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .top-list-sys .sys3 > div {
    width: 33.333%;
  }
}
@media screen and (min-width: 1000px) {
  .top-list-sys .sys3 {
    max-width: 800px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 20px;
  }
  .top-list-sys h3 {
    font-size: 20px;
  }
  .top-list-sys p {
    font-size: 16px;
  }
  .top-list-sys .btn a {
    font-size: 20px;
  }
}

.sys-other {
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
}
.sys-other > div {
  width: 33.333%;
  padding: 0 2%;
  margin-bottom: 10px;
}
.sys-other figure {
  padding: 0 5%;
}
.sys-other p {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .sys-other {
    justify-content: center;
  }
  .sys-other > div {
    width: 20%;
  }
}

.top-smp {
  background: #EFF9FF;
}
.top-smp .bg-smp {
  padding: 10px 3% 0;
  max-width: 300px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .top-smp .wrap {
    position: relative;
  }
  .top-smp h2, .top-smp p {
    padding-right: 50%;
  }
  .top-smp p {
    padding-bottom: 40px;
  }
  .top-smp .bg-smp {
    position: absolute;
    right: 0;
    bottom: 0;
    padding: 0;
  }
}
@media screen and (min-width: 1000px) {
  .top-smp .bg-smp {
    right: 3%;
    max-width: 400px;
  }
  .top-smp p {
    padding-bottom: 50px;
  }
}

.install-flow .list-flow {
  justify-content: center;
}
.install-flow .list-flow li {
  width: 50%;
  margin-bottom: 10px;
  padding: 0 5%;
  max-width: 250px;
}
.install-flow .list-flow figure {
  padding: 0 5%;
  margin-bottom: 10px;
}
.install-flow .list-flow p {
  font-size: 12px;
}
.install-flow .list-flow p.ttl {
  font-size: 16px;
  font-weight: bold;
  color: #0071bc;
}
@media screen and (min-width: 768px) {
  .install-flow .list-flow {
    max-width: 800px;
    margin-right: auto;
    margin-left: auto;
  }
  .install-flow .list-flow li {
    width: 25%;
    padding: 0 2%;
  }
}
@media screen and (min-width: 1000px) {
  .install-flow .list-flow {
    max-width: 1000px;
  }
  .install-flow .list-flow p {
    font-size: 14px;
  }
}

.works-head {
  margin-bottom: 20px;
}
.works-head h2.ttl {
  margin-bottom: 0.5em;
}
.works-head > div {
  width: 100%;
  text-align: center;
}
.works-head .btn {
  padding-top: 0.5em;
}
.works-head .btn a {
  display: inline-block;
  padding: 0.5em 1em;
  font-size: 12px;
  font-weight: bold;
  color: white;
  background: #29abe2;
}
@media screen and (min-width: 768px) {
  .works-head {
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 40px;
  }
  .works-head > div {
    width: auto;
    text-align: left;
  }
  .works-head > div.btn {
    text-align: right;
  }
  .works-head .btn a {
    font-size: 14px;
  }
}
@media screen and (min-width: 1000px) {
  .works-head .btn a {
    font-size: 16px;
  }
}

.cont2, .cont4 {
  background: #EFF9FF;
}

.mainContents section.cont2 {
  padding-bottom: 252px;
  position: relative;
}
.mainContents section.cont2 p {
  font-size: 14px;
  margin-bottom: 2em;
}
.mainContents section.cont2 p.smartImg {
  position: absolute;
  height: 252px;
  width: 100%;
  text-align: center;
  z-index: 2;
}
.mainContents section.cont2 p.smartImgB {
  position: absolute;
  height: 252px;
  width: 100%;
  text-align: center;
  z-index: 1;
}

.spWarn {
  font-size: 12px;
}

.discTtl, .discTtl2 {
  font-size: 20px;
  line-height: 1.2;
  margin-bottom: 24px;
  font-weight: bold;
  text-shadow: 0 0 2px #fff;
}
.discTtl img, .discTtl2 img {
  height: 100px;
}

.pointBox {
  overflow: hidden;
  padding: 8px;
  max-width: 800px;
  margin: 0 auto;
}
.pointBox li {
  width: 49%;
  float: left;
  margin-bottom: 16px;
  margin-right: 2%;
}
.pointBox li:nth-child(even) {
  margin-right: 0;
}
.pointBox li:last-child {
  width: 100%;
  text-align: center;
}
.pointBox li img {
  width: 100%;
  max-width: 150px;
  height: auto;
}
.pointBox h4 {
  font-size: 16px;
  color: #0071bc;
  font-weight: bold;
}
.pointBox p {
  font-size: 13px;
}

.systemLine {
  overflow: hidden;
  padding: 0 16px;
  max-width: 800px;
  margin: 0 auto;
}
.systemLine li {
  float: left;
  width: 33.333%;
  margin: 0 0 4px;
}
.systemLine li img {
  width: 100%;
  max-width: 80px;
  vertical-align: middle;
}
.systemLine p {
  font-size: 12px;
  letter-spacing: -0.1em;
  font-weight: bold;
}
.aspLine {
  overflow: hidden;
  padding: 0 16px;
}
.aspLine li {
  float: left;
  width: 50%;
  height: 80px;
  text-align: center;
  padding: 10px 2%;
}
.aspLine li img {
  vertical-align: bottom;
  height: 100%;
}

.aspLine-text {
  font-size: 13px;
}

.user li {
  margin-bottom: 16px;
  padding: 3px 0;
}
.user li img {
  margin-bottom: 2px;
  border: 8px solid #fff;
  width: 200px;
  box-shadow: 0 0 3px #999;
}
.user li .userImg {
  position: relative;
  display: inline;
}
.user li .userImg span {
  position: absolute;
}
.user .userSite {
  overflow: hidden;
  width: 216px;
  margin: 0 auto;
}
.user .userSite img {
  border: 0;
  box-shadow: none;
}
.user .userSite li {
  width: 50%;
  float: left;
  line-height: 1;
}
.user .userSite li p {
  margin: 0;
  text-align: center;
}
.user .userSite li a {
  display: block;
  font-size: 13px;
  color: white;
  line-height: 2.5;
  padding: 0;
}
.user .userSite li img {
  width: 50%;
  float: left;
  height: auto;
}
.user .userSite .pc a {
  background: #29abe2;
  border-bottom: 2px solid #0071bc;
  transition-duration: 0;
}
.user .userSite .pc a:hover {
  opacity: 1;
}
.user .userSite .sp a {
  background: #e75181;
  border-bottom: 2px solid #d2365c;
  transition-duration: 0;
}
.user .userSite .sp a:hover {
  border-bottom: 0;
  border-top: 2px solid #e75181;
}
.user .userSite .sp_pc {
  display: none;
}
.user .userName {
  font-size: 13px;
  margin-bottom: 4px;
}

.sysSmplBox .sysSmplsp.gnewsSp > div {
  height: 120px;
}

.contactText {
  font-size: 13px;
  text-align: center;
}
.contactText .warning {
  font-size: 12px;
  color: #c00;
}

section.cont7 {
  padding-bottom: 0;
  background-position: center;
  background-size: contain;
}
section.cont7 .wrap {
  width: 100%;
  margin: 0 auto;
}

.contactBox {
  padding: 16px 16px 48px;
  border-radius: 8px;
  margin: 0 16px;
}
.contactBox input, .contactBox textarea, .contactBox select {
  border: 1px solid #ccc;
  border-radius: 4px;
  line-height: 1.5;
  padding: 4px 8px;
  font-size: 14px;
  width: 100%;
  color: #333;
}
.contactBox input[type=submit] {
  color: #fff;
  background-color: #0071bc;
  font-size: 20px;
  width: 6em;
  border: 0;
  margin: 0 auto 4px;
}
.contactBox dt {
  background: #29abe2;
  color: #fff;
  text-align: center;
  line-height: 2;
  margin-bottom: 4px;
  border-radius: 4px;
}
.contactBox dd {
  margin-bottom: 1em;
}
.contactBox .submitBtn {
  clear: both;
}

#err_msg ul {
  background-color: rgba(255, 255, 255, 0.7);
  margin: 0 16px 16px;
  border-radius: 8px;
  padding: 8px;
}
#err_msg ul li {
  font-size: 12px;
  color: #c00;
}

.submitBtn .warning {
  font-size: 12px;
  text-align: center;
}

.planPage section.cont1, .systemPage section.cont1 {
  padding-bottom: 0;
}
.planPage section.cont2, .systemPage section.cont2 {
  padding-bottom: 16px;
}

.systemPage p.system_hosoku {
  font-size: 0.75em;
  padding: 1em;
}
.systemPage p.system_hosoku a {
  color: #0071bc !important;
}
@media screen and (min-width: 1000px) {
  .systemPage p.system_hosoku {
    font-size: 0.875em;
  }
}

.systemHyouki dl {
  width: 90%;
  max-width: 350px;
  margin: 0 auto;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  align-items: center;
}
.systemHyouki dt, .systemHyouki dd {
  margin-bottom: 4px;
  text-align: left;
  font-size: 14px;
  line-height: 25px;
}
.systemHyouki dt {
  margin-right: 4px;
  height: 25px;
  width: 25px;
  background: url(../images/siteimg/mall_icon_v2.png) no-repeat;
  background-size: 75px;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 100%;
}
.systemHyouki .mall_icon_r {
  background-position: 0 0;
}
.systemHyouki .mall_icon_y {
  background-position: -25px 0;
}
.systemHyouki .mall_icon_w {
  background-position: -50px 0;
}

.planPage .plan-info {
  padding: 0 3% 1rem;
}
.planPage .plan-info p {
  margin-bottom: 1em;
}
.planPage .plan-info p.small {
  font-weight: normal;
}
.planPage .plan-info p span {
  display: inline-block;
  padding: 0 0.5em;
  margin: 0 0.5em;
  color: white;
}
.planPage .plan-info p span.pc {
  background: #29abe2;
}
.planPage .plan-info p span.sp {
  background: #e75181;
}
@media screen and (min-width: 1000px) {
  .planPage .plan-info {
    font-size: 18px;
    padding: 1rem 0 4rem;
    font-weight: bold;
  }
}

.systemAll {
  text-align: left;
  overflow: hidden;
  padding: 16px;
  max-width: 350px;
  margin: 0 auto;
}
.systemAll li {
  overflow: hidden;
  margin-bottom: 2em;
}
.systemAll li .sysTtlImg {
  overflow: hidden;
  float: left;
  width: 28%;
  margin-right: 2%;
}
.systemAll li .sysTtlImg img {
  width: 100%;
}
.systemAll li h4 {
  float: left;
  width: 65%;
  margin: 0 2.5% 4px;
  font-weight: bold;
  font-size: 20px;
  line-height: 2;
  border-bottom: 1px solid #ddd;
}
.systemAll li h4.line2 {
  font-size: 16px;
}
.systemAll li .sysTtlSub {
  float: left;
  width: 65%;
  margin: 0 2.5%;
  font-size: 13px;
}
.systemAll li .sysImg {
  clear: both;
  text-align: center;
}
.systemAll li .sysImg img {
  width: 99%;
  border: 1px solid #ddd;
}
.systemAll li .sysDsc {
  font-size: 12px;
  margin: 0 8px;
  overflow: hidden;
}
.systemAll li .sysDsc a {
  display: block;
  float: right;
  text-align: center;
  color: #0071bc;
  font-size: 12px;
  padding: 4px 1em;
  border: 1px solid #0071bc;
  border-radius: 2px;
}

.service_mall_list th {
  text-align: left;
}
.plan-set h3 {
  background: #0071bc;
  margin-bottom: 1em;
  text-align: center;
  color: white;
  font-size: 24px;
  font-weight: bold;
  padding: 0.75em 0;
}
.plan-set > div {
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  padding: 0 3%;
}
.plan-set > div > div {
  width: 100%;
  margin-bottom: 1rem;
  padding: 0 0 1rem;
}
.plan-set > div .set3 {
  background: #EFF9FF;
}
.plan-set > div .set3 h4 {
  background: #0090ef;
}
.plan-set > div .set-all {
  background: #f9f6d4;
}
.plan-set > div .set-all h4 {
  background: #c1b243;
}
.plan-set > div h4 {
  color: white;
  font-size: 17px;
  font-weight: bold;
  padding: 0.5em 0;
  margin-bottom: 1em;
}
.plan-set > div p {
  padding: 0 1em;
}
.plan-set > div p .em {
  font-weight: bold;
  font-style: normal;
}
.plan-set .set-price {
  margin: 1em 1em 0;
  padding: 0.5em 0 1em;
  background: white;
}
.plan-set .set-price p {
  font-size: 20px;
}
.plan-set .set-price p .monthly {
  font-size: 32px;
  font-weight: bold;
}
.plan-set .set-price p .monthly span {
  font-size: 20px;
}
@media screen and (min-width: 768px) {
  .plan-set > div {
    justify-content: space-between;
    max-width: 1000px;
    padding: 0 3%;
    margin-right: auto;
    margin-left: auto;
  }
  .plan-set > div > div {
    width: 49%;
  }
}
@media screen and (min-width: 1000px) {
  .plan-set h3 {
    font-size: 32px;
  }
  .plan-set > div h4 {
    font-size: 24px;
  }
  .plan-set > div p {
    font-size: 18px;
  }
  .plan-set .set-price p {
    font-size: 24px;
  }
  .plan-set .set-price p .monthly {
    font-size: 40px;
  }
}

.planSet_line {
  width: 90%;
  max-width: 320px;
  margin-right: auto;
  margin-left: auto;
  padding: 1em 0;
}
.planSet_line dl {
  border-left: 2px solid #0071bc;
  background: #EFF9FF;
  padding: 1em 0;
  margin-bottom: 20px;
  position: relative;
}
.planSet_line dl:nth-child(2) {
  background: #f5f2fb;
  border-left-color: #9268d2;
}
.planSet_line dl:nth-child(2) dt {
  color: #9268d2;
}
.planSet_line dl:last-child {
  margin: 0;
  background: #f3f0e3;
  border-left-color: #a79749;
}
.planSet_line dl:last-child dt {
  color: #a79749;
}
.planSet_line dt {
  color: #0071bc;
  font-size: 20px;
  margin: 0 0.5em;
  border-bottom: 1px dashed #999;
  font-weight: bold;
  margin-bottom: 0.5em;
}
.planSet_line dd span {
  display: block;
  font-weight: bold;
}
.planSet_line dd span span {
  display: inline;
  font-size: 20px;
}
.planSet_line dd img {
  width: 80px;
  position: absolute;
  right: -10px;
  top: -20px;
}

span.mall_r, span.mall_y, span.mall_w {
  display: inline-block;
  width: 25px;
  height: 25px;
  margin: 4px 4px 0 0;
  background: url(../images/siteimg/mall_icon_v2.png) no-repeat;
  background-size: 75px;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 100%;
}

span.mall_r {
  background-position: 0 0;
}

span.mall_y {
  background-position: -25px 0;
}

span.mall_w {
  background-position: -50px 0;
}

.mall_icon_box {
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  margin: 0 auto 1em;
}

.mainContents.systemPage section.cont2 {
  padding-bottom: 40px;
  background: #fff;
}
.mainContents.systemPage section.cont3 {
  background: #EFF9FF;
  width: 100%;
}

.mainContents.systemPage.slide section.cont3 {
  background: white;
}

.sysDscBox {
  padding: 0 16px;
}
.sysDscBox h4 {
  text-align: left;
  text-indent: 0.5em;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 8px;
  background: #29abe2;
  border-radius: 2px;
  color: #fff;
}
.sysDscBox .sysAppeal {
  text-align: center;
  font-size: 15px;
  margin-bottom: 2em;
}
.sysDscBox .sysDscText {
  text-align: left;
  font-size: 13px;
  margin-bottom: 1em;
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 16px;
}
.sysDscBox .sysDscText span {
  color: #0071bc;
  font-size: 13px;
}
.sysDscBox .sys_usage {
  text-align: left;
  margin-bottom: 1em;
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 16px;
}
.sysDscBox .sys_usage dl {
  margin-bottom: 1em;
}
.sysDscBox .sys_usage dt {
  font-size: 14px;
  background: #f9f9f9;
  color: #0071bc;
  padding: 4px 6px;
  border-left: 3px solid #29abe2;
  line-height: 1.2;
  margin-bottom: 4px;
}
.sysDscBox .sys_usage dt span {
  font-size: 12px;
  background: #cc0000;
  color: white;
  padding: 1px 4px;
}
.sysDscBox .sys_usage dd {
  font-size: 13px;
}
.sysDscBox .sysSmplsp {
  display: block;
}
.sysDscBox .sysSmplsp img {
  width: 100%;
}
.sysDscBox .sysSmplsp.hasSp {
  float: none;
}
.sysDscBox .sysSmplsp.hasSp img {
  width: 48%;
}
.sysDscBox .sysSmplpc {
  float: right;
  width: 500px;
  display: none;
}

.cont3 .sysDscBox {
  background: #fff;
  padding: 8px;
  margin: 0 8px;
}

.sysCd {
  width: 288px;
  height: 150px;
  overflow: hidden;
  margin: 0 auto;
}
.sysCd iframe {
  width: 320px;
  height: 170px;
  zoom: 96%;
  -webkit-transform: scale(0.96);
  -webkit-transform-origin: 0 0;
  -moz-transform: scale(0.96);
  -moz-transform-origin: 0 0;
}

@media screen and (min-width: 375px) {
  .sysCd {
    width: 300px;
  }
  .sysCd iframe {
    width: 300px;
    height: 150px;
    zoom: 100%;
    -webkit-transform: scale(1);
    -webkit-transform-origin: 0 0;
    -moz-transform: scale(1);
    -moz-transform-origin: 0 0;
  }
}
.sysFunc th {
  width: 6em;
  padding: 0 0.5em;
  vertical-align: middle;
  font-size: 12px;
  font-weight: bold;
  background: #29abe2;
  color: #fff;
  text-align: center;
  border-bottom: 1px dotted rgba(0, 113, 188, 0.9);
}
.sysFunc tr:last-child th {
  border-bottom: 1px solid #29abe2;
}
.sysFunc td {
  font-size: 12px;
  padding: 0.5em;
  border-top: 1px dotted #ddd;
  border-right: 1px dotted #ddd;
  border-bottom: 1px dotted #ddd;
}
.sysFunc td span {
  color: #cc0000;
  font-size: 12px;
}

.slide_smpl {
  background: #EFF9FF;
}

.slidebnr_smpl {
  padding-top: 1em;
}
.slidebnr_smpl iframe {
  width: 100%;
  max-width: 320px;
  margin-bottom: 1em;
}
.slidebnr_smpl #ifm_1 {
  height: 230px;
}
.slidebnr_smpl #ifm_2 {
  display: none;
}

.mainContents.systemPage section.cont6 {
  background-color: #fff;
}

.planHyouki {
  width: 90%;
  max-width: 320px;
  margin: 0 auto 0;
  overflow: hidden;
}
.planHyouki dl {
  float: left;
  width: auto;
}
.planHyouki dt {
  float: left;
  width: 40px;
  margin-right: 4px;
  text-align: center;
  background: #29abe2;
  border-radius: 2px;
  color: #fff;
  font-size: 14px;
}
.planHyouki dt.planHyoukiSP {
  background: #e75181;
}
.planHyouki dd {
  font-size: 14px;
  margin: 0;
  text-align: left;
  float: right;
  width: 8em;
}
.planHyouki p {
  clear: both;
  font-size: 14px;
  padding-top: 1em;
}

.plan-price {
  border-left: 6px solid #ddd;
  padding-left: 8px;
}
.plan-price p.year {
  font-weight: bold;
  color: #0071bc;
  font-size: 18px;
}
.plan-price p.year span {
  color: #333;
}

.planDsc {
  border-left: 6px solid #ddd;
  padding-left: 8px;
}
.planDsc p {
  font-weight: bold;
  color: #0071bc;
  font-size: 18px;
}
.planDsc dl {
  overflow: hidden;
}
.planDsc dt {
  float: left;
  width: 40px;
  margin-right: 8px;
  text-align: center;
  background: #29abe2;
  border-radius: 2px;
  color: #fff;
  font-size: 14px;
}
.planDsc dt.planSP {
  background: #e75181;
}
.planDsc dd {
  float: left;
  font-size: 14px;
}
.planDsc dd span {
  font-weight: bold;
  font-size: 16px;
}

.service_mall_list {
  background: #EFF9FF;
}
.service_mall_list h4 {
  font-size: 20px;
  margin-bottom: 1em;
  font-weight: normal;
}
.service_mall_list table {
  width: 90%;
  max-width: 350px;
  margin: 0 auto;
  background-color: white;
}
.service_mall_list th, .service_mall_list td {
  padding: 4px 2px;
  border-bottom: 1px solid #ddd;
}
.service_mall_list th {
  font-weight: 700;
  font-size: 13px;
  padding-left: 16px;
}
.service_mall_list td {
  font-size: 24px;
  text-align: center;
  color: #0071bc;
}
.service_mall_list td span {
  color: #333;
}
.service_mall_list tr:first-child th {
  text-align: center;
  padding-left: 0;
}

.credit h3 {
  margin-bottom: 2em;
}
.credit ul {
  max-width: 700px;
  margin-right: auto;
  margin-left: auto;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.credit li {
  margin-bottom: 1em;
}
.credit img {
  max-width: 100%;
  margin: 0 20px 10px;
  height: 50px;
}
.credit span {
  display: block;
  color: #666;
  letter-spacing: 1px;
  font-size: 0.8125em;
}

.faqBox {
  width: 95%;
  max-width: 800px;
  margin: 0 auto;
  padding: 16px;
  background: #EFF9FF;
  border-radius: 8px;
}
.faqBox li {
  overflow: hidden;
  margin-bottom: 1em;
}

.faq_ttl, .answer_text {
  text-align: left;
}

.faq_ttl {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 8px;
}
.faq_ttl span {
  float: left;
  margin-right: 4px;
  display: block;
  width: 1.3em;
  height: 1.3em;
  background: #29abe2;
  color: #fff;
  border-radius: 24px;
  line-height: 1.5;
  text-align: center;
}

.answer_text {
  border-left: 4px solid #ddd;
  background: #fff;
  padding: 8px;
  font-size: 13px;
}

.contactPage {
  padding-top: 50px;
}

.siteMap {
  margin: 0 auto;
}
.siteMap .cont1 {
  max-width: 600px;
  margin: 0 8px;
  overflow: hidden;
}

ul.separate2 {
  width: 50%;
  padding: 0.5em 1em;
  background: #EFF9FF;
  float: left;
}
ul.separate2 li {
  text-align: left;
  letter-spacing: -0.1em;
  border-bottom: 1px dotted #ddd;
}
ul.separate2 li:last-child {
  margin-bottom: 2em;
}
ul.separate2 li a {
  display: block;
  font-size: 13px;
  line-height: 3;
  font-weight: bold;
  color: #333;
}
ul.separate2 li ul {
  margin: 0 0 8px;
}
ul.separate2 li ul li {
  border-bottom: 0;
  margin-bottom: 8px;
}
ul.separate2 li ul li a {
  border-left: 4px solid #ddd;
  font-weight: normal;
  font-size: 12px;
  text-indent: 0.5em;
  line-height: 2;
}
ul.separate2 li ul li:last-child {
  margin-bottom: 0;
}

.siteMap .cont1 ul:first-child > li:nth-child(2) {
  border-bottom: 0;
}

.companyInfo {
  width: 95%;
  max-width: 600px;
  margin: 0 auto;
  text-align: left;
  overflow: hidden;
  background: #EFF9FF;
  padding: 0.5em;
}
.companyInfo dt, .companyInfo dd {
  display: block;
  margin-bottom: 4px;
  padding: 4px 0;
}
.companyInfo dt {
  clear: both;
  float: left;
  width: 25%;
  margin-right: 1%;
  font-size: 13px;
  font-weight: bold;
  background: #29abe2;
  color: #fff;
  text-align: center;
  border-radius: 2px;
}
.companyInfo dd {
  background: #fff;
  width: 71%;
  padding: 4px 0.5%;
  float: right;
  font-size: 12px;
  border-radius: 2px;
}

.privacy .privacyBox {
  width: auto;
  padding: 1em 0.5em;
  background: #EFF9FF;
  text-align: left;
  margin: 0 16px;
}
.privacy .privacyBox dl {
  margin-bottom: 1em;
}
.privacy .privacyBox dt {
  font-size: 14px;
  font-weight: bold;
  color: #0071bc;
  border-left: 4px solid #ddd;
  text-indent: 0.5em;
  margin-bottom: 8px;
}
.privacy .privacyBox dd {
  background: #fff;
  border-radius: 2px;
  padding: 8px;
  font-size: 12px;
}
.privacy .privacyBox dd .caution {
  font-size: 12px;
  margin: 1em 0;
}
.privacy .privacyBox dd a {
  font-size: 12px;
}

/* voice page */
.Anchor_link {
  width: 100%;
  background: #EFF9FF;
  margin: 0;
  padding: 8px !important;
}
.Anchor_link ul {
  width: 100%;
  margin: 0 auto;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
}
.Anchor_link li {
  width: 49%;
  margin: 0 0.5% 4px;
}
.Anchor_link li a {
  display: block;
  background: white;
  color: #1b70bc;
  padding: 5px 10px;
  margin: 0;
  font-size: 14px;
  border: 2px solid;
}

.anchor_p {
  display: block;
  padding-top: 80px !important;
  margin-top: -80px !important;
}

.shop_cate {
  margin-bottom: 10px;
  border: 2px solid #bca300;
  font-size: 13px !important;
  padding: 2px;
  display: inline-block;
  min-width: 216px;
  margin-right: auto;
  margin-left: auto;
  background: white;
  font-weight: bold;
}

.userTab {
  margin: 0 8px;
  background: #29abe2;
  border-radius: 4px 4px 0 0;
  position: relative;
  text-align: center;
}
.userTab > span {
  display: inline-block;
  background: #fdf503;
  font-weight: bold;
  color: #333;
  font-size: 12px;
  padding: 2px 8px;
  margin-bottom: 8px;
  position: relative;
  top: -4px;
  letter-spacing: 1px;
}

.VoiceUserName {
  padding: 0.5em;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
}
.VoiceUserName span {
  display: block;
  color: inherit;
}

.voiceBox {
  background: #EFF9FF;
  margin: 0 8px 1em;
  border-radius: 4px;
  padding: 16px;
}
.voiceBox .user > li {
  margin-bottom: 0;
}

.voiceTtl {
  text-align: left;
  font-weight: bold;
  font-size: 14px;
  color: #29abe2;
  margin-bottom: 4px;
}

.voiceTxt {
  font-size: 12px;
  background: #fff;
  padding: 8px;
  border-radius: 4px;
  text-align: left;
}
.voiceTxt span {
  color: #0071bc;
  border-bottom: 1px dashed #0071bc;
  font-size: 12px;
}
.voiceTxt span.voice-q {
  font-weight: bold;
  color: #4d4d4d;
  margin-bottom: 0.5em;
  display: block;
  padding-bottom: 0.5em;
}
.voiceTxt span.voice-q:before {
  content: "Q.";
  display: inline-block;
  margin-right: 4px;
  color: #0071bc;
  font-size: 14px;
}

/* case */
.case-area .case {
  padding-top: 20px;
  padding-bottom: 1em;
}
.case-area .case:nth-child(even) {
  background: #EFF9FF;
}
.case-area .slick-slide {
  position: relative;
}
.case-area .slick-slide:after {
  content: "BEFORE";
  display: block;
  position: absolute;
  width: 60px;
  height: 60px;
  line-height: 60px;
  font-size: 12px;
  color: white;
  background: #29abe2;
  text-align: center;
  border-radius: 30px;
  top: 10px;
  left: 10px;
}
.case-area .slick-slide.case-after:after {
  content: "AFTER";
}
.case-area .slick-slide img {
  width: 100%;
  max-width: 100%;
  height: auto;
}

.case-meta, .case-slide {
  width: 95%;
  max-width: 375px;
  margin-right: auto;
  margin-left: auto;
}

.case-meta {
  border-top: 1px dotted #ddd;
  border-bottom: 1px dotted #ddd;
  background: white;
  padding: 0.5em 0 1em;
  text-align: center;
  line-height: 2;
  margin-bottom: 20px;
}
.case-meta h4 {
  font-weight: bold;
  color: #0071bc;
}
.case-meta h4 span {
  font-size: 125%;
  color: #0071bc;
  margin-left: 0.5em;
}
.case-meta p.name {
  font-size: 13px;
}
.case-meta p.use {
  font-size: 12px;
}
.case-meta p.use span {
  display: block;
  width: 8em;
  text-align: center;
  margin-right: auto;
  margin-left: auto;
  margin-top: 0.5em;
  background: #ececec;
  padding: 0 0.5em;
  font-size: inherit;
}
.case-meta p.use i {
  display: inline;
  margin-right: 0.5em;
  padding: 0.25em 0.5em;
  border-radius: 2px;
  background: #29abe2;
  color: white;
  font-size: inherit;
}
.case-meta p.use i.spec-sp {
  background: #e75181;
}

.case-slide {
  margin-bottom: 5em;
}
.case-slide .slick-prev, .case-slide .slick-next {
  position: absolute;
  top: 110%;
  left: 50%;
  height: auto;
  border: 0;
  color: #333;
  font-size: 14px;
  width: 120px;
  z-index: 1;
  background: #d3d6de;
  padding: 0.5em 0;
  line-height: 1.5;
}
.case-slide .slick-prev {
  margin-left: -120px;
}
.case-slide .slick-prev.slick-disabled, .case-slide .slick-next.slick-disabled {
  background: #29abe2;
  color: white;
}

.footer_btn {
  z-index: 999;
  position: fixed;
  bottom: 0;
  text-align: center;
  right: 3%;
  visibility: hidden;
  opacity: 0;
  transition: all 0.5s ease;
}
.footer_btn a {
  border-radius: 4px;
  font-weight: bold;
  color: #222;
  background: #b3def1;
  line-height: 1.3;
  padding: 8px;
  display: block;
  font-size: 12px;
  position: relative;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.footer_btn a:after {
  content: "";
  position: absolute;
  display: block;
  bottom: -18px;
  left: 50%;
  transform: translate(-50%, 0);
  border-top: 10px solid #b3def1;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid transparent;
}
.footer_btn a > span {
  display: block;
  font-size: inherit;
}
.footer_btn a > span > span {
  display: inline;
  font-size: inherit;
}
.footer_btn span.mark {
  display: block;
  margin-right: auto;
  margin-left: auto;
  width: 20px;
  line-height: 20px;
  border-radius: 10px;
  background: #0071bc;
  color: white;
  font-size: 14px;
  margin-bottom: 4px;
}

.moveIn {
  opacity: 1;
  visibility: visible;
  transform: translate(0, -20%);
}

footer {
  border-top: 1px solid #ddd;
  text-align: center;
}
footer small {
  display: block;
  color: #fff;
  background: #333;
}

.footerNav {
  overflow: hidden;
  margin-bottom: 24px;
}
.footerNav li a {
  background: url(../images/siteimg/chevron2.svg) no-repeat 0.7em center;
  background-size: 8px;
  display: block;
  text-align: left;
  padding-left: 2em;
  padding-top: 2px;
  font-size: 13px;
  line-height: 2;
  border-bottom: 1px dotted #ddd;
  color: #333;
}

.footerNavTel {
  width: 70%;
  max-width: 300px;
  margin: 0 auto 24px;
  border-radius: 8px;
  padding: 16px;
  border: 1px solid #ddd;
}

.telNum {
  font-size: 24px;
}

.telTime {
  font-size: 13px;
}

.clearfix, .cf {
  zoom: 1;
}
.clearfix:before, .clearfix:after, .cf:before, .cf:after {
  content: "";
  display: table;
}
.clearfix:after, .cf:after {
  clear: both;
}

.brpc {
  display: none;
}

.animated {
  animation-duration: 1s;
  animation-fill-mode: both;
}

.animated.infinite {
  animation-iteration-count: infinite;
}

.animated.bounceIn,
.animated.bounceOut {
  animation-duration: 0.75s;
}

.animated.flipOutX,
.animated.flipOutY {
  animation-duration: 0.75s;
}
@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    transform: scale3d(1, 1, 1);
  }
}
.bounceIn {
  animation-name: bounceIn;
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeIn {
  animation-name: fadeIn;
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.fadeInDown {
  animation-name: fadeInDown;
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.fadeInLeft {
  animation-name: fadeInLeft;
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.fadeInRight {
  animation-name: fadeInRight;
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 25%, 0);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.fadeInUp {
  animation-name: fadeInUp;
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes flip {
  from {
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    animation-timing-function: ease-out;
  }
  40% {
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    animation-timing-function: ease-out;
  }
  50% {
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    animation-timing-function: ease-in;
  }
  80% {
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    animation-timing-function: ease-in;
  }
  to {
    transform: perspective(400px);
    animation-timing-function: ease-in;
  }
}
.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  animation-name: flip;
}
@keyframes flipInY {
  from {
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    animation-timing-function: ease-in;
  }
  60% {
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  to {
    transform: perspective(400px);
  }
}
.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  animation-name: flipInY;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes zoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}
.zoomIn {
  animation-name: zoomIn;
}

@media screen and (min-width: 600px) {
  .slider {
    max-width: 700px;
    margin-right: auto;
    margin-left: auto;
  }
  .slider .spimg {
    display: none;
  }
  .slider .tabimg {
    display: block;
  }

  .aspLine {
    max-width: 400px;
    margin: 0 auto;
    padding: 0;
  }

  .systemLine {
    padding: 0;
    max-width: 700px;
  }
  .systemLine li {
    width: 20%;
    margin: 0 0 16px;
  }

  .user {
    width: 480px;
    margin: 0 auto;
    overflow: hidden;
  }
  .user li {
    float: left;
    width: 48%;
    margin-right: 4%;
  }
  .user li:nth-child(even) {
    margin-right: 0;
  }

  .userSite li {
    margin: 0;
  }
  .userSite li img {
    vertical-align: bottom;
  }

  .sysSmplBox {
    overflow: hidden;
  }
  .sysSmplBox .sysSmplsp {
    width: 371px;
    margin: 0 auto;
    height: 500px;
    position: relative;
    background: url(../images/siteimg/sys/sys_spSmpl_riajub.png);
  }
  .sysSmplBox .sysSmplsp > div {
    width: 320px;
    position: absolute;
    top: 160px;
    left: 20px;
  }
  .sysSmplBox .sysSmplsp > div.sysCd {
    position: relative;
    top: auto;
  }
  .sysSmplBox .sysSmplsp.hasSp {
    height: 100px;
    background-image: none;
  }
  .sysSmplBox .sysSmplsp.garrSp {
    background-image: url(../images/siteimg/sys/sys_spSmpl_garr.png);
  }
  .sysSmplBox .sysSmplsp.areSp {
    background-image: url(../images/siteimg/sys/sys_spSmpl_are.png);
  }
  .sysSmplBox .sysSmplsp.gnewsSp {
    background-image: url(../images/siteimg/sys/sys_spSmpl_gnews.png);
  }
  .sysSmplBox .sysSmplsp.gnewsSp > div {
    height: 100px;
    top: 176px;
  }
  .sysSmplBox .sysSmplcal {
    width: 49%;
    float: left;
  }

  .slidebnr_smpl iframe {
    width: 100%;
    max-width: 740px;
    margin-bottom: 1em;
  }
  .slidebnr_smpl #ifm_1 {
    height: 530px;
  }

  .contactBox {
    max-width: 350px;
    margin: 0 auto;
  }

  #err_msg ul {
    margin: 0 auto 16px;
    width: 380px;
  }

  .systemHyouki {
    overflow: hidden;
    max-width: 500px;
    margin: 0 auto 1em;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
  }
  .systemHyouki dl {
    width: auto;
  }

  .systemAll {
    max-width: 720px;
  }
  .systemAll li {
    float: left;
    width: 48%;
    margin-bottom: 2em;
    margin-right: 4%;
  }
  .systemAll li:nth-child(2n) {
    margin-right: 0;
  }

  .planSet h3 img {
    height: 100px;
  }

  .planSet_line {
    width: 96%;
    max-width: 960px;
    padding: 2em 0;
  }
  .planSet_line dl {
    float: left;
    width: 32%;
    margin-right: 2%;
  }
  .planSet_line dl:last-child {
    margin: 0;
  }
  .planSet_line dd {
    font-size: 1em;
  }
  .planSet_line dd span span {
    font-size: 24px;
  }
  .planSet_line dd img {
    width: 70px;
    top: -35px;
  }

  .sysDscBox .sys_usage dl {
    float: left;
    width: 49%;
    margin-right: 2%;
  }
  .sysDscBox .sys_usage dl:nth-child(even) {
    margin-right: 0;
  }
  .sysDscBox .sys_usage dd {
    margin-top: 4px;
  }

  .service_mall_list table {
    max-width: 400px;
  }
  .service_mall_list th {
    font-size: 14px;
    font-weight: 500;
  }
  .service_mall_list tr:first-child th {
    font-weight: 700;
  }

  .credit h3 {
    font-size: 20px;
  }

  .mainContents.systemPage .cont1, .mainContents.systemPage .cont2 {
    max-width: 700px;
    margin: 0 auto;
  }

  .cont3 .sysDscBox {
    padding: 16px;
    width: 90%;
    max-width: 700px;
    margin: 0 auto;
    border: 1px solid #ddd;
    box-shadow: 0 0 4px #ccc;
  }

  .sysFunc th {
    width: 11em;
    padding: 0 0.75em;
    font-weight: normal;
  }
  .sysFunc td {
    font-size: 14px;
    padding: 0.75em;
  }

  .faqBox {
    width: 95%;
    max-width: 800px;
    padding: 40px;
    border-radius: 8px;
  }
  .faqBox li {
    overflow: hidden;
    margin-bottom: 2em;
  }

  .faq_ttl, .answer_text {
    text-align: left;
  }

  .faq_ttl {
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 8px;
  }
  .faq_ttl span {
    float: left;
    margin-right: 4px;
    display: block;
    width: 1.3em;
    height: 1.3em;
    background: #29abe2;
    color: #fff;
    border-radius: 24px;
    line-height: 1.5;
    text-align: center;
  }

  .answer_text {
    border-left: 4px solid #ddd;
    background: #fff;
    padding: 8px;
    font-size: 13px;
  }

  .siteMap .cont1 {
    width: 95%;
    max-width: 800px;
    margin: 0 auto;
  }

  ul.separate2 {
    padding: 1em 2em;
  }
  ul.separate2 li {
    letter-spacing: 0em;
  }
  ul.separate2 li a {
    font-size: 14px;
    line-height: 3;
    font-weight: bold;
  }
  ul.separate2 li ul {
    margin: 0 0 8px;
  }
  ul.separate2 li ul li a {
    font-size: 13px;
    text-indent: 0.7em;
  }

  .companyInfo {
    max-width: 800px;
    padding: 1em;
  }
  .companyInfo dt {
    font-size: 14px;
    font-weight: normal;
  }
  .companyInfo dd {
    width: 73%;
    padding: 4px 2%;
    font-size: 14px;
  }

  .privacy .privacyBox {
    max-width: 600px;
    margin: 0 auto;
    padding: 2em;
  }
  .privacy .privacyBox dl {
    margin-bottom: 1.5em;
  }
  .privacy .privacyBox dt {
    font-size: 16px;
    font-weight: bold;
    color: #0071bc;
    border-left: 4px solid #ddd;
    text-indent: 0.5em;
    margin-bottom: 8px;
  }
  .privacy .privacyBox dd {
    background: #fff;
    border-radius: 2px;
    padding: 8px;
    font-size: 14px;
  }
  .privacy .privacyBox dd .caution {
    font-size: 13px;
    margin: 1em 0;
  }
  .privacy .privacyBox dd a {
    font-size: 14px;
  }

  /* // costomerVoice Page  tab*/
  .Anchor_link ul {
    width: 95%;
    max-width: 700px;
    margin: 0 auto;
    padding: 16px 0;
  }
  .Anchor_link li {
    width: 32%;
    margin: 0 0.5% 8px;
  }
  .Anchor_link li:last-child {
    margin-bottom: 0;
  }

  .userTab {
    margin: 0 auto;
    width: 95%;
    max-width: 800px;
    text-align: left;
    margin: 0 auto;
    background: none;
  }
  .userTab > span {
    left: -74px;
    top: -2px;
  }

  .VoiceUserName {
    display: inline-block;
    background: #29abe2;
    padding: 0.5em 1em 0.5em 0.5em;
    border-radius: 4px 4px 0 0;
  }
  .VoiceUserName span {
    display: inline-block;
  }

  .new .VoiceUserName {
    padding-right: 90px;
  }

  .voiceBox {
    width: 95%;
    max-width: 800px;
    margin: 0 auto 1em;
    padding: 16px 0;
  }
  .voiceBox .user {
    width: 100%;
    overflow: hidden;
  }
  .voiceBox .user .voiceL {
    text-align: center;
    float: left;
    width: 42%;
    margin-right: 0;
  }
  .voiceBox .user .voiceR {
    float: right;
    width: 56%;
    margin-right: 2%;
  }

  .voiceTtl {
    font-size: 16px;
    padding: 0.5em 0;
  }

  .voiceTxt {
    padding: 16px;
  }

  .footer_btn a {
    font-size: 14px;
    padding: 12px;
  }

  /* case tab */
  .case-meta {
    max-width: 960px;
  }

  .case-area .slick-slide {
    padding: 30px 5% 0;
  }
  .case-area .slick-slide:after {
    top: 0;
    left: 0;
    width: 72px;
    height: 72px;
    line-height: 72px;
    border-radius: 36px;
    letter-spacing: 1px;
  }

  .case-meta {
    text-align: left;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: center;
    padding: 1em 0;
  }
  .case-meta h4, .case-meta div {
    width: 50%;
  }
  .case-meta h4 {
    font-size: 24px;
    text-align: center;
    padding-left: 10%;
  }
  .case-meta p.name {
    font-size: 14px;
  }
  .case-meta p.use span {
    margin: 0.5em 0;
  }
}
@media screen and (min-width: 768px) {
  .case-slide {
    max-width: 960px;
  }
  .case-slide.case-slide-sp {
    max-width: 760px;
  }

  .case-slide {
    margin-bottom: 2em;
    padding-bottom: 3em;
    border-bottom: 1px dashed #ddd;
  }
  .case-slide:nth-child(odd) {
    border-bottom: 0;
  }
}
@media screen and (min-width: 970px) {
  a {
    transition-duration: 0.4s;
  }

  a:hover {
    opacity: 0.7;
  }

  .nav-area a, .logo a {
    transition: none;
  }

  header {
    width: 100%;
    position: fixed;
    background-color: rgba(255, 255, 255, 0.9);
  }

  .slider-wrap {
    padding-top: 60px;
  }

  .slider {
    max-width: 960px;
  }

  .sysInd .heroS {
    margin: 0 auto -120px;
    padding: 0;
    height: 150px;
  }

  .cont1, .cont3, .cont5 {
    max-width: 800px;
    margin: 0 auto;
  }

  .discTtl, .discTtl2 {
    font-size: 32px;
    font-weight: normal;
    text-shadow: 0 0 2px #fff;
  }
  .discTtl img, .discTtl2 img {
    height: 150px;
  }

  .pointBox {
    width: 100%;
  }
  .pointBox li {
    width: 31%;
  }
  .pointBox li:nth-child(even) {
    margin-right: 2%;
  }
  .pointBox li:last-child {
    width: 33%;
    margin-right: 0;
  }
  .pointBox li img {
    max-width: 200px;
  }
  .systemLine {
    padding: 0;
    max-width: 928px;
  }
  .systemLine li {
    width: 16.6%;
    max-width: none;
  }
  .systemLine li img {
    vertical-align: top;
    padding-bottom: 4px;
  }
  .planSet h3 img {
    height: 120px;
  }

  .planSet_line {
    padding: 4em 0;
  }
  .planSet_line dl {
    border-left-width: 4px;
  }
  .planSet_line dt {
    font-size: 24px;
  }
  .planSet_line dd {
    font-size: 20px;
  }
  .planSet_line dd span span {
    font-size: 32px;
  }
  .planSet_line dd img {
    width: 100px;
  }

  .mainContents.systemPage .cont1, .mainContents.systemPage .cont2 {
    max-width: 960px;
    margin: 0 auto;
  }

  .sysDscBox .sysAppeal {
    font-size: 20px;
  }
  .sysDscBox .sysDscText {
    font-size: 14px;
    margin-bottom: 2em;
    padding: 32px;
  }
  .sysDscBox .sysSmplBox .sysSmplsp {
    float: right;
    width: 371px;
  }
  .sysDscBox .sysSmplBox .sysSmplsp.hasSp {
    float: none;
    background: none;
    width: 100%;
    margin-bottom: 1em;
    height: 180px;
  }
  .sysDscBox .sysSmplBox .sysSmplsp.hasSp img {
    width: 300px;
  }
  .sysDscBox .sysSmplBox .sysSmplsp.garrSp {
    background-image: url(../images/siteimg/sys/sys_spSmpl_garr.png);
  }
  .sysDscBox .sysSmplBox .sysSmplsp.areSp {
    background-image: url(../images/siteimg/sys/sys_spSmpl_are.png);
  }
  .sysDscBox .sysSmplBox .sysSmplsp.gnewsSp > div {
    top: 176px;
  }
  .sysDscBox .sysSmplBox .sysSmplpc {
    float: left;
    display: block;
  }
  .sysDscBox .sysSmplBox .sysSmplpc img {
    width: 100%;
  }
  .sysDscBox .sysSmplBox .sysSmplpc.hasPc {
    float: none;
    width: 100%;
  }
  .sysDscBox .sysSmplBox .sysSmplpc.hasPc img {
    width: 180px;
  }
  .sysDscBox .sys_usage {
    padding: 32px 32px 0;
  }
  .sysDscBox .sys_usage dl {
    width: 32%;
    margin-right: 2%;
    margin-bottom: 2em;
  }
  .sysDscBox .sys_usage dl:nth-child(even) {
    margin-right: 2%;
  }
  .sysDscBox .sys_usage dl:nth-child(3n) {
    margin-right: 0;
  }
  .sysDscBox .sys_usage dd {
    font-size: 14px;
  }

  .sysFunc th {
    width: 14em;
    font-size: 14px;
  }
  .sysFunc td {
    font-size: 14px;
  }

  .slidebnr_smpl {
    max-width: 100%;
    margin: 0 auto 3em;
    overflow: hidden;
  }
  .slidebnr_smpl #ifm_2 {
    display: block;
    height: 380px;
    max-width: 100%;
  }

  .user {
    overflow: hidden;
    width: 90%;
    max-width: 960px;
    margin: 0 auto;
  }
  .user li {
    width: 25%;
    margin-right: 0;
  }
  .user li:nth-child(even) {
    margin-right: 0;
  }
  .user li .userSite {
    overflow: visible;
  }
  .user li .userSite .sp {
    display: none;
  }
  .user li .userSite .sp_pc {
    display: block;
  }
  .user li .userSite .sp_pc p {
    color: #fff;
    font-size: 13px;
    line-height: 2.5;
    background: #e75181;
    border-bottom: 2px solid #d2365c;
    position: relative;
  }
  .user li .userSite .sp_pc p span {
    position: absolute;
    top: -208px;
    left: -100px;
    display: none;
    color: #0071bc;
    line-height: 1.2;
    font-size: 13px;
  }
  .user li .userSite .sp_pc p span img {
    width: 200px;
    padding: 16px 30px 8px;
  }
  .user li .userSite .sp_pc p:hover span {
    display: block;
    background: rgba(255, 255, 255, 0.9);
    width: 200px;
    text-align: center;
    border-radius: 8px;
  }
  /* // coustomerVoice Page pc*/
  .Anchor_link ul {
    max-width: 960px;
  }
  .Anchor_link li {
    width: 19%;
  }

  .contactText {
    font-weight: bold;
  }
  .contactBox {
    max-width: 432px;
    margin: 0 auto;
    padding: 24px 24px 48px;
  }
  .contactBox input[type=submit] {
    width: 8em;
  }

  .contactS {
    float: left;
    width: 47.5%;
    margin-right: 3%;
  }

  .contactS2 {
    float: right;
    width: 47.5%;
  }

  #err_msg ul {
    margin: 0 auto 16px;
    width: 480px;
    max-width: auto;
  }

  .systemPage section.cont1, .planPage section.cont1 {
    max-width: 960px;
  }

  .systemPage section.cont3 {
    max-width: 100%;
  }

  .systemHyouki {
    margin-bottom: 2em;
  }

  .planHyouki {
    margin-bottom: 2em;
  }

  .systemAll {
    padding: 0;
    max-width: 960px;
  }
  .systemAll li {
    float: left;
    width: 30.6%;
    margin-bottom: 3em;
    margin-right: 4%;
  }
  .systemAll li:nth-child(2n) {
    margin-right: 4%;
  }
  .systemAll li:nth-child(3n) {
    margin-right: 0;
  }
  .systemAll li .sysImg img {
    width: 99%;
  }
  .systemAll li .sysDsc {
    font-size: 13px;
    margin: 0;
  }
  .systemAll li .sysDsc a:hover {
    background-color: #0071bc;
    color: #fff;
  }

  .service_mall_list table {
    max-width: 600px;
  }
  .service_mall_list th {
    font-size: 14px;
  }
  .service_mall_list td {
    font-size: 32px;
  }
  .service_mall_list tr:hover {
    background: rgba(239, 249, 255, 0.5);
  }
  .service_mall_list tr:first-child:hover {
    background: none;
  }

  .mainContents section.credit {
    padding: 60px 0;
  }

  .faqBox {
    width: 100%;
  }

  .faq_ttl {
    font-size: 16px;
  }

  .answer_text {
    font-size: 14px;
    padding: 24px;
  }
  .answer_text span {
    font-size: 14px;
  }

  .contactPage {
    padding-top: 70px;
  }

  .companyInfo {
    width: 100%;
    padding: 2em;
  }
  .companyInfo dt, .companyInfo dd {
    margin-bottom: 8px;
    line-height: 2;
  }
  .companyInfo dt {
    font-size: 14px;
  }
  .companyInfo dd {
    width: 73%;
    font-size: 14px;
  }

  .privacy .privacyBox {
    max-width: 100%;
  }
  .privacy .privacyBox dd {
    padding: 16px;
  }

  ul.separate2 li a:hover {
    color: #0071bc;
  }

  .userTab {
    width: 100%;
  }

  .VoiceUserName {
    font-size: 20px;
    font-weight: normal;
  }

  .voiceBox {
    width: 100%;
  }
  .voiceBox .user {
    width: auto;
    margin: 0;
  }
  .voiceBox .user .voiceL {
    width: 35%;
    margin: 0;
  }
  .voiceBox .user .voiceR {
    width: 63%;
  }
  .voiceBox .voiceTtl {
    font-size: 18px;
  }
  .voiceBox .voiceTxt {
    font-size: 14px;
  }
  .voiceBox .voiceTxt span {
    font-size: 14px;
  }

  /* case pc */
  .case-area .case {
    padding-top: 40px;
  }
  .case-area .slick-slide {
    padding: 50px 10px 0 50px;
  }
  .case-area .slick-slide:after {
    width: 100px;
    height: 100px;
    line-height: 100px;
    border-radius: 50px;
    font-size: 16px;
    font-weight: bold;
  }

  .footer_btn a {
    font-size: 1em;
    padding: 1em 1.5em;
  }
  .footer_btn span.mark {
    font-size: 16px;
    width: 32px;
    line-height: 32px;
    border-radius: 16px;
  }

  footer {
    text-align: center;
    background-position: center;
  }
  footer a {
    text-decoration: none;
  }
  .footerNavBox {
    width: 960px;
    margin: 0 auto;
    padding: 1em 0;
    overflow: hidden;
  }

  .footerNav {
    border-top: 0;
    float: left;
    margin-bottom: 24px;
  }
  .footerNav li {
    float: left;
  }
  .footerNav li a {
    padding: 0 10px;
    padding-top: 2px;
    line-height: 1.5;
    font-size: 12px;
    border-bottom: 0;
    background-position: 0 center;
    background-size: 6px;
  }
  .footerNav li a:hover {
    color: #0071bc;
  }

  .footerNavTel {
    float: right;
    width: 190px;
    margin: 0 auto 0px;
    padding: 8px;
  }
  .footerNavTel p {
    font-size: 13px;
  }
  .brsp {
    display: none;
  }

  .brpc {
    display: block;
  }
}