@charset "UTF-8";
:root {
  --header-height: calc(10rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  :root {
    --header-height: calc(7rem / var(--root-multiplier-hf, 1));
  }
}

body {
  padding-block-start: var(--header-height);
  scroll-padding-block-start: calc(var(--header-height) * 2);
}

.l-header {
  position: fixed;
  inset-inline-start: 0;
  inset-block-start: 0;
  width: 100%;
  background: #fff;
  border-block-end: 1px solid #e5e5e5;
  z-index: var(--z-index-header);
}
.l-header.is-scroll {
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
}
.l-header :where(a, button, input):focus-visible {
  outline: 2px solid #00867e;
  outline-offset: 3px;
}

.l-header__inr {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  align-items: center;
  max-width: calc(144rem / var(--root-multiplier-hf, 1));
  height: var(--header-height);
  margin-inline: auto;
  padding-inline: calc(5rem / var(--root-multiplier-hf, 1));
}
.l-header__inr a {
  color: #333;
}
@media (max-width: 787px) {
  .l-header__inr {
    padding-inline: calc(1.8rem / var(--root-multiplier-hf, 1));
  }
}

.l-header__logo {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: calc(0.6rem / var(--root-multiplier-hf, 1)) calc(1.4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .l-header__logo {
    gap: calc(0.4rem / var(--root-multiplier-hf, 1)) calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 1080px) and (width > 787px) {
  .l-header__logo {
    position: absolute;
    inset-block-start: calc(1.8rem/ var(--root-multiplier-hf, 1));
  }
}

.l-header__logo-img img {
  width: calc(12.6rem / var(--root-multiplier-hf, 1));
  display: block;
}
@media (max-width: 787px) {
  .l-header__logo-img img {
    width: calc(9rem / var(--root-multiplier-hf, 1));
  }
}

.l-header__logo-sub {
  color: #009e95;
  font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
  font-weight: 500;
  letter-spacing: -0.05em;
}
@media (max-width: 787px) {
  .l-header__logo-sub {
    font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
  }
}

.l-header__pc {
  display: flex;
  justify-content: center;
  flex-direction: column;
  margin-inline-start: auto;
}
@media (max-width: 787px) {
  .l-header__pc {
    display: none;
  }
}

.l-header__utility {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: clamp(1rem / var(--root-multiplier-hf, 1), 1.3333333333vw, 2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .l-header__utility {
    display: none;
  }
}

.l-header__utility-link {
  display: flex;
  align-items: center;
  gap: calc(1rem / var(--root-multiplier-hf, 1));
  line-height: 1;
}
.l-header__utility-link i {
  display: flex;
  align-items: center;
  height: auto;
}
.l-header__utility-link i.svg-icon__lang {
  width: calc(2rem / var(--root-multiplier-hf, 1));
}
.l-header__utility-link i.svg-icon__mail {
  width: calc(2rem / var(--root-multiplier-hf, 1));
}
.l-header__utility-link i.svg-icon__search {
  width: calc(1.9rem / var(--root-multiplier-hf, 1));
}
.l-header__utility-link i.svg-icon__arrow {
  width: calc(0.6rem / var(--root-multiplier-hf, 1));
}
.l-header__utility-link i svg {
  width: 100%;
  height: auto;
}
.l-header__utility-link span {
  font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
}
.l-header__utility-link:hover {
  color: #00867e;
  text-decoration: none !important;
}

.l-header__utility-search {
  position: relative;
  display: flex;
  align-items: center;
  margin-inline: calc(-1rem / var(--root-multiplier-hf, 1));
}
.l-header__utility-search:has(input[type=checkbox]:focus-visible) .l-header__utility-btn {
  outline: 2px solid #000;
}
.l-header__utility-search:has(input[type=checkbox]:checked) .l-header__utility-input {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}
.l-header__utility-search:has(input[type=checkbox]:checked) .l-header__utility-input input[type=text] {
  pointer-events: auto;
}
.l-header__utility-search:has(input[type=checkbox]:checked) .l-header__utility-btn {
  background: #00867e;
}
.l-header__utility-search:has(input[type=checkbox]:checked) .l-header__utility-btn svg path {
  fill: #fff;
}

.l-header__utility-input {
  position: absolute;
  inset-inline-end: calc(4rem / var(--root-multiplier-hf, 1));
  inset-block-start: 0;
  clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
  transition: 0.3s ease clip-path;
  z-index: var(--z-index-overlay3);
}
.l-header__utility-input input[type=text] {
  width: calc(54.3rem / var(--root-multiplier-hf, 1));
  height: calc(4rem / var(--root-multiplier-hf, 1));
  font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
  padding-inline: calc(1rem / var(--root-multiplier-hf, 1));
  background: #ccecea;
  border: none;
  pointer-events: none;
}

.l-header__utility-btn {
  display: grid;
  place-items: center;
  width: calc(4rem / var(--root-multiplier-hf, 1));
  height: calc(4rem / var(--root-multiplier-hf, 1));
  cursor: pointer;
  transition: 0.3s ease background;
}
.l-header__utility-btn input[type=checkbox] {
  position: absolute;
  appearance: none;
  opacity: 0;
  pointer-events: none;
}
.l-header__utility-btn i {
  display: flex;
  align-items: center;
  width: calc(1.9rem / var(--root-multiplier-hf, 1));
}
.l-header__utility-btn svg path {
  fill: #00867e;
  transition: 0.3s ease fill;
}

.l-header__nav-list {
  display: flex;
  gap: clamp(calc(1.8rem / var(--root-multiplier-hf, 1)), 2.4vw, calc(3.6rem / var(--root-multiplier-hf, 1)));
}

.l-header__nav-item {
  position: relative;
  margin-block-end: calc(-1rem / var(--root-multiplier-hf, 1));
  padding-block: calc(0.4rem / var(--root-multiplier-hf, 1)) calc(1.8rem / var(--root-multiplier-hf, 1));
}
.l-header__nav-item:hover .l-header__megamenu, .l-header__nav-item:focus-within .l-header__megamenu {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transition-delay: 0s;
}
.l-header__nav-item.has-mega .l-header__nav-link::after {
  content: "";
  display: block;
  width: calc(1.5rem / var(--root-multiplier-hf, 1));
  height: calc(0.8rem / var(--root-multiplier-hf, 1));
  margin-block-start: 0.125em;
  background: center/100% auto url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDE2IDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0wLjY1MjM0NCAwLjc4MDc2Mkw3LjY1MjM0IDYuNzgwNzZMMTUuMTUyMyAwLjc4MDc2MiIgc3Ryb2tlPSIjMDA5NDhCIiBzdHJva2Utd2lkdGg9IjIiLz4KPC9zdmc+Cg==") no-repeat;
}

.l-header__nav-link {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: calc(0.9rem / var(--root-multiplier-hf, 1));
  text-decoration: none;
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  font-weight: 500;
  white-space: nowrap;
  transition: 0.3s ease color;
}
.l-header__nav-link:hover {
  color: #00867e;
  text-decoration: none !important;
}
.l-header__nav-link:hover + .l-header__megamenu {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transition-delay: 0s;
}

.l-header__megamenu {
  position: fixed;
  inset-inline-start: 0;
  inset-block-start: var(--header-height);
  background: #fff;
  width: 100%;
  max-height: calc(100vh - var(--header-height));
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
  overflow-y: auto;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0s linear 0.3s;
  z-index: var(--z-index-overlay3);
}
.l-header__megamenu:hover, .l-header__megamenu:focus-within {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transition-delay: 0s;
}
.l-header__megamenu::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: -4px;
  width: 100%;
  height: 4px;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
}
@media (max-width: 787px) {
  .l-header__megamenu {
    display: none;
  }
}

.l-header__megamenu-inr {
  width: 100%;
  height: 100%;
  align-items: center;
  max-width: calc(144rem / var(--root-multiplier-hf, 1));
  margin-inline: auto;
  padding-inline: calc(5rem / var(--root-multiplier-hf, 1));
  padding-block: calc(4rem / var(--root-multiplier-hf, 1));
}
.l-header__megamenu.m-products .l-header__megamenu-inr,
.l-header__megamenu.m-solutions .l-header__megamenu-inr {
  padding-block-end: calc(2rem / var(--root-multiplier-hf, 1));
}

.l-header__megamenu-parent-tab {
  position: relative;
  display: grid;
  grid-template-columns: calc(27rem / var(--root-multiplier-hf, 1)) 1fr;
  gap: calc(5rem / var(--root-multiplier-hf, 1));
}

.l-header__megamenu-parent-tab-btns {
  display: flex;
  flex-direction: column;
}

.l-header__megamenu-parent-tab-btn {
  font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
  font-weight: 600;
  text-align: left;
  padding-inline-start: calc(2rem / var(--root-multiplier-hf, 1));
  padding-block: calc(1.2rem / var(--root-multiplier-hf, 1));
  transition: 0.3s ease;
  transition-property: color, background;
}
.l-header__megamenu-parent-tab-btn[aria-selected=true] {
  color: #00867e;
  background: #f2f6f7;
}
.l-header__megamenu-parent-tab-btn:hover {
  background: #f2f6f7;
}
.l-header__megamenu-parent-tab-btn span {
  display: block;
  width: fit-content;
  padding-inline-end: calc(1.4rem / var(--root-multiplier-hf, 1));
  background: right 50%/calc(0.6rem / var(--root-multiplier-hf, 1)) calc(1.4rem / var(--root-multiplier-hf, 1)) url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNiAxMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMC4zOTQ1MzEgMTAuMzA1N0w0LjM5NDUzIDUuNDc4MDhMMC4zOTQ1MzEgMC4zMDU2NjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzAwOTQ4QiIvPjwvc3ZnPg==") no-repeat;
}

.l-header__megamenu-parent-tab-content[aria-hidden=true] {
  display: none;
}

.l-header__megamenu-nav-top {
  border-block-end: 1px solid #EBEBEB;
  padding-block-end: calc(2rem / var(--root-multiplier-hf, 1));
}
.l-header__megamenu-nav-top a {
  display: block;
  width: fit-content;
  color: #333;
  font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  padding-inline-end: calc(1.4rem / var(--root-multiplier-hf, 1));
  background: right 50%/calc(0.6rem / var(--root-multiplier-hf, 1)) calc(1.4rem / var(--root-multiplier-hf, 1)) url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNiAxMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMC4zOTQ1MzEgMTAuMzA1N0w0LjM5NDUzIDUuNDc4MDhMMC4zOTQ1MzEgMC4zMDU2NjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzAwOTQ4QiIvPjwvc3ZnPg==") no-repeat;
}
.l-header__megamenu-nav-top + * {
  margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
}

.l-header__megamenu-nav-columns {
  display: flex;
  gap: calc(6rem / var(--root-multiplier-hf, 1));
}
.l-header__megamenu-nav-columns.m-equal {
  gap: 0;
}
.l-header__megamenu-nav-columns.m-equal .l-header__megamenu-nav-column {
  width: 33.3333333333%;
  padding-inline: calc(3rem / var(--root-multiplier-hf, 1));
}
.l-header__megamenu-nav-columns.m-equal .l-header__megamenu-nav-column:not(:last-child) {
  border-inline-end: 1px solid #EBEBEB;
}

.l-header__megamenu-nav-column.m-border:not(:last-child) {
  padding-inline-end: calc(3rem / var(--root-multiplier-hf, 1));
  border-inline-end: 1px solid #EBEBEB;
}
.l-header__megamenu-nav-column.m-border:not(:last-child) + .l-header__megamenu-nav-column {
  margin-inline-start: calc(-6rem / var(--root-multiplier-hf, 1));
  padding-inline-start: calc(3rem / var(--root-multiplier-hf, 1));
}

.l-header__megamenu-nav-column__ttl {
  color: #fff;
  font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
  font-weight: 500;
  width: fit-content;
  padding-inline: calc(1.2rem / var(--root-multiplier-hf, 1));
  padding-block: calc(0.4rem / var(--root-multiplier-hf, 1));
  background: #00867e;
}
.l-header__megamenu-nav-column__ttl + * {
  margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
}
.l-header__megamenu-nav-column__ttl.m-contact + * {
  margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
}

.l-header__megamenu-nav-list {
  display: flex;
  flex-direction: column;
  gap: calc(1.2rem / var(--root-multiplier-hf, 1));
}

.l-header__megamenu-nav-item {
  font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
}
.l-header__megamenu-nav-item a {
  display: block;
  width: fit-content;
  color: #333;
  padding-inline-end: calc(1.4rem / var(--root-multiplier-hf, 1));
  background: right 50%/calc(0.6rem / var(--root-multiplier-hf, 1)) calc(1.4rem / var(--root-multiplier-hf, 1)) url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNiAxMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMC4zOTQ1MzEgMTAuMzA1N0w0LjM5NDUzIDUuNDc4MDhMMC4zOTQ1MzEgMC4zMDU2NjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzAwOTQ4QiIvPjwvc3ZnPg==") no-repeat;
}

.l-header__megamenu-bnrs {
  display: flex;
  gap: calc(3rem / var(--root-multiplier-hf, 1));
  flex-wrap: wrap;
  margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
}

.l-header__megamenu-bnr {
  width: calc(26rem / var(--root-multiplier-hf, 1));
  height: calc(9rem / var(--root-multiplier-hf, 1));
  background: #CECECE;
}

.l-header__megamenu-footer {
  display: flex;
  gap: calc(2rem / var(--root-multiplier-hf, 1)) calc(6rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  padding-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  border-block-start: 1px solid #EBEBEB;
}
.l-header__megamenu.m-products .l-header__megamenu-footer,
.l-header__megamenu.m-solutions .l-header__megamenu-footer {
  padding-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
}

.l-header__megamenu-footer-item {
  font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
  font-weight: 500;
}
.l-header__megamenu-footer-item span {
  display: block;
  width: fit-content;
  padding-inline-end: calc(1.4rem / var(--root-multiplier-hf, 1));
  background: right 50%/calc(0.6rem / var(--root-multiplier-hf, 1)) calc(1.4rem / var(--root-multiplier-hf, 1)) url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNiAxMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMC4zOTQ1MzEgMTAuMzA1N0w0LjM5NDUzIDUuNDc4MDhMMC4zOTQ1MzEgMC4zMDU2NjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzAwOTQ4QiIvPjwvc3ZnPg==") no-repeat;
}

.l-header__menu-button {
  position: relative;
  margin-inline-end: calc(-1.8rem / var(--root-multiplier-hf, 1));
  display: none;
  width: calc(5.5rem / var(--root-multiplier-hf, 1));
  height: calc(5.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .l-header__menu-button {
    display: block;
  }
}
.l-header__menu-button:hover .l-header__menu-button-line:nth-child(1) {
  translate: 0 calc(0.2rem / var(--root-multiplier-hf, 1));
}
.l-header__menu-button:hover .l-header__menu-button-line:nth-child(3) {
  translate: 0 calc(-0.2rem / var(--root-multiplier-hf, 1));
}
.l-header__menu-button[aria-expanded=true] .l-header__menu-button-line:nth-child(1) {
  rotate: 45deg;
  translate: 0 calc(0.6rem / var(--root-multiplier-hf, 1));
}
.l-header__menu-button[aria-expanded=true] .l-header__menu-button-line:nth-child(2) {
  scale: 1 0;
  opacity: 0;
}
.l-header__menu-button[aria-expanded=true] .l-header__menu-button-line:nth-child(3) {
  rotate: -45deg;
  translate: 0 calc(-0.6rem / var(--root-multiplier-hf, 1));
}

.l-header__menu-button-line {
  position: absolute;
  inset-inline-start: calc(1.8rem / var(--root-multiplier-hf, 1));
  width: calc(1.9rem / var(--root-multiplier-hf, 1));
  height: calc(0.2rem / var(--root-multiplier-hf, 1));
  background: #5B4C48;
  pointer-events: none;
  transform-origin: center;
  transition: 0.3s ease;
  transition-property: inset width rotate scale;
}
.l-header__menu-button-line:nth-child(1) {
  inset-block-start: calc(2.1rem / var(--root-multiplier-hf, 1));
}
.l-header__menu-button-line:nth-child(2) {
  inset-block-start: calc(2.7rem / var(--root-multiplier-hf, 1));
  transform-origin: center;
}
.l-header__menu-button-line:nth-child(3) {
  inset-block-start: calc(3.3rem / var(--root-multiplier-hf, 1));
}

.l-header-sp {
  position: fixed;
  inset-inline-start: 0;
  inset-block-start: var(--header-height);
  display: none;
  width: 100%;
  height: calc(100% - var(--header-height));
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transform-origin: center top;
  transition: 0s 0.5s;
  transition-property: visibility, opacity, pointer-events;
  z-index: var(--z-index-header);
}
@media (max-width: 787px) {
  .l-header-sp {
    display: block;
  }
}
.l-header-sp[aria-hidden=false] {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transition-delay: 0s;
}
.l-header-sp[aria-hidden=false] .l-header-sp__inr {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  transition-timing-function: ease;
}

.l-header-sp__inr {
  position: relative;
  width: 100%;
  height: 100%;
  background: #fff;
  margin-inline-start: auto;
  overflow-y: auto;
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
  transition: 0.5s ease-in-out clip-path;
  z-index: 2;
}
.l-header-sp__inr::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: -4px;
  width: 100%;
  height: 4px;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1);
}

.l-header-sp__nav {
  display: block flex;
  flex-direction: column;
  align-items: center;
  min-height: 100%;
  overflow-x: hidden;
  padding-block-end: calc(5.6rem / var(--root-multiplier-hf, 1));
}

.l-header-sp__nav-main {
  width: 100%;
}

.l-header-sp__nav-main-item {
  position: relative;
  border-block-end: 1px solid #E4E4E4;
}

.l-header-sp__nav-main-link {
  display: flex;
  align-items: center;
  font-size: calc(1.7rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  min-height: calc(5.8rem / var(--root-multiplier-hf, 1));
  padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
}
a.l-header-sp__nav-main-link {
  color: #333;
}

.l-header-sp__nav-main-toggle {
  position: absolute;
  inset-inline-end: 0;
  inset-block-start: 0;
  display: block;
  width: 100%;
  height: calc(5.8rem / var(--root-multiplier-hf, 1));
}
.l-header-sp__nav-main-toggle::before, .l-header-sp__nav-main-toggle::after {
  content: "";
  display: block;
  position: absolute;
  inset-inline-end: calc(1rem / var(--root-multiplier-hf, 1));
  inset-block-start: 50%;
  translate: -50% -50%;
  background: #00867e;
  width: calc(1.8rem / var(--root-multiplier-hf, 1));
  height: calc(0.2rem / var(--root-multiplier-hf, 1));
  border-radius: calc(0.2rem / var(--root-multiplier-hf, 1));
  transition: 0.3s ease rotate;
}
.l-header-sp__nav-main-toggle::before {
  rotate: 90deg;
}
.l-header-sp__nav-main-toggle[aria-expanded=true]::before {
  rotate: 0deg;
}

.l-header-sp__panel {
  display: block grid;
  grid-template-rows: 0fr;
  transition: 0.4s ease grid-template-rows;
}
.l-header-sp__panel[aria-hidden=false] {
  grid-template-rows: 1fr;
}

.l-header-sp__panel-inr {
  overflow: hidden;
  padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
}
.l-header-sp__panel-inr > *:first-child {
  margin-block-start: calc(1.6rem / var(--root-multiplier-hf, 1));
}
.l-header-sp__panel-inr > *:last-child {
  margin-block-end: calc(3.2rem / var(--root-multiplier-hf, 1));
}

.l-header-sp__parent-nav-list {
  margin-inline: calc(-2rem / var(--root-multiplier-hf, 1));
  margin-block: 0 !important;
}

.l-header-sp__parent-nav-item {
  position: relative;
}

.l-header-sp__parent-nav-item__toggle {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: calc(4.5rem / var(--root-multiplier-hf, 1));
  font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
}
.l-header-sp__parent-nav-item__toggle::before, .l-header-sp__parent-nav-item__toggle::after {
  content: "";
  display: block;
  position: absolute;
  inset-inline-end: calc(1rem / var(--root-multiplier-hf, 1));
  inset-block-start: 50%;
  translate: -50% -50%;
  background: #00867e;
  width: calc(1.8rem / var(--root-multiplier-hf, 1));
  height: calc(0.2rem / var(--root-multiplier-hf, 1));
  border-radius: calc(0.2rem / var(--root-multiplier-hf, 1));
  transition: 0.3s ease rotate;
}
.l-header-sp__parent-nav-item__toggle::before {
  rotate: 90deg;
}
.l-header-sp__parent-nav-item__toggle[aria-expanded=true] {
  color: #00867e;
  background: #f2f6f7;
}
.l-header-sp__parent-nav-item__toggle[aria-expanded=true]::before {
  rotate: 0deg;
}

.l-header-sp__parent-nav-item__panel {
  display: block grid;
  grid-template-rows: 0fr;
  transition: 0.4s ease grid-template-rows;
}
.l-header-sp__parent-nav-item__panel[aria-hidden=false] {
  grid-template-rows: 1fr;
}

.l-header-sp__parent-nav-item__panel-inr {
  overflow: hidden;
  padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
}
.l-header-sp__parent-nav-item__panel-inr > *:first-child {
  margin-block-start: calc(1.6rem / var(--root-multiplier-hf, 1));
}
.l-header-sp__parent-nav-item__panel-inr > *:last-child {
  margin-block-end: calc(3.2rem / var(--root-multiplier-hf, 1));
}

.l-header-sp__nav-top {
  width: 100%;
  border-block-end: 1px solid #EBEBEB;
  padding-block-end: calc(1.6rem / var(--root-multiplier-hf, 1));
}
.l-header-sp__nav-top a {
  display: block;
  width: fit-content;
  color: #333;
  font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  font-weight: 500;
  padding-inline-end: calc(1.2rem / var(--root-multiplier-hf, 1));
  background: right 50%/calc(0.5rem / var(--root-multiplier-hf, 1)) calc(1.4rem / var(--root-multiplier-hf, 1)) url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNiAxMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMC4zOTQ1MzEgMTAuMzA1N0w0LjM5NDUzIDUuNDc4MDhMMC4zOTQ1MzEgMC4zMDU2NjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzAwOTQ4QiIvPjwvc3ZnPg==") no-repeat;
}
.l-header-sp__nav-top + * {
  margin-block-start: calc(1.6rem / var(--root-multiplier-hf, 1));
}

.l-header-sp__nav-column {
  margin-block-start: calc(1.6rem / var(--root-multiplier-hf, 1));
}
.l-header-sp__nav-column:not(:last-child) {
  padding-block-end: calc(1.6rem / var(--root-multiplier-hf, 1));
  border-block-end: 1px solid #EBEBEB;
}

.l-header-sp__nav-column-ttl {
  color: #fff;
  font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  font-weight: 500;
  width: fit-content;
  padding-inline: calc(1rem / var(--root-multiplier-hf, 1));
  padding-block: calc(0.3rem / var(--root-multiplier-hf, 1));
  background: #00867e;
}
.l-header-sp__nav-column-ttl + * {
  margin-block-start: calc(1.6rem / var(--root-multiplier-hf, 1));
}

.l-header-sp__nav-list {
  display: flex;
  flex-direction: column;
  gap: calc(1.2rem / var(--root-multiplier-hf, 1));
}

.l-header-sp__nav-item a {
  display: block;
  width: fit-content;
  color: #333;
  font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  padding-inline-end: calc(1.2rem / var(--root-multiplier-hf, 1));
  background: right 50%/calc(0.5rem / var(--root-multiplier-hf, 1)) calc(1.4rem / var(--root-multiplier-hf, 1)) url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNiAxMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMC4zOTQ1MzEgMTAuMzA1N0w0LjM5NDUzIDUuNDc4MDhMMC4zOTQ1MzEgMC4zMDU2NjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzAwOTQ4QiIvPjwvc3ZnPg==") no-repeat;
}

.l-header-sp__bnrs {
  display: flex;
  flex-direction: column;
  gap: calc(1.6rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(3.2rem / var(--root-multiplier-hf, 1));
}

.l-header-sp__bnr {
  width: 100%;
  height: calc(10rem / var(--root-multiplier-hf, 1));
  background: #CECECE;
}

.l-header-sp__footer {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: calc(1.2rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(2.4rem / var(--root-multiplier-hf, 1));
  padding-block-start: calc(2.4rem / var(--root-multiplier-hf, 1));
  border-block-start: 1px solid #EBEBEB;
}

.l-header-sp__footer a {
  color: #333;
}

.l-header-sp__footer-item span {
  display: block;
  width: fit-content;
  font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  font-weight: 500;
  padding-inline-end: calc(1.2rem / var(--root-multiplier-hf, 1));
  background: right 50%/calc(0.5rem / var(--root-multiplier-hf, 1)) calc(1.4rem / var(--root-multiplier-hf, 1)) url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNiAxMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMC4zOTQ1MzEgMTAuMzA1N0w0LjM5NDUzIDUuNDc4MDhMMC4zOTQ1MzEgMC4zMDU2NjQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzAwOTQ4QiIvPjwvc3ZnPg==") no-repeat;
}

.l-header-sp__utility {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: calc(2.2rem / var(--root-multiplier-hf, 1));
  max-width: calc(40rem / var(--root-multiplier-hf, 1));
  margin-inline: auto;
  margin-block-start: calc(2.4rem / var(--root-multiplier-hf, 1));
  padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
}

.l-header-sp__utility-item.m-search {
  width: 100%;
}

.l-header-sp__utility-link {
  display: flex;
  align-items: center;
  gap: calc(0.8rem / var(--root-multiplier-hf, 1));
  line-height: 1;
}

a.l-header-sp__utility-link {
  color: #333;
}

.l-header-sp__utility-link i {
  display: flex;
  align-items: center;
  height: auto;
}
.l-header-sp__utility-link i.svg-icon__lang {
  width: calc(1.8rem / var(--root-multiplier-hf, 1));
}
.l-header-sp__utility-link i.svg-icon__mail {
  width: calc(1.8rem / var(--root-multiplier-hf, 1));
}
.l-header-sp__utility-link i.svg-icon__arrow {
  width: calc(0.5rem / var(--root-multiplier-hf, 1));
}
.l-header-sp__utility-link i svg {
  display: grid;
  place-items: center;
  width: 100%;
  height: auto;
}
.l-header-sp__utility-link span {
  font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
}
.l-header-sp__utility-link:hover {
  color: #00867e;
  text-decoration: none !important;
}

.l-header-sp__input {
  position: relative;
  background-color: #f0f5f6;
}

.l-header-sp__input input {
  display: block;
  width: 100%;
  height: 64px;
  padding: 0 64px 0 16px;
  border: 0;
  outline: 0;
  background-color: transparent;
  box-sizing: border-box;
  font: inherit;
}

.l-header-sp__input input::placeholder {
  color: #cfd6d8;
  opacity: 1;
}

.l-header-sp__search-submit {
  position: absolute;
  inset-block: 0;
  inset-inline-end: 0;
  display: grid;
  place-items: center;
  width: 64px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #00978f;
  cursor: pointer;
}

.l-header-sp__search-submit svg {
  display: block;
  width: 34px;
  height: 34px;
  overflow: visible;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
}

.l-header-sp__search-submit:focus-visible {
  outline: 2px solid #00978f;
  outline-offset: -4px;
}

.l-header-sp__utility-input input[type=text] {
  display: block;
  width: 100%;
  height: calc(5.2rem / var(--root-multiplier-hf, 1));
  font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
  padding-inline: calc(1.5rem / var(--root-multiplier-hf, 1));
  background: #F2F6F7;
  border: none;
  pointer-events: none;
}

.l-footer {
  position: relative;
  color: #fff;
  background: #616265;
}
.l-footer a:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 3px;
}

.l-footer__inr {
  display: grid;
  grid-auto-columns: 1fr;
  grid-auto-rows: 1fr;
  grid-template-columns: auto 1fr;
  grid-template-rows: calc(4.5rem / var(--root-multiplier-hf, 1)) auto auto;
  grid-template-areas: "logo nav" "utility nav" "copyright copyright";
  width: 100%;
  max-width: calc(127rem / var(--root-multiplier-hf, 1));
  margin-inline: auto;
  padding-inline: calc(5rem / var(--root-multiplier-hf, 1));
  padding-block: calc(3.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .l-footer__inr {
    display: flex;
    flex-direction: column;
    padding-inline: calc(2.3rem / var(--root-multiplier-hf, 1));
    padding-block: calc(3.75rem / var(--root-multiplier-hf, 1)) calc(2.5rem / var(--root-multiplier-hf, 1));
  }
}

.l-footer__logo {
  grid-area: logo;
}

.l-footer__logo-img {
  display: block;
  width: calc(12rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .l-footer__logo-img {
    margin-inline: auto;
  }
}

.l-footer__utility {
  grid-area: utility;
  display: flex;
  flex-direction: column;
  gap: calc(1rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(3.8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .l-footer__utility {
    gap: calc(0.6rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(2.8rem / var(--root-multiplier-hf, 1));
  }
}

.l-footer__utility-link {
  display: flex;
  align-items: center;
  gap: calc(0.6rem / var(--root-multiplier-hf, 1));
  color: #fff !important;
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .l-footer__utility-link {
    gap: calc(0.4rem / var(--root-multiplier-hf, 1));
    font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.l-footer__utility-link i {
  display: grid;
  place-items: center;
  width: 1em;
}

.l-footer__nav {
  grid-area: nav;
  display: flex;
  justify-content: flex-end;
  gap: clamp(calc(3rem / var(--root-multiplier-hf, 1)), 4.1666666667vw, calc(6rem / var(--root-multiplier-hf, 1)));
}
@media (max-width: 787px) {
  .l-footer__nav {
    flex-direction: column;
    justify-content: flex-start;
    gap: calc(1.6rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(2.8rem / var(--root-multiplier-hf, 1));
  }
}

.l-footer__nav-list {
  display: flex;
  flex-direction: column;
  gap: calc(1.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .l-footer__nav-list {
    flex-direction: row;
    flex-wrap: wrap;
    gap: calc(1.2rem / var(--root-multiplier-hf, 1)) calc(1.8rem / var(--root-multiplier-hf, 1));
  }
  .l-footer__nav-list:last-child {
    margin-block-start: calc(1.8rem / var(--root-multiplier-hf, 1));
  }
}

.l-footer__nav-item a {
  display: flex;
  align-items: center;
  gap: calc(0.6rem / var(--root-multiplier-hf, 1));
  color: #fff;
  font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .l-footer__nav-item a {
    gap: calc(0.4rem / var(--root-multiplier-hf, 1));
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}
.l-footer__nav-item a i {
  display: grid;
  place-items: center;
  width: 1em;
}

.l-footer__copyright {
  grid-area: copyright;
  color: #AFAFB1;
  font-size: calc(1rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .l-footer__copyright {
    font-size: calc(0.8rem / var(--root-multiplier-hf, 1));
    text-align: center;
    margin-block-start: calc(3.75rem / var(--root-multiplier-hf, 1));
  }
}

.c-circle-arrow {
  display: flex block;
  align-items: center;
  justify-content: center;
  width: calc(3.7rem / var(--root-multiplier-hf, 1));
  height: calc(3.7rem / var(--root-multiplier-hf, 1));
  color: #fff;
  background: #00867e;
  border: 1px solid #00867e;
  border-radius: 50%;
  cursor: pointer;
  transition: opacity 0.3s ease, scale 0.3s ease;
}
@media (max-width: 787px) {
  .c-circle-arrow {
    width: calc(3rem / var(--root-multiplier-hf, 1));
    height: calc(3rem / var(--root-multiplier-hf, 1));
  }
}
.c-circle-arrow::before {
  content: "";
  width: calc(0.8rem / var(--root-multiplier-hf, 1));
  height: calc(0.8rem / var(--root-multiplier-hf, 1));
  margin-inline-start: -2px;
  border-inline-end: 2px solid currentColor;
  border-block-start: 2px solid currentColor;
  rotate: 45deg;
}
.c-circle-arrow:hover {
  opacity: 0.88;
}
.c-circle-arrow:active {
  scale: 0.96;
}
.c-circle-arrow.m-prev::before {
  margin-inline-start: 2px;
  rotate: -135deg;
}

.c-arrow-icon {
  width: calc(4rem / var(--root-multiplier-hf, 1));
  height: calc(4rem / var(--root-multiplier-hf, 1));
  border-radius: 50%;
  background: #00948b;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 787px) {
  .c-arrow-icon {
    width: calc(2.5rem / var(--root-multiplier-hf, 1));
    height: calc(2.5rem / var(--root-multiplier-hf, 1));
  }
}
.c-arrow-icon img {
  width: calc(1.2rem / var(--root-multiplier-hf, 1));
  display: block;
  margin: 0 auto;
}
@media (max-width: 787px) {
  .c-arrow-icon img {
    width: calc(0.8rem / var(--root-multiplier-hf, 1));
  }
}

.c-label {
  width: max-content;
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #fff;
  border-radius: calc(0.5rem / var(--root-multiplier-hf, 1));
  padding: calc(0.1rem / var(--root-multiplier-hf, 1)) calc(1.2rem / var(--root-multiplier-hf, 1));
  background: #00948b;
}
@media (max-width: 787px) {
  .c-label {
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
    padding: calc(0.3rem / var(--root-multiplier-hf, 1)) calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}
.c-label--small {
  background: #00948b;
  color: #fff;
  padding: calc(0.4rem / var(--root-multiplier-hf, 1)) calc(1.5rem / var(--root-multiplier-hf, 1));
  border-radius: calc(0.5rem / var(--root-multiplier-hf, 1));
  font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
  font-weight: 600;
}
@media (max-width: 787px) {
  .c-label--small {
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
    padding: calc(0.3rem / var(--root-multiplier-hf, 1)) calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}

.c-icon-btn {
  position: relative;
  display: flex block;
  justify-content: center;
  align-items: center;
  gap: calc(1.2rem / var(--root-multiplier-hf, 1));
  color: #fff;
  font-weight: 700;
  text-decoration: none !important;
  width: calc(25.2rem / var(--root-multiplier-hf, 1));
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  padding-inline: calc(4.8rem / var(--root-multiplier-hf, 1));
  padding-block: calc(1.2rem / var(--root-multiplier-hf, 1));
  background: #fff;
  border: 1px solid transparent;
  border-radius: 9999px;
  overflow: hidden;
  transition: border-color 0.3s ease, color 0.3s ease;
}
@media (max-width: 787px) {
  .c-icon-btn {
    font-size: 16px;
    width: calc(22rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(3rem / var(--root-multiplier-hf, 1));
    gap: calc(0.8rem / var(--root-multiplier-hf, 1));
  }
  .u-container .c-icon-btn {
    width: calc(30rem / var(--root-multiplier-hf, 1));
  }
  .u-container .c-category-list__item-mask-ttl {
    font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
  .u-container .c-category-list__item-mask-icon img {
    width: calc(7rem / var(--root-multiplier-hf, 1));
  }
  .u-container .c-category-links__list-item a,
  .u-container .c-category-links__list-item span {
    height: calc(8rem / var(--root-multiplier-hf, 1));
  }
  .u-container .c-service-card {
    padding-block: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
  .l-main #a-contact .c-cta__item-ttl {
    font-size: 1.6rem;
  }
}
.c-icon-btn {
  /*&:not(.c-cta__item-btn):not(.c-bnr-store__btn) {
    .c-icon-btn__icon {
      position: absolute;
      inset-inline-start: calc(1.4rem / var(--root-multiplier-hf, 1));
      inset-block-start: 50%;
      translate: 0 -50%;
      @media (max-width: 787px) {
        inset-inline-start: calc(1rem / var(--root-multiplier-hf, 1));
      }
    }
    span {
      width: 100%;
    }
  }*/
}
.c-icon-btn::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(125deg, #00645e, #02ABA0);
  border-radius: 9999px;
  transition: opacity 0.3s ease;
  z-index: 1;
}
.c-icon-btn.m-bg-white, .p-service-panel .c-icon-btn.p-service__btn, .c-icon-btn.p-support__cta {
  color: #00645e;
  border-color: #00645e;
}
.c-icon-btn.m-bg-white::before, .p-service-panel .c-icon-btn.p-service__btn::before, .c-icon-btn.p-support__cta::before {
  opacity: 0;
}
.c-icon-btn.m-bg-white:hover, .p-service-panel .c-icon-btn.p-service__btn:hover, .c-icon-btn.p-support__cta:hover {
  color: #fff;
}
.c-icon-btn.m-bg-white:hover::before, .p-service-panel .c-icon-btn.p-service__btn:hover::before, .c-icon-btn.p-support__cta:hover::before {
  opacity: 1;
}
.c-icon-btn.m-bg-white .c-icon-btn__icon, .p-service-panel .c-icon-btn.p-service__btn .c-icon-btn__icon, .c-icon-btn.p-support__cta .c-icon-btn__icon {
  background-color: #00645e;
}
.c-icon-btn.m-bg-white .c-icon-btn__icon::before, .p-service-panel .c-icon-btn.p-service__btn .c-icon-btn__icon::before, .c-icon-btn.p-support__cta .c-icon-btn__icon::before {
  border-color: #fff;
}
.c-icon-btn.m-bg-white .c-icon-btn__icon.m-new-window, .p-service-panel .c-icon-btn.p-service__btn .c-icon-btn__icon.m-new-window, .c-icon-btn.p-support__cta .c-icon-btn__icon.m-new-window {
  background-image: url("../image/icon-new-window_white.svg?rev=743b3125774a");
}
.c-icon-btn.m-bg-white:hover .c-icon-btn__icon, .p-service-panel .c-icon-btn.p-service__btn:hover .c-icon-btn__icon, .c-icon-btn.p-support__cta:hover .c-icon-btn__icon {
  background-color: #fff;
}
.c-icon-btn.m-bg-white:hover .c-icon-btn__icon::before, .p-service-panel .c-icon-btn.p-service__btn:hover .c-icon-btn__icon::before, .c-icon-btn.p-support__cta:hover .c-icon-btn__icon::before {
  border-color: #00645e;
}
.c-icon-btn.m-bg-white:hover .c-icon-btn__icon.m-new-window, .p-service-panel .c-icon-btn.p-service__btn:hover .c-icon-btn__icon.m-new-window, .c-icon-btn.p-support__cta:hover .c-icon-btn__icon.m-new-window {
  background-image: url("../image/icon-new-window.svg?rev=743b3125774a");
}
.c-icon-btn.m-wide {
  width: calc(32.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-icon-btn.m-wide {
    width: calc(28rem / var(--root-multiplier-hf, 1));
  }
}
.c-icon-btn:hover {
  color: #00645e;
  border-color: #00645e;
}
.c-icon-btn:hover::before {
  opacity: 0;
}
.c-icon-btn:hover .c-icon-btn__icon {
  background-color: #00645e;
}
.c-icon-btn:hover .c-icon-btn__icon::before {
  border-color: #fff;
}
.c-icon-btn:hover .c-icon-btn__icon.m-new-window {
  background-image: url("../image/icon-new-window_white.svg?rev=743b3125774a");
}
.c-icon-btn .c-icon-btn__icon {
  position: absolute;
  inset-inline-start: calc(1.4rem / var(--root-multiplier-hf, 1));
  inset-block-start: 50%;
  translate: 0 -50%;
  display: flex block;
  width: calc(3.4rem / var(--root-multiplier-hf, 1));
  height: calc(3.4rem / var(--root-multiplier-hf, 1));
  background-color: #fff;
  border-radius: 50%;
  z-index: 2;
  transition: background 0.3s ease;
}
@media (max-width: 787px) {
  .c-icon-btn .c-icon-btn__icon {
    inset-inline-start: calc(1rem / var(--root-multiplier-hf, 1));
    width: calc(2rem / var(--root-multiplier-hf, 1));
    height: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.c-icon-btn .c-icon-btn__icon.m-new-window {
  background-image: url("../image/icon-new-window.svg?rev=743b3125774a");
  background-position: center;
  background-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  background-repeat: no-repeat;
}
.c-icon-btn .c-icon-btn__icon.m-new-window::before {
  display: none;
}
.c-icon-btn .c-icon-btn__icon::before {
  content: "";
  position: absolute;
  inset-inline-start: calc(50% - calc(0.1rem / var(--root-multiplier-hf, 1)));
  inset-block-start: 50%;
  display: flow-root block;
  width: calc(0.8rem / var(--root-multiplier-hf, 1));
  height: calc(0.8rem / var(--root-multiplier-hf, 1));
  border-block-start: 2px solid #00645e;
  border-inline-end: 2px solid #00645e;
  translate: -50% -50%;
  rotate: 45deg;
  transition: border-color 0.3s ease;
}
.c-icon-btn span {
  position: relative;
  width: 100%;
  text-align: center;
  z-index: 2;
}

.c-link-btn {
  position: relative;
  display: flex block;
  align-items: center;
  justify-content: center;
  width: calc(40rem / var(--root-multiplier-hf, 1));
  max-width: 100%;
  min-width: 0;
  min-height: calc(8rem / var(--root-multiplier-hf, 1));
  color: #1E3F90;
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  text-align: center;
  margin-inline: auto;
  padding-inline: calc(2.5rem / var(--root-multiplier-hf, 1)) calc(5rem / var(--root-multiplier-hf, 1));
  padding-block: calc(1rem / var(--root-multiplier-hf, 1));
  background: #fff;
  border: 1px solid #1E3F90;
  transition: background 0.2s ease-in-out;
}
@media (max-width: 787px) {
  .c-link-btn {
    width: 100%;
    min-width: 100%;
    min-height: calc(6rem / var(--root-multiplier-hf, 1));
    font-size: 16px;
    padding-inline: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.c-link-btn::before {
  content: "";
  position: absolute;
  inset-inline-end: calc(2.2rem / var(--root-multiplier-hf, 1));
  inset-block-start: 50%;
  display: flow-root block;
  width: calc(1rem / var(--root-multiplier-hf, 1));
  height: calc(1rem / var(--root-multiplier-hf, 1));
  border-block-start: 2px solid currentColor;
  border-inline-end: 2px solid currentColor;
  translate: -50% -50%;
  rotate: 45deg;
  transition: border-color 0.3s ease;
}
@media (max-width: 787px) {
  .c-link-btn::before {
    width: calc(0.8rem / var(--root-multiplier-hf, 1));
    height: calc(0.8rem / var(--root-multiplier-hf, 1));
    inset-inline-end: calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}
.c-link-btn span {
  margin-inline: auto;
}
@media (hover: hover) {
  .c-link-btn:hover {
    color: #fff;
    font-weight: 700;
    text-decoration: none !important;
    background: #009e96;
    border-color: #009e96;
  }
  .c-link-btn:hover::before {
    border-color: #fff;
  }
}
@media (max-width: 787px) {
  .c-link-btn:active {
    color: #fff;
    background: #009e96;
    border-color: #009e96;
  }
  .c-link-btn:active::before {
    border-color: #fff;
  }
}

.c-link-btn__list {
  display: block flex;
  flex-wrap: wrap;
  gap: calc(3rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-link-btn__list {
    gap: calc(1.25rem / var(--root-multiplier-hf, 1));
  }
}
.c-link-btn__list.m-center {
  justify-content: center;
}
.c-link-btn__list .c-link-btn {
  min-width: calc((100% - calc(6rem / var(--root-multiplier-hf, 1))) / 2);
  margin-inline: unset;
}
@media (min-width: 788px) {
  .c-link-btn__list .c-link-btn {
    min-height: calc(10rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 1020px) {
  .c-link-btn__list .c-link-btn {
    min-width: 100%;
  }
}
@media (max-width: 787px) {
  .c-link-btn__list .c-link-btn {
    min-width: 100%;
  }
}
.c-link-btn__list.m-residentialmap-cta .c-link-btn {
  width: calc((100% - calc(3rem / var(--root-multiplier-hf, 1))) / 2);
  min-width: 0;
  max-width: calc(48rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .c-link-btn__list.m-residentialmap-cta .c-link-btn {
    width: 100%;
    min-width: 100%;
    max-width: none;
  }
}
@media (max-width: 787px) {
  .c-link-btn__list.m-residentialmap-cta .c-link-btn {
    padding-inline: calc(3rem / var(--root-multiplier-hf, 1));
  }
}

.c-more-btn {
  position: relative;
  display: flow-root block;
  color: #009e95;
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
  min-width: calc(30rem / var(--root-multiplier-hf, 1));
  background: #fff;
  padding: calc(1.45rem / var(--root-multiplier-hf, 1)) calc(3.2rem / var(--root-multiplier-hf, 1));
  border: 2px solid #009e95;
  border-radius: 9999px;
  transition: 0.3s ease;
}
@media (max-width: 787px) {
  .c-more-btn {
    font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
    min-width: calc(25rem / var(--root-multiplier-hf, 1));
    padding: calc(1rem / var(--root-multiplier-hf, 1)) calc(3.2rem / var(--root-multiplier-hf, 1));
    border-width: 1px;
  }
}
.c-more-btn:hover {
  color: #fff;
  background: #009e95;
}
.c-more-btn:hover .c-more-btn__arrow {
  border-color: #fff;
}
.c-more-btn:hover .c-more-btn__arrow::after {
  border-color: #fff;
}
.c-more-btn[aria-expanded=true] .c-more-btn__arrow::after {
  inset-block-start: 55%;
  rotate: -45deg;
}

.c-more-btn__arrow {
  position: absolute;
  inset-inline-end: calc(1.5rem / var(--root-multiplier-hf, 1));
  inset-block-start: 50%;
  display: flow-root block;
  width: calc(3.4rem / var(--root-multiplier-hf, 1));
  height: calc(3.4rem / var(--root-multiplier-hf, 1));
  border: 2px solid #009e95;
  border-radius: 50%;
  translate: 0 -50%;
  transition: all 0.3s ease;
}
@media (max-width: 787px) {
  .c-more-btn__arrow {
    inset-inline-end: calc(1rem / var(--root-multiplier-hf, 1));
    width: calc(2.4rem / var(--root-multiplier-hf, 1));
    height: calc(2.4rem / var(--root-multiplier-hf, 1));
    border-width: 1px;
  }
}
.c-more-btn__arrow::after {
  content: "";
  display: flow-root block;
  position: absolute;
  inset-inline-start: 50%;
  inset-block-start: 45%;
  width: calc(1.2rem / var(--root-multiplier-hf, 1));
  height: calc(1.2rem / var(--root-multiplier-hf, 1));
  border-block-start: 2px solid #009e95;
  border-inline-end: 2px solid #009e95;
  translate: -50% -50%;
  rotate: 135deg;
  transition: 0.3s ease;
}
@media (max-width: 787px) {
  .c-more-btn__arrow::after {
    width: calc(0.8rem / var(--root-multiplier-hf, 1));
    height: calc(0.8rem / var(--root-multiplier-hf, 1));
  }
}

.c-defin {
  display: flex block;
  align-items: center;
  flex-wrap: wrap;
  gap: calc(0.8rem / var(--root-multiplier-hf, 1));
}

.c-defin__dd {
  color: #00867e;
  font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
  color: #111;
}
@media (max-width: 787px) {
  .c-defin__dd {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}

.u-container {
  width: 100%;
  max-width: calc(136rem / var(--root-multiplier-hf, 1));
  margin-inline: auto;
  padding-inline: calc(5rem / var(--root-multiplier-hf, 1));
}

.other-cate-mt {
  margin-block-start: 6rem;
}

.item-frex {
  display: flex;
}

@media (max-width: 787px) {
  .u-container {
    padding-inline: calc(1.9rem / var(--root-multiplier-hf, 1));
  }
}

.c-sec {
  margin-block-start: calc(7rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-sec {
    margin-block-start: calc(3.5rem / var(--root-multiplier-hf, 1));
  }
}
.c-sec + .c-sec {
  margin-block-start: calc(10rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-sec + .c-sec {
    margin-block-start: calc(5rem / var(--root-multiplier-hf, 1));
  }
}
.c-sec:last-child {
  margin-block-end: calc(15rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-sec:last-child {
    margin-block-end: calc(7.5rem / var(--root-multiplier-hf, 1));
  }
}
.c-sec.m-bg-green {
  background: #E9F4F3;
  padding-block: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-sec.m-bg-green {
    padding-block: calc(3rem / var(--root-multiplier-hf, 1));
  }
}
.c-sec.m-bg-green:last-child {
  margin-block-end: 0;
  padding-block: calc(10rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-sec.m-bg-green:last-child {
    margin-block-end: 0;
    padding-block: calc(5rem / var(--root-multiplier-hf, 1));
  }
}

.c-subsec {
  margin-block-start: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-subsec {
    margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  }
}
.c-subsec + * {
  margin-block-start: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-subsec + * {
    margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  }
}

.c-headline01 {
  position: relative;
  font-size: calc(3.8rem / var(--root-multiplier-hf, 1));
  line-height: 1.3;
  font-weight: 700;
}
@media (max-width: 787px) {
  .c-headline01 {
    font-size: calc(2.1rem / var(--root-multiplier-hf, 1));
  }
}
.c-headline01 + * {
  margin-block-start: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-headline01 + * {
    margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  }
}
.c-headline01::before {
  content: "";
  position: relative;
  display: flow-root block;
  width: calc(6rem / var(--root-multiplier-hf, 1));
  height: calc(0.6rem / var(--root-multiplier-hf, 1));
  background: #00867e;
  margin-block-end: calc(1.2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-headline01::before {
    width: calc(3.6rem / var(--root-multiplier-hf, 1));
    height: calc(0.3rem / var(--root-multiplier-hf, 1));
    margin-block-end: calc(0.6rem / var(--root-multiplier-hf, 1));
  }
}

.c-headline02 {
  position: relative;
  font-size: calc(2.5rem / var(--root-multiplier-hf, 1));
  line-height: 1.5;
  font-weight: 700;
  background: #E9F4F3;
  padding-inline: calc(3.2rem / var(--root-multiplier-hf, 1)) calc(1.6rem / var(--root-multiplier-hf, 1));
  padding-block: calc(1.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-headline02 {
    font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(2rem / var(--root-multiplier-hf, 1)) calc(1rem / var(--root-multiplier-hf, 1));
    padding-block: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.c-headline02 + * {
  margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-headline02 + * {
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.c-headline02::before {
  content: "";
  position: absolute;
  inset-inline-start: calc(1.6rem / var(--root-multiplier-hf, 1));
  inset-block-start: calc(1.6rem / var(--root-multiplier-hf, 1));
  display: flow-root block;
  width: calc(0.3rem / var(--root-multiplier-hf, 1));
  height: calc(100% - calc(3.2rem / var(--root-multiplier-hf, 1)));
  background: #00867e;
}
@media (max-width: 787px) {
  .c-headline02::before {
    inset-inline-start: calc(1rem / var(--root-multiplier-hf, 1));
    inset-block-start: calc(1rem / var(--root-multiplier-hf, 1));
    width: calc(0.2rem / var(--root-multiplier-hf, 1));
    height: calc(100% - calc(2rem / var(--root-multiplier-hf, 1)));
  }
}

.c-breadcrumb {
  position: relative;
  z-index: 1;
  padding: calc(1rem / var(--root-multiplier-hf, 1)) calc(3rem / var(--root-multiplier-hf, 1));
  padding-inline: calc(5rem / var(--root-multiplier-hf, 1));
  max-width: calc(144rem / var(--root-multiplier-hf, 1));
  margin: 0 auto;
}
@media (max-width: 787px) {
  .c-breadcrumb {
    display: block;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    padding: calc(0.9rem / var(--root-multiplier-hf, 1)) calc(1.6rem / var(--root-multiplier-hf, 1));
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .c-breadcrumb::-webkit-scrollbar {
    display: none;
  }
}
.c-breadcrumb .c-breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
}
@media (max-width: 787px) {
  .c-breadcrumb .c-breadcrumb__list {
    flex-wrap: nowrap;
    width: max-content;
    min-width: 100%;
  }
}
.c-breadcrumb .c-breadcrumb__list > li {
  font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-breadcrumb .c-breadcrumb__list > li {
    flex: 0 0 auto;
    font-size: calc(1.1rem / var(--root-multiplier-hf, 1));
    line-height: 1.5;
    white-space: nowrap;
  }
}
.c-breadcrumb .c-breadcrumb__list > li + li::before {
  color: #cfcfcf;
  content: ">";
  margin: 0 1em;
}
@media (max-width: 787px) {
  .c-breadcrumb .c-breadcrumb__list > li + li::before {
    margin: 0 0.8em;
  }
}
.c-breadcrumb .c-breadcrumb__list > li > a {
  color: #0D615E;
  text-decoration-line: underline !important;
  text-decoration-color: currentColor;
}
.c-breadcrumb .c-breadcrumb__list > li > a:hover {
  text-decoration-color: transparent !important;
}

.c-pagettl {
  position: relative;
  display: flex block;
  align-items: center;
  min-height: calc(12.8rem / var(--root-multiplier-hf, 1));
  background: url(/product/asset/img/kv_bg.png);
  font-weight: 700;
  padding-block: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-pagettl {
    min-height: calc(8.8rem / var(--root-multiplier-hf, 1));
    padding-block: calc(0.8rem / var(--root-multiplier-hf, 1));
  }
}

.c-pagettl__inr {
  width: 100%;
  max-width: calc(136rem / var(--root-multiplier-hf, 1));
  margin-inline: auto;
  padding-inline: calc(5rem / var(--root-multiplier-hf, 1));
  color: #fff;
}
@media (max-width: 787px) {
  .c-pagettl__inr {
    padding-inline: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-pagettl__main {
  font-size: calc(3rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-pagettl__main {
    font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  }
}

@media (min-width: 788px) {
  .p-industry-realestate .c-pagettl {
    min-height: calc(12.5rem / var(--root-multiplier-hf, 1));
  }
}

/*@media (max-width: 787px) {
  .p-industry-realestate #a-case-studies .c-link-btn:focus,
  .p-industry-realestate #a-related-lineup .c-link-btn:focus {
    color: $color-white;
    background: #009e96;
    border-color: #009e96;

    &::before {
      border-color: $color-white;
    }
  }
}*/
@media (min-width: 788px) {
  .p-product-article-page .c-pagettl {
    min-height: calc(12.5rem / var(--root-multiplier-hf, 1));
  }
}

@media (min-width: 788px) {
  .p-product--casestudy .c-pagettl {
    min-height: calc(12.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-intro {
  position: relative;
  color: #fff;
  background: #00948b;
  overflow: hidden;
}
.c-intro.m-has-img {
  display: flex block;
  align-items: center;
}
.c-intro.m-has-img .c-intro__inr {
  display: flex block;
  flex-direction: column;
  justify-content: center;
  min-height: calc(23rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-intro.m-has-img .c-intro__inr {
    display: flow-root block;
    min-height: auto;
  }
}
.c-intro.m-has-img .c-intro__ttl,
.c-intro.m-has-img .c-intro__par {
  width: 50%;
}
@media (max-width: 787px) {
  .c-intro.m-has-img .c-intro__ttl,
  .c-intro.m-has-img .c-intro__par {
    width: 100%;
  }
}
@media (min-width: 788px) {
  .c-intro:not(.m-has-img), .c-intro.m-has-img.is-no-image {
    display: block;
    padding-block-start: calc(0rem / var(--root-multiplier-hf, 1));
  }
  .c-intro:not(.m-has-img) .c-intro__inr, .c-intro.m-has-img.is-no-image .c-intro__inr {
    min-height: auto;
  }
  .c-intro:not(.m-has-img) .c-intro__inr::before, .c-intro.m-has-img.is-no-image .c-intro__inr::before {
    display: none;
  }
  .c-intro:not(.m-has-img) .c-intro__ttl,
  .c-intro:not(.m-has-img) .c-intro__par, .c-intro.m-has-img.is-no-image .c-intro__ttl,
  .c-intro.m-has-img.is-no-image .c-intro__par {
    width: 100%;
  }
  .c-intro:not(.m-has-img) .c-intro__img, .c-intro.m-has-img.is-no-image .c-intro__img {
    display: none;
  }
}

.c-intro__inr {
  position: relative;
  height: 100%;
  padding-block: calc(4.2rem / var(--root-multiplier-hf, 1));
  z-index: 2;
}
@media (max-width: 787px) {
  .c-intro__inr {
    padding-block: calc(2.1rem / var(--root-multiplier-hf, 1));
  }
}
.c-intro__inr::before {
  content: "";
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0;
  width: 80.9523809524%;
  height: 100%;
  background: linear-gradient(to right, #00948b, #00948b 65%, rgba(0, 100, 94, 0));
  z-index: -1;
}
@media (max-width: 787px) {
  .c-intro__inr::before {
    display: none;
  }
}

.c-intro__ttl {
  position: relative;
  font-size: calc(3.5rem / var(--root-multiplier-hf, 1));
  line-height: calc(5rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  z-index: 3;
}
@media (max-width: 787px) {
  .c-intro__ttl {
    font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
    line-height: calc(3.7rem / var(--root-multiplier-hf, 1));
  }
}
.c-intro__ttl + * {
  margin-block-start: calc(1.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-intro__ttl + * {
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-intro__img {
  position: absolute;
  inset-inline-end: 0;
  inset-block-start: 0;
  width: 57.3333333333%;
  height: 100%;
  z-index: 1;
}
.c-intro__img img {
  display: flow-root block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media (max-width: 787px) {
  .c-intro__img {
    display: none;
  }
}

.c-head-news {
  background: #F4E9E9;
  padding-block: calc(1.4rem / var(--root-multiplier-hf, 1));
}

.c-head-news__item {
  /*a {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    @media (max-width: 787px) {
      -webkit-line-clamp: 2;
    }
  }*/
}

.c-page-anchor {
  position: sticky;
  inset-block-start: var(--header-height);
  margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
  z-index: 8;
}
@media (max-width: 787px) {
  .c-page-anchor {
    position: static;
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.c-page-anchor + * {
  margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-page-anchor + * {
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.c-page-anchor.m-wide-margin {
  margin-block-start: calc(7rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-page-anchor.m-wide-margin {
    margin-block-start: calc(3.5rem / var(--root-multiplier-hf, 1));
  }
}
.c-page-anchor.m-wide-margin + * {
  margin-block-start: calc(7rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-page-anchor.m-wide-margin + * {
    margin-block-start: calc(3.5rem / var(--root-multiplier-hf, 1));
  }
}
.c-page-anchor.is-fixed .c-page-anchor__wrap {
  border-block-start: 1px solid #DEDEDE;
  transition: box-shadow 0.3s ease;
  box-shadow: 0 calc(0.8rem / var(--root-multiplier-hf)) calc(0.8rem / var(--root-multiplier-hf)) calc(-0.4rem / var(--root-multiplier-hf)) rgba(0, 0, 0, 0.25);
}
.c-page-anchor.is-fixed .c-page-anchor__item {
  font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
  padding-block: calc(0.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-page-anchor.is-fixed .c-page-anchor__item {
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 787px) {
  .c-page-anchor.m-residentialmap.is-fixed .c-page-anchor__wrap {
    box-shadow: none;
  }
}

.c-page-anchor__wrap {
  background: #fff;
  box-shadow: 0 0 0 transparent;
}

.c-page-anchor__inr {
  display: flex block;
  justify-content: center;
  flex-wrap: wrap;
  gap: calc(0.5rem / var(--root-multiplier-hf, 1)) 0;
  overflow: hidden;
}
.c-page-anchor__inr a {
  color: #333;
}
@media (max-width: 1200px) {
  .c-page-anchor__inr {
    justify-content: flex-start;
  }
}

.c-page-anchor__item {
  position: relative;
  display: flex block;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: calc(0.125rem / var(--root-multiplier-hf, 1));
  width: 16.6666666667%;
  max-width: calc(15rem / var(--root-multiplier-hf, 1));
  font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
  line-height: 1.2;
  text-align: center;
  padding-inline: calc(1.3rem / var(--root-multiplier-hf, 1));
  padding-block: calc(0.75rem / var(--root-multiplier-hf, 1));
  border-inline-start: 1px solid #DEDEDE;
  box-sizing: border-box;
}
.c-page-anchor__item:last-child {
  border-inline-end: 1px solid #DEDEDE;
}
@media (max-width: 1200px) {
  .c-page-anchor__item:last-child:not(:nth-child(4n)) {
    width: calc(25% + 1px);
  }
}
@media (max-width: 787px) {
  .c-page-anchor__item:last-child:not(:nth-child(2n)) {
    width: calc(50% + 1px);
  }
}
@media (max-width: 787px) {
  .c-page-anchor__item:last-child:not(:nth-child(4n)) {
    width: calc(50% + 1px);
  }
}
@media (max-width: 787px) {
  .c-page-anchor__item:last-child:nth-child(6n) {
    width: calc(50%);
  }
}
@media (max-width: 1200px) {
  .c-page-anchor__item {
    width: 25%;
    max-width: none;
    /*&:nth-child(4n) {
      border-inline-end: 1px solid #DEDEDE;
    }*/
  }
}
@media (max-width: 787px) {
  .c-page-anchor__item {
    width: 50%;
    font-size: calc(1.22rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(0.75rem / var(--root-multiplier-hf, 1));
    padding-block: calc(0.75rem / var(--root-multiplier-hf, 1));
    /*&:nth-child(2n) {
      border-inline-end: 1px solid #DEDEDE;
    }*/
  }
}
.c-page-anchor__item span {
  display: grid block;
  place-items: center;
  min-height: 2lh;
  word-break: keep-all;
  overflow-wrap: normal;
}
.c-page-anchor__item::after {
  content: "";
  position: relative;
  width: calc(1rem / var(--root-multiplier-hf, 1));
  height: calc(1rem / var(--root-multiplier-hf, 1));
  border-inline-end: 3px solid #00867e;
  border-block-end: 3px solid #00867e;
  rotate: 45deg;
}
@media (max-width: 787px) {
  .c-page-anchor__item::after {
    width: calc(0.7rem / var(--root-multiplier-hf, 1));
    height: calc(0.7rem / var(--root-multiplier-hf, 1));
    border-width: 2px;
  }
}

.c-news-list {
  display: flex block;
  flex-direction: column;
}
.c-news-list + * {
  margin-block-start: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-news-list + * {
    margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  }
}

.c-news-list-scroll {
  max-height: var(--news-list-scroll-height, calc(38.4rem / var(--root-multiplier-hf, 1)));
  padding-inline-end: calc(3rem / var(--root-multiplier-hf, 1));
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.c-news-list-scroll + * {
  margin-block-start: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-news-list-scroll + * {
    margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 787px) {
  .c-news-list-scroll {
    padding-inline-end: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.c-news-list-scroll::-webkit-scrollbar {
  display: none;
}
.c-news-list-scroll .simplebar-scrollbar::before {
  inset-inline: 0;
  width: 3px;
  margin-block-start: 2px;
  background: #00948b;
  border-radius: 0;
}
.c-news-list-scroll .simplebar-scrollbar.simplebar-visible::before {
  opacity: 1;
}
.c-news-list-scroll .simplebar-track {
  width: 3px !important;
  background: #d0d6d8;
}

.c-news-list__item {
  display: flex block;
  align-items: center;
  min-height: calc(5.6rem / var(--root-multiplier-hf, 1));
  padding-inline: calc(3rem / var(--root-multiplier-hf, 1));
  padding-block: calc(1.8rem / var(--root-multiplier-hf, 1));
  border-block-end: 1px solid #d3d5dc;
}
@media (max-width: 787px) {
  .c-news-list__item {
    padding-inline: 0;
    padding-block: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.c-news-list__item:first-child {
  padding-block-start: 0;
}
.c-news-list__item a {
  display: flex block;
  align-items: first baseline;
  color: #333;
  gap: calc(5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-news-list__item a {
    flex-direction: column;
    gap: calc(0.5rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 787px) and (max-width: 787px) {
  .c-news-list__item a {
    font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
  }
}
.c-news-list__item a time {
  font-size: 16px;
  font-weight: 800;
  min-width: 5.5em;
}
@media (max-width: 787px) {
  .c-news-list__item a time {
    font-size: 16px;
  }
}
.c-news-list__item a > span {
  font-size: 16px;
}

.c-article-list {
  position: relative;
  display: flex block;
  flex-wrap: wrap;
  gap: calc(4.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .c-article-list {
    gap: calc(3rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 787px) {
  .c-article-list {
    gap: calc(2.5rem / var(--root-multiplier-hf, 1));
  }
}
.c-article-list + * {
  margin-block-start: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-article-list + * {
    margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  }
}
.c-article-list .swiper {
  width: 100%;
}

.c-article-list__wrapper .c-article-list__item {
  margin-inline-end: calc(4.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .c-article-list__wrapper .c-article-list__item {
    margin-inline-end: calc(3rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 787px) {
  .c-article-list__wrapper .c-article-list__item {
    margin-inline-end: calc(2.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-article-list__arrow {
  position: absolute;
  inset-block-start: calc((min(100vw, calc(136rem / var(--root-multiplier-hf, 1))) - calc(9rem / var(--root-multiplier-hf, 1))) / 3 * 0.6153846154 / 2 - calc(0.5rem / var(--root-multiplier-hf, 1)));
  z-index: 2;
}
@media (max-width: 1020px) {
  .c-article-list__arrow {
    inset-block-start: calc((min(100vw, calc(136rem / var(--root-multiplier-hf, 1))) - calc(6rem / var(--root-multiplier-hf, 1))) / 2 * 0.6153846154 / 2 - calc(0.5rem / var(--root-multiplier-hf, 1)));
  }
}
@media (max-width: 787px) {
  .c-article-list__arrow {
    inset-block-start: calc((min(100vw, calc(136rem / var(--root-multiplier-hf, 1))) - calc(2.5rem / var(--root-multiplier-hf, 1))) / 1 * 0.6153846154 / 2 - calc(0.5rem / var(--root-multiplier-hf, 1)));
  }
}
.c-article-list__arrow.m-prev {
  inset-inline-start: 0;
  translate: -50% -50%;
}
@media (max-width: 787px) {
  .c-article-list__arrow.m-prev {
    inset-inline-start: calc(0.75rem / var(--root-multiplier-hf, 1));
  }
}
.c-article-list__arrow.m-next {
  inset-inline-end: 0;
  translate: 50% -50%;
}
@media (max-width: 787px) {
  .c-article-list__arrow.m-next {
    inset-inline-end: calc(0.75rem / var(--root-multiplier-hf, 1));
  }
}

.c-article-list__item {
  display: flex block;
  flex-direction: column;
  line-height: 1.4;
  width: calc((100% - calc(9rem / var(--root-multiplier-hf, 1))) / 3);
}
@media (max-width: 1020px) {
  .c-article-list__item {
    width: calc((100% - calc(3rem / var(--root-multiplier-hf, 1))) / 2);
  }
}
@media (max-width: 787px) {
  .c-article-list__item {
    width: 100%;
  }
}
.c-article-list__item > a {
  display: flex block;
  color: #333;
  flex-direction: column;
  transition: opacity 0.3s ease;
}
.c-article-list__item > a:hover {
  text-decoration: none !important;
  color: inherit;
  opacity: 0.7;
}

.c-article-list__item-thumb {
  aspect-ratio: 39 / 24;
  background: #f0f0f0;
}

.c-article-list__item-time {
  color: #00645e;
  font-weight: 700;
  margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-article-list__item-time {
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-article-list__item-ttl {
  color: #00645e;
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
  line-height: 1.25;
  font-weight: 700;
  margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-article-list__item-ttl {
    font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-article-list__item-tags {
  display: flex block;
  flex-wrap: wrap;
  gap: calc(1.5rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-article-list__item-tags {
    gap: calc(1rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-article-list__item-tag {
  font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
  padding-inline: calc(0.8rem / var(--root-multiplier-hf, 1));
  padding-block: calc(0.2rem / var(--root-multiplier-hf, 1));
  border: 1px solid #2B2B2B;
  border-radius: 3px;
}
@media (max-width: 787px) {
  .c-article-list__item-tag {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(1.4rem / var(--root-multiplier-hf, 1));
    padding-block: calc(0.4rem / var(--root-multiplier-hf, 1));
  }
}
.c-article-list__item-tag.m-white {
  color: #2B2B2B;
  background: #fff;
}
.c-article-list__item-tag.m-black {
  color: #fff;
  background: #2B2B2B;
}

.c-article-list__item-desc {
  margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-article-list__item-desc {
    margin-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-article-list__item-auther {
  color: #00645e;
  font-weight: 700;
  margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-article-list__item-auther {
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  }
}

.c-pagelink-list {
  display: flex block;
  flex-wrap: wrap;
  gap: calc(4.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1160px) {
  .c-pagelink-list {
    gap: calc(3rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 787px) {
  .c-pagelink-list {
    gap: calc(2.5rem / var(--root-multiplier-hf, 1));
  }
}
.c-pagelink-list + * {
  margin-block-start: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-pagelink-list + * {
    margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  }
}

.c-pagelink-list__item {
  display: flex block;
  flex-direction: column;
  line-height: 1.5;
  width: calc((100% - calc(9rem / var(--root-multiplier-hf, 1))) / 3);
}
@media (max-width: 1160px) {
  .c-pagelink-list__item {
    width: calc((100% - calc(3rem / var(--root-multiplier-hf, 1))) / 2);
  }
}
@media (max-width: 787px) {
  .c-pagelink-list__item {
    width: 100%;
  }
}

.c-pagelink-list__item-thumb {
  aspect-ratio: 39/25;
  background: #D9D9D9;
}

.c-pagelink-list__item-ttl {
  color: #00645e;
  font-size: calc(2.3rem / var(--root-multiplier-hf, 1));
  line-height: 1.25;
  font-weight: 700;
  text-align: center;
}
.c-pagelink-list__item-ttl:not(:first-child) {
  margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-pagelink-list__item-ttl:not(:first-child) {
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 787px) {
  .c-pagelink-list__item-ttl {
    font-size: calc(1.7rem / var(--root-multiplier-hf, 1));
  }
}

.c-pagelink-list__item-desc {
  margin-block: calc(2rem / var(--root-multiplier-hf, 1)) auto;
}
@media (max-width: 787px) {
  .c-pagelink-list__item-desc {
    margin-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-pagelink-list__item-btn {
  max-width: 100%;
  margin-inline: auto;
  margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-pagelink-list__item-btn {
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.c-pagelink-list.m-residentialmap-intro .c-pagelink-list__item-ttl {
  padding-block-end: calc(2rem / var(--root-multiplier-hf, 1));
  border-block-end: 1px solid #DEDEDE;
  text-align: left;
}

.c-post-list {
  position: relative;
  display: flex block;
  flex-wrap: wrap;
  gap: calc(4rem / var(--root-multiplier-hf, 1)) calc(2.4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-post-list {
    gap: calc(2rem / var(--root-multiplier-hf, 1)) calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.c-post-list.m-col-6 {
  gap: calc(4rem / var(--root-multiplier-hf, 1)) calc(1.8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-post-list.m-col-6 {
    gap: calc(2rem / var(--root-multiplier-hf, 1)) calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.c-post-list.m-col-6 .c-post-list__item {
  width: calc((100% - calc(9rem / var(--root-multiplier-hf, 1))) / 6);
}
@media (max-width: 1020px) {
  .c-post-list.m-col-6 .c-post-list__item {
    width: calc((100% - calc(5.4rem / var(--root-multiplier-hf, 1))) / 4);
  }
}
@media (max-width: 787px) {
  .c-post-list.m-col-6 .c-post-list__item {
    width: calc((100% - calc(1rem / var(--root-multiplier-hf, 1))) / 2);
  }
}
.c-post-list.m-col-6 .c-post-list__item-ttl {
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-post-list.m-col-6 .c-post-list__item-ttl {
    font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.c-post-list.m-auto-col:has(> :nth-child(5)) {
  gap: calc(4rem / var(--root-multiplier-hf, 1)) calc(1.8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-post-list.m-auto-col:has(> :nth-child(5)) {
    gap: calc(2rem / var(--root-multiplier-hf, 1)) calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.c-post-list.m-auto-col:has(> :nth-child(5)) .c-post-list__item {
  flex: 0 0 calc((100% - calc(9rem / var(--root-multiplier-hf, 1))) / 6);
  width: calc((100% - calc(9rem / var(--root-multiplier-hf, 1))) / 6);
  min-width: 0;
}
@media (max-width: 1020px) {
  .c-post-list.m-auto-col:has(> :nth-child(5)) .c-post-list__item {
    flex-basis: calc((100% - calc(5.4rem / var(--root-multiplier-hf, 1))) / 4);
    width: calc((100% - calc(5.4rem / var(--root-multiplier-hf, 1))) / 4);
  }
}
@media (max-width: 787px) {
  .c-post-list.m-auto-col:has(> :nth-child(5)) .c-post-list__item {
    flex-basis: calc((100% - calc(1rem / var(--root-multiplier-hf, 1))) / 2);
    width: calc((100% - calc(1rem / var(--root-multiplier-hf, 1))) / 2);
  }
}
.c-post-list.m-auto-col:has(> :nth-child(5)) .c-post-list__item-ttl {
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-post-list.m-auto-col:has(> :nth-child(5)) .c-post-list__item-ttl {
    font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.c-post-list.m-auto-col:has(> :nth-child(5)) .c-post-list__item-desc {
  display: none;
}
.c-post-list + .c-post-list {
  margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-post-list + .c-post-list {
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.c-post-list + * {
  margin-block-start: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-post-list + * {
    margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  }
}
.c-post-list .swiper {
  width: 100%;
}

.c-post-list__wrapper {
  width: 100%;
}
.c-post-list__wrapper .c-post-list__item {
  margin-inline-end: calc(2.4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-post-list__wrapper .c-post-list__item {
    margin-inline-end: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-post-list__arrow {
  position: absolute;
  inset-block-start: calc((min(100vw, calc(136rem / var(--root-multiplier-hf, 1))) - calc(7.2rem / var(--root-multiplier-hf, 1))) / 4 * 0.6666666667 / 2 - calc(0.5rem / var(--root-multiplier-hf, 1)));
  z-index: 2;
}
@media (max-width: 1020px) {
  .c-post-list__arrow {
    inset-block-start: calc((min(100vw, calc(136rem / var(--root-multiplier-hf, 1))) - calc(2.4rem / var(--root-multiplier-hf, 1))) / 2 * 0.6666666667 / 2 - calc(0.5rem / var(--root-multiplier-hf, 1)));
  }
}
@media (max-width: 787px) {
  .c-post-list__arrow {
    inset-block-start: calc((min(100vw, calc(136rem / var(--root-multiplier-hf, 1))) - calc(1rem / var(--root-multiplier-hf, 1))) / 2 * 0.6666666667 / 2 - calc(0.5rem / var(--root-multiplier-hf, 1)));
  }
}
.c-post-list__arrow.m-prev {
  inset-inline-start: 0;
  translate: -50% -50%;
}
@media (max-width: 787px) {
  .c-post-list__arrow.m-prev {
    inset-inline-start: calc(0.75rem / var(--root-multiplier-hf, 1));
  }
}
.c-post-list__arrow.m-next {
  inset-inline-end: 0;
  translate: 50% -50%;
}
@media (max-width: 787px) {
  .c-post-list__arrow.m-next {
    inset-inline-end: calc(0.75rem / var(--root-multiplier-hf, 1));
  }
}

.c-post-list__item {
  width: calc((100% - calc(7.2rem / var(--root-multiplier-hf, 1))) / 4);
  line-height: 1.5;
}
@media (max-width: 1020px) {
  .c-post-list__item {
    width: calc((100% - calc(2.4rem / var(--root-multiplier-hf, 1))) / 2);
  }
}
@media (max-width: 787px) {
  .c-post-list__item {
    width: calc((100% - calc(1rem / var(--root-multiplier-hf, 1))) / 2);
  }
}
.c-post-list__item > a {
  display: flex block;
  color: #333;
  flex-direction: column;
  transition: opacity 0.3s ease;
}
.c-post-list__item > a:hover {
  text-decoration: none !important;
  opacity: 0.7;
}

.c-post-list__item-thumb {
  aspect-ratio: 4 / 3;
  background: #f0f0f0;
  background-size: contain !important;
  background-repeat: no-repeat;
}

.c-post-list__item-ttl {
  color: #00645e;
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-post-list__item-ttl {
    font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-post-list__item-desc {
  margin-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-post-list__item-desc {
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(0.5rem / var(--root-multiplier-hf, 1));
  }
}

#a-case-studies .c-article-list__item > a:hover {
  color: inherit;
}
#a-case-studies .c-article-list__item > a:hover .c-article-list__item-ttl,
#a-case-studies .c-article-list__item > a:hover .c-article-list__item-auther {
  color: #00645e;
}

#a-related-columns .c-article-list__item > a:hover {
  color: inherit;
}
#a-related-columns .c-article-list__item > a:hover .c-article-list__item-time,
#a-related-columns .c-article-list__item > a:hover .c-article-list__item-ttl {
  color: #00645e;
}

#a-related-lineup .c-post-list__item > a:hover {
  color: inherit;
}
#a-related-lineup .c-post-list__item > a:hover .c-post-list__item-ttl {
  color: #00645e;
}

.c-service-sec {
  margin-top: unset !important;
}
.c-service-sec + .c-service-sec {
  margin-block-start: calc(5.6rem / var(--root-multiplier-hf, 1)) !important;
}
@media (max-width: 787px) {
  .c-service-sec + .c-service-sec {
    margin-block-start: calc(4.2rem / var(--root-multiplier-hf, 1)) !important;
  }
}

.c-service-sec__ttl {
  margin-inline: auto;
}
.c-service-sec__ttl + * {
  margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-service-sec__ttl + * {
    margin-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-service-grid {
  display: grid block;
  align-items: flex-start;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(1.3rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-service-grid {
    flex-direction: column;
    grid-template-columns: 1fr;
  }
}
.c-service-grid.m-simple {
  grid-template-columns: repeat(4, 1fr);
  margin-block-start: calc(0.6rem / var(--root-multiplier-hf, 1));
}
.c-service-grid.is-height-managed .c-service-card {
  height: auto;
  min-height: var(--service-card-equal-height);
}
.c-service-grid.is-height-managed .c-service-card__ttl {
  min-height: var(--service-card-title-height);
}
.c-service-grid.is-height-managed .c-service-card__info {
  min-height: var(--service-card-info-height);
}
.c-service-grid.is-measuring-service-cards .c-service-card {
  height: auto !important;
  min-height: 0 !important;
}
.c-service-grid.is-measuring-service-cards .c-service-card__panel {
  grid-template-rows: 0fr !important;
  transition: none !important;
}
.c-service-grid.has-open-panel .c-service-card {
  height: auto;
}

.c-service-card {
  position: relative;
  display: flex block;
  flex-direction: column;
  background: #fff;
  height: 100%;
  padding-inline: calc(1.5rem / var(--root-multiplier-hf, 1));
  padding-block: calc(2rem / var(--root-multiplier-hf, 1)) calc(1.5rem / var(--root-multiplier-hf, 1));
  border: 1px solid #cbd7da;
  border-radius: calc(0.5rem / var(--root-multiplier-hf, 1));
  text-decoration: none !important;
  transition: background 0.3s ease;
}
@media (max-width: 787px) {
  .c-service-card {
    padding-inline: calc(1rem / var(--root-multiplier-hf, 1));
    padding-block: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.c-service-card * {
  transition: color 0.3s ease;
}
.c-service-card[href], .c-service-card.has-panel {
  cursor: pointer;
}
.c-service-card.has-panel {
  z-index: 0;
}
.c-service-card.has-panel:focus-visible {
  outline: 3px solid #009e95;
  outline-offset: 3px;
}
.c-service-card.has-panel.is-open {
  z-index: 3;
}
.c-service-card[href]:hover, .c-service-card.has-panel.is-open {
  background: #00948b;
}
.c-service-card[href]:hover *, .c-service-card.has-panel.is-open * {
  color: #fff;
}
.c-service-card[href]:hover .c-service-card__ttl img, .c-service-card.has-panel.is-open .c-service-card__ttl img {
  filter: brightness(0) invert(1);
}
.c-service-card[href]:hover .c-service-card__info, .c-service-card.has-panel.is-open .c-service-card__info {
  background: #00837B;
}
@media (hover: hover) and (pointer: fine) {
  .c-service-card.has-panel:hover {
    z-index: 3;
    background: #00948b;
  }
  .c-service-card.has-panel:hover * {
    color: #fff;
  }
  .c-service-card.has-panel:hover .c-service-card__ttl img {
    filter: brightness(0) invert(1);
  }
  .c-service-card.has-panel:hover .c-service-card__info {
    background: #00837B;
  }
}
.c-service-card.has-panel.is-open .c-service-card__ttl::after {
  inset-block-start: calc(50% + calc(0.3rem / var(--root-multiplier-hf, 1)));
  border-color: #fff;
  rotate: -45deg;
}
.c-service-card.has-panel.is-open .c-service-card__panel {
  grid-template-rows: 1fr;
}
@media (hover: hover) and (pointer: fine) {
  .c-service-card.has-panel:hover .c-service-card__ttl::after {
    inset-block-start: calc(50% + calc(0.3rem / var(--root-multiplier-hf, 1)));
    border-color: #fff;
    rotate: -45deg;
  }
  .c-service-card.has-panel:hover .c-service-card__panel {
    grid-template-rows: 1fr;
  }
}
.c-service-card.has-panel .c-service-card__ttl::after {
  content: "";
  display: flow-root block;
  position: absolute;
  inset-inline-end: calc(0.8rem / var(--root-multiplier-hf, 1));
  inset-block-start: calc(50% - calc(0.3rem / var(--root-multiplier-hf, 1)));
  width: calc(1.2rem / var(--root-multiplier-hf, 1));
  height: calc(1.2rem / var(--root-multiplier-hf, 1));
  border-inline-end: 3px solid currentColor;
  border-block-start: 3px solid currentColor;
  translate: 0 -50%;
  rotate: 135deg;
  transition: border-color 0.3s ease;
}
@media (max-width: 787px) {
  .c-service-card.has-panel .c-service-card__ttl::after {
    inset-inline-end: calc(0.4rem / var(--root-multiplier-hf, 1));
    width: calc(0.8rem / var(--root-multiplier-hf, 1));
    height: calc(0.8rem / var(--root-multiplier-hf, 1));
    border-width: 2px;
  }
}
.c-service-card.has-panel:not(.is-open) .c-service-card__ttl::after {
  border-color: #009e95;
}
@media (hover: hover) and (pointer: fine) {
  .c-service-card.has-panel:not(.is-open):hover .c-service-card__ttl::after {
    border-color: #fff;
  }
}

.c-service-card__ttl {
  position: relative;
  display: flex block;
  justify-content: center;
  align-items: center;
  gap: calc(0.8rem / var(--root-multiplier-hf, 1));
  color: #111;
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  padding-inline: calc(3rem / var(--root-multiplier-hf, 1));
  transition: color 0.3s ease;
}
@media (max-width: 787px) {
  .c-service-card__ttl {
    gap: calc(0.5rem / var(--root-multiplier-hf, 1));
    font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.c-service-card__ttl img {
  flex: 0 0 calc(2.5rem / var(--root-multiplier-hf, 1));
  width: calc(2.5rem / var(--root-multiplier-hf, 1));
  height: calc(2.5rem / var(--root-multiplier-hf, 1));
  object-fit: contain;
  transition: filter 0.3s ease;
}
@media (max-width: 787px) {
  .c-service-card__ttl img {
    flex-basis: calc(2rem / var(--root-multiplier-hf, 1));
    width: calc(2rem / var(--root-multiplier-hf, 1));
    height: calc(2rem / var(--root-multiplier-hf, 1));
  }
}

.c-service-card__ttl .c-service-card__icon--wide {
  flex-basis: calc(3.25rem / var(--root-multiplier-hf, 1));
  width: calc(3.25rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-service-card__ttl .c-service-card__icon--wide {
    flex-basis: calc(2.6rem / var(--root-multiplier-hf, 1));
    width: calc(2.6rem / var(--root-multiplier-hf, 1));
  }
}

@media (min-width: 1200px) {
  .c-service-card__ttl--single-line {
    gap: calc(0.6rem / var(--root-multiplier-hf, 1));
    padding-inline: 0;
  }
}

@media (min-width: 1200px) {
  .c-service-card__ttl-text--single-line {
    white-space: nowrap;
  }
}

.c-service-card__info {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-grow: 1;
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  line-height: 1.5;
  text-align: center;
  color: #000;
  background: #e7edef;
  margin-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
  padding-inline: calc(1rem / var(--root-multiplier-hf, 1));
  padding-block: calc(1rem / var(--root-multiplier-hf, 1));
  transition: background 0.3s ease;
}
@media (max-width: 787px) {
  .c-service-card__info {
    font-size: calc(1.1rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.c-service-card__info * {
  transition: color 0.3s ease;
}

.c-service-card__info-tags {
  display: flex block;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.05em 1em;
}

.c-service-card__panel {
  display: block grid;
  grid-template-rows: 0fr;
  width: calc(100% + 2px);
  font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
  line-height: 1.55;
  border-radius: 0 0 calc(0.5rem / var(--root-multiplier-hf, 1)) calc(0.5rem / var(--root-multiplier-hf, 1));
  transition: 0.3s ease grid-template-rows;
}
@media (max-width: 787px) {
  .c-service-card__panel {
    position: initial;
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
    border: 0;
  }
}

.c-service-card__panel-inr {
  overflow: hidden;
}

.c-service-card__panel-list ul {
  padding-inline-start: 2em;
}
.c-service-card__panel-list li {
  padding-block: calc(1rem / var(--root-multiplier-hf, 1));
  border-block-end: 1px solid #8bc8c4;
}
@media (max-width: 787px) {
  .c-service-card__panel-list li {
    padding-inline: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.c-service-card__panel-list li a {
  position: relative;
  display: flow-root block;
  width: 100%;
  color: #333;
  padding-inline-end: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-service-card__panel-list li a {
    padding-inline-end: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.c-service-card__panel-list li a::after {
  content: "";
  position: absolute;
  inset-block-start: 50%;
  inset-inline-end: calc(1.5rem / var(--root-multiplier-hf, 1));
  display: flow-root block;
  width: calc(0.8rem / var(--root-multiplier-hf, 1));
  height: calc(0.8rem / var(--root-multiplier-hf, 1));
  border-inline-end: 2px solid currentColor;
  border-block-start: 2px solid currentColor;
  translate: 0 -50%;
  rotate: 45deg;
}
@media (max-width: 787px) {
  .c-service-card__panel-list li a::after {
    inset-inline-end: calc(0.25rem / var(--root-multiplier-hf, 1));
    width: calc(0.6rem / var(--root-multiplier-hf, 1));
    height: calc(0.6rem / var(--root-multiplier-hf, 1));
  }
}

.p-solutions-list-page .c-service-card__info {
  font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-solutions-list-page .c-service-card__info {
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.p-solutions-list-page .c-service-card__panel {
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-solutions-list-page .c-service-card__panel {
    font-size: calc(1.1rem / var(--root-multiplier-hf, 1));
  }
}

.c-contents-link {
  margin-block-start: calc(8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-contents-link {
    margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
  }
}

.c-contents-link__inr {
  display: flex block;
  gap: calc(4rem / var(--root-multiplier-hf, 1));
  background: #f2f6f7;
  padding-inline: calc(5rem / var(--root-multiplier-hf, 1));
  padding-block: calc(5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1200px) {
  .c-contents-link__inr {
    align-items: center;
    gap: calc(3rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 787px) {
  .c-contents-link__inr {
    flex-direction: column-reverse;
    gap: calc(1.5rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(1.5rem / var(--root-multiplier-hf, 1));
    padding-block: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}

@media (min-width: 540px) {
  #pick .c-contents-link__inr {
    flex-direction: inherit;
  }
}

.c-contents-link__txt {
  width: 60.8%;
  min-width: calc(42rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1200px) {
  .c-contents-link__txt {
    width: 100%;
    max-width: calc(70rem / var(--root-multiplier-hf, 1));
    min-width: 0;
  }
}
@media (max-width: 787px) {
  .c-contents-link__txt {
    min-width: 0;
  }
}

.c-contents-link__ttl {
  color: #00645e;
  font-size: calc(3rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 787px) {
  .c-contents-link__ttl {
    font-size: calc(2rem / var(--root-multiplier-hf, 1));
  }
}

.c-pickup {
  display: block;
  width: fit-content;
  min-width: calc(8rem / var(--root-multiplier-hf, 1));
  margin-block-end: calc(0.6rem / var(--root-multiplier-hf, 1));
  padding: calc(0.2rem / var(--root-multiplier-hf, 1)) calc(0.8rem / var(--root-multiplier-hf, 1));
  border-radius: calc(0.2rem / var(--root-multiplier-hf, 1));
  background-color: #009e96;
  color: #fff;
  font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
}

.c-contents-link__par {
  margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-contents-link__par {
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-contents-link__btn {
  margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-contents-link__btn {
    margin-inline: auto;
    margin-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-contents-link__thumb {
  display: block;
  align-self: flex-start;
  width: calc(40rem / var(--root-multiplier-hf, 1));
  max-width: 100%;
  aspect-ratio: 2/1;
  background: #D9D9D9;
  transition: opacity 0.3s ease;
}
@media (max-width: 1200px) {
  .c-contents-link__thumb {
    align-self: center;
    width: 100%;
    max-width: calc(70rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 787px) {
  .c-contents-link__thumb {
    align-self: stretch;
  }
}
.c-contents-link__thumb:hover {
  opacity: 0.7;
}

.single-column {
  text-align: center;
}

.column-qa .c-contents-link__txt {
  width: 100%;
}

.map-sec .c-contents-link__txt {
  width: 100%;
}
@media (max-width: 1200px) {
  .map-sec .c-contents-link__txt,
  .column-qa .c-contents-link__txt {
    max-width: 100%;
  }
}

.map-txt {
  margin-block-end: 2rem;
}

.column-qa .c-link-btn__list {
  margin-block: 2rem;
}

.carnavi_faq .c-contents-link__txt {
  width: 100%;
}
@media (max-width: 1200px) {
  .carnavi_faq .c-contents-link__txt {
    max-width: 100%;
  }
}

.carnavi_faq .c-contents-link__inr {
  background: inherit;
}

.carnavi_faq .c-link-btn__list {
  margin-block: 2rem;
}

.carnavi_faq .carnavi_contact {
  margin-block: 2rem;
}

.carnavi_faq .c-icon-btn.m-wide {
  margin: 0 auto;
}

@media (max-width: 787px) {
  .carnavi_btn .c-icon-btn.m-wide {
    width: calc(32rem / var(--root-multiplier-hf, 1));
  }
}

@media (max-width: 787px) {
  .carnavi_faq .c-contents-link__ttl {
    font-size: calc(2.25rem / var(--root-multiplier-hf, 1));
    margin-block-end: 1rem;
  }
}

.carnavi_pic {
  margin-block-start: 2rem;
  max-width: calc(136rem / var(--root-multiplier-hf, 1));
  margin-inline: auto;
  padding-inline: calc(5rem / var(--root-multiplier-hf, 1));
}

@media (max-width: 787px) {
  .carnavi_pic {
    padding-inline: calc(1.9rem / var(--root-multiplier-hf, 1));
  }
}

.carnavi_pic img {
  width: 500px;
}

.carnavi_pinconte {
  display: flex;
  gap: 2rem;
}

@media (max-width: 787px) {
  .carnavi_pinconte {
    gap: 1rem;
    flex-direction: column;
  }
}

.carnavi_single {
  width: 90%;
  margin: 0 auto;
}

.carnavi_single .c-contents-link__txt {
  width: inherit;
  min-width: inherit;
}

.carnavi_single .c-contents-link__inr {
  padding-inline: 5.125rem;
  padding-block: 2.125rem;
}

.carnavi_single .c-contents-link__ttl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-size: 2.175rem;
  line-height: 2.5;
}

.carnavi_single .c-contents-link__ttl span {
  font-size: 1.2rem;
  color: #111;
}

@media (max-width: 787px) {
  .carnavi_single {
    width: 100%;
    margin: 0 auto;
  }

  .carnavi_single .c-contents-link__inr {
    flex-direction: column;
    width: 100%;
    padding-inline: 1.5rem;
    gap: 0;
  }

  .carnavi_single .c-contents-link__ttl {
    font-size: 2rem;
    line-height: 2;
  }
}

.c-hr {
  height: 1px;
  margin-block: calc(6rem / var(--root-multiplier-hf, 1));
  border: 0;
  background-color: #d9d9d9;
}

.c-hr--gray {
  background-color: #d9d9d9;
}

.c-category-list {
  display: grid block;
  grid-template-columns: repeat(5, 1fr);
  gap: calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .c-category-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
.c-category-list.m-col6 {
  grid-template-columns: repeat(6, 1fr);
}
@media (max-width: 1020px) {
  .c-category-list.m-col6 {
    grid-template-columns: repeat(2, 1fr);
  }
}
.c-category-list.m-col6 .c-category-list__item {
  height: calc(16rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1150px) {
  .c-category-list.m-col6 .c-category-list__item {
    height: calc(21rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 787px) {
  .c-category-list.m-col6 .c-category-list__item {
    height: calc(9rem / var(--root-multiplier-hf, 1));
  }
}
.c-category-list.m-col6 .c-category-list__item-mask-ttl {
  font-size: calc(1.7rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-category-list.m-col6 .c-category-list__item-mask-ttl {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}
.c-category-list.m-col6 .c-category-list__item-content-ttl {
  font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-category-list.m-col6 .c-category-list__item-content-ttl {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}
.c-category-list.m-col6 .c-category-list__item-content-par {
  font-size: calc(1.1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-category-list.m-col6 .c-category-list__item-content-par {
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-category-list__item {
  height: calc(17.8rem / var(--root-multiplier-hf, 1));
  border: 1px solid #cbd7da;
  border-radius: 0.5em;
  box-sizing: content-box;
  overflow: hidden;
}
@media (max-width: 787px) {
  .c-category-list__item {
    height: calc(12rem / var(--root-multiplier-hf, 1));
  }
}
.c-category-list__item a {
  position: relative;
  display: flow-root block;
  height: 100%;
  color: #333;
}
.c-category-list__item a:hover, .c-category-list__item a:focus, .c-category-list__item a:focus-visible, .c-category-list__item a:focus-within {
  text-decoration: none !important;
}
.c-category-list__item a:hover .c-category-list__item-mask, .c-category-list__item a:focus .c-category-list__item-mask, .c-category-list__item a:focus-visible .c-category-list__item-mask, .c-category-list__item a:focus-within .c-category-list__item-mask {
  opacity: 0;
  pointer-events: none;
}
.c-category-list__item a:focus, .c-category-list__item a:focus-visible {
  outline: 2px solid #00867e;
  outline-offset: -2px;
}

.c-category-list__item-mask {
  position: absolute;
  inset-inline-start: 0;
  inset-block-start: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
  background: #fff;
  text-align: center;
  transition: opacity 0.3s ease;
  z-index: 2;
}

.c-category-list__item-mask-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(6.7rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-category-list__item-mask-icon {
    height: calc(4.5rem / var(--root-multiplier-hf, 1));
  }
}
.c-category-list__item-mask-icon img {
  width: calc(8.7rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-category-list__item-mask-icon img {
    width: calc(5rem / var(--root-multiplier-hf, 1));
  }
}

.c-category-list__item-mask-ttl {
  font-weight: 700;
  font-size: calc(2.2rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(0.5rem / var(--root-multiplier-hf, 1));
  max-width: 100%;
  overflow-wrap: anywhere;
}
@media (max-width: 787px) {
  .c-category-list__item-mask-ttl {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
    margin-block-start: 0;
  }
}
.c-category-list__item-mask-ttl small {
  display: flow-root block;
  font-size: 0.65em;
  line-height: 1;
}

.c-category-list__item-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: #fff;
  box-sizing: border-box;
  background: #00948b;
  padding: calc(1.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-category-list__item-content {
    padding: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-category-list__item-content-ttl {
  font-size: calc(2.2rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  text-align: center;
  overflow-wrap: anywhere;
}
@media (max-width: 787px) {
  .c-category-list__item-content-ttl {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}
.c-category-list__item-content-ttl small {
  display: flow-root block;
  font-size: 0.65em;
  line-height: 1;
}

.c-category-list__item-content-par {
  font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
  line-height: 1.55;
  text-align: center;
  overflow-wrap: anywhere;
  margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-category-list__item-content-par {
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(0.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-category-links {
  background: #E9F4F3;
  padding-block: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-category-links {
    padding-block: calc(3rem / var(--root-multiplier-hf, 1));
  }
}

.c-category-links__ttl {
  color: initial;
  font-size: calc(2.5rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: 1;
  text-align: center;
}
@media (max-width: 787px) {
  .c-category-links__ttl {
    font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  }
}

.c-category-links.m-residentialmap .c-category-links__ttl {
  font-size: 24px;
}

.c-category-links__list {
  display: flex block;
  flex-wrap: wrap;
  margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-category-links__list {
    margin-block-start: calc(2.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-category-links__list-item {
  width: 25%;
}
@media (max-width: 1240px) {
  .c-category-links__list-item {
    width: 50%;
  }
}
.c-category-links__list-item a,
.c-category-links__list-item span {
  position: relative;
  display: flex block;
  align-items: center;
  color: #1E3F90;
  line-height: 1.5;
  height: calc(7rem / var(--root-multiplier-hf, 1));
  background: #fff;
  padding-inline: calc(1.8rem / var(--root-multiplier-hf, 1)) calc(3.6rem / var(--root-multiplier-hf, 1));
  border: 1px solid #ACACAC;
}
@media (max-width: 787px) {
  .c-category-links__list-item a,
  .c-category-links__list-item span {
    height: calc(5rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(1.5rem / var(--root-multiplier-hf, 1)) calc(3rem / var(--root-multiplier-hf, 1));
  }
}
.c-category-links__list-item a::before {
  content: "";
  position: absolute;
  inset-inline-end: calc(1.6rem / var(--root-multiplier-hf, 1));
  inset-block-start: 50%;
  translate: -50% -50%;
  rotate: -45deg;
  width: calc(1rem / var(--root-multiplier-hf, 1));
  height: calc(1rem / var(--root-multiplier-hf, 1));
  border-inline-end: 2px solid currentColor;
  border-block-end: 2px solid currentColor;
}
@media (max-width: 787px) {
  .c-category-links__list-item a::before {
    inset-inline-end: calc(1.2rem / var(--root-multiplier-hf, 1));
    width: calc(0.8rem / var(--root-multiplier-hf, 1));
    height: calc(0.8rem / var(--root-multiplier-hf, 1));
  }
}
.c-category-links__list-item.is-current span {
  color: #00645e;
  font-weight: 700;
  background: #DDEDEC;
  padding-inline-end: calc(1.8rem / var(--root-multiplier-hf, 1));
}

.c-acc-list-sec {
  position: relative;
  background: #fff;
  padding-inline: calc(4rem / var(--root-multiplier-hf, 1));
  padding-block: calc(4rem / var(--root-multiplier-hf, 1));
  border: 1px solid #cbcbcb;
  border-radius: calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-acc-list-sec {
    padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
    padding-block: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.c-acc-list-sec:first-child:not([data-color]) {
  margin-block-start: unset;
}
.c-acc-list-sec + * {
  margin-block-start: calc(8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-acc-list-sec + * {
    margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
  }
}
.c-acc-list-sec + .c-acc-list-sec {
  margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-acc-list-sec + .c-acc-list-sec {
    margin-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-acc-list-sec__head {
  position: relative;
  display: flex block;
  align-items: center;
  padding-inline-end: calc(10rem / var(--root-multiplier-hf, 1));
  gap: calc(2rem / var(--root-multiplier-hf, 1)) calc(4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .c-acc-list-sec__head {
    flex-wrap: wrap;
  }
}
@media (max-width: 787px) {
  .c-acc-list-sec__head {
    flex-direction: column;
    align-items: flex-start;
    padding-inline-end: 0;
    gap: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-acc-list-sec__head-link {
  display: flex block;
  align-items: center;
  gap: calc(1.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-acc-list-sec__head-link {
    width: 100%;
    gap: calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}
.c-acc-list-sec__head-link:hover {
  text-decoration: none !important;
}
.c-acc-list-sec__head-link:hover .c-acc-list-sec__head-arrow {
  opacity: 0.8;
}
a.c-acc-list-sec__head-link {
  color: #333;
}

.c-acc-list-sec__head-ttl {
  font-size: calc(2.3rem / var(--root-multiplier-hf, 1));
  line-height: 1.5;
  min-width: 11em;
  margin-block-start: 0;
}
@media (max-width: 787px) {
  .c-acc-list-sec__head-ttl {
    font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
    min-width: unset;
  }
}

.c-acc-list-sec__head-arrow {
  width: calc(3.8rem / var(--root-multiplier-hf, 1));
  height: calc(3.8rem / var(--root-multiplier-hf, 1));
  background: #00645e;
}
@media (max-width: 787px) {
  .c-acc-list-sec__head-arrow {
    width: calc(2rem / var(--root-multiplier-hf, 1));
    height: calc(2rem / var(--root-multiplier-hf, 1));
    margin-inline-end: calc(4rem / var(--root-multiplier-hf, 1));
  }
}
.c-acc-list-sec__head-arrow::before {
  width: calc(0.7rem / var(--root-multiplier-hf, 1));
  height: calc(0.7rem / var(--root-multiplier-hf, 1));
  margin-inline-start: -2px;
  translate: none;
}
@media (max-width: 787px) {
  .c-acc-list-sec__head-arrow::before {
    width: calc(0.35rem / var(--root-multiplier-hf, 1));
    height: calc(0.35rem / var(--root-multiplier-hf, 1));
    margin-inline-start: -1px;
  }
}

.c-acc-list-sec__head-desc {
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-acc-list-sec__head-desc {
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-acc-list-sec__btn {
  position: absolute;
  inset-inline-end: calc(-1rem / var(--root-multiplier-hf, 1));
  inset-block-start: 50%;
  translate: 0 -50%;
  width: calc(8rem / var(--root-multiplier-hf, 1));
  height: calc(8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-acc-list-sec__btn {
    inset-inline-end: calc(-0.75rem / var(--root-multiplier-hf, 1));
    inset-block-start: -0.25em;
    translate: 0 0;
    width: calc(3rem / var(--root-multiplier-hf, 1));
    height: calc(3rem / var(--root-multiplier-hf, 1));
  }
}
.c-acc-list-sec__btn[aria-expanded=true]::after {
  inset-block-start: calc(50% + calc(0.3rem / var(--root-multiplier-hf, 1)));
  rotate: -135deg;
}
.c-acc-list-sec__btn::after {
  content: "";
  position: absolute;
  inset-inline-start: 50%;
  inset-block-start: calc(50% - calc(0.3rem / var(--root-multiplier-hf, 1)));
  translate: -50% -50%;
  width: calc(1.75rem / var(--root-multiplier-hf, 1));
  height: calc(1.75rem / var(--root-multiplier-hf, 1));
  border-block-end: 3px solid #00867e;
  border-inline-end: 3px solid #00867e;
  rotate: 45deg;
}
@media (max-width: 787px) {
  .c-acc-list-sec__btn::after {
    width: calc(1rem / var(--root-multiplier-hf, 1));
    height: calc(1rem / var(--root-multiplier-hf, 1));
    border-width: 2px;
  }
}

.c-acc-list-sec__panel {
  display: block grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease;
}
.c-acc-list-sec__panel[aria-hidden=false] {
  grid-template-rows: 1fr;
}

.c-acc-list-sec__contents {
  overflow: hidden;
}

.c-acc-list-sec__contents-inr {
  margin-block-start: calc(2.7rem / var(--root-multiplier-hf, 1));
  padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
  padding-block-start: calc(4rem / var(--root-multiplier-hf, 1));
  border-block-start: #00948b 3px solid;
}
@media (max-width: 787px) {
  .c-acc-list-sec__contents-inr {
    margin-block-start: calc(1.8rem / var(--root-multiplier-hf, 1));
    padding-inline: 0;
    padding-block-start: calc(2rem / var(--root-multiplier-hf, 1));
    border-width: 2px;
  }
}

.c-acc-list-sec__contents-head {
  color: #00867e;
  margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  padding-block-end: calc(1rem / var(--root-multiplier-hf, 1));
  border-block-end: 1px solid #EBEBEB;
}
@media (max-width: 787px) {
  .c-acc-list-sec__contents-head {
    margin-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
    padding-block-end: calc(0.5rem / var(--root-multiplier-hf, 1));
  }
}
.c-acc-list-sec__contents-head:first-child {
  margin-block-start: 0;
}
.c-acc-list-sec__contents-head + * {
  margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-acc-list-sec__contents-head + * {
    margin-block-start: calc(0.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-acc-list-sec__contents-list {
  display: flex block;
  flex-wrap: wrap;
}
.c-acc-list-sec__contents-list.m-independent {
  margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  padding-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  border-block-start: 1px solid #EBEBEB;
}
@media (max-width: 787px) {
  .c-acc-list-sec__contents-list.m-independent {
    margin-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
    padding-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-acc-list-sec__contents-list-item {
  width: 33.3333333333%;
}
@media (max-width: 1020px) {
  .c-acc-list-sec__contents-list-item {
    width: 50%;
  }
}
@media (max-width: 787px) {
  .c-acc-list-sec__contents-list-item {
    width: 100%;
  }
}
.c-acc-list-sec__contents-list-item a {
  position: relative;
  display: flow-root block;
  width: 100%;
  color: #333;
  line-height: 1.5;
  padding-inline: calc(1rem / var(--root-multiplier-hf, 1)) calc(3.4rem / var(--root-multiplier-hf, 1));
  padding-block: calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-acc-list-sec__contents-list-item a {
    padding-inline: 0 calc(2.4rem / var(--root-multiplier-hf, 1));
    padding-block: calc(0.75rem / var(--root-multiplier-hf, 1));
  }
}
.c-acc-list-sec__contents-list-item a::after {
  content: "";
  position: absolute;
  inset-inline-end: calc(2.4rem / var(--root-multiplier-hf, 1));
  inset-block-start: 0.65lh;
  width: calc(1rem / var(--root-multiplier-hf, 1));
  height: calc(1rem / var(--root-multiplier-hf, 1));
  border-block-end: 2px solid #00867e;
  border-inline-end: 2px solid #00867e;
  rotate: -45deg;
}
@media (max-width: 787px) {
  .c-acc-list-sec__contents-list-item a::after {
    inset-inline-end: calc(1.4rem / var(--root-multiplier-hf, 1));
    inset-block-start: 0.75lh;
    width: calc(0.65rem / var(--root-multiplier-hf, 1));
    height: calc(0.65rem / var(--root-multiplier-hf, 1));
    border-width: 2px;
  }
}

.c-faq-acc {
  display: block flex;
  flex-direction: column;
  padding-block: calc(2rem / var(--root-multiplier-hf, 1));
  border-block-end: 1px solid #d9d9d9;
}
@media (max-width: 787px) {
  .c-faq-acc {
    padding-block: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.c-faq-acc:first-of-type {
  border-block-start: 1px solid #d9d9d9;
}

.c-faq-acc__head {
  position: relative;
  display: flex block;
  align-items: flex-start;
  gap: calc(2rem / var(--root-multiplier-hf, 1));
  width: 100%;
  color: inherit;
  font: inherit;
  text-align: start;
  background: transparent;
  padding: 0;
  border: 0;
  cursor: pointer;
}
.c-faq-acc__head:focus-visible {
  outline: 2px solid #00867e;
  outline-offset: 4px;
}
.c-faq-acc__head[aria-expanded=true] .c-faq-acc__btn::after {
  rotate: 0deg;
}
@media (max-width: 787px) {
  .c-faq-acc__head {
    flex-direction: column;
    gap: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-faq-acc__question {
  color: #fff;
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  line-height: 1.5;
  text-align: center;
  width: calc(6rem / var(--root-multiplier-hf, 1));
  background: #2b2b2b;
  padding-block: calc(0.2rem / var(--root-multiplier-hf, 1));
  border-radius: 3px;
}
@media (max-width: 787px) {
  .c-faq-acc__question {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
    width: calc(4rem / var(--root-multiplier-hf, 1));
  }
}

.c-faq-acc__head-txt {
  width: calc(100% - calc(2rem / var(--root-multiplier-hf, 1)) - calc(6rem / var(--root-multiplier-hf, 1)));
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  line-height: 1.5;
  padding-block-start: 0.125lh;
  padding-inline-end: calc(10.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-faq-acc__head-txt {
    width: 100%;
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
    padding: unset;
  }
}

.c-faq-acc__btn {
  position: absolute;
  inset-inline-end: calc(2.5rem / var(--root-multiplier-hf, 1));
  inset-block-start: calc(-1rem / var(--root-multiplier-hf, 1));
  width: calc(5.5rem / var(--root-multiplier-hf, 1));
  height: calc(5.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-faq-acc__btn {
    inset-inline-end: 0;
    inset-block-start: calc(-1rem / var(--root-multiplier-hf, 1));
    width: calc(4rem / var(--root-multiplier-hf, 1));
    height: calc(4rem / var(--root-multiplier-hf, 1));
  }
}
.c-faq-acc__btn::before, .c-faq-acc__btn::after {
  content: "";
  position: absolute;
  inset-inline-start: 50%;
  inset-block-start: 50%;
  translate: -50% -50%;
  width: calc(2.5rem / var(--root-multiplier-hf, 1));
  height: 3px;
  background: #1e3f90;
  transition: rotate 0.3s ease;
}
@media (max-width: 787px) {
  .c-faq-acc__btn::before, .c-faq-acc__btn::after {
    width: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.c-faq-acc__btn::after {
  rotate: -90deg;
}

.c-faq-acc__panel {
  display: block grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease;
}
.c-faq-acc__panel[aria-hidden=false] {
  grid-template-rows: 1fr;
}

.c-faq-acc__panel-inr {
  display: flex block;
  align-items: flex-start;
  gap: calc(2rem / var(--root-multiplier-hf, 1));
  overflow: hidden;
  flex-wrap: wrap;
}
@media (max-width: 787px) {
  .c-faq-acc__panel-inr {
    flex-direction: column;
    gap: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-faq-acc__answer {
  color: #fff;
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  line-height: 1.5;
  text-align: center;
  width: calc(6rem / var(--root-multiplier-hf, 1));
  background: #00867e;
  margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  padding-block: calc(0.2rem / var(--root-multiplier-hf, 1));
  border-radius: 3px;
}
@media (max-width: 787px) {
  .c-faq-acc__answer {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
    width: calc(4rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-faq-acc__panel-txt {
  width: calc(100% - calc(2rem / var(--root-multiplier-hf, 1)) - calc(6rem / var(--root-multiplier-hf, 1)));
  margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  line-height: 1.5;
  padding-block-start: 0.125lh;
}
.c-faq-acc__panel-txt a {
  color: #263e8b;
  padding-inline-start: 5rem;
  margin-block-start: -1rem;
  display: block;
}
@media (max-width: 787px) {
  .c-faq-acc__panel-txt {
    width: 100%;
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
    margin: unset;
    padding: unset;
  }
  .c-faq-acc__panel-txt a {
    padding-inline-start: inherit;
    margin-block-start: 0.5rem;
  }
}

.c-dialogs {
  display: flex block;
  flex-wrap: wrap;
  gap: calc(4rem / var(--root-multiplier-hf, 1)) calc(3rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-dialogs {
    gap: calc(1.5rem / var(--root-multiplier-hf, 1)) calc(1rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  }
}

.c-dialog {
  width: calc((100% - calc(8rem / var(--root-multiplier-hf, 1))) / 3);
}
@media (max-width: 787px) {
  .c-dialog {
    width: 100%;
  }
}

.c-dialog__btn {
  position: relative;
  display: flex block;
  align-items: center;
  width: 100%;
  min-height: calc(8rem / var(--root-multiplier-hf, 1));
  background: #fff;
  padding-inline: calc(5rem / var(--root-multiplier-hf, 1));
  padding-block: calc(1rem / var(--root-multiplier-hf, 1));
  box-shadow: 0 0 calc(2rem / var(--root-multiplier-hf, 1)) rgba(0, 0, 0, 0.15);
  border-radius: calc(1rem / var(--root-multiplier-hf, 1));
  transition: box-shadow 0.3s ease;
}
@media (max-width: 787px) {
  .c-dialog__btn {
    min-height: calc(7rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
    padding-block: calc(0.5rem / var(--root-multiplier-hf, 1));
    box-shadow: 0 0 calc(1rem / var(--root-multiplier-hf, 1)) rgba(0, 0, 0, 0.15);
    border-radius: calc(0.5rem / var(--root-multiplier-hf, 1));
  }
}
.c-dialog__btn:hover {
  box-shadow: 0 0 calc(2rem / var(--root-multiplier-hf, 1)) rgba(0, 0, 0, 0.3);
}
@media (max-width: 787px) {
  .c-dialog__btn:hover {
    box-shadow: 0 0 calc(1rem / var(--root-multiplier-hf, 1)) rgba(0, 0, 0, 0.3);
  }
}
.c-dialog__btn span {
  color: #00867e;
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
  margin-inline: auto;
}
@media (max-width: 787px) {
  .c-dialog__btn span {
    font-size: calc(1.7rem / var(--root-multiplier-hf, 1));
  }
}

.c-dialog__btn-icon {
  position: absolute;
  inset-inline-end: calc(2.4rem / var(--root-multiplier-hf, 1));
  inset-block-start: 50%;
  translate: 0 -50%;
  width: calc(2.2rem / var(--root-multiplier-hf, 1));
  background: #00867e;
  border-radius: 50%;
  aspect-ratio: 1/1;
}
@media (max-width: 787px) {
  .c-dialog__btn-icon {
    inset-inline-end: calc(1.8rem / var(--root-multiplier-hf, 1));
    width: calc(1.7rem / var(--root-multiplier-hf, 1));
  }
}
.c-dialog__btn-icon::before, .c-dialog__btn-icon::after {
  content: "";
  position: absolute;
  inset-inline-start: 50%;
  inset-block-start: 50%;
  translate: -50% -50%;
  width: calc(1rem / var(--root-multiplier-hf, 1));
  height: calc(0.2rem / var(--root-multiplier-hf, 1));
  background: #fff;
}
@media (max-width: 787px) {
  .c-dialog__btn-icon::before, .c-dialog__btn-icon::after {
    width: calc(0.8rem / var(--root-multiplier-hf, 1));
    height: calc(0.2rem / var(--root-multiplier-hf, 1));
  }
}
.c-dialog__btn-icon::after {
  rotate: 90deg;
}
.c-dialog__btn-icon {
  /*&::before {
    content: "";
    position: absolute;
    inset-inline-start: 50%;
    inset-block-start: 50%;
    translate: -50% -50%;
    width: calc(1rem / var(--root-multiplier-hf, 1));
    height: calc(1rem / var(--root-multiplier-hf, 1));
    background-size: cover;
    background-position: 50%;
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MDkgNTExLjU0Ij48cGF0aCBmaWxsPSIjZmZmIiBkPSJNNDQ3LjE5IDM0Ny4wM2MwLTE3LjA2IDEzLjg1LTMwLjkxIDMwLjkxLTMwLjkxIDE3LjA1IDAgMzAuOSAxMy44NSAzMC45IDMwLjkxdjg3LjgyYzAgMjEuMDgtOC42MyA0MC4yOS0yMi41MSA1NC4xOC0xMy44OCAxMy44OC0zMy4wOSAyMi41MS01NC4xOCAyMi41MUg3Ni42OWMtMjEuMDkgMC00MC4zLTguNjMtNTQuMTgtMjIuNTFDOC42MyA0NzUuMTQgMCA0NTUuOTMgMCA0MzQuODVWNzYuNjljMC0yMS4wOSA4LjYzLTQwLjMgMjIuNTEtNTQuMThTNTUuNiAwIDc2LjY5IDBoODYuOThjMTcuMDYgMCAzMC45IDEzLjg1IDMwLjkgMzAuOSAwIDE3LjA2LTEzLjg0IDMwLjkxLTMwLjkgMzAuOTFINzYuNjljLTQuMDcgMC03LjgyIDEuNjktMTAuNTEgNC4zNy0yLjY4IDIuNjktNC4zNyA2LjQ0LTQuMzcgMTAuNTF2MzU4LjE2YzAgNC4wNiAxLjY5IDcuODIgNC4zNyAxMC41IDIuNjkgMi42OCA2LjQ0IDQuMzggMTAuNTEgNC4zOGgzNTUuNjJjNC4wNyAwIDcuODItMS43IDEwLjUxLTQuMzggMi42OC0yLjY4IDQuMzctNi40NCA0LjM3LTEwLjV6bTAtMjQzLjU2TDMwOC4xNSAyNDQuMjhjLTExLjkxIDEyLjEyLTMxLjQ1IDEyLjI4LTQzLjU2LjM3cy0xMi4yOC0zMS40NS0uMzctNDMuNTZMNDAxLjc3IDYxLjgxSDMwOS43Yy0xNy4wNiAwLTMwLjktMTMuODUtMzAuOS0zMC45MSAwLTE3LjA1IDEzLjg0LTMwLjkgMzAuOS0zMC45aDE2OC40QzQ5NS4xNSAwIDUwOSAxMy44NSA1MDkgMzAuOXYxNjUuMDRjMCAxNy4wNi0xMy44NSAzMC45LTMwLjkgMzAuOS0xNy4wNiAwLTMwLjkxLTEzLjg0LTMwLjkxLTMwLjl6Ii8+PC9zdmc+');
    background-repeat: no-repeat;
    @media (max-width: 787px) {
      width: calc(.8rem / var(--root-multiplier-hf, 1));
      height: calc(.8rem / var(--root-multiplier-hf, 1));
    }
  }*/
}

.c-dialog__body {
  border: none;
  border-radius: calc(1rem / var(--root-multiplier-hf, 1));
  padding: 0;
  box-shadow: 0 0 calc(5rem / var(--root-multiplier-hf, 1)) rgba(0, 0, 0, 0.1);
  max-width: calc(98.6rem / var(--root-multiplier-hf, 1));
  width: 90%;
  background: #fff;
  opacity: 0;
  scale: 0.975;
  translate: 0 calc(2rem / var(--root-multiplier-hf, 1));
  transition: opacity 0.3s ease, scale 0.3s ease, translate 0.3s ease, overlay 0.3s allow-discrete, display 0.3s allow-discrete;
}
.c-dialog__body::backdrop {
  background-color: rgba(0, 0, 0, 0);
  backdrop-filter: blur(0px);
  transition: background-color 0.3s ease-out, backdrop-filter 0.3s ease-out, overlay 0.3s allow-discrete, display 0.3s allow-discrete;
}
.c-dialog__body[open] {
  opacity: 1;
  scale: 1;
  translate: 0 0;
}
.c-dialog__body[open]::backdrop {
  background-color: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(4px);
}

@starting-style {
  .c-dialog__body[open] {
    opacity: 0;
    scale: 0.975;
    translate: 0 calc(2rem / var(--root-multiplier-hf, 1));
  }
  .c-dialog__body[open]::backdrop {
    background-color: rgba(0, 0, 0, 0);
    backdrop-filter: blur(0px);
  }
}
.c-dialog__body-close {
  position: sticky;
  inset-inline-end: calc(4rem / var(--root-multiplier-hf, 1));
  inset-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  line-height: 1.5;
  margin-inline: auto calc(-4rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(-3rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-dialog__body-close {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
    inset-inline-end: calc(1rem / var(--root-multiplier-hf, 1));
    inset-block-start: calc(0.5rem / var(--root-multiplier-hf, 1));
    margin-inline: auto calc(-2rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(-2rem / var(--root-multiplier-hf, 1));
    padding: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-dialog__body-inr {
  display: block flex;
  flex-direction: column;
  padding-inline: calc(5rem / var(--root-multiplier-hf, 1));
  padding-block: calc(5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-dialog__body-inr {
    padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
    padding-block: calc(2rem / var(--root-multiplier-hf, 1));
  }
}

.c-dialog__body-img {
  display: flow-root block;
  width: 100%;
  max-width: calc(55rem / var(--root-multiplier-hf, 1));
  margin-inline: auto;
}

.c-dialog__body-txt {
  margin-block-start: calc(3.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-dialog__body-txt {
    margin-block-start: calc(1.6rem / var(--root-multiplier-hf, 1));
  }
}

.c-dialog__body-txt-hd {
  color: #00867e;
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
  line-height: 1.5;
  font-weight: 700;
}
@media (max-width: 787px) {
  .c-dialog__body-txt-hd {
    font-size: 18px;
  }
}
.c-dialog__body-txt-hd:not(:first-child) {
  margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-dialog__body-txt-hd:not(:first-child) {
    margin-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-dialog__body-txt-par {
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  line-height: 1.5;
}
@media (max-width: 787px) {
  .c-dialog__body-txt-par {
    font-size: 16px;
  }
}
.c-dialog__body-txt-par:not(:first-child) {
  margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-dialog__body-txt-par:not(:first-child) {
    margin-block-start: calc(0.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-dialog__body-btn {
  margin-block-start: calc(4.8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-dialog__body-btn {
    margin-block-start: calc(2.4rem / var(--root-multiplier-hf, 1));
  }
}

.c-cta {
  margin-block-start: calc(8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-cta {
    margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
  }
}
.c-cta.m-bg-green {
  background: #E9F4F3;
  padding-block: calc(8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-cta.m-bg-green {
    padding-block: calc(4rem / var(--root-multiplier-hf, 1));
  }
}
.c-cta.m-bg-green .c-cta__item {
  background: #fff;
  border-radius: 0;
}

.c-cta__inr {
  display: flex block;
  flex-wrap: wrap;
  gap: calc(4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-cta__inr {
    flex-direction: column;
    gap: calc(2rem / var(--root-multiplier-hf, 1));
  }
}

.c-cta__item {
  flex: 1;
  background: #f3f7f6;
  padding-inline: calc(5.6rem / var(--root-multiplier-hf, 1));
  padding-block: calc(3.6rem / var(--root-multiplier-hf, 1)) calc(4rem / var(--root-multiplier-hf, 1));
  border-radius: calc(0.8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-cta__item {
    padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
    padding-block: calc(3rem / var(--root-multiplier-hf, 1));
  }
}

.c-cta__item-inr {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 100%;
}

.c-cta__item-ttl {
  display: grid block;
  place-items: center;
  place-content: center;
  color: #00645e;
  font-size: calc(3.2rem / var(--root-multiplier-hf, 1));
  line-height: 1;
  font-weight: 800;
  text-align: center;
  height: calc(7.2rem / var(--root-multiplier-hf, 1));
  margin-block: auto;
}
@media (max-width: 787px) {
  .c-cta__item-ttl {
    height: auto;
    font-size: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.c-cta__item-ttl small {
  color: initial;
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
}
.c-cta__item-ttl.item-frex {
display: flex;
}
@media (max-width: 787px) {
  .c-cta__item-ttl small {
    font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(0.7rem / var(--root-multiplier-hf, 1));
  }
}

.c-cta__item-ttl.m-residentialmap-contact small {
  font-size: 18px;
}

.c-cta__item-ttl-zenrin-store {
  display: flow-root block;
  width: calc(27.2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-cta__item-ttl-zenrin-store {
    width: calc(22rem / var(--root-multiplier-hf, 1));
  }
}

.c-cta__item-txt {
  margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-cta__item-txt {
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-cta__item-btn {
  gap: 0;
  justify-content: center;
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  min-width: calc(34.6rem / var(--root-multiplier-hf, 1));
  margin-inline: auto;
  margin-block-start: calc(2.5rem / var(--root-multiplier-hf, 1));
  padding-inline: calc(4.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-cta__item-btn {
    font-size: 16px;
    min-width: 100%;
    max-width: 100%;
    padding-inline: calc(3.8rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.c-cta__item-btn span {
  width: 100%;
  text-align: center;
}
.c-cta__item-btn .c-icon-btn__icon {
  position: absolute;
  inset-inline-start: calc(1.4rem / var(--root-multiplier-hf, 1));
  inset-block-start: 50%;
  translate: 0 -50%;
  width: calc(3.2rem / var(--root-multiplier-hf, 1));
  height: calc(3.2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-cta__item-btn .c-icon-btn__icon {
    width: calc(2.4rem / var(--root-multiplier-hf, 1));
    height: calc(2.4rem / var(--root-multiplier-hf, 1));
  }
}
.c-cta__item-btn .c-icon-btn__icon::before {
  width: calc(0.9rem / var(--root-multiplier-hf, 1));
  height: calc(0.9rem / var(--root-multiplier-hf, 1));
  inset-inline-start: calc(50% - calc(0.2rem / var(--root-multiplier-hf, 1)));
}
@media (max-width: 787px) {
  .c-cta__item-btn .c-icon-btn__icon::before {
    width: calc(0.7rem / var(--root-multiplier-hf, 1));
    height: calc(0.7rem / var(--root-multiplier-hf, 1));
  }
}

/*.c-cta__item:has(.c-cta__item-btn .c-icon-btn__icon.m-new-window) {
  .c-cta__item-ttl small {
    font-size: 18px;
  }
  .c-cta__item-txt {
    font-size: 14px;
  }
  .c-cta__item-btn {
    font-size: 16px;
  }
}*/
.c-solving-cta:not(:first-child) {
  margin-block-start: calc(10rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-solving-cta:not(:first-child) {
    margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
  }
}
.c-solving-cta:last-child {
  margin-block-end: calc(10rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-solving-cta:last-child {
    margin-block-end: calc(4rem / var(--root-multiplier-hf, 1));
  }
}
.c-solving-cta + * {
  margin-block-start: calc(10rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-solving-cta + * {
    margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
  }
}

.c-solving-cta__inr {
  display: block flex;
  align-items: center;
  gap: calc(5.4rem / var(--root-multiplier-hf, 1));
  background: #E9F4F3;
  padding-inline: calc(8.2rem / var(--root-multiplier-hf, 1));
  padding-block: calc(3.8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1023px) {
  .c-solving-cta__inr {
    flex-direction: column;
    align-items: flex-start;
    gap: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 787px) {
  .c-solving-cta__inr {
    margin-inline: calc(-1.9rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(1.5rem / var(--root-multiplier-hf, 1));
    padding-block: calc(2rem / var(--root-multiplier-hf, 1));
  }
}

.c-solving-cta__txt {
  width: calc(100% - calc(5.4rem / var(--root-multiplier-hf, 1)) - calc(39rem / var(--root-multiplier-hf, 1)));
}
@media (max-width: 1023px) {
  .c-solving-cta__txt {
    width: 100%;
  }
}

.c-solving-cta__txt-ttl {
  color: #00867e;
  font-size: calc(2.8rem / var(--root-multiplier-hf, 1));
  line-height: 1.4;
  font-weight: 700;
}
@media (max-width: 787px) {
  .c-solving-cta__txt-ttl {
    font-size: 18px;
  }
}

.c-solving-cta__txt-par {
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  line-height: 1.4;
  margin-block-start: calc(2.4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-solving-cta__txt-par {
    font-size: 14px;
    margin-block-start: calc(1.4rem / var(--root-multiplier-hf, 1));
  }
}

.c-solving-cta__links {
  display: flex block;
  flex-direction: column;
  gap: calc(2rem / var(--root-multiplier-hf, 1));
  width: calc(39rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1023px) {
  .c-solving-cta__links {
    width: 100%;
    max-width: calc(39rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 787px) {
  .c-solving-cta__links {
    gap: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-solving-cta__link {
  display: flex block;
  align-items: center;
  gap: calc(1.8rem / var(--root-multiplier-hf, 1));
  color: #fff;
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
  line-height: 1.5;
  padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
  padding-block: calc(1.2rem / var(--root-multiplier-hf, 1));
  border: 2px solid;
  border-radius: 9999px;
  transition: background 0.3s ease;
}
@media (max-width: 787px) {
  .c-solving-cta__link {
    font-size: 16px;
    gap: calc(3rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(1rem / var(--root-multiplier-hf, 1));
    padding-block: calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}
.c-solving-cta__link.m-green {
  background: #00948b;
  border-color: #00948b;
}
.c-solving-cta__link.m-orange {
  background: #e66f40;
  border-color: #e66f40;
}
.c-solving-cta__link.m-blue {
  background: #2d448f;
  border-color: #2d448f;
}
.c-solving-cta__link:hover {
  background: #fff;
}
.c-solving-cta__link:hover.m-green {
  color: #00948b;
}
.c-solving-cta__link:hover.m-orange {
  color: #e66f40;
}
.c-solving-cta__link:hover.m-blue {
  color: #2d448f;
}
.c-solving-cta__link:hover .c-solving-cta__link__txt {
  color: currentColor;
}
.c-solving-cta__link:hover {
  text-decoration: none !important;
}

.c-solving-cta__link__arrow {
  position: relative;
  width: calc(3.4rem / var(--root-multiplier-hf, 1));
  border: 1px solid currentColor;
  border-radius: 50%;
  aspect-ratio: 1/1;
  transition: border 0.3s ease;
}
@media (max-width: 787px) {
  .c-solving-cta__link__arrow {
    width: calc(2.7rem / var(--root-multiplier-hf, 1));
  }
}
.c-solving-cta__link__arrow::before {
  content: "";
  position: absolute;
  inset-inline-start: calc(50% - 2px);
  inset-block-start: 50%;
  translate: -50% -50%;
  width: calc(1.2rem / var(--root-multiplier-hf, 1));
  height: calc(1.2rem / var(--root-multiplier-hf, 1));
  border-inline-end: 2px solid currentColor;
  border-block-end: 2px solid currentColor;
  rotate: -45deg;
  transition: border 0.3s ease;
}
@media (max-width: 787px) {
  .c-solving-cta__link__arrow::before {
    width: calc(1rem / var(--root-multiplier-hf, 1));
    height: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-solving-cta__link__txt {
  font-weight: 700;
}

.c-bnr-store {
  position: relative;
  margin-inline: auto;
  max-width: calc(108rem / var(--root-multiplier-hf, 1));
  background: #fff;
  border: 1px solid #B3B3B3;
}
.c-bnr-store::before, .c-bnr-store::after {
  content: "";
  position: absolute;
  background: url("../image/banner_bg.svg?rev=743b3125774a") 0 0/cover no-repeat;
  width: calc(22rem / var(--root-multiplier-hf, 1));
  height: calc(12rem / var(--root-multiplier-hf, 1));
  pointer-events: none;
  z-index: 1;
}
@media (max-width: 787px) {
  .c-bnr-store::before, .c-bnr-store::after {
    width: calc(12.3rem / var(--root-multiplier-hf, 1));
    height: calc(6.7rem / var(--root-multiplier-hf, 1));
  }
}
.c-bnr-store::before {
  inset-inline-start: 0;
  inset-block-start: 0;
}
.c-bnr-store::after {
  inset-inline-end: 0;
  inset-block-end: 0;
  scale: -1 -1;
}
.c-bnr-store a {
  display: flow-root block;
  color: #333;
  padding-inline: calc(3.2rem / var(--root-multiplier-hf, 1));
  padding-block: calc(3.2rem / var(--root-multiplier-hf, 1)) calc(2.4rem / var(--root-multiplier-hf, 1));
  transition: opacity 0.3s ease;
}
@media (max-width: 787px) {
  .c-bnr-store a {
    padding-inline: calc(3rem / var(--root-multiplier-hf, 1));
    padding-block: calc(3.8rem / var(--root-multiplier-hf, 1)) calc(2.8rem / var(--root-multiplier-hf, 1));
  }
}
.c-bnr-store a:hover {
  color: inherit;
  text-decoration: none !important;
  opacity: 0.7;
}

.c-bnr-store__logo {
  position: relative;
  width: calc(30rem / var(--root-multiplier-hf, 1));
  margin-inline: auto;
  z-index: 2;
}
@media (max-width: 787px) {
  .c-bnr-store__logo {
    width: calc(16rem / var(--root-multiplier-hf, 1));
  }
  .c-bnr-store__logo.sp_mapdesign_img {
    width: calc(25rem / var(--root-multiplier-hf, 1));
  }
}

.c-bnr-store__catch {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.35;
  text-align: center;
  margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-bnr-store__catch {
    margin-block-start: calc(0.5rem / var(--root-multiplier-hf, 1));
  }
}

.c-bnr-store__body {
  position: relative;
  margin-block-start: calc(2.2rem / var(--root-multiplier-hf, 1));
  z-index: 2;
}
@media (max-width: 787px) {
  .c-bnr-store__body {
    margin-block-start: calc(1.8rem / var(--root-multiplier-hf, 1));
  }
}

.c-bnr-store__txt {
  font-size: 16px;
  text-align: center;
  text-wrap: pretty;
}
@media (max-width: 787px) {
  .c-bnr-store__txt {
    font-size: 14px;
  }
}

@media (min-width: 788px) {
  .p-store-banner > a {
    padding-inline: calc(1.6rem / var(--root-multiplier-hf, 1));
  }
}

.c-bnr-store__btn {
  width: calc(25rem / var(--root-multiplier-hf, 1));
  margin-inline: auto;
  margin-block-start: calc(1.4rem / var(--root-multiplier-hf, 1));
  padding-inline: calc(4.8rem / var(--root-multiplier-hf, 1)) calc(1.4rem / var(--root-multiplier-hf, 1));
  pointer-events: none;
}
.c-bnr-store__btn_big {
  width: calc(42rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(1.4rem / var(--root-multiplier-hf, 1));
  pointer-events: none;
  margin-inline: auto;
  padding-inline: calc(4.8rem / var(--root-multiplier-hf, 1)) calc(1.4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-bnr-store__btn {
    width: calc(20rem / var(--root-multiplier-hf, 1));
    font-size: 15px;
    justify-content: center;
    gap: calc(1.2rem / var(--root-multiplier-hf, 1));
    max-width: 100%;
    margin-block-start: calc(1.8rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(3rem / var(--root-multiplier-hf, 1));
  }
  .c-bnr-store__btn .c-icon-btn__icon {
    position: relative;
    inset: auto;
    translate: none;
    flex: 0 0 auto;
  }
  .c-bnr-store__btn span {
    width: auto;
    text-align: center;
    white-space: nowrap;
  }
}

.c-bnr-catalog {
  position: relative;
  margin-inline: auto;
  max-width: calc(108rem / var(--root-multiplier-hf, 1));
  background: #fff;
  border: 1px solid #B3B3B3;
}
.c-bnr-catalog::before, .c-bnr-catalog::after {
  content: "";
  position: absolute;
  background: url("../image/banner_bg.svg?rev=743b3125774a") 0 0/cover no-repeat;
  width: calc(24.6rem / var(--root-multiplier-hf, 1));
  height: calc(13.4rem / var(--root-multiplier-hf, 1));
  pointer-events: none;
  z-index: 1;
}
@media (max-width: 787px) {
  .c-bnr-catalog::before, .c-bnr-catalog::after {
    width: calc(12.3rem / var(--root-multiplier-hf, 1));
    height: calc(6.7rem / var(--root-multiplier-hf, 1));
  }
}
.c-bnr-catalog::before {
  inset-inline-start: 0;
  inset-block-start: 0;
}
.c-bnr-catalog::after {
  inset-inline-end: 0;
  inset-block-end: 0;
  scale: -1 -1;
}

.c-bnr-catalog__link {
  position: relative;
  display: block flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  flex-wrap: wrap;
  padding-inline: calc(3rem / var(--root-multiplier-hf, 1));
  padding-block: calc(4.2rem / var(--root-multiplier-hf, 1)) calc(3.8rem / var(--root-multiplier-hf, 1));
  transition: opacity 0.3s ease;
  z-index: 2;
}
@media (max-width: 787px) {
  .c-bnr-catalog__link {
    padding-inline: calc(3rem / var(--root-multiplier-hf, 1));
    padding-block: calc(2.8rem / var(--root-multiplier-hf, 1)) calc(2.4rem / var(--root-multiplier-hf, 1));
  }
}
.c-bnr-catalog__link:hover {
  color: inherit;
  text-decoration: none !important;
  opacity: 0.7;
}
a.c-bnr-catalog__link {
  color: #333;
}

.c-bnr-catalog__photo {
  position: relative;
  max-width: calc(35.6rem / var(--root-multiplier-hf, 1));
  z-index: 2;
}
@media (max-width: 787px) {
  .c-bnr-catalog__photo {
    max-width: calc(22.8rem / var(--root-multiplier-hf, 1));
  }
}

.c-bnr-catalog__main {
  position: relative;
  max-width: calc(51.6rem / var(--root-multiplier-hf, 1));
  z-index: 2;
}

.c-bnr-catalog__ttl {
  display: block flex;
  justify-content: center;
  align-items: center;
  gap: calc(1.2rem / var(--root-multiplier-hf, 1));
  color: #00645e;
  font-size: calc(3.2rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: 1;
}
@media (max-width: 787px) {
  .c-bnr-catalog__ttl {
    gap: calc(0.6rem / var(--root-multiplier-hf, 1));
    font-size: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.c-bnr-catalog__ttl img {
  width: calc(3.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-bnr-catalog__ttl img {
    width: calc(2.4rem / var(--root-multiplier-hf, 1));
  }
}

.c-bnr-catalog__txt {
  margin-block-start: calc(2.1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-bnr-catalog__txt {
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.c-bnr-catalog__btn {
  font-size: 16px;
  margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  padding-inline: calc(3.4rem / var(--root-multiplier-hf, 1));
  pointer-events: none;
}
@media (max-width: 787px) {
  .c-bnr-catalog__btn {
    font-size: 16px;
    max-width: 100%;
    margin-inline: auto;
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
    padding-block: calc(1rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(3.4rem / var(--root-multiplier-hf, 1));
  }
}
.c-bnr-catalog__btn .c-icon-btn__icon {
  width: calc(1.7rem / var(--root-multiplier-hf, 1));
  height: calc(1.7rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-bnr-catalog__btn .c-icon-btn__icon {
    width: calc(1.4rem / var(--root-multiplier-hf, 1));
    height: calc(1.4rem / var(--root-multiplier-hf, 1));
  }
}
.c-bnr-catalog__btn .c-icon-btn__icon::before {
  width: calc(0.4rem / var(--root-multiplier-hf, 1));
  height: calc(0.4rem / var(--root-multiplier-hf, 1));
  border-width: 1px;
}
@media (max-width: 787px) {
  .c-bnr-catalog__btn .c-icon-btn__icon::before {
    width: calc(0.3rem / var(--root-multiplier-hf, 1));
    height: calc(0.3rem / var(--root-multiplier-hf, 1));
  }
}
.c-bnr-catalog__btn span {
  width: 100%;
  text-align: center;
}

.c-page-top {
  inset-inline-end: calc(4.8rem / var(--root-multiplier-hf, 1));
  display: block grid;
  place-items: center;
  place-content: center;
  gap: calc(0.8rem / var(--root-multiplier-hf, 1));
  color: #fff;
  width: calc(9rem / var(--root-multiplier-hf, 1));
  background: #00867e;
  border-radius: 50%;
  aspect-ratio: 1/1;
  translate: 0 200%;
  pointer-events: none;
  transition: 0.5s ease translate, 0.4s ease filter;
  z-index: 10;
}
@media (max-width: 787px) {
  .c-page-top {
    inset-inline-end: calc(2rem / var(--root-multiplier-hf, 1));
    gap: calc(0.4rem / var(--root-multiplier-hf, 1));
    width: calc(6rem / var(--root-multiplier-hf, 1));
  }
}
.c-page-top:hover {
  color: currentColor !important;
  text-decoration: none !important;
  filter: drop-shadow(0 0 0.5rem rgba(0, 0, 0, 0.4));
}
.c-page-top[aria-hidden=false] {
  translate: 0 0;
  pointer-events: auto;
}
.c-page-top[data-fixed=false] {
  position: fixed;
  inset-block-end: calc(4.8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-page-top[data-fixed=false] {
    inset-block-end: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.c-page-top[data-fixed=true] {
  position: absolute;
  inset-block-start: calc(-4.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-page-top[data-fixed=true] {
    inset-block-start: calc(-3rem / var(--root-multiplier-hf, 1));
  }
}
.c-page-top span {
  font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.01em;
  text-align: center;
}
@media (max-width: 787px) {
  .c-page-top span {
    font-size: calc(0.9rem / var(--root-multiplier-hf, 1));
  }
}
.c-page-top svg {
  width: calc(1.1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .c-page-top svg {
    width: calc(0.8rem / var(--root-multiplier-hf, 1));
  }
}

.l-main {
  position: relative;
  border-top: 1px solid #EBEBEB;
}
@media (max-width: 787px) {
  .l-main {
    box-shadow: none;
    border-top: none;
  }
}

.p-home-hero {
  --home-hero-bg-width: clamp(67.5rem, 75vw, 145rem);
  position: relative;
  isolation: isolate;
  overflow: clip;
  margin-block-start: -5rem;
  padding: 5rem 4rem 3rem;
}
.p-home-hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  inset-inline-start: max(25rem, 31.25vw);
  inset-block-start: calc(9rem - var(--home-hero-bg-width) * 0.16);
  width: var(--home-hero-bg-width);
  aspect-ratio: 2201/1478;
  background: url("/product/category/img/product_page_mv.png") right top/cover no-repeat;
  mask: url("/product/category/img/product_page_bg.png") center/100% 100% no-repeat;
}
@media (max-width: 787px) {
  .p-home-hero {
    margin-block-start: 0;
    padding: 12.8rem 0 2.8rem;
    background: url("/product/category/img/product_page_bg_sp.png") center 0/100% auto no-repeat;
  }
  .p-home-hero::before {
    display: none;
  }
}
.p-home-hero .p-home-hero__top {
  margin-inline: auto;
  max-width: calc(144rem / var(--root-multiplier-hf, 1));
  padding-block-start: 8rem;
  padding-block-end: 6rem;
}
@media (max-width: 787px) {
  .p-home-hero .p-home-hero__top {
    padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
    padding-block-start: calc(1rem / var(--root-multiplier-hf, 1));
    padding-block-start: 2rem;
    padding-block-end: 0rem;
  }
}
.p-home-hero .p-home-hero__title {
  color: #00867e;
  font-size: calc(4.8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-home-hero .p-home-hero__title {
    font-size: calc(2.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-home-hero .p-home-hero__catch {
  margin-top: 0.5em;
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-home-hero .p-home-hero__catch {
    font-size: calc(1.1rem / var(--root-multiplier-hf, 1));
  }
}
.p-home-hero .p-home-hero__bottom {
  max-width: calc(128rem / var(--root-multiplier-hf, 1));
  margin-inline: auto;
  margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-home-hero .p-home-hero__bottom {
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.p-home-hero .p-home-hero__bottom .p-home-hero__bottom__inner {
  border-radius: calc(1rem / var(--root-multiplier-hf, 1));
  background-image: linear-gradient(rgba(255, 255, 255, 0.7) 8%, rgba(231, 237, 238, 0.7) 47%);
}
.p-home-hero .p-home-hero-topic {
  position: relative;
  overflow: hidden;
  padding: calc(4rem / var(--root-multiplier-hf, 1)) calc(3.5rem / var(--root-multiplier-hf, 1)) calc(3rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-home-hero .p-home-hero-topic {
    padding: calc(2rem / var(--root-multiplier-hf, 1)) calc(2rem / var(--root-multiplier-hf, 1)) calc(4rem / var(--root-multiplier-hf, 1));
  }
}
.p-home-hero .p-home-hero-topic .swiper-slide {
  height: auto;
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic-card {
  height: 100%;
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic-card:hover {
  color: initial;
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic-card:hover .p-home-hero-topic-card__thumb {
  opacity: 0.7;
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic-card .p-home-hero-topic-card__thumb {
  aspect-ratio: 370/208;
  margin: 0;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  position: relative;
  display: flex;
  align-items: flex-end;
  border-radius: 0;
  transition: opacity 0.3s ease;
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic-card .p-home-hero-topic-card__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic-card p {
  line-height: 1.65;
  margin-top: 1em;
  font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-home-hero .p-home-hero-topic .p-home-hero-topic-card p {
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic__nav {
  position: absolute;
  top: calc(13rem / var(--root-multiplier-hf, 1));
  z-index: 4;
}
@media (max-width: 787px) {
  .p-home-hero .p-home-hero-topic .p-home-hero-topic__nav {
    top: calc(8rem / var(--root-multiplier-hf, 1));
  }
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic__nav--prev {
  left: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-home-hero .p-home-hero-topic .p-home-hero-topic__nav--prev {
    left: calc(0.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic__nav--next {
  right: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-home-hero .p-home-hero-topic .p-home-hero-topic__nav--next {
    right: calc(0.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic__meta {
  margin-top: calc(1.8rem / var(--root-multiplier-hf, 1));
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-home-hero .p-home-hero-topic .p-home-hero-topic__meta {
    gap: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic__pagination {
  width: auto !important;
  display: flex;
  align-items: center;
  gap: calc(0.8rem / var(--root-multiplier-hf, 1));
  width: calc(0.8rem / var(--root-multiplier-hf, 1));
  height: calc(0.8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-home-hero .p-home-hero-topic .p-home-hero-topic__pagination {
    gap: calc(1.6rem / var(--root-multiplier-hf, 1));
    width: calc(0.6rem / var(--root-multiplier-hf, 1));
    height: calc(0.6rem / var(--root-multiplier-hf, 1));
  }
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic__pagination .swiper-pagination-bullet {
  margin: 0 !important;
  width: calc(0.8rem / var(--root-multiplier-hf, 1));
  height: calc(0.8rem / var(--root-multiplier-hf, 1));
  opacity: 1;
  background: #00948b;
}
@media (max-width: 787px) {
  .p-home-hero .p-home-hero-topic .p-home-hero-topic__pagination .swiper-pagination-bullet {
    width: calc(0.6rem / var(--root-multiplier-hf, 1));
    height: calc(0.6rem / var(--root-multiplier-hf, 1));
  }
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic__pagination .swiper-pagination-bullet-active {
  background: #13161a;
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic__pagination .swiper-pagination-bullets-dynamic,
.p-home-hero .p-home-hero-topic .p-home-hero-topic__pagination .swiper-pagination-bullet-active-next,
.p-home-hero .p-home-hero-topic .p-home-hero-topic__pagination .swiper-pagination-bullet-active-prev,
.p-home-hero .p-home-hero-topic .p-home-hero-topic__pagination .swiper-pagination-bullet-active-next-next,
.p-home-hero .p-home-hero-topic .p-home-hero-topic__pagination .swiper-pagination-bullet-active-prev-prev {
  transform: scale(1);
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic__autoplay {
  width: calc(2.2rem / var(--root-multiplier-hf, 1));
  height: calc(1.7rem / var(--root-multiplier-hf, 1));
  border-radius: 9999px;
  background: #00948b;
  color: transparent;
  position: relative;
  overflow: hidden;
  cursor: pointer;
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic__autoplay::before, .p-home-hero .p-home-hero-topic .p-home-hero-topic__autoplay::after {
  content: "";
  position: absolute;
  top: 50%;
  width: 2px;
  height: calc(0.7rem / var(--root-multiplier-hf, 1));
  background: #fff;
  transform: translateY(-50%);
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic__autoplay::before {
  left: calc(0.8rem / var(--root-multiplier-hf, 1));
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic__autoplay::after {
  right: calc(0.8rem / var(--root-multiplier-hf, 1));
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic__autoplay.is-paused::before {
  left: 50%;
  top: 50%;
  width: 0;
  height: 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 4px solid #fff;
  background: transparent;
  transform: translate(-50%, -50%);
}
.p-home-hero .p-home-hero-topic .p-home-hero-topic__autoplay.is-paused::after {
  display: none;
}

.p-section-head.m-has-bg {
  background: #28373a;
  padding-block: calc(7rem / var(--root-multiplier-hf, 1));
  background: url(../image/section-head_bg.png?rev=743b3125774a) 0 0/cover no-repeat;
}
@media (max-width: 787px) {
  .p-section-head.m-has-bg {
    background-image: url(../image/section-head_bg_sp.jpg?rev=743b3125774a);
    padding-block: calc(3.2rem / var(--root-multiplier-hf, 1)) calc(8rem / var(--root-multiplier-hf, 1));
  }
}
.p-section-head a:hover {
  text-decoration: none !important;
  opacity: 0.7;
}
.p-section-head a:hover .p-section-head__arrow {
  translate: calc(0.5rem / var(--root-multiplier-hf, 1)) 0;
}

.p-section-head__container {
  width: 100%;
  max-width: calc(154rem / var(--root-multiplier-hf, 1));
  margin-inline: auto;
  padding-inline: calc(5rem / var(--root-multiplier-hf, 1));
  line-height: 1.2;
}
@media (max-width: 787px) {
  .p-section-head__container {
    padding-inline: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-section-head__container.m-wide {
  max-width: calc(160rem / var(--root-multiplier-hf, 1));
}

.p-section-head__wrap {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: calc(2rem / var(--root-multiplier-hf, 1));
  width: fit-content;
  transition: opacity 0.3s ease;
}
@media (max-width: 787px) {
  .p-section-head__wrap {
    gap: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.p-section-head__arrow {
  background: #00645e;
  transition: translate 0.3s ease;
}

.p-section-head__ttl {
  color: #111;
}
.p-section-head__ttl.m-color-white {
  color: #fff;
}

.p-section-head__ttl-main {
  font-size: calc(6.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-section-head__ttl-main {
    font-size: calc(3.5rem / var(--root-multiplier-hf, 1));
  }
}

.p-section-head__ttl-sub {
  font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-section-head__ttl-sub {
    font-size: 12px;
  }
}

.section-head {
  background: radial-gradient(circle at 8% 0, #1d3945, #081723 74%);
  padding: 46px 0 22px;
}
.section-head h2 {
  color: #fff;
}

.section-head h2,
.section-title {
  font-size: 50px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.015em;
  display: inline-flex;
  gap: 9px;
  align-items: center;
}
.section-head h2 span,
.section-title span {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #07aaa2;
  position: relative;
  display: inline-block;
}
.section-head h2 span::after,
.section-title span::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 4px;
  height: 4px;
  border-top: 1.5px solid #fff;
  border-right: 1.5px solid #fff;
  transform: translate(-62%, -50%) rotate(45deg);
}

.section-sub,
.section-head p {
  margin-top: 3px;
  color: #8ea2a7;
  font-size: 11px;
}

.section-sub--white {
  color: #88a0a8;
}

.section-light {
  background: #f2f6f7;
}

.p-service {
  max-width: calc(144rem / var(--root-multiplier-hf, 1));
  margin: calc(-3rem / var(--root-multiplier-hf, 1)) auto 0;
  padding-bottom: calc(13rem / var(--root-multiplier-hf, 1));
  overflow: hidden;
}
@media (max-width: 787px) {
  .p-service {
    margin-top: calc(-4rem / var(--root-multiplier-hf, 1));
    padding-bottom: calc(6rem / var(--root-multiplier-hf, 1));
  }
}
.p-service .p-service__body {
  padding: 0 calc(9rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-service .p-service__body {
    padding: 0 calc(1.4rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 1020px) {
  .p-service .p-service__body {
    padding: 0 calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-service .p-service__btn {
  min-width: calc(30rem / var(--root-multiplier-hf, 1));
  margin-inline: auto;
  margin-block-start: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-service .p-service__btn {
    min-width: calc(24rem / var(--root-multiplier-hf, 1));
  }
}
.p-service .c-service-card__ttl {
  font-size: 18px;
}
.p-service .c-service-card__info {
  font-size: 14px;
}
.p-service .c-service-card__panel {
  font-size: 16px;
}
@media (max-width: 787px) {
  .p-service .c-category-list__item a:hover .c-category-list__item-mask, .p-service .c-category-list__item a:focus:not(:focus-visible) .c-category-list__item-mask, .p-service .c-category-list__item a:focus-within:not(:focus-visible) .c-category-list__item-mask {
    opacity: 1;
    pointer-events: auto;
  }
  .p-service .c-category-list__item a:focus-visible .c-category-list__item-mask {
    opacity: 0;
    pointer-events: none;
  }
}

.p-tab {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(0.5rem / var(--root-multiplier-hf, 1));
  margin-bottom: calc(6rem / var(--root-multiplier-hf, 1));
  border-bottom: 1px solid #009e95;
}
@media (max-width: 787px) {
  .p-tab {
    margin-bottom: calc(3rem / var(--root-multiplier-hf, 1));
    margin-inline: calc(-1.4rem / var(--root-multiplier-hf, 1));
    padding: 0 calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-tab .p-tab__item {
  cursor: pointer;
  display: block;
  min-height: calc(8.3rem / var(--root-multiplier-hf, 1));
  background: #fff;
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
  padding: 0 calc(4rem / var(--root-multiplier-hf, 1));
  border-radius: calc(0.5rem / var(--root-multiplier-hf, 1)) calc(0.5rem / var(--root-multiplier-hf, 1)) 0 0;
  position: relative;
  font-weight: 700;
}
@media (max-width: 787px) {
  .p-tab .p-tab__item {
    font-size: calc(0.8rem / var(--root-multiplier-hf, 1));
    min-height: calc(4rem / var(--root-multiplier-hf, 1));
    padding: 0 calc(0.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-tab .p-tab__item::after {
  content: "";
  display: block;
  width: calc(0.8rem / var(--root-multiplier-hf, 1));
  height: calc(0.8rem / var(--root-multiplier-hf, 1));
  border-top: 2px solid #009e95;
  border-right: 2px solid #009e95;
  transform: rotate(135deg) translateY(-50%);
  position: absolute;
  top: 42%;
  right: calc(2.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-tab .p-tab__item::after {
    display: none;
  }
}
@media (max-width: 787px) {
  .p-tab .p-tab__item span {
    font-size: 1.4em;
  }
}
.p-tab .p-tab__item.is-active {
  background: #06a39f;
  color: #fff;
}
.p-tab .p-tab__item.is-active::after {
  border-color: #fff;
}
.p-tab .p-tab__item:hover {
  background: #00867e;
  color: #fff;
}
.p-tab .p-tab__item:hover::after {
  border-color: #fff;
}
.p-tab.type-2 {
  margin-bottom: 0;
}
.p-tab.type-2 .p-tab__item {
  background: #f2f6f7;
  font-size: calc(1.9rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-tab.type-2 .p-tab__item {
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.p-tab.type-2 .p-tab__item.is-active, .p-tab.type-2 .p-tab__item:hover {
  background: #00867e;
}
.p-tab.type-3 {
  margin-bottom: 0;
  grid-template-columns: repeat(3, 1fr);
}
.p-tab.type-3 .p-tab__item {
  background: #f2f6f7;
  font-size: calc(1.9rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1330px) {
  .p-tab.type-3 .p-tab__item {
    font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
    line-height: 1.45;
    padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
    white-space: normal;
  }
}
@media (max-width: 787px) {
  .p-tab.type-3 .p-tab__item {
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
    line-height: normal;
    padding: 0 calc(0.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-tab.type-3 .p-tab__item.is-active, .p-tab.type-3 .p-tab__item:hover {
  background: #00867e;
}

.p-service-panel[hidden] {
  display: none;
}

.p-store-banner {
  margin-block-start: calc(5.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-store-banner .c-bnr-store__catch {
    font-size: 18px;
  }
  .p-store-banner .c-bnr-store__txt {
    font-size: 14px;
  }
  .p-store-banner .c-bnr-store__btn {
    justify-content: center;
    font-size: 15px;
  }
  .p-store-banner .c-bnr-store__btn .c-icon-btn__icon {
    position: relative;
    inset: auto;
    translate: none;
    flex: 0 0 auto;
  }
  .p-store-banner .c-bnr-store__btn span {
    width: auto;
    text-align: center;
  }
}

.p-cases {
  background: url(../image/cases_bg.jpg?rev=743b3125774a) 0 0/cover no-repeat;
  padding: calc(10rem / var(--root-multiplier-hf, 1)) 0;
}
@media (max-width: 787px) {
  .p-cases {
    background: url(../image/cases_bg_sp.jpg?rev=743b3125774a) 0 0/cover no-repeat;
    padding: calc(4rem / var(--root-multiplier-hf, 1)) 0 calc(5rem / var(--root-multiplier-hf, 1));
  }
}
.p-cases .p-cases__viewport {
  width: 100%;
  overflow: hidden;
  clip-path: inset(0 1px);
  margin-top: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-cases .p-cases__viewport {
    margin-top: calc(3rem / var(--root-multiplier-hf, 1));
  }
}
.p-cases .p-cases__slider {
  overflow: visible;
  max-width: none;
  position: relative;
}
.p-cases .p-cases__slider .swiper-slide {
  height: auto;
  display: flex;
  justify-content: center;
  flex: 0 0 auto;
  transition: none;
  width: calc(45rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-cases .p-cases__slider .swiper-slide {
    width: calc(25rem / var(--root-multiplier-hf, 1));
  }
}
.p-cases .p-cases__slider .swiper-slide .p-case-card {
  flex-shrink: 0;
  transform: scale(0.85);
  transition: transform 0.5s, opacity 0.5s, padding 0.5s;
  transform-origin: center;
  width: 100%;
}
@media (max-width: 787px) {
  .p-cases .p-cases__slider .swiper-slide .p-case-card {
    transform: scale(1);
  }
}
.p-cases .p-cases__slider .swiper-slide-active .p-case-card {
  transform: scale(1);
}
.p-cases .p-cases__slider .swiper-slide-prev .p-case-card {
  transform: scale(0.8) translateX(-5%);
}
@media (max-width: 787px) {
  .p-cases .p-cases__slider .swiper-slide-prev .p-case-card {
    transform: scale(1) translateX(0);
  }
}
.p-cases .p-cases__slider .swiper-slide-next .p-case-card {
  transform: scale(0.8) translateX(5%);
}
@media (max-width: 787px) {
  .p-cases .p-cases__slider .swiper-slide-next .p-case-card {
    transform: scale(1) translateX(0);
  }
}
.p-cases .p-cases__nav {
  position: absolute;
  top: 40%;
  transform: translateY(-50%);
  z-index: 4;
}
@media (max-width: 787px) {
  .p-cases .p-cases__nav {
    top: calc(7.5rem / var(--root-multiplier-hf, 1));
    transform: initial;
  }
}
.p-cases .p-cases__nav--prev {
  left: calc(50% - 195px - 16px - calc(3.7rem / var(--root-multiplier-hf, 1)));
}
@media (max-width: 787px) {
  .p-cases .p-cases__nav--prev {
    left: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-cases .p-cases__nav--next {
  left: calc(50% + 195px + 16px);
}
@media (max-width: 787px) {
  .p-cases .p-cases__nav--next {
    left: initial;
    right: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}

.p-case-card {
  min-height: 100%;
  background: transparent;
  display: flex;
  flex-direction: column;
  text-align: left;
  height: 100%;
}
.p-case-card:hover {
  color: #fff;
  text-decoration: none !important;
}
.p-case-card:hover .p-case-card__thumb {
  opacity: 0.7;
}
.p-case-card:hover .p-case-card__ttl {
  text-decoration: underline;
}
.p-case-card .p-case-card__thumb {
  display: block;
  aspect-ratio: 677/407;
  background: #fff;
  border: 1px solid #d7e0e3;
  transition: opacity 0.3s ease;
}
.p-case-card .p-case-card__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.p-case-card .p-case-card__ttl {
  margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  font-size: calc(2.1rem / var(--root-multiplier-hf, 1));
  color: #fff;
  font-weight: 600;
}
@media (max-width: 787px) {
  .p-case-card .p-case-card__ttl {
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
    font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
  }
}
.p-case-card .p-case-card__meta {
  margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-case-card .p-case-card__meta {
    margin-block-start: calc(0.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-case-card .p-case-card__meta .c-defin__dd {
  color: #fff;
}
.p-case-card .p-case-card__desc {
  color: rgba(255, 255, 255, 0.72);
  font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
  line-height: 1.8076923077;
  margin-block-start: 1em;
}
@media (max-width: 787px) {
  .p-case-card .p-case-card__desc {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
    margin-block-start: 0.5em;
  }
}

.p-product-list {
  max-width: calc(126rem / var(--root-multiplier-hf, 1));
  margin-inline: auto;
}

.p-product__empty {
  display: flex block;
  align-items: center;
  justify-content: center;
  min-height: calc(18rem / var(--root-multiplier-hf, 1));
  padding: calc(4rem / var(--root-multiplier-hf, 1)) calc(2rem / var(--root-multiplier-hf, 1));
  color: #111;
  background: #f2f6f7;
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  text-align: center;
}
.p-product__empty[hidden] {
  display: none;
}
@media (max-width: 787px) {
  .p-product__empty {
    min-height: calc(12rem / var(--root-multiplier-hf, 1));
    padding: calc(3rem / var(--root-multiplier-hf, 1)) calc(1.5rem / var(--root-multiplier-hf, 1));
    font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
  }
}

.p-product__list-head {
  max-width: calc(126rem / var(--root-multiplier-hf, 1));
  margin: calc(3.6rem / var(--root-multiplier-hf, 1)) auto calc(4rem / var(--root-multiplier-hf, 1));
}
.p-product__list-head::before {
  content: "";
  display: block;
  width: calc(6.1rem / var(--root-multiplier-hf, 1));
  height: calc(0.6rem / var(--root-multiplier-hf, 1));
  margin-block-end: calc(1.2rem / var(--root-multiplier-hf, 1));
  background: #00948b;
}

.p-product__list-title {
  margin: 0;
  color: #111;
  font-size: calc(3.8rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: 1.32;
}
@media (max-width: 787px) {
  .p-product__list-title {
    font-size: calc(2.6rem / var(--root-multiplier-hf, 1));
  }
}

.p-product-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(5.6rem / var(--root-multiplier-hf, 1)) calc(4.5rem / var(--root-multiplier-hf, 1));
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 1020px) {
  .p-product-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 787px) {
  .p-product-grid {
    gap: calc(2rem / var(--root-multiplier-hf, 1)) calc(1.4rem / var(--root-multiplier-hf, 1));
    grid-template-columns: 1fr;
  }
}

.p-product-card {
  background: transparent;
}
.p-product-card .p-product-card__link {
  display: block;
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.p-product-card .p-product-card__link:hover {
  text-decoration: none !important;
  opacity: 0.7;
}
.p-product-card .p-product-card__thumb {
  background: #e9ecec;
  aspect-ratio: 16/9;
  overflow: hidden;
  margin-bottom: calc(1.5rem / var(--root-multiplier-hf, 1));
}
.p-product-card .p-product-card__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.p-product-card .p-product-card__date {
  font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
  font-weight: 800;
  color: #00645e;
  margin-bottom: calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-product-card .p-product-card__date {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}
.p-product-card .p-product-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: calc(0.8rem / var(--root-multiplier-hf, 1)) calc(1rem / var(--root-multiplier-hf, 1));
  margin-bottom: calc(1.2rem / var(--root-multiplier-hf, 1));
}
.p-product-card .p-product-card__title {
  font-weight: 400;
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  line-height: 1.5;
  margin: 0 0 calc(1rem / var(--root-multiplier-hf, 1)) 0;
}
@media (max-width: 787px) {
  .p-product-card .p-product-card__title {
    font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
  }
}
.p-product-card .p-product-card__title.fw-b {
  font-weight: 700;
}
.p-product-card .p-product-card__excerpt {
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  line-height: 1.55;
  margin: 0 0 calc(1rem / var(--root-multiplier-hf, 1)) 0;
}
@media (max-width: 787px) {
  .p-product-card .p-product-card__excerpt {
    font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
  }
}
.p-product-card .p-product-card__meta {
  margin-block-end: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-product-card .p-product-card__meta {
    margin-block-end: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.p-product-card .p-product-card__company {
  font-weight: 700;
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  color: #00645e;
  line-height: 1.45;
  margin-block-end: calc(1.4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-product-card .p-product-card__company {
    font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  }
}
.p-product-card .p-product-card__product {
  color: #00645e;
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: 1.4;
}
@media (max-width: 787px) {
  .p-product-card .p-product-card__product {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}

.c-pill {
  display: inline-block;
  background: #fff;
  padding: calc(0.35rem / var(--root-multiplier-hf, 1)) calc(1rem / var(--root-multiplier-hf, 1));
  border-radius: calc(0.3rem / var(--root-multiplier-hf, 1));
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0;
  border: 1px solid #2B2B2B;
  color: #2B2B2B;
  font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
}
.c-pill.m-black {
  color: #fff;
  background: #2B2B2B;
  border-color: #2B2B2B;
}
.c-pill.m-white {
  color: #2B2B2B;
  background: #fff;
  border-color: #2B2B2B;
}
@media (max-width: 787px) {
  .c-pill {
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
    padding: calc(0.3rem / var(--root-multiplier-hf, 1)) calc(0.8rem / var(--root-multiplier-hf, 1));
  }
}

.p-filter-tags {
  display: flex;
  flex-wrap: wrap;
  gap: calc(1.3rem / var(--root-multiplier-hf, 1)) calc(1rem / var(--root-multiplier-hf, 1));
  padding: calc(3.2rem / var(--root-multiplier-hf, 1)) calc(5rem / var(--root-multiplier-hf, 1)) calc(3rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-filter-tags {
    padding: calc(2.5rem / var(--root-multiplier-hf, 1)) calc(1.5rem / var(--root-multiplier-hf, 1));
    gap: calc(1rem / var(--root-multiplier-hf, 1)) calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.p-filter-tags .p-filter-tags__item {
  background: #fff;
  border: 1px solid #D8D8D8;
  border-radius: 999px;
  font-weight: 600;
  padding: calc(0.5rem / var(--root-multiplier-hf, 1)) calc(2rem / var(--root-multiplier-hf, 1));
  font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
  cursor: pointer;
}
@media (max-width: 787px) {
  .p-filter-tags .p-filter-tags__item {
    padding: calc(0.5rem / var(--root-multiplier-hf, 1)) calc(1.2rem / var(--root-multiplier-hf, 1));
    font-size: calc(1.1rem / var(--root-multiplier-hf, 1));
  }
}
.p-filter-tags .p-filter-tags__item.is-active, .p-filter-tags .p-filter-tags__item:hover {
  background: #00948b;
  color: #fff;
  border-color: #00948b;
}
.p-filter-tags .p-filter-tags__group {
  display: none;
}
.p-filter-tags .p-filter-tags__group.is-active {
  display: flex;
  flex-wrap: wrap;
}
.p-filter-tags .p-filter-tags__group[hidden] {
  display: none;
}
.p-filter-tags .p-filter-tags__group .p-filter-tags__group__inner {
  display: flex;
  flex-wrap: wrap;
  gap: calc(1.3rem / var(--root-multiplier-hf, 1)) calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-filter-tags .p-filter-tags__group .p-filter-tags__group__inner {
    gap: calc(1rem / var(--root-multiplier-hf, 1)) calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.p-product--casestudy .p-product-card__tags {
  align-content: flex-start;
  align-items: flex-start;
}
.p-product-list .p-product-card .c-pill {
  height: 28px;
}
@media (max-width: 787px) {
  .p-product-list .p-product-card .c-pill {
    height: 22px;
  }
}
.p-product--casestudy .p-product-card__company {
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-product--casestudy .p-product-card__company {
    font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
  }
}
.p-product--casestudy .p-product-card__title,
.p-product--casestudy .p-product-card__description {
  color: #111;
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  font-weight: 400;
  line-height: 1.45;
  margin-block-end: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-product--casestudy .p-product-card__title,
  .p-product--casestudy .p-product-card__description {
    font-size: 14px;
    margin-block-end: calc(1.4rem / var(--root-multiplier-hf, 1));
  }
}
.p-product--casestudy .p-product-card__description {
  margin-block-start: 0;
}

.p-product--article .p-product-card__date,
.p-product--article .p-product-card__title {
  color: #00645e;
}
.p-product--article .p-product-card__title {
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
  line-height: 1.25;
  margin-block-end: calc(1.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-product--article .p-product-card__title {
    font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
    margin-block-end: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.p-column {
  padding: calc(8.8rem / var(--root-multiplier-hf, 1)) 0 calc(11.8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-column {
    padding: calc(4rem / var(--root-multiplier-hf, 1)) 0 calc(5.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-column-layout {
  display: grid;
  grid-template-columns: minmax(360px, 1fr) repeat(2, minmax(0, 1fr));
  gap: 0 calc(4rem / var(--root-multiplier-hf, 1));
  align-items: stretch;
  max-width: calc(124rem / var(--root-multiplier-hf, 1));
  margin: calc(2rem / var(--root-multiplier-hf, 1)) auto 0;
  padding: 0 calc(5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-column-layout {
    margin: calc(3rem / var(--root-multiplier-hf, 1)) auto 0;
    display: block;
    padding: 0 calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}

.p-column-card {
  display: block;
}
.p-column-card:hover {
  color: initial;
  text-decoration: none !important;
}
.p-column-card:hover .p-column-card__thumb {
  opacity: 0.7;
}
.p-column-card:hover .p-column-card__title {
  text-decoration: underline;
}
.p-column-card__thumb {
  background: #f0f0f0;
  transition: opacity 0.3s ease;
}
.p-column-card__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-column-card .p-column-card__title {
  color: #009e95;
  line-height: 1.35;
}
.p-column-card .p-column-card__text {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
}
.p-column-card:first-child {
  grid-column: 1/2;
  grid-row: 1/3;
}
@media (max-width: 1020px) {
  .p-column-card:first-child {
    padding-bottom: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-column-card:first-child .p-column-card__thumb {
  aspect-ratio: 365/207;
}
.p-column-card:first-child .p-column-card__title {
  margin-top: 1em;
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-column-card:first-child .p-column-card__title {
    font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-column-card:first-child .p-column-card__text {
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  margin-top: 1em;
  line-height: 1.45;
  order: 4;
}
@media (max-width: 1020px) {
  .p-column-card:first-child .p-column-card__text {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}
.p-column-card:not(:first-child) {
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
  border-top: #bcbcbc solid 1px;
  align-items: center;
  gap: calc(2rem / var(--root-multiplier-hf, 1));
  padding: calc(2rem / var(--root-multiplier-hf, 1)) 0 calc(4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1279px) {
  .p-column-card:not(:first-child) {
    flex-direction: column;
  }
}
@media (max-width: 1020px) {
  .p-column-card:not(:first-child) {
    padding: calc(1.5rem / var(--root-multiplier-hf, 1)) 0;
    gap: calc(1.5rem / var(--root-multiplier-hf, 1));
    flex-direction: row;
  }
}
.p-column-card:not(:first-child) .p-column-card__inner {
  flex: 1;
}
.p-column-card:not(:first-child) .p-column-card__thumb {
  height: calc(12.5rem / var(--root-multiplier-hf, 1));
  width: calc(12.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-column-card:not(:first-child) .p-column-card__thumb {
    height: calc(8.5rem / var(--root-multiplier-hf, 1));
    width: calc(8.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-column-card:not(:first-child) .p-column-card__title {
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  margin-bottom: 0.5em;
}
@media (max-width: 1020px) {
  .p-column-card:not(:first-child) .p-column-card__title {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}
.p-column-card:not(:first-child) .p-column-card__text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-column-card:not(:first-child) .p-column-card__text {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}

.p-event {
  background: url(../image/event_bg.jpg?rev=743b3125774a) 0 0/cover no-repeat;
  padding: calc(8rem / var(--root-multiplier-hf, 1)) 0 calc(9rem / var(--root-multiplier-hf, 1));
  position: relative;
}
@media (max-width: 787px) {
  .p-event {
    background-size: center top;
    padding: calc(4rem / var(--root-multiplier-hf, 1)) 0 calc(4.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-event .p-event__controls {
  position: absolute;
  right: max(4%, (100% - 1240px) / 2 + calc(1rem / var(--root-multiplier-hf, 1)));
  top: calc(12rem / var(--root-multiplier-hf, 1));
  display: flex;
  gap: calc(1rem / var(--root-multiplier-hf, 1));
  z-index: 3;
}
@media (max-width: 787px) {
  .p-event .p-event__controls {
    position: initial;
  }
}
.p-event .p-event__slider {
  max-width: none;
  width: calc(100% - max(4%, (100% - 1240px) / 2));
  margin-top: calc(1.6rem / var(--root-multiplier-hf, 1));
  margin-right: auto;
  margin-left: max(4%, (100% - 1240px) / 2);
  padding-left: calc(6.5rem / var(--root-multiplier-hf, 1));
  clip-path: inset(0 0 0 1px);
}
@media (max-width: 787px) {
  .p-event .p-event__slider {
    padding-left: calc(1.5rem / var(--root-multiplier-hf, 1));
    width: 100%;
    margin: calc(1.6rem / var(--root-multiplier-hf, 1)) auto 0;
  }
}
@media (max-width: 787px) {
  .p-event .swiper-wrapper {
    align-items: stretch;
  }
}
.p-event .swiper-slide {
  height: auto;
}
@media (max-width: 1223px) {
  .p-event .swiper-slide.swiper-slide-prev {
    opacity: 0;
    pointer-events: none;
  }
}
@media (max-width: 787px) {
  .p-event .p-event__nav--prev {
    position: absolute;
    top: calc(20rem / var(--root-multiplier-hf, 1));
    left: calc(0.7rem / var(--root-multiplier-hf, 1));
    z-index: 3;
  }
}
@media (max-width: 787px) {
  .p-event .p-event__nav--next {
    position: absolute;
    top: calc(20rem / var(--root-multiplier-hf, 1));
    right: calc(0.3rem / var(--root-multiplier-hf, 1));
    z-index: 3;
  }
}

.p-event-card {
  display: flex block;
  flex-direction: column;
  height: 100%;
  border: 0;
}
.p-event-card:hover {
  color: initial;
  text-decoration: none !important;
}
.p-event-card:hover .p-event-card__title {
  text-decoration: underline;
}
.p-event-card:hover .p-event-card__thumb {
  opacity: 0.7;
}
.p-event-card .p-event-card__thumb {
  background: #28373a;
  aspect-ratio: 840/448;
  position: relative;
  overflow: hidden;
  border-radius: 0;
  transition: opacity 0.3s ease;
}
.p-event-card .p-event-card__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.p-event-card .p-event-card__meta {
  min-height: calc(5rem / var(--root-multiplier-hf, 1));
  background: #00948b;
  padding: calc(1.7rem / var(--root-multiplier-hf, 1));
  display: flex;
  align-items: flex-start;
  gap: calc(1.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-event-card .p-event-card__meta {
    flex-grow: 1;
    min-height: calc(3.2rem / var(--root-multiplier-hf, 1));
    padding: calc(1rem / var(--root-multiplier-hf, 1));
    gap: calc(0.6rem / var(--root-multiplier-hf, 1));
  }
}
.p-event-card .p-event-card__meta .p-event-card__meta-label {
  background: #fff;
  font-weight: 700;
  font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
  line-height: 1;
  border-radius: 2px;
  padding: calc(0.6rem / var(--root-multiplier-hf, 1)) calc(0.6rem / var(--root-multiplier-hf, 1));
  white-space: nowrap;
}
@media (max-width: 787px) {
  .p-event-card .p-event-card__meta .p-event-card__meta-label {
    padding: calc(0.4rem / var(--root-multiplier-hf, 1)) calc(0.5rem / var(--root-multiplier-hf, 1));
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.p-event-card .p-event-card__meta .p-event-card__meta-date {
  margin-top: -0.2em;
  font-size: 1.5rem;
  line-height: 1.35;
  color: #fff;
}
@media (max-width: 787px) {
  .p-event-card .p-event-card__meta .p-event-card__meta-date {
    font-size: 12px;
  }
}
.p-event-card .p-event-card__meta .p-event-card__meta-date > p {
  font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
  color: #fff;
}
@media (max-width: 787px) {
  .p-event-card .p-event-card__meta .p-event-card__meta-date > p {
    font-size: calc(1.1rem / var(--root-multiplier-hf, 1));
  }
}
.p-event-card .p-event-card__title {
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
  color: #00948b;
  line-height: 1.25;
  font-weight: 700;
  margin-top: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-event-card .p-event-card__title {
    font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
    margin-top: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-event-card .p-event-card__text {
  color: #333;
  margin-top: calc(1.3rem / var(--root-multiplier-hf, 1));
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  line-height: 1.6923076923;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  overflow: hidden;
}
@media (max-width: 787px) {
  .p-event-card .p-event-card__text {
    margin-top: calc(1rem / var(--root-multiplier-hf, 1));
    font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
  }
}
.p-event-card.m-end {
  pointer-events: none;
}
.p-event-card.m-end .p-event-card__thumb {
  position: relative;
}
.p-event-card.m-end .p-event-card__thumb img {
  opacity: 0.2;
}
.p-event-card.m-end .p-event-card__thumb::before {
  content: "";
  display: block;
  position: absolute;
  top: calc(-4.2rem / var(--root-multiplier-hf, 1));
  left: calc(-4.2rem / var(--root-multiplier-hf, 1));
  width: calc(8.4rem / var(--root-multiplier-hf, 1));
  height: calc(8.4rem / var(--root-multiplier-hf, 1));
  background: #28373a;
  transform: rotate(-45deg);
  z-index: 1;
}
.p-event-card.m-end .p-event-card__thumb::after {
  content: "開催終了";
  display: block;
  position: absolute;
  top: calc(1.2rem / var(--root-multiplier-hf, 1));
  left: calc(0.2rem / var(--root-multiplier-hf, 1));
  transform: rotate(-45deg);
  transform-origin: center;
  color: #fff;
  font-size: calc(1rem / var(--root-multiplier-hf, 1));
  font-weight: 600;
  z-index: 2;
}

.p-info {
  background: #f2f6f7;
  padding: calc(12rem / var(--root-multiplier-hf, 1)) 0 calc(5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-info {
    padding: calc(4rem / var(--root-multiplier-hf, 1)) 0 calc(6rem / var(--root-multiplier-hf, 1));
  }
}
.p-info .p-info__inner {
  display: grid;
  grid-template-columns: calc(21rem / var(--root-multiplier-hf, 1)) 1fr;
  align-items: start;
  gap: calc(14rem / var(--root-multiplier-hf, 1));
  padding: 0 calc(5rem / var(--root-multiplier-hf, 1));
  max-width: calc(154rem / var(--root-multiplier-hf, 1));
  margin: 0 auto;
}
@media (max-width: 1020px) {
  .p-info .p-info__inner {
    display: block;
    padding: 0 calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-info .p-info__title {
  line-height: 1.2;
}
@media (min-width: 788px) and (max-width: 1020px) {
  .p-info .p-info__title {
    margin-inline-start: calc(3.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-info .p-info-list {
  max-height: var(--info-list-scroll-height, calc(56rem / var(--root-multiplier-hf, 1)));
  margin-top: calc(2.5rem / var(--root-multiplier-hf, 1));
  padding-right: calc(3rem / var(--root-multiplier-hf, 1));
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
@media (min-width: 768px) {
  .p-info .p-info-list {
    margin-top: 0;
  }
}
@media (max-width: 767px) {
  .p-info .p-info-list {
    padding-right: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-info .p-info-list::-webkit-scrollbar {
  display: none;
}
.p-info .p-info-list .simplebar-scrollbar::before {
  background: #00948b;
  border-radius: 0;
  width: 3px;
  margin-left: 0;
  margin-top: 2px;
  left: 0;
  right: 0;
}
.p-info .p-info-list .simplebar-scrollbar.simplebar-visible::before {
  opacity: 1;
}
.p-info .p-info-list .simplebar-track {
  background: #d0d6d8;
  width: 3px !important;
}
.p-info .p-info-list .p-info-list__list {
  max-width: calc(104rem / var(--root-multiplier-hf, 1));
}
.p-info .p-info-list .p-info-list__list > li {
  display: grid;
  grid-template-columns: calc(10.6rem / var(--root-multiplier-hf, 1)) 1fr;
  gap: calc(6rem / var(--root-multiplier-hf, 1));
  padding: calc(2rem / var(--root-multiplier-hf, 1)) calc(1rem / var(--root-multiplier-hf, 1));
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-info .p-info-list .p-info-list__list > li {
    flex-direction: column;
    display: flex;
    gap: calc(0.5rem / var(--root-multiplier-hf, 1));
    padding: calc(1.5rem / var(--root-multiplier-hf, 1)) 0;
    font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
  }
}
.p-info .p-info-list .p-info-list__list > li > span {
  font-weight: 600;
}
.p-info .p-info-list .p-info-list__list > li + li {
  border-top: 1px solid #d3d5dc;
}

.partner-swiper .swiper-wrapper {
  display: flex;
  align-items: center;
}
.partner-swiper .swiper-slide {
  flex: 0 0 auto;
  min-width: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.p-partner {
  margin: calc(15rem / var(--root-multiplier-hf, 1)) 0 0;
}
@media (max-width: 787px) {
  .p-partner {
    margin-top: calc(5rem / var(--root-multiplier-hf, 1));
  }
}
.p-partner .p-partner__item {
  background: #fff;
  border: 1px solid #d9d9d9;
  border-radius: calc(0.5rem / var(--root-multiplier-hf, 1));
  overflow: hidden;
  font-weight: 600;
  height: calc(10rem / var(--root-multiplier-hf, 1));
  width: calc(26rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-partner .p-partner__item {
    height: calc(7.2rem / var(--root-multiplier-hf, 1));
    width: calc(17.7rem / var(--root-multiplier-hf, 1));
  }
}
.p-partner .p-partner__item img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.p-partner .p-partner__item .p-partner__logo--museum {
  padding: calc(1.5rem / var(--root-multiplier-hf, 1)) calc(2.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-partner .p-partner__item .p-partner__logo--museum {
    padding: calc(1rem / var(--root-multiplier-hf, 1)) calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}

.p-support {
  background: #fff;
  padding: calc(5.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-support {
    padding: calc(4.8rem / var(--root-multiplier-hf, 1)) calc(1rem / var(--root-multiplier-hf, 1)) calc(8rem / var(--root-multiplier-hf, 1));
  }
}
.p-support .p-support__inner {
  max-width: 1180px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: calc(6.4rem / var(--root-multiplier-hf, 1));
  justify-content: space-between;
}
@media (max-width: 1020px) {
  .p-support .p-support__inner {
    display: block;
  }
}
.p-support .p-support__brand {
  display: flex;
  align-items: flex-start;
  gap: calc(1.2rem / var(--root-multiplier-hf, 1));
  flex: 0 0 auto;
  color: #00645e;
}
@media (max-width: 1020px) {
  .p-support .p-support__brand {
    align-items: flex-start;
    justify-content: center;
  }
}
.p-support .p-support__brand .p-support__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: calc(2.7rem / var(--root-multiplier-hf, 1));
  margin-top: calc(0.8rem / var(--root-multiplier-hf, 1));
}
.p-support .p-support__brand h2 {
  margin: 0;
  font-weight: 800;
  line-height: 1;
  font-size: calc(4.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-support .p-support__brand h2 {
    font-size: calc(3.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-support .p-support__brand p {
  font-weight: 600;
  margin: 0.25em;
  text-align: center;
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-support .p-support__brand p {
    font-size: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.p-support .p-support__desc {
  flex: 1 1 auto;
  font-size: 16px;
  line-height: 1.6;
  text-wrap: pretty;
}
@media (max-width: 1020px) {
  .p-support .p-support__desc {
    text-align: center;
    margin-top: 2em;
  }
}
.p-support .p-support__cta {
  flex: 0 0 auto;
}
@media (max-width: 1020px) {
  .p-support .p-support__cta {
    display: flex;
    justify-content: center;
    margin: calc(3rem / var(--root-multiplier-hf, 1)) auto 0;
  }
}

.p-service-panel .p-service__btn,
.p-support__cta {
  min-height: calc(5.9rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-service-panel .p-service__btn,
  .p-support__cta {
    min-height: 0;
  }
}

.p-logistics__solving-thumb {
  width: min(100%, calc(90rem / var(--root-multiplier-hf, 1)));
  aspect-ratio: 11/7;
  background: #D9D9D9;
  margin-inline: auto;
}
.p-logistics__solving-thumb + .p-logistics__solving-example {
  margin-block-start: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__solving-thumb + .p-logistics__solving-example {
    margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  }
}

.p-logistics__solving-example + .p-logistics__solving-example {
  margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__solving-example + .p-logistics__solving-example {
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  }
}

.p-logistics__solving-example-ttl {
  color: #fff;
  font-size: calc(2.5rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: 2;
  text-align: center;
  background: #00645e;
  padding: calc(1rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__solving-example-ttl {
    font-size: calc(1.4rem / var(--root-multiplier-hf, 1));
    line-height: 1.5;
  }
}

.p-logistics__solving-example-dl {
  display: flex block;
  align-items: center;
  gap: calc(5rem / var(--root-multiplier-hf, 1));
  background: #f2f6f7;
  padding-inline: calc(5rem / var(--root-multiplier-hf, 1));
  padding-block: calc(3.2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__solving-example-dl {
    flex-direction: column;
    gap: calc(1rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(1.8rem / var(--root-multiplier-hf, 1));
    padding-block: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
.p-logistics__solving-example-dl dt {
  font-size: calc(2.3rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  white-space: nowrap;
}
@media (max-width: 787px) {
  .p-logistics__solving-example-dl dt {
    width: 100%;
    font-size: 14px;
    text-align: left;
  }
}
.p-logistics__solving-example-dl dd {
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  line-height: 1.6;
  background: #fff;
  padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
  padding-block: calc(1.5rem / var(--root-multiplier-hf, 1));
  border-radius: 5px;
}
@media (max-width: 787px) {
  .p-logistics__solving-example-dl dd {
    width: 100%;
    font-size: 14px;
    padding-inline: calc(1.2rem / var(--root-multiplier-hf, 1));
    padding-block: calc(0.8rem / var(--root-multiplier-hf, 1));
  }
}

.p-logistics__features {
  display: flex;
  gap: calc(3.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__features {
    flex-direction: column-reverse;
    gap: calc(2rem / var(--root-multiplier-hf, 1));
  }
}

.p-logistics__features-txt {
  width: 100%;
  min-width: calc(100% - calc(3.5rem / var(--root-multiplier-hf, 1)) - 50%);
}
@media (max-width: 787px) {
  .p-logistics__features-txt {
    min-width: 100%;
  }
}

.p-logistics__features-txt-ttl {
  color: #00867e;
  font-size: calc(3rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 787px) {
  .p-logistics__features-txt-ttl {
    font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}

.p-logistics__features-txt-par {
  font-size: calc(1.9rem / var(--root-multiplier-hf, 1));
  line-height: 2;
  margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__features-txt-par {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.p-logistics__features-thumb {
  min-width: 50%;
  background: none;
  aspect-ratio: 620/386;
  background-size: contain !important;
  background-repeat: no-repeat;
}
@media (max-width: 787px) {
  .p-logistics__features-thumb {
    width: 100%;
  }
}

.p-logistics__examples {
  display: flex;
  align-items: flex-start;
  gap: calc(5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__examples {
    flex-direction: column;
    gap: calc(2rem / var(--root-multiplier-hf, 1));
  }
}

.p-logistics__examples-thumb {
  min-width: 40%;
  background: #888;
  aspect-ratio: 510/320;
}
@media (max-width: 787px) {
  .p-logistics__examples-thumb {
    width: 100%;
  }
}

.p-logistics__examples-txt {
  width: 100%;
  min-width: calc(100% - calc(5rem / var(--root-multiplier-hf, 1)) - 40%);
}
@media (max-width: 787px) {
  .p-logistics__examples-txt {
    min-width: 100%;
  }
}

.p-logistics__examples-txt-dl + .p-logistics__examples-txt-dl {
  margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__examples-txt-dl + .p-logistics__examples-txt-dl {
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}
.p-logistics__examples-txt-dl dt {
  color: #00867e;
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 787px) {
  .p-logistics__examples-txt-dl dt {
    font-size: 18px;
  }
}
.p-logistics__examples-txt-dl dd {
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  line-height: 1.8;
  margin-block-start: calc(0.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__examples-txt-dl dd {
    font-size: 14px;
    margin-block-start: calc(0.25rem / var(--root-multiplier-hf, 1));
  }
}

.p-logistics__examples-txt-btn {
  margin-inline: unset;
  margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
}
@media (min-width: 788px) and (max-width: 1020px) {
  .p-logistics__examples-txt-btn {
    min-width: 100%;
  }
}
@media (max-width: 787px) {
  .p-logistics__examples-txt-btn {
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  }
}

.p-logistics__case-study-list .p-product__more:not([hidden]) {
  display: flex;
  justify-content: center;
  margin-block-start: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-logistics__case-study-list .p-product__more:not([hidden]) {
    margin-block-start: calc(3rem / var(--root-multiplier-hf, 1));
  }
}
.p-logistics__case-study-list .p-product__more:not([hidden]) .c-more-btn {
  margin-inline: auto;
}

.p-logistics__case-study-card {
  display: flex block;
  gap: calc(5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__case-study-card {
    flex-direction: column;
    gap: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.p-logistics__case-study-card:hover {
  color: currentColor !important;
  text-decoration: none !important;
}
.p-logistics__case-study-card:hover .p-logistics__case-study-card__thumb {
  opacity: 0.7;
}
.p-logistics__case-study-card:hover .p-logistics__case-study-card__ttl {
  text-decoration: underline;
}
.p-logistics__case-study-card + .p-logistics__case-study-card {
  margin-block-start: calc(4.2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__case-study-card + .p-logistics__case-study-card {
    margin-block-start: calc(2.1rem / var(--root-multiplier-hf, 1));
  }
}

.p-logistics__case-study-card[hidden] {
  display: none;
}

.p-logistics__case-study-card__thumb {
  width: 30%;
  aspect-ratio: 374/242;
  transition: opacity 0.3s ease;
}
@media (max-width: 787px) {
  .p-logistics__case-study-card__thumb {
    width: 100%;
  }
}
.p-logistics__case-study-card__thumb img {
  width: 100%;
}

.p-logistics__case-study-card__txt {
  width: calc(100% - calc(4rem / var(--root-multiplier-hf, 1)) - 30%);
}
@media (max-width: 787px) {
  .p-logistics__case-study-card__txt {
    width: 100%;
  }
}

.p-logistics__case-study-card__ttl {
  color: #00867e;
  font-weight: 700;
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
  line-height: 1.5;
  background: #E9F4F3;
  padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
  padding-block: calc(1.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__case-study-card__ttl {
    font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
    padding-inline: calc(1rem / var(--root-multiplier-hf, 1));
    padding-block: calc(0.75rem / var(--root-multiplier-hf, 1));
  }
}

.p-logistics__case-study-card__desc {
  color: #666;
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(1.5rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__case-study-card__desc {
    font-size: 14px;
    margin-block-start: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.p-logistics__events {
  display: flex block;
  flex-wrap: wrap;
  gap: calc(3rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__events {
    gap: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.p-logistics__events .p-event-card {
  color: #333;
  width: calc((100% - calc(6rem / var(--root-multiplier-hf, 1))) / 3);
}
@media (max-width: 787px) {
  .p-logistics__events .p-event-card {
    width: 100%;
  }
}

.p-logistics__pagelinks {
  background: #E9F4F3;
  margin-block-start: calc(10rem / var(--root-multiplier-hf, 1));
  padding-block: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__pagelinks {
    margin-block-start: calc(5rem / var(--root-multiplier-hf, 1));
    padding-block: calc(3rem / var(--root-multiplier-hf, 1));
  }
}

.p-logistics__pagelinks-ttl {
  font-size: calc(2.5rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: 1;
  text-align: center;
}
@media (max-width: 787px) {
  .p-logistics__pagelinks-ttl {
    font-size: 24px;
  }
}

.p-logistics__pagelinks-list {
  display: flex block;
  flex-wrap: wrap;
  gap: calc(2rem / var(--root-multiplier-hf, 1)) calc(4.8rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__pagelinks-list {
    gap: calc(1.2rem / var(--root-multiplier-hf, 1)) calc(2.4rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  }
}

.p-logistics__pagelinks-list-item {
  font-size: calc(1.6rem / var(--root-multiplier-hf, 1));
  line-height: 1.8;
  width: calc((100% - calc(4.8rem / var(--root-multiplier-hf, 1))) / 2);
}
@media (max-width: 787px) {
  .p-logistics__pagelinks-list-item {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
    width: 100%;
  }
}
.p-logistics__pagelinks-list-item a {
  position: relative;
  display: flow-root block;
  color: #333;
  padding-inline-end: calc(2.4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-logistics__pagelinks-list-item a {
    padding-inline-end: calc(1.2rem / var(--root-multiplier-hf, 1));
  }
}
.p-logistics__pagelinks-list-item a::after {
  content: "";
  position: absolute;
  inset-inline-end: 0;
  inset-block-start: 50%;
  translate: 0 -50%;
  display: flow-root block;
  width: calc(1.2rem / var(--root-multiplier-hf, 1));
  height: calc(1.2rem / var(--root-multiplier-hf, 1));
  border-inline-end: 2px solid #00867e;
  border-block-end: 2px solid #00867e;
  rotate: -45deg;
}
@media (max-width: 787px) {
  .p-logistics__pagelinks-list-item a::after {
    width: calc(0.8rem / var(--root-multiplier-hf, 1));
    height: calc(0.8rem / var(--root-multiplier-hf, 1));
  }
}

.p-lower-heading {
  display: flex;
  align-items: center;
  min-height: calc(15.7rem / var(--root-multiplier-hf, 1));
  background: #28373a url("../image/section-head_bg.png?rev=743b3125774a") center/cover no-repeat;
}
@media (max-width: 787px) {
  .p-lower-heading {
    min-height: calc(8.8rem / var(--root-multiplier-hf, 1));
    background-image: url("../image/section-head_bg_sp.jpg?rev=743b3125774a");
  }
}

.p-lower-heading__inner {
  width: min(100%, calc(125.6rem / var(--root-multiplier-hf, 1)));
  margin-inline: auto;
  padding-inline: 0;
}
@media (max-width: 1320px) {
  .p-lower-heading__inner {
    padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
  }
}

.p-lower-heading__title {
  color: #fff;
  font-size: calc(3.5rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 787px) {
  .p-lower-heading__title {
    font-size: calc(2rem / var(--root-multiplier-hf, 1));
  }
}

.p-industry-list-section {
  background: #f2f6f7;
  padding: calc(8rem / var(--root-multiplier-hf, 1)) 0 calc(10rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-industry-list-section {
    padding: calc(4rem / var(--root-multiplier-hf, 1)) 0 calc(6rem / var(--root-multiplier-hf, 1));
  }
}

.p-industry-list-section__inner {
  width: min(100%, calc(127rem / var(--root-multiplier-hf, 1)));
  margin-inline: auto;
}
@media (max-width: 1320px) {
  .p-industry-list-section__inner {
    padding-inline: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 787px) {
  .p-industry-list-section__inner {
    padding-inline: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}

.p-industry-list {
  display: grid;
  grid-template-columns: repeat(4, calc(30.1rem / var(--root-multiplier-hf, 1)));
  width: max-content;
  column-gap: calc(1.666667rem / var(--root-multiplier-hf, 1));
  row-gap: calc(2rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1320px) {
  .p-industry-list {
    margin-inline: auto;
  }
}
@media (max-width: 1255px) {
  .p-industry-list {
    grid-template-columns: repeat(2, calc(30.1rem / var(--root-multiplier-hf, 1)));
  }
}
@media (max-width: 787px) {
  .p-industry-list {
    width: 100%;
    grid-template-columns: repeat(2, 1fr);
    gap: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.p-industry-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  box-sizing: border-box;
  height: calc(25.4rem / var(--root-multiplier-hf, 1));
  padding: calc(2.1rem / var(--root-multiplier-hf, 1)) calc(1.6rem / var(--root-multiplier-hf, 1)) 0;
  color: #111;
  background: #fff;
  border: 1px solid #cbcbcb;
  border-radius: calc(0.5rem / var(--root-multiplier-hf, 1));
  text-align: center;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
.p-industry-card:hover, .p-industry-card:focus, .p-industry-card:focus-visible {
  border-color: #009e95;
  box-shadow: 0 calc(0.6rem / var(--root-multiplier-hf, 1)) calc(1.6rem / var(--root-multiplier-hf, 1)) rgba(0, 100, 94, 0.12);
  text-decoration: none !important;
  transform: translateY(calc(-0.2rem / var(--root-multiplier-hf, 1)));
}
.p-industry-card:focus, .p-industry-card:focus-visible {
  outline: 2px solid #009e95;
  outline-offset: 2px;
}
@media (max-width: 787px) {
  .p-industry-card {
    justify-content: center;
    height: calc(9rem / var(--root-multiplier-hf, 1));
    padding: calc(1rem / var(--root-multiplier-hf, 1));
  }
}

.p-industry-card__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(9.3rem / var(--root-multiplier-hf, 1));
  margin-block-end: calc(0.7rem / var(--root-multiplier-hf, 1));
}
.p-industry-card__icon img {
  display: block;
  width: calc(8.7rem / var(--root-multiplier-hf, 1));
  height: auto;
  max-height: calc(8.7rem / var(--root-multiplier-hf, 1));
  object-fit: contain;
}
@media (max-width: 787px) {
  .p-industry-card__icon {
    height: calc(4.5rem / var(--root-multiplier-hf, 1));
    margin-block-end: 0;
  }
  .p-industry-card__icon img {
    width: calc(5rem / var(--root-multiplier-hf, 1));
    height: auto;
    max-height: calc(4.5rem / var(--root-multiplier-hf, 1));
  }
}

.p-industry-card__title {
  display: block;
  font-size: calc(2.2rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: calc(3rem / var(--root-multiplier-hf, 1));
  min-height: calc(3rem / var(--root-multiplier-hf, 1));
}
.p-industry-card__title small {
  display: block;
  font-size: 0.682em;
  line-height: calc(1.7rem / var(--root-multiplier-hf, 1));
}
.p-industry-card__title--multi + .p-industry-card__text {
  margin-block-start: calc(0.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-industry-card__title {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
    line-height: 1.25;
    min-height: 0;
    margin-block-start: 0;
  }
  .p-industry-card__title small {
    font-size: 0.65em;
    line-height: 1;
  }
  .p-industry-card__title--multi + .p-industry-card__text {
    margin-block-start: calc(0.7rem / var(--root-multiplier-hf, 1));
  }
}

.p-industry-card__text {
  display: block;
  width: calc(26.4rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(2.4rem / var(--root-multiplier-hf, 1));
  font-size: calc(1.5rem / var(--root-multiplier-hf, 1));
  font-weight: 400;
  line-height: calc(2.3rem / var(--root-multiplier-hf, 1));
  overflow-wrap: anywhere;
}
@media (max-width: 787px) {
  .p-industry-card__text {
    display: none;
  }
}

@media (max-width: 787px) {
  html[data-industry-sp=detail] .p-industry-list {
    grid-template-columns: minmax(0, 1fr);
    row-gap: calc(1.5rem / var(--root-multiplier-hf, 1));
  }
}
@media (max-width: 787px) {
  html[data-industry-sp=detail] .p-industry-card {
    justify-content: flex-start;
    height: auto;
    min-height: calc(18rem / var(--root-multiplier-hf, 1));
    padding: calc(2rem / var(--root-multiplier-hf, 1)) calc(1.5rem / var(--root-multiplier-hf, 1));
  }
  html[data-industry-sp=detail] .p-industry-card__icon {
    height: calc(5rem / var(--root-multiplier-hf, 1));
    margin-block-end: calc(1rem / var(--root-multiplier-hf, 1));
  }
  html[data-industry-sp=detail] .p-industry-card__title {
    font-size: calc(1.7rem / var(--root-multiplier-hf, 1));
    line-height: 1.35;
  }
  html[data-industry-sp=detail] .p-industry-card__title small {
    font-size: 0.72em;
    line-height: 1.25;
  }
  html[data-industry-sp=detail] .p-industry-card__title--multi + .p-industry-card__text {
    margin-block-start: calc(0.7rem / var(--root-multiplier-hf, 1));
  }
  html[data-industry-sp=detail] .p-industry-card__text {
    display: block;
    width: min(100%, calc(26rem / var(--root-multiplier-hf, 1)));
    margin-block-start: calc(1.2rem / var(--root-multiplier-hf, 1));
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
    line-height: 1.6;
  }
}
.p-category-list-more {
  display: flex;
  justify-content: center;
  gap: calc(3rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-category-list-more {
    flex-direction: column;
    align-items: center;
    gap: calc(1.6rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
  }
}

.p-category-list-more .c-link-btn {
  margin-inline: unset;
}

@media (min-width: 788px) {
  .p-category-list-more--pair .c-link-btn {
    width: fit-content;
    min-width: calc(38rem / var(--root-multiplier-hf, 1));
    min-height: calc(10rem / var(--root-multiplier-hf, 1));
  }
}

.p-category-list-more__btn {
  position: relative;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  width: calc(40rem / var(--root-multiplier-hf, 1));
  height: calc(8rem / var(--root-multiplier-hf, 1));
  padding: calc(2.5rem / var(--root-multiplier-hf, 1)) calc(6rem / var(--root-multiplier-hf, 1)) calc(2.5rem / var(--root-multiplier-hf, 1)) calc(2.5rem / var(--root-multiplier-hf, 1));
  color: #1e3f90;
  background: #fff;
  border: 1px solid #1e3f90;
  border-radius: 0;
  font-size: calc(2rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: calc(3rem / var(--root-multiplier-hf, 1));
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.p-category-list-more__btn::after {
  content: "";
  position: absolute;
  top: 50%;
  right: calc(1.4rem / var(--root-multiplier-hf, 1));
  width: calc(1.2rem / var(--root-multiplier-hf, 1));
  height: calc(1.2rem / var(--root-multiplier-hf, 1));
  border-top: 1px solid currentColor;
  border-right: 1px solid currentColor;
  transform: translateY(-50%) rotate(45deg);
}
.p-category-list-more__btn:hover, .p-category-list-more__btn:focus, .p-category-list-more__btn:focus-visible {
  color: #fff;
  background: #1e3f90;
  border-color: #1e3f90;
  text-decoration: none !important;
}
.p-category-list-more__btn:focus, .p-category-list-more__btn:focus-visible {
  outline: 2px solid #1e3f90;
  outline-offset: 2px;
}
@media (max-width: 787px) {
  .p-category-list-more__btn {
    width: min(100%, calc(32rem / var(--root-multiplier-hf, 1)));
    min-height: calc(5.6rem / var(--root-multiplier-hf, 1));
    padding: calc(1.5rem / var(--root-multiplier-hf, 1)) calc(4.8rem / var(--root-multiplier-hf, 1)) calc(1.5rem / var(--root-multiplier-hf, 1)) calc(2rem / var(--root-multiplier-hf, 1));
    font-size: calc(1.3rem / var(--root-multiplier-hf, 1));
  }
}

.p-solution-message {
  color: #00948b;
  font-size: calc(3rem / var(--root-multiplier-hf, 1));
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  margin-block-start: calc(7rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 787px) {
  .p-solution-message {
    font-size: calc(1.7rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
  }
}

.p-product {
  padding-block-end: calc(15rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-product {
    padding-block-end: calc(8rem / var(--root-multiplier-hf, 1));
  }
}
.p-product .p-product__desc {
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-product .p-product__desc {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.p-product .p-product__desc + * {
  font-size: calc(1.8rem / var(--root-multiplier-hf, 1));
  margin-block-start: calc(7.8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-product .p-product__desc + * {
    font-size: calc(1.2rem / var(--root-multiplier-hf, 1));
    margin-block-start: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
.p-product .p-product__desc + .p-product__list-head {
  margin-block-start: calc(3.6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-product .p-product__desc + .p-product__list-head {
    margin-block-start: calc(2.8rem / var(--root-multiplier-hf, 1));
  }
}
.p-product .p-product__filter {
  position: relative;
  margin-block-end: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-product .p-product__filter {
    margin-block-end: calc(4rem / var(--root-multiplier-hf, 1));
  }
}
.p-product .p-product__filter::after {
  background: #f2f6f7;
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(100% - calc(4rem / var(--root-multiplier-hf, 1)));
  z-index: -1;
}
.p-product .p-product__filter .p-tab {
  margin-inline: auto;
  width: calc(100% - calc(10rem / var(--root-multiplier-hf, 1)));
}
@media (max-width: 1020px) {
  .p-product .p-product__filter .p-tab {
    width: 100%;
    padding: 0;
  }
}
.p-product .p-product__more {
  margin-block-start: calc(8rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-product .p-product__more {
    margin-block-start: calc(4rem / var(--root-multiplier-hf, 1));
  }
}
.p-product .p-product__more .c-more-btn {
  margin-inline: auto;
}

.js-product-more .c-more-btn {
  margin: 2rem auto;
}

#a-related-lineup .p-product__more:not([hidden]),
#a-case-studies .p-product__more:not([hidden]) {
  display: flex;
  justify-content: center;
  margin-block-start: calc(0rem / var(--root-multiplier-hf, 1));
  margin-block-end: calc(4rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  #a-related-lineup .p-product__more:not([hidden]),
  #a-case-studies .p-product__more:not([hidden]) {
    margin-block-start: calc(6rem / var(--root-multiplier-hf, 1));
    margin-block-end: calc(2rem / var(--root-multiplier-hf, 1));
  }
}
#a-related-lineup .p-product__more:not([hidden]) .c-more-btn,
#a-case-studies .p-product__more:not([hidden]) .c-more-btn {
  margin-inline: auto;
}
#a-related-lineup .p-product__more[hidden] + .c-link-btn,
#a-case-studies .p-product__more[hidden] + .c-link-btn {
  margin-block-start: calc(10rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  #a-related-lineup .p-product__more[hidden] + .c-link-btn,
  #a-case-studies .p-product__more[hidden] + .c-link-btn {
    margin-block-start: calc(6rem / var(--root-multiplier-hf, 1));
  }
}

.p-industry-realestate #a-related-lineup .p-product__more:not([hidden]) {
  margin-block: calc(6rem / var(--root-multiplier-hf, 1));
}
@media (max-width: 1020px) {
  .p-industry-realestate #a-related-lineup .p-product__more:not([hidden]) {
    margin-block: calc(3rem / var(--root-multiplier-hf, 1));
  }
}

@media (max-width: 787px) {
  .l-main .c-pagettl__main,
  .l-main .p-home-hero__title,
  .l-main .p-lower-heading__title {
    font-size: 28px;
  }
  .l-main .c-headline01,
  .l-main .c-intro__ttl,
  .l-main .c-category-links__ttl,
  .l-main h2.c-service-sec__ttl,
  .l-main .c-acc-list-sec__head-ttl,
  .l-main .p-product__list-title,
  .l-main .p-section-head__ttl-main,
  .l-main .p-support h2,
  .l-main .p-logistics__pagelinks-ttl {
    font-size: 26px;
  }
  .l-main h2.c-service-sec__ttl {
    width: fit-content;
    max-width: 100%;
    text-align: center;
    overflow-wrap: anywhere;
  }
  .l-main .c-cta__inr.u-container .c-cta__item-ttl {
    height: auto;
    font-size: calc(2.3rem / var(--root-multiplier-hf, 1));
  }
  .l-main .p-service .p-tab__item {
    font-size: 14px;
  }
  .l-main .p-service .p-tab__item span {
    font-size: inherit;
    white-space: nowrap;
  }
  .l-main .c-headline02,
  .l-main h3.c-service-sec__ttl,
  .l-main .c-pagelink-list__item-ttl,
  .l-main .c-article-list__item-ttl,
  .l-main .c-post-list__item-ttl,
  .l-main .c-acc-list-sec__contents-head,
  .l-main .c-bnr-store__logo,
  .l-main .c-cta__item-ttl:not(.m-residentialmap-contact),
  .l-main .c-case-study-card__ttl,
  .l-main .c-event-card__title,
  .l-main .p-product-card__title,
  .l-main .p-product--casestudy .p-product-card__company,
  .l-main .p-case-card__ttl,
  .l-main .p-column-card:first-child .p-column-card__title,
  .l-main .p-event-card__title,
  .l-main .p-logistics__features-txt-ttl,
  .l-main .p-logistics__solving-example-ttl,
  .l-main .p-logistics__case-study-card__ttl {
    font-size: 18px;
  }
  .l-main .p-column-card:not(:first-child) .p-column-card__title {
    font-size: 16px;
  }
  .l-main .p-home-hero__catch,
  .l-main .c-intro__par,
  .l-main .p-product__desc,
  .l-main .p-product-card__excerpt,
  .l-main .p-product--casestudy .p-product-card__description,
  .l-main .c-pagelink-list__item-desc,
  .l-main .c-contents-link__par,
  .l-main .c-bnr-catalog__txt,
  .l-main .p-column-card .p-column-card__text,
  .l-main .p-event-card__text,
  .l-main .p-info .p-info-list__list > li,
  .l-main .p-support .p-support__desc,
  .l-main .p-logistics__features-txt-par,
  .l-main .p-logistics__examples-txt-dl dd,
  .l-main .c-faq-acc__head-txt,
  .l-main .c-faq-acc__panel-txt {
    font-size: 14px;
  }
  .l-main .p-service h3.c-service-sec__ttl,
  .l-main .p-cases .p-case-card__desc {
    font-size: 14px;
  }
  .l-main .p-home-hero .p-home-hero-topic-card p,
  .l-main .c-acc-list-sec__head-desc,
  .l-main .c-service-card__info,
  .l-main .c-article-list__item-desc,
  .l-main .c-post-list__item-desc {
    font-size: 12px;
  }
  .l-main .p-event .p-event-card__meta-label,
  .l-main .p-event .p-event-card__meta-date > p {
    font-size: 12px;
  }
  .c-icon-btn:not(.m-bg-white):hover {
    color: #fff;
    border-color: transparent;
  }
  .c-icon-btn:not(.m-bg-white):hover::before {
    opacity: 1;
  }
  .c-icon-btn:not(.m-bg-white):hover .c-icon-btn__icon {
    background-color: #fff;
  }
  .c-icon-btn:not(.m-bg-white):hover .c-icon-btn__icon::before {
    border-color: #00645e;
  }
  .c-icon-btn:not(.m-bg-white):hover .c-icon-btn__icon.m-new-window {
    background-image: url("../image/icon-new-window.svg?rev=743b3125774a");
  }
  .c-icon-btn.m-bg-white:hover,
  .p-service-panel .c-icon-btn.p-service__btn:hover,
  .c-icon-btn.p-support__cta:hover {
    color: #00645e;
  }
  .c-icon-btn.m-bg-white:hover::before,
  .p-service-panel .c-icon-btn.p-service__btn:hover::before,
  .c-icon-btn.p-support__cta:hover::before {
    opacity: 0;
  }
  .c-icon-btn.m-bg-white:hover .c-icon-btn__icon,
  .p-service-panel .c-icon-btn.p-service__btn:hover .c-icon-btn__icon,
  .c-icon-btn.p-support__cta:hover .c-icon-btn__icon {
    background-color: #00645e;
  }
  .c-icon-btn.m-bg-white:hover .c-icon-btn__icon::before,
  .p-service-panel .c-icon-btn.p-service__btn:hover .c-icon-btn__icon::before,
  .c-icon-btn.p-support__cta:hover .c-icon-btn__icon::before {
    border-color: #fff;
  }
  .c-icon-btn.m-bg-white:hover .c-icon-btn__icon.m-new-window,
  .p-service-panel .c-icon-btn.p-service__btn:hover .c-icon-btn__icon.m-new-window,
  .c-icon-btn.p-support__cta:hover .c-icon-btn__icon.m-new-window {
    background-image: url("../image/icon-new-window_white.svg?rev=743b3125774a");
  }
  .c-more-btn:hover {
    color: #009e95;
    background: #fff;
  }
  .c-more-btn:hover .c-more-btn__arrow {
    border-color: #009e95;
  }
  .c-more-btn:hover .c-more-btn__arrow::after {
    border-color: #009e95;
  }
  .p-tab .p-tab__item:not(.is-active):hover {
    color: inherit;
    background: #fff;
  }
  .p-tab .p-tab__item:not(.is-active):hover::after {
    border-color: #009e95;
  }
  .p-tab.type-2 .p-tab__item:not(.is-active):hover,
  .p-tab.type-3 .p-tab__item:not(.is-active):hover {
    color: inherit;
    background: #f2f6f7;
  }
  .p-filter-tags .p-filter-tags__item:not(.is-active):hover {
    color: inherit;
    background: #fff;
    border-color: #D8D8D8;
  }
  .c-article-list__item > a:hover,
  .c-post-list__item > a:hover,
  .p-product-card .p-product-card__link:hover,
  .c-bnr-store a:hover,
  .c-bnr-catalog__link:hover {
    color: inherit;
    opacity: 1;
    text-decoration: none !important;
  }
  .p-industry-card:hover {
    color: #111;
    border-color: #cbcbcb;
    box-shadow: none;
    transform: none;
  }
  #a-related-solutions .c-service-card__ttl {
    font-size: 16px;
  }
  #a-related-solutions .c-service-card__info {
    font-size: 14px;
  }
}
/**
 * アコーディオン
 */
.js-acc > .js-acc-toggle {
  cursor: pointer;
}
.js-acc > .js-acc-submenu {
  display: none;
}
.js-acc > .js-acc-submenu.is-acc-open {
  display: block flow;
}

.js-post-slider.is-slider-static .js-post-slider-nav-prev,
.js-post-slider.is-slider-static .js-post-slider-nav-next,
.js-post-slider-nav-prev[hidden],
.js-post-slider-nav-next[hidden] {
  display: none !important;
}

.tab-navigation.fixed {
  position: fixed;
  top: var(--tab-navigation-fixed-top, 0);
  z-index: 20;
  background-color: #fff;
}
.tab-navigation.fixed > div {
  z-index: 100;
}


#site-area-header,
.js-header {
  z-index: 99;
}

/*# sourceMappingURL=product.css.map */


