@charset "UTF-8";
:root {
  --color_text: #483A3A;
  --color_textGrayp: #898989;
  --color_main: #D82316;
  --color_mainDark: #B21515;
  --color_white: #FFFFFF;
  --color_gray: #FAFAFA;
  --color_border: #DCDCDC;
  --fw_r: 400;
  --fw_m: 500;
  --fw_sb: 600;
  --fw_b: 700;
  --ff_ja: "Noto Sans JP", sans-serif;
  --ff_en: "Barlow Condensed", sans-serif;
  --ff_awesome: "Font Awesome 6 Free";
  --header_tempHeight: 90px;
  --header_upperHeight: 50px;
  --fs_14: 13px;
  --fs_16: 14px;
  --fs_18: 15px;
  --fs_20: 16px;
  --fs_24: 17px;
  --fs_26: 18px;
  --fs_28: 19px;
  --fs_30: 20px;
  --fs_32: 22px;
  --fs_36: 24px;
  --fs_en_40: 28px;
  --fs_en_60: 36px;
  --fs_en_70: 40px;
}
@media all and (min-width: 576px) {
  :root {
    --fs_14: 14px;
    --fs_16: 15px;
    --fs_18: 16px;
    --fs_20: 18px;
    --fs_24: 19px;
    --fs_26: 20px;
    --fs_28: 22px;
    --fs_30: 24px;
    --fs_32: 26px;
    --fs_36: 28px;
    --fs_en_40: 36px;
    --fs_en_60: 46px;
    --fs_en_70: 56px;
  }
}
@media all and (min-width: 768px) {
  :root {
    --header_tempHeight: 120px;
    --header_upperHeight: 70px;
    --fs_16: 16px;
    --fs_18: 18px;
    --fs_20: 20px;
    --fs_24: 22px;
    --fs_26: 24px;
    --fs_28: 26px;
    --fs_30: 28px;
    --fs_32: 30px;
    --fs_36: 34px;
    --fs_en_40: 36px;
    --fs_en_60: 54px;
    --fs_en_70: 60px;
  }
}
@media all and (min-width: 992px) {
  :root {
    --fs_24: 24px;
    --fs_26: 26px;
    --fs_28: 28px;
    --fs_30: 30px;
    --fs_32: 32px;
    --fs_36: 36px;
    --fs_en_40: 40px;
    --fs_en_60: 60px;
    --fs_en_70: 70px;
  }
}
@media all and (min-width: 1200px) {
  :root {
    --header_tempHeight: 170px;
    --header_upperHeight: 110px;
  }
}
/* ヘルパーclassセット */
.color-text {
  color: #483A3A !important;
}
.bg-text {
  background-color: #483A3A !important;
}
.color-textGrayp {
  color: #898989 !important;
}
.bg-textGrayp {
  background-color: #898989 !important;
}
.color-main {
  color: #D82316 !important;
}
.bg-main {
  background-color: #D82316 !important;
}
.color-mainDark {
  color: #B21515 !important;
}
.bg-mainDark {
  background-color: #B21515 !important;
}
.color-white {
  color: #FFFFFF !important;
}
.bg-white {
  background-color: #FFFFFF !important;
}
.color-gray {
  color: #FAFAFA !important;
}
.bg-gray {
  background-color: #FAFAFA !important;
}
.color-border {
  color: #DCDCDC !important;
}
.bg-border {
  background-color: #DCDCDC !important;
}
.fw-r {
  font-weight: 400 !important;
}
.fw-m {
  font-weight: 500 !important;
}
.fw-sb {
  font-weight: 600 !important;
}
.fw-b {
  font-weight: 700 !important;
}
.ff-ja {
  font-family: "Noto Sans JP", sans-serif !important;
}
.ff-en {
  font-family: "Barlow Condensed", sans-serif !important;
}
.ff-awesome {
  font-family: "Font Awesome 6 Free" !important;
}
/* フォントサイズ */
.fs-14 {
  font-size: var(--fs_14) !important;
}
.fs-16 {
  font-size: var(--fs_16) !important;
}
.fs-18 {
  font-size: var(--fs_18) !important;
}
.fs-20 {
  font-size: var(--fs_20) !important;
}
.fs-24 {
  font-size: var(--fs_24) !important;
}
.fs-26 {
  font-size: var(--fs_26) !important;
}
.fs-28 {
  font-size: var(--fs_28) !important;
}
.fs-32 {
  font-size: var(--fs_32) !important;
}
/* 行間・文字間 */
.lh-1 {
  line-height: 1 !important;
}
.lh-1x5 {
  line-height: 1.5 !important;
}
.ls-01 {
  letter-spacing: 0.1em !important;
}
.ls-005 {
  letter-spacing: 0.05em !important;
}
/* 行揃え */
.text-left {
  text-align: left !important;
}
.text-center {
  text-align: center !important;
}
.text-right {
  text-align: right !important;
}
@media all and (min-width: 576px) {
  .text-smleft {
    text-align: left !important;
  }
  .text-smcenter {
    text-align: center !important;
  }
  .text-smright {
    text-align: right !important;
  }
}
@media all and (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }
  .text-md-center {
    text-align: center !important;
  }
  .text-md-right {
    text-align: right !important;
  }
}
@media all and (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
}
@media all and (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
}
/* ブレークポイントで間隔変動 */
.mt-0 {
  margin-top: 0px !important;
}
.mb-0 {
  margin-bottom: 0px !important;
}
.mr-0 {
  margin-right: 0px !important;
}
.ml-0 {
  margin-left: 0px !important;
}
.mt-n0 {
  margin-top: -0px !important;
}
.mb-n0 {
  margin-bottom: -0px !important;
}
.mr-n0 {
  margin-right: -0px !important;
}
.ml-n0 {
  margin-left: -0px !important;
}
.pt-0 {
  padding-top: 0px !important;
}
.pb-0 {
  padding-bottom: 0px !important;
}
.pr-0 {
  padding-right: 0px !important;
}
.pl-0 {
  padding-left: 0px !important;
}
.mt-5 {
  margin-top: 5px !important;
}
.mb-5 {
  margin-bottom: 5px !important;
}
.mr-5 {
  margin-right: 5px !important;
}
.ml-5 {
  margin-left: 5px !important;
}
.mt-n5 {
  margin-top: -5px !important;
}
.mb-n5 {
  margin-bottom: -5px !important;
}
.mr-n5 {
  margin-right: -5px !important;
}
.ml-n5 {
  margin-left: -5px !important;
}
.pt-5 {
  padding-top: 5px !important;
}
.pb-5 {
  padding-bottom: 5px !important;
}
.pr-5 {
  padding-right: 5px !important;
}
.pl-5 {
  padding-left: 5px !important;
}
.mt-10 {
  margin-top: 10px !important;
}
.mb-10 {
  margin-bottom: 10px !important;
}
.mr-10 {
  margin-right: 10px !important;
}
.ml-10 {
  margin-left: 10px !important;
}
.mt-n10 {
  margin-top: -10px !important;
}
.mb-n10 {
  margin-bottom: -10px !important;
}
.mr-n10 {
  margin-right: -10px !important;
}
.ml-n10 {
  margin-left: -10px !important;
}
.pt-10 {
  padding-top: 10px !important;
}
.pb-10 {
  padding-bottom: 10px !important;
}
.pr-10 {
  padding-right: 10px !important;
}
.pl-10 {
  padding-left: 10px !important;
}
.mt-15 {
  margin-top: 10px !important;
}
.mb-15 {
  margin-bottom: 10px !important;
}
.mr-15 {
  margin-right: 10px !important;
}
.ml-15 {
  margin-left: 10px !important;
}
.mt-n15 {
  margin-top: -10px !important;
}
.mb-n15 {
  margin-bottom: -10px !important;
}
.mr-n15 {
  margin-right: -10px !important;
}
.ml-n15 {
  margin-left: -10px !important;
}
.pt-15 {
  padding-top: 10px !important;
}
.pb-15 {
  padding-bottom: 10px !important;
}
.pr-15 {
  padding-right: 10px !important;
}
.pl-15 {
  padding-left: 10px !important;
}
.mt-20 {
  margin-top: 15px !important;
}
.mb-20 {
  margin-bottom: 15px !important;
}
.mr-20 {
  margin-right: 15px !important;
}
.ml-20 {
  margin-left: 15px !important;
}
.mt-n20 {
  margin-top: -15px !important;
}
.mb-n20 {
  margin-bottom: -15px !important;
}
.mr-n20 {
  margin-right: -15px !important;
}
.ml-n20 {
  margin-left: -15px !important;
}
.pt-20 {
  padding-top: 15px !important;
}
.pb-20 {
  padding-bottom: 15px !important;
}
.pr-20 {
  padding-right: 15px !important;
}
.pl-20 {
  padding-left: 15px !important;
}
.mt-25 {
  margin-top: 20px !important;
}
.mb-25 {
  margin-bottom: 20px !important;
}
.mr-25 {
  margin-right: 20px !important;
}
.ml-25 {
  margin-left: 20px !important;
}
.mt-n25 {
  margin-top: -20px !important;
}
.mb-n25 {
  margin-bottom: -20px !important;
}
.mr-n25 {
  margin-right: -20px !important;
}
.ml-n25 {
  margin-left: -20px !important;
}
.pt-25 {
  padding-top: 20px !important;
}
.pb-25 {
  padding-bottom: 20px !important;
}
.pr-25 {
  padding-right: 20px !important;
}
.pl-25 {
  padding-left: 20px !important;
}
.mt-30 {
  margin-top: 25px !important;
}
.mb-30 {
  margin-bottom: 25px !important;
}
.mr-30 {
  margin-right: 25px !important;
}
.ml-30 {
  margin-left: 25px !important;
}
.mt-n30 {
  margin-top: -25px !important;
}
.mb-n30 {
  margin-bottom: -25px !important;
}
.mr-n30 {
  margin-right: -25px !important;
}
.ml-n30 {
  margin-left: -25px !important;
}
.pt-30 {
  padding-top: 25px !important;
}
.pb-30 {
  padding-bottom: 25px !important;
}
.pr-30 {
  padding-right: 25px !important;
}
.pl-30 {
  padding-left: 25px !important;
}
.mt-35 {
  margin-top: 25px !important;
}
.mb-35 {
  margin-bottom: 25px !important;
}
.mr-35 {
  margin-right: 25px !important;
}
.ml-35 {
  margin-left: 25px !important;
}
.mt-n35 {
  margin-top: -25px !important;
}
.mb-n35 {
  margin-bottom: -25px !important;
}
.mr-n35 {
  margin-right: -25px !important;
}
.ml-n35 {
  margin-left: -25px !important;
}
.pt-35 {
  padding-top: 25px !important;
}
.pb-35 {
  padding-bottom: 25px !important;
}
.pr-35 {
  padding-right: 25px !important;
}
.pl-35 {
  padding-left: 25px !important;
}
.mt-40 {
  margin-top: 30px !important;
}
.mb-40 {
  margin-bottom: 30px !important;
}
.mr-40 {
  margin-right: 30px !important;
}
.ml-40 {
  margin-left: 30px !important;
}
.mt-n40 {
  margin-top: -30px !important;
}
.mb-n40 {
  margin-bottom: -30px !important;
}
.mr-n40 {
  margin-right: -30px !important;
}
.ml-n40 {
  margin-left: -30px !important;
}
.pt-40 {
  padding-top: 30px !important;
}
.pb-40 {
  padding-bottom: 30px !important;
}
.pr-40 {
  padding-right: 30px !important;
}
.pl-40 {
  padding-left: 30px !important;
}
.mt-45 {
  margin-top: 35px !important;
}
.mb-45 {
  margin-bottom: 35px !important;
}
.mr-45 {
  margin-right: 35px !important;
}
.ml-45 {
  margin-left: 35px !important;
}
.mt-n45 {
  margin-top: -35px !important;
}
.mb-n45 {
  margin-bottom: -35px !important;
}
.mr-n45 {
  margin-right: -35px !important;
}
.ml-n45 {
  margin-left: -35px !important;
}
.pt-45 {
  padding-top: 35px !important;
}
.pb-45 {
  padding-bottom: 35px !important;
}
.pr-45 {
  padding-right: 35px !important;
}
.pl-45 {
  padding-left: 35px !important;
}
.mt-50 {
  margin-top: 40px !important;
}
.mb-50 {
  margin-bottom: 40px !important;
}
.mr-50 {
  margin-right: 40px !important;
}
.ml-50 {
  margin-left: 40px !important;
}
.mt-n50 {
  margin-top: -40px !important;
}
.mb-n50 {
  margin-bottom: -40px !important;
}
.mr-n50 {
  margin-right: -40px !important;
}
.ml-n50 {
  margin-left: -40px !important;
}
.pt-50 {
  padding-top: 40px !important;
}
.pb-50 {
  padding-bottom: 40px !important;
}
.pr-50 {
  padding-right: 40px !important;
}
.pl-50 {
  padding-left: 40px !important;
}
.mt-55 {
  margin-top: 40px !important;
}
.mb-55 {
  margin-bottom: 40px !important;
}
.mr-55 {
  margin-right: 40px !important;
}
.ml-55 {
  margin-left: 40px !important;
}
.mt-n55 {
  margin-top: -40px !important;
}
.mb-n55 {
  margin-bottom: -40px !important;
}
.mr-n55 {
  margin-right: -40px !important;
}
.ml-n55 {
  margin-left: -40px !important;
}
.pt-55 {
  padding-top: 40px !important;
}
.pb-55 {
  padding-bottom: 40px !important;
}
.pr-55 {
  padding-right: 40px !important;
}
.pl-55 {
  padding-left: 40px !important;
}
.mt-60 {
  margin-top: 45px !important;
}
.mb-60 {
  margin-bottom: 45px !important;
}
.mr-60 {
  margin-right: 45px !important;
}
.ml-60 {
  margin-left: 45px !important;
}
.mt-n60 {
  margin-top: -45px !important;
}
.mb-n60 {
  margin-bottom: -45px !important;
}
.mr-n60 {
  margin-right: -45px !important;
}
.ml-n60 {
  margin-left: -45px !important;
}
.pt-60 {
  padding-top: 45px !important;
}
.pb-60 {
  padding-bottom: 45px !important;
}
.pr-60 {
  padding-right: 45px !important;
}
.pl-60 {
  padding-left: 45px !important;
}
.mt-65 {
  margin-top: 50px !important;
}
.mb-65 {
  margin-bottom: 50px !important;
}
.mr-65 {
  margin-right: 50px !important;
}
.ml-65 {
  margin-left: 50px !important;
}
.mt-n65 {
  margin-top: -50px !important;
}
.mb-n65 {
  margin-bottom: -50px !important;
}
.mr-n65 {
  margin-right: -50px !important;
}
.ml-n65 {
  margin-left: -50px !important;
}
.pt-65 {
  padding-top: 50px !important;
}
.pb-65 {
  padding-bottom: 50px !important;
}
.pr-65 {
  padding-right: 50px !important;
}
.pl-65 {
  padding-left: 50px !important;
}
.mt-70 {
  margin-top: 55px !important;
}
.mb-70 {
  margin-bottom: 55px !important;
}
.mr-70 {
  margin-right: 55px !important;
}
.ml-70 {
  margin-left: 55px !important;
}
.mt-n70 {
  margin-top: -55px !important;
}
.mb-n70 {
  margin-bottom: -55px !important;
}
.mr-n70 {
  margin-right: -55px !important;
}
.ml-n70 {
  margin-left: -55px !important;
}
.pt-70 {
  padding-top: 55px !important;
}
.pb-70 {
  padding-bottom: 55px !important;
}
.pr-70 {
  padding-right: 55px !important;
}
.pl-70 {
  padding-left: 55px !important;
}
.mt-75 {
  margin-top: 55px !important;
}
.mb-75 {
  margin-bottom: 55px !important;
}
.mr-75 {
  margin-right: 55px !important;
}
.ml-75 {
  margin-left: 55px !important;
}
.mt-n75 {
  margin-top: -55px !important;
}
.mb-n75 {
  margin-bottom: -55px !important;
}
.mr-n75 {
  margin-right: -55px !important;
}
.ml-n75 {
  margin-left: -55px !important;
}
.pt-75 {
  padding-top: 55px !important;
}
.pb-75 {
  padding-bottom: 55px !important;
}
.pr-75 {
  padding-right: 55px !important;
}
.pl-75 {
  padding-left: 55px !important;
}
.mt-80 {
  margin-top: 60px !important;
}
.mb-80 {
  margin-bottom: 60px !important;
}
.mr-80 {
  margin-right: 60px !important;
}
.ml-80 {
  margin-left: 60px !important;
}
.mt-n80 {
  margin-top: -60px !important;
}
.mb-n80 {
  margin-bottom: -60px !important;
}
.mr-n80 {
  margin-right: -60px !important;
}
.ml-n80 {
  margin-left: -60px !important;
}
.pt-80 {
  padding-top: 60px !important;
}
.pb-80 {
  padding-bottom: 60px !important;
}
.pr-80 {
  padding-right: 60px !important;
}
.pl-80 {
  padding-left: 60px !important;
}
.mt-85 {
  margin-top: 65px !important;
}
.mb-85 {
  margin-bottom: 65px !important;
}
.mr-85 {
  margin-right: 65px !important;
}
.ml-85 {
  margin-left: 65px !important;
}
.mt-n85 {
  margin-top: -65px !important;
}
.mb-n85 {
  margin-bottom: -65px !important;
}
.mr-n85 {
  margin-right: -65px !important;
}
.ml-n85 {
  margin-left: -65px !important;
}
.pt-85 {
  padding-top: 65px !important;
}
.pb-85 {
  padding-bottom: 65px !important;
}
.pr-85 {
  padding-right: 65px !important;
}
.pl-85 {
  padding-left: 65px !important;
}
.mt-90 {
  margin-top: 70px !important;
}
.mb-90 {
  margin-bottom: 70px !important;
}
.mr-90 {
  margin-right: 70px !important;
}
.ml-90 {
  margin-left: 70px !important;
}
.mt-n90 {
  margin-top: -70px !important;
}
.mb-n90 {
  margin-bottom: -70px !important;
}
.mr-n90 {
  margin-right: -70px !important;
}
.ml-n90 {
  margin-left: -70px !important;
}
.pt-90 {
  padding-top: 70px !important;
}
.pb-90 {
  padding-bottom: 70px !important;
}
.pr-90 {
  padding-right: 70px !important;
}
.pl-90 {
  padding-left: 70px !important;
}
.mt-95 {
  margin-top: 65px !important;
}
.mb-95 {
  margin-bottom: 65px !important;
}
.mr-95 {
  margin-right: 65px !important;
}
.ml-95 {
  margin-left: 65px !important;
}
.mt-n95 {
  margin-top: -65px !important;
}
.mb-n95 {
  margin-bottom: -65px !important;
}
.mr-n95 {
  margin-right: -65px !important;
}
.ml-n95 {
  margin-left: -65px !important;
}
.pt-95 {
  padding-top: 65px !important;
}
.pb-95 {
  padding-bottom: 65px !important;
}
.pr-95 {
  padding-right: 65px !important;
}
.pl-95 {
  padding-left: 65px !important;
}
.mt-100 {
  margin-top: 70px !important;
}
.mb-100 {
  margin-bottom: 70px !important;
}
.mr-100 {
  margin-right: 70px !important;
}
.ml-100 {
  margin-left: 70px !important;
}
.mt-n100 {
  margin-top: -70px !important;
}
.mb-n100 {
  margin-bottom: -70px !important;
}
.mr-n100 {
  margin-right: -70px !important;
}
.ml-n100 {
  margin-left: -70px !important;
}
.pt-100 {
  padding-top: 70px !important;
}
.pb-100 {
  padding-bottom: 70px !important;
}
.pr-100 {
  padding-right: 70px !important;
}
.pl-100 {
  padding-left: 70px !important;
}
@media all and (min-width: 768px) {
  .mt-0 {
    margin-top: 0px !important;
  }
  .mb-0 {
    margin-bottom: 0px !important;
  }
  .mr-0 {
    margin-right: 0px !important;
  }
  .ml-0 {
    margin-left: 0px !important;
  }
  .mt-n0 {
    margin-top: -0px !important;
  }
  .mb-n0 {
    margin-bottom: -0px !important;
  }
  .mr-n0 {
    margin-right: -0px !important;
  }
  .ml-n0 {
    margin-left: -0px !important;
  }
  .pt-0 {
    padding-top: 0px !important;
  }
  .pb-0 {
    padding-bottom: 0px !important;
  }
  .pr-0 {
    padding-right: 0px !important;
  }
  .pl-0 {
    padding-left: 0px !important;
  }
  .mt-5 {
    margin-top: 5px !important;
  }
  .mb-5 {
    margin-bottom: 5px !important;
  }
  .mr-5 {
    margin-right: 5px !important;
  }
  .ml-5 {
    margin-left: 5px !important;
  }
  .mt-n5 {
    margin-top: -5px !important;
  }
  .mb-n5 {
    margin-bottom: -5px !important;
  }
  .mr-n5 {
    margin-right: -5px !important;
  }
  .ml-n5 {
    margin-left: -5px !important;
  }
  .pt-5 {
    padding-top: 5px !important;
  }
  .pb-5 {
    padding-bottom: 5px !important;
  }
  .pr-5 {
    padding-right: 5px !important;
  }
  .pl-5 {
    padding-left: 5px !important;
  }
  .mt-10 {
    margin-top: 10px !important;
  }
  .mb-10 {
    margin-bottom: 10px !important;
  }
  .mr-10 {
    margin-right: 10px !important;
  }
  .ml-10 {
    margin-left: 10px !important;
  }
  .mt-n10 {
    margin-top: -10px !important;
  }
  .mb-n10 {
    margin-bottom: -10px !important;
  }
  .mr-n10 {
    margin-right: -10px !important;
  }
  .ml-n10 {
    margin-left: -10px !important;
  }
  .pt-10 {
    padding-top: 10px !important;
  }
  .pb-10 {
    padding-bottom: 10px !important;
  }
  .pr-10 {
    padding-right: 10px !important;
  }
  .pl-10 {
    padding-left: 10px !important;
  }
  .mt-15 {
    margin-top: 15px !important;
  }
  .mb-15 {
    margin-bottom: 15px !important;
  }
  .mr-15 {
    margin-right: 15px !important;
  }
  .ml-15 {
    margin-left: 15px !important;
  }
  .mt-n15 {
    margin-top: -15px !important;
  }
  .mb-n15 {
    margin-bottom: -15px !important;
  }
  .mr-n15 {
    margin-right: -15px !important;
  }
  .ml-n15 {
    margin-left: -15px !important;
  }
  .pt-15 {
    padding-top: 15px !important;
  }
  .pb-15 {
    padding-bottom: 15px !important;
  }
  .pr-15 {
    padding-right: 15px !important;
  }
  .pl-15 {
    padding-left: 15px !important;
  }
  .mt-20 {
    margin-top: 20px !important;
  }
  .mb-20 {
    margin-bottom: 20px !important;
  }
  .mr-20 {
    margin-right: 20px !important;
  }
  .ml-20 {
    margin-left: 20px !important;
  }
  .mt-n20 {
    margin-top: -20px !important;
  }
  .mb-n20 {
    margin-bottom: -20px !important;
  }
  .mr-n20 {
    margin-right: -20px !important;
  }
  .ml-n20 {
    margin-left: -20px !important;
  }
  .pt-20 {
    padding-top: 20px !important;
  }
  .pb-20 {
    padding-bottom: 20px !important;
  }
  .pr-20 {
    padding-right: 20px !important;
  }
  .pl-20 {
    padding-left: 20px !important;
  }
  .mt-25 {
    margin-top: 25px !important;
  }
  .mb-25 {
    margin-bottom: 25px !important;
  }
  .mr-25 {
    margin-right: 25px !important;
  }
  .ml-25 {
    margin-left: 25px !important;
  }
  .mt-n25 {
    margin-top: -25px !important;
  }
  .mb-n25 {
    margin-bottom: -25px !important;
  }
  .mr-n25 {
    margin-right: -25px !important;
  }
  .ml-n25 {
    margin-left: -25px !important;
  }
  .pt-25 {
    padding-top: 25px !important;
  }
  .pb-25 {
    padding-bottom: 25px !important;
  }
  .pr-25 {
    padding-right: 25px !important;
  }
  .pl-25 {
    padding-left: 25px !important;
  }
  .mt-30 {
    margin-top: 30px !important;
  }
  .mb-30 {
    margin-bottom: 30px !important;
  }
  .mr-30 {
    margin-right: 30px !important;
  }
  .ml-30 {
    margin-left: 30px !important;
  }
  .mt-n30 {
    margin-top: -30px !important;
  }
  .mb-n30 {
    margin-bottom: -30px !important;
  }
  .mr-n30 {
    margin-right: -30px !important;
  }
  .ml-n30 {
    margin-left: -30px !important;
  }
  .pt-30 {
    padding-top: 30px !important;
  }
  .pb-30 {
    padding-bottom: 30px !important;
  }
  .pr-30 {
    padding-right: 30px !important;
  }
  .pl-30 {
    padding-left: 30px !important;
  }
  .mt-35 {
    margin-top: 35px !important;
  }
  .mb-35 {
    margin-bottom: 35px !important;
  }
  .mr-35 {
    margin-right: 35px !important;
  }
  .ml-35 {
    margin-left: 35px !important;
  }
  .mt-n35 {
    margin-top: -35px !important;
  }
  .mb-n35 {
    margin-bottom: -35px !important;
  }
  .mr-n35 {
    margin-right: -35px !important;
  }
  .ml-n35 {
    margin-left: -35px !important;
  }
  .pt-35 {
    padding-top: 35px !important;
  }
  .pb-35 {
    padding-bottom: 35px !important;
  }
  .pr-35 {
    padding-right: 35px !important;
  }
  .pl-35 {
    padding-left: 35px !important;
  }
  .mt-40 {
    margin-top: 40px !important;
  }
  .mb-40 {
    margin-bottom: 40px !important;
  }
  .mr-40 {
    margin-right: 40px !important;
  }
  .ml-40 {
    margin-left: 40px !important;
  }
  .mt-n40 {
    margin-top: -40px !important;
  }
  .mb-n40 {
    margin-bottom: -40px !important;
  }
  .mr-n40 {
    margin-right: -40px !important;
  }
  .ml-n40 {
    margin-left: -40px !important;
  }
  .pt-40 {
    padding-top: 40px !important;
  }
  .pb-40 {
    padding-bottom: 40px !important;
  }
  .pr-40 {
    padding-right: 40px !important;
  }
  .pl-40 {
    padding-left: 40px !important;
  }
  .mt-45 {
    margin-top: 45px !important;
  }
  .mb-45 {
    margin-bottom: 45px !important;
  }
  .mr-45 {
    margin-right: 45px !important;
  }
  .ml-45 {
    margin-left: 45px !important;
  }
  .mt-n45 {
    margin-top: -45px !important;
  }
  .mb-n45 {
    margin-bottom: -45px !important;
  }
  .mr-n45 {
    margin-right: -45px !important;
  }
  .ml-n45 {
    margin-left: -45px !important;
  }
  .pt-45 {
    padding-top: 45px !important;
  }
  .pb-45 {
    padding-bottom: 45px !important;
  }
  .pr-45 {
    padding-right: 45px !important;
  }
  .pl-45 {
    padding-left: 45px !important;
  }
  .mt-50 {
    margin-top: 50px !important;
  }
  .mb-50 {
    margin-bottom: 50px !important;
  }
  .mr-50 {
    margin-right: 50px !important;
  }
  .ml-50 {
    margin-left: 50px !important;
  }
  .mt-n50 {
    margin-top: -50px !important;
  }
  .mb-n50 {
    margin-bottom: -50px !important;
  }
  .mr-n50 {
    margin-right: -50px !important;
  }
  .ml-n50 {
    margin-left: -50px !important;
  }
  .pt-50 {
    padding-top: 50px !important;
  }
  .pb-50 {
    padding-bottom: 50px !important;
  }
  .pr-50 {
    padding-right: 50px !important;
  }
  .pl-50 {
    padding-left: 50px !important;
  }
  .mt-55 {
    margin-top: 55px !important;
  }
  .mb-55 {
    margin-bottom: 55px !important;
  }
  .mr-55 {
    margin-right: 55px !important;
  }
  .ml-55 {
    margin-left: 55px !important;
  }
  .mt-n55 {
    margin-top: -55px !important;
  }
  .mb-n55 {
    margin-bottom: -55px !important;
  }
  .mr-n55 {
    margin-right: -55px !important;
  }
  .ml-n55 {
    margin-left: -55px !important;
  }
  .pt-55 {
    padding-top: 55px !important;
  }
  .pb-55 {
    padding-bottom: 55px !important;
  }
  .pr-55 {
    padding-right: 55px !important;
  }
  .pl-55 {
    padding-left: 55px !important;
  }
  .mt-60 {
    margin-top: 60px !important;
  }
  .mb-60 {
    margin-bottom: 60px !important;
  }
  .mr-60 {
    margin-right: 60px !important;
  }
  .ml-60 {
    margin-left: 60px !important;
  }
  .mt-n60 {
    margin-top: -60px !important;
  }
  .mb-n60 {
    margin-bottom: -60px !important;
  }
  .mr-n60 {
    margin-right: -60px !important;
  }
  .ml-n60 {
    margin-left: -60px !important;
  }
  .pt-60 {
    padding-top: 60px !important;
  }
  .pb-60 {
    padding-bottom: 60px !important;
  }
  .pr-60 {
    padding-right: 60px !important;
  }
  .pl-60 {
    padding-left: 60px !important;
  }
  .mt-65 {
    margin-top: 65px !important;
  }
  .mb-65 {
    margin-bottom: 65px !important;
  }
  .mr-65 {
    margin-right: 65px !important;
  }
  .ml-65 {
    margin-left: 65px !important;
  }
  .mt-n65 {
    margin-top: -65px !important;
  }
  .mb-n65 {
    margin-bottom: -65px !important;
  }
  .mr-n65 {
    margin-right: -65px !important;
  }
  .ml-n65 {
    margin-left: -65px !important;
  }
  .pt-65 {
    padding-top: 65px !important;
  }
  .pb-65 {
    padding-bottom: 65px !important;
  }
  .pr-65 {
    padding-right: 65px !important;
  }
  .pl-65 {
    padding-left: 65px !important;
  }
  .mt-70 {
    margin-top: 70px !important;
  }
  .mb-70 {
    margin-bottom: 70px !important;
  }
  .mr-70 {
    margin-right: 70px !important;
  }
  .ml-70 {
    margin-left: 70px !important;
  }
  .mt-n70 {
    margin-top: -70px !important;
  }
  .mb-n70 {
    margin-bottom: -70px !important;
  }
  .mr-n70 {
    margin-right: -70px !important;
  }
  .ml-n70 {
    margin-left: -70px !important;
  }
  .pt-70 {
    padding-top: 70px !important;
  }
  .pb-70 {
    padding-bottom: 70px !important;
  }
  .pr-70 {
    padding-right: 70px !important;
  }
  .pl-70 {
    padding-left: 70px !important;
  }
  .mt-75 {
    margin-top: 75px !important;
  }
  .mb-75 {
    margin-bottom: 75px !important;
  }
  .mr-75 {
    margin-right: 75px !important;
  }
  .ml-75 {
    margin-left: 75px !important;
  }
  .mt-n75 {
    margin-top: -75px !important;
  }
  .mb-n75 {
    margin-bottom: -75px !important;
  }
  .mr-n75 {
    margin-right: -75px !important;
  }
  .ml-n75 {
    margin-left: -75px !important;
  }
  .pt-75 {
    padding-top: 75px !important;
  }
  .pb-75 {
    padding-bottom: 75px !important;
  }
  .pr-75 {
    padding-right: 75px !important;
  }
  .pl-75 {
    padding-left: 75px !important;
  }
  .mt-80 {
    margin-top: 80px !important;
  }
  .mb-80 {
    margin-bottom: 80px !important;
  }
  .mr-80 {
    margin-right: 80px !important;
  }
  .ml-80 {
    margin-left: 80px !important;
  }
  .mt-n80 {
    margin-top: -80px !important;
  }
  .mb-n80 {
    margin-bottom: -80px !important;
  }
  .mr-n80 {
    margin-right: -80px !important;
  }
  .ml-n80 {
    margin-left: -80px !important;
  }
  .pt-80 {
    padding-top: 80px !important;
  }
  .pb-80 {
    padding-bottom: 80px !important;
  }
  .pr-80 {
    padding-right: 80px !important;
  }
  .pl-80 {
    padding-left: 80px !important;
  }
  .mt-85 {
    margin-top: 85px !important;
  }
  .mb-85 {
    margin-bottom: 85px !important;
  }
  .mr-85 {
    margin-right: 85px !important;
  }
  .ml-85 {
    margin-left: 85px !important;
  }
  .mt-n85 {
    margin-top: -85px !important;
  }
  .mb-n85 {
    margin-bottom: -85px !important;
  }
  .mr-n85 {
    margin-right: -85px !important;
  }
  .ml-n85 {
    margin-left: -85px !important;
  }
  .pt-85 {
    padding-top: 85px !important;
  }
  .pb-85 {
    padding-bottom: 85px !important;
  }
  .pr-85 {
    padding-right: 85px !important;
  }
  .pl-85 {
    padding-left: 85px !important;
  }
  .mt-90 {
    margin-top: 90px !important;
  }
  .mb-90 {
    margin-bottom: 90px !important;
  }
  .mr-90 {
    margin-right: 90px !important;
  }
  .ml-90 {
    margin-left: 90px !important;
  }
  .mt-n90 {
    margin-top: -90px !important;
  }
  .mb-n90 {
    margin-bottom: -90px !important;
  }
  .mr-n90 {
    margin-right: -90px !important;
  }
  .ml-n90 {
    margin-left: -90px !important;
  }
  .pt-90 {
    padding-top: 90px !important;
  }
  .pb-90 {
    padding-bottom: 90px !important;
  }
  .pr-90 {
    padding-right: 90px !important;
  }
  .pl-90 {
    padding-left: 90px !important;
  }
  .mt-95 {
    margin-top: 95px !important;
  }
  .mb-95 {
    margin-bottom: 95px !important;
  }
  .mr-95 {
    margin-right: 95px !important;
  }
  .ml-95 {
    margin-left: 95px !important;
  }
  .mt-n95 {
    margin-top: -95px !important;
  }
  .mb-n95 {
    margin-bottom: -95px !important;
  }
  .mr-n95 {
    margin-right: -95px !important;
  }
  .ml-n95 {
    margin-left: -95px !important;
  }
  .pt-95 {
    padding-top: 95px !important;
  }
  .pb-95 {
    padding-bottom: 95px !important;
  }
  .pr-95 {
    padding-right: 95px !important;
  }
  .pl-95 {
    padding-left: 95px !important;
  }
  .mt-100 {
    margin-top: 100px !important;
  }
  .mb-100 {
    margin-bottom: 100px !important;
  }
  .mr-100 {
    margin-right: 100px !important;
  }
  .ml-100 {
    margin-left: 100px !important;
  }
  .mt-n100 {
    margin-top: -100px !important;
  }
  .mb-n100 {
    margin-bottom: -100px !important;
  }
  .mr-n100 {
    margin-right: -100px !important;
  }
  .ml-n100 {
    margin-left: -100px !important;
  }
  .pt-100 {
    padding-top: 100px !important;
  }
  .pb-100 {
    padding-bottom: 100px !important;
  }
  .pr-100 {
    padding-right: 100px !important;
  }
  .pl-100 {
    padding-left: 100px !important;
  }
}
.mt-auto {
  margin-top: auto;
}
.mb-auto {
  margin-bottom: auto;
}
.ml-auto {
  margin-left: auto;
}
.mr-auto {
  margin-right: auto;
}
.gap-0 {
  gap: 0 !important;
}
/*////////////////////////////////////////////////////////////////////// */
/*  ---  目次  ---

・コンテンツ概要
・見出し

  ---  目次  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  コンテンツ概要  ---   */
/* body */
body, input, textarea {
  font-family: var(--ff_ja);
  font-weight: var(--fw_r);
  color: var(--color_text);
  font-size: var(--fs_16);
  line-height: 1.7;
}
input, textarea {
  line-height: 1.5;
}
* {
  letter-spacing: 0.1em;
  text-size-adjust: none;
  -webkit-text-size-adjust: none;
}
a, a::before, a::after {
  transition: 0.5s;
}
sub, sup {
  position: relative;
  font-size: 0.75em;
  line-height: 1;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
@media all and (min-width: 1200px) {
  .container.narrow {
    max-width: 1000px;
  }
}
/*////////////////////////////////////////////////////////////////////// */
/*  ---  見出し  ---   */
/* title-sectionBtc */
.title-sectionBtc {
  margin-bottom: 30px;
  text-align: center !important;
}
.title-sectionBtc::before {
  content: "";
  display: block;
  width: 60px;
  height: 2px;
  margin: 0 auto 20px;
  background-color: var(--color_main);
}
.title-sectionBtc > * {
  display: block;
}
.title-sectionBtc .title-en {
  margin-bottom: 10px;
  color: var(--color_main);
  font-family: var(--ff_en);
  font-size: var(--fs_en_70);
  font-weight: var(--fw_sb);
  line-height: 1;
}
.title-sectionBtc .title-ja {
  font-size: var(--fs_30);
  line-height: 1.3;
}
@media all and (min-width: 768px) {
  .title-sectionBtc {
    margin-bottom: 40px;
  }
  .title-sectionBtc::before {
    margin-bottom: 30px;
  }
}
@media all and (min-width: 992px) {
  .title-sectionBtc.text-left {
    text-align: left !important;
  }
  .title-sectionBtc.text-left::before {
    margin-left: 0;
  }
}
/* title-sectionBbc */
.title-sectionBbc, .editor-content h2 {
  margin-bottom: 40px;
  color: var(--color_main);
  font-size: var(--fs_en_40);
  text-align: center;
  line-height: 1.3;
  /***&::after{
        content: "";
        display: block;
        width: 60px;
        height: 2px;
        margin: 20px auto 0;
        background-color: var(--color_main);
    }***/
}
@media all and (min-width: 768px) {
  .title-sectionBbc, .editor-content h2 {
    margin-bottom: 40px;
  }
}
@media all and (min-width: 992px) {
  .title-sectionBbc, .editor-content h2 {
    margin-bottom: 60px;
  }
}
/* title-row */
.title-row {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 30px;
  text-align: center;
}
.title-row .title-en {
  margin-bottom: 10px;
  color: var(--color_main);
  font-family: var(--ff_en);
  font-size: var(--fs_en_40);
  font-weight: var(--fw_sb);
  line-height: 1;
}
.title-row .title-ja {
  font-size: var(--fs_20);
  line-height: 1.3;
}
@media all and (min-width: 768px) {
  .title-row {
    flex-direction: row;
    margin-bottom: 40px;
    text-align: left;
  }
  .title-row .title-en {
    margin-bottom: 0;
    margin-right: 40px;
  }
}
/* title-nameBbl */
.title-nameBbl {
  position: relative;
  margin-bottom: 20px;
  /***padding-bottom: 15px;***/
  color: var(--color_main);
  font-size: var(--fs_20);
  font-weight: var(--fw_b);
  line-height: 1.3;
  /***&::after{
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        display: block;
        width: 40px;
        height: 2px;
        background-color: var(--color_main);
    }***/
}
/* title-singleBb */
.title-singleBb {
  margin-bottom: 30px;
  /***border-bottom: 2px solid var(--color_main);
    padding-bottom: 10px;***/
  color: var(--color_main);
  font-size: var(--fs_26);
  line-height: 1.5;
}
/* title-graydBb */
.title-graydBb {
  margin-bottom: 30px;
  border-bottom: 2px solid var(--color_text);
  padding-bottom: 10px;
  font-size: var(--fs_26);
  line-height: 1.5;
}
@media all and (min-width: 768px) {
  .title-graydBb {
    margin-bottom: 40px;
  }
}
/* title-topicBb */
.title-topicBb {
  margin-bottom: 20px;
  border-bottom: 1px solid var(--color_textGrayp);
  padding-bottom: 10px;
  font-size: var(--fs_20);
}
/* title-simple */
.title-simple {
  margin-bottom: 20px;
  font-size: var(--fs_32);
  line-height: 1.5;
}
@media all and (min-width: 768px) {
  .title-simple {
    margin-bottom: 30px;
  }
}
/* text-unerTitle */
.text-unerTitle {
  text-align: center !important;
  font-size: var(--fs_18);
  font-weight: var(--fw_m);
  line-height: 1.5;
}
@media all and (min-width: 992px) {
  .text-unerTitle.text-left {
    text-align: left !important;
  }
}
/*  ---  見出し  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  リンク・ボタン  ---   */
.btn-common.btn-redBox:hover, .btn-pdf:not(.btn-red):hover, .btn-video:not(.btn-red):hover, .btn-dxf:not(.btn-red):hover, .btn-text:hover, .editor-content a:not(.btn-pdf):not(.btn-video):hover, .border-img a:hover, .logo a:hover, .header__contact:hover, .header__naviItem a:hover, .footer_sitemapItem a:hover, .support__item:hover, .faq__taxItem a:hover, .case__itemLink:hover, .info__itemUrl:hover, .product__lgLink:hover, .product__smItem a:hover, .product__dtlSpec a:hover, .drawing__itemLink:hover, .product__searchBox:hover {
  opacity: 0.7;
}
/* btn-common */
.btn-common {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 320px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
  border: 1px solid;
  padding: 15px 50px;
  text-align: center;
  font-weight: var(--fw_m);
}
.btn-common::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  width: 23px;
  height: 8px;
  background: url(../images/common/icon-btnarrow.svg) no-repeat right center / contain;
  pointer-events: none;
}
.btn-common:hover::after {
  right: 10px;
}
.btn-common::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  display: block;
  width: 0;
  height: 100%;
}
.btn-common:hover::before {
  width: 100%;
}
.btn-common.btn-red {
  border-color: var(--color_mainDark);
  color: var(--color_main);
}
.btn-common.btn-red:hover {
  color: var(--color_white);
}
.btn-common.btn-red:hover::before {
  background-color: var(--color_mainDark);
}
.btn-common.btn-red:hover::after {
  filter: brightness(0) invert(1);
}
.btn-common.btn-white {
  border-color: var(--color_white);
  color: var(--color_white);
}
.btn-common.btn-white::after {
  filter: brightness(0) invert(1);
}
.btn-common.btn-white:hover {
  color: var(--color_main);
}
.btn-common.btn-white:hover::before {
  background-color: var(--color_white);
}
.btn-common.btn-white:hover::after {
  filter: none;
}
.btn-common.btn-redBox {
  max-width: 430px;
  border: 0;
  background-color: var(--color_main);
  color: #fff;
}
.btn-common.btn-redBox::after {
  filter: brightness(0) invert(1);
}
.btn-common.btn-wide {
  max-width: 570px;
}
@media all and (min-width: 768px) {
  .btn-common {
    margin-top: 60px;
  }
  .btn-common.btn-redBox {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
@media all and (min-width: 992px) {
  .btn-common.btn-redBox {
    padding: 30px 70px;
    font-size: var(--fs_20);
  }
  .btn-common.btn-redBox::after {
    width: 30px;
    height: 11px;
  }
}
/* btn-pdf */
.btn-pdf, .btn-video, .btn-dxf {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color_main);
  color: var(--color_white);
  font-weight: var(--fw_m);
  line-height: 1.3;
}
.btn-pdf::before, .btn-video::before, .btn-dxf::before {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  filter: brightness(0) invert(1);
}
.btn-red.btn-pdf, .btn-red.btn-video, .btn-red.btn-dxf {
  position: relative;
  border: 1px solid var(--color_mainDark);
  background-color: transparent;
  color: var(--color_main);
}
.btn-red.btn-pdf::before, .btn-red.btn-video::before, .btn-red.btn-dxf::before {
  filter: none;
}
.btn-red.btn-pdf::after, .btn-red.btn-video::after, .btn-red.btn-dxf::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  display: block;
  width: 0;
  height: 100%;
  background-color: var(--color_mainDark);
}
.btn-red.btn-pdf:hover, .btn-red.btn-video:hover, .btn-red.btn-dxf:hover {
  color: var(--color_white);
}
.btn-red.btn-pdf:hover::before, .btn-red.btn-video:hover::before, .btn-red.btn-dxf:hover::before {
  filter: brightness(0) invert(1);
}
.btn-red.btn-pdf:hover::after, .btn-red.btn-video:hover::after, .btn-red.btn-dxf:hover::after {
  width: 100%;
}
.btn-pdf {
  padding: 15px;
}
.btn-pdf::before {
  width: 1.75em;
  height: 1.5625em;
  margin-right: 0.625em;
  background-image: url(../images/common/icon-pdf.svg);
}
.btn-video {
  max-width: 370px;
  padding: 20px;
}
.btn-video::before {
  width: 2.3125em;
  height: 1.25em;
  margin-right: 1.25em;
  background-image: url(../images/common/icon-video.svg);
}
.btn-dxf {
  max-width: 370px;
  padding: 15px;
}
.btn-dxf::before {
  width: 1.75em;
  height: 1.5625em;
  margin-right: 0.625em;
  background-image: url(../images/common/icon-dxf.svg);
}
/* btn-text */
.btn-text {
  color: var(--color_main);
  text-decoration: underline;
  text-underline-offset: 3px;
  font-weight: var(--fw_m);
}
/*  ---  リンク・ボタン  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  リスト  ---   */
/* list-number */
.list-number, .editor-content ol {
  counter-reset: list-number;
}
.list-number li, .editor-content ol li {
  position: relative;
  padding-left: 1.5em;
  font-weight: var(--fw_m);
  line-height: 1.5;
}
.list-number li::before, .editor-content ol li::before {
  counter-increment: list-number;
  content: counter(list-number) "）";
  position: absolute;
  left: 0;
  top: 0;
}
.list-number li + li, .editor-content ol li + li {
  margin-top: 10px;
}
/* list-circle */
.list-circle li, .editor-content ul li {
  position: relative;
  padding-left: 1.5em;
  font-weight: var(--fw_m);
  line-height: 1.5;
}
.list-circle li::before, .editor-content ul li::before {
  content: "●";
  position: absolute;
  left: 0;
  top: 0;
}
.list-circle li + li, .editor-content ul li + li {
  margin-top: 10px;
}
/*  ---  リスト  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  テーブル  ---   */
/* table-scroll */
.table-scrollWrap {
  overflow-x: auto;
}
.table-scrollWrap th {
  white-space: nowrap;
}
@media all and (max-width: 1199px) {
  .table-scrollWrap td {
    white-space: nowrap;
  }
  .table-scroll {
    white-space: nowrap;
  }
}
/*  ---  テーブル  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  ビジュアルエディタ  ---   */
.editor-content {
  /* レイアウト余白 */
  /* 各見出し */
  /* table */
  /* 各パーツ */
}
.editor-content > * + *, .editor-content .wp-block-column > * + *, .editor-content .wp-block-group__inner-container > * + * {
  margin-top: 30px;
}
.editor-content h3 + *, .editor-content h4 + *, .editor-content h5 + *, .editor-content h6 + * {
  margin-top: 0 !important;
}
.editor-content * + h2 {
  margin-top: 60px !important;
}
.editor-content .wp-block-columns.is-layout-flex {
  gap: 30px;
}
.editor-content .wp-block-spacer, .editor-content .wp-block-spacer + * {
  margin-top: 0 !important;
}
.editor-content h1, .editor-content h2, .editor-content h3, .editor-content h4, .editor-content h5, .editor-content h6 {
  line-height: 1.3;
}
.editor-content h3:not(.title-simple) {
  margin-bottom: 20px;
  border-bottom: 2px solid var(--color_text);
  padding-bottom: 10px;
  font-size: var(--fs_24);
}
.editor-content h4:not(.title-simple) {
  margin-bottom: 15px;
  border-bottom: 1px solid var(--color_textGrayp);
  padding-bottom: 10px;
  font-size: var(--fs_20);
}
.editor-content h5:not(.title-simple) {
  margin-bottom: 15px;
  font-size: var(--fs_18);
}
.editor-content .title-simple {
  margin-bottom: 20px;
}
.editor-content table {
  font-size: var(--fs_14);
  line-height: 1.5;
}
.editor-content table thead {
  border-bottom: 0;
  text-align: center;
}
.editor-content table th {
  background-color: var(--color_gray);
}
.editor-content table th, .editor-content table td {
  padding: 10px 20px;
  text-align: inherit;
  font-weight: var(--fw_m);
  vertical-align: middle;
}
.editor-content .thead-column {
  text-align: center;
}
.editor-content .thead-column td:first-child {
  background-color: var(--color_gray);
}
.editor-content .table-width-s {
  max-width: 330px;
}
.editor-content .table-width-m {
  max-width: 770px;
}
.editor-content .tablepress tr {
  border: 0;
}
.editor-content .tablepress th, .editor-content .tablepress td {
  border: 1px solid var(--color_textGrayp);
}
.editor-content .tablepress td.bg-textGrayp {
  border-color: var(--color_white);
}
.editor-content .tablepress img {
  width: 100%;
  min-width: 130px;
  max-width: 300px;
}
.editor-content .tablepress .col-auto {
  max-width: 50%;
}
.editor-content .dt-scroll-headInner th {
  border-bottom: 0;
}
.editor-content .border-img {
  display: inline-block;
}
.editor-content figcaption {
  margin: 10px 0 0;
  text-align: center;
  font-weight: var(--fw_b);
}
.editor-content a:not(.btn-pdf):not(.btn-video) {
  color: var(--color_main);
  text-decoration: underline;
  text-underline-offset: 2px;
  font-weight: var(--fw_m);
}
.editor-content a:not(.btn-pdf):not(.btn-video).btn-arrow {
  position: relative;
  display: inline-block;
  padding-left: 15px;
  text-decoration: none;
}
.editor-content a:not(.btn-pdf):not(.btn-video).btn-arrow::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  text-decoration: none;
}
.editor-content .btn-pdf, .editor-content .btn-video {
  max-width: 370px;
  padding: 15px;
}
.editor-content .btn-pdf + .btn-pdf {
  margin-top: 20px !important;
}
.editor-content mark {
  font-style: normal;
}
.editor-content .has-text-color {
  color: var(--color_text);
}
.editor-content .has-text-gray-color {
  color: var(--color_textGrayp);
}
.editor-content .has-main-color {
  color: var(--color_main);
}
.editor-content .has-white-color {
  color: var(--color_white);
}
.editor-content .has-text-align-left {
  text-align: left !important;
}
.editor-content .has-text-align-right {
  text-align: right !important;
}
.editor-content .has-text-align-center {
  text-align: center !important;
}
.single__editor * + h3 {
  margin-top: 40px;
}
@media all and (min-width: 768px) {
  .editor-content > * + *, .editor-content .wp-block-column > * + *, .editor-content .wp-block-group__inner-container > * + * {
    margin-top: 40px;
  }
  .editor-content .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
    flex-basis: auto;
  }
  .editor-content .wp-block-columns.is-layout-flex .column-3 {
    width: calc((270 / 1140 ) * 100%);
  }
  .editor-content .wp-block-columns.is-layout-flex .column-4 {
    width: calc((370 / 1140 ) * 100%);
  }
  .editor-content .wp-block-columns.is-layout-flex .column-5 {
    width: calc((470 / 1140 ) * 100%);
  }
  .editor-content .wp-block-columns.is-layout-flex .column-6 {
    width: calc((570 / 1140 ) * 100%);
  }
  .editor-content .wp-block-columns.is-layout-flex .column-7 {
    width: calc((670 / 1140 ) * 100%);
  }
  .editor-content .wp-block-columns.is-layout-flex .column-8 {
    width: calc((770 / 1140 ) * 100%);
  }
  .editor-content .wp-block-columns.is-layout-flex .column-9 {
    width: calc((870 / 1140 ) * 100%);
  }
  .editor-content * + h2 {
    margin-top: 100px !important;
  }
  .editor-content h3:not(.title-simple) {
    padding-bottom: 15px;
    margin-bottom: 30px;
  }
  .editor-content h4:not(.title-simple) {
    padding-bottom: 15px;
    margin-bottom: 20px;
  }
  .editor-content h5:not(.title-simple) {
    margin-bottom: 20px;
  }
  .editor-content .title-simple {
    margin-bottom: 30px;
  }
  .editor-content .tablepress .col-md-auto {
    max-width: 50%;
  }
  .single__editor * + h3 {
    margin-top: 60px;
  }
}
@media all and (min-width: 992px) {
  .editor-content .tablepress .col-lg-auto {
    max-width: 50%;
  }
}
/*  ---  テーブル  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  その他パーツ  ---   */
/* border-img 画像枠線 */
.border-img {
  position: relative;
  display: block;
}
.border-img::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid var(--color_border);
  pointer-events: none;
}
.border-img a {
  display: block;
}
/* grad-figure figureのグラデーション背景 */
.grad-figure, .product__smIntroImg, .product__smThumb {
  background: linear-gradient(#FAFAFA, #EBECEC);
}
/* text-indent */
.text-indent-1 {
  padding-left: 1em;
  text-indent: -1em;
}
.text-indent-1x5 {
  padding-left: 1.5em;
  text-indent: -1.5em;
}
.indent-kome::before {
  content: "※";
}
.indent-circle::before {
  content: "●";
}
.indent-disc::before {
  content: "・";
}
/* 赤▶ */
.editor-content a:not(.btn-pdf):not(.btn-video).btn-arrow::before, .header__cnaviItem a::after, .faq__taxLink::before, .product__lgLink::after, .product__smName::before, .product__dtlTable .product_dtlName a::before {
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 7px solid var(--color_main);
  border-right: 0;
}
/* ページネーション */
.pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  gap: 10px;
}
.pagination a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border: 1px solid var(--color_main);
  background-color: var(--color_white);
  color: var(--color_main);
  letter-spacing: 0;
  line-height: 1;
}
.pagination a.is-active, .pagination a:hover {
  background-color: var(--color_main);
  color: var(--color_white);
  font-weight: var(--fw_b);
}
/* ロゴ */
.logo a {
  display: block;
}
/* fancy box */
.fancybox-slide--video .fancybox-content {
  width: 100% !important;
  max-width: 1170px !important;
  height: auto !important;
}
/*  ---  その他パーツ  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  ヘッダー（ナビ除外）  ---   */
.header__contact, .btn__hambarger {
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--header_upperHeight);
}
.bl-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  width: 100%;
  height: var(--header_tempHeight);
  background-color: var(--color_white);
}
.header__container {
  display: flex;
  max-width: 1400px !important;
  padding-right: 0;
}
.header__logo {
  align-self: center;
  margin-right: 15px;
}
.header__logo img {
  height: 38px;
}
.header__navi {
  margin-left: auto;
}
.header__contact {
  gap: 10px;
  aspect-ratio: 1;
  background-color: var(--color_main);
  color: var(--color_white);
  font-weight: var(--fw_m);
  line-height: 1;
}
@media all and (min-width: 768px) {
  .header__logo img {
    height: 50px;
  }
  .header__contact {
    aspect-ratio: auto;
    padding: 5px 15px;
  }
}
@media all and (min-width: 1200px) {
  .header__logo img {
    width: 305px;
    height: auto;
  }
  .header__contact {
    margin-left: 15px;
  }
}
@media all and (min-width: 1400px) {
  .header__contact {
    width: 200px;
  }
}
/* main */
.bl-main {
  margin-top: var(--header_tempHeight);
}
/*  ---  ヘッダー （ナビ除外） ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  ヘッダー ナビ内  ---   */
.btn__hambarger .btn__hambargerLine, .btn__hambarger .btn__hambargerLine::before, .btn__hambarger .btn__hambargerLine::after {
  content: "";
  display: block;
  width: 30px;
  height: 2px;
  background-color: var(--color_textGrayp);
  transition: 0.5s;
}
@media all and (max-width: 767px) {
  .btn__hambarger .btn__hambargerLine, .btn__hambarger .btn__hambargerLine::before, .btn__hambarger .btn__hambargerLine::after {
    width: 20px;
    height: 1px;
  }
}
.header__navi {
  display: flex;
}
.header__naviSub {
  display: flex;
  gap: 20px;
}
.header__naviSub .header__subBtn {
  display: flex;
  align-items: center;
  font-size: 14px;
  font-weight: var(--fw_b);
  line-height: 1;
}
.header__naviSub .header__subBtn::before {
  content: "";
  display: block;
  height: 21px;
  margin-right: 10px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.header__naviSub .header__subBtn:hover {
  color: var(--color_main);
}
.header__naviSub .header__contact {
  display: none;
}
.header__btnNews::before {
  width: 16px;
  background-image: url(../images/common/icon-bell.svg);
}
.header__btnCatalog::before {
  width: 17px;
  background-image: url(../images/common/icon-paper.svg);
}
.header__naviItem {
  font-weight: var(--fw_m);
  line-height: 1;
  font-size: 14px;
}
.header__naviItem a, .header__naviItem .header__naviHover {
  display: block;
}
.header__naviItem .header__naviHover {
  position: relative;
}
.header__naviItem .header__naviHover::after {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  aspect-ratio: 1;
  height: calc(1em + 4vw);
  background: url(../images/common/icon-naviarrow.svg) no-repeat right center / 1vw;
}
/* 子メニュー */
.cnavi__product .cnavi__productContainer, .cnavi__support .header__cnaviList {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}
.header__cnaviWrap {
  background-color: var(--color_gray);
}
.header__cnaviItem a {
  position: relative;
  display: block;
  color: var(--color_text);
  line-height: 1.5;
}
.header__cnaviItem a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
.cnavi__productMlist, .cnavi__productSlist {
  display: none;
}
@media all and (max-width: 1199px) {
  .btn__hambarger {
    position: relative;
    aspect-ratio: 1;
  }
  .btn__hambarger :hover {
    cursor: pointer;
  }
  .btn__hambarger .btn__hambargerLine::before {
    position: absolute;
    top: calc(50% - 11px);
    left: 50%;
    transform: translateX(-50%);
  }
  .btn__hambarger .btn__hambargerLine::after {
    position: absolute;
    top: calc(50% + 9px);
    left: 50%;
    transform: translateX(-50%);
  }
  .is-open .btn__hambarger .btn__hambargerLine {
    background-color: transparent;
  }
  .is-open .btn__hambarger .btn__hambargerLine::before {
    top: 50%;
    transform: translateX(-50%) rotate(45deg);
  }
  .is-open .btn__hambarger .btn__hambargerLine::after {
    top: 50%;
    transform: translateX(-50%) rotate(-45deg);
  }
  .header__naviWrap {
    position: absolute;
    top: 100%;
    right: 100%;
    display: flex;
    flex-direction: column-reverse;
    justify-content: flex-end;
    width: 100%;
    height: calc(100dvh - var(--header_tempHeight));
    background-color: var(--color_white);
    padding: 4.7vw 4.7vw 9.6vw;
    overflow-y: auto;
    transition: 0.5s;
  }
  .is-open .header__naviWrap {
    right: 0;
  }
  .header__naviArea {
    margin-bottom: 2vw;
  }
  .header__naviItem {
    border-bottom: 1px solid var(--color_textGrayp);
    font-size: 2vw;
  }
  .header__naviItem.parent {
    position: relative;
  }
  .header__naviItem.parent.is-active {
    border-bottom: 0;
    color: var(--color_main);
  }
  .header__naviItem.parent.is-active .header__naviHover::after {
    transform: rotate(90deg);
    background-position: center top;
  }
  .header__naviItem a, .header__naviItem .header__naviHover {
    padding-top: 2vw;
    padding-bottom: 2vw;
  }
  .header__cnaviWrap {
    display: none;
    margin-left: -4.7vw;
    margin-right: -4.7vw;
    padding-left: 4.7vw;
    padding-right: 4.7vw;
  }
  .header__cnaviItem:not(:last-child) {
    border-bottom: 1px solid var(--color_border);
  }
  .header__cnaviItem a {
    padding-top: 1.5vw;
    padding-bottom: 1.5vw;
    font-size: 1.5vw;
  }
}
@media all and (max-width: 767px) {
  .btn__hambarger .btn__hambargerLine::before {
    top: calc(50% - 6px);
  }
  .btn__hambarger .btn__hambargerLine::after {
    top: calc(50% + 6px);
  }
  .header__naviSub {
    flex-direction: column;
  }
  .header__naviSub .header__contact {
    display: flex;
    width: 100%;
    max-width: 320px;
    height: auto;
    aspect-ratio: auto;
    padding: 15px;
  }
  .header__naviArea {
    margin-bottom: 20px;
  }
  .header__naviItem {
    font-size: 14px;
  }
  .header__naviItem a, .header__naviItem .header__naviHover {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  .header__naviItem.parent .header__naviHover::after {
    height: calc(1em + 30px);
    background-size: 5px;
  }
  .header__cnaviItem a {
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: inherit;
  }
}
@media all and (min-width: 1200px) {
  .btn__hambarger {
    display: none;
  }
  .header__naviWrap {
    align-self: center;
  }
  .header__naviSub {
    justify-content: flex-end;
    margin-bottom: 20px;
  }
  .header__naviList {
    display: flex;
  }
  .header__naviItem {
    position: relative;
  }
  .header__naviItem:not(:last-child) {
    border-right: 1px solid var(--color_textGrayp);
  }
  .header__naviItem:hover {
    color: var(--color_main);
  }
  .header__naviItem.parent::after {
    content: "";
    position: absolute;
    left: 0;
    top: 100%;
    display: block;
    width: 100%;
    height: 25px;
  }
  .header__naviItem.parent:hover .header__cnaviWrap.cnavi__product {
    height: 100%;
    padding-top: 40px;
    padding-bottom: 40px;
    overflow-y: auto;
  }
  .header__naviItem.parent:hover .header__cnaviWrap.cnavi__support {
    height: 60px;
  }
  .header__naviItem a {
    padding-left: 10px;
    padding-right: 10px;
  }
  .header__naviItem:last-child a {
    padding-right: 0 !important;
  }
  .header__naviItem .header__naviHover {
    padding-left: 10px;
    padding-right: 25px;
  }
  .header__naviItem .header__naviHover::after {
    right: 10px;
    height: 10px;
    transform: rotate(90deg);
    background-size: contain;
  }
  .header__cnaviWrap {
    position: fixed;
    top: var(--header_upperHeight);
    left: 0;
    z-index: 999;
    width: 100%;
    height: 0;
    overflow: hidden;
    transition: 0.5s;
  }
  .header__cnaviWrap.cnavi__product {
    max-height: 680px;
  }
  .cnavi__product .cnavi__productContainer {
    position: relative;
    height: 100%;
    overflow-y: scroll;
    overflow-x: hidden;
  }
  .cnavi__product .header__cnaviList {
    width: 285px;
    height: 100%;
  }
  .cnavi__product .header__cnaviItem:not(:first-child) {
    margin-top: 5px;
  }
  .cnavi__product .header__cnaviItem:hover {
    background-color: var(--color_border);
  }
  .cnavi__product .header__cnaviItem a {
    padding-top: 5px;
    padding-bottom: 5px;
    padding-right: 50px;
  }
  .cnavi__product .header__cnaviItem a::after {
    right: 30px;
  }
  .cnavi__productMlist {
    position: absolute;
    top: 0;
    left: calc(285px + 15px);
    width: calc((100% - 30px - 285px) / 2);
    min-height: 100%;
    height: auto;
    border-left: 1px solid var(--color_border);
  }
  .cnavi__productSlist {
    position: absolute;
    top: 0;
    left: 100%;
    width: 100%;
    height: 100%;
    border-left: 1px solid var(--color_border);
  }
  .cnavi__support {
    display: flex;
    align-items: center;
  }
  .cnavi__support .header__cnaviList {
    display: flex;
    align-items: center;
    max-width: 1170px;
  }
  .cnavi__support .header__cnaviList .header__cnaviItem {
    width: calc(100% / 4);
    border-left: 1px solid var(--color_border);
    padding-left: 30px;
  }
  .cnavi__support .header__cnaviList .header__cnaviItem a {
    display: inline-block;
    padding: 5px 0;
  }
  .cnavi__support .header__cnaviList .header__cnaviItem a::after {
    position: static;
    transform: none;
    margin-left: 25px;
  }
}
@media all and (min-width: 1400px) {
  .header__naviItem a {
    padding-left: 15px;
    padding-right: 15px;
  }
  .header__naviItem .header__naviHover {
    padding-left: 15px;
    padding-right: 35px;
  }
  .header__naviItem .header__naviHover::after {
    right: 15px;
  }
}
/*  ---  ヘッダー ナビ  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  ヘッダー サイト内検索  ---   */
/* search */
.search__wrap {
  display: flex;
  align-items: center;
  height: calc(var(--header_tempHeight) - var(--header_upperHeight));
  background-color: var(--color_gray);
  padding-top: 5px;
  padding-bottom: 5px;
}
.search__wrap input {
  border: 0;
}
.search__area {
  display: flex;
  border: 1px solid var(--color_border);
  border-radius: 5px;
  overflow: hidden;
}
.search__category {
  position: relative;
  width: 185px;
  min-width: 185px;
  border-right: 1px solid var(--color_border);
  background: var(--color_border) url(../images/common/icon-angle-down_dark.svg) no-repeat calc(100% - 10px) center / 10px;
  padding: 5px 25px 5px 10px;
}
.search__keywordBox {
  position: relative;
  width: calc(100% - 70px);
  background-color: var(--color_white);
}
.search__keywordBox::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  width: 13px;
  height: 13px;
  background: url(../images/common/icon-search.svg) no-repeat center / contain;
  pointer-events: none;
}
.search__keyword {
  width: 100%;
  padding: 5px 10px 5px 30px;
  font-size: var(--fs_14);
  line-height: 1;
  vertical-align: top;
}
.search__button {
  width: 70px;
  background-color: var(--color_main);
  color: var(--color_white);
  transition: 0.5s;
}
.search__button:hover {
  cursor: pointer;
  background-color: var(--color_mainDark);
}
@media all and (min-width: 1200px) {
  .search__wrap {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}
/*  ---  ヘッダー サイト内検索  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  ページタイトル・パンくず  ---   */
/* ページタイトル */
.header__pageTitle {
  background-color: var(--color_main);
  background-image: url(../images/common/bg-pageTitle.svg);
  background-repeat: no-repeat;
  background-position: calc(100% + 15px) calc(100% + 20px);
  background-size: 300px;
  padding-top: 30px;
  padding-bottom: 30px;
}
.title-page {
  color: var(--color_white);
  filter: drop-shadow(1px 1px 0 var(--color_main)) drop-shadow(1px 1px 0 var(--color_main)) drop-shadow(0 0 1px var(--color_main));
}
.title-page .title-en {
  display: block;
  margin-bottom: 10px;
  text-transform: uppercase;
  font-size: var(--fs_en_70);
  font-weight: var(--fw_sb);
  line-height: 1;
}
.title-page .title-ja {
  font-size: var(--fs_30);
  font-weight: var(--fw_b);
  line-height: 1.25;
}
@media all and (min-width: 768px) {
  .header__pageTitle {
    background-position: calc(100% + 30px) calc(100% + 40px);
    background-size: 492px;
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .title-page .title-en {
    margin-bottom: 15px;
  }
}
/* パンくず */
.bl-bread {
  margin-top: 20px;
}
.bl-bread__list {
  display: flex;
  flex-wrap: wrap;
  color: var(--color_textGrayp);
  font-size: var(--fs_14);
  font-weight: var(--fw_m);
  line-height: 1.5;
}
.bl-bread__item:not(:last-child)::after {
  content: "";
  display: inline-block;
  margin-right: 0.25em;
  font-family: var(--ff_awesome);
  font-weight: var(--fw_b);
}
.bl-bread__item:last-child a {
  color: var(--color_main);
}
.bl-bread__item:hover a {
  color: var(--color_main);
}
/*  ---  ページタイトル・パンくず  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  フッター上　お問い合わせ  ---   */
.sec__contact {
  background: url(../images/common/bg-contact.webp) no-repeat right center / cover;
}
.sec__contactBtns {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
}
.sec__contactBtn {
  width: 100%;
  max-width: 430px;
}
@media all and (min-width: 768px) {
  .sec__contactBtns {
    flex-direction: row;
    align-items: stretch;
    justify-content: center;
  }
}
/*  ---  フッター上　お問い合わせ  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  フッター  ---   */
.bl-footer {
  position: relative;
  border-top: 8px solid var(--color_main);
  padding-top: 50px;
  padding-bottom: 50px;
}
.bl-footer .container {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.footer_logo {
  margin-bottom: 30px;
}
.footer__copy {
  color: var(--color_textGrayp);
  font-size: var(--fs_14);
  line-height: 1;
}
.footer_sitemapList {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.footer_sitemapItem {
  width: 100%;
  font-size: var(--fs_14);
  font-weight: var(--fw_m);
  line-height: 1;
}
@media all and (min-width: 350px) {
  .footer_sitemapItem {
    width: calc((100% - 30px) / 2);
  }
}
@media all and (min-width: 540px) {
  .footer_sitemapItem {
    width: calc((100% - 60px) / 3);
  }
}
@media all and (min-width: 768px) {
  .footer_sitemapList {
    column-gap: 30px;
  }
}
@media all and (min-width: 992px) {
  .bl-footer .container {
    flex-direction: row;
    align-items: flex-start;
  }
  .footer_logo {
    width: 305px;
    margin-bottom: 0;
    margin-right: 30px;
  }
  .footer_logo .logo {
    margin-bottom: 20px;
  }
  .footer_sitemap {
    width: calc(100% - 305px - 30px);
    max-width: 570px;
    margin-left: auto;
  }
}
@media all and (max-width: 991px) {
  .bl-footer::after {
    content: "";
    display: block;
    height: var(--fs_14);
  }
  .footer__copy {
    position: absolute;
    left: 0;
    bottom: 50px;
    width: 100%;
    text-align: center;
  }
  .footer_sitemap {
    margin-bottom: 40px;
  }
}
.btn-top {
  position: fixed;
  right: 15px;
  bottom: 30px;
  z-index: 99;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  aspect-ratio: 1;
  border-radius: 50px;
  background-color: var(--color_main);
  color: var(--color_white);
  font-family: var(--ff_en);
  font-size: 18px;
  line-height: 1;
}
.btn-top:hover {
  background-color: var(--color_mainDark);
}
@media all and (min-width: 768px) {
  right: 40px;
  bottom: 60px;
  width: 60px;
  font-size: 20px;
}
/*  ---  フッター  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  目次  ---
● TOP

  ---  目次  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  TOP  ---   */
/* mv */
.top__mv {
  position: relative;
  margin-bottom: 0 !important;
}
.top__mv .slick-dots {
  position: absolute;
  left: 50%;
  bottom: 30px;
  transform: translateX(-50%);
  display: flex;
  gap: 10px;
  width: 100%;
  max-width: 1200px;
  padding-left: 15px;
  padding-right: 15px;
}
.top__mv .slick-dots button {
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background-color: var(--color_white);
  padding: 0;
  color: transparent;
  font-size: 6px;
  line-height: 1;
}
.top__mv .slick-dots .slick-active button {
  background-color: var(--color_main);
}
.top__mvSlide {
  aspect-ratio: 0.8815426997;
  background-repeat: no-repeat;
  background-size: cover;
}
.top__mvSlide .container {
  height: 100%;
}
.top__mvLink {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.top__mvLink:hover {
  background-color: #ffffff33;
}
@media all and (min-width: 576px) {
  .top__mvSlide {
    aspect-ratio: 2.5454545455;
  }
}
/* 各スライド */
.mv__slide1 {
  background-image: url(../images/top/mv1_sp.webp);
  background-position: center;
}
.mv__slide1 .container {
  display: flex;
  align-items: center;
  justify-content: center;
}
.mv__slide1 .top__mvText {
  padding-bottom: 3.1%;
  padding-left: 15px;
  padding-right: 15px;
}
.mv__slide1 img {
  width: 81.9vw;
}
@media all and (min-width: 576px) {
  .mv__slide1 {
    background-image: url(../images/top/mv1_pc.webp);
  }
  .mv__slide1 .container {
    justify-content: flex-end;
  }
  .mv__slide1 .top__mvText {
    padding-left: 0;
    padding-right: 0;
  }
  .mv__slide1 img {
    width: 42.6vw;
    max-width: 597px;
  }
}
@media all and (min-width: 1200px) {
  .mv__slide1 .top__mvText {
    padding-right: 40px;
  }
}
/* PRODUCTS */
.top__productBox {
  padding: 30px;
}
.top__productsTitle {
  margin-bottom: 20px;
}
.top__productsTitle .title-en {
  font-style: italic;
  font-size: var(--fs_en_60);
}
.products__tagList {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 20px;
}
.products__tagList .products__tagItem {
  display: inline-block;
  border: 1px solid var(--color_main);
  border-radius: 100vw;
  padding: 10px 20px;
  color: var(--color_main);
  line-height: 1;
}
.products__tagList .products__tagItem .text-small {
  font-size: var(--fs_14);
}
@media all and (min-width: 768px) {
  .top__productBox {
    padding: 50px;
  }
}
@media all and (min-width: 992px) {
  .top__productBox {
    padding-left: 100px;
    padding-right: 100px;
  }
}
/* //PRODUCTS */
/* CATALOG */
.top__catalog {
  background: url(../images/top/bg-catalog.webp) no-repeat center / cover;
}
.top__catalog *, .top__catalog .title-sectionBtc * {
  color: var(--color_white);
}
.top__catalog .title-sectionBtc::before {
  background-color: var(--color_white);
}
.top__catalogWrap {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.top__catalogText .text-unerTitle::after {
  content: "";
  display: block;
  width: 100%;
  max-width: 530px;
  aspect-ratio: 1.5142857143;
  margin: 30px auto 0;
  background: url(../images/catalog/general-catalog.webp) no-repeat center / contain;
}
.top__catalogImg {
  display: none;
}
@media all and (min-width: 992px) {
  .top__catalogWrap {
    flex-direction: row;
    align-items: flex-start;
  }
  .top__catalogText {
    width: calc(50% - 30px);
    margin-bottom: 0;
    margin-right: 30px;
  }
  .top__catalogText .text-unerTitle::after {
    content: none;
  }
  .top__catalogText .btn-common {
    margin-left: 0;
  }
  .top__catalogImg {
    display: block;
    width: 50%;
  }
}
/* //CATALOG */
/* 図面ダウンロード */
.top__drawing {
  position: relative;
  z-index: 1;
  text-align: center;
}
.top__drawingBox {
  /*position: absolute;
    top: -57%;
    left: 50%;
    */
  transform: translateY(-57%);
  width: 85%;
  max-width: 970px;
  margin-left: auto;
  margin-right: auto;
  box-shadow: 0 5px 5px rgba(115, 115, 115, 0.2);
  border-bottom: 8px solid var(--color_main);
  background-color: var(--color_white);
}
.top__drawingTitle {
  margin-bottom: 20px;
  font-size: var(--fs_30);
  line-height: 1.3;
}
@media all and (max-width: 767px) {
  .top__drawingText {
    text-align: center;
  }
}
/* //図面ダウンロード */
/* PRODUCTION / SUPPLY SYSTEM */
.top__prosup {
  position: relative;
  overflow: hidden;
}
.top__prosup::after {
  content: "";
  position: absolute;
  right: 0;
  top: 30px;
  transform: translateX(13.2%);
  width: 30vw;
  min-width: 240px;
  max-width: 542px;
  aspect-ratio: 1.3780487805;
  background: url(../images/top/bg-prosup.svg) no-repeat right center / contain;
}
.top__prosup .container {
  position: relative;
  z-index: 1;
}
.top__prosupList {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}
@media all and (min-width: 576px) {
  .top__prosupItem {
    width: calc((100% - 30px) / 2);
  }
}
@media all and (min-width: 768px) {
  .top__prosupList {
    row-gap: 50px;
  }
}
@media all and (min-width: 992px) {
  .top__prosupList {
    column-gap: 25px;
  }
  .top__prosupItem {
    width: calc((100% - 60px) / 3);
  }
}
/*
.top__prosupList{
    counter-reset: top_prosup;
    margin-bottom: -30px;
}
.top__prosupItem{
    margin-top: calc(40px / 2);
    margin-bottom: 30px;
}
.top__prosupBox{
    position: relative;
    max-width: 400px;
    height: 100%;
    margin-left: auto;
    margin-right: auto;
    box-shadow: 0 3px 15px rgba(137,137,137,0.3);
    background-color: var(--color_white);
    padding: 30px;
    &::before{
        counter-increment: top_prosup;
        content: counter(top_prosup, decimal-leading-zero);
        position: absolute;
        top: 0;
        left: 30px;
        transform: translateY(-50%);
        color: var(--color_main);
        font-family: var(--ff_en);
        font-size: 40px;
        line-height: 1;
    }
    &::after{
        content: "";
        position: absolute;
        top: calc(100% + 10px);
        left: 50%;
        transform: translateX(-50%);
        display: block;
        width: 0;
        height: 0;
        border-style: solid;
        border-right: 15px solid transparent;
        border-left: 15px solid transparent;
        border-top: 20px solid #d82316;
        border-bottom: 0;
    }
    .top__prosupItem:last-child &::after{
        content: none;
    }
}
.top__prosupTextBox{
    margin-bottom: 20px;
    .title-nameBbl{
        margin-bottom: 15px;
    }
}
.top__prosupText{
    line-height: 1.875;
}

@include mediaMin(768){
    .top__prosupList{
        margin-left: -25px;
        margin-right: -25px;
        margin-bottom: -50px;
    }
    .top__prosupItem{
        margin-bottom: 50px;
        padding-left: 25px;
        padding-right: 25px;
    }
    .top__prosupBox{
        max-width: none;
        .top__prosupItem:nth-child(1) &::after{
            top: 50%;
            left: calc(100% + 15px);
            transform: translateY(-50%);
            border-top: 15px solid transparent;
            border-bottom: 15px solid transparent;
            border-left: 20px solid #d82316;
            border-right: 0;
        }
        .top__prosupItem:nth-child(2) &::after{
            top: calc(100% + 25px);
        }
        .top__prosupItem:nth-child(3) &::after{
            top: 50%;
            left: auto;
            right: calc(100% + 15px);
            transform: translateY(-50%);
            border-top: 15px solid transparent;
            border-bottom: 15px solid transparent;
            border-right: 20px solid #d82316;
            border-left: 0;
        }
    }
}
@include mediaMin(1200){
    .top__prosupBox{
        display: flex;
    }
    .top__prosupTextBox{
        width: calc(100% - 230px);
        margin-bottom: 0;
        padding-right: 30px;
    }
    .top__prosupImg{
        width: 230px;
    }
}
*/
/* //PRODUCTION / SUPPLY SYSTEM */
/*  ---  TOP  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  サポート情報・参考資料・納期区分  ---   */
/* サポート情報 */
.support__list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.support__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  border: 1px solid var(--color_textGrayp);
  background-color: var(--color_white);
  padding: 20px 15px;
  text-align: center;
  font-weight: var(--fw_b);
}
.support__itemImg {
  margin-bottom: 15px;
}
.support__itemImg img {
  height: 60px;
}
.support__itemText {
  font-size: var(--fs_26);
  line-height: 1.5384615384;
}
@media all and (min-width: 576px) {
  .support__list {
    gap: 10px;
  }
  .support__item {
    width: calc((100% - 20px) / 3);
    aspect-ratio: 1.5416666667;
    padding: 20px 10px;
  }
  .support__itemImg img {
    height: 40px;
  }
  .support__itemText {
    font-size: var(--fs_14);
  }
}
@media all and (min-width: 768px) {
  .support__list {
    gap: 30px;
  }
  .support__item {
    flex-wrap: nowrap;
    width: calc((100% - 60px) / 3);
  }
  .support__itemImg {
    margin-bottom: 20px;
  }
  .support__itemImg img {
    height: 60px;
  }
  .support__itemText {
    font-size: var(--fs_16);
  }
}
@media all and (min-width: 992px) {
  .support__itemText {
    font-size: var(--fs_26);
  }
}
/* 参考資料 */
.refer-item a {
  position: relative;
  display: block;
  width: 100%;
  padding-left: 2.3125em;
  font-weight: var(--fw_b);
  line-height: 1.5;
}
.refer-item a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  width: 1.75em;
  height: 1.5625em;
  background: url(../images/common/icon-pdf.svg) no-repeat center / contain;
}
/* 納期区分 */
.deli__table {
  text-align: center;
  font-size: var(--fs_14);
  line-height: 1.5;
}
.deli__table th, .deli__table td {
  border: 1px solid var(--color_textGrayp);
  padding: 10px 20px;
  font-weight: var(--fw_m);
  vertical-align: middle;
}
.deli__table td:nth-of-type(1) {
  background-color: var(--color_gray);
  white-space: nowrap;
}
.deli__table td:nth-of-type(2) {
  text-align: left;
}
@media all and (max-width: 575px) {
  .deli__table th {
    position: sticky;
    left: 0;
    border-left: 0;
    border-right: 0;
    background-color: var(--color_white);
  }
  .deli__table th::before, .deli__table th::after {
    content: "";
    position: absolute;
    top: 0;
    width: 1px;
    height: 100%;
    background-color: var(--color_textGrayp);
  }
  .deli__table th::before {
    left: 0;
  }
  .deli__table th::after {
    right: 0;
  }
  .deli__table td:nth-of-type(1) {
    border-left: 0;
  }
}
/*  ---  サポート情報・参考資料・納期区分  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  よくある質問  ---   */
.faq__archiveList {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.faq__archiveItem {
  width: 100%;
}
.faq__archiveItem .btn-common {
  justify-content: flex-start;
  max-width: none;
  height: 100%;
  margin: 0;
  padding-left: 20px;
  text-align: left;
}
.faq__taxWrap + .faq__taxWrap {
  margin-top: 40px;
}
.faq__taxList {
  margin-top: -15px;
}
.faq__taxItem {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  border-bottom: 1px solid var(--color_textGrayp);
  padding: 15px 0;
  line-height: 1.5;
}
.faq__taxLink {
  position: relative;
  width: calc(100% - 50px - 10px);
  padding-left: 17px;
  font-weight: var(--fw_b);
}
.faq__taxLink::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.faq__taxPdf {
  width: 50px;
  margin-left: auto;
  padding: 8px 10px;
}
.faq__singleTitle {
  position: relative;
  padding-left: 1.5em;
}
.faq__singleTitle::before {
  content: "Q.";
  position: absolute;
  left: 0;
  font-family: var(--ff_en);
  font-weight: var(--fw_sb);
  font-size: var(--fs_36);
  line-height: 1;
}
@media all and (max-width: 575px) {
  .faq__taxPdf.btn-pdf::before {
    margin-right: 0;
  }
  .faq__taxPdf .faq__taxPdfText {
    display: none;
  }
}
@media all and (min-width: 576px) {
  .faq__archiveItem {
    width: calc((100% - 10px) / 2);
  }
  .faq__taxLink {
    width: calc(100% - 100px - 10px);
  }
  .faq__taxPdf {
    width: 100px;
  }
}
@media all and (min-width: 768px) {
  .faq__taxWrap + .faq__taxWrap {
    margin-top: 60px;
  }
  .faq__taxList {
    margin-top: -20px;
  }
  .faq__taxItem {
    padding: 20px 0;
  }
  .faq__taxLink {
    width: calc(100% - 170px - 20px);
  }
  .faq__taxPdf {
    width: 170px;
  }
}
@media all and (min-width: 992px) {
  .faq__archiveItem {
    width: calc((100% - 20px) / 3);
  }
  .faq__taxLink {
    width: calc(100% - 170px - 50px);
  }
}
@media all and (min-width: 1200px) {
  .faq__archiveItem {
    width: calc((100% - 30px) / 4);
  }
}
/*  ---  よくある質問  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  カタログ  ---   */
/* 総合カタログ */
.catalog__gcWrap {
  background-color: #FDF3F3;
  padding: 30px;
}
.catalog__gcWrap .btn-pdf {
  max-width: 370px;
  height: 60px;
  margin: 30px auto 0;
  padding: 10px;
}
.catalog__gcText {
  font-size: var(--fs_16);
  font-weight: var(--fw_r);
}
@media all and (min-width: 576px) {
  .catalog__gcWrap {
    padding: 50px;
  }
}
@media all and (min-width: 992px) {
  .catalog__gcWrap {
    display: flex;
  }
  .catalog__gcWrap .top__catalogText {
    width: calc(100% - 530px);
    margin: 0;
    padding-right: 30px;
  }
  .catalog__gcWrap .btn-pdf {
    margin-left: 0;
  }
  .catalog__gcWrap .top__catalogImg {
    width: 530px;
  }
}
@media all and (min-width: 1200px) {
  .catalog__gcWrap {
    padding: 100px;
  }
  .catalog__gcWrap .top__catalogText {
    padding-right: 70px;
  }
}
/* 商品パンフレット */
.catalog__paBox {
  display: flex;
  height: 100%;
  border: 1px solid var(--color_textGrayp);
  padding: 20px;
}
.catalog__paPdf {
  width: 50%;
  max-width: 160px;
}
.catalog__paPdf .btn-pdf {
  padding: 10px;
}
.catalog__paThumb {
  margin-bottom: 10px;
}
.catalog__paThumb.border-img {
  border-color: var(--color_textGrayp);
}
.catalog__paThumb img {
  aspect-ratio: 0.7070707071;
}
.catalog__paText {
  width: 100%;
  padding-left: 10px;
  line-height: 1.5;
}
.catalog__paTitle {
  margin-bottom: 10px;
  border-bottom: 1px solid var(--color_textGrayp);
  padding-bottom: 10px;
  color: var(--color_main);
  font-weight: var(--fw_b);
}
@media all and (min-width: 576px) {
  .catalog__paPdf {
    width: 160px;
  }
  .catalog__paText {
    width: calc(100% - 160px);
    padding-left: 20px;
  }
  .catalog__paTitle {
    margin-bottom: 20px;
    padding-bottom: 20px;
  }
}
@media all and (min-width: 768px) {
  .catalog__paPdf {
    width: 120px;
  }
  .catalog__paText {
    width: calc(100% - 120px);
    padding-left: 10px;
  }
}
@media all and (min-width: 992px) {
  .catalog__paPdf {
    width: 160px;
  }
  .catalog__paText {
    width: calc(100% - 160px);
    padding-left: 20px;
  }
}
/*  ---  カタログ  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  事例紹介  ---   */
.case__categoryList {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 30px;
}
.case__categoryItem {
  width: calc((100% - 10px) / 2);
}
.case__categoryBtn {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  border: 1px solid var(--color_textGrayp);
  padding: 10px 15px;
  color: var(--color_textGrayp);
  line-height: 1.3;
}
.case__categoryBtn:hover {
  background-color: var(--color_gray);
}
.case__item {
  border-top: 1px solid var(--color_textGrayp);
  padding-top: 20px;
  padding-bottom: 20px;
}
.case__item:last-child {
  border-bottom: 1px solid var(--color_textGrayp);
}
.case__itemLink {
  display: flex;
  flex-direction: column;
}
.case__itemImg {
  margin-bottom: 20px;
}
.case__itemImg img {
  aspect-ratio: 1.3333333333;
  object-fit: cover;
}
.case__info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
}
.case__info .info__Date {
  margin-right: 15px;
}
.info__category {
  border: 1px solid var(--color_main);
  padding: 5px 20px;
  color: var(--color_main);
  font-size: var(--fs_14);
  text-align: center;
  line-height: 1;
}
@media all and (min-width: 768px) {
  .case__categoryList {
    margin-bottom: 40px;
  }
  .case__categoryItem {
    width: calc((100% - 30px) / 4);
  }
  .case__categoryBtn {
    padding: 20px;
  }
  .case__item {
    padding-top: 30px;
    padding-bottom: 30px;
  }
  .case__itemLink {
    flex-direction: row;
  }
  .case__itemImg {
    width: 270px;
    margin-bottom: 0;
  }
  .case__itemText {
    width: calc(100% - 270px);
    padding-left: 20px;
  }
}
@media all and (min-width: 992px) {
  .case__itemImg {
    width: 370px;
    margin-bottom: 0;
  }
  .case__itemText {
    width: calc(100% - 370px);
    padding-left: 30px;
  }
}
/*  ---  事例紹介  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  INFORMATION お知らせ  ---   */
/* archive */
.info__item {
  border-top: 1px solid var(--color_border);
}
.info__item:last-child {
  border-bottom: 1px solid var(--color_border);
}
.info__itemUrl {
  position: relative;
  display: flex;
  flex-direction: column;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-right: 50px;
}
.info__itemUrl::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  width: 23px;
  height: 8px;
  background: url(../images/common/icon-btnarrow.svg) no-repeat right center / contain;
  pointer-events: none;
}
.info__itemUrl:hover::after {
  right: 10px;
}
.info__itemUrl .info__Date {
  margin-bottom: 10px;
}
.info__Date {
  color: var(--color_textGrayp);
  font-weight: var(--fw_sb);
  line-height: 1;
}
@media all and (min-width: 768px) {
  .info__itemUrl {
    flex-direction: row;
    align-items: center;
    padding-top: 25px;
    padding-bottom: 25px;
  }
  .info__itemUrl .info__Date {
    width: calc(10em / 2);
    margin-bottom: 0;
    margin-right: 30px;
  }
}
/* //archive */
/*  ---  INFORMATION お知らせ  ---   */
/*////////////////////////////////////////////////////////////////////// */
/* 商品情報 */
.product__termItem .btn-common {
  padding-right: 40px;
}
.product__termItem .btn-common::after {
  right: 10px;
  transform: translateY(-50%) rotate(90deg);
}
.product__lgBox {
  padding: 25px 20px;
}
.product__lgBox + .product__lgBox {
  margin-top: 40px;
}
.product__lgTitle {
  margin-bottom: 25px;
  border-bottom: 2px solid var(--color_textGrayp);
  padding-bottom: 10px;
  font-size: var(--fs_28);
  line-height: 1.3;
}
.product__orderTag {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 20px;
  font-family: var(--ff_en);
  font-style: italic;
  font-size: var(--fs_24);
  font-weight: var(--fw_sb);
  line-height: 1;
}
.product__orderTag > * {
  border-radius: 50vw;
  padding: 10px 20px;
  line-height: 1;
}
.product__tagStd {
  background-color: #D6EDD2;
  color: #208B0C;
}
.product__tagStd::before {
  content: "Standard";
}
.product__tagEo {
  background-color: #D5D8F0;
  color: #1425AA;
}
.product__tagEo::before {
  content: "Easy order";
}
.product__tagCu {
  background-color: #EBD3D2;
  color: var(--color_main);
}
.product__tagCu::before {
  content: "Custom";
}
.product__lgList {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.product__lgItem {
  width: 100%;
  background-color: var(--color_white);
  font-size: var(--fs_14);
}
.product__lgLink {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  border: 1px solid var(--color_border);
  padding: 10px 35px 10px 15px;
  line-height: 1.3;
  font-weight: var(--fw_m);
}
.product__lgLink::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
}
.product__lgLink:hover {
  background-color: var(--color_gray);
}
.product__lgItemWrap {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.product__lgItemWrap .product__lgLink {
  height: auto;
}
.product__lgItemWrap .product__lgItemText {
  height: 100%;
  border: 1px solid var(--color_border);
  border-top: 0;
  padding: 15px;
}
.product__lgItemWrap .product__lgItemText > * + * {
  margin-top: 10px;
}
.product__intro {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.product__introImg {
  position: relative;
  margin-bottom: 20px;
  aspect-ratio: 1.5625;
  display: flex;
  justify-content: center;
  align-items: center;
}
.product__introImg::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 30px;
  aspect-ratio: 1;
  background-color: var(--color_main);
  clip-path: polygon(100% 0, 0 0, 0 100%);
}
.product__intro .product__introImg {
  margin-bottom: 0;
}
.product__introImg.mr-auto.ml-auto {
  max-width: 570px;
}
.product__smIntroImg img {
  max-height: 64vw;
  margin-block: 10px;
}
@media all and (min-width: 576px) {
  .product__termItem, .product__lgItem {
    width: calc((100% - 10px) / 2);
  }
  .product__smIntroImg img {
    max-height: calc(100% - 70px);
    margin-block: 20px;
  }
}
@media all and (min-width: 768px) {
  .product__lgBox {
    padding: 30px;
  }
  .product__lgBox + .product__lgBox {
    margin-top: 60px;
  }
  .product__lgTitle {
    margin-bottom: 30px;
  }
  .product__infroImg {
    margin-bottom: 0;
  }
  .product__orderTag {
    margin-bottom: 30px;
  }
  .product__intro {
    flex-direction: row;
  }
  .product__intro > * {
    width: calc((100% - 30px) / 2);
    flex-basis: auto !important;
    flex-grow: 0 !important;
  }
}
@media all and (min-width: 992px) {
  .product__termItem, .product__lgItem {
    width: calc((100% - 20px) / 3);
  }
  .product__lgBox {
    padding: 50px;
  }
  .product__lgTitle {
    margin-bottom: 40px;
  }
  .product__introLeft {
    padding-right: 20px;
  }
  .product__introLeft + .product__introLeft {
    padding-left: 20px;
    padding-right: 0;
  }
}
/* single 特殊パーツ */
.product__singleFrow {
  counter-reset: singleFlow;
}
.product__singleFrowBox {
  margin-top: 20px !important;
}
.product__singleFrowBox > * {
  width: calc((100% - 30px) / 2);
  flex-basis: auto !important;
  flex-grow: 0 !important;
}
.product__singleFrowText {
  position: relative;
  padding-left: 25px;
}
.product__singleFrowText::before {
  counter-increment: singleFlow;
  content: counter(singleFlow);
  position: absolute;
  left: 0;
  top: 0.25em;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  aspect-ratio: 1;
  border: 1px solid;
  border-radius: 1em;
  font-size: 12px;
  font-weight: var(--fw_b);
  line-height: 1;
  letter-spacing: 0;
}
.product__singleFrowText.wp-block-column > * + * {
  margin-top: 20px;
}
@media all and (min-width: 768px) {
  .product__singleFrowText::before {
    top: 0.5em;
  }
}
/* 商品情報：中カテゴリ */
.product__smList {
  display: flex;
  flex-wrap: wrap;
  column-gap: 10px;
}
.product__smItem {
  width: 100%;
  border: 1px solid var(--color_textGrayp);
}
.product__smItem + .product__smItem {
  border-top: 0;
}
.product__smItem a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  padding: 10px;
}
.product__smItem a:hover {
  background-color: var(--color_gray);
}
.product__smThumb {
  width: 100px;
  text-align: center;
  aspect-ratio: 1.5625;
  display: flex;
  justify-content: center;
  align-items: center;
}
.product__smThumb img {
  max-width: 90px;
  max-height: 54px;
}
.product__smName {
  position: relative;
  display: flex;
  align-items: center;
  width: calc(100% - 100px - 20px);
  min-height: calc(2em + 2em * 0.5);
  padding-left: 20px;
  font-size: var(--fs_14);
  font-weight: var(--fw_m);
  line-height: 1.5;
}
.product__smName::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
@media all and (min-width: 768px) {
  .product__smItem {
    width: calc((100% - 10px) / 2);
  }
  .product__smItem:nth-child(2) {
    border-top: 1px solid var(--color_textGrayp);
  }
}
@media all and (min-width: 992px) {
  .product__smList {
    column-gap: 30px;
  }
  .product__smItem {
    width: calc((100% - 30px) / 2);
  }
}
/* 商品情報：小カテゴリ */
.product__filter {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.product__filterItem {
  display: flex;
  align-items: center;
  width: 100%;
  font-size: var(--fs_14);
}
.product__filterItem label {
  white-space: nowrap;
}
.product__filterItem .filter-select {
  display: block;
  width: 100%;
  max-width: 200px;
  border: 1px solid var(--color_textGrayp);
  background: url(../images/common/icon-angle-down.svg) no-repeat calc(100% - 10px) center / 10px;
  padding: 10px 25px 10px 10px;
}
.product__dtlTableWrap {
  overflow-x: auto;
}
.product__dtlTable th::before, .product__dtlTable td::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  border-left: 1px solid var(--color_textGrayp);
  border-bottom: 1px solid var(--color_textGrayp);
}
.product__dtlTable {
  text-align: center;
  font-size: var(--fs_14);
  font-weight: var(--fw_m);
  line-height: 1.5;
}
.product__dtlTable thead {
  position: sticky;
  top: 0;
  z-index: 1;
}
.product__dtlTable th {
  position: relative;
  background: var(--color_gray);
  padding: 10px 20px;
  vertical-align: middle;
  white-space: nowrap;
}
.product__dtlTable th::before {
  border-top: 1px solid var(--color_textGrayp);
}
.product__dtlTable th:first-child::before {
  left: 0;
}
.product__dtlTable th:last-child::before {
  border-right: 1px solid var(--color_textGrayp);
}
.product__dtlTable td {
  position: relative;
  padding: 10px 20px;
  vertical-align: middle;
  white-space: nowrap;
}
.product__dtlTable td:first-child::before {
  left: 0;
}
.product__dtlTable td:last-child::before {
  border-right: 1px solid var(--color_textGrayp);
}
.product__dtlTable .product_dtlName a {
  position: relative;
  display: inline-block;
  padding-left: 20px;
}
.product__dtlTable .product_dtlName a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.product__dtlTable .product_dtlName a:hover {
  color: var(--color_main);
}
@media all and (min-width: 576px) {
  .product__filterItem {
    width: calc((100% - 10px) / 2);
  }
  .product__filterItem .filter-select {
    max-width: 150px;
  }
}
@media all and (min-width: 768px) {
  .product__filterItem {
    width: calc((100% - 20px) / 3);
  }
}
@media all and (min-width: 992px) {
  .product__filter {
    gap: 15px;
  }
  .product__filter .filter-select {
    width: 120px;
  }
  .product__filterItem {
    width: auto;
  }
}
@media all and (min-width: 1200px) {
  .product__filter {
    gap: 20px;
  }
  .product__filter .filter-select {
    width: 125px;
  }
}
/* 商品情報：詳細 */
.product__dtlDlbtn {
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-width: 570px;
  margin-left: auto;
  margin-right: auto;
}
.product__dtlDlbtn > a {
  width: 100%;
  max-width: 370px;
  margin-left: auto;
  margin-right: auto;
}
.product__dtlSpec {
  text-align: left;
  font-size: var(--fs_14);
  font-weight: var(--fw_m);
  line-height: 1.5;
}
.product__dtlSpec th, .product__dtlSpec td {
  border: 1px solid var(--color_textGrayp);
  padding: 10px 20px;
  vertical-align: middle;
}
.product__dtlSpec th {
  background-color: var(--color_gray);
  white-space: nowrap;
}
.product__dtlSpec td {
  width: 100%;
  word-break: break-all;
}
.product__dtlSpec a {
  color: var(--color_main);
  text-decoration: underline;
  text-underline-offset: 2px;
}
@media all and (min-width: 576px) {
  .product__dtlDlbtn {
    flex-direction: row;
  }
  .product__dtlDlbtn > a {
    width: calc((100% - 20px) / 2);
  }
}
@media all and (max-width: 575px) {
  .product__dtlSpec th, .product__dtlSpec td {
    display: block;
  }
  .product__dtlSpec tr:not(:first-child) th {
    border-top: 0;
  }
  .product__dtlSpec td {
    border-top: 0;
  }
}
/*////////////////////////////////////////////////////////////////////// */
/*  ---  図面ダウンロード  ---   */
.drawing__itemLink {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  border: 1px solid var(--color_main);
}
.drawing__itemImg img {
  width: 100%;
  max-width: none;
}
.drawing__itemTitle {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  background-color: var(--color_main);
  padding: 15px 20px;
  color: var(--color_white);
  text-align: center;
  font-size: var(--fs_20);
  font-weight: var(--fw_b);
  line-height: 1.2;
}
/*  ---  図面ダウンロード  ---   */
/*////////////////////////////////////////////////////////////////////// */
/*  ---  検索結果  ---   */
.product__searchBox {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  border: 1px solid var(--color_textGrayp);
  padding: 10px;
}
.product__searchBox:hover {
  background-color: var(--color_gray);
}
.product__searchName {
  width: calc(100% - 100px);
  padding-left: 20px;
  color: var(--color_main);
  font-size: var(--fs_14);
  font-weight: var(--fw_m);
  line-height: 1.5;
}
/*# sourceMappingURL=style.css.map */