:root {
  --element-maxWidth-xl: 1920px;
  --element-maxWidth-l: 1600px;
  --element-maxWidth-ml: 1440px;
  --element-maxWidth: 1280px;
  --element-maxWidth-sm: 1024px;
  --element-maxWidth-s: 768px;
  --element-maxWidth-xs: 480px;
  --element-maxWidth-xxs: 320px;
  --breakPoint-tablet-landscape: 1023px;
  --breakPoint-tablet: 767px;
  --breakPoint-sp: 375px;
  --breakPoint-minWidth: 320px;
}

:root {
  --post-toc-mainColor: #898989;
  --post-toc-mainColor-rgb: 137, 137, 137;
  --blog-mainColor: #f2f0ef;
  --blog-mainColor-rgb: 242, 240, 239;
  --blog-category-mainColor: #e84b3d;
  --blog-category-mainColor-rgb: 232, 75, 61;
  --blog-tag-mainColor: #ffbf00;
  --blog-tag-mainColor-rgb: 255, 191, 0;
  --blog-ranking-mainColor: #d6b588;
  --blog-ranking-mainColor-rgb: 164, 125, 171;
  --blog-ranking-position-fontsize: 20px;
  --blog-comment-mainColor: #88e788;
  --blog-comment-mainColor-rgb: 136, 231, 136;
  --blog-recentpost-mainColor: #4166f5;
  --blog-recentpost-mainColor-rgb: 65, 102, 245;
  --blog-archive-mainColor: #ed2100;
  --blog-archive-mainColor-rgb: 164, 125, 171;
  --portfolio-mainColor: #d3d3d3;
  --portfolio-mainColor-rgb: 211, 211, 211;
  --portfolio-position-mainColor: #e84b3d;
  --portfolio-position-mainColor-rgb: 232, 75, 61;
  --portfolio-usetool-mainColor: #2e6f40;
  --portfolio-usetool-mainColor-rgb: 46, 111, 64;
  --portfolio-uselanguage-mainColor: #ffbf00;
  --portfolio-uselanguage-mainColor-rgb: 255, 191, 0;
  --contact-mainColor: #fff;
  --contact-mainColor-rgb: 255, 255, 255;
  --privacy-mainColor: #fff;
  --privacy-mainColor-rgb: 255, 255, 255;
}

:root {
  --body-backgroundColor: var(--contact-mainColor);
  --body-backgroundColor-rgb: var(--contact-mainColor-rgb);
  --lnav-maxWidth: 800px;
}

.contact-main {
  margin-bottom: 32px;
}
.contact-form {
  position: relative;
  width: var(--element-width);
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
}
.contact-flow-header {
  position: relative;
  width: 100%;
  max-width: var(--lnav-maxWidth);
  margin-right: auto;
  margin-left: auto;
  padding-top: 32px;
  padding-bottom: 32px;
}
.contact-flow-title, .contact-flow-description {
  padding-right: 16px;
  padding-left: 16px;
}
.contact-flow-title {
  line-height: 1.4;
  font-weight: 500;
  font-size: 24px;
}
@container main-container (max-width: 767px) {
  .contact-flow-title {
    font-size: 21px;
  }
}
@container main-container (max-width: 375px) {
  .contact-flow-title {
    font-size: 18px;
  }
}
.contact-flow-description {
  line-height: 1.3;
  font-weight: 400;
  font-size: 16px;
  color: #898989;
  margin-top: 0.3em;
}
@container main-container (max-width: 767px) {
  .contact-flow-description {
    font-size: 14px;
  }
}
.contact-flow-content-container {
  container-type: inline-size;
  container-name: contact-flow-container;
}
.contact-confirm-form {
  position: relative;
  width: 100%;
  max-width: var(--lnav-maxWidth);
  margin-right: auto;
  margin-left: auto;
}
.contact-confirm-list, .contact-confirm-buttons {
  position: relative;
  width: var(--element-width);
  margin-right: auto;
  margin-left: auto;
}
.contact-confirm-item {
  position: relative;
  padding-top: 16px;
  padding-bottom: 16px;
}
@container contact-flow-container (max-width: 767px) {
  .contact-confirm-item {
    padding-top: 12px;
    padding-bottom: 12px;
  }
}
.contact-confirm-item::before, .contact-confirm-item::after {
  position: absolute;
  right: 0;
  left: 0;
  height: 1px;
  background: #d3d3d3;
}
.contact-confirm-item:first-child::before {
  top: 0;
  content: "";
}
.contact-confirm-item:not(:last-child)::after {
  bottom: 0;
  content: "";
}
.contact-confirm-item-content {
  display: grid;
  grid-template-columns: minmax(100px, 20%) 1fr;
  align-items: flex-start;
  gap: 8px 16px;
  line-height: 1.4;
  font-size: 16px;
}
@container contact-flow-container (max-width: 767px) {
  .contact-confirm-item-content {
    grid-template-columns: 1fr;
    font-size: 15px;
  }
}
@container contact-flow-container (max-width: 375px) {
  .contact-confirm-item-content {
    font-size: 14px;
  }
}
.contact-confirm-item-content .contact-head {
  color: #898989;
  font-weight: 500;
  font-size: 0.8em;
}
.contact-confirm-item-content .contact-content {
  color: #252525;
  font-weight: 400;
  font-size: inherit;
}
.contact-confirm-buttons {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
  margin-top: 16px;
}
@container contact-flow-container (max-width: 375px) {
  .contact-confirm-buttons {
    grid-template-columns: 1fr;
  }
}
.contact-thanks-main .contact-button-wrap {
  width: var(--element-width);
  max-width: var(--lnav-maxWidth);
  margin-top: 0;
  margin-right: auto;
  margin-left: auto;
}
.contact-item {
  position: relative;
}
.contact-item:not(:last-child) {
  margin-bottom: 16px;
}
.contact-item.contact-ac.is-active {
  margin-bottom: 16px;
}
.contact-item.contact-ac:not(.is-active) {
  margin-bottom: 0;
}
.contact-sublist:has(.contact-sublist-item.contact-ac.is-active) {
  margin-top: 16px;
}
.contact-ac {
  height: 0;
  overflow: hidden;
}
.contact-ac.is-active {
  height: auto;
  overflow: initial;
}
.contact-ac.is-active > .contact-ac-measure {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
  transition: visibility 0s 0s linear, opacity 0.24s 0s ease-out, transform 0.24s ease-out;
}
.contact-ac > .contact-ac-measure {
  visibility: hidden;
  opacity: 0;
  transform: translateY(-16px);
  transition: visibility 0s 0.16s linear, opacity 0.16s 0s ease-out, transform 0.16s 0s ease-out;
}
.contact-button-wrap {
  margin-top: 16px;
}/*# sourceMappingURL=contact.css.map */