* {
  margin: 0;
  padding: 0px;
  color: #202020;
  letter-spacing: 0.06em;
}
html {
  font-size: 60%;
}

body {
  font-family: "HiraKakuProN-W3", Helvetica, Arial, sans-serif;
  font-weight: bold;
  background: #ffffff;
  margin: 0;
  height: 100%;
  color: #111111;
  /*font-weight: 400;*/
  font-size: 1em; /* chromeのバグ対策でbodyだけemに。 */
}

.col-lg-1,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-md-1,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-sm-1,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-xs-1,
.col-xs-10,
.col-xs-11,
.col-xs-12,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9 {
  padding-right: 9px;
  padding-left: 9px;
}

.clearfix:after {
  content: "";
  clear: both;
  display: block;
}

.none {
  display: none;
}

.fs-010 {
  font-size: 0.1rem;
}
.fs-020 {
  font-size: 0.2rem;
}
.fs-030 {
  font-size: 0.3rem;
}
.fs-040 {
  font-size: 0.4rem;
}
.fs-050 {
  font-size: 0.5rem;
}
.fs-060 {
  font-size: 0.6rem;
}
.fs-070 {
  font-size: 0.7rem;
}
.fs-080 {
  font-size: 0.8rem;
}
.fs-090 {
  font-size: 0.9rem;
}
.fs-100 {
  font-size: 1rem;
}
.fs-110 {
  font-size: 1.1rem;
}
.fs-120 {
  font-size: 1.2rem;
}
.fs-130 {
  font-size: 1.3rem;
}
.fs-140 {
  font-size: 1.4rem;
}
.fs-150 {
  font-size: 1.5rem;
}
.fs-160 {
  font-size: 1.6rem;
}
.fs-170 {
  font-size: 1.7rem;
}
.fs-180 {
  font-size: 1.8rem;
}
.fs-190 {
  font-size: 1.9rem;
}
.fs-200 {
  font-size: 2rem;
}
.fs-250 {
  font-size: 2.5rem;
}
.fs-300 {
  font-size: 3rem;
}
.fs-350 {
  font-size: 3.5rem;
}
.fs-400 {
  font-size: 4rem;
}

/*gridのgutter調整*/
.row-0 {
  margin-left: 0px;
  margin-right: 0px;
}
.row-0 > a,
.row-0 > div {
  padding-right: 0px;
  padding-left: 0px;
}
.row-10 {
  margin-left: -5px;
  margin-right: -5px;
}
.row-10 > a,
.row-10 > div {
  padding-right: 5px;
  padding-left: 5px;
}
.row-20 {
  margin-left: -10px;
  margin-right: -10px;
}
.row-20 > a,
.row-20 > div {
  padding-right: 10px;
  padding-left: 10px;
}
.row-30 {
  margin-left: -15px;
  margin-right: -15px;
}
.row-30 > a,
.row-30 > div {
  padding-right: 15px;
  padding-left: 15px;
}
.row-40 {
  margin-left: -20px;
  margin-right: -20px;
}
.row-40 > a,
.row-40 > div {
  padding-right: 20px;
  padding-left: 20px;
}

.row-50 {
  margin-left: -25px;
  margin-right: -25px;
}
.row-50 > a,
.row-50 > div {
  padding-right: 25px;
  padding-left: 25px;
}
.row-60 {
  margin-left: -30px;
  margin-right: -30px;
}
.row-60 > a,
.row-60 > div {
  padding-right: 30px;
  padding-left: 30px;
}
.row-70 {
  margin-left: -35px;
  margin-right: -35px;
}
.row-70 > a,
.row-70 > div {
  padding-right: 35px;
  padding-left: 35px;
}

::-moz-selection {
  text-shadow: none;
  background: #fcfcfc;
  background: rgba(0, 0, 0, 0.2);
}

::selection {
  text-shadow: none;
  background: #fcfcfc;
  background: rgba(0, 0, 0, 0.2);
}

img::selection {
  background: 0 0;
}

img::-moz-selection {
  background: 0 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "HiraKakuProN-W3", Helvetica, Arial, sans-serif;
  font-weight: bold;
  /*letter-spacing: 0.5rem;*/
  text-transform: none;
}
h2 {
  /*margin-bottom: 3em;*/
  font-weight: bold;
}
h3 {
  height: 52px;
}

p {
  padding: 0 0;
  margin-top: 0px;
  margin-bottom: 1.2rem;
  text-align: left;
  font-family: "HiraKakuProN-W3", sans-serif;
  font-weight: normal;
  font-size: 1.4rem;
  line-height: 2.4rem;
  color: #111111;
  margin-top: 1rem;
  text-align: justify;
  text-justify: inter-ideograph;
}

img {
  height: auto;
  max-width: inherit;
}

.centered {
  text-align: center;
}

a,
a p {
  color: #111111;
  padding: 0;
  margin: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.2);
  text-decoration: none;
  -webkit-transition: background-color 0.2s linear, color 0.2s linear,
    text-decoration 0.2s linear;
  -moz-transition: background-color 0.2s linear, color 0.2s linear,
    text-decoration 0.2s linear;
  -o-transition: background-color 0.2s linear, color 0.2s linear,
    text-decoration 0.2s linear;
  -ms-transition: background-color 0.2s linear, color 0.2s linear,
    text-decoration 0.2s linear;
  transition: background-color 0.2s linear, color 0.2s linear,
    text-decoration 0.2s linear;
  /*
        -webkit-transition: none;
        -moz-transition: none;
        transition: none;
    */
}
a,
a:visited,
a:active,
a:hover {
  cursor: pointer;
  cursor: hand;
}
a:active,
a:hover {
  outline: 0;
  text-decoration: none;
}

.graylink a p {
  color: #111111;
  font-size: 1.45rem;
  line-height: 1.6;
  padding-bottom: 0.8rem;
}

a p.link-text {
  font-family: "HiraKakuProN-W3", Helvetica, Arial, sans-serif;
  font-weight: bold;
  color: #014190;
  font-size: 1.4rem;
  text-align: center;
  text-decoration: underline;
}
a:hover p.link-text {
  color: #014190;
  text-decoration: none;
}

a p.box-title {
  font-size: 1.2em;
  text-align: left;
  font-family: "HiraKakuProN-W3", sans-serif;
  font-weight: bold;
  /*padding-bottom: 1rem;*/
  line-height: 1.4em;
  margin-top: 1em;
  letter-spacing: 0.14em;
}

a:hover,
a:focus,
a:hover p,
a:focus p {
  text-decoration: none;
  color: #4386d1;
  color: #111111;
}
a img {
  -webkit-transition: opacity 0.2s linear;
  -moz-transition: opacity 0.2s linear;
  -o-transition: opacity 0.2s linear;
  -ms-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
}
a:hover img,
a:focus img {
  filter: alpha(opacity=75) !important;
  -moz-opacity: 0.75 !important;
  opacity: 0.75 !important;
}

.section > div > div > a {
  padding-top: 10px;
  padding-bottom: 10px;
}
.section > div > div > a > div {
  padding-top: 10px;
  border: 1px solid #ddd;
  border-radius: 6px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 6px;
}
.section > div > div > a:hover > div {
  background-color: #f5f7fa;
  /*
      filter:alpha(opacity=4);
      -moz-opacity: 0.04;
      opacity: 0.04;
    */
}
.section > div > div > div > a > div {
  padding-top: 10px;
  border: 1px solid #ddd;
  border-radius: 6px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 6px;
}

.graylink a p.thumb-top-title {
  font-size: 1.6rem;
  font-weight: bold;
  /*   border-bottom:1px dotted #ddd; */
  margin-bottom: 0px;
  padding-bottom: 0px;
}
.graylink a p.thumb-top-title-sub {
  font-size: 1.1em;
  font-weight: normal;
  color: #888888;
}

.section .container .row a img.facebook-icon {
  margin-bottom: 0;
  width: 24px;
  height: 24px;
}
.fa-phone {
  margin-right: 0.1rem;
}
.fa-white {
  color: #ffffff !important;
}

/* ----------ナビゲーションバー----------- */
.navbar {
  padding-top: 10px;
}

.navbar .container {
  padding-bottom: 0px;
}

.navbar-default .navbar-nav > li > a:hover {
  color: #00b3fe;
}
.navbar-custom {
  font-family: "HiraKakuProN-W3", sans-serif;
  font-weight: bold;
  background-color: #ffffff;
}

.navbar-custom .navbar-brand {
  padding: 0;
}

.navbar-custom a {
  color: #111111;
}

.navbar-custom .nav li a:hover {
  color: rgba(0, 0, 0, 0.8);
}
.navbar-custom .nav li.active a {
  background-color: rgba(0, 0, 0, 0.3);
}

.navbar-custom .nav li.active a:hover {
  color: #111111;
}
div.navbar-main-collapse a.active span {
  color: #004190;
}

.navbar-fixed-bottom .navbar-collapse,
.navbar-fixed-top .navbar-collapse {
  max-height: inherit;
}

.navbar-nav {
  border-top: 1px #dddddd solid;
  margin-top: 0px;
  margin-bottom: -2px;
  overflow-y: hidden;
  display: block;
}

.navbar.navbar-custom.navbar-fixed-top,
.navbar.navbar-custom.navbar-fixed-top.top-nav-collapse {
  margin-bottom: -2px;
}

.navbar-custom .nav li {
  border-bottom: 1px #dddddd solid;
}

.navbar-header i {
  font-size: 1.8rem;
}

.nav a span {
  color: #999999;
  font-size: 1rem;
  display: block;
}
.nav a:hover span {
  color: #0a4894;
  font-size: 1rem;
}
.no-submenu-item {
  visibility: hidden;
}
.bs-logo {
  margin-left: 10px;
  margin-top: 4px;
  width: 120px;
  /*width:20%;*/
}
.eventos-logo {
  margin-left: 10px;
  margin-top: 20px;
  width: 200px;
  /*width:20%;*/
}
.eventech-logo {
  margin-left: 6px;
  margin-top: 20px;
  width: 230px;
  /*width:20%;*/
}
/* ----------ヘッダーイメージ ----------- */

.intro {
  margin-top: 70px;
  height: auto;
  position: relative;
  padding: 0px 0;
  background: inherit;
  background-color: #ffffff;
  -webkit-background-size: contain;
  -moz-background-size: contain;
  background-size: contain;
  -o-background-size: contain;
}

.intro .header-image {
  position: relative;
  left: 0;
  top: 0;
  width: 100%;
  margin-top: 0;
}

.intro .header-image-under {
  position: relative;
  left: 0;
  top: 0;
  width: 100%;
  margin-top: 0;
  max-height: 300px;
}
.section-header {
  font-size: 3rem;
  font-weight: 300;
  margin-top: 3rem;
  margin-bottom: 3rem;
  font-family: HiraginoSans-W3;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.7;
  letter-spacing: normal;
  text-align: left;
  color: #1166fb;
}
.media {
  width: 100%;
  float: left;
}

.sns-media {
  border-radius: 3px;
  border: solid 1px rgba(0, 0, 0, 0.1);
}

.shanai-media {
  width: 100%;
  border-radius: 3px !important;
  border: solid 1px rgba(0, 0, 0, 0.1) !important;
  margin-bottom: 15px;
}

.article {
  height: auto;
  margin-top: 20px;
  background-color: white;
  padding: 20px;
}

.article dl {
  display: block;
  height: auto;
}

.article dt {
  margin-bottom: 20px;
}

.article dd {
  font-size: 1.6em;
  font-weight: normal;
}

.article .icon {
  float: left;
  height: 150px;
  text-align: left;
  display: block;
  margin-right: 20px;
}

.media_title {
  font-family: HiraginoSans-W6;
  font-size: 20px;
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.7;
  letter-spacing: normal;
  text-align: left;
  color: #074391;
}
@media screen and (max-width: 767px) {
  .media_title {
    font-size: 17px;
  }
}

.media_section {
  font-family: HiraginoSans-W7;
  font-size: 24px;
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.71;
  letter-spacing: normal;
  text-align: center;
  color: #0066ff;
  margin-top: 20px;
}

.YouTube {
  font-family: HiraginoSans-W7;
  font-size: 24px;
  font-weight: normal;
  font-stretch: normal;
  font-style: normal;
  line-height: 1.71;
  letter-spacing: normal;
  text-align: center;
  color: #0066ff;
  text-align: center;
  margin-bottom: 2rem;
}

.header-image {
  content: "　";
  padding-top: 0;
  padding-bottom: 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
.header-image-top {
  /*background-image: url("../img/header-image-top.png");*/
}

.header-image-company {
  background-image: url("../img/cover-company.png");
}
.header-image-company-history {
  background-image: url("../img/cover-company.png");
}
.header-image-company-message {
  background-image: url("../img/cover-company.png");
}
.header-image-company-office {
  background-image: url("../img/cover-company.png");
}
.header-image-company-officer {
  background-image: url("../img/cover-company.png");
}
.header-image-company-philosophy {
  background-image: url("../img/cover-company.png");
}
.header-image-recruit {
  background-image: url("../img/cover-recruit.png");
}
.header-image-contact {
  background-image: url("../img/cover-contact.png");
}
.header-image-news {
  background-image: url("../img/cover-news.png");
}
.header-image-service {
  background-image: url("../img/cover-service.png");
}
.header-image-consumer {
  background-image: url("../img/cover-consumer.png");
}
.header-image-appvisor {
  background-image: url("../img/cover-appvisor.png");
}
.header-image-contract {
  background-image: url("../img/cover-contract.jpg");
}
.header-image-technology {
  background-image: url("../img/cover-technology.jpg");
}
.header-image-works {
  background-image: url("../img/cover-works.png");
}
.header-image-works-detail {
  /*background-image: url("../img/cover-works-detail.png");*/
}
.header-image-interview {
  background-image: url("../img/cover-works.png");
}
/* ----------サブナビゲーションバー ----------- */

div.navbar-sub {
  background-color: #f4f4f4;
  border-bottom: solid 1px #cccccc;
}
div.navbar-sub .container {
  padding-bottom: 0px;
}
div.navbar-breadcrumb {
  display: none;
}
div.navbar-breadcrumb ul.navbar-nav li a {
  padding-right: 0;
  color: #004190;
  padding-top: 11px;
  padding-bottom: 11px;
  padding-right: 4px;
  padding-left: 4px;
  text-decoration: none;
  font-size: 12px;
}

div.navbar-breadcrumb ul.navbar-nav li p {
  display: inline-block;
  padding-right: 0;
  color: #000000;
  padding-top: 11px;
  padding-bottom: 11px;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 12px;
  font-weight: bold;
  margin: 0;
  padding: 11px 10px;
  padding-right: 4px;
  padding-left: 4px;
  line-height: 20px;
}

div.navbar-breadcrumb ul.navbar-nav li a:hover {
  color: #004190;
  text-decoration: underline;
}
/*
div.navbar-breadcrumb a::after,
div.navbar-breadcrumb a:hover::after{
  content: ">";
  text-align: right;
  padding-left:1rem;
  color:#111111;
  text-decoration: none;
}
*/

div.navbar-breadcrumb li:last-child a::after {
  content: "";
}
div.navbar-sub div.container {
  padding-left: 0;
  padding-right: 0;
  font-size: 1.2rem;
}
div.navbar-sub li a:hover {
  color: #004190;
  background-color: inherit;
}

div.navbar-sub li a.active {
  color: #004190;
  background-color: inherit;
}

div.navbar-submenu-list ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;

  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
}
div.navbar-submenu-list ul li {
  flex-basis: 33.2%;
  -webkit-flex-basis: 33.2%;
  text-align: center;
  /*   border:solid 1px #dddddd; */
}

div.navbar-submenu-list .nav > li > a {
  color: #575757;
  padding-left: 5px;
  padding-right: 5px;
}

div.navbar-submenu-list .nav > li > a:hover {
  color: #1360bf;
}

div.navbar-submenu-list .nav > li > a > img {
  display: none;
}

div.navbar-submenu-list .nav > li > a.active {
  color: #1360bf;
}

/* ----------サブナビゲーションバー end ----------- */
div.section {
  margin: 0 auto 0;
  text-align: center;
  background-color: #ffffff;
  padding-top: 1em;
  padding-bottom: 0px;
}

.section .container .row a img {
  width: 100%;
  max-width: none;
  margin-bottom: 1.6rem;
}
/* ---------- works一覧  ---------- */

div#works > div > div > a:hover {
  background-color: inherit;
}

.figure {
  position: relative;
  overflow: hidden;
  width: auto;
  cursor: pointer;
}
.figcaption {
  position: absolute;
  bottom: -100%;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  -webkit-transition: 0.3s;
  transition: 0.3s;
  opacity: 0.88;
  line-height: 100%;
  text-align: center;
}
.figcaption p {
  margin: auto;
  /*padding-top: 2.5rem;*/
  padding-left: 0.8rem;
  padding-right: 0.8rem;
  font-size: 1.6rem;
  font-weight: 2.8rem;
  color: #ffffff;
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.3rem;
}
.figure:hover .figcaption {
  bottom: 0;
  left: 0;
}

.figure:hover .figcaption p {
  color: #ffffff;
  text-align: center;
  font-weight: bold;
}
#works {
  padding-bottom: 30px;
}

#works .container {
  text-align: center;
  /*margin-top: -20px; */
  margin-bottom: 0px;
  /*padding-bottom: 2.8em;*/
}
#works h3 {
  padding-top: 20px;
}
#works .container .row a {
  padding: 8px;
  display: block;
  margin-top: 8px;
  padding-bottom: 0;
}

#works .container .row a > div {
  border: 1px solid #dddddd;
  padding: 10px;
  -webkit-transition: background-color 0.2s linear, color 0.2s linear,
    border 0.2s linear;
  -moz-transition: background-color 0.2s linear, color 0.2s linear,
    border 0.2s linear;
  -o-transition: background-color 0.2s linear, color 0.2s linear,
    border 0.2s linear;
  -ms-transition: background-color 0.2s linear, color 0.2s linear,
    border 0.2s linear;
  transition: background-color 0.2s linear, color 0.2s linear,
    border 0.2s linear;
}

#works .container .row a:hover > div {
  border: 1px solid #f5f7fa;
  background-color: #f5f7fa;
}

#works .container .row a > div > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}

#works .container .row a > div > div > div {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
}

#works .container .row a > div > div > div > p {
  font-family: "HiraKakuProN-W3", sans-serif;
  font-weight: 300;
  font-size: 1.2rem;
  color: #666666;
  text-align: right;
  margin: 0px 0px 0px;
}
#works .container .row a > div > div > div > p.app-description {
  line-height: 1.3rem;
}
#works .container .row a:hover > div > div > div > p {
  /*   color:#dddddd; */
}

#works .container .row a > div > div > div > p.app-name {
  font-size: 1.3rem;
  font-weight: bold;
  line-height: 2.3rem;
  color: #333333;
  -webkit-text-wrap: unrestricted;
  text-wrap: unrestricted;
  -webkit-word-break: break-all;
  word-break: break-all;
  -webkit-word-wrap: break-word;
  word-wrap: break-word;
  margin-top: 0.6em;
}

#works .container .row a:hover > div > div > div > p.app-name {
  /* 	color:#ffffff; */
}

#works .container .row a img.app-icon {
  width: 80px;
  height: 80px;
  border-radius: 18px;
  -webkit-border-radius: 18px;
  -moz-border-radius: 18px;
  border: solid 1px #cccccc;
  margin-bottom: 0px;
}
.device-categories {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  border-bottom: 2px solid #014190;
  color: #bbbbbb;
}
a:hover .device-categories {
  border-bottom: 2px solid #014190;
  color: #bbbbbb;
}
.device-categories li {
  padding: 0 10px;
  font-size: 1.2rem;
  -webkit-flex-grow: 1;
  flex-grow: 1;
}
.device-categories li:last-child {
  -webkit-flex-grow: 2;
  flex-grow: 2;
  text-align: right;
  color: #014190;
}

.device-categories li.active {
  color: #014190;
}
a:hover .device-categories li.active {
  color: #014190;
}

.process-categories {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;

  margin-bottom: 0;
}

.process-categories li {
  background-color: #dddddd;
  color: #fff;
  text-align: center;
  font-weight: 300;
  -webkit-flex-grow: 1;
  flex-grow: 1;
  padding-top: 5px;
  padding-bottom: 5px;
  margin: 0 2px;
  width: 15%;
}

.process-categories li.active {
  color: #ffffff;
}

.process-categories li.category-plan.active {
  background-color: #ffc900;
}
.process-categories li.category-design.active {
  background-color: #17bb88;
}
.process-categories li.category-develop.active {
  background-color: #014190;
}
.process-categories li.category-server.active {
  background-color: #e2375c;
}
.process-categories li.category-promotion.active {
  background-color: #ff802c;
}

/* ---------- works一覧 end ---------- */

a.read-more-button {
  display: inline-block;
  padding: 1.6rem 6.4rem;
  color: #014190;
  border: 1px solid #06f;
  border-radius: 25px;
  -webkit-border-radius: 25px;
  -moz-border-radius: 25px;
  text-align: center;
  margin: 4.8rem auto 0;
  font-size: 1.4rem;
  font-weight: 300;
}

a:hover.read-more-button {
  background-color: #06f;
  color: #ffffff;
}

/* -----------お知らせ----------- */

.info-list {
  /*   margin-bottom: 40px; */
}
.info-list dl {
  text-align: left;
}
.info-list dl dt {
  margin-top: 2px;
  margin-bottom: 18px;
  font-size: 12px;
  color: #888888;
  font-family: "HiraKakuProN-W3", sans-serif;
  font-weight: normal;
}

.info-list dl dt span {
  width: 100px;
  display: inline-block;
  text-align: center;
  margin-right: 16px;
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 0.8em;
  padding-right: 0.8em;
  min-width: 60px;
  background-color: #999999;
  color: #ffffff;
  font-size: 10px;
}

/*
.info-list dl dt span.category-release{
  background-color: #E64068;
  border-radius: 2px;
}
.info-list dl dt span.category-info{
  background-color: #004190;
  border-radius: 2px;
}
.info-list dl dt span.category-blog{
  background-color: #FFD100;
  border-radius: 2px;
}
.info-list dl dt span.category-contents{
  background-color: #17BB88;
  border-radius: 2px;
}
*/
.info-list dl dt span {
  background-color: #bbb;
  border-radius: 2px;
  padding: 0.8rem;
}

.info-list dl a dd {
  font-size: 1.47rem;
  color: #004190;
  border-bottom: 1px dotted #dddddd;
}

.info-list dl a:link dd {
  padding-bottom: 4px;
  margin-top: 10px;
  margin-bottom: 0px;
  border-bottom: 1px dotted #dddddd;
  color: #004190;
  text-decoration: none;
  font-weight: 300;
}
.info-list dl a {
  padding: 0.4em;
  display: block;
  margin-bottom: 1rem;
}
.info-list dl a:hover {
  background-color: #f5f7fa;
}
.info-list dl a:hover dt {
}
.info-list dl a:hover dd {
  border-bottom: 1px dotted #dddddd;
  color: #004190;
  text-decoration: underline;
}

.info-thumbs {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 0;
  padding-right: 0;
}
.info-thumbs a {
  display: block;
  padding: 10px;
}
.info-thumbs a:hover {
  background-color: #f5f7fa;
}
/* -----------お知らせ end ----------- */
.container {
  /*padding-bottom: 2.8em;*/
  padding-bottom: 0em;
}

.section .container .row a img.info-thumb {
  margin-bottom: 5px;
  padding-bottom: 0px;
}
p.thumb-date {
  font-size: 1.2rem;
  color: #999999;
  margin: 0 auto;
}
p.thumb-title {
  font-size: 2.2rem;
  font-weight: 300;
  padding-top: 2rem;
  padding-bottom: 2.4rem;
  word-wrap: ;
}
p.thumb-text {
  margin-top: 0px;
  margin-bottom: 16px;
  line-height: 2.3rem;
  font-family: "HiraKakuProN-W3", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 1.4rem;
  padding-bottom: 1rem;
}

.section.each-service p.thumb-text {
  margin-top: 0px;
  margin-bottom: 16px;
  line-height: 2.3rem;
  font-family: "HiraKakuProN-W3", Helvetica, Arial, sans-serif;
  font-weight: 300;
  font-size: 1.6rem;
  padding-bottom: 1rem;
}
/* ---------- お問い合わせ セクション ----------- */

#contact {
  padding-top: 30px;
  padding-bottom: 30px;
  border-top: solid 8px #fff008;
  border-bottom: solid 8px #fff008;
  outline: solid 20px #f5f6f5;
  margin-bottom: 20px;
}

#contact > div {
  margin-left: auto;
  margin-right: auto;
  padding-top: 0px;
  padding-bottom: 0px;
}

#contact > div > p {
  margin-top: 40px;
  margin-bottom: 0;
  font-size: 16px;
}
.business-hours {
  margin-top: 15px;
  letter-spacing: 0.08em;
  font-size: 15px;
}
#contact p {
  text-align: center;
}

.tel {
  margin-top: 20px;
  font-family: Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-size: 40px;
  letter-spacing: 0.05em;
}
a.blue-button {
  display: block;
  font-size: 20px;
  color: #ffffff;
  background-color: #004190;
  margin-left: auto;
  margin-right: 20px;
  padding: 30px 30px;
  border-bottom: 5px solid #000f5b;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;

  -webkit-transition: background-color 0.2s linear, color 0.2s linear,
    border 0.2s linear;
  -moz-transition: background-color 0.2s linear, color 0.2s linear,
    border 0.2s linear;
  -o-transition: background-color 0.2s linear, color 0.2s linear,
    border 0.2s linear;
  -ms-transition: background-color 0.2s linear, color 0.2s linear,
    border 0.2s linear;
  transition: background-color 0.2s linear, color 0.2s linear,
    border 0.2s linear;
}
a:hover.blue-button {
  background-color: #0961c4;
  border-bottom: 5px solid #182564;
  color: #ffffff;
}

/* -------------- */
a p.box-title {
  /*padding-bottom: 1rem;
    line-height: 2.4rem;*/
}
a p.box-subtitle {
  /*color:#999999;*/
  font-size: 1.4rem;
  /*font-weight: bold;*/
  padding-bottom: 0;
}
a p.box-service-subtitle {
  font-size: 1.24rem;
  padding: 0.8rem 0.4rem;
  margin-bottom: 0.4rem;
}
a p.box-catchcopy {
  color: #014190;
  font-size: 1.1rem;
  font-weight: bold;
}

/* -----------サービス紹介----------- */

.section#service-concept p {
  margin-bottom: 20px;
}

.section.each-service .read-more-button {
  margin: auto auto 0;
}
.right-info {
  padding-left: 2.3rem;
  padding-right: 0.9rem;
}
#service-concept.section div.container div.row div img {
  width: 100%;
}

div.section#partner {
  background-image: url(../company/img/partner-bg.png);
  background-size: cover;
}

/* -----------個人情報保護方針---------------- */
.privacy {
}
/* -----------利用規約------------------------ */
.terms {
}
.terms ul {
  padding-top: 0.4em;
}
.terms ul li {
  position: relative;
  margin-bottom: 0.8em;
  margin-left: 0.4em;
  padding-left: 1.4em;
}
.terms ul li span {
  position: absolute;
  margin-left: -1.4em;
  font-weight: bold;
}
.terms ul li ol {
  margin-top: 1em;
  margin-bottom: 1em;
  margin-left: 1.4em;
  padding-left: 1.4em;
}
.terms ul li ol li {
  margin-left: -1.4em;
  list-style: upper-alpha;
  margin-bottom: 0.4em;
  padding-left: 0.4em;
}

/* -----------フッター サイトマップ----------- */

#footer-banner {
  padding-top: 14px;
  padding-bottom: 0px;
}

footer {
  padding: 0px 0 1rem;
  background-color: #999;
  background-color: #06f;
  color: #ffffff;
  text-align: center;
}
footer .container:first-child {
  padding-top: 0px;
  padding-bottom: 0px;
}
footer a,
footer a:visited,
footer a:active,
footer a:hover {
  /*cursor: default;*/
}
footer ul.container {
  margin: 0 auto;
  font-size: 1rem;
  position: relative;
  padding-left: 0px;
  padding-right: 0px;
}
footer ul li {
  padding-top: 0px;
  padding-bottom: 0px;
  font-size: 1rem;
  border-bottom: 1px solid #dddddd;

  padding-left: 8px;
  padding-right: 8px;
  width: 100%;
}
footer ul li dl a {
  display: block;
  padding-top: 15px;
  padding-bottom: 15px;
}
footer dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  margin-bottom: 0px;
}

footer dl:after {
  background-image: url("../img/arrow.png");
  content: "　";
  float: right;
  text-align: right;
  margin-left: auto;
  padding-top: 15px;
  padding-bottom: 15px;

  background-size: 8px 14px;
  background-repeat: no-repeat;
  background-position: center center;
}

footer dt {
  color: #f8fafb;
  margin-right: 25px;
  width: 100%;
  text-align: left;
}
footer dd {
  font-family: "HiraKakuProN-W3", sans-serif;
  font-weight: normal;
  display: none;
  text-align: left;
}
/*
footer dd::after{
  display: block;
  content: "｜";
  padding-left: 4px;
  padding-right: 4px;
  padding-top: 15px;
  padding-bottom: 15px;
  color: #dddddd;
}
*/

footer dd:last-child::after {
  content: none;
}
footer dt a,
footer dt a:link,
footer dt a:visited {
  color: #e9e9e9;
}
footer dd a,
footer dd a:link,
footer dd a:visited {
  color: #dddddd;
}

footer dt a:hover,
footer dt a:active,
footer dd a:hover,
footer dd a:active {
  color: #ffffff;
}
.bs-logo-link {
  /*   position: absolute; */
  /*   right:15px; */
  /*   top:0; */
  width: 200px;
  /*   float:left; */
  margin-top: 20px;
  display: none;
}
.bs-logo-link img {
  width: 200px;
}
.facebook-link,
.bsblog-link {
  display: none;
}
.copyright {
  margin-bottom: 0;
  text-align: center;
  color: #eeeeee;
  padding: 1.2rem;
  font-size: 1.2rem;
}
.copyright-mark {
  font-size: 1.6rem;
  vertical-align: bottom;
  padding-right: 5px;
  color: #fff;
}
/* -----------TOPへ戻るボタン----------- */

#to-page-top-button {
  position: fixed;
  bottom: 10px;
  right: 20px;
  font-size: 100%;
  z-index: 10;
  line-height: 1rem;
}

#to-page-top-button i {
  font-size: 2rem;
}

#to-page-top-button a {
  background: #ffff00;
  text-decoration: none;
  color: #004190;
  font-family: "HiraKakuProN-W3", Helvetica, Arial, sans-serif;
  font-weight: bold;
  width: 40px;
  height: 40px;
  padding: 0px 0;
  text-align: center;
  display: block;
  -webkit-border-radius: 8px;
  border-radius: 8px;
  display: table-cell;
  vertical-align: middle;
}

#to-page-top-button a:hover {
  text-decoration: none;
  background: #ffff55;
}
.row {
  margin-right: -5px !important;
  margin-left: -5px !important;
}

/* ーーーーーーーーーーiPadサイズ対応ーーーーーーーーーー */
@media (min-width: 768px) {
  p {
    padding: 0 0;
    margin-top: 0px;
    margin-bottom: 1.2rem;
    text-align: left;
    font-family: "HiraKakuProN-W3", sans-serif;
    font-weight: normal;
    font-size: 1.4rem;
    line-height: 2.4rem;
    color: #111111;
    /*margin-top: 1.0rem; */
    text-align: justify;
    text-justify: inter-ideograph;
  }
  /* ------- ヘッダー画像 ------ */
  .intro {
    margin-top: 70px;
  }

  /* ------- ナビゲーションバー ------ */
  .navbar {
    min-height: inherit;
  }
  .navbar-custom {
    padding: 5px 0;
    border-bottom: 0;
    letter-spacing: 1px;
    background: #ffffff;
    /*-webkit-transition: background .5s ease-in-out,padding .5s ease-in-out;
        -moz-transition: background .5s ease-in-out,padding .5s ease-in-out;
        transition: background .5s ease-in-out,padding .5s ease-in-out;*/
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+66,ffffff+100&amp;0.7+66,0+100 */
    /*background: -moz-linear-gradient(top,  rgba(255,255,255,0.9) 88%, rgba(255,255,255,0) 100%); /* FF3.6+ */
    /*background: -webkit-gradient(linear, left top, left bottom, color-stop(88%,rgba(255,255,255,0.9)), color-stop(100%,rgba(255,255,255,0))); /* Chrome,Safari4+ */
    /*background: -webkit-linear-gradient(top,  rgba(255,255,255,0.9) 88%,rgba(255,255,255,0) 100%); /* Chrome10+,Safari5.1+ */
    /*background: -o-linear-gradient(top,  rgba(255,255,255,0.9) 88%,rgba(255,255,255,0) 100%); /* Opera 11.10+ */
    /*background: -ms-linear-gradient(top,  rgba(255,255,255,0.9) 88%,rgba(255,255,255,0) 100%); /* IE10+ */
    /*background: linear-gradient(to bottom,  rgba(255,255,255,0.9) 88%,rgba(255,255,255,0) 100%); /* W3C */
    /*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b3ffffff', endColorstr='#00ffffff',GradientType=0 ); /* IE6-9 */
  }

  .navbar-custom.top-nav-collapse {
    padding: 5px 0;

    background: #ffffff;
    filter: alpha(opacity=96);
    -moz-opacity: 0.96;
    opacity: 0.96;
    /* box-shadow */
    box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 6px 2px;
    -webkit-box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 6px 2px;
    -moz-box-shadow: rgba(0, 0, 0, 0.05) 0px 0px 6px 2px;
  }
  .navbar-custom .nav li {
    border-bottom: none;
    margin-left: 0.4rem;
    margin-right: 0.4rem;
  }
  .navbar-custom.top-nav-collapse a {
    color: #111111;
  }
  .navbar-nav {
    border-top: none;
  }
  .navbar-custom .nav li a {
    color: #444;
    line-height: 1.6rem;
    text-align: center;
  }
  .navbar-custom .nav li a:hover {
    color: #000;
  }

  div.navbar-sub div.container {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    /*font-size: 14px;*/
    font-size: 1.3rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  div.navbar-breadcrumb {
    display: block;
  }
  div.navbar-submenu-list ul {
    margin-left: auto;
    flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
  }
  div.navbar-submenu-list ul li {
    flex-basis: inherit;
    -webkit-flex-basis: inherit;
    border: solid 1px #f4f4f4;
    padding-left: 2.8rem;
  }
  div.navbar-submenu-list .nav > li > a {
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 0px;
    padding-right: 0px;
    line-height: 24px;
  }
  div.navbar-submenu-list .nav > li > a > img {
    display: inline;
    margin-right: 0.5rem;
  }
  a.page-scroll {
    font-size: 1.4rem;
  }
  a.page-scroll span {
    font-weight: 300;
    font-size: 1rem;
  }

  /* -------グローバルナビ アニメーション------ */
  .cl-effect-21 a {
    padding: 10px;
    color: #333333;
    font-weight: 700;
    text-shadow: none;
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    transition: color 0.3s;
  }

  .cl-effect-21 a::after {
    position: absolute;
    left: 0;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    height: 2px;
    background: #06f;
    content: "";
    opacity: 0;
    -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
    -moz-transition: opacity 0.3s, -moz-transform 0.3s;
    transition: opacity 0.3s, transform 0.3s;
    -webkit-transform: translateY(-10px);
    -moz-transform: translateY(-10px);
    transform: translateY(-10px);
  }

  .cl-effect-21 a::after {
    bottom: 10px;
    -webkit-transform: translateY(5px);
    -moz-transform: translateY(5px);
    transform: translateY(5px);
  }

  .cl-effect-21 a:hover,
  .cl-effect-21 a:focus,
  .cl-effect-21 a.active {
    color: #4386d1;
  }

  .cl-effect-21 a:hover::before,
  .cl-effect-21 a:focus::before,
  .cl-effect-21 a.active::before,
  .cl-effect-21 a:hover::after,
  .cl-effect-21 a:focus::after,
  .cl-effect-21 a.active::after {
    opacity: 1;
    -webkit-transform: translateY(0px);
    -moz-transform: translateY(0px);
    transform: translateY(0px);
  }
  /* -------グローバルナビ アニメーション end------ */

  .detail-right-info {
    padding-left: 2.3rem;
    padding-right: 0.9rem;
  }

  /*----------- フッター　サイトマップ--------- */
  .bs-logo-link {
    display: block;
    height: 5.4rem;
    width: auto;
  }
  .bs-logo-link img {
    height: 100%;
    width: auto;
    padding-left: 4px;
  }
  .facebook-link {
    display: inline-block;
    height: 4rem;
    width: auto;
    /*float:right;*/
    text-align: center;
    /*margin-left: auto;*/
    margin-right: 0;
    margin-top: 33px;
  }
  .facebook-link img {
    height: 100%;
    width: auto;
    padding-right: 0.6rem;
  }
  .bsblog-link {
    display: block;
    height: 4rem;
    width: auto;
    float: right;
    margin-left: auto;
    margin-top: 33px;
  }
  .bsblog-link img {
    height: 100%;
    width: auto;
    padding-right: 20px;
  }
  footer {
    padding: 0 0 0;
  }
  footer .container:first-child {
    padding-top: 0px;
    padding-bottom: 0px;
  }
  footer ul {
    padding-top: 30px;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row;
    margin-bottom: 0px;

    font-size: 1rem;
    position: relative;

    padding-left: 0px;
    padding-right: 0px;
    margin: 0 auto;
    margin-bottom: 30px;
  }

  footer ul li {
    padding-top: 0;
    padding-bottom: 0px;
    font-size: 1rem;
    border-bottom: none;
  }
  footer dl {
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-flex-direction: column;
    flex-direction: column;
    margin-bottom: 0px;
  }
  footer dl:after {
    display: none;
  }

  footer ul li dl a,
  footer ul li dt a,
  footer ul li dl p {
    display: block;
    padding-top: 8px;
    padding-bottom: 8px;
  }
  footer ul li dl dd a {
    padding-bottom: 0px;
  }
  footer ul li dl dt p {
    color: #e9e9e9;
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.42857143;
  }
  footer dd::after {
    padding-top: 8px;
    padding-bottom: 8px;
  }

  footer dt {
    width: 100%;
    border-bottom: solid 1px #ffffff;
  }
  footer dd {
    display: inherit;
  }
  #footer-banner {
    display: none;
  }

  /* -----------TOPへ戻るボタン----------- */
  #to-page-top-button {
    bottom: 20px;
    right: 40px;
    font-size: 100%;
    line-height: 1.5rem;
  }

  #to-page-top-button i {
    font-size: 2.5rem;
  }

  #to-page-top-button a {
    width: 72px;
    height: 72px;
    -webkit-border-radius: 16px;
    border-radius: 16px;
  }
}
/* ーーーーーーーーーーPCサイズ対応ーーーーーーーーーー */

@media (min-width: 992px) {
  .container {
    width: 960px;
  }
  h2 {
    font-size: 2.4rem;
  }
  h3 {
    font-size: 2.4rem;
  }
  div.navbar-sub div.container {
    font-size: 14px;
  }
  .navbar-submenu-list .nav > li > a {
    padding-left: 0px;
    padding-right: 0px;
    font-size: 1.3rem;
  }
  footer ul li {
    font-size: 1.3rem;
  }
}

@media (min-width: 1200px) {
  .container {
    width: 960px;
  }
}
/*iphone*/
@media screen and (max-width: 480px) {
  a p.box-title {
    margin-top: 1em !important;
  }
  footer ul li {
    font-size: 1.6rem;
  }
  .section-header {
    font-size: 2.6rem;
    font-weight: 300;
    margin-top: 4rem;
    margin-bottom: 1.6em;
  }
}
@media screen and (min-width: 481px) {
  .section-header {
    font-size: 3rem;
    font-weight: 300;
    margin-top: 5rem;
    margin-bottom: 1.8em;
  }
}

.app-description {
  font-size: 1.2rem !important;
  padding-top: 1rem;
}
.app-name {
  font-size: 1.6rem !important;
  padding-top: 0rem;
}
/*.app-description {
	font-size:1.6rem !important;
	padding-top:1rem;
}
.app-name {
	font-size:1.8rem !important;
	padding-top:0rem;
}*/
label.has-error {
  font-size: 1.4rem;
  margin-top: 1rem;
  color: #cc0000;
}

.page-title {
  font-size: 1em;
  color: #ffffff;
  background-color: #aaa;
  margin-top: -1em;
  padding: 0.6em 0.8em;
}

.section-header {
  color: #06f;
  font-weight: 300;
  /*white-space: nowrap;*/
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;

  -webkit-align-items: center; /* Safari 7.0+ */
  align-items: center;

  text-align: center; /* for no-flexbox browsers */
}

.section-header:before,
.section-header:after {
  border-top: 1px solid;
  content: "";
  display: inline; /* for IE */

  -webkit-box-grow: 1;
  -webkit-flex-grow: 1;
  flex-grow: 1;
}

.section-header:before {
  /*     margin-left: 0.5em; */
  margin-right: 0.5em;
}

.section-header:after {
  margin-left: 0.5em;
  /*     margin-right: 0.5em; */
}

/* 新規追加部分 */
div#company-overview.section {
  font-size: 1.5rem;
  text-align: left;
  font-family: "HiraKakuProN-W3", sans-serif;
  font-weight: normal;
}
div#company-overview.section a,
div#company-overview.section a:link {
  color: #004190;
  text-decoration: none;
}
div#company-overview.section ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
}
div#company-overview.section ul li:first-child {
  width: 35%;
  -webkit-flex-basis: 35%;
  flex-basis: 35%;
  color: #999999;
}
div#company-overview.section ul li {
  padding: 0rem 0.5rem 0rem 0.5rem;
  vertical-align: top;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 65%;
  -webkit-flex-basis: 65%;
  flex-basis: 65%;
}
.recruit-title-p {
  font-size: 2.4rem;
  line-height: 1.4;
  font-family: "HiraKakuProN-W3", sans-serif;
  font-weight: bold;
  padding-bottom: 0.8em;
}
