@charset "UTF-8";
*, *::before, *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0;
  padding: 0;
}

ul, ol {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

button {
  cursor: pointer;
  border: none;
  background: none;
  font-family: inherit;
}

a {
  text-decoration: none;
  color: inherit;
}

input, button, select, textarea {
  font-family: inherit;
  font-size: inherit;
}

html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body {
  font-family: "Inter", "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.7;
  color: #1f2937;
  background-color: #ffffff;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
}
@media (min-width: 1000px) {
  body {
    font-size: 1.6rem;
  }
}

a {
  color: inherit;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
a:hover {
  opacity: 0.75;
}

img,
svg {
  max-width: 100%;
  height: auto;
  display: block;
}

.l-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 100;
  padding: 1.6rem 1rem 0;
  background-color: transparent;
  pointer-events: none;
}
@media (min-width: 1000px) {
  .l-header {
    padding: 1.6rem 4rem 0;
  }
}
.l-header > * {
  pointer-events: auto;
}

.l-main {
  display: block;
  overflow: hidden;
  background-color: #ffffff;
}

.l-footer {
  position: relative;
  background-color: #1e2939;
  color: #ffffff;
}

.c-btn {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.6rem;
  padding: 1rem 2rem;
  border-radius: 9999px;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer;
  border: 1px solid transparent;
  -webkit-transition: opacity 0.2s ease, background-color 0.2s ease, color 0.2s ease, -webkit-transform 0.2s ease;
  transition: opacity 0.2s ease, background-color 0.2s ease, color 0.2s ease, -webkit-transform 0.2s ease;
  transition: opacity 0.2s ease, transform 0.2s ease, background-color 0.2s ease, color 0.2s ease;
  transition: opacity 0.2s ease, transform 0.2s ease, background-color 0.2s ease, color 0.2s ease, -webkit-transform 0.2s ease;
}
.c-btn i {
  font-size: 1.4rem;
}
.c-btn:hover {
  opacity: 0.85;
  -webkit-transform: translateY(-1px);
          transform: translateY(-1px);
}
.c-btn--primary {
  background-color: #1a54d4;
  color: #ffffff;
  border-color: #1a54d4;
  border-radius: 5px;
  -webkit-box-shadow: 0 3px 0 #12398e;
          box-shadow: 0 3px 0 #12398e;
}
.c-btn--primary:hover {
  background-color: #1748b8;
  border-color: #1748b8;
  opacity: 1;
  -webkit-transform: none;
          transform: none;
}
.c-btn--primary:active {
  -webkit-transform: translateY(2px);
          transform: translateY(2px);
  -webkit-box-shadow: 0 1px 0 #12398e;
          box-shadow: 0 1px 0 #12398e;
}
.c-btn--orange {
  background: -webkit-gradient(linear, left top, right top, from(#ff6a01), to(#ff9b00));
  background: linear-gradient(90deg, #ff6a01 0%, #ff9b00 100%);
  color: #ffffff;
  border-color: transparent;
}
.c-btn--outline-blue {
  background-color: #ffffff;
  color: #155dfc;
  border-color: #155dfc;
}
.c-btn--outline {
  background-color: #ffffff;
  color: #1a54d4;
  border-color: #1a54d4;
  border-radius: 5px;
}
.c-btn--outline:hover {
  background-color: #1a54d4;
  color: #ffffff;
  opacity: 1;
  -webkit-transform: none;
          transform: none;
}
.c-btn--outline-red {
  background-color: #ffffff;
  color: #e7000b;
  border-color: #ffa2a2;
  border-radius: 5px;
}
.c-btn--outline-red:hover {
  background-color: #e7000b;
  color: #ffffff;
  border-color: #e7000b;
  opacity: 1;
  -webkit-transform: none;
          transform: none;
}
.c-btn--danger {
  background-color: #e7000b;
  color: #ffffff;
  border-color: #e7000b;
  border-radius: 5px;
}
.c-btn--danger:hover {
  background-color: #c10007;
  border-color: #c10007;
  opacity: 1;
  -webkit-transform: none;
          transform: none;
}
.c-btn--danger:active {
  background-color: #9f0712;
}
.c-btn--white {
  background-color: #ffffff;
  color: #1e3a8a;
  border-color: #c7d2fe;
}
.c-btn--sm {
  padding: 0.6rem 1.4rem;
  font-size: 1.3rem;
}
.c-btn--lg {
  padding: 1.6rem 2.4rem;
  font-size: 1.5rem;
  min-height: 5.6rem;
}
@media (min-width: 1000px) {
  .c-btn--lg {
    font-size: 1.6rem;
  }
}
.c-btn--full {
  width: 100%;
}
.c-btn--badge {
  position: relative;
  padding-left: 5rem;
}
.c-btn__free {
  position: absolute;
  top: 50%;
  left: 1rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 3rem;
  height: 2.3rem;
  padding: 0;
  border-radius: 9999px;
  background-color: #ffffff;
  color: #ff6900;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.06em;
}

.c-chip {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.7rem 1.4rem;
  border-radius: 0.6rem;
  background-color: #f3f4f6;
  color: #1f2937;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.4;
  white-space: nowrap;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.c-chip:hover {
  background-color: #1e40af;
  color: #ffffff;
  opacity: 1;
}

.c-tag {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.3rem 0.8rem;
  border-radius: 0.4rem;
  background-color: #dbeafe;
  color: #1e40af;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.4;
  white-space: nowrap;
}

.c-badge {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 9.6rem;
  padding: 0.6rem 0.8rem;
  border-radius: 100px;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.2;
  white-space: nowrap;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
.c-badge--notice, .c-badge--column {
  background-color: #dbeafe;
  color: #1d4ed8;
}
.c-badge--pref {
  width: auto;
  padding: 0.3rem 0.8rem;
  background-color: #fde68a;
  color: #78350f;
  font-size: 1.2rem;
  font-weight: 700;
}
.c-badge--featured {
  width: auto;
  padding: 0.3rem 0.8rem;
  background-color: #f97316;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 700;
}

.c-card {
  background-color: #ffffff;
  border-radius: 1rem;
  overflow: hidden;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-shadow: 0 4px 16px rgba(30, 58, 138, 0.08);
          box-shadow: 0 4px 16px rgba(30, 58, 138, 0.08);
  -webkit-transition: -webkit-box-shadow 0.25s ease, -webkit-transform 0.25s ease;
  transition: -webkit-box-shadow 0.25s ease, -webkit-transform 0.25s ease;
  transition: box-shadow 0.25s ease, transform 0.25s ease;
  transition: box-shadow 0.25s ease, transform 0.25s ease, -webkit-box-shadow 0.25s ease, -webkit-transform 0.25s ease;
  height: 100%;
  color: inherit;
  text-decoration: none;
}
@media (min-width: 600px) {
  .c-card {
    display: grid;
    grid-template-rows: 1fr 1fr;
    aspect-ratio: 3/4;
    height: auto;
  }
}
.c-card.recruit {
  height: 85%;
}
.c-card:hover {
  -webkit-box-shadow: 0 12px 28px rgba(30, 58, 138, 0.16);
          box-shadow: 0 12px 28px rgba(30, 58, 138, 0.16);
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
}
.c-card__media {
  position: relative;
  width: 100%;
  aspect-ratio: 153/89;
  overflow: hidden;
  background-color: #e5e7eb;
}
@media (min-width: 600px) {
  .c-card__media {
    aspect-ratio: auto;
    height: 100%;
    min-height: 0;
  }
}
.c-card__media-img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.c-card__premium {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 2;
  width: 5.6rem;
  height: auto;
  display: block;
  -webkit-filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.18));
          filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.18));
}
.c-card__body {
  padding: 1.4rem 1.2rem 1.2rem;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.6rem;
}
@media (min-width: 1000px) {
  .c-card__body {
    padding: 1.6rem;
    gap: 0.8rem;
  }
}
@media (min-width: 600px) {
  .c-card__body {
    min-height: 0;
  }
}
.c-card__name {
  font-size: 1.4rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.4;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (min-width: 1000px) {
  .c-card__name {
    font-size: 1.6rem;
  }
}
.c-card__address {
  font-size: 1.2rem;
  color: #6b7280;
  line-height: 1.4;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (min-width: 1000px) {
  .c-card__address {
    font-size: 1.3rem;
  }
}
.c-card__tags {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.4rem;
  max-height: 6.8rem;
  overflow: hidden;
  margin-top: auto;
  padding-top: 0.6rem;
  border-top: 1px solid #f3f4f6;
}
.c-card__tags.is-overflow::after {
  content: "…";
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 0 0.4rem 0 1rem;
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(40%, #ffffff));
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, #ffffff 40%);
  color: #1e40af;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 2.2rem;
  pointer-events: none;
}

.c-topic-card {
  display: block;
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 1.8rem 1.8rem;
  text-decoration: none;
  -webkit-transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease, -webkit-box-shadow 0.2s ease, -webkit-transform 0.2s ease;
}
@media (min-width: 1000px) {
  .c-topic-card {
    padding: 2.4rem 2.4rem;
  }
}
.c-topic-card:hover {
  border-color: #c7d2fe;
  -webkit-box-shadow: 0 6px 16px rgba(15, 23, 42, 0.06);
          box-shadow: 0 6px 16px rgba(15, 23, 42, 0.06);
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
}
.c-topic-card__meta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
  margin-bottom: 1.2rem;
}
@media (min-width: 1000px) {
  .c-topic-card__meta {
    margin-bottom: 1.6rem;
  }
}
.c-topic-card__badge {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.4rem 0.9rem;
  border-radius: 4px;
  background-color: #dbeafe;
  color: #155dfc;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.04em;
}
.c-topic-card__date {
  font-size: 1.2rem;
  color: #6a7282;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
.c-topic-card__title {
  font-size: 1.6rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.45;
  letter-spacing: 0.02em;
  margin-bottom: 0.8rem;
}
@media (min-width: 1000px) {
  .c-topic-card__title {
    font-size: 1.8rem;
    margin-bottom: 1rem;
  }
}
.c-topic-card__excerpt {
  font-size: 1.3rem;
  color: #4a5565;
  line-height: 1.65;
  letter-spacing: 0.01em;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
@media (min-width: 1000px) {
  .c-topic-card__excerpt {
    font-size: 1.4rem;
  }
}

.c-article-body {
  color: #364153;
  font-size: 1.4rem;
  line-height: 1.85;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .c-article-body {
    font-size: 1.5rem;
  }
}
.c-article-body p {
  margin: 0 0 1.6rem;
}
@media (min-width: 1000px) {
  .c-article-body p {
    margin-bottom: 2rem;
  }
}
.c-article-body p:last-child {
  margin-bottom: 0;
}
.c-article-body h2 {
  position: relative;
  margin: 3.2rem 0 1.6rem;
  padding-left: 1.2rem;
  font-size: 1.8rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .c-article-body h2 {
    margin: 4rem 0 2rem;
    padding-left: 1.4rem;
    font-size: 2.2rem;
  }
}
.c-article-body h2::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4rem;
  bottom: 0.4rem;
  width: 4px;
  background: -webkit-gradient(linear, left top, left bottom, from(#fbbf24), to(#f59e0b));
  background: linear-gradient(180deg, #fbbf24, #f59e0b);
  border-radius: 2px;
}
.c-article-body h2:first-child {
  margin-top: 0;
}
.c-article-body h3 {
  margin: 2.8rem 0 1.2rem;
  padding-bottom: 0.6rem;
  border-bottom: 1px solid #e5e7eb;
  font-size: 1.6rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.45;
}
@media (min-width: 1000px) {
  .c-article-body h3 {
    margin: 3.2rem 0 1.6rem;
    font-size: 1.8rem;
  }
}
.c-article-body h3:first-child {
  margin-top: 0;
}
.c-article-body h4 {
  margin: 2.4rem 0 1rem;
  font-size: 1.5rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.5;
}
@media (min-width: 1000px) {
  .c-article-body h4 {
    font-size: 1.6rem;
  }
}
.c-article-body ul,
.c-article-body ol {
  margin: 0 0 1.6rem;
  padding-left: 2rem;
}
@media (min-width: 1000px) {
  .c-article-body ul,
  .c-article-body ol {
    margin-bottom: 2rem;
  }
}
.c-article-body ul li,
.c-article-body ol li {
  margin-bottom: 0.4rem;
  line-height: 1.75;
}
.c-article-body ul li:last-child,
.c-article-body ol li:last-child {
  margin-bottom: 0;
}
.c-article-body ul {
  list-style: disc;
}
.c-article-body ol {
  list-style: decimal;
}
.c-article-body a {
  color: #155dfc;
  text-decoration: underline;
  text-underline-offset: 2px;
}
.c-article-body a:hover {
  opacity: 0.75;
}
.c-article-body strong,
.c-article-body b {
  font-weight: 700;
  color: #0a0a0a;
}
.c-article-body blockquote {
  margin: 2rem 0;
  padding: 1.6rem 1.8rem;
  background-color: #f9fafb;
  border-left: 4px solid #13195F;
  font-size: 1.3rem;
  color: #4a5565;
}
@media (min-width: 1000px) {
  .c-article-body blockquote {
    padding: 2rem 2.4rem;
    font-size: 1.4rem;
  }
}
.c-article-body blockquote p:last-child {
  margin-bottom: 0;
}
.c-article-body figure,
.c-article-body img {
  margin: 2rem 0;
  max-width: 100%;
  height: auto;
  border-radius: 6px;
}
.c-article-body figure img {
  margin: 0;
  display: block;
  width: 100%;
}
.c-article-body figure figcaption {
  margin-top: 0.8rem;
  font-size: 1.2rem;
  color: #6a7282;
  line-height: 1.6;
  text-align: center;
}
.c-article-body hr {
  margin: 2.8rem 0;
  border: 0;
  border-top: 1px solid #e5e7eb;
}
.c-article-body code {
  padding: 0.2rem 0.5rem;
  background-color: #f3f4f6;
  border-radius: 4px;
  font-size: 0.92em;
  font-family: "SFMono-Regular", Menlo, monospace;
  color: #be185d;
}
.c-article-body pre {
  margin: 0 0 2rem;
  padding: 1.6rem;
  background-color: #0f172a;
  border-radius: 6px;
  color: #f8fafc;
  font-size: 1.3rem;
  line-height: 1.6;
  overflow-x: auto;
}
.c-article-body pre code {
  padding: 0;
  background: transparent;
  color: inherit;
}

.c-checkbox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
  cursor: pointer;
  font-size: 1.4rem;
  color: #364153;
  padding: 0.4rem 0;
}
.c-checkbox input[type=checkbox] {
  width: 1.6rem;
  height: 1.6rem;
  accent-color: #155dfc;
  cursor: pointer;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
.c-checkbox:hover span {
  color: #155dfc;
}

.c-form__field {
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .c-form__field {
    margin-bottom: 2rem;
  }
}
.c-form__field:last-child {
  margin-bottom: 0;
}
.c-form__row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
  margin-bottom: 1.6rem;
}
@media (min-width: 800px) {
  .c-form__row {
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
  }
}
@media (min-width: 1000px) {
  .c-form__row {
    margin-bottom: 2rem;
  }
}
.c-form__row .c-form__field {
  margin-bottom: 0;
}
@media (min-width: 800px) {
  .c-form__row--3col {
    grid-template-columns: repeat(3, 1fr);
  }
}
.c-form__label {
  display: block;
  margin-bottom: 0.6rem;
  font-size: 1.3rem;
  font-weight: 700;
  color: #0a0a0a;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .c-form__label {
    font-size: 1.4rem;
    margin-bottom: 0.8rem;
  }
}
.c-form__required {
  color: #fb2c36;
  font-weight: 700;
  margin-left: 0.2rem;
}
.c-form__hint {
  margin: -0.4rem 0 1.2rem;
  font-size: 1.2rem;
  color: #6b7280;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .c-form__hint {
    font-size: 1.3rem;
    margin: -0.6rem 0 1.6rem;
  }
}
.c-form__input-wrap {
  position: relative;
  width: 100%;
}
.c-form__input-wrap--with-icon .c-form__input {
  padding-left: 4rem;
}
.c-form__input-icon {
  position: absolute;
  top: 50%;
  left: 1.4rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  color: #6b7280;
  font-size: 1.5rem;
  pointer-events: none;
}
@media (min-width: 1000px) {
  .c-form__input-icon {
    font-size: 1.6rem;
  }
}
.c-form__input, .c-form__textarea {
  width: 100%;
  padding: 1.2rem 1.4rem;
  background-color: #ffffff;
  border: 1px solid #d1d5dc;
  border-radius: 4px;
  color: #0a0a0a;
  font-family: inherit;
  font-size: 1.5rem;
  line-height: 1.5;
  letter-spacing: 0.01em;
  -webkit-transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}
@media (min-width: 1000px) {
  .c-form__input, .c-form__textarea {
    padding: 1.4rem 1.6rem;
    font-size: 1.6rem;
  }
}
.c-form__input::-webkit-input-placeholder, .c-form__textarea::-webkit-input-placeholder {
  color: rgba(10, 10, 10, 0.5);
}
.c-form__input::-moz-placeholder, .c-form__textarea::-moz-placeholder {
  color: rgba(10, 10, 10, 0.5);
}
.c-form__input:-ms-input-placeholder, .c-form__textarea:-ms-input-placeholder {
  color: rgba(10, 10, 10, 0.5);
}
.c-form__input::-ms-input-placeholder, .c-form__textarea::-ms-input-placeholder {
  color: rgba(10, 10, 10, 0.5);
}
.c-form__input::placeholder, .c-form__textarea::placeholder {
  color: rgba(10, 10, 10, 0.5);
}
.c-form__input:hover, .c-form__textarea:hover {
  border-color: #9ca3af;
}
.c-form__input:focus, .c-form__textarea:focus {
  outline: none;
  border-color: #1a54d4;
  -webkit-box-shadow: 0 0 0 3px rgba(26, 84, 212, 0.15);
          box-shadow: 0 0 0 3px rgba(26, 84, 212, 0.15);
}
.c-form__input:disabled, .c-form__textarea:disabled {
  background-color: #f3f4f6;
  color: #9ca3af;
  cursor: not-allowed;
}
.c-form__textarea {
  min-height: 14rem;
  resize: vertical;
  line-height: 1.7;
}
.c-form__select-wrap {
  position: relative;
  width: 100%;
}
.c-form__select-wrap::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.6rem;
  width: 0.8rem;
  height: 0.8rem;
  border-right: 2px solid #6b7280;
  border-bottom: 2px solid #6b7280;
  -webkit-transform: translateY(-75%) rotate(45deg);
          transform: translateY(-75%) rotate(45deg);
  pointer-events: none;
}
.c-form__select {
  width: 100%;
  padding: 1.2rem 4rem 1.2rem 1.4rem;
  background-color: #ffffff;
  border: 1px solid #d1d5dc;
  border-radius: 4px;
  color: #0a0a0a;
  font-family: inherit;
  font-size: 1.5rem;
  line-height: 1.5;
  letter-spacing: 0.01em;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  -webkit-transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
}
@media (min-width: 1000px) {
  .c-form__select {
    padding: 1.4rem 4rem 1.4rem 1.6rem;
    font-size: 1.6rem;
  }
}
.c-form__select:hover {
  border-color: #9ca3af;
}
.c-form__select:focus {
  outline: none;
  border-color: #1a54d4;
  -webkit-box-shadow: 0 0 0 3px rgba(26, 84, 212, 0.15);
          box-shadow: 0 0 0 3px rgba(26, 84, 212, 0.15);
}
.c-form__chip-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
@media (min-width: 800px) {
  .c-form__chip-list {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.2rem;
  }
}
.c-form__chip-input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.c-form__chip {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 4.8rem;
  padding: 0.8rem 1.2rem;
  background-color: #ffffff;
  border: 2px solid #d1d5dc;
  border-radius: 4px;
  color: #0a0a0a;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
  cursor: pointer;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
@media (min-width: 1000px) {
  .c-form__chip {
    font-size: 1.4rem;
    min-height: 5rem;
  }
}
.c-form__chip:hover {
  border-color: #1a54d4;
  color: #1a54d4;
}
.c-form__chip-input:checked + .c-form__chip {
  background-color: #1a54d4;
  border-color: #1a54d4;
  color: #ffffff;
}
.c-form__chip-input:focus-visible + .c-form__chip {
  -webkit-box-shadow: 0 0 0 3px rgba(26, 84, 212, 0.25);
          box-shadow: 0 0 0 3px rgba(26, 84, 212, 0.25);
}
.c-form__checkbox-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media (min-width: 1000px) {
  .c-form__checkbox-list {
    gap: 1.2rem;
  }
}
.c-form__checkbox-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.2rem;
  padding: 1.2rem 1.4rem;
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 4px;
  color: #0a0a0a;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.4;
  cursor: pointer;
  -webkit-transition: background-color 0.2s ease, border-color 0.2s ease;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}
@media (min-width: 1000px) {
  .c-form__checkbox-item {
    padding: 1.4rem 1.6rem;
    font-size: 1.5rem;
  }
}
.c-form__checkbox-item:hover {
  border-color: #1a54d4;
  background-color: #f6f9ff;
}
.c-form__checkbox-item input[type=checkbox] {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 1.6rem;
  height: 1.6rem;
  margin: 0;
  accent-color: #155dfc;
  cursor: pointer;
}
.c-form__checkbox-item:has(input[type=checkbox]:checked) {
  border-color: #155dfc;
  background-color: #eff6ff;
}
.c-form__file {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.2rem;
  padding: 1.4rem 1.6rem;
  background-color: #f9fafb;
  border: 2px dashed #d1d5dc;
  border-radius: 6px;
  cursor: pointer;
  -webkit-transition: border-color 0.2s ease, background-color 0.2s ease;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
@media (min-width: 1000px) {
  .c-form__file {
    padding: 1.6rem 2rem;
    gap: 1.6rem;
  }
}
.c-form__file:hover {
  border-color: #1a54d4;
  background-color: #eff6ff;
}
.c-form__file-input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.c-form__file-input:focus-visible + .c-form__file-icon {
  -webkit-box-shadow: 0 0 0 3px rgba(26, 84, 212, 0.25);
          box-shadow: 0 0 0 3px rgba(26, 84, 212, 0.25);
}
.c-form__file-icon {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 4rem;
  height: 4rem;
  background-color: #eff6ff;
  border-radius: 50%;
  color: #155dfc;
  font-size: 1.8rem;
  line-height: 1;
}
@media (min-width: 1000px) {
  .c-form__file-icon {
    width: 4.4rem;
    height: 4.4rem;
    font-size: 2rem;
  }
}
.c-form__file-text {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-width: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.2rem;
}
.c-form__file-prompt {
  color: #0a0a0a;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .c-form__file-prompt {
    font-size: 1.4rem;
  }
}
.c-form__file-hint {
  color: #6b7280;
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .c-form__file-hint {
    font-size: 1.3rem;
  }
}
.c-form__submit {
  margin-top: 2.4rem;
  padding-top: 2.4rem;
  border-top: 1px solid #e5e7eb;
  text-align: center;
}
@media (min-width: 1000px) {
  .c-form__submit {
    margin-top: 3.2rem;
    padding-top: 3.2rem;
  }
}
.c-form__submit-btn {
  width: 100%;
}
@media (min-width: 800px) {
  .c-form__submit-btn {
    width: auto;
    min-width: 28rem;
  }
}
.c-form__submit-actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.2rem;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media (min-width: 800px) {
  .c-form__submit-actions {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1.6rem;
  }
}
.c-form__submit-actions .c-btn {
  width: 100%;
}
@media (min-width: 800px) {
  .c-form__submit-actions .c-btn {
    width: auto;
    min-width: 22rem;
  }
}
.c-form__note {
  margin-top: 1.2rem;
  font-size: 1.2rem;
  color: #4a5565;
  line-height: 1.6;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .c-form__note {
    font-size: 1.3rem;
  }
}

.c-toggle {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
.c-toggle__input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.c-toggle__slider {
  position: relative;
  display: inline-block;
  width: 5.6rem;
  height: 3rem;
  background-color: #d1d5dc;
  border-radius: 9999px;
  -webkit-transition: background-color 0.25s ease;
  transition: background-color 0.25s ease;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
@media (min-width: 1000px) {
  .c-toggle__slider {
    width: 6rem;
    height: 3.2rem;
  }
}
.c-toggle__slider::before {
  content: "";
  position: absolute;
  top: 0.3rem;
  left: 0.3rem;
  width: 2.4rem;
  height: 2.4rem;
  background-color: #ffffff;
  border-radius: 9999px;
  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  -webkit-transition: -webkit-transform 0.25s ease;
  transition: -webkit-transform 0.25s ease;
  transition: transform 0.25s ease;
  transition: transform 0.25s ease, -webkit-transform 0.25s ease;
}
@media (min-width: 1000px) {
  .c-toggle__slider::before {
    width: 2.6rem;
    height: 2.6rem;
  }
}
.c-toggle__input:checked + .c-toggle__slider {
  background-color: #00c950;
}
.c-toggle__input:checked + .c-toggle__slider::before {
  -webkit-transform: translateX(2.6rem);
          transform: translateX(2.6rem);
}
@media (min-width: 1000px) {
  .c-toggle__input:checked + .c-toggle__slider::before {
    -webkit-transform: translateX(2.8rem);
            transform: translateX(2.8rem);
  }
}
.c-toggle__input:focus-visible + .c-toggle__slider {
  -webkit-box-shadow: 0 0 0 3px rgba(0, 201, 80, 0.3);
          box-shadow: 0 0 0 3px rgba(0, 201, 80, 0.3);
}
.c-toggle__input:disabled + .c-toggle__slider {
  background-color: #e5e7eb;
  cursor: not-allowed;
}
.c-toggle__label-text {
  font-size: 1.4rem;
  color: #0a0a0a;
}

.c-upload__dropzone {
  display: block;
  text-align: center;
  background-color: #ffffff;
  border: 2px dashed #d1d5dc;
  border-radius: 10px;
  padding: 3.2rem 1.6rem;
  cursor: pointer;
  -webkit-transition: border-color 0.2s ease, background-color 0.2s ease;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
@media (min-width: 1000px) {
  .c-upload__dropzone {
    padding: 4.8rem 2rem;
  }
}
.c-upload__dropzone:hover {
  border-color: #1a54d4;
  background-color: #f5f8ff;
}
.c-upload__input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.c-upload__icon {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 4rem;
  height: 4rem;
  margin-bottom: 1rem;
  color: #6a7282;
  font-size: 2.4rem;
}
@media (min-width: 1000px) {
  .c-upload__icon {
    width: 4.8rem;
    height: 4.8rem;
    margin-bottom: 1.6rem;
    font-size: 3rem;
  }
}
.c-upload__title {
  display: block;
  margin-bottom: 0.4rem;
  color: #364153;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .c-upload__title {
    font-size: 1.6rem;
  }
}
.c-upload__sub {
  display: block;
  margin-bottom: 0.6rem;
  color: #6a7282;
  font-size: 1.3rem;
  line-height: 1.5;
}
@media (min-width: 1000px) {
  .c-upload__sub {
    font-size: 1.4rem;
    margin-bottom: 0.8rem;
  }
}
.c-upload__hint {
  display: block;
  color: #99a1af;
  font-size: 1.1rem;
  line-height: 1.5;
}
@media (min-width: 1000px) {
  .c-upload__hint {
    font-size: 1.2rem;
  }
}

.c-notice {
  padding: 1.6rem 2rem;
  background-color: #eff6ff;
  border: 1px solid #bedbff;
  border-radius: 10px;
}
@media (min-width: 1000px) {
  .c-notice {
    padding: 2.4rem 2.8rem;
  }
}
.c-notice__title {
  margin-bottom: 1rem;
  color: #0a0a0a;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .c-notice__title {
    font-size: 1.6rem;
    margin-bottom: 1.2rem;
  }
}
.c-notice__list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.c-notice__list li {
  position: relative;
  padding-left: 1.4rem;
  color: #364153;
  font-size: 1.3rem;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .c-notice__list li {
    font-size: 1.4rem;
    line-height: 1.75;
  }
}
.c-notice__list li + li {
  margin-top: 0.2rem;
}
.c-notice__list li::before {
  content: "•";
  position: absolute;
  left: 0;
  color: #155dfc;
}
.c-notice--danger {
  background-color: #fef2f2;
  border: 2px solid #ffc9c9;
}
.c-notice--danger .c-notice__title {
  color: #9f0712;
}
.c-notice--danger .c-notice__list li {
  color: #c10007;
}
.c-notice--danger .c-notice__list li::before {
  color: #c10007;
}
.c-notice--warning {
  background-color: #fefce8;
  border: 1px solid #fff085;
}
.c-notice--warning .c-notice__list li::before {
  color: #ca8a04;
}
.c-notice__agreement {
  margin-top: 1.6rem;
  padding-top: 1.6rem;
  border-top: 1px solid rgba(159, 7, 18, 0.2);
}
@media (min-width: 1000px) {
  .c-notice__agreement {
    margin-top: 2rem;
    padding-top: 2rem;
  }
}
.c-notice__agreement label {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.8rem;
  cursor: pointer;
  color: #9f0712;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .c-notice__agreement label {
    font-size: 1.4rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.c-notice__agreement input[type=checkbox] {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 1.6rem;
  height: 1.6rem;
  margin-top: 0.2rem;
  accent-color: #c10007;
  cursor: pointer;
}
@media (min-width: 1000px) {
  .c-notice__agreement input[type=checkbox] {
    margin-top: 0;
  }
}

.p-header__inner {
  max-width: 1140px;
  margin: 0 auto;
  padding: 1rem 2rem;
  height: auto;
  min-height: 6.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.6rem;
  position: relative;
  z-index: 2;
  background-color: #ffffff;
  border-radius: 9999px;
  -webkit-box-shadow: 0 4px 16px rgba(20, 25, 91, 0.08);
          box-shadow: 0 4px 16px rgba(20, 25, 91, 0.08);
}
@media (min-width: 1000px) {
  .p-header__inner {
    padding: 1.2rem 3.2rem;
    min-height: 6.5rem;
    gap: 2.4rem;
  }
}
.p-header__logo {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  text-decoration: none;
  color: inherit;
}
.p-header__logo-img {
  display: block;
  width: auto;
  height: 2.4rem;
}
@media (min-width: 1000px) {
  .p-header__logo-img {
    height: 3.5rem;
  }
}
.p-header__nav {
  margin-left: auto;
}
.p-header__nav-inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.4rem;
}
.p-header__nav-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
}
.p-header__nav-link {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
  font-size: 1.5rem;
  font-weight: 400;
  color: #13195f;
  white-space: nowrap;
  letter-spacing: -0.02em;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
.p-header__nav-link i {
  font-size: 1.4rem;
  color: #13195f;
}
.p-header__nav-link:hover {
  opacity: 0.7;
}
.p-header__nav-btns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
}
.p-header__nav-head, .p-header__nav-sub {
  display: none;
}
.p-header__sp-actions {
  display: none;
}
.p-header__hamburger {
  display: none;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.2rem;
  padding: 0.4rem 0.4rem;
  background: none;
  border: none;
  cursor: pointer;
}
.p-header__hamburger-icon {
  position: relative;
  display: block;
  width: 2.3rem;
  height: 1.8rem;
}
.p-header__hamburger-icon span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #13195f;
  border-radius: 2px;
  -webkit-transition: top 0.3s ease, bottom 0.3s ease, opacity 0.2s ease, -webkit-transform 0.3s ease;
  transition: top 0.3s ease, bottom 0.3s ease, opacity 0.2s ease, -webkit-transform 0.3s ease;
  transition: top 0.3s ease, bottom 0.3s ease, transform 0.3s ease, opacity 0.2s ease;
  transition: top 0.3s ease, bottom 0.3s ease, transform 0.3s ease, opacity 0.2s ease, -webkit-transform 0.3s ease;
}
.p-header__hamburger-icon span:nth-child(1) {
  top: 0;
}
.p-header__hamburger-icon span:nth-child(2) {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.p-header__hamburger-icon span:nth-child(3) {
  bottom: 0;
}
.p-header__hamburger-label {
  font-size: 1rem;
  font-weight: 500;
  color: #13195f;
  line-height: 1.1;
  letter-spacing: 0.04em;
}
.p-header__hamburger.is-open .p-header__hamburger-icon span:nth-child(1) {
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}
.p-header__hamburger.is-open .p-header__hamburger-icon span:nth-child(2) {
  opacity: 0;
}
.p-header__hamburger.is-open .p-header__hamburger-icon span:nth-child(3) {
  bottom: 50%;
  -webkit-transform: translateY(50%) rotate(-45deg);
          transform: translateY(50%) rotate(-45deg);
}
.p-header__overlay {
  display: none;
}
@media (max-width: 999px) {
  .p-header__inner {
    background-color: #ffffff;
    border-radius: 9999px;
    -webkit-box-shadow: 0 4px 16px rgba(20, 25, 91, 0.08);
            box-shadow: 0 4px 16px rgba(20, 25, 91, 0.08);
    padding: 0.6rem 1rem 0.6rem 1.4rem;
    gap: 0.4rem;
  }
  .p-header__logo-img {
    height: 4rem;
  }
}
@media (max-width: 999px) and (min-width: 600px) and (max-width: 799px) {
  .p-header__logo-img {
    height: 2.8rem;
  }
}
@media (max-width: 999px) and (min-width: 800px) and (max-width: 999px) {
  .p-header__logo-img {
    height: 3.5rem;
  }
}
@media (max-width: 999px) {
  .p-header__sp-actions {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0.3rem;
    margin-left: auto;
  }
}
@media (max-width: 999px) {
  .p-header__sp-search {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0.1rem;
    padding: 0.2rem 0.4rem;
    font-size: 1rem;
    font-weight: 500;
    color: #1f2937;
    text-decoration: none;
    line-height: 1.1;
  }
  .p-header__sp-search i {
    font-size: 1.6rem;
    color: #1f2937;
  }
}
@media (max-width: 999px) {
  .p-header__sp-login {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0.5rem 1rem;
    border-radius: 9999px;
    background-color: #ffffff;
    border: 1px solid #c7d2fe;
    color: #1e3a8a;
    font-size: 1.2rem;
    font-weight: 700;
    text-decoration: none;
  }
}
@media (max-width: 999px) {
  .p-header__sp-apply {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0.6rem;
    padding: 0.5rem 1.4rem 0.5rem 0.6rem;
    border-radius: 9999px;
    background: -webkit-gradient(linear, left top, right top, from(#ff6a01), to(#ff9b00));
    background: linear-gradient(90deg, #ff6a01 0%, #ff9b00 100%);
    color: #ffffff;
    font-size: 1.2rem;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    -webkit-transition: opacity 0.2s ease;
    transition: opacity 0.2s ease;
  }
  .p-header__sp-apply:hover {
    opacity: 0.85;
  }
}
@media (max-width: 999px) and (max-width: 599px) {
  .p-header__sp-apply {
    display: none;
  }
}
@media (max-width: 999px) {
  .p-header__sp-apply-free {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0.2rem 0.6rem;
    border-radius: 9999px;
    background-color: #ffffff;
    color: #ff6900;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1;
  }
}
@media (max-width: 999px) {
  .p-header__hamburger {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-left: 0;
  }
}
@media (max-width: 999px) {
  .p-header__nav {
    display: none;
  }
}
@media (max-width: 999px) {
  .p-header__nav-list, .p-header__nav-btns {
    display: none;
  }
}

.p-header__drawer {
  display: none;
}

@media (max-width: 999px) {
  .p-header__drawer {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    width: 100%;
    overflow-y: auto;
    padding: 9rem 1rem 4rem;
    background-color: #e6e6e6;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: visibility 0.4s ease, -webkit-transform 0.4s ease;
    transition: visibility 0.4s ease, -webkit-transform 0.4s ease;
    transition: transform 0.4s ease, visibility 0.4s ease;
    transition: transform 0.4s ease, visibility 0.4s ease, -webkit-transform 0.4s ease;
  }
  .p-header__drawer.is-open {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    visibility: visible;
    pointer-events: auto;
  }
  .p-header__drawer-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.2rem;
    width: 100%;
    max-width: 60rem;
    margin: 0 auto;
  }
  .p-header__drawer-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
  }
  .p-header__drawer-apply {
    position: relative;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0.8rem;
    height: 5rem;
    padding: 0 1.4rem;
    border-radius: 5px;
    background: -webkit-gradient(linear, left top, right top, from(#ff6b01), to(#ff9b01));
    background: linear-gradient(90deg, #ff6b01 0%, #ff9b01 100%);
    -webkit-box-shadow: 0 3px 0 #d45a00;
            box-shadow: 0 3px 0 #d45a00;
    color: #ffffff;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.0625em;
    text-decoration: none;
    white-space: nowrap;
  }
  .p-header__drawer-apply-free {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 4.2rem;
    height: 1.6rem;
    border-radius: 3px;
    background-color: #ffffff;
    color: #ff6900;
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.0625em;
    line-height: 1;
  }
  .p-header__drawer-login {
    position: relative;
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 5rem;
    padding: 0 3rem 0 1rem;
    border-radius: 5px;
    background-color: #f9fafb;
    border: 1px solid #b9b9b9;
    color: #68707c;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.0625em;
    text-decoration: none;
    white-space: nowrap;
  }
  .p-header__drawer-login i {
    position: absolute;
    right: 1.2rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    font-size: 1.2rem;
    color: #94a3b8;
  }
  .p-header__drawer-search {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0.8rem;
    width: 100%;
    height: 5rem;
    border-radius: 5px;
    background-color: #1a54d4;
    -webkit-box-shadow: 0 3px 0 #12398e;
            box-shadow: 0 3px 0 #12398e;
    color: #ffffff;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.0625em;
    text-decoration: none;
  }
  .p-header__drawer-search i {
    font-size: 1.6rem;
  }
  .p-header__drawer-menu {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    list-style: none;
    margin: 0;
    padding: 0;
    background-color: #f9fafb;
    border: 1px solid #b9b9b9;
    border-radius: 5px;
    overflow: hidden;
  }
  .p-header__drawer-menu li {
    border-bottom: 1px solid #b9b9b9;
  }
  .p-header__drawer-menu li:last-child {
    border-bottom: none;
  }
  .p-header__drawer-menu a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1.6rem;
    padding: 1.2rem 1.6rem;
    color: #13195f;
    text-decoration: none;
  }
  .p-header__drawer-menu-icon {
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    width: 2rem;
    font-size: 1.6rem;
    color: #3A6AD4;
    text-align: center;
  }
  .p-header__drawer-menu-text {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
    font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: -0.02em;
  }
  .p-header__drawer-menu-arrow {
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    font-size: 1.2rem;
    color: #94a3b8;
  }
}
.p-fab {
  display: none;
}
@media (max-width: 599px) {
  .p-fab {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0.2rem;
    position: fixed;
    bottom: 5rem;
    right: 1rem;
    z-index: 80;
    width: 6rem;
    height: 6rem;
    border-radius: 50%;
    background: -webkit-gradient(linear, left top, left bottom, from(#ff6a01), to(#ff9b00));
    background: linear-gradient(180deg, #ff6a01 0%, #ff9b00 100%);
    color: #ffffff;
    text-decoration: none;
    -webkit-box-shadow: 0 4px 12px rgba(255, 106, 1, 0.35);
            box-shadow: 0 4px 12px rgba(255, 106, 1, 0.35);
    -webkit-transition: -webkit-transform 0.2s ease, -webkit-box-shadow 0.2s ease;
    transition: -webkit-transform 0.2s ease, -webkit-box-shadow 0.2s ease;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    transition: transform 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-box-shadow 0.2s ease;
  }
  .p-fab:hover {
    opacity: 1;
    -webkit-transform: translateY(-2px);
            transform: translateY(-2px);
    -webkit-box-shadow: 0 6px 16px rgba(255, 106, 1, 0.45);
            box-shadow: 0 6px 16px rgba(255, 106, 1, 0.45);
  }
}
.p-fab__free {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 4.2rem;
  height: 1.6rem;
  border-radius: 3px;
  background-color: #ffffff;
  color: #ff6900;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}
.p-fab__text {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
}

.p-header--minimal .p-header__nav,
.p-header--minimal .p-header__hamburger,
.p-header--minimal .p-header__sp-actions,
.p-header--minimal .p-header__drawer {
  display: none !important;
}
.p-header--minimal .p-header__minimal-actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  margin-left: auto;
}
@media (min-width: 1000px) {
  .p-header--minimal .p-header__minimal-actions {
    gap: 1.6rem;
  }
}
.p-header--minimal .p-header__minimal-link {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
  padding: 0.6rem 0.4rem;
  color: #13195f;
  font-size: 1.3rem;
  font-weight: 500;
  letter-spacing: -0.02em;
  text-decoration: none;
  white-space: nowrap;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
@media (min-width: 1000px) {
  .p-header--minimal .p-header__minimal-link {
    font-size: 1.5rem;
    padding: 0.6rem 0.8rem;
  }
}
.p-header--minimal .p-header__minimal-link i {
  font-size: 1.3rem;
  color: #13195f;
}
@media (min-width: 1000px) {
  .p-header--minimal .p-header__minimal-link i {
    font-size: 1.4rem;
  }
}
.p-header--minimal .p-header__minimal-link:hover {
  opacity: 0.7;
}

.p-hero {
  position: relative;
  width: 100%;
  aspect-ratio: 1828/1000;
  overflow: hidden;
  color: #ffffff;
  isolation: isolate;
}
@media (max-width: 799px) {
  .p-hero {
    aspect-ratio: 402/631;
  }
}
@media (min-width: 600px) and (max-width: 799px) {
  .p-hero {
    aspect-ratio: 1/1;
  }
}
.p-hero__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}
.p-hero__bg .swiper-wrapper,
.p-hero__bg .swiper-slide {
  width: 100%;
  height: 100%;
}
.p-hero__bg .swiper-slide {
  overflow: hidden;
}
.p-hero__bg picture {
  display: block;
  width: 100%;
  height: 100%;
}
.p-hero__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transform-origin: center center;
          transform-origin: center center;
  will-change: transform;
}
.p-hero__bg .swiper-slide-active img,
.p-hero__bg .swiper-slide-duplicate-active img,
.p-hero__bg .swiper-slide-prev img,
.p-hero__bg .swiper-slide-duplicate-prev img {
  -webkit-animation: hero-kenburns 12s ease-out forwards;
          animation: hero-kenburns 12s ease-out forwards;
}
.p-hero__bg.is-single img {
  -webkit-transform: none;
          transform: none;
  -webkit-animation: none;
          animation: none;
}
.p-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(0, 0, 0, 0.35)), to(rgba(0, 0, 0, 0.6)));
  background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.35) 50%, rgba(0, 0, 0, 0.6) 100%);
}
@media (max-width: 799px) {
  .p-hero__overlay {
    background: -webkit-gradient(linear, left top, right top, from(rgba(12, 9, 38, 0.4)), color-stop(48.08%, rgba(4, 3, 15, 0.6)));
    background: linear-gradient(90deg, rgba(12, 9, 38, 0.4) 0%, rgba(4, 3, 15, 0.6) 48.08%);
  }
}
.p-hero__mask {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 1;
  width: 60%;
  max-width: 75rem;
  pointer-events: none;
}
.p-hero__mask img {
  width: 100%;
  height: auto;
  display: block;
}
@media (max-width: 799px) {
  .p-hero__mask {
    width: 100%;
    max-width: none;
  }
}
.p-hero__inner {
  position: absolute;
  inset: 0;
  z-index: 2;
  padding: clamp(4rem, 6vw, 12rem) clamp(2rem, 4vw, 8rem) clamp(3rem, 5vw, 9rem);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  text-align: right;
}
@media (max-width: 799px) {
  .p-hero__inner {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    text-align: center;
    padding: 13rem 1.6rem 2.4rem;
  }
}
@media (min-width: 600px) and (max-width: 799px) {
  .p-hero__inner {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 9rem 2.4rem 6rem;
  }
}
.p-hero__title {
  position: relative;
  width: clamp(28rem, 47vw, 80rem);
  margin: 0 0 clamp(1.6rem, 2vw, 3.6rem);
  line-height: 1;
}
.p-hero__title picture {
  display: block;
}
@media (max-width: 799px) {
  .p-hero__title {
    position: relative;
    width: 100%;
    max-width: 32rem;
    margin: 0 auto 1.4rem;
  }
}
@media (min-width: 600px) and (max-width: 799px) {
  .p-hero__title {
    max-width: none;
    width: 53.33vw;
    margin: 0 auto 2.34vw;
  }
}
@media (min-width: 800px) and (max-width: 999px) {
  .p-hero__title {
    -webkit-transform: translateY(10px);
            transform: translateY(10px);
  }
}
.p-hero__title-img {
  width: 100%;
  height: auto;
  display: block;
}
.p-hero__star {
  position: absolute;
  top: -30px;
  right: 0;
  z-index: 3;
  width: clamp(7rem, 9vw, 14rem);
  height: clamp(7rem, 9vw, 14rem);
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #1e3a8a;
  font-weight: 900;
  line-height: 1.25;
  text-align: center;
  background: url("../images/top/hero-area-pop.png") center/contain no-repeat;
  -webkit-filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.25));
          filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.25));
}
@media (max-width: 799px) {
  .p-hero__star {
    top: -2rem;
    right: -1.5rem;
    width: 10.4rem;
    height: 10.4rem;
  }
}
@media (min-width: 600px) and (max-width: 799px) {
  .p-hero__star {
    top: -3.33vw;
    right: -2.5vw;
    width: 17.33vw;
    height: 17.33vw;
  }
}
@media (min-width: 800px) and (max-width: 999px) {
  .p-hero__star {
    top: -16px;
  }
}
.p-hero__star-text {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.2rem;
  font-family: "Inter", "Noto Sans JP", sans-serif;
  letter-spacing: 0.04em;
}
.p-hero__star-main {
  display: block;
  font-size: clamp(1.1rem, 1.3vw, 1.8rem);
  font-weight: 700;
  line-height: 1.15;
}
@media (max-width: 799px) {
  .p-hero__star-main {
    font-size: 1.8rem;
  }
}
@media (min-width: 600px) and (max-width: 799px) {
  .p-hero__star-main {
    font-size: 3vw;
  }
}
.p-hero__star-sub {
  display: block;
  font-size: clamp(0.9rem, 1vw, 1.4rem);
  font-weight: 700;
  line-height: 1.15;
}
@media (max-width: 799px) {
  .p-hero__star-sub {
    font-size: 1.3rem;
  }
}
@media (min-width: 600px) and (max-width: 799px) {
  .p-hero__star-sub {
    font-size: 2.17vw;
  }
}
.p-hero__sub {
  width: clamp(28rem, 47vw, 80rem);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: clamp(1.6rem, 2vw, 3.2rem);
  color: #ffffff;
  font-family: "Inter", "Noto Sans JP", sans-serif;
  font-size: clamp(1.4rem, 1.5vw, 2.4rem);
  font-weight: 500;
  letter-spacing: 0.04em;
  text-align: center;
}
.p-hero__sub br {
  display: none;
}
@media (max-width: 799px) {
  .p-hero__sub {
    width: 90%;
    font-size: 1.8rem;
    line-height: 1.55;
    margin-bottom: 1.6rem;
  }
  .p-hero__sub br {
    display: inline;
  }
}
@media (min-width: 600px) and (max-width: 799px) {
  .p-hero__sub {
    font-size: 3vw;
    margin-bottom: 2.67vw;
  }
}
.p-hero__count {
  width: clamp(28rem, 47vw, 80rem);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(1.2rem, 1.4vw, 2.4rem);
  color: #ffffff;
  font-family: "Inter", "Noto Sans JP", sans-serif;
  font-size: clamp(1.8rem, 2vw, 3rem);
  font-weight: 700;
  letter-spacing: 0.04em;
}
@media (max-width: 799px) {
  .p-hero__count {
    width: 90%;
    font-size: 1.8rem;
    gap: 1.2rem;
  }
}
@media (min-width: 600px) and (max-width: 799px) {
  .p-hero__count {
    font-size: 3vw;
    gap: 2vw;
  }
}
.p-hero__count-text {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
}
.p-hero__count-leaf {
  display: block;
  width: clamp(1.8rem, 2vw, 3rem);
  height: clamp(4.6rem, 5vw, 7.6rem);
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  -webkit-filter: brightness(0) invert(1);
          filter: brightness(0) invert(1);
}
.p-hero__count-leaf--right {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
}
@media (max-width: 799px) {
  .p-hero__count-leaf {
    width: 1.8rem;
    height: 4.6rem;
  }
}
@media (min-width: 600px) and (max-width: 799px) {
  .p-hero__count-leaf {
    width: 3vw;
    height: 7.67vw;
  }
}
.p-hero__count-num {
  color: #ffffff;
  font-size: clamp(4.4rem, 6vw, 9rem);
  font-weight: 500;
  line-height: 1;
  margin: 0 0.4rem;
}
@media (max-width: 799px) {
  .p-hero__count-num {
    font-size: 3.6rem;
  }
}
@media (min-width: 600px) and (max-width: 799px) {
  .p-hero__count-num {
    font-size: 6vw;
  }
}

@-webkit-keyframes hero-kenburns {
  0% {
    -webkit-transform: scale(1.07);
            transform: scale(1.07);
  }
  100% {
    -webkit-transform: scale(1.13);
            transform: scale(1.13);
  }
}

@keyframes hero-kenburns {
  0% {
    -webkit-transform: scale(1.07);
            transform: scale(1.07);
  }
  100% {
    -webkit-transform: scale(1.13);
            transform: scale(1.13);
  }
}
.p-bluebg {
  background-color: #e0f2fe;
  background-image: url("../images/top/blue-bg-sp.jpg");
  background-image: -webkit-image-set(url("../images/top/blue-bg-sp.webp") type("image/webp"), url("../images/top/blue-bg-sp.jpg") type("image/jpeg"));
  background-image: image-set(url("../images/top/blue-bg-sp.webp") type("image/webp"), url("../images/top/blue-bg-sp.jpg") type("image/jpeg"));
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
}
@media (min-width: 800px) {
  .p-bluebg {
    background-image: url("../images/top/blue-bg.jpg");
    background-image: -webkit-image-set(url("../images/top/blue-bg.webp") type("image/webp"), url("../images/top/blue-bg.jpg") type("image/jpeg"));
    background-image: image-set(url("../images/top/blue-bg.webp") type("image/webp"), url("../images/top/blue-bg.jpg") type("image/jpeg"));
  }
}

.p-search {
  background-color: transparent;
  padding: 3.2rem 0;
}
.p-search__inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-search__inner {
    padding: 0 2.4rem;
  }
}
@media (min-width: 600px) and (max-width: 1199px) {
  .p-search__inner {
    padding: 0 4rem;
  }
}
.p-search__title {
  font-family: "Inter", "Noto Sans JP", sans-serif;
  font-size: 2rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.4;
  letter-spacing: 0.15em;
  margin-bottom: 1.2rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #13195F;
}
@media (min-width: 1000px) {
  .p-search__title {
    display: none;
  }
}
.p-search__form {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.2rem;
}
.p-search__row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.2rem;
}
@media (min-width: 1000px) {
  .p-search__row {
    grid-template-columns: 14rem 14rem 14rem 1fr 14rem;
    gap: 1.2rem;
    -webkit-box-align: end;
    -webkit-align-items: end;
        -ms-flex-align: end;
            align-items: end;
  }
}
.p-search__group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.4rem;
}
.p-search__group--cond {
  grid-column: 1/3;
}
@media (min-width: 1000px) {
  .p-search__group--cond {
    grid-column: auto;
  }
}
.p-search__group--keyword {
  grid-column: 1/3;
}
@media (min-width: 1000px) {
  .p-search__group--keyword {
    grid-column: auto;
  }
}
.p-search__group--submit {
  grid-column: 1/3;
}
@media (min-width: 1000px) {
  .p-search__group--submit {
    grid-column: auto;
  }
}
.p-search__label {
  font-size: 1.3rem;
  font-weight: 700;
  color: #1e3a8a;
  line-height: 1;
}
.p-search__select {
  position: relative;
  z-index: 5;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.8rem;
  height: 4.4rem;
  padding: 0 1.4rem;
  background-color: #ffffff;
  border: 1px solid #99a1af;
  border-radius: 0.4rem;
  color: #0a0a0a;
  font-size: 1.4rem;
  cursor: pointer;
  -webkit-transition: border-color 0.2s ease;
  transition: border-color 0.2s ease;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -webkit-filter: drop-shadow(0 4px 0 #99a1af);
          filter: drop-shadow(0 4px 0 #99a1af);
}
@media (max-width: 599px) {
  .p-search__select {
    height: 5rem;
    font-size: 1.5rem;
  }
}
@media (min-width: 1000px) {
  .p-search__select {
    -webkit-filter: drop-shadow(0 2px 0 #99a1af);
            filter: drop-shadow(0 2px 0 #99a1af);
  }
}
.p-search__select:hover {
  border-color: #1e40af;
}
.p-search__select.is-selected {
  color: #0a0a0a;
  font-weight: 500;
}
.p-search__select.is-open {
  z-index: 30;
}
.p-search__select-icon {
  color: #94a3b8;
  font-size: 1.2rem;
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}
.p-search__select.is-open .p-search__select-icon {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.p-search__select--cond {
  z-index: 1;
  background-color: #e9e9e9;
  -webkit-box-shadow: 0 4px 0 0 #99a1af;
          box-shadow: 0 4px 0 0 #99a1af;
  -webkit-filter: none;
          filter: none;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-search__select--cond {
    background-color: #ffffff;
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-filter: drop-shadow(0 2px 0 #99a1af);
            filter: drop-shadow(0 2px 0 #99a1af);
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    text-align: left;
  }
}
.p-search__select--cond .p-search__select-icon {
  position: absolute;
  right: 1.4rem;
  color: #1e40af;
  font-size: 1.4rem;
}
.p-search__select--cond.is-open .p-search__select-icon {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.p-search__options {
  position: absolute;
  top: calc(100% + 0.4rem);
  left: 0;
  right: 0;
  z-index: 20;
  max-height: 28rem;
  overflow-y: auto;
  margin: 0;
  padding: 0.6rem 0;
  list-style: none;
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 0.8rem;
  -webkit-box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12);
          box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12);
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(-0.4rem);
          transform: translateY(-0.4rem);
  -webkit-transition: opacity 0.18s ease, visibility 0.18s ease, -webkit-transform 0.18s ease;
  transition: opacity 0.18s ease, visibility 0.18s ease, -webkit-transform 0.18s ease;
  transition: opacity 0.18s ease, visibility 0.18s ease, transform 0.18s ease;
  transition: opacity 0.18s ease, visibility 0.18s ease, transform 0.18s ease, -webkit-transform 0.18s ease;
}
.p-search__select.is-open .p-search__options {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.p-search__option {
  padding: 0.9rem 1.4rem;
  color: #1f2937;
  font-size: 1.4rem;
  cursor: pointer;
  -webkit-transition: background-color 0.15s ease, color 0.15s ease;
  transition: background-color 0.15s ease, color 0.15s ease;
}
.p-search__option:hover, .p-search__option.is-active {
  background-color: #eff4ff;
  color: #1e40af;
}
.p-search__cond-panel {
  position: absolute;
  top: calc(100% + 0.4rem);
  left: 0;
  z-index: 20;
  width: min(36rem, 100vw - 3.2rem);
  padding: 1.6rem;
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 1.2rem;
  -webkit-box-shadow: 0 12px 32px rgba(15, 23, 42, 0.16);
          box-shadow: 0 12px 32px rgba(15, 23, 42, 0.16);
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(-0.4rem);
          transform: translateY(-0.4rem);
  -webkit-transition: opacity 0.18s ease, visibility 0.18s ease, -webkit-transform 0.18s ease;
  transition: opacity 0.18s ease, visibility 0.18s ease, -webkit-transform 0.18s ease;
  transition: opacity 0.18s ease, visibility 0.18s ease, transform 0.18s ease;
  transition: opacity 0.18s ease, visibility 0.18s ease, transform 0.18s ease, -webkit-transform 0.18s ease;
  cursor: default;
}
@media (min-width: 1000px) {
  .p-search__cond-panel {
    left: auto;
    right: 0;
    width: 36rem;
  }
}
.p-search__select.is-open .p-search__cond-panel {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.p-search__cond-title {
  margin: 0 0 0.8rem;
  color: #1e3a8a;
  font-size: 1.4rem;
  font-weight: 700;
}
.p-search__cond-list {
  list-style: none;
  margin: 0 0 1.2rem;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.6rem 1.2rem;
}
.p-search__cond-list li label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
  padding: 0.4rem 0;
  color: #1f2937;
  font-size: 1.3rem;
  cursor: pointer;
}
.p-search__cond-list li input[type=checkbox] {
  width: 1.6rem;
  height: 1.6rem;
  accent-color: #1e40af;
  cursor: pointer;
}
.p-search__cond-actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0.8rem;
  padding-top: 1rem;
  border-top: 1px solid #f1f5f9;
}
.p-search__cond-clear, .p-search__cond-apply {
  height: 3.6rem;
  padding: 0 1.4rem;
  border: 1px solid #d1d5db;
  border-radius: 0.6rem;
  background-color: #ffffff;
  color: #1f2937;
  font-size: 1.3rem;
  font-weight: 500;
  cursor: pointer;
  -webkit-transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
  transition: background-color 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}
.p-search__cond-clear:hover, .p-search__cond-apply:hover {
  border-color: #1e40af;
  color: #1e40af;
}
.p-search__cond-apply {
  background-color: #1e40af;
  border-color: #1e40af;
  color: #ffffff;
  font-weight: 700;
}
.p-search__cond-apply:hover {
  background-color: #1e3a8a;
  border-color: #1e3a8a;
  color: #ffffff;
}
.p-search__input {
  width: 100%;
  height: 4.4rem;
  padding: 0 1.4rem;
  background-color: #ffffff;
  border: 1px solid #99a1af;
  border-radius: 0.4rem;
  color: #1f2937;
  font-size: 1.4rem;
  outline: none;
  -webkit-transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
}
.p-search__input::-webkit-input-placeholder {
  color: rgba(10, 10, 10, 0.3);
}
.p-search__input::-moz-placeholder {
  color: rgba(10, 10, 10, 0.3);
}
.p-search__input:-ms-input-placeholder {
  color: rgba(10, 10, 10, 0.3);
}
.p-search__input::-ms-input-placeholder {
  color: rgba(10, 10, 10, 0.3);
}
.p-search__input::placeholder {
  color: rgba(10, 10, 10, 0.3);
}
.p-search__input:focus {
  border-color: #1e40af;
  -webkit-box-shadow: 0 0 0 3px rgba(30, 64, 175, 0.12);
          box-shadow: 0 0 0 3px rgba(30, 64, 175, 0.12);
}
@media (max-width: 599px) {
  .p-search__input {
    height: 6rem;
    font-size: 1.5rem;
    padding: 0 1.6rem;
  }
  .p-search__input::-webkit-input-placeholder {
    color: rgba(10, 10, 10, 0.3);
    font-size: 1.5rem;
    font-weight: 500;
  }
  .p-search__input::-moz-placeholder {
    color: rgba(10, 10, 10, 0.3);
    font-size: 1.5rem;
    font-weight: 500;
  }
  .p-search__input:-ms-input-placeholder {
    color: rgba(10, 10, 10, 0.3);
    font-size: 1.5rem;
    font-weight: 500;
  }
  .p-search__input::-ms-input-placeholder {
    color: rgba(10, 10, 10, 0.3);
    font-size: 1.5rem;
    font-weight: 500;
  }
  .p-search__input::placeholder {
    color: rgba(10, 10, 10, 0.3);
    font-size: 1.5rem;
    font-weight: 500;
  }
}
.p-search__submit {
  height: 4.4rem;
  width: 100%;
  background-color: #1a54d4;
  color: #ffffff;
  border: none;
  border-radius: 5px;
  -webkit-box-shadow: 0 3px 0 #12398e;
          box-shadow: 0 3px 0 #12398e;
  font-family: "Inter", "Noto Sans JP", sans-serif;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.0625em;
  cursor: pointer;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.6rem;
  -webkit-transition: background-color 0.2s ease, -webkit-transform 0.1s ease, -webkit-box-shadow 0.1s ease;
  transition: background-color 0.2s ease, -webkit-transform 0.1s ease, -webkit-box-shadow 0.1s ease;
  transition: background-color 0.2s ease, transform 0.1s ease, box-shadow 0.1s ease;
  transition: background-color 0.2s ease, transform 0.1s ease, box-shadow 0.1s ease, -webkit-transform 0.1s ease, -webkit-box-shadow 0.1s ease;
}
.p-search__submit:hover {
  background-color: #1746b8;
}
.p-search__submit:active {
  -webkit-transform: translateY(2px);
          transform: translateY(2px);
  -webkit-box-shadow: 0 1px 0 #12398e;
          box-shadow: 0 1px 0 #12398e;
}
@media (max-width: 599px) {
  .p-search__submit {
    height: 5rem;
    font-size: 1.6rem;
  }
}
.p-search__all {
  margin-top: 0.4rem;
}
.p-search__all a {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
  color: #1e40af;
  font-size: 1.3rem;
  font-weight: 500;
  text-decoration: underline;
}
@media (max-width: 599px) {
  .p-search__group--cond .p-search__label, .p-search__group--keyword .p-search__label, .p-search__group--submit .p-search__label {
    display: none;
  }
  .p-search__title {
    font-size: 2.4rem;
    margin-bottom: 2rem;
    padding-bottom: 1.2rem;
  }
}

.p-section {
  padding: 4.8rem 0;
}
@media (min-width: 1000px) {
  .p-section {
    padding: 6.4rem 0;
  }
}
.p-section__inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-section__inner {
    padding: 0 2.4rem;
  }
}
@media (min-width: 600px) and (max-width: 1199px) {
  .p-section__inner {
    padding: 0 4rem;
  }
}
.p-section__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.6rem;
  margin-bottom: 2rem;
}
@media (min-width: 1000px) {
  .p-section__head {
    margin-bottom: 2.4rem;
  }
}
.p-section__title {
  font-family: "Inter", "Noto Sans JP", sans-serif;
  font-size: 2.4rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.4;
}
@media (min-width: 1000px) {
  .p-section__title {
    font-size: 3.2rem;
  }
}
.p-section__more {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
  font-size: 1.3rem;
  font-weight: 500;
  color: #1e40af;
}
.p-section__more i {
  font-size: 1.1rem;
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}
.p-section__more:hover i {
  -webkit-transform: translateX(3px);
          transform: translateX(3px);
}

.p-companies {
  background-color: transparent;
}
.p-companies--new {
  background-color: transparent;
  padding-top: 0;
}
@media (min-width: 1000px) {
  .p-companies--new {
    padding-top: 0;
  }
}
.p-companies .p-section__title {
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-companies .p-section__title {
    margin-bottom: 2.4rem;
  }
}
.p-companies__slider {
  position: relative;
  padding: 0;
}
.p-companies__slider .swiper {
  padding: 8px 0;
  margin: -8px 0;
}
.p-companies__prev, .p-companies__next {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 4.4rem;
  height: 4.4rem;
  border-radius: 50%;
  background-color: #ffffff;
  color: #1e40af;
  border: 1px solid #e5e7eb;
  -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
          box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  cursor: pointer;
  z-index: 2;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.p-companies__prev i, .p-companies__next i {
  font-size: 1.4rem;
}
.p-companies__prev:hover, .p-companies__next:hover {
  background-color: #1e40af;
  color: #ffffff;
}
@media (min-width: 1000px) {
  .p-companies__prev, .p-companies__next {
    width: 4.8rem;
    height: 4.8rem;
  }
}
@media (max-width: 599px) {
  .p-companies__prev, .p-companies__next {
    display: none;
  }
}
.p-companies__prev {
  left: -1.6rem;
}
@media (min-width: 1000px) {
  .p-companies__prev {
    left: -2.4rem;
  }
}
.p-companies__next {
  right: -1.6rem;
}
@media (min-width: 1000px) {
  .p-companies__next {
    right: -2.4rem;
  }
}
.p-companies__pagination {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.6rem;
  margin-top: 2.4rem;
}
.p-companies__pagination .swiper-pagination-bullet {
  width: 0.8rem;
  height: 0.8rem;
  background-color: #cbd5e1;
  opacity: 1;
  border-radius: 9999px;
  -webkit-transition: width 0.2s ease, background-color 0.2s ease;
  transition: width 0.2s ease, background-color 0.2s ease;
}
.p-companies__pagination .swiper-pagination-bullet-active {
  width: 3.2rem;
  background-color: #1e40af;
}

.p-explore {
  background-color: transparent;
  padding-top: 0;
}
@media (min-width: 1000px) {
  .p-explore {
    padding-top: 0;
  }
}
.p-explore__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}
@media (min-width: 1000px) {
  .p-explore__grid {
    grid-template-columns: 1fr 1fr;
    gap: 2.4rem;
  }
}
.p-explore__card {
  background-color: #ffffff;
  border: 1px solid #e0f2fe;
  border-radius: 1rem;
  padding: 2rem;
  -webkit-box-shadow: 0 4px 12px rgba(30, 58, 138, 0.06);
          box-shadow: 0 4px 12px rgba(30, 58, 138, 0.06);
}
@media (min-width: 1000px) {
  .p-explore__card {
    padding: 2.4rem;
  }
}
.p-explore__title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
  font-family: "Inter", "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  color: #13195F;
  margin-bottom: 1.4rem;
}
@media (min-width: 1000px) {
  .p-explore__title {
    font-size: 1.8rem;
  }
}
.p-explore__icon {
  color: #155dfc;
  font-size: 2rem;
  line-height: 1;
}
.p-explore__chips {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.8rem;
  list-style: none;
  margin: 0;
  padding: 0;
}
.p-explore__btn {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 3.8rem;
  padding: 0 1.7rem;
  background-color: #ffffff;
  border: 1px solid #d1d5dc;
  border-radius: 0.4rem;
  color: #1f2937;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1;
  text-decoration: none;
  -webkit-transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
  transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}
.p-explore__btn:hover {
  border-color: #155dfc;
  color: #155dfc;
  opacity: 1;
}

.p-topics {
  background-color: #f5f9fa;
}
.p-topics__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  border-top: 1px solid #e5e7eb;
}
.p-topics__item {
  border-bottom: 1px solid #e5e7eb;
}
.p-topics__link {
  display: grid;
  grid-template-columns: auto auto 1fr auto;
  grid-template-areas: "badge date title arrow";
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  padding: 1.6rem 0;
  color: inherit;
  text-decoration: none;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}
@media (min-width: 1000px) {
  .p-topics__link {
    gap: 2rem;
    padding: 2rem 0.4rem;
  }
}
@media (max-width: 599px) {
  .p-topics__link {
    grid-template-columns: auto auto 1fr auto;
    grid-template-areas: "badge date . arrow" "title title title arrow";
    -webkit-column-gap: 0.8rem;
       -moz-column-gap: 0.8rem;
            column-gap: 0.8rem;
    row-gap: 0.8rem;
    padding: 1.4rem 0;
  }
}
.p-topics__link:hover {
  background-color: #eef4f6;
  opacity: 1;
}
.p-topics > * .c-badge, .p-topics__link .c-badge {
  grid-area: badge;
}
.p-topics__date {
  grid-area: date;
  font-size: 1.2rem;
  font-weight: 500;
  color: #6b7280;
  white-space: nowrap;
}
@media (min-width: 1000px) {
  .p-topics__date {
    font-size: 1.3rem;
  }
}
.p-topics__title {
  grid-area: title;
  font-size: 1.4rem;
  font-weight: 500;
  color: #1f2937;
  line-height: 1.5;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (min-width: 1000px) {
  .p-topics__title {
    font-size: 1.5rem;
  }
}
.p-topics__arrow {
  grid-area: arrow;
  justify-self: end;
  align-self: center;
  color: #94a3b8;
  font-size: 1.2rem;
}

.p-archive-company,
.p-archive-job {
  background-color: #f7f9fc;
  padding-bottom: 6.4rem;
}
@media (min-width: 1000px) {
  .p-archive-company,
  .p-archive-job {
    padding-bottom: 9.6rem;
  }
}
.p-archive-company .p-bluebg,
.p-archive-job .p-bluebg {
  background-color: transparent;
  background-image: none;
}
@media (min-width: 800px) {
  .p-archive-company .p-bluebg,
  .p-archive-job .p-bluebg {
    background-image: none;
  }
}

.p-page-head {
  padding: 13rem 0 2.4rem;
}
@media (min-width: 1000px) {
  .p-page-head {
    padding: 15rem 0 3.6rem;
  }
}
.p-page-head__inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-head__inner {
    padding: 0 2.4rem;
  }
}
@media (min-width: 600px) and (max-width: 1199px) {
  .p-page-head__inner {
    padding: 0 4rem;
  }
}
.p-page-head__breadcrumb {
  margin-bottom: 1.6rem;
}
.p-page-head__breadcrumb ol {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem 0.8rem;
  font-size: 1.2rem;
  color: #6b7280;
}
@media (min-width: 1000px) {
  .p-page-head__breadcrumb ol {
    font-size: 1.3rem;
  }
}
.p-page-head__breadcrumb li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-page-head__breadcrumb li:not(:last-child)::after {
  content: "/";
  margin-left: 0.8rem;
  color: #d1d5db;
}
.p-page-head__breadcrumb li a {
  color: #1e40af;
  text-decoration: none;
}
.p-page-head__breadcrumb li a:hover {
  opacity: 0.75;
}
.p-page-head__breadcrumb li [aria-current=page] {
  color: #4b5563;
}
.p-page-head__title {
  font-size: 2.4rem;
  font-weight: 700;
  color: #13195F;
  letter-spacing: 0.04em;
  line-height: 1.3;
  margin-bottom: 1.2rem;
  position: relative;
  padding-left: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-head__title {
    font-size: 3.2rem;
    padding-left: 2rem;
    margin-bottom: 1.6rem;
  }
}
.p-page-head__title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4rem;
  bottom: 0.4rem;
  width: 5px;
  background: -webkit-gradient(linear, left top, left bottom, from(#fbbf24), to(#f59e0b));
  background: linear-gradient(180deg, #fbbf24, #f59e0b);
  border-radius: 3px;
}
@media (min-width: 1000px) {
  .p-page-head__title::before {
    width: 6px;
  }
}
.p-page-head__lead {
  font-size: 1.3rem;
  color: #4b5563;
  line-height: 1.75;
}
@media (min-width: 1000px) {
  .p-page-head__lead {
    font-size: 1.5rem;
  }
}

.p-results {
  padding: 3.2rem 0 0;
}
@media (min-width: 1000px) {
  .p-results {
    padding: 4.8rem 0 0;
  }
}
.p-results__inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-results__inner {
    padding: 0 2.4rem;
  }
}
@media (min-width: 600px) and (max-width: 1199px) {
  .p-results__inner {
    padding: 0 4rem;
  }
}
.p-results__count {
  font-size: 1.3rem;
  color: #4b5563;
  margin-bottom: 2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  gap: 0.3rem;
}
@media (min-width: 1000px) {
  .p-results__count {
    font-size: 1.5rem;
    margin-bottom: 2.8rem;
  }
}
.p-results__count-num {
  font-size: 2rem;
  font-weight: 700;
  color: #1a54d4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-results__count-num {
    font-size: 2.4rem;
  }
}
.p-results__group {
  margin-bottom: 4.8rem;
}
@media (min-width: 1000px) {
  .p-results__group {
    margin-bottom: 6.4rem;
  }
}
.p-results__group:last-child {
  margin-bottom: 0;
}
.p-results__group-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  margin-bottom: 1.6rem;
  padding-bottom: 1rem;
  border-bottom: 2px solid #13195F;
}
@media (min-width: 1000px) {
  .p-results__group-head {
    gap: 1.2rem;
    margin-bottom: 2.4rem;
    padding-bottom: 1.2rem;
  }
}
.p-results__sponsor-badge {
  background-color: #ff6900;
  color: #ffffff;
  font-size: 1.1rem;
  font-weight: 700;
  padding: 0.3rem 0.8rem;
  border-radius: 4px;
  letter-spacing: 0.05em;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  line-height: 1.4;
}
@media (min-width: 1000px) {
  .p-results__sponsor-badge {
    font-size: 1.3rem;
    padding: 0.4rem 1.2rem;
  }
}
.p-results__group-title {
  font-size: 1.6rem;
  font-weight: 700;
  color: #13195F;
  letter-spacing: 0.04em;
  line-height: 1.4;
}
@media (min-width: 1000px) {
  .p-results__group-title {
    font-size: 2rem;
  }
}
.p-results__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}
@media (min-width: 600px) {
  .p-results__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
}
@media (min-width: 1000px) {
  .p-results__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.4rem;
  }
}

.p-pager {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
  margin-top: 4rem;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media (min-width: 1000px) {
  .p-pager {
    gap: 1rem;
    margin-top: 5.6rem;
  }
}
.p-pager__prev, .p-pager__next {
  width: 4rem;
  height: 4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #ffffff;
  border: 1px solid #d1d5db;
  border-radius: 4px;
  color: #1e3a8a;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  text-decoration: none;
  font-size: 1.4rem;
}
.p-pager__prev:hover, .p-pager__next:hover {
  background-color: #1a54d4;
  border-color: #1a54d4;
  color: #ffffff;
  opacity: 1;
}
.p-pager__prev.is-disabled, .p-pager__next.is-disabled {
  pointer-events: none;
  opacity: 0.4;
}
.p-pager__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
}
@media (min-width: 1000px) {
  .p-pager__list {
    gap: 0.6rem;
  }
}
.p-pager__num {
  min-width: 4rem;
  height: 4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0 0.6rem;
  background-color: #ffffff;
  border: 1px solid #d1d5db;
  border-radius: 4px;
  color: #1e3a8a;
  font-size: 1.4rem;
  font-weight: 600;
  text-decoration: none;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
}
.p-pager__num:hover {
  background-color: #1a54d4;
  border-color: #1a54d4;
  color: #ffffff;
  opacity: 1;
}
.p-pager__num.is-current {
  background-color: #1a54d4;
  color: #ffffff;
  border-color: #1a54d4;
  -webkit-box-shadow: 0 2px 0 #12398e;
          box-shadow: 0 2px 0 #12398e;
  pointer-events: none;
}
.p-pager__ellipsis {
  color: #6b7280;
  font-size: 1.4rem;
  padding: 0 0.2rem;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.p-archive-topic {
  background-color: #f7f9fc;
  padding-bottom: 6.4rem;
}
@media (min-width: 1000px) {
  .p-archive-topic {
    padding-bottom: 9.6rem;
  }
}
.p-archive-topic__inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-archive-topic__inner {
    padding: 0 2.4rem;
  }
}
@media (min-width: 600px) and (max-width: 1199px) {
  .p-archive-topic__inner {
    padding: 0 4rem;
  }
}
.p-archive-topic__filter {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 1.8rem 1.8rem;
  margin-bottom: 2.4rem;
}
@media (min-width: 1000px) {
  .p-archive-topic__filter {
    padding: 2.4rem 2.4rem;
    margin-bottom: 3.2rem;
  }
}
.p-archive-topic__filter-label {
  font-size: 1.3rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.4;
  margin-bottom: 1rem;
}
@media (min-width: 1000px) {
  .p-archive-topic__filter-label {
    font-size: 1.4rem;
    margin-bottom: 1.2rem;
  }
}
.p-archive-topic__filter-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.8rem;
}
@media (min-width: 1000px) {
  .p-archive-topic__filter-list {
    gap: 1rem;
  }
}
.p-archive-topic__filter-btn {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-width: 7rem;
  padding: 0.8rem 1.6rem;
  background-color: #ffffff;
  border: 1px solid #d1d5dc;
  border-radius: 4px;
  color: #0a0a0a;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.4;
  text-decoration: none;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
@media (min-width: 1000px) {
  .p-archive-topic__filter-btn {
    font-size: 1.4rem;
    padding: 0.9rem 1.8rem;
  }
}
.p-archive-topic__filter-btn:hover {
  background-color: #f3f4f6;
  border-color: #9ca3af;
}
.p-archive-topic__filter-btn.is-active {
  background-color: #1a54d4;
  border-color: #1a54d4;
  color: #ffffff;
  pointer-events: none;
}
.p-archive-topic__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.2rem;
}
@media (min-width: 1000px) {
  .p-archive-topic__list {
    gap: 1.6rem;
  }
}

.p-page-head--compact {
  padding: 11rem 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-head--compact {
    padding: 13rem 0 2.4rem;
  }
}

.p-single-company {
  background-color: #f7f9fc;
  padding-bottom: 6.4rem;
}
@media (min-width: 1000px) {
  .p-single-company {
    padding-bottom: 9.6rem;
  }
}
.p-single-company__inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-single-company__inner {
    padding: 0 2.4rem;
  }
}
@media (min-width: 600px) and (max-width: 1199px) {
  .p-single-company__inner {
    padding: 0 4rem;
  }
}
.p-single-company__card {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2rem 2rem;
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-single-company__card {
    padding: 3.2rem;
    margin-bottom: 2.4rem;
  }
}
.p-single-company__card:last-child {
  margin-bottom: 0;
}
.p-single-company__card--cta {
  background-color: #eff6ff;
  border-color: #bedbff;
}
.p-single-company__title {
  font-size: 2rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.35;
  letter-spacing: 0.02em;
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-single-company__title {
    font-size: 3rem;
    margin-bottom: 2.4rem;
  }
}
.p-single-company__meta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.8rem;
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-single-company__meta {
    gap: 1.2rem;
    margin-bottom: 2rem;
  }
}
.p-single-company__meta-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.8rem;
  font-size: 1.3rem;
  color: #4a5565;
  line-height: 1.5;
  word-break: break-all;
}
@media (min-width: 1000px) {
  .p-single-company__meta-item {
    font-size: 1.5rem;
  }
}
.p-single-company__meta-icon {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 2rem;
  margin-top: 0.2rem;
  color: #6b7280;
  font-size: 1.4rem;
}
@media (min-width: 1000px) {
  .p-single-company__meta-icon {
    font-size: 1.6rem;
  }
}
.p-single-company__meta-link {
  color: #155dfc;
  text-decoration: none;
  word-break: break-all;
}
.p-single-company__meta-link:hover {
  text-decoration: underline;
}
.p-single-company__tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.6rem;
  margin-bottom: 1.6rem;
  padding-bottom: 1.6rem;
  border-bottom: 1px solid #e5e7eb;
}
@media (min-width: 1000px) {
  .p-single-company__tags {
    gap: 0.8rem;
    margin-bottom: 2rem;
    padding-bottom: 2rem;
  }
}
.p-single-company__status {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 1.6rem 2.4rem;
}
@media (min-width: 1000px) {
  .p-single-company__status {
    gap: 1.6rem 3.2rem;
  }
}
.p-single-company__status-item {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
  font-size: 1.4rem;
  font-weight: 700;
  color: #00a63e;
  line-height: 1.4;
}
@media (min-width: 1000px) {
  .p-single-company__status-item {
    font-size: 1.6rem;
  }
}
.p-single-company__status-icon {
  font-size: 1.6rem;
}
@media (min-width: 1000px) {
  .p-single-company__status-icon {
    font-size: 1.8rem;
  }
}
.p-single-company__section-title {
  font-size: 1.7rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.4;
  letter-spacing: 0.02em;
  margin-bottom: 1.6rem;
  padding-bottom: 1rem;
  border-bottom: 2px solid #13195F;
}
@media (min-width: 1000px) {
  .p-single-company__section-title {
    font-size: 2rem;
    margin-bottom: 2rem;
    padding-bottom: 1.2rem;
  }
}
.p-single-company__desc {
  font-size: 1.3rem;
  color: #4a5565;
  line-height: 1.75;
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-single-company__desc {
    font-size: 1.5rem;
    margin-bottom: 2rem;
  }
}
.p-single-company__table {
  width: 100%;
  border-top: 1px solid #e5e7eb;
}
.p-single-company__table th,
.p-single-company__table td {
  padding: 1rem 1.2rem;
  font-size: 1.3rem;
  line-height: 1.5;
  border-bottom: 1px solid #e5e7eb;
  vertical-align: middle;
  text-align: left;
}
@media (min-width: 1000px) {
  .p-single-company__table th,
  .p-single-company__table td {
    padding: 1.4rem 1.6rem;
    font-size: 1.4rem;
  }
}
.p-single-company__table th {
  background-color: #f9fafb;
  font-weight: 700;
  color: #0a0a0a;
  width: 30%;
  white-space: nowrap;
}
@media (min-width: 800px) {
  .p-single-company__table th {
    width: 25%;
  }
}
.p-single-company__table td {
  color: #0a0a0a;
}
.p-single-company__feature-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.2rem;
}
@media (min-width: 1000px) {
  .p-single-company__feature-list {
    gap: 1.6rem;
  }
}
.p-single-company__feature {
  border: 1px solid #e5e7eb;
  border-radius: 4px;
  padding: 1.2rem 1.4rem;
}
@media (min-width: 1000px) {
  .p-single-company__feature {
    padding: 1.6rem 2rem;
  }
}
.p-single-company__feature-title {
  font-size: 1.4rem;
  font-weight: 700;
  color: #0a0a0a;
  line-height: 1.4;
  margin-bottom: 0.6rem;
}
@media (min-width: 1000px) {
  .p-single-company__feature-title {
    font-size: 1.5rem;
    margin-bottom: 0.8rem;
  }
}
.p-single-company__feature-desc {
  font-size: 1.3rem;
  color: #364153;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .p-single-company__feature-desc {
    font-size: 1.4rem;
  }
}
.p-single-company__equipment {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border: 1px solid #e5e7eb;
  border-radius: 4px;
}
.p-single-company__equipment-table {
  width: 100%;
  min-width: 560px;
  border-collapse: collapse;
}
.p-single-company__equipment-table th,
.p-single-company__equipment-table td {
  padding: 1rem 1.2rem;
  font-size: 1.3rem;
  line-height: 1.5;
  text-align: left;
  border-bottom: 1px solid #e5e7eb;
}
@media (min-width: 1000px) {
  .p-single-company__equipment-table th,
  .p-single-company__equipment-table td {
    padding: 1.2rem 1.6rem;
    font-size: 1.4rem;
  }
}
.p-single-company__equipment-table thead th {
  background-color: #f9fafb;
  font-weight: 700;
  color: #0a0a0a;
}
.p-single-company__equipment-table tbody td {
  color: #0a0a0a;
}
.p-single-company__equipment-table tbody tr:last-child td {
  border-bottom: 0;
}
.p-single-company__cta-lead {
  font-size: 1.3rem;
  color: #364153;
  line-height: 1.75;
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-single-company__cta-lead {
    font-size: 1.5rem;
    margin-bottom: 2rem;
  }
}
.p-single-company__gallery {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
@media (min-width: 800px) {
  .p-single-company__gallery {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.6rem;
  }
}
.p-single-company__gallery-item {
  aspect-ratio: 16/9;
  background-color: #f3f4f6;
  border-radius: 4px;
  overflow: hidden;
}
.p-single-company__gallery-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.p-single-company__pr {
  font-size: 1.3rem;
  color: #364153;
  line-height: 1.75;
}
@media (min-width: 1000px) {
  .p-single-company__pr {
    font-size: 1.5rem;
  }
}

.p-single-job {
  background-color: #f7f9fc;
  padding-bottom: 6.4rem;
}
@media (min-width: 1000px) {
  .p-single-job {
    padding-bottom: 9.6rem;
  }
}
.p-single-job__inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-single-job__inner {
    padding: 0 2.4rem;
  }
}
@media (min-width: 600px) and (max-width: 1199px) {
  .p-single-job__inner {
    padding: 0 4rem;
  }
}
.p-single-job__card {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2rem 2rem;
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-single-job__card {
    padding: 3.2rem;
    margin-bottom: 2.4rem;
  }
}
.p-single-job__card:last-child {
  margin-bottom: 0;
}
.p-single-job__card--cta {
  background-color: #eff6ff;
  border-color: #bedbff;
}
.p-single-job__meta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  margin-bottom: 1.2rem;
}
@media (min-width: 1000px) {
  .p-single-job__meta {
    gap: 1.2rem;
    margin-bottom: 1.6rem;
  }
}
.p-single-job__type-badge {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #dbeafe;
  color: #155dfc;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1;
  padding: 0.5rem 0.9rem;
  border-radius: 4px;
  letter-spacing: 0.04em;
}
.p-single-job__date {
  font-size: 1.2rem;
  color: #6a7282;
  line-height: 1.4;
}
.p-single-job__title {
  font-size: 2rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.35;
  letter-spacing: 0.02em;
  margin-bottom: 1.2rem;
}
@media (min-width: 1000px) {
  .p-single-job__title {
    font-size: 3rem;
    margin-bottom: 1.6rem;
  }
}
.p-single-job__company {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: 700;
  color: #155dfc;
  line-height: 1.4;
  text-decoration: none;
  margin-bottom: 1.6rem;
  word-break: break-all;
}
.p-single-job__company:hover {
  text-decoration: underline;
}
@media (min-width: 1000px) {
  .p-single-job__company {
    font-size: 1.6rem;
    margin-bottom: 2rem;
  }
}
.p-single-job__info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.8rem;
}
@media (min-width: 800px) {
  .p-single-job__info {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 1.2rem 2.4rem;
  }
}
.p-single-job__info-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
  font-size: 1.3rem;
  color: #4a5565;
  line-height: 1.5;
}
@media (min-width: 1000px) {
  .p-single-job__info-item {
    font-size: 1.5rem;
  }
}
.p-single-job__info-icon {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 2rem;
  color: #6b7280;
  font-size: 1.4rem;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-single-job__info-icon {
    font-size: 1.6rem;
  }
}
.p-single-job__salary {
  color: #155dfc;
  font-weight: 700;
}
.p-single-job__section-title {
  font-size: 1.7rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.4;
  letter-spacing: 0.02em;
  margin-bottom: 1.6rem;
  padding-bottom: 1rem;
  border-bottom: 2px solid #13195F;
}
@media (min-width: 1000px) {
  .p-single-job__section-title {
    font-size: 2rem;
    margin-bottom: 2rem;
    padding-bottom: 1.2rem;
  }
}
.p-single-job__desc {
  font-size: 1.3rem;
  color: #364153;
  line-height: 1.75;
}
@media (min-width: 1000px) {
  .p-single-job__desc {
    font-size: 1.5rem;
  }
}
.p-single-job__table {
  width: 100%;
  border-top: 1px solid #e5e7eb;
}
.p-single-job__table th,
.p-single-job__table td {
  padding: 1.2rem 1.2rem;
  font-size: 1.3rem;
  line-height: 1.55;
  border-bottom: 1px solid #e5e7eb;
  vertical-align: top;
  text-align: left;
}
@media (min-width: 1000px) {
  .p-single-job__table th,
  .p-single-job__table td {
    padding: 1.6rem 1.6rem;
    font-size: 1.4rem;
  }
}
.p-single-job__table th {
  background-color: #f9fafb;
  font-weight: 700;
  color: #0a0a0a;
  width: 33%;
  white-space: nowrap;
}
@media (min-width: 800px) {
  .p-single-job__table th {
    width: 25%;
  }
}
.p-single-job__table td {
  color: #0a0a0a;
}
.p-single-job__table .p-single-job__salary {
  display: block;
  margin-bottom: 0.6rem;
}
@media (min-width: 1000px) {
  .p-single-job__table .p-single-job__salary {
    margin-bottom: 0.8rem;
  }
}
.p-single-job__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.4rem;
}
.p-single-job__list li {
  position: relative;
  padding-left: 1.8rem;
  color: #0a0a0a;
  line-height: 1.55;
}
.p-single-job__list li::before {
  content: "•";
  position: absolute;
  left: 0.4rem;
  top: 0;
  color: #6b7280;
  font-weight: 700;
}
.p-single-job__cta-lead {
  font-size: 1.3rem;
  color: #364153;
  line-height: 1.75;
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-single-job__cta-lead {
    font-size: 1.5rem;
    margin-bottom: 2rem;
  }
}
.p-single-job__cta-actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media (min-width: 800px) {
  .p-single-job__cta-actions {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 1.6rem;
  }
}
.p-single-job__inquire-btn {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.8rem;
  min-width: 22rem;
  min-height: 5.6rem;
  padding: 1.6rem 2.4rem;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  text-decoration: none;
  background-color: #ffffff;
  border: 1px solid #155dfc;
  color: #155dfc;
  border-radius: 5px;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.p-single-job__inquire-btn:hover {
  background-color: #155dfc;
  color: #ffffff;
}

.p-single-topic {
  background-color: #f7f9fc;
  padding-bottom: 6.4rem;
}
@media (min-width: 1000px) {
  .p-single-topic {
    padding-bottom: 9.6rem;
  }
}
.p-single-topic__inner {
  max-width: 896px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-single-topic__inner {
    padding: 0 3.2rem;
  }
}
.p-single-topic__article {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2.4rem 2rem;
  margin-bottom: 2.4rem;
}
@media (min-width: 1000px) {
  .p-single-topic__article {
    padding: 4.8rem 4.8rem;
    margin-bottom: 3.2rem;
  }
}
.p-single-topic__meta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-single-topic__meta {
    margin-bottom: 2.4rem;
  }
}
.p-single-topic__title {
  font-size: 2.2rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.4;
  letter-spacing: 0.02em;
  margin-bottom: 2.4rem;
}
@media (min-width: 1000px) {
  .p-single-topic__title {
    font-size: 3rem;
    margin-bottom: 3.2rem;
  }
}
.p-single-topic__back {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
  margin: 0 auto;
  padding: 0.6rem 1rem;
  font-size: 1.4rem;
  font-weight: 700;
  color: #155dfc;
  text-decoration: none;
  letter-spacing: 0.02em;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
@media (min-width: 1000px) {
  .p-single-topic__back {
    font-size: 1.6rem;
  }
}
.p-single-topic__back:hover {
  opacity: 0.7;
}
.p-single-topic__back i {
  font-size: 1.3rem;
}

.p-single-topic__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.p-single-topic__inner .p-single-topic__back {
  -webkit-align-self: center;
      -ms-flex-item-align: center;
          align-self: center;
}

.p-page-apply {
  background-color: #f7f9fc;
  padding-bottom: 6.4rem;
}
@media (min-width: 1000px) {
  .p-page-apply {
    padding-bottom: 9.6rem;
  }
}
.p-page-apply__inner {
  max-width: 896px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-apply__inner {
    padding: 0 3.2rem;
  }
}
.p-page-apply__head {
  padding-bottom: 2.4rem;
}
@media (min-width: 1000px) {
  .p-page-apply__head {
    padding-bottom: 3.2rem;
  }
}
.p-page-apply__title {
  font-size: 2.4rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.3;
  letter-spacing: 0.02em;
  margin-bottom: 1rem;
  position: relative;
  padding-left: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-apply__title {
    font-size: 3.2rem;
    padding-left: 2rem;
    margin-bottom: 1.4rem;
  }
}
.p-page-apply__title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4rem;
  bottom: 0.4rem;
  width: 5px;
  background: -webkit-gradient(linear, left top, left bottom, from(#fbbf24), to(#f59e0b));
  background: linear-gradient(180deg, #fbbf24, #f59e0b);
  border-radius: 3px;
}
@media (min-width: 1000px) {
  .p-page-apply__title::before {
    width: 6px;
  }
}
.p-page-apply__lead {
  font-size: 1.3rem;
  color: #4a5565;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .p-page-apply__lead {
    font-size: 1.5rem;
  }
}
.p-page-apply__form {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2.4rem 2rem;
}
@media (min-width: 1000px) {
  .p-page-apply__form {
    padding: 4rem 4rem;
  }
}
.p-page-apply__section {
  margin-bottom: 3.2rem;
}
@media (min-width: 1000px) {
  .p-page-apply__section {
    margin-bottom: 4rem;
  }
}
.p-page-apply__section:last-of-type {
  margin-bottom: 0;
}
.p-page-apply__section-title {
  margin-bottom: 1.6rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #e5e7eb;
  font-size: 1.8rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-apply__section-title {
    font-size: 2rem;
    margin-bottom: 2.4rem;
    padding-bottom: 1.2rem;
  }
}

.p-page-apply-confirm__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0;
  border-top: 1px solid #e5e7eb;
}
.p-page-apply-confirm__item {
  display: grid;
  grid-template-columns: 1fr;
  border-bottom: 1px solid #e5e7eb;
}
@media (min-width: 800px) {
  .p-page-apply-confirm__item {
    grid-template-columns: 14rem 1fr;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (min-width: 1000px) {
  .p-page-apply-confirm__item {
    grid-template-columns: 18rem 1fr;
  }
}
.p-page-apply-confirm__term {
  padding: 1.2rem 1.2rem;
  background-color: #f9fafb;
  font-size: 1.3rem;
  font-weight: 700;
  color: #0a0a0a;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media (min-width: 800px) {
  .p-page-apply-confirm__term {
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
            align-self: stretch;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 1.4rem 1.6rem;
  }
}
@media (min-width: 1000px) {
  .p-page-apply-confirm__term {
    font-size: 1.4rem;
  }
}
.p-page-apply-confirm__desc {
  padding: 0.4rem 1.2rem 1.4rem;
  font-size: 1.4rem;
  color: #0a0a0a;
  line-height: 1.7;
  letter-spacing: 0.01em;
  word-break: break-word;
}
@media (min-width: 800px) {
  .p-page-apply-confirm__desc {
    padding: 1.4rem 1.6rem;
  }
}
@media (min-width: 1000px) {
  .p-page-apply-confirm__desc {
    font-size: 1.5rem;
  }
}
.p-page-apply-confirm__desc--empty {
  color: #9ca3af;
}
.p-page-apply-confirm__desc--multiline {
  white-space: pre-wrap;
}
.p-page-apply-confirm__desc .c-tag {
  margin: 0 0.4rem 0.4rem 0;
}

.p-page-apply-thanks {
  background-color: #f7f9fc;
  padding-bottom: 6.4rem;
}
@media (min-width: 1000px) {
  .p-page-apply-thanks {
    padding-bottom: 9.6rem;
  }
}
.p-page-apply-thanks__inner {
  max-width: 896px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-apply-thanks__inner {
    padding: 0 3.2rem;
  }
}
.p-page-apply-thanks__card {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 4rem 2rem;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-apply-thanks__card {
    padding: 6.4rem 4rem;
  }
}
.p-page-apply-thanks__icon {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 7.2rem;
  height: 7.2rem;
  margin-bottom: 2.4rem;
  background-color: #dcfce7;
  border-radius: 50%;
  color: #16a34a;
  font-size: 3.6rem;
  line-height: 1;
}
@media (min-width: 1000px) {
  .p-page-apply-thanks__icon {
    width: 8rem;
    height: 8rem;
    margin-bottom: 3.2rem;
    font-size: 4rem;
  }
}
.p-page-apply-thanks__title {
  margin-bottom: 1.6rem;
  font-size: 2.2rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-apply-thanks__title {
    font-size: 3rem;
    margin-bottom: 2.4rem;
  }
}
.p-page-apply-thanks__body {
  margin-bottom: 3.2rem;
  font-size: 1.4rem;
  color: #4a5565;
  line-height: 1.8;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-apply-thanks__body {
    margin-bottom: 4rem;
    font-size: 1.6rem;
  }
}
.p-page-apply-thanks__body p + p {
  margin-top: 1.2rem;
}
@media (min-width: 1000px) {
  .p-page-apply-thanks__body p + p {
    margin-top: 1.6rem;
  }
}
.p-page-apply-thanks__actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.2rem;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media (min-width: 800px) {
  .p-page-apply-thanks__actions {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1.6rem;
  }
}
.p-page-apply-thanks__actions .c-btn {
  width: 100%;
}
@media (min-width: 800px) {
  .p-page-apply-thanks__actions .c-btn {
    width: auto;
    min-width: 22rem;
  }
}

.p-page-login,
.p-page-password-reset,
.p-page-password-reset-thanks {
  background-color: #f7f9fc;
  padding: 11rem 0 6.4rem;
}
@media (min-width: 1000px) {
  .p-page-login,
  .p-page-password-reset,
  .p-page-password-reset-thanks {
    padding: 13rem 0 9.6rem;
  }
}
.p-page-login__inner,
.p-page-password-reset__inner,
.p-page-password-reset-thanks__inner {
  max-width: 480px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-login__inner,
  .p-page-password-reset__inner,
  .p-page-password-reset-thanks__inner {
    padding: 0 3.2rem;
  }
}
.p-page-login__head,
.p-page-password-reset__head,
.p-page-password-reset-thanks__head {
  text-align: center;
  margin-bottom: 2.4rem;
}
@media (min-width: 1000px) {
  .p-page-login__head,
  .p-page-password-reset__head,
  .p-page-password-reset-thanks__head {
    margin-bottom: 3.2rem;
  }
}
.p-page-login__title,
.p-page-password-reset__title,
.p-page-password-reset-thanks__title {
  margin-bottom: 1rem;
  font-size: 2.4rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.3;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-login__title,
  .p-page-password-reset__title,
  .p-page-password-reset-thanks__title {
    font-size: 3rem;
    margin-bottom: 1.2rem;
  }
}
.p-page-login__lead,
.p-page-password-reset__lead,
.p-page-password-reset-thanks__lead {
  font-size: 1.3rem;
  color: #4a5565;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .p-page-login__lead,
  .p-page-password-reset__lead,
  .p-page-password-reset-thanks__lead {
    font-size: 1.5rem;
  }
}
.p-page-login__card,
.p-page-password-reset__card,
.p-page-password-reset-thanks__card {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2.4rem 2rem;
}
@media (min-width: 1000px) {
  .p-page-login__card,
  .p-page-password-reset__card,
  .p-page-password-reset-thanks__card {
    padding: 3.2rem;
  }
}
.p-page-login__card + .p-page-login__card,
.p-page-login__card + .p-page-password-reset__card,
.p-page-login__card + .p-page-password-reset-thanks__card,
.p-page-password-reset__card + .p-page-login__card,
.p-page-password-reset__card + .p-page-password-reset__card,
.p-page-password-reset__card + .p-page-password-reset-thanks__card,
.p-page-password-reset-thanks__card + .p-page-login__card,
.p-page-password-reset-thanks__card + .p-page-password-reset__card,
.p-page-password-reset-thanks__card + .p-page-password-reset-thanks__card {
  margin-top: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-login__card + .p-page-login__card,
  .p-page-login__card + .p-page-password-reset__card,
  .p-page-login__card + .p-page-password-reset-thanks__card,
  .p-page-password-reset__card + .p-page-login__card,
  .p-page-password-reset__card + .p-page-password-reset__card,
  .p-page-password-reset__card + .p-page-password-reset-thanks__card,
  .p-page-password-reset-thanks__card + .p-page-login__card,
  .p-page-password-reset-thanks__card + .p-page-password-reset__card,
  .p-page-password-reset-thanks__card + .p-page-password-reset-thanks__card {
    margin-top: 2.4rem;
  }
}
.p-page-login__card--signup,
.p-page-password-reset__card--signup,
.p-page-password-reset-thanks__card--signup {
  text-align: center;
  padding: 2rem 2rem;
}
@media (min-width: 1000px) {
  .p-page-login__card--signup,
  .p-page-password-reset__card--signup,
  .p-page-password-reset-thanks__card--signup {
    padding: 2.4rem 3.2rem;
  }
}
.p-page-login__submit,
.p-page-password-reset__submit,
.p-page-password-reset-thanks__submit {
  margin-top: 0.8rem;
}
@media (min-width: 1000px) {
  .p-page-login__submit,
  .p-page-password-reset__submit,
  .p-page-password-reset-thanks__submit {
    margin-top: 1.2rem;
  }
}
.p-page-login__forgot,
.p-page-password-reset__forgot,
.p-page-password-reset-thanks__forgot {
  margin-top: 1.6rem;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-login__forgot,
  .p-page-password-reset__forgot,
  .p-page-password-reset-thanks__forgot {
    margin-top: 2rem;
  }
}
.p-page-login__forgot a,
.p-page-password-reset__forgot a,
.p-page-password-reset-thanks__forgot a {
  display: inline-block;
  padding: 0.4rem 0.8rem;
  color: #1a54d4;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  text-decoration: none;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.p-page-login__forgot a:hover,
.p-page-password-reset__forgot a:hover,
.p-page-password-reset-thanks__forgot a:hover {
  color: #12398e;
  text-decoration: underline;
}
.p-page-login__signup-text,
.p-page-password-reset__signup-text,
.p-page-password-reset-thanks__signup-text {
  margin-bottom: 0.8rem;
  font-size: 1.4rem;
  color: #4a5565;
  line-height: 1.6;
}
@media (min-width: 1000px) {
  .p-page-login__signup-text,
  .p-page-password-reset__signup-text,
  .p-page-password-reset-thanks__signup-text {
    font-size: 1.5rem;
    margin-bottom: 1.2rem;
  }
}
.p-page-login__signup-link a,
.p-page-password-reset__signup-link a,
.p-page-password-reset-thanks__signup-link a {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
  color: #1a54d4;
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  text-decoration: none;
  -webkit-transition: color 0.2s ease, gap 0.2s ease;
  transition: color 0.2s ease, gap 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-login__signup-link a,
  .p-page-password-reset__signup-link a,
  .p-page-password-reset-thanks__signup-link a {
    font-size: 1.6rem;
  }
}
.p-page-login__signup-link a i,
.p-page-password-reset__signup-link a i,
.p-page-password-reset-thanks__signup-link a i {
  font-size: 1.3rem;
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}
.p-page-login__signup-link a:hover,
.p-page-password-reset__signup-link a:hover,
.p-page-password-reset-thanks__signup-link a:hover {
  color: #12398e;
}
.p-page-login__signup-link a:hover i,
.p-page-password-reset__signup-link a:hover i,
.p-page-password-reset-thanks__signup-link a:hover i {
  -webkit-transform: translateX(0.4rem);
          transform: translateX(0.4rem);
}

.p-page-password-reset-thanks__icon {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 7.2rem;
  height: 7.2rem;
  margin: 0 auto 1.6rem;
  background-color: #ecfdf5;
  border-radius: 50%;
  color: #16a34a;
  font-size: 3.6rem;
}
@media (min-width: 1000px) {
  .p-page-password-reset-thanks__icon {
    width: 8.4rem;
    height: 8.4rem;
    font-size: 4.2rem;
    margin-bottom: 2rem;
  }
}
.p-page-password-reset-thanks__body p {
  margin-bottom: 1.2rem;
  color: #364153;
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-password-reset-thanks__body p {
    font-size: 1.5rem;
    margin-bottom: 1.6rem;
  }
}
.p-page-password-reset-thanks__body p:last-child {
  margin-bottom: 0;
}
.p-page-password-reset-thanks__body p strong {
  color: #0a0a0a;
  font-weight: 700;
}
.p-page-password-reset-thanks__notice {
  margin-top: 2rem;
  padding: 1.4rem 1.6rem;
  background-color: #fffbeb;
  border: 1px solid #fde68a;
  border-radius: 6px;
  color: #92400e;
  font-size: 1.3rem;
  line-height: 1.7;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-password-reset-thanks__notice {
    margin-top: 2.4rem;
    padding: 1.6rem 2rem;
    font-size: 1.4rem;
  }
}
.p-page-password-reset-thanks__notice i {
  margin-right: 0.4rem;
}
.p-page-password-reset-thanks__actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
  margin-top: 2rem;
}
@media (min-width: 1000px) {
  .p-page-password-reset-thanks__actions {
    margin-top: 2.4rem;
    gap: 1.2rem;
  }
}
.p-page-password-reset-thanks__actions .c-btn {
  width: 100%;
}

.p-page-mypage {
  background-color: #f7f9fc;
  padding: 11rem 0 6.4rem;
}
@media (min-width: 1000px) {
  .p-page-mypage {
    padding: 13rem 0 9.6rem;
  }
}
.p-page-mypage__inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage__inner {
    padding: 0 3.2rem;
  }
}
.p-page-mypage__head {
  margin-bottom: 2.4rem;
}
@media (min-width: 1000px) {
  .p-page-mypage__head {
    margin-bottom: 3.2rem;
  }
}
.p-page-mypage__title {
  margin-bottom: 1rem;
  font-size: 2.4rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.3;
  letter-spacing: 0.02em;
  position: relative;
  padding-left: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage__title {
    font-size: 3rem;
    margin-bottom: 1.2rem;
    padding-left: 2rem;
  }
}
.p-page-mypage__title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4rem;
  bottom: 0.4rem;
  width: 5px;
  background: -webkit-gradient(linear, left top, left bottom, from(#fbbf24), to(#f59e0b));
  background: linear-gradient(180deg, #fbbf24, #f59e0b);
  border-radius: 3px;
}
@media (min-width: 1000px) {
  .p-page-mypage__title::before {
    width: 6px;
  }
}
.p-page-mypage__lead {
  font-size: 1.3rem;
  color: #4a5565;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .p-page-mypage__lead {
    font-size: 1.5rem;
  }
}
.p-page-mypage__section {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2.4rem 2rem;
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage__section {
    padding: 3.2rem;
    margin-bottom: 2.4rem;
  }
}
.p-page-mypage__section:last-child {
  margin-bottom: 0;
}
.p-page-mypage__section--premium {
  background: linear-gradient(156deg, #fff7ed 0%, #fefce8 100%);
  border: 2px solid #ffd6a8;
}
.p-page-mypage__section-title {
  margin-bottom: 1.6rem;
  font-size: 1.8rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-mypage__section-title {
    font-size: 2rem;
    margin-bottom: 2.4rem;
  }
}
.p-page-mypage__stats {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.2rem;
}
@media (min-width: 800px) {
  .p-page-mypage__stats {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.6rem;
  }
}
.p-page-mypage__stat-card {
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2rem 1.6rem;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-mypage__stat-card {
    padding: 2.4rem;
  }
}
.p-page-mypage__stat-value {
  font-size: 2.8rem;
  font-weight: 700;
  color: #155dfc;
  line-height: 1.2;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-mypage__stat-value {
    font-size: 3rem;
  }
}
.p-page-mypage__stat-label {
  margin-top: 0.4rem;
  font-size: 1.3rem;
  color: #4a5565;
}
@media (min-width: 1000px) {
  .p-page-mypage__stat-label {
    font-size: 1.4rem;
    margin-top: 0.6rem;
  }
}
.p-page-mypage__status {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.2rem;
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
}
@media (min-width: 800px) {
  .p-page-mypage__status {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 1.6rem;
  }
}
.p-page-mypage__status-info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.2rem;
}
.p-page-mypage__status-icon {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #4a5565;
  font-size: 2rem;
}
.p-page-mypage__status-text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.2rem;
}
.p-page-mypage__status-name {
  font-size: 1.5rem;
  font-weight: 700;
  color: #0a0a0a;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage__status-name {
    font-size: 1.6rem;
  }
}
.p-page-mypage__status-role {
  font-size: 1.2rem;
  color: #4a5565;
}
@media (min-width: 1000px) {
  .p-page-mypage__status-role {
    font-size: 1.4rem;
  }
}
.p-page-mypage__status-actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.2rem;
}
@media (min-width: 1000px) {
  .p-page-mypage__status-actions {
    gap: 1.6rem;
  }
}
.p-page-mypage__status-badge {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.4rem 1rem;
  background-color: #dcfce7;
  color: #00a63e;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.4;
  border-radius: 4px;
  white-space: nowrap;
}
@media (min-width: 1000px) {
  .p-page-mypage__status-badge {
    font-size: 1.3rem;
  }
}
.p-page-mypage__status-preview {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
  color: #155dfc;
  font-size: 1.3rem;
  text-decoration: none;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-mypage__status-preview {
    font-size: 1.4rem;
  }
}
.p-page-mypage__status-preview:hover {
  color: #12398e;
  text-decoration: underline;
}
.p-page-mypage__toggles {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.2rem;
}
@media (min-width: 1000px) {
  .p-page-mypage__toggles {
    gap: 1.6rem;
  }
}
.p-page-mypage__toggle-card {
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage__toggle-card {
    padding: 2.4rem;
  }
}
.p-page-mypage__toggle-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.2rem;
  margin-bottom: 1.2rem;
}
@media (min-width: 1000px) {
  .p-page-mypage__toggle-row {
    margin-bottom: 1.6rem;
  }
}
.p-page-mypage__toggle-info {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-width: 0;
}
.p-page-mypage__toggle-title {
  font-size: 1.5rem;
  font-weight: 700;
  color: #0a0a0a;
  margin-bottom: 0.4rem;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage__toggle-title {
    font-size: 1.6rem;
  }
}
.p-page-mypage__toggle-desc {
  font-size: 1.2rem;
  color: #4a5565;
  line-height: 1.5;
}
@media (min-width: 1000px) {
  .p-page-mypage__toggle-desc {
    font-size: 1.4rem;
  }
}
.p-page-mypage__toggle-status {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
  font-size: 1.3rem;
  font-weight: 700;
  color: #00a63e;
}
@media (min-width: 1000px) {
  .p-page-mypage__toggle-status {
    font-size: 1.5rem;
  }
}
.p-page-mypage__toggle-status--off {
  color: #6b7280;
}
.p-page-mypage__info-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.2rem;
}
@media (min-width: 800px) {
  .p-page-mypage__info-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.6rem;
  }
}
.p-page-mypage__info-card {
  display: block;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 1.6rem;
  color: inherit;
  text-decoration: none;
  -webkit-transition: border-color 0.2s ease, -webkit-transform 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: border-color 0.2s ease, -webkit-transform 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease, -webkit-transform 0.2s ease, -webkit-box-shadow 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-mypage__info-card {
    padding: 2rem 2.4rem;
  }
}
.p-page-mypage__info-card:hover {
  border-color: #155dfc;
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
  -webkit-box-shadow: 0 4px 12px rgba(21, 93, 252, 0.08);
          box-shadow: 0 4px 12px rgba(21, 93, 252, 0.08);
}
.p-page-mypage__info-card-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  margin-bottom: 0.4rem;
}
.p-page-mypage__info-card-icon {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #155dfc;
  font-size: 1.8rem;
}
.p-page-mypage__info-card-title {
  font-size: 1.5rem;
  font-weight: 700;
  color: #0a0a0a;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage__info-card-title {
    font-size: 1.6rem;
  }
}
.p-page-mypage__info-card-desc {
  font-size: 1.2rem;
  color: #4a5565;
  line-height: 1.5;
}
@media (min-width: 1000px) {
  .p-page-mypage__info-card-desc {
    font-size: 1.4rem;
  }
}
.p-page-mypage__premium-badge {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.4rem 1rem;
  margin-bottom: 1.2rem;
  background-color: #ff6900;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.4;
  border-radius: 4px;
}
@media (min-width: 1000px) {
  .p-page-mypage__premium-badge {
    font-size: 1.3rem;
  }
}
.p-page-mypage__premium-title {
  margin-bottom: 0.8rem;
  font-size: 1.8rem;
  font-weight: 700;
  color: #0a0a0a;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-mypage__premium-title {
    font-size: 2rem;
  }
}
.p-page-mypage__premium-desc {
  margin-bottom: 1.6rem;
  font-size: 1.3rem;
  color: #4a5565;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .p-page-mypage__premium-desc {
    font-size: 1.5rem;
    margin-bottom: 2rem;
  }
}
.p-page-mypage__premium-subtitle {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
  margin: 1.6rem 0 1.2rem;
  color: #0a0a0a;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-mypage__premium-subtitle {
    margin: 2.4rem 0 1.6rem;
    font-size: 1.5rem;
    gap: 0.8rem;
  }
}
.p-page-mypage__premium-subtitle:first-of-type {
  margin-top: 0;
}
.p-page-mypage__premium-subtitle + .p-page-mypage__premium-grid + .p-page-mypage__premium-subtitle {
  padding-top: 1.6rem;
  border-top: 1px solid #fde6c8;
}
@media (min-width: 1000px) {
  .p-page-mypage__premium-subtitle + .p-page-mypage__premium-grid + .p-page-mypage__premium-subtitle {
    padding-top: 2.4rem;
  }
}
.p-page-mypage__premium-subtitle i {
  color: #ff6900;
  font-size: 1.3rem;
}
@media (min-width: 1000px) {
  .p-page-mypage__premium-subtitle i {
    font-size: 1.4rem;
  }
}
.p-page-mypage__premium-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.2rem;
}
@media (min-width: 800px) {
  .p-page-mypage__premium-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.6rem;
  }
}
.p-page-mypage__premium-card {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  background-color: #ffffff;
  border: 2px solid #ffb86a;
  border-radius: 10px;
  padding: 1.6rem;
  color: inherit;
  -webkit-transition: border-color 0.2s ease;
  transition: border-color 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-mypage__premium-card {
    padding: 2rem 2.4rem;
  }
}
.p-page-mypage__premium-card:has(.p-page-mypage__premium-card-btn:hover) {
  border-color: #ff6900;
}
.p-page-mypage__premium-card-btn {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.6rem;
  width: 100%;
  margin-top: 1.2rem;
  padding: 1rem 1.6rem;
  font-size: 1.3rem;
}
@media (min-width: 1000px) {
  .p-page-mypage__premium-card-btn {
    margin-top: 1.6rem;
    font-size: 1.4rem;
  }
}
.p-page-mypage__premium-card-btn i {
  font-size: 1.2rem;
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}
.p-page-mypage__premium-card-btn:hover i {
  -webkit-transform: translateX(0.3rem);
          transform: translateX(0.3rem);
}
.p-page-mypage__premium-card-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
  margin-bottom: 0.8rem;
}
.p-page-mypage__premium-card-badge {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.3rem 0.8rem;
  background-color: #ff6900;
  color: #ffffff;
  font-size: 1.1rem;
  font-weight: 700;
  border-radius: 4px;
  line-height: 1.4;
}
@media (min-width: 1000px) {
  .p-page-mypage__premium-card-badge {
    font-size: 1.2rem;
  }
}
.p-page-mypage__premium-card-badge--featured {
  background: -webkit-gradient(linear, left top, right top, from(#ff6900), to(#f0b100));
  background: linear-gradient(90deg, #ff6900 0%, #f0b100 100%);
}
.p-page-mypage__premium-card-title {
  font-size: 1.5rem;
  font-weight: 700;
  color: #0a0a0a;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage__premium-card-title {
    font-size: 1.6rem;
  }
}
.p-page-mypage__premium-card-desc {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-bottom: 1rem;
  font-size: 1.3rem;
  color: #4a5565;
  line-height: 1.6;
}
@media (min-width: 1000px) {
  .p-page-mypage__premium-card-desc {
    font-size: 1.4rem;
    margin-bottom: 1.2rem;
  }
}
.p-page-mypage__premium-card-price {
  font-size: 1.6rem;
  font-weight: 700;
  color: #f54900;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage__premium-card-price {
    font-size: 1.8rem;
  }
}
.p-page-mypage__cancel-desc {
  margin-bottom: 1.6rem;
  font-size: 1.3rem;
  color: #4a5565;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .p-page-mypage__cancel-desc {
    font-size: 1.4rem;
    margin-bottom: 2rem;
  }
}
.p-page-mypage__cancel-desc small {
  display: block;
  margin-top: 0.4rem;
  font-size: 1.2rem;
  color: #6b7280;
}
.p-page-mypage__cancel-btn {
  min-width: 18rem;
}
.p-page-mypage__cancel-status {
  padding: 2rem 1.8rem;
  background-color: #fefce8;
  border: 1px solid #fff085;
  border-radius: 10px;
}
@media (min-width: 1000px) {
  .p-page-mypage__cancel-status {
    padding: 2.8rem 3.2rem;
  }
}
.p-page-mypage__cancel-status-head {
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage__cancel-status-head {
    margin-bottom: 2rem;
  }
}
.p-page-mypage__cancel-status-badge {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
  padding: 0.4rem 1rem;
  margin-bottom: 0.8rem;
  background-color: #f59e0b;
  border-radius: 9999px;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-mypage__cancel-status-badge {
    font-size: 1.3rem;
    padding: 0.5rem 1.2rem;
    margin-bottom: 1rem;
  }
}
.p-page-mypage__cancel-status-badge i {
  font-size: 1.2rem;
}
.p-page-mypage__cancel-status-lead {
  color: #0a0a0a;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage__cancel-status-lead {
    font-size: 1.6rem;
  }
}
.p-page-mypage__cancel-status-info {
  margin: 0 0 1.6rem;
  padding: 1.4rem 1.6rem;
  background-color: #ffffff;
  border: 1px solid #f5e7a3;
  border-radius: 8px;
}
@media (min-width: 1000px) {
  .p-page-mypage__cancel-status-info {
    padding: 1.8rem 2rem;
    margin-bottom: 2rem;
  }
}
.p-page-mypage__cancel-status-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.6rem;
  padding: 0.8rem 0;
  border-bottom: 1px solid #f3f4f6;
}
@media (min-width: 1000px) {
  .p-page-mypage__cancel-status-row {
    padding: 1rem 0;
  }
}
.p-page-mypage__cancel-status-row:first-child {
  padding-top: 0;
}
.p-page-mypage__cancel-status-row:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
.p-page-mypage__cancel-status-row dt {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  color: #4a5565;
  font-size: 1.3rem;
  font-weight: 400;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage__cancel-status-row dt {
    font-size: 1.4rem;
  }
}
.p-page-mypage__cancel-status-row dd {
  margin: 0;
  color: #0a0a0a;
  font-size: 1.3rem;
  font-weight: 700;
  letter-spacing: 0.01em;
  text-align: right;
}
@media (min-width: 1000px) {
  .p-page-mypage__cancel-status-row dd {
    font-size: 1.4rem;
  }
}
.p-page-mypage__cancel-status-note {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.6rem;
  margin-bottom: 1.6rem;
  color: #854d0e;
  font-size: 1.2rem;
  line-height: 1.6;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage__cancel-status-note {
    font-size: 1.3rem;
    margin-bottom: 2rem;
  }
}
.p-page-mypage__cancel-status-note i {
  margin-top: 0.2rem;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  color: #ca8a04;
}
.p-page-mypage__cancel-status-actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.p-page-mypage__cancel-status-actions .c-btn {
  width: 100%;
}
@media (min-width: 800px) {
  .p-page-mypage__cancel-status-actions .c-btn {
    width: auto;
    min-width: 22rem;
  }
}

.p-page-mypage-edit {
  background-color: #f7f9fc;
  padding: 11rem 0 6.4rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit {
    padding: 13rem 0 9.6rem;
  }
}
.p-page-mypage-edit__inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit__inner {
    padding: 0 3.2rem;
  }
}
.p-page-mypage-edit__back {
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit__back {
    margin-bottom: 2rem;
  }
}
.p-page-mypage-edit__back a {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
  color: #155dfc;
  font-size: 1.3rem;
  font-weight: 500;
  text-decoration: none;
  -webkit-transition: color 0.2s ease, gap 0.2s ease;
  transition: color 0.2s ease, gap 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit__back a {
    font-size: 1.4rem;
  }
}
.p-page-mypage-edit__back a i {
  font-size: 1.2rem;
}
.p-page-mypage-edit__back a:hover {
  color: #12398e;
  gap: 0.6rem;
  text-decoration: underline;
}
.p-page-mypage-edit__head {
  margin-bottom: 2.4rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit__head {
    margin-bottom: 3.2rem;
  }
}
@media (min-width: 800px) {
  .p-page-mypage-edit__head--with-action {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 1.6rem;
  }
}
@media (min-width: 800px) {
  .p-page-mypage-edit__head-text {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    min-width: 0;
  }
}
.p-page-mypage-edit__head-action {
  margin-top: 1.6rem;
}
@media (min-width: 800px) {
  .p-page-mypage-edit__head-action {
    margin-top: 0;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
}
.p-page-mypage-edit__title {
  margin-bottom: 1rem;
  font-size: 2.4rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.3;
  letter-spacing: 0.02em;
  position: relative;
  padding-left: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit__title {
    font-size: 3rem;
    padding-left: 2rem;
    margin-bottom: 1.4rem;
  }
}
.p-page-mypage-edit__title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4rem;
  bottom: 0.4rem;
  width: 5px;
  background: -webkit-gradient(linear, left top, left bottom, from(#fbbf24), to(#f59e0b));
  background: linear-gradient(180deg, #fbbf24, #f59e0b);
  border-radius: 3px;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit__title::before {
    width: 6px;
  }
}
.p-page-mypage-edit__lead {
  font-size: 1.3rem;
  color: #4a5565;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit__lead {
    font-size: 1.5rem;
  }
}
.p-page-mypage-edit__form, .p-page-mypage-edit__panel {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2.4rem 2rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit__form, .p-page-mypage-edit__panel {
    padding: 4rem;
  }
}
.p-page-mypage-edit__panel + .p-page-mypage-edit__panel {
  margin-top: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit__panel + .p-page-mypage-edit__panel {
    margin-top: 2.4rem;
  }
}
.p-page-mypage-edit__panel + .p-page-mypage-edit__form, .p-page-mypage-edit__form + .p-page-mypage-edit__panel {
  margin-top: 2.4rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit__panel + .p-page-mypage-edit__form, .p-page-mypage-edit__form + .p-page-mypage-edit__panel {
    margin-top: 3.2rem;
  }
}
.p-page-mypage-edit__panel + form, form + .p-page-mypage-edit__panel {
  margin-top: 2.4rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit__panel + form, form + .p-page-mypage-edit__panel {
    margin-top: 3.2rem;
  }
}
.p-page-mypage-edit__form + .c-notice {
  margin-top: 2.4rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit__form + .c-notice {
    margin-top: 3.2rem;
  }
}
.p-page-mypage-edit__section {
  margin-bottom: 3.2rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit__section {
    margin-bottom: 4rem;
  }
}
.p-page-mypage-edit__section:last-of-type {
  margin-bottom: 0;
}
.p-page-mypage-edit__section-title {
  margin-bottom: 1.6rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #e5e7eb;
  font-size: 1.8rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-mypage-edit__section-title {
    font-size: 2rem;
    margin-bottom: 2.4rem;
    padding-bottom: 1.2rem;
  }
}

.p-page-mypage-recruit__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-recruit__list {
    gap: 2rem;
  }
}
.p-page-mypage-recruit__job-card {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.2rem;
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2rem 1.6rem;
  -webkit-transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-mypage-recruit__job-card {
    gap: 2rem;
    padding: 2.4rem;
  }
}
.p-page-mypage-recruit__job-card:hover {
  border-color: #c7d2fe;
  -webkit-box-shadow: 0 4px 12px rgba(21, 93, 252, 0.06);
          box-shadow: 0 4px 12px rgba(21, 93, 252, 0.06);
}
.p-page-mypage-recruit__job-main {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-width: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-recruit__job-main {
    gap: 0.8rem;
  }
}
.p-page-mypage-recruit__job-tags {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.6rem;
}
.p-page-mypage-recruit__job-tag {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.3rem 0.8rem;
  background-color: #dbeafe;
  color: #155dfc;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.4;
  border-radius: 4px;
  white-space: nowrap;
}
.p-page-mypage-recruit__job-title {
  font-size: 1.6rem;
  font-weight: 700;
  color: #0a0a0a;
  line-height: 1.5;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-recruit__job-title {
    font-size: 1.8rem;
  }
}
.p-page-mypage-recruit__job-salary {
  font-size: 1.5rem;
  font-weight: 700;
  color: #155dfc;
  line-height: 1.4;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-recruit__job-salary {
    font-size: 1.6rem;
  }
}
.p-page-mypage-recruit__job-meta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.4rem;
  margin-top: 0.2rem;
}
.p-page-mypage-recruit__job-meta-item {
  font-size: 1.3rem;
  color: #4a5565;
  line-height: 1.6;
}
@media (min-width: 1000px) {
  .p-page-mypage-recruit__job-meta-item {
    font-size: 1.4rem;
  }
}
.p-page-mypage-recruit__job-images {
  margin-top: 0.4rem;
  font-size: 1.3rem;
  color: #155dfc;
  font-weight: 500;
  line-height: 1.6;
}
@media (min-width: 1000px) {
  .p-page-mypage-recruit__job-images {
    font-size: 1.4rem;
  }
}
.p-page-mypage-recruit__job-actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 0.4rem;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
@media (min-width: 1000px) {
  .p-page-mypage-recruit__job-actions {
    gap: 0.8rem;
  }
}
.p-page-mypage-recruit__icon-btn {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 3.6rem;
  height: 3.6rem;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 4px;
  color: #4a5565;
  font-size: 1.6rem;
  cursor: pointer;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}
.p-page-mypage-recruit__icon-btn:hover {
  border-color: currentColor;
}
.p-page-mypage-recruit__icon-btn--edit {
  color: #155dfc;
}
.p-page-mypage-recruit__icon-btn--edit:hover {
  background-color: #eff6ff;
}
.p-page-mypage-recruit__icon-btn--delete {
  color: #e7000b;
}
.p-page-mypage-recruit__icon-btn--delete:hover {
  background-color: #fee2e2;
}
.p-page-mypage-recruit__empty {
  background-color: #ffffff;
  border: 1px dashed #d1d5dc;
  border-radius: 10px;
  padding: 4rem 2rem;
  text-align: center;
  color: #6b7280;
  font-size: 1.4rem;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .p-page-mypage-recruit__empty {
    padding: 6.4rem 2rem;
    font-size: 1.5rem;
  }
}

.p-page-mypage-recruit-edit__upload-help {
  margin-top: -0.2rem;
  margin-bottom: 1.2rem;
  font-size: 1.2rem;
  color: #4a5565;
  line-height: 1.6;
}
@media (min-width: 1000px) {
  .p-page-mypage-recruit-edit__upload-help {
    font-size: 1.3rem;
    margin-bottom: 1.6rem;
  }
}
.p-page-mypage-recruit-edit__image-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.2rem;
  margin-top: 1.6rem;
}
@media (min-width: 800px) {
  .p-page-mypage-recruit-edit__image-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.6rem;
    margin-top: 2rem;
  }
}
.p-page-mypage-recruit-edit__image-item {
  position: relative;
  background-color: #e5e7eb;
  border-radius: 10px;
  overflow: hidden;
  aspect-ratio: 16/9;
}
.p-page-mypage-recruit-edit__image-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-page-mypage-recruit-edit__image-remove {
  position: absolute;
  top: 0.6rem;
  right: 0.6rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 2.8rem;
  height: 2.8rem;
  background-color: rgba(0, 0, 0, 0.6);
  color: #ffffff;
  border: none;
  border-radius: 9999px;
  font-size: 1.2rem;
  cursor: pointer;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-mypage-recruit-edit__image-remove {
    width: 3.2rem;
    height: 3.2rem;
    font-size: 1.3rem;
  }
}
.p-page-mypage-recruit-edit__image-remove:hover {
  background-color: #e7000b;
}

.p-page-mypage-craft__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.2rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 1000px) {
  .p-page-mypage-craft__list {
    gap: 1.6rem;
  }
}
.p-page-mypage-craft__item {
  position: relative;
  margin: 0;
}
.p-page-mypage-craft__input {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.p-page-mypage-craft__card {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.2rem;
  padding: 2rem 1.6rem;
  background-color: #ffffff;
  border: 2px solid #e5e7eb;
  border-radius: 10px;
  cursor: pointer;
  -webkit-transition: border-color 0.2s ease, background-color 0.2s ease;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-mypage-craft__card {
    gap: 1.6rem;
    padding: 2.4rem;
  }
}
.p-page-mypage-craft__card:hover {
  border-color: #c7d2fe;
}
.p-page-mypage-craft__check {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 3.2rem;
  height: 3.2rem;
  background-color: #e5e7eb;
  color: transparent;
  border-radius: 9999px;
  font-size: 1.4rem;
  -webkit-transition: background-color 0.2s ease, color 0.2s ease;
  transition: background-color 0.2s ease, color 0.2s ease;
}
.p-page-mypage-craft__body {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-width: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.4rem;
}
.p-page-mypage-craft__name {
  display: block;
  color: #101828;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.01em;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-mypage-craft__name {
    font-size: 1.6rem;
  }
}
.p-page-mypage-craft__desc {
  display: block;
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.6;
}
@media (min-width: 1000px) {
  .p-page-mypage-craft__desc {
    font-size: 1.4rem;
  }
}
.p-page-mypage-craft__input:checked + .p-page-mypage-craft__card {
  background-color: #eff6ff;
  border-color: #155dfc;
}
.p-page-mypage-craft__input:checked + .p-page-mypage-craft__card .p-page-mypage-craft__check {
  background-color: #155dfc;
  color: #ffffff;
}
.p-page-mypage-craft__input:checked + .p-page-mypage-craft__card .p-page-mypage-craft__name {
  color: #155dfc;
}
.p-page-mypage-craft__input:focus-visible + .p-page-mypage-craft__card {
  -webkit-box-shadow: 0 0 0 3px rgba(21, 93, 252, 0.25);
          box-shadow: 0 0 0 3px rgba(21, 93, 252, 0.25);
}
.p-page-mypage-craft__counter {
  margin-top: 0.8rem;
  padding: 1.4rem 1.6rem;
  background-color: #f9fafb;
  border-radius: 4px;
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.5;
}
@media (min-width: 1000px) {
  .p-page-mypage-craft__counter {
    margin-top: 0.4rem;
    padding: 1.6rem 2rem;
    font-size: 1.4rem;
  }
}
.p-page-mypage-craft__counter strong {
  margin-left: 0.4rem;
  color: #155dfc;
  font-weight: 700;
}

.p-page-mypage-photos__panel-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 1.2rem;
  margin-bottom: 1.6rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #e5e7eb;
}
@media (min-width: 1000px) {
  .p-page-mypage-photos__panel-head {
    margin-bottom: 2.4rem;
    padding-bottom: 1.2rem;
  }
}
.p-page-mypage-photos__panel-title {
  color: #13195F;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-mypage-photos__panel-title {
    font-size: 2rem;
  }
}
.p-page-mypage-photos__count {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.5;
}
@media (min-width: 1000px) {
  .p-page-mypage-photos__count {
    font-size: 1.4rem;
  }
}
.p-page-mypage-photos__count strong {
  margin-right: 0.2rem;
  color: #155dfc;
  font-weight: 700;
}
.p-page-mypage-photos__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.6rem 1.2rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 800px) {
  .p-page-mypage-photos__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem 1.6rem;
  }
}
.p-page-mypage-photos__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.6rem;
}
.p-page-mypage-photos__thumb {
  position: relative;
  aspect-ratio: 16/9;
  background-color: #e5e7eb;
  border-radius: 10px;
  overflow: hidden;
}
.p-page-mypage-photos__img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-page-mypage-photos__remove {
  position: absolute;
  top: 0.6rem;
  right: 0.6rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 2.8rem;
  height: 2.8rem;
  background-color: rgba(0, 0, 0, 0.6);
  color: #ffffff;
  border: none;
  border-radius: 9999px;
  font-size: 1.2rem;
  cursor: pointer;
  -webkit-transition: background-color 0.2s ease;
  transition: background-color 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-mypage-photos__remove {
    width: 3.2rem;
    height: 3.2rem;
    font-size: 1.3rem;
  }
}
.p-page-mypage-photos__remove:hover {
  background-color: #e7000b;
}
.p-page-mypage-photos__caption {
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.5;
}
@media (min-width: 1000px) {
  .p-page-mypage-photos__caption {
    font-size: 1.4rem;
  }
}
.p-page-mypage-photos .p-page-mypage-edit__panel + .c-notice {
  margin-top: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-photos .p-page-mypage-edit__panel + .c-notice {
    margin-top: 2.4rem;
  }
}

.p-page-mypage-cancel__info-list {
  margin: 0;
}
.p-page-mypage-cancel__info-row {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.6rem;
  padding: 1rem 0;
  border-bottom: 1px solid #e5e7eb;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel__info-row {
    padding: 1.2rem 0;
  }
}
.p-page-mypage-cancel__info-row:last-child {
  border-bottom: none;
}
.p-page-mypage-cancel__info-term {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  color: #4a5565;
  font-size: 1.3rem;
  font-weight: 400;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel__info-term {
    font-size: 1.4rem;
  }
}
.p-page-mypage-cancel__info-desc {
  margin: 0;
  color: #0a0a0a;
  font-size: 1.3rem;
  font-weight: 700;
  text-align: right;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel__info-desc {
    font-size: 1.4rem;
  }
}
.p-page-mypage-cancel__date-note {
  margin-top: 0.6rem;
  color: #6a7282;
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
.p-page-mypage-cancel__actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.2rem;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin-top: 3.2rem;
}
@media (min-width: 800px) {
  .p-page-mypage-cancel__actions {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1.6rem;
  }
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel__actions {
    margin-top: 4rem;
  }
}
.p-page-mypage-cancel__actions .c-btn {
  width: 100%;
}
@media (min-width: 800px) {
  .p-page-mypage-cancel__actions .c-btn {
    width: auto;
    min-width: 24rem;
  }
}
@media (min-width: 800px) {
  .p-page-mypage-cancel__actions .c-btn--outline {
    min-width: 16rem;
  }
}

.p-page-mypage-cancel-confirm {
  min-height: 100vh;
  background-color: #0a0a0a;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-confirm {
    padding: 3.2rem;
  }
}
.p-page-mypage-cancel-confirm__card {
  width: 100%;
  max-width: 44.8rem;
  padding: 2.8rem 2.4rem;
  background-color: #ffffff;
  border-radius: 10px;
  -webkit-box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
          box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-confirm__card {
    padding: 3.2rem;
  }
}
.p-page-mypage-cancel-confirm__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.2rem;
  margin-bottom: 1.6rem;
}
.p-page-mypage-cancel-confirm__icon {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #e7000b;
  font-size: 2.8rem;
  line-height: 1;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-confirm__icon {
    font-size: 3.2rem;
  }
}
.p-page-mypage-cancel-confirm__title {
  margin: 0;
  color: #0a0a0a;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-confirm__title {
    font-size: 2rem;
  }
}
.p-page-mypage-cancel-confirm__body {
  margin-bottom: 2.4rem;
  color: #4a5565;
  font-size: 1.4rem;
  line-height: 1.6;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-confirm__body {
    font-size: 1.6rem;
    margin-bottom: 3.2rem;
  }
}
.p-page-mypage-cancel-confirm__body p + p {
  margin-top: 0.2rem;
}
.p-page-mypage-cancel-confirm__actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media (min-width: 800px) {
  .p-page-mypage-cancel-confirm__actions {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 1.6rem;
  }
}
.p-page-mypage-cancel-confirm__actions .c-btn {
  width: 100%;
}
@media (min-width: 800px) {
  .p-page-mypage-cancel-confirm__actions .c-btn {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
    min-height: 5rem;
  }
}

.p-page-mypage-cancel-thanks {
  background-color: #f9fafb;
  padding: 14rem 0 6.4rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks {
    padding: 17rem 0 9.6rem;
  }
}
.p-page-mypage-cancel-thanks__inner {
  max-width: 816px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__inner {
    padding: 0 3.2rem;
  }
}
.p-page-mypage-cancel-thanks__hero {
  margin-bottom: 1.6rem;
  padding: 3.2rem 2rem;
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__hero {
    padding: 4.8rem 4rem;
    margin-bottom: 2.4rem;
  }
}
.p-page-mypage-cancel-thanks__icon {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 7.2rem;
  height: 7.2rem;
  margin: 0 auto 2.4rem;
  background-color: #dcfce7;
  border-radius: 50%;
  color: #16a34a;
  font-size: 3.6rem;
  line-height: 1;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__icon {
    width: 8rem;
    height: 8rem;
    margin-bottom: 3.2rem;
    font-size: 4rem;
  }
}
.p-page-mypage-cancel-thanks__title {
  margin-bottom: 1.6rem;
  color: #0a0a0a;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__title {
    font-size: 3rem;
    margin-bottom: 2rem;
  }
}
.p-page-mypage-cancel-thanks__body {
  margin-bottom: 3.2rem;
  color: #4a5565;
  font-size: 1.4rem;
  line-height: 1.7;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__body {
    font-size: 1.6rem;
    line-height: 1.7;
    margin-bottom: 4rem;
  }
}
.p-page-mypage-cancel-thanks__body p + p {
  margin-top: 0.2rem;
}
.p-page-mypage-cancel-thanks__flow {
  padding: 2rem 1.8rem;
  background-color: #eff6ff;
  border: 1px solid #bedbff;
  border-radius: 10px;
  text-align: left;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__flow {
    padding: 2.4rem 2.4rem;
  }
}
.p-page-mypage-cancel-thanks__flow-title {
  margin-bottom: 1.6rem;
  color: #0a0a0a;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__flow-title {
    font-size: 1.6rem;
  }
}
.p-page-mypage-cancel-thanks__flow-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.2rem;
}
.p-page-mypage-cancel-thanks__flow-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 1.2rem;
}
.p-page-mypage-cancel-thanks__flow-num {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 2.4rem;
  height: 2.4rem;
  margin-top: 0.1rem;
  background-color: #155dfc;
  border-radius: 50%;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1;
}
.p-page-mypage-cancel-thanks__flow-text {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-width: 0;
}
.p-page-mypage-cancel-thanks__flow-text strong {
  display: block;
  color: #0a0a0a;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: -0.01em;
}
.p-page-mypage-cancel-thanks__flow-text span {
  display: block;
  margin-top: 0.2rem;
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.5;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__flow-text span {
    font-size: 1.4rem;
  }
}
.p-page-mypage-cancel-thanks__card {
  margin-bottom: 1.6rem;
  padding: 2.4rem 2rem;
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__card {
    padding: 3.2rem;
    margin-bottom: 2.4rem;
  }
}
.p-page-mypage-cancel-thanks__card--warning {
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__card--warning {
    margin-bottom: 2.4rem;
  }
}
.p-page-mypage-cancel-thanks__card-title {
  margin-bottom: 1.2rem;
  color: #0a0a0a;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__card-title {
    font-size: 1.6rem;
    margin-bottom: 1.6rem;
  }
}
.p-page-mypage-cancel-thanks__card-lead {
  margin-bottom: 1.6rem;
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.7;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__card-lead {
    font-size: 1.4rem;
    margin-bottom: 2rem;
  }
}
.p-page-mypage-cancel-thanks__contact {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
  margin: 0;
}
.p-page-mypage-cancel-thanks__contact-icon {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  color: #155dfc;
  font-size: 1.6rem;
  line-height: 1;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__contact-icon {
    font-size: 1.8rem;
  }
}
.p-page-mypage-cancel-thanks__contact-value {
  color: #155dfc;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.01em;
  text-decoration: none;
  word-break: break-all;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__contact-value {
    font-size: 1.5rem;
  }
}
.p-page-mypage-cancel-thanks__contact-value:hover {
  text-decoration: underline;
}
.p-page-mypage-cancel-thanks__home {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 2.4rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__home {
    margin-top: 3.2rem;
  }
}
.p-page-mypage-cancel-thanks__home .c-btn {
  min-width: 22rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__home .c-btn {
    min-width: 26rem;
  }
}
.p-page-mypage-cancel-thanks__sign-off {
  margin-top: 2.4rem;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__sign-off {
    margin-top: 3.2rem;
  }
}
.p-page-mypage-cancel-thanks__sign-off-message {
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.7;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__sign-off-message {
    font-size: 1.4rem;
  }
}
.p-page-mypage-cancel-thanks__sign-off-message p + p {
  margin-top: 0.2rem;
}
.p-page-mypage-cancel-thanks__sign-off-team {
  margin-top: 1.2rem;
  color: #6a7282;
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-thanks__sign-off-team {
    font-size: 1.3rem;
    margin-top: 1.6rem;
  }
}

.p-page-mypage-cancel-revoke {
  min-height: 100vh;
  background-color: #0a0a0a;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-revoke {
    padding: 3.2rem;
  }
}
.p-page-mypage-cancel-revoke__card {
  width: 100%;
  max-width: 44.8rem;
  padding: 2.8rem 2.4rem;
  background-color: #ffffff;
  border-radius: 10px;
  -webkit-box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
          box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-revoke__card {
    padding: 3.2rem;
  }
}
.p-page-mypage-cancel-revoke__head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.2rem;
  margin-bottom: 1.6rem;
}
.p-page-mypage-cancel-revoke__icon {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 4.4rem;
  height: 4.4rem;
  background-color: #eff6ff;
  border-radius: 50%;
  color: #155dfc;
  font-size: 2rem;
  line-height: 1;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-revoke__icon {
    width: 4.8rem;
    height: 4.8rem;
    font-size: 2.2rem;
  }
}
.p-page-mypage-cancel-revoke__title {
  margin: 0;
  color: #0a0a0a;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-revoke__title {
    font-size: 2rem;
  }
}
.p-page-mypage-cancel-revoke__body {
  margin-bottom: 2.4rem;
  color: #4a5565;
  font-size: 1.4rem;
  line-height: 1.6;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-revoke__body {
    font-size: 1.6rem;
    margin-bottom: 3.2rem;
  }
}
.p-page-mypage-cancel-revoke__body p + p {
  margin-top: 0.2rem;
}
.p-page-mypage-cancel-revoke__actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem;
}
@media (min-width: 800px) {
  .p-page-mypage-cancel-revoke__actions {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 1.6rem;
  }
}
.p-page-mypage-cancel-revoke__actions .c-btn {
  width: 100%;
}
@media (min-width: 800px) {
  .p-page-mypage-cancel-revoke__actions .c-btn {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
    min-height: 5rem;
  }
}

.p-page-mypage-cancel-revoke-thanks {
  background-color: #f9fafb;
  padding: 14rem 0 6.4rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-revoke-thanks {
    padding: 17rem 0 9.6rem;
  }
}
.p-page-mypage-cancel-revoke-thanks__inner {
  max-width: 816px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-revoke-thanks__inner {
    padding: 0 3.2rem;
  }
}
.p-page-mypage-cancel-revoke-thanks__card {
  padding: 3.2rem 2rem;
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-revoke-thanks__card {
    padding: 4.8rem 4rem;
  }
}
.p-page-mypage-cancel-revoke-thanks__icon {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 7.2rem;
  height: 7.2rem;
  margin: 0 auto 2.4rem;
  background-color: #dcfce7;
  border-radius: 50%;
  color: #16a34a;
  font-size: 3.6rem;
  line-height: 1;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-revoke-thanks__icon {
    width: 8rem;
    height: 8rem;
    margin-bottom: 3.2rem;
    font-size: 4rem;
  }
}
.p-page-mypage-cancel-revoke-thanks__title {
  margin-bottom: 1.6rem;
  color: #0a0a0a;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-revoke-thanks__title {
    font-size: 3rem;
    margin-bottom: 2rem;
  }
}
.p-page-mypage-cancel-revoke-thanks__body {
  margin-bottom: 3.2rem;
  color: #4a5565;
  font-size: 1.4rem;
  line-height: 1.7;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-revoke-thanks__body {
    font-size: 1.6rem;
    line-height: 1.7;
    margin-bottom: 4rem;
  }
}
.p-page-mypage-cancel-revoke-thanks__body p + p {
  margin-top: 0.2rem;
}
.p-page-mypage-cancel-revoke-thanks__actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-page-mypage-cancel-revoke-thanks__actions .c-btn {
  min-width: 22rem;
}
@media (min-width: 1000px) {
  .p-page-mypage-cancel-revoke-thanks__actions .c-btn {
    min-width: 26rem;
  }
}

.p-page-terms,
.p-page-privacy,
.p-page-tokushoho {
  background-color: #f9fafb;
  padding: 11rem 0 6.4rem;
}
@media (min-width: 1000px) {
  .p-page-terms,
  .p-page-privacy,
  .p-page-tokushoho {
    padding: 13rem 0 9.6rem;
  }
}
.p-page-terms__inner,
.p-page-privacy__inner,
.p-page-tokushoho__inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-terms__inner,
  .p-page-privacy__inner,
  .p-page-tokushoho__inner {
    padding: 0 3.2rem;
  }
}
.p-page-terms__head,
.p-page-privacy__head,
.p-page-tokushoho__head {
  margin-bottom: 2.4rem;
}
@media (min-width: 1000px) {
  .p-page-terms__head,
  .p-page-privacy__head,
  .p-page-tokushoho__head {
    margin-bottom: 3.2rem;
  }
}
.p-page-terms__title,
.p-page-privacy__title,
.p-page-tokushoho__title {
  position: relative;
  margin-bottom: 1rem;
  padding-left: 1.6rem;
  color: #13195F;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-terms__title,
  .p-page-privacy__title,
  .p-page-tokushoho__title {
    font-size: 3rem;
    padding-left: 2rem;
    margin-bottom: 1.4rem;
  }
}
.p-page-terms__title::before,
.p-page-privacy__title::before,
.p-page-tokushoho__title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4rem;
  bottom: 0.4rem;
  width: 5px;
  background: -webkit-gradient(linear, left top, left bottom, from(#fbbf24), to(#f59e0b));
  background: linear-gradient(180deg, #fbbf24, #f59e0b);
  border-radius: 3px;
}
@media (min-width: 1000px) {
  .p-page-terms__title::before,
  .p-page-privacy__title::before,
  .p-page-tokushoho__title::before {
    width: 6px;
  }
}
.p-page-terms__updated,
.p-page-privacy__updated,
.p-page-tokushoho__updated {
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.7;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-terms__updated,
  .p-page-privacy__updated,
  .p-page-tokushoho__updated {
    font-size: 1.5rem;
  }
}
.p-page-terms__card,
.p-page-privacy__card,
.p-page-tokushoho__card {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2.4rem 2rem;
}
@media (min-width: 1000px) {
  .p-page-terms__card,
  .p-page-privacy__card,
  .p-page-tokushoho__card {
    padding: 4rem;
  }
}
.p-page-terms__section + .p-page-terms__section,
.p-page-terms__section + .p-page-privacy__section,
.p-page-terms__section + .p-page-tokushoho__section,
.p-page-privacy__section + .p-page-terms__section,
.p-page-privacy__section + .p-page-privacy__section,
.p-page-privacy__section + .p-page-tokushoho__section,
.p-page-tokushoho__section + .p-page-terms__section,
.p-page-tokushoho__section + .p-page-privacy__section,
.p-page-tokushoho__section + .p-page-tokushoho__section {
  margin-top: 2.4rem;
}
@media (min-width: 1000px) {
  .p-page-terms__section + .p-page-terms__section,
  .p-page-terms__section + .p-page-privacy__section,
  .p-page-terms__section + .p-page-tokushoho__section,
  .p-page-privacy__section + .p-page-terms__section,
  .p-page-privacy__section + .p-page-privacy__section,
  .p-page-privacy__section + .p-page-tokushoho__section,
  .p-page-tokushoho__section + .p-page-terms__section,
  .p-page-tokushoho__section + .p-page-privacy__section,
  .p-page-tokushoho__section + .p-page-tokushoho__section {
    margin-top: 3.2rem;
  }
}
.p-page-terms__section-title,
.p-page-privacy__section-title,
.p-page-tokushoho__section-title {
  margin-bottom: 1.2rem;
  color: #364153;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0;
}
@media (min-width: 1000px) {
  .p-page-terms__section-title,
  .p-page-privacy__section-title,
  .p-page-tokushoho__section-title {
    font-size: 2rem;
    margin-bottom: 1.6rem;
  }
}
.p-page-terms__paragraph,
.p-page-privacy__paragraph,
.p-page-tokushoho__paragraph {
  color: #364153;
  font-size: 1.4rem;
  line-height: 1.75;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-terms__paragraph,
  .p-page-privacy__paragraph,
  .p-page-tokushoho__paragraph {
    font-size: 1.6rem;
    line-height: 1.7;
  }
}
.p-page-terms__paragraph + .p-page-terms__paragraph,
.p-page-terms__paragraph + .p-page-privacy__paragraph,
.p-page-terms__paragraph + .p-page-tokushoho__paragraph,
.p-page-privacy__paragraph + .p-page-terms__paragraph,
.p-page-privacy__paragraph + .p-page-privacy__paragraph,
.p-page-privacy__paragraph + .p-page-tokushoho__paragraph,
.p-page-tokushoho__paragraph + .p-page-terms__paragraph,
.p-page-tokushoho__paragraph + .p-page-privacy__paragraph,
.p-page-tokushoho__paragraph + .p-page-tokushoho__paragraph {
  margin-top: 0.8rem;
}
.p-page-terms__list-decimal,
.p-page-privacy__list-decimal,
.p-page-tokushoho__list-decimal {
  margin: 1rem 0 0;
  padding-left: 2rem;
  list-style: decimal;
  color: #364153;
  font-size: 1.4rem;
  line-height: 1.75;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-terms__list-decimal,
  .p-page-privacy__list-decimal,
  .p-page-tokushoho__list-decimal {
    font-size: 1.6rem;
    line-height: 1.7;
    padding-left: 2.4rem;
  }
}
.p-page-terms__list-decimal > li,
.p-page-privacy__list-decimal > li,
.p-page-tokushoho__list-decimal > li {
  padding-left: 0.4rem;
}
.p-page-terms__list-decimal > li + li,
.p-page-privacy__list-decimal > li + li,
.p-page-tokushoho__list-decimal > li + li {
  margin-top: 0.4rem;
}
@media (min-width: 1000px) {
  .p-page-terms__list-decimal > li + li,
  .p-page-privacy__list-decimal > li + li,
  .p-page-tokushoho__list-decimal > li + li {
    margin-top: 0.6rem;
  }
}
.p-page-terms__list-circle,
.p-page-privacy__list-circle,
.p-page-tokushoho__list-circle {
  margin: 0.6rem 0 0;
  padding-left: 1.4rem;
  list-style: none;
  color: #364153;
  font-size: 1.4rem;
  line-height: 1.75;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-terms__list-circle,
  .p-page-privacy__list-circle,
  .p-page-tokushoho__list-circle {
    font-size: 1.55rem;
    line-height: 1.7;
  }
}
.p-page-terms__list-circle > li,
.p-page-privacy__list-circle > li,
.p-page-tokushoho__list-circle > li {
  position: relative;
  padding-left: 1.2rem;
}
.p-page-terms__list-circle > li::before,
.p-page-privacy__list-circle > li::before,
.p-page-tokushoho__list-circle > li::before {
  content: "・";
  position: absolute;
  left: 0;
  color: #4a5565;
}
.p-page-terms__list-circle > li + li,
.p-page-privacy__list-circle > li + li,
.p-page-tokushoho__list-circle > li + li {
  margin-top: 0.2rem;
}
.p-page-terms__footer,
.p-page-privacy__footer,
.p-page-tokushoho__footer {
  margin-top: 2.4rem;
  padding-top: 2rem;
  border-top: 1px solid #e5e7eb;
  color: #4a5565;
  font-size: 1.3rem;
  text-align: right;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-terms__footer,
  .p-page-privacy__footer,
  .p-page-tokushoho__footer {
    margin-top: 3.2rem;
    padding-top: 2.4rem;
    font-size: 1.4rem;
  }
}
.p-page-terms__back,
.p-page-privacy__back,
.p-page-tokushoho__back {
  margin-top: 3.2rem;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-terms__back,
  .p-page-privacy__back,
  .p-page-tokushoho__back {
    margin-top: 4rem;
  }
}
.p-page-terms__back a,
.p-page-privacy__back a,
.p-page-tokushoho__back a {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
  color: #155dfc;
  font-size: 1.4rem;
  font-weight: 700;
  text-decoration: none;
  -webkit-transition: color 0.2s ease, gap 0.2s ease;
  transition: color 0.2s ease, gap 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-terms__back a,
  .p-page-privacy__back a,
  .p-page-tokushoho__back a {
    font-size: 1.6rem;
  }
}
.p-page-terms__back a:hover,
.p-page-privacy__back a:hover,
.p-page-tokushoho__back a:hover {
  color: #12398e;
  gap: 0.6rem;
  text-decoration: underline;
}

.p-page-404 {
  background-color: #f9fafb;
  min-height: calc(100vh - 6.4rem);
  padding: 12rem 0 6.4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (min-width: 1000px) {
  .p-page-404 {
    padding: 14rem 0 9.6rem;
  }
}
.p-page-404__inner {
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
  padding: 0 1.6rem;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-404__inner {
    padding: 0 3.2rem;
  }
}
.p-page-404__code {
  display: inline-block;
  margin-bottom: 0.8rem;
  background: linear-gradient(135deg, #155dfc 0%, #13195F 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  font-family: "Inter", sans-serif;
  font-size: 7rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.02em;
}
@media (min-width: 800px) {
  .p-page-404__code {
    font-size: 9rem;
  }
}
@media (min-width: 1000px) {
  .p-page-404__code {
    font-size: 11rem;
    margin-bottom: 1.2rem;
  }
}
.p-page-404__title {
  margin-bottom: 1.6rem;
  color: #13195F;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-404__title {
    font-size: 2.8rem;
    margin-bottom: 2rem;
  }
}
.p-page-404__body {
  margin-bottom: 3.2rem;
  color: #4a5565;
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-404__body {
    font-size: 1.6rem;
    margin-bottom: 4rem;
  }
}
.p-page-404__body p + p {
  margin-top: 0.4rem;
}
.p-page-404__actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.2rem;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media (min-width: 800px) {
  .p-page-404__actions {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1.6rem;
  }
}
.p-page-404__actions .c-btn {
  width: 100%;
}
@media (min-width: 800px) {
  .p-page-404__actions .c-btn {
    width: auto;
    min-width: 22rem;
  }
}

.p-page-maintenance {
  min-height: 100vh;
  padding: 3.2rem 1.6rem 2.4rem;
  background-color: #f9fafb;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 2.4rem;
}
@media (min-width: 1000px) {
  .p-page-maintenance {
    padding: 4.8rem 3.2rem 3.2rem;
    gap: 4rem;
  }
}
.p-page-maintenance__logo {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: none;
}
.p-page-maintenance__logo img {
  max-width: 22rem;
  height: auto;
}
@media (min-width: 1000px) {
  .p-page-maintenance__logo img {
    max-width: 27.2rem;
  }
}
.p-page-maintenance__card {
  width: 100%;
  max-width: 640px;
  padding: 3.2rem 2rem;
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-maintenance__card {
    padding: 5.6rem 4.8rem;
  }
}
.p-page-maintenance__icon {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 8rem;
  height: 8rem;
  margin: 0 auto 2.4rem;
  background-color: #fefce8;
  border: 2px solid #fff085;
  border-radius: 50%;
  color: #ca8a04;
  font-size: 3.6rem;
  line-height: 1;
}
@media (min-width: 1000px) {
  .p-page-maintenance__icon {
    width: 9.6rem;
    height: 9.6rem;
    margin-bottom: 3.2rem;
    font-size: 4.4rem;
  }
}
.p-page-maintenance__title {
  margin-bottom: 1.6rem;
  color: #13195F;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-maintenance__title {
    font-size: 3rem;
    margin-bottom: 2rem;
  }
}
.p-page-maintenance__body {
  margin-bottom: 2.4rem;
  color: #4a5565;
  font-size: 1.4rem;
  line-height: 1.8;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-maintenance__body {
    font-size: 1.6rem;
    margin-bottom: 3.2rem;
  }
}
.p-page-maintenance__body p + p {
  margin-top: 0.4rem;
}
.p-page-maintenance__schedule {
  margin-bottom: 2.4rem;
  padding: 1.6rem 2rem;
  background-color: #fefce8;
  border: 1px solid #fff085;
  border-radius: 10px;
}
@media (min-width: 1000px) {
  .p-page-maintenance__schedule {
    margin-bottom: 3.2rem;
    padding: 2rem 2.4rem;
  }
}
.p-page-maintenance__schedule-label {
  margin-bottom: 0.6rem;
  color: #854d0e;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-maintenance__schedule-label {
    font-size: 1.3rem;
  }
}
.p-page-maintenance__schedule-time {
  color: #0a0a0a;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-maintenance__schedule-time {
    font-size: 1.8rem;
  }
}
.p-page-maintenance__contact {
  padding-top: 2rem;
  border-top: 1px solid #e5e7eb;
}
@media (min-width: 1000px) {
  .p-page-maintenance__contact {
    padding-top: 2.4rem;
  }
}
.p-page-maintenance__contact-lead {
  margin-bottom: 0.8rem;
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.6;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-maintenance__contact-lead {
    font-size: 1.4rem;
  }
}
.p-page-maintenance__contact-mail {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
  color: #155dfc;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.01em;
  text-decoration: none;
  word-break: break-all;
}
@media (min-width: 1000px) {
  .p-page-maintenance__contact-mail {
    font-size: 1.6rem;
  }
}
.p-page-maintenance__contact-mail:hover {
  text-decoration: underline;
}
.p-page-maintenance__contact-mail i {
  font-size: 1.4rem;
}
@media (min-width: 1000px) {
  .p-page-maintenance__contact-mail i {
    font-size: 1.6rem;
  }
}
.p-page-maintenance__copy {
  color: #6a7282;
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-maintenance__copy {
    font-size: 1.3rem;
  }
}

.p-page-ad-plan {
  background-color: #f7f9fc;
  padding: 4rem 0 6.4rem;
}
@media (min-width: 1000px) {
  .p-page-ad-plan {
    padding: 5.6rem 0 9.6rem;
  }
}
.p-page-ad-plan__inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__inner {
    padding: 0 3.2rem;
  }
}
.p-page-ad-plan__head {
  margin-bottom: 3.2rem;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__head {
    margin-bottom: 4.8rem;
  }
}
.p-page-ad-plan__title {
  position: relative;
  margin-bottom: 1rem;
  padding-left: 1.6rem;
  color: #13195F;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__title {
    font-size: 3rem;
    padding-left: 2rem;
    margin-bottom: 1.4rem;
  }
}
.p-page-ad-plan__title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4rem;
  bottom: 0.4rem;
  width: 5px;
  background: -webkit-gradient(linear, left top, left bottom, from(#fbbf24), to(#f59e0b));
  background: linear-gradient(180deg, #fbbf24, #f59e0b);
  border-radius: 3px;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__title::before {
    width: 6px;
  }
}
.p-page-ad-plan__lead {
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__lead {
    font-size: 1.5rem;
  }
}
.p-page-ad-plan__section {
  margin-bottom: 3.2rem;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__section {
    margin-bottom: 4.8rem;
  }
}
.p-page-ad-plan__section-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__section-head {
    gap: 1rem;
    margin-bottom: 2.4rem;
  }
}
.p-page-ad-plan__section-icon {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 2.8rem;
  height: 2.8rem;
  background: linear-gradient(135deg, #3a6ad4, #155dfc);
  color: #ffffff;
  border-radius: 9999px;
  font-size: 1.2rem;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__section-icon {
    width: 3.2rem;
    height: 3.2rem;
    font-size: 1.4rem;
  }
}
.p-page-ad-plan__section-icon--image {
  background: none;
  border-radius: 0;
  width: 2.8rem;
  height: 2.8rem;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__section-icon--image {
    width: 3.2rem;
    height: 3.2rem;
  }
}
.p-page-ad-plan__section-icon-img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-page-ad-plan__section-title {
  color: #0a0a0a;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__section-title {
    font-size: 2rem;
  }
}
.p-page-ad-plan__benefits {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 800px) {
  .p-page-ad-plan__benefits {
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
  }
}
.p-page-ad-plan__benefit-card {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 3.2rem 2rem;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__benefit-card {
    padding: 4rem 2.4rem;
  }
}
.p-page-ad-plan__benefit-icon {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 7.2rem;
  height: 7.2rem;
  margin-bottom: 1.6rem;
  background: linear-gradient(135deg, #eff6ff, #dbeafe);
  color: #155dfc;
  border-radius: 9999px;
  font-size: 3rem;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__benefit-icon {
    width: 8rem;
    height: 8rem;
    margin-bottom: 2rem;
    font-size: 3.2rem;
  }
}
.p-page-ad-plan__benefit-icon--image {
  width: 8.5rem;
  height: 8.5rem;
  max-width: 8.5rem;
  margin-bottom: 1.6rem;
  background: transparent;
  border-radius: 0;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__benefit-icon--image {
    width: 8.5rem;
    height: 8.5rem;
    max-width: 8.5rem;
    margin-bottom: 2rem;
  }
}
.p-page-ad-plan__benefit-icon-img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-page-ad-plan__benefit-title {
  margin-bottom: 0.8rem;
  color: #0a0a0a;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__benefit-title {
    font-size: 1.6rem;
  }
}
.p-page-ad-plan__benefit-desc {
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.6;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__benefit-desc {
    font-size: 1.4rem;
  }
}
.p-page-ad-plan__plans {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.4rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 800px) {
  .p-page-ad-plan__plans {
    grid-template-columns: repeat(2, 1fr);
    gap: 2.4rem;
  }
}
.p-page-ad-plan__plan-card {
  position: relative;
  background-color: #ffffff;
  border: 2px solid #e5e7eb;
  border-radius: 10px;
  padding: 3.2rem 2.4rem 2.4rem;
  -webkit-transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: border-color 0.2s ease, -webkit-box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, -webkit-box-shadow 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__plan-card {
    padding: 4rem 3.2rem 3.2rem;
  }
}
.p-page-ad-plan__plan-card:hover {
  border-color: #c7d2fe;
  -webkit-box-shadow: 0 4px 16px rgba(21, 93, 252, 0.08);
          box-shadow: 0 4px 16px rgba(21, 93, 252, 0.08);
}
.p-page-ad-plan__plan-card--recommended {
  border-color: #ff6900;
}
.p-page-ad-plan__plan-card--recommended:hover {
  border-color: #ff6900;
  -webkit-box-shadow: 0 4px 16px rgba(255, 105, 0, 0.18);
          box-shadow: 0 4px 16px rgba(255, 105, 0, 0.18);
}
.p-page-ad-plan__plan-badge {
  position: absolute;
  top: -1.2rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0.4rem 1.6rem;
  background-color: #ff6900;
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.04em;
  border-radius: 9999px;
  white-space: nowrap;
}
.p-page-ad-plan__plan-badge--sponsor {
  background-color: #ff6900;
}
.p-page-ad-plan__plan-badge--featured {
  background: -webkit-gradient(linear, left top, right top, from(#ff6900), to(#f0b100));
  background: linear-gradient(90deg, #ff6900 0%, #f0b100 100%);
}
.p-page-ad-plan__plan-desc {
  margin: -0.8rem 0 1.2rem;
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.6;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__plan-desc {
    font-size: 1.4rem;
    margin: -1rem 0 1.6rem;
  }
}
.p-page-ad-plan__plan-name {
  margin-bottom: 0.6rem;
  color: #0a0a0a;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__plan-name {
    font-size: 1.8rem;
  }
}
.p-page-ad-plan__plan-price {
  margin-bottom: 1.6rem;
  color: #f54900;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__plan-price {
    font-size: 2.4rem;
    margin-bottom: 2rem;
  }
}
.p-page-ad-plan__plan-price small {
  font-size: 1.4rem;
  font-weight: 700;
  margin-left: 0.2rem;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__plan-price small {
    font-size: 1.6rem;
  }
}
.p-page-ad-plan__plan-features {
  margin: 0;
  padding: 0;
  list-style: none;
}
.p-page-ad-plan__plan-feature {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.8rem;
  color: #0a0a0a;
  font-size: 1.3rem;
  line-height: 1.6;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__plan-feature {
    font-size: 1.4rem;
  }
}
.p-page-ad-plan__plan-feature + .p-page-ad-plan__plan-feature {
  margin-top: 0.6rem;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__plan-feature + .p-page-ad-plan__plan-feature {
    margin-top: 0.8rem;
  }
}
.p-page-ad-plan__plan-feature i {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-top: 0.2rem;
  color: #00c950;
  font-size: 1.4rem;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__plan-feature i {
    font-size: 1.5rem;
  }
}
.p-page-ad-plan__form {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2.4rem 2rem;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__form {
    padding: 4rem;
  }
}
.p-page-ad-plan__form-title {
  margin-bottom: 1.6rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #e5e7eb;
  color: #13195F;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__form-title {
    font-size: 2rem;
    margin-bottom: 2.4rem;
    padding-bottom: 1.2rem;
  }
}
.p-page-ad-plan__agree {
  margin-top: 2.4rem;
  padding-top: 2rem;
  border-top: 1px solid #e5e7eb;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__agree {
    margin-top: 3.2rem;
    padding-top: 2.4rem;
  }
}
.p-page-ad-plan__agree-label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.8rem;
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.6;
  cursor: pointer;
}
@media (min-width: 1000px) {
  .p-page-ad-plan__agree-label {
    font-size: 1.4rem;
  }
}
.p-page-ad-plan__agree-checkbox {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 1.8rem;
  height: 1.8rem;
  margin-top: 0.1rem;
  accent-color: #155dfc;
  cursor: pointer;
}
.p-page-ad-plan .c-notice {
  margin-top: 2rem;
}
@media (min-width: 1000px) {
  .p-page-ad-plan .c-notice {
    margin-top: 2.4rem;
  }
}

.p-page-company {
  background-color: #f7f9fc;
  padding: 4rem 0 6.4rem;
}
@media (min-width: 1000px) {
  .p-page-company {
    padding: 5.6rem 0 9.6rem;
  }
}
.p-page-company__inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-company__inner {
    padding: 0 3.2rem;
  }
}
.p-page-company__head {
  margin-bottom: 3.2rem;
}
@media (min-width: 1000px) {
  .p-page-company__head {
    margin-bottom: 4rem;
  }
}
.p-page-company__title {
  position: relative;
  margin-bottom: 1rem;
  padding-left: 1.6rem;
  color: #13195F;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-company__title {
    font-size: 3rem;
    padding-left: 2rem;
    margin-bottom: 1.4rem;
  }
}
.p-page-company__title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4rem;
  bottom: 0.4rem;
  width: 5px;
  background: -webkit-gradient(linear, left top, left bottom, from(#fbbf24), to(#f59e0b));
  background: linear-gradient(180deg, #fbbf24, #f59e0b);
  border-radius: 3px;
}
@media (min-width: 1000px) {
  .p-page-company__title::before {
    width: 6px;
  }
}
.p-page-company__lead {
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .p-page-company__lead {
    font-size: 1.5rem;
  }
}
.p-page-company__panel {
  margin-bottom: 3.2rem;
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2.4rem 2rem;
}
@media (min-width: 1000px) {
  .p-page-company__panel {
    margin-bottom: 4rem;
    padding: 4rem;
  }
}
.p-page-company__company-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  margin-bottom: 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-company__company-head {
    gap: 1.2rem;
    margin-bottom: 2.4rem;
  }
}
.p-page-company__company-icon {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  background: linear-gradient(135deg, #eff6ff, #dbeafe);
  color: #155dfc;
  border-radius: 8px;
  font-size: 1.6rem;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
@media (min-width: 1000px) {
  .p-page-company__company-icon {
    width: 4rem;
    height: 4rem;
    font-size: 1.8rem;
  }
}
.p-page-company__company-name {
  color: #0a0a0a;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-company__company-name {
    font-size: 2.2rem;
  }
}
.p-page-company__table {
  width: 100%;
  border-collapse: collapse;
}
.p-page-company__table th, .p-page-company__table td {
  padding: 1.4rem 1.2rem;
  border-bottom: 1px solid #e5e7eb;
  font-size: 1.3rem;
  line-height: 1.6;
  text-align: left;
  vertical-align: middle;
}
@media (min-width: 1000px) {
  .p-page-company__table th, .p-page-company__table td {
    padding: 1.6rem;
    font-size: 1.4rem;
  }
}
.p-page-company__table th {
  background-color: #f9fafb;
  color: #0a0a0a;
  font-weight: 700;
  letter-spacing: 0.02em;
  white-space: nowrap;
  width: 30%;
}
@media (min-width: 800px) {
  .p-page-company__table th {
    width: 25%;
  }
}
.p-page-company__table td {
  color: #0a0a0a;
}
.p-page-company__table tr:first-child th,
.p-page-company__table tr:first-child td {
  border-top: 1px solid #e5e7eb;
}
.p-page-company__cell-with-icon {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.8rem;
}
.p-page-company__cell-with-icon i {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-top: 0.4rem;
  color: #6a7282;
  font-size: 1.2rem;
}
@media (min-width: 1000px) {
  .p-page-company__cell-with-icon i {
    font-size: 1.4rem;
  }
}
.p-page-company__cell-link {
  color: #155dfc;
  text-decoration: none;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
  word-break: break-all;
}
.p-page-company__cell-link:hover {
  color: #12398e;
  text-decoration: underline;
}
.p-page-company__services {
  margin-bottom: 3.2rem;
  background-color: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2.4rem 2rem;
}
@media (min-width: 1000px) {
  .p-page-company__services {
    margin-bottom: 4rem;
    padding: 4rem;
  }
}
.p-page-company__services-title {
  margin-bottom: 1.6rem;
  color: #0a0a0a;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-company__services-title {
    font-size: 2.2rem;
    margin-bottom: 2.4rem;
  }
}
.p-page-company__service-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (min-width: 800px) {
  .p-page-company__service-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
}
.p-page-company__service-card {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2rem 1.6rem;
  -webkit-transition: -webkit-box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  transition: -webkit-box-shadow 0.2s ease, -webkit-transform 0.2s ease;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
  transition: box-shadow 0.2s ease, transform 0.2s ease, -webkit-box-shadow 0.2s ease, -webkit-transform 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-company__service-card {
    padding: 2.4rem;
  }
}
.p-page-company__service-card:hover {
  -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
          box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
  -webkit-transform: translateY(-2px);
          transform: translateY(-2px);
}
.p-page-company__service-card--blue {
  border-color: #bedbff;
}
.p-page-company__service-card--green {
  border-color: #b9f8cf;
}
.p-page-company__service-card--purple {
  border-color: #e9d4ff;
}
.p-page-company__service-card--orange {
  border-color: #ffd6a8;
}
.p-page-company__service-card--blue .p-page-company__service-icon {
  background-color: #eff6ff;
  color: #155dfc;
}
.p-page-company__service-card--green .p-page-company__service-icon {
  background-color: #f0fdf4;
  color: #00a63e;
}
.p-page-company__service-card--purple .p-page-company__service-icon {
  background-color: #faf5ff;
  color: #9810fa;
}
.p-page-company__service-card--orange .p-page-company__service-icon {
  background-color: #fff7ed;
  color: #f54900;
}
.p-page-company__service-head {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  margin-bottom: 1rem;
}
@media (min-width: 1000px) {
  .p-page-company__service-head {
    gap: 1.2rem;
    margin-bottom: 1.2rem;
  }
}
.p-page-company__service-icon {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 8px;
  font-size: 1.4rem;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
@media (min-width: 1000px) {
  .p-page-company__service-icon {
    width: 3.6rem;
    height: 3.6rem;
    font-size: 1.6rem;
  }
}
.p-page-company__service-title {
  color: #0a0a0a;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-company__service-title {
    font-size: 1.7rem;
  }
}
.p-page-company__service-desc {
  margin-bottom: 1.2rem;
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .p-page-company__service-desc {
    font-size: 1.4rem;
    margin-bottom: 1.6rem;
  }
}
.p-page-company__service-link {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
  color: #155dfc;
  font-size: 1.3rem;
  font-weight: 500;
  text-decoration: none;
  -webkit-transition: gap 0.2s ease, color 0.2s ease;
  transition: gap 0.2s ease, color 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-company__service-link {
    font-size: 1.4rem;
  }
}
.p-page-company__service-link i {
  font-size: 1.2rem;
}
.p-page-company__service-link:hover {
  color: #12398e;
  gap: 0.6rem;
  text-decoration: underline;
}
.p-page-company__cta {
  padding: 2.4rem 2rem;
  background-color: #eff6ff;
  border: 1px solid #bedbff;
  border-radius: 10px;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-company__cta {
    padding: 3.2rem;
  }
}
.p-page-company__cta-title {
  margin-bottom: 1rem;
  color: #0a0a0a;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: -0.01em;
}
@media (min-width: 1000px) {
  .p-page-company__cta-title {
    font-size: 1.8rem;
    margin-bottom: 1.2rem;
  }
}
.p-page-company__cta-desc {
  margin-bottom: 1.6rem;
  color: #364153;
  font-size: 1.3rem;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .p-page-company__cta-desc {
    font-size: 1.5rem;
    margin-bottom: 2rem;
  }
}

.p-page-contact,
.p-page-inquiry {
  background-color: #f7f9fc;
  padding: 4rem 0 6.4rem;
}
@media (min-width: 1000px) {
  .p-page-contact,
  .p-page-inquiry {
    padding: 5.6rem 0 9.6rem;
  }
}
.p-page-contact__inner,
.p-page-inquiry__inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-contact__inner,
  .p-page-inquiry__inner {
    padding: 0 3.2rem;
  }
}
.p-page-contact__head,
.p-page-inquiry__head {
  margin-bottom: 2.4rem;
}
@media (min-width: 1000px) {
  .p-page-contact__head,
  .p-page-inquiry__head {
    margin-bottom: 3.2rem;
  }
}
.p-page-contact__title,
.p-page-inquiry__title {
  position: relative;
  margin-bottom: 1rem;
  padding-left: 1.6rem;
  color: #13195F;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-contact__title,
  .p-page-inquiry__title {
    font-size: 3rem;
    padding-left: 2rem;
    margin-bottom: 1.4rem;
  }
}
.p-page-contact__title::before,
.p-page-inquiry__title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4rem;
  bottom: 0.4rem;
  width: 5px;
  background: -webkit-gradient(linear, left top, left bottom, from(#fbbf24), to(#f59e0b));
  background: linear-gradient(180deg, #fbbf24, #f59e0b);
  border-radius: 3px;
}
@media (min-width: 1000px) {
  .p-page-contact__title::before,
  .p-page-inquiry__title::before {
    width: 6px;
  }
}
.p-page-contact__lead,
.p-page-inquiry__lead {
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .p-page-contact__lead,
  .p-page-inquiry__lead {
    font-size: 1.5rem;
  }
}
.p-page-contact__form,
.p-page-inquiry__form {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 2.4rem 2rem;
}
@media (min-width: 1000px) {
  .p-page-contact__form,
  .p-page-inquiry__form {
    padding: 4rem;
  }
}

.p-page-contact-confirm__list,
.p-page-inquiry-confirm__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0;
  border-top: 1px solid #e5e7eb;
}
.p-page-contact-confirm__item,
.p-page-inquiry-confirm__item {
  display: grid;
  grid-template-columns: 1fr;
  border-bottom: 1px solid #e5e7eb;
}
@media (min-width: 800px) {
  .p-page-contact-confirm__item,
  .p-page-inquiry-confirm__item {
    grid-template-columns: 14rem 1fr;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media (min-width: 1000px) {
  .p-page-contact-confirm__item,
  .p-page-inquiry-confirm__item {
    grid-template-columns: 18rem 1fr;
  }
}
.p-page-contact-confirm__term,
.p-page-inquiry-confirm__term {
  padding: 1.2rem 1.2rem;
  background-color: #f9fafb;
  font-size: 1.3rem;
  font-weight: 700;
  color: #0a0a0a;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media (min-width: 800px) {
  .p-page-contact-confirm__term,
  .p-page-inquiry-confirm__term {
    -webkit-align-self: stretch;
        -ms-flex-item-align: stretch;
            align-self: stretch;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 1.4rem 1.6rem;
  }
}
@media (min-width: 1000px) {
  .p-page-contact-confirm__term,
  .p-page-inquiry-confirm__term {
    font-size: 1.4rem;
  }
}
.p-page-contact-confirm__desc,
.p-page-inquiry-confirm__desc {
  padding: 0.4rem 1.2rem 1.4rem;
  font-size: 1.4rem;
  color: #0a0a0a;
  line-height: 1.7;
  letter-spacing: 0.01em;
  word-break: break-word;
}
@media (min-width: 800px) {
  .p-page-contact-confirm__desc,
  .p-page-inquiry-confirm__desc {
    padding: 1.4rem 1.6rem;
  }
}
@media (min-width: 1000px) {
  .p-page-contact-confirm__desc,
  .p-page-inquiry-confirm__desc {
    font-size: 1.5rem;
  }
}
.p-page-contact-confirm__desc--empty,
.p-page-inquiry-confirm__desc--empty {
  color: #9ca3af;
}
.p-page-contact-confirm__desc--multiline,
.p-page-inquiry-confirm__desc--multiline {
  white-space: pre-wrap;
}

.p-page-contact-thanks,
.p-page-inquiry-thanks {
  background-color: #f7f9fc;
  padding-bottom: 6.4rem;
}
@media (min-width: 1000px) {
  .p-page-contact-thanks,
  .p-page-inquiry-thanks {
    padding-bottom: 9.6rem;
  }
}
.p-page-contact-thanks__inner,
.p-page-inquiry-thanks__inner {
  max-width: 896px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-contact-thanks__inner,
  .p-page-inquiry-thanks__inner {
    padding: 0 3.2rem;
  }
}
.p-page-contact-thanks__card,
.p-page-inquiry-thanks__card {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  padding: 4rem 2rem;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-contact-thanks__card,
  .p-page-inquiry-thanks__card {
    padding: 6.4rem 4rem;
  }
}
.p-page-contact-thanks__icon,
.p-page-inquiry-thanks__icon {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 7.2rem;
  height: 7.2rem;
  margin-bottom: 2.4rem;
  background-color: #dcfce7;
  border-radius: 50%;
  color: #16a34a;
  font-size: 3.6rem;
  line-height: 1;
}
@media (min-width: 1000px) {
  .p-page-contact-thanks__icon,
  .p-page-inquiry-thanks__icon {
    width: 8rem;
    height: 8rem;
    margin-bottom: 3.2rem;
    font-size: 4rem;
  }
}
.p-page-contact-thanks__title,
.p-page-inquiry-thanks__title {
  margin-bottom: 1.6rem;
  font-size: 2.2rem;
  font-weight: 700;
  color: #13195F;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-contact-thanks__title,
  .p-page-inquiry-thanks__title {
    font-size: 3rem;
    margin-bottom: 2.4rem;
  }
}
.p-page-contact-thanks__body,
.p-page-inquiry-thanks__body {
  margin-bottom: 3.2rem;
  font-size: 1.4rem;
  color: #4a5565;
  line-height: 1.8;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-contact-thanks__body,
  .p-page-inquiry-thanks__body {
    margin-bottom: 4rem;
    font-size: 1.6rem;
  }
}
.p-page-contact-thanks__body p + p,
.p-page-inquiry-thanks__body p + p {
  margin-top: 1.2rem;
}
@media (min-width: 1000px) {
  .p-page-contact-thanks__body p + p,
  .p-page-inquiry-thanks__body p + p {
    margin-top: 1.6rem;
  }
}
.p-page-contact-thanks__actions,
.p-page-inquiry-thanks__actions {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.2rem;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media (min-width: 800px) {
  .p-page-contact-thanks__actions,
  .p-page-inquiry-thanks__actions {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1.6rem;
  }
}
.p-page-contact-thanks__actions .c-btn,
.p-page-inquiry-thanks__actions .c-btn {
  width: 100%;
}
@media (min-width: 800px) {
  .p-page-contact-thanks__actions .c-btn,
  .p-page-inquiry-thanks__actions .c-btn {
    width: auto;
    min-width: 22rem;
  }
}

.p-page-inquiry__target {
  margin-bottom: 2.4rem;
  padding: 2rem 1.8rem;
  background-color: #eff6ff;
  border: 1px solid #bedbff;
  border-radius: 10px;
}
@media (min-width: 1000px) {
  .p-page-inquiry__target {
    margin-bottom: 3.2rem;
    padding: 2.4rem 2.8rem;
  }
}
.p-page-inquiry__target-label {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
  margin-bottom: 0.8rem;
  color: #155dfc;
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
@media (min-width: 1000px) {
  .p-page-inquiry__target-label {
    font-size: 1.3rem;
  }
}
.p-page-inquiry__target-name {
  margin-bottom: 0.4rem;
  color: #0a0a0a;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0;
}
@media (min-width: 1000px) {
  .p-page-inquiry__target-name {
    font-size: 2rem;
  }
}
.p-page-inquiry__target-meta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.8rem 1.6rem;
  color: #4a5565;
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.01em;
}
@media (min-width: 1000px) {
  .p-page-inquiry__target-meta {
    font-size: 1.3rem;
  }
}
.p-page-inquiry__target-meta span {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4rem;
}
.p-page-inquiry__target-meta span i {
  color: #6b7280;
}
.p-page-inquiry__agreement {
  margin-top: 1.6rem;
  padding-top: 1.6rem;
  border-top: 1px solid #e5e7eb;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-inquiry__agreement {
    margin-top: 2rem;
    padding-top: 2rem;
  }
}
.p-page-inquiry__agreement label {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
  color: #364153;
  font-size: 1.3rem;
  line-height: 1.5;
  cursor: pointer;
}
@media (min-width: 1000px) {
  .p-page-inquiry__agreement label {
    font-size: 1.4rem;
  }
}
.p-page-inquiry__agreement input[type=checkbox] {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 1.6rem;
  height: 1.6rem;
  accent-color: #155dfc;
  cursor: pointer;
}
.p-page-inquiry__agreement a {
  color: #155dfc;
  font-weight: 700;
  text-decoration: underline;
}
.p-page-inquiry__agreement a:hover {
  color: #12398e;
}

.p-page-inquiry-confirm__file {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
  padding: 0.6rem 1rem;
  background-color: #eff6ff;
  border: 1px solid #bedbff;
  border-radius: 4px;
  color: #155dfc;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.4;
  word-break: break-all;
}
@media (min-width: 1000px) {
  .p-page-inquiry-confirm__file {
    font-size: 1.4rem;
    padding: 0.8rem 1.2rem;
  }
}
.p-page-inquiry-confirm__file i {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  font-size: 1.4rem;
}

.p-page-sitemap {
  background-color: #f7f9fc;
  padding: 14rem 0 6.4rem;
}
@media (min-width: 1000px) {
  .p-page-sitemap {
    padding: 17rem 0 9.6rem;
  }
}
.p-page-sitemap__inner {
  max-width: 1140px;
  margin: 0 auto;
  padding: 0 1.6rem;
}
@media (min-width: 1000px) {
  .p-page-sitemap__inner {
    padding: 0 3.2rem;
  }
}
.p-page-sitemap__head {
  margin-bottom: 2.4rem;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-page-sitemap__head {
    margin-bottom: 4rem;
  }
}
.p-page-sitemap__title {
  margin-bottom: 0.8rem;
  color: #13195F;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.04em;
}
@media (min-width: 1000px) {
  .p-page-sitemap__title {
    font-size: 3.2rem;
    margin-bottom: 1.2rem;
  }
}
.p-page-sitemap__lead {
  color: #4a5565;
  font-size: 1.3rem;
  line-height: 1.7;
}
@media (min-width: 1000px) {
  .p-page-sitemap__lead {
    font-size: 1.5rem;
  }
}
.p-page-sitemap__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}
@media (min-width: 800px) {
  .p-page-sitemap__grid {
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
  }
}
@media (min-width: 1000px) {
  .p-page-sitemap__grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 2.4rem;
  }
}
.p-page-sitemap__category {
  padding: 2rem 1.8rem;
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
}
@media (min-width: 1000px) {
  .p-page-sitemap__category {
    padding: 2.8rem 2.4rem;
  }
}
.p-page-sitemap__category-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
  margin-bottom: 1.4rem;
  padding-bottom: 1rem;
  border-bottom: 2px solid #13195F;
  color: #13195F;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-page-sitemap__category-title {
    font-size: 1.8rem;
    margin-bottom: 1.8rem;
    padding-bottom: 1.2rem;
  }
}
.p-page-sitemap__category-title i {
  font-size: 1.4rem;
}
@media (min-width: 1000px) {
  .p-page-sitemap__category-title i {
    font-size: 1.6rem;
  }
}
.p-page-sitemap__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.4rem;
}
.p-page-sitemap__link {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
  padding: 0.8rem 0;
  color: #364153;
  font-size: 1.4rem;
  line-height: 1.5;
  text-decoration: none;
  -webkit-transition: color 0.2s ease, gap 0.2s ease;
  transition: color 0.2s ease, gap 0.2s ease;
}
@media (min-width: 1000px) {
  .p-page-sitemap__link {
    font-size: 1.5rem;
  }
}
.p-page-sitemap__link::before {
  content: "";
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  display: inline-block;
  width: 0.6rem;
  height: 0.6rem;
  border-right: 2px solid #1a54d4;
  border-bottom: 2px solid #1a54d4;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}
.p-page-sitemap__link:hover {
  color: #1a54d4;
  gap: 0.9rem;
}
.p-page-sitemap__link:hover::before {
  -webkit-transform: rotate(-45deg) translate(0.2rem, 0.2rem);
          transform: rotate(-45deg) translate(0.2rem, 0.2rem);
}

.p-cta {
  position: relative;
  width: 100%;
  padding: 5.6rem 0;
  overflow: hidden;
  color: #ffffff;
  isolation: isolate;
}
@media (min-width: 1000px) {
  .p-cta {
    padding: 5rem 0;
  }
}
.p-cta__bg {
  position: absolute;
  inset: 0;
  z-index: -2;
}
.p-cta__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-cta__overlay {
  display: none;
}
.p-cta__inner {
  max-width: 800px;
  margin: 0 auto;
  padding: 0 1.6rem;
  text-align: center;
}
@media (min-width: 1000px) {
  .p-cta__inner {
    padding: 0 2.4rem;
  }
}
.p-cta__lead {
  display: inline-block;
  margin: 0 auto 1.6rem;
  font-size: 1.8rem;
  font-weight: 700;
  color: #ffffff;
  letter-spacing: 0.08em;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.6rem;
}
@media (min-width: 1000px) {
  .p-cta__lead {
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 2rem;
  }
}
.p-cta__lead-line {
  display: none;
}
.p-cta__title {
  font-family: "Inter", "Noto Sans JP", sans-serif;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.5;
  color: #ffffff;
  margin-bottom: 2.4rem;
  letter-spacing: 0.02em;
}
@media (min-width: 1000px) {
  .p-cta__title {
    font-size: 2.8rem;
    font-weight: 700;
    margin-bottom: 3.2rem;
  }
}
.p-cta__btns {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.2rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 auto;
}
@media (min-width: 1000px) {
  .p-cta__btns {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1.6rem;
  }
}
.p-cta__btns .c-btn {
  width: 29.2rem;
  height: 5.6rem;
  min-height: 0;
  padding: 0 2.4rem;
  border-radius: 100px;
  -webkit-box-shadow: 0 4px 4px 0 rgba(110, 110, 110, 0.2);
          box-shadow: 0 4px 4px 0 rgba(110, 110, 110, 0.2);
  font-size: 1.6rem;
  font-weight: 700;
}
.p-cta__btns .c-btn--orange {
  background: -webkit-gradient(linear, left top, right top, from(#ff6900), to(#ff9d00));
  background: linear-gradient(90deg, #ff6900 0%, #ff9d00 100%);
  border: 1.5px solid #ffffff;
  color: #ffffff;
}
.p-cta__btns .c-btn--white {
  background: #ffffff;
  border: 1.5px solid #3a6ad4;
  color: #3a6ad4;
}
.p-cta__btns .c-btn--orange.c-btn--badge {
  padding-left: 7.6rem;
}
.p-cta__btns .c-btn--orange.c-btn--badge .c-btn__free {
  left: 2rem;
  width: 5.5rem;
  height: 3.5rem;
  min-width: 0;
  border-radius: 50%;
  font-size: 1.6rem;
  font-weight: 700;
}

.p-footer {
  padding: 4.8rem 0 2rem;
  color: #ffffff;
}
@media (min-width: 800px) {
  .p-footer {
    padding: 5.6rem 0 2.4rem;
  }
}
.p-footer__inner {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 2.4rem;
  display: grid;
  grid-template-columns: 1fr;
  gap: 2.8rem;
}
@media (min-width: 800px) {
  .p-footer__inner {
    grid-template-columns: 26rem 1fr;
    padding: 0 4rem;
    gap: 6.4rem;
  }
}
@media (min-width: 600px) and (max-width: 1199px) {
  .p-footer__inner {
    padding: 0 4rem;
  }
}
.p-footer__brand {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.2rem;
}
@media (max-width: 799px) {
  .p-footer__brand {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    padding-bottom: 2rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.18);
  }
}
.p-footer__logo {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: none;
  color: inherit;
}
.p-footer__logo-img {
  display: block;
  width: auto;
  height: 2.4rem;
}
@media (min-width: 800px) {
  .p-footer__logo-img {
    height: 3.3rem;
  }
}
@media (max-width: 799px) {
  .p-footer__logo-img {
    height: 4.2rem;
  }
}
.p-footer__tagline {
  font-size: 1.3rem;
  line-height: 1.8;
  color: rgba(255, 255, 255, 0.85);
  letter-spacing: 0.04em;
}
.p-footer__nav {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2.4rem 1.6rem;
}
@media (min-width: 800px) {
  .p-footer__nav {
    grid-template-columns: repeat(3, 1fr);
    gap: 3.2rem;
  }
}
@media (max-width: 799px) {
  .p-footer__nav {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
.p-footer__nav-col ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.6rem;
}
@media (max-width: 799px) {
  .p-footer__nav-col ul {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.8rem 1.6rem;
  }
}
.p-footer__nav-col .p-footer__nav-text br {
  display: none;
}
@media (max-width: 799px) {
  .p-footer__nav-col .p-footer__nav-text br {
    display: inline;
  }
}
.p-footer__nav-col a {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
  font-size: 1.3rem;
  font-weight: 400;
  color: #99a1af;
  text-decoration: none;
  line-height: 1.7;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.p-footer__nav-col a i {
  color: #99a1af;
  font-size: 1.2rem;
}
.p-footer__nav-col a:hover {
  color: #ffffff;
  opacity: 1;
}
@media (max-width: 799px) {
  .p-footer__nav-col a {
    font-size: 1.6rem;
  }
  .p-footer__nav-col a i {
    font-size: 1.4rem;
  }
}
.p-footer__nav-title {
  font-size: 1.4rem;
  font-weight: 500;
  color: #ffffff;
  margin-bottom: 1rem;
  letter-spacing: 0.04em;
}
@media (max-width: 799px) {
  .p-footer__nav-title {
    font-size: 1.6rem;
    margin-bottom: 0.8rem;
  }
}
.p-footer__copy {
  max-width: 1000px;
  margin: 3.2rem auto 0;
  padding: 1.6rem 2.4rem 0;
  text-align: center;
  font-size: 1.1rem;
  color: rgba(255, 255, 255, 0.7);
  letter-spacing: 0.04em;
  position: relative;
}
.p-footer__copy::before {
  content: "";
  position: absolute;
  top: 0;
  left: 2.4rem;
  right: 2.4rem;
  border-top: 1px solid rgba(255, 255, 255, 0.18);
}
@media (min-width: 800px) {
  .p-footer__copy {
    margin-top: 4rem;
    padding: 1.6rem 4rem 0;
    font-size: 1.2rem;
  }
  .p-footer__copy::before {
    left: 4rem;
    right: 4rem;
  }
}
@media (min-width: 600px) and (max-width: 1199px) {
  .p-footer__copy {
    padding: 1.6rem 4rem 0;
  }
  .p-footer__copy::before {
    left: 4rem;
    right: 4rem;
  }
}

.is-recruit .p-bluebg {
  background-color: #e6f6ec;
  background-image: url("../images/top/green-bg-sp.jpg");
  background-image: -webkit-image-set(url("../images/top/green-bg-sp.webp") type("image/webp"), url("../images/top/green-bg-sp.jpg") type("image/jpeg"));
  background-image: image-set(url("../images/top/green-bg-sp.webp") type("image/webp"), url("../images/top/green-bg-sp.jpg") type("image/jpeg"));
}
@media (min-width: 800px) {
  .is-recruit .p-bluebg {
    background-image: url("../images/top/green-bg.jpg");
    background-image: -webkit-image-set(url("../images/top/green-bg.webp") type("image/webp"), url("../images/top/green-bg.jpg") type("image/jpeg"));
    background-image: image-set(url("../images/top/green-bg.webp") type("image/webp"), url("../images/top/green-bg.jpg") type("image/jpeg"));
  }
}
.is-recruit .p-search__title {
  color: #13195F;
  border-bottom-color: #13195F;
}
.is-recruit .p-search__select-text,
.is-recruit .p-search__select-icon,
.is-recruit .p-search__option {
  color: #0e3a25;
}
.is-recruit .p-search__option:hover,
.is-recruit .p-search__option.is-selected {
  background-color: #dcfce7;
  color: #0f7a3e;
}
.is-recruit .p-search__input {
  color: #0e3a25;
}
.is-recruit .p-search__input::-webkit-input-placeholder {
  color: rgba(14, 58, 37, 0.4);
}
.is-recruit .p-search__input::-moz-placeholder {
  color: rgba(14, 58, 37, 0.4);
}
.is-recruit .p-search__input:-ms-input-placeholder {
  color: rgba(14, 58, 37, 0.4);
}
.is-recruit .p-search__input::-ms-input-placeholder {
  color: rgba(14, 58, 37, 0.4);
}
.is-recruit .p-search__input::placeholder {
  color: rgba(14, 58, 37, 0.4);
}
.is-recruit .p-search__cond-list input[type=checkbox] {
  accent-color: #0f7a3e;
}
.is-recruit .p-search__cond-list label:hover span {
  color: #0f7a3e;
}
.is-recruit .p-search__cond-clear {
  color: #0f7a3e;
  border-color: #0f7a3e;
}
.is-recruit .p-search__cond-clear:hover {
  background-color: #0f7a3e;
  color: #fff;
}
.is-recruit .p-search__cond-apply {
  background-color: #0f7a3e;
  border-color: #0f7a3e;
}
.is-recruit .p-search__cond-apply:hover {
  background-color: #0a5a30;
  border-color: #0a5a30;
}
.is-recruit .p-search__submit,
.is-recruit .c-btn--primary,
.is-recruit .p-header__drawer-search {
  border-radius: 5px;
  background: #00B153;
  background-color: #00B153;
  border-color: #00B153;
  -webkit-box-shadow: 0 3px 0 0 #00A14B;
          box-shadow: 0 3px 0 0 #00A14B;
}
.is-recruit .p-search__submit:hover,
.is-recruit .c-btn--primary:hover,
.is-recruit .p-header__drawer-search:hover {
  background: #00A14B;
  background-color: #00A14B;
  border-color: #00A14B;
}
.is-recruit .p-search__submit:active,
.is-recruit .c-btn--primary:active,
.is-recruit .p-header__drawer-search:active {
  -webkit-box-shadow: 0 1px 0 0 #00A14B;
          box-shadow: 0 1px 0 0 #00A14B;
}
.is-recruit .p-search__all a {
  color: #0f7a3e;
}
.is-recruit .c-card__name {
  color: #13195F;
}
.is-recruit .c-tag {
  background-color: #dcfce7;
  color: #15803d;
}
.is-recruit .p-companies__prev,
.is-recruit .p-companies__next {
  background-color: #fff;
  color: #0f7a3e;
}
.is-recruit .p-companies__prev:hover,
.is-recruit .p-companies__next:hover {
  background-color: #fff;
  color: #0a5a30;
}
.is-recruit .p-companies__pagination .swiper-pagination-bullet-active {
  background-color: #0f7a3e;
}
.is-recruit .p-explore__title {
  color: #13195F;
}
.is-recruit .p-explore__icon {
  color: #0f7a3e;
}
.is-recruit .p-explore__btn {
  color: #0e3a25;
  border-color: #0f7a3e;
}
.is-recruit .p-explore__btn:hover {
  background-color: #0f7a3e;
  color: #fff;
}
.is-recruit .p-section__title {
  color: #13195F;
}
.is-recruit .p-section__more {
  color: #0f7a3e;
}
.is-recruit .c-badge--notice,
.is-recruit .c-badge--column {
  background-color: #E4F5D1;
  color: #15803d;
}
.is-recruit .p-topics__arrow {
  color: #0f7a3e;
}
.is-recruit .p-header__drawer-actions--single {
  grid-template-columns: 1fr;
}
.is-recruit .p-header__drawer-menu-icon {
  color: #00B153;
}
.is-recruit .p-archive-job .p-bluebg {
  background-color: transparent;
  background-image: none;
}
@media (min-width: 800px) {
  .is-recruit .p-archive-job .p-bluebg {
    background-image: none;
  }
}
.is-recruit .p-archive-job .p-page-head__breadcrumb a {
  color: #0f7a3e;
}
.is-recruit .p-archive-job .p-page-head__title {
  color: #13195F;
}
.is-recruit .p-archive-job .p-page-head__title::before {
  background: #31C563;
}
.is-recruit .p-archive-job .p-results__count-num {
  color: #0f7a3e;
}
.is-recruit .p-archive-job .p-results__group-head {
  border-bottom-color: #13195F;
}
.is-recruit .p-archive-job .p-results__group-title {
  color: #13195F;
}
.is-recruit .p-archive-job .p-pager__prev, .is-recruit .p-archive-job .p-pager__next, .is-recruit .p-archive-job .p-pager__num {
  color: #0e3a25;
}
.is-recruit .p-archive-job .p-pager__prev:hover, .is-recruit .p-archive-job .p-pager__next:hover, .is-recruit .p-archive-job .p-pager__num:hover {
  background-color: #0f7a3e;
  border-color: #0f7a3e;
  color: #fff;
}
.is-recruit .p-archive-job .p-pager__num.is-current {
  background-color: #0f7a3e;
  border-color: #0f7a3e;
  color: #fff;
  -webkit-box-shadow: 0 2px 0 #0a5a30;
          box-shadow: 0 2px 0 #0a5a30;
}
.is-recruit .p-archive-topic .p-page-head__title {
  color: #13195F;
}
.is-recruit .p-archive-topic .p-page-head__title::before {
  background: #31C563;
}
.is-recruit .p-archive-topic__filter-label {
  color: #13195F;
}
.is-recruit .p-archive-topic__filter-btn.is-active {
  background-color: #0f7a3e;
  border-color: #0f7a3e;
  color: #ffffff;
}
.is-recruit .p-archive-topic__filter-btn:hover:not(.is-active) {
  border-color: #0f7a3e;
  color: #0f7a3e;
}
.is-recruit .p-archive-topic .p-pager__prev, .is-recruit .p-archive-topic .p-pager__next, .is-recruit .p-archive-topic .p-pager__num {
  color: #0e3a25;
}
.is-recruit .p-archive-topic .p-pager__prev:hover, .is-recruit .p-archive-topic .p-pager__next:hover, .is-recruit .p-archive-topic .p-pager__num:hover {
  background-color: #0f7a3e;
  border-color: #0f7a3e;
  color: #fff;
}
.is-recruit .p-archive-topic .p-pager__num.is-current {
  background-color: #0f7a3e;
  border-color: #0f7a3e;
  color: #fff;
  -webkit-box-shadow: 0 2px 0 #0a5a30;
          box-shadow: 0 2px 0 #0a5a30;
}
.is-recruit .c-topic-card:hover {
  border-color: rgba(15, 122, 62, 0.4);
}
.is-recruit .c-topic-card__title {
  color: #13195F;
}
.is-recruit .c-topic-card__badge {
  background-color: #E4F5D1;
  color: #15803d;
}
.is-recruit .p-single-topic .p-page-head__breadcrumb a {
  color: #0f7a3e;
}
.is-recruit .p-single-topic__back {
  color: #0f7a3e;
}
.is-recruit .c-article-body a {
  color: #0f7a3e;
}
.is-recruit .c-article-body blockquote {
  border-left-color: #0f7a3e;
}
.is-recruit .p-single-job .p-page-head__breadcrumb a {
  color: #0f7a3e;
}
.is-recruit .p-single-job__card--cta {
  background-color: #e6f6ec;
  border-color: rgba(15, 122, 62, 0.25);
}
.is-recruit .p-single-job__type-badge {
  background-color: #dcfce7;
  color: #15803d;
}
.is-recruit .p-single-job__company {
  color: #0f7a3e;
}
.is-recruit .p-single-job__salary {
  color: #0f7a3e;
}
.is-recruit .p-single-job__inquire-btn {
  border-color: #00B153;
  color: #00B153;
}
.is-recruit .p-single-job__inquire-btn:hover {
  background-color: #00B153;
  border-color: #00B153;
  color: #ffffff;
}

.is-biz .p-page-head__title::before {
  background: #3A6AD4;
}

.u-hidden {
  display: none !important;
}

.u-sp-only {
  display: inline;
}
@media (min-width: 600px) {
  .u-sp-only {
    display: none;
  }
}

.u-pc-only {
  display: none;
}
@media (min-width: 600px) {
  .u-pc-only {
    display: inline;
  }
}

.u-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

.js-fade-in {
  opacity: 0;
  -webkit-transform: translateY(24px);
          transform: translateY(24px);
}
.js-fade-in.is-visible {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
  transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
  transition: opacity 0.5s ease, transform 0.5s ease;
  transition: opacity 0.5s ease, transform 0.5s ease, -webkit-transform 0.5s ease;
}
/*# sourceMappingURL=style.css.map */