@charset "UTF-8";
/* [ 大阪真空機器（日英中） ] products.css */
/* [ 株式会社大阪真空機器製作所 ] setting */
/* [ 株式会社大阪真空機器製作所 ] component */
body {
  overflow-x: hidden;
}

/* [ メイン ] */
@media screen and (min-width: 769px) {
  .products .main-image {
    background: url("../img/products/bg_products.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .products .main-image {
    background: url("../img/products/bg_products_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .case_study .main-image {
    background: url("../img/case_study/bg_case_study.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .case_study .main-image {
    background: url("../img/case_study/bg_case_study_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .energy .main-image {
    background: url("../img/case_study/bg_energy.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .energy .main-image {
    background: url("../img/case_study/bg_energy_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .pharmaceuticals .main-image {
    background: url("../img/case_study/bg_pharmaceuticals.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .pharmaceuticals .main-image {
    background: url("../img/case_study/bg_pharmaceuticals_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .chemical .main-image {
    background: url("../img/case_study/bg_chemical.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .chemical .main-image {
    background: url("../img/case_study/bg_chemical_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .space .main-image {
    background: url("../img/case_study/bg_space.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .space .main-image {
    background: url("../img/case_study/bg_space_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .hee .main-image {
    background: url("../img/case_study/bg_hee.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .hee .main-image {
    background: url("../img/case_study/bg_hee_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .machinery .main-image {
    background: url("../img/case_study/bg_machinery.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .machinery .main-image {
    background: url("../img/case_study/bg_machinery_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .p_ce .main-image {
    background: url("../img/case_study/bg_p_ce.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .p_ce .main-image {
    background: url("../img/case_study/bg_p_ce_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .automotive .main-image {
    background: url("../img/case_study/bg_automotive.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .automotive .main-image {
    background: url("../img/case_study/bg_automotive_sp.jpg") center/cover no-repeat;
  }
}

.magnetic_turbo_pump .main-image .page-ttl {
  position: relative;
  text-align: left;
}
.magnetic_turbo_pump .main-image .page-ttl::before {
  content: '';
  position: absolute;
  top: 0;
  left: -1.5em;
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/products/icon_mtp.svg") center/contain no-repeat;
}
@media screen and (min-width: 769px) {
  .magnetic_turbo_pump .main-image {
    background: url("../img/products/bg_magnetic_turbo_pump.jpg") center/cover no-repeat;
  }
  .magnetic_turbo_pump .main-image .page-ttl::before {
    width: clamp(40px, 3.54vw, 68px);
  }
}
@media only screen and (max-width: 768px) {
  .magnetic_turbo_pump .main-image {
    background: url("../img/products/bg_magnetic_turbo_pump_sp.jpg") center/cover no-repeat;
  }
  .magnetic_turbo_pump .main-image .page-ttl::before {
    width: 30px;
  }
}
.magnetic_turbo_pump:has(.detail) .main-image.detail .page-ttl::before {
  content: '';
  display: inline-block;
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/products/icon_mtp.svg") center/contain no-repeat;
  vertical-align: top;
  margin-right: 0.25em;
}
@media screen and (min-width: 769px) {
  .magnetic_turbo_pump:has(.detail) .main-image {
    background: url("../img/products/bg_mtp_lineup.jpg") center/cover no-repeat;
  }
  .magnetic_turbo_pump:has(.detail) .main-image .page-ttl::before {
    width: clamp(32px, 2.08vw, 40px);
  }
}
@media only screen and (max-width: 768px) {
  .magnetic_turbo_pump:has(.detail) .main-image {
    background: url("../img/products/bg_mtp_lineup_sp.jpg") center/cover no-repeat;
  }
  .magnetic_turbo_pump:has(.detail) .main-image .page-ttl::before {
    width: 20px;
  }
}

.mtp_lineup .main-image .page-ttl::before {
  content: '';
  display: inline-block;
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/products/icon_mtp.svg") center/contain no-repeat;
  vertical-align: top;
  margin-right: 0.25em;
}
@media screen and (min-width: 769px) {
  .mtp_lineup .main-image {
    background: url("../img/products/bg_mtp_lineup.jpg") center/cover no-repeat;
  }
  .mtp_lineup .main-image .page-ttl::before {
    width: clamp(32px, 2.08vw, 40px);
  }
}
@media only screen and (max-width: 768px) {
  .mtp_lineup .main-image {
    background: url("../img/products/bg_mtp_lineup_sp.jpg") center/cover no-repeat;
  }
  .mtp_lineup .main-image .page-ttl::before {
    width: 20px;
  }
}

.ball_turbo_pump .main-image .page-ttl {
  position: relative;
  text-align: left;
}
.ball_turbo_pump .main-image .page-ttl::before {
  content: '';
  position: absolute;
  top: 0;
  left: -1.5em;
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/products/icon_btp.svg") center/contain no-repeat;
}
@media screen and (min-width: 769px) {
  .ball_turbo_pump .main-image {
    background: url("../img/products/bg_ball_turbo_pump.jpg") center/cover no-repeat;
  }
  .ball_turbo_pump .main-image .page-ttl::before {
    width: clamp(40px, 3.54vw, 68px);
  }
}
@media only screen and (max-width: 768px) {
  .ball_turbo_pump .main-image {
    background: url("../img/products/bg_ball_turbo_pump_sp.jpg") center/cover no-repeat;
  }
  .ball_turbo_pump .main-image .page-ttl::before {
    width: 30px;
  }
}
.ball_turbo_pump:has(.detail) .main-image.detail .page-ttl::before {
  content: '';
  display: inline-block;
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/products/icon_btp.svg") center/contain no-repeat;
  vertical-align: top;
  margin-right: 0.25em;
}
@media screen and (min-width: 769px) {
  .ball_turbo_pump:has(.detail) .main-image {
    background: url("../img/products/bg_btp_lineup.jpg") center/cover no-repeat;
  }
  .ball_turbo_pump:has(.detail) .main-image .page-ttl::before {
    width: clamp(32px, 2.08vw, 40px);
  }
}
@media only screen and (max-width: 768px) {
  .ball_turbo_pump:has(.detail) .main-image {
    background: url("../img/products/bg_btp_lineup_sp.jpg") center/cover no-repeat;
  }
  .ball_turbo_pump:has(.detail) .main-image .page-ttl::before {
    width: 20px;
  }
}

.btp_lineup .main-image .page-ttl::before {
  content: '';
  display: inline-block;
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/products/icon_btp.svg") center/contain no-repeat;
  vertical-align: top;
  margin-right: 0.25em;
}
@media screen and (min-width: 769px) {
  .btp_lineup .main-image {
    background: url("../img/products/bg_btp_lineup.jpg") center/cover no-repeat;
  }
  .btp_lineup .main-image .page-ttl::before {
    width: clamp(32px, 2.08vw, 40px);
  }
}
@media only screen and (max-width: 768px) {
  .btp_lineup .main-image {
    background: url("../img/products/bg_btp_lineup_sp.jpg") center/cover no-repeat;
  }
  .btp_lineup .main-image .page-ttl::before {
    width: 30px;
  }
}

@media screen and (min-width: 769px) {
  .pump_a .main-image {
    background: url("../img/products/bg_pump_a.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .pump_a .main-image {
    background: url("../img/products/bg_pump_a_sp.jpg") center/cover no-repeat;
  }
}

.pump_b .page-ttl {
  color: #6684A8;
  text-shadow: none;
}
@media screen and (min-width: 769px) {
  .pump_b .main-image {
    background: url("../img/products/bg_pump_b.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .pump_b .main-image {
    background: url("../img/products/bg_pump_b_sp.jpg") center/cover no-repeat;
  }
}
.pump_b:has(.detail) .page-ttl {
  color: #fff;
  text-shadow: 0px 0px 50px rgba(0, 0, 0, 0.81);
}
@media screen and (min-width: 769px) {
  .pump_b:has(.detail) .main-image {
    background: url("../img/products/bg_pb_lineup.jpg") center/cover no-repeat;
  }
  .pump_b:has(.detail) .main-image .page-ttl::before {
    width: clamp(32px, 2.08vw, 40px);
  }
}
@media only screen and (max-width: 768px) {
  .pump_b:has(.detail) .main-image {
    background: url("../img/products/bg_pb_lineup_sp.jpg") center/cover no-repeat;
  }
  .pump_b:has(.detail) .main-image .page-ttl::before {
    width: 20px;
  }
}

@media screen and (min-width: 769px) {
  .pb_lineup .main-image {
    background: url("../img/products/bg_pb_lineup.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .pb_lineup .main-image {
    background: url("../img/products/bg_pb_lineup_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .pump_c .main-image {
    background: url("../img/products/bg_pump_c.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .pump_c .main-image {
    background: url("../img/products/bg_pump_c_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .pump_d .main-image {
    background: url("../img/products/bg_pump_d.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .pump_d .main-image {
    background: url("../img/products/bg_pump_d_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .dry_pump .main-image {
    background: url("../img/products/bg_dry_pump.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .dry_pump .main-image {
    background: url("../img/products/bg_dry_pump_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .equip .main-image {
    background: url("../img/products/bg_equip.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .equip .main-image {
    background: url("../img/products/bg_equip_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .ejector .main-image {
    background: url("../img/products/bg_ejector.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .ejector .main-image {
    background: url("../img/products/bg_ejector_sp.jpg") center/cover no-repeat;
  }
}

@media screen and (min-width: 769px) {
  .system .main-image {
    background: url("../img/products/bg_system.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .system .main-image {
    background: url("../img/products/bg_system_sp.jpg") center/cover no-repeat;
  }
}
@media screen and (min-width: 769px) {
  .system:has(.detail) .main-image {
    background: url("../img/products/bg_system_lineup.jpg") center/cover no-repeat;
  }
  .system:has(.detail) .main-image .page-ttl::before {
    width: clamp(32px, 2.08vw, 40px);
  }
}
@media only screen and (max-width: 768px) {
  .system:has(.detail) .main-image {
    background: url("../img/products/bg_system_lineup_sp.jpg") center/cover no-repeat;
  }
  .system:has(.detail) .main-image .page-ttl::before {
    width: 20px;
  }
}

@media screen and (min-width: 769px) {
  .parts .main-image {
    background: url("../img/products/bg_parts.jpg") center/cover no-repeat;
  }
}
@media only screen and (max-width: 768px) {
  .parts .main-image {
    background: url("../img/products/bg_parts_sp.jpg") center/cover no-repeat;
  }
}
@media screen and (min-width: 769px) {
  .parts:has(.detail) .main-image {
    background: url("../img/products/bg_parts_lineup.jpg") center/cover no-repeat;
  }
  .parts:has(.detail) .main-image .page-ttl::before {
    width: clamp(32px, 2.08vw, 40px);
  }
}
@media only screen and (max-width: 768px) {
  .parts:has(.detail) .main-image {
    background: url("../img/products/bg_parts_lineup_sp.jpg") center/cover no-repeat;
  }
  .parts:has(.detail) .main-image .page-ttl::before {
    width: 20px;
  }
}

/*==================================================*
 *  [ 製品情報 ]
 *==================================================*/
/* [ 製品情報TOP ] */
.products #search .search-wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 100%;
}
.products #search .search-wrap label {
  font-weight: 700;
  vertical-align: middle;
  pointer-events: none;
}
.products #search .search-wrap #feas-searchform-0 {
  display: flex;
}
.products #search .search-wrap #feas-searchform-0 .search-field {
  width: 81.5%;
}
.products #search .search-wrap #feas-searchform-0 .search-field input[type="text"] {
  width: 100%;
  padding: 0.75em 1em !important;
  border: 1px solid #707070 !important;
  border-radius: 5px;
  background: #fff;
}
.products #search .search-wrap #feas-searchform-0 .search-submit {
  position: relative;
  width: fit-content;
  transition: all 0.4s ease;
}
.products #search .search-wrap #feas-searchform-0 .search-submit::before {
  content: '';
  position: absolute;
  top: 50%;
  height: auto;
  aspect-ratio: 12 / 17;
  mask-repeat: no-repeat;
  background: #3A4268;
  mask-size: contain;
  mask-image: url(../img/icon_arrow.svg);
  transform: translateY(-50%);
  z-index: +1;
  transition: background-color 0.4s ease;
}
.products #search .search-wrap #feas-searchform-0 .search-submit::after {
  content: '';
  position: absolute;
  top: 50%;
  height: auto;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  background: #fff;
  transition: all .4s ease;
  transform: translateY(-50%);
}
.products #search .search-wrap #feas-searchform-0 .search-submit input[id='feas-submit-button-0'] {
  width: fit-content;
  color: #fff;
  font-weight: 700;
  border-radius: 50px;
  background: #2D3351;
  transition: all 0.4s ease;
  cursor: pointer;
  outline: 2px solid transparent;
}
@media (hover: hover) {
  .products #search .search-wrap #feas-searchform-0 .search-submit:hover::before {
    background: #fff;
  }
  .products #search .search-wrap #feas-searchform-0 .search-submit:hover::after {
    background: #3A4268;
  }
  .products #search .search-wrap #feas-searchform-0 .search-submit:hover input[id='feas-submit-button-0'] {
    color: #3A4268;
    background: #fff;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.35);
    outline-color: #3A4268;
  }
}
@media screen and (min-width: 769px) {
  .products #search .search-wrap {
    gap: 1em;
  }
  .products #search .search-wrap label {
    font-size: 2.4rem;
  }
  .products #search .search-wrap #feas-searchform-0 {
    gap: 1em;
    width: 78%;
  }
  .products #search .search-wrap #feas-searchform-0 .search-field input[type="text"] {
    padding: 0.75em 1em !important;
  }
  .products #search .search-wrap #feas-searchform-0 .search-submit::before {
    right: 1.5em;
    width: 12px;
  }
  .products #search .search-wrap #feas-searchform-0 .search-submit::after {
    right: 1.0em;
    width: 30px;
  }
  .products #search .search-wrap #feas-searchform-0 .search-submit input[id='feas-submit-button-0'] {
    font-size: 2rem !important;
    line-height: 2.0;
    padding: 11px 60px 5px 37px;
  }
}
@media only screen and (max-width: 768px) {
  .products #search .search-wrap {
    gap: 0.5em;
  }
  .products #search .search-wrap label {
    font-size: 1.6rem;
  }
  .products #search .search-wrap #feas-searchform-0 {
    gap: 0.5em;
    width: 100%;
  }
  .products #search .search-wrap #feas-searchform-0 .search-field input[type="text"] {
    padding: 0.5em 0.75em !important;
  }
  .products #search .search-wrap #feas-searchform-0 .search-submit {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .products #search .search-wrap #feas-searchform-0 .search-submit::before {
    right: 0.55em;
    width: 8px;
  }
  .products #search .search-wrap #feas-searchform-0 .search-submit::after {
    right: 0.4em;
    width: 14px;
  }
  .products #search .search-wrap #feas-searchform-0 .search-submit input[id='feas-submit-button-0'] {
    font-size: 1.4rem !important;
    line-height: 1.429;
    padding: 5px 28px 1px 6px;
  }
}
.products .searchtab-wrap {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  height: auto;
}
.products .searchtab-wrap > input {
  display: none;
}
.products .searchtab-wrap > input:checked + label {
  position: relative;
}
.products .searchtab-wrap > input:checked + label::after {
  content: '';
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: +2;
}
.products .searchtab-wrap > input:checked + label::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 25px;
  z-index: +1;
}
.products .searchtab-wrap > input:checked + label.industrial::before {
  left: 0;
  bottom: 8px;
  background: #D9E7EF;
}
.products .searchtab-wrap > input:checked + label.product::before {
  left: 50%;
  bottom: 8px;
  transform: translateX(-50%);
  background: #D5ECDA;
}
.products .searchtab-wrap > input:checked + label.range::before {
  left: 0;
  bottom: 8px;
  background: #DFDEEB;
}
.products .searchtab-wrap > input:checked + label + [class^="tab-content-"] {
  display: block;
}
.products .searchtab-wrap > label {
  color: #fff;
  font-weight: 700;
  text-align: center;
  border-bottom: none;
  padding: 0.7em 1em;
  background: #eee;
  cursor: pointer;
  order: -1;
  text-align: center;
}
.products .searchtab-wrap > label.industrial {
  color: #3A4268;
  background: #D9E7EF;
  box-shadow: 0px 0px 6.8px 0px rgba(57, 113, 141, 0.2);
}
.products .searchtab-wrap > label.product {
  color: #1F6D5E;
  background: #D5ECDA;
  box-shadow: 0px 0px 6.8px 0px rgba(128, 178, 132, 0.25);
}
.products .searchtab-wrap > label.range {
  color: #5A4580;
  background: #DFDEEB;
  box-shadow: 0px 0px 6.8px 0px rgba(106, 86, 124, 0.25);
}
.products .searchtab-wrap > label > span {
  position: relative;
  z-index: +3;
}
.products .searchtab-wrap [class^="tab-content-"] {
  display: none;
  position: relative;
  width: 100%;
}
.products .searchtab-wrap .tab-content-industrial {
  background: #D9E7EF;
  border-radius: 20px;
  border-top-left-radius: 0;
  box-shadow: 0px 0px 6.8px 0px rgba(57, 113, 141, 0.2);
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .modal-btn {
  position: relative;
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .modal-btn .hover-txt {
  display: none;
}
@media (hover: hover) {
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .modal-btn:hover .hover-txt {
    display: inherit;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.45);
    border-radius: 10px;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .modal-btn:hover .hover-txt p {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
    color: #fff;
    font-weight: 600;
  }
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-ttl {
  width: 100%;
  color: #fff;
  font-weight: 700;
  text-align: center;
  background: #3A4268;
  border-radius: 22px;
  padding: 5px 0 2px;
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label {
  position: relative;
  display: block;
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label input[type="checkbox"] {
  display: none;
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 5px;
  background: #fff;
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label::after {
  content: '';
  position: absolute;
  height: auto;
  aspect-ratio: 4 / 3;
  background: url("../img/icon_check.svg") center/contain no-repeat;
  display: none;
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label:has(input:checked)::before {
  background: #3A4268;
  border-color: #3A4268;
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label:has(input:checked)::after {
  display: block;
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label span {
  font-weight: 600;
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap #filterButton {
  display: block;
  position: relative;
  width: fit-content;
  color: #fff;
  font-weight: 700;
  border-radius: 50px;
  background: #3A4268;
  transition: background-color 0.3s;
  cursor: pointer;
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap #filterButton::before {
  content: '';
  position: absolute;
  height: auto;
  aspect-ratio: 12 / 17;
  mask-repeat: no-repeat;
  background: #3A4268;
  mask-size: contain;
  mask-image: url(../img/icon_arrow.svg);
  transform: translateY(-50%) rotate(90deg);
  z-index: +1;
}
.products .searchtab-wrap .tab-content-industrial .tci-wrap #filterButton::after {
  content: '';
  display: inline-block;
  height: auto;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  background: #fff;
  transition: all .4s ease;
  margin-left: 0.5em;
}
@media (hover: hover) {
  .products .searchtab-wrap .tab-content-industrial .tci-wrap #filterButton:hover {
    color: #3A4268;
    background: #fff;
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.35);
    outline: 2px solid #3A4268;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap #filterButton:hover::before {
    background: #fff;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap #filterButton:hover::after {
    background: #3A4268;
  }
}
.products .searchtab-wrap .tab-content-product {
  background: #D5ECDA;
  border-radius: 20px;
  box-shadow: 0px 0px 6.8px 0px rgba(128, 178, 132, 0.25);
}
.products .searchtab-wrap .tab-content-product .tcp-wrap {
  width: 100%;
}
.products .searchtab-wrap .tab-content-product .tcp-item a {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  flex-wrap: wrap;
  width: 100%;
  height: 100%;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0px 0px 10px 0px rgba(22, 86, 52, 0.25);
  transition: none;
}
.products .searchtab-wrap .tab-content-product .tcp-item a p {
  width: 100%;
  font-weight: 700;
}
.products .searchtab-wrap .tab-content-product .tcp-item a .p-search-btn {
  display: flex;
  align-items: baseline;
  gap: 0.5em;
  width: fit-content;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 500;
  background: #2D3351;
  border-radius: 50px;
  padding: 4px 10px 1px 16px;
}
.products .searchtab-wrap .tab-content-product .tcp-item a .p-search-btn::after {
  content: '';
  width: 7px;
  height: auto;
  aspect-ratio: 12 / 17;
  mask-repeat: no-repeat;
  background: #fff;
  mask-size: contain;
  mask-image: url("../img/icon_arrow.svg");
  z-index: +1;
  transition: background .3s ease;
}
@media (hover: hover) {
  .products .searchtab-wrap .tab-content-product .tcp-item a:hover {
    outline: 3px solid #2D3351;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item a:hover .p-search-btn {
    color: #2D3351;
    background: #fff;
    outline: 3px solid #2D3351;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item a:hover .p-search-btn::after {
    background: #2D3351;
  }
}
.products .searchtab-wrap .tab-content-product .tcp-item:nth-child(1) a p {
  display: flex;
  align-items: center;
  justify-content: center;
}
.products .searchtab-wrap .tab-content-product .tcp-item:nth-child(1) a p::before {
  content: '';
  display: inline-block;
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/products/icon_mtp.svg") center/contain no-repeat;
  vertical-align: top;
  margin-right: 0.25em;
}
.products .searchtab-wrap .tab-content-product .tcp-item:nth-child(2) a p {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.products .searchtab-wrap .tab-content-product .tcp-item:nth-child(2) a p::before {
  content: '';
  display: inline-block;
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/products/icon_btp.svg") center/contain no-repeat;
  vertical-align: top;
  margin-right: 0.25em;
}
.products .searchtab-wrap .tab-content-range {
  background: #DFDEEB;
  border-radius: 20px;
  border-top-right-radius: 0;
  box-shadow: 0px 0px 6.8px 0px rgba(106, 86, 124, 0.25);
}
.products .searchtab-wrap .tab-content-range .tcr-wrap {
  display: block;
  width: 100%;
  height: 100%;
  background: #fff;
}
.products .searchtab-wrap .tab-content-range .tcr-wrap .high p {
  color: #1F6D5E;
  border: 2px solid #1F6D5E;
}
.products .searchtab-wrap .tab-content-range .tcr-wrap .high svg a {
  outline: 2px solid transparent;
  transition: all 0.4s ease;
}
.products .searchtab-wrap .tab-content-range .tcr-wrap .high svg a rect {
  transition: fill 0.3s ease;
}
@media (hover: hover) {
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high svg a:hover {
    outline: 2px solid #1F6D5E;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high svg a:hover rect {
    fill: #fff;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high svg a:hover path {
    fill: #1F6D5E;
  }
}
.products .searchtab-wrap .tab-content-range .tcr-wrap .low p {
  color: #3A4268;
  border: 2px solid #3A4268;
}
.products .searchtab-wrap .tab-content-range .tcr-wrap .low svg a {
  outline: 2px solid transparent;
  transition: all 0.4s ease;
}
.products .searchtab-wrap .tab-content-range .tcr-wrap .low svg a rect {
  transition: fill 0.3s ease;
}
@media (hover: hover) {
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low svg a:hover {
    outline: 2px solid #3A4268;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low svg a:hover rect {
    fill: #fff;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low svg a:hover path {
    fill: #3A4268;
  }
}
.products .searchtab-wrap + .tci-result {
  display: none;
}
.products .searchtab-wrap:has(#tab-industrial:checked) + .tci-result {
  display: block;
}
@media screen and (min-width: 769px) {
  .products .searchtab-wrap {
    gap: 0 1.56vw;
    margin-bottom: -1.04vw;
  }
  .products .searchtab-wrap > input:checked + label.industrial::after {
    bottom: 10%;
    width: clamp(190px, 13.54vw, 260px);
    height: auto;
    aspect-ratio: 260 / 33;
    background: url("../img/products/txt_industrial.svg") center/contain no-repeat;
  }
  .products .searchtab-wrap > input:checked + label.product::after {
    bottom: 10%;
    width: clamp(169px, 12.45vw, 239px);
    height: auto;
    aspect-ratio: 239 / 39;
    background: url("../img/products/txt_product.svg") center/contain no-repeat;
  }
  .products .searchtab-wrap > input:checked + label.range::after {
    bottom: 10%;
    width: clamp(204px, 16.2vw, 311px);
    height: auto;
    aspect-ratio: 311 / 31;
    background: url("../img/products/txt_range.svg") center/contain no-repeat;
  }
  .products .searchtab-wrap > label {
    width: calc((100% - (1.56vw * 2)) / 3);
    font-size: clamp(1.6rem, 1.25vw, 2.4rem);
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    padding: min(40px, 2.08vw) 0 45px;
  }
  .products .searchtab-wrap [class^="tab-content-"] {
    margin-top: -20px;
    padding: 3.13vw 2.08vw;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap {
    gap: 20px;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item {
    gap: 12px;
    width: calc((100% - (20px * 4)) / 5);
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-ttl {
    font-size: clamp(1.4rem, 0.94vw, 1.8rem);
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label {
    padding-left: 1.8em;
    margin-bottom: 0.5em;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label::before {
    width: 23px;
    height: 23px;
    border: 2px solid #A6A6A6;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label::after {
    top: 5px;
    left: 4px;
    width: 16px;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label span {
    font-size: clamp(1.2rem, 0.78vw, 1.5rem);
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap #filterButton {
    font-size: 2.0rem;
    padding: 14px 32px 12px 52px;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap #filterButton::before {
    top: 54%;
    right: 41px;
    width: 12px;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap #filterButton::after {
    width: 30px;
    vertical-align: text-bottom;
  }
  .products .searchtab-wrap .tab-content-product .tcp-wrap {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    grid-template-rows: repeat(3, 1fr);
    grid-column-gap: 18px;
    grid-row-gap: 20px;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(1) {
    grid-area: 1 / 1 / 2 / 4;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(1) a p::before {
    width: 33px;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(1) a img {
    width: 60%;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(2) {
    grid-area: 1 / 4 / 2 / 7;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(2) a p::before {
    width: 33px;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(2) a img {
    width: 60%;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(3) {
    grid-area: 1 / 7 / 2 / 9;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(4) {
    grid-area: 2 / 1 / 3 / 3;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(5) {
    grid-area: 2 / 3 / 3 / 5;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(6) {
    grid-area: 2 / 5 / 3 / 7;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(7) {
    grid-area: 2 / 7 / 3 / 9;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(8) {
    grid-area: 3 / 1 / 4 / 3;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(9) {
    grid-area: 3 / 3 / 4 / 5;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(10) {
    grid-area: 3 / 5 / 4 / 7;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(11) {
    grid-area: 3 / 7 / 4 / 9;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-of-type(n+3) a {
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item a {
    padding: 20px 12px 12px;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item a p {
    font-size: 1.8rem;
    text-align: center;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap {
    padding: 14px 0 30px;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high p {
    width: calc(100% - (3% * 2));
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    padding: 12px 20px 7px;
    margin: 10px 3% 7px;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high svg a {
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border-radius: 50px;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low p {
    width: calc(100% - (3% * 2));
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    padding: 12px 20px 7px;
    margin: 20px 3% 7px;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low svg a {
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border-radius: 50px;
  }
}
@media only screen and (max-width: 768px) {
  .products input[type="text"] {
    width: 40%;
  }
  .products .searchtab-wrap {
    gap: 0 12px;
    margin-bottom: -20px;
  }
  .products .searchtab-wrap > input:checked + label.industrial::after {
    bottom: 10%;
    width: 84px;
    height: 36px;
    background: url("../img/products/txt_industrial_sp.svg") center/contain no-repeat;
  }
  .products .searchtab-wrap > input:checked + label.product::after {
    bottom: 10%;
    width: 68px;
    height: 36px;
    background: url("../img/products/txt_product_sp.svg") center/contain no-repeat;
  }
  .products .searchtab-wrap > input:checked + label.range::after {
    bottom: -1em;
    width: 74px;
    height: 61px;
    background: url("../img/products/txt_range_sp.svg") center/contain no-repeat;
  }
  .products .searchtab-wrap > label {
    width: calc((100% - 24px) / 3);
    font-size: 1.4rem;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    padding: 15px 0.8em 25px;
  }
  .products .searchtab-wrap [class^="tab-content-"] {
    margin-top: -20px;
    padding: 36px 14px 40px;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap {
    gap: 12px;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item {
    gap: 10px;
    width: calc((100% - (12px * 2)) / 3);
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .modal-btn {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .modal-btn img {
    width: 100%;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-ttl {
    font-size: clamp(1.2rem, 3.2vw, 1.6rem);
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label {
    padding-left: 1.5em;
    margin-bottom: 0.5em;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label::before {
    width: 20px;
    height: 20px;
    border: 1px solid #A6A6A6;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label::after {
    top: 5px;
    left: 3px;
    width: 14px;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap .tci-item .list-checkbox label span {
    font-size: clamp(1.2rem, 0.78vw, 1.5rem);
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap #filterButton {
    font-size: clamp(1.6rem, 4.27vw, 2rem);
    padding: 8px 26px 6px 40px;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap #filterButton::before {
    top: 54%;
    right: 32px;
    width: 12px;
  }
  .products .searchtab-wrap .tab-content-industrial .tci-wrap #filterButton::after {
    width: 24px;
    vertical-align: middle;
  }
  .products .searchtab-wrap .tab-content-product .tcp-wrap {
    display: flex;
    flex-flow: wrap;
    gap: 15px 18px;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(1) {
    width: 100%;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(1) a {
    padding: 14px 18px 16px;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(1) a p {
    margin-bottom: 8px;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(1) a p::before {
    width: 30px;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(1) a img {
    width: 70%;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(2) {
    width: 100%;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(2) a {
    padding: 14px 18px 16px;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(2) a p {
    margin-bottom: 8px;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(2) a p::before {
    width: 30px;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(2) a img {
    width: 70%;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(3) {
    width: 100%;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(3) a {
    padding: 14px 18px 16px;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-child(3) a img {
    width: 70%;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-of-type(n+4) {
    width: calc(50% - 9px);
  }
  .products .searchtab-wrap .tab-content-product .tcp-item:nth-of-type(n+4) a {
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 14px 6px 12px;
  }
  .products .searchtab-wrap .tab-content-product .tcp-item a p {
    font-size: 1.6rem;
    text-align: center;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap {
    padding: 17px min(30px, 1.56vw) 30px;
    display: flex;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high {
    width: 45.2%;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high p {
    width: calc(100% - (8px * 2));
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    font-size: clamp(1.2rem, 2.8vw, 1.6rem);
    text-align: center;
    padding: 12px 0 7px;
    margin: 10px 8px 20px;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high svg {
    width: 100%;
    height: auto;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high svg a {
    border-radius: 10px;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high .high-wrap > div:first-child {
    width: 100%;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high .high-wrap > div:first-child svg {
    aspect-ratio: 246 / 625;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high .high-wrap > div:last-child {
    display: none;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low {
    width: 57.25%;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low p {
    width: calc(80% - (8px * 2));
    border-radius: 10px;
    font-size: clamp(1.2rem, 2.8vw, 1.6rem);
    text-align: center;
    padding: 12px 0 7px;
    margin: 10px 8px 20px;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low svg {
    width: 100%;
    height: auto;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low svg a {
    border-radius: 10px;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low .low-wrap {
    display: flex;
    align-items: flex-end;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low .low-wrap > div:first-child {
    width: 80.75%;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low .low-wrap > div:first-child svg {
    aspect-ratio: 251 / 625;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low .low-wrap > div:last-child {
    width: 19.25%;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low .low-wrap > div:last-child svg {
    aspect-ratio: 5 / 42;
  }
}
@media screen and (width <= 428px) {
  .products .searchtab-wrap .tab-content-range .tcr-wrap {
    padding: 17px 0 30px;
    display: block;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high .high-wrap, .products .searchtab-wrap .tab-content-range .tcr-wrap .high .low-wrap, .products .searchtab-wrap .tab-content-range .tcr-wrap .low .high-wrap, .products .searchtab-wrap .tab-content-range .tcr-wrap .low .low-wrap {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    gap: 12px;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high {
    width: 100%;
    padding: 0 8px;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high p {
    width: 100%;
    font-size: 1.6rem;
    margin: 10px 0 20px;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high .high-wrap > div:first-child {
    width: calc(79.25% - 6px);
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high .high-wrap > div:last-child {
    display: inline-block;
    width: calc(20.75% - 6px);
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .high .high-wrap > div:last-child svg {
    aspect-ratio: 3 / 25;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low {
    width: 100%;
    padding: 0 8px;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low p {
    width: 100%;
    font-size: 1.6rem;
    margin: 40px 0 20px;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low .low-wrap {
    margin-top: -2em;
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low .low-wrap > div:first-child {
    width: calc(78.75% - 6px);
  }
  .products .searchtab-wrap .tab-content-range .tcr-wrap .low .low-wrap > div:last-child {
    width: calc(21.25% - 6px);
  }
}

/* [ 産業分野から探す モーダル ] */
body.modal-open {
  position: fixed;
  width: 100%;
  overflow-y: scroll;
}

.modal {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.6);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease, visibility 0.25s ease;
  padding: 40px 20px;
  z-index: 9999;
}
.modal.active {
  opacity: 1;
  visibility: visible;
}

.modal-content {
  position: relative;
  background: #fff;
}
.modal-content img {
  max-width: 100%;
  height: auto;
}
.modal-content .modal-body {
  max-height: 90vh;
  box-sizing: border-box;
  overflow-y: auto;
}
.modal-content .modal-body .flex-half .half-item {
  color: #576984;
}
.modal-content .modal-body .flex-half .half-item .industry-name {
  font-weight: 700;
}
.modal-content .modal-body .flex-half .half-item .industry-txt {
  line-height: 2.25;
}
.modal-content .modal-body .flex-half .half-item .industry-txt a {
  color: #576984;
  text-decoration: underline;
}
@media (hover: hover) {
  .modal-content .modal-body .flex-half .half-item .industry-txt a:hover {
    text-decoration: none;
  }
}
.modal-content .modal-body .ind-example {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  border: 1px solid #4D6B92;
}
.modal-content .modal-body .ind-example p {
  color: #4D6B92;
}
.modal-content .modal-body .ind-example p:has(b) {
  font-weight: 700;
  line-height: 1.667;
}
.modal-content .modal-body .ind-example p:first-child {
  width: 4em;
}
.modal-content .modal-body .ind-example p:last-child {
  flex: 1;
  border-left: 1px solid #4D6B92;
}
@media screen and (min-width: 769px) {
  .modal-content .modal-body {
    max-width: 1492px;
    padding: 7% 10% 5%;
  }
  .modal-content .modal-body .flex-half .half-item {
    font-size: clamp(2rem, 1.46vw, 2.8rem);
  }
  .modal-content .modal-body .flex-half .half-item:has(img) {
    text-align: right;
  }
  .modal-content .modal-body .flex-half .industry-txt {
    font-size: clamp(1.6rem, 1.04vw, 2rem);
  }
  .modal-content .modal-body .ind-example {
    border-radius: 106px;
    padding: 1em 3.13vw 1em 4.27vw;
  }
  .modal-content .modal-body .ind-example p {
    font-size: clamp(1.4rem, 0.94vw, 1.8rem);
  }
  .modal-content .modal-body .ind-example p:has(b) {
    font-size: clamp(2rem, 1.46vw, 2.8rem);
  }
  .modal-content .modal-body .ind-example p:last-child {
    padding-left: 1.75em;
  }
}
@media only screen and (max-width: 768px) {
  .modal-content .modal-body {
    padding: 15% 6% 10%;
  }
  .modal-content .modal-body .flex-half .half-item {
    font-size: clamp(1.6rem, 4.27vw, 2rem);
  }
  .modal-content .modal-body .flex-half .half-item:has(img) {
    text-align: center;
  }
  .modal-content .modal-body .flex-half .industry-txt {
    font-size: clamp(1.2rem, 3.2vw, 1.6rem);
  }
  .modal-content .modal-body .ind-example {
    border-radius: 25px;
    padding: 1em 3.13vw 1em 4.27vw;
  }
  .modal-content .modal-body .ind-example p {
    font-size: clamp(1.2rem, 2.67vw, 1.6rem);
  }
  .modal-content .modal-body .ind-example p:has(b) {
    font-size: clamp(1.4rem, 3.73vw, 2rem);
  }
  .modal-content .modal-body .ind-example p:last-child {
    padding-left: 1.5em;
  }
}

.modal-close {
  position: absolute;
  background: none;
  border: none;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .modal-close {
    top: min(55px, 2.86vw);
    right: min(87px, 4.53vw);
  }
}
@media only screen and (max-width: 768px) {
  .modal-close {
    top: clamp(1.5em, 6.4vw, 55px);
    right: clamp(1.5em, 6.4vw, 55px);
    width: clamp(70px, 18.67vw, 90px);
    height: auto;
  }
}

/* [ 産業分野から探す 検索結果 ] */
.tci-result #resultTitle {
  display: none;
}
.tci-result .result-section {
  display: none;
  margin-top: 1rem;
}
.tci-result .result-section .result-list {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 0 40px;
  list-style: none;
  width: 100%;
}
.tci-result .result-section .js-filterItem {
  display: none;
  position: relative;
  border-top: 1px solid #707070;
  border-bottom: 1px solid #707070;
  margin-bottom: -1px;
}
.tci-result .result-section .js-filterItem::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 5%;
  width: 10px;
  height: auto;
  aspect-ratio: 12 / 17;
  mask-repeat: no-repeat;
  background: #5F6368;
  mask-size: contain;
  mask-image: url("../img/icon_arrow.svg");
  transform: translateY(-50%);
  z-index: +1;
  transition: background .3s ease;
}
.tci-result .result-section .js-filterItem b {
  font-family: "Jost", sans-serif;
  font-weight: 500;
}
.tci-result .result-section .js-filterItem a {
  display: block;
}
.tci-result .result-section .js-filterItem a > span {
  font-weight: 700;
}
@media (hover: hover) {
  .tci-result .result-section .js-filterItem:hover {
    opacity: 0.5;
  }
}
@media screen and (min-width: 769px) {
  .tci-result .result-section .js-filterItem {
    width: calc(50% - 20px);
    font-size: 2.0rem;
  }
  .tci-result .result-section .js-filterItem a {
    padding: 22px 60px 18px 16px;
  }
  .tci-result .result-section .js-filterItem p {
    font-size: 1.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .tci-result .result-section .result-list {
    justify-content: center;
  }
  .tci-result .result-section .js-filterItem {
    width: 100%;
    font-size: 1.6rem;
  }
  .tci-result .result-section .js-filterItem a {
    padding: 16px 50px 14px 16px;
  }
  .tci-result .result-section .js-filterItem p {
    font-size: 1.2rem;
  }
}

/* [ 検索結果 ] */
#search-result ul {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  list-style: none;
}
#search-result ul li {
  border-radius: 10px;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
}
#search-result ul li a {
  display: block;
  width: 100%;
  font-family: "Jost", sans-serif;
  text-align: center;
  padding: 22px 0 17px;
}
#search-result ul li a .p-cate {
  display: block;
  width: 100%;
  color: #3A4268;
  text-align: left;
  border-left: 4px solid #3A4268;
  padding: 0 0.5em 0 0.25em;
}
#search-result ul li a .item-image {
  width: 90%;
  aspect-ratio: 109 / 93;
  object-fit: contain;
  margin-top: 10px;
}
#search-result ul li a .c-cate {
  font-weight: 500;
  word-break: break-all;
  margin-top: 10px;
}
#search-result ul li a .item-ttl {
  font-size: 2.0rem;
  word-break: break-all;
  font-weight: 700;
}
@media (hover: hover) {
  #search-result ul li:hover {
    outline: 3px solid #3A4268;
  }
}
@media screen and (min-width: 769px) {
  #search-result {
    margin-bottom: 80px;
  }
  #search-result ul {
    gap: 38px 17px;
  }
  #search-result ul li {
    width: calc((100% - (17px * 3)) / 4);
  }
}
@media screen and (769px <= width <= 1080px) {
  #search-result ul li {
    width: calc((100% - (17px * 2)) / 3);
  }
}
@media only screen and (max-width: 768px) {
  #search-result {
    margin-bottom: 13.33vw;
  }
  #search-result ul {
    gap: 30px 17px;
  }
  #search-result ul li {
    width: calc((100% - 17px) / 2);
  }
  #search-result ul li a {
    font-size: 1.4rem;
  }
  #search-result ul li a .item-ttl {
    font-size: 1.6rem;
  }
}

/* [ 事例紹介 ] */
#example ul {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
  list-style: none;
}
#example ul li {
  border-radius: 10px;
  box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.25);
}
#example ul li a {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}
#example ul li a img {
  width: 100%;
}
#example ul li a .ex-detail {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
#example ul li a .ex-detail > div {
  display: flex;
  gap: 0.5em;
}
#example ul li a .ex-detail > div span {
  color: #fff;
  font-weight: 500;
  background: #141414;
  border-radius: 5px;
}
#example ul li a .ex-detail > div time {
  color: #AAA;
  font-family: "Jost", sans-serif;
  font-weight: 500;
}
#example ul li a .ex-detail .ex-txt {
  font-weight: 700;
}
#example ul li a .ex-detail b {
  position: relative;
  display: block;
  color: #1046A0;
  font-weight: 700;
  text-align: right;
  margin-top: auto;
}
#example ul li a .ex-detail b::before {
  content: '';
  position: absolute;
  height: auto;
  aspect-ratio: 12 / 17;
  mask-repeat: no-repeat;
  background: #fff;
  mask-size: contain;
  mask-image: url("../img/icon_arrow.svg");
  transform: translateY(-50%);
  z-index: +1;
  transition: background .3s ease;
}
#example ul li a .ex-detail b::after {
  content: '';
  display: inline-block;
  height: auto;
  aspect-ratio: 1 / 1;
  vertical-align: text-bottom;
  border: 2px solid #1046A0;
  border-radius: 50%;
  background: #1046A0;
  box-shadow: 0 0 6.8px 0 rgba(57, 113, 141, 0.8);
  margin-left: 0.5em;
  transition: background .3s ease;
}
@media (hover: hover) {
  #example ul li:hover {
    outline: 3px solid #1046A0;
  }
  #example ul li:hover a .ex-detail b {
    color: #5384D5;
  }
  #example ul li:hover a .ex-detail b::before {
    background: #1046A0;
  }
  #example ul li:hover a .ex-detail b::after {
    background: #fff;
  }
}
@media screen and (min-width: 769px) {
  #example {
    margin-bottom: 130px;
  }
  #example .example-wrap {
    margin-bottom: 60px;
  }
  #example ul {
    gap: clamp(40px, 3.13vw, 60px) clamp(12px, 1.04vw, 20px);
  }
  #example ul li {
    width: calc((100% - (clamp(12px, 1.04vw, 20px) * 3)) / 4);
    min-width: 220px;
  }
  #example ul li a img {
    aspect-ratio: 61 / 35;
    object-fit: cover;
    border-radius: 10px 10px 0 0;
  }
  #example ul li a .ex-detail {
    padding: 20px 13px 14px;
  }
  #example ul li a .ex-detail > div span {
    font-size: clamp(1.2rem, 0.73vw, 1.4rem);
    padding: 3px 5px 0;
  }
  #example ul li a b {
    line-height: 30px;
  }
  #example ul li a b::before {
    right: 7px;
    width: 12px;
    top: 45%;
  }
  #example ul li a b::after {
    width: 30px;
  }
}
@media screen and (769px <= width <= 1080px) {
  #example ul li {
    width: calc((100% - (20px * 2)) / 3);
  }
}
@media only screen and (max-width: 768px) {
  #example {
    margin-bottom: 45px;
  }
  #example .example-wrap {
    margin-bottom: 30px;
  }
  #example ul {
    flex-direction: column;
    gap: 4vw;
  }
  #example ul li {
    width: 100%;
  }
  #example ul li a {
    flex-direction: row;
    font-size: 1.4rem;
  }
  #example ul li a img {
    width: 43.8%;
    height: auto;
    aspect-ratio: 10 / 7;
    object-fit: cover;
    border-radius: 10px 0 0 10px;
  }
  #example ul li a .ex-detail {
    flex: 1;
    padding: 10px 13px;
  }
  #example ul li a .ex-detail > div span {
    font-size: clamp(1rem, 2.67vw, 1.4rem);
    padding: 3px 5px 0;
  }
  #example ul li a .ex-detail > div time {
    font-size: clamp(1.3rem, 3.47vw, 1.6rem);
  }
  #example ul li a .ex-detail .ex-txt {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
  }
  #example ul li a .ex-detail b {
    font-size: clamp(1.3rem, 3.47vw, 1.6rem);
    line-height: 18px;
  }
  #example ul li a .ex-detail b::before {
    top: 51%;
    right: clamp(4px, 1.07vw, 7px);
    width: clamp(8px, 2.13vw, 12px);
  }
  #example ul li a .ex-detail b::after {
    width: clamp(18px, 4.8vw, 30px);
  }
}

/* [ 事例紹介 ] */
@media only screen and (max-width: 768px) {
  .selectbox .cat-select {
    appearance: none;
    -webkit-appearance: none;
    width: 210px;
    color: #6E6E6E;
    font-weight: 700;
    border: 2px solid #1046A0;
    border-radius: 10px;
    padding: 13px 0 10px 0.75em;
    background-image: linear-gradient(90deg, white 85%, #1046a0 85%);
    cursor: pointer;
  }
  .selectbox .cat-select option {
    font-weight: 700;
  }
}
.article .content .content-case_study .article-ttl {
  display: flex;
  justify-content: flex-start;
  flex-direction: column-reverse;
}
.article .content .content-case_study .article-ttl h1 {
  font-weight: 500;
}
.article .content .content-case_study .article-ttl p {
  margin-bottom: 0;
}
.article .content .content-case_study .article-ttl p b {
  display: inline-block;
  width: fit-content;
  color: #fff;
  font-weight: 600;
  letter-spacing: 0.1em;
  border-radius: 5px;
  background: #141414;
}
.article .content .content-case_study .article-ttl p time {
  font-family: "Jost", sans-serif;
  color: #AAA;
  font-weight: 500;
}
.article .content .content-case_study .eyecatch {
  text-align: center;
}
.article .content .content-case_study section h2 {
  color: #1046A0;
  font-weight: 600;
  padding: 0.25em 0.5em;
}
.article .content .content-case_study section ul {
  margin-left: 1.0em;
}
.article .content .content-case_study .case_study-products {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
  width: 100%;
  list-style: none;
  margin-left: 0 !important;
}
.article .content .content-case_study .case_study-products li a {
  display: block;
  color: #141414;
  text-align: center;
  text-decoration: none;
}
.article .content .content-case_study .case_study-products li a .product-img {
  display: flex;
  justify-content: center;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
  padding: 5% 0;
}
.article .content .content-case_study .case_study-products li a .product-img img {
  width: 90%;
  object-fit: contain;
}
.article .content .content-case_study .case_study-products li a .product-name {
  font-family: "Jost", sans-serif;
  font-weight: 700;
  word-break: break-all;
}
.article .content .content-case_study .case_study-products li a .product-txt {
  color: #1046A0;
  font-weight: 600;
  margin-bottom: 0;
}
@media (hover: hover) {
  .article .content .content-case_study .case_study-products li a:hover .product-img {
    outline: 3px solid #3A4268;
  }
  .article .content .content-case_study .case_study-products li a:hover .product-name {
    color: #337CCF;
  }
}
.article .content .content-case_study .similar-ex {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
  width: 100%;
  list-style: none;
  margin-left: 0 !important;
}
.article .content .content-case_study .similar-ex li a {
  display: block;
  color: #141414;
  text-align: center;
  text-decoration: none;
}
.article .content .content-case_study .similar-ex li a .similar-img {
  display: flex;
  justify-content: center;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
}
.article .content .content-case_study .similar-ex li a .similar-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.article .content .content-case_study .similar-ex li a .similar-txt {
  font-weight: 600;
  margin-bottom: 0;
}
@media (hover: hover) {
  .article .content .content-case_study .similar-ex li a:hover .similar-img {
    outline: 3px solid #3A4268;
  }
  .article .content .content-case_study .similar-ex li a:hover .similar-txt {
    color: #337CCF;
  }
}
.article .content .content-case_study .prev-btn {
  display: block;
  width: fit-content;
  border: 1px solid #BCCFDA;
  border-radius: 50px;
}
.article .content .content-case_study .prev-btn span {
  display: inline-block;
  position: relative;
  width: fit-content;
  color: #3F3A87;
  font-weight: 500;
}
.article .content .content-case_study .prev-btn span::before {
  content: '';
  display: inline-block;
  position: absolute;
  left: 0;
  border-radius: 50%;
  border: 1px solid #3F3A87;
  transition: all .4s ease;
  transform: translateY(-50%);
  z-index: +2;
}
.article .content .content-case_study .prev-btn span::after {
  content: '';
  display: inline-block;
  position: absolute;
  background: #3F3A87;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("../img/icon_arrow.svg");
  transform: translateY(-50%) scale(-1, 1);
  z-index: +3;
}
@media (hover: hover) {
  .article .content .content-case_study .prev-btn:hover {
    border-color: #3F3A87;
    background: #3F3A87;
  }
  .article .content .content-case_study .prev-btn:hover span {
    color: #fff;
  }
  .article .content .content-case_study .prev-btn:hover span::before {
    background: #fff;
  }
}
@media screen and (min-width: 769px) {
  .article .content .content-case_study {
    max-width: 1050px;
    padding: 0 3.91vw;
  }
  .article .content .content-case_study .article-ttl {
    gap: 53px;
    margin-bottom: 50px;
  }
  .article .content .content-case_study .article-ttl h1 {
    font-size: 2.2rem;
  }
  .article .content .content-case_study .article-ttl p b {
    font-size: 1.4rem;
    padding: 2px 17px 0;
  }
  .article .content .content-case_study .article-ttl p time {
    margin-left: 17px;
  }
  .article .content .content-case_study .eyecatch {
    max-width: 900px;
    margin-bottom: 50px;
  }
  .article .content .content-case_study section {
    margin-bottom: 40px;
  }
  .article .content .content-case_study section h2 {
    font-size: 1.8rem;
    border-left: 4px solid #1046A0;
    margin-top: 60px;
    margin-bottom: 24px;
  }
  .article .content .content-case_study .case_study-products {
    gap: 27.5px;
  }
  .article .content .content-case_study .case_study-products li {
    width: calc((100% - (27.5px * 3)) / 4);
  }
  .article .content .content-case_study .case_study-products li a .product-img {
    border-radius: 10px;
    margin-bottom: 16px;
  }
  .article .content .content-case_study .case_study-products li a .product-name {
    margin-bottom: 15px;
  }
  .article .content .content-case_study .case_study-products li a .product-txt {
    line-height: 1.375;
  }
  .article .content .content-case_study .similar-ex {
    gap: 27.5px;
  }
  .article .content .content-case_study .similar-ex li {
    width: calc((100% - (27.5px * 3)) / 4);
  }
  .article .content .content-case_study .similar-ex li a .similar-img {
    border-radius: 10px;
    margin-bottom: 16px;
  }
  .article .content .content-case_study .similar-ex li a .similar-img img {
    border-radius: 10px;
  }
  .article .content .content-case_study .similar-ex li a .similar-txt {
    line-height: 1.375;
  }
  .article .content .content-case_study .prev-btn {
    min-width: 245px;
    padding: 20.5px 60.3px;
    margin: 147.5px auto 0;
  }
  .article .content .content-case_study .prev-btn span {
    font-size: 2.2rem;
    padding-left: 56px;
    transform: translateY(4px);
  }
  .article .content .content-case_study .prev-btn span::before {
    top: 40%;
    left: 0;
    width: 40px;
    height: 40px;
  }
  .article .content .content-case_study .prev-btn span::after {
    top: 40%;
    left: 12px;
    width: 12px;
    height: 17px;
  }
}
@media only screen and (max-width: 768px) {
  .article .content .content-case_study {
    width: 100%;
    padding: 9.33vw 5px 26.67vw;
  }
  .article .content .content-case_study .article-ttl {
    gap: 24px;
    margin-bottom: 30px;
  }
  .article .content .content-case_study .article-ttl h1 {
    font-size: 1.8rem;
  }
  .article .content .content-case_study .article-ttl p b {
    font-size: 0.9rem;
    padding: 2px 10px 0;
  }
  .article .content .content-case_study .article-ttl p time {
    font-size: 1.4rem;
    margin-left: 12px;
  }
  .article .content .content-case_study .eyecatch {
    width: 100%;
    margin-bottom: 50px;
  }
  .article .content .content-case_study section {
    margin-bottom: 30px;
  }
  .article .content .content-case_study section h2 {
    font-size: 1.6rem;
    border-left: 3px solid #1046A0;
    margin-top: 45px;
    margin-bottom: 19px;
  }
  .article .content .content-case_study section ul li {
    font-size: 1.4rem;
  }
  .article .content .content-case_study .case_study-products {
    gap: 20px;
  }
  .article .content .content-case_study .case_study-products li {
    width: calc((100% - 20px) / 2);
  }
  .article .content .content-case_study .case_study-products li a .product-img {
    border-radius: 8px;
    margin-bottom: 8px;
  }
  .article .content .content-case_study .case_study-products li a .product-name {
    font-size: 1.4rem;
    line-height: 1.4;
    margin-bottom: 8px;
  }
  .article .content .content-case_study .case_study-products li a .product-txt {
    font-size: 1.4rem;
    line-height: 1.375;
  }
  .article .content .content-case_study .similar-ex {
    gap: 20px;
  }
  .article .content .content-case_study .similar-ex li {
    width: calc((100% - 20px) / 2);
  }
  .article .content .content-case_study .similar-ex li a .similar-img {
    border-radius: 8px;
    margin-bottom: 8px;
  }
  .article .content .content-case_study .similar-ex li a .similar-img img {
    border-radius: 8px;
  }
  .article .content .content-case_study .similar-ex li a .similar-txt {
    font-size: 1.4rem;
    line-height: 1.375;
  }
  .article .content .content-case_study .prev-btn {
    min-width: 168px;
    padding: 15px 31px;
    margin: 87px auto 0;
  }
  .article .content .content-case_study .prev-btn span {
    font-size: 2.0rem;
    padding-left: 40px;
  }
  .article .content .content-case_study .prev-btn span::before {
    top: 50%;
    left: 0;
    width: 30px;
    height: 30px;
  }
  .article .content .content-case_study .prev-btn span::after {
    top: 50%;
    left: 10px;
    width: 10px;
    height: auto;
    aspect-ratio: 12 / 17;
  }
}

/* [ ページネーション ] */
.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  font-family: "Jost", sans-serif;
  font-weight: 600;
  border: 1px solid #BCCFDA;
  border-radius: 50px;
}
.pagination .page-numbers {
  display: block;
  height: auto;
  aspect-ratio: 1 / 1;
  color: #1046A0;
  text-align: center;
  vertical-align: middle;
  border-radius: 50%;
}
.pagination .page-numbers.prev, .pagination .page-numbers.next {
  border: 1px solid #1046A0;
}
.pagination .page-numbers.current {
  color: #fff;
  background: #1046A0;
}
@media (hover: hover) {
  .pagination a.page-numbers:hover {
    background: #BCCFDA;
  }
  .pagination a.page-numbers:hover.prev, .pagination a.page-numbers:hover.next {
    color: #fff;
    background: #1046A0;
  }
}
@media screen and (min-width: 769px) {
  .pagination {
    gap: 6px;
    min-width: 155.55px;
    font-size: 2.2rem;
    padding: 16.5px 0;
  }
  .pagination .page-numbers {
    width: 39.85px;
    padding: 4px 0;
  }
  .pagination .page-numbers:first-child {
    margin-left: 30px;
  }
  .pagination .page-numbers:last-child {
    margin-right: 30px;
  }
  .pagination .page-numbers.prev {
    padding-right: 6px;
    margin-right: 30px;
  }
  .pagination .page-numbers.next {
    padding-left: 6px;
    margin-left: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .pagination {
    gap: 2px;
    min-width: 76.32px;
    font-size: 1.8rem;
    line-height: 1.8;
    padding: 11.6px 0;
    margin: 38px auto 0;
  }
  .pagination .page-numbers {
    width: 34.5px;
    padding: 0;
  }
  .pagination .page-numbers:first-child {
    margin-left: 15px;
  }
  .pagination .page-numbers:last-child {
    margin-right: 15px;
  }
  .pagination .page-numbers.prev {
    padding-right: 6px;
    margin-right: 15px;
  }
  .pagination .page-numbers.next {
    padding-left: 6px;
    margin-left: 15px;
  }
}

/*==================================================*
 *  [ 製品カテゴリ・詳細ページ ]
 *==================================================*/
/* [ シリーズ一覧 共通 ] */
#series, #gaede, #kinney {
  width: 86.5%;
}
#series:has(.bg-nv), #gaede:has(.bg-nv), #kinney:has(.bg-nv) {
  width: 100%;
}

.serieslist-ttl {
  color: #6875B1;
  font-weight: 700;
}
.serieslist-ttl span {
  display: inline-block;
}
@media screen and (min-width: 769px) {
  .serieslist-ttl {
    font-size: clamp(2.8rem, 1.77vw, 3.4rem);
  }
}
@media only screen and (max-width: 768px) {
  .serieslist-ttl {
    font-size: clamp(1.8rem, 4.8vw, 2.4rem);
    text-align: center;
  }
}

.serieslist-wrap {
  list-style: none;
}
.serieslist-wrap > li {
  border-top: 1px solid #707070;
}
.serieslist-wrap > li:last-child {
  border-bottom: 1px solid #707070;
}
.serieslist-wrap > li a {
  display: block;
  position: relative;
}
.serieslist-wrap > li a .serieslist-item {
  display: flex;
  align-items: center;
  letter-spacing: 0.05em;
}
.serieslist-wrap > li a .serieslist-item .serieslist-cat {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 500;
}
.serieslist-wrap > li a .serieslist-item .serieslist-cat img {
  height: auto;
  aspect-ratio: 1 / 1;
}
.serieslist-wrap > li a .serieslist-item .serieslist-cat .series-name b {
  font-family: "Jost", sans-serif;
  font-weight: 500;
}
.serieslist-wrap > li a .serieslist-item .serieslist-cat .series-name > span {
  font-weight: 700;
}
.serieslist-wrap > li a .serieslist-item .serieslist-detail {
  list-style: none;
  flex: 1;
}
.serieslist-wrap > li a .serieslist-item .serieslist-detail li {
  margin-bottom: 5px;
}
.serieslist-wrap > li a .serieslist-item .serieslist-detail li:last-child {
  margin-bottom: 0;
}
.serieslist-wrap > li a[href="#special"] .serieslist-detail {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.serieslist-wrap > li a::after {
  content: '';
  position: absolute;
  top: 50%;
  background: url("../img/icon_yajirusi.svg") center/contain no-repeat;
  transform: translateY(-50%);
}
@media (hover: hover) {
  .serieslist-wrap > li:hover {
    opacity: 0.5;
  }
}
@media screen and (min-width: 769px) {
  .serieslist-wrap > li a {
    padding: 12px 55px 12px 17px;
  }
  .serieslist-wrap > li a .serieslist-item {
    gap: 34px;
  }
  .serieslist-wrap > li a .serieslist-item .serieslist-cat {
    width: 40%;
    font-size: 1.8rem;
  }
  .serieslist-wrap > li a .serieslist-item .serieslist-cat:has(b) {
    font-size: 2.4rem;
  }
  .serieslist-wrap > li a .serieslist-item .serieslist-cat img {
    width: clamp(60px, 4.38vw, 84px);
  }
  .serieslist-wrap > li a .serieslist-item .serieslist-cat .series-name b > span {
    font-size: 1.8rem;
  }
  .serieslist-wrap > li a .serieslist-item .serieslist-cat .series-name > span.txt-block {
    display: block;
    font-size: 1.8rem;
    font-weight: 500;
  }
  .serieslist-wrap > li a .serieslist-item .serieslist-detail {
    font-size: 1.4rem;
  }
  .serieslist-wrap > li a[href="#special"] .serieslist-detail {
    gap: 5px 1.56vw;
    font-size: 1.4rem;
  }
  .serieslist-wrap > li a[href="#special"] .serieslist-detail li {
    width: 8.5em;
  }
  .serieslist-wrap > li a::after {
    right: 25px;
    width: 25px;
    height: 30px;
  }
  .serieslist-wrap.pc-col2 {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 0 min(35px, 1.82vw);
  }
  .serieslist-wrap.pc-col2 > li {
    width: calc((100% - 35px) / 2);
    min-height: 6.75em;
  }
  .serieslist-wrap.pc-col2 > li:nth-last-child(2) {
    border-bottom: 1px solid #707070;
  }
  .serieslist-wrap.pc-col2 > li a {
    height: 100%;
  }
  .serieslist-wrap.pc-col2 > li a .serieslist-item {
    height: 100%;
  }
  .serieslist-wrap.pc-col2 > li a .serieslist-item .serieslist-cat {
    width: 100%;
    font-size: clamp(1.8rem, 1.04vw, 2rem);
  }
}
@media only screen and (max-width: 768px) {
  .serieslist-wrap > li a {
    padding: 2.67vw 9vw 2.67vw 2.67vw;
  }
  .serieslist-wrap > li a .serieslist-item {
    flex-direction: column;
    gap: 2.67vw;
  }
  .serieslist-wrap > li a .serieslist-item .serieslist-cat {
    width: 100%;
    font-size: clamp(1.8rem, 4.8vw, 2.2rem);
  }
  .serieslist-wrap > li a .serieslist-item .serieslist-cat img {
    display: inline-block;
    width: 10.67vw;
  }
  .serieslist-wrap > li a .serieslist-item .serieslist-cat .series-name b > span {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
  }
  .serieslist-wrap > li a .serieslist-item .serieslist-cat .series-name > span.txt-block {
    display: inline-block;
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
    font-weight: 500;
  }
  .serieslist-wrap > li a .serieslist-item .serieslist-detail {
    display: flex;
    gap: 5%;
    width: 100%;
    font-size: clamp(0.9rem, 2.4vw, 1.4rem);
  }
  .serieslist-wrap > li a .serieslist-item .serieslist-detail li {
    width: 47.5%;
  }
  .serieslist-wrap > li a .serieslist-item .serieslist-detail.col1 li {
    width: 100%;
  }
  .serieslist-wrap > li a[href="#special"] .serieslist-detail {
    gap: 5%;
    font-size: clamp(0.9rem, 2.4vw, 1.4rem);
  }
  .serieslist-wrap > li a[href="#special"] .serieslist-detail li {
    width: 47.5%;
  }
  .serieslist-wrap > li a::after {
    right: 10px;
    width: 4vw;
    height: auto;
    aspect-ratio: 13 / 15;
  }
  .serieslist-wrap.pc-col2 > li a .serieslist-item .serieslist-cat {
    font-size: clamp(1.6rem, 0.83vw, 2.2rem);
  }
}

/* [ 背景 ] */
.bg-nv {
  width: 100%;
  color: #fff;
  font-weight: 700;
  text-align: center;
  background: #3A4268;
  padding: 5px 0 4px;
}
@media screen and (min-width: 769px) {
  .bg-nv {
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 768px) {
  .bg-nv {
    font-size: clamp(1.4rem, 3.73vw, 1.8rem);
  }
}

.bg-gray {
  background: #F5F5F5;
}
@media screen and (min-width: 769px) {
  .bg-gray {
    width: calc(100vw - 28vw);
    margin-left: -3.79vw;
  }
}
@media screen and (769px <= width <= 1080px) {
  .bg-gray {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
}
@media only screen and (max-width: 768px) {
  .bg-gray {
    width: 100vw;
    margin: 0 calc(50% - 50vw);
  }
}

.bg-bl {
  width: 100%;
  color: #fff;
  font-weight: 700;
  text-align: center;
  background: #337CCF;
  padding: 2px 0 0;
}
@media screen and (min-width: 769px) {
  .bg-bl {
    font-size: clamp(1.6rem, 1.04vw, 2rem);
  }
}
@media only screen and (max-width: 768px) {
  .bg-bl {
    font-size: clamp(1.6rem, 4.27vw, 2rem);
  }
}

/* [ カテゴリ シリーズ詳細 ] */
.series-ttl .series-name {
  font-weight: 500;
}
.series-ttl .series-name b {
  font-family: "Jost", sans-serif;
  font-weight: 500;
}
.series-ttl .series-group {
  color: #6875B1;
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  .series-ttl {
    display: inline-block;
  }
  .series-ttl .series-name {
    display: inline-block;
    font-size: clamp(3.6rem, 2.5vw, 4.8rem);
    margin-right: 45px;
  }
  .series-ttl .series-name span {
    font-size: clamp(2.4rem, 1.67vw, 3.2rem);
  }
  .series-ttl .series-group {
    display: inline-block;
    font-size: clamp(1.6rem, 1.04vw, 2rem);
  }
}
@media only screen and (max-width: 768px) {
  .series-ttl {
    display: block;
  }
  .series-ttl .series-name {
    font-size: clamp(2.8rem, 7.47vw, 3.8rem);
    margin-bottom: 5px;
  }
  .series-ttl .series-name span {
    font-size: clamp(2rem, 5.33vw, 2.6rem);
  }
  .series-ttl .series-group {
    font-size: clamp(1.2rem, 3.2vw, 1.6rem);
  }
}

/* [ テキスト ] */
.lineup-ttl {
  color: #337CCF;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .lineup-ttl {
    font-size: clamp(1.6rem, 1.04vw, 2rem);
  }
}
@media only screen and (max-width: 768px) {
  .lineup-ttl {
    font-size: clamp(1.6rem, 4.27vw, 1.8rem);
  }
}

.dnv-txt-large {
  color: #3A4268;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .dnv-txt-large {
    font-size: 3.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .dnv-txt-large {
    font-size: clamp(2rem, 5.33vw, 2.8rem);
  }
}

.blk-ttl {
  color: #141414;
  font-weight: 600;
}
@media screen and (min-width: 769px) {
  .blk-ttl {
    font-size: clamp(2.8rem, 1.98vw, 3.8rem);
  }
}
@media only screen and (max-width: 768px) {
  .blk-ttl {
    font-size: clamp(2.4rem, 6.4vw, 3rem);
  }
}

.gy-ttl {
  color: #565656;
  font-weight: 400;
}
@media screen and (min-width: 769px) {
  .gy-ttl {
    font-size: clamp(2.6rem, 1.56vw, 3rem);
  }
}
@media only screen and (max-width: 768px) {
  .gy-ttl {
    font-size: clamp(1.8rem, 4.8vw, 2.6rem);
  }
}

.series-lineup-detail b {
  color: #337CCF;
}
@media screen and (min-width: 769px) {
  .series-lineup-detail {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
    line-height: 1.75;
  }
}
@media only screen and (max-width: 768px) {
  .series-lineup-detail {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
    line-height: 1.571;
  }
}

.border-bl {
  width: fit-content;
  color: #337CCF;
  border: 2px solid #337CCF;
  border-radius: 50px;
}
@media screen and (min-width: 769px) {
  .border-bl {
    font-size: clamp(1.8rem, 0.83vw, 2rem);
    padding: 26px 66px 24px;
  }
}
@media only screen and (max-width: 768px) {
  .border-bl {
    font-size: clamp(1.2rem, 3.2vw, 1.6rem);
    padding: 4.27vw 8vw 3.73vw;
  }
}

/* [ 特長 ] */
#adv {
  display: flex;
  width: 100%;
  border-radius: 23px;
  box-shadow: 0 0 20px 0 rgba(57, 113, 141, 0.3);
}
#adv .adv-ttl {
  color: #fff;
  font-weight: 700;
  background: #BABABA;
}
#adv .adv-list {
  list-style: none;
}
#adv .adv-list li {
  display: flex;
  align-items: baseline;
  gap: 0.5em;
}
#adv .adv-list li:last-child {
  margin-bottom: 0;
}
#adv .adv-list li::before {
  content: '';
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/icon_circle.svg") center/contain no-repeat;
}
#adv .adv-list li p {
  flex: 1;
}
#adv .adv-list li p b {
  color: #337CCF;
}
#adv .adv-list li p span {
  display: inline-block;
}
@media screen and (min-width: 769px) {
  #adv {
    align-items: stretch;
  }
  #adv .adv-ttl {
    width: fit-content;
    font-size: clamp(1.6rem, 0.83vw, 2rem);
    text-align: center;
    border-radius: 23px 0 0 23px;
    padding: 32px 25px 25px;
  }
  #adv .adv-list {
    flex: 1;
    padding: 32px 25px 25px;
  }
  #adv .adv-list li {
    margin-bottom: 15px;
  }
  #adv .adv-list li::before {
    display: block;
    width: 14.5px;
  }
  #adv .adv-list li p {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
  }
}
@media only screen and (max-width: 768px) {
  #adv {
    flex-direction: column;
  }
  #adv .adv-ttl {
    width: 100%;
    font-size: clamp(1.6rem, 4.27vw, 2rem);
    border-radius: 23px 23px 0 0;
    padding: max(12px, 3.2vw) max(28px, 7.47vw) max(8px, 2.13vw);
  }
  #adv .adv-list {
    padding: max(18px, 4.8vw) max(12px, 3.2vw) max(20px, 5.33vw);
  }
  #adv .adv-list li {
    margin-bottom: 10px;
  }
  #adv .adv-list li::before {
    display: block;
    width: 12px;
  }
  #adv .adv-list li p {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
  }
  #adv .adv-list li p span {
    display: block;
  }
}

/* [ オプション ] */
.opt {
  width: 100%;
  border-radius: 23px;
  border: 2px solid #337CCF;
}
.opt .opt-ttl {
  display: flex;
  align-items: center;
  gap: 0.5em;
  color: #337CCF;
  font-weight: 700;
}
.opt .opt-ttl::before {
  content: '';
  width: 17px;
  height: 3px;
  background: #337CCF;
}
.opt .opt-list {
  list-style: none;
}
.opt .opt-list li {
  display: flex;
  align-items: baseline;
  gap: 0.5em;
  margin-bottom: 10px;
}
.opt .opt-list li:last-child {
  margin-bottom: 0;
}
.opt .opt-list li::before {
  display: block;
  content: '';
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/icon_circle.svg") center/contain no-repeat;
}
.opt .opt-list li p {
  flex: 1;
}
@media screen and (min-width: 769px) {
  .opt {
    padding: 21px 18px 21px 28px;
  }
  .opt .opt-ttl {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
  }
  .opt .opt-list li::before {
    width: 14.5px;
  }
  .opt .opt-list li p {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
    line-height: 1.875;
  }
}
@media only screen and (max-width: 768px) {
  .opt {
    padding: 4.27vw 3.2vw;
  }
  .opt .opt-ttl {
    font-size: clamp(1.6rem, 4.27vw, 2rem);
  }
  .opt .opt-list li::before {
    width: 12px;
  }
  .opt .opt-list li p {
    font-size: clamp(1.2rem, 3.2vw, 1.4rem);
    line-height: 1.667;
  }
}

/* [ Point ] */
.series-point {
  width: 100%;
  border: 2px solid #337CCF;
  border-radius: 20px;
}
.series-point p b {
  font-family: "Jost", sans-serif;
  color: #337CCF;
}
.series-point .point-list {
  list-style: none;
}
.series-point .point-list li {
  display: flex;
  align-items: baseline;
  gap: 0.5em;
  margin-bottom: 5px;
}
.series-point .point-list li:last-child {
  margin-bottom: 0;
}
.series-point .point-list li::before {
  display: block;
  content: '';
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/icon_diamond.svg") center/contain no-repeat;
}
.series-point .point-list li p {
  flex: 1;
}
.series-point .point-list li p b {
  font-family: "IBM Plex Sans JP", sans-serif;
  color: #337CCF;
}
.series-point .point-list li p span {
  display: inline-block;
  padding-left: 0.25em;
}
@media screen and (min-width: 769px) {
  .series-point {
    padding: clamp(20px, 1.46vw, 28px) clamp(24px, 1.67vw, 32px) clamp(17px, 1.3vw, 25px);
  }
  .series-point p b {
    font-size: clamp(2.2rem, 1.25vw, 2.4rem);
  }
  .series-point .point-list li::before {
    width: 14.5px;
  }
  .series-point .point-list li p {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
  }
  .series-point .point-list li p b {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
    font-weight: 700;
  }
}
@media only screen and (max-width: 768px) {
  .series-point {
    padding: 2.67vw 3.2vw 4vw;
  }
  .series-point p b {
    font-size: clamp(1.6rem, 4.27vw, 2rem);
  }
  .series-point .point-list li {
    font-size: clamp(1.2rem, 3.2vw, 1.6rem);
    line-height: 1.583;
  }
  .series-point .point-list li::before {
    width: 11px;
  }
  .series-point .point-list li p {
    font-size: clamp(1.2rem, 3.2vw, 1.6rem);
  }
  .series-point .point-list li p b {
    font-size: clamp(1.2rem, 3.2vw, 1.6rem);
  }
}

/* [ ◯◯原理 ] */
#prin {
  border-radius: 23px;
  box-shadow: 0 0 20px 0 rgba(57, 113, 141, 0.3);
}
#prin .prin-list {
  list-style: none;
}
#prin .prin-list li {
  display: flex;
  align-items: baseline;
  gap: 0.5em;
  margin-bottom: 10px;
}
#prin .prin-list li:last-child {
  margin-bottom: 0;
}
#prin .prin-list li::before {
  content: '';
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/icon_circle.svg") center/contain no-repeat;
}
#prin .prin-list li p {
  flex: 1;
}
#prin .prin-list li p b {
  color: #337CCF;
}
#prin .prin-list li p span {
  display: block;
  line-height: 1.875;
}
#prin .prin-txt p b {
  color: #337CCF;
  font-weight: 500;
}
#prin .prin-txt p + p {
  margin-top: 1em;
}
@media screen and (min-width: 769px) {
  #prin {
    padding: min(42px, 2.19vw) min(45px, 2.34vw) min(34px, 1.77vw);
  }
  #prin .prin-list li::before {
    width: 14.5px;
  }
  #prin .prin-list li p {
    line-height: 1.875;
  }
  #prin .prin-txt {
    border-left: 10px solid #337CCF;
    padding: 1em 0;
  }
  #prin .prin-txt p {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
    line-height: 1.875;
    margin-left: 26px;
  }
  #prin .prin-txt p b {
    font-size: clamp(1.6rem, 0.94vw, 1.8rem);
  }
}
@media only screen and (max-width: 768px) {
  #prin {
    padding: 5.33vw;
  }
  #prin .prin-list li::before {
    width: 12px;
  }
  #prin .prin-list li p {
    font-size: clamp(1.2rem, 3.2vw, 1.4rem);
    line-height: 1.667;
  }
  #prin .prin-txt {
    border-left: 6px solid #337CCF;
    padding: 0.5em 0;
  }
  #prin .prin-txt p {
    font-size: clamp(1.2rem, 3.2vw, 1.4rem);
    line-height: 1.7;
    margin-left: 1em;
  }
  #prin .prin-txt p b {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
  }
}

/* [ 産業分野一覧 ] */
.industrial-list {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  width: 100%;
  list-style: none;
}
.industrial-list li {
  width: fit-content;
  color: #fff;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.05em;
  background: #6875B1;
}
@media screen and (min-width: 769px) {
  .industrial-list {
    gap: 10px;
  }
  .industrial-list li {
    min-width: 120px;
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
    padding: 10px 10px 8px;
  }
}
@media only screen and (max-width: 768px) {
  .industrial-list {
    gap: 4px;
  }
  .industrial-list li {
    min-width: 40px;
    font-size: clamp(1.1rem, 2.93vw, 1.4rem);
    padding: 7px 1.07vw 5px;
  }
}

/* [ 断面図 ] */
.sectional {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.sectional p {
  color: #6875B0;
  font-weight: 600;
}
.sectional img {
  margin-top: 20px;
}
@media screen and (min-width: 769px) {
  .sectional p {
    font-size: clamp(2.2rem, 1.35vw, 2.6rem);
  }
}
@media only screen and (max-width: 768px) {
  .sectional p {
    font-size: clamp(2rem, 5.33vw, 2.2rem);
  }
}

/* [ ラインアップを見る ] */
.lineupmore-btn {
  display: flex;
  justify-content: center;
  width: 100%;
}
.lineupmore-btn a {
  display: block;
  width: fit-content;
  background: #425672;
  border-radius: 50px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.25);
}
.lineupmore-btn a span {
  position: relative;
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.1em;
  transition: all .4s ease;
}
.lineupmore-btn a span::before {
  content: '';
  display: inline-block;
  position: absolute;
  top: 45%;
  height: auto;
  aspect-ratio: 1 / 1;
  border: 1px solid #425672;
  border-radius: 50%;
  background: #fff;
  transition: background .4s ease;
  transform: translateY(-50%);
}
.lineupmore-btn a span::after {
  content: '';
  display: inline-block;
  position: absolute;
  top: 45%;
  height: auto;
  aspect-ratio: 12 / 17;
  mask-repeat: no-repeat;
  background: #425672;
  mask-size: contain;
  mask-image: url("../img/icon_arrow.svg");
  transform: translateY(-50%);
  transition: background .4s ease;
  z-index: +1;
}
@media (hover: hover) {
  .lineupmore-btn a:hover {
    background: #fff;
  }
  .lineupmore-btn a:hover span {
    color: #425672;
  }
  .lineupmore-btn a:hover span::before {
    background: #425672;
    box-shadow: 0 0 6.8px rgba(57, 113, 141, 0.8);
  }
  .lineupmore-btn a:hover span::after {
    background: #fff;
  }
}
@media screen and (min-width: 769px) {
  .lineupmore-btn {
    max-width: calc(1060px + (3.79vw * 2));
    padding: 90px 0;
  }
  .lineupmore-btn a {
    border: 4px solid #425672;
    padding: 25px 55px 20px;
  }
  .lineupmore-btn a span {
    font-size: clamp(2rem, 1.25vw, 2.4rem);
    margin-right: 2.5em;
  }
  .lineupmore-btn a span::before {
    width: 40px;
    right: -2.25em;
  }
  .lineupmore-btn a span::after {
    width: 16px;
    right: -1.75em;
  }
}
@media only screen and (max-width: 768px) {
  .lineupmore-btn {
    padding: 8vw 0;
  }
  .lineupmore-btn a {
    border: 1px solid #425672;
    padding: 15px 45px 10px;
  }
  .lineupmore-btn a span {
    font-size: clamp(1.8rem, 4.8vw, 2.2rem);
    margin-right: 1.0em;
  }
  .lineupmore-btn a span::before {
    width: 25px;
    right: -1.6em;
  }
  .lineupmore-btn a span::after {
    width: 12px;
    right: -1.3em;
  }
}

/* [ ダウンロードボタン ] */
.catalogdl-btn a {
  display: block;
  width: fit-content;
  background: #337CCF;
  border-radius: 50px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.25);
}
.catalogdl-btn a span {
  color: #fff;
  font-weight: 700;
  transition: all .4s ease;
}
.catalogdl-btn a span::after {
  content: '';
  display: inline-block;
  height: auto;
  aspect-ratio: 1 / 1;
  mask-repeat: no-repeat;
  background: #fff;
  mask-size: contain;
  mask-image: url("../img/icon_pdf.svg");
  transition: background .4s ease;
  z-index: +1;
  vertical-align: text-bottom;
  margin-left: 0.5em;
}
@media (hover: hover) {
  .catalogdl-btn a:hover {
    background: #fff;
  }
  .catalogdl-btn a:hover span {
    color: #337CCF;
  }
  .catalogdl-btn a:hover span::after {
    background: #337CCF;
  }
}
@media screen and (min-width: 769px) {
  .catalogdl-btn a {
    border: 4px solid #337CCF;
    padding: 16px 28px 16px 34px;
  }
  .catalogdl-btn a span {
    font-size: 2.2rem;
  }
  .catalogdl-btn a span::after {
    width: 35px;
  }
}
@media only screen and (max-width: 768px) {
  .catalogdl-btn a {
    border: 1px solid #337CCF;
    padding: 15px 45px 10px;
  }
  .catalogdl-btn a span {
    font-size: clamp(1.8rem, 4.8vw, 2.2rem);
  }
  .catalogdl-btn a span::after {
    width: clamp(30px, 8vw, 34px);
  }
}

.caddl-btn a {
  display: block;
  width: fit-content;
  background: #425672;
  border-radius: 50px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.25);
}
.caddl-btn a span {
  color: #fff;
  font-weight: 700;
  transition: all .4s ease;
}
.caddl-btn a span::after {
  content: '';
  display: inline-block;
  height: auto;
  aspect-ratio: 1 / 1;
  mask-repeat: no-repeat;
  background: #fff;
  mask-size: contain;
  mask-image: url("../img/icon_arrow_dl.svg");
  transition: background .4s ease;
  z-index: +1;
  vertical-align: text-bottom;
  margin-left: 0.5em;
}
@media (hover: hover) {
  .caddl-btn a:hover {
    background: #fff;
  }
  .caddl-btn a:hover span {
    color: #425672;
  }
  .caddl-btn a:hover span::after {
    background: #425672;
  }
}
@media screen and (min-width: 769px) {
  .caddl-btn a {
    border: 4px solid #425672;
    padding: 16px 28px 16px 34px;
  }
  .caddl-btn a span {
    font-size: 2.2rem;
  }
  .caddl-btn a span::after {
    width: 42px;
  }
}
@media only screen and (max-width: 768px) {
  .caddl-btn a {
    border: 1px solid #425672;
    padding: 15px 45px 10px;
  }
  .caddl-btn a span {
    font-size: clamp(1.8rem, 4.8vw, 2.2rem);
  }
  .caddl-btn a span::after {
    width: clamp(30px, 8vw, 34px);
  }
}

/* [ ラインナップ一覧 ] */
.product-list {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
}
.product-list li .product-img {
  display: flex;
  justify-content: center;
  position: relative;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  background: #fff;
  border-radius: 10px;
  padding: 5% 0;
}
.product-list li .product-img img {
  width: 90%;
  object-fit: contain;
}
.product-list li .product-img b {
  position: absolute;
  top: 0;
  right: 0;
  color: #fff;
  font-weight: 600;
  letter-spacing: 0.02em;
  background: #FF7653;
  border-top-right-radius: 10px;
}
.product-list li:has(a) a {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.product-list li:has(a) a .product-img {
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
}
.product-list li:has(a) a p {
  font-weight: 700;
  margin-top: 1em;
  letter-spacing: 0.02em;
  word-break: break-all;
}
@media (hover: hover) {
  .product-list li:has(a) a:hover .product-img {
    outline: 3px solid #3A4268;
  }
  .product-list li:has(a) a:hover p {
    color: #337CCF;
  }
}
.product-list li {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.product-list li p {
  font-weight: 700;
  margin-top: 1em;
  word-break: break-all;
}
.product-list.col2 {
  gap: 1.5em;
}
.product-list.col2 li {
  width: calc(50% - 0.75em);
  height: fit-content;
}
@media screen and (min-width: 769px) {
  .product-list {
    gap: 40px 15px;
    padding: 38px 0 32px;
  }
  .product-list li {
    max-width: 200px;
    width: calc((100% - (15px * 3)) / 4);
  }
  .product-list li .product-img b {
    font-size: clamp(1.4rem, 0.94vw, 1.8rem);
    padding: min(6px, 0.31vw) min(20px, 1.04vw) min(4px, 0.21vw);
  }
}
@media only screen and (max-width: 768px) {
  .product-list {
    gap: 20px 15px;
    padding: 25px 0 20px;
  }
  .product-list li {
    width: calc((100% - 15px) / 2);
    font-size: 1.4rem;
  }
  .product-list li .product-img b {
    font-size: clamp(1.4rem, 3.73vw, 1.8rem);
    padding: 1.07vw 3.73vw 0.53vw;
  }
}

/* [ 製品ラインアップ ] */
.product-lineup {
  width: 100%;
}
.product-lineup .pl-ttl {
  color: #6875B0;
  font-weight: 600;
}
.product-lineup .bl-ttl {
  color: #337CCF;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .product-lineup {
    max-width: calc(1060px + (3.79vw * 2));
    padding: 0 3.79vw;
  }
  .product-lineup .pl-wrap {
    padding: 50px min(70px, 3.65vw);
  }
  .product-lineup .pl-ttl {
    font-size: clamp(2.2rem, 1.35vw, 2.6rem);
    border-left: 8px solid #6875B0;
    padding: 6px 0 6px 10px;
  }
  .product-lineup .bl-ttl {
    font-size: clamp(1.8rem, 1.04vw, 2rem);
    border-left: 6px solid #337CCF;
    padding: 4px 0 4px 8px;
  }
  .product-lineup section:has(.bl-ttl) .product-list {
    padding-top: 1.5em;
  }
}
@media only screen and (max-width: 768px) {
  .product-lineup .pl-wrap {
    padding: 40px 30px;
  }
  .product-lineup .pl-ttl {
    font-size: clamp(1.6rem, 4.27vw, 1.8rem);
    border-left: 5px solid #6875B0;
    padding: 4px 0 4px 8px;
  }
  .product-lineup .bl-ttl {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
    border-left: 3px solid #337CCF;
    padding: 2px 0 2px 6px;
  }
  .product-lineup section:has(.bl-ttl) .product-list {
    padding-top: 1.0em;
  }
}

/* [ 製品詳細 共通 ] */
.product-detail {
  /* 青テーブル */
  /* 外観寸法図テーブル */
  /* 機種別仕様テーブル */
  /* 詳しくは営業担当者までお問合せ下さい */
}
.product-detail .model-ttl .model-name {
  font-family: "Jost", sans-serif;
  font-weight: 700;
}
.product-detail .model-ttl .model-subttl {
  color: #6875B1;
  font-weight: 500;
}
.product-detail .model-feat .model-img {
  display: flex;
  justify-content: center;
  height: auto;
  aspect-ratio: 1 / 1;
  border-radius: 10px;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
  padding: 5% 0;
}
.product-detail .model-feat .model-img img {
  width: 90%;
  object-fit: contain;
}
.product-detail .sec-ttl {
  color: #6875B1;
  font-weight: 700;
  border-left: 6px solid #6875B1;
}
.product-detail .feat-list::after {
  content: '';
  display: block;
  clear: both;
}
.product-detail .feat-list ul {
  list-style: none;
  margin-bottom: 1.25em;
}
.product-detail .feat-list ul:last-child {
  margin-bottom: 0;
}
.product-detail .feat-list ul li {
  text-indent: -1.05em;
  padding-left: 1.25em;
  margin-bottom: 0.5em;
}
.product-detail .feat-list ul li:last-child {
  margin-bottom: 0;
}
.product-detail .feat-list ul li::before {
  display: inline-block;
  content: '';
  width: 13px;
  height: auto;
  aspect-ratio: 1 / 1;
  mask-repeat: no-repeat;
  background: #6875B1;
  mask-size: contain;
  mask-image: url(../img/icon_circle.svg);
  margin-right: 0.25em;
}
.product-detail .feat-list p {
  line-height: 1.875;
  margin-bottom: 1.25em;
}
.product-detail .feat-list p:last-child {
  margin-bottom: 0;
}
.product-detail #use .feat-list {
  font-weight: 500;
}
.product-detail #download ul {
  list-style: none;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
}
.product-detail #download ul li a {
  position: relative;
  width: 100%;
  color: #fff;
  font-weight: 700;
  text-align: center;
  border-radius: 50px;
}
.product-detail #download ul li a .dlm-xhr-loading-gif {
  display: none !important;
}
.product-detail #download ul li a .dlm-xhr-progress {
  display: none !important;
}
.product-detail #download ul li a .dlm-xhr-progress::after {
  display: none !important;
}
.product-detail .speclist-acc {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.product-detail .speclist-acc .acc-wrap {
  width: 100%;
  margin-bottom: 7px;
  border-bottom: 0.5px solid #707070;
}
.product-detail .speclist-acc .acc-wrap summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  cursor: pointer;
}
.product-detail .speclist-acc .acc-wrap summary::-webkit-details-marker {
  display: none;
}
.product-detail .speclist-acc .acc-wrap summary::after {
  content: '';
  display: inline-block;
  background: url("../img/icon_arrow_acc.svg") center/contain no-repeat;
  transition: transform 0.3s ease;
}
.product-detail .speclist-acc .acc-wrap summary .acc-ttl {
  color: #565656;
  font-weight: 400;
}
.product-detail .speclist-acc .acc-wrap .acc-content {
  transform: translateY(-10px);
  opacity: 0;
  margin: 0;
  color: #141414;
  transition: transform .5s, opacity .5s;
}
.product-detail .speclist-acc .acc-wrap .acc-content .acc-note p {
  width: fit-content;
  color: #565656;
  line-height: 1.786;
  margin: 0 auto;
}
.product-detail .speclist-acc .acc-wrap[open] summary::after {
  transform: rotate(180deg);
}
.product-detail .speclist-acc .acc-wrap[open] .acc-content {
  transform: none;
  opacity: 1;
}
.product-detail .speclist-acc #spec .acc-wrap {
  border-top: 0.5px solid #707070;
}
.product-detail .speclist-acc #dim .acc-content {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 2.6vw;
}
.product-detail .speclist-acc #dim .acc-content:has(.dim-table) {
  display: block;
}
.product-detail .speclist-acc #dim .acc-content:has(.dim-table) .bg-bl-ttl {
  margin-bottom: 2.6vw !important;
}
.product-detail .speclist-acc #dim .acc-content:has(.dim-table) .bl-ttl {
  text-align: center;
  margin-bottom: 2.6vw !important;
}
.product-detail .speclist-acc #dim .acc-content:has(.dim-table) figure {
  text-align: center;
  margin-bottom: 2.6vw;
}
.product-detail .speclist-acc #dim .acc-content:has(.dim-table) .acc-note {
  margin-top: 2.6vw;
}
.product-detail .speclist-acc #perfcurve .acc-content {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 2.6vw;
}
.product-detail .speclist-acc #perfcurve .acc-content .perfcurve-wrap .perfcurve-ttl {
  width: fit-content;
  color: #337CCF;
  font-weight: 500;
  margin: 0 auto 0.5em;
}
.product-detail .speclist-acc #perfcurve .acc-content .perfcurve-wrap figure {
  max-width: 800px;
  width: 100%;
}
.product-detail .speclist-acc #cntl .cntl-img {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.product-detail .detail-table {
  overflow: auto;
}
.product-detail .detail-table table {
  width: 100%;
  border-collapse: separate !important;
}
.product-detail .detail-table table thead tr {
  background: #337CCF;
}
.product-detail .detail-table table thead tr th {
  min-width: 5.25em;
  color: #fff;
  font-weight: 500 !important;
}
.product-detail .detail-table table thead tr th:first-child {
  text-align: left;
}
.product-detail .detail-table table tbody tr.odd {
  background: #F4FDFF;
}
.product-detail .detail-table table tbody tr.even {
  background: #D9D9D9;
}
.product-detail .detail-table table tbody tr th {
  min-width: 4em;
  color: #337CCF;
  font-weight: 500 !important;
  text-align: left;
}
.product-detail .detail-table table tbody tr th + th {
  color: #6DABF3;
}
.product-detail .detail-table table tbody tr th.rowspan-child {
  color: #6DABF3;
}
.product-detail .detail-table table tbody tr td {
  text-align: center;
}
.product-detail .detail-table table + p {
  width: 100%;
  color: #565656;
  margin: 0 auto;
}
.product-detail .detail-table.irregular-table table thead tr th {
  min-width: 4em;
}
.product-detail .detail-table.irregular-table table tbody tr th {
  min-width: 5em;
}
.product-detail .dim-table {
  overflow-x: auto;
  overflow-y: hidden;
  max-width: 908px;
  margin: 0 auto;
}
.product-detail .dim-table::after {
  content: '';
  display: block;
  clear: both;
}
.product-detail .dim-table table {
  width: calc(100% - 2px) !important;
  border: 1px solid #AFAFAF;
}
.product-detail .dim-table table tr th, .product-detail .dim-table table tr td {
  border: 1px solid #AFAFAF;
  padding: 0.5em 0.5em 0.25em;
  box-sizing: border-box;
}
.product-detail .dim-table table tr th {
  color: #337CCF;
  font-size: 1.6rem;
  font-weight: 500 !important;
}
.product-detail .dim-table table tr td {
  font-size: 1.4rem;
  text-align: center;
}
.product-detail .dim-table ul, .product-detail .dim-table ol {
  margin-left: 1.75em;
}
.product-detail .specific-table .bg-bl-ttl {
  width: calc(100% - 12px);
  margin-left: 6px;
}
.product-detail .specific-table table + p {
  margin-top: 0 !important;
}
.product-detail .contact-sales {
  width: fit-content;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .product-detail {
    max-width: 940px;
    width: 90%;
    margin-left: min(60px, 3.13vw);
    margin-right: min(60px, 3.13vw);
  }
  .product-detail .model-ttl .model-name {
    display: inline-block;
    font-size: clamp(4.8rem, 2.92vw, 5.6rem);
    margin-right: 0.5em;
  }
  .product-detail .model-ttl .model-subttl {
    display: inline-block;
    font-size: clamp(1.8rem, 1.04vw, 2rem);
  }
  .product-detail .model-feat {
    display: flex;
    align-items: flex-start;
    gap: 42px;
  }
  .product-detail .model-feat .model-img {
    width: 43%;
  }
  .product-detail .model-feat #features {
    flex: 1;
  }
  .product-detail .sec-ttl {
    font-size: clamp(2.8rem, 1.77vw, 3.4rem);
    padding: 6px 0 6px 10px;
  }
  .product-detail .feat-list ul li {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
    line-height: 1.875;
  }
  .product-detail .feat-list > p {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
  }
  .product-detail #download ul {
    gap: min(14px, 0.73vw);
  }
  .product-detail #download ul li {
    width: calc((100% - (max(14px, 0.73vw) * 2)) / 3);
    min-width: fit-content;
  }
  .product-detail #download ul li.catalogdl-btn a {
    border: 2px solid #337CCF;
    padding: min(16px, 0.83vw) min(26px, 1.35vw) min(16px, 0.83vw) min(30px, 1.56vw);
  }
  .product-detail #download ul li.catalogdl-btn a span {
    font-size: clamp(1.3rem, 0.99vw, 1.9rem);
  }
  .product-detail #download ul li.catalogdl-btn a span::after {
    width: clamp(24px, 1.56vw, 30px);
  }
  .product-detail #download ul li.caddl-btn a {
    border: 2px solid #425672;
    padding: 16px 26px 16px 36px;
    padding: min(16px, 0.83vw) min(26px, 1.35vw) min(16px, 0.83vw) min(36px, 1.88vw);
  }
  .product-detail #download ul li.caddl-btn a span {
    font-size: clamp(1.3rem, 0.99vw, 1.9rem);
  }
  .product-detail #download ul li.caddl-btn a span::after {
    width: clamp(26px, 1.67vw, 32px);
  }
  .product-detail .speclist-acc .acc-wrap summary {
    padding: 2em 1em;
  }
  .product-detail .speclist-acc .acc-wrap summary::after {
    width: 30px;
    height: 15px;
  }
  .product-detail .speclist-acc .acc-wrap summary .acc-ttl {
    font-size: clamp(2.4rem, 1.56vw, 3rem);
  }
  .product-detail .speclist-acc .acc-wrap .acc-content {
    transform: translateY(-10px);
    padding: 0 10px 3.75em;
  }
  .product-detail .speclist-acc .acc-wrap .acc-content .acc-note p {
    font-size: clamp(1.2rem, 0.73vw, 1.4rem);
    line-height: 1.786;
  }
  .product-detail .speclist-acc #perfcurve .acc-content {
    gap: 2.6vw;
  }
  .product-detail .speclist-acc #perfcurve .acc-content .perfcurve-wrap .perfcurve-ttl {
    font-size: clamp(1.6rem, 0.94vw, 1.8rem);
  }
  .product-detail .speclist-acc #cntl .acc-content figure + figure {
    margin-top: 1.56vw;
  }
  .product-detail .detail-table table {
    min-width: 604px;
    border-spacing: 6px 8px;
  }
  .product-detail .detail-table table:has(th + th + th + th) {
    min-width: 812px;
  }
  .product-detail .detail-table table thead tr th {
    font-size: clamp(1.6rem, 1.04vw, 2rem);
    padding: 0.5em 0.5em 0.25em;
  }
  .product-detail .detail-table table tbody tr th, .product-detail .detail-table table tbody tr td {
    padding: 0.5em 0.5em 0.25em;
  }
  .product-detail .detail-table table tbody tr th {
    font-size: clamp(1.4rem, 0.94vw, 1.8rem);
  }
  .product-detail .detail-table table tbody tr th + th {
    font-size: clamp(1.2rem, 0.83vw, 1.6rem);
  }
  .product-detail .detail-table table tbody tr th.rowspan-child {
    font-size: clamp(1.2rem, 0.83vw, 1.6rem);
  }
  .product-detail .detail-table table tbody tr td {
    font-size: clamp(1.2rem, 0.83vw, 1.6rem);
  }
  .product-detail .detail-table table + p {
    font-size: clamp(1rem, 0.73vw, 1.4rem);
    line-height: 1.786;
    margin-top: 1.56vw;
  }
  .product-detail .detail-table table + p + table {
    margin-top: 1.56vw;
  }
  .product-detail .detail-table table + table {
    margin-top: 1.04vw;
  }
  .product-detail .dim-table table tr th {
    font-size: 1.6rem;
  }
  .product-detail .dim-table table tr td {
    font-size: 1.4rem;
  }
  .product-detail .dim-table + .bl-ttl {
    margin-top: 2.86vw;
  }
  .product-detail .contact-sales {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
  }
}
@media only screen and (max-width: 768px) {
  .product-detail {
    width: 100%;
    padding: 0 8px;
  }
  .product-detail .model-ttl .model-name {
    font-size: clamp(3rem, 8vw, 3.8rem);
    margin-right: 0;
  }
  .product-detail .model-ttl .model-subttl {
    font-size: clamp(1.6rem, 3.2vw, 2rem);
  }
  .product-detail .model-feat .model-img {
    width: 100%;
  }
  .product-detail .model-feat #features {
    margin-top: 8.53vw;
  }
  .product-detail .sec-ttl {
    font-size: clamp(2.2rem, 5.87vw, 3rem);
    padding: 0.25em 0 0.25em 0.5em;
  }
  .product-detail .feat-list ul li {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
    line-height: 1.643;
  }
  .product-detail .feat-list > p {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
    line-height: 1.643;
  }
  .product-detail #download ul {
    flex-direction: column;
    gap: max(14px, 0.73vw);
  }
  .product-detail #download ul li {
    width: 90%;
    min-width: 276px;
  }
  .product-detail #download ul li a span {
    justify-content: center;
  }
  .product-detail #download ul li.catalogdl-btn a {
    border: 1px solid #337CCF;
    padding: min(12px, 3.2vw) min(26px, 6.93vw) min(8px, 2.13vw);
  }
  .product-detail #download ul li.catalogdl-btn a span {
    font-size: clamp(1.8rem, 4.8vw, 2.2rem);
  }
  .product-detail #download ul li.catalogdl-btn a span::after {
    width: clamp(28px, 7.47vw, 34px);
  }
  .product-detail #download ul li.caddl-btn a {
    border: 1px solid #425672;
    padding: min(12px, 3.2vw) min(24px, 6.4vw) min(8px, 2.13vw) min(35px, 9.33vw);
  }
  .product-detail #download ul li.caddl-btn a span {
    font-size: clamp(1.8rem, 4.8vw, 2.2rem);
  }
  .product-detail #download ul li.caddl-btn a span::after {
    width: clamp(28px, 7.47vw, 34px);
  }
  .product-detail .speclist-acc .acc-wrap summary {
    padding: 1.0em 0.25em;
  }
  .product-detail .speclist-acc .acc-wrap summary::after {
    width: 16px;
    height: 8px;
  }
  .product-detail .speclist-acc .acc-wrap summary .acc-ttl {
    font-size: clamp(1.8rem, 4.8vw, 3rem);
  }
  .product-detail .speclist-acc .acc-wrap .acc-content {
    transform: translateY(-10px);
    padding-bottom: 1.5em;
  }
  .product-detail .speclist-acc .acc-wrap .acc-content .acc-note p {
    font-size: 1.0rem;
    line-height: 1.7;
  }
  .product-detail .speclist-acc #perfcurve .acc-content {
    gap: 2.6vw;
  }
  .product-detail .speclist-acc #perfcurve .acc-content .perfcurve-wrap .perfcurve-ttl {
    font-size: clamp(1.2rem, 3.2vw, 1.4rem);
  }
  .product-detail .speclist-acc #cntl .acc-content figure + figure {
    margin-top: 5.33vw;
  }
  .product-detail .speclist-acc #cntl .acc-content .detail-table {
    width: 100%;
  }
  .product-detail .detail-table {
    padding-bottom: 1em;
  }
  .product-detail .detail-table table {
    min-width: 300px;
    border-spacing: 3px 3px;
  }
  .product-detail .detail-table table thead tr th {
    font-size: clamp(1rem, 2.67vw, 1.6rem);
    padding: 0.5em 0.5em 0.25em;
  }
  .product-detail .detail-table table tbody tr th, .product-detail .detail-table table tbody tr td {
    padding: 0.5em 0.5em 0.25em;
  }
  .product-detail .detail-table table tbody tr th {
    min-width: 6em;
    font-size: clamp(1rem, 2.67vw, 1.6rem);
  }
  .product-detail .detail-table table tbody tr th + th {
    font-size: clamp(0.9rem, 2.4vw, 1.4rem);
  }
  .product-detail .detail-table table tbody tr th.rowspan-child {
    font-size: clamp(0.9rem, 2.4vw, 1.4rem);
  }
  .product-detail .detail-table table tbody tr td {
    font-size: clamp(0.9rem, 2.67vw, 1.4rem);
  }
  .product-detail .detail-table table + p {
    margin-top: 5.33vw;
    line-height: 1.5;
    font-size: 1.0rem;
  }
  .product-detail .detail-table table + p + table {
    margin-top: 5.33vw;
  }
  .product-detail .detail-table table + table {
    margin-top: 4.8vw;
  }
  .product-detail .dim-table {
    padding-bottom: 1em;
  }
  .product-detail .dim-table table tr th {
    font-size: clamp(1rem, 2.67vw, 1.4rem);
  }
  .product-detail .dim-table table tr td {
    font-size: clamp(0.8rem, 2.13vw, 1.2rem);
  }
  .product-detail .dim-table ul, .product-detail .dim-table ol, .product-detail .dim-table p {
    font-size: clamp(1rem, 2.67vw, 1.4rem);
  }
  .product-detail .dim-table + .bl-ttl {
    margin-top: 5.33vw;
  }
  .product-detail .contact-sales {
    font-size: clamp(1.2rem, 3.2vw, 1.4rem);
  }
}

/* [ Category Link ] */
.catlink-ttl {
  width: fit-content;
  color: #3A4268;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .catlink-ttl {
    font-size: 3.4rem;
  }
}
@media only screen and (max-width: 768px) {
  .catlink-ttl {
    font-size: clamp(2.2rem, 5.87vw, 2.8rem);
  }
}

.catlink-list {
  display: flex;
  list-style: none;
}
.catlink-list li a {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
}
.catlink-list li a img {
  height: auto;
  aspect-ratio: 6 / 5;
}
.catlink-list li a span {
  font-weight: 500;
  padding-top: 3px;
}
.catlink-list li a::after {
  content: '';
  position: absolute;
  top: 50%;
  background: url("../img/icon_yajirusi.svg") center/contain no-repeat;
  transform: translateY(-50%) rotate(-90deg);
}
@media (hover: hover) {
  .catlink-list li a:hover {
    opacity: 0.5;
  }
}
@media screen and (min-width: 769px) {
  .catlink-list {
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0 5%;
  }
  .catlink-list li {
    width: 47.5%;
    border-top: 0.5px solid #707070;
  }
  .catlink-list li:nth-last-child(2) {
    border-bottom: 0.5px solid #707070;
  }
  .catlink-list li:last-child {
    border-bottom: 0.5px solid #707070;
  }
  .catlink-list li a {
    gap: 20px;
    padding: 10px 60px 10px 22px;
  }
  .catlink-list li a img {
    max-width: 60px;
  }
  .catlink-list li a::after {
    right: 25px;
    width: 25px;
    height: 30px;
  }
}
@media only screen and (max-width: 768px) {
  .catlink-list {
    flex-direction: column;
    align-items: center;
  }
  .catlink-list li {
    width: 86%;
    border-top: 1px solid #C3C3C3;
  }
  .catlink-list li:last-child {
    border-bottom: 1px solid #C3C3C3;
  }
  .catlink-list li a {
    gap: 4vw;
    padding: 5px 40px 5px 14px;
  }
  .catlink-list li a img {
    width: clamp(45px, 12vw, 60px);
  }
  .catlink-list li a span {
    font-size: clamp(1.2rem, 3.2vw, 1.6rem);
  }
  .catlink-list li a::after {
    right: 15px;
    width: 15px;
    height: 20px;
  }
}

/* [ 磁気軸受形 ターボ分子ポンプ ] */
.magnetic_turbo_pump .section-ttl::before,
.mtp_lineup .section-ttl::before {
  content: '';
  display: inline-block;
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/products/icon_mtp.svg") center/contain no-repeat;
  vertical-align: top;
  margin-right: 0.25em;
}
.magnetic_turbo_pump .section-ttl:has(br),
.mtp_lineup .section-ttl:has(br) {
  text-indent: -1.4em !important;
  padding-left: 1.4em !important;
}
@media screen and (min-width: 769px) {
  .magnetic_turbo_pump .section-ttl::before,
  .mtp_lineup .section-ttl::before {
    width: 48px;
  }
}
@media only screen and (max-width: 768px) {
  .magnetic_turbo_pump .section-ttl::before,
  .mtp_lineup .section-ttl::before {
    width: clamp(27px, 7.2vw, 38px);
  }
}

.magnetic_turbo_pump .content-wrap {
  overflow: hidden;
}
.magnetic_turbo_pump #tgkmi .comparison {
  display: flex;
  gap: 20px;
  width: 100%;
}
.magnetic_turbo_pump #tgkmi .comparison .comparison-item {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.magnetic_turbo_pump #tgkmi .comparison .comparison-item .condition {
  width: 100%;
  color: #337CCF;
  font-weight: 500;
  text-align: center;
  background: #F5F5F5;
  padding: 5px 0 1px;
}
.magnetic_turbo_pump #tgkmi .comparison .comparison-item .comparison-ex {
  display: flex;
  gap: 14px;
  width: 100%;
  background: #F5F5F5;
  padding: 10px 12px 6px;
}
.magnetic_turbo_pump #tgkmi .comparison .comparison-item .comparison-ex .ex-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  width: calc((100% - 14px) / 2);
}
.magnetic_turbo_pump #tgkmi .comparison .comparison-item .comparison-ex .ex-item p {
  font-weight: 500;
}
.magnetic_turbo_pump #tgkmi .comparison .comparison-item .comparison-ex .ex-item figure {
  width: 100%;
}
.magnetic_turbo_pump #tgkmi .comparison .comparison-item .comparison-ex .ex-item figure img {
  width: 100%;
}
.magnetic_turbo_pump #tgkmi .comparison .comparison-item .comparison-ex .ex-item figure figcaption {
  text-align: center;
}
.magnetic_turbo_pump .special-wrap .special-list {
  line-height: 1.75;
  padding-left: 1.5em;
}
.magnetic_turbo_pump .special-wrap .special-list li {
  margin-bottom: 5px;
}
.magnetic_turbo_pump .special-wrap .product-list {
  position: relative;
}
.magnetic_turbo_pump .special-wrap .product-list::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(50% - 100vw);
  width: 200vw;
  background: #F5F5F5;
}
.magnetic_turbo_pump .special-wrap .product-list li {
  position: relative;
  z-index: +1;
}
.magnetic_turbo_pump .special-wrap.col1 {
  flex-direction: column;
}
@media screen and (min-width: 769px) {
  .magnetic_turbo_pump #tgkmi .comparison .comparison-item {
    width: calc((100% - 20px) / 2);
  }
  .magnetic_turbo_pump #tgkmi .comparison .comparison-item .condition {
    font-size: clamp(1.6rem, 0.94vw, 1.8rem);
  }
  .magnetic_turbo_pump #tgkmi .comparison .comparison-item .comparison-ex {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
  }
  .magnetic_turbo_pump .flex4-6 {
    width: 86.5%;
    justify-content: space-between;
  }
  .magnetic_turbo_pump .flex4-6 .item6 {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
  }
  .magnetic_turbo_pump #special .dnv-txt-large {
    font-size: clamp(2.8rem, 1.77vw, 3.4rem);
  }
  .magnetic_turbo_pump #special .series-ttl .series-name {
    font-size: clamp(3rem, 2.08vw, 4rem);
  }
  .magnetic_turbo_pump #special .series-ttl .series-name span {
    font-size: clamp(1.8rem, 1.25vw, 2.4rem);
  }
  .magnetic_turbo_pump .special-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 3% 5%;
  }
  .magnetic_turbo_pump .special-wrap > * {
    width: 47.5%;
  }
  .magnetic_turbo_pump .special-wrap .dnv-txt-large {
    order: -3;
  }
  .magnetic_turbo_pump .special-wrap .special-txt, .magnetic_turbo_pump .special-wrap .special-list {
    order: -2;
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
  }
  .magnetic_turbo_pump .special-wrap .series-ttl {
    order: -1;
  }
  .magnetic_turbo_pump .special-wrap .special-txt {
    line-height: 1.75;
  }
}
@media only screen and (max-width: 768px) {
  .magnetic_turbo_pump #tgkmi .comparison {
    flex-direction: column;
  }
  .magnetic_turbo_pump #tgkmi .comparison .comparison-item {
    width: 100%;
  }
  .magnetic_turbo_pump #tgkmi .comparison .comparison-item .condition {
    font-size: clamp(1.6rem, 4.27vw, 1.8rem);
  }
  .magnetic_turbo_pump #tgkmi .comparison .comparison-item p ~ p {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
  }
  .magnetic_turbo_pump #tgkmi .comparison .comparison-item .comparison-ex {
    font-size: clamp(1.2rem, 3.2vw, 1.4rem);
  }
  .magnetic_turbo_pump .flex4-6 .item4 {
    text-align: center;
  }
  .magnetic_turbo_pump .flex4-6 .item6 p {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
  }
  .magnetic_turbo_pump #special .dnv-txt-large {
    font-size: clamp(2.2rem, 5.87vw, 2.6rem);
  }
  .magnetic_turbo_pump #special .series-ttl .series-name {
    font-size: clamp(2.4rem, 6.4vw, 2.8rem);
  }
  .magnetic_turbo_pump #special .series-ttl .series-name span {
    font-size: clamp(1.6rem, 4.27vw, 2.2rem);
  }
  .magnetic_turbo_pump .special-wrap {
    align-items: baseline;
  }
  .magnetic_turbo_pump .special-wrap .special-txt, .magnetic_turbo_pump .special-wrap .special-list {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
  }
  .magnetic_turbo_pump .special-wrap .special-txt {
    line-height: 1.571;
  }
}

/* [ 玉軸受形 ターボ分子ポンプ ] */
.ball_turbo_pump .section-ttl::before,
.btp_lineup .section-ttl::before {
  content: '';
  display: inline-block;
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/products/icon_btp.svg") center/contain no-repeat;
  vertical-align: top;
  margin-right: 0.25em;
}
.ball_turbo_pump .section-ttl:has(br),
.btp_lineup .section-ttl:has(br) {
  text-indent: -1.4em !important;
  padding-left: 1.4em !important;
}
@media screen and (min-width: 769px) {
  .ball_turbo_pump .section-ttl::before,
  .btp_lineup .section-ttl::before {
    width: 48px;
  }
  .ball_turbo_pump .flex4-6,
  .btp_lineup .flex4-6 {
    width: 86.5%;
    justify-content: space-between;
  }
  .ball_turbo_pump .flex4-6 .item6,
  .btp_lineup .flex4-6 .item6 {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
  }
}
@media only screen and (max-width: 768px) {
  .ball_turbo_pump .section-ttl::before,
  .btp_lineup .section-ttl::before {
    width: clamp(27px, 7.2vw, 38px);
  }
  .ball_turbo_pump .flex4-6 .item4,
  .btp_lineup .flex4-6 .item4 {
    text-align: center;
  }
  .ball_turbo_pump .flex4-6 .item6 p,
  .btp_lineup .flex4-6 .item6 p {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
  }
}

/* [ メカニカルブースタポンプ（ルーツ真空ポンプ） ] */
@media screen and (min-width: 769px) {
  .pump_a .flex4-6 {
    gap: 30px;
  }
  .pump_a .flex4-6 .item4 {
    width: calc(40% - 15px);
  }
  .pump_a .flex4-6 .item6 {
    width: calc(60% - 15px);
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
  }
}
@media only screen and (max-width: 768px) {
  .pump_a .flex4-6 .item6 p {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
  }
}

[class$="_lineup"] section[id], [class$="_lineup"] div[id], .pump_a section[id], .pump_a div[id] {
  position: relative;
  display: block;
}

/* [ 油回転真空ポンプ / 液封式真空ポンプ ] */
@media screen and (min-width: 769px) {
  .pump_b .flex4-6 .item6 p, .pump_c .flex4-6 .item6 p {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
  }
}
@media only screen and (max-width: 768px) {
  .pump_b .flex4-6 .item6 p, .pump_c .flex4-6 .item6 p {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
  }
}

/* 油拡散真空ポンプ */
@media screen and (min-width: 769px) {
  .pump_d .flex3-7 .item7 p {
    font-size: clamp(1.4rem, 0.83vw, 1.6rem);
  }
}
@media only screen and (max-width: 768px) {
  .pump_d .flex3-7 .item7 p {
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
  }
}

/* [ エジェクタ― ] */
.ejector .catalogdl-btn {
  display: flex;
  justify-content: center;
  width: 100%;
}
.ejector #steam .flex4-6 .item4 p {
  color: #6875B0;
  font-weight: 600;
  text-align: center;
}
.ejector #material table {
  width: 100%;
  border-collapse: separate;
  text-align: center;
}
.ejector #material table tr:nth-child(odd) th[scope="row"],
.ejector #material table tr:nth-child(odd) td {
  background: #F5F5F5;
}
.ejector #material table th[scope="col"] {
  color: #fff;
  font-weight: 700;
  background: #337CCF;
}
.ejector #material table th[scope="row"] {
  color: #337CCF;
  font-weight: 500;
}
.ejector #material table td {
  padding: 13px 0 9px;
}
@media screen and (min-width: 769px) {
  .ejector .catalogdl-btn {
    max-width: calc(1060px + (3.79vw * 2));
    padding: 82px 0;
  }
  .ejector #steam .flex4-6 .item4 p {
    font-size: 2.0rem;
  }
  .ejector #steam .flex4-6 #adv.item6 .adv-list li p {
    font-weight: 500;
  }
  .ejector #material table {
    border-spacing: 20px 14px;
  }
  .ejector #material table thead {
    display: table-header-group !important;
  }
  .ejector #material table th[scope="col"] {
    font-size: 2.0rem;
    padding: 3px 0 1px;
  }
  .ejector #material table th[scope="row"] {
    width: 28%;
    font-size: 1.8rem;
  }
  .ejector #material table td {
    padding: 13px 10px 9px;
  }
  .ejector #material table td:last-child {
    width: 45%;
  }
}
@media only screen and (max-width: 768px) {
  .ejector .catalogdl-btn {
    padding: 8vw 0;
  }
  .ejector #steam .flex4-6 .item4 {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .ejector #material table {
    border-spacing: 2vw;
  }
  .ejector #material table thead {
    display: none !important;
  }
  .ejector #material table th[scope="row"] {
    display: block;
    width: 100%;
    font-size: clamp(1.6rem, 4.27vw, 2rem);
    padding: 10px 0 0;
  }
  .ejector #material table td {
    display: block;
    width: 100%;
    font-size: clamp(1.2rem, 3.2vw, 1.6rem);
    padding: 5px;
  }
  .ejector #material table td p {
    width: 100%;
    color: #fff;
    font-size: clamp(1.4rem, 3.73vw, 1.8rem);
    background: #337CCF;
    margin-bottom: 1.33vw;
    padding-top: 3px;
  }
}

/* [ 真空排気システム ] */
.system .combi .combi-txt {
  color: #337CCF;
  font-weight: 700;
}
.system .combi .combi-flex {
  display: flex;
}
.system .combi .combi-flex .combi-item .combi-detail {
  display: flex;
  align-items: center;
}
.system .combi .cond-list {
  list-style: none;
}
.system .combi .cond-list li {
  display: flex;
  align-items: baseline;
  gap: 0.5em;
  margin-bottom: 5px;
}
.system .combi .cond-list li:last-child {
  margin-bottom: 0;
}
.system .combi .cond-list li::before {
  display: block;
  content: '';
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/icon_diamond.svg") center/contain no-repeat;
}
.system .combi .cond-list li p {
  flex: 1;
  font-size: clamp(1.4rem, 0.83vw, 1.6rem);
}
.system .combi .cond-list li p b {
  font-family: "IBM Plex Sans JP", sans-serif;
  color: #337CCF;
}
.system .combi .cond-list li p span {
  display: inline-block;
  padding-left: 0.25em;
}
.system .other .other-ttl-wrap .other-ttl {
  color: #6875B0;
  font-weight: 600;
}
.system .other .other-content-wrap {
  width: 100%;
}
.system .other .other-content-wrap .other-content .other-item {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.system .other .other-content-wrap .other-content .other-item .other-item-ttl {
  color: #337CCF;
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .system .system-ttl .system-name {
    font-size: clamp(3rem, 2.08vw, 4rem);
  }
  .system .system-ttl .system-name span {
    font-size: clamp(2rem, 1.35vw, 2.6rem);
  }
  .system .combi .combi-txt {
    font-size: clamp(2rem, 1.35vw, 2.6rem);
    border-left: 8px solid #337CCF;
    padding: 6px 0 6px 10px;
    margin-bottom: 2.08vw;
  }
  .system .combi .combi-flex {
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: clamp(30px, 3.65vw, 70px) clamp(20px, 2.34vw, 45px);
  }
  .system .combi .combi-flex .combi-item {
    display: flex;
    flex-direction: column;
    width: calc((100% - 45px) / 2);
  }
  .system .combi .combi-flex .combi-item .combi-ttl {
    flex-grow: 1;
  }
  .system .combi .combi-flex .combi-item .combi-detail {
    gap: 24px;
  }
  .system .combi .combi-flex .combi-item .combi-detail .detail-img {
    max-width: 260px;
    width: 50%;
  }
  .system .combi .combi-flex .combi-item .combi-detail .detail-txt {
    flex: 1;
  }
  .system .combi ul li::before {
    width: 14.5px;
  }
  .system .combi ul li p b {
    font-size: 1.6rem;
  }
  .system .other .other-ttl-wrap {
    padding: 0 70px;
  }
  .system .other .other-ttl-wrap .other-ttl {
    font-size: 2.6rem;
    border-left: 8px solid #6875B0;
    padding: 6px 0 6px 10px;
  }
  .system .other .other-content-wrap {
    max-width: calc(1060px + (3.79vw * 2));
    padding: 0 3.79vw;
  }
  .system .other .other-content-wrap .other-content {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    gap: 60px;
    padding: 50px 70px;
  }
  .system .other .other-content-wrap .other-content .other-item {
    gap: 1em;
    width: calc(50% - 30px);
  }
  .system .other .other-content-wrap .other-content .other-item .other-item-ttl {
    font-size: clamp(1.8rem, 1.15vw, 2.2rem);
  }
  .system .other .other-content-wrap .other-content .other-item img {
    max-width: 250px;
  }
}
@media only screen and (max-width: 768px) {
  .system .system-ttl .system-name {
    font-size: clamp(2.2rem, 5.87vw, 2.8rem);
  }
  .system .system-ttl .system-name span {
    font-size: clamp(1.4rem, 3.73vw, 1.8rem);
  }
  .system .combi .combi-txt {
    font-size: clamp(1.4rem, 3.73vw, 1.8rem);
    border-left: 5px solid #337CCF;
    padding: 4px 0 4px 8px;
  }
  .system .combi .flex3-7 .item3 img {
    width: 80%;
  }
  .system .combi .combi-flex {
    flex-direction: column;
    gap: 8vw;
  }
  .system .combi .combi-flex .combi-item {
    width: 100%;
  }
  .system .combi .combi-flex .combi-item .combi-detail {
    flex-direction: column;
    gap: 5.33vw;
  }
  .system .combi .combi-flex .combi-item .combi-detail .detail-img {
    width: 80%;
  }
  .system .combi .combi-flex .combi-item .combi-detail .detail-txt {
    flex: 1;
  }
  .system .combi ul li {
    font-size: clamp(1.4rem, 3.2vw, 1.8rem);
  }
  .system .combi ul li::before {
    width: 11px;
  }
  .system .combi ul li p b {
    font-size: clamp(1.4rem, 3.2vw, 1.8rem);
  }
  .system .other .other-ttl-wrap {
    padding: 0 30px;
  }
  .system .other .other-ttl-wrap .other-ttl {
    font-size: 1.8rem;
    border-left: 5px solid #6875B0;
    padding: 4px 0 4px 8px;
  }
  .system .other .other-content-wrap {
    padding: 40px 30px;
  }
  .system .other .other-content-wrap .other-content {
    display: block;
  }
  .system .other .other-content-wrap .other-content .other-item {
    width: 100%;
  }
  .system .other .other-content-wrap .other-content .other-item .other-item-ttl {
    font-size: clamp(1.8rem, 4.8vw, 2.2rem);
  }
  .system .other .other-content-wrap .other-content .other-item img {
    width: 80%;
    margin-top: 2.67vw;
  }
  .system .other .other-content-wrap .other-content .other-item .series-lineup-detail {
    margin-top: 5.33vw;
  }
  .system .other .other-content-wrap .other-content .other-item:nth-child(n+2) {
    margin-top: 8vw;
  }
}

/* [ 真空構成部品 ] */
.parts #dim .acc-wrap .acc-content figure {
  display: flex;
  justify-content: center;
  width: 100%;
}

/* [ 真空装置 ] */
@media screen and (min-width: 769px) {
  .equip .product-list li {
    max-width: 268px;
    width: calc((100% - (15px * 2)) / 3);
  }
}
