@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Oswald:wght@200..700&family=Shippori+Mincho&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Baskervville&family=Noto+Sans+JP:wght@100..900&family=Oswald:wght@200..700&family=Shippori+Mincho&display=swap");
*:where(:not(iframe, canvas, img, svg, video):not(svg *)) {
  all: unset;
  display: revert;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
}

textarea {
  form-sizing: content;
  white-space: revert;
}

:focus {
  outline: none;
}

html {
  height: -webkit-fill-available;
  background-color: #FFF;
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 100%;
  font-weight: 400;
  scroll-behavior: smooth;
  text-size-adjust: none; /* iPhone Safariの横向きで基本フォントサイズ拡大を防ぐ */
  word-break: auto-phrase; /* 日本語自動折返し */
}

body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-height: 100dvh;
}

main {
  flex-grow: 1;
}

picture, img {
  display: block;
  max-width: 100%;
  pointer-events: none;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 700;
}

strong {
  font-weight: 700;
}

b {
  font-weight: 500;
}

a, button, select {
  cursor: pointer;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 1000px #FFF inset !important;
  -webkit-text-fill-color: inherit !important;
}

input {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

input:where(:not([type=datetime]):not([type=date]):not([type=month]):not([type=week]):not([type=time]):not([type=datetime-local]))::-webkit-calendar-picker-indicator {
  display: none !important;
}

.l-header {
  position: sticky;
  top: 0;
  z-index: 9999;
  display: flex;
  justify-content: space-between;
  column-gap: 32px;
  width: 100%;
  padding: 30px min(64px, 4.5714285714%);
  background-color: #FFF;
}
@media screen and (max-width: 768px) {
  .l-header {
    padding: 16px 4%;
  }
}
.l-header__logo {
  position: relative;
  z-index: 10;
  white-space: nowrap;
  transition: color 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.l-header.is-active .l-header__logo {
  color: #FFF;
}
.l-header__logo__link {
  display: grid;
  grid-template-columns: 175px auto;
  grid-gap: 18px 16px;
  align-items: end;
}
@media screen and (max-width: 768px) {
  .l-header__logo__link {
    display: block;
    width: 200px;
  }
}
.l-header__logo__img {
  display: block;
  width: 100%;
  background-image: url(../images/common/logo-white.svg);
}
.l-header__logo__img > img {
  transition: opacity 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.l-header.is-active .l-header__logo__img > img {
  opacity: 0;
}
.l-header__logo__title {
  display: block;
  font-size: 1.125rem;
  font-weight: 200;
  line-height: 1.5;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
  .l-header__logo__title {
    display: none;
  }
}
.l-header__logo__sub-title {
  display: block;
  font-size: 1.125rem;
  line-height: 1;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
  .l-header__logo__sub-title {
    margin-top: 4px;
    font-size: 0.875rem;
  }
}
.l-header__button {
  position: relative;
  z-index: 10;
  display: block;
  width: 192px;
  height: 32px;
  margin-right: 0;
  margin-left: auto;
  background-color: #9c9282;
  color: #FFF;
  font-size: 0.875rem;
  line-height: 2.2857142857;
  text-align: center;
}
@media (any-hover: hover) {
  .l-header__button {
    transition: opacity 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .l-header__button:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 768px) {
  .l-header__button {
    display: none;
  }
}
.l-header__hamburger {
  position: relative;
  z-index: 10;
  display: block;
  width: 32px;
  height: 32px;
}
.l-header__hamburger > span {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: 100%;
  height: 1px;
  background-color: #000;
  transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.l-header.is-active .l-header__hamburger > span {
  background-color: #FFF;
}
.l-header__hamburger > span:nth-of-type(1) {
  top: 3px;
}
.l-header.is-active .l-header__hamburger > span:nth-of-type(1) {
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}
.l-header__hamburger > span:nth-of-type(2) {
  top: 15px;
}
.l-header.is-active .l-header__hamburger > span:nth-of-type(2) {
  width: 0;
}
.l-header__hamburger > span:nth-of-type(3) {
  top: 27px;
}
.l-header.is-active .l-header__hamburger > span:nth-of-type(3) {
  top: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
}
.l-header__nav {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 0;
  background-color: rgba(0, 0, 0, 0.8);
  transition: height 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  overflow: hidden;
}
.l-header.is-active .l-header__nav {
  height: 100vh;
  height: 100dvh;
}
.l-header__nav__list {
  max-height: 100%;
  overflow: auto;
  padding: 144px 0 96px;
}
@media screen and (max-width: 768px) {
  .l-header__nav__list {
    padding: 112px 0 64px;
  }
}
.l-header__nav__item {
  border-bottom: 1px solid #FFF;
}
.l-header__nav__link {
  position: relative;
  display: block;
  padding: 12px calc(min(64px, 4.5714285714%) + 64px) 12px min(64px, 4.5714285714%);
  color: #FFF;
  font-size: 0.875rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
  .l-header__nav__link {
    padding: 12px calc(4% + 64px) 12px 4%;
  }
}
.l-header__nav__link::before {
  content: "";
  position: absolute;
  top: 50%;
  right: min(64px, 4.5714285714%);
  width: 50px;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.5);
}
@media screen and (max-width: 768px) {
  .l-header__nav__link::before {
    right: 4%;
  }
}
.l-header__nav__link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: min(64px, 4.5714285714%);
  transform: rotate(45deg);
  transform-origin: top right;
  width: 9px;
  height: 9px;
  border-top: 1px solid rgba(255, 255, 255, 0.5);
  border-right: 1px solid transparent;
}
@media screen and (max-width: 768px) {
  .l-header__nav__link::after {
    right: 4%;
  }
}

.l-footer {
  padding: 52px 0;
  background-color: #FFF;
  display: grid;
  grid-template-columns: [full-start] minmax(4%, 1fr) [content-start] min(960px, 92%) [content-end] minmax(4%, 1fr) [full-end];
  overflow: hidden;
}
.l-footer > * {
  grid-column: content;
}
.l-footer > .is-full {
  grid-column: full;
}
.l-footer__inner {
  display: grid;
  grid-template-columns: 280px 1fr;
  grid-template-areas: "logo nav" "copy nav";
  grid-gap: 24px 72px;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .l-footer__inner {
    grid-template-columns: 100%;
    grid-template-areas: unset;
  }
}
.l-footer__logo {
  width: min(191px, 100%);
}
@media screen and (min-width: 768px) {
  .l-footer__logo {
    grid-area: logo;
  }
}
.l-footer__logo__link {
  display: block;
  width: fit-content;
}
.l-footer__logo__link > img {
  width: 191px;
}
.l-footer__logo__text {
  margin-top: 14px;
  display: block;
  font-size: 1rem;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0.1em;
  white-space: nowrap;
}
.l-footer__nav {
  display: flex;
  column-gap: 52px;
}
@media screen and (min-width: 768px) {
  .l-footer__nav {
    grid-area: nav;
  }
}
@media screen and (max-width: 768px) {
  .l-footer__nav {
    display: block;
  }
}
.l-footer__nav__link {
  position: relative;
  display: block;
  width: fit-content;
  padding-left: 18px;
  color: #645144;
  font-size: 0.875rem;
  line-height: 1.7142857143;
}
@media (any-hover: hover) {
  .l-footer__nav__link {
    transition: opacity 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .l-footer__nav__link:hover {
    opacity: 0.7;
  }
}
.l-footer__nav__link::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 12px;
  height: 12px;
  border-radius: 100%;
  background-color: #645144;
}
.l-footer__copyright {
  margin-top: auto;
  font-family: "Oswald", sans-serif;
  font-size: 0.875rem;
  font-weight: 300;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 768px) {
  .l-footer__copyright {
    grid-area: copy;
  }
}

.l-aside {
  background-color: #3f3e3b;
  color: #FFF;
  display: grid;
  grid-template-columns: [full-start] minmax(4%, 1fr) [content-start] min(960px, 92%) [content-end] minmax(4%, 1fr) [full-end];
  overflow: hidden;
}
.l-aside > * {
  grid-column: content;
}
.l-aside > .is-full {
  grid-column: full;
}
@media (any-hover: hover) {
  .l-aside {
    transition: opacity 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .l-aside:hover {
    opacity: 0.7;
  }
}
.l-aside__inner {
  display: grid;
  grid-template-columns: min(320px, 50%) 1fr;
  column-gap: 16px;
}
@media screen and (max-width: 768px) {
  .l-aside__inner {
    grid-column: full;
    padding-right: 4%;
  }
}
.l-aside__thumb > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.l-aside__content {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  column-gap: 54px;
  padding: 23px 0 28px;
}
.l-aside__description {
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.1em;
}
.l-aside__link {
  display: block;
  padding-right: 22px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7.49 12.2'%3E%3Cpolyline fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' points='.5 11.7 6.99 6.1 .5 .5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 100% 50%;
  background-size: 8px;
}
.l-aside__link > img {
  width: 134px;
}
.l-aside__link__text {
  margin-top: 10px;
  display: block;
  font-family: "Oswald", sans-serif;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0.1em;
  white-space: nowrap;
}

.l-main__head--white, .l-main__head {
  padding: 180px 0 190px;
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  .l-main__head--white, .l-main__head {
    padding: 96px 0 80px;
  }
}

@media screen and (min-width: 768px) {
  .l-main {
    background-image: linear-gradient(#f6f4ed, #f6f4ed);
    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 320px 1984px;
  }
}
.l-main__head--white {
  color: #FFF;
}
@media screen and (max-width: 768px) {
  .l-main__head--white {
    text-shadow: 0 0 8px rgb(0, 0, 0);
  }
}
.l-main__head--white .l-main__head__title__ja {
  border-top-color: #FFF;
}
.l-main__head__title {
  width: fit-content;
  min-width: min(100%, 320px);
}
.l-main__head__title.is-center {
  margin-inline: auto;
  text-align: center;
}
.l-main__head__title__en {
  font-family: "Baskervville", serif;
  font-size: 2.125rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.3em;
}
.l-main__head__title__ja {
  padding-top: 9px;
  margin-top: 11px;
  border-top: 1px solid #000;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.7142857143;
}
.l-main__head__catchphrase {
  margin-top: 28px;
  font-family: "Shippori Mincho", serif;
  font-size: 3.125rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0.1em;
}
.l-main__head__catchphrase::first-letter {
  font-size: 1.4em;
  text-shadow: 0 0 7px rgba(255, 255, 255, 0.6);
  vertical-align: bottom;
}
@media screen and (max-width: 768px) {
  .l-main__head__catchphrase {
    font-size: 2.25rem;
  }
}
.l-main__head__text {
  margin-top: 60px;
  max-width: min(100%, 320px);
  font-size: 0.875rem;
  line-height: 1.7142857143;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .l-main__head__text {
    margin-top: 48px;
  }
}
.l-main__block {
  padding: 128px 0;
  color: #0e050b;
}
@media screen and (max-width: 768px) {
  .l-main__block {
    padding: 80px 0;
  }
}
.l-main__block__box + .l-main__block__box {
  margin-top: 128px;
}
@media screen and (max-width: 768px) {
  .l-main__block__box + .l-main__block__box {
    margin-top: 64px;
  }
}
.l-main__block__box__row {
  display: grid;
  grid-template-columns: 40% 53.3333333333%;
  grid-gap: 24px 6.6666666667%;
}
@media screen and (max-width: 768px) {
  .l-main__block__box__row {
    grid-template-columns: 100%;
  }
}
.l-main__block__box__row.in-label {
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-main__block__box__row.in-label .l-main__block__box__img {
    position: absolute;
    top: 0;
    right: 0;
    width: 53.3333333333%;
  }
}
@media screen and (min-width: 768px) {
  .l-main__block__box__row.in-label.is-reverse .l-main__block__box__img {
    right: auto;
    left: 0;
  }
}
@media screen and (min-width: 768px) {
  .l-main__block__box__row.is-reverse {
    direction: rtl;
  }
  .l-main__block__box__row.is-reverse .l-main__block__box__content {
    direction: ltr;
  }
}
.l-main__block__box__row + .l-main__block__box__row {
  margin-top: 64px;
}
@media screen and (max-width: 768px) {
  .l-main__block__box__row + .l-main__block__box__row {
    margin-top: 32px;
  }
}
.l-main__block__box__img {
  width: 100%;
}
.l-main__block__box__img > img {
  width: 100%;
}
.l-main__block__box__label {
  position: relative;
  margin-bottom: 52px;
}
@media screen and (max-width: 768px) {
  .l-main__block__box__label {
    margin-bottom: 32px;
  }
}
.l-main__block__box__label__num {
  position: absolute;
  top: 0;
  left: 0;
  color: #fb5a14;
  font-family: "Oswald", sans-serif;
  font-size: 1.875rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .l-main__block__box__label__num {
    font-size: 1.5rem;
  }
}
.l-main__block__box__label__title {
  padding-left: 45px;
  font-family: "Shippori Mincho", serif;
  font-size: 1.875rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .l-main__block__box__label__title {
    padding-left: 40px;
    font-size: 1.5rem;
  }
}
.l-main__block__box__label__sub {
  padding-left: 45px;
  margin-top: 8px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .l-main__block__box__label__sub {
    padding-left: 40px;
  }
}
.l-main__block__box__mini-label {
  margin-bottom: 16px;
  font-family: "Shippori Mincho", serif;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0.1em;
}
.l-main__block__box__text {
  font-size: 0.875rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.l-main__block__box__content:only-child {
  grid-column: 1/-1;
}
.l-main__block__box__list:not(:first-child) {
  margin-top: 42px;
}
@media screen and (max-width: 768px) {
  .l-main__block__box__list:not(:first-child) {
    margin-top: 32px;
  }
}
.l-main__block__box__item {
  display: grid;
  grid-template-columns: 30% 1fr;
  grid-gap: 24px 3.3333333333%;
}
.l-main__block__box__item + .l-main__block__box__item {
  margin-top: 48px;
}
@media screen and (max-width: 768px) {
  .l-main__block__box__item {
    grid-template-columns: 100%;
  }
  .l-main__block__box__item + .l-main__block__box__item {
    margin-top: 24px;
  }
}

.l-section {
  display: grid;
  grid-template-columns: [full-start] minmax(4%, 1fr) [content-start] min(960px, 92%) [content-end] minmax(4%, 1fr) [full-end];
  overflow: hidden;
}
.l-section > * {
  grid-column: content;
}
.l-section > .is-full {
  grid-column: full;
}

.c-dialog {
  position: fixed;
  inset: 0;
  margin: auto;
}
@media screen and (min-width: 768px) {
  .p-home {
    background-size: 320px 3298px;
  }
}
.p-home__mv {
  padding: 213px 0 265px;
  background-image: url(../images/home/bg-mv.webp);
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  .p-home__mv {
    padding: 128px 0;
  }
}
.p-home__mv__logo {
  width: min(90%, 222px);
  margin: 0 auto;
}
.p-home__mv__text {
  width: min(100%, 640px);
  margin: 76px auto 0;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.05em;
}
.p-home__quality {
  padding-top: 144px 0 68px;
}
@media screen and (max-width: 768px) {
  .p-home__quality {
    padding: 64px 0 32px;
  }
}
.p-home__quality .l-main__head__catchphrase::first-letter {
  font-size: 1em;
  text-shadow: none;
}
.p-home__quality .l-main__head__text {
  max-width: min(100%, 672px);
}
.p-home__quality__slider {
  margin-top: 106px;
}
@media screen and (max-width: 768px) {
  .p-home__quality__slider {
    margin-top: 64px;
  }
}
.p-home__quality__slider .tns-liveregion.tns-visually-hidden {
  display: none;
}
.p-home__quality__slider__item {
  width: min(92vw, 600px);
}
.p-home__quality__slider__thumb {
  display: block;
}
.p-home__quality__slider__content {
  padding: 36px 32px 32px;
}
@media screen and (max-width: 768px) {
  .p-home__quality__slider__content {
    padding: 24px 16px 16px;
  }
}
.p-home__quality__slider__title {
  position: relative;
  margin-left: 48px;
  color: #645144;
  font-family: "Shippori Mincho", serif;
  font-size: 1.625rem;
  font-weight: 400;
  line-height: 1.2307692308;
  letter-spacing: 0.1em;
}
.p-home__quality__slider__title > span {
  position: absolute;
  top: 2px;
  left: -48px;
  display: block;
  width: 32px;
  height: 32px;
  border: 1px solid #645144;
  border-radius: 100%;
  font-family: "Oswald", sans-serif;
  font-size: 1.25rem;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-home__quality__slider__title {
    margin-left: 32px;
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.4;
  }
  .p-home__quality__slider__title > span {
    top: 4px;
    left: -32px;
    width: 24px;
    height: 24px;
    font-size: 1rem;
    line-height: 1.375;
  }
}
.p-home__quality__slider__text {
  padding-top: 11px;
  margin-top: 13px;
  margin-left: 48px;
  border-top: 1px solid #645144;
  color: #3f3e3b;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .p-home__quality__slider__text {
    margin-left: 32px;
    padding-top: 8px;
    margin-top: 8px;
    line-height: 1.7142857143;
  }
}
.p-home__reference {
  padding: 36px 0 60px;
  background-color: #3f3e3b;
  color: #FFF;
}
@media screen and (max-width: 768px) {
  .p-home__reference {
    padding: 32px 0 48px;
  }
}
.p-home__reference__title {
  margin-bottom: 18px;
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.1em;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-home__reference__title {
    margin-bottom: 16px;
    font-size: 1.5rem;
    line-height: 1.3333333333;
  }
}
.p-home__reference__text {
  font-size: 0.75rem;
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
}
.p-home__reference__content {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr));
  grid-gap: 32px;
  margin-top: 28px;
}
.p-home__reference__content__label {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 16px;
  padding: 8px 16px;
  border-radius: 99px;
  background-color: #FFF;
  color: #000;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: center;
}
.p-home__reference__content__label > span:nth-of-type(2) {
  position: relative;
}
.p-home__reference__content__label > span:nth-of-type(2)::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -8px;
  transform: translateY(-50%);
  width: 1px;
  height: 16px;
  background-color: #645144;
}
.p-home__reference__content__calc {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  gap: 8px 16px;
  margin-top: 8px;
}
@media screen and (max-width: 768px) {
  .p-home__reference__content__calc {
    margin-top: 24px;
  }
}
.p-home__reference__content__calc__detail {
  display: flex;
  align-items: center;
  column-gap: 56px;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.6875;
  letter-spacing: 0.05em;
}
.p-home__reference__content__calc__detail > span:nth-of-type(1) {
  display: block;
  padding: 0 13px;
  border: 1px solid #FFF;
}
.p-home__reference__content__calc__detail > span:nth-of-type(2) {
  position: relative;
}
.p-home__reference__content__calc__detail > span:nth-of-type(2)::before, .p-home__reference__content__calc__detail > span:nth-of-type(2)::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -41px;
  transform: translateY(-50%);
  width: 28px;
  height: 2px;
  background-color: #FFF;
}
.p-home__reference__content__calc__detail > span:nth-of-type(2)::after {
  transform: translateY(-50%) rotate(90deg);
}
.p-home__reference__content__calc__num {
  margin-left: auto;
  font-size: 1.5rem;
  line-height: 1;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .p-home__reference__content__calc__num {
    font-size: 1.25rem;
  }
}
.p-home__reference__content__calc__num > strong {
  margin-inline: 0.09375em;
  font-family: "Oswald", sans-serif;
  font-size: 2.6666666667em;
  font-weight: 400;
  line-height: 1;
  vertical-align: sub;
}
.p-home__reference__content__bonus {
  margin-top: 8px;
  margin-bottom: 12px;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.p-home__reference__content__bonus > strong {
  margin-inline: 0.25em;
  font-family: "Oswald", sans-serif;
  font-size: 1.5em;
  font-weight: 400;
  line-height: 1;
}
.p-home__reference__entry {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 24px 16px;
  margin-top: 36px;
}
.p-home__reference__entry__num {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.05em;
}
.p-home__reference__entry__num > strong {
  margin-inline: 0.15em;
  font-family: "Oswald", sans-serif;
  font-size: 2.5em;
  font-weight: 200;
  line-height: 1;
  vertical-align: -0.2em;
}
.p-home__reference__entry__wrap {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 320px));
  grid-gap: 24px 32px;
  justify-content: center;
  width: min(100%, 672px);
}
@media screen and (max-width: 768px) {
  .p-home__reference__entry__wrap {
    grid-template-columns: min(100%, 320px);
  }
}
.p-home__reference__entry__button, .p-home__reference__entry__button--orange {
  position: relative;
  display: block;
  padding: 10px 50px 10px 48px;
  border: 2px solid #FFF;
  border-radius: 4px;
  background-color: #9c9282;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20.83 25.6'%3E%3Cpath fill='%23fff' d='M11.43 12.61c-.32.11-.66.17-1.01.17s-.69-.06-1.01-.17c-2.31.38-3.52 2.08-3.52 4.14h9.07c0-2.06-1.21-3.76-3.52-4.14Z'/%3E%3Cpath fill='%23fff' d='M10.42 12.04c1.37 0 2.48-1.11 2.48-2.48v-.7c0-1.37-1.11-2.48-2.48-2.48s-2.48 1.11-2.48 2.48v.7c0 1.37 1.11 2.48 2.48 2.48Z'/%3E%3Cpath fill='%23fff' d='M16.54 0H4.29C1.93 0 0 1.93 0 4.29v17.01c0 2.37 1.93 4.29 4.29 4.29h10.94l.47-.47 4.66-4.66.47-.47V4.29c0-2.37-1.93-4.29-4.29-4.29ZM19.24 19.35h-2.41c-1.24 0-2.25 1.01-2.25 2.25v2.41H4.29c-1.49 0-2.7-1.21-2.7-2.7V4.29c0-1.49 1.21-2.7 2.7-2.7h12.24c1.49 0 2.7 1.21 2.7 2.7v15.05Z'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7.49 12.2'%3E%3Cpolyline fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' points='.5 11.7 6.99 6.1 .5 .5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 20px 50%, calc(100% - 16px) 50%;
  background-size: 21px, 8px;
  color: #FFF;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}
.p-home__reference__entry__button--orange {
  background-color: #fb5a14;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 25.6 24.37'%3E%3Cpath fill='%23fff' d='M25.18 7.18l-.93-.93c-.56-.56-1.48-.56-2.04 0l-.87.87 2.97 2.97.87-.87c.56-.56.56-1.48 0-2.04Z'/%3E%3Cpath fill='%23fff' d='M13.2 15.26v2.97h2.97l7.33-7.33-2.97-2.97-7.33 7.33z'/%3E%3Crect fill='%23fff' x='6.06' y='6.5' width='8.38' height='1.4'/%3E%3Crect fill='%23fff' x='6.06' y='11.62' width='8.38' height='1.4'/%3E%3Crect fill='%23fff' x='6.06' y='16.74' width='5.12' height='1.4'/%3E%3Cpath fill='%23fff' d='M18.63 22.12c0 .21-.17.39-.39.39H2.25c-.21 0-.39-.17-.39-.39V2.25c0-.21.17-.39.39-.39h15.99c.21 0 .39.17.39.39v5.61l1.86-1.86V2.25c0-1.24-1.01-2.25-2.25-2.25H2.25C1.01 0 0 1.01 0 2.25v19.87c0 1.24 1.01 2.25 2.25 2.25h15.99c1.24 0 2.25-1.01 2.25-2.25v-6.23l-1.86 1.86v4.37Z'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7.49 12.2'%3E%3Cpolyline fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' points='.5 11.7 6.99 6.1 .5 .5'/%3E%3C/svg%3E");
  background-position: 18px 50%, calc(100% - 16px) 50%;
  background-size: 26px, 8px;
}
.p-home__recruit {
  padding: 128px 0 88px;
  background-color: #FFF;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 378.92 86.24'%3E%3ClinearGradient id='g' x1='189.46' y1='0' x2='189.46' y2='86.24' gradientUnits='userSpaceOnUse'%3E%3Cstop offset='0' stop-color='%23fff'/%3E%3Cstop offset='1' stop-color='%23f6f4ed'/%3E%3C/linearGradient%3E%3Cpath fill='url(%23g)' d='M378.92 34.08c-68.66 33.41-145.77 52.15-227.25 52.15C98.91 86.23 48 78.37 0 63.77V0h378.92v34.08Z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 50% 403px;
  background-size: 1430px;
}
@media screen and (max-width: 768px) {
  .p-home__recruit {
    padding: 80px 0 64px;
    background-position-y: 200px;
    background-size: 100%;
  }
}
.p-home__recruit .l-main__head__title {
  margin-inline: auto;
  text-align: center;
}
.p-home__recruit__staff {
  margin-top: 80px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  grid-gap: 32px;
}
@media screen and (max-width: 768px) {
  .p-home__recruit__staff {
    margin-top: 48px;
  }
}
.p-home__recruit__staff__box {
  background-color: #ece7de;
  display: grid;
  grid-template-columns: 160px 1fr;
  align-items: center;
  column-gap: 24px;
}
@media screen and (max-width: 768px) {
  .p-home__recruit__staff__box {
    grid-template-columns: 120px 1fr;
    column-gap: 16px;
  }
}
.p-home__recruit__staff__thumb > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-home__recruit__staff__name {
  font-family: "Shippori Mincho", serif;
  font-size: 1.875rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .p-home__recruit__staff__name {
    font-size: 1.5rem;
  }
}
.p-home__recruit__staff__name--en {
  margin-top: 8px;
  color: #645144;
  font-family: "Oswald", sans-serif;
  font-size: 0.75rem;
  font-weight: 200;
  line-height: 1;
  letter-spacing: 0.1em;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .p-home__recruit__staff__name--en {
    font-size: 0.625rem;
  }
}
.p-home__recruit__staff__detail {
  margin-top: 16px;
  color: #645144;
  font-size: 0.875rem;
  line-height: 1.5714285714;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .p-home__recruit__staff__detail {
    font-size: 0.75rem;
  }
}
.p-home__recruit__comment {
  margin-top: 115px;
  display: grid;
  grid-template-columns: [full-start] minmax(4%, 1fr) [content-start] min(960px, 92%) [content-end] minmax(4%, 1fr) [full-end];
  overflow: hidden;
}
.p-home__recruit__comment > * {
  grid-column: content;
}
.p-home__recruit__comment > .is-full {
  grid-column: full;
}
@media screen and (max-width: 768px) {
  .p-home__recruit__comment {
    margin-top: 64px;
  }
}
.p-home__recruit__comment__row + .p-home__recruit__comment__row {
  margin-top: 48px;
}
.p-home__recruit__comment__row.is-thumb-left, .p-home__recruit__comment__row.is-thumb-right {
  grid-column: full;
  display: grid;
  grid-template-columns: [full-start] minmax(4%, 1fr) [content-start] min(960px, 92%) [content-end] minmax(4%, 1fr) [full-end];
  overflow: hidden;
}
.p-home__recruit__comment__row.is-thumb-left > *, .p-home__recruit__comment__row.is-thumb-right > * {
  grid-column: content;
}
.p-home__recruit__comment__row.is-thumb-left > .is-full, .p-home__recruit__comment__row.is-thumb-right > .is-full {
  grid-column: full;
}
@media screen and (min-width: 768px) {
  .p-home__recruit__comment__row.is-thumb-left .p-home__recruit__comment__content {
    padding-top: 20px;
    padding-left: 320px;
  }
}
.p-home__recruit__comment__row.is-thumb-right .p-home__recruit__comment__thumb > img {
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .p-home__recruit__comment__row.is-thumb-right .p-home__recruit__comment__content {
    padding-top: 20px;
    padding-right: 320px;
  }
}
.p-home__recruit__comment__thumb {
  grid-column: full !important;
  width: 100%;
  max-width: 1400px;
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-home__recruit__comment__thumb {
    grid-area: 1/-1;
  }
}
@media screen and (max-width: 768px) {
  .p-home__recruit__comment__thumb {
    margin-bottom: 24px;
  }
}
.p-home__recruit__comment__thumb > img {
  width: min(480px, 40%);
}
@media screen and (max-width: 768px) {
  .p-home__recruit__comment__thumb > img {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .p-home__recruit__comment__content {
    grid-area: 1/-1;
  }
}
.p-home__recruit__comment__title {
  font-family: "Shippori Mincho", serif;
  font-size: 1.875rem;
  font-weight: 400;
  line-height: 1.5333333333;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .p-home__recruit__comment__title {
    font-size: 1.5rem;
  }
}
.p-home__recruit__comment__text {
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.05em;
}
.p-home__recruit__comment__title + .p-home__recruit__comment__text {
  margin-top: 28px;
}
@media screen and (max-width: 768px) {
  .p-home__recruit__comment__title + .p-home__recruit__comment__text {
    margin-top: 24px;
  }
}
.p-home__recruit__comment__name {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
}
.p-home__recruit__slider {
  margin-top: 86px;
}
@media screen and (max-width: 768px) {
  .p-home__recruit__slider {
    margin-top: 64px;
  }
}
.p-home__recruit__slider .tns-ovh {
  overflow: visible;
}
.p-home__recruit__slider .tns-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 10px;
  margin-top: 48px;
}
@media screen and (max-width: 768px) {
  .p-home__recruit__slider .tns-nav {
    margin-top: 32px;
  }
}
.p-home__recruit__slider .tns-nav > button {
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 100%;
  background-color: #ece7de;
}
.p-home__recruit__slider .tns-nav > button.tns-nav-active {
  background-color: #fb5a14;
}
.p-home__recruit__slider__link {
  position: relative;
  display: grid;
  grid-template-columns: 112px 1fr;
  grid-column-gap: 16px;
  padding: 24px 18px 24px 24px;
  border-left: 2px solid #645144;
}
@media screen and (max-width: 768px) {
  .p-home__recruit__slider__link {
    padding: 12px;
  }
}
@media (any-hover) {
  .p-home__recruit__slider__link {
    transition: background-color 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .p-home__recruit__slider__link:hover {
    background-color: #ece7de;
  }
}
.p-home__recruit__slider__link__label {
  position: absolute;
  right: 18px;
  bottom: 24px;
  display: block;
  padding-right: 16px;
  font-size: 0.75rem;
  line-height: 1.1666666667;
}
.p-home__recruit__slider__link__label::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 8px;
  height: 13px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7.49 12.2'%3E%3Cpolyline fill='none' stroke='%23645144' stroke-linecap='round' stroke-linejoin='round' points='.5 11.7 6.99 6.1 .5 .5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 768px) {
  .p-home__recruit__slider__link__label {
    right: 12px;
    bottom: 12px;
  }
}
.p-home__recruit__slider__label {
  font-size: 1rem;
  line-height: 1.375;
  letter-spacing: 0.05em;
}

.p-training__button {
  position: relative;
  display: block;
  width: min(100%, 320px);
  padding: 10px 50px 10px 48px;
  border: 2px solid #645144;
  border-radius: 4px;
  background-color: #FFF;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18.95 24.19'><path fill='%23645144' d='M18.79 20.31c-.09-.35-.23-.67-.39-.96-.29-.5-.67-.88-1.1-1.19-.32-.23-.66-.42-1-.58-.52-.24-1.05-.43-1.53-.61-.49-.18-.93-.36-1.28-.56-.13-.07-.24-.15-.34-.23-.15-.12-.26-.25-.35-.4-.08-.15-.14-.31-.16-.52-.02-.15-.02-.29-.02-.42 0-.39.06-.73.13-1.07.22-.25.42-.54.61-.89.19-.35.37-.76.55-1.25.11-.05.23-.12.34-.19.26-.17.5-.41.71-.74.2-.32.37-.72.48-1.22.03-.14.05-.27.05-.41 0-.28-.07-.55-.18-.79-.08-.16-.17-.32-.29-.45.06-.22.13-.5.19-.84.09-.47.16-1.04.16-1.63 0-.38-.03-.78-.11-1.17-.06-.29-.14-.58-.27-.86-.18-.42-.45-.81-.81-1.14-.34-.3-.77-.54-1.28-.7-.22-.26-.44-.48-.68-.67-.39-.31-.8-.52-1.22-.65-.42-.13-.85-.17-1.27-.17-.22 0-.45.01-.67.03-.21.02-.38.04-.54.07-.23.04-.43.09-.61.16-.19.06-.37.14-.6.23-.09.04-.21.09-.35.16-.25.12-.57.31-.91.56-.51.38-1.07.92-1.51 1.65-.22.36-.41.78-.54 1.24-.13.46-.21.97-.21 1.53 0 .35.03.71.09 1.09 0 .03 0 .05 0 .08 0 .05 0 .1.01.15 0 .08.02.16.02.22 0 .03 0 .06 0 .09 0 .01 0 .02 0 .03v.05l.09.42c-.13.15-.25.31-.34.49-.13.25-.2.54-.2.84 0 .13.01.27.05.41.07.33.17.62.29.87.18.38.4.67.64.89.19.17.39.29.6.39.18.49.36.9.55 1.25.19.35.39.64.61.89.07.35.13.68.13 1.08 0 .13 0 .27-.02.42-.01.14-.05.26-.09.38-.07.16-.16.3-.3.44-.13.13-.3.25-.5.37-.2.12-.44.22-.7.33-.45.18-.96.36-1.49.56-.39.16-.79.33-1.16.56-.28.17-.56.36-.81.59-.37.34-.7.77-.92 1.3-.26.65-.38 1.28-.38 2.02 0 .1.02.2.06.3.03.09.08.17.13.24.1.14.24.27.4.39.29.21.67.41 1.16.59.74.28 1.72.53 3 .71 1.28.18 2.84.29 4.73.29 1.64 0 3.03-.09 4.2-.23.88-.1 1.64-.24 2.28-.4.48-.12.9-.25 1.26-.38.27-.1.5-.21.71-.32.15-.08.29-.17.41-.25.18-.13.32-.26.43-.42.05-.08.1-.16.13-.24.03-.09.05-.18.05-.28 0-.51-.06-.96-.17-1.37Z M8.65 20.66l-2.79-3.57c.15-.08.28-.18.41-.28.14-.11.27-.23.38-.38l2.03.94-.43.72.67.71-.27 1.85Z M6.94 15.96c.08-.19.14-.4.16-.63.02-.17.03-.34.03-.5 0-.52-.09-.95-.17-1.35l-.02-.11-.08-.08c-.19-.2-.38-.46-.56-.81-.18-.34-.37-.77-.56-1.31l-.06-.17-.17-.06c-.12-.04-.24-.1-.35-.18-.17-.12-.33-.27-.48-.5-.15-.23-.28-.54-.38-.97-.02-.08-.03-.16-.03-.23 0-.17.04-.33.12-.48.06-.13.15-.25.26-.36.18.28.33.49.39.55.18.18.12.12.18.04 0 0 .2-.28 1.27-2.36 2.13.47 5.86-2.73 5.86-2.73 0 0 .04 1.03.76 1.98.67.9 1.06 3.01 1.06 3.01 0 0 .09-.17.23-.41.08.1.15.2.2.31.07.15.1.3.1.45 0 .08 0 .15-.03.23-.06.28-.14.51-.23.71-.14.29-.29.49-.45.63-.16.15-.34.24-.52.31l-.17.06-.06.17c-.19.54-.37.96-.56 1.31-.19.35-.37.6-.56.81l-.08.08-.02.11c-.09.39-.17.83-.17 1.35 0 .16 0 .32.03.5.02.21.07.4.14.57v.02l-2.4 1.26-2.66-1.23Z M10.5 20.79l-.29-1.98.67-.71-.43-.72 1.83-.96c.05.07.1.13.16.19.18.19.39.34.62.48l-2.56 3.71Z' /></svg>"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7.49 12.2'%3E%3Cpolyline fill='none' stroke='%23645144' stroke-linecap='round' stroke-linejoin='round' points='.5 11.7 6.99 6.1 .5 .5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 21px 50%, calc(100% - 16px) 50%;
  background-size: 19px, 8px;
  color: #645144;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-training__button {
    width: 100%;
  }
}

.p-environment__benefits {
  padding: 80px 0 96px;
  margin-top: 128px;
  background-color: #ece7de;
}
@media screen and (max-width: 768px) {
  .p-environment__benefits {
    padding: 64px 0 80px;
    margin-top: 80px;
  }
}
.p-environment__benefits__block {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 32px 24px;
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .p-environment__benefits__block {
    gap: 24px 16px;
    margin-top: 48px;
  }
}
.p-environment__benefits__block__empty {
  width: calc(((100% - 48px) / 3 - 24px) / 2);
}
.p-environment__benefits__block__box {
  width: calc((100% - 48px) / 3);
  padding: 44px 30px 30px;
  border: 1px solid #ccc3b4;
  border-radius: 6px;
  background-color: #FFF;
  color: #645144;
}
@media screen and (max-width: 768px) {
  .p-environment__benefits__block__box {
    width: 100%;
    padding: 24px 16px 16px;
  }
}
.p-environment__benefits__block__icon {
  width: 108px;
  margin-inline: auto;
}
.p-environment__benefits__block__label {
  margin-top: 34px;
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.3333333333;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-environment__benefits__block__label {
    margin-top: 24px;
  }
}
.p-environment__benefits__block__text {
  margin-top: 18px;
  font-size: 0.75rem;
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
}
.p-environment__benefits__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  grid-gap: 4px 24px;
  margin-top: 56px;
}
@media screen and (max-width: 768px) {
  .p-environment__benefits__list {
    margin-top: 48px;
  }
}
.p-environment__benefits__item {
  position: relative;
  padding-left: 15px;
  font-size: 0.75rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.p-environment__benefits__item::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 100%;
  background-color: #645144;
}
.p-environment__statistics {
  background-color: #FFF;
  padding-top: 80px;
}
.p-environment__statistics__list {
  margin-top: 48px;
}
@media screen and (max-width: 768px) {
  .p-environment__statistics__list {
    margin-top: 32px;
  }
}
.p-environment__statistics__item {
  display: grid;
  grid-template-columns: 260px 1fr;
  grid-gap: 24px 70px;
  justify-content: space-between;
}
.p-environment__statistics__item + .p-environment__statistics__item {
  margin-top: 48px;
}
@media screen and (max-width: 768px) {
  .p-environment__statistics__item {
    grid-template-columns: 100%;
  }
  .p-environment__statistics__item + .p-environment__statistics__item {
    margin-top: 32px;
  }
}
.p-environment__statistics__content {
  position: relative;
  margin-bottom: 52px;
}
@media screen and (max-width: 768px) {
  .p-environment__statistics__content {
    margin-bottom: 32px;
  }
}
.p-environment__statistics__num {
  position: absolute;
  top: 0;
  left: 0;
  color: #645144;
  font-family: "Oswald", sans-serif;
  font-size: 2.25rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .p-environment__statistics__num {
    font-size: 1.75rem;
  }
}
.p-environment__statistics__title {
  padding-top: 10px;
  padding-left: 48px;
  font-family: "Shippori Mincho", serif;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .p-environment__statistics__title {
    padding-left: 40px;
    font-size: 1.125rem;
  }
}
.p-environment__statistics__text {
  padding-left: 48px;
  margin-top: 20px;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .p-environment__statistics__text {
    padding-left: 40px;
  }
}
.p-environment__statistics__img {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 256px));
  grid-gap: 24px 56px;
  max-width: 630px;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  .p-environment__statistics__img {
    grid-template-columns: 100%;
  }
}
.p-environment__statistics__img__box {
  text-align: center;
}
.p-environment__statistics__img__box > img {
  width: 100%;
}
.p-environment__statistics__img__box > figcaption {
  margin-top: 32px;
  font-size: 0.875rem;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.p-environment__schedule {
  padding: 128px 0 200px;
}
@media screen and (max-width: 768px) {
  .p-environment__schedule {
    padding-top: 80px 0 96px;
  }
}
.p-environment__schedule__content {
  margin-top: 56px;
}
@media screen and (max-width: 768px) {
  .p-environment__schedule__content {
    margin-top: 80px;
  }
}
.p-environment__schedule__label {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0.05em;
  text-align: center;
}
.p-environment__schedule__catchphrase {
  margin-top: 28px;
  color: #0e050b;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-environment__schedule__catchphrase {
    margin-top: 20px;
  }
}
.p-environment__schedule__text {
  margin-top: 32px;
  color: #0e050b;
  font-size: 0.75rem;
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .p-environment__schedule__text {
    margin-top: 24px;
  }
}
.p-environment__schedule__img {
  margin-top: 68px;
}
@media screen and (max-width: 768px) {
  .p-environment__schedule__img {
    margin-top: 48px;
  }
}
.p-environment__schedule__img > img {
  width: 100%;
}

@keyframes careerSlider {
  from {
    transform: none;
  }
  to {
    transform: translateX(-100%);
  }
}
@media screen and (min-width: 768px) {
  .p-career {
    background-size: 320px 2464px;
  }
}
.p-career__title {
  color: #645144;
  font-family: "Shippori Mincho", serif;
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .p-career__title {
    font-size: 1.5rem;
  }
}
.p-career__block {
  margin-top: 128px;
}
@media screen and (max-width: 768px) {
  .p-career__block {
    margin-top: 80px;
  }
}
.p-career__block__title {
  color: #645144;
  font-family: "Shippori Mincho", serif;
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: 0.1em;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-career__block__title {
    font-size: 1.5rem;
  }
}
.p-career__block__img {
  margin-top: 32px;
}
@media screen and (max-width: 768px) {
  .p-career__block__img {
    margin-top: 24px;
  }
}
.p-career__block__img > img {
  width: 100%;
}
.p-career__interview {
  padding-bottom: 160px;
  margin-top: 116px;
}
@media screen and (max-width: 768px) {
  .p-career__interview {
    padding-bottom: 80px;
    margin-top: 80px;
  }
}
.p-career__interview__slider {
  display: flex;
  margin-top: 92px;
}
@media screen and (max-width: 768px) {
  .p-career__interview__slider {
    margin-top: 48px;
  }
}
.p-career__interview__slider.is-active .p-career__interview__slider__list {
  animation: careerSlider 30s cubic-bezier(0.25, 0.25, 0.75, 0.75) infinite forwards;
}
.p-career__interview__slider.is-active:hover .p-career__interview__slider__list {
  animation-play-state: paused;
}
.p-career__interview__slider__list {
  display: flex;
  flex: 0 0 auto;
}
.p-career__interview__slider__item {
  position: relative;
  display: block;
  flex: 0 0 auto;
  width: 288px;
  height: 288px;
  margin-left: 32px;
  background-color: #ece7de;
}
@media (any-hover) {
  .p-career__interview__slider__item {
    transform: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .p-career__interview__slider__item:hover {
    width: 352px;
    height: 352px;
  }
  .p-career__interview__slider__item:hover .p-career__interview__slider__content {
    grid-template-rows: 1fr;
  }
}
.p-career__interview__slider__thumb {
  width: 100%;
  height: 100%;
}
.p-career__interview__slider__thumb > img {
  width: 100%;
  height: 100%;
}
.p-career__interview__slider__content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #ece7de;
}
@media (any-hover) {
  .p-career__interview__slider__content {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 1s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
}
@media (any-hover) {
  .p-career__interview__slider__content__inner {
    overflow: hidden;
  }
}
.p-career__interview__slider__content__head {
  display: flex;
  align-items: flex-end;
  column-gap: 8px;
  padding-bottom: 8px;
  margin: 12px 20px 0;
  border-bottom: 1px solid #645144;
}
.p-career__interview__slider__content__head__ja {
  font-family: "Shippori Mincho", serif;
  font-size: 1.875rem;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0.1em;
}
.p-career__interview__slider__content__head__en {
  color: #645144;
  font-family: "Oswald", sans-serif;
  font-size: 0.75rem;
  font-weight: 300;
  letter-spacing: 0.1em;
}
.p-career__interview__slider__content__job {
  margin: 8px 20px 0;
  color: #645144;
  font-size: 0.875rem;
  line-height: 1.25;
  letter-spacing: 0.05em;
}
.p-career__interview__slider__content__text {
  margin: 4px 20px 18px;
  font-size: 1rem;
  line-height: 1.25;
  letter-spacing: 0.05em;
}
.p-career__performance {
  padding: 112px 0 165px;
}
@media screen and (max-width: 768px) {
  .p-career__performance {
    padding: 80px 0 96px;
  }
}
@media screen and (max-width: 768px) {
  .p-career__performance .l-main__head__title__en {
    font-size: 1.875rem;
  }
}
@media screen and (min-width: 768px) {
  .p-career__performance .l-main__head__catchphrase {
    margin-top: 76px;
  }
}
.p-career__performance .l-main__head__catchphrase::first-letter {
  font-size: 1em;
  text-shadow: none;
}
.p-career__performance .l-main__head__text {
  max-width: 672px;
}
.p-career__reason {
  padding: 48px 0 60px;
  background-color: #ece7de;
}
@media screen and (max-width: 768px) {
  .p-career__reason {
    padding: 32px 0 48px;
  }
}
.p-career__reason__text {
  margin-top: 16px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.05em;
}
.p-career__staff {
  padding-bottom: 227px;
  margin-top: 106px;
}
@media screen and (max-width: 768px) {
  .p-career__staff {
    padding-bottom: 128px;
    margin-top: 80px;
  }
}
.p-career__staff__box {
  display: grid;
  grid-template-columns: 288px 1fr;
  grid-gap: 24px 16px;
}
.p-career__staff__box + .p-career__staff__box {
  margin-top: 84px;
}
@media screen and (max-width: 768px) {
  .p-career__staff__box {
    grid-template-columns: 100%;
  }
  .p-career__staff__box + .p-career__staff__box {
    margin-top: 48px;
  }
}
.p-career__staff__head {
  position: relative;
  padding: 0 32px 32px 0;
}
.p-career__staff__head__img {
  width: 100%;
}
.p-career__staff__head__profile {
  position: absolute;
  bottom: 0;
  right: 0;
  width: calc(100% - 32px);
  padding: 23px 22px 27px;
  border-radius: 8px;
  background-color: #FFF;
}
.p-career__staff__head__profile__label {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.p-career__staff__head__profile__store {
  margin-top: 4px;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
}
.p-career__staff__head__profile__name {
  margin-top: 8px;
  font-size: 1.875rem;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0.05em;
}
.p-career__staff__img {
  margin-top: 24px;
}
.p-career__staff__text {
  margin-top: 24px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.05em;
}

@media screen and (min-width: 768px) {
  .p-interview {
    background-size: 320px 1600px;
  }
}
.p-interview .l-main__head {
  padding: 90px 0 60px;
}
@media screen and (max-width: 768px) {
  .p-interview .l-main__head {
    padding: 80px 0 48px;
  }
}
.p-interview__body {
  padding-bottom: 196px;
}
@media screen and (max-width: 768px) {
  .p-interview__body {
    padding-bottom: 96px;
  }
}
.p-interview__eyecatch__link {
  width: fit-content;
  padding: 12px 30px;
  margin-left: auto;
  background-color: #9c9282;
  color: #FFF;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  letter-spacing: 0.05em;
}
.p-interview__eyecatch__link > a {
  text-decoration: underline;
}
@media (any-hover: hover) {
  .p-interview__eyecatch__link > a {
    transition: opacity 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .p-interview__eyecatch__link > a:hover {
    opacity: 0.7;
  }
}
.p-interview__content {
  margin-top: 32px;
}
.p-interview__title {
  margin-bottom: 28px;
  color: #645144;
  font-family: "Shippori Mincho", serif;
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .p-interview__title {
    margin-bottom: 24px;
    font-size: 1.5rem;
  }
}
.p-interview__row + .p-interview__row {
  margin-top: 48px;
}
@media screen and (min-width: 768px) {
  .p-interview__row {
    display: grid;
    grid-template-columns: 320px 1fr;
    grid-column-gap: 48px;
  }
  .p-interview__row:nth-of-type(odd) {
    direction: rtl;
  }
  .p-interview__row:nth-of-type(odd) > * {
    direction: ltr;
  }
  .p-interview__row + .p-interview__row {
    margin-top: 58px;
  }
}
.p-interview__detail {
  padding-left: 32px;
  color: #0e050b;
  font-size: 0.875rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .p-interview__detail {
    padding-top: 2px;
  }
  .p-interview__detail:only-child {
    grid-column: 1/-1;
  }
}
@media screen and (max-width: 768px) {
  .p-interview__detail:not(:only-child) {
    margin-top: 24px;
  }
}
.p-interview__label {
  position: relative;
  font-weight: 500;
}
.p-interview__label::before {
  content: "";
  position: absolute;
  top: 14px;
  left: -32px;
  width: 20px;
  height: 1px;
  background-color: #3f3e3b;
}
.p-interview__text {
  margin-top: 4px;
}

@media screen and (min-width: 768px) {
  .p-company {
    background-size: 320px 960px;
  }
}
.p-company .l-main__head {
  padding: 90px 0 60px;
}
@media screen and (max-width: 768px) {
  .p-company .l-main__head {
    padding: 80px 0 48px;
  }
}
.p-company__section + .p-company__section {
  margin-top: 90px;
}
@media screen and (max-width: 768px) {
  .p-company__section + .p-company__section {
    margin-top: 64px;
  }
}
.p-company__section:last-child {
  padding-bottom: 168px;
}
@media screen and (max-width: 768px) {
  .p-company__section:last-child {
    padding-bottom: 96px;
  }
}
.p-company__title {
  color: #645144;
  font-family: "Shippori Mincho", serif;
  font-size: 1.875rem;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .p-company__title {
    font-size: 1.5rem;
  }
}
.p-company__label {
  color: #645144;
  font-family: "Shippori Mincho", serif;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 768px) {
  .p-company__label {
    font-size: 1.25rem;
  }
}
.p-company__text {
  margin-top: 20px;
  font-size: 0.875rem;
  line-height: 1.8571428571;
}
.p-company__table {
  display: grid;
  grid-template-columns: 96px 1fr;
  margin-top: 28px;
  border-bottom: 1px solid #ece7de;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.7142857143;
}
.p-company__table__label {
  padding: 18px 0;
  border-top: 1px solid #ece7de;
  font-weight: 500;
}
.p-company__table__content {
  padding: 18px 0 18px 16px;
  border-top: 1px solid #ece7de;
}
.p-company__block {
  margin-top: 48px;
}
.p-company__block + .p-company__block {
  margin-top: 48px;
}
@media screen and (min-width: 768px) {
  .p-company__block {
    display: grid;
    grid-template-columns: 320px 1fr;
    grid-column-gap: 6.6666666667%;
    margin-top: 48px;
  }
  .p-company__block + .p-company__block {
    margin-top: 58px;
  }
  .p-company__block.is-reverse {
    direction: rtl;
  }
  .p-company__block.is-reverse > * {
    direction: ltr;
  }
}
.p-company__block__img {
  width: 100%;
}
.p-company__block__img > img {
  width: 100%;
}
@media screen and (max-width: 768px) {
  .p-company__block__content {
    margin-top: 24px;
  }
}
.p-company__profile {
  display: flex;
  align-items: center;
  column-gap: 20px;
  margin-top: 20px;
  color: #645144;
}
.p-company__profile__job {
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.p-company__profile__name {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.p-company__text {
  margin-top: 24px;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.05em;
}

.p-faq {
  padding-bottom: 96px;
}
@media screen and (min-width: 768px) {
  .p-faq {
    padding-bottom: 248px;
    background-size: 320px 960px;
  }
}
.p-faq .l-main__head {
  padding: 90px 0 60px;
}
@media screen and (max-width: 768px) {
  .p-faq .l-main__head {
    padding: 80px 0 48px;
  }
}
.p-faq__box {
  border-bottom: 1px solid #ece7de;
}
.p-faq__box:first-child {
  border-top: 1px solid #ece7de;
}
.p-faq__box[open] .p-faq__label::after {
  background-color: #ece7de;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15.33 1'><line x1='0' y1='0.5' x2='15.33' y2='0.5' stroke='%239c9282' stroke-miterlimit='10' fill='none'/></svg>");
}
.p-faq__label {
  list-style: none;
  position: relative;
  padding: 23px 48px;
  color: #645144;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  cursor: pointer;
}
.p-faq__label::before {
  content: "Q";
  position: absolute;
  top: 50%;
  left: 12px;
  transform: translateY(-50%);
  font-family: "Oswald", sans-serif;
  font-size: 1.875rem;
  font-weight: 300;
  line-height: 1;
}
.p-faq__label::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 32px;
  height: 32px;
  border-radius: 100%;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15.33 15.33'><line x1='0' y1='7.52' x2='15.33' y2='7.52' stroke='%23fff' stroke-miterlimit='10' fill='none'/><line x1='7.67' y1='0' x2='7.67' y2='15.33' stroke='%23fff' stroke-miterlimit='10' fill='none'/></svg>");
  background-color: #9c9282;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 16px;
}
.p-faq__text {
  position: relative;
  padding: 18px 48px;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.05em;
}
.p-faq__text::before {
  content: "A";
  position: absolute;
  top: 50%;
  left: 12px;
  transform: translateY(-50%);
  color: #645144;
  font-family: "Oswald", sans-serif;
  font-size: 1.875rem;
  font-weight: 300;
  line-height: 1;
}

@media screen and (min-width: 768px) {
  .p-requirements {
    background-size: 320px 960px;
  }
}
.p-requirements .l-main__head {
  padding: 90px 0 60px;
}
@media screen and (max-width: 768px) {
  .p-requirements .l-main__head {
    padding: 80px 0 48px;
  }
  .p-requirements .l-main__head .l-main__head__title__en {
    font-size: 1.875rem;
  }
}
.p-requirements__content {
  padding-bottom: 145px;
}
@media screen and (max-width: 768px) {
  .p-requirements__content {
    padding-bottom: 96px;
  }
}
.p-requirements__tab {
  width: fit-content;
  min-width: min(100%, 480px);
  max-width: 100%;
  padding: 20px 56px;
  margin: 0 auto;
  background-color: #9c9282;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19.26 13.19'%3E%3Cpolygon fill='%23fff' points='19.26 0 9.63 13.19 0 0'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: calc(100% - 23px) 50%;
  background-size: 20px;
  color: #FFF;
  font-size: 1rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .p-requirements__tab {
    padding: 20px 48px;
    background-position: calc(100% - 16px) 50%;
  }
}
.p-requirements__body {
  margin-top: 72px;
}
@media screen and (max-width: 768px) {
  .p-requirements__body {
    margin-top: 48px;
  }
}
.p-requirements__box {
  display: none;
}
.p-requirements__box.is-active {
  display: block;
}
.p-requirements__box__row {
  padding: 16px 0;
  border-bottom: 1px solid #ece7de;
}
.p-requirements__box__row:first-child {
  border-top: 1px solid #ece7de;
}
.p-requirements__box__list {
  counter-reset: reqNum;
}
.p-requirements__box__item {
  position: relative;
  padding-left: 16px;
  font-size: 0.875rem;
  line-height: 1.8571428571;
  letter-spacing: 0.05em;
}
ul.p-requirements__box__list .p-requirements__box__item::before {
  content: "";
  position: absolute;
  top: 7px;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 100%;
  background-color: #645144;
}
ol.p-requirements__box__list .p-requirements__box__item {
  counter-increment: reqNum;
}
ol.p-requirements__box__list .p-requirements__box__item::before {
  content: counter(reqNum) ".";
  position: absolute;
  top: 0;
  left: 0;
  color: #0e050b;
  font-weight: 700;
}
.p-requirements__box__tag {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}
.p-requirements__box__tag__item {
  min-width: 80px;
  padding: 0 8px;
  border-radius: 4px;
  background-color: #9c9282;
  color: #FFF;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-store {
    background-size: 320px 1600px;
  }
}
.p-store .l-main__head {
  padding: 90px 0 60px;
}
@media screen and (max-width: 768px) {
  .p-store .l-main__head {
    padding: 80px 0 48px;
  }
}
.p-store__container {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  grid-gap: 48px 16px;
  padding-bottom: 148px;
}
@media screen and (max-width: 768px) {
  .p-store__container {
    grid-row-gap: 32px;
    padding-bottom: 96px;
  }
}
.p-store__box {
  border-left: 2px solid #645144;
}
.p-store__name {
  display: flex;
  align-items: center;
  column-gap: 12px;
  padding: 12px 14px;
  background-color: #9c9282;
  color: #FFF;
  font-family: "Shippori Mincho", serif;
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
}
.p-store__name > span {
  font-family: "Oswald", sans-serif;
  font-size: 0.5em;
  font-weight: 300;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 768px) {
  .p-store__name {
    font-size: 2rem;
  }
}
.p-store__content {
  padding: 15px 14px 0;
}
.p-store__tel {
  font-family: "Oswald", sans-serif;
  font-size: 1.875rem;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0.1em;
}
.p-store__address {
  margin-top: 4px;
  font-size: 0.75rem;
  line-height: 2;
  letter-spacing: 0.05em;
}
.p-store__access {
  position: relative;
  padding-left: 14px;
  margin-top: 10px;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.7142857143;
  letter-spacing: 0.05em;
}
.p-store__access::before {
  content: "";
  position: absolute;
  top: 7px;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 100%;
  background-color: #645144;
}
.p-store__detail {
  margin-top: 2px;
  color: #fb5a14;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
}
.p-store__link {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  letter-spacing: 0.05em;
}
.p-store__link > a {
  text-decoration: underline #fb5a14;
}
@media (any-hover: hover) {
  .p-store__link > a {
    transition: opacity 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .p-store__link > a:hover {
    opacity: 0.7;
  }
}

@media screen and (min-width: 768px) {
  .p-entry {
    background-size: 320px 960px;
  }
}
.p-entry .l-main__head {
  padding: 90px 0 60px;
}
@media screen and (max-width: 768px) {
  .p-entry .l-main__head {
    padding: 80px 0 48px;
  }
}
.p-entry__content {
  padding-bottom: 154px;
}
@media screen and (max-width: 768px) {
  .p-entry__content {
    padding-bottom: 96px;
  }
}
.p-entry__description {
  max-width: 480px;
  margin: 0 auto;
  font-size: 0.75rem;
  line-height: 1.6666666667;
  letter-spacing: 0.05em;
}
.p-entry__form {
  width: 100%;
  max-width: 800px;
  margin: 42px auto 0;
}
@media screen and (max-width: 768px) {
  .p-entry__form {
    margin-top: 32px;
  }
}
.p-entry__row {
  display: grid;
  grid-template-columns: 200px 1fr;
  grid-gap: 12px 24px;
  align-items: center;
  border-left: 2px solid #645144;
  padding-left: 14px;
}
.p-entry__row + .p-entry__row {
  margin-top: 48px;
}
@media screen and (max-width: 768px) {
  .p-entry__row {
    grid-template-columns: 100%;
    padding-left: 12px;
  }
  .p-entry__row + .p-entry__row {
    margin-top: 24px;
  }
}
.p-entry__label {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding: 12px 0;
}
.p-entry__label.is-required::after {
  content: "必須";
  display: block;
  width: 40px;
  height: 20px;
  margin-left: 12px;
  border-radius: 4px;
  background-color: #fb5a14;
  color: #FFF;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.6666666667;
  letter-spacing: 0.1em;
  text-align: center;
}
.p-entry__input span {
  display: block;
}
.p-entry__form.is-confirm .p-entry__input {
  pointer-events: none;
}
.p-entry__input .wpcf7-not-valid-tip {
  display: block;
  margin-top: 8px;
  color: #fb5a14;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.6666666667;
}
.p-entry__input .wpcf7-text,
.p-entry__input .wpcf7-date {
  display: block;
  width: 100%;
  padding: 11px 16px;
  border: 1px solid #9c9282;
  background-color: white;
  font-size: 1rem;
  line-height: 1.5em;
}
@media screen and (max-width: 768px) {
  .p-entry__input .wpcf7-text,
  .p-entry__input .wpcf7-date {
    padding-block: 4px;
  }
}
.p-entry__form.is-confirm .p-entry__input .wpcf7-text,
.p-entry__form.is-confirm .p-entry__input .wpcf7-date {
  border: none;
  padding: 0;
  pointer-events: none;
}
.p-entry__input .wpcf7-checkbox {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
}
.p-entry__input .wpcf7-checkbox .wpcf7-list-item {
  margin-left: 0;
}
.p-entry__input .wpcf7-checkbox label {
  display: block;
  font-size: 0.875rem;
  line-height: 0.8;
  letter-spacing: 0.05em;
}
.p-entry__input .wpcf7-checkbox label input[type=checkbox] {
  display: none;
}
.p-entry__input .wpcf7-checkbox label input[type=checkbox]:checked + .wpcf7-list-item-label::after {
  display: block;
}
.p-entry__input .wpcf7-checkbox label .wpcf7-list-item-label {
  position: relative;
  padding-left: 22px;
  cursor: pointer;
}
.p-entry__input .wpcf7-checkbox label .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 16px;
  height: 16px;
  border-radius: 4px;
  background-color: #ece7de;
}
.p-entry__input .wpcf7-checkbox label .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 2px;
  transform: rotate(-40deg);
  display: none;
  width: 12px;
  height: 6px;
  border-bottom: 2px solid #fb5a14;
  border-left: 2px solid #fb5a14;
}
.p-entry__form.is-confirm .p-entry__input .wpcf7-checkbox {
  pointer-events: none;
}
.p-entry__form.is-confirm .p-entry__input .wpcf7-checkbox input[type=checkbox]:not(:checked) + .wpcf7-list-item-label {
  display: none;
}
.p-entry__form.is-confirm .p-entry__input .wpcf7-checkbox .wpcf7-list-item-label {
  padding-left: 0;
}
.p-entry__form.is-confirm .p-entry__input .wpcf7-checkbox .wpcf7-list-item-label::before, .p-entry__form.is-confirm .p-entry__input .wpcf7-checkbox .wpcf7-list-item-label::after {
  display: none !important;
}
.p-entry__input .wpcf7-radio {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
}
.p-entry__input .wpcf7-radio .wpcf7-list-item {
  margin-left: 0;
}
.p-entry__input .wpcf7-radio label {
  display: block;
  font-size: 0.875rem;
  line-height: 0.8;
  letter-spacing: 0.05em;
}
.p-entry__input .wpcf7-radio label input[type=radio] {
  display: none;
}
.p-entry__input .wpcf7-radio label input[type=radio]:checked + .wpcf7-list-item-label::after {
  display: block;
}
.p-entry__input .wpcf7-radio label .wpcf7-list-item-label {
  position: relative;
  padding-left: 20px;
  cursor: pointer;
}
.p-entry__input .wpcf7-radio label .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 12px;
  height: 12px;
  border-radius: 100%;
  background-color: #ece7de;
}
.p-entry__input .wpcf7-radio label .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  display: none;
  width: 6px;
  height: 6px;
  border-radius: 100%;
  background-color: #fb5a14;
}
.p-entry__form.is-confirm .p-entry__input .wpcf7-radio label {
  pointer-events: none;
}
.p-entry__form.is-confirm .p-entry__input .wpcf7-radio label input[type=radio]:not(:checked) + .wpcf7-list-item-label {
  display: none;
}
.p-entry__form.is-confirm .p-entry__input .wpcf7-radio label .wpcf7-list-item-label {
  padding-left: 0;
}
.p-entry__form.is-confirm .p-entry__input .wpcf7-radio label .wpcf7-list-item-label::before, .p-entry__form.is-confirm .p-entry__input .wpcf7-radio label .wpcf7-list-item-label::after {
  display: none !important;
}
.p-entry .wpcf7-acceptance {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
}
.p-entry .wpcf7-acceptance .wpcf7-list-item {
  margin-left: 0;
}
.p-entry .wpcf7-acceptance label {
  display: block;
  font-size: 0.875rem;
  line-height: 0.8;
  letter-spacing: 0.05em;
}
.p-entry .wpcf7-acceptance label input[type=checkbox] {
  display: none;
}
.p-entry .wpcf7-acceptance label input[type=checkbox]:checked + .wpcf7-list-item-label::after {
  display: block;
}
.p-entry .wpcf7-acceptance label .wpcf7-list-item-label {
  position: relative;
  padding-left: 22px;
  cursor: pointer;
}
.p-entry .wpcf7-acceptance label .wpcf7-list-item-label::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 16px;
  height: 16px;
  border-radius: 4px;
  background-color: #ece7de;
}
.p-entry .wpcf7-acceptance label .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 2px;
  transform: rotate(-40deg);
  display: none;
  width: 12px;
  height: 6px;
  border-bottom: 2px solid #fb5a14;
  border-left: 2px solid #fb5a14;
}
.p-entry__form.is-confirm .p-entry .wpcf7-acceptance label {
  pointer-events: none;
}
.p-entry__form.is-confirm .p-entry .wpcf7-acceptance label .wpcf7-list-item-label {
  padding-left: 0;
}
.p-entry__form.is-confirm .p-entry .wpcf7-acceptance label .wpcf7-list-item-label::before, .p-entry__form.is-confirm .p-entry .wpcf7-acceptance label .wpcf7-list-item-label::after {
  display: none;
}
.p-entry__option {
  margin-bottom: 12px;
  font-size: 0.875rem;
  line-height: 1;
}
.p-entry__form.is-confirm .p-entry__option {
  display: none;
}
.p-entry__agree {
  margin-top: 64px;
}
@media screen and (max-width: 768px) {
  .p-entry__agree {
    margin-top: 48px;
  }
}
.p-entry__confirm {
  position: relative;
  display: block;
  width: min(100%, 320px);
  padding: 10px 50px 10px 48px;
  margin: 0 auto;
  border-radius: 4px;
  background-color: #9c9282;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 51.2 45.37'%3E%3Cpolygon fill='%23fff' points='37.41 41.97 3.4 41.97 3.4 16.49 16.49 16.49 16.49 3.4 37.41 3.4 37.41 6.75 40.81 3.49 40.81 0 16.49 0 3.4 13.09 0 16.49 0 45.37 40.81 45.37 40.81 25.34 37.41 28.89 37.41 41.97'/%3E%3Cpath fill='%23fff' d='M50.86,8.96l-5.13-5.13c-.45-.45-1.19-.45-1.64,0l-21.67,20.81c-.13.13-.23.3-.29.48l-2.62,8.61c-.27.89.56,1.71,1.44,1.44l8.89-2.71,21.02-21.87c.45-.45.45-1.19,0-1.64ZM24.4,32.02l-1.69-1.84,1.17-3.84,2.91,1.57,1.57,2.91-3.96,1.21ZM47.6,8.14l-18.46,18.58-1.17-1.17L46.55,7.09l1.05,1.05h0Z'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7.49 12.2'%3E%3Cpolyline fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' points='.5 11.7 6.99 6.1 .5 .5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 19px 50%, calc(100% - 16px) 50%;
  background-size: 28px, 8px;
  color: #FFF;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-entry__confirm {
    width: 100%;
  }
}
.p-entry__form.is-confirm .p-entry__confirm {
  border: 2px solid #645144;
  background-color: #FFF;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 51.2 45.37'%3E%3Cpolygon fill='%23645144' points='37.41 41.97 3.4 41.97 3.4 16.49 16.49 16.49 16.49 3.4 37.41 3.4 37.41 6.75 40.81 3.49 40.81 0 16.49 0 3.4 13.09 0 16.49 0 45.37 40.81 45.37 40.81 25.34 37.41 28.89 37.41 41.97'/%3E%3Cpath fill='%23645144' d='M50.86,8.96l-5.13-5.13c-.45-.45-1.19-.45-1.64,0l-21.67,20.81c-.13.13-.23.3-.29.48l-2.62,8.61c-.27.89.56,1.71,1.44,1.44l8.89-2.71,21.02-21.87c.45-.45.45-1.19,0-1.64ZM24.4,32.02l-1.69-1.84,1.17-3.84,2.91,1.57,1.57,2.91-3.96,1.21ZM47.6,8.14l-18.46,18.58-1.17-1.17L46.55,7.09l1.05,1.05h0Z'/%3E%3C/svg%3E"), url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7.49 12.2'%3E%3Cpolyline fill='none' stroke='%23645144' stroke-linecap='round' stroke-linejoin='round' points='.5 11.7 6.99 6.1 .5 .5'/%3E%3C/svg%3E");
  color: #645144;
}
.p-entry__submit {
  margin-top: 48px;
}
@media screen and (max-width: 768px) {
  .p-entry__submit {
    margin-top: 32px;
  }
}
.p-entry__submit__main {
  display: none;
}
.p-entry__form.is-confirm .p-entry__submit__main {
  display: block;
  margin-top: 24px;
}
.p-entry__submit__main .wpcf7-submit {
  position: relative;
  display: block;
  width: min(100%, 320px);
  padding: 10px 50px 10px 48px;
  margin: 0 auto;
  border-radius: 4px;
  background-color: #9c9282;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7.49 12.2'%3E%3Cpolyline fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' points='.5 11.7 6.99 6.1 .5 .5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: calc(100% - 16px) 50%;
  background-size: 8px;
  color: #FFF;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
  text-align: center;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  .p-entry__submit__main .wpcf7-submit {
    width: 100%;
  }
}
.p-entry__bottom {
  margin-top: 72px;
}
@media screen and (max-width: 768px) {
  .p-entry__bottom {
    margin-top: 48px;
  }
}
.p-entry__tel {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px 26px;
  padding: 30px 16px;
  border: 2px solid #9c9282;
  border-radius: 6px;
}
@media screen and (max-width: 768px) {
  .p-entry__tel {
    flex-wrap: wrap;
    text-align: center;
    padding: 12px 16px;
  }
}
.p-entry__tel__label {
  font-size: 1rem;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .p-entry__tel__label {
    width: 100%;
    font-size: 0.75rem;
  }
}
.p-entry__tel__num {
  font-family: "Oswald", sans-serif;
  font-size: 2.25rem;
  font-weight: 200;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  .p-entry__tel__num {
    width: 100%;
    font-size: 1.875rem;
  }
}
.p-entry__line {
  display: block;
  margin-top: 48px;
}
@media screen and (max-width: 768px) {
  .p-entry__line {
    margin-top: 32px;
  }
}

@media screen and (min-width: 768px) {
  .u-sp {
    display: none !important;
  }
}

@media screen and (max-width: 768px) {
  .u-pc {
    display: none !important;
  }
}

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