.subtitle02 {
  margin-bottom: 16px;
}

.searchBox {
  padding-top: 0 !important;
}

.bg-gray {
  background-color: #f5f5f5;
  padding-top: 80px;
  padding-bottom: 80px;
}
@media (max-width: 690px) {
  .bg-gray {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}

.inner .bg-gray {
  padding: 32px !important;
  border-radius: 30px;
}
@media (max-width: 690px) {
  .inner .bg-gray {
    border-radius: 20px;
  }
}

#locator {
  margin-bottom: 0;
}

.pro-search {
  background-color: #F3F3FF;
  padding-top: 80px;
  padding-bottom: 80px;
}
@media (max-width: 690px) {
  .pro-search {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}
.pro-search__inner {
  padding: 32px;
  border-radius: 30px;
  background-color: #fff;
}
@media (max-width: 690px) {
  .pro-search__inner {
    border-radius: 20px;
    padding: 24px;
  }
}

.pro-kanren {
  justify-content: flex-start;
}
.pro-kanren li {
  list-style: none;
}
.pro-kanren li a {
  border: 2px solid #000238;
  padding: 26px 16px;
  display: flex;
  align-items: center;
  font-weight: bold;
  height: 100%;
}
@media (max-width: 690px) {
  .pro-kanren li a {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.pro-kanren li a::after {
  content: "";
  background: url(/dcms_media/other/arr-gray.svg) no-repeat center;
  width: 20px;
  height: 10px;
  margin-left: auto;
  transition: all 0.2s ease 0s;
  flex-shrink: 0;
}
.pro-kanren li a:hover {
  background-color: #000238;
  color: #fff;
}
.pro-kanren li a:hover::after {
  background-image: url(/dcms_media/other/arr-white.svg);
}

.pro-showroom .col a {
  display: block;
  position: relative;
}
.pro-showroom .col a figcaption {
  position: absolute;
  font-size: 28px;
  font-weight: bold;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  width: 100%;
  height: 100%;
}
@media (max-width: 979px) {
  .pro-showroom .col a figcaption {
    font-size: 24px;
  }
}
@media (max-width: 690px) {
  .pro-showroom .col a figcaption {
    font-size: 22px;
  }
}
.pro-showroom .col a figure {
  position: relative;
}
.pro-showroom .col a figure::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  transition: opacity 0.3s ease;
}
.pro-showroom .col a:hover {
  opacity: 1;
}
.pro-showroom .col a:hover figure img {
  opacity: 1;
}
.pro-showroom .col a:hover figure::after {
  opacity: 0;
}

.pro-narrow {
  padding-top: 50px;
  border-top: 1px solid #ddd;
}
@media (max-width: 690px) {
  .pro-narrow {
    padding-top: 30px;
  }
}
.pro-narrow .col {
  display: flex;
  gap: 16px;
  padding: 20px;
  border: 1px solid #ddd;
}
@media (max-width: 979px) {
  .pro-narrow .col {
    flex-wrap: wrap;
  }
}
.pro-narrow .col:hover {
  opacity: 1;
  border-color: #000238;
}
.pro-narrow .col:hover img {
  opacity: 1;
}
.pro-narrow .col .-img {
  width: 54.5%;
}
@media (max-width: 979px) {
  .pro-narrow .col .-img {
    width: 100%;
    margin: auto;
  }
}
@media (max-width: 979px) {
  .pro-narrow .col .-text {
    width: 100%;
  }
}
.pro-narrow .col .-text .-title {
  font-size: 20px;
}

.pro-category {
  padding-top: 50px;
  border-top: 1px solid #ddd;
}
@media (max-width: 690px) {
  .pro-category {
    padding-top: 30px;
  }
}
.pro-category .col a {
  display: block;
  position: relative;
}
.pro-category .col a p {
  position: absolute;
  font-size: 20px;
  font-weight: bold;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  width: 100%;
  height: 100%;
  text-align: center;
  line-height: 1.4;
}
@media (max-width: 690px) {
  .pro-category .col a p {
    font-size: 16px;
  }
}
.pro-category .col a figure {
  position: relative;
}
.pro-category .col a figure::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  transition: opacity 0.3s ease;
}
.pro-category .col a figure.trans50::after {
  background-color: rgba(0, 0, 0, 0.5);
}
.pro-category .col a figure.trans60::after {
  background-color: rgba(0, 0, 0, 0.6);
}
.pro-category .col a:hover {
  opacity: 1;
}
.pro-category .col a:hover figure img {
  opacity: 1;
}
.pro-category .col a:hover figure::after {
  opacity: 0.7;
}

.pro-case {
  justify-content: flex-start;
}
.pro-case li {
  list-style: none;
}
.pro-case li a {
  max-width: 100%;
  font-size: 16px;
  padding: 0 0 10px 0;
  display: flex;
  align-items: center;
  color: #000238;
  font-weight: bold;
  border-bottom: 2px solid #ddd;
  transition: all 0.2s ease 0s;
}
.pro-case li a::before {
  content: "";
  background-position: left 0;
  background-repeat: no-repeat;
  background-size: 45px;
  width: 45px;
  height: 45px;
  margin-right: 10px;
  transition: all 0.2s ease 0s;
}
.pro-case li a::after {
  content: "";
  background: url(/dcms_media/other/arr-gray.svg) no-repeat center;
  width: 20px;
  height: 10px;
  margin-left: auto;
  transition: all 0.2s ease 0s;
  flex-shrink: 0;
}
.pro-case li a:hover {
  border-bottom-color: #000238;
}
.pro-case li a:hover::after {
  background-image: url(/dcms_media/other/arr-main.svg);
}
.pro-case li.commercial_facility a::before {
  background-image: url(/dcms_media/other/pro-case-w-icon-1.svg);
}
.pro-case li.commercial_facility a:hover::before {
  background-image: url(/dcms_media/other/pro-case-icon-1.svg);
}
.pro-case li.office a::before {
  background-image: url(/dcms_media/other/pro-case-w-icon-2.svg);
}
.pro-case li.office a:hover::before {
  background-image: url(/dcms_media/other/pro-case-icon-2.svg);
}
.pro-case li.museum a::before {
  background-image: url(/dcms_media/other/pro-case-w-icon-3.svg);
}
.pro-case li.museum a:hover::before {
  background-image: url(/dcms_media/other/pro-case-icon-3.svg);
}
.pro-case li.welfare a::before {
  background-image: url(/dcms_media/other/pro-case-w-icon-4.svg);
}
.pro-case li.welfare a:hover::before {
  background-image: url(/dcms_media/other/pro-case-icon-4.svg);
}
.pro-case li.education a::before {
  background-image: url(/dcms_media/other/pro-case-w-icon-5.svg);
}
.pro-case li.education a:hover::before {
  background-image: url(/dcms_media/other/pro-case-icon-5.svg);
}
.pro-case li.Housing a::before {
  background-image: url(/dcms_media/other/pro-case-w-icon-6.svg);
}
.pro-case li.Housing a:hover::before {
  background-image: url(/dcms_media/other/pro-case-icon-6.svg);
}
.pro-case li.public_facility a::before {
  background-image: url(/dcms_media/other/pro-case-w-icon-7.svg);
}
.pro-case li.public_facility a:hover::before {
  background-image: url(/dcms_media/other/pro-case-icon-7.svg);
}
.pro-case li.hotel a::before {
  background-image: url(/dcms_media/other/pro-case-w-icon-8.svg);
}
.pro-case li.hotel a:hover::before {
  background-image: url(/dcms_media/other/pro-case-icon-8.svg);
}
.pro-case li.traffic a::before {
  background-image: url(/dcms_media/other/pro-case-w-icon-9.svg);
}
.pro-case li.traffic a:hover::before {
  background-image: url(/dcms_media/other/pro-case-icon-9.svg);
}
.pro-case li.other a::before {
  background-image: url(/dcms_media/other/pro-case-w-icon-10.svg);
}
.pro-case li.other a:hover::before {
  background-image: url(/dcms_media/other/pro-case-icon-10.svg);
}
.pro-case li.ceremonial a::before {
  background-image: url(/dcms_media/other/pro-case-w-icon-11.svg);
}
.pro-case li.ceremonial a:hover::before {
  background-image: url(/dcms_media/other/pro-case-icon-11.svg);
}

.pro-navi {
  padding: 40px 0;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
@media (max-width: 690px) {
  .pro-navi {
    padding: 24px 0;
  }
}
.pro-navi ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px 40px;
}
@media (max-width: 979px) {
  .pro-navi ul {
    gap: 16px 32px;
    justify-content: flex-start;
  }
}
.pro-navi ul li {
  list-style: none;
}
.pro-navi ul li a {
  font-size: 18px;
  font-weight: bold;
  display: flex;
  align-items: center;
  gap: 8px;
}
@media (max-width: 979px) {
  .pro-navi ul li a {
    font-size: 16px;
  }
}
.pro-navi ul li a::before {
  content: "";
  background: url(/dcms_media/other/arr-shita-w.svg) no-repeat center;
  background-size: contain;
  width: 30px;
  height: 30px;
  margin-left: auto;
  transition: all 0.2s ease 0s;
  flex-shrink: 0;
}
@media (max-width: 979px) {
  .pro-navi ul li a::before {
    width: 24px;
    height: 24px;
  }
}
.pro-navi ul li a:hover::before {
  background-image: url(/dcms_media/other/arr-shita.svg);
}

.m_0 {
  margin-bottom: 0px !important;
}