@charset "UTF-8";

/* メディアクエリ
==================================== */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td,
small,
button,
time,
figure {
  border: 0;
  font: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

li,
dd {
  list-style-type: none;
}

header,
footer,
nav,
section,
article,
main,
aside,
figure,
figcaption {
  display: block;
}

img {
  border: none;
  vertical-align: bottom;
}

a {
  cursor: pointer;
  text-decoration: none;
}

input,
button,
textarea,
select {
  /* デフォルトスタイルをリセット */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: inherit;
  border-radius: 0;
  box-sizing: border-box;
  font-size: 16px;
  color: inherit;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  outline: none;
}

label {
  cursor: pointer;
}

html {
  min-height: 100vh;
}

@media screen and (max-width: 767px) {
  html {
    font-size: 10px;
  }
}

@media screen and (min-width: 768px) {
  html {
    font-size: calc(10 / 1100 * 100vw);
  }
}

@media screen and (min-width: 1100px) {
  html {
    font-size: 10px;
  }
}

body {
  color: #333;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 400;
  line-height: 1.6;
  min-height: 100vh;
  display: flex;
  flex-direction: column;

}

@media screen and (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }
}

@media screen and (min-width: 768px) {
  body {
    font-size: max(1.6rem, 14px);
  }
}

main {
  flex-grow: 1;
}

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

a {
  color: inherit;
}

.c-img {
  position: relative;
  width: 100%;
}

.c-img::before {
  content: "";
  display: block;
}

.c-img img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.p-front {
  width: 100%;
  margin-inline: auto;
  padding: 0 2rem;
}

@media screen and (min-width: 768px) {
  .p-front {
    max-width: 110rem;
  }
}

.p-front__block {
  padding-top: 4.6rem;
}

@media screen and (min-width: 768px) {
  .p-front__block {
    padding: 6.8rem 5rem 0;
  }
}

.p-front__block:first-child {
  padding-top: 6rem;
}

@media screen and (min-width: 768px) {
  .p-front__block:first-child {
    padding-top: 10rem;
  }
}

.p-front__block:last-child {
  padding-bottom: 20rem;
}

.p-front__title {
  text-align: center;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  padding-bottom: 0.5rem;
  border-bottom: 1.5px solid #333;
}

@media screen and (min-width: 768px) {
  .p-front__title {
    padding-bottom: 0;
    font-size: 3.4rem;
  }
}

.p-front__wrap {
  margin-top: 1.6rem;
  display: grid;
  row-gap: 1.5rem;
  padding: 1.6rem 0;
  width: 84%;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-front__wrap {
    width: 100%;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    margin-top: 2.2rem;
    grid-template-columns: repeat(4, 1fr);
    -moz-column-gap: 2rem;
    column-gap: 2rem;
    padding: 2rem 0;
  }
}

.p-front__wrap:nth-of-type(n+2) {
  margin-top: 0;
  border-top: 1px solid #333;
}

.p-front__link {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 22rem;
  margin-inline: auto;
  font-size: 2rem;
  border-radius: 1.2rem;
  border: 1.5px solid #333;
  background-color: #333;
  color: #fff;
  text-align: center;
  padding: 0.4rem;
  letter-spacing: 0.05em;
  transition: color 0.3s ease-out, background-color 0.3s ease-out;
  min-height: 4.3rem;
}

@media screen and (min-width: 768px) {
  .p-front__link {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    max-width: 32rem;
    min-height: 4.7rem;
    padding: 0.6rem;
  }
}

.p-front__link--small {
  font-size: 1.4rem;
}

.p-front__link--smallest {
  font-size: 1.2rem;
}

.p-front__link:hover {
  background-color: #fff;
  color: #333;
}

.p-front__link.blue {
  border-color: #6289BE;
  background-color: #6289BE;
}

.p-front__link.blue:hover {
  background-color: #fff;
  color: #6289BE;
}

.p-front__link.green {
  border-color: #62BE90;
  background-color: #62BE90;
}

.p-front__link.green:hover {
  background-color: #fff;
  color: #62BE90;
}

.p-front__back {
  font-size: 2rem;
}

.p-contact {
  padding-top: 20px !important;
  padding-bottom: 20px;
}

@media screen and (min-width: 768px) {
  .p-contact {
    padding-top: 53px;
    padding-bottom: 13.4rem;
  }
}

.p-contact__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-contact__inner {
    max-width: 103.4rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-contact__inner--2 {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-contact__inner--2 {
    max-width: 103.4rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-contact__enTitle {
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
  font-size: 4rem;
  letter-spacing: 0.01em;
}

@media screen and (min-width: 768px) {
  .p-contact__enTitle {
    font-size: 5rem;
  }
}

.p-contact__title {
  margin-top: 0.2rem;
  font-size: 1.8rem;
  letter-spacing: 0.07em;
  font-weight: 700;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-contact__title {
    font-size: 2rem;

  }
}

.p-form__block {
  border-top: 1px solid #BCBCBC;
  padding-bottom: 3.8rem;
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-form__block {
    padding: 0;
    margin-top: 0;
  }
}

.p-form__block--confirm {
  padding: 6.1rem 0 5.8rem;
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-form__block--confirm {
    padding: 3.1rem 0.6rem 3rem;
    margin-top: 2.4rem;
  }
}

.p-form__wrap {
  margin-inline: auto;
  border-bottom: 1px solid #BCBCBC;
}

@media screen and (min-width: 768px) {
  .p-form__wrap {
    display: flex;
  }
}

.p-form--confirm .p-form__wrap {
  align-items: center;
}

.p-form--confirm .p-form__wrap:nth-child(n+2) {
  margin-top: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-form--confirm .p-form__wrap:nth-child(n+2) {
    margin-top: 5.8rem;
  }
}

.p-form__wrap label {
  width: 100%;
  font-weight: 500;
  letter-spacing: 0.13em;
  font-size: 1.4rem;
  padding-top: 2rem;
  white-space: nowrap;
}

@media screen and (min-width: 768px) {
  .p-form__wrap label {
    background-color: #F4F4F4;
    max-width: 24.1rem;
    padding: 2rem 2.65rem;
  }
}

.p-form__wrap .wpcf7-list-item label {
  background-color: transparent;
}

.p-form--confirm .p-form__wrap label {
  margin-top: 0;
}

.p-form__label {
  display: flex;
  align-items: center;
}

.p-form__label span {
  color: #FFF;
  background-color: #F77700;
  width: 4.3rem;
  height: 2.2rem;
  font-size: 1.2rem;
  font-weight: 500;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 0;
  margin-left: 1rem;
}

.p-form__selectwrap,
.p-form__text,
.p-form__textarea,
.p-form__select {
  width: 100%;
  letter-spacing: 0.1em;
  background-color: #F2F2F2;
  padding: 0.7rem 0.8rem;
}

@media screen and (min-width: 768px) {

  .p-form__selectwrap,
  .p-form__text,
  .p-form__textarea,
  .p-form__select {
    padding: 0.85rem 1.9rem;
  }
}

.p-form__select {
  padding-top: 10px;
  padding-bottom: 10px;
}

/* セレクトボックス ここから */
.p-form__selectwrap {
  position: relative;
}

.p-form__selectwrap:after {
  content: "";
  position: absolute;
  right: 29px;
  top: 18px;
  width: 9px;
  height: 9px;
  border-top: 2px solid #C9C9C9;
  border-left: 2px solid #C9C9C9;
  transform: translateY(-50%) rotate(-135deg);
  font-size: 20px;
  pointer-events: none;
}

.p-form__select {
  width: 100%;
}

.p-form__select:invalid {
  color: #C9C9C9;
}

.p-form__select option {
  color: #333;
}

.p-form__select option:first-child {
  color: #C9C9C9;
}

/* セレクトボックス ここまで */
.p-form__text::-moz-placeholder,
.p-form__textarea::-moz-placeholder {
  color: #C9C9C9;
}

.p-form__text::placeholder,
.p-form__textarea::placeholder {
  color: #C9C9C9;
}

.p-form__textarea {
  height: 17.8rem;
}

/* ラジオボタン ここから */
.p-form__radiobutton {
  display: flex;
  flex-direction: column;
  width: 100%;
  text-align: left;
}

@media screen and (min-width: 768px) {
  .p-form__radiobutton {
    flex-flow: row wrap;
  }
}

.p-form__radio {
  display: flex;
  flex-direction: column;
  row-gap: 1.2rem;
  margin-left: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-form__radio {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1.6rem 3.5rem;
  }
}

.p-form__wrap .p-form__radio span {
  width: auto;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.13em;
}

.p-contact__form .button {
  font-family: "Noto Sans JP";
  font-weight: 500;
  font-size: 12px;
  border: 1px solid #000;
  letter-spacing: 0.1em;
  color: #000;
  text-align: center;
  display: inline-block;
  position: relative;
  border-radius: 60px;
  width: 245px;
  box-sizing: border-box;
  padding-top: 12px;
  padding-left: 2px;
  padding-bottom: 13px;
}

.p-form__radio label {
  box-sizing: border-box;
  line-height: 1.4;
  cursor: pointer;
  padding: 0.1rem 2rem 0.1rem 0.9rem;
}

@media screen and (min-width: 768px) {
  .p-form__radio label {
    padding: 0.5rem 2.4rem 0.5rem 0.9rem;
  }
}

.p-form__radio input {
  display: inline-block;
  position: relative;
}

.p-form__radio input:before {
  content: "";
  background: #FFF;
  border: 1px solid #B7B7B7;
  border-radius: 50%;
  display: block;
  position: absolute;
  top: -1.5rem;
  left: -2.6rem;
  width: 2rem;
  height: 2rem;
}

.iphone .p-form__radio input:before {
  top: 0.5rem;
  left: 0;
}

.p-form__radio input:after {
  content: "";
  background: #000;
  border-radius: 50%;
  display: block;
  opacity: 0;
  position: absolute;
  top: -0.5rem;
  left: -2.1rem;
  transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  transition: 0.3s ease;
}

.iphone .p-form__radio input:after {
  top: 1.3rem;
  left: 0.4rem;
}

input[type=radio]:checked::after {
  opacity: 1;
}

/* ラジオボタン ここまで */
.p-form__box {
  text-align: center;
  margin-top: 1.8rem;
}

@media screen and (min-width: 768px) {
  .p-form__box {
    margin-top: 3.9rem;
  }
}

.p-form__box a {
  text-decoration: underline;
  color: #000;
}

/* チェックボックス ここから */
.p-form__check {
  margin: 0.8rem auto 0;
}

.breadcrumb-box {
    width: 100%;
    margin: auto;
    padding: 0 20px;
}

.breadcrumb {
    display: flex;
    align-items: center;
    color: #0095d9; //パンくずのテキストカラー
    justify-content: flex-end; //こちらはパンくずリストを右寄せにしたい場合に追加してください！
}

.breadcrumb-border {
      display: inline-block;
      width: 1px;
      height: 16px;
      margin: -5px 12px;
      background-color: #242424; //区切りのカラー
      transform:rotate(15deg);
}

.current-item {
  color: #242424; //現在表示されているページ名のみカラー変更
}

@media screen and (min-width: 768px) {
  .p-form__check {
    margin-top: 1.4rem;
  }
}

.p-form__checkbox {
  position: relative;
  display: block;
  padding-left: 2.6rem;
}

@media screen and (min-width: 768px) {
  .p-form__checkbox {
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: auto;
    padding-left: 1.7rem;
  }
}

.p-form__submit {
  margin: 2.3rem auto 0;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-form__submit {
    margin-top: 2.7rem;
  }
}

.p-form__submit.c-normal-btn {
  max-width: 24rem;
  position: relative;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-form__submit.c-normal-btn {
    max-width: 40rem;
  }
}

.p-form__submit.c-normal-btn::before {
  content: "";
  display: block;
  width: 3rem;
  height: 1rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 3rem;
  background-image: url(../images/contact1/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  opacity: 0;
}

@media screen and (min-width: 768px) {
  .p-form__submit.c-normal-btn::before {
    width: 4.4rem;
    height: 1.6rem;
    right: 4rem;
  }
}

.p-form__button {
  cursor: pointer;
  width: 100%;
  border-radius: 99.9rem;
  background-color: #000;
  height: 6rem;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #fff;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .p-form__button {
    height: 8rem;
  }
}

.p-form__submit:hover {
  opacity: 0.8;
}

.p-form__submit.c-normal-btn--back:hover .p-form__button {
  color: #7E7E7E;
}

.p-form__secure {
  width: 16rem;
  height: 8.1rem;
  -o-object-fit: cover;
  object-fit: cover;
  margin: 2.4rem auto 0;
}

@media screen and (min-width: 768px) {
  .p-form__secure {
    margin-top: 4rem;
  }
}

.p-form__answer {
  margin-top: 0.8rem;
}

@media screen and (min-width: 768px) {
  .p-form__answer {
    margin: 0 0 0 8.2rem;
  }
}

.p-form__buttonWrap {
  display: flex;
  flex-direction: column;
  row-gap: 2.2rem;
  margin-top: 2.4rem;
  justify-content: center;
}

@media screen and (min-width: 768px) {
  .p-form__buttonWrap {
    gap: 0 8rem;
    margin-top: 4.7rem;
    flex-direction: row;
  }
}

.p-form__buttonWrap .p-form__submit {
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-form__buttonWrap .p-form__submit {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-form__banner {
  width: 17rem;
  height: 6.6rem;
  margin-inline: auto;
  margin-top: 2.4rem;
}

@media screen and (min-width: 768px) {
  .p-form__banner {
    margin-top: 4rem;
  }
}

.wpcf7-form-control-wrap {
  width: 100%;
  display: block;
  padding: 1.5rem 0 2.2rem;
}


@media screen and (min-width: 768px) {
  .p-form__radiobutton .wpcf7-form-control-wrap {
    padding: 3.6rem 0 3.6rem 4rem;
  }
}

.wpcf7-list-item {
  margin: 0;
}

.screen-reader-response,
.wpcf7-not-valid-tip {
  margin-top: 0.4rem;
  color: #C00;
  display: block;
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {

  .screen-reader-response,
  .wpcf7-not-valid-tip {
    font-size: 1.5rem;
  }
}

li[id^=wpcf7-f171-o1] {
  display: none;
}

.p-form__radiobutton .wpcf7-not-valid-tip,
.p-form__check .wpcf7-not-valid-tip {
  margin-left: 0;
}

.wpcf7 form .wpcf7-response-output {
  display: none;
}

.wpcf7-spinner {
  display: none;
}

.p-form__check .wpcf7-list-item-label {
  position: relative;
  font-size: 1.2rem;
  margin-left: 1.6rem;
  letter-spacing: 0.13em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-form__check .wpcf7-list-item-label {
    font-size: 1.4rem;
    margin-left: 0;
  }
}

.p-form__check .wpcf7-list-item-label:before {
  border: 1px solid #B7B7B7;
  content: "";
  display: block;
  position: absolute;
  top: 0.4rem;
  left: -1.6rem;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 3px;
}

@media screen and (min-width: 768px) {
  .p-form__check .wpcf7-list-item-label:before {
    top: 0.3rem;
    left: -2.4rem;
    width: 1.6rem;
    height: 1.6rem;
  }
}

.p-form__check .wpcf7-list-item-label:after {
  border-bottom: 2px solid #000;
  border-left: 2px solid #000;
  content: "";
  display: block;
  opacity: 0;
  position: absolute;
  top: 0.7rem;
  left: -1.4rem;
  width: 0.8rem;
  height: 0.4rem;
  transform: rotate(-45deg);
  transition: 0.3s ease;
}

@media screen and (min-width: 768px) {
  .p-form__check .wpcf7-list-item-label:after {
    left: -2.2rem;
    width: 1.2rem;
    height: 0.6rem;
  }
}

input[type=checkbox]:checked+.wpcf7-list-item-label:after {
  opacity: 1;
}

.p-form__radiobutton .wpcf7-not-valid-tip,
.p-form__check .wpcf7-not-valid-tip {
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {

  .p-form__radiobutton .wpcf7-not-valid-tip,
  .p-form__check .wpcf7-not-valid-tip {
    font-size: 1.6rem;
  }
}

.p-form__policy {
  text-align: center;
  font-size: 2rem;
  letter-spacing: 0.1em;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-form__policy {
    margin-top: 6.2rem;
  }
}

.p-form__policyBlock::-webkit-scrollbar {
  width: 1.7rem;
}

.p-form__policyBlock::-webkit-scrollbar-track {
  background-color: #F6F6F6;
}

.p-form__policyBlock::-webkit-scrollbar-thumb {
  background-color: #D5D5D5;
  border: 3px solid #F6F6F6;
  border-radius: 10px;
}

.p-form__policyBlock {
  margin-top: 2rem;
  height: 33rem;
  border: 1px solid #D5D5D5;
  overflow-y: scroll;
  padding: 3rem 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-form__policyBlock {
    padding: 4rem 4.9rem;
  }
}

.p-form__policyWrap {
  width: 100%;
  height: 100%;
}

.p-form__policyText {
  font-size: 1.3rem;
  letter-spacing: 0.02em;
  line-height: 2;
  text-align: left;
}

@media screen and (min-width: 768px) {
  .p-form__policyText {
    font-size: 1.4rem;
  }
}

.p-bottom1 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  height: 5rem;
  display: flex;
  align-items: center;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom1 {
    height: 9.4rem;
  }
}

.p-bottom1__logo {
  width: 12.3rem;
  margin-left: 1.8rem;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-bottom1__logo {
    width: 16.8rem;
    margin-left: 3.5rem;
  }
}

.p-bottom1__hamburger {
  margin-left: auto;
}

.p-bottom1Nav {
  position: fixed;
  top: 4.6rem;
  left: 0;
  width: 100%;
  height: calc(100vh - 4.6rem);
  z-index: -1;
  transform: translateX(-100%);
  transition: transform 0.4s ease-out;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
  padding-top: 2.3rem;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom1Nav {
    position: static;
    height: 100%;
    opacity: 1;
    z-index: 1;
    visibility: visible;
    overflow: visible;
    transform: translateX(0);
    margin-left: auto;
    background-color: transparent;
    padding-top: 0;
  }
}

.p-bottom1Nav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-bottom1Nav__inner {
  width: 100%;
  min-height: 100%;
  padding: 0 2.7rem 10rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom1Nav__inner {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    background-color: #F6F4EE;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0;
    margin-left: auto;
  }
}

.p-bottom1Nav__inner::after {
  content: "";
  display: block;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  height: 1.2rem;
  background-color: #F6F4EE;
  position: absolute;
  bottom: 0;
  left: 0;
}

@media screen and (min-width: 768px) {
  .p-bottom1Nav__inner::after {
    content: none;
  }
}

.p-bottom1Nav__items {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom1Nav__items {
    max-width: none;
    display: flex;
    justify-content: flex-end;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    padding-left: 3.1rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom1Nav__items {
    height: 100%;
  }
}

.p-bottom1Nav__item {
  border-bottom: 0.75px solid #333;
}

@media screen and (min-width: 768px) {
  .p-bottom1Nav__item {
    border: none;
  }
}

.p-bottom1Nav__link {
  display: block;
  text-transform: capitalize;
  font-family: "Outfit", sans-serif;
  width: 100%;
  letter-spacing: 0.04em;
  font-weight: 300;
  padding: 2.8rem 0 1.4rem;
  position: relative;
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom1Nav__link {
    height: 100%;
    display: flex;
    text-align: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 0 1.7rem;
    width: auto;
  }
}

.p-bottom1Nav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 57%;
  right: 1.2rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #333;
  border-right: 1px solid #333;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-bottom1Nav__link::after {
    content: none;
  }
}

.p-bottom1Nav__info {
  margin-top: 4.5rem;
  display: flex;
  justify-content: center;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom1Nav__info {
    margin: 0 2.9rem 0 2.3rem;
    justify-content: flex-start;
    -moz-column-gap: 1.3rem;
    column-gap: 1.3rem;
  }
}

.p-bottom1Nav__icon {
  display: inline-block;
  width: 4rem;
  height: 4rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p-bottom1Nav__icon--mail {
  background-image: url(../images/bottom1/icon-circle-mail.svg);
}

.p-bottom1Nav__icon--tel {
  background-image: url(../images/bottom1/icon-circle-tel.svg);
}

.p-bottom1Nav__icon--hotpepper {
  background-image: url(../images/bottom1/icon-circle-hotpepper.svg);
}

.p-bottom1Nav__icon--line {
  background-image: url(../images/bottom1/icon-circle-line.svg);
}

.p-bottom1Hamburger {
  height: 100%;
  width: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  cursor: pointer;
  background-color: #F6F4EE;
}

.p-bottom1Hamburger__button {
  display: block;
  width: 2.3rem;
  height: 1.4rem;
  position: relative;
}

.p-bottom1Hamburger__button span {
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #000;
  transition: 0.3s;
}

.p-bottom1Hamburger__button span:first-child {
  top: 0;
}

.p-bottom1Hamburger__button span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}

.p-bottom1Hamburger__button span:last-child {
  bottom: 0;
}

.p-bottom1Hamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
}

.p-bottom1Hamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-bottom1Hamburger__button.open span:nth-child(2) {
  display: none;
}

.p-bottom1Hamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-bottom1Mv {
  margin-top: 4.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom1Mv {
    margin-top: 14.7rem;
  }
}

.p-bottom1Mv::before {
  padding-top: 46%;
}

@media screen and (min-width: 768px) {
  .p-bottom1Mv::before {
    padding-top: 22.8472222222%;
  }
}

.p-bottom1Mv::after {
  content: "";
  width: 100%;
  height: 100%;
  display: inline-block;
  position: absolute;
  top: 0%;
  left: 0%;
  z-index: 1;
  background-color: rgba(54, 54, 54, 0.72);
}

.p-bottom1Mv__title,
.p-bottom1Mv__enTitle {
  position: absolute;
  width: 100%;
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.p-bottom1Mv__title {
  z-index: 3;
  color: #fff;
  font-size: 2rem;
  letter-spacing: 0.16em;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 700;
  width: 100%;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom1Mv__title {
    font-size: 3.9rem;
  }
}

.p-bottom1Mv__enTitle {
  z-index: 2;
  color: rgba(255, 255, 255, 0.15);
  font-size: 4.6rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-bottom1Mv__enTitle {
    font-size: 13.6rem;
  }
}

/* パンくずリスト */
.p-bottom1Breadcrumb {
  padding-top: 2.4rem;
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom1Breadcrumb {
    padding-top: 3.7rem;
    max-width: 105rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom1Breadcrumb.narrowInner {
  max-width: 95rem;
}

.p-bottom1Breadcrumb__items {
  display: flex;
  align-items: center;
  font-weight: 500;
  font-family: "Outfit", sans-serif;
  text-transform: capitalize;
  letter-spacing: 0.08em;
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom1Breadcrumb__items {
    font-size: 1.6rem;
  }
}

.p-bottom1Breadcrumb__items li {
  display: flex;
  align-items: center;
}

.p-bottom1Breadcrumb__items li:nth-of-type(n+2) {
  margin-left: 1rem;
}

.p-bottom1Breadcrumb li:not(:last-of-type)::after {
  content: "";
  width: 3.1rem;
  height: 1px;
  background-color: #373737;
  margin-left: 1.5rem;
}

.p-bottom1Breadcrumb .home {
  font-size: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom1Breadcrumb .home {
    font-size: 1.7rem;
  }
}

.p-bottom1Breadcrumb .current {
  color: #958347;
}

/* お問い合わせ */
.p-bottom1Contact {
  color: #fff;
  text-align: center;
  background-image: url(../images/bottom1/banner-bottom.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
}

.p-bottom1Contact::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(17, 17, 17, 0.68);
  width: 100%;
  height: 100%;
}

.p-bottom1Contact__inner {
  position: relative;
  width: 100%;
  padding: 6.4rem 2rem 8rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom1Contact__inner {
    max-width: 104.6rem;
    padding: 10.2rem 2.5rem 10.5rem;
  }
}

.p-bottom1Contact__enTitle {
  display: block;
  font-family: "Oswald", sans-serif;
  text-align: center;
  text-transform: uppercase;
  font-weight: 300;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom1Contact__enTitle {
    font-size: 3rem;
  }
}

.p-bottom1Contact__enTitle::after {
  content: "";
  display: block;
  width: 7.5rem;
  height: 1.5px;
  background-color: #fff;
  margin-top: 1.5rem;
  margin-inline: auto;
}

.p-bottom1Contact__title {
  margin-top: 1.8rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

.p-bottom1Contact__text {
  margin-top: 2.8rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2;
}

.p-bottom1Contact__wrap {
  display: flex;
  flex-direction: column;
  row-gap: 2.6rem;
  margin-top: 2.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom1Contact__wrap {
    flex-flow: row wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 0 3.3rem;
    margin-top: 5.6rem;
  }
}

.p-bottom1Contact__button {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  border: 1px solid #fff;
  max-width: 38.5rem;
  width: 100%;
  padding: 1.6rem 0;
  font-size: 1.5rem;
  margin-inline: auto;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-bottom1Contact__button {
    padding: 2.3rem 0;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom1Contact__button:hover {
  color: #000;
  opacity: 1;
  transition: color 0.2s 0.05s;
}

.p-bottom1Contact__button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -130%;
  background: #fff;
  width: 120%;
  height: 100%;
}

.p-bottom1Contact__button:hover::before {
  -webkit-animation: skewanime 0.3s ease-out forwards;
  animation: skewanime 0.3s ease-out forwards;
}

@-webkit-keyframes skewanime {
  100% {
    left: -10%;
  }
}

@keyframes skewanime {
  100% {
    left: -10%;
  }
}

.p-bottom1Contact__button::after {
  content: "";
  display: inline-block;
  height: 4.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom1Contact__button::after {
    height: 3.6rem;
  }
}

.p-bottom1Contact__button span {
  z-index: 1;
  display: flex;
  align-items: center;
}

.p-bottom1Contact__button span::before {
  content: "";
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p-bottom1Contact__button:hover span::before {
  transition: background-image 0.15s;
}

.p-bottom1Contact__button span::after {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(-45deg);
  position: absolute;
  right: min(6.6vw, 4rem);
}

@media screen and (min-width: 768px) {
  .p-bottom1Contact__button span::after {
    right: 4rem;
  }
}

.p-bottom1Contact__button:hover span::after {
  transition: border 0.2s 0.15s;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
}

.p-bottom1Contact__button--mail span::before {
  background-image: url(../images/bottom1/mail.svg);
  width: 1.8rem;
  height: 1.3rem;
  margin-right: 0.3rem;
}

.p-bottom1Contact__button--mail:hover span::before {
  background-image: url(../images/bottom1/mail-hover.svg);
}

.p-bottom1Contact__button--hotpper span::before {
  background-image: url(../images/bottom1/hotpepper-beauty.svg);
  width: 1rem;
  height: 1.5rem;
  margin-right: 0.3rem;
}

.p-bottom1Contact__button--hotpper:hover span::before {
  background-image: url(../images/bottom1/hotpepper-beauty-hover.svg);
}

/* フッター */
.p-bottom1Footer {
  background-color: #312C28;
  padding: 4rem 2rem;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom1Footer {
    padding: 5.1rem 5.1rem 5.8rem;
  }
}

.p-bottom1Footer__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom1Footer__inner {
    max-width: 115.2rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    display: flex;
    align-items: center;
  }
}

.p-bottom1Footer__logo {
  display: block;
  margin-inline: auto;
  width: 18.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom1Footer__logo {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom1Footer__items {
  margin-top: 4rem;
  display: flex;
  flex-direction: column;
  row-gap: 1.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom1Footer__items {
    margin-top: 0;
    flex-direction: row;
    align-items: center;
    gap: 0 3rem;
    margin-left: auto;
  }
}

.p-bottom1Footer__item {
  text-align: center;
}

.p-bottom1Footer__link {
  font-family: "Outfit", sans-serif;
  text-transform: capitalize;
  font-weight: 300;
  letter-spacing: 0.04em;
  font-size: 1.5rem;
}

.p-bottom1Footer__copyright {
  text-align: center;
  margin-top: 4.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom1Footer__copyright {
    text-align: right;
    margin-right: 15.8rem;
    margin-top: 13.2rem;
  }
}

.p-bottom1Footer__copyright small {
  font-family: "Outfit", sans-serif;
  font-weight: 300;
  letter-spacing: 0.04em;
  font-size: 1rem;
  transform: scale(0.7);
}

.p-bottom1Footer__pagetop {
  position: fixed;
  bottom: 1.8rem;
  right: 1.8rem;
  width: 4.6rem;
  height: 4.6rem;
  background-color: #312C28;
  cursor: pointer;
  z-index: 10;
  transition: opacity 0.3s ease-out;
  border-radius: 50%;
}

@media screen and (min-width: 768px) {
  .p-bottom1Footer__pagetop {
    bottom: 3rem;
    right: 4rem;
    width: 5.3rem;
    height: 5.3rem;
  }
}

.p-bottom1Footer__pagetop::after {
  content: "";
  display: block;
  background-image: url(../images/bottom1/top-btn.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.p-bottom1Footer__pagetop:hover {
  opacity: 0.8;
}

.p-bottom2 {
  position: fixed;
  top: 0;
  left: 0;
  height: 4.8rem;
  width: 100%;
  z-index: 100;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom2 {
    height: 8.3rem;
  }
}

.p-bottom2__inner {
  display: flex;
  align-items: center;
  height: inherit;
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom2__inner {
    max-width: 143rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom2__logo {
  width: 3rem;
  height: 3rem;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .p-bottom2__logo {
    width: 4.3rem;
    height: 4.3rem;
  }
}

.p-bottom2__hamburger {
  margin-left: auto;
  margin-right: -0.3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom2__menu {
    margin-left: auto;
  }
}

.p-bottom2__instagram {
  display: block;
  width: 4.2rem;
  height: 4.2rem;
  margin-inline: auto;
  margin-top: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom2__instagram {
    margin: 0 1.3rem 0 1.1rem;
  }
}

.p-bottom2Nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100vh - 4.8rem);
  margin-top: 4.8rem;
  padding-top: 3.2vh;
  transform: translateX(100%);
  background-color: #fff;
  z-index: -1;
  transition: transform 0.3s;
}

@media screen and (min-width: 768px) {
  .p-bottom2Nav {
    display: flex;
    align-items: center;
    width: auto;
    background-color: transparent;
    position: static;
    height: inherit;
    transform: translateX(0);
    z-index: auto;
    margin-top: 0;
    padding-top: 0;
  }
}

.p-bottom2Nav.open {
  transform: translateX(0);
}

.p-bottom2Nav__items {
  height: inherit;
  width: 85vw;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom2Nav__items {
    display: flex;
    max-width: none;
    width: auto;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom2Nav__item {
    display: flex;
    height: inherit;
    align-items: center;
    flex-shrink: 0;
  }
}

.p-bottom2Nav__item:last-child {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom2Nav__item:last-child {
    max-width: 13.4rem;
  }
}

.p-bottom2Nav__link {
  padding: 2.8rem 0 1.4rem;
  display: block;
  color: #010101;
  border-bottom: 1px solid #454545;
}

@media screen and (min-width: 768px) {
  .p-bottom2Nav__link {
    height: inherit;
    display: flex;
    align-items: center;
    padding: 0 2.2rem;
    letter-spacing: 0.14em;
    border: none;
  }
}

.p-bottom2Nav__link p {
  position: relative;
  font-size: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom2Nav__link p {
    text-align: center;
    font-size: 1.4rem;
  }
}

.p-bottom2Nav__link p::after {
  content: "";
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  border-bottom: 1px solid #454545;
  border-right: 1px solid #454545;
  top: 50%;
  right: 1.3rem;
  transform: rotate(-45deg) translateY(-6px);
}

@media screen and (min-width: 768px) {
  .p-bottom2Nav__link p::after {
    content: none;
  }
}

.p-bottom2Nav__link span {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-bottom2Nav__link span {
    font-family: "Oswald", sans-serif;
    display: block;
    text-transform: uppercase;
    font-weight: 300;
    font-size: 1rem;
    margin-top: 0.3rem;
    letter-spacing: 0.14em;
  }
}

.p-bottom2Hamburger__button {
  display: block;
  width: 2.8rem;
  height: 1.9rem;
  position: relative;
  right: 0.7rem;
}

.p-bottom2Hamburger__button span {
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #454545;
  transition: 0.3s;
}

.p-bottom2Hamburger__button span:first-child {
  top: 0;
}

.p-bottom2Hamburger__button span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}

.p-bottom2Hamburger__button span:last-child {
  bottom: 0;
}

.p-bottom2Hamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  justify-content: center;
  align-items: center;
}

.p-bottom2Hamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-bottom2Hamburger__button.open span:nth-child(2) {
  display: none;
}

.p-bottom2Hamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-bottom2Mv {
  margin-top: 4.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom2Mv {
    margin-top: 7.4rem;
  }
}

.p-bottom2Mv::before {
  padding-top: 46%;
}

@media screen and (min-width: 768px) {
  .p-bottom2Mv::before {
    padding-top: 22.7083333333%;
  }
}

.p-bottom2Mv::after {
  content: "";
  width: 100%;
  height: 100%;
  display: inline-block;
  position: absolute;
  top: 0%;
  left: 0%;
  z-index: 1;
  background-color: rgba(0, 0, 0, 0.7);
}

.p-bottom2Mv__title,
.p-bottom2Mv__enTitle {
  position: absolute;
  width: 100%;
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.p-bottom2Mv__title {
  z-index: 3;
  color: #fff;
  font-size: 2rem;
  letter-spacing: 0.16em;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  width: 100%;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom2Mv__title {
    font-size: 3.9rem;
  }
}

.p-bottom2Mv__enTitle {
  z-index: 2;
  color: rgba(255, 255, 255, 0.15);
  font-size: 4.6rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-family: "Oswald", sans-serif;
  font-weight: 300;
}

@media screen and (min-width: 768px) {
  .p-bottom2Mv__enTitle {
    font-size: 13.6rem;
  }
}

/* パンくずリスト */
.p-bottom2Breadcrumb {
  padding-top: 2.4rem;
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom2Breadcrumb {
    padding-top: 3.7rem;
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom2Breadcrumb__items {
  display: flex;
  align-items: center;
  text-transform: capitalize;
  letter-spacing: 0.06em;
  font-size: 1.2rem;
}

.p-bottom2Breadcrumb__items li {
  display: flex;
  align-items: center;
}

.p-bottom2Breadcrumb__items li:nth-of-type(n+2) {
  margin-left: 1rem;
}

.p-bottom2Breadcrumb li:not(:last-of-type)::after {
  content: "";
  width: 2.2rem;
  height: 1px;
  background-color: #373737;
  margin-left: 1.5rem;
}

.p-bottom2Breadcrumb .home {
  font-family: "Oswald", sans-serif;
  font-weight: 300;
  font-size: 1.3rem;
  letter-spacing: 0.08em;
}

.p-bottom3 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  height: 8.9rem;
  display: flex;
  align-items: center;
}

.p-bottom3__logo {
  width: 3.8rem;
  margin-left: 1.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom3__logo {
    width: 5.9rem;
  }
}

.p-bottom3__hamburger {
  margin: -0.6rem 0.7rem 0 auto;
}

.p-bottom3Hamburger {
  width: 5.8rem;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

.p-bottom3Hamburger__button {
  display: block;
  width: 3.4rem;
  height: 2.4rem;
  position: relative;
}

.p-bottom3Hamburger__button::after {
  position: absolute;
  content: "メニュー";
  font-family: "Noto Serif JP", serif;
  font-size: 1.1rem;
  white-space: nowrap;
  color: #fff;
  left: 50%;
  transform: translateX(-50%);
  bottom: -2.2rem;
}

.p-bottom3Hamburger__button span {
  display: block;
  position: absolute;
  right: 0;
  width: 100%;
  height: 1px;
  background-color: #fff;
  transition: 0.3s;
  transition: transform 0.3s ease-out;
}

.p-bottom3Hamburger__button span:first-child {
  top: 0;
}

.p-bottom3Hamburger__button span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
  width: 70%;
}

.p-bottom3Hamburger__button span:last-child {
  bottom: 0;
}

.p-bottom3Hamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
}

.p-bottom3Hamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-bottom3Hamburger__button.open span:nth-child(2) {
  display: none;
}

.p-bottom3Hamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-bottom3Nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: -1;
  transform: translateX(-100%);
  transition: transform 0.4s ease-out;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
  padding-top: 7.4rem;
  background-color: #111;
}

@media screen and (min-width: 768px) {
  .p-bottom3Nav {
    z-index: auto;
    position: static;
    max-width: none;
    height: 100%;
    opacity: 1;
    visibility: visible;
    overflow: visible;
    transform: translateX(0);
    background-color: transparent;
    padding-top: 0;
  }
}

.p-bottom3Nav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-bottom3Nav__inner {
  width: 100%;
  padding: 0 2.4rem 11.2rem;
  min-height: 100%;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom3Nav__inner {
    height: 100%;
    display: flex;
    align-items: center;
    padding: 0 0 0 5rem;
  }
}

.p-bottom3Nav__inner::after {
  content: "";
  display: block;
  width: 100vw;
  height: 10px;
  background-color: #fff;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 calc(50% - 50vw);
}

@media screen and (min-width: 768px) {
  .p-bottom3Nav__inner::after {
    content: none;
  }
}

.p-bottom3Nav__container {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom3Nav__container {
    max-width: min(56vw, 70rem);
    display: flex;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom3Nav__link {
  display: block;
  width: 100%;
  font-weight: 500;
  padding: 2.8rem 0 1.3rem;
  color: #fff;
  border-bottom: 1px solid #fff;
  position: relative;
  font-size: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom3Nav__link {
    font-size: 1.1rem;
    font-weight: 600;
    padding: 0 1.5rem;
    width: auto;
    border: none;
    display: flex;
    align-items: center;
  }
}

.p-bottom3Nav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 57%;
  right: 1.5rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-bottom3Nav__link::after {
    content: none;
  }
}

.p-bottom3Nav__link span {
  position: relative;
}

.p-bottom3Nav__link span::after {
  content: "";
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  bottom: -0.3rem;
  left: 50%;
  transform: translateX(-50%);
  transition: width 0.3s ease-out;
}

.p-bottom3Nav__link:hover span::after {
  width: 100%;
}

.p-bottom3sidebar {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-bottom3sidebar {
    position: fixed;
    z-index: 100;
    top: 0;
    right: 0;
    width: 17.7rem;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}

.p-bottom3sidebar::before {
  content: "";
  display: block;
  width: 1px;
  height: 80vh;
  background-color: #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}

.p-bottom3sidebar__inner {
  padding-top: 1.6rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  height: 83%;
}

.p-bottom3sidebar__logo {
  width: 6.5rem;
}

.p-bottom3sidebar__hamburger {
  margin-top: 8.8rem;
}

.p-bottom3sidebar__reservation {
  writing-mode: vertical-rl;
  color: #fff;
  white-space: nowrap;
  font-family: "Noto Serif JP", serif;
  font-size: 1.1rem;
  padding: 3.2rem 1rem;
  border: 1px solid #fff;
  letter-spacing: 0.2em;
}

.p-bottom3sidebarHamburger {
  display: flex;
  justify-content: center;
  align-items: center;
}

.p-bottom3sidebarHamburger__button {
  cursor: pointer;
  display: block;
  width: 2.3rem;
  height: 3.3rem;
  position: relative;
}

.p-bottom3sidebarHamburger__button::after {
  position: absolute;
  content: "メニュー";
  font-family: "Noto Serif JP", serif;
  font-size: 1rem;
  white-space: nowrap;
  color: #fff;
  left: 50%;
  transform: translateX(-50%);
  bottom: -2.5rem;
}

.p-bottom3sidebarHamburger__button span {
  display: block;
  position: absolute;
  bottom: 0;
  width: 1px;
  height: 100%;
  background-color: #fff;
  transition: 0.3s;
  transition: transform 0.3s ease-out;
}

.p-bottom3sidebarHamburger__button span:first-child {
  right: 0;
}

.p-bottom3sidebarHamburger__button span:nth-child(2) {
  left: 50%;
  transform: translateX(-50%);
  height: 70%;
}

.p-bottom3sidebarHamburger__button span:last-child {
  left: 0;
}

.p-bottom3sidebarHamburger__button.open span {
  left: 50%;
  transform: translateX(-50%);
}

.p-bottom3sidebarHamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-bottom3sidebarHamburger__button.open span:nth-child(2) {
  display: none;
}

.p-bottom3sidebarHamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-bottom3sidebarNav {
  position: fixed;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: #111;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
}

.p-bottom3sidebarNav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-bottom3sidebarNav__inner {
  width: calc(100vw - 17.7rem);
  min-height: 100%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 14rem;
  column-gap: 14rem;
}

.p-bottom3sidebarNav__inner::after {
  content: "";
  display: block;
  width: 100vw;
  position: absolute;
  left: 0;
  bottom: 0;
  height: 10px;
  background-color: #fff;
}

.p-bottom3sidebarNav__inner::before {
  content: "shop name";
  height: 100%;
  text-align: center;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  color: #fff;
  opacity: 0.25;
  font-size: 12rem;
  line-height: 1;
  position: absolute;
  left: 0;
  top: 1rem;
}

.p-bottom3sidebarNav__container {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom3sidebarNav__container {
    max-width: 17rem;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom3sidebarNav__link {
  color: #fff;
  font-size: 1.8rem;
  font-family: "Noto Serif JP", serif;
  display: flex;
  align-items: center;
  transition: color 0.3s ease-out;
}

.p-bottom3sidebarNav__link::before {
  content: "";
  display: block;
  width: 1rem;
  height: 2px;
  background-color: #fff;
  margin-right: 1rem;
}

.p-bottom3sidebarNav__link:nth-of-type(n+2) {
  margin-top: 3.3rem;
}

.p-bottom3sidebarNav__img {
  max-width: 40rem;
}

.p-bottom3sidebarNav__img::before {
  padding-top: 78%;
}

.p-bottom3sidebarNav__img::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
}

.p-bottom3body {
  background-color: #101010;
  color: #fff;
}

.p-bottom3mv {
  position: relative;
  padding-top: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom3mv {
    padding-top: 33.4rem;
  }
}

.p-bottom3mv__img {
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .p-bottom3mv__img {
    width: 75.0694444444vw;
    margin-left: auto;
  }
}

.p-bottom3mv__img::before {
  padding-top: 49.7687326549%;
}

.p-bottom3mv__enTitle {
  font-family: "Cormorant Garamond", serif;
  font-size: 6.5rem;
  margin-top: -1rem;
  letter-spacing: 0.02em;
  text-transform: capitalize;
  color: rgba(255, 255, 255, 0.1);
  display: block;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom3mv__enTitle {
    text-align: left;
    position: absolute;
    top: 12.6%;
    left: 0;
    font-size: 21.7rem;
  }
}

.p-bottom3mv__title {
  margin-top: -6rem;
  margin-left: 6.5%;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom3mv__title {
    margin-top: 0;
    margin-left: 0;
    writing-mode: vertical-rl;
    position: absolute;
    top: 34.3%;
    left: 8.6%;
    font-size: 5.2rem;
  }
}

/* パンくずリスト */
.p-bottom3Breadcrumb {
  padding-top: 2.4rem;
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom3Breadcrumb {
    padding-top: 3.1rem;
    width: 75.0694444444vw;
    padding-right: 0;
    padding-left: 0;
    -webkit-margin-start: auto;
    margin-inline-start: auto;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom3Breadcrumb__items {
  display: flex;
  align-items: center;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 1.2rem;
  font-family: "Noto Serif JP", serif;
}

.p-bottom3Breadcrumb__items li {
  display: flex;
  align-items: center;
}

.p-bottom3Breadcrumb__items li:nth-of-type(n+2) {
  margin-left: 0.6rem;
}

.p-bottom3Breadcrumb li:not(:last-of-type)::after {
  content: "/";
  margin-left: 0.2rem;
}

.p-bottom3Breadcrumb li:not(:last-of-type) {
  color: #969696;
}

.p-bottom3Footer {
  color: #fff;
  background-color: #101010;
  padding: 7.9rem 0 4.5rem;
  position: relative;
}

.p-bottom3Footer__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom3Footer__inner {
    max-width: 105rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom3Footer__logo {
  display: block;
  margin-inline: auto;
  width: 17rem;
}

@media screen and (min-width: 768px) {
  .p-bottom3Footer__logo {
    width: 18.9rem;
  }
}

.p-bottom3Footer__items {
  margin-top: 4rem;
  display: flex;
  flex-direction: column;
  row-gap: 2.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom3Footer__items {
    margin-top: 4.6rem;
    flex-flow: row nowrap;
    align-items: flex-start;
    justify-content: center;
    gap: 0 3rem;
  }
}

.p-bottom3Footer__item {
  text-align: center;
}

.p-bottom3Footer__link {
  font-size: 1.1rem;
  font-weight: 700;
}

.p-bottom3Footer__link span {
  position: relative;
}

.p-bottom3Footer__link span::after {
  content: "";
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  bottom: -0.3rem;
  left: 50%;
  transform: translateX(-50%);
  transition: width 0.3s ease-out;
}

.p-bottom3Footer__link:hover span::after {
  width: 100%;
}

.p-bottom3Footer__copyright {
  text-align: center;
  margin-top: 4.8rem;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom3Footer__copyright {
    margin-top: 7.9rem;
  }
}

.p-bottom3Footer__copyright small {
  display: block;
  text-align: center;
  font-family: "Cormorant Garamond", serif;
  letter-spacing: 0.1em;
  font-size: 1rem;
  transform: scale(0.9);
}

.p-bottom3Footer__pagetop {
  position: absolute;
  top: -7rem;
  right: 1.7rem;
  width: 9.7rem;
  height: 7.1rem;
  background-image: url(../images/bottom3/top-btn.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

@media screen and (min-width: 768px) {
  .p-bottom3Footer__pagetop {
    width: 11.7rem;
    height: 8.5rem;
    top: -8.4rem;
    right: 19.3rem;
  }
}

.p-bottom3Footer__pagetop:hover {
  opacity: 0.8;
}

.p-bottom4 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  background-color: #fff;
  height: 5.8rem;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .p-bottom4 {
    height: 7.3rem;
  }
}

.p-bottom4__logo {
  display: block;
  width: 15.8rem;
  margin-left: 2.4rem;
}

.p-bottom4__hamburger {
  margin-left: auto;
}

.p-bottom4Hamburger {
  width: 5.8rem;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

.p-bottom4Hamburger__button {
  display: block;
  width: 2rem;
  height: 1.5rem;
  position: relative;
}

.p-bottom4Hamburger__button span {
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #000;
  transition: 0.3s;
}

.p-bottom4Hamburger__button span:first-child {
  top: 0;
}

.p-bottom4Hamburger__button span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}

.p-bottom4Hamburger__button span:last-child {
  bottom: 0;
}

.p-bottom4Hamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
}

.p-bottom4Hamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-bottom4Hamburger__button.open span:nth-child(2) {
  display: none;
}

.p-bottom4Hamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-bottom4Nav {
  position: fixed;
  top: 5.8rem;
  left: 0;
  width: 100%;
  height: calc(100vh - 5.8rem);
  background-color: #fff;
  z-index: -1;
  transform: translateX(-100%);
  transition: transform 0.4s ease-out;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
  padding-top: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom4Nav {
    z-index: auto;
    position: static;
    max-width: min(85vw, 112rem);
    height: 100%;
    opacity: 1;
    visibility: visible;
    overflow: visible;
    transform: translateX(0);
    margin-left: auto;
    background-color: transparent;
    padding-top: 0;
  }
}

.p-bottom4Nav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-bottom4Nav__inner {
  width: 100%;
  padding: 0 2.4rem 11.2rem;
  min-height: 100%;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom4Nav__inner {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 2.4rem 0 0;
  }
}

.p-bottom4Nav__inner::after {
  content: "";
  display: block;
  width: 100vw;
  height: 10px;
  background-color: #000;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 calc(50% - 50vw);
}

@media screen and (min-width: 768px) {
  .p-bottom4Nav__inner::after {
    content: none;
  }
}

.p-bottom4Nav__container {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom4Nav__container {
    max-width: min(56vw, 70rem);
    display: flex;
    justify-content: flex-end;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom4Nav__link {
  display: block;
  width: 100%;
  letter-spacing: 0.08em;
  font-weight: 400;
  padding: 2.8rem 0 1.3rem;
  border-bottom: 1px solid #000;
  position: relative;
  font-size: 1.5rem;
  font-family: "Noto Serif JP", serif;
}

@media screen and (min-width: 768px) {
  .p-bottom4Nav__link {
    font-size: 1.2rem;
    padding: 0 1.7rem;
    width: auto;
    border: none;
    display: flex;
    align-items: center;
  }
}

.p-bottom4Nav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 57%;
  right: 1.5rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-bottom4Nav__link::after {
    content: none;
  }
}

.p-bottom4Nav__menu {
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  margin-top: 3.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom4Nav__menu {
    margin-top: 0;
    justify-content: flex-end;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    margin-left: 2.8rem;
  }
}

.p-bottom4Nav__circle {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 4.2rem;
  height: 4.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom4Nav__circle {
    width: 2.8rem;
    height: 2.8rem;
  }
}

.p-bottom4Nav__circle--instagram {
  background-image: url(../images/bottom4/icon-instagram.svg);
}

.p-bottom4Nav__circle--facebook {
  background-image: url(../images/bottom4/icon-facebook.svg);
}

.p-bottom4Nav__button {
  margin-top: 3.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #2E4A90;
  width: 100%;
  max-width: 28rem;
  color: #fff;
  margin-inline: auto;
  padding: 1.3rem 0;
  font-size: 1.3rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
  position: relative;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-bottom4Nav__button {
    font-size: 1.2rem;
    max-width: 15.2rem;
    padding: 0.85rem 0;
    margin-top: 0;
    -webkit-margin-start: 3rem;
    margin-inline-start: 3rem;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom4Nav__button:hover {
  opacity: 0.8;
}

.p-bottom4Nav__button::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 1.5rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(-45deg) translateY(-50%);
}

@media screen and (min-width: 768px) {
  .p-bottom4Nav__button::after {
    content: none;
  }
}

.p-bottom4Nav__button span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.p-bottom4Nav__button span::before {
  content: "";
  display: block;
  width: 1.2rem;
  height: 0.9rem;
  background-image: url(../images/bottom4/mail.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin-right: 0.3rem;
}

.p-bottom4Mv {
  margin-top: 0;
}

@media screen and (min-width: 768px) {
  .p-bottom4Mv {
    margin-top: 0;
  }
}

.p-bottom4Mv::before {
  padding-top: 30%;
}

@media screen and (min-width: 768px) {
  .p-bottom4Mv::before {
    padding-top: 19.45%;
  }
}

/* .p-bottom4Mv::after {
  content: "";
  width: 100%;
  height: 100%;
  display: inline-block;
  position: absolute;
  top: 0%;
  left: 0%;
  z-index: 1;
  background-color: rgba(0, 0, 0, 0.7);
} */

.p-bottom4Mv__title,
.p-bottom4Mv__enTitle {
  position: absolute;
  width: 100%;
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.p-bottom4Mv__title {
  z-index: 3;
  color: #fff;
  font-family: "Zen Maru Gothic";
  font-weight: 500;
  font-size: 20px;
  letter-spacing: 0.11em;
  text-align: center;
  color: #fff;
  top: 58%;
  width: 100%;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom4Mv__title {
    font-size: 34px;
    top: 55.5%;
  }
}

.p-bottom4Mv__enTitle {
  z-index: 2;
  font-family: Outfit;
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-align: center;
  color: #fff;
  top: 40%;

}

@media screen and (min-width: 768px) {
  .p-bottom4Mv__enTitle {
    font-size: 15px;
    top: 43%;
  }
}

/* パンくずリスト */
.p-bottom4Breadcrumb {
  padding-top: 2.4rem;
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom4Breadcrumb {
    padding-top: 3.7rem;
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom4Breadcrumb__items {
  display: flex;
  align-items: center;
  text-transform: capitalize;
  letter-spacing: 0.06em;
  font-size: 1.2rem;
}

.p-bottom4Breadcrumb__items li {
  display: flex;
  align-items: center;
}

.p-bottom4Breadcrumb__items li:nth-of-type(n+2) {
  margin-left: 1.4rem;
}

.p-bottom4Breadcrumb li:not(:last-of-type)::after {
  content: "";
  width: 2.2rem;
  height: 1px;
  background-color: #373737;
  margin-left: 0.8rem;
}

.p-bottom4Breadcrumb .home {
  font-family: "Inter", sans-serif;
  font-weight: 500;
  letter-spacing: 0.08em;
}

.p-bottom4Breadcrumb .current {
  color: #F77700;
}

/* リンク */
.p-bottom4cta {
  background-color: #1E4EA5;
  padding-top: 6rem;
  padding-bottom: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom4cta {
    padding-top: 9.3rem;
    padding-bottom: 9.3rem;
  }
}

.p-bottom4cta__inner {
  display: grid;
  row-gap: 4rem;
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom4cta__inner {
    grid-template-columns: repeat(2, 1fr);
    gap: 0 3.2rem;
    max-width: 106.3rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom4cta__block {
  transition: opacity 0.3s ease-out;
}

.p-bottom4cta__block:hover {
  opacity: 0.8;
}

.p-bottom4cta__img::before {
  padding-top: 51.8367346939%;
}

.p-bottom4cta__text {
  padding: 1.6rem 0 1.4rem;
  text-align: center;
  background-color: #fff;
}

.p-bottom4cta__enTitle {
  color: #000;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  font-size: 2rem;
  letter-spacing: 0.06em;
}

@media screen and (min-width: 768px) {
  .p-bottom4cta__enTitle {
    font-size: 2.4rem;
  }
}

.p-bottom4cta__title {
  font-size: 1rem;
  letter-spacing: 0.06em;
  color: #435DA8;
  font-weight: 500;
}

.p-bottom4Footer {
  color: #fff;
  background-color: #000;
}

.p-bottom4Footer__inner {
  width: 100%;
  max-width: 60rem;
  margin-inline: auto;
  padding: 5.8rem 2rem;
  display: flex;
  flex-direction: column;
  row-gap: 3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom4Footer__inner {
    flex-direction: row;
    align-items: flex-start;
    max-width: 113rem;
    padding: 5.8rem 2.5rem 5.6rem;
  }
}

.p-bottom4Footer__logo {
  display: block;
  width: 16.8rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom4Footer__logo {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom4Footer__address {
  margin-top: 4rem;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.5714285714;
}

@media screen and (min-width: 768px) {
  .p-bottom4Footer__address {
    margin-top: 1.5rem;
  }
}

.p-bottom4Footer__policy {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-decoration: underline;
  text-underline-offset: 0.5rem;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  margin-left: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom4Footer__policy {
    margin: 5.8rem 0 0 0;
  }
}

.p-bottom4Footer__policy.u-mobile {
  display: block;
}

@media screen and (min-width: 768px) {
  .p-bottom4Footer__policy.u-mobile {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom4Footer__policy.u-desktop {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom4Footer__block {
    width: 48.5rem;
    margin-left: auto;
  }
}

.p-bottom4Footer__items {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
}

@media screen and (min-width: 768px) {
  .p-bottom4Footer__items {
    flex-direction: row;
    align-items: center;
    gap: 0 2.9rem;
    justify-content: flex-end;
  }
}

.p-bottom4Footer__link {
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

.p-bottom4Footer__link span {
  position: relative;
}

.p-bottom4Footer__link span::after {
  content: "";
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  bottom: -0.3rem;
  left: 50%;
  transform: translateX(-50%);
  transition: width 0.3s ease-out;
}

.p-bottom4Footer__link:hover span::after {
  width: 100%;
}

.p-bottom4Footer__childLinks {
  margin-top: 4rem;
  border-top: 1px solid #656565;
  padding-top: 2rem;
  display: grid;
  row-gap: 1rem;
}

@media screen and (min-width: 768px) {
  .p-bottom4Footer__childLinks {
    margin-top: 8.5rem;
    grid-template-columns: 10.4rem 9.1rem 23.4rem;
    -moz-column-gap: 2.6rem;
    column-gap: 2.6rem;
  }
}

.p-bottom4Footer__childLink {
  font-size: 1.2rem;
  letter-spacing: 0.08em;
}

.p-bottom4Footer__copyright {
  background-color: #fff;
  padding: 2rem 0;
}

.p-bottom4Footer__copyrightInner {
  width: 100%;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom4Footer__copyrightInner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom4Footer__copyright small {
  display: block;
  text-align: center;
  letter-spacing: 0.1em;
  font-size: 1rem;
  color: #000;
}

@media screen and (min-width: 768px) {
  .p-bottom4Footer__copyright small {
    text-align: right;
    font-size: 1.2rem;
  }
}

.p-bottom5 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  background-color: #fff;
  height: 5.3rem;
  display: flex;
  align-items: center;
  padding-left: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom5 {
    height: 9.3rem;
    padding-right: 4.9rem;
    padding-left: 3.6rem;
  }
}

.p-bottom5__logo {
  display: block;
  width: 13rem;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-bottom5__logo {
    width: 18.5rem;
  }
}

.p-bottom5__hamburger {
  position: absolute;
  top: 50%;
  right: 2.2rem;
  transform: translateY(-50%);
}

.p-bottom5Hamburger {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  cursor: pointer;
}

.p-bottom5Hamburger__button {
  display: block;
  width: 3.4rem;
  height: 2.2rem;
  position: relative;
}

.p-bottom5Hamburger__button span {
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #111;
  transition: 0.3s;
}

.p-bottom5Hamburger__button span:first-child {
  top: 0;
}

.p-bottom5Hamburger__button span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}

.p-bottom5Hamburger__button span:last-child {
  bottom: 0;
}

.p-bottom5Hamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
}

.p-bottom5Hamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-bottom5Hamburger__button.open span:nth-child(2) {
  display: none;
}

.p-bottom5Hamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-bottom5Nav {
  position: fixed;
  top: 5.2rem;
  left: 0;
  width: 100%;
  height: calc(100vh - 5.2rem);
  background-color: #fff;
  z-index: 10;
  transform: translateX(-100%);
  transition: transform 0.4s ease-out;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
  padding-top: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom5Nav {
    position: static;
    height: 100%;
    opacity: 1;
    visibility: visible;
    overflow: visible;
    transform: translateX(0);
    margin-left: auto;
    background: transparent;
    padding-top: 0;
  }
}

.p-bottom5Nav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-bottom5Nav__inner {
  width: 100%;
  min-height: 100%;
  padding: 0 2.7rem 4.9rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom5Nav__inner {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0;
  }
}

.p-bottom5Nav__inner::after {
  content: "";
  position: absolute;
  display: block;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 1.2rem;
  margin: 0 calc(50% - 50vw);
  background-color: #2F5189;
}

@media screen and (min-width: 768px) {
  .p-bottom5Nav__inner::after {
    content: none;
  }
}

.p-bottom5Nav__items {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom5Nav__items {
    max-width: none;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom5Nav__items {
    height: 100%;
  }
}

.p-bottom5Nav__item {
  border-bottom: 1px solid #000;
}

@media screen and (min-width: 768px) {
  .p-bottom5Nav__item {
    border: none;
  }
}

.p-bottom5Nav__item--last {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-bottom5Nav__item--last {
    display: block;
  }
}

.p-bottom5Nav__link {
  display: block;
  width: 100%;
  letter-spacing: 0.04em;
  font-weight: 500;
  padding: 2.8rem 0 1.2rem;
  position: relative;
  font-size: 1.5rem;
  color: #3F3F3F;
  font-family: "Noto Serif JP", serif;
}

@media screen and (min-width: 768px) {
  .p-bottom5Nav__link {
    font-size: 1.1rem;
    height: 100%;
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    padding: 0 2.1rem;
    font-family: "Noto Sans JP", sans-serif;
    width: auto;
    transition: color 0.3s ease-out;
  }
}

.p-bottom5Nav__link:hover {
  color: #6DB8D0;
}

.p-bottom5Nav__link span {
  position: relative;
}

.p-bottom5Nav__link span::after {
  content: "";
  width: 0;
  height: 1px;
  background-color: #6DB8D0;
  position: absolute;
  bottom: -0.3rem;
  left: 50%;
  transform: translateX(-50%);
  transition: width 0.3s ease-out;
}

.p-bottom5Nav__link:hover span::after {
  width: 100%;
}

.p-bottom5Nav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 57%;
  right: 1.2rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-bottom5Nav__link::after {
    content: none;
  }
}

.p-bottom5Nav__reservation {
  color: #fff;
  margin-inline: auto;
  display: block;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  font-weight: 500;
  background-color: #D1DC02;
  padding: 0.8rem;
  border-radius: 999rem;
  width: 20.1rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom5Nav__reservation {
    -webkit-margin-start: 3.1rem;
    margin-inline-start: 3.1rem;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom5Nav__reservation span {
  display: flex;
  align-items: center;
  justify-content: center;
}

.p-bottom5Nav__reservation span::before {
  content: "";
  display: block;
  width: 1.4rem;
  height: 1rem;
  margin-right: 0.5rem;
  background-image: url(../images/bottom5/mail.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p-bottom5Mv {
  margin-top: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom5Mv {
    margin-top: 15.4rem;
  }
}

.p-bottom5Mv__img {
  margin-inline: auto;
  width: 90vw;
}

@media screen and (min-width: 768px) {
  .p-bottom5Mv__img {
    width: 93.1944444444vw;
  }
}

.p-bottom5Mv__img::before {
  padding-top: 61.3263785395%;
}

.p-bottom5Mv__img::after {
  content: "";
  width: 100%;
  height: 100%;
  display: inline-block;
  position: absolute;
  top: 0%;
  left: 0%;
  background-color: rgba(40, 47, 47, 0.1);
  border-radius: 3rem;
}

.p-bottom5Mv__img img {
  border-radius: 3rem;
}

.p-bottom5Mv__titleWrap {
  position: absolute;
  width: 100%;
  text-align: center;
  top: 49.7%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  z-index: 1;
}

.p-bottom5Mv__enTitle {
  font-family: "Outfit", sans-serif;
  text-transform: capitalize;
  font-weight: 500;
  font-size: 4.8rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom5Mv__enTitle {
    font-size: 6.2rem;
  }
}

.p-bottom5Mv__title {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 2rem;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-bottom5Mv__title {
    margin-top: -0.3rem;
    font-size: 2.2rem;
  }
}

/* パンくずリスト */
.p-bottom5Breadcrumb {
  position: absolute;
  z-index: 1;
  width: calc(100% - 4rem);
  top: 1.2rem;
  left: 50%;
  transform: translateX(-50%);
  margin-inline: auto;
  border-bottom: 1px solid #fff;
  padding-bottom: 0.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom5Breadcrumb {
    top: 2.8rem;
    width: calc(100% - 6.2rem);
  }
}

.p-bottom5Breadcrumb__items {
  display: flex;
  align-items: center;
  text-transform: capitalize;
  font-weight: 500;
  letter-spacing: 0.04em;
  font-size: 1rem;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom5Breadcrumb__items {
    font-size: 1.2rem;
  }
}

.p-bottom5Breadcrumb__items li {
  display: flex;
  align-items: center;
}

.p-bottom5Breadcrumb__items li:nth-of-type(n+2) {
  margin-left: 0.8rem;
}

.p-bottom5Breadcrumb li:not(:last-of-type)::after {
  content: "";
  width: 1.5rem;
  height: 1px;
  background-color: #fff;
  margin-left: 0.8rem;
}

.p-bottom5Breadcrumb .home {
  font-family: "Inter", sans-serif;
  font-size: 1.2rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom5Breadcrumb .home {
    font-size: 1.5rem;
  }
}

.p-bottom5Breadcrumb .current {
  color: #D1DC02;
}

/* リンク */
.p-bottom5cta {
  background: linear-gradient(#C3E2DE 0%, #8DCCD2 100%);
  padding-top: 6rem;
  padding-bottom: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom5cta {
    padding-top: 9.3rem;
    padding-bottom: 9.3rem;
  }
}

.p-bottom5cta__inner {
  display: grid;
  row-gap: 4rem;
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom5cta__inner {
    grid-template-columns: repeat(2, 1fr);
    gap: 0 3.2rem;
    max-width: 106.3rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom5cta__block {
  transition: opacity 0.3s ease-out;
}

.p-bottom5cta__block:hover {
  opacity: 0.8;
}

.p-bottom5cta__img::before {
  padding-top: 51.8367346939%;
}

.p-bottom5cta__text {
  padding: 1.6rem 0 1.4rem;
  text-align: center;
  background-color: #fff;
}

.p-bottom5cta__enTitle {
  color: #000;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  font-size: 2rem;
  letter-spacing: 0.06em;
}

@media screen and (min-width: 768px) {
  .p-bottom5cta__enTitle {
    font-size: 2.4rem;
  }
}

.p-bottom5cta__title {
  font-size: 1rem;
  letter-spacing: 0.06em;
  color: #D1DC02;
  font-weight: 500;
}

.p-bottom5Footer {
  color: #fff;
  background-color: #2B2B2B;
}

.p-bottom5Footer__inner {
  width: 100%;
  max-width: 60rem;
  margin-inline: auto;
  padding: 5.8rem 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom5Footer__inner {
    max-width: 113rem;
    padding: 5.8rem 2.5rem 5.6rem;
  }
}

.p-bottom5Footer__container {
  display: flex;
  flex-direction: column;
  row-gap: 3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom5Footer__container {
    flex-direction: row;
    align-items: flex-start;
  }
}

.p-bottom5Footer__logo {
  display: block;
  width: 16.8rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom5Footer__logo {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    width: 18.5rem;
  }
}

.p-bottom5Footer__address {
  margin-top: 4rem;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.5714285714;
}

@media screen and (min-width: 768px) {
  .p-bottom5Footer__address {
    margin-top: 1.5rem;
  }
}

.p-bottom5Footer__policy {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-decoration: underline;
  text-underline-offset: 0.5rem;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  margin: 2.8rem 0 0 auto;
}

@media screen and (min-width: 768px) {
  .p-bottom5Footer__policy {
    margin: 6.4rem 0 0 auto;
  }
}

.p-bottom5Footer__items {
  display: flex;
  flex-direction: column;
  row-gap: 1rem;
}

@media screen and (min-width: 768px) {
  .p-bottom5Footer__items {
    margin-left: auto;
    flex-direction: row;
    align-items: center;
    gap: 0 2.9rem;
    justify-content: flex-end;
  }
}

.p-bottom5Footer__link {
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

.p-bottom5Footer__link span {
  position: relative;
}

.p-bottom5Footer__link span::after {
  content: "";
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  bottom: -0.3rem;
  left: 50%;
  transform: translateX(-50%);
  transition: width 0.3s ease-out;
}

.p-bottom5Footer__link:hover span::after {
  width: 100%;
}

.p-bottom5Footer__copyright {
  background-color: #fff;
  padding: 2rem 0;
}

.p-bottom5Footer__copyrightInner {
  width: 100%;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom5Footer__copyrightInner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom5Footer__copyright small {
  display: block;
  text-align: center;
  letter-spacing: 0.1em;
  font-size: 1rem;
  color: #000;
}

@media screen and (min-width: 768px) {
  .p-bottom5Footer__copyright small {
    text-align: right;
    font-size: 1.2rem;
  }
}

.p-bottom6 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  background-color: #fff;
  height: 5.8rem;
  display: flex;
  align-items: center;
  padding-left: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom6 {
    height: 7.3rem;
    padding-left: 2.8rem;
  }
}

.p-bottom6__logo {
  display: block;
  width: 12.5rem;
}

.p-bottom6__menu {
  display: flex;
  align-items: center;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  margin-left: auto;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom6__menu {
    top: 5rem;
    right: 2.1rem;
    -moz-column-gap: 1.5rem;
    column-gap: 1.5rem;
  }
}

.p-bottom6Hamburger {
  background-color: #021E55;
  width: 5.8rem;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: 1rem;
  cursor: pointer;
}

.p-bottom6Hamburger__button {
  display: block;
  width: 2rem;
  height: 1.4rem;
  position: relative;
}

.p-bottom6Hamburger__button span {
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #fff;
  transition: 0.3s;
}

.p-bottom6Hamburger__button span:first-child {
  top: 0;
}

.p-bottom6Hamburger__button span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}

.p-bottom6Hamburger__button span:last-child {
  bottom: 0;
}

.p-bottom6Hamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
}

.p-bottom6Hamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-bottom6Hamburger__button.open span:nth-child(2) {
  display: none;
}

.p-bottom6Hamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-bottom6Nav {
  position: fixed;
  top: 5.8rem;
  left: 0;
  width: 100%;
  height: calc(100vh - 5.8rem);
  background-color: #fff;
  z-index: 100;
  transform: translateX(-100%);
  transition: transform 0.4s ease-out;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
  padding-top: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom6Nav {
    position: static;
    max-width: min(85vw, 112rem);
    height: 100%;
    opacity: 1;
    visibility: visible;
    overflow: visible;
    transform: translateX(0);
    margin-left: auto;
    background-color: transparent;
    padding-top: 0;
  }
}

.p-bottom6Nav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-bottom6Nav__inner {
  width: 100%;
  padding: 0 2.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom6Nav__inner {
    height: 100%;
    display: flex;
    justify-content: flex-end;
    padding: 0;
  }
}

.p-bottom6Nav__container {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom6Nav__container {
    max-width: min(56vw, 70rem);
    display: flex;
    justify-content: flex-end;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom6Nav__link {
  display: block;
  width: 100%;
  letter-spacing: 0.04em;
  font-weight: 400;
  padding: 2.8rem 0 1.3rem;
  border-bottom: 1px solid #000;
  position: relative;
  font-size: 1.5rem;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-bottom6Nav__link {
    font-size: 1rem;
    display: flex;
    flex-direction: column;
    text-align: center;
    justify-content: center;
    align-items: center;
    letter-spacing: 0.2em;
    padding: 0 1.3rem;
    width: auto;
    border: none;
    transform: scale(0.9);
    transform-origin: center;
  }
}

.p-bottom6Nav__link span {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-bottom6Nav__link span {
    display: block;
    margin-top: 0.3rem;
    text-transform: uppercase;
    font-family: "Inter", sans-serif;
    font-weight: 400;
    letter-spacing: 0.125em;
    transform: scale(0.6);
    transform-origin: center;
  }
}

.p-bottom6Nav__link:hover {
  opacity: 0.8;
}

.p-bottom6Nav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 57%;
  right: 1.5rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-bottom6Nav__link::after {
    content: none;
  }
}

.p-bottom6Nav__buttons {
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  margin-top: 4.4rem;
  text-align: center;
  padding-bottom: 7.4rem;
  background: linear-gradient(#fff 0, #fff calc(100% - 15px), #021E55 calc(100% - 15px), #021E55 100%);
}

@media screen and (min-width: 768px) {
  .p-bottom6Nav__buttons {
    height: inherit;
    width: 100%;
    max-width: 29.2rem;
    display: flex;
    margin: 0 0 0 1.6rem;
    padding-bottom: 0;
    background: transparent;
  }
}

.p-bottom6Nav__button {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%;
  max-width: 32.4rem;
  margin-inline: auto;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.122em;
  padding: 1.2rem 0;
  font-family: "Inter", sans-serif;
  color: #fff;
  text-transform: capitalize;
}

@media screen and (min-width: 768px) {
  .p-bottom6Nav__button {
    height: inherit;
    width: 50%;
    padding: 0;
    max-width: none;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    font-size: 1.2rem;
  }
}

.p-bottom6Nav__button:nth-of-type(2) {
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom6Nav__button:nth-of-type(2) {
    margin-top: 0;
  }
}

.p-bottom6Nav__button span {
  display: block;
  text-align: center;
  margin-top: -0.3rem;
  font-size: 1.2rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom6Nav__button span {
    font-size: 1rem;
    transform: scale(0.6);
    transform-origin: center;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom6Nav__button span::after {
    content: "";
    position: absolute;
    width: 130%;
    height: 2px;
    bottom: -0.7rem;
    left: 50%;
    transform: translateX(-50%);
    background-color: #fff;
  }
}

.p-bottom6Nav__button--recruit {
  background-color: #B9B796;
}

.p-bottom6Nav__button--contact {
  background-color: #021E55;
}

.p-bottom6Mv {
  margin-top: 4.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom6Mv {
    margin-top: 7.3rem;
  }
}

.p-bottom6Mv::before {
  padding-top: 46%;
}

@media screen and (min-width: 768px) {
  .p-bottom6Mv::before {
    padding-top: 22.9166666667%;
  }
}

.p-bottom6Mv::after {
  content: "";
  width: 100%;
  height: 100%;
  display: inline-block;
  position: absolute;
  top: 0%;
  left: 0%;
  z-index: 1;
  background-color: rgba(54, 54, 54, 0.72);
}

.p-bottom6Mv__title,
.p-bottom6Mv__enTitle {
  position: absolute;
  width: 100%;
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.p-bottom6Mv__title {
  z-index: 3;
  color: #fff;
  font-size: 2rem;
  letter-spacing: 0.16em;
  font-weight: 400;
  width: 100%;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom6Mv__title {
    font-size: 4rem;
  }
}

.p-bottom6Mv__enTitle {
  z-index: 2;
  color: rgba(255, 255, 255, 0.15);
  font-size: 4.6rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-family: "Cormorant Garamond", serif;
  font-weight: 400;
}

@media screen and (min-width: 768px) {
  .p-bottom6Mv__enTitle {
    font-size: 13.7rem;
  }
}

/* パンくずリスト */
.p-bottom6Breadcrumb {
  padding-top: 2.4rem;
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom6Breadcrumb {
    padding-top: 4.3rem;
    max-width: 95rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom6Breadcrumb__items {
  display: flex;
  align-items: center;
  text-transform: capitalize;
  letter-spacing: 0.08em;
  font-family: "Inter", sans-serif;
  font-size: 1rem;
}

.p-bottom6Breadcrumb__items li {
  display: flex;
  align-items: center;
}

.p-bottom6Breadcrumb__items li:nth-of-type(n+2) {
  margin-left: 0.9rem;
}

.p-bottom6Breadcrumb li:not(:last-of-type)::after {
  content: "";
  width: 1.9rem;
  height: 1px;
  background-color: #373737;
  margin-left: 0.8rem;
}

.p-bottom6Breadcrumb .current {
  color: #958347;
}

/* 私たちと共に歩む仲間を */
.p-bottom6Recruit {
  padding-top: 8rem;
  padding-bottom: 5rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom6Recruit {
    padding-top: 13.3rem;
  }
}

.p-bottom6Recruit__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom6Recruit__inner {
    max-width: 95rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom6Recruit__heading {
  width: 15.7rem;
  margin-inline: auto;
}

.p-bottom6Recruit__heading::before {
  padding-top: 24.5222929936%;
}

.p-bottom6Recruit__title {
  margin-top: 0.7rem;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
}

@media screen and (min-width: 768px) {
  .p-bottom6Recruit__title {
    font-size: 6.3rem;
  }
}

.p-bottom6Recruit__text {
  margin-top: 2rem;
  font-size: 1.4rem;
  letter-spacing: 0.2em;
  line-height: 1.4705882353;
  font-weight: 500;
  color: #011E55;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom6Recruit__text {
    font-size: 1.7rem;
  }
}

.p-bottom6Recruit__text::after {
  content: "";
  display: block;
  width: 108%;
  height: 6px;
  background-image: url(../images/bottom6/under-line.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin-left: -4%;
  margin-top: 1rem;
}

.p-bottom6Recruit__block {
  margin-top: 3.2rem;
  display: block;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-bottom6Recruit__block {
    margin-top: 5rem;
    display: flex;
  }
}

.p-bottom6Recruit__block:hover {
  opacity: 0.8;
}

.p-bottom6Recruit__bg::before {
  padding-top: 54%;
}

@media screen and (min-width: 768px) {
  .p-bottom6Recruit__bg::before {
    padding-top: 46.0691823899%;
  }
}

.p-bottom6Recruit__wrap {
  background-color: #000;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  transition: background-color 0.3s ease-out;
  padding: 0.8rem 0;
}

@media screen and (min-width: 768px) {
  .p-bottom6Recruit__wrap {
    flex-shrink: 0;
    padding: 0;
    max-width: 26.5rem;
  }
}

.p-bottom6Recruit__block p {
  transition: color 0.3s ease-out;
}

.p-bottom6Recruit__block p::before {
  transition: border 0.3s ease-out;
}

.p-bottom6Recruit__block p::after {
  transition: background-image 0.3s ease-out;
}

.p-bottom6Recruit__scroll {
  display: flex;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-bottom6Recruit__scroll {
    -moz-column-gap: min(2.36vw, 3.4rem);
    column-gap: min(2.36vw, 3.4rem);
    margin-top: 0.4rem;
  }
}

.p-bottom6Recruit__scrollImg {
  -webkit-animation: loopSlide 28s infinite linear 1s both;
  animation: loopSlide 28s infinite linear 1s both;
  width: 110rem;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-bottom6Recruit__scrollImg {
    width: 162.2rem;
    -webkit-animation: loopSlide 36s infinite linear 1s both;
    animation: loopSlide 36s infinite linear 1s both;
  }
}

.p-bottom6Recruit__scrollImg::before {
  padding-top: 8.3230579531%;
}

@-webkit-keyframes loopSlide {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-100%);
  }
}

@keyframes loopSlide {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-100%);
  }
}

/* 会社概要 */
.p-bottom6Company {
  position: relative;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-bottom6Company::after {
    content: "company";
    line-height: 1;
    position: absolute;
    top: 2.4%;
    right: 3.4rem;
    font-family: "Cormorant Garamond", serif;
    text-transform: capitalize;
    font-weight: 400;
    letter-spacing: 0.13em;
    color: #F5F3F2;
    transform: rotate(-180deg);
    writing-mode: vertical-rl;
    font-size: 10.8rem;
  }
}

.p-bottom6Company__inner {
  background-color: #F5F3F2;
  width: 100%;
  padding: 6rem 2rem 6.8rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom6Company__inner {
    max-width: 105rem;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    padding: 12.4rem 0 8.9rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom6Company__inner {
    max-width: 87.0833333333vw;
  }
}

.p-bottom6Company__container {
  display: flex;
  flex-direction: column;
  row-gap: rem(24);
}

@media screen and (min-width: 768px) {
  .p-bottom6Company__container {
    flex-flow: row nowrap;
    align-items: center;
    gap: 0 11.5rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom6Company__img {
    max-width: 44.7916666667vw;
  }
}

.p-bottom6Company__img::before {
  padding-top: 63.4108527132%;
}

.p-bottom6Company__wrap {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom6Company__wrap {
    max-width: 41.6rem;
  }
}

.p-bottom6Company__enTitle {
  margin-top: 1.2rem;
  color: #B9B796;
  font-family: "Inter", sans-serif;
  text-transform: capitalize;
  font-weight: 500;
  font-size: 1.6rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom6Company__enTitle {
    margin-top: 0;
    font-size: 1.8rem;
  }
}

.p-bottom6Company__title {
  margin-top: 0.3rem;
  font-size: 2.6rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom6Company__title {
    font-size: 3.5rem;
    margin-top: 1rem;
  }
}

.p-bottom6Company__text {
  margin-top: 2.8rem;
  font-size: 1.5rem;
  letter-spacing: 0.08em;
  line-height: 2.4;
  margin-top: 1.4rem;
}

.p-bottom6Company__buttonWrap {
  margin-top: 4rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom6Company__buttonWrap {
    margin-top: 4.6rem;
    text-align: left;
  }
}

.p-bottom6__button {
  display: inline-block;
  text-align: left;
  width: 100%;
  max-width: 19.6rem;
  border-radius: 99.9rem;
  position: relative;
  letter-spacing: 0.14em;
  font-family: "Inter", sans-serif;
  text-transform: capitalize;
  margin-inline: auto;
  font-weight: 500;
  font-size: 1.5rem;
  color: #011E55;
}

.p-bottom6__button a,
.p-bottom6__button p {
  display: block;
  padding: 2rem 3rem;
}

.p-bottom6__button a:hover {
  opacity: 1;
}

.p-bottom6__button a::before,
.p-bottom6__button a::after,
.p-bottom6__button p::before,
.p-bottom6__button p::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.p-bottom6__button a::before,
.p-bottom6__button p::before {
  left: 0;
  transform: translate(0, -50%);
  width: 5rem;
  height: 5rem;
  border: 1px solid #B9B796;
  border-radius: 99.9rem;
  transition: width 0.25s ease-out;
}

@media screen and (min-width: 768px) {

  .p-bottom6__button a::before,
  .p-bottom6__button p::before {
    width: 5.8rem;
    height: 5.8rem;
  }
}

.p-bottom6__button a::after,
.p-bottom6__button p::after {
  display: block;
  width: 4rem;
  height: 1rem;
  background-image: url("../images/bottom6/arrow-black.svg");
  background-size: contain;
  background-repeat: no-repeat;
  top: 53%;
  right: 0;
}

.p-bottom6__button a:hover::before {
  width: 106%;
}

.p-bottom6__button--white {
  color: #fff;
  width: 16.5rem;
  font-size: 1.3rem;
  letter-spacing: 0.1em;
  font-weight: 400;
}

.p-bottom6__button--white a::before,
.p-bottom6__button--white p::before {
  border: 1px solid #fff;
  width: 4.8rem;
  height: 4.8rem;
}

.p-bottom6__button--white a::after,
.p-bottom6__button--white p::after {
  background-image: url("../images/bottom6/arrow-white.svg");
  width: 3rem;
  height: 0.6rem;
}

/* お問い合わせ */
.p-bottom6p-bottom-blog2 {
  background-color: #011E55;
  color: #fff;
  padding-top: 5.2rem;
  padding-bottom: 6.2rem;
  position: relative;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom6Contact {
    padding-top: 8.3rem;
    padding-bottom: 8.6rem;
  }
}

.p-bottom6Contact::before {
  content: "";
  display: block;
  width: 28.5rem;
  height: 7.3rem;
  background-image: url(../images/bottom6/contact-text.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  top: 50%;
  left: 51%;
  transform: translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-bottom6Contact::before {
    top: 53%;
    width: 84.4rem;
    height: 22rem;
  }
}

.p-bottom6Contact__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom6Contact__inner {
    max-width: 105rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom6Contact__enTitle {
  font-family: "Inter", sans-serif;
  text-transform: capitalize;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom6Contact__enTitle {
    font-size: 1.7rem;
  }
}

.p-bottom6Contact__title {
  margin-top: 0.3rem;
  letter-spacing: 0.08em;
  font-size: 2.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom6Contact__title {
    font-size: 3.1rem;
  }
}

.p-bottom6Contact__text {
  font-size: 1.2rem;
  letter-spacing: 0.06em;
  margin-top: 1.6rem;
}

.p-bottom6Contact__wrap {
  width: 28.9rem;
  margin-inline: auto;
  margin-top: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom6Contact__wrap {
    margin-top: 4.3rem;
  }
}

.p-bottom6Contact__button {
  color: #021E55;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  border: 1px solid #fff;
  background-color: #fff;
  max-width: 28.9rem;
  width: 100%;
  padding: 1rem 0;
  font-size: 1.1rem;
  font-weight: 700;
  margin-inline: auto;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-bottom6Contact__button {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    padding: 1.3rem 0;
  }
}

.p-bottom6Contact__button:hover {
  color: #fff;
  opacity: 1;
  transition: color 0.2s 0.05s;
}

.p-bottom6Contact__button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -130%;
  background: #021E55;
  width: 120%;
  height: 100%;
}

.p-bottom6Contact__button:hover::before {
  -webkit-animation: skewanime 0.3s ease-out forwards;
  animation: skewanime 0.3s ease-out forwards;
}

@keyframes skewanime {
  100% {
    left: -10%;
  }
}

.p-bottom6Contact__button::after {
  content: "";
  display: inline-block;
  height: 4.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom6Contact__button::after {
    height: 3.6rem;
  }
}

.p-bottom6Contact__button span {
  z-index: 1;
  display: flex;
  align-items: center;
}

.p-bottom6Contact__button span::before {
  content: "";
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  background-image: url(../images/bottom6/mail.svg);
  width: 1.4rem;
  height: 1rem;
  margin-right: 0.3rem;
}

.p-bottom6Contact__button:hover span::before {
  transition: background-image 0.15s;
  background-image: url(../images/bottom6/mail-hover.svg);
}

.p-bottom6Contact__button span::after {
  content: "";
  width: 0.7rem;
  height: 0.7rem;
  border-bottom: 2px solid #021E55;
  border-right: 2px solid #021E55;
  transform: rotate(-45deg);
  position: absolute;
  right: 3rem;
}

.p-bottom6Contact__button:hover span::after {
  transition: border 0.2s 0.15s;
  border-color: #fff;
}

/* フッター */
.p-bottom6Footer {
  padding-top: 4.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom6Footer {
    padding-top: 5.8rem;
  }
}

.p-bottom6Footer__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom6Footer__inner {
    max-width: 128rem;
    padding: 0 2.5rem 6.1rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom6Footer__info {
    display: flex;
  }
}

.p-bottom6Footer__logo {
  display: block;
  margin-inline: auto;
  width: 14.7rem;
}

@media screen and (min-width: 768px) {
  .p-bottom6Footer__logo {
    -webkit-margin-start: 6.7361111111vw;
    margin-inline-start: 6.7361111111vw;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom6Footer__nav {
  margin: 3.4rem auto 0;
  padding-bottom: 4.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom6Footer__nav {
    display: block;
    width: 100%;
    max-width: 64.5rem;
    margin: 0 0 0 auto;
    padding: 0;
  }
}

.p-bottom6Footer__navWrap {
  display: grid;
  gap: 2rem 1rem;
  grid-template-columns: repeat(2, 1fr);
}

@media screen and (min-width: 768px) {
  .p-bottom6Footer__navWrap {
    grid-template-columns: repeat(4, 1fr);
  }
}

.p-bottom6Footer__navWrap:nth-of-type(2) {
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom6Footer__navWrap:nth-of-type(2) {
    margin-left: auto;
    margin-top: 3.2rem;
    width: 50%;
    grid-template-columns: repeat(2, 1fr);
  }
}

.p-bottom6Footer__link {
  display: flex;
  align-items: center;
  white-space: nowrap;
  text-transform: uppercase;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  letter-spacing: 0.04em;
  font-weight: 500;
}

.p-bottom6Footer__link::before {
  content: "";
  display: block;
  width: 1.7rem;
  height: 1.7rem;
  background-image: url(../images/bottom6/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin: 0.2rem 0.8rem 0 0;
  flex-shrink: 0;
}

.p-bottom6Footer__copyright {
  background-color: #1F1F1F;
  padding: 2rem 0;
}

.p-bottom6Footer__copyrightInner {
  width: 100%;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom6Footer__copyrightInner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom6Footer__copyright small {
  display: block;
  text-align: center;
  font-family: "Inter", sans-serif;
  letter-spacing: 0.08em;
  font-size: 1.2rem;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom6Footer__copyright small {
    font-size: 1.4rem;
  }
}

.p-bottom6Footer__pagetop {
  position: fixed;
  bottom: 1.8rem;
  right: 1.8rem;
  width: 4.6rem;
  height: 4.6rem;
  cursor: pointer;
  z-index: 10;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-bottom6Footer__pagetop {
    bottom: 3rem;
    right: 4rem;
    width: 6.9rem;
    height: 6.9rem;
  }
}

.p-bottom6Footer__pagetop::after {
  content: "";
  display: block;
  background-image: url(../images/bottom6/top-btn.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.p-bottom6Footer__pagetop:hover {
  opacity: 0.8;
}

.p-bottom7 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  background-color: #fff;
  display: flex;
  align-items: center;
  height: 5.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7 {
    height: 4.7rem;
    padding-right: 3rem;
  }
}

.p-bottom7__logo {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 20;
  background-color: #38A1DB;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 11rem;
  height: 7.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7__logo {
    width: 16.4rem;
    height: 9.5rem;
  }
}

.p-bottom7__logo:hover {
  opacity: 1;
}

.p-bottom7__logo img {
  width: 9.8rem;
  transition: scale 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-bottom7__logo img {
    width: 11.3rem;
  }
}

.p-bottom7__logo:hover img {
  scale: 1.05;
}

.p-bottom7__hamburger {
  position: absolute;
  top: 50%;
  right: 2.2rem;
  transform: translateY(-50%);
}

.p-bottom7Hamburger {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  cursor: pointer;
}

.p-bottom7Hamburger__button {
  display: block;
  width: 3.4rem;
  height: 2.2rem;
  position: relative;
}

.p-bottom7Hamburger__button span {
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #111;
  transition: 0.3s;
}

.p-bottom7Hamburger__button span:first-child {
  top: 0;
}

.p-bottom7Hamburger__button span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}

.p-bottom7Hamburger__button span:last-child {
  bottom: 0;
}

.p-bottom7Hamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
}

.p-bottom7Hamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-bottom7Hamburger__button.open span:nth-child(2) {
  display: none;
}

.p-bottom7Hamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-bottom7Nav {
  position: fixed;
  top: 5.2rem;
  left: 0;
  width: 100%;
  height: calc(100vh - 5.2rem);
  background-color: #fff;
  z-index: 10;
  transform: translateX(-100%);
  transition: transform 0.4s ease-out;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
  padding-top: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7Nav {
    position: static;
    height: 100%;
    opacity: 1;
    visibility: visible;
    overflow: visible;
    transform: translateX(0);
    margin-left: auto;
    background: transparent;
    padding-top: 0;
  }
}

.p-bottom7Nav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-bottom7Nav__inner {
  width: 100%;
  min-height: 100%;
  padding: 0 2.7rem 4.9rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom7Nav__inner {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0;
  }
}

.p-bottom7Nav__inner::after {
  content: "";
  position: absolute;
  display: block;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 1.2rem;
  margin: 0 calc(50% - 50vw);
  background-color: #2F5189;
}

@media screen and (min-width: 768px) {
  .p-bottom7Nav__inner::after {
    content: none;
  }
}

.p-bottom7Nav__items {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom7Nav__items {
    max-width: none;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom7Nav__items {
    height: 100%;
  }
}

.p-bottom7Nav__item {
  border-bottom: 1px solid #000;
}

@media screen and (min-width: 768px) {
  .p-bottom7Nav__item {
    border: none;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom7Nav__item {
    display: none;
  }
}

.p-bottom7Nav__item--button {
  display: block;
  border: none;
}

.p-bottom7Nav__item--button:nth-of-type(n+2) {
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7Nav__item--button:nth-of-type(n+2) {
    margin: 0 0 0 0.7rem;
  }
}

.p-bottom7Nav__link {
  display: block;
  width: 100%;
  letter-spacing: 0.04em;
  font-weight: 500;
  padding: 2.8rem 0 1.2rem;
  position: relative;
  font-size: 1.5rem;
  color: #3F3F3F;
  font-family: "Noto Serif JP", serif;
}

@media screen and (min-width: 768px) {
  .p-bottom7Nav__link {
    font-size: 1.4rem;
    height: 100%;
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    padding: 0 1.5rem;
    font-family: "Noto Sans JP", sans-serif;
    width: auto;
    transition: color 0.3s ease-out;
  }
}

.p-bottom7Nav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 57%;
  right: 1.2rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-bottom7Nav__link::after {
    content: none;
  }
}

.p-bottom7Nav__reservation {
  color: #fff;
  display: block;
  font-size: 1.2rem;
  letter-spacing: 0.04em;
  font-weight: 500;
  background-color: #F46F61;
  padding: 0.8rem;
  border-radius: 999rem;
  width: 19rem;
  text-align: center;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom7Nav__reservation {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    font-size: 1rem;
    padding: 0.35rem;
    width: 14rem;
  }
}

.p-bottom7Mv {
  margin-top: 4.7rem;
}

.p-bottom7Mv__container {
  position: relative;
}

.p-bottom7Mv__img::before {
  padding-top: 46%;
}

@media screen and (min-width: 768px) {
  .p-bottom7Mv__img::before {
    padding-top: 28.4027777778%;
  }
}

.p-bottom7Mv__img::after {
  content: "";
  width: 100%;
  height: 100%;
  display: inline-block;
  position: absolute;
  top: 0%;
  left: 0%;
  z-index: 1;
  background-color: rgba(24, 36, 43, 0.25);
}

.p-bottom7Mv__titleWrap {
  position: absolute;
  z-index: 2;
  width: 100%;
  text-align: center;
  top: 30.7%;
  left: 50%;
  transform: translateX(-50%);
}

.p-bottom7Mv__title {
  margin-top: 0.3rem;
  color: #fff;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 2.2rem;
  letter-spacing: 0.11em;
  font-weight: 700;
  width: 100%;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom7Mv__title {
    font-size: 3.6rem;
  }
}

.p-bottom7Mv__enTitle {
  color: #fff;
  font-size: 4.6rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: 1.4rem;
}

.p-bottom7Mv__circleImg {
  position: absolute;
  z-index: 1;
  bottom: -22vw;
  width: 36vw;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  .p-bottom7Mv__circleImg {
    bottom: -20.8rem;
    width: 30.6rem;
  }
}

.p-bottom7Mv__circleImg::before {
  padding-top: 100%;
}

.p-bottom7Mv__headnav {
  position: relative;
  z-index: 1;
}

.p-bottom7Mv__headwrap {
  margin-top: 4rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 1rem;
  width: 85%;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom7Mv__headwrap {
    display: flex;
    justify-content: center;
    -moz-column-gap: 5.9rem;
    column-gap: 5.9rem;
    margin-top: 8.7rem;
  }
}

.p-bottom7Mv__headwrap:nth-of-type(2) {
  margin-top: 2rem;
}

.p-bottom7Mv__headlink {
  display: block;
  text-align: center;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-bottom7Mv__headlink {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.p-bottom7Mv__headlink span {
  font-family: "Outfit", sans-serif;
  color: #38A1DB;
  font-size: 1rem;
  display: block;
  margin-top: 0.8rem;
}

/* クリニック紹介 */
.p-bottom7Clinic {
  background-color: #F4F4F4;
  padding-top: 6.4rem;
  padding-bottom: 6.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7Clinic {
    padding-top: 7.6rem;
    padding-bottom: 9.8rem;
  }
}

.p-bottom7Clinic__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom7Clinic__inner {
    max-width: 95.3rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom7Clinic__items {
  margin-top: 3.2rem;
  display: grid;
  row-gap: 4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7Clinic__items {
    margin-top: 3.6rem;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 4.5rem;
  }
}

.p-bottom7Clinic__item {
  display: flex;
  flex-direction: column;
}

.p-bottom7Clinic__img--first::after,
.p-bottom7Clinic__img--second::after {
  content: "";
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p-bottom7Clinic__img--first::after {
  bottom: -7.3rem;
  right: -0.1rem;
  width: 14rem;
  height: 11rem;
  background-image: url(../images/bottom7/ebisu-text.png);
}

.p-bottom7Clinic__img--second::after {
  bottom: -7.2rem;
  right: -1rem;
  width: 14rem;
  height: 11rem;
  background-image: url(../images/bottom7/meguro-text.png);
}

.p-bottom7Clinic__img::before {
  padding-top: 63.3440514469%;
}

.p-bottom7Clinic__img img {
  border-radius: 2rem;
}

.p-bottom7Clinic__body {
  padding: 1.6rem 0 2.6rem;
}

.p-bottom7Clinic__itemTitle {
  padding-bottom: 0.3rem;
  border-bottom: 1px solid #000;
  font-weight: 700;
  font-size: 2rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom7Clinic__itemTitle {
    font-size: 2.4rem;
  }
}

.p-bottom7Clinic__list {
  margin-top: 1.2rem;
  display: flex;
  align-items: flex-start;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom7Clinic__list {
    font-size: 1.6rem;
  }
}

.p-bottom7Clinic__list:nth-of-type(n+2) {
  margin-top: 0.15rem;
}

.p-bottom7Clinic__term {
  width: 7.2rem;
  font-weight: 700;
  text-transform: uppercase;
  color: #5A83A3;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-bottom7Clinic__term {
    width: 9.5rem;
  }
}

.p-bottom7Clinic__description {
  padding-right: 1rem;
}

.p-bottom7Clinic__links {
  display: flex;
  -moz-column-gap: 0.5px;
  column-gap: 0.5px;
  margin-top: auto;
}

.p-bottom7Clinic__button {
  color: #fff;
  padding: 1.45rem 0;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.08em;
  font-weight: 500;
  width: 100%;
  display: inline-block;
  position: relative;
  background-color: #38A1DB;
}

@media screen and (min-width: 768px) {
  .p-bottom7Clinic__button {
    font-size: 1.6rem;
  }
}

.p-bottom7Clinic__button::after {
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(-45deg);
  position: absolute;
  top: 1.9rem;
  right: 8.7rem;
}

.p-bottom7Recruit {
  transition: opacity 0.3s ease-out;
  display: block;
}

@media screen and (min-width: 768px) {
  .p-bottom7Recruit {
    display: flex;
  }
}

.p-bottom7Recruit:hover {
  opacity: 0.8;
}

.p-bottom7Recruit__block {
  color: #fff;
  background-color: #5A83A3;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 4rem 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7Recruit__block {
    width: 50%;
    padding: 2rem 2rem 2rem 10.3rem;
  }
}

.p-bottom7Recruit__enTitle {
  text-transform: uppercase;
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  font-size: 3.2rem;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-bottom7Recruit__enTitle {
    font-size: 4.2rem;
  }
}

.p-bottom7Recruit__title {
  margin-top: -0.4rem;
  font-size: 1.4rem;
  letter-spacing: 0.12em;
  font-weight: 700;
}

.p-bottom7Recruit__text {
  margin-top: 2.3rem;
  font-size: 1.6rem;
  letter-spacing: 0.1em;
  line-height: 2.125;
}

@media screen and (min-width: 768px) {
  .p-bottom7Recruit__img {
    width: 50%;
  }
}

.p-bottom7Recruit__img::before {
  padding-top: 52%;
}

@media screen and (min-width: 768px) {
  .p-bottom7Recruit__img::before {
    padding-top: 46.9613259669%;
  }
}

/* アンケート */
.p-bottom7Survey {
  padding-top: 6.4rem;
  padding-bottom: 5.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7Survey {
    padding-top: 9rem;
    padding-bottom: 8.5rem;
  }
}

.p-bottom7Survey__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom7Survey__inner {
    max-width: 95.3rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom7Survey__wrap {
  border-radius: 3rem;
  border: 10px solid #5A83A3;
  padding: 3.2rem 1.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7Survey__wrap {
    padding: 3.3rem 2rem 4.2rem;
  }
}

.p-bottom7Survey__questionnaire {
  width: 10.5rem;
  margin-inline: auto;
}

.p-bottom7Survey__title {
  font-size: 1.6rem;
  text-align: center;
  font-weight: 700;
  margin-top: -0.9rem;
  letter-spacing: 0.12em;
}

@media screen and (min-width: 768px) {
  .p-bottom7Survey__title {
    font-size: 2.1rem;
  }
}

.p-bottom7Survey__text {
  margin-top: 1.7rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2.125;
}

@media screen and (min-width: 768px) {
  .p-bottom7Survey__text {
    max-width: 73.1rem;
    margin-inline: auto;
    font-size: 1.6rem;
  }
}

.p-bottom7Survey__img {
  display: block;
  margin-top: 3.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7Survey__img {
    margin-top: 4.5rem;
    max-width: 47.6rem;
    margin-inline: auto;
  }
}

.p-bottom7Survey__img::before {
  padding-top: 15.9663865546%;
}

.p-bottom7Survey__scroll {
  display: flex;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  overflow: hidden;
  margin-top: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7Survey__scroll {
    -moz-column-gap: min(2.36vw, 3.4rem);
    column-gap: min(2.36vw, 3.4rem);
    margin-top: 4.4rem;
  }
}

.p-bottom7Survey__scrollImg {
  -webkit-animation: loopSlide 28s infinite linear 1s both;
  animation: loopSlide 28s infinite linear 1s both;
  width: 145rem;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-bottom7Survey__scrollImg {
    width: 209.4rem;
    -webkit-animation: loopSlide 40s infinite linear 1s both;
    animation: loopSlide 40s infinite linear 1s both;
  }
}

.p-bottom7Survey__scrollImg::before {
  padding-top: 6.6380133715%;
}

@keyframes loopSlide {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-100%);
  }
}

/* リンク */
.p-bottom7Link {
  background-color: #91C2E0;
  padding-top: 6.8rem;
  padding-bottom: 6.8rem;
}

.p-bottom7Link__inner {
  position: relative;
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom7Link__inner {
    max-width: 106.6rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom7Link__container {
  display: grid;
  row-gap: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7Link__container {
    grid-template-columns: repeat(2, 1fr);
    gap: 0 3.3rem;
  }
}

.p-bottom7Link__block {
  border-radius: 2rem;
  overflow: hidden;
  transition: opacity 0.3s ease-out;
}

.p-bottom7Link__block:hover {
  opacity: 0.8;
}

.p-bottom7Link__img::before {
  padding-top: 51.9348268839%;
}

.p-bottom7Link__text {
  padding: 1rem 0 1.7rem;
  text-align: center;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom7Link__text {
    padding: 1.4rem 0 1.9rem;
  }
}

.p-bottom7Link__enTitle {
  text-transform: uppercase;
  font-size: 2rem;
  letter-spacing: 0.06em;
  font-weight: 500;
  font-size: 1.8rem;
  font-family: "Outfit", sans-serif;
}

@media screen and (min-width: 768px) {
  .p-bottom7Link__enTitle {
    font-size: 2.2rem;
  }
}

.p-bottom7Link__title {
  margin-top: -0.4rem;
  font-size: 1.2rem;
  letter-spacing: 0.06em;
  color: #38A1DB;
}

/* フッター */
.p-bottom7Footer {
  padding-top: 6rem;
  background-color: #3F3F3F;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom7Footer {
    padding-top: 10rem;
  }
}

.p-bottom7Footer__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
  padding-bottom: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7Footer__inner {
    display: flex;
    align-items: flex-start;
    max-width: 128rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    padding-bottom: 6.6rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom7Footer__block {
    margin-left: 5rem;
  }
}

.p-bottom7Footer__logo {
  display: block;
  margin-inline: auto;
  width: 13.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7Footer__logo {
    width: 18.4rem;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom7Footer__tel {
  margin-top: 3.6rem;
  font-family: "Outfit", sans-serif;
  letter-spacing: 0.06em;
  font-size: 2rem;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .p-bottom7Footer__tel {
    margin-top: 5.1rem;
    font-size: 2.5rem;
  }
}

.p-bottom7Footer__tel::before {
  content: "";
  display: block;
  width: 1.6rem;
  height: 2.1rem;
  margin-right: 0.6rem;
  background-image: url(../images/bottom7/tel.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p-bottom7Footer__address {
  margin-top: -0.2rem;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  font-weight: 500;
  line-height: 1.6428571429;
}

.p-bottom7Footer__container {
  margin-top: 4.8rem;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom7Footer__container {
    margin: 0 0 0 auto;
    max-width: 73.8rem;
  }
}

.p-bottom7Footer__nav {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 1.2rem;
  padding-bottom: 3.1rem;
  border-bottom: 1px solid #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom7Footer__nav {
    grid-template-columns: 15.7rem 17.1rem 15.8rem 14.4rem 10.7rem;
    row-gap: 2.6rem;
  }
}

.p-bottom7Footer__link {
  display: flex;
  align-items: center;
  white-space: nowrap;
  text-transform: uppercase;
  font-size: 1.3rem;
  letter-spacing: 0.04em;
  font-weight: 500;
}

.p-bottom7Footer__link::before {
  content: "";
  display: block;
  width: 1.7rem;
  height: 1.7rem;
  background-image: url(../images/bottom7/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin: 0.2rem 0.8rem 0 0;
  flex-shrink: 0;
}

.p-bottom7Footer__wrap {
  padding-top: 3.2rem;
  padding-bottom: 3.3rem;
  border-bottom: 1px solid #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom7Footer__wrap {
    display: flex;
    align-items: flex-start;
  }
}

.p-bottom7Footer__wrap--bottom {
  border: none;
}

.p-bottom7Footer__theme {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-bottom7Footer__theme {
    margin-top: -0.3rem;
  }
}

.p-bottom7Footer__nav--second {
  margin-top: 2.4rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 1.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7Footer__nav--second {
    margin-top: 0;
    margin-left: auto;
    grid-template-columns: 17.1rem 15.8rem 14.4rem 10.7rem;
    row-gap: 2.6rem;
  }
}

.p-bottom7Footer__nav--third {
  margin-top: 2.4rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 1.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom7Footer__nav--third {
    margin-top: 0;
    margin-left: auto;
    grid-template-columns: 58rem;
    row-gap: 2.6rem;
  }
}

.p-bottom7Footer__copyright {
  background-color: #fff;
  padding: 3rem;
}

.p-bottom7Footer__copyrightInner {
  width: 100%;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom7Footer__copyrightInner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom7Footer__copyright small {
  display: block;
  text-align: center;
  letter-spacing: 0.04em;
  font-weight: 500;
  font-size: 1.2rem;
  color: #000;
}

@media screen and (min-width: 768px) {
  .p-bottom7Footer__copyright small {
    font-size: 1.4rem;
  }
}

.p-bottom7Footer__pagetop {
  position: fixed;
  bottom: 1.8rem;
  right: 1.8rem;
  width: 4rem;
  height: 4.3rem;
  cursor: pointer;
  z-index: 10;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-bottom7Footer__pagetop {
    bottom: 3rem;
    right: 4rem;
    width: 6.1rem;
    height: 6.4rem;
  }
}

.p-bottom7Footer__pagetop::after {
  content: "";
  display: block;
  background-image: url(../images/bottom7/top-btn.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.p-bottom7Footer__pagetop:hover {
  opacity: 0.8;
}

.p-bottom-company1 {
  padding-top: 4.6rem;
  padding-bottom: 7.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-company1 {
    padding-top: 12rem;
    padding-bottom: 15.2rem;
  }
}

.p-bottom-company1__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-company1__inner {
    max-width: 105rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-company1__enTitle {
  font-family: "Inter", sans-serif;
  text-transform: uppercase;
  color: #B9B796;
  font-weight: 500;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-company1__enTitle {
    font-size: 1.5rem;
  }
}

.p-bottom-company1__title {
  margin-top: 0.2rem;
  font-weight: 400;
  font-size: 2rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-company1__title {
    margin-top: 0.4rem;
    font-size: 2.8rem;
  }
}

.p-bottom-company1__container {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  row-gap: 2.4rem;
  margin-top: 2.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-company1__container {
    margin-top: 6.8rem;
    padding: 0;
    flex-flow: row-reverse nowrap;
    align-items: flex-start;
    gap: 0 9.0277777778vw;
  }
}

.p-bottom-company1__img {
  margin-left: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-company1__img {
    margin-left: 0;
    max-width: max(60.8rem, 42.2222222222vw);
  }
}

.p-bottom-company1__img::before {
  padding-top: 100.8223684211%;
}

.p-bottom-company1__body {
  width: 100%;
  max-width: 60rem;
  padding: 0 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-company1__body {
    margin-top: -2.4rem;
    flex-shrink: 0;
    max-width: 50.5rem;
    padding: 0 0 0 2.5rem;
  }
}

.p-bottom-company1__list {
  display: flex;
  align-items: flex-start;
  padding: 1.8rem 0 1rem;
  width: 100%;
  border-bottom: 1px solid #101010;
  -o-border-image: linear-gradient(90deg, #FD9601 8.5rem, #E1E3D9 8.5rem);
  border-image: linear-gradient(90deg, #FD9601 8.5rem, #E1E3D9 8.5rem);
  border-image-slice: 1;
  font-size: 1.4rem;
  letter-spacing: 0.13em;
}

@media screen and (min-width: 768px) {
  .p-bottom-company1__list {
    padding: 2.5rem 0.6rem;
  }
}

.p-bottom-company1__term {
  flex-shrink: 0;
  font-weight: 700;
  white-space: nowrap;
  margin-top: 0.4rem;
  line-height: 1.25;
  width: 10.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-company1__term {
    margin-top: 0.2rem;
    width: 13rem;
  }
}

.p-bottom-company1__description {
  line-height: 2.1428571429;
  font-weight: 500;
}

.p-bottom-company1__map {
  margin-top: 4.8rem;
  height: 32rem;
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-company1__map {
    max-width: 105rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    height: 25.2rem;
    margin-top: 10rem;
  }
}

.p-bottom-company1__map iframe {
  width: 100%;
  height: 100%;
}

.p-bottom-about1 {
  padding-top: 3.4rem;
  padding-bottom: 4.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1 {
    padding-top: 8.7rem;
    padding-bottom: 9rem;
  }
}

.p-bottom-about1__container {
  padding: 0 2rem;
  max-width: 60rem;
  margin-inline: auto;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1__container {
    max-width: none;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    padding: 0;
    display: flex;
    flex-direction: row-reverse;
    align-items: flex-start;
    -moz-column-gap: 12.3rem;
    column-gap: 12.3rem;
  }
}

.p-bottom-about1__container::before {
  content: "For First Time PATIENTS";
  text-transform: uppercase;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  letter-spacing: 0.08em;
  font-size: 2rem;
  writing-mode: vertical-rl;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  color: #38A1DB;
  opacity: 0.15;
  height: 100%;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1__container::before {
    font-size: 3.4rem;
  }
}

.p-bottom-about1__img {
  margin-top: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1__img {
    margin-top: 0;
    flex-shrink: 0;
    max-width: 41.5277777778vw;
  }
}

.p-bottom-about1__img::before {
  padding-top: 89.6321070234%;
}

.p-bottom-about1__img img {
  border-radius: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1__img img {
    border-radius: 3rem 0 0 3rem;
  }
}

.p-bottom-about1__block {
  padding-top: 1.5rem;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1__block {
    padding: 2.3rem 0 0 2.5rem;
    max-width: 47.7rem;
  }
}

.p-bottom-about1__patientsEnTitle {
  border-bottom: 1px solid #38A1DB;
  padding-bottom: 0.7rem;
  color: #38A1DB;
  text-transform: uppercase;
  font-family: "Outfit", sans-serif;
  font-size: 1.1rem;
  letter-spacing: 0.08em;
}

.p-bottom-about1__patientsTitle {
  margin-top: 2rem;
  font-size: 2.4rem;
  letter-spacing: 0.11em;
  font-weight: 700;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1__patientsTitle {
    margin-top: 2.4rem;
    font-size: 3.4rem;
  }
}

.p-bottom-about1__text {
  margin-top: 1rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.12em;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1__text {
    margin-top: 1.6rem;
    line-height: 2.7;
    font-size: 2rem;
  }
}

.p-bottom-about1__text span {
  color: #38A1DB;
}

.p-bottom-about1__enTitle {
  color: #38A1DB;
  font-size: 1.1rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 500;
  text-align: center;
}

.p-bottom-about1__title {
  text-align: center;
  margin-top: 1.3rem;
  font-size: 2.4rem;
  font-weight: 700;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  letter-spacing: 0.11em;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1__title {
    font-size: 3.4rem;
  }
}

/* 初診のご案内 */
.p-bottom-about1first {
  background-color: #F4F4F4;
  padding-top: 6.4rem;
  padding-bottom: 6.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1first {
    padding-top: 7.7rem;
    padding-bottom: 7.7rem;
  }
}

.p-bottom-about1first__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1first__inner {
    max-width: 95.3rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-about1first__container {
  margin-top: 2.7rem;
}

.p-bottom-about1first__block {
  padding: 2rem 1.5rem;
  border: 1.5px solid #3F3F3F;
  border-radius: 2rem;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1first__block {
    padding: 2.6rem 3.5rem;
    display: flex;
  }
}

.p-bottom-about1first__block:nth-of-type(n+2) {
  margin-top: 2.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1first__block:nth-of-type(n+2) {
    margin-top: 3.7rem;
  }
}

.p-bottom-about1first__wrap {
  display: flex;
  align-items: center;
  padding-bottom: 1.5rem;
  border-bottom: 1px solid #000;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1first__wrap {
    padding-bottom: 0;
    width: 26.6rem;
    border-bottom: none;
    border-right: 1px solid #000;
  }
}

.p-bottom-about1first__firstImg {
  width: 3.9rem;
  margin-right: 2.35rem;
}

.p-bottom-about1first__secondImg {
  width: 4.4rem;
  margin-right: 2.2rem;
}

.p-bottom-about1first__thirdImg {
  width: 5.2rem;
  margin-right: 1.1rem;
}

.p-bottom-about1first__fourthImg {
  width: 4.6rem;
  margin-right: 2.1rem;
}

.p-bottom-about1first__title {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.p-bottom-about1first__text {
  margin-top: 2rem;
  font-size: 1.1rem;
  line-height: 1.7272727273;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1first__text {
    margin: 0 0 0 3rem;
    display: flex;
    align-items: center;
  }
}

/* 特徴 */
.p-bottom-about1feature {
  padding-top: 6.4rem;
  padding-bottom: 6.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1feature {
    padding-top: 9.6rem;
    padding-bottom: 9.7rem;
  }
}

.p-bottom-about1feature__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1feature__inner {
    max-width: 112rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-about1feature__container {
  margin-top: 2.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1feature__container {
    margin-top: 2.8rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-about1feature__block {
    display: flex;
    align-items: center;
    justify-content: flex-end;
  }
}

.p-bottom-about1feature__block:nth-of-type(n+2) {
  margin-top: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1feature__block:nth-of-type(n+2) {
    margin-top: 3.8rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-about1feature__block:nth-of-type(even) {
    flex-direction: row-reverse;
  }
}

.p-bottom-about1feature__img {
  width: 86%;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1feature__img {
    width: 100%;
    max-width: 36.5rem;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom-about1feature__img::before {
  padding-top: 61.9178082192%;
}

.p-bottom-about1feature__img img {
  border-radius: 2rem;
}

.p-bottom-about1feature__body {
  margin-top: -3rem;
  width: 100%;
  border-radius: 2rem;
  padding: 4.5rem 1.8rem 2.8rem;
  background-color: #F2F6FA;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1feature__body {
    margin: 0 0 0 -15.7rem;
    max-width: 78rem;
    display: flex;
    align-items: center;
    min-height: 28.9rem;
    padding: 5.1rem 5.6rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-about1feature__block:nth-of-type(even) .p-bottom-about1feature__body {
    margin: 0 -15.7rem 0 0;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-about1feature__wrap {
    max-width: 51.1rem;
    margin-left: auto;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-about1feature__block:nth-of-type(even) .p-bottom-about1feature__wrap {
    margin-left: 0;
  }
}

.p-bottom-about1feature__entitle {
  color: #4A84A6;
  text-transform: uppercase;
  font-size: 1.1rem;
  font-family: "Outfit", sans-serif;
  letter-spacing: 0.12em;
}

.p-bottom-about1feature__title {
  margin-top: 0.7rem;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 1.45;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1feature__title {
    font-size: 2rem;
  }
}

.p-bottom-about1feature__text {
  margin-top: 1.8rem;
  font-size: 1.4rem;
  letter-spacing: 0.13em;
  line-height: 1.8571428571;
}

@media screen and (min-width: 768px) {
  .p-bottom-about1feature__text {
    margin-top: 2.4rem;
  }
}

.p-bottom-about2 {
  padding-top: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2 {
    padding-top: 7rem;
  }
}

.p-bottom-about2__lead {
  background: linear-gradient(transparent calc(100% - 43rem), #021E55 calc(100% - 43rem), #021E55 calc(100% - 1.5rem), transparent calc(100% - 1.5rem));
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__lead {
    background: linear-gradient(transparent calc(100% - 43rem), #021E55 calc(100% - 43rem), #021E55 calc(100% - 2.6rem), transparent calc(100% - 2.6rem));
  }
}

.p-bottom-about2__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__inner {
    max-width: 95rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-about2__enTitle {
  color: #B9B796;
  text-transform: capitalize;
  font-family: "Inter", sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__enTitle {
    font-size: 1.4rem;
  }
}

.p-bottom-about2__title {
  margin-top: 0.2rem;
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__title {
    margin-top: 0.6rem;
    font-size: 2.7rem;
  }
}

.p-bottom-about2__purpose {
  padding: 0.8rem;
  text-align: center;
  background-color: #1D3768;
  margin-top: 2.4rem;
  color: #fff;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__purpose {
    margin-top: 3.2rem;
    width: 44.3rem;
    font-size: 2rem;
  }
}

.p-bottom-about2__img {
  margin-top: 2rem;
}

.p-bottom-about2__img::before {
  padding-top: 45%;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__img::before {
    padding-top: 27.4139844617%;
  }
}

.p-bottom-about2__text {
  margin-top: 3.5rem;
  color: #fff;
  font-size: 1.6rem;
  line-height: 2.5;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__text {
    font-size: 1.8rem;
  }
}

.p-bottom-about2__scroll {
  display: flex;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  overflow: hidden;
  margin-top: -4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__scroll {
    -moz-column-gap: min(2.36vw, 3.4rem);
    column-gap: min(2.36vw, 3.4rem);
    margin-top: -6.6rem;
  }
}

.p-bottom-about2__scrollImg {
  -webkit-animation: loopSlide 28s infinite linear 1s both;
  animation: loopSlide 28s infinite linear 1s both;
  width: 130rem;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__scrollImg {
    width: 191.3rem;
    -webkit-animation: loopSlide 40s infinite linear 1s both;
    animation: loopSlide 40s infinite linear 1s both;
  }
}

.p-bottom-about2__scrollImg::before {
  padding-top: 7.7365394668%;
}

@keyframes loopSlide {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-100%);
  }
}

.p-bottom-about2__container {
  margin-top: 9.6rem;
  padding: 0 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__container {
    padding: 0;
  }
}

.p-attachedBoth {
  counter-reset: num;
}

.p-bottom-about2__block {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__block {
    flex-direction: row;
    align-items: center;
  }
}

.p-bottom-about2__block:nth-of-type(n+2) {
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__block:nth-of-type(n+2) {
    margin-top: 6rem;
  }
}

.p-bottom-about2__block::after {
  counter-increment: num;
  content: "feature 0"counter(num);
  text-transform: uppercase;
  color: #F6F4EE;
  font-family: "Cormorant Garamond", serif;
  font-weight: 400;
  font-size: 4rem;
  letter-spacing: 0.04em;
  writing-mode: vertical-rl;
  position: absolute;
  left: 0;
  bottom: 5.5rem;
  height: 100%;
  text-align: right;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__block::after {
    bottom: auto;
    top: 50%;
    transform: translateY(-50%);
    font-size: min(5.2vw, 7.4rem);
    text-align: center;
  }
}

.p-bottom-about2__block:nth-child(even)::after {
  left: auto;
  right: 0;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__block:nth-child(odd) {
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__featureImg {
    flex-shrink: 0;
    max-width: 53vw;
    margin-left: -5rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__block:nth-child(even) .p-bottom-about2__featureImg {
    margin-left: 0;
    margin-right: -5rem;
  }
}

.p-bottom-about2__featureImg::before {
  padding-top: 72%;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__featureImg::before {
    padding-top: max(50.2rem, 65.799739922%);
  }
}

.p-bottom-about2__box {
  width: 100%;
  position: relative;
  background-color: #F5F3F2;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__box {
    max-width: 52.9rem;
    min-height: 39.4rem;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 5.3rem;
  }
}

.p-bottom-about2__wrap {
  margin-right: auto;
  margin-left: auto;
  max-width: 60rem;
  padding: 3rem 2rem;
  position: relative;
  z-index: 1;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__wrap {
    position: static;
    max-width: 46.2rem;
    margin-inline: auto;
    padding: 0;
  }
}

.p-bottom-about2__num {
  font-size: 1.3rem;
  font-family: "Inter", sans-serif;
  color: #958347;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-weight: 400;
}

.p-bottom-about2__featureTitle {
  margin-top: 0.5rem;
  font-size: 2rem;
  line-height: 1.3846153846;
  letter-spacing: 0.08em;
  font-weight: 700;
  text-transform: capitalize;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__featureTitle {
    margin-top: 1.2rem;
    font-size: 2.4rem;
  }
}

.p-bottom-about2__featureText {
  margin-top: 1.6rem;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  line-height: 2.5714285714;
}

@media screen and (min-width: 768px) {
  .p-bottom-about2__featureText {
    margin-top: 2rem;
  }
}

.p-bottom-about3 {
  padding-top: 4.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3 {
    padding-top: 9.4rem;
  }
}

.p-bottom-about3__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__inner {
    max-width: none;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-about3__enTitle {
  text-align: center;
  color: #D1DC02;
  font-family: "Outfit", sans-serif;
  text-transform: capitalize;
  font-weight: 500;
  font-size: 1.8rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__enTitle {
    font-size: 2rem;
  }
}

.p-bottom-about3__enTitle--left {
  text-align: left;
}

.p-bottom-about3__title {
  margin-top: 0.5rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 2.4rem;
  letter-spacing: 0.08em;
  font-weight: 700;
  text-align: center;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__title {
    font-size: 3.6rem;
  }
}

.p-bottom-about3__title--left {
  text-align: left;
}

.p-bottom-about3__title--aboutus::before {
  content: "";
  display: block;
  position: absolute;
  top: -1rem;
  left: 50%;
  transform: translateX(-50%);
  background-image: url(../images/bottom-about3/about-us.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__title--aboutus::before {
    width: 36.9rem;
    height: 32.5rem;
  }
}

.p-bottom-about3__title--aboutus::after {
  content: "";
  display: block;
  width: 1.5px;
  height: 6.8rem;
  background-color: #81B6CD;
  margin-inline: auto;
  margin-top: 2.2rem;
}

.p-bottom-about3__text {
  margin-top: 3.3rem;
  width: 100%;
  margin-inline: auto;
  font-size: 1.4rem;
  letter-spacing: 0.12em;
  font-weight: 500;
  line-height: 2.4285714286;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__text {
    max-width: 78.1rem;
  }
}

.p-bottom-about3__container {
  counter-reset: num;
  margin-top: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__container {
    margin-top: 10.9rem;
  }
}

.p-bottom-about3__block {
  position: relative;
}

.p-bottom-about3__block:nth-of-type(n+2) {
  margin-top: 3.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__block:nth-of-type(n+2) {
    margin-top: 7.8rem;
  }
}

.p-bottom-about3__block::after {
  counter-increment: num;
  content: "0"counter(num);
  font-family: "Outfit", sans-serif;
  color: #ABD3E2;
  opacity: 0.15;
  font-weight: 700;
  font-size: 4rem;
  letter-spacing: 0.06em;
  position: absolute;
  right: 5%;
  bottom: 0;
  line-height: 1;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__block::after {
    font-size: 15.4rem;
    right: 4.5%;
    bottom: -2.6rem;
  }
}

.p-bottom-about3__block:nth-child(even)::after {
  right: auto;
  left: 5%;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__block:nth-child(even)::after {
    left: 4.5%;
  }
}

.p-bottom-about3__wrap {
  padding-right: 2rem;
  padding-left: 2rem;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
  position: relative;
  z-index: 1;
  max-width: 60rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__wrap {
    max-width: 120rem;
    padding-right: 6rem;
    padding-left: 6rem;
    flex-direction: row;
    align-items: flex-start;
    gap: 0 7rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__block:nth-child(even) .p-bottom-about3__wrap {
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__img {
    flex-shrink: 0;
    max-width: 45.7rem;
  }
}

.p-bottom-about3__img::before {
  padding-top: 65.8643326039%;
}

.p-bottom-about3__img img {
  border-radius: 1rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__box {
    margin-top: 1.1rem;
  }
}

.p-bottom-about3__num {
  font-size: 1.1rem;
  text-transform: uppercase;
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #D1DC02;
}

.p-bottom-about3__theme {
  font-size: 1.8rem;
  line-height: 2.3913043478;
  letter-spacing: 0.14em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__theme {
    font-size: 2.3rem;
  }
}

.p-bottom-about3__featureText {
  margin-top: 0.6rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2.1428571429;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__featureText {
    margin-top: 0.2rem;
    max-width: 56.6rem;
  }
}

.p-bottom-about3message {
  margin-top: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3message {
    margin-top: 12.2rem;
  }
}

.p-bottom-about3message__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3message__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-about3message__container {
  margin-top: 4rem;
  padding: 0 2rem;
  max-width: 56rem;
  margin-inline: auto;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3message__container {
    margin-top: 5rem;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    max-width: none;
    padding: 0;
    display: flex;
    align-items: flex-start;
    -moz-column-gap: 7.2rem;
    column-gap: 7.2rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-about3message__img {
    flex-shrink: 0;
    max-width: 43.47vw;
  }
}

.p-bottom-about3message__img::before {
  padding-top: 71.2460063898%;
}

.p-bottom-about3message__img img {
  border-radius: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3message__img img {
    border-radius: 0 1.5rem 1.5rem 0;
  }
}

.p-bottom-about3message__block {
  padding-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3message__block {
    padding: 0;
    margin: 2.2rem 2.5rem 0 0;
    max-width: 55.4rem;
  }
}

.p-bottom-about3message__title {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 2rem;
  letter-spacing: 0.09em;
  line-height: 1.4666666667;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3message__title {
    font-size: 3rem;
    margin-top: -0.9rem;
  }
}

.p-bottom-about3message__title span {
  color: #6DB8D0;
}

.p-bottom-about3message__text {
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2.8571428571;
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3message__text {
    margin-top: 1.5rem;
  }
}

.p-bottom-about3message__bg {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3message__bg {
    display: block;
    position: absolute;
    right: 0;
    bottom: -12.7rem;
    z-index: -1;
    width: 100%;
    max-width: 87.99vw;
    background: linear-gradient(#C3E2DE 0%, #8DCCD2 100%);
  }
}

.p-bottom-about3message__bg::before {
  content: "";
  display: block;
  padding-top: 23.046566693%;
}

.p-bottom-about3message__bg::after {
  content: "message";
  display: block;
  font-size: 12.4rem;
  letter-spacing: 0.08em;
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  text-transform: capitalize;
  position: absolute;
  bottom: -1.3rem;
  right: 1.4rem;
  z-index: 1;
  color: #fff;
  opacity: 0.1;
  line-height: 1;
}

.p-bottom-about3service {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3service {
    padding-top: 29.7rem;
    padding-bottom: 13rem;
  }
}

.p-bottom-about3service__container {
  padding: 0 2rem;
  max-width: 56rem;
  margin-inline: auto;
  position: relative;
  padding-bottom: 3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3service__container {
    max-width: none;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    padding: 0;
    display: flex;
    align-items: flex-start;
    flex-direction: row-reverse;
    -moz-column-gap: 10.7rem;
    column-gap: 10.7rem;
    padding-bottom: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-about3service__img {
    flex-shrink: 0;
    max-width: 40.625vw;
  }
}

.p-bottom-about3service__img::before {
  padding-top: 73.3333333333%;
}

.p-bottom-about3service__img img {
  border-radius: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3service__img img {
    border-radius: 2rem 0 0 2rem;
  }
}

.p-bottom-about3service__block {
  padding-top: 2.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3service__block {
    padding: 0 0 0 2.5rem;
    max-width: 59.3rem;
    margin-top: 0.8rem;
  }
}

.p-bottom-about3service__text {
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2.4;
  margin-top: 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3service__text {
    margin-top: 3.1rem;
    font-size: 1.5rem;
  }
}

.p-bottom-about3service__wrap {
  text-align: center;
  margin-top: 3.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3service__wrap {
    text-align: left;
    margin-top: 4.3rem;
  }
}

.p-bottom-about3__button {
  display: inline-block;
  text-align: left;
  width: 100%;
  max-width: 16.4rem;
  border-radius: 99.9rem;
  position: relative;
  color: #6DB8D0;
  letter-spacing: 0.1em;
  font-family: "Outfit", sans-serif;
  text-transform: capitalize;
  margin-inline: auto;
  font-weight: 400;
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3__button {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom-about3__button a {
  display: block;
  padding: 2rem 4.2rem 2rem 3rem;
}

.p-bottom-about3__button a::before,
.p-bottom-about3__button a::after {
  content: "";
  position: absolute;
}

.p-bottom-about3__button a::before {
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 4.8rem;
  height: 4.8rem;
  border: 1px solid #81B6CD;
  border-radius: 99.9rem;
  transition: width 0.25s ease-out;
}

.p-bottom-about3__button a::after {
  display: block;
  width: 3.1rem;
  height: 0.6rem;
  background-image: url("../images/bottom-about3/arrow-right.svg");
  background-size: contain;
  background-repeat: no-repeat;
  top: 48%;
  right: 0;
}

.p-bottom-about3__button a:hover::before {
  width: 106%;
}

.p-bottom-about3blog {
  background-color: #F5F5F5;
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3blog {
    padding-top: 11.9rem;
    padding-bottom: 7rem;
  }
}

.p-bottom-about3blog__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3blog__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-about3blog__enTitle {
  color: #D1DC02;
  text-transform: capitalize;
  letter-spacing: 0.08em;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  margin-left: 0.3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3blog__enTitle {
    font-size: 2rem;
    margin-left: 0.6rem;
  }
}

.p-bottom-about3blog__theme {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 700;
  font-size: 2.8rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3blog__theme {
    margin-top: 0.7rem;
    font-size: 3.6rem;
  }
}

.p-bottom-about3blog__items {
  margin-top: 2.4rem;
  display: grid;
  row-gap: 2.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3blog__items {
    margin-top: 4rem;
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: 2.7rem;
    column-gap: 2.7rem;
  }
}

.p-bottom-about3blog__item {
  display: inline-block;
  background-color: #fff;
  box-shadow: 0px 3px 6px #EAEDED;
}

.p-bottom-about3blog__img::before {
  padding-top: 60.2339181287%;
}

.p-bottom-about3blog__category {
  position: absolute;
  top: 0.7rem;
  left: 0.8rem;
  background-color: #D1DC02;
  border-radius: 99.9rem;
  text-align: center;
  font-size: 1rem;
  font-weight: 700;
  padding: 0.25rem 1.3rem;
  letter-spacing: 0.06em;
  color: #fff;
}

.p-bottom-about3blog__body {
  padding: 1.8rem 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3blog__body {
    padding-bottom: 5.4rem;
  }
}

.p-bottom-about3blog__title {
  padding: 0 2.7rem 1.9rem;
  border-bottom: 1px solid #454545;
  font-weight: bold;
  letter-spacing: 0.04em;
  font-size: 1.8rem;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3blog__title {
    font-size: 2rem;
  }
}

.p-bottom-about3blog__text {
  padding: 1.6rem 2.7rem 0;
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.8571428571;
}

.p-bottom-about3blog__wrap {
  text-align: center;
  margin-top: 3.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-about3blog__wrap {
    margin-top: 5.2rem;
  }
}

/* 治療内容 */
.p-bottom-service1 {
  margin-top: 4.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1 {
    margin-top: 7.4rem;
  }
}

.p-bottom-service1__container {
  background-color: #F4F4F4;
}

.p-bottom-service1__tabGroup {
  width: 100%;
  max-width: 60rem;
  padding: 1.7rem 2rem;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.5rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__tabGroup {
    max-width: 105rem;
    padding: 1.7rem 2.5rem;
    gap: 2.2rem;
  }
}

.p-bottom-service1__tab {
  width: 11.5rem;
  height: 11.5rem;
  background-color: #fff;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  text-align: center;
  padding-bottom: 2.3rem;
  font-weight: 700;
  font-size: 1rem;
  letter-spacing: 0.08em;
  cursor: pointer;
}

.p-bottom-service1__tab.is-active {
  border: 2px solid #5B9FD6;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__tab.is-active {
    border-width: 4px;
  }
}

.p-bottom-service1__tab::before {
  content: "";
  display: block;
  margin-inline: auto;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.tab1::before {
  width: 3.6rem;
  height: 4.6rem;
  margin-bottom: 0.6rem;
  background-image: url(../images/bottom-service1/icon1.svg);
}

.tab2::before {
  width: 4.8rem;
  height: 3.4rem;
  margin-bottom: 1.1rem;
  background-image: url(../images/bottom-service1/icon2.svg);
}

.tab3::before {
  width: 5.8rem;
  height: 3.6rem;
  margin-bottom: 1rem;
  background-image: url(../images/bottom-service1/icon3.svg);
}

.tab4::before {
  width: 3rem;
  height: 3.8rem;
  margin-bottom: 1rem;
  background-image: url(../images/bottom-service1/icon4.svg);
}

.tab5::before {
  width: 3.7rem;
  height: 3.7rem;
  margin-bottom: 1rem;
  background-image: url(../images/bottom-service1/icon5.svg);
}

.tab6::before {
  width: 4.6rem;
  height: 3.7rem;
  margin-bottom: 1rem;
  background-image: url(../images/bottom-service1/icon6.svg);
}

.p-bottom-service1__panel {
  display: none;
}

.p-bottom-service1__panel.is-show {
  display: block;
}

/* 表示コンテンツ */
.p-bottom-service1__panelHeadContaienr {
  margin-top: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__panelHeadContaienr {
    margin-top: 7.1rem;
  }
}

.p-bottom-service1__enTitle {
  color: #38A1DB;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: 1.1rem;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.p-bottom-service1__title {
  margin-top: 1.2rem;
  text-align: center;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 2.4rem;
  letter-spacing: 0.11em;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__title {
    font-size: 3.5rem;
  }
}

.p-bottom-service1__circle {
  margin-top: -0.3rem;
  margin-inline: auto;
  width: 20.8rem;
  height: 20.8rem;
  background-color: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

.p-bottom-service1__circle img {
  width: 100%;
}

.p-bottom-service1__circle::after {
  content: "";
  display: block;
  height: 7.2rem;
  width: 1px;
  background-color: #000;
  margin-inline: auto;
  position: absolute;
  bottom: -4.5rem;
  left: 50%;
  transform: translateX(-50%);
}

.p-bottom-service1__circleImg1 {
  width: 7.5rem;
}

.p-bottom-service1__circleImg2 {
  width: 10rem;
}

.p-bottom-service1__circleImg3 {
  width: 12.1rem;
}

.p-bottom-service1__circleImg4 {
  width: 6.3rem;
}

.p-bottom-service1__circleImg5 {
  width: 7.7rem;
}

.p-bottom-service1__circleImg6 {
  width: 9.6rem;
}

.p-bottom-service1__panelBody {
  margin-top: -9.6rem;
  padding-top: 17.4rem;
  padding-bottom: 8.7rem;
  background-color: #F1F6FB;
}

.p-bottom-service1__panelBodyInner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__panelBodyInner {
    max-width: 80rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-service1__feature {
  font-weight: 700;
  font-size: 2rem;
  letter-spacing: 0.12em;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__feature {
    font-size: 2.2rem;
  }
}

.p-bottom-service1__feature::before {
  content: "";
  display: block;
  width: 7rem;
  height: 3rem;
  background-image: url(../images/bottom-service1/feature.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin-inline: auto;
  margin-bottom: 0.8rem;
}

.p-bottom-service1__text {
  margin-top: 1.6rem;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 2.125;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__text {
    font-size: 1.6rem;
  }
}

.p-bottom-service1__contentImg {
  margin-top: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__contentImg {
    margin-top: 4.7rem;
  }
}

.p-bottom-service1__contentImg::before {
  padding-top: 43.4666666667%;
}

.p-bottom-service1__contentImg img {
  border-radius: 2rem;
}

.p-bottom-service1__panelBodyContaienr {
  padding-top: 6.4rem;
  padding-bottom: 6.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__panelBodyContaienr {
    padding-top: 9rem;
    padding-bottom: 9.7rem;
  }
}

.p-bottom-service1__panelInner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__panelInner {
    max-width: 95rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-service1__contents {
  display: grid;
  row-gap: 10.8rem;
  margin-top: 11rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__contents {
    margin-top: 7.1rem;
    grid-template-columns: repeat(2, 1fr);
    gap: 7.2rem 5.5rem;
  }
}

.p-bottom-service1__block {
  background-color: #F1F6FB;
  padding: 12.8rem 2rem 3.5rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__block {
    padding: 3.4rem 4.2rem 2rem;
  }
}

.p-bottom-service1__themeImg {
  width: 19.8rem;
  height: 19.8rem;
  border: 7.5px solid #F1F6FB;
  border-radius: 50%;
  position: absolute;
  top: -8.3rem;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__themeImg {
    top: -4.1rem;
    left: auto;
    transform: none;
    right: 2.7rem;
  }
}

.p-bottom-service1__themeImg img {
  border-radius: 50%;
}

.p-bottom-service1__num {
  font-family: "Outfit", sans-serif;
  color: #38A1DB;
  text-align: center;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 1.8rem;
  letter-spacing: 0.2em;
  line-height: 1;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  display: block;
  position: absolute;
  top: 5rem;
  left: 4%;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__num {
    position: static;
    font-size: 2rem;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom-service1__num span {
  display: block;
  font-size: 4rem;
  font-family: "Inter", sans-serif;
  letter-spacing: 0;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__num span {
    margin-top: -0.2rem;
    font-size: 5.7rem;
  }
}

.p-bottom-service1__num span::after {
  content: "";
  display: block;
  width: 1.8rem;
  height: 2px;
  background-color: #38A1DB;
  margin-top: 0.4rem;
  margin-inline: auto;
}

.p-bottom-service1__theme {
  text-align: center;
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.4;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__theme {
    margin-top: 1.5rem;
    text-align: left;
    width: 19rem;
    font-size: 2rem;
  }
}

.p-bottom-service1__themeText {
  margin-top: 1.2rem;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 2.2142857143;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1__themeText {
    margin-top: 0;
  }
}

/* 初めての方へ */
@media screen and (min-width: 768px) {
  .p-bottom-service1About {
    display: flex;
  }
}

.p-bottom-service1About__block {
  color: #fff;
  background-color: #91C2E0;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 4rem 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1About__block {
    width: 50%;
    padding: 2rem 2rem 2rem 4rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-service1About__box {
    max-width: 33rem;
  }
}

.p-bottom-service1About__enTitle {
  text-transform: uppercase;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: 1.2rem;
  letter-spacing: 0.08em;
}

.p-bottom-service1About__title {
  margin-top: 0.9rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 700;
  font-size: 2.4rem;
  letter-spacing: 0.11em;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1About__title {
    font-size: 3.5rem;
  }
}

.p-bottom-service1About__text {
  margin-top: 1rem;
  font-size: 1.3rem;
  letter-spacing: 0.06em;
  line-height: 2.0769230769;
}

.p-bottom-service1About__wrap {
  margin-top: 3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1About__img {
    width: 50%;
  }
}

.p-bottom-service1About__img::before {
  padding-top: 52%;
}

@media screen and (min-width: 768px) {
  .p-bottom-service1About__img::before {
    padding-top: 44.8611111111%;
  }
}

.p-bottom-service1About__button {
  color: #fff;
  background: #91C2E0;
  border: 1px solid #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  max-width: 21.6rem;
  border-radius: 99.9rem;
  width: 100%;
  padding: 1.35rem 0;
  font-size: 1rem;
  letter-spacing: 0.12em;
  text-transform: capitalize;
  font-weight: 500;
}

.p-bottom-service1About__button:hover {
  opacity: 0.8;
}

.p-bottom-service1About__button::after {
  content: "";
  width: 0.4rem;
  height: 0.4rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(-45deg);
  position: absolute;
  right: 2.3rem;
}

.p-bottom-service2 {
  padding-top: 5.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2 {
    padding-top: 11rem;
  }
}

.p-bottom-service2__enTitle {
  text-align: center;
  color: #F77700;
  font-family: "Inter", sans-serif;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 1.8rem;
  letter-spacing: 0.08em;
}

.p-bottom-service2__title {
  margin-top: 0.2rem;
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2__title {
    margin-top: -0.5rem;
    font-size: 3.4rem;
  }
}

.p-bottom-service2__title--first::after {
  content: "";
  display: block;
  width: 1px;
  height: 7.7rem;
  background-color: #D5D5D5;
  margin-inline: auto;
  margin-top: 2.5rem;
}

.p-bottom-service2__container {
  margin-top: 3.4rem;
  counter-reset: num;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2__container {
    margin-top: 2.6rem;
  }
}

.p-bottom-service2__block {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2__block {
    padding: 3rem 0;
  }
}

.p-bottom-service2__block:nth-of-type(n+2) {
  margin-top: 3.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2__block:nth-of-type(n+2) {
    margin-top: 3.8rem;
  }
}

.p-bottom-service2__block::after {
  counter-increment: num;
  content: "service 0"counter(num);
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  color: #EFF5F5;
  font-weight: 400;
  font-size: 4rem;
  letter-spacing: 0.04em;
  writing-mode: vertical-rl;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  height: 100%;
  text-align: right;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2__block::after {
    font-size: min(4.1666666667vw, 6rem);
    text-align: center;
    left: -0.4rem;
  }
}

.p-bottom-service2__block:nth-child(even)::after {
  left: auto;
  right: 0;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2__block:nth-child(even)::after {
    right: -0.4rem;
  }
}

.p-bottom-service2__wrap {
  padding-right: 2rem;
  padding-left: 2rem;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
  position: relative;
  z-index: 1;
  max-width: 60rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2__wrap {
    max-width: 120rem;
    padding-right: 6rem;
    padding-left: 6rem;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 0 7rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-service2__block:nth-child(even) .p-bottom-service2__wrap {
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-service2__img {
    flex-shrink: 0;
    max-width: 45.1rem;
  }
}

.p-bottom-service2__img::before {
  padding-top: 65.8536585366%;
}

.p-bottom-service2__box {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2__box {
    margin-top: 0.5rem;
  }
}

.p-bottom-service2__num {
  font-size: 1.2rem;
  text-transform: uppercase;
  font-family: "Inter", sans-serif;
  letter-spacing: 0.2em;
  color: #F77700;
}

.p-bottom-service2__theme {
  margin-top: 0.8rem;
  font-size: 1.8rem;
  line-height: 1.6;
  letter-spacing: 0.08em;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2__theme {
    margin-top: 1rem;
    font-size: 2.5rem;
  }
}

.p-bottom-service2__text {
  margin-top: 0.6rem;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 2.5714285714;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2__text {
    margin-top: 1.7rem;
    max-width: 55.9rem;
  }
}

/* その他のサービス */
.p-bottom-service2business {
  margin-top: 6.4rem;
  padding-bottom: 8rem;
  background: linear-gradient(transparent calc(100% - 40rem), #EFF5F5 calc(100% - 40rem));
}

@media screen and (min-width: 768px) {
  .p-bottom-service2business {
    padding-top: 12.6rem;
    padding-bottom: 10rem;
    background: linear-gradient(transparent calc(100% - 46.8rem), #EFF5F5 calc(100% - 46.8rem));
  }
}

.p-bottom-service2business__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2business__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-service2business__container {
  margin-top: 3.4rem;
  display: grid;
  row-gap: 0.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2business__container {
    margin-top: 3.7rem;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.3rem 0.4rem;
  }
}

.p-bottom-service2business__link {
  overflow: hidden;
}

.p-bottom-service2business__link:hover img {
  transform: scale(1.05);
}

.p-bottom-service2business__img {
  position: relative;
  padding-top: 64%;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2business__img {
    padding-top: 69.5530726257%;
  }
}

.p-bottom-service2business__img img {
  position: absolute;
  top: 0;
  left: 0;
  transition: transform 0.3s ease-out;
}

.p-bottom-service2business__img::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(23, 53, 110, 0.65);
  width: 100%;
  height: 100%;
}

.p-bottom-service2business__wrap {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
  width: 100%;
}

.p-bottom-service2business__enTitle {
  font-family: "Inter", sans-serif;
  font-size: 1rem;
  letter-spacing: 0.1em;
  font-weight: 500;
  text-transform: uppercase;
}

.p-bottom-service2business__title {
  text-align: center;
  margin-top: 0.6rem;
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  letter-spacing: 0.06em;
  line-height: 1.4166666667;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2business__title {
    font-size: 2.4rem;
  }
}

/* お知らせ */
.p-bottom-service2news {
  padding-top: 8rem;
  padding-bottom: 8rem;
  position: relative;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news {
    padding-top: 15.5rem;
    padding-bottom: 11.9rem;
  }
}

.p-bottom-service2news::after {
  content: "news";
  writing-mode: vertical-rl;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  font-size: 6rem;
  letter-spacing: 0.13em;
  font-weight: 400;
  color: #EFF5F5;
  position: absolute;
  top: 5.8rem;
  right: -0.8rem;
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news::after {
    top: 7.8rem;
    font-size: 12rem;
  }
}

.p-bottom-service2news__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news__inner {
    max-width: 112.5rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-service2news__enTitle {
  text-transform: uppercase;
  font-family: "Oswald", sans-serif;
  font-size: 4rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news__enTitle {
    font-size: 8.1rem;
  }
}

.p-bottom-service2news__theme {
  margin-top: 1.6rem;
  color: #F77700;
  font-weight: 300;
  font-size: 2.4rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news__theme {
    font-size: 3.1rem;
  }
}

.p-bottom-service2news__items {
  margin-top: 2.4rem;
}

.p-bottom-service2news__item {
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid #4C5B70;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news__item {
    padding: 2.05rem 1.4rem;
    flex-flow: row nowrap;
    align-items: center;
    gap: 0 2.7rem;
    position: relative;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news__item:first-of-type {
    border-top: 1px solid #4C5B70;
  }
}

.p-bottom-service2news__item:nth-of-type(n+2) {
  margin-top: 3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news__item:nth-of-type(n+2) {
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news__item::after {
    content: "";
    width: 1.5rem;
    height: 0.5rem;
    display: block;
    position: absolute;
    top: 50%;
    right: 0.9rem;
    transform: translateY(-50%);
    background-image: url(../images/bottom-service2/arrow-right.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news__thumbnail {
    max-width: 10.2rem;
    flex-shrink: 0;
  }
}

.p-bottom-service2news__thumbnail::before {
  padding-top: 70.5882352941%;
}

.p-bottom-service2news__block {
  padding: 0 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news__block {
    padding: 0;
  }
}

.p-bottom-service2news__info {
  display: flex;
  align-items: center;
}

.p-bottom-service2news__time {
  width: 8rem;
  font-family: "Inter", sans-serif;
  font-size: 1.4rem;
  letter-spacing: 0.13em;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news__time {
    font-size: 1.1rem;
  }
}

.p-bottom-service2news__category {
  color: #fff;
  font-size: 1.2rem;
  padding: 0.1rem 0.9rem;
  letter-spacing: 0.06em;
  font-weight: 500;
  background-color: #F77700;
  margin-left: 3.4rem;
  display: flex;
  align-items: center;
  text-align: center;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news__category {
    font-size: 1rem;
  }
}

.p-bottom-service2news__category::before {
  content: "";
  display: block;
  width: 1px;
  height: 70%;
  background-color: #1F1F1F;
  position: absolute;
  top: 50%;
  left: -2.4rem;
  transform: translateY(-50%);
}

.p-bottom-service2news__title {
  margin-top: 1.6rem;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news__title {
    font-size: 1.2rem;
  }
}

.p-bottom-service2news__wrap {
  text-align: center;
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2news__wrap {
    text-align: right;
  }
}

.p-bottom-service2news__button {
  display: inline-block;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #F77700;
  text-align: center;
  width: 24.4rem;
  padding: 1.35rem 0.8rem 1.35rem 0;
  position: relative;
  transition: opacity 0.3s ease-out;
}

.p-bottom-service2news__button:hover {
  opacity: 0.8;
}

.p-bottom-service2news__button::after {
  position: absolute;
  content: "";
  background-image: url(../images/bottom-service2/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 2.7rem;
  height: 1rem;
  top: 50%;
  transform: translateY(-50%);
  right: 2.6rem;
}

/* CTA */
.p-bottom-service2cta {
  background-color: #EFF5F5;
  padding-top: 8.6rem;
  padding-bottom: 7.8rem;
}

.p-bottom-service2cta__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service2cta__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    flex-flow: row nowrap;
    align-items: flex-start;
    gap: 0 5.6rem;
  }
}

.p-bottom-service2cta__img::before {
  padding-top: 23.046875%;
}

.p-bottom-service3 {
  padding-top: 5.6rem;
  padding-bottom: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3 {
    padding-top: 12.5rem;
    padding-bottom: 11rem;
  }
}

.p-bottom-service3__container {
  padding-bottom: 10.5rem;
  background: linear-gradient(#fff calc(100% - 18rem), #CBE7E4 calc(100% - 18rem), #8DCCD2 100%);
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__container {
    padding-bottom: 12.3rem;
    background: linear-gradient(#fff calc(100% - 33.2rem), #CBE7E4 calc(100% - 33.2rem), #8DCCD2 100%);
  }
}

.p-bottom-service3__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-service3__enclosure {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  max-width: 80%;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__enclosure {
    max-width: none;
  }
}

.p-bottom-service3__enclosure::before,
.p-bottom-service3__enclosure::after,
.p-bottom-service3__title::before,
.p-bottom-service3__title::after {
  content: "";
  display: block;
  width: 2rem;
  height: 1.8rem;
  position: absolute;
}

.p-bottom-service3__enclosure::before {
  top: 0;
  left: 0;
  border-top: 2px solid #D1DC02;
  border-left: 2px solid #D1DC02;
}

.p-bottom-service3__enclosure::after {
  top: 0;
  right: 0;
  border-top: 2px solid #D1DC02;
  border-right: 2px solid #D1DC02;
}

.p-bottom-service3__title::before {
  bottom: 0;
  left: 0;
  border-bottom: 2px solid #D1DC02;
  border-left: 2px solid #D1DC02;
}

.p-bottom-service3__title::after {
  bottom: 0;
  right: 0;
  border-bottom: 2px solid #D1DC02;
  border-right: 2px solid #D1DC02;
}

.p-bottom-service3__title {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
  line-height: 1.6666666667;
  color: #D1DC02;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
  margin-inline: auto;
  font-weight: 700;
  padding: 1.5rem 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__title {
    font-size: 2.7rem;
    padding: 1.1rem 3.6rem;
  }
}

.p-bottom-service3__subject {
  margin-top: 4rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 1.8rem;
  letter-spacing: 0.06em;
  font-weight: 700;
  text-align: center;
  position: relative;
  line-height: 1.6666666667;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__subject {
    margin-top: 4.4rem;
    font-size: 3.6rem;
  }
}

.p-bottom-service3__text {
  margin-top: 2rem;
  padding-top: 2.3rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2.625;
  border-top: 1px solid #000;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__text {
    margin-top: 2.5rem;
    padding-top: 2.9rem;
    font-size: 1.6rem;
    border-width: 2px;
  }
}

.p-bottom-service3__img {
  margin-top: 2.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__img {
    margin-top: 5.5rem;
  }
}

.p-bottom-service3__img::before {
  padding-top: 42%;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__img::before {
    padding-top: 34.537037037%;
  }
}

.p-bottom-service3__contents {
  margin-top: 7.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__contents {
    margin-top: 12.4rem;
  }
}

.p-bottom-service3__block {
  position: relative;
}

.p-bottom-service3__block:nth-of-type(n+2) {
  margin-top: 3.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__block:nth-of-type(n+2) {
    margin-top: 11.6rem;
  }
}

.p-bottom-service3__block::after {
  content: "";
  display: block;
  position: absolute;
  height: calc(65.9vw + 3.6rem);
  width: 38vw;
  top: 0;
  background-color: #F5F8F9;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__block::after {
    width: min(28vw, 40.2rem);
    bottom: -6.3rem;
    top: auto;
    height: 50%;
  }
}

.p-bottom-service3__block:nth-child(odd)::after {
  right: 0;
}

.p-bottom-service3__block:nth-child(even)::after {
  left: 0;
}

.p-bottom-service3__wrap {
  padding-right: 2rem;
  padding-left: 2rem;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
  position: relative;
  z-index: 1;
  max-width: 60rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__wrap {
    max-width: none;
    padding: 0;
    flex-direction: row-reverse;
    align-items: center;
    gap: 0 7.9rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__block:nth-child(even) .p-bottom-service3__wrap {
    flex-direction: row;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__contentsImg {
    flex-shrink: 0;
    max-width: 42.3611111111vw;
  }
}

.p-bottom-service3__contentsImg::before {
  padding-top: 65.9016393443%;
}

.p-bottom-service3__block:nth-of-type(odd) img {
  border-radius: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__block:nth-of-type(odd) img {
    border-radius: 1.5rem 0 0 1.5rem;
  }
}

.p-bottom-service3__block:nth-of-type(even) img {
  border-radius: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__block:nth-of-type(even) img {
    border-radius: 0 1.5rem 1.5rem 0;
  }
}

.p-bottom-service3__img img {
  border-radius: 1rem;
}

.p-bottom-service3__box {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__box {
    max-width: 50.2rem;
    padding-left: 2.5rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__block:nth-of-type(even) .p-bottom-service3__box {
    padding-left: 0;
    padding-right: 2.5rem;
  }
}

.p-bottom-service3__num {
  font-size: 1.1rem;
  text-transform: uppercase;
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #D1DC02;
}

.p-bottom-service3__theme {
  font-size: 1.8rem;
  line-height: 2.3913043478;
  letter-spacing: 0.14em;
  font-weight: 500;
  border-bottom: 1px solid #000;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__theme {
    padding-bottom: 0.2rem;
    font-size: 2.3rem;
  }
}

.p-bottom-service3__serviceText {
  margin-top: 0.6rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2.1428571429;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__serviceText {
    margin-top: 1.6rem;
  }
}

.p-bottom-service3__lastBlock {
  margin-top: 3.6rem;
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__lastBlock {
    max-width: 95rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    margin-top: 16.3rem;
  }
}

.p-bottom-service3__lastContentsImg {
  padding-top: 65.9016393443%;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__lastContentsImg {
    padding-top: 43.2222222222%;
  }
}

.p-bottom-service3__lastContentsImg img {
  border-radius: 1.5rem;
}

.p-bottom-service3__num--last {
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3__num--last {
    margin-top: 4rem;
  }
}

.p-bottom-service3blog {
  background-color: #F5F5F5;
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3blog {
    padding-top: 11.9rem;
    padding-bottom: 7rem;
  }
}

.p-bottom-service3blog__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3blog__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-service3blog__enTitle {
  color: #D1DC02;
  text-transform: capitalize;
  letter-spacing: 0.08em;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  margin-left: 0.3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3blog__enTitle {
    font-size: 2rem;
    margin-left: 0.6rem;
  }
}

.p-bottom-service3blog__theme {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 700;
  font-size: 2.8rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3blog__theme {
    margin-top: 0.7rem;
    font-size: 3.6rem;
  }
}

.p-bottom-service3blog__items {
  margin-top: 2.4rem;
  display: grid;
  row-gap: 2.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3blog__items {
    margin-top: 4rem;
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: 2.7rem;
    column-gap: 2.7rem;
  }
}

.p-bottom-service3blog__item {
  display: inline-block;
  background-color: #fff;
  box-shadow: 0px 3px 6px #EAEDED;
}

.p-bottom-service3blog__img::before {
  padding-top: 60.2339181287%;
}

.p-bottom-service3blog__category {
  position: absolute;
  top: 0.7rem;
  left: 0.8rem;
  background-color: #D1DC02;
  border-radius: 99.9rem;
  text-align: center;
  font-size: 1rem;
  font-weight: 700;
  padding: 0.25rem 1.3rem;
  letter-spacing: 0.06em;
  color: #fff;
}

.p-bottom-service3blog__body {
  padding: 1.8rem 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3blog__body {
    padding-bottom: 5.4rem;
  }
}

.p-bottom-service3blog__title {
  padding: 0 2.7rem 1.9rem;
  border-bottom: 1px solid #454545;
  font-weight: bold;
  letter-spacing: 0.04em;
  font-size: 1.8rem;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3blog__title {
    font-size: 2rem;
  }
}

.p-bottom-service3blog__text {
  padding: 1.6rem 2.7rem 0;
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.8571428571;
}

.p-bottom-service3blog__wrap {
  text-align: center;
  margin-top: 3.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-service3blog__wrap {
    margin-top: 5.2rem;
  }
}

.p-bottom-recruit1__enTitle {
  text-align: center;
  color: #F77700;
  font-family: "Inter", sans-serif;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 1.8rem;
  letter-spacing: 0.08em;
}

.p-bottom-recruit1__title {
  margin-top: 0.2rem;
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1__title {
    margin-top: 0.7rem;
    font-size: 3.4rem;
  }
}

.p-bottom-recruit1__largeEnTitle {
  text-transform: uppercase;
  font-family: "Oswald", sans-serif;
  font-size: 4rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1__largeEnTitle {
    font-size: 8.1rem;
  }
}

.p-bottom-recruit1__largeTitle {
  margin-top: 0.6rem;
  color: #F77700;
  font-weight: 300;
  font-size: 2.4rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1__largeTitle {
    margin-top: 1.6rem;
    font-size: 3.1rem;
  }
}

/* 私たちの仕事 */
.p-bottom-recruit1 {
  padding-top: 8.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1 {
    padding-top: 10.6rem;
  }
}

.p-bottom-recruit1__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-recruit1__container {
  margin-top: 4.6rem;
  padding: 0 2rem;
  max-width: 56rem;
  margin-inline: auto;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1__container {
    max-width: none;
    padding: 0;
    display: flex;
    align-items: flex-start;
    -moz-column-gap: 7.2rem;
    column-gap: 7.2rem;
  }
}

.p-bottom-recruit1__img {
  margin-top: 2.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1__img {
    margin-top: 0;
    flex-shrink: 0;
    max-width: 43.44vw;
  }
}

.p-bottom-recruit1__img::before {
  padding-top: 72.4220623501%;
}

.p-bottom-recruit1__block {
  padding-top: 2.4rem;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1__block {
    padding: 0 2.5rem 0 0;
    max-width: 49.6rem;
  }
}

.p-bottom-recruit1__worksEnTitle {
  color: #F77700;
  font-family: "Inter", sans-serif;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 1.8rem;
  letter-spacing: 0.08em;
}

.p-bottom-recruit1__worksTitle {
  margin-top: -0.2rem;
  font-family: "Noto Serif JP", serif;
  font-size: 2.4rem;
  letter-spacing: 0.08em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1__worksTitle {
    margin-top: -0.5rem;
    font-size: 3.4rem;
  }
}

.p-bottom-recruit1__subtitle {
  font-size: 2rem;
  line-height: 1.5238095238;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1__subtitle {
    margin-top: 3rem;
    font-size: 2.1rem;
  }
}

.p-bottom-recruit1__text {
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 2.375;
  margin-top: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1__text {
    margin-top: 1.9rem;
    font-size: 1.6rem;
  }
}

.p-bottom-recruit1__bg {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1__bg {
    display: block;
    position: absolute;
    right: 0;
    bottom: -7.8rem;
    z-index: -1;
    width: 100%;
    max-width: 87.3vw;
  }
}

.p-bottom-recruit1__bg::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  padding-top: 23.046566693%;
  background-color: #EFF5F5;
}

.p-bottom-recruit1__bg::after {
  content: "work";
  display: block;
  font-size: 12rem;
  letter-spacing: 0.13em;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  position: absolute;
  bottom: -0.4rem;
  right: 2.2rem;
  z-index: 1;
  opacity: 0.8;
  color: #fff;
  font-weight: 300;
  line-height: 1;
}

/* 求める人材 */
.p-bottom-recruit1person {
  padding-top: 7.8rem;
  padding-bottom: 8.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1person {
    padding-top: 18.3rem;
    padding-bottom: 12rem;
  }
}

.p-bottom-recruit1person__container {
  margin-top: 2.8rem;
  counter-reset: num;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1person__container {
    margin-top: 2.6rem;
  }
}

.p-bottom-recruit1person__block {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1person__block {
    padding: 3rem 0;
  }
}

.p-bottom-recruit1person__block:nth-of-type(n+2) {
  margin-top: 3.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1person__block:nth-of-type(n+2) {
    margin-top: 3.8rem;
  }
}

.p-bottom-recruit1person__block::after {
  counter-increment: num;
  content: "person 0"counter(num);
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  color: #EFF5F5;
  font-weight: 400;
  font-size: 4rem;
  letter-spacing: 0.04em;
  writing-mode: vertical-rl;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  height: 100%;
  text-align: right;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1person__block::after {
    font-size: min(4.1666666667vw, 6rem);
    text-align: center;
    left: -0.4rem;
  }
}

.p-bottom-recruit1person__block:nth-child(even)::after {
  left: auto;
  right: 0;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1person__block:nth-child(even)::after {
    right: -0.4rem;
  }
}

.p-bottom-recruit1person__wrap {
  padding-right: 2rem;
  padding-left: 2rem;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
  position: relative;
  z-index: 1;
  max-width: 60rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1person__wrap {
    max-width: 120rem;
    padding-right: 6rem;
    padding-left: 6rem;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 0 7rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1person__block:nth-child(even) .p-bottom-recruit1person__wrap {
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1person__img {
    flex-shrink: 0;
    max-width: 45.1rem;
  }
}

.p-bottom-recruit1person__img::before {
  padding-top: 65.8536585366%;
}

.p-bottom-recruit1person__box {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1person__box {
    margin-top: 1.3rem;
  }
}

.p-bottom-recruit1person__num {
  font-size: 1.2rem;
  text-transform: uppercase;
  font-family: "Inter", sans-serif;
  letter-spacing: 0.2em;
  color: #F77700;
}

.p-bottom-recruit1person__theme {
  margin-top: 0.8rem;
  font-size: 1.8rem;
  line-height: 1.6;
  letter-spacing: 0.08em;
  font-family: "Noto Serif JP", serif;
  padding-bottom: 0.8rem;
  font-weight: 500;
  border-bottom: 1px solid #000;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1person__theme {
    margin-top: 1rem;
    font-size: 2.5rem;
    padding-bottom: 1.2rem;
  }
}

.p-bottom-recruit1person__text {
  margin-top: 0.6rem;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 2.5714285714;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1person__text {
    margin-top: 0.8rem;
    max-width: 55.9rem;
  }
}

/* 社内制度・福利厚生 */
.p-bottom-recruit1benefit {
  background-color: #EFF5F5;
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1benefit {
    padding-bottom: 10.3rem;
  }
}

.p-bottom-recruit1benefit__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1benefit__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-recruit1benefit__items {
  display: grid;
  row-gap: 3rem;
  margin-top: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1benefit__items {
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: 4.3rem;
    column-gap: 4.3rem;
  }
}

.p-bottom-recruit1benefit__img::before {
  padding-top: 68.6746987952%;
}

.p-bottom-recruit1benefit__subject {
  margin-top: 2.4rem;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1benefit__subject {
    margin-top: 3rem;
  }
}

.p-bottom-recruit1benefit__text {
  margin-top: 1.2rem;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  line-height: 1.9285714286;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1benefit__text {
    margin-top: 2.1rem;
  }
}

/* 募集要項 */
.p-bottom-recruit1guideline {
  padding-top: 7.8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1guideline {
    padding-top: 9.5rem;
    padding-bottom: 19.5rem;
  }
}

.p-bottom-recruit1guideline__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1guideline__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-recruit1guideline__tabGroup {
  margin-top: 2.6rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1guideline__tabGroup {
    margin-top: 3.5rem;
    -moz-column-gap: 2rem;
    column-gap: 2rem;
    max-width: 94rem;
    margin-inline: auto;
  }
}

.p-bottom-recruit1guideline__tab {
  flex-grow: 1;
  padding: 1.2rem 0;
  list-style: none;
  background-color: #5370AA;
  text-align: center;
  cursor: pointer;
  font-size: 1.4rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1guideline__tab {
    font-size: 2.4rem;
    padding: 1.6rem 0;
  }
}

.p-bottom-recruit1guideline__panelGroup {
  border: solid 1px #F77700;
  background-color: #F7F7F7;
  margin-top: 2.7rem;
}

.p-bottom-recruit1guideline__panel {
  display: none;
}

.p-bottom-recruit1guideline__tab.is-active {
  background-color: #F77700;
  transition: background-color 0.3s ease-out;
}

.p-bottom-recruit1guideline__panel.is-show {
  display: block;
}

.p-bottom-recruit1guideline__block {
  padding-bottom: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1guideline__block {
    padding-bottom: 8.4rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1guideline__block:nth-of-type(n+2) {
    margin-top: 5rem;
  }
}

.p-bottom-recruit1guideline__position {
  padding: 1.4rem 0;
  color: #fff;
  background-color: #F77700;
  letter-spacing: 0.08em;
  text-align: center;
  font-weight: 700;
  font-size: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1guideline__position {
    padding: 1.7rem 0;
    font-size: 2.3rem;
  }
}

.p-bottom-recruit1guideline__list {
  padding: 2.8rem 1.6rem 0;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1guideline__list {
    max-width: 101.4rem;
    padding: 3.6rem 2rem 0;
  }
}

.p-bottom-recruit1guideline__list:nth-of-type(n+2) {
  padding-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1guideline__list:nth-of-type(n+2) {
    padding-top: 2.7rem;
  }
}

.p-bottom-recruit1guideline__term {
  font-size: 1.7rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #F77700;
}

.p-bottom-recruit1guideline__description {
  margin-top: 1.1rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2;
  border-bottom: 1px solid #CCD0D5;
  padding-bottom: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1guideline__description {
    font-size: 1.5rem;
    line-height: 2.4;
  }
}

/* インスタグラム */
.p-bottom-recruit1instagram {
  background-color: #EFF5F5;
  padding-top: 8rem;
  padding-bottom: 10.5rem;
}

.p-bottom-recruit1instagram__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1instagram__inner {
    margin-top: -13.1rem;
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-recruit1instagram__items {
  margin-top: 3.2rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1instagram__items {
    margin-top: 5.9rem;
    grid-template-columns: repeat(3, 1fr);
    gap: 4rem 3.9rem;
  }
}

.p-bottom-recruit1instagram__item::before {
  padding-top: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1instagram__item::before {
    padding-top: 80.5389221557%;
  }
}

.p-bottom-recruit1instagram__wrap {
  text-align: center;
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1instagram__wrap {
    margin-top: 6.3rem;
  }
}

/* お知らせ */
.p-bottom-recruit1news {
  padding-top: 8rem;
  padding-bottom: 8rem;
  position: relative;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1news {
    padding-top: 17.3rem;
    padding-bottom: 11.9rem;
  }
}

.p-bottom-recruit1news::after {
  content: "news";
  writing-mode: vertical-rl;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  font-size: 6rem;
  letter-spacing: 0.13em;
  font-weight: 400;
  color: #EFF5F5;
  position: absolute;
  top: 5.8rem;
  right: -0.8rem;
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1news::after {
    top: 7.8rem;
    font-size: 12rem;
  }
}

.p-bottom-recruit1news__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1news__inner {
    max-width: 112.5rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-recruit1news__items {
  margin-top: 2.4rem;
}

.p-bottom-recruit1news__item {
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid #4C5B70;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1news__item {
    padding: 2.05rem 1.4rem;
    flex-flow: row nowrap;
    align-items: center;
    gap: 0 2.7rem;
    position: relative;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1news__item:first-of-type {
    border-top: 1px solid #4C5B70;
  }
}

.p-bottom-recruit1news__item:nth-of-type(n+2) {
  margin-top: 3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1news__item:nth-of-type(n+2) {
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1news__item::after {
    content: "";
    width: 1.5rem;
    height: 0.5rem;
    display: block;
    position: absolute;
    top: 50%;
    right: 0.9rem;
    transform: translateY(-50%);
    background-image: url(../images/bottom-recruit1/arrow-right.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1news__thumbnail {
    max-width: 10.2rem;
    flex-shrink: 0;
  }
}

.p-bottom-recruit1news__thumbnail::before {
  padding-top: 70.5882352941%;
}

.p-bottom-recruit1news__block {
  padding: 0 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1news__block {
    padding: 0;
  }
}

.p-bottom-recruit1news__info {
  display: flex;
  align-items: center;
}

.p-bottom-recruit1news__time {
  width: 8rem;
  font-family: "Inter", sans-serif;
  font-size: 1.4rem;
  letter-spacing: 0.13em;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1news__time {
    font-size: 1.1rem;
  }
}

.p-bottom-recruit1news__category {
  color: #fff;
  font-size: 1.2rem;
  padding: 0.1rem 0.9rem;
  letter-spacing: 0.06em;
  font-weight: 500;
  background-color: #F77700;
  margin-left: 3.4rem;
  display: flex;
  align-items: center;
  text-align: center;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1news__category {
    font-size: 1rem;
  }
}

.p-bottom-recruit1news__category::before {
  content: "";
  display: block;
  width: 1px;
  height: 70%;
  background-color: #1F1F1F;
  position: absolute;
  top: 50%;
  left: -2.4rem;
  transform: translateY(-50%);
}

.p-bottom-recruit1news__title {
  margin-top: 1.6rem;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1news__title {
    font-size: 1.2rem;
  }
}

.p-bottom-recruit1news__wrap {
  text-align: center;
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1news__wrap {
    text-align: right;
  }
}

.p-bottom-recruit1__button {
  display: inline-block;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #F77700;
  text-align: center;
  width: 24.4rem;
  padding: 1.35rem 0.8rem 1.35rem 0;
  position: relative;
  transition: opacity 0.3s ease-out;
}

.p-bottom-recruit1__button:hover {
  opacity: 0.8;
}

.p-bottom-recruit1__button::after {
  position: absolute;
  content: "";
  background-image: url(../images/bottom-recruit1/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 2.7rem;
  height: 1rem;
  top: 50%;
  transform: translateY(-50%);
  right: 2.6rem;
}

/* CTA */
.p-bottom-recruit1cta {
  background-color: #EFF5F5;
  padding-top: 8.6rem;
  padding-bottom: 7.8rem;
}

.p-bottom-recruit1cta__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1cta__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    flex-flow: row nowrap;
    align-items: flex-start;
    gap: 0 5.6rem;
  }
}

.p-bottom-recruit1cta__img::before {
  padding-top: 23.046875%;
}

.p-bottom-recruit2__enTitle {
  color: #B9B796;
  text-transform: uppercase;
  font-family: "Inter", sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2__enTitle {
    font-size: 1.5rem;
  }
}

.p-bottom-recruit2__enTitle--white {
  color: #fff;
}

.p-bottom-recruit2__enTitle--left {
  text-align: left;
}

.p-bottom-recruit2__title {
  margin-top: 0.2rem;
  text-align: center;
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2__title {
    margin-top: 0.6rem;
    font-size: 2.8rem;
  }
}

.p-bottom-recruit2__title--white {
  color: #fff;
}

.p-bottom-recruit2__title--left {
  text-align: left;
}

/* 代表メッセージ */
.p-bottom-recruit2 {
  padding-top: 6.2rem;
  padding-bottom: 4.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2 {
    padding-top: 11.4rem;
    padding-bottom: 27.4rem;
  }
}

.p-bottom-recruit2__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2__inner {
    max-width: 95rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-recruit2__container {
  margin-top: 4.2rem;
  padding: 0 2rem;
  max-width: 56rem;
  margin-inline: auto;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2__container {
    max-width: none;
    padding: 0;
    display: flex;
    align-items: center;
    -moz-column-gap: 6.9rem;
    column-gap: 6.9rem;
  }
}

.p-bottom-recruit2__img {
  margin-top: 2.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2__img {
    margin-top: 0;
    flex-shrink: 0;
    max-width: 43.8194444444vw;
  }
}

.p-bottom-recruit2__img::before {
  padding-top: 66.7194928685%;
}

.p-bottom-recruit2__block {
  padding-top: 2.4rem;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2__block {
    margin-top: -1.9rem;
    padding: 0 2.5rem 0 0;
    max-width: 49.6rem;
  }
}

.p-bottom-recruit2__text {
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  font-weight: 500;
  line-height: 2.5714285714;
}

.p-bottom-recruit2__bg {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2__bg {
    display: block;
    position: absolute;
    right: 0;
    bottom: -15.4rem;
    z-index: -1;
    width: 100%;
    max-width: 88.0555555556vw;
  }
}

.p-bottom-recruit2__bg::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  padding-top: 23.046566693%;
  background-color: #F5F3F2;
}

.p-bottom-recruit2__bg::after {
  content: "message";
  display: block;
  font-size: 12.3rem;
  letter-spacing: 0.08em;
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase;
  position: absolute;
  bottom: -2rem;
  right: 3.5rem;
  z-index: 1;
  opacity: 0.8;
  color: #fff;
  font-weight: 500;
  line-height: 1;
}

/* DNA */
.p-bottom-recruit2dna {
  overflow: hidden;
  padding-top: 9.6rem;
  padding-bottom: 7rem;
  color: #fff;
  background-color: #021E55;
}

.p-bottom-recruit2dna__contents {
  counter-reset: num;
  margin-top: 7.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2dna__contents {
    margin-top: 7rem;
  }
}

.p-bottom-recruit2dna__block {
  position: relative;
}

.p-bottom-recruit2dna__block::after {
  counter-increment: num;
  content: "value 0"counter(num);
  font-family: "Cormorant Garamond", serif;
  text-transform: capitalize;
  color: #fff;
  opacity: 0.3;
  font-weight: 400;
  font-size: 4rem;
  letter-spacing: 0.04em;
  writing-mode: vertical-rl;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  height: 100%;
  text-align: right;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2dna__block::after {
    font-size: 6.7rem;
    text-align: center;
    left: -1.4rem;
  }
}

.p-bottom-recruit2dna__block:nth-child(even)::after {
  left: auto;
  right: 0;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2dna__block:nth-child(even)::after {
    right: -1.4rem;
  }
}

.p-bottom-recruit2dna__block:nth-of-type(n+2) {
  margin-top: 3.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2dna__block:nth-of-type(n+2) {
    margin-top: 9.7rem;
  }
}

.p-bottom-recruit2dna__wrap {
  padding-right: 2rem;
  padding-left: 2rem;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
  position: relative;
  z-index: 1;
  max-width: 60rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2dna__wrap {
    max-width: none;
    padding: 0;
    flex-direction: row-reverse;
    align-items: center;
    gap: 0 7.9rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2dna__block:nth-child(even) .p-bottom-recruit2dna__wrap {
    flex-direction: row;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2dna__contentsImg {
    flex-shrink: 0;
    max-width: 42.3611111111vw;
  }
}

.p-bottom-recruit2dna__contentsImg::before {
  padding-top: 65.9016393443%;
}

.p-bottom-recruit2dna__box {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2dna__box {
    max-width: 50.5rem;
    padding-left: 2.5rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2dna__block:nth-of-type(even) .p-bottom-recruit2dna__box {
    padding-left: 0;
    padding-right: 2.5rem;
  }
}

.p-bottom-recruit2dna__num {
  font-size: 1.2rem;
  text-transform: uppercase;
  font-family: "Inter", sans-serif;
  font-weight: 400;
  letter-spacing: 0.2em;
}

.p-bottom-recruit2dna__theme {
  font-size: 2rem;
  line-height: 1.56;
  letter-spacing: 0.14em;
  font-weight: 400;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2dna__theme {
    font-size: 2.5rem;
  }
}

.p-bottom-recruit2dna__serviceText {
  margin-top: 0.6rem;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  line-height: 2.5714285714;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2dna__serviceText {
    margin-top: 1.6rem;
  }
}

/* インタビュー */
.p-bottom-recruit2interview {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2interview {
    padding-top: 14.3rem;
    padding-bottom: 8.9rem;
  }
}

.p-bottom-recruit2interview__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2interview__inner {
    max-width: 89.5rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-recruit2interview__container {
  margin-top: 4.5rem;
}

.p-bottom-recruit2interview__block {
  position: relative;
}

.p-bottom-recruit2interview__block:nth-of-type(n+2) {
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2interview__block:nth-of-type(n+2) {
    margin-top: 4.6rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2interview__img {
    max-width: 68.2rem;
    margin-left: 9.6rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2interview__block:nth-of-type(even) .p-bottom-recruit2interview__img {
    margin-left: auto;
    margin-right: 9.6rem;
  }
}

.p-bottom-recruit2interview__img::before {
  padding-top: 66.7400881057%;
}

.p-bottom-recruit2interview__num {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2interview__num {
    display: block;
    position: absolute;
    z-index: 1;
    top: 7.7rem;
    left: 0.8rem;
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    font-weight: 700;
    text-transform: uppercase;
    font-family: "Inter", sans-serif;
    color: #021E54;
    text-align: center;
    line-height: 1;
  }
}

.p-bottom-recruit2interview__block:nth-of-type(even) .p-bottom-recruit2interview__num {
  left: auto;
  right: 0.8rem;
}

.p-bottom-recruit2interview__num span {
  display: block;
  font-size: 7.1rem;
  letter-spacing: 0.04em;
  color: #fff;
  -webkit-text-stroke: 2px #021E54;
  text-stroke: 2px #021E54;
  margin-top: -0.1rem;
}

.p-bottom-recruit2interview__enName {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2interview__enName {
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    top: 50%;
    transform: translateY(-50%);
    text-transform: capitalize;
    writing-mode: vertical-rl;
  }
}

.p-bottom-recruit2interview__block:nth-of-type(even) .p-bottom-recruit2interview__enName {
  right: auto;
  left: 0;
}

.p-bottom-recruit2interview__body {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2interview__body {
    position: absolute;
    bottom: 0;
    left: 0;
    max-width: 93.1rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2interview__block:nth-of-type(even) .p-bottom-recruit2interview__body {
    left: auto;
    right: 0;
  }
}

.p-bottom-recruit2interview__name {
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #1F1F1F;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.8rem 3rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #fff;
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2interview__name {
    position: static;
  }
}

.p-bottom-recruit2interview__text {
  color: #fff;
  background-color: #021E55;
  padding: 2rem 1.8rem 2.6rem;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 2;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2interview__text {
    width: 70rem;
    padding: 2.4rem 3.2rem 2.7rem;
    line-height: 2.2857142857;
  }
}

.p-bottom-recruit2interview__block:nth-of-type(even) .p-bottom-recruit2interview__name,
.p-bottom-recruit2interview__block:nth-of-type(even) .p-bottom-recruit2interview__text {
  margin-left: auto;
}

.p-bottom-recruit2interview__wrap {
  text-align: center;
  margin-top: 4.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2interview__wrap {
    margin-top: 8rem;
  }
}

.p-bottom-recruit2interview__button {
  display: inline-block;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #000;
  text-align: center;
  width: 24.4rem;
  padding: 1.6rem;
  position: relative;
  transition: opacity 0.3s ease-out;
  font-size: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2interview__button {
    padding: 2rem;
    width: 33.7rem;
  }
}

.p-bottom-recruit2interview__button:hover {
  opacity: 0.8;
}

.p-bottom-recruit2interview__button::after {
  position: absolute;
  content: "";
  background-image: url(../images/recruit2/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 3.7rem;
  height: 1.4rem;
  top: 50%;
  transform: translateY(-50%);
  right: 3.6rem;
}

/* 募集要項 */
.p-bottom-recruit2guideline {
  background-color: #F5F3F2;
  padding-top: 6rem;
  padding-bottom: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2guideline {
    padding-top: 19.9rem;
    padding-bottom: 9.3rem;
  }
}

.p-bottom-recruit2guideline__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2guideline__inner {
    max-width: 95.2rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-recruit2guideline__block {
  background-color: #fff;
  margin-top: 4rem;
  padding-bottom: 6rem;
  border: 1px solid #485B72;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2guideline__block {
    margin-top: 5.2rem;
    padding-bottom: 5.4rem;
  }
}

.p-bottom-recruit2guideline__position {
  padding: 1.5rem 2rem;
  color: #fff;
  background-color: #485B72;
  letter-spacing: 0.08em;
  font-weight: 700;
  font-size: 1.9rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2guideline__position {
    padding: 1.4rem 2.6rem;
  }
}

.p-bottom-recruit2guideline__list {
  padding: 2.8rem 1.6rem 0;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2guideline__list {
    max-width: 101.4rem;
    padding: 2.8rem 4.4rem 0;
  }
}

.p-bottom-recruit2guideline__list:nth-of-type(n+2) {
  padding-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2guideline__list:nth-of-type(n+2) {
    padding-top: 2.7rem;
  }
}

.p-bottom-recruit2guideline__term {
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #485B72;
}

.p-bottom-recruit2guideline__description {
  margin-top: 0.5rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2;
  border-bottom: 1px solid #CCD0D5;
  padding-bottom: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit2guideline__description {
    font-size: 1.5rem;
    line-height: 2.4;
  }
}

/* 社内制度・福利厚生 */
.p-bottom-recruit3 {
  padding: 6rem 0;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3 {
    padding: 12rem 17.7rem 11.7rem 0;
  }
}

.p-bottom-recruit3__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3__inner {
    max-width: 87.7rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

/* 募集要項 */
.p-bottom-recruit3__block {
  background-color: #fff;
  color: #2C2C2C;
  margin-top: 4rem;
  padding-bottom: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3__block {
    margin-top: 4.9rem;
    padding-bottom: 5.4rem;
  }
}

.p-bottom-recruit3__position {
  padding: 1.5rem 2rem;
  background-color: #A2895B;
  color: #fff;
  letter-spacing: 0.08em;
  font-weight: 700;
  font-size: 1.7rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3__position {
    padding: 1.4rem 2.6rem;
  }
}

.p-bottom-recruit3__list {
  padding: 2.8rem 1.6rem 0;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3__list {
    max-width: 101.4rem;
    padding: 3.3rem 4.2rem 0;
  }
}

.p-bottom-recruit3__smallList {
  padding: 2.8rem 1.6rem 0;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3__smallList {
    display: flex;
    justify-content: flex-start;
    max-width: 101.4rem;
    padding: 1.6rem 4.4rem;
  }
}

.p-bottom-recruit3__list:nth-of-type(n+2) {
  margin-top: -1px;
  border-top: 1px solid #CCD0D5;
  padding-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3__list:nth-of-type(n+2) {
    padding-top: 2.7rem;
  }
}

.p-bottom-recruit3__term,
.p-bottom-recruit3__smallTerm {
  font-size: 1.3rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #A2895B;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3__smallTerm {
    margin-top: 0.2rem;
    width: 9rem;
    flex-shrink: 0;
  }
}

.p-bottom-recruit3__description {
  margin-top: 0.5rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2;
  border-bottom: 1px solid #CCD0D5;
  padding-bottom: 1.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3__description {
    font-size: 1.5rem;
    line-height: 2.4;
  }
}

.p-bottom-recruit3__smallDescription {
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2;
}

.p-bottom-recruit3 .p-bottom-recruit3__enTitle {
  color: #A2895B;
}

.p-bottom-recruit3 .p-bottom-recruit3__title::after {
  content: "";
  display: block;
  width: 16.7rem;
  height: 2.3rem;
  background-image: url(../images/bottom-recruit3/ornament1.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin-inline: auto;
  margin-top: -0.4em;
}

.p-bottom-recruit3Benefit {
  padding-top: 6.4rem;
  padding-bottom: 6.4rem;
  background-color: #fff;
  color: #101010;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Benefit {
    padding: 8.7rem 17.7rem 6rem 0;
  }
}

.p-bottom-recruit3Benefit .p-bottom-recruit3__enTitle {
  color: #A2895B;
}

.p-bottom-recruit3Benefit__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Benefit__inner {
    max-width: 69rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-recruit3Benefit .p-bottom-recruit3__title::after {
  content: "";
  display: block;
  width: 29.2rem;
  height: 2.3rem;
  background-image: url(../images/bottom-recruit3/ornament2.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin-inline: auto;
  margin-top: -0.5em;
}

.p-bottom-recruit1benefit__items {
  display: grid;
  row-gap: 3rem;
  margin-top: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1benefit__items {
    margin-top: 4.2rem;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.5rem 5.2rem;
  }
}

.p-bottom-recruit1benefit__img::before {
  padding-top: 68.6746987952%;
}

.p-bottom-recruit1benefit__subject {
  margin-top: 1.9rem;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1benefit__subject {
    font-size: 2.4rem;
  }
}

.p-bottom-recruit1benefit__text {
  margin-top: 1.2rem;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  line-height: 1.9285714286;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit1benefit__text {
    margin-top: 1.6rem;
    font-size: 1.6rem;
  }
}

/* お知らせ */
.p-bottom-recruit3News {
  position: relative;
  padding: 6rem 0;
  background-image: url(../images/bottom-recruit3/news-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3News {
    padding: 8.9rem 17.7rem 10.7rem 0;
  }
}

@media screen and (min-width: 768px) {

  .p-bottom-recruit3News .p-bottom-recruit3__enTitle,
  .p-bottom-recruit3News .p-bottom-recruit3__title {
    margin-left: 3rem;
  }
}

.p-bottom-recruit3News::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(16, 16, 16, 0.7);
  width: 100%;
  height: 100%;
}

.p-bottom-recruit3News__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3News__inner {
    max-width: 87.7rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-recruit3News__container {
  margin-top: 3.2rem;
  border: 1px solid #fff;
  padding: 5.8rem 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3News__container {
    margin-top: 2.3rem;
    padding: 7.5rem 2rem 7rem;
  }
}

.p-bottom-recruit3News__items {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3News__items {
    max-width: 59.7rem;
    margin-inline: auto;
  }
}

.p-bottom-recruit3News__item {
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3News__item {
    padding: 1.55rem 1.4rem;
    flex-flow: row nowrap;
    align-items: center;
    gap: 0 2.7rem;
    position: relative;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3News__item:first-of-type {
    border-top: 1px solid #fff;
  }
}

.p-bottom-recruit3News__item:nth-of-type(n+2) {
  margin-top: 3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3News__item:nth-of-type(n+2) {
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3News__item::after {
    content: "";
    width: 1.8rem;
    height: 0.5rem;
    display: block;
    position: absolute;
    top: 50%;
    right: 1.4rem;
    transform: translateY(-50%);
    background-image: url(../images/bottom-recruit3/news_arrow.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3News__thumbnail {
    max-width: 8.5rem;
    flex-shrink: 0;
  }
}

.p-bottom-recruit3News__thumbnail::before {
  padding-top: 70.5882352941%;
}

.p-bottom-recruit3News__block {
  padding: 0 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3News__block {
    padding: 0;
  }
}

.p-bottom-recruit3News__info {
  display: flex;
  align-items: center;
}

.p-bottom-recruit3News__time {
  font-size: 1rem;
  letter-spacing: 0.13em;
}

.p-bottom-recruit3News__category {
  font-size: 1rem;
  padding: 0 0.8rem;
  letter-spacing: 0.06em;
  font-weight: 500;
  background-color: #A2895B;
  margin-left: 3.4rem;
  display: flex;
  align-items: center;
  text-align: center;
  position: relative;
}

.p-bottom-recruit3News__category::before {
  content: "";
  display: block;
  width: 1px;
  height: 70%;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: -1.8rem;
  transform: translateY(-50%);
}

.p-bottom-recruit3News__title {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  margin-top: 1.6rem;
  font-size: 1.2rem;
  letter-spacing: 0.06em;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3News__title {
    font-size: 1rem;
  }
}

.p-bottom-recruit3News__button {
  margin-top: 4.6rem;
  display: block;
  margin-inline: auto;
  width: 18.7rem;
  transition: opacity 0.3s ease-out;
}

.p-bottom-recruit3News__button:hover {
  opacity: 0.8;
}

/* ギャラリー */
.p-bottom-recruit3Gallery {
  overflow: hidden;
  padding-top: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Gallery {
    padding-top: 12.7rem;
  }
}

.p-bottom-recruit3__enTitle--center,
.p-bottom-recruit3__title--center {
  text-align: center;
}

.p-bottom-recruit3Gallery__slider:before {
  content: "";
  display: block;
  width: 105rem;
  height: 53rem;
  background-image: url(../images/bottom-recruit3/bg-gallery.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Gallery__container {
    padding-right: 17.7rem;
  }
}

.p-bottom-recruit3Gallery .swiper {
  margin-top: 4.9rem;
  overflow: visible;
  padding: 5rem 0;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Gallery .swiper {
    padding: 10rem 0 13.7rem;
  }
}

.p-bottom-recruit3Gallery .swiper-wrapper {
  width: 100%;
  padding: 0.6rem 0;
}

.p-bottom-recruit3Gallery .swiper-slide {
  width: 100%;
}

.p-bottom-recruit3Gallery .swiper-slide img {
  width: 100%;
  height: 100%;
}

.p-bottom-recruit3Gallery .swiper-slide::before {
  padding-top: 66.8304668305%;
}

.p-bottom-recruit3Gallery .swiper-horizontal>.swiper-pagination-bullets,
.p-bottom-recruit3Gallery .swiper-pagination-bullets.swiper-pagination-horizontal,
.p-bottom-recruit3Gallery .swiper-pagination-custom,
.p-bottom-recruit3Gallery .swiper-pagination-fraction {
  position: relative;
  bottom: 2.4rem;
}

@media screen and (min-width: 768px) {

  .p-bottom-recruit3Gallery .swiper-horizontal>.swiper-pagination-bullets,
  .p-bottom-recruit3Gallery .swiper-pagination-bullets.swiper-pagination-horizontal,
  .p-bottom-recruit3Gallery .swiper-pagination-custom,
  .p-bottom-recruit3Gallery .swiper-pagination-fraction {
    width: calc(100% - 17.7rem);
    bottom: 8.4rem;
  }
}

.p-bottom-recruit3Gallery .swiper-pagination-bullet {
  width: 0.9rem;
  height: 0.9rem;
  background: #fff;
  opacity: 1;
}

.p-bottom-recruit3Gallery .swiper-pagination-bullet-active {
  background: #A2895B;
}

.p-bottom-recruit3Gallery .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.p-bottom-recruit3Gallery .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 0.55rem;
}

.p-bottom-recruit3Gallery .swiper-button-bottomRecruit3-prev,
.p-bottom-recruit3Gallery .swiper-button-bottomRecruit3-next {
  width: 4.6rem;
  height: 4.6rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  transform: translateY(-44%);
}

@media screen and (min-width: 768px) {

  .p-bottom-recruit3Gallery .swiper-button-bottomRecruit3-prev,
  .p-bottom-recruit3Gallery .swiper-button-bottomRecruit3-next {
    width: 6.9rem;
    height: 6.9rem;
  }
}

.p-bottom-recruit3Gallery .swiper-button-bottomRecruit3-prev {
  background-image: url(../images/bottom-recruit3/prev-arrow.svg);
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Gallery .swiper-button-bottomRecruit3-prev {
    left: 3.2vw;
  }
}

.p-bottom-recruit3Gallery .swiper-button-bottomRecruit3-next {
  background-image: url(../images/bottom-recruit3/next-arrow.svg);
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Gallery .swiper-button-bottomRecruit3-next {
    right: 3.2vw;
  }
}

.p-bottom-recruit3Gallery .swiper-button-bottomRecruit3-prev:after,
.swiper-rtl .swiper-button-bottomRecruit3-next:after,
.p-bottom-recruit3Gallery .swiper-button-bottomRecruit3-next:after,
.swiper-rtl .swiper-button-bottomRecruit3-prev:after {
  content: none;
}

.p-bottom-recruit3Banner {
  padding: 6rem 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Banner {
    width: calc(100% - 17.7rem);
    padding: 11.9rem 0 13.6rem;
  }
}

.p-bottom-recruit3Banner__img {
  display: block;
  transition: opacity 0.3s ease-out;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Banner__img {
    max-width: 82.6rem;
  }
}

.p-bottom-recruit3Banner__img:hover {
  opacity: 0.8;
}

.p-bottom-recruit3Banner__img::before {
  padding-top: 29.6610169492%;
}

/* プラン */
.p-bottom-recruit3Plan {
  background-color: #fff;
  color: #101010;
  padding-top: 6.4rem;
  padding-bottom: 6.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Plan {
    max-width: 79.7222222222vw;
    padding: 8.2rem 21.7rem 15.6rem 2.5rem;
  }
}

.p-bottom-recruit3Plan__container {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Plan__container {
    max-width: 71rem;
    padding: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom-recruit3__enTitle {
  text-transform: capitalize;
  letter-spacing: 0.08em;
  font-family: "Cormorant Garamond", serif;
  letter-spacing: 0.08em;
  font-size: 1.3rem;
}

.p-bottom-recruit3__title {
  font-weight: 700;
  margin-top: 0.4rem;
  font-size: 2.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3__title {
    margin-top: -0.5rem;
    font-size: 3rem;
  }
}

.p-bottom-recruit3Plan__body {
  margin-top: 3.6rem;
}

.p-bottom-recruit3Plan__block {
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Plan__block {
    flex-flow: row nowrap;
    align-items: flex-start;
    gap: 0 4.5rem;
  }
}

.p-bottom-recruit3Plan__block:nth-of-type(n+2) {
  margin-top: 3.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Plan__img {
    max-width: 39.3rem;
  }
}

.p-bottom-recruit3Plan__img::before {
  padding-top: 60.3715170279%;
}

.p-bottom-recruit3Plan__theme {
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
  font-size: 1.8rem;
  border-bottom: 1px solid #252525;
  padding-bottom: 0.2rem;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.p-bottom-recruit3Plan__theme::before {
  content: "";
  display: inline-block;
  width: 0.2rem;
  height: 1.8rem;
  background-color: #A2895B;
  margin-right: 0.5rem;
  transform: translate(-0.2rem, 0.3rem);
}

.p-bottom-recruit3Plan__text {
  margin-top: 1.2rem;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 2.1428571429;
}

/* アクセス */
@media screen and (min-width: 768px) {
  .p-bottom-recruit3Access {
    position: absolute;
    width: 50%;
    top: -7rem;
    left: 0;
  }
}

.p-bottom-recruit3Access__inner {
  background-image: url(../images/bottom-recruit3/access-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 100%;
  padding: 6.8rem 2rem;
  max-width: 60rem;
  margin-inline: auto;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Access__inner {
    position: static;
    max-width: none;
    padding: 14rem 17.6rem 18rem 2.5rem;
  }
}

.p-bottom-recruit3Access__inner::before {
  content: "access";
  writing-mode: vertical-rl;
  font-family: "Cormorant Garamond", serif;
  text-transform: capitalize;
  font-weight: 300;
  color: #fff;
  opacity: 0.15;
  transform: rotate(180deg);
  position: absolute;
  letter-spacing: 0.13em;
  right: -0.6rem;
  top: 1.6rem;
  z-index: 2;
  font-size: 4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Access__inner::before {
    font-size: 10.9rem;
  }
}

.p-bottom-recruit3Access__inner::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(16, 16, 16, 0.7);
  width: 100%;
  height: 100%;
  z-index: 1;
}

.p-bottom-recruit3Access__container {
  position: relative;
  z-index: 2;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Access__container {
    max-width: 46.8rem;
    margin-left: auto;
  }
}

.p-bottom-recruit3Access__body {
  width: 100%;
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Access__body {
    max-width: 50.3rem;
  }
}

.p-bottom-recruit3Access__list {
  display: flex;
  align-items: flex-start;
  padding: 2.2rem 0.3rem;
  font-size: 1.1rem;
  line-height: 1.4285714286;
  border-bottom: 1px solid #101010;
  -o-border-image: linear-gradient(90deg, #9D8A61 0%, #9D8A61 63px, #fff 63px, #fff 100%);
  border-image: linear-gradient(90deg, #9D8A61 0%, #9D8A61 63px, #fff 63px, #fff 100%);
  border-image-slice: 1;
}

.p-bottom-recruit3Access__list:first-of-type {
  padding-top: 0;
}

.p-bottom-recruit3Access__term {
  font-weight: 700;
  text-transform: capitalize;
  text-transform: uppercase;
  width: 8rem;
  flex-shrink: 0;
  letter-spacing: 0.13rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Access__term {
    width: 9.9rem;
  }
}

.p-bottom-recruit3Access__description {
  font-weight: 400;
  letter-spacing: 0.13rem;
}

.p-bottom-recruit3Acccess__map {
  display: block;
  position: relative;
  width: 100%;
  height: 30rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3Acccess__map {
    height: 71.6rem;
  }
}

.p-bottom-recruit3Acccess__map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* ご予約・お問い合わせ */
.p-bottom-recruit3contact {
  background-color: #fff;
  padding-top: 6.4rem;
  padding-bottom: 7.4rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3contact {
    padding-top: 8rem;
    padding-bottom: 10.3rem;
  }
}

.p-bottom-recruit3contact__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3contact__inner {
    max-width: calc(100% - 17.7rem);
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    padding: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3contact__container {
    max-width: 87.5rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    margin-inline: auto;
  }
}

.p-bottom-recruit3contact__block {
  background-image: url(../images/bottom-recruit3/reservation.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
  padding: 4rem 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3contact__block {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 24.4rem;
  }
}

.p-bottom-recruit3contact__block:after {
  content: "";
  width: 100%;
  height: 100%;
  display: inline-block;
  position: absolute;
  top: 0%;
  left: 0%;
  background-color: rgba(16, 16, 16, 0.6);
}

.p-bottom-recruit3contact__wrap {
  position: relative;
  z-index: 1;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3contact__wrap {
    margin-top: -1rem;
    max-width: 65.8rem;
    display: flex;
    align-items: center;
    margin-inline: auto;
  }
}

.p-bottom-recruit3contact__enTitle {
  font-size: 1rem;
  font-family: "Cormorant Garamond", serif;
  letter-spacing: 0.08em;
  text-transform: capitalize;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3contact__enTitle {
    transform: scale(0.9);
    transform-origin: left;
  }
}

.p-bottom-recruit3contact__title {
  font-size: 1.6rem;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3contact__title {
    margin-top: -0.7rem;
    font-size: 2.1rem;
  }
}

.p-bottom-recruit3contact__description {
  font-size: 1rem;
  font-family: "Noto Serif JP", serif;
  margin-top: 2.1rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3contact__description {
    transform: scale(0.9);
    transform-origin: left;
  }
}

.p-bottom-recruit3contact__button {
  text-align: center;
  display: block;
  font-size: 1rem;
  font-family: "Noto Serif JP", serif;
  padding: 1.05rem;
  border: 1px solid #fff;
  width: 100%;
  max-width: 20.7rem;
  margin-top: 3.2rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-recruit3contact__button {
    margin-top: 0;
    -webkit-margin-start: auto;
    margin-inline-start: auto;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom-menu1 {
  padding-top: 4.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1 {
    padding-top: 3.7rem;
  }
}

.p-bottom-menu1__enTitle {
  text-align: center;
  font-family: "Inter", sans-serif;
  text-transform: uppercase;
  color: #B9B796;
  font-weight: 500;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1__enTitle {
    font-size: 1.5rem;
  }
}

.p-bottom-menu1__title {
  text-align: center;
  margin-top: 0.2rem;
  font-weight: 400;
  font-size: 2rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1__title {
    margin-top: 0.4rem;
    font-size: 2.8rem;
  }
}

.p-bottom-menu1__container {
  margin-top: 2.7em;
}

.p-bottom-menu1__block {
  padding-bottom: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1__block {
    padding-bottom: 8.3rem;
  }
}

.p-bottom-menu1__block:not(:first-of-type) {
  padding-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1__block:not(:first-of-type) {
    padding-top: 7rem;
  }
}

.p-bottom-menu1__block:nth-of-type(even) {
  background-color: #F6F4EE;
}

.p-bottom-menu1__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1__inner {
    max-width: 95rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-menu1__info {
  display: flex;
  align-items: center;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid #403936;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1__info {
    padding-bottom: 1.5rem;
  }
}

.p-bottom-menu1__name {
  font-size: 1.5rem;
  font-weight: 700;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1__name {
    font-size: 2.1rem;
  }
}

.p-bottom-menu1__price {
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: 1.6rem;
  letter-spacing: 0.07em;
  margin-left: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1__price {
    font-size: 2.4rem;
    margin-right: 0.4rem;
  }
}

.p-bottom-menu1__text {
  margin-top: 2rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2.25;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1__text {
    margin-top: 2.6rem;
    font-size: 1.6rem;
  }
}

.p-bottom-menu1__img {
  margin-top: 2.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1__img {
    margin-top: 3.1rem;
  }
}

.p-bottom-menu1__img::before {
  padding-top: 54.1111111111%;
}

.p-bottom-menu1Relaxation {
  padding-top: 4.8rem;
  padding-bottom: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1Relaxation {
    padding-top: 13.8rem;
    padding-bottom: 11rem;
  }
}

.p-bottom-menu1Relaxation__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1Relaxation__inner {
    max-width: 95rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-menu1Relaxation__enTitle {
  font-family: "Outfit", sans-serif;
  text-transform: capitalize;
  font-weight: 500;
  color: #958347;
  font-size: 2.4rem;
  letter-spacing: 0.08em;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1Relaxation__enTitle {
    font-size: 3rem;
  }
}

.p-bottom-menu1Relaxation__title {
  color: #958347;
  font-size: 1.2rem;
  font-weight: 700;
}

.p-bottom-menu1Relaxation__container {
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1Relaxation__container {
    margin-top: 3.2rem;
  }
}

.p-bottom-menu1Relaxation__block {
  display: grid;
  row-gap: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid #E5E3D9;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1Relaxation__block {
    grid-template-columns: repeat(3, 1fr);
    align-items: flex-start;
    gap: 2rem 6.5rem;
    padding-bottom: 2.7rem;
  }
}

.p-bottom-menu1Relaxation__block:nth-of-type(n+2) {
  margin-top: 1.3rem;
}

.p-bottom-menu1Relaxation__item {
  display: flex;
  align-items: center;
  -moz-column-gap: 1.6rem;
  column-gap: 1.6rem;
}

.p-bottom-menu1Relaxation__name {
  width: 100%;
  font-size: 1.3rem;
  letter-spacing: 0.04em;
  font-weight: 500;
  line-height: 1.3846153846;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1Relaxation__name {
    flex-shrink: 0;
    max-width: 17.9rem;
  }
}

.p-bottom-menu1Relaxation__price {
  font-size: 1.6rem;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  letter-spacing: 0.07em;
  width: 7.5rem;
  text-align: right;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1Relaxation__price {
    text-align: left;
  }
}

.p-bottom-menu1Relaxation__childTitle {
  margin-top: 2.7rem;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: 1.8rem;
  letter-spacing: 0.08em;
  color: #958347;
  text-transform: capitalize;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu1Relaxation__childTitle {
    margin-top: 4rem;
  }
}

.p-bottom-menu1Relaxation__childTitle span {
  display: block;
  font-size: 1rem;
  transform: scale(0.7);
  letter-spacing: 0;
  transform-origin: left;
  font-weight: 700;
  font-family: "Noto Sans JP", sans-serif;
}

.p-bottom-menu2 {
  padding-top: 4.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2 {
    padding-top: 11.1rem;
  }
}

.p-bottom-menu2__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
  padding-bottom: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__inner {
    max-width: 125rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    padding-bottom: 12.3rem;
  }
}

.p-bottom-menu2__title {
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  font-weight: 300;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  margin-inline: auto;
  padding-bottom: 0.8rem;
  color: #000;
  border-bottom: 1.5px solid #000;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__title {
    font-size: 3rem;
    padding-bottom: 1.7rem;
  }
}

.p-bottom-menu2__title--white {
  color: #fff;
  border-color: #fff;
}

.p-bottom-menu2__contents {
  background-color: #F5F5F5;
  padding: 4rem 1.6rem;
  margin-top: 4.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__contents {
    padding: 6.5rem 2rem 9.4rem;
  }
}

.p-bottom-menu2__block {
  background-color: #fff;
  padding: 0 1.6rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__block {
    max-width: 100rem;
    padding: 0;
  }
}

.p-bottom-menu2__block:nth-of-type(n+2) {
  margin-top: 2.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__block:nth-of-type(n+2) {
    margin-top: 3rem;
  }
}

/* 画像付きメニュー */
.p-bottom-menu2__recommend {
  display: flex;
  flex-direction: column;
  row-gap: 1.6rem;
  padding: 2rem 0;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__recommend {
    flex-flow: row nowrap;
    gap: 0 4.3rem;
    padding: 3.5rem 3.6rem 4rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__img {
    max-width: 29rem;
    flex-shrink: 0;
  }
}

.p-bottom-menu2__img::before {
  padding-top: 67.9310344828%;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__box {
    display: flex;
    flex-direction: column;
    max-width: 58.5rem;
  }
}

.p-bottom-menu2__name {
  font-family: "Noto Serif JP", serif;
  font-size: 1.8rem;
  letter-spacing: 0.08em;
  font-weight: 600;
  line-height: 1;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__name {
    font-size: 2rem;
  }
}

.p-bottom-menu2__description {
  margin-top: 1.2rem;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 2.2142857143;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__description {
    margin: 2rem 0 0 0.5rem;
  }
}

.p-bottom-menu2__price {
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 1.2rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__price {
    margin-top: auto;
    font-size: 2rem;
  }
}

/* テキストメニュー */
.p-bottom-menu2__container {
  padding: 1rem 0 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__container {
    padding: 1.8rem 2rem 15rem;
    max-width: 89.5rem;
    margin-inline: auto;
  }
}

.p-bottom-menu2__wrap {
  display: flex;
  flex-direction: column;
  row-gap: 2.8rem;
  padding: 2rem 0 2.4rem;
  border-bottom: 1px solid #E5E3D9;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__wrap {
    flex-flow: row wrap;
    gap: 3.4rem 8.5rem;
    padding: 3.8rem 0.3rem 5.8rem;
  }
}

.p-bottom-menu2__theme {
  font-weight: normal;
  text-transform: uppercase;
  font-family: "Oswald", sans-serif;
  font-size: 1.8rem;
  font-weight: 400;
  margin-top: 2.4rem;
  letter-spacing: 0.08em;
  max-width: 55vw;
  border-bottom: 1px solid #000;
  padding-bottom: 0.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__theme {
    max-width: 43rem;
    font-size: 2rem;
    margin: 6rem 0 0 0.6rem;
  }
}

.p-bottom-menu2__item {
  display: flex;
  align-items: flex-end;
  max-width: 45rem;
  width: 100%;
  -moz-column-gap: 1.4rem;
  column-gap: 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2__item {
    align-items: center;
    max-width: calc(50% - 8.8rem);
    -moz-column-gap: 2.4rem;
    column-gap: 2.4rem;
  }
}

.p-bottom-menu2__subTitle,
.p-bottom-menu2__subPrice {
  font-size: 1.4rem;
  line-height: 1.25;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {

  .p-bottom-menu2__subTitle,
  .p-bottom-menu2__subPrice {
    font-size: 1.6rem;
  }
}

.p-bottom-menu2__subTitle {
  font-weight: 500;
  max-width: 27rem;
}

.p-bottom-menu2__subPrice {
  font-weight: 700;
  margin-left: auto;
  flex-shrink: 0;
}

.p-bottom-menu2Instagram {
  background-color: #F5F5F5;
  padding-top: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2Instagram {
    padding-top: 8.8rem;
  }
}

.p-bottom-menu2Instagram__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2Instagram__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-menu2Instagram__secTitle {
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  font-weight: 300;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  margin-inline: auto;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid #000;
}

.p-bottom-menu2Instagram__container {
  margin-top: 4.5rem;
  display: grid;
  gap: 1.6rem;
  grid-template-columns: repeat(2, 1fr);
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2Instagram__container {
    grid-template-columns: repeat(4, 1fr);
    gap: 2.8rem 2.7rem;
  }
}

.p-bottom-menu2Instagram__img::before {
  padding-top: 100%;
}

.p-bottom-menu2Instagram__wrap {
  margin-top: 5.6rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2Instagram__wrap {
    margin-top: 9.5rem;
  }
}

.p-bottom-menu2Instagram__button {
  width: 100%;
  max-width: 18rem;
  border-radius: 99.9rem;
  position: relative;
  letter-spacing: 0.1em;
  font-family: "Oswald", sans-serif;
  text-transform: capitalize;
  margin-inline: auto;
  font-weight: 300;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2Instagram__button {
    font-size: 2rem;
    max-width: 21.7rem;
  }
}

.p-bottom-menu2Instagram__button a {
  display: block;
  padding: 2rem 3.2rem 2rem 0;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2Instagram__button a {
    padding-right: 4.2rem;
  }
}

.p-bottom-menu2Instagram__button a::before,
.p-bottom-menu2Instagram__button a::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.p-bottom-menu2Instagram__button a::before {
  left: 0;
  transform: translate(0, -50%);
  width: 5rem;
  height: 5rem;
  border: 1px solid #000;
  border-radius: 99.9rem;
  transition: width 0.25s ease-out;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2Instagram__button a::before {
    width: 6.4rem;
    height: 6.4rem;
  }
}

.p-bottom-menu2Instagram__button a::after {
  display: block;
  width: 4rem;
  height: 1rem;
  background-image: url("../images/bottom-menu2/arrow-right.svg");
  background-size: contain;
  background-repeat: no-repeat;
  top: 53%;
  right: 0;
}

.p-bottom-menu2Instagram__button a:hover::before {
  width: 106%;
}

.p-bottom-menu2Instagram__scroll {
  display: flex;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  overflow: hidden;
  margin-top: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2Instagram__scroll {
    -moz-column-gap: min(2.36vw, 3.4rem);
    column-gap: min(2.36vw, 3.4rem);
    margin-top: 2.8rem;
  }
}

.p-bottom-menu2Instagram__scrollImg {
  -webkit-animation: loopSlide 28s infinite linear 1s both;
  animation: loopSlide 28s infinite linear 1s both;
  width: 145rem;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2Instagram__scrollImg {
    width: 200.4rem;
    -webkit-animation: loopSlide 40s infinite linear 1s both;
    animation: loopSlide 40s infinite linear 1s both;
  }
}

.p-bottom-menu2Instagram__scrollImg::before {
  padding-top: 8.4331337325%;
}

@keyframes loopSlide {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-100%);
  }
}

/* ブログ */
.p-bottom-menu2banner {
  padding-top: 6rem;
  padding-bottom: 7.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2banner {
    padding-top: 10.9rem;
    padding-bottom: 18rem;
  }
}

.p-bottom-menu2banner__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2banner__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-menu2banner__block {
  margin-top: 3.2rem;
  display: block;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2banner__block {
    margin-top: 4.3rem;
    display: flex;
  }
}

.p-bottom-menu2banner__block:hover {
  opacity: 0.8;
}

.p-bottom-menu2banner__bg::before {
  padding-top: 54%;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2banner__bg::before {
    padding-top: 53.6451169188%;
  }
}

.p-bottom-menu2banner__wrap {
  background-color: #000;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  transition: background-color 0.3s ease-out;
  padding: 0.8rem 0;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2banner__wrap {
    flex-shrink: 0;
    padding: 0;
    max-width: 35.3rem;
  }
}

.p-bottom-menu2banner__block p {
  transition: color 0.3s ease-out;
}

.p-bottom-menu2banner__block p::before {
  transition: border 0.3s ease-out;
}

.p-bottom-menu2banner__block p::after {
  transition: background-image 0.3s ease-out;
}

/* アクセス */
.p-bottom-menu2access {
  padding-top: 11.4rem;
  background-color: #101010;
  color: #fff;
}

.p-bottom-menu2access__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2access__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-menu2access__wrap {
  margin-top: 3rem;
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2access__wrap {
    flex-flow: row wrap;
    gap: 0 4.4rem;
  }
}

.p-bottom-menu2access__list {
  display: flex;
  align-items: flex-start;
  padding: 1.8rem 0.4rem;
  width: 100%;
  border-bottom: 1px solid #101010;
  -o-border-image: linear-gradient(90deg, #A0A0A0 0%, #A0A0A0 8rem, #fff 8rem, #fff 100%);
  border-image: linear-gradient(90deg, #A0A0A0 0%, #A0A0A0 8rem, #fff 8rem, #fff 100%);
  border-image-slice: 1;
  font-size: 1.4rem;
  letter-spacing: 0.13em;
  line-height: 1.8571428571;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2access__list {
    max-width: calc(50% - 2.2rem);
    padding: 2.05rem 0.4rem;
  }
}

.p-bottom-menu2access__list--center {
  align-items: center;
}

.p-bottom-menu2access__wrap--bottom p-bottom-menu2access__list {
  -o-border-image: linear-gradient(90deg, #A0A0A0 0%, #A0A0A0 8rem, #fff 8rem, #fff 100%);
  border-image: linear-gradient(90deg, #A0A0A0 0%, #A0A0A0 8rem, #fff 8rem, #fff 100%);
  border-image-slice: 1;
}

.p-bottom-menu2access__term {
  width: 8rem;
  flex-shrink: 0;
  font-weight: bold;
  white-space: nowrap;
}

.p-bottom-menu2access__description {
  padding-left: 1rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2access__description {
    margin-right: -2rem;
  }
}

.p-bottom-menu2access__map {
  margin-top: 4.8rem;
  height: 32rem;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2access__map {
    height: 42.9rem;
    margin-top: 11.4rem;
  }
}

.p-bottom-menu2access__map iframe {
  width: 100%;
  height: 100%;
}

/* コンタクト */
.p-bottom-menu2secContact {
  background-color: #000;
  color: #fff;
  text-align: center;
  padding-top: 6.8rem;
  padding-bottom: 6.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2secContact {
    padding-top: 10.4rem;
    padding-bottom: 10.4rem;
  }
}

.p-bottom-menu2secContact__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2secContact__inner {
    max-width: 105rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-menu2secContact__subject {
  margin-top: 2rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

.p-bottom-menu2secContact__text {
  margin-top: 2.8rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2secContact__text {
    max-width: 46rem;
    margin-inline: auto;
  }
}

.p-bottom-menu2secContact__wrap {
  display: flex;
  flex-direction: column;
  row-gap: 2.6rem;
  margin-top: 3.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2secContact__wrap {
    flex-flow: row wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 0 3.3rem;
    margin-top: 5.6rem;
  }
}

.p-bottom-menu2contactButton {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  border: 1px solid #fff;
  max-width: 38.5rem;
  width: 100%;
  padding: 1.8rem 0;
  font-size: 1.5rem;
  margin-inline: auto;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2contactButton {
    padding: 2.3rem 0;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom-menu2contactButton:hover {
  color: #000;
  opacity: 1;
  transition: color 0.2s 0.05s;
}

.p-bottom-menu2contactButton::before {
  content: "";
  position: absolute;
  top: 0;
  left: -130%;
  background: #fff;
  width: 120%;
  height: 100%;
}

.p-bottom-menu2contactButton:hover::before {
  -webkit-animation: skewanime 0.3s ease-out forwards;
  animation: skewanime 0.3s ease-out forwards;
}

@keyframes skewanime {
  100% {
    left: -10%;
  }
}

.p-bottom-menu2contactButton::after {
  content: "";
  display: inline-block;
  height: 4.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2contactButton::after {
    height: 3.6rem;
  }
}

.p-bottom-menu2contactButton span {
  z-index: 1;
  display: flex;
  align-items: center;
}

.p-bottom-menu2contactButton span::before {
  content: "";
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p-bottom-menu2contactButton:hover span::before {
  transition: background-image 0.15s;
}

.p-bottom-menu2contactButton span::after {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(-45deg);
  position: absolute;
  right: min(6.6vw, 4rem);
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2contactButton span::after {
    right: 4rem;
  }
}

.p-bottom-menu2contactButton:hover span::after {
  transition: border 0.2s 0.15s;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
}

.p-bottom-menu2contactButton--mail span::before {
  background-image: url(../images/bottom-menu2/mail.svg);
  width: 1.8rem;
  height: 1.3rem;
  margin-right: 0.3rem;
}

.p-bottom-menu2contactButton--mail:hover span::before {
  background-image: url(../images/bottom-menu2/mail_hover.svg);
}

.p-bottom-menu2contactButton--hotpper span::before {
  background-image: url(../images/bottom-menu2/hotpepper_beauty.svg);
  width: 1rem;
  height: 1.5rem;
  margin-right: 0.3rem;
}

.p-bottom-menu2contactButton--hotpper:hover span::before {
  background-image: url(../images/bottom-menu2/hotpepper_beauty_hover.svg);
}

/* フッター */
.p-bottom-menu2footer {
  position: relative;
  background-image: url(../images/bottom-menu2/footer-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin-top: auto;
  padding-top: 6rem;
  padding-bottom: 6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2footer {
    padding-top: 14.7rem;
    padding-bottom: 5rem;
  }
}

.p-bottom-menu2footer::before {
  content: "";
  width: 100%;
  height: 100%;
  display: inline-block;
  position: absolute;
  top: 0%;
  left: 0%;
  background-color: rgba(0, 0, 0, 0.7);
}

.p-bottom-menu2footer__inner {
  position: relative;
  z-index: 1;
}

.p-bottom-menu2footer__logo {
  width: 5.6rem;
  height: 5.6rem;
  display: block;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2footer__logo {
    width: 8.3rem;
    height: 8.3rem;
  }
}

.p-bottom-menu2footer__nav {
  margin-top: 3.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2footer__nav {
    margin-top: 8rem;
  }
}

.p-bottom-menu2footer__items {
  display: flex;
  flex-direction: column;
  row-gap: 1.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2footer__items {
    flex-flow: row nowrap;
    justify-content: center;
    align-items: flex-start;
    gap: 0 0.3rem;
  }
}

.p-bottom-menu2footer__item {
  color: #fff;
}

.p-bottom-menu2footer__link {
  padding: 0.6rem 0;
  display: block;
  letter-spacing: 0.14em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2footer__link {
    display: flex;
    align-items: center;
    padding: 0 2.2rem;
  }
}

.p-bottom-menu2footer__link p {
  font-size: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2footer__link p {
    text-align: center;
    font-size: 1.4rem;
  }
}

.p-bottom-menu2footer__link span {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2footer__link span {
    font-family: "Oswald", sans-serif;
    font-weight: 300;
    display: block;
    text-transform: uppercase;
    font-size: 1rem;
    margin-top: 0.7rem;
  }
}

.p-bottom-menu2footer__copyright {
  text-align: center;
  margin-top: 4.8rem;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2footer__copyright {
    margin-top: 13.6rem;
  }
}

.p-bottom-menu2footer__copyright small {
  text-align: center;
  font-weight: 500;
  letter-spacing: 0.08em;
  font-size: 1rem;
}

.p-bottom-menu2footer__pagetop {
  position: fixed;
  bottom: 1.8rem;
  right: 1.8rem;
  width: 5.1rem;
  height: 5.1rem;
  background-color: #312C28;
  cursor: pointer;
  z-index: 10;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2footer__pagetop {
    bottom: 3rem;
    right: 4rem;
  }
}

.p-bottom-menu2footer__pagetop::after {
  content: "";
  display: block;
  background-image: url(../images/bottom-menu2/top-btn.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.p-bottom-menu2footer__pagetop:hover {
  opacity: 0.8;
}

/* ボタン */
.p-bottom-menu2banner__button {
  display: inline-block;
  text-align: left;
  width: 100%;
  max-width: 21.7rem;
  border-radius: 99.9rem;
  position: relative;
  color: #fff;
  letter-spacing: 0.13em;
  font-family: "Oswald", sans-serif;
  text-transform: capitalize;
  font-weight: 300;
  font-size: 2rem;
}

.p-bottom-menu2banner__button p {
  display: block;
  padding: 2rem 3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2banner__button p {
    padding: 2rem 4.1rem;
  }
}

.p-bottom-menu2banner__button p::before,
.p-bottom-menu2banner__button p::after {
  content: "";
  position: absolute;
}

.p-bottom-menu2banner__button p::before {
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 4.8rem;
  height: 4.8rem;
  border: 1px solid #fff;
  border-radius: 99.9rem;
  transition: width 0.25s ease-out;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu2banner__button p::before {
    width: 6.4rem;
    height: 6.4rem;
  }
}

.p-bottom-menu2banner__button p::after {
  display: block;
  width: 3.9rem;
  height: 0.8rem;
  background-image: url("../images/bottom-menu2/button-arrow-right.svg");
  background-size: contain;
  background-repeat: no-repeat;
  top: 48%;
  right: 0;
}

.p-bottom-menu3 {
  background-color: #252525;
  padding-top: 6rem;
  padding-bottom: 4.8rem;
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3 {
    margin-top: 10.6rem;
    padding-top: 11.5rem;
    padding-bottom: 17rem;
  }
}

.p-bottom-menu3__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__inner {
    max-width: 105rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-menu3__enTitle {
  font-size: 4rem;
  letter-spacing: 0.15em;
  font-family: "Outfit", sans-serif;
  color: #fff;
  text-transform: uppercase;
  font-weight: 500;
  text-align: center;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__enTitle {
    font-size: 5rem;
  }
}

.p-bottom-menu3__enTitle::after {
  content: "";
  position: absolute;
  bottom: -0.6rem;
  left: 50%;
  transform: translateX(-50%);
  width: 2.4rem;
  height: 0.2rem;
  background-color: #fff;
}

.p-bottom-menu3__mainTitle {
  color: #fff;
  font-size: 2rem;
  letter-spacing: 0.14em;
  text-align: center;
  font-weight: 400;
  margin-top: 1.7rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__mainTitle {
    font-size: 2.4rem;
    margin-top: 2.1rem;
  }
}

.p-bottom-menu3__block {
  margin-top: 4.3rem;
  background-color: #fff;
  padding: 0 1.6rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__block {
    padding: 0;
    margin-top: 4.8rem;
  }
}

.p-bottom-menu3__recommend {
  display: flex;
  flex-direction: column;
  row-gap: 1.6rem;
  padding: 2rem 0;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__recommend {
    flex-flow: row nowrap;
    gap: 0 4.3rem;
    padding: 3.5rem 3.6rem 4rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__img {
    max-width: 29rem;
    flex-shrink: 0;
  }
}

.p-bottom-menu3__img::before {
  padding-top: 67.9310344828%;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__box {
    display: flex;
    flex-direction: column;
    margin-top: 0.4rem;
  }
}

.p-bottom-menu3__name {
  font-size: 2rem;
  letter-spacing: 0.08em;
  line-height: 1.4;
  font-weight: 700;
  line-height: 1;
}

.p-bottom-menu3__description {
  margin-top: 1.2rem;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 2.2142857143;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__description {
    margin: 1.7rem 0 0 0.5rem;
  }
}

.p-bottom-menu3__price {
  font-size: 2rem;
  margin-top: 1.2rem;
  letter-spacing: 0.08em;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__price {
    margin-top: auto;
  }
}

.p-bottom-menu3__container {
  padding: 1rem 0 4.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__container {
    padding: 1.8rem 2rem 5rem;
    max-width: 92.4rem;
    margin-inline: auto;
  }
}

.p-bottom-menu3__wrap {
  display: flex;
  flex-direction: column;
  row-gap: 2.8rem;
  padding: 2rem 0 2.4rem;
  border-bottom: 1px solid #E5E3D9;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__wrap {
    flex-flow: row wrap;
    gap: 3.4rem 8.5rem;
    padding: 3.8rem 0.3rem 5.8rem;
  }
}

.p-bottom-menu3__items {
  margin-top: 5rem;
  display: grid;
  row-gap: 3.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__items {
    grid-template-columns: repeat(3, 1fr);
    gap: 3.4rem 6.5rem;
  }
}

.p-bottom-menu3__item {
  color: #fff;
}

.p-bottom-menu3__itemImg::before {
  padding-top: 67.9310344828%;
}

.p-bottom-menu3__itemTitle {
  margin-top: 1.6rem;
  font-size: 1.8rem;
  letter-spacing: 0.08em;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__itemTitle {
    margin-top: 1.8rem;
    font-size: 2rem;
  }
}

.p-bottom-menu3__itemPrice {
  margin-top: 1.5rem;
  font-size: 1.6rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__itemPrice {
    margin-top: 1.9rem;
  }
}

.p-bottom-menu3__title {
  font-weight: normal;
  text-transform: uppercase;
  font-size: 1.8rem;
  font-weight: 700;
  margin-top: 2.4rem;
  letter-spacing: 0.08em;
  border-bottom: 1px solid #252525;
  padding-bottom: 0.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__title {
    font-size: 2rem;
    margin: 2.3rem 0 0 0.4rem;
  }
}

.p-bottom-menu3__title::before {
  content: "";
  display: inline-block;
  width: 0.2rem;
  height: 2rem;
  background-color: #C95C3D;
  margin-right: 0.5rem;
  transform: translate(-0.2rem, 0.3rem);
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__title::before {
    height: 2.3rem;
    margin-right: 0.8rem;
    transform: translate(-0.2rem, 0.5rem);
  }
}

.p-bottom-menu3__text {
  margin-top: 1.8rem;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__text {
    font-size: 1.6rem;
    margin-top: 4.2rem;
    font-size: 1.8rem;
  }
}

.p-bottom-menu3__drinkImg {
  margin-top: 2.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__drinkImg {
    margin-top: 4.2rem;
  }
}

.p-bottom-menu3__drinkImg::before {
  padding-top: 62%;
}

@media screen and (min-width: 768px) {
  .p-bottom-menu3__drinkImg::before {
    padding-top: 40.7239819005%;
  }
}

.p-bottom-blog1 {
  padding-top: 4.2rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1 {
    padding-top: 10.9rem;
    padding-bottom: 12.7rem;
  }
}

.p-bottom-blog1__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1__inner {
    max-width: 94rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-blog1__categriesLink {
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1__categriesLink {
    -moz-column-gap: 2rem;
    column-gap: 2rem;
  }
}

.p-bottom-blog1__categoryLink {
  text-align: center;
  width: 100%;
  padding: 0.5rem 0;
  font-size: 1rem;
  letter-spacing: 0.04em;
  font-family: "Noto Serif JP", serif;
  color: #000;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1__categoryLink {
    max-width: 19.8rem;
    padding: 1.2rem;
    font-size: 1.2rem;
  }
}

.p-bottom-blog1__items {
  margin-top: 4rem;
  display: grid;
  row-gap: 3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1__items {
    margin-top: 8.1rem;
    grid-template-columns: repeat(3, 1fr);
    gap: 4.6rem 5.4rem;
  }
}

.p-bottom-blog1__item {
  display: inline-block;
  position: relative;
}

.p-bottom-blog1__thumbnail::before {
  padding-top: 58.8679245283%;
}

.p-bottom-blog1__category {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.1rem 1rem;
  background-color: #fff;
  font-size: 1rem;
  letter-spacing: 0.13rem;
  font-weight: 500;
  background-color: #70130B;
}

.p-bottom-blog1__body {
  margin-top: 1.4rem;
}

.p-bottom-blog1__title {
  font-size: 1.5rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.5333333333;
}

.p-bottom-blog1__time {
  font-family: "Noto Serif JP", serif;
  font-size: 1.3rem;
  letter-spacing: 0.08em;
  display: block;
  margin-top: 0.8rem;
}

.p-bottom-blog1__paginavi .wp-pagenavi {
  text-align: center;
  font-size: 1.6rem;
  display: flex;
  justify-content: center;
  margin-top: 5.4rem;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1__paginavi .wp-pagenavi {
    margin-top: 7.4rem;
  }
}

.p-bottom-blog1__paginavi .wp-pagenavi a,
.p-bottom-blog1__paginavi .wp-pagenavi span {
  background-color: transparent;
  padding: 0 0.6rem;
  margin: 0 0.8rem;
  white-space: nowrap;
  transition: color 0.3s, background-color 0.3s, border 0.3s;
  text-align: center;
  text-decoration: none;
  border: 1px solid #A2895B;
  background-color: #A2895B;
  min-width: 2.7rem;
  height: 2.7rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 400;
}

.p-bottom-blog1__paginavi .wp-pagenavi .previouspostslink,
.p-bottom-blog1__paginavi .wp-pagenavi .nextpostslink {
  padding: 0 0.3rem;
  letter-spacing: 0.2rem;
  position: relative;
  color: transparent;
  background-color: transparent;
  border-color: #fff;
}

.p-bottom-blog1__paginavi .wp-pagenavi .previouspostslink {
  margin-left: 0;
  margin-right: 1.2rem;
}

.p-bottom-blog1__paginavi .wp-pagenavi .nextpostslink {
  margin-right: 0;
  margin-left: 1.2rem;
}

.p-bottom-blog1__paginavi .wp-pagenavi .previouspostslink::after {
  content: "";
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  top: 50%;
  left: 1.5rem;
  transform: rotate(-45deg) translateY(-5px);
}

.p-bottom-blog1__paginavi .wp-pagenavi .nextpostslink::after {
  content: "";
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  top: 50%;
  right: 0.7rem;
  transform: rotate(-45deg) translateY(-5px);
}

.p-bottom-blog1__paginavi .wp-pagenavi .pages {
  display: none;
}

.p-bottom-blog1__paginavi .nextpostslink {
  order: 2;
}

.p-bottom-blog1__paginavi .wp-pagenavi span.current,
.p-bottom-blog1__paginavi .wp-pagenavi a:hover {
  color: #fff;
  background-color: transparent;
  border-color: #fff;
}

.p-bottom-blog1__paginavi .wp-pagenavi .previouspostslink:hover,
.p-bottom-blog1__paginavi .wp-pagenavi .nextpostslink:hover {
  color: transparent;
  background-color: #A2895B;
  border-color: #A2895B;
}

.p-bottom-blog1__paginavi .wp-pagenavi .previouspostslink:hover::after,
.p-bottom-blog1__paginavi .wp-pagenavi .nextpostslink:hover::after {
  border-color: #fff;
}

.p-bottom-blog1__paginavi .wp-pagenavi .extend {
  background-color: transparent;
  border-color: transparent;
  margin: -0.7rem 0 0 0;
  font-size: 1.9rem;
  font-weight: 400;
}

.p-bottom-blog1contact {
  background-color: #fff;
  padding-top: 6.4rem;
  padding-bottom: 7.4rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1contact {
    padding-top: 14.6rem;
    padding-bottom: 10.3rem;
  }
}

.p-bottom-blog1contact__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1contact__inner {
    max-width: calc(100% - 17.7rem);
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    padding: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1contact__container {
    max-width: 87.5rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    margin-inline: auto;
  }
}

.p-bottom-blog1contact__block {
  background-image: url(../images/bottom-blog1/reservation.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
  padding: 4rem 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1contact__block {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 24.4rem;
  }
}

.p-bottom-blog1contact__block:after {
  content: "";
  width: 100%;
  height: 100%;
  display: inline-block;
  position: absolute;
  top: 0%;
  left: 0%;
  background-color: rgba(16, 16, 16, 0.6);
}

.p-bottom-blog1contact__wrap {
  position: relative;
  z-index: 1;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1contact__wrap {
    margin-top: -1rem;
    max-width: 65.8rem;
    display: flex;
    align-items: center;
    margin-inline: auto;
  }
}

.p-bottom-blog1contact__enTitle {
  font-size: 1rem;
  font-family: "Cormorant Garamond", serif;
  letter-spacing: 0.08em;
  text-transform: capitalize;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1contact__enTitle {
    transform: scale(0.9);
    transform-origin: left;
  }
}

.p-bottom-blog1contact__title {
  font-size: 1.6rem;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1contact__title {
    margin-top: -0.7rem;
    font-size: 2.1rem;
  }
}

.p-bottom-blog1contact__description {
  font-size: 1rem;
  font-family: "Noto Serif JP", serif;
  margin-top: 2.1rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1contact__description {
    transform: scale(0.9);
    transform-origin: left;
  }
}

.p-bottom-blog1contact__button {
  text-align: center;
  display: block;
  font-size: 1rem;
  font-family: "Noto Serif JP", serif;
  padding: 1.05rem;
  border: 1px solid #fff;
  width: 100%;
  max-width: 20.7rem;
  margin-top: 3.2rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog1contact__button {
    margin-top: 0;
    -webkit-margin-start: auto;
    margin-inline-start: auto;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom-blog2 {
  background-color: #F4F4F4;
  margin-top: 10rem;
  padding-top: 4.2rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog2 {
    margin-top: 18.5rem;
    padding-top: 10.9rem;
    padding-bottom: 14rem;
  }
}

.p-bottom-blog2__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
  margin-top: -14.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog2__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    margin-top: -32.1rem;
  }
}

.p-bottom-blog2__categriesLink {
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog2__categriesLink {
    -moz-column-gap: 2rem;
    column-gap: 2rem;
  }
}

.p-bottom-blog2__categoryLink {
  text-align: center;
  width: 100%;
  padding: 0.5rem 0;
  font-size: 1rem;
  letter-spacing: 0.04em;
  color: #fff;
  font-weight: 700;
  background-color: #2C4891;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog2__categoryLink {
    max-width: 19.8rem;
    padding: 1.2rem;
    font-size: 1.2rem;
  }
}

.p-bottom-blog2__items {
  margin-top: 2.4rem;
  display: grid;
  row-gap: 2.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog2__items {
    margin-top: 6.8rem;
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: 2.7rem;
    column-gap: 2.7rem;
  }
}

.p-bottom-blog2__item {
  display: inline-block;
  background-color: #fff;
  box-shadow: 0px 3px 6px #EAEDED;
}

.p-bottom-blog2__img::before {
  padding-top: 60.2339181287%;
}

.p-bottom-blog2__category {
  position: absolute;
  top: 0.7rem;
  left: 0.8rem;
  background-color: #FD9601;
  border-radius: 99.9rem;
  text-align: center;
  font-size: 1rem;
  font-weight: 700;
  padding: 0.25rem 1.3rem;
  letter-spacing: 0.06em;
  color: #fff;
}

.p-bottom-blog2__body {
  padding: 1.8rem 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog2__body {
    padding-bottom: 5.4rem;
  }
}

.p-bottom-blog2__title {
  padding: 0 2.7rem 1.9rem;
  border-bottom: 1px solid #454545;
  font-weight: bold;
  letter-spacing: 0.04em;
  font-size: 1.8rem;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog2__title {
    font-size: 2rem;
  }
}

.p-bottom-blog2__text {
  padding: 1.6rem 2.7rem 0;
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.8571428571;
}

.p-bottom-blog2__paginavi .wp-pagenavi {
  text-align: center;
  font-size: 1.6rem;
  display: flex;
  justify-content: center;
  margin-top: 5.4rem;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog2__paginavi .wp-pagenavi {
    margin-top: 7.4rem;
  }
}

.p-bottom-blog2__paginavi .wp-pagenavi a,
.p-bottom-blog2__paginavi .wp-pagenavi span {
  background-color: transparent;
  padding: 0 0.6rem;
  margin: 0 0.8rem;
  white-space: nowrap;
  transition: color 0.3s, background-color 0.3s, border 0.3s;
  text-align: center;
  text-decoration: none;
  border: 1px solid #000;
  background-color: #000;
  color: #fff;
  min-width: 2.7rem;
  height: 2.7rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 400;
}

.p-bottom-blog2__paginavi .wp-pagenavi .previouspostslink,
.p-bottom-blog2__paginavi .wp-pagenavi .nextpostslink {
  padding: 0 0.3rem;
  letter-spacing: 0.2rem;
  position: relative;
  color: transparent;
  background-color: transparent;
  border-color: #000;
}

.p-bottom-blog2__paginavi .wp-pagenavi .previouspostslink {
  margin-left: 0;
  margin-right: 1.2rem;
}

.p-bottom-blog2__paginavi .wp-pagenavi .nextpostslink {
  margin-right: 0;
  margin-left: 1.2rem;
}

.p-bottom-blog2__paginavi .wp-pagenavi .previouspostslink::after {
  content: "";
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  border-top: 1px solid #000;
  border-left: 1px solid #000;
  top: 50%;
  left: 1.5rem;
  transform: rotate(-45deg) translateY(-5px);
}

.p-bottom-blog2__paginavi .wp-pagenavi .nextpostslink::after {
  content: "";
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  top: 50%;
  right: 0.7rem;
  transform: rotate(-45deg) translateY(-5px);
}

.p-bottom-blog2__paginavi .wp-pagenavi .pages {
  display: none;
}

.p-bottom-blog2__paginavi .nextpostslink {
  order: 2;
}

.p-bottom-blog2__paginavi .wp-pagenavi span.current,
.p-bottom-blog2__paginavi .wp-pagenavi a:hover {
  color: #000;
  background-color: transparent;
  border-color: #000;
}

.p-bottom-blog2__paginavi .wp-pagenavi .previouspostslink:hover,
.p-bottom-blog2__paginavi .wp-pagenavi .nextpostslink:hover {
  color: transparent;
  background-color: #000;
  border-color: #000;
}

.p-bottom-blog2__paginavi .wp-pagenavi .previouspostslink:hover::after,
.p-bottom-blog2__paginavi .wp-pagenavi .nextpostslink:hover::after {
  border-color: #fff;
}

.p-bottom-blog2__paginavi .wp-pagenavi .extend {
  background-color: transparent;
  border-color: transparent;
  margin: -0.7rem 0 0 0;
  font-size: 1.9rem;
  font-weight: 400;
  color: #000;
}

.p-bottom-blog2cta {
  padding-top: 8.6rem;
  padding-bottom: 7.8rem;
}

.p-bottom-blog2cta__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog2cta__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    flex-flow: row nowrap;
    align-items: flex-start;
    gap: 0 5.6rem;
  }
}

.p-bottom-blog2cta__img::before {
  padding-top: 23.046875%;
}

.p-bottom-blog3 {
  padding-top: 4.2rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog3 {
    padding-top: 10.5rem;
    padding-bottom: 14rem;
  }
}

.p-bottom-blog3__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog3__inner {
    max-width: 112.5rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-bottom-blog3__categriesLink {
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog3__categriesLink {
    -moz-column-gap: 2rem;
    column-gap: 2rem;
  }
}

.p-bottom-blog3__categoryLink {
  text-align: center;
  width: 100%;
  padding: 0.5rem 0;
  font-size: 1rem;
  letter-spacing: 0.04em;
  color: #fff;
  font-weight: 700;
  background-color: #2C4891;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog3__categoryLink {
    max-width: 19.8rem;
    padding: 1.2rem;
    font-size: 1.2rem;
  }
}

.p-bottom-blog3__items {
  margin-top: 6.2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog3__items {
    margin-top: 6.5rem;
  }
}

.p-bottom-blog3__item {
  display: flex;
  flex-direction: column;
  row-gap: 1.4rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid #4C5B70;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog3__item {
    row-gap: 1.6rem;
    padding: 3rem 0;
    position: relative;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-blog3__item:first-of-type {
    border-top: 1px solid #4C5B70;
  }
}

.p-bottom-blog3__item:nth-of-type(n+2) {
  margin-top: 3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog3__item:nth-of-type(n+2) {
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-blog3__item::after {
    content: "";
    width: 1.8rem;
    height: 0.5rem;
    display: block;
    position: absolute;
    top: 50%;
    right: 1rem;
    transform: translateY(-50%);
    background-image: url(../images/bottom-blog3/news-arrow.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
  }
}

.p-bottom-blog3__info {
  display: flex;
  align-items: center;
}

.p-bottom-blog3__time {
  font-family: "Inter", sans-serif;
  font-size: 1.2rem;
  letter-spacing: 0.13em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog3__time {
    font-size: 1.1rem;
  }
}

.p-bottom-blog3__category {
  color: #fff;
  font-size: 1.2rem;
  padding: 0.1rem 0.9rem;
  letter-spacing: 0.06em;
  font-weight: 500;
  background-color: #F77700;
  margin-left: 3.8rem;
  display: flex;
  align-items: center;
  text-align: center;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog3__category {
    font-size: 1rem;
  }
}

.p-bottom-blog3__category::before {
  content: "";
  display: block;
  width: 1px;
  height: 70%;
  background-color: #1F1F1F;
  position: absolute;
  top: 50%;
  left: -2.3rem;
  transform: translateY(-50%);
}

.p-bottom-blog3__title {
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog3__title {
    font-size: 1.2rem;
  }
}

/* ページネーション */
.p-bottom-blog3__paginavi .wp-pagenavi {
  text-align: center;
  font-size: 1.6rem;
  display: flex;
  justify-content: center;
  margin-top: 5.4rem;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog3__paginavi .wp-pagenavi {
    margin-top: 9.3rem;
  }
}

.p-bottom-blog3__paginavi .wp-pagenavi a,
.p-bottom-blog3__paginavi .wp-pagenavi span {
  background-color: transparent;
  padding: 0 0.6rem;
  margin: 0 0.8rem;
  transition: color 0.3s, background-color 0.3s, border 0.3s;
  text-align: center;
  text-decoration: none;
  border: 1px solid #000;
  background-color: #000;
  color: #fff;
  min-width: 2.7rem;
  height: 2.7rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 400;
}

.p-bottom-blog3__paginavi .wp-pagenavi .previouspostslink,
.p-bottom-blog3__paginavi .wp-pagenavi .nextpostslink {
  padding: 0 0.3rem;
  letter-spacing: 0.2rem;
  position: relative;
  color: transparent;
  background-color: transparent;
  border-color: #000;
}

.p-bottom-blog3__paginavi .wp-pagenavi .previouspostslink {
  margin-left: 0;
  margin-right: 1.2rem;
}

.p-bottom-blog3__paginavi .wp-pagenavi .nextpostslink {
  margin-right: 0;
  margin-left: 1.2rem;
}

.p-bottom-blog3__paginavi .wp-pagenavi .previouspostslink::after {
  content: "";
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  border-top: 1px solid #000;
  border-left: 1px solid #000;
  top: 50%;
  left: 1.5rem;
  transform: rotate(-45deg) translateY(-5px);
}

.p-bottom-blog3__paginavi .wp-pagenavi .nextpostslink::after {
  content: "";
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  top: 50%;
  right: 0.7rem;
  transform: rotate(-45deg) translateY(-5px);
}

.p-bottom-blog3__paginavi .wp-pagenavi .pages {
  display: none;
}

.p-bottom-blog3__paginavi .nextpostslink {
  order: 2;
}

.p-bottom-blog3__paginavi .wp-pagenavi span.current,
.p-bottom-blog3__paginavi .wp-pagenavi a:hover {
  color: #000;
  background-color: transparent;
  border-color: #000;
}

.p-bottom-blog3__paginavi .wp-pagenavi .previouspostslink:hover,
.p-bottom-blog3__paginavi .wp-pagenavi .nextpostslink:hover {
  color: transparent;
  background-color: #000;
  border-color: #000;
}

.p-bottom-blog3__paginavi .wp-pagenavi .previouspostslink:hover::after,
.p-bottom-blog3__paginavi .wp-pagenavi .nextpostslink:hover::after {
  border-color: #fff;
}

.p-bottom-blog3__paginavi .wp-pagenavi .extend {
  background-color: transparent;
  border-color: transparent;
  margin: -0.7rem 0 0 0;
  font-size: 1.9rem;
  font-weight: 400;
  color: #000;
}

.p-bottom-blog3cta {
  background-color: #EFF5F5;
  padding-top: 8.6rem;
  padding-bottom: 7.8rem;
}

.p-bottom-blog3cta__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-blog3cta__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    flex-flow: row nowrap;
    align-items: flex-start;
    gap: 0 5.6rem;
  }
}

.p-bottom-blog3cta__img::before {
  padding-top: 23.046875%;
}

.p-about1 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-about1 {
    padding-top: 16.3rem;
    padding-bottom: 16.3rem;
  }
}

.p-about1__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  margin-inline: auto;
  max-width: 60rem;
  display: flex;
  flex-direction: column;
  row-gap: 3rem;
}

@media screen and (min-width: 768px) {
  .p-about1__inner {
    max-width: 99.6rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
    flex-flow: row nowrap;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    gap: 0 12.9rem;
  }
}

@media screen and (min-width: 768px) {
  .p-about1__block {
    max-width: 38.4rem;
  }
}

.p-about1__title {
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  letter-spacing: 0.27em;
  line-height: 1.4782608696;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-about1__title {
    margin-left: 0.6rem;
    font-size: 2.3rem;
  }
}

.p-about1__enTitle {
  text-transform: uppercase;
  font-family: "Oswald", sans-serif;
  font-size: 5rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .p-about1__enTitle {
    font-size: 8.1rem;
    line-height: 1.7;
  }
}

.p-about1__text {
  margin-top: 0.8em;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 2.4285714286;
}

@media screen and (min-width: 768px) {
  .p-about1__text {
    margin-top: 0;
  }
}

.p-about1__wrap {
  text-align: center;
  margin-top: 2.8rem;
}

@media screen and (min-width: 768px) {
  .p-about1__wrap {
    text-align: left;
    margin-top: 3.2rem;
  }
}

.p-about1__button {
  display: inline-block;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #F77700;
  text-align: center;
  width: 24.4rem;
  padding: 1.35rem 0.8rem 1.35rem 0;
  position: relative;
  transition: opacity 0.3s ease-out;
}

.p-about1__button:hover {
  opacity: 0.8;
}

.p-about1__button::after {
  position: absolute;
  content: "";
  background-image: url(../images/about1/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 2.7rem;
  height: 1rem;
  top: 50%;
  transform: translateY(-50%);
  right: 2.6rem;
}

@media screen and (min-width: 768px) {
  .p-about1__img {
    max-width: 43.3rem;
  }
}

.p-about1__img::before {
  padding-top: 128.8683602771%;
}

.p-about1__sideScroll {
  margin-top: 2rem;
  display: flex;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-about1__sideScroll {
    -moz-column-gap: min(2.36vw, 3.4rem);
    column-gap: min(2.36vw, 3.4rem);
  }
}

.p-about1__sideScrollImg {
  flex-shrink: 0;
  width: 160rem;
  -webkit-animation: loopSlide 28s infinite linear;
  animation: loopSlide 28s infinite linear;
}

@media screen and (min-width: 768px) {
  .p-about1__sideScrollImg {
    width: 226.7rem;
    -webkit-animation: loopSlide 40s infinite linear;
    animation: loopSlide 40s infinite linear;
  }
}

.p-about1__sideScrollImg::before {
  padding-top: 5.2933392148%;
}

@keyframes loopSlide {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-100%);
  }
}

.p-about2 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-about2 {
    padding-top: 15.1rem;
    padding-bottom: 15.1rem;
  }
}

.p-about2__inner {
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-about2__inner {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    max-width: none;
    padding: 0;
    display: flex;
    align-items: flex-start;
    -moz-column-gap: 8.4rem;
    column-gap: 8.4rem;
  }
}

@media screen and (min-width: 768px) {
  .p-about2__img {
    flex-shrink: 0;
    max-width: 43.125vw;
  }
}

.p-about2__img::before {
  padding-top: 79.8711755233%;
}

.p-about2__block {
  width: 100%;
  padding-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-about2__block {
    padding: 0 2.5rem 0 0;
    max-width: 54rem;
  }
}

.p-about2__enTitle {
  display: block;
  font-family: "Cormorant Garamond", serif;
  text-transform: uppercase;
  font-size: 3.2rem;
  letter-spacing: 0.15em;
  font-weight: 500;
  color: #485C83;
}

@media screen and (min-width: 768px) {
  .p-about2__enTitle {
    margin-top: -0.9rem;
    font-size: 4.6rem;
  }
}

.p-about2__enTitle::after {
  content: "";
  display: block;
  width: 2.4rem;
  height: 2px;
  background-color: #485C83;
  margin-top: 0.6rem;
}

@media screen and (min-width: 768px) {
  .p-about2__enTitle::after {
    margin-top: 1.2rem;
  }
}

.p-about2__title {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-size: 2rem;
  margin-top: 1.4rem;
  letter-spacing: 0.04em;
  line-height: 1.71875;
}

@media screen and (min-width: 768px) {
  .p-about2__title {
    margin-top: 2.3rem;
    font-size: 3.2rem;
  }
}

.p-about2__text {
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2.7142857143;
  margin-top: 1.8rem;
}

@media screen and (min-width: 768px) {
  .p-about2__text {
    margin-top: 2.2rem;
  }
}

.p-about2__wrap {
  margin-top: 3.8rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-about2__wrap {
    margin-top: 5.4rem;
    text-align: left;
  }
}

.p-about2__button {
  display: inline-block;
  text-align: left;
  width: 100%;
  max-width: 16.4rem;
  border-radius: 99.9rem;
  position: relative;
  color: #5C80B7;
  letter-spacing: 0.13em;
  font-family: "Cormorant Garamond", serif;
  text-transform: capitalize;
  font-weight: 500;
  font-size: 1.4rem;
}

.p-about2__button a {
  display: block;
  padding: 2rem 4.2rem 2rem 3rem;
}

.p-about2__button a::before,
.p-about2__button a::after {
  content: "";
  position: absolute;
}

.p-about2__button a::before {
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 4.8rem;
  height: 4.8rem;
  border: 1px solid #5C80B7;
  border-radius: 99.9rem;
  transition: width 0.25s ease-out;
}

.p-about2__button a::after {
  display: block;
  width: 3.1rem;
  height: 0.6rem;
  background-image: url("../images/about2/arrow-right.svg");
  background-size: contain;
  background-repeat: no-repeat;
  top: 48%;
  right: 0;
}

.p-about2__button a:hover::before {
  width: 106%;
}

.p-about2__bg {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-about2__bg {
    display: block;
    position: absolute;
    left: 0;
    bottom: -17.5rem;
    z-index: -1;
    width: 100%;
    max-width: 90.2083333333vw;
    background-color: #F3F5F9;
  }
}

.p-about2__bg::before {
  content: "";
  display: block;
  padding-top: 31.3317936875%;
}

.p-about2__bg::after {
  content: "about us";
  font-family: "Cormorant Garamond", serif;
  display: block;
  font-size: 9.5rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  position: absolute;
  bottom: -1.7rem;
  right: 2.6rem;
  z-index: 1;
  color: #fff;
  font-weight: 300;
  line-height: 1;
}

.p-about3 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-about3 {
    padding-top: 24.1rem;
    padding-bottom: 24.1rem;
  }
}

.p-about3__inner {
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
  position: relative;
  display: flex;
  flex-direction: column-reverse;
  row-gap: 2rem;
}

@media screen and (min-width: 768px) {
  .p-about3__inner {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    max-width: none;
    padding: 0;
    flex-direction: row;
    align-items: center;
    -moz-column-gap: 9.5rem;
    column-gap: 9.5rem;
  }
}

@media screen and (min-width: 768px) {
  .p-about3__img {
    flex-shrink: 0;
    max-width: 45.7638888889vw;
  }
}

.p-about3__img::before {
  padding-top: 72.5341426404%;
}

@media screen and (min-width: 768px) {
  .p-about3__img::after {
    content: "concept";
    color: #F0F0F0;
    font-family: "Cormorant Garamond", serif;
    font-weight: 300;
    text-transform: capitalize;
    font-size: 11.4rem;
    letter-spacing: 0.08em;
    position: absolute;
    top: -13.8rem;
    left: 3.2rem;
    z-index: -1;
  }
}

.p-about3__block {
  padding-top: 2rem;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-about3__block {
    padding: 1.1rem 2rem 0 0;
    max-width: 54.7rem;
  }
}

.p-about3__enTitle {
  letter-spacing: 0.1em;
  line-height: 1;
  text-transform: uppercase;
  padding-bottom: 0.4rem;
  border-bottom: 1.5px solid #A51D32;
  font-family: "Oswald", sans-serif;
  color: #A51D32;
  font-weight: 300;
}

@media screen and (min-width: 768px) {
  .p-about3__enTitle {
    font-size: 1.8rem;
    padding-bottom: 0.8rem;
  }
}

.p-about3__title {
  font-size: 2rem;
  font-family: "Noto Serif JP", serif;
  letter-spacing: 0.04em;
  line-height: 1.6111111111;
  margin-top: 2.2rem;
  font-weight: 400;
}

@media screen and (min-width: 768px) {
  .p-about3__title {
    max-width: 56.2rem;
    font-size: min(3.2vw, 3.6rem);
    margin-top: 3.8rem;
  }
}

.p-about3__text {
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2.7142857143;
  margin-top: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-about3__text {
    margin-top: 2.8rem;
  }
}

.p-about4 {
  overflow: hidden;
  padding-top: 8rem;
  padding-bottom: 8rem;
  position: relative;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .p-about4 {
    padding-top: 12.7rem;
    padding-bottom: 12.7rem;
  }
}

.p-about4__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-about4__inner {
    max-width: none;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    padding: 0;
    display: flex;
    align-items: center;
    -moz-column-gap: 10rem;
    column-gap: 10rem;
  }
}

@media screen and (min-width: 768px) {
  .p-about4__inner::after {
    content: "about";
    font-family: "Outfit", sans-serif;
    text-transform: uppercase;
    writing-mode: vertical-rl;
    font-weight: 500;
    color: #73D0E9;
    opacity: 0.1;
    letter-spacing: 0.08em;
    position: absolute;
    top: 45.4%;
    right: -0.2rem;
    transform: translateY(-50%);
    font-size: 12rem;
    z-index: -1;
  }
}

.p-about4__img {
  margin-top: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-about4__img {
    margin-top: 0;
    flex-shrink: 0;
    max-width: 51.25vw;
  }
}

.p-about4__img::before {
  padding-top: min(68.4281842818%, 50.5rem);
}

.p-about4__img img {
  border-radius: 2rem;
}

@media screen and (min-width: 768px) {
  .p-about4__img img {
    border-radius: 0 3rem 3rem 0;
  }
}

.p-about4__block {
  padding-top: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-about4__block {
    padding: 0 2rem 0 0;
    max-width: 53rem;
    margin-top: -2.8rem;
  }
}

.p-about4__enTitle {
  font-size: 1.2rem;
  letter-spacing: 0.08em;
  color: #38A1DB;
  font-family: "Outfit", sans-serif;
  text-transform: uppercase;
  font-weight: 500;
  display: block;
  margin-left: 1rem;
}

@media screen and (min-width: 768px) {
  .p-about4__enTitle {
    margin-left: 0;
  }
}

.p-about4__title {
  margin: 0.7rem 0 0 1rem;
  font-size: 2.4rem;
  letter-spacing: 0.04em;
  line-height: 1.5833333333;
  font-weight: 700;
  color: #885E4F;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

@media screen and (min-width: 768px) {
  .p-about4__title {
    margin: 1.3rem 0 0 0;
    font-size: min(3.1vw, 3.3rem);
    letter-spacing: 0.11em;
    line-height: 1.4545454545;
  }
}

.p-about4__text {
  letter-spacing: 0.06em;
  line-height: 2.375;
}

@media screen and (min-width: 768px) {
  .p-about4__text {
    margin-top: 2.4rem;
  }
}

.p-about4__sideScroll {
  display: flex;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  overflow: hidden;
  margin-top: 2.8rem;
}

@media screen and (min-width: 768px) {
  .p-about4__sideScroll {
    -moz-column-gap: min(2.36vw, 3.4rem);
    column-gap: min(2.36vw, 3.4rem);
    margin-top: 3.8rem;
  }
}

.p-about4__sideScrollImg {
  -webkit-animation: loopSlide 28s infinite linear 1s both;
  animation: loopSlide 28s infinite linear 1s both;
  width: 91.3rem;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-about4__sideScrollImg {
    width: 157rem;
    -webkit-animation: loopSlide 40s infinite linear 1s both;
    animation: loopSlide 40s infinite linear 1s both;
  }
}

.p-about4__sideScrollImg::before {
  padding-top: 9.1401273885%;
}

@keyframes loopSlide {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-100%);
  }
}

.p-company2 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-company2 {
    padding-top: 13.5rem;
    padding-bottom: 13.5rem;
  }
}

.p-company2__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-company2__inner {
    max-width: 105rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-company2__enTitle {
  font-size: 1.2rem;
  letter-spacing: 0.08em;
  color: #38A1DB;
  font-family: "Outfit", sans-serif;
  text-transform: uppercase;
  font-weight: 500;
  display: block;
  text-align: center;
}

.p-company2__title {
  font-size: 2.4rem;
  letter-spacing: 0.04em;
  line-height: 1.5833333333;
  font-weight: 400;
  color: #885E4F;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding-bottom: 0.6rem;
  background-image: linear-gradient(to right, #885E4F, #885E4F 4px, transparent 4px, transparent 8px);
  background-size: 8px 2px;
  background-position: left bottom;
  background-repeat: repeat-x;
  margin-top: 0.7rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-company2__title {
    margin-top: 1.4rem;
    font-size: 3.3rem;
    letter-spacing: 0.11em;
    line-height: 1.4545454545;
    padding-bottom: 1.3rem;
  }
}

.p-company2__wrap {
  margin-top: 2.8rem;
  display: grid;
}

@media screen and (min-width: 768px) {
  .p-company2__wrap {
    margin-top: 3.9rem;
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 6.9rem;
    column-gap: 6.9rem;
  }
}

.p-company2__list {
  display: flex;
  align-items: flex-start;
  padding: 1.8rem 0.4rem;
  width: 100%;
  border-bottom: 1px solid #101010;
  -o-border-image: linear-gradient(90deg, #C6DB62 0%, #C6DB62 80px, #885E4F 80px, #885E4F 100%);
  border-image: linear-gradient(90deg, #C6DB62 0%, #C6DB62 80px, #885E4F 80px, #885E4F 100%);
  border-image-slice: 1;
  font-size: 1.4rem;
  letter-spacing: 0.13em;
  line-height: 1.7142857143;
}

@media screen and (min-width: 768px) {
  .p-company2__list {
    padding: 2.3rem 0.4rem;
  }
}

.p-company2__list--center {
  align-items: center;
}

.p-company2__term {
  width: 8rem;
  flex-shrink: 0;
  font-weight: 700;
  white-space: nowrap;
}

.p-company2__description {
  padding-left: 1rem;
  font-weight: 400;
}

@media screen and (min-width: 768px) {
  .p-company2__description {
    margin-right: -2rem;
  }
}

.p-company2__map {
  display: block;
  margin-top: 4.8rem;
  position: relative;
  width: 100%;
  height: 30rem;
}

@media screen and (min-width: 768px) {
  .p-company2__map {
    margin-top: 7.6rem;
    height: 25.6rem;
  }
}

.p-company2__map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.p-blog1 {
  background-color: #F5F5F5;
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-blog1 {
    padding-top: 11.9rem;
    padding-bottom: 11.9rem;
  }
}

.p-blog1__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-blog1__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-blog1__enTitle {
  color: #D1DC02;
  text-transform: capitalize;
  letter-spacing: 0.08em;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  margin-left: 0.3rem;
}

@media screen and (min-width: 768px) {
  .p-blog1__enTitle {
    font-size: 2rem;
    margin-left: 0.6rem;
  }
}

.p-blog1__theme {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 700;
  font-size: 2.8rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-blog1__theme {
    margin-top: 0.7rem;
    font-size: 3.6rem;
  }
}

.p-blog1__items {
  margin-top: 2.4rem;
  display: grid;
  row-gap: 2.2rem;
}

@media screen and (min-width: 768px) {
  .p-blog1__items {
    margin-top: 4rem;
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: 2.7rem;
    column-gap: 2.7rem;
  }
}

.p-blog1__item {
  display: inline-block;
  background-color: #fff;
  box-shadow: 0px 3px 6px #EAEDED;
}

.p-blog1__img::before {
  padding-top: 60.2339181287%;
}

.p-blog1__category {
  position: absolute;
  top: 0.7rem;
  left: 0.8rem;
  background-color: #D1DC02;
  border-radius: 99.9rem;
  text-align: center;
  font-size: 1rem;
  font-weight: 700;
  padding: 0.25rem 1.3rem;
  letter-spacing: 0.06em;
  color: #fff;
}

.p-blog1__body {
  padding: 1.8rem 0 4rem;
}

@media screen and (min-width: 768px) {
  .p-blog1__body {
    padding-bottom: 5.4rem;
  }
}

.p-blog1__title {
  padding: 0 2.7rem 1.9rem;
  border-bottom: 1px solid #454545;
  font-weight: bold;
  letter-spacing: 0.04em;
  font-size: 1.8rem;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .p-blog1__title {
    font-size: 2rem;
  }
}

.p-blog1__text {
  padding: 1.6rem 2.7rem 0;
  font-size: 1.4rem;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 1.8571428571;
}

.p-blog1__wrap {
  text-align: center;
  margin-top: 3.8rem;
}

@media screen and (min-width: 768px) {
  .p-blog1__wrap {
    margin-top: 5.2rem;
  }
}

.p-blog1__button {
  display: inline-block;
  text-align: left;
  width: 100%;
  max-width: 16.4rem;
  border-radius: 99.9rem;
  position: relative;
  color: #6DB8D0;
  letter-spacing: 0.1em;
  font-family: "Outfit", sans-serif;
  text-transform: capitalize;
  margin-inline: auto;
  font-weight: 400;
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-blog1__button {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-blog1__button a {
  display: block;
  padding: 2rem 4.2rem 2rem 3rem;
}

.p-blog1__button a::before,
.p-blog1__button a::after {
  content: "";
  position: absolute;
}

.p-blog1__button a::before {
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 4.8rem;
  height: 4.8rem;
  border: 1px solid #81B6CD;
  border-radius: 99.9rem;
  transition: width 0.25s ease-out;
}

.p-blog1__button a::after {
  display: block;
  width: 3.1rem;
  height: 0.6rem;
  background-image: url("../images/blog1/arrow-right.svg");
  background-size: contain;
  background-repeat: no-repeat;
  top: 48%;
  right: 0;
}

.p-blog1__button a:hover::before {
  width: 106%;
}

.p-blog2__inner {
  position: relative;
  padding: 5.8rem 0;
}

@media screen and (min-width: 768px) {
  .p-blog2__inner {
    padding: 13rem 0;
  }
}

.p-blog2__inner:before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(78.7deg, #2B4C88 0%, #61A7BF 100%);
}

@media screen and (min-width: 768px) {
  .p-blog2__inner:before {
    max-width: 78.8194444444vw;
    background: linear-gradient(45.8deg, #2B4C88 0%, #61A7BF 100%);
  }
}

.p-blog2__inner::after {
  width: 100%;
  content: "new arrivals";
  text-transform: uppercase;
  font-family: "Cormorant Garamond", serif;
  letter-spacing: 0.04em;
  font-weight: 500;
  display: block;
  position: absolute;
  bottom: -0.6rem;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-weight: 500;
  opacity: 0.07;
  line-height: 1;
  font-size: 4rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-blog2__inner::after {
    font-size: 14.1rem;
    bottom: -1.6rem;
    left: 3.5rem;
    transform: none;
    text-align: left;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

@media screen and (min-width: 768px) {
  .p-blog2__container {
    position: relative;
    background: linear-gradient(90deg, transparent 0%, transparent 50%, #fff 50%, #fff 100%);
  }
}

.p-blog2__content {
  padding: 0 2rem;
}

@media screen and (min-width: 768px) {
  .p-blog2__content {
    display: flex;
    position: relative;
    -moz-column-gap: 2rem;
    column-gap: 2rem;
    max-width: 120rem;
    padding: 0 2.5rem;
    margin-inline: auto;
  }
}

.p-blog2__block {
  position: relative;
  max-width: 59.2rem;
  margin-inline: auto;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-blog2__block {
    margin-top: 12.7rem;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    width: 28.2rem;
    flex-shrink: 0;
  }
}

.p-blog2__enTitle {
  text-transform: uppercase;
  font-family: "Montserrat", sans-serif;
  font-weight: 700;
  font-size: 3.2rem;
  letter-spacing: 0.04em;
  line-height: 1;
}

@media screen and (min-width: 768px) {
  .p-blog2__enTitle {
    text-align: left;
    font-size: 4.3rem;
  }
}

.p-blog2__theme {
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  margin-top: 0.7rem;
}

.p-blog2__theme::after {
  content: "";
  display: block;
  margin-top: 1rem;
  width: 2.6rem;
  height: 1px;
  background-color: #fff;
  margin-top: 2.4rem;
}

@media screen and (min-width: 768px) {
  .p-blog2__theme::after {
    margin-top: 3rem;
  }
}

.p-blog2__text {
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 2.4285714286;
  margin-top: 1.8rem;
}

@media screen and (min-width: 768px) {
  .p-blog2__text {
    margin-top: 2.7rem;
  }
}

@media screen and (min-width: 768px) {
  .p-blog2__button.u-desktop {
    display: flex;
  }
}

.p-blog2__button {
  color: #155188;
  background: #fff;
  font-family: "Inter", sans-serif;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  max-width: 21.6rem;
  border-radius: 99.9rem;
  width: 100%;
  padding: 1.45rem 0;
  font-size: 1rem;
  margin-inline: auto;
  letter-spacing: 0.12em;
  text-transform: capitalize;
  font-weight: 500;
  margin-top: 5.6rem;
}

@media screen and (min-width: 768px) {
  .p-blog2__button {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    margin-top: 6.8rem;
  }
}

.p-blog2__button:hover {
  opacity: 0.8;
}

.p-blog2__button::after {
  content: "";
  width: 0.4rem;
  height: 0.4rem;
  border-bottom: 1px solid #175489;
  border-right: 1px solid #175489;
  transform: rotate(-45deg);
  position: absolute;
  right: 2.3rem;
}

.p-blog2__body {
  width: 100%;
  background-color: #fff;
  margin-top: 3.2rem;
}

@media screen and (min-width: 768px) {
  .p-blog2__body {
    margin: 0 0 0 auto;
    max-width: 76.8rem;
    padding: 6.5rem 0 7.7rem min(4.8611111111vw, 7rem);
  }
}

.p-blog2__items {
  position: relative;
  background-color: #fff;
  padding: 0.8rem 1.6rem;
  max-width: 59.2rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-blog2__items {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    padding: 0;
    max-width: 69.8rem;
    margin-left: auto;
  }
}

.p-blog2__item {
  display: flex;
  border-bottom: 1px solid #EAECEC;
  padding: 1.8rem 0;
  align-items: flex-start;
  -moz-column-gap: 2.1333333333vw;
  column-gap: 2.1333333333vw;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-blog2__item {
    padding: 3.2rem 0;
    max-width: 69.5rem;
    -moz-column-gap: min(3.4722222222vw, 5rem);
    column-gap: min(3.4722222222vw, 5rem);
  }
}

.p-blog2__item:last-of-type {
  border: none;
}

@media screen and (min-width: 768px) {
  .p-blog2__item:last-of-type {
    border-bottom: 1px solid #EAECEC;
  }
}

.p-blog2__thumbnail {
  max-width: 11rem;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-blog2__thumbnail {
    max-width: 19.9rem;
  }
}

.p-blog2__thumbnail::before {
  padding-top: 70%;
}

@media screen and (min-width: 768px) {
  .p-blog2__thumbnail::before {
    padding-top: 63.8190954774%;
  }
}

.p-blog2__wrap {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-blog2__wrap {
    width: 100%;
    margin-top: -0.7rem;
  }
}

.p-blog2__wrap::after {
  content: "";
  width: 1.4rem;
  height: 1.4rem;
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  background-image: url(../images/blog2/circle-arrow.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

@media screen and (min-width: 768px) {
  .p-blog2__wrap::after {
    top: auto;
    transform: none;
    bottom: 0.2rem;
    right: -0.3rem;
  }
}

.p-blog2__info {
  display: flex;
  align-items: center;
  -moz-column-gap: 0.8rem;
  column-gap: 0.8rem;
}

@media screen and (min-width: 768px) {
  .p-blog2__info {
    -moz-column-gap: 1.4rem;
    column-gap: 1.4rem;
  }
}

.p-blog2__category {
  color: #06417F;
  font-size: 1rem;
  letter-spacing: 0.06em;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-blog2__category {
    font-size: 1.2rem;
  }
}

.p-blog2__time {
  color: #7F8386;
  font-size: 1.2rem;
  letter-spacing: 0.06em;
  font-weight: 500;
}

.p-blog2__title {
  margin-top: 0.4rem;
  font-size: 1.2rem;
  letter-spacing: 0.06em;
  line-height: 1.5;
  font-weight: 500;
  max-width: 44.4rem;
  width: 100%;
  padding-right: 3rem;
}

@media screen and (min-width: 768px) {
  .p-blog2__title {
    margin-top: 0.7rem;
    font-size: 1.4rem;
  }
}

.p-blog3 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-blog3 {
    padding-top: 12.2rem;
    padding-bottom: 12.2rem;
  }
}

.p-blog3__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-blog3__inner {
    max-width: 125rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

@media screen and (min-width: 768px) {
  .p-blog3__heading {
    display: flex;
    flex-direction: row;
  }
}

.p-blog3__enTitle {
  line-height: 1;
  text-transform: uppercase;
  font-family: "Outfit", sans-serif;
  font-size: 3.6rem;
  letter-spacing: 0.01em;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-blog3__enTitle {
    font-size: 6rem;
  }
}

.p-blog3__theme {
  text-transform: uppercase;
  margin-top: 0.8rem;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.07em;
}

@media screen and (min-width: 768px) {
  .p-blog3__theme {
    font-size: 2rem;
    margin-top: 1.7rem;
  }
}

.p-blog3__text {
  width: 100%;
  margin-top: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  line-height: 2.125;
}

@media screen and (min-width: 768px) {
  .p-blog3__text {
    max-width: 59.7rem;
    margin: 0 0 0 auto;
  }
}

.p-blog3__items {
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-blog3__items {
    margin-top: 8.3rem;
  }
}

.p-blog3__item {
  display: block;
}

@media screen and (min-width: 768px) {
  .p-blog3__item {
    display: flex;
    align-items: center;
    padding: 3.65rem 0;
    border-bottom: 1px solid #000;
  }
}

.p-blog3__item:nth-of-type(n+2) {
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-blog3__item:nth-of-type(n+2) {
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-blog3__thumbnail {
    max-width: 24.2rem;
  }
}

.p-blog3__thumbnail::before {
  padding-top: 74.3801652893%;
}

.p-blog2__new {
  position: absolute;
  top: -2rem;
  right: -1.4rem;
  width: 4.8rem;
  height: 4.8rem;
  background-color: #121212;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  font-weight: 700;
  text-transform: uppercase;
  font-family: "Outfit", sans-serif;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-blog2__new {
    top: -1.6rem;
    right: -1.6rem;
  }
}

.p-blog3__wrap {
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-top: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-blog3__wrap {
    margin: 0 0 0 6.3rem;
    max-width: 32.9rem;
  }
}

.p-blog3__title {
  order: 1;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.5833333333;
  margin-top: 1rem;
}

@media screen and (min-width: 768px) {
  .p-blog3__title {
    font-size: 2.4rem;
    order: 0;
    margin-top: 0;
  }
}

.p-blog3__info {
  display: flex;
  align-items: center;
  -moz-column-gap: 1.5rem;
  column-gap: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-blog3__info {
    margin-top: 2rem;
  }
}

.p-blog3__category {
  font-size: 1.3rem;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #fff;
  border-radius: 99.9rem;
  background-color: #FD9601;
  padding: 0.45rem 1.8rem;
}

.p-blog3__time {
  font-family: "Outfit", sans-serif;
  letter-spacing: 0.1em;
  font-weight: 700;
  color: #9D9D9D;
}

@media screen and (min-width: 768px) {
  .p-blog3__time {
    font-size: 1.8rem;
  }
}

.p-blog3__excerpt {
  width: 100%;
  margin-top: 0.8rem;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  font-weight: 500;
  line-height: 2.1875;
}

@media screen and (min-width: 768px) {
  .p-blog3__excerpt {
    margin: 0 0 0 5.5rem;
    max-width: 50.9rem;
    font-size: 1.6rem;
  }
}

.p-blog3__buttonWrap {
  text-align: center;
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-blog3__buttonWrap {
    margin-top: 11.5rem;
  }
}

.p-blog3__button {
  display: inline-block;
  font-family: "Outfit", sans-serif;
  text-transform: capitalize;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #000;
  border-radius: 99.9rem;
  text-align: center;
  width: 30rem;
  padding: 2.75rem 0;
  position: relative;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-blog3__button {
    width: 40rem;
  }
}

.p-blog3__button:hover {
  opacity: 0.8;
}

.p-blog3__button::after {
  position: absolute;
  content: "";
  background-image: url(../images/blog3/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 4.4rem;
  height: 1.6rem;
  top: 50%;
  transform: translateY(-50%);
  right: 4rem;
}

.p-blog4 {
  background-image: url(../images/blog4/bg-blog.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-blog4 {
    padding-top: 9.4rem;
    padding-bottom: 9.4rem;
  }
}

.p-blog4__enTitle {
  color: #38A1DB;
  display: block;
  text-align: center;
  font-family: "Outfit", sans-serif;
  font-size: 1.2rem;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.08em;
}

.p-blog4__theme {
  font-size: 2.4rem;
  letter-spacing: 0.04em;
  font-weight: 500;
  color: #885E4F;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 0.7rem;
  margin-inline: auto;
  padding-bottom: 0.6rem;
  background-image: linear-gradient(to right, #885E4F, #885E4F 4px, transparent 4px, transparent 8px);
  background-size: 8px 2px;
  background-position: left bottom;
  background-repeat: repeat-x;
}

@media screen and (min-width: 768px) {
  .p-blog4__theme {
    margin-top: 1.4rem;
    padding-bottom: 1.2rem;
    font-size: 3.3rem;
    letter-spacing: 0.11em;
    line-height: 1.4545454545;
  }
}

.p-blog4__slider {
  margin-top: 2.8rem;
}

@media screen and (min-width: 768px) {
  .p-blog4__slider {
    margin-top: 4.4rem;
  }
}

.p-blog4__button {
  margin-top: 6rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-blog4__button {
    margin-top: 8rem;
  }
}

.p-blog4 .swiper {
  width: 100%;
}

.p-blog4 .swiper-wrapper {
  width: 100%;
  padding: 0.6rem 0;
}

.p-blog4 .swiper-slide {
  width: 100%;
}

.p-blog4 .swiper-slide img {
  width: 100%;
  height: 100%;
}

.p-blog4 .swiper-button-blog4-prev,
.p-blog4 .swiper-button-blog4-next {
  width: 4.6rem;
  height: 4.6rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  transform: translateY(-20%);
}

@media screen and (min-width: 768px) {

  .p-blog4 .swiper-button-blog4-prev,
  .p-blog4 .swiper-button-blog4-next {
    width: 6.9rem;
    height: 6.9rem;
  }
}

.p-blog4 .swiper-button-blog4-prev {
  background-image: url(../images/blog4/prev-arrow.svg);
}

@media screen and (min-width: 768px) {
  .p-blog4 .swiper-button-blog4-prev {
    left: 11.1vw;
  }
}

.p-blog4 .swiper-button-blog4-next {
  background-image: url(../images/blog4/next-arrow.svg);
}

@media screen and (min-width: 768px) {
  .p-blog4 .swiper-button-blog4-next {
    right: 11.1vw;
  }
}

.p-blog4 .swiper-button-blog4-prev:after,
.swiper-rtl .swiper-button-blog4-next:after,
.p-blog4 .swiper-button-blog4-next:after,
.swiper-rtl .swiper-button-blog4-prev:after {
  content: none;
}

.p-blog4__thumbnail::before {
  padding-top: 60.2523659306%;
}

.p-blog4__title {
  color: #885E4F;
  font-size: 1.8rem;
  letter-spacing: 0.04em;
  line-height: 1.5;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-blog4__title {
    margin-top: 2.1rem;
    font-size: 2rem;
  }
}

.p-news1 {
  padding-top: 8rem;
  padding-bottom: 8rem;
  position: relative;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-news1 {
    padding-top: 11.9rem;
    padding-bottom: 11.9rem;
  }
}

.p-news1::after {
  content: "news";
  writing-mode: vertical-rl;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  font-size: 6rem;
  letter-spacing: 0.13em;
  font-weight: 400;
  color: #EFF5F5;
  position: absolute;
  top: 5.8rem;
  right: -0.8rem;
  z-index: -1;
}

@media screen and (min-width: 768px) {
  .p-news1::after {
    top: 7.8rem;
    font-size: 12rem;
  }
}

.p-news1__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-news1__inner {
    max-width: 112.5rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-news1__enTitle {
  text-transform: uppercase;
  font-family: "Oswald", sans-serif;
  font-size: 4rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-news1__enTitle {
    font-size: 8.1rem;
  }
}

.p-news1__theme {
  margin-top: 1.6rem;
  color: #F77700;
  font-weight: 300;
  font-size: 2.4rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-news1__theme {
    font-size: 3.1rem;
  }
}

.p-news1__items {
  margin-top: 2.4rem;
}

.p-news1__item {
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid #4C5B70;
}

@media screen and (min-width: 768px) {
  .p-news1__item {
    padding: 2.05rem 1.4rem;
    flex-flow: row nowrap;
    align-items: center;
    gap: 0 2.7rem;
    position: relative;
  }
}

@media screen and (min-width: 768px) {
  .p-news1__item:first-of-type {
    border-top: 1px solid #4C5B70;
  }
}

.p-news1__item:nth-of-type(n+2) {
  margin-top: 3rem;
}

@media screen and (min-width: 768px) {
  .p-news1__item:nth-of-type(n+2) {
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-news1__item::after {
    content: "";
    width: 1.5rem;
    height: 0.5rem;
    display: block;
    position: absolute;
    top: 50%;
    right: 0.9rem;
    transform: translateY(-50%);
    background-image: url(../images/news1/arrow-right.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
  }
}

@media screen and (min-width: 768px) {
  .p-news1__thumbnail {
    max-width: 10.2rem;
    flex-shrink: 0;
  }
}

.p-news1__thumbnail::before {
  padding-top: 70.5882352941%;
}

.p-news1__block {
  padding: 0 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-news1__block {
    padding: 0;
  }
}

.p-news1__info {
  display: flex;
  align-items: center;
}

.p-news1__time {
  width: 8rem;
  font-family: "Inter", sans-serif;
  font-size: 1.4rem;
  letter-spacing: 0.13em;
}

@media screen and (min-width: 768px) {
  .p-news1__time {
    font-size: 1.1rem;
  }
}

.p-news1__category {
  color: #fff;
  font-size: 1.2rem;
  padding: 0.1rem 0.9rem;
  letter-spacing: 0.06em;
  font-weight: 500;
  background-color: #F77700;
  margin-left: 3.4rem;
  display: flex;
  align-items: center;
  text-align: center;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-news1__category {
    font-size: 1rem;
  }
}

.p-news1__category::before {
  content: "";
  display: block;
  width: 1px;
  height: 70%;
  background-color: #1F1F1F;
  position: absolute;
  top: 50%;
  left: -2.4rem;
  transform: translateY(-50%);
}

.p-news1__title {
  margin-top: 1.6rem;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .p-news1__title {
    font-size: 1.2rem;
  }
}

.p-news1__wrap {
  text-align: center;
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-news1__wrap {
    text-align: right;
  }
}

.p-news1__button {
  display: inline-block;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #F77700;
  text-align: center;
  width: 24.4rem;
  padding: 1.35rem 0.8rem 1.35rem 0;
  position: relative;
  transition: opacity 0.3s ease-out;
}

.p-news1__button:hover {
  opacity: 0.8;
}

.p-news1__button::after {
  position: absolute;
  content: "";
  background-image: url(../images/news1/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 2.7rem;
  height: 1rem;
  top: 50%;
  transform: translateY(-50%);
  right: 2.6rem;
}

.p-news2 {
  background-color: #F3F5F9;
  padding-top: 7.8rem;
  padding-bottom: 7.8rem;
}

.p-news2__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-news2__inner {
    max-width: 105rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-news2__enTitle {
  display: block;
  text-align: center;
  text-transform: uppercase;
  font-family: "Cormorant Garamond", serif;
  font-size: 1.8rem;
  letter-spacing: 0.15em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-news2__enTitle {
    font-size: 2rem;
  }
}

.p-news2__theme {
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-size: 2.4rem;
  letter-spacing: 0.14em;
}

@media screen and (min-width: 768px) {
  .p-news2__theme {
    font-size: 3.6rem;
  }
}

.p-news2__items {
  margin-top: 1.8rem;
  background-color: #fff;
  padding: 2rem;
}

@media screen and (min-width: 768px) {
  .p-news2__items {
    padding: 2.6rem 2.05rem;
  }
}

.p-news2__item {
  display: block;
  row-gap: 2rem;
  padding: 1.6rem 0;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-news2__item {
    display: flex;
    padding: 2.05rem 1.4rem;
    align-items: center;
    gap: 0 2.1rem;
  }
}

.p-news2__item:hover {
  opacity: 0.8;
}

.p-news2__item:not(:last-of-type) {
  border-bottom: 1px solid #EEEEEE;
}

.p-news2__info {
  display: flex;
  align-items: center;
}

.p-news2__time {
  width: 8rem;
  font-weight: 500;
  font-size: 1.2rem;
  letter-spacing: 0.08em;
}

.p-news2__category {
  color: #fff;
  font-size: 1rem;
  padding: 0.2rem 0.5rem;
  letter-spacing: 0.06em;
  font-weight: 500;
  background-color: #5C80B7;
  display: flex;
  align-items: center;
  text-align: center;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-news2__category {
    font-size: 1rem;
  }
}

.p-news2__title {
  margin-top: 1.2rem;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 2.0909090909;
}

@media screen and (min-width: 768px) {
  .p-news2__title {
    margin-top: 0;
    font-size: 1.1rem;
  }
}

.p-news2__wrap {
  margin-top: 4rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-news2__wrap {
    margin-top: 5.4rem;
  }
}

.p-news2__button {
  max-width: 31.8rem;
  width: 100%;
  display: inline-block;
  background-color: #fff;
  border: 1px solid #6580B3;
  color: #6580B3;
  border-radius: 99.9rem;
  padding: 1.6rem 0;
  text-align: center;
  position: relative;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-news2__button {
    padding: 1.85rem 0;
  }
}

.p-news2__button:hover {
  opacity: 0.8;
}

.p-news2__button::after {
  content: "";
  position: absolute;
  width: 0.8rem;
  height: 0.8rem;
  border-bottom: 2px solid #6580B3;
  border-right: 2px solid #6580B3;
  top: 50%;
  right: 5.8rem;
  transform: rotate(-45deg) translateY(-0.6rem);
  transition: border 0.3s ease-out;
}

.p-service1 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-service1 {
    padding-top: 19rem;
    padding-bottom: 19rem;
  }
}

.p-service1__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-service1__inner {
    max-width: 105rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-service1__enTitle {
  display: block;
  text-align: center;
  text-transform: uppercase;
  font-family: "Cormorant Garamond", serif;
  font-size: 1.8rem;
  letter-spacing: 0.15em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-service1__enTitle {
    font-size: 2rem;
  }
}

.p-service1__title {
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-size: 2.4rem;
  letter-spacing: 0.14em;
}

@media screen and (min-width: 768px) {
  .p-service1__title {
    font-size: 3.6rem;
  }
}

.p-service1__items {
  margin-top: 3.2rem;
  display: grid;
  row-gap: 3.2rem;
}

@media screen and (min-width: 768px) {
  .p-service1__items {
    margin-top: 5.9rem;
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: 1.3rem;
    column-gap: 1.3rem;
  }
}

.p-service1__img::before {
  padding-top: 71.6486902928%;
}

.p-service1__block {
  width: 87.2110939908%;
  margin-inline: auto;
  padding-top: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-service1__block1 {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-service1__block3 {
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-service1__theme {
  font-family: "Noto Serif JP", serif;
  font-size: 2rem;
  letter-spacing: 0.14em;
  line-height: 1.5;
  font-weight: 400;
  padding-bottom: 1rem;
  border-bottom: 1px solid #000;
}

@media screen and (min-width: 768px) {
  .p-service1__theme {
    font-size: 2.4rem;
  }
}

.p-service1__text {
  margin-top: 1.1rem;
  font-size: 1.4rem;
  letter-spacing: 0.13em;
  line-height: 1.8571428571;
}

.p-service2 {
  counter-reset: num;
  padding-top: 8rem;
  padding-bottom: 8rem;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-service2 {
    padding-top: 12.7rem;
    padding-bottom: 12.7rem;
  }
}

.p-service2__enTitle {
  display: block;
  text-align: center;
  text-transform: uppercase;
  font-family: "Cormorant Garamond", serif;
  font-size: 3.2rem;
  letter-spacing: 0.15em;
  font-weight: 500;
  color: #72B583;
}

@media screen and (min-width: 768px) {
  .p-service2__enTitle {
    font-size: 5rem;
  }
}

.p-service2__enTitle::after {
  content: "";
  display: block;
  width: 2.4rem;
  height: 2px;
  background-color: #72B583;
  margin-inline: auto;
}

.p-service2__title {
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-size: 2rem;
  letter-spacing: 0.14em;
  color: #72B583;
  margin-top: 1.3rem;
}

@media screen and (min-width: 768px) {
  .p-service2__title {
    font-size: 2.4rem;
  }
}

.p-service2__container {
  margin-top: 5.1rem;
}

.p-service2__block {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-service2__block {
    padding: 3rem 0;
  }
}

.p-service2__block:nth-of-type(n+2) {
  margin-top: 3.6rem;
}

@media screen and (min-width: 768px) {
  .p-service2__block:nth-of-type(n+2) {
    margin-top: 0;
  }
}

.p-service2__block::after {
  counter-increment: num;
  content: "service 0"counter(num);
  font-family: "Cormorant Garamond", serif;
  text-transform: capitalize;
  color: #ADD1B3;
  opacity: 0.3;
  font-weight: 400;
  font-size: 4rem;
  letter-spacing: 0.04em;
  writing-mode: vertical-rl;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  height: 100%;
  text-align: right;
}

@media screen and (min-width: 768px) {
  .p-service2__block::after {
    font-size: min(5.5555555556vw, 8rem);
    text-align: center;
    left: -1.6rem;
  }
}

.p-service2__block:nth-child(even)::after {
  left: auto;
  right: 0;
}

@media screen and (min-width: 768px) {
  .p-service2__block:nth-child(even)::after {
    right: -1.6rem;
  }
}

.p-service2__wrap {
  padding-right: 2rem;
  padding-left: 2rem;
  margin-right: auto;
  margin-left: auto;
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
  position: relative;
  z-index: 1;
  max-width: 60rem;
}

@media screen and (min-width: 768px) {
  .p-service2__wrap {
    max-width: 120rem;
    padding-right: 6rem;
    padding-left: 6rem;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 0 7rem;
  }
}

@media screen and (min-width: 768px) {
  .p-service2__block:nth-child(even) .p-service2__wrap {
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 768px) {
  .p-service2__img {
    flex-shrink: 0;
    max-width: 45.1rem;
  }
}

.p-service2__img::before {
  padding-top: 65.8536585366%;
}

.p-service2__box {
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-service2__box {
    margin-top: 0.5rem;
  }
}

.p-service2__num {
  font-size: 1.2rem;
  text-transform: capitalize;
  font-family: "Cormorant Garamond", serif;
  letter-spacing: 0.1em;
  color: #72B583;
}

@media screen and (min-width: 768px) {
  .p-service2__num {
    font-size: 1.4rem;
  }
}

.p-service2__theme {
  margin-top: 0.8rem;
  font-size: 1.8rem;
  line-height: 1.6;
  letter-spacing: 0.08em;
  padding-bottom: 0.6rem;
  border-bottom: 1px solid #000;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-service2__theme {
    font-size: 2.5rem;
    padding-bottom: 0.8rem;
  }
}

.p-service2__text {
  margin-top: 0.6rem;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 2.5714285714;
}

@media screen and (min-width: 768px) {
  .p-service2__text {
    margin-top: 1rem;
    max-width: 55.9rem;
  }
}

.p-service3 {
  counter-reset: num;
  padding-top: 8rem;
  padding-bottom: 8rem;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-service3 {
    padding-top: 12.4rem;
    padding-bottom: 12.4rem;
  }
}

.p-service3__enTitle {
  display: block;
  text-align: center;
  text-transform: uppercase;
  font-family: "Cormorant Garamond", serif;
  font-size: 1.8rem;
  letter-spacing: 0.15em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-service3__enTitle {
    font-size: 2.5rem;
  }
}

.p-service3__title {
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-size: 3.2rem;
  letter-spacing: 0.14em;
}

@media screen and (min-width: 768px) {
  .p-service3__title {
    font-size: 4.5rem;
  }
}

.p-service3__container {
  margin-top: 6rem;
}

@media screen and (min-width: 768px) {
  .p-service3__container {
    margin-top: 13.4rem;
  }
}

.p-service3__block {
  position: relative;
}

.p-service3__block:nth-of-type(n+2) {
  margin-top: 4.8rem;
}

@media screen and (min-width: 768px) {
  .p-service3__block:nth-of-type(n+2) {
    margin-top: 11.2rem;
  }
}

.p-service3__block::before {
  content: "";
  display: block;
  width: 70vw;
  height: 38vw;
  position: absolute;
  top: -3rem;
  right: 0;
  background-color: #F1F5F9;
}

@media screen and (min-width: 768px) {
  .p-service3__block::before {
    width: 59.9305555556vw;
    height: 43.3rem;
    top: -8.6rem;
  }
}

.p-service3__block:nth-of-type(even)::before {
  right: auto;
  left: 0;
}

.p-service3__block::after {
  counter-increment: num;
  content: "service 0"counter(num);
  font-family: "Cormorant Garamond", serif;
  text-transform: capitalize;
  color: #587BBD;
  font-weight: 400;
  font-size: 5.4rem;
  letter-spacing: 0.06em;
  writing-mode: vertical-rl;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  height: 100%;
  margin-top: 2.2rem;
}

@media screen and (min-width: 768px) {
  .p-service3__block::after {
    font-size: min(5.3472222222vw, 7.7rem);
    right: -1.4rem;
    margin-top: 13.7rem;
  }
}

.p-service3__block:nth-of-type(even)::after {
  right: auto;
  left: 0;
}

@media screen and (min-width: 768px) {
  .p-service3__block:nth-of-type(even)::after {
    left: -1.4rem;
  }
}

.p-service3__img {
  max-width: 86vw;
}

@media screen and (min-width: 768px) {
  .p-service3__img {
    max-width: 83.4722222222vw;
  }
}

.p-service3__block:nth-of-type(even) .p-service3__img {
  margin-left: auto;
}

.p-service3__img::before {
  padding-top: 49.9168053245%;
}

.p-service__body {
  background-color: #fff;
  padding: 1.6rem 2rem;
}

@media screen and (min-width: 768px) {
  .p-service__body {
    position: relative;
    margin: -7.5rem 0 0 28.0555555556vw;
    width: 87.7rem;
    padding: 6.4rem 8.1rem 10rem;
  }
}

@media screen and (min-width: 768px) {
  .p-service3__block:nth-of-type(even) .p-service__body {
    margin-left: auto;
    margin-right: 28.0555555556vw;
  }
}

@media screen and (min-width: 768px) {
  .p-service3__wrap {
    max-width: 55.9rem;
  }
}

.p-service3__num {
  text-transform: capitalize;
  font-family: "Cormorant Garamond", serif;
  letter-spacing: 0.06em;
  color: #587BBD;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-service3__num {
    font-size: 1.8rem;
  }
}

.p-service3__theme {
  margin-top: 0.3rem;
  font-size: 2rem;
  line-height: 1.3333333333;
  letter-spacing: 0.14em;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  color: #587BBD;
}

@media screen and (min-width: 768px) {
  .p-service3__theme {
    font-size: 3rem;
  }
}

.p-service3__text {
  margin-top: 1.8rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2.125;
}

@media screen and (min-width: 768px) {
  .p-service3__text {
    margin-top: 3.2rem;
    font-size: 1.6rem;
  }
}

.p-store-lead1 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-store-lead1 {
    padding-top: 11rem;
    padding-bottom: 11rem;
  }
}

.p-store-lead1__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-store-lead1__inner {
    max-width: 95rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-store-lead1__enTitle {
  display: block;
  text-align: center;
  text-transform: uppercase;
  font-family: "Cormorant Garamond", serif;
  font-size: 1.8rem;
  letter-spacing: 0.15em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-store-lead1__enTitle {
    font-size: 2rem;
  }
}

.p-store-lead1__title {
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-size: 2.4rem;
  letter-spacing: 0.14em;
}

@media screen and (min-width: 768px) {
  .p-store-lead1__title {
    font-size: 3.6rem;
  }
}

.p-store-lead1__items {
  margin-top: 3.7rem;
  display: grid;
  row-gap: 4rem;
}

@media screen and (min-width: 768px) {
  .p-store-lead1__items {
    grid-template-columns: repeat(2, 1fr);
    gap: 0 4.5rem;
  }
}

.p-store-lead1__item {
  display: flex;
  flex-direction: column;
}

.p-store-lead1__img::before {
  padding-top: 63.3440514469%;
}

.p-store-lead1__body {
  padding: 1.5rem 0 4.4rem;
}

@media screen and (min-width: 768px) {
  .p-store-lead1__body {
    padding-top: 1.9rem;
  }
}

.p-store-lead1__itemTitle {
  padding-bottom: 0.7rem;
  font-family: "Noto Serif JP", serif;
  border-bottom: 1px solid #3F3F3F;
  font-weight: 400;
  font-size: 2rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-store-lead1__itemTitle {
    font-size: 2.4rem;
  }
}

.p-store-lead1__list {
  margin-top: 1.2rem;
  display: flex;
  align-items: flex-start;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

.p-store-lead1__list:nth-of-type(n+2) {
  margin-top: 0.5rem;
}

.p-store-lead1__term {
  width: 7.2rem;
  font-weight: 700;
  text-transform: uppercase;
  color: #5C80B7;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-store-lead1__term {
    margin-top: 0.2rem;
    width: 9.8rem;
  }
}

.p-store-lead1__description {
  padding-right: 1rem;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .p-store-lead1__description {
    font-size: 1.6rem;
  }
}

.p-store-lead1__links {
  display: flex;
  -moz-column-gap: 0.5px;
  column-gap: 0.5px;
  margin-top: auto;
}

.p-store-lead1__button {
  color: #fff;
  padding: 1.4rem 0;
  text-align: center;
  font-size: 1.3rem;
  line-height: 1;
  letter-spacing: 0.08em;
  font-weight: 500;
  width: 100%;
  display: inline-block;
  position: relative;
}

.p-store-lead1__button::after {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(-45deg);
  position: absolute;
  top: 1.8rem;
  right: 3.2rem;
}

.p-store-lead1__button--reservation {
  background-color: #5C80B7;
}

.p-store-lead1__button--site {
  background-color: #84A3D3;
}

.p-store-lead2 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-store-lead2 {
    padding-top: 8.7rem;
    padding-bottom: 8.7rem;
  }
}

.p-store-lead2__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-store-lead2__inner {
    max-width: 125rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-store-lead2__entitle {
  width: 20.4rem;
}

.p-store-lead2__title {
  margin-top: 0.5rem;
  font-weight: 500;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  padding-bottom: 1.8rem;
  border-bottom: 1.5px solid #3572B7;
}

@media screen and (min-width: 768px) {
  .p-store-lead2__title {
    padding-bottom: 3.1rem;
  }
}

.p-store-lead2__items {
  margin-top: 4rem;
  display: grid;
  row-gap: 4rem;
}

@media screen and (min-width: 768px) {
  .p-store-lead2__items {
    margin-top: 5rem;
    grid-template-columns: repeat(3, 1fr);
    gap: 5.6rem 5.7rem;
  }
}

.p-store-lead2__item {
  display: flex;
  flex-direction: column;
}

.p-store-lead2__img::before {
  padding-top: 63.3440514469%;
}

.p-store-lead2__body {
  padding: 1.6rem 0 2.6rem;
}

.p-store-lead2__itemTitle {
  padding-bottom: 0.3rem;
  border-bottom: 1px solid #3572B7;
  font-weight: 700;
  font-size: 2rem;
  letter-spacing: 0.08em;
  color: #3872B7;
}

@media screen and (min-width: 768px) {
  .p-store-lead2__itemTitle {
    font-size: 2.4rem;
  }
}

.p-store-lead2__list {
  margin-top: 1.2rem;
  display: flex;
  align-items: flex-start;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-store-lead2__list {
    font-size: 1.6rem;
  }
}

.p-store-lead2__list:nth-of-type(n+2) {
  margin-top: 0.35rem;
}

.p-store-lead2__term {
  width: 7.2rem;
  font-weight: 700;
  text-transform: uppercase;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-store-lead2__term {
    width: 8.3rem;
  }
}

.p-store-lead2__description {
  padding-right: 1rem;
}

.p-store-lead2__links {
  display: flex;
  -moz-column-gap: 0.5px;
  column-gap: 0.5px;
  margin-top: auto;
}

.p-store-lead2__button {
  color: #fff;
  padding: 1.45rem 0;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.08em;
  font-weight: 500;
  width: 100%;
  display: inline-block;
  position: relative;
  background-color: #326EB5;
}

@media screen and (min-width: 768px) {
  .p-store-lead2__button {
    font-size: 1.6rem;
  }
}

.p-store-lead2__button::after {
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(-45deg);
  position: absolute;
  top: 1.9rem;
  right: 7rem;
}

.p-store-lead3 {
  background-color: #F5F5F5;
  padding-top: 8rem;
  padding-bottom: 8rem;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-store-lead3 {
    padding-top: 11rem;
    padding-bottom: 11rem;
  }
}

.p-store-lead3__enTitle {
  display: block;
  text-align: center;
  text-transform: uppercase;
  font-family: "Cormorant Garamond", serif;
  font-size: 1.8rem;
  letter-spacing: 0.15em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-store-lead3__enTitle {
    font-size: 2rem;
  }
}

.p-store-lead3__title {
  text-align: center;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-size: 2.4rem;
  letter-spacing: 0.14em;
}

@media screen and (min-width: 768px) {
  .p-store-lead3__title {
    font-size: 3.6rem;
  }
}

.p-store-lead3__container {
  counter-reset: num;
  margin-top: 7.5rem;
}

.p-store-lead3__block {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .p-store-lead3__block {
    flex-direction: row;
    align-items: center;
  }
}

.p-store-lead3__block:nth-of-type(n+2) {
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-store-lead3__block:nth-of-type(n+2) {
    margin-top: 6.2rem;
  }
}

.p-store-lead3__block::after {
  counter-increment: num;
  content: "shop 0"counter(num);
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  color: #F8F7EF;
  opacity: 0.8;
  font-size: 4rem;
  letter-spacing: 0.04em;
  writing-mode: vertical-rl;
  position: absolute;
  right: 0;
  bottom: 5.5rem;
  height: 100%;
  text-align: right;
}

@media screen and (min-width: 768px) {
  .p-store-lead3__block::after {
    color: #fff;
    bottom: auto;
    right: auto;
    left: -0.5rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: min(5.1vw, 7.3rem);
    text-align: left;
    margin-top: 5.5rem;
  }
}

@media screen and (min-width: 768px) {
  .p-store-lead3__block:nth-child(even)::after {
    left: auto;
    right: -0.5rem;
  }
}

@media screen and (min-width: 768px) {
  .p-store-lead3__block:nth-child(odd) {
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 768px) {
  .p-store-lead3__img {
    flex-shrink: 0;
    max-width: 53vw;
    margin-left: -5rem;
  }
}

@media screen and (min-width: 768px) {
  .p-store-lead3__block:nth-child(even) .p-store-lead3__img {
    margin-left: 0;
    margin-right: -5rem;
  }
}

.p-store-lead3__img::before {
  padding-top: 64%;
}

@media screen and (min-width: 768px) {
  .p-store-lead3__img::before {
    padding-top: max(50.2rem, 65.7929226737%);
  }
}

.p-store-lead3__box {
  width: 100%;
  position: relative;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-store-lead3__box {
    max-width: 52.5rem;
    margin: 0;
    height: 39.1rem;
    display: flex;
    flex-direction: column;
  }
}

.p-store-lead3__wrap {
  margin-right: auto;
  margin-left: auto;
  max-width: 60rem;
  padding: 2.4rem 2rem 2.8rem;
  position: relative;
  z-index: 1;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-store-lead3__wrap {
    position: static;
    max-width: 45.8rem;
    margin-inline: auto;
    padding: 7rem 2rem 6.3rem;
  }
}

.p-store-lead3__num {
  font-size: 1.2rem;
  color: #C95C3D;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-family: "Oswald", sans-serif;
}

.p-store-lead3__shopName {
  margin-top: 0.5rem;
  font-size: 2rem;
  line-height: 1.3846153846;
  letter-spacing: 0.08em;
  font-weight: 700;
  text-transform: capitalize;
}

@media screen and (min-width: 768px) {
  .p-store-lead3__shopName {
    margin-top: 1rem;
    font-size: 2.6rem;
  }
}

.p-store-lead3__list {
  margin-top: 2.6rem;
  display: flex;
  align-items: flex-start;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-store-lead3__list {
    font-size: 1.6rem;
    padding-left: 0.4rem;
  }
}

.p-store-lead3__list:nth-of-type(n+2) {
  margin-top: 0.35rem;
}

.p-store-lead3__term {
  width: 7.2rem;
  font-weight: 700;
  text-transform: uppercase;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-store-lead3__term {
    width: 8.3rem;
  }
}

.p-store-lead3__description {
  padding-right: 1rem;
}

.p-store-lead3__link {
  display: flex;
  margin-top: auto;
}

.p-store-lead3__button {
  display: inline-block;
  width: 50%;
  color: #fff;
  position: relative;
  font-size: 1.5rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  text-align: center;
  padding: 1.1rem 0;
}

@media screen and (min-width: 768px) {
  .p-store-lead3__button {
    padding: 1.3rem 0;
  }
}

.p-store-lead3__button--wide {
  width: 100%;
}

.p-store-lead3__button::after {
  content: "";
  position: absolute;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  top: 50%;
  right: 2.8rem;
  transform: rotate(-45deg) translateY(-0.6rem);
}

.p-store-lead3__button--wide::after {
  right: 27%;
}

@media screen and (min-width: 768px) {
  .p-store-lead3__button--wide::after {
    right: 33%;
  }
}

.p-store-lead3__detail {
  background-color: #C95C3D;
}

.p-store-lead3__cast {
  background-color: #E0C55B;
}

.p-section-contact1 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-section-contact1 {
    padding-top: 36rem;
    padding-bottom: 36rem;
  }
}

.p-section-contact1__inner {
  width: 100%;
  padding-right: 2.75rem;
  padding-left: 2.75rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-section-contact1__inner {
    max-width: 105.2rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-section-contact1__container {
  background-color: #255096;
  padding: 1.6rem;
  -webkit-clip-path: polygon(24px 0, calc(100% - 24px) 0, 100% 24px, 100% calc(100% - 24px), calc(100% - 24px) 100%, 24px 100%, 0 calc(100% - 24px), 0 24px);
  clip-path: polygon(24px 0, calc(100% - 24px) 0, 100% 24px, 100% calc(100% - 24px), calc(100% - 24px) 100%, 24px 100%, 0 calc(100% - 24px), 0 24px);
}

.p-section-contact1__body {
  background-color: #fff;
  -webkit-clip-path: polygon(18px 0, calc(100% - 18px) 0, 100% 18px, 100% calc(100% - 18px), calc(100% - 18px) 100%, 18px 100%, 0 calc(100% - 18px), 0 18px);
  clip-path: polygon(18px 0, calc(100% - 18px) 0, 100% 18px, 100% calc(100% - 18px), calc(100% - 18px) 100%, 18px 100%, 0 calc(100% - 18px), 0 18px);
  padding: 1.8rem 1.3rem 3.3rem;
  display: flex;
  flex-direction: column;
  row-gap: 3.8rem;
}

@media screen and (min-width: 768px) {
  .p-section-contact1__body {
    padding: 1.2rem 4.8rem 1.2rem 3.8rem;
    flex-direction: row-reverse;
    align-items: flex-start;
    gap: 0 8.8rem;
  }
}

.p-section-contact1__img {
  max-width: 96%;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-section-contact1__img {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    max-width: 39.3rem;
  }
}

.p-section-contact1__img::before {
  padding-top: 61.7529880478%;
}

@media screen and (min-width: 768px) {
  .p-section-contact1__img::before {
    padding-top: 49.8727735369%;
  }
}

.p-section-contact1__img::after {
  content: "";
  display: block;
  width: 10rem;
  height: 4.1rem;
  background-image: url(../images/section-contact1/contact-text.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  bottom: -1.3rem;
  right: -1.3rem;
}

@media screen and (min-width: 768px) {
  .p-section-contact1__img::after {
    width: 16rem;
    height: 6.4rem;
    bottom: -0.3rem;
    right: -4.6rem;
  }
}

.p-section-contact1__img img {
  -webkit-clip-path: polygon(11px 0, calc(100% - 11px) 0, 100% 11px, 100% calc(100% - 11px), calc(100% - 11px) 100%, 11px 100%, 0 calc(100% - 11px), 0 11px);
  clip-path: polygon(11px 0, calc(100% - 11px) 0, 100% 11px, 100% calc(100% - 11px), calc(100% - 11px) 100%, 11px 100%, 0 calc(100% - 11px), 0 11px);
}

@media screen and (min-width: 768px) {
  .p-section-contact1__img img {
    -webkit-clip-path: polygon(15px 0, calc(100% - 15px) 0, 100% 15px, 100% calc(100% - 15px), calc(100% - 15px) 100%, 15px 100%, 0 calc(100% - 15px), 0 15px);
    clip-path: polygon(15px 0, calc(100% - 15px) 0, 100% 15px, 100% calc(100% - 15px), calc(100% - 15px) 100%, 15px 100%, 0 calc(100% - 15px), 0 15px);
  }
}

.p-section-contact1__wrap {
  text-align: center;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-section-contact1__wrap {
    max-width: 40.2rem;
  }
}

.p-section-contact1__notice {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  color: #FD8C3E;
  font-size: 1.6rem;
  line-height: 1.1875;
  letter-spacing: 0.04em;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (min-width: 768px) {
  .p-section-contact1__notice {
    font-size: 2.5rem;
  }
}

.p-section-contact1__notice::before,
.p-section-contact1__notice::after {
  content: "";
  display: block;
  width: 2.9rem;
  height: 3.7rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

@media screen and (min-width: 768px) {

  .p-section-contact1__notice::before,
  .p-section-contact1__notice::after {
    width: 4.4rem;
    height: 5.6rem;
  }
}

.p-section-contact1__notice::before {
  background-image: url(../images/section-contact1/line-before.svg);
  margin-right: 0.3rem;
}

@media screen and (min-width: 768px) {
  .p-section-contact1__notice::before {
    margin-right: 0.1rem;
  }
}

.p-section-contact1__notice::after {
  background-image: url(../images/section-contact1/line-after.svg);
  margin-left: 0.3rem;
}

@media screen and (min-width: 768px) {
  .p-section-contact1__notice::after {
    margin-left: 0.1rem;
  }
}

.p-section-contact1__text {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 1.3rem;
  letter-spacing: 0.04em;
  margin-top: 1.3rem;
}

@media screen and (min-width: 768px) {
  .p-section-contact1__text {
    margin-top: 0.1rem;
    font-size: 2.1rem;
  }
}

.p-section-contact1__button {
  margin-top: 0.4rem;
  width: 100%;
  display: inline-block;
  background-color: #E67425;
  color: #fff;
  padding: 1.2rem 0;
  text-align: center;
  position: relative;
  font-size: 1.1rem;
  letter-spacing: 0.06em;
  font-weight: 500;
  transition: opacity 0.3s ease-out;
  -webkit-clip-path: polygon(5px 0, calc(100% - 5px) 0, 100% 5px, 100% calc(100% - 5px), calc(100% - 5px) 100%, 5px 100%, 0 calc(100% - 5px), 0 5px);
  clip-path: polygon(5px 0, calc(100% - 5px) 0, 100% 5px, 100% calc(100% - 5px), calc(100% - 5px) 100%, 5px 100%, 0 calc(100% - 5px), 0 5px);
}

@media screen and (min-width: 768px) {
  .p-section-contact1__button {
    padding: 1.7rem 0;
    font-size: 1.8rem;
    -webkit-clip-path: polygon(8px 0, calc(100% - 8px) 0, 100% 8px, 100% calc(100% - 8px), calc(100% - 8px) 100%, 8px 100%, 0 calc(100% - 8px), 0 8px);
    clip-path: polygon(8px 0, calc(100% - 8px) 0, 100% 8px, 100% calc(100% - 8px), calc(100% - 8px) 100%, 8px 100%, 0 calc(100% - 8px), 0 8px);
  }
}

.p-section-contact1__button:hover {
  opacity: 0.8;
}

.p-section-contact1__button::after {
  content: "";
  position: absolute;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  top: 50%;
  right: 1.7rem;
  transform: rotate(-45deg) translateY(-0.6rem);
  transition: border 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-section-contact1__button::after {
    width: 1rem;
    height: 1rem;
    border-width: 2px;
    right: 1.3rem;
  }
}

.p-section-contact1__tel {
  display: block;
  margin-top: 1.1rem;
  line-height: 1;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  font-family: "Noto Serif JP", serif;
}

@media screen and (min-width: 768px) {
  .p-section-contact1__tel {
    margin-top: 0.5rem;
    font-size: 3.1rem;
  }
}

.p-section-contact1__tel span {
  font-size: 1.3rem;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-section-contact1__tel span {
    font-size: 2.1rem;
  }
}

.p-section-contact2 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-section-contact2 {
    padding-top: 33rem;
    padding-bottom: 33rem;
  }
}

.p-section-contact2__inner {
  width: 100%;
  padding-right: 2.75rem;
  padding-left: 2.75rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-section-contact2__inner {
    max-width: 104.2rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-section-contact2__block {
  border: solid #CBAB75;
  border-width: 1.6rem;
  display: flex;
  flex-direction: column-reverse;
}

@media screen and (min-width: 768px) {
  .p-section-contact2__block {
    flex-flow: row nowrap;
    border-width: 2rem 2.5rem;
  }
}

.p-section-contact2__wrap {
  background-color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 2rem;
}

@media screen and (min-width: 768px) {
  .p-section-contact2__wrap {
    padding: 0;
    max-width: 47.5rem;
    width: 100%;
  }
}

.p-section-contact2__text {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  color: #FD8C3E;
  font-size: 2rem;
  letter-spacing: 0.04em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background: linear-gradient(transparent calc(100% - 1.2rem), #FFF95F calc(100% - 1.2rem));
}

@media screen and (min-width: 768px) {
  .p-section-contact2__text {
    font-size: 3.5rem;
  }
}

.p-section-contact2__support {
  font-family: "Noto Serif JP", serif;
  letter-spacing: 0.04em;
  line-height: 1.619047619;
  font-weight: 500;
  margin-top: 1.3rem;
}

@media screen and (min-width: 768px) {
  .p-section-contact2__support {
    font-size: 2.1rem;
  }
}

.p-section-contact2__tel {
  margin-top: 0.2rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 2.4rem;
  letter-spacing: 0.07em;
}

@media screen and (min-width: 768px) {
  .p-section-contact2__tel {
    font-size: 3.1rem;
  }
}

.p-section-contact2__tel span {
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-section-contact2__tel span {
    font-size: 2.1rem;
  }
}

@media screen and (min-width: 768px) {
  .p-section-contact2__img {
    max-width: 47.5rem;
  }
}

.p-section-contact2__img::before {
  padding-top: 58.3157894737%;
}

.p-section-contact2__button {
  margin-top: 1.2rem;
  max-width: 40.2rem;
  width: 100%;
  display: inline-block;
  background: linear-gradient(90deg, #1F1F1F 0%, #535353 100%);
  position: relative;
  overflow: hidden;
  border: 1px solid transparent;
  color: #fff;
  border-radius: 99.9rem;
  text-align: center;
  position: relative;
  padding: 1.2rem 0;
  font-size: 1.4rem;
  letter-spacing: 0.061em;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-section-contact2__button {
    font-size: 1.6rem;
    padding: 1.6rem 0;
    font-size: 1.8rem;
  }
}

.p-section-contact2__button::after {
  content: "";
  position: absolute;
  width: 0.7rem;
  height: 0.7rem;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  top: 50%;
  right: 1.9rem;
  transform: rotate(-45deg) translateY(-0.6rem);
  transition: border 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-section-contact2__button::after {
    width: 1rem;
    height: 1rem;
  }
}

.p-section-contact2__button:hover {
  opacity: 0.8;
}



.p-bottom-contact2 {
  background-image: url(../images/bottom-contact2/contact-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
  overflow: hidden;
  margin-top: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact2 {
    margin-top: 10.2rem;
  }
}

.p-bottom-contact2::before {
  content: "contact";
  text-transform: uppercase;
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  writing-mode: vertical-rl;
  color: #885E4F;
  opacity: 0.09;
  font-size: 5.6rem;
  letter-spacing: 0.08em;
  font-weight: normal;
  position: absolute;
  top: 50%;
  left: -1.5rem;
  transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
  .p-bottom-contact2::before {
    top: 52.7%;
    font-size: 11.5rem;
    left: -2rem;
  }
}

.p-bottom-contact2__inner {
  position: relative;
  width: 100%;
  padding: 8rem 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact2__inner {
    max-width: 105rem;
    padding: 14rem 2.5rem 13.8rem;
  }
}

.p-bottom-contact2__block {
  border: 1px solid #D3CBC8;
  background-color: #FCFBF7;
  padding: 4rem 1.6rem 6rem;
  position: relative;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact2__block {
    padding: 5.6rem 2rem 7.8rem;
  }
}

.p-bottom-contact2__enTitle {
  font-size: 1rem;
  letter-spacing: 0.08em;
  color: #38A1DB;
  font-family: "Outfit", sans-serif;
  text-transform: uppercase;
  font-weight: 500;
  display: block;
  text-align: center;
}

.p-bottom-contact2__title {
  font-size: 2rem;
  letter-spacing: 0.04em;
  line-height: 1.5833333333;
  font-weight: 500;
  color: #885E4F;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding-bottom: 0.6rem;
  background-image: linear-gradient(to right, #885E4F, #885E4F 4px, transparent 4px, transparent 8px);
  background-size: 8px 2px;
  background-position: left bottom;
  background-repeat: repeat-x;
  margin-top: 0.4rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact2__title {
    font-size: 2.8rem;
    letter-spacing: 0.11em;
    line-height: 1.4545454545;
    padding-bottom: 1.3rem;
  }
}

.p-bottom-contact2__text {
  letter-spacing: 0.06em;
  line-height: 1.7142857143;
  font-size: 1.4rem;
  text-align: center;
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact2__text {
    margin-top: 2.1rem;
  }
}

.p-bottom-contact2__text span {
  white-space: nowrap;
}

.p-bottom-contact2__tel {
  margin-top: 2.4rem;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact2__tel {
    margin-top: 3.9rem;
  }
}

.p-bottom-contact2__place {
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 0.04em;
  color: #fff;
  line-height: 1.93;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact2__place {
    line-height: 1.8;
  }
}

.p-bottom-contact2__place--representative {
  background-color: #73D0E9;
}

.p-bottom-contact2__place--office {
  background-color: #F7C049;
  max-width: 25.9rem;
  margin-inline: auto;
}

.p-bottom-contact2__number {
  color: #885E4F;
  font-family: "Outfit", sans-serif;
  font-size: 2.6rem;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-align: center;
  margin-top: 0.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact2__number {
    font-size: 3.1rem;
    margin-top: 0.4rem;
  }
}

.p-bottom-contact2__time {
  display: block;
  text-align: center;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #885E4F;
  line-height: 1;
  margin-top: -0.6rem;
}

.p-bottom-contact2__wrap {
  display: grid;
  row-gap: 2.6rem;
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact2__wrap {
    max-width: 74rem;
    margin-inline: auto;
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 2rem;
    column-gap: 2rem;
    margin-top: 3.2rem;
  }
}

.p-bottom-contact2__button {
  position: relative;
  display: inline-block;
  border-radius: 1rem;
  padding: 0.4rem;
  overflow: hidden;
  width: 100%;
  max-width: 36rem;
  vertical-align: bottom;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact2__button {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom-contact2__button:hover {
  opacity: 1;
}

.p-bottom-contact2__button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 60%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.4) 100%);
  transform: skewX(-25deg);
}

.p-bottom-contact2__button:hover::before {
  -webkit-animation: shine 0.8s;
  animation: shine 0.8s;
}

@-webkit-keyframes shine {
  100% {
    left: 125%;
  }
}

@keyframes shine {
  100% {
    left: 125%;
  }
}

.p-bottom-contact2__button span {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #fff;
  border-radius: 1rem;
  font-size: min(4vw, 1.6rem);
  padding: 2.3rem 0;
  color: #fff;
  letter-spacing: 0.04em;
}

.p-bottom-contact2__button span::before {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p-bottom-contact2__button--contact {
  background-color: #EC887F;
}

.p-bottom-contact2__button--contact span::before {
  width: 1.8rem;
  height: 1.3rem;
  background-image: url(../images/bottom-contact2/icon-mail.svg);
  margin-right: 0.6rem;
}

.p-bottom-contact2__button--line {
  background-color: #BCD154;
}

.p-bottom-contact2__button--line span::before {
  width: 1.9rem;
  height: 1.8rem;
  background-image: url(../images/bottom-contact2/icon-line.svg);
  margin-right: 0.4rem;
}



.p-bottom-contact4 {
  background-image: url(../images/bottom-contact4/banner-bottom.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
  margin-top: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact4 {
    margin-top: 22.5rem;
  }
}

.p-bottom-contact4::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.68);
  width: 100%;
  height: 100%;
}

.p-bottom-contact4__inner {
  position: relative;
  width: 100%;
  padding: 8rem 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact4__inner {
    max-width: 104.6rem;
    padding: 9.3rem 2.5rem;
  }
}

.p-bottom-contact4__container {
  display: grid;
  row-gap: 3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact4__container {
    grid-template-columns: repeat(2, 1fr);
    gap: 0 1.6rem;
  }
}

.p-bottom-contact4__block {
  background-color: #fff;
  padding: 3.2rem 2rem 4.8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact4__block {
    padding: 6.1rem 2.5rem 5.7rem;
  }
}

.p-bottom-contact4__wrap {
  width: 100%;
  max-width: 38.4rem;
  margin-inline: auto;
}

.p-bottom-contact4__enTitle {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  text-transform: uppercase;
  font-size: 2.8rem;
  letter-spacing: 0.06em;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact4__enTitle {
    font-size: 3.4rem;
  }
}

.p-bottom-contact4__text {
  font-size: 1.4rem;
  margin-top: 0.4rem;
  letter-spacing: 0.08em;
  line-height: 1.625;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact4__text {
    font-size: 1.6rem;
    margin-top: 0.7rem;
  }
}

.p-bottom-contact4__button {
  color: #fff;
  background-color: #000;
  border: 1px solid #000;
  font-size: 1.5rem;
  letter-spacing: 0.04em;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  width: 100%;
  padding: 2.1rem 0;
  margin-top: 2.8rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact4__button {
    padding: 2.3rem 0;
    margin-top: 3.5rem;
  }
}

.p-bottom-contact4__button:hover {
  color: #000;
  opacity: 1;
  transition: color 0.2s 0.05s;
}

.p-bottom-contact4__button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -130%;
  background: #fff;
  width: 120%;
  height: 100%;
}

.p-bottom-contact4__button:hover::before {
  -webkit-animation: skewanime 0.3s ease-out forwards;
  animation: skewanime 0.3s ease-out forwards;
}

@keyframes skewanime {
  100% {
    left: -10%;
  }
}

.p-bottom-contact4__button span {
  z-index: 1;
  display: flex;
  align-items: center;
}

.p-bottom-contact4__button span::after {
  content: "";
  width: 0.7rem;
  height: 0.7rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(-45deg);
  position: absolute;
  right: min(6.6vw, 4rem);
}

@media screen and (min-width: 768px) {
  .p-bottom-contact4__button span::after {
    right: 5rem;
  }
}

.p-bottom-contact4__button:hover span::after {
  transition: border 0.2s 0.15s;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
}

.p-bottom-contact4__button span::before {
  content: "";
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p-bottom-contact4__button--company span::before {
  background-image: url(../images/bottom-contact4/icon-company.svg);
  width: 1.6rem;
  height: 2.1rem;
  margin-right: 0.5rem;
}

.p-bottom-contact4__button--company:hover span::before {
  transition: background-image 0.15s;
  background-image: url(../images/bottom-contact4/icon-company-hover.svg);
}

.p-bottom-contact4__button--mail span::before {
  background-image: url(../images/bottom-contact4/icon-mail.svg);
  width: 1.7rem;
  height: 1.3rem;
  margin-right: 0.5rem;
}

.p-bottom-contact4__button--mail:hover span::before {
  transition: background-image 0.15s;
  background-image: url(../images/bottom-contact4/icon-mail-hover.svg);
}

.p-bottom-contact5 {
  color: #fff;
  text-align: center;
  background-image: url(../images/bottom-contact5/banner-bottom.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
  margin-top: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5 {
    margin-top: 14.8rem;
  }
}

.p-bottom-contact5::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.86);
  width: 100%;
  height: 100%;
}

.p-bottom-contact5__inner {
  position: relative;
  width: 100%;
  padding: 6.4rem 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__inner {
    max-width: 104.6rem;
    padding: 9.5rem 2.5rem 9.9rem;
  }
}

.p-bottom-contact5__title {
  font-weight: 700;
  font-size: 2.4rem;
  letter-spacing: 0.14em;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__title {
    font-size: 2.8rem;
  }
}

.p-bottom-contact5__enTitle {
  display: block;
  color: #B59A24;
  font-size: 1.8rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  text-transform: uppercase;
  font-family: "Oswald", sans-serif;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__enTitle {
    font-size: 2.2rem;
  }
}

.p-bottom-contact5__description {
  margin-top: 1.6rem;
  font-size: 1.5rem;
  letter-spacing: 0.13em;
  line-height: 1.7333333333;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__description {
    margin-top: 3rem;
    width: 53rem;
    margin-inline: auto;
  }
}

.p-bottom-contact5__wrap {
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__wrap {
    margin-top: 7.4rem;
    display: flex;
    justify-content: center;
    position: relative;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__wrap:after {
    content: "";
    display: block;
    height: 100%;
    width: 1px;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
  }
}

.p-bottom-contact5__block {
  width: 100%;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__block {
    width: 50%;
    position: relative;
  }
}

.p-bottom-contact5__block:nth-of-type(2) {
  margin-top: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__block:nth-of-type(2) {
    margin-top: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__contactWrap {
    padding: 2.2rem 0;
    margin-right: 8rem;
    max-width: 32.8rem;
    margin: 0.4rem 8rem 0 auto;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__callWrap {
    padding: 2.8rem 0;
    max-width: 27.8rem;
    margin: 0.3rem 0 0 8rem;
  }
}

.p-bottom-contact5__airplane {
  margin-inline: auto;
  background-image: url(../images/bottom-contact5/paper-airplane.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 4rem;
  height: 3.3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__airplane {
    width: 4.9rem;
    height: 4rem;
  }
}

.p-bottom-contact5__text {
  margin-top: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.13em;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__text {
    font-size: 1.8rem;
    margin-top: 3rem;
  }
}

.p-bottom-contact5__callWrap .p-bottom-contact5__text {
  margin-top: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__callWrap .p-bottom-contact5__text {
    margin-top: 2.7rem;
  }
}

.p-bottom-contact5__button {
  border: 1px solid #fff;
  width: 100%;
  padding: 2rem 0;
  text-align: center;
  letter-spacing: 0.13em;
  font-size: 1.5rem;
  font-weight: 500;
  margin-top: 2.4rem;
  display: inline-block;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__button {
    margin-top: 2.7rem;
    padding: 2.4rem 0;
  }
}

.p-bottom-contact5__call {
  margin-inline: auto;
  background-image: url(../images/bottom-contact5/call.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 2.8rem;
  height: 3.6rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__call {
    width: 3.5rem;
    height: 4.5rem;
  }
}

.p-bottom-contact5__callButton {
  display: block;
  font-size: 3.2rem;
  font-family: "Oswald", sans-serif;
  font-weight: 500;
  letter-spacing: 0.13em;
  margin-top: 0.9rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact5__callButton {
    font-size: 3.4rem;
  }
}

.p-bottom-contact5__time {
  display: block;
  margin-top: 0.6rem;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.13em;
}

.p-bottom-contact6 {
  color: #fff;
  text-align: center;
  position: relative;
  background: linear-gradient(-60.3deg, #B10615 50%, #CA092B 50%);
  margin-top: 8rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact6 {
    background: linear-gradient(-22.5deg, #B10615 50%, #CA092B 50%);
    margin-top: 18.7rem;
  }
}

.p-bottom-contact6::before,
.p-bottom-contact6::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  position: absolute;
  left: 0;
  background-color: #fff;
}

.p-bottom-contact6::before {
  top: 1rem;
}

.p-bottom-contact6::after {
  bottom: 1rem;
}

.p-bottom-contact6__inner {
  width: 100%;
  padding: 6.4rem 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact6__inner {
    max-width: 113rem;
    padding: 10.5rem 2.5rem 11rem;
  }
}

.p-bottom-contact6__enTitle {
  display: block;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  font-weight: 300;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact6__enTitle {
    font-size: 3rem;
  }
}

.p-bottom-contact6__enTitle::after {
  content: "";
  display: block;
  width: 7.5rem;
  height: 1.5px;
  background-color: #fff;
  margin-top: 1.5rem;
  margin-inline: auto;
}

.p-bottom-contact6__title {
  margin-top: 1.8rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

.p-bottom-contact6__text {
  margin-inline: auto;
  font-weight: 500;
  font-size: 1.4rem;
  margin-top: 2.2rem;
  letter-spacing: 0.08em;
  line-height: 2;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact6__text {
    margin-top: 2.8rem;
  }
}

.p-bottom-contact6__tel {
  font-family: "Oswald", sans-serif;
  font-weight: 300;
  font-size: 2.4rem;
  letter-spacing: 0.1em;
  margin-top: 2.5rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact6__tel {
    margin-top: 4rem;
    font-size: 3rem;
  }
}

.p-bottom-contact6__wrap {
  display: grid;
  row-gap: 2.4rem;
  margin-top: 3rem;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact6__wrap {
    margin-top: 3.6rem;
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: 3rem;
    column-gap: 3rem;
  }
}

.p-bottom-contact6__button {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  overflow: hidden;
  border: 1px solid #fff;
  max-width: 38.5rem;
  width: 100%;
  padding: 1.8rem 0;
  font-size: 1.5rem;
  margin-inline: auto;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-bottom-contact6__button {
    padding: 2.3rem 0;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-bottom-contact6__button:hover {
  color: #B10615;
  opacity: 1;
  transition: color 0.2s 0.05s;
}

.p-bottom-contact6__button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -130%;
  background: #fff;
  width: 120%;
  height: 100%;
}

.p-bottom-contact6__button:hover::before {
  -webkit-animation: skewanime 0.3s ease-out forwards;
  animation: skewanime 0.3s ease-out forwards;
}

@keyframes skewanime {
  100% {
    left: -10%;
  }
}

.p-bottom-contact6__button span {
  z-index: 1;
  display: flex;
  align-items: center;
}

.p-bottom-contact6__button span::before {
  content: "";
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p-bottom-contact6__button:hover span::before {
  transition: background-image 0.15s;
}

.p-bottom-contact6__button--line span {
  font-family: "Outfit", sans-serif;
  font-size: 1.7rem;
}

.p-bottom-contact6__button--line span::before {
  width: 2rem;
  height: 1.9rem;
  margin-right: 0.5rem;
  background-image: url(../images/bottom-contact6/icon-line.svg);
}

.p-bottom-contact6__button--line:hover span::before {
  background-image: url(../images/bottom-contact6/icon-line-hover.svg);
}

.p-bottom-contact6__button--instagram span::before {
  width: 1.4rem;
  height: 1.4rem;
  margin-right: 0.5rem;
  background-image: url(../images/bottom-contact6/icon-instagram.svg);
}

.p-bottom-contact6__button--instagram:hover span::before {
  background-image: url(../images/bottom-contact6/icon-instagram-hover.svg);
}

.p-bottom-contact6__button--hotpepper span::before {
  width: 1.1rem;
  height: 1.5rem;
  margin-right: 0.5rem;
  background-image: url(../images/bottom-contact6/icon-hotpepper.svg);
}

.p-bottom-contact6__button--hotpepper:hover span::before {
  background-image: url(../images/bottom-contact6/icon-hotpepper-hover.svg);
}

.p-bottom-contact6__button span::after {
  content: "";
  width: 0.7rem;
  height: 0.7rem;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(-45deg);
  position: absolute;
  right: min(6.6vw, 4.4rem);
}

@media screen and (min-width: 768px) {
  .p-bottom-contact6__button span::after {
    right: 4.4rem;
  }
}

@media screen and (min-width: 768px) {
  .p-bottom-contact6__button--hotpepper span::after {
    right: 2.4rem;
  }
}

.p-bottom-contact6__button:hover span::after {
  transition: border 0.2s 0.15s;
  border-bottom: 1px solid #B10615;
  border-right: 1px solid #B10615;
}

.p-store-detail-cta1 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1 {
    padding-top: 36rem;
    padding-bottom: 36rem;
  }
}

.p-store-detail-cta1__inner {
  width: 100%;
  padding-right: 2.75rem;
  padding-left: 2.75rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__inner {
    max-width: 105.2rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-store-detail-cta1__container {
  background-color: #255096;
  padding: 1.6rem;
  -webkit-clip-path: polygon(24px 0, calc(100% - 24px) 0, 100% 24px, 100% calc(100% - 24px), calc(100% - 24px) 100%, 24px 100%, 0 calc(100% - 24px), 0 24px);
  clip-path: polygon(24px 0, calc(100% - 24px) 0, 100% 24px, 100% calc(100% - 24px), calc(100% - 24px) 100%, 24px 100%, 0 calc(100% - 24px), 0 24px);
}

.p-store-detail-cta1__body {
  background-color: #fff;
  -webkit-clip-path: polygon(18px 0, calc(100% - 18px) 0, 100% 18px, 100% calc(100% - 18px), calc(100% - 18px) 100%, 18px 100%, 0 calc(100% - 18px), 0 18px);
  clip-path: polygon(18px 0, calc(100% - 18px) 0, 100% 18px, 100% calc(100% - 18px), calc(100% - 18px) 100%, 18px 100%, 0 calc(100% - 18px), 0 18px);
  padding: 1.8rem 1.3rem 3.3rem;
  display: flex;
  flex-direction: column;
  row-gap: 3.8rem;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__body {
    padding: 1.2rem 4.8rem 1.2rem 3.8rem;
    flex-direction: row-reverse;
    align-items: flex-start;
    gap: 0 8.8rem;
  }
}

.p-store-detail-cta1__img {
  max-width: 96%;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__img {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    max-width: 39.3rem;
  }
}

.p-store-detail-cta1__img::before {
  padding-top: 61.7529880478%;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__img::before {
    padding-top: 49.8727735369%;
  }
}

.p-store-detail-cta1__img::after {
  content: "";
  display: block;
  width: 10rem;
  height: 4.1rem;
  background-image: url(../images/store-detail-cta1/contact-text.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  bottom: -1.3rem;
  right: -1.3rem;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__img::after {
    width: 16rem;
    height: 6.4rem;
    bottom: -0.3rem;
    right: -4.6rem;
  }
}

.p-store-detail-cta1__img img {
  -webkit-clip-path: polygon(11px 0, calc(100% - 11px) 0, 100% 11px, 100% calc(100% - 11px), calc(100% - 11px) 100%, 11px 100%, 0 calc(100% - 11px), 0 11px);
  clip-path: polygon(11px 0, calc(100% - 11px) 0, 100% 11px, 100% calc(100% - 11px), calc(100% - 11px) 100%, 11px 100%, 0 calc(100% - 11px), 0 11px);
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__img img {
    -webkit-clip-path: polygon(15px 0, calc(100% - 15px) 0, 100% 15px, 100% calc(100% - 15px), calc(100% - 15px) 100%, 15px 100%, 0 calc(100% - 15px), 0 15px);
    clip-path: polygon(15px 0, calc(100% - 15px) 0, 100% 15px, 100% calc(100% - 15px), calc(100% - 15px) 100%, 15px 100%, 0 calc(100% - 15px), 0 15px);
  }
}

.p-store-detail-cta1__wrap {
  text-align: center;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__wrap {
    max-width: 40.2rem;
  }
}

.p-store-detail-cta1__notice {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  color: #FD8C3E;
  font-size: 1.6rem;
  line-height: 1.1875;
  letter-spacing: 0.04em;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__notice {
    font-size: 2.5rem;
  }
}

.p-store-detail-cta1__notice::before,
.p-store-detail-cta1__notice::after {
  content: "";
  display: block;
  width: 2.9rem;
  height: 3.7rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

@media screen and (min-width: 768px) {

  .p-store-detail-cta1__notice::before,
  .p-store-detail-cta1__notice::after {
    width: 4.4rem;
    height: 5.6rem;
  }
}

.p-store-detail-cta1__notice::before {
  background-image: url(../images/store-detail-cta1/line-before.svg);
  margin-right: 0.3rem;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__notice::before {
    margin-right: 0.1rem;
  }
}

.p-store-detail-cta1__notice::after {
  background-image: url(../images/store-detail-cta1/line-after.svg);
  margin-left: 0.3rem;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__notice::after {
    margin-left: 0.1rem;
  }
}

.p-store-detail-cta1__text {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 1.3rem;
  letter-spacing: 0.04em;
  margin-top: 1.3rem;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__text {
    margin-top: 0.1rem;
    font-size: 2.1rem;
  }
}

.p-store-detail-cta1__button {
  margin-top: 0.4rem;
  width: 100%;
  display: inline-block;
  background-color: #E67425;
  color: #fff;
  padding: 1.2rem 0;
  text-align: center;
  position: relative;
  font-size: 1.1rem;
  letter-spacing: 0.06em;
  font-weight: 500;
  transition: opacity 0.3s ease-out;
  -webkit-clip-path: polygon(5px 0, calc(100% - 5px) 0, 100% 5px, 100% calc(100% - 5px), calc(100% - 5px) 100%, 5px 100%, 0 calc(100% - 5px), 0 5px);
  clip-path: polygon(5px 0, calc(100% - 5px) 0, 100% 5px, 100% calc(100% - 5px), calc(100% - 5px) 100%, 5px 100%, 0 calc(100% - 5px), 0 5px);
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__button {
    padding: 1.7rem 0;
    font-size: 1.8rem;
    -webkit-clip-path: polygon(8px 0, calc(100% - 8px) 0, 100% 8px, 100% calc(100% - 8px), calc(100% - 8px) 100%, 8px 100%, 0 calc(100% - 8px), 0 8px);
    clip-path: polygon(8px 0, calc(100% - 8px) 0, 100% 8px, 100% calc(100% - 8px), calc(100% - 8px) 100%, 8px 100%, 0 calc(100% - 8px), 0 8px);
  }
}

.p-store-detail-cta1__button:hover {
  opacity: 0.8;
}

.p-store-detail-cta1__button::after {
  content: "";
  position: absolute;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  top: 50%;
  right: 1.7rem;
  transform: rotate(-45deg) translateY(-0.6rem);
  transition: border 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__button::after {
    width: 1rem;
    height: 1rem;
    border-width: 2px;
    right: 1.3rem;
  }
}

.p-store-detail-cta1__tel {
  display: block;
  margin-top: 1.1rem;
  line-height: 1;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  font-family: "Noto Serif JP", serif;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__tel {
    margin-top: 0.5rem;
    font-size: 3.1rem;
  }
}

.p-store-detail-cta1__tel span {
  font-size: 1.3rem;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta1__tel span {
    font-size: 2.1rem;
  }
}

.p-store-detail-cta2 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta2 {
    padding-top: 33rem;
    padding-bottom: 33rem;
  }
}

.p-store-detail-cta2__inner {
  width: 100%;
  padding-right: 2.75rem;
  padding-left: 2.75rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta2__inner {
    max-width: 104.2rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-store-detail-cta2__block {
  border: solid #CBAB75;
  border-width: 1.6rem;
  display: flex;
  flex-direction: column-reverse;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta2__block {
    flex-flow: row nowrap;
    border-width: 2rem 2.5rem;
  }
}

.p-store-detail-cta2__wrap {
  background-color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 2rem;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta2__wrap {
    padding: 0;
    max-width: 47.5rem;
    width: 100%;
  }
}

.p-store-detail-cta2__text {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  color: #FD8C3E;
  font-size: 2rem;
  letter-spacing: 0.04em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background: linear-gradient(transparent calc(100% - 1.2rem), #FFF95F calc(100% - 1.2rem));
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta2__text {
    font-size: 3.5rem;
  }
}

.p-store-detail-cta2__support {
  font-family: "Noto Serif JP", serif;
  letter-spacing: 0.04em;
  line-height: 1.619047619;
  font-weight: 500;
  margin-top: 1.3rem;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta2__support {
    font-size: 2.1rem;
  }
}

.p-store-detail-cta2__tel {
  margin-top: 0.2rem;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  font-size: 2.4rem;
  letter-spacing: 0.07em;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta2__tel {
    font-size: 3.1rem;
  }
}

.p-store-detail-cta2__tel span {
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta2__tel span {
    font-size: 2.1rem;
  }
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta2__img {
    max-width: 47.5rem;
  }
}

.p-store-detail-cta2__img::before {
  padding-top: 58.3157894737%;
}

.p-store-detail-cta2__button {
  margin-top: 1.2rem;
  max-width: 40.2rem;
  width: 100%;
  display: inline-block;
  background: linear-gradient(90deg, #1F1F1F 0%, #535353 100%);
  position: relative;
  overflow: hidden;
  border: 1px solid transparent;
  color: #fff;
  border-radius: 99.9rem;
  text-align: center;
  position: relative;
  padding: 1.2rem 0;
  font-size: 1.4rem;
  letter-spacing: 0.061em;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta2__button {
    font-size: 1.6rem;
    padding: 1.6rem 0;
    font-size: 1.8rem;
  }
}

.p-store-detail-cta2__button::after {
  content: "";
  position: absolute;
  width: 0.7rem;
  height: 0.7rem;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  top: 50%;
  right: 1.9rem;
  transform: rotate(-45deg) translateY(-0.6rem);
  transition: border 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-store-detail-cta2__button::after {
    width: 1rem;
    height: 1rem;
  }
}

.p-store-detail-cta2__button:hover {
  opacity: 0.8;
}

.p-instagram1 {
  background-image: url(../images/instagram1/bg-blog.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-instagram1 {
    padding-top: 9.4rem;
    padding-bottom: 9.4rem;
  }
}

.p-instagram1__enTitle {
  color: #38A1DB;
  display: block;
  text-align: center;
  font-family: "Outfit", sans-serif;
  font-size: 1.2rem;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: 0.08em;
}

.p-instagram1__theme {
  font-size: 2.4rem;
  letter-spacing: 0.04em;
  font-weight: 500;
  color: #885E4F;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 0.7rem;
  margin-inline: auto;
  padding-bottom: 0.6rem;
  background-image: linear-gradient(to right, #885E4F, #885E4F 4px, transparent 4px, transparent 8px);
  background-size: 8px 2px;
  background-position: left bottom;
  background-repeat: repeat-x;
}

@media screen and (min-width: 768px) {
  .p-instagram1__theme {
    margin-top: 1.4rem;
    padding-bottom: 1.2rem;
    font-size: 3.3rem;
    letter-spacing: 0.11em;
    line-height: 1.4545454545;
  }
}

.p-instagram1__slider {
  margin-top: 2.8rem;
}

@media screen and (min-width: 768px) {
  .p-instagram1__slider {
    margin-top: 4.4rem;
  }
}

.p-instagram1__button {
  margin-top: 6rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-instagram1__button {
    margin-top: 8rem;
  }
}

.p-instagram1 .swiper {
  width: 100%;
}

.p-instagram1 .swiper-wrapper {
  width: 100%;
  padding: 0.6rem 0;
}

.p-instagram1 .swiper-slide {
  width: 100%;
}

.p-instagram1 .swiper-slide img {
  width: 100%;
  height: 100%;
}

.p-instagram1 .swiper-button-instagram1-prev,
.p-instagram1 .swiper-button-instagram1-next {
  width: 4.6rem;
  height: 4.6rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  transform: translateY(-20%);
}

@media screen and (min-width: 768px) {

  .p-instagram1 .swiper-button-instagram1-prev,
  .p-instagram1 .swiper-button-instagram1-next {
    width: 6.9rem;
    height: 6.9rem;
  }
}

.p-instagram1 .swiper-button-instagram1-prev {
  background-image: url(../images/instagram1/prev-arrow.svg);
}

@media screen and (min-width: 768px) {
  .p-instagram1 .swiper-button-instagram1-prev {
    left: 11.1vw;
  }
}

.p-instagram1 .swiper-button-instagram1-next {
  background-image: url(../images/instagram1/next-arrow.svg);
}

@media screen and (min-width: 768px) {
  .p-instagram1 .swiper-button-instagram1-next {
    right: 11.1vw;
  }
}

.p-instagram1 .swiper-button-instagram1-prev:after,
.swiper-rtl .swiper-button-instagram1-next:after,
.p-instagram1 .swiper-button-instagram1-next:after,
.swiper-rtl .swiper-button-instagram1-prev:after {
  content: none;
}

.p-instagram1__thumbnail::before {
  padding-top: 60.2523659306%;
}

.p-instagram1__title {
  color: #885E4F;
  font-size: 1.8rem;
  letter-spacing: 0.04em;
  line-height: 1.5;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-instagram1__title {
    margin-top: 2.1rem;
    font-size: 2rem;
  }
}

.p-instagram2 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-instagram2 {
    padding-top: 13.3rem;
    padding-bottom: 13.3rem;
  }
}

.p-instagram2__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-instagram2__inner {
    max-width: 115.3rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-instagram2__enTitle {
  font-size: 1.2rem;
  letter-spacing: 0.08em;
  color: #FF8430;
  font-family: "Outfit", sans-serif;
  text-transform: uppercase;
  font-weight: 500;
  display: block;
  text-align: center;
}

.p-instagram2__theme {
  margin-inline: auto;
  font-size: 2.4rem;
  letter-spacing: 0.16em;
  font-weight: 400;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-image: linear-gradient(to right, #885E4F, #885E4F 4px, transparent 4px, transparent 8px);
  background-size: 8px 2px;
  letter-spacing: 0.2em;
  background-position: left bottom;
  background-repeat: repeat-x;
  padding-bottom: 0.2rem;
  font-family: "Noto Serif JP", serif;
}

@media screen and (min-width: 768px) {
  .p-instagram2__theme {
    margin-top: 0.7rem;
    padding-bottom: 0.7rem;
    font-size: 3.7rem;
    line-height: 1.6216216216;
  }
}

.p-instagram2__items {
  margin-top: 3.2rem;
  display: grid;
  row-gap: 4.2rem;
}

@media screen and (min-width: 768px) {
  .p-instagram2__items {
    margin-top: 6rem;
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: 4rem;
    column-gap: 4rem;
  }
}

.p-instagram2__item {
  display: inline-block;
}

.p-instagram2__img::before {
  padding-top: 76.4705882353%;
}

.p-instagram2__title {
  font-weight: 700;
  letter-spacing: 0.04em;
  font-size: 1.8rem;
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-instagram2__title {
    font-size: 2rem;
  }
}

.p-instagram3 {
  background-color: #F5F5F5;
  padding-top: 6rem;
  padding-bottom: 6rem;
}

@media screen and (min-width: 768px) {
  .p-instagram3 {
    padding-top: 8.8rem;
    padding-bottom: 8.8rem;
  }
}

.p-instagram3__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-instagram3__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-instagram3__secTitle {
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  font-weight: 300;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  margin-inline: auto;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid #000;
}

.p-instagram3__container {
  margin-top: 4.5rem;
  display: grid;
  gap: 1.6rem;
  grid-template-columns: repeat(2, 1fr);
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-instagram3__container {
    grid-template-columns: repeat(4, 1fr);
    gap: 2.8rem 2.7rem;
  }
}

.p-instagram3__img::before {
  padding-top: 100%;
}

.p-instagram3__wrap {
  margin-top: 5.6rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-instagram3__wrap {
    margin-top: 9.5rem;
  }
}

.p-instagram3__button {
  width: 100%;
  max-width: 18rem;
  border-radius: 99.9rem;
  position: relative;
  letter-spacing: 0.1em;
  font-family: "Oswald", sans-serif;
  text-transform: capitalize;
  margin-inline: auto;
  font-weight: 300;
}

@media screen and (min-width: 768px) {
  .p-instagram3__button {
    font-size: 2rem;
    max-width: 21.7rem;
  }
}

.p-instagram3__button a {
  display: block;
  padding: 2rem 3.2rem 2rem 0;
}

@media screen and (min-width: 768px) {
  .p-instagram3__button a {
    padding-right: 4.2rem;
  }
}

.p-instagram3__button a::before,
.p-instagram3__button a::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.p-instagram3__button a::before {
  left: 0;
  transform: translate(0, -50%);
  width: 5rem;
  height: 5rem;
  border: 1px solid #000;
  border-radius: 99.9rem;
  transition: width 0.25s ease-out;
}

@media screen and (min-width: 768px) {
  .p-instagram3__button a::before {
    width: 6.4rem;
    height: 6.4rem;
  }
}

.p-instagram3__button a::after {
  display: block;
  width: 4rem;
  height: 1rem;
  background-image: url("../images/instagram3/arrow-right.svg");
  background-size: contain;
  background-repeat: no-repeat;
  top: 53%;
  right: 0;
}

.p-instagram3__button a:hover::before {
  width: 106%;
}

.p-instagram3__scroll {
  display: flex;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  overflow: hidden;
  margin-top: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-instagram3__scroll {
    -moz-column-gap: min(2.36vw, 3.4rem);
    column-gap: min(2.36vw, 3.4rem);
    margin-top: 2.8rem;
  }
}

.p-instagram3__scrollImg {
  -webkit-animation: loopSlide 28s infinite linear 1s both;
  animation: loopSlide 28s infinite linear 1s both;
  width: 145rem;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-instagram3__scrollImg {
    width: 200.4rem;
    -webkit-animation: loopSlide 40s infinite linear 1s both;
    animation: loopSlide 40s infinite linear 1s both;
  }
}

.p-instagram3__scrollImg::before {
  padding-top: 8.4331337325%;
}

@keyframes loopSlide {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-100%);
  }
}

.p-recruit1 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-recruit1 {
    padding-top: 24.6rem;
    padding-bottom: 24.6rem;
  }
}

.p-recruit1__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-recruit1__inner {
    max-width: 113rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-recruit1__enTitle {
  text-align: center;
  font-family: "Oswald", sans-serif;
  font-weight: 300;
  font-size: 2.4rem;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

@media screen and (min-width: 768px) {
  .p-recruit1__enTitle {
    font-size: 3rem;
  }
}

.p-recruit1__enTitle::after {
  content: "";
  display: block;
  width: 7.5rem;
  height: 1.5px;
  background-color: #222;
  margin-inline: auto;
  margin-top: 1.5rem;
}

.p-recruit1__link {
  margin-top: 2.8rem;
  display: block;
  width: 100%;
  color: #fff;
  padding: 3.8rem 2.6rem 10rem;
  background-image: url(../images/recruit1/bg-recruit.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-recruit1__link {
    margin-top: 5.2rem;
    padding: 5.5rem 9.4rem 5.1rem;
  }
}

.p-recruit1__link::after {
  content: "";
  display: block;
  width: 17.2rem;
  height: 5rem;
  background-image: url(../images/recruit1/lets-work.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  bottom: 2.2rem;
  right: 2.2rem;
}

@media screen and (min-width: 768px) {
  .p-recruit1__link::after {
    bottom: auto;
    top: 50%;
    transform: translateY(-50%);
    width: 41rem;
    height: 16.3rem;
    right: 12.2rem;
  }
}

.p-recruit1__link:hover {
  opacity: 1;
  -webkit-animation: blightness 1.8s forwards;
  animation: blightness 1.8s forwards;
}

@-webkit-keyframes blightness {
  0% {
    filter: brightness(1);
  }

  30% {
    filter: brightness(1.2);
  }

  100% {
    filter: brightness(1.1);
  }
}

@keyframes blightness {
  0% {
    filter: brightness(1);
  }

  30% {
    filter: brightness(1.2);
  }

  100% {
    filter: brightness(1.1);
  }
}

@media screen and (min-width: 768px) {
  .p-recruit1__heading {
    display: flex;
    align-items: center;
    -moz-column-gap: 2.3rem;
    column-gap: 2.3rem;
  }
}

.p-recruit1__english {
  font-family: "Oswald", sans-serif;
  font-weight: 500;
  font-size: 4rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

@media screen and (min-width: 768px) {
  .p-recruit1__english {
    font-size: 7.5rem;
  }
}

.p-recruit1__theme {
  margin-top: 1rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-recruit1__theme {
    font-size: 1.8rem;
  }
}

.p-recruit1__text {
  margin-top: 1.6rem;
  font-size: 1.4rem;
  line-height: 2.5833333333;
  letter-spacing: 0.04em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-recruit1__text {
    margin-top: 0;
    width: 32rem;
  }
}

.p-recruit2 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-recruit2 {
    padding-top: 8.9rem;
    padding-bottom: 8.9rem;
  }
}

.p-recruit2__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-recruit2__inner {
    max-width: 117.5rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-recruit2__enTitle {
  display: block;
  text-align: center;
  text-transform: uppercase;
  font-family: "Inter", sans-serif;
  font-size: 1.8rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  color: #B9B796;
}

@media screen and (min-width: 768px) {
  .p-recruit2__enTitle {
    font-size: 2.2rem;
  }
}

.p-recruit2__title {
  text-align: center;
  font-weight: 500;
  font-size: 2.4rem;
  letter-spacing: 0.04em;
  margin-top: 0.4rem;
}

@media screen and (min-width: 768px) {
  .p-recruit2__title {
    font-size: 3.8rem;
  }
}

.p-recruit2__container {
  margin-top: 3rem;
}

.p-recruit2__block {
  position: relative;
}

.p-recruit2__block:nth-of-type(n+2) {
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-recruit2__block:nth-of-type(n+2) {
    margin-top: 6rem;
  }
}

@media screen and (min-width: 768px) {
  .p-recruit2__img {
    max-width: 90.8rem;
    margin-left: 12.6rem;
  }
}

@media screen and (min-width: 768px) {
  .p-recruit2__block:nth-of-type(even) .p-recruit2__img {
    margin-left: auto;
    margin-right: 12.6rem;
  }
}

.p-recruit2__img::before {
  padding-top: 66.7400881057%;
}

.p-recruit2__num {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-recruit2__num {
    display: block;
    position: absolute;
    z-index: 1;
    top: 10.1rem;
    left: 0.8rem;
    font-size: 1.8rem;
    letter-spacing: 0.1em;
    font-weight: 700;
    text-transform: uppercase;
    font-family: "Inter", sans-serif;
    color: #021E54;
    text-align: center;
    line-height: 1;
  }
}

.p-recruit2__block:nth-of-type(even) .p-recruit2__num {
  left: auto;
  right: 0.8rem;
}

.p-recruit2__num span {
  display: block;
  font-size: 9.7rem;
  letter-spacing: 0.04em;
  color: #fff;
  -webkit-text-stroke: 2px #021E54;
  text-stroke: 2px #021E54;
  margin-top: -0.1rem;
}

.p-recruit2__enName {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-recruit2__enName {
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    top: 50%;
    transform: translateY(-50%);
    text-transform: capitalize;
    writing-mode: vertical-rl;
  }
}

.p-recruit2__block:nth-of-type(even) .p-recruit2__enName {
  right: auto;
  left: 0;
}

.p-recruit2__body {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-recruit2__body {
    position: absolute;
    bottom: 0;
    left: 0;
    max-width: 93.1rem;
  }
}

@media screen and (min-width: 768px) {
  .p-recruit2__block:nth-of-type(even) .p-recruit2__body {
    left: auto;
    right: 0;
  }
}

.p-recruit2__name {
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #1F1F1F;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.8rem 1.9rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-recruit2__name {
    font-size: 1.8rem;
    position: static;
  }
}

.p-recruit2__block:nth-of-type(even) .p-recruit2__name {
  margin-left: auto;
}

.p-recruit2__text {
  color: #fff;
  background-color: #021E55;
  padding: 2rem 1.8rem 2.6rem;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 2;
}

@media screen and (min-width: 768px) {
  .p-recruit2__text {
    padding: 2.4rem 4.3rem 2.7rem;
    line-height: 2.5714285714;
  }
}

.p-recruit2__wrap {
  text-align: center;
  margin-top: 4.6rem;
}

@media screen and (min-width: 768px) {
  .p-recruit2__wrap {
    margin-top: 8rem;
  }
}

.p-recruit2__button {
  display: inline-block;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #000;
  text-align: center;
  width: 24.4rem;
  padding: 1.6rem;
  position: relative;
  transition: opacity 0.3s ease-out;
  font-size: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-recruit2__button {
    padding: 2rem;
    width: 33.7rem;
  }
}

.p-recruit2__button:hover {
  opacity: 0.8;
}

.p-recruit2__button::after {
  position: absolute;
  content: "";
  background-image: url(../images/recruit2/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 3.7rem;
  height: 1.4rem;
  top: 50%;
  transform: translateY(-50%);
  right: 3.6rem;
}

.p-recruit3 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-recruit3 {
    padding-top: 24.1rem;
    padding-bottom: 24.1rem;
  }
}

.p-recruit3__inner {
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
  position: relative;
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
}

@media screen and (min-width: 768px) {
  .p-recruit3__inner {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    max-width: none;
    padding: 0;
    flex-direction: row;
    align-items: flex-start;
    -moz-column-gap: 7.35rem;
    column-gap: 7.35rem;
  }
}

@media screen and (min-width: 768px) {
  .p-recruit3__img {
    flex-shrink: 0;
    max-width: 43.4375vw;
  }
}

.p-recruit3__img::before {
  padding-top: 72.4220623501%;
}

.p-recruit3__block {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-recruit3__block {
    padding-right: 2.5rem;
    max-width: 49.6rem;
    margin-top: -0.4rem;
  }
}

.p-recruit3__enTitle {
  font-size: 1.4rem;
  text-transform: uppercase;
  font-family: "Inter", sans-serif;
  letter-spacing: 0.08em;
  font-weight: 500;
  color: #F77700;
}

@media screen and (min-width: 768px) {
  .p-recruit3__enTitle {
    font-size: 1.6rem;
  }
}

.p-recruit3__theme {
  font-size: 2.4rem;
  font-family: "Noto Serif JP", serif;
  letter-spacing: 0.08em;
  font-weight: 500;
  margin-top: -0.4rem;
}

@media screen and (min-width: 768px) {
  .p-recruit3__theme {
    font-size: 3.4rem;
    margin-top: -0.2rem;
  }
}

.p-recruit3__title {
  margin-top: 2rem;
  font-size: 1.8rem;
  letter-spacing: 0.08em;
  line-height: 1.5238095238;
}

@media screen and (min-width: 768px) {
  .p-recruit3__title {
    margin-top: 3.4rem;
    font-size: 2.1rem;
  }
}

.p-recruit3__text {
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 2;
  margin-top: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-recruit3__text {
    margin-top: 1.7rem;
    font-size: 1.6rem;
    line-height: 2.375;
  }
}

.p-recruit3__wrap {
  text-align: center;
  margin-top: 3.6rem;
}

@media screen and (min-width: 768px) {
  .p-recruit3__wrap {
    text-align: left;
  }
}

.p-recruit3__button {
  display: inline-block;
  font-family: "Oswald", sans-serif;
  text-transform: uppercase;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: #F77700;
  text-align: center;
  width: 24.4rem;
  padding: 1.35rem 0.8rem 1.35rem 0;
  position: relative;
  transition: opacity 0.3s ease-out;
}

.p-recruit3__button:hover {
  opacity: 0.8;
}

.p-recruit3__button::after {
  position: absolute;
  content: "";
  background-image: url(../images/about1/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 2.7rem;
  height: 1rem;
  top: 50%;
  transform: translateY(-50%);
  right: 2.6rem;
}

.p-recruit3__bg {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-recruit3__bg {
    display: block;
    position: absolute;
    right: 0;
    bottom: -7.7rem;
    z-index: -1;
    width: 100%;
    max-width: 87.9861111111vw;
    background-color: #EFF5F5;
  }
}

.p-recruit3__bg::before {
  content: "";
  display: block;
  padding-top: 23.046566693%;
}

.p-recruit3__bg::after {
  content: "recruit";
  font-family: "Oswald", sans-serif;
  display: block;
  font-size: 12rem;
  letter-spacing: 0.13em;
  text-transform: uppercase;
  position: absolute;
  bottom: -0.3rem;
  right: 0.7rem;
  z-index: 1;
  color: #fff;
  font-weight: 400;
  line-height: 1;
}

.p-information1 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-information1 {
    padding-top: 33.4rem;
    padding-bottom: 33.4rem;
  }
}

.p-information1__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-information1__inner {
    max-width: 105rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-information1__thumbnails {
  width: 100%;
  margin-top: 1.7rem;
}

@media screen and (min-width: 768px) {
  .p-information1__thumbnails {
    max-width: 85rem;
    margin-inline: auto;
  }
}

.p-information1 .p-information1__slider .swiper-slide::before {
  padding-top: 43.4%;
}

.p-information1 .p-information1__slider .swiper-slide img {
  border-radius: 2rem;
}

.p-information1 .p-information1__thumbnails .swiper-wrapper {
  -moz-column-gap: 0.6rem;
  column-gap: 0.6rem;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-information1 .p-information1__thumbnails .swiper-wrapper {
    -moz-column-gap: 1.6666666667rem;
    column-gap: 1.6666666667rem;
  }
}

.p-information1 .p-information1__thumbnails .swiper-slide {
  max-width: calc(25% - 0.45rem);
}

@media screen and (min-width: 768px) {
  .p-information1 .p-information1__thumbnails .swiper-slide {
    max-width: 20rem;
    cursor: pointer;
  }
}

.p-information1 .p-information1__thumbnails .swiper-slide img {
  border-radius: 1rem;
}

.p-information1 .p-information1__thumbnails .swiper-slide::before {
  padding-top: 60%;
}

@media screen and (min-width: 768px) {
  .p-information1 .p-information1__thumbnails .swiper-slide::before {
    padding-top: 50%;
  }
}

.p-information1__about {
  margin-top: 2rem;
  display: grid;
}

@media screen and (min-width: 768px) {
  .p-information1__about {
    margin-top: 4rem;
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 6.4rem;
    column-gap: 6.4rem;
    max-width: 98.4rem;
    margin-inline: auto;
  }
}

.p-information1__list {
  display: flex;
  align-items: flex-start;
  padding: 1.8rem 0;
  width: 100%;
  border-bottom: 1px solid #5B9FD6;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 1.5;
}

@media screen and (min-width: 768px) {
  .p-information1__list {
    padding: 2.8rem 0 1.5rem;
    font-size: 1.6rem;
  }
}

.p-information1__term {
  flex-shrink: 0;
  font-weight: bold;
  width: 8.4rem;
}

@media screen and (min-width: 768px) {
  .p-information1__term {
    width: 10.5rem;
  }
}

.p-information2 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-information2 {
    padding-top: 11rem;
    padding-bottom: 11rem;
  }
}

.p-information2__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-information2__inner {
    max-width: 125rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-information2__enTitle {
  width: 15.2rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-information2__enTitle {
    width: 19.6rem;
  }
}

.p-information2__title {
  font-weight: 500;
  text-align: center;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-information2__title {
    margin-top: 0.6rem;
  }
}

.p-information2__name {
  margin-top: 2rem;
  font-family: "Sawarabi Mincho", serif;
  color: #3872B7;
  font-size: 2.4rem;
  text-align: center;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-information2__name {
    margin-top: 3rem;
    font-size: 4.9rem;
  }
}

.p-information2__name::before {
  content: "";
  display: block;
  background-color: #3872B7;
  height: 6.4rem;
  width: 2px;
  margin-bottom: 1.4rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-information2__name::before {
    margin-bottom: 3.3rem;
    height: 9.3rem;
  }
}

.p-information2__text {
  margin-top: 1.4rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2.75;
}

@media screen and (min-width: 768px) {
  .p-information2__text {
    text-align: center;
    margin-top: 1.6rem;
    font-size: 1.6rem;
  }
}

.p-information2__img {
  margin-top: 3rem;
}

@media screen and (min-width: 768px) {
  .p-information2__img {
    margin-top: 3.9rem;
    max-width: 100rem;
    margin-inline: auto;
  }
}

.p-information2__img::before {
  padding-top: 44.2%;
}

.p-information2__about {
  margin-top: 1rem;
  display: grid;
}

@media screen and (min-width: 768px) {
  .p-information2__about {
    margin-top: 0.6rem;
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 6.4rem;
    column-gap: 6.4rem;
    max-width: 98.4rem;
    margin-inline: auto;
  }
}

.p-information2__list {
  display: flex;
  align-items: flex-start;
  padding: 1.8rem 0;
  width: 100%;
  border-bottom: 1px solid #3572B7;
  font-size: 1.6rem;
  letter-spacing: 0.08em;
  line-height: 1.45;
}

@media screen and (min-width: 768px) {
  .p-information2__list {
    padding: 2.6rem 0 1rem;
    font-size: 2rem;
  }
}

.p-information2__term {
  flex-shrink: 0;
  font-weight: bold;
  width: 8.4rem;
}

@media screen and (min-width: 768px) {
  .p-information2__term {
    width: 11rem;
  }
}

.p-staff1 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-staff1 {
    padding-top: 10.5rem;
    padding-bottom: 10.5rem;
  }
}

.p-staff1__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-staff1__inner {
    max-width: 125rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-staff1__enTitle {
  width: 13.7rem;
  margin-inline: auto;
}

.p-staff1__title {
  margin-top: 0.7rem;
  text-align: center;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-size: 2.8rem;
  font-weight: 700;
  letter-spacing: 0.11em;
}

@media screen and (min-width: 768px) {
  .p-staff1__title {
    margin-top: 1.5rem;
    font-size: 4.7rem;
  }
}

.p-staff1__container {
  margin-top: 2.8rem;
}

@media screen and (min-width: 768px) {
  .p-staff1__container {
    margin-top: 3.6rem;
  }
}

.p-staff1__block {
  border: 1px solid #5B9FD6;
  border-radius: 2rem;
  padding: 3.4rem 1.5rem 3.2rem;
}

@media screen and (min-width: 768px) {
  .p-staff1__block {
    padding: 3.8rem 3rem 3.4rem;
    display: flex;
    align-items: flex-start;
  }
}

.p-staff1__block:nth-of-type(n+2) {
  margin-top: 2.5rem;
}

.p-staff1__img {
  margin-inline: auto;
  max-width: 21.5rem;
}

@media screen and (min-width: 768px) {
  .p-staff1__img {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-staff1__img::before {
  padding-top: 100%;
}

.p-staff1__img img {
  border-radius: 50%;
}

.p-staff1__info {
  width: 100%;
  margin-top: 2.4rem;
}

@media screen and (min-width: 768px) {
  .p-staff1__info {
    margin: 1.3rem 0 0 4.6rem;
    max-width: 38rem;
  }
}

.p-staff1__name {
  font-size: 2rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid #3F3F3F;
}

@media screen and (min-width: 768px) {
  .p-staff1__name {
    padding-bottom: 1.1rem;
    font-size: 2.9rem;
  }
}

.p-staff1__name span {
  font-size: 1.4rem;
  margin-left: 1.4rem;
  color: #3872B7;
}

.p-staff1__list {
  margin-top: 1.2rem;
}

@media screen and (min-width: 768px) {
  .p-staff1__list {
    margin-top: 1.6rem;
  }
}

.p-staff1__item {
  display: flex;
  align-items: center;
  line-height: 2;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

.p-staff1__item::before {
  content: "";
  display: block;
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background-color: #38A1DB;
  margin-right: 0.7rem;
}

.p-staff1__field {
  width: 100%;
  background-color: #F1F6FB;
  border-radius: 2rem;
  margin-top: 2rem;
  padding: 2rem 1.2rem 3.2rem;
}

@media screen and (min-width: 768px) {
  .p-staff1__field {
    margin: 1.1rem 0 0 5.3rem;
    max-width: 42.6rem;
    padding: 3.2rem 4.2rem;
    min-height: 19rem;
  }
}

.p-staff1__fieldTitle {
  color: #38A1DB;
  font-weight: 500;
  font-size: 1.8rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-staff1__fieldTitle {
    font-size: 2rem;
  }
}

.p-staff1__fieldTitle span {
  display: inline-block;
  text-align: center;
  width: 100%;
  line-height: 1.2;
}

.p-staff1__fieldTitle span:after {
  background: radial-gradient(circle farthest-side, #5B9FD6, #5B9FD6 25%, transparent 25%, transparent);
  background-size: 5.5px;
  content: "";
  display: inline-block;
  height: 0.8rem;
  width: 100%;
}

.p-staff1__type {
  margin-top: 0.5rem;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  line-height: 2;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-staff1__type {
    margin-top: 1.3rem;
  }
}

.p-staff2 .swiper-slide {
  width: 100%;
  height: 100%;
}

.p-staff2 .swiper-slide::before {
  position: relative;
}

.p-staff2__block {
  position: relative;
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 768px) {
  .p-staff2__block {
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 768px) {
  .p-staff2__img {
    width: 50%;
  }
}

.p-staff2__img img {
  object-fit: contain;
}

.p-staff2__img::before {
  padding-top: 105.5%
}

@media screen and (min-width: 768px) {
  .p-staff2__img::before {
    padding-top: 106.1%;
  }
}

.p-staff2__wrap {
  padding: 3.6rem 2rem 6.8rem;
  background: #F77700;
}

@media screen and (max-width: 767px) {
  .p-staff2__wrap {
    min-height: 800px;
  }
}

@media screen and (min-width: 768px) {
  .p-staff2__wrap {
    padding: 0;
    background: #F77700;
    width: 50%;
    position: relative;
  }
}

.p-staff2__body {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-staff2__body {
    max-width: 79.445%;
    position: absolute;
    top: 10.6%;
    left: 11.6%;
  }
}

.p-staff2__num {
  line-height: 1;
  font-family: Montserrat;
  font-weight: 500;
  font-size: 90px;
  text-align: left;
  color: #fff;
  text-transform: uppercase;
  font-size: 4rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: flex;
}

@media screen and (min-width: 768px) {
  .p-staff2__num {
    font-size: 90px;
  }
}

@media screen and (max-width: 767px) {
  .p-staff2__num {
    align-items: flex-end;
  }
}

.p-staff2__num span {
  font-family: Montserrat;
  font-weight: 500;
  font-size: 47px;
  letter-spacing: 0.08em;
  text-align: left;
  color: #fff;
  margin-top: 0.6rem;
  margin-top: 39px;
}

@media screen and (max-width: 767px) {
  .p-staff2__num span {
    font-size: 30px;
    margin-left: 10px;
  }
}

.p-staff2__position {
  margin-top: 1.4rem;
  font-weight: 500;
  font-size: 1.4rem;
  letter-spacing: 0.16em;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-staff2__position {
    margin-top: 3.4rem;
    font-size: 1.6rem;
  }
}

.p-staff2__info {
  display: flex;
  align-items: center;
  margin-top: 0.2rem;
}

@media screen and (min-width: 768px) {
  .p-staff2__info {
    margin-top: 21px;
  }
}

.p-staff2__name {
  color: #fff;
  background-color: #707070;
  font-family: "Noto Sans JP";
  font-weight: 500;
  font-size: 27px;
  letter-spacing: 0.14em;
  text-align: center;
  color: #fff;
  background: rgba(255, 255, 255, 0.15);
}

@media screen and (min-width: 768px) {
  .p-staff2__name {
    padding: 2px 16px 4px 18px;
  }
}

.p-staff2__name span {
  font-family: "Oswald", sans-serif;
  margin-left: 1.4rem;
  font-size: 1.2rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

@media screen and (min-width: 768px) {
  .p-staff2__name span {
    margin-left: 1.9rem;
    font-size: 1.3rem;
  }
}


.p-staff2__text {
  font-family: "Noto Sans JP";
  font-weight: 500;
  font-size: 12px;
  line-height: 22px;
  text-align: left;
  color: #fff;
  margin-top: 13px;
}

@media screen and (min-width: 768px) {
  .p-staff2__text {
    margin-top: 13px;
    max-width: 57.2rem;
  }
}

.p-staff2__message {
  padding-top: 5.4rem;
  padding-bottom: 5.4rem;
}

@media screen and (min-width: 768px) {
  .p-staff2__message {
    padding-top: 8.3rem;
    padding-bottom: 8.3rem;
  }
}

.p-staff2__messageInner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-staff2__messageInner {
    max-width: 102.5rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-staff2__messageTitle {
  text-align: center;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0.14em;
}

@media screen and (min-width: 768px) {
  .p-staff2__messageTitle {
    font-size: 2.1rem;
  }
}

.p-staff2__messageEnTitle {
  display: block;
  text-align: center;
  color: #B59A24;
  font-weight: 500;
  text-transform: uppercase;
  font-family: "Oswald", sans-serif;
  font-size: 1.4rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .p-staff2__messageEnTitle {
    font-size: 1.6rem;
  }
}

.p-staff2__messageContainer {
  margin-top: 2.2rem;
  background-color: #EFEEED;
  padding: 3rem 1.5rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-staff2__messageContainer {
    margin-top: 2.5rem;
    padding: 5.9rem 2rem;
  }
}

.p-staff2__messageContainer::after {
  content: "message";
  font-size: 3.8rem;
  writing-mode: vertical-rl;
  color: #000;
  opacity: 0.03;
  font-family: "Oswald", sans-serif;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

@media screen and (min-width: 768px) {
  .p-staff2__messageContainer::after {
    right: -1.5rem;
    font-size: 6.7rem;
  }
}

.p-staff2__messageBody {
  display: flex;
  flex-direction: column;
  row-gap: 2.2rem;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-staff2__messageBody {
    margin-inline: auto;
    flex-direction: row;
    align-items: center;
    gap: 0 3.4rem;
    max-width: 79.6rem;
  }
}

.p-staff2__messageImg {
  margin-inline: auto;
  max-width: 21.2rem;
}

@media screen and (min-width: 768px) {
  .p-staff2__messageImg {
    flex-shrink: 0;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-staff2__messageContainer .p-staff2__messageImg::before {
  padding-top: 100%;
}

.p-staff2__messageImg img {
  border-radius: 50%;
}

@media screen and (min-width: 768px) {
  .p-staff2__messageBlock {
    margin-top: 0.6rem;
  }
}

.p-staff2__messageName {
  font-weight: 700;
  letter-spacing: 0.02em;
  font-size: 2rem;
  border-bottom: 1px solid #000;
  padding-bottom: 0.4rem;
}

@media screen and (min-width: 768px) {
  .p-staff2__messageName {
    font-size: 2.2rem;
  }
}

.p-staff2__messageName span {
  display: block;
  text-transform: uppercase;
  font-family: "Oswald", sans-serif;
  font-weight: 400;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  margin-top: 0.2rem;
}

@media screen and (min-width: 768px) {
  .p-staff2__messageName span {
    display: inline-block;
    margin: 0 0 0 1rem;
  }
}

.p-staff2__messageText {
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  line-height: 2.1428571429;
  font-weight: 500;
  margin-top: 1.1rem;
}

.staff__buttonWrapper {
  margin-top: 28px;
  display: flex;
  gap: 2px;
}

@media screen and (max-width: 767px) {
  .staff__buttonWrapper {
    justify-content: space-between;
  }
}

.staff-button-prev,
.staff-button-next {
  font-family: "Noto Sans JP";
  font-weight: 500;
  font-size: 19px;
  letter-spacing: 0.21em;
  text-align: center;
  color: #fff;
  display: inline-block;
  box-sizing: border-box;
  background: rgba(255, 255, 255, 0.15);
  width: 273px;
  position: relative;
  z-index: 10;
  cursor: pointer;
}

@media screen and (max-width: 767px) {

  .staff-button-prev,
  .staff-button-next {
    width: 160px;
    font-size: 14px;
  }
}

.staff-button-prev {
  padding: 15px 0px 15px 32px;
}

.staff-button-prev img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
}

.staff-button-next {
  padding: 15px 13px 15px 0px;
}

.staff-button-next img {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
}

.p-staff3 {
  background-color: #F6F4EE;
  padding-top: 4.8rem;
  padding-bottom: 4.8rem;
}

@media screen and (min-width: 768px) {
  .p-staff3 {
    padding-top: 6.4rem;
    padding-bottom: 6.4rem;
  }
}

.p-staff3__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-staff3__inner {
    max-width: 110.6rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-staff3__enTitle {
  display: block;
  text-align: center;
  font-family: "Cormorant Garamond", serif;
  font-size: 1.3rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.p-staff3__title {
  margin-top: 0.6em;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  letter-spacing: 0.04em;
  font-weight: 700;
  font-size: 2rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-staff3__title {
    margin-top: 0.1rem;
    font-size: 2.9rem;
  }
}

.p-staff3 .swiper {
  width: 100%;
}

.p-staff3 .swiper-wrapper {
  width: 100%;
  padding: 0.6rem 0;
}

.p-staff3 .swiper-slide {
  width: 100%;
}

.p-staff3 .swiper-slide img {
  width: 100%;
  height: 100%;
}

.p-staff3 .swiper-button-staff3-prev,
.p-staff3 .swiper-button-staff3-next {
  width: 4.6rem;
  height: 4.6rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  transform: translateY(-34%);
}

@media screen and (min-width: 768px) {

  .p-staff3 .swiper-button-staff3-prev,
  .p-staff3 .swiper-button-staff3-next {
    width: 7rem;
    height: 7rem;
    transform: translateY(-31%);
  }
}

.p-staff3 .swiper-button-staff3-prev {
  background-image: url(../images/staff3/prev-arrow.svg);
  left: -1.4rem;
}

@media screen and (min-width: 768px) {
  .p-staff3 .swiper-button-staff3-prev {
    left: -2.8vw;
  }
}

.p-staff3 .swiper-button-staff3-next {
  background-image: url(../images/staff3/next-arrow.svg);
  right: -1.4rem;
}

@media screen and (min-width: 768px) {
  .p-staff3 .swiper-button-staff3-next {
    right: -2.8vw;
  }
}

.p-staff3 .swiper-button-staff3-prev:after,
.swiper-rtl .swiper-button-staff3-next:after,
.p-staff3 .swiper-button-staff3-next:after,
.swiper-rtl .swiper-button-staff3-prev:after {
  content: none;
}

.p-staff3__container {
  margin-top: 2rem;
  position: relative;
}

.p-staff3__block {
  background-color: #FFF;
  padding: 4.2rem 2rem;
}

@media screen and (min-width: 768px) {
  .p-staff3__block {
    padding: 4.8rem 2rem 6.1rem;
  }
}

.p-staff3__body {
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-staff3__body {
    max-width: 87.3rem;
    margin-inline: auto;
    display: flex;
    align-items: center;
    -moz-column-gap: 10.1rem;
    column-gap: 10.1rem;
  }
}

@media screen and (min-width: 768px) {
  .p-staff3__img {
    flex-shrink: 0;
    max-width: 30.1rem;
  }
}

.p-staff3__img::before {
  padding-top: 118%;
}

@media screen and (min-width: 768px) {
  .p-staff3__img::before {
    padding-top: 142.5249169435%;
  }
}

.p-staff3__wrap {
  margin-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-staff3__wrap {
    margin-top: 1.5rem;
  }
}

.p-staff3__position {
  color: #B4A46F;
  letter-spacing: 0.04em;
  font-size: 1.6rem;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-staff3__position {
    font-size: 1.8rem;
  }
}

.p-staff3__name {
  font-weight: 500;
  font-size: 2rem;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-staff3__name {
    font-size: 3.1rem;
  }
}

.p-staff3__text {
  margin-top: 1.2rem;
  font-size: 1.4rem;
  letter-spacing: 0.06em;
  line-height: 1.875;
}

@media screen and (min-width: 768px) {
  .p-staff3__text {
    margin-top: 1.6rem;
    line-height: 2.375;
    font-size: 1.6rem;
  }
}

.p-mv1a {
  position: relative;
  padding-top: 5.8rem;
}

@media screen and (min-width: 768px) {
  .p-mv1a {
    padding-top: 7.3rem;
  }
}

.p-mv1a__text {
  position: absolute;
  bottom: 12.2%;
  left: 5.8%;
  z-index: 1;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-mv1a__text {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    bottom: 20.2%;
    left: 6.8%;
  }
}

.p-mv1a__title {
  font-size: 2.8rem;
  letter-spacing: 0.18em;
  line-height: 1.5;
  font-weight: 400;
  position: relative;
  font-family: "Noto Serif JP", serif;
}

@media screen and (min-width: 768px) {
  .p-mv1a__title {
    font-size: 3.7rem;
    letter-spacing: 0.48em;
    line-height: 1.5135135135;
  }
}

.p-mv1a__title::after {
  content: "";
  position: absolute;
  bottom: -1.7rem;
  left: 0;
  display: block;
  max-width: 29.3rem;
  width: 91.5%;
  height: 1px;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-mv1a__title::after {
    max-width: none;
    width: 107.5%;
    bottom: -1.7rem;
  }
}

.p-mv1a__enTitle {
  display: inline-block;
  font-family: "Oswald", sans-serif;
  margin-top: 3.2rem;
  font-weight: 400;
  font-size: 1.2rem;
  letter-spacing: 0.12em;
  white-space: normal;
}

@media screen and (min-width: 768px) {
  .p-mv1a__enTitle {
    font-size: 1.4rem;
    margin-top: 3.5rem;
    letter-spacing: 0.12em;
    line-height: 2.1428571429;
  }
}

.p-mv1a__enTitle::first-letter {
  text-transform: capitalize;
}

.p-mv1a__scroll {
  position: absolute;
  bottom: 9.3rem;
  left: 2.4rem;
}

.p-mv1a__news {
  position: absolute;
  left: 0;
  bottom: -3.8rem;
  display: inline-block;
  background-color: #fff;
  height: 6.4rem;
  padding: 1.2rem 0 0 1.9rem;
  width: 100%;
  max-width: min(82.4vw, 50rem);
  z-index: 2;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-mv1a__news {
    bottom: 0;
    height: 6.8rem;
    max-width: min(49vw, 70.3rem);
    padding: 0 0 0 min(6.6vw, 9.4rem);
    display: flex;
    -moz-column-gap: 5.9rem;
    column-gap: 5.9rem;
    align-items: center;
  }
}

@media screen and (min-width: 768px) and (max-width: 1250px) {
  .p-mv1a__news {
    padding-left: 2.6vw;
  }
}

@media screen and (min-width: 768px) {
  .p-mv1a__news:hover {
    background-color: #000;
    color: #fff;
    opacity: 0.7;
  }
}

.p-mv1a__news::after {
  content: "";
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  top: 4.3rem;
  right: 2.1rem;
  transform: rotate(-45deg) translateY(-6px);
  transition: border 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-mv1a__news::after {
    top: 50%;
    right: 3.4rem;
    width: 0.6rem;
    height: 0.6rem;
    transform: rotate(-45deg) translateY(-3px);
  }
}

.p-mv1a__news:hover::after {
  border-color: #fff;
}

.p-mv1a__newsEnTitle {
  font-family: "Oswald", sans-serif;
  font-size: 1rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 600;
}

@media screen and (min-width: 768px) {
  .p-mv1a__newsEnTitle {
    font-size: 1.1rem;
  }
}

.p-mv1a__newsWrap {
  display: flex;
  align-items: center;
  font-size: 1rem;
  scale: 0.9;
  letter-spacing: 0.08em;
  -moz-column-gap: 0.4rem;
  column-gap: 0.4rem;
  margin-top: 0.5rem;
  font-weight: 500;
  margin: 0.5rem 0 0 -1.5rem;
}

@media screen and (min-width: 768px) {
  .p-mv1a__newsWrap {
    margin: 0;
    -moz-column-gap: 1.9rem;
    column-gap: 1.9rem;
  }
}

.p-mv1a__newsTitle {
  width: 18.5rem;
  /* 省略せずに表示するサイズを指定 */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media screen and (min-width: 768px) {
  .p-mv1a__newsTitle {
    width: min(22.5vw, 32.3rem);
  }
}

.p-mv1a__slider {
  max-width: 94.6666666667vw;
}

@media screen and (min-width: 768px) {
  .p-mv1a__slider {
    max-width: 96.5277777778vw;
  }
}

.p-mv1a__slider .swiper-slide {
  width: 100%;
  height: 100%;
}

.p-mv1a__slider .swiper-slide::before {
  background: rgba(21, 21, 21, 0.2);
  position: relative;
  z-index: 1;
  padding-top: 123.3802816901%;
}

@media screen and (min-width: 768px) {
  .p-mv1a__slider .swiper-slide::before {
    padding-top: 50.3597122302%;
  }
}

/* サムネイル設定 */
.p-mv1a__thumbnail.swiper {
  background-color: #fff;
  padding: 0.6rem;
  position: absolute;
  z-index: 2;
  bottom: -3.3rem;
  right: 9.4rem;
  width: 100%;
  max-width: 38.6rem;
  margin: 0;
}

.p-mv1a__thumbnail .swiper-slide {
  width: 9.3rem;
  cursor: pointer;
}

.p-mv1a__thumbnail .swiper-slide::before {
  position: relative;
  z-index: 1;
  background: rgba(54, 54, 54, 0.3);
  padding-top: 59.1397849462%;
}

.p-mv1a .swiper-slide-thumb-active::after {
  content: "";
  display: block;
  width: 1.8rem;
  height: 0.6rem;
  position: absolute;
  background: #C20E23;
  z-index: 100;
  top: -0.6rem;
  left: 50%;
  transform: translateX(-50%);
}

.p-mv1aHeader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  background-color: #fff;
  height: 5.8rem;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .p-mv1aHeader {
    height: 7.3rem;
  }
}

.p-mv1aHeader__logo {
  width: 11.3rem;
  margin-left: 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-mv1aHeader__logo {
    margin-left: 2.9rem;
  }
}

.p-mv1aNav {
  position: fixed;
  top: 5.8rem;
  left: 0;
  width: 100%;
  height: calc(100vh - 5.8rem);
  background-color: #fff;
  z-index: 100;
  transform: translateX(-100%);
  transition: transform 0.4s ease-out;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
  padding-top: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-mv1aNav {
    position: static;
    max-width: min(85vw, 112rem);
    height: 100%;
    opacity: 1;
    visibility: visible;
    overflow: visible;
    transform: translateX(0);
    margin-left: auto;
    background-color: transparent;
    padding-top: 0;
  }
}

.p-mv1aNav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-mv1aNav__inner {
  width: 100%;
  padding: 0 2.4rem 11.2rem;
  min-height: 100%;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv1aNav__inner {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 2.4rem 0 0;
  }
}

.p-mv1aNav__inner::after {
  content: "";
  display: block;
  width: 100vw;
  height: 10px;
  background-color: #000;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 calc(50% - 50vw);
}

@media screen and (min-width: 768px) {
  .p-mv1aNav__inner::after {
    content: none;
  }
}

.p-mv1aNav__container {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-mv1aNav__container {
    max-width: min(56vw, 70rem);
    display: flex;
    justify-content: flex-end;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-mv1aNav__link {
  display: block;
  width: 100%;
  letter-spacing: 0.08em;
  font-weight: 400;
  padding: 2.8rem 0 1.3rem;
  border-bottom: 1px solid #000;
  position: relative;
  font-size: 1.5rem;
  font-family: "Noto Serif JP", serif;
}

@media screen and (min-width: 768px) {
  .p-mv1aNav__link {
    font-size: 1.2rem;
    padding: 0 1.7rem;
    width: auto;
    border: none;
    display: flex;
    align-items: center;
  }
}

.p-mv1aNav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 57%;
  right: 1.5rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-mv1aNav__link::after {
    content: none;
  }
}

.p-mv1aNav__menu {
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  margin-top: 3.5rem;
}

@media screen and (min-width: 768px) {
  .p-mv1aNav__menu {
    margin-top: 0;
    justify-content: flex-end;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    margin-left: 2.8rem;
  }
}

.p-mv1aNav__circle {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 4.2rem;
  height: 4.2rem;
}

@media screen and (min-width: 768px) {
  .p-mv1aNav__circle {
    width: 2.8rem;
    height: 2.8rem;
  }
}

.p-mv1aNav__circle--instagram {
  background-image: url(../images/mv1a/icon-instagram.svg);
}

.p-mv1aNav__circle--facebook {
  background-image: url(../images/mv1a/icon-facebook.svg);
}

.p-mv1aNav__button {
  margin-top: 3.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #B72121;
  width: 100%;
  max-width: 28rem;
  color: #fff;
  margin-inline: auto;
  padding: 1.3rem 0;
  font-size: 1.3rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
  position: relative;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-mv1aNav__button {
    font-size: 1.2rem;
    max-width: 15.2rem;
    padding: 0.85rem 0;
    margin-top: 0;
    -webkit-margin-start: 3rem;
    margin-inline-start: 3rem;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-mv1aNav__button:hover {
  opacity: 0.8;
}

.p-mv1aNav__button::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 1.5rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(-45deg) translateY(-50%);
}

@media screen and (min-width: 768px) {
  .p-mv1aNav__button::after {
    content: none;
  }
}

.p-mv1aNav__button span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.p-mv1aNav__button span::before {
  content: "";
  display: block;
  width: 1.2rem;
  height: 0.9rem;
  background-image: url(../images/mv1a/mail.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin-right: 0.3rem;
}

.p-mv1aHamburger {
  background-color: #000;
  width: 5.8rem;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  cursor: pointer;
}

.p-mv1aHamburger__button {
  display: block;
  width: 2rem;
  height: 1.5rem;
  position: relative;
}

.p-mv1aHamburger__button span {
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #fff;
  transition: 0.3s;
}

.p-mv1aHamburger__button span:first-child {
  top: 0;
}

.p-mv1aHamburger__button span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}

.p-mv1aHamburger__button span:last-child {
  bottom: 0;
}

.p-mv1aHamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
}

.p-mv1aHamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-mv1aHamburger__button.open span:nth-child(2) {
  display: none;
}

.p-mv1aHamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-mv1aScroll {
  width: 1.5rem;
  height: 16.7rem;
}

.p-mv1aScroll::before,
.p-mv1aScroll::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.p-mv1aScroll::before {
  width: 1px;
  height: 11rem;
  background-color: #fff;
  z-index: 1;
  bottom: 0;
}

.p-mv1aScroll::after {
  width: 0.5rem;
  height: 0.5rem;
  background-color: #AD0000;
  border-radius: 50%;
  z-index: 1;
}

.p-mv1aScroll::after {
  -webkit-animation: circleMoveMv1a 2.7s ease-in-out infinite;
  animation: circleMoveMv1a 2.7s ease-in-out infinite;
}

.p-mv1aScroll span {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  font-family: "Inter", sans-serif;
  color: #fff;
  letter-spacing: 0.08em;
  font-weight: 300;
  font-size: 1rem;
  text-align: center;
  text-transform: uppercase;
  z-index: 1;
  white-space: nowrap;
  writing-mode: vertical-rl;
}

@-webkit-keyframes circleMoveMv1a {
  0% {
    bottom: 11.25rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.25rem;
    opacity: 0;
  }
}

@keyframes circleMoveMv1a {
  0% {
    bottom: 11.25rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.25rem;
    opacity: 0;
  }
}

.p-mv1b {
  position: relative;
  padding-top: 5.8rem;
}

@media screen and (min-width: 768px) {
  .p-mv1b {
    padding-top: 7.3rem;
  }
}

.p-mv1b__text {
  width: 100%;
  position: absolute;
  top: 26.4%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  color: #fff;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-mv1b__text {
    top: 29.4%;
  }
}

.p-mv1b__title {
  font-size: 2.8rem;
  letter-spacing: 0.18em;
  line-height: 1.5;
  font-weight: 700;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv1b__title {
    font-size: 4.2rem;
    letter-spacing: 0.08em;
    line-height: 1.4285714286;
  }
}

.p-mv1b__title::after {
  content: "";
  position: absolute;
  bottom: -2.3rem;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: 6.3rem;
  height: 1px;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-mv1b__title::after {
    width: 7.9rem;
    bottom: -2.5rem;
  }
}

.p-mv1b__enTitle {
  display: inline-block;
  font-family: "Inter", sans-serif;
  margin-top: 5.2rem;
  font-weight: 400;
  font-size: 1.2rem;
  letter-spacing: 0.06em;
  white-space: normal;
}

@media screen and (min-width: 768px) {
  .p-mv1b__enTitle {
    font-size: 1.4rem;
    margin-top: 6.8rem;
    letter-spacing: 0.12em;
    line-height: 2.1428571429;
  }
}

.p-mv1b__enTitle::first-letter {
  text-transform: capitalize;
}

.p-mv1b__scroll {
  position: absolute;
  bottom: 7.4rem;
  left: 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-mv1b__scroll {
    bottom: 9.3rem;
    left: 4.9rem;
  }
}

.p-mv1b__news {
  position: absolute;
  left: 0;
  bottom: 0;
  display: inline-block;
  background-color: #fff;
  height: 6.4rem;
  padding: 1.5rem 0 0 1rem;
  width: 100%;
  max-width: min(78.3vw, 50rem);
  z-index: 2;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-mv1b__news {
    height: 6.8rem;
    max-width: min(49vw, 70.3rem);
    padding: 0 0 0 min(6.6vw, 9.4rem);
    display: flex;
    -moz-column-gap: 5.1rem;
    column-gap: 5.1rem;
    align-items: center;
  }
}

@media screen and (min-width: 768px) and (max-width: 1250px) {
  .p-mv1b__news {
    padding-left: 2.6vw;
  }
}

@media screen and (min-width: 768px) {
  .p-mv1b__news:hover {
    background-color: #000;
    color: #fff;
    opacity: 0.7;
  }
}

.p-mv1b__news::after {
  content: "";
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  top: 4.3rem;
  right: 1.5rem;
  transform: rotate(-45deg) translateY(-6px);
  transition: border 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-mv1b__news::after {
    top: 50%;
    right: 3.4rem;
    width: 0.6rem;
    height: 0.6rem;
    transform: rotate(-45deg) translateY(-3px);
  }
}

.p-mv1b__news:hover::after {
  border-color: #fff;
}

.p-mv1b__newsEnTitle {
  font-family: "Inter", sans-serif;
  font-size: 1rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 600;
}

@media screen and (min-width: 768px) {
  .p-mv1b__newsEnTitle {
    font-size: 1.1rem;
  }
}

.p-mv1b__newsWrap {
  display: flex;
  align-items: center;
  font-size: 1rem;
  scale: 0.9;
  letter-spacing: 0.08em;
  -moz-column-gap: 0.4rem;
  column-gap: 0.4rem;
  margin-top: 0.5rem;
  font-weight: 500;
  margin: 0.3rem 0 0 -1.6rem;
}

@media screen and (min-width: 768px) {
  .p-mv1b__newsWrap {
    margin: 0;
    -moz-column-gap: 1.9rem;
    column-gap: 1.9rem;
  }
}

.p-mv1b__newsTitle {
  width: 18.5rem;
  /* 省略せずに表示するサイズを指定 */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media screen and (min-width: 768px) {
  .p-mv1b__newsTitle {
    width: min(22.5vw, 32.3rem);
  }
}

.p-mv1b__slider .swiper-slide {
  width: 100%;
  height: 100%;
}

.p-mv1b__slider .swiper-slide::before {
  background: rgba(4, 11, 18, 0.4);
  position: relative;
  z-index: 1;
  padding-top: 149.6%;
}

@media screen and (min-width: 768px) {
  .p-mv1b__slider .swiper-slide::before {
    padding-top: 48.6111111111%;
  }
}

.p-mv1b__slider .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.p-mv1b__slider .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 1rem 0 0;
}

@media screen and (min-width: 768px) {

  .p-mv1b__slider .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
  .p-mv1b__slider .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin-right: 1.8rem;
  }
}

.p-mv1b__slider .swiper-horizontal>.swiper-pagination-bullets,
.p-mv1b__slider .swiper-pagination-bullets.swiper-pagination-horizontal,
.p-mv1b__slider .swiper-pagination-custom,
.p-mv1b__slider .swiper-pagination-fraction {
  position: absolute;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  right: 0.8rem;
  bottom: 1rem;
  margin: 0 0 0 auto;
}

@media screen and (min-width: 768px) {

  .p-mv1b__slider .swiper-horizontal>.swiper-pagination-bullets,
  .p-mv1b__slider .swiper-pagination-bullets.swiper-pagination-horizontal,
  .p-mv1b__slider .swiper-pagination-custom,
  .p-mv1b__slider .swiper-pagination-fraction {
    right: 2.4rem;
    bottom: 2.5rem;
  }
}

.p-mv1b__slider .swiper-pagination-bullet {
  width: 0.8rem;
  height: 0.8rem;
  background: transparent;
  border: 1px solid #fff;
  opacity: 1;
}

@media screen and (min-width: 768px) {
  .p-mv1b__slider .swiper-pagination-bullet {
    width: 1.3rem;
    height: 1.3rem;
  }
}

.p-mv1b__slider .swiper-pagination-bullet-active {
  background: #fff;
}

.p-mv1bHeader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  background-color: #fff;
  height: 5.8rem;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .p-mv1bHeader {
    height: 7.3rem;
  }
}

.p-mv1bHeader__logo {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  top: 0;
  left: 0;
  width: 14.3rem;
  height: 7.8rem;
  background-color: #000;
}

@media screen and (min-width: 768px) {
  .p-mv1bHeader__logo {
    width: 23rem;
    height: 12.5rem;
  }
}

.p-mv1bHeader__logo img {
  width: 8.6rem;
  transition: transform 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-mv1bHeader__logo img {
    width: 11.3rem;
  }
}

.p-mv1bHeader__logo:hover img {
  transform: scale(1.05);
}

.p-mv1bHeader__hamburger {
  margin-left: auto;
}

.p-mv1bNav {
  position: fixed;
  top: 5.8rem;
  left: 0;
  width: 100%;
  height: calc(100vh - 5.8rem);
  background-color: #fff;
  z-index: -1;
  transform: translateX(-100%);
  transition: transform 0.4s ease-out;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
  padding-top: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-mv1bNav {
    z-index: auto;
    position: static;
    max-width: min(85vw, 112rem);
    height: 100%;
    opacity: 1;
    visibility: visible;
    overflow: visible;
    transform: translateX(0);
    margin-left: auto;
    background-color: transparent;
    padding-top: 0;
  }
}

.p-mv1bNav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-mv1bNav__inner {
  width: 100%;
  padding: 0 2.4rem 11.2rem;
  min-height: 100%;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv1bNav__inner {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 2.4rem 0 0;
  }
}

.p-mv1bNav__inner::after {
  content: "";
  display: block;
  width: 100vw;
  height: 10px;
  background-color: #000;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 calc(50% - 50vw);
}

@media screen and (min-width: 768px) {
  .p-mv1bNav__inner::after {
    content: none;
  }
}

.p-mv1bNav__container {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-mv1bNav__container {
    max-width: min(56vw, 70rem);
    display: flex;
    justify-content: flex-end;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-mv1bNav__link {
  display: block;
  width: 100%;
  letter-spacing: 0.08em;
  font-weight: 400;
  padding: 2.8rem 0 1.3rem;
  border-bottom: 1px solid #000;
  position: relative;
  font-size: 1.5rem;
  font-family: "Noto Serif JP", serif;
}

@media screen and (min-width: 768px) {
  .p-mv1bNav__link {
    font-size: 1.2rem;
    padding: 0 1.7rem;
    width: auto;
    border: none;
    display: flex;
    align-items: center;
  }
}

.p-mv1bNav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 57%;
  right: 1.5rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-mv1bNav__link::after {
    content: none;
  }
}

.p-mv1bNav__menu {
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  margin-top: 3.5rem;
}

@media screen and (min-width: 768px) {
  .p-mv1bNav__menu {
    margin-top: 0;
    justify-content: flex-end;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    margin-left: 2.8rem;
  }
}

.p-mv1bNav__circle {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 4.2rem;
  height: 4.2rem;
}

@media screen and (min-width: 768px) {
  .p-mv1bNav__circle {
    width: 2.8rem;
    height: 2.8rem;
  }
}

.p-mv1bNav__circle--instagram {
  background-image: url(../images/mv1b/icon-instagram.svg);
}

.p-mv1bNav__circle--facebook {
  background-image: url(../images/mv1b/icon-facebook.svg);
}

.p-mv1bNav__button {
  margin-top: 3.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #2E4A90;
  width: 100%;
  max-width: 28rem;
  color: #fff;
  margin-inline: auto;
  padding: 1.3rem 0;
  font-size: 1.3rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
  position: relative;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-mv1bNav__button {
    font-size: 1.2rem;
    max-width: 15.2rem;
    padding: 0.85rem 0;
    margin-top: 0;
    -webkit-margin-start: 3rem;
    margin-inline-start: 3rem;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-mv1bNav__button:hover {
  opacity: 0.8;
}

.p-mv1bNav__button::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 1.5rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(-45deg) translateY(-50%);
}

@media screen and (min-width: 768px) {
  .p-mv1bNav__button::after {
    content: none;
  }
}

.p-mv1bNav__button span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.p-mv1bNav__button span::before {
  content: "";
  display: block;
  width: 1.2rem;
  height: 0.9rem;
  background-image: url(../images/mv1b/mail.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin-right: 0.3rem;
}

.p-mv1bHamburger {
  width: 5.8rem;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

.p-mv1bHamburger__button {
  display: block;
  width: 2rem;
  height: 1.5rem;
  position: relative;
}

.p-mv1bHamburger__button span {
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #000;
  transition: 0.3s;
}

.p-mv1bHamburger__button span:first-child {
  top: 0;
}

.p-mv1bHamburger__button span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}

.p-mv1bHamburger__button span:last-child {
  bottom: 0;
}

.p-mv1bHamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
}

.p-mv1bHamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-mv1bHamburger__button.open span:nth-child(2) {
  display: none;
}

.p-mv1bHamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-mv1bScroll {
  width: 1.5rem;
  height: 13.8rem;
}

@media screen and (min-width: 768px) {
  .p-mv1bScroll {
    height: 16.7rem;
  }
}

.p-mv1bScroll::before,
.p-mv1bScroll::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.p-mv1bScroll::before {
  width: 1px;
  height: 8.3rem;
  background-color: #fff;
  z-index: 1;
  bottom: 0;
}

@media screen and (min-width: 768px) {
  .p-mv1bScroll::before {
    height: 11rem;
  }
}

.p-mv1bScroll::after {
  width: 0.5rem;
  height: 0.5rem;
  background-color: #F77700;
  border-radius: 50%;
  z-index: 1;
}

.p-mv1bScroll::after {
  -webkit-animation: circleMoveSpMv1b 2s ease-in-out infinite;
  animation: circleMoveSpMv1b 2s ease-in-out infinite;
}

@media screen and (min-width: 768px) {
  .p-mv1bScroll::after {
    -webkit-animation: circleMovePcMv1b 2.7s ease-in-out infinite;
    animation: circleMovePcMv1b 2.7s ease-in-out infinite;
  }
}

.p-mv1bScroll span {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  font-family: "Inter", sans-serif;
  color: #fff;
  font-weight: 300;
  font-size: 1rem;
  letter-spacing: 0.2em;
  text-align: center;
  text-transform: uppercase;
  z-index: 1;
  white-space: nowrap;
  writing-mode: vertical-rl;
}

@media screen and (min-width: 768px) {
  .p-mv1bScroll span {
    letter-spacing: 0.08em;
  }
}

@-webkit-keyframes circleMoveSpMv1b {
  0% {
    bottom: 8.55rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.25rem;
    opacity: 0;
  }
}

@keyframes circleMoveSpMv1b {
  0% {
    bottom: 8.55rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.25rem;
    opacity: 0;
  }
}

@-webkit-keyframes circleMovePcMv1b {
  0% {
    bottom: 11.25rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.25rem;
    opacity: 0;
  }
}

@keyframes circleMovePcMv1b {
  0% {
    bottom: 11.25rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.25rem;
    opacity: 0;
  }
}

.p-mv1c {
  position: relative;
}

.p-mv1c__text {
  width: 100%;
  position: absolute;
  top: 32.8%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
  color: #fff;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-mv1c__text {
    width: auto;
    text-align: left;
    transform: none;
    top: 24.2%;
    left: 12.5%;
  }
}

.p-mv1c__title {
  font-size: 2.8rem;
  letter-spacing: 0.18em;
  line-height: 1.5;
  font-weight: 400;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv1c__title {
    font-size: 4.5rem;
    letter-spacing: 0.2em;
    line-height: 1.7555555556;
  }
}

.p-mv1c__title::after {
  content: "";
  position: absolute;
  bottom: -2.3rem;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: 6.3rem;
  height: 1px;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-mv1c__title::after {
    width: 7.9rem;
    bottom: -3.3rem;
    transform: none;
    left: 0.6rem;
  }
}

.p-mv1c__enTitle {
  display: inline-block;
  font-family: "Oswald", sans-serif;
  margin-top: 5.2rem;
  font-weight: 400;
  font-size: 1.2rem;
  letter-spacing: 0.06em;
  white-space: normal;
}

@media screen and (min-width: 768px) {
  .p-mv1c__enTitle {
    font-size: 1.4rem;
    margin-top: 8.2rem;
    letter-spacing: 0.12em;
    line-height: 2.1428571429;
  }
}

.p-mv1c__enTitle::first-letter {
  text-transform: capitalize;
}

.p-mv1c__scroll {
  position: absolute;
  bottom: 1.6rem;
  right: 2.5rem;
}

@media screen and (min-width: 768px) {
  .p-mv1c__scroll {
    bottom: 2.2rem;
    right: 3.9rem;
  }
}

.p-mv1c__news {
  position: absolute;
  left: 0;
  bottom: 0;
  display: inline-block;
  background-color: #fff;
  height: 6.4rem;
  padding: 1.5rem 0 0 1rem;
  width: 100%;
  max-width: min(79.8vw, 50rem);
  z-index: 2;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-mv1c__news {
    height: 6.8rem;
    max-width: min(49vw, 70.3rem);
    padding: 0 0 0 min(6.6vw, 9.4rem);
    display: flex;
    -moz-column-gap: 5.1rem;
    column-gap: 5.1rem;
    align-items: center;
  }
}

@media screen and (min-width: 768px) and (max-width: 1250px) {
  .p-mv1c__news {
    padding-left: 2.6vw;
  }
}

@media screen and (min-width: 768px) {
  .p-mv1c__news:hover {
    background-color: #000;
    color: #fff;
    opacity: 0.7;
  }
}

.p-mv1c__news::after {
  content: "";
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  top: 4.3rem;
  right: 2.1rem;
  transform: rotate(-45deg) translateY(-6px);
  transition: border 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-mv1c__news::after {
    top: 50%;
    right: 3.4rem;
    width: 0.6rem;
    height: 0.6rem;
    transform: rotate(-45deg) translateY(-3px);
  }
}

.p-mv1c__news:hover::after {
  border-color: #fff;
}

.p-mv1c__newsEnTitle {
  font-family: "Inter", sans-serif;
  font-size: 1rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 600;
}

@media screen and (min-width: 768px) {
  .p-mv1c__newsEnTitle {
    font-size: 1.1rem;
  }
}

.p-mv1c__newsWrap {
  display: flex;
  align-items: center;
  font-size: 1rem;
  scale: 0.9;
  letter-spacing: 0.08em;
  -moz-column-gap: 0.4rem;
  column-gap: 0.4rem;
  margin-top: 0.5rem;
  font-weight: 500;
  margin: 0.3rem 0 0 -1.6rem;
}

@media screen and (min-width: 768px) {
  .p-mv1c__newsWrap {
    margin: 0;
    -moz-column-gap: 1.9rem;
    column-gap: 1.9rem;
  }
}

.p-mv1c__newsTitle {
  width: 18.5rem;
  /* 省略せずに表示するサイズを指定 */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media screen and (min-width: 768px) {
  .p-mv1c__newsTitle {
    width: min(22.5vw, 32.3rem);
  }
}

.p-mv1c__slider .swiper-slide {
  width: 100%;
  height: 100%;
}

.p-mv1c__slider .swiper-slide::before {
  background: rgba(21, 31, 17, 0.15);
  position: relative;
  z-index: 1;
  padding-top: 177.3333333333%;
}

@media screen and (min-width: 768px) {
  .p-mv1c__slider .swiper-slide::before {
    padding-top: 53.6805555556%;
  }
}

.p-mv1c__slider .swiper-pagination {
  color: transparent;
  display: flex;
  align-items: center;
  font-family: "Inter", sans-serif;
  position: absolute;
  left: 1.7rem;
  bottom: 7.6rem;
}

@media screen and (min-width: 768px) {
  .p-mv1c__slider .swiper-pagination {
    left: 3rem;
    bottom: 8.5rem;
  }
}

.p-mv1c__slider .swiper-pagination-current {
  position: relative;
}

.p-mv1c__slider .swiper-pagination-current,
.p-mv1c__slider .swiper-pagination-total {
  color: #fff;
  display: block;
  font-size: 1.4rem;
}

.p-mv1c__slider .swiper-pagination-total {
  margin-left: 5rem;
}

.p-mv1c__slider .swiper-pagination-current::before,
.p-mv1c__slider .swiper-pagination-total::before {
  content: "0";
  display: inline;
}

.p-mv1c__slider .swiper-pagination-current::after {
  content: "";
  display: block;
  width: 4rem;
  height: 1px;
  background-color: #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -5rem;
}

.p-mv1cHeader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  height: 5.8rem;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .p-mv1cHeader {
    height: 7.3rem;
  }
}

.p-mv1cHeader__logo {
  width: 12.3rem;
  margin-left: 1.9rem;
}

@media screen and (min-width: 768px) {
  .p-mv1cHeader__logo {
    width: 16.8rem;
    margin-left: 3.5rem;
  }
}

.p-mv1cNav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: #fff;
  z-index: -1;
  transform: translateX(-100%);
  transition: transform 0.4s ease-out;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
  padding-top: 7.4rem;
}

@media screen and (min-width: 768px) {
  .p-mv1cNav {
    z-index: auto;
    position: static;
    max-width: min(85vw, 112rem);
    height: 100%;
    opacity: 1;
    visibility: visible;
    overflow: visible;
    transform: translateX(0);
    margin-left: auto;
    background-color: transparent;
    padding-top: 0;
  }
}

.p-mv1cNav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-mv1cNav__inner {
  width: 100%;
  padding: 0 2.4rem 11.2rem;
  min-height: 100%;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv1cNav__inner {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0 2.4rem 0 0;
  }
}

.p-mv1cNav__inner::after {
  content: "";
  display: block;
  width: 100vw;
  height: 10px;
  background-color: #000;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 calc(50% - 50vw);
}

@media screen and (min-width: 768px) {
  .p-mv1cNav__inner::after {
    content: none;
  }
}

.p-mv1cNav__container {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-mv1cNav__container {
    max-width: min(56vw, 70rem);
    display: flex;
    justify-content: flex-end;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-mv1cNav__link {
  display: block;
  width: 100%;
  letter-spacing: 0.08em;
  font-weight: 500;
  padding: 2.8rem 0 1.3rem;
  border-bottom: 1px solid #000;
  position: relative;
  font-size: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-mv1cNav__link {
    font-size: 1.2rem;
    padding: 0 1.7rem;
    color: #fff;
    width: auto;
    border: none;
    display: flex;
    align-items: center;
  }
}

.p-mv1cNav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 57%;
  right: 1.5rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-mv1cNav__link::after {
    content: none;
  }
}

.p-mv1cNav__menu {
  display: flex;
  align-items: center;
  justify-content: center;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  margin-top: 3.5rem;
}

@media screen and (min-width: 768px) {
  .p-mv1cNav__menu {
    margin-top: 0;
    justify-content: flex-end;
    -moz-column-gap: 1rem;
    column-gap: 1rem;
    margin-left: 2.8rem;
  }
}

.p-mv1cNav__circle {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 4.2rem;
  height: 4.2rem;
}

@media screen and (min-width: 768px) {
  .p-mv1cNav__circle {
    width: 2.8rem;
    height: 2.8rem;
  }
}

.p-mv1cNav__circle--instagram {
  background-image: url(../images/mv1c/icon-instagram-black.svg);
}

@media screen and (min-width: 768px) {
  .p-mv1cNav__circle--instagram {
    background-image: url(../images/mv1c/icon-instagram.svg);
  }
}

.p-mv1cNav__circle--facebook {
  background-image: url(../images/mv1c/icon-facebook-black.svg);
}

@media screen and (min-width: 768px) {
  .p-mv1cNav__circle--facebook {
    background-image: url(../images/mv1c/icon-facebook.svg);
  }
}

.p-mv1cNav__button {
  margin-top: 3.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 28rem;
  background-color: #fff;
  border-radius: 999rem;
  margin-inline: auto;
  padding: 1.3rem 0;
  font-size: 1.3rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  position: relative;
  transition: opacity 0.3s ease-out;
  border: 1px solid #121212;
}

@media screen and (min-width: 768px) {
  .p-mv1cNav__button {
    color: #38811B;
    font-size: 1.2rem;
    max-width: 15.2rem;
    padding: 0.85rem 0;
    margin-top: 0;
    -webkit-margin-start: 3rem;
    margin-inline-start: 3rem;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    border: none;
  }
}

.p-mv1cNav__button:hover {
  opacity: 0.8;
}

.p-mv1cNav__button::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 1.5rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(-45deg) translateY(-50%);
}

@media screen and (min-width: 768px) {
  .p-mv1cNav__button::after {
    content: none;
  }
}

.p-mv1cNav__button span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.p-mv1cNav__button span::before {
  content: "";
  display: block;
  width: 1.2rem;
  height: 0.9rem;
  background-image: url(../images/mv1c/mail-black.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin-right: 0.3rem;
}

@media screen and (min-width: 768px) {
  .p-mv1cNav__button span::before {
    background-image: url(../images/mv1c/mail.svg);
  }
}

.p-mv1cHamburger {
  width: 5.8rem;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  margin-left: auto;
}

.p-mv1cHamburger__button {
  display: block;
  width: 2.8rem;
  height: 1.8rem;
  position: relative;
}

.p-mv1cHamburger__button span {
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #fff;
  transition: 0.3s;
  transition: background-color 0.3s ease-out, transform 0.3s ease-out;
}

.p-mv1cHamburger__button span:first-child {
  top: 0;
}

.p-mv1cHamburger__button span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}

.p-mv1cHamburger__button span:last-child {
  bottom: 0;
}

.p-mv1cHamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
  background-color: #111;
}

.p-mv1cHamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-mv1cHamburger__button.open span:nth-child(2) {
  display: none;
}

.p-mv1cHamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-mv1cScroll {
  width: 1.5rem;
  height: 13.8rem;
}

@media screen and (min-width: 768px) {
  .p-mv1cScroll {
    height: 16.7rem;
  }
}

.p-mv1cScroll::before,
.p-mv1cScroll::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.p-mv1cScroll::before {
  width: 1px;
  height: 8.3rem;
  background-color: #fff;
  z-index: 1;
  bottom: 0;
}

@media screen and (min-width: 768px) {
  .p-mv1cScroll::before {
    height: 11rem;
  }
}

.p-mv1cScroll::after {
  width: 0.6rem;
  height: 0.6rem;
  background-color: #38811B;
  border-radius: 50%;
  z-index: 1;
}

.p-mv1cScroll::after {
  -webkit-animation: circleMoveSpMv1c 2s ease-in-out infinite;
  animation: circleMoveSpMv1c 2s ease-in-out infinite;
}

@media screen and (min-width: 768px) {
  .p-mv1cScroll::after {
    -webkit-animation: circleMovePcMv1c 2.7s ease-in-out infinite;
    animation: circleMovePcMv1c 2.7s ease-in-out infinite;
  }
}

.p-mv1cScroll span {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  font-family: "Inter", sans-serif;
  color: #fff;
  font-weight: 300;
  font-size: 1rem;
  letter-spacing: 0.2em;
  text-align: center;
  text-transform: uppercase;
  z-index: 1;
  white-space: nowrap;
  writing-mode: vertical-rl;
}

@media screen and (min-width: 768px) {
  .p-mv1cScroll span {
    letter-spacing: 0.08em;
  }
}

@-webkit-keyframes circleMoveSpMv1c {
  0% {
    bottom: 8.6rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.3rem;
    opacity: 0;
  }
}

@keyframes circleMoveSpMv1c {
  0% {
    bottom: 8.6rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.3rem;
    opacity: 0;
  }
}

@-webkit-keyframes circleMovePcMv1c {
  0% {
    bottom: 11.3rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.3rem;
    opacity: 0;
  }
}

@keyframes circleMovePcMv1c {
  0% {
    bottom: 11.3rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.3rem;
    opacity: 0;
  }
}

.p-mv1d {
  position: relative;
}

.p-mv1d__text {
  position: absolute;
  bottom: 17%;
  left: 6.9%;
  z-index: 1;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-mv1d__text {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    bottom: 16.6%;
    left: 6.5%;
  }
}

.p-mv1d__title {
  font-size: 2.8rem;
  letter-spacing: 0.18em;
  line-height: 1.5;
  font-weight: 400;
  position: relative;
  font-family: "Noto Serif JP", serif;
}

@media screen and (min-width: 768px) {
  .p-mv1d__title {
    font-size: 4.7rem;
    letter-spacing: 0.48em;
    line-height: 1.5106382979;
  }
}

.p-mv1d__title::after {
  content: "";
  position: absolute;
  bottom: -1.7rem;
  left: 0;
  display: block;
  max-width: 29.3rem;
  width: 91.5%;
  height: 1px;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-mv1d__title::after {
    max-width: none;
    width: 93.5%;
    bottom: -2.5rem;
  }
}

.p-mv1d__enTitle {
  display: inline-block;
  font-family: "Oswald", sans-serif;
  margin-top: 3.2rem;
  font-weight: 400;
  font-size: 1.2rem;
  letter-spacing: 0.12em;
  white-space: normal;
}

@media screen and (min-width: 768px) {
  .p-mv1d__enTitle {
    font-size: 1.7rem;
    margin-top: 4.6rem;
    letter-spacing: 0.12em;
    line-height: 2.1428571429;
  }
}

.p-mv1d__enTitle::first-letter {
  text-transform: capitalize;
}

.p-mv1d__scroll {
  position: absolute;
  bottom: 1.6rem;
  right: 2.5rem;
}

@media screen and (min-width: 768px) {
  .p-mv1d__scroll {
    bottom: 2.2rem;
    right: 3.9rem;
  }
}

.p-mv1d__news {
  position: absolute;
  left: 0;
  bottom: 0;
  display: inline-block;
  background-color: #fff;
  height: 6.4rem;
  padding: 1.5rem 0 0 1.3rem;
  width: 100%;
  max-width: min(79.8vw, 50rem);
  z-index: 2;
  transition: background-color 0.3s ease-out, color 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-mv1d__news {
    height: 6.8rem;
    max-width: min(49vw, 70.3rem);
    padding: 0 0 0 min(6.6vw, 9.4rem);
    display: flex;
    -moz-column-gap: 5.1rem;
    column-gap: 5.1rem;
    align-items: center;
  }
}

@media screen and (min-width: 768px) and (max-width: 1250px) {
  .p-mv1d__news {
    padding-left: 2.6vw;
  }
}

@media screen and (min-width: 768px) {
  .p-mv1d__news:hover {
    background-color: #000;
    color: #fff;
    opacity: 0.7;
  }
}

.p-mv1d__news::after {
  content: "";
  position: absolute;
  width: 0.5rem;
  height: 0.5rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  top: 4.3rem;
  right: 2.1rem;
  transform: rotate(-45deg) translateY(-6px);
  transition: border 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-mv1d__news::after {
    top: 50%;
    right: 3.4rem;
    width: 0.6rem;
    height: 0.6rem;
    transform: rotate(-45deg) translateY(-3px);
  }
}

.p-mv1d__news:hover::after {
  border-color: #fff;
}

.p-mv1d__newsEnTitle {
  font-family: "Oswald", sans-serif;
  font-size: 1rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 600;
}

@media screen and (min-width: 768px) {
  .p-mv1d__newsEnTitle {
    font-size: 1.1rem;
  }
}

.p-mv1d__newsWrap {
  display: flex;
  align-items: center;
  font-size: 1rem;
  scale: 0.9;
  letter-spacing: 0.08em;
  -moz-column-gap: 0.4rem;
  column-gap: 0.4rem;
  margin-top: 0.5rem;
  font-weight: 500;
  margin: 0.3rem 0 0 -1.6rem;
}

@media screen and (min-width: 768px) {
  .p-mv1d__newsWrap {
    margin: 0;
    -moz-column-gap: 1.9rem;
    column-gap: 1.9rem;
  }
}

.p-mv1d__newsTitle {
  width: 18.5rem;
  /* 省略せずに表示するサイズを指定 */
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media screen and (min-width: 768px) {
  .p-mv1d__newsTitle {
    width: min(22.5vw, 32.3rem);
  }
}

.p-mv1d__contact {
  z-index: 1;
  position: absolute;
  right: 0;
  bottom: 0;
  writing-mode: vertical-rl;
  white-space: nowrap;
  font-family: "Noto Serif JP", serif;
  font-size: 1.1rem;
  padding: 1.2rem 1rem;
  background-color: #fff;
  letter-spacing: 0.1em;
}

@media screen and (min-width: 768px) {
  .p-mv1d__contact {
    display: none;
  }
}

.p-mv1d__slider .swiper-slide {
  width: 100%;
  height: 100%;
}

.p-mv1d__slider .swiper-slide::before {
  background: rgba(25, 25, 25, 0.3);
  position: relative;
  z-index: 1;
  padding-top: 100vh;
}

.p-mv1dHeader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  height: 8.9rem;
  display: flex;
  align-items: center;
}

.p-mv1dHeader__logo {
  width: 6rem;
  margin-left: 1.8rem;
}

.p-mv1dHeader__hamburger {
  margin: -0.6rem 0.7rem 0 auto;
}

.p-mv1dNav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: -1;
  transform: translateX(-100%);
  transition: transform 0.4s ease-out;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
  padding-top: 7.4rem;
  background-color: #111;
}

@media screen and (min-width: 768px) {
  .p-mv1dNav {
    z-index: auto;
    position: static;
    max-width: none;
    height: 100%;
    opacity: 1;
    visibility: visible;
    overflow: visible;
    transform: translateX(0);
    background-color: transparent;
    padding-top: 0;
  }
}

.p-mv1dNav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-mv1dNav__inner {
  width: 100%;
  padding: 0 2.4rem 11.2rem;
  min-height: 100%;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv1dNav__inner {
    height: 100%;
    display: flex;
    align-items: center;
    padding: 0 0 0 3.7rem;
  }
}

.p-mv1dNav__inner::after {
  content: "";
  display: block;
  width: 100vw;
  height: 10px;
  background-color: #fff;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 calc(50% - 50vw);
}

@media screen and (min-width: 768px) {
  .p-mv1dNav__inner::after {
    content: none;
  }
}

.p-mv1dNav__container {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-mv1dNav__container {
    max-width: min(56vw, 70rem);
    display: flex;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-mv1dNav__link {
  display: block;
  width: 100%;
  font-weight: 500;
  padding: 2.8rem 0 1.3rem;
  color: #fff;
  border-bottom: 1px solid #fff;
  position: relative;
  font-size: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-mv1dNav__link {
    font-size: 1.5rem;
    font-weight: 600;
    padding: 0 1.9rem;
    width: auto;
    border: none;
    display: flex;
    align-items: center;
  }
}

.p-mv1dNav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 57%;
  right: 1.5rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-mv1dNav__link::after {
    content: none;
  }
}

.p-mv1dNav__link span {
  position: relative;
}

.p-mv1dNav__link span::after {
  content: "";
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  bottom: -0.3rem;
  left: 50%;
  transform: translateX(-50%);
  transition: width 0.3s ease-out;
}

.p-mv1dNav__link:hover span::after {
  width: 100%;
}

.p-mv1dHamburger {
  width: 5.8rem;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

.p-mv1dHamburger__button {
  display: block;
  width: 3.4rem;
  height: 2.4rem;
  position: relative;
}

.p-mv1dHamburger__button::after {
  position: absolute;
  content: "メニュー";
  font-family: "Noto Serif JP", serif;
  font-size: 1.1rem;
  white-space: nowrap;
  color: #fff;
  left: 50%;
  transform: translateX(-50%);
  bottom: -2.2rem;
}

.p-mv1dHamburger__button span {
  display: block;
  position: absolute;
  right: 0;
  width: 100%;
  height: 1px;
  background-color: #fff;
  transition: 0.3s;
  transition: transform 0.3s ease-out;
}

.p-mv1dHamburger__button span:first-child {
  top: 0;
}

.p-mv1dHamburger__button span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
  width: 70%;
}

.p-mv1dHamburger__button span:last-child {
  bottom: 0;
}

.p-mv1dHamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
}

.p-mv1dHamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-mv1dHamburger__button.open span:nth-child(2) {
  display: none;
}

.p-mv1dHamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-mv1dSidebar {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-mv1dSidebar {
    position: fixed;
    z-index: 100;
    top: 0;
    right: 0;
    width: 17.7rem;
    height: 100vh;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}

.p-mv1dSidebar::before {
  content: "";
  display: block;
  width: 1px;
  height: 80vh;
  background-color: #fff;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}

.p-mv1dSidebar__inner {
  padding-top: 1.6rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  height: 83%;
}

.p-mv1dSidebar__logo {
  width: 6.5rem;
}

.p-mv1dSidebar__hamburger {
  margin-top: 8.8rem;
}

.p-mv1dSidebar__reservation {
  writing-mode: vertical-rl;
  color: #fff;
  white-space: nowrap;
  font-family: "Noto Serif JP", serif;
  font-size: 1.1rem;
  padding: 3.2rem 1rem;
  border: 1px solid #fff;
  letter-spacing: 0.2em;
}

.p-mv1dSidebarHamburger {
  display: flex;
  justify-content: center;
  align-items: center;
}

.p-mv1dSidebarHamburger__button {
  cursor: pointer;
  display: block;
  width: 2.3rem;
  height: 3.3rem;
  position: relative;
}

.p-mv1dSidebarHamburger__button::after {
  position: absolute;
  content: "メニュー";
  font-family: "Noto Serif JP", serif;
  font-size: 1rem;
  white-space: nowrap;
  color: #fff;
  left: 50%;
  transform: translateX(-50%);
  bottom: -2.5rem;
}

.p-mv1dSidebarHamburger__button span {
  display: block;
  position: absolute;
  bottom: 0;
  width: 1px;
  height: 100%;
  background-color: #fff;
  transition: 0.3s;
  transition: transform 0.3s ease-out;
}

.p-mv1dSidebarHamburger__button span:first-child {
  right: 0;
}

.p-mv1dSidebarHamburger__button span:nth-child(2) {
  left: 50%;
  transform: translateX(-50%);
  height: 70%;
}

.p-mv1dSidebarHamburger__button span:last-child {
  left: 0;
}

.p-mv1dSidebarHamburger__button.open span {
  left: 50%;
  transform: translateX(-50%);
}

.p-mv1dSidebarHamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-mv1dSidebarHamburger__button.open span:nth-child(2) {
  display: none;
}

.p-mv1dSidebarHamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-mv1dSidebarNav {
  position: fixed;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: #111;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
}

.p-mv1dSidebarNav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-mv1dSidebarNav__inner {
  width: calc(100vw - 17.7rem);
  min-height: 100%;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  -moz-column-gap: 14rem;
  column-gap: 14rem;
}

.p-mv1dSidebarNav__inner::after {
  content: "";
  display: block;
  width: 100vw;
  position: absolute;
  left: 0;
  bottom: 0;
  height: 10px;
  background-color: #fff;
}

.p-mv1dSidebarNav__inner::before {
  content: "shop name";
  height: 100%;
  text-align: center;
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  text-transform: uppercase;
  writing-mode: vertical-rl;
  color: #fff;
  opacity: 0.25;
  font-size: 12rem;
  line-height: 1;
  position: absolute;
  left: 0;
  top: 1rem;
}

.p-mv1dSidebarNav__container {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-mv1dSidebarNav__container {
    max-width: 17rem;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-mv1dSidebarNav__link {
  color: #fff;
  font-size: 1.8rem;
  font-family: "Noto Serif JP", serif;
  display: flex;
  align-items: center;
  transition: color 0.3s ease-out;
}

.p-mv1dSidebarNav__link::before {
  content: "";
  display: block;
  width: 1rem;
  height: 2px;
  background-color: #fff;
  margin-right: 1rem;
}

.p-mv1dSidebarNav__link:nth-of-type(n+2) {
  margin-top: 3.3rem;
}

.p-mv1dSidebarNav__img {
  max-width: 40rem;
}

.p-mv1dSidebarNav__img::before {
  padding-top: 78%;
}

.p-mv1dSidebarNav__img::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
}

.p-mv2a {
  position: relative;
  margin-top: 5.3rem;
  background: linear-gradient(#EFF8F0 50%, transparent 50%);
}

@media screen and (min-width: 768px) {
  .p-mv2a {
    margin-top: 7.3rem;
  }
}

.p-mv2a__slider {
  margin-left: auto;
  max-width: calc(100vw - 4.5rem);
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv2a__slider {
    max-width: calc(100vw - 8.7rem);
  }
}

.p-mv2a__slider::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  background-image: url(../images/mv2a/fv-filter-sp.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 99.7%;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .p-mv2a__slider::after {
    background-image: url(../images/mv2a/fv-filter.svg);
    width: 53.2%;
  }
}

.p-mv2a__slider .swiper-slide::before {
  position: relative;
  z-index: 1;
  padding-top: 170%;
}

@media screen and (min-width: 768px) {
  .p-mv2a__slider .swiper-slide::before {
    padding-top: 54.3639053254%;
  }
}

.p-mv2a__slider.swiper,
.swiper-container {
  margin: 0 0 0 auto;
}

.p-mv2a__slider .swiper-slide {
  width: 100%;
  height: 100%;
}

.p-mv2a__slider .swiper-slide .slide-img {
  width: 100%;
  height: 100%;
}

.p-mv2a__text {
  position: absolute;
  top: 29.1%;
  left: 8.6%;
  z-index: 2;
  color: #fff;
}

@media screen and (min-width: 768px) {
  .p-mv2a__text {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    top: 19.9%;
    left: 9.8%;
  }
}

.p-mv2a__title {
  font-size: 2.7rem;
  letter-spacing: 0.11em;
  line-height: 1.4444444444;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv2a__title {
    font-size: 4.8rem;
    line-height: 1.4375;
  }
}

.p-mv2a__title span {
  background: linear-gradient(transparent 78%, #72B583 78%, #72B583 94%, transparent 94%);
}

.p-mv2a__title::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -1.6rem;
  right: -1.3rem;
  width: 10.2rem;
  height: 5rem;
  background-image: url(../images/mv2a/fv-entitle.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

@media screen and (min-width: 768px) {
  .p-mv2a__title::after {
    bottom: -7.8rem;
    right: -6.4rem;
    width: 21.2rem;
    height: 10rem;
  }
}

.p-mv2a__subTitle {
  margin-top: 2.8rem;
  font-weight: 500;
  font-size: 1.7rem;
  line-height: 1.6470588235;
  letter-spacing: 0.06em;
}

@media screen and (min-width: 768px) {
  .p-mv2a__subTitle {
    margin-top: 3.3rem;
    font-size: 2.8rem;
    line-height: 1.6428571429;
  }
}

.p-mv2a__enTitle {
  display: inline-block;
  margin-top: 1.2rem;
  font-weight: 500;
  font-size: 1rem;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-mv2a__enTitle {
    font-size: 1.4rem;
    margin-top: 2.1rem;
  }
}

.p-mv2a__reservation {
  position: absolute;
  bottom: -4rem;
  right: 1.2rem;
  width: 9.5rem;
  height: 9.5rem;
  z-index: 10;
}

@media screen and (min-width: 768px) {
  .p-mv2a__reservation {
    bottom: 2.6rem;
    right: 2.4rem;
    width: 14.4rem;
    height: 14.4rem;
  }
}

.p-mv2a__scroll {
  position: absolute;
  bottom: -3.4rem;
  left: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-mv2a__scroll {
    bottom: 0;
    left: 3.5rem;
  }
}

.p-mv2aHeader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  background-color: #EFF8F0;
  height: 5.3rem;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .p-mv2aHeader {
    height: 7.3rem;
    padding-right: 2.4rem;
  }
}

.p-mv2aHeader__logo {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 20;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 13rem;
  height: 8.5rem;
}

@media screen and (min-width: 768px) {
  .p-mv2aHeader__logo {
    width: 22rem;
    height: 12.5rem;
  }
}

.p-mv2aHeader__logo:hover {
  opacity: 1;
}

.p-mv2aHeader__logo img {
  width: 9.1rem;
  transition: scale 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-mv2aHeader__logo img {
    width: 14.4rem;
  }
}

.p-mv2aHeader__logo:hover img {
  scale: 1.05;
}

.p-mv2aHeader__hamburger {
  position: absolute;
  top: 50%;
  right: 2.2rem;
  transform: translateY(-50%);
}

.p-mv2aNav {
  position: fixed;
  top: 5.2rem;
  left: 0;
  width: 100%;
  height: calc(100vh - 5.2rem);
  background-color: #fff;
  z-index: 10;
  transform: translateX(-100%);
  transition: transform 0.4s ease-out;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
  padding-top: 3.4rem;
}

@media screen and (min-width: 768px) {
  .p-mv2aNav {
    position: static;
    height: 100%;
    opacity: 1;
    visibility: visible;
    overflow: visible;
    transform: translateX(0);
    margin-left: auto;
    background: transparent;
    padding-top: 0;
  }
}

.p-mv2aNav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-mv2aNav__inner {
  width: 100%;
  min-height: 100%;
  padding: 0 2.7rem 4.9rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv2aNav__inner {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0;
  }
}

.p-mv2aNav__inner::after {
  content: "";
  position: absolute;
  display: block;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 1.2rem;
  margin: 0 calc(50% - 50vw);
  background-color: #2F5189;
}

@media screen and (min-width: 768px) {
  .p-mv2aNav__inner::after {
    content: none;
  }
}

.p-mv2aNav__items {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-mv2aNav__items {
    max-width: none;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

@media screen and (min-width: 768px) {
  .p-mv2aNav__items {
    height: 100%;
  }
}

.p-mv2aNav__item {
  border-bottom: 1px solid #000;
}

@media screen and (min-width: 768px) {
  .p-mv2aNav__item {
    border: none;
  }
}

.p-mv2aNav__item--last {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-mv2aNav__item--last {
    display: block;
  }
}

.p-mv2aNav__link {
  display: block;
  width: 100%;
  letter-spacing: 0.04em;
  font-weight: 500;
  padding: 2.8rem 0 1.2rem;
  position: relative;
  font-size: 1.5rem;
  color: #3F3F3F;
  font-family: "Noto Serif JP", serif;
}

@media screen and (min-width: 768px) {
  .p-mv2aNav__link {
    font-size: 1.4rem;
    height: 100%;
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    padding: 0 1.5rem;
    font-family: "Noto Sans JP", sans-serif;
    width: auto;
    transition: color 0.3s ease-out;
  }
}

.p-mv2aNav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 57%;
  right: 1.2rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-mv2aNav__link::after {
    content: none;
  }
}

.p-mv2aNav__reservation {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-mv2aNav__reservation {
    margin-left: 1.7rem;
    color: #fff;
    display: block;
    font-size: 1.4rem;
    letter-spacing: 0.04em;
    font-weight: 500;
    background-color: #72B583;
    padding: 0.8rem;
    border-radius: 999rem;
    width: 19rem;
    text-align: center;
  }
}

.p-mv2aNav__tel {
  display: block;
  text-align: center;
  font-family: "Noto Serif JP", serif;
  margin-top: 7.6rem;
  font-size: 2.6rem;
  letter-spacing: 0.07em;
  font-weight: 500;
  position: relative;
  line-height: 1;
}

.p-mv2aNav__tel::before {
  content: "";
  display: block;
  background-image: url(../images/mv2a/tel-text.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 23.3rem;
  height: 3.6rem;
  position: absolute;
  top: -4.3rem;
  left: 50%;
  transform: translateX(-50%);
}

.p-mv2aNav__tel span {
  margin-right: 0.4rem;
  font-size: 1.7rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.p-mv2aNav__button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 28rem;
  margin-inline: auto;
  color: #fff;
  font-size: 1.3rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  font-family: "Noto Serif JP", serif;
  padding: 1.2rem 0;
  margin-top: 3.4rem;
  position: relative;
  background: linear-gradient(90deg, #3CB8E3 0%, #3361B4 100%);
}

.p-mv2aNav__button span {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.p-mv2aNav__button span::before {
  content: "";
  display: block;
  background-image: url(../images/mv2a/mail.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  width: 1.2rem;
  height: 0.9rem;
  margin-right: 0.4rem;
}

.p-mv2aNav__button::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 2.6rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: rotate(-45deg) translateY(-50%);
}

@media screen and (min-width: 768px) {
  .p-mv2aNav__button::after {
    content: none;
  }
}

.p-mv2aHamburger {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  cursor: pointer;
}

.p-mv2aHamburger__button {
  display: block;
  width: 3.4rem;
  height: 2.2rem;
  position: relative;
}

.p-mv2aHamburger__button span {
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #111;
  transition: 0.3s;
}

.p-mv2aHamburger__button span:first-child {
  top: 0;
}

.p-mv2aHamburger__button span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}

.p-mv2aHamburger__button span:last-child {
  bottom: 0;
}

.p-mv2aHamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
}

.p-mv2aHamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-mv2aHamburger__button.open span:nth-child(2) {
  display: none;
}

.p-mv2aHamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-mv2aScroll {
  width: 1.5rem;
  height: 16.4rem;
}

.p-mv2aScroll::before,
.p-mv2aScroll::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.p-mv2aScroll::before {
  width: 1px;
  height: 11rem;
  background-color: #000;
  z-index: 1;
  bottom: 0;
}

.p-mv2aScroll::after {
  width: 0.8rem;
  height: 0.8rem;
  background-color: #72B583;
  border-radius: 50%;
  z-index: 1;
}

.p-mv2aScroll::after {
  -webkit-animation: circleMoveMv2a 2.7s ease-in-out infinite;
  animation: circleMoveMv2a 2.7s ease-in-out infinite;
}

.p-mv2aScroll span {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  color: #111111;
  letter-spacing: 0.08em;
  font-weight: 300;
  font-size: 1rem;
  text-align: center;
  text-transform: uppercase;
  z-index: 1;
  white-space: nowrap;
  writing-mode: vertical-rl;
}

@media screen and (min-width: 768px) {
  .p-mv2aScroll span {
    top: -0.3rem;
  }
}

@-webkit-keyframes circleMoveMv2a {
  0% {
    bottom: 11.2rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.2rem;
    opacity: 0;
  }
}

@keyframes circleMoveMv2a {
  0% {
    bottom: 11.2rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.2rem;
    opacity: 0;
  }
}

.p-mv2b {
  padding-top: 4.8rem;
  position: relative;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  .p-mv2b {
    padding-top: 8.3rem;
    background: linear-gradient(#F5F5F5 0%, #F5F5F5 93.5%, transparent 93.5%, transparent 100%);
    overflow: visible;
  }
}

.p-mv2b__wrap {
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 768px) {
  .p-mv2b__wrap {
    height: 100%;
    flex-direction: row-reverse;
    -moz-column-gap: 1.8rem;
    column-gap: 1.8rem;
  }
}

.p-mv2b__slider {
  max-width: 94.4vw;
}

@media screen and (min-width: 768px) {
  .p-mv2b__slider {
    height: inherit;
    max-width: 59.9305555556vw;
  }
}

.p-mv2b__slider::after {
  content: "Commitment to \aHair Care";
  white-space: pre;
  display: block;
  font-family: "Cormorant Garamond", serif;
  color: #fff;
  z-index: 1;
  opacity: 0.2;
  writing-mode: vertical-rl;
  position: absolute;
  right: 0.5rem;
  top: 0.9rem;
  font-size: min(10.6666666667vw, 4rem);
  line-height: 0.975;
}

@media screen and (min-width: 768px) {
  .p-mv2b__slider::after {
    right: 0;
    top: 2rem;
    font-size: min(6.9444444444vw, 10.6rem);
    line-height: 0.9622641509;
  }
}

.p-mv2b__text {
  max-width: 56rem;
  margin-inline: auto;
  width: 100%;
  padding: 2.3rem 2.1rem 1.2rem;
}

@media screen and (min-width: 768px) {
  .p-mv2b__text {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    flex-shrink: 0;
    max-width: 49rem;
    padding: 0 0 0 3.5rem;
    margin-top: -2.4rem;
  }
}

.p-mv2b__title {
  font-family: "Noto Serif JP", serif;
  line-height: 1.6923076923;
  font-size: 2.6rem;
  letter-spacing: 0.2em;
  font-weight: 400;
}

@media screen and (min-width: 768px) {
  .p-mv2b__title {
    line-height: 1.6904761905;
    font-size: 4.2rem;
  }
}

.p-mv2b__dots {
  position: relative;
  padding-top: 0.6rem;
  background-position: top left -2px;
  background-repeat: repeat-x;
  background-size: 1.2em 0.2em;
  background-image: radial-gradient(0.15em 0.15em at center center, #000 50%, transparent 50%);
}

@media screen and (min-width: 768px) {
  .p-mv2b__dots {
    padding-top: 1.1rem;
  }
}

.p-mv2b__underline {
  position: relative;
}

.p-mv2b__underline::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.2rem;
  background-color: #000;
}

.p-mv2b__description {
  font-size: 1.2rem;
  letter-spacing: 0.26em;
  line-height: 2.25;
  width: 60vw;
  margin-top: 1rem;
}

@media screen and (min-width: 768px) {
  .p-mv2b__description {
    width: 42.4rem;
    margin: 2.6rem 0 0 0.6rem;
  }
}

.p-mv2b__news {
  display: flex;
  margin-top: 2.4rem;
}

@media screen and (min-width: 768px) {
  .p-mv2b__news {
    margin-top: 9.4rem;
  }
}

.p-mv2b__newsImg {
  width: 10.5rem;
  flex-shrink: 0;
}

.p-mv2b__newsImg::before {
  padding-top: 100%;
}

.p-mv2b__newsWrap {
  display: flex;
  flex-direction: column;
  color: #fff;
  padding: 1rem 1.6rem;
  max-width: 33rem;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .p-mv2b__newsWrap {
    padding: 1.6rem 2.1rem 1.3rem;
  }
}

.p-mv2b__newsTitle {
  letter-spacing: 0.06em;
  font-weight: 500;
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-mv2b__newsTitle {
    font-size: 1.6rem;
  }
}

.p-mv2b__scroll {
  position: absolute;
  bottom: 2.2rem;
  right: 1.4rem;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .p-mv2b__scroll {
    right: auto;
    left: 2.3%;
    bottom: 0.7rem;
  }
}

.p-mv2b .swiper {
  width: 100%;
  margin: 0 0 0 auto;
}

@media screen and (min-width: 768px) {
  .p-mv2b .swiper {
    margin: 0;
  }
}

.p-mv2b .swiper-wrapper {
  width: 100%;
}

.p-mv2b .swiper-slide::before {
  padding-top: 81.9209039548%;
}

@media screen and (min-width: 768px) {
  .p-mv2b .swiper-slide::before {
    padding-top: 86.0950173812%;
  }
}

.p-mv2b .swiper-slide img {
  width: 100%;
  height: 100%;
}

.p-mv2b .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.p-mv2b .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 1.6rem 0 0;
}

.p-mv2b .swiper-horizontal>.swiper-pagination-bullets,
.p-mv2b .swiper-pagination-bullets.swiper-pagination-horizontal,
.p-mv2b .swiper-pagination-custom,
.p-mv2b .swiper-pagination-fraction {
  position: static;
  margin-top: 2.1rem;
  text-align: left;
}

@media screen and (min-width: 768px) {

  .p-mv2b .swiper-horizontal>.swiper-pagination-bullets,
  .p-mv2b .swiper-pagination-bullets.swiper-pagination-horizontal,
  .p-mv2b .swiper-pagination-custom,
  .p-mv2b .swiper-pagination-fraction {
    margin: 3rem 0 0 0.8rem;
  }
}

.p-mv2b .swiper-pagination-bullet {
  width: 0.8rem;
  height: 0.8rem;
  background: #fff;
  border: 1px solid #000;
  opacity: 1;
}

@media screen and (min-width: 768px) {
  .p-mv2b .swiper-pagination-bullet {
    width: 1rem;
    height: 1rem;
  }
}

.p-mv2b .swiper-pagination-bullet-active {
  background: #000;
}

.p-mv2bHeader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  background-color: #F5F5F5;
  height: 4.8rem;
  display: flex;
  align-items: center;
  padding-left: 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-mv2bHeader {
    height: 8.3rem;
    padding-left: 3.3rem;
    padding-right: 4.3rem;
  }
}

.p-mv2bHeader__logo {
  width: 11.3rem;
}

@media screen and (min-width: 768px) {
  .p-mv2bHeader__logo {
    width: 14.2rem;
  }
}

.p-mv2bHeader__menu {
  display: flex;
  align-items: center;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
  margin-left: auto;
  height: 100%;
}

@media screen and (min-width: 768px) {
  .p-mv2bHeader__menu {
    top: 5rem;
    right: 2.1rem;
    -moz-column-gap: 1.5rem;
    column-gap: 1.5rem;
  }
}

.p-mv2bHeader__circle {
  width: 3.5rem;
  height: 3.5rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

@media screen and (min-width: 768px) {
  .p-mv2bHeader__circle {
    width: 2.8rem;
    height: 2.8rem;
  }
}

.p-mv2bNav {
  position: fixed;
  top: 4.8rem;
  left: 0;
  width: 100%;
  height: calc(100vh - 4.8rem);
  z-index: 100;
  transform: translateX(-100%);
  transition: transform 0.4s ease-out;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
  padding-top: 2.2rem;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-mv2bNav {
    position: static;
    max-width: min(85vw, 112rem);
    height: 100%;
    opacity: 1;
    visibility: visible;
    overflow: visible;
    transform: translateX(0);
    margin-left: auto;
    padding-top: 0;
    background: transparent;
  }
}

.p-mv2bNav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-mv2bNav__inner {
  width: 100%;
  padding: 0 2.8rem;
}

@media screen and (min-width: 768px) {
  .p-mv2bNav__inner {
    height: 100%;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding: 0;
  }
}

.p-mv2bNav__container {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-mv2bNav__container {
    max-width: none;
    display: flex;
    flex-shrink: 0;
    height: inherit;
    justify-content: flex-end;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-mv2bNav__link {
  display: block;
  width: 100%;
  letter-spacing: 0.04em;
  font-weight: 400;
  padding: 2.8rem 0 1.3rem;
  border-bottom: 1px solid #000;
  position: relative;
  font-size: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-mv2bNav__link {
    font-size: 1.4rem;
    padding: 0 2.7rem;
    letter-spacing: 0.14em;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: auto;
    border: none;
  }
}

.p-mv2bNav__link span {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-mv2bNav__link span {
    margin-top: 0.3rem;
    letter-spacing: 0.14em;
    font-size: 1rem;
    font-family: "Oswald", sans-serif;
    text-transform: uppercase;
    font-weight: 300;
    display: block;
  }
}

.p-mv2bNav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 57%;
  right: 0.8rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-mv2bNav__link::after {
    content: none;
  }
}

@media screen and (min-width: 768px) {
  .p-mv2bNav__circle {
    background-image: url(../images/mv2b/circle_instagram.svg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    width: 4.2rem;
    height: 4.2rem;
    flex-shrink: 0;
    margin-left: 0.6rem;
  }
}

.p-mv2bHamburger {
  width: 6.3rem;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: -1rem;
  cursor: pointer;
}

.p-mv2bHamburger__button {
  display: block;
  width: 2.7rem;
  height: 1.8rem;
  position: relative;
}

.p-mv2bHamburger__button span {
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #222;
  transition: 0.3s;
}

.p-mv2bHamburger__button span:first-child {
  top: 0;
}

.p-mv2bHamburger__button span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}

.p-mv2bHamburger__button span:last-child {
  bottom: 0;
}

.p-mv2bHamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
}

.p-mv2bHamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-mv2bHamburger__button.open span:nth-child(2) {
  display: none;
}

.p-mv2bHamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-mv2bScroll {
  width: 1.5rem;
  height: 11.3rem;
}

.p-mv2bScroll::before,
.p-mv2bScroll::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.p-mv2bScroll::before {
  width: 1px;
  height: 7.1rem;
  background-color: #111;
  z-index: 1;
  top: 0;
}

.p-mv2bScroll::after {
  width: 0.6rem;
  height: 0.6rem;
  background-color: #111;
  border-radius: 50%;
  z-index: 1;
  -webkit-animation: circleMoveMv2b 1.8s ease-in-out infinite;
  animation: circleMoveMv2b 1.8s ease-in-out infinite;
}

.p-mv2bScroll span {
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  font-weight: 400;
  font-size: 1rem;
  letter-spacing: 0.14em;
  text-align: center;
  color: #111;
  text-transform: uppercase;
  z-index: 1;
  white-space: nowrap;
  writing-mode: vertical-rl;
  font-family: "Oswald", sans-serif;
}

@-webkit-keyframes circleMoveMv2b {
  0% {
    top: -0.3rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    top: 6.8rem;
    opacity: 0;
  }
}

@keyframes circleMoveMv2b {
  0% {
    top: -0.3rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    top: 6.8rem;
    opacity: 0;
  }
}

.p-mv2c {
  position: relative;
  padding-bottom: 19rem;
  background: linear-gradient(transparent 38.5%, #F3F5F9 38.5%);
}

@media screen and (min-width: 768px) {
  .p-mv2c {
    padding-bottom: 14rem;
    background: linear-gradient(transparent 40%, #F3F5F9 40%);
  }
}

.p-mv2c__container {
  position: relative;
  margin-top: 10rem;
  max-width: 85.3333333333vw;
}

@media screen and (min-width: 768px) {
  .p-mv2c__container {
    margin-top: 22.3rem;
    max-width: 86.3888888889vw;
  }
}

.p-mv2c__container::before {
  content: "";
  display: block;
  width: 8.8rem;
  height: 8.7rem;
  background-image: url(../images/mv2c/circle-text.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  -webkit-animation: turning 18s infinite linear;
  animation: turning 18s infinite linear;
  position: absolute;
  right: -3.3rem;
  top: -3.4rem;
  z-index: 2;
}

@media screen and (min-width: 768px) {
  .p-mv2c__container::before {
    width: 16rem;
    height: 15.9rem;
    right: -7.1rem;
    top: -7.5rem;
  }
}

@-webkit-keyframes turning {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes turning {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.p-mv2c__container::after {
  content: "shop \aname";
  text-transform: uppercase;
  font-family: "Outfit", sans-serif;
  display: block;
  color: #fff;
  font-size: 26.6666666667vw;
  font-weight: 100;
  line-height: 0.8;
  position: absolute;
  bottom: -28vw;
  left: 1rem;
  z-index: 2;
}

@media screen and (min-width: 768px) {
  .p-mv2c__container::after {
    content: "shop name";
    bottom: min(-3.9583333333vw, -5.7rem);
    left: 5%;
    font-size: min(13.1944444444vw, 19rem);
    line-height: 1;
  }
}

.p-mv2c .swiper {
  margin-left: 0;
}

.p-mv2c .swiper-slide::before {
  position: relative;
  z-index: 1;
  padding-top: 116.25%;
}

@media screen and (min-width: 768px) {
  .p-mv2c .swiper-slide::before {
    padding-top: 46.463022508%;
  }
}

.p-mv2c .swiper-slide {
  width: 100%;
  height: 100%;
}

.p-mv2c .swiper-slide .slide-img {
  width: 100%;
  height: 100%;
}

.p-mv2c__text {
  position: absolute;
  top: 26.2%;
  left: 6.5%;
  color: #fff;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .p-mv2c__text {
    top: 15.1%;
    left: 6.3%;
  }
}

.p-mv2c__title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-size: min(7.4666666667vw, 2.8rem);
  line-height: 1.5;
  letter-spacing: 0.18em;
}

@media screen and (min-width: 768px) {
  .p-mv2c__title {
    font-size: 3.7rem;
    line-height: 1.5135135135;
    letter-spacing: 0.48em;
  }
}

.p-mv2c__title::after {
  content: "";
  display: block;
  width: 90%;
  height: 1px;
  background-color: #fff;
  margin-top: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-mv2c__title::after {
    margin-top: 1.6rem;
  }
}

.p-mv2c__enTitle {
  font-size: 1.2rem;
  font-family: "Oswald", sans-serif;
  letter-spacing: 0.12em;
  margin-top: 1.7rem;
}

@media screen and (min-width: 768px) {
  .p-mv2c__enTitle {
    margin-top: 2.2rem;
    font-size: 1.4rem;
  }
}

.p-mv2c__scroll {
  position: absolute;
  bottom: 1.6rem;
  right: 1.9rem;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .p-mv2c__scroll {
    right: 9.4rem;
    bottom: 14rem;
    transform: none;
  }
}

.p-mv2cHeader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  height: 5rem;
  display: flex;
  align-items: center;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-mv2cHeader {
    height: 9.4rem;
  }
}

.p-mv2cHeader__logo {
  width: 12.3rem;
  margin-left: 1.8rem;
  flex-shrink: 0;
}

@media screen and (min-width: 768px) {
  .p-mv2cHeader__logo {
    width: 16.8rem;
    margin-left: 3.5rem;
  }
}

.p-mv2cHeader__hamburger {
  margin-left: auto;
}

.p-mv2cNav {
  position: fixed;
  top: 4.6rem;
  left: 0;
  width: 100%;
  height: calc(100vh - 4.6rem);
  z-index: -1;
  transform: translateX(-100%);
  transition: transform 0.4s ease-out;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
  padding-top: 2.3rem;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .p-mv2cNav {
    position: static;
    height: 100%;
    opacity: 1;
    z-index: 1;
    visibility: visible;
    overflow: visible;
    transform: translateX(0);
    margin-left: auto;
    background-color: transparent;
    padding-top: 0;
  }
}

.p-mv2cNav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-mv2cNav__inner {
  width: 100%;
  min-height: 100%;
  padding: 0 2.7rem 10rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv2cNav__inner {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    background-color: #F3F5F9;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 0;
    margin-left: auto;
  }
}

.p-mv2cNav__inner::after {
  content: "";
  display: block;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  height: 1.2rem;
  background-color: #F3F5F9;
  position: absolute;
  bottom: 0;
  left: 0;
}

@media screen and (min-width: 768px) {
  .p-mv2cNav__inner::after {
    content: none;
  }
}

.p-mv2cNav__items {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-mv2cNav__items {
    max-width: none;
    display: flex;
    justify-content: flex-end;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    padding-left: 4.3rem;
  }
}

@media screen and (min-width: 768px) {
  .p-mv2cNav__items {
    height: 100%;
  }
}

.p-mv2cNav__item {
  border-bottom: 0.75px solid #333;
}

@media screen and (min-width: 768px) {
  .p-mv2cNav__item {
    border: none;
  }
}

.p-mv2cNav__link {
  display: block;
  text-transform: capitalize;
  font-family: "Outfit", sans-serif;
  width: 100%;
  letter-spacing: 0.04em;
  font-weight: 300;
  padding: 2.8rem 0 1.4rem;
  position: relative;
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-mv2cNav__link {
    height: 100%;
    display: flex;
    text-align: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 0 1.6rem;
    width: auto;
  }
}

.p-mv2cNav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 57%;
  right: 1.2rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #333;
  border-right: 1px solid #333;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-mv2cNav__link::after {
    content: none;
  }
}

.p-mv2cNav__info {
  margin-top: 4.5rem;
  display: flex;
  justify-content: center;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
}

@media screen and (min-width: 768px) {
  .p-mv2cNav__info {
    margin: 0 2.9rem 0 2.3rem;
    justify-content: flex-start;
    -moz-column-gap: 1.3rem;
    column-gap: 1.3rem;
  }
}

.p-mv2cNav__icon {
  display: inline-block;
  width: 4rem;
  height: 4rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p-mv2cNav__icon--mail {
  background-image: url(../images/mv2c/icon-circle-mail.svg);
}

.p-mv2cNav__icon--tel {
  background-image: url(../images/mv2c/icon-circle-tel.svg);
}

.p-mv2cNav__icon--hotpepper {
  background-image: url(../images/mv2c/icon-circle-hotpepper.svg);
}

.p-mv2cNav__icon--line {
  background-image: url(../images/mv2c/icon-circle-line.svg);
}

.p-mv2cHamburger {
  height: 100%;
  width: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  cursor: pointer;
  background-color: #F3F5F9;
}

.p-mv2cHamburger__button {
  display: block;
  width: 2.3rem;
  height: 1.4rem;
  position: relative;
}

.p-mv2cHamburger__button span {
  display: block;
  position: absolute;
  height: 1px;
  background-color: #454545;
  transition: 0.3s;
  right: 0;
}

.p-mv2cHamburger__button span:first-child {
  top: 0;
  width: 100%;
}

.p-mv2cHamburger__button span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
  width: 66%;
}

.p-mv2cHamburger__button span:last-child {
  bottom: 0;
  width: 33%;
}

.p-mv2cHamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
}

.p-mv2cHamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-mv2cHamburger__button.open span:nth-child(2) {
  display: none;
}

.p-mv2cHamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-mv2cScroll {
  width: 1.5rem;
  height: 15.9rem;
}

.p-mv2cScroll::before,
.p-mv2cScroll::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.p-mv2cScroll::before {
  width: 1px;
  height: 9.5rem;
  background-color: #111;
  z-index: 1;
  bottom: 0;
}

.p-mv2cScroll::after {
  width: 0.7rem;
  height: 0.7rem;
  background-color: #485C83;
  border-radius: 50%;
  z-index: 1;
  -webkit-animation: circleMoveMv2c 1.8s ease-in-out infinite;
  animation: circleMoveMv2c 1.8s ease-in-out infinite;
}

.p-mv2cScroll span {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: 1.1rem;
  letter-spacing: 0.2em;
  text-align: center;
  color: #111;
  text-transform: uppercase;
  z-index: 1;
  white-space: nowrap;
  writing-mode: vertical-rl;
}

@-webkit-keyframes circleMoveMv2c {
  0% {
    bottom: 9.85rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.35rem;
    opacity: 0;
  }
}

@keyframes circleMoveMv2c {
  0% {
    bottom: 9.85rem;
    opacity: 0;
  }

  50% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.35rem;
    opacity: 0;
  }
}

.p-mv2d {
  padding-top: 5.8rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv2d {
    padding: 3.1rem 3.8rem 0 0;
  }
}

.p-mv2d__wrap {
  display: flex;
  flex-direction: column;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv2d__wrap {
    height: 100%;
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 768px) {
  .p-mv2d__slider {
    height: inherit;
    max-width: 58.75vw;
  }
}

@media screen and (min-width: 768px) {
  .p-mv2d__wrap::after {
    content: "cherish \awhat matters";
    text-transform: uppercase;
    white-space: pre;
    writing-mode: vertical-rl;
    display: block;
    position: absolute;
    font-family: "Cormorant Garamond", serif;
    top: 2.1rem;
    right: 1.1rem;
    z-index: 1;
    font-size: 8.5rem;
    letter-spacing: 0.02em;
    line-height: 0.9411764706;
    color: #fff;
    opacity: 0.26;
  }
}

.p-mv2d__text {
  max-width: 56rem;
  margin-inline: auto;
  width: 100%;
  padding: 2.3rem 2rem 0;
}

@media screen and (min-width: 768px) {
  .p-mv2d__text {
    width: auto;
    position: absolute;
    top: 24.2%;
    left: 7.4%;
    z-index: 1;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    padding: 0;
    max-width: none;
  }
}

.p-mv2d__title {
  font-family: "Noto Serif JP", serif;
  font-size: 2.6rem;
  letter-spacing: 0.2em;
  font-weight: 400;
  position: relative;
  line-height: 1.6923076923;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

@media screen and (min-width: 768px) {
  .p-mv2d__title {
    font-size: 4.6rem;
    line-height: 1.652173913;
  }
}

.p-mv2d__title::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #111;
  margin-top: -0.5rem;
}

@media screen and (min-width: 768px) {
  .p-mv2d__title::after {
    margin-top: -1rem;
  }
}

.p-mv2d__description {
  font-size: 1.2rem;
  letter-spacing: 0.26em;
  line-height: 2.25;
  margin-top: 1.3rem;
}

@media screen and (min-width: 768px) {
  .p-mv2d__description {
    letter-spacing: 0.16em;
    font-size: 1.6rem;
    line-height: 1.875;
    width: 100%;
    margin: 5rem 0 0 0.8rem;
  }
}

.p-mv2d__scroll {
  margin-top: -1.3rem;
  position: absolute;
  bottom: 8.4rem;
  right: 2.3rem;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .p-mv2d__scroll {
    right: auto;
    bottom: 6.2rem;
    left: 5rem;
  }
}

.p-mv2d__sideScroll {
  z-index: 1;
  display: flex;
  -moz-column-gap: 2rem;
  column-gap: 2rem;
  width: 100%;
  overflow: hidden;
  margin-top: 5.6rem;
}

@media screen and (min-width: 768px) {
  .p-mv2d__sideScroll {
    margin-top: 0;
    position: absolute;
    bottom: -7rem;
    left: 0;
    -moz-column-gap: min(2.36vw, 3.4rem);
    column-gap: min(2.36vw, 3.4rem);
  }
}

.p-mv2d__sideScrollImg {
  flex-shrink: 0;
  width: 160.9rem;
  -webkit-animation: loopSlide 28s infinite linear;
  animation: loopSlide 28s infinite linear;
}

@media screen and (min-width: 768px) {
  .p-mv2d__sideScrollImg {
    width: 269.7rem;
    -webkit-animation: loopSlide 40s infinite linear;
    animation: loopSlide 40s infinite linear;
  }
}

.p-mv2d__sideScrollImg::before {
  padding-top: 3.2939714108%;
}

@media screen and (min-width: 768px) {
  .p-mv2d__sideScrollImg::before {
    padding-top: 3.2999629218%;
  }
}

@keyframes loopSlide {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-100%);
  }
}

.p-mv2d .swiper {
  width: 100%;
  margin: 0;
}

.p-mv2d .swiper-wrapper {
  width: 100%;
}

.p-mv2d .swiper-slide {
  width: 100%;
}

.p-mv2d .swiper-slide::before {
  padding-top: 77.3333333333%;
}

@media screen and (min-width: 768px) {
  .p-mv2d .swiper-slide::before {
    padding-top: 89.8345153664%;
  }
}

.p-mv2d .swiper-slide img {
  width: 100%;
  height: 100%;
}

.p-mv2d .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.p-mv2d .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 1.6rem 0 0;
}

.p-mv2d .swiper-horizontal>.swiper-pagination-bullets,
.p-mv2d .swiper-pagination-bullets.swiper-pagination-horizontal,
.p-mv2d .swiper-pagination-custom,
.p-mv2d .swiper-pagination-fraction {
  position: static;
  margin-top: 2.1rem;
  text-align: left;
}

@media screen and (min-width: 768px) {

  .p-mv2d .swiper-horizontal>.swiper-pagination-bullets,
  .p-mv2d .swiper-pagination-bullets.swiper-pagination-horizontal,
  .p-mv2d .swiper-pagination-custom,
  .p-mv2d .swiper-pagination-fraction {
    margin: 3.3rem 0 0 0.7rem;
  }
}

.p-mv2d .swiper-pagination-bullet {
  width: 0.8rem;
  height: 0.8rem;
  background: #fff;
  border: 1px solid #111;
  opacity: 1;
}

.p-mv2d .swiper-pagination-bullet-active {
  background: #111;
}

.p-mv2dHeader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  background-color: #fff;
  height: 5.8rem;
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .p-mv2dHeader {
    background-color: transparent;
    height: 7.6rem;
  }
}

.p-mv2dHeader__logo {
  margin-left: 1.3rem;
  width: 11.3rem;
}

@media screen and (min-width: 768px) {
  .p-mv2dHeader__logo {
    margin-left: 2.3rem;
    width: 14.2rem;
  }
}

.p-mv2dNav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 100;
  transform: translateX(-100%);
  transition: transform 0.4s ease-out;
  background: #fff;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
  padding-top: 5.1rem;
}

@media screen and (min-width: 768px) {
  .p-mv2dNav {
    padding-top: 0;
  }
}

.p-mv2dNav.open {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

.p-mv2dNav__inner {
  width: 100%;
  min-height: 100%;
  padding: 0 2.4rem 8rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv2dNav__inner {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    -moz-column-gap: 22rem;
    column-gap: 22rem;
  }
}

.p-mv2dNav__inner::after {
  content: "";
  display: block;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
  height: 10px;
  background-color: #111;
}

@media screen and (min-width: 768px) {
  .p-mv2dNav__inner::before {
    content: "shop name";
    height: 100%;
    text-align: center;
    font-family: "Cormorant Garamond", serif;
    font-weight: 500;
    text-transform: uppercase;
    writing-mode: vertical-rl;
    color: #F3F5F9;
    font-size: 16rem;
    line-height: 1;
    position: absolute;
    left: 0;
    top: 1rem;
  }
}

.p-mv2dNav__container {
  width: 100%;
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-mv2dNav__container {
    max-width: 17rem;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-mv2dNav__link {
  display: block;
  width: 100%;
  padding: 2.2rem 0 1.2rem;
  border-bottom: 1px solid #000;
  position: relative;
  font-size: 1.8rem;
  font-family: "Noto Serif JP", serif;
}

@media screen and (min-width: 768px) {
  .p-mv2dNav__link {
    display: flex;
    align-items: center;
    padding: 0;
    width: auto;
    border: none;
    transition: color 0.3s ease-out;
  }
}

@media screen and (min-width: 768px) {
  .p-mv2dNav__link::before {
    content: "";
    display: block;
    width: 1rem;
    height: 2px;
    background-color: #111;
    margin-right: 1rem;
  }
}

@media screen and (min-width: 768px) {
  .p-mv2dNav__link:nth-of-type(n+2) {
    margin-top: 3.3rem;
  }
}

.p-mv2dNav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 57%;
  right: 1.5rem;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-mv2dNav__link::after {
    content: none;
  }
}

.p-mv2dNav__menu {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 4rem;
  -moz-column-gap: 1.5rem;
  column-gap: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-mv2dNav__menu {
    margin-top: 4.4rem;
    justify-content: flex-start;
  }
}

.p-mv2dNav__circle {
  width: 4.2rem;
  height: 4.2rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p-mv2dNav__circle--instagram {
  background-image: url(../images/mv2d/icon-instagram.svg);
}

.p-mv2dNav__circle--tiktok {
  background-image: url(../images/mv2d/icon-tiktok.svg);
}

.p-mv2dNav__img {
  margin-top: 4rem;
  margin-inline: auto;
  max-width: 30rem;
}

@media screen and (min-width: 768px) {
  .p-mv2dNav__img {
    margin-top: 0;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    max-width: 40rem;
  }
}

.p-mv2dNav__img::before {
  padding-top: 78%;
}

@media screen and (min-width: 768px) {
  .p-mv2dNav__img::before {
    padding-top: 100%;
  }
}

.p-mv2dHamburger {
  width: 5.8rem;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  cursor: pointer;
  position: relative;
  z-index: 150;
  background-color: #000;
}

@media screen and (min-width: 768px) {
  .p-mv2dHamburger {
    width: 7.6rem;
  }
}

.p-mv2dHamburger__button {
  display: block;
  width: 2rem;
  height: 0.7rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv2dHamburger__button {
    width: 3.4rem;
    height: 1.2rem;
  }
}

.p-mv2dHamburger__button span {
  display: block;
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #fff;
  transition: 0.3s;
}

.p-mv2dHamburger__button span:first-child {
  top: 0;
}

.p-mv2dHamburger__button span:last-child {
  bottom: 0;
}

.p-mv2dHamburger__button.open span {
  top: 50%;
  transform: translateY(-50%);
}

.p-mv2dHamburger__button.open span:first-child {
  transform: rotate(45deg);
}

.p-mv2dHamburger__button.open span:last-child {
  transform: rotate(-45deg);
}

.p-mv2dScroll {
  width: 1.5rem;
  height: 14.6rem;
}

@media screen and (min-width: 768px) {
  .p-mv2dScroll {
    height: 16.6rem;
  }
}

.p-mv2dScroll::before,
.p-mv2dScroll::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.p-mv2dScroll::before {
  width: 1px;
  background-color: #111;
  z-index: 1;
  bottom: 0;
  height: 9.3rem;
}

@media screen and (min-width: 768px) {
  .p-mv2dScroll::before {
    height: 11rem;
  }
}

.p-mv2dScroll::after {
  width: 0.6rem;
  height: 0.6rem;
  background-color: #5C80B7;
  border-radius: 50%;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .p-mv2dScroll::after {
    width: 0.8rem;
    height: 0.8rem;
  }
}

.p-mv2dScroll::after {
  -webkit-animation: circleMoveSpMv2d 1.8s ease-in-out infinite;
  animation: circleMoveSpMv2d 1.8s ease-in-out infinite;
}

@media screen and (min-width: 768px) {
  .p-mv2dScroll::after {
    -webkit-animation: circleMovePcMv2d 2.2s ease-in-out infinite;
    animation: circleMovePcMv2d 2.2s ease-in-out infinite;
  }
}

.p-mv2dScroll span {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  font-family: "Inter", sans-serif;
  color: #111;
  letter-spacing: 0.08em;
  font-weight: 500;
  font-size: 1rem;
  text-align: center;
  text-transform: uppercase;
  z-index: 1;
  white-space: nowrap;
  writing-mode: vertical-rl;
}

@-webkit-keyframes circleMoveSpMv2d {
  0% {
    bottom: 9.6rem;
    opacity: 0;
  }

  40% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.3rem;
    opacity: 0;
  }
}

@keyframes circleMoveSpMv2d {
  0% {
    bottom: 9.6rem;
    opacity: 0;
  }

  40% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.3rem;
    opacity: 0;
  }
}

@-webkit-keyframes circleMovePcMv2d {
  0% {
    bottom: 11.4rem;
    opacity: 0;
  }

  40% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.4rem;
    opacity: 0;
  }
}

@keyframes circleMovePcMv2d {
  0% {
    bottom: 11.4rem;
    opacity: 0;
  }

  40% {
    opacity: 1;
  }

  80% {
    opacity: 0.9;
  }

  100% {
    bottom: -0.4rem;
    opacity: 0;
  }
}

.p-mv3a {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
}

.p-mv3a__top {
  background-color: #38A1DB;
  height: 3.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 2;
}

.p-mv3a__slider {
  margin-top: -3.5rem;
}

.p-mv3a__slider .swiper-slide::before {
  padding-top: 167%;
}

@media screen and (min-width: 768px) {
  .p-mv3a__slider .swiper-slide::before {
    padding-top: 46.6666666667%;
  }
}

.p-mv3a__slider .swiper-slide img {
  filter: contrast(65%);
}

.p-mv3a__text {
  color: #fff;
  font-size: 1.2rem;
  letter-spacing: 0.04em;
}

@media screen and (min-width: 768px) {
  .p-mv3a__text {
    font-size: 1.4rem;
    letter-spacing: 0.12em;
  }
}

.p-mv3a__mainText {
  position: absolute;
  top: 30.8%;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  z-index: 1;
  color: #fff;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-mv3a__mainText {
    top: 32.5%;
  }
}

.p-mv3a__title {
  font-size: 2.8rem;
  letter-spacing: 0.18em;
  line-height: 1.5;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-mv3a__title {
    font-size: 4.2rem;
    letter-spacing: 0.08em;
    line-height: 1.4285714286;
  }
}

.p-mv3a__title::after {
  content: "";
  display: block;
  margin-top: 2.3rem;
  width: 6.3rem;
  height: 1px;
  background-color: #fff;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-mv3a__title::after {
    width: 7.9rem;
  }
}

.p-mv3a__enTitle {
  font-family: "Inter", sans-serif;
  margin-top: 2.9rem;
  font-size: 1.2rem;
  letter-spacing: 0.06em;
}

@media screen and (min-width: 768px) {
  .p-mv3a__enTitle {
    margin-top: 4.8rem;
    font-size: 1.4rem;
    letter-spacing: 0.12em;
  }
}

.p-mv3a__logoImg {
  position: absolute;
  bottom: -19.3rem;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  z-index: 1;
  max-width: min(73vw, 27.3rem);
  height: min(73vw, 27.3rem);
}

@media screen and (min-width: 768px) {
  .p-mv3a__logoImg {
    bottom: -2.2rem;
    max-width: 30.7rem;
    height: 30.7rem;
  }
}

.p-mv3a__logo {
  height: 100%;
}

.p-mv3a__logo::before {
  padding-top: 100%;
}

.p-mv3a__nav {
  display: none;
}

@media screen and (min-width: 768px) {
  .p-mv3a__nav {
    position: relative;
    z-index: 1;
    display: block;
  }
}

.p-mv3a__wrap {
  display: flex;
  justify-content: center;
  -moz-column-gap: 3.9rem;
  column-gap: 3.9rem;
  margin-top: 8.7rem;
}

.p-mv3a__wrap:nth-of-type(2) {
  margin-top: 2rem;
}

.p-mv3a__link {
  display: block;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 1.4rem;
  color: #885E4F;
  letter-spacing: 0.04em;
  font-weight: 500;
}

.p-mv3a__link span {
  font-family: "Outfit", sans-serif;
  text-transform: uppercase;
  color: #38A1DB;
  font-size: 1rem;
  display: block;
}

.p-mv3a__menu {
  position: fixed;
  top: 4.5rem;
  right: 1.1rem;
  display: flex;
  z-index: 2;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
}

@media screen and (min-width: 768px) {
  .p-mv3a__menu {
    top: 5rem;
    right: 2.1rem;
    -moz-column-gap: 1.5rem;
    column-gap: 1.5rem;
  }
}

.p-mv3a__circle {
  width: 4.5rem;
  height: 4.5rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

@media screen and (min-width: 768px) {
  .p-mv3a__circle {
    width: 5.3rem;
    height: 5.3rem;
  }
}

.p-mv3a__circle--instagram {
  background-image: url(../images/mv3a/instagram.svg);
}

.p-mv3a__circle--facebook {
  background-image: url(../images/mv3a/facebook.svg);
}

.p-mv3a__circle--hamburger {
  background-image: url(../images/mv3a/hamburger.svg);
}

.p-mv3a__banner {
  position: fixed;
  width: 100%;
  bottom: 0;
  right: 0;
  z-index: 100;
}

@media screen and (min-width: 768px) {
  .p-mv3a__banner {
    bottom: 4rem;
    width: 12rem;
  }
}

.p-mv3aNav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-color: #fff;
  z-index: 100;
  transition: transform 0.3s;
  overflow-y: scroll;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease-out;
}

@media screen and (min-width: 768px) {
  .p-mv3aNav::after {
    content: "";
    position: absolute;
    display: block;
    bottom: 0;
    width: 100%;
    height: 1.5rem;
    background-color: #73D0E9;
  }
}

.p-mv3aNav.open {
  opacity: 1;
  visibility: visible;
}

.p-mv3aNav__inner {
  width: 100%;
  min-height: 100%;
  margin-top: -0.4rem;
  padding: 0 2.4rem 7.6rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__inner {
    margin-top: 0.3rem;
    padding: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    max-width: 75.4rem;
    margin-inline: auto;
    margin-top: 0;
  }
}

.p-mv3aNav__inner::after {
  content: "";
  position: absolute;
  display: block;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 1.5rem;
  margin: 0 calc(50% - 50vw);
  background-color: #73D0E9;
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__inner::after {
    content: none;
  }
}

.p-mv3aNav__header {
  height: 8rem;
  display: flex;
  align-items: center;
  padding: 0 1.1rem;
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__header {
    padding: 0 2.4rem;
    height: 13.3rem;
  }
}

.p-mv3aNav__logo {
  display: block;
  width: 12rem;
  margin-left: 1.3rem;
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__logo {
    width: 14.5rem;
    margin-left: 1.9rem;
  }
}

.p-mv3aNav__menu {
  position: static;
  margin-left: auto;
  display: flex;
  -moz-column-gap: 1rem;
  column-gap: 1rem;
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__menu {
    -moz-column-gap: 1.5rem;
    column-gap: 1.5rem;
    margin-top: 1.8rem;
  }
}

.p-mv3aNav__circle {
  width: 4.5rem;
  height: 4.5rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__circle {
    width: 5.3rem;
    height: 5.3rem;
  }
}

.p-mv3aNav__circle--instagram {
  background-image: url(../images/mv3a/instagram.svg);
}

.p-mv3aNav__circle--facebook {
  background-image: url(../images/mv3a/facebook.svg);
}

.p-mv3aNav__circle--close {
  background-image: url(../images/mv3a/close.svg);
}

.p-mv3aNav__container {
  max-width: 56rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__container {
    max-width: none;
    display: flex;
    -moz-column-gap: 7rem;
    column-gap: 7rem;
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-mv3aNav__link {
  display: block;
  width: 100%;
  color: #885E4F;
  letter-spacing: 0.04em;
  font-weight: 500;
  padding: 1.4rem 0 1.2rem;
  border-bottom: 1px solid #000;
  position: relative;
  font-size: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__link {
    width: 10rem;
    padding: 0;
    border: none;
  }
}

.p-mv3aNav__link::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 1.6rem;
  width: 0.5rem;
  height: 0.5rem;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(-45deg) translate(-50%, -50%);
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__link::after {
    content: none;
  }
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__link:nth-of-type(n+2) {
    margin-top: 2.8rem;
  }
}

.p-mv3aNav__link span {
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  color: #38A1DB;
  letter-spacing: 0.04em;
  font-size: 1rem;
  display: block;
  margin-top: -0.1rem;
}

.p-mv3aNav__infoWrap {
  margin-top: 4.6rem;
  max-width: 31.8rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__infoWrap {
    margin-top: 0;
    -webkit-margin-start: auto;
    margin-inline-start: auto;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
    max-width: 36rem;
  }
}

.p-mv3aNav__number {
  color: #885E4F;
  font-size: 3.1rem;
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-align: center;
  margin-top: 0.6rem;
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__number {
    font-size: 3.3rem;
    margin-top: 0.7rem;
  }
}

.p-mv3aNav__time {
  display: block;
  text-align: center;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  color: #885E4F;
  line-height: 1;
  padding-bottom: 1.8rem;
  margin-top: -0.6rem;
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__time {
    font-size: 1.3rem;
  }
}

.p-mv3aNav__tel {
  display: inline-block;
  margin-inline: auto;
  width: 100%;
  border: 1px solid #F7C049;
  border-radius: 1rem;
}

.p-mv3aNav__place {
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 0.04em;
  color: #fff;
  line-height: 1.93;
  border-radius: 1rem 1rem 0 0;
  background-color: #F7C049;
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__place {
    line-height: 1.8;
  }
}

.p-mv3aNav__buttonWrap {
  margin-top: 2rem;
  text-align: center;
}

.p-mv3aNav__button:nth-of-type(2) {
  margin-top: 2rem;
}

.p-mv3aNav__button {
  position: relative;
  display: inline-block;
  border-radius: 1rem;
  padding: 0.4rem;
  overflow: hidden;
  width: 100%;
  max-width: 36rem;
  vertical-align: bottom;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-mv3aNav__button {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-mv3aNav__button:hover {
  opacity: 1;
}

.p-mv3aNav__button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 60%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.4) 100%);
  transform: skewX(-25deg);
}

.p-mv3aNav__button:hover::before {
  -webkit-animation: shine 0.8s;
  animation: shine 0.8s;
}

@keyframes shine {
  100% {
    left: 125%;
  }
}

.p-mv3aNav__button span {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #fff;
  border-radius: 1rem;
  font-size: min(4vw, 1.6rem);
  padding: 2.3rem 0;
  color: #fff;
  letter-spacing: 0.04em;
}

.p-mv3aNav__button span::before {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.p-mv3aNav__button--contact {
  background-color: #EC887F;
}

.p-mv3aNav__button--contact span::before {
  width: 1.8rem;
  height: 1.3rem;
  background-image: url(../images/mv3a/mail.svg);
  margin-right: 0.6rem;
}

.p-mv3aNav__button--line {
  background-color: #BCD154;
}

.p-mv3aNav__button--line span::before {
  width: 1.9rem;
  height: 1.8rem;
  background-image: url(../images/mv3a/line.svg);
  margin-right: 0.4rem;
}

.p-thanks {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-thanks {
    padding-top: 15rem;
    padding-bottom: 15rem;
  }
}

.p-thanks__title {
  text-align: center;
  font-size: 2.4rem;
}

@media screen and (min-width: 768px) {
  .p-thanks__title {
    font-size: 3.8rem;
  }
}

.p-thanks__text {
  text-align: center;
  margin-top: 4.2rem;
  font-size: 1.6rem;
  line-height: 2;
}

@media screen and (min-width: 768px) {
  .p-thanks__text {
    font-size: 2rem;
  }
}

.p-thanks__button {
  margin-top: 8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 22rem;
  font-size: 2rem;
  border-radius: 99.9rem;
  border: 1.5px solid #333;
  background-color: #333;
  color: #fff;
  text-align: center;
  padding: 0.4rem;
  letter-spacing: 0.05em;
  transition: color 0.3s ease-out, background-color 0.3s ease-out;
  min-height: 4.3rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-thanks__button {
    max-width: 30rem;
    min-height: 5rem;
    padding: 0.6rem;
  }
}

.p-thanks__button:hover {
  background-color: #fff;
  color: #333;
}

.p-privacy {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-privacy {
    padding-top: 15rem;
    padding-bottom: 15rem;
  }
}

.p-privacy__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-privacy__inner {
    max-width: 90rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-privacy__contents p {
  margin-top: 2rem;
  line-height: 1.8;
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-privacy__contents p {
    font-size: 1.6rem;
  }
}

.p-privacy__contents ul,
.p-privacy__contents ol {
  margin-top: 1.6rem;
}

.p-privacy__contents ul li,
.p-privacy__contents ol li {
  margin-left: 2.2rem;
  line-height: 1.8;
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {

  .p-privacy__contents ul li,
  .p-privacy__contents ol li {
    font-size: 1.6rem;
  }
}

.p-privacy__contents ul li {
  list-style: disc;
}

.p-privacy__contents ol li {
  list-style: decimal;
}

.p-404 {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

@media screen and (min-width: 768px) {
  .p-404 {
    padding-top: 15rem;
    padding-bottom: 15rem;
  }
}

.p-404__title {
  text-align: center;
  opacity: 0.4;
  font-size: 3.2rem;
}

@media screen and (min-width: 768px) {
  .p-404__title {
    font-size: 6.4rem;
  }
}

.p-404__title {
  text-transform: uppercase;
}

.p-404__text {
  text-align: center;
  margin-top: 4.2rem;
}

@media screen and (min-width: 768px) {
  .p-404__text {
    font-size: 3rem;
  }
}

.p-404__button {
  margin-top: 8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 22rem;
  font-size: 2rem;
  border-radius: 99.9rem;
  border: 1.5px solid #333;
  background-color: #333;
  color: #fff;
  text-align: center;
  padding: 0.4rem;
  letter-spacing: 0.05em;
  transition: color 0.3s ease-out, background-color 0.3s ease-out;
  min-height: 4.3rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-404__button {
    max-width: 30rem;
    min-height: 5rem;
    padding: 0.6rem;
  }
}

.p-404__button:hover {
  background-color: #fff;
  color: #333;
}


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

.u-desktop {
  display: none;
}

@media screen and (min-width: 768px) {
  .u-desktop {
    display: block;
  }
}

/*# sourceMappingURL=style.css.map */


@media (min-width: 768px) and (max-width: 999px) {

  .is-pc {
    display: none;
  }

  .is-tab {
    display: none;
  }

  .is-sp {
    display: none;
  }

  .not-tab {
    display: none;
  }
}

@media (min-width: 1000px) {

  .is-sp {
    display: none;
  }

  .not-pc {
    display: none;
  }
}

@media (max-width: 767px) {

  .is-pc {
    display: none !important;
    ;
  }

  .is-tab {
    display: none !important;
  }

  .not-sp {
    display: none !important;
  }
}

.no-scroll {
  overflow: hidden;
}

.pankuz__area {
  overflow-x: clip;
}

.pankuz-list {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #CFCFCF;
  font-family: Outfit;
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-align: left;
  letter-spacing: 0.08em;
  margin-left: 10px;
  margin-top: 80px;
  padding-left: 10px;
  padding-right: 10px
}

@media screen and (max-width: 767px) {
  .pankuz-list {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
}

.sectionTitle__wrapper {
  display: flex;
  flex-direction: column;
}

.sectionTitle--ja {
  font-family: "Zen Maru Gothic";
  font-weight: bold;
  font-size: 20px;
  letter-spacing: 0.04em;
  text-align: center;
  color: #f77700;
  opacity: 1;
  margin-bottom: -12px;
}

.sectionTitle--en {
  font-family: Montserrat;
  font-weight: bold;
  font-size: 73px;
  letter-spacing: 0.05em;
  text-align: center;
  color: #222;
  text-transform: uppercase;
}

@media screen and (max-width: 999px) {
  .sectionTitle--ja {
    font-size: 20px;
  }

  .sectionTitle--en {
    font-size: 40px;
  }
}

.button {
  font-family: "Noto Sans JP";
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.1em;
  color: #fff;
  text-align: center;
  display: inline-block;
  position: relative;
  border-radius: 60px;
  width: 245px;

  box-sizing: border-box;
  padding-top: 12px;
  padding-left: 2px;
  padding-bottom: 13px;
}

.button--orange {
  color: #fff;
  background-color: #F87601;
}

.button--orange::before {
  position: absolute;
  display: block;
  content: '';
  background: url(../img/button-arrow.svg) center center / contain no-repeat;
  width: 26.63px;
  height: 9.95px;
  top: 53%;
  right: 28px;
  transform: translateY(-50%);
}

.button--yellow {
  color: #fff;
  background-color: #F3C82E;
}

.button--yellow::before {
  position: absolute;
  display: block;
  content: '';
  background: url(../img/button-arrow.svg) center center / contain no-repeat;
  width: 26.63px;
  height: 9.95px;
  top: 53%;
  right: 28px;
  transform: translateY(-50%);
}

.button--white {
  color: #F77700;
  background-color: #fff;
}

html {
  scroll-behavior: smooth;
}

.pankuz {
  font-size: 30px;
  color: #121212;
  font-weight: 400;
}

@media screen and (min-width: 999px) {
  .pankuz {
    margin-left: auto;
    margin-right: auto;
    width: 1100px;
  }
}

.pankuz a {
  font-family: "Inter", sans-serif;
  color: #B92422;
  font-size: 14px;
  line-height: 1.1666666667;
  letter-spacing: 0.08em;
  position: relative;
  /* padding-right: 40px; */
}

@media screen and (min-width: 780px) {
  .pankuz a {
    /* padding-right: 50px; */
    /* margin-left: 0.9375rem; */
  }
}

.pankuz a::after {
  display: none;
  position: absolute;
  content: "";
  background: #373737;
  width: 32px;
  height: 1px;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
  .pankuz a::after {
    top: 75%;
  }
}

.pankuz .home {
  font-family: "Inter", sans-serif;
  font-size: 14px;
  letter-spacing: 0.06em;
  text-align: left;
  color: #000;
}

@media screen and (max-width: 767px) {
  .pankuz .home {
    font-size: 12px;
  }
}

.pankuz .current-item {
  color: #F77700;
  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 1.1666666667;
  letter-spacing: 0.08em;
  /* margin-left: 10px; */
}

@media screen and (max-width: 767px) {
  .pankuz .current-item {
    font-size: 12px;
  }
}

.pankuz a {
  color: #CFCFCF;
}

@media screen and (min-width: 780px) {
  .pankuz .current-item {
    /* margin-left: 15px; */
    position: relative;
    top: -2px;
  }
}

.current-item::after {
  display: none;
}

html {
  scroll-behavior: smooth;
}




.pankuz__area {}

.pankuz__area span[property="name"] {
  /*     display: inline-block; */
  padding: 0;
  margin-top: -3px;
  max-width: 80%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative !important;
  top: 3px;
}



.pankuz__area {
  overflow-x: clip;
}

.pankuz-list {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  color: #CFCFCF;
  font-family: Outfit;
  font-weight: 500;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-align: left;
  letter-spacing: 0.08em;
  margin-left: 10px;
  margin-top: 20px;
  padding-left: 10px;
  padding-right: 10px
}

.inner__mini {
  max-width: 1000px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 767px) {
  .inner__mini {
    box-sizing: border-box;
    width: 100%;
  }
}

.p-privacy {
  padding-top: 20px;
  padding-bottom: 40px;
}

@media screen and (min-width: 768px) {
  .p-privacy {
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

.privacy__heading {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: -10px;
}

@media screen and (max-width: 767px) {
  .privacy__heading {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: -10px;
  }
}

.p-404 {
  padding-top: 20px;
  padding-bottom: 40px;
}

@media screen and (min-width: 768px) {
  .p-404 {
    padding-top: 20px;
    padding-bottom: 50px;
  }
}

.p-404__title {
  text-align: center;
  opacity: 0.4;
  font-size: 3.2rem;
}

@media screen and (min-width: 768px) {
  .p-404__title {
    font-size: 6.4rem;
  }
}

.p-404__title {
  text-transform: uppercase;
}

.p-404__text {
  text-align: center;
  margin-top: 10px;
}

@media screen and (min-width: 768px) {
  .p-404__text {
    font-size: 3rem;
  }
}

.p-404__button {
  margin-top: 8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 22rem;
  font-size: 2rem;
  border-radius: 99.9rem;
  border: 1.5px solid #333;
  background-color: #333;
  color: #fff;
  text-align: center;
  padding: 0.4rem;
  letter-spacing: 0.05em;
  transition: color 0.3s ease-out, background-color 0.3s ease-out;
  min-height: 4.3rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-404__button {
    max-width: 30rem;
    min-height: 5rem;
    padding: 0.6rem;
  }
}

.p-404__button:hover {
  background-color: #fff;
  color: #333;
}

.button__wrapper--404 {
  text-align: center;
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .button__wrapper--404 {
    margin-top: 30px;
  }
}

.pankuz__area--single {
  margin-top: 15px;
}

input[type="button"] {
  display: block !important;
}



.no-scroll {
  overflow: hidden;
}

@media screen and (max-width: 999px) {
  .contact__itemsButtons .wpcf7-form-control-wrap {
    padding-bottom: 0px;
  }

  .wpcf7-radio {
    display: flex;
    flex-direction: column;
  }
}

.page__visual {
  width: 100%;
  position: relative;
  margin-top: 0px;
}

@media screen and (max-width: 767px) {
  .page__visual {}
}

.page__visualImage {
  width: 100%;
}

.page__visualImage img {
  width: 100%;
}

.page__title {
  position: absolute;
  bottom: -63px;
  left: 50%;
  transform: translateX(-50%);
  padding-top: 0px;
  gap: 5px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: #fff;
  padding-bottom: 9px;
  width: 476px;
  height: 228.5px;
  border-radius: 229px 229px 0 0;
}

@media (min-width: 768px) and (max-width: 999px) {
  .page__title {
    width: 356px;
    height: 168.5px;
  }
}

@media screen and (max-width: 767px) {
  .page__title {
    bottom: -13px;
    padding-top: 16px;
    width: 156px;
    height: 78.5px;
    border-radius: 229px 229px 0 0;
    gap: 0px;

    bottom: -13px;
    padding-top: 11px;
    width: 126px;
    height: 59.5px;
  }
}


.page__title--ja {
  font-family: "Zen Maru Gothic";
  font-weight: bold;
  font-size: 34px;
  letter-spacing: 0.06em;
  line-height: 42px;
  text-align: center;
  color: #222;
}

@media (min-width: 768px) and (max-width: 999px) {
  .page__title--ja {
    font-size: 24px;
  }
}

@media screen and (max-width: 767px) {
  .page__title--ja {
    font-size: 14px;
    line-height: normal;
  }
}


@media screen and (max-width: 767px) {
  .page__title--en--privacy {
    font-size: 10px !important;
  }
}

@media screen and (max-width: 767px) {
  .page__title--ja--privacy {
    font-size: 12px !important;
    line-height: normal;
  }
}

.page__title--en {
  font-family: "Montserrat", sans-serif;
  font-weight: bold;
  font-size: 15px;
  letter-spacing: 0.08em;
  text-align: center;

}



@media screen and (max-width: 767px) {
  .page__title--ja {
    font-size: 14px;
    line-height: normal;
    white-space: nowrap;
  }
}

@media screen and (max-width: 767px) {

  .page__title--en {
    font-size: 13px !important;
  }
}


@media screen and (max-width: 767px) {
  .page__title--ja--not {
    font-size: 12px;
  }
}

@media screen and (max-width: 767px) {
  .page__title--privacy {
    width: 156px;
    height: 58.5px;
  }

  .page__title--ja--privacy {
    font-size: 12px;
  }
}

.p-contact {
  padding-top: 0px;
  padding-bottom: 20px;
}

@media screen and (min-width: 768px) {
  .p-contact {
    padding-top: 0px;
    padding-bottom: 20px;
  }
}

.p-contact__inner {
  width: 100%;
  padding-right: 2rem;
  padding-left: 2rem;
  max-width: 60rem;
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-contact__inner {
    max-width: 103.4rem;
    padding-right: 2.5rem;
    padding-left: 2.5rem;
  }
}

.p-contact__enTitle {
  font-family: "Outfit", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  text-align: center;
  font-size: 4rem;
  letter-spacing: 0.01em;
}

@media screen and (min-width: 768px) {
  .p-contact__enTitle {
    font-size: 5rem;
  }
}

.p-contact__title {
  margin-top: 0.2rem;
  font-size: 1.8rem;
  letter-spacing: 0.07em;
  font-weight: 700;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .p-contact__title {
    font-size: 2rem;
  }
}

.p-form__block {
  border-top: 1px solid #BCBCBC;
  padding-bottom: 3.8rem;
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-form__block {
    padding: 0;
    margin-top: 7.6rem;
  }
}

.p-form__block--confirm {
  padding: 6.1rem 0 5.8rem;
  margin-top: 4rem;
}

@media screen and (min-width: 768px) {
  .p-form__block--confirm {
    padding: 3.1rem 0.6rem 3rem;
    margin-top: 2.4rem;
  }
}

.p-form__wrap {
  margin-inline: auto;
  border-bottom: 1px solid #BCBCBC;
}

@media screen and (min-width: 768px) {
  .p-form__wrap {
    display: flex;
  }
}

.p-form--confirm .p-form__wrap {
  align-items: center;
}

.p-form--confirm .p-form__wrap:nth-child(n+2) {
  margin-top: 1.5rem;
}

@media screen and (min-width: 768px) {
  .p-form--confirm .p-form__wrap:nth-child(n+2) {
    margin-top: 5.8rem;
  }
}

.p-form__wrap label {
  width: 100%;
  font-weight: 500;
  letter-spacing: 0.13em;
  font-size: 1.4rem;
  padding-top: 2rem;
}

@media screen and (min-width: 768px) {
  .p-form__wrap label {
    background-color: #F4F4F4;
    max-width: 24.1rem;
    padding: 2rem 2.65rem;
  }
}

.p-form__wrap .wpcf7-list-item label {
  background-color: transparent;
}

.p-form--confirm .p-form__wrap label {
  margin-top: 0;
}

.p-form__label {
  display: flex;
  align-items: center;
  white-space: nowrap;
}

.p-form__label span {
  color: #FFF;
  background-color: #F87601;
  min-width: 4.3rem;
  height: auto !important;
  padding-top: 1px;
  padding-bottom: 2px;
  font-size: 1.2rem;
  font-weight: 500;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 0;
  margin-left: 1rem;
}

.p-form__selectwrap,
.p-form__text,
.p-form__textarea,
.p-form__select {
  width: 100%;
  letter-spacing: 0.1em;
  background-color: #F2F2F2;
  padding: 0.7rem 0.8rem;
}

@media screen and (min-width: 768px) {

  .p-form__selectwrap,
  .p-form__text,
  .p-form__textarea,
  .p-form__select {
    padding: 0.85rem 1.9rem;
  }
}

/* セレクトボックス ここから */
.p-form__selectwrap {
  position: relative;
}

.p-form__selectwrap:after {
  content: "";
  position: absolute;
  right: 29px;
  top: 18px;
  width: 9px;
  height: 9px;
  border-top: 2px solid #C9C9C9;
  border-left: 2px solid #C9C9C9;
  transform: translateY(-50%) rotate(-135deg);
  font-size: 20px;
  pointer-events: none;
}

.p-form__select {
  width: 100%;
}

.p-form__select:invalid {
  color: #C9C9C9;
}

.p-form__select option {
  color: #333;
}

.p-form__select option:first-child {
  color: #C9C9C9;
}

/* セレクトボックス ここまで */
.p-form__text::-moz-placeholder,
.p-form__textarea::-moz-placeholder {
  color: #C9C9C9;
}

.p-form__text::placeholder,
.p-form__textarea::placeholder {
  color: #C9C9C9;
}

.p-form__textarea {
  height: 17.8rem;
}

/* ラジオボタン ここから */
.p-form__radiobutton {
  display: flex;
  flex-direction: column;
  width: 100%;
  text-align: left;
}

@media screen and (min-width: 768px) {
  .p-form__radiobutton {
    flex-flow: row wrap;
  }
}

.p-form__radio {
  display: flex;
  flex-direction: column;
  row-gap: 1.2rem;
  margin-left: 1.6rem;
}

@media screen and (min-width: 768px) {
  .p-form__radio {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1.6rem 3.5rem;
  }
}

.p-form__wrap .p-form__radio span {
  width: auto;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.13em;
}

.p-form__radio label {
  box-sizing: border-box;
  line-height: 1.4;
  cursor: pointer;
  padding: 0.1rem 2rem 0.1rem 0.9rem;
}

@media screen and (min-width: 768px) {
  .p-form__radio label {
    padding: 0.5rem 2.4rem 0.5rem 0.9rem;
  }
}

.p-form__radio input {
  display: inline-block;
  position: relative;
}

.p-form__radio input:before {
  content: "";
  background: #FFF;
  border: 1px solid #B7B7B7;
  border-radius: 50%;
  display: block;
  position: absolute;
  top: -1.5rem;
  left: -2.6rem;
  width: 2rem;
  height: 2rem;
}

.iphone .p-form__radio input:before {
  top: 0.5rem;
  left: 0;
}

.p-form__radio input:after {
  content: "";
  background: #000;
  border-radius: 50%;
  display: block;
  opacity: 0;
  position: absolute;
  top: -0.5rem;
  left: -2.1rem;
  transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  transition: 0.3s ease;
}

.iphone .p-form__radio input:after {
  top: 1.3rem;
  left: 0.4rem;
}

input[type=radio]:checked::after {
  opacity: 1;
}

/* ラジオボタン ここまで */
.p-form__box {
  text-align: center;
  margin-top: 1.8rem;
}

@media screen and (min-width: 768px) {
  .p-form__box {
    margin-top: 3.9rem;
  }
}

.p-form__box a {
  text-decoration: underline;
  color: #000;
}

/* チェックボックス ここから */
.p-form__check {
  margin: 0.8rem auto 0;
}

@media screen and (min-width: 768px) {
  .p-form__check {
    margin-top: 1.4rem;
  }
}

.p-form__checkbox {
  position: relative;
  display: block;
  padding-left: 2.6rem;
}

@media screen and (min-width: 768px) {
  .p-form__checkbox {
    font-size: 1.2rem;
    letter-spacing: 0.1em;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: auto;
    padding-left: 1.7rem;
  }
}

.p-form__submit {
  margin: 2.3rem auto 0;
  transition: opacity 0.3s ease-out;
}

@media screen and (min-width: 768px) {
  .p-form__submit {
    margin-top: 2.7rem;
  }
}

.p-form__submit.c-normal-btn {
  max-width: 24rem;
  position: relative;
}

@media screen and (min-width: 768px) {
  .p-form__submit.c-normal-btn {
    max-width: 40rem;
  }
}

.p-form__submit.c-normal-btn::before {
  content: "";
  display: block;
  width: 3rem;
  height: 1rem;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 3rem;
  background-image: url(../images/contact1/arrow-right.svg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

@media screen and (min-width: 768px) {
  .p-form__submit.c-normal-btn::before {
    width: 4.4rem;
    height: 1.6rem;
    right: 4rem;
  }
}

.p-form__button {
  cursor: pointer;
  width: 100%;
  border-radius: 99.9rem;
  background-color: #000;
  height: 6rem;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #fff;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .p-form__button {
    height: 8rem;
  }
}

.p-form__submit:hover {
  opacity: 0.8;
}

.p-form__submit.c-normal-btn--back:hover .p-form__button {
  color: #7E7E7E;
}

.p-form__secure {
  width: 16rem;
  height: 8.1rem;
  -o-object-fit: cover;
  object-fit: cover;
  margin: 2.4rem auto 0;
}

@media screen and (min-width: 768px) {
  .p-form__secure {
    margin-top: 4rem;
  }
}

.p-form__answer {
  margin-top: 0.8rem;
}

@media screen and (min-width: 768px) {
  .p-form__answer {
    margin: 0 0 0 8.2rem;
  }
}

.p-form__buttonWrap {
  display: flex;
  flex-direction: column;
  row-gap: 2.2rem;
  margin-top: 2.4rem;
  justify-content: center;
}

@media screen and (min-width: 768px) {
  .p-form__buttonWrap {
    gap: 0 8rem;
    margin-top: 4.7rem;
    flex-direction: row;
  }
}

.p-form__buttonWrap .p-form__submit {
  margin-inline: auto;
}

@media screen and (min-width: 768px) {
  .p-form__buttonWrap .p-form__submit {
    -webkit-margin-start: 0;
    margin-inline-start: 0;
    -webkit-margin-end: 0;
    margin-inline-end: 0;
  }
}

.p-form__banner {
  width: 17rem;
  height: 6.6rem;
  margin-inline: auto;
  margin-top: 2.4rem;
}

@media screen and (min-width: 768px) {
  .p-form__banner {
    margin-top: 4rem;
  }
}

.wpcf7-form-control-wrap {
  width: 100%;
  display: block;
  padding: 1.5rem 0 2.2rem;
}

@media screen and (min-width: 768px) {
  .wpcf7-form-control-wrap {
    padding: 3rem 0 3rem 4rem;
  }
}

@media screen and (min-width: 768px) {
  .p-form__radiobutton .wpcf7-form-control-wrap {
    padding: 3.6rem 0 3.6rem 4rem;
  }
}

.wpcf7-list-item {
  margin: 0;
}

.screen-reader-response,
.wpcf7-not-valid-tip {
  margin-top: 0.4rem;
  color: #C00;
  display: block;
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {

  .screen-reader-response,
  .wpcf7-not-valid-tip {
    font-size: 1.5rem;
  }
}

li[id^=wpcf7-f171-o1] {
  display: none;
}

.p-form__radiobutton .wpcf7-not-valid-tip,
.p-form__check .wpcf7-not-valid-tip {
  margin-left: 0;
}

.wpcf7 form .wpcf7-response-output {
  display: none;
}

.wpcf7-spinner {
  display: none;
}

.p-form__check .wpcf7-list-item-label {
  position: relative;
  font-size: 1.2rem;
  margin-left: 1.6rem;
  letter-spacing: 0.13em;
  font-weight: 500;
}

@media screen and (min-width: 768px) {
  .p-form__check .wpcf7-list-item-label {
    font-size: 1.4rem;
    margin-left: 0;
  }
}

.p-form__check .wpcf7-list-item-label:before {
  border: 1px solid #B7B7B7;
  content: "";
  display: block;
  position: absolute;
  top: 0.4rem;
  left: -1.6rem;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 3px;
}

@media screen and (min-width: 768px) {
  .p-form__check .wpcf7-list-item-label:before {
    top: 0.3rem;
    left: -2.4rem;
    width: 1.6rem;
    height: 1.6rem;
  }
}

.p-form__check .wpcf7-list-item-label:after {
  border-bottom: 2px solid #000;
  border-left: 2px solid #000;
  content: "";
  display: block;
  opacity: 0;
  position: absolute;
  top: 0.7rem;
  left: -1.4rem;
  width: 0.8rem;
  height: 0.4rem;
  transform: rotate(-45deg);
  transition: 0.3s ease;
}

@media screen and (min-width: 768px) {
  .p-form__check .wpcf7-list-item-label:after {
    left: -2.2rem;
    width: 1.2rem;
    height: 0.6rem;
  }
}

input[type=checkbox]:checked+.wpcf7-list-item-label:after {
  opacity: 1;
}

.p-form__radiobutton .wpcf7-not-valid-tip,
.p-form__check .wpcf7-not-valid-tip {
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {

  .p-form__radiobutton .wpcf7-not-valid-tip,
  .p-form__check .wpcf7-not-valid-tip {
    font-size: 1.6rem;
  }
}

.p-form__policy {
  text-align: center;
  font-size: 2rem;
  letter-spacing: 0.1em;
  font-weight: 700;
}

@media screen and (min-width: 768px) {
  .p-form__policy {
    margin-top: 6.2rem;
  }
}

.p-form__policyBlock::-webkit-scrollbar {
  width: 1.7rem;
}

.p-form__policyBlock::-webkit-scrollbar-track {
  background-color: #F6F6F6;
}

.p-form__policyBlock::-webkit-scrollbar-thumb {
  background-color: #D5D5D5;
  border: 3px solid #F6F6F6;
  border-radius: 10px;
}

.p-form__policyBlock {
  margin-top: 2rem;
  height: 33rem;
  border: 1px solid #D5D5D5;
  overflow-y: scroll;
  padding: 3rem 1.4rem;
}

@media screen and (min-width: 768px) {
  .p-form__policyBlock {
    padding: 4rem 4.9rem;
  }
}

.p-form__policyWrap {
  width: 100%;
  height: 100%;
}

.p-form__policyText {
  font-size: 1.3rem;
  letter-spacing: 0.02em;
  line-height: 2;
  text-align: left;
}

@media screen and (min-width: 768px) {
  .p-form__policyText {
    font-size: 1.4rem;
  }
}

.bottom__buttonWrapper {
  text-align: center;
}

.pankuz__area img {
  transform: translateY(-6px);
  margin-left: 10px;
  margin-right: 10px;
  width: 15px
}

.checks {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 30px;
  margin-bottom: 30px;
}

.checkItem {}

.checkItem span,
.checkItem label {
  padding: 0 !important;
}

.p-form__checks {
  margin: 0 0 0 70px !important;
}

.event__content {
  margin-left: 47px;
}

.recruit__inner {
  max-width: calc(108rem + 4rem);
  padding-left: 2rem;
  padding-right: 2rem;
  margin-left: auto;
  margin-right: auto;
}

.recruit__enTitle {
  display: block;
  text-align: center;
  text-transform: uppercase;
  font-family: "Outfit";
  font-size: 1.4rem;
  letter-spacing: 0.08em;
  font-weight: 500;
  color: #F77700;
}

.recruit__title {
  font-family: "Noto Serif JP";
  text-align: center;
  font-weight: 400;
  font-size: 3.2rem;
  letter-spacing: 0.2em;
}

.recruitDetail__panel {
  display: block;
  margin-top: 46px;
}

.recruitDetail__block {
  padding-bottom: 25px;
  background-color: #fff;
}

@media screen and (min-width: 768px) {
  .recruitDetail__block {
    padding-bottom: 50px;
  }
}

@media screen and (min-width: 768px) {
  .recruitDetail__block:nth-of-type(n+2) {
    margin-top: 5rem;
  }
}

.recruitDetail__position {
  font-family: "Noto Serif JP";
  font-weight: 500;
  font-size: 21px;
  letter-spacing: 0.08em;
  text-align: center;
  color: #fff;
  background-color: #085F8E;
  padding-top: 18px;
  padding-bottom: 14px;
}

@media screen and (max-width: 767px) {
  .recruitDetail__position {
    font-size: 16px;
    padding-top: 9px;
    padding-bottom: 7px;
  }
}

.recruitDetail__list {
  margin-inline: auto;
  padding-left: 10px;
  padding-right: 10px;
  padding-top: 20px;
}

@media screen and (min-width: 768px) {
  .recruitDetail__list {
    max-width: 101.4rem;
    padding-left: 20px;
    padding-right: 20px;
	  padding-top: 7.6rem;
  }
}

.recruitDetail__list:nth-of-type(n+2) {
  padding-top: 20px;
}

@media screen and (min-width: 768px) {
  .recruitDetail__list:nth-of-type(n+2) {
    padding-top: 16.5px;
  }
}

.recruitDetail__term {
  font-family: "Noto Sans JP";
  font-weight: bold;
  font-size: 17px;
  letter-spacing: 0.08em;
  text-align: left;
  color: #F77700;
}

@media screen and (max-width: 767px) {
  .recruitDetail__term {
    font-size: 15px;
  }
}

.recruitDetail__description {
  margin-top: 1.1rem;
  font-size: 13px;
  letter-spacing: 0.08em;
  line-height: 2;
  border-bottom: 1px solid #CCD0D5;
  padding-bottom: 1.6rem;
}


@media screen and (min-width: 768px) {
  .recruitDetail__description {
    font-size: 1.4rem;
    line-height: 2;
  }
}

#recruitDetail .sectionTitle--en {
  text-align: center;
  font-family: "Cormorant Garamond";
  font-weight: 500;
  font-size: 46px;
  letter-spacing: 0.14em;

  text-align: center;
  color: #f8f8f8;

}

#recruitDetail .sectionTitle--ja {
  text-align: center;
  font-family: "Noto Sans JP";
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 0.2em;
  text-align: center;
  color: #f8f8f8;
  opacity: 1;
  margin-top: 10px;
}

.button--blue {
  color: #fff;
  background-color: #085F8E;
}

.button--blue::before {
  position: absolute;
  display: block;
  content: '';
  width: 19.26px;
  height: 7.19px;
  background: url(../img/button-arrow-white.svg) center center / contain no-repeat;
  top: 50%;
  right: 7%;
  transform: translateY(-50%);
}

.buttonWrapper--recruit {
  text-align: center;
  margin-top: 49px;
}

.recruit__button {
  width: 316px !important;
  font-family: "Noto Serif JP" !important;
  font-weight: 500 !important;
  font-size: 16px !important;
  text-align: center !important;
  color: #fff !important;
  padding-top: 17px !important;
  padding-bottom: 16px !important;
}