body {
  font-family: "游明朝体", "游明朝", "Yu Mincho", YuMincho, serif;
  background-color: #f2f4f5;
}

a:link {
  text-decoration: none;
}

.flex.-gap48 {
  display: flex;
  gap: 48px;
}

.c-link {
  transition: opacity .2s ease-out;
  color: #1978b1 !important;
}

.c-button {
  border-radius: 22px;
  font-size: 14px;
}

.c-button {
  display: block;
  padding: 0;
  font-family: inherit;
  transition: background-color .4s linear;
}

.c-button__inner {
  display: flex;
  align-items: center;
}

.c-button[data-type=secondary] {
  background-color: #f2f4f5;
  border: 1px solid #d1d4d7;
  color: #1978b1;
}

.c-button[data-type=secondary]:hover {
  background-color: #e7f3fa;
}

.c-button[data-align-sp=left] {
  .c-button__inner {
    justify-content: flex-start;
    padding-left: 24px;
    height: 44px;
  }

  .c-button__label {
    padding-left: 28px;
  }
}

.c-button__label {
  position: relative;
  line-height: 1.5;

  i {
    width: 5px;
    height: 8px;
    font-size: 8px;
    position: absolute;
    top: -3px;
    bottom: 0;
    left: 0;
    margin: auto;
    font-weight: bold;
    font-family: icomoon;

    @media (768px < width) {
      width: 8px;
      height: 14px;
      margin: auto;
      font-size: 14px;
    }
  }

  .icon-arrow-right-bold:before {
    content: "";
    display: block;
    position: absolute;
    top: 2px;
    width: 6px;
    aspect-ratio: 1/1;
    border-top: solid 1px #1978b1;
    border-right: solid 1px #1978b1;
    transform: rotate(45deg);

    @media (768px < width) {
      top: 5px;
    }
  }
}

.l-main {
  padding: 0 0 80px;
}

.p-content_eyecatch {
  display: flex;
  align-items: center;
  border-style: solid;
  background: #fff;
  border-color: #fff;
  position: relative;
  height: auto;
  border-width: 0 12px 12px;

  @media (768px < width) {
    height: 36vw;
    border-width: 0 24px 24px;
  }
}

.p-container {
  padding-inline: 12px;

  @media (768px < width) {
    padding: 0 2.02703%;
  }
}

.p-content__header {
  padding: 16px 12px;

  @media (768px < width) {
    padding: 20px 80px;
  }
}

.p-content__lead {
  margin-top: 6px;
  font-size: 14px;

  @media (768px < width) {
    font-size: 16px;
    margin: .8em 0 0;
  }
}

.p-content__body {
  margin: -12px 0 4px;
  padding-top: 16px;
}

.p-section {
  padding: 20px 24px 40px;
  background: #fff;

  @media (768px < width) {
    padding: 80px 56px;
  }
}

.p-section:not(:last-child),
.p-section__header {
  margin-bottom: 40px;
}

.p-section__header {
  margin: 0 0 56px;
}

.p-section__lead {
  padding: 0;
  margin: 24px 0 40px;
  font-size: 14px;
  line-height: 2;

  @media (768px < width) {
    padding: 0 80px;
    margin: 48px 0 80px;
  }
}

.p-inquiry {
  @media (768px < width) {
    display: flex;
    justify-content: center;
  }
}

.p-inquiry__list {
  @media (768px < width) {
    width: 400px;
  }
}

.p-inquiry__list>li:not(:last-child) {
  margin-bottom: 24px;
}