@charset "UTF-8";
/*********************************

_main.scss

*********************************/
/*********************************

_base.scss

*********************************/
* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  word-break: inherit;
}

html {
  -webkit-text-size-adjust: 100%;
}

@media screen and (max-width: 768px) {
  html {
    overflow: auto;
  }
}

body {
  margin: 0;
  padding: 0;
  display: block;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-family: Roboto, sans-serif;
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: #333648;
  /*Helvetica Neue, Helvetica, Arial, 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif*/
}

/* ページ遷移時にフェードイン */
/*body {
  position: relative;
}
body::after {
  content: '';
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color:#fff;  * 背景カラー *
  z-index: 9999;  * 一番手前に *
  pointer-events: none;  * 他の要素にアクセス可能にするためにポインターイベントは無効に *
  opacity: 1;  * 初期値 : 透過状態 *
  -webkit-transition: opacity .2s ease;  * アニメーション時間は 0.2秒 *
  transition: opacity .2s ease;
}
body.fadeIn::after {
  opacity: 0;
}*/


a {
  text-decoration: none;
}

p {
  line-height: 1.5;
  word-break: break-word;
}

ul {
  list-style: none;
}

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

.sp {
  display: none !important;
}

.pl-1em {
  padding-left: 1em;
  display: inline-block;
}

/**layout with sidebar**/
.two-column-section {
  display: table;
  width: 100%;
  height: 100%;
}

.two-column-section .main-content {
  padding-top: 15px;
  padding-bottom: 80px;
  display: table-cell;
  vertical-align: top;
  width: 75%;
}

.two-column-section .main-content .main-content-inner-container {
  margin-right: 60px;
  width: calc(100% - 60px);
}

.two-column-section *[id^=side-] { /* 右ナビの背景色をページの下まで伸ばす */
  background-color: #f2f6f9;
  height: 100%;
}

.two-column-section .sidebar {
  display: table-cell;
  vertical-align: top;
  width: 25%;
  min-width: 300px;
  background-color: #f2f6f9;
}

.two-column-section .sidebar .sidebar-header-container {
  padding: 15px;
  background-color: #333648;
}

.two-column-section .sidebar .sidebar-header-container .sidebar-title-container {
  width: 100%;
  height: 100%;
}

.two-column-section .sidebar .sidebar-header-container .sidebar-title-container .sidebar-title {
  display: table-cell;
  vertical-align: bottom;
  font-size: 20px;
  line-height: 1.3;
  letter-spacing: 0.05em;
  color: #fff;
}

.two-column-section .sidebar .sidebar-content-container {
  padding: 15px;
}

.two-column-section .sidebar .sidebar-content-container .sidebar-menu {
  list-style-position: inside;
}

.two-column-section .sidebar .sidebar-content-container .sidebar-menu li {
  list-style: none;
  background-color: #fff;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.two-column-section .sidebar .sidebar-content-container .sidebar-menu li:not(:first-child) {
  margin-top: 14px;
}

.two-column-section .sidebar .sidebar-content-container .sidebar-menu li a {
  padding: 15px 10px 15px 25px;
  display: inline-block;
  vertical-align: middle;
  width: 100%;
  font-size: 16px;
  line-height: 1.3;
  letter-spacing: 0.05em;
  color: #e51b23;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
  position: relative;
}

.two-column-section .sidebar .sidebar-content-container .sidebar-menu li a:hover {
  opacity: 0.5;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.two-column-section .sidebar .sidebar-content-container .sidebar-menu li a:before {
  margin-right: 15px;
  display: inline-block;
  vertical-align: middle;
  width: 8px;
  height: 12px;
  margin: auto 0;
  content: "";
  line-height: 1.3;
  background: url("../images/btn-blue-arrow.png") no-repeat 0 0;
  background-size: 8px auto;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
}

.two-column-section .sidebar .sidebar-content-container .sidebar-menu li .sidebar-submenu {
  margin-top: 8px;
  padding-bottom: 8px;
}

.two-column-section .sidebar .sidebar-content-container .sidebar-menu li .sidebar-submenu a {
  padding: 7px 10px 7px 10px;
  font-size: 15px;
  letter-spacing: 0.05em;
  color: #000;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.two-column-section .sidebar .sidebar-content-container .sidebar-menu li .sidebar-submenu a:hover {
  opacity: 0.5;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.two-column-section .sidebar .sidebar-content-container .sidebar-menu li .sidebar-submenu a:before {
  background: none;
}

/**layout with sidebar**/
@media only screen and (min-width: 1241px) {
  .inner-container {
    margin: 0 auto;
    min-width: 1200px;
    padding-right: 3%;
    padding-left: 3%;
  }
}

@media only screen and (min-width: 769px) and (max-width: 1440px) {
  .inquiries-wrapper .inquiries-content-container .inquiries-column .info,
  .product-lineup-wrapper .info-container .info-txt {
    font-size: 13px !important;
  }
}

@media only screen and (max-width: 1240px) and (min-width: 769px) {
  .inner-container {
    margin-left: 20px;
    margin-right: 20px;
    width: calc(100% - 40px);
  }
  .navigation-container .inner-container {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
  }
  .navigation-container #logo {
    margin-left: 20px;
  }
}

@media only screen and (max-width: 1024px) and (min-width: 769px) {
  .main-header-section .main-header .navigation-container #top-menu-nav ul li a {
    padding: 25px 20px !important;
    font-size: calc(12px + (15 - 12) * ((100vw - 769px) / (1024 - 769))) !important;
  }
  .main-header-section .main-header .navigation-container #top-menu-nav .header__division {
    font-size: calc(12px + (15 - 12) * ((100vw - 769px) / (1024 - 769))) !important;
  }
}

@media only screen and (min-width: 769px) and (max-width: 1240px) {
  .two-column-section .main-content {
    width: 100%;
  }
  .two-column-section .main-content .main-content-inner-container {
    margin-right: 30px;
    width: calc(100% - 30px);
  }
  .two-column-section .sidebar {
    width: 100%;
    display: block;
    min-width: 200px;
  }
  .two-column-section .sidebar .sidebar-header-container .sidebar-title-container {
    display: block;
  }
  .two-column-section .sidebar .sidebar-header-container .sidebar-title-container .sidebar-title {
    font-size: 16px;
  }
  .sidebar .title-icon::before {
    width: 20px !important;
    background-size: contain !important;
  }
  .two-column-section .sidebar .sidebar-content-container .sidebar-menu li a {
    font-size: 13px;
    padding: 10px 10px 10px 25px;
    letter-spacing: 0;
  }
}

@media only screen and (min-width: 769px) and (max-width: 999px) {
  .two-column-section {
    display: block;
  }
}

@media only screen and (max-width: 768px) {
  body {
    min-width: 320px;
    font-size: 13px;
    line-height: 1.6;
  }
  img {
    max-width: 100%;
    height: auto;
  }
  .inner-container {
    margin-left: 20px;
    margin-right: 20px;
    width: calc(100% - 40px);
  }
  .pc {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
  .two-column-section {
    display: block;
    width: 100%;
    height: 100%;
  }
  .two-column-section .main-content {
    padding-top: 0;
    padding-bottom: 0px;
    display: block;
    width: 100%;
  }
  .two-column-section .main-content .main-content-inner-container {
    margin-right: 0;
    width: 100%;
  }
  .two-column-section .sidebar {
    display: block;
    width: 100%;
    min-width: inherit;
    background-color: #f2f6f9;
  }
  .two-column-section .sidebar.pc {
    display: block !important;
  }
  .two-column-section .sidebar .sidebar-header-container {
    display: block;
    text-align: center;
    padding: 5px 10px;
  }
  .two-column-section .sidebar .sidebar-header-container .sidebar-title-container .title-icon {
    display: inline-block;
  }
  .two-column-section .sidebar .sidebar-header-container .sidebar-title-container .title-icon:before {
    width: 20px;
    height: 30px;
    content: "";
    background: url("../images/building-icon-white.png") no-repeat center;
    background-size: contain;
  }
  .two-column-section .sidebar .sidebar-header-container .sidebar-title-container .sidebar-title {
    font-size: 15px;
    display: inline-block;
  }
  .two-column-section .sidebar .sidebar-content-container {
    padding: 10px;
  }
  .two-column-section .sidebar .sidebar-content-container .sidebar-menu li:not(:first-child) {
    margin-top: 10px;
  }
  .two-column-section .sidebar .sidebar-content-container .sidebar-menu li a {
    padding: 10px 25px;
    font-size: 14px;
  }
  .two-column-section .sidebar .sidebar-content-container .sidebar-menu li a::before {
    width: 6px;
    height: 10px;
    background-size: 6px auto;
  }
}

.red {
  color: red;
}

@media screen and (min-width: 769px) {
  .icon_file {
    height: 20px;
    margin-left: 4px;
  }
}

@media screen and (max-width: 768px) {
  .icon_file {
    height: 18px;
    margin-left: 3px;
  }
}

@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
    color: #333648;
  }
}

/*********************************

_common.scss

*********************************/
.toTop.pc {
  position: fixed;
  bottom: -54px;
  right: 20px;
  background: #333648;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
  z-index: 4;
}

.toTop.pc:hover {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.toTop.pc a {
  padding: 20px 15px;
  display: block;
}

.toTop.pc a:hover {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.toTop.pc a .toTop-icon:before {
  display: block;
  -webkit-transition: all .25s ease-out;
  -o-transition: all .25s ease-out;
  transition: all .25s ease-out;
  width: 26px;
  height: 16px;
  content: "";
  background: url("../images/arrow-up.png") no-repeat 0 0;
  background-size: 26px auto;
}

.txt-inline {
  display: inline-block;
  vertical-align: top;
}

.txt-inline:first-child {
  margin-right: 15px;
}

.txt-group:not(:first-child) {
  margin-top: 30px;
}

/**Submenu**/
.subMenuLink {
  position: relative;
}

.subMenuLink:before {
  top: 18px;
  right: 12px;
  width: 20px;
  height: 15px;
  content: "";
  position: absolute;
  background: url("../images/icon_opensubmenu.png") no-repeat 0 0;
  background-size: 20px auto;
}

.arrowUp:before {
  background: url("../images/icon_closesubmenu.png") no-repeat 0 0 !important;
  background-size: 20px auto;
}

span.dash {
  margin: 0 5px;
  width: 40px;
  display: inline-block;
  vertical-align: middle;
  height: 1px;
  background: #000;
}

.toTop.sp {
  position: absolute;
  right: 0;
  background-color: #333648;
  height: 100%;
}

.toTop.sp .toTop-container {
  display: table;
  height: 100%;
  width: 100%;
}

.toTop.sp .toTop-container a {
  padding: 0 15px;
  display: table-cell !important;
  vertical-align: middle;
}

.toTop.sp .toTop-icon:before {
  display: block;
  -webkit-transition: all .25s ease-out;
  -o-transition: all .25s ease-out;
  transition: all .25s ease-out;
  width: 26px;
  height: 16px;
  content: "";
  background: url("../images/arrow-up.png") no-repeat 0 0;
  background-size: 26px auto;
}

.row-container .sub-title {
  margin-top: 20px;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 15px;
  position: relative;
  border-left: 5px #e51b23 solid;
  vertical-align: middle;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #e51b23;
}

.row-container .sub-title.no-left-border {
  padding-left: 0;
  border-left: none;
}

.row-container .sub-item {
  background-color: #999999;
  margin: 20px 0px;
  color: white;
  font-size: 15px;
  line-height: 18px;
  padding: 5px 0px 5px 10px;
}

.row-container .txt-container {
  margin-top: 20px;
}

.row-container .txt-container p {
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: #333648;
}

.row-content-container {
  margin-top: 40px;
  width: 100%;
  height: 100%;
}

.row-content-container .row-content-inner-container {
  display: table;
  width: 100%;
  height: 100%;
}

.row-content-container .row-content-inner-container:not(first-child) {
  margin-top: 40px;
}

.row-content-container .sub-title {
  margin-top: 0;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 15px;
  position: relative;
  vertical-align: middle;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #e51b23;
  display: table-cell;
  vertical-align: top;
  border-left: none;
  width: 25%;
}

.row-content-container .sub-title.border-left:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 38px;
  border-left: solid 5px;
}

.row-content-container .txt-container {
  display: table-cell;
  vertical-align: top;
  width: 75%;
}

.row-content-container .txt-container p {
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: #333648;
}

.row-content-container .date {
  font-size: 18px;
  font-weight: normal;
  line-height: 1.2;
  letter-spacing: 0.08em;
  color: #333648;
}

/**News List**/
.news-list-container .news-list {
  display: block;
  width: 100%;
  height: 100%;
  border-bottom: 2px dashed #ddd;
}

.news-list-container .news-list .news-listItem {
  padding: 20px 0;
  display: block;
}

@media screen and (max-width: 768px) {
  .news-list-container .news-list .news-listItem {
    padding: 10px 0;
  }
}

@media screen and (min-width: 769px) {
  .news-list-container .news-list .news-listItem:hover {
    opacity: 0.6;
  }
}

.news-list-container .news-list .division {
  color: #fff;
  padding: 0 5px;
}

@media screen and (min-width: 769px) {
  .news-list-container .news-list .division {
    margin-left: 0;
    margin-right: 1em;
  }
}

@media screen and (max-width: 768px) {
  .news-list-container .news-list .division {
    margin-top: 3px;
    margin-left: 3px;
    margin-right: 0;
  }
}

.news-list-container .news-list .division.water {
  background-color: #6c9ace;
}

.news-list-container .news-list .division.keiryo {
  background-color: #96c857;
}

.news-list-container .news-list .division.ocean {
  background-color: #1c407a;
}

.news-list-container .news-list .division.setsubi {
  background-color: #e77f48;
}

.news-list-container .news-list .info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .news-list-container .news-list .info {
    margin-bottom: 10px;
  }
}

.news-list-container .news-list .info .cate {
  display: table-cell;
  vertical-align: middle;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.16em;
  position: relative;
  padding-left: 30px;
  margin-right: 1em;
}

.news-list-container .news-list .info .cate:before {
  width: 22px;
  height: 22px;
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.news-list-container .news-list .info .date {
  margin-right: 5px;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.16em;
  color: #000;
  margin-right: 20px;
}

.news-list-container .news-list .info .tag {
  padding: 5px 12px;
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  background-color: #ffff00;
  color: #000;
}

.news-list-container .news-list .info .date,
.news-list-container .news-list .info .tag {
  display: inline-block;
  width: auto;
  vertical-align: middle;
}

.news-list-container .news-list .title {
  margin-top: 5px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.16em;
}

.news-list-container .news-list .title a {
  color: #000;
}

.news-list-container .news-list.category-topics .cate a {
  color: #24a056;
}

.news-list-container .news-list.category-topics .cate:before {
  background: url("../images/news-cat-icon-01.png") no-repeat 0 0;
  background-size: 22px auto;
}

.news-list-container .news-list.category-campaign .cate a {
  color: #003f5f;
}

.news-list-container .news-list.category-campaign .cate:before {
  background: url("../images/news-cat-icon-02.png") no-repeat 0 0;
  background-size: 22px auto;
}

.news-list-container .news-list.category-exhibition .cate a {
  color: #ec9100;
}

.news-list-container .news-list.category-exhibition .cate:before {
  width: 20px;
  background: url("../images/news-cat-icon-03.png") no-repeat 0 0;
  background-size: 20px auto;
}

.news-list-container .news-list.category-course .cate a {
  color: #cc66ff;
}

.news-list-container .news-list.category-course .cate:before {
  width: 20px;
  background: url("../images/news-cat-icon-04.png") no-repeat 0 0;
  background-size: 20px auto;
}

.news-list-container .news-list.category-new_item .cate a {
  color: #99ccff;
}

.news-list-container .news-list.category-new_item .cate:before {
  background: url("../images/news-cat-icon-05.png") no-repeat 0 0;
  background-size: 22px auto;
}

.news-list-container .news-list.category-end_production .cate a {
  color: #ff97c2;
}

.news-list-container .news-list.category-end_production .cate:before {
  background: url("../images/news-cat-icon-06.png") no-repeat 0 0;
  background-size: 22px auto;
}

.news-list-container .news-list.category-seminor .cate a {
  color: #1766a3;
}

.news-list-container .news-list.category-seminor .cate:before {
  width: 20px;
  background: url("../images/news-cat-icon-07.png") no-repeat 0 0;
  background-size: 20px auto;
}

.news-list-container .news-list .text {
  display: none;
}

.news-list-container .news-list .btn {
  display: none;
}

/**News List**/
/**tabs**/
.topics-tab-container {
  margin-top: 40px;
  width: 100%;
}

.tabs {
  list-style: none;
  background-color: transparent;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.tabs li.tab-link {
  position: relative;
  z-index: 1;
  padding: 20px 10px;
  width: calc((100% / 8) - 15px);
  float: left;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  display: block;
  color: #fff;
}

.tabs li.tab-link:not(:last-child) {
  margin-right: 15px;
}

.tabs li.tab-link:hover {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.tabs .tabLink01 {
  background-color: #e51b23;
  border-top: 5px solid #e51b23;
}

.tabs .tabLink02 {
  background-color: #24a056;
  border-top: 5px solid #24a056;
}

.tabs .tabLink03 {
  background-color: #003f5f;
  border-top: 5px solid #003f5f;
}

.tabs .tabLink04 {
  background-color: #ec9100;
  border-top: 5px solid #ec9100;
}

.tabs .tabLink05 {
  background-color: #cc66ff;
  border-top: 5px solid #cc66ff;
}

.tabs .tabLink06 {
  background-color: #99ccff;
  border-top: 5px solid #99ccff;
}

.tabs .tabLink07 {
  background-color: #ff97c2;
  border-top: 5px solid #ff97c2;
}

.tabs .tabLink08 {
  background-color: #1766a3;
  border-top: 5px solid #1766a3;
}

.tabs .current.tabLink01 {
  background-color: #fff;
  color: #e51b23;
}

.tabs .current.tabLink02 {
  background-color: #fff;
  color: #24a056;
}

.tabs .current.tabLink03 {
  background-color: #fff;
  color: #003f5f;
}

.tabs .current.tabLink04 {
  background-color: #fff;
  color: #ec9100;
}

.tabs .current.tabLink05 {
  background-color: #fff;
  color: #cc66ff;
}

.tabs .current.tabLink06 {
  background-color: #fff;
  color: #99ccff;
}

.tabs .current.tabLink07 {
  background-color: #fff;
  color: #ff97c2;
}

.tabs .current.tabLink08 {
  background-color: #fff;
  color: #1766a3;
}

.tab-content-container {
  padding: 20px 40px;
  width: 100%;
  height: 400px;
  overflow-y: scroll;
  background-color: #fff;
}

.tab-content-container .current {
  display: block !important;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.tab-content-container .tab-content {
  display: none;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

/**tabs**/
/**Top - KV Slider**/
.bottom-kv-slider__wrapper {
  /*background-color: #333648;*/
  overflow: hidden;
  /**Arrow**/
}

.bottom-kv-slider__wrapper .wrapper__slider-container {
  background-color: transparent;
}

.bottom-kv-slider__wrapper .slider-container {
  margin: 20px 10px;
}

.bottom-kv-slider__wrapper .slider-container a {
  outline: none;
}

.bottom-kv-slider__wrapper .slider-container img {
  margin: 0 auto;
  display: block;
  width: 100%;
  height: auto;
}

.bottom-kv-slider__wrapper a.slick-next.custom-nxt-slider.slick-arrow {
  width: 15px;
  height: 36px;
  vertical-align: middle;
  background: url("../images/slider-nxt-arrow.png") no-repeat;
  background-size: 15px auto;
  -webkit-transform: translate(-50px, -50%);
  -ms-transform: translate(-50px, -50%);
  transform: translate(-50px, -50%);
  z-index: 3;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.bottom-kv-slider__wrapper a.slick-next.custom-nxt-slider.slick-arrow:before {
  content: "" !important;
}

.bottom-kv-slider__wrapper a.slick-next.custom-nxt-slider.slick-arrow:hover {
  opacity: 0.8;
}

.bottom-kv-slider__wrapper a.slick-prev.custom-prev-slider.slick-arrow {
  width: 15px;
  height: 36px;
  vertical-align: middle;
  background: url(../images/slider-prev-arrow.png) no-repeat;
  background-size: 15px auto;
  -webkit-transform: translate(50px, -50%);
  -ms-transform: translate(50px, -50%);
  transform: translate(50px, -50%);
  z-index: 3;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.bottom-kv-slider__wrapper a.slick-prev.custom-prev-slider.slick-arrow:before {
  content: "" !important;
}

.bottom-kv-slider__wrapper a.slick-prev.custom-prev-slider.slick-arrow:hover {
  opacity: 0.8;
}

/**Top - KV Slider **/
.sub-title {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.08em;
  margin-top: 10px;
}

.title-icon {
  display: table-cell;
  vertical-align: middle;
}

.title-icon:before {
  margin-right: 20px;
  display: block;
  -webkit-transition: all .25s ease-out;
  -o-transition: all .25s ease-out;
  transition: all .25s ease-out;
}

.table-container {
  width: 100%;
  height: 100%;
  display: table;
}

.table-cell-container {
  display: table-cell;
  vertical-align: middle;
}

.right-area {
  float: right;
}

.left-area {
  float: left;
}

.required {
  color: #ff0000;
}

.social-share-container {
  margin: 0 40px;
  width: calc(100% - 80px);
}

.social-share-container span.fb-label {
  margin-top: 3px;
  display: block;
  font-size: 12px;
}

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

.img-center {
  margin: 0 auto;
  display: block;
}

.txt-center {
  text-align: center;
}

.q-link {
  display: none;
}

.column-count {
  -webkit-column-count: 4;
  column-count: 4;
}

.breadcrumbs-container {
  margin-top: 15px;
}

.breadcrumbs-container ul.breadcrumbs-lists {
  list-style: none;
  text-align: left;
}

.breadcrumbs-container ul.breadcrumbs-lists li.breadcrumbs-list {
  margin-right: 8px;
  display: inline-block;
  vertical-align: middle;
}

.breadcrumbs-container ul.breadcrumbs-lists li.breadcrumbs-list p {
  display: inline-block;
  vertical-align: middle;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.05em;
  -webkit-transition: all 1s ease;
  -o-transition: all 1s ease;
  transition: all 1s ease;
  text-decoration: none;
}

.breadcrumbs-container ul.breadcrumbs-lists li.breadcrumbs-list a {
  display: inline-block;
  vertical-align: middle;
  font-size: 12px;
  line-height: 1;
  color: #000;
}

.breadcrumbs-container ul.breadcrumbs-lists li.breadcrumbs-list a:hover {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.breadcrumbs-container ul.breadcrumbs-lists li.breadcrumbs-list.active {
  margin-right: 0 !important;
}

.breadcrumbs-container ul.breadcrumbs-lists li.separator {
  margin-right: 8px;
  display: inline-block;
  vertical-align: middle;
  font-size: 22px;
  line-height: 1;
}

.txt-center {
  text-align: center;
}

.pagination {
  margin-top: 40px;
  display: inline-block;
  text-align: center;
}

.pagination ul {
  list-style: none;
}

.pagination li {
  float: left;
}

.pagination li.active a {
  background-color: #ff5583;
  color: #fff;
  border: 1px solid #ff5583;
}

.pagination a {
  margin: 0 6px;
  padding: 8px 12px;
  text-decoration: none;
  -webkit-transition: background-color .3s;
  -o-transition: background-color .3s;
  transition: background-color .3s;
  border: 1px solid #ffd5e1;
  color: #ff5583;
}

.pagination a:hover:not(.active) {
  background-color: #ff5583;
  color: #fff;
  border: 1px solid #ff5583;
}

.btn-container {
  padding-top: 50px;
  padding-bottom: 50px;
  text-align: center;
}

.btn-container a {
  display: inline-block;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.btn-container a:first-child {
  margin-right: 50px;
}

.btn-container a:hover {
  opacity: 0.8;
}

/**Start Single Slider**/
.kv-slide {
  position: relative;
}

.kv-slide .kv-overlay-txt {
  padding: 5px 15px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #fff;
  opacity: 0.8;
  color: #1f1f1f;
  overflow: hidden;
  width: 100%;
  height: 12%;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.kv-slide .kv-overlay-txt .kv-overlay-txt__container {
  display: table;
  height: 100%;
  width: 100%;
}

.kv-slide .kv-overlay-txt .kv-overlay-txt__container .kv-container-wrapper {
  vertical-align: middle;
  display: table-cell;
}

.kv-slide .kv-overlay-txt .kv-overlay-txt__container .kv-container-wrapper .title {
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: left;
  color: #1f1f1f;
}

.kv-slide .kv-overlay-txt .kv-overlay-txt__container .kv-container-wrapper .excerpt {
  font-size: 13.5px;
  font-weight: normal;
  line-height: 1.2;
  text-align: left;
  color: #1f1f1f;
}

img.slide-kv-img {
  margin: 0 auto;
  display: block;
  width: 100%;
}

/**End Single Slider**/
@media only screen and (max-width: 768px) {
  .bottom-kv-slider__wrapper {
    /*background-color: #333648;*/
    overflow: visible;
    /**Arrow**/
  }
  .bottom-kv-slider__wrapper.inner-container {
    margin-right: 40px;
    margin-left: 40px;
    width: calc(100% - 80px);
  }
  .bottom-kv-slider__wrapper .wrapper__slider-container {
    background-color: transparent;
  }
  .bottom-kv-slider__wrapper .slider-container {
    margin: 20px 0;
  }
  .bottom-kv-slider__wrapper .slider-container a {
    outline: none;
  }
  .bottom-kv-slider__wrapper .slider-container img {
    margin: 0 auto;
    display: block;
    width: 100%;
  }
  .bottom-kv-slider__wrapper a.slick-next.custom-nxt-slider.slick-arrow {
    width: 15px;
    height: 36px;
    vertical-align: middle;
    background: url("../images/slider-nxt-white-arrow.png") no-repeat;
    background-size: 15px auto;
    -webkit-transform: translate(5px, -50%);
    -ms-transform: translate(5px, -50%);
    transform: translate(5px, -50%);
    z-index: 3;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .bottom-kv-slider__wrapper a.slick-next.custom-nxt-slider.slick-arrow:before {
    content: "" !important;
  }
  .bottom-kv-slider__wrapper a.slick-next.custom-nxt-slider.slick-arrow:hover {
    opacity: 0.8;
  }
  .bottom-kv-slider__wrapper a.slick-prev.custom-prev-slider.slick-arrow {
    width: 15px;
    height: 36px;
    vertical-align: middle;
    background: url(../images/slider-prev-white-arrow.png) no-repeat;
    background-size: 15px auto;
    -webkit-transform: translate(-5px, -50%);
    -ms-transform: translate(-5px, -50%);
    transform: translate(-5px, -50%);
    z-index: 3;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .bottom-kv-slider__wrapper a.slick-prev.custom-prev-slider.slick-arrow:before {
    content: "" !important;
  }
  .bottom-kv-slider__wrapper a.slick-prev.custom-prev-slider.slick-arrow:hover {
    opacity: 0.8;
  }
  .tabs {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .tabs li.tab-link {
    padding: 0 5px;
    width: calc((100% / 4) - 5px);
    min-height: 52px;
    display: table;
    line-height: 1.3;
    text-align: center;
    font-size: 11px;
    letter-spacing: 0.03em;
    cursor: pointer;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

@media only screen and (max-width: 768px) and (max-width: 768px) {
  .tabs li.tab-link {
    margin-top: 5px;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    line-height: 1.2;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

@media only screen and (max-width: 768px) {
  .tabs li.tab-link:not(:last-child) {
    margin-right: 5px;
  }
  .tabs li.tab-link:nth-child(4), .tabs li.tab-link:nth-child(8) {
    margin-right: 0;
    width: calc(100% / 4);
  }
  .tabs li.tab-link a {
    vertical-align: middle;
    font-size: calc(9px + (14 - 9) * ((100vw - 320px) / (768 - 320))) !important;
    font-weight: bold;
    color: #fff;
    text-align: center;
    cursor: pointer;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .tab-content-container {
    padding: 20px 10px;
  }
  .row-container .sub-title {
    line-height: 1.4;
  }
  .btn-container {
    padding-top: 40px;
    padding-bottom: 40px;
    text-align: center;
  }
  .btn-container a {
    margin: 20px auto 0;
    padding: 10px 10px;
    display: block !important;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .btn-container a:first-child {
    margin-top: 0;
    margin-right: auto !important;
  }
  .btn-container a:hover {
    opacity: 0.8;
  }
  .news-list-container .news-list {
    padding: 20px 0;
    display: block;
    width: 100%;
    height: 100%;
    border-bottom: 2px dashed #ddd;
  }
}

@media only screen and (max-width: 768px) and (max-width: 768px) {
  .news-list-container .news-list {
    padding: 0;
  }
}

@media only screen and (max-width: 768px) {
  .news-list-container .news-list .info {
    margin-right: 10px;
    position: relative;
    padding-bottom: 2.2em;
  }
  .news-list-container .news-list .info .cate {
    display: table-cell;
    vertical-align: middle;
    font-size: calc(12px + (26 - 12) * ((100vw - 320px) / (768 - 320))) !important;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.05em;
    margin-right: 30px;
  }
  .news-list-container .news-list .info .division_wrap {
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .news-list-container .news-list .date {
    margin-right: 5px;
    font-size: calc(11px + (24 - 11) * ((100vw - 320px) / (768 - 320))) !important;
    line-height: 1;
    letter-spacing: 0.05em;
    color: #000;
    position: absolute;
    bottom: 5px;
    right: 0;
  }
  .news-list-container .news-list .tag {
    padding: 5px;
    font-size: calc(9px + (22 - 9) * ((100vw - 320px) / (768 - 320))) !important;
    font-weight: bold;
    line-height: 1;
    background-color: #ffff00;
  }
  .news-list-container .news-list .date,
  .news-list-container .news-list .tag {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .news-list-container .news-list .title {
    margin-top: 5px;
    font-size: calc(12px + (26 - 12) * ((100vw - 320px) / (768 - 320))) !important;
    font-weight: bold;
    line-height: 1.2;
    letter-spacing: 0.16em;
    color: #000;
  }
  .news-list-container .news-list .title a {
    color: #000;
  }
  /**News List**/
}

.text__margin {
  display: block;
}

@media screen and (min-width: 769px) {
  .text__margin {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 768px) {
  .text__margin {
    margin-bottom: 15px;
  }
}

/*********************************

_header.scss

*********************************/
.main-header-section .language_area {
  background: #f2f6f9;
  padding-top: 7px;
  padding-bottom: 7px;
}

.main-header-section .language_area .navigation-container {
  background: #f2f6f9 !important;
}

.main-header-section .language_area .language_area_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-width: 320px;
  width: 100%;
  margin-left: auto;
  text-align: right;
}

.main-header-section .language_area .language_area_list_item {
  width: calc(100% / 3);
  font-size: 12px;
  font-weight: bold;
}

.main-header-section .language_area .language_area_list_item a {
  color: #333648;
}

@media screen and (min-width: 769px) {
  .main-header-section .language_area .language_area_list_item a:hover {
    opacity: .6;
  }
}

.main-header-section .header-logo {
  vertical-align: middle;
  max-width: 30%;
  width: 100%;
  padding-top: 10px;
}

.main-header-section .header-logo a {
  display: block;
  width: auto;
}

.main-header-section .header-logo #logo {
  display: block;
  width: 90%;
  height: auto;
}

.main-header-section .main-header.navi-hide {
  top: -100px;
}

.main-header-section .main-header .main-header__inner-container {
  padding-top: 10px;
  padding-bottom: 10px;
  height: 100%;
  width: 100%;
  text-align: center;
  background-color: #f2f6f9;
}

.main-header-section .main-header .navigation-container {
  margin: 0 auto;
  background-color: #fff;
  max-width: 1210px;
  width: 100%;
}

.main-header-section .main-header .navigation-container .inner-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.main-header-section .main-header .navigation-container #top-menu-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: calc(100% - 40%);
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  height: 70px;
  margin-left: auto;
}

.main-header-section .main-header .navigation-container #top-menu-nav .header__division {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 16px;
  font-weight: bold;
  font-family: Roboto, sans-serif;
  letter-spacing: 0.05em;
  color: #000;
  cursor: pointer;
  max-width: calc(100% / 4);
  width: 100%;
}

@media screen and (max-width: 768px) {
  .main-header-section .main-header .navigation-container #top-menu-nav .header__division {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .main-header-section {
padding-bottom: 10px;
    z-index: 99;
    position: relative;
  }

  .main-header-section .main-header .navigation-container #top-menu-nav .header__division .header__division__list {
    visibility: visible;
    z-index: -1;
    opacity: 0;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .main-header-section .main-header .navigation-container #top-menu-nav .header__division:hover .header__division__list__link {
    visibility: visible;
    opacity: 1;
    z-index: 4;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .main-header-section .main-header .navigation-container #top-menu-nav .header__division:hover .header__division__list {
    visibility: visible;
    opacity: 1;
    z-index: 4;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

.main-header-section .main-header .navigation-container #top-menu-nav .header__division__list {
  position: absolute;
  left: -20px;
}

.main-header-section .main-header .navigation-container #top-menu-nav .header__division__list:nth-child(1) {
  top: 70px;
}

.main-header-section .main-header .navigation-container #top-menu-nav .header__division__list:nth-child(2) {
  top: 135px;
}

.main-header-section .main-header .navigation-container #top-menu-nav .header__division__list:nth-child(3) {
  top: 200px;
}

.main-header-section .main-header .navigation-container #top-menu-nav .header__division__list:nth-child(4) {
  top: 244px;
}

.main-header-section .main-header .navigation-container #top-menu-nav .header__division__list__link {
  visibility: hidden;
  opacity: 0;
  z-index: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #000 !important;
  background-color: #fff !important;
  padding: 13px 5px 10px;
  width: 210px;
  line-height: 1.35;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

@media screen and (min-width: 769px) {
  .main-header-section .main-header .navigation-container #top-menu-nav .header__division__list__link:hover {
    color: #fff !important;
    background-color: #e51b23 !important;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

.main-header-section .main-header .navigation-container #top-menu-nav .top-menu {
  max-width: calc((100% / 6) * 5);
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.main-header-section .main-header .navigation-container #top-menu-nav .top-menu li {
  max-width: calc(100% / 4);
  width: 100%;
}
.main-header-section .main-header .navigation-container #top-menu-nav .top-menu li ul{
  display: none;
}
.main-header-section .main-header .navigation-container #top-menu-nav .top-menu li:hover ul{
     display: block;
    padding: 20px 0;
    background-color: #fff;
    position: absolute;
    z-index: 999;
    min-width: 180px;
}
.main-header-section .main-header .navigation-container #top-menu-nav ul li ul li a:hover{
  padding:10px;
}
.main-header-section .main-header .navigation-container #top-menu-nav .top-menu li ul li{

}
.main-header-section .main-header .navigation-container #top-menu-nav .top-menu li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
  width: 100%;
  height: 100%;
}

.main-header-section .main-header .navigation-container #top-menu-nav .top-menu li.active {
  background-color: #e51b23;
  color: #fff;
}

.main-header-section .main-header .navigation-container #top-menu-nav ul {
  margin: 0;
  padding: 0;
  float: right;
  list-style: none;
  text-align: center;
  letter-spacing: 0;
  font-size: 0;
}

.main-header-section .main-header .navigation-container #top-menu-nav ul li {
  display: inline;
  list-style: none;
}

.main-header-section .main-header .navigation-container #top-menu-nav ul li.active a {
  background-color: #e51b23;
  color: #fff;
}

.main-header-section .main-header .navigation-container #top-menu-nav ul li a {
  display: inline-block;
  position: relative;
  font-size: 16px;
  font-weight: bold;
  /* font-family: 'Varela Round', sans-serif; */
  letter-spacing: 0.05em;
  color: #000;
  text-decoration: none;
  -webkit-transition: all .25s linear;
  -o-transition: all .25s linear;
  transition: all .25s linear;
}

.main-header-section .main-header .navigation-container #top-menu-nav ul li a:hover {
  background-color: #e51b23;
  color: #fff;
}

.main-header-section.division .main-header .navigation-container #top-menu-nav ul.header__division {
  background-color: #e51b23;
  color: #fff;
}

.main-header-section.products .main-header .navigation-container #top-menu-nav ul.top-menu li:nth-of-type(1) a {
  background-color: #e51b23;
  color: #fff;
}

.main-header-section.news .main-header .navigation-container #top-menu-nav ul.top-menu li:nth-of-type(2) a {
  background-color: #e51b23;
  color: #fff;
}

.main-header-section.company .main-header .navigation-container #top-menu-nav ul.top-menu li:nth-of-type(3) a {
  background-color: #e51b23;
  color: #fff;
}

.main-header-section.recruit .main-header .navigation-container #top-menu-nav ul.top-menu li:nth-of-type(4) a {
  background-color: #e51b23;
  color: #fff;
}

.main-header-section.contact .main-header .navigation-container #top-menu-nav ul.top-menu li:nth-of-type(5) a {
  background-color: #e51b23;
  color: #fff;
}

.main-kv {
  background-color: #333648;
}

.main-kv .bg-container {
  position: relative;
}

.main-kv .bg-container.top {
  height: 42vw;
  max-height: 400px;
  overflow: hidden;
}

.main-kv .bg-container.top .inner-container {
  margin-left: 5vw;
  margin-right: 5vw;
  max-width: 90%;
}

.main-kv .bg-container .slick-slide {
  position: relative;
  height: 42vw;
  max-height: 400px;
  overflow: hidden;
}

.main-kv .bg-container .slick-prev {
  left: 10px;
  z-index: 1;
}

.main-kv .bg-container .slick-next {
  right: 10px;
  z-index: 1;
}

.main-kv .bg-container .slick-dots {
  bottom: 10px;
}

.main-kv .bg-container .slick-dots li button:before {
  opacity: .8;
  color: #fff;
}

.main-kv .bg-container .slick-dots li.slick-active button:before {
  opacity: 1;
  color: #000;
}

.main-kv .bg-container .overlay-container {
  position: absolute;
  z-index: 3;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}

.main-kv .bg-container .overlay-container h2.title {
  text-shadow: rgba(0, 0, 0, 0.2) 0 0 10px;
}

.main-kv .bg-container .overlay-container h1.title,
.main-kv .bg-container .overlay-container p.sub-title {
  font-size: 32px;
  font-weight: normal;
  letter-spacing: 0.05em;
  line-height: 1.3;
  color: #fff;
  padding: 10px 0 0;
}
@media screen and (max-width: 768px) {
  .main-kv .bg-container .overlay-container h1.title {
    font-size: 22px;
  }
}

.main-kv .bg-container .overlay-container p.sub-title {
  display: inline-block;
  font-size: 19px;
  margin-top: 20px;
  padding: 25px;
  background-color: rgba(255, 255, 255, 0.1);
}

.main-kv .bg-container .btn-overlay-container {
  margin-top: 100px;
}

.main-kv .bg-container .overlay-btn {
  padding: 10px 20px;
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.05em;
  border: solid 1px #000;
  background-color: #000;
  color: #fff;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.main-kv .bg-container .overlay-btn:hover {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.top-kv-slider_item02, .top-kv-slider_item03, .top-kv-slider_item04, .top-kv-slider_item05 {
  display: none;
}

.main-kv .bg-container .top-kv-slider_item {
  position: relative;
}

.main-kv .bg-container .kv-box {
  max-width: 650px;
  width: 100%;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  table-layout: auto;
  background: rgba(0, 0, 0, 0.3);
  color: #fff;
  padding: 30px;
  margin-left: 5vw;
}

.main-kv .bg-container .kv-box_title {
  font-size: 45px;
  letter-spacing: 0.05em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-weight: normal;
  line-height: 1.3;
  margin-bottom: 5px;
}

.main-kv .bg-container .kv-box_text {
  font-size: 20px;
  letter-spacing: 0.05em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-weight: normal;
}

.main-kv .mv-textarea .bg .overlay-container .inner-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.main-kv .mv-textarea .bg .overlay-container .text {
  margin: 0 0 10px 0;
}

.main-kv .bg {
  margin: 0 auto;
  display: block;
  width: 100%;
  height: auto;
}

.main-kv .bg .overlay-container .text {
  max-width: 1100px;
  margin: 20px auto 0;
  color: #fff;
}

.main-kv .bg.slider {
  height: auto;
}

.main-kv .bg.slider.second {
  position: absolute;
  top: 0;
  left: 0;
  background: url(../img/top/top-kv-01.jpg) bottom center no-repeat;
  background-size: cover;
  z-index: 0;
}

@media screen and (min-width: 769px) {
  .main-kv .bg.slider.second {
    height: 400px;
  }
}

@media screen and (max-width: 768px) {
  .main-kv .bg.slider.second {
    height: 48.8vw;
  }
}

.main-kv .bg.slider.first {
  position: relative;
  z-index: 1;
  background: url(../img/top/top-kv-01b.jpg) bottom center no-repeat;
  background-size: cover;
  -webkit-animation: fadeOut 1.5s ease-out forwards;
  animation: fadeOut 1.5s ease-out forwards;
  -webkit-animation-delay: 4s;
  animation-delay: 4s;
}

@media screen and (min-width: 769px) {
  .main-kv-top {
/*    min-height: 578px;
    max-height: 635px;*/
  }
  .main-kv .bg.slider.first {
    height: 400px;
  }
}

@media screen and (max-width: 768px) {
  .main-kv .bg.slider.first {
    height: 48.8vw;
  }
}

.main-kv .main-kv__btn-container .inner-container {
  text-align: center;
}

.main-kv .main-kv__btn-container .inner-container a {
  display: inline-block;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.main-kv .main-kv__btn-container .inner-container a:first-child {
  margin-right: 50px;
}

.main-kv .main-kv__btn-container .inner-container a:hover {
  opacity: 0.8;
}

.icon {
    position: relative;
    width: 2rem;
    height: 1.5px;
    margin: 0 auto;
    background: #000;
    -webkit-transition: background 0.4s ease-in-out;
    -o-transition: background 0.4s ease-in-out;
    transition: background 0.4s ease-in-out;
}

/*.icon span {
  position: relative;
  width: 30px;
  height: 2px;
  margin-left: auto;
  background: #000;
  -webkit-transition: background 0.4s ease-in-out;
  -o-transition: background 0.4s ease-in-out;
  transition: background 0.4s ease-in-out;
}*/

.icon span {
  height: 2rem;
  width: 30px;
  display: block;
  position: absolute;
  top: -1rem;
  z-index: 5;
}

.icon:before {
  top: -10px;
}

.icon:after {
  top: 10px;
}

.icon:after, .icon:before {
  content: '';
  position: absolute;
  display: block;
  width: 32px;
  height: 2px;
  background: #000;
  -webkit-transition: all 0.4s ease-in-out;
  -o-transition: all 0.4s ease-in-out;
  transition: all 0.4s ease-in-out;
}

.icon:hover {
  cursor: pointer;
}

.icon img {
  width: 100%;
  height: auto;
}

.icon.active {
  background: rgba(0, 0, 0, 0) !important;
  -webkit-transition: background 0.4s ease;
  -o-transition: background 0.4s ease;
  transition: background 0.4s ease;
}

.icon.active:after, .icon.active:before {
  top: 0 !important;
  zoom: 1;
}

.icon.active:after {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.icon.active:before {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

@media only screen and (min-width: 769px) and (max-width: 1240px) {
  .main-header-section .language_area .language_area_list {
    padding-right: 20px;
  }
  .main-kv .bg-container .overlay-container h2.title,
  .main-kv .bg-container .kv-box_title {
    font-size: 30px;
  }
  .main-kv .bg-container .overlay-container p.sub-title,
  .main-kv .bg-container .kv-box_text {
    font-size: 16px;
  }
  .main-kv .bg-container .kv-box {
    width: auto;
  }
  .main-header-section .main-header .navigation-container #top-menu-nav ul li a {
    padding: 11px 0 !important;
  }
}

@media only screen and (min-width: 769px) {
  .main-kv-top .bg-container {
    height: 400px;
  }
}

@media only screen and (max-width: 768px) {
  .main-header-section .language_area {
    padding-top: 5px;
    padding-bottom: 5px;
  }
  .main-header-section .language_area .navigation-container {
    min-height: 20px !important;
  }
  .main-header-section .language_area .language_area_list_item {
    font-size: 11px;
  }
  .main-header-section .header-logo {
    padding-top: 0;
  }
  .main-header-section .header-logo #logo {
    display: block;
    padding: 10px 0;
    width: 190px;
    max-width: none;
  }
  .main-header-section .nav-sp {
    display: table-cell;
    width: auto;
    position: relative;
    vertical-align: middle;
  }
  .main-header-section .main-header {
    width: 100%;
    position: fixed;
    top: 0;
    z-index: 4;
    -webkit-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .3s linear;
  }
  .main-header-section .main-header .header-logo {
    width: auto;
  }
  .main-header-section .main-header .navigation-container {
    min-height: 50px;
    width: 100%;
  }
  .main-header-section .main-header .navigation-container .inner-container {
    display: table;
    height: 100%;
  }
  .main-header-section .main-header .main-header__inner-container {
    padding-top: 16px;
    padding-bottom: 16px;
    height: 100%;
    width: 100%;
    background-image: url("../images/header-bg-sp.jpg");
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
  }
  .main-kv {
    padding-top: 80px;
  }
  .main-kv-top {
    min-height: 140vw;
    max-height: 160vw;
    overflow: hidden;
  }
  .main-kv .bg-container.top {
    height: 80vw;
  }
  .main-kv .bg-container.top .inner-container {
    margin-left: 8vw;
  }
}

@media only screen and (max-width: 768px) and (max-width: 500px) {
  .main-kv .bg-container.top .inner-container {
    margin-left: 35px;
  }
}

@media only screen and (max-width: 768px) {
  .main-kv .bg-container .slick-slide {
    position: relative;
    height: 80vw;
    overflow: hidden;
  }
  .main-kv .bg-container .overlay-container h2.title,
  .main-kv .bg-container .overlay-container p.sub-title {
    font-size: 4vw;
    font-weight: normal;
    letter-spacing: 0.05em;
    line-height: 1.4;
    color: #fff;
  }
}

@media only screen and (max-width: 768px) and (max-width: 500px) {
  .main-kv .bg-container .overlay-container h2.title,
  .main-kv .bg-container .overlay-container p.sub-title {
    font-size: 18px;
  }
}

@media only screen and (max-width: 768px) {
  .main-kv .bg-container .overlay-container p.sub-title {
    max-width: 80vw;
    font-size: 2.4000000000000004vw;
    padding: 2vw;
    margin-top: calc(15px + (20 - 15) * ((100vw - 320px) / (768 - 320))) !important;
  }
}

@media only screen and (max-width: 768px) and (max-width: 500px) {
  .main-kv .bg-container .overlay-container p.sub-title {
    font-size: 12px;
  }
}

@media only screen and (max-width: 768px) {
  .main-kv .bg-container .btn-overlay-container {
    margin-top: calc(20px + (50 - 20) * ((100vw - 320px) / (768 - 320))) !important;
  }
  .main-kv .bg-container .overlay-btn {
    padding: 5px 12px;
    font-size: calc(12px + (14 - 12) * ((100vw - 320px) / (768 - 320))) !important;
    line-height: 1;
    letter-spacing: 0.05em;
    border: solid 1px #000;
    background-color: #000;
    color: #fff;
  }
  .main-kv .bg-container .kv-box {
    max-width: 75vw;
    width: auto;
    padding: 3vw;
    margin-left: 8vw;
    z-index: 1;
  }
}

@media only screen and (max-width: 768px) and (max-width: 500px) {
  .main-kv .bg-container .kv-box {
    max-width: 80%;
    width: auto;
    margin-left: 35px;
  }
}

@media only screen and (max-width: 768px) {
  .main-kv .bg-container .kv-box_title {
    font-size: 4vw;
  }
}

@media only screen and (max-width: 768px) and (max-width: 500px) {
  .main-kv .bg-container .kv-box_title {
    font-size: 20px;
  }
}

@media only screen and (max-width: 768px) {
  .main-kv .bg-container .kv-box_text {
    font-size: 2.4000000000000004vw;
  }
}

@media only screen and (max-width: 768px) and (max-width: 500px) {
  .main-kv .bg-container .kv-box_text {
    font-size: 12px;
  }
}

@media only screen and (max-width: 768px) {
  .main-kv .bg-container .kv-pic {
    position: relative;
    height: 100%;
    width: 100%;
  }
  .main-kv .bg-container .kv-pic img {
    position: absolute;
    top: 0;
    max-width: none;
    width: auto;
    height: 100%;
    z-index: 0;
  }
  .main-kv .bg-container .mv-textarea {
    height: auto;
  }
  .main-kv .bg .overlay-container .text {
    font-size: 12px;
  }
  .main-kv .bg.slider.first {
    height: 80vw;
  }
  .main-kv .bg.slider.second {
    height: 80vw;
  }
  .navi__sp {
    width: 100%;
    display: none !important;
    position: fixed;
    top: 82px;
    left: 0;
    list-style: none;
    background-color: #bc0b12;
    z-index: 2;
    opacity: 0;
    border-collapse: collapse;
    -webkit-transition: all .3s linear;
    -o-transition: all .3s linear;
    transition: all .3s linear;
  }
  .navi__sp.active {
    display: block !important;
    z-index: 5;
  }
  .navi__sp.reveal {
    top: 63px;
    opacity: 1;
  }
  .navi__sp.navi__sp-hide {
    top: -470px;
    -webkit-animation: nav-up ease-in-out .3s .1s both;
    animation: nav-up ease-in-out .3s .1s both;
  }
  .navi__sp li a, .navi__sp li span {
    padding: 15px 0px;
    text-decoration: none;
    display: block;
    margin-left: 25px;
  }
  .navi__sp li span p a{
    color: #fff;margin-left: 0;
  }
  .navi__sp li a p, .navi__sp li span p {
    color: #fff;
    font-size: 15px;
    line-height: 1.3;
    letter-spacing: 0.075em;
  }
  .navi__sp li h3 {
    vertical-align: middle;
    font-size: 13px;
    line-height: 1.2;
    color: #fff;
  }
  .navi__sp li .subicon__submenu {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
  }
  .navi__sp li .subicon__submenuClose {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
  }
  .navi__sp li .subicon.active {
    display: block;
  }
  .navi__sp li .subicon img {
    float: right;
    width: 11px;
    height: 5px;
    padding: 15px;
    margin-top: -10px;
    margin-right: 10px;
  }
  .navi__sp li .submenu {
    margin: 0 auto;
    display: none;
    opacity: 0;
    width: 100%;
    list-style: none;
    font-size: 0;
    letter-spacing: 0;
    background-color: #333449;
    border-collapse: collapse;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .navi__sp li .submenu.active {
    display: block;
    z-index: 5;
  }
  .navi__sp li .submenu.reveal {
    opacity: 1;
  }
  .navi__sp li .submenu.submenu-hide {
    display: none !important;
  }
  .navi__sp li .submenu li {
    border-bottom: 1px solid #575869;
    width: 100%;
    display: block;
    background: #dfeffe;
    padding-left: 25px;
  }
  .navi__sp li .submenu li a {
    margin-left: 0;
    padding: 15px 0px;
    vertical-align: middle;
  }
  .navi__sp li .submenu li a p {
    font-size: 15px;
    line-height: 1.3;
    letter-spacing: 0.075em;
    color: #e51b23;
  }
  .navi__sp li .submenu li a img {
    height: 50px;
    width: 110px;
    float: right;
    margin-top: -26px;
  }
  .navi__sp li:not(:last-child) {
    border-bottom: solid 1px #fff;
  }
  .navi__sp .top__subMenu {
    position: relative;
  }
}

@media screen and (min-width: 769px) {
  .top-kv-slider {
    min-height: 400px;
    overflow: hidden;
  }
}

@media screen and (min-width: 769px) {
  .bg.ocean {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .bg.ocean {
    display: block;
    background: url(../images/kv/ocean-kv-sp.jpg);
    background-size: cover;
    height: 128px;
    background-position: center 20%;
  }
}

@media screen and (min-width: 769px) {
  .bg.setsubi {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .bg.setsubi {
    display: block;
    background: url(../images/kv/setsubi-kv2.jpg);
    background-size: cover;
    height: 128px;
    background-position: center;
  }
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

/*********************************

_footer.scss

*********************************/
footer .footer__sitemap-container {
  padding: 50px 0;
  background-color: #bc0b12;
}

footer .footer__sitemap-container .site-map-column {
  float: left;
  width: 35%;
}

footer .footer__sitemap-container .site-map-column .list-title {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.05em;
  color: #fff;
}

footer .footer__sitemap-container .site-map-column .list-title a {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.05em;
  color: #fff;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

footer .footer__sitemap-container .site-map-column .list-title a:hover {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

footer .footer__sitemap-container .site-map-column .list-title:not(:first-child) {
  margin-top: 30px;
}

footer .footer__sitemap-container .site-map-column ul {
  list-style: none;
}

footer .footer__sitemap-container .site-map-column ul li {
  margin-top: 10px;
  list-style: none;
  line-height: 1.2;
  letter-spacing: 0.05em;
}

footer .footer__sitemap-container .site-map-column ul li a {
  font-size: 12px;
  font-weight: normal;
  color: #fff;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

footer .footer__sitemap-container .site-map-column ul li a:hover {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

footer .footer__sitemap-container .site-map-column ul li:first-child {
  margin-top: 15px;
}

footer .footer__sitemap-container .site-map-column .footer-navigation-list li {
  line-height: 1.2 !important;
}

footer .footer__sitemap-container .site-map-column .footer-navigation-list li:first-child {
  margin-top: 0;
}

footer .footer__sitemap-container .site-map-column .footer-navigation-list li:not(:first-child) {
  margin-top: 30px;
}

footer .footer__sitemap-container .site-map-column .footer-navigation-list li a {
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0.05em;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

footer .footer__sitemap-container .site-map-column .footer-navigation-list li a:hover {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

footer .footer__sitemap-container .left-area {
  float: left;
  width: 25%;
}

footer .footer__sitemap-container .left-area .first-column {
  width: 30%;
}

footer .footer__sitemap-container .right-area {
  float: right;
  width: 75%;
}

footer .footer__sitemap-container .right-area .first-column {
  width: 31%;
}

footer .footer__sitemap-container .right-area .first-column ul li {
  line-height: 1;
}

footer .footer__sitemap-container .right-area .first-column ul li:first-child {
  margin-top: 0;
}

footer .footer__sitemap-container .right-area .first-column ul li:not(:first-child) {
  margin-top: 30px;
}

footer .footer__sitemap-container .right-area .first-column ul li a {
  font-size: 14px;
  font-weight: bold;
  color: #fff;
}

footer .footer__sitemap-container .right-area .col-02 {
  width: 33%;
}

footer .footer__sitemap-container .right-area .col-03 {
  width: 33%;
}

footer .footer__logo-container {
  width: 100%;
  height: 100%;
}

footer .footer__logo-container .logo-container {
  padding: 15px 0;
  width: auto;
}

footer .footer__logo-container .logo-container img {
  float: right;
  display: block;
  width: 28%;
}

footer .footer__logo-container .logo-container a {
  display: block;
  width: auto;
}

footer .footer__bottom-container {
  padding: 15px 0;
  background-color: #000;
  display: table;
  width: 100%;
  height: 100%;
}

footer .links-container {
  float: left;
  width: 60%;
}

footer .links-container .links {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
  display: -webkit-box;
  /* OLD - iOS 6-, Safari 3.1-6 */
  display: -moz-box;
  /* OLD - Firefox 19- (buggy but mostly works) */
  display: -ms-flexbox;
  /* TWEENER - IE 10 */
  display: -webkit-flex;
  /* NEW - Chrome */
  display: flex;
}

footer .links-container .links li {
  display: inline;
  list-style: none;
  line-height: 1;
}

footer .links-container .links li a {
  color: #fff;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.05em;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

footer .links-container .links li a:hover {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

footer .links-container .links li:not(:first-child) {
  margin-left: 40px;
}

footer .copyright-container {
  float: right;
  width: 40%;
}

footer .copyright-container .copyright-txt {
  color: #fff;
  text-align: right;
  font-size: 12px;
  line-height: 1.2;
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 1240px) and (min-width: 768px) {
  footer .footer__sitemap-container .site-map-column .list-title {
    font-size: calc(12px + (14 - 12) * ((100vw - 769px) / (1200 - 769))) !important;
    font-weight: bold;
    color: #fff;
  }
  footer .footer__sitemap-container .site-map-column .list-title:not(:first-child) {
    margin-top: 20px;
  }
  footer .footer__sitemap-container .site-map-column ul li a {
    font-size: calc(10px + (12 - 10) * ((100vw - 768px) / (1200 - 768))) !important;
    font-weight: normal;
    color: #fff;
  }
  footer .footer__sitemap-container .site-map-column .footer-navigation-list li a {
    font-size: calc(12px + (14 - 12) * ((100vw - 768px) / (1200 - 768))) !important;
    font-weight: bold !important;
    color: #fff;
  }
  footer .footer__sitemap-container .first-column ul li {
    line-height: 1;
  }
  footer .footer__sitemap-container .first-column ul li a {
    font-size: calc(12px + (14 - 12) * ((100vw - 768px) / (1200 - 768))) !important;
    font-weight: bold;
    color: #fff;
  }
}

@media only screen and (max-width: 999px) and (min-width: 768px) {
  footer .footer__sitemap-container .left-area {
    width: 100%;
  }
  footer .footer__sitemap-container .right-area {
    width: 100%;
    margin-top: 30px;
  }
  footer .footer__sitemap-container .site-map-column,
  footer .footer__sitemap-container .left-area .first-column,
  footer .footer__sitemap-container .right-area .first-column {
    width: calc(100% / 3) !important;
  }
}

@media only screen and (max-width: 768px) {
  footer .footer__sitemap-container {
    padding: 30px 0;
  }
  footer .footer__sitemap-container .left-area {
    float: none;
    width: 100%;
  }
  footer .footer__sitemap-container .left-area .first-column {
    float: none;
    width: 100% !important;
  }
  footer .footer__sitemap-container .right-area {
    float: none;
    width: 100%;
  }
  footer .footer__sitemap-container .right-area .first-column {
    float: none;
    width: 100% !important;
  }
  footer .footer__sitemap-container .right-area ul li:not(:first-child) {
    margin-top: 0 !important;
  }
  footer .footer__sitemap-container .right-area a {
    padding: 15px 0;
    display: block;
  }
  footer .links-container {
    float: none;
    width: 100%;
  }
  footer .links-container .links {
    display: block;
    text-align: left;
  }
  footer .links-container .links li {
    margin-left: 0 !important;
    display: block;
    line-height: 1;
  }
  footer .links-container .links li:not(:first-child) {
    margin-top: 0;
  }
  footer .links-container .links li a {
    padding: 15px 0;
    display: block;
    font-size: 12px;
  }
  footer .copyright-container {
    margin-top: 30px;
    float: none;
    width: 100%;
  }
  footer .copyright-container .copyright-txt {
    font-size: 12px;
    text-align: left;
    line-height: 1.5;
  }
  footer .footer__logo-container {
    position: relative;
    width: 100%;
    height: 100%;
  }
  footer .footer__logo-container .logo-container {
    padding: 0;
    width: auto;
  }
  footer .footer__logo-container .logo-container img {
    padding: 10px 0;
    float: left;
    display: block;
    width: 70%;
  }
  footer .footer__logo-container .logo-container a {
    display: block;
    width: auto;
  }
  footer .footer-navigation-list li {
    line-height: 1.2 !important;
  }
  footer .footer-navigation-list li:first-child {
    margin-top: 0;
  }
  footer .footer-navigation-list li:not(:first-child) {
    margin-top: 0 !important;
  }
  footer .footer-navigation-list li a {
    padding: 15px 0;
    display: block;
    font-size: 14px;
    font-weight: bold;
    color: #fff;
  }
}

/*********************************

_top.scss

*********************************/
.home .product-lineup-wrapper {
  padding-top: 80px;
  padding-bottom: 80px;
}

.home .product-lineup-wrapper .product-lineup-title-container .title-icon:before {
  width: 40px;
  height: 52px;
  content: "";
  background: url("../images/product-lineup-icon.png") no-repeat 0 0;
  background-size: 40px auto;
}

.home .product-lineup-wrapper .product-lineup-title-container .product-lineup-title {
  display: table-cell;
  vertical-align: middle;
  font-size: 33px;
  line-height: 1.3;
  letter-spacing: 0.05em;
}

.home .product-lineup-wrapper .product-lineup-title-container,
.home .product-lineup-wrapper .product-lineup-container {
  width: calc(50% - 20px);
}

.home .product-lineup-wrapper .product-lineup-title-container.left-area,
.home .product-lineup-wrapper .product-lineup-container.left-area {
  margin-right: 40px;
}

.home .product-lineup-wrapper .product-lineup-container:not(:nth-child(2)) {
  margin-top: 100px;
}

.home .product-lineup-wrapper .product-lineup-container a {
  display: block;
}

.home .product-lineup-wrapper .product-lineup-container a:hover img,
.home .product-lineup-wrapper .product-lineup-container a:hover .info-title,
.home .product-lineup-wrapper .product-lineup-container a:hover .info-txt {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .product-lineup-wrapper .featured-img-container img {
  margin: 0 auto;
  width: 100%;
  height: auto;
  display: block;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .product-lineup-wrapper .info-container {
  margin-top: 15px;
}

.home .product-lineup-wrapper .info-container .info-title {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.2;
  letter-spacing: 0.05em;
  text-align: center;
  color: #e51b23;
}

.home .product-lineup-wrapper .info-container .info-txt {
  margin-top: 10px;
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: 0.08em;
  text-align: left;
  color: #000;
}

.home .main-content__row-02 {
  background-color: #f2f6f9;
}

.home .topics-wrapper {
  padding-top: 80px;
  padding-bottom: 80px;
}

.home .topics-wrapper .topics-title-container .title-icon:before {
  width: 40px;
  height: 40px;
  content: "";
  background: url("../images/topics-icon.png") no-repeat 0 0;
  background-size: 40px auto;
}

.home .topics-wrapper .topics-title-container .topics-title {
  display: table-cell;
  vertical-align: middle;
  font-size: 33px;
  line-height: 1.3;
  letter-spacing: 0.05em;
}

.home .main-content__row-03 {
  background-color: #fff;
}

.home .inquiries-wrapper {
  padding-top: 80px;
  padding-bottom: 80px;
}

.home .inquiries-wrapper .inquiries-title-container .title-icon:before {
  width: 48px;
  height: 40px;
  content: "";
  background: url("../images/inquiries-icon.png") no-repeat 0 0;
  background-size: 48px auto;
}

.home .inquiries-wrapper .inquiries-title-container .inquiries-title {
  display: table-cell;
  vertical-align: middle;
  font-size: 33px;
  line-height: 1.3;
  letter-spacing: 0.05em;
}

.home .inquiries-wrapper .inquiries-content-container {
  margin-top: 40px;
  width: 100%;
  height: 100%;
}

.home .inquiries-wrapper .inquiries-content-container .inquiries-column {
  width: calc(50% - 10px);
  border: 2px solid #e51b23;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.home .inquiries-wrapper .inquiries-content-container .inquiries-column:not(:last-child) {
  margin-right: 18px;
}

.home .inquiries-wrapper .inquiries-content-container .inquiries-column a {
  padding: 30px 20px;
  display: block;
}

.home .inquiries-wrapper .inquiries-content-container .inquiries-column a:hover img,
.home .inquiries-wrapper .inquiries-content-container .inquiries-column a:hover .title,
.home .inquiries-wrapper .inquiries-content-container .inquiries-column a:hover .title-icon,
.home .inquiries-wrapper .inquiries-content-container .inquiries-column a:hover .info {
  opacity: 0.5;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .inquiries-wrapper .inquiries-content-container .inquiries-column .icon-container img {
  margin: 0 auto;
  display: block;
  width: 20%;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .inquiries-wrapper .inquiries-content-container .inquiries-column .title-container {
  margin: 20px auto 0;
  width: auto;
  position: relative;
  display: table;
}

.home .inquiries-wrapper .inquiries-content-container .inquiries-column .title-container .title-icon {
  vertical-align: middle;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .inquiries-wrapper .inquiries-content-container .inquiries-column .title-container .title-icon:before {
  margin-right: 15px;
  width: 8px;
  height: 12px;
  content: "";
  background: url("../images/btn-blue-arrow.png") no-repeat 0 0;
  background-size: 8px auto;
}

.home .inquiries-wrapper .inquiries-content-container .inquiries-column .title-container .title {
  display: table-cell;
  vertical-align: middle;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  line-height: 1.3;
  letter-spacing: 0.05em;
  color: #e51b23;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .inquiries-wrapper .inquiries-content-container .inquiries-column .info {
  margin-top: 8px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.08em;
  color: #000;
}

.home .inquiries-wrapper .inquiries-btn-container {
  margin-top: 30px;
}

.home .inquiries-wrapper .inquiries-btn-container .left-btn {
  margin-right: 20px;
  width: calc(50% - 10px);
}

.home .inquiries-wrapper .inquiries-btn-container .right-btn {
  width: calc(50% - 10px);
}

.home .inquiries-wrapper .inquiries-btn-container .inquiries-btn {
  padding: 40px 20px;
  display: table;
  width: 100%;
  text-align: center;
  background-color: #333648;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .inquiries-wrapper .inquiries-btn-container .inquiries-btn:hover {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .inquiries-wrapper .inquiries-btn-container .inquiries-btn:hover .btn-txt,
.home .inquiries-wrapper .inquiries-btn-container .inquiries-btn:hover .btn-icon {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .inquiries-wrapper .inquiries-btn-container .inquiries-btn .btn-icon {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
}

.home .inquiries-wrapper .inquiries-btn-container .inquiries-btn .btn-icon:before {
  margin-right: 15px;
  display: block;
  vertical-align: middle;
  width: 8px;
  height: 12px;
  content: "";
  background: url("../images/btn-white-arrow.png") no-repeat 0 0;
  background-size: 8px auto;
}

.home .inquiries-wrapper .inquiries-btn-container .inquiries-btn .btn-txt {
  display: inline;
  vertical-align: middle;
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #fff;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .main-content__row-04 {
  position: relative;
  background-color: #f2f6f9;
}

.home .about-wrapper {
  padding-top: 80px;
  padding-bottom: 80px;
}

.home .about-wrapper .about-title-container {
  padding-bottom: 30px;
}

.home .about-wrapper .about-title-container .title-icon:before {
  width: 34px;
  height: 35px;
  content: "";
  background: url("../images/building-icon.png") no-repeat 0 0;
  background-size: 34px auto;
}

.home .about-wrapper .about-title-container .about-title {
  display: table-cell;
  vertical-align: middle;
  font-size: 33px;
  line-height: 1.3;
  letter-spacing: 0.05em;
  /* padding-bottom: 60px; */
}

.home .about-wrapper .left-area {
  margin-right: 40px;
}

.home .about-wrapper .left-area,
.home .about-wrapper .right-area {
  width: calc(50% - 20px);
}

.home .about-wrapper .about-column:not(:first-child) {
  margin-top: 68px;
}

.home .about-wrapper .about-column a:hover img,
.home .about-wrapper .about-column a:hover .title-txt,
.home .about-wrapper .about-column a:hover .title-icon {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .about-wrapper .about-column .about-slider-wrapper img {
  margin: 0 auto;
  display: block;
  width: 100%;
  height: auto;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .about-wrapper .about-column-content {
  padding: 20px;
  background-color: #fff;
}

.home .about-wrapper .about-column-content .title-container {
  width: auto;
  position: relative;
  display: table;
}

.home .about-wrapper .about-column-content .title-icon {
  vertical-align: middle;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .about-wrapper .about-column-content .title-icon:before {
  margin-right: 15px;
  width: 8px;
  height: 12px;
  content: "";
  background: url("../images/btn-blue-arrow.png") no-repeat 0 0;
  background-size: 8px auto;
}

.home .about-wrapper .about-column-content .title-txt {
  display: table-cell;
  vertical-align: middle;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  line-height: 1.3;
  letter-spacing: 0.05em;
  color: #e51b23;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .about-wrapper .about-column-content .info-txt {
  margin-top: 10px;
  font-size: 14px;
  font-weight: bold;
  /* text-align: justify; */
  color: #000;
  letter-spacing: 0.08em;
}

.home .about-wrapper .about-btn-container {
  margin-top: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  padding-top: 40px;
}

.home .about-wrapper .about-btn-container .left-btn {
  margin-right: 10px;
  width: calc(50% - 5px);
}

.home .about-wrapper .about-btn-container .right-btn {
  width: calc(50% - 10px);
}

.home .about-wrapper .about-btn-container .about-btn-item {
  max-width: calc(( 100% / 3) - 14px);
  width: 100%;
  margin-right: 20px;
  background-color: #fff;
  /*display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;*/
  padding: 20px;
  min-height: 80px;
}
.home .about-wrapper .about-btn-container .about-btn-item:nth-child(3n) {
  margin-right: 0;
}

.home .about-wrapper .about-btn-container .about-btn {
  display: block;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .about-wrapper .about-btn-container .about-btn:hover {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .about-wrapper .about-btn-container .about-btn:hover .btn-txt,
.home .about-wrapper .about-btn-container .about-btn:hover .btn-icon {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.home .about-wrapper .about-btn-container .about-btn .btn-icon {
  display: inline-block;
  vertical-align: middle;
  text-align: center;
}

.home .about-wrapper .about-btn-container .about-btn .btn-icon:before {
  margin-right: 15px;
  display: block;
  vertical-align: middle;
  width: 8px;
  height: 12px;
  content: "";
  background: url("../images/btn-blue-arrow.png") no-repeat 0 0;
  background-size: 8px auto;
}

.home .about-wrapper .about-btn-container .about-btn .btn-txt {
  display: inline;
  vertical-align: middle;
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.5px;
  color: #e51b23;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

/**SP**/
@media only screen and (max-width: 768px) {
  .home .product-lineup-wrapper {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .home .product-lineup-wrapper .product-lineup-title-container,
  .home .product-lineup-wrapper .product-lineup-container {
    width: 100%;
    float: none;
  }
  .home .product-lineup-wrapper .product-lineup-title-container.left-area,
  .home .product-lineup-wrapper .product-lineup-container.left-area {
    margin-right: 0;
  }
  .home .product-lineup-wrapper .product-lineup-container {
    margin-top: 30px !important;
  }
  .home .product-lineup-wrapper .product-lineup-title-container .product-lineup-title {
    font-size: calc(17px + (28 - 17) * ((100vw - 320px) / (768 - 320))) !important;
  }
  .home .product-lineup-wrapper .product-lineup-title-container .title-icon:before {
    margin-right: 10px;
  }
  .home .product-lineup-wrapper .info-container .info-title {
    font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (768 - 320))) !important;
    text-align: left;
  }
  .home .product-lineup-wrapper .info-container .info-txt {
    font-size: calc(12px + (16 - 12) * ((100vw - 320px) / (768 - 320))) !important;
    font-weight: bold;
  }
  .home .topics-wrapper {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .home .topics-wrapper .topics-title-container .title-icon:before {
    margin-right: 10px;
    width: 30px;
    height: 30px;
    background-size: 30px auto;
  }
  .home .topics-wrapper .topics-title-container .topics-title {
    font-size: calc(17px + (28 - 17) * ((100vw - 320px) / (768 - 320))) !important;
  }
  .home .topics-wrapper .topics-tab-container {
    margin-top: 30px;
  }
  .home .inquiries-wrapper {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .home .inquiries-wrapper .inquiries-title-container .title-icon:before {
    margin-right: 10px;
  }
  .home .inquiries-wrapper .inquiries-title-container .inquiries-title {
    font-size: calc(17px + (28 - 17) * ((100vw - 320px) / (768 - 320))) !important;
  }
  .home .inquiries-wrapper .inquiries-title-container .sub-title {
    font-size: calc(12px + (24 - 12) * ((100vw - 320px) / (768 - 320))) !important;
    font-weight: bold;
  }
  .home .inquiries-wrapper .inquiries-content-container {
    margin-top: 20px;
  }
  .home .inquiries-wrapper .inquiries-content-container .inquiries-column {
    float: none;
    width: 100%;
  }
  .home .inquiries-wrapper .inquiries-content-container .inquiries-column:not(:first-child) {
    margin-top: 15px;
  }
  .home .inquiries-wrapper .inquiries-content-container .inquiries-column .icon-container img {
    width: 25%;
  }
  .home .inquiries-wrapper .inquiries-content-container .inquiries-column .title-container .title {
    font-size: calc(15px + (30 - 15) * ((100vw - 320px) / (768 - 320))) !important;
  }
  .home .inquiries-wrapper .inquiries-content-container .inquiries-column .info {
    font-size: calc(12px + (24 - 12) * ((100vw - 320px) / (768 - 320))) !important;
    font-weight: bold;
  }
  .home .inquiries-wrapper .inquiries-btn-container .inquiries-btn .btn-txt {
    font-size: calc(14px + (26 - 14) * ((100vw - 320px) / (768 - 320))) !important;
    font-weight: bold;
  }
  .home .inquiries-wrapper .inquiries-btn-container .right-btn,
  .home .inquiries-wrapper .inquiries-btn-container .left-btn {
    float: none;
    width: 100%;
  }
  .home .inquiries-wrapper .inquiries-btn-container .right-btn {
    margin-top: 15px;
  }
  .home .about-wrapper {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .home .about-wrapper .about-title-container {
    padding-bottom: 30px;
  }
  .home .about-wrapper .about-title-container .title-icon:before {
    margin-right: 10px;
  }
  .home .about-wrapper .about-title-container .about-title {
    font-size: calc(17px + (28 - 17) * ((100vw - 320px) / (768 - 320))) !important;
    /*padding-bottom: 30px;*/
  }
  .home .about-wrapper .right-area,
  .home .about-wrapper .left-area {
    float: none;
    width: 100% !important;
  }
  .home .about-wrapper .right-area .about-column {
    margin-top: 15px;
  }
  .home .about-wrapper .about-column:not(:first-child) {
    margin-top: 30px;
  }
  .home .about-wrapper .about-btn-container {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .home .about-wrapper .about-btn-container .right-btn {
    margin-top: 15px;
  }
  .home .about-wrapper .about-btn-container .about-btn-item {
    max-width: calc(( 100% / 2) - 20px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #fff;
    margin-bottom: 20px;
  }
  .home .about-wrapper .about-btn-container .about-btn .btn-txt {
    font-size: calc(14px + (26 - 14) * ((100vw - 320px) / (768 - 320))) !important;
    font-weight: bold;
  }
  .home .about-wrapper .about-column-content {
    padding: 15px;
  }
  .home .about-wrapper .about-column-content .title-icon:before {
    margin-right: 10px;
    width: 8px;
    height: 12px;
    background-size: 8px auto;
  }
  .home .about-wrapper .about-column-content .title-txt {
    font-size: calc(15px + (18 - 15) * ((100vw - 320px) / (768 - 320))) !important;
    text-align: left;
  }
  .home .about-wrapper .about-column-content .info-txt {
    font-size: calc(12px + (16 - 12) * ((100vw - 320px) / (768 - 320))) !important;
    font-weight: bold;
  }
}

.top__division__news {
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  letter-spacing: 0.5px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 20px 40px;
}

@media screen and (min-width: 769px) {
  .top__division__news {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

@media screen and (max-width: 1000px) {
  .top__division__news {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 30px 10px 20px;
  }
}

.top__division__news__title {
  max-width: calc(100% / 8);
  width: 100%;
  color: #000;
  font-size: 30px;
}

@media screen and (min-width: 769px) and (max-width: 1000px) {
  .top__division__news__title {
    font-size: 25px;
    max-width: 100%;
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 768px) {
  .top__division__news__title {
    max-width: 100%;
    margin-bottom: 20px;
    font-size: calc(18px + (26 - 14) * ((100vw - 320px) / (768 - 320))) !important;
    padding-left: 10px;
  }
}

.top__division__news__title a {
  color: #000;
}

.top__division__news__title a:hover {
  opacity: 0.5;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.top__division__news__area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
}

@media screen and (max-width: 768px) {
  .top__division__news__area {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.top__division__news__area__list {
  text-align: center;
  padding: 10px 10px;
  line-height: 1.3;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (min-width: 769px) {
  .top__division__news__area__list {
    max-width: calc(100% / 4);
    width: 100%;
    margin-right: 18px;
  }
}

@media screen and (max-width: 1000px) {
  .top__division__news__area__list {
    width: calc((100% / 2) - 20px);
    margin-bottom: 20px;
    margin-right: 20px;
  }
}

@media screen and (max-width: 768px) {
  .top__division__news__area__list:nth-child(even) {
    margin-right: 0;
  }
}

.top__division__news__area__list.water {
  background-color: #6c9ace;
}

.top__division__news__area__list.keiryo {
  background-color: #96c857;
}

.top__division__news__area__list.ocean {
  background-color: #1c407a;
}

.top__division__news__area__list.setsubi {
  background-color: #e77f48;
}

@media screen and (min-width: 769px) {
  .top__division__news__area__list:last-child {
    margin-right: 0;
  }
}

@media screen and (max-width: 768px) {
  .top__division__news__area__list:nth-child(3) {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 768px) {
  .top__division__news__area__list:nth-child(4) {
    margin-bottom: 0;
  }
}

.top__division__news__area__list__link {
  color: #fff;
  font-size: 19px;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .top__division__news__area__list__link {
    /* height: 40px; */
    letter-spacing: 0.05em;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
    line-height: 1.3;
  }
}

@media screen and (min-width: 769px) and (max-width: 1240px) {
  .top__division__news__area__list__link {
    font-size: 16px;
  }
}

@media screen and (max-width: 768px) {
  .top__division__news__area__list__link {
    font-size: calc(14px + (26 - 14) * ((100vw - 320px) / (768 - 320)));
  }
}

@media screen and (max-width: 320px) {
  .top__division__news__area__list__link {
    font-size: 12px;
  }
}

@media screen and (min-width: 769px) {
  .top__division__news__area__list__link:hover {
    opacity: 0.5;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

/*********************************

_company.scss

*********************************/
/**Company Index**/
.company.main-content {
  width: 100%;
  height: 100%;
}

.company .content-info-txt {
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 0.075em;
  color: #333648;
}

.company .content-info-txt.mt {
  margin-top: 20px;
}

.company .row-container {
  margin-top: 40px;
  width: 100%;
  height: 100%;
}

.company .row-container .sub-title {
  line-height: 1.5;
  padding: 8px 15px;
}

.company .row-container .sub-title:not(:nth-child(2)) {
  margin-top: 40px;
}

.company .title-container {
  padding: 12px 45px 10px 14px;
  position: relative;
  background-color: #e51b23;
  width: 100%;
  display: block;
  line-height: 1;
}

.company .title-container .title {
  width: auto;
  display: inline-block;
  vertical-align: middle;
  font-size: 20px;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #fff;
}

.company .txt-container {
  margin-top: 20px;
  padding-right: 10px;
  padding-left: 10px;
}

.company .txt-container p {
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.08em;
  color: #333648;
}

.company .txt-container p a {
  color: #333648;
  text-decoration: underline;
}

.company .txt-container .list.topics-list li {
  padding-bottom: 10px;
  padding-left: 10px;
}

.company .txt-container .list.topics-list a {
  text-decoration: underline;
  padding-left: 20px;
}

.company .txt-container .outside_list {
  list-style-position: outside;
  padding-left: 30px;
}

.company .txt-container .outside_list li {
  margin-bottom: 1em;
  line-height: 1.5;
}

.company .member-list {
  margin: 10px 0;
  padding: 0 0 0 25px;
  overflow: hidden;
}

.company .member-list li {
  float: left;
  width: calc(50% - 10px);
  margin: 0 20px 20px 0;
}

.company .member-list li:nth-of-type(2n) {
  margin: 0 0 20px;
}

.company .column-container {
  margin-top: 30px;
  padding-right: 15px;
  padding-left: 15px;
}

.company .column-container.company-action .title {
  padding-top: 12px;
  padding-bottom: 12px;
  display: block;
}

.company .column-container .column {
  width: calc(33.33% - 12px);
  border: 1px solid #000;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.company .column-container .column:not(:last-child) {
  margin-right: 18px;
}

.company .column-container .column .title {
  font-size: 16px;
  font-weight: normal;
  text-align: center;
  line-height: 1;
  letter-spacing: 0.075em;
  color: #333648;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.company .company-table-container {
  margin-top: 30px;
}

.company .company-table-container .table-row {
  margin-top: 10px;
  display: table;
  width: 100%;
  height: 100%;
  border: 1px solid #000;
}

.company .company-table-container .table-row .table-cell-left {
  display: table-cell;
  vertical-align: middle;
  width: 20%;
  background-color: #f2f6f9;
  text-align: center;
  color: #e51b23;
}

.company .company-table-container .table-row .table-cell-right {
  padding: 20px;
  display: table-cell;
  vertical-align: middle;
  width: 80%;
}

.company .company-table-container .table-row .table-cell-right p {
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.08em;
  color: #333648;
}

.company ol {
  list-style-position: inside;
}

.company ol li {
  font-size: 14px;
  letter-spacing: 0.08em;
  color: #333648;
  line-height: 2.4;
}

.company ol li span {
  font-size: 14px;
}

.company .safety-initiatives-container {
  margin-top: 40px;
}

.company .safety-initiatives-container ol {
  margin-top: 30px;
}

.company .occupational-table.pc {
  margin-top: 40px;
  margin-bottom: 40px;
  border-collapse: collapse;
  border: solid 1px #000;
  width: 100%;
}

.company .occupational-table.pc th:not(:last-child),
.company .occupational-table.pc td:not(:last-child) {
  border-right: solid 1px #000;
}

.company .occupational-table.pc th, .company .occupational-table.pc td {
  padding-top: 10px;
  padding-bottom: 10px;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.5;
  text-align: center;
}

.company .occupational-table.pc .color {
  background: #f0f0f0;
}

.company .occupational-table.pc .header {
  background-color: #f2f6f9;
}

.company .banner-container {
  margin-top: 80px;
  text-align: center;
}

.company .banner-container a {
  display: inline-block;
  width: 34%;
}

.company .banner-container a img {
  display: inline-block;
  width: 100%;
  height: auto;
}

.company .banner-container a:not(:last-child) {
  margin-right: 50px;
}

.company table {
  width: 100%;
  border: 1px solid #a7a7a7;
  margin: 20px 0 0;
  border-left: none;
  font-size: 13px;
  border-collapse: collapse;
}

.company table tr th {
  text-align: center;
  vertical-align: top;
  line-height: 1.3em;
  padding: 5px 5px 5px 10px;
  color: #fff;
  border-left: 1px solid #a7a7a7;
  border-bottom: 1px solid #a7a7a7;
  background-color: #333;
}

.company table tr th.50p {
  width: 50%;
}

.company table tr td {
  text-align: left;
  vertical-align: top;
  line-height: 1.3em;
  padding: 5px 5px 5px 10px;
  border-left: 1px solid #a7a7a7;
}

.company table tr td.50p {
  width: 50%;
}

.company table tr.color {
  background: #f0f0f0;
}

.company .spec-table,
.company .load-table {
  margin-bottom: 20px;
  border: 1px solid #a7a7a7;
  border-left: none;
}

@media screen and (max-width: 768px) {
  .company .spec-table,
  .company .load-table {
    overflow-x: scroll;
  }
}

.company .spec-table.bb-none tr th,
.company .load-table.bb-none tr th {
  border-bottom: none;
}

.company .spec-table tr td img,
.company .load-table tr td img {
  margin-left: 5px;
}

.company .spec-table tr.white th,
.company .load-table tr.white th {
  text-align: left;
  vertical-align: top;
  line-height: 1.3em;
  padding: 5px 5px 5px 10px;
  border-left: 1px solid #a7a7a7;
  background-color: #fff;
  color: #000;
}

.company .spec-table tr.white th.text,
.company .load-table tr.white th.text {
  display: inline-block;
  width: 50%;
}

.company .spec-table tr.white th.text.none,
.company .load-table tr.white th.text.none {
  display: table-cell;
  width: auto;
}

.company .spec-table tr.white td,
.company .load-table tr.white td {
  text-align: left;
  vertical-align: top;
  line-height: 1.3em;
  padding: 5px 5px 5px 10px;
  border-left: 1px solid #a7a7a7;
}

.company .spec-table tr.white td.text,
.company .load-table tr.white td.text {
  width: 50%;
}

.company .spec-table tr.color th, .company .spec-table tr.color td,
.company .load-table tr.color th,
.company .load-table tr.color td {
  background: #f0f0f0;
}

.company .spec-table tr.color th,
.company .load-table tr.color th {
  padding: 5px 5px 5px 10px;
  text-align: left;
  vertical-align: top;
  border-left: 1px solid #a7a7a7;
  color: #000;
  line-height: 1.3em;
}

.company .spec-table tr.color th.text,
.company .load-table tr.color th.text {
  display: inline-block;
  width: 50%;
}

.company .spec-table tr.color th.text.none,
.company .load-table tr.color th.text.none {
  display: table-cell;
  width: auto;
}

.company .spec-table tr.color td,
.company .load-table tr.color td {
  padding: 5px 5px 5px 10px;
  text-align: left;
  vertical-align: top;
  border-left: 1px solid #a7a7a7;
  line-height: 1.3em;
}

.company .spec-table tr.color td.text,
.company .load-table tr.color td.text {
  width: 50%;
}

.company .spec-table tr a,
.company .load-table tr a {
  color: #336699;
}

.company .sidebar .sidebar-header-container .sidebar-title-container .title-icon:before {
  width: 28px;
  height: 29px;
  content: "";
  background: url("../images/building-icon-white.png") no-repeat 0 0;
  background-size: 28px auto;
}

.sidebar-header-container {
  display: block;
}

@media screen and (min-width: 769px) {
  .sidebar-header-container:hover {
    opacity: 0.8;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

/**Company Profile**/
.company-profile.main-content {
  width: 100%;
  height: 100%;
}

.company-profile .content-info-txt {
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 0.075em;
  color: #333648;
}

.company-profile .row-container {
  margin-top: 40px;
  width: 100%;
  height: 100%;
}

.company-profile .row-container .sub-title:not(:nth-child(2)) {
  margin-top: 60px;
}

.company-profile .title-container {
  padding: 12px 45px 10px 14px;
  position: relative;
  background-color: #e51b23;
  width: 100%;
  display: block;
  line-height: 1;
}

.company-profile .title-container .title {
  width: auto;
  display: inline-block;
  vertical-align: middle;
  font-size: 20px;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #fff;
}

.company-profile img.profile_ios_pic {
  float: right;
  padding: 0 60px 0 40px;
  margin-top: -20px;
}

.company-profile .map-row {
  margin-top: 30px;
  display: table;
  width: 100%;
  height: 100%;
}

.company-profile .map-container {
  float: right;
  width: 75%;
}

.company-profile .map-container .map-frame {
  width: 100%;
  height: 320px;
}

.company-profile .map-txt {
  margin-top: 10px;
  text-align: right;
  font-size: 12px;
  line-height: 1.3;
  letter-spacing: 0.08em;
}

.company-profile .map-txt a {
  border-bottom: solid 1px #000;
  font-size: 14px;
  line-height: 1.3;
  letter-spacing: 0.08em;
  color: #333648;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.company-profile .map-txt a:hover {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.company-profile .sidebar .sidebar-header-container .sidebar-title-container .title-icon:before {
  width: 28px;
  height: 29px;
  content: "";
  background: url(../images/building-icon-white.png) no-repeat 0 0;
  background-size: 28px auto;
}

/**Company Location**/
.company-location.main-content {
  width: 100%;
  height: 100%;
}

.company-location .content-info-txt {
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 0.075em;
  color: #333648;
}

.company-location .main-content-inner-container .row-container:last-child .txt-container .contact-container {
  margin-top: 0;
}

.company-location .main-content-inner-container .row-container:last-child .txt-container .contact-container .contact-info {
  margin-top: 8px;
}

.company-location .main-content-inner-container .row-container:last-child .row-content-container .row-content-inner-container:not(first-child) {
  margin-top: 80px;
}

.company-location .txt-container p {
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: #333648;
}

.company-location .txt-container .contact-info {
  margin-top: 20px;
  font-size: 16px;
  line-height: 1.2;
  letter-spacing: 0.080em;
  color: #333648;
}

.company-location .row-container {
  margin-top: 40px;
  width: 100%;
  height: 100%;
}

.company-location .row-container .sub-title:not(:nth-child(2)) {
  margin-top: 60px;
}

.company-location .title-container {
  padding: 12px 45px 10px 14px;
  position: relative;
  background-color: #e51b23;
  width: 100%;
  display: block;
  line-height: 1;
}

.company-location .title-container .title {
  width: auto;
  display: inline-block;
  vertical-align: middle;
  font-size: 20px;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #fff;
}

.company-location .map-container {
  margin-top: 30px;
  width: 100%;
}

.company-location .map-container .map-frame {
  width: 100%;
  height: 320px;
}

.company-location .map-txt {
  margin-top: 10px;
  text-align: right;
  font-size: 12px;
  line-height: 1.3;
  letter-spacing: 0.08em;
}

.company-location .map-txt a {
  border-bottom: solid 1px #000;
  font-size: 14px;
  line-height: 1.3;
  letter-spacing: 0.08em;
  color: #333648;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.company-location .map-txt a:hover {
  opacity: 0.8;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.company-location .map-info {
  margin-top: 10px;
  width: 100%;
}

.company-location .map-info .map-info-title {
  display: inline-block;
  width: 14%;
  margin: 0;
  border: 0;
}

.company-location .map-info .map-info-txt {
  display: inline-block;
  width: 85%;
  margin: 0;
  border: 0;
}

.company-location .map-info span {
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: #333648;
}

.company-location .map-info-02 {
  margin-top: 10px;
  width: 100%;
}

.company-location .map-info-02 .map-info-title {
  display: inline-block;
  width: 28%;
  margin: 0;
  border: 0;
}

.company-location .map-info-02 .map-info-txt {
  display: inline-block;
  width: 71%;
  margin: 0;
  border: 0;
}

.company-location .map-info-02 span {
  font-size: 14px;
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: #333648;
}

.company-location .map-desc {
  margin-top: 30px;
  line-height: 1.6 !important;
}

.company-location .pdf-link {
  margin-top: 30px;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.company-location .pdf-link:before {
  margin-right: 15px;
  width: 20px;
  height: 26px;
  content: "";
  background: url("../images/pdf-icon.png") no-repeat 0 0;
  background-size: 20px auto;
  display: inline-block;
  vertical-align: middle;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.company-location .pdf-link a {
  display: inline-block;
  vertical-align: middle;
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0.08em;
  color: #333648;
  border-bottom: 1px solid #333648;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.company-location .pdf-link a:hover {
  opacity: 0.8;
}

.company-location .contact-title {
  padding-left: 15px;
  position: relative;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.2;
  letter-spacing: 0.080em;
  color: #333648;
}

.company-location .contact-title:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 22px;
  border-left: solid 2px;
  color: #333648;
}

.company-location .contact-title:not(:first-child) {
  margin-top: 50px;
}

.company-location .contact-container {
  margin-top: 60px;
}

.company-location .row-content-container .sub-title {
  line-height: 1.6;
}

.company-location .row-content-container .sub-title.two-lines:before {
  height: 78px;
}

.company-location .row-content-container .sub-title:before {
  height: 48px;
}

.company-location .sidebar .sidebar-header-container .sidebar-title-container .title-icon:before {
  width: 28px;
  height: 29px;
  content: "";
  background: url(../images/building-icon-white.png) no-repeat 0 0;
  background-size: 28px auto;
}

@media only screen and (max-width: 768px) {
  /**Company Index**/
  .company.main-content {
    margin-top: 20px;
    margin-bottom: 50px;
    width: 100%;
    height: 100%;
  }
  .company .column-container .column {
    width: 100%;
  }
  .company .column-container .column:not(:first-child) {
    margin-top: 15px;
  }
  .company .column-container .left-area {
    float: none;
  }
  .company .row-container {
    margin-top: 40px;
  }
  .company .row-container .sub-title:not(:nth-child(2)) {
    margin-top: 30px;
  }
  .company .content-info-txt {
    font-size: calc(12px + (16 - 12) * ((100vw - 320px) / (768 - 320))) !important;
  }
  .company .title-container .title {
    font-size: 17px;
  }
  .company .sub-title {
    margin-top: 30px;
    font-size: 15px;
    line-height: 1.3;
    word-break: break-word;
  }
  .company .txt-container {
    margin-top: 20px;
    padding-right: 0;
    padding-left: 0;
  }
  .company .txt-container p {
    display: block;
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0.08em;
    color: #333648;
  }
  .company .txt-container .list.topics-list a {
    font-size: 14px;
  }
  .company .txt-container .outside_list {
    padding-left: 0;
  }
  .company ol {
    margin-left: 20px;
    list-style-position: outside;
  }
  .company ol li {
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0.08em;
    color: #333648;
  }
  .company ol li span {
    font-size: 12px;
  }
  .company ol li:not(:first-child) {
    margin-top: 15px;
  }
  .company .company-table-container .table-row .table-cell-right {
    display: block;
    width: 100%;
  }
  .company .company-table-container .table-row .table-cell-right p {
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0.08em;
    color: #333648;
  }
  .company .company-table-container .table-row .table-cell-left {
    padding: 10px;
    display: block;
    width: 100%;
  }
  .company .company-table-container .table-row .table-cell-left span {
    font-size: 13px;
    line-height: 1.4;
    letter-spacing: 0.08em;
  }
  .company .company-table-container .table-row ol {
    margin-top: 15px;
  }
  .company .occupational-table.sp {
    margin-top: 30px;
    display: table !important;
    border-collapse: collapse;
    width: 100%;
    text-align: center;
  }
  .company .occupational-table.sp th, .company .occupational-table.sp td {
    font-size: 12px;
    font-weight: normal;
    line-height: 1.2;
    letter-spacing: 0.08em;
  }
  .company .occupational-table.sp th {
    padding: 8px 4px;
    width: 30%;
    vertical-align: top;
    border: solid 1px #000;
  }
  .company .occupational-table.sp td {
    padding-right: 4px;
    padding-left: 4px;
    width: 35%;
    border: solid 1px #000;
  }
  .company .occupational-table.sp td .left {
    float: left;
    text-align: center;
    width: 50%;
  }
  .company .occupational-table.sp td .right {
    float: right;
    text-align: center;
    width: 50%;
  }
  .company .banner-container {
    margin-top: 50px;
  }
  .company .banner-container a {
    width: 100%;
  }
  .company .banner-container a img {
    margin: 0 auto;
    display: block;
    width: 100%;
  }
  .company .banner-container a:not(:first-child) {
    margin-top: 15px;
  }
  .company .banner-container a:not(:last-child) {
    margin-right: 15px;
  }
  .company .sidebar .sidebar-header-container {
    margin-top: 40px;
  }
  .company .sidebar .sidebar-header-container .sidebar-title-container .title-icon {
    vertical-align: middle;
  }
  .company .sidebar .sidebar-header-container .sidebar-title-container .title-icon::before {
    width: 20px;
    height: 30px;
    content: "";
    background: url("../images/building-icon-white.png") no-repeat center;
    background-size: contain;
  }
  .company .sidebar .sidebar-header-container .sidebar-title-container .sidebar-title {
    vertical-align: middle;
  }
  /**Company Profile**/
  .company-profile.main-content {
    margin-top: 20px;
    margin-bottom: 50px;
    width: 100%;
    height: 100%;
  }
  .company-profile .content-info-txt {
    font-size: calc(12px + (16 - 12) * ((100vw - 320px) / (768 - 320))) !important;
  }
  .company-profile .row-container {
    margin-top: 40px;
    width: 100%;
    height: 100%;
  }
  .company-profile .row-container .row-content-container,
  .company-profile .row-container .row-content-inner-container {
    margin-top: 0;
  }
  .company-profile .row-container .sub-title {
    margin-top: 30px !important;
    display: block;
    width: 100%;
    font-size: 15px;
  }
  .company-profile .row-container .txt-container {
    display: block;
    width: 100%;
  }
  .company-profile .row-container .txt-container p {
    display: block;
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0.08em;
    color: #333648;
  }
  .company-profile .row-container .date {
    margin-top: 40px;
    font-size: 15px;
  }
  .company-profile .row-container img.profile_ios_pic {
    padding: 0 15px;
    margin-top: 0;
    max-width: 80px;
    width: 100%;
  }
  .company-profile .map-container {
    float: none;
    width: 100%;
  }
  .company-profile .sidebar .sidebar-header-container {
    margin-top: 40px;
  }
  .company-profile .sidebar .sidebar-header-container .sidebar-title-container .title-icon {
    vertical-align: middle;
  }
  .company-profile .sidebar .sidebar-header-container .sidebar-title-container .title-icon::before {
    width: 20px;
    height: 30px;
    content: "";
    background: url("../images/building-icon-white.png") no-repeat center;
    background-size: contain;
  }
  .company-profile .sidebar .sidebar-header-container .sidebar-title-container .sidebar-title {
    vertical-align: middle;
  }
  /**Company Location**/
  .company-location.main-content {
    margin-top: 20px;
    margin-bottom: 50px;
    width: 100%;
    height: 100%;
  }
  .company-location .main-content-inner-container .row-container:last-child .txt-container .contact-container .contact-info {
    margin-top: 15px !important;
  }
  .company-location .content-info-txt {
    font-size: calc(12px + (16 - 12) * ((100vw - 320px) / (768 - 320))) !important;
  }
  .company-location .row-content-container {
    margin-top: 0;
  }
  .company-location .row-container {
    margin-top: 40px;
  }
  .company-location .row-container .txt-container p {
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0.08em;
    color: #333648;
  }
  .company-location .row-container .row-content-inner-container {
    margin-top: 0 !important;
  }
  .company-location .row-container .sub-title {
    margin-top: 30px !important;
    display: block;
    width: 100%;
    font-size: 15px;
  }
  .company-location .row-container .txt-container {
    display: block;
    width: 100%;
  }
  .company-location .contact-container {
    margin-top: 40px;
  }
  .company-location .map-info {
    margin-top: 15px;
    width: 100%;
  }
  .company-location .map-info .map-info-title {
    display: inline-block;
    width: auto;
    margin: 0;
    border: 0;
  }
  .company-location .map-info .map-info-txt {
    display: inline-block;
    width: auto;
    margin: 0;
    border: 0;
  }
  .company-location .map-info span {
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0.08em;
    color: #333648;
  }
  .company-location .map-info-02 {
    margin-top: 15px;
    width: 100%;
  }
  .company-location .map-info-02 .map-info-title {
    display: inline-block;
    width: auto;
    margin: 0;
    border: 0;
  }
  .company-location .map-info-02 .map-info-txt {
    display: inline-block;
    width: auto;
    margin: 0;
    border: 0;
  }
  .company-location .map-info-02 span {
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0.08em;
    color: #333648;
  }
  .company-location .sidebar .sidebar-header-container .sidebar-title-container .sidebar-title {
    vertical-align: middle;
  }
  .sidebar .sidebar-header-container {
    margin-top: 40px;
  }
  .sidebar .sidebar-header-container .sidebar-title-container .title-icon {
    vertical-align: middle;
  }
  .sidebar .sidebar-header-container .sidebar-title-container .title-icon::before {
    width: 20px;
    height: 30px;
    content: "";
    background: url("../images/building-icon-white.png") no-repeat center;
    background-size: contain;
  }
  .sidebar .sidebar-header-container .sidebar-title-container .sidebar-title {
    vertical-align: middle;
  }
}

/*********************************

_products.scss

*********************************/
.products .product-links-wrapper {
  padding-top: 40px;
}

.products .product-links-wrapper .product-links-txt {
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 0.075em;
}

.products .product-links-wrapper .product-links-btns-container {
  margin-top: 50px;
}

.products .product-links-wrapper .product-links-btns-container .product-links-btns-row:not(:first-child) {
  margin-top: 20px;
}

.products .product-links-wrapper .product-links-btns-container .product-links-btns-column {
  width: calc(33.33% - 12px);
  border: 1px solid #e51b23;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.products .product-links-wrapper .product-links-btns-container .product-links-btns-column:not(:last-child) {
  margin-right: 18px;
}

.products .product-links-wrapper .product-links-btns-container .product-links-btns-column a {
  padding: 15px 15px 15px 10px;
  display: block;
  position: relative;
}

.products .product-links-wrapper .product-links-btns-container .product-links-btns-column a:hover .title-container {
  opacity: 0.5;
}

.products .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container {
  margin: 0 auto;
  display: table;
  width: 100%;
  position: relative;
  text-align: center;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.products .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title {
  display: table-cell;
  vertical-align: middle;
  font-size: 15px;
  font-weight: normal;
  text-align: center;
  line-height: 1;
  letter-spacing: 0.04em;
  color: #e51b23;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.products .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title-icon {
  position: absolute;
  top: 40%;
  right: 5px;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.products .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title-icon:before {
  margin: 0;
  width: 12px;
  height: 8px;
  content: "";
  background: url(../images/btn-blue-arrow-down.png) no-repeat 0 0;
  background-size: 12px auto;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.products .product-content-wrapper {
  padding-top: 50px;
}

.products .product-content-wrapper:last-child {
  padding-bottom: 50px;
}

.products .product-content-wrapper .product-title-wrapper {
  border-bottom: 2px solid #e51b23;
}

.products .product-content-wrapper .product-title-container {
  padding: 12px 45px 10px 14px;
  position: relative;
  background-color: #e51b23;
  width: auto;
  display: inline-block;
  line-height: 1;
}

.products .product-content-wrapper .product-title-container .side-edge-white {
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border: 0 solid transparent;
  border-left-width: 24px;
  border-right-width: 0px;
  border-top: 42px solid #fff;
}

.products .product-content-wrapper .product-title-container .product-title {
  width: auto;
  display: inline-block;
  vertical-align: middle;
  font-size: 20px;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #fff;
}

.products .product-content-wrapper .product-title-container .product-title a {
  color: #fff;
}

.products .product-content-wrapper .product-content-container {
  margin-top: 35px;
}

@media screen and (min-width: 769px) {
  .products .product-content-wrapper .product-content-container {
    position: relative;
  }
}

.products .product-content-wrapper .product-content-container .product-sub-title {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 15px;
  position: relative;
  border-left: 5px #e51b23 solid;
  display: inline-block;
  vertical-align: middle;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #e51b23;
}

.products .product-content-wrapper .product-content-container .product-sub-title a {
  color: #e51b23;
}

.products .product-content-wrapper .product-content-container .product-sub-title a:hover {
  text-decoration: underline;
}

.products .product-content-wrapper .product-content-container .product-content-inner-container {
  margin-top: 20px;
  margin-right: 20px;
  margin-left: 20px;
  width: calc(100% - 190px);
  position: relative;
}

.products .product-content-wrapper .product-content-container .product-content-inner-container .product-info-table {
  display: table;
  width: 100%;
}

.products .product-content-wrapper .product-content-container .product-content-inner-container .product-info-table .product-info-row {
  display: table-row;
}

.products .product-content-wrapper .product-content-container .product-content-inner-container .product-info-table .product-info-row .right {
  padding-right: 15px;
  width: 45%;
}

.products .product-content-wrapper .product-content-container .product-content-inner-container .product-info-table .product-info-row .left {
  width: 45%;
}

.products .product-content-wrapper .product-content-container .product-content-inner-container .product-info-table .product-info-row .product-info-cell {
  padding-top: 10px;
  padding-bottom: 10px;
  display: table-cell;
  vertical-align: top;
  line-height: 1;
}

.products .product-content-wrapper .product-content-container .product-content-inner-container .product-info-table .product-info-row .product-info-cell span {
  display: block;
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0.08em;
  color: #333648;
}

.products .product-content-wrapper .product-content-container .product-content-inner-container .product-info-table .product-info-row .product-info-cell span a {
  display: block;
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0.08em;
  color: #e51b23;
}

.product-image-container.left-area.new-product {
  position: relative;
}
.product-image-container.left-area.new-product:before {
  content: '';
  display: block;
  position: absolute;
  top: -12px;
  left: -12px;
  width: 64px;
  height: 64px;
  background: url(../images/products/icon-new.png) no-repeat;
  background-size: 100%;
}

/**Water Suiikei**/
.water-suiikei .product-links-wrapper .product-links-txt {
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 0.075em;
}

.water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-row:not(:first-child) {
  margin-top: 20px;
}

.water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column {
  width: calc(33.33% - 12px);
  border: 1px solid #e51b23;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column:not(:last-child) {
  margin-right: 18px;
}

.water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column a {
  padding: 16px 30px 16px 16px;
  display: block;
}

.water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column a:hover .title-container {
  opacity: 0.5;
}

.water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container {
  margin: 0 auto;
  display: table;
  width: 100%;
  position: relative;
  text-align: center;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title {
  display: table-cell;
  vertical-align: middle;
  font-size: 16px;
  font-weight: normal;
  text-align: center;
  line-height: 1.4;
  letter-spacing: 0.075em;
  color: #e51b23;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title-icon {
  position: absolute;
  top: 40%;
  right: -20px;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title-icon:before {
  margin: 0;
  width: 12px;
  height: 8px;
  content: "";
  background: url(../images/btn-blue-arrow-down.png) no-repeat 0 0;
  background-size: 12px auto;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.water-suiikei .content-info-txt-wrapper .content-info-txt {
  max-width: 60%;
  width: 100%;
}

.water-suiikei .content-info-txt-wrapper .content-info-image {
  margin: 0 auto;
  text-align: center;
  max-width: 30%;
  width: 100%;
}

.water-suiikei .content-info-txt-wrapper .content-info-image.second {
  max-width: 40%;
  width: 100%;
}

.water-suiikei .content-info-txt-wrapper .content-info-image img {
  width: 100%;
}

.water-suiikei .content-info-txt-wrapper.mt20 {
  margin-top: 20px;
}

.water-suiikei .content-info-txt {
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 0.075em;
}

.water-suiikei .btn {
  display: -webkit-flex;
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.water-suiikei .pdf-btn {
  margin-top: 50px;
  padding: 8px 60px 8px 20px;
  position: relative;
  display: table;
  text-align: center;
  background-color: #f2f6f9;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.water-suiikei .pdf-btn:before {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 40px;
  height: 40px;
  background: url("../images/products/water-suiikei/pdf_dl.png");
  background-size: cover;
}

.water-suiikei .pdf-btn:hover {
  background-color: #e51b23;
}

.water-suiikei .pdf-btn:hover .btn-txt {
  color: #fff;
}

.water-suiikei .pdf-btn .btn-txt {
  font-size: 13px;
  color: #e51b23;
  letter-spacing: 0.05em;
  font-weight: bold;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.water-suiikei .row-container {
  margin-top: 80px;
}

.water-suiikei .row-container .product-content-wrapper:not(:first-child) {
  margin-top: 80px;
}

.water-suiikei .product-title-wrapper {
  border-bottom: 2px solid #e51b23;
}

.water-suiikei .product-title-wrapper.mt20 {
  margin-top: 20px;
}

.water-suiikei .product-title-container {
  padding: 12px 45px 10px 14px;
  position: relative;
  background-color: #e51b23;
  width: auto;
  display: inline-block;
  line-height: 1;
}

.water-suiikei .product-title-container .product-title {
  width: auto;
  display: inline-block;
  vertical-align: middle;
  font-size: 20px;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #fff;
}

.water-suiikei .qa-cotnent {
  margin: 20px 0 0;
}

.water-suiikei .qa-cotnent dt {
  margin: 0 0 10px;
  padding: 0 0 0 20px;
  position: relative;
  font-weight: bold;
}

.water-suiikei .qa-cotnent dt:before {
  content: "Q";
  display: block;
  font-weight: bold;
  color: #e51b23;
  position: absolute;
  top: 0;
  left: 0;
}

.water-suiikei .qa-cotnent dd {
  padding: 0 0 0 20px;
  position: relative;
}

.water-suiikei .qa-cotnent dd:before {
  content: "A";
  display: block;
  font-weight: bold;
  color: #ff0000;
  position: absolute;
  top: 0;
  left: 0;
}

.water-suiikei .qa-cotnent dd a {
  color: #e51b23;
}

.water-suiikei table {
  min-width: 800px;
  width: 100%;
  border: 1px solid #a7a7a7;
  margin: 20px 0 0;
  border-left: none;
  font-size: 13px;
  border-collapse: collapse;
}

.water-suiikei table tr th {
  text-align: center;
  vertical-align: center;
  line-height: 1.3em;
  padding: 5px 5px 5px 10px;
  color: #fff;
  border-left: 1px solid #a7a7a7;
  border-bottom: 1px solid #a7a7a7;
  background-color: #333;
}

.water-suiikei table thead tr th {
  font-size: 12px;
}

.water-suiikei table tr th.50p {
  width: 50%;
}

.water-suiikei table tr td {
  text-align: left;
  vertical-align: top;
  line-height: 1.3em;
  padding: 5px 5px 5px 10px;
  border-left: 1px solid #a7a7a7;
  border-bottom: 1px solid #a7a7a7;
}

.water-suiikei table tr td.50p {
  width: 50%;
}

.water-suiikei table tr.color {
  background: #f0f0f0;
}

.water-suiikei .spec-list {
  margin-top: 15px;
}

.water-suiikei .type-list {
  margin-top: 15px;
}

@media screen and (max-width: 768px) {
  .water-suiikei .type-list {
    overflow-x: scroll;
  }
}

.water-suiikei .type-list .type-list-title {
  color: #fff;
  letter-spacing: 1px;
  font-size: 12px;
  padding: 12px 45px 10px 14px;
  margin-bottom: 20px;
  position: relative;
  background-color: #e51b23;
  width: 100%;
  display: block;
  line-height: 1;
}

@media screen and (min-width: 769px) {
  .water-suiikei .type-list .type-list-title {
    font-size: 14px;
    margin-top: 30px;
  }
}

.water-suiikei .type-list .type-list-groupe.second {
  margin-top: 20px;
}

.water-suiikei .type-list .type-list-subtitle {
  font-size: 12px;
  color: #4c4c4c;
}

.water-suiikei .type-list .twocolumn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.water-suiikei .type-list .twocolumn .img {
  display: inline-block;
  width: 320px;
}

.water-suiikei .type-list .twocolumn .img.first {
  width: 350px;
}

.water-suiikei .type-list .twocolumn .img.first img {
  width: 350px;
}

.water-suiikei .type-list .twocolumn .img.second {
  width: 320px;
}

.water-suiikei .type-list .twocolumn .img.second img {
  width: 320px;
}

.water-suiikei .type-list .list {
  margin: 0px 10px 25px 4px;
}

.water-suiikei .type-list .list .item {
  margin: 0px 0px 8px 0px;
  padding: 0px 0px 0px 10px;
  background: url("../images/products/common/list-title-dots.png") no-repeat left center;
  position: relative;
  font-size: 12px;
  color: #336699;
  line-height: 1.3em;
  list-style: none;
}

.water-suiikei .type-list .extra {
  margin: 0px 0px 10px;
  padding: 2px 0px 2px 10px;
  background: url("../images/products/common/list-title-dots.png") no-repeat left center white;
  border-bottom: 1px dashed #a7a7a7;
  font-size: 12px;
  color: #336699;
  line-height: 18px;
}

.water-suiikei .type-list .middle-img {
  margin-top: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.water-suiikei .type-list .middle-img .text {
  margin: 0 auto;
  padding-top: 30px;
  padding-left: 10px;
  width: 600px;
}

.water-suiikei .specific-list.mt20 {
  margin-top: 20px;
}

.water-suiikei .processSubSectionBox {
  margin: 0;
  display: -webkit-flex;
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  clear: both;
  overflow: hidden;
  border: #999999 1px solid;
  padding: 10px;
}

.water-suiikei .processSubSectionBox .processClose {
  float: right;
}

.water-suiikei .processSubSectionBox .processTxt {
  clear: right;
  float: right;
  width: 380px;
}

.water-suiikei .processSubSectionBox .processTxt strong {
  background: url("../images/ttl02_bottom.gif") 0 0 repeat-x;
  background-position: bottom;
  padding-bottom: 10px;
  margin-bottom: 10px;
  margin-top: 5px;
  width: 380px;
}

.water-suiikei .processSubSectionBox .processTxt strong span {
  background: url("../images/ttl01_ico.gif") 5px 3px no-repeat;
  padding-left: 25px;
  font-size: 15px;
  font-weight: bold;
  color: #545454;
}

.water-suiikei .processSubSectionBox .processTxt p {
  float: right;
  clear: right;
  margin-top: 10px;
}

.water-suiikei .processSubSectionBox .processTxt p.linkR a {
  padding-left: 12px;
}

.water-suiikei .processSubSectionBox .processTxt p.linkR .blank {
  background: url("../images/blank_ico.gif") right 0.2em no-repeat;
  padding-right: 18px;
}

.water-suiikei .processBox {
  margin-top: 20px;
  margin-right: 8px;
  margin-bottom: 20px;
  border: #999999 10px solid;
  overflow: hidden;
  /*background: url("../images/products/keiryo-weighing-system/linkmap00.jpg") 2px 2px no-repeat;*/
  width: 560px;
}

.water-suiikei .map_pop {
  background-repeat: no-repeat;
  overflow: auto;
  padding: 10px;
  height: auto;
  width: 600px;
  display: none;
  background-color: white;
  border: 4px solid #cccccc;
  position: absolute;
  z-index: 10001;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.water-suiikei .map_pop.modal-active {
  display: block;
}

.water-suiikei .overlay {
  z-index: 10000;
  position: fixed;
  top: 0px;
  left: 0px;
  background-color: black;
  display: none;
  opacity: 0.85;
  height: 100%;
  width: 100%;
}

.water-suiikei .overlay.modal-active {
  display: block;
}

.water-suiikei .history-list {
  list-style-type: none;
  margin: 20px 0 0;
  padding: 0;
}

.water-suiikei .history-list li {
  border-bottom: 1px solid #eee;
  margin: 0 0 20px;
  padding: 0 0 20px;
  font-size: 14px;
  line-height: 1.8em;
}

.water-suiikei .history-list li em {
  color: #e51b23;
  font-style: normal;
  font-weight: bold;
}

.water-suiikei .txt-container a {
  color: #e51b23;
}

.water-suiikei .txt-container a.link-btn {
  text-decoration: underline;
}

.water-suiikei .txt-container a:hover {
  opacity: 0.7;
}

.water-suiikei .info-area {
  margin: 20px 0 0;
  padding: 20px;
  border: 1px solid #ccc;
  background-color: #f0f0f0;
  font-size: 13px;
}

.water-suiikei .info-area em {
  font-size: 15px;
  font-weight: bold;
  font-style: normal;
}

.water-suiikei .info-area img.icon-flag {
  width: 30px;
}

.water-suiikei .side-edge-white {
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 0;
  border: 0 solid transparent;
  border-left-width: 24px;
  border-right-width: 0px;
  border-top: 42px solid #fff;
}

.water-suiikei .product-content-wrapper .product-content-container {
  margin-top: 40px;
}

.water-suiikei .product-content-wrapper .product-content-container:not(:nth-child(2)) {
  margin-top: 60px;
}

.water-suiikei .product-content-wrapper .product-content-container .image {
  margin: 60px auto 0;
  width: 600px;
}

.water-suiikei .product-content-wrapper .product-content-container .image img {
  width: 100%;
}

.water-suiikei .product-content-wrapper dl.product-point {
  margin-top: 30px;
}

.water-suiikei .product-content-wrapper dl .red {
  color: red;
}

.water-suiikei .product-content-wrapper dl dt {
  margin-bottom: 5px;
  padding-bottom: 1px;
  border-bottom: 1px solid #2f72a9;
}

.water-suiikei .product-content-wrapper dl dd {
  margin: 0px 5px 15px 5px;
  color: #336699;
  line-height: 1.4em;
  font-weight: bold;
}

.water-suiikei .product-content-wrapper dl dd.red {
  color: red;
}

.water-suiikei .product-content-wrapper dl dd.spec-download li {
  margin-bottom: 3px;
  font-weight: normal;
  list-style: none;
}

.water-suiikei .product-content-wrapper dl dd.spec-download li img {
  margin-left: 5px;
  vertical-align: 0px;
}

.water-suiikei .product-content-wrapper dl dd.spec-download li a {
  margin-right: 5px;
}

.water-suiikei .product-content-wrapper .product-list .product-list_item {
  position: relative;
  padding-left: 15px;
  color: #336699;
  margin-bottom: 5px;
}

.water-suiikei .product-content-wrapper .product-list .product-list_item::before {
  content: '';
  width: 6px;
  height: 10px;
  background: #e51b23;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.water-suiikei .product-content-container .sub-title {
  margin-top: 0;
}

.water-suiikei .product-content-container .sub-title.twoRow {
  line-height: 1.5;
}

.water-suiikei .product-content-container .sys_txt {
  margin-top: 20px;
}

.water-suiikei .product-content-container .product-info {
  margin-top: 40px;
}

@media screen and (max-width: 768px) {
  .water-suiikei .product-content-container .product-info_row .product-image-container {
    margin-bottom: 20px;
  }
}

@media screen and (min-width: 769px) {
  .water-suiikei .product-content-container .product-info.setsubi_sensor {
    margin-top: 20px;
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 768px) {
  .water-suiikei .product-content-container .product-info.setsubi_sensor {
    margin-top: 15px;
    margin-bottom: 20px;
  }
}

.water-suiikei .product-content-container .product-image-container {
  margin-right: 40px;
  max-width: 30%;
  width: 100%;
}

.water-suiikei .product-content-container .product-image-container img {
  margin: 0 auto;
  width: 100%;
  display: block;
}

.water-suiikei .product-content-container .btn-container {
  margin-top: 80px;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  text-align: left;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.water-suiikei .product-content-container .btn-container a {
  display: inline-block;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.water-suiikei .product-content-container .btn-container a:first-child {
  margin-right: 10px;
}

.water-suiikei .product-content-container .btn-container .left-area {
  margin-right: 20px;
  width: calc(50% - 10px);
}

.water-suiikei .product-content-container .btn-container .right-area {
  width: calc(50% - 10px);
}

.water-suiikei .product-content-container .btn-container .btn {
  min-width: 200px;
  margin-bottom: 10px;
  float: none;
  margin-right: 0;
}

.water-suiikei .product-content-container .btn-container .pdf-btn {
  margin-right: 0;
  margin-top: 0;
  height: 40px;
}

.water-suiikei .product-content-container .btn-container .pdf-btn::before {
  background: #e51b23 url("../images/pdf_dl.png") center no-repeat;
  background-size: contain;
  height: 40px;
}

.water-suiikei .product-content-container .btn-container .btn_big .pdf-btn {
  height: 100%;
}

.water-suiikei .product-content-container .btn-container .btn_big .pdf-btn::before {
  height: 100%;
}

.water-suiikei .product-content-container .btn-container.pdf-btn_area {
  margin-left: 0;
}

.water-suiikei .product-content-container .btn-container.pdf-btn_area .btn {
  min-width: auto;
  margin-right: 40px;
}

.water-suiikei .product-content-container .btn-container.pdf-btn_area .btn:last-child {
  margin-right: 0;
}

.water-suiikei .product-content-container .btn-container.pdf-btn_area .btn a {
  margin-right: 0;
}

.water-suiikei .product-content-container .product-desc-container {
  max-width: calc(70% - 40px);
  width: 100%;
}

.water-suiikei .product-content-container .product-desc-container p {
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: #333648;
}

.water-suiikei .product-content-container .product-desc-container p.product-content-feature {
  margin-top: 15px;
  font-size: 15px;
}

.water-suiikei .detail {
  margin: 0px 0px 10px 0px;
  padding: 3px 0px 3px 10px;
  background: none;
  background-color: #999999;
  font-size: 12px;
  color: white;
  line-height: 18px;
  clear: both;
}

.water-suiikei .middle-img {
  margin-top: 20px;
  display: -webkit-flex;
  display: -ms-flex;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.water-suiikei .middle-img:first-child {
  margin-top: 0;
}

.water-suiikei .middle-img .text {
  padding-top: 20px;
  padding-left: 30px;
}

.water-suiikei .middle-img .text .extra {
  margin: 0px 0px 10px;
  padding: 2px 0px 2px 12px;
  position: relative;
  color: #336699;
  font-size: 17px;
  line-height: 18px;
}

.water-suiikei .middle-img .text .extra:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 5px;
  height: 10px;
  background: #008ec5;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.water-suiikei .middle-img .text .comment {
  font-size: 15px;
  line-height: 18px;
}

.water-suiikei .spec-table,
.water-suiikei .load-table {
  margin-bottom: 20px;
  border: 1px solid #a7a7a7;
  border-left: none;
}

@media screen and (max-width: 768px) {
  .water-suiikei .spec-table,
  .water-suiikei .load-table {
    overflow-x: scroll;
  }
}

.water-suiikei .spec-table.bb-none tr th,
.water-suiikei .load-table.bb-none tr th {
  border-bottom: none;
}

.water-suiikei .spec-table tr td img,
.water-suiikei .load-table tr td img {
  margin-left: 5px;
}

.water-suiikei .spec-table tr.white th,
.water-suiikei .load-table tr.white th {
  text-align: left;
  vertical-align: top;
  line-height: 1.3em;
  padding: 5px 5px 5px 10px;
  border-left: 1px solid #a7a7a7;
  background-color: #fff;
  color: #000;
}

.water-suiikei .spec-table tr.white th.text,
.water-suiikei .load-table tr.white th.text {
  display: inline-block;
  width: 50%;
}

.water-suiikei .spec-table tr.white th.text.none,
.water-suiikei .load-table tr.white th.text.none {
  display: table-cell;
  width: auto;
}

.water-suiikei .spec-table tr.white td,
.water-suiikei .load-table tr.white td {
  text-align: left;
  vertical-align: top;
  line-height: 1.3em;
  padding: 5px 5px 5px 10px;
  border-left: 1px solid #a7a7a7;
}

.water-suiikei .spec-table tr.white td.text,
.water-suiikei .load-table tr.white td.text {
  width: 50%;
}

.water-suiikei .spec-table tr.color th, .water-suiikei .spec-table tr.color td,
.water-suiikei .load-table tr.color th,
.water-suiikei .load-table tr.color td {
  background: #f0f0f0;
}

.water-suiikei .spec-table tr.color th,
.water-suiikei .load-table tr.color th {
  padding: 5px 5px 5px 10px;
  text-align: left;
  vertical-align: top;
  border-left: 1px solid #a7a7a7;
  color: #000;
  line-height: 1.3em;
}

.water-suiikei .spec-table tr.color th.text,
.water-suiikei .load-table tr.color th.text {
  display: inline-block;
  width: 50%;
}

.water-suiikei .spec-table tr.color th.text.none,
.water-suiikei .load-table tr.color th.text.none {
  display: table-cell;
  width: auto;
}

.water-suiikei .spec-table tr.color td,
.water-suiikei .load-table tr.color td {
  padding: 5px 5px 5px 10px;
  text-align: left;
  vertical-align: top;
  border-left: 1px solid #a7a7a7;
  line-height: 1.3em;
}

.water-suiikei .spec-table tr.color td.text,
.water-suiikei .load-table tr.color td.text {
  width: 50%;
}

.water-suiikei .spec-table tr a,
.water-suiikei .load-table tr a {
  color: #336699;
}

.water-suiikei .sidebar .sidebar-title-container
.sidebar-title {
  vertical-align: middle !important;
}

.water-suiikei .sidebar .title-icon {
  vertical-align: middle;
}

.water-suiikei .sidebar .title-icon:before {
  width: 24px;
  height: 30px;
  content: "";
  background: url("../images/paper-icon-white.png") no-repeat 0 0;
  background-size: 24px auto;
}

.water-suiikei .setsubi-contact-title {
  margin-top: 20px;
}

.water-suiikei .ta4 {
  border: 1px solid #999999;
  width: 490px;
  margin-top: 0.5em;
  margin-bottom: 1em;
}

.water-suiikei .ta4 td {
  padding: 5px;
  vertical-align: top;
}

.water-suiikei .ta4 td .setsubi-mailto {
  margin-top: 5px;
  margin-bottom: 5px;
  display: block;
}

.water-suiikei .ta4 h3 {
  color: #000080;
  border-bottom: 1px dotted #999999;
  font-size: 100%;
  background: url("../images/arrow1.jpg") no-repeat left 5px;
  padding-left: 18px;
  line-height: 1.7em;
}

.division-index .row-container {
  margin-top: 20px;
}

.division-index .product-title-wrapper {
  margin: 0 0 20px;
}

.division-index .description {
  margin: 0 0 20px;
  font-size: 15px;
  line-height: 1.5em;
}

.division-index .list-img {
  margin: 0 0 20px;
}

.division-index .list-img img {
  max-width: 100%;
  height: auto;
  max-height: 800px;
  vertical-align: middle;
}

.division-index .list-img video {
  width: 100%;
}

.division-index .product-list {
  margin: 0 0 50px;
  padding: 0;
  list-style-type: none;
  overflow: hidden;
}

.division-index .product-list li {
  float: left;
  width: calc(33.333333% - 14px);
  margin: 0 20px 20px 0;
}

.division-index .product-list li:nth-of-type(3n) {
  margin: 0 0 20px;
}

.division-index .product-list li a {
  display: inline-block;
  width: 100%;
  height: 100%;
  color: #000;
}

.division-index .product-list li a:hover {
  opacity: 0.8;
}

.division-index .product-list li a[data-lightbox="fuga"] {
  display: inline;
}

.division-index .product-list li a img {
  width: 100%;
  height: auto;
  vertical-align: middle;
}

.division-index .product-list li a .product-list_remarks {
  font-size: 11px;
}

.division-index .menu .list {
  margin: 0 0 20px;
  padding: 0;
  list-style-type: none;
  overflow: hidden;
}

.division-index .menu .list .item {
  float: left;
  width: calc(50% - 10px);
  margin: 0 20px 20px 0;
}

.division-index .menu .list .item:nth-of-type(2n) {
  margin: 0 0 20px;
}

.division-index .menu .list .item a {
  display: inline-block;
  width: 100%;
  height: 100%;
  padding: 20px;
  background-color: #f2f6f9;
  text-align: center;
  color: #000;
}

.division-index .menu .list .item a:hover {
  opacity: 0.8;
}

.division-index .menu .list .item a img {
  max-width: 50px;
  height: auto;
  vertical-align: middle;
}

.division-index .menu .list .item a .title {
  font-size: 18px;
  font-weight: bold;
  margin: 0 0 10px;
}

.division-index .menu .list .item a .btn {
  display: inline-block;
  color: #fff;
  padding: 10px 60px;
  width: 100%;
  text-align: center;
  background-color: #333648;
  background-image: url(../img/common/btn-white-arrow.png);
  background-repeat: no-repeat;
  background-position: left 120px center;
  background-size: 7px;
}

@media only screen and (min-width: 769px) and (max-width: 1440px) {
  .water-suiikei .product-content-container .btn-container.pdf-btn_area .btn {
    margin-right: 20px;
  }
  .btn_big {
    width: 100%;
  }
  .btn_big .pdf-btn {
    max-width: 343px;
    width: 100%;
  }
  .btn_big br {
    display: none;
  }
  .water-suiikei .product-content-container .btn-container.pdf-btn_area .btn:nth-child(2) {
    margin-right: 0;
  }
  .water-suiikei table {
    min-width: auto;
  }
}

/**SP**/
@media only screen and (max-width: 768px) {
  .products .product-links-wrapper {
    padding-top: 20px;
  }
  .products .product-links-wrapper .product-links-txt {
    font-size: calc(12px + (16 - 12) * ((100vw - 320px) / (768 - 320))) !important;
    line-height: 1.5;
    letter-spacing: 0.075em;
  }
  .products .product-links-wrapper .product-links-btns-container {
    margin-top: 40px;
  }
  .products .product-links-wrapper .product-links-btns-container .product-links-btns-row:not(:first-child) {
    margin-top: 20px;
  }
  .products .product-links-wrapper .product-links-btns-container .product-links-btns-column {
    width: 100%;
    border: 1px solid #e51b23;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .products .product-links-wrapper .product-links-btns-container .product-links-btns-column:not(:last-child) {
    margin-right: 0;
  }
  .products .product-links-wrapper .product-links-btns-container .product-links-btns-column:not(:first-child) {
    margin-top: 20px;
  }
  .products .product-links-wrapper .product-links-btns-container .product-links-btns-column a {
    padding: 16px 16px;
    display: block;
  }
  .products .product-links-wrapper .product-links-btns-container .product-links-btns-column a:hover .title-container {
    opacity: 0.5;
  }
  .products .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container {
    margin: 0 auto;
    display: table;
    width: 100%;
    position: relative;
    text-align: center;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .products .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title {
    display: table-cell;
    vertical-align: middle;
    font-size: 16px;
    font-weight: normal;
    text-align: center;
    line-height: 1;
    letter-spacing: 0.075em;
    color: #e51b23;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .products .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title-icon {
    position: absolute;
    top: 40%;
    right: 0;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .products .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title-icon:before {
    margin: 0;
    width: 12px;
    height: 8px;
    content: "";
    background: url(../images/btn-blue-arrow-down.png) no-repeat 0 0;
    background-size: 12px auto;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .products .product-content-wrapper {
    padding-top: 50px;
  }
  .products .product-content-wrapper:last-child {
    padding-bottom: 50px;
  }
  .products .product-content-wrapper .product-title-wrapper {
    border-bottom: 2px solid #e51b23;
  }
  .products .product-content-wrapper .product-title-container {
    padding: 12px 45px 10px 14px;
    position: relative;
    background-color: #e51b23;
    width: auto;
    display: inline-block;
    line-height: 1;
    max-width: 92%;
    height: 56px;
    display: flex;
    align-items: center;
  }
  .products .product-content-wrapper .product-title-container .side-edge-white {
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 100%;
    border: 0 solid transparent;
    border-left-width: 24px;
    border-right-width: 0px;
    border-top: 57px solid #fff;
  }
  .products .product-content-wrapper .product-title-container .product-title {
    width: auto;
    display: inline-block;
    vertical-align: middle;
    font-size: 15px;
    font-weight: normal;
    line-height: 1.25;
    letter-spacing: 0.05em;
    color: #fff;
    flex: 0 1 auto;
  }
  .products .product-content-wrapper .product-content-container {
    margin-top: 35px;
  }
  .products .product-content-wrapper .product-content-container .product-sub-title {
    font-size: 15px;
  }
  .products .product-content-wrapper .product-content-container .product-content-inner-container {
    margin-top: 20px;
    margin-right: 10px;
    margin-left: 10px;
    width: calc(100% - 20px);
  }
  .products .product-content-wrapper .product-content-container .product-content-inner-container .product-info-table {
    display: table;
    width: 100%;
  }
  .products .product-content-wrapper .product-content-container .product-content-inner-container .product-info-table .product-info-row {
    display: table-row;
  }
  .products .product-content-wrapper .product-content-container .product-content-inner-container .product-info-table .product-info-row .right {
    padding-right: 15px;
    width: 45%;
  }
  .products .product-content-wrapper .product-content-container .product-content-inner-container .product-info-table .product-info-row .left {
    width: 60%;
  }
  .products .product-content-wrapper .product-content-container .product-content-inner-container .product-info-table .product-info-row .sp-full-width {
    padding-right: 0 !important;
    width: 100% !important;
  }
  .products .product-content-wrapper .product-content-container .product-content-inner-container .product-info-table .product-info-row .product-info-cell {
    padding-top: 10px;
    padding-bottom: 10px;
    display: block;
    vertical-align: top;
    line-height: 1;
    width: 100%;
  }
  .products .product-content-wrapper .product-content-container .product-content-inner-container .product-info-table .product-info-row .product-info-cell span {
    display: block;
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0.08em;
    color: #333648;
  }
  .water-suiikei.main-content {
    margin-top: 20px;
    margin-bottom: 50px;
    width: 100%;
    height: 100%;
  }
  .water-suiikei .product-links-wrapper .product-links-txt {
    font-size: calc(12px + (16 - 12) * ((100vw - 320px) / (768 - 320))) !important;
    line-height: 1.5;
    letter-spacing: 0.075em;
  }
  .water-suiikei .product-links-wrapper .product-links-btns-container {
    margin-top: 20px;
  }
  .water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-row:not(:first-child) {
    margin-top: 20px;
  }
  .water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column {
    width: 100%;
    border: 1px solid #e51b23;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column:not(:last-child) {
    margin-right: 0;
  }
  .water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column:not(:first-child) {
    margin-top: 20px;
  }
  .water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column a {
    padding: 16px 16px;
    display: block;
  }
  .water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column a:hover .title-container {
    opacity: 0.5;
  }
  .water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container {
    margin: 0 auto;
    display: table;
    width: 100%;
    position: relative;
    text-align: center;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title {
    display: table-cell;
    vertical-align: middle;
    font-size: 16px;
    font-weight: normal;
    text-align: center;
    letter-spacing: 0.075em;
    color: #e51b23;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title-icon {
    position: absolute;
    top: 40%;
    right: 0;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .water-suiikei .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title-icon:before {
    margin: 0;
    width: 12px;
    height: 8px;
    content: "";
    background: url(../images/btn-blue-arrow-down.png) no-repeat 0 0;
    background-size: 12px auto;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .water-suiikei .type-list .middle-img {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .water-suiikei .type-list .middle-img .text {
    margin: inherit;
    padding-top: 0;
    padding-left: 0;
    width: auto;
  }
  .water-suiikei .type-list.none-scroll .spec-table {
    min-width: auto;
  }
  .water-suiikei .content-info-txt-wrapper .content-info-txt {
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0.075em;
    max-width: 100%;
    float: none;
  }
  .water-suiikei .content-info-txt-wrapper .content-info-image {
    max-width: 300px;
    width: 80%;
    float: none;
  }
  .water-suiikei .content-info-txt-wrapper .content-info-image.second {
    max-width: 100%;
  }
  .water-suiikei .pdf-btn {
    margin-top: 40px;
    padding: 10px 50px 10px 10px;
  }
  .water-suiikei .pdf-btn .btn-txt {
    font-size: 12px;
  }
  .water-suiikei .row-container {
    margin-top: 20px;
  }
  .water-suiikei .row-container .product-content-wrapper:not(:first-child) {
    margin-top: 50px;
  }
  .water-suiikei .row-container .product-content-wrapper .product-content-container .image {
    width: 100%;
  }
  .water-suiikei .side-edge-white {
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    border: 0 solid transparent;
    border-left-width: 24px;
    border-right-width: 0px;
    border-top: 45px solid #fff;
  }
  .water-suiikei .product-title-container {
    padding: 12px 25px 10px 14px;
  }
  .water-suiikei .product-title-container .product-title {
    font-size: 17px;
    line-height: 1.4;
  }
  .water-suiikei .product-content-container .product-info {
    margin-top: 20px;
  }
  .water-suiikei .product-content-container .sub-title {
    font-size: 15px;
    line-height: 1.4;
  }
  .water-suiikei .product-content-container .product-desc-container {
    margin-top: 20px;
  }
  .water-suiikei .product-content-container .product-desc-container p {
    font-size: 14px !important;
  }
  .water-suiikei .product-content-container .product-image-container,
  .water-suiikei .product-content-container .product-desc-container {
    margin-right: 0;
    float: none;
    width: 100%;
    max-width: 100%;
  }
  .water-suiikei .btn-container {
    margin-top: 20px;
  }
  .water-suiikei .btn-container .left-area,
  .water-suiikei .btn-container .right-area {
    margin-right: 0;
    width: 100%;
    float: none;
  }
  .water-suiikei .btn-container .left-area {
    margin-top: 20px;
  }
  .water-suiikei .btn-container .right-area {
    margin-top: 20px;
  }
  .water-suiikei .btn-container .btn {
    max-width: calc((100% / 2) - 5px);
    width: 100%;
    min-width: auto !important;
  }
  .water-suiikei .btn-container .btn:first-child {
    margin-right: 10px;
  }
  .water-suiikei .btn-container .btn_big {
    max-width: 100%;
  }
  .water-suiikei .btn-container .btn_big br {
    display: none;
  }
  .water-suiikei .btn-container .btn_big .pdf-btn {
    width: 100%;
  }
  .water-suiikei .btn-container .pdf-btn {
    padding-right: 40px;
    width: 100%;
    height: 100% !important;
  }
  .water-suiikei .btn-container .pdf-btn::before {
    width: 30px;
    height: 100% !important;
  }
  .water-suiikei .btn-container.btn-container.pdf-btn_area {
    margin-left: 0;
  }
  .water-suiikei .btn-container.btn-container.pdf-btn_area .btn {
    min-width: auto;
    margin-right: 0;
  }
  .water-suiikei .btn-container.btn-container.pdf-btn_area .btn:first-child {
    margin-right: 10px;
  }
  .water-suiikei.setsubi-contact .ta4 {
    width: 100%;
  }
  .water-suiikei.setsubi-contact table {
    min-width: 100%;
  }
  .division-index .product-list {
    margin: 0 0 40px;
  }
  .division-index .product-list li {
    width: calc(50% - 10px);
    margin: 0 20px 20px 0;
  }
  .division-index .product-list li:nth-of-type(3n) {
    margin: 0 20px 20px 0;
  }
  .division-index .product-list li:nth-of-type(2n) {
    margin: 0 0 20px;
  }
  .division-index .menu .list .item {
    float: left;
    width: 100%;
    margin: 0 20px 20px 0;
  }
  .division-index .menu .list .item:nth-of-type(2n) {
    margin: 0 0 20px;
  }
  .division-index .menu .list .item a {
    display: inline-block;
    width: 100%;
    height: 100%;
    padding: 10px;
  }
  .division-index .menu .list .item a .title {
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 10px;
  }
  .division-index .menu .list .item a .btn {
    background-position: left 20px center;
  }
  .division-index .ta4 {
    width: 100%;
    min-width: auto;
  }
  .division-index .form {
    margin-top: 10px;
  }
  .division-index .form input:last-child {
    margin-top: 5px;
  }
}

@media only screen and (max-width: 348px) {
  .water-suiikei .product-title-container .product-title {
    font-size: 15px !important;
  }
  .water-suiikei .side-edge-white {
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    border: 0 solid transparent;
    border-left-width: 24px;
    border-right-width: 0px;
    border-top: 64px solid #fff;
  }
}

/*********************************

2018.12.12 サポート&コンタクト　追加

*********************************/
@media screen and (min-width: 769px) {
  .oceanContact {
    margin-top: 30px;
    padding-top: 15px;
  }
}

@media screen and (max-width: 768px) {
  .oceanContact {
    margin-top: 15px;
    padding-top: 7px;
  }
}

.oceanContact h4 {
  line-height: 1.2;
  font-weight: bold;
  color: #990000;
}

@media screen and (min-width: 769px) {
  .oceanContact h4 {
    font-size: 140%;
    padding-bottom: 5px;
    border-bottom: 2px solid #990000;
    margin-bottom: 15px;
  }
}

@media screen and (max-width: 768px) {
  .oceanContact h4 {
    font-size: 100%;
    margin-bottom: 7px;
    padding-bottom: 2px;
    border-bottom: 1px solid #990000;
  }
}

@media screen and (min-width: 769px) {
  .contact__inner {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 768px) {
  .contact__inner {
    margin-bottom: 15px;
  }
}

@media screen and (min-width: 769px) {
  .contact__inner__mail {
    width: 240px;
    height: 21px;
  }
}

.contact__inner dl {
  width: 100%;
}

@media screen and (min-width: 769px) {
  .contact__inner dl {
    display: table;
  }
}

.contact__inner dt {
  border-top: 1px solid #CCC;
  border-right: 1px solid #CCC;
  border-left: 1px solid #CCC;
  background: #f1f1f1;
}

@media screen and (min-width: 769px) {
  .contact__inner dt {
    width: 20%;
    padding: 10px;
    text-align: left;
    vertical-align: top;
    font-weight: normal;
    display: table-cell;
  }
}

@media screen and (max-width: 768px) {
  .contact__inner dt {
    width: 100%;
    padding: 6px;
  }
}

.contact__inner dl:last-child {
  border-bottom: 1px solid #CCC;
}

@media screen and (min-width: 769px) {
  .contact__inner dd {
    border-top: 1px solid #CCC;
    border-right: 1px solid #CCC;
    width: calc(100% - 20%);
    padding: 10px;
    display: table-cell;
  }
}

@media screen and (max-width: 768px) {
  .contact__inner dd {
    border-top: 1px solid #CCC;
    border-right: 1px solid #CCC;
    border-left: 1px solid #CCC;
    width: 100%;
    padding: 6px;
  }
}

@media screen and (min-width: 769px) {
  .contact__inner iframe {
    width: 550px;
    height: 550px;
  }
}

@media screen and (max-width: 768px) {
  .contact__inner iframe {
    width: 100%;
  }
}

#Agent p {
  border-bottom: 1px dashed #999;
}

@media screen and (min-width: 769px) {
  #Agent p {
    margin-bottom: 15px;
    padding-bottom: 15px;
  }
}

@media screen and (max-width: 768px) {
  #Agent p {
    padding-top: 4px;
    padding-bottom: 4px;
  }
}

#Agent p img {
  width: 20px;
  height: auto;
  margin-left: 4px;
  padding-top: 2px;
}

/*********************************

2018.12.12 センサ原理紹介　追加

*********************************/
@media screen and (min-width: 769px) {
  .pdf-archive {
    width: 250px;
  }
}

.pdf-archive .pdf-btn {
  background-color: #fff;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
  position: relative;
  display: block;
}

.pdf-archive .pdf-btn::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - 2px);
  height: calc(100% - 2px);
  border: 1px solid #000;
  z-index: 1;
}

@media screen and (min-width: 769px) {
  .pdf-archive .pdf-btn {
    width: 100%;
    margin-top: 10px;
    padding: 8px 0px 0px 8px;
    text-align: left;
    height: 40px;
  }
}

/*********************************

2019.03.05 製品説明　ポイント

*********************************/
@media screen and (min-width: 769px) {
  .product_detail {
    margin-top: 15px;
  }
}

@media screen and (max-width: 768px) {
  .product_detail {
    margin-top: 8px;
  }
}

@media screen and (min-width: 769px) {
  .product_detail__list {
    margin-bottom: 15px;
  }
}

@media screen and (max-width: 768px) {
  .product_detail__list {
    margin-bottom: 10px;
  }
}

.product_detail__list:last-child {
  margin-bottom: 0;
}

.product_detail__list__number {
  background-color: #e51b23;
  color: #fff;
}

@media screen and (min-width: 769px) {
  .product_detail__list__number {
    padding: 3px 6px;
  }
}

@media screen and (max-width: 768px) {
  .product_detail__list__number {
    font-size: 12px;
    padding: 2px 4px;
  }
}

@media screen and (min-width: 769px) {
  .product_detail__list__text {
    margin-top: 4px;
    padding-left: 4px;
  }
}

@media screen and (max-width: 768px) {
  .product_detail__list__text {
    margin-top: 3px;
    padding-left: 3px;
  }
}

/*********************************

計量事業部

*********************************/
@media screen and (min-width: 769px) {
  .product-content-wrap {
    margin-top: 15px;
  }
}

@media screen and (max-width: 768px) {
  .product-content-wrap {
    margin-top: 10px;
  }
}

.product-content-container-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  color: #e51b23;
}

@media screen and (min-width: 769px) {
  .product-content-container-link:hover {
    opacity: 0.5;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

@media screen and (min-width: 769px) {
  .keiryo_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 20px;
    margin-bottom: 20px;
    width: 100%;
  }
}

@media screen and (min-width: 769px) {
  .keiryo_wrap .spec-list {
    width: 48%;
    margin-top: 0;
    flex: 1 0 48%;
  }
}

@media screen and (min-width: 769px) {
  .keiryo_wrap_product-point {
    width: 48%;
    flex: 1 0 48%;
    margin-left: 4%;
  }
}

@media screen and (min-width: 769px) {
  .detail_text {
    margin-bottom: 15px;
  }
}

@media screen and (max-width: 768px) {
  .detail_text {
    margin-bottom: 10px;
  }
}

@media screen and (min-width: 769px) {
  .text_margin {
    margin-top: 20px;
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 768px) {
  .text_margin {
    margin-top: 10px;
    margin-bottom: 10px;
  }
}

/*********************************

製品一覧の背景画像

*********************************/
@media screen and (min-width: 769px) {
  .bg_mask {
    height: 178px;
    width: 178px;
    position: absolute;
    top: 0px;
    right: 0;
  }
}

@media screen and (min-width: 769px) {
  .bg_mask_irregular {
    height: 238px;
    width: 238px;
    position: absolute;
    top: -100px;
    right: 0;
  }
}

@media screen and (min-width: 769px) {
  .bg_mask_irregular2 {
    height: 198px;
    width: 198px;
    position: absolute;
    top: 100px;
    right: 0;
  }
}

@media screen and (min-width: 769px) {
  .bg_mask_irregular3 {
    height: 178px;
    width: 178px;
    position: absolute;
    top: -20px;
    right: 0;
  }
}

/********************

********************/
.keiryo_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.keiryo_bg::after {
  content: "";
  background-image: url(../images/products/water-suiikei/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.suii_oyo_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.suii_oyo_bg::after {
  content: "";
  background-image: url(../images/products/water-ouyo/product-img-02.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.suishitu_kanshi_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.suishitu_kanshi_bg::after {
  content: "";
  background-image: url(../images/products/water-monitoring/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.sanran_koshiki_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.sanran_koshiki_bg::after {
  content: "";
  background-image: url(../images/products/water-odei/product-img-03.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.yuki_osen_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.yuki_osen_bg::after {
  content: "";
  background-image: url(../images/products/water-uvmeter/image01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.nadh_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.nadh_bg::after {
  content: "";
  background-image: url(../images/products/water-nadh/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.setsubi_shindan_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.setsubi_shindan_bg::after {
  content: "";
  background-image: url(../images/products/setsubi-sindan/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.atsuden_shindo_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.atsuden_shindo_bg::after {
  content: "";
  background-image: url(../images/products/setsubi-sensor/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.airleak_viewer_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.airleak_viewer_bg::after {
  content: "";
  background-image: url(../images/products/setsubi-airleak/product-img-05.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.online_teppun_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.online_teppun_bg::after {
  content: "";
  background-image: url(../images/products/setsubi-noudo/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.onpa_atsusa_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.onpa_atsusa_bg::after {
  content: "";
  background-image: url(../images/products/setsubi-onpa/ti-100k.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.handy_katasa_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.handy_katasa_bg::after {
  content: "";
  background-image: url(../images/products/atsusa-handy/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.bolt_shiken_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.bolt_shiken_bg::after {
  content: "";
  background-image: url(../images/products/setsubi-shiken/bis.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.crane_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.crane_bg::after {
  content: "";
  background-image: url(../images/products/keiryo-crane/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.track_scale_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.track_scale_bg::after {
  content: "";
  background-image: url(../images/products/keiryo-truck/product-img-03.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.hopper_weight_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.hopper_weight_bg::after {
  content: "";
  background-image: url(../images/products/keiryo-hopper/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.belt_convayor_supply_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.belt_convayor_supply_bg::after {
  content: "";
  background-image: url(../images/products/keiryo-constant/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.loadCell_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.loadCell_bg::after {
  content: "";
  background-image: url(../images/products/keiryo-load/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.other_calc_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.other_calc_bg::after {
  content: "";
  background-image: url(../images/products/keiryo-system/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.water_camera_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.water_camera_bg::after {
  content: "";
  background-image: url(../images/products/ocean-suichu/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.rinko_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.rinko_bg::after {
  content: "";
  background-image: url(../images/products/ocean-rinko/product-img-07.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.infinity_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.infinity_bg::after {
  content: "";
  background-image: url(../images/products/ocean-infinity/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.inline_censor_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.inline_censor_bg::after {
  content: "";
  background-image: url(../images/products/ocean-yusen/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.ryusoku_calc_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.ryusoku_calc_bg::after {
  content: "";
  background-image: url(../images/products/ocean-ryusoku/product-img-03.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.aqua_mail_bg {
  display: block;
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
}

.aqua_mail_bg::after {
  content: "";
  background-image: url(../images/products/ocean-aqua-mail/product-img-01.jpg);
  background-position: center;
  background-size: cover;
  opacity: 0.3;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  z-index: -1;
}

.product-content-container .type-list-title {
  color: #fff;
  letter-spacing: 1px;
  font-size: 16px;
  padding: 12px 45px 10px 14px;
  margin-bottom: 20px;
  position: relative;
  background-color: #e51b23;
  width: 100%;
  display: block;
  line-height: 1;
}

@media screen and (min-width: 769px) {
  .product-content-container .type-list-title {
    font-size: 20px;
    margin-top: 20px;
  }
}

@media screen and (max-width: 768px) {
  .product-content-container .type-list-title {
    margin-top: 10px;
  }
}

.water-suiikei table.product__table__list tr td {
  text-align: center;
}

.water-suiikei table.product__table__list tr td a {
  color: #336699;
}

@media screen and (min-width: 769px) {
  .water-suiikei table.product__table__list tr td a:hover {
    opacity: 0.5;
  }
}

@media screen and (min-width: 769px) {
  .menu.waterIndex {
    margin-top: 100px;
  }
}

@media screen and (max-width: 768px) {
  .menu.waterIndex {
    margin-top: 50px;
  }
}

.product__table__index {
  overflow-x: auto;
}

.product__table__index table.sticky_table {
  margin-top: 0;
  width: 100%;
  min-width: 800px;
}

.product__table__index table.sticky_table th, .product__table__index table.sticky_table td {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.product__table__index table.sticky_table thead {
  display: block;
  width: calc(100% - 16px);
  min-width: calc(800px - 16px);
}

@media screen and (max-width: 768px) {
  .product__table__index table.sticky_table thead {
    width: 100%;
    min-width: 100%;
  }
}

.product__table__index table.sticky_table tbody {
  overflow-x: hidden;
  overflow-y: auto;
  display: block;
  height: 400px;
  width: 100%;
  min-width: 800px;
}

@media screen and (max-width: 768px) {
  .product__table__index table.sticky_table tbody {
    height: 250px;
  }
}

.product__table__index table.sticky_table tbody th.sticky_table_title {
  background: transparent;
  color: inherit;
  font-weight: normal;
  padding-left: 5px;
}

.product__table__index.water table.sticky_table thead tr:first-child {
  width: 100%;
}

.product__table__index.water table.sticky_table thead th {
  width: 5.5%;
}

.product__table__index.water table.sticky_table thead .sticky_table_title {
  width: 250px;
}

.product__table__index.water table.sticky_table thead .sticky_table_text {
  width: 150px;
}

.product__table__index.water table.sticky_table tbody th.sticky_table_title {
  width: 250px;
}

.product__table__index.water table.sticky_table tbody td {
  width: 5.5%;
}

.product__table__index.water table.sticky_table tbody .sticky_table_text {
  width: 150px;
}

.product__table__index.keiryo table.sticky_table thead tr {
  display: table;
  width: 100%;
  margin: 0 auto;
  table-layout: fixed;
}

.product__table__index.keiryo table.sticky_table thead .sticky_table_title {
  width: 25%;
  padding: 5px 1px;
  height: 60px;
}

.product__table__index.keiryo table.sticky_table thead .sticky_table_text {
  width: 25%;
  padding: 5px 1px;
  height: 60px;
}

.product__table__index.keiryo table.sticky_table thead .sticky_table_text02 {
  width: 50%;
  padding: 0;
  height: 60px;
}

.product__table__index.keiryo table.sticky_table thead .sticky_table_text02 span {
  padding-top: 8px;
  height: 30px;
  display: block;
}

.product__table__index.keiryo table.sticky_table thead .sticky_table_text02 .sticky_table_menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.product__table__index.keiryo table.sticky_table thead .sticky_table_text02 .sticky_table_menu li {
  padding-top: 8px;
  width: 50%;
  border-top: 1px solid #a7a7a7;
  height: 30px;
}

.product__table__index.keiryo table.sticky_table thead .sticky_table_text02 .sticky_table_menu li:first-child {
  border-right: 1px solid #a7a7a7;
}

.product__table__index.keiryo table.sticky_table tbody tr {
  display: table;
  width: 100%;
  margin: 0 auto;
  table-layout: fixed;
}

.product__table__index.keiryo table.sticky_table tbody td {
  width: 25%;
  height: 28px;
}

.product__table__index.keiryo table.sticky_table tbody td.sticky_table_border {
  border-bottom: 1px solid #a7a7a7;
}

.product__table__index.keiryo table.sticky_table tbody .sticky_table_title {
  text-align: left;
  border-bottom: none;
}

.product__table__index.keiryo table.sticky_table tbody .sticky_table_text {
  text-align: left;
}

.product__table__index.setsubi table.sticky_table thead tr:first-child {
  width: 100%;
}

.product__table__index.setsubi table.sticky_table thead th {
  width: 4%;
  min-width: 40px;
  /* max-width: 40px; */
  padding: 5px 0;
  -webkit-hyphens: manual;
  -moz-hyphens: manual;
  -ms-hyphens: manual;
  hyphens: manual;
  letter-spacing: 0;
  font-size: 11px;
}

.product__table__index.setsubi table.sticky_table thead .sticky_table_title {
  width: 10%;
  min-width: 98px;
  /* max-width: 128px; */
  padding: 5px;
}

.product__table__index.setsubi table.sticky_table thead .sticky_table_text {
  width: 8%;
  min-width: 105px;
  max-width: 145px;
  padding: 5px;
}

.product__table__index.setsubi table.sticky_table thead .sticky_table_text02 {
  width: 10%;
  min-width: 62px;
  max-width: 92px;
  padding: 5px;
}

.product__table__index.setsubi table.sticky_table tbody {
  height: 400px;
}

.product__table__index.setsubi table.sticky_table tbody .sticky_table_title {
  width: 10%;
  min-width: 98px;
  max-width: 128px;
  text-align: left;
  vertical-align: top;
  padding: 4px;
}

.product__table__index.setsubi table.sticky_table tbody td {
  width: 4%;
  min-width: 40px;
  max-width: 40px;
  padding: 5px 0;
  vertical-align: middle;
  word-break: break-word;
}

.product__table__index.setsubi table.sticky_table tbody .sticky_table_text {
  width: 8%;
  min-width: 105px;
  max-width: 145px;
  text-align: left;
  vertical-align: top;
  padding: 4px;
}

.product__table__index.setsubi table.sticky_table tbody .sticky_table_text02 {
  width: 10%;
  min-width: 62px;
  max-width: 92px;
  text-align: left;
  vertical-align: top;
  padding: 4px;
}

@media screen and (max-width: 768px) {
  .product__table__index.setsubi table.sticky_table tbody .sticky_table_text02 {
    padding: 5px;
  }
}

.product__table__index.ocean table.sticky_table thead th {
  width: 3%;
  min-width: 41px;
  max-width: 56px;
  padding: 5px 0;
  -webkit-hyphens: manual;
  -moz-hyphens: manual;
  -ms-hyphens: manual;
  hyphens: manual;
  letter-spacing: 0;
  font-size: 11px;
}

.product__table__index.ocean table.sticky_table thead .sticky_table_title {
  width: 12%;
  min-width: 90px;
  max-width: 177px;
  padding: 5px;
}

.product__table__index.ocean table.sticky_table thead .sticky_table_text {
  width: 10%;
  min-width: 54px;
  max-width: 134px;
  padding: 5px;
}

.product__table__index.ocean table.sticky_table tbody {
  height: 400px;
}

.product__table__index.ocean table.sticky_table tbody .sticky_table_title {
  width: 12%;
  min-width: 90px;
  /* max-width: 177px; */
  text-align: left;
  vertical-align: top;
  padding: 4px;
}

.product__table__index.ocean table.sticky_table tbody td {
  width: 3%;
  min-width: 41px;
  /* max-width: 56px; */
  padding: 5px 0;
  vertical-align: middle;
  font-size: 12px;
}

.product__table__index.ocean table.sticky_table tbody .sticky_table_text {
  width: 10%;
  min-width: 54px;
  max-width: 134px;
  text-align: left;
  vertical-align: top;
  padding: 4px;
  word-break: break-word;
}
@media all and (-ms-high-contrast:none){/* IE10, 11 */
  .product__table__index.ocean table.sticky_table tbody .sticky_table_text { 
    word-break: break-all;
  }
}

.js_isNotWin .product__table__index table.sticky_table thead {
  width: 100%;
  min-width: 800px;
}

/*********************************

製鉄用計量システム

*********************************/
div#imageOuter {
  position: relative;
  z-index: 1;
}

div#imageOuter .mapItem {
  background-image: none;
  background-repeat: no-repeat;
  cursor: pointer;
  position: absolute;
  z-index: 10;
  display: block;
}

div#imageOuter .map {
  background-repeat: no-repeat;
  background-position: 2px 2px;
}

div#imageOuter .off {
  display: none;
}

div#imageOuter div.back {
  cursor: pointer;
  position: absolute;
  top: 6px;
  left: 6px;
}

#map00 {
  background-image: url("../images/products/keiryo-weighing-system/linkmap00_hover.jpg");
  height: 370px;
}

div#map01 {
  background-image: url("../images/products/keiryo-weighing-system/map01.jpg");
  height: 276px;
}

div#map02 {
  background-image: url("../images/products/keiryo-weighing-system/map02.jpg");
  height: 276px;
}

div#map03 {
  background-image: url("../images/products/keiryo-weighing-system/map03.jpg");
  height: 276px;
}

div#map04 {
  background-image: url("../images/products/keiryo-weighing-system/map04.jpg");
  height: 276px;
}

div#map05 {
  background-image: url("../images/products/keiryo-weighing-system/map05.jpg");
  height: 276px;
}

a#map00_1 {
  right: 2px;
  top: 2px;
  width: 301px;
  height: 153px;
}

a#map00_1:hover {
  background-image: url("../images/products/keiryo-weighing-system/linkmap01_on.jpg");
}

a#map00_2 {
  left: 2px;
  top: 2px;
  width: 235px;
  height: 140px;
}

a#map00_2:hover {
  background-image: url("../images/products/keiryo-weighing-system/linkmap02_on.jpg");
}

a#map00_3 {
  left: 2px;
  bottom: 2px;
  width: 235px;
  height: 226px;
}

a#map00_3:hover {
  background-image: url("../images/products/keiryo-weighing-system/linkmap03_on.jpg");
}

a#map00_4 {
  left: 237px;
  bottom: 2px;
  width: 167px;
  height: 213px;
}

a#map00_4:hover {
  background-image: url("../images/products/keiryo-weighing-system/linkmap04_on.jpg");
}

a#map00_5 {
  right: 2px;
  bottom: 2px;
  width: 134px;
  height: 213px;
}

a#map00_5:hover {
  background-image: url("../images/products/keiryo-weighing-system/linkmap05_on.jpg");
}

a#map01_1 {
  right: 19px;
  top: 21px;
  width: 176px;
  height: 198px;
}

a#map01_1:hover {
  background-image: url("../images/products/keiryo-weighing-system/map01_1.png");
}

a#map01_2 {
  left: 196px;
  top: 49px;
  width: 112px;
  height: 90px;
}

a#map01_2:hover {
  background-image: url("../images/products/keiryo-weighing-system/map01_2.png");
}

a#map01_3 {
  left: 54px;
  top: 34px;
  width: 130px;
  height: 105px;
}

a#map01_3:hover {
  background-image: url("../images/products/keiryo-weighing-system/map01_3.png");
}

a#map01_4 {
  left: 134px;
  bottom: 14px;
  width: 123px;
  height: 110px;
}

a#map01_4:hover {
  background-image: url("../images/products/keiryo-weighing-system/map01_4.png");
}

a#map02_1 {
  right: 207px;
  top: 43px;
  width: 162px;
  height: 70px;
}

a#map02_1:hover {
  background-image: url("../images/products/keiryo-weighing-system/map02_1.png");
}

a#map02_2 {
  left: 10px;
  top: 42px;
  width: 124px;
  height: 202px;
}

a#map02_2:hover {
  background-image: url("../images/products/keiryo-weighing-system/map02_2.png");
}

a#map02_3 {
  right: 41px;
  bottom: 9px;
  width: 213px;
  height: 74px;
}

a#map02_3:hover {
  background-image: url("../images/products/keiryo-weighing-system/map02_3.png");
}

a#map03_1 {
  left: 14px;
  top: 55px;
  width: 123px;
  height: 83px;
  z-index: 20!important;
}

a#map03_1:hover {
  background-image: url("../images/products/keiryo-weighing-system/map03_1.png");
  z-index: 20!important;
}

a#map03_2 {
  left: 112px;
  top: 135px;
  width: 158px;
  height: 79px;
}

a#map03_2:hover {
  background-image: url("../images/products/keiryo-weighing-system/map03_2.png");
}

a#map03_3 {
  right: 125px;
  top: 2px;
  width: 127px;
  height: 73px;
}

a#map03_3:hover {
  background-image: url("../images/products/keiryo-weighing-system/map03_3.png");
}

a#map03_4 {
  left: 121px;
  top: 11px;
  width: 158px;
  height: 109px;
  z-index: 2!important;
}

a#map03_4:hover {
  background-image: url("../images/products/keiryo-weighing-system/map03_4.png");
  z-index: 2!important;
}

a#map03_5 {
  right: 128px;
  bottom: 44px;
  width: 141px;
  height: 97px;
}

a#map03_5:hover {
  background-image: url("../images/products/keiryo-weighing-system/map03_5.png");
}

a#map04_1 {
  left: 79px;
  top: 4px;
  width: 194px;
  height: 89px;
}

a#map04_1:hover {
  background-image: url("../images/products/keiryo-weighing-system/map04_1.png");
}

a#map04_2 {
  left: 119px;
  top: 100px;
  width: 138px;
  height: 54px;
}

a#map04_2:hover {
  background-image: url("../images/products/keiryo-weighing-system/map04_2.png");
}

a#map04_3 {
  left: 108px;
  bottom: 79px;
  width: 194px;
  height: 33px;
}

a#map04_3:hover {
  background-image: url("../images/products/keiryo-weighing-system/map04_3.png");
}

a#map04_4 {
  right: 120px;
  top: 118px;
  width: 157px;
  height: 69px;
}

a#map04_4:hover {
  background-image: url("../images/products/keiryo-weighing-system/map04_4.png");
}

a#map04_4 {
  right: 120px;
  top: 118px;
  width: 157px;
  height: 69px;
}

a#map04_4:hover {
  background-image: url("../images/products/keiryo-weighing-system/map04_4.png");
}

a#map04_5 {
  left: 108px;
  bottom: 5px;
  width: 161px;
  height: 63px;
}

a#map04_5:hover {
  background-image: url("../images/products/keiryo-weighing-system/map04_5.png");
}

a#map04_6 {
  right: 125px;
  bottom: 11px;
  width: 121px;
  height: 72px;
}

a#map04_6:hover {
  background-image: url("../images/products/keiryo-weighing-system/map04_6.png");
}

a#map05_1 {
  right: 9px;
  bottom: 4px;
  width: 186px;
  height: 92px;
}

a#map05_1:hover {
  background-image: url("../images/products/keiryo-weighing-system/map05_1.png");
}

a#map05_2 {
  left: 222px;
  top: 18px;
  width: 242px;
  height: 103px;
}

a#map05_2:hover {
  background-image: url("../images/products/keiryo-weighing-system/map05_2.png");
}

@media screen and (min-width: 769px) {
  .processClose {
    font-size: 13px;
  }
}

.processSubSection {
  overflow: hidden;
}

.processSubSectionBox {
  clear: both;
  overflow: hidden;
  border: #999999 1px solid;
  padding: 10px;
  margin-bottom: 20px;
  margin-right: 8px;
}

@media screen and (max-width: 768px) {
  .processSubSectionBox {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.processSubSectionBox img {
  float: left;
}

@media screen and (max-width: 768px) {
  .processSubSectionBox img {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    width: 100%;
    height: auto;
  }
}

.processSubSectionBox .processClose {
  text-align: right;
}

.processSubSectionBox .processTxt {
  clear: right;
}

.processSubSectionBox .processTxt strong {
  padding-bottom: 10px;
  margin-bottom: 10px;
  margin-top: 5px;
}

.processSubSectionBox .processTxt strong span {
  display: block;
  font-weight: bold;
  color: #545454;
  border-bottom: 1px dotted #000;
  font-size: 14px;
}

@media screen and (min-width: 769px) {
  .processSubSectionBox .processTxt strong span {
    padding-right: 10px;
    padding-left: 25px;
  }
}

.processSubSectionBox .processTxt p {
  color: #000;
  font-size: 13px;
}

.processSubSectionBox .processTxt p.linkR {
  float: right;
  margin-top: 10px;
}

.processSubSectionBox .processTxt p.linkR a {
  padding-left: 12px;
  color: #e51b23;
}

@media screen and (min-width: 769px) {
  .processSubSectionBox .processTxt p.linkR a:hover {
    opacity: 0.5;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

.processSubSectionBox {
  margin: 0;
}

.closeDOMWindow {
  color: #000;
}

@media screen and (max-width: 768px) {
  .closeDOMWindow {
    font-size: 12px;
    position: absolute;
    top: 5px;
    display: block;
    right: 1%;
  }
}

#DOMWindow {
  height: auto !important;
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-height: calc(100vh - 150px);
}

@media screen and (max-width: 768px) {
  #DOMWindow {
    width: 90% !important;
  }
}

.processSubSectionBox__right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

@media screen and (min-width: 769px) {
  .processSubSectionBox__right {
    padding: 5px;
  }
}

@media screen and (max-width: 768px) {
  .processSubSectionBox__right {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
}

@media screen and (max-width: 768px) {
  .processNavi {
    padding-bottom: 20px;
  }
}

.processNavi a {
  color: #e51b23;
}

@media screen and (min-width: 769px) {
  .ttl02 {
    font-size: 16px;
    margin-bottom: 5px;
  }
}

@media screen and (max-width: 768px) {
  .ttl02 {
    font-size: 13px;
    margin-bottom: 3px;
  }
}

@media screen and (min-width: 769px) {
  .lineupMenu {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 768px) {
  .lineupMenu {
    margin-bottom: 10px;
  }
}

@media screen and (min-width: 769px) {
  .lineupMenu h5 {
    margin-top: 20px;
    padding-left: 10px;
    font-size: 16px;
  }
}

@media screen and (max-width: 768px) {
  .lineupMenu h5 {
    margin-top: 15px;
    padding-left: 2%;
    font-size: 13px;
  }
}

@media screen and (min-width: 769px) {
  .lineupMenu .lineUp {
    margin-top: 5px;
  }
}

@media screen and (max-width: 768px) {
  .lineupMenu .lineUp {
    margin-top: 3px;
  }
}

.lineupMenu a {
  color: #e51b23;
}

@media screen and (min-width: 769px) {
  .lineupMenu a:hover {
    opacity: 0.5;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

.productType__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: baseline;
  -ms-flex-pack: baseline;
  justify-content: baseline;
}

.productType__head::before {
  content: '';
  display: block;
  background: url(../img/common/folder.png);
  background-size: contain;
  background-repeat: no-repeat;
}

@media screen and (min-width: 769px) {
  .productType__head::before {
    width: 30px;
    height: 25px;
    margin-right: 10px;
  }
}

@media screen and (max-width: 768px) {
  .productType__head::before {
    width: 30px;
    height: 25px;
    margin-right: 5px;
  }
}

/*********************************

_catalog.scss

*********************************/
.main-content.catalog .product-links-wrapper {
  padding-top: 10px;
}

.main-content.catalog .product-links-wrapper .product-links-txt {
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 0.075em;
}

.main-content.catalog .product-links-wrapper .product-links-btns-container {
  margin-top: 50px;
}

.main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-row:not(:first-child) {
  margin-top: 20px;
}

.main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column {
  width: calc(33.33% - 12px);
  border: 1px solid #e51b23;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column:not(:last-child) {
  margin-right: 18px;
}

.main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column a {
  padding: 16px 16px;
  display: block;
}

.main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column a:hover .title-container {
  opacity: 0.5;
}

.main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container {
  margin: 0 auto;
  display: table;
  width: 100%;
  position: relative;
  text-align: center;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title {
  display: table-cell;
  vertical-align: middle;
  font-size: 16px;
  font-weight: normal;
  text-align: center;
  line-height: 1;
  letter-spacing: 0.075em;
  color: #e51b23;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title-icon {
  position: absolute;
  top: 40%;
  right: 0;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title-icon:before {
  margin: 0;
  width: 12px;
  height: 8px;
  content: "";
  background: url(../images/btn-blue-arrow-down.png) no-repeat 0 0;
  background-size: 12px auto;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

@media screen and (min-width: 769px) {
  .main-content.catalog #product-05.row-container table p {
    padding-left: 3px;
  }
}

@media screen and (min-width: 769px) {
  .main-content.catalog #product-05.row-container table td {
    padding-left: 3px;
    font-size: 14px;
  }
}

.main-content.catalog .row-container {
  margin: 40px 0 0;
}

.main-content.catalog .row-container:last-of-type {
  margin: 40px 0 40px;
}

.main-content.catalog .row-container .title-container {
  padding: 12px 45px 10px 14px;
  position: relative;
  background-color: #e51b23;
  width: 100%;
  display: block;
  line-height: 1;
}

.main-content.catalog .row-container .title-container .title {
  width: auto;
  display: inline-block;
  vertical-align: middle;
  font-size: 20px;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #fff;
}

.main-content.catalog .row-container .sub-title a {
  color: #e51b23;
}

.main-content.catalog .row-container .sub-title a:hover {
  text-decoration: underline;
}

.main-content.catalog .row-container .txt-container a {
  color: #e51b23;
  text-decoration: underline;
}

.main-content.catalog .row-container .txt-container a:hover {
  text-decoration: none;
}

.main-content.catalog .row-container .catalog-list {
  margin: 20px 0 0;
  overflow: hidden;
  list-style-type: none;
}

.main-content.catalog .row-container .catalog-list .item {
  float: left;
  width: calc(50% - 10px);
  margin: 0 20px 20px 0;
}

.main-content.catalog .row-container .catalog-list .item:nth-of-type(2n) {
  margin: 0 0 20px;
}

.main-content.catalog .row-container .catalog-list .item .color {
  color: #e51b23;
}

.main-content.catalog .row-container .catalog-list .item .color .bold {
  margin-right: 10px;
  font-weight: 700;
}

.main-content.catalog .row-container .catalog-list .item a {
  color: #000;
}

.main-content.catalog .row-container .catalog-list .item a:hover {
  text-decoration: underline;
}

.main-content.catalog .row-container .catalog-list.catalog-list_block li {
  margin-bottom: 0;
}

.main-content.catalog .row-container .spec-table {
  width: 100%;
  border: 1px solid #a7a7a7;
  margin: 20px 0 0;
  border-left: none;
  font-size: 13px;
}

.main-content.catalog .row-container .spec-table tr th {
  text-align: left;
  vertical-align: top;
  line-height: 1.3em;
  padding: 5px 5px 5px 10px;
  border-left: 1px solid #a7a7a7;
  font-family: Roboto, sans-serif;
}

.main-content.catalog .row-container .spec-table tr td {
  text-align: left;
  vertical-align: top;
  line-height: 1.3em;
  padding: 5px 5px 5px 10px;
  border-left: 1px solid #a7a7a7;
  font-family: Roboto, sans-serif;
}

.main-content.catalog .row-container .spec-table tr.color {
  background: #f0f0f0;
}

.main-content.catalog .row-container .spec-end_container .spec-end_table {
  border-collapse: collapse;
  border-spacing: 0;
}

.main-content.catalog .row-container .spec-end_container .spec-end_table thead th {
  border-bottom: solid 1px #a7a7a7;
}

.main-content.catalog .row-container .spec-end_container .spec-end_table tbody tr:nth-child(even) {
  background: #f0f0f0;
}

.main-content.catalog .row-container .spec-end_container .spec-end_table thead tr:first-child {
  background: #f0f0f0;
}

.main-content.catalog .row-container .spec-end_container_border th {
  border-bottom: solid 1px #a7a7a7;
}

.main-content.catalog .row-container .spec-end_container_border td {
  border-bottom: solid 1px #a7a7a7;
}

.main-content.catalog .row-container .list-table tr th, .main-content.catalog .row-container .list-table tr td {
  text-align: center;
}

.main-content.catalog .row-container .list-table.keiryo-list_table th {
  background: #eee;
}

.main-content.catalog .row-container .info-area {
  margin: 20px 0 0;
  padding: 20px;
  border: 1px solid #ccc;
  background-color: #f0f0f0;
  font-size: 13px;
}

.main-content.catalog .row-container .info-area em {
  font-size: 15px;
  font-weight: bold;
  font-style: normal;
}

.main-content.catalog .row-container ol {
  margin: 20px 0 0;
  padding: 0 0 0 20px;
}

.main-content.catalog .row-container ol li {
  margin: 0 0 10px;
  line-height: 1.8em;
}

.main-content.catalog .row-container ul {
  margin: 20px 0 0;
  padding: 0 0 0 20px;
}

.main-content.catalog .row-container ul li {
  margin: 0 0 10px;
  line-height: 1.8em;
}

.main-content.catalog .row-container table.article-table {
  border-top: 1px solid #999999;
  border-left: 1px solid #999999;
  margin-bottom: 30px;
  width: 100%;
}

.main-content.catalog .row-container table.article-table th {
  width: 70px;
  padding: 5px;
  text-align: center !important;
  font-size: 12px;
  background: #eaeaea;
  color: #1b5ca0;
  border-right: 1px solid #999999;
  border-bottom: 1px solid #999999;
}

@media all and (max-width: 1200px) {
  .main-content.catalog .row-container table.article-table th {
    font-size: 13px;
  }
}

.main-content.catalog .row-container table.article-table th.month {
  min-width: 100px;
  width: 7%;
}

.main-content.catalog .row-container table.article-table th.title {
  min-width: 300px;
  width: 47%;
}

.main-content.catalog .row-container table.article-table th.publishing {
  min-width: 200px;
  width: 30%;
}

.main-content.catalog .row-container table.article-table th.link {
  min-width: 100px;
  width: 10%;
}

.main-content.catalog .row-container table.article-table th.post {
  min-width: 100px;
  width: 6%;
}

.main-content.catalog .row-container table.article-table td {
  padding: 5px;
  text-align: left;
  border-right: 1px solid #999999;
  border-bottom: 1px solid #999999;
  font-size: 13px;
}

.main-content.catalog .row-container table.article-table td.pdf {
  text-align: center;
  font-size: 18px;
  color: #1b5ca0;
  font-family: 'Hiragino Kaku Gothic ProN', 'Hiragino Kaku Gothic Pro', Meiryo, sans-serif;
}

.main-content.catalog .row-container table.article-table td:first-child {
  padding-left: 15px;
}

.main-content.catalog .row-container table.article-table td:last-child {
  text-align: center;
}

.main-content.catalog .row-container table.article-table.second .publishing {
  min-width: 200px;
  width: 40%;
}

.main-content.catalog .sitemap {
  width: 100%;
  margin: 20px 0 0;
  padding: 20px;
  border: 1px solid #eee;
  background-color: #fafafa;
}

.main-content.catalog .sitemap ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.main-content.catalog .sitemap ul li a {
  font-size: 14px;
  line-height: 1.2em;
  color: #333;
}

.main-content.catalog .sitemap ul li a:hover {
  color: #bc0b12;
}

.main-content.catalog .sitemap ul li ul {
  margin-top: .5em;
  margin-bottom: .75em;
  margin-left: 48px;
}

.main-content.catalog .sitemap ul li ul li {
  margin-bottom: .25em;
  position: relative;
}

.main-content.catalog .sitemap ul li ul li::before {
  content: "";
  position: absolute;
  top: -0.5em;
  left: -16px;
  width: 10px;
  height: calc(100% + .75em);
  border-left: 1px solid #3972b2;
}

.main-content.catalog .sitemap ul li ul li:last-child::before {
  height: calc(1em + .25em);
}

.main-content.catalog .sitemap ul li ul li::after {
  content: "";
  position: absolute;
  top: .75em;
  left: -16px;
  width: 10px;
  border-bottom: 1px solid #3972b2;
}

.main-content.catalog .row-container_drawing .catalog-list_drawing {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.main-content.catalog .row-container_drawing .catalog-list_drawing .item {
  max-width: calc(100% / 4);
  margin-right: 0;
  padding-right: 20px;
  width: 100%;
}

.main-content.catalog .row-container_drawing p {
  font-weight: bold;
  padding-left: 20px;
  margin-top: 20px;
}

.main-content.catalog .row-container_drawing p + .catalog-list_drawing {
  margin-top: 10px;
}

.main-content.article .product-links-wrapper {
  padding-top: 0;
}

/**SP**/
@media only screen and (max-width: 768px) {
  .main-content.catalog {
    margin: 0 0 20px;
  }
  .main-content.catalog .product-links-wrapper {
    padding-top: 20px;
  }
  .main-content.catalog .product-links-wrapper .product-links-txt {
    font-size: calc(12px + (16 - 12) * ((100vw - 320px) / (768 - 320))) !important;
    line-height: 1.5;
    letter-spacing: 0.075em;
  }
  .main-content.catalog .product-links-wrapper .product-links-btns-container {
    margin-top: 40px;
  }
  .main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-row:not(:first-child) {
    margin-top: 20px;
  }
  .main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column {
    width: 100%;
    border: 1px solid #e51b23;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column:not(:last-child) {
    margin-right: 0;
  }
  .main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column:not(:first-child) {
    margin-top: 20px;
  }
  .main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column a {
    padding: 16px 16px;
    display: block;
  }
  .main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column a:hover .title-container {
    opacity: 0.5;
  }
  .main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container {
    margin: 0 auto;
    display: table;
    width: 100%;
    position: relative;
    text-align: center;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title {
    display: table-cell;
    vertical-align: middle;
    font-size: 16px;
    font-weight: normal;
    text-align: center;
    line-height: 1.4;
    letter-spacing: 0.075em;
    color: #e51b23;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title-icon {
    position: absolute;
    top: 40%;
    right: 0;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .main-content.catalog .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title-icon:before {
    margin: 0;
    width: 12px;
    height: 8px;
    content: "";
    background: url(../images/btn-blue-arrow-down.png) no-repeat 0 0;
    background-size: 12px auto;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
  .main-content.catalog .row-container {
    margin: 20px 0 0;
  }
  .main-content.catalog .row-container .catalog-list .item {
    float: none;
    width: 100%;
    margin: 0 0 10px 0;
  }
  .main-content.catalog .row-container .catalog-list .item:nth-of-type(2n) {
    margin: 0 0 10px 0;
  }
  .main-content.catalog .row-container .spec-end_container {
    overflow: auto;
    white-space: nowrap;
  }
  .main-content.catalog .row-container .spec-end_container .spec-end_table {
    width: 100%;
    max-width: 800px;
  }
  .main-content.catalog .row-container .title-container .title {
    line-height: 1.4;
  }
  .main-content.catalog .row-container.type-list {
    overflow-x: scroll;
  }
  .main-content.catalog .row-container.type-list .spec-table {
    overflow-x: scroll;
    min-width: 800px;
  }
  .main-content.catalog .sitemap {
    padding: 10px;
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
  .main-content.catalog .sitemap .sitemap_in {
    overflow-x: scroll;
  }
  .main-content.catalog .sitemap ul li a {
    font-size: 13px;
  }
  .main-content.catalog .row-container_drawing .catalog-list_drawing .item {
    max-width: 100%;
  }
}

/*********************************

news.scss

*********************************/
.main-content.news #Container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.main-content.news #Container .mix {
  display: none;
}

.main-content.news .intro-text {
  max-width: 1240px;
  margin: 20px auto 0;
  padding: 0 20px;
  font-size: 16px;
  line-height: 1.5em;
}

.main-content.news .news-wrapper {
  margin: 40px 0 40px;
  padding: 40px 20px;
  background-color: #f2f6f9;
}

.main-content.news .news-wrapper .header {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto 20px;
  padding: 20px 0 0;
  background-color: #fff;
  text-align: center;
}

.main-content.news .news-wrapper .header .filter {
  display: inline-block;
  padding: 0 20px 20px;
  cursor: pointer;
}

.main-content.news .news-wrapper .header .filter.active {
  border-bottom: 4px solid #e51b23;
  color: #e51b23;
  font-weight: bold;
}

.main-content.news .news-wrapper #Container {
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  padding: 40px;
  background-color: #fff;
  overflow: hidden;
}

.main-content.news .news-wrapper #Container .news-list {
  float: left;
  max-width: 30%;
  width: 100%;
  margin: 0 1.5% 3%;
}

.main-content.news .news-wrapper #Container .news-list .news-listItem {
  display: block;
  padding: 20px;
  color: #333;
  border: 1px solid #eee;
  height: 100%;
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .info {
  margin: 0 0 10px;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .info .cate {
  padding: 0 5px;
  color: #fff;
  background-color: #e51b23;
  margin-right: 5px;
  margin-bottom: 5px;
}

@media screen and (min-width: 769px) {
  .main-content.news .news-wrapper #Container .news-list .news-listItem .info .cate {
    font-size: 13px;
  }
}

@media screen and (max-width: 768px) {
  .main-content.news .news-wrapper #Container .news-list .news-listItem .info .cate {
    font-size: 12px;
  }
}

@media screen and (min-width: 769px) {
  .main-content.news .news-wrapper #Container .news-list .news-listItem .info .cate:hover {
    opacity: 0.6;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .info .cate a {
  padding: 0 5px;
  color: #fff;
  border: none;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
  display: block;
}

@media screen and (min-width: 769px) {
  .main-content.news .news-wrapper #Container .news-list .news-listItem .info .cate a {
    font-size: 13px;
  }
}

@media screen and (max-width: 768px) {
  .main-content.news .news-wrapper #Container .news-list .news-listItem .info .cate a {
    font-size: 12px;
  }
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .info .division_wrap {
  margin-right: 5px;
  margin-bottom: 5px;
  display: block;
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .info .division_wrap a {
  display: block;
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .info .division {
  padding: 0 5px;
  color: #fff;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

@media screen and (min-width: 769px) {
  .main-content.news .news-wrapper #Container .news-list .news-listItem .info .division {
    font-size: 13px;
  }
}

@media screen and (max-width: 768px) {
  .main-content.news .news-wrapper #Container .news-list .news-listItem .info .division {
    font-size: 12px;
  }
}

@media screen and (min-width: 769px) {
  .main-content.news .news-wrapper #Container .news-list .news-listItem .info .division:hover {
    opacity: 0.6;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .info .water {
  background-color: #6c9ace;
  border: 1px solid #6c9ace;
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .info .keiryo {
  background-color: #96c857;
  border: 1px solid #96c857;
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .info .ocean {
  background-color: #1c407a;
  border: 1px solid #1c407a;
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .info .setsubi {
  background-color: #e77f48;
  border: 1px solid #e77f48;
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .info .date {
  margin-left: auto;
  font-size: 12px;
  color: #ccc;
  line-height: 25px;
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .title {
  font-size: 18px;
  line-height: 1.5em;
  margin: 0 0 10px;
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .text {
  font-size: 14px;
  line-height: 1.5em;
  margin: 0 0 20px;
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .text .text_link a {
  display: inline;
  border: none;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
  color: #e51b23;
  padding: 0;
}

@media screen and (min-width: 769px) {
  .main-content.news .news-wrapper #Container .news-list .news-listItem .text .text_link a {
    opacity: 0.8;
  }
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .btn {
  display: block;
  width: 100px;
  margin: 0 auto;
  background-color: #333;
  line-height: 40px;
  text-align: center;
  font-size: 12px;
}

.main-content.news .news-wrapper #Container .news-list .news-listItem .btn a {
  color: #fff;
  display: block;
}

@media screen and (min-width: 769px) {
  .main-content.news .news-wrapper #Container .news-list .news-listItem .btn:hover {
    opacity: 0.8;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

.main-content.news .news-wrapper #Container .news-list .tec__news {
  padding: 0;
  border: none;
  color: #e51b23;
  display: inline;
}

@media screen and (min-width: 769px) {
  .main-content.news .news-wrapper #Container .news-list .tec__news:hover {
    border: none;
    opacity: 0.5;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

.main-content.news .news-wrapper .content {
  width: 1200px;
  margin: 0 auto;
  padding: 40px;
  background-color: #fff;
  overflow: hidden;
}

.main-content.news .news-wrapper .content .info {
  margin: 0 0 20px;
  overflow: hidden;
}

.main-content.news .news-wrapper .content .info .cate {
  float: left;
  display: inline-block;
  padding: 0 10px;
  font-size: 13px;
  line-height: 25px;
  color: #fff;
  background-color: #e51b23;
}

.main-content.news .news-wrapper .content .info .date {
  float: right;
  font-size: 12px;
  color: #ccc;
  line-height: 25px;
}

.main-content.news .news-wrapper .content .info .division_wrap {
  margin-bottom: 5px;
  display: block;
  margin-top: -2px;
}

.main-content.news .news-wrapper .content .info .division_wrap a {
  padding: 1px 5px 0;
  color: #fff;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
  display: inline-block;
  font-size: 13px;
  margin-left: 5px;
}

@media screen and (min-width: 769px) {
  .main-content.news .news-wrapper .content .info .division:hover {
    opacity: 0.6;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

.main-content.news .news-wrapper .content .info .water {
  background-color: #6c9ace;
  border: 1px solid #6c9ace;
}

.main-content.news .news-wrapper .content .info .keiryo {
  background-color: #96c857;
  border: 1px solid #96c857;
}

.main-content.news .news-wrapper .content .info .ocean {
  background-color: #1c407a;
  border: 1px solid #1c407a;
}

.main-content.news .news-wrapper .content .info .setsubi {
  background-color: #e77f48;
  border: 1px solid #e77f48;
}

.main-content.news .news-wrapper .content .info .date {
  margin-left: auto;
  font-size: 12px;
  color: #ccc;
  line-height: 25px;
}

.main-content.news .news-wrapper .content .title {
  font-size: 18px;
  line-height: 1.5em;
  margin: 0 0 20px;
}

.main-content.news .news-wrapper .content .text {
  font-size: 14px;
  line-height: 1.5em;
  margin: 0 0 20px;
}

.main-content.news .news-wrapper .content .text a {
  color: #e51b23;
  text-decoration: underline;
  font-weight: bold;
}

.main-content.news .news-wrapper .content .text a:hover {
  text-decoration: none;
}

.main-content.news .news-wrapper .content .text .pdf-link {
  margin-top: 30px;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.main-content.news .news-wrapper .content .text .pdf-link:before {
  margin-right: 15px;
  width: 20px;
  height: 26px;
  content: "";
  background: url("../images/pdf-icon.png") no-repeat 0 0;
  background-size: 20px auto;
  display: inline-block;
  vertical-align: middle;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.main-content.news .news-wrapper .content ol {
  padding-left: 30px;
  list-style: none;
}

.main-content.news .news-wrapper .content ol li {
  padding-left: 5px;
  margin-bottom: .5em;
  position: relative;
}

.main-content.news .news-wrapper .content ol li .num {
  position: absolute;
  left: -30px;
  width: 30px;
  text-align: center;
}

.main-content.news .news-wrapper.news-wrapper_kh .middle-title {
  background-color: #999999;
  margin: 20px 0px;
  color: white;
  font-size: 15px;
  line-height: 18px;
  padding: 5px 0px 5px 10px;
}

.main-content.news .news-wrapper.news-wrapper_kh .news-kh_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 30px;
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0.08em;
  color: #333648;
}

.main-content.news .news-wrapper.news-wrapper_kh .news-kh_list .news-kh_listItem {
  width: 100%;
}

.main-content.news .news-wrapper.news-wrapper_kh .news-kh_list .news-kh_listItem:first-child {
  max-width: 40%;
  text-align: center;
}

.main-content.news .news-wrapper.news-wrapper_kh .news-kh_list .news-kh_listItem:last-child {
  max-width: 60%;
}

.main-content.news .news-wrapper.news-wrapper_kh .news-kh_list p {
  margin-bottom: 10px;
}

.main-content.news .news-wrapper.news-wrapper_kh .info-area {
  margin: 20px 0 0;
  padding: 20px;
  border: 1px solid #ccc;
  background-color: #f0f0f0;
  font-size: 13px;
}

.main-content.news .news-wrapper.news-wrapper_kh .info-area em {
  font-size: 15px;
  font-weight: bold;
  font-style: normal;
}

.main-content.news .news-wrapper.news-wrapper_kh .info-area dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 10px;
  margin-bottom: 10px;
}

.main-content.news .news-wrapper.news-wrapper_kh .info-area dl dt {
  max-width: 150px;
  width: 100%;
}

.main-content.news .news-wrapper.news-wrapper_kh .info-area dl dd {
  margin-right: auto;
  width: calc(100% - 150px);
}

.main-content.news .pager {
  margin: 0 0 40px;
  text-align: center;
}

.main-content.news .pager .loadmore .loadmore-button {
  padding: 1em 3em;
  font-size: 16px;
  background: #fff;
  border: solid 1px #333;
  cursor: pointer;
}

.main-content.news .pager .loadmore .loadmore-button:hover {
  background: #333;
  color: #fff;
}

.main-content.news .pager li {
  display: inline-block;
  width: 50px;
  height: 50px;
  margin: 0 10px;
}

.main-content.news .pager li a {
  display: inline-block;
  width: 100%;
  height: 100%;
  line-height: 50px;
  border: 1px solid #333;
  color: #333;
}

.main-content.news .pager li a:hover {
  background-color: #333;
  color: #fff;
}

.main-content.news .pager li a img {
  width: 10px;
  height: auto;
  vertical-align: middle;
  padding: 0 0 10px;
}

.main-content.news .pager li.arrow a {
  border: none;
}

.main-content.news .pager li.arrow a:hover {
  background-color: transparent;
}

.main-content.news .menu-wrapper {
  margin: 0 0 40px;
  text-align: center;
}

.main-content.news .menu-wrapper a {
  display: inline-block;
  width: 200px;
  line-height: 50px;
  color: #fff;
  background-color: #333;
}

.main-content.news .menu-wrapper a:hover {
  opacity: 0.8;
}

/**SP**/
@media only screen and (max-width: 768px) {
  .main-content.news .intro-text {
    max-width: 100%;
    font-size: 14px;
  }
  .main-content.news .news-wrapper {
    margin: 20px 0 20px;
    padding: 20px;
  }
  .main-content.news .news-wrapper .header {
    width: 100%;
    margin: 0 auto 20px;
    padding: 0;
  }
  .main-content.news .news-wrapper .header .filter {
    width: 100%;
    padding: 10px;
    font-size: 11px;
    border-top: 1px solid #f2f6f9;
  }
  .main-content.news .news-wrapper #Container {
    width: 100%;
    max-width: none;
    margin: 0 auto;
    padding: 10px;
  }
  .main-content.news .news-wrapper #Container .news-list {
    float: none;
    width: 100%;
    max-width: none;
    margin: 0 0 10px;
  }
  .main-content.news .news-wrapper .content {
    width: 100%;
    margin: 0 auto;
    padding: 10px;
  }
  .main-content.news .news-wrapper .content .info {
    margin: 0 0 20px;
    overflow: hidden;
  }
  .main-content.news .news-wrapper .content .info .cate {
    float: left;
    display: inline-block;
    padding: 0 10px;
    font-size: 13px;
    line-height: 25px;
    color: #fff;
    background-color: #e51b23;
  }
  .main-content.news .news-wrapper .content .info .date {
    float: right;
    font-size: 12px;
    color: #ccc;
    line-height: 25px;
  }
  .main-content.news .news-wrapper .content .title {
    font-size: 18px;
    line-height: 1.5em;
    margin: 0 0 20px;
  }
  .main-content.news .news-wrapper .content .text {
    font-size: 14px;
    line-height: 1.5em;
    margin: 0 0 20px;
  }
  .main-content.news .news-wrapper .content .text a {
    color: #e51b23;
    text-decoration: underline;
    font-weight: bold;
  }
  .main-content.news .news-wrapper .content .text a:hover {
    text-decoration: none;
  }
  .main-content.news .news-wrapper.news-wrapper_kh .middle-title {
    font-size: 14px;
  }
  .main-content.news .news-wrapper.news-wrapper_kh .news-kh_list {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .main-content.news .news-wrapper.news-wrapper_kh .news-kh_list .news-kh_listItem:first-child {
    max-width: 100%;
  }
  .main-content.news .news-wrapper.news-wrapper_kh .news-kh_list .news-kh_listItem:last-child {
    max-width: 100%;
  }
  .main-content.news .news-wrapper.news-wrapper_kh .news-kh_list img {
    max-width: 80%;
    max-height: 200px;
  }
  .main-content.news .news-wrapper.news-wrapper_kh .info-area dl dt {
    max-width: 100%;
    width: 100%;
  }
  .main-content.news .news-wrapper.news-wrapper_kh .info-area dl dd {
    max-width: 100%;
    width: 100%;
    margin-right: inherit;
    margin-bottom: 10px;
    padding-left: 1em;
  }
  .main-content.news .pager {
    margin: 0 0 20px;
  }
  .main-content.news .pager .loadmore .loadmore-button {
    padding: 1em 5em;
    font-size: 12px;
  }
  .main-content.news .pager li {
    width: 40px;
    height: 40px;
    margin: 0 10px;
  }
  .main-content.news .pager li a {
    line-height: 40px;
  }
  .main-content.news .pager li a img {
    vertical-align: middle;
    padding: 0 0 5px;
  }
}

.news.main-content .type-list-title {
  margin: 0px 0px 10px 0px;
  padding: 3px 0px 3px 21px;
  background-color: cornflowerblue;
  font-size: 12px;
  color: white;
  line-height: 18px;
  letter-spacing: 1px;
}

.news.main-content .bg_gray {
  background-color: #999;
}

.news.main-content .bg_green {
  background-color: #408080;
}

@media screen and (min-width: 769px) {
  .news.main-content .spec-table {
    width: 70%;
  }
}

.news.main-content table {
  display: block;
}

@media screen and (min-width: 769px) {
  .news.main-content table {
    margin-top: 15px;
    margin-bottom: 15px;
  }
}

.news.main-content th {
  padding: 5px 5px 5px 10px;
  border-top: 1px solid #a7a7a7;
  border-left: 1px solid #a7a7a7;
  line-height: 1.3em;
}

.news.main-content td {
  padding: 5px 5px 5px 10px;
  text-align: left;
  vertical-align: top;
  border-top: 1px solid #a7a7a7;
  border-left: 1px solid #a7a7a7;
  line-height: 1.3em;
}

.news.main-content td:last-child {
  border-right: 1px solid #a7a7a7;
}

@media screen and (max-width: 768px) {
  .news.main-content td:last-child {
    border-right: none;
  }
}

@media screen and (max-width: 768px) {
  .news.main-content .spec-table_schedule {
    border-left: 1px solid #a7a7a7;
    border-right: 1px solid #a7a7a7;
    border-bottom: 1px solid #a7a7a7;
  }
}

@media screen and (max-width: 768px) {
  .news.main-content .spec-table_schedule th {
    display: block;
    width: 100%;
    border-left: none;
  }
}

@media screen and (max-width: 768px) {
  .news.main-content .spec-table_schedule td {
    display: block;
    width: 100%;
    border-left: none;
  }
}

.news.main-content .td_last {
  border-bottom: 1px solid #a7a7a7;
}

.news.main-content .color {
  background: #f0f0f0;
}

.news.main-content .news_file_link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

#tecSeminor.main-content.news .news-wrapper #Container > div a .info {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

#campaign.main-content.news .news-wrapper #Container > div a .info {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

/*********************************

_recruit.scss

*********************************/
.main-content.recruit .content-info-txt {
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 0.075em;
  color: #333648;
}

.main-content.recruit .row-container {
  margin: 40px 0 0;
}

.main-content.recruit .row-container .title-container {
  padding: 12px 45px 10px 14px;
  position: relative;
  background-color: #e51b23;
  width: 100%;
  display: block;
  line-height: 1;
}

.main-content.recruit .row-container .title-container .title {
  width: auto;
  display: inline-block;
  vertical-align: middle;
  font-size: 20px;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #fff;
}

.main-content.recruit .row-container .sub-title-link {
  color: #e51b23;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
}

.main-content.recruit .row-container .textArea {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.main-content.recruit .row-container .txtArea .recruit__pic {
  float: left;
  max-width: 350px;
  width: 100%;
  padding-right: 20px;
}

.main-content.recruit .row-container .txtArea .txt-container {
  float: right;
  max-width: calc(100% - 350px);
  width: 100%;
}

.main-content.recruit .row-container .txt-container.text {
  margin-top: 20px;
  max-width: calc(100% - 350px);
  width: 100%;
}

.main-content.recruit .row-container .txt-container.recruit__text {
  max-width: calc(100% / 2);
  width: 100%;
}

.main-content.recruit .row-container .btn-wrapper {
  padding: 20px;
  text-align: right;
}

.main-content.recruit .row-container .btn {
  display: inline-block;
  width: 280px;
  padding: 0 0 0 20px;
  text-align: center;
  font-size: 16px;
  line-height: 60px;
  color: #fff;
  background-color: #333648;
  background-image: url(../images/btn-white-arrow.png);
  background-size: 8px;
  background-repeat: no-repeat;
  background-position: center left 60px;
}

.main-content.recruit .row-container .btn:hover {
  opacity: 0.8;
}

.main-content.recruit .row-container .content-list {
  margin: 40px 0 0;
  list-style-type: none;
  overflow: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.main-content.recruit .row-container .content-list .item {
  float: left;
  width: calc(50% - 100px);
  margin: 0 20px 20px 0;
  text-align: center;
  background-color: #eee;
}

.main-content.recruit .row-container .content-list .item:nth-of-type(2n) {
  margin: 0 0 20px;
}

.main-content.recruit .row-container .content-list .item .item-link {
  display: block;
  color: #000;
}

.main-content.recruit .row-container .content-list .item .item-link:hover {
  opacity: 0.8;
}

.main-content.recruit .row-container .content-list .item .title {
  color: #fff;
  font-weight: normal;
  line-height: 40px;
  font-size: 15px;
  background-color: #e51b23;
}

.main-content.recruit .row-container .content-list .item .text {
  min-height: 70px;
  padding: 10px;
  font-size: 15px;
}

.main-content.recruit .row-container .recruit__pic {
  max-width: 400px;
  width: 100%;
}

.main-content.recruit .row-container .recruit__pic .recruit__history {
  width: 100%;
}

.main-content.recruit .row-container .pic.product__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

@media screen and (min-width: 769px) {
  .main-content.recruit .row-container .pic.product__wrap {
    max-width: 350px;
    width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .main-content.recruit .row-container .pic.product__wrap {
    width: 100%;
  }
}

.main-content.recruit .row-container .product__wrap__recruit__link {
  display: block;
  width: 50%;
}

@media screen and (min-width: 769px) {
  .main-content.recruit .row-container .product__wrap__recruit__link {
    height: 125px;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

@media screen and (max-width: 768px) {
  .main-content.recruit .row-container .product__wrap__recruit__link {
    height: 80px;
  }
}

.main-content.recruit .row-container .product_intro {
  margin-top: 20px;
}

.main-content.recruit .row-container .product_intro_pic {
  float: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 350px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  text-align: center;
  padding-left: 20px;
  padding-right: 40px;
}

@media screen and (max-width: 768px) {
  .main-content.recruit .row-container .product_intro_pic {
    max-width: none;
  }
}

.main-content.recruit .row-container .product_intro_picItem {
  width: 50%;
}

.main-content.recruit .row-container .product_intro_picItem a {
  display: block;
}

.main-content.recruit .row-container .product_intro_picItem:hover {
  opacity: 0.6;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

.main-content.recruit .row-container .product_intro .txt-container {
  float: right;
}

.main-content.recruit .row-container .pic {
  margin: 40px 0 0;
  text-align: center;
}

.main-content.recruit .row-container .pic img {
  max-width: 300px;
  height: auto;
  vertical-align: middle;
}

.main-content.recruit .row-container .pic figcaption {
  font-size: 12px;
  padding: 10px 0 0;
}

.main-content.recruit .row-container table {
  width: 100%;
  margin: 40px 0 0;
  border: 1px solid #eee;
  border-collapse: collapse;
}

.main-content.recruit .row-container table th {
  padding: 10px;
  font-weight: normal;
  font-size: 15px;
  color: #fff;
  border-right: 1px solid #eee;
  border-bottom: 1px solid #eee;
  background-color: #333;
}

.main-content.recruit .row-container table td {
  padding: 10px;
  font-weight: normal;
  font-size: 15px;
  border-bottom: 1px solid #eee;
}

.main-content.recruit .row-container table.entry th {
  width: 188px;
}

/**SP**/
@media only screen and (max-width: 768px) {
  .main-content.recruit {
    margin: 20px 0 40px;
  }
  .main-content.recruit .content-info-txt {
    font-size: 15px;
    line-height: 1.6;
  }
  .main-content.recruit .row-container {
    margin: 20px 0 0;
  }
  .main-content.recruit .row-container .btn {
    line-height: 50px;
  }
  .main-content.recruit .row-container .textArea {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .main-content.recruit .row-container .txt-container.text {
    width: 100%;
  }
  .main-content.recruit .row-container .content-list {
    margin: 20px 0 0;
  }
  .main-content.recruit .row-container .content-list .item {
    float: none;
    width: 100%;
    margin: 0 0 20px 0;
  }
  .main-content.recruit .row-container .pic {
    margin: 20px 0 0;
    text-align: center;
  }
  .main-content.recruit .row-container .pic img {
    max-width: 300px;
    height: auto;
    vertical-align: middle;
  }
  .main-content.recruit .row-container .pic figcaption {
    font-size: 12px;
    padding: 10px 0 0;
  }
  .main-content.recruit .row-container table {
    margin: 20px 0 0;
  }
  .main-content.recruit .row-container table th {
    display: inline-block;
    width: 100%;
  }
  .main-content.recruit .row-container table td {
    display: inline-block;
    width: 100%;
  }
  .main-content.recruit .row-container table.entry th {
    width: 100%;
  }
  .main-content.recruit .row-container .txt-container.text {
    max-width: 100%;
  }
  .main-content.recruit .row-container .txt-container.recruit__text {
    max-width: 100%;
  }
  .main-content.recruit .row-container .recruit__pic {
    max-width: 100%;
  }
  .main-content.recruit .row-container figcaption {
    font-size: 13px;
  }
  .main-content.recruit .sidebar {
    margin: 40px 0 0;
  }
}

/*********************************
事業部案内
*********************************/
.divison__intro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (min-width: 769px) {
  .divison__intro {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 40px;
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 768px) {
  .divison__intro {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 30px;
    margin-bottom: 15px;
  }
}

.divison__intro__list {
  position: relative;
}

@media screen and (min-width: 769px) {
  .divison__intro__list {
    width: calc(100% / 4.2);
  }
}

@media screen and (max-width: 768px) {
  .divison__intro__list {
    width: calc(100% / 2);
    height: 80px;
  }
}

@media screen and (max-width: 768px) {
  .divison__intro__list:nth-child(1) {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 768px) {
  .divison__intro__list:nth-child(2) {
    margin-bottom: 20px;
  }
}

.divison__intro__list::before {
  content: '';
  position: absolute;
  z-index: -1;
  display: block;
  background-color: #d6fafc;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  -webkit-transform: skewY(-5deg);
  -ms-transform: skewY(-5deg);
  transform: skewY(-5deg);
  top: 0;
  left: 0;
}

.divison__intro__list__link {
  display: block;
  -webkit-transition: all .2s linear;
  -o-transition: all .2s linear;
  transition: all .2s linear;
}

@media screen and (min-width: 769px) {
  .divison__intro__list__link:hover {
    opacity: 0.5;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

.divison__intro__list__link__title {
  color: #e51b23;
  font-size: 16px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .divison__intro__list__link__title {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 768px) {
  .divison__intro__list__link__title {
    margin-bottom: 6px;
  }
}

.divison__intro__list__link__text {
  color: #000;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .divison__intro__list__link__text {
    font-size: 14px;
  }
}

@media screen and (max-width: 768px) {
  .divison__intro__list__link__text {
    font-size: 13px;
  }
}

/*********************************

_recruit.scss

*********************************/
.main-content.contact .content-info-txt {
  font-size: 18px;
  line-height: 1.8;
  letter-spacing: 0.075em;
  color: #333648;
}

.main-content.contact .map {
  margin: 40px 0 0;
  text-align: center;
}

.main-content.contact .map img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

.main-content.contact .row-container {
  margin: 40px 0 0;
}

.main-content.contact .row-container .title-container {
  padding: 12px 45px 10px 14px;
  position: relative;
  background-color: #e51b23;
  width: 100%;
  display: block;
  line-height: 1;
}

.main-content.contact .row-container .title-container .title {
  width: auto;
  display: inline-block;
  vertical-align: middle;
  font-size: 20px;
  font-weight: normal;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #fff;
}

.main-content.contact .row-container .txt-container a {
  color: #e51b23;
  text-decoration: underline;
}

.main-content.contact .row-container .btn-wrapper {
  padding: 20px;
  text-align: center;
}

.main-content.contact .row-container .btn {
  display: inline-block;
  width: 280px;
  padding: 0 0 0 20px;
  font-size: 16px;
  line-height: 60px;
  color: #fff;
  background-color: #333648;
  background-image: url(../images/btn-white-arrow.png);
  background-size: 8px;
  background-repeat: no-repeat;
  background-position: center left 60px;
}

.main-content.contact .row-container .btn:hover {
  opacity: 0.8;
}

.main-content.contact .row-container .btn-list {
  margin: 20px 0 0;
  overflow: hidden;
}

.main-content.contact .row-container .btn-list .btn {
  float: left;
  width: calc(50% - 10px);
  margin: 0 20px 20px 0;
  text-align: center;
  background-position: center left 80px;
}

.main-content.contact .row-container .btn-list .btn:nth-of-type(2n) {
  margin: 0 0 20px;
}

.main-content.contact .row-container .btn-list .btn.normal__button {
  float: none;
  display: block;
  margin: 0 20px 20px 0;
  text-align: center;
  background-position: center left 40px;
}

@media screen and (min-width: 769px) {
  .main-content.contact .row-container .btn-list .btn.normal__button {
    width: calc(50% - 10px);
  }
}

@media screen and (max-width: 768px) {
  .main-content.contact .row-container .btn-list .btn.normal__button {
    background-image: none;
  }
}

.main-content.contact .row-container .btn-list .btn.normal__button:nth-of-type(2n) {
  margin: 0 0 20px;
}

.main-content.contact .row-container .btn-list .btn.technical__button {
  float: none;
  display: block;
  margin: 0 20px 20px 0;
  text-align: center;
  background-position: center left 40px;
}

@media screen and (min-width: 769px) {
  .main-content.contact .row-container .btn-list .btn.technical__button {
    width: calc(50% - 10px);
  }
}

@media screen and (max-width: 768px) {
  .main-content.contact .row-container .btn-list .btn.technical__button {
    background-image: none;
  }
}

.main-content.contact .row-container .btn-list .btn.technical__button:nth-of-type(2n) {
  margin: 0 0 20px;
}

.main-content.contact .row-container .btn-list .btn.technical__button:hover {
  opacity: 1;
}

.main-content.contact .row-container .btn-list .technical__button__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #000;
}

@media screen and (min-width: 769px) {
  .main-content.contact .row-container .btn-list .technical__button__link {
    width: calc(50% - 10px);
    padding-left: 60px;
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 768px) {
  .main-content.contact .row-container .btn-list .technical__button__link {
    padding-left: 15%;
    margin-bottom: 10px;
  }
}

.main-content.contact .row-container .btn-list .technical__button__link::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6.5px 0 6.5px 8px;
  border-color: transparent transparent transparent #000;
}

@media screen and (min-width: 769px) {
  .main-content.contact .row-container .btn-list .technical__button__link::before {
    margin-right: 20px;
  }
}

@media screen and (max-width: 768px) {
  .main-content.contact .row-container .btn-list .technical__button__link::before {
    margin-right: 3%;
  }
}

@media screen and (min-width: 769px) {
  .main-content.contact .row-container .btn-list .technical__button__link:hover {
    opacity: 0.5;
  }
}

.main-content.contact .row-container .btn-list .technical__button__linkLower {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #000;
}

@media screen and (min-width: 769px) {
  .main-content.contact .row-container .btn-list .technical__button__linkLower {
    width: calc(50% - 10px);
    padding-left: 80px;
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 768px) {
  .main-content.contact .row-container .btn-list .technical__button__linkLower {
    padding-left: 20%;
    margin-bottom: 10px;
  }
}

.main-content.contact .row-container .btn-list .technical__button__linkLower::before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6.5px 0 6.5px 8px;
  border-color: transparent transparent transparent #000;
}

@media screen and (min-width: 769px) {
  .main-content.contact .row-container .btn-list .technical__button__linkLower::before {
    margin-right: 20px;
  }
}

@media screen and (max-width: 768px) {
  .main-content.contact .row-container .btn-list .technical__button__linkLower::before {
    margin-right: 3%;
  }
}

@media screen and (min-width: 769px) {
  .main-content.contact .row-container .btn-list .technical__button__linkLower:hover {
    opacity: 0.5;
    -webkit-transition: all .2s linear;
    -o-transition: all .2s linear;
    transition: all .2s linear;
  }
}

.main-content.contact .row-container .content-list {
  margin: 40px 0 0;
  list-style-type: none;
  overflow: hidden;
}

.main-content.contact .row-container .content-list .item {
  float: left;
  width: calc(50% - 10px);
  margin: 0 20px 20px 0;
  text-align: center;
  background-color: #eee;
}

.main-content.contact .row-container .content-list .item:nth-of-type(2n) {
  margin: 0 0 20px;
}

.main-content.contact .row-container .content-list .item .title {
  color: #fff;
  font-weight: normal;
  line-height: 40px;
  font-size: 15px;
  background-color: #e51b23;
}

.main-content.contact .row-container .content-list .item .text {
  min-height: 70px;
  padding: 10px;
  font-size: 15px;
}

.main-content.contact .row-container .pic {
  margin: 40px 0 0;
  text-align: center;
}

.main-content.contact .row-container .pic img {
  height: auto;
  vertical-align: middle;
}

.main-content.contact .row-container .pic figcaption {
  font-size: 12px;
  padding: 10px 0 0;
}

.main-content.contact .row-container .pic.large img {
  width: 100%;
  max-width: 600px;
}

.main-content.contact .row-container table {
  width: 100%;
  margin: 40px 0 0;
  border: 1px solid #eee;
  border-collapse: collapse;
}

.main-content.contact .row-container table th {
  width: 300px;
  padding: 10px;
  font-weight: normal;
  font-size: 15px;
  color: #fff;
  border-right: 1px solid #eee;
  border-bottom: 1px solid #eee;
  background-color: #333;
}

.main-content.contact .row-container table td {
  padding: 10px;
  font-weight: normal;
  font-size: 15px;
  border-bottom: 1px solid #eee;
}

.main-content.contact .row-container table.contact-table {
  border: none;
}

.main-content.contact .row-container table.contact-table tbody {
  display: block;
  width: 100%;
}

.main-content.contact .row-container table.contact-table tr {
  width: 100%;
  display: block;
  border: 1px solid #eee;
}

.main-content.contact .row-container table.contact-table th {
  text-align: left;
  border: none;
}

.main-content.contact .row-container table.contact-table th span {
  display: inline-block;
  margin: 0 0 0 10px;
  padding: 0 5px;
  background-color: #fff;
  color: red;
  font-size: 12px;
}

.main-content.contact .row-container table.contact-table td {
  padding: 10px 10px 10px 20px;
  border: none;
}

.main-content.contact .row-container table.contact-table td label {
  margin: 0 15px 15px 0;
}

.main-content.contact .row-container table.contact-table td input[type="text"] {
  max-width: 800px;
  width: 100%;
  font-size: 15px;
  line-height: 20px;
  padding: 5px;
}

.main-content.contact .row-container table.contact-table td textarea {
  width: 100%;
  padding: 10px;
  font-size: 13px;
  line-height: 18px;
}

.main-content.contact .row-container table.contact-table.water {
  display: none;
}

.main-content.contact .row-container table.contact-table.water.js-active {
  display: block;
}

.main-content.contact .row-container table.contact-table.water td input[type="text"] {
  width: auto;
}

.main-content.contact .row-container table.contact-table.water input, .main-content.contact .row-container table.contact-table.water select {
  margin-bottom: 3px;
}

.main-content.contact .row-container table.contact-table.sonic {
  display: none;
}

.main-content.contact .row-container table.contact-table.sonic.js-active {
  display: block;
}

.main-content.contact .row-container table.contact-table.sonic td input[type="text"] {
  width: auto;
}

.main-content.contact .row-container table.tel-table td {
  border-right: 1px solid #eee;
  text-align: center;
}

.main-content.contact .row-container table.tel-table td.tel-table_left {
  text-align: left;
  padding-left: 6%;
}

.main-content.contact .row-container .info {
  padding: 20px;
  border: 1px solid #eee;
  background-color: #fafafa;
  overflow: hidden;
}

.main-content.contact .row-container .info .text {
  float: left;
  width: calc(100% - 150px);
  font-size: 15px;
  line-height: 1.5em;
}

.main-content.contact .row-container .submit {
  margin: 40px 0 0;
  text-align: center;
}

.main-content.contact .row-container .submit input[type="submit"],
.main-content.contact .row-container .submit input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  border: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #e51b23;
  padding: 10px 20px;
  color: #fff;
  font-size: 15px;
  cursor: pointer;
}

.main-content.contact .row-container .submit input[type="submit"]::-webkit-search-decoration,
.main-content.contact .row-container .submit input[type="button"]::-webkit-search-decoration {
  display: none;
}

.main-content.contact .row-container .submit input[type="submit"]::focus,
.main-content.contact .row-container .submit input[type="button"]::focus {
  outline-offset: -2px;
}

.main-content.contact .row-container .submit input[type="submit"]:hover,
.main-content.contact .row-container .submit input[type="button"]:hover {
  opacity: 0.8;
}

.main-content.contact .row-container > ul {
  margin: 40px 0 0;
  overflow: hidden;
  list-style-type: none;
}

.main-content.contact .row-container > ul li {
  float: left;
  width: calc(50% - 10px);
  margin: 0 20px 20px 0;
}

.main-content.contact .row-container > ul li:nth-of-type(2n) {
  margin: 0 0 20px;
}

.main-content.contact .row-container > ul li:before {
  content: "・";
  display: inline;
}

.main-content.contact .row-container .tel-box {
  max-width: 400px;
  border: 1px solid #ccc;
  margin: 40px auto 0;
  padding: 20px;
  text-align: center;
}

.main-content.contact .row-container .tel-box a {
  display: inline-block;
  width: 150px;
  margin: 10px 0 0;
  padding: 0 0 0 15px;
  font-size: 14px;
  line-height: 40px;
  color: #fff;
  background-color: #333648;
  background-image: url(../images/btn-white-arrow.png);
  background-size: 8px;
  background-repeat: no-repeat;
  background-position: center left 15px;
}

.main-content.contact .row-container .tel-box a:hover {
  opacity: 0.8;
}

.main-content.contact .row-container .pic-content {
  margin: 20px 0 0;
  overflow: hidden;
}

.main-content.contact .row-container .pic-content .pic-area {
  float: left;
  margin-bottom: 20px;
  margin-right: 20px;
}

.main-content.contact .row-container .pic-content .pic-area img {
  width: 100%;
  height: auto;
  vertical-align: middle;
  border: 1px solid #eee;
}

.main-content.contact .row-container .pic-content .text-area {
  float: left;
  padding-left: 20px;
  max-width: calc(100% - 200px);
}

.main-content.contact .row-container .pic-content .text-area .title {
  margin: 0 0 5px;
  padding: 0 0 0 10px;
  font-size: 16px;
  line-height: 20px;
  border-left: 3px solid #e51b23;
}

.main-content.contact .row-container .pic-content .text-area .text {
  margin: 0 0 20px;
  font-size: 14px;
}

.main-content.contact .row-container .qa-cotnent {
  margin: 20px 0 0;
}

.main-content.contact .row-container .qa-cotnent dt {
  margin: 0 0 10px;
  padding: 0 0 0 20px;
  position: relative;
  font-weight: bold;
}

.main-content.contact .row-container .qa-cotnent dt:before {
  content: "Q";
  display: block;
  font-weight: bold;
  color: #e51b23;
  position: absolute;
  top: 0;
  left: 0;
}

.main-content.contact .row-container .qa-cotnent dd {
  padding: 0 0 0 20px;
  position: relative;
}

.main-content.contact .row-container .qa-cotnent dd:before {
  content: "A";
  display: block;
  font-weight: bold;
  color: #ff0000;
  position: absolute;
  top: 0;
  left: 0;
}

.main-content.contact .row-container .qa-cotnent dd a {
  color: #e51b23;
}

.water-technical table.contact-table tr {
  margin-bottom: 40px;
}

.water-technical table.contact-table tr:last-child th::after {
  content: none;
}

.water-technical table.contact-table th {
  position: relative;
  background-color: #e51b23 !important;
}

.water-technical table.contact-table th::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 10px 0 10px;
  border-color: #000333 transparent transparent transparent;
  position: absolute;
  bottom: -30px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.water-technical .row-container .btn-list .btn.normal__button,
.water-technical .row-container .btn-list .btn.technical__button {
  background-color: #0074E8;
  font-size: 20px;
  line-height: 1.4;
  padding: 10px 10px 10px 50px;
  text-align: left !important;
  background-position: center left 20px !important;
}

@media screen and (max-width: 768px) {
  .water-technical .row-container .btn-list .btn.normal__button,
  .water-technical .row-container .btn-list .btn.technical__button {
    padding: 10px 20px !important;
  }
}

.water-technical .technical-title {
  margin-top: 20px;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 15px;
  position: relative;
  border-left: 5px #e51b23 solid;
  vertical-align: middle;
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #e51b23;
}

@media screen and (max-width: 768px) {
  .water-technical .technical-title {
    font-size: 15px;
    line-height: 1.4;
  }
}

/**SP**/
@media only screen and (max-width: 768px) {
  .main-content.contact {
    margin: 20px 0 40px;
  }
  .main-content.contact .content-info-txt {
    font-size: 15px;
    line-height: 1.6;
  }
  .main-content.contact .row-container {
    margin: 20px 0 0;
  }
  .main-content.contact .row-container .btn {
    line-height: 50px;
  }
  .main-content.contact .row-container .btn-list .btn {
    float: none;
    width: 100%;
    margin: 0 0 20px 0;
    padding: 0 5px;
    font-size: 14px;
    text-align: center;
    background-position: center left 20px;
  }
  .main-content.contact .row-container .btn-list .btn:nth-of-type(2n) {
    margin: 0 0 20px;
  }
  .main-content.contact .row-container .content-list {
    margin: 20px 0 0;
  }
  .main-content.contact .row-container .content-list .item {
    float: none;
    width: 100%;
    margin: 0 0 20px 0;
  }
  .main-content.contact .row-container .pic-content .pic-area {
    float: none;
    max-width: none;
    margin-right: 0;
    text-align: center;
  }
  .main-content.contact .row-container .pic-content .pic-area img {
    width: auto;
  }
  .main-content.contact .row-container .pic-content .text-area {
    float: none;
    max-width: none;
  }
  .main-content.contact .row-container .pic {
    margin: 20px 0 0;
    text-align: center;
  }
  .main-content.contact .row-container .pic img {
    max-width: 300px;
    height: auto;
    vertical-align: middle;
  }
  .main-content.contact .row-container .pic figcaption {
    font-size: 12px;
    padding: 10px 0 0;
  }
  .main-content.contact .row-container table {
    margin: 20px 0 0;
  }
  .main-content.contact .row-container table th {
    display: inline-block;
    width: calc(100vw - 40px);
    font-size: 13px;
  }
  .main-content.contact .row-container table td {
    display: inline-block;
    width: calc(100vw - 40px);
    font-size: 13px;
  }
  .main-content.contact .row-container table.contact-table th {
    width: 100%;
    font-size: 13px;
  }
  .main-content.contact .row-container table.contact-table td {
    width: 100%;
    font-size: 13px;
  }
  .main-content.contact .row-container table.contact-table input[type="text"] {
    width: calc(100% - 100px);
  }
  .main-content.contact .row-container > ul {
    margin: 20px 0 0;
    overflow: hidden;
    list-style-type: none;
  }
  .main-content.contact .row-container > ul li {
    float: none;
    width: 100%;
    margin: 0 0 10px 0;
  }
  .main-content.contact .row-container > ul li:nth-of-type(2n) {
    margin: 0 0 10px;
  }
  .main-content.contact .row-container .info .text {
    width: 100%;
    margin-bottom: 1em;
  }
  .main-content.contact .sidebar {
    margin: 40px 0 0;
  }
  .water-technical table.contact-table tr {
    margin-bottom: 40px;
    position: relative;
  }
  .water-technical table.contact-table tr::after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 10px;
    border-color: #000333 transparent transparent transparent;
    position: absolute;
    bottom: -30px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .water-technical table.contact-table tr:last-child::after {
    content: none;
  }
  .water-technical table.contact-table th::after {
    content: none;
  }
}

.error {
  color: red;
}

/*********************************

2020.12 モジュール

*********************************/
/* Margin SP */
@media screen and (max-width : 767px) {
  .mt0 { margin-top: 0!important }
  .mt-5 { margin-top: .5rem!important }
  .mt1 { margin-top: 1rem!important }
  .mt1-5 { margin-top: 1.5rem!important }
  .mt2 { margin-top: 2rem!important }
  .mt3 { margin-top: 3rem!important }
  .mt4 { margin-top: calc(4rem/2)!important }
  .mt5 { margin-top: calc(5rem/2)!important }
  .mt6 { margin-top: calc(6rem/2)!important }
  .mt7 { margin-top: calc(7rem/2)!important }
  .mt8 { margin-top: calc(8rem/2)!important }
  .mt9 { margin-top: calc(9rem/2)!important }
  .mt10 { margin-top: calc(10rem/2)!important }
  .mt15 { margin-top: calc(15rem/2)!important }

  .mb0 { margin-bottom: 0!important }
  .mb1 { margin-bottom: 1rem!important }
  .mb2 { margin-bottom: 2rem!important }
  .mb3 { margin-bottom: 3rem!important }
  .mb4 { margin-bottom: calc(4rem/2)!important }
  .mb5 { margin-bottom: calc(5rem/2)!important }
  .mb6 { margin-bottom: calc(6rem/2)!important }
  .mb7 { margin-bottom: calc(7rem/2)!important }
  .mb8 { margin-bottom: calc(8rem/2)!important }
  .mb9 { margin-bottom: calc(9rem/2)!important }
  .mb10 { margin-bottom: calc(10rem/2)!important }
  .mb15 { margin-bottom: calc(15rem/2)!important }

  .ml0 { margin-left: 0!important }
  .ml1 { margin-left: 1rem!important }
  .ml2 { margin-left: 2rem!important }
  .ml4 { margin-left: calc(4rem/2)!important }

  .mr0 { margin-right: 0!important }
  .mr1 { margin-right: 1rem!important }
  .mr2 { margin-right: 2rem!important }
  .mr4 { margin-right: calc(4rem/2)!important }

  /* Padding */
  .pt0 { padding-top: 0!important }
  .pt1 { padding-top: 1rem!important }
  .pt2 { padding-top: 2rem!important }
  .pt3 { padding-top: 3rem!important }
  .pt4 { padding-top: calc(4rem/2)!important }
  .pt5 { padding-top: calc(5rem/2)!important }
  .pt6 { padding-top: calc(6rem/2)!important }
  .pt7 { padding-top: calc(7rem/2)!important }
  .pt8 { padding-top: calc(8rem/2)!important }
  .pt9 { padding-top: calc(9rem/2)!important }
  .pt10 { padding-top: calc(10rem/2)!important }
  .pt15 { padding-top: calc(15rem/2)!important }

  .pb0 { padding-bottom: 0!important }
  .pb1 { padding-bottom: 1rem!important }
  .pb2 { padding-bottom: 2rem!important }
  .pb3 { padding-bottom: 3rem!important }
  .pb4 { padding-bottom: calc(4rem/2)!important }
  .pb5 { padding-bottom: calc(5rem/2)!important }
  .pb6 { padding-bottom: calc(6rem/2)!important }
  .pb7 { padding-bottom: calc(7rem/2)!important }
  .pb8 { padding-bottom: calc(8rem/2)!important }
  .pb9 { padding-bottom: calc(9rem/2)!important }
  .pb10 { padding-bottom: calc(10rem/2)!important }
  .pb15 { padding-bottom: calc(15rem/2)!important }

  .pl0 { padding-left: 0!important }
  .pr0 { padding-right: 0!important }
}

/* Margin PC */
@media screen and (min-width : 768px) {
  .mt0 { margin-top: 0!important }
  .mt1 { margin-top: 1rem!important }
  .mt1-5 { margin-top: 1.5rem!important }
  .mt2 { margin-top: 2rem!important }
  .mt3 { margin-top: 3rem!important }
  .mt4 { margin-top: 4rem!important }
  .mt5 { margin-top: 5rem!important }
  .mt6 { margin-top: 6rem!important }
  .mt7 { margin-top: 7rem!important }
  .mt8 { margin-top: 8rem!important }
  .mt9 { margin-top: 9rem!important }
  .mt10 { margin-top: 10rem!important }
  .mt15 { margin-top: 15rem!important }

  .mb0 { margin-bottom: 0!important }
  .mb1 { margin-bottom: 1rem!important }
  .mb2 { margin-bottom: 2rem!important }
  .mb3 { margin-bottom: 3rem!important }
  .mb4 { margin-bottom: 4rem!important }
  .mb5 { margin-bottom: 5rem!important }
  .mb6 { margin-bottom: 6rem!important }
  .mb7 { margin-bottom: 7rem!important }
  .mb8 { margin-bottom: 8rem!important }
  .mb9 { margin-bottom: 9rem!important }
  .mb10 { margin-bottom: 10rem!important }
  .mb15 { margin-bottom: 15rem!important }

  .ml0 { margin-left: 0!important }
  .ml1 { margin-left: 1rem!important }
  .ml2 { margin-left: 2rem!important }
  .ml4 { margin-left: 4rem!important }

  .mr0 { margin-right: 0!important }
  .mr1 { margin-right: 1rem!important }
  .mr2 { margin-right: 2rem!important }
  .mr4 { margin-right: 4rem!important }

  /* Padding */
  .pt0 { padding-top: 0!important }
  .pt1 { padding-top: 1rem!important }
  .pt2 { padding-top: 2rem!important }
  .pt3 { padding-top: 3rem!important }
  .pt4 { padding-top: 4rem!important }
  .pt5 { padding-top: 5rem!important }
  .pt6 { padding-top: 6rem!important }
  .pt7 { padding-top: 7rem!important }
  .pt8 { padding-top: 8rem!important }
  .pt9 { padding-top: 9rem!important }
  .pt10 { padding-top: 10rem!important }
  .pt15 { padding-top: 15rem!important }

  .pb0 { padding-bottom: 0!important }
  .pb1 { padding-bottom: 1rem!important }
  .pb2 { padding-bottom: 2rem!important }
  .pb3 { padding-bottom: 3rem!important }
  .pb4 { padding-bottom: 4rem!important }
  .pb5 { padding-bottom: 5rem!important }
  .pb6 { padding-bottom: 6rem!important }
  .pb7 { padding-bottom: 7rem!important }
  .pb8 { padding-bottom: 8rem!important }
  .pb9 { padding-bottom: 9rem!important }
  .pb10 { padding-bottom: 10rem!important }
  .pb15 { padding-bottom: 15rem!important }

  .pl0 { padding-left: 0!important }
  .pr0 { padding-right: 0!important }
}

/* Align */
.middle {
  vertical-align: middle!important;
}

/*********************************

2021.05 英語アンカーリンク

*********************************/
@media screen and (min-width : 768px) {
  .main-content .product-links-btns-container .product-links-btns-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .main-content .product-links-btns-container .product-links-btns-row .left-area {
    float: none;
  }
  .main-content .product-links-wrapper .product-links-btns-container .product-links-btns-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .main-content .product-links-wrapper .product-links-btns-container .product-links-btns-column a {
    width: 100%;
  }
}

.main-content .product-links-wrapper .product-links-btns-container .product-links-btns-column a {
  padding: 16px 30px 16px 16px!important;
}
.main-content .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title {
  line-height: 1.4!important;
}
.main-content .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title-icon {
  right: -20px!important;
}

@media screen and (max-width : 767px) {
  .main-content .product-links-wrapper .product-links-btns-container .product-links-btns-column .title-container .title {
    font-size: 15px!important;
  }
}

/*********************************

2021.05 トップページ About

*********************************/
@media screen and (min-width : 768px) {
  .home .about-wrapper .about-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .home .about-wrapper .about-row__left, .home .about-wrapper .about-row__right {
    width: calc(( 100% / 2) - 10px);
  }
  .home .about-wrapper .about-row__right .about-btn-container {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      padding: 0;
      margin: 0;
      height: 100%;
  }
  .home .about-wrapper .about-row__right .about-btn-container .about-btn-item {
    max-width:  100%;
    margin: 0;
    padding: 0;
    height: calc(100% / 3 - 10px);
  }
  .home .about-wrapper .about-row__right .about-btn-container .about-btn-item a {
    padding: 20px;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
  }
}

@media screen and (max-width : 767px) {
  .home .about-wrapper .about-row__right .about-btn-container {
    display: block;
    padding: 30px 0 0;
  }
  .home .about-wrapper .about-row__right .about-btn-container .about-btn-item {
    max-width:  100%;
    padding: 0;
    margin: 0 0 12px;
  }
  .home .about-wrapper .about-row__right .about-btn-container .about-btn-item a {
    padding: 20px;
    width: 100%;
    height: 100%;
    text-align: center;
  }

}

/*********************************

2021/07 見出しの斜めカットを修正

*********************************/
@media screen and (max-width: 768px) {
  .product-title-wrapper {
    overflow: hidden;
  }
  .products .product-content-wrapper .product-title-container {
    height: auto;
  }
  .products .product-content-wrapper .product-title-container .side-edge-white,
  .water-suiikei .side-edge-white {
    right: -8vw;
    top: -5vw;
    border: none;
    background: #fff;
    transform: rotate(-25deg);
    width: 13vw;
    height: 150%;
  }
  .water-suiikei .product-title-container {
    padding-right: 10vw;
  }

  .products .product-content-wrapper .product-title-container {
    display: inline-block;
  }
}

/*********************************

2021/07 テクニカルノート＆リファレンス

*********************************/
.water-suiikei ul.flyer-list{
  margin-bottom: 40px;
}
.water-suiikei .flyer-list-item {
  display: table;
  padding:10px 5px 10px;
  width: 100%;
  border-bottom:#CCC 1px dotted;
}
.water-suiikei .flyer-list-item .btn-container{
  margin-top: 10px;
}
.water-suiikei .flyer-list-item .flyer-date {
  display: table-cell;
  vertical-align: top;
  padding-top: 10px;
  color: #e51b23;
  width: 124px;
}
.water-suiikei .flyer-list-item .flyer-new {
  display: inline-block;
  color: #FF0000;
  background: #FFE6E6;
  text-align: center;
  margin: 3px 0 0;
  padding: 0 7px;
  font-size: 12px;
  letter-spacing: 0;
}
.water-suiikei .flyer-list-item .flyer-txt {
  display: table-cell;
  text-align: left;
  margin-right: auto;
  vertical-align: top;
  padding-top: 10px;
}
.water-suiikei .flyer-list-item .flyer-btn {
  display: table-cell;
  text-align: right;
}
.water-suiikei .flyer-list-item .flyer-btn .pdf-btn {
  margin: 0!important;
}
@media only screen and (max-width: 768px) {
  .water-suiikei .flyer-list-item {
    display: block;
  }
  .water-suiikei .flyer-list-item .flyer-date {
    display: block;
    width: 100%;
  }
  .water-suiikei .flyer-list-item .flyer-new {
    margin: 0 0 0 13px;
  }
  .water-suiikei .flyer-list-item .flyer-txt {
    width: 70%;
  }
  .water-suiikei .flyer-list-item .flyer-btn {
    width: 23%;
  }
  .water-suiikei .flyer-list-item .flyer-btn .btn {
    max-width: 100%;
    margin-right: 0;
  }
}

/* アコーディオン */
.water-suiikei .product-content-wrapper .txt-blue {
  color:#e51b23;
}
.water-suiikei .product-content-wrapper .accordion-item {
  margin: 20px 0;
}
.water-suiikei .product-content-wrapper .accordion-item__ttl {
  position: relative;
  padding: 5px 40px 8px 5px;
  font-size: 16px;
  line-height:1.8;
  color:#336699;
  font-weight: 700;
  cursor: pointer;
  border-bottom:#CCC 1px dotted;
  margin-bottom: 0;
}
.water-suiikei .product-content-wrapper .accordion-item__detail {
  display: none;
  position: relative;
  padding: 25px 25px 25px 25px;
  background: #F2F6F9;
  margin: 0;
  color: #333648;
  font-weight: normal;
}
.water-suiikei .product-content-wrapper .accordion-item__detail p + p {
  margin-top: 1.6rem;
}
.water-suiikei .product-content-wrapper .accordion-item__detail.is-show {
  display: block;
}
.water-suiikei .product-content-wrapper .accordion-item__txt .num {
  display: inline-block;
  width: 22px;
  margin: 0 7px 0 0;
  vertical-align: top;
}
.water-suiikei .product-content-wrapper .accordion-item__txt .desc {
  display: inline-block;
  width: 95%;
  vertical-align: top;
}
.water-suiikei .product-content-wrapper .accordion-item__icon {
  display: block;
  position: absolute;
  top: 25%;
  right: 10px;
}
.water-suiikei .product-content-wrapper .accordion-item__icon::before {/* 横棒 */
  content: '';
  display: block;
  position: absolute;
  top: 8px;
  right: 5px;
  width: 16px;
  height: 1px;
  background: #336699;
  transition: .2s ease-in-out;
}
.water-suiikei .product-content-wrapper .accordion-item__icon::after {/* 縦棒 */
  content: '';
  display: block;
  position: absolute;
  top: 1px;
  right: 12px;
  width: 1px;
  height: 16px;
  background: #336699;
  transition: .2s ease-in-out;
}
.water-suiikei .product-content-wrapper .js-accordion-toggle.is-active .accordion-item__icon::after {
  transform: rotate(90deg);
  opacity: 0;
}

@media only screen and (max-width: 768px) {
  .water-suiikei .product-content-wrapper .accordion-item__txt .desc {
    width: 85%;
  }
}

/*********************************

2021/07 ボタンのスタイルを追加

*********************************/
.main-content.water-suiikei .btn-arrow a {
  display: inline-block;
  min-width: 200px;
  padding: 10px 10px 10px 35px;
  font-family: Roboto, sans-serif;
  font-size: 13px;
  font-weight: bold;
  line-height: 1.8;
  color: #e51b23;
  background-color: #fff;
  background-image: url(../images/btn-blue-arrow.png);
  background-size: 8px;
  background-repeat: no-repeat;
  background-position: 14px center;
  border: solid 1px #e51b23;
}
.main-content.water-suiikei .btn-arrow a:hover {
  opacity: 1;
  color: #fff;
  background-color: #e51b23;
  background-image: url(../images/btn-white-arrow.png);
}

/* トップページ読み込み時のアニメーション */
@keyframes fadein {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
.top-kv-slider-wrapper {
    opacity: 0;
    animation-name: fadein;
    animation-duration: 1s;
    animation-iteration-count: 1;
    animation-delay: .5s;
    animation-fill-mode: forwards;
}
.bottom-kv-slider__wrapper {
    opacity: 0;
    animation-name: fadein;
    animation-duration: 1.5s;
    animation-iteration-count: 1;
    animation-delay: .5s;
    animation-fill-mode: forwards;
}