@charset "UTF-8";
/* [ 大阪真空機器（日英中） ] layout.css */
/* [ 株式会社大阪真空機器製作所 ] setting */
/* [ 株式会社大阪真空機器製作所 ] component */
.main-mv {
  position: relative;
  width: 100%;
  height: auto;
}
.main-mv video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (min-width: 769px) {
  .main-mv {
    height: 90vh;
  }
}
@media screen and (769px <= width <= 1080px) {
  .main-mv {
    height: auto;
    aspect-ratio: 375 / 253;
  }
}
@media only screen and (max-width: 768px) {
  .main-mv {
    aspect-ratio: 375 / 253;
  }
}

section {
  width: 100%;
}

.newslist-wrap {
  width: 100%;
  background: #ECEFF4;
}
.newslist-wrap .newslist {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  width: 100%;
}
.newslist-wrap .newslist h2 {
  font-family: "Jost", sans-serif;
  font-weight: 500;
  font-style: italic;
  color: #3473B2;
}
.newslist-wrap .newslist .newslist-item {
  list-style: none;
}
.newslist-wrap .newslist .newslist-item li {
  display: block;
  border-bottom: 1px solid transparent;
  padding: 5px 0;
}
.newslist-wrap .newslist .newslist-item li a {
  display: flex;
  align-items: baseline;
  color: #1A1311;
}
.newslist-wrap .newslist .newslist-item li a b {
  color: #fff;
  background: #1A1311;
  border-radius: 17px;
}
.newslist-wrap .newslist .newslist-item li a p {
  flex: 1;
  display: inline-block;
}
@media (hover: hover) {
  .newslist-wrap .newslist .newslist-item li:hover {
    border-color: #C6C6C6;
  }
  .newslist-wrap .newslist .newslist-item li:hover a {
    color: #707070;
  }
  .newslist-wrap .newslist .newslist-item li:hover a b {
    background: #707070;
  }
}
.newslist-wrap .newslist-btn-wrap {
  align-self: flex-end;
  padding-bottom: 11.5px;
}
.newslist-wrap .newslist-btn-wrap .newslist-btn {
  display: block;
  width: fit-content;
  font-weight: 500;
  background: #ECEFF4;
  border: 1px solid #707070;
  border-radius: 22px;
  transition: background 0.4s ease;
}
.newslist-wrap .newslist-btn-wrap .newslist-btn span {
  display: flex;
  align-items: center;
  gap: 0.25em;
  color: #1A1311;
  transition: color 0.4s ease;
}
.newslist-wrap .newslist-btn-wrap .newslist-btn span::after {
  content: '';
  display: block;
  height: auto;
  aspect-ratio: 1 / 1;
  mask-repeat: no-repeat;
  background: #1A1311;
  mask-size: contain;
  mask-image: url("../img/icon_arrow_circle.svg");
  transition: background 0.3s ease;
  transform: translateY(-0.1em);
}
@media (hover: hover) {
  .newslist-wrap .newslist-btn-wrap .newslist-btn:hover {
    border-color: #6684A8;
    background: #6684A8;
  }
  .newslist-wrap .newslist-btn-wrap .newslist-btn:hover span {
    color: #fff;
  }
  .newslist-wrap .newslist-btn-wrap .newslist-btn:hover span::after {
    background: #fff;
  }
}
@media screen and (min-width: 769px) {
  .newslist-wrap .newslist {
    justify-content: space-between;
    gap: 26px;
    max-width: 1240px;
    padding: 29px 20px 34.5px;
    margin: 0 auto;
  }
  .newslist-wrap .newslist .newslist-ttl {
    font-size: clamp(3rem, 1.93vw, 3.7rem);
  }
  .newslist-wrap .newslist .newslist-item {
    width: 67%;
    max-width: 900px;
  }
  .newslist-wrap .newslist .newslist-item li a {
    font-size: 1.4rem;
  }
  .newslist-wrap .newslist .newslist-item li a b {
    display: inline-block;
    width: 145px;
    text-align: center;
    padding: 3px 0 0;
    margin-left: 17px;
  }
  .newslist-wrap .newslist .newslist-item li a p {
    margin-left: 7px;
  }
  .newslist-wrap .newslist .newslist-btn {
    padding: 11.5px 23.1px 8px;
  }
  .newslist-wrap .newslist .newslist-btn span {
    font-size: 1.4rem;
  }
  .newslist-wrap .newslist .newslist-btn span::after {
    width: 1.15em;
  }
}
@media screen and (769px <= width <= 1080px) {
  .newslist-wrap .newslist-item {
    flex: 1;
  }
  .newslist-wrap .newslist-btn-wrap {
    display: flex;
    justify-content: center;
    width: 100%;
  }
}
@media only screen and (max-width: 768px) {
  .newslist-wrap .newslist {
    gap: max(15px, 4vw);
    padding: 15px 10px 14px;
  }
  .newslist-wrap .newslist .newslist-ttl {
    font-size: max(2rem, 5.33vw);
  }
  .newslist-wrap .newslist .newslist-item {
    flex: 1;
  }
  .newslist-wrap .newslist .newslist-item li a {
    display: grid;
    grid-template-columns: min-content;
    grid-template-rows: min-content max-content;
    grid-column-gap: 0px;
    grid-row-gap: 5px;
    font-size: clamp(1rem, 2.67vw, 1.4rem);
  }
  .newslist-wrap .newslist .newslist-item li a time {
    grid-area: 1 / 1 / 2 / 2;
    color: #777270;
    margin-right: 2em;
  }
  .newslist-wrap .newslist .newslist-item li a b {
    grid-area: 1 / 2 / 2 / 3;
    width: fit-content;
    min-width: 110px;
    text-align: center;
    padding: 2px 1em 0;
  }
  .newslist-wrap .newslist .newslist-item li a p {
    grid-area: 2 / 1 / 3 / 4;
    font-size: clamp(1.2rem, 3.2vw, 1.4rem);
  }
  .newslist-wrap .newslist .newslist-btn-wrap {
    display: flex;
    justify-content: center;
    width: 100%;
  }
  .newslist-wrap .newslist .newslist-btn-wrap .newslist-btn {
    padding: 7.5px 24px 4.5px;
  }
  .newslist-wrap .newslist .newslist-btn-wrap .newslist-btn span {
    font-size: clamp(1.2rem, 3.2vw, 1.4rem);
  }
  .newslist-wrap .newslist .newslist-btn-wrap .newslist-btn span::after {
    width: 1.15em;
  }
}

.aboutus-wrap {
  position: relative;
  width: 100%;
}
.aboutus-wrap .abu-content img {
  height: auto;
  aspect-ratio: 563 / 169;
}
.aboutus-wrap .abu-content .abu-txt {
  display: block;
  color: #fff;
  font-weight: 700;
}
.aboutus-wrap .abu-content .abu-txt p + p {
  margin-top: 1.5em;
}
.aboutus-wrap .abu-content a {
  width: fit-content;
  color: #fff;
  border: 3px solid #fff;
  border-radius: 5px;
}
.aboutus-wrap .abu-content a span {
  display: flex;
  align-items: center;
  gap: 0.25em;
  font-weight: 500;
  transition: color 0.4s ease;
}
.aboutus-wrap .abu-content a span::after {
  content: '';
  display: block;
  height: auto;
  aspect-ratio: 1 / 1;
  mask-repeat: no-repeat;
  background: #fff;
  mask-size: contain;
  mask-image: url("../img/icon_arrow_circle.svg");
  transition: background 0.3s ease;
  transform: translateY(-0.05em);
}
@media (hover: hover) {
  .aboutus-wrap .abu-content a:hover {
    border-color: #CB0023;
    background: #CB0023;
  }
}
.aboutus-wrap .abu-img {
  display: flex;
  justify-content: center;
  width: 50%;
}
.aboutus-wrap .abu-img img {
  max-width: 585px;
  aspect-ratio: 39 / 53;
}
@media screen and (min-width: 769px) {
  .aboutus-wrap {
    height: clamp(630px, 41.41vw, 795px);
    aspect-ratio: 128 / 53;
    background: #4D6B92 url("/oskvwp/wp-content/themes/osakavacuum/img/top/bg_aboutus.jpg") center/auto 100% no-repeat;
    overflow: hidden;
  }
  .aboutus-wrap > div {
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 1440px;
    height: 100%;
    padding: 0 20px;
  }
  .aboutus-wrap .abu-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    width: 50%;
  }
  .aboutus-wrap .abu-content img {
    width: 80.1%;
  }
  .aboutus-wrap .abu-content .abu-txt {
    width: 90%;
    font-size: clamp(1.6rem, 0.52vw, 2rem);
    line-height: 2.5;
    letter-spacing: 0.2em;
    margin-top: 4.38vw;
  }
  .aboutus-wrap .abu-content a {
    align-self: flex-end;
    padding: 10px 16.2px 4px;
    margin: 2.57vw 10% 0 0;
  }
  .aboutus-wrap .abu-content a span {
    font-size: clamp(2.1rem, 1.3vw, 2.5rem);
  }
  .aboutus-wrap .abu-content a span::after {
    width: 0.9em;
  }
}
@media only screen and (max-width: 768px) {
  .aboutus-wrap {
    height: auto;
    aspect-ratio: 75 / 112;
    background: #4D6B92 url("/oskvwp/wp-content/themes/osakavacuum/img/top/bg_aboutus_sp.jpg") center/100% auto no-repeat;
  }
  .aboutus-wrap > div {
    display: block;
    height: 100%;
  }
  .aboutus-wrap .abu-content {
    display: flex;
    justify-content: flex-start;
    flex-direction: column;
    width: 90%;
    height: 100%;
    padding: 10.67vw 0 6.67vw 22px;
  }
  .aboutus-wrap .abu-content img {
    width: 88.5%;
  }
  .aboutus-wrap .abu-content .abu-txt {
    width: 100%;
    font-size: clamp(1.2rem, 3.2vw, 1.8rem);
    line-height: 2.167;
    letter-spacing: 0.13em;
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.51);
    margin-top: 8vw;
  }
  .aboutus-wrap .abu-content a {
    display: block;
    border-width: 2px;
    padding: 7px 14px 4px;
    margin-top: auto;
  }
  .aboutus-wrap .abu-content a span {
    font-size: clamp(1.6rem, 4.27vw, 2.1rem);
  }
  .aboutus-wrap .abu-content a span::after {
    width: 20px;
  }
  .aboutus-wrap .abu-img {
    display: none;
  }
}

.advantage-wrap .adv-ttl {
  width: fit-content;
  font-weight: 700;
  color: #CB0023;
}
.advantage-wrap .adv-ttl span {
  position: relative;
}
.advantage-wrap .adv-ttl span::after {
  content: '';
  position: absolute;
  bottom: -0.2em;
  left: 50%;
  background: #CB0023;
  transform: translateX(-50%);
}
.advantage-wrap .adv-content {
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
  list-style: none;
}
.advantage-wrap .adv-content .adv-item {
  display: flex;
  background: #fff;
}
.advantage-wrap .adv-content .adv-item img {
  width: 100%;
}
.advantage-wrap .adv-content .adv-item > div {
  flex-grow: 1;
  display: flex;
  align-items: center;
  flex-direction: column;
}
.advantage-wrap .adv-content .adv-item > div p {
  color: #5B5B5B;
  font-weight: 700;
}
.advantage-wrap .adv-content .adv-item > div p:has(b) {
  color: #1A1311;
}
.advantage-wrap .adv-content .adv-item > div a {
  width: fit-content;
  color: #CB0023;
  border: 3px solid #CB0023;
  border-radius: 5px;
  background: #fff;
  margin-top: auto;
  transition: background 0.4s ease;
}
.advantage-wrap .adv-content .adv-item > div a span {
  display: flex;
  align-items: center;
  gap: 0.25em;
  font-weight: 500;
  transition: color 0.4s ease;
}
.advantage-wrap .adv-content .adv-item > div a span::after {
  content: '';
  display: inline-block;
  height: auto;
  aspect-ratio: 1 / 1;
  mask-repeat: no-repeat;
  background: #CB0023;
  mask-size: contain;
  mask-image: url("../img/icon_arrow_circle.svg");
  transition: background 0.3s ease;
  transform: translateY(-0.05em);
}
@media (hover: hover) {
  .advantage-wrap .adv-content .adv-item > div a:hover {
    color: #fff;
    border-color: #CB0023;
    background: #CB0023;
  }
  .advantage-wrap .adv-content .adv-item > div a:hover span::after {
    background: #fff;
  }
}
.advantage-wrap .adv-first {
  width: 100%;
}
.advantage-wrap .adv-first .adv-first-txt {
  color: #545454;
  font-weight: 700;
  text-align: center;
}
.advantage-wrap .adv-first .adv-first-txt span {
  color: #CB0023;
}
.advantage-wrap .adv-first .adv-first-txt b {
  border-bottom: 3px solid #CB0023;
}
.advantage-wrap .adv-first > div {
  width: 100%;
}
.advantage-wrap .adv-first > div ul {
  list-style: none;
}
.advantage-wrap .adv-first > div ul li {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-weight: 700;
  text-align: center;
  background: #808080;
  box-shadow: 1px 9px 6px rgba(0, 0, 0, 0.23);
}
@media screen and (min-width: 769px) {
  .advantage-wrap .adv-ttl span {
    font-size: clamp(3.2rem, 2.4vw, 4.6rem);
  }
  .advantage-wrap .adv-ttl span::after {
    width: 100px;
    height: clamp(4px, 0.31vw, 6px);
  }
  .advantage-wrap .adv-content {
    gap: calc(5.69vw / 2);
    max-width: 1440px;
    height: 100%;
    padding: 0 20px;
  }
  .advantage-wrap .adv-content .adv-item {
    flex-direction: column;
    width: calc((100% - 5.69vw) / 3);
    box-shadow: 0 12px 11px rgba(57, 113, 141, 0.18);
  }
  .advantage-wrap .adv-content .adv-item > div {
    gap: 1em;
    padding: min(1.61vw, 31px) min(1.56vw, 30px);
  }
  .advantage-wrap .adv-content .adv-item > div p {
    font-size: clamp(1.4rem, 0.94vw, 1.8rem);
    line-height: 1.941;
  }
  .advantage-wrap .adv-content .adv-item > div p:has(b) {
    font-size: clamp(2rem, 1.25vw, 2.4rem);
    line-height: 1.2;
  }
  .advantage-wrap .adv-content .adv-item > div a {
    padding: 10px 16.2px 4px;
  }
  .advantage-wrap .adv-content .adv-item > div a span {
    font-size: clamp(1.9rem, 1.2vw, 2.3rem);
  }
  .advantage-wrap .adv-content .adv-item > div a span::after {
    width: 0.9em;
  }
  .advantage-wrap .adv-first {
    max-width: 1440px;
    padding: 0 20px;
  }
  .advantage-wrap .adv-first .adv-first-txt {
    font-size: clamp(1.8rem, 1.25vw, 2.4rem);
    margin-bottom: 20px;
  }
  .advantage-wrap .adv-first .adv-first-txt span {
    font-size: clamp(3.8rem, 2.6vw, 5rem);
  }
  .advantage-wrap .adv-first .adv-first-txt b {
    font-size: clamp(2.4rem, 1.67vw, 3.2rem);
  }
  .advantage-wrap .adv-first > div ul {
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 21.4px;
  }
  .advantage-wrap .adv-first > div ul li {
    width: calc((100% - (21.4px * 2)) / 3);
    padding: 17.4px 0.5em 13.6px;
  }
  .advantage-wrap .adv-first > div ul li p {
    font-size: clamp(2rem, 1.35vw, 2.6rem);
  }
}
@media only screen and (max-width: 768px) {
  .advantage-wrap .adv-ttl span {
    font-size: clamp(3rem, 8vw, 4.5rem);
    text-align: center;
  }
  .advantage-wrap .adv-ttl span::after {
    width: 100px;
    height: 4px;
  }
  .advantage-wrap .adv-content {
    flex-direction: column;
    gap: 12px;
    padding: 0 10px;
  }
  .advantage-wrap .adv-content .adv-item {
    width: 100%;
    box-shadow: 0 12px 11px rgba(57, 113, 141, 0.18);
  }
  .advantage-wrap .adv-content .adv-item picture {
    width: 37.6%;
    height: auto;
    aspect-ratio: 13 / 20;
  }
  .advantage-wrap .adv-content .adv-item picture img {
    height: 100%;
  }
  .advantage-wrap .adv-content .adv-item > div {
    flex: 1;
    align-items: flex-start;
    gap: 10px;
    padding: 18px 14px 14px 18px;
  }
  .advantage-wrap .adv-content .adv-item > div p {
    font-size: clamp(1.2rem, 3.2vw, 1.6rem);
    line-height: 1.667;
    font-weight: 500;
  }
  .advantage-wrap .adv-content .adv-item > div p:has(b) {
    font-size: clamp(1.4rem, 3.73vw, 2.2rem);
    line-height: 1.5;
  }
  .advantage-wrap .adv-content .adv-item > div a {
    align-self: flex-end;
    min-width: 121px;
    border-width: 2px;
    padding: 4px 13px 2px;
  }
  .advantage-wrap .adv-content .adv-item > div a span {
    justify-content: center;
    gap: 0.5em;
  }
  .advantage-wrap .adv-content .adv-item > div a span::after {
    width: 23px;
  }
  .advantage-wrap .adv-first {
    padding: 0 16px;
  }
  .advantage-wrap .adv-first .adv-first-txt {
    font-size: clamp(1.2rem, 3.2vw, 1.6rem);
    letter-spacing: 0.1em;
    margin-bottom: 20px;
  }
  .advantage-wrap .adv-first .adv-first-txt span {
    font-size: clamp(3rem, 8vw, 4rem);
  }
  .advantage-wrap .adv-first .adv-first-txt b {
    font-size: clamp(1.8rem, 4.8vw, 2.6rem);
  }
  .advantage-wrap .adv-first > div ul {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 5px;
    grid-row-gap: 5px;
  }
  .advantage-wrap .adv-first > div ul li {
    padding: 10px 0.5em 6px;
  }
  .advantage-wrap .adv-first > div ul li:nth-of-type(1) {
    grid-area: 1 / 1 / 2 / 2;
  }
  .advantage-wrap .adv-first > div ul li:nth-of-type(2) {
    grid-area: 1 / 2 / 2 / 4;
  }
  .advantage-wrap .adv-first > div ul li:nth-of-type(3) {
    grid-area: 2 / 1 / 3 / 4;
  }
  .advantage-wrap .adv-first > div ul li p {
    font-size: clamp(1.4rem, 3.73vw, 1.8rem);
  }
}

.pump-industrial {
  position: relative;
  background: #ECEFF4;
}
.pump-industrial .pupm-ttl {
  color: #353E54;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.2em;
}
.pump-industrial #pump-swiper {
  width: 100%;
  /* カード */
}
.pump-industrial #pump-swiper ul.swiper-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  border: none;
  list-style: none;
  margin: 0;
  padding: 0;
}
.pump-industrial #pump-swiper ul.swiper-wrapper li.swiper-slide {
  display: flex;
  align-items: center;
  position: relative;
  width: fit-content;
  color: #353E54;
  border: 1px solid #353E54;
  z-index: +1;
  cursor: pointer;
}
.pump-industrial #pump-swiper ul.swiper-wrapper li.swiper-slide.swiper-slide-thumb-active {
  color: #fff;
  background: #353E54;
}
.pump-industrial #pump-swiper .field-content {
  width: 100%;
  opacity: 1;
  overflow: hidden;
}
.pump-industrial #pump-swiper .swiper-container.field-menu {
  margin-bottom: 20px;
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:first-child.swiper-slide-thumb-active ~ .current {
  transform: translateX(0) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:nth-child(2).swiper-slide-thumb-active ~ .current {
  transform: translateX(25%) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:nth-child(3).swiper-slide-thumb-active ~ .current {
  transform: translateX(calc(25% * 2)) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:nth-child(4).swiper-slide-thumb-active ~ .current {
  transform: translateX(calc(25% * 3)) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:nth-child(5).swiper-slide-thumb-active ~ .current {
  transform: translateX(calc(25% * 4)) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:nth-child(6).swiper-slide-thumb-active ~ .current {
  transform: translateX(calc(25% * 5)) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:nth-child(7).swiper-slide-thumb-active ~ .current {
  transform: translateX(calc(25% * 6)) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:nth-child(8).swiper-slide-thumb-active ~ .current {
  transform: translateX(calc(25% * 7)) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:nth-child(9).swiper-slide-thumb-active ~ .current {
  transform: translateX(calc(25% * 8)) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:nth-child(10).swiper-slide-thumb-active ~ .current {
  transform: translateX(calc(25% * 9)) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:nth-child(11).swiper-slide-thumb-active ~ .current {
  transform: translateX(calc(25% * 10)) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:nth-child(12).swiper-slide-thumb-active ~ .current {
  transform: translateX(calc(25% * 11)) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:nth-child(13).swiper-slide-thumb-active ~ .current {
  transform: translateX(calc(25% * 12)) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:nth-child(14).swiper-slide-thumb-active ~ .current {
  transform: translateX(calc(25% * 13)) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container .swiper-slide:nth-child(15).swiper-slide-thumb-active ~ .current {
  transform: translateX(calc(25% * 14)) scaleX(0.25);
}
.pump-industrial #pump-swiper .swiper-container.field-content {
  position: relative;
}
.pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-next, .pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-prev {
  z-index: +1;
}
.pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-next::after, .pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-prev::after {
  content: '';
  height: auto;
  aspect-ratio: 1 / 1;
  background: url("../img/icon_arrow_swiper.svg") center/contain no-repeat;
}
@media (hover: hover) {
  .pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-next:hover, .pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-prev:hover {
    opacity: 0.5;
  }
}
.pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-prev::after {
  transform: scale(-1, 1);
}
.pump-industrial #pump-swiper article.card {
  width: 100%;
  background: #fff;
}
.pump-industrial #pump-swiper article.card .card-item {
  text-decoration: none;
  transition: 0.2s ease-in-out;
  cursor: pointer;
}
.pump-industrial #pump-swiper article.card .card-item .industry-wrap {
  display: flex;
}
.pump-industrial #pump-swiper article.card .card-item .industry-wrap .industry-content {
  color: #576984;
}
.pump-industrial #pump-swiper article.card .card-item .industry-wrap .industry-content .industry-txt a {
  display: inline-block;
  color: #576984;
  text-decoration: underline;
}
@media (hover: hover) {
  .pump-industrial #pump-swiper article.card .card-item .industry-wrap .industry-content .industry-txt a:hover {
    text-decoration: none;
  }
}
.pump-industrial .industry-btn {
  width: fit-content;
  font-weight: 500;
  background: #ECEFF4;
  border: 1px solid #707070;
  border-radius: 43px;
  transition: all 0.4s ease;
}
.pump-industrial .industry-btn span {
  display: flex;
  align-items: center;
  gap: 0.25em;
  transition: color 0.4s ease;
}
.pump-industrial .industry-btn span::after {
  content: '';
  display: block;
  height: auto;
  aspect-ratio: 1 / 1;
  mask-repeat: no-repeat;
  background: #1A1311;
  mask-size: contain;
  mask-image: url("../img/icon_arrow_circle.svg");
  transition: background 0.3s ease;
  transform: translateY(-0.05em);
}
@media (hover: hover) {
  .pump-industrial .industry-btn:hover {
    border-color: #6684A8;
    background: #6684A8;
  }
  .pump-industrial .industry-btn:hover span {
    color: #fff;
  }
  .pump-industrial .industry-btn:hover span::after {
    background: #fff;
  }
}
@media screen and (min-width: 769px) {
  .pump-industrial {
    padding: 61.6px 0 66.7px;
  }
  .pump-industrial .pupm-ttl {
    font-size: clamp(3rem, 2.14vw, 4.1rem);
  }
  .pump-industrial #pump-swiper {
    --swiper-navigation-sides-offset: 23px;
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 20px;
  }
  .pump-industrial #pump-swiper ul.swiper-wrapper {
    gap: 1.04vw;
    border-radius: 3px;
  }
  .pump-industrial #pump-swiper ul.swiper-wrapper li.swiper-slide {
    min-width: 150px;
    font-size: 1.8rem;
    font-weight: 600;
  }
  .pump-industrial #pump-swiper ul.swiper-wrapper li.swiper-slide span {
    padding: 0 20px;
  }
  .pump-industrial #pump-swiper .swiper-container .swiper-slide {
    padding: 15px 0 10px;
  }
  .pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-next, .pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-prev {
    width: clamp(35px, 2.6vw, 50px);
    height: clamp(35px, 2.6vw, 50px);
  }
  .pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-next::after, .pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-prev::after {
    width: clamp(35px, 2.6vw, 50px);
  }
  .pump-industrial #pump-swiper article.card .card-item .industry-wrap {
    justify-content: center;
    align-items: center;
    max-width: 1200px;
    padding: 70px 80px 49.2px;
  }
  .pump-industrial #pump-swiper article.card .card-item .industry-wrap .industry-content {
    width: 50%;
    font-weight: 700;
  }
  .pump-industrial #pump-swiper article.card .card-item .industry-wrap .industry-content .industry-name {
    font-size: clamp(2.2rem, 1.46vw, 2.8rem);
    margin-bottom: 38.7px;
  }
  .pump-industrial #pump-swiper article.card .card-item .industry-wrap .industry-content .industry-txt {
    width: 95%;
    font-size: clamp(1.6rem, 1.04vw, 2rem);
    line-height: 2.25;
  }
  .pump-industrial #pump-swiper article.card .card-item .industry-wrap .industry-img {
    width: 50%;
    text-align: center;
  }
  .pump-industrial #pump-swiper article.card .card-item .industry-wrap .industry-img img {
    width: 90%;
  }
  .pump-industrial .industry-btn {
    padding: 25.5px 33.9px 21.5px;
  }
  .pump-industrial .industry-btn span {
    font-size: clamp(2.1rem, 1.3vw, 2.5rem);
  }
  .pump-industrial .industry-btn span::after {
    width: 1.0em;
  }
}
@media only screen and (max-width: 768px) {
  .pump-industrial {
    padding: 35px 0;
  }
  .pump-industrial .pupm-ttl {
    font-size: clamp(1.6rem, 4.27vw, 2.8rem);
  }
  .pump-industrial #pump-swiper {
    --swiper-navigation-sides-offset: 23px;
    --swiper-navigation-top-offset: 75%;
    padding: 0 16px;
  }
  .pump-industrial #pump-swiper ul.swiper-wrapper {
    gap: 5px;
  }
  .pump-industrial #pump-swiper ul.swiper-wrapper li.swiper-slide {
    min-width: 56px;
    font-size: clamp(1.4rem, 3.73vw, 1.6rem);
  }
  .pump-industrial #pump-swiper ul.swiper-wrapper li.swiper-slide span {
    padding: 0 10px;
  }
  .pump-industrial #pump-swiper .swiper-container .swiper-slide {
    padding: 4px 0 2px;
  }
  .pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-next, .pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-prev {
    width: 7.5%;
    height: 7.5%;
  }
  .pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-next::after, .pump-industrial #pump-swiper .swiper-container.field-content .swiper-button-prev::after {
    width: 98%;
  }
  .pump-industrial #pump-swiper article.card .card-item .industry-wrap {
    flex-direction: column;
    padding: 4.8vw 4.8vw 6.93vw;
  }
  .pump-industrial #pump-swiper article.card .card-item .industry-wrap .industry-content {
    width: 100%;
  }
  .pump-industrial #pump-swiper article.card .card-item .industry-wrap .industry-content .industry-name {
    font-size: clamp(1.6rem, 4.27vw, 2.2rem);
    font-weight: 700;
    margin-bottom: 12px;
  }
  .pump-industrial #pump-swiper article.card .card-item .industry-wrap .industry-content .industry-txt {
    width: 100%;
    font-size: clamp(1.2rem, 3.2vw, 1.8rem);
    line-height: 1.917;
    margin-bottom: 10px;
  }
  .pump-industrial #pump-swiper article.card .card-item .industry-wrap .industry-img {
    display: flex;
    justify-content: center;
    width: 100%;
  }
  .pump-industrial #pump-swiper article.card .card-item .industry-wrap .industry-img img {
    width: 70%;
  }
  .pump-industrial .industry-btn {
    padding: 16px 34px 14px;
  }
  .pump-industrial .industry-btn span {
    font-size: clamp(1.6rem, 4.27vw, 2.2rem);
  }
  .pump-industrial .industry-btn span::after {
    width: 25px;
  }
}

.exhibition-wrap {
  width: 100%;
  height: auto;
}
.exhibition-wrap .ex-content {
  display: flex;
  flex-direction: column;
}
.exhibition-wrap .ex-ttl {
  color: #C0D3ED;
}
.exhibition-wrap .ex-ttl span {
  position: relative;
  font-weight: 700;
}
.exhibition-wrap .ex-ttl span::after {
  content: '';
  position: absolute;
  bottom: -0.1em;
  background: #C0D3ED;
}
.exhibition-wrap ul {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  width: 100%;
  list-style: none;
}
.exhibition-wrap ul li {
  border-radius: 13px;
  background: #fff;
}
.exhibition-wrap ul li a {
  display: block;
  width: 100%;
  color: #585858;
  font-weight: 500;
}
.exhibition-wrap ul li a .ex-img {
  width: 100%;
  overflow: hidden;
}
.exhibition-wrap ul li a .ex-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.exhibition-wrap ul li a .ex-txt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
}
@media (hover: hover) {
  .exhibition-wrap ul li a:hover {
    color: #6684A8;
  }
  .exhibition-wrap ul li a:hover .ex-img img {
    transform: scale(1.1);
  }
}
.exhibition-wrap .ex-btn a {
  display: block;
  width: fit-content;
  color: #fff;
  border: 3px solid #fff;
  border-radius: 10px;
  padding: 12px 34.25px 8px;
  margin-top: 2.57vw;
  transition: all 0.4s ease;
}
.exhibition-wrap .ex-btn a span {
  display: flex;
  align-items: center;
  gap: 0.25em;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.exhibition-wrap .ex-btn a span::after {
  content: '';
  display: block;
  height: auto;
  aspect-ratio: 1 / 1;
  mask-repeat: no-repeat;
  background: #fff;
  mask-size: contain;
  mask-image: url("../img/icon_arrow_circle.svg");
  transition: background 0.3s ease;
  transform: translateY(-0.05em);
}
@media (hover: hover) {
  .exhibition-wrap .ex-btn a:hover {
    color: #4D6B92;
    background: #fff;
  }
  .exhibition-wrap .ex-btn a:hover span::after {
    background: #4D6B92;
  }
}
@media screen and (min-width: 769px) {
  .exhibition-wrap {
    background: url("../img/top/bg_exhibition.jpg") center/cover no-repeat;
    padding: 45px 0 40.8px;
  }
  .exhibition-wrap .ex-content {
    max-width: 1440px;
    padding: 0 20px;
    align-items: flex-start;
  }
  .exhibition-wrap .ex-ttl span {
    font-size: clamp(3.6rem, 2.5vw, 4.8rem);
  }
  .exhibition-wrap .ex-ttl span::after {
    left: 0;
    width: 130px;
    height: clamp(4px, 0.31vw, 6px);
  }
  .exhibition-wrap ul {
    gap: 14px;
  }
  .exhibition-wrap ul li {
    width: calc((100% - (14px * 3)) / 4);
  }
  .exhibition-wrap ul li a {
    padding: 14.2px 0 16px;
  }
  .exhibition-wrap ul li a .ex-term, .exhibition-wrap ul li a .ex-venue {
    font-size: clamp(1.4rem, 0.94vw, 1.8rem);
    padding: 0 12.5px;
    margin-bottom: 5px;
  }
  .exhibition-wrap ul li a .ex-img {
    max-width: 344px;
    aspect-ratio: 172 / 83;
  }
  .exhibition-wrap ul li a .ex-txt {
    font-size: clamp(1.2rem, 0.94vw, 1.6rem);
    line-height: 1.938;
    padding: 0 12.5px;
    margin-top: 14.3px;
  }
  .exhibition-wrap .ex-btn {
    align-self: flex-end;
  }
  .exhibition-wrap .ex-btn a span {
    font-size: clamp(1.6rem, 1.09vw, 2.1rem);
    font-weight: 700;
  }
  .exhibition-wrap .ex-btn a span::after {
    width: 0.9em;
  }
}
@media only screen and (max-width: 768px) {
  .exhibition-wrap {
    background: url("../img/top/bg_exhibition_sp.jpg") center/cover no-repeat;
    padding: 7.47vw 0 10.67vw;
  }
  .exhibition-wrap .ex-content {
    padding: 0 20px;
    align-items: center;
  }
  .exhibition-wrap .ex-ttl {
    text-align: center;
  }
  .exhibition-wrap .ex-ttl span {
    font-size: clamp(2.6rem, 6.93vw, 3.2rem);
  }
  .exhibition-wrap .ex-ttl span::after {
    left: 50%;
    width: 100px;
    height: 4px;
    transform: translateX(-50%);
  }
  .exhibition-wrap ul {
    flex-wrap: wrap;
    gap: 14px;
  }
  .exhibition-wrap ul li {
    width: calc((100% - 14px) / 2);
  }
  .exhibition-wrap ul li a {
    padding: 10px 0;
  }
  .exhibition-wrap ul li a .ex-term, .exhibition-wrap ul li a .ex-venue {
    font-size: clamp(1.1rem, 2.93vw, 1.4rem);
    padding: 0 10px;
    margin-bottom: 5px;
  }
  .exhibition-wrap ul li a .ex-img {
    aspect-ratio: 32 / 15;
  }
  .exhibition-wrap ul li a .ex-txt {
    font-size: clamp(1.2rem, 3.2vw, 1.6rem);
    padding: 0 8px;
    margin-top: 10px;
  }
  .exhibition-wrap .ex-btn a span {
    font-size: 1.6rem;
  }
  .exhibition-wrap .ex-btn a span::after {
    width: 25px;
  }
}

.pagelink-wrap {
  display: flex;
  align-items: stretch;
}
.pagelink-wrap .pl-item a {
  display: block;
  width: 100%;
}
.pagelink-wrap .pl-item a .pl-img {
  display: block;
  width: 100%;
  text-align: center;
  border-top: 4px solid #DEDEDE;
  border-left: 4px solid #DEDEDE;
  border-right: 4px solid #DEDEDE;
}
.pagelink-wrap .pl-item a .pl-txt {
  width: 100%;
  color: #fff;
  text-align: center;
  background: #4D6B92;
}
.pagelink-wrap .pl-item a .pl-txt p:has(b) b {
  display: inline-block;
}
.pagelink-wrap .pl-item a .pl-txt p:has(b) b::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_swiper.svg");
  vertical-align: text-top;
  margin-left: 0.5em;
}
@media (hover: hover) {
  .pagelink-wrap .pl-item a:hover .pl-txt {
    opacity: 0.8;
  }
}
@media screen and (min-width: 769px) {
  .pagelink-wrap {
    justify-content: space-between;
    max-width: 1440px;
    padding: 0 20px;
  }
  .pagelink-wrap .pl-item {
    width: 47.5%;
  }
  .pagelink-wrap .pl-item a .pl-img {
    padding: 40.7px 0 33.7px;
  }
  .pagelink-wrap .pl-item a .pl-txt {
    padding: 17.7px 0 17.3px;
  }
  .pagelink-wrap .pl-item a .pl-txt p {
    font-size: clamp(1.6rem, 1.04vw, 2rem);
  }
  .pagelink-wrap .pl-item a .pl-txt p:has(b) {
    font-size: clamp(2.4rem, 1.56vw, 3rem);
    margin-bottom: 8.1px;
  }
  .pagelink-wrap .pl-item a .pl-txt p:has(b) b {
    line-height: clamp(30px, 2.03vw, 39px);
  }
  .pagelink-wrap .pl-item a .pl-txt p:has(b) b::after {
    width: clamp(30px, 2.03vw, 39px);
  }
}
@media only screen and (max-width: 768px) {
  .pagelink-wrap {
    flex-direction: column;
    gap: 30px;
    padding: 0 10px;
  }
  .pagelink-wrap .pl-item {
    width: 100%;
  }
  .pagelink-wrap .pl-item a .pl-img {
    padding: 15px 0 10px;
  }
  .pagelink-wrap .pl-item a .pl-txt {
    padding: 14px 0 10px;
  }
  .pagelink-wrap .pl-item a .pl-txt p {
    font-size: clamp(1.1rem, 2.93vw, 1.4rem);
  }
  .pagelink-wrap .pl-item a .pl-txt p:has(b) {
    font-size: clamp(1.8rem, 4.8vw, 2.4rem);
    margin-bottom: 4px;
  }
  .pagelink-wrap .pl-item a .pl-txt p:has(b) b {
    line-height: 1.8rem;
  }
  .pagelink-wrap .pl-item a .pl-txt p:has(b) b::after {
    width: 25px;
  }
}
