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

/* Remove default padding */
ul,
ol {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
h5,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core root defaults */
html {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  line-height: 1.5;
  min-height: 100vh;
  text-rendering: optimizeLegibility;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  display: block;
  max-width: 100%;
  width: 100%;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Blur images when they have no alt attribute */
/* フォームリセット */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

/* ホバー */
a {
  -webkit-text-decoration: none;
  color: inherit;
  text-decoration: none!important;
  transition: opacity 0.3s;
}

/* ==========================================================================
Nunito
========================================================================== */
@font-face {
  font-display: swap;
  font-family: "Nunito";
  font-style: normal;
  font-weight: 900;
  src: url("https://www.nolla-naguri.jp/assets/fonts/Nunito/Nunito-Black.ttf") format("TrueType");
}
@font-face {
  font-display: swap;
  font-family: "Nunito";
  font-style: normal;
  font-weight: 800;
  src: url("https://www.nolla-naguri.jp/assets/fonts/Nunito/Nunito-ExtraBold.ttf") format("TrueType");
}
@font-face {
  font-display: swap;
  font-family: "Nunito";
  font-style: normal;
  font-weight: 700;
  src: url("https://www.nolla-naguri.jp/assets/fonts/Nunito/Nunito-Bold.ttf") format("TrueType");
}
@font-face {
  font-display: swap;
  font-family: "Nunito";
  font-style: normal;
  font-weight: 600;
  src: url("https://www.nolla-naguri.jp/assets/fonts/Nunito/Nunito-SemiBold.ttf") format("TrueType");
}
@font-face {
  font-display: swap;
  font-family: "Nunito";
  font-style: normal;
  font-weight: 500;
  src: url("https://www.nolla-naguri.jp/assets/fonts/Nunito/Nunito-Medium.ttf") format("TrueType");
}
@font-face {
  font-display: swap;
  font-family: "Nunito";
  font-style: normal;
  font-weight: 400;
  src: url("https://www.nolla-naguri.jp/assets/fonts/Nunito/Nunito-Regular.ttf") format("TrueType");
}
@font-face {
  font-display: swap;
  font-family: "Nunito";
  font-style: normal;
  font-weight: 300;
  src: url("https://www.nolla-naguri.jp/assets/fonts/Nunito/Nunito-Light.ttf") format("TrueType");
}
@font-face {
  font-display: swap;
  font-family: "Nunito";
  font-style: normal;
  font-weight: 200;
  src: url("https://www.nolla-naguri.jp/assets/fonts/Nunito/Nunito-ExtraLight.ttf") format("TrueType");
}
@font-face {
  font-display: swap;
  font-family: "Nunito";
  font-style: normal;
  font-weight: 100;
  src: url("https://www.nolla-naguri.jp/assets/fonts/Nunito/Nunito-Thin.ttf") format("TrueType");
}
/* ==========================================================================
Zen Maru Gothic
========================================================================== */
@font-face {
  font-display: swap;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 900;
  src: url("https://www.nolla-naguri.jp/assets/fonts/Zen_Maru_Gothic/ZenMaruGothic-Black.ttf") format("TrueType");
}
@font-face {
  font-display: swap;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 700;
  src: url("https://www.nolla-naguri.jp/assets/fonts/Zen_Maru_Gothic/ZenMaruGothic-Bold.ttf") format("TrueType");
}
@font-face {
  font-display: swap;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 500;
  src: url("https://www.nolla-naguri.jp/assets/fonts/Zen_Maru_Gothic/ZenMaruGothic-Medium.ttf") format("TrueType");
}
@font-face {
  font-display: swap;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 400;
  src: url("https://www.nolla-naguri.jp/assets/fonts/Zen_Maru_Gothic/ZenMaruGothic-Regular.ttf") format("TrueType");
}
@font-face {
  font-display: swap;
  font-family: "Zen Maru Gothic";
  font-style: normal;
  font-weight: 300;
  src: url("https://www.nolla-naguri.jp/assets/fonts/Zen_Maru_Gothic/ZenMaruGothic-Light.ttf") format("TrueType");
}
/* リキッドレイアウト対応 */
/*********************************
	BASE SET
*********************************/
html {
  font-size: 16px;
}
@media (max-width: 750px) {
  html {
    font-size: 2.1333333333vw;
  }
}
@media screen and (min-width: 751px) {
  html {
    font-size: 1.8823529412vw;
  }
}
@media (min-width: 850px) {
  html {
    font-size: 16px;
  }
}

html {
  -webkit-text-size-adjust: 100%;
  scroll-behavior: auto;
  scroll-margin-top: 6.25rem;
}

body {
  background-color: #f8fff8;
  color: #243239;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 1rem;
  line-height: 2;
}

body.open {
  overflow-y: scroll;
}

a {
  display: inline-block;
}

input,
button,
select,
textarea {
  color: #243239;
}

summary {
  display: block;
  list-style: none;
}

summary::-webkit-details-marker {
  display: none;
}

.l-footer {
  background-color: #ffffff;
  padding: 6.25rem 0rem 5rem;
}
@media screen and (min-width: 751px) {
  .l-footer {
    padding: 4.25rem 0rem 3.125rem;
  }
}

.l-footer__inner.l-inner {
  max-width: 82.5rem;
}

.l-footer__main {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (min-width: 751px) {
  .l-footer__main {
    flex-direction: row;
  }
}

.l-footer__logo {
  display: flex;
  flex-direction: column;
  gap: 3.125rem;
}
@media screen and (min-width: 751px) {
  .l-footer__logo {
    gap: 1.875rem;
    margin-top: 0.625rem;
    max-width: 11.5625rem;
    width: 14.9193548387%;
  }
}

.l-footer__logo-link {
  transition: all 0.3s ease 0s;
}

@media (hover: hover) {
  .l-footer__logo-link:hover {
    opacity: 0.7;
  }
}
.l-footer__logo-image img {
  -o-object-fit: contain;
  height: auto;
     object-fit: contain;
  width: 100%;
}

.l-footer__logo-image--black {
  margin: 0 auto;
  width: 18.75rem;
}
@media screen and (min-width: 751px) {
  .l-footer__logo-image--black {
    margin: 0;
    margin: initial;
    width: auto;
    width: initial;
  }
}

.l-footer__logo-image--black img {
  aspect-ratio: 185/73;
}

.l-footer__logo-image--certification {
  margin: 0 auto;
  width: 6.25rem;
}
@media screen and (min-width: 751px) {
  .l-footer__logo-image--certification {
    margin: 0;
    margin: initial;
    max-width: 4.75rem;
    width: 41.0810810811%;
  }
}

.l-footer__logo-image--certification img {
  aspect-ratio: 76/88;
}

.l-footer__content {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 6.25rem;
  margin-top: 4.375rem;
}
@media screen and (min-width: 751px) {
  .l-footer__content {
    flex-direction: row;
    gap: clamp(
    0.5rem,
    -6.7211538462rem + 15.3846153846vw,
    7.125rem
  );
    justify-content: flex-end;
    margin-top: 0;
    margin-top: initial;
  }
}

.l-footer__nav {
  grid-gap: 2.8125rem 0.625rem;
  display: grid;
  gap: 2.8125rem 0.625rem;
  grid-template-areas: "menu--01 menu--03" "menu--01 menu--04" "menu--02 menu--04";
}
@media screen and (min-width: 751px) {
  .l-footer__nav {
    -moz-column-gap: clamp(
    0.625rem,
    -2.9174528302rem + 7.5471698113vw,
    3.875rem
  );
         column-gap: clamp(
    0.625rem,
    -2.9174528302rem + 7.5471698113vw,
    3.875rem
  );
    grid-template-areas: "menu--01 menu--02 menu--04" "menu--01 menu--03 menu--04";
    max-width: 36.5625rem;
    row-gap: 0;
    width: 63.1067961165%;
  }
}

.l-footer__menu--01 {
  grid-area: menu--01;
}

.l-footer__menu--02 {
  grid-area: menu--02;
}

.l-footer__menu--03 {
  grid-area: menu--03;
}

.l-footer__menu--04 {
  grid-area: menu--04;
}

.l-footer__menu {
  display: flex;
  flex-direction: column;
  gap: 2.8125rem;
}
@media screen and (min-width: 751px) {
  .l-footer__menu {
    gap: clamp(
    0.625rem,
    0.2162554427rem + 0.8708272859vw,
    1rem
  );
  }
}

.l-footer__menu-item a {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  transition: all 0.3s ease 0s;
  word-break: keep-all;
}
@media screen and (min-width: 751px) {
  .l-footer__menu-item a {
    font-size: clamp(
    0.6875rem,
    0.4831277213rem + 0.435413643vw,
    0.875rem
  );
    line-height: 1.4285714286;
  }
}

@media (hover: hover) {
  .l-footer__menu-item a:hover {
    opacity: 0.7;
  }
}
.l-footer__actions {
  display: flex;
  flex-direction: column;
  gap: 3.125rem;
}
@media screen and (min-width: 751px) {
  .l-footer__actions {
    gap: clamp(
    0.625rem,
    -0.0562409289rem + 1.4513788099vw,
    1.25rem
  );
  }
}

.l-footer__actions-item {
  text-align: center;
}
@media screen and (min-width: 751px) {
  .l-footer__actions-item {
    min-width: clamp(
    11.25rem,
    7.8437953556rem + 7.2568940493vw,
    14.375rem
  );
    text-align: left;
    text-align: initial;
  }
}

.l-footer__actions-item a {
  max-width: 31.25rem;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .l-footer__actions-item a {
    font-size: clamp(
    0.75rem,
    0.6137518142rem + 0.290275762vw,
    0.875rem
  );
  }
}

.l-footer__social {
  margin-top: 3.125rem;
}
@media screen and (min-width: 751px) {
  .l-footer__social {
    margin-top: -1.375rem;
  }
}

.l-footer__social-items {
  align-items: center;
  display: flex;
  gap: 2.5rem;
  justify-content: center;
}
@media screen and (min-width: 751px) {
  .l-footer__social-items {
    gap: 0.625rem;
    justify-content: initial;
    margin-left: auto;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.l-footer__social-item a {
  transition: all 0.3s ease 0s;
}

@media (hover: hover) {
  .l-footer__social-item a:hover {
    opacity: 0.7;
  }
}
.l-footer__social-item img {
  -o-object-fit: contain;
  height: auto;
     object-fit: contain;
  width: 3.125rem;
}
@media screen and (min-width: 751px) {
  .l-footer__social-item img {
    width: 1.5625rem;
  }
}

.l-footer__bottom {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  justify-content: space-between;
  margin-top: 5rem;
}
@media screen and (min-width: 751px) {
  .l-footer__bottom {
    flex-direction: row-reverse;
    gap: initial;
    margin-top: 2.5rem;
  }
}

.l-footer__sub-menu {
  grid-gap: 2.5rem;
  display: grid;
  gap: 2.5rem;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (min-width: 751px) {
  .l-footer__sub-menu {
    grid-template-columns: repeat(4, auto);
  }
}

.l-footer__sub-menu-item a {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.4583333333;
  text-align: center;
  transition: all 0.3s ease 0s;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .l-footer__sub-menu-item a {
    font-size: 0.75rem;
    line-height: 1.4166666667;
    text-align: left;
    text-align: initial;
    width: auto;
    width: initial;
  }
}

@media (hover: hover) {
  .l-footer__sub-menu-item a:hover {
    opacity: 0.7;
  }
}
.l-footer__copyright {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.4583333333;
}
@media screen and (min-width: 751px) {
  .l-footer__copyright {
    font-size: 0.75rem;
    line-height: 1.4166666667;
  }
}

.l-header {
  left: 0;
  position: fixed;
  top: 1.25rem;
  width: 100%;
  z-index: 1000;
}
@media screen and (min-width: 751px) {
  .l-header {
    top: 1.875rem;
  }
}

.l-header__main {
  align-items: center;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 6.25rem;
  display: flex;
  height: 100%;
  justify-content: space-between;
  margin: 0 1.25rem;
  padding: 1.25rem 2.5rem;
}
@media screen and (min-width: 751px) {
  .l-header__main {
    margin: 0 1.875rem;
    padding: 0.875rem 2.3125rem;
  }
}

.l-header__logo {
  width: 11.25rem;
}
@media screen and (min-width: 751px) {
  .l-header__logo {
    width: 8.3125rem;
  }
}

.l-header__logo img {
  -o-object-fit: contain;
  aspect-ratio: 133/52;
  height: auto;
     object-fit: contain;
  width: 100%;
}

.l-header__nav {
  display: none;
  margin-right: 6.125rem;
}
@media screen and (min-width: 1024px) {
  .l-header__nav {
    display: block;
  }
}

.l-header__nav-items {
  display: flex;
}

.l-header__nav-list-item a {
  font-size: 0.875rem;
  font-weight: 400;
  height: 100%;
  letter-spacing: 0.05em;
  line-height: 1.4285714286;
  padding: 0.625rem 1.25rem;
  position: relative;
  transition: all 0.3s ease 0s;
}

.l-header__nav-list-item a:after {
  background-color: #00a5c0;
  border-radius: 50%;
  bottom: 0;
  content: "";
  display: block;
  height: 0.1875rem;
  left: 50%;
  opacity: 0;
  position: absolute;
  transform: translate(-50%, 0);
  transition: all 0.3s ease 0s;
  width: 0.1875rem;
}

.l-header__nav-list-item a span {
  transition: all 0.3s ease 0s;
}

@media (hover: hover) {
  .l-header__nav-list-item a:hover:after {
    opacity: 1;
  }
}
@media (hover: hover) {
  .l-header__nav-list-item a:hover span {
    color: #00a5c0;
  }
}
.l-header__hamburger {
  cursor: pointer;
  padding: 0.625rem;
  position: fixed;
  right: 3.75rem;
  top: 2.375rem;
  z-index: 1100;
}
@media screen and (min-width: 751px) {
  .l-header__hamburger {
    top: 2.8125rem;
  }
}

.l-header__hamburger-btn {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
@media screen and (min-width: 751px) {
  .l-header__hamburger-btn {
    gap: 0.5rem;
  }
}

.l-header__hamburger-btn span {
  background-color: #243239;
  border-radius: 6.25rem;
  display: block;
  height: 0.375rem;
  transition: all 0.3s ease 0s;
  width: 4.5rem;
}
@media screen and (min-width: 751px) {
  .l-header__hamburger-btn span {
    height: 0.21875rem;
    width: 2.25rem;
  }
}

.l-header__hamburger.open .l-header__hamburger-btn span {
  background-color: #ffffff;
  width: 4.75rem;
}
@media screen and (min-width: 751px) {
  .l-header__hamburger.open .l-header__hamburger-btn span {
    width: 2.5rem;
  }
}

.l-header__hamburger.open .l-header__hamburger-btn span:nth-child(1) {
  transform: translate(0.09375rem, 0.5625rem) rotate(18deg);
}
@media screen and (min-width: 751px) {
  .l-header__hamburger.open .l-header__hamburger-btn span:nth-child(1) {
    transform: translate(0.09375rem, 0.1875rem) rotate(18deg);
  }
}

.l-header__hamburger.open .l-header__hamburger-btn span:nth-child(2) {
  transform: translate(0.09375rem, -0.6875rem) rotate(-18deg);
  transition: all 0.3s ease 0s;
}
@media screen and (min-width: 751px) {
  .l-header__hamburger.open .l-header__hamburger-btn span:nth-child(2) {
    transform: translate(0.09375rem, -0.5rem) rotate(-18deg);
  }
}

@media screen and (hover: hover) and (min-width: 751px) {
  .l-header__hamburger:not(.open) .l-header__hamburger-btn:hover span:nth-child(2) {
    width: 1.875rem;
  }
}
.l-header__hamburger-text {
  display: block;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.4583333333;
  transform: translate(0.09375rem, 0.1875rem);
  transition: all 0.3s ease 0s;
}
@media screen and (min-width: 751px) {
  .l-header__hamburger-text {
    font-size: 0.75rem;
    line-height: 1.4166666667;
  }
}

.l-header__hamburger.open .l-header__hamburger-text {
  color: #ffffff;
  transform: translate(0.3125rem, 0.1875rem);
}

.l-header__gnav-modal {
  background-color: #243239;
  height: 100svh;
  left: 0;
  opacity: 0;
  position: fixed;
  top: 0;
  transition: all 0.5s;
  visibility: hidden;
  width: 100%;
}

@media screen and (min-width: 751px) {
  .l-header__gnav-modal.open {
    opacity: 1;
    visibility: visible;
    z-index: 100;
  }
}

.l-header__gnav-modal-bg {
  display: block;
  height: 100%;
  width: 33.3333333333%;
}

.l-header__gnav-modal-bg img {
  -o-object-fit: cover;
  height: 100%;
     object-fit: cover;
  width: 100%;
}

.l-header__gnav-menu {
  background-color: #243239;
  display: flex;
  flex-direction: column;
  height: 100vh;
  opacity: 0;
  padding: 2rem 3.5rem 6.25rem;
  padding-bottom: 0;
  position: fixed;
  right: 0;
  top: 0;
  transition: all 0.5s;
  visibility: hidden;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .l-header__gnav-menu {
    padding: 2.3125rem 4.25rem 5.8125rem;
    width: 66.6666666667%;
  }
}

.l-header__gnav-menu.open {
  opacity: 1;
  overflow: auto;
  visibility: visible;
  z-index: 1000;
}

.l-header__gnav-menu-logo {
  margin-top: 0.5rem;
  width: 11.25rem;
}
@media screen and (min-width: 751px) {
  .l-header__gnav-menu-logo {
    width: 8.3125rem;
  }
}

.l-header__gnav-menu-logo img {
  -o-object-fit: contain;
  aspect-ratio: 133/52;
  height: auto;
     object-fit: contain;
  width: 100%;
}

.l-header__gnav {
  display: flex;
  gap: 4.125rem;
  margin: 5.625rem auto 0;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 751px) {
  .l-header__gnav {
    gap: 11.1111111111svw;
    margin: 10svh auto 0;
  }
}

.l-header__gnav-item a {
  color: #ffffff;
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  padding: 1.375rem 0rem;
  transition: all 0.3s ease 0s;
}
@media screen and (min-width: 751px) {
  .l-header__gnav-item a {
    font-size: 1rem;
    line-height: 1.5;
    padding: 1.25rem 0.625rem;
  }
}

@media (hover: hover) {
  .l-header__gnav-item a:hover {
    opacity: 0.7;
  }
}
.l-header__gnav-cta {
  display: flex;
  flex-direction: column;
  gap: 3.125rem;
  margin: 4.375rem auto 0;
  width: 78%;
}
@media screen and (min-width: 751px) {
  .l-header__gnav-cta {
    flex-direction: row;
    gap: 2.5rem;
    margin: 13.9583333333svh auto 0;
  }
}

.l-header__gnav-cta-item {
  flex: 1;
}

.l-header__gnav-cta-item a {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.4285714286;
  padding: 2.5rem 1.125rem;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .l-header__gnav-cta-item a {
    font-size: 1rem;
    line-height: 1.5;
    padding: 1.125rem;
  }
}

@media (hover: hover) {
  .l-header__gnav-cta-item a.--transparent:hover {
    background-color: #566a74;
  }
}
.l-inner {
  margin-left: auto;
  margin-right: auto;
  padding-left: 5.3%;
  padding-right: 5.3%;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .l-inner {
    max-width: 930px;
    padding-left: 40px;
    padding-right: 40px;
  }
}

.c-accordion {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left top;
  background-repeat: repeat-x;
  background-size: 4px 1px;
}

.c-accordion__header {
  cursor: pointer;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.4;
  padding: 2.625rem 4.75rem 2.625rem 0;
  position: relative;
}
@media screen and (min-width: 751px) {
  .c-accordion__header {
    font-size: 1.25rem;
    padding: 1.375rem 3.4375rem 1.375rem 0;
  }
}

.c-accordion__header:before,
.c-accordion__header:after {
  background-color: #243239;
  border-radius: 0.3125rem;
  content: "";
  display: block;
  height: 0.25rem;
  position: absolute;
  right: 0;
  top: 4.375rem;
  width: 2.25rem;
}
@media screen and (min-width: 751px) {
  .c-accordion__header:before,
  .c-accordion__header:after {
    height: 0.125rem;
    top: 2.5rem;
    width: 1.125em;
  }
}

.c-accordion__header:after {
  transform: rotate(90deg);
  transition: all 0.3s ease 0s;
}

.is-opened .c-accordion__header:after {
  transform: rotate(0deg);
}

.c-accordion__header-title {
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .c-accordion__header-title {
    font-size: 1.125rem;
    line-height: 2;
  }
}

.c-accordion__content {
  overflow: hidden;
}

.c-accordion__content-inner {
  height: 100%;
  padding-bottom: 3.125rem;
}
@media screen and (min-width: 751px) {
  .c-accordion__content-inner {
    padding-bottom: 1.5625rem;
  }
}

.c-accordion__content-text {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .c-accordion__content-text {
    font-size: 1rem;
    line-height: 2;
  }
}

.c-accordion__content-dt,
.c-accordion__content-dd {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .c-accordion__content-dt,
  .c-accordion__content-dd {
    font-size: 1rem;
    line-height: initial;
    line-height: 2;
  }
}

.c-accordion__content-dl + .c-accordion__content-dl {
  margin-top: 3.125rem;
}
@media screen and (min-width: 751px) {
  .c-accordion__content-dl + .c-accordion__content-dl {
    margin-top: 1.5625rem;
  }
}

.c-accordion__content-dt {
  padding-left: 1em;
  text-indent: -1em;
}

.c-accordion__content-note {
  margin-top: 1.875rem;
}
@media screen and (min-width: 751px) {
  .c-accordion__content-note {
    margin-top: 0;
    margin-top: initial;
  }
}

.c-accordion__content-note li {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0em;
  line-height: 2.3333333333;
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (min-width: 751px) {
  .c-accordion__content-note li {
    font-size: 0.875rem;
    line-height: 2;
  }
}

.c-accordion__content-ul {
  padding-left: 1em;
  text-indent: -1em;
}

.c-accordion__content-ol {
  padding-left: 1.2em;
  text-indent: -1em;
}
@media screen and (min-width: 751px) {
  .c-accordion__content-ol {
    padding-left: 1.5em;
  }
}

.c-breadcrumbs__items {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1.5em;
}
@media screen and (min-width: 751px) {
  .c-breadcrumbs__items {
    gap: 0 1em;
  }
}

.c-breadcrumbs__item {
  color: #ffffff;
  font-size: 1.5rem;
  line-height: 1.2;
}
@media screen and (min-width: 751px) {
  .c-breadcrumbs__item {
    font-size: 0.75rem;
  }
}

.c-breadcrumbs__item.u-ellipsis {
  max-width: 12.5rem;
}
@media screen and (min-width: 751px) {
  .c-breadcrumbs__item.u-ellipsis {
    max-width: 13.5625rem;
  }
}

.c-breadcrumbs.--black .c-breadcrumbs__item {
  color: #243239;
}

.c-breadcrumbs__item:nth-of-type(1) a {
  border-bottom: 1px solid #ffffff;
}

.--nobg .c-breadcrumbs__item:nth-of-type(1) a {
  border-bottom: 1px solid #243239;
}

.c-breadcrumbs.--black .c-breadcrumbs__item:nth-of-type(1) a {
  border-bottom: 1px solid #243239;
}

.c-breadcrumbs__item:not(:last-of-type) {
  color: #ffffff;
}

.c-breadcrumbs.--black .c-breadcrumbs__item:not(:last-of-type) {
  color: #243239;
}

.c-breadcrumbs__item:not(:last-of-type) {
  color: #ffffff;
  position: relative;
}

.c-breadcrumbs.--black .c-breadcrumbs__item:not(:last-of-type) {
  color: #243239;
}

.c-breadcrumbs__item:not(:last-of-type):after {
  color: #ffffff;
  content: "・";
  position: relative;
  right: -0.6em;
}
@media screen and (min-width: 751px) {
  .c-breadcrumbs__item:not(:last-of-type):after {
    right: -0.8em;
  }
}

.--nobg .c-breadcrumbs__item:not(:last-of-type):after {
  color: #243239;
}

.c-breadcrumbs.--black .c-breadcrumbs__item:not(:last-of-type):after {
  color: #243239;
}

.c-button {
  border-radius: 6.25rem;
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.4285714286;
  padding: 1.4285714286em;
  text-align: center;
  transition: all 0.3s ease 0s;
}
@media screen and (min-width: 751px) {
  .c-button {
    font-size: 0.875rem;
    line-height: 1.4285714286;
    width: 100%;
  }
}

.c-button.--blue {
  background-color: #00a5c0;
  border: 0.125rem solid #00a5c0;
  color: #ffffff;
}
@media screen and (min-width: 751px) {
  .c-button.--blue {
    border: 0.0625rem solid #00a5c0;
  }
}

@media (hover: hover) {
  .c-button.--blue:hover {
    filter: brightness(1.2);
  }
}
.c-button.--white {
  background-color: #ffffff;
  border: 0.125rem solid #243239;
  color: #243239;
}
@media screen and (min-width: 751px) {
  .c-button.--white {
    border: 0.0625rem solid #243239;
  }
}

@media (hover: hover) {
  .c-button.--white:hover {
    background-color: #e1f2f2;
  }
}
.c-button.--transparent {
  background-color: transparent;
  border: 0.125rem solid #ffffff;
  color: #ffffff;
}
@media screen and (min-width: 751px) {
  .c-button.--transparent {
    border: 0.0625rem solid #ffffff;
  }
}

@media (hover: hover) {
  .c-button.--transparent:hover {
    background-color: #e1f2f2;
  }
}
.c-floating-cta {
  bottom: 0.625rem;
  position: fixed;
  right: 0.625rem;
  transition: all 0.3s ease 0s;
  z-index: 100;
}
@media screen and (min-width: 751px) {
  .c-floating-cta {
    bottom: 2.125rem;
    right: 2.125rem;
  }
}

.c-floating-cta__link {
  min-width: 100px;
  transition: all 0.3s ease 0s;
  width: 10rem;
}
@media screen and (min-width: 751px) {
  .c-floating-cta__link {
    max-width: 10.625rem;
    width: 11.8055555556vw;
  }
}

.c-floating-cta__image img {
  -o-object-fit: contain;
  aspect-ratio: 1/1;
  height: auto;
  max-width: 100%;
     object-fit: contain;
}

@media (hover: hover) {
  .c-floating-cta__link:hover {
    transform: scale(1.1);
  }
}
.c-floating {
  opacity: 0;
  transition: all 0.3s ease 0s;
  visibility: hidden;
}

.c-floating.is-active {
  opacity: 1;
  visibility: visible;
}

.c-form__list {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}
@media screen and (min-width: 751px) {
  .c-form__list {
    gap: 1.875rem;
  }
}

.c-form__label {
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 1.5625;
}
@media screen and (min-width: 751px) {
  .c-form__label {
    font-size: 1.125rem;
    line-height: 2.7777777778;
  }
}

.c-form__required {
  background-color: #00a5c0;
  border-radius: 6.25rem;
  color: #ffffff;
  font-size: 1.5rem;
  letter-spacing: 0.076em;
  line-height: 1;
  margin-left: 1.25rem;
  padding: 0.25rem 1.25rem;
  position: relative;
}
@media screen and (min-width: 751px) {
  .c-form__required {
    font-size: 0.75rem;
    margin-left: 0.625rem;
    padding: 0.125rem 0.625rem;
  }
}

.c-form__any {
  background-color: #8d9ba2;
  border-radius: 6.25rem;
  color: #ffffff;
  font-size: 1.5rem;
  letter-spacing: 0.076em;
  line-height: 1;
  margin-left: 1.25rem;
  padding: 0.25rem 1.25rem;
  position: relative;
}
@media screen and (min-width: 751px) {
  .c-form__any {
    font-size: 0.75rem;
    margin-left: 0.625rem;
    padding: 0.125rem 0.625rem;
  }
}

.c-form__data {
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 1.5625;
  margin-top: 1.875rem;
}
@media screen and (min-width: 751px) {
  .c-form__data {
    font-size: 1.125rem;
    line-height: 2.7777777778;
    margin-top: 0rem;
  }
}

.c-form__input {
  background-color: #ffffff;
  border: 1px solid #243239;
  border-radius: 0.625rem;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.076em;
  line-height: 1.5625;
  padding: 1.25rem 1.875rem;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-form__input {
    border-radius: 0.3125rem;
    font-size: 1.125rem;
    line-height: 1;
    padding: 1.25rem 1.25rem;
  }
}

.c-form__input::-moz-placeholder {
  color: #bcc4c7;
  font-weight: 400;
}

.c-form__input::placeholder {
  color: #bcc4c7;
  font-weight: 400;
}

.c-form__radio {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  font-size: 0.875rem;
  font-weight: 400;
  gap: 0.5em 3em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .c-form__radio {
    display: inline;
    display: initial;
    flex-direction: row;
  }
}

.wpcf7-list-item.first {
  margin-left: 0 !important;
}

.wpcf7-list-item + .wpcf7-list-item {
  margin-left: 0;
}
input {
  -webkit-appearance: auto;
     -moz-appearance: auto;
          appearance: auto;
}

#radio-category {
  display: flex;
  flex-direction: column;
  gap: 1.375rem;
  margin-top: 2rem;
}
@media screen and (min-width: 751px) {
  #radio-category {
    display: inline;
    display: initial;
    margin-top: 0;
  }
}

.c-form__radio input[type=radio] {
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  border: 0;
          clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.c-form__radio label {
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: 0.076em;
  line-height: 1.75;
  margin-bottom: 2rem;
  padding-left: 1.8em;
  position: relative;
}
@media screen and (min-width: 751px) {
  .c-form__radio label {
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 2.7777777778;
    margin-bottom: 0;
  }
}

.c-form__radio label:before,
.c-form__radio label:after {
  border-radius: 50%;
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.c-form__radio label::before {
  background-color: #fff;
  border: 1px solid #243239;
  border-radius: 50%;
  height: 3.125rem;
  left: 0;
  width: 3.125rem;
}
@media screen and (min-width: 751px) {
  .c-form__radio label::before {
    height: 1.5625rem;
    width: 1.5625rem;
  }
}

.c-form__radio label::after {
  background-color: #00a5c0;
  border-radius: 50%;
  height: 2.125rem;
  left: 0.5rem;
  opacity: 0;
  width: 2.125rem;
}
@media screen and (min-width: 751px) {
  .c-form__radio label::after {
    height: 1.0625rem;
    left: 0.25rem;
    width: 1.0625rem;
  }
}

.c-form__radio label:has(input:checked)::after {
  opacity: 1;
}

.c-form__textarea {
  background-color: #ffffff;
  border: 1px solid #243239;
  border-radius: 0.625rem;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.076em;
  line-height: 1.75;
  padding: 1.5625rem 1.5625rem;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-form__textarea {
    font-size: 1.125rem;
    line-height: 2.7777777778;
    padding: 1rem 1.25rem;
  }
}

.c-form__textarea::-moz-placeholder {
  color: #bcc4c7;
  font-weight: 400;
}

.c-form__textarea::placeholder {
  color: #bcc4c7;
  font-weight: 400;
}

.c-form__submit-button {
  margin-top: 6.25rem;
  text-align: center;
}
@media screen and (min-width: 751px) {
  .c-form__submit-button {
    margin-top: 3.375rem;
  }
}

.c-form__submit-input {
  background-color: #243239;
  border-radius: 6.25rem;
  color: #ffffff;
  font-size: 1.75rem;
  font-weight: bold;
  max-width: 31.25rem;
  padding: 1.875rem 2.5rem;
  transition: all 0.3s ease 0s;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-form__submit-input {
    border-radius: 3.125rem;
    font-size: 1rem;
    min-width: 19.375rem;
    padding: 0.9375rem 1.125rem;
    width: auto;
  }
}

.c-form__submit-input:disabled {
  background-color: #bcc4c7;
}

@media (hover: hover) {
  .c-form__submit-input:hover {
    opacity: 0.7;
  }
}
.c-form__submit-back {
  background-color: #bcc4c7;
  border-radius: 6.25rem;
  color: #ffffff;
  font-size: 1.75rem;
  font-weight: bold;
  max-width: 31.25rem;
  padding: 1.875rem 2.5rem;
  transition: all 0.3s ease 0s;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-form__submit-back {
    border-radius: 3.125rem;
    font-size: 1rem;
    min-width: 19.375rem;
    padding: 0.9375rem 1.125rem;
    width: auto;
  }
}

@media (hover: hover) {
  .c-form__submit-back:hover {
    opacity: 0.7;
  }
}
.wpcf7-spinner {
  display: none;
}

.c-form__privacy {
  margin-top: 1em;
  text-align: center;
}

.c-form__privacy a {
  -webkit-text-decoration: underline;
  color: #00beca;
  text-decoration: underline;
}

.c-form__privacy input {
  accent-color: #00beca;
  color: #ffffff;
  cursor: pointer;
  display: inline-block;
  margin-right: 8px;
  transform: scale(1.5);
}

.wpcf7-mail-sent-ok {
  display: none !important;
}

.c-form__note li {
  color: #243239;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.7916666667;
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (min-width: 751px) {
  .c-form__note li {
    font-size: 0.875rem;
    line-height: 1.5714285714;
  }
}

.wpcf7-file {
  background-color: transparent;
  background-color: initial;
  border: none;
  margin-top: 0.8125rem;
  padding: 0;
}

input[type=file] {
  font-size: 1.5rem;
  line-height: 1.7916666667;
}
@media screen and (min-width: 751px) {
  input[type=file] {
    font-size: 1rem;
    min-width: 22.5rem;
  }
}

input[type=file]::file-selector-button {
  background-color: #243239;
  background-color: #243239;
  border: none;
  border-radius: 0.625rem;
  color: #ffffff;
  cursor: pointer;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 1.75rem;
  font-weight: 400;
  height: 100%;
  letter-spacing: 0.07em;
  line-height: 1;
  line-height: 1.7857142857;
  margin-right: 1em;
  padding: 1rem 3.125rem;
}
@media screen and (min-width: 751px) {
  input[type=file]::file-selector-button {
    border-radius: 0.3125rem;
    font-size: 1rem;
    line-height: 1.375;
    padding: 0.625rem 1.875rem;
  }
}

.c-form__notes {
  margin-top: 0.8125rem;
  padding-left: 1em;
  text-indent: -1em;
}

.c-form__notes li {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.5714285714;
}
@media screen and (min-width: 751px) {
  .c-form__notes li {
    font-size: 0.875rem;
    line-height: 1.5714285714;
  }
}

.wpcf7-list-item-label {
  margin-left: 0.625rem;
}

/* デフォルトのチェックボックスを非表示にする */
.wpcf7-checkbox input[type=checkbox] {
  opacity: 0;
  position: absolute;
}

/* カスタムチェックボックスのデザイン */
.wpcf7-checkbox .wpcf7-list-item-label {
  cursor: pointer;
  font-size: 2rem;
  line-height: 1.75;
  padding-left: 4.375rem;
  position: relative;
}
@media screen and (min-width: 751px) {
  .wpcf7-checkbox .wpcf7-list-item-label {
    font-size: 1.125rem;
    line-height: 2.7777777778;
    padding-left: 2.1875rem;
  }
}

.wpcf7-checkbox .wpcf7-list-item-label::before {
  background: #fff;
  border: 1px solid #243239; /* チェックボックスの枠線 */
  border-radius: 0.375rem;
  content: "";
  height: 3.125rem; /* チェックボックスの高さ */
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 3.125rem; /* チェックボックスの幅 */
}
@media screen and (min-width: 751px) {
  .wpcf7-checkbox .wpcf7-list-item-label::before {
    border-radius: 0.1875rem;
    height: 1.25rem; /* チェックボックスの高さ */
    width: 1.25rem; /* チェックボックスの幅 */
  }
}

/* チェック時のスタイル */
.wpcf7-checkbox input[type=checkbox]:checked + .wpcf7-list-item-label::before {
  background-color: #00a5c0;
  border: 1px solid #00a5c0; /* チェックボックスの枠線 */
}

.wpcf7-checkbox input[type=checkbox]:checked {
  background-color: #00a5c0;
}

.wpcf7-checkbox input[type=checkbox]:checked + .wpcf7-list-item-label::after {
  border-bottom: 0.25rem solid #fff;
  border-right: 0.25rem solid #fff; /* チェックマークの色 */
  content: "";
  height: 1.875rem;
  left: 1.125rem;
  position: absolute;
  top: 1.0625rem;
  transform: translateY(-50%) rotate(45deg);
  width: 0.9375rem;
}
@media screen and (min-width: 751px) {
  .wpcf7-checkbox input[type=checkbox]:checked + .wpcf7-list-item-label::after {
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff; /* チェックマークの色 */
    height: 0.75rem;
    left: 0.4375rem;
    top: 0.75rem;
    width: 0.375rem;
  }
}

.wpcf7-form-control-wrap {
  width: -moz-fit-content;
  width: fit-content;
}

.wpcf7-select {
  background-color: #ffffff;
  border: 1px solid #243239;
  border-radius: 0.625rem;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: c1;
  min-width: 25rem;
  padding: 1.25rem 1.875rem;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .wpcf7-select {
    font-size: 1.125rem;
    padding: 0.3125rem 1.25rem;
  }
}

.wpcf7-form-control-wrap[data-name^=select] {
  display: block;
  position: relative;
}

.wpcf7-form-control-wrap[data-name^=select]::after {
  border-bottom: 0;
  border-left: 0.625rem solid transparent;
  border-right: 0.625rem solid transparent;
  border-style: solid;
  border-top: 1rem solid #00a5c0;
  content: "";
  height: 0;
  position: absolute;
  right: 1.125rem;
  top: 2.5rem;
  width: 0;
}
@media screen and (min-width: 751px) {
  .wpcf7-form-control-wrap[data-name^=select]::after {
    border-left: 0.5rem solid transparent;
    border-right: 0.5rem solid transparent;
    border-top: 0.75rem solid #00a5c0;
    right: 1rem;
    top: 1.625rem;
  }
}

.--confirm .c-form__field {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 4px 1px;
  padding-bottom: 2.5rem;
}

.c-gmap iframe {
  aspect-ratio: 670/670;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-gmap iframe {
    aspect-ratio: 1000/450;
  }
}

.c-info-card {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 1.875rem;
  justify-content: space-between;
}
@media screen and (min-width: 751px) {
  .c-info-card {
    flex-direction: row;
    gap: initial;
    gap: 2.5rem;
  }
}

.c-info-card + .c-info-card {
  margin-top: 6.875rem;
}
@media screen and (min-width: 751px) {
  .c-info-card + .c-info-card {
    margin-top: 5rem;
  }
}

.c-info-card__title {
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .c-info-card__title {
    font-size: 1.375rem;
    line-height: 2;
  }
}

.c-info-card__image {
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-info-card__image {
    width: 41.1764705882%;
  }
}

.c-info-card__image img {
  border-radius: 1.25rem;
  height: auto;
}
@media screen and (min-width: 751px) {
  .c-info-card__image img {
    border-radius: 0.625rem;
  }
}

@media screen and (min-width: 751px) {
  .c-info-card__content {
    width: 52.9411764706%;
  }
}

.c-info-card__description {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .c-info-card__description {
    font-size: 1rem;
    line-height: 2;
  }
}

.c-info-card__title + .c-info-card__description {
  margin-top: 0.5rem;
}
@media screen and (min-width: 751px) {
  .c-info-card__title + .c-info-card__description {
    margin-top: 1.25rem;
  }
}

.c-info-card__link {
  margin-top: 3.125rem;
  text-align: right;
}
@media screen and (min-width: 751px) {
  .c-info-card__link {
    margin-top: 2.5rem;
    text-align: left;
    text-align: initial;
  }
}

.c-link-color {
  -webkit-text-decoration: underline;
  color: #00a5c0;
  text-decoration: underline;
  transition: all 0.3s ease 0s;
}

@media (hover: hover) {
  .c-link-color:hover {
    opacity: 0.7;
  }
}
.c-link-round {
  background-color: #00a5c0;
  border-radius: 6.25rem;
  color: #ffffff;
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 0.8928571429;
  min-width: 31.25rem;
  padding: 2.5rem 1.25rem;
  text-align: center;
  transition: all 0.3s ease 0s;
}
@media screen and (min-width: 751px) {
  .c-link-round {
    font-size: 1rem;
    line-height: 1.5625;
    min-width: 18.75rem;
    padding: 1.0625rem;
  }
}

@media (hover: hover) {
  .c-link-round:hover {
    filter: brightness(1.2);
  }
}
.c-link.--white {
  color: #ffffff;
}

.c-link span {
  display: inline-block;
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 1.7857142857;
  overflow: hidden;
  padding: 0rem 6rem 0.8125rem 1.375rem;
  position: relative;
}
@media screen and (min-width: 751px) {
  .c-link span {
    font-size: 0.875rem;
    padding: 0rem 2.6875rem 0.8125rem 0.625rem;
  }
}

.c-link.--back span {
  padding: 0rem 1.375rem 0.8125rem 6rem;
}
@media screen and (min-width: 751px) {
  .c-link.--back span {
    padding: 0rem 0.625rem 0.8125rem 2.6875rem;
  }
}

.c-link span::before {
  border-bottom: 0.125rem solid #243239;
  bottom: 0;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  transform-origin: left top;
  transition: transform 0.3s;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-link span::before {
    border-bottom: 1px solid #243239;
  }
}

.c-link.--white span::before {
  border-bottom: 0.125rem solid #ffffff;
}
@media screen and (min-width: 751px) {
  .c-link.--white span::before {
    border-bottom: 1px solid #ffffff;
  }
}

@media (hover: hover) {
  .c-link span:hover::before {
    animation: arrow 0.8s 0s 1 normal both;
    transform: translate(0);
  }
}
@keyframes arrow {
  0%, to {
    opacity: 1;
    transform: translate(0);
  }
  50% {
    opacity: 0.5;
    transform: translate(100%);
  }
  51% {
    opacity: 0.5;
    transform: translate(-100%);
  }
}
.c-link span:after {
  background: url(../images/common/icon-arrow-black.svg) center center/contain no-repeat;
  content: "";
  display: block;
  height: 0.625rem;
  position: absolute;
  right: 0;
  top: 32%;
  transform: translate(-50%, 0%);
  transition: all 0.3s ease 0s;
  width: 2.5rem;
}
@media screen and (min-width: 751px) {
  .c-link span:after {
    height: 0.3125rem;
    top: 21%;
    width: 1.25rem;
  }
}

.c-link.--back span:after {
  background: url(../images/common/icon-arrow-back.svg) center center/contain no-repeat;
  content: "";
  display: block;
  height: 0.625rem;
  left: 0;
  position: absolute;
  top: 32%;
  transform: translate(50%, 0%);
  transition: all 0.3s ease 0s;
  width: 2.5rem;
}
@media screen and (min-width: 751px) {
  .c-link.--back span:after {
    height: 0.3125rem;
    top: 21%;
    width: 1.25rem;
  }
}

.c-link.--white span:after {
  background: url(../images/common/icon-arrow-white.svg) center center/contain no-repeat;
}

@media (hover: hover) {
  .c-link span:hover::after {
    transform: translateX(0px);
  }
}
.c-link.--blank span:after {
  background: url(../images/common/icon-blank.svg) center center/contain no-repeat;
  display: inline-block;
  height: 1.625rem;
  top: 22%;
  width: 1.625rem;
}
@media screen and (min-width: 751px) {
  .c-link.--blank span:after {
    height: 0.8125rem;
    top: 21%;
    width: 0.8125rem;
  }
}

.c-news-card {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left top;
  background-repeat: repeat-x;
  background-size: 6px 1px;
}

.c-news-card__link {
  padding: 3.125rem 0;
  transition: all 0.3s ease 0s;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-news-card__link {
    padding: 1.875rem 0;
  }
}

@media (hover: hover) {
  .c-news-card__link:hover {
    opacity: 0.7;
  }
}
.c-news-card__header {
  display: flex;
  gap: 0.625rem;
}

.c-news-card__date {
  font-family: "Nunito", sans-serif;
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.3571428571;
}
@media screen and (min-width: 751px) {
  .c-news-card__date {
    font-size: 0.875rem;
    line-height: 1.5714285714;
  }
}

.c-news-card__meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}

.c-news-card__category {
  display: flex;
  flex-wrap: wrap;
  gap: 1em;
}

.c-news-card__category li {
  background-color: #243239;
  border-radius: 6.25rem;
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.4583333333;
  padding: 0.25rem 1.25rem;
}
@media screen and (min-width: 751px) {
  .c-news-card__category li {
    font-size: 0.75rem;
    line-height: 1.4166666667;
    padding: 0.125rem 0.625rem;
  }
}

.c-news-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}

.c-news-card__tags li {
  border: 0.0625rem solid #243239;
  border-radius: 6.25rem;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.4583333333;
  padding: 0.25rem 1.25rem;
}
@media screen and (min-width: 751px) {
  .c-news-card__tags li {
    font-size: 0.625rem;
    line-height: 1.7;
    padding: 0.0625rem 0.5rem;
  }
}

.c-news-card__text {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 1.875rem;
}
@media screen and (min-width: 751px) {
  .c-news-card__text {
    font-size: 1rem;
    line-height: 2;
    margin-top: 0.9375rem;
  }
}

.c-news-cards {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 6px 1px;
}

.c-other__link {
  border-radius: 1.25rem;
  display: block;
  height: 100%;
  overflow: hidden;
  position: relative;
  transition: all 0.3s ease 0s;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-other__link {
    border-radius: 0.625rem;
  }
}

.c-other-card__image img {
  -o-object-fit: cover;
  aspect-ratio: 670/380;
  border-radius: 1.25rem;
  height: 100%;
     object-fit: cover;
  transition: all 0.3s ease 0s;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-other-card__image img {
    aspect-ratio: 1/1;
    border-radius: 0.625rem;
  }
}

@media (hover: hover) {
  .c-other__link:hover img {
    filter: brightness(1.2);
    transform: scale(1.1);
  }
}
.c-other__label {
  align-items: center;
  bottom: 1.25rem;
  color: #ffffff;
  content: "";
  display: flex;
  font-size: 2rem;
  font-weight: 500;
  left: 0;
  letter-spacing: 0.05em;
  line-height: 2;
  padding: 0rem 2.5rem;
  position: absolute;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-other__label {
    font-size: 1.125rem;
    line-height: 2;
    padding: 0rem 1.25rem;
  }
}

.c-other__label:before {
  -webkit-clip-path: circle(50% at 50% 50%);
  aspect-ratio: 1/1;
  background-color: #00a5c0;
          clip-path: circle(50% at 50% 50%);
  content: "";
  display: block;
  height: 1rem;
  margin-right: 0.625rem;
  width: 1rem;
}
@media screen and (min-width: 751px) {
  .c-other__label:before {
    height: 0.5rem;
    width: 0.5rem;
  }
}

.c-other__label:after {
  background: url(../images/common/icon-arrow-white.svg) center center/contain no-repeat;
  content: "";
  display: block;
  height: 0.625rem;
  margin-left: auto;
  transition: all 0.3s ease 0s;
  width: 2.5rem;
}
@media screen and (min-width: 751px) {
  .c-other__label:after {
    height: 0.9375rem;
    width: 1.5625rem;
  }
}

.c-other-cards {
  grid-gap: 3.75rem;
  display: grid;
  gap: 3.75rem;
  grid-template-columns: repeat(1, 1fr);
}
@media screen and (min-width: 751px) {
  .c-other-cards {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  }
}

.c-other {
  background-color: #e1f2f2;
  padding: 5rem 0 7.5rem;
}

.c-other__inner {
  max-width: 78.75rem;
}

.c-other__title.c-section-title01 {
  align-items: initial;
  flex-direction: column;
}
@media screen and (min-width: 751px) {
  .c-other__title.c-section-title01 {
    align-items: center;
    flex-direction: initial;
  }
}

.c-page-header__inner {
  height: 100%;
  max-width: 76.25rem;
}

.c-page-header__contents {
  display: flex;
  flex-direction: column;
  gap: 4.25rem;
  height: 100%;
  justify-content: flex-end;
  min-height: 43.75rem;
  padding: 4.375rem 0;
}
@media screen and (min-width: 751px) {
  .c-page-header__contents {
    gap: 2.875rem;
    min-height: 37.5rem;
    padding: 5rem 0;
  }
}

.c-page-header.--nobg * {
  color: #243239;
}

.c-page-header.--nobg .c-page-header__contents {
  min-height: 38.125rem;
}
@media screen and (min-width: 751px) {
  .c-page-header.--nobg .c-page-header__contents {
    min-height: 29.375rem;
  }
}

.c-page-title__text {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media screen and (min-width: 751px) {
  .c-page-title__text {
    gap: 1.5rem;
  }
}

.c-page-title__text-en {
  color: #ffffff;
  font-family: "Nunito", sans-serif;
  font-size: 5.625rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
}
.c-page-title__text-jp {
  color: #ffffff;
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 1.25;
}
@media screen and (min-width: 751px) {
  .c-page-title__text-jp {
    font-size: 1.25rem;
  }
}

.pagination {
  text-align: center;
}

.pagination > .page-numbers {
  display: flex;
  gap: 0.625rem;
  justify-content: center;
}

.pagination .page-numbers {
  font-family: "Nunito", sans-serif;
  font-size: 1.75rem;
  font-weight: 400;
  line-height: 2;
  padding: 0 0.5em;
}
@media screen and (min-width: 751px) {
  .pagination .page-numbers {
    font-size: 1rem;
    line-height: 2;
  }
}

.pagination .page-numbers.current {
  border-bottom: 1px solid #bdc4c7;
  color: #bdc4c7;
  padding-bottom: 0.3em;
}

.pagination .pagination__arrow {
  position: relative;
}

.pagination .prev .pagination__arrow:before {
  align-content: center;
  aspect-ratio: 1/1;
  background-color: transparent;
  background-image: url(../images/common/pagination-arrow-prev.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 0.5em;
  border-radius: 50%;
  content: "";
  display: block;
  display: grid;
  justify-content: center;
  justify-content: center;
  justify-content: center;
  left: -1em;
  margin-left: auto;
  padding: 0.9em;
  place-content: center;
  position: relative;
  top: -0.3em;
  transform: scale(-1, 1) rotate(-180deg);
  width: 0.2em;
}

.pagination .next .pagination__arrow:before {
  align-content: center;
  aspect-ratio: 1/1;
  background-color: transparent;
  background-image: url(../images/common/pagination-arrow-next.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 0.5em;
  border-radius: 50%;
  content: "";
  display: block;
  display: grid;
  justify-content: center;
  justify-content: center;
  justify-content: center;
  margin-left: auto;
  padding: 0.9em;
  place-content: center;
  position: relative;
  right: -1em;
  top: -0.3em;
  width: 0.2em;
}

.c-plan__intro {
  display: flex;
  flex-direction: column;
  gap: 3.125rem;
  justify-content: space-between;
}
@media screen and (min-width: 751px) {
  .c-plan__intro {
    flex-direction: row;
    gap: initial;
  }
}

@media screen and (min-width: 751px) {
  .c-plan__intro-image {
    width: 51.7647058824%;
  }
}

.c-plan__intro-slider {
  margin: 0;
}

.c-plan__intro-slider img {
  -o-object-fit: cover;
  aspect-ratio: 590/378;
  border-radius: 1.25rem;
  height: 100%;
     object-fit: cover;
}
@media screen and (min-width: 751px) {
  .c-plan__intro-slider img {
    aspect-ratio: 440/280;
    height: auto;
  }
}

@media screen and (min-width: 751px) {
  .c-plan__intro-body {
    width: 43.5294117647%;
  }
}

.c-plan__intro-icons img {
  -o-object-fit: contain;
  height: 100%;
  margin: 0 auto;
  max-width: 100%;
     object-fit: contain;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-plan__intro-icons img {
    margin: 0;
    margin: initial;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.c-plan__intro-description {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 3.125rem;
}
@media screen and (min-width: 751px) {
  .c-plan__intro-description {
    font-size: 1rem;
    line-height: 2;
    margin-top: 1.625rem;
  }
}

.c-plan__info {
  display: flex;
  flex-direction: column;
  gap: 1.875rem;
  margin-top: 4.25rem;
}
@media screen and (min-width: 751px) {
  .c-plan__info {
    gap: 0.375rem;
    margin-top: 2rem;
  }
}

.c-plan__info-item {
  display: flex;
  gap: 2.5rem;
}

.c-plan__info-item-title {
  flex-shrink: 0;
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.7857142857;
  width: 13.75rem;
}
@media screen and (min-width: 751px) {
  .c-plan__info-item-title {
    font-size: 1rem;
    line-height: 2;
    width: 7.5rem;
  }
}

.c-plan__info-item-title img {
  -o-object-fit: contain;
  height: auto;
     object-fit: contain;
  width: auto;
}

.c-plan__info-item-value {
  flex: 1;
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.7857142857;
}
@media screen and (min-width: 751px) {
  .c-plan__info-item-value {
    font-size: 1rem;
    line-height: 2;
    width: 7.5rem;
  }
}

.c-plan__menu {
  display: flex;
  flex-direction: column;
  gap: 3.375rem;
  margin-top: 4.625rem;
}

.c-plan__menu-item {
  align-items: flex-start;
  display: flex;
  flex-direction: column-reverse;
  gap: 3.125rem;
  justify-content: space-between;
}
@media screen and (min-width: 751px) {
  .c-plan__menu-item {
    flex-direction: row;
    gap: initial;
  }
}

@media screen and (min-width: 751px) {
  .c-plan__menu-item-body {
    width: 50%;
  }
}

.c-plan__menu-title {
  display: flex;
  font-size: 1.125rem;
  font-weight: 500;
  gap: 0.3em;
  letter-spacing: 0.05em;
  line-height: 2;
}

.c-plan__menu-title-icon {
  -o-object-fit: contain;
  flex-shrink: 0;
     object-fit: contain;
  transform: translateY(8px);
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 751px) {
  .c-plan__menu-title-icon {
    transform: translateY(10px);
  }
}

.c-plan__menu-title-icon.--moon {
  height: 2.1875rem;
  width: 1.875rem;
}
@media screen and (min-width: 751px) {
  .c-plan__menu-title-icon.--moon {
    height: 1.0625rem;
    width: 0.9375rem;
  }
}

.c-plan__menu-title-icon.--sun {
  height: 2.1875rem;
  width: 2.1875rem;
}
@media screen and (min-width: 751px) {
  .c-plan__menu-title-icon.--sun {
    height: 1.0625rem;
    width: 1.0625rem;
  }
}

.c-plan__menu-title span {
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .c-plan__menu-title span {
    font-size: 1.125rem;
    line-height: 2;
  }
}

.c-plan__menu-list {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 0.5625rem;
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (min-width: 751px) {
  .c-plan__menu-list {
    font-size: 1rem;
    line-height: initial;
    line-height: 2;
  }
}

.c-plan__accordion {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 4px 1px;
  margin-top: 4.375rem;
}

.c-plan__yoyaku-links {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 1.875rem;
  justify-content: center;
}

.c-plan__yoyaku {
  margin-top: 6.25rem;
  text-align: center;
}
@media screen and (min-width: 751px) {
  .c-plan__yoyaku {
    margin-top: 3.75rem;
  }
}

.c-plan__yoyaku-link {
  text-align: center;
}

.c-plan__yoyaku-note {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.07em;
  line-height: 1.7857142857;
  margin-top: 2.5rem;
}
@media screen and (min-width: 751px) {
  .c-plan__yoyaku-note {
    font-size: 0.875rem;
    margin-top: 1.375rem;
  }
}

.c-plan__menu-image {
  margin: 0 calc(50% - 50vw);
  position: relative;
  width: 100vw;
}
@media screen and (min-width: 751px) {
  .c-plan__menu-image {
    margin: 0;
    margin: initial;
    width: 43.5294117647%;
  }
}

.c-plan__menu-slider {
  height: -moz-fit-content;
  height: fit-content;
  margin: 0;
  margin: 0 auto;
}
@media screen and (min-width: 751px) {
  .c-plan__menu-slider {
    width: 75%;
  }
}

.c-plan__menu-slider img {
  -o-object-fit: cover;
  aspect-ratio: 280/180;
  border-radius: 1.25rem;
  height: auto;
     object-fit: cover;
}

.swiper-pagination-bullet-active {
  background-color: #00a5c0 !important;
}

.swiper-nav {
  display: flex;
  justify-content: space-between;
  left: 0;
  position: absolute;
  top: 44%;
  transform: translateY(-50%);
  width: 100%;
  z-index: 4;
}

.swiper-nav-item {
  display: none;
}
@media screen and (min-width: 751px) {
  .swiper-nav-item {
    display: block;
  }
}

.swiper-nav-item--prev {
  aspect-ratio: 1/1;
  background: url(../images/common/icon-slider-arrow-left.png) center center/contain no-repeat;
  width: clamp(
    1.5625rem,
    0.8131349782rem + 1.5965166909vw,
    2.25rem
  );
}

.swiper-nav-item--next {
  aspect-ratio: 1/1;
  background: url(../images/common/icon-slider-arrow-right.png) center center/contain no-repeat;
  width: clamp(
    1.5625rem,
    0.8131349782rem + 1.5965166909vw,
    2.25rem
  );
}

.swiper-pagination-bullets.swiper-pagination-horizontal {
  display: flex;
  gap: 0.875rem;
  justify-content: center;
  margin-top: 1.25rem;
  text-align: center;
}

#search_489ban {
  margin: 0 auto;
  max-width: 37.5rem;
}

#search_489ban dl {
  margin: 0 0 1.25rem;
  width: 100%;
}
@media screen and (min-width: 751px) {
  #search_489ban dl {
    display: inline-table;
    margin: 0 0 0.3125rem;
  }
}

#search_489ban dt,
#search_489ban dd {
  display: table-cell;
  margin: 0;
  padding: 0;
}

@media screen and (min-width: 751px) {
  #search_489ban dt {
    width: 80px;
  }
}

#search_489ban dd {
  align-items: center;
  display: flex;
}

#search_489ban dd span,
#search_489ban label,
#search_489ban input,
#search_489ban select {
  display: inline-block;
  font-size: 1.625rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin: 0.1875rem 0.375rem 0.25rem;
}
@media screen and (min-width: 751px) {
  #search_489ban dd span,
  #search_489ban label,
  #search_489ban input,
  #search_489ban select {
    font-size: 0.875rem;
  }
}

#search_489ban label {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.5;
}
@media screen and (min-width: 751px) {
  #search_489ban label {
    font-size: 0.875rem;
  }
}

#search_489ban input,
#search_489ban select {
  border: 1px solid #707070;
  border-radius: 0.3125rem;
  font-size: 2rem;
  font-weight: 400;
  letter-spacing: 0.07em;
  line-height: 1;
  min-width: 11.25rem;
  padding: 1.25rem 1.25rem;
}
@media screen and (min-width: 751px) {
  #search_489ban input,
  #search_489ban select {
    font-size: medium;
    font-size: initial;
    min-width: 6.875rem;
    padding: 0.5rem 1.25rem;
  }
}

#search_489ban input[type=checkbox] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0.25rem;
  cursor: pointer;
  flex-shrink: 0;
  font-weight: 500;
  height: 1em;
  margin: 0 0.375rem;
  min-width: 0;
  min-width: initial;
  padding: 0;
  padding: initial;
  position: relative;
  top: 0.2em;
  width: 1em;
}
@media screen and (min-width: 751px) {
  #search_489ban input[type=checkbox] {
    border-radius: 0.125rem;
  }
}

#search_489ban input[type=checkbox]:after {
  border-bottom: solid 0.25rem #ffffff;
  border-right: solid 0.25rem #ffffff;
  box-sizing: border-box;
  content: "";
  display: block;
  height: 1.25rem;
  left: 0.625rem;
  margin-right: 0.2em;
  opacity: 0;
  position: absolute;
  top: 0.125rem;
  transform: rotate(45deg);
  transition: 0.3s;
  width: 0.625rem;
}
@media screen and (min-width: 751px) {
  #search_489ban input[type=checkbox]:after {
    border-bottom: solid 0.125rem #ffffff;
    border-right: solid 0.125rem #ffffff;
    height: 0.625rem;
    left: 0.3125rem;
    top: 0.0625rem;
    width: 0.3125rem;
    width: 0.3125rem;
  }
}

#search_489ban input[type=checkbox]:checked {
  background-color: #00a5c0;
}

#search_489ban input[type=checkbox]:checked:after {
  opacity: 1;
}

#search_489ban li {
  display: inline-block;
  list-style: none;
  margin-bottom: 3px;
}

#search_489ban button {
  background-color: #243239;
  border-radius: 6.25rem;
  box-sizing: border-box;
  color: #ffffff;
  display: block;
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 1.6;
  line-height: 1;
  margin: 5rem auto 0;
  max-width: 31.25rem;
  padding: 2.5rem;
  transition: all 0.3s ease 0s;
  width: 100%;
}
@media screen and (min-width: 751px) {
  #search_489ban button {
    font-size: medium;
    font-size: initial;
    margin: 1.625rem auto 0;
    max-width: 18.75rem;
    padding: 1.125rem 0.9375rem;
  }
}

@media (hover: hover) {
  #search_489ban button:hover {
    background-color: #566a74;
  }
}
#search_489ban .inbox_489ban {
  display: flex;
}

#search_489ban .inbox_489ban:after {
  clear: both;
  content: ".";
  display: block;
  font-size: 0;
  height: 0;
  visibility: hidden;
}

#search_489ban .stay_489ban,
#search_489ban .room_489ban,
#search_489ban .person_489ban {
  width: 50%;
}

#search_489ban .child_489ban {
  border-bottom: 1px dotted #dedede;
}

#search_489ban .child_489ban:first-of-type {
  border-top: 1px dotted #dedede;
  padding: 5px 0 0;
}

#search_489ban .child_489ban:last-of-type {
  margin: 0 0 10px;
  padding: 0 0 5px;
}

#search_489ban .child_489ban dt {
  width: auto;
}

#search_489ban .child_489ban dd {
  vertical-align: middle;
  width: 70px;
}

#search_489ban .child_489ban dt span {
  display: block;
  font-size: 12px;
}

#search_489ban .price_489ban dt {
  width: 65px;
}

#search_489ban .price_489ban div {
  display: inline-block;
}

#search_489ban .price_489ban span {
  font-size: 12px;
}

#search_489ban .tag_489ban,
#search_489ban .tag_489ban dt,
#search_489ban .tag_489ban dd {
  display: block;
  width: 100%;
}

#search_489ban .tag_489ban .tag_mode_489ban {
  font-size: 13px;
}

#search_489ban .child_input p {
  margin: 0;
  text-align: center;
}

#search_489ban .date_489ban label {
  margin: 0;
  transform: translateY(-4px);
}

.c-section-nav__items {
  display: flex;
  flex-wrap: wrap;
  gap: 1.875rem 3.75rem;
  justify-content: center;
}
@media screen and (min-width: 751px) {
  .c-section-nav__items {
    border-right: 0.0625rem solid #243239;
    gap: 0;
    justify-content: space-between;
  }
}

.c-section-nav__item {
  border-bottom: 0.125rem solid #243239;
}
@media screen and (min-width: 751px) {
  .c-section-nav__item {
    border-bottom: none;
    border-left: 0.0625rem solid #243239;
    flex: 1;
  }
}

.c-section-nav__item a {
  align-items: center;
  display: flex;
  font-size: 1.75rem;
  font-weight: 400;
  gap: 0.4375rem;
  justify-content: space-between;
  letter-spacing: 0.07em;
  padding: 0.875rem 0.625rem 1.25rem;
  position: relative;
  text-align: center;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-section-nav__item a {
    flex-direction: column;
    font-size: 1rem;
    padding: 0;
    padding: initial;
  }
}

.c-section-nav__item a:after {
  border-bottom: 0.125rem solid #243239;
  border-right: 0.125rem solid #243239;
  content: "";
  display: block;
  height: 0.6em;
  transform: rotate(45deg);
  width: 0.6em;
}
@media screen and (min-width: 751px) {
  .c-section-nav__item a:after {
    border-bottom: 0.0625rem solid #243239;
    border-right: 0.0625rem solid #243239;
  }
}

.c-section-title01 {
  align-items: center;
  display: flex;
  gap: 1.25rem;
  position: relative;
}

.c-section-title01__main {
  color: #243239;
  font-size: 3.75rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.6;
}
@media screen and (min-width: 751px) {
  .c-section-title01__main {
    font-size: 2.125rem;
    letter-spacing: 0.07em;
  }
}

.c-section-title01__main.--en {
  font-family: "Nunito", sans-serif;
}

.c-section-title01.--white .c-section-title01__main {
  color: #ffffff;
}

.c-section-title01__sub {
  color: #8d9ba2;
  font-family: "Nunito", sans-serif;
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.07em;
  line-height: 1.4285714286;
}
@media screen and (min-width: 751px) {
  .c-section-title01__sub {
    font-size: 0.875rem;
  }
}

.c-section-title01.--white .c-section-title01__sub {
  color: #ffffff;
}

.c-service-card {
  display: flex;
  flex-direction: column;
  gap: 1.875rem;
  justify-content: space-between;
}
@media screen and (min-width: 751px) {
  .c-service-card {
    flex-direction: row;
    gap: 0;
  }
}

@media screen and (min-width: 751px) {
  .c-service-card__image {
    margin-top: 0.625rem;
    width: 41.1764705882%;
  }
}

.c-service-card__image img {
  border-radius: 1.25rem;
  height: 100%;
}
@media screen and (min-width: 751px) {
  .c-service-card__image img {
    border-radius: 0.625rem;
    height: auto;
  }
}

@media screen and (min-width: 751px) {
  .c-service-card__body {
    width: 52.9411764706%;
  }
}

.c-service-card__title {
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .c-service-card__title {
    font-size: 1.375rem;
    line-height: 2;
  }
}

.c-service-card__description {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 1.875rem;
}
@media screen and (min-width: 751px) {
  .c-service-card__description {
    font-size: 1rem;
    line-height: 2;
    margin-top: 0.625rem;
  }
}

.c-service-card__link {
  margin-top: 3.75rem;
  text-align: right;
}
@media screen and (min-width: 751px) {
  .c-service-card__link {
    margin-top: 1.75rem;
    text-align: left;
    text-align: initial;
  }
}

.c-service-card__list {
  display: flex;
  flex-direction: column;
  gap: 0.3em;
  margin-top: 0.3125rem;
  padding-left: 1em;
  text-indent: -1em;
}

.c-service-card__list li {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.5714285714;
}
@media screen and (min-width: 751px) {
  .c-service-card__list li {
    font-size: 0.875rem;
    line-height: 1.7916666667;
  }
}

.c-service-cards {
  display: flex;
  flex-direction: column;
  gap: 6rem;
}
@media screen and (min-width: 751px) {
  .c-service-cards {
    gap: 4rem;
  }
}

.c-services-card {
  display: flex;
  flex-direction: column-reverse;
  gap: 11.25rem;
  justify-content: space-between;
}
@media screen and (min-width: 751px) {
  .c-services-card {
    flex-direction: row;
    gap: initial;
  }
}

.c-services-card--left {
  flex-direction: column-reverse;
}
@media screen and (min-width: 751px) {
  .c-services-card--left {
    flex-direction: row-reverse;
  }
}

.c-services-card__content {
  margin-top: 1.25rem;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-services-card__content {
    min-width: 24.375rem;
    width: 40%;
  }
}

@media screen and (min-width: 751px) {
  .c-services-card--left .c-services-card__content {
    padding-left: 4%;
  }
}

.c-services-card__title.c-section-title01::before {
  -webkit-clip-path: circle(50% at 50% 50%);
  background-color: #00a5c0;
          clip-path: circle(50% at 50% 50%);
  content: "";
  display: block;
  height: 1.5rem;
  width: 1.5rem;
}
@media screen and (min-width: 751px) {
  .c-services-card__title.c-section-title01::before {
    height: 0.75rem;
    width: 0.75rem;
  }
}

.c-services-card__title .c-section-title01__main {
  color: #243239;
  font-family: "Zen Maru Gothic", sans-serif;
}

.c-services-card__title .c-section-title01__sub {
  color: #8d9ba2;
  transform: translateY(0.3em);
}

.c-services-card__icon {
  margin-top: 2.25rem;
}
@media screen and (min-width: 751px) {
  .c-services-card__icon {
    margin-left: 1.875rem;
    margin-top: 1.25rem;
  }
}

.c-services-card__icon img {
  -o-object-fit: contain;
  aspect-ratio: 110/114;
  height: auto;
     object-fit: contain;
  width: 13.75rem;
}
@media screen and (min-width: 751px) {
  .c-services-card__icon img {
    width: 6.875rem;
  }
}

.c-services-card__description {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 1.875rem;
}
@media screen and (min-width: 751px) {
  .c-services-card__description {
    font-size: 1rem;
    line-height: 2;
    margin-left: 1.875rem;
    margin-top: 1.5rem;
    max-width: 24.1875rem;
  }
}

.c-services-card__link {
  margin-top: 4.0625rem;
  text-align: center;
}
@media screen and (min-width: 751px) {
  .c-services-card__link {
    margin-left: 1.875rem;
    margin-top: 2.8125rem;
    text-align: left;
    text-align: initial;
  }
}

.c-services-card__images {
  flex: 1;
  position: relative;
  width: 87%;
}
@media screen and (min-width: 751px) {
  .c-services-card__images {
    width: 49.5495495495%;
  }
}

.c-services-card__image {
  overflow: hidden;
  position: relative;
}

.c-services-card__image img {
  -o-object-fit: cover;
  bottom: 0;
  display: block;
  left: 0;
     object-fit: cover;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.c-services-card--right .c-services-card__images {
  margin-left: auto;
  margin-right: calc(50% - 50vw);
}
@media screen and (min-width: 751px) {
  .c-services-card--right .c-services-card__images {
    margin-left: 15%;
  }
}

.c-services-card--left .c-services-card__images {
  margin-left: calc(50% - 50vw);
  margin-right: 15%;
}

.c-services-card__image--big {
  aspect-ratio: 580/485;
  height: 100%;
  width: 77.3vw;
}
@media screen and (min-width: 751px) {
  .c-services-card__image--big {
    aspect-ratio: 660/550;
    width: 46.8vw;
  }
}

.c-services-card__image--big img {
  -o-object-fit: cover;
  aspect-ratio: 580/485;
  height: calc(100% + 160px);
     object-fit: cover;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-services-card__image--big img {
    aspect-ratio: 660/550;
    height: calc(100% + 100px);
  }
}

.c-services-card--right .c-services-card__image--big,
.c-services-card--right .c-services-card__image--big img {
  border-radius: 0.625rem 0 0 0.625rem;
}

.c-services-card--left .c-services-card__image--big,
.c-services-card--left .c-services-card__image--big img {
  border-radius: 0 0.625rem 0.625rem 0;
}

.c-services-card__image--small {
  aspect-ratio: 250/285;
  border-radius: 0.625rem;
  height: auto;
  position: absolute;
  width: 42%;
}
@media screen and (min-width: 751px) {
  .c-services-card__image--small {
    aspect-ratio: 220/280;
    width: 33%;
  }
}

.c-services-card--right .c-services-card__image--small {
  left: -17%;
  top: 60%;
}
@media screen and (min-width: 751px) {
  .c-services-card--right .c-services-card__image--small {
    left: -17%;
    top: 60%;
  }
}

.c-services-card--left .c-services-card__image--small {
  margin-left: auto;
  right: -17%;
  top: 60%;
}
@media screen and (min-width: 751px) {
  .c-services-card--left .c-services-card__image--small {
    right: -17%;
    top: 60%;
  }
}

.c-services-card__image--small img {
  -o-object-fit: cover;
  aspect-ratio: 250/285;
  border-radius: 0.625rem;
  height: calc(100% + 100px);
     object-fit: cover;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-services-card__image--small img {
    aspect-ratio: 220/250;
    height: calc(100% + 50px);
  }
}

.c-services-cards {
  display: flex;
  flex-direction: column;
  gap: 11.75rem;
}
@media screen and (min-width: 751px) {
  .c-services-cards {
    gap: 3.125rem;
  }
}

.c-single-page-header {
  margin-top: 8rem;
}

.c-single-header__inner {
  max-width: 71.25rem;
}

.c-single__article {
  margin-top: 5rem;
  padding-bottom: 10.8125rem;
}

.c-single__header {
  display: flex;
  gap: 1.0625rem;
}

.c-single__date {
  font-family: "Nunito", sans-serif;
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.4285714286;
  transform: translateY(0.5px);
}
@media screen and (min-width: 751px) {
  .c-single__date {
    font-size: 0.875rem;
    line-height: 1.5;
  }
}

.c-single__meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
}

.c-single__category {
  display: flex;
  gap: 0.5em;
}

.c-single__category-item {
  background-color: #243239;
  border-radius: 6.25rem;
  color: #ffffff;
  display: inline-block;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.6;
  padding: 0rem 1.25rem;
}
@media screen and (min-width: 751px) {
  .c-single__category-item {
    border-radius: 0.625rem;
    font-size: 0.75rem;
    padding: 0rem 0.625rem;
  }
}

.c-single__tags {
  display: flex;
  gap: 0.5em;
}

.c-single__tag-item {
  border: 0.0625rem solid #243239;
  border-radius: 6.25rem;
  color: #243239;
  display: inline-block;
  font-size: 1.375rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.6;
  padding: 0rem 0.9375rem;
}
@media screen and (min-width: 751px) {
  .c-single__tag-item {
    border-radius: 0.625rem;
    font-size: 0.625rem;
    padding: 0rem 0.5rem;
  }
}

.c-single__title {
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 2;
  margin-top: 2.5rem;
}
@media screen and (min-width: 751px) {
  .c-single__title {
    font-size: 1.75rem;
    line-height: 1.4285714286;
    margin-top: 1.25rem;
  }
}

.c-single__contents {
  margin-top: 4.25rem;
}

.c-single__contents h2 {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 4px 1px;
  display: inline-block;
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 2;
  margin-top: 3.125rem;
  padding-bottom: 2.5rem;
}
@media screen and (min-width: 751px) {
  .c-single__contents h2 {
    font-size: 1.25rem;
    line-height: 2;
    padding-bottom: 1.0625rem;
  }
}

.c-single__contents h3 {
  display: flex;
  font-size: 2rem;
  font-weight: 500;
  gap: 0.8em;
  letter-spacing: 0.07em;
  line-height: 2;
  margin-top: 1.875rem;
  position: relative;
}
@media screen and (min-width: 751px) {
  .c-single__contents h3 {
    font-size: 1.125rem;
    line-height: 2.2222222222;
  }
}

.c-single__contents h3:before {
  background-color: #00a5c0;
  border-radius: 50%;
  content: "";
  display: block;
  flex-shrink: 0;
  height: 1.5rem;
  transform: translateY(0.65em);
  width: 1.5rem;
}
@media screen and (min-width: 751px) {
  .c-single__contents h3:before {
    height: 0.625rem;
    transform: translateY(0.85em);
    width: 0.625rem;
  }
}

.c-single__contents h4 {
  display: inline-block;
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 2;
  margin-top: 2.5rem;
}
@media screen and (min-width: 751px) {
  .c-single__contents h4 {
    font-size: 1rem;
    line-height: 2.5;
    margin-top: 1.25rem;
  }
}

.c-single__contents p {
  font-size: 1.75rem;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .c-single__contents p {
    font-size: 1rem;
    line-height: 2;
  }
}

.c-single__contents a {
  -webkit-text-decoration: underline;
  color: #00a5c0;
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.02em;
  text-decoration: underline;
  transition: all 0.3s ease 0s;
}
@media screen and (min-width: 751px) {
  .c-single__contents a {
    font-size: 1rem;
  }
}

.c-single__contents ul li {
  display: flex;
  font-size: 1.75rem;
  font-weight: 400;
  gap: 0.2em;
  letter-spacing: 0.07em;
  line-height: 2;
  position: relative;
}
@media screen and (min-width: 751px) {
  .c-single__contents ul li {
    font-size: 1rem;
    line-height: 2;
  }
}

.c-single__contents ul li:before {
  content: "・";
  flex-shrink: 0;
}

@media (hover: hover) {
  .c-single__contents a:hover {
    opacity: 0.7;
  }
}
.c-single__link {
  margin-top: 7.875rem;
  text-align: center;
}

.c-single__table table {
  min-width: 77.5rem;
}
@media screen and (min-width: 751px) {
  .c-single__table table {
    min-width: 43.75rem;
  }
}

.c-single__table table,
.c-single__table th,
.c-single__table td {
  border: none;
}

.c-single__table th,
.c-single__table td {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  min-width: 425px;
  padding: 1.875rem;
}
@media screen and (min-width: 751px) {
  .c-single__table th,
  .c-single__table td {
    font-size: 1rem;
    line-height: 2;
    padding: 1.25rem;
  }
}

.c-single__table tr {
  border-bottom: 0.0625rem solid #8d9ba2;
}

.c-single__table tr:nth-of-type(1) {
  border-bottom: none;
  color: #ffffff;
  min-height: 7.5rem;
}

.c-single__table tr:nth-of-type(1) td:not(:first-of-type) {
  background-color: #8d9ba2;
}

.c-single__table tr:nth-of-type(1) td:nth-of-type(1) {
  background-color: transparent;
}

.c-single__table tr td:nth-of-type(1) {
  background-color: #e1f2f2;
  font-weight: 500;
}
@media screen and (min-width: 751px) {
  .c-single__table tr td:nth-of-type(1) {
    width: 17.6875rem;
  }
}

.c-sort__categories {
  display: flex;
  flex-wrap: wrap;
  gap: 0 0.8em;
}

.c-sort__category a {
  border: 0.125rem solid #243239;
  border-radius: 2.5rem;
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.4285714286;
  padding: 0.625rem 2.5rem;
  transition: all 0.3s ease 0s;
}
@media screen and (min-width: 751px) {
  .c-sort__category a {
    border: 0.0625rem solid #243239;
    border-radius: 1.25rem;
    font-size: 1rem;
    line-height: 1.5;
    padding: 0.3125rem 1.25rem;
  }
}

.c-sort__category.active a {
  background-color: #243239;
  color: #ffffff;
}

@media (hover: hover) {
  .c-sort__category a:hover {
    background-color: #243239;
    color: #ffffff;
  }
}
.c-sort__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0 0.8em;
}

.c-sort__tag a {
  border: 0.125rem solid #243239;
  border-radius: 6.25rem;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.4583333333;
  padding: 0.625rem 2.5rem;
  transition: all 0.3s ease 0s;
}
@media screen and (min-width: 751px) {
  .c-sort__tag a {
    border: 0.0625rem solid #243239;
    font-size: 0.75rem;
    line-height: 1.4166666667;
    padding: 0.3125rem 1.25rem;
  }
}

.c-sort__tag.active a {
  background-color: #243239;
  color: #ffffff;
}

@media (hover: hover) {
  .c-sort__tag a:hover {
    background-color: #243239;
    color: #ffffff;
  }
}
.c-tab__menu {
  display: flex;
  gap: 0.625rem;
  position: relative;
}

.c-tab__menu-item {
  background-color: #e1f2f2;
  border-radius: 1.25rem 1.25rem 0 0;
  color: #243239;
  flex: 1;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.4444444444;
  padding: 1em;
  position: relative;
  word-break: keep-all;
}
@media screen and (min-width: 751px) {
  .c-tab__menu-item {
    border-radius: 0.625rem 0.625rem 0 0;
    font-size: 1.125rem;
    line-height: 2;
    padding: 1.5rem 0.75rem 1.5rem;
  }
}

.c-tab__menu-item.--active {
  background-color: #ffffff;
  border: 0.125rem solid #00a5c0;
  color: #00a5c0;
}
@media screen and (min-width: 751px) {
  .c-tab__menu-item.--active {
    border: 0.0625rem solid #00a5c0;
  }
}

.c-tab__menu-item.--active::after {
  background-color: #ffffff;
  bottom: -1.25rem;
  content: "";
  display: block;
  height: 1.875rem;
  position: absolute;
  width: calc(100% + 0.125rem);
  z-index: 10;
}
@media screen and (min-width: 751px) {
  .c-tab__menu-item.--active::after {
    bottom: -0.625rem;
    height: 0.9375rem;
    width: 100%;
  }
}

.c-tab__menu .c-tab__menu-item:nth-of-type(1).--active::after {
  border-left: 0.125rem solid #00a5c0;
  left: 0;
  transform: translateX(-0.125rem);
}
@media screen and (min-width: 751px) {
  .c-tab__menu .c-tab__menu-item:nth-of-type(1).--active::after {
    border-left: 0.0625rem solid #00a5c0;
    transform: translateX(-0.03125rem);
  }
}

.c-tab__menu .c-tab__menu-item:nth-of-type(2).--active::after {
  border-right: 0.125rem solid #00a5c0;
  right: 0;
  transform: translateX(0.125rem);
}
@media screen and (min-width: 751px) {
  .c-tab__menu .c-tab__menu-item:nth-of-type(2).--active::after {
    border-right: 0.0625rem solid #00a5c0;
    transform: translateX(0.03125rem);
  }
}

.c-tab__menu-item::before {
  background-color: #e1f2f2;
  bottom: -1.25rem;
  content: "";
  display: block;
  height: 1.25rem;
  left: 0;
  position: absolute;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-tab__menu-item::before {
    bottom: -0.625rem;
    height: 0.625rem;
  }
}

.c-tab__items {
  background-color: #ffffff;
  border: 0.125rem solid #00a5c0;
  border-radius: 1.25rem;
  padding: 2.5rem 2.5rem 5rem;
  position: relative;
}
@media screen and (min-width: 751px) {
  .c-tab__items {
    border: 0.0625rem solid #00a5c0;
    border-radius: 0.625rem;
    padding: 5rem 9.5238095238%;
  }
}

.c-tab__items .c-tab__item:nth-of-type(1) {
  border-radius: 0 1.25rem 1.25rem 1.25rem;
}
@media screen and (min-width: 751px) {
  .c-tab__items .c-tab__item:nth-of-type(1) {
    border-radius: 0 0.625rem 0.625rem 0.625rem;
  }
}

.c-tab__items .c-tab__item:nth-of-type(2) {
  border-radius: 1.25rem 0 1.25rem 1.25rem;
}
@media screen and (min-width: 751px) {
  .c-tab__items .c-tab__item:nth-of-type(2) {
    border-radius: 0.625rem 0 0.625rem 0.625rem;
  }
}

.weather {
  display: none;
}
@media screen and (min-width: 751px) {
  .weather {
    background-color: #fff;
    border: 0.09375rem solid #01a4c0;
    border-radius: 0.625rem 0 0 0.625rem;
    border-right: none;
    display: block;
    padding: 0.625rem 0 0.625rem 0.375rem;
    position: fixed;
    right: 0;
    top: 58%;
    transform: translateY(-50%);
    z-index: 999999;
  }
}

.weather-title {
  color: #01a4c0;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.5;
  padding: 0 0.4375rem;
  text-align: center;
}

.weather-body {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left top;
  background-repeat: repeat-x;
  background-size: 4px 1px;
  margin-top: 0.625rem;
  padding: 0.625rem 0.375rem;
  text-align: center;
}

.weather-body .date {
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
}

.weather-body .date-day {
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.4166666667;
  margin-left: 0.3125rem;
}

.weather-body [class^=icon-] {
  fill: #888;
  display: block;
  margin-bottom: 15px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 10px;
}

.weather-body .icon-sun {
  fill: #ffa347;
}

.weather-body .icon-cloud {
  fill: #969696;
}

.weather-body .icon-atmosphere {
  fill: #969696;
}

.weather-body .icon-snow {
  fill: #63adc6;
}

.weather-body .icon-rain {
  fill: #4070c1;
}

.weather-body .icon-thunderstorm {
  fill: #e1b300;
}

.weather-body .temp {
  align-items: center;
  display: flex;
  font-family: "Zen Maru Gothic", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  justify-content: center;
  letter-spacing: 0.05em;
  letter-spacing: 0.05em;
  line-height: 1.5;
  line-height: 1;
  position: relative;
}

.weather-body .temp span {
  margin-left: 0.125rem;
}

.weather-body .temp .unit {
  font-size: 12px;
}

.weather-body .icon-sun {
  height: 23px;
  width: 23px;
}

.weather-body .icon-cloud {
  height: 15px;
  width: 23px;
}

.weather-body .icon-atmosphere {
  height: 16px;
  width: 23px;
}

.weather-body .icon-snow {
  height: 26px;
  width: 23px;
}

.weather-body .icon-rain {
  height: 26px;
  width: 23px;
}

.weather-body .icon-thunderstorm {
  height: 23px;
  width: 23px;
}

.p-about {
  padding-bottom: 12.5rem;
}
@media screen and (min-width: 751px) {
  .p-about {
    padding-bottom: 10rem;
  }
}

.p-about-page-header {
  background: url(../images/pages/about-naguri/heading-bg-sp.jpg) center center/cover no-repeat;
}
@media screen and (min-width: 751px) {
  .p-about-page-header {
    background: url(../images/pages/about-naguri/heading-bg-pc.jpg) center center/cover no-repeat;
  }
}

.p-about-intro {
  margin-top: 8.4375rem;
}

.p-about-intro__title {
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-about-intro__title {
    font-size: 1.75rem;
    line-height: 2;
  }
}

.p-about-intro__description {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 2.9375rem;
  word-break: keep-all;
}
@media screen and (min-width: 751px) {
  .p-about-intro__description {
    font-size: 1rem;
    line-height: 2;
    margin-top: 2.375rem;
    max-width: 43.75rem;
  }
}

.p-about-gallery {
  margin-top: 6.25rem;
}
@media screen and (min-width: 751px) {
  .p-about-gallery {
    margin-top: 9.75rem;
  }
}

.p-about-gallery__items {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
  gap: 5rem;
}
@media screen and (min-width: 751px) {
  .p-about-gallery__items {
    flex-direction: row-reverse;
    gap: 5.5555555556vw;
  }
}

.p-about-gallery__item img {
  height: auto;
}

.p-about-gallery__item.--large {
  width: 86.6666666667vw;
}
@media screen and (min-width: 751px) {
  .p-about-gallery__item.--large {
    margin-bottom: 10rem;
    width: 50vw;
  }
}

.p-about-gallery__item.--large img {
  border-radius: 1.25rem 0 0 1.25rem;
  height: auto;
}

.p-about-gallery__item.--small {
  align-self: baseline;
  margin-left: 2.5rem;
  width: 66.6666666667vw;
}
@media screen and (min-width: 751px) {
  .p-about-gallery__item.--small {
    align-self: initial;
    margin-left: 0;
    width: 34.7222222222vw;
  }
}

.p-about-gallery__item.--small img {
  border-radius: 1.25rem;
  height: auto;
}

.p-about-enjoy {
  margin-top: 13.125rem;
}
@media screen and (min-width: 751px) {
  .p-about-enjoy {
    margin-top: 10rem;
  }
}

.p-about-enjoy__title {
  align-items: flex-start;
  flex-direction: column;
}
@media screen and (min-width: 751px) {
  .p-about-enjoy__title {
    align-items: center;
    flex-direction: row;
  }
}

.p-about-enjoy__items {
  margin-top: 3.75rem;
}

.p-about-enjoy__item {
  align-items: flex-start;
}

.p-about-spots {
  margin-top: 11.5625rem;
}
@media screen and (min-width: 751px) {
  .p-about-spots {
    margin-top: 10rem;
  }
}

.p-about-spots__title {
  align-items: flex-start;
  flex-direction: column;
}
@media screen and (min-width: 751px) {
  .p-about-spots__title {
    align-items: initial;
    flex-direction: row;
  }
}

.p-about-spots__items {
  display: flex;
  flex-direction: column;
  gap: 6.875rem;
  margin-top: 6.5625rem;
}
@media screen and (min-width: 751px) {
  .p-about-spots__items {
    gap: 3.125rem;
    margin-top: 3.125rem;
  }
}

.p-about-spots__item-title {
  color: #00a5c0;
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-about-spots__item-title {
    font-size: 1.375rem;
    line-height: 2;
  }
}

.p-about-spots__item-list {
  margin-top: 2.5rem;
}
@media screen and (min-width: 751px) {
  .p-about-spots__item-list {
    margin-top: 1.25rem;
  }
}

.c-link-items {
  grid-gap: 0 9.4117647059%;
  display: grid;
  gap: 0 9.4117647059%;
  grid-template-columns: repeat(1, 1fr);
}
@media screen and (min-width: 751px) {
  .c-link-items {
    grid-template-columns: repeat(2, 1fr);
  }
}

.c-link-items .c-link-item:nth-last-child(1) {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 4px 1px;
}

@media screen and (min-width: 751px) {
  .c-link-items .c-link-item:nth-last-child(2) {
    background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
    background-position: left bottom;
    background-repeat: repeat-x;
    background-size: 4px 1px;
  }
}

.c-link-item a {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left top;
  background-repeat: repeat-x;
  background-size: 4px 1px;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
  padding: 2.5rem 0;
  position: relative;
  transition: all 0.3s ease 0s;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-link-item a {
    font-size: 1.125rem;
    line-height: 2;
    padding: 1.375rem 0;
  }
}

@media (hover: hover) {
  .c-link-item a:hover {
    color: #00a5c0;
    opacity: 0.7;
  }
}
.c-link-item a:after {
  background: url(../images/common/icon-blank.svg) center center/contain no-repeat;
  content: "";
  height: 1.75rem;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1.75rem;
}
@media screen and (min-width: 751px) {
  .c-link-item a:after {
    height: 0.8125rem;
    width: 0.8125rem;
  }
}

.p-access-page-header {
  background: url(../images/pages/access/heading-bg-sp.jpg) center center/cover no-repeat;
}
@media screen and (min-width: 751px) {
  .p-access-page-header {
    background: url(../images/pages/access/heading-bg-pc.jpg) center center/cover no-repeat;
  }
}

.p-access-map__inner {
  max-width: 67.5rem;
}

.p-access-map {
  margin-top: 8.75rem;
}
@media screen and (min-width: 751px) {
  .p-access-map {
    margin-top: 7.5rem;
  }
}

.p-access-info {
  margin-bottom: 12.5rem;
  margin-top: 8.125rem;
}
@media screen and (min-width: 751px) {
  .p-access-info {
    margin-bottom: 10rem;
    margin-top: 6.625rem;
  }
}

.p-access-info__items {
  display: flex;
  flex-direction: column;
  gap: 9.375rem;
}
@media screen and (min-width: 751px) {
  .p-access-info__items {
    gap: 4.375rem;
  }
}

.p-access-info__item-title {
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-access-info__item-title {
    font-size: 1.375rem;
    line-height: 2;
  }
}

.p-access-info__item-contents {
  margin-top: 2.5rem;
}
@media screen and (min-width: 751px) {
  .p-access-info__item-contents {
    margin-top: 1.125rem;
  }
}

.p-access-info__item-text {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-access-info__item-text {
    font-size: 1rem;
    line-height: 2;
  }
}

.p-access-info__item-img {
  display: block;
  margin-top: 3.25rem;
}
@media screen and (min-width: 751px) {
  .p-access-info__item-img {
    margin-top: 1.875rem;
  }
}

.p-access-info__item-img img {
  -o-object-fit: contain;
  height: auto;
     object-fit: contain;
  width: 100%;
}

.p-access-info__item:nth-of-type(2) .p-access-info__item-img img {
  max-width: 580px;
}

.p-bbq-page-header {
  background: url(../images/pages/bbq/heading-bg-sp.jpg) center center/cover no-repeat;
}
@media screen and (min-width: 751px) {
  .p-bbq-page-header {
    background: url(../images/pages/bbq/heading-bg-pc.jpg) center center/cover no-repeat;
  }
}

.p-bbq-about {
  margin-top: 10rem;
}
@media screen and (min-width: 751px) {
  .p-bbq-about {
    margin-top: 8.75rem;
  }
}

.p-bbq-about__title {
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
  word-break: keep-all;
}
@media screen and (min-width: 751px) {
  .p-bbq-about__title {
    font-size: 1.75rem;
    line-height: 2;
  }
}

.p-bbq-about__intro {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 3.75rem;
}
@media screen and (min-width: 751px) {
  .p-bbq-about__intro {
    font-size: 1rem;
    line-height: 2;
    margin-top: 1.25rem;
  }
}

.p-bbq-about__image {
  margin: 3.75rem auto 0;
}
@media screen and (min-width: 751px) {
  .p-bbq-about__image {
    margin: 6.25rem auto 0;
    width: 96%;
  }
}

.p-bbq-about__image img {
  -o-object-fit: contain;
  height: auto;
     object-fit: contain;
}

.p-bbq-service {
  margin-top: 10rem;
}

.p-bbq-service__title {
  align-items: initial;
  flex-direction: column;
}
@media screen and (min-width: 751px) {
  .p-bbq-service__title {
    align-items: center;
    flex-direction: initial;
  }
}

.p-bbq-service__items {
  margin-top: 3.125rem;
}

.p-bbq-service__notes {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.7916666667;
  margin-top: 6.25rem;
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (min-width: 751px) {
  .p-bbq-service__notes {
    font-size: 0.875rem;
    line-height: 1.5714285714;
    margin-top: 2.9375rem;
  }
}

.p-bbq-other {
  margin-top: 11.25rem;
}

.p-bbq-other__items {
  margin-top: 3.875rem;
}

.p-bbq-plan {
  margin-top: 9.75rem;
}
@media screen and (min-width: 751px) {
  .p-bbq-plan {
    margin-top: 8.75rem;
  }
}

.p-bbq-plan__inner {
  max-width: 70.625rem;
}

.p-bbq-plan__title {
  align-items: initial;
  flex-direction: column;
  margin: 0 auto;
  max-width: 53.125rem;
}
@media screen and (min-width: 751px) {
  .p-bbq-plan__title {
    align-items: center;
    flex-direction: row;
  }
}

.p-bbq-plan__tabs {
  margin-top: 5rem;
}
@media screen and (min-width: 751px) {
  .p-bbq-plan__tabs {
    margin-top: 3.75rem;
  }
}

.p-bbq-plan__item-title {
  height: 0;
  visibility: hidden;
}

.p-bbq-plan__item-name {
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-bbq-plan__item-name {
    font-size: 1.375rem;
    line-height: 2;
  }
}

.p-bbq-plan__contents {
  margin-top: 2.5rem;
}
@media screen and (min-width: 751px) {
  .p-bbq-plan__contents {
    margin-top: 3.375rem;
  }
}

.c-plan__accordion {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 4px 1px;
  margin-top: 4.375rem;
}

.c-plan__yoyaku {
  margin-top: 6.25rem;
  text-align: center;
}
@media screen and (min-width: 751px) {
  .c-plan__yoyaku {
    margin-top: 3.75rem;
  }
}

.c-plan__yoyaku-link {
  text-align: center;
}

.c-plan__yoyaku-note {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.07em;
  line-height: 1.7857142857;
  margin-top: 2.5rem;
}
@media screen and (min-width: 751px) {
  .c-plan__yoyaku-note {
    font-size: 0.875rem;
    margin-top: 1.375rem;
  }
}

.p-bbq-plan__tabs + .p-bbq-plan__tabs {
  margin-top: 7.5rem;
}

.p-bbq-plan__tabs-title {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  justify-content: center;
  margin-bottom: 3.75rem;
}
@media screen and (min-width: 751px) {
  .p-bbq-plan__tabs-title {
    gap: 0.4375rem;
    margin-bottom: 3.125rem;
  }
}

.p-bbq-plan__tabs-title-icon {
  height: 7.875rem;
  width: 5rem;
}
@media screen and (min-width: 751px) {
  .p-bbq-plan__tabs-title-icon {
    height: 3.9375rem;
    width: 2.5rem;
  }
}

.p-bbq-plan__tabs-title-icon img {
  -o-object-fit: contain;
  height: 100%;
  max-width: 100%;
     object-fit: contain;
}

.p-bbq-plan__tabs-title-text {
  font-size: 2.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2.4;
}
@media screen and (min-width: 751px) {
  .p-bbq-plan__tabs-title-text {
    font-size: 1.375rem;
    line-height: 2.5454545455;
  }
}

.p-bbq-plan__tabs-title + .c-tab__menu {
  margin-top: 2.5rem;
}

.p-bbq-plan__item--01 .c-plan__intro-icons img,
.p-bbq-plan__item--02 .c-plan__intro-icons img,
.p-bbq-plan__item--05 .c-plan__intro-icons img,
.p-bbq-plan__item--06 .c-plan__intro-icons img {
  width: 40.5405405405%;
}
@media screen and (min-width: 751px) {
  .p-bbq-plan__item--01 .c-plan__intro-icons img,
  .p-bbq-plan__item--02 .c-plan__intro-icons img,
  .p-bbq-plan__item--05 .c-plan__intro-icons img,
  .p-bbq-plan__item--06 .c-plan__intro-icons img {
    max-width: 100%;
  }
}

.p-bbq-plan__item--06 {
  display: block;
  opacity: 1;
}

.p-bbq-plan__tabs .c-tab__menu .c-tab__menu-item js-tab__menu-item:nth-of-type(2).c-tab__menu-item js-tab__menu-item--active::after {
  border-right: none;
  transform: translateX(0rem);
  width: 100%;
}

.p-bbq-plan__tabs .c-tab__menu .c-tab__menu-item js-tab__menu-item:nth-of-type(3).c-tab__menu-item js-tab__menu-item--active::after {
  border-right: 2px solid #00a5c0;
  right: 0;
  transform: translateX(2px);
}
@media screen and (min-width: 751px) {
  .p-bbq-plan__tabs .c-tab__menu .c-tab__menu-item js-tab__menu-item:nth-of-type(3).c-tab__menu-item js-tab__menu-item--active::after {
    border-right: 0.0625rem solid #00a5c0;
    transform: translateX(0.03125rem);
  }
}

.p-cafe-page-header {
  background: url(../images/pages/shop-cafe/heading-bg-sp.jpg) center center/cover no-repeat;
}
@media screen and (min-width: 751px) {
  .p-cafe-page-header {
    background: url(../images/pages/shop-cafe/heading-bg-pc.jpg) center center/cover no-repeat;
  }
}

.p-cafe-about {
  margin-top: 8rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-about {
    margin-top: 9.375rem;
  }
}

.p-cafe-about__title {
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-cafe-about__title {
    font-size: 1.75rem;
    letter-spacing: 0.05em;
    line-height: 2;
  }
}

.p-cafe-about__description {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 3.625rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-about__description {
    font-size: 1rem;
    line-height: 2;
    margin-top: 1.75rem;
    max-width: 36.25rem;
  }
}

.p-cafe-about__image {
  margin: 6.25rem auto 0;
  max-width: 50rem;
}

.p-cafe-about__image img {
  height: auto;
}

.p-cafe-info {
  margin-top: 10.75rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-info {
    margin-top: 5.875rem;
  }
}

.p-cafe-info__inner {
  max-width: 70.625rem;
}

.p-cafe-info__contents {
  background-color: #ffffff;
  border: 0.125rem solid #05a3c0;
  border-radius: 1.25rem;
  padding: 3.125rem 2.5rem 4.375rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-info__contents {
    border: 0.0625rem solid #05a3c0;
    border-radius: 0.625rem;
    padding: 3.75rem;
  }
}

.p-cafe-info__body {
  display: flex;
  flex-direction: column;
  gap: 2.625rem;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 53.125rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-info__body {
    flex-direction: row;
    gap: 0;
  }
}

@media screen and (min-width: 751px) {
  .p-cafe-info__image {
    width: 51.7647058824%;
  }
}

.p-cafe-info__image img {
  border-radius: 1.25rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-info__image img {
    border-radius: 0.625rem;
  }
}

@media screen and (min-width: 751px) {
  .p-cafe-info__text {
    width: 43.5294117647%;
  }
}

.p-cafe-info__intro {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-cafe-info__intro {
    font-size: 1rem;
    line-height: 2;
  }
}

.p-cafe-info__items {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  margin: 0 auto;
  margin-top: 2.125rem;
  max-width: 53.125rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-info__items {
    gap: 0.3125rem;
  }
}

.p-cafe-info__item {
  display: flex;
  gap: 1.5rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-info__item {
    gap: 2.5rem;
  }
}

.p-cafe-info__term {
  display: inline-block;
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
  width: 10rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-info__term {
    font-size: 1rem;
    line-height: 2;
    width: 7.5rem;
  }
}

.p-cafe-info__description {
  flex: 1;
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-cafe-info__description {
    font-size: 1rem;
    line-height: 2;
  }
}

.p-cafe-menu {
  margin-top: 12.375rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu {
    margin-top: 9.375rem;
  }
}

.p-cafe-menu__title {
  align-items: initial;
  flex-direction: column;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__title {
    align-items: center;
    flex-direction: row;
  }
}

.p-cafe-menu__box-title {
  color: #00a5c0;
  flex-direction: column;
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__box-title {
    font-size: 1.375rem;
    line-height: 2;
  }
}

.p-cafe-menu__description {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 2.75rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__description {
    font-size: 1rem;
    line-height: 2;
    margin-top: 1.625rem;
  }
}

.p-cafe-menu__image {
  margin-top: 4.375rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__image {
    margin-top: 3.75rem;
  }
}

.p-cafe-menu__link {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  margin-top: 1.25rem;
  text-align: center;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__link {
    display: none;
    margin-top: 1.875rem;
  }
}

.p-cafe-menu__image img {
  height: auto;
}

.p-cafe-menu__contents {
  margin-top: 10rem;
}

.p-cafe-menu__nav-items {
  grid-gap: 1.875rem 3.75rem;
  display: grid;
  gap: 1.875rem 3.75rem;
  grid-template-columns: repeat(2, 1fr);
  margin: 0 auto;
  max-width: 38.75rem;
  width: 92%;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__nav-items {
    display: flex;
    gap: initial;
    max-width: none;
    max-width: initial;
    width: auto;
    width: initial;
  }
}

.p-cafe-menu__boxes {
  display: flex;
  flex-direction: column;
  gap: 7.5rem;
  margin-top: 8.75rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__boxes {
    margin-top: 5.75rem;
  }
}

.p-cafe-menu__items {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 1.1vw 1px;
  margin-top: 2.625rem;
  padding-bottom: 3.125rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__items {
    background-size: 4px 1px;
    margin-top: 1.375rem;
    padding-bottom: 1.875rem;
  }
}

.p-cafe-menu__item {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left top;
  background-repeat: repeat-x;
  background-size: 1.1vw 1px;
  display: flex;
  gap: 2.5rem;
  padding-top: 3.125rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__item {
    background-size: 4px 1px;
    padding-top: 1.875rem;
  }
}

.p-cafe-menu__item + .p-cafe-menu__item {
  margin-top: 3.125rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__item + .p-cafe-menu__item {
    margin-top: 1.875rem;
  }
}

.p-cafe-menu__item-image {
  width: 37.3134328358%;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__item-image {
    width: 32.9411764706%;
  }
}

.p-cafe-menu__item-image img {
  border-radius: 0.625rem;
  height: auto;
}

.p-cafe-menu__item-content {
  width: 58.2089552239%;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__item-content {
    width: 62.3529411765%;
  }
}

.p-cafe-menu__item-name {
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.6;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__item-name {
    font-size: 1.125rem;
  }
}

.p-cafe-menu__item-price {
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 0.25rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__item-price {
    font-size: 1.125rem;
    line-height: 2;
  }
}

.p-cafe-menu__item-description {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2.3333333333;
  margin-top: 0.625rem;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__item-description {
    font-size: 1rem;
    line-height: 2;
  }
}

.p-cafe-menu__drink-box {
  grid-gap: 0.5rem;
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(1, 1fr);
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__drink-box {
    gap: 0.5em 5rem;
    grid-template-columns: repeat(auto-fit, minmax(350px, 2fr));
  }
}

.p-cafe-menu__drinks {
  display: flex;
  flex-direction: column;
  gap: 0.5em;
}

.p-cafe-menu__drink {
  display: flex;
  gap: 2em;
  justify-content: space-between;
}

.p-cafe-menu__drink-name {
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__drink-name {
    font-size: 1.125rem;
    line-height: 2;
  }
}

.p-cafe-menu__drink-price {
  flex-shrink: 0;
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-cafe-menu__drink-price {
    font-size: 1.125rem;
    line-height: 2;
  }
}

.p-cafe-other {
  margin-top: 11.25rem;
}

.p-cafe-other__items {
  margin-top: 3.875rem;
}

.p-central-park-page-header {
  background: url(../images/pages/central-park/heading-bg-sp.jpg) center center/cover no-repeat;
}
@media screen and (min-width: 751px) {
  .p-central-park-page-header {
    background: url(../images/pages/central-park/heading-bg-pc.jpg) center center/cover no-repeat;
  }
}

.p-central-park-other__items {
  margin-top: 3.875rem;
}

.p-comming-soon {
  margin: 12.5rem 0;
}

.p-comming-soon__title {
  font-family: "Nunito", sans-serif;
  font-size: 3.75rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 1.3333333333;
  text-align: center;
}

.p-comming-soon__text {
  font-size: 2rem;
  line-height: 1.5625;
  margin-top: 3.75rem;
  text-align: center;
}

.p-comming-soon__link {
  margin-top: 6.25rem;
  text-align: center;
}

.p-contact-form {
  margin-top: 6.25rem;
  padding-bottom: 12.5rem;
}
@media screen and (min-width: 751px) {
  .p-contact-form {
    padding-bottom: 10rem;
  }
}

.p-contact-form__intro {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin: 4.625rem auto 0;
}
@media screen and (min-width: 751px) {
  .p-contact-form__intro {
    font-size: 1rem;
    line-height: 2;
    margin: 3.125rem auto 0;
  }
}

.p-contact-form__form {
  margin-top: 6.25rem;
}
@media screen and (min-width: 751px) {
  .p-contact-form__form {
    margin-top: 2.625rem;
  }
}

.p-error-contents {
  margin-top: 3.75rem;
  padding-bottom: 10.5rem;
  text-align: center;
}
@media screen and (min-width: 751px) {
  .p-error-contents {
    margin-top: 2.25rem;
  }
}

.p-error-contents__title {
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-error-contents__title {
    font-size: 1.75rem;
    line-height: 2;
  }
}

.p-error-contents__text {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 4.125rem;
  text-align: left;
}
@media screen and (min-width: 751px) {
  .p-error-contents__text {
    font-size: 1rem;
    line-height: 2;
    margin-top: 1.75rem;
    text-align: center;
  }
}

.p-error-contents__link {
  margin-top: 5.375rem;
}
@media screen and (min-width: 751px) {
  .p-error-contents__link {
    margin-top: 3.125rem;
  }
}

.p-facility-page-header {
  background: url(../images/pages/facility/heading-bg-sp.jpg) center center/cover no-repeat;
}
@media screen and (min-width: 751px) {
  .p-facility-page-header {
    background: url(../images/pages/facility/heading-bg-pc.jpg) center center/cover no-repeat;
  }
}

.p-facility-about {
  margin-top: 10rem;
}
@media screen and (min-width: 751px) {
  .p-facility-about {
    margin-top: 8.75rem;
  }
}

.p-facility-about__image {
  margin: 3.75rem auto 0;
}
@media screen and (min-width: 751px) {
  .p-facility-about__image {
    margin: 6.25rem auto 0;
    width: 96%;
  }
}

.p-facility-about__image img {
  height: auto;
}

.p-facility-services {
  margin-top: 12.5rem;
  overflow: hidden;
  padding-bottom: 10rem;
}
@media screen and (min-width: 751px) {
  .p-facility-services {
    padding-bottom: 0rem;
  }
}

.p-facility-services__items {
  margin: 0 auto;
  max-width: 81.5rem;
  padding: 0 2.5rem;
}

.p-facility-services .c-section-title01 {
  align-items: initial;
  flex-direction: column;
  gap: 0.125rem;
  margin-top: 1.125rem;
}
@media screen and (min-width: 751px) {
  .p-facility-services .c-section-title01 {
    margin-left: 1.875rem;
    margin-top: 1.5625rem;
  }
}

.p-facility-services .c-services-card__title.c-section-title01::before {
  display: none;
}

.p-facility-services .c-section-title01__sub {
  align-items: center;
  color: #243239;
  display: flex;
  font-family: "Nunito", sans-serif;
  font-size: 1.75rem;
  font-weight: 400;
  gap: 0.5em;
  letter-spacing: 0.05em;
  line-height: 2;
  transform: translateX(0.125rem);
}
@media screen and (min-width: 751px) {
  .p-facility-services .c-section-title01__sub {
    font-size: 1rem;
    line-height: 2;
  }
}

.p-facility-services .c-section-title01__sub::before {
  -webkit-clip-path: circle(50% at 50% 50%);
  background-color: #00a5c0;
          clip-path: circle(50% at 50% 50%);
  content: "";
  display: block;
  height: 1.5rem;
  width: 1.5rem;
}
@media screen and (min-width: 751px) {
  .p-facility-services .c-section-title01__sub::before {
    height: 0.75rem;
    width: 0.75rem;
  }
}

.p-facility-area {
  background-color: #e1f2f2;
  padding: 6.25rem 0;
}
@media screen and (min-width: 751px) {
  .p-facility-area {
    padding: 5rem 0;
  }
}

.p-facility-area__title {
  align-items: initial;
  flex-direction: column;
}
@media screen and (min-width: 751px) {
  .p-facility-area__title {
    align-items: center;
    flex-direction: row;
  }
}

.c-section-title01__sub span {
  opacity: 0;
}

.p-facility-area__contents {
  margin-top: 5rem;
}
@media screen and (min-width: 751px) {
  .p-facility-area__contents {
    margin-top: 3.125rem;
  }
}

.p-facility-area__image {
  width: 100%;
}
@media screen and (min-width: 751px) {
  .p-facility-area__image {
    width: 41.1764705882%;
  }
}

.p-facility-area__image img {
  border-radius: 1.25rem;
  height: auto;
}
@media screen and (min-width: 751px) {
  .p-facility-area__image img {
    border-radius: 0.625rem;
  }
}

@media screen and (min-width: 751px) {
  .p-facility-area__text {
    width: 52.9411764706%;
  }
}

.p-facility-area__description {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-facility-area__description {
    font-size: 1rem;
    line-height: 2;
  }
}

.p-facility-area__link {
  margin-top: 2.5rem;
  text-align: right;
}
@media screen and (min-width: 751px) {
  .p-facility-area__link {
    text-align: left;
    text-align: initial;
  }
}

.p-faq-page-header {
  background: url(../images/pages/faq/heading-bg-sp.jpg) center center/cover no-repeat;
}
@media screen and (min-width: 751px) {
  .p-faq-page-header {
    background: url(../images/pages/faq/heading-bg-pc.jpg) center center/cover no-repeat;
  }
}

.p-faq-map__inner {
  max-width: 67.5rem;
}

.p-faq-nav {
  margin-top: 7.3125rem;
}
@media screen and (min-width: 751px) {
  .p-faq-nav {
    margin-top: 7.5rem;
  }
}

.p-faq-nav__items {
  margin: 0 auto;
  max-width: 47.5rem;
  width: 92%;
}
@media screen and (min-width: 751px) {
  .p-faq-nav__items {
    width: auto;
    width: initial;
  }
}

.p-faq-contents {
  margin-bottom: 12.5rem;
  margin-top: 6.875rem;
}
@media screen and (min-width: 751px) {
  .p-faq-contents {
    margin-bottom: 10rem;
    margin-top: 5.875rem;
  }
}

.p-faq__boxes {
  display: flex;
  flex-direction: column;
  gap: 10rem;
}
@media screen and (min-width: 751px) {
  .p-faq__boxes {
    gap: 7.5rem;
  }
}

.p-faq__title {
  color: #00a5c0;
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-faq__title {
    font-size: 1.375rem;
    line-height: 2;
  }
}

.p-faq__items {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 4px 1px;
  margin-top: 2.5rem;
}
@media screen and (min-width: 751px) {
  .p-faq__items {
    margin-top: 1.125rem;
  }
}

.p-faq-nav__items .c-section-nav__item {
  width: 45%;
}
@media screen and (min-width: 751px) {
  .p-faq-nav__items .c-section-nav__item {
    width: auto;
    width: initial;
  }
}

.p-glamping-page-header {
  background: url(../images/pages/glamping/heading-bg-sp.jpg) center center/cover no-repeat;
}
@media screen and (min-width: 751px) {
  .p-glamping-page-header {
    background: url(../images/pages/glamping/heading-bg-pc.jpg) center center/cover no-repeat;
  }
}

.p-glamping-about {
  margin-top: 10rem;
}
@media screen and (min-width: 751px) {
  .p-glamping-about {
    margin-top: 8.75rem;
  }
}

.p-glamping-about__title {
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
  word-break: keep-all;
}
@media screen and (min-width: 751px) {
  .p-glamping-about__title {
    font-size: 1.75rem;
    line-height: 2;
  }
}

.p-glamping-about__intro {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 3.75rem;
}
@media screen and (min-width: 751px) {
  .p-glamping-about__intro {
    font-size: 1rem;
    line-height: 2;
    margin-top: 1.25rem;
  }
}

.p-glamping-about__image {
  margin: 3.75rem auto 0;
}
@media screen and (min-width: 751px) {
  .p-glamping-about__image {
    margin: 6.25rem auto 0;
    width: 96%;
  }
}

.p-glamping-about__image img {
  -o-object-fit: contain;
  height: auto;
     object-fit: contain;
}

.p-glamping-service {
  margin-top: 10rem;
}

.p-glamping-service__title {
  align-items: initial;
  flex-direction: column;
}
@media screen and (min-width: 751px) {
  .p-glamping-service__title {
    align-items: center;
    flex-direction: initial;
  }
}

.p-glamping-service__items {
  margin-top: 3.125rem;
}

.p-glamping-service__notes {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.7916666667;
  margin-top: 6.25rem;
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (min-width: 751px) {
  .p-glamping-service__notes {
    font-size: 0.875rem;
    line-height: 1.5714285714;
    margin-top: 2.9375rem;
  }
}

.p-glamping-other {
  margin-top: 11.25rem;
}

.p-glamping-other__items {
  margin-top: 3.875rem;
}

.p-glamping-plan {
  margin-top: 9.75rem;
}
@media screen and (min-width: 751px) {
  .p-glamping-plan {
    margin-top: 8.75rem;
  }
}

.p-glamping-plan__inner {
  max-width: 70.625rem;
}

.p-glamping-plan__title {
  align-items: initial;
  flex-direction: column;
  margin: 0 auto;
  max-width: 53.125rem;
}
@media screen and (min-width: 751px) {
  .p-glamping-plan__title {
    align-items: center;
    flex-direction: row;
  }
}

.p-glamping-plan__tabs {
  margin-top: 5rem;
}
@media screen and (min-width: 751px) {
  .p-glamping-plan__tabs {
    margin-top: 3.75rem;
  }
}

.p-glamping-plan__item-title {
  height: 0;
  visibility: hidden;
}

.p-glamping-plan__item-name {
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-glamping-plan__item-name {
    font-size: 1.375rem;
    line-height: 2;
  }
}

.p-glamping-plan__contents {
  margin-top: 2.5rem;
}
@media screen and (min-width: 751px) {
  .p-glamping-plan__contents {
    margin-top: 3.375rem;
  }
}

.p-glamping-plan__tabs + .p-glamping-plan__tabs {
  margin-top: 7.5rem;
}

.p-glamping-plan__tabs-title {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  justify-content: center;
}
@media screen and (min-width: 751px) {
  .p-glamping-plan__tabs-title {
    gap: 0.4375rem;
  }
}

.p-glamping-plan__tabs-title-icon {
  height: 4.625rem;
  width: 4.875rem;
}
@media screen and (min-width: 751px) {
  .p-glamping-plan__tabs-title-icon {
    height: 2.375rem;
    width: 2.5rem;
  }
}

.p-glamping-plan__tabs-title-icon img {
  -o-object-fit: contain;
  height: 100%;
  max-width: 100%;
     object-fit: contain;
}

.p-glamping-plan__tabs-title-text {
  font-size: 2.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2.4;
}
@media screen and (min-width: 751px) {
  .p-glamping-plan__tabs-title-text {
    font-size: 1.375rem;
    line-height: 2.5454545455;
  }
}

.p-glamping-plan__tabs-title + .c-tab__menu {
  margin-top: 2.5rem;
}

.p-glamping-plan__item--01 .c-plan__intro-icons img,
.p-glamping-plan__item--02 .c-plan__intro-icons img {
  width: 85.4237288136%;
}
@media screen and (min-width: 751px) {
  .p-glamping-plan__item--01 .c-plan__intro-icons img,
  .p-glamping-plan__item--02 .c-plan__intro-icons img {
    max-width: 100%;
  }
}

.p-group.--confirm {
  padding-bottom: 12.5rem;
}
@media screen and (min-width: 751px) {
  .p-group.--confirm {
    padding-bottom: 6.875rem;
  }
}

.p-group-page-header {
  background: url(../images/pages/group/heading-bg-sp.jpg) center center/cover no-repeat;
}
@media screen and (min-width: 751px) {
  .p-group-page-header {
    background: url(../images/pages/group/heading-bg-pc.jpg) center center/cover no-repeat;
  }
}

.p-group-intro {
  margin-top: 9rem;
}

.p-group-intro__text {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-group-intro__text {
    font-size: 1rem;
    line-height: 2;
  }
}

.p-group-flow {
  margin-top: 11.875rem;
}
@media screen and (min-width: 751px) {
  .p-group-flow {
    margin-top: 10rem;
  }
}

.p-group-flow__inner {
  max-width: 65rem;
}

.p-group-flow__step-items {
  grid-gap: 4.375rem;
  display: grid;
  gap: 4.375rem;
  grid-template-columns: repeat(1, 1fr);
  margin-top: 3.75rem;
}
@media screen and (min-width: 751px) {
  .p-group-flow__step-items {
    gap: 2.8125rem;
    grid-template-columns: repeat(3, 1fr);
  }
}

.p-group-flow__step-item {
  grid-gap: 0rem 3.125rem;
  background-color: #e1f2f2;
  border-radius: 0.625rem;
  display: grid;
  gap: 0rem 3.125rem;
  grid-auto-flow: row;
  grid-template-areas: "icon title" "icon description";
  padding: 2rem 2.5rem;
  position: relative;
}
@media screen and (min-width: 751px) {
  .p-group-flow__step-item {
    grid-gap: 0;
    display: grid;
    gap: 0;
    grid-row: span 3;
    grid-template-areas: none;
    grid-template-rows: subgrid;
    padding: clamp(
    0.9375rem,
    -0.0843613933rem + 2.1770682148vw,
    1.875rem
  );
    text-align: center;
  }
}

.p-group-flow__step-icon {
  grid-area: icon;
}
@media screen and (min-width: 751px) {
  .p-group-flow__step-icon {
    grid-area: initial;
  }
}

.p-group-flow__step-title {
  grid-area: title;
}
@media screen and (min-width: 751px) {
  .p-group-flow__step-title {
    grid-area: initial;
  }
}

.p-group-flow__step-description {
  grid-area: description;
}
@media screen and (min-width: 751px) {
  .p-group-flow__step-description {
    grid-area: initial;
  }
}

.p-group-flow__step-item:not(:nth-of-type(1))::before {
  border-bottom: 0.125rem solid #000;
  border-right: 0.125rem solid #000;
  content: "";
  display: block;
  height: 0.9375rem;
  left: 50%;
  position: absolute;
  top: -2.5rem;
  transform: rotate(45deg) translateX(-50%);
  transform-origin: center;
  width: 0.9375rem;
}
@media screen and (min-width: 751px) {
  .p-group-flow__step-item:not(:nth-of-type(1))::before {
    height: 0.625rem;
    left: -1.875rem;
    top: 50%;
    transform: rotate(-45deg);
    width: 0.625rem;
  }
}

.p-group-flow__step-icon {
  align-content: center;
  display: grid;
  justify-content: center;
  margin: 0 auto;
  place-content: center;
  width: 8.75rem;
}
@media screen and (min-width: 751px) {
  .p-group-flow__step-icon {
    width: 43.4782608696%;
  }
}

.p-group-flow__step-icon img {
  height: auto;
}

.p-group-flow__step-content {
  flex: 1;
  text-align: left;
}
@media screen and (min-width: 751px) {
  .p-group-flow__step-content {
    display: contents;
    text-align: left;
    text-align: initial;
  }
}

.p-group-flow__step-title {
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-group-flow__step-title {
    font-size: clamp(
    1rem,
    0.8637518142rem + 0.290275762vw,
    1.125rem
  );
    line-height: 2;
    margin-top: 4.25rem;
    margin-top: clamp(
    0.9375rem,
    -0.0843613933rem + 2.1770682148vw,
    1.875rem
  );
  }
}

.p-group-flow__step-description {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 0.75rem;
}
@media screen and (min-width: 751px) {
  .p-group-flow__step-description {
    font-size: clamp(
    0.8125rem,
    0.6081277213rem + 0.435413643vw,
    1rem
  );
    line-height: 2;
    margin-top: 1.875rem;
    margin-top: 0.9375rem;
  }
}

.p-group-flow__note {
  margin: 4.625rem auto 0;
  max-width: 53.125rem;
}
@media screen and (min-width: 751px) {
  .p-group-flow__note {
    margin: 3.75rem auto 0;
  }
}

.p-group-flow__note-text {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-group-flow__note-text {
    font-size: 1rem;
    line-height: 2;
  }
}

.p-group-flow__note-items {
  margin-top: 3.125rem;
}
@media screen and (min-width: 751px) {
  .p-group-flow__note-items {
    margin-top: 2.5rem;
  }
}

.p-group-flow__note-items li {
  color: #eb0f0f;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.7916666667;
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (min-width: 751px) {
  .p-group-flow__note-items li {
    font-size: 0.875rem;
    line-height: 2;
  }
}

.p-group-flow__note-items li a {
  display: inline-block;
  margin-left: 1em;
}

.p-group-contact {
  margin-top: 10rem;
}

.p-group-contact__title .c-section-title01__sub {
  transform: translateY(0.3125rem);
}

.p-group-contact__form {
  margin-top: 3.75rem;
}

.p-group-include-contact {
  margin-top: 7.125rem;
}

.p-group-contact__form-item-01 input {
  max-width: 25rem;
}

.p-group-contact__form-item-01 .c-form__data {
  margin-top: 0.8125rem;
}

.p-group-contact__form-item-01 .c-form__notes,
.p-group-contact__form-item-02 .c-form__notes {
  margin-top: 0.3125rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-01 .c-form__notes,
  .p-group-contact__form-item-02 .c-form__notes {
    margin-top: 0rem;
  }
}

.p-group-contact__form-item-02 input {
  max-width: 9.375rem;
}

.p-group-contact__form-item-02 .c-form__data p {
  align-items: center;
  display: flex;
  font-size: 2rem;
  font-weight: 500;
  gap: 1.875rem;
  letter-spacing: 0.07em;
  line-height: 1;
  line-height: 1.5625;
  margin-top: 0.8125rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-02 .c-form__data p {
    font-size: 1.125rem;
    gap: 0.625rem;
    line-height: 2.7777777778;
  }
}

.p-group-contact__form-item-02 .c-form__data input {
  width: 9.375rem;
}

.wpcf7-form-control.wpcf7-radio {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-top: 2rem;
}
@media screen and (min-width: 751px) {
  .wpcf7-form-control.wpcf7-radio {
    flex-direction: row;
    margin-top: 0;
  }
}

.p-group-contact__form-item-03 p {
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 1.5625;
  margin-top: 1.875rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-03 p {
    font-size: 1.125rem;
    line-height: 2.7777777778;
    margin-top: 0rem;
  }
}

.p-group-contact__form-item-09 .c-form__data-item {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-09 .c-form__data-item {
    align-items: center;
    flex-direction: row;
    gap: clamp(
    0.625rem,
    -5.5061683599rem + 13.0624092888vw,
    6.25rem
  );
  }
}

.p-group-contact__form-item-09 .c-form__data-item + .c-form__data-item {
  margin-top: 1.875rem;
}

.p-group-contact__form-item-09 .c-form__data-item input {
  width: 15rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-09 .c-form__data-item input {
    max-width: clamp(
    7.5rem,
    5.4562772134rem + 4.3541364296vw,
    9.375rem
  );
    width: auto;
    width: initial;
  }
}

.p-group-contact__form-item-09 .c-form__data-item .--label {
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 3.125;
  margin-right: 0.625rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-09 .c-form__data-item .--label {
    font-size: 1rem;
    width: 9.375rem;
  }
}

.p-group-contact__form-item-09 .c-form__data-item .--input {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 4px 1px;
  display: flex;
  flex-direction: column;
  gap: 1.875rem;
  padding-bottom: 2.5rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-09 .c-form__data-item .--input {
    align-items: center;
    background: none;
    flex-direction: row;
    gap: 0rem;
    padding-bottom: 0;
    padding-bottom: initial;
  }
}

.p-group-contact__form-item-09 .c-form__data-item .--count {
  display: flex;
  font-size: 2rem;
  gap: 1.25rem;
  letter-spacing: 0.07em;
  line-height: 2.7777777778;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-09 .c-form__data-item .--count {
    align-items: center;
    font-size: 1.125rem;
  }
}

@media screen and (min-width: 751px) {
  .p-group-contact__form-item-09 .c-form__data-item .--woman {
    margin-left: 3.125rem;
  }
}

@media screen and (min-width: 751px) {
  .p-group-contact__form-item-09 .c-form__data-item .--baby {
    margin-left: clamp(
    4.3125rem,
    3.699383164rem + 1.3062409289vw,
    4.875rem
  );
  }
}

.--confirm .p-group-contact__form-item-09 .c-form__data-item .--baby {
  margin-left: 0rem;
}

.p-group-contact__form-item-10 .c-form__data + .c-form__data {
  margin-top: 2.5rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-10 .c-form__data + .c-form__data {
    margin-top: 1.875rem;
  }
}

.p-group-contact__form-item-10 .c-form__data-item {
  background-image: linear-gradient(to right, #8d9ba2 2px, transparent 2px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 4px 1px;
  margin-top: 0.625rem;
  padding-bottom: 2.5rem;
}

.--confirm .p-group-contact__form-item-10 {
  background: none;
  padding-bottom: 0;
  padding-bottom: initial;
}

.p-group-contact__form-item-10 .c-form__data-item p {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  font-size: 2rem;
  font-weight: 500;
  gap: 0.625rem;
  letter-spacing: 0.07em;
  line-height: 1.5625;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-10 .c-form__data-item p {
    font-size: 1.125rem;
    line-height: 2.7777777778;
  }
}

.p-group-contact__form-item-10 .c-form__data-item input {
  max-width: 15rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-10 .c-form__data-item input {
    max-width: 9.375rem;
  }
}

.p-group-contact__form-item-10 .wpcf7-checkbox .wpcf7-list-item-label {
  margin-left: 0;
}

.p-group-contact__form-item-10 .wpcf7-form-control.wpcf7-checkbox {
  display: flex;
  flex-direction: column;
  font-size: 2rem;
  font-weight: 500;
  gap: 1.25rem;
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin-top: 2rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-10 .wpcf7-form-control.wpcf7-checkbox {
    flex-direction: row;
    font-size: clamp(
    0.875rem,
    0.6025036284rem + 0.5805515239vw,
    1.125rem
  );
    gap: clamp(
    0.875rem,
    0.4662554427rem + 0.8708272859vw,
    1.25rem
  );
    letter-spacing: 0.07em;
    line-height: 2.7777777778;
    margin-top: 0rem;
  }
}

.p-group-contact__form-item-10 .wpcf7-form-control.wpcf7-radio {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-top: 2rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-10 .wpcf7-form-control.wpcf7-radio {
    flex-direction: row;
    margin-top: 0rem;
  }
}

.p-group-contact__form-item-11 .c-form__notes {
  margin-top: 0.625rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-11 .c-form__notes {
    margin-top: 0rem;
  }
}

@media screen and (min-width: 751px) {
  .p-group-contact__form-item-11 .c-form__data {
    margin-top: 0.625rem;
  }
}

.p-group-contact__form-item-11 .c-form__data-item {
  display: flex;
  flex-direction: column;
  gap: 1.875rem;
  justify-content: space-between;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-11 .c-form__data-item {
    align-items: center;
    flex-direction: row;
    gap: 0rem;
    max-width: 31.125rem;
  }
}

.p-group-contact__form-item-11 .c-form__data-item + .c-form__data-item {
  margin-top: 1.875rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-11 .c-form__data-item + .c-form__data-item {
    margin-top: 0rem;
  }
}

.p-group-contact__form-item-11 .c-form__data-item .--label {
  font-size: 2rem;
  font-weight: 500;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 1.5625;
  width: 9.375rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-11 .c-form__data-item .--label {
    font-size: 1.125rem;
    line-height: 2.7777777778;
  }
}

.p-group-contact__form-item-11 .wpcf7-list-item + .wpcf7-list-item {
  margin-left: 1.25rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-11 .wpcf7-list-item + .wpcf7-list-item {
    margin-left: 1.25rem;
  }
}

.p-group-contact__form-item-12 .c-form__select {
  max-width: 28.125rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-12 .c-form__select {
    max-width: 25rem;
  }
}

.p-group-contact__form-item-13 .wpcf7-form-control.wpcf7-radio {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-top: 2rem;
}
@media screen and (min-width: 751px) {
  .p-group-contact__form-item-13 .wpcf7-form-control.wpcf7-radio {
    flex-direction: row;
    margin-top: 0rem;
  }
}

.--confirm .p-group-contact__form-item-13 p {
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 1.5625;
  margin-top: 1.875rem;
}
@media screen and (min-width: 751px) {
  .--confirm .p-group-contact__form-item-13 p {
    font-size: 1.125rem;
    line-height: 2.7777777778;
    margin-top: 0rem;
  }
}

.p-group-contact .c-form__submit-button {
  margin-top: 0.625rem;
}

.p-group-contact .c-form__submit-button p {
  display: flex;
  gap: 1.25rem;
  justify-content: center;
}

.wpcf7 form .wpcf7-response-output {
  border: transparent;
  text-align: center;
}

.p-hts {
  padding-bottom: 10rem;
}

.p-hts-page-header {
  background: url(../images/pages/how-to-stay/heading-bg-sp.jpg) center center/cover no-repeat;
}
@media screen and (min-width: 751px) {
  .p-hts-page-header {
    background: url(../images/pages/how-to-stay/heading-bg-pc.jpg) center center/cover no-repeat;
  }
}

.p-hts-about {
  margin-top: 8.125rem;
}

.p-hts-about__text {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin: 0 auto;
  width: 94%;
}
@media screen and (min-width: 751px) {
  .p-hts-about__text {
    font-size: 1rem;
    line-height: 2;
  }
}

.p-hts-plan {
  margin-top: 7.5rem;
}
@media screen and (min-width: 751px) {
  .p-hts-plan {
    margin-top: 5rem;
  }
}

.p-hts-plan__inner {
  max-width: 70.625rem;
}

.p-hts-plan__tabs {
  overflow: hidden;
}

.p-hts-plan__content {
  margin-top: 1.875rem;
}
@media screen and (min-width: 751px) {
  .p-hts-plan__content {
    margin-top: 0rem;
  }
}

.p-hts-plan__item-title {
  height: 0;
  opacity: 0;
  visibility: hidden;
}

.p-hts-plan__progress {
  position: relative;
}

.p-hts-plan__steps {
  display: flex;
  flex-direction: column;
  gap: 2.75rem;
}
@media screen and (min-width: 751px) {
  .p-hts-plan__steps {
    gap: 0.75rem;
  }
}

.p-hts-plan__steps::before {
  background-color: #bdc4c7;
  content: "";
  height: calc(100% - 3.75rem);
  left: 0.875rem;
  position: absolute;
  top: 1.875rem;
  width: 0.25rem;
}
@media screen and (min-width: 751px) {
  .p-hts-plan__steps::before {
    height: calc(100% - 1.875rem);
    left: 0.40625rem;
    top: 0.9375rem;
    width: 0.125rem;
  }
}

.p-hts-plan__step {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  justify-content: space-between;
}
@media screen and (min-width: 751px) {
  .p-hts-plan__step {
    flex-direction: row;
    gap: 3.5294117647%;
  }
}

.p-hts-plan__step-text {
  margin-left: 4.875rem;
}
@media screen and (min-width: 751px) {
  .p-hts-plan__step-text {
    margin-left: 2.8125rem;
    width: 61.7647058824%;
  }
}

.p-hts-plan__step-title {
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-hts-plan__step-title {
    font-size: 1.125rem;
    line-height: 2;
  }
}

.p-hts-plan__step-description {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 0.625rem;
}
@media screen and (min-width: 751px) {
  .p-hts-plan__step-description {
    font-size: 1rem;
    line-height: 2;
    margin-top: 0rem;
  }
}

.p-hts-plan__step-image {
  margin-left: 4.875rem;
}
@media screen and (min-width: 751px) {
  .p-hts-plan__step-image {
    margin-left: 0;
    margin-left: initial;
    width: 29.4117647059%;
  }
}

.p-hts-plan__step-image img {
  border-radius: 1.25rem;
  height: auto;
}
@media screen and (min-width: 751px) {
  .p-hts-plan__step-image img {
    border-radius: 0.625rem;
  }
}

.p-hts-plan__progress-line {
  background-color: #00a5c0;
  height: 0%;
  left: 0.875rem;
  max-height: calc(100% - 3.75rem);
  position: absolute;
  top: 1.875rem;
  width: 0.25rem;
  z-index: 1;
}
@media screen and (min-width: 751px) {
  .p-hts-plan__progress-line {
    left: 0.40625rem;
    max-height: calc(100% - 1.875rem);
    top: 0.9375rem;
    width: 0.125rem;
  }
}

.p-hts-plan__steps .p-hts-plan__step:last-child {
  margin-bottom: 0rem;
}

.p-hts-plan__step {
  margin-bottom: 40px;
  position: relative;
}

.p-hts-plan__dot {
  background-color: #bdc4c7;
  border-radius: 50%;
  height: 1.875rem;
  left: 0rem;
  position: absolute;
  top: 1.25rem;
  transition: background-color 0.3s, transform 0.3s;
  width: 1.875rem;
  z-index: 2;
}
@media screen and (min-width: 751px) {
  .p-hts-plan__dot {
    height: 0.9375rem;
    top: 0.625rem;
    width: 0.9375rem;
  }
}

.p-include-contact {
  background-color: #e1f2f2;
  padding: 7.5rem 0;
}
@media screen and (min-width: 751px) {
  .p-include-contact {
    padding: 5rem 0;
  }
}

.p-include-contact__header {
  text-align: center;
}

.p-include-contact__title {
  font-family: "Nunito", sans-serif;
  font-size: 3.125rem;
  font-weight: 600;
  letter-spacing: 0.07em;
  line-height: 1;
}
@media screen and (min-width: 751px) {
  .p-include-contact__title {
    font-size: 2.5rem;
  }
}

.p-include-contact__text {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.1428571429;
  margin-top: 1.75rem;
}
@media screen and (min-width: 751px) {
  .p-include-contact__text {
    font-size: 1rem;
    line-height: 2;
    margin-top: 1rem;
  }
}

.p-include-contact__links {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  justify-content: center;
  margin-top: 4.375rem;
}
@media screen and (min-width: 751px) {
  .p-include-contact__links {
    flex-direction: row;
    gap: initial;
    margin-top: 5rem;
    margin-top: 3.125rem;
  }
}

.p-include-contact__tel a {
  align-items: center;
  display: flex;
  font-family: "Nunito", sans-serif;
  font-size: 2.25rem;
  font-weight: 500;
  gap: 1.25rem;
  letter-spacing: 0.05em;
  line-height: 2;
  position: relative;
}
@media screen and (min-width: 751px) {
  .p-include-contact__tel a {
    font-size: 1.375rem;
    gap: 0.75rem;
    line-height: 2;
  }
}

.p-include-contact__tel a:before {
  background-image: url(../images/common/icon-tel.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  height: 2.1875rem;
  width: 2.1875rem;
}
@media screen and (min-width: 751px) {
  .p-include-contact__tel a:before {
    height: 1.1875rem;
    width: 1.1875rem;
  }
}

@media screen and (min-width: 751px) {
  .p-include-contact__mail {
    margin-left: 4em;
  }
}

.p-include-contact__mail a {
  background-color: #243239;
  border-radius: 6.25rem;
  color: #ffffff;
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
  min-width: 31.25rem;
  padding: 2rem 1.25rem;
  text-align: center;
  transition: all 0.3s ease 0s;
}
@media screen and (min-width: 751px) {
  .p-include-contact__mail a {
    font-size: 1rem;
    min-width: 18.75rem;
    padding: 0.75rem 1.25rem;
  }
}

@media (hover: hover) {
  .p-include-contact__mail a:hover {
    background-color: #566a74;
  }
}
.c-links__inner {
  max-width: 1060px;
}

.c-links__items {
  grid-gap: 2.5rem;
  display: grid;
  gap: 2.5rem;
  grid-template-columns: repeat(1, 1fr);
}
@media screen and (min-width: 751px) {
  .c-links__items {
    grid-template-columns: repeat(3, 1fr);
  }
}

.c-links__link {
  aspect-ratio: 670/250;
  border-radius: 1.25rem;
  display: block;
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 751px) {
  .c-links__link {
    aspect-ratio: 300/150;
    border-radius: 0.625rem;
  }
}

.c-links__image {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.c-links__image:after {
  background-color: #243239;
  bottom: 0;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  opacity: 0.5;
  position: absolute;
  right: 0;
  top: 0;
  transition: all 0.3s ease 0s;
  width: 100%;
}

@media (hover: hover) {
  .c-links__link:hover .c-links__image:after {
    opacity: 0.15;
  }
}
.c-links__image img {
  -o-object-fit: cover;
  -o-object-position: center;
  border-radius: 1.25rem;
  height: 100%;
     object-fit: cover;
     object-position: center;
  transition: all 0.3s ease 0s;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .c-links__image img {
    border-radius: 0.625rem;
  }
}

@media (hover: hover) {
  .c-links__link:hover .c-links__image img {
    transform: scale(1.1);
  }
}
.c-links__content {
  align-content: center;
  display: grid;
  height: 100%;
  justify-content: center;
  place-content: center;
  position: relative;
  text-align: center;
  z-index: 1;
}

.c-links__label {
  color: #ffffff;
  font-family: "Nunito", sans-serif;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.4583333333;
}
@media screen and (min-width: 751px) {
  .c-links__label {
    font-size: 0.75rem;
    line-height: 1.3333333333;
  }
}

.c-links__title {
  color: #ffffff;
  font-size: 2.125rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.4411764706;
  margin-top: 1.25rem;
}
@media screen and (min-width: 751px) {
  .c-links__title {
    font-size: 1.125rem;
    line-height: 1.4444444444;
    margin-top: 0.8125rem;
  }
}

.p-news-page-header {
  background: url(../images/pages/news/heading-bg-sp.jpg) center center/cover no-repeat;
}
@media screen and (min-width: 751px) {
  .p-news-page-header {
    background: url(../images/pages/news/heading-bg-pc.jpg) center center/cover no-repeat;
  }
}

.p-news-sort {
  margin-top: 8.625rem;
}
@media screen and (min-width: 751px) {
  .p-news-sort {
    margin-top: 8.125rem;
  }
}

.p-news-contents {
  margin-bottom: 12.5rem;
  margin-top: 6.25rem;
}
@media screen and (min-width: 751px) {
  .p-news-contents {
    margin-bottom: 10rem;
    margin-top: 3.75rem;
  }
}

.p-news-contents__pagination {
  margin-top: 5.3125rem;
}

.p-news-sort .c-sort__tags {
  margin-top: 5rem;
}
@media screen and (min-width: 751px) {
  .p-news-sort .c-sort__tags {
    margin-top: 2.5rem;
  }
}

.p-privacy {
  padding-bottom: 11.25rem;
}

.p-privacy-page-header {
  background: url(../images/pages/privacy/heading-bg-sp.jpg) center center/cover no-repeat;
}
@media screen and (min-width: 751px) {
  .p-privacy-page-header {
    background: url(../images/pages/privacy/heading-bg-pc.jpg) center center/cover no-repeat;
  }
}

.p-privacy-list {
  margin-top: 3.75rem;
}
@media screen and (min-width: 751px) {
  .p-privacy-list {
    margin-top: 2rem;
  }
}

.p-privacy-list__intro-title {
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__intro-title {
    font-size: 1.375rem;
    letter-spacing: 0.05em;
    line-height: 2;
  }
}

.p-privacy-list__intro-text {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 2.125rem;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__intro-text {
    font-size: 1rem;
    line-height: 2;
    margin-top: 3.125rem;
    margin-top: 1.3125rem;
  }
}

.p-privacy-list__items {
  margin-top: 6.25rem;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__items {
    margin-top: 2.625rem;
  }
}

.p-privacy-list__item + .p-privacy-list__item {
  margin-top: 6.625rem;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item + .p-privacy-list__item {
    margin-top: 3rem;
  }
}

.p-privacy-list__item-title {
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item-title {
    font-size: 1.375rem;
    line-height: 2;
  }
}

.p-privacy-list__item-contents {
  margin-top: 2rem;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item-contents {
    margin-top: 1.3125rem;
  }
}

.p-privacy-list__item-text {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item-text {
    font-size: 1rem;
    line-height: 2;
  }
}

.p-privacy-list__item-text + .p-privacy-list__item-sub-title {
  margin-top: 2rem;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item-text + .p-privacy-list__item-sub-title {
    margin-top: 1.3125rem;
  }
}

.p-privacy-list__item-text + .p-privacy-list__item-list {
  margin-top: 3rem;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item-text + .p-privacy-list__item-list {
    margin-top: 1.3125rem;
  }
}

.p-privacy-list__item-list {
  counter-reset: listnum;
  display: flex;
  flex-direction: column;
  gap: 1.5em;
  margin-top: 1.875rem;
  padding-left: 2em;
  text-indent: -2em;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item-list {
    gap: 0.5em;
    padding-left: 1.2em;
    text-indent: -1em;
  }
}

.p-privacy-list__item-list li {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.07em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item-list li {
    font-size: 1rem;
    letter-spacing: 0.05em;
    line-height: 2;
  }
}

.p-privacy-list__item-list li::before {
  content: counter(listnum) ". "; /* カウントした数に応じて番号を表示 */
  counter-increment: listnum; /* counter-resetと同じ文字列 */
}

.p-privacy-list__item-list li span {
  display: inline-block;
  width: 1.875rem;
}

.p-privacy-list__item-sub-title {
  font-size: 1.75rem;
  font-weight: 500;
  letter-spacing: 0.07em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item-sub-title {
    font-size: 1rem;
    line-height: 2;
  }
}

.p-privacy-list__item-sub-title + .p-privacy-list__item-list,
.p-privacy-list__item-sub-title + .p-privacy-list__item-text {
  margin-top: 1.875rem;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item-sub-title + .p-privacy-list__item-list,
  .p-privacy-list__item-sub-title + .p-privacy-list__item-text {
    margin-top: 0.3125rem;
  }
}

.p-privacy-list__item-list + .p-privacy-list__item-text {
  margin-top: 2rem;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item-list + .p-privacy-list__item-text {
    margin-top: 1.3125rem;
  }
}

.p-privacy-list__item-list + .p-privacy-list__item-sub-title {
  margin-top: 2.875rem;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item-list + .p-privacy-list__item-sub-title {
    margin-top: 1.3125rem;
  }
}

.p-privacy-list__item-text + .p-privacy-list__item-sub-title {
  margin-top: 2rem;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item-text + .p-privacy-list__item-sub-title {
    margin-top: 1.3125rem;
  }
}

.p-privacy-list__item-notes {
  display: flex;
  flex-direction: column;
  gap: 1.5em;
  margin-top: 1.75rem;
  padding-left: 2.2em;
  text-indent: -2.2em;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item-notes {
    gap: 0.5em;
    margin-top: 0.3125rem;
    padding-left: 1em;
    text-indent: -1em;
  }
}

.p-privacy-list__item-notes li {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-privacy-list__item-notes li {
    font-size: 1rem;
    line-height: 2;
  }
}

.p-sauna-page-header {
  background: url(../images/pages/sauna/heading-bg-sp.jpg) center center/cover no-repeat;
}
@media screen and (min-width: 751px) {
  .p-sauna-page-header {
    background: url(../images/pages/sauna/heading-bg-pc.jpg) center center/cover no-repeat;
  }
}

.p-sauna-about {
  margin-top: 10rem;
}
@media screen and (min-width: 751px) {
  .p-sauna-about {
    margin-top: 8.75rem;
  }
}

.p-sauna-about__title {
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
  word-break: keep-all;
}
@media screen and (min-width: 751px) {
  .p-sauna-about__title {
    font-size: 1.75rem;
    line-height: 2;
  }
}

.p-sauna-about__intro {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 3.75rem;
}
@media screen and (min-width: 751px) {
  .p-sauna-about__intro {
    font-size: 1rem;
    line-height: 2;
    margin-top: 1.25rem;
  }
}

.p-sauna-about__image {
  margin: 3.75rem auto 0;
}
@media screen and (min-width: 751px) {
  .p-sauna-about__image {
    margin: 6.25rem auto 0;
    width: 96%;
  }
}

.p-sauna-about__image img {
  -o-object-fit: contain;
  height: auto;
     object-fit: contain;
}

.p-sauna-service {
  margin-top: 10rem;
}

.p-sauna-service__title {
  align-items: initial;
  flex-direction: column;
}
@media screen and (min-width: 751px) {
  .p-sauna-service__title {
    align-items: center;
    flex-direction: initial;
  }
}

.p-sauna-service__items {
  margin-top: 3.125rem;
}

.p-sauna-service__notes {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.7916666667;
  margin-top: 6.25rem;
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (min-width: 751px) {
  .p-sauna-service__notes {
    font-size: 0.875rem;
    line-height: 1.5714285714;
    margin-top: 2.9375rem;
  }
}

.p-sauna-other {
  margin-top: 11.25rem;
}

.p-sauna-other__title {
  align-items: initial;
  flex-direction: column;
}
@media screen and (min-width: 751px) {
  .p-sauna-other__title {
    align-items: center;
    flex-direction: initial;
  }
}

.p-sauna-other__items {
  margin-top: 3.875rem;
}

.p-sauna-plan {
  margin-top: 9.75rem;
}
@media screen and (min-width: 751px) {
  .p-sauna-plan {
    margin-top: 8.75rem;
  }
}

.p-sauna-plan__inner {
  max-width: 70.625rem;
}

.p-sauna-plan__title {
  align-items: initial;
  flex-direction: column;
  margin: 0 auto;
  max-width: 53.125rem;
}
@media screen and (min-width: 751px) {
  .p-sauna-plan__title {
    align-items: center;
    flex-direction: row;
  }
}

.p-sauna-plan__tabs {
  margin-top: 5rem;
}
@media screen and (min-width: 751px) {
  .p-sauna-plan__tabs {
    margin-top: 3.75rem;
  }
}

.p-sauna-plan__item-title {
  height: 0;
  visibility: hidden;
}

.p-sauna-plan__item-name {
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-sauna-plan__item-name {
    font-size: 1.375rem;
    line-height: 2;
  }
}

.p-sauna-plan__contents {
  margin-top: 2.5rem;
}
@media screen and (min-width: 751px) {
  .p-sauna-plan__contents {
    margin-top: 3.375rem;
  }
}

.p-sauna-plan__tabs + .p-sauna-plan__tabs {
  margin-top: 7.5rem;
}

.p-sauna-plan__tabs-title {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  justify-content: center;
}
@media screen and (min-width: 751px) {
  .p-sauna-plan__tabs-title {
    gap: 0.4375rem;
  }
}

.p-sauna-plan__tabs-title-icon {
  height: 4.625rem;
  width: 4.875rem;
}
@media screen and (min-width: 751px) {
  .p-sauna-plan__tabs-title-icon {
    height: 2.375rem;
    width: 2.5rem;
  }
}

.p-sauna-plan__tabs-title-icon img {
  -o-object-fit: contain;
  height: 100%;
  max-width: 100%;
     object-fit: contain;
}

.p-sauna-plan__tabs-title-text {
  font-size: 2.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2.4;
}
@media screen and (min-width: 751px) {
  .p-sauna-plan__tabs-title-text {
    font-size: 1.375rem;
    line-height: 2.5454545455;
  }
}

.p-sauna-plan__tabs-title + .c-tab__menu {
  margin-top: 2.5rem;
}

.p-sauna-plan__item--01 .c-plan__intro-icons img,
.p-sauna-plan__item--02 .c-plan__intro-icons img {
  width: 55.4054054054%;
}
@media screen and (min-width: 751px) {
  .p-sauna-plan__item--01 .c-plan__intro-icons img,
  .p-sauna-plan__item--02 .c-plan__intro-icons img {
    max-width: 100%;
  }
}

.p-sitemap-title.c-page-title {
  background-image: url(../images/common/default-bg-title.jpg);
}

.p-sitemap {
  padding-bottom: 10rem;
}

.p-sitemap__boxes {
  background-color: #fff;
  display: flex;
  gap: 1.5em;
  justify-content: space-between;
  margin-top: 2.5rem;
  padding: 1.5625rem;
}
@media screen and (min-width: 751px) {
  .p-sitemap__boxes {
    flex-direction: row;
    gap: initial;
    margin-top: 5rem;
    padding: 3.75rem;
  }
}

.p-sitemap__box {
  width: 49%;
}
.p-sitemap__list-level01-item + .p-sitemap__list-level01-item {
  margin-top: 1.5em;
}

.p-sitemap__list-level01-item > a {
  color: #00a5c0;
  font-size: 1rem;
  font-weight: 500;
}
@media screen and (min-width: 751px) {
  .p-sitemap__list-level01-item > a {
    font-size: 1.125rem;
  }
}

.p-sitemap__list-level02 {
  margin-top: 0.5em;
}
@media screen and (min-width: 751px) {
  .p-sitemap__list-level02 {
    margin-top: 1em;
  }
}

.p-sitemap__list-level02-item + .p-sitemap__list-level02-item {
  margin-top: 0.5em;
}

.p-sitemap__list-level03 {
  margin-top: 0.5em;
  padding-left: 1.5em;
}

.p-sitemap__list-level03-item + .p-sitemap__list-level03-item {
  margin-top: 0.5em;
}

.p-sitemap__list-level02-item > a {
  font-size: 0.875rem;
}
@media screen and (min-width: 751px) {
  .p-sitemap__list-level02-item > a {
    font-size: 1rem;
  }
}

.p-sitemap__list-level03-item > a {
  font-size: 0.875rem;
}
@media screen and (min-width: 751px) {
  .p-sitemap__list-level03-item > a {
    font-size: 1rem;
  }
}

.p-sitemap__list-level02-item > a,
.p-sitemap__list-level03-item > a {
  display: flex;
  gap: 0.8em;
  position: relative;
}

.p-sitemap__list-level02-item > a:before,
.p-sitemap__list-level03-item > a:before {
  border-right: 0.125rem solid #a8a8a8;
  border-top: 0.125rem solid #a8a8a8;
  content: "";
  display: block;
  height: 0.6em;
  position: relative;
  top: 0.5em;
  transform: rotate(45deg);
  width: 0.6em;
}

.p-thanks-contents {
  margin-top: 3.75rem;
  padding-bottom: 10.5rem;
  text-align: center;
}
@media screen and (min-width: 751px) {
  .p-thanks-contents {
    margin-top: 2.25rem;
  }
}

.p-thanks-contents__title {
  font-size: 2.25rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-thanks-contents__title {
    font-size: 1.75rem;
    line-height: 2;
  }
}

.p-thanks-contents__text {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 4.125rem;
  text-align: left;
}
@media screen and (min-width: 751px) {
  .p-thanks-contents__text {
    font-size: 1rem;
    line-height: 2;
    margin-top: 1.75rem;
    text-align: center;
  }
}

.p-thanks-contents__link {
  margin-top: 5.375rem;
}
@media screen and (min-width: 751px) {
  .p-thanks-contents__link {
    margin-top: 3.125rem;
  }
}

.p-top-mv {
  background: url(../images/pages/top/mv-bg-sp.jpg) center center/cover no-repeat;
  opacity: 0;
}
@media screen and (min-width: 751px) {
  .p-top-mv {
    background: url(../images/pages/top/mv-bg-pc.jpg) center center/cover no-repeat;
  }
}

.p-top-mv__content {
  align-content: center;
  display: grid;
  height: 100svh;
  justify-content: center;
  place-content: center;
}

.p-top-mv__logo {
  margin: 0 auto;
  max-width: 31.25rem;
  opacity: 0;
  width: 100%;
}
@media screen and (min-width: 751px) {
  .p-top-mv__logo {
    margin-top: 2.375rem;
    max-width: 28.6875rem;
  }
}

.p-top-mv__intro {
  color: #ffffff;
  font-size: 2.125rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.4666666667;
  margin-top: 3.75rem;
  opacity: 0;
}
@media screen and (min-width: 751px) {
  .p-top-mv__intro {
    font-size: 1.875rem;
    line-height: 1.4666666667;
    margin-top: 6.25rem;
  }
}

.p-top-intro {
  overflow: hidden;
  padding: 11.375rem 0 18.875rem;
  position: relative;
}
@media screen and (min-width: 751px) {
  .p-top-intro {
    padding: 12.5rem 0 18.375rem;
  }
}

.p-top-intro::before {
  aspect-ratio: 750/441;
  background: url(../images/pages/top/intro-bg-sp.png) center center/cover no-repeat;
  bottom: 12%;
  content: "";
  height: auto;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: -1;
}
@media screen and (min-width: 751px) {
  .p-top-intro::before {
    aspect-ratio: 1440/306;
    background: url(../images/pages/top/intro-bg-pc.png) center center/cover no-repeat;
    bottom: 13%;
  }
}

.p-top-intro__title {
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 2;
  text-align: center;
  word-break: keep-all;
}
@media screen and (min-width: 751px) {
  .p-top-intro__title {
    font-size: 1.75rem;
    line-height: 1.7857142857;
  }
}

.p-top-intro__description {
  display: flex;
  flex-direction: column;
  gap: 2.8125rem;
  margin-top: 3.625rem;
}
@media screen and (min-width: 751px) {
  .p-top-intro__description {
    gap: 1.375rem;
    margin-top: 3.75rem;
    text-align: center;
  }
}

.p-top-intro__description p {
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media screen and (min-width: 751px) {
  .p-top-intro__description p {
    font-size: 1rem;
    line-height: 2;
  }
}

.p-top-yamasemi {
  background: url(../images/pages/top/yamaseki-bg-sp.jpg) center center/cover no-repeat;
  padding: 7.5rem 0;
}
@media screen and (min-width: 751px) {
  .p-top-yamasemi {
    background: url(../images/pages/top/yamaseki-bg-pc.jpg) center center/cover no-repeat;
    padding: 6.875rem 0;
  }
}

.p-top-yamasemi__content {
  align-items: center;
  display: grid;
}

.p-top-yamasemi__description {
  color: #ffffff;
  font-size: 1.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 2.75rem;
}
@media screen and (min-width: 751px) {
  .p-top-yamasemi__description {
    font-size: 1rem;
    line-height: 2;
    margin-top: 2.25rem;
  }
}

.p-top-yamasemi__link {
  margin-top: 5.25rem;
  text-align: center;
}
@media screen and (min-width: 751px) {
  .p-top-yamasemi__link {
    margin-top: 2.25rem;
    text-align: left;
    text-align: initial;
  }
}

.p-top-news {
  margin-top: 10rem;
}
@media screen and (min-width: 751px) {
  .p-top-news {
    margin-top: 7.8125rem;
  }
}

.p-top-news__title .c-section-title01__main {
  font-family: "Zen Maru Gothic", sans-serif;
}

.p-top-news__items {
  margin-top: 3.125rem;
}

.p-top-news__link {
  margin-top: 6.25rem;
  text-align: right;
}
@media screen and (min-width: 751px) {
  .p-top-news__link {
    margin-top: 3.75rem;
  }
}

.p-top-links {
  background-color: #e1f2f2;
  margin-top: 10rem;
  padding: 5rem 0;
}
@media screen and (min-width: 751px) {
  .p-top-links {
    margin-top: 6.875rem;
    padding: 6.25rem 0;
  }
}

.p-top-services {
  overflow: hidden;
  padding-bottom: 3.125rem;
}
@media screen and (min-width: 751px) {
  .p-top-services {
    padding-bottom: 18.75rem;
  }
}

.p-top-services__items {
  gap: 14.375rem;
  margin: 0 auto;
  max-width: 81.5rem;
  padding: 0 2.5rem;
}
@media screen and (min-width: 1441px) {
  .p-top-services__items {
    gap: clamp(
    14.375rem,
    -7.3214285714rem + 24.1071428571vw,
    31.25rem
  );
  }
}

.p-top-reservation {
  background-color: #00a5c0;
  padding: 6.25rem 0;
}
@media screen and (min-width: 751px) {
  .p-top-reservation {
    padding: 5.375rem 0;
  }
}

.p-top-reservation__inner {
  max-width: 53.125rem;
}

.p-top-reservation__title {
  flex-direction: column;
  gap: 0;
}

.p-top-reservation__title .c-section-title01__main {
  font-size: 3.125rem;
  letter-spacing: 0.07em;
}
@media screen and (min-width: 751px) {
  .p-top-reservation__title .c-section-title01__main {
    font-size: 2.5rem;
  }
}

.p-top-reservation__title .c-section-title01__sub {
  font-size: 1.75rem;
  line-height: 1.1428571429;
  margin-top: 1.25rem;
}
@media screen and (min-width: 751px) {
  .p-top-reservation__title .c-section-title01__sub {
    font-size: 1rem;
    line-height: 2;
    margin-top: 0rem;
  }
}

.p-top-reservation__form {
  background-color: #ffffff;
  border-radius: 1.25rem;
  margin-top: 3.75rem;
  padding: 3.125rem 2.5rem;
}
@media screen and (min-width: 751px) {
  .p-top-reservation__form {
    border-radius: 0.625rem;
    margin-top: 2.5rem;
    padding: 2.375rem;
  }
}

.p-top-reservation__notes {
  display: flex;
  flex-direction: column;
  gap: 0.9375rem;
  margin-top: 1.875rem;
}
@media screen and (min-width: 751px) {
  .p-top-reservation__notes {
    gap: 0.1875rem;
  }
}

.p-top-reservation__note-item {
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.07em;
  line-height: 1.7916666667;
  padding-left: 1em;
  text-indent: -1em;
}
@media screen and (min-width: 751px) {
  .p-top-reservation__note-item {
    font-size: 0.875rem;
    line-height: 1.7857142857;
  }
}

.p-top-reservation__note-item a {
  -webkit-text-decoration: underline;
  text-decoration: underline;
  text-indent: 0;
  text-indent: initial;
  transition: all 0.3s ease 0s;
}

@media (hover: hover) {
  .p-top-reservation__note-item a:hover {
    opacity: 0.7;
  }
}
.js-text span,
.js-text-main span,
.js-text-sub span {
  display: inline-block;
}

.u-align__center {
  text-align: center !important;
}

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

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

.u-color__initial {
  color: #000;
  color: initial;
}

.u-color__blue {
  color: #00beca;
}

.u-color__accent-01 {
  color: #00a5c0;
}

.u-display__none {
  display: none;
}

.u-display__pc-only {
  display: none;
}
@media screen and (min-width: 751px) {
  .u-display__pc-only {
    display: block;
  }
}

@media screen and (min-width: 751px) {
  .u-display__sp-only {
    display: none;
  }
}

.u-font__bold {
  font-weight: 700;
}

.u-font__normal {
  font-weight: 400;
}

.u-ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.u-indent--0 {
  padding-left: 0em;
  text-indent: 0em;
}

.u-indent--10 {
  padding-left: 1em;
  text-indent: -1em;
}

.u-indent--15 {
  padding-left: 1.5em;
  text-indent: -1.5em;
}

.u-indent--20 {
  padding-left: 2em;
  text-indent: -2em;
}

.u-indent--25 {
  padding-left: 2.5em;
  text-indent: -2.5em;
}

.u-indent--30 {
  padding-left: 3em;
  text-indent: -3em;
}

.u-indent--40 {
  padding-left: 4em;
  text-indent: -4em;
}

.u-indent--50 {
  padding-left: 5em;
  text-indent: -5em;
}

.u-margin__top-0 {
  margin-top: 0 !important;
}

.u-margin__top-1em {
  margin-top: 1em;
}

.u-margin__top-2em {
  margin-top: 2em;
}

.u-margin__top-3em {
  margin-top: 3em;
}




#customer_header {
  padding: 150px 0 0 0;
}

a:hover {
    text-decoration: none;
}

@media screen and (max-width: 600px) {
    #webc_con {
      padding: 100px 0 20px;
    }
}


/* Layout
========================================================================== */
/* Component
========================================================================== */
/* Project
========================================================================== */
/* Utility
========================================================================== */
/*# sourceMappingURL=style.css.map */