@charset "UTF-8";
/*!
 * Bootstrap v3.3.6 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
@import url(//fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(//fonts.googleapis.com/earlyaccess/notosanssc.css);
@import url(//fonts.googleapis.com/css?family=Noto+Sans:400,400i,700,700i);
@import url(//fonts.googleapis.com/earlyaccess/notosanstc.css);
@import url(//fonts.googleapis.com/css?family=Fjalla+One&subset=latin-ext);
.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.container:before, .container:after {
  content: " ";
  display: table;
}

.container:after {
  clear: both;
}

@media (min-width: 768px) {
  .container {
    width: 750px;
  }
}

@media (min-width: 1024px) {
  .container {
    width: 970px;
  }
}

@media (min-width: 1200px) {
  .container {
    width: 1170px;
  }
}

.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 15px;
  padding-right: 15px;
}

.container-fluid:before, .container-fluid:after {
  content: " ";
  display: table;
}

.container-fluid:after {
  clear: both;
}

.row {
  margin-left: -15px;
  margin-right: -15px;
}

.row:before, .row:after {
  content: " ";
  display: table;
}

.row:after {
  clear: both;
}

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-left: 15px;
  padding-right: 15px;
}

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left;
}

.col-xs-1 {
  width: 8.33333%;
}

.col-xs-2 {
  width: 16.66667%;
}

.col-xs-3 {
  width: 25%;
}

.col-xs-4 {
  width: 33.33333%;
}

.col-xs-5 {
  width: 41.66667%;
}

.col-xs-6 {
  width: 50%;
}

.col-xs-7 {
  width: 58.33333%;
}

.col-xs-8 {
  width: 66.66667%;
}

.col-xs-9 {
  width: 75%;
}

.col-xs-10 {
  width: 83.33333%;
}

.col-xs-11 {
  width: 91.66667%;
}

.col-xs-12 {
  width: 100%;
}

.col-xs-pull-0 {
  right: auto;
}

.col-xs-pull-1 {
  right: 8.33333%;
}

.col-xs-pull-2 {
  right: 16.66667%;
}

.col-xs-pull-3 {
  right: 25%;
}

.col-xs-pull-4 {
  right: 33.33333%;
}

.col-xs-pull-5 {
  right: 41.66667%;
}

.col-xs-pull-6 {
  right: 50%;
}

.col-xs-pull-7 {
  right: 58.33333%;
}

.col-xs-pull-8 {
  right: 66.66667%;
}

.col-xs-pull-9 {
  right: 75%;
}

.col-xs-pull-10 {
  right: 83.33333%;
}

.col-xs-pull-11 {
  right: 91.66667%;
}

.col-xs-pull-12 {
  right: 100%;
}

.col-xs-push-0 {
  left: auto;
}

.col-xs-push-1 {
  left: 8.33333%;
}

.col-xs-push-2 {
  left: 16.66667%;
}

.col-xs-push-3 {
  left: 25%;
}

.col-xs-push-4 {
  left: 33.33333%;
}

.col-xs-push-5 {
  left: 41.66667%;
}

.col-xs-push-6 {
  left: 50%;
}

.col-xs-push-7 {
  left: 58.33333%;
}

.col-xs-push-8 {
  left: 66.66667%;
}

.col-xs-push-9 {
  left: 75%;
}

.col-xs-push-10 {
  left: 83.33333%;
}

.col-xs-push-11 {
  left: 91.66667%;
}

.col-xs-push-12 {
  left: 100%;
}

.col-xs-offset-0 {
  margin-left: 0%;
}

.col-xs-offset-1 {
  margin-left: 8.33333%;
}

.col-xs-offset-2 {
  margin-left: 16.66667%;
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-offset-4 {
  margin-left: 33.33333%;
}

.col-xs-offset-5 {
  margin-left: 41.66667%;
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-offset-7 {
  margin-left: 58.33333%;
}

.col-xs-offset-8 {
  margin-left: 66.66667%;
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-offset-10 {
  margin-left: 83.33333%;
}

.col-xs-offset-11 {
  margin-left: 91.66667%;
}

.col-xs-offset-12 {
  margin-left: 100%;
}

@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }
  .col-sm-1 {
    width: 8.33333%;
  }
  .col-sm-2 {
    width: 16.66667%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-4 {
    width: 33.33333%;
  }
  .col-sm-5 {
    width: 41.66667%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-7 {
    width: 58.33333%;
  }
  .col-sm-8 {
    width: 66.66667%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-10 {
    width: 83.33333%;
  }
  .col-sm-11 {
    width: 91.66667%;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-pull-1 {
    right: 8.33333%;
  }
  .col-sm-pull-2 {
    right: 16.66667%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-pull-4 {
    right: 33.33333%;
  }
  .col-sm-pull-5 {
    right: 41.66667%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-pull-7 {
    right: 58.33333%;
  }
  .col-sm-pull-8 {
    right: 66.66667%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-pull-10 {
    right: 83.33333%;
  }
  .col-sm-pull-11 {
    right: 91.66667%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-push-1 {
    left: 8.33333%;
  }
  .col-sm-push-2 {
    left: 16.66667%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-push-4 {
    left: 33.33333%;
  }
  .col-sm-push-5 {
    left: 41.66667%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-push-7 {
    left: 58.33333%;
  }
  .col-sm-push-8 {
    left: 66.66667%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-push-10 {
    left: 83.33333%;
  }
  .col-sm-push-11 {
    left: 91.66667%;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-offset-0 {
    margin-left: 0%;
  }
  .col-sm-offset-1 {
    margin-left: 8.33333%;
  }
  .col-sm-offset-2 {
    margin-left: 16.66667%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-4 {
    margin-left: 33.33333%;
  }
  .col-sm-offset-5 {
    margin-left: 41.66667%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-7 {
    margin-left: 58.33333%;
  }
  .col-sm-offset-8 {
    margin-left: 66.66667%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-10 {
    margin-left: 83.33333%;
  }
  .col-sm-offset-11 {
    margin-left: 91.66667%;
  }
  .col-sm-offset-12 {
    margin-left: 100%;
  }
}

@media (min-width: 1024px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }
  .col-md-1 {
    width: 8.33333%;
  }
  .col-md-2 {
    width: 16.66667%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-4 {
    width: 33.33333%;
  }
  .col-md-5 {
    width: 41.66667%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-7 {
    width: 58.33333%;
  }
  .col-md-8 {
    width: 66.66667%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-10 {
    width: 83.33333%;
  }
  .col-md-11 {
    width: 91.66667%;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-pull-1 {
    right: 8.33333%;
  }
  .col-md-pull-2 {
    right: 16.66667%;
  }
  .col-md-pull-3 {
    right: 25%;
  }
  .col-md-pull-4 {
    right: 33.33333%;
  }
  .col-md-pull-5 {
    right: 41.66667%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-pull-7 {
    right: 58.33333%;
  }
  .col-md-pull-8 {
    right: 66.66667%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-pull-10 {
    right: 83.33333%;
  }
  .col-md-pull-11 {
    right: 91.66667%;
  }
  .col-md-pull-12 {
    right: 100%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-push-1 {
    left: 8.33333%;
  }
  .col-md-push-2 {
    left: 16.66667%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-push-4 {
    left: 33.33333%;
  }
  .col-md-push-5 {
    left: 41.66667%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-push-7 {
    left: 58.33333%;
  }
  .col-md-push-8 {
    left: 66.66667%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-push-10 {
    left: 83.33333%;
  }
  .col-md-push-11 {
    left: 91.66667%;
  }
  .col-md-push-12 {
    left: 100%;
  }
  .col-md-offset-0 {
    margin-left: 0%;
  }
  .col-md-offset-1 {
    margin-left: 8.33333%;
  }
  .col-md-offset-2 {
    margin-left: 16.66667%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-4 {
    margin-left: 33.33333%;
  }
  .col-md-offset-5 {
    margin-left: 41.66667%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-7 {
    margin-left: 58.33333%;
  }
  .col-md-offset-8 {
    margin-left: 66.66667%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-10 {
    margin-left: 83.33333%;
  }
  .col-md-offset-11 {
    margin-left: 91.66667%;
  }
  .col-md-offset-12 {
    margin-left: 100%;
  }
}

@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }
  .col-lg-1 {
    width: 8.33333%;
  }
  .col-lg-2 {
    width: 16.66667%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-4 {
    width: 33.33333%;
  }
  .col-lg-5 {
    width: 41.66667%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-7 {
    width: 58.33333%;
  }
  .col-lg-8 {
    width: 66.66667%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-10 {
    width: 83.33333%;
  }
  .col-lg-11 {
    width: 91.66667%;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-pull-1 {
    right: 8.33333%;
  }
  .col-lg-pull-2 {
    right: 16.66667%;
  }
  .col-lg-pull-3 {
    right: 25%;
  }
  .col-lg-pull-4 {
    right: 33.33333%;
  }
  .col-lg-pull-5 {
    right: 41.66667%;
  }
  .col-lg-pull-6 {
    right: 50%;
  }
  .col-lg-pull-7 {
    right: 58.33333%;
  }
  .col-lg-pull-8 {
    right: 66.66667%;
  }
  .col-lg-pull-9 {
    right: 75%;
  }
  .col-lg-pull-10 {
    right: 83.33333%;
  }
  .col-lg-pull-11 {
    right: 91.66667%;
  }
  .col-lg-pull-12 {
    right: 100%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-push-1 {
    left: 8.33333%;
  }
  .col-lg-push-2 {
    left: 16.66667%;
  }
  .col-lg-push-3 {
    left: 25%;
  }
  .col-lg-push-4 {
    left: 33.33333%;
  }
  .col-lg-push-5 {
    left: 41.66667%;
  }
  .col-lg-push-6 {
    left: 50%;
  }
  .col-lg-push-7 {
    left: 58.33333%;
  }
  .col-lg-push-8 {
    left: 66.66667%;
  }
  .col-lg-push-9 {
    left: 75%;
  }
  .col-lg-push-10 {
    left: 83.33333%;
  }
  .col-lg-push-11 {
    left: 91.66667%;
  }
  .col-lg-push-12 {
    left: 100%;
  }
  .col-lg-offset-0 {
    margin-left: 0%;
  }
  .col-lg-offset-1 {
    margin-left: 8.33333%;
  }
  .col-lg-offset-2 {
    margin-left: 16.66667%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-4 {
    margin-left: 33.33333%;
  }
  .col-lg-offset-5 {
    margin-left: 41.66667%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-7 {
    margin-left: 58.33333%;
  }
  .col-lg-offset-8 {
    margin-left: 66.66667%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-10 {
    margin-left: 83.33333%;
  }
  .col-lg-offset-11 {
    margin-left: 91.66667%;
  }
  .col-lg-offset-12 {
    margin-left: 100%;
  }
}

.clearfix:before, .clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.pull-right {
  float: right !important;
}

.pull-left {
  float: left !important;
}

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

.invisible {
  visibility: hidden;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.hidden {
  display: none !important;
}

.affix {
  position: fixed;
}

@-ms-viewport {
  width: device-width;
}

.visible-xs {
  display: none !important;
}

.visible-sm {
  display: none !important;
}

.visible-md {
  display: none !important;
}

.visible-lg {
  display: none !important;
}

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}

@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }
  table.visible-xs {
    display: table !important;
  }
  tr.visible-xs {
    display: table-row !important;
  }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .visible-sm {
    display: block !important;
  }
  table.visible-sm {
    display: table !important;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .visible-sm-block {
    display: block !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .visible-sm-inline {
    display: inline !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 1024px) and (max-width: 1199px) {
  .visible-md {
    display: block !important;
  }
  table.visible-md {
    display: table !important;
  }
  tr.visible-md {
    display: table-row !important;
  }
  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}

@media (min-width: 1024px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important;
  }
}

@media (min-width: 1024px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important;
  }
}

@media (min-width: 1024px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg {
    display: block !important;
  }
  table.visible-lg {
    display: table !important;
  }
  tr.visible-lg {
    display: table-row !important;
  }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important;
  }
}

@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .hidden-sm {
    display: none !important;
  }
}

@media (min-width: 1024px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}

.visible-print {
  display: none !important;
}

@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table !important;
  }
  tr.visible-print {
    display: table-row !important;
  }
  th.visible-print,
  td.visible-print {
    display: table-cell !important;
  }
}

.visible-print-block {
  display: none !important;
}

@media print {
  .visible-print-block {
    display: block !important;
  }
}

.visible-print-inline {
  display: none !important;
}

@media print {
  .visible-print-inline {
    display: inline !important;
  }
}

.visible-print-inline-block {
  display: none !important;
}

@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}

@media print {
  .hidden-print {
    display: none !important;
  }
}

.container-fluid {
  padding-left: 0;
  padding-right: 0;
}

@font-face {
  font-family: "iconfont";
  src: url("../fonts/iconfont.eot?c=1487914905014");
  src: url("../fonts/iconfont.eot?#iefix&c=1487914905014") format("embedded-opentype"), url("../fonts/iconfont.woff?c=1487914905014") format("woff"), url("../fonts/iconfont.ttf?c=1487914905014") format("truetype"), url("../fonts/iconfont.svg#iconfont&c=1487914905014") format("svg");
}

.icon {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
}

.icon-Industrial:before {
  content: "";
}

.icon-aircraft:before {
  content: "";
}

.icon-angle-down:before {
  content: "";
}

.icon-angle-left:before {
  content: "";
}

.icon-angle-right:before {
  content: "";
}

.icon-angle-up:before {
  content: "";
}

.icon-arrow-left2:before {
  content: "";
}

.icon-arrow-right2:before {
  content: "";
}

.icon-book:before {
  content: "";
}

.icon-build:before {
  content: "";
}

.icon-bus:before {
  content: "";
}

.icon-caret-down:before {
  content: "";
}

.icon-caret-right:before {
  content: "";
}

.icon-caret-up:before {
  content: "";
}

.icon-check:before {
  content: "";
}

.icon-chevron-down:before {
  content: "";
}

.icon-chevron-left:before {
  content: "";
}

.icon-chevron-right:before {
  content: "";
}

.icon-chevron-up:before {
  content: "";
}

.icon-circle-right:before {
  content: "";
}

.icon-close:before {
  content: "";
}

.icon-download:before {
  content: "";
}

.icon-earth:before {
  content: "";
}

.icon-envelope:before {
  content: "";
}

.icon-etc:before {
  content: "";
}

.icon-exclamation-triangle:before {
  content: "";
}

.icon-external-link:before {
  content: "";
}

.icon-file-text:before {
  content: "";
}

.icon-form:before {
  content: "";
}

.icon-highroof:before {
  content: "";
}

.icon-icon_attention:before {
  content: "";
}

.icon-icon_flow:before {
  content: "";
}

.icon-icon_program:before {
  content: "";
}

.icon-icon_qa:before {
  content: "";
}

.icon-icon_staff:before {
  content: "";
}

.icon-laptop:before {
  content: "";
}

.icon-leader:before {
  content: "";
}

.icon-map-marker:before {
  content: "";
}

.icon-map_sales01:before {
  content: "";
}

.icon-map_sales02:before {
  content: "";
}

.icon-map_sales03:before {
  content: "";
}

.icon-map_sales04:before {
  content: "";
}

.icon-meun:before {
  content: "";
}

.icon-middleroof:before {
  content: "";
}

.icon-minus:before {
  content: "";
}

.icon-mobile:before {
  content: "";
}

.icon-parking:before {
  content: "";
}

.icon-passenger:before {
  content: "";
}

.icon-play:before {
  content: "";
}

.icon-plus:before {
  content: "";
}

.icon-pump:before {
  content: "";
}

.icon-question_answer:before {
  content: "";
}

.icon-scene01:before {
  content: "";
}

.icon-scene02:before {
  content: "";
}

.icon-scene03:before {
  content: "";
}

.icon-scene04:before {
  content: "";
}

.icon-scene05:before {
  content: "";
}

.icon-scene06:before {
  content: "";
}

.icon-screw_icon01:before {
  content: "";
}

.icon-screw_icon02:before {
  content: "";
}

.icon-screw_icon03:before {
  content: "";
}

.icon-screw_icon04:before {
  content: "";
}

.icon-screw_icon05:before {
  content: "";
}

.icon-screw_icon06:before {
  content: "";
}

.icon-screw_icon07:before {
  content: "";
}

.icon-search-division:before {
  content: "";
}

.icon-search-place:before {
  content: "";
}

.icon-search:before {
  content: "";
}

.icon-taxi:before {
  content: "";
}

.icon-text-sound:before {
  content: "";
}

.icon-th:before {
  content: "";
}

.icon-truck:before {
  content: "";
}

.icon-truck_dachaku:before {
  content: "";
}

.icon-truck_dump:before {
  content: "";
}

.icon-truck_ekitai:before {
  content: "";
}

.icon-truck_funryu:before {
  content: "";
}

.icon-truck_kankyo:before {
  content: "";
}

.icon-truck_mixer:before {
  content: "";
}

.icon-truck_nieki:before {
  content: "";
}

.icon-undo:before {
  content: "";
}

.icon-walk:before {
  content: "";
}

.icon-zoomin:before {
  content: "";
}

.icon {
  position: relative;
  top: -0.1em;
  display: inline-block;
  font-size: 1.4em;
  line-height: 1;
  text-align: center;
  text-indent: 0;
  width: 1em;
  vertical-align: middle;
}

.icon-left {
  margin-right: 0.3em;
}

.icon-right {
  margin-left: 0.3em;
}

.icon-tiny {
  font-size: 0.5em;
}

.icon-caret-right,
.icon-chevron-down,
.icon-chevron-right {
  font-size: 0.8em;
}

.icon-circle-right {
  font-size: 1.6em;
}

.icon-Industrial.icon-has-color {
  color: #dead00;
}

.icon-pump.icon-has-color {
  color: #65b0d4;
}

.icon-parking.icon-has-color {
  color: #00733a;
}

.icon-aircraft.icon-has-color {
  color: #004f99;
}

.icon-truck_dump.icon-has-color,
.icon-truck.icon-has-color {
  color: #61236d;
}

.icon-etc.icon-has-color {
  color: #898989;
}

.icon-map_sales01.icon-has-color {
  color: #194a9c;
}

.icon-map_sales02.icon-has-color {
  color: #daaf00;
}

.icon-map_sales03.icon-has-color {
  color: #61186f;
}

.icon-map_sales04.icon-has-color {
  color: #6cafd6;
}

.icon-exclamation-triangle:before {
  content: "";
  width: 1em;
  height: 1em;
  background-size: contain;
  display: inline-block;
  background-image: url(../images/icon/icon_exclamation.png);
  background-repeat: no-repeat;
  background-position: 0 0;
}

.icon-inquiry-form {
  width: 24px;
}

.icon-inquiry-form:before {
  margin-top: -12px;
  margin-left: -12px;
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  width: 24px;
  height: 24px;
  display: inline-block;
  background-image: url(../images/icon/icon-form.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 0 center;
}

.icon-inquiry-mail {
  width: 27px;
}

.icon-inquiry-mail:before {
  margin-top: -10px;
  margin-left: -13px;
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  width: 27px;
  height: 20px;
  display: inline-block;
  background-image: url(../images/icon/icon-mail.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: 0 center;
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6,
p, blockquote, pre, abbr, address, cite, code, del, dfn, em,
img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i,
dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table,
caption, tbody, tfoot, thead, tr, th, td, article, aside,
canvas, details, figcaption, figure, footer, header, hgroup,
menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

html, body {
  line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

nav ul {
  list-style: none;
}

li {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  color: inherit;
  vertical-align: baseline;
  background: transparent;
}

a:hover {
  text-decoration: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

th {
  text-align: left;
}

*, *:before, *:after {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  -webkit-text-size-adjust: 100%;
  font-size: 1rem;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

img {
  display: block;
  max-width: none;
  width: 100%;
  height: auto;
}

a {
  text-decoration: none;
  color: inherit;
}

@media print, screen and (min-width: 1024px) {
  a:hover {
    text-decoration: underline;
  }
}

sup {
  vertical-align: super;
}

#deviceCheck {
  position: static;
}

@media print, screen and (min-width: 1024px) {
  #deviceCheck {
    position: relative;
  }
}

.l-headerWrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  z-index: 101;
}

@media print, screen and (min-width: 1024px) {
  .l-headerWrap {
    position: relative;
  }
}

.l-headerWrap.is-fix {
  position: fixed;
  top: -45px;
}

@media print, screen and (min-width: 1024px) {
  .l-headerWrap.is-fix {
    position: relative;
    top: 0 !important;
  }
}

.l-header {
  width: 100%;
  height: 48px;
  position: relative;
  border-bottom: 1px solid #e5e5e5;
}

.l-header:after {
  content: '';
  display: block;
  clear: both;
}

@media (min-width: 768px) {
  .l-header {
    min-height: 102px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-header {
    height: auto;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-header__inner {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 30px;
  }
  .l-header__inner:after {
    content: '';
    display: block;
    clear: both;
  }
}

.l-header__logo {
  float: left;
}

@media (min-width: 768px) {
  .l-header__logo {
    height: 100px;
    padding: 28px 0 25px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-header__logo {
    padding: 28px 0 25px;
  }
}

.l-header__logo a {
  display: inline-block;
}

.l-header__logo span {
  display: none;
}

@media (min-width: 768px) {
  .l-header__logo span {
    padding: 0 0 0 25px;
    font-size: 1.4rem;
    display: inline-block;
    vertical-align: middle;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-header__logo span {
    padding: 0 0 0 25px;
    font-size: 1.4rem;
    display: inline-block;
    vertical-align: middle;
  }
}

@media (min-width: 768px) {
  .l-header__logo span img {
    width: auto;
    height: 13px;
    margin: 0;
  }
}

.l-header__logo--world span {
  display: inline-block;
  vertical-align: middle;
}

.l-header__logo--world span img {
  margin: -10px 0 0 10px;
}

@media (min-width: 768px) {
  .l-header__logo--world span img {
    margin: 0;
  }
}

.l-header__logo img {
  width: 80px;
  margin: 13px 0 0 15px;
  max-width: 100%;
}

@media (min-width: 768px) {
  .l-header__logo img {
    width: 150px;
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 0 30px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-header__logo img {
    margin: 0;
  }
}

.l-header__navi {
  float: right;
}

.l-header__navi:after {
  content: '';
  display: block;
  clear: both;
}

@media print, screen and (min-width: 1024px) {
  .l-header__navi {
    padding: 0 0 20px;
  }
}

@media (min-width: 1200px) {
  .l-header__navi {
    padding: 0 0 10px;
  }
}

.l-global {
  float: left;
  width: 72px;
  border-left: 1px solid #e5e5e5;
}

@media (min-width: 768px) {
  .l-global {
    width: 115px;
    height: 100px;
    vertical-align: middle;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-global {
    border-left: none;
    display: block;
    float: right;
    width: auto;
    height: auto;
    position: relative;
    z-index: 9999;
  }
}

.l-global__list {
  display: block;
}

@media (min-width: 768px) {
  .l-global__list {
    display: inline-block;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-global__list {
    display: table;
    padding: 10px 0 0;
    margin: 0 0 20px;
  }
}

.l-global__item {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .l-global__item {
    display: table-cell;
    vertical-align: middle;
    padding: 3px 15px;
    border-right: 1px solid #e5e5e5;
    color: #666;
    font-size: 1.2rem;
  }
  .l-global__item i {
    font-size: 1.8rem;
  }
}

.l-global__item:last-child {
  display: table;
  border-right: none;
}

@media print, screen and (min-width: 1024px) {
  .l-global__item:last-child {
    padding: 5px 0 3px 15px;
  }
}

.l-global__btn {
  display: table-cell;
  font-size: 0.9rem;
  text-align: center;
  height: 48px;
  vertical-align: middle;
  padding: 8px 0 0;
  color: #444444;
  width: 70px;
  line-height: 1.2;
}

@media (min-width: 768px) {
  .l-global__btn {
    font-size: 1.3rem;
    line-height: 1.3;
    padding: 0 20px;
    height: 104px;
    width: 115px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-global__btn {
    display: inline;
    position: relative;
    z-index: 10;
    width: 130px;
    height: auto;
    font-size: 1.2rem;
    font-weight: 500;
    padding: 0;
  }
}

.l-global__btn--open {
  display: inline-block;
  padding: 0;
}

.l-global__btn--open i {
  color: #b5b5b5;
  display: block;
  margin: 0 auto !important;
}

@media print, screen and (min-width: 1024px) {
  .l-global__btn--open i {
    color: #444444;
    display: inline;
    margin: 0 0 0 4px !important;
  }
}

.l-global__btn--close {
  display: none;
}

.l-global__btn.is-open {
  background-color: #0a41a6;
  color: #0a41a6;
  position: relative;
  border-left: 1px solid #0a41a6;
  border-right: 1px solid #0a41a6;
}

@media print, screen and (min-width: 1024px) {
  .l-global__btn.is-open {
    background-color: #fff;
    color: #444444;
    border: none;
  }
}

.l-global__btn.is-open .l-global__btn--open {
  display: none;
  width: 40px;
  margin: 0 auto;
}

@media print, screen and (min-width: 1024px) {
  .l-global__btn.is-open .l-global__btn--open {
    display: block;
    width: 100%;
  }
}

.l-global__btn.is-open .l-global__btn--close {
  display: block;
  width: 70px;
  margin: 0 auto;
}

@media print, screen and (min-width: 1024px) {
  .l-global__btn.is-open .l-global__btn--close {
    display: none;
    width: 100%;
  }
}

.l-global__btn.is-open .l-global__btn--close i {
  color: #fff;
  font-size: 2rem;
}

@media (min-width: 768px) {
  .l-global__btn.is-open .l-global__btn--close i {
    font-size: 2.7rem;
  }
}

.l-global__btn i {
  margin: 0;
  padding-top: 2px;
  font-size: 1rem;
}

@media (min-width: 768px) {
  .l-global__btn i {
    font-size: 1.2rem;
  }
}

.l-global__main {
  height: 0;
  overflow: hidden;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  z-index: 1000;
  background-color: #0a41a6;
}

.l-global__main.is-open {
  height: auto;
}

@media print, screen and (min-width: 1024px) {
  .l-global__main {
    width: 730px;
    left: auto;
    right: 0;
  }
  .l-global__main.is-open {
    overflow: visible;
  }
  .l-global__main.is-open .l-global__bg {
    display: block;
  }
  .l-global__main:before {
    content: '';
    width: 22px;
    height: 15px;
    position: absolute;
    top: -15px;
    right: 50px;
    z-index: 100;
    border-right: 11px solid #fff;
    border-left: 11px solid #fff;
    border-bottom: 11px solid #0a41a6;
  }
}

.l-global__bg {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .l-global__bg {
    position: fixed;
    top: 100px;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background-color: rgba(255, 255, 255, 0.8);
  }
}

.l-global__inner {
  padding: 20px 15px;
}

@media (min-width: 768px) {
  .l-global__inner {
    padding: 20px 4.5%;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-global__inner {
    padding: 35px 45px;
    background-color: #0a41a6;
    position: relative;
    z-index: 2;
  }
  .l-global__inner:after {
    content: '';
    display: block;
    clear: both;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-global__left {
    float: left;
    width: 30%;
    width: 160px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-global__right {
    float: right;
    width: 60%;
    width: 410px;
  }
}

.l-global__title {
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: bold;
  border-top: 1px solid #2f66d4;
}

.l-global__title:first-child {
  border-top: none;
}

@media print, screen and (min-width: 1024px) {
  .l-global__title {
    margin: 0 0 10px;
    border-top: none;
  }
}

.l-global__title a {
  display: block;
  padding: 16px 0;
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .l-global__title a {
    padding: 0;
    pointer-events: none;
  }
  .l-global__title a:hover {
    text-decoration: none;
  }
}

.l-global__title a i {
  position: absolute;
  top: 20px;
  right: 10px;
  font-size: 1.5rem;
}

.l-global__title a .icon.icon-angle-down {
  display: block;
}

@media print, screen and (min-width: 1024px) {
  .l-global__title a .icon.icon-angle-down {
    display: none;
  }
}

.l-global__title a .icon.icon-angle-up {
  display: none;
}

.l-global__title a.is-open .icon.icon-angle-down {
  display: none;
}

.l-global__title a.is-open .icon.icon-angle-up {
  display: block;
}

@media print, screen and (min-width: 1024px) {
  .l-global__title a.is-open .icon.icon-angle-up {
    display: none;
  }
}

.l-global__contents {
  height: 0;
  overflow: hidden;
  color: #b4d4fc;
  font-size: 1.4rem;
}

.l-global__contents.is-open {
  height: auto;
}

@media print, screen and (min-width: 1024px) {
  .l-global__contents {
    height: auto;
    margin: 0 0 37px;
  }
}

.l-global__contents li {
  border-bottom: 1px solid #2f66d4;
}

.l-global__contents li:last-child {
  border-bottom: none;
  padding: 0 0 30px;
}

@media print, screen and (min-width: 1024px) {
  .l-global__contents li:last-child {
    border-bottom: 1px solid #2f66d4;
    padding: 0;
  }
}

.l-global__contents li.is-current a {
  color: #fff;
}

.l-global__contents a {
  display: block;
  position: relative;
  padding: 15px 3em 15px 15px;
  line-height: 1.3;
}

@media print, screen and (min-width: 1024px) {
  .l-global__contents a {
    padding: 10px 5em 10px 15px;
  }
}

.l-global__contents a i:first-child {
  margin: -2px 5px 0 0;
  font-size: 1rem;
  position: absolute;
  top: 20px;
  left: 0;
}

@media print, screen and (min-width: 1024px) {
  .l-global__contents a i:first-child {
    top: 15px;
  }
}

.l-global__contents a i:last-child {
  margin: 0 0 0 5px;
}

@media print, screen and (min-width: 1024px) {
  .l-global__contents a i:last-child {
    margin: 0 0 0 10px;
  }
}

.l-global__contents span {
  color: #fdfeff;
  font-size: 1.1rem;
  position: absolute;
  top: 35%;
  right: 0;
}

.l-global__langList {
  margin: 16px 0 40px;
  width: 100%;
  display: table;
}

.l-global__langList li {
  display: table-cell;
  width: 33.3%;
  height: 40px;
  text-align: center;
  background-color: rgba(74, 123, 230, 0.5);
  border-right: 1px solid #0a41a6;
  color: #d6ddfc;
}

.l-global__langList li.is-current {
  background-color: #d3ddf3;
  color: #0a41a6;
}

@media print, screen and (min-width: 1024px) {
  .l-global__langList li {
    display: block;
    width: 100%;
    background: none;
    border-right: none;
    border-bottom: 1px solid #2f66d4;
  }
}

.l-global__langList li a {
  display: block;
  font-size: 1.4rem;
  height: 100%;
  line-height: 40px;
}

.l-global__langList li a:hover {
  text-decoration: none;
  background-color: #e8eefa;
  color: #0a41a6;
}

.l-global__text {
  border-top: 1px solid #2f66d4;
  padding: 15px 0;
  color: #fff;
  line-height: 1.4;
}

@media print, screen and (min-width: 1024px) {
  .l-global__text {
    border-top: none;
    padding: 0 0 20px;
  }
}

.l-global__text a {
  text-decoration: underline;
}

.l-global__global {
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .l-global__global {
    clear: both;
    border-top: none;
    padding: 0;
  }
}

.l-global__global a {
  display: block;
  margin: 0 auto;
  text-align: center;
  color: #ffffff;
  font-size: 1.4rem;
  background-color: #2a5ec6;
  padding: 16px 0 13px;
  border-radius: 4px;
  position: relative;
  transition: all 0.3s;
}

.l-global__global a:hover {
  text-decoration: none;
  background-color: #e8eefa;
  color: #0a41a6;
}

.l-global__global a span {
  font-weight: bold;
}

.l-global__global a i {
  margin: 0 5px 0 -16px;
  font-size: 2.4rem;
}

.l-global__global a .icon-chevron-right {
  position: absolute;
  top: 20px;
  right: 5px;
  font-size: 1.5rem;
}

.l-navi {
  float: left;
  width: 47px;
  display: table;
  border-left: 1px solid #e5e5e5;
}

@media print, screen and (min-width: 1024px) {
  .l-navi {
    clear: both;
    display: block;
    float: right;
    width: auto;
    position: static;
    border-left: none;
    padding: 10px 0 0;
  }
  .l-navi:after {
    content: '';
    display: block;
    clear: both;
  }
}

.l-navi__btn {
  display: table-cell;
  position: relative;
  width: 100%;
  height: 48px;
  text-align: center;
  vertical-align: middle;
  font-size: 1.6rem;
  color: #0032a0;
  padding: 4px 0 0;
}

@media (min-width: 768px) {
  .l-navi__btn {
    padding: 0 30px;
    height: 100px;
    font-size: 2.2rem;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-navi__btn {
    display: none;
  }
}

.l-navi__btn .icon-close {
  display: none;
}

.l-navi__btn .icon-meun {
  display: inline-block;
  top: 0;
}

.l-navi__btn.is-open {
  position: relative;
  background-color: #fff;
}

.l-navi__btn.is-open .icon-close {
  display: inline-block;
  color: #0a41a6;
  font-size: 2rem;
}

@media (min-width: 768px) {
  .l-navi__btn.is-open .icon-close {
    font-size: 3.1rem;
  }
}

.l-navi__btn.is-open .icon-meun {
  display: none;
}

.l-navi__main {
  height: 0;
  overflow: hidden;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  z-index: 1000;
  background-color: #fff;
  margin: 1px 0 0;
}

.l-navi__main.is-open {
  height: 100vh;
  overflow: scroll;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__main {
    margin: 0;
    padding: 1px 0 0;
    position: static;
    height: auto;
    margin: 0;
    float: right;
  }
  .l-navi__main.is-open {
    height: auto;
  }
}

.l-navi__inner {
  padding: 0 0 15px;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__inner {
    padding: 0;
  }
}

.l-navi__list {
  width: 100%;
  padding: 0 15px;
  color: #010101;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__list {
    float: right;
    padding: 0;
  }
  .l-navi__list:after {
    content: '';
    display: block;
    clear: both;
  }
}

.l-navi__item {
  border-bottom: 1px solid #e5e5e5;
}

.l-navi__item.is-current > a {
  color: #0A41A6;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__item {
    float: left;
    margin: 0 0 0 25px;
    border-bottom: none;
    line-height: 1.6;
  }
  .l-navi__item:first-child {
    margin: 0;
  }
  .l-navi__item i {
    font-size: 1.3rem;
    margin: 0 0 0 5px;
  }
}

@media (min-width: 1200px) {
  .l-navi__item {
    margin: 0 0 0 35px;
    letter-spacing: 0.05em;
  }
}

.l-navi__item a {
  display: block;
  font-size: 1.5rem;
  font-weight: bold;
  padding: 15px 10px;
  position: relative;
}

@media (min-width: 768px) {
  .l-navi__item a {
    padding: 15px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-navi__item a {
    padding: 0;
    font-weight: normal;
    font-size: 1.4rem;
  }
}

@media (min-width: 1200px) {
  .l-navi__item a {
    font-size: 1.7rem;
  }
}

.l-navi__item a .icon-chevron-down {
  display: inline-block;
}

.l-navi__item a .icon-chevron-up {
  display: none;
}

.l-navi__item a.is-open .icon-chevron-down {
  display: none;
}

.l-navi__item a.is-open .icon-chevron-up {
  display: inline-block;
}

.l-navi__item a i {
  position: absolute;
  top: 16px;
  right: 15px;
  font-size: 1.3rem;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__item a i {
    position: static;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-navi__item span:hover {
    color: #fff;
    text-decoration: none;
  }
}

.l-navi__childBg {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childBg {
    position: fixed;
    top: 100px;
    left: 0;
    width: 100%;
    height: 100vh;
  }
  .l-navi__childBg.is-open {
    display: block;
  }
}

.l-navi__childWrap {
  height: 0;
  margin: 0 -15px;
  overflow: hidden;
}

.l-navi__childWrap.is-open {
  height: auto;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childWrap {
    margin: 0;
    max-height: 0;
    height: auto;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    z-index: 1000;
    background-color: #d5e2fa;
    background: linear-gradient(-90deg, #e8eefa 50%, #d5e2fa 50%, #d5e2fa);
    transition: max-height 0.25s linear;
  }
  .l-navi__childWrap:after {
    content: '';
    display: block;
    clear: both;
  }
  .l-navi__childWrap.is-open {
    max-height: 100vh;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childWrapInner {
    display: table;
    width: 100%;
    max-width: 1170px;
    padding: 0 30px;
    margin: 0 auto;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childLeft {
    display: block;
    vertical-align: top;
    width: 100%;
    padding: 45px 156px 45px 0;
    background-color: #d5e2fa;
  }
  .l-navi__childLeft:after {
    content: '';
    display: block;
    clear: both;
  }
}

@media (min-width: 1200px) {
  .l-navi__childLeft {
    display: table-cell;
    padding: 45px 0;
    width: 83%;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childLeftInner {
    width: 100%;
    max-width: 940px;
    float: right;
  }
}

.l-navi__childRight {
  background-color: #e8eefa;
  padding: 10px 25px;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childRight {
    position: absolute;
    top: 0;
    right: 0;
    display: table-cell;
    vertical-align: top;
    width: 180px;
    padding: 65px 30px 0 30px;
  }
}

@media (min-width: 1200px) {
  .l-navi__childRight {
    position: static;
    width: 17%;
    padding: 65px 0 0 30px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childRightInner {
    width: 100%;
    max-width: 170px;
  }
}

.l-navi__lead {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__lead {
    display: block;
    color: #1745b1;
    font-size: 2.1rem;
    margin: 0 0 35px;
  }
}

.l-navi__childList {
  background-color: #d5e2fa;
  padding: 15px;
}

@media (min-width: 768px) {
  .l-navi__childList {
    padding: 15px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childList {
    padding: 0;
  }
  .l-navi__childList:after {
    content: '';
    display: block;
    clear: both;
  }
}

.l-navi__childItem.is-current {
  background-color: #0a41a6;
}

.l-navi__childItem.is-current .l-navi__childText {
  color: #fff;
}

.l-navi__childItem.is-current .l-navi__childText i {
  color: #d5e2fa;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childItem.is-current .l-navi__childText i {
    color: #0a41a6;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childItem {
    width: 20%;
    margin: 0 0 40px 0;
    padding: 0 24px 0 0;
    float: left;
  }
  .l-navi__childItem:first-child {
    display: none;
  }
  .l-navi__childItem:nth-of-type(7) {
    clear: both;
  }
  .l-navi__childItem.is-current {
    background: none;
  }
  .l-navi__childItem.is-current .l-navi__childText {
    color: #000000;
  }
}

.l-navi__childItem a {
  padding: 13px 0;
  line-height: 1;
  padding: 15px 0 13px;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childItem a {
    padding: 0;
  }
  .l-navi__childItem a .l-navi__childImg:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    opacity: 0;
    transition: all 0.2s linear 0s;
  }
  .l-navi__childItem a:hover .l-navi__childImg:before {
    opacity: 0.4;
  }
}

.l-navi__childItem a span:hover {
  color: #000;
}

.l-navi__childItem a i {
  position: absolute;
  top: 2px;
  left: 10px;
  font-size: 1rem;
  color: #0a41a6;
}

@media (min-width: 768px) {
  .l-navi__childItem a i {
    left: 15px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childItem a i {
    left: -5px;
  }
}

.l-navi__childImg {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childImg {
    display: block;
    margin: 0 0 15px;
    position: relative;
  }
}

.l-navi__childText {
  display: block;
  font-weight: normal;
  padding: 0 25px;
  position: relative;
}

@media (min-width: 768px) {
  .l-navi__childText {
    padding: 0 30px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childText {
    font-size: 1.4rem;
    line-height: 1.2;
    color: #000000;
    padding: 0;
    padding: 0 0 0 15px;
  }
}

.l-navi__all {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__all {
    display: block;
    width: 97%;
    background-color: #c1d4f8;
  }
  .l-navi__all a {
    display: block;
    text-align: center;
    line-height: 53px;
    color: #0e4098;
    font-size: 1.6rem;
  }
  .l-navi__all a:hover {
    background-color: #4471D6;
    color: #fff;
    text-decoration: none;
    transition: all 0.3s;
  }
  .l-navi__all a i {
    font-size: 2.5rem;
    margin: -3px 5px 0 0;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childItem2 {
    margin: 0 0 45px;
  }
}

.l-navi__childItem2 a {
  display: block;
  padding: 0;
  font-weight: normal;
  color: #0a41a6;
}

.l-navi__childItem2 a:hover {
  color: #0a41a6;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childItem2 a span:nth-of-type(1) {
    display: block;
    text-align: center;
  }
}

.l-navi__childItem2 a span:nth-of-type(1):hover {
  color: #0a41a6;
}

.l-navi__childItem2 a span:nth-of-type(1) i {
  position: static;
  font-size: 2.8rem;
  margin: 0 10px 0 0;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childItem2 a span:nth-of-type(1) i {
    font-size: 4rem;
    margin: 0;
  }
}

.l-navi__childItem2 a span:nth-of-type(2) {
  display: inline-block;
  padding: 12px 0;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__childItem2 a span:nth-of-type(2) {
    text-align: center;
    display: block;
    font-size: 1.3rem;
  }
  .l-navi__childItem2 a span:nth-of-type(2):hover {
    color: #0a41a6;
  }
}

@media (min-width: 1200px) {
  .l-navi__childItem2 a span:nth-of-type(2) {
    font-size: 1.4rem;
  }
}

.l-navi__others {
  padding: 25px 25px 1px;
  font-size: 1.3rem;
  color: #444444;
}

@media print, screen and (min-width: 1024px) {
  .l-navi__others {
    display: none;
  }
}

.l-navi__others li {
  margin: 0 0 20px;
}

.l-navi__others li:last-child {
  display: none;
}

.l-topNavi {
  background-color: #0a41a6;
  color: #ffffff;
}

@media print, screen and (min-width: 1024px) {
  .l-topNavi {
    height: 200px;
    background-color: rgba(14, 90, 224, 0.72);
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    position: relative;
  }
  .l-topNavi.is-aircraft {
    background-image: url("/aircraft/images/gnavi/gnavi_bg.jpg");
  }
  .l-topNavi.is-truck {
    background-image: url("/truck/images/gnavi/gnavi_bg.jpg");
  }
  .l-topNavi.is-pump {
    background-image: url("/pump/images/gnavi/gnavi_bg.jpg");
  }
  .l-topNavi.is-parking {
    background-image: url("/parking/images/gnavi/gnavi_bg.jpg");
  }
  .l-topNavi.is-awp {
    background-image: url("/awp/images/gnavi/gnavi_bg.jpg");
  }
  .l-topNavi.is-environment {
    background-image: url("/environment/images/gnavi/gnavi_bg.jpg");
  }
  .l-topNavi.is-pbp {
    background-image: url("/pbp/images/gnavi/gnavi_bg.jpg");
  }
  .l-topNavi.is-vac {
    background-image: url("/vac/images/gnavi/gnavi_bg.jpg");
  }
  .l-topNavi.is-dd {
    background-image: url("/dd/images/gnavi/gnavi_bg.jpg");
  }
  .l-topNavi.is-paxway {
    background-image: url("/paxway/images/gnavi/gnavi_bg.jpg");
  }
  .l-topNavi.is-top {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: none;
  }
}

.l-topNavi__inner {
  padding: 0 14px;
}

@media (min-width: 768px) {
  .l-topNavi__inner {
    padding: 0 30px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-topNavi__inner {
    height: 100%;
    background-color: rgba(14, 90, 224, 0.72);
    padding: 0 30px;
  }
}

.l-topNavi__title {
  font-size: 1.3rem;
}

.l-topNavi__title a {
  display: block;
  padding: 16px 0;
  font-weight: normal;
  position: relative;
}

.l-topNavi__title a.is-close .is-open {
  display: none;
}

.l-topNavi__title a.is-close .is-close {
  display: block;
}

.l-topNavi__title a.is-open .is-open {
  display: block;
}

.l-topNavi__title a.is-open .is-close {
  display: none;
}

@media (min-width: 768px) {
  .l-topNavi__title a {
    font-size: 2rem;
    padding: 25px 0;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-topNavi__title a {
    font-size: 2.8rem;
    padding: 58px 0 0;
    text-align: center;
    pointer-events: none;
  }
}

.l-topNavi__titleIcon {
  position: absolute;
  top: 50%;
  right: 0;
  margin: -4px 0 0;
}

@media (min-width: 768px) {
  .l-topNavi__titleIcon {
    top: 45%;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-topNavi__titleIcon {
    display: none;
  }
}

.l-topNavi__lead {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .l-topNavi__lead {
    display: block;
    text-align: center;
    font-size: 1.4rem;
    opacity: 0.5;
    color: #fff;
    padding: 15px 0 0;
  }
}

.l-topNavi__contents {
  height: 0;
  overflow: hidden;
}

.l-topNavi__contents.is-open {
  height: auto;
}

@media print, screen and (min-width: 1024px) {
  .l-topNavi__contents {
    height: auto;
    width: 100%;
    padding: 23px 40px 0;
    position: absolute;
    bottom: 0;
    left: 0;
    text-align: center;
    overflow: visible;
  }
}

.l-topNavi__list {
  padding: 0 0 20px;
}

@media (min-width: 768px) {
  .l-topNavi__list {
    padding: 0 0 30px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-topNavi__list {
    padding: 0;
    font-size: 0;
    text-align: center;
    background-color: #0a41a6;
    display: inline-block;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-topNavi__list.is-narrow .l-topNavi__item > a {
    padding: 0 0.8em;
  }
}

.l-topNavi__item {
  margin: 0 0 1px;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 1024px) {
  .l-topNavi__item {
    display: inline-block;
    margin: 0 0 0 1px;
    position: relative;
    vertical-align: top;
  }
  .l-topNavi__item:before {
    content: '';
    display: block;
    width: 1px;
    height: 2em;
    position: absolute;
    top: 50%;
    left: -1px;
    margin: -1em 0 0;
    background-color: #4f72af;
  }
  .l-topNavi__item:first-child {
    margin: 0;
  }
  .l-topNavi__item:first-child:before {
    display: none;
  }
  .l-topNavi__item.is-lang:before {
    display: none;
  }
}

.l-topNavi__item.is-current {
  color: #0032a0;
}

.l-topNavi__item.is-current a {
  background-color: #d3ddf3;
}

.l-topNavi__item a {
  display: block;
  text-align: center;
  line-height: 45px;
  background-color: #2557c3;
}

@media print, screen and (min-width: 1024px) {
  .l-topNavi__item a {
    line-height: 60px;
    padding: 0 19px;
    background: none;
    font-size: 1.3rem;
    transition: 0.3s;
  }
  .l-topNavi__item a:hover {
    background-color: #2151b7;
    text-decoration: none;
  }
}

@media (min-width: 1200px) {
  .l-topNavi__item a {
    font-size: 1.5rem;
    padding: 0 24px;
  }
}

.l-topNavi__item a.is-current {
  background-color: #e6ebf6;
  background-color: #cfd9ea;
  color: #0a41a6;
}

.l-topNavi__item__lang {
  display: block;
  padding: 15px 0;
}

.l-topNavi__item__lang i {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .l-topNavi__item__lang {
    padding: 0 20px;
    line-height: 60px;
    background-color: #022b91;
    cursor: pointer;
    color: #b4d4fc;
    position: relative;
  }
  .l-topNavi__item__lang:hover {
    color: #fff;
    text-decoration: none;
  }
  .l-topNavi__item__lang i {
    display: block;
    position: absolute;
    top: 73%;
    left: 50%;
    font-size: 10px;
    margin: 0 0 0 -5px;
  }
}

.l-topNavi__item__top {
  display: inline;
}

@media print, screen and (min-width: 1024px) {
  .l-topNavi__item__top {
    display: none;
  }
}

.l-topNavi__childList {
  display: table;
  width: 100%;
}

@media print, screen and (min-width: 1024px) {
  .l-topNavi__childList {
    display: none;
    position: absolute;
    top: 100%;
    right: 0px;
    background-color: #022b91;
    width: 180px;
    padding: 8px;
  }
  .l-topNavi__childList.is-open {
    display: block;
  }
}

.l-topNavi__childItem {
  display: table-cell;
  width: 33.3%;
  border-right: 1px solid #0032a0;
}

.l-topNavi__childItem.is-current {
  color: #0032a0;
}

.l-topNavi__childItem.is-current a {
  background-color: #d3ddf3;
}

.l-topNavi__childItem:last-child {
  border-right: none;
}

@media print, screen and (min-width: 1024px) {
  .l-topNavi__childItem {
    display: block;
    width: 100%;
    border: none;
    border-bottom: 1px solid #2f66d4;
  }
  .l-topNavi__childItem:last-child {
    border-bottom: none;
  }
  .l-topNavi__childItem a {
    line-height: 1;
    font-size: 1.6rem;
    padding: 15px 0 13px;
  }
}

.l-breadcrumb {
  display: none;
  background-color: #e6ebf6;
  margin: 0 0 70px;
  padding: 0 30px;
}

@media print, screen and (min-width: 1024px) {
  .l-breadcrumb {
    display: block;
  }
}

.l-breadcrumb--corporate {
  background-color: transparent;
}

@media print, screen and (min-width: 1024px) {
  .l-breadcrumb--corporate {
    display: block;
  }
}

.l-breadcrumb--us2 {
  margin: 0 0 30px;
}

.l-breadcrumb--ProductInformation {
  margin: 0;
}

.l-breadcrumb__inner {
  width: 100%;
  max-width: 1110px;
  margin: 0 auto;
  display: table;
}

.l-breadcrumb__list {
  display: table-cell;
  width: 100%;
  height: 50px;
  vertical-align: middle;
}

.l-breadcrumb__list:after {
  content: '';
  display: block;
  clear: both;
}

.l-breadcrumb__item {
  float: left;
  font-size: 1.1rem;
  color: #444444;
  padding: 0 10px 0 0;
}

.l-breadcrumb__item:after {
  color: #444444;
  display: inline-block;
  content: '/';
  padding: 0 0 0 10px;
}

.l-breadcrumb__item:last-child {
  margin: 0;
  padding: 0;
}

.l-breadcrumb__item:last-child:after {
  display: none;
}

.l-breadcrumb__item a {
  color: #4471D6;
}

.l-breadcrumb__item a:hover {
  color: #ef7101;
}

.l-breadcrumb__item a:visited {
  color: #8833CC;
}

.l-googleSerch {
  display: inline-block;
  width: 100%;
  padding: 10px;
  color: #888;
}

@media print, screen and (min-width: 1024px) {
  .l-googleSerch {
    width: auto;
    margin-top: 12px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-googleSerch {
    position: fixed;
    top: 30px;
    opacity: 0;
    visibility: hidden;
  }
  .l-googleSerch.is-active {
    z-index: 1;
    opacity: 1;
    visibility: visible;
  }
}

.l-googleSerch__form {
  position: relative;
}

.l-googleSerch__icon {
  height: 2rem;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 12px;
  margin: auto;
  font-size: 2rem;
}

@media print, screen and (min-width: 1024px) {
  .l-googleSerch__icon {
    display: none;
  }
}

.l-googleSerch__wrap:after {
  content: '';
  display: block;
  clear: both;
}

@media print, screen and (min-width: 1024px) {
  .l-googleSerch__wrap {
    position: relative;
    width: 730px;
    padding: 20px;
    background-color: #0a41a6;
    box-shadow: 0px 0px 8px 0.1px rgba(0, 0, 0, 0.2);
  }
  .l-googleSerch__wrap:before {
    content: "";
    position: absolute;
    top: -12px;
    right: 175px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 11px 12px 11px;
    border-color: transparent transparent #0a41a6 transparent;
  }
}

.l-googleSerch__text {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 100%;
  padding: 11px 20px 11px 40px;
  font-size: 1.6rem;
  background-color: #f0f0f0;
  border: 0;
}

@media print, screen and (min-width: 1024px) {
  .l-googleSerch__text {
    float: left;
    width: 560px;
    padding-top: 16px;
    padding-left: 20px;
    padding-bottom: 16px;
    border-radius: 4px;
  }
  .l-googleSerch__text::-webkit-input-placeholder {
    color: transparent;
  }
  .l-googleSerch__text::-moz-placeholder {
    color: transparent;
  }
  .l-googleSerch__text:-ms-input-placeholder {
    color: transparent;
  }
  .l-googleSerch__text::placeholder {
    color: transparent;
  }
}

input[type="submit"].l-googleSerch__submit {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  input[type="submit"].l-googleSerch__submit {
    margin: 0;
    border: none;
    border-radius: 4px;
    color: inherit;
    font-family: inherit;
    font-size: 1.6rem;
    text-align: center;
    text-decoration: none;
    background: transparent;
    cursor: pointer;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    display: block;
    float: left;
    width: 120px;
    height: 50px;
    padding: 0;
    line-height: 50px;
    margin-left: 10px;
    background-color: #2a5ec6;
    color: #fff;
  }
}

.l-contents {
  width: 100%;
  max-width: 1170px;
  margin: 0 auto;
  padding: 115px 4.5% 30px;
}

.l-contents:after {
  content: '';
  display: block;
  clear: both;
}

@media (min-width: 768px) {
  .l-contents {
    padding: 200px 4.5% 30px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-contents {
    padding: 0 15px 40px;
  }
}

.l-contents--corporate {
  padding: 90px 4.5% 30px;
}

@media (min-width: 768px) {
  .l-contents--corporate {
    padding: 150px 4.5% 30px;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-contents--corporate {
    padding: 0 15px 40px;
  }
}

#mainArea {
  color: #444;
  position: relative;
  z-index: 9;
}

.l-main {
  color: #444;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
}

@media print, screen and (min-width: 1024px) {
  .l-main {
    width: 72%;
    float: left;
    margin: 0 15px 0;
  }
}

@media (min-width: 768px) {
  .l-main img {
    max-width: 100%;
    width: auto;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-main--full {
    width: 100%;
    float: none;
    margin-left: 0;
    padding: 0 15px;
  }
}

.l-side {
  width: 100%;
}

@media print, screen and (min-width: 1024px) {
  .l-side {
    width: 22%;
    float: right;
    margin: 0 15px 40px 0;
  }
}

.l-sideNavi {
  font-size: 1.5rem;
  line-height: 1.4;
}

.l-sideNavi a {
  display: block;
}

.l-sideNavi__title {
  background-color: #0a41a6;
  color: #ffffff;
  padding: 19px 33px 20px 14px;
  position: relative;
  font-size: 1.6rem !important;
  line-height: 1.4;
  font-weight: 500;
  letter-spacing: 0.03em;
}

@media print, screen and (min-width: 1024px) {
  .l-sideNavi__title {
    transition: 0.2s;
  }
  .l-sideNavi__title:hover {
    text-decoration: none;
    background-color: #2151b7;
  }
}

.l-sideNavi__title:before {
  position: absolute;
  top: 50%;
  right: 10px;
  font-size: 20px;
  font-weight: bold;
  margin: -13px 0 0;
  font-family: "iconfont","Noto Sans Japanese", "Noto Sans", "Noto Sans", "Noto Sans SC", sans-serif;
  -webkit-font-smoothing: antialiased;
}

.l-sideNavi__list--grand {
  padding: 0 0 15px;
}

.l-sideNavi__item {
  color: #000000;
  font-size: 1.5rem;
  line-height: 1.4;
  border-bottom: 1px solid #e5e5e5;
}

@media print, screen and (min-width: 1024px) {
  .l-sideNavi__item {
    font-size: 1.4rem;
  }
}

.l-sideNavi__item > a {
  font-size: 1.5rem;
  line-height: 1.4;
  padding: 18px 30px 18px 14px;
  position: relative;
  color: #000;
}

.l-sideNavi__item > a:before {
  position: absolute;
  top: 50%;
  right: 10px;
  font-size: 14px;
  margin: -7px 0 0;
  color: #c9c9c9;
  font-family: "iconfont","Noto Sans Japanese", "Noto Sans", "Noto Sans", "Noto Sans SC", sans-serif;
  -webkit-font-smoothing: antialiased;
}

.l-sideNavi__item > a:hover {
  text-decoration: none;
  background-color: #e8eefa;
}

@media print, screen and (min-width: 1024px) {
  .l-sideNavi__item > a {
    padding: 18px 34px 18px 14px;
    font-size: 1.4rem;
  }
}

.l-sideNavi__item.is-open .l-sideNavi__child {
  display: block;
}

.l-sideNavi__item > a.is-current {
  color: #0a41a6;
  font-weight: bold;
}

.l-sideNavi__item > a.is-current:before {
  font-weight: normal;
}

.l-sideNavi__item--child {
  border-top: 1px solid #e5e5e5;
}

@media print, screen and (min-width: 1024px) {
  .l-sideNavi__item--child.is-current {
    color: #0a41a6;
    font-weight: bold;
  }
  .l-sideNavi__item--child > a:hover {
    text-decoration: none;
    background-color: #e8eefa;
  }
}

.l-sideNavi__item--child a {
  padding: 15px 24px;
}

.l-sideNavi__item--child > a {
  position: relative;
  padding: 15px 10px 15px 40px;
  padding: 15px 10px 15px 28px;
  font-size: 1.5rem;
  line-height: 1.4;
  color: #444;
}

.l-sideNavi__item--child > a:before {
  position: absolute;
  top: 25px;
  left: 15px;
  font-size: 12px;
  font-size: 11px;
  margin: -7px 0 0;
  color: #c9c9c9;
  font-family: "iconfont","Noto Sans Japanese", "Noto Sans", "Noto Sans", "Noto Sans SC", sans-serif;
  -webkit-font-smoothing: antialiased;
}

.l-sideNavi__item--child > a.is-current {
  color: #0a41a6;
  font-weight: bold;
}

.l-sideNavi__item--child > a.is-current:before {
  color: #0a41a6;
  font-weight: normal;
}

@media print, screen and (min-width: 1024px) {
  .l-sideNavi__item--child > a {
    font-size: 1.4rem;
  }
}

.l-sideNavi__item--child.is-open .l-sideNavi__grand {
  display: block;
}

.l-sideNavi__item--child.is-current > a {
  color: #0a41a6;
  font-weight: bold;
}

.l-sideNavi__item--grand {
  font-size: 1.4rem;
  line-height: 1.3;
  color: #4471d6;
}

@media print, screen and (min-width: 1024px) {
  .l-sideNavi__item--grand {
    font-size: 1.3rem;
  }
  .l-sideNavi__item--grand:hover {
    color: #ef7101;
  }
}

.l-sideNavi__item--grand a {
  padding: 10px 34px 10px 40px;
  padding: 10px 15px 10px 42px;
  font-size: 1.4rem;
  line-height: 1.3;
  position: relative;
}

.l-sideNavi__item--grand a:before {
  content: '-';
  display: block;
  width: 1em;
  height: 1em;
  position: absolute;
  top: 50%;
  left: 27px;
  left: 30px;
  font-size: 1.6rem;
  margin: -0.7em 0 0;
  margin: -0.8em 0 0;
  font-family: "iconfont","Noto Sans Japanese", "Noto Sans", "Noto Sans", "Noto Sans SC", sans-serif;
  -webkit-font-smoothing: antialiased;
}

.l-sideNavi__item--grand a.is-current {
  font-weight: bold;
  color: #0a41a6;
}

.l-sideNavi__item--grand a.is-current:before {
  content: "";
}

.l-sideNavi__item--grand a.is-current:before {
  font-size: 10px;
  left: 28px;
  margin: -0.5em 0 0;
}

@media print, screen and (min-width: 1024px) {
  .l-sideNavi__item--grand a {
    font-size: 1.3rem;
    line-height: 1.3;
  }
  .l-sideNavi__item--grand a:hover {
    color: #ef7101;
  }
}

.l-sideNavi__child {
  display: none;
  background-color: #f8f8f8;
}

@media print, screen and (min-width: 1024px) {
  .l-sideNavi__child > a:hover {
    background-color: #e8eefa;
  }
}

.l-sideNavi__child.is-open {
  display: block;
}

.l-sideNavi__grand {
  display: none;
}

.l-sideNavi__grand.is-open {
  display: block;
}

.l-sideBanner {
  padding: 30px 0;
}

.l-sideBanner__item {
  margin: 20px 0 0;
}

.l-sideBanner__item:first-child {
  margin: 0;
}

.l-sideBanner__list {
  margin-bottom: 30px;
}

.l-sitemap {
  display: none;
  clear: both;
  padding: 0 5px;
  margin: 15px auto 0;
}

@media print, screen and (min-width: 1024px) {
  .l-sitemap {
    display: block;
    border-top: 1px solid #e5e5e5;
    margin: 30px auto 0;
  }
}

.l-sitemap__inner {
  width: 100%;
  max-width: 1200px;
  display: table;
  margin: 0 auto 60px;
  padding: 0 15px;
}

.l-sitemap__inner:after {
  content: '';
  display: block;
  clear: both;
}

@media print, screen and (min-width: 1024px) {
  .l-sitemap__inner {
    margin: 60px auto;
    padding: 0 45px;
  }
  .l-sitemap__inner--top {
    padding: 0 30px;
  }
}

.l-sitemap__column {
  display: table-cell;
  width: 20%;
  padding: 0 15px;
}

.l-sitemap__title {
  font-size: 1.4rem;
  line-height: 1.35;
  color: #1846b3;
  font-weight: bold;
  border-bottom: 1px solid #e5e5e5;
  padding: 13px 0 13px;
}

.l-sitemap__list {
  padding: 18px 0 0;
  margin: 0 0 30px;
}

.l-sitemap__item {
  font-size: 1.3rem;
  color: #000000;
  line-height: 1.5;
  margin: 0 0 16px;
}

@media print, screen and (min-width: 1024px) {
  .l-sitemap__item {
    margin: 0 0 18px;
  }
}

.l-sitemap__item a {
  display: block;
}

.l-sitemap__item ul {
  padding: 12px 0 0;
}

@media print, screen and (min-width: 1024px) {
  .l-sitemap__item ul {
    padding: 10px 0 0;
  }
}

.l-sitemap__item ul li {
  margin: 10px 0 0;
  position: relative;
  padding: 0 0 0 13px;
}

.l-sitemap__item ul li:first-child {
  margin: 0;
}

@media print, screen and (min-width: 1024px) {
  .l-sitemap__item ul li {
    margin: 8px 0 0;
  }
}

.l-sitemap__item ul li i {
  position: absolute;
  top: 4px;
  left: 0;
  color: #1846b3;
}

.l-sitemap__item ul li span#external-link {
  position: relative !important;
  top: 4px;
}

.l-footer {
  width: 100%;
  padding: 25px 15px 30px;
  background-color: #0a41a6;
}

@media print, screen and (min-width: 1024px) {
  .l-footer {
    padding: 50px 0;
  }
}

.l-footer__pageTop {
  display: block;
  width: 40px;
  height: 40px;
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 9999;
  background-color: rgba(139, 166, 230, 0.8);
  text-align: center;
  border-radius: 7px;
  color: #fff;
  font-size: 1.3rem;
  padding: 12px 0;
}

.l-footer__pageTop i {
  top: 0;
}

@media (min-width: 768px) {
  .l-footer__pageTop {
    width: 50px;
    height: 50px;
    bottom: 30px;
    right: 30px;
    font-size: 1.6rem;
    padding: 14px 0;
  }
}

@media print, screen and (min-width: 1024px) {
  .l-footer__pageTop {
    width: 60px;
    height: 60px;
    bottom: 50px;
    right: 40px;
    padding: 15px 0;
    font-size: 2rem;
  }
}

.l-footer__list {
  text-align: center;
}

.l-footer__item {
  display: inline-block;
  border-right: 1px solid #2f66d4;
  margin: 0 10px 10px 0;
  padding: 0 10px 0 0;
  color: #ffffff;
  font-size: 1.1rem;
}

.l-footer__item:last-child {
  border-right: none;
  margin: 0 0 10px;
  padding: 0;
}

@media print, screen and (min-width: 1024px) {
  .l-footer__item {
    font-size: 1.3rem;
    margin: 0 15px 20px 0;
    padding: 0 15px 0 0;
  }
}

.l-footer__item a {
  display: block;
  padding: 5px 0;
}

.l-footer__copy {
  color: #d4e7ff;
  text-align: center;
  padding: 10px 10px 20px;
  line-height: 1.5;
}

@media print, screen and (min-width: 1024px) {
  .l-footer__copy {
    font-size: 1.3rem;
    padding: 0 0 20px;
  }
}

.l-footer__logo {
  width: 83px;
  display: block;
  margin: 0 auto;
}

@media print, screen and (min-width: 1024px) {
  .l-footer__logo {
    width: 146px;
  }
}

/*
SCSS variables are information about icon's compiled state, stored under its original file name

.icon-home {
  width: $icon-home-width;
}

The large array-like variables contain all information about a single icon
$icon-home: x y offset_x offset_y width height total_width total_height image_path;

At the bottom of this section, we provide information about the spritesheet itself
$spritesheet: width height image $spritesheet-sprites;
*/
/*
The provided mixins are intended to be used with the array-like variables

.icon-home {
  @include sprite-width($icon-home);
}

.icon-email {
  @include sprite($icon-email);
}

Example usage in HTML:

`display: block` sprite:
<div class="icon-home"></div>

To change `display` (e.g. `display: inline-block;`), we suggest using a common CSS class:

// CSS
.icon {
  display: inline-block;
}

// HTML
<i class="icon icon-home"></i>
*/
/*
The `sprites` mixin generates identical output to the CSS template
  but can be overridden inside of SCSS

@include sprites($spritesheet-sprites);
*/
/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8;
}

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden;
}

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box;
}

.mfp-container:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
  display: none;
}

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto;
}

.mfp-ajax-cur {
  cursor: progress;
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: zoom-out;
}

.mfp-zoom {
  cursor: pointer;
  cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
  cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
      user-select: none;
}

.mfp-loading.mfp-figure {
  display: none;
}

.mfp-hide {
  display: none !important;
}

.mfp-preloader {
  color: #ccc;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044;
}

.mfp-preloader a {
  color: #ccc;
}

.mfp-preloader a:hover {
  color: #fff;
}

.mfp-s-ready .mfp-preloader {
  display: none;
}

.mfp-s-error .mfp-content {
  display: none;
}

button.mfp-close,
button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #fff;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace;
}

.mfp-close:hover,
.mfp-close:focus {
  opacity: 1;
}

.mfp-close:active {
  top: 1px;
}

.mfp-close-btn-in .mfp-close {
  color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #fff;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%;
}

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #ccc;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap;
}

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
  margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
  opacity: 1;
}

.mfp-arrow:before,
.mfp-arrow:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
  border: medium inset transparent;
}

.mfp-arrow:after {
  border-top-width: 13px;
  border-bottom-width: 13px;
  top: 8px;
}

.mfp-arrow:before {
  border-top-width: 21px;
  border-bottom-width: 21px;
  opacity: 0.7;
}

.mfp-arrow-left {
  left: 0;
}

.mfp-arrow-left:after {
  border-right: 17px solid #fff;
  margin-left: 31px;
}

.mfp-arrow-left:before {
  margin-left: 25px;
  border-right: 27px solid #3f3f3f;
}

.mfp-arrow-right {
  right: 0;
}

.mfp-arrow-right:after {
  border-left: 17px solid #fff;
  margin-left: 39px;
}

.mfp-arrow-right:before {
  border-left: 27px solid #3f3f3f;
}

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
  top: -40px;
}

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
  line-height: 0;
}

.mfp-figure:after {
  content: "";
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444;
}

.mfp-figure small {
  color: #bdbdbd;
  display: block;
  font-size: 12px;
  line-height: 14px;
}

.mfp-figure figure {
  margin: 0;
}

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto;
}

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #f3f3f3;
  word-wrap: break-word;
  padding-right: 36px;
}

.mfp-image-holder .mfp-content {
  max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0;
  }
  .mfp-img-mobile img.mfp-img {
    padding: 0;
  }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0;
  }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px;
  }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    box-sizing: border-box;
  }
  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0;
  }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px;
  }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0;
  }
}

@media all and (max-width: 900px) {
  .mfp-arrow {
    -ms-transform: scale(0.75);
        transform: scale(0.75);
  }
  .mfp-arrow-left {
    -ms-transform-origin: 0;
        transform-origin: 0;
  }
  .mfp-arrow-right {
    -ms-transform-origin: 100%;
        transform-origin: 100%;
  }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px;
  }
}

.mfp-arrow {
  margin-top: -35px;
}

.mfp-arrow:active {
  margin-top: -35px;
}

@media (max-width: 900px) {
  .mfp-arrow {
    -ms-transform: scale(1);
        transform: scale(1);
  }
}

.mfp-bg {
  z-index: 10000;
  opacity: 1;
  background-color: black;
}

@media print, screen and (min-width: 1024px) {
  .mfp-bg {
    background-color: rgba(0, 0, 0, 0.9);
  }
}

.mfp-wrap {
  z-index: 10001;
  right: 0;
  max-width: none;
  margin: auto;
}

.mfp-container {
  right: 0;
  max-width: 900px;
  margin-right: auto;
  margin-left: auto;
  padding: 0;
}

.mfp-content {
  position: relative;
  margin-top: 80px;
  padding-bottom: 30px;
}

@media print, screen and (min-width: 1024px) {
  .mfp-content {
    margin-top: 80px;
    padding-bottom: 60px;
  }
}

.mfp-close-btn-in .mfp-close {
  color: #fff;
  top: -55px;
  right: 14px;
  width: 25px;
  height: 25px;
  line-height: 25px;
  color: transparent;
  opacity: 1;
}

.mfp-close-btn-in .mfp-close:before {
  content: "";
}

@media print, screen and (min-width: 1024px) {
  .mfp-close-btn-in .mfp-close {
    right: 0;
    opacity: 0.6;
  }
  .mfp-close-btn-in .mfp-close:hover {
    opacity: 1;
  }
}

.mfp-close-btn-in .mfp-close:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  font-size: 25px;
  color: #fff;
}

/* Prev、Nextアイコンはcomponent/_popup.scssとcomponent/_timeline.scssで指定しています */
/* Prevボタンをアイコンフォントの<に変更 */
button.mfp-arrow-left {
  width: 35px;
  height: 35px;
  opacity: 1;
}

button.mfp-arrow-left:before {
  content: "";
}

@media print, screen and (min-width: 1024px) {
  button.mfp-arrow-left {
    opacity: 0.6;
  }
  button.mfp-arrow-left:hover {
    opacity: 1;
  }
}

button.mfp-arrow-left:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  left: auto;
  width: 35px;
  height: 35px;
  margin-top: auto;
  margin-left: auto;
  font-size: 35px;
  color: #fff;
  border: none;
  opacity: 1;
}

button.mfp-arrow-left:after {
  display: none;
}

/* Nextボタンをアイコンフォントの>に変更 */
button.mfp-arrow-right {
  width: 35px;
  height: 35px;
  opacity: 1;
}

button.mfp-arrow-right:before {
  content: "";
}

@media print, screen and (min-width: 1024px) {
  button.mfp-arrow-right {
    opacity: 0.6;
  }
  button.mfp-arrow-right:hover {
    opacity: 1;
  }
}

button.mfp-arrow-right:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  right: 0;
  left: auto;
  width: 35px;
  height: 35px;
  margin-top: auto;
  margin-left: auto;
  font-size: 35px;
  color: #fff;
  border: none;
  opacity: 1;
}

button.mfp-arrow-right:after {
  display: none;
}

.c-tmp__title {
  margin-bottom: 35px;
  padding-bottom: 10px;
  font-size: 2.2rem;
  font-weight: bold;
  border-bottom: 1px solid #e5e5e5;
}

.c-tmp__id {
  margin-bottom: 20px;
  padding: 5px;
  color: #FFF;
  font-size: 1.4rem;
  text-align: center;
  background-color: #2cc6f3;
}

.c-tmp__id2 {
  margin-bottom: 20px;
  padding: 5px;
  color: #FFF;
  font-size: 1.4rem;
  text-align: center;
  background-color: #826ec8;
}

.c-tmp__section {
  margin-bottom: 50px;
}

.c-tmp__description {
  padding: 10px;
  margin-bottom: 20px;
  color: #999;
  font-size: 1.4rem;
  background-color: #eee;
}

.c-thumb__middle .col-xs-6:nth-child(odd),
.p-divsionProducts .col-xs-6:nth-child(odd) {
  clear: both;
  padding-right: 1.5%;
}

@media (min-width: 768px) {
  .c-thumb__middle .col-xs-6:nth-child(odd),
  .p-divsionProducts .col-xs-6:nth-child(odd) {
    clear: none;
    padding-right: 15px;
  }
}

.c-thumb__middle .col-xs-6:nth-child(even),
.p-divsionProducts .col-xs-6:nth-child(even) {
  padding-left: 1.5%;
}

@media (min-width: 768px) {
  .c-thumb__middle .col-xs-6:nth-child(even),
  .p-divsionProducts .col-xs-6:nth-child(even) {
    padding-left: 15px;
  }
}

.em {
  font-style: normal;
  font-weight: bold;
}

.strong {
  color: #ff0000;
}

.sup {
  font-size: 0.8em;
  line-height: 1;
  vertical-align: baseline;
  position: relative;
  bottom: 0.2em;
}

.sup > a + a {
  margin-left: 0.8em;
}

.sub {
  font-size: 0.8em;
  line-height: 1;
  vertical-align: baseline;
  position: relative;
}

.br__pc {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .br__pc {
    display: inline;
  }
}

@media print, screen and (min-width: 1024px) {
  .br__sp {
    display: none;
    margin-left: 1em;
  }
}

.break {
  display: inline-block;
}

.break:not(:last-child) {
  margin-right: 1em;
}

@media print, screen and (min-width: 1024px) {
  .display__nonePC {
    display: none;
  }
}

.display__noneSP {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .display__noneSP {
    display: inline;
  }
}

.c-heading {
  /* アンカーテキストでラップする */
  /**
   * 横並びのアイコンをフォントサイズより大きくし、
   * 見出しの余白を小さくする。
   */
  /**
   * amCharts.jsなどチャート見出し
   */
}

.c-heading__ttl {
  vertical-align: baseline;
}

@media print, screen and (min-width: 1024px) {
  .c-heading__ttl {
    margin-right: 20px;
    display: inline-block;
  }
}

.c-heading__txt1, .c-heading__txt2 {
  font-weight: normal;
}

.c-heading__txt1, .c-heading__txt2, .c-heading__txt3, .c-heading__txt5 {
  color: #000;
}

.c-heading__txt1 {
  font-size: 2rem;
  line-height: 1.3;
}

@media print, screen and (min-width: 1024px) {
  .c-heading__txt1 {
    font-size: 3.2rem;
  }
}

.c-heading__txt2 {
  font-size: 2rem;
  line-height: 1.3;
}

@media print, screen and (min-width: 1024px) {
  .c-heading__txt2 {
    font-size: 2.6rem;
  }
}

.c-heading__txt3 {
  font-size: 1.6rem;
  line-height: 1.3;
}

@media print, screen and (min-width: 1024px) {
  .c-heading__txt3 {
    font-size: 1.7rem;
  }
}

.c-heading__subTxt3 {
  font-size: 1.4rem;
  line-height: 1.8;
  color: #0a41a6;
  font-weight: bold;
}

.c-heading__txt4 {
  margin-top: 8px;
  margin-bottom: 10px;
  color: #0a41a6;
  font-size: 1.7rem;
  line-height: 1.3;
}

@media print, screen and (min-width: 1024px) {
  .c-heading__txt4 {
    margin-top: 10px;
  }
}

.c-heading__txt5 {
  margin-top: 10px;
  margin-bottom: 0.5em;
  font-size: 1.4rem;
  line-height: 1.4;
}

.c-heading__sub {
  font-size: 1.3rem;
  line-height: 1.3;
  vertical-align: middle;
}

.c-heading__subTop {
  margin-bottom: 5px;
}

.c-heading__subBottom {
  margin-top: 6px;
}

@media print, screen and (min-width: 1024px) {
  .c-heading__subBottom {
    margin-top: 0;
    display: inline-block;
  }
}

.c-heading__deco1 {
  margin-bottom: 30px;
  padding-bottom: 10px;
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAJklEQVQIW2NkQAKrVq36HxYWxsgIE4MJgPhgQWQBsCC6AFwlurkACKkTAzRi0g4AAAAASUVORK5CYII=) 0 0 repeat;
}

@media print, screen and (min-width: 1024px) {
  .c-heading__deco1 {
    margin-bottom: 40px;
  }
}

.c-heading__deco2 {
  padding-top: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #c9c9c9;
  position: relative;
}

.c-heading__deco2:after {
  display: block;
  content: "";
  width: 65px;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 0;
  background-color: #0a41a6;
}

@media print, screen and (min-width: 1024px) {
  .c-heading__deco2 {
    padding-top: 30px;
    margin-bottom: 25px;
  }
}

.c-heading__deco3 {
  margin-bottom: 15px;
  padding-top: 30px;
}

.c-heading__deco3--separate {
  padding-top: 0;
}

.c-heading__deco2 + .c-heading__deco3 {
  padding-top: 0;
}

.c-heading__deco4 {
  display: block;
  margin-bottom: 15px;
  background-color: #efefef;
}

@media print, screen and (min-width: 1024px) {
  .c-heading__deco4 {
    margin-bottom: 20px;
  }
}

.c-heading__deco4 .c-heading__ttl {
  display: table;
  width: 100%;
  font-size: 1.5rem;
  color: inherit;
}

@media print, screen and (min-width: 1024px) {
  .c-heading__deco4 .c-heading__ttl {
    margin-right: 0;
  }
}

.c-heading__deco4 .icon {
  display: table-cell;
  vertical-align: top;
  top: 0.25em;
  padding-right: 0.5em;
  color: #0a41a6;
}

.c-heading__deco1 > .c-heading__inner {
  padding-bottom: 10px;
  background-color: #FFF;
}

@media print, screen and (min-width: 1024px) {
  .c-heading__deco1 > .c-heading__inner {
    padding-bottom: 15px;
  }
}

.c-heading__deco2 > .c-heading__inner {
  padding-bottom: 13px;
}

@media print, screen and (min-width: 1024px) {
  .c-heading__deco2 > .c-heading__inner {
    padding-bottom: 15px;
  }
}

.c-heading__deco3 > .c-heading__inner {
  padding: 14px 10px;
  background-color: #f3f3f3;
  border-left: 5px solid #0a41a6;
}

.c-heading__deco4 > .c-heading__inner {
  padding: 18px 10px 16px;
}

.c-heading__deco1 + .c-heading__deco2,
.c-heading__deco1 + .c-heading__deco3,
.c-heading__deco2 + .c-heading__deco3 {
  padding-top: 0;
}

.c-heading__iconLarge .icon {
  font-size: 1.8em;
}

.c-heading__iconLarge .c-heading__inner {
  padding-bottom: 10px;
}

.c-heading__chart {
  margin-top: 8px;
  margin-bottom: 10px;
  color: #000;
  font-size: 1.7rem;
  line-height: 1.3;
  text-align: center;
}

@media print, screen and (min-width: 1024px) {
  .c-heading__chart {
    margin-top: 10px;
  }
}

/**
 * `<a>`要素のみ背景色を変える
 */
.c-heading__deco4:hover {
  text-decoration: none;
}

a.c-heading__deco4:hover {
  text-decoration: none;
  background-color: #e8eefa;
}

.c-heading__has-button {
  display: table;
  width: 100%;
}

.c-heading__has-button .c-heading__inner {
  padding-right: 10px;
  display: table-cell;
  vertical-align: bottom;
}

.c-headingLabel {
  margin-top: 0.7em;
}

.c-headingLabel:after {
  content: '';
  display: block;
  clear: both;
}

.c-headingLabel > li {
  display: inline-block;
  padding: 5px 10px;
  color: #FFF;
  font-size: 1.4rem;
  line-height: 1.2;
  text-align: center;
}

.c-headingLabel > li:not(:first-child) {
  margin-left: 8px;
}

@media print, screen and (min-width: 1024px) {
  .c-headingLabel > li {
    padding: 5px 15px;
  }
}

.c-headingLabel__color1 {
  background-color: #EA890D;
}

.c-headingLabel__color2 {
  background-color: #46ae8d;
}

.c-headingTruck {
  margin-bottom: 20px;
  display: table;
}

@media print, screen and (min-width: 1024px) {
  .c-headingTruck {
    margin-bottom: 30px;
  }
}

.c-headingTruck__left {
  display: table-cell;
  vertical-align: top;
}

@media print, screen and (min-width: 1024px) {
  .c-headingTruck__left {
    vertical-align: middle;
  }
}

.c-headingTruck__right {
  padding-left: 15px;
  display: table-cell;
  vertical-align: top;
}

@media print, screen and (min-width: 1024px) {
  .c-headingTruck__right {
    vertical-align: middle;
  }
}

.c-headingTruck__image {
  color: #fff;
  text-align: center;
  width: 72px;
  height: 72px;
  background-color: #5bd18d;
  border-radius: 6px;
}

.c-headingTruck__image .c-headingTruck__icon {
  font-size: 7.2rem;
  line-height: 72px;
  top: 0;
}

.c-headingTruck__imageSmall {
  width: 50px;
  height: 50px;
}

@media print, screen and (min-width: 1024px) {
  .c-headingTruck__imageSmall {
    width: 56px;
    height: 56px;
  }
}

.c-headingTruck__imageSmall .c-headingTruck__icon {
  font-size: 4.2rem;
  line-height: 50px;
}

@media print, screen and (min-width: 1024px) {
  .c-headingTruck__imageSmall .c-headingTruck__icon {
    font-size: 4.6rem;
    line-height: 56px;
  }
}

.c-headingTruck__title {
  margin-bottom: 4px;
  color: #000;
  font-size: 1.7rem;
  line-height: 1.4;
  font-weight: bold;
}

.c-headingTruck__txt {
  font-size: 1.4rem;
  line-height: 1.8;
}

@media print, screen and (min-width: 1024px) {
  .c-headingTruck__txt {
    font-size: 1.5rem;
  }
}

.c-headingTruck__has-button {
  display: table-cell;
  text-align: right;
  background-color: #fff;
}

.c-headingTruck__has-button .c-headingTruck__image {
  margin-left: auto;
  margin-right: 0;
}

.c-copy__catch {
  margin-bottom: 18px;
  color: #0a41a6;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .c-copy__catch {
    margin-bottom: 28px;
    font-size: 2rem;
  }
}

.c-copy__lead {
  margin-bottom: 5px;
  color: #444444;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.5;
}

@media print, screen and (min-width: 1024px) {
  .c-copy__lead {
    font-size: 1.7rem;
  }
}

.c-copy__right {
  margin-top: 30px;
  font-size: 1.4rem;
  line-height: 1.8;
  text-align: right;
}

@media print, screen and (min-width: 1024px) {
  .c-copy__right {
    margin-top: 32px;
    font-size: 1.5rem;
  }
}

.c-copy__shoulder {
  margin-bottom: 10px;
  font-size: 1.2rem;
  text-align: right;
}

.c-copy__txt {
  margin-bottom: 1.5em;
  font-size: 1.4rem;
  line-height: 2;
}

@media print, screen and (min-width: 1024px) {
  .c-copy__txt {
    font-size: 1.5rem;
  }
}

.c-copy__txts {
  margin-bottom: 10px;
  font-size: 1.3rem;
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .c-copy__txts {
    margin-bottom: 20px;
    font-size: 1.4rem;
  }
}

.c-copy__catchNew {
  margin-bottom: 3px;
  color: #ea0000;
  font-size: 1.8rem;
  letter-spacing: 0.07em;
  font-family: Helvetica Neue,Helvetica;
}

.c-txt__m {
  font-size: 1.4rem;
  line-height: 1.5;
}

@media print, screen and (min-width: 1024px) {
  .c-txt__m {
    font-size: 1.5rem;
  }
}

.c-list__disc, .c-list__ordered {
  margin-bottom: 30px;
  line-height: 1.4;
}

.c-list__disc > li {
  margin: 0 0 1em 1.5em;
  position: relative;
  text-indent: 0;
}

.c-list__disc > li:last-child {
  margin-bottom: 0;
}

.c-list__disc > li:after {
  display: block;
  content: '';
  position: absolute;
  top: .4em;
  left: -1em;
  width: 6px;
  height: 6px;
  background-color: #000;
  border-radius: 100%;
}

.c-list__indent {
  margin-left: 18px;
}

@media print, screen and (min-width: 1024px) {
  .c-list__indent {
    padding-left: 27px;
  }
}

.c-list__indentItem {
  text-indent: -1.2em;
  margin-left: 1em;
}

.c-list__indentItem:not(:first-of-type) {
  margin-top: 10px;
}

@media print, screen and (min-width: 1024px) {
  .c-list__indentItem:not(:first-of-type) {
    margin-top: 8px;
  }
}

.c-list__indentChildItems {
  margin-top: 8px;
  margin-bottom: 8px;
  padding-left: 21px;
}

@media print, screen and (min-width: 1024px) {
  .c-list__indentChildItems {
    margin-top: 4px;
    margin-bottom: 12px;
  }
}

.c-list__indentChildItem {
  margin-bottom: 2px;
  text-indent: -0.9em;
  margin-left: 1em;
}

.c-list__disc__color1 > li:after {
  background-color: #ef991e;
}

.c-list__disc__color2 > li:after {
  background-color: #5bd18d;
}

.c-list__disc__color3 > li:after {
  background-color: #4a9be7;
}

.c-list__ordered {
  counter-reset: li;
}

.c-list__ordered > li {
  margin: 0 0 1em 2em;
  text-indent: -1.3em;
}

.c-list__ordered > li:last-child {
  margin-bottom: 0;
}

.c-list__ordered > li:before {
  content: counter(li) ". ";
  counter-increment: li;
  font-weight: bold;
}

.c-list__reference, .c-list__asterisk {
  margin-bottom: 30px;
  font-size: 1.3rem;
  line-height: 1.6;
}

.c-list__reference > li:before, .c-list__asterisk > li:before {
  content: "※";
}

.c-list__reference > li {
  margin-bottom: 0.8em;
  padding: 2px 2px 2px 2em;
  text-indent: -2em;
  counter-increment: number;
}

.c-list__reference > li:before {
  content: "※" counter(number) " ";
}

.c-list__reference > li:target {
  background-color: #e3f2fe;
}

.c-list__asterisk > li {
  margin-bottom: 0.8em;
  padding: 2px 2px 2px 1em;
  text-indent: -1em;
}

.c-list__desc {
  margin-bottom: 30px;
  font-size: 1.3rem;
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .c-list__desc {
    font-size: 1.4rem;
  }
}

.c-list__desc dt {
  margin-bottom: 5px;
  font-weight: bold;
}

.c-list__desc dd {
  margin: 0 0 20px 15px;
}

@media print, screen and (min-width: 1024px) {
  .c-list__desc dd {
    margin: 0 0 10px 20px;
  }
}

.c-list__check > li {
  margin: 0 0 0.5em 0;
  position: relative;
}

.c-list__check .icon-check {
  color: #2e77e8;
  font-size: 1.9rem;
}

.c-list__note {
  margin-bottom: 30px;
  font-size: 1.3rem;
  line-height: 1.6;
}

.c-list__note > li {
  margin-bottom: 0.8em;
}

.c-list__note > li:after {
  content: '';
  display: block;
  clear: both;
}

.c-list__note > li:before {
  display: inline-block;
  font-weight: bold;
  padding-right: 0.3em;
  content: "Note:";
}

li > .c-list__disc,
li > .c-list__ordered {
  margin-top: 1.2em;
  margin-bottom: 0;
}

.c-listBorder {
  margin-bottom: 30px;
  /* PCで2カラム */
}

.c-listBorder > li {
  border-bottom: 1px solid #dcdcdc;
}

.c-listBorder--col-pc-6:after {
  content: '';
  display: block;
  clear: both;
}

@media print, screen and (min-width: 1024px) {
  .c-listBorder--col-pc-6 > li {
    float: left;
    width: 47.91667%;
  }
  .c-listBorder--col-pc-6 > li:nth-of-type(even) {
    margin-left: 4.16667%;
  }
}

.c-listBorder--col-pc-6 .c-anchorlist__title,
.c-listBorder--col-pc-6 .c-anchorlist__txt {
  width: 100%;
}

@media print, screen and (min-width: 1024px) {
  .c-listBorder--col-pc-6 .c-anchorlist__title,
  .c-listBorder--col-pc-6 .c-anchorlist__txt {
    width: 100%;
  }
}

.c-listBorder--col-pc-6 .c-anchorlist__title {
  font-size: 1.6rem;
}

.c-listBorder--col-pc-6 .c-anchorlist__txt {
  font-size: 1.3rem;
  color: #777;
}

.c-listBorder__inner {
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 10px;
  padding-right: 10px;
  display: block;
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .c-listBorder__inner {
    padding-top: 24px;
    padding-bottom: 20px;
    padding-right: 10px;
  }
  .c-listBorder__inner:after {
    content: '';
    display: block;
    clear: both;
  }
}

.c-listBorder__anchor {
  display: block;
  height: 100%;
}

.c-listBorder__anchor:hover {
  cursor: pointer;
  text-decoration: none;
  background-color: #e8eefa;
}

.c-listBorder__icon {
  margin-top: -1rem;
  color: #ccc;
  font-size: 2rem;
  position: absolute;
  top: 50%;
  right: 0;
}

@media print, screen and (min-width: 1024px) {
  .c-listBorder__icon {
    display: none;
  }
}

/**
 * リストのスタイルを取り除きます。
 * `li ・リスト`のように任意の記号などから始めることを想定しています。
 */
.c-listAddStyle {
  margin-bottom: 30px;
  margin-left: 1em;
  padding-left: 0;
  text-indent: -1em;
  list-style-type: none;
  list-style-position: inside;
  line-height: 1.4;
}

.c-link {
  color: #4471d6;
  text-decoration: none;
  text-decoration: underline;
}

.c-link:hover {
  color: #ef7101;
}

.c-link:visited {
  color: #8833CC;
}

.c-link__noline {
  color: #4471d6;
  line-height: 1.5;
  text-decoration: none;
}

.c-link__noline:hover {
  color: #ef7101;
  text-decoration: underline;
}

.c-link__noline:visited {
  color: #8833CC;
}

.c-link__color1 {
  color: #000;
}

.c-link__list, .p-divsionInfo__more {
  color: #444;
}

.c-link__list .icon, .p-divsionInfo__more .icon {
  color: #4471d6;
}

.c-link__list:hover, .p-divsionInfo__more:hover {
  color: #444;
}

.c-logo__center {
  margin: 15px 20px 40px 20px;
}

@media print, screen and (min-width: 1024px) {
  .c-logo__center {
    margin-bottom: 50px;
  }
}

.c-logo__lead {
  margin: 10px 55px 25px 55px;
}

@media print, screen and (min-width: 1024px) {
  .c-logo__lead {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 30px;
    padding-top: 8px;
  }
}

.c-logo__txt {
  margin: 0 55px 15px 55px;
}

@media print, screen and (min-width: 1024px) {
  .c-logo__txt {
    margin: 0 0 30px 30px;
    padding-top: 8px;
  }
}

.c-logo__center img, .c-logo__lead img, .c-logo__txt img {
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  width: auto;
}

.c-media {
  display: table;
}

.c-media:after {
  content: '';
  display: block;
  clear: both;
}

.c-media__left, .c-media__body {
  display: table-cell;
  vertical-align: top;
}

.c-thumb {
  margin-bottom: 20px;
}

@media print, screen and (min-width: 1024px) {
  .c-thumb {
    margin-bottom: 30px;
  }
}

.c-thumb__image {
  display: block;
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .c-thumb__image:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    opacity: 0;
    transition: all 0.2s linear 0s;
  }
}

@media (min-width: 768px) {
  .c-thumb__image > img {
    max-width: none;
    width: 100%;
    height: auto;
  }
}

.c-thumb__label {
  font-size: 1.3rem;
  text-align: center;
  position: absolute;
  bottom: 0;
}

.c-thumb__label:after {
  content: '';
  display: block;
  clear: both;
}

.c-thumb__label > li {
  padding: 6px 8px;
  color: #fff;
  float: left;
}

.c-thumb__label1 {
  background-color: #2a5ec6;
}

.c-thumb__label2 {
  background-color: #ff8a00;
}

.c-thumb__title {
  line-height: 1.4;
  background-color: #efefef;
  position: relative;
}

.c-thumb__title .icon-caret-right {
  color: #0032a0;
}

.c-thumb__subTitle {
  display: block;
  margin-top: 4px;
  font-size: 1.1rem;
  line-height: 1.6;
  color: #666;
}

@media print, screen and (min-width: 1024px) {
  .c-thumb__subTitle {
    font-size: 1.4rem;
  }
}

.c-thumb__titleLarge {
  padding: 18px 10px;
  padding-left: 25px;
  font-size: 1.7rem;
}

.c-thumb__titleLarge .icon-caret-right {
  position: absolute;
  top: 23px;
  left: 10px;
}

.c-thumb__titleMiddle {
  padding: 15px 5px 15px;
  padding-left: 18px;
  font-size: 1.3rem;
}

.c-thumb__titleMiddle .icon-caret-right {
  position: absolute;
  top: 18px;
  left: 0.5em;
}

@media print, screen and (min-width: 1024px) {
  .c-thumb__titleMiddle {
    font-size: 1.5rem;
  }
}

.c-thumb__titleTop {
  background-color: #fff;
}

.c-thumb__lead {
  margin-top: 12px;
  font-size: 1.6rem;
  line-height: 1.4;
  font-weight: bold;
}

.c-thumb__txt {
  margin-top: 10px;
  line-height: 1.6;
}

.c-thumb__list {
  margin-top: 10px;
}

.c-thumb__list > li {
  margin-bottom: 0.8em;
}

.c-thumb__txtLarge {
  font-size: 1.4rem;
}

.c-thumb__txtMiddle {
  font-size: 1.3rem;
}

@media print, screen and (min-width: 1024px) {
  .c-thumb__txtMiddle {
    font-size: 1.4rem;
  }
}

.c-thumb__link {
  display: block;
  text-decoration: none;
}

.c-thumb__link:hover {
  text-decoration: none;
}

.c-thumb__link:hover .c-thumb__image:before {
  opacity: 0.4;
}

.c-thumb__link:hover .c-thumb__title {
  background-color: #e8eefa;
}

.c-thumb__middle {
  display: block;
  font-size: 0;
  list-style-type: none;
}

.c-thumb__middle > [class^="col-"] {
  display: inline-block;
  font-size: medium;
  font-size: 1rem;
  vertical-align: top;
}

.c-thumb__new {
  margin-left: 10px;
  display: inline-block;
  color: #ea0000;
  font-size: 1.2rem;
  vertical-align: middle;
}

.c-thumb__titleLarge .c-thumb__new {
  font-size: 1.2rem;
}

.c-thumb__titleMiddle .c-thumb__new {
  font-size: 1.2rem;
}

.c-thumbSmall {
  display: table;
  width: 100%;
  border-bottom: 1px solid #e5e5e5;
}

.c-thumbSmall:after {
  content: '';
  display: block;
  clear: both;
}

.c-thumbSmall__image {
  width: 122px;
  display: table-cell;
  vertical-align: top;
}

@media print, screen and (min-width: 1024px) {
  .c-thumbSmall__image {
    width: 174px;
    max-width: 174px;
  }
  .c-thumbSmall__image img {
    width: 174px;
    max-width: 174px;
  }
}

.c-thumbSmall__svg {
  width: 100px;
  display: table-cell;
  vertical-align: top;
}

.c-thumbSmall__svg img {
  width: 100%;
}

.c-thumbSmall__body {
  padding-left: 15px;
  display: table-cell;
  vertical-align: top;
}

@media print, screen and (min-width: 1024px) {
  .c-thumbSmall__body {
    padding-left: 15px;
    padding-right: 10px;
  }
}

.c-thumbSmall__lead {
  color: #0a41a6;
  font-size: 1.7rem;
  line-height: 1.4;
}

@media print, screen and (min-width: 1024px) {
  .c-thumbSmall__lead {
    font-size: 1.8rem;
  }
}

.c-thumbSmall__Link {
  padding-top: 15px;
  padding-bottom: 15px;
  display: block;
  text-decoration: none;
}

.c-thumbSmall__Link:hover {
  text-decoration: none;
  background-color: #e8eefa;
}

@media print, screen and (min-width: 1024px) {
  .c-thumbSmall__Link {
    padding-left: 15px;
  }
}

.c-thumbIcon {
  margin-bottom: 30px;
  display: table;
}

@media print, screen and (min-width: 1024px) {
  .c-thumbIcon {
    margin-bottom: 50px;
  }
}

.c-thumbIcon__left {
  display: table-cell;
  width: 80px;
  vertical-align: top;
}

@media print, screen and (min-width: 1024px) {
  .c-thumbIcon__left {
    width: 106px;
  }
}

.c-thumbIcon__right {
  padding-left: 14px;
  display: table-cell;
  vertical-align: top;
}

.c-thumbIcon__image {
  padding-top: 10px;
  color: #0a41a6;
  text-align: center;
  width: 80px;
  height: 80px;
  background-color: #d6e1f5;
  border-radius: 6px;
}

@media print, screen and (min-width: 1024px) {
  .c-thumbIcon__image {
    padding-top: 20px;
    width: 106px;
    height: 106px;
  }
}

.c-thumbIcon__icon {
  font-size: 4rem;
}

@media print, screen and (min-width: 1024px) {
  .c-thumbIcon__icon {
    font-size: 4.5rem;
  }
}

.c-thumbIcon__icontxt {
  margin-top: 5px;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 1024px) {
  .c-thumbIcon__icontxt {
    font-size: 1.7rem;
  }
}

.c-thumbIcon__title {
  margin-bottom: 10px;
  color: #0a41a6;
  font-size: 1.8rem;
  line-height: 1.4;
}

.c-thumbIcon__txt {
  font-size: 1.4rem;
  line-height: 1.8;
}

@media print, screen and (min-width: 1024px) {
  .c-thumbIcon__txt {
    font-size: 1.5rem;
  }
}

.c-catalog {
  margin-bottom: 30px;
  padding-bottom: 20px;
  border-bottom: 1px solid #e5e5e5;
}

.c-catalog:after {
  content: '';
  display: block;
  clear: both;
}

.c-catalog__image {
  padding-right: 10px;
  width: 110px;
  float: left;
}

@media print, screen and (min-width: 1024px) {
  .c-catalog__image {
    width: 132px;
  }
}

.c-catalog__image img {
  border: 1px solid #e5e5e5;
}

.c-catalog__description {
  padding-left: 120px;
}

@media print, screen and (min-width: 1024px) {
  .c-catalog__description {
    padding-left: 142px;
  }
}

.c-catalog__txtMiddle {
  font-size: 1.4rem;
  line-height: 1.8;
}

.c-catalog__txtLarge {
  font-size: 1.4rem;
  line-height: 1.8;
}

@media print, screen and (min-width: 1024px) {
  .c-catalog__txtLarge {
    font-size: 1.5rem;
    line-height: 1.8;
  }
}

.c-catalog__lead {
  padding-top: 20px;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.7;
}

@media print, screen and (min-width: 1024px) {
  .c-catalog__lead {
    font-size: 1.6rem;
  }
}

.c-catalog__seriesWrap {
  clear: both;
}

@media print, screen and (min-width: 1024px) {
  .c-catalog__seriesWrap {
    clear: none;
    padding-left: 142px;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-catalog__series {
    padding-right: 10px;
    float: left;
    width: 50%;
  }
}

.c-catalog__link {
  padding-top: 10px;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.8;
}

.c-catalog--new {
  padding: 20px;
  background-color: #E6EBF6;
}

.c-catalog > .c-heading__deco3 {
  padding-top: 0;
}

.c-image__box {
  margin-bottom: 30px;
}

.c-image__left {
  margin-left: 0;
  margin-right: auto;
}

.c-image__center {
  margin-left: auto;
  margin-right: auto;
}

.c-image__right {
  margin-left: auto;
  margin-right: 0;
}

@media (min-width: 768px) {
  .c-image__left-tablet {
    margin-left: 0;
    margin-right: auto;
  }
  .c-image__center-tablet {
    margin-left: auto;
    margin-right: auto;
  }
  .c-image__right-tablet {
    margin-left: auto;
    margin-right: 0;
  }
}

.c-image__caption {
  margin-top: 5px;
  font-size: 1.2rem;
  line-height: 1.4;
}

@media print, screen and (min-width: 1024px) {
  .c-image__caption {
    margin-top: 10px;
  }
}

.c-image__fluid {
  width: auto;
  max-width: 100%;
}

.c-image__opacity {
  display: inline-block;
  transition: all 0.2s linear 0s;
}

.c-image__opacity:hover {
  opacity: 0.4;
}

.c-inquiry__box {
  padding: 0 8px 8px 8px;
  background-color: #dfe9fc;
  margin-bottom: 15px;
}

.c-inquiry__box:last-child {
  margin-bottom: 30px;
}

.c-inquiry__box:first-child {
  margin-top: 60px;
}

@media print, screen and (min-width: 1024px) {
  .c-inquiry__box {
    padding: 0 10px 10px 10px;
  }
}

.c-inquiry__title {
  padding: 15px 0 15px 5px;
  font-size: 1.6rem;
  line-height: 1.4;
}

@media print, screen and (min-width: 1024px) {
  .c-inquiry__title {
    font-size: 2rem;
  }
}

.c-inquiry__body {
  padding: 18px 15px;
  background-color: #FFF;
}

@media print, screen and (min-width: 1024px) {
  .c-inquiry__body {
    padding: 20px;
  }
}

.c-inquiry__txtLarge {
  font-size: 1.4rem;
  line-height: 1.4;
}

@media print, screen and (min-width: 1024px) {
  .c-inquiry__txtLarge {
    font-size: 1.6rem;
  }
}

.c-inquiry__txtLarge2 {
  margin-bottom: 1em;
  font-size: 1.4rem;
  line-height: 1.8;
}

@media print, screen and (min-width: 1024px) {
  .c-inquiry__txtLarge2 {
    font-size: 1.5rem;
  }
}

.c-inquiry__txtMiddle {
  font-size: 1.3rem;
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .c-inquiry__txtMiddle {
    font-size: 1.5rem;
  }
}

.c-inquiry__txtSmall {
  font-size: 1.2rem;
  line-height: 1.4;
}

@media print, screen and (min-width: 1024px) {
  .c-inquiry__txtSmall {
    font-size: 1.4rem;
  }
}

.c-inquiry__companyName {
  margin-bottom: 10px;
  font-weight: bold;
}

.c-inquiry__call {
  font-weight: bold;
}

.c-inquiry__callLink {
  color: #4471d6;
  text-decoration: underline;
}

.c-inquiry__access {
  margin-top: 5px;
  display: table;
  width: 100%;
}

.c-inquiry__address {
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 10px;
  display: table-cell;
}

.c-inquiry__map {
  display: table-cell;
  vertical-align: bottom;
  text-align: right;
}

.c-inquiry__office {
  margin-top: 25px;
  border-bottom: 1px solid #e5e5e5;
}

@media print, screen and (min-width: 1024px) {
  .c-inquiry__office {
    margin-top: 30px;
  }
}

.c-inquiry__office > li {
  padding-top: 15px;
  padding-bottom: 15px;
  border-top: 1px solid #e5e5e5;
}

@media print, screen and (min-width: 1024px) {
  .c-inquiry__office > li {
    display: table;
    width: 100%;
  }
}

.c-inquiry__officeMap {
  border-bottom: none;
}

.c-inquiry__officeMap > li:last-child {
  padding-bottom: 0;
}

.c-inquiry__officeHead {
  margin-bottom: 10px;
}

@media print, screen and (min-width: 1024px) {
  .c-inquiry__officeHead {
    margin-bottom: 0;
    display: table-cell;
    width: 26%;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-inquiry__officeHeadWide {
    width: 40%;
  }
}

.c-inquiry__officeInner {
  margin-left: 10px;
}

@media print, screen and (min-width: 1024px) {
  .c-inquiry__officeInner {
    margin-left: 0;
    display: table-cell;
  }
}

.c-inquiry__officeTitle {
  padding-left: 8px;
  font-size: 1.3rem;
  font-weight: bold;
  line-height: 1.4;
  border-left: 2px solid #0a41a6;
}

@media print, screen and (min-width: 1024px) {
  .c-inquiry__officeTitle {
    font-size: 1.5rem;
  }
}

.c-inquiry__linkList > li {
  margin-top: 15px;
  margin-right: 35px;
  display: inline-block;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.4;
}

@media print, screen and (min-width: 1024px) {
  .c-inquiry__linkList > li {
    font-size: 1.6rem;
  }
}

.c-news__list {
  margin-bottom: 30px;
  font-size: 1.4rem;
  line-height: 1.5;
}

@media print, screen and (min-width: 1024px) {
  .c-news__list {
    display: table;
    width: 100%;
    font-size: 1.5rem;
  }
}

.c-news__list > li {
  padding: 18px 0 15px;
  border-bottom: 1px solid #e5e5e5;
}

.c-news__list > li:after {
  content: '';
  display: block;
  clear: both;
}

.c-news__list > li:first-child {
  padding-top: 0;
}

@media (min-width: 768px) {
  .c-news__list > li {
    padding: 18px 0;
  }
}

.c-news__listImportant {
  padding: 35px 0;
}

@media (min-width: 768px) {
  .c-news__listImportant {
    padding: 60px 0;
  }
}

@media (min-width: 768px) {
  .c-news__listHead {
    padding-right: 15px;
    display: table-cell;
    white-space: nowrap;
  }
}

.c-news__listBody {
  margin-top: 10px;
}

@media (min-width: 768px) {
  .c-news__listBody {
    margin-top: 0;
    display: table-cell;
    width: 100%;
  }
}

.c-news__listBody a {
  color: #4471d6;
}

@media print, screen and (min-width: 1024px) {
  .c-news__listBody a:hover {
    color: #ef7101;
  }
}

.c-news__listBody a:visited {
  color: #8833CC;
}

.c-news__date {
  color: #777;
  font-size: 1.2rem;
  line-height: 1.4;
}

@media (min-width: 768px) {
  .c-news__date {
    display: inline-block;
    font-size: 1.3rem;
    width: 9.5em;
  }
}

.c-news__label {
  margin-top: 5px;
  line-height: 1;
}

@media (min-width: 768px) {
  .c-news__label {
    margin-top: 0;
    display: inline-block;
  }
  .c-news__label > .c-label {
    width: 90px;
    font-size: 1.2rem;
  }
}

.c-news-th__heading {
  margin-bottom: 0;
}

.c-news-th__row {
  padding: 20px 0;
  margin: 0 -5px;
  border-bottom: 1px solid #e5e5e5;
}

@media print, screen and (min-width: 1024px) {
  .c-news-th__row {
    margin: 0;
  }
}

.c-news-th__row .c-copy__txt {
  margin-bottom: 0;
}

.c-news-th__row .c-image__box {
  margin: 11px 0;
}

@media print, screen and (min-width: 1024px) {
  .c-news-th__row .c-image__box {
    margin: 0;
  }
}

.c-news-th__row:last-child {
  border: none;
}

.c-news-th__description {
  margin-bottom: 0;
}

.c-label {
  padding: 4px 4px 3px 4px;
  display: inline-block;
  color: #FFF;
  font-size: 1rem;
  text-align: center;
  width: 70px;
  border-radius: 3px;
  vertical-align: baseline;
}

@media print, screen and (min-width: 1024px) {
  .c-label {
    font-size: 1.3rem;
    width: 80px;
  }
}

.c-label__product {
  background-color: #2988cb;
}

.c-label__business {
  background-color: #0a41a6;
}

.c-label__organization {
  background-color: #bea603;
}

.c-label__event {
  background-color: #46ae8d;
}

.c-label__ir {
  background-color: #ce5edb;
}

.c-label__announcement {
  background-color: #ea890d;
}

.c-label__important {
  color: #e30231;
  background-color: #fff;
  border: 1px solid #e30231;
}

.c-label__require {
  width: auto;
  padding: 4.5px 7px 6.5px;
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1;
  border-radius: 0;
  background-color: #ff0000;
}

.c-label__right {
  margin-left: 15px;
}

.c-box, .p-divsionInfo, .p-divsionAttention {
  padding: 10px;
}

.c-box__inner {
  padding: 15px;
  font-size: 1.3rem;
  line-height: 1.5;
  background-color: #FFF;
}

@media print, screen and (min-width: 1024px) {
  .c-box__inner {
    padding: 20px;
    font-size: 1.5rem;
  }
}

.c-box__lv1 {
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAJklEQVQIW2NkQAKrVq36HxYWxsgIE4MJgPhgQWQBsCC6AFwlurkACKkTAzRi0g4AAAAASUVORK5CYII=) 0 0 repeat;
}

.c-box__lv2, .p-divsionInfo {
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAJklEQVQIW2NkQAJ9a7/9LwrmYmSEicEEQHywILIAWBBdAK4S3VwADAoTNkZ7kIEAAAAASUVORK5CYII=) 0 0 repeat;
}

.c-box__lv3 {
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAJklEQVQIW2NkQAJf5s//z5OYyMgIE4MJgPhgQWQBsCC6AFwlurkADNoTNwV47iEAAAAASUVORK5CYII=) 0 0 repeat;
}

.c-box__lv4, .p-divsionAttention {
  padding: 20px 15px;
  background-color: #ffeee9;
}

.c-box__error {
  border: 1px solid #f00;
  color: #f00;
}

.c-box__title, .p-divsionInfo__title, .p-divsionAttention__title {
  margin-bottom: 20px;
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 1.4;
}

.c-box__lv4 .c-box__title, .p-divsionAttention .c-box__title, .c-box__lv4 .p-divsionInfo__title, .p-divsionAttention .p-divsionInfo__title, .c-box__lv4 .p-divsionAttention__title, .p-divsionAttention .p-divsionAttention__title,
.c-box__lv3 .c-box__title,
.c-box__lv3 .p-divsionInfo__title,
.c-box__lv3 .p-divsionAttention__title {
  color: #ff0000;
}

.c-box__lv2 .c-box__title, .p-divsionInfo .c-box__title, .c-box__lv2 .p-divsionInfo__title, .p-divsionInfo .p-divsionInfo__title, .c-box__lv2 .p-divsionAttention__title, .p-divsionInfo .p-divsionAttention__title {
  color: #0032a0;
}

.c-box__txt {
  margin-bottom: 10px;
  font-size: 1.4rem;
  line-height: 1.4;
}

.c-box__txt:last-child {
  margin-bottom: 0;
}

.c-plugin__box {
  margin-bottom: 40px;
}

.c-plugin__box:after {
  content: '';
  display: block;
  clear: both;
}

.c-plugin__box .c-plugin__txt {
  font-size: 1.3rem;
  line-height: 1.7;
}

.c-plugin__image {
  margin-right: 10px;
  float: left;
}

.c-plugin__image > img {
  max-width: 100%;
  width: auto;
}

.c-plugin__barrierfreeImage {
  width: 55px;
}

.c-plugin__barrierfreeTxt {
  padding-left: 10px;
  vertical-align: middle;
}

.c-plugin__actibookImage {
  width: 72px;
}

.c-plugin__actibookTxt {
  padding-left: 15px;
  line-height: 1.8;
  vertical-align: middle;
}

.c-plugin__actibookTitle {
  margin-bottom: 10px;
  font-size: 1.4rem;
}

.c-plugin__actibookLink {
  font-size: 1.4rem;
  word-break: break-all;
}

.c-plugin-barrierfree {
  margin-bottom: 40px;
  padding: 2em 2em 1.5em 2em;
  display: table;
  border: 1px solid #e5e5e5;
}

.c-plugin-barrierfree__title {
  margin-bottom: 8px;
  color: #0A41A6;
  font-size: 1.5rem;
  font-weight: bold;
}

.c-plugin-barrierfree__text {
  color: #333;
  font-size: 1.3rem;
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .c-plugin-barrierfree__text {
    font-size: 1.4rem;
  }
}

.c-plugin-barrierfree__body {
  padding-right: 10px;
  display: table-cell;
  vertical-align: top;
}

.c-plugin-barrierfree__image {
  display: table-cell;
  vertical-align: top;
  width: 70px;
}

.c-anchor__list {
  margin-bottom: 30px;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 1024px) {
  .c-anchor__list {
    margin-left: -15px;
  }
}

.c-anchor__list > li {
  padding: 8px 18px 8px 0;
  display: inline-block;
}

@media print, screen and (min-width: 1024px) {
  .c-anchor__list > li {
    margin-bottom: 12px;
    padding: 4px 15px;
    border-right: 1px solid #e1e1e1;
  }
}

.c-anchor__list a {
  color: #4471d6;
  text-decoration: none;
}

.c-anchor__list a:hover > span {
  color: #4471d6;
  text-decoration: underline;
}

.c-anchor__list a:visited {
  color: #8833CC;
}

.c-anchorBtn {
  width: auto;
  margin-left: -4px;
  margin-right: -4px;
}

.c-anchorBtn__wrap {
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 30px;
}

@media print, screen and (min-width: 1024px) {
  .c-anchorBtn__wrap {
    margin-left: 20px;
    margin-right: 20px;
    margin-bottom: 50px;
  }
}

.c-anchorBtn > li {
  margin-left: 4px;
  margin-right: 4px;
  margin-bottom: 12px;
  display: inline-block;
  white-space: nowrap;
}

.c-anchorBtn__copy {
  margin-top: 30px;
  margin-bottom: 20px;
  font-size: 1.4rem;
  line-height: 1.4;
}

@media print, screen and (min-width: 1024px) {
  .c-anchorBtn__copy {
    margin-left: 20px;
    margin-right: 20px;
    font-size: 1.5rem;
  }
}

.c-anchorBtn__link {
  padding: 12px;
  display: inline-block;
  color: #4471d6;
  text-align: center;
  text-decoration: none;
  width: 100%;
  border-radius: 4px;
  border: 1px solid #dcdcdc;
  cursor: pointer;
}

.c-anchorBtn__link:hover {
  text-decoration: none;
  background-color: #e8eefa;
}

.c-anchorBtn__link.is-disabled {
  color: #a2a2a2;
  background-color: #dcdcdc;
  pointer-events: none;
}

.c-anchorBtn__link:visited {
  color: #8833CC;
}

.c-anchorBtn__single > li {
  font-size: 2rem;
  width: 44px;
  height: 44px;
}

.c-anchorBtn__kana > li {
  font-size: 1.6rem;
  width: 62px;
}

@media print, screen and (min-width: 1024px) {
  .c-anchorBtn__kana > li {
    width: 66px;
    font-size: 1.8rem;
  }
}

.c-anchorBtn__middle > li {
  font-size: 1.4rem;
  width: 46%;
}

@media print, screen and (min-width: 1024px) {
  .c-anchorBtn__middle > li {
    font-size: 1.5rem;
    width: auto;
    min-width: 180px;
  }
}

.c-anchorBtn__middle .c-anchorBtn__link {
  width: 100%;
}

.c-anchorBtn__three {
  margin-bottom: 30px;
}

.c-anchorBtn__three:after {
  content: '';
  display: block;
  clear: both;
}

@media (min-width: 768px) {
  .c-anchorBtn__three {
    margin-right: 0;
    margin-left: -30px;
  }
}

.c-anchorBtn__three > li {
  display: block;
}

@media (min-width: 768px) {
  .c-anchorBtn__three > li {
    float: left;
    width: 33.33333%;
    margin: 0;
    padding-left: 30px;
  }
  .c-anchorBtn__three > li:nth-of-type(n+4) {
    margin-top: 15px;
  }
}

.c-anchorBtn__three .c-anchorBtn__link {
  position: relative;
  width: 100%;
  padding: 15px 30px 15px 10px;
  font-size: 1.4rem;
  text-align: left;
  border-radius: 0;
  transition-duration: 0.3s;
}

@media (min-width: 768px) {
  .c-anchorBtn__three .c-anchorBtn__link {
    font-size: 1.5rem;
  }
}

.c-anchorBtn__three .c-anchorBtn__link:not(:first-of-type) {
  margin-top: 15px;
}

@media (min-width: 768px) {
  .c-anchorBtn__three .c-anchorBtn__link:not(:first-of-type) {
    margin-top: 0;
  }
}

.c-anchorBtn__three .c-anchorBtn__link:before {
  content: "";
}

.c-anchorBtn__three .c-anchorBtn__link:before {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  position: absolute;
  top: auto;
  right: 10px;
}

.c-anchorlist__title {
  margin-bottom: 3px;
  margin-right: 10px;
  padding-right: 20px;
  color: #4471d6;
  font-size: 1.8rem;
  line-height: 1.4;
}

@media print, screen and (min-width: 1024px) {
  .c-anchorlist__title {
    margin-bottom: 0;
    margin-right: 0;
    width: 190px;
    float: left;
  }
}

.c-anchorlist__txt {
  margin-right: 15px;
  font-size: 1.4rem;
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .c-anchorlist__txt {
    margin-right: 0;
    font-size: 1.5rem;
  }
}

.c-anchorTerm__title {
  margin-top: 15px;
  margin-bottom: 15px;
  font-size: 1.6rem;
  font-weight: bold;
}

@media print, screen and (min-width: 1024px) {
  .c-anchorTerm__title {
    margin-top: 0;
    margin-bottom: 0;
  }
}

.c-anchorTerm__list > li {
  margin-right: 20px;
  margin-bottom: 1.4em;
  display: inline-block;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 1024px) {
  .c-anchorTerm__list > li {
    margin-right: 25px;
    font-size: 1.5rem;
  }
}

.c-pagination {
  margin: 20px auto;
  text-align: center;
  display: table;
  table-layout: fixed;
  border: 1px solid #c9c9c9;
  border-radius: 4px;
}

.c-pagination a {
  display: none;
  padding: 12px 10px;
  vertical-align: middle;
  color: #4471d6;
  font-size: 1.4rem;
  text-align: center;
  min-width: 45px;
  height: 45px;
  text-decoration: none;
}

.c-pagination a:hover {
  background-color: #e8eefa;
}

.c-pagination a[class*="is-current"], .c-pagination a[class$="__prev"], .c-pagination a[class$="__next"] {
  display: table-cell;
}

@media (min-width: 768px) {
  .c-pagination a {
    display: table-cell;
  }
}

.c-pagination__list {
  display: table;
}

.c-pagination__list > a {
  border-left: 1px solid #c9c9c9;
}

.c-pagination__list > a.is-current {
  background-color: #898989;
  color: #fff;
  cursor: default;
  pointer-events: none;
}

.c-pagination__list > a:first-child.is-current {
  border-left: none;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}

.c-pagination__list > a:last-child.is-current {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}

.c-pagination__next {
  border-left: 1px solid #c9c9c9;
}

.c-pagination__prev > .icon,
.c-pagination__next > .icon {
  top: 0;
}

.c-button {
  margin-left: auto;
  margin-right: auto;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  border-radius: 6px;
  -webkit-appearance: none;
  position: relative;
  /* ボタン非活性時の共通スタイル */
}

.c-button:hover {
  text-decoration: none;
}

.c-button:disabled {
  color: #a2a2a2;
  cursor: default;
  border: 1px solid #e5e5e5;
  background-color: #e5e5e5;
}

.c-button__iconLeft, .c-button__iconRight {
  margin-top: -0.8rem;
  font-size: 1.7rem;
  position: absolute;
  top: 50%;
}

.c-button__iconLeft {
  left: 3px;
}

.c-button__iconRight {
  right: 3px;
}

.c-button.has-icon__right {
  padding-right: 20px;
}

.c-button.has-icon__left {
  padding-left: 20px;
}

.c-button__txt {
  vertical-align: middle;
}

.c-button__map {
  padding-top: 5px;
  color: inherit;
  font-size: 0.9rem;
  line-height: 1.2;
  font-weight: bold;
  width: 40px;
  height: 40px;
  border: 1px solid #e5e5e5;
  display: inline-block;
}

.c-button__map:hover {
  color: #4471d6;
  background-color: #e8eefa;
}

.c-button__map:hover .c-button__iconMap {
  color: #4471d6;
}

@media print, screen and (min-width: 1024px) {
  .c-button__map {
    padding-top: 8px;
    padding-right: 5px;
    font-size: 1.4rem;
    line-height: 1;
    width: 96px;
    height: 30px;
  }
}

.c-button__iconMap {
  color: #0a41a6;
  font-size: 1.3rem;
}

@media print, screen and (min-width: 1024px) {
  .c-button__iconMap {
    margin-right: 5px;
    font-size: 1.5rem;
  }
}

.c-button__email {
  display: block;
  margin-left: auto;
  margin-right: auto;
  padding: 12px 14px 11px 14px;
  color: #000;
  font-size: 1.4rem;
  font-weight: bold;
  width: 90%;
}

.c-button__email--en {
  border: 1px solid #e5e5e5;
}

.c-button__email--en:hover {
  color: #4471d6;
  background-color: #e8eefa;
}

@media (min-width: 768px) {
  .c-button__email--en {
    margin-left: 0;
    margin-right: 0;
    width: 160px;
  }
}

.c-button__email--jp {
  border: 2px solid #c8c7c7;
  background-color: #edecec;
}

.c-button__email--jp:hover {
  color: #4471d6;
  border-color: #7da3f6;
  background-color: #e8eefa;
}

@media (min-width: 768px) {
  .c-button__email--jp {
    margin-left: 0;
    margin-right: 0;
    width: 240px;
  }
}

.c-button__emailWrap {
  margin-top: 10px;
  margin-bottom: 10px;
  width: 100%;
}

.c-button__emailWrap:last-child {
  margin-bottom: 0;
}

.c-button__emailWrap:first-child {
  margin-top: 0;
}

.c-button__middle {
  padding: 12px 15px 11px 15px;
  font-size: 1.4rem;
  max-width: 90%;
}

.c-button__large {
  padding: 20px 20px;
  font-size: 1.8rem;
  max-width: 90%;
}

.c-button__small {
  padding: 6px 15px;
  font-size: 1.4rem;
  max-width: 90%;
}

.c-button__full {
  display: block;
  width: 90%;
}

@media print, screen and (min-width: 1024px) {
  .c-button__full {
    width: 100%;
    max-width: 100%;
  }
}

@media (min-width: 768px) {
  [class^="col-sm-"] > .c-button__full {
    width: 100%;
    max-width: 100%;
  }
}

.c-button__full .c-button__txt {
  width: 100%;
}

.c-button__color1 {
  color: #fff;
  border: 2px solid #0a41a6;
  background-color: #0a41a6;
}

.c-button__color1:hover {
  border-color: #3367C7;
  background-color: #3367C7;
}

.c-button__color2 {
  color: #fff;
  border: 2px solid #F3890C;
  background-color: #F3890C;
}

.c-button__color2:hover {
  border-color: #F6A343;
  background-color: #F6A343;
}

.c-button__color3 {
  color: #0a41a6;
  font-weight: bold;
  border: 2px solid #0a41a6;
  background-color: #fff;
}

.c-button__color3:hover {
  color: #4471d6;
  border-color: #7da3f6;
  background-color: #e8eefa;
}

.c-button__color4 {
  color: #000;
  font-weight: bold;
  border: 2px solid #c8c7c7;
  background-color: #edecec;
}

.c-button__color4:hover {
  color: #4471d6;
  border-color: #7da3f6;
  background-color: #e8eefa;
}

input[type="button"],
input[type="submit"] {
  display: block;
}

input[type="button"]:disabled {
  color: #a2a2a2;
  cursor: default;
  border: 1px solid #e5e5e5;
  background-color: #e5e5e5;
}

.c-button__heading {
  padding-bottom: 5px;
  background-color: #fff;
  display: table-cell;
  width: 69px;
  vertical-align: middle;
  letter-spacing: -1px;
  position: relative;
  font-size: 0.8rem;
  line-height: 1.3;
  text-align: center;
  text-decoration: none;
  border-left: 1px solid #dcdcdc;
}

.c-button__heading:hover {
  text-decoration: none;
  background-color: #f2f2f2;
}

@media print, screen and (min-width: 1024px) {
  .c-button__heading {
    font-size: 1.2rem;
    width: 214px;
    font-weight: bold;
    letter-spacing: 0;
  }
}

.c-button__download {
  padding: 12px 40px 10px 40px;
  color: #000;
  font-size: 1.4rem;
  font-weight: bold;
  border: 2px solid #c8c7c7;
  background-color: #edecec;
}

.c-button__download:hover {
  color: #4471d6;
  border: 2px solid #7da3f6;
  background-color: #e8eefa;
}

.c-button__heading__icon {
  line-height: 1.2;
  display: block;
  font-size: 2rem;
}

@media print, screen and (min-width: 1024px) {
  .c-button__heading__icon {
    margin-right: 5px;
    display: inline;
    font-size: 1.7rem;
    font-weight: normal;
  }
}

.c-movie {
  margin: 0 auto;
}

.c-movie__txt {
  margin-top: 10px;
  font-size: 1.6rem;
  text-align: center;
}

.c-tableVertical {
  margin-bottom: 30px;
}

@media print, screen and (min-width: 1024px) {
  .c-tableVertical {
    display: table;
    width: 100%;
    border-bottom: 1px solid #ddd;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-tableVertical__row {
    display: table-row;
    border-top: 1px solid #ddd;
  }
}

.c-tableVertical dt {
  padding: 10px 6px;
  background-color: #eee;
  border-top: 1px solid #ddd;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .c-tableVertical dt {
    /* デフォルトでは3:7の割合で表示される。 */
    width: 30%;
    padding: 20px 15px;
    display: table-cell;
    vertical-align: top;
    font-size: 1.5rem;
    font-weight: normal;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-tableVertical dd {
    width: 100%;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-tableVertical {
    /**
     * 横幅を変えるModifier。`dt`に一括でサイズを指定する。
     * 例えば`.c-tableVertical__2to8`とするとdtを20%、`dd`を80%にできる。
     */
  }
  .c-tableVertical__1to9 dt {
    width: 10%;
  }
  .c-tableVertical__2to8 dt {
    width: 20%;
  }
  .c-tableVertical__4to6 dt {
    width: 40%;
  }
  .c-tableVertical__5to5 dt {
    width: 50%;
  }
}

.c-tableVertical dd {
  padding: 15px 6px;
  font-size: 1.4rem;
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .c-tableVertical dd {
    padding: 20px;
    display: table-cell;
    vertical-align: top;
    font-size: 1.5rem;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
  }
}

.c-table {
  width: 100%;
  border: 1px solid #ddd;
}

.c-table th,
.c-table td {
  padding: 10px;
  font-size: 1.2rem;
  line-height: 1.4;
  border: 1px solid #ddd;
}

@media print, screen and (min-width: 1024px) {
  .c-table th,
  .c-table td {
    padding: 12px;
    font-size: 1.3rem;
  }
}

.c-table th {
  font-weight: normal;
}

.c-table__image {
  margin-top: 10px;
}

.c-table__small th,
.c-table__small td {
  padding: 12px 6px;
}

.c-table__bgcolor1 {
  background-color: #eee;
}

.c-table__bgcolor2 {
  background-color: #fffcc8;
}

.c-table__bgcolor3 {
  background-color: #e1fafc;
}

.c-table__bgcolor4 {
  color: #fff;
  background-color: #5c87d6;
}

.c-table__bgcolor5 {
  background-color: #dfe9fc;
}

.c-table__bgAircraft {
  background-color: #c8ebfa;
}

.c-table__bgTruckDump {
  background-color: #ecdefa;
}

.c-table__bgIndustrial {
  background-color: #fdf9da;
}

.c-table__bgParking {
  background-color: #d7fdeb;
}

.c-table__bgEtc {
  background-color: #e5e5e5;
}

.c-table__fixed {
  table-layout: fixed;
  width: 100%;
}

.c-table__caption {
  margin-bottom: 8px;
  font-size: 1.3rem;
  line-height: 1.3;
}

.c-table__caption--right {
  text-align: right;
}

.c-table__center {
  text-align: center;
}

.c-table__scroll {
  margin-bottom: 30px;
  margin-right: 1px;
  overflow: auto;
  white-space: nowrap;
}

.c-table__scroll::-webkit-scrollbar {
  height: 5px;
}

.c-table__scroll::-webkit-scrollbar-track {
  background: #F1F1F1;
}

.c-table__scroll::-webkit-scrollbar-thumb {
  background: #BCBCBC;
}

@media print, screen and (min-width: 1024px) {
  .c-table__scroll {
    margin-right: 0;
    white-space: normal;
  }
}

/* (P) 3車種の収容　テーブルを1列増やすため列幅を調整　2017.12.28 */
@media print, screen and (min-width: 1024px) {
  .c-tableCapacity {
    display: table;
    width: 100%;
    border-bottom: 1px solid #ddd;
    border-right: 1px solid #ddd;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-tableCapacity__row {
    display: table-row;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-tableCapacity__row > dd {
    display: table-cell;
    vertical-align: top;
    width: 26%;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
  }
}

.c-tableCapacity__none {
  background-color: #fff;
  border-top: none;
  border-left: none;
}

.c-tableCapacity__type {
  padding: 30px 20px;
  font-size: 1.4rem;
  line-height: 1.6;
  text-align: center;
  background-color: #f4f4f4;
}

@media print, screen and (min-width: 1024px) {
  .c-tableCapacity__type {
    display: table-cell;
    vertical-align: top;
    border-top: 1px solid #ddd;
    border-left: 1px solid #ddd;
  }
}

.c-tableCapacity__typeTitle {
  font-size: 1.7rem;
  font-weight: bold;
}

.c-tableCapacity__typeImages {
  margin-top: 20px;
  margin-bottom: 10px;
}

.c-tableCapacity__typeImages > img {
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
  width: auto;
}

.c-tableCapacity__title {
  padding: 10px;
  font-size: 1.6rem;
  color: #fff;
  text-align: center;
  background-color: #909090;
}

.c-tableCapacity__list {
  margin: 15px 15px 20px 15px;
  font-size: 1.3rem;
}

@media print, screen and (min-width: 1024px) {
  .c-tableCapacity__list {
    margin: 30px;
    font-size: 1.4rem;
  }
}

.c-tableCapacity__list > li {
  margin-bottom: 8px;
}

td .c-list__disc:last-child,
td .c-list__ordered:last-child,
.c-tableVertical .c-list__disc:last-child,
.c-tableVertical .c-list__ordered:last-child {
  margin-bottom: 0;
}

.c-tab {
  width: 100%;
  /* タブ単体で使用し、余白を開けたい場合 */
  /**
   * PC幅未満でドロップダウン型になります。
   * 通常のタブに`.c-tab__dropdownItem`を追加する必要があります。
   */
  /**
   * PC幅でパネルのような長方形になるパターン。
   * テキストの上にアイコンを挿入します。PC幅未満のときはアイコンは表示されません。
   */
}

.c-tab__single {
  margin-bottom: 40px;
}

.c-tab__list {
  width: 100%;
}

@media print, screen and (min-width: 1024px) {
  .c-tab__list {
    display: table;
    table-layout: fixed;
  }
}

.c-tab__list li {
  border-bottom: 1px solid #d0d0d0;
  background-color: #f0f0f0;
  text-align: center;
  font-size: 1.5rem;
  line-height: 1.2;
  font-weight: bold;
  position: relative;
}

.c-tab__list li:hover {
  color: #4471d6;
  text-decoration: none;
}

.c-tab__list li:after {
  content: '';
  width: 1px;
  height: 80%;
  display: block;
  background-color: #d0d0d0;
  position: absolute;
  top: 10%;
  right: -1px;
  z-index: 10;
}

.c-tab__list li:last-child:after {
  display: none;
}

.c-tab__list li:last-child {
  border-bottom: none;
}

.c-tab__list li:last-child .c-tab__tab:after {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .c-tab__list li {
    display: table-cell;
    width: 1%;
    vertical-align: middle;
    border-top: 4px solid #fff;
  }
  .c-tab__list li:last-child {
    border-bottom: 1px solid #d0d0d0;
  }
}

.c-tab__list li.is-current {
  background-color: #0a41a6;
  color: #fff;
}

@media print, screen and (min-width: 1024px) {
  .c-tab__list li.is-current {
    color: #0a41a6;
    background-color: #fff;
    border-bottom: 1px solid #ffffff;
    border-left: 1px solid #d0d0d0;
    border-right: 1px solid #d0d0d0;
    border-top: 4px solid #0a41a6;
  }
  .c-tab__list li.is-current:after {
    display: none;
  }
}

.c-tab__tab {
  display: block;
  width: 100%;
  padding: 15px 5px;
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .c-tab__tab {
    padding: 18px 10px;
  }
  .c-tab__tab:hover {
    text-decoration: none;
  }
}

.c-tab__tab.is-disabled {
  color: #a2a2a2;
  pointer-events: none;
}

.c-tab__content {
  display: none;
  margin-top: 40px;
}

.c-tab__content.is-show {
  display: block;
}

.c-tab__full .c-tab__content {
  margin-top: 10px;
  padding: 0;
}

@media print, screen and (min-width: 1024px) {
  .c-tab.is-course .c-tab__list {
    width: 100%;
    border-bottom: 1px solid #e5e5e5;
    display: block;
    text-align: center;
    font-size: 0;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-tab.is-course .c-tab__list li {
    display: inline-block;
    width: auto;
    border-bottom: 1px solid #e5e5e5;
    vertical-align: bottom;
    margin: 0 0 -1px;
  }
  .c-tab.is-course .c-tab__list li.is-current {
    border-bottom: 1px solid #fff;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-tab__dropdownItem {
    display: none;
  }
}

@media print, screen and (max-width: 1023px) {
  .c-tab__dropdown .c-tab__list {
    display: none;
    position: relative;
    margin-bottom: 30px;
    text-align: left;
    border: 1px solid #ebebeb;
    border-radius: 3px;
  }
  .c-tab__dropdown .c-tab__list:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 3px;
    bottom: 0;
    width: calc(100% - 6px);
    height: 2px;
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.35);
  }
  .c-tab__dropdown .c-tab__list.is-show {
    display: block;
    margin-bottom: 30px;
    background-color: #e8eefa;
  }
  .c-tab__dropdown .c-tab__list > li {
    padding: 15px;
    font-size: 1.5rem;
    line-height: 1;
    border: 1px solid #ebebeb;
    border-radius: 3px;
    background-color: #f8f8f8;
  }
  .c-tab__dropdown .c-tab__list > li.is-current {
    color: #0a41a6;
    background-color: #e8eefa;
  }
  .c-tab__dropdown .c-tab__list > li.is-current .c-tab__tab {
    background-color: #e8eefa;
  }
  .c-tab__dropdown .c-tab__list .c-tab__tab {
    padding: 0;
    text-align: left;
    font-weight: 400;
    background-color: #f8f8f8;
  }
  .c-tab__dropdown .c-tab__list .c-tab__tab.is-current {
    coloFVr: #0a41a6;
    background-color: #e8eefa;
  }
  .c-tab__dropdownItem {
    position: relative;
    margin-bottom: 30px;
    padding: 15px;
    font-size: 1.5rem;
    line-height: 1;
    border: 1px solid #ebebeb;
    border-radius: 3px;
    background-color: #f8f8f8;
  }
  .c-tab__dropdownItem:before {
    content: "";
    position: absolute;
    z-index: -1;
    left: 3px;
    bottom: 0;
    width: calc(100% - 6px);
    height: 2px;
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.35);
  }
  .c-tab__dropdownItem.is-active {
    margin-bottom: 8px;
    color: #0a41a6;
    background-color: #e8eefa;
  }
  .c-tab__dropdownIcon {
    position: absolute;
    top: 0;
    right: 15px;
    bottom: 0;
    height: 1em;
    margin: auto;
    font-size: 1em;
  }
}

.c-tab__panel .c-tab__list {
  margin-bottom: 40px;
}

.c-tab__panel .c-tab__list:after {
  content: '';
  display: block;
  clear: both;
}

@media print, screen and (min-width: 1024px) {
  .c-tab__panel .c-tab__list:after {
    content: none;
  }
}

.c-tab__panel .c-tab__list li {
  width: 50%;
  float: left;
  border-color: transparent;
  border-bottom-color: #d0d0d0;
}

.c-tab__panel .c-tab__list li:nth-child(even) {
  border-left: 1px solid #d0d0d0;
}

.c-tab__panel .c-tab__list li:last-child {
  border-bottom: 1px solid #d0d0d0;
}

.c-tab__panel .c-tab__list li:after {
  content: none;
}

@media print, screen and (min-width: 1024px) {
  .c-tab__panel .c-tab__list li {
    width: auto;
    float: none;
    border-color: #e5e5e5;
    border-top: 0;
    border-bottom: 0;
    background-color: transparent;
  }
  .c-tab__panel .c-tab__list li:nth-child(even) {
    border-left: 0;
  }
  .c-tab__panel .c-tab__list li:after {
    content: "";
    width: 0;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-tab__panel .c-tab__list {
    margin-bottom: 0;
  }
  .c-tab__panel .c-tab__list li:not(:first-of-type) {
    border-left: 1px solid #e5e5e5;
    border-bottom: 0;
  }
  .c-tab__panel .c-tab__list li:not(:first-of-type).is-current {
    border-left: 1px solid #e5e5e5;
  }
  .c-tab__panel .c-tab__list li.is-current {
    border-top-color: transparent;
    border-left: 0;
    border-right: 0;
  }
}

.c-tab__panel .c-tab__panelIcon {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .c-tab__panel {
    margin-top: 18px;
    font-size: 1.5rem;
    line-height: 1;
  }
  .c-tab__panel .c-tab__tab {
    padding-top: 0;
    border-bottom: 0;
    background-color: #fff;
  }
  .c-tab__panel .c-tab__tab:hover .c-tab__panelIcon {
    color: #4471d6;
    transition-duration: 0.4s;
  }
  .c-tab__panel .c-tab__tab.is-current:hover .c-tab__panelIcon {
    color: #1245a7;
  }
  .c-tab__panel .c-tab__panelIcon {
    position: relative;
    top: 0;
    display: block;
    margin: auto;
    font-size: 6em;
    color: #ccc;
  }
  .c-tab__panel .is-current .c-tab__panelIcon {
    color: #0a41a6;
  }
  .c-tab__panel .c-tab__panelText {
    display: block;
    margin-top: -10px;
    transition-duration: 0.4s;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-tab__panel--small .c-tab__panelIcon {
    font-size: 4em;
  }
}

/**
 * 特定のアイコンが指定されている場合、マウスオーバー時の色の指定を変える。
 */
.c-tab__panel .c-tab__tab:hover .icon-build {
  color: #0a41a6;
}

.c-tab__panel .c-tab__tab:hover .icon-Industrial {
  color: #ddac00;
}

.c-tab__panel .c-tab__tab:hover .icon-pump {
  color: #65b0d4;
}

.c-tab__panel .c-tab__tab:hover .icon-parking {
  color: #00733a;
}

.c-tab__panel .c-tab__tab:hover .icon-aircraft {
  color: #004f99;
}

.c-tab__panel .c-tab__tab:hover .icon-truck {
  color: #61236d;
}

/**
 * 特定のアイコンが指定されている場合、カレント時の色の指定を変える。
 */
.c-tab__panel .is-current .icon-build {
  color: #0a41a6;
}

.c-tab__panel .is-current .icon-Industrial {
  color: #ddac00;
}

.c-tab__panel .is-current .icon-pump {
  color: #65b0d4;
}

.c-tab__panel .is-current .icon-parking {
  color: #00733a;
}

.c-tab__panel .is-current .icon-aircraft {
  color: #004f99;
}

.c-tab__panel .is-current .icon-truck {
  color: #61236d;
}

.c-iconimg {
  margin-left: 5px;
  display: inline-block;
  color: #666;
  font-size: 13px;
  vertical-align: baseline;
  text-indent: 0;
  /* カタログページで使うPDFアイコンです */
}

.c-iconimg__pdfs {
  padding: 3px 0 3px 26px;
  background: url(../images/icon/icon_pdf_s.png) 0 50% no-repeat;
}

.c-iconimg__pdfm {
  padding: 10px 0 10px 37px;
  background: url(../images/icon/icon_pdf_m.png) 0 50% no-repeat;
}

.c-iconimg__excels {
  vertical-align: middle;
  width: 20px;
  height: 20px;
  margin-left: 3px;
  background-image: url(../images/icon/icon_excel_s.gif);
  background-repeat: no-repeat;
  background-size: 20px;
}

.c-iconimg__pdfCatalog {
  background-image: url(../images/icon/icon_pdf_s.png);
  background-repeat: no-repeat;
  background-size: 18px;
  width: 18px;
  height: 18px;
  margin-right: 0.3em;
  margin-left: 0;
  position: relative;
  top: -0.2em;
  vertical-align: middle;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}

.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url("./ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
  font-family: "slick";
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
}

.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  outline: none;
  background: transparent;
  color: transparent;
}

.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
  opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
  opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
  font-family: "slick";
  font-size: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: -25px;
}

[dir="rtl"] .slick-prev {
  left: auto;
  right: -25px;
}

.slick-prev:before {
  content: "←";
}

[dir="rtl"] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: -25px;
}

[dir="rtl"] .slick-next {
  left: -25px;
  right: auto;
}

.slick-next:before {
  content: "→";
}

[dir="rtl"] .slick-next:before {
  content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: -25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px;
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  border: 0;
  background: transparent;
  display: block;
  height: 20px;
  width: 20px;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
}

.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}

.slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
}

.slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "•";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}

@media print, screen and (min-width: 1024px) {
  .c-slider {
    width: 82%;
    margin: 0 auto;
  }
}

.c-slider__list {
  margin: 0 auto 15px;
}

.c-slider__list img {
  width: 100%;
  height: auto;
  max-width: none;
}

.c-slider__pager .slick-slide {
  padding: 0 5px;
  position: relative;
}

.c-slider__pager .slick-slide span {
  display: block;
  position: relative;
}

.c-slider__pager .slick-current:before {
  content: '';
  display: block;
  margin: 0 5px;
  width: calc(100% - 10px);
  height: 4px;
  background-color: #f3890c;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}

.c-slider__pager .slick-current:after {
  content: '';
  display: block;
  margin: 0 5px;
  width: calc(100% - 10px);
  height: 4px;
  background-color: #f3890c;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 100;
}

.c-slider__pager .slick-current span:before {
  content: '';
  display: block;
  width: 4px;
  height: 100%;
  background-color: #f3890c;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}

.c-slider__pager .slick-current span:after {
  content: '';
  display: block;
  width: 4px;
  height: 100%;
  background-color: #f3890c;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 100;
}

.c-slider--us2 {
  width: 100%;
  margin: 0 0 -123px !important;
  position: relative;
}

@media (min-width: 768px) {
  .c-slider--us2 {
    margin: 0 0 -220px !important;
    padding: 0 4.5%;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-slider--us2 {
    width: 100%;
    max-width: 1170px;
    height: auto;
    margin: 0 auto 60px !important;
    padding: 0 30px;
  }
}

.c-slider--us2 .c-slider {
  width: 100%;
  z-index: 10;
}

.c-slider--us2__ttl {
  position: absolute;
  bottom: 2.2em;
  left: 4%;
  z-index: 100;
  color: #fff;
  font-size: 2rem;
  font-weight: 500;
}

@media (min-width: 768px) {
  .c-slider--us2__ttl {
    margin-right: 50px;
    font-size: 4rem;
    left: 60px;
    bottom: 55px;
  }
}

.c-slider--us2__ttl span {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .c-slider--us2__ttl span {
    display: block;
    font-size: 2rem;
    padding: 1.0em 0 0;
    font-weight: 200;
    letter-spacing: 0.3px;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-slider--us2__ttl {
    bottom: 40px;
  }
}

.c-slider--us2 .slick-slide {
  width: 100%;
}

.c-slider--us2 .slick-dots {
  width: auto;
  position: static;
  display: inline-block;
}

.c-slider--us2 .slick-dots li.slick-active button {
  background-color: #fff;
  border: 3px solid #fec05d;
  width: 8px;
  height: 8px;
}

.c-slider--us2 .slick-dots li button {
  display: inline-block;
  box-sizing: content-box;
  width: 10px;
  height: 10px;
  background-color: #d1d1d1;
  border-radius: 100%;
  padding: 0;
}

.c-slider--us2 .slick-dots li button:before, .c-slider--us2 .slick-dots li button:after {
  display: none;
}

.c-slider--us2 .slick-dots li button:hover {
  background-color: #fec05d;
}

.c-slider--us2 .slick-prev,
.c-slider--us2 .slick-next {
  display: none;
}

@media (min-width: 1260px) {
  .c-slider--us2 .slick-prev,
  .c-slider--us2 .slick-next {
    position: absolute;
    z-index: 100;
    display: block;
    display: none !important;
    height: 54px;
    width: 40px;
    line-height: 0px;
    background: transparent;
    color: transparent;
    top: 53%;
    margin: 0;
    border: none;
    outline: none;
  }
}

.c-slider--us2 .slick-prev:before,
.c-slider--us2 .slick-next:before {
  display: none;
}

.c-slider--us2 .slick-next {
  display: none;
}

@media (min-width: 1260px) {
  .c-slider--us2 .slick-next {
    background-image: url("/images/common/slider/btn_right.png");
    right: 2%;
  }
}

.c-slider--us2 .slick-prev {
  display: none;
}

@media (min-width: 1260px) {
  .c-slider--us2 .slick-prev {
    background-image: url("/images/common/slider/btn_left.png");
    left: 2%;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-slider--us2 .p-divsionSlider__control {
    bottom: -30px;
  }
}

.c-contents__image {
  margin-bottom: 15px;
}

.c-contents__txt {
  margin-bottom: 30px;
  font-size: 1.4rem;
  line-height: 1.8;
}

@media print, screen and (min-width: 1024px) {
  .c-contents__txt {
    font-size: 1.5rem;
  }
}

.c-merit {
  margin-bottom: 25px;
}

.c-merit:after {
  content: '';
  display: block;
  clear: both;
}

@media print, screen and (min-width: 1024px) {
  .c-merit {
    margin-bottom: 30px;
  }
}

.c-merit__titleWrap {
  display: table;
}

@media print, screen and (min-width: 1024px) {
  .c-merit__titleWrap {
    display: inline;
  }
}

.c-merit__titleWrap {
  margin-bottom: 10px;
}

.c-merit__left {
  display: table-cell;
  vertical-align: top;
  width: 60px;
}

@media print, screen and (min-width: 1024px) {
  .c-merit__left {
    display: block;
    width: 104px;
    float: left;
  }
}

.c-merit__right {
  display: table-cell;
  vertical-align: middle;
}

@media print, screen and (min-width: 1024px) {
  .c-merit__right {
    display: block;
  }
}

.c-merit__title {
  margin-bottom: 5px;
  color: #0a41a6;
  font-size: 1.7rem;
  line-height: 1.4;
  font-weight: bold;
}

@media print, screen and (min-width: 1024px) {
  .c-merit__title {
    padding-left: 104px;
    font-size: 1.7rem;
  }
}

.c-merit__txt {
  font-size: 1.4rem;
  line-height: 1.8;
}

@media print, screen and (min-width: 1024px) {
  .c-merit__txt {
    padding-left: 104px;
    font-size: 1.6rem;
  }
}

.c-merit__circle {
  width: 50px;
  height: 50px;
  border-radius: 25px;
  background: #5cb6fc;
  background: linear-gradient(to bottom, #5cb6fc 0%, #0a41a6 100%);
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .c-merit__circle {
    width: 80px;
    height: 80px;
    border-radius: 40px;
  }
}

.c-merit__circleinner {
  width: 48px;
  height: 48px;
  border-radius: 25px;
  background: #fff;
  position: absolute;
  top: 1px;
  left: 1px;
}

@media print, screen and (min-width: 1024px) {
  .c-merit__circleinner {
    width: 78px;
    height: 78px;
    border-radius: 40px;
  }
}

.c-merit__circletxt {
  padding-top: 12px;
  color: #0a41a6;
  font-size: 0.8rem;
  text-align: center;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

@media print, screen and (min-width: 1024px) {
  .c-merit__circletxt {
    padding-top: 18px;
    font-size: 1.2rem;
  }
}

.c-merit__number {
  display: block;
  font-size: 2rem;
}

@media print, screen and (min-width: 1024px) {
  .c-merit__number {
    margin-top: 5px;
    font-size: 3rem;
  }
}

.c-good {
  margin-bottom: 25px;
}

.c-good:after {
  content: '';
  display: block;
  clear: both;
}

@media print, screen and (min-width: 1024px) {
  .c-good {
    margin-bottom: 30px;
  }
}

.c-good__left {
  display: table-cell;
  vertical-align: top;
  width: 60px;
}

@media print, screen and (min-width: 1024px) {
  .c-good__left {
    width: 104px;
  }
}

.c-good__right {
  display: table-cell;
  vertical-align: middle;
}

.c-good__titleWrap {
  margin-bottom: 20px;
  display: table;
  width: 100%;
}

.c-good__title {
  color: #0a41a6;
  font-size: 1.7rem;
  line-height: 1.6;
  font-weight: bold;
}

@media print, screen and (min-width: 1024px) {
  .c-good__title {
    font-size: 1.7rem;
  }
}

.c-good__circletxt {
  margin-top: -0.5rem;
  color: #0a41a6;
  font-size: 1.0rem;
  text-align: center;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  font-family: Helvetica Neue,Helvetica;
}

@media print, screen and (min-width: 1024px) {
  .c-good__circletxt {
    margin-top: -0.6rem;
    font-size: 1.7rem;
  }
}

.c-good__txtList {
  font-size: 1.4rem;
  line-height: 1.5;
}

@media print, screen and (min-width: 1024px) {
  .c-good__txtList {
    padding-left: 104px;
    font-size: 1.6rem;
  }
}

.c-good__txtList > li {
  margin-bottom: 30px;
}

.c-good__txt {
  margin-bottom: 10px;
  font-weight: bold;
}

.c-pump__block {
  padding-bottom: 40px;
}

.c-pump__block:not(:last-child) {
  border-bottom: 1px solid #e5e5e5;
}

.c-pump__block + .c-pump__block {
  margin-top: 40px;
}

.c-pump__titleBlock {
  margin-bottom: 10px;
}

@media print, screen and (min-width: 1024px) {
  .c-pump__titleBlock {
    margin-bottom: 15px;
    display: table;
  }
}

.c-pump__label {
  margin-bottom: 10px;
  display: inline-block;
  color: #fff;
  padding: 10px;
  font-size: 2rem;
  text-align: center;
  min-width: 46px;
  background-color: #ef991e;
}

@media print, screen and (min-width: 1024px) {
  .c-pump__label {
    margin-right: 12px;
    display: table-cell;
  }
}

.c-pump__title {
  margin-bottom: 20px;
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 1.4;
}

@media print, screen and (min-width: 1024px) {
  .c-pump__title {
    margin-bottom: 25px;
    display: table-cell;
    vertical-align: middle;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-pump__label + .c-pump__title {
    padding-left: 12px;
  }
}

.c-pump__image {
  margin-bottom: 20px;
  text-align: center;
}

@media print, screen and (min-width: 1024px) {
  .c-pump__image {
    margin-bottom: 0;
  }
}

.c-pump__image img {
  margin-left: auto;
  margin-right: auto;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 260px;
}

@media print, screen and (min-width: 1024px) {
  .c-pump__image img {
    max-height: 200px;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-pump__imageLarge img {
    max-height: 290px;
  }
}

.c-pump__caption {
  margin-top: 10px;
  font-size: 1.4rem;
  text-align: center;
}

.c-pump__txt {
  margin-bottom: 30px;
  font-size: 1.4rem;
  line-height: 2;
}

@media print, screen and (min-width: 1024px) {
  .c-pump__txt {
    margin-bottom: 25px;
    font-size: 1.5rem;
  }
}

.c-pump__link {
  font-size: 1.4rem;
  line-height: 1.8;
}

.c-pump__link > li {
  margin-bottom: 0.5em;
}

@media print, screen and (min-width: 1024px) {
  .c-pump__link {
    font-size: 1.6rem;
  }
  .c-pump__link > li {
    margin-bottom: 0;
  }
}

.c-form__error {
  color: #F00;
  font-size: 1.4rem;
}

.c-form__input {
  padding: 15px 10px;
  color: #666;
  background-color: #f8f8f8;
  font-size: 1.6rem;
  border: 1px solid #e5e5e5;
  border-radius: 5px;
  vertical-align: middle;
}

.c-form__input_login {
  width: 100%;
}

@media print, screen and (min-width: 1024px) {
  .c-form__input_login {
    width: 25em;
  }
}

/* Yahoo検索に変更の際、流体サイトの検索窓の幅を調整　2017.12.28 */
.c-form__input_search {
  width: 70%;
}

.c-form__button_search {
  margin-left: 8px;
  display: inline-block;
  vertical-align: middle;
}

.c-form__button_search .icon {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .c-form__button_search .icon {
    display: inline;
  }
}

.c-loginEntry {
  margin-bottom: 30px;
}

.c-login__margin {
  margin-bottom: 15px;
}

.c-address__list {
  margin-top: 20px;
  margin-left: 14px;
  margin-right: 14px;
  margin-bottom: 30px;
}

@media print, screen and (min-width: 1024px) {
  .c-address__list {
    margin-top: 35px;
    margin-left: 20px;
    margin-right: 20px;
  }
}

.c-address__list > li {
  padding-bottom: 15px;
  border-bottom: 1px solid #dcdcdc;
}

.c-address__list > li:not(:first-child) {
  padding-top: 20px;
}

@media print, screen and (min-width: 1024px) {
  .c-address__list > li {
    padding-bottom: 20px;
  }
}

.c-address__inner {
  margin-top: 20px;
  margin-bottom: 15px;
  margin-left: 14px;
  margin-right: 14px;
}

.c-address__title {
  margin-bottom: 10px;
  font-size: 1.4rem;
  line-height: 1.6;
  font-weight: bold;
}

@media print, screen and (min-width: 1024px) {
  .c-address__title {
    margin-bottom: 0;
  }
}

.c-address__txt {
  display: table-cell;
  padding-right: 10px;
  font-size: 1.4rem;
  line-height: 1.8;
  vertical-align: top;
}

.c-address__btn {
  display: table-cell;
  text-align: right;
  vertical-align: bottom;
}

.c-address__wrap {
  display: table;
  width: 100%;
}

.c-map {
  margin-top: 10px;
}

.c-map__txtlink {
  margin-top: 10px;
  margin-bottom: 30px;
  font-size: 1.4rem;
}

.c-step__dt {
  padding: 18px 14px;
  background-color: #f3f3f3;
}

@media print, screen and (min-width: 1024px) {
  .c-step__dt {
    padding: 24px 20px;
  }
}

.c-step__dtNum, .c-step__dtTitle {
  display: inline-block;
}

.c-step__dtNum {
  color: #0a41a6;
  font-size: 1.6rem;
  letter-spacing: 2px;
  font-family: Helvetica Neue,Helvetica;
}

@media print, screen and (min-width: 1024px) {
  .c-step__dtNum {
    font-size: 2.2rem;
  }
}

.c-step__dtTitle {
  color: #000;
  font-size: 1.6rem;
  font-weight: bold;
}

@media print, screen and (min-width: 1024px) {
  .c-step__dtTitle {
    font-size: 1.8rem;
  }
}

.c-step__dtNum + .c-step__dtTitle {
  margin-left: 10px;
}

@media print, screen and (min-width: 1024px) {
  .c-step__dtNum + .c-step__dtTitle {
    margin-left: 15px;
  }
}

.c-step__dd {
  margin-bottom: 15px;
  padding-top: 15px;
  padding-bottom: 15px;
  position: relative;
}

.c-step__txt {
  margin-bottom: 20px;
  font-size: 1.4rem;
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .c-step__txt {
    font-size: 1.5rem;
  }
}

.c-step__space {
  padding-left: 50px;
}

@media print, screen and (min-width: 1024px) {
  .c-step__space {
    padding-left: 145px;
  }
}

.c-step__space2 {
  padding-left: 14px;
}

@media print, screen and (min-width: 1024px) {
  .c-step__space2 {
    padding-left: 20px;
  }
}

.c-step__arrow {
  position: relative;
  background-color: #fff;
}

.c-step__arrow:before {
  position: absolute;
  content: '';
  top: 0;
  left: 24px;
  width: 6px;
  height: 100%;
  background: #abccfc;
}

@media print, screen and (min-width: 1024px) {
  .c-step__arrow:before {
    left: 45px;
  }
}

.c-step__arrow:after {
  content: '';
  width: 0;
  height: 0;
  border-top: 30px solid #abccfc;
  border-right: 11px solid transparent;
  border-left: 11px solid transparent;
  position: absolute;
  left: 16px;
  bottom: 0;
  background-color: #fff;
}

@media print, screen and (min-width: 1024px) {
  .c-step__arrow:after {
    left: 37px;
  }
}

.c-step__title {
  margin-top: 10px;
  margin-bottom: 10px;
  padding: 8px;
  display: inline-block;
  color: #fff;
  font-size: 1.8rem;
  text-align: center;
  min-width: 116px;
  background-color: #5686de;
}

@media print, screen and (min-width: 1024px) {
  .c-step__title {
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 15px;
    font-size: 2.2rem;
    min-width: 255px;
  }
}

.c-step__image {
  margin-left: 0;
  margin-right: auto;
  max-width: 100%;
  width: auto;
}

@media print, screen and (min-width: 1024px) {
  .c-step__image {
    margin-left: auto;
    margin-right: 0;
  }
}

.c-related {
  margin-bottom: 30px;
  padding: 14px 14px 20px;
  border: 1px solid #e5e5e5;
}

@media print, screen and (min-width: 1024px) {
  .c-related {
    padding: 30px;
  }
}

.c-related__title {
  margin-bottom: 20px;
  padding-bottom: 5px;
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.71428571;
  border-bottom: 1px solid #e5e5e5;
}

@media print, screen and (min-width: 1024px) {
  .c-related__title {
    padding-bottom: 14px;
    font-size: 1.6rem;
    line-height: 1.5;
  }
}

.c-related__subTitle {
  margin-bottom: 10px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.4;
}

.c-related__subTitle--intervalTop {
  margin-top: 20px;
}

@media print, screen and (min-width: 1024px) {
  .c-related__subTitle--intervalTop:first-of-type {
    margin-top: 0;
  }
}

.c-related__lists {
  font-size: 1.4rem;
  line-height: 1.6;
}

.c-related__list {
  margin-bottom: 8px;
}

@media print, screen and (min-width: 1024px) {
  .c-related__list {
    margin-bottom: 10px;
  }
  .c-related__list:last-of-type {
    margin-bottom: 0;
  }
}

.c-related__link {
  color: #4471d6;
}

.c-related__link:visited {
  color: #8833CC;
}

.c-related__link:visited > .icon {
  color: #8833CC;
}

.c-related__link > .icon {
  color: #0a41a6;
}

.c-companyGroup {
  /* SPでリンク同士の間隔が狭いときに指定する。 */
}

.c-companyGroup__icons {
  margin-bottom: 30px;
  font-size: 1.1rem;
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .c-companyGroup__icons {
    font-size: 1.3rem;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-companyGroup__block {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
  }
  .c-companyGroup__block:after {
    content: '';
    display: block;
    clear: both;
  }
}

.c-companyGroup__icon {
  display: table;
  margin-bottom: 5px;
}

.c-companyGroup__icon .icon {
  padding-right: 0.3em;
  display: table-cell;
  vertical-align: middle;
  font-size: 2.5em;
  position: static;
}

.c-companyGroup__icon > span {
  display: table-cell;
  vertical-align: middle;
}

@media print, screen and (min-width: 1024px) {
  .c-companyGroup__icon {
    display: inline-block;
    width: auto;
  }
  .c-companyGroup__icon:not(:first-of-type) {
    padding-left: 0;
  }
  .c-companyGroup__icon:last-child {
    padding-right: 0;
  }
  .c-companyGroup__icon .icon {
    font-size: 2.8em;
  }
}

.c-companyGroup__heading {
  padding: 12px 18px;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.4;
  border-top: 1px solid #ddd;
  background-color: #f4f4f4;
}

.c-companyGroup__foot + .c-companyGroup__heading {
  margin-top: 10px;
}

@media print, screen and (min-width: 1024px) {
  .c-companyGroup__heading {
    float: left;
    padding: 20px;
    border-top-width: 0;
    border-bottom: 1px solid #ddd;
  }
  .c-companyGroup__foot + .c-companyGroup__heading {
    margin-top: 0;
  }
}

.c-companyGroup__heading > span {
  display: block;
  margin-top: 8px;
}

.c-companyGroup__heading .icon-horizontal {
  display: inline-block;
  margin-left: -0.05em;
  font-size: 2.5em;
}

.c-companyGroup__heading .icon-horizontal:not(:first-of-type) {
  margin-left: -4px;
}

@media print, screen and (min-width: 1024px) {
  .c-companyGroup__heading .icon-horizontal {
    font-size: 4rem;
  }
  .c-companyGroup__heading .icon-horizontal:not(:first-of-type) {
    margin-left: 0;
  }
}

.c-companyGroup__body, .c-companyGroup__foot {
  padding: 12px 15px 18px;
  font-size: 1.4rem;
  line-height: 1.8;
}

@media print, screen and (min-width: 1024px) {
  .c-companyGroup__body, .c-companyGroup__foot {
    float: left;
    padding: 20px;
    border-bottom: 1px solid #ddd;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-companyGroup__foot {
    border-bottom: 1px solid #ddd;
    border-left: 1px solid #ddd;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-companyGroup__foot--image {
    border-bottom: 1px solid #ddd;
    border-left: none;
  }
}

.c-companyGroup__text {
  margin-bottom: 8px;
}

.c-companyGroup__lists + .c-companyGroup__btn {
  margin-top: 18px;
}

.c-companyGroup__lists--intervalTop > .c-companyGroup__list {
  margin-bottom: 10px;
}

@media print, screen and (min-width: 1024px) {
  .c-companyGroup__lists--intervalTop > .c-companyGroup__list {
    margin-bottom: 0;
  }
}

.c-companyGroup__btn > .c-button__map {
  padding-top: 7px;
  padding-right: 15px;
  font-size: 1.4rem;
  line-height: 1;
  width: 96px;
  height: 30px;
}

.c-companyGroup__btn .c-button__iconMap {
  margin-right: 5px;
  font-size: 1.5rem;
}

.c-companyGroup__btn:not(:last-child) {
  margin-bottom: 22px;
}

@media print, screen and (min-width: 1024px) {
  .c-companyGroup--col-2 .c-companyGroup__heading {
    width: 37.5%;
  }
  .c-companyGroup--col-2 .c-companyGroup__heading:nth-last-of-type(2) {
    border-bottom: 0;
  }
  .c-companyGroup--col-2 .c-companyGroup__body {
    width: 62.5%;
  }
  .c-companyGroup--col-2 .c-companyGroup__body:nth-last-of-type(1) {
    border-bottom: 0;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-companyGroup--col-3 .c-companyGroup__heading {
    width: 33.33333%;
  }
  .c-companyGroup--col-3 .c-companyGroup__heading:nth-last-of-type(3) {
    border-bottom: 0;
  }
  .c-companyGroup--col-3 .c-companyGroup__body {
    width: 37.5%;
  }
  .c-companyGroup--col-3 .c-companyGroup__body:nth-last-of-type(2) {
    border-bottom: 0;
  }
  .c-companyGroup--col-3 .c-companyGroup__foot {
    width: 29.16667%;
  }
  .c-companyGroup--col-3 .c-companyGroup__foot:nth-last-of-type(1) {
    border-bottom: 0;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-companyGroup--col-3-image .c-companyGroup__heading {
    width: 25%;
  }
  .c-companyGroup--col-3-image .c-companyGroup__heading:nth-last-of-type(3) {
    border-bottom: 0;
  }
  .c-companyGroup--col-3-image .c-companyGroup__body {
    width: 50%;
  }
  .c-companyGroup--col-3-image .c-companyGroup__body:nth-last-of-type(2) {
    border-bottom: 0;
  }
  .c-companyGroup--col-3-image .c-companyGroup__foot {
    width: 25%;
  }
  .c-companyGroup--col-3-image .c-companyGroup__foot:nth-last-of-type(1) {
    border-bottom: 0;
  }
}

.c-qanda {
  font-size: 1.6rem;
  line-height: 1.5;
}

.c-qanda:last-child {
  margin-bottom: 30px;
}

.c-qanda__list {
  position: relative;
  padding: 20px 60px 20px 40px;
  font-weight: 600;
  cursor: pointer;
}

.c-qanda__list:after {
  content: "";
}

@media print, screen and (min-width: 1024px) {
  .c-qanda__list {
    padding-right: 60px;
    padding-left: 60px;
    padding: 28px 80px 28px 65px;
    font-size: 1.7rem;
    line-height: 1.6;
  }
}

.c-qanda__list:not(:first-of-type) {
  border-top: 1px solid #e5e5e5;
}

.c-qanda__list:last-of-type {
  border-bottom: 1px solid #e5e5e5;
}

.c-qanda__list:last-of-type.is-active {
  border-bottom-width: 0;
}

.c-qanda__list:hover {
  color: #4471d6;
  background-color: #e8eefa;
}

.c-qanda__list:before {
  content: "Q";
  display: block;
  position: absolute;
  top: 19px;
  left: 0;
  width: 28px;
  height: 28px;
  line-height: 28px;
  text-align: center;
  font-size: 1.3rem;
  font-weight: 400;
  color: #fff;
  background-color: #0a41a6;
  border-radius: 50%;
}

@media print, screen and (min-width: 1024px) {
  .c-qanda__list:before {
    top: 22px;
    left: 10px;
    width: 38px;
    height: 38px;
    line-height: 38px;
    font-size: 1.8rem;
  }
}

.c-qanda__list:after {
  /* +（アイコンフォント） */
  font-family: "iconfont","Noto Sans Japanese", "Noto Sans", "Noto Sans", "Noto Sans SC", sans-serif;
  display: block;
  position: absolute;
  top: 10px;
  right: 14px;
  font-size: 3rem;
  color: #ccc;
}

@media print, screen and (min-width: 1024px) {
  .c-qanda__list:after {
    top: 18px;
  }
}

.c-qanda__list.is-active:after {
  content: "";
}

.c-qanda__body {
  display: none;
  position: relative;
  margin-top: 5px;
  padding: 0px 60px 30px 40px;
  font-size: 1.4rem;
  line-height: 1.8;
}

.c-qanda__body.is-active {
  display: block;
}

.c-qanda__body:last-of-type.is-active {
  border-bottom: 1px solid #e5e5e5;
}

@media print, screen and (min-width: 1024px) {
  .c-qanda__body {
    margin-top: 10px;
    padding-right: 80px;
    padding-left: 65px;
    font-size: 1.5rem;
    line-height: 1.8;
  }
}

.c-qanda__body:before {
  content: "A";
  display: block;
  position: absolute;
  top: 3px;
  left: 0;
  width: 28px;
  height: 28px;
  line-height: 28px;
  text-align: center;
  font-size: 1.3rem;
  font-weight: 400;
  color: #044;
  background-color: #e5e5e5;
  border-radius: 50%;
}

@media print, screen and (min-width: 1024px) {
  .c-qanda__body:before {
    top: 2px;
    left: 10px;
    width: 38px;
    height: 38px;
    line-height: 38px;
    font-size: 1.8rem;
  }
}

.c-qanda__emphasis {
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 600;
}

@media print, screen and (min-width: 1024px) {
  .c-qanda__emphasis {
    font-size: 1.5rem;
    line-height: 1.8;
  }
}

.c-qanda__emphasis:nth-of-type(n+2) {
  display: inline-block;
  margin-top: 1em;
}

.c-timeline__open .mfp-arrow-left,
.c-timeline__open .mfp-arrow-right {
  display: none !important;
}

@media print, screen and (min-width: 1024px) {
  .c-timeline__open .mfp-arrow-left,
  .c-timeline__open .mfp-arrow-right {
    display: block !important;
  }
}

.c-timeline {
  margin-bottom: 30px;
}

.c-timeline__titles {
  display: none;
}

.c-timeline__titles:after {
  content: '';
  display: block;
  clear: both;
}

.c-timeline__title {
  float: left;
  width: 50%;
  padding: 10px 0;
  text-align: center;
}

.c-timeline__title:first-of-type {
  background-color: #0a41a6;
}

.c-timeline__title:last-of-type {
  background-color: #2988cb;
}

.c-timeline__container {
  position: relative;
  padding-left: 42px;
  font-size: 1.4rem;
  line-height: 1.8;
}

.c-timeline__container:before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 8px;
  width: 4px;
  height: 100%;
  background-color: #c9c9c9;
}

.c-timeline__block {
  position: relative;
}

.c-timeline__block:after {
  content: '';
  display: block;
  clear: both;
}

.c-timeline__block:not(:last-of-type) {
  margin-bottom: 26px;
}

.c-timeline__circle {
  position: absolute;
  top: 28px;
  left: -40px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: #c9c9c9;
}

.c-timeline__circle:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 8px;
  height: 8px;
  margin: auto;
  background-color: #fff;
  border-radius: 50%;
}

.c-timeline__items:after {
  content: '';
  display: block;
  clear: both;
}

.c-timeline__item {
  position: relative;
  padding: 20px;
  border-radius: 4px;
}

@media (min-width: 768px) {
  .c-timeline__item {
    display: table;
    width: 100%;
    padding: 25px;
  }
}

.c-timeline__block--company .c-timeline__item {
  background-color: #ecf1fc;
}

.c-timeline__block--product .c-timeline__item {
  background-color: #f6efe8;
}

.c-timeline__item:before {
  content: "";
  position: absolute;
  top: 26px;
  left: -16px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 16px 10px 0;
}

.c-timeline__block--company .c-timeline__item:before {
  border-color: transparent #ecf1fc transparent transparent;
}

.c-timeline__block--product .c-timeline__item:before {
  border-color: transparent #f6efe8 transparent transparent;
}

@media (min-width: 768px) {
  .c-timeline__itemHead,
  .c-timeline__itemFoot {
    display: table-cell;
    vertical-align: top;
  }
}

.c-timeline__itemHead {
  margin-bottom: 14px;
}

@media (min-width: 768px) {
  .c-timeline__itemHead {
    width: 250px;
    margin-bottom: 0;
  }
}

.c-timeline__itemFoot:after {
  content: '';
  display: block;
  clear: both;
}

.c-timeline__itemFoot > :last-child {
  margin-bottom: 0;
}

.c-timeline__heading {
  margin-top: 3px;
  margin-bottom: 6px;
  font-size: 1.6rem;
  line-height: 1.2;
  font-weight: 600;
}

.c-timeline__block--company .c-timeline__heading {
  color: #0a41a6;
}

.c-timeline__block--product .c-timeline__heading {
  color: #554027;
}

.c-timeline__label {
  display: inline-block;
  padding: 5px 16px;
  font-size: 1.2rem;
  line-height: 1;
  color: #fff;
}

.c-timeline__block--company .c-timeline__label {
  background-color: #0a41a6;
}

.c-timeline__block--product .c-timeline__label {
  background-color: #664d2f;
}

.c-timeline__label + .c-timeline__heading {
  margin-top: 12px;
}

.c-timeline__image {
  position: relative;
  width: auto;
  max-width: 200px;
  display: block;
  text-align: center;
}

@media (min-width: 768px) {
  .c-timeline__image {
    float: right;
    margin-left: 16px;
  }
}

.c-timeline__image a {
  position: relative;
  display: block;
}

.c-timeline__image img {
  max-width: 100%;
  max-height: 132px;
  width: auto;
  margin-right: 0;
  margin-left: auto;
}

.c-timeline__iconZoom {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 32px;
  height: 32px;
  line-height: 32px;
  font-size: 22px;
  text-align: center;
  color: #fff;
  background-color: #000;
}

.c-timeline__iconZoom:before {
  content: "";
}

.c-timeline__text {
  margin-bottom: 10px;
}

@media (min-width: 768px) {
  .c-timeline__text {
    overflow: hidden;
    float: left;
    margin-bottom: 0;
  }
  .c-timeline__text:not(:last-of-type) {
    margin-bottom: 10px;
  }
}

.c-timeline__textMain {
  font-weight: 700;
}

@media (min-width: 768px) {
  .c-timeline__itemFoot--sidebyside .c-timeline__text {
    width: 54%;
  }
  .c-timeline__itemFoot--sidebyside .c-timeline__image {
    width: calc(50% - 35px);
  }
}

/* ポップアップを表示するスタイルはcomponent/_popup.scss */
/**
 * jquery.magnific-popup.jsでポップアップを表示するときのスタイルです。
 */
.c-inline-popup__open .mfp-arrow-left,
.c-inline-popup__open .mfp-arrow-right {
  display: none !important;
}

@media print, screen and (min-width: 1024px) {
  .c-inline-popup__open .mfp-arrow-left,
  .c-inline-popup__open .mfp-arrow-right {
    display: block !important;
  }
}

.c-popup__content {
  color: #fff;
}

@media (min-width: 768px) {
  .c-popup__content > img {
    width: auto;
  }
}

.c-popup__content > img {
  max-width: 730px;
  margin: auto;
  margin-bottom: 30px;
}

.c-popup__contentDate,
.c-popup__contentText {
  max-width: 730px;
  margin: auto;
}

.c-popup__contentDate {
  margin-bottom: 12px;
  padding: 0 14px;
  font-size: 1.6rem;
  line-height: 1.25;
}

@media print, screen and (min-width: 1024px) {
  .c-popup__contentDate {
    margin-bottom: 6px;
    padding: 0;
  }
}

.c-popup__contentText {
  padding: 0 14px;
  font-size: 1.4rem;
  line-height: 1.8;
}

@media print, screen and (min-width: 1024px) {
  .c-popup__contentText {
    padding: 0;
  }
}

.c-popup__logo {
  padding: 25px;
  background-color: #FFF;
}

.c-popup__logo > img {
  width: 100%;
}

.c-widget {
  font-size: 1.1rem;
  line-height: 1.6;
}

.c-widget--bordered {
  border: 1px solid #e5e5e5;
}

.c-widget--bordered:not(:first-of-type) {
  margin-top: -1px;
}

.c-widget__title {
  margin: 15px 12px 0;
  font-size: 1.3rem;
  left: 1.7em;
}

.c-widget__bodyText {
  display: block;
  text-decoration: none;
}

@media print, screen and (min-width: 1024px) {
  .c-widget__bodyText:hover {
    text-decoration: none;
  }
}

.c-widget__media {
  display: table !important;
  width: 100%;
  padding: 12px;
  transition-duration: 0.4s;
}

.c-widget__media:hover {
  background-color: #e8eefa;
}

@media print, screen and (min-width: 1024px) {
  .c-widget__media:hover {
    text-decoration: none;
  }
}

.c-widget__mediaImage, .c-widget__mediaBody {
  display: table-cell;
  vertical-align: middle;
}

.c-widget__mediaImage {
  padding-right: 12px;
}

.c-widget__mediaImage > img {
  display: inline;
  max-width: none;
  width: 70px;
  vertical-align: middle;
}

.c-widget__mediaBody {
  width: 100%;
}

.c-widget__link {
  font-size: 1.3rem;
  text-decoration: none;
}

.c-widget__link:hover {
  color: #4471d6;
  text-decoration: none;
}

.c-widget__banner {
  display: block;
  padding: 12px;
}

.c-widget__banner > img {
  width: 100%;
}

.c-widget__text {
  display: block;
  margin-top: -4px;
  padding: 0 12px 12px;
}

.c-hero {
  position: relative;
}

.c-hero__image {
  background-color: inherit;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  margin-bottom: 10px;
  padding-top: 43.4466%;
}

@media (min-width: 768px) {
  .c-hero__image {
    margin-bottom: 30px;
  }
}

.c-hero__heading {
  margin-bottom: 10px;
  font-size: 1.7rem;
  font-weight: 600;
  line-height: 1.7;
  color: #0a41a6;
}

@media (min-width: 768px) {
  .c-hero__heading {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    display: inline-block;
    margin-top: 78px;
    font-size: 2rem;
    line-height: 1.6;
    text-align: center;
  }
}

.c-hero__text {
  margin-bottom: 1.5em;
  font-size: 1.4rem;
  line-height: 1.8;
}

@media (min-width: 768px) {
  .c-hero__text {
    font-size: 1.6rem;
  }
}

.c-block {
  margin-bottom: 30px;
  list-style-type: none;
  /* .row > .c-block > .colのように.c-blockにボーダーを指定したいときに使う */
  /* .row + .rowの間にボーダーを指定したい場合に使う */
}

.c-block:after {
  content: '';
  display: block;
  clear: both;
}

.c-block--bordered:not(:last-of-type) {
  margin-bottom: 30px;
  border-bottom: 1px solid #e5e5e5;
}

@media print, screen and (min-width: 1024px) {
  .c-block--bordered:not(:last-of-type) {
    margin-bottom: 30px;
  }
}

.c-block:not(:last-of-type) > .c-block__bordered {
  margin-bottom: 30px;
}

.c-block:not(:last-of-type) > .c-block__bordered:after {
  content: "";
  width: 100%;
  width: calc(100% - 30px);
  height: 1px;
  margin: auto;
  display: block;
  overflow: hidden;
  background-color: #e5e5e5;
}

.c-block__section:after {
  content: '';
  display: block;
  clear: both;
}

.c-mapLink {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .c-mapLink {
    display: block;
    margin-bottom: 60px;
  }
}

.c-mapLink__bg {
  position: relative;
  top: 0;
  left: 50%;
  width: 1110px;
  height: 500px;
  margin-left: -555px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.c-mapLink__link {
  position: absolute;
}

.c-mapLink__image {
  width: auto;
}

.c-embed {
  display: block;
  overflow: hidden;
  position: relative;
  height: 0;
  margin: auto;
  padding: 0;
  padding-bottom: 56.25%;
}

.c-embed .c-embed__item,
.c-embed iframe,
.c-embed embed,
.c-embed object,
.c-embed video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
  border: 0;
}

/**
 * アスペクト比 16:9（`.c-embed`の初期値）
 * 1920:1080, 1280:720, 960:540, 854:480, 640:360, 427:240, 1832:1080
 */
.c-embed--16to9 {
  padding-bottom: 56.25%;
}

/**
 * アスペクト比 4:3
 * 1024:768, 960:720, 640:480, 600:450, 320:240, 240:180
 */
.c-embed--4to3 {
  padding-bottom: 75%;
}

/**
 * 3:2
 * 480:320, 1632:1080
 */
.c-embed--3to2 {
  padding-bottom: 66.66667%;
}

/**
 * アスペクト比 8:3
 * 1920:720
 */
.c-embed--8to3 {
  padding-bottom: 37.5%;
}

/**
 * アスペクト比 41:25
 * 410:250
 */
.c-embed--41to25 {
  padding-bottom: 60.97561%;
}

/**
 * アスペクト比 7:8
 * 352:288
 */
.c-embed--7to8 {
  padding-bottom: 114.28571%;
}

.p-bannerBlock {
  margin-bottom: 30px;
}

.p-bannerBlock__item {
  margin: 0 auto 15px;
}

@media print, screen and (min-width: 1024px) {
  .p-bannerBlock__item {
    margin: 0 auto;
  }
}

.p-bannerBlock__link {
  display: block;
  position: relative;
}

.p-bannerBlock__link > img {
  max-width: none;
  width: 100%;
}

@media print, screen and (min-width: 1024px) {
  .p-bannerBlock__link {
    transition: 0.3s;
  }
  .p-bannerBlock__link:hover {
    opacity: 0.8;
  }
}

.p-bannerBlock__txt {
  width: 100%;
  padding: 15px 30px 14px 10px;
  position: absolute;
  bottom: 0;
  left: 0;
  line-height: 45px;
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.4;
  min-height: 52px;
}

.p-bannerBlock__txt i {
  font-size: 1.6rem;
  position: absolute;
  top: 18px;
  right: 10px;
}

.p-bannerBlock__body {
  margin-top: 10px;
  font-size: 1.3rem;
  line-height: 1.6;
}

/**
 * `/movie`ディレクトリで使用する、動画や画像とテキストをblockから横並びにするコンテナです。
 */
.c-movieWrap:not(:last-of-type) {
  margin-bottom: 20px;
}

@media print, screen and (min-width: 1024px) {
  .c-movieWrap:not(:last-of-type) {
    margin-bottom: 50px;
  }
}

@media print, screen and (min-width: 1024px) {
  .c-movieWrap:first-child {
    margin-top: 50px;
  }
}

.c-movieWrap__video {
  margin-bottom: 20px;
}

@media print, screen and (min-width: 1024px) {
  .c-movieWrap__video {
    margin-bottom: 50px;
  }
}

.c-movieWrap__body {
  margin-bottom: 30px;
}

.c-movieWrap__body > :last-child {
  margin-bottom: 0;
}

@media print, screen and (min-width: 1024px) {
  .c-movieWrap__body {
    margin-bottom: 50px;
  }
}

/**
 * Block同士の間にボーダーを表示させる。
 */
.c-movieWrap--bordered:not(:last-of-type):after {
  content: "";
  display: block;
  width: 100%;
  width: calc(100% - 30px);
  height: 1px;
  margin: auto;
  overflow: hidden;
  background-color: #e5e5e5;
}

.c-movieWrap--bordered:not(:last-of-type) .c-movieWrap__body {
  margin-bottom: 0;
  padding-bottom: 30px;
}

@media print, screen and (min-width: 1024px) {
  .c-movieWrap--bordered:not(:last-of-type) .c-movieWrap__body {
    padding-bottom: 50px;
  }
}

/**
 * `.c-heading__deco2`と併用し、ブレイクポイント以下でスタイルを変える。
 */
.c-movieWrap__heading {
  margin-bottom: 1.2em;
  padding-top: 0;
}

@media print, screen and (max-width: 1023px) {
  .c-movieWrap__heading .c-heading__inner {
    padding-bottom: 0;
  }
  .c-movieWrap__heading.c-heading__deco2 {
    border-bottom: 0;
  }
  .c-movieWrap__heading.c-heading__deco2:after {
    display: none;
    height: 0;
  }
  .c-movieWrap__heading h2 {
    font-size: 1.6rem;
    font-weight: bold;
  }
}

/**
 * 関連ページなどを示す見出しとして使う。
 * `.c-heading__txt5`と併用し、ブレイクポイント以下でスタイルを変える。
 */
.c-movieWrap__subHeading {
  margin-bottom: 0.8em;
}

@media print, screen and (max-width: 1023px) {
  .c-movieWrap__subHeading {
    font-weight: normal;
  }
}

.c-movieWrap__list > li {
  margin-bottom: 0.8em;
}

.c-movieWrap__list > li:last-child {
  margin-bottom: 0;
}

/**
 * 問い合わせページのフォーム送信までの順序をしめすナビです。
 */
.c-processMenu {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.8;
  overflow: hidden;
}

.c-processMenu:after {
  content: '';
  display: block;
  clear: both;
}

.c-processMenu--top {
  margin-bottom: 40px;
}

.c-processMenu--bottom {
  margin-top: 30px;
}

@media print, screen and (min-width: 1024px) {
  .c-processMenu--bottom {
    margin-top: 60px;
  }
}

.c-processMenu__item {
  position: relative;
  float: left;
  width: 33.33333%;
  padding: 1rem 0;
  background-color: #f0f0f0;
}

.c-processMenu__item:not(:last-of-type):before,
.c-processMenu__item:not(:last-of-type):after {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  width: 0;
  height: 0;
  margin: auto;
  /* ボーダーの端を隠すために+2px */
  border: 26px solid transparent;
  border-left: 12px solid;
}

@media print, screen and (min-width: 1024px) {
  .c-processMenu__item:not(:last-of-type):before,
  .c-processMenu__item:not(:last-of-type):after {
    border-left-width: 19px;
  }
}

.c-processMenu__item:not(:last-of-type):before {
  /* 24 + 12 + 1 */
  right: -37px;
  border-left-color: #cfcfcf;
}

@media print, screen and (min-width: 1024px) {
  .c-processMenu__item:not(:last-of-type):before {
    /* 24 + 19 + 1 */
    right: -44px;
  }
}

.c-processMenu__item:not(:last-of-type):after {
  /* 24 + 12 */
  right: -36px;
  border-left-color: #f0f0f0;
}

@media print, screen and (min-width: 1024px) {
  .c-processMenu__item:not(:last-of-type):after {
    /* 24 + 19 */
    right: -43px;
  }
}

/* State */
.c-processMenu__item.is-current {
  color: #fff;
  background-color: #0a41a6;
}

.c-processMenu__item.is-current:after {
  border-left-color: #0a41a6;
}

.c-formBlock [class*="col-"] {
  float: none;
}

.c-formBlock__inner {
  font-size: 0;
  display: block;
}

.c-formBlock__inner:not(:first-of-type) {
  margin-top: 20px;
}

@media print, screen and (min-width: 1024px) {
  .c-formBlock__inner:not(:first-of-type) {
    margin-top: 30px;
  }
}

.c-formBlock__inner--middle > .c-formBlock__name,
.c-formBlock__inner--middle > .c-formBlock__value {
  vertical-align: middle;
}

.c-formBlock--bordered > .c-formBlock__inner:not(:first-of-type) {
  padding-top: 20px;
  border-top: 1px solid #e5e5e5;
}

.c-formBlock__name,
.c-formBlock__value {
  display: block;
  vertical-align: top;
  font-size: medium;
  font-size: 1.5rem;
}

@media print, screen and (min-width: 1024px) {
  .c-formBlock__name,
  .c-formBlock__value {
    display: inline-block;
  }
}

.c-formBlock__name {
  padding-top: 8px;
  padding-bottom: 8px;
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .c-formBlock__name {
    padding-top: 0;
    padding-bottom: 0;
  }
}

.c-formBlock__value {
  padding-top: 4px;
  padding-bottom: 4px;
}

.c-formBlock__value + .c-formBlock__value {
  margin-top: 15px;
}

.c-formBlock__value > :not(:last-child) {
  margin-bottom: 15px;
}

@media print, screen and (min-width: 1024px) {
  .c-formBlock__value {
    padding-top: 0;
    padding-bottom: 0;
  }
}

.c-formBlock__value > :last-child {
  margin-bottom: 0;
}

.c-formBlock__label {
  margin-left: 10px;
}

@media print, screen and (min-width: 1024px) {
  .c-formBlock__label {
    position: absolute;
    top: 0;
    right: 15px;
    margin-left: 0;
  }
}

.c-formBlock__heading {
  display: inline-block;
  font-size: 1.5rem;
  line-height: 1.4;
  font-weight: bold;
  color: #000;
}

.c-formBlock__subHeading {
  margin-top: 12px;
  font-size: 1.3rem;
  line-height: 1.5;
}

/**
 * .c-labelGroup
 * `input`を横並びに配置します。
 */
.c-labelGroup {
  display: block;
}

.c-labelGroup:after {
  content: '';
  display: block;
  clear: both;
}

.c-labelGroup__item {
  float: left;
}

.c-labelGroup__item:not(:first-of-type) {
  margin-left: 30px;
}

/* .c-formBlock内のフォーム部品のスタイル */
.inputText,
.inputEmail {
  width: 100%;
  height: 2.8em;
  padding: 0 0.5em;
  font-size: 1.5rem;
  border: 1px solid #d0d0d0;
  background-color: #f8f8f8;
  box-shadow: 1px 1px 6px -3px #9e9e9e inset;
  border-radius: 4px;
}

/**
 * マークアップ例
 *
 * input.u-dn(type="checkbox" name="after" id="after")
 * label.checkbox(for="after") メンテナンス・アフターサービスの場合
 */
.inputCheckbox {
  position: relative;
  font-size: 1.4rem;
  /* State */
}

.inputCheckbox:before {
  content: "";
  position: relative;
  display: inline-block;
  vertical-align: middle;
  top: -0.1em;
  left: 0;
  width: 26px;
  height: 26px;
  margin: auto;
  margin-right: 8px;
  border: 1px solid #d0d0d0;
  border-radius: 5px;
  background-color: #eee;
}

input[type="checkbox"]:disabled + .inputCheckbox {
  opacity: 0.7;
}

input[type="checkbox"]:checked + .inputCheckbox:after {
  content: "";
}

input[type="checkbox"]:checked + .inputCheckbox .checkbox__icon {
  display: inline-block;
}

input[type="checkbox"]:checked + .inputCheckbox:before {
  background-color: #4471d6;
}

input[type="checkbox"]:checked + .inputCheckbox:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 6px;
  height: 1em;
  margin: auto;
  color: #fff;
  vertical-align: middle;
}

/* inputRadio */
.inputRadio {
  position: relative;
  font-size: 1.4rem;
  /* State */
}

.inputRadio:before {
  content: "";
  position: relative;
  display: inline-block;
  vertical-align: middle;
  top: -0.1em;
  left: 0;
  width: 26px;
  height: 26px;
  margin: auto;
  margin-right: 8px;
  border: 1px solid #d0d0d0;
  border-radius: 50%;
  background-color: #eee;
}

input[type="radio"]:disabled + .inputRadio {
  opacity: 0.7;
}

input[type="radio"]:checked + .inputRadio:after {
  content: "";
}

input[type="radio"]:checked + .inputRadio:before {
  background-color: #4471d6;
}

input[type="radio"]:checked + .inputRadio:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 6px;
  height: 1em;
  margin: auto;
  color: #fff;
  vertical-align: middle;
}

.textarea {
  width: 100%;
  height: 7em;
  margin: 0.5em 0;
  padding: 0.5em;
  font-size: 1.5rem;
  border: 1px solid #d0d0d0;
  background-color: #f8f8f8;
  box-shadow: 1px 1px 6px -3px #9e9e9e inset;
  border-radius: 4px;
}

.textarea--large {
  height: 15em;
}

.select {
  position: relative;
  /* `.col`で横幅を指定しても崩れないように */
  padding-right: 0;
  padding-left: 0;
}

.select:after {
  content: "";
}

.select:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  position: absolute;
  top: -0.1em;
  right: 15px;
  bottom: 0;
  margin: auto;
  height: 1em;
  pointer-events: none;
}

.select:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 3px;
  bottom: 0;
  width: 100%;
  width: calc(100% - 6px);
  height: 2px;
  box-shadow: 1px 0px 1px 2px rgba(0, 0, 0, 0.05);
}

.select.is-active {
  color: #0a41a6;
  background-color: #e8eefa;
}

.select.is-active > .select__item {
  background-color: #e8eefa;
}

.select__item {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  /* Firefox Hack */
  -moz-appearance: none;
  text-indent: 0.01px;
  text-overflow: '';
  /* IE Hack */
  width: 100%;
  padding: 15px;
  font-size: 1.5rem;
  line-height: 1;
  border: 1px solid #dedede;
  border-radius: 3px;
  background-color: #f8f8f8;
}

.select__item::-ms-expand {
  display: none;
}

.select option {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
}

.c-chartbox {
  width: 100%;
  height: 500px;
  margin-bottom: 40px;
  font-size: 1.1rem;
}

.c-chartbox__large {
  width: 100%;
  height: 700px;
  margin-bottom: 40px;
  font-size: 1.1rem;
}

.c-chartbox__medium {
  width: 100%;
  height: 400px;
  margin-bottom: 40px;
  font-size: 1.1rem;
}

.c-chartbox__small {
  width: 100%;
  height: 250px;
  margin-bottom: 10px;
  font-size: 1.1rem;
}

/**
 * カテゴリごとのトップページなどで使うメインビジュアルです。
 * CSSレベルでの画像の出しわけができます。pcサイズの画像は2000px × 550pxを想定しています。
 * `pc`で画像の切り替え、`wide`でフルードからサイズの固定化とセンタリングになります。
 */
.p-mainvisual {
  width: 100%;
  margin: 48px auto 30px;
}

@media (min-width: 768px) {
  .p-mainvisual {
    margin: 100px 0 30px;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-mainvisual {
    margin: 0 auto 45px;
  }
}

@media (min-width: 2000px) {
  .p-mainvisual {
    position: relative;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-mainvisual__inner {
    width: 100%;
    overflow: hidden;
  }
}

@media (min-width: 2000px) {
  .p-mainvisual__inner {
    height: auto;
  }
}

.p-mainvisual__images {
  width: 100%;
}

@media print, screen and (min-width: 1024px) {
  .p-mainvisual__images {
    position: relative;
    max-width: none;
    margin: 0 auto;
    /**
     * 画像の表示領域を確保。
     * アスペクト比の計算は(横幅 ÷ 高さ) × 100%
     * (451 / 1024) * 100% = 44.04296875%
     */
    padding-top: 44.04296875%;
  }
}

@media (min-width: 1200px) {
  .p-mainvisual__images {
    /* アスペクト比の固定を中止、高さを固定する。 */
    padding-top: 0;
    height: 550px;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-mainvisual__spImage {
    display: none;
  }
}

.p-mainvisual__pcImage {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .p-mainvisual__pcImage {
    display: block;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-mainvisual__pcImage {
    position: absolute;
    top: 0;
    /**
     * `width`は親要素に対する画像の大きさを指定する。
     * `left`には`width`で増やした割合の半分を指定して画像を常にセンタリングさせる。
     * ex. `width:160%`の場合
     * (160 - 100) / 2 = 30 = `left: -30%`
     */
    width: 160%;
    left: -30%;
  }
}

@media (min-width: 1200px) {
  .p-mainvisual__pcImage {
    /**
       * 画像は常に等倍サイズを保持しながらセンタリングされる。
       * 親要素が横幅はブラウザの横幅、高さは画像の等倍サイズを確保するので、
       * ウィンドウサイズによって画像の両端がトリミングされる。
       */
    width: 2000px;
    left: 50%;
    margin-left: -1000px;
  }
}

@media (min-width: 2000px) {
  .p-mainvisual__pcImage {
    /* 高さは固定のまま、横幅だけ広がっていく。 */
    width: 100%;
    left: auto;
    right: auto;
    margin: auto;
  }
}

.c-entry {
  color: #444;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 1024px) {
  .c-entry {
    margin-left: auto;
    margin-right: auto;
    font-size: 1.5rem;
    width: 90%;
  }
}

.c-entry h1 {
  margin-top: 30px;
  margin-bottom: 10px;
  color: #000;
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .c-entry h1 {
    margin-top: 40px;
    font-size: 2.0rem;
  }
}

.c-entry h2 {
  margin-top: 40px;
  margin-bottom: 0.8em;
  color: #000;
  font-size: 1.6rem;
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .c-entry h2 {
    font-size: 1.8rem;
  }
}

.c-entry h3 {
  margin-bottom: 0.8em;
  color: #000;
  font-size: 1.5rem;
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .c-entry h3 {
    font-size: 1.6rem;
  }
}

.c-entry h4 {
  margin-bottom: 0.8em;
  color: #000;
  font-size: 1.4rem;
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .c-entry h4 {
    font-size: 1.5rem;
  }
}

.c-entry p {
  margin-bottom: 40px;
  line-height: 2;
}

.c-entry p.c-entry__subTitle {
  margin-bottom: 20px;
  color: #0a41a6;
  text-align: center;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.6;
}

.c-entry em {
  font-style: normal;
  font-weight: bold;
}

.c-entry strong {
  color: #f03333;
}

.c-entry sup {
  font-size: 0.8em;
  line-height: 1;
  vertical-align: baseline;
  position: relative;
  bottom: 0.2em;
}

.c-entry sub {
  font-size: 0.8em;
  line-height: 1;
  vertical-align: baseline;
  position: relative;
}

.c-entry a {
  color: #4471d6;
  line-height: 1.5;
  text-decoration: underline;
}

.c-entry a:hover {
  color: #ef7101;
}

.c-entry a:visited {
  color: #8833CC;
}

.c-entry a[target="_blank"]:after {
  content: "";
}

.c-entry a[target="_blank"]:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  display: inline-block;
  margin-left: 3px;
}

.c-entry ul {
  margin-bottom: 40px;
}

.c-entry ul > li {
  margin: 0 0 0.5em 1.85em;
  line-height: 1.6;
  text-indent: 0;
  position: relative;
}

.c-entry ul > li:after {
  display: block;
  content: '';
  position: absolute;
  top: .5em;
  left: -1.2em;
  width: 6px;
  height: 6px;
  background-color: #000;
  border-radius: 100%;
}

.c-entry ol {
  display: table;
  margin-bottom: 40px;
  counter-reset: li;
}

.c-entry ol > li {
  display: table-row;
  line-height: 1.6;
}

.c-entry ol > li:before {
  display: table-cell;
  padding-right: 0.5em;
  padding-bottom: 0.5em;
  text-align: right;
  content: "(" counter(li) ")";
  counter-increment: li;
}

.c-entry table {
  width: 100%;
  border: 1px solid #ddd;
}

.c-entry caption {
  margin-bottom: 5px;
  text-align: left;
  line-height: 2;
}

.c-entry td {
  padding: 12px;
  font-size: 1.4rem;
  line-height: 1.6;
  border: 1px solid #ddd;
}

.c-entry .bgcolor1 {
  background-color: #f5f5f5;
}

.c-entry .bgcolor2 {
  background-color: #dfe9fc;
}

.c-entry h1 + p,
.c-entry p.c-entry__subTitle + p {
  margin-top: 20px;
  padding-top: 30px;
  border-top: #e5e5e5 1px solid;
}

.c-entry h1 + p.c-entry__subTitle {
  margin-top: 10px;
  padding-top: 0;
  border-top: none;
}

.c-entryHeader__time {
  margin-bottom: 0;
  text-align: right;
  font-size: 1.4rem;
  line-height: 1;
}

.c-entryImage {
  text-align: center;
}

.c-entryImage img {
  display: inline;
  max-width: 100%;
  width: auto;
}

.c-entryImage > p {
  margin-top: 7px;
  margin-bottom: 0;
  font-size: 1.2rem;
  line-height: 1.6;
}

td > .c-entryImage:last-child {
  margin-bottom: 0;
}

.c-entryImage__full {
  margin-bottom: 40px;
  width: 100%;
}

.c-entryImage__eyecatch {
  margin-top: 30px;
  padding-top: 30px;
  margin-bottom: 40px;
  width: 100%;
  border-top: #e5e5e5 1px solid;
}

.c-entryFloat:after {
  content: '';
  display: block;
  clear: both;
}

.c-entryImage__left {
  margin-bottom: 30px;
}

@media print, screen and (min-width: 1024px) {
  .c-entryImage__left {
    margin-right: 30px;
    float: left;
  }
}

.c-entryImage__right {
  margin-bottom: 30px;
}

@media print, screen and (min-width: 1024px) {
  .c-entryImage__right {
    margin-left: 30px;
    float: right;
  }
}

.c-entryText__small {
  margin-bottom: 40px;
}

.c-entryText__small p {
  margin-bottom: 0.83em;
  font-size: 1.2rem;
  line-height: 1.6;
}

.c-entryBox {
  clear: both;
  margin-bottom: 30px;
  padding: 15px;
  border: 1px solid #ddd;
}

@media print, screen and (min-width: 1024px) {
  .c-entryBox {
    margin-bottom: 40px;
    padding: 24px 30px 23px 30px;
  }
}

.c-entryBox h2 {
  margin-top: 0;
  margin-bottom: 12px;
  font-size: 1.6rem;
  line-height: 1.6;
}

.c-entryBox p:last-child,
.c-entryBox ul:last-child,
.c-entryBox ol:last-child {
  margin-bottom: 0;
}

.c-entryTable {
  margin-bottom: 40px;
}

.c-entryTable__scroll {
  margin-right: 1px;
  overflow: auto;
  white-space: nowrap;
}

.c-entryTable__scroll::-webkit-scrollbar {
  height: 5px;
}

.c-entryTable__scroll::-webkit-scrollbar-track {
  background: #F1F1F1;
}

.c-entryTable__scroll::-webkit-scrollbar-thumb {
  background: #BCBCBC;
}

@media print, screen and (min-width: 1024px) {
  .c-entryTable__scroll {
    margin-right: 0;
    white-space: normal;
  }
}

.c-entryList {
  padding-top: 30px;
  padding-bottom: 40px;
}

@media print, screen and (min-width: 1024px) {
  .c-entryList {
    padding-top: 60px;
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 60px;
  }
}

ul.c-entryList__nostyle > li {
  margin-left: 0;
}

ul.c-entryList__nostyle > li:after {
  display: none;
}

.c-entryImage a[target="_blank"]:after,
.c-plugin__box .c-plugin__image > a[target="_blank"]:after {
  content: "";
}

.c-note {
  margin-bottom: 30px;
  padding: 10px;
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAJklEQVQIW2NkQAKrVq36HxYWxsgIE4MJgPhgQWQBsCC6AFwlurkACKkTAzRi0g4AAAAASUVORK5CYII=) 0 0 repeat;
}

.c-note__inner {
  padding: 10px;
  background-color: #fff;
}

.c-note__title {
  margin-bottom: 8px;
  font-size: 1.4rem;
  line-height: 1.6;
  font-weight: bold;
}

.c-note__txt {
  font-size: 1.2rem;
  line-height: 1.7;
}

.p-overall {
  width: 100%;
  overflow: hidden;
}

@media print, screen and (min-width: 1024px) {
  .p-overall {
    margin: 0 0 -31px;
  }
}

.p-overall__inner {
  width: 100%;
  max-width: 1170px;
  padding: 0 4.5%;
  margin: 0 auto;
}

@media print, screen and (min-width: 1024px) {
  .p-overall__inner {
    padding-right: 30px;
    padding-left: 30px;
  }
}

.p-overallMv {
  width: 100%;
  margin: 48px auto 30px;
}

@media (min-width: 768px) {
  .p-overallMv {
    margin: 100px 0 30px;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-overallMv {
    margin: 0 auto 45px;
    position: relative;
  }
}

.p-overallSlider {
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .p-overallSlider {
    width: 100%;
    height: 550px;
    overflow: hidden;
  }
}

.p-overallSlider__slide {
  width: 100%;
}

@media print, screen and (min-width: 1024px) {
  .p-overallSlider__slide {
    position: relative;
    height: 550px;
    margin: 0 auto;
  }
}

@media (min-width: 1200px) {
  .p-overallSlider__slide {
    max-width: none;
  }
}

.p-overallSlider__over {
  padding: 3% 1%;
  background-color: #0a41a6;
}

@media print, screen and (min-width: 1024px) {
  .p-overallSlider__over {
    padding: 0;
    background-color: transparent;
    position: relative;
    height: 550px;
    margin: 0 30px;
  }
}

@media (min-width: 1200px) {
  .p-overallSlider__over {
    width: 1110px;
    margin: 0 auto;
  }
}

.p-overallSlider__img--sp {
  width: 100%;
}

@media print, screen and (min-width: 1024px) {
  .p-overallSlider__img--sp {
    display: none !important;
  }
}

.p-overallSlider__img--pc {
  display: none !important;
}

@media print, screen and (min-width: 1024px) {
  .p-overallSlider__img--pc {
    display: block !important;
    width: 2000px;
    position: absolute;
    top: 0;
    left: 50%;
    margin: 0 0 0 -1000px;
  }
}

@media (min-width: 2000px) {
  .p-overallSlider__img--pc {
    display: block !important;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-overallSlider__text {
    background-color: transparent;
  }
}

.p-overallSlider__text-main, .p-overallSlider__text-sub {
  display: inline-block;
  background-color: #0a41a6;
  color: #fff;
  padding: 0 10px;
  line-height: 2.1;
}

@media print, screen and (min-width: 1024px) {
  .p-overallSlider__text-main, .p-overallSlider__text-sub {
    padding: 0 20px;
  }
}

.p-overallSlider__text-sub {
  font-size: 1.4rem;
  font-size: 4.375vw;
  display: block;
  line-height: 1;
  margin: 0 0 2%;
}

@media print, screen and (min-width: 1024px) {
  .p-overallSlider__text-sub {
    position: absolute;
    top: 81px;
    top: 60px;
    left: 0;
    font-size: 2.2rem;
    line-height: 2.18;
    letter-spacing: 1px;
    margin: 0;
  }
}

.p-overallSlider__text-main {
  font-size: 2.1rem;
  font-size: 6.5625vw;
  display: block;
  line-height: 1;
}

@media print, screen and (min-width: 1024px) {
  .p-overallSlider__text-main {
    position: absolute;
    top: 132px;
    top: 112px;
    left: 0;
    font-size: 3.6rem;
    line-height: 1.78;
    letter-spacing: 1px;
  }
}

.p-overallSlider__text-main-right {
  position: absolute;
  bottom: 0;
  left: 0;
  display: inline-block;
  width: 100%;
  padding: 0.6em 15px;
  font-size: 1.8rem;
  font-size: 5.3125vw;
  line-height: 1.4;
  background-color: rgba(9, 62, 143, 0.9);
  color: #fff;
}

.p-overallSlider__text-main-right > span {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .p-overallSlider__text-main-right {
    left: auto;
    right: -55%;
    bottom: 40px;
    padding: 30px;
    font-size: 3.2rem;
    line-height: 1.25;
  }
  .p-overallSlider__text-main-right > span {
    display: block;
    margin-top: 10px;
    font-weight: 300;
    font-size: 1.6rem;
    line-height: 1.5;
  }
}

@media (min-width: 1200px) {
  .p-overallSlider__text-main-right {
    right: -65%;
  }
}

@media (min-width: 1650px) {
  .p-overallSlider__text-main-right {
    right: -75%;
  }
}

.p-overallSlider__lead {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .p-overallSlider__lead {
    display: block;
    position: absolute;
    top: 210px;
    top: 190px;
    left: 0;
    font-size: 1.8rem;
    line-height: 1.4;
    color: #000000;
    font-weight: 300;
    letter-spacing: 0.5px;
  }
  .p-overallSlider__lead--white {
    color: #fff;
  }
  .p-overallSlider__lead--black {
    color: #050505;
  }
}

.p-overallSlider__btn {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: -10px 5px;
  padding: 0;
  line-height: 1;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 15px 15px;
}

.p-overallSlider__btn--start {
  background-image: url("/images/common/slider/icon_start.png");
}

.p-overallSlider__btn--stop {
  background-image: url("/images/common/slider/icon_stop.png");
}

.p-overallSlider__control {
  padding: 12px 0 0;
  text-align: center;
}

@media print, screen and (min-width: 1024px) {
  .p-overallSlider__control {
    display: none;
    position: absolute;
    bottom: 10px;
    left: 0;
    width: 100%;
  }
}

.p-overallSlider .slick-slide {
  width: 100%;
}

.p-overallSlider .slick-dots {
  width: auto;
  position: static;
  display: inline-block;
}

.p-overallSlider .slick-dots li.slick-active button {
  background-color: #fff;
  border: 3px solid #fec05d;
  width: 8px;
  height: 8px;
}

.p-overallSlider .slick-dots li button {
  display: inline-block;
  box-sizing: content-box;
  width: 10px;
  height: 10px;
  background-color: #d1d1d1;
  border-radius: 100%;
  padding: 0;
}

.p-overallSlider .slick-dots li button:before, .p-overallSlider .slick-dots li button:after {
  display: none;
}

.p-overallSlider .slick-prev,
.p-overallSlider .slick-next {
  display: none;
}

@media (min-width: 1260px) {
  .p-overallSlider .slick-prev,
  .p-overallSlider .slick-next {
    position: absolute;
    z-index: 100;
    display: block;
    height: 54px;
    width: 40px;
    line-height: 0px;
    background: transparent;
    color: transparent;
    top: 50%;
    margin: 0;
    border: none;
    outline: none;
  }
}

.p-overallSlider .slick-prev:before,
.p-overallSlider .slick-next:before {
  display: none;
}

.p-overallSlider .slick-next {
  display: none;
}

@media (min-width: 1260px) {
  .p-overallSlider .slick-next {
    background-image: url("/images/common/slider/btn_right.png");
    right: 2%;
  }
}

.p-overallSlider .slick-prev {
  display: none;
}

@media (min-width: 1260px) {
  .p-overallSlider .slick-prev {
    background-image: url("/images/common/slider/btn_left.png");
    left: 2%;
  }
}

.p-overallSliderThumb {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .p-overallSliderThumb {
    display: block;
    position: absolute;
    bottom: 35px;
    right: 0;
    left: 0;
    margin: auto;
    max-width: 1170px;
    padding: 0 30px;
  }
  .p-overallSliderThumb ul {
    font-size: 0;
  }
  .p-overallSliderThumb li {
    width: 70px;
    display: inline-block;
    margin: 0 10px 0 0;
  }
  .p-overallSliderThumb a {
    display: block;
    border: 3px solid #fff;
  }
  .p-overallSliderThumb a.is-current, .p-overallSliderThumb a:hover {
    border-color: #f5c725;
  }
}

.p-overallSliderBtn {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .p-overallSliderBtn {
    display: block;
    position: absolute;
    bottom: 88px;
    left: 0;
    right: 0;
    margin: auto;
    max-width: 1170px;
    padding: 0 30px;
    font-size: 0;
  }
}

.p-overallSliderBtn a {
  display: inline-block;
  width: 12px;
  height: 14px;
  margin: 0 15px 0 0;
}

.p-overallSliderBtn__start {
  background-image: url("/images/top/slider_start.png");
}

.p-overallSliderBtn__start.is-active, .p-overallSliderBtn__start:hover {
  background-image: url("/images/top/slider_start_on.png");
}

.p-overallSliderBtn__stop {
  background-image: url("/images/top/slider_stop.png");
}

.p-overallSliderBtn__stop.is-active, .p-overallSliderBtn__stop:hover {
  background-image: url("/images/top/slider_stop_on.png");
}

.p-overallMessage {
  margin: 0 auto 10px;
  text-align: center;
}

@media print, screen and (min-width: 1024px) {
  .p-overallMessage {
    margin: 40px 0 -20px;
  }
}

.p-overallProduct {
  padding: 20px 0 25px;
}

@media print, screen and (min-width: 1024px) {
  .p-overallProduct {
    padding: 0 0 30px;
  }
}

.p-overallProduct__ttl {
  margin: 0 auto 30px;
  font-size: 2.4rem;
  color: #0a41a6;
  letter-spacing: 0.1em;
  font-weight: normal;
}

@media print, screen and (min-width: 1024px) {
  .p-overallProduct__ttl {
    font-size: 4rem;
    margin: 80px auto 60px;
  }
}

.p-overallProduct a {
  display: block;
}

.p-overallProduct .c-thmub__link:hover {
  background-color: #e8eefa;
  text-decoration: none;
}

.p-overallProduct .c-thmub__link:hover .c-thumb__title,
.p-overallProduct .c-thmub__link:hover .c-thumb__titleTop {
  background-color: transparent;
}

.p-overallProduct .c-thmub__link:hover .c-thumb__image:before {
  opacity: 0.4;
}

.p-overallMenu {
  background-color: #eff5fe;
  margin: 0 -5%;
  padding: 15px 4.5%;
}

@media print, screen and (min-width: 1024px) {
  .p-overallMenu {
    background-color: transparent;
    padding: 0 5%;
  }
}

.p-overallMenu__list {
  display: table;
  border-collapse: collapse;
  width: 100%;
}

@media print, screen and (min-width: 1024px) {
  .p-overallMenu__list {
    margin: 0 0 12px;
  }
}

.p-overallMenu__list li {
  width: 33.3%;
  display: table-cell;
  text-align: center;
  border: 1px solid #eff5fe;
  color: #1745b1;
}

@media print, screen and (min-width: 1024px) {
  .p-overallMenu__list li {
    border: none;
    border-left: 1px solid #dde9ff;
  }
  .p-overallMenu__list li:first-child {
    border-left: none;
  }
}

.p-overallMenu__list li a {
  display: block;
  background-color: #fff;
  color: inherit;
  font-size: 1.1rem;
  padding: 15px;
  line-height: 1.4;
}

@media print, screen and (min-width: 1024px) {
  .p-overallMenu__list li a {
    font-size: 1.4rem;
    padding: 30px 0 25px;
  }
  .p-overallMenu__list li a:hover {
    background-color: #e8eefa;
    transition: 0.3s;
    text-decoration: none;
  }
}

.p-overallMenu__list li i {
  font-size: 3.5rem;
}

@media print, screen and (min-width: 1024px) {
  .p-overallMenu__list li i {
    font-size: 4rem;
  }
}

.p-overallMenu__list li span {
  font-size: 1.2rem;
  font-weight: bold;
}

@media print, screen and (min-width: 1024px) {
  .p-overallMenu__list li span {
    font-size: 1.8rem;
  }
}

@media (max-width: 400px) {
  .p-overallMenu__list li br:nth-of-type(4) {
    display: none;
  }
}

.p-overallMenu__btn a {
  display: block;
  background-color: #d5e3fd;
  color: #1745b1;
  text-align: center;
  line-height: 45px;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 1024px) {
  .p-overallMenu__btn a {
    line-height: 50px;
    font-size: 1.5rem;
    background-color: #eff5fe;
  }
  .p-overallMenu__btn a:hover {
    color: #fff;
    background-color: #4471d6;
    transition: 0.3s;
    text-decoration: none;
  }
}

.p-overallMenu__btn a i {
  margin: 0 5px 0 0;
}

@media print, screen and (min-width: 1024px) {
  .p-overallMenu__btn a i {
    margin: 0 10px -4px 0;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-overallPickup {
    padding: 100px 0 140px;
    background-image: url("/images/top/pickup_bg.jpg");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
  }
}

.p-overallPickup--offsetTop {
  /* `.p-overallPickup`と`.l-sitemap`の間に余白を作りたくない場合に指定します。 */
}

@media print, screen and (min-width: 1024px) {
  .p-overallPickup--offsetTop {
    margin-bottom: -31px;
  }
}

.p-overallPickup__ttl {
  margin: 0 auto 30px;
  font-size: 2.4rem;
  color: #0a41a6;
  letter-spacing: 0.1em;
  font-weight: normal;
}

@media print, screen and (min-width: 1024px) {
  .p-overallPickup__ttl {
    color: #fff;
    font-size: 4rem;
    margin: 0 auto 60px;
  }
}

.p-overallHighlight {
  padding: 10px 0;
  background-color: #e8eefa;
}

@media print, screen and (min-width: 1024px) {
  .p-overallHighlight {
    padding: 30px 0;
  }
}

.p-overallHighlight .p-overallLink__item > a {
  background-color: #fff;
  border: 1px solid #d5d5d5;
}

.p-overallHighlight .p-overallLink__item > a:hover {
  background-color: #fff;
}

.p-overallBnr {
  margin: 0 auto;
}

.p-overallBnr img {
  width: 100%;
}

@media print, screen and (min-width: 1024px) {
  .p-overallBnr {
    margin: 0 auto 30px;
  }
}

.p-overallBnr__item {
  margin: 0 auto 20px;
}

@media print, screen and (min-width: 1024px) {
  .p-overallBnr__item {
    margin: 0 auto;
  }
}

.p-overallBnr__link {
  display: block;
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .p-overallBnr__link {
    transition: 0.3s;
  }
  .p-overallBnr__link:hover {
    opacity: 0.8;
  }
}

.p-overallBnr__txt {
  width: 100%;
  padding: 15px 30px 14px 10px;
  position: absolute;
  bottom: 0;
  left: 0;
  line-height: 45px;
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.4;
  min-height: 52px;
}

.p-overallBnr__txt i {
  font-size: 1.6rem;
  position: absolute;
  top: 18px;
  right: 10px;
}

.p-overallLink__list {
  margin-bottom: 15px;
}

@media print, screen and (min-width: 1024px) {
  .p-overallLink__list {
    margin-bottom: 0;
  }
}

.p-overallLink__item > a {
  display: block;
  position: relative;
  border: 1px solid #e6ecf6;
  margin: 0 auto 15px;
  padding: 15px 30px 15px 10px;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 1024px) {
  .p-overallLink__item > a {
    font-size: 1.5rem;
    transition: 0.3s;
    margin: 0 auto;
    background-color: #fff;
  }
  .p-overallLink__item > a:hover {
    border: 1px solid #d5d5d5;
    color: #4471d6;
    background-color: #e8eefa;
    text-decoration: none;
  }
}

.p-overallLink__item > a i {
  position: absolute;
  top: 15px;
  right: 10px;
}

.p-overallLink__txt {
  line-height: 1.6;
}

@media print, screen and (min-width: 1024px) {
  .p-overallLink__txt {
    margin-top: 5px;
  }
}

.p-divsion {
  width: 100%;
  overflow: hidden;
  position: relative;
  z-index: 9;
}

.p-divsion__inner {
  padding-right: 4.5%;
  padding-left: 4.5%;
}

@media print, screen and (min-width: 1024px) {
  .p-divsion__inner {
    max-width: 1170px;
    margin: 0 auto;
    padding-right: 30px;
    padding-left: 30px;
  }
}

.p-divsion__section {
  padding-top: 15px;
  padding-bottom: 15px;
}

@media print, screen and (min-width: 1024px) {
  .p-divsion__section {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

.p-divsionMV {
  margin: 93px 0 15px;
}

@media (min-width: 768px) {
  .p-divsionMV {
    margin: 170px 0 20px;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-divsionMV {
    margin: 0 0 30px;
  }
}

.p-divsionMV__img {
  width: 100%;
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionMV__img {
    padding: 53% 0 0;
  }
}

@media (min-width: 1200px) {
  .p-divsionMV__img {
    width: 1024px;
    height: 630px;
    padding: 0;
    margin: 0 auto;
  }
}

@media (min-width: 1650px) {
  .p-divsionMV__img {
    width: 100%;
  }
}

.p-divsionMV__sp {
  display: block !important;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionMV__sp {
    display: none !important;
  }
}

.p-divsionMV__pc {
  display: none !important;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionMV__pc {
    display: block !important;
    width: 140%;
    height: auto;
    position: absolute;
    top: 0;
    left: -20%;
  }
}

@media (min-width: 1200px) {
  .p-divsionMV__pc {
    width: 161.15%;
    left: -30.575%;
  }
}

@media (min-width: 1650px) {
  .p-divsionMV__pc {
    width: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    max-width: none;
  }
}

.p-divsionMV--paxway {
  margin-bottom: 0;
}

.p-divsionHeading {
  color: #0e4098;
  font-size: 1.2rem;
  padding: 0 0 25px;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionHeading {
    font-size: 1.6rem;
    padding: 0 0 40px;
  }
  .p-divsionHeading h2 {
    font-weight: normal;
  }
}

.p-divsionHeading span {
  font-size: 2.2rem;
  color: #0a41a6;
  line-height: 1.4;
  letter-spacing: 0.1em;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionHeading span {
    font-size: 3rem;
    line-height: 1.5;
  }
}

.p-divsionProducts {
  padding: 15px 0 0;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionProducts {
    padding: 30px 0 30px;
  }
}

.p-divsionProducts .c-thumb__link:hover .c-thumb__title {
  text-decoration: underline;
  background-color: #e8eefa;
}

.p-divsionService {
  background-color: #e6ecf6;
  margin: 30px auto 15px;
  padding: 30px 0 0;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionService {
    margin: 0 auto 30px;
    padding: 60px 0 0;
  }
}

.p-divsionService__list {
  padding: 0 14px 30px;
  text-align: center;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionService__list {
    padding: 0 0 60px;
  }
}

.p-divsionService__item {
  margin-top: 15px;
}

.p-divsionService__item:first-child {
  margin-top: 0;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionService__item {
    margin-top: 0;
  }
}

.p-divsionService__link {
  display: block;
  background-color: #fff;
  padding: 30px 0;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionService__link {
    padding: 30px 0px;
    border: 10px solid #fff;
    transition: 0.3s;
  }
  .p-divsionService__link:hover {
    border: 10px solid #cdd9f6;
    text-decoration: none;
  }
}

.p-divsionService__image {
  width: 141px;
  margin: 0 auto 20px;
}

.p-divsionService__ttl {
  color: #0a41a6;
  font-size: 1.6rem;
  display: block;
  font-weight: bold;
  margin: 0 0 15px;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionService__ttl {
    font-size: 1.8rem;
    margin: 0 0 30px;
  }
}

.p-divsionService__txt {
  font-size: 1.3rem;
  display: block;
  line-height: 1.6;
  height: 4em;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionService__txt {
    font-size: 1.5rem;
  }
}

.p-divsionInfo {
  margin: 0 auto 15px;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionInfo {
    margin: 0 auto 20px;
  }
}

.p-divsionInfo__inner {
  background-color: #fff;
  padding: 20px 15px;
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionInfo__inner:after {
    content: '';
    display: block;
    clear: both;
  }
}

.p-divsionInfo__title {
  display: block;
  margin: 0 auto;
  font-size: 1.3rem;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionInfo__title {
    font-size: 1.6rem;
    width: 25%;
    float: left;
  }
}

.p-divsionInfo__more {
  font-size: 1.3rem;
  position: absolute;
  top: 20px;
  right: 15px;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionInfo__more {
    top: auto;
    bottom: 20px;
  }
}

.p-divsionInfo__more .icon {
  color: #4471d6;
  top: -0.05em;
  font-size: 1.9rem;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionInfo__list {
    width: 74%;
    float: right;
    padding: 0 70px 0 0;
  }
}

.p-divsionInfo__item {
  font-size: 1.3rem;
  line-height: 1.4;
  margin: 15px 0 0;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionInfo__item:first-child {
    margin: 0;
  }
}

.p-divsionAttention {
  padding: 20px 15px 20px 15px;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionAttention {
    padding: 20px 26px;
  }
}

.p-divsionAttention__title {
  display: block;
  margin: 0 auto;
  font-size: 1.3rem;
  position: relative;
  padding: 0 30px 0 0;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionAttention__title {
    font-size: 1.6rem;
  }
}

.p-divsionAttention__title .icon-angle-down {
  display: block;
  position: absolute;
  font-size: 2rem;
  top: 0;
  right: 0;
  margin: -5px 0 0;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionAttention__title .icon-angle-down {
    font-size: 3rem;
    margin: 0;
  }
}

.p-divsionAttention__title .icon-angle-up {
  display: none;
  position: absolute;
  font-size: 2rem;
  top: 0;
  right: 0;
  margin: -5px 0 0;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionAttention__title .icon-angle-up {
    font-size: 3rem;
    margin: 0;
  }
}

.p-divsionAttention__title.is-active .icon-angle-down {
  display: none;
}

.p-divsionAttention__title.is-active .icon-angle-up {
  display: block;
}

.p-divsionAttention__contents {
  height: 0;
  transition: 0.5s;
  overflow: hidden;
  font-size: 1.4rem;
  color: #444444;
}

.p-divsionAttention__contents.is-active {
  padding: 15px 0 0;
  height: auto;
}

.p-divsionAttention__contents .c-link {
  display: block;
  line-height: 1.5;
  margin: 0 auto 10px;
}

.p-divsionAttention__contents .c-list__disc > li:after {
  background-color: #444444;
}

.p-divsionAttention__contents__txt {
  line-height: 1.5;
}

.p-divsionAttention__contents__txt .is-tell {
  text-decoration: underline;
  color: #000;
  font-weight: bold;
}

@media (min-width: 768px) {
  .p-divsionAttention__contents__txt .is-tell {
    text-decoration: none;
  }
}

.p-divsionNews__title {
  position: relative;
  font-size: 1.8rem;
  margin: 0 auto 35px;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionNews__title {
    font-size: 2.2rem;
  }
}

.p-divsionNews__title .c-link__list, .p-divsionNews__title .p-divsionInfo__more {
  display: block;
  font-size: 1.3rem;
  font-weight: normal;
  position: absolute;
  top: 2px;
  right: 0;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionNews__title .c-link__list, .p-divsionNews__title .p-divsionInfo__more {
    position: static;
    margin: 20px 0 0;
  }
}

.p-divsionBnr {
  margin: 0 auto 40px;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionBnr {
    margin: 0 auto;
  }
}

.p-divsionBnr__title {
  border-bottom: 1px solid #c9c9c9;
  position: relative;
  line-height: 1.5;
  font-size: 1.4rem;
  font-weight: bold;
  margin: 0 auto 12px;
  padding: 0 0 8px;
}

.p-divsionBnr__title:after {
  display: block;
  content: "";
  width: 65px;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 0;
  background-color: #0a41a6;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionBnr__title {
    font-size: 1.8rem;
    margin: 0 auto 25px;
    padding: 0 0 10px;
  }
}

.p-divsionBnr__item {
  margin: 0 auto 15px;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionBnr__item {
    margin: 0 auto;
  }

/*2018.6.7削除　（流）トップ バナー画像4つ目が下にずれるのを解消するため */
/*  .p-divsionBnr__item:nth-of-type(n+4) {
    margin-top: 15px;
  }*/
}

.p-divsionBnr__link {
  display: block;
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionBnr__link {
    transition: 0.3s;
  }
  .p-divsionBnr__link:hover {
    opacity: 0.8;
  }
}

.p-divsionBnr__txt {
  width: 100%;
  padding: 15px 30px 14px 10px;
  position: absolute;
  bottom: 0;
  left: 0;
  line-height: 45px;
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.4;
  min-height: 52px;
}

.p-divsionBnr__txt i {
  font-size: 1.6rem;
  position: absolute;
  top: 18px;
  right: 10px;
}

.p-divsionLink__block {
  margin: 0 auto 30px;
}

.p-divsionLink__title {
  border-bottom: 1px solid #c9c9c9;
  position: relative;
  line-height: 1.5;
  font-size: 1.4rem;
  font-weight: bold;
  margin: 0 auto 12px;
  padding: 0 0 8px;
}

.p-divsionLink__title:after {
  display: block;
  content: "";
  width: 65px;
  height: 1px;
  position: absolute;
  bottom: -1px;
  left: 0;
  background-color: #0a41a6;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionLink__title {
    font-size: 1.8rem;
    margin: 0 auto 25px;
    padding: 0 0 10px;
  }
}

.p-divsionLink__item a {
  display: block;
  position: relative;
  border: 1px solid #e6ecf6;
  margin: 0 auto 8px;
  padding: 15px 30px 13px 10px;
  font-size: 1.4rem;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionLink__item a {
    font-size: 1.5rem;
    transition: 0.3s;
    margin: 0 auto 15px;
  }
  .p-divsionLink__item a:hover {
    border: 1px solid #d5d5d5;
    color: #4471d6;
    background-color: #e8eefa;
    text-decoration: none;
  }
}

.p-divsionLink__item a i {
  position: absolute;
  top: 15px;
  right: 10px;
}

.p-divsionPaxway {
  background-color: #f1f4fa;
  padding: 30px 0;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionPaxway {
    padding: 60px 0;
  }
}

.p-divsionPaxway__lead {
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.6;
  margin: 0 auto 30px;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionPaxway__lead {
    font-size: 1.6rem;
    margin: 0 auto 60px;
    line-height: 2;
  }
}

.p-divsionPaxway__item {
  margin: 0 auto 15px;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionPaxway__item {
    margin: 0;
  }
}

.p-divsionPaxway__item a {
  display: block;
  background-color: #fff;
  color: #0a41a6;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionPaxway__item a img {
    transition: 0.3s;
  }
  .p-divsionPaxway__item a:hover img {
    opacity: 0.8;
  }
}

.p-divsionPaxway__item p {
  padding: 20px 0;
  line-height: 1.3;
  font-size: 1.2rem;
  text-align: center;
  font-weight: bold;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionPaxway__item p {
    font-size: 1.8rem;
  }
}

.p-divsionPaxwayContact,
.p-divsionEnvironmentContact {
  padding: 30px 0;
  text-align: center;
  color: #4471d6;
}

.p-divsionPaxwayContact a,
.p-divsionEnvironmentContact a {
  font-size: 1.6rem;
  line-height: 1.4;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionPaxwayContact a,
  .p-divsionEnvironmentContact a {
    font-size: 2rem;
    letter-spacing: 1px;
  }
}

.p-divsionPaxwayContact span,
.p-divsionEnvironmentContact span {
  padding: 0 5px;
}

.p-divsionPaxwayContact i,
.p-divsionEnvironmentContact i {
  font-size: 2.2rem;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionPaxwayContact,
  .p-divsionEnvironmentContact {
    padding: 60px 0;
  }
}

.p-divsionSlider#js-slider {
  margin: 0 auto;
}

.p-divsionSlider__btn {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin: -10px 5px;
  padding: 0;
  line-height: 1;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 15px 15px;
}

.p-divsionSlider__btn--start {
  background-image: url("/images/common/slider/icon_start.png");
}

.p-divsionSlider__btn--stop {
  background-image: url("/images/common/slider/icon_stop.png");
}

.p-divsionSlider__control {
  padding: 12px 0 0;
  text-align: center;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionSlider__control {
    position: absolute;
    bottom: 10px;
    left: 0;
    width: 100%;
    z-index: 1000;
  }
}

.p-divsionSlider .slick-slide {
  width: 100%;
}

.p-divsionSlider .slick-dots {
  width: auto;
  position: static;
  display: inline-block;
}

.p-divsionSlider .slick-dots li.slick-active button {
  background-color: #fff;
  border: 3px solid #fec05d;
  width: 8px;
  height: 8px;
}

.p-divsionSlider .slick-dots li button {
  display: inline-block;
  box-sizing: content-box;
  width: 10px;
  height: 10px;
  background-color: #d1d1d1;
  border-radius: 100%;
  padding: 0;
}

.p-divsionSlider .slick-dots li button:before, .p-divsionSlider .slick-dots li button:after {
  display: none;
}

.p-divsionSlider .slick-dots li button:hover {
  background-color: #fec05d;
}

.p-divsionSlider .slick-prev,
.p-divsionSlider .slick-next {
  display: none;
}

@media (min-width: 1260px) {
  .p-divsionSlider .slick-prev,
  .p-divsionSlider .slick-next {
    position: absolute;
    z-index: 100;
    display: block;
    height: 54px;
    width: 40px;
    line-height: 0px;
    background: transparent;
    color: transparent;
    top: 65%;
    margin: 0;
    border: none;
    outline: none;
  }
}

.p-divsionSlider .slick-prev:before,
.p-divsionSlider .slick-next:before {
  display: none;
}

.p-divsionSlider .slick-next {
  display: none;
}

@media (min-width: 1260px) {
  .p-divsionSlider .slick-next {
    background-image: url("/images/common/slider/btn_right.png");
    right: 2%;
  }
}

.p-divsionSlider .slick-prev {
  display: none;
}

@media (min-width: 1260px) {
  .p-divsionSlider .slick-prev {
    background-image: url("/images/common/slider/btn_left.png");
    left: 2%;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-divsionSlider .slick-list {
    z-index: 99;
  }
}

.p-divsionEnvironment-en {
  padding-top: 30px;
}

@media print, screen and (min-width: 1024px) {
  .p-divsionEnvironment-en {
    padding-top: 60px;
  }
}

.p-divsionBgColor {
  background-color: #f1f4fa;
}

/* 共通のスタイル
   -------------------------------------------------------------------------- */
.p-companyOrganization__image01,
.p-companyOrganization__image02 {
  position: relative;
  font-size: 1.5rem;
}

/* フルードイメージにします。 */
.p-companyOrganization__image01 > img,
.p-companyOrganization__image02 > img {
  max-width: 100%;
  width: auto;
}

/* テキストリンクを親要素を基準とした相対的な位置を指定します。 */
.p-companyOrganization__image01 > a,
.p-companyOrganization__image02 > a {
  position: absolute;
  line-height: 1;
}

/* 1枚目の画像
   -------------------------------------------------------------------------- */
.p-companyOrganization__image01 {
  margin-bottom: 56px;
}

/* テキストリンクに一括でスタイルを指定します。 */
/* 2枚目の画像
   -------------------------------------------------------------------------- */
.p-companyOrganization__image02 {
  margin-bottom: 30px;
}

/* テキストリンクに一括でスタイルを指定します。 */
.p-companyOrganization__image02 > a {
  right: 2.75862%;
}

@media (min-width: 768px) {
  .p-companyOrganization__image02 > a {
    right: auto;
    left: 9.56175%;
  }
}

/**
 * ここからは個別に位置を指定しています。
 * `.p-companyOrganization__image02 > a`の指定を`!important`で上書きしてもかまいません。
 */
.p-companyOrganization__image02Link1 {
  top: 7.25462%;
}

.p-companyOrganization__image02Link2 {
  /* top: 27.45377%; */
  top: 30.4%;
}

.p-companyOrganization__image02Link3 {
  top: 47.6%;
}

.p-companyOrganization__image02Link4 {
  /* top: 67.14083%; */
  top: 67.4%;
}

.p-companyOrganization__image02Link5 {
  /* top: 86.98435%; */
  top: 84.0%;
}

/* 768px以上のときの位置を指定します。 */
@media (min-width: 768px) {
  .p-companyOrganization__image02Link1 {
    /* top: 10.10101%; */
    top: 10.0%;
  }
  .p-companyOrganization__image02Link2 {
    /* top: 29.38476%; */
    top: 31.0%;
  }
  .p-companyOrganization__image02Link3 {
    /* top: 45.17906%; */
    top: 46.0%;
  }
  .p-companyOrganization__image02Link4 {
    /* top: 69.23783%; */
    top: 69%;
  }
  .p-companyOrganization__image02Link5 {
    /* top: 88.88889%; */
    top: 85.5%;
  }
}

@media print{
  .p-companyOrganization__image02Link1,
  .p-companyOrganization__image02Link2,
  .p-companyOrganization__image02Link3,
  .p-companyOrganization__image02Link4,
  .p-companyOrganization__image02Link5 {
    display: none;
  }
}

.p-ir__box01 {
  padding: 22px 0;
  text-align: center;
  background-color: #e8eefa;
}

@media print, screen and (min-width: 1024px) {
  .p-ir__box01 {
    padding: 26px 0;
  }
}

.p-ir__heading01 {
  margin-bottom: 20px;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.2;
  color: #0a41a6;
}

@media print, screen and (min-width: 1024px) {
  .p-ir__heading01 {
    margin-bottom: 18px;
  }
}

.p-ir__content01:after {
  content: '';
  display: block;
  clear: both;
}

.p-ir__content01-cell-image {
  padding-right: 25px;
  width: 34%;
  float: left;
}

.p-ir__content01-cell-image img[src$=".svg"] {
  width: 100%;
}

@media print, screen and (min-width: 1024px) {
  .p-ir__content01-cell-image {
    padding-left: 10px;
    padding-right: 10px;
    width: 28%;
  }
}

.p-ir__content01-cell-text {
  width: 66%;
  float: left;
}

@media print, screen and (min-width: 1024px) {
  .p-ir__content01-cell-text {
    width: 72%;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-ir__list {
    padding-left: 10px;
  }
}

.p-ir__list > li {
  margin-bottom: 0.8em;
}

/* .l-main imgを上書きするため、詳細度を上げた。 */
img.p-ir__icon01 {
  display: inline;
  width: 80px;
}

@media print, screen and (min-width: 1024px) {
  img.p-ir__icon01 {
    width: 90px;
  }
}

.p-irInvestors01__image01 > img {
  max-width: 414px;
  margin: auto;
}

.p-irInvestors01__enphasis {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.8;
  color: #0a41a6;
}

.p-irInvestors01__enphasis > span {
  font-size: 2.4rem;
}

.p-irInvestors01__table {
  margin-bottom: 10px;
}

.p-irInvestors01__table th,
.p-irInvestors01__table td {
  padding: 12px 10px;
}

@media print, screen and (min-width: 1024px) {
  .p-irInvestors01__table th,
  .p-irInvestors01__table td {
    padding: 12px 10px;
  }
}

.p-irInvestors03__image01 {
  margin-bottom: 18px;
}

@media print, screen and (min-width: 1024px) {
  .p-irInvestors03__image01 {
    margin-bottom: 24px;
  }
}

.p-irInvestors03__image01 > img {
  display: block;
  max-width: 440px;
  margin: auto;
  padding: 0 14px;
}

.p-irInvestors03__heading01 {
  margin-bottom: 18px;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.6;
  color: #0a41a6;
}

@media print, screen and (min-width: 1024px) {
  .p-irInvestors03__heading01 {
    margin-bottom: 22px;
    font-size: 2.2rem;
    line-height: 1.5;
  }
}

.p-irInvestors03__heading01Large {
  font-size: 2.5rem;
  line-height: 1.2;
}

@media print, screen and (min-width: 1024px) {
  .p-irInvestors03__heading01Large {
    font-size: 2.9rem;
  }
}

.p-irInvestors03__text01 {
  margin-bottom: 30px;
  padding: 0 5%;
  font-size: 1.4rem;
  line-height: 1.8;
  color: #0a41a6;
}

@media print, screen and (min-width: 1024px) {
  .p-irInvestors03__text01 {
    margin-bottom: 44px;
  }
}

.p-irInvestors03__image02 {
  margin-bottom: 30px;
}

@media print, screen and (min-width: 1024px) {
  .p-irInvestors03__image02 {
    margin-bottom: 24px;
  }
}

.p-irInvestors03__image02 > img {
  max-width: 253px;
  margin: auto;
  padding: 0 40px;
}

@media print, screen and (min-width: 1024px) {
  .p-irInvestors03__image02 > img {
    padding: 0;
  }
}

.p-irInvestors03__text02 {
  padding: 0 5% 30px;
  font-size: 1.4rem;
  line-height: 1.8;
}

.p-mngPlan__box {
  margin-bottom: 0;
  text-align: center;
}

.p-mngPlan__boxIcon {
  top: 0;
  font-size: 20em;
}

@media (min-width: 768px) {
  .p-mngPlan__icon01 {
    position: relative;
    top: -0.1em;
  }
  .p-mngPlan__icon02 {
    position: relative;
    top: -0.15em;
  }
  .p-mngPlan__icon03 {
    position: relative;
    top: -0.1em;
  }
  .p-mngPlan__icon04 {
    position: relative;
    top: -0.05em;
  }
}

.p-gMap {
  margin: 0 0 30px;
}

.p-gMap #googleMap {
  width: 100%;
  height: 300px;
}

@media (min-width: 768px) {
  .p-gMap #googleMap {
    height: 600px;
  }
}

.p-gMap__text {
  font-size: 1.4rem;
  margin: 3em 0 10px;
}

.p-gMap__text img {
  display: inline-block;
  vertical-align: middle;
  width: 0.8em;
  margin: 0 5px 0 0;
}

.p-gMap__text span {
  margin: 0 10px 5px 0;
  display: block;
}

@media (min-width: 768px) {
  .p-gMap__text span {
    display: inline-block;
  }
}

.p-gMap .p-gMap__img1 {
  display: inline-block;
  margin: 0 5px 0 0;
  width: 1.2em;
  vertical-align: top;
}

.p-gMap .p-gMap__img2 {
  display: inline-block;
  vertical-align: middle;
  margin: 0 5px 0 0;
  width: 3.2em;
}

.p-gMap__wrap {
  padding: 4px 0;
}

.p-gMap__type1 {
  color: #43a888;
  font-size: 1.3rem;
  line-height: 2rem;
}

.p-gMap__type2 {
  color: #ce5edb;
  font-size: 1.3rem;
  line-height: 2rem;
}

.p-gMap__name {
  color: #333333;
  font-weight: bold;
  line-height: 2rem;
}

.p-gMap__address {
  color: #888888;
  font-size: 1.2rem;
  line-height: 2rem;
  margin: 0 0 10px;
}

.p-gMap__btn {
  color: #444444;
  font-size: 1.2rem;
  background-color: #eeeeee;
  display: inline-block;
  border: 1px solid #c8c7c7;
  border-radius: 2px;
}

.p-gMap__btn a {
  display: block;
  padding: 0 10px 0 24px;
  line-height: 2.8rem;
}

.l-ono_p {
  background-color: #000;
  margin-top: -70px;
  margin-bottom: -30px;
}

@media print, screen and (max-width: 1023px) {
  .l-ono_p {
    margin-top: -30px;
  }
}

.l-ono_p p, .l-ono_p ul, .l-ono_p h1, .l-ono_p h2 {
  color: #fff;
}

.l-ono_p .c-heading__inner {
  background-color: #000;
}

.l-ono_p .c-heading__deco1 {
  background: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.l-ono_p .c-heading__deco2:after {
  background-color: #c9c9c9;
}

@media print, screen and (min-width: 1024px) {
  .l-mainVisual__pumpSelector {
    margin-top: -70px;
  }
}

@media print, screen and (max-width: 1023px) {
  .l-mainVisual__pumpSelector {
    margin-top: -30px;
  }
}

.p-recruitIndex-basicinfo {
  margin-bottom: 20px;
}

.p-recruitIndex-basicinfo__item {
  margin-bottom: 10px;
  color: #0A41A6;
  text-align: center;
}

.p-recruitIndex-basicinfo__link {
  padding: 10px 10px 20px;
  display: block;
  background-color: #F7F7F7;
  border: 1px solid #e5e5e5;
  text-decoration: none;
}

@media print, screen and (min-width: 1024px) {
  .p-recruitIndex-basicinfo__link {
    padding: 10px 20px 25px;
  }
}

.p-recruitIndex-basicinfo__link:hover {
  background-color: #e8eefa;
  border-color: #E8EEFA;
  text-decoration: none;
}

.p-recruitIndex-basicinfo__image {
  margin-top: 5px;
  margin-bottom: 3px;
}

.p-recruitIndex-basicinfo__image .icon {
  font-size: 4.6rem;
  top: 0;
}

@media print, screen and (min-width: 1024px) {
  .p-recruitIndex-basicinfo__image .icon {
    font-size: 7rem;
  }
}

.p-recruitIndex-basicinfo__text {
  font-size: 1.5rem;
  font-weight: bold;
}

.p-recruitTechnology-eyecatch {
  margin-bottom: 50px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}

.p-recruitTechnology-eyecatch__image img {
  display: inline;
  vertical-align: top;
}

.p-recruitTechnology-eyecatch__image:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0;
  transition: all 0.2s linear 0s;
}

.p-recruitTechnology-eyecatch__image > img:nth-child(1) {
  width: 53.8%;
}

@media print, screen and (min-width: 1024px) {
  .p-recruitTechnology-eyecatch__image > img:nth-child(1) {
    width: 60%;
  }
}

.p-recruitTechnology-eyecatch__image > img:nth-child(2) {
  width: 46.2%;
}

@media print, screen and (min-width: 1024px) {
  .p-recruitTechnology-eyecatch__image > img:nth-child(2) {
    width: 40%;
  }
}

.p-recruitTechnology-eyecatch__copy {
  padding-top: 15px;
  color: #444;
  background-color: #FFF;
  position: relative;
}

@media print, screen and (min-width: 1024px) {
  .p-recruitTechnology-eyecatch__copy {
    padding-top: 20px;
    padding-left: 20px;
    width: 580px;
    margin-top: -85px;
    margin-left: auto;
    margin-right: 0;
  }
}

.p-recruitTechnology-eyecatch__title {
  color: #02509a;
  font-size: 2.3rem;
}

@media print, screen and (min-width: 1024px) {
  .p-recruitTechnology-eyecatch__title {
    font-size: 3rem;
  }
}

.p-recruitTechnology-eyecatch__title--aircraft {
  color: #02509a;
}

.p-recruitTechnology-eyecatch__title--truck {
  color: #61236d;
}

.p-recruitTechnology-eyecatch__title--parking {
  color: #00733a;
}

.p-recruitTechnology-eyecatch__title--industrial {
  color: #c89c00;
}

.p-recruitTechnology-eyecatch__body {
  font-size: 1.4rem;
  line-height: 1.8;
}

@media (min-width: 768px) {
  .p-recruitTechnology-eyecatch__body {
    font-size: 1.5rem;
  }
}

.p-recruitTechnology-eyecatch__link {
  display: block;
  text-decoration: none;
}

.p-recruitTechnology-eyecatch__link .p-recruitTechnology-eyecatch__title:after {
  content: "";
}

.p-recruitTechnology-eyecatch__link .p-recruitTechnology-eyecatch__title:after {
  font-family: "iconfont";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
  text-decoration: none;
  text-transform: none;
  display: inline-block;
  margin-left: 3px;
  position: absolute;
  right: 0;
  margin-top: 2px;
}

.p-recruitTechnology-eyecatch__link:hover {
  text-decoration: none;
}

.p-recruitTechnology-eyecatch__link:hover .p-recruitTechnology-eyecatch__image:before {
  opacity: 0.4;
}

.p-networkMain {
  margin-bottom: 20px;
  position: relative;
}

@media (min-width: 768px) {
  .p-networkMain {
    margin-bottom: 25px;
  }
}

.p-networkNavi {
  margin-bottom: 10px;
  text-align: right;
  background-color: #FFF;
  font-size: 0;
}

@media (min-width: 768px) {
  .p-networkNavi {
    padding: 10px 15px;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 10;
    box-shadow: 0px 2px 2px 0px rgba(0, 0, 0, 0.1);
  }
}

.p-networkNavi__title {
  padding-right: 20px;
  display: inline-block;
  font-size: 1.5rem;
}

.p-networkNavi__list {
  display: inline-block;
  font-size: 0;
}

.p-networkNavi__list > li {
  padding: 2px 15px;
  display: inline-block;
  font-size: 1.5rem;
}

.p-networkNavi__list > li:not(:first-child) {
  border-left: 1px solid #d5d5d5;
}

.p-networkNavi__list > li:last-child {
  padding-right: 0;
}

.p-networkMap {
  position: relative;
}

.p-networkMap > img {
  width: 100%;
  max-width: none;
}

.p-networkMap > svg {
  width: 100%;
  height: auto;
  display: none;
}

@media (min-width: 768px) {
  .p-networkMap > svg {
    display: block;
    position: absolute;
    top: 0;
    width: 100%;
    height: auto;
  }
  .p-networkMap > svg a {
    text-decoration: none;
  }
  .p-networkMap > svg text {
    font-size: 1.5rem;
  }
  .p-networkMap > svg #head_office text {
    font-weight: bold;
  }
}

.p-result {
  /* 検索結果全体のラッパー */
  /* 該当件数のラッパー */
  /* 該当件数 */
  /* 該当件数と表示順のラッパー */
  /* セレクトボックス */
  /* 検索結果ごとのラッパー */
  /* タイトル */
  /* リンクすべて */
  /* タイトル内のURL */
  /* 抜粋 */
  /* 画像 */
  /* ページネーション */
}

.p-result .cse .gsc-control-cse, .p-result .gsc-control-cse {
  padding: 0;
}

@media (min-width: 768px) {
  .p-result .cse .gsc-control-cse, .p-result .gsc-control-cse {
    padding: 0 5%;
  }
}

.p-result .gsc-results {
  padding-bottom: 0;
  width: 100%;
}

.p-result .gsc-result-info {
  padding: 8px 8px 8px 0;
}

.p-result .gsc-above-wrapper-area {
  border-bottom: 0;
  padding: 0 0 5px 0;
}

.p-result .gsc-selected-option-container {
  max-width: 100%;
}

.p-result .gsc-webResult.gsc-result {
  border: 0;
  padding: 1.5em 8px;
}

.p-result .gsc-webResult.gsc-result {
  border-bottom: 1px solid #e5e5e5;
}

.p-result .gsc-webResult.gsc-result:hover {
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}

.p-result .gsc-control-cse .gs-result .gs-title * {
  font-size: 1em;
}

.p-result .gsc-result .gs-title {
  height: auto;
  font-size: 1.7rem !important;
  line-height: 1.4;
}

@media (min-width: 768px) {
  .p-result .gsc-result .gs-title {
    font-size: 2rem !important;
  }
}

.p-result .gs-result .gs-title {
  text-decoration: none;
}

.p-result .gs-webResult.gs-result a.gs-title {
  color: #4471d6 !important;
  text-decoration: none !important;
}

.p-result .gs-webResult.gs-result a.gs-title:hover {
  color: #ef7101 !important;
  text-decoration: underline !important;
}

.p-result .gs-webResult.gs-result a.gs-title:visited {
  color: #8833CC !important;
}

.p-result .gs-webResult.gs-result a.gs-title b {
  color: inherit !important;
  text-decoration: none;
}

.p-result .gs-webResult.gs-result a.gs-title:hover b {
  color: inherit !important;
}

.p-result .gs-webResult.gs-result a.gs-title:visited b {
  color: #8833CC !important;
}

.p-result .gs-webResult.gs-result a.gs-title:visited:hover b {
  color: #8833CC !important;
}

.p-result .gsc-url-top {
  margin-bottom: 5px;
}

.p-result .gs-webResult div.gs-visibleUrl {
  color: #999;
}

.p-result .gsc-table-result, .p-result .gsc-thumbnail-inside, .p-result .gsc-url-top {
  padding-right: 0;
  padding-left: 0;
  font-size: 1.3rem;
  line-height: 1.6;
}

@media (min-width: 768px) {
  .p-result .gsc-table-result, .p-result .gsc-thumbnail-inside, .p-result .gsc-url-top {
    font-size: 1.4rem;
  }
}

.p-result .gs-webResult .gs-snippet,
.p-result .gs-imageResult .gs-snippet,
.p-result .gs-fileFormatType {
  color: #444;
  font-size: 1.4rem;
}

@media (min-width: 768px) {
  .p-result .gs-webResult .gs-snippet,
  .p-result .gs-imageResult .gs-snippet,
  .p-result .gs-fileFormatType {
    font-size: 1.5rem;
  }
}

.p-result .gs-web-image-box-portrait img.gs-image,
.p-result .gs-web-image-box-landscape img.gs-image {
  max-width: 100% !important;
  max-height: 100% !important;
  width: 100% !important;
  height: auto !important;
}

.p-result .gs-image-box.gs-web-image-box.gs-web-image-box-portrait,
.p-result .gs-image-box.gs-web-image-box.gs-web-image-box-landscape {
  width: 80px;
  height: auto;
  margin-right: 10px;
}

.p-result .gsc-cursor-box {
  margin: 20px auto !important;
  text-align: center;
  display: table;
  border-radius: 4px;
}

@media (max-width: 767px) {
  .p-result .gsc-cursor-box {
    display: block;
    overflow-x: auto;
    max-width: 100%;
    min-height: 0.01%;
  }
}

.p-result .gsc-results .gsc-cursor {
  display: table;
  border: 1px solid #c9c9c9;
  border-radius: 5px;
}

.p-result .gsc-results .gsc-cursor > .gsc-cursor-page:not(:first-of-type) {
  border-left: 1px solid #c9c9c9;
}

.p-result .gsc-results .gsc-cursor > .gsc-cursor-page:first-of-type {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}

.p-result .gsc-results .gsc-cursor > .gsc-cursor-page:last-of-type {
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}

.p-result .gsc-results .gsc-cursor > .gsc-cursor-page.gsc-cursor-current-page {
  background-color: #898989;
  color: #fff;
  cursor: default;
  pointer-events: none;
}

.p-result .gsc-cursor-page {
  display: table-cell !important;
  padding: 12px 10px;
  vertical-align: middle;
  font-size: 1.4rem;
  text-align: center;
  min-width: 45px;
  height: 45px;
  text-decoration: none;
}

.p-result .gsc-cursor-page:hover {
  background-color: #e8eefa !important;
  text-decoration: none !important;
}

.p-result .gsc-results .gsc-cursor-box .gsc-cursor-page {
  color: #4471d6;
}

.p-us2 {
  margin-top: 93px;
}

@media (min-width: 768px) {
  .p-us2 {
    margin-top: 202px;
  }
}

@media print, screen and (min-width: 1024px) {
  .p-us2 {
    margin-top: 0;
  }
}

.products-breadcrumb {
  margin: 0;
}

.products-mainVisual {
  width: 100%;
  overflow: hidden;
  position: relative;
  z-index: 9;
  max-width: 1170px;
  margin: 93px 0 -115px;
}

@media (min-width: 768px) {
  .products-mainVisual {
    margin: 206px 0 -200px !important;
    padding: 0 4.5%;
  }
}

@media print, screen and (min-width: 1024px) {
  .products-mainVisual {
    margin: 0 auto 70px !important;
    padding: 0 30px;
  }
}

.products-mainVisual_heading {
  margin-bottom: 40px;
}

@media print, screen and (min-width: 1024px) {
  .products-mainVisual_heading {
    margin-bottom: 0;
  }
}

/**
 * /pump/english/products/で使用。
 */
.pump-rateTable__body th {
  font-size: 1.5rem;
  font-weight: 600;
}

@media (min-width: 768px) {
  .pump-rateTable__body th {
    font-size: 1.7rem;
  }
}

.pump-rateTable__body td {
  font-size: 1.3rem;
}

@media (min-width: 768px) {
  .pump-rateTable__body td {
    font-size: 1.5rem;
  }
}

.pump-rateTable__rate {
  font-size: 1.5rem;
}

@media (min-width: 768px) {
  .pump-rateTable__rate {
    font-size: 1.7rem;
  }
}

.pump-rateTable__highlight th {
  font-size: 1.6rem;
  background-color: #4895dc;
  color: #fff;
}

@media (min-width: 768px) {
  .pump-rateTable__highlight th {
    font-size: 1.8rem;
  }
}

.pump-rateTable__highlight td {
  background-color: #d3e8f1;
}

.pump-rateTable__highlight .pump-rateTable__rate {
  color: #4896db;
}

/* /pump/english/products/sm-vrtn.htmlで使用しています。 */
.pump-smallTable th,
.pump-smallTable td {
  padding: 5px;
}

/* /pump/english/products/sm-ftr.html、sm-vrtn.htmlで使用しています。 */
.pump-highlight {
  padding: 20px 5%;
  background-color: #e8eefa;
}

@media print, screen and (min-width: 1024px) {
  .pump-highlight {
    padding: 20px;
  }
}

.pump-highlight__heading {
  margin-bottom: 4px;
  color: #0a41a6;
  font-size: 1.7rem;
  line-height: 1.3;
  font-weight: bold;
}

.pump-highlight__label {
  display: inline-block;
  margin-bottom: 12px;
  padding: 8px 10px;
  font-size: 1.5rem;
  color: #fff;
  background-color: #0a41a6;
}

/* /pump/english/products/screen.htmlで使用しています。 */
.pump-specList {
  margin-bottom: 24px;
}

.pump-specList__slit {
  margin-bottom: 5px;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.4;
}

.pump-specList__slitValues {
  display: table;
  table-layout: fixed;
  width: 100%;
  margin-bottom: 12px;
  text-align: center;
  border: 1px solid #cecece;
  font-size: 1.35rem;
  line-height: 1;
}

@media print, screen and (min-width: 1024px) {
  .pump-specList__slitValues {
    width: 80%;
  }
}

.pump-specList__slitValue {
  display: table-cell;
  vertical-align: top;
  padding: 1em 0;
}

.pump-specList__slitValue + .pump-specList__slitValue {
  border-left: 1px solid #cecece;
}

.pump-specList__output {
  margin-bottom: 10px;
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1.4;
}

.pump-specList__outputValue {
  font-size: 1.5rem;
  line-height: 1.8;
}

/* /pump/english/products/sm-vrtn.htmlで使用しています。 */
.pump-color-sml15 {
  background-color: #e1fafc;
}

.pump-color-sml15cw37 {
  background-color: #bce6f8;
}

.pump-color-sml22 {
  background-color: #eee;
}

.pump-color-sml22cw {
  background-color: #c8c8c8;
}

.pump-color-sml37cw {
  background-color: #97d1f2;
}

.pump-color-cnw {
  color: #fff;
  background-color: #e97373;
}

.pump-color-cnwAvg__title {
  background-color: #ffd8d8;
}

.pump-color-cnwAvg__data {
  background-color: #fef2f4;
}

.pump-stack {
  margin-bottom: 30px;
  font-size: 1.3rem;
  line-height: 1;
  text-align: center;
  border: 1px solid #ddd;
}

.pump-stack__item {
  width: 100%;
  margin-bottom: 0;
  padding: 16px 0;
}

.pump-stack__item + .pump-stack__item {
  border-top: 1px solid #ddd;
}

/* /pump/english/products/sm-rcrd.htmlで使用しています。 */
.pump-deliveryTable {
  width: 100%;
  table-layout: fixed;
  border: 1px solid #ddd;
}

.pump-deliveryTable caption {
  width: 100%;
  padding: 14px;
  font-size: 1.4rem;
  line-height: 1;
  color: #fff;
  background-color: #4895dc;
}

.pump-deliveryTable--post caption {
  background-color: #9640cd;
}

.pump-deliveryTable th,
.pump-deliveryTable td {
  padding: 12px;
  font-size: 1.3rem;
  line-height: 1.5;
  border: 1px solid #ddd;
}

.pump-deliveryTable th {
  background-color: #eee;
}

/* /pump/english/products/sm-rcrd.htmlで使用しています。 */
.pump-imageArrow {
  width: 34px;
  margin: 8px auto 10px;
}

@media (min-width: 768px) {
  .pump-imageArrow {
    width: 34px !important;
  }
}

/* /pump/english/products/sm-rcrd.htmlで使用しています。 */
.pump-flow {
  position: relative;
  margin-bottom: 38px;
  padding: 20px 5%;
}

.pump-flow:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  right: 0;
  bottom: -30px;
  left: 0;
  margin: auto;
  border-style: solid;
  border-width: 30px 30px 0 30px;
  border-color: #007bff transparent transparent transparent;
}

.pump-flow--first {
  background-color: #e8eefa;
}

.pump-flow--first:after {
  border-color: #e8eefa transparent transparent transparent;
}

.pump-flow--first .pump-flow__heading {
  color: #0a41a6;
}

.pump-flow--second {
  background-color: #ece0f9;
}

.pump-flow--second:after {
  border-color: #ece0f9 transparent transparent transparent;
}

.pump-flow--second .pump-flow__heading {
  color: #0a41a6;
}

.pump-flow__heading {
  margin-bottom: 12px;
  font-size: 1.7rem;
  font-weight: bold;
  line-height: 1.5;
}

.pump-flow__text {
  font-size: 1.5rem;
  line-height: 1.8;
  color: #444;
}

.pump-flow__text:last-of-type {
  margin-bottom: 10px;
}

.pump-flow__images + .pump-flow__images {
  margin-top: 14px;
}

@media (min-width: 768px) {
  .pump-flow__images + .pump-flow__images {
    margin-top: 0;
  }
}

/* /pump/english/products/sm-rcrd.htmlで使用しています。 */
.pump-effect {
  margin-bottom: 40px;
  padding: 20px;
  border: 1px solid #0a41a6;
}

.pump-effect__heading {
  margin-bottom: 12px;
  color: #0a41a6;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1;
}

.pump-effect__text {
  font-size: 1.5rem;
  line-height: 1.8;
}

.u-align__center {
  text-align: center;
}

.u-align__left {
  text-align: left;
}

.u-align__right {
  text-align: right;
}

.u-align__spleftPccenter {
  text-align: left;
}

@media print, screen and (min-width: 1024px) {
  .u-align__spleftPccenter {
    text-align: center;
  }
}

.u-vertical__top {
  vertical-align: top;
}

.u-vertical__middle {
  vertical-align: middle;
}

@media print, screen and (min-width: 1024px) {
  .u-margin__side {
    margin-left: 20px;
    margin-right: 20px;
  }
}

/**
   * marginをリセットするパターン。
   * ブレイクポイントを追加する場合は`.u-margin__0Tablet`などとする。
   */
.u-margin {
  /**
   * あるブレイクポイント以上で余白を無くすパターン。
   * このマージンを`medium`相当として、
   * パターンは、`.u-margin__small`と`.u-margin__large`を作る。
   */
  margin-bottom: 20px;
  /**
   * 縦並びから横並びになるパターン。
   * このマージンを`medium`相当として、
   * パターンは、`.u-margin__btnSmall`と`.u-margin__btnLarge`を作る。
   */
  /**
   * ずっとボタンが縦に並ぶパターン。
   * このマージンを`medium`相当として、
   * パターンは、`.u-margin__btnBlockSmall`と`.u-margin__btnBlockLarge`を作る。
   */
  /**
   * `margin-top`がPCにだけ指定されるパターン。
   * このマージンを`medium`相当として、
   * パターンは、`.u-margin__topSmall`と`.u-margin__topLarge`を作る。
   */
}

.u-margin__0 {
  margin: 0 !important;
}

.u-margin__top0 {
  margin-top: 0 !important;
}

.u-margin__bottom0 {
  margin-bottom: 0 !important;
}

@media print, screen and (min-width: 1024px) {
  .u-margin {
    margin-bottom: 0;
  }
}

.u-margin__block {
  margin-bottom: 20px;
}

@media print, screen and (min-width: 1024px) {
  .u-margin__block {
    margin-bottom: 30px;
  }
}

.u-margin__btn {
  margin-bottom: 20px;
}

@media print, screen and (min-width: 1024px) {
  .u-margin__btn {
    margin-bottom: 0;
  }
}

.u-margin__btnSmall {
  margin-bottom: 15px;
}

@media print, screen and (min-width: 1024px) {
  .u-margin__btnSmall {
    margin-bottom: 0;
  }
}

.u-margin__btnBlock {
  margin-bottom: 1.5em;
}

@media print, screen and (min-width: 1024px) {
  .u-margin__btnBlock {
    margin-bottom: 22px;
  }
}

.u-margin__btnEmail {
  margin-top: 10px;
  margin-bottom: 10px;
}

.u-margin__btnEmail:last-child {
  margin-bottom: 0;
}

.u-margin__btnEmail:first-child {
  margin-top: 0;
}

.u-margin__top {
  margin-top: 0;
}

@media print, screen and (min-width: 1024px) {
  .u-margin__top {
    margin-top: 10px;
  }
}

.u-margin__topLarge {
  margin-top: 0;
}

@media print, screen and (min-width: 1024px) {
  .u-margin__topLarge {
    margin-top: 10px;
  }
}

.u-italic {
  font-style: italic;
}

.u-normal {
  font-weight: normal;
}

.u-bold {
  font-weight: bold;
}

.u-font--Fjalla {
  font-family: 'Fjalla One', sans-serif;
}

/* できる限り禁則処理をする */
.u-break-word {
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* 禁則処理をしない（単語の途中でも折り返す） */
.u-break-all {
  word-break: break-all;
}

/**
 * 文字の右側に1文字分の余白をあけます。
 * '社名' => `社　名`
 */
.u-text-space-full {
  letter-spacing: 1em;
}

/**
 * 文字の右側に0.5文字分の余白をあけます。
 * `URL` => `U R L`
 */
.u-text-space-half {
  letter-spacing: 0.5em;
}

.u-break {
  display: inline-block;
}

.u-dn {
  display: none !important;
}

@media screen and (min-width: 768px) {
  .u-dn-tablet {
    display: none !important;
  }
}

@media screen and (min-width: 1024px) {
  .u-dn-pc {
    display: none !important;
  }
}

@media screen and (min-width: 1200px) {
  .u-dn-wide {
    display: none !important;
  }
}

.u-di {
  display: inline !important;
}

@media screen and (min-width: 768px) {
  .u-di-tablet {
    display: inline !important;
  }
}

@media screen and (min-width: 1024px) {
  .u-di-pc {
    display: inline !important;
  }
}

@media screen and (min-width: 1200px) {
  .u-di-wide {
    display: inline !important;
  }
}

.u-db {
  display: block !important;
}

@media screen and (min-width: 768px) {
  .u-db-tablet {
    display: block !important;
  }
}

@media screen and (min-width: 1024px) {
  .u-db-pc {
    display: block !important;
  }
}

@media screen and (min-width: 1200px) {
  .u-db-wide {
    display: block !important;
  }
}

.u-hr {
  /**
   * `<hr>`タグのようなボーダーを表示する。
   * 文脈的に`<hr>`を使えない（装飾的な）場合は`<div>`を使用する。
   */
  /**
   * `<hr>`タグのようなボーダーを表示する。
   * 例えば`<p>`や`<ul>`のようなタグに使う。
   * この余白を`medium`相当として、
   * パターンは、`.u-margin__bottomSmall`と`.u-margin__bottomLarge`を作る。
   */
}

.u-hr__vertical {
  display: block;
  margin-top: 14px;
  margin-bottom: 14px;
  width: 100%;
  height: 1px;
  background-color: #e5e5e5;
  border-top: 0;
}

.u-hr__verticalLarge {
  display: block;
  margin-top: 50px;
  margin-bottom: 50px;
  width: 100%;
  height: 1px;
  background-color: #e5e5e5;
  border: none;
  color: #e5e5e5;
}

.u-hr__bottom {
  padding-bottom: 14px;
  border-bottom: 1px solid #e5e5e5;
}

.u-show--sp {
  display: block;
}

@media print, screen and (min-width: 1024px) {
  .u-show--sp {
    display: none;
  }
}

.u-show--pc {
  display: none;
}

@media print, screen and (min-width: 1024px) {
  .u-show--pc {
    display: block;
  }
}

.u-color-inherit {
  color: inherit;
}

.u-color-inherit:hover {
  color: inherit;
}

.u-color-black {
  color: #000;
}

.u-color-black:hover {
  color: #000;
}

@media print {
  body {
    width: 1024px;
  }
  .l-header {
    height: 102px;
  }
  .l-header__logo {
    width: 380px;
  }
  .l-header__logo img {
    width: 150px;
    height: 45px;
  }
  .l-header__logo span {
    vertical-align: baseline;
  }
  .p-overallMv {
    height: 440px !important;
    position: relative;
  }
  .p-overallSlider__img--pc {
    width: 1600px !important;
    height: 440px !important;
  }
  .p-divsionMV {
    height: 504px !important;
    position: relative;
  }
  .p-divsionMV__img img {
    width: 1320px !important;
    height: 504px !important;
    left: -10%;
  }
  .slick-slider {
    position: static;
  }
  .c-thumb__middle .col-xs-6:nth-child(odd),
  .p-divsionProducts .col-xs-6:nth-child(odd) {
    clear: none;
  }
  .c-chartbox {
    max-width: 100%;
    max-height: 500px;
  }
  .c-chartbox__large {
    max-width: 100%;
    max-height: 700px;
  }
  .c-chartbox__medium {
    max-width: 100%;
    max-height: 400px;
  }
  .c-chartbox__small {
    max-width: 100%;
    max-height: 250px;
  }
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12,
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }
  .col-sm-12,
  .col-md-12 {
    width: 100%;
  }
  .col-sm-11,
  .col-md-11 {
    width: 91.66666667%;
  }
  .col-sm-10,
  .col-md-10 {
    width: 83.33333333%;
  }
  .col-sm-9,
  .col-md-9 {
    width: 75%;
  }
  .col-sm-8,
  .col-md-8 {
    width: 66.66666667%;
  }
  .col-sm-7,
  .col-md-7 {
    width: 58.33333333%;
  }
  .col-sm-6,
  .col-md-6 {
    width: 50%;
  }
  .col-sm-5,
  .col-md-5 {
    width: 41.66666667%;
  }
  .col-sm-4,
  .col-md-4 {
    width: 33.33333333%;
  }
  .col-sm-3,
  .col-md-3 {
    width: 25%;
  }
  .col-sm-2,
  .col-md-2 {
    width: 16.66666667%;
  }
  .col-sm-1,
  .col-md-1 {
    width: 8.33333333%;
  }
  .col-sm-pull-12,
  .col-md-pull-12 {
    right: 100%;
  }
  .col-sm-pull-11,
  .col-md-pull-11 {
    right: 91.66666667%;
  }
  .col-sm-pull-10,
  .col-md-pull-10 {
    right: 83.33333333%;
  }
  .col-sm-pull-9,
  .col-md-pull-9 {
    right: 75%;
  }
  .col-sm-pull-8,
  .col-md-pull-8 {
    right: 66.66666667%;
  }
  .col-sm-pull-7,
  .col-md-pull-7 {
    right: 58.33333333%;
  }
  .col-sm-pull-6,
  .col-md-pull-6 {
    right: 50%;
  }
  .col-sm-pull-5,
  .col-md-pull-5 {
    right: 41.66666667%;
  }
  .col-sm-pull-4,
  .col-md-pull-4 {
    right: 33.33333333%;
  }
  .col-sm-pull-3,
  .col-md-pull-3 {
    right: 25%;
  }
  .col-sm-pull-2,
  .col-md-pull-2 {
    right: 16.66666667%;
  }
  .col-sm-pull-1,
  .col-md-pull-1 {
    right: 8.33333333%;
  }
  .col-sm-pull-0,
  .col-md-pull-0 {
    right: auto;
  }
  .col-sm-push-12,
  .col-md-push-12 {
    left: 100%;
  }
  .col-sm-push-11,
  .col-md-push-11 {
    left: 91.66666667%;
  }
  .col-sm-push-10,
  .col-md-push-10 {
    left: 83.33333333%;
  }
  .col-sm-push-9,
  .col-md-push-9 {
    left: 75%;
  }
  .col-sm-push-8,
  .col-md-push-8 {
    left: 66.66666667%;
  }
  .col-sm-push-7,
  .col-md-push-7 {
    left: 58.33333333%;
  }
  .col-sm-push-6,
  .col-md-push-6 {
    left: 50%;
  }
  .col-sm-push-5,
  .col-md-push-5 {
    left: 41.66666667%;
  }
  .col-sm-push-4,
  .col-md-push-4 {
    left: 33.33333333%;
  }
  .col-sm-push-3,
  .col-md-push-3 {
    left: 25%;
  }
  .col-sm-push-2,
  .col-md-push-2 {
    left: 16.66666667%;
  }
  .col-sm-push-1,
  .col-md-push-1 {
    left: 8.33333333%;
  }
  .col-sm-push-0,
  .col-md-push-0 {
    left: auto;
  }
  .col-sm-offset-12,
  .col-md-offset-12 {
    margin-left: 100%;
  }
  .col-sm-offset-11,
  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-sm-offset-10,
  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-sm-offset-9,
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-8,
  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-sm-offset-7,
  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-sm-offset-6,
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-5,
  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-sm-offset-4,
  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-sm-offset-3,
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-2,
  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-sm-offset-1,
  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-sm-offset-0,
  .col-md-offset-0 {
    margin-left: 0%;
  }
  .visible-xs {
    display: none !important;
  }
  .hidden-xs {
    display: block !important;
  }
  table.hidden-xs {
    display: table;
  }
  tr.hidden-xs {
    display: table-row !important;
  }
  th.hidden-xs,
  td.hidden-xs {
    display: table-cell !important;
  }
  .hidden-xs.hidden-print {
    display: none !important;
  }
  .hidden-sm {
    display: none !important;
  }
  .visible-sm {
    display: block !important;
  }
  table.visible-sm {
    display: table;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}

/*# sourceMappingURL=style.css.map */
