@charset "UTF-8";
body {
  font-family:
    "Helvetica Neue",
    HelveticaNeue,
    "\6e38\30b4\30b7\30c3\30af\4f53",
    YuGothic,
    "\6e38\30b4\30b7\30c3\30af  Medium",
    "Yu Gothic Medium",
    "\6e38\30b4\30b7\30c3\30af",
    "Yu Gothic",
    "\30d2\30e9\30ae\30ce\89d2\30b4  ProN",
    Hiragino Kaku Gothic ProN,
    "\30d2\30e9\30ae\30ce\89d2\30b4\30b7\30c3\30af",
    Hiragino Sans,
    Verdana,
    "\30e1\30a4\30ea\30aa",
    Meiryo,
    sans-serif;
  letter-spacing: 0.06em;
  line-height: 1.6;
  font-feature-settings: "palt" 1;
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}
.clearfix:before {
  content: "";
  display: block;
  clear: both;
}
.clearfix {
  display: block;
}
@media screen and (min-width: 809px) {
  .only-sp {
    display: none;
  }
}
@media screen and (max-width: 808px) {
  .only-pc {
    display: none;
  }
}
@media screen and (min-width: 1041px) {
  .only-narrow-window {
    display: none;
  }
}
span.h_product {
  font-weight: 700;
}
.notice1 {
  padding-left: 1em !important;
  text-indent: -1em !important;
  margin-bottom: 0 !important;
}
.notice1:before {
  content: "\203b 1" !important;
}
.notice2 {
  padding-left: 1em !important;
  text-indent: -1em !important;
}
.notice2:before {
  content: "\203b 2" !important;
}
a.action-button {
  text-align: center;
  font-size: 18px;
  margin-bottom: 30px;
}
a.action-button:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  a.action-button {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  a.action-button {
    font-size: 16px;
    font-weight: 700;
  }
}
a.action-button {
  background-color: #0066b3;
  color: #fff;
  padding: 15px 30px;
  border-radius: 4px;
  border: none;
  -webkit-transition: background-color 0.3s linear;
}
a.action-button:hover {
  background-color: rgba(0, 102, 179, 0.69);
  -webkit-transition: background-color 0.3s linear;
}
a.action-button-reverse {
  text-align: center;
  font-size: 18px;
  margin-bottom: 30px;
}
a.action-button-reverse:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  a.action-button-reverse {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  a.action-button-reverse {
    font-size: 16px;
    font-weight: 700;
  }
}
a.action-button-reverse {
  border-radius: 8px;
  background: #0066b3;
  box-shadow: 5px 5px 10px #005798, -5px -5px 10px #0075ce;
  background-color: rgba(255, 255, 255, 0.9) !important;
  color: #0066b3;
  padding: 15px 30px;
  border-radius: 4px;
  border: none;
  -webkit-transition: background-color 0.3s linear;
}
a.action-button-reverse:hover {
  background-color: rgb(255, 255, 255) !important;
  -webkit-transition: background-color 0.3s linear;
}
.site-header {
  background: rgb(255, 255, 255);
  height: 100px;
  position: fixed;
  top: 0;
  transition: 0.5s;
  width: 100%;
  z-index: 999;
}
.site-header div.site-id {
  height: 100px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-content: center;
  padding-left: 30px;
}
.site-header div.site-id img.logo {
  height: 40px;
  transition: all 0.4s ease;
}
.site-header.hide {
  transform: translateY(-100%);
}
.site-header.hide-2 div.site-id img.logo {
  height: 30px;
}
.site-header.scrolling {
  background-color: rgba(250, 250, 250, 0.5);
  background-color: rgba(247, 248, 255, 0.7);
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  height: 60px;
}
.site-header.scrolling div.site-id {
  height: 60px;
}
.site-header.scrolling div.site-id img.logo {
  height: 30px;
}
.site-header div.row {
  justify-content: space-between;
}
.site-header nav#gnavi {
  margin: 0;
  padding-right: 30px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.site-header nav#gnavi ul.gn {
  margin-right: -15px;
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  list-style-type: none;
  align-items: center;
  height: 100%;
}
.site-header nav#gnavi ul.gn li {
  height: 100%;
  display: flex;
  align-items: center;
  line-height: 1;
}
.site-header nav#gnavi ul.gn li a {
  -webkit-transition: background-color 0.3s linear;
  display: flex;
  align-items: center;
  height: 100%;
  line-height: 1;
  letter-spacing: 0.1em;
  padding: 0px;
  font-size: 14px;
  font-weight: bold;
  color: #0A0908;
}
.site-header nav#gnavi ul.gn li a i {
  padding-left: 0.5em;
}
.site-header nav#gnavi ul.gn li a span {
  padding: 10px 20px;
}
.site-header nav#gnavi ul.gn li a:hover span {
  border-radius: 30px;
  -webkit-transition: background-color 0.3s linear;
  background-color: #0066b3;
  color: #fff;
}
.site-header nav#gnavi ul.gn li a.product-mega-menu span:after {
  content: " \f107";
  font-family: "Font Awesome 5 Pro";
  font-weight: 100;
}
.site-header nav#gnavi ul.gn li a.product-mega-menu.now-open span {
  border-radius: 30px;
  -webkit-transition: background-color 0.3s linear;
  background-color: #0066b3;
  color: #fff;
}
.site-header nav#gnavi ul.gn li a.product-mega-menu.now-open span:after {
  content: " \f106";
}
.site-header nav#gnavi ul.gn li a.menu-keep span {
  border-radius: 30px;
  background-color: #0066b3;
  color: #fff;
}
.site-header nav#gnavi div.product-menu-layer {
  transition: all 0.5s;
  opacity: 0;
  width: 80%;
  position: absolute;
  top: calc(100% - 10px);
  left: 10%;
  height: 0px;
  background-image: url(img/bg_menu.jpg);
  background-size: cover;
  background-position: right center;
}
@media screen and (max-width: 1080px) {
  .site-header nav#gnavi div.product-menu-layer {
    width: calc(100vw - 60px);
    left: 30px;
  }
}
.site-header nav#gnavi div.product-menu-layer {
  z-index: -1;
  pointer-events: none;
}
.site-header nav#gnavi div.product-menu-layer.menu-dev,
.site-header nav#gnavi div.product-menu-layer.menu-on {
  display: block;
  height: 360px;
  z-index: 10;
  transition: all 0.5s;
  opacity: 1;
  pointer-events: auto;
}
.site-header nav#gnavi div.product-menu-layer.menu-dev nav#product-menu-inner,
.site-header nav#gnavi div.product-menu-layer.menu-on nav#product-menu-inner {
  opacity: 1;
  transition: all 0.5s;
}
.site-header nav#gnavi div.product-menu-layer.menu-dev nav#product-menu-inner ul.mainList,
.site-header nav#gnavi div.product-menu-layer.menu-on nav#product-menu-inner ul.mainList {
  height: 360px;
  opacity: 1;
  transition: all 0.5s;
  padding: 30px 0 30px 30px;
}
.site-header nav#gnavi div.product-menu-layer.menu-dev nav#product-menu-inner ul.mainList li.menu-title,
.site-header nav#gnavi div.product-menu-layer.menu-on nav#product-menu-inner ul.mainList li.menu-title {
  font-size: 18px;
  margin-bottom: 30px;
}
.site-header nav#gnavi div.product-menu-layer.menu-dev nav#product-menu-inner ul.mainList li.menu-title:last-child,
.site-header nav#gnavi div.product-menu-layer.menu-on nav#product-menu-inner ul.mainList li.menu-title:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  .site-header nav#gnavi div.product-menu-layer.menu-dev nav#product-menu-inner ul.mainList li.menu-title,
  .site-header nav#gnavi div.product-menu-layer.menu-on nav#product-menu-inner ul.mainList li.menu-title {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  .site-header nav#gnavi div.product-menu-layer.menu-dev nav#product-menu-inner ul.mainList li.menu-title,
  .site-header nav#gnavi div.product-menu-layer.menu-on nav#product-menu-inner ul.mainList li.menu-title {
    font-size: 16px;
    font-weight: 700;
  }
}
.site-header nav#gnavi div.product-menu-layer.menu-dev nav#product-menu-inner ul.mainList li.menu-title,
.site-header nav#gnavi div.product-menu-layer.menu-on nav#product-menu-inner ul.mainList li.menu-title {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.38);
  padding-bottom: 30px;
  word-wrap: normal !important;
}
.site-header nav#gnavi div.product-menu-layer.menu-dev nav#product-menu-inner ul.mainList li.current ul.subList,
.site-header nav#gnavi div.product-menu-layer.menu-on nav#product-menu-inner ul.mainList li.current ul.subList {
  opacity: 1;
  transition: all 0.8s;
  height: auto;
  transition-delay: 0.5s;
}
.site-header nav#gnavi div.product-menu-layer.menu-dev nav#product-menu-inner span.close-menu,
.site-header nav#gnavi div.product-menu-layer.menu-on nav#product-menu-inner span.close-menu {
  opacity: 1;
  transition: all 0.5s;
  transition-duration: 0.8s;
}
@media screen and (min-width: 1400px) {
  .site-header nav#gnavi div.product-menu-layer {
    width: 1200px;
    left: calc((100vw - 1200px) / 2);
  }
}
.site-header nav#product-menu-inner {
  transition: all 0.5s;
  background-color: rgba(0, 0, 0, 0.47);
  position: relative;
}
.site-header nav#product-menu-inner span.close-menu {
  opacity: 0;
  transition: all 0.5s;
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  width: 45px;
  height: 45px;
  align-content: center;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
.site-header nav#product-menu-inner span.close-menu i {
  font-size: 30px;
  color: #fff;
}
.site-header nav#product-menu-inner div.listWrap {
  position: relative;
}
.site-header nav#product-menu-inner ul.mainList {
  background-color: #0066b3;
  width: 240px;
  margin: 0;
  padding: 0 0 0px 30px;
  height: 0;
  opacity: 0;
  transition: all 0.5s;
}
.site-header nav#product-menu-inner ul.mainList li.menu-title {
  font-size: 18px;
  margin-bottom: 30px;
}
.site-header nav#product-menu-inner ul.mainList li.menu-title:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  .site-header nav#product-menu-inner ul.mainList li.menu-title {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  .site-header nav#product-menu-inner ul.mainList li.menu-title {
    font-size: 16px;
    font-weight: 700;
  }
}
.site-header nav#product-menu-inner ul.mainList li.menu-title {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.38);
  padding-bottom: 30px;
}
.site-header nav#product-menu-inner ul.mainList li a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  color: #fff;
  margin-right: 30px;
  font-size: 14px;
  transition: 0.5s;
  padding: 15px 0px;
  transition: 0.3s;
  position: relative;
}
.site-header nav#product-menu-inner ul.mainList li a:after {
  position: absolute;
  right: 30px;
  content: "\f105";
  color: #fff;
  font-size: 18px;
  font-family: "Font Awesome 5 Pro";
  font-weight: 100;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList {
  position: absolute;
  left: 240px;
  top: 0px;
  width: 0;
  height: 360px;
  overflow: hidden;
  transition: all 0.5s;
  transition-delay: 0.5s;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li {
  overflow: hidden;
  height: 360px;
  width: 0px;
  list-style: none;
  transition: all 0.3s;
  transition-delay: 0.3s;
  top: 0px;
  background-color: rgba(0, 102, 179, 0.69);
  left: 0px;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li a {
  background-color: rgba(0, 102, 179, 0.69);
  transition: 0.5s;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li div.list-wrap {
  white-space: nowrap !important;
  padding: 30px;
  display: flex;
  flex-wrap: wrap;
  opacity: 0;
  transition: all 0.3s;
  height: 100%;
  flex-direction: column;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li div.list-wrap span.title {
  width: 100%;
  font-size: 18px;
  margin-bottom: 30px;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li div.list-wrap span.title:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  .site-header nav#product-menu-inner ul.mainList li ul.subList li div.list-wrap span.title {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  .site-header nav#product-menu-inner ul.mainList li ul.subList li div.list-wrap span.title {
    font-size: 16px;
    font-weight: 700;
  }
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li div.list-wrap span.title {
  color: #fff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.38);
  padding-bottom: 30px;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li ul.page-list {
  overflow: hidden;
  width: 100%;
  white-space: nowrap;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li ul.page-list li {
  width: 50%;
  line-height: 1.8;
  display: block;
  background: transparent;
  height: auto;
  font-size: 14px;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li ul.page-list li a {
  background: transparent;
  padding: 0;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li ul.page-list li a:after {
  content: "";
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li ul.page-list.t1 {
  width: 50%;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li ul.page-list.t1 li {
  width: 100%;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li ul.page-list.for-parts-3 {
  width: 33.33333%;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li ul.page-list.for-parts-3 li {
  width: 100%;
  overflow: hidden;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li ul.page-list.p3 li {
  width: 33%;
  display: inline-block;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li ul.page-list.brands {
  width: inherit;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li ul.page-list.brands li {
  display: flex;
  width: 33.3333%;
  align-self: center;
  height: 100%;
}
.site-header nav#product-menu-inner ul.mainList li ul.subList li ul.page-list.brands li a {
  padding: 0;
}
.site-header nav#product-menu-inner ul.mainList li.current ul.subList {
  opacity: 0;
  height: 0;
}
.site-header nav#product-menu-inner ul.mainList li:hover a,
.site-header nav#product-menu-inner ul.mainList li.current a {
  transition: 0.5s;
  background:
    linear-gradient(
      to right,
      #0066b3 0%,
      #00589b 100%);
  background-color: rgba(0, 102, 179, 0.69);
}
.site-header nav#product-menu-inner ul.mainList li:hover a span:before,
.site-header nav#product-menu-inner ul.mainList li.current a span:before {
  transform-origin: left top;
  transform: scale(1, 1);
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList {
  transition: all 0.5s;
  transition-delay: 0.5s;
  width: calc(100% - 240px);
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList li,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList li {
  overflow: visible;
  transition: all 0.3s;
  transition-delay: 0.3s;
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList li div.list-wrap,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList li div.list-wrap {
  opacity: 1;
  transition: all 0.3s;
  height: 100%;
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList li div.parts-3-wrap,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList li div.parts-3-wrap {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList li,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList li {
  width: 100%;
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList li ul.page-list,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList li ul.page-list {
  width: 100%;
  white-space: nowrap;
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList li ul.page-list li a:hover,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList li ul.page-list li a:hover {
  padding-left: 1.1em;
  transition: all 0.2s;
  position: relative;
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList li ul.page-list li a:hover:before,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList li ul.page-list li a:hover:before {
  position: absolute;
  left: 0;
  content: "\f105";
  padding-right: 0.1em;
  font-family: "Font Awesome 5 Pro";
  font-weight: 100;
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList li ul.page-list.for-parts-3,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList li ul.page-list.for-parts-3 {
  width: 33.33333%;
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList li ul.page-list.for-parts-3 li,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList li ul.page-list.for-parts-3 li {
  width: 100%;
  overflow: hidden;
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList li ul.page-list.brands,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList li ul.page-list.brands {
  width: inherit;
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList li ul.page-list.brands li,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList li ul.page-list.brands li {
  display: flex;
  width: 33.3333%;
  align-self: center;
  height: 100%;
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList li ul.page-list.brands li a:hover,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList li ul.page-list.brands li a:hover {
  padding: 0;
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList li ul.page-list.brands li a:hover:before,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList li ul.page-list.brands li a:hover:before {
  content: "";
}
.site-header nav#product-menu-inner ul.mainList li:hover ul.subList li ul.page-list.brands li a img,
.site-header nav#product-menu-inner ul.mainList li.current ul.subList li ul.page-list.brands li a img {
  width: 100%;
  height: auto;
}
.site-header.page-front {
  background: transparent;
}
.site-header.page-front.scrolling {
  background-color: rgba(247, 248, 255, 0.7);
}
@media screen and (max-width: 1040px) {
  .site-header {
    height: 60px;
  }
  .site-header nav#gnavi {
    display: none;
  }
  .site-header div.site-id {
    display: block;
    padding: 15px;
    height: auto;
  }
  .site-header div.site-id img.logo {
    height: 30px !important;
  }
}
@keyframes logo_anime {
  from {
    height: 60px;
  }
  to {
    height: 30px !important;
  }
}
section#hero-top {
  padding-top: 100px;
  overflow: hidden;
  height: 100vh;
  min-height: 640px;
  max-height: 880px;
  position: relative;
}
section#hero-top:after {
  content: "";
  position: absolute;
  display: block;
  width: 61.8vw;
  max-width: 840px;
  height: 480px;
  top: calc(50% - 300px);
  right: 60px;
  z-index: 5;
  background-color: #D7F4F1;
  opacity: 0;
}
section#hero-top.slidein:after {
  transition: all 1.8s ease 0s;
  right: 0px;
  opacity: 1;
}
section#hero-top #topMessage {
  position: absolute;
  left: 50px;
  top: 50%;
}
section#hero-top #topMessage p {
  font-size: 24px;
  line-height: 1.3;
}
section#hero-top #topMessage {
  z-index: 50;
}
section#hero-top h1 {
  position: absolute;
  left: 60px;
  top: calc(50% - 10vh);
  font-size: 21px;
  font-size: 24px;
  margin-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section#hero-top h1 {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 809px) {
  section#hero-top h1 {
    font-size: 21px;
    font-weight: 700;
  }
}
section#hero-top h1 {
  margin-bottom: 0 !important;
  z-index: 100;
  background-image:
    linear-gradient(
      to right,
      rgba(0, 0, 0, 0) 50%,
      rgba(255, 255, 255, 0.7) 50%);
  background-position: 0 0;
  background-size: 200% auto;
  padding: 5px;
}
section#hero-top h1.slidein {
  cursor: pointer;
  background-position: -100% 0;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 0.3s ease 0s;
  transition-duration: 1s;
}
section#hero-top #topImage {
  position: absolute;
  right: 20px;
  z-index: 10;
  width: 61.8vw;
  max-width: 840px;
  height: 480px;
  top: calc(50% - 240px);
  transition: all 1.3s ease 0s;
  opacity: 0;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
section#hero-top #topImage.slidein {
  transition: all 1.3s ease 0s;
  right: 60px;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  opacity: 1;
}
section#hero-top .my-parts {
  display: inline-block;
  background-image:
    linear-gradient(
      to right,
      rgba(0, 0, 0, 0) 50%,
      #0066b3 50%);
  background-position: 0 0;
  background-size: 200% auto;
  color: transparent;
  margin-left: 0;
  text-decoration: none;
  padding: 5px;
}
section#hero-top .my-parts.slidein {
  margin-left: 10px;
  cursor: pointer;
  background-position: -100% 0;
  color: #fff;
  transition: all 0.3s ease 0s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}
section#hero-top .my-parts#m3 {
  margin-top: 15px;
}
section#mainVisual {
  padding-top: 100px;
  position: relative;
}
@media screen and (max-width: 1040px) {
  section#mainVisual {
    padding-top: 60px;
  }
}
.swiper-custom-parent {
  position: relative;
}
.swiper-custom-parent .swiper-custom-button:after {
  content: "" !important;
}
.swiper-custom-parent .swiper-custom-button.swiper-button-next {
  right: calc((100vw - 768px) / 2 - 20px);
  width: 40px;
  height: 40px;
  top: calc(50% - 20px);
  font-size: 24px;
  background-color: #0066b3;
  color: #fff;
}
@media screen and (min-width: 1400px) {
  .swiper-custom-parent .swiper-custom-button.swiper-button-next {
    right: calc((100vw - 960px) / 2 - 20px);
  }
}
.swiper-custom-parent .swiper-custom-button.swiper-button-prev {
  left: calc((100vw - 768px) / 2 - 20px);
  width: 40px;
  height: 40px;
  top: calc(50% - 20px);
  font-size: 24px;
  background-color: #0066b3;
  color: #fff;
}
@media screen and (min-width: 1400px) {
  .swiper-custom-parent .swiper-custom-button.swiper-button-prev {
    left: calc((100vw - 960px) / 2 - 20px);
  }
}
@media screen and (max-width: 809px) {
  .swiper-custom-parent .swiper-custom-button {
    display: none;
  }
}
.swiper-container {
  overflow: hidden;
}
.swiper-container .swiper-pagination-bullets {
  display: flex;
  justify-content: center;
  padding: 10px 0;
  align-items: center;
}
.swiper-container .swiper-pagination-bullets .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background: #ffffff;
  opacity: 0.5;
}
.swiper-container .swiper-pagination-bullets {
}
.swiper-container .swiper-pagination-bullets .swiper-pagination-bullet-active {
  width: 20px;
  height: 20px;
  background: rgba(255, 255, 255, 0.74);
  opacity: 1;
}
.swiper-container .swiper-wrapper .swiper-button-prev,
.swiper-container .swiper-wrapper .swiper-button-next {
  display: none;
}
.swiper-container .swiper-wrapper .swiper-slide .swiper-image {
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-content: center;
}
.swiper-container .swiper-wrapper .swiper-slide .swiper-image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.swiper-container.for-top {
  min-height: inherit;
  height: 414px;
}
.swiper-container.for-top .swiper-wrapper {
  height: 414px;
  width: 768px;
}
.swiper-container.for-top .swiper-wrapper .swiper-slide {
  height: 414px;
  background-size: cover;
  background-position: center center;
}
.swiper-container.for-top .swiper-wrapper .swiper-slide a {
  display: block;
  widows: 100%;
  height: 100%;
}
.swiper-container.for-top .swiper-wrapper .swiper-slide .swiper-image img.no-fit {
  width: 100%;
}
@media screen and (min-width: 1400px) {
  .swiper-container.for-top {
    height: 517.5px;
  }
  .swiper-container.for-top .swiper-wrapper {
    height: 517.5px;
    width: 960px;
  }
  .swiper-container.for-top .swiper-wrapper .swiper-slide {
    height: 517.5px;
  }
}
@media screen and (max-width: 809px) {
  .swiper-container.for-top {
    height: 43.125vw;
  }
  .swiper-container.for-top .swiper-wrapper {
    height: 43.125vw;
    width: 80%;
  }
  .swiper-container.for-top .swiper-wrapper .swiper-slide {
    height: 43.125vw;
  }
  .swiper-container.for-top .swiper-wrapper .swiper-slide a {
    display: block;
    width: 100%;
    height: 100%;
  }
  .swiper-container.for-top .swiper-wrapper .swiper-slide .swiper-image {
    width: 100%;
    height: auto;
  }
}
#top-title-news {
  left: 0;
  z-index: 90;
  width: 100vw;
  opacity: 1;
  transition: all 0.3s;
}
#top-title-news.hide {
  opacity: 0;
  transition: all 0.3s;
  bottom: 10px;
}
#top-title-news #topNews {
  height: 40px;
  align-content: center;
  display: flex;
  background-color: #008094;
}
#top-title-news #topNews dl {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  max-width: 970px;
  margin: 0 auto;
  align-items: center;
  width: 100vw;
  color: #fff;
}
#top-title-news #topNews dl dt:before {
  margin-right: 15px;
  font-weight: bold;
}
#top-title-news #topNews dl dt {
  line-height: 1;
  margin-bottom: 0;
  margin-right: 30px;
  font-size: 11px;
  white-space: nowrap;
}
#top-title-news #topNews dl dt:before {
  content: "NEWS";
  font-weight: bold;
}
#top-title-news #topNews dl dt {
  font-weight: normal;
  margin-bottom: 0;
}
#top-title-news #topNews dl dd {
  font-size: 11px;
  margin-bottom: 0;
  overflow: hidden;
  line-height: 1;
}
#top-title-news #topNews dl dd.cont {
  display: none;
}
@media screen and (max-width: 809px) {
  #top-title-news {
    position: static;
    width: auto;
  }
  #top-title-news a#topNews {
    padding-left: 15px;
    padding-right: 15px;
    height: auto;
  }
  #top-title-news a#topNews dl {
    width: auto;
  }
  #top-title-news a#topNews dl dt {
    margin-bottom: 5px;
  }
}
.mouse-wrap {
  display: none;
  position: absolute;
  width: 40px;
  z-index: 130;
  left: 50%;
  margin-left: -30px;
  text-align: center;
  bottom: 20px;
}
@media screen and (max-width: 809px) {
  .mouse-wrap {
    display: none;
  }
}
a.mouse {
  padding-top: 50px;
  position: relative;
  color: #0066b3;
  font-size: 11px;
}
a.mouse:hover {
  color: #0066b3;
}
a.mouse span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 20px;
  height: 40px;
  margin-left: -10px;
  border: 1px solid #0066b3;
  border-radius: 50px;
  box-sizing: border-box;
}
a.mouse span:before {
  position: absolute;
  top: 5px;
  left: 50%;
  content: "";
  width: 4px;
  height: 4px;
  margin-left: -2px;
  background-color: #0066b3;
  border-radius: 100%;
  -webkit-animation: sdb 2s infinite;
  animation: sdb 2s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    -webkit-transform: translate(0, 0);
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    -webkit-transform: translate(0, 10px);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    transform: translate(0, 0);
    opacity: 0;
  }
  40% {
    opacity: 1;
  }
  80% {
    transform: translate(0, 10px);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
footer {
  padding-bottom: 0 !important;
  background-color: rgba(247, 248, 255, 0.3);
  position: relative;
}
footer .custom-shape-divider-top-1610028224 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}
footer .custom-shape-divider-top-1610028224 svg {
  position: relative;
  display: block;
  width: calc(260% + 1.3px);
  height: 42px;
  display: none;
}
footer .custom-shape-divider-top-1610028224 .shape-fill {
  fill: #F7F8FF;
}
footer div.footer-rights {
  line-height: 1;
  letter-spacing: 0.1em;
  letter-spacing: 0.01;
  font-size: 11px;
  background-color: #0066b3;
  color: #fff;
  text-align: center;
  padding: 60px 0;
}
footer .footer-brands {
  background: rgba(40, 143, 149, 0.3);
  padding-top: 30px;
  padding-bottom: 60px;
}
footer .footer-brands .brands-wrap span.brand-title {
  display: block;
  width: 100%;
  text-align: center;
  margin-bottom: 30px;
}
footer .footer-brands .brands-wrap ul.brands {
  width: 80%;
  margin: auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-content: center;
}
footer .footer-brands .brands-wrap ul.brands img {
  height: 80px;
}
@media screen and (max-width: 809px) {
  footer .footer-brands {
    padding-top: 15px;
    padding-bottom: 30px;
  }
  footer .footer-brands .brands-wrap span.brand-title {
    margin-bottom: 15px;
  }
  footer .footer-brands .brands-wrap ul.brands {
    width: calc(100% - 30px);
    margin: 0 auto;
    display: flex;
    align-items: center;
  }
  footer .footer-brands .brands-wrap ul.brands li {
    width: 33.33333%;
  }
  footer .footer-brands .brands-wrap ul.brands li img {
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 809px) {
  footer div.footer-rights {
    padding: 15px 0;
  }
}
body {
  box-sizing: content-box;
}
body a {
  text-decoration: none;
  color: rgba(0, 69, 148, 0.69);
}
body a:hover {
  text-decoration: none;
  color: rgba(0, 69, 148, 0.69);
}
body a:visited {
  text-decoration: none;
  color: rgba(0, 69, 148, 0.69);
}
body a:focus {
  text-decoration: none;
  color: rgba(0, 69, 148, 0.69);
}
body ul,
body ol {
  list-style-type: none;
  padding-left: 0;
  margin-bottom: 0;
}
ul.table-footnote {
  padding-top: 15px;
}
ul.table-footnote li {
  font-size: 11px;
  margin-bottom: 0.5em;
}
ul.table-footnote li:last-child {
  margin-bottom: 0;
}
ul.bc {
  width: 100%;
  overflow: hidden;
  display: flex;
  flex-wrap: nowrap;
  padding-bottom: 30px;
  margin: 0 auto;
}
ul.bc li {
  font-size: 11px;
  line-height: 1;
  color: rgba(51, 51, 51, 0.7);
}
ul.bc li:after {
  content: "\f105";
  font-family: "Font Awesome 5 Pro";
  font-weight: 100;
  padding: 0 0.5em;
}
ul.bc li:last-child:after {
  content: "";
  padding: 0;
}
@media screen and (max-width: 809px) {
  ul.bc {
    overflow: auto;
    white-space: nowrap;
  }
  ul.bc li {
    display: block;
    padding: 15px 2px;
  }
}
nav#footer-menu {
  background-color: rgba(247, 248, 255, 0.3);
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  nav#footer-menu {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
nav#footer-menu {
  padding-top: 0 !important;
  overflow: hidden;
}
nav#footer-menu span.footerLogo {
  display: block;
  position: relative;
  width: 200px;
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  nav#footer-menu span.footerLogo {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
nav#footer-menu span.footerLogo:after {
  content: "";
  width: 80vw;
  position: absolute;
  left: 280px;
  top: 50%;
  border-top: 1px solid rgba(51, 51, 51, 0.1);
  height: 1px;
}
nav#footer-menu span.footerLogo img {
  width: 100%;
  height: auto;
}
nav#footer-menu h3 {
  font-size: 18px;
  margin-bottom: 30px;
}
nav#footer-menu h3:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  nav#footer-menu h3 {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  nav#footer-menu h3 {
    font-size: 16px;
    font-weight: 700;
  }
}
nav#footer-menu h3 {
  padding-bottom: 30px;
  border-bottom: 1px solid rgba(51, 51, 51, 0.1);
  border-width: 90%;
  width: 80%;
}
nav#footer-menu div.menu-wrap {
  display: flex;
}
nav#footer-menu div.menu-wrap.wrap-2 ul {
  width: 50%;
}
nav#footer-menu div.menu-wrap ul {
  width: 100%;
}
nav#footer-menu ul li {
  font-size: 13px;
}
nav#footer-menu ul li a:hover {
  padding-left: 1.1em;
  transition: all 0.2s;
  position: relative;
}
nav#footer-menu ul li a:hover:before {
  position: absolute;
  left: 0;
  content: "\f105";
  padding-right: 0.1em;
  font-family: "Font Awesome 5 Pro";
  font-weight: 100;
}
nav#footer-menu ul li a {
  color: rgba(51, 51, 51, 0.7);
}
nav#footer-menu ul.footer-sub-menu {
  padding-top: 90px;
}
nav#footer-menu ul.footer-sub-menu li {
  display: inline-block;
  margin-right: 3em;
}
nav#footer-menu ul.footer-sub-menu li:last-child:before {
  font-family: "Font Awesome 5 Brands";
  content: "\f16d";
  margin-right: 0.5em;
}
nav#footer-menu hr.list-border {
  border-top: 1px solid rgba(51, 51, 51, 0.1);
}
@media screen and (max-width: 809px) {
  nav#footer-menu .container {
    display: flex;
    flex-wrap: wrap;
  }
  nav#footer-menu {
    padding-bottom: 0 !important;
  }
  nav#footer-menu span.footerLogo {
    width: 180px;
    padding-top: 50px;
    margin: 0 auto 30px;
  }
  nav#footer-menu span.footerLogo:after {
    content: "";
    display: none;
  }
  nav#footer-menu span.footerLogo {
    order: 2;
  }
  nav#footer-menu div.row {
    order: 1;
    padding-top: 30px;
  }
  nav#footer-menu h3 {
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
  nav#footer-menu div.menu-wrap {
    flex-wrap: wrap;
    margin-bottom: 30px;
  }
  nav#footer-menu div.menu-wrap.wrap-2 ul {
    width: 100%;
  }
  nav#footer-menu ul li {
    font-size: 14px;
    line-height: 1.6;
  }
  nav#footer-menu ul.footer-sub-menu {
    padding-top: 30px;
    border-top: 1px solid rgba(51, 51, 51, 0.1);
    margin-top: 0px;
  }
  nav#footer-menu ul.footer-sub-menu li {
    display: block;
    margin-right: 0;
  }
}
nav#bottom-bc {
  position: relative;
}
nav#bottom-bc .custom-shape-divider-top-1610778159 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}
nav#bottom-bc .custom-shape-divider-top-1610778159 svg {
  position: relative;
  display: block;
  width: calc(300% + 1.3px);
  height: 56px;
  transform: rotateY(180deg);
  display: none;
}
nav#bottom-bc .custom-shape-divider-top-1610778159 .shape-fill {
  fill: #FFFFFF;
}
nav#bottom-bc.footer-top .custom-shape-divider-top-1610778159 .shape-fill,
nav#bottom-bc.footer-news .custom-shape-divider-top-1610778159 .shape-fill {
  fill: #0066b3;
}
nav#bottom-bc.footer-662 .custom-shape-divider-top-1610778159 .shape-fill,
nav#bottom-bc.footer-763 .custom-shape-divider-top-1610778159 .shape-fill,
nav#bottom-bc.footer-767 .custom-shape-divider-top-1610778159 .shape-fill,
nav#bottom-bc.footer-742 .custom-shape-divider-top-1610778159 .shape-fill,
nav#bottom-bc.footer-735 .custom-shape-divider-top-1610778159 .shape-fill {
  fill: #D7F4F1;
}
nav#bottom-bc {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  nav#bottom-bc {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
nav#bottom-bc {
  padding-bottom: 0 !important;
  padding-top: 0;
  background-color: #F7F8FF;
}
nav#bottom-bc ul.bc {
  width: 100%;
  padding-left: 15px;
  position: relative;
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  nav#bottom-bc ul.bc {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
nav#bottom-bc ul.bc {
  display: flex;
  align-items: center;
}
nav#bottom-bc ul.bc li {
  background-color: #F7F8FF;
  font-size: 13px;
  padding-right: 15px;
}
nav#bottom-bc ul.bc li:after {
  padding-left: 15px;
  font-size: 14px;
  vertical-align: middle;
}
nav#bottom-bc ul.bc li:first-child span img {
  height: 28px;
  width: auto;
}
nav#bottom-bc ul.bc li:nth-last-child(2) {
  position: relative;
}
nav#bottom-bc ul.bc li:nth-last-child(2):after {
  display: block;
  content: "";
  width: 100vw;
  overflow: hidden;
  position: absolute;
  top: 50%;
  left: calc(100% + 15px);
  border-top: 1px solid rgba(51, 51, 51, 0.1);
}
nav#bottom-bc ul.bc li.toTop {
  background-color: #F7F8FF;
  position: absolute;
  right: 0;
  border-radius: 80px;
  top: 75px;
}
nav#bottom-bc ul.bc li.toTop a {
  border-radius: 8px;
  background-color: #FFF;
  box-shadow: 5px 5px 10px #e8e9f0, -5px -5px 10px #ffffff;
  background: #fff;
  display: block;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px;
  border-radius: 30px;
  height: 60px;
  color: #0066b3;
  width: 60px;
}
nav#bottom-bc ul.bc li.toTop a span {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
}
@media screen and (max-width: 809px) {
  nav#bottom-bc {
    padding-top: 30px;
    padding-bottom: 30px !important;
  }
  nav#bottom-bc ul.bc {
    padding-left: 0;
    padding: 0 !important;
  }
  nav#bottom-bc ul.bc li {
    padding-bottom: 0;
    letter-spacing: 0;
    padding-top: 0;
    font-size: 11px;
    padding-right: 0px;
  }
  nav#bottom-bc ul.bc li:after {
    padding-left: 7.5px;
    font-size: 12px;
  }
  nav#bottom-bc ul.bc li:first-child span img {
    height: 16px;
  }
  nav#bottom-bc ul.bc li:nth-last-child(2):after {
    width: 0;
    border: none;
  }
  nav#bottom-bc ul.bc li.toTop a {
    border-radius: 8px;
    background-color: #fff;
    box-shadow: 5px 5px 10px rgba(88, 90, 96, 0.3), -5px -5px 10px rgba(255, 255, 255, 0);
    border-radius: 30px;
    position: fixed;
    right: 12px;
    bottom: 12px;
    z-index: 10;
  }
}
section.pageBox h2.h2-section {
  margin-bottom: 30px;
}
@media screen and (max-width: 809px) {
  section.pageBox h2.h2-section {
    margin-bottom: 15px;
  }
}
section.pageBox h2.h2-section {
  font-size: 21px;
}
@media screen and (max-width: 809px) {
  section.pageBox h2.h2-section {
    font-size: 21px;
    font-weight: 700;
  }
}
section.pageBox h2.h2-section {
  font-weight: bold;
  text-align: center;
  margin-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.pageBox h2.h2-section {
    margin-bottom: 30px;
  }
}
section.pageBox h3.h3-section {
  font-size: 18px;
  margin-bottom: 30px;
}
section.pageBox h3.h3-section:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.pageBox h3.h3-section {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.pageBox h3.h3-section {
    font-size: 16px;
    font-weight: 700;
  }
}
section.pageBox h3.h3-section {
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (max-width: 809px) {
  section.pageBox h3.h3-section {
    margin-bottom: 15px;
  }
}
section.pageBox h3.h3-table-title {
  font-size: 18px;
  margin-bottom: 30px;
}
section.pageBox h3.h3-table-title:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.pageBox h3.h3-table-title {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.pageBox h3.h3-table-title {
    font-size: 16px;
    font-weight: 700;
  }
}
section.pageBox h3.h3-table-title {
  margin-bottom: 30px;
}
@media screen and (max-width: 809px) {
  section.pageBox h3.h3-table-title {
    margin-bottom: 15px;
  }
}
section.pageBox div.dl-button-wrap {
  padding-top: 60px;
  width: 100%;
  text-align: center;
}
section.pageBox div.dl-button-wrap form input.dl-button {
  text-align: center;
  font-size: 18px;
  margin-bottom: 30px;
}
section.pageBox div.dl-button-wrap form input.dl-button:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.pageBox div.dl-button-wrap form input.dl-button {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.pageBox div.dl-button-wrap form input.dl-button {
    font-size: 16px;
    font-weight: 700;
  }
}
section.pageBox div.dl-button-wrap form input.dl-button {
  background-color: #0066b3;
  color: #fff;
  padding: 15px 30px;
  border-radius: 4px;
  border: none;
  -webkit-transition: background-color 0.3s linear;
}
section.pageBox div.dl-button-wrap form input.dl-button:hover {
  background-color: rgba(0, 102, 179, 0.69);
  -webkit-transition: background-color 0.3s linear;
}
section.pageBox a.btn-pdf {
  text-align: center;
  font-size: 18px;
  margin-bottom: 30px;
}
section.pageBox a.btn-pdf:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.pageBox a.btn-pdf {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.pageBox a.btn-pdf {
    font-size: 16px;
    font-weight: 700;
  }
}
section.pageBox a.btn-pdf {
  background-color: #0066b3;
  color: #fff;
  padding: 15px 30px;
  border-radius: 4px;
  border: none;
  -webkit-transition: background-color 0.3s linear;
}
section.pageBox a.btn-pdf:hover {
  background-color: rgba(0, 102, 179, 0.69);
  -webkit-transition: background-color 0.3s linear;
}
section.pageBox div.btn-pdf-wrap {
  padding-top: 30px;
}
@media screen and (max-width: 809px) {
  section.pageBox div.btn-pdf-wrap {
    padding-top: 30px;
  }
}
main > section.pageBox:first-child {
  padding-top: 100px;
}
@media screen and (max-width: 809px) {
  main > section.pageBox:first-child {
    padding-top: 60px;
  }
}
@media (orientation: landscape) and (max-height: 450px) {
  main > section.pageBox:first-child {
    padding-top: 0px !important;
  }
}
section.news-box {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.news-box {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.news-box .container {
  max-width: 970px;
}
section.news-box.all-news .container {
  margin-top: 90px;
}
section.news-box {
  background-color: #0066b3;
}
section.news-box h2.h2-section {
  margin-bottom: 60px !important;
  color: #FFF;
}
section.news-box .news-wrap {
  border-radius: 8px;
  background: #0066b3;
  box-shadow: 5px 5px 10px #005798, -5px -5px 10px #0075ce;
  transition: all 0.5s;
}
section.news-box .news-wrap ul.news-list li {
  border-bottom: 2px solid #0066b3;
}
section.news-box .news-wrap ul.news-list li .news-list {
  background-color: rgba(255, 255, 255, 0.9);
  display: block;
  color: #0A0908;
  padding: 30px;
  position: relative;
}
section.news-box .news-wrap ul.news-list li .news-list dl {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 0;
}
section.news-box .news-wrap ul.news-list li .news-list dl dt {
  width: 200px;
  font-size: 13px;
  line-height: 1.6;
  color: rgba(51, 51, 51, 0.7);
}
section.news-box .news-wrap ul.news-list li .news-list dl dd {
  line-height: 1.3;
  width: calc(100% - 200px);
  margin-bottom: 0;
}
section.news-box .news-wrap ul.news-list li .news-list dl dd.title {
  font-size: 18px;
}
section.news-box .news-wrap ul.news-list li .news-list dl dd.cont {
  overflow: hidden;
  max-width: 440px;
  line-height: 1.6;
  font-size: 13px;
  margin-top: 15px;
  margin-bottom: 0;
  margin-left: 200px;
}
section.news-box .news-wrap ul.news-list li .news-list dl dd.cont p {
  margin-bottom: 0;
  padding-left: 0 !important;
}
section.news-box .news-wrap ul.news-list li .news-list.external-link {
  padding-right: 90px;
}
section.news-box .news-wrap ul.news-list li .news-list.external-link:after {
  color: #0066b3;
  width: 30px;
  height: 30px;
  display: block;
  content: "\f35d";
  font-family: "Font Awesome 5 Pro";
  font-weight: 100;
  position: absolute;
  right: 30px;
  top: 50%;
  font-size: 20px;
  margin-top: -0.5em;
  line-height: 1;
}
section.news-box .news-wrap ul.news-list li .news-list.pdf-link {
  padding-right: 90px;
}
section.news-box .news-wrap ul.news-list li .news-list.pdf-link:after {
  color: #0066b3;
  width: 30px;
  height: 30px;
  display: block;
  content: "\f1c1";
  font-family: "Font Awesome 5 Pro";
  font-weight: 100;
  position: absolute;
  right: 30px;
  top: 50%;
  font-size: 20px;
  margin-top: -0.5em;
  line-height: 1;
}
section.news-box .news-wrap ul.news-list li:first-child .news-list {
  border-top-right-radius: 8px;
  border-top-left-radius: 8px;
}
section.news-box .news-wrap ul.news-list li:last-child {
  border-bottom: none;
}
section.news-box .news-wrap ul.news-list li:last-child .news-list {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}
section.news-box .news-wrap ul.news-list li a.news-list:hover {
  background-color: #fff;
  transition: all 0.5s;
}
section.news-box .button-wrap-general {
  text-align: center;
  padding: 60px 0 0;
}
section.news-box .button-wrap-general a {
  display: block;
  max-width: 320px;
  margin-left: auto;
  margin-right: auto;
  border-radius: 8px;
  background: #0066b3;
  box-shadow: 5px 5px 10px #005798, -5px -5px 10px #0075ce;
}
@media screen and (max-width: 809px) {
  section.news-box h2.h2-section {
    margin-bottom: 30px !important;
  }
  section.news-box.all-news .container {
    margin-top: 30px;
  }
  section.news-box .news-wrap ul.news-list li .news-list {
    padding: 15px;
  }
  section.news-box .news-wrap ul.news-list li .news-list dl dt {
    width: 100%;
  }
  section.news-box .news-wrap ul.news-list li .news-list dl dd {
    width: 100%;
  }
  section.news-box .news-wrap ul.news-list li .news-list dl dd.title {
    font-size: 16px;
  }
  section.news-box .news-wrap ul.news-list li .news-list dl dd.cont {
    margin: 15px auto 0;
    border-left: 2px solid rgba(51, 51, 51, 0.3);
    padding-left: 15px;
    font-size: 13px;
  }
  section.news-box .news-wrap ul.news-list li .news-list.external-link {
    padding-right: 15px;
  }
  section.news-box .news-wrap ul.news-list li .news-list.external-link:after {
    right: auto;
    left: 50%;
    opacity: 0.4;
    top: 50%;
    font-size: 40px;
    margin-top: -15px;
    margin-left: -15px;
  }
  section.news-box .news-wrap ul.news-list li .news-list.pdf-link {
    padding-right: 15px;
  }
  section.news-box .news-wrap ul.news-list li .news-list.pdf-link dl dd.title {
    margin-right: 45px;
  }
  section.news-box .news-wrap ul.news-list li .news-list.pdf-link:after {
    right: 15px;
    left: auto;
    opacity: 0.4;
    top: 50%;
    font-size: 40px;
    margin-top: -15px;
    margin-left: 0;
  }
  section.news-box .button-wrap-general {
    padding-top: 30px;
  }
  section.news-box .button-wrap-general a {
    max-width: 100%;
  }
}
section h1.page-name {
  font-size: 24px;
  margin-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section h1.page-name {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 809px) {
  section h1.page-name {
    font-size: 21px;
    font-weight: 700;
  }
}
section h1.page-name {
  margin-bottom: 60px !important;
  font-weight: 700 !important;
}
section.inquiry-box {
  background:
    linear-gradient(
      180deg,
      rgba(247, 248, 255, 0.7) 0%,
      rgb(255, 255, 255) 65%);
}
section.inquiry-box .inquiry-body .wpcf7 {
  max-width: 420px;
  margin-right: auto;
  margin-left: auto;
}
section.inquiry-box .inquiry-body {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.inquiry-box .inquiry-body {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.inquiry-box .inquiry-guide {
  background-color: #FFF;
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.inquiry-box .inquiry-guide {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.inquiry-box .inquiry-guide .inquiry-guide-inner {
  min-height: 240px;
  position: sticky;
  top: 90px;
  max-width: 420px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 809px) {
  section.inquiry-box .inquiry-guide {
    padding-top: 0;
  }
  section.inquiry-box .inquiry-guide .inquiry-guide-inner {
    position: static;
  }
  section.inquiry-box .inquiry-guide .inquiry-guide-inner p {
    font-size: 13px;
  }
  section.inquiry-box .inquiry-guide .inquiry-guide-inner p br {
    display: none;
  }
}
section.regulation-box {
  background:
    linear-gradient(
      180deg,
      rgba(247, 248, 255, 0.7) 0%,
      rgb(255, 255, 255) 65%);
}
section.regulation-box .container {
  max-width: 880px;
}
section.regulation-box .regulation-body {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.regulation-box .regulation-body {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.regulation-box .regulation-body .regulation-content h2,
section.regulation-box .regulation-body .regulation-content h3,
section.regulation-box .regulation-body .regulation-content h4 {
  font-size: 18px;
  margin-bottom: 30px;
}
section.regulation-box .regulation-body .regulation-content h2:last-child,
section.regulation-box .regulation-body .regulation-content h3:last-child,
section.regulation-box .regulation-body .regulation-content h4:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.regulation-box .regulation-body .regulation-content h2,
  section.regulation-box .regulation-body .regulation-content h3,
  section.regulation-box .regulation-body .regulation-content h4 {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.regulation-box .regulation-body .regulation-content h2,
  section.regulation-box .regulation-body .regulation-content h3,
  section.regulation-box .regulation-body .regulation-content h4 {
    font-size: 16px;
    font-weight: 700;
  }
}
section.regulation-box .regulation-body .regulation-content h2,
section.regulation-box .regulation-body .regulation-content h3,
section.regulation-box .regulation-body .regulation-content h4 {
  color: #00589b;
  position: relative;
}
section.regulation-box .regulation-body .regulation-content h2:before,
section.regulation-box .regulation-body .regulation-content h3:before,
section.regulation-box .regulation-body .regulation-content h4:before {
  content: "";
  width: 30px;
  left: -45px;
  display: block;
  top: 0.6em;
  border-top: 1px solid #00589b;
  line-height: 1;
  position: absolute;
}
section.regulation-box .regulation-body .regulation-content p {
  font-size: 14px;
  margin-bottom: 30px;
}
section.regulation-box .regulation-body .regulation-content p:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.regulation-box .regulation-body .regulation-content p {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.regulation-box .regulation-body .regulation-content p {
    font-size: 13px;
  }
}
section.regulation-box .regulation-body .regulation-content p + h2,
section.regulation-box .regulation-body .regulation-content p + h3,
section.regulation-box .regulation-body .regulation-content p + h4 section.regulation-box .regulation-body .regulation-content p + ol,
section.regulation-box .regulation-body .regulation-content p + ul {
  margin-top: 90px;
}
section.regulation-box .regulation-body .regulation-content p.mail {
  padding-top: 60px;
}
@media screen and (max-width: 809px) {
  section.regulation-box .regulation-body {
    padding-top: 0;
  }
  section.regulation-box .regulation-body .regulation-content p + h2,
  section.regulation-box .regulation-body .regulation-content p + h3,
  section.regulation-box .regulation-body .regulation-content p + h4 section.regulation-box .regulation-body .regulation-content p + ol,
  section.regulation-box .regulation-body .regulation-content p + ul {
    margin-top: 30px;
  }
}
main.cascade-dual section.item-box .item-title-inner figure.this-product {
  position: relative;
}
main.cascade-dual section.item-box .item-title-inner figure.this-product img {
  margin-bottom: 0;
}
main.cascade-dual section.item-box .item-title-inner figure.this-product figcaption {
  position: absolute;
  right: 0;
  font-size: 16px;
  bottom: 80px;
  font-style: italic;
  text-align: right;
  color: #000;
  line-height: 1.2;
}
main.cascade-dual:before {
  content: "Ultimate Shielding\aLightweight\a Compact";
  white-space: pre;
  color: #000;
  position: fixed;
  text-align: right;
  font-style: italic;
  right: 15px;
  font-size: 24px;
  line-height: 1.2;
}
@media screen and (min-width: 809px) {
  main.cascade-dual:before {
    top: auto;
    bottom: 15px;
    font-size: 18px;
  }
}
@media screen and (min-width: 1000px) {
  main.cascade-dual:before {
    top: auto;
  }
}
@media screen and (min-width: 1340px) {
  main.cascade-dual:before {
    top: auto;
    bottom: 100px;
    font-size: 23px;
  }
}
@media screen and (min-width: 1500px) {
  main.cascade-dual:before {
    top: auto;
    bottom: 100px;
  }
}
@media screen and (min-width: 1800px) {
  main.cascade-dual:before {
    top: auto;
    bottom: 100px;
  }
}
@media screen and (max-width: 767px) {
  main.cascade-dual:before {
    display: none;
  }
}
@media screen and (max-width: 808px) {
  main.cascade-dual:before {
    display: none;
  }
}
@media (orientation: landscape) and (max-height: 450px) {
  main.cascade-dual:before {
    font-size: 14px;
  }
}
main.cascade-dual:after {
  transition: opacity 0.3s ease;
  opacity: 1;
  content: "";
  display: block;
  width: 30vw;
  z-index: -2;
  height: calc(40.26vw + 180px);
  position: fixed;
  right: 0;
  top: -50px;
  background-image: url(img/bg-cascade-dual_.webp);
  background-size: 100%;
  background-position: right 180px;
  background-repeat: no-repeat;
}
@media screen and (min-width: 1040px) {
  main.cascade-dual:after {
    width: 36vw;
  }
}
@media screen and (min-width: 1340px) {
  main.cascade-dual:after {
    width: 520px;
    height: 877.84px;
  }
}
@media screen and (min-width: 1500px) {
  main.cascade-dual:after {
    width: 40vw;
    height: calc(53.68vw + 180px);
  }
}
@media screen and (min-width: 1800px) {
  main.cascade-dual:after {
    background-position: right 180px;
  }
}
@media screen and (max-width: 809px) {
  main.cascade-dual:after {
    display: none;
  }
}
@media (orientation: landscape) and (max-height: 450px) {
  main.cascade-dual:after {
    height: calc(48.312vw + 30px);
    background-position: right 120px;
    width: 25vw;
  }
}
main.cascade-dual.no-bg:after,
main.cascade-dual.no-bg:before {
  opacity: 0;
  pointer-events: none;
}
main.cascade-dual .cascade-explain {
  margin-bottom: 60px;
}
@media screen and (max-width: 809px) {
  main.cascade-dual .cascade-explain {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  main.cascade-dual .cascade-feat-wrap {
    display: block !important;
  }
}
main.cascade-dual .cascade-table-explain {
  display: flex;
  background-color: #fff;
  font-size: 13px;
  padding: 5px 10px;
  margin: 0 auto 15px;
  color: #0A0908;
}
main.cascade-dual .cascade-table-explain dt,
main.cascade-dual .cascade-table-explain dd {
  margin-bottom: 0;
  margin-right: 15px;
}
main.cascade-dual .cascade-spec {
  padding-top: 60px;
  padding-bottom: 0;
}
main.cascade-dual .cascade-spec a {
  margin-bottom: 15px;
}
main.cascade-dual .cascade-spec .cooler-table-wrap .cooler-table {
  border: 1px solid #0066b3;
  width: 100%;
}
main.cascade-dual .cascade-spec .cooler-table-wrap .cooler-table th {
  background-color: rgb(36, 171, 225);
  color: #fff;
}
main.cascade-dual .cascade-spec .cooler-table-wrap p.footnote {
  margin-top: -20px;
  margin-bottom: 10px;
}
@media screen and (max-width: 809px) {
  main.cascade-dual .cascade-spec {
    padding-top: 15px;
  }
  main.cascade-dual .cascade-spec .cooler-table-wrap p.footnote {
    margin-top: -10px;
  }
}
main.cascade-dual .cascade-feat {
  background-color: rgb(36, 171, 225);
  background-color: #1c75bc;
  background-image: url(img/cascade_back_logo.png?11);
  background-repeat: no-repeat;
  background-position: left 15px bottom 0px;
  background-size: 215px;
  color: #fff;
  padding: 30px 15px 15px;
  border-radius: 8px;
  box-shadow: 5px 5px 10px rgba(221, 254, 255, 0.5), -5px -5px 10px rgba(221, 254, 255, 0.5);
  position: relative;
  margin-bottom: 30px;
}
main.cascade-dual .cascade-feat.col-md-7 {
  margin-bottom: 0;
}
main.cascade-dual .cascade-feat:after {
  color: rgb(14, 118, 188);
  color: #fff;
  z-index: 0;
  opacity: 0.7;
  font-size: 82px;
  right: 10px;
  top: -23px;
  position: absolute;
}
main.cascade-dual .cascade-feat .footnote {
  text-align: right;
  margin-top: 5px;
}
main.cascade-dual .cascade-feat .cooler-table-wrap .cooler-table {
  width: 100%;
  margin-bottom: 10px;
}
main.cascade-dual .cascade-feat .cooler-table-wrap .cooler-table thead th {
  text-align: center;
  font-size: 13px;
  background-color: rgb(36, 171, 225);
}
main.cascade-dual .cascade-feat .cooler-table-wrap .cooler-table thead tr:first-child th {
  border: 1px solid #1c75bc;
}
main.cascade-dual .cascade-feat .cooler-table-wrap .cooler-table thead th,
main.cascade-dual .cascade-feat .cooler-table-wrap .cooler-table thead td {
  padding-left: 0;
  padding-right: 0;
}
main.cascade-dual .cascade-feat .cooler-table-wrap .cooler-table tbody th img {
  height: 18px;
}
main.cascade-dual .cascade-feat .cooler-table-wrap .cooler-table tbody th {
  color: #212529;
  text-align: center;
  border: 1px solid #1c75bc;
}
main.cascade-dual .cascade-feat .cooler-table-wrap .cooler-table tbody td {
  border: 1px solid #1c75bc;
  text-align: center;
  font-size: 13px;
  color: #212529;
}
main.cascade-dual .cascade-feat .cooler-table-wrap .cooler-table tbody th,
main.cascade-dual .cascade-feat .cooler-table-wrap .cooler-table tbody td {
  padding-left: 0;
  padding-right: 0;
}
main.cascade-dual .cascade-feat .compare-image {
  display: flex;
  justify-content: space-between;
}
main.cascade-dual .cascade-feat .compare-image figure {
  width: 48%;
}
main.cascade-dual .cascade-feat .compare-image figure img {
  width: 100%;
  margin-bottom: 10px;
}
main.cascade-dual .cascade-feat .compare-image figure {
  text-align: center;
}
main.cascade-dual .cascade-feat .compare-image figure figcaption {
  font-size: 13px;
  display: flex;
  flex-direction: column;
  line-height: 1.2;
  justify-content: center;
}
main.cascade-dual .cascade-feat .compare-image figure figcaption span.cascade {
  font-size: 18px;
  font-weight: bold;
}
main.cascade-dual .cascade-feat .compare-image figure figcaption img {
  height: 18px;
  width: auto;
  margin: 0;
}
main.cascade-dual .cascade-feat h3 {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 30px;
}
main.cascade-dual .cascade-feat.n1:after {
  content: "01";
}
main.cascade-dual .cascade-feat.n2:after {
  content: "02";
}
main.cascade-dual .cascade-feat.n3:after {
  content: "03";
}
@media screen and (max-width: 809px) {
  main.cascade-dual .cascade-feat {
    margin-top: 0;
    margin-bottom: 15px;
  }
  main.cascade-dual .cascade-feat .cooler-table-wrap {
    width: auto;
    margin-right: -15px;
  }
  main.cascade-dual .cascade-feat .cooler-table-wrap .cooler-table thead th,
  main.cascade-dual .cascade-feat .cooler-table-wrap .cooler-table thead td,
  main.cascade-dual .cascade-feat .cooler-table-wrap .cooler-table tbody th,
  main.cascade-dual .cascade-feat .cooler-table-wrap .cooler-table tbody td {
    min-width: 4.2em;
  }
}
section.item-box .item-body {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.item-box .item-body {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.item-box .item-content h2 {
  margin-bottom: 30px;
}
@media screen and (max-width: 809px) {
  section.item-box .item-content h2 {
    margin-bottom: 15px;
  }
}
section.item-box .item-content h2 {
  font-size: 21px;
}
@media screen and (max-width: 809px) {
  section.item-box .item-content h2 {
    font-size: 21px;
    font-weight: 700;
  }
}
section.item-box .item-content h2 {
  color: #00589b;
}
section.item-box .item-content p {
  font-size: 14px;
  margin-bottom: 30px;
}
section.item-box .item-content p:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-box .item-content p {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-box .item-content p {
    font-size: 13px;
  }
}
section.item-box .item-content p.notice {
  font-size: 11px;
  padding-left: 0.5em;
  text-indent: -0.5em;
}
section.item-box .item-content p.notice:before {
  content: "\203b";
}
section.item-box .item-content p.notice {
  margin-bottom: 30px;
}
section.item-box .item-content p.notice:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-box .item-content p.notice {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-box .item-content p.notice {
    font-size: 10px;
  }
}
section.item-box .item-content p span.cas-tokkyo {
  font-size: 11px;
  margin-block: 15px;
  display: block;
}
section.item-box .item-content .shield-reason {
  position: relative;
  margin-bottom: 30px;
  background-color: #D7F4F1;
  padding: 30px;
  border-radius: 8px;
  background: #c0dddf;
  box-shadow: 5px 5px 10px #a3bcbe, -5px -5px 10px rgba(221, 254, 255, 0.5);
}
section.item-box .item-content .shield-reason p {
  color: #0066b3;
  margin-bottom: 30px;
}
@media screen and (max-width: 809px) {
  section.item-box .item-content .shield-reason p {
    margin-bottom: 15px;
  }
}
section.item-box .item-content .shield-reason p {
  font-size: 21px;
}
@media screen and (max-width: 809px) {
  section.item-box .item-content .shield-reason p {
    font-size: 21px;
    font-weight: 700;
  }
}
section.item-box .item-content .shield-reason div.sashi {
  position: absolute;
  right: -60px;
  top: -60px;
  width: 120px;
  height: 120px;
}
section.item-box .item-content .shield-reason div.sashi img {
  width: 100%;
  vertical-align: bottom;
  border-radius: 120px;
  box-shadow: 5px 5px 10px rgba(88, 90, 96, 0.3), -5px -5px 10px rgba(255, 255, 255, 0);
}
section.item-box .item-content .shield-reason ol li {
  font-size: 14px;
  margin-bottom: 30px;
}
section.item-box .item-content .shield-reason ol li:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-box .item-content .shield-reason ol li {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-box .item-content .shield-reason ol li {
    font-size: 13px;
  }
}
section.item-box .item-content .shield-reason ol li {
  margin-bottom: 1em;
  list-style: decimal;
  padding-left: 0.5em;
  margin-left: 1.5em;
}
section.item-box .grinder-spec h3 {
  text-align: center;
  color: #fff;
  background-color: #0066b3;
  padding: 10px;
  line-height: 1;
  font-size: 13px;
  margin: 0 -15px 15px;
}
section.item-box .grinder-spec {
  background-color: #D7F4F1;
  padding: 0 15px 15px;
}
section.item-box .grinder-spec p {
  font-size: 11px;
  margin-bottom: 10px;
}
section.item-box .grinder-spec p:last-child {
  margin-bottom: 0;
}
section.item-box h3.grinder-title {
  margin-bottom: 30px;
}
@media screen and (max-width: 809px) {
  section.item-box h3.grinder-title {
    margin-bottom: 15px;
  }
}
section.item-box h3.grinder-title {
  font-size: 21px;
}
@media screen and (max-width: 809px) {
  section.item-box h3.grinder-title {
    font-size: 21px;
    font-weight: 700;
  }
}
section.item-box .grinder-options {
  background-color: rgba(40, 143, 149, 0.3);
  padding: 30px;
  border-radius: 4px;
}
section.item-box .grinder-options h3.grinder-title {
  text-align: center;
  color: #00589b;
}
section.item-box .grinder-options .types {
  margin-top: 30px;
}
section.item-box .grinder-options .types .shield-text p {
  font-size: 14px;
  margin-bottom: 30px;
}
section.item-box .grinder-options .types .shield-text p:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-box .grinder-options .types .shield-text p {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-box .grinder-options .types .shield-text p {
    font-size: 13px;
  }
}
section.item-box .grinder-options .types .shield-text p {
  font-size: 11px;
}
section.item-box .grinder-options .types .shield-text h3 {
  font-size: 18px;
  margin-bottom: 30px;
}
section.item-box .grinder-options .types .shield-text h3:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-box .grinder-options .types .shield-text h3 {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-box .grinder-options .types .shield-text h3 {
    font-size: 16px;
    font-weight: 700;
  }
}
section.item-box .grinder-options .types .shield-text h3 {
  font-size: 13px;
  margin-bottom: 15px;
}
section.item-box .grinder-options .types .shield-text h3 span {
  display: block;
  padding-top: 5px;
  font-size: 11px;
  color: rgba(51, 51, 51, 0.7);
}
section.item-box .grinder-5-feature .feat-box {
  padding-right: 30px;
  margin-bottom: 60px;
}
section.item-box .grinder-5-feature .feat-box h4 {
  font-size: 18px;
  margin-bottom: 30px;
}
section.item-box .grinder-5-feature .feat-box h4:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-box .grinder-5-feature .feat-box h4 {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-box .grinder-5-feature .feat-box h4 {
    font-size: 16px;
    font-weight: 700;
  }
}
section.item-box .grinder-5-feature .feat-box h4 {
  color: #00589b;
  position: relative;
  margin-right: -30px;
}
section.item-box .grinder-5-feature .feat-box h4:after {
  content: "";
  width: 20px;
  display: block;
  border-top: 1px solid #00589b;
  top: 50%;
  left: -30px;
  position: absolute;
}
section.item-box table.download-table {
  margin-bottom: 60px;
  width: 100%;
}
section.item-box table.download-table th {
  width: 80%;
}
section.item-box table.download-table td {
  text-align: center;
}
section.item-box table.download-table td,
section.item-box table.download-table th {
  border: 1px solid #0066b3;
  font-size: 16px;
  padding: 15px;
}
section.item-box table.download-table td span,
section.item-box table.download-table th span {
  font-size: 80%;
  font-weight: normal;
  color: rgba(51, 51, 51, 0.7);
  padding-left: 1em;
}
section.item-box .cooler-table-wrap {
  width: 100%;
  overflow: scroll;
}
section.item-box .cooler-table-wrap .cooler-table {
  margin-bottom: 30px;
  border-left: 1px solid #0066b3;
}
section.item-box .cooler-table-wrap .cooler-table thead th {
  border-right: 1px solid #0066b3;
  background-color: #0066b3;
  color: #fff;
  font-size: 11px;
  padding: 5px 10px;
  line-height: 1;
}
section.item-box .cooler-table-wrap .cooler-table tbody {
  background-color: #fff;
}
section.item-box .cooler-table-wrap .cooler-table tbody th,
section.item-box .cooler-table-wrap .cooler-table tbody td {
  padding: 8px;
  font-size: 11px;
  border-bottom: 1px solid #0066b3;
  border-right: 1px solid #0066b3;
}
section.item-box .cooler-table-wrap .cooler-table tbody th {
  color: #fff;
  font-size: 13px;
  font-weight: bold;
}
section.item-box .cooler-box h3 {
  font-size: 18px;
  margin-bottom: 30px;
}
section.item-box .cooler-box h3:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-box .cooler-box h3 {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-box .cooler-box h3 {
    font-size: 16px;
    font-weight: 700;
  }
}
section.item-box .cooler-box h3 {
  color: #00589b;
}
section.item-box .cooler-box ul {
  margin-bottom: 30px;
  padding-left: 1em;
}
section.item-box .cooler-box ul li {
  line-height: 1.5;
  font-size: 13px;
  list-style-type: disc;
}
@media screen and (max-width: 809px) {
  section.item-box table.download-table {
    margin-bottom: 15px;
  }
  section.item-box table.download-table td {
    text-align: left;
    font-size: 13px;
    padding: 8.5px;
    line-height: 1;
  }
  section.item-box table.download-table td a {
    color: #0A0908;
  }
  section.item-box table.download-table td a i {
    color: #0066b3;
  }
  section.item-box .grinder-options {
    padding: 15px;
  }
  section.item-box .grinder-options .types {
    padding-bottom: 15px;
    border-bottom: 2px solid #fff;
    margin-top: 15px;
  }
  section.item-box .grinder-options .types:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
  section.item-box .grinder-5-feature .feat-box {
    padding-right: 0;
    margin-bottom: 15px;
  }
  section.item-box .grinder-5-feature .feat-box h4 {
    margin-right: 0;
  }
  section.item-box .grinder-spec {
    margin-bottom: 30px;
    margin-top: 30px;
  }
  section.item-box .grinder-spec h3 {
    font-size: 16px;
  }
  section.item-box .grinder-spec p {
    font-size: 13px;
    margin-bottom: 0;
    line-height: 2;
  }
  section.item-box .grinder-spec p img {
    margin: 0 auto;
    width: 100%;
    max-width: 280px;
  }
  section.item-box .item-body {
    padding-top: 0 !important;
  }
  section.item-box .item-title-inner ul.bc {
    padding-bottom: 15px;
  }
  section.item-box .item-title-inner h1 {
    margin-bottom: 15px !important;
  }
  section.item-box .item-title-inner figure.this-product img {
    margin-bottom: -3em;
    width: 100%;
    height: auto;
  }
  section.item-box .item-content .shield-reason {
    border-radius: 8px;
    background: rgba(247, 248, 255, 0.3);
    box-shadow: 5px 5px 10px #d7d7d9, -5px -5px 10px #fdfdff;
    margin-bottom: 0;
    margin-top: 60px;
    padding: 60px 15px 15px;
  }
  section.item-box .item-content .shield-reason div.sashi {
    width: 90px;
    height: 90px;
    top: -45px;
    left: calc(50% - 45px);
  }
  section.item-box .cooler-table-wrap .cooler-table {
    margin-bottom: 15px;
  }
  section.item-box .cooler-table-wrap .cooler-table thead th {
    min-width: 7em;
    white-space: nowrap;
  }
}
section.item-shieldnozzle-type {
  background-color: #F7F8FF;
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-type {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.item-shieldnozzle-type .types {
  margin-bottom: 60px;
}
section.item-shieldnozzle-type .types h3 {
  font-size: 18px;
  margin-bottom: 30px;
}
section.item-shieldnozzle-type .types h3:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-type .types h3 {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-type .types h3 {
    font-size: 16px;
    font-weight: 700;
  }
}
section.item-shieldnozzle-type .types h3 {
  color: #00589b;
}
section.item-shieldnozzle-type .types p {
  font-size: 14px;
  margin-bottom: 30px;
}
section.item-shieldnozzle-type .types p:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-type .types p {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-type .types p {
    font-size: 13px;
  }
}
section.item-shieldnozzle-type .types p {
  font-size: 13px;
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-type .types {
    margin-bottom: 15px;
  }
  section.item-shieldnozzle-type .types h3 {
    font-size: 13px !important;
  }
  section.item-shieldnozzle-type .types p {
    font-size: 11px !important;
  }
}
section.item-shieldnozzle-number {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-number {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.item-shieldnozzle-number h3 {
  font-size: 18px;
  margin-bottom: 30px;
}
section.item-shieldnozzle-number h3:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-number h3 {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-number h3 {
    font-size: 16px;
    font-weight: 700;
  }
}
section.item-shieldnozzle-number table.number-add-2 {
  width: 100%;
}
section.item-shieldnozzle-number table.number-add-2 thead tr {
  background-color: #fff;
}
section.item-shieldnozzle-number table.number-add-2 thead tr th {
  text-align: center;
  vertical-align: middle;
  line-height: 1;
  padding: 8px;
  font-size: 13px;
  font-weight: bold;
  color: #fff;
  background-color: rgba(0, 102, 179, 0.69);
  border-left: 1px solid #0066b3;
}
section.item-shieldnozzle-number table.number-add-2 thead tr th:first-child {
  border-left: 1px solid #0066b3;
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-number table.number-add-2 thead tr th {
    font-size: 11px;
  }
}
section.item-shieldnozzle-number table.number-add-2 tbody tr {
  background-color: #fff;
}
section.item-shieldnozzle-number table.number-add-2 tbody tr td {
  border: 1px solid #0066b3;
  color: #0A0908;
  text-align: center;
  vertical-align: middle;
  line-height: 1;
  padding: 8px;
  font-size: 13px;
  border-left: 1px solid #0066b3;
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-number table.number-add-2 tbody tr td {
    font-size: 11px;
  }
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-number table.number-add {
    margin-bottom: 30px;
  }
}
section.item-shieldnozzle-number table.number-add {
  width: 100%;
}
section.item-shieldnozzle-number table.number-add thead tr {
  background-color: #fff;
}
section.item-shieldnozzle-number table.number-add thead tr th {
  text-align: center;
  vertical-align: middle;
  line-height: 1;
  padding: 8px;
  font-size: 13px;
  font-weight: bold;
  color: #fff;
  background-color: rgba(0, 102, 179, 0.69);
  border-left: 1px solid #0066b3;
}
section.item-shieldnozzle-number table.number-add thead tr th:first-child {
  border-left: 1px solid #0066b3;
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-number table.number-add thead tr th {
    font-size: 11px;
  }
}
section.item-shieldnozzle-number table.number-add tbody tr {
  background-color: #fff;
}
section.item-shieldnozzle-number table.number-add tbody tr td {
  border: 1px solid #0066b3;
  color: #0A0908;
  text-align: center;
  vertical-align: middle;
  line-height: 1;
  padding: 8px;
  font-size: 13px;
  border-left: 1px solid #0066b3;
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-number table.number-add tbody tr td {
    font-size: 11px;
  }
}
section.item-shieldnozzle-number table.number-add .blank-cell {
  background-color: transparent !important;
  border: none !important;
  background-clip: padding-box;
}
section.item-shieldnozzle-number table.number-add thead .blank-cell {
  color: #0A0908;
}
section.item-shieldnozzle-number table.number-add tbody tr.arrow td {
  border: none !important;
  font-size: 1.5rem;
  font-weight: bold;
  background-clip: padding-box;
}
section.item-shieldnozzle-number table.number-add tbody tr.chui {
  display: none;
  position: absolute;
  bottom: 0px;
  right: 0;
  width: 60%;
}
section.item-shieldnozzle-number table.number-add tbody tr.chui td {
  padding: 0;
  border: none !important;
  text-align: left;
  vertical-align: bottom;
}
section.item-shieldnozzle-number table.number-add tbody tr.chui td p {
  line-height: 1.2;
  margin: 1rem 0 0;
}
section.item-shieldnozzle-number div.chui {
  margin-top: 30px;
}
section.item-shieldnozzle-number div.chui p {
  font-size: 13px;
  line-height: 1.2;
  margin: 0 0 1rem;
}
@media screen and (max-width: 809px) {
  section.item-shieldnozzle-number div.chui {
    margin-top: 0;
    margin-bottom: 30px;
  }
}
section.item-rod-how {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.item-rod-how {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.item-rod-how p.good,
section.item-rod-how p.bad {
  font-size: 16px;
  font-weight: bold;
}
section.item-rod-how .good {
  color: #EA9010;
}
section.item-rod-how .bad {
  color: #00589b;
}
section.item-rod-how div.tangstenrod-how-exp {
  border: 1px solid #D7F4F1;
  background-color: #F7F8FF;
  border-radius: 4px;
  padding: 15px;
}
section.item-rod-how div.tangstenrod-how-exp p {
  font-size: 14px;
  margin-bottom: 30px;
}
section.item-rod-how div.tangstenrod-how-exp p:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-rod-how div.tangstenrod-how-exp p {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-rod-how div.tangstenrod-how-exp p {
    font-size: 13px;
  }
}
section.item-rod-how div.tangstenrod-how-exp p.notice {
  font-size: 11px;
  padding-left: 0.5em;
  text-indent: -0.5em;
}
section.item-rod-how div.tangstenrod-how-exp p.notice:before {
  content: "\203b";
}
section.item-rod-how div.tangstenrod-how-exp p.notice {
  margin-bottom: 30px;
}
section.item-rod-how div.tangstenrod-how-exp p.notice:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-rod-how div.tangstenrod-how-exp p.notice {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-rod-how div.tangstenrod-how-exp p.notice {
    font-size: 10px;
  }
}
section.item-rod-how div.tangstenrod-how-exp p.notice {
  margin-bottom: 0 !important;
}
section.item-extend-table .item-extend-notice {
  margin-bottom: 60px;
}
section.item-extend-table .item-extend-notice ul li {
  font-size: 11px;
  padding-left: 0.5em;
  text-indent: -0.5em;
}
section.item-extend-table .item-extend-notice ul li:before {
  content: "\203b";
}
section.item-extend-table .item-extend-notice ul li {
  margin-bottom: 30px;
}
section.item-extend-table .item-extend-notice ul li:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-extend-table .item-extend-notice ul li {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-extend-table .item-extend-notice ul li {
    font-size: 10px;
  }
}
section.item-extend-table .item-extend-notice ul li {
  margin-bottom: 5px;
}
section.item-extend-table .extend-table-wrap {
  width: 100%;
}
section.item-extend-table .extend-table-wrap .extend-table {
  margin-bottom: 60px;
  width: 100%;
  border-left: 1px solid #0066b3;
}
section.item-extend-table .extend-table-wrap .extend-table thead th {
  text-align: center;
  vertical-align: middle;
  border-right: 1px solid #0066b3;
  background-color: #0066b3;
  color: #fff;
  font-size: 11px;
  padding: 8px;
  line-height: 1;
  border-right: 1px solid #fff;
}
section.item-extend-table .extend-table-wrap .extend-table thead th:last-child {
  border-right: 1px solid #0066b3;
}
section.item-extend-table .extend-table-wrap .extend-table thead th.keijo {
  border-bottom: 1px solid #fff;
}
section.item-extend-table .extend-table-wrap .extend-table tbody {
  background-color: #fff;
}
section.item-extend-table .extend-table-wrap .extend-table tbody th,
section.item-extend-table .extend-table-wrap .extend-table tbody td {
  padding: 8px;
  font-size: 11px;
  border-bottom: 1px solid #0066b3;
  border-right: 1px solid #0066b3;
}
section.item-extend-table .extend-table-wrap .extend-table tbody th {
  color: #fff;
  font-size: 13px;
  font-weight: bold;
}
section.item-extend-table .extend-table-wrap .extend-table tbody th.alpha {
  background-color: #D7F4F1;
  color: #0A0908;
  text-align: center;
}
@media screen and (max-width: 809px) {
  section.item-extend-table .extend-table-wrap {
    overflow: scroll;
  }
  section.item-extend-table .item-extend-notice {
    margin-bottom: 30px;
  }
}
section.item-rod-table .tungsten-exp-wrap {
  position: sticky;
  top: 100px;
}
section.item-rod-table .tungsten-exp-wrap .tungsten-exp {
  margin-bottom: 30px;
}
section.item-rod-table .tungsten-exp-wrap .tungsten-exp h3 {
  font-size: 18px;
  margin-bottom: 30px;
}
section.item-rod-table .tungsten-exp-wrap .tungsten-exp h3:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-rod-table .tungsten-exp-wrap .tungsten-exp h3 {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-rod-table .tungsten-exp-wrap .tungsten-exp h3 {
    font-size: 16px;
    font-weight: 700;
  }
}
section.item-rod-table .tungsten-exp-wrap .tungsten-exp h3 {
  color: #00589b;
}
section.item-rod-table .tungsten-exp-wrap .tungsten-exp p {
  font-size: 14px;
  margin-bottom: 30px;
}
section.item-rod-table .tungsten-exp-wrap .tungsten-exp p:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.item-rod-table .tungsten-exp-wrap .tungsten-exp p {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.item-rod-table .tungsten-exp-wrap .tungsten-exp p {
    font-size: 13px;
  }
}
section.item-rod-table {
  background-color: #F7F8FF;
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.item-rod-table {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.item-rod-table .rod-table-wrap table.rod-table {
  border-left: 1px solid #0066b3;
}
section.item-rod-table .rod-table-wrap table.rod-table thead th {
  border-right: 1px solid #0066b3;
  background-color: #0066b3;
  color: #fff;
  font-size: 11px;
  padding: 5px 10px;
  line-height: 1;
}
section.item-rod-table .rod-table-wrap table.rod-table thead th span {
  display: block;
}
section.item-rod-table .rod-table-wrap table.rod-table thead .rod-type {
  width: 20%;
}
section.item-rod-table .rod-table-wrap table.rod-table thead .rod-current {
  width: 10em;
}
section.item-rod-table .rod-table-wrap table.rod-table thead .rod-ratio {
  width: 14em;
}
section.item-rod-table .rod-table-wrap table.rod-table thead .rod-base {
  width: 11em;
}
section.item-rod-table .rod-table-wrap table.rod-table tbody {
  background-color: #fff;
}
section.item-rod-table .rod-table-wrap table.rod-table tbody th,
section.item-rod-table .rod-table-wrap table.rod-table tbody td {
  padding: 8px;
  font-size: 11px;
  border-bottom: 1px solid #0066b3;
  border-right: 1px solid #0066b3;
}
section.item-rod-table .rod-table-wrap table.rod-table tbody th {
  color: #fff;
  font-size: 13px;
  font-weight: bold;
}
section.item-rod-table .rod-table-wrap table.rod-table tbody .rod-1 {
  background-color: #9A9B9A;
}
section.item-rod-table .rod-table-wrap table.rod-table tbody .rod-2 {
  background-color: #465E99;
}
section.item-rod-table .rod-table-wrap table.rod-table tbody .rod-3 {
  background-color: #21B8DF;
}
section.item-rod-table .rod-table-wrap table.rod-table tbody .rod-4 {
  background-color: #00AB9D;
}
@media screen and (max-width: 809px) {
  section.item-rod-table .tungsten-exp-wrap {
    margin-bottom: 15px;
  }
  section.item-rod-table .rod-table-wrap {
    overflow: scroll;
  }
  section.item-rod-table .rod-table-wrap table.rod-table thead tr th {
    white-space: nowrap;
  }
}
section.top-products {
  background: #fff;
}
section.top-products .top-lead-body {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.top-products .top-lead-body {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.top-products .top-lead-body .top-lead-inner {
  position: sticky;
  top: 120px;
  max-width: 580px;
  margin-right: auto;
  margin-left: auto;
  z-index: 30;
}
section.top-products .top-lead-body .top-lead-inner p {
  margin-left: 100px;
  white-space: nowrap;
  font-size: 16px;
}
section.top-products .top-lead-body .top-lead-inner nav.top-lead-nav {
  padding-top: 60px;
}
section.top-products .top-lead-body .top-lead-inner nav.top-lead-nav h2 {
  margin-left: 100px;
  font-size: 16px;
}
section.top-products .top-lead-body .top-lead-inner ul.top-lead-list {
  margin-left: 100px;
}
section.top-products .top-lead-body .top-lead-inner ul.top-lead-list li {
  display: inline-block;
  margin-right: 15px;
}
section.top-products .top-lead-body .top-lead-inner ul.top-lead-list li a:hover {
  padding-left: 1.1em;
  transition: all 0.2s;
  position: relative;
}
section.top-products .top-lead-body .top-lead-inner ul.top-lead-list li a:hover:before {
  position: absolute;
  left: 0;
  content: "\f105";
  padding-right: 0.1em;
  font-family: "Font Awesome 5 Pro";
  font-weight: 100;
}
section.top-products .top-lead-products .top-lead-pro-inner {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.top-products .top-lead-products .top-lead-pro-inner {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.top-products .top-lead-products .top-lead-pro-inner {
  padding-top: 0;
}
section.top-products .top-lead-products .top-lead-pro-inner .pro-wrap {
  margin-right: -15px;
  overflow: hidden;
}
section.top-products .top-lead-products .top-lead-pro-inner .pro-wrap a {
  padding: 60px 0;
  display: flex;
  width: 100%;
  height: auto;
  align-items: flex-start;
  flex-wrap: wrap;
}
section.top-products .top-lead-products .top-lead-pro-inner .pro-wrap a img {
  width: 100%;
  margin-left: auto;
  margin-right: -90px;
  transition: all 0.5s;
}
section.top-products .top-lead-products .top-lead-pro-inner .pro-wrap a span {
  padding-right: 15px;
  width: 100%;
  text-align: right;
  color: #0A0908;
  font-size: 13px;
}
section.top-products .top-lead-products .top-lead-pro-inner .pro-wrap a:hover img {
  margin-right: 0;
  transition: all 0.5s;
}
@media screen and (max-width: 809px) {
  section.top-products .top-lead-body {
    padding-bottom: 15px !important;
    border-bottom: 1px solid rgba(51, 51, 51, 0.3);
  }
  section.top-products .top-lead-body .top-lead-inner {
    max-width: 100%;
    position: static;
  }
  section.top-products .top-lead-body .top-lead-inner p {
    margin-left: auto;
    white-space: normal;
    font-size: 13px;
  }
  section.top-products .top-lead-body .top-lead-inner p:last-child {
    margin-bottom: 0;
  }
  section.top-products .top-lead-body .top-lead-inner p br {
    display: none;
  }
  section.top-products .top-lead-body .top-lead-inner nav.top-lead-nav {
    display: none;
    padding-top: 30px;
  }
  section.top-products .top-lead-body .top-lead-inner nav.top-lead-nav h2 {
    font-size: 13px;
  }
  section.top-products .top-lead-body .top-lead-inner ul.top-lead-list {
    margin-left: auto;
  }
  section.top-products .top-lead-body .top-lead-inner ul.top-lead-list li {
    display: block;
    margin-right: 0;
  }
  section.top-products .top-lead-products {
    overflow: hidden;
  }
  section.top-products .top-lead-products .top-lead-pro-inner {
    padding-top: 15px;
    padding-bottom: 0;
  }
  section.top-products .top-lead-products .top-lead-pro-inner .pro-wrap a {
    padding: 0 0 15px;
    height: auto;
    width: auto;
  }
  section.top-products .top-lead-products .top-lead-pro-inner .pro-wrap a img {
    order: 2;
    height: 135px;
    width: 360px;
  }
  section.top-products .top-lead-products .top-lead-pro-inner .pro-wrap a span {
    order: 1;
    text-align: left;
    font-size: 16px;
    font-weight: bold;
  }
}
section.company-box {
  background:
    linear-gradient(
      180deg,
      rgba(247, 248, 255, 0.7) 0%,
      rgb(255, 255, 255) 65%);
}
section.company-box .company-body {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.company-box .company-body {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.company-box .company-body .company-body-inner {
  min-height: 240px;
  position: sticky;
  top: 90px;
  max-width: 420px;
  margin-right: auto;
  margin-left: auto;
}
section.company-box .company-body table.company {
  width: 100%;
  border-top: 1px solid rgba(51, 51, 51, 0.3);
}
section.company-box .company-body table.company th,
section.company-box .company-body table.company td {
  font-size: 13px;
  padding: 10px;
  border-bottom: 1px solid rgba(51, 51, 51, 0.3);
}
section.company-box .company-body table.company th {
  padding-left: 0;
  width: 100px;
  vertical-align: top;
}
section.company-box .company-body table.company td {
  padding-right: 0;
  vertical-align: top;
  border-left: 1px solid rgba(51, 51, 51, 0.3);
}
section.company-box .company-image {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.company-box .company-image {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.company-box .company-image #mapBox {
  position: sticky;
  top: 100px;
  margin-right: -15px;
}
section.company-box .company-image #mapBox iframe {
  height: 60vh;
  width: 100%;
}
@media screen and (max-width: 809px) {
  section.company-box .company-body {
    padding-top: 0;
    padding-bottom: 10px;
  }
  section.company-box .company-body .company-body-inner table.company {
    border: none;
    display: block;
  }
  section.company-box .company-body .company-body-inner table.company tr {
    display: list-item;
    list-style-type: none;
  }
  section.company-box .company-body .company-body-inner table.company tr th {
    display: inline-block;
    border: none;
    font-weight: bold;
    font-size: 13px;
    padding-bottom: 0px;
    color: #0066b3;
  }
  section.company-box .company-body .company-body-inner table.company tr td {
    width: 100%;
    border: none;
    padding: 0 0 0 15px;
    margin-bottom: 5px;
    display: inline-block;
  }
  section.company-box .company-image {
    padding-top: 0;
    padding-bottom: 10px;
  }
  section.company-box .company-image #mapBox {
    position: static;
    margin-right: 0;
  }
  section.company-box .company-image #mapBox iframe {
    height: 100vw;
  }
}
form.wpcf7-form.sent .form-inner .form-inputs {
  opacity: 0.5;
}
form.wpcf7-form.sent .form-inner .action-button {
  display: none;
}
form.wpcf7-form.sent .wpcf7-response-output {
  margin: 2em 0 1em;
  border-color: #0066b3 !important;
  background-color: #D7F4F1;
  padding: 15px;
}
form.wpcf7-form label {
  margin-bottom: 15px;
  display: flex;
  flex-wrap: wrap;
}
form.wpcf7-form label .wpcf7-form-control-wrap {
  width: 100%;
}
form.wpcf7-form label span.must {
  margin-left: 0.5em;
  border-radius: 4px;
  color: #fff;
  background-color: #D81159;
  padding: 4px 8px;
  font-size: 11px;
  font-weight: bold;
}
form.wpcf7-form label {
  width: 100%;
}
form.wpcf7-form label input,
form.wpcf7-form label textarea {
  width: 100%;
  margin: 5px 0;
  border: none;
  padding: 10px;
  border: 1px solid rgba(0, 102, 179, 0.69);
  transition: background-color 1s;
  color: #0A0908;
  border-radius: 4px;
}
form.wpcf7-form label input:focus,
form.wpcf7-form label textarea:focus {
  outline: none;
  border: 1px solid rgba(0, 102, 179, 0.69);
  background-color: #F1F1E6;
  transition: background-color 1s;
}
form.wpcf7-form label input::placeholder,
form.wpcf7-form label textarea::placeholder {
  color: rgba(51, 51, 51, 0.7);
}
form.wpcf7-form input[type=submit] {
  border: none;
  background-color: #FFF;
  text-align: center;
  font-size: 18px;
  margin-bottom: 30px;
}
form.wpcf7-form input[type=submit]:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  form.wpcf7-form input[type=submit] {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  form.wpcf7-form input[type=submit] {
    font-size: 16px;
    font-weight: 700;
  }
}
form.wpcf7-form input[type=submit] {
  background-color: #0066b3;
  color: #fff;
  padding: 15px 30px;
  border-radius: 4px;
  border: none;
  -webkit-transition: background-color 0.3s linear;
}
form.wpcf7-form input[type=submit]:hover {
  background-color: rgba(0, 102, 179, 0.69);
  -webkit-transition: background-color 0.3s linear;
}
form.wpcf7-form input[type=submit] {
  width: 100%;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
  border: 1px solid #D81159 !important;
  padding: 15px !important;
  margin: 0 auto;
}
.wpcf7-not-valid-tip {
  color: #D81159 !important;
}
section.product-main {
  background-color: rgba(247, 248, 255, 0.3);
}
section.product-main .product-info {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.product-main .product-info {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.product-main .product-info .product-info-inner.torch-page {
  min-height: 240px;
  position: sticky;
  top: 90px;
  max-width: 480px;
}
section.product-main .product-info .product-info-inner {
  margin-right: auto;
  margin-left: auto;
}
section.product-main .product-info .product-info-inner h1.product-name {
  font-size: 24px;
  margin-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.product-main .product-info .product-info-inner h1.product-name {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 809px) {
  section.product-main .product-info .product-info-inner h1.product-name {
    font-size: 21px;
    font-weight: 700;
  }
}
section.product-main .product-info .product-info-inner h1.product-name {
  margin-bottom: 60px !important;
}
section.product-main .product-info .product-info-inner h1.product-name span.title-torch-type {
  display: block;
  color: rgba(51, 51, 51, 0.7);
  font-size: 75%;
  line-height: 2;
}
section.product-main .product-info .product-info-inner h1.product-name span.title-torch-data {
  font-size: 80%;
  margin-left: 0.5em;
}
section.product-main .product-info .product-info-inner .product-mainimage img {
  width: 100%;
  vertical-align: bottom;
}
section.product-main .product-info .product-info-inner .product-exp {
  margin-bottom: 30px;
}
section.product-main .product-info .product-info-inner .product-exp:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.product-main .product-info .product-info-inner .product-exp {
    margin-bottom: 15px;
  }
}
section.product-main .product-info .product-info-inner .product-exp h2.product-title {
  margin-bottom: 30px;
}
@media screen and (max-width: 809px) {
  section.product-main .product-info .product-info-inner .product-exp h2.product-title {
    margin-bottom: 15px;
  }
}
section.product-main .product-info .product-info-inner .product-exp h2.product-title {
  font-size: 21px;
}
@media screen and (max-width: 809px) {
  section.product-main .product-info .product-info-inner .product-exp h2.product-title {
    font-size: 21px;
    font-weight: 700;
  }
}
section.product-main .product-info .product-info-inner .product-exp h2.product-title {
  font-size: 18px !important;
}
section.product-main .product-info .product-info-inner .product-exp p {
  font-size: 14px;
  margin-bottom: 30px;
}
section.product-main .product-info .product-info-inner .product-exp p:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.product-main .product-info .product-info-inner .product-exp p {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.product-main .product-info .product-info-inner .product-exp p {
    font-size: 13px;
  }
}
section.product-main .product-info .product-info-inner .product-exp p {
  font-size: 14px !important;
}
section.product-main .product-info .product-info-inner .product-exp p.notice {
  font-size: 11px;
  padding-left: 0.5em;
  text-indent: -0.5em;
}
section.product-main .product-info .product-info-inner .product-exp p.notice:before {
  content: "\203b";
}
section.product-main .product-info .product-info-inner .product-exp p.notice {
  margin-bottom: 30px;
}
section.product-main .product-info .product-info-inner .product-exp p.notice:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.product-main .product-info .product-info-inner .product-exp p.notice {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.product-main .product-info .product-info-inner .product-exp p.notice {
    font-size: 10px;
  }
}
section.product-main .product-info .product-info-inner .product-exp figure {
  padding-top: 15px;
}
section.product-main .product-info .product-info-inner .product-exp figure img {
  margin-bottom: 15px;
  max-width: 100%;
}
section.product-main .product-info .product-info-inner .product-exp figure figcaption {
  font-size: 11px;
}
section.product-main .product-info .product-info-inner .product-exp .powercable-spec dl dt {
  margin-bottom: 15px;
}
section.product-main .product-info .product-info-inner .product-exp .powercable-spec dl dd.cable-image {
  font-size: 13px;
  margin-bottom: 15px;
}
section.product-main .product-info .product-info-inner .product-exp .powercable-spec dl dd.cable-exp {
  font-size: 13px;
  margin-bottom: 0;
}
section.product-main .product-image {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.product-main .product-image {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.product-main .product-image {
  background-color: #F7F8FF;
}
section.product-main .product-image .product-image-inner {
  max-width: 540px;
  margin-left: auto;
  margin-right: auto;
}
section.product-main .product-image .product-image-inner .match_torchs_wrap h2 {
  display: none;
}
section.product-main .product-image .product-image-inner .match_torchs_wrap .match_torch {
  border-radius: 8px;
  background-color: #FFF;
  box-shadow: 5px 5px 10px #e8e9f0, -5px -5px 10px #ffffff;
  margin-bottom: 30px;
  position: relative;
}
section.product-main .product-image .product-image-inner .match_torchs_wrap .match_torch .match_torch_img {
  padding: 30px;
  align-items: center;
}
section.product-main .product-image .product-image-inner .match_torchs_wrap .match_torch .match_torch_img img {
  max-width: 100%;
  height: auto;
}
section.product-main .product-image .product-image-inner .match_torchs_wrap .match_torch dl.match_torch_data {
  margin-bottom: 0;
  padding: 30px;
}
section.product-main .product-image .product-image-inner .match_torchs_wrap .match_torch dl.match_torch_data dt {
  font-size: 18px;
  margin-bottom: 10px;
}
section.product-main .product-image .product-image-inner .match_torchs_wrap .match_torch dl.match_torch_data dd {
  margin-bottom: 0;
  font-size: 13px;
}
section.product-main .product-image .product-image-inner .match_torchs_wrap .match_torch dl.match_torch_data dd span {
  background-color: #0A0908;
  font-size: 11px;
  color: #fff;
  padding: 2px 6px;
  margin-right: 10px;
}
section.product-main .product-parts-table {
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.product-main .product-parts-table {
    padding-bottom: 30px;
  }
}
section.product-main .product-parts-table .product-parts-table-inner {
  width: 100%;
  margin-left: 0;
  margin-right: auto;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts {
  margin-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.product-main .product-parts-table .product-parts-table-inner table.parts {
    margin-bottom: 30px;
  }
}
section.product-main .product-parts-table .product-parts-table-inner table.parts {
  width: 100%;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts thead tr {
  background-color: #fff;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts thead tr th {
  text-align: center;
  vertical-align: middle;
  line-height: 1;
  padding: 8px;
  font-size: 13px;
  font-weight: bold;
  color: #fff;
  background-color: rgba(0, 102, 179, 0.69);
  border-left: 1px solid #0066b3;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts thead tr th:first-child {
  border-left: 1px solid #0066b3;
}
@media screen and (max-width: 809px) {
  section.product-main .product-parts-table .product-parts-table-inner table.parts thead tr th {
    font-size: 11px;
  }
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody tr {
  background-color: #fff;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody tr td {
  border: 1px solid #0066b3;
  color: #0A0908;
  text-align: center;
  vertical-align: middle;
  line-height: 1;
  padding: 8px;
  font-size: 13px;
  border-left: 1px solid #0066b3;
}
@media screen and (max-width: 809px) {
  section.product-main .product-parts-table .product-parts-table-inner table.parts tbody tr td {
    font-size: 11px;
  }
}
section.product-main .product-parts-table .product-parts-table-inner table.parts:last-child {
  margin-bottom: 0 !important;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts thead th {
  top: 90px;
  z-index: 1;
  text-align: center;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts thead th.zumenzu {
  width: 32%;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts thead th.sunpo-number {
  width: 32%;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts thead th.sunpo {
  width: 32%;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts thead th:last-child {
  border-right: 1px solid #0066b3;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody th,
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td {
  z-index: -1;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-image {
  width: 140px;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-image img {
  width: 100%;
  max-width: 180px;
  height: auto;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-zumenzu img {
  width: 100%;
  height: auto;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-subtitle {
  background-color: rgba(200, 200, 200, 0.3);
  height: 30px;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-adaptor-image figure {
  display: flex;
  flex-direction: column;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-adaptor-image figure + figure {
  margin-top: 30px;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-adaptor-image figure img {
  order: 2;
  margin: 0 auto;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-adaptor-image figure figcaption {
  order: 1;
  font-size: 11px;
  text-align: right;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-cable-image {
  vertical-align: middle;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-cable-image figure + figure {
  margin-top: 30px;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-cable-image figure {
  margin: 10px 0;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-cable-image figure figcaption {
  margin-top: 10px;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-number {
  line-height: 1.8;
  min-width: 4em;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-number.nozzle {
  text-align: left;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-number.nozzle span {
  color: #0066b3;
  display: block;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-number.nozzle span + br {
  margin-bottom: 1em;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-tekiyo {
  text-align: left;
  line-height: 1.3;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-tekiyo.for-cable {
  width: 210px;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-tekiyo span.parts-table-head,
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-tekiyo span.parts-table-torch {
  color: #0066b3;
  display: block;
  margin-bottom: 0.5em;
}
section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-tekiyo br + span {
  margin-top: 1em;
}
section.product-main.product-parts-head {
  background-color: #fff;
}
section.product-main.product-parts {
  background:
    linear-gradient(
      180deg,
      rgba(247, 248, 255, 0.7) 0%,
      rgb(255, 255, 255) 65%);
  padding-top: 90px;
}
@media screen and (max-width: 809px) {
  section.product-main .product-info {
    padding-top: 0 !important;
  }
  section.product-main .product-info .product-info-inner {
    max-width: none;
  }
  section.product-main .product-info .product-info-inner ul.bc {
    padding-bottom: 15px;
  }
  section.product-main .product-info .product-info-inner .product-exp figure.this-product {
    border-top: 1px solid rgba(51, 51, 51, 0.3);
    border-bottom: 1px solid rgba(51, 51, 51, 0.3);
    margin-left: -15px;
    margin-right: -15px;
    padding: 0;
  }
  section.product-main .product-info .product-info-inner .product-exp figure.this-product img {
    width: 100%;
    height: auto;
    margin-bottom: 0;
  }
  section.product-main .product-info .product-info-inner .product-exp h2.product-title {
    font-size: 18px;
    margin-bottom: 30px;
  }
  section.product-main .product-info .product-info-inner .product-exp h2.product-title:last-child {
    margin-bottom: 0;
  }
  section.product-main .product-info .product-info-inner .product-exp h2.product-title {
    color: #00589b;
  }
}
@media screen and (max-width: 809px) and (max-width: 809px) {
  section.product-main .product-info .product-info-inner .product-exp h2.product-title {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) and (max-width: 809px) {
  section.product-main .product-info .product-info-inner .product-exp h2.product-title {
    font-size: 16px;
    font-weight: 700;
  }
}
@media screen and (max-width: 809px) {
  section.product-main .product-info .product-info-inner .product-exp p {
    font-size: 11px !important;
  }
  section.product-main .product-info .product-info-inner .product-exp div.editor-area {
    overflow: hidden;
  }
  section.product-main .product-info .product-info-inner .product-exp div.editor-area img {
    max-width: 100%;
    height: auto;
  }
  section.product-main .product-info .product-info-inner h1.product-name {
    margin-bottom: 15px !important;
  }
  section.product-main .product-info .product-info-inner h1.product-name span.title-torch-data {
    display: block;
    padding-left: 0;
    margin-left: 0;
  }
  section.product-main.product-parts {
    padding-top: 15px;
  }
  section.product-main .product-image .product-image-inner {
    max-width: none;
  }
  section.product-main .product-image .product-image-inner .match_torchs_wrap .match_torch:last-child {
    margin-bottom: 0;
  }
  section.product-main .product-image .product-image-inner .match_torchs_wrap .match_torch dl.match_torch_data {
    padding: 15px;
  }
  section.product-main .product-image .product-image-inner .match_torchs_wrap .match_torch .match_torch_img {
    padding: 15px;
    display: flex;
  }
  section.product-main .product-parts-table .product-parts-table-inner h3.h3-table-title {
    position: sticky;
    left: 0;
  }
  section.product-main .product-parts-table .product-parts-table-inner {
    overflow: auto;
    height: 80vh;
  }
  section.product-main .product-parts-table .product-parts-table-inner table.parts {
    width: 180vw;
  }
  section.product-main .product-parts-table .product-parts-table-inner table.parts thead tr th {
    position: sticky;
    top: -1px;
    z-index: 3;
    background-color: #6A95C7;
  }
  section.product-main .product-parts-table .product-parts-table-inner table.parts thead tr th.match {
    width: 160px;
  }
  section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-subtitle {
    text-align: left;
  }
  section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-zumenzu {
    padding: 1px;
  }
  section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-zumenzu img {
    height: auto;
    display: block;
  }
  section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.table-parts-image img {
    max-width: 180px;
    height: auto;
    display: block;
  }
  section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.left-col {
    background-color: #fff;
  }
}
@media screen and (max-width: 340px) {
  section.product-main .product-parts-table .product-parts-table-inner table.parts thead tr th.left-col {
    left: auto;
  }
  section.product-main .product-parts-table .product-parts-table-inner table.parts tbody td.left-col {
    position: static;
  }
}
section.product-set .container-fluid {
  max-width: 1400px;
}
section.product-set {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.product-set {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.product-set .product-set-table table.torchSetTable th p,
section.product-set .product-set-table table.torchSetTable td p {
  margin-bottom: 0;
}
section.product-set .product-set-table table.torchSetTable {
  width: 100%;
}
section.product-set .product-set-table table.torchSetTable thead tr {
  background-color: #fff;
}
section.product-set .product-set-table table.torchSetTable thead tr th {
  text-align: center;
  vertical-align: middle;
  line-height: 1;
  padding: 8px;
  font-size: 13px;
  font-weight: bold;
  color: #fff;
  background-color: rgba(0, 102, 179, 0.69);
  border-left: 1px solid #0066b3;
}
section.product-set .product-set-table table.torchSetTable thead tr th:first-child {
  border-left: 1px solid #0066b3;
}
@media screen and (max-width: 809px) {
  section.product-set .product-set-table table.torchSetTable thead tr th {
    font-size: 11px;
  }
}
section.product-set .product-set-table table.torchSetTable tbody tr {
  background-color: #fff;
}
section.product-set .product-set-table table.torchSetTable tbody tr td {
  border: 1px solid #0066b3;
  color: #0A0908;
  text-align: center;
  vertical-align: middle;
  line-height: 1;
  padding: 8px;
  font-size: 13px;
  border-left: 1px solid #0066b3;
}
@media screen and (max-width: 809px) {
  section.product-set .product-set-table table.torchSetTable tbody tr td {
    font-size: 11px;
  }
}
section.product-set .product-set-table table.torchSetTable tr.tr-kataban th {
  background-color: transparent;
}
section.product-set .product-set-table table.torchSetTable tr.tr-kataban th:first-child {
  border-left: none;
}
section.product-set .product-set-table table.torchSetTable tr.tr-kataban th.kataban {
  background-color: #0066b3;
  border: 1px solid #0066b3;
  border-bottom: none;
}
section.product-set .product-set-table table.torchSetTable tr.tr-title th.tr-cable {
  border-bottom: 1px solid #0066b3;
  border-right: 1px solid #0066b3;
}
section.product-set .product-set-table table.torchSetTable tr.tr-title th:last-child {
  border-right: 1px solid #0066b3;
}
section.product-set .product-set-image {
  padding-top: 30px;
  text-align: right;
}
section.product-set .product-set-image figure {
  position: sticky;
  top: 60px;
}
section.product-set .product-set-image figure img {
  margin-bottom: 15px;
  max-width: 100%;
  margin-left: auto;
}
section.product-set .product-set-image figure figcaption {
  font-size: 11px;
}
section.product-set .product-set-list {
  position: relative;
  align-self: center;
  padding-top: 60px;
}
section.product-set .product-set-list:after {
  position: absolute;
  top: 20px;
  left: calc(50% - 1.5em);
  width: 30px;
  height: 30px;
  font-size: 14px;
  border-radius: 30px;
  color: #fff;
  background-color: #EA9010;
  content: "+";
  line-height: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
section.product-set .product-set-list .product-set-list-inner {
  padding: 15px;
  border: 1px solid rgba(51, 51, 51, 0.3);
}
section.product-set .product-set-list .product-set-list-inner .torchset_parts_list {
  padding-left: 30px;
  padding-right: 30px;
  margin-bottom: 0;
}
section.product-set .product-set-list .product-set-list-inner .torchset_parts_list li {
  list-style-type: decimal;
  padding-left: 0em;
  margin-left: 1.5em;
  font-size: 13px;
  float: left;
  margin-right: 1.5em;
}
section.product-set .product-set-list .product-set-list-inner .torchset_parts_list li.kome {
  float: none;
  clear: both;
  list-style-type: none;
  margin-left: 0;
  padding-top: 1em;
  font-size: 11px;
}
@media screen and (max-width: 809px) {
  section.product-set .product-set-table {
    height: 50vh;
    overflow: scroll;
  }
  section.product-set .product-set-table thead {
    position: sticky;
    top: 0;
    left: 0;
  }
}
section.product-size {
  background-color: #F7F8FF;
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.product-size {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.product-size div.container {
  max-width: 880px;
}
section.product-size div.container div.product-size-inner {
  border-radius: 8px;
  background: #c0dddf;
  box-shadow: 5px 5px 10px #a3bcbe, -5px -5px 10px rgba(221, 254, 255, 0.5);
  background-color: #fff;
  padding: 60px 30px;
  text-align: center;
}
section.product-size div.container div.product-size-inner img {
  max-width: 100%;
}
section.product-size div.container div.product-size-inner + .btn-pdf-wrap {
  text-align: center;
  margin-top: 15px;
}
section.product-size figure.torch_size_image {
  margin: 0 auto;
  text-align: center;
}
section.product-size figure.torch_size_image img {
  max-width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 809px) {
  section.product-size div.container div.product-size-inner {
    padding: 15px;
  }
  section.product-size div.container div.product-size-inner .btn-pdf-wrap {
    margin-bottom: 15px;
  }
  section.product-size div.container div.product-size-inner + .btn-pdf-wrap {
    margin-top: 0;
  }
}
section.product-flex {
  display: none;
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.product-flex {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.product-flex .container #flexibleParts {
  display: flex;
  justify-content: space-between;
  justify-content: flex-start;
}
section.product-flex .container #flexibleParts .flexiblePartsInner {
  background-color: rgba(40, 143, 149, 0.3);
  position: relative;
  padding-top: 30px;
  align-self: center;
  height: 100%;
  display: flex;
  width: 180px;
  padding-bottom: 0px;
  margin-right: 60px;
}
section.product-flex .container #flexibleParts .flexiblePartsInner.head {
  width: 360px;
}
section.product-flex .container #flexibleParts .flexiblePartsInner:after {
  position: absolute;
  top: 50%;
  right: -40px;
  padding: 5px 8px;
  font-size: 14px;
  border-radius: 30px;
  color: rgba(247, 248, 255, 0.3);
  background-color: #0A0908;
  content: "+";
  line-height: 1;
  display: block;
}
section.product-flex .container #flexibleParts .flexiblePartsInner:last-child {
  margin-right: 0;
}
section.product-flex .container #flexibleParts .flexiblePartsInner:last-child:after {
  content: "";
  background-color: transparent;
}
section.product-flex .container #flexibleParts .flexiblePartsInner h3 {
  font-size: 18px;
  margin-bottom: 30px;
}
section.product-flex .container #flexibleParts .flexiblePartsInner h3:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.product-flex .container #flexibleParts .flexiblePartsInner h3 {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.product-flex .container #flexibleParts .flexiblePartsInner h3 {
    font-size: 16px;
    font-weight: 700;
  }
}
section.product-flex .container #flexibleParts .flexiblePartsInner h3 {
  position: absolute;
  top: 20px;
  text-align: center;
  font-weight: bold;
  width: 100%;
  font-size: 13px;
}
section.product-flex .container #flexibleParts .flexiblePartsInner ul.flextorch_list {
  align-self: center;
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  padding-top: 45px;
  justify-content: space-around;
}
section.product-flex .container #flexibleParts .flexiblePartsInner ul.flextorch_list li {
  display: block;
  margin-bottom: 30px;
}
section.product-flex .container #flexibleParts .flexiblePartsInner ul.flextorch_list li a {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: column;
  justify-content: center;
  font-size: 13px;
}
section.product-flex .container #flexibleParts .flexiblePartsInner ul.flextorch_list li a div img {
  max-width: 140px;
  height: auto;
  margin-bottom: 10px;
}
section.product-flex .container #flexibleParts .flexiblePartsInner ul.flextorch_list li a span {
  text-align: center;
}
section.product-cable-details {
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.product-cable-details {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.product-cable-details {
  background-color: rgba(40, 143, 149, 0.3);
  background-color: #D7F4F1;
}
section.product-cable-details .cable-details-wrapper dl {
  margin-right: 30px;
  margin-bottom: 30px;
}
section.product-cable-details .cable-details-wrapper dl dt {
  font-size: 18px;
  margin-bottom: 30px;
}
section.product-cable-details .cable-details-wrapper dl dt:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.product-cable-details .cable-details-wrapper dl dt {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.product-cable-details .cable-details-wrapper dl dt {
    font-size: 16px;
    font-weight: 700;
  }
}
section.product-cable-details .cable-details-wrapper dl dt {
  margin-bottom: 15px;
}
section.product-cable-details .cable-details-wrapper dl dd.cable-detail-img {
  max-width: 100%;
  margin-bottom: 15px;
}
section.product-cable-details .cable-details-wrapper dl dd.cable-detail-exp {
  line-height: 1.3;
  margin-bottom: 0;
  font-size: 13px;
}
@media screen and (max-width: 809px) {
  section.product-cable-details {
    padding-bottom: 0 !important;
  }
  section.product-cable-details .cable-details-wrapper dl {
    margin-right: 0;
  }
  section.product-cable-details .cable-details-wrapper dl dd.cable-detail-img figure.cable_image img {
    width: auto;
    max-width: 100%;
  }
}
section.product-tenkai {
  background-color: #fff;
  padding-top: 90px;
  padding-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.product-tenkai {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}
section.product-tenkai .parts-tenkai .tenkai-inner {
  margin-left: 15px;
  position: sticky;
  top: 60px;
}
section.product-tenkai .parts-tenkai .tenkai-inner.no-sticky {
  position: static;
  top: auto;
}
section.product-tenkai .parts-tenkai .tenkai-inner {
  display: flex;
  justify-content: center;
  align-content: center;
  padding: 0px 15px;
  flex-wrap: wrap;
}
section.product-tenkai .parts-tenkai .tenkai-inner figure {
  display: block;
  width: 100%;
  margin-bottom: 15px;
  padding: 30px;
  border-radius: 8px;
  background: rgba(247, 248, 255, 0.3);
  box-shadow: 5px 5px 10px #d7d7d9, -5px -5px 10px #fdfdff;
  background-color: #fff;
}
section.product-tenkai .parts-tenkai .tenkai-inner figure img {
  width: 100%;
  height: auto;
}
section.product-tenkai .parts-table .fixPartsTable table.partsTable {
  width: 100%;
}
section.product-tenkai .parts-table .fixPartsTable table.partsTable thead tr {
  background-color: #fff;
}
section.product-tenkai .parts-table .fixPartsTable table.partsTable thead tr th {
  text-align: center;
  vertical-align: middle;
  line-height: 1;
  padding: 8px;
  font-size: 13px;
  font-weight: bold;
  color: #fff;
  background-color: rgba(0, 102, 179, 0.69);
  border-left: 1px solid #0066b3;
}
section.product-tenkai .parts-table .fixPartsTable table.partsTable thead tr th:first-child {
  border-left: 1px solid #0066b3;
}
@media screen and (max-width: 809px) {
  section.product-tenkai .parts-table .fixPartsTable table.partsTable thead tr th {
    font-size: 11px;
  }
}
section.product-tenkai .parts-table .fixPartsTable table.partsTable tbody tr {
  background-color: #fff;
}
section.product-tenkai .parts-table .fixPartsTable table.partsTable tbody tr td {
  border: 1px solid #0066b3;
  color: #0A0908;
  text-align: center;
  vertical-align: middle;
  line-height: 1;
  padding: 8px;
  font-size: 13px;
  border-left: 1px solid #0066b3;
}
@media screen and (max-width: 809px) {
  section.product-tenkai .parts-table .fixPartsTable table.partsTable tbody tr td {
    font-size: 11px;
  }
}
section.product-tenkai .parts-table .fixPartsTable table.partsTable thead th {
  font-size: 11px !important;
  width: 32%;
}
section.product-tenkai .parts-table .fixPartsTable table.partsTable thead th:first-child {
  width: 4%;
  border-left: 1px solid rgba(0, 102, 179, 0.69) !important;
}
section.product-tenkai .parts-table .fixPartsTable table.partsTable thead th:last-child {
  width: 12%;
  border-right: 1px solid rgba(0, 102, 179, 0.69) !important;
}
section.product-tenkai .parts-table .fixPartsTable table.partsTable tbody tr:nth-child(2n) {
  background-color: rgba(247, 248, 255, 0.3);
}
section.product-tenkai .parts-table .fixPartsTable table.partsTable tbody th,
section.product-tenkai .parts-table .fixPartsTable table.partsTable tbody td {
  font-size: 11px !important;
}
section.product-tenkai .parts-table.force-scroll {
  overflow-y: scroll;
  position: relative;
}
section.product-tenkai .parts-table.force-scroll::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
section.product-tenkai .parts-table.force-scroll::-webkit-scrollbar-track {
  border-radius: 8px;
  background-color: #F7F8FF;
}
section.product-tenkai .parts-table.force-scroll::-webkit-scrollbar-thumb {
  border-radius: 8px;
  background-color: #0066b3;
}
section.product-tenkai .parts-table.force-scroll .fixPartsTable {
  position: relative;
}
section.product-tenkai .parts-table.force-scroll .fixPartsTable:before {
  content: "\8868\306f\30b9\30af\30ed\30fc\30eb\53ef\80fd\3067\3059";
  margin-bottom: 15px;
  font-size: 11px;
  display: block;
  text-align: right;
  color: rgba(51, 51, 51, 0.7);
}
section.product-tenkai .container-fluid {
  max-width: 1400px;
}
@media screen and (max-width: 809px) {
  section.product-tenkai .parts-table .fixPartsTable {
    height: 50vh;
    overflow: scroll;
  }
  section.product-tenkai .parts-table .fixPartsTable table.partsTable thead tr th {
    position: sticky;
    top: 0;
  }
  section.product-tenkai .parts-tenkai {
    margin: 0;
  }
  section.product-tenkai .parts-tenkai .tenkai-inner {
    margin-left: 0;
    padding: 0;
    margin-bottom: 30px;
    position: static;
  }
  section.product-tenkai .parts-tenkai .tenkai-inner figure {
    padding: 15px;
    margin-bottom: 0px;
  }
  section.product-tenkai .parts-tenkai .tenkai-inner figure img {
    width: 100%;
    height: auto;
  }
  section.product-tenkai .parts-tenkai .tenkai-inner .btn-pdf-wrap {
    margin-bottom: 30px;
  }
}
section.product-list .all-product-menu-wrap {
  background-color:
    linear-gradient(
      180deg,
      rgba(247, 248, 255, 0.7) 0%,
      rgb(255, 255, 255) 65%);
}
section.product-list .all-product-menu-wrap .all-product-menu-inner {
  position: sticky;
  top: 160px;
}
section.product-list .all-product-menu-wrap .all-product-menu-inner nav#all-product-menu {
  padding-left: 30px;
  padding-bottom: 90px;
}
section.product-list .all-product-menu-wrap .all-product-menu-inner nav#all-product-menu h2.product-menu-title {
  font-size: 18px;
  margin-bottom: 30px;
}
section.product-list .all-product-menu-wrap .all-product-menu-inner nav#all-product-menu h2.product-menu-title:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.product-list .all-product-menu-wrap .all-product-menu-inner nav#all-product-menu h2.product-menu-title {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.product-list .all-product-menu-wrap .all-product-menu-inner nav#all-product-menu h2.product-menu-title {
    font-size: 16px;
    font-weight: 700;
  }
}
section.product-list .all-product-menu-wrap .all-product-menu-inner nav#all-product-menu h2.product-menu-title {
  padding-bottom: 30px;
  border-bottom: 1px solid rgba(51, 51, 51, 0.1);
  border-width: 90%;
  width: 80%;
}
section.product-list .all-product-menu-wrap .all-product-menu-inner nav#all-product-menu ul.menu-self li {
  line-height: 2;
  font-size: 13px;
}
section.product-list .all-product-menu-wrap .all-product-menu-inner nav#all-product-menu ul.menu-self li a:hover {
  padding-left: 1.1em;
  transition: all 0.2s;
  position: relative;
}
section.product-list .all-product-menu-wrap .all-product-menu-inner nav#all-product-menu ul.menu-self li a:hover:before {
  position: absolute;
  left: 0;
  content: "\f105";
  padding-right: 0.1em;
  font-family: "Font Awesome 5 Pro";
  font-weight: 100;
}
section.product-list .all-product-menu-wrap .all-product-menu-inner nav#all-product-menu ul.menu-self li.separate {
  margin-top: 90px;
}
@media screen and (max-width: 809px) {
  section.product-list .all-product-menu-wrap {
    display: none;
  }
  section.product-list .all-product-menu-wrap .all-product-menu-inner {
    position: static;
  }
  section.product-list .all-product-menu-wrap .all-product-menu-inner nav#all-product-menu {
    padding-left: 0;
    padding-bottom: 0;
  }
}
section.product-list .products-here {
  padding-bottom: 90px;
}
section.product-list .products-here div.list-title {
  margin-right: -15px;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
section.product-list .products-here div.list-title .list-title-inner {
  padding: 60px;
  height: 360px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  flex-wrap: wrap;
  background-color: rgba(0, 89, 156, 0.8);
}
section.product-list .products-here div.list-title .list-title-inner h1 {
  width: 100%;
  font-size: 24px;
  margin-bottom: 90px;
}
@media screen and (max-width: 809px) {
  section.product-list .products-here div.list-title .list-title-inner h1 {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 809px) {
  section.product-list .products-here div.list-title .list-title-inner h1 {
    font-size: 21px;
    font-weight: 700;
  }
}
section.product-list .products-here div.list-title .list-title-inner h1 {
  color: #fff;
  margin-bottom: 60px !important;
}
section.product-list .products-here div.list-title .list-title-inner div.list_exp {
  color: rgba(255, 255, 255, 0.9);
  font-size: 14px;
  margin-bottom: 30px;
}
section.product-list .products-here div.list-title .list-title-inner div.list_exp:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 809px) {
  section.product-list .products-here div.list-title .list-title-inner div.list_exp {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 809px) {
  section.product-list .products-here div.list-title .list-title-inner div.list_exp {
    font-size: 13px;
  }
}
section.product-list .products-here div.products-article-wrap {
  display: flex;
  margin-right: -15px;
  flex-wrap: wrap;
}
section.product-list .products-here div.products-article-wrap article {
  width: 33.3333%;
  height: 22.5002250023vw;
  display: flex;
  align-items: center;
  justify-content: center;
  border-left: 1px solid #D7F4F1;
  border-bottom: 1px solid #D7F4F1;
  overflow: hidden;
}
section.product-list .products-here div.products-article-wrap article.accessories_top_list {
  width: 25%;
  height: 18.75vw;
}
section.product-list .products-here div.products-article-wrap article a {
  position: relative;
  width: 100%;
  height: 100%;
}
section.product-list .products-here div.products-article-wrap article.no-prod {
  background-color: #F7F8FF;
}
section.product-list .products-here div.products-article-wrap article.no-prod:after {
  content: "";
  width: 40px;
  height: 40px;
  display: block;
  background-image: url(img/logo_onlymark.svg);
  background-repeat: no-repeat;
  background-size: 100%;
  opacity: 0.3;
}
section.product-list .products-here div.products-article-wrap article div.infobox {
  z-index: 10;
  position: absolute;
  left: 0px;
  bottom: 0px;
  text-align: right;
  width: 100%;
  padding: 15px;
}
section.product-list .products-here div.products-article-wrap article div.infobox h2.product-list-title {
  margin-bottom: 30px;
}
@media screen and (max-width: 809px) {
  section.product-list .products-here div.products-article-wrap article div.infobox h2.product-list-title {
    margin-bottom: 15px;
  }
}
section.product-list .products-here div.products-article-wrap article div.infobox h2.product-list-title {
  font-size: 21px;
}
@media screen and (max-width: 809px) {
  section.product-list .products-here div.products-article-wrap article div.infobox h2.product-list-title {
    font-size: 21px;
    font-weight: 700;
  }
}
section.product-list .products-here div.products-article-wrap article div.infobox h2.product-list-title {
  font-size: 16px !important;
  margin-bottom: 0 !important;
  color: #0A0908;
}
section.product-list .products-here div.products-article-wrap article div.infobox h2.product-list-title span.amp {
  color: rgba(51, 51, 51, 0.7);
  font-size: 11px;
  padding-top: 5px;
  display: block;
  font-weight: normal;
}
section.product-list .products-here div.products-article-wrap article div.infobox {
  transition: all 0.5s;
  opacity: 1;
}
section.product-list .products-here div.products-article-wrap article .img_expand_wrap {
  z-index: 1;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
section.product-list .products-here div.products-article-wrap article .img_expand_wrap img {
  width: 100%;
  height: auto;
}
section.product-list .products-here div.products-article-wrap article:hover div.infobox {
  left: 0;
  padding-bottom: 15px;
  transition: all 0.5s;
}
section.product-list .products-here div.products-article-wrap.all-torchs article:first-child,
section.product-list .products-here div.products-article-wrap.all-torchs article:nth-child(2),
section.product-list .products-here div.products-article-wrap.all-torchs article:nth-child(3) {
  border-top: 1px solid #D7F4F1;
}
section.product-list .products-here div.products-article-wrap.all-parts article:first-child,
section.product-list .products-here div.products-article-wrap.all-parts article:nth-child(2),
section.product-list .products-here div.products-article-wrap.all-parts article:nth-child(3),
section.product-list .products-here div.products-article-wrap.all-parts article:nth-child(4) {
  border-top: 1px solid #D7F4F1;
}
section.product-list .products-here div.products-article-wrap.all-parts article div.infobox {
  padding-right: 15px;
}
section.product-list .products-here div.products-article-wrap.all-parts article div.infobox h2.product-list-title {
  font-size: 14px !important;
}
@media screen and (max-width: 809px) {
  section.product-list .products-here {
    padding-bottom: 0px;
  }
  section.product-list .products-here div.list-title {
    margin-left: -15px;
    margin-right: -15px;
  }
  section.product-list .products-here div.list-title .list-title-inner {
    padding: 30px 15px;
    height: auto;
    display: block;
  }
  section.product-list .products-here div.list-title .list-title-inner h1 {
    margin-bottom: 30px !important;
  }
  section.product-list .products-here div.list-title .list-title-inner div.list_exp p {
    font-size: 13px;
  }
  section.product-list .products-here div.products-article-wrap {
    margin-left: -15px;
    margin-right: -15px;
  }
  section.product-list .products-here div.products-article-wrap article {
    width: 50%;
    height: calc(50vw + 30px);
  }
  section.product-list .products-here div.products-article-wrap article.accessories_top_list {
    width: 50%;
    height: calc(50vw + 30px);
  }
  section.product-list .products-here div.products-article-wrap article.accessories_top_list div.infobox h2.product-list-title {
    font-size: 11px !important;
  }
  section.product-list .products-here div.products-article-wrap article div.infobox {
    padding: 10px;
  }
  section.product-list .products-here div.products-article-wrap article div.infobox h2.product-list-title {
    font-size: 11px !important;
  }
  section.product-list .products-here div.products-article-wrap article .img_expand_wrap {
    align-items: flex-start;
  }
}
.img_expand_wrap {
  overflow: hidden;
  cursor: pointer;
}
.img_expand_wrap img {
  overflow: hidden;
  cursor: pointer;
  width: 100%;
  transform: scale(1);
  transition-duration: 0.5s;
}
.img_expand_wrap img:hover {
  transform: scale(1.1);
  transition-duration: 0.5s;
}
.button-hover {
  display: inline-block;
  min-width: 250px;
  padding: 10px 15px;
  margin: 0 auto;
  font-size: 14px;
  background-color: rgba(247, 248, 255, 0.3);
  border: 1px solid #0066b3;
  letter-spacing: 2px;
  text-align: center;
  position: relative;
  transition: all 0.35s;
}
.button-hover span {
  position: relative;
  z-index: 2;
}
.button-hover:after {
  position: absolute;
  z-index: -1;
  content: "";
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background: #0066b3;
  transition: all 0.35s;
}
.button-hover:hover {
  color: #fff;
}
.button-hover:hover:after {
  width: 100%;
}
@media screen and (max-width: 809px) {
  .button-hover {
    width: 100%;
  }
}
button.menu-trigger {
  cursor: pointer;
  background-color: transparent;
  border: none;
  outline: none;
}
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 32px;
  height: 24px;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #0066b3;
  border-radius: 2px;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
  opacity: 1;
}
.menu-trigger span:nth-of-type(2) {
  top: 11px;
  opacity: 1;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
  opacity: 1;
}
.menu-trigger.active span:nth-of-type(1) {
  transform: translateY(14px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  transform: translateY(-14px) rotate(45deg);
  left: 0;
  top: 28px;
}
#go-menu-sp {
  position: fixed;
  z-index: 9996;
  right: 10px;
  top: 10px;
}
div#spmenuModal {
  top: 60px !important;
  height: calc(100% - 60px) !important;
}
div#spmenuModal div.modal-content {
  background-color: transparent;
  z-index: -1;
  height: 100%;
  border: none;
  flex-direction: inherit;
  justify-content: center;
  align-items: center;
}
div#spmenuModal div.modal-content div.spmenuInner {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 15px;
  width: 100%;
}
div#spmenuModal div.modal-content div.spmenuInner div.lists {
  width: 100%;
  height: 100%;
  justify-content: space-between;
  display: flex;
  flex-direction: column;
}
div#spmenuModal div.modal-content div.spmenuInner div.lists dl.modal-list-wrap {
  width: 100%;
  max-width: 320px;
  margin: 0 auto;
}
div#spmenuModal div.modal-content div.spmenuInner div.lists dl.modal-list-wrap dt {
  font-size: 13px;
  cursor: pointer;
  font-weight: normal;
  color: #fff;
  padding: 20px 0;
  line-height: 1;
  position: relative;
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);
}
div#spmenuModal div.modal-content div.spmenuInner div.lists dl.modal-list-wrap dt:after {
  content: "+";
  font-size: 26px;
  position: absolute;
  right: 0;
  bottom: calc(50% - 11px);
  color: #fff;
  font-weight: 100;
  transform: rotate(0deg);
  transition: all 0.5s;
}
div#spmenuModal div.modal-content div.spmenuInner div.lists dl.modal-list-wrap dt.open:after {
  transform: rotate(-45deg);
  transition: all 0.5s;
}
div#spmenuModal div.modal-content div.spmenuInner div.lists dl.modal-list-wrap dd {
  display: none;
}
div#spmenuModal div.modal-content div.spmenuInner div.lists ul.modal-list {
  padding-top: 30px;
  padding-bottom: 30px;
}
div#spmenuModal div.modal-content div.spmenuInner div.lists ul.modal-list li {
  line-height: 1.5;
  font-size: 14px;
}
div#spmenuModal div.modal-content div.spmenuInner div.lists ul.modal-list li a {
  display: inline-block;
  color: #fff;
}
div#spmenuModal div.modal-content div.spmenuInner div.lists ul.modal-list li a:hover {
  padding-left: 1.1em;
  transition: all 0.2s;
  position: relative;
}
div#spmenuModal div.modal-content div.spmenuInner div.lists ul.modal-list li a:hover:before {
  position: absolute;
  left: 0;
  content: "\f105";
  padding-right: 0.1em;
  font-family: "Font Awesome 5 Pro";
  font-weight: 100;
}
div#spmenuModal div.modal-content div.spmenuInner div.lists div.modal-sublist-wrap {
  width: 100%;
  max-width: 320px;
  margin: 60px auto 0;
}
div#spmenuModal div.modal-content div.spmenuInner div.lists div.modal-sublist-wrap ul.modal-list {
  padding-bottom: 0;
}
div#spmenuModal div.modal-content div.spmenuInner div.lists div.modal-sublist-wrap ul.modal-list li:last-child:before {
  font-family: "Font Awesome 5 Brands";
  content: "\f16d";
  margin-right: 0.5em;
  color: #fff;
}
div#spmenuModal div.modal-content div.spmenuInner div.bw {
  text-align: center;
  padding: 15px 15px 0;
}
div#spmenuModal div.modal-content div.spmenuInner div.bw a {
  display: block;
  width: 100%;
  margin-bottom: 10px;
}
div#spmenuModal div.modal-content div.spmenuInner nav ul.sp-mainmenu {
  border-bottom: 1px solid #000;
  padding: 15px 15px 30px;
  text-align: center;
  margin: 0;
  list-style-type: none;
}
div#spmenuModal div.modal-content div.spmenuInner nav ul.sp-mainmenu li {
  line-height: 2;
}
div#spmenuModal div.modal-content div.spmenuInner nav ul.sp-mainmenu li a {
  display: block;
  color: #0A0908;
  font-size: 18px;
}
div#spmenuModal.spmenuModal-on .close-spmenuModal {
  position: fixed;
  right: 10px;
  top: 10px;
}
div#spmenuModal.spmenuModal-on .close-spmenuModal div.button {
  width: 36px;
  height: 24px;
  position: absolute;
  right: 0px;
  top: 0px;
  z-index: 10000;
}
div#spmenuModal.spmenuModal-on .close-spmenuModal div.button span {
  z-index: 10001;
  position: absolute;
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
  position: relative;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #0066b3;
  border-radius: 4px;
}
div#spmenuModal.spmenuModal-on .close-spmenuModal div.button span:nth-of-type(1) {
  transform: translateY(14px) rotate(-45deg);
  top: -12px;
  left: 2px;
}
div#spmenuModal.spmenuModal-on .close-spmenuModal div.button span:nth-of-type(2) {
  top: 11px;
  opacity: 0;
}
div#spmenuModal.spmenuModal-on .close-spmenuModal div.button span:nth-of-type(3) {
  bottom: 34px;
  left: 2px;
  transform: translateY(-14px) rotate(45deg);
}
div#spmenuModal.spmenuModal-on .close-spmenuModal div.button span {
  display: none;
}
body.top-front nav#bottom-bc {
  display: none;
}
