@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Shippori+Mincho&display=swap");
@import url("https://fonts.cdnfonts.com/css/jsmath-cmbx10");
@import url("https://fonts.googleapis.com/css2?family=Alex+Brush&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Arimo:ital,wght@0,400..700;1,400..700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=B612:ital,wght@0,400;0,700;1,400;1,700&display=swap");
@import url("https://fonts.cdnfonts.com/css/jsmath-cmti10");
@import url("https://fonts.googleapis.com/css2?family=BIZ+UDMincho:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Antonio:wght@100..700&display=swap");
/*! destyle.css v4.0.0 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
          text-size-adjust: 100%; /* 2 */
  -Webkit-tap-highlight-color: transparent; /* 3 */
}
html * {
  line-height: 1.15; /* 1 */
  font-feature-settings: "palt" 1;
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

.entry-content > *,
.body .article {
  margin-bottom: 0 !important;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  padding: 0;
  margin: 0;
  list-style: none;
}

:is(.article ul, .article ol) {
  padding-left: 24px;
  margin-bottom: 0;
}
:is(.article ul, .article ol) li {
  margin: 0;
  list-style: initial !important;
  font-size: 14px;
  line-height: 2 !important;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  margin: 0;
  overflow: visible; /* 2 */
  clear: both;
  color: inherit;
  border-top-width: 1px;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  color: inherit;
  text-decoration: none;
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  text-align: inherit;
  text-transform: inherit; /* 2 */
  vertical-align: middle; /* 1 */
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: transparent;
  border-radius: 0;
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
  cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
  outline: auto;
}

select:disabled {
  opacity: inherit;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
}

legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-Webkit-inner-spin-button,
[type=number]::-Webkit-outer-spin-button {
  height: auto;
}

/**
 * Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-Webkit-search-decoration {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Fix font inheritance.
 */
::-Webkit-file-upload-button {
  font: inherit; /* 2 */
  -webkit-appearance: button;
     -moz-appearance: button;
          appearance: button; /* 1 */
}

/**
 * Fix appearance for Firefox
 */
[type=number] {
  -webkit-appearance: textfield;
     -moz-appearance: textfield;
          appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
  outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
  border-collapse: collapse;
  border-color: inherit; /* 1 */
}

caption {
  text-align: left;
}

td,
th {
  padding: 0;
  vertical-align: top;
}

th {
  font-weight: bold;
  text-align: left;
}

a[href*=tel] {
  pointer-events: none;
}
@media (width <= 600px) {
  a[href*=tel] {
    pointer-events: auto;
  }
}

.acc-img {
  position: absolute;
  z-index: -1;
}

button:focus-visible, button:focus {
  outline: none;
}

:root {
  /* 色の設定 */
  --color-key: #ddeff1;
  --color-accent: #a6c9df;
  --color-accent2: #ffbdb1;
  --color-accent3: #a6c9df;
  --color-text: #58757e;
  --color-text2: #69574D;
  --color-tag: #49bcbd;
  --color-green: #49bcbd;
  --gra01: linear-gradient(25deg, #ddeff1 17.36%, #c2e9fb 72.84%); /* サイドグラデーション（左） */
  --gra02: linear-gradient(90deg, #fff1eb 0%, #ace0f9 100%); /* ヘッダーグラデーション */
  --gra03: linear-gradient(25deg, #fef5da 17.36%, #c2e9fb 72.84%); /* サイドグラデーション（右） */
  --gra04: linear-gradient(90deg, #a1c4fd 0%, #c2e9fb 100%); /* ボタン */
  --gra05: linear-gradient(25deg, #DDEFF1 17.36%, #C2E9FB 72.84%); /* ボタン2 */
  --gra06: linear-gradient(177deg, rgba(255, 241, 235, 0.5) 11.9%, rgba(172, 224, 249, 0.5) 75.31%, #FFF 98.09%); /* 理由背景 */
  --gra07: linear-gradient(177deg, rgba(221, 239, 241, 0.50) 29.88%, rgba(254, 214, 227, 0.50) 62.5%, rgba(254, 214, 227, 0.35) 80.83%, rgba(254, 214, 227, 0.00) 96.45%); /**/
  --gra-arrow: linear-gradient(90deg, #fbc2eb 0%, #a6c1ee 100%); /* ナビゲーション矢印 */
  --color-border: #ddd;
  --color-border2: #a1a1a1;
  --color-cate01: #ddeff1;
  --color-cate02: #ddd;
  --color-cate03: #fee2dd;
  /* フォント設定 */
  --ff-base: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  /* --ff-base: yu-gothic-pr6n, sans-serif; */
  --ff-lato: "Lato", sans-serif;
  /* トップページ サイド　幅 */
  --aside-space: 34%;
  /* コンテンツ余白 */
  --contents-space: 160px;
}
@media (max-width: 1680px) {
  :root {
    --aside-space: 30%;
  }
}
@media (max-width: 1024px) {
  :root {
    --aside-space: 50%;
  }
}
@media (max-width: 820px) {
  :root {
    --contents-space: 80px;
  }
}

.l-aside--left, .l-aside--right {
  position: fixed;
  top: 0;
  width: var(--aside-space);
  height: 100vh;
  overflow-y: auto;
}
@media screen and (max-width: 900px) {
  .l-aside--left, .l-aside--right {
    display: none;
  }
}
.l-aside--left {
  left: 0;
}
@media (max-width: 1370px) {
  .l-aside--left {
    width: 40%;
  }
}
.l-aside--left-inner {
  width: 100%;
  max-width: 264px;
  margin-inline: auto;
}
@media screen and (max-width: 900px) {
  .l-aside--left-inner {
    margin-left: 24px;
  }
}
.l-aside--right {
  right: 0;
}
@media (max-width: 1370px) {
  .l-aside--right {
    display: none;
  }
}

.l-contents {
  width: 100%;
  max-width: 1100px;
  margin-inline: auto !important;
}
.l-contents--w380 {
  width: 100%;
  max-width: 380px;
  margin-inline: auto !important;
}
.l-contents--w520 {
  width: 100%;
  max-width: 520px;
  margin-inline: auto !important;
}
.l-contents--w600 {
  width: 100%;
  max-width: 600px;
  margin-inline: auto !important;
}
.l-contents--w680 {
  width: 100%;
  max-width: 680px;
  margin-inline: auto !important;
}
.l-contents--w720 {
  width: 100%;
  max-width: 720px;
  margin-inline: auto !important;
}
.l-contents--w830 {
  width: 100%;
  max-width: 830px;
  margin-inline: auto !important;
}
.l-contents--w930 {
  width: 100%;
  max-width: 930px;
  margin-inline: auto !important;
}
.l-contents--w950 {
  width: 100%;
  max-width: 950px;
  margin-inline: auto !important;
}
.l-contents--w1020 {
  width: 100%;
  max-width: 1020px;
  margin-inline: auto !important;
}
.l-contents--w1210 {
  width: 100%;
  max-width: 1210px;
  margin-inline: auto !important;
}
.l-contents--w1430 {
  width: 100%;
  max-width: 1430px;
  margin-inline: auto !important;
}
.l-contents__wrapper {
  display: flex;
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 1024px) {
  .l-contents__wrapper {
    flex-direction: column;
    overflow: hidden !important;
  }
}
.l-contents__wrapper:has(.l-aside.is-scroll) .l-aside--shop {
  padding-block: 0;
}

.l-main {
  position: relative;
  width: calc(100% - var(--aside-space) * 2);
  margin-inline: var(--aside-space);
  overflow: hidden;
}
@media (max-width: 1370px) {
  .l-main {
    width: 60%;
    margin-left: 40%;
  }
}
@media screen and (max-width: 900px) {
  .l-main {
    width: 100%;
    margin-inline: 0;
  }
  .l-main.is-lower {
    padding-top: 64px;
  }
}
.l-main__heading {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 6;
  width: 100%;
  min-height: 40px;
  padding: 16px 24px;
  font-size: 15px;
  text-align: center;
  background: var(--gra02);
}
@media screen and (max-width: 900px) {
  .l-main__heading {
    display: none;
  }
}
.is-lower .l-main__heading {
  position: static;
}

.c-breadcrumbs__wrapper {
  width: 100%;
  padding: 16px 32px;
  background-color: #fff;
}
.c-breadcrumbs__wrapper .c-breadcrumbs__item {
  color: var(--color-key);
  opacity: 0.5;
}
.c-breadcrumbs__wrapper .c-breadcrumbs__item:nth-last-of-type(1) {
  pointer-events: none;
  opacity: 1;
}
.c-breadcrumbs__list {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-bottom: 8px;
}
.c-breadcrumbs__item {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 14px;
  font-weight: 500;
  color: #fff;
}
.c-breadcrumbs__item::after {
  content: ">";
}
.c-breadcrumbs__item:last-child::after {
  display: none;
}
.c-breadcrumbs__item svg path {
  fill: #fff;
}
.c-breadcrumbs__wrapper .c-breadcrumbs__item svg path {
  fill: var(--color-key-thin3);
  opacity: 0.5;
}

.c-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 46px;
  font-size: clamp(15px, 2.5vw, 16px);
  font-weight: 700;
  color: #fff;
  padding: 8px 24px;
  background-color: var(--color-accent3);
  border-radius: 100px;
}
.c-btn .arrow-right {
  position: absolute;
  top: 50%;
  right: 18px;
  transform: translateY(-50%) rotate(45deg);
}
.c-btn img {
  width: 10px;
  height: 10px;
}
@media (hover: hover) {
  .c-btn:hover {
    color: #fff;
    opacity: 0.8;
  }
}
.c-btn.is-reserve {
  justify-content: center;
  max-width: 208px;
  height: 50px;
  margin-inline: auto;
}
@media screen and (max-width: 600px) {
  .c-btn.is-reserve {
    max-width: initial;
  }
}
.c-btn.is-reserve img {
  margin-right: 16px;
}
.c-btn.is-reserve.is-line {
  background-color: #06c755;
}
.c-btn.is-reserve.is-line img {
  width: 28px;
  height: 26px;
}
.c-btn.is-reserve.is-tel {
  background-color: var(--color-accent3);
}
.c-btn.is-reserve.is-tel img {
  width: 24px;
  height: 24px;
}
@media screen and (max-width: 600px) {
  .c-btn.is-reserve.is-tel.is-pc {
    display: none;
  }
}
.c-btn.is-reserve.is-tel.is-sp {
  display: none;
}
@media screen and (max-width: 600px) {
  .c-btn.is-reserve.is-tel.is-sp {
    display: flex;
  }
}
.c-btn.is-reserve.is-instagram {
  background-color: var(--color-accent2);
}
.c-btn.is-reserve.is-instagram img {
  width: 25px;
  height: 25px;
}
.c-btn.is-gra {
  max-width: 360px;
  height: 60px;
  margin: 8px auto 0 auto;
  background: var(--gra04);
}
@media screen and (max-width: 600px) {
  .c-btn.is-gra {
    width: calc(100% - 48px);
  }
  .p-job-item__modal .c-btn.is-gra {
    width: 100%;
  }
}
.c-btn.is-gra + .c-btn.is-gra {
  margin-top: 24px;
}
.c-btn.is-gra img:not([src*=arrow-right]) {
  position: absolute;
  left: 16px;
  width: 20px;
  height: 20px;
  margin: 0;
}
.c-btn.is-multi {
  position: relative;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  max-width: 368px;
  min-height: 86px;
  padding: 15px 60px;
  margin-inline: auto;
  font-size: clamp(18px, 3vw, 22px);
  font-weight: 700;
  text-align: center;
  color: var(--color-text2);
  background: var(--gra05);
  box-shadow: 4px 4px 3px 0 rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 600px) {
  .c-btn.is-multi {
    max-width: 320px;
  }
}
.c-btn.is-multi::before {
  position: absolute;
  top: -26px;
  left: -32px;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  font-size: 16px;
  font-weight: 700;
  content: "無料";
  color: #fff;
  background-color: var(--color-accent2);
  border-radius: 100px;
}
.c-btn.is-multi.is-arrow {
  margin-bottom: 32px;
  font-size: clamp(19px, 3.167vw, 18px);
}
@media screen and (max-width: 600px) {
  .c-btn.is-multi.is-arrow {
    padding-inline: 32px 24px;
  }
}
.c-btn.is-multi.is-arrow > span {
  font-weight: 500;
}
.c-btn.is-multi.is-arrow::after {
  position: absolute;
  top: 50%;
  right: -21px;
  display: block;
  width: 51px;
  height: 8px;
  content: "";
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MSIgaGVpZ2h0PSIxMCIgZmlsbD0ibm9uZSI+CiAgPHBhdGggc3Ryb2tlPSIjNjk1NzREIiBkPSJNMCA5aDUxbC04LjMxNS04Ii8+Cjwvc3ZnPg==") no-repeat center center/contain;
  transform: translateY(-50%);
}
.c-btn.is-more {
  position: relative;
  z-index: 1;
  justify-content: center;
  max-width: 344px;
  height: 60px;
  margin-inline: auto;
  overflow: hidden;
  color: var(--color-accent3);
  background-color: #fff;
  border: 1px solid var(--color-accent3);
}
.c-btn.is-more::before, .c-btn.is-more::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1; /* ボタンのコンテンツより奥に配置 */
  width: 100%;
  height: 100%;
  content: "";
  opacity: 0; /* 最初は非表示 */
}
.c-btn.is-more::before {
  background: linear-gradient(90deg, #FFF 0%, #E3EEFF 99%, #E3EEFF 100%);
  transition: opacity 0.7s ease-out;
}
.c-btn.is-more::after {
  background: linear-gradient(90deg, #f3e7e9 0%, #e3eeff 99%, #e3eeff 100%);
  transition: opacity 1s ease-out;
}
.c-btn.is-more:hover::before, .c-btn.is-more:hover::after {
  opacity: 1;
}
.c-btn.is-more .arrow-right {
  position: absolute;
  top: 50%;
  right: 24px;
  border-top-color: var(--color-accent3);
  border-right-color: var(--color-accent3);
  transform: translateY(-50%) rotate(45deg);
}
.c-btn.is-search {
  position: relative;
  justify-content: center;
  gap: 8px;
  max-width: 250px;
  height: 52px;
  margin-inline: auto;
  border-radius: 8px;
  box-shadow: 4px 4px 3px 0 rgba(0, 0, 0, 0.1);
}
.c-btn.is-search .arrow-right {
  position: absolute;
  top: 50%;
  right: 21px;
  transform: rotate(45deg) translateY(-50%);
}
.c-btn.is-search svg {
  position: absolute;
  top: 50%;
  left: 21px;
  transform: translateY(-50%);
}
.c-btn.is-search-list {
  width: calc((100% - 16px) / 2);
  color: var(--color-text2);
  background-color: #fff;
  box-shadow: 4px 4px 3px 0 rgba(0, 0, 0, 0.1);
}
.c-btn.is-search-list .arrow-right {
  border-top-color: var(--color-green);
  border-right-color: var(--color-green);
}
.c-btn.is-icon {
  justify-content: center;
  gap: 16px;
  width: calc((100% - 32px) / 2);
  height: 50px;
  font-size: 16px;
  font-weight: 700;
}
@media screen and (max-width: 600px) {
  .c-btn.is-icon {
    width: calc((100% - 16px) / 2);
  }
}
.c-btn.is-icon img {
  width: 18px;
  height: 18px;
}
.c-btn__list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 16px;
}
.c-btn__list:has(.is-icon) {
  gap: 32px;
  max-width: 490px;
  margin-inline: auto;
}
@media screen and (max-width: 600px) {
  .c-btn__list:has(.is-icon) {
    gap: 16px;
    padding-inline: 24px;
  }
}
.c-btn.is-page-top {
  position: relative;
  justify-content: center;
  gap: 8px;
  max-width: 250px;
  height: 52px;
  margin-inline: auto;
  border-radius: 8px;
  box-shadow: 4px 4px 3px 0 rgba(0, 0, 0, 0.1);
}
.c-btn.is-page-top .arrow-right {
  position: absolute;
  top: 50%;
  right: 21px;
  transform: rotate(-45deg) translateY(-50%);
}
.c-btn--login {
  position: absolute;
  top: 50px;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 80px;
  height: 65px;
  padding-right: 8px;
  font-size: 11px;
  font-weight: 500;
  background-color: #fff;
  border-radius: 0 100px 100px 0;
}
.l-main .c-btn--login {
  display: none;
}
@media (max-width: 1370px) {
  .l-main .c-btn--login {
    position: fixed;
    top: 64px;
    right: 0;
    left: initial;
    z-index: 1;
    display: flex;
    align-items: flex-end;
    background-color: var(--color-key);
    border-radius: 100px 0 0 100px;
  }
}
@media screen and (max-width: 900px) {
  .l-main .c-btn--login {
    display: none;
  }
}
.c-btn--login:has(.is-hover) {
  padding-top: 40px;
}
.c-btn--login:hover .c-btn--login-long {
  width: 40px;
}
.c-btn--login:hover .c-btn--login-middle {
  width: 20px;
}
.c-btn--login:hover .c-btn--login-short {
  width: 40px;
}
.c-btn--login:hover img:not(.is-hover) {
  height: 0;
  opacity: 0;
}
.c-btn--login:hover img.is-hover {
  height: auto;
  opacity: 1;
}
.c-btn--login img {
  position: absolute;
  top: 40%;
  left: 44%;
  width: 24px;
  aspect-ratio: 1/1;
  transform: translate(-50%, -50%);
  transition: opacity 300ms ease-in-out;
}
.c-btn--login img.is-hover {
  height: 0;
  opacity: 0;
}
.c-btn--login-box {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  gap: 6px;
  width: 40px;
  margin-bottom: 4px;
}
.c-btn--login-box > span {
  height: 2px;
  background-color: var(--color-accent);
  transition: width 300ms ease-in-out;
}
.c-btn--login-long {
  width: 35px;
}
.c-btn--login-middle {
  width: 25px;
}
.c-btn--login-short {
  width: 20px;
}
.c-btn--favorite {
  position: absolute;
  top: 131px;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 80px;
  height: 65px;
  padding-right: 8px;
  font-size: 11px;
  font-weight: 500;
  background-color: #fff;
  border-radius: 0 100px 100px 0;
}
.c-btn--favorite:has(.is-hover) {
  padding-top: 40px;
}
.c-btn--favorite:hover .c-btn--login-long {
  width: 40px;
}
.c-btn--favorite:hover .c-btn--login-middle {
  width: 20px;
}
.c-btn--favorite:hover .c-btn--login-short {
  width: 40px;
}
.c-btn--favorite:hover img:not(.is-hover) {
  height: 0;
  opacity: 0;
}
.c-btn--favorite:hover img.is-hover {
  height: auto;
  opacity: 1;
}
.c-btn--favorite img {
  position: absolute;
  top: 40%;
  left: 44%;
  width: 24px;
  aspect-ratio: 1/1;
  transform: translate(-50%, -50%);
  transition: opacity 300ms ease-in-out;
}
.c-btn--favorite img.is-hover {
  height: 0;
  opacity: 0;
}
.c-btn.is-square {
  position: relative;
  justify-content: center;
  max-width: 250px;
  height: 52px;
  margin-inline: auto;
  border-radius: 8px;
  box-shadow: 4px 4px 3px 0 rgba(0, 0, 0, 0.1);
}
.c-btn.is-square.p-step-content__prev-btn, .c-btn.is-square.p-step-content__next-btn {
  max-width: 168px;
  margin: 0;
}
.c-btn.is-square.p-step-content__prev-btn {
  color: var(--color-accent);
  background-color: #fff;
  border: 1px solid var(--color-accent);
}
.c-btn.is-recommend {
  justify-content: center;
  max-width: 300px;
  height: 60px;
  margin-inline: auto;
  font-size: 16px;
  font-weight: 700;
  color: var(--color-accent);
  background-color: #fff;
  border: 1px solid var(--color-accent);
  border-radius: 100px;
}
.c-btn.is-mypage {
  width: 188px;
  height: 32px;
  padding-left: 40px;
  margin-bottom: 40px;
  font-size: 16px;
  font-weight: 500;
  background-color: var(--color-accent2);
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSI5IiBmaWxsPSJub25lIj4KICA8cGF0aCBmaWxsPSIjZmZmIiBkPSJNNC45MjMtLjAwMiA0LjIxLjcxMmwzLjA2NSAzLjA2NUguNDN2MS4wMDdoNi44NDVMNC4yMSA3Ljg0OWwuNzEzLjcxNEw5LjIwNiA0LjI4IDQuOTIzLS4wMDJaIi8+Cjwvc3ZnPg==");
  background-repeat: no-repeat;
  background-position: center left 16px;
  background-size: 12px 12px;
}
.c-btn.is-search-item {
  justify-content: flex-start;
  width: calc((100% - 10px) / 2);
  color: var(--color-text2);
  background-color: #fff;
  box-shadow: 4px 4px 3px 0 rgba(0, 0, 0, 0.1);
}

.arrow-right {
  flex-shrink: 0;
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}
.is-square .arrow-right {
  position: absolute;
  top: 41%;
  right: 16px;
  transform: translateX(-50%) rotate(45deg);
}
.is-search-item .arrow-right {
  border-top-color: var(--color-green);
  border-right-color: var(--color-green);
}

.arrow-left {
  flex-shrink: 0;
  display: block;
  width: 8px;
  height: 8px;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  transform: rotate(45deg);
}
.is-square .arrow-left {
  position: absolute;
  top: 41%;
  left: 16px;
  transform: translateX(-50%) rotate(45deg);
}
.is-search-item .arrow-left {
  border-bottom-color: var(--color-green);
  border-left-color: var(--color-green);
}
.p-step-content__prev-btn .arrow-left {
  border-bottom-color: var(--color-accent);
  border-left-color: var(--color-accent);
}

.arrow-down {
  flex-shrink: 0;
  display: block;
  width: 8px;
  height: 8px;
  border-top: 2px solid var(--color-green);
  border-right: 2px solid var(--color-green);
  transform: rotate(135deg);
}

.c-company-info__box {
  display: flex;
  align-items: center;
  gap: 40px;
  margin-bottom: 96px;
}
.c-company-info-top {
  padding-bottom: 16px;
  margin-bottom: 16px;
  border-bottom: 1px solid var(--color-border);
}
.c-company-info-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}
.c-company-info-bottom > div {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.c-company-name {
  font-size: clamp(18px, 3vw, 22px);
  font-weight: 700;
  line-height: 1.5;
}
.c-company__logo {
  flex-shrink: 0;
  width: 220px;
  height: 220px;
  border-radius: 200px;
}
.c-company__logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-contact {
  padding: 80px 136px;
  background-color: var(--color-key-thin2);
}
.c-contact-tel__box {
  display: flex;
  align-items: baseline;
  justify-content: center;
  margin-bottom: 16px;
  font-family: Inter;
  font-size: clamp(32px, 5.333vw, 50px);
  font-weight: 700;
  color: var(--color-key);
}
.c-contact-tel__box span {
  font-size: clamp(20px, 3.333vw, 25px);
}

.c-copyright {
  position: absolute;
  left: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 40px;
  background-color: #fff;
}
.c-copyright small {
  font-size: 12px;
  color: #fff;
}

.c-detail-contents {
  padding-block: 120px;
  background-color: #fff;
  border-radius: 20px;
}
.c-detail-contents__wrapper {
  margin-top: -136px;
}
.c-detail__image {
  width: 100%;
  aspect-ratio: 11/4;
  margin-bottom: 96px;
  -o-object-fit: cover;
     object-fit: cover;
}
.c-detail__ttl {
  font-weight: 500;
  line-height: 1.5;
  color: #000;
}
.c-detail__ttl.is-fs--32 {
  font-size: clamp(26px, 4.333vw, 32px);
}
.c-detail__ttl.is-fs--40 {
  font-size: clamp(32px, 5.333vw, 40px);
  font-weight: 700;
}
.c-detail__read {
  font-weight: 400;
  line-height: 1.66;
}
.c-detail__read.is-fs--18 {
  font-size: clamp(16px, 2.667vw, 18px);
}
.c-detail__read.is-fs--22 {
  font-size: clamp(18px, 3vw, 22px);
}
.c-detail__heading {
  font-size: clamp(18px, 3vw, 24px);
  font-weight: 700;
  line-height: 1.3;
}
.c-detail__heading--sub {
  font-size: clamp(14px, 2.333vw, 16px);
  font-weight: 700;
  line-height: 1.2;
  color: var(--color-key);
}
.c-detail__heading-box {
  position: relative;
  display: flex;
  align-items: center;
  gap: 32px;
  width: 100%;
  padding-bottom: 24px;
  margin-bottom: 72px;
  border-bottom: 1px solid var(--color-border);
}
.c-detail__heading-box::before {
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 75px;
  height: 3px;
  content: "";
  background-color: var(--color-key);
}
.c-detail__heading.is-type2 {
  font-size: clamp(20px, 3.333vw, 24px);
  font-weight: 500;
  line-height: 1.25;
  text-align: center;
}
.c-detail__heading.is-type2::after {
  display: block;
  width: 96px;
  height: 4px;
  margin: 21px auto 56px auto;
  content: "";
  background-color: var(--color-key);
}

main:has(.c-detail-contents__wrapper) {
  padding-bottom: 112px;
  overflow: hidden;
  background-color: var(--color-gray-thin);
}

.c-form__wrap {
  width: 100%;
  max-width: calc(100% - 80px);
  margin-inline: auto;
}
.c-form__wrap .w30 {
  position: relative;
  width: 30%;
}
.c-form__wrap .w50 {
  position: relative;
  width: 50%;
}
.c-form__wrap .w100 {
  position: relative;
  width: 100%;
}
.c-form__wrap .is-row .w50 {
  width: calc((100% - 8px) / 2);
}
.c-form__wrap .is-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 8px;
}
.c-form__wrap .is-grid .grid-item2 {
  display: flex;
  align-items: center;
  gap: 8px;
}
.c-form__wrap .is-grid .grid-item3 {
  grid-column-start: 2;
  grid-row-start: 2;
  display: flex;
  align-items: center;
  gap: 8px;
}
.c-form__wrap .is-grid .grid-item4 {
  grid-column-start: 1;
  grid-row-start: 2;
  display: flex;
  align-items: center;
  gap: 8px;
}
.c-form-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 8px;
  width: 100%;
  margin-bottom: 32px;
  font-size: clamp(14px, 2.333vw, 16px);
  font-weight: 500;
  color: var(--color-text2);
}
.c-form-item.is-radius100 > * {
  border-radius: 100px;
}
@media screen and (max-width: 900px) {
  .c-form-item {
    width: calc(100% - 48px);
    margin-inline: auto;
  }
}
@media screen and (max-width: 600px) {
  .c-form-item {
    width: 100%;
  }
}
.c-form-item.is-keyword {
  flex-direction: row;
  gap: 0;
  width: 100%;
}
.c-form-item.is-keyword .c-form__input {
  width: 100%;
  height: 50px;
  border-radius: 5px 0 0 5px;
}
.c-form-item:has(select) {
  position: relative;
}
.c-form-item:has(select)::after {
  position: absolute;
  top: 50%;
  right: 16px;
  flex-shrink: 0;
  display: block;
  width: 8px;
  height: 8px;
  content: "";
  border-top: 2px solid #49bcbd;
  border-right: 2px solid #49bcbd;
  transform: translateY(-50%) rotate(135deg);
}
.c-form-item:has(select) > span:has(.w30) {
  position: relative;
  width: 100%;
}
@media screen and (max-width: 600px) {
  .c-form-item:has(select) > span:has(.w30) {
    width: 25%;
  }
}
.c-form-item:has(select) > span:has(.w30)::after {
  position: absolute;
  top: 50%;
  right: 16px;
  flex-shrink: 0;
  display: block;
  width: 8px;
  height: 8px;
  content: "";
  border-top: 2px solid #49bcbd;
  border-right: 2px solid #49bcbd;
  transform: translateY(-50%) rotate(135deg);
}
.c-form-item:has(select) > span.w100:has(select)::after {
  position: absolute;
  top: 50%;
  right: 16px;
  flex-shrink: 0;
  display: block;
  width: 8px;
  height: 8px;
  content: "";
  border-top: 2px solid #49bcbd;
  border-right: 2px solid #49bcbd;
  transform: translateY(-50%) rotate(135deg);
}
.c-form-item:has(select) .c-form__input {
  width: 100%;
  padding-inline: 16px 40px;
  text-align: left;
}
.c-form-item:has(.c-form-item--birthday)::after {
  display: none;
}
.c-form-item.is-row {
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 16px;
}
@media screen and (max-width: 600px) {
  .c-form-item.is-row {
    flex-wrap: wrap;
  }
}
.c-form-item__ttl {
  min-width: 110px;
  font-size: 15px;
  text-align: left;
}
@media screen and (max-width: 600px) {
  .c-form-item__ttl {
    min-width: 100%;
  }
}
.c-form-item--required {
  color: var(--color-accent);
}
.c-form-itemw40 {
  width: 40%;
}
.c-form-item--birthday {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  width: 100%;
}
.c-form-item--birthday .w50 {
  display: flex;
  align-items: baseline;
  gap: 4px;
}
.c-form__input {
  padding: 16px;
  color: var(--color-text);
  background-color: #fff;
  border: 1px solid var(--color-border);
  border-radius: 5px;
  transition: all 500ms ease-in;
}
.c-form__input::-moz-placeholder {
  color: #e1dddb;
}
.c-form__input::placeholder {
  color: #e1dddb;
}
.c-form__input:focus-visible {
  color: rgba(0, 0, 0, 0.68);
  outline: 1px solid #000;
}
.c-form__input:focus-visible::-moz-placeholder {
  color: var(--color-gray2);
}
.c-form__input:focus-visible::placeholder {
  color: var(--color-gray2);
}
.c-form__input.is-onetime {
  width: 16.6666666667%;
  aspect-ratio: 1/1;
  padding: 8px;
  font-family: var(--ff-lato);
  font-size: 25px;
  font-weight: 400;
  text-align: center;
  color: var(--color-text2);
  border-radius: 0;
}
.c-form__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 50px;
  height: 50px;
  background-color: var(--color-accent3);
  border: 1px solid var(--color-border);
  border-left: 0;
  border-radius: 0 8px 8px 0;
}
.c-form__btn svg {
  width: 24px;
  height: 24px;
}
.c-form__label {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.c-form__label:has(:disabled) {
  cursor: default;
}
.c-form__pw-wrap {
  position: relative;
  width: 100%;
}
.c-form__pw-wrap:has(input[type=text]) .is-pw-off {
  display: block;
}
.c-form__pw-wrap:has(input[type=text]) .is-pw-on {
  display: none;
}
.c-form__pw-wrap:has(input[type=password]) .is-pw-off {
  display: none;
}
.c-form__pw-wrap:has(input[type=password]) .is-pw-on {
  display: block;
}
.c-form__pw-toggle {
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
}
.c-form__pw-toggle input {
  display: none;
}
.c-form__pw-link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-block: 40px 72px;
  font-size: 16px;
  font-weight: 500;
  text-align: center;
  color: var(--color-text2);
}
.c-form__pw-link .arrow-right {
  border-top-color: var(--color-green);
  border-right-color: var(--color-green);
}
.c-form--memory {
  margin-bottom: 24px;
}
.c-form-agreement {
  margin-bottom: 16px;
  font-size: 13px;
  text-align: center;
}
.c-form-agreement a {
  color: #1a6eb8;
}
.c-form-flex__box {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}
.c-form__wrapper {
  margin: 32px auto 48px auto;
}
.c-form-radioItem {
  display: flex;
  align-items: center;
  -moz-column-gap: 4px;
       column-gap: 4px;
  width: -moz-fit-content;
  width: fit-content;
  padding-right: 40px;
  line-height: 1;
  cursor: pointer;
}
.c-form-radioButton {
  position: relative;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  border: 1px solid var(--color-border);
  border-radius: 100px;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.c-form-radioButton:checked::after {
  position: absolute;
  inset: 0;
  width: 12px;
  height: 12px;
  margin: auto;
  content: "";
  border-radius: 100px;
  background-color: var(--color-accent);
}

input[type=submit] {
  max-width: 320px;
  text-align: center;
  border-radius: 8px;
}

p:has(input[type=submit]) {
  margin-bottom: 0;
  text-align: center;
}

select {
  position: relative;
  color: var(--color-text2);
}

.checkbox-container {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}

.cool-checkbox-input {
  display: none;
}
.cool-checkbox-custom {
  position: relative;
  display: inline-block;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  background-color: #fff;
  border: 1px solid var(--color-border);
  border-radius: 0;
  transition: all 0.2s ease-in-out;
}
.cool-checkbox-label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  font-size: 16px;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: pointer;
}
.cool-checkbox-label:hover .cool-checkbox-custom {
  border-color: #2980b9;
}
.cool-checkbox-input:checked + .cool-checkbox-label .cool-checkbox-custom {
  background-color: var(--color-accent);
  border-color: var(--color-accent);
}
.cool-checkbox-input:checked + .cool-checkbox-label .cool-checkbox-custom::after {
  position: absolute;
  left: 6px;
  top: 2px;
  width: 6px;
  height: 12px;
  content: "";
  border: solid #fff;
  border-width: 0 3px 3px 0;
  transform: rotate(45deg);
}

#employment,
#unemployed {
  display: none;
}

.c-hamburger {
  position: absolute;
  z-index: 100;
  top: 64px;
  right: -100%;
  width: 100%;
  height: calc(100vh - 64px);
  padding: 20px 24px 48px 24px;
  overflow-y: auto;
  background-color: #fff;
  opacity: 0;
  transition: all 500ms ease-in-out;
}
.c-hamburger-toggle {
  display: none;
}
.c-hamburger-btn {
  display: none;
}
@media screen and (max-width: 900px) {
  .c-hamburger-btn {
    position: relative;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
  }
  .c-hamburger-btn span {
    position: relative;
    width: 24px;
    height: 1.5px;
    background-color: var(--color-accent);
  }
  .c-hamburger-btn span::before, .c-hamburger-btn span::after {
    position: absolute;
    display: block;
    height: 1.5px;
    content: "";
    background-color: var(--color-accent);
    transition: all 300ms ease-in;
  }
  .c-hamburger-btn span::before {
    top: -8px;
    width: 32px;
  }
  .c-hamburger-btn span::after {
    top: 8px;
    width: 20px;
  }
  .c-hamburger-btn div {
    position: absolute;
    bottom: -10px;
    font-size: 9px;
    white-space: nowrap;
  }
}
.c-hamburger-btn--close {
  position: absolute;
  top: 12px;
  right: 20px;
  width: 16px;
  height: 16px;
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0ibm9uZSI+CiAgPHJlY3Qgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSIjRDlEOUQ5IiByeD0iOCIvPgogIDxwYXRoIHN0cm9rZT0iIzZGNkY2RiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Utd2lkdGg9IjEuMTQzIiBkPSJtNC42NjcgNC42NjcgNi42NjYgNi42NjZtMC02LjY2Ni02LjY2NyA2LjY2NiIvPgo8L3N2Zz4=") no-repeat center center/contain;
}
.c-hamburger__nav {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  width: 80%;
  margin-top: 64px;
}
.c-hamburger__nav a {
  color: #fff;
}
.c-hamburger__nav-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 56px;
  height: 100%;
  padding-top: 40px;
  border-right: 1px solid var(--color_border);
}
.c-hamburger .l-aside__nav {
  padding: 0;
}
.c-hamburger-search__box {
  width: calc(100% - 56px);
  padding: 40px 20px 0 20px;
}
.c-hamburger__heading {
  margin-bottom: 24px;
  font-size: 18px;
  font-weight: 700;
}
.c-hamburger__heading--sub {
  font-size: 16px;
  color: var(--color_gray);
}
.c-hamburger__overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0);
  pointer-events: none;
  transition: all 500ms ease-in-out;
}
.c-hamburger .c-btn.is-hamburger {
  max-width: 220px;
  height: 45px;
  margin-bottom: 48px;
  border-radius: 10px;
}
.c-hamburger .p-aside__nav {
  padding-left: 32px;
}
.c-hamburger .p-reserve__box {
  width: 100vw;
  margin: 64px -24px 0 -24px;
  background-color: var(--color-key);
  border-radius: 0;
}
.c-hamburger .p-reserve__box::before {
  display: none;
}
.c-hamburger .p-reserve__heading {
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-hamburger .c-sns__list {
  justify-content: center;
  margin-block: 48px;
}
.c-hamburger--inner {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}
.c-hamburger--inner > div {
  width: calc((100% - 40px) / 2);
}

#c-hamburger-toggle-my + .c-hamburger {
  position: fixed;
  top: -100%;
  right: var(--aside-space);
  width: calc(100% - var(--aside-space) * 2);
}

.c-hamburger-toggle:checked ~ .c-hamburger {
  top: 64px;
  right: 0;
  opacity: 1;
}

.c-hamburger-toggle-my:checked ~ .c-hamburger {
  top: 0 !important;
  right: var(--aside-space) !important;
  width: calc(100% - var(--aside-space) * 2) !important;
  height: 100vh;
  opacity: 1;
}
@media (max-width: 1370px) {
  .c-hamburger-toggle-my:checked ~ .c-hamburger {
    width: 100% !important;
    right: 0 !important;
  }
}

.c-hamburger-toggle:checked ~ .c-hamburger {
  top: 64px;
  right: 0;
  opacity: 1;
}

.c-hamburger-toggle:checked ~ .c-hamburger-btn span {
  top: 2px;
  transform: rotate(45deg);
}
.c-hamburger-toggle:checked ~ .c-hamburger-btn span::before {
  top: 0;
  width: 24px;
  transform: rotate(90deg);
}
.c-hamburger-toggle:checked ~ .c-hamburger-btn span::after {
  opacity: 0;
}

body:has(.is-open) .c-hamburger__overlay {
  background-color: rgba(0, 0, 0, 0.5);
  pointer-events: auto;
}

body:has(.c-hamburger-toggle:checked) {
  overflow: hidden;
}
body:has(.c-hamburger-toggle:checked) .c-hamburger__overlay {
  pointer-events: auto;
  z-index: 0;
}

body:has(.c-hamburger-toggle-my:checked) {
  overflow: hidden;
}

.js-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  z-index: 1000;
  display: none;
}

#my-page-modal {
  position: fixed;
  top: 50%;
  left: 50%;
  z-index: 1001;
  display: none;
  width: 90%;
  max-width: 800px;
  padding: 30px;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
  transform: translate(-50%, -50%);
}
#my-page-modal .c-hamburger {
  position: static;
  height: auto;
  padding: 0;
  opacity: 1;
}

@supports (-webkit-overflow-scrolling: touch) and (color: #000000) {
  .c-hamburger {
    padding-bottom: 144px;
  }
}
.c-heading--main {
  margin-bottom: 10px;
  font-size: clamp(22px, 3.667vw, 26px);
  font-weight: 700;
  line-height: 1.26;
  color: var(--color_main);
}
.c-heading-shop-name {
  margin-bottom: 8px;
  font-size: clamp(17px, 2.833vw, 22px);
  font-weight: 600;
}
@media screen and (max-width: 600px) {
  .c-heading-shop-name {
    margin-bottom: 5px;
    font-weight: 700;
  }
}
.c-heading-decoration {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 28px;
  font-size: clamp(20px, 3.333vw, 22px);
  font-weight: 600;
}
.c-heading-decoration::before {
  display: block;
  width: 8.35px;
  height: 22px;
  content: "";
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%229%22%20height%3D%2223%22%20fill%3D%22none%22%3E%3Cg%20fill%3D%22%2383D19E%22%20clip-path%3D%22url(%23a)%22%3E%3Cpath%20d%3D%22M6.82%203.56a1.53%201.53%200%201%200%200-3.06%201.53%201.53%200%200%200%200%203.06ZM6.82%208.298a1.53%201.53%200%201%200%200-3.06%201.53%201.53%200%200%200%200%203.06ZM6.82%2013.025a1.53%201.53%200%201%200%200-3.061%201.53%201.53%200%200%200%200%203.06ZM6.82%2017.762a1.53%201.53%200%201%200%200-3.06%201.53%201.53%200%200%200%200%203.06ZM6.82%2022.489a1.53%201.53%200%201%200%200-3.061%201.53%201.53%200%200%200%200%203.06ZM1.53%203.56a1.53%201.53%200%201%200%200-3.06%201.53%201.53%200%200%200%200%203.06ZM1.53%208.298a1.53%201.53%200%201%200%200-3.06%201.53%201.53%200%200%200%200%203.06ZM1.53%2013.025a1.53%201.53%200%201%200%200-3.061%201.53%201.53%200%200%200%200%203.06ZM1.53%2017.762a1.53%201.53%200%201%200%200-3.06%201.53%201.53%200%200%200%200%203.06ZM1.53%2022.489a1.53%201.53%200%201%200%200-3.061%201.53%201.53%200%200%200%200%203.06Z%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CclipPath%20id%3D%22a%22%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M0%20.5h8.35v22H0z%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E") no-repeat center center/contain;
}
@media screen and (max-width: 600px) {
  .c-heading-decoration {
    font-weight: 700;
  }
}
.c-heading-check-icon {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
  font-size: clamp(16px, 2.667vw, 19px);
  font-weight: 700;
}
.c-heading-check-icon::before {
  display: block;
  width: 22px;
  height: 19.5px;
  content: "";
  background: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2222%22%20height%3D%2220%22%20fill%3D%22none%22%3E%3Cpath%20stroke%3D%22%2383D19E%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%223%22%20d%3D%22M14.97%202.535H2.74c-.68%200-1.24.55-1.24%201.24v13.28c0%20.68.55%201.24%201.24%201.24h13.28c.68%200%201.24-.55%201.24-1.24v-6.12%22%2F%3E%3Cpath%20stroke%3D%22%2383D19E%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%223%22%20d%3D%22m4.65%209.875%205.57%203.1%2010.27-11.26%22%2F%3E%3C%2Fsvg%3E") no-repeat center center/contain;
}
.c-heading-fs--14_15-bold {
  margin-bottom: 5px;
  font-size: clamp(14px, 2.333vw, 15px);
  font-weight: 700;
}
.c-heading-fs--17-bold {
  margin-bottom: 10px;
  font-size: 17px;
  font-weight: 700;
}
.c-heading-fs--17_19-bold {
  margin-bottom: 5px;
  font-size: clamp(17px, 2.833vw, 19px);
  font-weight: 600;
  line-height: 1.4;
}
@media screen and (max-width: 600px) {
  .c-heading-fs--17_19-bold {
    font-weight: 700;
  }
}

.c-icon__list {
  display: flex;
  align-items: center;
  gap: 16px;
  color: var(--color-key);
}
.p-company .c-icon__list {
  color: var(--color-txt);
}
.c-icon__list + .c-icon__list {
  margin-top: 8px;
}
.p-company .c-icon__list dt span[class*=icon-]::before {
  color: var(--color-text);
}
.c-icon__list dt .icon-calendar::before {
  color: var(--color-key);
}
.c-icon__list dt svg {
  width: 13px;
  height: 19px;
}
.c-icon__list dd {
  margin-bottom: 0;
  font-size: clamp(15px, 2.5vw, 16px);
  font-weight: 400;
}
.c-detail-contents .c-icon__list dd {
  font-size: clamp(17px, 2.833vw, 20px);
}
.c-icon__list + .c-tag__list {
  margin-top: 21px;
}
.c-icon__list.is-color-accent span[class*=icon-]::before {
  color: var(--color-accent);
}
.c-icon__list.is-color-accent dd {
  color: var(--color-accent);
}

.c-info-table {
  width: 100%;
}
.c-info-table td {
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
}
.c-info-table a:not(.c-btn) {
  text-decoration: underline;
}
.c-info-table.is-type1 tr {
  display: flex;
  align-items: center;
  border-bottom: 1px solid var(--color-border);
}
.c-info-table.is-type1 th,
.c-info-table.is-type1 td {
  display: block;
  padding-block: 24px;
}
.c-info-table.is-type1 th {
  min-width: 280px;
  padding-inline: 48px;
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 700;
}
.c-info-table.is-type2 tr {
  display: flex;
  align-items: center;
  gap: 32px;
  border-top: 1px dotted var(--color-border);
}
.c-info-table.is-type2 th,
.c-info-table.is-type2 td {
  display: block;
  padding-block: 24px;
}
.c-info-table.is-type2 th {
  min-width: 128px;
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 700;
  color: var(--color-accent);
}
.c-info-table.is-type3 {
  border-top: 1px solid var(--color-border);
}
.c-info-table.is-type3 tr {
  display: flex;
  border-bottom: 1px solid var(--color-border);
}
.c-info-table.is-type3 th,
.c-info-table.is-type3 td {
  padding: 72px 56px;
}
.c-info-table.is-type3 th {
  min-width: 256px;
  font-size: clamp(18px, 3vw, 20px);
  font-weight: 500;
  white-space: nowrap;
  background-color: var(--color-gray-thin);
}
.c-info-table.is-type3 td {
  width: 100%;
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 400;
  line-height: 1.6;
}
.c-info-table.is-type4 tr {
  display: flex;
  border-bottom: 1px solid var(--color-border);
}
.c-info-table.is-type4 th,
.c-info-table.is-type4 td {
  padding: 32px 40px;
}
.c-info-table.is-type4 th {
  min-width: 224px;
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 500;
  white-space: nowrap;
  background-color: var(--color-gray-thin);
}
.c-info-table.is-type4 td {
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 400;
  line-height: 1.6;
}

.c-list li {
  font-size: clamp(18px, 3vw, 22px);
  font-weight: 500;
}
.c-list li + li {
  margin-top: 24px;
}
.c-list--no {
  list-style: none;
  counter-reset: list-num;
}
.c-list--no li {
  display: flex;
  align-items: center;
  gap: 24px;
}
.c-list--no li::before {
  font-size: clamp(26px, 4.333vw, 30px);
  font-weight: 500;
  counter-increment: list-num;
  content: counter(list-num) ".";
  line-height: 1.6;
  color: var(--color-key);
}
.c-list--dot {
  padding-left: 32px;
  list-style: disc;
}
.c-list--dot li {
  font-size: clamp(16px, 2.667vw, 18px);
  font-weight: 400;
  line-height: 1.7;
}
.c-list--dot li + li {
  margin-top: 16px;
}

.c-map__iframe {
  width: 100%;
  aspect-ratio: 3/4;
}
.c-map__link {
  text-decoration: underline;
}
.c-map__link-box {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 4px;
  margin: 4px 0 16px 0;
}
.c-map__link-box svg {
  width: 24px;
  height: 24px;
}
.c-map__link-box svg path {
  fill: var(--color_key);
}
.c-map--access-info {
  margin-bottom: 16px;
}
.c-map--access-info + .c-map--access-info {
  margin-bottom: 0;
}

.c-pagination {
  width: 100%;
  max-width: 400px;
  margin: 0 auto 88px auto;
}
@media screen and (max-width: 1024px) {
  .c-pagination {
    padding-inline: 32px;
  }
}
@media screen and (max-width: 600px) {
  .c-pagination {
    max-width: 100%;
    padding-inline: 16px;
    margin-bottom: 40px;
  }
}
.c-pagination__list {
  display: flex;
  justify-content: space-between;
  gap: 32px;
}
@media screen and (max-width: 600px) {
  .c-pagination__list {
    gap: 16px;
  }
}
.c-pagination__list.is-color-accent .c-pagination__list-current {
  background-color: var(--color-accent);
}
.c-pagination__list--inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px 0;
}
@media screen and (max-width: 600px) {
  .c-pagination__list--inner {
    gap: 16px 8px;
  }
}
.c-pagination__list-item {
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-pagination__list-omitted {
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-pagination__link {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  width: 40px;
  font-family: var(--ff-lato);
  font-size: 13;
  font-weight: 500;
  color: var(--color-border2);
  border: 1px solid transparent;
  border-radius: 100px;
}
@media screen and (max-width: 600px) {
  .c-pagination__link {
    width: 32px;
    height: 32px;
    padding: 4px;
  }
}
.c-pagination__link.is-current {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  width: 40px;
  font-family: var(--ff-lato);
  font-size: 13;
  font-weight: 500;
  color: var(--color-border2);
  border: 1px solid transparent;
  border-radius: 100px;
  border: 1px solid var(--color-border2);
  pointer-events: none;
}
@media screen and (max-width: 600px) {
  .c-pagination__link.is-current {
    width: 32px;
    height: 32px;
    padding: 4px;
  }
}
.c-pagination__link.prev, .c-pagination__link.next {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 64px;
}
.c-pagination .prev-icon {
  flex-shrink: 0;
  width: 13px;
  height: 13px;
  aspect-ratio: 1/1;
  border-bottom: 1px solid var(--color-border2);
  border-left: 1px solid var(--color-border2);
  transform: rotate(45deg);
}
.c-pagination .next-icon {
  flex-shrink: 0;
  width: 13px;
  height: 13px;
  aspect-ratio: 1/1;
  border-bottom: 1px solid var(--color-border2);
  border-left: 1px solid var(--color-border2);
  transform: rotate(-135deg);
}

.c-result {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  width: 100%;
  max-width: 416px;
  margin: 0 auto 114px auto;
}
.c-result:has(.w40) {
  justify-content: flex-end;
  max-width: 380px;
}
@media screen and (max-width: 600px) {
  .c-result {
    max-width: calc(100% - 48px);
    margin-bottom: 72px;
  }
}
.c-result.is-center {
  justify-content: center;
  margin-bottom: 32px;
}
.c-result--num {
  display: flex;
  align-items: baseline;
  font-family: var(--ff-lato);
  white-space: nowrap;
}
.c-result--num span {
  font-weight: 700;
}
.c-result--num + .c-result--num::before {
  margin-right: 16px;
  content: "|";
}
.c-result--num-box {
  display: flex;
  align-items: baseline;
  gap: 16px;
  font-size: 14px;
}
.c-result .c-form-item {
  margin-bottom: 0;
}
.c-result .c-form-item:has(select)::after {
  right: 16px;
}
.c-result .c-form__input.is-sort {
  height: 40px;
  padding: 0 0 0 32px;
  border-radius: 4px;
}

.c-scroll__box {
  position: fixed;
  bottom: 0;
  left: 20%;
  display: block;
  width: 1px;
  height: 100px;
  overflow: hidden;
  background-color: var(--color_border);
  transition: all 400ms ease-out;
}
.c-scroll__box.scrolled {
  opacity: 0 !important;
}
.c-scroll__bar {
  width: 1px;
  height: 100px;
  background-color: rgba(33, 33, 33, 0.85);
}

.c-section__heading {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
  color: var(--color-text2);
}
.c-section__heading--sub {
  font-family: var(--ff-lato);
  font-size: clamp(30px, 5vw, 35px);
  font-weight: 700;
  line-height: 1.6;
}
.c-section__heading-box {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin: 0 auto 40px auto;
}
.c-section__heading-box:not(:has(.c-section__heading--sub)) .c-section__heading {
  font-size: clamp(20px, 3.333vw, 23px);
  font-weight: 700;
  line-height: 1.6;
}
.c-section__heading-box.is-left {
  align-items: flex-start;
}
.is-lower .c-section__heading-box {
  padding-block: 100px 70px;
  margin-bottom: 0;
}
@media screen and (max-width: 600px) {
  .is-lower .c-section__heading-box {
    padding-block: 60px;
  }
}
.c-section__heading-box.is-completed {
  flex-direction: column;
}
.c-section__heading-box.is-completed img {
  width: 274px;
  height: auto;
  margin: 0 auto 64px auto;
}
.c-section__heading-box.is-completed .c-section__heading {
  margin-bottom: 56px;
  font-size: 24px;
  font-weight: 700;
  color: var(--color-accent);
}
.c-section__heading--2 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 24px;
  margin-bottom: 128px;
  font-size: 30px;
  font-weight: 700;
  text-align: center;
  color: var(--color-text2);
}
.c-section__heading--2::after {
  display: block;
  width: 50px;
  height: 3px;
  content: "";
  background-color: var(--color-accent);
}
.c-section__heading--3 {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  margin-bottom: 32px;
  font-size: 20px;
  font-weight: 700;
  color: var(--color-text2);
}
.c-section__heading--3 img {
  width: 20px;
  height: 20px;
  -o-object-fit: contain;
     object-fit: contain;
}
.c-section-page__ttl {
  font-size: clamp(32px, 5.333vw, 48px);
  font-weight: 700;
  color: #fff;
}
.c-section-page__ttl--sub {
  margin-top: 72px;
  font-size: clamp(24px, 4vw, 36px);
  font-weight: 700;
  color: #fff;
}
.c-section-page__ttl-box {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  height: 410px;
  background-color: var(--color-key-thin);
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3MzciIGhlaWdodD0iNDEwIiBmaWxsPSJub25lIj4KICA8cGF0aCBmaWxsPSIjMzhBMURCIiBkPSJNNzI1LjEyNSAzMDcuMjU2YzE1LjU5My0yNy4wODcgMTUuNTkzLTYwLjQ2MSAwLTg3LjY2OEw1MTUuNjUtMTQzLjQxOGMtMS41NzItMi42Ni0zLjE0My01LjA3OC00Ljk1Ni03LjQ5N0gwYzEuODEzIDIuNDE5IDMuMzg0IDQuOTU4IDQuOTU2IDcuNDk3TDIxNC40MyAyMTkuNTg4YzE1LjU5MyAyNy4wODYgMTUuNTkzIDYwLjQ2IDAgODcuNjY4TDQuOTU2IDY3MC4xNGMtMS41NzIgMi42Ni0zLjE0MyA1LjA3OS00Ljk1NiA3LjQ5N2g1MTAuNjk0YTE2MS40MDUgMTYxLjQwNSAwIDAgMCA0Ljk1Ni03LjQ5N2wyMDkuNDc1LTM2My4wMDV2LjEyMVoiIG9wYWNpdHk9Ii42Ii8+Cjwvc3ZnPg==");
  background-repeat: no-repeat;
  background-position: left 320px center;
  background-size: contain;
}
.c-section__read {
  font-size: clamp(20px, 3.333vw, 24px);
  line-height: 2;
}
.c-section__read + .c-section__read {
  margin-top: 64px;
}
.c-section--space {
  padding-top: var(--contents-space) !important;
}
.c-section-hairLine {
  margin-block: 40px;
  color: var(--color_border);
}
@media screen and (max-width: 600px) {
  .c-section-hairLine {
    margin-block: 32px;
  }
}
.c-section__box {
  padding-block: var(--contents-space);
  background-color: #fff;
  border-radius: 20px;
}
.p-news .c-section__box {
  padding-bottom: 22px;
}

.c-sns__list {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  margin-top: 32px;
}
.p-footer .c-sns__list {
  margin: 48px auto 0 auto;
}
.c-sns__anchor {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background-color: var(--color-text);
  border-radius: 100px;
}
.c-sns__anchor img [alt=line] {
  width: 20px;
  height: 20px;
}
.c-sns__anchor img [alt=instagram] {
  width: 16px;
  height: 16px;
}

.c-tab__list {
  position: sticky;
  top: 160px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
  width: 100%;
  max-width: 1100px;
  margin: 0 auto 48px auto;
  border-bottom: none;
  filter: drop-shadow(0px 0px 8px rgba(0, 0, 0, 0.2));
}
.c-tab__list::before, .c-tab__list::after {
  display: none;
}
@media screen and (max-width: 900px) {
  .c-tab__list {
    position: static;
    justify-content: center;
    padding-left: 0 !important;
  }
}
@media screen and (max-width: 600px) {
  .c-tab__list {
    flex-direction: column;
    margin-top: 24px;
  }
}
.c-tab__item {
  margin: 0 !important;
  font-size: 14px;
  color: #fff;
  border-radius: 8px;
  cursor: pointer;
  transition: all 400ms ease-in-out;
}
.c-tab__item a {
  min-width: 240px;
  padding: 16px 24px !important;
  margin-right: 0 !important;
  background-color: var(--color_key);
  text-align: center;
  border: none !important;
  border-radius: 8px !important;
}
@media screen and (max-width: 1024px) {
  .c-tab__item a {
    min-width: initial;
    padding: 16px !important;
  }
}
.c-tab__item.active {
  color: var(--color_text_black);
}
.c-tab__item.active::after {
  display: block;
  width: 100%;
  height: 1px;
  content: "";
  background-color: var(--color_key);
  transition: all 400ms ease-in-out;
}
.c-tab__content {
  height: 1px;
  overflow: hidden;
  opacity: 0;
  transition: all 400ms ease-in-out;
}
@media screen and (max-width: 900px) {
  .c-tab__content {
    padding-inline: 16px;
  }
}
.c-tab__content.show {
  height: auto;
  overflow: unset;
  opacity: 1;
}

.content-container {
  margin-bottom: 168px;
}
@media screen and (max-width: 600px) {
  .content-container {
    margin-bottom: 80px;
  }
}

.c-tag__list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.c-tag__list:has(.is-large) {
  flex-wrap: nowrap;
  gap: 4px;
  margin-bottom: 12px;
}
.p-information__item .c-tag__list {
  flex-wrap: nowrap;
  flex-shrink: 0;
}
.c-tag__list.is-gray {
  gap: 16px;
}
.c-tag__item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px 16px 4px 16px;
  font-size: 13px;
  color: var(--color-tag);
  border: 1px solid var(--color-tag);
  border-radius: 100px;
}
.c-tag__item.is-large {
  display: flex;
  align-items: baseline;
  gap: 4px;
  min-width: calc((100% - 16px) / 3);
  padding: 4px 8px;
  font-size: clamp(12px, 2vw, 15px);
  font-weight: 700;
  color: #fff;
  background-color: var(--color-accent);
  border-color: var(--color-accent);
}
@media screen and (max-width: 600px) {
  .c-tag__item.is-large {
    gap: 0;
  }
}
.c-tag__item.is-large span {
  font-family: var(--ff-lato);
}

.p-about {
  position: relative;
}
.p-about__image {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-about__box {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.p-about__read {
  margin-bottom: 48px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  color: var(--color-text2);
}
@media screen and (max-width: 600px) {
  .p-about__read {
    padding-inline: 40px;
  }
}

.p-announcement {
  padding-inline: 40px;
  margin-bottom: 80px;
}
@media screen and (max-width: 600px) {
  .p-announcement {
    padding-inline: 24px;
  }
}
.p-announcement__box {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 16px;
  border-radius: 10px;
}
.p-announcement__box.is-blue {
  background-color: var(--color-key);
}
.p-announcement__box.is-red {
  background-color: #fee1dc;
}
.p-announcement__box + .p-announcement__box {
  margin-top: 48px;
}
.p-announcement__heading {
  position: relative;
  display: flex;
  align-items: baseline;
  gap: 6px;
  padding: 12px 10px 20px 48px;
  font-size: 16px;
  font-weight: 700;
  background-color: #fff;
  border-radius: 10px;
}
.is-red .p-announcement__heading {
  padding-top: 20px;
}
.p-announcement__heading img {
  position: absolute;
  top: 50%;
  left: 20px;
  transform: translateY(-50%);
}
.p-announcement__heading span {
  font-family: var(--ff-lato);
  color: var(--color-accent);
}
.p-announcement__list {
  padding: 24px 20px;
  background-color: #fff;
  border-radius: 10px;
}
.p-announcement__item {
  display: block;
  padding-bottom: 10px;
  margin-bottom: 20px;
  border-bottom: 1px solid var(--color-border);
}
.p-announcement-date {
  font-family: var(--ff-lato);
  font-size: 14px;
  font-weight: 400;
  color: var(--color-accent);
}
.p-announcement__read {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.87;
}

.p-app-detail {
  padding-inline: 40px;
}
@media screen and (max-width: 600px) {
  .p-app-detail {
    padding-inline: 24px;
  }
}
.p-app-detail__box {
  margin-top: 40px;
}
.p-app-detail__box-editor {
  padding: 8px;
  margin-bottom: 32px;
  border: 1px solid var(--color-border);
}
.p-app-detail__box-editor input {
  width: 100%;
  padding: 8px;
}
.p-app-detail__box-editor input[type=text] {
  margin-bottom: 8px;
  border-bottom: 1px solid #ddd;
}
.p-app-detail__box-editor input[type=text]::-moz-placeholder {
  color: #ddd;
}
.p-app-detail__box-editor input[type=text]::placeholder {
  color: #ddd;
}
.p-app-detail__box-editor textarea {
  width: 100%;
  height: 100%;
  padding: 8px;
}
.p-app-detail__box-editor textarea::-moz-placeholder {
  color: #ddd;
}
.p-app-detail__box-editor textarea::placeholder {
  color: #ddd;
}
.p-app-detail__heading {
  margin-bottom: 16px;
  font-size: 18px;
  font-weight: 700;
}
.p-app-detail__heading--sub {
  position: relative;
  display: flex;
  padding-left: 32px;
  margin-bottom: 16px;
  font-size: 15px;
  font-weight: 700;
  color: var(--color-text2);
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIxNiIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZmlsbD0iI2E2YzlkZiIgZD0iTTIgMTZxLS44MjQgMC0xLjQxMi0uNTg3QTEuOTMgMS45MyAwIDAgMSAwIDE0VjJRMCAxLjE3Ni41ODguNTg4QTEuOTMgMS45MyAwIDAgMSAyIDBoMTZxLjgyNSAwIDEuNDEzLjU4OFQyMCAydjEycTAgLjgyNS0uNTg3IDEuNDEzQTEuOTIgMS45MiAwIDAgMSAxOCAxNnptOC03TDIgNHYxMGgxNlY0em0wLTIgOC01SDJ6TTIgNFYydjEyeiIvPgo8L3N2Zz4=") no-repeat left center/contain;
}
.p-app-detail__list {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  color: var(--color-text2);
}
@media screen and (max-width: 600px) {
  .p-app-detail__list {
    flex-direction: column;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--color-border);
  }
}
.p-app-detail__list + .p-app-detail__list {
  margin-top: 10px;
}
@media screen and (max-width: 600px) {
  .p-app-detail__list + .p-app-detail__list {
    margin-top: 16px;
  }
}
.p-app-detail__list dt {
  min-width: 160px;
  font-size: 15px;
  font-weight: 700;
  line-height: 2;
}
@media screen and (max-width: 600px) {
  .p-app-detail__list dt {
    width: 100%;
  }
}
.p-app-detail__list dd {
  font-size: 15px;
  font-weight: 500;
  line-height: 2;
}
@media screen and (max-width: 600px) {
  .p-app-detail__list dd {
    width: 100%;
  }
}
.p-app-detail--history {
  width: 100%;
  height: 96px;
  padding: 16px;
  margin-bottom: 32px;
  overflow-y: auto;
  background-color: #e7eef3;
}
.p-app-detail--file {
  position: absolute;
  top: 50%;
  right: 4px;
  transform: translateY(-50%);
}

.p-aside--left {
  width: 100%;
  height: 100%;
  padding: 64px 56px 0 0;
  background: var(--gra01);
}
.p-aside--right {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  padding-left: 40px;
  background-image: url(../images/photo-aside-right.png), var(--gra02);
}
.p-aside__nav {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 24px;
  width: 100%;
  margin: 0 auto 72px auto;
}
.is-mypage .p-aside__nav {
  margin-bottom: 40px;
}
.p-aside__nav-anchor {
  display: flex;
  align-items: center;
  gap: 16px;
  font-size: 16px;
  line-height: 1.25;
}
.p-aside__nav-anchor::before {
  width: 10px;
  height: 10px;
  content: "";
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNSIgaGVpZ2h0PSIxNCIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZmlsbD0idXJsKCNhKSIgZD0iTTcuNjE1LjQ3MyA2LjUyNyAxLjU2IDExLjIgNi4yMzNILjc2N3YxLjUzNEgxMS4ybC00LjY3MyA0LjY3MiAxLjA4OCAxLjA4OEwxNC4xNDIgNyA3LjYxNS40NzNaIi8+CiAgPGRlZnM+CiAgICA8bGluZWFyR3JhZGllbnQgaWQ9ImEiIHgxPSIzLjUzNiIgeDI9IjEwLjYwNyIgeTE9IjMuNDY0IiB5Mj0iMTAuNTM2IiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+CiAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiNGQkMyRUIiLz4KICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjQTZDMUVFIi8+CiAgICA8L2xpbmVhckdyYWRpZW50PgogIDwvZGVmcz4KPC9zdmc+") no-repeat center center/contain;
}
.p-aside__nav-heading {
  padding-bottom: 8px;
  margin-bottom: 16px;
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text);
  border-bottom: 1px solid var(--color-border);
}
.p-aside__box {
  margin-top: 35%;
}

.p-column {
  padding-block: 32px 72px;
  background-color: #F2EDEB;
}
.p-column + .p-column {
  margin-top: 48px;
}
.p-column__item {
  display: block;
  overflow: hidden;
  border-radius: 10px;
}
.p-column__image {
  aspect-ratio: 357/222;
}
.p-column__image img {
  width: 100%;
  height: auto;
}
.p-column-info {
  padding: 12px 20px 20px 20px;
  background-color: #fff;
}
.p-column-info__box {
  display: flex;
  gap: 72px;
  margin-bottom: 12px;
  font-size: 15px;
  font-weight: 400;
  color: var(--color-accent);
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNSIgaGVpZ2h0PSIxNiIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZmlsbD0idXJsKCNhKSIgZD0iTTguNDczIDEuNDczIDcuMzg1IDIuNTZsNC42NzIgNC42NzJIMS42MjV2MS41MzRoMTAuNDMybC00LjY3MiA0LjY3MiAxLjA4OCAxLjA4OEwxNSA4IDguNDczIDEuNDczWiIvPgogIDxkZWZzPgogICAgPGxpbmVhckdyYWRpZW50IGlkPSJhIiB4MT0iNC4zOTMiIHgyPSIxMS40NjQiIHkxPSI0LjQ2NCIgeTI9IjExLjUzNSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgogICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjRkJDMkVCIi8+CiAgICAgIDxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0E2QzFFRSIvPgogICAgPC9saW5lYXJHcmFkaWVudD4KICA8L2RlZnM+Cjwvc3ZnPg==") no-repeat center right/contain;
}
.p-column-info__heading {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  color: var(--color-text2);
}
.p-column .splide__pagination {
  bottom: -48px;
  display: flex;
  gap: 16px;
}
.p-column .splide__pagination__page {
  margin: 0;
}
.p-column .splide__pagination__page.is-active {
  background-color: var(--color-accent);
  transform: none;
  opacity: 1;
}

.p-concept {
  width: 100%;
  margin-bottom: 56px;
}
@media screen and (max-width: 600px) {
  .p-concept {
    margin-bottom: 16px;
  }
}
.p-concept__heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  font-size: clamp(20px, 3.333vw, 30px);
  font-weight: 500;
  color: var(--color-text2);
}
.p-concept__heading img {
  width: 200px;
  height: 59px;
  margin-top: 24px;
}
@media screen and (max-width: 600px) {
  .p-concept__heading img {
    width: 131px;
    height: 38px;
    margin-top: 0;
  }
}

.p-consult {
  position: relative;
  padding-inline: 56px;
  text-align: center;
  background-color: #f7f7f7;
}
@media screen and (max-width: 600px) {
  .p-consult {
    padding-inline: 24px;
  }
}
.p-consult-bg {
  display: block;
  width: calc(100% + 112px);
  height: 95px;
  margin-inline: -56px;
}
.p-consult-bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-consult .c-section__heading--2 {
  margin: 0 -56px;
  background-color: #fff;
}
.p-consult__ttl {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 24px;
  margin-bottom: 128px;
  font-size: 30px;
  font-weight: 700;
  text-align: center;
}
.p-consult__ttl::after {
  display: block;
  width: 50px;
  height: 3px;
  content: "";
  background-color: var(--color-accent);
}
.p-consult img {
  width: 100%;
  margin-inline: auto;
}
.p-consult img[alt*=セカンドキャリアさん] {
  max-width: 320px;
}
@media screen and (max-width: 600px) {
  .p-consult img[alt*=セカンドキャリアさん] {
    max-width: initial;
  }
}
.p-consult img[alt*=お任せください！] {
  margin-bottom: 112px;
}
.p-consult img:not([src*=-sp]) {
  display: block;
}
@media screen and (max-width: 600px) {
  .p-consult img:not([src*=-sp]) {
    display: none;
  }
}
.p-consult img[src*=-sp] {
  display: none;
}
@media screen and (max-width: 600px) {
  .p-consult img[src*=-sp] {
    display: block;
  }
}
.p-consult img[src*="mask-balloon.svg"] {
  display: block;
}
@media screen and (max-width: 600px) {
  .p-consult img[src*="mask-balloon.svg"] {
    display: block;
  }
}
.p-consult img + img {
  margin-top: 72px;
}
@media screen and (max-width: 600px) {
  .p-consult img + img {
    margin-top: 48px;
  }
}

.p-digest-search {
  padding: 32px 20px 80px 20px;
  margin-bottom: 80px;
  background-color: var(--color-key);
}
.p-digest-search__box {
  padding: 24px 32px;
  margin: 0 auto 24px auto;
  background-color: #fff;
  border-radius: 20px;
}
.p-digest-search__list + .p-digest-search__list {
  padding-top: 24px;
  margin-top: 24px;
  border-top: 1px dashed var(--color-border);
}
.p-digest-search__list dt {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.8;
}
.p-digest-search__list dd {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.p-digest-search__item {
  color: var(--color-text2);
  border: 1px solid var(--color-border);
  border-radius: 100px;
  transition: all 300ms ease-in-out;
}
.p-digest-search__item input {
  display: none;
}
.p-digest-search__item label {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px 16px 4px 16px;
  font-size: 14px;
  transition: all 300ms ease-in-out;
}
.p-digest-search__item:has(:checked) {
  color: #fff;
  background-color: var(--color-accent);
  border-color: transparent;
}
@media screen and (max-width: 600px) {
  .p-digest__list {
    padding-inline: 20px;
  }
}
.p-digest__list .p-job-item {
  margin-bottom: 72px;
}

.p-free-consultation {
  background: var(--gra07);
}
@media screen and (max-width: 600px) {
  .p-free-consultation {
    padding-top: 160px !important;
    padding-bottom: 60px;
  }
}
.p-free-consultation__ttl {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-bottom: 48px;
  font-size: 25px;
  font-weight: 700;
  color: var(--color-text2);
}
.p-free-consultation__ttl::after {
  display: block;
  width: 210px;
  height: 37px;
  content: "";
  background: url("../images/line-wave.png") no-repeat center center/contain;
}
.p-free-consultation__box {
  width: 100%;
  max-width: 520px;
  padding-bottom: 40px;
  margin-inline: auto;
  text-align: center;
  background-color: #fff;
  border-radius: 20px;
}
@media screen and (max-width: 600px) {
  .p-free-consultation__box {
    width: 90%;
  }
}
.p-free-consultation__box > img {
  max-width: 115px;
  height: 144px;
  margin: -24px auto 24px auto;
}
.p-free-consultation__box .p-reserve-btn__box {
  padding-inline: 24px;
  margin-top: 48px;
}
.p-free-consultation__box .c-btn.is-reserve {
  max-width: 350px;
  height: 60px;
}
.p-free-consultation__read {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
  color: var(--color-text2);
}
.p-free-consultation.is-lower {
  position: relative;
  padding-block: 56px;
  margin-top: 114px;
  background: var(--color-key);
}
.p-free-consultation.is-lower > img {
  position: absolute;
  top: 32px;
  left: 96px;
  width: 91px;
  height: 80px;
}
@media screen and (max-width: 900px) {
  .p-free-consultation.is-lower > img {
    left: 32px;
  }
}
@media screen and (max-width: 600px) {
  .p-free-consultation.is-lower > img {
    top: 56px;
    left: calc(50% - 8px);
    transform: translateX(-50%);
  }
}
.p-free-consultation.is-lower .p-free-consultation__ttl::after {
  display: none;
}
.p-free-consultation.is-lower .p-free-consultation__box {
  background-color: transparent;
}

.p-footer {
  color: var(--color-text2);
}
.p-footer__logo {
  width: 100%;
  max-width: 200px;
  aspect-ratio: 20/6;
  margin: 0 auto 24px auto;
}
.p-footer__logo img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-footer__read {
  width: 100%;
  max-width: 696px;
  font-size: clamp(14px, 2.333vw, 16px);
  line-height: 1.7;
  color: #fff;
  text-align: left;
}
.p-footer-copyright {
  display: block;
  margin-block: 32px;
  font-size: clamp(16px, 2.667vw, 18px);
  text-align: center;
}
.p-footer-link__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 32px;
  max-width: 60%;
  margin: 0 auto 72px auto;
}

.l-footer .c-sns__list {
  justify-content: center;
  margin: 48px auto 40px auto;
}
.l-footer .c-btn {
  max-width: 264px;
  margin: 0 auto 88px auto;
}

.p-header {
  display: none;
}
@media screen and (max-width: 900px) {
  .p-header {
    position: fixed;
    z-index: 101;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 16px 20px 16px 28px;
    background-color: rgba(255, 255, 255, 0);
    transition: all 300ms ease-in-out;
  }
  .is-lower .p-header {
    padding-bottom: 16px;
  }
  .p-header.is-fixed {
    padding-bottom: 16px;
    background-color: rgba(255, 255, 255, 0.8);
  }
}
.p-header-logo {
  width: 100%;
  padding-block: 16px;
  background-color: #fff;
  border-radius: 0 100px 100px 0;
  box-shadow: 0 0 20px 0 #a6c9df;
}
.p-header-logo img {
  width: 224px;
  height: 66px;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-header-logo__box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  width: 100%;
  margin-bottom: 184px;
  text-align: center;
}
.p-header-logo--hamburger {
  width: 100px;
  aspect-ratio: 10/3;
}
.p-header-logo--hamburger img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-header-icon__box {
  display: flex;
  align-items: center;
  gap: 16px;
}

body:has(.c-hamburger-toggle:checked) .p-header {
  background-color: rgb(255, 255, 255);
}

.p-history-info {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
}
.p-history__label {
  padding: 6px 8px 4px 8px;
  font-size: 13px;
  font-weight: 700;
  color: var(--color-accent3);
  border: 1px solid var(--color-accent3);
  border-radius: 4px;
}
.p-history-date {
  color: var(--color-accent3);
  font-size: 13px;
  font-weight: 700;
}
.p-history .c-result {
  max-width: initial;
  padding-inline: 40px;
  margin-bottom: 24px;
}
.p-history .c-pagination {
  margin-bottom: 0;
}
.p-history .p-digest__list {
  padding-inline: 40px;
  margin-block: 32px;
}
.p-history .p-job-item {
  padding-block: 32px;
  margin-top: -1px;
  margin-bottom: 0;
  border-top-color: var(--color-border);
  border-right: none;
  border-bottom-color: var(--color-border);
  border-left: none;
  border-radius: 0;
}
.p-history .c-btn.is-square {
  max-width: 320px;
  margin-top: 40px;
}
.p-history .c-form__input.is-sort {
  padding-left: 16px;
}

.p-info {
  padding-inline: 40px;
  margin-bottom: 80px;
}
@media screen and (max-width: 600px) {
  .p-info {
    padding-inline: 24px;
    margin-bottom: 40px;
  }
}
.p-info__box {
  display: flex;
  gap: 16px;
}
.p-info__box + .p-info__box {
  margin-top: 56px;
}
.p-info__image {
  width: 167px;
  aspect-ratio: 1/1;
}
.p-info__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-info__text {
  width: calc(100% - 183px);
  color: var(--color-text2);
}
.p-info__label {
  padding: 8px 16px;
  margin-bottom: 10px;
  font-size: 15px;
  font-weight: 700;
}
.p-info__label.cate01 {
  background-color: var(--color-cate01);
}
.p-info__label.cate02 {
  background-color: var(--color-cate02);
}
.p-info__label.cate03 {
  background-color: var(--color-cate03);
}
.p-info--date {
  font-family: var(--ff-lato);
  font-size: 12px;
}
.p-info__ttl {
  margin-block: 10px;
  font-size: 15px;
  font-weight: 700;
}
.p-info__read {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.8;
}

.p-job-item {
  position: relative;
  z-index: 1;
  height: 100%;
  padding: 20px;
  background-color: #fff;
  border: 1px solid var(--color-border2);
  border-radius: 10px;
}
.p-job-item-matching__icon {
  position: absolute;
  top: -47px;
  left: -19px;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 120px;
  height: 120px;
  font-family: var(--ff-lato);
  font-weight: 700;
  color: #fff;
  background-color: var(--color-accent3);
  border-radius: 100px;
}
@media screen and (max-width: 600px) {
  .p-job-item-matching__icon {
    left: -16px;
  }
}
.p-job-item-matching__icon-percent {
  display: flex;
  align-items: baseline;
  color: var(--color-text2);
}
.p-job-item-matching__icon.is-question {
  text-align: center;
  text-decoration: underline;
  line-height: 1.8;
  color: var(--color-text2);
}
.p-job-item-matching__icon.is-question a {
  line-height: 1.6;
}
.p-job-item-matching__icon.is-question::before {
  position: absolute;
  top: 4px;
  right: 4px;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  font-size: 16px;
  font-weight: 700;
  content: "？";
  color: #fff;
  background-color: #69574D;
  border: 2px solid #fff;
  border-radius: 100px;
}
.p-job-item__photo {
  position: relative;
  aspect-ratio: 34/24;
  margin-bottom: 16px;
}
.p-job-item__photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-job-item--favo {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 15px;
  font-size: 24px;
  color: #fff;
  filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.8));
}
.p-job-item--favo.is-liked {
  color: #ffbdb1; /* いいねされた後の色 */
  animation: like-animation 0.4s forwards; /* いいねアニメーションを適用 */
}
.p-job-item-name {
  margin-bottom: 16px;
  font-size: 15px;
  font-weight: 700;
  text-align: left;
  color: var(--color-accent3);
}
.p-job-item__ttl {
  margin-bottom: 16px;
  font-size: 16px;
  font-weight: 700;
  text-align: left;
  color: var(--color-text2);
}
.p-job-item__ttl > a {
  line-height: 1.5;
}
.p-job-item-info {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 8px;
}
.p-job-item-info dt img {
  width: 20px;
}
.p-job-item-info dd {
  font-size: 14px;
  line-height: 1.6;
  color: var(--color-text2);
}
.p-job-item-info + .c-tag__list {
  margin-top: 24px;
}
.p-job-item__modal, .p-job-item__overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-in-out, visibility 0s 0.4s;
}
.p-job-item__overlay {
  z-index: 101;
  background: rgba(0, 0, 0, 0.5);
}
.p-job-item__overlay.is-active {
  opacity: 1;
  visibility: visible;
}
.p-job-item__modal {
  top: 50%;
  left: 50%;
  z-index: 102;
  width: 336px;
  height: 184px;
  transform: translate(-50%, -50%);
}
.p-job-item__modal.is-h-auto {
  height: auto;
}
.p-job-item__modal.is-h-auto .p-reserve__box {
  padding-inline: 32px;
  background-color: #fff;
}
.p-job-item__modal.is-h-auto .c-btn.is-reserve {
  max-width: initial;
}
.p-job-item__modal.is-h-auto .c-btn.is-reserve.is-instagram {
  margin-bottom: 40px;
}
.p-job-item__modal-content {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 103;
  width: 100%;
  height: 100%;
  padding: 32px;
  text-align: center;
  background: #fff;
  border-radius: 16px;
  transform: translate(-50%, -50%);
}
.p-job-item__modal-content::before {
  position: absolute;
  top: -16px;
  left: -24px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 64px;
  content: attr(data-text);
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 3.2px;
  color: #fff;
  background-color: #f09d9d;
  border-radius: 100px;
}
.p-job-item__modal-content:has(.p-job-item__modal-tel-box)::before {
  display: none;
}
.p-job-item__modal-heading {
  font-size: 18px;
  font-weight: 700;
  color: var(--color-text2);
}
.p-job-item__modal-read {
  margin-block: 16px;
  font-size: 16px;
  font-weight: 500;
  color: var(--color-text2);
  line-height: 1.8;
}
.p-job-item__modal-anchor {
  font-size: 16px;
  font-weight: 700;
  color: var(--color-text);
  text-decoration: underline;
}
.p-job-item__modal.is-active {
  opacity: 1;
  visibility: visible;
}
.p-job-item__modal-tel-box {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-block: 16px;
  font-family: var(--ff-lato);
  font-size: 28px;
  font-weight: 700;
  color: var(--color-text);
}
.p-job-item__anchor {
  display: block;
}

.js-job-slider {
  margin-bottom: 56px;
}
.js-job-slider .splide__arrow {
  width: 68px;
  height: 68px;
  background-color: rgba(255, 255, 255, 0.9);
  border: 1px solid var(--color-border2);
}
.js-job-slider .splide__arrow--next {
  right: 48px;
}
@media screen and (max-width: ) {
  .js-job-slider .splide__arrow--next {
    right: 24px;
  }
}
@media screen and (max-width: 600px) {
  .js-job-slider .splide__arrow--next {
    right: 8px;
  }
}
.js-job-slider .splide__arrow--prev {
  left: 48px;
}
@media screen and (max-width: ) {
  .js-job-slider .splide__arrow--prev {
    left: 24px;
  }
}
@media screen and (max-width: 600px) {
  .js-job-slider .splide__arrow--prev {
    left: 8px;
  }
}
.js-job-slider .splide__track {
  overflow: visible;
}

.js-job-slider2 {
  margin-bottom: 56px;
}
.js-job-slider2 .splide__arrow {
  width: 68px;
  height: 68px;
  background-color: rgba(255, 255, 255, 0.9);
  border: 1px solid var(--color-border2);
}
.js-job-slider2 .splide__arrow--next {
  right: 48px;
}
@media screen and (max-width: ) {
  .js-job-slider2 .splide__arrow--next {
    right: 24px;
  }
}
@media screen and (max-width: 600px) {
  .js-job-slider2 .splide__arrow--next {
    right: 8px;
  }
}
.js-job-slider2 .splide__arrow--prev {
  left: 48px;
}
@media screen and (max-width: ) {
  .js-job-slider2 .splide__arrow--prev {
    left: 24px;
  }
}
@media screen and (max-width: 600px) {
  .js-job-slider2 .splide__arrow--prev {
    left: 8px;
  }
}
.js-job-slider2 .splide__track {
  overflow: visible;
}

@keyframes like-animation {
  0% {
    transform: scale(1); /* 最初は通常の大きさ */
  }
  50% {
    transform: scale(2); /* 中間で少し大きくする */
  }
  100% {
    transform: scale(1); /* 最後は元の大きさに戻す */
  }
}
.p-main-image {
  position: relative;
  height: 100vh;
  margin-bottom: 56px;
}
@media screen and (max-width: 600px) {
  .p-main-image {
    position: absolute;
    height: 100vh;
  }
}
.p-main-image::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  display: block;
  width: 100%;
  height: 185px;
  content: "";
  background: linear-gradient(180deg, #FFF 0%, rgba(255, 255, 255, 0) 100%);
}
.p-main-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (max-width: 600px) {
  .p-main-image img {
    height: auto;
  }
}
.p-main__box {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 288px;
  width: 100%;
}
@media screen and (max-width: 600px) {
  .p-main__box {
    position: relative;
    gap: 38vh;
    margin-bottom: 64px;
  }
}
.p-main__logo {
  width: 124px;
  height: 37px;
  margin-bottom: 48px;
  -o-object-fit: contain;
     object-fit: contain;
}
@media screen and (max-width: 900px) {
  .p-main__logo {
    display: none;
  }
}
.p-main-read {
  font-size: clamp(30px, 5vw, 42px);
  font-weight: 700;
  line-height: 1.6;
  color: #fff;
  text-shadow: 0 0 10px rgba(162, 126, 75, 0.5);
}
.p-main-copy {
  margin-bottom: 16px;
  font-size: clamp(20px, 3.333vw, 25px);
  font-weight: 700;
}
.p-main-copy__box {
  width: 100%;
  padding: 72px 48px 0 48px;
  text-align: left;
}
@media screen and (max-width: 600px) {
  .p-main-copy__box {
    padding: 96px 24px 0 24px;
  }
}
.p-main-bottom {
  width: 100%;
  padding: 0 48px 144px 48px;
}
@media screen and (max-width: 600px) {
  .p-main-bottom {
    padding-bottom: 0;
  }
}

@media screen and (max-width: 900px) {
  .p-news {
    padding-inline: 24px;
  }
}
.p-news__item {
  width: 100%;
  max-width: 520px;
  padding-bottom: 40px;
  margin: 0 auto 32px auto;
  border-bottom: 1px solid var(--color-accent);
}
.p-news-date {
  display: block;
  margin-bottom: 16px;
  font-family: var(--ff-lato);
  font-size: 16px;
  font-weight: 700;
  color: var(--color-accent);
}
.p-news__ttl {
  font-size: 16px;
  font-weight: 500;
  text-align: left;
  line-height: 1.6;
  color: var(--color-text2);
}
.p-news .c-btn.is-more {
  margin-top: 56px;
}

.p-qa {
  padding-inline: 40px;
}
@media screen and (max-width: 600px) {
  .p-qa {
    padding-inline: 24px;
    padding-block: 140px !important;
  }
}
.p-qa__item {
  width: 100%;
  max-width: 520px;
  padding: 0 16px;
  margin-inline: auto;
  overflow: hidden;
  background-color: #fff;
  border-radius: 10px;
}
.p-qa__item + .p-qa__item {
  margin-top: 16px;
}
.p-qa__item.is-open {
  padding-bottom: 16px;
}
.p-qa__item.is-open .p-qa__plus-icon {
  transform: rotate(0deg);
}
.p-qa__item.is-open .p-qa__plus-icon::before {
  opacity: 0;
}
.p-qa__question {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 24px;
  padding: 20px 72px 20px 32px;
  font-weight: 700;
}
@media screen and (max-width: 900px) {
  .p-qa__question {
    padding-left: 16px;
  }
}
.p-qa__icon {
  flex-shrink: 0;
  font-family: var(--ff-lato);
  font-size: 30px;
  font-weight: 700;
  color: var(--color-accent);
}
.p-qa__icon.is-answer {
  color: var(--color-accent2);
}
.p-qa__title {
  flex-grow: 1;
  margin: 0;
  font-size: 16px;
  line-height: 1.6;
  color: var(--color-text2);
}
.p-qa__toggle-button {
  position: absolute;
  top: 50%;
  right: 32px;
  width: 19px;
  height: 19px;
  cursor: pointer;
  transform: translateY(-50%);
}
.p-qa__plus-icon {
  position: relative;
  display: block;
  width: 19px;
  height: 2px;
  background-color: var(--color-accent);
  transition: transform 0.3s ease;
}
.p-qa__plus-icon::before {
  position: absolute;
  top: -8px;
  left: 8px;
  display: block;
  width: 2px;
  height: 19px;
  content: "";
  background-color: var(--color-accent);
  transition: transform 0.3s ease;
}
.p-qa__answer {
  max-height: 0;
  padding: 0 20px;
  overflow: hidden;
  background-color: var(--color-key);
  border-radius: 10px;
  transition: max-height 0.3s ease-out;
}
.p-qa__answer p {
  margin: 0;
  line-height: 1.8;
}
.p-qa__answer[aria-hidden=false] {
  max-height: initial !important;
  padding: 24px 24px 24px 40px;
}
.p-qa .c-btn.is-more {
  margin-top: 56px;
}

.js-qa-accordion {
  cursor: pointer;
}

.p-reason {
  margin-bottom: var(--contents-space);
  background: var(--gra06);
}
.p-reason__ttl {
  margin-bottom: 32px;
  font-size: clamp(25px, 4.167vw, 30px);
  font-weight: 700;
  text-align: center;
}
.p-reason__ttl img {
  max-width: 422px;
}
@media screen and (max-width: 600px) {
  .p-reason__ttl img {
    max-width: 100%;
    padding-inline: 24px;
  }
}
.p-reason__box.is-reverse .p-reason-point img {
  padding-right: 0;
  padding-left: 24px;
  margin-bottom: 32px;
}
.p-reason__box.is-reverse .p-reason-point__ttl {
  text-align: left;
}
.p-reason__box + .p-reason__box {
  margin-top: 72px;
}
.p-reason-point img {
  width: 100%;
  padding-right: 24px;
}
.p-reason-point__ttl {
  padding-inline: 40px;
  margin-bottom: 16px;
  font-size: 16px;
  font-weight: 700;
  text-align: right;
}
.p-reason-point__read {
  padding-inline: 40px;
  font-size: 16px;
  line-height: 1.6;
  text-align: left;
}

.p-registration__ttl {
  margin-top: 88px;
  margin-bottom: 88px;
  font-size: 25px;
  font-weight: 700;
  text-align: center;
}
.p-registration__item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  width: 100%;
  max-width: 350px;
  aspect-ratio: 1/1;
  padding: 40px;
  margin: 0 auto 40px auto;
  background-color: rgba(221, 239, 241, 0.5);
  border-radius: 350px;
}
.p-registration__item.is-arrow::before {
  position: absolute;
  top: -56px;
  display: block;
  width: 15px;
  height: 80px;
  content: "";
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSI4MyIgZmlsbD0ibm9uZSI+CiAgPHBhdGggc3Ryb2tlPSIjRkZCREIxIiBzdHJva2UtZGFzaGFycmF5PSIxIDgiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJiZXZlbCIgc3Ryb2tlLXdpZHRoPSIzIiBkPSJNNy41IDJ2NjYuNSIvPgogIDxtYXNrIGlkPSJhIiBmaWxsPSIjZmZmIj4KICAgIDxwYXRoIGQ9Im03LjY1NyA2Ny41IDcuNjU2IDcuNjU3LTcuNjU2IDcuNjU3TDAgNzUuMTU3IDcuNjU3IDY3LjVaIi8+CiAgPC9tYXNrPgogIDxwYXRoIGZpbGw9IiNGRkJEQjEiIGQ9Im03LjY1NyA4Mi44MTQtMi4xMjIgMi4xMiAyLjEyMiAyLjEyMiAyLjEyMS0yLjEyMS0yLjEyMS0yLjEyMVptNy42NTYtNy42NTctMi4xMi0yLjEyMi03LjY1OCA3LjY1NyAyLjEyMiAyLjEyMiAyLjEyMSAyLjEyIDcuNjU3LTcuNjU2LTIuMTIxLTIuMTIxWm0tNy42NTYgNy42NTcgMi4xMjEtMi4xMjItNy42NTctNy42NTdMMCA3NS4xNTdsLTIuMTIxIDIuMTIxIDcuNjU2IDcuNjU3IDIuMTIyLTIuMTIxWiIgbWFzaz0idXJsKCNhKSIvPgo8L3N2Zz4=") no-repeat top center/contain;
}
.p-registration__item-ttl {
  font-size: 19px;
  font-weight: 700;
}
.p-registration__item img {
  position: absolute;
  bottom: -8px;
}
.p-registration__item img[alt*=マッチング率] {
  bottom: 27px;
}
.p-registration--no {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  margin-bottom: 8px;
  font-size: 15px;
  font-weight: 700;
  color: #fff;
  background-color: var(--color-green);
  border-radius: 100px;
}
.p-registration__read {
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  color: var(--color-text2);
}
.p-registration .c-section__heading--2 {
  margin-bottom: 80px;
}

.p-reserve__box {
  position: relative;
  width: 100%;
  min-width: 304px;
  margin-bottom: 32px;
  padding: 40px 48px;
  text-align: center;
  background-color: rgba(255, 255, 255, 0.7);
  border-radius: 20px;
}
.p-reserve__box::before {
  position: absolute;
  top: -64px;
  left: 50%;
  display: block;
  width: 62px;
  height: 82px;
  content: "";
  background: url("../images/icon-free.svg") no-repeat center center/contain;
  transform: translateX(-50%);
}
.p-reserve__heading {
  margin-bottom: 24px;
  font-size: clamp(18px, 3vw, 20px);
  font-weight: 700;
}
.p-reserve-btn__box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-top: 16px;
}
.p-reserve__label {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 76px;
  height: 28px;
  margin-right: 12px;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  background-color: #ffbdb1;
  border-radius: 100px;
}

.p-scout {
  padding-inline: 40px;
}
@media screen and (max-width: 600px) {
  .p-scout {
    padding-inline: 24px;
  }
}
.p-scout-profile {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin-bottom: 20px;
}
.p-scout-profile a {
  text-decoration: underline;
}
.p-scout__table {
  margin-bottom: 64px;
}
.p-scout__table tr {
  border-top: 1px solid var(--color-border);
}
@media screen and (max-width: 600px) {
  .p-scout__table tr {
    display: flex;
    flex-direction: column;
  }
}
.p-scout__table th,
.p-scout__table td {
  padding: 16px;
  font-size: 15px;
  line-height: 1.87;
  vertical-align: top;
}
@media screen and (max-width: 600px) {
  .p-scout__table th,
  .p-scout__table td {
    display: block;
    width: 100%;
  }
}
.p-scout__table th {
  min-width: 150px;
  font-weight: 700;
  background-color: #e7eef3;
}
@media screen and (max-width: 600px) {
  .p-scout .c-form__wrapper {
    margin-block: 24px 0;
  }
}
.p-scout .c-form-radioItem {
  padding-right: 0;
  white-space: nowrap;
}
.p-scout .c-form-radioItem > div {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-left: 24px;
}
.p-scout .c-form__input {
  padding: 8px;
}

:root {
  --color-search-box: #c3e3e7;
}

@media screen and (max-width: 1024px) {
  .p-search {
    padding-inline: 24px;
  }
}
.p-search__ttl {
  margin-bottom: 16px;
  font-size: 25px;
  font-weight: 700;
  line-height: 1.6;
  text-align: center;
}
.p-search__ttl.u-speech-bubble {
  align-items: flex-end;
  gap: 24px;
}
.p-search__ttl.u-speech-bubble::before, .p-search__ttl.u-speech-bubble::after {
  font-size: 32px;
}
.p-search__box {
  width: 100%;
  max-width: 520px;
  padding: 40px 56px;
  margin-inline: auto;
  border-radius: 20px;
  background-color: var(--color-key);
}
@media screen and (max-width: 1024px) {
  .p-search__box {
    padding-inline: 32px;
  }
}
@media screen and (max-width: 900px) {
  .is-search-footer .p-search__box {
    max-width: calc(100% - 48px);
  }
}
@media screen and (max-width: 600px) {
  .p-search__box {
    padding: 32px 24px;
  }
}
.p-search__box + .p-search__box {
  margin-top: 40px;
}
.p-search__box-ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-bottom: 32px;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  color: var(--color-text2);
}
.is-lower .p-search__box-ttl {
  gap: 16px;
}
.is-lower .p-search__box-ttl svg {
  width: 23px;
  height: 23px;
}
.p-search-condition {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.p-search-condition[open] {
  margin-bottom: 20px;
}
.p-search-condition__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 48px;
  font-size: 16px;
  color: var(--color-text2);
  background-color: #fff;
  border: 1px solid var(--color-border);
  border-radius: 100px;
  cursor: pointer;
}
.p-search-condition__item {
  height: 0;
  overflow: hidden;
  padding: 20px 16px;
  background-color: var(--color-search-box);
  border-radius: 20px;
  transition: height 0.3s ease-in-out;
}

.p-step--no {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  font-family: var(--ff-lato);
  font-size: 15px;
  font-weight: 400;
  color: var(--color-accent);
  background-color: #fff;
  border: 1px solid var(--color-accent);
  border-radius: 100px;
}
.p-step--no.is-current {
  color: #fff;
  background-color: var(--color-accent);
}
.p-step--no__list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  max-width: 380px;
  margin: 56px auto 0 auto;
  background: linear-gradient(0deg, rgb(255, 255, 255) 48%, var(--color-accent) 50%, var(--color-accent) 51%, rgb(255, 255, 255) 53%);
}
@media screen and (max-width: 600px) {
  .p-step--no__list {
    width: calc(100% - 48px);
  }
}
.p-step-content__ttl {
  font-size: 16px;
  font-weight: 500;
}
.p-step-content__ttl span {
  font-weight: 700;
}
.p-step-content__actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 56px;
}
.p-step--note {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
  color: #a1a1a1;
}

.p-topics__heading {
  padding-inline: 40px;
  margin-bottom: 40px;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.87;
}
.p-topics__photo {
  aspect-ratio: 10/4;
  width: 100%;
  margin-bottom: 48px;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-topics__ttl {
  padding-inline: 64px;
  margin-bottom: 48px;
  font-size: clamp(18px, 3vw, 23px);
  font-weight: 700;
  line-height: 1.7;
  text-align: left;
}
.p-topics-detail__photo {
  margin-bottom: 48px;
}
.p-topics-detail__photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

svg:has(#a-title.is-about) {
  max-width: 294.88px;
  height: 80px;
}
@media screen and (max-width: 600px) {
  svg:has(#a-title.is-about) {
    height: 50px;
  }
}
svg:has(#a-title.is-service) {
  max-width: 380px;
  height: 80px;
}
@media screen and (max-width: 600px) {
  svg:has(#a-title.is-service) {
    height: 50px;
  }
}
svg:has(#a-title.is-news) {
  max-width: 276px;
  height: 80px;
}
@media screen and (max-width: 600px) {
  svg:has(#a-title.is-news) {
    height: 50px;
  }
}

#a-catch-mask {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 10;
  width: 100%;
}

.word {
  position: relative;
  display: block;
  overflow: hidden;
  line-height: 1.3;
}

.rect {
  position: absolute;
  top: 0;
  left: -75%;
  width: 172%;
  height: 47px;
  background-image: linear-gradient(135deg, rgba(255, 255, 255, 0), rgb(255, 255, 255) 10%);
}

#b-path {
  fill: none;
  stroke: #f18d00;
  stroke-width: 130px;
}
#b-path path {
  stroke-dasharray: 2974;
  /* 線の長さ */
  stroke-dashoffset: 2974;
  /* 線の開始位置 */
}

#ring-path path,
#ring-path-shadow path,
#ring-path-shadow2 path {
  fill: none;
  stroke: #f18d00;
  stroke-linecap: round;
  stroke-miterlimit: 10;
  stroke-width: 56px;
  /* 線の太さ */
}
#ring-path path#ring-path1, #ring-path path#ring-path1-s, #ring-path path#ring-path1-s2,
#ring-path-shadow path#ring-path1,
#ring-path-shadow path#ring-path1-s,
#ring-path-shadow path#ring-path1-s2,
#ring-path-shadow2 path#ring-path1,
#ring-path-shadow2 path#ring-path1-s,
#ring-path-shadow2 path#ring-path1-s2 {
  stroke-dasharray: 420;
  /* 線の長さ */
  stroke-dashoffset: 420;
  /* 線の開始位置 */
}
#ring-path path#ring-path2, #ring-path path#ring-path2-s, #ring-path path#ring-path2-s2,
#ring-path-shadow path#ring-path2,
#ring-path-shadow path#ring-path2-s,
#ring-path-shadow path#ring-path2-s2,
#ring-path-shadow2 path#ring-path2,
#ring-path-shadow2 path#ring-path2-s,
#ring-path-shadow2 path#ring-path2-s2 {
  stroke-dasharray: 352.6;
  /* 線の長さ */
  stroke-dashoffset: 352.6;
  /* 線の開始位置 */
}
#ring-path path#ring-path3, #ring-path path#ring-path3-s, #ring-path path#ring-path3-s2,
#ring-path-shadow path#ring-path3,
#ring-path-shadow path#ring-path3-s,
#ring-path-shadow path#ring-path3-s2,
#ring-path-shadow2 path#ring-path3,
#ring-path-shadow2 path#ring-path3-s,
#ring-path-shadow2 path#ring-path3-s2 {
  stroke-dasharray: 1027.5;
  /* 線の長さ */
  stroke-dashoffset: 1027.5;
  /* 線の開始位置 */
}
#ring-path path#ring-path4, #ring-path path#ring-path4-s, #ring-path path#ring-path4-s2,
#ring-path-shadow path#ring-path4,
#ring-path-shadow path#ring-path4-s,
#ring-path-shadow path#ring-path4-s2,
#ring-path-shadow2 path#ring-path4,
#ring-path-shadow2 path#ring-path4-s,
#ring-path-shadow2 path#ring-path4-s2 {
  stroke-dasharray: 1000.8;
  /* 線の長さ */
  stroke-dashoffset: 1000.8;
  /* 線の開始位置 */
}
#ring-path-gray path,
#ring-path-shadow-gray path,
#ring-path-shadow2-gray path {
  /* 線の太さ */
  opacity: 0.5;
  fill: none;
  stroke: #e2e4ea;
  stroke-linecap: round;
  stroke-miterlimit: 10;
  stroke-width: 56px;
}

#ring-path-shadow path {
  opacity: 0.6;
  stroke: #1cbbce;
}

#ring-path-shadow2 path {
  opacity: 0.3;
  stroke: #838480;
}

#js-perticle {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100vh;
}

canvas {
  display: block;
}

/* ---- particles.js container ---- */
#particles-js {
  position: absolute;
  width: 100%;
  height: 100vh;
  background-color: transparent;
  background-image: url("");
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: cover;
}

/* ---- stats.js ---- */
.count-particles {
  position: absolute;
  top: 48px;
  left: 0;
  width: 80px;
  padding-bottom: 2px;
  font-family: "Helvetica", "Arial", sans-serif;
  font-size: 0.8em;
  font-weight: bold;
  line-height: 14px;
  color: #13e8e9;
  text-align: left;
  text-indent: 4px;
  background: #002;
}

#aboutAnimation .cls-1 {
  fill: rgba(214, 220, 230, 0.6);
}
#aboutAnimation .cls-1,
#aboutAnimation .cls-2,
#aboutAnimation .cls-3,
#aboutAnimation .cls-4,
#aboutAnimation .cls-5,
#aboutAnimation .cls-6,
#aboutAnimation .cls-7,
#aboutAnimation .cls-8,
#aboutAnimation .cls-9,
#aboutAnimation .cls-10,
#aboutAnimation .cls-11,
#aboutAnimation .cls-12,
#aboutAnimation .cls-13,
#aboutAnimation .cls-14,
#aboutAnimation .cls-15,
#aboutAnimation .cls-16,
#aboutAnimation .cls-17,
#aboutAnimation .cls-18,
#aboutAnimation .cls-19,
#aboutAnimation .cls-20,
#aboutAnimation .cls-21,
#aboutAnimation .cls-22,
#aboutAnimation .cls-23 {
  stroke-width: 0;
}
#aboutAnimation .cls-24 {
  fill: none;
  stroke: #717071;
  stroke-miterlimit: 10;
  stroke-width: 1px;
}
#aboutAnimation .cls-25 {
  opacity: 0.3;
}
#aboutAnimation .cls-26 {
  opacity: 0.6;
}
#aboutAnimation .cls-27 {
  opacity: 0.5;
}
#aboutAnimation .cls-2 {
  fill: #f4ae99;
}
#aboutAnimation .cls-3 {
  fill: #77d1de;
}
#aboutAnimation .cls-4 {
  fill: #77aede;
}
#aboutAnimation .cls-5 {
  fill: #5b9199;
}
#aboutAnimation .cls-6 {
  fill: #28803a;
}
#aboutAnimation .cls-7 {
  fill: #717071;
}
#aboutAnimation .cls-8 {
  fill: #366bac;
}
#aboutAnimation .cls-9 {
  fill: #1278b2;
}
#aboutAnimation .cls-10 {
  fill: #dbac00;
}
#aboutAnimation .cls-11 {
  fill: #c0c1bf;
}
#aboutAnimation .cls-12 {
  fill: #b2cad6;
}
#aboutAnimation .cls-13 {
  fill: #bcc1c4;
}
#aboutAnimation .cls-14 {
  fill: #bfc1d9;
}
#aboutAnimation .cls-15 {
  fill: #c1cbe4;
}
#aboutAnimation .cls-16 {
  fill: #ba937e;
}
#aboutAnimation .cls-17 {
  fill: #85b22f;
}
#aboutAnimation .cls-18 {
  fill: #7d98ce;
}
#aboutAnimation .cls-19 {
  fill: #e67f11;
}
#aboutAnimation .cls-20 {
  fill: #e77e12;
}
#aboutAnimation .cls-21 {
  fill: #e4603c;
}
#aboutAnimation .cls-22 {
  fill: #e83828;
}
#aboutAnimation .cls-23 {
  fill: #e78913;
}

.ripple {
  position: absolute;
  top: 67%;
  left: 58%;
  transform: translateX(-50%);
}
.ripple span {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  animation: animate 4.5s linear infinite;
}
@media screen and (max-width: 900px) {
  .ripple span {
    animation: animate-tb_min 4.5s linear infinite;
  }
}
@media screen and (max-width: 600px) {
  .ripple span {
    animation: animate-sp 4.5s linear infinite;
  }
}
.ripple span:nth-child(1) {
  animation-delay: 0s;
}
.ripple span:nth-child(2) {
  animation-delay: 1s;
}
.ripple span:nth-child(3) {
  animation-delay: 2s;
}
.ripple span:nth-child(4) {
  animation-delay: 3s;
}
.ripple span:nth-child(5) {
  animation-delay: 4s;
}
.ripple span:nth-child(6) {
  animation-delay: 5s;
}
.ripple span:nth-child(7) {
  animation-delay: 6s;
}
.ripple span:nth-child(8) {
  animation-delay: 7s;
}
.ripple span:nth-child(9) {
  animation-delay: 8s;
}
.ripple span:nth-child(10) {
  animation-delay: 9s;
}

@keyframes animate {
  0% {
    width: 0;
    height: 0;
    box-shadow: 0 0 15px rgba(241, 141, 0, 0.5);
  }
  50% {
    box-shadow: 0 0 15px rgba(241, 141, 0, 0.6) 0 0 15px rgba(241, 141, 0, 0.6);
  }
  90% {
    width: 700px;
    height: 700px;
    opacity: 1;
  }
  100% {
    width: 770px;
    height: 770px;
    box-shadow: 0 0 5px rgba(241, 141, 0, 0.7) 0 0 5px rgba(241, 141, 0, 0.7);
    opacity: 0;
  }
}
@keyframes animate-tb_min {
  0% {
    width: 0;
    height: 0;
    box-shadow: 0 0 15px rgba(241, 141, 0, 0.5);
  }
  50% {
    box-shadow: 0 0 15px rgba(241, 141, 0, 0.6) 0 0 15px rgba(241, 141, 0, 0.6);
  }
  90% {
    width: 600px;
    height: 600px;
    opacity: 1;
  }
  100% {
    width: 620px;
    height: 620px;
    box-shadow: 0 0 5px rgba(241, 141, 0, 0.7) 0 0 5px rgba(241, 141, 0, 0.7);
    opacity: 0;
  }
}
@keyframes animate-sp {
  0% {
    width: 0;
    height: 0;
    box-shadow: 0 0 15px rgba(241, 141, 0, 0.5);
  }
  50% {
    box-shadow: 0 0 15px rgba(241, 141, 0, 0.6) 0 0 15px rgba(241, 141, 0, 0.6);
  }
  90% {
    width: 300px;
    height: 300px;
    opacity: 1;
  }
  100% {
    width: 320px;
    height: 320px;
    box-shadow: 0 0 5px rgba(241, 141, 0, 0.7) 0 0 5px rgba(241, 141, 0, 0.7);
    opacity: 0;
  }
}
.a-hover-btn {
  position: relative;
  z-index: 1;
  overflow: hidden;
  transition: all 200ms ease;
}
.a-hover-btn span {
  position: relative;
  z-index: 3;
  color: currentcolor;
  transition: all 200ms ease;
}
.a-hover-btn::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  content: "";
  background-color: currentcolor;
  transition: transform 0.6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
  transform: scale(0, 1);
  transform-origin: right top;
}
.a-hover-btn svg path {
  transition: all 200ms ease;
}
.p-recruit__job-btn .a-hover-btn:hover {
  opacity: 1;
}
.a-hover-btn:hover span {
  color: #fff;
}
.a-hover-btn:hover::before {
  transform: scale(1, 1);
  transform-origin: left top;
}
.a-hover-btn:hover svg path {
  fill: #fff;
  stroke: currentcolor;
}
.p-recruit__job-btn .a-hover-btn:hover svg path {
  fill: var(--color-main);
  stroke: #fff;
}

.p-mission__vision-img .cls-1 {
  -webkit-mask: url("#mask");
          mask: url("#mask");
}
.p-mission__vision-img .cls-2 {
  fill: none;
  stroke-dasharray: 0 0 0 12.8;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 6.7px;
}
.p-mission__vision-img .cls-2,
.p-mission__vision-img .cls-3,
.p-mission__vision-img .cls-4,
.p-mission__vision-img .cls-5,
.p-mission__vision-img .cls-6 {
  stroke: #f18d00;
}
.p-mission__vision-img .cls-3 {
  stroke-width: 3.4px;
}
.p-mission__vision-img .cls-3,
.p-mission__vision-img .cls-4,
.p-mission__vision-img .cls-5,
.p-mission__vision-img .cls-7,
.p-mission__vision-img .cls-6 {
  fill: #fff;
}
.p-mission__vision-img .cls-4 {
  stroke-width: 3.2px;
}
.p-mission__vision-img .cls-8 {
  opacity: 0.6;
}
.p-mission__vision-img .cls-9 {
  fill-rule: evenodd;
}
.p-mission__vision-img .cls-9,
.p-mission__vision-img .cls-10,
.p-mission__vision-img .cls-11,
.p-mission__vision-img .cls-12,
.p-mission__vision-img .cls-13,
.p-mission__vision-img .cls-7,
.p-mission__vision-img .cls-14 {
  stroke-width: 0;
}
.p-mission__vision-img .cls-9,
.p-mission__vision-img .cls-11 {
  fill: rgba(241, 141, 0, 0.5);
}
.p-mission__vision-img .cls-5 {
  stroke-width: 4.8px;
}
.p-mission__vision-img .cls-10 {
  fill: rgba(255, 255, 255, 0.5);
}
.p-mission__vision-img .cls-15 {
  -webkit-mask: url("#mask-3");
          mask: url("#mask-3");
}
.p-mission__vision-img .cls-16 {
  -webkit-mask: url("#mask-2");
          mask: url("#mask-2");
}
.p-mission__vision-img .cls-17 {
  -webkit-mask: url("#mask-4");
          mask: url("#mask-4");
}
.p-mission__vision-img .cls-18 {
  -webkit-mask: url("#mask-1");
          mask: url("#mask-1");
}
.p-mission__vision-img .st11 {
  fill: none;
  stroke: #f18d00;
  stroke-miterlimit: 10;
  stroke-width: 1.1;
}
.p-mission__vision-img .cls-12 {
  fill: #838480;
}
.p-mission__vision-img .cls-13 {
  fill: #4d4d4d;
}
.p-mission__vision-img .cls-14 {
  fill: #f18d00;
}
.p-mission__vision-img .cls-6 {
  stroke-width: 4.2px;
}

#circle-path .cls-5 {
  fill: none;
  stroke: var(--color-main);
}

.a-line-mask {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 8px;
  background-color: #fff;
}
.c-sectionTtl .a-line-mask {
  height: 25%;
}

.u-bg-beige {
  background-color: #f7f7f7 !important;
}
.u-bg-accent {
  background-color: var(--color-accent) !important;
}
.u-bg-accent--l {
  background-color: #ddeff1 !important;
}
.u-bg-white {
  background-color: #fff !important;
}
.u-bg-wave {
  position: relative;
  z-index: 1;
  padding-block: var(--contents-space);
  margin-top: var(--contents-space);
}
.u-bg-wave::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 104px;
  content: "";
  background: url(../images/mask-white.svg) no-repeat center center/cover;
  transform: scale(-1, -1);
}
.u-bg-wave::after {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 104px;
  content: "";
  background: url(../images/mask-white.svg) no-repeat center center/cover;
}
.u-bg-wave--top {
  position: relative;
  z-index: 1;
  padding-top: var(--contents-space);
}
.u-bg-wave--top::after {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 104px;
  content: "";
  background: url(../images/mask-white2.svg) no-repeat center center/cover;
}
.u-bg-wave--bottom {
  position: relative;
  z-index: 1;
  padding-bottom: var(--contents-space);
}
.u-bg-wave--bottom::after {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 104px;
  content: "";
  background: url(../images/mask-white.svg) no-repeat center center/cover;
}

.u-color--key {
  color: var(--color-key);
}
.u-color--accent {
  color: var(--color-accent);
}
.u-color--accent3 {
  color: var(--color-accent3);
}
.u-color--text2 {
  color: var(--color-text2);
}
.u-color--gray {
  color: var(--color-gray);
}
.u-color--red {
  color: var(--color-red);
}
.u-color--pink {
  color: #f09d9d;
}
.u-color--blue {
  color: #1a6eb8 !important;
}

.u-d-sp--on {
  display: none !important;
}
@media screen and (max-width: 600px) {
  .u-d-sp--on {
    display: block !important;
  }
}
.u-d-sp--off {
  display: block !important;
}
@media screen and (max-width: 600px) {
  .u-d-sp--off {
    display: none !important;
  }
}
.u-d-tb_min--on {
  display: none;
}
@media screen and (max-width: 900px) {
  .u-d-tb_min--on {
    display: block;
  }
  .u-d-tb_min--on.p-header__btnNav {
    display: flex;
  }
}
.u-d-tb_min--off {
  display: block;
}
@media screen and (max-width: 900px) {
  .u-d-tb_min--off {
    display: none;
  }
}
.u-d-tb--on {
  display: none;
}
@media screen and (max-width: 1024px) {
  .u-d-tb--on {
    display: block;
  }
}
@media (max-width: 1500px) {
  .u-d-tb--on.p-header__btnNav {
    display: flex;
  }
}
.u-d-tb--off {
  display: block;
}
@media screen and (max-width: 1024px) {
  .u-d-tb--off {
    display: none;
  }
}

.u-flex__box {
  display: flex;
  align-items: center;
  gap: 140px 40px;
  flex-wrap: wrap;
}
.u-flex__box.is-gap--16 {
  gap: 16px;
}
.u-flex__box.is-gap--16 > div {
  width: calc((100% - 16px) / 2);
}
.u-flex__box.is-gap--16 > div > img {
  max-width: 100%;
}
.u-flex--sb {
  display: flex;
  justify-content: space-between;
}
.u-flex--start {
  display: flex;
  gap: 40px;
}
@media screen and (max-width: 600px) {
  .u-flex--start {
    flex-direction: column;
    gap: 0;
  }
}
.u-flex__item {
  width: calc(50% - 20px);
}
@media screen and (max-width: 600px) {
  .u-flex__item {
    width: 100%;
  }
}
.u-flex__item.w100 {
  width: 100%;
}
.u-flex__item ol, .u-flex__item ul {
  padding-left: 40px;
  list-style: initial;
}
@media screen and (max-width: 600px) {
  .u-flex__item ol, .u-flex__item ul {
    padding-inline: 24px;
  }
}
.u-flex__item ol li, .u-flex__item ul li {
  font-size: clamp(14px, 2.333vw, 14px);
  line-height: 2;
}

.u-ff--en {
  font-family: var(--ff-en);
}

.u-fs--11 {
  font-size: 11px;
  line-height: 1.4;
}
.u-fs--11_15 {
  font-size: clamp(11px, 1.833vw, 15px);
}
.u-fs--12 {
  font-size: 12px;
  line-height: 1.4;
}
.u-fs--12_18 {
  font-size: clamp(12px, 2vw, 18px);
}
.u-fs--12_21 {
  font-size: clamp(12px, 2vw, 21px);
  line-height: 1.4;
}
.u-fs--13 {
  font-size: 13px !important;
  line-height: 1.4;
}
.u-fs--13_14 {
  font-size: clamp(13px, 2.167vw, 14px);
}
.u-fs--13_15 {
  font-size: clamp(13px, 2.167vw, 15px);
}
.u-fs--13_20 {
  font-size: clamp(13px, 2.167vw, 20px);
}
.u-fs--14 {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
}
.u-fs--14_15 {
  font-size: clamp(14px, 2.333vw, 15px);
}
.u-fs--14_16 {
  font-size: clamp(14px, 2.333vw, 16px);
}
.u-fs--14_20 {
  font-size: clamp(14px, 2.333vw, 20px);
}
.u-fs--15 {
  font-size: 15px;
  line-height: 1.4;
}
.u-fs--16 {
  font-size: 16px;
}
.u-fs--16_18 {
  font-size: clamp(16px, 2.667vw, 18px);
}
.u-fs--17 {
  font-size: 17px;
}
.u-fs--18 {
  font-size: 18px;
}
.u-fs--20 {
  font-size: 20px;
}
.u-fs--24 {
  font-size: 24px;
}
.u-fs--25 {
  font-size: 25px;
}
.u-fs--30_42 {
  font-size: clamp(30px, 5vw, 42px);
}
.u-fs--32 {
  font-size: 32px;
}
.u-fs--42 {
  font-size: 42px;
}
.u-fs--45 {
  font-size: 45px;
}
.u-fs--43_60 {
  font-size: clamp(43px, 7.167vw, 60px);
}

.u-fw--400 {
  font-weight: 400;
}
.u-fw--500 {
  font-weight: 500;
}
.u-fw--600 {
  font-weight: 600;
}
.u-fw--700 {
  font-weight: 700;
}
.u-fw--800 {
  font-weight: 800;
}
.u-fw--900 {
  font-weight: 900;
}

.u-hexagon {
  position: relative;
  width: 120px;
  height: 69.28px;
  background-color: #d1e7dd;
  margin: 34.64px 0;
  text-align: center;
  line-height: 69.28px;
  font-size: 14px;
  color: #000;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}
.u-hexagon__container {
  position: relative;
  display: grid;
  gap: 10px;
}
.u-hexagon.is-center {
  background-color: #ffc107;
}
.u-hexagon.is-top {
  position: absolute;
  top: -100px;
  left: 50%;
  transform: translateX(-50%);
}
.u-hexagon.is-right {
  position: absolute;
  right: -130px;
  top: 50%;
  transform: translateY(-50%);
}
.u-hexagon.is-bottom {
  position: absolute;
  bottom: -100px;
  left: 50%;
  transform: translateX(-50%);
}
.u-hexagon.is-left {
  position: absolute;
  left: -130px;
  top: 50%;
  transform: translateY(-50%);
}

.u-hr--white {
  width: 100%;
  margin-block: 32px;
  border-top: 1px solid #fff;
}

.u-line-clamp--1 {
  -webkit-line-clamp: 1;
}
.u-line-clamp--2 {
  -webkit-line-clamp: 2;
}
.u-line-clamp--3 {
  -webkit-line-clamp: 3;
}
.u-line-clamp--4 {
  -webkit-line-clamp: 4;
}

[class*=u-line-clamp] {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
}

.u-lh--18 {
  line-height: 1.8;
}

.u-list li {
  line-height: 1.867;
  transform: rotate(0.05deg);
}
.u-list--disc {
  padding-left: 24px;
  list-style: disc;
}
.u-list--work-info {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}
.u-list--work-info li {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: calc(50% - 10px);
  aspect-ratio: 1/1;
  background-color: #fff;
  border-radius: 100px;
}

.u-mx--auto {
  margin-inline: auto;
}
.u-my--40_64 {
  margin-block: 64px;
}
@media screen and (max-width: 600px) {
  .u-my--40_64 {
    margin-block: 40px;
  }
}
.u-my--40_104 {
  margin-block: 104px;
}
@media screen and (max-width: 600px) {
  .u-my--40_104 {
    margin-block: 40px;
  }
}
.u-mr--0_a {
  margin-right: auto;
}
@media screen and (max-width: 600px) {
  .u-mr--0_a {
    margin-right: 0;
  }
}
.u-mb--0 {
  margin-bottom: 0;
}
.u-mb--8 {
  margin-bottom: 8px;
}
.u-mb--14 {
  margin-bottom: 14px;
}
.u-mb--16 {
  margin-bottom: 16px;
}
.u-mb--16_24 {
  margin-bottom: 24px;
}
@media screen and (max-width: 600px) {
  .u-mb--16_24 {
    margin-bottom: 16px;
  }
}
.u-mb--18 {
  margin-bottom: 18px;
}
.u-mb--24 {
  margin-bottom: 24px;
}
.u-mb--24_32 {
  margin-bottom: 32px;
}
@media screen and (max-width: 600px) {
  .u-mb--24_32 {
    margin-bottom: 24px;
  }
}
.u-mb--24_96 {
  margin-bottom: 96px;
}
@media screen and (max-width: 600px) {
  .u-mb--24_96 {
    margin-bottom: 24px;
  }
}
.u-mb--32 {
  margin-bottom: 32px !important;
}
.u-mb--32_48 {
  margin-bottom: 48px !important;
}
@media screen and (max-width: 600px) {
  .u-mb--32_48 {
    margin-bottom: 32px !important;
  }
}
.u-mb--32_64 {
  margin-bottom: 64px !important;
}
@media screen and (max-width: 600px) {
  .u-mb--32_64 {
    margin-bottom: 32px !important;
  }
}
.u-mb--40 {
  margin-bottom: 40px;
}
.u-mb--40_64 {
  margin-bottom: 64px;
}
@media screen and (max-width: 600px) {
  .u-mb--40_64 {
    margin-bottom: 40px;
  }
}
.u-mb--40_80 {
  margin-bottom: 80px;
}
@media screen and (max-width: 600px) {
  .u-mb--40_80 {
    margin-bottom: 40px;
  }
}
.u-mb--48 {
  margin-bottom: 48px;
}
.u-mb--48_72 {
  margin-bottom: 72px;
}
@media screen and (max-width: 600px) {
  .u-mb--48_72 {
    margin-bottom: 48px;
  }
}
.u-mb--48_96 {
  margin-bottom: 96px;
}
@media screen and (max-width: 600px) {
  .u-mb--48_96 {
    margin-bottom: 48px;
  }
}
.u-mb--60_120 {
  margin-bottom: 120px;
}
@media screen and (max-width: 600px) {
  .u-mb--60_120 {
    margin-bottom: 60px;
  }
}
.u-ml--m8 {
  margin-left: -8px;
}

.u-marker {
  display: inline;
  line-height: 1.3;
  background: linear-gradient(transparent 0%, #fff 0%);
}
.u-marker--dotted {
  display: inline;
  line-height: 2;
  background-image: radial-gradient(var(--color_accent) 40%, transparent 40%);
  background-repeat: repeat-x;
  background-size: 8px 8px;
  background-position: bottom 0 left 0;
}

.u-px--8 {
  padding-inline: 8px;
}
.u-px--16_0 {
  padding-inline: 0;
}
@media screen and (max-width: 900px) {
  .u-px--16_0 {
    padding-inline: 16px;
  }
}
.u-px--24_0 {
  padding-inline: 0;
}
@media screen and (max-width: 1024px) {
  .u-px--24_0 {
    padding-inline: 24px;
  }
}
.u-px--40 {
  padding-inline: 40px;
}
.u-px--56 {
  padding-inline: 56px;
}
@media screen and (max-width: 1024px) {
  .u-px--tb-0 {
    padding-inline: 0;
  }
  .u-px--tb-40 {
    padding-inline: 40px;
  }
}
@media screen and (max-width: 600px) {
  .u-px--sp-0 {
    padding-inline: 0;
  }
  .u-px--sp-16 {
    padding-inline: 16px;
  }
}
.u-py--0_80 {
  padding-block: 80px;
}
@media screen and (max-width: 600px) {
  .u-py--0_80 {
    padding-block: 0;
  }
}
.u-pl--24 {
  padding-left: 24px;
}
.u-pb--48_96 {
  padding-bottom: 96px;
}
@media screen and (max-width: 600px) {
  .u-pb--48_96 {
    padding-bottom: 48px;
  }
}

@media screen and (max-width: 600px) {
  .u-scroll-box {
    width: calc(100vw - 32px);
    padding-inline: 16px;
    overflow-x: auto;
  }
}

.u-speech-bubble {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 8px;
}
.u-speech-bubble::before {
  display: block;
  content: "＼";
}
.u-speech-bubble::after {
  display: block;
  content: "／";
}

.u-ta--center {
  text-align: center !important;
}
@media screen and (max-width: 600px) {
  .is-recruit .u-ta--center {
    text-align: left !important;
  }
}

.u-ta--right {
  text-align: right !important;
}

.u-ta--left {
  text-align: left !important;
}

.u-text-link {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin-block: 40px 72px;
  font-size: 16px;
  font-weight: 300;
  text-align: center;
  color: var(--color-text2);
}
.u-text-link.is-right {
  justify-content: flex-end;
  margin: 0;
}
.u-text-link.is-left {
  justify-content: flex-start;
  gap: 8px;
  margin-top: 20px;
  margin-bottom: 0;
  margin-left: 40px;
}
.u-text-link.is-left .arrow-right {
  margin-top: -2px;
  transform: rotate(-135deg);
}
.u-text-link .arrow-right {
  border-top-color: var(--color-green);
  border-right-color: var(--color-green);
}

.p-announcement__box.is-red .arrow-right {
  border-top-color: var(--color-accent2);
  border-right-color: var(--color-accent2);
}

.u-text-underline {
  display: inline;
  background: linear-gradient(transparent 85%, #63c40e 0%);
}
.u-text-underline--1 {
  position: relative;
  z-index: 0;
  display: inline;
  padding-bottom: 2px;
  line-height: 1.6;
}
.u-text-underline--1 span {
  position: relative;
  z-index: 2;
}
.u-text-underline--1::after {
  position: absolute;
  left: 0;
  bottom: 2px;
  z-index: 0;
  width: 100%;
  height: 10px;
  content: "";
  background: linear-gradient(to right, var(--r-color-key) 25%, transparent 100%);
}
.u-text-underline--2 {
  position: relative;
  z-index: 0;
  display: inline;
  padding-bottom: 2px;
  line-height: 1.6;
}
.u-text-underline--2 span {
  position: relative;
  z-index: 2;
}
.u-text-underline--2::after {
  position: absolute;
  left: 0;
  bottom: 2px;
  width: 100%;
  height: 24px;
  content: "";
  background: linear-gradient(to right, var(--r-color-key) 36%, var(--r-color-accent) 100%);
}
.u-text-underline--3 {
  position: relative;
  z-index: 0;
  display: inline;
  padding-bottom: 2px;
  line-height: 1.6;
}
.u-text-underline--3 span {
  position: relative;
  z-index: 2;
}
.u-text-underline--3::after {
  position: absolute;
  left: 0;
  bottom: 2px;
  width: 100%;
  height: 24px;
  content: "";
  background: linear-gradient(to right, #bde9ff 25%, transparent 100%);
}

.u-td--underline {
  text-decoration: underline;
}

.u-w--20 {
  width: 100% !important;
  max-width: 20% !important;
}
@media screen and (max-width: 600px) {
  .u-w--20 {
    max-width: 33% !important;
  }
}
.u-w--45 {
  width: 100% !important;
  max-width: 45% !important;
}
@media screen and (max-width: 600px) {
  .u-w--45 {
    max-width: 100% !important;
  }
}
.u-w--100 {
  width: 100% !important;
  max-width: initial !important;
}

.u-wm--tb {
  writing-mode: vertical-rl;
}
@media screen and (max-width: 600px) {
  .u-wm--tb_sp {
    padding-right: 16px;
    writing-mode: vertical-rl;
    white-space: pre;
  }
}

@supports (-webkit-touch-callout: none) {
  html {
    height: -webkit-fill-available;
  }
  body {
    min-height: 100vh;
    height: -webkit-fill-available;
  }
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--nav_height);
}

body {
  font-family: var(--ff-base) !important;
  color: var(--color-text);
}

a {
  transition: all 300ms ease-in-out;
}

@media (hover: hover) {
  a:hover {
    opacity: 0.8;
  }
}
symbol {
  display: none;
}

.u-flow > * + * {
  margin-top: 0 !important;
}/*# sourceMappingURL=style.css.map */