@charset "UTF-8";
/* @font-face kit by Fonts2u (https://fonts2u.com) */
@font-face {
  font-family: "OSP-DIN";
  src: url("../include/font/OSP-DIN.eot?") format("eot"), url("../include/font/OSP-DIN.woff") format("woff"), url("../include/font/OSP-DIN.ttf") format("truetype"), url("../include/font/OSP-DIN.svg#OSP-DIN") format("svg");
  font-weight: normal;
  font-style: normal;
}
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "Rounded Mplus 1c", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.9;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: #fff;
  color: #333;
}

input {
  border: 0;
}

#adminBox {
  margin-bottom: 0 !important;
}

/* -----------------------------------------------
2. Elements
-------------------------------------------------- */
/* ---------- base ---------- */
h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
  margin: 0;
}

img, video {
  border: 0;
  vertical-align: bottom;
}

ol, ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

li {
  margin: 0;
  padding: 0;
}

dl, dt, dd {
  margin: 0;
  padding: 0;
}

/* ---------- text ---------- */
p {
  margin: 0 0 20px;
}

a {
  color: #002c6b;
  text-decoration: none;
}

a:hover {
  color: #002c6b;
  text-decoration: underline;
}

a[nohref] {
  color: inherit;
}
a[nohref]:hover {
  text-decoration: none;
}

/* ---------- plain ---------- */
ul.plain, ol.plain, dl.plain {
  margin-left: 20px;
  margin-bottom: 20px;
}

.plain ul, .plain ol {
  margin: 0 0 0 20px;
}

ul.plain {
  list-style-type: disc;
}
ul.plain ul {
  list-style-type: circle;
}
ul.plain ul ul {
  list-style-type: square;
}

ol.plain, ol.plain ol {
  list-style-type: decimal;
}

/* -----------------------------------------------
3. Helper Class
-------------------------------------------------- */
/* ---------- clear ---------- */
._clearfix {
  zoom: 1;
}
._clearfix:before, ._clearfix:after {
  content: "";
  display: table;
}
._clearfix:after {
  clear: both;
}

._float-l {
  float: left;
}

._float-r {
  float: right;
}

._clear {
  clear: both;
}

._hidden {
  display: none;
}

/* ---------- text ---------- */
._small {
  font-size: 88% !important;
}

._large {
  font-size: 113% !important;
}

._valignt {
  vertical-align: top !important;
}

._valignm {
  vertical-align: middle !important;
}

._valignb {
  vertical-align: bottom !important;
}

._txtc, ._txtc th, ._txtc td {
  text-align: center !important;
}

._txtr, ._txtr th, ._txtr td {
  text-align: right !important;
}

._txtl, ._txtl th, ._txtl td {
  text-align: left !important;
}

._wordbreak {
  word-break: break-all !important;
}

._nowrap {
  white-space: nowrap !important;
}

._image-text {
  overflow: hidden !important;
}

/* ---------- margin ---------- */
._first {
  margin-top: 0 !important;
}

._zero {
  margin-bottom: 0 !important;
}

._half {
  margin-bottom: 10px !important;
}

._default {
  margin-bottom: 20px !important;
}

._double {
  margin-bottom: 40px !important;
}

.container {
  margin: 0 auto;
  max-width: 1130px;
  padding-right: 15px;
  padding-left: 15px;
  padding-right: calc(15px + constant(safe-area-inset-right));
  padding-left: calc(15px + constant(safe-area-inset-left));
}
.container .container {
  padding: 0;
}

.narrow-container {
  margin: 0 auto;
  max-width: 960px;
  padding-right: 30px;
  padding-left: 30px;
  padding-right: calc(15px + constant(safe-area-inset-right));
  padding-left: calc(15px + constant(safe-area-inset-left));
}

@media (max-width: 1130px) {
  .container {
    padding-right: 30px;
    padding-left: 30px;
    padding-right: calc(30px + constant(safe-area-inset-right));
    padding-left: calc(30px + constant(safe-area-inset-left));
  }
  .narrow-container {
    padding-right: 30px;
    padding-left: 30px;
    padding-right: calc(30px + constant(safe-area-inset-right));
    padding-left: calc(30px + constant(safe-area-inset-left));
  }
}
@media screen and (max-width: 767px) {
  .container {
    padding-right: 15px;
    padding-left: 15px;
  }
  .narrow-container {
    padding-left: 0;
    padding-right: 0;
  }
}
img {
  max-width: 100%;
}

.center {
  text-align: center;
}

.left {
  text-align: left;
}

.right {
  text-align: right;
}

.img-r {
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .img-r {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) {
  .img-r {
    float: right;
    margin-left: 30px;
    margin-bottom: 30px;
  }
}

.img-l {
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  .img-l {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (min-width: 768px) {
  .img-l {
    float: left;
    margin-right: 30px;
    margin-bottom: 30px;
  }
}

.img-responsive {
  margin: auto;
}

@media screen and (min-width: 768px) {
  .insert-img {
    width: 20%;
  }
}

.margin--0 {
  margin-top: 0 !important;
}

.margin--05 {
  margin-top: 0.8em !important;
}

.margin--1x {
  margin-top: 1.6em !important;
}

.margin--15x {
  margin-top: 2.4em !important;
}

.margin--2x {
  margin-top: 3.2em !important;
}

.margin--25x {
  margin-top: 4em;
}

.margin--2s {
  margin-top: 0.8em;
}

.margin--25s {
  margin-top: 0.64em;
}

.sp-br::before {
  content: "\a";
  white-space: pre;
}

.large {
  font-size: 110%;
}

.x-large {
  font-size: 140%;
}

.xx-large {
  font-size: 160%;
}

.small {
  font-size: 84%;
}

.x-small {
  font-size: 70%;
}

.xx-small {
  font-size: 60%;
}

.red {
  color: #ff4049;
}

.bold {
  font-weight: bold;
}

.mincho {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
}

.em {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(0%, #fff462));
  background: linear-gradient(transparent 50%, #fff462 0%);
}

.decoration {
  border: 4px solid #f0f2f6;
  padding: 35px 30px 40px;
  margin: 30px 0;
}
.decoration h2, .decoration h3, .decoration h4, .decoration h5 {
  background: none;
  padding: 0;
  color: #002c6b;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
}
.decoration h2:first-child, .decoration h3:first-child, .decoration h4:first-child, .decoration h5:first-child, .decoration p:first-child, .decoration ul:first-child, .decoration ol:first-child, .decoration dl:first-child {
  margin-top: 0;
}
.decoration h2:last-child, .decoration h3:last-child, .decoration h4:last-child, .decoration h5:last-child, .decoration p:last-child, .decoration ul:last-child, .decoration ol:last-child, .decoration dl:last-child {
  margin-bottom: 0;
}

.voice .lead {
  font-size: 18px;
  font-size: 1.8rem;
}

a.underline {
  text-decoration: underline;
}

.fileicon {
  padding-left: 10px;
  padding-right: 10px;
}

.fileicon:before {
  font-family: FontAwesome;
  display: inline-block;
  padding-right: 3px;
}

.fileicon--docx:before {
  content: "\f1c2";
}

.fileicon--xlsx:before {
  content: "\f1c3";
}

.fileicon--pptx:before {
  content: "\f1c4";
}

.fileicon--pdf:before {
  content: "\f1c1";
}

.fileicon--zip:before {
  content: "\f1c6";
}

.ico-external::after {
  display: inline-block;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../images/ico_external.svg) no-repeat 0 0;
  background-size: 12px 12px;
  margin-left: 8px;
}

.page-title {
  height: 170px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.page-title .main {
  font-size: 26px;
  font-size: 2.6rem;
  font-weight: bold;
  color: #fff;
  text-shadow: 0 0 12px #333;
  text-align: center;
  letter-spacing: 0.1em;
}
.page-title .main .sub {
  font-size: 18px;
  font-size: 1.8rem;
  display: block;
  font-weight: normal;
  letter-spacing: 0;
}
.page-title.-plain {
  margin-top: 0;
}
.page-title.-plain .main {
  padding-top: 0;
}
.page-title.coinparking {
  background: url(../coinparking/images/page_cover_coinparking.jpg) no-repeat center center;
  background-size: cover;
}
.page-title.spacedesign {
  background: url(../spacedesign/images/page_cover_spacedesign.jpg) no-repeat center center;
  background-size: cover;
}
.page-title.exterior {
  background: url(../exterior/images/page_cover_exterior.jpg) no-repeat center center;
  background-size: cover;
}
.page-title.parking {
  background: url(../parking/images/page_cover_parking.jpg) no-repeat center center;
  background-size: cover;
}
.page-title.about {
  background: url(../about/img/page_cover_about.jpg) no-repeat center center;
  background-size: cover;
}
.page-title.business, .page-title.solution {
  background: url(../about/img/page_cover_about.jpg) no-repeat center center;
  background-size: cover;
}
.page-title.recruit {
  background: url(../recruit/img/page_cover_recruit.jpg) no-repeat center center;
  background-size: cover;
  margin-top: 0;
}
.page-title.privacy {
  background: url(../privacy/img/page_cover_privacy.jpg) no-repeat center center;
  background-size: cover;
  margin-top: 0;
}
.page-title.contact {
  background: url(../privacy/img/page_cover_privacy.jpg) no-repeat center center;
  background-size: cover;
  margin-top: 0;
}
.page-title.news {
  background: url(../about/img/page_cover_about.jpg) no-repeat center center;
  background-size: cover;
  margin-top: 0;
}
@media screen and (min-width: 480px) {
  .page-title {
    height: 200px;
  }
}
@media screen and (min-width: 768px) {
  .page-title {
    height: 300px;
  }
  .page-title .main {
    font-size: 32px;
    font-size: 3.2rem;
  }
}
@media screen and (min-width: 992px) {
  .page-title {
    height: 400px;
    margin-top: -49px;
  }
  .page-title .main {
    padding-top: 25px;
  }
}

.h2-a {
  font-size: 32px;
  font-size: 3.2rem;
  line-height: 1.4;
  color: #002c6b;
  font-weight: bold;
  padding-left: 20px;
  margin: 80px 0 20px;
  background: url(../images/border_pattern_a.png) repeat-y;
}
.h2-a.-plain {
  padding-left: 0;
  background: none;
}
@media screen and (max-width: 767px) {
  .h2-a {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.3;
    margin: 20px 0 20px;
  }
}

.h2-b {
  text-align: center;
  margin-bottom: 30px;
}
.h2-b span {
  display: block;
  font-weight: bold;
  line-height: 1.4;
}
.h2-b span.sub {
  font-size: 18px;
  font-size: 1.8rem;
  color: #2baae2;
}
.h2-b span.main {
  font-size: 28px;
  font-size: 2.8rem;
  color: #fff;
}
.h2-b span.en {
  font-size: 20px;
  font-size: 2rem;
  font-family: "OSP-DIN";
  color: #999;
  letter-spacing: 0.3em;
}
@media screen and (max-width: 767px) {
  .h2-b span.sub {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .h2-b span.main {
    font-size: 24px;
    font-size: 2.4rem;
  }
  .h2-b span.en {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.h2-c {
  text-align: center;
  margin-bottom: 40px;
  letter-spacing: 0.25em;
}
.h2-c span {
  display: block;
  line-height: 1.4;
}
.h2-c span.main {
  font-size: 28px;
  font-size: 2.8rem;
  color: #002c6b;
  font-weight: bold;
}
.h2-c span.en {
  font-size: 20px;
  font-size: 2rem;
  font-family: "OSP-DIN";
  color: #999;
  letter-spacing: 0.3em;
}
@media screen and (max-width: 767px) {
  .h2-c span.main {
    font-size: 22px;
    font-size: 2.2rem;
  }
  .h2-c span.en {
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.h2-d {
  font-size: 28px;
  font-size: 2.8rem;
  text-align: center;
  margin: 60px auto;
  color: #2baae2;
  font-weight: bold;
}
@media screen and (max-width: 767px) {
  .h2-d {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5;
    margin: 20px 0;
  }
}

h2.name {
  padding: 0.8em 1em;
  margin-bottom: 20px;
  background: #fafafa;
  border-top: 2px solid #002c6b;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
h2.name span {
  display: inline-block;
}
h2.name span.main {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  color: #002c6b;
}
h2.name span.sub {
  font-size: 14px;
  font-size: 1.4rem;
  margin-left: 20px;
}
h2.name span.sub::before {
  content: "―";
  display: inline-block;
  margin-right: 20px;
}
@media screen and (max-width: 767px) {
  h2.name {
    line-height: 1.3;
  }
  h2.name span.main {
    font-size: 20px;
    font-size: 2rem;
  }
}

.h2-title {
  font-size: 28px;
  font-size: 2.8rem;
  text-align: center;
  line-height: 1.2;
  font-weight: bold;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.1em;
  color: #002c6b;
  margin-top: 2.4em;
}
.h2-title .sub {
  font-size: 20px;
  font-size: 2rem;
  font-family: "OSP-DIN";
  font-weight: normal;
  color: #B2B2B2;
  letter-spacing: 0.3em;
  margin-left: 0.5em;
}
.h2-title .sub::before {
  content: "\a";
  white-space: pre;
}
@media screen and (max-width: 767px) {
  .h2-title {
    font-size: 25px;
    font-size: 2.5rem;
    margin-top: 1.6em;
  }
  .h2-title .sub {
    font-size: 18px;
    font-size: 1.8rem;
  }
}

.h3-a {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.4;
  color: #2baae2;
  font-weight: bold;
  padding-left: 20px;
  margin: 40px 0 20px;
  background: url(../images/border_pattern_a.png) repeat-y;
}

.h3-b {
  background: #002c6b;
  color: #fff;
  font-size: 25px;
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.2;
  margin: 40px 0 20px;
  padding: 0.5em;
}
@media screen and (max-width: 767px) {
  .h3-b {
    font-size: 20px;
    font-size: 2rem;
  }
}

.h3-c {
  background: #ededed;
  color: #002c6b;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  margin: 40px 0 20px;
  padding: 0 0.5em;
}
@media screen and (max-width: 767px) {
  .h3-c {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.4;
    padding: 0.5em;
  }
}

.h4-a {
  font-size: 20px;
  font-size: 2rem;
  background: #ededed;
  font-weight: bold;
  color: #002c6b;
  padding: 0.5em 0.8em 0.4em;
  margin: 40px 0 20px;
}
@media screen and (max-width: 767px) {
  .h4-a {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.4;
    padding: 0.5em;
  }
}

.h4-b {
  font-size: 21px;
  font-size: 2.1rem;
  color: #002c6b;
  font-weight: bold;
  text-align: center;
}
.h4-b.en {
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.h4-b::after {
  content: "";
  border-bottom: 2px solid #002c6b;
  width: 50px;
  height: 2px;
  display: block;
  margin: 10px auto 20px;
}

.h5-a {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #002c6b;
  border-bottom: 1px solid #2baae2;
  padding-bottom: 14px;
  margin: 30px 0 20px;
}

h6 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #002c6b;
  margin-bottom: 20px;
}

.h6-a {
  font-weight: bold;
  margin-bottom: 20px;
}

.list-a {
  margin: 0 auto 20px;
}
.list-a > li {
  text-indent: -1em;
  padding-left: 1em;
  font-weight: bold;
}
.list-a > li .lead {
  display: block;
  font-weight: normal;
  text-indent: 0em;
  padding-left: 0.4em;
}
.list-a > li::before {
  content: "";
  border-radius: 50%;
  width: 10px;
  height: 10px;
  display: inline-block;
  background: #2baae2;
  margin-right: 0.4em;
}

.list-b {
  margin: 0 auto 20px;
}
.list-b > li {
  text-indent: -1em;
  padding-left: 1em;
}
.list-b > li::before {
  content: "";
  border-style: solid;
  border-width: 5px 0 5px 9px;
  border-color: transparent transparent transparent #dd0207;
  display: inline-block;
  margin-right: 0.4em;
}

.list-c {
  margin: 0 auto 20px;
}
.list-c > li {
  position: relative;
  padding-left: 1.5em;
}
.list-c > li::before {
  content: "";
  width: 14px;
  height: 14px;
  display: inline-block;
  vertical-align: middle;
  position: absolute;
  top: 6px;
  left: 0;
}
.list-c.-red > li::before {
  background: url(../images/ico_circle_red.svg) no-repeat;
  background-size: 14px 14px;
}
.list-c.-light_blue > li::before {
  background: url(../images/ico_circle_light_blue.svg) no-repeat;
  background-size: 14px 14px;
}

.anchor-link li {
  display: inline-block;
  margin-right: 1.5em;
}
.anchor-link li a {
  position: relative;
  padding-right: 1em;
}
.anchor-link li a::after {
  content: " ";
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 5px 0 5px;
  border-color: #002c6b transparent transparent transparent;
  margin-top: -3px;
  position: absolute;
  top: 50%;
  right: 0;
}

.deta-list {
  margin-top: 0;
}
.deta-list li {
  font-size: 14px;
  font-size: 1.4rem;
}
.deta-list li a {
  display: inline-block;
  text-align: center;
  color: #fff;
  padding: 0 0.5em;
  background: #002c6b;
}
.deta-list li a.pdf {
  background: #dd0207;
}
.deta-list li a:hover {
  text-decoration: none;
  opacity: 0.8;
}
.deta-list li:nth-child(2) a {
  background: #dd0207;
}

.content ul,
.site-content ul {
  padding-left: 0;
}
.content ul li,
.site-content ul li {
  list-style: none;
  margin-top: 0.4em;
  margin-bottom: 0.4em;
}
.content ul.horizontal li,
.site-content ul.horizontal li {
  display: inline-block;
  margin-right: 10px;
  vertical-align: top;
}
.content ul.identity-list,
.site-content ul.identity-list {
  display: inline-block;
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
  text-align: left;
  margin-top: 1.6em;
  padding-left: 2em;
}
.content ul.identity-list li,
.site-content ul.identity-list li {
  list-style-type: decimal;
  list-style-position: outside;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .content ul.identity-list li,
  .site-content ul.identity-list li {
    font-size: 25px;
    font-size: 2.5rem;
    line-height: 2;
  }
}

.content .list li,
.site-content .list li {
  background-size: 8px 8px;
  padding-left: 1em;
}
.content .list li:before,
.site-content .list li:before {
  font-family: FontAwesome;
  content: "\f111";
  font-size: 9px;
  font-size: 0.9rem;
  display: inline-block;
  margin-right: 2px;
  color: #002c6b;
  vertical-align: middle;
  margin-top: -3px;
  text-indent: -1em;
}
.content .list li ul,
.site-content .list li ul {
  margin-top: 0.8em;
}
.content .list li ul li,
.site-content .list li ul li {
  padding-left: 0.5em;
}

.content .link li,
.site-content .link li {
  background: url(../images/ico_arrow_right_blue.svg) left center no-repeat;
  background-size: 6px;
  padding-left: 12px;
}
.content .link li a,
.site-content .link li a {
  color: #002c6b;
}
.content .link li ul,
.site-content .link li ul {
  margin-top: 0;
}
.content .link li ul li,
.site-content .link li ul li {
  background: url(../images/ico_arrow_right_light_blue.svg) left center no-repeat;
  background-size: 6px;
  padding-left: 12px;
}

.content ul.rice li,
.site-content ul.rice li {
  padding-left: 1em;
  margin: 0;
}
.content ul.rice li:before,
.site-content ul.rice li:before {
  content: "※";
  margin-left: -1em;
}

ol {
  padding-left: 20px;
}
ol li {
  list-style-type: decimal;
  margin: 15px 0;
}

.content dl.list dt {
  padding-top: 0.8em;
  font-weight: bold;
}
.content dl.list dd {
  margin: 0;
  border-bottom: 1px dotted #bbb;
  padding-bottom: 0.8em;
}
.content dl.list dd > *:first-child {
  margin-top: 0;
}

.content dl.list-dot dt {
  padding-top: 0.5em;
}
.content dl.list-dot dt:before {
  font-family: FontAwesome;
  content: "\f111";
  display: inline-block;
  margin-right: 4px;
  color: #002c6b;
}
.content dl.list-dot dd {
  margin-left: 1em;
}

.content dl.horizontal dt {
  font-weight: bold;
}
.content dl.horizontal dd {
  margin: 0;
}
@media screen and (min-width: 768px) {
  .content dl.horizontal {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .content dl.horizontal dt {
    width: 5em;
  }
  .content dl.horizontal dd {
    width: calc(100% - 6em);
  }
}

table {
  line-height: 1.5;
}

.table-a, .column-table- table {
  width: 100%;
  border-top: 1px solid #DDDDDD;
  margin: 0 auto 30px;
}
.table-a th, .table-a td, .column-table- table th, .column-table- table td {
  border-bottom: 1px solid #DDDDDD;
  padding: 1em 1.5em;
  text-align: left;
}
@media screen and (max-width: 479px) {
  .table-a th, .table-a td, .column-table- table th, .column-table- table td {
    display: block;
  }
}
.table-a th, .column-table- table th {
  font-weight: bold;
  vertical-align: top;
  background: #F0F0F0;
}

.table-b {
  width: 100%;
  border-collapse: collapse;
  margin-top: 2.4em;
}
.table-b th, .table-b td {
  border: 1px solid #b2c5df;
  padding: 10px 15px;
  border-radius: 0;
}
.table-b th {
  background: #E5EAF0;
  color: #002c6b;
  font-weight: normal;
}
@media screen and (max-width: 767px) {
  .table-b.history th {
    white-space: nowrap;
  }
}

.table-nowrap th {
  white-space: nowrap;
}

@media screen and (max-width: 767px) {
  .scroll {
    display: block;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
  .scroll th, .scroll td {
    padding: 0 5px;
  }
}

table dl dt {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  table dl {
    zoom: 1;
  }
  table dl:before, table dl:after {
    content: "";
    display: table;
  }
  table dl:after {
    clear: both;
  }
  table dl dt {
    float: left;
    width: 9em;
  }
  table dl dd {
    padding-left: 10em;
  }
  table dl.narrow dt {
    width: 5em;
  }
  table dl.narrow dd {
    padding-left: 6em;
  }
}

.button-a {
  font-size: 14px;
  font-size: 1.4rem;
  display: inline-block;
  text-align: center;
  padding: 0.75em 3em 0.75em 2em;
  color: #FFF;
  border: 1px solid #002c6b;
  background: #002c6b;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-width: 300px;
  max-width: 100%;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  font-weight: bold;
  position: relative;
}
.button-a::after {
  display: inline-block;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../images/ico_arrow_right_white.svg) no-repeat 0 0;
  background-size: 12px 12px;
  position: absolute;
  top: calc((100% - 12px) / 2);
  right: 10px;
}
.button-a:hover {
  text-decoration: none;
  background: transparent;
  color: #002c6b;
}
.button-a:hover::after {
  display: inline-block;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../images/ico_arrow_right_blue.svg) no-repeat 0 0;
  background-size: 12px 12px;
}
.button-a.-red {
  border: 1px solid #dd0207;
  background: #dd0207;
  min-width: 100%;
}
.button-a.-red:hover {
  text-decoration: none;
  background: transparent;
  color: #dd0207;
}
.button-a.-red:hover::after {
  display: inline-block;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../images/ico_arrow_right_white.svg) no-repeat 0 0;
  background-size: 12px 12px;
}
.button-a.-small {
  min-width: 220px;
}

.button-b {
  font-size: 24px;
  font-size: 2.4rem;
  display: inline-block;
  text-align: center;
  padding: 1em 2em;
  color: #FFF;
  border: 1px solid #2baae2;
  background: #2baae2;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-width: 100%;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  font-weight: bold;
  position: relative;
}
.button-b::after {
  display: inline-block;
  content: "";
  width: 26px;
  height: 26px;
  background: url(../images/ico_arrow_right_red.svg) no-repeat 0 0;
  background-size: 26px 26px;
  position: absolute;
  top: calc((100% - 26px) / 2);
  right: 20px;
}
.button-b:hover {
  text-decoration: none;
  background: transparent;
  color: #2baae2;
}
.button-b.-small {
  font-size: 16px;
  font-size: 1.6rem;
  min-width: 240px;
  padding: 0.7em 2em;
}
.button-b.-small::after {
  display: none;
}

.btn {
  display: inline-block;
  position: relative;
  padding: 0 10px;
  line-height: 1;
  text-align: center;
}
.btn:hover {
  text-decoration: none;
}
.btn.btn--default {
  background: #002c6b;
  color: #fff;
  padding: 1em 2em;
  border: 2px solid #002c6b;
  font-weight: bold;
}
.btn.btn--default:visited {
  color: #fff;
}
.btn.btn--default:hover {
  background: #fff;
  color: #002c6b;
}
.btn.btn__white {
  background: #666;
  color: #fff;
  padding: 1em 2em;
  border: 2px solid #666;
  font-weight: bold;
}
.btn.btn__white:visited {
  color: #fff;
}
.btn.btn__white:hover {
  background: #fff;
  color: #666;
}
.btn.btn--w100 {
  width: 100%;
}
.btn.btn--w75 {
  width: 75%;
}

.googlemap {
  position: relative;
  padding-bottom: 56.4%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
  margin-top: 1.6em;
}
.googlemap iframe, .googlemap object, .googlemap embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

.acms-entry .googlemap {
  margin-left: 10px;
  margin-right: 10px;
}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/* -----------------------------------------------
Box
-------------------------------------------------- */
.box-a, .box-b, .box-c {
  zoom: 1;
  padding: 30px;
  margin: 1.6em 0;
}
.box-a:before, .box-a:after, .box-b:before, .box-b:after, .box-c:before, .box-c:after {
  content: "";
  display: table;
}
.box-a:after, .box-b:after, .box-c:after {
  clear: both;
}

.box-a {
  border: 1px solid #e5e5e5;
}

.box-b {
  background: #eee;
}

.box-c {
  background: #EEE;
}

/* -----------------------------------------------
    カラム
-------------------------------------------------- */
.column-2, .column-3, .column-4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.column-2 > .column, .column-3 > .column, .column-4 > .column {
  margin-bottom: 30px;
}
.column-2 > .column img, .column-3 > .column img, .column-4 > .column img {
  max-width: 100%;
}
.column-2.column-2 > .column, .column-3.column-2 > .column, .column-4.column-2 > .column {
  width: calc((100% - 30px) / 2);
}
.column-2.column-3 > .column, .column-3.column-3 > .column, .column-4.column-3 > .column {
  width: calc((100% - 30px - 30px) / 3);
}
.column-2.column-3::after, .column-3.column-3::after, .column-4.column-3::after {
  content: "";
  display: block;
  width: calc((100% - 30px - 30px) / 3);
}
.column-2.column-4 > .column, .column-3.column-4 > .column, .column-4.column-4 > .column {
  width: calc((100% - 20px - 20px - 20px) / 4);
}
.column-2.column-4::after, .column-3.column-4::after, .column-4.column-4::after {
  content: "";
  display: block;
  width: calc((100% - 20px - 20px - 20px) / 4);
}
@media screen and (max-width: 767px) {
  .column-2.column-2 > .column, .column-3.column-2 > .column, .column-4.column-2 > .column {
    width: calc((100% - 15px) / 2);
  }
  .column-2.column-3 > .column, .column-3.column-3 > .column, .column-4.column-3 > .column {
    width: calc((100% - 15px) / 2);
  }
  .column-2.column-3::after, .column-3.column-3::after, .column-4.column-3::after {
    width: calc((100% - 15px) / 2);
  }
  .column-2.column-4 > .column, .column-3.column-4 > .column, .column-4.column-4 > .column {
    width: calc((100% - 15px) / 2);
  }
  .column-2.column-4::after, .column-3.column-4::after, .column-4.column-4::after {
    width: calc((100% - 15px) / 2);
  }
}

/* -----------------------------------------------
    コンテンツパーツ
-------------------------------------------------- */
.news-list {
  margin-top: 2.4em;
  border-top: 1px solid #E0E0E0;
}
.news-list li {
  border-bottom: 1px solid #E0E0E0;
  margin: 0;
}
.news-list li a {
  display: block;
  background: url(../images/ico_arrow_right_light_blue.svg) no-repeat;
  background-size: 10px;
  background-position: top 50% right 10px;
  padding: 0.75em 1.5em 0.75em 0;
}
.news-list li a:hover {
  text-decoration: none;
}
.news-list li .icon {
  display: inline-block;
  font-size: 13px;
  font-size: 1.3rem;
  color: #fff;
  line-height: 1.8;
  background: #002c6b;
  padding: 0 0.5em;
  margin-right: 10px;
}
.news-list li .icon__arrival {
  background: #8095B5;
}
.news-list li .icon__parking {
  background: rgba(229, 8, 0, 0.8);
}
.news-list li .icon__exterior {
  background: rgba(2, 159, 232, 0.8);
}
.news-list li .icon__spacedesign {
  background: rgba(243, 153, 0, 0.8);
}
.news-list li .icon__coinparking {
  background: rgba(30, 32, 136, 0.8);
}
.news-list li .date {
  color: #2baae2;
  margin-right: 1.25em;
}

.project {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0 5px;
}
.project__item {
  width: 25%;
  padding: 5px;
}
.project__item a {
  display: block;
}
.project__item a:hover {
  text-decoration: none;
}
.project__item a:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.project__item dl {
  background: #f4f4f4;
}
.project__item dl dt {
  overflow: hidden;
}
.project__item dl dt img {
  display: block;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.project__item dl dd {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0;
  padding: 0.5em;
  background: url(../images/ico_arrow_right_blue.svg) no-repeat;
  background-size: 7px;
  background-position: top 50% right 15px;
}
.project__item:nth-child(1) dl dd {
  color: #E50800;
}
.project__item:nth-child(3) dl dd {
  color: #029FE8;
}
.project__item:nth-child(4) dl dd {
  color: #F39900;
}
.project__item:nth-child(2) dl dd {
  color: #1E2088;
}
@media screen and (max-width: 767px) {
  .project {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .project__item {
    width: 50%;
  }
}

.office-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 2.4em;
}
.office-list dt {
  width: 25%;
  margin-bottom: 1.6em;
  background: #002c6b;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  color: #fff;
  padding: 0.25em 0.5em;
}
.office-list dd {
  width: 75%;
  padding-left: 1.5em;
  padding-bottom: 1.6em;
}
.office-list dd p {
  margin-top: 20px;
}
.office-list dd .table-b {
  margin: 20px 0;
}
.office-list h3 {
  background: #EDEDED;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #002c6b;
  padding: 0 0.5em;
}
.office-list h4 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .office-list dt {
    width: 2em;
  }
  .office-list dd {
    width: calc(100% - 2.5em);
    padding-left: 1em;
  }
}

.site-content .contact.main .h2-c {
  margin-bottom: 0;
}
.site-content .contact.main .information {
  padding: 1.5em 0 1em;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.site-content .contact.main .information li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.site-content .contact.main .information li .title {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  color: #002c6b;
  margin-right: 1.5em;
}
.site-content .contact.main .information li.info-tel {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  margin-right: 0;
}
.site-content .contact.main .information li.info-tel .title {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
}
.site-content .contact.main .information li.info-tel a {
  font-size: 35px;
  font-size: 3.5rem;
  background-size: 20px;
  padding-left: 25px;
  line-height: 1.1;
}
.site-content .contact.main .information li.info-mail {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.site-content .contact.main .information li.info-mail .button-a {
  min-width: inherit;
}
@media screen and (max-width: 767px) {
  .site-content .contact.main .information {
    display: block;
    text-align: center;
  }
  .site-content .contact.main .information li {
    display: block;
  }
  .site-content .contact.main .information li .title {
    margin-right: 0;
  }
  .site-content .contact.main .information li.info-tel a {
    font-size: 30px;
    font-size: 3rem;
  }
  .site-content .contact.main .information li.info-tel .tel {
    display: inline-block;
  }
  .site-content .contact.main .information li.info-mail .button-a {
    margin-top: 15px;
  }
}

/* -----------------------------------------------
    パンくず
-------------------------------------------------- */
.breadcrumb-a {
  zoom: 1;
  overflow: hidden;
  width: 100%;
  max-width: 1100px;
  font-size: 12px;
  font-weight: bold;
  margin: -14px auto 60px;
}
.breadcrumb-a:before, .breadcrumb-a:after {
  content: "";
  display: table;
}
.breadcrumb-a:after {
  clear: both;
}
.breadcrumb-a li {
  float: left;
  margin: 0 2em 0 0;
}
.breadcrumb-a li a, .breadcrumb-a li span {
  padding: 0.4em 1em 0.4em 2em;
  float: left;
  text-decoration: none;
  background: #fff;
  position: relative;
  z-index: 1;
}
.breadcrumb-a li a::after, .breadcrumb-a li span::after {
  content: "";
  background: #fff;
  height: 2.5em;
  margin-top: -1em;
  position: absolute;
  right: -1em;
  top: 50%;
  width: 2.5em;
  z-index: -1;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  border-radius: 0.4em;
}
.breadcrumb-a li a {
  color: #002c6b;
}
@media screen and (max-width: 767px) {
  .breadcrumb-a li {
    float: left;
    margin: 0 1.5em 0 0;
    font-size: 11px;
    font-size: 1.1rem;
  }
  .breadcrumb-a li a, .breadcrumb-a li span {
    padding: 0.4em 0.5em 0.4em 1em;
  }
  .breadcrumb-a li a::after, .breadcrumb-a li span::after {
    width: 1.8em;
    height: 1.8em;
    margin-top: -1.2em;
    right: -0.8em;
  }
}

.solution__lead {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
}
.solution h3, .solution p {
  margin-left: 0;
  margin-right: 0;
}
.solution table th, .solution table td {
  border: 1px solid #ddd;
}
.solution table th {
  background: #ededed;
  color: #002c6b;
  text-align: left;
}
.solution table td {
  text-align: right;
  white-space: nowrap;
}

.acms-page-header {
  border-bottom: none;
  margin-bottom: 0;
}

.acms-entry .entry-container, .acms-entry dl,
.acms-entry h2, .acms-entry h3, .acms-entry h4,
.acms-entry h5, .acms-entry h6, .acms-entry p {
  margin-left: 0;
  margin-right: 0;
}

.acms-entry [class*=acms-col-] {
  padding-left: 10px;
  padding-right: 10px;
}

.acms-entry [class*=column-image-] .caption {
  text-align: center;
}

.acms-entry .acms-grid {
  margin: 0;
}

.sp-header,
.sp-nav {
  display: none;
}

#adminBox {
  margin-top: 0;
  margin-bottom: 0;
}
#adminBox + .body .wrap main {
  margin-top: 0;
}

.site-header > .inner {
  max-width: 1100px;
  padding: 10px 0;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.site-header .logo {
  width: 170px;
  margin-right: auto;
}
.site-header .logo a {
  display: block;
}
.site-header .global-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.site-header .global-nav > li {
  margin-left: 25px;
  font-size: 14px;
  font-size: 1.4rem;
  color: #002c6b;
  font-weight: bold;
}
.site-header .global-nav > li a {
  color: #002c6b;
}
.site-header .global-nav > li a:hover {
  text-decoration: none;
}
.site-header .utility-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.site-header .utility-nav > li {
  margin-left: 25px;
}
.site-header .utility-nav > li a {
  font-size: 11px;
  font-size: 1.1rem;
  color: #333;
}
.site-header .utility-nav > li a:hover {
  text-decoration: none;
}

@media screen and (max-width: 991px) {
  .site-header {
    display: none;
  }
  .sp-header {
    width: 100%;
    height: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    background: #fff;
    z-index: 100;
  }
  .sp-header .logo {
    width: 120px;
    padding-left: 10px;
  }
  .sp-header .logo img {
    max-width: 200px;
  }
  .sp-header .btn-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .sp-header .btn-list .contact {
    margin-right: 1px;
  }
  .sp-header .btn-list .contact a {
    width: 60px;
    height: 60px;
    padding: 12px 8px 8px;
    background: #2baae2;
    display: block;
    position: relative;
    text-align: center;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .sp-header .btn-list .contact a img {
    width: auto;
    height: 16px;
    vertical-align: top;
  }
  .sp-header .btn-list .contact a::after {
    content: "CONTACT";
    position: absolute;
    bottom: 12px;
    left: 0;
    width: 100%;
    text-align: center;
    color: #fff;
    font-size: 10px;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 1;
  }
  .sp-nav-button-wrap {
    display: inline-block;
    width: 60px;
    height: 60px;
    z-index: 9999;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    background: #002c6b;
    padding: 12px 8px 8px;
  }
  .sp-nav-button,
  .sp-nav-button span {
    display: inline-block;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .sp-nav-button {
    position: relative;
    width: 100%;
    height: 16px;
    z-index: 300;
  }
  .sp-nav-button::after {
    position: absolute;
    bottom: -20px;
    left: 0;
    content: "MENU";
    width: 100%;
    text-align: center;
    color: #fff;
    font-size: 10px;
    font-weight: bold;
    letter-spacing: 0.1em;
    line-height: 1;
  }
  .sp-nav-button span {
    position: absolute;
    left: 20%;
    width: 60%;
    height: 2px;
    background-color: #fff;
  }
  .sp-nav-button span:nth-of-type(1) {
    top: 0;
  }
  .sp-nav-button span:nth-of-type(2) {
    top: calc(50% - 1px);
  }
  .sp-nav-button span:nth-of-type(3) {
    bottom: 0;
  }
  .sp-nav-button.-active::after {
    color: #fff;
    content: "CLOSE";
  }
  .sp-nav-button.-active span:nth-of-type(1) {
    -webkit-transform: translateY(7px) rotate(-45deg);
    transform: translateY(7px) rotate(-45deg);
  }
  .sp-nav-button.-active span:nth-of-type(2) {
    opacity: 0;
  }
  .sp-nav-button.-active span:nth-of-type(3) {
    -webkit-transform: translateY(-7px) rotate(45deg);
    transform: translateY(-7px) rotate(45deg);
  }
  .sp-nav-button.-active span {
    background-color: #fff;
  }
  .sp-nav {
    display: block;
    position: fixed;
    top: 60px;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    background: #002c6b;
    color: #fff;
    z-index: 9998;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    -webkit-transform: translatex(100%);
            transform: translatex(100%);
  }
  .sp-nav.-active {
    -webkit-transform: translatex(0%);
            transform: translatex(0%);
  }
  .sp-nav .sp-global-nav {
    padding: 5% 5% 0;
  }
  .sp-nav .sp-global-nav .nav-list {
    margin: 0;
  }
  .sp-nav .sp-global-nav .nav-list li {
    margin-top: 1px;
  }
  .sp-nav .sp-global-nav .nav-list li a, .sp-nav .sp-global-nav .nav-list li span {
    background: #fff;
    display: block;
    text-decoration: none;
    color: #000;
    font-size: 14px;
    font-weight: bold;
    padding: 1em 20px;
    position: relative;
  }
  .sp-nav .sp-global-nav .nav-list li a::after, .sp-nav .sp-global-nav .nav-list li span::after {
    content: "";
    background: url(../images/ico_arrow_right_blue.svg) no-repeat 0 0;
    background-size: 5px;
    width: 5px;
    height: 10px;
    display: inline-block;
    position: absolute;
    top: calc(50% - 5px);
    right: 20px;
  }
  .sp-nav .sp-global-nav .nav-list li span::after {
    display: block;
    width: 20px;
    height: 20px;
    background: none;
    font-family: FontAwesome;
    content: "\f196";
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: normal;
    color: #002c6b;
    position: absolute;
    top: calc(50% - 12px);
    right: 10px;
  }
  .sp-nav .sp-global-nav .nav-list li span.active::after {
    font-family: FontAwesome;
    content: "\f147";
  }
  .sp-nav .sp-global-nav .nav-list li ul {
    display: none;
  }
  .sp-nav .sp-global-nav .nav-list li ul li {
    margin-top: 0;
  }
  .sp-nav .sp-global-nav .nav-list li ul li a {
    padding: 1em 20px 1em 40px;
    line-height: 1.2;
  }
  .sp-nav .site-footer {
    padding-bottom: 40px;
  }
  .sp-nav .site-footer .pagetop {
    display: none;
  }
  .sp-nav .site-footer .site-info .inner .logo {
    display: none;
  }
  .sp-nav .site-footer .site-info .inner .logo.-white {
    display: block;
  }
  .sp-nav .site-footer .site-info .inner .utility-nav {
    display: none;
  }
  .sp-nav .site-footer .site-info .inner .copyright {
    color: #fff;
  }
}
.site-footer {
  margin-top: 3.2em;
}
.site-footer .inner {
  max-width: 1100px;
  margin: 0 auto;
}
.site-footer .pagetop {
  text-align: center;
  margin-bottom: 30px;
}
.site-footer .pagetop a {
  font-size: 11px;
  font-size: 1.1rem;
  background: #002c6b;
  padding: 18px 0;
  display: block;
  color: #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.site-footer .pagetop a::before {
  content: "";
  display: block;
  background: url(../images/ico_arrow_top_white.svg) no-repeat center top;
  background-size: 12px 8px;
  width: 12px;
  height: 8px;
  margin: 0 auto 0.4em;
}
.site-footer .pagetop a:hover {
  text-decoration: none;
  background: #2baae2;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.site-footer .site-map {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.site-footer .site-map > li > a {
  font-size: 15px;
  font-size: 1.5rem;
  color: #002c6b;
  font-weight: bold;
}
.site-footer .site-map > li > .category {
  margin-top: 0.5em;
}
.site-footer .site-map > li > .category > li {
  font-size: 13px;
  font-size: 1.3rem;
  background: url(../images/ico_arrow_right_light_blue.svg) no-repeat left center;
  background-size: 6px 8px;
  padding-left: 10px;
}
.site-footer .site-map > li > .category > li a {
  color: #333;
}
.site-footer .site-info {
  border-top: 2px solid #f0f2f6;
  margin-top: 80px;
}
.site-footer .site-info .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 14px 0;
}
.site-footer .site-info .inner .logo {
  width: 125px;
  margin-right: 40px;
}
.site-footer .site-info .inner .logo.-white {
  display: none;
}
.site-footer .site-info .inner .utility-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.site-footer .site-info .inner .utility-nav > li {
  position: relative;
  font-size: 13px;
  font-size: 1.3rem;
}
.site-footer .site-info .inner .utility-nav > li a {
  color: #333;
}
.site-footer .site-info .inner .utility-nav > li::after {
  display: inline-block;
  content: "";
  width: 1px;
  height: 0.8em;
  background: #333;
  vertical-align: middle;
  margin: 0 1em;
}
.site-footer .site-info .inner .copyright {
  font-size: 12px;
  font-size: 1.2rem;
  color: #333;
  margin-left: auto;
}

@media screen and (max-width: 991px) {
  .site-footer {
    margin-top: 2.4em;
  }
  .site-footer .inner {
    max-width: 100%;
    margin: 0 auto;
  }
  .site-footer .pagetop {
    margin-bottom: 0;
  }
  .site-footer .pagetop a {
    font-size: 10px;
    font-size: 1rem;
    padding: 14px 0;
  }
  .site-footer .site-map {
    display: none;
  }
  .site-footer .site-info {
    border-top: none;
    margin-top: 0;
  }
  .site-footer .site-info .inner {
    display: block;
    text-align: center;
    padding: 20px;
  }
  .site-footer .site-info .inner .logo {
    width: 160px;
    margin: 0 auto 16px;
  }
  .site-footer .site-info .inner .utility-nav {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 auto 10px;
  }
  .site-footer .site-info .inner .utility-nav > li a {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .site-footer .site-info .inner .copyright {
    font-size: 10px;
    font-size: 1rem;
    margin: 0 auto;
  }
}
.site-content > .inner {
  max-width: 1100px;
  margin: 0 auto;
}
.site-content > .inner.-full {
  max-width: 100%;
}
.site-content > .inner.-full > .inner {
  max-width: 1100px;
  margin: 0 auto;
}
.site-content .main-content {
  padding: 50px 0 40px;
}

.local-nav-wrap {
  background-color: rgba(1, 29, 85, 0.8);
  position: relative;
  z-index: 2;
}
.local-nav-wrap .local-nav {
  max-width: 1100px;
  padding: 11px 0 12px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.local-nav-wrap .local-nav > li {
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  margin: 0 10px;
}
.local-nav-wrap .local-nav > li a {
  color: #fff;
  padding: 11px 0 12px;
}
.local-nav-wrap .local-nav > li:first-child {
  margin-left: 0;
}
.local-nav-wrap .local-nav > li:last-child {
  margin-right: 0;
}
@media screen and (min-width: 992px) {
  .local-nav-wrap .local-nav > li a:hover {
    text-decoration: none;
    border-bottom: 3px solid #dd0207;
  }
}

@media screen and (max-width: 767px) {
  .site-content {
    padding-top: 60px;
  }
  .site-content > .inner {
    max-width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-left: 15px;
    padding-right: 15px;
  }
  .site-content > .inner.-full {
    max-width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .site-content > .inner.-full > .inner {
    max-width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .local-nav-wrap {
    background-color: rgb(1, 29, 85);
    width: 100%;
    overflow: hidden;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .local-nav-wrap .local-nav {
    width: 100%;
    max-width: 100%;
    padding: 10px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: inline-table;
  }
  .local-nav-wrap .local-nav > li {
    font-size: 12px;
    font-size: 1.2rem;
    display: table-cell;
    white-space: nowrap;
    margin: 0;
  }
  .local-nav-wrap .local-nav > li a {
    padding: 0 5px;
  }
}
.side {
  margin-top: 2.4em;
}
.side h2 {
  margin-top: 1.2em;
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  color: #fff;
  line-height: 1.2;
  padding: 0.5em 0 0.5em 0.5em;
  background: #002c6b;
  border-left: 5px solid #2baae2;
}
.side .nav ul {
  margin-top: 0;
  padding: 10px 15px 0;
  background: #002c6b;
}
.side .nav ul li {
  border-top: 1px solid #335689;
  margin: 0;
}
.side .nav ul li a {
  display: block;
  padding: 0.5em 1em 0.5em 1.5em;
  color: #fff;
  position: relative;
}
.side .nav ul li a::before {
  font-family: FontAwesome;
  content: "\f054";
  color: #2baae2;
  line-height: 1;
  display: block;
  position: absolute;
  left: 0.5em;
  top: 1em;
}

#top .keyvisual {
  padding: 0;
}
#top .keyvisual__wrap {
  width: 100%;
  position: relative;
}
#top .keyvisual__img {
  width: 100%;
  height: 100%;
}
#top .keyvisual__img div {
  height: 280px;
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: cover;
}
#top .keyvisual__img div.key001 {
  background-image: url(../top/img/img_keyvisual01.jpg);
}
#top .keyvisual__img div.key002 {
  background-image: url(../top/img/img_keyvisual02.jpg);
}
#top .keyvisual__img div.key003 {
  background-image: url(../top/img/img_keyvisual03.jpg);
}
#top .keyvisual__img div.key004 {
  background-image: url(../top/img/img_keyvisual04.jpg);
}
#top .keyvisual__img div.key005 {
  background-image: url(../top/img/img_keyvisual05.jpg);
}
#top .keyvisual__copy {
  width: 110px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-top: -95px;
  margin-left: -55px;
}
#top .keyvisual .slick-dots li {
  margin: 0;
}
#top .keyvisual .slick-dots li button::before {
  color: #002c6b;
}
@media screen and (min-width: 480px) {
  #top .keyvisual__img div {
    height: 300px;
  }
}
@media screen and (min-width: 768px) {
  #top .keyvisual__img div {
    height: 430px;
  }
  #top .keyvisual__copy {
    width: 156px;
    margin-top: -150px;
    margin-left: -78px;
  }
}
@media screen and (min-width: 992px) {
  #top .keyvisual__img div {
    height: 530px;
  }
}
#top section {
  padding: 4em 0;
}
#top section .title {
  position: relative;
}
#top section .title h2 {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.1em;
  color: #002c6b;
}
#top section .title h2 .sub {
  font-size: 20px;
  font-size: 2rem;
  font-family: "OSP-DIN";
  font-weight: normal;
  color: #B2B2B2;
  letter-spacing: 0.3em;
  margin-left: 0.5em;
}
#top section .title .index {
  position: absolute;
  right: 0;
  bottom: 0;
}
#top section .title .index a {
  display: inline-block;
  background-image: url(../images/ico_arrow_right_light_blue.svg);
  background-repeat: no-repeat;
  background-size: 5px;
  background-position: top 50% right 7px;
  border: 1px solid #8095B5;
  font-size: 13px;
  font-size: 1.3rem;
  color: #8095B5;
  padding: 0.25em 1.5em;
}
#top section .title .index a:hover {
  background-color: #8095B5;
  background-image: url(../images/ico_arrow_right_white.svg);
  color: #fff;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  #top section {
    padding: 2em 0;
  }
}
#top section.sec01 {
  padding-bottom: 6em;
  background: url(../top/img/img_bg01.jpg) 50% 50% no-repeat;
  background-size: 2560px;
}
#top section.sec01 h2 {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
  font-size: 45px;
  font-size: 4.5rem;
  text-align: center;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.05em;
}
#top section.sec01 .narrow {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 767px) {
  #top section.sec01 {
    padding-bottom: 2em;
    background: none;
  }
  #top section.sec01 h2 {
    font-size: 28px;
    font-size: 2.8rem;
  }
  #top section.sec01 p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.8;
    margin-top: 1.6em;
  }
}
#top section.sec02 {
  padding-bottom: 6em;
  background: url(../top/img/img_bg02.jpg) 50% 50% no-repeat;
  background-size: cover;
}
#top section.sec02 h2 {
  font-size: 45px;
  font-size: 4.5rem;
  text-align: center;
  color: #fff;
  font-weight: normal;
  font-style: italic;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.25em;
}
#top section.sec02 .project__item dl {
  background: #fff;
}
@media screen and (max-width: 767px) {
  #top section.sec02 {
    padding-bottom: 3em;
  }
}
#top section.sec03 .works-list {
  margin-top: 2.4em;
  margin-left: -10px;
  margin-right: -10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#top section.sec03 .works-list li {
  width: 25%;
  padding: 0 10px;
}
#top section.sec03 .works-list li a {
  display: block;
}
#top section.sec03 .works-list li a:hover {
  text-decoration: none;
}
#top section.sec03 .works-list li a:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
#top section.sec03 .works-list li dl {
  line-height: 1.5;
  margin-top: 0;
}
#top section.sec03 .works-list li dl dt {
  color: #002c6b;
  font-weight: bold;
  padding: 0.25em 0;
}
#top section.sec03 .works-list li dl dt.img {
  padding: 0;
  position: relative;
  overflow: hidden;
}
#top section.sec03 .works-list li dl dt.img img {
  display: block;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
#top section.sec03 .works-list li dl dt.img .icon {
  position: absolute;
  left: 0;
  bottom: 0;
  display: inline-block;
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: normal;
  color: #fff;
  padding: 0 0.5em;
}
#top section.sec03 .works-list li dl dt.img .icon__parking {
  background: rgba(229, 8, 0, 0.8);
}
#top section.sec03 .works-list li dl dt.img .icon__exterior {
  background: rgba(2, 159, 232, 0.8);
}
#top section.sec03 .works-list li dl dt.img .icon__spacedesign {
  background: rgba(243, 153, 0, 0.8);
}
#top section.sec03 .works-list li dl dt.img .icon__coinparking {
  background: rgba(30, 32, 136, 0.8);
}
#top section.sec03 .works-list li dl dd {
  font-size: 13px;
  font-size: 1.3rem;
  color: #666;
}
@media screen and (max-width: 767px) {
  #top section.sec03 .works-list {
    margin-left: 0;
    margin-right: 0;
    display: block;
  }
  #top section.sec03 .works-list li {
    width: 100%;
    margin: 15px 0;
    padding: 0;
  }
  #top section.sec03 .works-list li dl {
    zoom: 1;
  }
  #top section.sec03 .works-list li dl:before, #top section.sec03 .works-list li dl:after {
    content: "";
    display: table;
  }
  #top section.sec03 .works-list li dl:after {
    clear: both;
  }
  #top section.sec03 .works-list li dl dt {
    padding-top: 0;
  }
  #top section.sec03 .works-list li dl dt.img {
    width: 35%;
    float: left;
  }
  #top section.sec03 .works-list li dl dt.title {
    width: 65%;
    float: left;
    padding-left: 1em;
    line-height: 1.4;
  }
  #top section.sec03 .works-list li dl dd {
    width: 65%;
    float: left;
    padding-left: 1em;
    line-height: 1.4;
  }
}
#top section.sec04 {
  background: #F6F6F6;
}
#top section.sec04 .title h2 {
  text-align: center;
  line-height: 1.2;
}
#top section.sec04 .title h2 .sub::before {
  content: "\a";
  white-space: pre;
}
#top section.sec04 .news-list {
  margin-top: 2.4em;
  border-top: 1px solid #E0E0E0;
}
#top section.sec04 .news-list li {
  border-bottom: 1px solid #E0E0E0;
  margin: 0;
}
#top section.sec04 .news-list li a {
  display: block;
  background: url(../images/ico_arrow_right_light_blue.svg) no-repeat;
  background-size: 10px;
  background-position: top 50% right 10px;
  padding: 0.75em 1.5em 0.75em 0;
}
#top section.sec04 .news-list li a:hover {
  text-decoration: none;
}
#top section.sec04 .news-list li .date {
  color: #2baae2;
  margin-right: 1.25em;
}
@media screen and (max-width: 767px) {
  #top section.sec04 .news-list li .date::after {
    content: "\a";
    white-space: pre;
  }
}
@media screen and (max-width: 991px) {
  #top .site-content {
    padding-top: 60px;
  }
}

/* ------------------------------
　　お問い合わせ
------------------------------ */
.contact-box .message {
  margin: 0 0 35px 0;
}
.contact-box .contact-no {
  margin: 0;
  font-size: 30px;
  font-size: 3rem;
  font-weight: bold;
  color: #333;
}
.contact-box .contact-no a {
  color: inherit;
}
.contact-box .error-text {
  /* エラー文 */
  margin: 5px 0 0 0;
  color: red;
}

.contact-form {
  width: 100%;
  margin: 0 0 20px 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid #EEE;
}

.contact-form-label {
  display: block;
  text-align: left;
  margin: 0;
  padding: 10px 10px 0 10px;
}

.contact-form-control {
  display: block;
  padding: 10px;
  border-bottom: 1px solid #EEE;
}

.contact-form-label {
  font-weight: bold;
}

.contact-form-grid {
  margin: 0 -5px;
}

.contact-form-col,
.acms-entry .contact-form-col {
  margin: 0 0 10px 0;
  padding: 0 5px;
}
.contact-form-col:last-child,
.acms-entry .contact-form-col:last-child {
  margin: 0;
}

@media screen and (min-width: 768px) {
  .contact-form {
    display: table;
    width: 100%;
  }
  .contact-form-group {
    display: table-row;
  }
  .contact-form-label,
  .contact-form-control {
    display: table-cell;
  }
  .contact-form-label {
    width: 33.3333333333%;
    padding: 25px 15px 15px 15px;
    vertical-align: top;
    border-bottom: 1px solid #EEE;
  }
  .contact-form-control {
    width: 66.6666666667%;
    padding: 15px;
  }
  .contact-form-col {
    margin: 0;
  }
}
/* ステップ
------------------------------ */
.contact-box .mail-step {
  margin: 0 0 35px 0;
  padding: 0 10px;
  /* カウンターの設定 */
  counter-reset: mailStep;
}
.contact-box .mail-step-item {
  float: left;
  list-style: none;
  margin: 0 10px;
  padding: 18px 0 14px;
  color: #999;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  border-bottom: 4px solid transparent;
}
.contact-box .mail-step-item:before {
  /* カウンターの設定 */
  counter-increment: mailStep;
  content: counter(mailStep) ".";
}
.contact-box .mail-step-item-current {
  color: #333;
  border-bottom: 4px solid #ddd;
}
@media screen and (min-width: 768px) {
  .contact-box .mail-step {
    height: 60px;
  }
}

/* 送信ボタン
------------------------------ */
.form-btn-box {
  margin: 0 10px 50px 10px;
  text-align: center;
}

.form-btn {
  display: inline-block;
}

.form-btn-return {
  float: left;
}

.form-btn-send {
  float: right;
}

@media screen and (min-width: 768px) {
  .form-btn-return {
    float: none;
  }
  .form-btn-send {
    float: none;
    max-width: 360px;
    width: 100%;
  }
}
.form p.tel {
  font-size: 34px;
  font-size: 3.4rem;
  font-family: "neue-haas-grotesk-display";
  font-weight: 600;
  color: #002c6b;
  display: block;
  letter-spacing: 0.05em;
  background: url(../images/ico_tel.svg) no-repeat left center;
  background-size: 29px 37px;
  padding-left: 40px;
  line-height: 40px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .form p.tel {
    font-size: 47px;
    font-size: 4.7rem;
  }
}

/* ラベル
------------------------------ */
.label-required {
  margin: 0 5px;
  padding: 2px 8px;
  color: #FFF;
  font-size: 12px;
  font-size: 1.2rem;
  border-radius: 3px;
  background: #dd0207;
}

@media screen and (min-width: 768px) {
  .label-required {
    float: right;
  }
}
/* フォーム要素
------------------------------ */
.contact-box select[required]:required {
  border: 1px solid #C49511;
}
.contact-box select.focused:invalid {
  border: 1px solid #c41134;
}
.contact-box select[required]:valid {
  border: 1px solid #A7A7AA;
}
.contact-box input[required]:required,
.contact-box textarea[required]:required {
  background: #FFFDEB;
}
.contact-box input.focused:invalid,
.contact-box textarea.focused:invalid {
  background: #FFEBEE;
}
.contact-box input[required]:valid,
.contact-box textarea[required]:valid {
  background: #FFF;
}
.contact-box input[type=text],
.contact-box input[type=password],
.contact-box input[type=datetime],
.contact-box input[type=datetime-local],
.contact-box input[type=date],
.contact-box input[type=month],
.contact-box input[type=time],
.contact-box input[type=week],
.contact-box input[type=number],
.contact-box input[type=email],
.contact-box input[type=url],
.contact-box input[type=search],
.contact-box input[type=tel] {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 14px 5px 10px 5px;
}
.contact-box select {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 11px 30px 11px 10px;
  vertical-align: top;
  background: #f7f7f7;
}

/* バリデーター
------------------------------ */
.valid-mark {
  display: none;
}

.valid-mark.valid {
  display: inline;
  color: #5cb85c;
  float: right;
}

.invalid {
  background: #ffebee !important;
}

.site-content {
  /* 概要 */
  /* お知らせ・新着情報 */
  /* バナーリスト */
  /* 課題解決事例 */
  /* 事業部の想い・理念 */
  /* お問い合わせ */
  /* その他の製品 */
  /* ビフォー・アフター */
}
.site-content .intro {
  margin-bottom: 80px;
}
.site-content .intro .intro-lead {
  margin-bottom: 60px;
}
@media screen and (min-width: 992px) {
  .site-content .intro .intro-lead.narrow {
    width: 75%;
    margin-left: auto;
    margin-right: auto;
  }
}
.site-content .intro .point {
  margin-bottom: 60px;
}
.site-content .intro .point .column {
  margin-bottom: 0;
}
.site-content .intro .point .column .thumbnail {
  margin-bottom: 10px;
}
.site-content .intro .point .column .h3-a {
  margin: 16px 0 10px;
}
.site-content .intro .point .column .lead {
  font-size: 18px;
  font-size: 1.8rem;
  text-align: left;
  font-weight: normal;
  margin-bottom: 0;
}
.site-content .feature .point .column .lead {
  font-weight: normal;
  text-align: left;
  color: #d6d6d6;
  font-size: 16px;
  font-size: 1.6rem;
}
.site-content .information {
  padding: 60px 0 30px;
  padding: 20px;
}
.site-content .information .info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.site-content .information .info.no-flex {
  display: block;
}
.site-content .information .info .head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 10px;
}
.site-content .information .info .head .title span.jp {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  color: #002c6b;
  letter-spacing: 0.1em;
}
.site-content .information .info .head .title span.en {
  font-size: 20px;
  font-size: 2rem;
  font-family: "OSP-DIN";
  color: #999;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  margin-left: 20px;
}
.site-content .information .info .head .read-more {
  margin-bottom: 0;
}
.site-content .information .info .head .read-more a {
  font-size: 11px;
  font-size: 1.1rem;
  color: #8095b5;
  border: 1px solid #8095b5;
  padding: 0.3em 2em;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  position: relative;
}
.site-content .information .info .head .read-more a:after {
  content: "";
  background: url(../images/ico_arrow_right_light_blue.svg) no-repeat 0 0;
  background-size: 6px 8px;
  width: 6px;
  height: 8px;
  position: absolute;
  top: calc((100% - 8px) / 2);
  right: 6px;
}
.site-content .information .info .head .read-more a:hover {
  background: #8095b5;
  color: #fff;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.site-content .information .info .info-list > li {
  border-bottom: 1px solid #d6d6d6;
}
.site-content .information .info .info-list > li a {
  display: block;
  padding: 20px 40px 20px 10px;
  position: relative;
}
.site-content .information .info .info-list > li a .article {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.site-content .information .info .info-list > li a .article .detail span.new {
  font-size: 14px;
  font-size: 1.4rem;
  font-family: "OSP-DIN";
  color: #dd0207;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.2em 0.6em 0.1em 0.8em;
  margin-right: 10px;
  border: 1px solid #dd0207;
}
.site-content .information .info .info-list > li a .article .detail span.date {
  font-size: 18px;
  font-size: 1.8rem;
  font-family: "OSP-DIN";
  color: #2baae2;
  letter-spacing: 0.1em;
  margin-right: 10px;
  line-height: 1;
}
.site-content .information .info .info-list > li a .article .title {
  font-size: 16px;
  font-size: 1.6rem;
  color: #002c6b;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.site-content .information .info .info-list > li a:after {
  content: "";
  background: url(../images/ico_arrow_right_light_blue.svg) no-repeat 0 0;
  background-size: 12px 16px;
  width: 12px;
  height: 16px;
  position: absolute;
  top: calc((100% - 16px) / 2);
  right: 10px;
}
.site-content .information .info .info-list > li a:hover {
  text-decoration: none;
  background: #fafafa;
}
.site-content .information .info .info-list > li:first-child {
  border-top: 1px solid #d6d6d6;
}
.site-content .information .info .topics {
  width: calc((100% - 60px) / 2);
}
.site-content .information .info .news {
  width: calc((100% - 60px) / 2);
}
.site-content .information .bnr-category {
  margin: 60px auto 0;
}
.site-content .bnr-category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin: 80px auto 0;
}
.site-content .bnr-category > li {
  width: calc((100% - 30px) / 2);
  margin-bottom: 30px;
}
.site-content .bnr-category > li a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #000;
  overflow: hidden;
}
.site-content .bnr-category > li a .title {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  padding-left: 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.site-content .bnr-category > li a img {
  width: 100%;
  height: auto;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  opacity: 0.8;
}
.site-content .bnr-category > li a:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  opacity: 0.6;
}
.site-content .bnr-category > li a::after {
  display: inline-block;
  content: "";
  width: 26px;
  height: 26px;
  background: url(../images/ico_arrow_right_red.svg) no-repeat 0 0;
  background-size: 26px 26px;
  position: absolute;
  top: calc((100% - 26px) / 2);
  right: 20px;
}
.site-content .works {
  background: #002c6b;
  padding: 60px 0;
}
.site-content .works .case {
  margin-bottom: 40px;
}
.site-content .works .case .column {
  overflow: hidden;
  margin-bottom: 0;
}
.site-content .works .case .column a {
  position: relative;
  display: block;
  overflow: hidden;
}
.site-content .works .case .column a .thumbnail {
  position: relative;
}
.site-content .works .case .column a .thumbnail .caption {
  font-size: 18px;
  font-size: 1.8rem;
  background: rgba(255, 255, 255, 0.75);
  color: #002c6b;
  font-weight: bold;
  line-height: 1.6;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 10px 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: left;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.site-content .works .case .column a .thumbnail .caption span {
  position: relative;
  display: block;
  padding-right: 10px;
}
.site-content .works .case .column a .thumbnail .caption span::after {
  display: inline-block;
  content: "";
  width: 7px;
  height: 10px;
  background: url(../images/ico_arrow_right_blue.svg) no-repeat 0 0;
  background-size: 7px 10px;
  position: absolute;
  bottom: 8px;
  right: 0;
}
.site-content .works .case .column a .text {
  position: absolute;
  bottom: -240px;
  left: 0;
  z-index: 2;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 10px 20px;
  background: rgba(255, 255, 255, 0.75);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.site-content .works .case .column a .text .title {
  font-size: 18px;
  font-size: 1.8rem;
  color: #002c6b;
  font-weight: bold;
  line-height: 1.6;
}
.site-content .works .case .column a .text .title span {
  position: relative;
  display: block;
  padding-right: 10px;
}
.site-content .works .case .column a .text .title span::after {
  display: inline-block;
  content: "";
  width: 7px;
  height: 10px;
  background: url(../images/ico_arrow_right_blue.svg) no-repeat 0 0;
  background-size: 7px 10px;
  position: absolute;
  bottom: 8px;
  right: 0;
}
.site-content .works .case .column a .text .lead {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.6;
  margin: 0.4em 0 0;
  color: #333;
}
.site-content .works .case .column a:hover .thumbnail .caption {
  bottom: -240px;
}
.site-content .works .case .column a:hover .text {
  bottom: 0;
}
.site-content .identity {
  background: #f5f5f5;
  padding: 60px 0;
}
.site-content .identity .voice {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 920px;
  margin: 0 auto;
}
.site-content .identity .voice .author {
  text-align: center;
  margin-right: 50px;
}
.site-content .identity .voice .author .photo {
  width: 160px;
}
.site-content .identity .voice .author .name {
  margin-top: 0.8em;
}
.site-content .identity .voice .author .name span {
  display: block;
  line-height: 1.6;
}
.site-content .identity .voice .author .name span.sub {
  font-size: 14px;
  font-size: 1.4rem;
}
.site-content .identity .voice .author .name span.main {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
}
.site-content .identity .voice .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.site-content .identity .voice .text .title {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  margin: 10px 0 16px;
}
.site-content .identity .voice .text .lead {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: normal;
  line-height: 1.8;
  text-align: left;
}
.site-content .contact {
  padding: 60px 0;
}
.site-content .contact .contact-lead {
  font-size: 17px;
  font-size: 1.7rem;
  color: #002c6b;
  text-align: center;
  font-weight: bold;
  margin: -10px 0 20px;
}
.site-content .contact .information {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.site-content .contact .information > li.info-tel {
  color: #002c6b;
  margin-right: 60px;
}
.site-content .contact .information > li.info-tel .title {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 4px;
}
.site-content .contact .information > li.info-tel a {
  font-size: 47px;
  font-size: 4.7rem;
  font-family: "neue-haas-grotesk-display";
  font-weight: 600;
  display: block;
  letter-spacing: 0.05em;
  background: url(../images/ico_tel.svg) no-repeat left center;
  background-size: 29px 37px;
  padding-left: 40px;
  line-height: 40px;
  width: 100%;
}
.site-content .contact .information > li.info-mail a::before {
  content: "";
  background: url(../images/ico_mail_white.svg) no-repeat left center;
  background-size: 20px 16px;
  width: 20px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  margin: -2px 12px 0 0;
}
.site-content .contact .information > li.info-mail a:hover::before {
  content: "";
  background: url(../images/ico_mail_blue.svg) no-repeat left center;
  background-size: 20px 16px;
}
.site-content .lower-contact {
  background: #fafafa;
}
.site-content .lower-contact .contact {
  margin-bottom: 0;
}
.site-content .product-detail .introduction {
  font-size: 18px;
  font-size: 1.8rem;
  color: #999;
}
.site-content .product-detail .product-title {
  font-size: 20px;
  font-size: 2rem;
  background: #ededed;
  font-weight: bold;
  color: #002c6b;
  padding: 0.5em 0.8em 0.4em;
  margin: 40px 0 30px;
}
.site-content .product-detail .product-title__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.site-content .product-detail .product-title h3 {
  color: #002c6b;
  display: block;
}
.site-content .product-detail .product-title span.icon {
  display: block;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.site-content .product-detail .product-title span.icon img {
  width: 58px;
  margin: 0 5px;
  display: block;
}
.site-content .product-detail .product-title span.icon img.wide {
  width: 108px;
}
.site-content .product-detail h3.title {
  text-align: center;
  font-weight: bold;
  margin-bottom: 10px;
  font-size: 28px;
  font-size: 2.8rem;
}
.site-content .product-detail .h4-a {
  margin-bottom: 30px;
}
.site-content .product-detail hr {
  border: none;
  margin-top: 1.6em;
  border-bottom: 1px solid #eee;
}
.site-content .product-detail .name {
  padding: 0.8em 1em;
  margin-bottom: 20px;
  background: #fafafa;
  border-top: 2px solid #002c6b;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.site-content .product-detail .name span {
  display: inline-block;
}
.site-content .product-detail .name span.main {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  color: #002c6b;
}
.site-content .product-detail .name span.sub {
  font-size: 16px;
  font-size: 1.6rem;
  margin-left: 20px;
  font-family: "OSP-DIN";
  letter-spacing: 0.3em;
  text-transform: uppercase;
  font-weight: bold;
  color: #999;
}
.site-content .product-detail .name span.sub::before {
  content: "―";
  display: inline-block;
  margin-right: 20px;
}
.site-content .product-detail .product-detail-inner {
  zoom: 1;
  margin-left: -15px;
  margin-right: -15px;
}
.site-content .product-detail .product-detail-inner:before, .site-content .product-detail .product-detail-inner:after {
  content: "";
  display: table;
}
.site-content .product-detail .product-detail-inner:after {
  clear: both;
}
.site-content .product-detail .product-detail-inner .description {
  width: 45%;
  float: left;
  padding: 0 15px;
}
.site-content .product-detail .product-detail-inner .description #slider, .site-content .product-detail .product-detail-inner .description #slider2 {
  width: 100%;
}
.site-content .product-detail .product-detail-inner .description #slider .slide-item img, .site-content .product-detail .product-detail-inner .description #slider2 .slide-item img {
  width: 100%;
  height: auto;
}
.site-content .product-detail .product-detail-inner .description #thumbnail-list, .site-content .product-detail .product-detail-inner .description #thumbnail-list2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin: 10px 0 0 -10px;
}
.site-content .product-detail .product-detail-inner .description #thumbnail-list > li, .site-content .product-detail .product-detail-inner .description #thumbnail-list2 > li {
  width: calc((100% - 10px - 10px - 10px - 10px) / 4);
  cursor: pointer;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  text-align: center;
  margin: 0 0 0 10px;
}
.site-content .product-detail .product-detail-inner .description #thumbnail-list > li .sub, .site-content .product-detail .product-detail-inner .description #thumbnail-list2 > li .sub {
  font-size: 12px;
  font-size: 1.2rem;
  display: block;
  line-height: 1.6;
  margin-top: 0.5em;
}
.site-content .product-detail .product-detail-inner .description #thumbnail-list > li img, .site-content .product-detail .product-detail-inner .description #thumbnail-list2 > li img {
  width: 100%;
  height: auto;
}
.site-content .product-detail .product-detail-inner .description #thumbnail-list > li.thumbnail-item, .site-content .product-detail .product-detail-inner .description #thumbnail-list2 > li.thumbnail-item {
  opacity: 0.4;
}
.site-content .product-detail .product-detail-inner .description #thumbnail-list > li.thumbnail-current, .site-content .product-detail .product-detail-inner .description #thumbnail-list > li:hover, .site-content .product-detail .product-detail-inner .description #thumbnail-list2 > li.thumbnail-current, .site-content .product-detail .product-detail-inner .description #thumbnail-list2 > li:hover {
  opacity: 1;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.site-content .product-detail .product-detail-inner .description #thumbnail-list.column-6, .site-content .product-detail .product-detail-inner .description #thumbnail-list2.column-6 {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}
.site-content .product-detail .product-detail-inner .description #thumbnail-list.column-6 > li, .site-content .product-detail .product-detail-inner .description #thumbnail-list2.column-6 > li {
  width: calc((100% - 10px - 10px - 10px - 10px - 10px - 10px) / 6);
}
.site-content .product-detail .product-detail-inner .description #thumbnail-list.column-6 > li .sub, .site-content .product-detail .product-detail-inner .description #thumbnail-list2.column-6 > li .sub {
  text-align: left;
}
.site-content .product-detail .product-detail-inner .product-menu {
  margin-left: -5px;
  margin-right: -5px;
  margin-top: 10px;
  zoom: 1;
}
.site-content .product-detail .product-detail-inner .product-menu:before, .site-content .product-detail .product-detail-inner .product-menu:after {
  content: "";
  display: table;
}
.site-content .product-detail .product-detail-inner .product-menu:after {
  clear: both;
}
.site-content .product-detail .product-detail-inner .product-menu li {
  float: left;
  width: 25%;
  padding: 0 5px;
  font-size: 12px;
  font-size: 1.2rem;
  cursor: pointer;
}
.site-content .product-detail .product-detail-inner .product-menu li img {
  opacity: 0.5;
}
.site-content .product-detail .product-detail-inner .product-menu li.slick-current img {
  opacity: 1;
}
.site-content .product-detail .product-detail-inner .product-menu li:focus {
  outline: 0;
}
.site-content .product-detail .product-detail-inner .text {
  width: 55%;
  float: left;
  padding: 0 15px;
}
.site-content .product-detail .product-detail-inner .text .catch {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  border-top: 2px solid #002c6b;
  border-bottom: 2px solid #002c6b;
  display: inline-block;
  padding: 0.4em 0;
  margin-bottom: 20px;
}
.site-content .product-detail .product-detail-inner .text .info {
  padding: 1em 0;
  margin-bottom: 1.6em;
  border-bottom: 1px solid #002c6b;
}
.site-content .product-detail .product-detail-inner .text .info h3 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  position: relative;
}
.site-content .product-detail .product-detail-inner .text .info h3 span {
  display: inline-block;
  background: #fff;
  padding-right: 0.5em;
}
.site-content .product-detail .product-detail-inner .text .info h3 span::before {
  content: "［";
}
.site-content .product-detail .product-detail-inner .text .info h3 span::after {
  content: "］";
}
.site-content .product-detail .product-detail-inner .text .info h3::after {
  display: block;
  content: " ";
  width: 100%;
  height: 1px;
  background: #002c6b;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -1;
}
.site-content .product-detail .product-detail-inner .text .info ul.list li {
  line-height: 1.3;
}
.site-content .product-detail ul.list-color {
  margin-left: -10px;
  margin-right: -10px;
  zoom: 1;
}
.site-content .product-detail ul.list-color:before, .site-content .product-detail ul.list-color:after {
  content: "";
  display: table;
}
.site-content .product-detail ul.list-color:after {
  clear: both;
}
.site-content .product-detail ul.list-color li {
  float: left;
  width: 20%;
  padding: 0 10px;
  font-size: 14px;
  font-size: 1.4rem;
}
.site-content .other-product {
  background: #fafafa;
  padding: 50px 0 100px;
}
.site-content .other-product .inner {
  max-width: 1100px;
  margin: 0 auto;
}
.site-content .other-product .inner .title {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.1em;
  margin-bottom: 30px;
}
.site-content .other-product .inner .product-list-b {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.site-content .other-product .inner .product-list-b li {
  width: calc((100% - 30px - 30px - 30px) / 4);
  height: 100%;
  min-height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.site-content .other-product .inner .product-list-b li a {
  display: block;
  background: #fff;
  color: #333;
  width: 100%;
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.site-content .other-product .inner .product-list-b li a .image img {
  width: 100%;
  height: auto;
}
.site-content .other-product .inner .product-list-b li a .text {
  padding: 20px;
}
.site-content .other-product .inner .product-list-b li a .text .name {
  font-size: 16px;
  font-size: 1.6rem;
  color: #002c6b;
  font-weight: bold;
}
.site-content .other-product .inner .product-list-b li a .text .catch {
  font-size: 12px;
  font-size: 1.2rem;
}
.site-content .other-product .inner .product-list-b li a:hover {
  text-decoration: none;
  background: #002c6b;
  color: #fff;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.site-content .other-product .inner .product-list-b li a:hover .text .name {
  color: #fff;
}
.site-content .other-product .inner .product-list-b .slick-dots {
  position: absolute;
  right: 0;
  bottom: -50px;
  left: 0;
  width: 100%;
  text-align: center;
  z-index: 3;
}
.site-content .other-product .inner .product-list-b .slick-dots li {
  display: inline;
  margin: 0;
}
.site-content .other-product .inner .product-list-b .slick-dots li button {
  color: transparent;
  background: transparent;
  border: 0;
  font-size: 0;
  line-height: 0;
  width: 20px;
  height: 20px;
  outline: none;
}
.site-content .other-product .inner .product-list-b .slick-dots li button::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  background: #ccc;
  border-radius: 50%;
}
.site-content .other-product .inner .product-list-b .slick-dots li.slick-active button::before {
  background: #002c6b;
}
.site-content .other-product .inner .product-list-b .slider-prev, .site-content .other-product .inner .product-list-b .slider-next {
  position: absolute;
  top: calc((100% - 50px) / 2);
  cursor: pointer;
  z-index: 2;
}
.site-content .other-product .inner .product-list-b .slider-prev {
  left: -60px;
}
.site-content .other-product .inner .product-list-b .slider-next {
  right: -60px;
}
.site-content .case-study {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  margin-bottom: 30px;
}
.site-content .case-study > li {
  width: calc((100% - 100px) / 2);
}
.site-content .case-study > li img {
  width: 100%;
  height: auto;
}
.site-content .case-study::after {
  content: "";
  background: url(../images/ico_arrow_a.svg) no-repeat 0 0;
  background-size: 80px 40px;
  display: block;
  position: absolute;
  top: calc((100% - 40px) / 2);
  left: calc((100% - 80px) / 2);
  width: 80px;
  height: 40px;
}

@media screen and (max-width: 767px) {
  /* -----------------------------------------------
  共通
  -------------------------------------------------- */
  .site-content {
    /* 共通 */
    /* お知らせ・新着情報 */
  }
  .site-content.-parking, .site-content.-exterior, .site-content.-spacedesign, .site-content.-coinparking, .site-content.-living_service {
    /* 概要 */
    /* バナーリスト */
    /* 課題解決事例 */
    /* 事業部の想い・理念 */
    /* お問い合わせ */
    /* その他の製品 */
    /* ビフォー・アフター */
  }
  .site-content.-parking .page-title, .site-content.-exterior .page-title, .site-content.-spacedesign .page-title, .site-content.-coinparking .page-title, .site-content.-living_service .page-title {
    margin-top: 0;
  }
  .site-content.-parking .page-title .main, .site-content.-exterior .page-title .main, .site-content.-spacedesign .page-title .main, .site-content.-coinparking .page-title .main, .site-content.-living_service .page-title .main {
    font-size: 21px;
    font-size: 2.1rem;
    padding-top: 0;
  }
  .site-content.-parking .intro, .site-content.-exterior .intro, .site-content.-spacedesign .intro, .site-content.-coinparking .intro, .site-content.-living_service .intro {
    padding: 0 15px;
    margin-bottom: 20px;
  }
  .site-content.-parking .intro .intro-lead, .site-content.-exterior .intro .intro-lead, .site-content.-spacedesign .intro .intro-lead, .site-content.-coinparking .intro .intro-lead, .site-content.-living_service .intro .intro-lead {
    margin-bottom: 20px;
  }
  .site-content.-parking .intro .point, .site-content.-exterior .intro .point, .site-content.-spacedesign .intro .point, .site-content.-coinparking .intro .point, .site-content.-living_service .intro .point {
    display: block;
    margin-bottom: 20px;
  }
  .site-content.-parking .intro .point .column, .site-content.-exterior .intro .point .column, .site-content.-spacedesign .intro .point .column, .site-content.-coinparking .intro .point .column, .site-content.-living_service .intro .point .column {
    width: 100%;
    margin-bottom: 16px;
  }
  .site-content.-parking .intro .point .column .h3-a, .site-content.-exterior .intro .point .column .h3-a, .site-content.-spacedesign .intro .point .column .h3-a, .site-content.-coinparking .intro .point .column .h3-a, .site-content.-living_service .intro .point .column .h3-a {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .site-content.-parking .intro .point .column .lead, .site-content.-exterior .intro .point .column .lead, .site-content.-spacedesign .intro .point .column .lead, .site-content.-coinparking .intro .point .column .lead, .site-content.-living_service .intro .point .column .lead {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .site-content.-parking .bnr-category, .site-content.-exterior .bnr-category, .site-content.-spacedesign .bnr-category, .site-content.-coinparking .bnr-category, .site-content.-living_service .bnr-category {
    display: block;
    margin: 20px auto 0;
  }
  .site-content.-parking .bnr-category > li, .site-content.-exterior .bnr-category > li, .site-content.-spacedesign .bnr-category > li, .site-content.-coinparking .bnr-category > li, .site-content.-living_service .bnr-category > li {
    width: 100%;
    margin-bottom: 20px;
  }
  .site-content.-parking .bnr-category > li a .title, .site-content.-exterior .bnr-category > li a .title, .site-content.-spacedesign .bnr-category > li a .title, .site-content.-coinparking .bnr-category > li a .title, .site-content.-living_service .bnr-category > li a .title {
    font-size: 18px;
    font-size: 1.8rem;
    padding-left: 20px;
  }
  .site-content.-parking .bnr-category > li a::after, .site-content.-exterior .bnr-category > li a::after, .site-content.-spacedesign .bnr-category > li a::after, .site-content.-coinparking .bnr-category > li a::after, .site-content.-living_service .bnr-category > li a::after {
    display: inline-block;
    content: "";
    width: 16px;
    height: 16px;
    background: url(../images/ico_arrow_right_red.svg) no-repeat 0 0;
    background-size: 16px 16px;
    top: calc((100% - 16px) / 2);
  }
  .site-content.-parking .bnr-category > li:last-child, .site-content.-exterior .bnr-category > li:last-child, .site-content.-spacedesign .bnr-category > li:last-child, .site-content.-coinparking .bnr-category > li:last-child, .site-content.-living_service .bnr-category > li:last-child {
    margin-bottom: 0;
  }
  .site-content.-parking .works, .site-content.-exterior .works, .site-content.-spacedesign .works, .site-content.-coinparking .works, .site-content.-living_service .works {
    padding: 20px;
  }
  .site-content.-parking .works .case, .site-content.-exterior .works .case, .site-content.-spacedesign .works .case, .site-content.-coinparking .works .case, .site-content.-living_service .works .case {
    display: block;
    margin-bottom: 0;
  }
  .site-content.-parking .works .case .column, .site-content.-exterior .works .case .column, .site-content.-spacedesign .works .case .column, .site-content.-coinparking .works .case .column, .site-content.-living_service .works .case .column {
    width: 100%;
    margin-bottom: 20px;
  }
  .site-content.-parking .works .case .column a .thumbnail .caption, .site-content.-exterior .works .case .column a .thumbnail .caption, .site-content.-spacedesign .works .case .column a .thumbnail .caption, .site-content.-coinparking .works .case .column a .thumbnail .caption, .site-content.-living_service .works .case .column a .thumbnail .caption {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 10px;
  }
  .site-content.-parking .identity, .site-content.-exterior .identity, .site-content.-spacedesign .identity, .site-content.-coinparking .identity, .site-content.-living_service .identity {
    padding: 20px;
  }
  .site-content.-parking .identity .voice, .site-content.-exterior .identity .voice, .site-content.-spacedesign .identity .voice, .site-content.-coinparking .identity .voice, .site-content.-living_service .identity .voice {
    display: block;
    max-width: 100%;
  }
  .site-content.-parking .identity .voice .author, .site-content.-exterior .identity .voice .author, .site-content.-spacedesign .identity .voice .author, .site-content.-coinparking .identity .voice .author, .site-content.-living_service .identity .voice .author {
    margin-right: 0;
  }
  .site-content.-parking .identity .voice .author .name, .site-content.-exterior .identity .voice .author .name, .site-content.-spacedesign .identity .voice .author .name, .site-content.-coinparking .identity .voice .author .name, .site-content.-living_service .identity .voice .author .name {
    margin-top: 0.8em;
  }
  .site-content.-parking .identity .voice .author .name span.sub, .site-content.-exterior .identity .voice .author .name span.sub, .site-content.-spacedesign .identity .voice .author .name span.sub, .site-content.-coinparking .identity .voice .author .name span.sub, .site-content.-living_service .identity .voice .author .name span.sub {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .site-content.-parking .identity .voice .author .name span.main, .site-content.-exterior .identity .voice .author .name span.main, .site-content.-spacedesign .identity .voice .author .name span.main, .site-content.-coinparking .identity .voice .author .name span.main, .site-content.-living_service .identity .voice .author .name span.main {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .site-content.-parking .identity .voice .text .title, .site-content.-exterior .identity .voice .text .title, .site-content.-spacedesign .identity .voice .text .title, .site-content.-coinparking .identity .voice .text .title, .site-content.-living_service .identity .voice .text .title {
    font-size: 18px;
    font-size: 1.8rem;
    margin: 14px 0 10px;
  }
  .site-content.-parking .identity .voice .text .lead, .site-content.-exterior .identity .voice .text .lead, .site-content.-spacedesign .identity .voice .text .lead, .site-content.-coinparking .identity .voice .text .lead, .site-content.-living_service .identity .voice .text .lead {
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 0;
  }
  .site-content.-parking .contact, .site-content.-exterior .contact, .site-content.-spacedesign .contact, .site-content.-coinparking .contact, .site-content.-living_service .contact {
    padding: 20px;
    margin-bottom: 0;
  }
  .site-content.-parking .contact .contact-lead, .site-content.-exterior .contact .contact-lead, .site-content.-spacedesign .contact .contact-lead, .site-content.-coinparking .contact .contact-lead, .site-content.-living_service .contact .contact-lead {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .site-content.-parking .contact .information, .site-content.-exterior .contact .information, .site-content.-spacedesign .contact .information, .site-content.-coinparking .contact .information, .site-content.-living_service .contact .information {
    display: block;
    padding: 0;
  }
  .site-content.-parking .contact .information > li.info-tel, .site-content.-exterior .contact .information > li.info-tel, .site-content.-spacedesign .contact .information > li.info-tel, .site-content.-coinparking .contact .information > li.info-tel, .site-content.-living_service .contact .information > li.info-tel {
    text-align: center;
    margin: 0 auto 20px;
  }
  .site-content.-parking .contact .information > li.info-tel .title, .site-content.-exterior .contact .information > li.info-tel .title, .site-content.-spacedesign .contact .information > li.info-tel .title, .site-content.-coinparking .contact .information > li.info-tel .title, .site-content.-living_service .contact .information > li.info-tel .title {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 0;
  }
  .site-content.-parking .contact .information > li.info-tel a, .site-content.-exterior .contact .information > li.info-tel a, .site-content.-spacedesign .contact .information > li.info-tel a, .site-content.-coinparking .contact .information > li.info-tel a, .site-content.-living_service .contact .information > li.info-tel a {
    font-size: 30px;
    font-size: 3rem;
    background-size: 24px 30px;
    width: 75%;
    padding-left: 20px;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .site-content.-parking .contact .information > li.info-mail, .site-content.-exterior .contact .information > li.info-mail, .site-content.-spacedesign .contact .information > li.info-mail, .site-content.-coinparking .contact .information > li.info-mail, .site-content.-living_service .contact .information > li.info-mail {
    text-align: center;
  }
  .site-content.-parking .other-product, .site-content.-exterior .other-product, .site-content.-spacedesign .other-product, .site-content.-coinparking .other-product, .site-content.-living_service .other-product {
    padding: 20px 0 50px;
  }
  .site-content.-parking .other-product .inner, .site-content.-exterior .other-product .inner, .site-content.-spacedesign .other-product .inner, .site-content.-coinparking .other-product .inner, .site-content.-living_service .other-product .inner {
    max-width: 100%;
  }
  .site-content.-parking .other-product .inner .title, .site-content.-exterior .other-product .inner .title, .site-content.-spacedesign .other-product .inner .title, .site-content.-coinparking .other-product .inner .title, .site-content.-living_service .other-product .inner .title {
    font-size: 24px;
    font-size: 2.4rem;
    margin-bottom: 20px;
  }
  .site-content.-parking .other-product .inner .product-list-b, .site-content.-exterior .other-product .inner .product-list-b, .site-content.-spacedesign .other-product .inner .product-list-b, .site-content.-coinparking .other-product .inner .product-list-b, .site-content.-living_service .other-product .inner .product-list-b {
    display: block;
  }
  .site-content.-parking .other-product .inner .product-list-b li, .site-content.-exterior .other-product .inner .product-list-b li, .site-content.-spacedesign .other-product .inner .product-list-b li, .site-content.-coinparking .other-product .inner .product-list-b li, .site-content.-living_service .other-product .inner .product-list-b li {
    width: 100%;
    margin: 0 10px;
  }
  .site-content.-parking .other-product .inner .product-list-b li a .text, .site-content.-exterior .other-product .inner .product-list-b li a .text, .site-content.-spacedesign .other-product .inner .product-list-b li a .text, .site-content.-coinparking .other-product .inner .product-list-b li a .text, .site-content.-living_service .other-product .inner .product-list-b li a .text {
    padding: 14px 20px;
  }
  .site-content.-parking .other-product .inner .product-list-b .slick-dots, .site-content.-exterior .other-product .inner .product-list-b .slick-dots, .site-content.-spacedesign .other-product .inner .product-list-b .slick-dots, .site-content.-coinparking .other-product .inner .product-list-b .slick-dots, .site-content.-living_service .other-product .inner .product-list-b .slick-dots {
    bottom: -30px;
  }
  .site-content.-parking .other-product .inner .product-list-b .slider-prev, .site-content.-parking .other-product .inner .product-list-b .slider-next, .site-content.-exterior .other-product .inner .product-list-b .slider-prev, .site-content.-exterior .other-product .inner .product-list-b .slider-next, .site-content.-spacedesign .other-product .inner .product-list-b .slider-prev, .site-content.-spacedesign .other-product .inner .product-list-b .slider-next, .site-content.-coinparking .other-product .inner .product-list-b .slider-prev, .site-content.-coinparking .other-product .inner .product-list-b .slider-next, .site-content.-living_service .other-product .inner .product-list-b .slider-prev, .site-content.-living_service .other-product .inner .product-list-b .slider-next {
    display: none !important;
  }
  .site-content.-parking .case-study, .site-content.-exterior .case-study, .site-content.-spacedesign .case-study, .site-content.-coinparking .case-study, .site-content.-living_service .case-study {
    margin-bottom: 20px;
  }
  .site-content.-parking .case-study > li, .site-content.-exterior .case-study > li, .site-content.-spacedesign .case-study > li, .site-content.-coinparking .case-study > li, .site-content.-living_service .case-study > li {
    width: calc((100% - 60px) / 2);
  }
  .site-content.-parking .case-study > li .caption, .site-content.-exterior .case-study > li .caption, .site-content.-spacedesign .case-study > li .caption, .site-content.-coinparking .case-study > li .caption, .site-content.-living_service .case-study > li .caption {
    font-size: 8px;
    font-size: 0.8rem;
  }
  .site-content.-parking .case-study::after, .site-content.-exterior .case-study::after, .site-content.-spacedesign .case-study::after, .site-content.-coinparking .case-study::after, .site-content.-living_service .case-study::after {
    background-size: 40px 20px;
    top: calc((100% - 20px) / 2);
    left: calc((100% - 40px) / 2);
    width: 40px;
    height: 20px;
  }
  .site-content .information {
    padding: 20px;
  }
  .site-content .information .info {
    display: block;
  }
  .site-content .information .info .head .title span.jp {
    font-size: 20px;
    font-size: 2rem;
  }
  .site-content .information .info .head .title span.en {
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.2em;
    margin-left: 10px;
  }
  .site-content .information .info .head .read-more a {
    font-size: 10px;
    font-size: 1rem;
  }
  .site-content .information .info .info-list > li a {
    padding: 10px 20px 10px 0;
  }
  .site-content .information .info .info-list > li a .article .detail span.new {
    font-size: 10px;
    font-size: 1rem;
    margin-right: 6px;
  }
  .site-content .information .info .info-list > li a .article .detail span.date {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .site-content .information .info .info-list > li a .article .title {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .site-content .information .info .info-list > li a:after {
    background-size: 8px 10px;
    width: 8px;
    height: 10px;
    top: calc((100% - 10px) / 2);
    right: 0;
  }
  .site-content .information .info .topics {
    width: 100%;
    margin-bottom: 20px;
  }
  .site-content .information .info .news {
    width: 100%;
  }
  .site-content .information .bnr-category {
    margin: 20px auto 0;
  }
  /* -----------------------------------------------
  パーキング事業部
  -------------------------------------------------- */
  .site-content {
    /* パーキング事業部 */
  }
  .site-content.-parking {
    /* ヨコイの立駐製品の強みへ */
    /* お問い合わせ */
    /* 立駐製品紹介 */
    /* メンテナンス */
  }
  .site-content.-parking .intro {
    display: block;
    padding: 20px;
    /* サイドナビ - 地震・災害時 */
    /* サイドナビ - クラブYDL */
  }
  .site-content.-parking .intro .text {
    margin: 0 auto 20px;
  }
  .site-content.-parking .intro .text p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.6;
  }
  .site-content.-parking .intro .text .list-a {
    margin: 10px 0 !important;
  }
  .site-content.-parking .intro .text .list-a > li {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .site-content.-parking .intro .announce {
    max-width: 100%;
  }
  .site-content.-parking .intro .announce .emergency .title {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .site-content.-parking .intro .announce .emergency .inquiry {
    font-size: 14px;
    font-size: 1.4rem;
    margin-bottom: 6px;
  }
  .site-content.-parking .intro .announce .emergency .tel .sub {
    font-size: 16px;
    font-size: 1.6rem;
    margin-right: 10px;
  }
  .site-content.-parking .intro .announce .emergency .tel a {
    font-size: 26px;
    font-size: 2.6rem;
  }
  .site-content.-parking .intro .club-ydl .title {
    font-size: 20px;
    font-size: 2rem;
  }
  .site-content.-parking .intro .club-ydl .box {
    padding: 14px 20px;
  }
  .site-content.-parking .feature {
    padding: 20px;
  }
  .site-content.-parking .feature .point {
    display: block;
  }
  .site-content.-parking .feature .point .column {
    width: 100%;
    margin-bottom: 20px;
  }
  .site-content.-parking .contact {
    margin-bottom: 0;
  }
  .site-content.-parking .contact .information {
    padding: 0;
  }
  .site-content.-parking .contact .information > li {
    display: block;
  }
  .site-content.-parking .contact .information > li.info-tel {
    margin-bottom: 20px;
  }
  .site-content.-parking .contact .information > li.info-tel .title {
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: normal;
    margin: 0;
  }
  .site-content.-parking .contact .information > li.info-tel a {
    font-size: 30px;
    font-size: 3rem;
    background-size: 24px 30px;
    width: 75%;
    padding-left: 20px;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .site-content.-parking .contact .information > li.info-tel .sub {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .site-content.-parking .contact .information > li.info-mail .title {
    margin: 0 0 10px;
  }
  .site-content.-parking .product {
    margin-bottom: 20px;
    /* 製品一覧 */
    /* 製品詳細 */
    /* 参考図 */
    /* 動作説明 */
  }
  .site-content.-parking .product .product-list-a {
    display: block;
    width: 100%;
    margin: -20px 0 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .site-content.-parking .product .product-list-a > li {
    width: 100%;
    margin: 20px 0 0;
  }
  .site-content.-parking .product .product-list-a > li a .label-list {
    margin-bottom: 16px;
  }
  .site-content.-parking .product .product-list-a > li a .label-list > li {
    margin-left: 4px;
  }
  .site-content.-parking .product .product-list-a > li a .label-list > li .label {
    font-size: 8px;
    font-size: 0.8rem;
    padding: 0.3em 0.6em;
  }
  .site-content.-parking .product .product-list-a > li a .image {
    margin-bottom: 16px;
  }
  .site-content.-parking .product .product-list-a > li a .description {
    margin-bottom: 16px;
  }
  .site-content.-parking .product .product-detail .name {
    display: block;
    margin-bottom: 16px;
  }
  .site-content.-parking .product .product-detail .name span.main {
    font-size: 21px;
    font-size: 2.1rem;
  }
  .site-content.-parking .product .product-detail .name span.sub {
    font-size: 12px;
    font-size: 1.2rem;
    margin-left: 0;
  }
  .site-content.-parking .product .product-detail .name span.sub::before {
    margin-right: 10px;
  }
  .site-content.-parking .product .product-detail .label-list {
    margin-bottom: 20px;
  }
  .site-content.-parking .product .product-detail .label-list > li {
    margin-left: 4px;
  }
  .site-content.-parking .product .product-detail .label-list > li .label {
    font-size: 8px;
    font-size: 0.8rem;
    padding: 0.3em 0.8em;
  }
  .site-content.-parking .product .product-detail .product-detail-inner {
    display: block;
  }
  .site-content.-parking .product .product-detail .product-detail-inner .description {
    width: 100%;
    float: none;
    margin-right: 0;
  }
  .site-content.-parking .product .product-detail .product-detail-inner .description .image {
    margin-bottom: 20px;
  }
  .site-content.-parking .product .product-detail .product-detail-inner .description .download-list {
    margin-bottom: 20px;
  }
  .site-content.-parking .product .product-detail .product-detail-inner .description .download-list > li {
    width: calc((100% - 10px) / 2);
  }
  .site-content.-parking .product .product-detail .product-detail-inner .description .download-list > li .button-a {
    font-size: 10px;
    font-size: 1rem;
  }
  .site-content.-parking .product .product-detail .product-detail-inner .text {
    width: 100%;
    float: none;
  }
  .site-content.-parking .product .product-detail .product-detail-inner .text .catch {
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 16px;
  }
  .site-content.-parking .product .product-detail .product-detail-inner .text .box-a {
    font-size: 14px;
    font-size: 1.4rem;
    padding: 20px;
  }
  .site-content.-parking .product .product-detail .product-detail-inner .text .box-a .list-a > li {
    text-indent: -1.2em;
  }
  .site-content.-parking .product .attention {
    padding: 0 20px;
  }
  .site-content.-parking .product .attention .title {
    margin-bottom: 10px;
  }
  .site-content.-parking .product .attention .title span.main {
    font-size: 21px;
    font-size: 2.1rem;
  }
  .site-content.-parking .product .attention .title span.sub {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .site-content.-parking .product .attention .image {
    max-width: 100%;
  }
  .site-content.-parking .product .attention .box-b {
    max-width: 100%;
    margin: 20px auto 0;
  }
  .site-content.-parking .product .attention .attention-list > li {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .site-content.-parking .product .how-to {
    display: block;
  }
  .site-content.-parking .product .how-to .video {
    margin: 0 0 14px;
  }
  .site-content.-parking .product .how-to .video video {
    width: 100%;
    height: auto;
  }
  .site-content.-parking .maintenance {
    margin-bottom: 20px;
    /* メンテナンスに関するお問い合わせ */
    /**/
  }
  .site-content.-parking .maintenance .cover {
    display: block;
    max-width: 100%;
    margin: 0 auto 20px;
  }
  .site-content.-parking .maintenance .cover .photo {
    width: 100%;
  }
  .site-content.-parking .maintenance .cover .text {
    width: calc(100% - 40px);
    padding: 20px;
    margin: -40px auto 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    z-index: 2;
  }
  .site-content.-parking .maintenance .cover .text .catch {
    font-size: 21px;
    font-size: 2.1rem;
    margin-bottom: 12px;
  }
  .site-content.-parking .maintenance .cover .text .catch::after {
    margin: 12px 0 0;
  }
  .site-content.-parking .maintenance .cover .text .lead {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .site-content.-parking .maintenance .message {
    width: 100%;
    padding: 20px;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .site-content.-parking .maintenance .message p {
    margin-bottom: 10px;
    text-align: left !important;
  }
  .site-content.-parking .maintenance .message p br {
    display: none;
  }
  .site-content.-parking .maintenance .bnr-category {
    width: 100%;
    margin: 20px auto 0;
  }
  .site-content.-parking .maintenance .bnr-category > li {
    margin-bottom: 20px !important;
  }
  .site-content.-parking .maintenance.-contact {
    padding: 20px 0 1px;
  }
  .site-content.-parking .maintenance.-contact .title {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 16px;
  }
  .site-content.-parking .maintenance.-contact .panel-wrap {
    display: block;
  }
  .site-content.-parking .maintenance.-contact .panel-wrap .panel {
    width: 100%;
    padding: 20px;
    margin-bottom: 20px;
  }
  /* -----------------------------------------------
  エクステリア事業部
  -------------------------------------------------- */
  #business .site-content {
    /* エクステリア事業部 */
  }
  #business .site-content.-exterior {
    /* 製品案内 */
  }
  #business .site-content.-exterior .intro .bnr-category {
    margin-bottom: 20px;
  }
  #business .site-content.-exterior .product {
    margin-bottom: 20px;
    /* 製品一覧 */
    /* 製品名 */
    /* 製品詳細 */
  }
  #business .site-content.-exterior .product .product-list-c {
    display: block;
    margin: -20px 0 0 0;
  }
  #business .site-content.-exterior .product .product-list-c > li {
    width: 100%;
    margin: 20px 0 0 0;
  }
  #business .site-content.-exterior .product .product-list-c > li a .detail {
    display: block;
  }
  #business .site-content.-exterior .product .product-list-c > li a .detail .image {
    max-width: 100%;
    margin: 0 0 10px;
  }
  #business .site-content.-exterior .product .product-list-c > li a .text .lead {
    font-size: 14px;
    font-size: 1.4rem;
  }
  #business .site-content.-exterior .product .product-list-c > li a .text .button-a {
    min-width: 100%;
  }
  #business .site-content.-exterior .product .product-title {
    font-size: 18px;
    font-size: 1.8rem;
  }
  #business .site-content.-exterior .product .product-title__inner {
    display: block;
  }
  #business .site-content.-exterior .product .product-title h3 {
    line-height: 1.3;
  }
  #business .site-content.-exterior .product .product-title span.icon {
    margin-left: 0;
  }
  #business .site-content.-exterior .product .product-title span.icon img {
    width: 40px;
  }
  #business .site-content.-exterior .product .product-title span.icon img.wide {
    width: 88px;
  }
  #business .site-content.-exterior .product .product-title span.icon img:first-child {
    margin-left: 0;
  }
  #business .site-content.-exterior .product .product-detail .h4-a {
    margin-bottom: 20px;
  }
  #business .site-content.-exterior .product .product-detail .name {
    margin-bottom: 20px;
  }
  #business .site-content.-exterior .product .product-detail .name span.main {
    font-size: 22px;
    font-size: 2.2rem;
  }
  #business .site-content.-exterior .product .product-detail .name span.sub {
    font-size: 14px;
    font-size: 1.4rem;
    margin-left: 10px;
    letter-spacing: 0.2em;
  }
  #business .site-content.-exterior .product .product-detail .name span.sub::before {
    margin-right: 10px;
  }
  #business .site-content.-exterior .product .product-detail .product-detail-inner {
    display: block;
  }
  #business .site-content.-exterior .product .product-detail .product-detail-inner .description {
    width: 100%;
    margin: 0 0 16px;
  }
  #business .site-content.-exterior .product .product-detail .product-detail-inner .description #thumbnail-list.column-6, #business .site-content.-exterior .product .product-detail .product-detail-inner .description #thumbnail-list2.column-6 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: -10px;
  }
  #business .site-content.-exterior .product .product-detail .product-detail-inner .description #thumbnail-list.column-6 > li, #business .site-content.-exterior .product .product-detail .product-detail-inner .description #thumbnail-list2.column-6 > li {
    width: calc((100% - 10px - 10px - 10px) / 3);
    margin-bottom: 10px;
  }
  #business .site-content.-exterior .product .product-detail .product-detail-inner .text {
    width: 100%;
  }
  #business .site-content.-exterior .product .product-detail .product-detail-inner .text .catch {
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 16px;
  }
  #business .site-content.-exterior .product .product-detail ul.list-color li {
    width: 33.3333%;
    line-height: 1.3;
  }
  /* -----------------------------------------------
  空間デザイン事業部
  -------------------------------------------------- */
  #business .site-content {
    /* 空間デザイン事業部 */
  }
  /* -----------------------------------------------
  コインパーキング事業部
  -------------------------------------------------- */
  #business .site-content {
    /* コインパーキング事業部 */
  }
  #business .site-content.-coinparking {
    /* お問い合わせ */
  }
  #business .site-content.-coinparking .intro {
    /* 土地オーナー様へ */
    /* */
  }
  #business .site-content.-coinparking .intro .h2-d {
    font-size: 18px;
    font-size: 1.8rem;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
  }
  #business .site-content.-coinparking .intro .proposal {
    padding: 20px;
    margin-bottom: 20px;
  }
  #business .site-content.-coinparking .intro .proposal .title {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 0.4em 0.8em;
    margin-bottom: 10px;
  }
  #business .site-content.-coinparking .intro .proposal .wrap {
    display: block;
  }
  #business .site-content.-coinparking .intro .proposal .wrap .photo {
    max-width: 100%;
    margin: 0 auto 16px;
  }
  #business .site-content.-coinparking .intro .proposal .wrap .proposal-list > li {
    font-size: 16px;
    font-size: 1.6rem;
    padding-left: 30px;
    margin-bottom: 10px;
  }
  #business .site-content.-coinparking .intro .proposal .wrap .proposal-list > li::before {
    background-size: 20px 19px;
    width: 20px;
    height: 19px;
    top: calc((100% - 19px) / 2);
  }
  #business .site-content.-coinparking .intro .how-to {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 20px 0 -10px;
  }
  #business .site-content.-coinparking .intro .how-to .group {
    width: 100%;
    padding: 10px;
    margin-bottom: 10px;
  }
  #business .site-content.-coinparking .intro .how-to .group .photo {
    margin-bottom: 10px;
  }
  #business .site-content.-coinparking .intro .how-to .group .title {
    font-size: 14px;
    font-size: 1.4rem;
    padding: 0.4em 0.8em;
    margin-bottom: 10px;
  }
  #business .site-content.-coinparking .intro .how-to .group .lead {
    font-size: 12px;
    font-size: 1.2rem;
  }
  #business .site-content.-coinparking .intro .how-to .group .button-a {
    font-size: 12px;
    font-size: 1.2rem;
    min-width: 100%;
  }
  #business .site-content.-coinparking .contact {
    margin-bottom: 0;
  }
  #business .site-content.-coinparking .contact .information > li.info-tel {
    margin: 0 0 20px;
  }
  #business .site-content.-coinparking .contact .information > li.info-tel .sub {
    font-size: 14px;
    font-size: 1.4rem;
    text-align: center;
  }
  #business .site-content.-coinparking .contact .info-mail {
    text-align: center;
    margin: 0 auto;
  }
  /* -----------------------------------------------
  生活サービス事業部
  -------------------------------------------------- */
  #business .site-content {
    /* 生活サービス事業部 */
  }
  #business .site-content.-living_service .point > li {
    margin-bottom: 20px !important;
  }
}
.-coinparking {
  /* コインパーキング事業部TOP */
  /* お問い合わせ */
  /* コインパーキング事業部 デザインページ */
}
.-coinparking .page-title {
  background: url(../coinparking/images/page_cover_coinparking.jpg) no-repeat center center;
  background-size: cover;
}
.-coinparking .page-title.owner {
  background-image: url(../coinparking/owner/img/page_cover_owner.jpg) !important;
}
.-coinparking .page-title.management {
  background-image: url(../coinparking/management/img/page_cover_management.jpg) !important;
}
.-coinparking .page-title.trouble {
  background-image: url(../coinparking/trouble/img/page_cover_trouble.jpg) !important;
}
.-coinparking .intro {
  /* ナイスパーキング - 迷惑駐車・不正駐車 */
  /* 土地オーナー様へ */
  /* */
}
.-coinparking .intro .nice-parking, .-coinparking .intro .trouble {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.-coinparking .intro .nice-parking .text, .-coinparking .intro .trouble .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-right: 30px;
}
.-coinparking .intro .nice-parking .bnr-nice-parking, .-coinparking .intro .trouble .bnr-nice-parking {
  width: 100%;
  max-width: 480px;
  height: 100%;
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #f5f5f5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.-coinparking .intro .nice-parking .bnr-nice-parking img, .-coinparking .intro .trouble .bnr-nice-parking img {
  max-width: 440px;
}
.-coinparking .intro .nice-parking .photo, .-coinparking .intro .trouble .photo {
  max-width: 390px;
}
.-coinparking .intro .nice-parking .photo img, .-coinparking .intro .trouble .photo img {
  width: 100%;
  height: auto;
}
.-coinparking .intro .trouble {
  margin-top: 80px;
}
.-coinparking .intro .proposal {
  background: #fff462;
  padding: 20px;
  margin-bottom: 30px;
}
.-coinparking .intro .proposal .title {
  font-size: 26px;
  font-size: 2.6rem;
  background: #2baae2;
  font-weight: bold;
  color: #fff;
  padding: 0.4em 1em;
  margin-bottom: 20px;
  border-radius: 10px;
}
.-coinparking .intro .proposal .wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.-coinparking .intro .proposal .wrap .photo {
  max-width: 360px;
  margin-right: 20px;
}
.-coinparking .intro .proposal .wrap .photo img {
  width: 100%;
  height: auto;
}
.-coinparking .intro .proposal .wrap .proposal-list > li {
  font-size: 20px;
  font-size: 2rem;
  color: #002c6b;
  font-weight: bold;
  line-height: 1.4;
  padding-left: 50px;
  margin-bottom: 30px;
  position: relative;
}
.-coinparking .intro .proposal .wrap .proposal-list > li::before {
  content: "";
  background: url(../images/ico_checkmark.svg) no-repeat left center;
  background-size: 40px 38px;
  width: 40px;
  height: 38px;
  position: absolute;
  top: calc((100% - 38px) / 2);
  left: 0;
}
.-coinparking .intro .proposal .wrap .proposal-list > li:last-child {
  margin-bottom: 0;
}
.-coinparking .intro .how-to {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 60px;
}
.-coinparking .intro .how-to .group {
  width: calc((100% - 20px - 20px - 20px) / 4);
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff462;
}
.-coinparking .intro .how-to .group .photo {
  margin-bottom: 20px;
}
.-coinparking .intro .how-to .group .photo img {
  width: 100%;
  height: auto;
}
.-coinparking .intro .how-to .group .title {
  font-size: 15px;
  font-size: 1.5rem;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  background: #2baae2;
  font-weight: bold;
  color: #fff;
  padding: 0.4em 1em;
  margin-bottom: 20px;
  border-radius: 6px;
}
.-coinparking .intro .how-to .group .lead {
  font-size: 14px;
  font-size: 1.4rem;
  color: #002c6b;
}
.-coinparking .intro .how-to .group .button-a {
  font-size: 12px;
  font-size: 1.2rem;
  min-width: 100%;
}
.-coinparking .contact {
  margin-bottom: 0;
}
.-coinparking .contact .information {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.-coinparking .contact .information > li.info-tel {
  margin: 0 40px;
}
.-coinparking .contact .information > li.info-tel .sub {
  font-size: 15px;
  font-size: 1.5rem;
  margin: 0.4em 0 0;
  text-align: right;
}
.-coinparking .contact .info-mail {
  text-align: center;
  margin: 40px auto 0;
}
.-coinparking .contact .info-mail a::before {
  content: "";
  background: url(../images/ico_mail_white.svg) no-repeat left center;
  background-size: 20px 16px;
  width: 20px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  margin: -2px 12px 0 0;
}
.-coinparking .contact .info-mail a:hover::before {
  content: "";
  background: url(../images/ico_mail_blue.svg) no-repeat left center;
  background-size: 20px 16px;
}
@media screen and (max-width: 767px) {
  .-coinparking .contact {
    padding: 20px;
    margin-bottom: 0;
  }
  .-coinparking .contact .contact-lead {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .-coinparking .contact .information {
    display: block;
    padding: 0;
  }
  .-coinparking .contact .information > li.info-tel {
    text-align: center;
    margin: 0 auto 20px;
  }
  .-coinparking .contact .information > li.info-tel .title {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 0;
  }
  .-coinparking .contact .information > li.info-tel a {
    font-size: 24px;
    font-size: 2.4rem;
    background-size: 24px 30px;
    width: 75%;
    padding-left: 20px;
    margin: 0 auto;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .-coinparking .contact .information > li.info-tel .sub {
    text-align: center;
  }
  .-coinparking .contact .info-mail {
    text-align: center;
    margin: 0 auto;
  }
}
.-coinparking .head-area h2 {
  font-weight: bold;
  text-align: center;
  color: #002c6b;
  font-size: 32px;
  font-size: 3.2rem;
  margin-top: 1.6em;
}
@media screen and (max-width: 767px) {
  .-coinparking .head-area h2 {
    font-size: 28px;
    font-size: 2.8rem;
    margin-top: 1.2em;
  }
}
.-coinparking .head-area p {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .-coinparking .head-area p {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
.-coinparking .title-area {
  background: #002c6b;
  text-align: center;
  padding: 2em 0;
  color: #fff;
}
.-coinparking .title-area h2 {
  background: none;
  padding: 5px 0.5em;
  color: #fff;
  font-weight: bold;
  text-align: center;
  display: inline-block;
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff;
  font-size: 32px;
  font-size: 3.2rem;
  line-height: 1.2;
}
.-coinparking .title-area.sub-color {
  background: #2baae2;
}
.-coinparking .title-area.sub {
  background: none;
  text-align: center;
  position: relative;
}
.-coinparking .title-area.sub::after {
  content: " ";
  width: 100%;
  height: 2px;
  background: #002c6b;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -1;
}
.-coinparking .title-area.sub h3 {
  font-size: 32px;
  font-size: 3.2rem;
  line-height: 1.2;
  font-weight: bold;
  color: #002c6b;
  display: inline-block;
  background: #fff;
  padding: 0 10px;
}
.-coinparking .title-area.color-y h2 {
  color: #fff462;
  border-color: #fff462;
}
@media screen and (max-width: 767px) {
  .-coinparking .title-area {
    padding: 1.25em 0;
  }
  .-coinparking .title-area h2 {
    font-size: 20px;
    font-size: 2rem;
  }
}
.-coinparking h2.h2-b {
  font-weight: bold;
  text-align: center;
  color: #002c6b;
  font-size: 32px;
  font-size: 3.2rem;
  margin-top: 1.6em;
}
@media screen and (max-width: 767px) {
  .-coinparking h2.h2-b {
    font-size: 28px;
    font-size: 2.8rem;
    margin-top: 1.2em;
  }
}
.-coinparking h3.h3-d {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  background: #2baae2;
  color: #fff;
  padding: 0 0.75em;
  margin-top: 1.6em;
}
.-coinparking h3.h3-e {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  color: #002c6b;
  margin-top: 1.6em;
}
.-coinparking .lead-a {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.4;
  color: #002c6b;
  font-weight: bold;
  padding-left: 20px;
  margin-top: 1.6em;
  background: url(../images/border_pattern_a.png) repeat-y;
}
@media screen and (max-width: 767px) {
  .-coinparking .lead-a {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
.-coinparking .laed-b {
  font-size: 30px;
  font-size: 3rem;
  text-align: center;
  color: #2baae2;
  font-weight: bold;
  line-height: 1.3;
  margin-top: 0.8em;
}
@media screen and (max-width: 767px) {
  .-coinparking .laed-b {
    font-size: 22px;
    font-size: 2.2rem;
    text-align: left;
  }
}
.-coinparking .catch {
  text-align: center;
  font-size: 24px;
  font-size: 2.4rem;
  color: #002c6b;
  font-weight: bold;
  line-height: 1.3;
  margin-top: 3.2em;
}
.-coinparking .catch .attention {
  color: #ff4049;
}
@media screen and (min-width: 768px) {
  .-coinparking .catch {
    font-size: 36px;
    font-size: 3.6rem;
  }
}
.-coinparking .wrap {
  zoom: 1;
}
.-coinparking .wrap:before, .-coinparking .wrap:after {
  content: "";
  display: table;
}
.-coinparking .wrap:after {
  clear: both;
}
.-coinparking .remarks {
  padding-left: 1.2em;
  color: #707070;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.3;
  display: inline-block;
}
.-coinparking .remarks::before {
  content: "※";
  text-indent: -1em;
  display: inline-block;
}
.-coinparking .introduction {
  text-align: center;
}
.-coinparking .introduction p {
  display: inline-block;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .-coinparking .introduction p {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
.-coinparking .catch-area {
  padding: 5em 0;
  background: url(../coinparking/management/img/icon_001.svg) 50% 0 no-repeat;
  background-size: auto 110%;
  margin-top: 1.6em;
}
.-coinparking .catch-area p.img {
  text-align: center;
}
.-coinparking .catch-area p.img img {
  width: 70%;
}
@media screen and (max-width: 767px) {
  .-coinparking .catch-area {
    padding: 2em 0;
  }
  .-coinparking .catch-area p.img img {
    width: 90%;
  }
}
.-coinparking .decoration-line {
  border: 6px solid #002c6b;
  padding: 1em;
  line-height: 1.6;
}
.-coinparking .decoration-line h3 {
  font-weight: bold;
  color: #002c6b;
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.3;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .-coinparking .decoration-line {
    padding: 2em;
  }
  .-coinparking .decoration-line h3 {
    font-size: 22px;
    font-size: 2.2rem;
    text-align: center;
  }
}
.-coinparking dl.item {
  margin-bottom: 15px;
}
.-coinparking dl.item dt {
  font-weight: bold;
  color: #002c6b;
  font-size: 20px;
  font-size: 2rem;
}
.-coinparking dl.step {
  margin-top: 1.6em;
  zoom: 1;
}
.-coinparking dl.step:before, .-coinparking dl.step:after {
  content: "";
  display: table;
}
.-coinparking dl.step:after {
  clear: both;
}
.-coinparking dl.step dt.icon {
  width: 50px;
  float: left;
  border-top: 3px solid #2baae2;
  color: #002c6b;
  line-height: 1.2;
  text-align: center;
  margin-top: 10px;
  padding-top: 5px;
}
.-coinparking dl.step dt.icon span {
  display: block;
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
}
.-coinparking dl.step dd {
  width: calc(100% - 50px);
  float: left;
  padding-left: 10px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.5;
  margin-top: 10px;
}
.-coinparking dl.case {
  margin-top: 3.2em;
}
.-coinparking dl.case dt {
  ext-align: center;
  font-size: 22px;
  font-size: 2.2rem;
  color: #002c6b;
  font-weight: bold;
  line-height: 1.3;
}
.-coinparking dl.case dt span {
  color: #ff4049;
}
.-coinparking dl.case dd {
  margin-top: 10px;
}
.-coinparking dl.case dd.example {
  font-weight: bold;
  line-height: 1.3;
}
.-coinparking dl.case dd.example .icon {
  display: inline-block;
  background: #002c6b;
  color: #fff;
  font-weight: normal;
  padding: 0 1em;
  margin-right: 5px;
}
@media screen and (min-width: 768px) {
  .-coinparking dl.case dt {
    font-size: 28px;
    font-size: 2.8rem;
  }
}
.-coinparking section .item-wrap .txt {
  padding: 1em;
  background: #002c6b;
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
}
.-coinparking section .item-wrap .txt.sub-color {
  background: #2baae2;
}
@media screen and (max-width: 767px) {
  .-coinparking section .item-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .-coinparking section .item-wrap .txt {
    width: 100%;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .-coinparking section .item-wrap .txt p {
    margin-bottom: 0;
  }
  .-coinparking section .item-wrap .img {
    width: 100%;
    margin-top: 1.6em;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
@media screen and (min-width: 768px) {
  .-coinparking section .item-wrap {
    zoom: 1;
    position: relative;
    margin-top: 4.8em;
  }
  .-coinparking section .item-wrap:before, .-coinparking section .item-wrap:after {
    content: "";
    display: table;
  }
  .-coinparking section .item-wrap:after {
    clear: both;
  }
  .-coinparking section .item-wrap .txt {
    position: absolute;
    left: 0;
    top: 10%;
    width: 40%;
    padding: 3em 2em;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .-coinparking section .item-wrap .img {
    float: right;
    width: 65%;
  }
}
.-coinparking section .contract-box {
  padding: 1em 1.5em;
  border: 6px solid #2baae2;
  background: #f7fcfe;
  margin-top: 2.4em;
}
.-coinparking section .contract-box h3 {
  font-size: 26px;
  font-size: 2.6rem;
  font-weight: bold;
  color: #002c6b;
  text-align: center;
}
.-coinparking section .contract-box h3 .icon {
  display: block;
}
.-coinparking section .contract-box h3 .icon img {
  width: 58px;
}
.-coinparking section .contract-box p {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.5;
  margin-top: 0.8em;
}
.-coinparking section .contract-box.red {
  border: 6px solid #f19a9c;
  background: #fef5f5;
}
@media screen and (max-width: 767px) {
  .-coinparking section .contract-box {
    padding: 1em;
    margin-top: 1.6em;
  }
  .-coinparking section .contract-box h3 {
    font-size: 22px;
    font-size: 2.2rem;
  }
  .-coinparking section .contract-box p {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
.-coinparking section .feature-wrap {
  background: #e8ecf2;
  padding: 1em;
  margin-top: 0.8em;
}
.-coinparking section .feature-wrap.vertical .txt,
.-coinparking section .feature-wrap.vertical .img {
  float: none;
  width: 100%;
}
.-coinparking section .feature-wrap.vertical .img {
  text-align: center;
}
.-coinparking section .feature-wrap.vertical .img img {
  width: 70%;
}
@media screen and (min-width: 768px) {
  .-coinparking section .feature-wrap {
    padding: 1.5em;
    zoom: 1;
  }
  .-coinparking section .feature-wrap:before, .-coinparking section .feature-wrap:after {
    content: "";
    display: table;
  }
  .-coinparking section .feature-wrap:after {
    clear: both;
  }
  .-coinparking section .feature-wrap .txt {
    width: 70%;
    float: left;
    padding-right: 30px;
  }
  .-coinparking section .feature-wrap .img {
    width: 30%;
    float: left;
  }
}
.-coinparking section .troble-wrap {
  padding: 2em 0;
}
.-coinparking section .troble-wrap .txt-area .comment {
  background: rgb(255, 244, 98);
  padding: 1em;
  margin-top: 1.6em;
}
@media screen and (min-width: 768px) {
  .-coinparking section .troble-wrap {
    zoom: 1;
    position: relative;
    padding: 4em 0 10em;
  }
  .-coinparking section .troble-wrap:before, .-coinparking section .troble-wrap:after {
    content: "";
    display: table;
  }
  .-coinparking section .troble-wrap:after {
    clear: both;
  }
  .-coinparking section .troble-wrap .txt-area {
    width: 55%;
    position: absolute;
    top: 15%;
    left: 0;
  }
  .-coinparking section .troble-wrap .txt-area .comment {
    padding: 1.5em;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .-coinparking section .troble-wrap > .img {
    float: right;
    width: 65%;
  }
}
.-coinparking section .consign-wrap {
  padding: 1em 0;
}
.-coinparking section .consign-wrap .txt h3 {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.3;
  margin-top: 0.8em;
}
@media screen and (min-width: 768px) {
  .-coinparking section .consign-wrap {
    padding: 3em 0;
    zoom: 1;
    position: relative;
  }
  .-coinparking section .consign-wrap:before, .-coinparking section .consign-wrap:after {
    content: "";
    display: table;
  }
  .-coinparking section .consign-wrap:after {
    clear: both;
  }
  .-coinparking section .consign-wrap .img {
    width: 60%;
    float: left;
  }
  .-coinparking section .consign-wrap .txt {
    width: 45%;
    position: absolute;
    top: 20%;
    left: 50%;
  }
  .-coinparking section .consign-wrap .txt h3 {
    font-size: 36px;
    font-size: 3.6rem;
    margin-top: 0;
  }
  .-coinparking section .consign-wrap .txt p {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
.-coinparking section .example-wrap {
  margin-top: 3.2em;
}
.-coinparking section .example-wrap .icon {
  width: 65px;
  height: 65px;
  position: relative;
  margin: 0 0 20px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #002c6b;
  color: #fff;
  line-height: 1.2;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}
.-coinparking section .example-wrap .icon p {
  margin: 0;
}
.-coinparking section .example-wrap .icon span {
  display: block;
  width: 100%;
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.2em;
}
.-coinparking section .example-wrap .icon::after {
  content: " ";
  width: 70%;
  height: 6px;
  background: #2baae2;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -35%;
}
@media screen and (max-width: 767px) {
  .-coinparking section .example-wrap .txt {
    margin-top: -2em;
  }
  .-coinparking section .example-wrap .arrow {
    width: 70px;
    margin: auto;
  }
}
@media screen and (min-width: 768px) {
  .-coinparking section .example-wrap {
    padding-bottom: 3em;
    zoom: 1;
    position: relative;
  }
  .-coinparking section .example-wrap:before, .-coinparking section .example-wrap:after {
    content: "";
    display: table;
  }
  .-coinparking section .example-wrap:after {
    clear: both;
  }
  .-coinparking section .example-wrap .icon {
    width: 110px;
    height: 110px;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 44px;
    font-size: 4.4rem;
    z-index: 10;
  }
  .-coinparking section .example-wrap .icon span {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .-coinparking section .example-wrap .img {
    width: 60%;
    float: left;
    padding: 1.6em 3em 0;
    position: relative;
  }
  .-coinparking section .example-wrap .txt {
    width: 50%;
    position: absolute;
    top: 20%;
    left: 50%;
  }
  .-coinparking section .example-wrap .arrow {
    width: 56px;
    clear: left;
    position: absolute;
    left: 50%;
    bottom: 0;
    margin: 0 0 0 -28px;
  }
}
.-coinparking section .img-list {
  width: 90%;
  margin: auto;
  letter-spacing: -0.4em;
}
.-coinparking section .img-list li {
  width: 51%;
  letter-spacing: normal;
  display: inline-block;
  padding: 0 10px;
}
.-coinparking section .img-list li img {
  margin-bottom: 20px;
}
.-coinparking section .img-list li:last-child {
  width: 49%;
}
.-coinparking section .img-list li:last-child img {
  width: 50%;
  display: inline-block;
}
.-coinparking section .txt-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.-coinparking .sec001 {
  background: url(../coinparking/owner/img/bg_reason.jpg) 50% 50% no-repeat;
  background-size: cover;
}
.-coinparking .sec001 .txt-area .head h2 {
  text-align: left;
  color: #002c6b;
  font-weight: bold;
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: normal;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  line-height: 1.2;
  margin-top: 0.8em;
}
.-coinparking .sec001 .txt-area .head h2 .sub {
  font-size: 70%;
}
.-coinparking .sec001 .txt-area .head h2 .em {
  font-size: 34px;
  font-size: 3.4rem;
  background: none;
  color: #ea608e;
}
.-coinparking .sec001 .txt-area .head p {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  text-align: left;
  margin-top: 1.6em;
}
.-coinparking .sec001 .txt-area .area-wrap .results {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  color: #002c6b;
  line-height: 1.5;
}
.-coinparking .sec001 .txt-area .area-wrap .results li {
  margin: 0;
}
.-coinparking .sec001 .txt-area .area-wrap .results li .prefecture {
  margin-right: 10px;
}
.-coinparking .sec001 .txt-area .area-wrap .results li:first-child .prefecture {
  color: #29a767;
}
.-coinparking .sec001 .txt-area .area-wrap .results li:nth-child(2) .prefecture {
  color: #e63f4e;
}
.-coinparking .sec001 .txt-area .area-wrap .results li:last-child .prefecture {
  color: #0075bd;
}
.-coinparking .sec001 .img {
  width: 50%;
  margin: auto;
}
@media screen and (min-width: 992px) {
  .-coinparking .sec001 .txt-area {
    float: left;
    width: 70%;
  }
  .-coinparking .sec001 .txt-area .head h2 {
    font-size: 48px;
    font-size: 4.8rem;
  }
  .-coinparking .sec001 .txt-area .head .em {
    font-size: 48px;
    font-size: 4.8rem;
  }
  .-coinparking .sec001 .txt-area .area-wrap {
    zoom: 1;
  }
  .-coinparking .sec001 .txt-area .area-wrap:before, .-coinparking .sec001 .txt-area .area-wrap:after {
    content: "";
    display: table;
  }
  .-coinparking .sec001 .txt-area .area-wrap:after {
    clear: both;
  }
  .-coinparking .sec001 .txt-area .area-wrap .map {
    float: left;
    width: 35%;
  }
  .-coinparking .sec001 .txt-area .area-wrap .results {
    float: left;
    width: 65%;
    padding-left: 1em;
    font-size: 36px;
    font-size: 3.6rem;
  }
  .-coinparking .sec001 .img {
    float: left;
    width: 30%;
  }
}
.-coinparking .sec002 {
  background: #eaf6fc;
  padding: 3em 0;
}
.-coinparking .sec002 .point .item {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .-coinparking .sec002 .point {
    zoom: 1;
  }
  .-coinparking .sec002 .point:before, .-coinparking .sec002 .point:after {
    content: "";
    display: table;
  }
  .-coinparking .sec002 .point:after {
    clear: both;
  }
  .-coinparking .sec002 .point .item {
    width: 55%;
    margin-top: -30%;
  }
  .-coinparking .sec002 .point .item.left-side {
    float: left;
  }
  .-coinparking .sec002 .point .item.right-side {
    float: right;
  }
  .-coinparking .sec002 .point .item:first-child {
    margin-top: 0;
  }
}
.-coinparking .sec003 {
  padding: 2em 0 4em;
}
.-coinparking .sec003 .trouble > div {
  zoom: 1;
}
.-coinparking .sec003 .trouble > div:before, .-coinparking .sec003 .trouble > div:after {
  content: "";
  display: table;
}
.-coinparking .sec003 .trouble > div:after {
  clear: both;
}
.-coinparking .sec003 .trouble .icon {
  width: 60px;
  float: left;
  padding-right: 20px;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  line-height: 1.2;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: 100%;
  margin-right: 20px;
}
.-coinparking .sec003 .trouble .matter {
  margin-top: 1.6em;
}
.-coinparking .sec003 .trouble .matter .icon {
  background-image: url(../coinparking/owner/img/icon_q.png);
  color: #fff;
  padding: 0.5em 0;
}
.-coinparking .sec003 .trouble .matter ul {
  width: calc(100% - 100px);
  float: left;
  margin-top: 1em;
  padding-left: 1em;
}
.-coinparking .sec003 .trouble .matter ul li {
  line-height: 1.5;
  list-style-type: disc;
  list-style-position: outside;
}
.-coinparking .sec003 .trouble .resolution {
  margin-top: 0.8em;
}
.-coinparking .sec003 .trouble .resolution .icon {
  background-image: url(../coinparking/owner/img/icon_a.png);
  background-size: 90%;
  color: #dd0207;
  padding: 1.1em 0;
}
.-coinparking .sec003 .trouble .resolution p {
  width: calc(100% - 100px);
  float: left;
  padding: 0.75em 1em;
  background: #fff9b0;
  color: #dd0207;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.3;
  border-radius: 4px;
}
@media screen and (min-width: 768px) {
  .-coinparking .sec003 .trouble .icon {
    width: 80px;
    font-size: 22px;
    font-size: 2.2rem;
  }
  .-coinparking .sec003 .trouble .matter ul {
    width: calc(100% - 100px);
  }
  .-coinparking .sec003 .trouble .resolution p {
    font-size: 20px;
    font-size: 2rem;
  }
}
.-coinparking .sec004 {
  padding: 3em 0;
}
.-coinparking .sec004 h3 {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
}
.-coinparking .sec004 .type {
  zoom: 1;
  margin-left: -15px;
  margin-right: -15px;
}
.-coinparking .sec004 .type:before, .-coinparking .sec004 .type:after {
  content: "";
  display: table;
}
.-coinparking .sec004 .type:after {
  clear: both;
}
.-coinparking .sec004 .type li {
  float: left;
  width: 50%;
  padding: 0 15px;
  text-align: center;
}
.-coinparking .sec004 .type dl {
  display: inline-block;
}
.-coinparking .sec004 .type dl dt {
  font-weight: bold;
  color: #002c6b;
}
.-coinparking .sec004 .type dl dd {
  margin: 0;
}
.-coinparking .sec004 .type dl dd ul {
  padding-left: 1em;
}
.-coinparking .sec004 .type dl dd ul li {
  font-size: 14px;
  font-size: 1.4rem;
  list-style-type: circle;
  list-style-position: outside;
  float: none;
  width: inherit;
  line-height: 1.3;
  text-align: left;
  padding: 0;
}
.-coinparking .sec004 .type dl dd ul li::before {
  content: none;
}
.-coinparking .sec004 table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 1.6em;
}
.-coinparking .sec004 table th, .-coinparking .sec004 table td {
  border: 1px solid #b2c5df;
  padding: 5px;
  border-radius: 0;
  text-align: center;
}
.-coinparking .sec004 table th {
  background: #002c6b;
  color: #fff;
}
.-coinparking .sec004 .decoration {
  padding: 0.5em 1em;
}
.-coinparking .sec004 .decoration h3 {
  font-size: 22px;
  font-size: 2.2rem;
}
.-coinparking .sec004 .comparison-box {
  border-radius: 10px;
  padding: 2em 1em;
  margin-bottom: 1.5em;
  background: #ebebeb;
}
.-coinparking .sec004 .comparison-box h3 {
  text-align: center;
  font-size: 35px;
  font-size: 3.5rem;
  line-height: 1;
}
.-coinparking .sec004 .comparison-box h3 span {
  font-size: 17px;
  font-size: 1.7rem;
}
.-coinparking .sec004 .comparison-box h3 span::before {
  content: "\a";
  white-space: pre;
}
.-coinparking .sec004 .comparison-box ul.list {
  margin-top: 1.6em;
  color: #505050 !important;
}
.-coinparking .sec004 .comparison-box ul.list li {
  line-height: 1.3;
  background-size: 8px 8px;
  padding-left: 1em;
  margin: 10px 0;
}
.-coinparking .sec004 .comparison-box ul.list li:before {
  font-family: FontAwesome;
  content: "\f111";
  font-size: 9px;
  font-size: 0.9rem;
  display: inline-block;
  margin-right: 2px;
  color: #707070;
  vertical-align: middle;
  margin-top: -3px;
  text-indent: -1em;
}
.-coinparking .sec004 .comparison-box.red {
  background: #ffeced;
}
.-coinparking .sec004 .comparison-box.red h3 {
  color: #ff4049;
}
.-coinparking .sec004 .comparison-box.red ul.list li:before {
  color: #ff4049;
}
@media screen and (max-width: 767px) {
  .-coinparking .sec004 table {
    display: block;
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
  .-coinparking .sec004 .decoration h3 {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.4;
    margin-bottom: 15px;
  }
  .-coinparking .sec004 .decoration p {
    line-height: 1.6;
  }
}
@media screen and (min-width: 768px) {
  .-coinparking .sec004 .type li {
    width: 20%;
  }
  .-coinparking .sec004 .comparison-box {
    padding: 2em 1.5em;
  }
  .-coinparking .sec004 p.center img {
    width: 70%;
  }
}
.-coinparking .sec005 {
  padding: 3em 0;
}
.-coinparking .sec005 .flow {
  zoom: 1;
  margin-top: 1.6em;
}
.-coinparking .sec005 .flow:before, .-coinparking .sec005 .flow:after {
  content: "";
  display: table;
}
.-coinparking .sec005 .flow:after {
  clear: both;
}
.-coinparking .sec005 .flow .txt-wrap .step {
  width: 65px;
  height: 65px;
  position: relative;
  margin: 0 0 20px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #002c6b;
  color: #fff;
}
.-coinparking .sec005 .flow .txt-wrap .step h3 {
  line-height: 1;
  font-size: 29px;
  font-size: 2.9rem;
  text-align: center;
}
.-coinparking .sec005 .flow .txt-wrap .step h3 span {
  font-size: 12px;
  font-size: 1.2rem;
  display: block;
  letter-spacing: 0.2em;
}
.-coinparking .sec005 .flow .txt-wrap .step::after {
  content: " ";
  width: 70%;
  height: 6px;
  background: #2baae2;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -35%;
}
.-coinparking .sec005 .flow .txt-wrap dl dt {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  color: #002c6b;
  line-height: 1.2;
}
.-coinparking .sec005 .flow .txt-wrap dl dd {
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 0.8em;
}
@media screen and (max-width: 767px) {
  .-coinparking .sec005 .flow .img {
    width: 60%;
    margin: auto;
  }
}
@media screen and (min-width: 768px) {
  .-coinparking .sec005 .flow {
    zoom: 1;
    margin-left: -15px;
    margin-right: -15px;
  }
  .-coinparking .sec005 .flow:before, .-coinparking .sec005 .flow:after {
    content: "";
    display: table;
  }
  .-coinparking .sec005 .flow:after {
    clear: both;
  }
  .-coinparking .sec005 .flow .txt-wrap {
    float: left;
    width: 66.6666%;
    padding: 0 15px;
  }
  .-coinparking .sec005 .flow .txt-wrap .step {
    width: 110px;
    height: 110px;
    margin: 0 30px 0 0;
    float: left;
  }
  .-coinparking .sec005 .flow .txt-wrap .step h3 {
    font-size: 44px;
    font-size: 4.4rem;
  }
  .-coinparking .sec005 .flow .txt-wrap .step h3 span {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .-coinparking .sec005 .flow .txt-wrap dl {
    width: calc(100% - 140px);
    float: left;
  }
  .-coinparking .sec005 .flow .txt-wrap dl dt {
    font-size: 30px;
    font-size: 3rem;
  }
  .-coinparking .sec005 .flow .txt-wrap dl dd {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .-coinparking .sec005 .flow .img {
    float: left;
    width: 33.3333%;
    padding: 0 15px;
  }
}
.-coinparking .sec006 {
  padding: 3em 0;
}

.-parking {
  /* ヨコイの立駐製品の強みへ */
  /* お問い合わせ */
  /* 立駐製品紹介 */
  /* メンテナンス */
}
.-parking .page-title {
  background: url(../parking/images/page_cover_parking.jpg) no-repeat center center;
  background-size: cover;
}
.-parking .intro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 50px 0 40px;
  margin-bottom: 0;
  /* サイドナビ - 地震・災害時 */
  /* サイドナビ - クラブYDL */
}
.-parking .intro .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-right: 50px;
}
.-parking .intro .text p {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.8;
}
.-parking .intro .text .list-a > li {
  font-size: 18px;
  font-size: 1.8rem;
}
.-parking .intro .announce {
  max-width: 310px;
}
.-parking .intro .announce .emergency {
  text-align: center;
  border: 4px solid #dd0207;
  padding: 30px 28px 20px;
  margin-bottom: 20px;
}
.-parking .intro .announce .emergency .title {
  font-size: 20px;
  font-size: 2rem;
  color: #dd0207;
  font-weight: bold;
  margin-bottom: 6px;
}
.-parking .intro .announce .emergency .inquiry {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
}
.-parking .intro .announce .emergency .tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #dd0207;
  font-family: "neue-haas-grotesk-display";
  font-weight: 600;
  line-height: 1.2;
  margin-bottom: 0;
}
.-parking .intro .announce .emergency .tel .sub {
  font-size: 18px;
  font-size: 1.8rem;
  margin-right: 10px;
}
.-parking .intro .announce .emergency .tel a {
  font-size: 30px;
  font-size: 3rem;
  letter-spacing: 0.05em;
}
.-parking .intro .announce .emergency::before {
  content: "";
  background: url(../images/ico_attention.svg) no-repeat;
  background-size: 35px 35px;
  width: 59px;
  height: 35px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  margin: -50px auto 10px;
  border-right: 12px solid #fff;
  border-left: 12px solid #fff;
}
.-parking .intro .club-ydl {
  background: #002c6b;
  padding: 20px;
}
.-parking .intro .club-ydl .title {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: bold;
  text-align: center;
  color: #fff;
  margin-bottom: 6px;
}
.-parking .intro .club-ydl .box {
  background: #e5eaf0;
  padding: 14px 30px;
}
.-parking .intro .club-ydl .box a {
  color: #333;
}
.-parking .intro .club-ydl .button-a.-red:hover {
  border: 1px solid #ab0205;
  background: #ab0205;
  color: #fff;
}
.-parking .feature {
  background: url(../parking/images/bg_feature.jpg) no-repeat center center;
  background-size: cover;
  color: #fff;
  padding: 60px 0;
}
.-parking .feature .h3-a {
  font-size: 18px;
  font-size: 1.8rem;
  color: #fff;
  padding: 6px 0 6px 20px;
  margin: 10px 0 8px;
}
.-parking .feature .point .column {
  margin-bottom: 40px;
}
.-parking .feature .point .column .lead {
  color: #d6d6d6;
}
.-parking .feature .button-a:hover {
  border: 1px solid #fff;
  color: #fff;
}
.-parking .feature .button-a:hover::after {
  display: inline-block;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../images/ico_arrow_right_white.svg) no-repeat 0 0;
  background-size: 12px 12px;
}
.-parking .contact {
  margin-bottom: 0;
}
.-parking .contact .information {
  padding: 0;
  display: block;
}
.-parking .contact .information > li.info-tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-right: 0;
}
.-parking .contact .information > li.info-tel .title {
  width: 100%;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  color: #002c6b;
  text-align: center;
}
.-parking .contact .information > li.info-tel .tel {
  margin-top: 1.6em;
  margin-left: 30px;
  margin-right: 30px;
}
.-parking .contact .information > li.info-tel .tel .office {
  font-size: 14px;
  font-size: 1.4rem;
}
.-parking .contact .information > li.info-tel a {
  font-size: 35px;
  font-size: 3.5rem;
  background-size: 24px 30px;
  padding-left: 30px;
  line-height: 35px;
  width: auto;
}
.-parking .contact .information > li.info-tel .sub {
  font-size: 15px;
  font-size: 1.5rem;
}
.-parking .contact .information > li.info-mail {
  margin-top: 1.6em;
}
.-parking .contact .information > li.info-mail .title {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  color: #002c6b;
  text-align: center;
}
.-parking .contact .information > li.info-mail a {
  min-width: 220px;
}
@media screen and (max-width: 767px) {
  .-parking .contact .information > li.info-tel .tel {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}
.-parking .product {
  margin-bottom: 60px;
  /* 製品一覧 */
  /* 製品詳細 */
  /* 参考図 */
  /* 動作説明 */
}
.-parking .product .product-list-a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin: -30px 0 0 -30px;
}
@supports (-ms-ime-align: auto) {
  .-parking .product .product-list-a {
    margin: -30px 0 0 -31px;
  }
}
@media all and (-ms-high-contrast: none) {
  .-parking .product .product-list-a {
    margin: -30px 0 0 -31px;
  }
}
.-parking .product .product-list-a .title {
  margin-bottom: 0.8em;
}
.-parking .product .product-list-a > li {
  width: calc((100% - 30px - 30px - 30px) / 3);
  margin: 30px 0 0 30px;
}
.-parking .product .product-list-a > li a {
  width: 100%;
  height: 100%;
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  color: #333;
  border: 4px solid #f0f2f6;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.-parking .product .product-list-a > li a .name {
  font-size: 21px;
  font-size: 2.1rem;
  color: #002c6b;
  font-weight: bold;
  border-left: 4px solid #002c6b;
  padding-left: 10px;
  margin-bottom: 8px;
  line-height: 1;
}
.-parking .product .product-list-a > li a .catch {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  margin-bottom: 10px;
}
.-parking .product .product-list-a > li a .label-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 20px;
}
.-parking .product .product-list-a > li a .label-list > li {
  margin-left: 8px;
}
.-parking .product .product-list-a > li a .label-list > li .label {
  font-size: 10px;
  font-size: 1rem;
  color: #002c6b;
  border: 1px solid #002c6b;
  padding: 0.3em 0.8em 0.2em;
  border-radius: 25px;
  display: inline-block;
}
.-parking .product .product-list-a > li a .label-list > li:first-child {
  margin-left: 0;
}
.-parking .product .product-list-a > li a .image {
  margin-bottom: 20px;
}
.-parking .product .product-list-a > li a .image img {
  width: 100%;
  height: auto;
}
.-parking .product .product-list-a > li a .description {
  font-size: 12px;
  font-size: 1.2rem;
  background: #f5f5f5;
  padding: 10px;
}
.-parking .product .product-list-a > li a .button-a {
  font-size: 12px;
  font-size: 1.2rem;
  width: 100%;
  min-width: 100%;
  margin-bottom: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.-parking .product .product-list-a > li a:hover {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-decoration: none;
  border: 4px solid #002c6b;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
}
.-parking .product .product-list-a > li a:hover .button-a {
  text-decoration: none;
  background: transparent;
  color: #002c6b;
}
.-parking .product .product-list-a > li a:hover .button-a::after {
  display: inline-block;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../images/ico_arrow_right_blue.svg) no-repeat 0 0;
  background-size: 12px 12px;
}
.-parking .product .product-detail .name {
  padding: 0.8em 1em;
  margin-bottom: 20px;
  background: #fafafa;
  border-top: 2px solid #002c6b;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.-parking .product .product-detail .name span {
  display: inline-block;
}
.-parking .product .product-detail .name span.main {
  font-size: 28px;
  font-size: 2.8rem;
  font-weight: bold;
  color: #002c6b;
}
.-parking .product .product-detail .name span.sub {
  font-size: 14px;
  font-size: 1.4rem;
  margin-left: 20px;
}
.-parking .product .product-detail .name span.sub::before {
  content: "―";
  display: inline-block;
  margin-right: 20px;
}
.-parking .product .product-detail .label-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 40px;
}
.-parking .product .product-detail .label-list > li {
  margin-left: 10px;
}
.-parking .product .product-detail .label-list > li .label {
  font-size: 14px;
  font-size: 1.4rem;
  color: #002c6b;
  border: 1px solid #002c6b;
  padding: 0.3em 1em;
  border-radius: 25px;
  display: inline-block;
}
.-parking .product .product-detail .label-list > li:first-child {
  margin-left: 0;
}
.-parking .product .product-detail .product-detail-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.-parking .product .product-detail .product-detail-inner .description {
  max-width: 560px;
  margin-right: 40px;
}
.-parking .product .product-detail .product-detail-inner .description .image {
  margin-bottom: 30px;
}
.-parking .product .product-detail .product-detail-inner .description .image img {
  width: 100%;
  height: auto;
}
.-parking .product .product-detail .product-detail-inner .description .download-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.-parking .product .product-detail .product-detail-inner .description .download-list > li {
  width: calc((100% - 20px) / 2);
}
.-parking .product .product-detail .product-detail-inner .description .download-list > li .button-a {
  min-width: 100%;
}
.-parking .product .product-detail .product-detail-inner .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.-parking .product .product-detail .product-detail-inner .text .catch {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  border-top: 2px solid #002c6b;
  border-bottom: 2px solid #002c6b;
  display: inline-block;
  padding: 0.4em 0;
  margin-bottom: 20px;
}
.-parking .product .product-detail .product-detail-inner .text .box-a {
  font-size: 14px;
  font-size: 1.4rem;
  padding: 20px 30px;
}
.-parking .product .product-detail .product-detail-inner .text .box-a .list-a > li {
  text-indent: -1.1em;
}
.-parking .product .product-detail .product-detail-inner .text .box-a .list-a > li .lead {
  padding-left: 0;
}
.-parking .product .product-detail .product-detail-inner .text .box-a .list-a > li .lead .fig {
  display: block;
  margin-top: 16px;
}
.-parking .product .attention .title {
  text-align: center;
  font-weight: bold;
  margin-bottom: 10px;
}
.-parking .product .attention .title span {
  display: block;
}
.-parking .product .attention .title span.main {
  font-size: 28px;
  font-size: 2.8rem;
}
.-parking .product .attention .title span.sub {
  font-size: 18px;
  font-size: 1.8rem;
}
.-parking .product .attention .image {
  max-width: 1034px;
  margin: 0 auto;
}
.-parking .product .attention .image img {
  width: 100%;
  height: auto;
}
.-parking .product .attention .box-b {
  max-width: 1034px;
  margin: 30px auto 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.-parking .product .attention .attention-list > li {
  font-size: 14px;
  font-size: 1.4rem;
  text-indent: -1em;
  padding-left: 1em;
}
.-parking .product .how-to {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.-parking .product .how-to .video {
  margin-right: 30px;
}
.-parking .product .how-to .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.-parking .maintenance {
  margin-bottom: 60px;
  /* メンテナンスに関するお問い合わせ */
}
.-parking .maintenance .cover {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 1280px;
  margin: 0 auto 60px;
}
.-parking .maintenance .cover .photo {
  width: 80%;
}
.-parking .maintenance .cover .photo img {
  width: 100%;
  height: auto;
}
.-parking .maintenance .cover .text {
  width: 50%;
  padding: 40px;
  margin-left: -30%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: rgba(1, 29, 85, 0.8);
  -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.2);
  color: #fff;
}
.-parking .maintenance .cover .text .catch {
  font-size: 26px;
  font-size: 2.6rem;
  font-weight: bold;
  margin-bottom: 20px;
}
.-parking .maintenance .cover .text .catch .en {
  font-size: 12px;
  font-size: 1.2rem;
  font-family: "OSP-DIN";
  letter-spacing: 0.15em;
  display: block;
  font-weight: normal;
  opacity: 0.6;
}
.-parking .maintenance .cover .text .catch::after {
  content: "";
  width: 20%;
  height: 1px;
  display: block;
  background: #fff;
  margin: 18px 0 0;
}
.-parking .maintenance .cover .text .lead {
  font-size: 16px;
  font-size: 1.6rem;
}
.-parking .maintenance .message {
  padding: 35px 30px 40px;
  border: 4px solid #f0f2f6;
  font-size: 15px;
  font-size: 1.5rem;
}
.-parking .maintenance .message p {
  margin-bottom: 16px;
}
.-parking .maintenance .bnr-category {
  margin-top: 60px;
}
.-parking .maintenance.-contact {
  background: #f0f2f6;
  padding: 50px 0 60px;
}
.-parking .maintenance.-contact .title {
  font-size: 21px;
  font-size: 2.1rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 30px;
  letter-spacing: 0.1em;
}
.-parking .maintenance.-contact .panel-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.-parking .maintenance.-contact .panel-wrap .panel {
  width: calc((100% - 40px) / 2);
  padding: 30px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  border-top: 3px solid #002c6b;
  -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
}

.download__wrap {
  margin-top: 1.6em;
  padding: 20px;
  border: 4px solid #f0f2f6;
}
.download__wrap .img {
  margin-top: 0.8em;
}
.download__title {
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  color: #002c6b;
  border-left: 4px solid #002c6b;
  padding-left: 10px;
  line-height: 1;
}
.download__btn {
  margin-left: -10px;
  margin-right: -10px;
  zoom: 1;
}
.download__btn:before, .download__btn:after {
  content: "";
  display: table;
}
.download__btn:after {
  clear: both;
}
.download__btn li {
  width: 50%;
  float: left;
  padding: 0 10px;
}
.download__btn li a {
  display: block;
  font-size: 12px;
  font-size: 1.2rem;
  width: 100%;
  min-width: 100%;
  margin-bottom: 0;
}
.download__btn li a:hover {
  text-decoration: none;
  background: transparent;
  color: #002c6b;
}
.download__btn li a:hover::after {
  display: inline-block;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../images/ico_arrow_right_blue.svg) no-repeat 0 0;
  background-size: 12px 12px;
}
.download .box-c {
  padding: 0;
}
.download .box-c h3 {
  padding: 0.75em 1em;
  background: #002c6b;
  line-height: 1;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #fff;
  text-align: center;
}
.download .box-c .inner {
  padding: 1.5em;
}
.download .box-c dl dt {
  font-weight: bold;
}
.download .box-c input[type=text] {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2;
  width: 100%;
  height: 1.5em;
  padding: 5px;
}
.download .box-c input[type=submit],
.download .box-c input[type=button] {
  font-size: 16px;
  font-size: 1.6rem;
  background: #002c6b;
  text-align: center;
  color: #fff;
  display: inline-block;
  width: 200px;
  padding: 15px 0;
  margin-top: 1.6em;
}
@media screen and (max-width: 767px) {
  .download .box-c .attention {
    padding: 0 !important;
  }
}

table.deta-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 2.4em;
}
table.deta-table th, table.deta-table td {
  border: 1px solid #b2c5df;
  padding: 10px 15px;
  text-align: center;
}
table.deta-table th {
  background: #E5EAF0;
  color: #002c6b;
  font-weight: normal;
}
table.deta-table .title {
  display: block;
  text-align: left;
  font-size: 20px;
  font-size: 2rem;
  color: #002c6b;
}
table.deta-table.thead-title thead th {
  background: #002c6b;
  color: #fff;
}

.-exterior {
  /* 製品案内 */
}
.-exterior .page-title {
  background: url(../exterior/images/page_cover_exterior.jpg) no-repeat center center;
  background-size: cover;
}
.-exterior .product {
  margin-bottom: 60px;
  /* 製品一覧 */
}
.-exterior .product .product-list-c {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin: -30px 0 0 -30px;
}
@supports (-ms-ime-align: auto) {
  .-exterior .product .product-list-c {
    margin: -30px 0 0 -31px;
  }
}
@media all and (-ms-high-contrast: none) {
  .-exterior .product .product-list-c {
    margin: -30px 0 0 -31px;
  }
}
.-exterior .product .product-list-c > li {
  width: calc((100% - 30px - 30px) / 2);
  margin: 30px 0 0 30px;
}
.-exterior .product .product-list-c > li a {
  display: block;
  color: #333;
  height: 100%;
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid #f0f2f6;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.-exterior .product .product-list-c > li a .name {
  font-size: 20px;
  font-size: 2rem;
  color: #002c6b;
  font-weight: bold;
  border-left: 4px solid #002c6b;
  padding-left: 10px;
  margin-bottom: 10px;
  line-height: 1;
}
.-exterior .product .product-list-c > li a .catch {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: left;
  font-weight: bold;
  margin-bottom: 16px;
}
.-exterior .product .product-list-c > li a .detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.-exterior .product .product-list-c > li a .detail .image {
  max-width: 240px;
  margin-right: 20px;
}
.-exterior .product .product-list-c > li a .detail .image img {
  width: 100%;
  height: auto;
}
.-exterior .product .product-list-c > li a .text {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.-exterior .product .product-list-c > li a .text .lead {
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: normal;
  text-align: left;
}
.-exterior .product .product-list-c > li a .text .button-a {
  font-size: 12px;
  font-size: 1.2rem;
  min-width: 150px;
  margin-bottom: 0;
}
.-exterior .product .product-list-c > li a:hover {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-decoration: none;
  border: 4px solid #002c6b;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
}
.-exterior .product .product-list-c > li a:hover .button-a {
  text-decoration: none;
  background: transparent;
  color: #002c6b;
}
.-exterior .product .product-list-c > li a:hover .button-a::after {
  display: inline-block;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../images/ico_arrow_right_blue.svg) no-repeat 0 0;
  background-size: 12px 12px;
}
.-exterior .product .product-list-d {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin: -30px 0 0 -30px;
}
@supports (-ms-ime-align: auto) {
  .-exterior .product .product-list-d {
    margin: -30px 0 0 -31px;
  }
}
@media all and (-ms-high-contrast: none) {
  .-exterior .product .product-list-d {
    margin: -30px 0 0 -31px;
  }
}
.-exterior .product .product-list-d > li {
  width: calc((100% - 30px - 30px) / 3);
  margin: 30px 0 0 30px;
}
.-exterior .product .product-list-d > li a {
  display: block;
  color: #333;
  height: 100%;
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid #f0f2f6;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.-exterior .product .product-list-d > li a .name {
  font-size: 20px;
  font-size: 2rem;
  color: #002c6b;
  font-weight: bold;
  border-left: 4px solid #002c6b;
  padding-left: 10px;
  margin-bottom: 10px;
  line-height: 1;
}
.-exterior .product .product-list-d > li a .catch {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: left;
  font-weight: bold;
  margin-bottom: 16px;
}
.-exterior .product .product-list-d > li a .detail .image img {
  width: 100%;
  height: auto;
}
.-exterior .product .product-list-d > li a .text .lead {
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: normal;
  text-align: left;
}
.-exterior .product .product-list-d > li a .text .button-a {
  font-size: 12px;
  font-size: 1.2rem;
  min-width: 150px;
  margin-bottom: 0;
}
.-exterior .product .product-list-d > li a:hover {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-decoration: none;
  border: 4px solid #002c6b;
  -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.2);
}
.-exterior .product .product-list-d > li a:hover .button-a {
  text-decoration: none;
  background: transparent;
  color: #002c6b;
}
.-exterior .product .product-list-d > li a:hover .button-a::after {
  display: inline-block;
  content: "";
  width: 12px;
  height: 12px;
  background: url(../images/ico_arrow_right_blue.svg) no-repeat 0 0;
  background-size: 12px 12px;
}
@media screen and (max-width: 767px) {
  .-exterior .introduction {
    line-height: 1.5;
  }
}

.-spacedesign .page-title {
  background: url(../spacedesign/images/page_cover_spacedesign.jpg) no-repeat center center;
  background-size: cover;
}

.solution__wrap {
  border: 4px solid #f0f2f6;
  padding: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 1.6em;
}
.solution__img {
  width: 45%;
}
.solution__summary {
  width: 55%;
  padding-left: 20px;
}
.solution__summary h3 {
  font-size: 20px;
  font-size: 2rem;
  color: #002c6b;
  font-weight: bold;
  border-left: 4px solid #002c6b;
  padding-left: 10px;
  margin-top: 0;
  line-height: 1;
}
.solution__summary p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.3;
  margin-top: 1.6em;
  margin-bottom: 0;
}
.solution__summary p.more .button-a {
  font-size: 12px;
  font-size: 1.2rem;
  min-width: inherit;
  width: 150px;
}
@media screen and (max-width: 767px) {
  .solution__img {
    width: 35%;
  }
  .solution__summary {
    width: 65%;
  }
}

body.recruit table.table-b,
body.new_graduate table.table-b,
body.career table.table-b {
  width: 100%;
  border-collapse: collapse;
  margin-top: 2.4em;
}
body.recruit table.table-b th, body.recruit table.table-b td,
body.new_graduate table.table-b th,
body.new_graduate table.table-b td,
body.career table.table-b th,
body.career table.table-b td {
  border: 1px solid #b2c5df;
  padding: 10px 15px;
  border-radius: 0;
}
body.recruit table.table-b th,
body.new_graduate table.table-b th,
body.career table.table-b th {
  background: #E5EAF0;
  color: #002c6b;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
}
body.recruit .recruit-list__wrap,
body.new_graduate .recruit-list__wrap,
body.career .recruit-list__wrap {
  border: 4px solid #f0f2f6;
  padding: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
body.recruit .recruit-list__item,
body.new_graduate .recruit-list__item,
body.career .recruit-list__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 2em;
}
body.recruit .recruit-list__item:last-child,
body.new_graduate .recruit-list__item:last-child,
body.career .recruit-list__item:last-child {
  margin-right: 0;
}
body.recruit .recruit-list__item h3,
body.new_graduate .recruit-list__item h3,
body.career .recruit-list__item h3 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #002c6b;
  margin-right: 1.5em;
}
body.recruit .recruit-list__item ul,
body.new_graduate .recruit-list__item ul,
body.career .recruit-list__item ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
body.recruit .recruit-list__item ul li,
body.new_graduate .recruit-list__item ul li,
body.career .recruit-list__item ul li {
  margin: 0 1em 0 0;
}
body.recruit .recruit-list__item ul li:last-child,
body.new_graduate .recruit-list__item ul li:last-child,
body.career .recruit-list__item ul li:last-child {
  margin: 0;
}

.proposal-list > li {
  font-size: 30px;
  font-size: 3rem;
  color: #002c6b;
  font-weight: bold;
  line-height: 1.4;
  padding-left: 50px;
  margin-bottom: 30px;
  position: relative;
}
.proposal-list > li::before {
  content: "";
  background: url(../images/ico_checkmark.svg) no-repeat left center;
  background-size: 40px 38px;
  width: 40px;
  height: 38px;
  position: absolute;
  top: calc((100% - 38px) / 2);
  left: 0;
}
.proposal-list > li:last-child {
  margin-bottom: 0;
}
.proposal-list.-horizontal {
  text-align: center;
}
.proposal-list.-horizontal > li {
  display: inline-block;
  margin: 1em;
}

.reason {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 2.4em;
}
.reason .item {
  width: calc((100% - 10px - 10px - 10px) / 2);
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid #f0f2f6;
}
.reason .item .title {
  font-size: 20px;
  font-size: 2rem;
  color: #002c6b;
  margin-bottom: 20px;
}
.reason .item .title::after {
  content: " ";
  clear: both;
  display: block;
}
.reason .item .title .icon {
  width: 3em;
  height: 3em;
  background: #002c6b;
  text-align: center;
  color: #fff;
  line-height: 1.2;
  font-weight: bold;
  float: left;
  font-size: 24px;
  font-size: 2.4rem;
}
.reason .item .title .icon .sub {
  font-size: 12px;
  font-size: 1.2rem;
}
.reason .item .title .icon .sub::after {
  content: "\a";
  white-space: pre;
}
.reason .item .title h3 {
  width: calc(100% - 4em);
  float: left;
  padding-left: 1em;
  line-height: 3em;
  font-weight: bold;
}
.reason .item .title h3.line-m {
  line-height: 1.5em;
}
@media screen and (max-width: 767px) {
  .reason {
    display: block;
  }
  .reason .item {
    width: 100%;
    margin-bottom: 15px;
  }
  .reason .item .title {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .reason .item .title h3.line-m {
    line-height: 1.4em;
  }
}

.flow .item {
  background: #f4f4f4;
  border-top: 4px solid #002c6b;
  padding: 1.5em;
  margin: 40px 0;
}
.flow .item h3 {
  margin: 0;
  font-size: 20px;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5em;
  margin-bottom: 20px;
}
.flow .item h3 .icon {
  background: #002c6b;
  color: #fff;
  font-weight: normal;
  text-align: center;
  width: 1.5em;
  height: 1.5em;
  line-height: 1.5em;
  display: inline-block;
  margin-right: 10px;
}
.flow .item p, .flow .item ul {
  margin: 0;
}

.item-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin: -30px 0 0 -30px;
}
@supports (-ms-ime-align: auto) {
  .item-list {
    margin: -30px 0 0 -31px;
  }
}
@media all and (-ms-high-contrast: none) {
  .item-list {
    margin: -30px 0 0 -31px;
  }
}
.item-list > li {
  width: calc((100% - 30px - 30px) / 2);
  margin: 30px 0 0 30px;
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid #f0f2f6;
}
.item-list > li .name {
  font-size: 20px;
  font-size: 2rem;
  color: #002c6b;
  font-weight: bold;
  border-left: 4px solid #002c6b;
  padding-left: 10px;
  margin-bottom: 10px;
  line-height: 1;
}

.forte {
  margin-top: 3.2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
}
.forte .title {
  width: 110px;
  height: 110px;
  background: #002c6b;
  padding: 0 20px;
}
.forte .title h2 {
  width: 70px;
  line-height: 1;
  font-size: 42px;
  font-size: 4.2rem;
  color: #fff;
  text-align: center;
  border-top: 6px solid #2baae2;
  padding: 0;
  margin: 0;
}
.forte .title h2 .sub {
  font-size: 18px;
  font-size: 1.8rem;
}
.forte .title h2 .sub::after {
  content: "\a";
  white-space: pre;
}
.forte .text {
  padding-left: 2em;
}
.forte .text h3.h3-c {
  margin-top: 0;
}
@media screen and (max-width: 767px) {
  .forte {
    display: block;
  }
  .forte .title {
    width: 65px;
    height: 65px;
    padding: 0 10px;
  }
  .forte .title h2 {
    width: 45px;
    font-size: 24px;
    font-size: 2.4rem;
  }
  .forte .text {
    padding-left: 0;
    margin-top: 20px;
  }
}

.panel-wrap-contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.panel-wrap-contact .panel {
  width: calc((100% - 40px) / 3);
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #fff;
  border-top: 3px solid #002c6b;
  -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
}
.panel-wrap-contact .panel.col-2 {
  width: calc((100% - 40px) / 2);
}
@media screen and (max-width: 767px) {
  .panel-wrap-contact {
    display: block;
  }
  .panel-wrap-contact .panel {
    width: 100%;
    margin-bottom: 20px;
  }
}

.catalog {
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 4px solid #f0f2f6;
}
.catalog h3 {
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: bold;
  color: #002c6b;
  line-height: 1.2;
  margin-bottom: 20px;
}
.catalog p {
  text-align: center;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .catalog {
    margin-bottom: 20px;
  }
}