@import url("https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@400;700&display=swap");
.font-en {
  font-family: 'Roboto Condensed', sans-serif;
  font-weight: 400;
}
.font-en.t-bold {
  font-weight: 700;
}

.btn a {
  display: block;
  color: #fff;
  padding: 21px 0;
  text-decoration: none;
  font-weight: bold;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
  background-image: -moz-linear-gradient(0deg, #d70016 0%, #dd5007 100%);
  background-image: -webkit-linear-gradient(0deg, #d70016 0%, #dd5007 100%);
  background-image: -ms-linear-gradient(0deg, #d70016 0%, #dd5007 100%);
  line-height: 1;
  transition: all ease .5s;
}
.btn a:hover:after {
  opacity: 0;
}
.btn a:hover .icon-plane {
  background-image: url("../images/shared/icon-plane.svg");
  background-size: 27px auto;
}
.btn a:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  background: #000;
  left: 0;
  top: 0;
  transition: opacity 0.5s ease;
}
.btn a .btn-text {
  z-index: 2;
  position: relative;
}
.btn a .icon {
  z-index: 2;
  position: relative;
  background-repeat: no-repeat;
  background-position: 0 0;
}
.btn a .icon-plane {
  width: 27px;
  height: 25px;
  background-image: url("../images/shared/icon-plane-rl.svg");
  background-size: 27px auto;
}
.btn a .icon-arrow {
  width: 25px;
  height: 8px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 10px;
  background-image: url("../images/shared/arrow.svg");
  background-size: 25px 8px;
  z-index: 4;
}

.btn-more a {
  text-decoration: none;
  background: none;
  position: relative;
  justify-content: center;
}
.btn-more a:after {
  content: none;
}
.btn-more a:hover {
  background: #fff;
  color: #d70116;
}
.btn-more a:hover .icon-arrow {
  background-image: url("../images/shared/arrow-r.svg");
}

.tab-only {
  display: none;
}

.sp-only {
  display: none;
}

.st-GlobalFooter_PageTop {
  z-index: 99;
}

.contact {
  background: #000;
  padding: 70px 0 75px;
}
.contact-inner {
  width: 1000px;
  margin: 0 auto;
}
.contact-textarea {
  text-align: center;
  color: #fff;
  margin-bottom: 45px;
}
.contact-title {
  line-height: 1;
  margin-bottom: 40px;
}
.contact-title .font-en {
  color: #d70016;
  font-size: 3.75rem;
  letter-spacing: 0.06em;
}
.contact-title .font-jp {
  font-size: 0.875rem;
  display: block;
  margin-top: 10px;
}
.contact .text {
  font-size: 0.95rem;
}
.contact .btn {
  font-size: 1.6rem;
}
.contact .btn a {
  background: #fff;
  justify-content: center;
}
.contact .btn a:hover {
  color: #d70116;
}
.contact .btn a:hover .icon-plane {
  background-image: url("../images/shared/icon-plane-r.svg");
}
.contact .btn a:hover .icon-arrow {
  background-image: url("../images/shared/arrow-r.svg");
}
.contact .btn a:after {
  background: -moz-linear-gradient(left, #d70016 0%, #dd5007 100%);
  background: -webkit-linear-gradient(left, #d70016 0%, #dd5007 100%);
  background: linear-gradient(to right, #d70016 0%, #dd5007 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d70016', endColorstr='#dd5007',GradientType=1 );
}
.contact .btn .icon-plane {
  margin-right: 20px;
  background-image: url("../images/shared/icon-plane-w.svg");
}
.contact .btn .icon-arrow {
  width: 32px;
  position: relative;
  top: auto;
  background-size: 32px 11px;
  transform: none;
  right: auto;
  display: inline-block;
  margin-left: 30px;
}

@media screen and (max-width: 1024px) {
  .pc-only {
    display: none;
  }

  .tab-only {
    display: inline;
  }

  a:hover {
    opacity: 1;
  }

  .btn a {
    background: #000;
    transition: none;
    justify-content: center;
  }
  .btn a:hover:after {
    opacity: 0;
  }
  .btn a:hover .icon-plane {
    background-image: url("../images/shared/icon-plane-rl.svg");
  }
  .btn a:after {
    content: none;
  }

  .btn-more a {
    background: none;
  }
  .btn-more a:hover {
    background: none;
    color: #fff;
  }
  .btn-more a:hover .icon-arrow {
    background-image: url("../images/shared/arrow.svg");
  }

  .btn a {
    font-weight: bold;
    transition: none;
  }
  .btn a:hover {
    opacity: 1;
  }

  .contact-inner {
    width: 100%;
    margin: 0 auto;
  }
  .contact-textarea {
    width: 84%;
    flex-direction: column;
    padding-right: 0;
    margin: 0 auto;
  }
  .contact-title {
    width: 100%;
    line-height: 1;
    text-align: center;
    margin-bottom: 25px;
  }
  .contact-title .font-en {
    letter-spacing: 0.02em;
    text-indent: 0.02em;
    color: #d70016;
    background: #d70016;
    background: -moz-linear-gradient(left, #d70016 0%, #dd5007 100%);
    background: -webkit-linear-gradient(left, #d70016 0%, #dd5007 100%);
    background: linear-gradient(to right, #d70016 0%, #dd5007 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }
  .contact .text {
    width: 100%;
    margin-bottom: 60px;
  }
  .contact .text br {
    display: none;
  }
  .contact .btn {
    width: 92.682926829%;
    margin: 0 auto 0;
  }
  .contact .btn a {
    background: -moz-linear-gradient(left, #d70016 0%, #dd5007 100%);
    background: -webkit-linear-gradient(left, #d70016 0%, #dd5007 100%);
    background: linear-gradient(to right, #d70016 0%, #dd5007 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d70016', endColorstr='#dd5007',GradientType=1 );
    justify-content: center;
  }
  .contact .btn a:hover {
    color: #fff;
  }
  .contact .btn a:hover .icon-plane {
    background-image: url("../images/shared/icon-plane-w.svg");
    background-size: 30px auto;
  }
  .contact .btn a:hover .icon-arrow {
    background-image: url("../images/shared/arrow.svg");
  }
}
@media screen and (max-width: 768px) {
  a:hover {
    opacity: 1;
  }

  .btn a {
    background: #000;
    transition: none;
    justify-content: center;
  }
  .btn a:hover:after {
    opacity: 0;
  }
  .btn a:hover .icon-plane {
    background-image: url("../images/shared/icon-plane-rl.svg");
    background-size: 22px auto;
  }
  .btn a:after {
    content: none;
  }
  .btn a .icon-plane {
    width: 22px;
    height: 21px;
    background-size: 22px auto;
  }

  .btn-more a {
    background: none;
  }
  .btn-more a:hover {
    background: none;
    color: #fff;
  }
  .btn-more a:hover .icon-arrow {
    background-image: url("../images/shared/arrow.svg");
  }

  .btn a {
    padding: 21px 0;
    font-weight: bold;
    transition: none;
  }
  .btn a:hover {
    opacity: 1;
  }
  .btn a .icon-plane {
    width: 27px;
  }
  .btn a .icon-arrow {
    width: 22px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 15px;
  }

  .tab-only {
    display: none;
  }

  .sp-only {
    display: inline;
  }

  .contact {
    padding-bottom: 0;
  }
  .contact-title .font-en {
    font-size: 2.5rem;
  }
  .contact-title .font-jp {
    margin-top: 10px;
  }
  .contact .text {
    font-size: 0.8rem;
  }
  .contact .text br {
    display: none;
  }
  .contact .btn {
    width: 100%;
    font-size: 1.15rem;
  }
  .contact .btn a {
    background: -moz-linear-gradient(left, #d70016 0%, #dd5007 100%);
    background: -webkit-linear-gradient(left, #d70016 0%, #dd5007 100%);
    background: linear-gradient(to right, #d70016 0%, #dd5007 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d70016', endColorstr='#dd5007',GradientType=1 );
    justify-content: center;
  }
  .contact .btn a:hover {
    color: #fff;
  }
  .contact .btn a:hover .icon-plane {
    background-image: url("../images/shared/icon-plane-w.svg");
    background-size: 30px;
  }
  .contact .btn a:hover .icon-arrow {
    background-image: url("../images/shared/arrow.svg");
  }
  .contact .btn .icon-plane {
    width: 30px;
    height: 25px;
    margin-right: 15px;
    background-size: 30px 25px;
  }
  .contact .btn .icon-arrow {
    width: 32px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 15px;
    margin-left: 0;
  }
}
@font-face {
  font-family: 'fontello';
  src: url("../fonts/icon/fontello.eot?32483");
  src: url("../fonts/icon/fontello.eot?32483#iefix") format("embedded-opentype"), url("../fonts/icon/fontello.woff2?32483") format("woff2"), url("../fonts/icon/fontello.woff?32483") format("woff"), url("../fonts/icon/fontello.ttf?32483") format("truetype"), url("../fonts/icon/fontello.svg?32483#fontello") format("svg");
  font-weight: normal;
  font-style: normal;
}
[class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-key:before {
  content: '\e800';
}

/* '' */
.icon-globe:before {
  content: '\e801';
}

/* '' */
.icon-person:before {
  content: '\e802';
}

/* '' */
.icon-phone-circled:before {
  content: '\e803';
}

/* '' */
.icon-document:before {
  content: '\e819';
}

/* '' */
.icon-graph:before {
  content: '\e81a';
}

/* '' */
.icon-atom:before {
  content: '\e81b';
}

/* '' */
.icon-cancel:before {
  content: '\e81c';
}

/* '' */
.icon-pdf_file:before {
  content: '\e82b';
}

/* '' */
.icon-search:before {
  content: '\e82f';
}

/* '' */
.icon-download:before {
  content: '\e830';
}

/* '' */
.icon-circle_exclamation_mark:before {
  content: '\e835';
}

/* '' */
.icon-search_question:before {
  content: '\e836';
}

/* '' */
.icon-exclamation:before {
  content: '\e83e';
}

/* '' */
.icon-settings:before {
  content: '\e843';
}

/* '' */
.icon-folder:before {
  content: '\e845';
}

/* '' */
.icon-line-chart:before {
  content: '\e848';
}

/* '' */
.icon-website_link:before {
  content: '\e84c';
}

/* '' */
.icon-icn_electrical:before {
  content: '\e8ba';
}

/* '' */
.icon-icn_mechanical:before {
  content: '\e8bb';
}

/* '' */
.icon-icn_thermal:before {
  content: '\e8bc';
}

/* '' */
.icon-icn_chemical:before {
  content: '\e8bd';
}

/* '' */
.icon-mail-alt:before {
  content: '\f0e0';
}

/* '' */
.icon-angle-double-down:before {
  content: '\f103';
}

/* '' */
.icon-angle-left:before {
  content: '\f104';
}

/* '' */
.icon-angle-right:before {
  content: '\f105';
}

/* '' */
.icon-angle-up:before {
  content: '\f106';
}

/* '' */
.icon-angle-down:before {
  content: '\f107';
}

/* '' */
.icon-angle-circled-down:before {
  content: '\f13a';
}

/* '' */
.icon-building-filled:before {
  content: '\f1ad';
}

/* '' */
.icon-youtube-play:before {
  content: '\f16a';
}

/*--------------------------
header
---------------------------*/
#header_wrapper {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1000;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
#header_wrapper.fixed {
  position: fixed;
  top: -126px;
  left: 0;
}
#header_wrapper.fixed2 {
  position: fixed;
  top: -126px;
  left: 0;
  transition: top 0.3s ease-in-out 0s;
}
#header_wrapper.fixed3 {
  position: fixed;
  top: -300px;
  left: 0;
}
#header_wrapper.fixed3 .gnavi > ul > li {
  transition: none;
}
#header_wrapper.fixed3 .gnavi > ul > li:first-child {
  margin-right: 30px;
}
#header_wrapper.fixed3 .gnavi > ul > li:first-child > a {
  height: 40px;
  line-height: 42px;
  width: 120px;
  text-align: center;
  padding: 0;
  background: #F6F7F7;
  border-radius: 8px 8px 0 0;
  background-size: 106px 13px;
  text-decoration: none;
}
#header_wrapper.fixed3 .header_nav .header_top_nav .nav-contact a {
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  background: #e20226;
  border-radius: 5px 5px 0 0;
  width: auto;
  padding: 0 25px 0 10px;
  display: inline-block;
  position: relative;
  transition: all 0.3s ease-in-out 0s;
}
#header_wrapper.fixed3 .header_nav .header_top_nav .nav-contact a.headercontact1 {
  display: none;
}
#header_wrapper.fixed3 .header_nav .header_top_nav .nav-contact a.headercontact2 {
  display: block;
}
#header_wrapper.fixed3 .header_nav .header_top_nav .nav-contact a:hover {
  background: #960119;
  color: #fff;
}
#header_wrapper.fixed3 .header_nav .header_top_nav .nav-contact a::after {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: auto;
  margin: 0;
  text-align: center;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  transition: all 0.3s ease-in-out 0s;
  content: "\f105";
}
#header_wrapper.fixed3 .header_nav .header_top_nav .nav-contact a > span:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: auto;
  margin: 0;
  text-align: center;
  display: inline-block;
  content: "\F0E0";
  margin-right: 6px;
}
#header_wrapper.fixed4 {
  top: -168px;
  transition: top 0.3s ease-in-out 0s;
}
#header_wrapper.fixed4 .gnavi > ul > li {
  transition: none;
}
#header_wrapper.fixed5 {
  top: -300px;
  transition: top 0.3s ease-in-out 0s;
}

@media only screen and (max-width: 1023px) {
  #header_wrapper {
    position: static;
    box-shadow: none;
  }

  #header_wrapper.fixed,
  #header_wrapper.fixed2,
  #header_wrapper.fixed3 {
    position: static;
  }
}
.st-GlobalHeader, .layout-Top_ContentsHeader {
  background: #fff;
}

@media only screen and (max-width: 1023px) {
  .st-GlobalHeader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 200;
  }

  #fc_header .header_nav .header_top_nav .link_gsn {
    display: none;
  }

  #fc_header .header_nav .header_top_nav .nav-contact {
    display: none;
  }
}
.st-Breadcrumb {
  margin: 0;
  padding: 10px 0;
}
.st-Breadcrumb_Item a {
  color: #666;
  text-decoration: none;
  transition-duration: 0.3s;
}
.st-Breadcrumb_Item a:hover {
  color: #df0523;
  text-decoration: underline;
}

.st-Title span {
  font-size: 16px;
}

@media only screen and (max-width: 1023px) {
  .st-Title {
    margin: 7px 0 0 0;
    float: left;
  }
}
@media only screen and (max-width: 768px) {
  .st-Title {
    margin-top: 10px;
    line-height: 1;
    float: left;
  }
  .st-Title span {
    font-size: 12px;
  }
}
#fc_header {
  color: #555;
  background: #fff;
  width: 100%;
  margin-top: -10px;
  transition: all 0.3s ease-in-out 0s;
  /*--------------------------
  gnavi
  ---------------------------*/
  /*--------------------------
  languagenavi
  ---------------------------*/
}
#fc_header .header_inner {
  position: relative;
}
#fc_header .header_content {
  max-width: 1200px;
  padding: 0 15px;
  margin: 0 auto;
}
#fc_header .header_top {
  background: #fff;
  /*--------------------------
  hamburger menu
  ---------------------------*/
}
#fc_header .header_top_inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
}
#fc_header .header_top .header_nav-sp {
  display: none;
}
#fc_header .header_nav .header_search {
  margin-top: 5px;
  float: right;
}
#fc_header .header_nav .header_search input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
#fc_header .header_nav .header_search #fc_search {
  position: relative;
}
#fc_header .header_nav .header_search #fc_search::before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: auto;
  margin: 0;
  text-align: center;
  color: #e20226;
  font-size: 14px;
  position: absolute;
  top: 50%;
  left: 10px;
  z-index: 10;
  transform: translateY(-50%);
  content: "\e82f";
}
#fc_header .header_nav .header_search .fc_search_input {
  line-height: 24px;
  font-size: 14px;
  background: #fff;
  border-radius: 5px;
  border: 1px solid #c1c1c1;
  width: 260px;
  height: 28px;
  padding: 0 10px 0 35px;
  margin: 0;
  outline: none;
  transition: all 0.3s ease-in-out 0s;
}
#fc_header .header_nav .header_search .fc_search_input:focus {
  background: #fff;
  border-color: #e20226;
}
#fc_header .header_nav .header_search .fc_search_submit {
  display: none;
}
#fc_header .header_nav_inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
  display: flex;
  justify-content: flex-end;
}
#fc_header .header_nav .header_top_nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#fc_header .header_nav .header_top_nav .nav-contact {
  margin-right: 20px;
}
#fc_header .header_nav .header_top_nav .nav-contact a {
  height: 40px;
  line-height: 42px;
  width: 120px;
  text-align: center;
  padding: 0;
  border-radius: 8px 8px 0 0;
  background-size: 106px 13px;
  text-decoration: none;
  color: #333;
  font-weight: 500;
  font-size: 16px;
}
#fc_header .header_nav .header_top_nav .nav-contact a:hover {
  color: #e20226;
}
#fc_header .header_nav .header_top_nav .headercontact2 {
  display: none;
}
#fc_header .header_nav .header_top_nav .link_gsn {
  padding-right: 20px;
}
#fc_header .header_nav .header_top_nav .link_gsn a {
  color: #666;
  font-size: 14px;
  transition: all 0.3s ease-in-out 0s;
  text-decoration: none;
}
#fc_header .header_nav .header_top_nav .link_gsn a::after {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: auto;
  margin: 0;
  text-align: center;
  color: #e20226;
  margin-left: 10px;
  content: "\f105";
}
#fc_header .header_nav .header_top_nav .link_gsn a:hover {
  color: #e20226;
}
#fc_header .gnavi {
  font-weight: 400;
}
#fc_header .gnavi ul {
  list-style-type: none;
  display: flex;
  margin: 0;
  padding: 0;
}
#fc_header .gnavi > ul > li > a {
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 40px;
  padding: 0 40px 0 0;
  display: block;
  transition: all 0.3s ease-in-out 0s;
  text-decoration: none;
}
#fc_header .gnavi > ul > li > a:hover {
  color: #e20226;
}
#fc_header .gnavi > ul > li > a.has-child {
  position: relative;
}
#fc_header .gnavi > ul > li > a.has-child::after {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: auto;
  margin: 0;
  text-align: center;
  color: #666;
  position: static;
  transform: none;
  margin-left: 4px;
  color: #e20226;
  content: "\f107";
  transition: all 0.3s ease-in-out 0s;
}
#fc_header .gnavi > ul > li:first-child a {
  transition: none;
}
#fc_header .gnavi > ul > li:last-child a {
  transition: none;
}
#fc_header .gnavi > ul > li:last-child a.headercontact2 {
  display: none;
}
#fc_header .gnavi > ul > li.current::before {
  content: "";
  width: 100%;
  height: 4px;
  background: #e20226;
  position: absolute;
  top: 0;
  left: 0;
}
#fc_header .gnavi > ul > li .has-child.is-open ~ div, #fc_header .gnavi > ul > li .has-child.is-open ~ ul {
  max-height: 100vh;
}
#fc_header .gnavi > ul > li .accordion_menu {
  background-color: rgba(157, 11, 23, 0.95);
  padding: 0;
  width: 100%;
  overflow: hidden;
  position: absolute;
  top: 81px;
  left: 0;
  display: none;
  z-index: 99;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) inset;
}
#fc_header .gnavi > ul > li .accordion_menu .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px 15px;
  position: relative;
  text-align: left;
  display: flex;
}
#fc_header .gnavi > ul > li .accordion_menu .container .row {
  margin-right: 110px;
}
#fc_header .gnavi > ul > li .accordion_menu .container .row:last-child {
  margin-right: 0;
}
#fc_header .gnavi > ul > li .accordion_menu ul {
  display: block;
}
#fc_header .gnavi > ul > li .accordion_menu ul li a {
  color: #fff;
  padding: 5px 0;
  display: inline-block;
  transition: all 0.3s ease-in-out 0s;
  font-size: 1.4rem;
  text-decoration: none;
}
#fc_header .gnavi > ul > li .accordion_menu ul li a::before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: auto;
  margin: 0;
  text-align: center;
  margin-right: 6px;
  content: "\f105";
}
#fc_header .gnavi > ul > li .accordion_menu ul li a:hover {
  opacity: 0.6;
}
#fc_header .gnavi > ul > li .accordion_menu ul li a sub {
  font-size: 8px;
  bottom: 0;
}
#fc_header .gnavi > ul > li .accordion_menu.about_us ul:not(:last-child) {
  margin-right: 120px;
}
#fc_header .gnavi > ul > li .accordion_menu.about_us ul:first-child li:not(:first-child) {
  padding-left: 20px;
}
#fc_header .gnavi > ul > li .accordion_menu.about_us figure {
  float: right;
}
#fc_header .gnavi > ul > li .accordion_menu.products ul:not(:last-child) {
  margin-right: 60px;
}
#fc_header .gnavi > ul > li .accordion_menu.products ul li a {
  padding: 0;
  line-height: 42px;
  margin-bottom: 4px;
}
#fc_header .gnavi > ul > li .accordion_menu.products .banners {
  float: right;
}
#fc_header .gnavi > ul > li .accordion_menu.products .btn_block {
  margin-top: 20px;
}
#fc_header .gnavi > ul > li .accordion_menu.products .btn_block a {
  color: #e20226;
  line-height: 45px;
  text-align: center;
  background: #f9f9f9;
  border-radius: 5px;
  width: 320px;
  height: 45px;
  border: 1px solid #d0d0d0;
  position: relative;
  display: inline-block;
  transition: all 0.3s ease-in-out 0s;
}
#fc_header .gnavi > ul > li .accordion_menu.products .btn_block a span::before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: auto;
  margin: 0;
  text-align: center;
  margin-right: 10px;
  content: "\e82f";
}
#fc_header .gnavi > ul > li .accordion_menu.products .btn_block a::before, #fc_header .gnavi > ul > li .accordion_menu.products .btn_block a::after {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: auto;
  margin: 0;
  text-align: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
#fc_header .gnavi > ul > li .accordion_menu.products .btn_block a::before {
  color: #dcb3b3;
  font-size: 22px;
  left: 20px;
}
#fc_header .gnavi > ul > li .accordion_menu.products .btn_block a::after {
  right: 10px;
}
#fc_header .gnavi > ul > li .accordion_menu.products .btn_block a:nth-child(2) {
  margin: 0 10px;
}
#fc_header .gnavi > ul > li .accordion_menu.products .btn_block a.btn_search::after {
  content: "\f105";
}
#fc_header .gnavi > ul > li .accordion_menu.products .btn_block a.btn_search_material::before {
  content: "\e81b";
}
#fc_header .gnavi > ul > li .accordion_menu.products .btn_block a.btn_search_property::before {
  content: "\e81a";
}
#fc_header .gnavi > ul > li .accordion_menu.products .btn_block a.btn_catalogue {
  float: right;
}
#fc_header .gnavi > ul > li .accordion_menu.products .btn_block a.btn_catalogue::before {
  content: "\e819";
}
#fc_header .gnavi > ul > li .accordion_menu.products .btn_block a:hover {
  color: #fff;
  background: #e20226;
}
#fc_header .gnavi > ul > li .accordion_menu.products .btn_block a:hover::before {
  color: #fff;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder {
  float: left;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dt {
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 5px;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dt::before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: auto;
  margin: 0;
  text-align: center;
  margin-right: 10px;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dt::after {
  /*@include media(tabL){
  @include fontSet_icon;
  font-size: 22px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  content: "\f107";
  }*/
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dt.heading_property::before {
  content: "\e81a";
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dt.heading_material::before {
  content: "\e81b";
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dt.heading_catalogs::before {
  content: "\e819";
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dt.heading_videos::before {
  content: "\F16A";
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dd .btn_block {
  margin-top: 0;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dd .btn_block a {
  color: #000;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dd .btn_block a.btn_catalogue {
  color: #e20226;
  line-height: 45px;
  text-align: center;
  background: #f9f9f9;
  border-radius: 5px;
  width: 300px;
  height: 45px;
  border: 1px solid #d0d0d0;
  position: relative;
  display: inline-block;
  transition: all 0.3s ease-in-out 0s;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dd .btn_block a.btn_catalogue::before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  top: 50%;
  left: 20px;
  transform: translateY(-50%);
  font-size: 22px;
  color: #dcb3b3;
  content: "\e819";
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dd .btn_block a.btn_catalogue span::before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-right: 10px;
  content: "\e82f";
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dd .btn_block a.btn_catalogue:hover {
  color: #fff;
  background: #e20226;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dd .btn_block a.btn_catalogue:hover::before {
  color: #fff;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dd .btn_block a.btn_videos {
  color: #e20226;
  line-height: 45px;
  text-align: center;
  background: #f9f9f9;
  border-radius: 5px;
  width: 300px;
  height: 45px;
  border: 1px solid #d0d0d0;
  position: relative;
  display: inline-block;
  transition: all 0.3s ease-in-out 0s;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dd .btn_block a.btn_videos:hover {
  color: #fff;
  background: #e20226;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dd .btn_block a.btn_videos:hover::before {
  color: #fff;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl + dl {
  margin-top: 30px;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .col {
  float: left;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .col:not(:last-child) {
  margin-right: 30px;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .sub_ctg {
  color: #fff;
  font-size: 18px;
  font-style: italic;
  position: relative;
  padding-left: 26px;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .sub_ctg::before {
  position: absolute;
  top: 50%;
  left: -2px;
  transform: translateY(-50%);
  display: block;
  font-family: "fontello";
  font-size: 24px;
  font-style: normal;
  font-weight: normal;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .sub_ctg.mechanical::before {
  content: "\E8BB";
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .sub_ctg.electrical::before {
  content: "\E8BA";
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .sub_ctg.thermal::before {
  content: "\E8BC";
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .sub_ctg.chemical::before {
  content: "\E8BD";
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .sub_ctg:not(:first-child) {
  margin-top: 20px;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder ul {
  float: none;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder:not(:last-child) {
  margin-right: 45px;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .btn_block {
  margin-top: 30px;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .btn_block .btn_download {
  color: #e20226;
  line-height: 45px;
  background: #f6f6f6;
  border: 1px solid #b9b9b9;
  border-radius: 5px;
  width: 300px;
  height: 45px;
  padding: 0 10px;
  display: inline-block;
  position: relative;
  transition: all 0.3s ease-in-out 0s;
  /*&::after {
  @include fontSet_icon;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  content: "\e830";
  }*/
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .btn_block .btn_download .st-Icon-Pdf:before {
  margin-top: -5px;
  font-size: 28px;
  transition: all 0.3s ease-in-out 0s;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .btn_block .btn_download:hover {
  color: #fff;
  background: #e20226;
}
#fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .btn_block .btn_download:hover .st-Icon-Pdf:before {
  color: #fff;
}
#fc_header .languagenavi {
  position: relative;
  transition: left .5s;
  width: 130px;
  z-index: 1;
}
#fc_header .languagenavi .languagenavi_txt {
  color: #666;
  font-size: 14px;
  position: relative;
  background: #fff;
  text-align: center;
  border: 1px solid #ddd;
  border-radius: 5px;
  padding: 4px 14px 4px 0px;
  cursor: pointer;
  transition: all 0.3s ease-in-out 0s;
}
#fc_header .languagenavi .languagenavi_txt:after {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: auto;
  margin: 0;
  text-align: center;
  position: absolute;
  top: 4px;
  right: 10px;
  color: #e20226;
  content: '\f107';
  transition: all .2s;
}
#fc_header .languagenavi .languagenavi_txt:hover {
  background: #e20226;
  color: #fff;
}
#fc_header .languagenavi .languagenavi_txt:hover:after {
  color: #fff;
}
#fc_header .languagenavi .languagenavi_txt.is-open {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
#fc_header .languagenavi .languagenavi_txt.is-open:after {
  transform: rotate(180deg);
}
#fc_header .languagenavi .languagenavi_txt.is-open ~ ul {
  max-height: 100vh;
}
#fc_header .languagenavi ul {
  transition: max-height .5s;
  position: absolute;
  z-index: 10000;
  top: auto;
  left: auto;
  width: 100%;
  max-height: 0;
  overflow: hidden;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  background-color: #fff;
  border-radius: 5px;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
  list-style-type: none;
  padding: 0;
}
#fc_header .languagenavi ul li {
  border-bottom: 1px solid #ccc;
}
#fc_header .languagenavi ul li a {
  color: #666;
  font-size: 14px;
  position: relative;
  text-align: center;
  padding: 4px 14px 4px 0px;
  display: block;
  transition: all 0.5s;
  position: relative;
  text-decoration: none;
}
#fc_header .languagenavi ul li a:after {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  width: auto;
  margin: 0;
  text-align: center;
  position: absolute;
  top: 4px;
  right: 10px;
  color: #e20226;
  content: '\f105';
  margin-left: 10px;
}
#fc_header .languagenavi ul li a:hover {
  color: #fff;
  background: #e20226;
}
#fc_header .languagenavi ul li a:hover:after {
  color: #fff;
}

@media only screen and (max-width: 1023px) {
  #fc_header {
    margin-top: 65px;
    background: #fff;
    width: 100%;
    left: 0 !important;
    border-bottom: 1px solid #e6e6e6;
  }
  #fc_header .header_content {
    background: #fff;
    width: 100%;
    margin: 0;
    padding: 0;
    position: relative;
  }
  #fc_header .header_top {
    float: none;
    width: 100%;
    height: 40px;
    padding: 0 15px 0 10px;
    position: relative;
    z-index: 101;
  }
  #fc_header .header_top .header_top_nav .link_gsn {
    display: none;
  }
  #fc_header .header_top_inner {
    padding: 0;
  }
  #fc_header .header_top .header_nav-sp {
    display: block;
    float: right;
    position: relative;
    top: 0;
    padding-left: 0;
  }
  #fc_header .header_top .header_nav-sp li {
    display: inline-block;
    cursor: pointer;
    margin-left: 8px;
    vertical-align: middle;
  }
  #fc_header .header_top .header_nav-sp li.is-open .btnSpMenu_content .bar span:nth-child(1), #fc_header .header_top .header_nav-sp li.is-open .btnSpMenu_content .bar span:nth-child(4) {
    top: 12px;
    opacity: 0;
  }
  #fc_header .header_top .header_nav-sp li.is-open .btnSpMenu_content .bar span:nth-child(2) {
    transform: rotate(-135deg);
  }
  #fc_header .header_top .header_nav-sp li.is-open .btnSpMenu_content .bar span:nth-child(3) {
    transform: rotate(135deg);
  }
  #fc_header .header_top .header_nav-sp li .btnSpMenu_content {
    font-size: 8px;
    padding: 0 5px 3px 5px;
    border: 1px solid #ddd;
    background-color: #eee;
    height: 40px;
    border-radius: 3px;
  }
  #fc_header .header_top .header_nav-sp li .btnSpMenu_content .bar {
    display: block;
    text-align: center;
    position: relative;
    width: 28px;
    height: 25px;
    margin: 0 auto;
  }
  #fc_header .header_top .header_nav-sp li .btnSpMenu_content .bar span {
    position: absolute;
    top: 12px;
    left: 3px;
    display: block;
    width: 22px;
    height: 2px;
    background-color: #777;
  }
  #fc_header .header_top .header_nav-sp li .btnSpMenu_content .bar span:nth-child(1) {
    top: 7px;
    transition: .25s ease-in-out;
  }
  #fc_header .header_top .header_nav-sp li .btnSpMenu_content .bar span:nth-child(2), #fc_header .header_top .header_nav-sp li .btnSpMenu_content .bar span:nth-child(3) {
    top: 12px;
    transition: .5s ease-in-out;
  }
  #fc_header .header_top .header_nav-sp li .btnSpMenu_content .bar span:nth-child(4) {
    top: 17px;
    transition: .25s ease-in-out;
  }
  #fc_header .header_top .header_nav-sp li .btnSpMenu_content .bar p {
    text-align: center;
  }
  #fc_header .header_top .header_nav-sp li .icon {
    font-size: 22px;
    margin-top: 3px;
  }

  #fc_header .header_nav .header_search {
    display: none;
  }

  #fc_header .header_nav_inner {
    padding: 0;
  }

  #fc_header .gnavi {
    float: none;
    width: 100%;
    margin: 0;
    position: absolute;
    top: -100vh;
    left: 0;
    height: 100vh;
    z-index: 100;
    overflow: auto;
    transition: top .5s;
    -webkit-overflow-scrolling: touch;
  }
  #fc_header .gnavi.is-open {
    top: 0;
    padding-top: 58px;
  }

  #fc_header .gnavi > ul {
    height: 100%;
  }

  #fc_header .gnavi > ul > li {
    float: none;
    display: block;
    margin: 0;
    border-bottom: 1px solid #ccc;
    background-color: #f8f8f8;
  }

  #fc_header .gnavi > ul > li > a {
    font-size: 16px;
    width: 100%;
    height: auto;
    padding: 0 15px;
    position: relative;
  }

  #fc_header .gnavi > ul > li > a.has-child::after {
    color: #e20226;
  }

  #fc_header .gnavi > ul > li > a.has-child.is-open2::after {
    transform: rotate(180deg);
  }

  #fc_header .gnavi > ul > li.current::before {
    display: none;
  }

  #fc_header .gnavi > ul > li .has-child.is-open ~ div, #fc_header .gnavi > ul > li .has-child.is-open ~ ul {
    max-height: 100%;
    padding: 0;
    border-bottom: none;
  }

  #fc_header .gnavi > ul > li .accordion_menu {
    position: static;
  }

  #fc_header .gnavi > ul > li .accordion_menu .container {
    padding: 0;
  }

  #fc_header .gnavi > ul > li .accordion_menu ul {
    float: none;
  }

  #fc_header .gnavi > ul > li .accordion_menu ul li a {
    padding: 8px 10px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    display: block;
    position: relative;
  }

  #fc_header .gnavi > ul > li .accordion_menu ul li a::before {
    font-size: 22px;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
  }

  #fc_header .gnavi > ul > li .accordion_menu.about_us ul:not(:last-child) {
    margin-right: 0;
  }

  #fc_header .gnavi > ul > li .accordion_menu.about_us ul:first-child li:not(:first-child) {
    padding: 0;
  }

  #fc_header .gnavi > ul > li .accordion_menu.about_us ul:first-child li:not(:first-child) a {
    background: #c02532;
    padding-left: 20px;
  }

  #fc_header .gnavi > ul > li .accordion_menu.about_us figure {
    display: none;
  }

  #fc_header .gnavi > ul > li .accordion_menu.products ul:not(:last-child) {
    margin-right: 0;
  }

  #fc_header .gnavi > ul > li .accordion_menu.products ul li a.prd {
    padding-left: 12px;
  }

  #fc_header .gnavi > ul > li .accordion_menu.products .banners {
    display: none;
  }

  #fc_header .gnavi > ul > li .accordion_menu.products .btn_block {
    margin: 0;
    padding: 15px;
  }

  #fc_header .gnavi > ul > li .accordion_menu.products .btn_block a {
    width: 100%;
  }

  #fc_header .gnavi > ul > li .accordion_menu.products .btn_block a:nth-child(2) {
    margin: 10px 0;
  }

  #fc_header .gnavi > ul > li .accordion_menu.products .btn_block a.btn_catalogue {
    float: none;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder {
    float: none;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dt {
    font-size: 18px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    margin: 0;
    padding: 10px;
    position: relative;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dt.heading_catalogs {
    display: none;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dt.heading_videos {
    display: none;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dd ul a {
    background: #bf3b47;
    padding: 8px 10px 8px 30px;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dd .btn_block a.btn_catalogue {
    width: 100%;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dd .btn_block a.btn_videos {
    width: 100%;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl + dl {
    margin-top: 0;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .col {
    float: none;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .col:not(:last-child) {
    margin-right: 0;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .sub_ctg {
    font-size: 16px;
    background: #c02532;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    padding: 10px;
    cursor: pointer;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .sub_ctg:not(:first-child) {
    margin-top: 0;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder:not(:last-child) {
    margin-right: 0;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .btn_block {
    margin-top: 0;
    padding: 15px;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .btn_block.btn_block_catalogue {
    padding-bottom: 0;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .btn_block .btn_download {
    text-align: center;
    width: 100%;
  }

  #fc_header .gnavi {
    /*.has-child + dd,
    .has-child + ul{
    max-height: 0;
    overflow: hidden;
    }*/
  }
  #fc_header .gnavi li .has-child.is-open + ul, #fc_header .gnavi li .has-child.is-open + dd {
    max-height: 100vh;
    position: relative;
    top: inherit;
    left: inherit;
    padding: 0;
  }

  #fc_header .languagenavi {
    margin: 0;
    position: absolute;
    padding: 0;
    top: 41px;
    left: -60%;
    bottom: 0;
    width: 60%;
    margin-top: 0;
    background-color: #f8f8f8;
    border-right: 1px solid #ccc;
  }
  #fc_header .languagenavi.is-open {
    left: 0;
  }

  #fc_header .languagenavi .languagenavi_txt {
    display: none;
  }

  #fc_header .languagenavi ul {
    border-radius: 0;
  }

  #fc_header .languagenavi ul li a {
    text-align: center;
  }

  #fc_header .languagenavi ul li a:after {
    top: 15px;
    right: 10px;
  }

  #fc_header .languagenavi ul {
    display: block;
    max-height: inherit;
    overflow: inherit;
  }
  #fc_header .languagenavi ul li {
    display: block;
    border-bottom: 1px solid #ccc;
  }
  #fc_header .languagenavi ul li a {
    display: block;
    padding: 15px 10px;
  }
}
.body_toppage .header_nav {
  background: rgba(255, 255, 255, 0.8);
}

@media only screen and (max-width: 1023px) and (max-width: 1023px) {
  #fc_header .header_top .header_nav-sp li.sp_hidden {
    display: none;
  }
}
@media only screen and (min-width: 1025px) {
  #fc_header .gnavi > ul > li:first-child > a {
    padding-left: 0;
  }
}
@media only screen and (max-width: 768px) {
  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder dl dt {
    font-size: 14px;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .sub_ctg {
    font-size: 14px;
    padding: 6px 10px 6px 38px;
  }

  #fc_header .gnavi > ul > li .accordion_menu.technical_data .holder .sub_ctg::before {
    left: 20px;
    font-size: 16px;
  }
}
/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  -webkit-transform: translate3d(0, 0, 0);
}

#colorbox {
  overflow: visible !important;
}

#cboxWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  -webkit-transform: translate3d(0, 0, 0);
  max-width: none;
}

#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
}

#cboxMiddleLeft, #cboxBottomLeft {
  clear: left;
}

#cboxContent {
  position: relative;
}

#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

#cboxTitle {
  margin: 0;
}

#cboxLoadingOverlay, #cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow {
  cursor: pointer;
}

.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic;
}

.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
}

#colorbox, #cboxContent, #cboxLoadedContent {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
}

/* 
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay {
  background: #000;
  opacity: 0.7;
}

#colorbox {
  outline: 0;
}

#cboxError {
  padding: 50px;
  border: 1px solid #ccc;
}

#cboxLoadedContent {
  margin-bottom: 20px;
}

#cboxTitle {
  display: none;
}

#cboxCurrent {
  display: none;
}

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious,
#cboxNext,
#cboxSlideshow,
#cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  width: auto;
  background: none;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  outline: none;
}

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {
  outline: 0;
}

#cboxSlideshow {
  position: absolute;
  bottom: 0px;
  right: 42px;
  color: #444;
}

#cboxPrevious {
  position: absolute;
  left: -55px;
  top: 50%;
  background: url("../images/shared/modal-arrow-prev.svg") no-repeat 0 0;
  background-size: 24px 46px;
  width: 24px;
  height: 46px;
  transform: translateY(-50%);
}

#cboxNext {
  position: absolute;
  right: -55px;
  top: 50%;
  background: url("../images/shared/modal-arrow-next.svg") no-repeat 0 0;
  background-size: 24px 46px;
  width: 24px;
  height: 46px;
  transform: translateY(-50%);
}

#cboxClose {
  position: absolute;
  top: -86px;
  right: 0;
  display: block;
  width: 48px;
  height: 48px;
  background: url("../images/shared/close.svg") no-repeat 0 0;
  background-size: 48px 48px;
}

@media screen and (max-width: 768px) {
  #cboxPrevious {
    left: 1%;
    background-size: 19px 38px;
    width: 19px;
    height: 38px;
  }

  #cboxNext {
    right: 1%;
    background-size: 19px 38px;
    width: 19px;
    height: 38px;
  }

  #cboxClose {
    top: -40px;
    right: 8%;
    width: 30px;
    height: 30px;
    background: url("../images/shared/close.svg") no-repeat 0 0;
    background-size: 30px 30px;
  }
}
.is-anime,
.mv-anime {
  opacity: 0;
  will-change: opacity, transform;
}

@keyframes opacity {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.is-animated.fade-opacity {
  animation: opacity 0.75s cubic-bezier(0.15, 0.77, 0.25, 1);
  animation-fill-mode: backwards;
}

@keyframes fade-top {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0px);
    opacity: 1;
  }
}
.is-animated.fade-top,
.mv-animated.fade-top {
  animation: fade-top 0.75s cubic-bezier(0.15, 0.77, 0.25, 1);
  animation-fill-mode: backwards;
}

@keyframes fade-slide1 {
  0% {
    opacity: 0;
    transform: translateX(50px);
  }
  3% {
    opacity: 1;
    transform: translateX(0);
  }
  30% {
    opacity: 1;
    transform: translateX(0);
  }
  33% {
    opacity: 0;
    transform: translateX(-50px);
  }
  100% {
    opacity: 0;
    transform: translateX(-50px);
  }
}
.mv-animated.fade-slide {
  animation: fade-slide1 18s cubic-bezier(0.15, 0.77, 0.25, 1) infinite;
}

@keyframes modal-video {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes modal-video-inner {
  from {
    transform: translate(0);
  }
  to {
    transform: translate(0, 0);
  }
}
.modal-video {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.9);
  z-index: 1000000;
  cursor: pointer;
  opacity: 1;
  animation-timing-function: ease-out;
  animation-duration: 0.3s;
  animation-name: modal-video;
  -webkit-transition: opacity 0.3s ease-out;
  -moz-transition: opacity 0.3s ease-out;
  -ms-transition: opacity 0.3s ease-out;
  -o-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
}

.modal-video-close {
  opacity: 0;
}

.modal-video-body {
  max-width: 940px;
  width: 100%;
  height: 100%;
  margin: 0 auto;
  display: table;
}

.modal-video-inner {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
  height: 100%;
}

.modal-video-movie-wrap {
  width: 100%;
  height: 0;
  position: relative;
  padding-bottom: 56.25%;
  background-color: #333;
  animation-timing-function: ease-out;
  animation-duration: 0.3s;
  animation-name: modal-video-inner;
  -webkit-transform: translate(0, 0);
  -moz-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  -moz-transition: -moz-transform 0.3s ease-out;
  -ms-transition: -ms-transform 0.3s ease-out;
  -o-transition: -o-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}
.modal-video-movie-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modal-video-close-btn {
  position: absolute;
  z-index: 2;
  top: -48px;
  right: 0;
  display: inline-block;
  width: 48px;
  height: 48px;
  overflow: hidden;
  border: none;
  background: transparent;
}
.modal-video-close-btn:before {
  transform: rotate(45deg);
}
.modal-video-close-btn:after {
  transform: rotate(-45deg);
}
.modal-video-close-btn:before, .modal-video-close-btn:after {
  content: '';
  position: absolute;
  height: 2px;
  width: 100%;
  top: 50%;
  left: 0;
  margin-top: -1px;
  background: #fff;
  border-radius: 5px;
  margin-top: -6px;
}

.inner {
  margin: 0 auto;
  position: relative;
}

.ecd-main {
  margin: 0 auto;
  min-width: 1024px;
}
.ecd-main img {
  width: 100%;
}

.main {
  padding-top: 214px;
}

.mv {
  background: url("../images/index/bg-mv.jpg") no-repeat center top;
  height: 720px;
  margin: 0 auto;
  position: relative;
}
.mv-inner {
  width: 1180px;
  height: 100%;
  margin: 0 auto;
  position: relative;
}
.mv-textarea {
  padding: 190px 0 0 0;
}
.mv-img-wrap {
  position: absolute;
  right: -27px;
  bottom: 100px;
  width: 506px;
  height: 400px;
}
.mv-catch1 {
  width: 608px;
}
.mv-img {
  position: absolute;
  right: 0;
  top: 0;
}
.mv .btn-mv {
  background: #000;
  position: absolute;
  right: 0;
  bottom: -104px;
}
.mv .btn-mv.is-fixed {
  position: fixed;
  bottom: 165px;
  z-index: 999;
}
.mv .btn-mv a {
  display: block;
  position: relative;
  background-image: -moz-linear-gradient(0deg, #d70016 0%, #dd5007 100%);
  background-image: -webkit-linear-gradient(0deg, #d70016 0%, #dd5007 100%);
  background-image: -ms-linear-gradient(0deg, #d70016 0%, #dd5007 100%);
}
.mv .btn-mv a:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  transition: opacity ease 0.5s;
  background: #000;
  left: 0;
  top: 0;
  opacity: 1;
}
.mv .btn-mv a img {
  vertical-align: top;
  z-index: 2;
  position: relative;
}
.mv .btn-mv a:hover:after {
  opacity: 0;
}

.sec-title {
  text-align: center;
  font-weight: 400;
  letter-spacing: 0.02em;
}
.sec-title .font-en {
  color: #d70016;
  font-size: 3.0rem;
  display: block;
}
.sec-title .font-jp {
  display: block;
  font-weight: bold;
  margin-top: -10px;
}
.sec-bnr {
  width: 736px;
  height: 135px;
  margin: 0 auto;
}
.sec-bnr a {
  display: block;
  background: url("../images/index/bg-bnr-over.png") 0 0;
  position: relative;
}
.sec-bnr a img {
  position: relative;
  z-index: 1;
}
.sec-bnr a:after {
  content: "";
  display: block;
  background: url("../images/index/bg-bnr.png") 0 0;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  position: absolute;
  opacity: 1;
  transition: opacity .5s ease;
  pointer-events: none;
}
.sec-bnr a:hover:after {
  opacity: 0;
}

.about {
  background: url("../images/index/bg-about.jpg") no-repeat center top;
}
.about-inner {
  padding: 100px 0 108px;
  width: 1060px;
  margin: 0 auto;
}
.about-title {
  text-align: center;
  font-weight: bold;
  font-size: 2.325rem;
  letter-spacing: 0.02em;
}
.about-text {
  text-align: center;
  letter-spacing: 0.06em;
  line-height: 2;
  margin: 30px 0 70px;
}
.about-car {
  position: relative;
}
.about-car img {
  vertical-align: top;
}
.about-car-link-list {
  padding: 0;
  margin: 0;
  list-style-type: none;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.about-car-link-list li {
  position: absolute;
  line-height: 1.375;
}
.about-car-link-list li a {
  color: #000;
  font-weight: bold;
  text-decoration: none;
  padding-left: 61px;
  padding-right: 36px;
  display: block;
  background: url("../images/shared/arrow-k.svg") no-repeat right;
  background-size: 24px 9px;
}
.about-car-link-list li a:hover:before {
  background: #000;
  color: #fff;
}
.about-car-link-list li a:before {
  width: 51px;
  height: 51px;
  background: #fff;
  border: 1px solid #000;
  color: #000;
  font-size: .9rem;
  line-height: 49px;
  text-align: center;
  border-radius: 30px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  transition: all .75s ease;
}
.about-car-link-list li:nth-child(1) {
  top: -5px;
  left: 155px;
}
.about-car-link-list li:nth-child(1) a:before {
  margin-top: 12px;
  content: "01";
}
.about-car-link-list li:nth-child(2) {
  top: 158px;
  left: 233px;
}
.about-car-link-list li:nth-child(2) a:before {
  content: "02";
}
.about-car-link-list li:nth-child(3) {
  top: 234px;
  left: 93px;
}
.about-car-link-list li:nth-child(3) a:before {
  content: "03";
  margin-top: 12px;
}
.about-car-link-list li:nth-child(4) {
  bottom: 119px;
  left: 0;
}
.about-car-link-list li:nth-child(4) a:before {
  margin-top: 12px;
  content: "04";
}
.about-car-link-list li:nth-child(5) {
  bottom: 15px;
  left: 185px;
}
.about-car-link-list li:nth-child(5) a:before {
  content: "05";
}
.about-car-link-list li:nth-child(6) {
  top: -5px;
  right: 141px;
}
.about-car-link-list li:nth-child(6) a:before {
  content: "06";
  margin-top: 12px;
}

.technology {
  position: relative;
  overflow-x: hidden;
}
.technology .bg {
  width: 67.708333333%;
  min-width: 1300px;
  height: 100%;
  background: #f0f2f5;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 0;
}
.technology .bg:after {
  position: absolute;
  right: -50%;
  top: 0;
  content: "";
  background: #f0f2f5;
  width: 100%;
  height: 100%;
  display: block;
}
.technology-inner {
  width: 1060px;
  margin: 0 auto;
  padding: 88px 0 40px;
  position: relative;
  z-index: 10;
}
.technology-lead {
  font-size: .875rem;
  text-align: center;
  margin: 40px 0 60px;
  line-height: 1.85;
  letter-spacing: 0.06em;
}
.technology-list {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.technology-list li {
  width: 499px;
  margin-bottom: 60px;
}
.technology-list-title {
  display: flex;
  align-items: center;
  margin-bottom: 25px;
}
.technology-list-title .font-jp {
  font-size: 1.275rem;
  margin-right: 20px;
}
.technology-list-title .font-jp:before {
  content: "";
  width: 10px;
  height: 3px;
  background: #d50316;
  display: inline-block;
  vertical-align: middle;
  margin: -3px 5px 0 0;
}
.technology-list-title .font-en {
  font-size: .75rem;
  letter-spacing: 0.12em;
}
.technology-text {
  font-size: .875rem;
  margin: 20px 0 0;
  line-height: 2.2;
  letter-spacing: 0.08em;
}

.roadmap {
  padding: 100px 0 110px;
}
.roadmap-inner {
  width: 840px;
  margin: 0 auto;
}
.roadmap-lead {
  font-size: .875rem;
  text-align: center;
  margin: 40px 0 45px;
  line-height: 1.85;
  letter-spacing: 0.06em;
}
.roadmap-thumarea {
  margin-bottom: 100px;
}
.roadmap-thumarea .movie-thum {
  margin-bottom: 95px;
}
.roadmap-thumarea .movie-thum a:hover {
  opacity: .75;
}
.roadmap-thumarea .movie-thum:last-child {
  margin-bottom: 0;
}
.roadmap .sec-bnr {
  margin-bottom: 56px;
}
.roadmap .btn-contact {
  width: 560px;
  margin: 0 auto;
}
.roadmap .btn-contact a {
  justify-content: center;
  align-items: center;
  color: #000;
  border: 1px solid #000;
  background: #fff;
  padding: 26px 0;
}
.roadmap .btn-contact a:after {
  content: none;
}
.roadmap .btn-contact a .icon-plane {
  width: 26px;
  height: 26px;
  background-image: url("../images/shared/icon-plane-k.svg");
  background-size: 26px auto;
  margin-right: 18px;
}
.roadmap .btn-contact a:hover {
  background: #000;
  color: #fff;
}
.roadmap .btn-contact a:hover .icon-plane {
  background-image: url("../images/shared/icon-plane-w.svg");
}

.modal {
  width: 878px;
  min-height: 290px;
  background: #fff;
}
.modal-inner {
  padding: 50px 50px;
  display: flex;
  justify-content: space-between;
}
.modal-textarea {
  width: 430px;
}
.modal-title {
  font-weight: bold;
  display: flex;
  align-items: center;
}
.modal-title .num {
  margin-right: .25em;
}
.modal-title .text {
  font-size: 1.25rem;
}
.modal-list {
  margin: 20px 0 0;
  padding: 0;
  list-style-type: none;
}
.modal-list li {
  line-height: 1.9375;
}
.modal-img {
  width: 300px;
}
.modal.modal2 .modal-textarea {
  width: 100%;
}

@media only screen and (max-width: 1023px) {
  .main {
    padding-top: 0;
  }
}
@media screen and (max-width: 1024px) {
  .inner {
    width: auto;
  }

  .ecd-main {
    margin: 0 auto;
    min-width: auto;
  }

  .mv {
    background: url("../images/index/tab/bg-mv.jpg") no-repeat center bottom;
    background-size: cover;
    height: auto;
  }
  .mv-textarea {
    padding: 0;
    overflow: hidden;
  }
  .mv-catch1 {
    width: 100%;
  }
  .mv-inner {
    width: auto;
  }
  .mv-img-wrap {
    padding-right: 0;
    position: absolute;
    right: auto;
    top: auto;
    width: 50.560976%;
    height: auto;
    bottom: 2%;
    right: 2%;
    overflow: hidden;
    padding-top: 40.535%;
  }
  .mv .btn-mv {
    display: none;
  }

  .sec-bnr {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
  .sec-bnr a {
    background: none;
  }
  .sec-bnr a:after {
    content: none;
  }

  .about {
    background: url("../images//index/tab/bg-about.jpg") no-repeat center top;
    background-size: 100% auto;
  }
  .about-inner {
    width: 92.682926829%;
  }
  .about-car {
    width: 760px;
    position: relative;
    margin: 0 auto;
  }
  .about-car img {
    vertical-align: top;
  }
  .about-car-link-list li a {
    color: #000;
    font-weight: bold;
    text-decoration: none;
    padding-left: 61px;
    display: block;
  }
  .about-car-link-list li a:hover:before {
    background: #fff;
    color: #000;
  }
  .about-car-link-list li:nth-child(1) {
    top: -3px;
    left: 1px;
  }
  .about-car-link-list li:nth-child(2) {
    top: 167px;
    left: 76px;
  }
  .about-car-link-list li:nth-child(3) {
    top: 230px;
    left: 0;
  }
  .about-car-link-list li:nth-child(4) {
    bottom: 95px;
    left: 38px;
  }
  .about-car-link-list li:nth-child(4) a:before {
    margin-top: 8px;
  }
  .about-car-link-list li:nth-child(5) {
    bottom: 14px;
    left: 0;
  }
  .about-car-link-list li:nth-child(6) {
    top: -3px;
    right: 92px;
  }

  .technology {
    position: relative;
    background: #f0f2f5;
    padding-bottom: 100px;
  }
  .technology .bg {
    display: none;
  }
  .technology-inner {
    width: 92.682926829%;
  }
  .technology-list {
    flex-direction: column;
  }
  .technology-list li {
    width: 100%;
  }
  .technology-list li:last-child {
    margin-bottom: 0;
  }
  .technology-list li img {
    width: 100%;
  }

  .roadmap-inner {
    width: 92.682926829%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  .inner {
    width: auto;
  }

  .ecd-main {
    margin: 0 auto;
    min-width: auto;
  }

  .mv {
    background: url("../images/index/sp/bg-mv.jpg") no-repeat center top;
    background-size: cover;
    height: auto;
  }
  .mv-textarea {
    padding: 0;
    overflow: hidden;
  }
  .mv-catch2 {
    position: absolute;
    left: 0;
    top: 0;
  }
  .mv-inner {
    width: auto;
  }
  .mv-img-wrap {
    padding-right: 0;
    position: absolute;
    right: auto;
    top: auto;
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    overflow: hidden;
    padding: 0;
  }
  .mv-img-wrap .mv-img {
    top: auto;
    bottom: 0;
  }
  .mv .btn-mv {
    display: none;
  }

  .sec-title .font-en {
    font-size: 2.2rem;
  }
  .sec-title .font-jp {
    font-size: .95rem;
    margin-top: 0;
  }
  .sec-bnr {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }
  .sec-bnr a {
    background: none;
  }
  .sec-bnr a:after {
    content: none;
  }

  .about {
    background: url("../images//index/sp/bg-about.jpg") no-repeat center top;
  }
  .about-inner {
    width: 92%;
    padding: 75px 0 80px;
  }
  .about-title {
    text-align: center;
    font-size: 1.45rem;
    line-height: 1.35;
    letter-spacing: -0.08em;
  }
  .about-text {
    margin: 15px auto 20px;
    font-size: 0.8rem;
    text-align: left;
    letter-spacing: 0;
  }
  .about-car {
    width: 100%;
  }
  .about-car-link-list {
    width: 100%;
    height: auto;
    position: relative;
    top: auto;
    left: auto;
    margin-top: 15px;
  }
  .about-car-link-list li {
    position: relative;
    line-height: 1.375;
  }
  .about-car-link-list li a {
    padding-left: 0;
    display: flex;
    align-items: center;
    padding: 15px 0;
    font-size: .8rem;
    border-bottom: 1px solid #e6e6e6;
    background: url("../images/shared/arrow-k.svg") no-repeat right;
    background-size: 24px 9px;
  }
  .about-car-link-list li a:hover:before {
    background: #fff;
    color: #000;
  }
  .about-car-link-list li a:before {
    width: 9.42028985507%;
    height: auto;
    padding: 2.83% 0;
    font-size: .7rem;
    line-height: 1;
    position: relative;
    margin-right: 2.17391304348%;
    left: auto;
    top: auto;
    transform: none;
    transition: none;
  }
  .about-car-link-list li:nth-child(1) {
    top: auto;
    left: auto;
  }
  .about-car-link-list li:nth-child(1) a:before {
    margin-top: 0;
  }
  .about-car-link-list li:nth-child(2) {
    top: auto;
    left: auto;
  }
  .about-car-link-list li:nth-child(3) {
    top: auto;
    left: auto;
  }
  .about-car-link-list li:nth-child(3) a:before {
    margin-top: 0;
  }
  .about-car-link-list li:nth-child(4) {
    bottom: auto;
    left: auto;
  }
  .about-car-link-list li:nth-child(4) a:before {
    margin-top: 0;
  }
  .about-car-link-list li:nth-child(5) {
    bottom: auto;
    left: auto;
  }
  .about-car-link-list li:nth-child(6) {
    top: auto;
    right: auto;
  }
  .about-car-link-list li:nth-child(6) a:before {
    margin-top: 0;
  }

  .technology {
    position: relative;
    background: #f0f2f5;
    padding-bottom: 0;
  }
  .technology .bg {
    display: none;
  }
  .technology-inner {
    width: 92%;
    padding: 60px 0 70px;
    position: relative;
    z-index: 10;
  }
  .technology-lead {
    font-size: .75rem;
    text-align: left;
    margin: 25px 0 40px;
    line-height: 2.3;
    letter-spacing: 0;
  }
  .technology-lead br {
    display: none;
  }
  .technology-list {
    flex-direction: column;
  }
  .technology-list li {
    width: 100%;
    margin-bottom: 40px;
  }
  .technology-list li:last-child {
    margin-bottom: 0;
  }
  .technology-list-title {
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 20px;
  }
  .technology-list-title .font-jp {
    font-size: .95rem;
    margin-right: 20px;
  }
  .technology-list-title .font-jp:before {
    content: "";
    width: 8px;
    margin: -3px 5px 0 0;
  }
  .technology-list-title .font-en {
    font-size: .6rem;
    margin-left: 13px;
  }
  .technology-text {
    font-size: .75rem;
    margin: 15px 0 0;
    line-height: 2.3;
  }

  .roadmap {
    padding: 60px 0 70px;
  }
  .roadmap-inner {
    width: 92%;
    margin: 0 auto;
  }
  .roadmap .sec-title .font-en {
    line-height: 1;
  }
  .roadmap .sec-title .font-jp {
    margin-top: 10px;
  }
  .roadmap-lead {
    font-size: .75rem;
    text-align: left;
    margin: 25px 0 40px;
    line-height: 2.3;
    letter-spacing: 0;
  }
  .roadmap-thumarea {
    margin-bottom: 48px;
  }
  .roadmap-thumarea .movie-thum {
    margin-bottom: 30px;
  }
  .roadmap-thumarea .movie-thum a:hover {
    opacity: 1;
  }
  .roadmap-thumarea .movie-thum:last-child {
    margin-bottom: 0;
  }
  .roadmap .sec-bnr {
    margin-bottom: 30px;
  }
  .roadmap .btn-contact {
    width: 100%;
  }
  .roadmap .btn-contact a {
    font-size: .6rem;
    padding: 16px 0;
  }
  .roadmap .btn-contact a:after {
    content: none;
  }
  .roadmap .btn-contact a .icon-plane {
    width: 24px;
    height: 19px;
    background-size: 24px auto;
    margin-right: 10px;
  }
  .roadmap .btn-contact a:hover {
    background: #fff;
    color: #000;
  }
  .roadmap .btn-contact a:hover .icon-plane {
    background-image: url("../images/shared/icon-plane-k.svg");
  }

  .modal {
    width: 84%;
    min-height: auto;
    background: #fff;
    margin: 0 auto;
  }
  .modal-inner {
    width: 84.285714285%;
    padding: 25px 0;
    margin: 0 auto;
    flex-direction: column;
  }
  .modal-textarea {
    width: 100%;
  }
  .modal-title {
    font-weight: bold;
    display: flex;
    align-items: center;
  }
  .modal-title .num {
    margin-right: .25em;
    font-size: .7rem;
  }
  .modal-title .text {
    font-size: .875rem;
  }
  .modal-list {
    font-size: .75rem;
    margin: 20px 0;
  }
  .modal-list li {
    line-height: 1.7;
  }
  .modal-img {
    width: 100%;
  }
}
/************************************
form
*************************************/
.contact-form {
  /* for firefox */
  /* for ie10 ie11 */
  /* Google Chrome, Safari, Opera 15+, Android, iOS */
  /* Google Chrome, Safari, Opera 15+, Android, iOS */
  /* Firefox 18- */
  /* Firefox 19+ */
  /* IE 10+ */
}
.contact-form select {
  outline: none;
}
.contact-form option {
  outline: none;
}
.contact-form select {
  outline: 0;
}
.contact-form option {
  outline: 0;
}
.contact-form input:-webkit-autofill,
.contact-form textarea:-webkit-autofill {
  background-color: #faffbd;
  background-image: none;
  color: black;
}
.contact-form select:-moz-focusring * {
  text-shadow: none;
}
.contact-form select::-moz-focus-inner,
.contact-form option::-moz-focus-inner {
  border: 0px;
}
.contact-form option,
.contact-form select,
.contact-form textarea,
.contact-form input[type="number"],
.contact-form input[type="button"],
.contact-form input[type="submit"],
.contact-form input[type="text"],
.contact-form input[type="password"],
.contact-form input[type="email"],
.contact-form input[type="select"],
.contact-form input[type="option"] {
  -webkit-appearance: none;
  border-radius: 0;
  outline: 0;
  background: #fff;
}
.contact-form input[type="option"],
.contact-form input[type="select"] {
  overflow: hidden;
  word-wrap: normal !important;
  white-space: normal;
  max-width: 100%;
}
.contact-form select {
  -moz-appearance: none;
  text-indent: 0.01px;
  text-overflow: '';
}
.contact-form select::-ms-expand {
  display: none;
}
.contact-form input:-webkit-autofill,
.contact-form textarea:-webkit-autofill,
.contact-form select:-webkit-autofill {
  background-color: #fff;
  background-image: none;
  color: #999;
}
.contact-form ::-webkit-input-placeholder {
  color: #999;
}
.contact-form :-moz-placeholder {
  color: #999;
  opacity: 1;
}
.contact-form ::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.contact-form :-ms-input-placeholder {
  color: #999;
}
.contact-form textarea,
.contact-form input[type="number"],
.contact-form input[type="tel"],
.contact-form input[type="email"],
.contact-form input[type="password"],
.contact-form input[type=text] {
  width: 100%;
  padding: 0 10px;
  height: 38px;
  background: #f9f9f9;
  color: #000;
  overflow: hidden;
  border: 1px solid #f9f9f9;
}
.contact-form textarea.form-err,
.contact-form input[type="number"].form-err,
.contact-form input[type="tel"].form-err,
.contact-form input[type="email"].form-err,
.contact-form input[type="password"].form-err,
.contact-form input[type=text].form-err {
  border: 1px solid #ff0000;
}
.contact-form .required {
  color: #d70016;
}
.contact-form .aform-error {
  color: #d70016;
}
.contact-form .aform-error.Privacy_Policy {
  text-align: center;
}
.contact-form textarea {
  height: 100px;
  padding: 10px 10px;
  color: #000;
}
.contact-form textarea:focus,
.contact-form input[type="number"]:focus,
.contact-form input[type="tel"]:focus,
.contact-form input[type="email"]:focus,
.contact-form input[type="password"]:focus,
.contact-form input[type="text"]:focus {
  border: 1px solid #999 !important;
}
.contact-form button {
  border: none;
  background: none;
}
.contact-form button {
  cursor: pointer;
}
.contact-form button:focus,
.contact-form a:focus {
  outline: none !important;
}

.contact-form {
  color: #fff;
  /* checkbox */
}
.contact-form ul,
.contact-form li {
  margin: 0;
  padding: 0;
  list-style: none;
}
.contact-form dl,
.contact-form dt,
.contact-form dd {
  margin: 0;
  padding: 0;
}
.contact-form textarea {
  color: #666;
}
.contact-form .aform-checkbox-ul input[type=checkbox] {
  display: none;
  margin: 0;
}
.contact-form .aform-checkbox-ul li {
  position: relative;
}
.contact-form .aform-checkbox-ul label {
  padding-left: 27px;
  position: relative;
  z-index: 2;
}
.contact-form .aform-checkbox-ul i {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -10px;
  display: inline-block;
  border: 1px solid #f9f9f9;
  background: #f9f9f9;
  width: 20px;
  height: 20px;
  z-index: 5;
  pointer-events: none;
}
.contact-form .aform-checkbox-ul input[type=checkbox]:checked + i {
  background: url("../images/shared/icon-check.png") no-repeat 0 0 #fff;
  background-size: 100% auto;
}

.contact-layout {
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
}

.contact-layout-l {
  width: 470px;
  position: relative;
}
.contact-layout-l dl {
  margin-bottom: 23px;
}
.contact-layout-l dl:last-child {
  margin-bottom: 0;
}
.contact-layout-l dl dt {
  margin-bottom: 10px;
}
.contact-layout-l .aform-checkbox-ul {
  position: relative;
  width: 110%;
  padding-top: 10px;
}
.contact-layout-l .aform-checkbox-ul li {
  display: inline-block !important;
  min-width: 140px;
  margin-right: 10px;
  margin-bottom: 15px;
}

textarea.aform-textarea {
  height: 222px;
}

.contact-layout-r {
  width: 470px;
}
.contact-layout-r dl {
  margin-bottom: 20px;
}
.contact-layout-r dl:last-child {
  margin-bottom: 0;
}
.contact-layout-r dl dt {
  margin-bottom: 2px;
}

.contact-privacy {
  margin-bottom: 50px;
}

.contact-privacy-agree {
  display: flex;
  justify-content: center;
  margin-bottom: 16px;
}

.contact-privacy-agree-ttl {
  padding-right: 20px;
}

.aform-input-example {
  text-align: center;
  font-size: 0.875rem;
}
.aform-input-example a {
  color: #fff;
  text-decoration: none;
}
.aform-input-example a b {
  font-weight: 400;
  text-decoration: underline;
}

#aform_btn_confirm_1923 {
  background: #d70216;
  background-image: -moz-linear-gradient(0deg, #d70016 0%, #dd5007 100%);
  background-image: -webkit-linear-gradient(0deg, #d70016 0%, #dd5007 100%);
  background-image: -ms-linear-gradient(0deg, #d70016 0%, #dd5007 100%);
  width: 100%;
  border: none;
  display: block;
  width: 100%;
  height: 100px;
  position: relative;
}
#aform_btn_confirm_1923:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  transition: opacity ease 0.5s;
  background: #940f1e;
  left: 0;
  top: 0;
  opacity: 0;
  z-index: 1;
}
#aform_btn_confirm_1923:hover:after {
  opacity: 1;
}
#aform_btn_confirm_1923 span {
  position: relative;
  z-index: 5;
  font-size: 1.625rem;
  padding: 0 66px 0 66px;
}
#aform_btn_confirm_1923 span i.icon-plane {
  display: block;
  content: "";
  width: 26px;
  height: 21px;
  position: absolute;
  background: url("../images/shared/icon-contact-plane.png") 0 0 no-repeat;
  background-size: 100% auto;
  left: 0;
  top: 50%;
  margin-top: -10px;
}
#aform_btn_confirm_1923 span i.icon-arrow {
  display: block;
  content: "";
  width: 32px;
  height: 12px;
  position: absolute;
  background: url("../images/shared/icon-contact-arrow.png") 0 0 no-repeat;
  background-size: 100% auto;
  right: 0;
  top: 50%;
  margin-top: -6px;
}

.ecd-main {
  width: 100%;
  overflow: hidden;
}

@media screen and (max-width: 1050px) {
  .contact-form {
    width: 92%;
    margin: -24px auto 0;
    padding-bottom: 30px;
  }
  .contact-form textarea,
  .contact-form input[type="number"],
  .contact-form input[type="tel"],
  .contact-form input[type="email"],
  .contact-form input[type="password"],
  .contact-form input[type=text] {
    width: 100%;
    padding: 0 10px;
    height: 38px;
    font-size: 0.875rem;
  }
  .contact-form textarea.form-err,
  .contact-form input[type="number"].form-err,
  .contact-form input[type="tel"].form-err,
  .contact-form input[type="email"].form-err,
  .contact-form input[type="password"].form-err,
  .contact-form input[type=text].form-err {
    border: 1px solid #ff0000;
  }
  .contact-form textarea {
    height: 150px;
    padding: 10px 10px;
  }
  .contact-form .aform-error.Privacy_Policy {
    text-align: left;
  }

  .contact-form .aform-checkbox-ul label {
    padding-left: 27px;
    position: relative;
    z-index: 2;
  }
  .contact-form .aform-checkbox-ul i {
    margin-top: -9px;
    width: 18px;
    height: 18px;
    z-index: 5;
  }
  .contact-form .aform-checkbox-ul input[type=checkbox]:checked + i {
    background: url("../images/shared/icon-check.png") no-repeat 0 0 #fff;
    background-size: 100% auto;
  }

  .contact-layout {
    display: block;
    margin-bottom: 30px;
  }

  .contact-layout-l {
    width: 100%;
  }
  .contact-layout-l dl {
    margin-bottom: 18px;
  }
  .contact-layout-l dl:last-child {
    margin-bottom: 0;
  }
  .contact-layout-l dl dt {
    margin-bottom: 6px;
    font-size: 0.875rem;
  }
  .contact-layout-l .aform-checkbox-ul {
    position: relative;
    width: 100%;
    padding-top: 10px;
  }
  .contact-layout-l .aform-checkbox-ul li {
    min-width: 46%;
    margin-right: 0;
    margin-bottom: 16px;
    font-size: 0.75rem;
  }

  textarea.aform-textarea {
    height: 150px;
    font-size: 0.875rem;
  }

  .contact-layout-r {
    width: 100%;
  }
  .contact-layout-r dl {
    margin-bottom: 18px;
    font-size: 0.875rem;
  }
  .contact-layout-r dl:last-child {
    margin-bottom: 0;
  }
  .contact-layout-r dl dt {
    margin-bottom: 6px;
  }

  .contact-privacy {
    margin-bottom: 30px;
  }

  .contact-privacy-agree {
    margin-bottom: 16px;
    font-size: 0.875rem;
  }

  .contact-privacy-agree-ttl {
    padding-right: 20px;
  }

  .aform-input-example {
    text-align: center;
    font-size: 0.625rem;
  }
  .aform-input-example a {
    color: #fff;
    text-decoration: none;
  }
  .aform-input-example a b {
    font-weight: 400;
    text-decoration: underline;
  }

  #aform_btn_confirm_1923 {
    width: 92%;
    margin: 0 auto;
    height: 62px;
  }
  #aform_btn_confirm_1923 span {
    font-size: 1.375rem;
    padding: 0 55px 0 55px;
  }
  #aform_btn_confirm_1923 span i.icon-plane {
    width: 30px;
    height: 24px;
    top: 50%;
    margin-top: -12px;
  }
  #aform_btn_confirm_1923 span i.icon-arrow {
    width: 32px;
    height: 12px;
    top: 50%;
    margin-top: -6px;
    transform: translateX(30px);
  }
}


