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

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

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role=list],
ol[role=list] {
  list-style: none;
}

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

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

/* 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,
picture {
  max-width: 100%;
  display: block;
}

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

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }
  *,
  *::before,
  *::after {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
:root {
  --zIndex: 100;
  --zIndex-fixedCta: calc(var(--zIndex) * 1);
  --zIndex-header: calc(var(--zIndex) * 2);
  --zIndex-cover: calc(var(--zIndex) * 4);
  --zIndex-menu: calc(var(--zIndex) * 5);
  --zIndex-logo: calc(var(--zIndex) * 6);
  --zIndex-menuBtn: calc(var(--zIndex) * 7);
  --zIndex-overlay: calc(var(--zIndex) * 8);
  --color-main: #C9401E;
  --color-accent: #F5BD45;
  --color-white: #fff;
  --color-black: #000;
  --color-text: #523F2E;
  --color-logo: #004EA2;
  --bg-body: #FFF1D2;
  --bg-body-secondary: #FFC343;
  --bg-body-tertiary: #C9401E;
  --fontFamily-base: "Noto Sans JP", sans-serif;
  --fontFamily-accent: "Noto Serif JP", serif;
  --lineHeight-base: 1.5;
  --lineHeight-tight: 1.2;
  --lineHeight-loose: 2;
  --fontSize-base: 1.8rem;
  --fontWeight-base: 400;
  --fontWeight-regular: 400;
  --fontWeight-medium: 500;
  --fontWeight-semiBold: 600;
  --fontWeight-bold: 700;
  --fontWeight-extrabold: 800;
  --fontColor-base: #523F2E;
}

/* base */
html {
  font-size: min(0.78125vw, 62.5%);
  scroll-behavior: smooth;
  scroll-padding-top: 8.4rem;
}
@media screen and (max-width: 768px) {
  html {
    scroll-padding-top: 7rem;
    font-size: 2.6666666667vw;
  }
}

body {
  font-family: var(--fontFamily-base);
  font-size: var(--fontSize-base);
  font-weight: var(--fontWeight-base);
  line-height: var(--lineHeight-base);
  color: var(--fontColor-base);
}

a {
  text-decoration: none;
}

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

ul, ol {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* l-body */
.l-body.noScroll {
  overflow: hidden;
}

/* l-header */
.l-header {
  height: 8.4rem;
  position: relative;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media screen and (max-width: 768px) {
  .l-header {
    height: 7rem;
    background-color: var(--color-white);
    -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
            box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  }
}
.l-header.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: var(--zIndex-header);
  background-color: rgba(255, 255, 255, 0.9);
}
.l-header__inner {
  height: 100%;
  padding: 0 7.6rem 0 1.6rem;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
}
.l-header__logo {
  width: 26.8rem;
  position: relative;
  z-index: var(--zIndex-logo);
}
@media screen and (max-width: 768px) {
  .l-header__logo {
    width: 20.8rem;
  }
}
.l-header__logo img {
  width: 100%;
}
.l-header__gnav {
  width: 50rem;
  height: 100%;
  overflow-y: scroll;
  position: fixed;
  top: 0;
  right: -120%;
  background-color: var(--color-white);
  z-index: var(--zIndex-menu);
  -webkit-transition: all 0.8s ease-in-out;
  transition: all 0.8s ease-in-out;
  padding-top: 7rem;
}
@media screen and (max-width: 768px) {
  .l-header__gnav {
    width: 100%;
    padding-top: 7rem;
  }
}
.l-header__gnav.menu_isOpen {
  right: 0;
}
.l-header__gnavInner {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.l-header__gnavBody {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-left: 6rem;
}
@media screen and (max-width: 768px) {
  .l-header__gnavBody {
    padding: 0 4rem;
  }
}
.l-header__contactNav {
  margin-top: 5.6rem;
}
@media screen and (max-width: 768px) {
  .l-header__contactNav {
    margin-top: 4.6rem;
  }
}
.l-header__ctaNav {
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .l-header__ctaNav {
    margin-top: 7rem;
  }
}
.l-header__ctaNav a {
  display: block;
}
.l-header__ctaNav a img {
  width: 100%;
}
.l-header__btn {
  position: absolute;
  top: 2rem;
  right: 2.8rem;
  z-index: var(--zIndex-menuBtn);
}
@media screen and (max-width: 768px) {
  .l-header__btn {
    top: 1.2rem;
    right: 1.6rem;
  }
}

/* l-footer */
.l-footer {
  background-color: var(--color-white);
}
@media screen and (max-width: 768px) {
  .l-footer {
    margin-bottom: 5rem;
  }
}
.l-footer__logo {
  max-width: 31.3rem;
  padding: 4rem 0 2.8rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .l-footer__logo {
    max-width: 24.1rem;
    padding: 2.4rem 0;
  }
}
.l-footer__logo img {
  width: 100%;
}
.l-footer__copy {
  font-size: 1.2rem;
  line-height: 2;
  font-weight: var(--fontWeight-medium);
  text-align: center;
  color: var(--color-white);
  background-color: var(--color-logo);
}

/* l-inner */
.l-inner {
  width: 114.8rem;
  max-width: 100%;
  padding: 0 1.6rem;
  margin: auto;
}
@media screen and (max-width: 768px) {
  .l-inner--spNoPadding {
    padding: 0;
  }
}

/* l-section */
.l-section {
  padding: 6.6rem 0 8rem;
}
@media screen and (max-width: 768px) {
  .l-section {
    padding: 3.2rem 0 4rem;
  }
}

/* c-site */
.c-site {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100vh;
  overflow-x: hidden;
}
.c-site__main {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

/* c-gnav*/
.c-gnav__item {
  position: relative;
  border-bottom: 1px dashed var(--color-black);
}
.c-gnav__link {
  display: block;
  font-family: var(--fontFamily-accent);
  font-size: 1.8rem;
  font-weight: var(--fontWeight-semiBold);
  color: var(--color-main);
  padding: 2rem 2.2rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .c-gnav__link {
    font-size: 1.6rem;
    padding: 1.6rem 0 1.6rem 2.2rem;
  }
}
.c-gnav__link::before {
  content: "";
  display: block;
  width: 0.7rem;
  height: 0.7rem;
  background-color: var(--color-main);
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 4rem;
}
@media screen and (max-width: 768px) {
  .c-gnav__link::before {
    width: 0.6rem;
    height: 0.6rem;
    top: 3.4rem;
  }
}
@media screen and (max-width: 768px) {
  .c-gnav__link::after {
    content: "";
    display: block;
    position: absolute;
    width: 1.2rem;
    height: 2.4rem;
    background: url(../../assets/images/i_arrow_menu.svg) center/contain no-repeat;
    right: 0;
    top: 50%;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
}
.c-gnav__link.active::after {
  -webkit-transform: translate(0, -100%) rotate(-90deg);
          transform: translate(0, -100%) rotate(-90deg);
}
.c-gnav__en {
  display: block;
  font-size: 1.2rem;
  font-weight: var(--fontWeight-semibold);
  color: var(--color-text);
}
@media screen and (max-width: 768px) {
  .c-gnav__en {
    font-size: 1rem;
  }
}
.c-gnav__subnav {
  padding-left: 6rem;
  padding-bottom: 1.6rem;
  display: none;
}
.c-gnav__subnav.open {
  display: block;
}
.c-gnav__subnavLink {
  display: block;
  font-size: 2.8rem;
  font-weight: var(--fontWeight-medium);
  color: var(--color-main);
  padding: 1.2rem 0;
}

/* c-btnMenu*/
.c-btnMenu {
  width: 4rem;
  height: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0;
  background-color: transparent;
  border: none;
}
@media screen and (max-width: 768px) {
  .c-btnMenu {
    width: 4.4rem;
    height: 4.4rem;
  }
}
.c-btnMenu span {
  display: inline-block;
  width: 87.5%;
  height: 2px;
  background-color: var(--color-text);
  border-radius: 5px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .c-btnMenu span {
    width: 68.1818181818%;
  }
}
.c-btnMenu span::before, .c-btnMenu span::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 2px;
  border-radius: 5px;
  background-color: var(--color-text);
  position: absolute;
  left: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.c-btnMenu span::before {
  top: 1rem;
}
@media screen and (max-width: 768px) {
  .c-btnMenu span::before {
    top: 0.8rem;
  }
}
.c-btnMenu span::after {
  top: -1rem;
}
@media screen and (max-width: 768px) {
  .c-btnMenu span::after {
    top: -0.8rem;
  }
}

/* btnMenu_isOnがついた時のスタイル */
.c-btnMenu.btnMenu_isOn span {
  background-color: transparent;
}
.c-btnMenu.btnMenu_isOn span::before, .c-btnMenu.btnMenu_isOn span::after {
  top: 0;
}
.c-btnMenu.btnMenu_isOn span::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.c-btnMenu.btnMenu_isOn span::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/* c-btn */
/* c-ctaList*/
.c-ctaList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2rem;
}
@media screen and (max-width: 768px) {
  .c-ctaList {
    gap: 0.5rem;
    padding: 0.5rem;
  }
}
.c-ctaList__item:nth-child(1) {
  width: 18rem;
}
@media screen and (max-width: 768px) {
  .c-ctaList__item:nth-child(1) {
    width: 30.5rem;
  }
}
.c-ctaList__item:nth-child(2) {
  width: 20rem;
}
@media screen and (max-width: 768px) {
  .c-ctaList__item:nth-child(2) {
    width: 30.5rem;
  }
}
.c-ctaList__item:nth-child(3) {
  width: 4rem;
}
@media screen and (max-width: 768px) {
  .c-ctaList__item:nth-child(3) {
    width: 7rem;
  }
}
.c-ctaList__link {
  color: var(--fontColor-base);
  font-size: 1.4rem;
  font-weight: var(--fontWeight-medium);
  text-align: center;
}
@media screen and (max-width: 768px) {
  .c-ctaList__link {
    font-size: 1.2rem;
  }
}
.c-ctaList__link--tel {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0.6rem;
  color: var(--color-main);
  border: 1px solid var(--bg-body-tertiary);
  padding: 0.6rem;
}
@media screen and (max-width: 768px) {
  .c-ctaList__link--tel {
    padding: 1rem 0.4rem;
    gap: 0.8rem;
  }
}
.c-ctaList__link--tel img {
  width: 1.6rem;
}
.c-ctaList__link--web {
  display: block;
  color: var(--color-white);
  border: 1px solid var(--bg-body-tertiary);
  background-color: var(--bg-body-tertiary);
  padding: 0.6rem;
}
@media screen and (max-width: 768px) {
  .c-ctaList__link--web {
    padding: 1rem 0.4rem;
  }
}
.c-ctaList__link--line {
  display: block;
}
.c-ctaList__link--line img {
  width: 100%;
}

/* c-fixedCta */
.c-fixedCta {
  width: 100%;
  background-color: var(--color-white);
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: var(--zIndex-fixedCta);
}

.c-overlay {
  display: none;
  background-color: rgba(0, 0, 0, 0.6);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: var(--zIndex-cover);
}
.c-overlay.isOpen {
  display: block;
}

/* c-contactNav */
.c-contactNav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.4rem;
}
@media screen and (max-width: 768px) {
  .c-contactNav {
    gap: 3rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.c-contactNav__link {
  display: block;
  font-size: 1.4rem;
  font-weight: var(--fontWeight-medium);
  line-height: 1.5;
  color: var(--fontColor-base);
}
.c-contactNav__link--tel {
  text-align: center;
  color: var(--bg-body-tertiary);
  padding-top: 1.1rem;
  position: relative;
  border: 1px solid;
  padding: 0.6rem 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
}
.c-contactNav__link--line {
  width: 4rem;
  height: 4rem;
}
.c-contactNav__link--line img {
  width: 100%;
}

/* c-subnav */
.c-subnav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 2.6rem;
}
@media screen and (max-width: 768px) {
  .c-subnav {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 1.6rem auto 0;
  }
}
.c-subnav__item:not(:first-child) {
  border-left: 1px solid var(--color-black);
  padding-left: 2rem;
  margin-left: 2rem;
}
@media screen and (max-width: 768px) {
  .c-subnav__item:not(:first-child) {
    padding-left: 0;
    margin-left: 0;
  }
}
.c-subnav__link {
  display: block;
  color: var(--fontColor-base);
  font-family: var(--fontFamily-accent);
  font-size: 1.6rem;
  font-weight: var(--fontWeight-semiBold);
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .c-subnav__link {
    font-size: 1.6rem;
    padding: 0 2rem;
  }
}

/* c-cta */
.c-cta__ttl {
  font-family: var(--fontFamily-accent);
  color: var(--color-text);
  font-size: 2rem;
  font-weight: var(--fontWeight-bold);
  line-height: 1;
  text-align: center;
  margin-bottom: 1.6rem;
}
@media screen and (max-width: 768px) {
  .c-cta__ttl {
    font-size: 1.6rem;
  }
}
.c-cta__ttl span {
  color: var(--bg-body-tertiary);
}
.c-cta__link {
  display: block;
  -webkit-box-shadow: 0 5px 15px 0 rgba(82, 63, 46, 0.25);
          box-shadow: 0 5px 15px 0 rgba(82, 63, 46, 0.25);
}
.c-cta__link img {
  width: 100%;
}

/* c-plan*/
.c-plan__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.c-plan__tabItem {
  text-align: center;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 33.33333%;
          flex: 0 0 33.33333%;
  background-color: #eee;
  padding: 10px 0;
  cursor: pointer;
}
.c-plan__tabItem.active {
  background-color: #7fcce3;
}
.c-plan__contentItem {
  display: none;
}
.c-plan__contentItem.show {
  display: block;
  -webkit-animation: fadeIn 0.5s ease;
          animation: fadeIn 0.5s ease;
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* c-reformMenu*/
.c-reformMenu__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .c-reformMenu__header {
    padding-left: 1.6rem;
    padding-right: 1.6rem;
  }
}
.c-reformMenu__num {
  color: var(--color-text);
  font-family: var(--fontFamily-accent);
  font-size: 8rem;
  font-weight: var(--fontWeight-semiBold);
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .c-reformMenu__num {
    font-size: 4rem;
  }
}
.c-reformMenu__ttl {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-family: var(--fontFamily-accent);
  font-size: 3.2rem;
  font-weight: var(--fontWeight-bold);
  padding-left: 3.5rem;
  padding-top: 1rem;
  margin-left: 3rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .c-reformMenu__ttl {
    font-size: 2.2rem;
    padding-top: 0;
    padding-left: 1.6rem;
    margin-left: 1.6rem;
  }
}
.c-reformMenu__ttl::before {
  content: "";
  display: block;
  width: 0.2rem;
  height: 5.8rem;
  background-color: var(--color-text);
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .c-reformMenu__ttl::before {
    height: 4rem;
  }
}
.c-reformMenu__tabArea {
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .c-reformMenu__tabArea {
    margin-top: 2rem;
  }
}
.c-reformMenu__tabList {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.c-reformMenu__tabList--3cols {
  grid-template-columns: repeat(3, 1fr);
}
.c-reformMenu__tabItem {
  border-right: 1px solid #F0F0EE;
}
.c-reformMenu__tabItem button {
  cursor: pointer;
  display: block;
  width: 100%;
  color: var(--bg-body-tertiary);
  font-family: var(--fontFamily-accent);
  font-size: 1.8rem;
  font-weight: var(--fontWeight-bold);
  text-align: center;
  background-color: var(--color-white);
  border: none;
  padding: 1.1rem;
  position: relative;
  margin-bottom: 1.2rem;
}
@media screen and (max-width: 768px) {
  .c-reformMenu__tabItem button {
    min-height: 5rem;
    font-size: 1.2rem;
    line-height: 1.2;
    padding: 0;
  }
}
@media screen and (max-width: 768px) {
  .c-reformMenu__tabItem button .sm {
    font-size: 1rem;
    letter-spacing: -0.17em;
  }
}
@media screen and (max-width: 768px) {
  .c-reformMenu__tabItem button .md {
    font-size: 1.1rem;
  }
}
.c-reformMenu__tabItem.active button {
  background-color: var(--bg-body-tertiary);
  color: var(--color-white);
}
.c-reformMenu__tabItem.active button::before {
  content: "";
  display: block;
  width: 2.2rem;
  height: 1.2rem;
  background: url(../../assets/images/menu_tab_arrow.svg) no-repeat center top/contain;
  position: absolute;
  bottom: -1.1rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .c-reformMenu__tabItem.active button::before {
    width: 1.6rem;
    height: 1.2rem;
  }
}
.c-reformMenu__contents {
  margin-top: 0.8rem;
  background-color: var(--color-white);
  padding: 4rem;
  -webkit-box-shadow: 0 5px 15px 0 rgba(82, 63, 46, 0.25);
          box-shadow: 0 5px 15px 0 rgba(82, 63, 46, 0.25);
}
@media screen and (max-width: 768px) {
  .c-reformMenu__contents {
    padding: 2rem;
    margin: 0.8rem 1.6rem 0;
  }
}
.c-reformMenu__contentItem {
  display: none;
  position: relative;
}
.c-reformMenu__contentItem.show {
  display: block;
  -webkit-animation: fadeIn 0.5s ease;
          animation: fadeIn 0.5s ease;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* c-reformContent01*/
.c-reformContent01__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6.4rem;
}
@media screen and (max-width: 768px) {
  .c-reformContent01__list {
    grid-template-columns: repeat(1, 1fr);
    gap: 3.2rem;
  }
}
.c-reformContent01__list--1col {
  grid-template-columns: repeat(1, 1fr);
}
.c-reformContent01__item img {
  width: 100%;
  height: auto;
}

/* c-reformContent02*/
.c-reformContent02 {
  font-family: var(--fontFamily-accent);
  font-weight: var(--fontWeight-bold);
}
.c-reformContent02__ttl {
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .c-reformContent02__ttl {
    font-size: 2rem;
  }
}
.c-reformContent02__ttl span {
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .c-reformContent02__ttl span {
    display: block;
    margin-top: 0.6rem;
  }
}
.c-reformContent02__tagList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.8rem;
  margin-top: 2rem;
}
.c-reformContent02__tagItem {
  font-size: 1.4rem;
  line-height: 1.2;
  padding: 0.4rem 0.8rem;
  border: 1px solid;
}
.c-reformContent02__spec {
  font-size: 1.2rem;
  line-height: 1.4;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .c-reformContent02__spec {
    margin-top: 1rem;
  }
}
.c-reformContent02__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 3.2rem 2.4rem;
  margin-top: 3.2rem;
}
@media screen and (max-width: 768px) {
  .c-reformContent02__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 2rem 0.6rem;
  }
}
@media screen and (max-width: 768px) {
  .c-reformContent02__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 1.2rem;
  }
}
@media screen and (max-width: 768px) {
  .c-reformContent02__item--small {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.2rem;
    width: calc(50% - 0.6rem);
  }
}
.c-reformContent02__itemBody {
  margin-top: 1.2rem;
}
@media screen and (max-width: 768px) {
  .c-reformContent02__itemBody {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-top: 0;
  }
}
@media screen and (max-width: 768px) {
  .c-reformContent02__imgArea {
    width: 14.6rem;
  }
}
.c-reformContent02__imgArea img {
  width: 100%;
}
.c-reformContent02__itemTtl {
  font-size: 1.6rem;
  line-height: 1.3;
}
.c-reformContent02__itemTxt {
  font-size: 1.4rem;
  line-height: 1.6;
  margin-top: 0.8rem;
}
@media screen and (max-width: 768px) {
  .c-reformContent02__itemTxt {
    font-size: 1.3rem;
  }
}

/* c-reformContent03*/
.c-reformContent03__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6.4rem;
}
@media screen and (max-width: 768px) {
  .c-reformContent03__list {
    grid-template-columns: repeat(1, 1fr);
    gap: 3.2rem;
  }
}
.c-reformContent03__list--1col {
  grid-template-columns: repeat(1, 1fr);
}
.c-reformContent03__item img {
  width: 100%;
  height: auto;
}

/* c-reformContent04*/
.c-reformContent04__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 6.4rem;
}
@media screen and (max-width: 768px) {
  .c-reformContent04__list {
    grid-template-columns: repeat(1, 1fr);
    gap: 3.2rem;
  }
}

/* c-reformContent04*/
.c-reformContent05__imgArea {
  max-width: 49.8rem;
  margin: 0 auto 4rem;
}
@media screen and (max-width: 768px) {
  .c-reformContent05__imgArea {
    margin-bottom: 1.4rem;
  }
}
.c-reformContent05__tableArea {
  overflow-x: auto;
}
@media screen and (max-width: 768px) {
  .c-reformContent05__tableWrap {
    width: 68rem;
  }
}

/* c-boxToggle*/
.c-boxToggle {
  background-color: var(--color-white);
  overflow: hidden;
  -webkit-box-shadow: 0 5px 15px 0 rgba(82, 63, 46, 0.25);
          box-shadow: 0 5px 15px 0 rgba(82, 63, 46, 0.25);
}
.c-boxToggle__trigger {
  cursor: pointer;
  font-family: var(--fontFamily-accent);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.2rem;
  padding: 1.6rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .c-boxToggle__trigger {
    padding: 1.5rem 4rem 1.5rem 2rem;
    gap: 2rem;
  }
}
.c-boxToggle__ttl {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.8rem;
  font-weight: var(--fontWeight-bold);
  position: relative;
}
@media screen and (max-width: 768px) {
  .c-boxToggle__ttl {
    font-size: 1.6rem;
  }
}
.c-boxToggle__ttl::before {
  content: "";
  display: block;
  width: 1px;
  height: 6rem;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.c-boxToggle__cross {
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 50%;
  position: absolute;
  right: 3.4rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .c-boxToggle__cross {
    width: 2.4rem;
    height: 2.4rem;
    right: 1.6rem;
  }
}
.c-boxToggle__cross::before, .c-boxToggle__cross::after {
  content: "";
  width: 1.9rem;
  height: 2px;
  background-color: var(--color-black);
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.c-boxToggle__cross::after {
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg);
}
.c-boxToggle__icon {
  width: 4rem;
  height: 4rem;
}
.c-boxToggle__icon img {
  width: 100%;
}
.c-boxToggle__content {
  font-size: 1.6rem;
  font-weight: var(--fontWeight-medium);
  background-color: #F5F5F5;
  line-height: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.2rem;
  padding: 0 1.6rem;
}
@media screen and (max-width: 768px) {
  .c-boxToggle__content {
    font-size: 1.4rem;
    line-height: 1.6;
    padding: 0 2rem;
    gap: 2rem;
  }
}
.c-boxToggle__content .c-boxToggle__icon {
  color: var(--color-white);
}
.c-boxToggle__contentTxt {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.c-boxToggle__contentTxt a {
  color: var(--color-text);
  text-decoration: underline;
}
.c-boxToggle__contentTxt .sm {
  font-size: 1.2rem;
}
.c-boxToggle.is-active .c-boxToggle__trigger .c-boxToggle__cross::after {
  background-color: transparent;
}
.c-boxToggle.is-active .c-boxToggle__content {
  padding: 2.4rem 1.6rem;
  line-height: 1.6;
  height: auto;
  opacity: 1;
}
@media screen and (max-width: 768px) {
  .c-boxToggle.is-active .c-boxToggle__content {
    padding: 3rem 2rem;
  }
}

/* p-mv */
.p-mv {
  position: relative;
}
.p-mv__img img {
  width: 100%;
}
.p-mv__bottom {
  padding: 2.4rem 0;
  background-color: var(--bg-body-secondary);
}
@media screen and (max-width: 768px) {
  .p-mv__bottom {
    padding: 1rem 0;
  }
}
.p-mv__bottomInner {
  max-width: 83.2rem;
  padding: 0 1.6rem;
  margin: 0 auto;
}
.p-mv__date {
  max-width: 52.6rem;
  margin: 0 0 0 auto;
}
@media screen and (max-width: 768px) {
  .p-mv__date {
    max-width: 18.4rem;
  }
}
.p-mv__date img {
  width: 100%;
}
.p-mv__memo {
  width: 37.2rem;
  position: absolute;
  bottom: -6rem;
  left: calc(50% - 51.6rem);
}
@media screen and (max-width: 768px) {
  .p-mv__memo {
    max-width: 18rem;
    left: 0;
    bottom: -2rem;
  }
}
.p-mv__memo img {
  width: 100%;
}

/* p-campaign */
.p-campaign {
  background-color: var(--bg-body);
}
.p-campaign img {
  width: 100%;
}
.p-campaign__ttl {
  max-width: 66.1rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .p-campaign__ttl {
    max-width: 28rem;
  }
}
.p-campaign__body {
  margin-top: 6rem;
}
@media screen and (max-width: 768px) {
  .p-campaign__body {
    margin-top: 3.2rem;
  }
}
.p-campaign__main p {
  font-size: 1.4rem;
  font-weight: var(--fontWeight-medium);
  text-align: right;
  padding-right: 1.6rem;
  margin-top: -1rem;
}
@media screen and (max-width: 768px) {
  .p-campaign__main p {
    font-size: 1.2rem;
    text-align: center;
    padding-right: 0;
    margin-top: initial;
  }
}
.p-campaign__main p a {
  color: var(--color-text);
  text-decoration: underline;
}
.p-campaign__add {
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .p-campaign__add {
    margin-top: 4rem;
  }
}
.p-campaign__add p {
  font-size: 1.4rem;
  font-weight: var(--fontWeight-medium);
  line-height: 1.7;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .p-campaign__add p {
    font-size: 1.2rem;
    text-align: left;
  }
}

/* p-menu */
.p-menu {
  background: url(../../assets/images/menu_bg.jpg) repeat top left/cover;
}
.p-menu__ttl {
  max-width: 61.9rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .p-menu__ttl {
    max-width: 24.9rem;
  }
}
.p-menu__ttl img {
  width: 100%;
}
.p-menu__lead {
  font-family: var(--fontFamily-accent);
  font-size: 1.7rem;
  font-weight: var(--fontWeight-bold);
  line-height: 1.7;
  text-align: center;
  margin-top: 4rem;
}
@media screen and (max-width: 768px) {
  .p-menu__lead {
    font-size: 1.4rem;
    margin-top: 2rem;
  }
}
.p-menu__anchorArea {
  margin-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  .p-menu__anchorArea {
    margin-top: 4rem;
    padding: 0 1.6rem;
  }
}
.p-menu__anchorList {
  max-width: 98rem;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}
@media screen and (max-width: 768px) {
  .p-menu__anchorList {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.6rem;
  }
}
.p-menu__anchorLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 2rem;
  font-family: var(--fontFamily-accent);
  font-weight: var(--fontWeight-extrabold);
  color: #fff;
  background-color: #C9401E;
  padding: 1.4rem 0.7rem 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-box-shadow: 4px 4px 10px 0 rgba(82, 63, 46, 0.25);
          box-shadow: 4px 4px 10px 0 rgba(82, 63, 46, 0.25);
}
@media screen and (max-width: 768px) {
  .p-menu__anchorLink {
    font-size: 1.6rem;
    text-align: center;
    line-height: 1;
    padding-top: 0.7rem;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.p-menu__anchorLink:hover {
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transform: translateY(0.2rem);
          transform: translateY(0.2rem);
}
.p-menu__anchorLink--plan {
  color: var(--color-text);
  background-color: #FFB415;
}
.p-menu__anchorLink--plan .p-menu__anchorTxt {
  position: relative;
  padding-left: 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-menu__anchorLink--plan .p-menu__anchorTxt {
    padding-left: 0;
  }
}
.p-menu__anchorLink--plan .p-menu__anchorTxt::before {
  content: "";
  width: 1.8rem;
  height: 1.8rem;
  background: url(../../assets/images/icon_matomewari.svg) no-repeat center center/contain;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
}
@media screen and (max-width: 768px) {
  .p-menu__anchorLink--plan .p-menu__anchorTxt::before {
    display: none;
  }
}
.p-menu__anchorLink--plan .p-menu__anchorIcon svg path {
  fill: var(--bg-body-tertiary);
}
.p-menu__body {
  margin-top: 6.4rem;
}
.p-menu__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6.4rem;
}
@media screen and (max-width: 768px) {
  .p-menu__list {
    gap: 4rem;
  }
}
.p-menu__note {
  font-size: 1.4rem;
  font-weight: var(--fontWeight-medium);
  line-height: 1.7;
  text-align: center;
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-menu__note {
    font-size: 1.2rem;
    text-align: left;
    padding: 0 1.6rem;
    margin-top: 1.6rem;
  }
}

/* p-plan */
.p-plan {
  background-color: var(--bg-body);
  position: relative;
  z-index: 2;
}
.p-plan__img {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.p-plan__img img {
  width: 100%;
}
.p-plan__img01 {
  max-width: 14.7rem;
  top: -2.6rem;
  left: calc(50% - 50rem);
}
@media screen and (max-width: 768px) {
  .p-plan__img01 {
    max-width: 7.8rem;
    left: -0.3rem;
    top: -2.4rem;
  }
}
.p-plan__img02 {
  max-width: 15.2rem;
  top: 18.6rem;
  left: calc(50% + 42rem);
}
@media screen and (max-width: 768px) {
  .p-plan__img02 {
    max-width: 8.9rem;
    left: auto;
    right: -1.8rem;
    top: 18.4rem;
  }
}
.p-plan__ttl {
  max-width: 57.3rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .p-plan__ttl {
    max-width: 33.4rem;
  }
}
.p-plan__ttl img {
  width: 100%;
}
.p-plan__lead {
  font-family: var(--fontFamily-accent);
  font-size: 2.4rem;
  font-weight: var(--fontWeight-bold);
  line-height: 1.7;
  text-align: center;
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  .p-plan__lead {
    font-size: 1.8rem;
    margin-top: 2rem;
  }
}
.p-plan__leadLine {
  text-decoration-line: underline;
  text-decoration-style: dotted;
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
  text-decoration-color: #523F2E;
  text-decoration-thickness: 15%;
  text-underline-offset: 24%;
  text-underline-position: from-font;
}
@media screen and (max-width: 768px) {
  .p-plan__leadLine {
    text-decoration-thickness: 10%;
    text-underline-offset: 34%;
  }
}
.p-plan__list {
  margin-top: 6.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4rem;
}
@media screen and (max-width: 768px) {
  .p-plan__list {
    margin-top: 5.6rem;
  }
}
.p-plan__item {
  -webkit-box-shadow: 0 5px 15px 0 rgba(82, 63, 46, 0.25);
          box-shadow: 0 5px 15px 0 rgba(82, 63, 46, 0.25);
}
.p-plan__item img {
  width: 100%;
}
.p-plan__note {
  font-size: 1.4rem;
  font-weight: var(--fontWeight-medium);
  line-height: 1.7;
  text-align: center;
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-plan__note {
    font-size: 1.2rem;
    text-align: left;
    margin-top: 1.6rem;
  }
}

/* p-gallery */
.p-gallery__ttl {
  max-width: 57.3rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .p-gallery__ttl {
    max-width: 33.4rem;
  }
}
.p-gallery__swiperArea {
  margin: 6.4rem auto 0;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-gallery__swiperArea {
    margin-top: 4rem;
  }
}
.p-gallery__swiperArea .swiper-button-prev,
.p-gallery__swiperArea .swiper-button-next {
  width: 5.6rem;
  height: 5.6rem;
  top: calc(50% - 10rem);
}
@media screen and (max-width: 768px) {
  .p-gallery__swiperArea .swiper-button-prev,
  .p-gallery__swiperArea .swiper-button-next {
    width: 2.4rem;
    height: 2.4rem;
    top: calc(50% - 1.6rem);
  }
}
.p-gallery__swiperArea .swiper-button-prev::after,
.p-gallery__swiperArea .swiper-button-next::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: red;
}
.p-gallery__swiperArea .swiper-button-prev {
  left: 0;
  right: auto;
}
@media screen and (max-width: 768px) {
  .p-gallery__swiperArea .swiper-button-prev {
    left: 0.6rem;
  }
}
.p-gallery__swiperArea .swiper-button-prev::after {
  background: url(../../assets/images/i_arrow_l.png) center/contain no-repeat;
}
.p-gallery__swiperArea .swiper-button-next {
  right: 0;
  left: auto;
}
@media screen and (max-width: 768px) {
  .p-gallery__swiperArea .swiper-button-next {
    right: 0.6rem;
  }
}
.p-gallery__swiperArea .swiper-button-next::after {
  background: url(../../assets/images/i_arrow_r.png) center/contain no-repeat;
}
.p-gallery__swiper {
  max-width: 92.4rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .p-gallery__swiper {
    max-width: 30.4rem;
  }
}
.p-gallery__swiper .swiper-slide {
  aspect-ratio: 924/554;
}
.p-gallery__swiper .swiper-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-gallery__swiperThumb {
  max-width: 92.4rem;
  margin: 1rem auto 0;
}
.p-gallery__swiperThumb .swiper-slide {
  aspect-ratio: 146/88;
}
.p-gallery__swiperThumb .swiper-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-gallery__note {
  font-size: 1.4rem;
  font-weight: var(--fontWeight-medium);
  line-height: 1.7;
  text-align: center;
  margin-top: 1rem;
}
@media screen and (max-width: 768px) {
  .p-gallery__note {
    font-size: 1.2rem;
    margin-top: 1rem;
  }
}
.p-gallery__ctaArea {
  max-width: 72rem;
  margin: 6.6rem auto 0;
}
@media screen and (max-width: 768px) {
  .p-gallery__ctaArea {
    max-width: 34.3rem;
    margin-top: 5.6rem;
  }
}

/* p-showroom */
.p-showroom {
  padding: 4rem 0 8rem;
  background-color: #ffe9bb;
}
@media screen and (max-width: 768px) {
  .p-showroom {
    padding: 4rem 0;
  }
}
.p-showroom__ban img {
  width: 100%;
}
.p-showroom__ctaArea {
  max-width: 72rem;
  margin: 4.4rem auto 0;
}
@media screen and (max-width: 768px) {
  .p-showroom__ctaArea {
    max-width: 34.3rem;
    margin-top: 4rem;
  }
}

/* p-solution */
.p-solution {
  background-color: var(--bg-body);
}
.p-solution__ttl {
  max-width: 72rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .p-solution__ttl {
    max-width: 34.3rem;
  }
}
.p-solution__ttl img {
  width: 100%;
}
.p-solution__body {
  margin-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  .p-solution__body {
    margin-top: 4rem;
  }
}
.p-solution__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 768px) {
  .p-solution__list {
    grid-template-columns: repeat(1, 1fr);
  }
}
.p-solution__list img {
  width: 100%;
}
.p-solution__ctaArea {
  max-width: 72rem;
  margin: 8.4rem auto 0;
}
@media screen and (max-width: 768px) {
  .p-solution__ctaArea {
    max-width: 34.3rem;
    margin-top: 4rem;
  }
}

/* p-voice */
.p-voice {
  padding-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  .p-voice {
    padding-top: 4rem;
  }
}
.p-voice__ttl {
  max-width: 33.6rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .p-voice__ttl {
    max-width: 19.6rem;
  }
}
.p-voice__ttl img {
  width: 100%;
}
.p-voice__body {
  margin-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  .p-voice__body {
    margin-top: 2.4rem;
  }
}
.p-voice__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 768px) {
  .p-voice__list {
    grid-template-columns: repeat(1, 1fr);
  }
}
.p-voice__list img {
  width: 100%;
}
.p-voice__note {
  font-size: 1.4rem;
  font-weight: var(--fontWeight-medium);
  line-height: 1.7;
  text-align: right;
  margin-top: 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-voice__note {
    font-size: 1.2rem;
    margin-top: 1.6rem;
    text-align: left;
  }
}
.p-voice__comment {
  margin-top: 6.4rem;
}
@media screen and (max-width: 768px) {
  .p-voice__comment {
    margin-top: 4rem;
  }
}
.p-voice__commentList {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.4rem;
}
@media screen and (max-width: 768px) {
  .p-voice__commentList {
    grid-template-columns: repeat(1, 1fr);
  }
}
.p-voice__commentList img {
  width: 100%;
}
.p-voice__commentItem {
  -webkit-box-shadow: 0 5px 15px 0 rgba(82, 63, 46, 0.25);
          box-shadow: 0 5px 15px 0 rgba(82, 63, 46, 0.25);
}

/* p-faq */
.p-faq {
  background-color: #ffe9bb;
}
.p-faq__ttl {
  max-width: 28.8rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .p-faq__ttl {
    max-width: 16.8rem;
  }
}
.p-faq__body {
  margin-top: 6rem;
}
@media screen and (max-width: 768px) {
  .p-faq__body {
    margin-top: 4rem;
  }
}
.p-faq__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
}
@media screen and (max-width: 768px) {
  .p-faq__list {
    gap: 1.6rem;
  }
}

/* p-shop */
.p-shop {
  font-family: var(--fontFamily-accent);
  background-color: #FFF1D2;
}
.p-shop__h2ttl {
  max-width: 19.2rem;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .p-shop__h2ttl {
    max-width: 11.2rem;
  }
}
.p-shop__h2ttl img {
  width: 100%;
}
.p-shop__body {
  padding: 6.4rem 4rem 3rem;
  background-color: var(--color-white);
  margin-top: 6rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-shop__body {
    padding: 3.2rem 2.4rem;
    margin-top: 4rem;
  }
}
.p-shop__list {
  max-width: 90rem;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem 0;
}
@media screen and (max-width: 768px) {
  .p-shop__list {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
.p-shop__item {
  border-bottom: 1px solid;
  padding-bottom: 4.2rem;
}
@media screen and (max-width: 768px) {
  .p-shop__item {
    padding-bottom: 2.2rem;
  }
}
.p-shop__item:last-child {
  border-bottom: none;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-shop__item:last-child {
    border-bottom: 1px solid;
  }
}
.p-shop__item:last-child::before {
  content: "";
  display: block;
  width: 1px;
  height: calc(100% - 3.8rem);
  border-left: 1px solid;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 768px) {
  .p-shop__item:last-child::before {
    border-left: none;
  }
}
.p-shop__item:nth-of-type(2n) {
  padding-left: 2.6rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-shop__item:nth-of-type(2n) {
    padding-left: 0;
  }
}
.p-shop__item:nth-of-type(2n)::before {
  content: "";
  display: block;
  width: 1px;
  height: calc(100% - 3.8rem);
  border-left: 1px solid;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 768px) {
  .p-shop__item:nth-of-type(2n)::before {
    border-left: none;
  }
}
.p-shop__item:nth-of-type(2n)::after {
  content: "";
  display: block;
  width: 7.6rem;
  height: 7.6rem;
  background-color: var(--color-white);
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transform: translate(-50%, 50%);
          transform: translate(-50%, 50%);
}
@media screen and (max-width: 768px) {
  .p-shop__item:nth-of-type(2n)::after {
    display: none;
  }
}
.p-shop__ttl {
  font-size: 2.4rem;
  font-weight: var(--fontWeight-bold);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
}
@media screen and (max-width: 768px) {
  .p-shop__ttl {
    gap: 1.2rem;
  }
}
.p-shop__ttl::before {
  content: "";
  display: block;
  width: 2.4rem;
  height: 2.1rem;
  background: url(../../assets/images/i_shop.svg) no-repeat center center/contain;
}
@media screen and (max-width: 768px) {
  .p-shop__ttl::before {
    width: 2.1rem;
    height: 2.4rem;
  }
}
.p-shop__ttl::before img {
  width: 100%;
}
.p-shop__txt {
  font-size: 1.6rem;
  font-weight: var(--fontWeight-bold);
  line-height: 1.5;
  margin-top: 1rem;
}
.p-shop__opening {
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: var(--fontWeight-bold);
  margin-top: 1.2rem;
}
.p-shop__tel {
  display: block;
  font-family: var(--fontFamily-poppins);
  color: var(--color-text);
  font-size: 3rem;
  line-height: 1;
  font-weight: var(--fontWeight-semiBold);
  margin-top: 1.8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  pointer-events: none;
}
@media screen and (max-width: 768px) {
  .p-shop__tel {
    max-width: 22.8rem;
    pointer-events: initial;
    gap: 0.4rem;
    font-size: 2.1rem;
    border-radius: 99px;
    color: var(--color-white);
    background-color: #0F0E6B;
    padding: 0.7rem 1.2rem 0.7rem 5rem;
    position: relative;
    margin: 1.2rem 0 0 0;
  }
}
.p-shop__tel::before {
  content: "";
  display: block;
  width: 4rem;
  height: 3.2rem;
  background: url(../../assets/images/i_tel.png) no-repeat center center/contain;
}
@media screen and (max-width: 768px) {
  .p-shop__tel::before {
    width: 2rem;
    height: 1.6rem;
    background-image: url(../../assets/images/i_tel_sp.png);
  }
}
.p-shop__tel::after {
  content: "";
  width: 2rem;
  height: 2rem;
  position: absolute;
  top: 50%;
  left: 1.2rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url(../../assets/images/i_phone.png) no-repeat center center/contain;
  display: none;
}
@media screen and (max-width: 768px) {
  .p-shop__tel::after {
    display: block;
  }
}
.p-shop__imgArea {
  width: 41.1rem;
  position: absolute;
  bottom: 6.6rem;
  right: 11rem;
}
@media screen and (max-width: 768px) {
  .p-shop__imgArea {
    width: 29.5rem;
    position: initial;
    margin: 2rem auto 0;
  }
}

/* u-align */
.u-align--center {
  text-align: center !important;
}
.u-align--right {
  text-align: right !important;
}

/* u-txt */
/* u-display */
.u-display--pcNone {
  display: none !important;
}
@media screen and (max-width: 768px) {
  .u-display--pcNone {
    display: block !important;
  }
}
@media screen and (max-width: 768px) {
  .u-display--spNone {
    display: none !important;
  }
}
.u-display--inlineBlock {
  display: inline-block;
}