@charset "UTF-8";
.grecaptcha-badge {
  visibility: hidden; }

/*//////////////////////////////////////////////////
sscss変数
//////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////
全体
//////////////////////////////////////////////////*/
::-moz-selection {
  background-color: #25348c;
  color: #fff; }

::selection {
  background-color: #25348c;
  color: #fff; }

@font-face {
  font-family: Poppins-R;
  src: url("font/Poppins-Regular.ttf") format("truetype"); }
@font-face {
  font-family: Poppins-SB;
  src: url("font/Poppins-SemiBold.ttf") format("truetype"); }
html {
  width: 100%;
  height: 100%;
  font-size: 62.5%; }

body {
  width: 100%;
  height: 100%;
  min-width: 320px;
  position: relative;
  z-index: 1;
  left: 0;
  top: 0;
  background-color: #fff; }

header, main, footer, #loading_cover, #modal_menu, #header_fix, #humb_wrap, #humb_wrap_fix, #pagetop, input, textarea, select, button {
  font-size: 1.4rem;
  line-height: 1.7;
  color: #333;
  font-weight: 400;
  letter-spacing: normal;
  -webkit-text-size-adjust: 100%;
  word-wrap: break-word;
  overflow-wrap: break-word;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
  -webkit-font-smoothing: subpixel-antialiased;
  font-family: 'Poppins-R', sans-serif; }

header, main, footer {
  width: 100%;
  overflow: hidden; }

main, img, video {
  display: block; }

img {
  flex-shrink: 0; }

input[type="text"], input[type="search"], input[type="email"], input[type="password"], input[type="submit"], input[type="button"], input[type="radio"], input[type="checkbox"], textarea, select, button {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none; }

input[type="submit"], input[type="button"], input[type="radio"], input[type="checkbox"], select, button {
  cursor: pointer; }

input, textarea, select, button {
  outline: 0; }

:-ms-input-placeholder {
  color: #757575; }

::-moz-placeholder {
  color: #757575; }

::-webkit-input-placeholder {
  color: #757575; }

a {
  text-decoration: none; }

a:link, a:visited, a:hover {
  color: #333; }

pre {
  white-space: pre-wrap; }

.gothic {
  font-family: "Poppins-R", sans-serif !important;
  font-weight: 400 !important; }

.gothic-b {
  font-family: "Poppins-SB", sans-serif !important;
  font-weight: 600 !important; }

.it {
  font-style: italic; }

.underline {
  text-decoration: underline; }

.l-space-n {
  letter-spacing: normal; }

.l-space-1 {
  letter-spacing: .1rem; }

.l-space-2 {
  letter-spacing: .2rem; }

.l-space-4 {
  letter-spacing: .4rem; }

.cf:after {
  content: '';
  display: block;
  clear: both; }

.fit-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;'; }

.scroll-style {
  overflow: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none; }
  .scroll-style::-webkit-scrollbar {
    display: none; }

.vertical-txt {
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl; }

.keep-txt {
  word-break: keep-all;
  white-space: nowrap; }

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

.marker {
  background: linear-gradient(transparent 70%, #dcdeed 70%);
  color: #333; }

.gra {
  background: linear-gradient(135deg, #404d9a, #25348c); }

.color-white {
  color: #fff !important; }

.color-font {
  color: #333 !important; }

.color-subfont {
  color: #757575 !important; }

.color-line {
  color: #cdcdcd !important; }

.color-line-2 {
  color: #e0e0e0 !important; }

.color-back {
  color: #eeeff6 !important; }

.color-blue {
  color: #25348c !important; }

.color-red {
  color: #cf0a22 !important; }

.title-lg {
  font-size: 3.2rem !important; }

.x-lg {
  font-size: 2.4rem !important; }

.x-lg-2 {
  font-size: 1.8rem !important; }

.lg {
  font-size: 1.6rem !important; }

.md {
  font-size: 1.4rem !important; }

.sm {
  font-size: 1.2rem !important; }

.x-sm {
  font-size: 1rem !important; }

.spacer-8 {
  display: block;
  width: 100%;
  height: 8px !important; }

.spacer-10 {
  display: block;
  width: 100%;
  height: 12px !important; }

.spacer-20 {
  display: block;
  width: 100%;
  height: 16px !important; }

.spacer-30 {
  display: block;
  width: 100%;
  height: 20px !important; }

.spacer-40 {
  display: block;
  width: 100%;
  height: 32px !important; }

.spacer-60 {
  display: block;
  width: 100%;
  height: 40px !important; }

.spacer-80 {
  display: block;
  width: 100%;
  height: 44px !important; }

.spacer-120 {
  display: block;
  width: 100%;
  height: 60px !important; }

.spacer-160 {
  display: block;
  width: 100%;
  height: 80px !important; }

@media only screen and (min-width: 640px) {
  header, main, footer, #loading_cover, #modal_menu, #header_fix, #humb_wrap, #humb_wrap_fix, #pagetop, input, textarea, select, button {
    font-size: 1.5rem; }

  .title-lg {
    font-size: 4rem !important; }

  .x-lg {
    font-size: 3rem !important; }

  .x-lg-2 {
    font-size: 2.1rem !important; }

  .lg {
    font-size: 1.8rem !important; }

  .md {
    font-size: 1.5rem !important; }

  .sm {
    font-size: 1.3rem !important; }

  .x-sm {
    font-size: 1.1rem !important; }

  .spacer-10 {
    height: 14px !important; }

  .spacer-20 {
    height: 20px !important; }

  .spacer-30 {
    height: 26px !important; }

  .spacer-40 {
    height: 40px !important; }

  .spacer-60 {
    height: 52px !important; }

  .spacer-80 {
    height: 66px !important; }

  .spacer-120 {
    height: 90px !important; }

  .spacer-160 {
    height: 120px !important; } }
@media only screen and (min-width: 960px) {
  header, main, footer, #loading_cover, #modal_menu, #header_fix, #humb_wrap, #humb_wrap_fix, #pagetop, input, textarea, select, button {
    font-size: 1.6rem; }

  .title-lg {
    font-size: 4.8rem !important; }

  .x-lg {
    font-size: 3.6rem !important; }

  .x-lg-2 {
    font-size: 2.4rem !important; }

  .lg {
    font-size: 2rem !important; }

  .md {
    font-size: 1.6rem !important; }

  .sm {
    font-size: 1.4rem !important; }

  .x-sm {
    font-size: 1.2rem !important; }

  .spacer-10 {
    height: 16px !important; }

  .spacer-20 {
    height: 24px !important; }

  .spacer-30 {
    height: 32px !important; }

  .spacer-40 {
    height: 48px !important; }

  .spacer-60 {
    height: 64px !important; }

  .spacer-80 {
    height: 88px !important; }

  .spacer-120 {
    height: 120px !important; }

  .spacer-160 {
    height: 160px !important; } }
@media (hover: hover) {
  .hover-48 {
    transition: opacity .4s; }

  .hover-48:hover {
    opacity: .48; }

  .hover-64 {
    transition: opacity .4s; }

  .hover-64:hover {
    opacity: .64; } }
/*//////////////////////////////////////////////////
共通
//////////////////////////////////////////////////*/
.header-under {
  line-height: 1.4;
  position: relative;
  z-index: 1;
  left: 0;
  top: 0; }
  .header-under .title {
    width: 88%;
    position: absolute;
    z-index: 2;
    left: 50%;
    top: calc(50% + 40px);
    transform: translate(-50%, -50%); }
  .header-under .img {
    height: 320px;
    position: relative;
    z-index: 1;
    left: 0;
    top: 0; }
  .header-under .header-slider-wrap {
    height: 320px;
    position: relative;
    z-index: 1;
    left: 0;
    top: 0; }
    .header-under .header-slider-wrap .header-slider {
      width: 100%;
      height: 320px; }
      .header-under .header-slider-wrap .header-slider li {
        width: 100%;
        height: 320px;
        outline: none !important; }

.single-products .header-under .img {
  height: 200px; }

@media only screen and (min-width: 640px) {
  .header-under .title {
    width: 90%;
    top: calc(50% + 48px); }
  .header-under .img {
    height: 400px; }
  .header-under .header-slider-wrap {
    height: 400px; }
    .header-under .header-slider-wrap .header-slider {
      height: 400px; }
      .header-under .header-slider-wrap .header-slider li {
        height: 400px; }

  .single-products .header-under .img {
    height: 260px; } }
@media only screen and (min-width: 960px) {
  .header-under .title {
    width: 92%;
    top: calc(50% + 56px); }
  .header-under .img {
    height: 480px; }
  .header-under .header-slider-wrap {
    height: 480px; }
    .header-under .header-slider-wrap .header-slider {
      height: 480px; }
      .header-under .header-slider-wrap .header-slider li {
        height: 480px; }

  .single-products .header-under .img {
    height: 320px; } }
@media only screen and (min-width: 1280px) {
  .header-under .title {
    width: 1200px; } }
/*//////////////////////////////////////////////////
アニメーション
//////////////////////////////////////////////////*/
@keyframes logo {
  0% {
    opacity: .48; }
  50% {
    opacity: 1; }
  100% {
    opacity: .48; } }
.loading-logo {
  animation: logo 4s infinite; }

@keyframes logo-line-1 {
  0% {
    width: 0; }
  100% {
    width: 100%; } }
#loading_cover .line-1-2 {
  animation: logo-line-1 1.4s forwards; }

@keyframes logo-line-2 {
  0% {
    width: 0; }
  100% {
    width: 100%; } }
#loading_cover .line-2-2 {
  animation: logo-line-2 1.4s forwards;
  animation-delay: 1.8s; }

@keyframes loading {
  0% {
    opacity: 1;
    top: 0; }
  99% {
    opacity: 0;
    top: 0; }
  100% {
    opacity: 0;
    top: -100%; } }
#loading_cover.front {
  animation: loading 1.6s forwards;
  animation-delay: 3.2s; }

/*//////////////////////////////////////////////////
ローディング
//////////////////////////////////////////////////*/
#loading_cover {
  line-height: 1;
  position: fixed;
  z-index: 100;
  left: 0;
  top: 0;
  width: 100%;
  min-width: 320px;
  height: 100vh;
  background-color: #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center; }
  #loading_cover .img {
    display: none;
    width: 150px;
    position: relative;
    z-index: 1;
    left: 0;
    top: 0;
    transform: translate(0, -50%); }
    #loading_cover .img img {
      width: 100%;
      height: auto;
      position: relative;
      z-index: 1;
      left: 0;
      top: 0; }
    #loading_cover .img .line-1 {
      display: block;
      width: 61px;
      height: 3px;
      background-color: #fff;
      position: absolute;
      z-index: 2;
      left: 8.5px;
      top: 38.5px; }
      #loading_cover .img .line-1 .line-1-2 {
        display: block;
        width: 0;
        height: 3px;
        background-color: #cf0a22;
        position: absolute;
        z-index: 2;
        left: 0;
        top: 0; }
    #loading_cover .img .line-2 {
      display: block;
      width: 79.5px;
      height: 3px;
      background-color: #fff;
      position: absolute;
      z-index: 2;
      left: 80.5px;
      top: 39px;
      transform: rotate(-30deg);
      transform-origin: left top; }
      #loading_cover .img .line-2 .line-2-2 {
        display: block;
        width: 0;
        height: 3px;
        background-color: #cf0a22;
        position: absolute;
        z-index: 2;
        left: 0;
        top: 0; }
    #loading_cover .img::after {
      content: '';
      display: block;
      width: 3px;
      height: 5px;
      background-color: #fff;
      position: absolute;
      z-index: 2;
      left: 69.5px;
      top: 38px;
      transform: rotate(30deg);
      transform-origin: left top; }

@media only screen and (min-width: 640px) {
  #loading_cover .img {
    width: 225px; }
    #loading_cover .img .line-1 {
      width: 91.5px;
      height: 4px;
      left: 12.75px;
      top: 57.75px; }
      #loading_cover .img .line-1 .line-1-2 {
        height: 4px; }
    #loading_cover .img .line-2 {
      width: 119.25px;
      height: 4px;
      left: 120.75px;
      top: 58.5px; }
      #loading_cover .img .line-2 .line-2-2 {
        height: 4px; }
    #loading_cover .img::after {
      width: 3px;
      height: 6px;
      left: 104.5px;
      top: 57px; } }
@media only screen and (min-width: 960px) {
  #loading_cover .img {
    width: 300px; }
    #loading_cover .img .line-1 {
      width: 122px;
      height: 5px;
      left: 17px;
      top: 77px; }
      #loading_cover .img .line-1 .line-1-2 {
        height: 5px; }
    #loading_cover .img .line-2 {
      width: 159px;
      height: 5px;
      left: 161px;
      top: 78px; }
      #loading_cover .img .line-2 .line-2-2 {
        height: 5px; }
    #loading_cover .img::after {
      width: 4px;
      height: 7px;
      left: 139px;
      top: 76px; } }
/*//////////////////////////////////////////////////
ハンバーガーメニュー
//////////////////////////////////////////////////*/
#humb_wrap {
  line-height: 1;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: solid 1px #fff;
  box-sizing: border-box;
  cursor: pointer;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center; }
  #humb_wrap .txt {
    display: inline-block; }

@media only screen and (min-width: 640px) {
  #humb_wrap {
    width: 56px;
    height: 56px; } }
@media only screen and (min-width: 960px) {
  #humb_wrap {
    width: 64px;
    height: 64px; } }
@media (hover: hover) {
  #humb_wrap .txt {
    transition: opacity .4s; }
  #humb_wrap:hover .txt {
    opacity: .48; } }
/*//////////////////////////////////////////////////
モーダルメニュー
//////////////////////////////////////////////////*/
#modal_menu {
  display: none;
  line-height: 1;
  width: 100%;
  min-width: 320px;
  height: 100vh;
  background-color: #fff;
  position: fixed;
  z-index: 100;
  left: 0;
  top: 0; }
  #modal_menu::before, #modal_menu::after {
    content: '';
    display: block;
    width: 100%;
    height: 88px;
    position: absolute;
    z-index: 3;
    right: 0;
    top: 0;
    background: linear-gradient(to top, rgba(255, 255, 255, 0), white); }
  #modal_menu::after {
    top: auto;
    bottom: 0;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0), white); }
  #modal_menu #menu_close {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background-color: #25348c;
    cursor: pointer;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    position: absolute;
    z-index: 4;
    right: 6vw;
    top: 16px; }
    #modal_menu #menu_close .close {
      width: 22px;
      height: 22px;
      position: relative;
      z-index: 1;
      left: 0;
      top: 0; }
      #modal_menu #menu_close .close span {
        display: block;
        width: 100%;
        height: 2px;
        background-color: #fff;
        position: absolute;
        z-index: 1;
        left: 0; }
        #modal_menu #menu_close .close span:nth-of-type(1) {
          top: 0;
          transform: translateY(10px) rotate(-45deg); }
        #modal_menu #menu_close .close span:nth-of-type(2) {
          bottom: 0;
          transform: translateY(-10px) rotate(45deg); }
  #modal_menu .side-img {
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: .08; }
  #modal_menu .inner {
    height: 100vh;
    position: relative;
    z-index: 2;
    left: 0;
    top: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start; }
    #modal_menu .inner .wrap {
      padding: 120px 0;
      display: inline-block; }
      #modal_menu .inner .wrap .logo {
        height: 40px; }
        #modal_menu .inner .wrap .logo a {
          display: inline-block;
          height: 100%; }
          #modal_menu .inner .wrap .logo a img {
            width: auto;
            height: 100%; }
      #modal_menu .inner .wrap nav {
        width: 88vw;
        margin: 40px auto 0; }
        #modal_menu .inner .wrap nav ul li {
          margin: 20px 0 0; }
          #modal_menu .inner .wrap nav ul li a {
            display: inline-block;
            width: 100%; }
          #modal_menu .inner .wrap nav ul li ul .parent {
            margin: 12px 0 0;
            padding: 0 14px;
            position: relative;
            z-index: 1;
            left: 0;
            top: 0; }
            #modal_menu .inner .wrap nav ul li ul .parent .parent-plus {
              background-image: url("../img/common/common_plus.svg");
              width: 14px;
              height: 14px;
              background-size: cover;
              position: absolute;
              z-index: 2;
              right: 0;
              top: 0;
              cursor: pointer; }
            #modal_menu .inner .wrap nav ul li ul .parent .children .series-item {
              display: none;
              margin: 12px 0 0;
              padding: 0 14px;
              position: relative;
              z-index: 1;
              left: 0;
              top: 0; }
              #modal_menu .inner .wrap nav ul li ul .parent .children .series-item .series-name {
                padding: 0 0 8px;
                border-bottom: solid 1px #e0e0e0; }
              #modal_menu .inner .wrap nav ul li ul .parent .children .series-item .product-name {
                line-height: 1.2;
                display: none;
                margin: 8px 0 0; }
              #modal_menu .inner .wrap nav ul li ul .parent .children .series-item .children-plus {
                background-image: url("../img/common/common_plus.svg");
                width: 12px;
                height: 12px;
                background-size: cover;
                position: absolute;
                z-index: 2;
                right: 2px;
                top: 0;
                cursor: pointer; }
              #modal_menu .inner .wrap nav ul li ul .parent .children .series-item.active .children-plus {
                background-image: url("../img/common/common_minus.svg"); }
            #modal_menu .inner .wrap nav ul li ul .parent.active .parent-plus {
              background-image: url("../img/common/common_minus.svg"); }
        #modal_menu .inner .wrap nav .sub {
          margin: 40px 0 0; }
        #modal_menu .inner .wrap nav .sns {
          margin: 40px 0 0; }
          #modal_menu .inner .wrap nav .sns .links {
            margin: 16px 0 0;
            padding: 16px 0 0;
            border-top: solid 1px #e0e0e0;
            display: flex;
            flex-wrap: wrap;
            justify-content: flex-start;
            align-items: center; }
            #modal_menu .inner .wrap nav .sns .links a {
              display: inline-block;
              height: 18px;
              margin: 0 20px 0 0; }
              #modal_menu .inner .wrap nav .sns .links a img {
                width: auto;
                height: 100%; }
            #modal_menu .inner .wrap nav .sns .links .link {
              line-height: 1.7;
              height: auto;
              margin: 20px 0 0; }
              #modal_menu .inner .wrap nav .sns .links .link:first-of-type {
                margin: 0; }

@media only screen and (min-width: 640px) {
  #modal_menu::before, #modal_menu::after {
    width: 50%; }
  #modal_menu #menu_close {
    width: 56px;
    height: 56px;
    right: 5vw;
    top: 20px; }
    #modal_menu #menu_close .close {
      width: 24px;
      height: 24px; }
      #modal_menu #menu_close .close span:nth-of-type(1) {
        transform: translateY(11px) rotate(-45deg); }
      #modal_menu #menu_close .close span:nth-of-type(2) {
        transform: translateY(-11px) rotate(45deg); }
  #modal_menu .side-img {
    width: 50%;
    opacity: 1; }
  #modal_menu .inner {
    padding: 0 0 0 50%; }
    #modal_menu .inner .wrap .logo {
      height: 46px; }
    #modal_menu .inner .wrap nav {
      width: 40vw;
      margin: 52px auto 0; }
      #modal_menu .inner .wrap nav ul li {
        margin: 26px 0 0; }
        #modal_menu .inner .wrap nav ul li ul .parent {
          margin: 14px 0 0;
          padding: 0 15px; }
          #modal_menu .inner .wrap nav ul li ul .parent .parent-plus {
            width: 15px;
            height: 15px;
            background-size: cover; }
          #modal_menu .inner .wrap nav ul li ul .parent .children .series-item {
            margin: 14px 0 0;
            padding: 0 15px; }
            #modal_menu .inner .wrap nav ul li ul .parent .children .series-item .series-name {
              padding: 0 0 10px; }
            #modal_menu .inner .wrap nav ul li ul .parent .children .series-item .product-name {
              margin: 10px 0 0; }
            #modal_menu .inner .wrap nav ul li ul .parent .children .series-item .children-plus {
              width: 13px;
              height: 13px;
              background-size: cover; }
      #modal_menu .inner .wrap nav .sub {
        margin: 52px 0 0; }
      #modal_menu .inner .wrap nav .sns {
        margin: 52px 0 0; }
        #modal_menu .inner .wrap nav .sns .links {
          margin: 20px 0 0;
          padding: 20px 0 0; }
          #modal_menu .inner .wrap nav .sns .links a {
            height: 21px;
            margin: 0 26px 0 0; }
          #modal_menu .inner .wrap nav .sns .links .link {
            margin: 26px 0 0; } }
@media only screen and (min-width: 960px) {
  #modal_menu #menu_close {
    width: 64px;
    height: 64px;
    right: 4vw;
    top: 24px; }
    #modal_menu #menu_close .close {
      width: 26px;
      height: 26px; }
      #modal_menu #menu_close .close span:nth-of-type(1) {
        transform: translateY(12px) rotate(-45deg); }
      #modal_menu #menu_close .close span:nth-of-type(2) {
        transform: translateY(-12px) rotate(45deg); }
  #modal_menu .inner .wrap .logo {
    height: 52px; }
  #modal_menu .inner .wrap nav {
    width: 42vw;
    margin: 64px auto 0; }
    #modal_menu .inner .wrap nav ul li {
      margin: 32px 0 0; }
      #modal_menu .inner .wrap nav ul li ul .parent {
        margin: 16px 0 0;
        padding: 0 16px; }
        #modal_menu .inner .wrap nav ul li ul .parent .parent-plus {
          width: 16px;
          height: 16px;
          background-size: cover; }
        #modal_menu .inner .wrap nav ul li ul .parent .children .series-item {
          margin: 16px 0 0;
          padding: 0 16px; }
          #modal_menu .inner .wrap nav ul li ul .parent .children .series-item .series-name {
            padding: 0 0 12px; }
          #modal_menu .inner .wrap nav ul li ul .parent .children .series-item .product-name {
            margin: 12px 0 0; }
          #modal_menu .inner .wrap nav ul li ul .parent .children .series-item .children-plus {
            width: 14px;
            height: 14px;
            background-size: cover; }
    #modal_menu .inner .wrap nav .sub {
      margin: 64px 0 0; }
    #modal_menu .inner .wrap nav .sns {
      margin: 64px 0 0; }
      #modal_menu .inner .wrap nav .sns .links {
        margin: 24px 0 0;
        padding: 24px 0 0; }
        #modal_menu .inner .wrap nav .sns .links a {
          height: 24px;
          margin: 0 32px 0 0; }
        #modal_menu .inner .wrap nav .sns .links .link {
          margin: 32px 0 0; } }
@media (hover: hover) {
  #modal_menu #menu_close .close {
    transition: opacity .4s; }
  #modal_menu #menu_close:hover .close {
    opacity: .48; }
  #modal_menu .inner .wrap nav .sns .links a {
    transition: opacity .4s; }
    #modal_menu .inner .wrap nav .sns .links a:hover {
      opacity: .48; } }
/*//////////////////////////////////////////////////
ヘッダー
//////////////////////////////////////////////////*/
.gnav-sp {
  line-height: 1;
  position: fixed;
  z-index: 10;
  left: 0;
  bottom: 0;
  width: 100%;
  min-width: 320px; }
  .gnav-sp ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center; }
    .gnav-sp ul li {
      width: 33.3%; }
      .gnav-sp ul li:nth-of-type(2) {
        width: 33.4%; }
        .gnav-sp ul li:nth-of-type(2) a {
          border-right: solid 1px rgba(255, 255, 255, 0.16);
          border-left: solid 1px rgba(255, 255, 255, 0.16); }
      .gnav-sp ul li a {
        line-height: 1.4;
        text-align: center;
        display: inline-block;
        width: 100%;
        height: 48px;
        padding: 2px 12px 0;
        box-sizing: border-box;
        background-color: rgba(0, 0, 0, 0.64);
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center; }

header {
  line-height: 1;
  background-color: rgba(0, 0, 0, 0.64);
  position: fixed;
  z-index: 10;
  left: 0;
  top: 0;
  width: 100%;
  min-width: 320px;
  padding: 16px 0; }
  header .inner {
    width: 88%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start; }
    header .inner .logo {
      height: 40px; }
      header .inner .logo a {
        display: inline-block;
        height: 100%; }
        header .inner .logo a img {
          width: auto;
          height: 100%; }
    header .inner nav {
      display: none; }

@media only screen and (min-width: 640px) {
  .gnav-sp ul li a {
    height: 56px;
    padding: 0 14px; }

  header {
    padding: 20px 0; }
    header .inner {
      width: 90%; }
      header .inner .logo {
        height: 46px; } }
@media only screen and (min-width: 960px) {
  .gnav-sp ul li a {
    height: 64px;
    padding: 0 16px; }
    .gnav-sp ul li a span {
      position: relative;
      z-index: 2;
      left: 0;
      top: 0; }

  header {
    padding: 24px 0; }
    header .inner {
      width: 92%; }
      header .inner .logo {
        height: 52px; } }
@media only screen and (min-width: 1280px) {
  .gnav-sp {
    display: none; }

  header {
    overflow: visible; }
    header .inner nav {
      display: inline-block; }
      header .inner nav ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        height: 64px; }
        header .inner nav ul li {
          display: inline-block;
          margin: 0 24px;
          position: relative;
          z-index: 1;
          left: 0;
          top: 0; }
          header .inner nav ul li a {
            display: inline-block;
            padding: 16px 0; }
          header .inner nav ul li:nth-of-type(1) a, header .inner nav ul li:nth-of-type(2) a {
            padding: 16px 24px 16px 0;
            position: relative;
            z-index: 1;
            left: 0;
            top: 0; }
            header .inner nav ul li:nth-of-type(1) a::after, header .inner nav ul li:nth-of-type(2) a::after {
              content: '';
              display: block;
              background-image: url("../img/common/common_arrow-white.png");
              width: 8px;
              height: 16px;
              background-size: cover;
              position: absolute;
              z-index: 1;
              right: 0;
              top: 47.5%;
              transform: translate(0, -50%) rotate(90deg); }
          header .inner nav ul li .children {
            display: none;
            width: 232px;
            height: auto;
            padding: 8px 0 8px 16px;
            position: absolute;
            z-index: 1;
            left: 0;
            top: 48px;
            background-color: #25348c; }
            header .inner nav ul li .children li {
              float: left;
              width: 200px;
              padding: 0 16px 0 0;
              margin: 8px 0; }
              header .inner nav ul li .children li a {
                width: 100%;
                padding: 0; }
                header .inner nav ul li .children li a::after {
                  content: none; }
                header .inner nav ul li .children li a .img {
                  margin: 0 0 8px;
                  border-radius: 4px;
                  overflow: hidden;
                  background-color: #fff; }
          header .inner nav ul li .series-wrap {
            display: none;
            width: 480px;
            padding: 16px;
            box-sizing: border-box;
            position: absolute;
            z-index: 1;
            left: 232px;
            top: 48px;
            background-color: #25348c;
            border-left: solid 1px #eeeff6; }
            header .inner nav ul li .series-wrap .series-item .series-name {
              padding: 8px 0; }
            header .inner nav ul li .series-wrap .series-item .product-name {
              display: none;
              line-height: 1.2;
              padding: 4px 0 4px 8px; }
              header .inner nav ul li .series-wrap .series-item .product-name::after {
                content: none; }
            header .inner nav ul li .series-wrap.brush-cutters-series-wrap {
              top: 204px; }
            header .inner nav ul li .series-wrap.electric-series-wrap {
              top: 344px; } }
@media (hover: hover) {
  .gnav-sp ul li a {
    position: relative;
    z-index: 1;
    left: 0;
    top: 0; }
    .gnav-sp ul li a::after {
      content: '';
      display: block;
      width: 0;
      height: 100%;
      position: absolute;
      z-index: 1;
      right: 0;
      top: 0;
      background-color: rgba(255, 255, 255, 0.16);
      transition: width .4s; }
    .gnav-sp ul li a:hover::after {
      width: 100%;
      left: 0;
      right: auto; } }
/*//////////////////////////////////////////////////
フッター
//////////////////////////////////////////////////*/
footer {
  overflow: visible;
  line-height: 1;
  position: relative;
  z-index: 9;
  left: 0;
  top: 0;
  background-color: #eeeff6; }
  footer #pagetop {
    background-color: #eeeff6;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    position: absolute;
    z-index: 1;
    left: 50%;
    top: 0;
    transform: translate(-50%, -50%);
    cursor: pointer; }
    footer #pagetop::after {
      content: '';
      display: block;
      background-image: url("../img/common/common_arrow-blue.png");
      width: 6px;
      height: 12px;
      background-size: cover;
      position: absolute;
      z-index: 1;
      left: 50%;
      top: 30%;
      transform: translate(-50%, -50%) rotate(-90deg); }
  footer .inner {
    padding: 44px 0 80px;
    width: 88%;
    margin: 0 auto; }
    footer .inner .wrap-1 .logo {
      height: 40px; }
      footer .inner .wrap-1 .logo img {
        width: auto;
        height: 100%; }
    footer .inner .wrap-1 p {
      margin: 12px 0 0; }
      footer .inner .wrap-1 p:first-of-type {
        margin: 20px 0 0; }
      footer .inner .wrap-1 p.tel {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center; }
        footer .inner .wrap-1 p.tel .devider {
          display: inline-block;
          width: 1px;
          height: 12px;
          background-color: #757575;
          margin: 0 12px; }
    footer .inner .sitemap {
      margin: 32px 0 0;
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-items: flex-start;
      gap: 32px; }
      footer .inner .sitemap ul {
        width: 50%; }
        footer .inner .sitemap ul:first-of-type, footer .inner .sitemap ul:nth-of-type(3) {
          width: calc(50% - 32px); }
        footer .inner .sitemap ul li {
          margin: 16px 0 0; }
          footer .inner .sitemap ul li:first-of-type {
            margin: 0; }
          footer .inner .sitemap ul li a {
            display: inline-block;
            word-break: keep-all;
            white-space: nowrap; }
        footer .inner .sitemap ul .children {
          width: 100% !important;
          margin: 16px 0 0;
          padding: 16px 0 0;
          border-top: solid 1px #cdcdcd; }
      footer .inner .sitemap .sns {
        width: calc(50% - 32px); }
        footer .inner .sitemap .sns .links {
          margin: 16px 0 0;
          padding: 16px 0 0;
          border-top: solid 1px #cdcdcd;
          display: flex;
          flex-wrap: wrap;
          justify-content: flex-start;
          align-items: center;
          gap: 20px; }
          footer .inner .sitemap .sns .links a {
            display: inline-block;
            height: 18px; }
            footer .inner .sitemap .sns .links a img {
              width: auto;
              height: 100%; }
          footer .inner .sitemap .sns .links .link {
            line-height: 1.7;
            height: auto; }
    footer .inner .copy {
      width: 100%;
      margin: 24px 0 0; }

@media only screen and (min-width: 640px) {
  footer #pagetop {
    width: 52px;
    height: 52px; }
    footer #pagetop::after {
      width: 7px;
      height: 14px;
      background-size: cover; }
  footer .inner {
    padding: 66px 0 96px;
    width: 90%; }
    footer .inner .wrap-1 .logo {
      height: 46px; }
    footer .inner .wrap-1 p {
      margin: 14px 0 0; }
      footer .inner .wrap-1 p:first-of-type {
        margin: 26px 0 0; }
      footer .inner .wrap-1 p.tel .devider {
        height: 14px;
        margin: 0 14px; }
    footer .inner .sitemap {
      margin: 40px 0 0;
      gap: 40px; }
      footer .inner .sitemap ul {
        width: 33.3%; }
        footer .inner .sitemap ul:first-of-type, footer .inner .sitemap ul:nth-of-type(3) {
          width: calc(33.3% - 40px); }
        footer .inner .sitemap ul li {
          margin: 20px 0 0; }
        footer .inner .sitemap ul .children {
          margin: 20px 0 0;
          padding: 20px 0 0; }
      footer .inner .sitemap .sns {
        width: calc(33.3% - 40px);
        gap: 26px; }
        footer .inner .sitemap .sns .links {
          margin: 20px 0 0;
          padding: 20px 0 0; }
          footer .inner .sitemap .sns .links a {
            height: 21px; }
    footer .inner .copy {
      margin: 66px 0 0; } }
@media only screen and (min-width: 960px) {
  footer #pagetop {
    width: 64px;
    height: 64px; }
    footer #pagetop::after {
      width: 8px;
      height: 16px;
      background-size: cover; }
  footer .inner {
    padding: 88px 0 112px;
    width: 92%; }
    footer .inner .wrap-1 .logo {
      height: 52px; }
    footer .inner .wrap-1 p {
      margin: 16px 0 0; }
      footer .inner .wrap-1 p:first-of-type {
        margin: 32px 0 0; }
      footer .inner .wrap-1 p.tel .devider {
        height: 16px;
        margin: 0 16px; }
    footer .inner .sitemap ul {
      width: 25%;
      gap: 48px; }
      footer .inner .sitemap ul:first-of-type {
        width: calc(25% - 48px); }
      footer .inner .sitemap ul:nth-of-type(3) {
        width: calc(20% - 48px); }
      footer .inner .sitemap ul li {
        margin: 24px 0 0; }
      footer .inner .sitemap ul .children {
        margin: 24px 0 0;
        padding: 24px 0 0; }
    footer .inner .sitemap .sns {
      width: calc(30% - 48px);
      gap: 32px; }
      footer .inner .sitemap .sns .links {
        margin: 24px 0 0;
        padding: 24px 0 0; }
        footer .inner .sitemap .sns .links a {
          height: 24px; }
    footer .inner .copy {
      margin: 88px 0 0; } }
@media only screen and (min-width: 1280px) {
  footer .inner {
    width: 1200px;
    padding: 88px 0 48px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start; }
    footer .inner .wrap-1 {
      width: calc(25% - 48px); }
    footer .inner .sitemap {
      margin: 0;
      width: 75%; } }
@media (hover: hover) {
  footer #pagetop::after {
    transition: opacity .4s; }
  footer #pagetop:hover::after {
    opacity: .48; }
  footer .inner .sitemap .sns .links a {
    transition: opacity .4s; }
    footer .inner .sitemap .sns .links a:hover {
      opacity: .48; } }
/*//////////////////////////////////////////////////
フロントページ
//////////////////////////////////////////////////*/
.front-page #main_visual {
  width: 100%;
  height: 100vh;
  position: relative;
  z-index: 1;
  left: 0;
  top: 0;
  overflow: hidden;
  background-color: #000; }
  .front-page #main_visual video {
    width: auto;
    height: 100vh;
    position: absolute;
    z-index: 1;
    left: 50%;
    top: 0;
    transform: translate(-50%, 0);
    outline: none; }
  .front-page #main_visual .vjs-big-play-button {
    display: none; }
  .front-page #main_visual .copy-area {
    position: absolute;
    z-index: 2;
    left: 8%;
    top: calc(50% + 16px);
    transform: translate(0, -50%); }
    .front-page #main_visual .copy-area h2 {
      line-height: 1.4;
      font-size: min(6.4vw, 4.8rem); }
    .front-page #main_visual .copy-area .links {
      margin: 32px 0 0;
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-items: center; }
      .front-page #main_visual .copy-area .links a {
        display: inline-block;
        height: 18px;
        margin: 0 20px 0 0; }
        .front-page #main_visual .copy-area .links a img {
          width: auto;
          height: 100%; }
  .front-page #main_visual .scroll-down {
    display: none; }
.front-page .intro {
  padding: 60px 0;
  background-color: #25348c;
  position: relative;
  z-index: 1;
  left: 0;
  top: 0; }
  .front-page .intro::after {
    content: '';
    width: 84%;
    height: 100%;
    display: block;
    position: absolute;
    z-index: 1;
    left: 8%;
    bottom: -4px;
    background-image: url("../img/common/common_logo-white.svg");
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: bottom;
    opacity: .08; }
  .front-page .intro .inner {
    width: 84%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    left: 0;
    top: 0; }
    .front-page .intro .inner .links {
      line-height: 1;
      margin: 44px 0 0; }
      .front-page .intro .inner .links .about-us {
        display: inline-block;
        padding: 0 14px 0 0;
        position: relative;
        z-index: 1;
        left: 0;
        top: 0; }
        .front-page .intro .inner .links .about-us::after {
          content: '';
          display: block;
          background-image: url("../img/common/common_arrow-white.png");
          width: 6px;
          height: 12px;
          background-size: cover;
          position: absolute;
          z-index: 1;
          right: 0;
          top: 47.5%;
          transform: translate(0, -50%); }
      .front-page .intro .inner .links .trade-show {
        display: inline-block;
        padding: 0 20px 0 0;
        position: relative;
        z-index: 1;
        left: 0;
        top: 0;
        margin: 32px 0 0; }
        .front-page .intro .inner .links .trade-show::after {
          content: '';
          display: block;
          background-image: url("../img/common/common_exlink-white.png");
          width: 12px;
          height: 12px;
          background-size: cover;
          position: absolute;
          z-index: 1;
          right: 0;
          top: 47.5%;
          transform: translate(0, -50%); }
      .front-page .intro .inner .links p {
        line-height: 1.7;
        margin: 12px 0 0; }
.front-page .clink .item .img {
  height: 300px; }
.front-page .clink .item .txt-wrap {
  width: 84%;
  margin: 0 auto;
  padding: 0 0 44px;
  opacity: 0;
  transition: opacity .8s; }
  .front-page .clink .item .txt-wrap h2 {
    line-height: 1.4;
    color: #25348c; }
  .front-page .clink .item .txt-wrap p {
    margin: 20px 0 0; }
  .front-page .clink .item .txt-wrap .link {
    text-align: right;
    margin: 20px 0 0; }
    .front-page .clink .item .txt-wrap .link a {
      line-height: 1;
      display: inline-block;
      padding: 0 14px 0 0;
      position: relative;
      z-index: 1;
      left: 0;
      top: 0;
      color: #25348c; }
      .front-page .clink .item .txt-wrap .link a::after {
        content: '';
        display: block;
        background-image: url("../img/common/common_arrow-blue.png");
        width: 6px;
        height: 12px;
        background-size: cover;
        position: absolute;
        z-index: 1;
        right: 0;
        top: 47.5%;
        transform: translate(0, -50%); }
  .front-page .clink .item .txt-wrap.active {
    opacity: 1; }
.front-page .clink .item.reverse .txt-wrap h2 {
  text-align: right; }
.front-page .clink .item.reverse .txt-wrap .link {
  text-align: left; }
.front-page .member {
  padding: 60px 0;
  position: relative;
  z-index: 1;
  left: 0;
  top: 0; }
  .front-page .member .img {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0; }
  .front-page .member .inner {
    width: 84%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    left: 0;
    top: 0; }
    .front-page .member .inner .wrap-1 h2 {
      line-height: 1.4; }
    .front-page .member .inner .wrap-1 p {
      margin: 20px 0 0; }
    .front-page .member .inner .wrap-2 {
      margin: 44px 0 0;
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center; }
      .front-page .member .inner .wrap-2 a {
        line-height: 1;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        width: 100%;
        max-width: 480px;
        height: 56px;
        border-radius: 28px;
        background-color: #fff;
        position: relative;
        z-index: 1;
        left: 0;
        top: 0; }
        .front-page .member .inner .wrap-2 a::after {
          content: '';
          display: block;
          background-image: url("../img/common/common_arrow-blue.png");
          width: 6px;
          height: 12px;
          background-size: cover;
          position: absolute;
          z-index: 2;
          right: 16px;
          top: 50%;
          transform: translate(0, -50%); }

@media only screen and (min-width: 640px) {
  .front-page #main_visual .copy-area {
    left: 6%;
    top: calc(50% + 20px); }
    .front-page #main_visual .copy-area .links {
      margin: 40px 0 0; }
      .front-page #main_visual .copy-area .links a {
        height: 21px;
        margin: 0 26px 0 0; }
  .front-page .intro {
    padding: 90px 0; }
    .front-page .intro::after {
      width: 88%;
      left: 6%; }
    .front-page .intro .inner {
      width: 88%; }
      .front-page .intro .inner .links {
        margin: 66px 0 0; }
        .front-page .intro .inner .links .about-us {
          padding: 0 17px 0 0; }
          .front-page .intro .inner .links .about-us::after {
            width: 7px;
            height: 14px;
            background-size: cover; }
        .front-page .intro .inner .links .trade-show {
          padding: 0 24px 0 0;
          margin: 40px 0 0; }
          .front-page .intro .inner .links .trade-show::after {
            width: 14px;
            height: 14px;
            background-size: cover; }
        .front-page .intro .inner .links p {
          margin: 14px 0 0; }
  .front-page .clink .item .img {
    height: 450px; }
  .front-page .clink .item .txt-wrap {
    width: 88%;
    padding: 0 0 66px; }
    .front-page .clink .item .txt-wrap p {
      margin: 26px 0 0; }
    .front-page .clink .item .txt-wrap .link {
      margin: 26px 0 0; }
      .front-page .clink .item .txt-wrap .link a {
        padding: 0 17px 0 0; }
        .front-page .clink .item .txt-wrap .link a::after {
          width: 7px;
          height: 14px;
          background-size: cover; }
  .front-page .member {
    padding: 90px 0; }
    .front-page .member .inner {
      width: 88%; }
      .front-page .member .inner .wrap-1 p {
        margin: 26px 0 0; }
      .front-page .member .inner .wrap-2 {
        margin: 66px 0 0; }
        .front-page .member .inner .wrap-2 a {
          height: 72px;
          border-radius: 36px; }
          .front-page .member .inner .wrap-2 a::after {
            width: 7px;
            height: 14px;
            background-size: cover;
            right: 20px; } }
@media only screen and (min-width: 960px) {
  .front-page #main_visual .copy-area {
    left: 4%;
    top: calc(50% + 24px); }
    .front-page #main_visual .copy-area .links {
      margin: 48px 0 0; }
      .front-page #main_visual .copy-area .links a {
        height: 24px;
        margin: 0 32px 0 0; }
  .front-page .intro {
    padding: 120px 0; }
    .front-page .intro::after {
      width: 92%;
      left: 4%; }
    .front-page .intro .inner {
      width: 92%;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: flex-start; }
      .front-page .intro .inner .txt-wrap {
        width: calc(50% - 44px); }
      .front-page .intro .inner .links {
        margin: 0;
        width: calc(50% - 44px); }
        .front-page .intro .inner .links .about-us {
          padding: 0 20px 0 0; }
          .front-page .intro .inner .links .about-us::after {
            width: 8px;
            height: 16px;
            background-size: cover; }
        .front-page .intro .inner .links .trade-show {
          padding: 0 28px 0 0;
          margin: 48px 0 0; }
          .front-page .intro .inner .links .trade-show::after {
            width: 16px;
            height: 16px;
            background-size: cover; }
        .front-page .intro .inner .links p {
          margin: 16px 0 0; }
  .front-page .clink .item {
    position: relative;
    z-index: 1;
    left: 0;
    top: 0; }
    .front-page .clink .item .img {
      height: 600px; }
    .front-page .clink .item .txt-wrap {
      width: 38%;
      padding: 0;
      position: absolute;
      z-index: 2;
      left: 4%;
      top: 50%;
      transform: translate(0, -50%); }
      .front-page .clink .item .txt-wrap h2 {
        color: #fff; }
      .front-page .clink .item .txt-wrap p {
        margin: 32px 0 0;
        color: #fff; }
      .front-page .clink .item .txt-wrap .link {
        margin: 32px 0 0;
        text-align: left; }
        .front-page .clink .item .txt-wrap .link a {
          padding: 0 20px 0 0;
          color: #fff; }
          .front-page .clink .item .txt-wrap .link a::after {
            width: 8px;
            height: 16px;
            background-size: cover;
            background-image: url("../img/common/common_arrow-white.png"); }
    .front-page .clink .item.reverse .txt-wrap {
      left: auto;
      right: 4%; }
      .front-page .clink .item.reverse .txt-wrap .link {
        text-align: right; }
  .front-page .member {
    padding: 120px 0; }
    .front-page .member .inner {
      width: 92%;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center; }
      .front-page .member .inner .wrap-1 {
        width: calc(50% - 44px); }
        .front-page .member .inner .wrap-1 p {
          margin: 32px 0 0; }
      .front-page .member .inner .wrap-2 {
        margin: 0;
        width: calc(50% - 44px); }
        .front-page .member .inner .wrap-2 a {
          height: 88px;
          border-radius: 44px; }
          .front-page .member .inner .wrap-2 a::after {
            width: 8px;
            height: 16px;
            background-size: cover;
            right: 24px; }
          .front-page .member .inner .wrap-2 a span {
            position: relative;
            z-index: 2;
            left: 0;
            top: 0; } }
@media only screen and (min-width: 1280px) {
  .front-page #main_visual .copy-area {
    left: 50%;
    top: calc(50% + 56px);
    transform: translate(-600px, -50%); }
  .front-page #main_visual .scroll-down {
    display: block;
    background-color: #25348c;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    position: absolute;
    z-index: 2;
    left: 50%;
    bottom: 0;
    transform: translate(-50%, 50%);
    cursor: pointer; }
    .front-page #main_visual .scroll-down::after {
      content: '';
      display: block;
      background-image: url("../img/common/common_arrow-white.png");
      width: 8px;
      height: 16px;
      background-size: cover;
      position: absolute;
      z-index: 1;
      left: 50%;
      top: 30%;
      transform: translate(-50%, -50%) rotate(90deg);
      transition: opacity .4s; }
    .front-page #main_visual .scroll-down:hover::after {
      opacity: .48; }
  .front-page .intro::after {
    width: 1200px;
    left: 50%;
    transform: translate(-50%, 0); }
  .front-page .intro .inner {
    width: 1200px; }
  .front-page .clink .item .txt-wrap {
    width: 480px;
    left: 50%;
    transform: translate(-600px, -50%); }
  .front-page .clink .item.reverse .txt-wrap {
    right: 50%;
    transform: translate(600px, -50%); }
  .front-page .member .inner {
    width: 1200px; } }
@media (hover: hover) {
  .front-page #main_visual .copy-area .links a {
    transition: opacity .4s; }
    .front-page #main_visual .copy-area .links a:hover {
      opacity: .48; }
  .front-page .member .inner .wrap-2 a {
    overflow: hidden; }
    .front-page .member .inner .wrap-2 a::before {
      content: '';
      display: block;
      width: 0;
      height: 100%;
      background-color: #25348c;
      position: absolute;
      z-index: 2;
      right: 0;
      top: 0;
      transition: width .4s; }
    .front-page .member .inner .wrap-2 a span {
      position: relative;
      z-index: 2;
      left: 0;
      top: 0; }
    .front-page .member .inner .wrap-2 a:hover::after {
      background-image: url("../img/common/common_arrow-white.png"); }
    .front-page .member .inner .wrap-2 a:hover::before {
      width: 100%;
      left: 0;
      right: auto; }
    .front-page .member .inner .wrap-2 a:hover span {
      color: #fff; } }
/*//////////////////////////////////////////////////
固定ページ
//////////////////////////////////////////////////*/
.page-general .breadcrumbs {
  line-height: 1.4;
  padding: 16px 0;
  background-color: #25348c; }
  .page-general .breadcrumbs .inner {
    width: 88%;
    margin: 0 auto; }
.page-general .content .use-block-layout {
  width: 88%;
  max-width: 900px;
  margin: 0 auto;
  padding: 44px 0; }
  .page-general .content .use-block-layout.w-1200 {
    max-width: 1200px; }

@media only screen and (min-width: 640px) {
  .page-general .breadcrumbs {
    padding: 20px 0; }
    .page-general .breadcrumbs .inner {
      width: 90%; }
  .page-general .content .use-block-layout {
    width: 90%;
    padding: 66px 0; } }
@media only screen and (min-width: 960px) {
  .page-general .breadcrumbs {
    padding: 24px 0; }
    .page-general .breadcrumbs .inner {
      width: 92%; }
  .page-general .content .use-block-layout {
    width: 92%;
    padding: 88px 0; } }
@media only screen and (min-width: 1280px) {
  .page-general .breadcrumbs .inner {
    width: 1200px; }
  .page-general .content .use-block-layout.w-1200 {
    width: 1200px; } }
/*//////////////////////////////////////////////////
PRODUCTS
//////////////////////////////////////////////////*/
.page-products .content .products-title {
  line-height: 1;
  padding: 44px 0;
  position: relative;
  z-index: 1;
  left: 0;
  top: 0; }
  .page-products .content .products-title::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 2;
    left: 0;
    top: 0;
    background-color: #25348c;
    opacity: .88; }
  .page-products .content .products-title h2 {
    width: 88%;
    margin: 0 auto;
    position: relative;
    z-index: 3;
    left: 0;
    top: 0; }
  .page-products .content .products-title .img {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0; }
.page-products .content .item-wrap {
  width: 88%;
  margin: 0 auto;
  padding: 44px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 32px; }
  .page-products .content .item-wrap .item {
    width: 100%; }
    .page-products .content .item-wrap .item a {
      display: inline-block; }
      .page-products .content .item-wrap .item a .img {
        position: relative;
        z-index: 1;
        left: 0;
        top: 0; }
        .page-products .content .item-wrap .item a .img img {
          filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.32));
          position: relative;
          z-index: 1;
          left: 0;
          top: 0; }
        .page-products .content .item-wrap .item a .img .detail {
          line-height: 1;
          position: absolute;
          z-index: 2;
          left: 50%;
          top: 50%;
          transform: translate(-50%, -50%);
          opacity: 0; }
          .page-products .content .item-wrap .item a .img .detail .txt {
            display: inline-block;
            padding: 0 14px 0 0;
            position: relative;
            z-index: 1;
            left: 0;
            top: 0; }
            .page-products .content .item-wrap .item a .img .detail .txt::after {
              content: '';
              display: block;
              background-image: url("../img/common/common_arrow-blue.png");
              width: 6px;
              height: 12px;
              background-size: cover;
              position: absolute;
              z-index: 1;
              right: 0;
              top: 47.5%;
              transform: translate(0, -50%); }
      .page-products .content .item-wrap .item a h3 {
        margin: 12px 0 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center; }

@media only screen and (min-width: 640px) {
  .page-products .content .products-title {
    padding: 66px 0; }
    .page-products .content .products-title h2 {
      width: 90%; }
  .page-products .content .item-wrap {
    width: 90%;
    padding: 66px 0;
    gap: 40px; }
    .page-products .content .item-wrap .item {
      width: calc(50% - 20px); }
      .page-products .content .item-wrap .item a .img .detail .txt {
        padding: 0 17px 0 0; }
        .page-products .content .item-wrap .item a .img .detail .txt::after {
          width: 7px;
          height: 14px;
          background-size: cover; }
      .page-products .content .item-wrap .item a h3 {
        margin: 14px 0 0; } }
@media only screen and (min-width: 960px) {
  .page-products .content .products-title {
    padding: 88px 0; }
    .page-products .content .products-title h2 {
      width: 92%; }
  .page-products .content .item-wrap {
    width: 92%;
    padding: 88px 0;
    gap: 48px; }
    .page-products .content .item-wrap .item {
      width: calc(50% - 24px); }
      .page-products .content .item-wrap .item a .img .detail .txt {
        padding: 0 20px 0 0; }
        .page-products .content .item-wrap .item a .img .detail .txt::after {
          width: 8px;
          height: 16px;
          background-size: cover; }
      .page-products .content .item-wrap .item a h3 {
        margin: 16px 0 0; } }
@media only screen and (min-width: 1280px) {
  .page-products .content .products-title h2 {
    width: 1200px; }
  .page-products .content .item-wrap {
    width: 1200px; }
    .page-products .content .item-wrap .item {
      width: calc(33.3% - 32px); } }
@media (hover: hover) {
  .page-products .content .item-wrap .item a .img img {
    transition: opacity .4s; }
  .page-products .content .item-wrap .item a .img .detail {
    transition: opacity .4s; }
  .page-products .content .item-wrap .item a:hover .img img {
    opacity: .24; }
  .page-products .content .item-wrap .item a:hover .img .detail {
    opacity: 1; } }
/*//////////////////////////////////////////////////
PRODUCTS - single
//////////////////////////////////////////////////*/
.single-products .products-title {
  line-height: 1.4;
  padding: 44px 0;
  position: relative;
  z-index: 1;
  left: 0;
  top: 0; }
  .single-products .products-title::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 2;
    left: 0;
    top: 0;
    background-color: #25348c;
    opacity: .88; }
  .single-products .products-title h1, .single-products .products-title h2 {
    width: 88%;
    margin: 0 auto;
    position: relative;
    z-index: 3;
    left: 0;
    top: 0; }
  .single-products .products-title .back-all {
    display: none; }
  .single-products .products-title .img {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0; }
  .single-products .products-title.related .back-all {
    display: block;
    width: 88%;
    margin: 32px auto 0;
    position: relative;
    z-index: 3;
    left: 0;
    top: 0; }
    .single-products .products-title.related .back-all a {
      display: inline-block;
      padding: 0 17px 0 0;
      position: relative;
      z-index: 1;
      left: 0;
      top: 0; }
      .single-products .products-title.related .back-all a::after {
        content: '';
        display: block;
        background-image: url("../img/common/common_arrow-white.png");
        width: 5px;
        height: 10px;
        background-size: cover;
        position: absolute;
        z-index: 1;
        right: 0;
        top: 47.5%;
        transform: translate(0, -50%); }
.single-products .content .link-contact {
  line-height: 1; }
  .single-products .content .link-contact .link {
    padding: 32px 6% 16px; }
    .single-products .content .link-contact .link .flyer-catalog a {
      display: inline-block;
      margin: 0 16px 32px 0;
      padding: 0 0 0 32px;
      position: relative;
      z-index: 1;
      left: 0;
      top: 0; }
      .single-products .content .link-contact .link .flyer-catalog a::after {
        content: '';
        display: block;
        background-image: url("../img/common/common_pdf.png");
        width: 24px;
        height: 29px;
        background-size: cover;
        position: absolute;
        z-index: 1;
        left: 0;
        top: 47.5%;
        transform: translate(0, -50%); }
    .single-products .content .link-contact .link .parts-list a {
      color: #25348c;
      display: inline-block;
      margin: 0 16px 16px 0;
      padding: 0 12px 0 0;
      position: relative;
      z-index: 1;
      left: 0;
      top: 0; }
      .single-products .content .link-contact .link .parts-list a::after {
        content: '';
        display: block;
        background-image: url("../img/common/common_arrow-blue.png");
        width: 4px;
        height: 8px;
        background-size: cover;
        position: absolute;
        z-index: 1;
        right: 0;
        top: 47.5%;
        transform: translate(0, -50%); }
  .single-products .content .link-contact .contact {
    background-color: #25348c;
    padding: 32px 6%; }
    .single-products .content .link-contact .contact a {
      display: inline-block;
      padding: 0 18px 0 0;
      position: relative;
      z-index: 1;
      left: 0;
      top: 0; }
      .single-products .content .link-contact .contact a::after {
        content: '';
        display: block;
        background-image: url("../img/common/common_arrow-white.png");
        width: 6px;
        height: 12px;
        background-size: cover;
        position: absolute;
        z-index: 1;
        right: 0;
        top: 47.5%;
        transform: translate(0, -50%); }
.single-products .content .inner {
  width: 88%;
  margin: 0 auto;
  padding: 44px 0 0; }
  .single-products .content .inner .wrap-1 {
    padding: 0 0 44px; }
    .single-products .content .inner .wrap-1 .product-slider-wrap {
      max-width: 600px;
      margin: 32px auto 0; }
      .single-products .content .inner .wrap-1 .product-slider-wrap .product-slider {
        width: 100%;
        height: 58.6vw;
        max-height: 400px; }
        .single-products .content .inner .wrap-1 .product-slider-wrap .product-slider li {
          width: 100%;
          height: 100%;
          outline: none !important; }
      .single-products .content .inner .wrap-1 .product-slider-wrap .product-thumb {
        width: 100%;
        height: 14.65vw;
        max-height: 100px; }
        .single-products .content .inner .wrap-1 .product-slider-wrap .product-thumb li {
          width: 25%;
          height: 100%;
          outline: none !important;
          cursor: pointer;
          opacity: .48;
          transition: opacity .4s; }
          .single-products .content .inner .wrap-1 .product-slider-wrap .product-thumb li.slick-current {
            opacity: 1; }
        .single-products .content .inner .wrap-1 .product-slider-wrap .product-thumb .slick-track {
          transform: unset !important; }
  .single-products .content .inner .movie-wrap {
    padding: 32px 0;
    position: relative;
    z-index: 1;
    left: 0;
    top: 0; }
    .single-products .content .inner .movie-wrap::after {
      content: '';
      display: block;
      width: 100vw;
      height: 100%;
      background-color: #000;
      position: absolute;
      z-index: 1;
      left: -6vw;
      top: 0; }
    .single-products .content .inner .movie-wrap .movie-slider {
      width: 88%;
      max-width: 800px;
      margin: 0 auto;
      position: relative;
      z-index: 2;
      left: 0;
      top: 0; }
      .single-products .content .inner .movie-wrap .movie-slider .prev-arrow {
        background-image: url("../img/common/common_arrow-white.png");
        width: 6px;
        height: 12px;
        background-size: cover;
        position: absolute;
        z-index: 1;
        left: -18px;
        top: 50%;
        transform: scale(-1, 1);
        cursor: pointer; }
      .single-products .content .inner .movie-wrap .movie-slider .next-arrow {
        background-image: url("../img/common/common_arrow-white.png");
        width: 6px;
        height: 12px;
        background-size: cover;
        position: absolute;
        z-index: 1;
        right: -18px;
        top: 50%;
        cursor: pointer; }
      .single-products .content .inner .movie-wrap .movie-slider .item .wrap-youtube {
        position: relative;
        z-index: 1;
        left: 0;
        top: 0;
        padding: 0 0 56.25%;
        height: 0;
        overflow: hidden; }
        .single-products .content .inner .movie-wrap .movie-slider .item .wrap-youtube iframe {
          position: absolute;
          z-index: 1;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%; }
  .single-products .content .inner .wrap-2 {
    max-width: 600px;
    margin: 0 auto;
    padding: 44px 0;
    position: relative;
    z-index: 1;
    left: 0;
    top: 0; }
    .single-products .content .inner .wrap-2::before {
      content: '';
      display: block;
      width: 100vw;
      height: 100%;
      background-color: #eeeff6;
      position: absolute;
      z-index: 1;
      left: 50%;
      top: 0;
      transform: translate(-50%, 0); }
    .single-products .content .inner .wrap-2 .features {
      position: relative;
      z-index: 2;
      left: 0;
      top: 0; }
      .single-products .content .inner .wrap-2 .features h2 {
        line-height: 1.4; }
      .single-products .content .inner .wrap-2 .features ul {
        margin: 20px 0 0; }
        .single-products .content .inner .wrap-2 .features ul li {
          list-style: none;
          padding: 0 0 0 14px;
          margin: 8px 0 0;
          position: relative;
          z-index: 1;
          left: 0;
          top: 0; }
          .single-products .content .inner .wrap-2 .features ul li:first-of-type {
            margin: 0; }
          .single-products .content .inner .wrap-2 .features ul li::before {
            content: '';
            display: inline-block;
            background-color: #25348c;
            width: 8px;
            height: 8px;
            border-radius: 50%;
            position: absolute;
            z-index: 1;
            left: 0;
            top: 7px; }
          .single-products .content .inner .wrap-2 .features ul li a {
            color: #25348c;
            text-decoration: underline; }
          .single-products .content .inner .wrap-2 .features ul li.with-img {
            padding: 30px 0 30px 74px; }
            .single-products .content .inner .wrap-2 .features ul li.with-img::before {
              content: none; }
            .single-products .content .inner .wrap-2 .features ul li.with-img .img {
              width: 60px;
              height: 60px;
              border-radius: 50%;
              overflow: hidden;
              position: absolute;
              z-index: 1;
              left: 0;
              top: 50%;
              transform: translate(0, -50%); }
    .single-products .content .inner .wrap-2 .specs {
      margin: 44px 0 0;
      position: relative;
      z-index: 2;
      left: 0;
      top: 0; }
      .single-products .content .inner .wrap-2 .specs h2 {
        line-height: 1.4; }
      .single-products .content .inner .wrap-2 .specs table {
        width: 100%;
        max-width: 600px;
        margin: 20px 0 0; }
        .single-products .content .inner .wrap-2 .specs table tr th {
          display: block;
          padding: 12px;
          background-color: #e0e0e0; }
        .single-products .content .inner .wrap-2 .specs table tr td {
          display: block;
          text-align: center;
          padding: 12px;
          background-color: #fff; }
        .single-products .content .inner .wrap-2 .specs table sup {
          vertical-align: super;
          font-size: 1.0rem; }
      .single-products .content .inner .wrap-2 .specs .demo-btn {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        background-color: #ff6d00;
        border-radius: 2px;
        width: 100%;
        height: 56px;
        margin: 44px 0 0; }
.single-products .related-item .prev-arrow {
  background-image: url("../img/common/common_arrow-blue.png");
  width: 6px;
  height: 12px;
  background-size: cover;
  position: absolute;
  z-index: 1;
  left: -6px;
  top: 50%;
  transform: scale(-1, 1);
  cursor: pointer; }
.single-products .related-item .next-arrow {
  background-image: url("../img/common/common_arrow-blue.png");
  width: 6px;
  height: 12px;
  background-size: cover;
  position: absolute;
  z-index: 1;
  right: -6px;
  top: 50%;
  cursor: pointer; }
.single-products .related-item .item-wrap {
  width: 88%;
  margin: 0 auto;
  padding: 44px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 16px; }
  .single-products .related-item .item-wrap .item {
    width: calc(50% - 8px); }
    .single-products .related-item .item-wrap .item a {
      display: inline-block;
      position: relative;
      z-index: 1;
      left: 0;
      top: 0; }
      .single-products .related-item .item-wrap .item a .img {
        position: relative;
        z-index: 1;
        left: 0;
        top: 0; }
        .single-products .related-item .item-wrap .item a .img img {
          filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.32));
          position: relative;
          z-index: 1;
          left: 0;
          top: 0; }
        .single-products .related-item .item-wrap .item a .img .detail {
          line-height: 1;
          position: absolute;
          z-index: 2;
          left: 50%;
          top: 50%;
          transform: translate(-50%, -50%);
          opacity: 0; }
          .single-products .related-item .item-wrap .item a .img .detail .txt {
            display: inline-block;
            padding: 0 6px 0 0;
            position: relative;
            z-index: 1;
            left: 0;
            top: 0; }
            .single-products .related-item .item-wrap .item a .img .detail .txt::after {
              content: '';
              display: block;
              background-image: url("../img/common/common_arrow-blue.png");
              width: 3px;
              height: 6px;
              background-size: cover;
              position: absolute;
              z-index: 1;
              right: 0;
              top: 47.5%;
              transform: translate(0, -50%); }
      .single-products .related-item .item-wrap .item a h3 {
        margin: 8px 0 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center; }
  .single-products .related-item .item-wrap.related-slider {
    padding: 44px 16px 44px 32px; }
    .single-products .related-item .item-wrap.related-slider .item {
      margin: 0 16px 0 0;
      outline: none !important; }

@media only screen and (min-width: 640px) {
  .single-products .products-title {
    padding: 66px 0; }
    .single-products .products-title h1, .single-products .products-title h2 {
      width: 90%; }
    .single-products .products-title.related .back-all {
      width: 90%;
      margin: 40px auto 0; }
      .single-products .products-title.related .back-all a {
        padding: 0 18px 0 0; }
        .single-products .products-title.related .back-all a::after {
          width: 6px;
          height: 12px;
          background-size: cover; }
  .single-products .content .link-contact {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch; }
    .single-products .content .link-contact .link {
      width: 50%;
      padding: 40px 40px 20px 5vw;
      box-sizing: border-box; }
      .single-products .content .link-contact .link .flyer-catalog a {
        margin: 0 20px 40px 0; }
      .single-products .content .link-contact .link .parts-list a {
        margin: 0 20px 20px 0;
        padding: 0 13px 0 0; }
        .single-products .content .link-contact .link .parts-list a::after {
          width: 5px;
          height: 10px;
          background-size: cover; }
    .single-products .content .link-contact .contact {
      width: 50%;
      padding: 40px 0;
      box-sizing: border-box;
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center; }
      .single-products .content .link-contact .contact a {
        padding: 0 19px 0 0; }
        .single-products .content .link-contact .contact a::after {
          width: 7px;
          height: 14px;
          background-size: cover; }
  .single-products .content .inner {
    width: 90%;
    padding: 66px 0 0; }
    .single-products .content .inner .wrap-1 {
      padding: 0 0 66px; }
      .single-products .content .inner .wrap-1 .product-slider-wrap {
        margin: 40px auto 0; }
        .single-products .content .inner .wrap-1 .product-slider-wrap .product-slider {
          height: 60vw; }
        .single-products .content .inner .wrap-1 .product-slider-wrap .product-thumb {
          height: 15vw; }
    .single-products .content .inner .movie-wrap {
      padding: 40px 0; }
      .single-products .content .inner .movie-wrap::after {
        left: -5vw; }
      .single-products .content .inner .movie-wrap .movie-slider {
        width: 90%; }
        .single-products .content .inner .movie-wrap .movie-slider .prev-arrow {
          width: 7px;
          height: 14px;
          background-size: cover;
          left: -21px; }
        .single-products .content .inner .movie-wrap .movie-slider .next-arrow {
          width: 7px;
          height: 14px;
          background-size: cover;
          right: -21px; }
    .single-products .content .inner .wrap-2 {
      padding: 66px 0; }
      .single-products .content .inner .wrap-2 .features ul {
        margin: 26px 0 0; }
        .single-products .content .inner .wrap-2 .features ul li {
          padding: 0 0 0 16px; }
          .single-products .content .inner .wrap-2 .features ul li::before {
            top: 8px; }
          .single-products .content .inner .wrap-2 .features ul li.with-img {
            padding: 35px 0 35px 86px; }
            .single-products .content .inner .wrap-2 .features ul li.with-img .img {
              width: 70px;
              height: 70px; }
      .single-products .content .inner .wrap-2 .specs {
        margin: 66px 0 0; }
        .single-products .content .inner .wrap-2 .specs table {
          margin: 26px 0 0; }
          .single-products .content .inner .wrap-2 .specs table tr {
            border-bottom: solid 1px #cdcdcd; }
            .single-products .content .inner .wrap-2 .specs table tr:last-of-type {
              border: none; }
            .single-products .content .inner .wrap-2 .specs table tr th {
              display: table-cell;
              width: 50%;
              text-align: left;
              padding: 14px; }
            .single-products .content .inner .wrap-2 .specs table tr td {
              display: table-cell;
              width: 50%;
              text-align: left;
              padding: 14px; }
        .single-products .content .inner .wrap-2 .specs .demo-btn {
          border-radius: 3px;
          height: 60px;
          margin: 66px 0 0; }
  .single-products .related-item .item-wrap {
    width: 90%;
    padding: 66px 0;
    gap: 20px; }
    .single-products .related-item .item-wrap .prev-arrow {
      width: 7px;
      height: 14px;
      background-size: cover;
      left: -7px; }
    .single-products .related-item .item-wrap .next-arrow {
      width: 7px;
      height: 14px;
      background-size: cover;
      right: -7px; }
    .single-products .related-item .item-wrap .item {
      width: calc(25% - 15px); }
      .single-products .related-item .item-wrap .item a .img .detail .txt {
        padding: 0 8px 0 0; }
        .single-products .related-item .item-wrap .item a .img .detail .txt::after {
          width: 4px;
          height: 8px;
          background-size: cover; }
      .single-products .related-item .item-wrap .item a h3 {
        margin: 10px 0 0; }
    .single-products .related-item .item-wrap.related-slider {
      padding: 66px 20px 66px 40px; }
      .single-products .related-item .item-wrap.related-slider .item {
        margin: 0 20px 0 0; } }
@media only screen and (min-width: 960px) {
  .single-products .products-title {
    padding: 88px 0; }
    .single-products .products-title h1, .single-products .products-title h2 {
      width: 92%;
      padding: 0 480px 0 0;
      box-sizing: border-box; }
    .single-products .products-title .back-all {
      text-align: right;
      display: block;
      width: 480px;
      position: absolute;
      z-index: 3;
      right: 4%;
      top: 50%;
      transform: translate(0, -50%); }
      .single-products .products-title .back-all a {
        display: inline-block;
        padding: 0 19px 0 0;
        position: relative;
        z-index: 1;
        left: 0;
        top: 0; }
        .single-products .products-title .back-all a::after {
          content: '';
          display: block;
          background-image: url("../img/common/common_arrow-white.png");
          width: 7px;
          height: 14px;
          background-size: cover;
          position: absolute;
          z-index: 1;
          right: 0;
          top: 47.5%;
          transform: translate(0, -50%); }
    .single-products .products-title.related .back-all {
      width: 480px;
      margin: 0;
      position: absolute;
      left: auto;
      right: 4%;
      top: 50%;
      transform: translate(0, -50%); }
      .single-products .products-title.related .back-all a {
        padding: 0 19px 0 0; }
        .single-products .products-title.related .back-all a::after {
          width: 7px;
          height: 14px;
          background-size: cover; }
  .single-products .content .link-contact .link {
    width: calc(100% - 480px);
    padding: 48px 48px 24px 4vw; }
    .single-products .content .link-contact .link .flyer-catalog a {
      margin: 0 24px 48px 0; }
      .single-products .content .link-contact .link .flyer-catalog a::after {
        top: 40%; }
    .single-products .content .link-contact .link .parts-list a {
      margin: 0 24px 24px 0;
      padding: 0 14px 0 0; }
      .single-products .content .link-contact .link .parts-list a::after {
        width: 6px;
        height: 12px;
        background-size: cover; }
  .single-products .content .link-contact .contact {
    width: 480px;
    padding: 48px 0; }
    .single-products .content .link-contact .contact a {
      padding: 0 20px 0 0; }
      .single-products .content .link-contact .contact a::after {
        width: 8px;
        height: 16px;
        background-size: cover; }
  .single-products .content .inner {
    width: 92%;
    padding: 88px 0 0; }
    .single-products .content .inner .wrap-1 {
      padding: 0 0 88px;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-self: flex-start; }
      .single-products .content .inner .wrap-1 p {
        width: calc(50% - 44px); }
      .single-products .content .inner .wrap-1 .product-slider-wrap {
        width: calc(50% - 44px);
        margin: 0; }
        .single-products .content .inner .wrap-1 .product-slider-wrap .product-slider {
          height: calc(30.67vw - 29.3px); }
        .single-products .content .inner .wrap-1 .product-slider-wrap .product-thumb {
          height: calc(7.65vw - 7.325px); }
    .single-products .content .inner .movie-wrap {
      padding: 48px 0; }
      .single-products .content .inner .movie-wrap::after {
        left: 50%;
        transform: translate(-50%, 0); }
      .single-products .content .inner .movie-wrap .movie-slider {
        width: 92%; }
        .single-products .content .inner .movie-wrap .movie-slider .prev-arrow {
          width: 8px;
          height: 16px;
          background-size: cover;
          left: -24px; }
        .single-products .content .inner .movie-wrap .movie-slider .next-arrow {
          width: 8px;
          height: 16px;
          background-size: cover;
          right: -24px; }
    .single-products .content .inner .wrap-2 {
      max-width: 1200px;
      padding: 88px 0;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-self: flex-start; }
      .single-products .content .inner .wrap-2 .features {
        width: calc(50% - 44px); }
        .single-products .content .inner .wrap-2 .features ul {
          margin: 32px 0 0; }
          .single-products .content .inner .wrap-2 .features ul li {
            padding: 0 0 0 18px; }
            .single-products .content .inner .wrap-2 .features ul li::before {
              top: 9px; }
            .single-products .content .inner .wrap-2 .features ul li.with-img {
              padding: 40px 0 40px 98px; }
              .single-products .content .inner .wrap-2 .features ul li.with-img .img {
                width: 80px;
                height: 80px; }
      .single-products .content .inner .wrap-2 .specs {
        width: calc(50% - 44px);
        margin: 0; }
        .single-products .content .inner .wrap-2 .specs table {
          margin: 32px 0 0; }
          .single-products .content .inner .wrap-2 .specs table tr th {
            padding: 16px; }
          .single-products .content .inner .wrap-2 .specs table tr td {
            padding: 16px; }
        .single-products .content .inner .wrap-2 .specs .demo-btn {
          border-radius: 4px;
          height: 64px;
          margin: 88px 0 0; }
  .single-products .related-item .item-wrap {
    width: 92%;
    padding: 88px 0;
    gap: 24px; }
    .single-products .related-item .item-wrap .prev-arrow {
      width: 8px;
      height: 16px;
      background-size: cover;
      left: -8px; }
    .single-products .related-item .item-wrap .next-arrow {
      width: 8px;
      height: 16px;
      background-size: cover;
      right: -8px; }
    .single-products .related-item .item-wrap .item {
      width: calc(16.6% - 20px); }
      .single-products .related-item .item-wrap .item a .img .detail .txt {
        padding: 0 10px 0 0; }
        .single-products .related-item .item-wrap .item a .img .detail .txt::after {
          width: 5px;
          height: 10px;
          background-size: cover; }
      .single-products .related-item .item-wrap .item a h3 {
        margin: 12px 0 0; }
    .single-products .related-item .item-wrap.related-slider {
      padding: 88px 24px 88px 48px; }
      .single-products .related-item .item-wrap.related-slider .item {
        margin: 0 24px 0 0; } }
@media only screen and (min-width: 1280px) {
  .single-products .products-title h1, .single-products .products-title h2 {
    width: 1200px; }
  .single-products .products-title .back-all {
    right: 50%;
    transform: translate(600px, -50%); }
  .single-products .products-title.related .back-all {
    right: 50%;
    transform: translate(600px, -50%); }
  .single-products .content .link-contact .link {
    padding: 48px 48px 24px calc(50vw - 600px); }
    .single-products .content .link-contact .link .demo-btn {
      width: 320px; }
  .single-products .content .inner {
    width: 1200px; }
    .single-products .content .inner .wrap-1 .product-slider-wrap {
      width: calc(600px - 44px); }
      .single-products .content .inner .wrap-1 .product-slider-wrap .product-slider {
        height: calc(400.5px - 29.3px); }
      .single-products .content .inner .wrap-1 .product-slider-wrap .product-thumb {
        height: calc(100px- 7.325px); }
  .single-products .related-item .item-wrap {
    width: 1200px; }
    .single-products .related-item .item-wrap.related-slider {
      width: 92%; } }
@media (hover: hover) {
  .single-products .content .link-contact .link .flyer-catalog a {
    transition: opacity .4s; }
    .single-products .content .link-contact .link .flyer-catalog a:hover {
      opacity: .48; }
  .single-products .content .link-contact .link .parts-list a {
    transition: opacity .4s; }
    .single-products .content .link-contact .link .parts-list a:hover {
      opacity: .48; }
  .single-products .content .inner .wrap-2 ul li a {
    transition: opacity .4s; }
    .single-products .content .inner .wrap-2 ul li a:hover {
      opacity: .48; }
  .single-products .related-item .item-wrap .item a .img img {
    transition: opacity .4s; }
  .single-products .related-item .item-wrap .item a .img .detail {
    transition: opacity .4s; }
  .single-products .related-item .item-wrap .item a:hover .img img {
    opacity: .24; }
  .single-products .related-item .item-wrap .item a:hover .img .detail {
    opacity: 1; } }
/*//////////////////////////////////////////////////
PARTS & MAINTENANCE
//////////////////////////////////////////////////*/
.page-parts .anchors {
  padding: 16px 0; }
  .page-parts .anchors .item-wrap {
    line-height: 1;
    width: 88%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 12px; }
    .page-parts .anchors .item-wrap a {
      display: inline-block; }
.page-parts .content .parts-title {
  line-height: 1.4;
  padding: 44px 0;
  position: relative;
  z-index: 1;
  left: 0;
  top: 0; }
  .page-parts .content .parts-title::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    background-color: #25348c;
    opacity: .88; }
  .page-parts .content .parts-title h2 {
    width: 88%;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    left: 0;
    top: 0; }
.page-parts .content .item-wrap {
  width: 88%;
  margin: 0 auto;
  padding: 44px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 32px; }
  .page-parts .content .item-wrap .item {
    line-height: 1.4;
    width: calc(50% - 16px); }
    .page-parts .content .item-wrap .item .img {
      display: block; }
    .page-parts .content .item-wrap .item h3 {
      margin: 12px 0 0;
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center; }
    .page-parts .content .item-wrap .item .link-wrap {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center;
      gap: 12px;
      margin: 12px 0 0; }
      .page-parts .content .item-wrap .item .link-wrap a {
        display: inline-block;
        padding: 0 12px 0 0;
        position: relative;
        z-index: 1;
        left: 0;
        top: 0; }
        .page-parts .content .item-wrap .item .link-wrap a::after {
          content: '';
          display: block;
          background-image: url("../img/common/common_arrow-blue.png");
          width: 4px;
          height: 8px;
          background-size: cover;
          position: absolute;
          z-index: 1;
          right: 0;
          top: 47.5%;
          transform: translate(0, -50%); }

@media only screen and (min-width: 640px) {
  .page-parts .anchors {
    padding: 20px 0; }
    .page-parts .anchors .item-wrap {
      width: 90%;
      gap: 14px; }
  .page-parts .content .parts-title {
    padding: 66px 0; }
    .page-parts .content .parts-title h2 {
      width: 90%; }
  .page-parts .content .item-wrap {
    width: 90%;
    padding: 66px 0;
    gap: 40px; }
    .page-parts .content .item-wrap .item {
      width: calc(33.3% - 27px); }
      .page-parts .content .item-wrap .item h3 {
        margin: 14px 0 0; }
      .page-parts .content .item-wrap .item .link-wrap {
        gap: 14px;
        margin: 14px 0 0; }
        .page-parts .content .item-wrap .item .link-wrap a {
          padding: 0 13px 0 0; }
          .page-parts .content .item-wrap .item .link-wrap a::after {
            width: 5px;
            height: 10px;
            background-size: cover; } }
@media only screen and (min-width: 960px) {
  .page-parts .anchors {
    padding: 24px 0; }
    .page-parts .anchors .item-wrap {
      width: 92%;
      gap: 16px; }
  .page-parts .content .parts-title {
    padding: 88px 0; }
    .page-parts .content .parts-title h2 {
      width: 92%; }
  .page-parts .content .item-wrap {
    width: 92%;
    padding: 88px 0;
    gap: 48px; }
    .page-parts .content .item-wrap .item {
      width: calc(25% - 36px); }
      .page-parts .content .item-wrap .item h3 {
        margin: 16px 0 0; }
      .page-parts .content .item-wrap .item .link-wrap {
        gap: 12px;
        margin: 16px 0 0; }
        .page-parts .content .item-wrap .item .link-wrap a {
          padding: 0 14px 0 0; }
          .page-parts .content .item-wrap .item .link-wrap a::after {
            width: 6px;
            height: 12px;
            background-size: cover; } }
@media only screen and (min-width: 1280px) {
  .page-parts .anchors .item-wrap {
    width: 1200px; }
  .page-parts .content .parts-title h2 {
    width: 1200px; }
  .page-parts .content .item-wrap {
    width: 1200px; }
    .page-parts .content .item-wrap .item {
      width: calc(20% - 39px); } }
/*//////////////////////////////////////////////////
CONTACT US
//////////////////////////////////////////////////*/
.wpcf7 .form-item {
  line-height: 1;
  padding: 16px 0; }
  .wpcf7 .form-item .label {
    font-size: 1.7rem !important;
    transform: scale(0.85); }
    .wpcf7 .form-item .label .required {
      display: inline-block;
      margin: 0 0 0 12px;
      color: #f44336; }
  .wpcf7 .form-item input {
    display: block;
    width: 100%;
    padding: 16px;
    box-sizing: border-box;
    background-color: #eeeff6;
    border: solid 1px #e0e0e0;
    margin: 12px 0 0;
    font-size: 1.7rem !important;
    transform: scale(0.85); }
  .wpcf7 .form-item textarea {
    display: block;
    width: 100%;
    height: 160px;
    padding: 16px;
    box-sizing: border-box;
    background-color: #eeeff6;
    border: solid 1px #e0e0e0;
    margin: 12px 0 0;
    font-size: 1.7rem !important;
    transform: scale(0.85); }
.wpcf7 .form-submit {
  line-height: 1;
  text-align: center;
  font-size: 1.6rem; }
  .wpcf7 .form-submit .privacy-wrap {
    transform: scale(0.85); }
    .wpcf7 .form-submit .privacy-wrap .checkbox {
      display: flex;
      flex-wrap: wrap;
      justify-content: flex-start;
      align-items: flex-start; }
      .wpcf7 .form-submit .privacy-wrap .checkbox input[type="checkbox"] {
        background-image: url("../img/common/common_check.svg");
        width: 16px;
        height: 16px;
        background-size: cover;
        margin: 6px 0 0;
        position: relative;
        z-index: 1;
        left: -12px;
        top: 2px; }
      .wpcf7 .form-submit .privacy-wrap .checkbox input[type="checkbox"]:checked {
        background-image: url("../img/common/common_check-active.svg");
        width: 16px;
        height: 16px;
        background-size: cover; }
      .wpcf7 .form-submit .privacy-wrap .checkbox .privacy {
        width: 120px; }
      .wpcf7 .form-submit .privacy-wrap .checkbox label {
        line-height: 1.7;
        text-align: left;
        width: calc(100% - 120px); }
  .wpcf7 .form-submit .submit-wrap {
    width: 100%;
    text-align: center;
    margin: 32px 0 0; }
    .wpcf7 .form-submit .submit-wrap p span span, .wpcf7 .form-submit .submit-wrap p span br {
      display: none; }
  .wpcf7 .form-submit input[type="submit"] {
    display: inline-block;
    width: 240px;
    padding: 12px 0;
    border: solid 1px #333;
    border-radius: 40px;
    background-color: #25348c;
    color: #fff; }
.wpcf7 .wpcf7-not-valid-tip {
  color: #f44336;
  margin: 8px 0 0; }
.wpcf7 .wpcf7-response-output {
  background-color: #25348c;
  color: #fff;
  border: none !important;
  padding: 16px;
  text-align: center; }

@media only screen and (min-width: 640px) {
  .wpcf7 .form-item .label {
    transform: scale(0.925); }
  .wpcf7 .form-item input {
    transform: scale(0.925); }
  .wpcf7 .form-item textarea {
    height: 200px;
    transform: scale(0.925); }
  .wpcf7 .form-submit {
    margin: 8px 0 0; }
    .wpcf7 .form-submit .privacy-wrap {
      transform: scale(0.925); }
    .wpcf7 .form-submit .submit-wrap {
      margin: 40px 0 0; }
    .wpcf7 .form-submit input[type="submit"] {
      width: 280px;
      padding: 14px 0; } }
@media only screen and (min-width: 960px) {
  .wpcf7 .form-item .label {
    transform: scale(1); }
  .wpcf7 .form-item input {
    transform: scale(1); }
  .wpcf7 .form-item textarea {
    height: 240px;
    transform: scale(1); }
  .wpcf7 .form-submit {
    margin: 16px 0 0; }
    .wpcf7 .form-submit .privacy-wrap {
      transform: scale(1); }
    .wpcf7 .form-submit .submit-wrap {
      margin: 48px 0 0; }
    .wpcf7 .form-submit input[type="submit"] {
      width: 320px;
      padding: 16px 0; } }
/*//////////////////////////////////////////////////
ブロックレイアウト
//////////////////////////////////////////////////*/
.use-block-layout h2 {
  line-height: 1.4;
  font-size: 2.0rem;
  color: #25348c;
  margin: 0 0 20px;
  padding: 0 0 12px;
  position: relative;
  z-index: 1;
  left: 0;
  top: 0;
  font-family: "Poppins-SB", sans-serif !important;
  font-weight: 600 !important; }
  .use-block-layout h2::before {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-color: #25348c;
    position: absolute;
    z-index: 1;
    left: 0;
    bottom: 0; }
  .use-block-layout h2::after {
    content: '';
    display: block;
    width: 80px;
    height: 3px;
    background-color: #25348c;
    position: absolute;
    z-index: 2;
    left: 0;
    bottom: 0; }
.use-block-layout h3 {
  font-size: 1.6rem;
  color: #25348c;
  margin: 0 0 16px;
  font-family: "Poppins-SB", sans-serif !important;
  font-weight: 600 !important; }
.use-block-layout strong {
  font-family: "Poppins-SB", sans-serif !important;
  font-weight: 600 !important; }
.use-block-layout em {
  font-style: italic; }
.use-block-layout sup {
  vertical-align: super;
  font-size: 1.0rem; }
.use-block-layout sub {
  vertical-align: sub;
  font-size: 1.0rem; }
.use-block-layout figcaption {
  font-size: 1.0rem; }
.use-block-layout ol {
  display: inline-block;
  text-align: left; }
  .use-block-layout ol li {
    list-style: none;
    counter-increment: cnt;
    position: relative;
    z-index: 1;
    left: 0;
    top: 0;
    padding: 0 0 0 24px;
    margin: 8px 0 0; }
    .use-block-layout ol li:first-of-type {
      margin: 0; }
    .use-block-layout ol li::before {
      content: counter(cnt) "　";
      display: inline-block;
      position: absolute;
      z-index: 1;
      left: 0;
      top: 0; }
.use-block-layout ul {
  display: inline-block;
  text-align: left; }
  .use-block-layout ul li {
    list-style: none;
    position: relative;
    z-index: 1;
    left: 0;
    top: 0;
    padding: 0 0 0 14px;
    margin: 8px 0 0; }
    .use-block-layout ul li:first-of-type {
      margin: 0; }
    .use-block-layout ul li::before {
      content: '';
      display: inline-block;
      background-color: #25348c;
      width: 8px;
      height: 8px;
      border-radius: 50%;
      position: absolute;
      z-index: 1;
      left: 0;
      top: 8px; }
  .use-block-layout ul.attention li {
    padding: 0 0 0 18px; }
    .use-block-layout ul.attention li::before {
      content: '※';
      background: none;
      width: auto;
      height: auto;
      border-radius: 0;
      top: 0; }
  .use-block-layout ul.attention-2 li {
    padding: 0 0 0 18px; }
    .use-block-layout ul.attention-2 li::before {
      content: '*';
      background: none;
      width: auto;
      height: auto;
      border-radius: 0;
      top: 0; }
.use-block-layout p a, .use-block-layout li a, .use-block-layout table a {
  text-decoration: underline;
  color: #25348c !important; }
.use-block-layout hr {
  width: 100%;
  border: none;
  border-top: solid 1px #e0e0e0; }
.use-block-layout .hr-half {
  width: 50%;
  margin: 0 auto; }
.use-block-layout .hr-quarter {
  width: 25%;
  margin: 0 auto; }
.use-block-layout .wp-block-image {
  max-width: 100%;
  height: auto; }
  .use-block-layout .wp-block-image img {
    max-width: 100%;
    height: auto; }
.use-block-layout .size-thumbnail {
  max-width: 50% !important; }
.use-block-layout .wp-block-gallery .blocks-gallery-grid {
  padding: 0;
  margin: 0; }
  .use-block-layout .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item {
    padding: 0;
    margin: 1px; }
    .use-block-layout .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item::before {
      content: none; }
.use-block-layout .wp-block-columns .wp-block-column .wp-block-image {
  margin: 0; }
.use-block-layout .wp-block-table {
  width: 100%;
  font-size: 1.2rem;
  border-top: solid 1px #e0e0e0; }
  .use-block-layout .wp-block-table tr {
    border-bottom: solid 1px #e0e0e0; }
    .use-block-layout .wp-block-table tr td {
      vertical-align: top;
      padding: 12px 12px 12px 0;
      border: none; }
      .use-block-layout .wp-block-table tr td:first-of-type {
        word-break: keep-all;
        white-space: nowrap; }
.use-block-layout .wp-block-video {
  width: 100%; }
  .use-block-layout .wp-block-video video {
    outline: none; }
.use-block-layout .wrap-youtube {
  position: relative;
  z-index: 1;
  left: 0;
  top: 0;
  padding: 0 0 56.25%;
  height: 0;
  overflow: hidden; }
  .use-block-layout .wrap-youtube iframe {
    position: absolute;
    z-index: 1;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }
.use-block-layout .movie-item .video-js {
  width: 100%;
  height: auto;
  outline: none; }
.use-block-layout .flex-txt {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center; }
.use-block-layout .only-pc {
  display: none; }
.use-block-layout .youtube-wrap {
  padding: 32px 0;
  position: relative;
  z-index: 1;
  left: 0;
  top: 0; }
  .use-block-layout .youtube-wrap::after {
    content: '';
    display: block;
    width: 100vw;
    height: 100%;
    background-color: #000;
    position: absolute;
    z-index: 1;
    left: -6vw;
    top: 0; }
  .use-block-layout .youtube-wrap .movie-slider {
    width: 88%;
    max-width: 800px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    left: 0;
    top: 0; }
    .use-block-layout .youtube-wrap .movie-slider .prev-arrow {
      background-image: url("../img/common/common_arrow-white.png");
      width: 6px;
      height: 12px;
      background-size: cover;
      position: absolute;
      z-index: 1;
      left: -18px;
      top: 50%;
      transform: scale(-1, 1);
      cursor: pointer; }
    .use-block-layout .youtube-wrap .movie-slider .next-arrow {
      background-image: url("../img/common/common_arrow-white.png");
      width: 6px;
      height: 12px;
      background-size: cover;
      position: absolute;
      z-index: 1;
      right: -18px;
      top: 50%;
      cursor: pointer; }
    .use-block-layout .youtube-wrap .movie-slider .item .wrap-youtube {
      position: relative;
      z-index: 1;
      left: 0;
      top: 0;
      padding: 0 0 56.25%;
      height: 0;
      overflow: hidden; }
      .use-block-layout .youtube-wrap .movie-slider .item .wrap-youtube iframe {
        position: absolute;
        z-index: 1;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%; }

@media only screen and (min-width: 640px) {
  .use-block-layout h2 {
    font-size: 2.4rem;
    margin: 0 0 26px;
    padding: 0 0 14px; }
    .use-block-layout h2::after {
      width: 120px; }
  .use-block-layout h3 {
    font-size: 1.8rem;
    margin: 0 0 20px; }
  .use-block-layout figcaption {
    font-size: 1.1rem; }
  .use-block-layout ol li {
    padding: 0 0 0 26px; }
  .use-block-layout ul li {
    padding: 0 0 0 16px; }
    .use-block-layout ul li::before {
      top: 9px; }
  .use-block-layout ul.attention li {
    padding: 0 0 0 20px; }
  .use-block-layout .size-thumbnail {
    max-width: 25% !important; }
  .use-block-layout .size-medium {
    max-width: 50% !important; }
  .use-block-layout .wp-block-table {
    font-size: 1.3rem; }
    .use-block-layout .wp-block-table tr td {
      padding: 14px 14px 14px 0; }
  .use-block-layout .only-sp {
    display: none; }
  .use-block-layout .only-pc {
    display: block; }
  .use-block-layout .youtube-wrap {
    padding: 40px 0; }
    .use-block-layout .youtube-wrap::after {
      left: -5vw; }
    .use-block-layout .youtube-wrap .movie-slider {
      width: 90%; }
      .use-block-layout .youtube-wrap .movie-slider .prev-arrow {
        width: 7px;
        height: 14px;
        background-size: cover;
        left: -21px; }
      .use-block-layout .youtube-wrap .movie-slider .next-arrow {
        width: 7px;
        height: 14px;
        background-size: cover;
        right: -21px; } }
@media only screen and (min-width: 960px) {
  .use-block-layout h2 {
    font-size: 2.8rem;
    margin: 0 0 32px;
    padding: 0 0 16px; }
    .use-block-layout h2::after {
      width: 160px; }
  .use-block-layout h3 {
    font-size: 2.0rem;
    margin: 0 0 24px; }
  .use-block-layout figcaption {
    font-size: 1.2rem; }
  .use-block-layout ol li {
    padding: 0 0 0 28px; }
  .use-block-layout ul li {
    padding: 0 0 0 18px; }
    .use-block-layout ul li::before {
      top: 10px; }
  .use-block-layout ul.attention li {
    padding: 0 0 0 22px; }
  .use-block-layout .wp-block-table {
    font-size: 1.4rem; }
    .use-block-layout .wp-block-table tr td {
      padding: 16px 16px 16px 0; }
  .use-block-layout .youtube-wrap {
    padding: 48px 0; }
    .use-block-layout .youtube-wrap::after {
      left: 50%;
      transform: translate(-50%, 0); }
    .use-block-layout .youtube-wrap .movie-slider {
      width: 92%; }
      .use-block-layout .youtube-wrap .movie-slider .prev-arrow {
        width: 8px;
        height: 16px;
        background-size: cover;
        left: -24px; }
      .use-block-layout .youtube-wrap .movie-slider .next-arrow {
        width: 8px;
        height: 16px;
        background-size: cover;
        right: -24px; } }
@media (hover: hover) {
  .use-block-layout p a, .use-block-layout li a, .use-block-layout table a {
    transition: opacity .4s; }
    .use-block-layout p a:hover, .use-block-layout li a:hover, .use-block-layout table a:hover {
      opacity: .48; } }
