@charset "UTF-8";
.l-container {
  min-width: var(--min-device-width);
}

.l-section {
  --l-section-inner-width-default: var(--site-width);
  --l-section-space-inline-default: var(--space-inline);
  --l-section-space-inline: var(--l-section-space-inline-override, var(--l-section-space-inline-default));
  --l-section-inner-width: var(--l-section-inner-width-override, var(--l-section-inner-width-default));
  --l-section-outer: max(0px, calc((var(--vw100) - var(--l-section-inner-width)) / 2));
  --l-section-gutter: max(var(--l-section-outer), var(--l-section-space-inline));
}
.l-section:where(._gutter) {
  padding-inline: var(--l-section-space-inline);
}
.l-section__inner {
  width: 100%;
  max-width: var(--l-section-inner-width);
  margin-inline: auto;
  background-clip: content-box;
}
.l-section__inner:where(._gutter) {
  max-width: calc( 						var(--l-section-inner-width) + 						(var(--l-section-space-inline) * 2) 					);
  padding-inline: var(--l-section-space-inline);
}
.l-section__inner:where(._gutter-tight) {
  max-width: calc( 						1000px + (var(--l-section-space-inline) * 2) 					);
  padding-inline: var(--l-section-space-inline);
}
.l-section__full {
  margin-inline: calc(var(--l-section-gutter) * -1);
}

.l-row-gap {
  --l-row-gap-default: 60px;
  --l-row-gap: var(--l-row-gap-override, var(--l-row-gap-default));
  display: flex;
  flex-direction: column;
  row-gap: var(--l-row-gap);
}

.l-spacer._section {
  height: var(--space-block-section);
}
.l-spacer._xxl {
  height: var(--space-block-xxl);
}
.l-spacer._xl {
  height: var(--space-block-xl);
}
.l-spacer._lg {
  height: var(--space-block-lg);
}
.l-spacer._md {
  height: var(--space-block-md);
}
.l-spacer._sm {
  height: var(--space-block-sm);
}
.l-spacer._xs {
  height: var(--space-block-xs);
}
.l-spacer._section-trim {
  height: var(--space-block-section-trim);
}
.l-spacer._xxl-trim {
  height: var(--space-block-xxl-trim);
}
.l-spacer._xl-trim {
  height: var(--space-block-xl-trim);
}
.l-spacer._lg-trim {
  height: var(--space-block-lg-trim);
}
.l-spacer._md-trim {
  height: var(--space-block-md-trim);
}
.l-spacer._sm-trim {
  height: var(--space-block-sm-trim);
}
.l-spacer._xs-trim {
  height: var(--space-block-xs-trim);
}

.mw_confirm-show {
  display: none;
}

body:has(.mw_wp_form.mw_wp_form_confirm) .mw_confirm-hidden {
  display: none;
}
body:has(.mw_wp_form.mw_wp_form_confirm) .mw_confirm-show {
  display: revert;
}

/* pagenavi */
.wp-pagenavi {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: var(--space-block-sm);
  margin-block-start: var(--space-block-lg);
}
.wp-pagenavi a,
.wp-pagenavi span {
  display: block;
  text-decoration: none;
  transition: var(--sec);
}
.wp-pagenavi a {
  display: block;
  transition: opacity var(--sec);
}
.wp-pagenavi a:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .wp-pagenavi a:hover {
    opacity: var(--opacity);
  }
}
.wp-pagenavi .first {
  order: 1;
  width: 50px;
  height: 50px;
}
.wp-pagenavi .first::before {
  content: "";
  display: inline-block;
  background: url(../img/voices/pagearrow2.png) no-repeat top left;
  background-size: contain;
  rotate: 180deg;
  width: 100%;
  height: 100%;
}
.wp-pagenavi .previouspostslink {
  order: 2;
  width: 50px;
  height: 50px;
}
.wp-pagenavi .previouspostslink::before {
  content: "";
  display: inline-block;
  background: url(../img/voices/pagearrow.png) no-repeat top left;
  background-size: contain;
  rotate: 180deg;
  width: 100%;
  height: 100%;
}
.wp-pagenavi .pages {
  order: 3;
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  margin-inline: var(--space-block-xs);
}
.wp-pagenavi .nextpostslink {
  order: 4;
  width: 50px;
  height: 50px;
}
.wp-pagenavi .nextpostslink::before {
  content: "";
  display: inline-block;
  background: url(../img/voices/pagearrow.png) no-repeat top left;
  background-size: contain;
  width: 100%;
  height: 100%;
}
.wp-pagenavi .last {
  order: 5;
  width: 50px;
  height: 50px;
}
.wp-pagenavi .last::before {
  content: "";
  display: inline-block;
  background: url(../img/voices/pagearrow2.png) no-repeat top left;
  background-size: contain;
  width: 100%;
  height: 100%;
}

.post_text {
  overflow: hidden;
}
.post_text :is(p,ul,ol,table):not(:last-child) {
  margin-block-end: var(--space-block-lg);
}
.post_text img {
  max-width: 100%;
  height: auto;
}
.post_text img.alignright {
  float: right;
  margin: 0 0 15px 15px;
  display: block;
}
.post_text img.alignleft {
  float: left;
  margin: 0 15px 15px 0;
  display: block;
}
.post_text img.aligncenter {
  display: block;
  margin: 0 auto 15px;
}
.post_text :is(h1,h2,h3,h4,h5,h6) {
  margin-bottom: 35px;
}
.post_text h1 {
  font-size: 36px;
  border-bottom: 6px solid;
}
.post_text h2 {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  color: var(--color-primary);
  display: flex;
  gap: var(--space-block-sm);
  margin-block-end: var(--space-block-sm);
}
.post_text h2::before {
  content: "";
  display: inline-block;
  width: 6px;
  min-width: 6px;
  background-color: var(--color-primary);
  border-radius: 99px;
}
.post_text h3 {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  display: grid;
  grid-template-columns: 16px 1fr;
  align-items: center;
  gap: var(--space-block-xs);
  margin-block-end: var(--space-block-sm);
}
.post_text h3::before {
  content: "";
  display: inline-block;
  width: 11px;
  height: 11px;
  background-color: var(--color-secondary);
  rotate: 45deg;
  margin-inline-start: 3px;
}
.post_text h4 {
  font-size: 24px;
  border-bottom: 3px solid;
}
.post_text h5 {
  font-size: 20px;
  border-bottom: 2px solid;
}
.post_text h6 {
  font-size: 16px;
  border-bottom: 1px solid;
}
.post_text th, .post_text td {
  padding: 10px;
  border: 1px solid;
}
.post_text ul, .post_text ol {
  padding-inline-start: 18px;
}
.post_text li {
  list-style-type: none;
  line-height: 1.4;
}
.post_text li:not(:last-child) {
  margin-bottom: 10px;
}
.post_text ul li {
  position: relative;
}
.post_text ul li::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 8px;
  height: 8px;
  top: 0.4em;
  left: -18px;
  background-color: var(--color-base);
}
.post_text ol {
  padding-inline-start: 22px;
  counter-reset: list-count 0;
}
.post_text ol li::before {
  display: inline-block;
  content: counter(list-count) ".";
  counter-increment: list-count;
  margin-inline-start: -22px;
  font-weight: 700;
  margin-inline-end: 10px;
}
.post_text a {
  text-decoration: underline;
  color: var(--color-primary);
}
@media (width <= 1120px) {
  .post_text img {
    float: none;
    margin: 0 auto;
    display: block;
  }
  .post_text img.emoji {
    display: inline !important;
  }
  .post_text table {
    width: 100% !important;
  }
}

.c-bread {
  background-color: var(--color-light);
  padding-block: 16px;
  border-block-end: 1px solid var(--color-border2);
}
.c-bread__list {
  word-break: break-all;
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
}
.c-bread__list > li {
  display: inline;
  margin-right: 0.2em;
}
.c-bread__list > li + li:before {
  content: "＞";
  /*	content: ">";*/
}

.c-button {
  margin-block-start: var(--space-block-md);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 290px;
  height: 60px;
  background-color: var(--color-light);
  border: 2px solid var(--color-primary);
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  color: var(--color-primary);
  border-radius: 999px;
  position: relative;
  transition: var(--sec);
}
@media (width <= 768px) {
  .c-button {
    width: 260px;
    height: 50px;
    margin-inline: auto;
  }
}
.c-button:focus-visible {
  color: var(--color-light);
  background-color: var(--color-primary);
}
.c-button:focus-visible .c-button__arrow {
  color: var(--color-light);
}
@media (hover: hover) and (pointer: fine) {
  .c-button:hover {
    color: var(--color-light);
    background-color: var(--color-primary);
  }
  .c-button:hover .c-button__arrow {
    color: var(--color-light);
  }
}
.c-button._center {
  margin-inline: auto;
}
.c-button__arrow {
  position: absolute;
  right: var(--space-block-sm);
  top: 50%;
  translate: 0 -50%;
  display: flex;
  transition: color var(--sec);
}
@media (width <= 768px) {
  .c-button__arrow {
    right: var(--space-block-xs);
  }
}

.c-button_line {
  background-color: var(--color-line);
  border-radius: 10px 0;
  color: var(--color-light);
  transition: opacity var(--sec);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: var(--space-block-sm) var(--space-block-lg);
  font-size: 1.625rem;
  font-weight: 700;
  position: relative;
  margin-block-start: var(--space-block-md);
}
@media (width <= 768px) {
  .c-button_line {
    padding: 12px 30px;
  }
}
.c-button_line:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .c-button_line:hover {
    opacity: var(--opacity);
  }
}
.c-button_line::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  height: 16px;
  top: 50%;
  translate: 0 -50%;
  right: var(--space-block-sm);
  background-color: currentColor;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
@media (width <= 768px) {
  .c-button_line::after {
    right: var(--space-block-xs);
  }
}

.c-heading {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  margin-block-end: var(--space-block-lg);
  gap: var(--space-block-xs);
  text-align: center;
}
@media (width <= 768px) {
  .c-heading {
    gap: 6px;
  }
}
.c-heading._left {
  align-items: flex-start;
  text-align: left;
}
@media (width <= 768px) {
  .c-heading._left {
    align-items: center;
  }
}
.c-heading._light {
  color: var(--color-light);
}
.c-heading._light .c-heading__en {
  color: var(--color-light);
}
.c-heading__en {
  font-family: var(--typography-EN-title-xxlg-b-font-family);
  font-weight: var(--typography-EN-title-xxlg-b-font-weight);
  font-size: var(--typography-EN-title-xxlg-b-font-size);
  line-height: var(--typography-EN-title-xxlg-b-line-height);
  --letter-spacing: var(--typography-EN-title-xxlg-b-letter-spacing);
  color: var(--color-primary);
  margin-block-start: 8px;
}
.c-heading__title {
  font-family: var(--typography-title-xxlg-b-font-family);
  font-weight: var(--typography-title-xxlg-b-font-weight);
  font-size: var(--typography-title-xxlg-b-font-size);
  line-height: var(--typography-title-xxlg-b-line-height);
  --letter-spacing: var(--typography-title-xxlg-b-letter-spacing);
}
.c-heading__title .emphasis {
  color: var(--color-primary);
}

.c-heading2 {
  font-family: var(--typography-title-xxlg-b-font-family);
  font-weight: var(--typography-title-xxlg-b-font-weight);
  font-size: var(--typography-title-xxlg-b-font-size);
  line-height: var(--typography-title-xxlg-b-line-height);
  --letter-spacing: var(--typography-title-xxlg-b-letter-spacing);
  padding-block-end: 4px;
  border-block-end: 2px solid var(--color-primary);
  width: fit-content;
  margin-block-end: var(--space-block-md);
}
.c-heading2._center {
  margin-inline: auto;
  margin-block-end: var(--space-block-lg);
  text-align: center;
}
.c-heading2._light {
  color: var(--color-light);
  border-block-end-color: var(--color-light);
}
.c-heading2 .emphasis {
  color: var(--color-primary);
}

.c-heading3 {
  font-family: var(--typography-title-xlg-b-font-family);
  font-weight: var(--typography-title-xlg-b-font-weight);
  font-size: var(--typography-title-xlg-b-font-size);
  line-height: var(--typography-title-xlg-b-line-height);
  --letter-spacing: var(--typography-title-xlg-b-letter-spacing);
  background-color: var(--color-light);
  border-radius: 0 10px;
  padding: 6px var(--space-block-sm);
  color: var(--color-primary);
  position: relative;
  margin-block-end: var(--space-block-md);
}
.c-heading3::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 250px;
  height: 2px;
  top: 0;
  left: 0;
  background-color: var(--color-primary);
}

.c-pagetitle {
  display: flex;
  flex-direction: column-reverse;
  gap: 8px;
  align-items: center;
  color: var(--color-primary);
}
@media (width <= 768px) {
  .c-pagetitle {
    gap: 0;
  }
}
.c-pagetitle__name {
  font-family: var(--typography-title-xxxlg-font-family);
  font-weight: var(--typography-title-xxxlg-font-weight);
  font-size: var(--typography-title-xxxlg-font-size);
  line-height: var(--typography-title-xxxlg-line-height);
  --letter-spacing: var(--typography-title-xxxlg-letter-spacing);
}
.c-pagetitle__en {
  font-family: var(--typography-EN-title-md-m-font-family);
  font-weight: var(--typography-EN-title-md-m-font-weight);
  font-size: var(--typography-EN-title-md-m-font-size);
  line-height: var(--typography-EN-title-md-m-line-height);
  --letter-spacing: var(--typography-EN-title-md-m-letter-spacing);
}
.c-pagetitle._simple {
  margin-block: var(--space-block-xxl);
}
@media (width <= 768px) {
  .c-pagetitle._simple {
    margin-block: var(--space-block-xl);
  }
}
.c-pagetitle._normal {
  margin-block-start: -50px;
  position: relative;
  z-index: 1;
  margin-block-end: var(--space-block-xxl);
}
@media (768px < width <= 1120px) {
  .c-pagetitle._normal {
    margin-block-start: 0;
  }
}
@media (width <= 768px) {
  .c-pagetitle._normal {
    margin-block-start: -15px;
    margin-block-end: var(--space-block-xl);
  }
}
.c-pagetitle._image {
  margin-block-start: -110px;
}
@media (768px < width <= 1120px) {
  .c-pagetitle._image {
    margin-block-start: 0;
  }
}
@media (width <= 768px) {
  .c-pagetitle._image {
    margin-block-start: -15px;
    margin-block-end: var(--space-block-xl);
    max-width: 500px;
    margin-inline: auto;
  }
}
.c-pagetitle__wrap {
  position: relative;
  margin-block-end: var(--space-block-xl);
}
.c-pagetitle._column {
  display: flex;
  flex-direction: row;
  gap: 20px 60px;
  padding-block: var(--space-block-lg) var(--space-block-sm);
  color: var(--color-base);
  align-items: start;
  position: relative;
  z-index: 1;
}
@media (width <= 1120px) {
  .c-pagetitle._column {
    align-items: center;
  }
}
@media (width <= 768px) {
  .c-pagetitle._column {
    flex-direction: column-reverse;
    align-items: start;
  }
}
.c-pagetitle._column .c-pagetitle__title {
  display: flex;
  flex-direction: column-reverse;
  margin-block-start: 100px;
}
@media (width <= 1120px) {
  .c-pagetitle._column .c-pagetitle__title {
    margin-block-start: 0;
  }
}
.c-pagetitle._column .c-pagetitle__image {
  border-radius: 0 20px;
  overflow: hidden;
  width: 54%;
}
@media (width <= 1120px) {
  .c-pagetitle._column .c-pagetitle__image {
    width: 40%;
  }
}
@media (width <= 768px) {
  .c-pagetitle._column .c-pagetitle__image {
    width: 100%;
  }
}
.c-pagetitle._column .c-pagetitle__image img {
  width: 100%;
}
.c-pagetitle._column .c-pagetitle__en {
  display: flex;
  align-items: center;
  gap: 8px;
}
.c-pagetitle._column .c-pagetitle__en::before {
  content: "";
  display: inline-block;
  width: 14px;
  height: 18px;
  background-color: var(--color-secondary);
  clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
}
.c-pagetitle__image {
  position: relative;
}
.c-pagetitle__image img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.c-pagetitle__cover {
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 100%;
}
.c-pagetitle__cover img {
  width: 100%;
}
@media (width <= 768px) {
  .c-pagetitle__cover._column {
    height: 60%;
  }
  .c-pagetitle__cover._column::after {
    content: "";
    display: inline-block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 48px;
    left: 0;
    background-color: var(--color-bg-base);
  }
}

.c-text p:not(:last-child) {
  margin-block-end: 2em;
}
.c-text._center {
  text-align: center;
}

.c-link {
  color: var(--color-primary);
  text-decoration: underline;
  transition: opacity var(--sec);
}
.c-link:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .c-link:hover {
    opacity: var(--opacity);
  }
}

.c-heading-lp1 {
  display: flex;
  flex-direction: column-reverse;
  gap: var(--space-block-sm);
  justify-content: center;
  align-items: center;
  margin-block-end: 50px;
}
@media (width <= 768px) {
  .c-heading-lp1 {
    margin-block-end: var(--space-block-lg);
  }
}
.c-heading-lp1__title {
  font-family: var(--typography-lp-title-lg-b-font-family);
  font-weight: var(--typography-lp-title-lg-b-font-weight);
  font-size: var(--typography-lp-title-lg-b-font-size);
  line-height: var(--typography-lp-title-lg-b-line-height);
  --letter-spacing: var(--typography-lp-title-lg-b-letter-spacing);
  color: var(--color-lp-primary);
}
.c-heading-lp1__en {
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
  color: var(--color-lp-secondary);
}
@media (width <= 768px) {
  .c-heading-lp1__en {
    font-size: 1.25rem;
  }
}

.c-heading-lp2 {
  display: flex;
  flex-direction: column-reverse;
  justify-content: center;
  align-items: center;
  margin-block: -68px 50px;
  position: relative;
  z-index: 1;
}
@media (width <= 768px) {
  .c-heading-lp2 {
    margin-block: -32px var(--space-block-lg);
  }
}
.c-heading-lp2__title {
  font-family: var(--typography-lp2-text-lg-b-font-family);
  font-weight: var(--typography-lp2-text-lg-b-font-weight);
  font-size: var(--typography-lp2-text-lg-b-font-size);
  line-height: var(--typography-lp2-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp2-text-lg-b-letter-spacing);
  color: var(--color-lp-primary);
}
.c-heading-lp2__en {
  font-family: var(--typography-lp2-title-lg-b-font-family);
  font-weight: var(--typography-lp2-title-lg-b-font-weight);
  font-size: var(--typography-lp2-title-lg-b-font-size);
  line-height: var(--typography-lp2-title-lg-b-line-height);
  --letter-spacing: var(--typography-lp2-title-lg-b-letter-spacing);
  color: var(--color-lp-secondary);
  text-transform: uppercase;
}

.c-heading-lp3 {
  display: flex;
  flex-direction: column-reverse;
  gap: var(--space-block-sm);
  justify-content: center;
  align-items: center;
  margin-block-end: 50px;
  padding-block-start: var(--space-block-md);
}
@media (width <= 768px) {
  .c-heading-lp3 {
    margin-block-end: var(--space-block-lg);
  }
}
.c-heading-lp3__title {
  font-family: var(--typography-lp3-title-lg-b-font-family);
  font-weight: var(--typography-lp3-title-lg-b-font-weight);
  font-size: var(--typography-lp3-title-lg-b-font-size);
  line-height: var(--typography-lp3-title-lg-b-line-height);
  --letter-spacing: var(--typography-lp3-title-lg-b-letter-spacing);
  color: var(--color-lp-primary2);
}
.c-heading-lp3__en {
  font-family: var(--typography-lp3-text-md-b-font-family);
  font-weight: var(--typography-lp3-text-md-b-font-weight);
  font-size: var(--typography-lp3-text-md-b-font-size);
  line-height: var(--typography-lp3-text-md-b-line-height);
  --letter-spacing: var(--typography-lp3-text-md-b-letter-spacing);
  color: var(--color-secondary);
}
@media (width <= 768px) {
  .c-heading-lp3__en {
    font-size: 1.25rem;
  }
}
.c-heading-lp3._light .c-heading-lp3__title {
  color: var(--color-light);
}

.c-wave {
  position: absolute;
  left: 0;
  top: calc(-110 / 1600 * 99vw);
  width: 100%;
}
@media (width <= 768px) {
  .c-wave {
    top: calc(-5 / 36 * 99vw);
  }
}
.c-wave img {
  width: 100%;
}
.c-wave._light {
  background-color: var(--color-lp-bg-secondary);
}
.c-wave._buttom {
  top: auto;
  bottom: -1px;
}
.c-wave._blue {
  background-color: var(--color-lp-primary2);
}
.c-wave._bottom {
  top: auto;
  bottom: 0;
}

.c-lp-anchor {
  position: absolute;
  left: 0;
  top: calc(-110 / 1600 * 99vw);
  width: 100%;
  z-index: -1;
}
@media (width <= 768px) {
  .c-lp-anchor {
    top: calc(-5 / 36 * 99vw);
  }
}

.c-labo-anchor {
  position: absolute;
  left: 0;
  top: -70px;
  width: 100%;
  z-index: -1;
}
@media (width <= 768px) {
  .c-labo-anchor {
    top: -10vw;
  }
}

.p-voice {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: var(--space-block-lg);
}
.p-voice__item {
  background-color: var(--color-light);
  border-radius: 0 10px;
  width: 360px;
  margin-inline: 25px;
  height: auto !important;
}
@media (width <= 768px) {
  .p-voice__item {
    margin-inline: 8px;
    width: 280px;
  }
}
.p-voice__image {
  margin-block-end: var(--space-block-sm);
  border-radius: 0 10px;
  overflow: hidden;
}
.p-voice__image img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.p-voice__slide .slick-track {
  display: flex !important;
}
.p-voice__title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  color: var(--color-primary);
  text-align: center;
  margin-block-end: 8px;
  text-box: trim-both;
}
@media (width <= 768px) {
  .p-voice__title {
    margin-block-end: var(--space-block-sm);
  }
}
.p-voice__name {
  text-align: right;
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  margin-block-start: var(--space-block-xs);
}
.p-voice__info {
  padding: 0 30px 30px;
}

.p-bnr {
  padding-block-end: var(--space-block-xxl);
}
.p-bnr .bnr {
  transition: opacity var(--sec);
  display: block;
}
@media (width <= 768px) {
  .p-bnr .bnr {
    width: calc(var(--vw) * 100);
    margin-inline: calc(50% - calc(var(--vw) * 50));
  }
}
.p-bnr .bnr:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .p-bnr .bnr:hover {
    opacity: var(--opacity);
  }
}
.p-bnr .bnr img {
  width: 100%;
}

.p-line-button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  width: 580px;
  height: 110px;
  background-color: var(--color-line);
  border-radius: 0 20px;
  color: var(--color-light);
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  margin: var(--space-block-md) auto 0;
  transition: opacity var(--sec);
}
@media (width <= 768px) {
  .p-line-button {
    width: 100%;
    height: auto;
    padding: 14px;
    margin-block-start: 4px;
    gap: 0;
  }
}
.p-line-button:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .p-line-button:hover {
    opacity: var(--opacity);
  }
}
@media (width <= 768px) {
  .p-line-button .icon {
    width: 68px;
  }
}

.p-guide {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-block-sm);
}
@media (width <= 768px) {
  .p-guide {
    grid-template-columns: 1fr;
  }
}
.p-guide__item {
  background-color: var(--color-light);
  border-radius: 0 20px;
  padding: var(--space-block-sm);
  position: relative;
  transition: all var(--sec);
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  gap: 0;
  justify-items: start;
}
@media (width <= 768px) {
  .p-guide__item {
    padding-block: 15px;
  }
}
.p-guide__item._column {
  display: block;
}
.p-guide__item::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 90px;
  height: 2px;
  top: 0;
  left: 0;
  background-color: var(--color-primary);
}
.p-guide__item:focus-visible {
  box-shadow: 0 0 20px var(--color-primary);
  color: var(--color-primary);
}
@media (hover: hover) and (pointer: fine) {
  .p-guide__item:hover {
    box-shadow: 0 0 20px var(--color-primary);
    color: var(--color-primary);
  }
}
.p-guide__item .sub {
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  margin-block-end: var(--space-block-xs);
  line-height: 1.4285714286;
  color: var(--color-primary);
  text-box: trim-both;
}
.p-guide__item .title {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  margin-block-end: var(--space-block-xs);
  width: 100%;
}
@media (width <= 768px) {
  .p-guide__item .title {
    margin-block-end: var(--space-block-xs);
  }
}
.p-guide__item .title .u-svg {
  color: var(--color-primary);
  margin-block-start: 6px;
}
.p-guide__item .title p {
  display: grid;
  line-height: 1.2;
}
.p-guide__item .title .small {
  display: inline-block;
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
}
.p-guide__item .place {
  color: var(--color-light);
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  background-color: var(--color-secondary);
  border-radius: 4px;
  padding: 2px 6px;
  display: inline-block;
  min-width: 50px;
  text-align: center;
}
.p-guide__item .place._pink {
  background-color: var(--color-tertiary);
}
.p-guide__item .place._blue {
  background-color: var(--color-primary3);
}

.p-faq__item {
  background-color: var(--color-light);
  border-radius: 0 20px;
  box-shadow: 0 0 14px color-mix(in srgb, var(--color-base) 10%, transparent);
  padding: 24px var(--space-block-sm);
}
@media (width <= 768px) {
  .p-faq__item {
    padding: 14px var(--space-block-xs);
  }
}
.p-faq__item:not(:last-child) {
  margin-block-end: var(--space-block-sm);
}
.p-faq__item.is-open .p-faq__question .plus::after {
  content: none;
}
.p-faq__question {
  display: grid;
  grid-template-columns: 1fr 22px;
  align-items: center;
  gap: 20px;
}
@media (width <= 768px) {
  .p-faq__question {
    gap: 9px;
  }
}
.p-faq__question .question {
  display: grid;
  grid-template-columns: auto 1fr;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}
@media (width <= 768px) {
  .p-faq__question .question {
    gap: 9px;
  }
}
.p-faq__question .q {
  font-family: var(--typography-EN-title-md-m-font-family);
  font-weight: var(--typography-EN-title-md-m-font-weight);
  font-size: var(--typography-EN-title-md-m-font-size);
  line-height: var(--typography-EN-title-md-m-line-height);
  --letter-spacing: var(--typography-EN-title-md-m-letter-spacing);
  color: var(--color-primary);
  font-size: 1.875rem;
  line-height: 1;
}
@media (width <= 768px) {
  .p-faq__question .q {
    font-size: 1.5rem;
  }
}
.p-faq__question .title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
}
@media (width <= 768px) {
  .p-faq__question .title {
    font-size: 0.875rem;
    line-height: 1.7142857143;
  }
}
.p-faq__question .plus {
  border: 2px solid var(--color-primary);
  width: 22px;
  aspect-ratio: 1/1;
  border-radius: 99px;
  position: relative;
}
.p-faq__question .plus::before, .p-faq__question .plus::after {
  content: "";
  display: inline-block;
  position: absolute;
  background-color: var(--color-primary);
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  border-radius: 9px;
}
.p-faq__question .plus::before {
  width: 10px;
  height: 2px;
}
.p-faq__question .plus::after {
  width: 2px;
  height: 10px;
}
.p-faq__answer-inner {
  margin: var(--space-block-sm) 40px 0;
}
@media (width <= 768px) {
  .p-faq__answer-inner {
    margin: var(--space-block-xs) var(--space-block-xs) 0;
  }
}

.page-shinomarushinkyu .p-faq2__question .q {
  color: var(--color-lp-primary2);
  border-color: var(--color-lp-primary2);
  font-family: var(--typography-lp3-text-md-b-font-family);
  font-weight: var(--typography-lp3-text-md-b-font-weight);
  font-size: var(--typography-lp3-text-md-b-font-size);
  line-height: var(--typography-lp3-text-md-b-line-height);
  --letter-spacing: var(--typography-lp3-text-md-b-letter-spacing);
}
.page-shinomarushinkyu .p-faq2__question .title {
  font-family: var(--typography-lp3-text-md-b-font-family);
  font-weight: var(--typography-lp3-text-md-b-font-weight);
  font-size: var(--typography-lp3-text-md-b-font-size);
  line-height: var(--typography-lp3-text-md-b-line-height);
  --letter-spacing: var(--typography-lp3-text-md-b-letter-spacing);
}
.page-shinomarushinkyu .p-faq2__answer-inner .a {
  background-color: var(--color-lp-primary2);
  font-family: var(--typography-lp3-text-md-b-font-family);
  font-weight: var(--typography-lp3-text-md-b-font-weight);
  font-size: var(--typography-lp3-text-md-b-font-size);
  line-height: var(--typography-lp3-text-md-b-line-height);
  --letter-spacing: var(--typography-lp3-text-md-b-letter-spacing);
}

.p-faq2__item {
  background-color: var(--color-light);
  padding: var(--space-block-sm);
}
.p-faq2__item:not(:last-child) {
  margin-block-end: var(--space-block-xs);
}
.p-faq2__item.is-open .p-faq2__question .plus::after {
  content: none;
}
.p-faq2__question {
  display: grid;
  grid-template-columns: 1fr 30px;
  align-items: center;
  gap: 20px;
  margin-inline-end: var(--space-block-sm);
}
@media (width <= 768px) {
  .p-faq2__question {
    gap: 9px;
    margin-inline-end: 0;
  }
}
.p-faq2__question .question {
  display: grid;
  grid-template-columns: auto 1fr;
  justify-content: space-between;
  align-items: center;
  gap: var(--space-block-sm);
}
@media (width <= 768px) {
  .p-faq2__question .question {
    gap: 9px;
  }
}
.p-faq2__question .q {
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
  color: var(--color-lp-primary);
  line-height: 1;
  border-radius: 999px;
  border: 1px solid var(--color-lp-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 66px;
  aspect-ratio: 1/1;
}
@media (width <= 768px) {
  .p-faq2__question .q {
    width: 40px;
    padding-block-end: 2px;
  }
}
.p-faq2__question .title {
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
}
.p-faq2__question .plus {
  position: relative;
}
.p-faq2__question .plus::before, .p-faq2__question .plus::after {
  content: "";
  display: inline-block;
  position: absolute;
  background-color: var(--color-base);
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.p-faq2__question .plus::before {
  width: 30px;
  height: 3px;
}
@media (width <= 768px) {
  .p-faq2__question .plus::before {
    width: 20px;
  }
}
.p-faq2__question .plus::after {
  width: 3px;
  height: 30px;
}
@media (width <= 768px) {
  .p-faq2__question .plus::after {
    height: 20px;
  }
}
.p-faq2__answer-inner {
  padding-block-start: var(--space-block-sm);
  margin-block-start: var(--space-block-sm);
  border-block-start: 1px solid var(--color-border3);
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: var(--space-block-sm);
}
@media (width <= 768px) {
  .p-faq2__answer-inner {
    margin: var(--space-block-md) 0 0 0;
    gap: var(--space-block-xs);
    align-items: flex-start;
  }
}
.p-faq2__answer-inner .a {
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
  line-height: 1;
  border-radius: 999px;
  color: var(--color-light);
  background-color: var(--color-lp-secondary);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 66px;
  aspect-ratio: 1/1;
}
@media (width <= 768px) {
  .p-faq2__answer-inner .a {
    width: 40px;
    padding-block-end: 4px;
  }
}

.p-form .annotation {
  text-align: center;
  margin-block-end: var(--space-block-md);
}
.p-form .mw_wp_form .error {
  color: var(--color-require);
  display: block;
  width: 100%;
}
.p-form ._require {
  color: var(--color-light);
  background-color: var(--color-require);
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  text-align: center;
  padding: 0 10px;
  border-radius: 99px;
  margin-inline-end: 6px;
}
.p-form ._any {
  background-color: var(--color-light);
  border: 1px solid var(--color-base);
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  text-align: center;
  padding: 0 10px;
  border-radius: 99px;
  margin-inline-end: 6px;
}
.p-form .c-input input[type=text], .p-form .c-input textarea, .p-form .c-input input[type=email] {
  border: 0;
  margin: 0;
  padding: var(--space-block-xs) var(--space-block-sm);
  border-radius: 10px;
  font-family: var(--typography-text-md-r-font-family);
  font-weight: var(--typography-text-md-r-font-weight);
  font-size: var(--typography-text-md-r-font-size);
  line-height: var(--typography-text-md-r-line-height);
  --letter-spacing: var(--typography-text-md-r-letter-spacing);
  width: 100%;
}
.p-form .c-input._short {
  max-width: 480px;
}
.p-form .c-input._radio {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-block-xs) var(--space-block-sm);
}
.p-form .c-input textarea {
  resize: vertical;
  max-height: 600px;
  min-height: 280px;
}
.p-form__title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
}
.p-form__item {
  padding-block: var(--space-block-lg);
  border-block-end: 1px solid var(--color-bg-primary2);
  display: grid;
  grid-template-columns: 1fr 66%;
  gap: var(--space-block-sm);
}
@media (width <= 768px) {
  .p-form__item {
    grid-template-columns: 1fr;
    padding-block: var(--space-block-md);
  }
}
.p-form__item:first-child {
  border-block-start: 1px solid var(--color-bg-primary2);
}
.p-form__item._privacy {
  padding-block-end: 0;
  border-block: 0;
  display: flex;
  justify-content: center;
}
.p-form__label-in {
  display: flex;
  align-items: center;
}
.p-form__exsample {
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  margin-block-end: var(--space-block-xs);
}
.p-form__submit {
  margin: 18px auto 0;
  width: fit-content;
}
.p-form__submit button {
  background-color: var(--color-primary);
  text-align: center;
  color: var(--color-light);
  padding: 13px;
  width: 290px;
  border: 1px solid var(--color-primary);
  border-radius: 99px;
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  cursor: pointer;
  transition: all var(--sec);
}
.p-form__submit button:focus-visible {
  background-color: var(--color-light);
  color: var(--color-primary);
}
@media (hover: hover) and (pointer: fine) {
  .p-form__submit button:hover {
    background-color: var(--color-light);
    color: var(--color-primary);
  }
}

.p-lp-bnr {
  position: relative;
  z-index: 1;
  background: linear-gradient(140deg, var(--color-tertiary3) 20%, var(--color-tertiary) 60%);
  border-radius: 10px;
  padding-block: 1px;
}
@media (width <= 768px) {
  .p-lp-bnr {
    border-radius: 0;
    margin-inline: calc(var(--l-section-space-inline) * -1);
  }
}
.p-lp-bnr::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: calc(100% - 28px);
  height: calc(100% - 20px);
  top: 10px;
  left: 14px;
  border: 1px solid color-mix(in srgb, var(--color-light) 50%, transparent);
  border-radius: 10px;
}
@media (width <= 768px) {
  .p-lp-bnr::before {
    border-inline: 0;
    width: 100%;
    left: 0;
    border-radius: 0;
  }
}
.p-lp-bnr .bnr {
  margin-block-start: -26px;
  max-width: 867px;
  margin-inline: auto;
  position: relative;
  z-index: 1;
}
@media (width <= 768px) {
  .p-lp-bnr .bnr {
    margin-block-start: -3.6%;
  }
}
.p-lp-bnr .bnr img {
  width: 100%;
}
.p-lp-bnr .link_column {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-block-sm);
  width: 100%;
  max-width: 1000px;
  margin-block: -40px var(--space-block-md);
  margin-inline: auto;
  padding-inline: var(--space-block-md);
  font-size: 1.625rem;
  line-height: 1.4;
  font-weight: 700;
  position: relative;
  z-index: 1;
}
@media (width <= 768px) {
  .p-lp-bnr .link_column {
    grid-template-columns: 1fr;
    width: 100%;
    font-size: 1.125rem;
    gap: 6px;
    margin-block-start: -9vw;
  }
}
.p-lp-bnr .link_column._solo {
  grid-template-columns: 1fr;
}
@media (width <= 768px) {
  .p-lp-bnr .link_column._solo {
    margin-block-end: var(--space-block-sm);
  }
}
.p-lp-bnr .link_column._solo .line {
  max-width: 550px;
  width: 100%;
  margin-inline: auto;
}
.p-lp-bnr .link_column .line {
  background-color: var(--color-line);
  border-radius: 99px;
  border: 2px solid var(--color-light);
  display: block;
  color: var(--color-light);
  transition: opacity var(--sec);
  padding: 6px 50px;
  position: relative;
  display: flex;
  align-items: center;
}
@media (width <= 768px) {
  .p-lp-bnr .link_column .line {
    padding: 12px 0 12px 30px;
  }
}
.p-lp-bnr .link_column .line:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .p-lp-bnr .link_column .line:hover {
    opacity: var(--opacity);
  }
}
.p-lp-bnr .link_column .line::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  height: 16px;
  top: 50%;
  translate: 0 -50%;
  right: var(--space-block-sm);
  background-color: currentColor;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
@media (width <= 768px) {
  .p-lp-bnr .link_column .line::after {
    right: var(--space-block-xs);
  }
}

.p-lp-bnr .link_column .online {
  background-color: var(--color-light);
  border-radius: 99px;
  display: flex;
  align-items: center;
  color: var(--color-lp-primary);
  transition: opacity var(--sec);
  padding: 6px 50px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (width <= 768px) {
  .p-lp-bnr .link_column .online {
    padding: 12px 30px 12px 30px;
    justify-content: start;
  }
}
.p-lp-bnr .link_column .online:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .p-lp-bnr .link_column .online:hover {
    opacity: var(--opacity);
  }
}
.p-lp-bnr .link_column .online::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  height: 16px;
  top: 50%;
  translate: 0 -50%;
  right: var(--space-block-sm);
  background-color: currentColor;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
@media (width <= 768px) {
  .p-lp-bnr .link_column .online::after {
    right: var(--space-block-xs);
  }
}
.p-lp-bnr .link_column .beauty {
  background-color: var(--color-light);
  border-radius: 99px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: var(--color-beauty);
  transition: opacity var(--sec);
  padding: 6px 30px 6px 20px;
  position: relative;
}
@media (width <= 768px) {
  .p-lp-bnr .link_column .beauty {
    padding: 12px 30px 12px 30px;
    justify-content: start;
  }
}
.p-lp-bnr .link_column .beauty:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .p-lp-bnr .link_column .beauty:hover {
    opacity: var(--opacity);
  }
}
.p-lp-bnr .link_column .beauty::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  height: 16px;
  top: 50%;
  translate: 0 -50%;
  right: var(--space-block-sm);
  background-color: currentColor;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
@media (width <= 768px) {
  .p-lp-bnr .link_column .beauty::after {
    right: var(--space-block-xs);
  }
}
@media (768px < width) {
  .p-lp-bnr .link_column .beauty._bottom {
    grid-area: 2/1/3/3;
  }
}

.p-lp-bnr2 {
  position: relative;
  z-index: 1;
  background: linear-gradient(140deg, var(--color-tertiary3) 20%, var(--color-tertiary) 60%);
  border-radius: 10px;
  padding-block: 1px;
}
@media (width <= 768px) {
  .p-lp-bnr2 {
    border-radius: 0;
    margin-inline: calc(var(--l-section-space-inline) * -1);
  }
}
.p-lp-bnr2::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: calc(100% - 28px);
  height: calc(100% - 20px);
  top: 10px;
  left: 14px;
  border: 1px solid color-mix(in srgb, var(--color-light) 50%, transparent);
  border-radius: 10px;
}
@media (width <= 768px) {
  .p-lp-bnr2::before {
    border-inline: 0;
    width: 100%;
    left: 0;
    border-radius: 0;
  }
}
.p-lp-bnr2 .bnr {
  margin-block-start: -26px;
  max-width: 929px;
  margin-inline: auto;
  position: relative;
  z-index: 1;
}
@media (width <= 768px) {
  .p-lp-bnr2 .bnr {
    margin-block-start: -14px;
  }
}
.p-lp-bnr2 .bnr img {
  width: 100%;
}
.p-lp-bnr2 .link_column {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-block-xs) var(--space-block-sm);
  width: 100%;
  max-width: 1000px;
  margin-block: -40px var(--space-block-md);
  margin-inline: auto;
  padding-inline: var(--space-block-md);
  font-size: 1.625rem;
  line-height: 1.4;
  font-weight: 700;
  position: relative;
  z-index: 1;
}
@media (width <= 768px) {
  .p-lp-bnr2 .link_column {
    grid-template-columns: 1fr;
    width: 100%;
    font-size: 1.125rem;
    gap: 6px;
    margin-block-start: -9vw;
  }
}
.p-lp-bnr2 .link_column .line {
  background-color: var(--color-line);
  border-radius: 99px;
  border: 2px solid var(--color-light);
  display: block;
  color: var(--color-light);
  transition: opacity var(--sec);
  padding: 6px 50px;
  position: relative;
  display: flex;
  align-items: center;
}
@media (width <= 768px) {
  .p-lp-bnr2 .link_column .line {
    padding: 12px 0 12px 30px;
  }
}
.p-lp-bnr2 .link_column .line:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .p-lp-bnr2 .link_column .line:hover {
    opacity: var(--opacity);
  }
}
.p-lp-bnr2 .link_column .line::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  height: 16px;
  top: 50%;
  translate: 0 -50%;
  right: var(--space-block-sm);
  background-color: currentColor;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
@media (width <= 768px) {
  .p-lp-bnr2 .link_column .line::after {
    right: var(--space-block-xs);
  }
}
.p-lp-bnr2 .link_column .online {
  background-color: var(--color-light);
  border-radius: 99px;
  display: flex;
  align-items: center;
  color: var(--color-lp-primary);
  transition: opacity var(--sec);
  padding: 6px 50px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (width <= 768px) {
  .p-lp-bnr2 .link_column .online {
    padding: 12px 30px 12px 30px;
    justify-content: start;
  }
}
.p-lp-bnr2 .link_column .online:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .p-lp-bnr2 .link_column .online:hover {
    opacity: var(--opacity);
  }
}
.p-lp-bnr2 .link_column .online::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  height: 16px;
  top: 50%;
  translate: 0 -50%;
  right: var(--space-block-sm);
  background-color: currentColor;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
@media (width <= 768px) {
  .p-lp-bnr2 .link_column .online::after {
    right: var(--space-block-xs);
  }
}
.p-lp-bnr2 .link_column .beauty {
  background-color: var(--color-light);
  border-radius: 99px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color-beauty);
  transition: opacity var(--sec);
  padding: 6px 30px 6px 20px;
  position: relative;
}
@media (width <= 768px) {
  .p-lp-bnr2 .link_column .beauty {
    padding: 12px 30px 12px 30px;
    justify-content: start;
  }
}
.p-lp-bnr2 .link_column .beauty:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .p-lp-bnr2 .link_column .beauty:hover {
    opacity: var(--opacity);
  }
}
.p-lp-bnr2 .link_column .beauty::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  height: 16px;
  top: 50%;
  translate: 0 -50%;
  right: var(--space-block-sm);
  background-color: currentColor;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
@media (width <= 768px) {
  .p-lp-bnr2 .link_column .beauty::after {
    right: var(--space-block-xs);
  }
}
@media (768px < width) {
  .p-lp-bnr2 .link_column .beauty._bottom {
    grid-area: 2/1/3/3;
  }
}

.p-schedule__table {
  border: 1px solid var(--color-border3);
  width: 100%;
}
.p-schedule__table .tr {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
}
.p-schedule__table .th {
  background-color: color-mix(in srgb, var(--color-bg-ash2) 50%, transparent);
  color: var(--color-lp-primary);
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  text-align: center;
  border-inline-end: 1px solid var(--color-border3);
  padding: 14px var(--space-block-xs);
}
@media (width <= 768px) {
  .p-schedule__table .th {
    padding: 6px 5px;
  }
}
.p-schedule__table .th:last-child {
  border-inline-end: 0;
}
.p-schedule__table .td {
  padding: 14px var(--space-block-xs);
  border-inline-end: 1px solid var(--color-border3);
  text-align: center;
}
@media (width <= 768px) {
  .p-schedule__table .td {
    padding: 6px 5px;
  }
}
.p-schedule__table .td:last-child {
  border-inline-end: 0;
}
.p-schedule__table .td._maru::before {
  content: "●";
  display: inline-block;
  color: var(--color-lp-secondary);
}
.p-schedule__table .td._batsu::before {
  content: "×";
  display: inline-block;
  color: var(--color-lp-primary);
}
.p-schedule__table .td._star::before {
  content: "★";
  display: inline-block;
  color: var(--color-lp-primary);
}

.p-schedule2__table {
  border: 1px solid var(--color-border3);
  width: 100%;
}
.p-schedule2__table .tr {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
}
.p-schedule2__table .th {
  background-color: color-mix(in srgb, var(--color-bg-ash2) 50%, transparent);
  color: var(--color-lp-primary);
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  text-align: center;
  border-inline-end: 1px solid var(--color-border3);
  padding: 4px var(--space-block-xs);
}
@media (width <= 768px) {
  .p-schedule2__table .th {
    padding: 6px 5px;
  }
}
.p-schedule2__table .th:last-child {
  border-inline-end: 0;
}
.p-schedule2__table .td {
  padding: 4px var(--space-block-xs);
  border-inline-end: 1px solid var(--color-border3);
  text-align: center;
}
@media (width <= 768px) {
  .p-schedule2__table .td {
    padding: 6px 5px;
  }
}
.p-schedule2__table .td._top {
  border-block-start: 1px solid var(--color-border3);
}
.p-schedule2__table .td._last {
  border-inline-end: 0;
}
.p-schedule2__table .td._maru::before {
  content: "●";
  display: inline-block;
  color: var(--color-lp-secondary);
}
.p-schedule2__table .td._batsu::before {
  content: "×";
  display: inline-block;
  color: var(--color-lp-primary);
}
.p-schedule2__table .td._star::before {
  content: "★";
  display: inline-block;
  color: var(--color-lp-primary);
}

.page-shinomarushinkyu .p-schedule__table .th {
  color: var(--color-lp-primary2);
}
.page-shinomarushinkyu .p-schedule__table .td._maru::before {
  color: var(--color-secondary);
}
.page-shinomarushinkyu .p-schedule__table .td._batsu::before {
  color: var(--color-lp-primary2);
}
.page-shinomarushinkyu .p-schedule__table .td._star::before {
  color: var(--color-lp-primary2);
}

[data-tel] a {
  color: inherit;
  text-decoration: underline;
}

[data-details] summary {
  cursor: pointer;
}
[data-details-panel] {
  overflow: hidden;
}

html {
  scrollbar-gutter: stable;
}

body.panelactive, body.panelactive-fixed {
  overflow: hidden;
}

/*全画面*/
.page-shinomaru .g-wrapper,
.page-unilabo .g-wrapper,
.page-shinomarushinkyu .g-wrapper {
  background-color: var(--color-light);
  padding-block-start: var(--lp-header);
}

.g-wrapper {
  background-color: var(--color-bg-base);
  padding-block-start: var(--scroll-adjust);
}

.lp-header {
  position: fixed;
  z-index: 9999;
  width: 100%;
  top: 0;
  left: 0;
  height: var(--lp-header);
  background-color: var(--color-light);
  padding-block: 14px 8px;
}
@media (width <= 1050px) {
  .lp-header {
    padding-block: 13px;
  }
}
.lp-header.is-show .lp-header__cover, .lp-header.panelactive .lp-header__cover {
  opacity: 1;
  display: block;
}
.lp-header__logo {
  max-width: 340px;
  width: 34vw;
  grid-area: 1/1/2/2;
  align-self: center;
}
@media (width <= 1050px) {
  .lp-header__logo {
    width: 242px;
    max-width: none;
  }
}
.lp-header__logo a {
  display: grid;
}
@media (width <= 1050px) {
  .lp-header__logo._shinkyu {
    width: 200px;
  }
}
.lp-header__content {
  display: grid;
  grid-template-columns: auto auto;
  justify-content: space-between;
  align-items: flex-start;
  align-content: space-between;
  height: 100%;
}
.lp-header .content__cta {
  display: flex;
  align-items: flex-start;
  gap: var(--space-block-xs);
  grid-area: 1/2/2/3;
}
@media (width <= 1050px) {
  .lp-header .content__cta {
    display: none;
  }
}
.lp-header .content__cta .tel {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  transition: opacity var(--sec);
  pointer-events: none;
}
.lp-header .content__cta .tel._color .icon {
  border-color: var(--color-secondary);
  color: var(--color-secondary);
}
.lp-header .content__cta .tel .icon {
  width: 46px;
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid var(--color-lp-secondary);
  border-radius: 99px;
  color: var(--color-lp-secondary);
  margin-block-start: 4px;
}
.lp-header .content__cta .tel .text {
  font-size: 0.875rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  margin-block-end: -6px;
}
.lp-header .content__cta .tel .text .tight {
  margin-inline: -2px -4px;
}
.lp-header .content__cta .tel .number {
  font-size: 2.125rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
}
.lp-header .content__cta .online {
  background-color: var(--color-lp-primary);
  border-radius: 4px;
  color: var(--color-light);
  display: flex;
  align-items: center;
  gap: 5px;
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  font-size: 1.125rem;
  margin-block-start: 6px;
  padding: 8px var(--space-block-xs);
  transition: opacity var(--sec);
}
.lp-header .content__cta .online:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .lp-header .content__cta .online:hover {
    opacity: var(--opacity);
  }
}
.lp-header .content__cta .online .icon {
  display: flex;
}
.lp-header .content__cta .line {
  display: block;
  transition: opacity var(--sec);
}
.lp-header .content__cta .line:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .lp-header .content__cta .line:hover {
    opacity: var(--opacity);
  }
}
.lp-header .content__menu {
  grid-area: 2/1/3/3;
}
@media (width <= 1050px) {
  .lp-header .content__menu {
    grid-area: 1/2/2/3;
  }
}
.lp-header .content__menu .menu__wrap-pc {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1.2fr 1.1fr;
  justify-content: space-between;
  font-weight: 700;
}
@media (width <= 1050px) {
  .lp-header .content__menu .menu__wrap-pc {
    display: none;
  }
}
.lp-header .content__menu .menu__wrap-pc .list {
  display: block;
  border-inline-end: 1px solid var(--color-border3);
  text-align: center;
  transition: color var(--sec);
}
.lp-header .content__menu .menu__wrap-pc .list:first-child {
  border-inline-start: 1px solid var(--color-border3);
}
.lp-header .content__menu .menu__wrap-pc .list:focus-visible {
  color: var(--color-lp-primary);
}
@media (hover: hover) and (pointer: fine) {
  .lp-header .content__menu .menu__wrap-pc .list:hover {
    color: var(--color-lp-primary);
  }
}
.lp-header .content__menu .menu__wrap-sp {
  display: none;
  align-items: center;
  gap: 5px;
}
@media (width <= 1050px) {
  .lp-header .content__menu .menu__wrap-sp {
    display: flex;
  }
}
.lp-header .content__menu .menu__wrap-sp .menu__hamburger {
  position: relative;
  cursor: pointer;
  z-index: 99999;
  width: 50px;
  aspect-ratio: 1/1;
  margin-inline-end: -10px;
}
.lp-header .content__menu .menu__wrap-sp .menu__hamburger .line {
  display: inline-block;
  transition: all var(--sec);
  position: absolute;
  left: 50%;
  transform: translate(-50%, 50%);
  height: 2px;
  width: 32px;
  border-radius: 99px;
  background-color: var(--color-primary);
}
.lp-header .content__menu .menu__wrap-sp .menu__hamburger .line:nth-of-type(1) {
  top: 16%;
}
.lp-header .content__menu .menu__wrap-sp .menu__hamburger .line:nth-of-type(2) {
  top: 34%;
}
.lp-header .content__menu .menu__wrap-sp .menu__hamburger .line:nth-of-type(3) {
  top: 52%;
}
.lp-header .content__menu .menu__wrap-sp .menu__hamburger .text {
  position: absolute;
  bottom: 12px;
  left: 50%;
  transform: translate(-50%, 50%);
  font-family: var(--typography-EN-title-md-m-font-family);
  font-weight: var(--typography-EN-title-md-m-font-weight);
  font-size: var(--typography-EN-title-md-m-font-size);
  line-height: var(--typography-EN-title-md-m-line-height);
  --letter-spacing: var(--typography-EN-title-md-m-letter-spacing);
  color: var(--color-primary);
  font-size: 12px;
}
.lp-header .content__menu .menu__wrap-sp .menu__hamburger .text._close {
  display: none;
}
.lp-header .content__menu .menu__wrap-sp .menu__hamburger.is-open .line:nth-of-type(1) {
  transform: translate(-50%, 50%) rotate(27deg);
  top: 33%;
}
.lp-header .content__menu .menu__wrap-sp .menu__hamburger.is-open .line:nth-of-type(2) {
  display: none;
}
.lp-header .content__menu .menu__wrap-sp .menu__hamburger.is-open .line:nth-of-type(3) {
  transform: translate(-50%, 50%) rotate(-27deg);
  top: 33%;
}
.lp-header .content__menu .menu__wrap-sp .menu__hamburger.is-open .text._open {
  display: none;
}
.lp-header .content__menu .menu__wrap-sp .menu__hamburger.is-open .text._close {
  display: block;
}
.lp-header .content__menu .menu__wrap-sp .menu__nav {
  position: absolute;
  z-index: 9999;
  top: 70px;
  left: 0;
  opacity: 0;
  min-width: 100%;
  transition: all var(--sec);
  display: none;
}
.lp-header .content__menu .menu__wrap-sp .menu__nav.panelactive {
  opacity: 1;
  display: block;
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list-wrap {
  position: absolute;
  z-index: 9999;
  width: 100%;
  background: var(--color-light);
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  height: calc(100svh - var(--scroll-adjust));
  overflow-y: auto;
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .sg-summary {
  padding-inline-end: var(--space-block-sm);
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .sg-details {
  overflow: hidden;
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list {
  margin-block-end: 20px;
  padding-block-end: 100px;
}
@media (width <= 1050px) {
  .lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list {
    margin-block-end: 0;
  }
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item {
  border-bottom: 1px solid var(--color-border);
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item .menu {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  padding: 15px var(--space-block-sm);
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item .menu .u-svg {
  color: var(--color-primary);
  stroke-width: 2;
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item details {
  display: block;
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item details.is-open summary .plus::after {
  display: none;
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item summary .plus {
  position: relative;
  right: 0;
  border: 2px solid var(--color-primary);
  width: 22px;
  aspect-ratio: 1/1;
  border-radius: 99px;
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item summary .plus::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 10px;
  height: 2px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: var(--color-primary);
  transition: background-color var(--sec);
}
@media (width <= 1050px) {
  .lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item summary .plus::before {
    width: 8px;
  }
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item summary .plus::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 2px;
  height: 10px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: var(--color-primary);
  transition: background-color var(--sec);
}
@media (width <= 1050px) {
  .lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item summary .plus::after {
    height: 8px;
  }
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item [data-details-panel] {
  margin-inline: calc(50% - calc(var(--vw) * 50));
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item .nav-child {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2px;
}
.lp-header .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item .nav-child .list-child {
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  background-color: var(--color-bg-primary2);
  padding: var(--space-block-xs) var(--space-block-sm);
}
.lp-header.fixed {
  top: 0;
  position: fixed;
}

.lp-cta-buttons {
  display: none;
  grid-template-columns: 1fr 42%;
  position: fixed;
  z-index: 9999;
  left: 0;
  bottom: 0;
  width: 100%;
}
@media (width <= 1050px) {
  .lp-cta-buttons {
    display: grid;
  }
}
.lp-cta-buttons._three {
  grid-template-columns: repeat(3, 1fr);
}
.lp-cta-buttons .cta-buttons__tel {
  background-color: var(--color-light);
  border-radius: 10px 10px 0 0;
  padding: 6px 10px;
  box-shadow: 0 0 5px color-mix(in srgb, var(--color-base) 50%, transparent);
  color: var(--color-lp-secondary);
  height: 76px;
}
.lp-cta-buttons .cta-buttons__tel._color {
  color: var(--color-lp-secondary2);
}
.lp-cta-buttons .cta-buttons__tel._color .tel__icon {
  background-color: var(--color-lp-secondary2);
}
.lp-cta-buttons .cta-buttons__tel._three {
  height: 62px;
}
.lp-cta-buttons .cta-buttons__tel._three .tel__wrap {
  height: 100%;
}
.lp-cta-buttons .cta-buttons__tel._three .tel__label {
  justify-content: center;
  flex-direction: column;
  gap: 0;
  font-size: 0.9rem;
}
.lp-cta-buttons .cta-buttons__tel .tel__wrap {
  width: fit-content;
  margin-inline: auto;
}
.lp-cta-buttons .cta-buttons__tel .tel__label {
  display: flex;
  align-items: center;
  gap: 4px;
  font-weight: 700;
  font-size: 1rem;
}
.lp-cta-buttons .cta-buttons__tel .tel__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-lp-secondary);
  border-radius: 50%;
  width: 22px;
  aspect-ratio: 1/1;
  color: var(--color-light);
}
.lp-cta-buttons .cta-buttons__tel .tel__icon .u-svg {
  width: 11px;
  aspect-ratio: 1/1.1;
}
.lp-cta-buttons .cta-buttons__tel .tel__number {
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1;
}

.lp-cta-buttons .cta-buttons__online {
  background-color: var(--color-lp-primary);
  border-radius: 10px 10px 0 0;
  padding: 6px 10px;
  box-shadow: 0 0 5px color-mix(in srgb, var(--color-base) 50%, transparent);
  color: var(--color-light);
  height: 62px;
}
.lp-cta-buttons .cta-buttons__online._color {
  color: var(--color-lp-secondary2);
}
.lp-cta-buttons .cta-buttons__online._color .tel__icon {
  background-color: var(--color-lp-secondary2);
}
.lp-cta-buttons .cta-buttons__online .tel__wrap {
  width: fit-content;
  margin-inline: auto;
  height: 100%;
}
.lp-cta-buttons .cta-buttons__online .tel__label {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 100%;
  font-weight: 700;
  font-size: 0.8rem;
  line-height: 1.4;
}
.lp-cta-buttons .cta-buttons__online .tel__icon {
  display: flex;
  width: 26px;
}
.lp-cta-buttons .cta-buttons__online .tel__icon .u-svg {
  width: 100%;
}
.lp-cta-buttons .cta-buttons__line {
  background-color: var(--color-line);
  border-radius: 10px 10px 0 0;
  padding: 16px 0 9px;
  color: var(--color-light);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 76px;
}
.lp-cta-buttons .cta-buttons__line._three {
  justify-content: center;
  flex-direction: column;
  height: 62px;
}
.lp-cta-buttons .cta-buttons__line._three .line__icon {
  margin-block-end: -7px;
  width: 31px;
}
.lp-cta-buttons .cta-buttons__line._three .line__text {
  font-size: 0.9rem;
}
.lp-cta-buttons .cta-buttons__line .line__badge {
  position: absolute;
  top: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: max-content;
  background-color: var(--color-light);
  color: var(--color-line);
  font-size: 14px;
  font-weight: 700;
  padding: 0 15px;
  border-radius: 99px;
  border: 2px solid var(--color-line);
  line-height: 1.2;
}
.lp-cta-buttons .cta-buttons__line .line__icon {
  margin-inline-end: -4px;
}
.lp-cta-buttons .cta-buttons__line .line__icon .u-svg {
  width: 47px;
}
.lp-cta-buttons .cta-buttons__line .line__text {
  font-weight: 700;
  font-size: 1rem;
}
.lp-cta-buttons .cta-buttons__line .line__text .big {
  font-size: 1.125rem;
}

/*ヘッダー*/
.g-header {
  position: fixed;
  z-index: 9999;
  width: 100%;
  top: 0;
  left: 0;
  height: var(--scroll-adjust);
  background-color: var(--color-light);
}
.g-header.is-show .header__cover, .g-header.panelactive .header__cover {
  opacity: 1;
  display: block;
}
.g-header .header__cover {
  position: fixed;
  width: 100%;
  height: calc(100vh + 10px);
  top: -10px;
  left: 0;
  opacity: 0;
  display: none;
  z-index: 9991;
}
.g-header .header__content {
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 9993;
  height: 100%;
}
.g-header .header__content .header-logo {
  grid-area: 1/1/2/2;
}
.g-header .header__content .content__cta {
  grid-area: 1/2/2/3;
  justify-self: end;
  margin-block-start: 5px;
}
.g-header .header__content .content__cta .cta_text {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  font-size: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}
.g-header .header__content .content__cta .cta_text::before, .g-header .header__content .content__cta .cta_text::after {
  content: "";
  display: inline-block;
  width: 2px;
  height: 14px;
  background-color: var(--color-secondary);
  rotate: 37deg;
}
.g-header .header__content .content__cta .cta_text::before {
  rotate: -37deg;
}
.g-header .header__content .content__cta .cta_button {
  border-radius: 5px;
  background-color: var(--color-secondary);
  border: 1px solid var(--color-secondary);
  box-shadow: 0 2px 0 var(--color-secondary2);
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  color: var(--color-light);
  padding: 2px 24px;
  width: fit-content;
  display: block;
  transition: var(--sec);
}
.g-header .header__content .content__cta .cta_button:focus-visible {
  background-color: var(--color-light);
  color: var(--color-secondary);
}
@media (hover: hover) and (pointer: fine) {
  .g-header .header__content .content__cta .cta_button:hover {
    background-color: var(--color-light);
    color: var(--color-secondary);
  }
}
.g-header .header__content .content__menu {
  grid-area: 2/1/3/3;
  padding-block: 11px;
}
@media (width <= 768px) {
  .g-header .header__content .content__menu {
    grid-area: 1/2/2/3;
    padding-block: 0;
  }
}
.g-header .header__content .content__menu .menu__wrap-pc {
  display: flex;
  align-items: center;
  gap: 30px;
}
@media (width <= 920px) {
  .g-header .header__content .content__menu .menu__wrap-pc {
    gap: 15px;
  }
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list {
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  transition: color var(--sec);
  display: block;
}
@media (768px < width <= 1120px) {
  .g-header .header__content .content__menu .menu__wrap-pc .menu__list .list {
    font-size: clamp(10px,1.5vw,14px);
  }
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list:focus-visible {
  color: var(--color-primary);
}
@media (hover: hover) and (pointer: fine) {
  .g-header .header__content .content__menu .menu__wrap-pc .menu__list .list:hover {
    color: var(--color-primary);
  }
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap.is-open .list {
  color: var(--color-secondary);
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap.is-open .list::before {
  content: none;
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .list {
  position: relative;
  padding-inline-end: 20px;
  cursor: pointer;
}
@media (768px < width <= 1120px) {
  .g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .list {
    padding-inline-end: 1.5vw;
  }
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .list::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 2px;
  height: 14px;
  top: 50%;
  right: 6px;
  transform: translateY(-50%);
  background-color: var(--color-secondary);
}
@media (768px < width <= 1120px) {
  .g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .list::before {
    height: 1vw;
    right: 0.4vw;
  }
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .list::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 14px;
  height: 2px;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  background-color: var(--color-secondary);
}
@media (768px < width <= 1120px) {
  .g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .list::after {
    width: 1vw;
  }
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .child-content-wrap {
  position: absolute;
  left: calc(50% - calc(var(--vw) * 50));
  top: var(--scroll-adjust);
  width: calc(var(--vw) * 100);
  background-color: var(--color-bg-primary2);
  padding: var(--space-block-md);
  display: none;
  z-index: 9999;
  overflow: hidden;
  max-height: calc(100svh - var(--scroll-adjust));
}
@media (width <= 768px) {
  .g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .child-content-wrap {
    border-radius: 0 0 var(--radius) var(--radius);
  }
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .child-content-wrap .child-content {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: var(--space-block-sm);
  max-width: 1000px;
}
@media (width <= 1120px) {
  .g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .child-content-wrap .child-content {
    grid-template-columns: repeat(4, 1fr);
  }
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .child-content-wrap .child-content._three {
  grid-template-columns: repeat(3, 1fr);
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .child-content-wrap .menu {
  background-color: var(--color-light);
  border-radius: 0 10px;
  box-shadow: 0 0 10px color-mix(in srgb, var(--color-base) 10%, transparent);
  position: relative;
  display: flex;
  align-items: center;
  height: 60px;
  transition: background-color var(--sec);
  padding-inline: var(--space-block-sm) 50px;
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .child-content-wrap .menu:focus-visible {
  background-color: var(--color-primary);
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .child-content-wrap .menu:focus-visible .text {
  color: var(--color-light);
}
@media (hover: hover) and (pointer: fine) {
  .g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .child-content-wrap .menu:hover {
    background-color: var(--color-primary);
  }
  .g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .child-content-wrap .menu:hover .text {
    color: var(--color-light);
  }
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .child-content-wrap .text {
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  color: var(--color-primary);
  transition: color var(--sec);
}
.g-header .header__content .content__menu .menu__wrap-pc .menu__list .list-child-wrap .child-content-wrap .arrow {
  position: absolute;
  right: var(--space-block-sm);
  top: 50%;
  translate: 0 -50%;
  display: flex;
}
.g-header .header__content .content__menu .menu__wrap-sp {
  display: flex;
  align-items: center;
  gap: 5px;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__hamburger {
  position: relative;
  cursor: pointer;
  z-index: 99999;
  width: 50px;
  aspect-ratio: 1/1;
  margin-inline-end: -10px;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__hamburger .line {
  display: inline-block;
  transition: all var(--sec);
  position: absolute;
  left: 50%;
  transform: translate(-50%, 50%);
  height: 2px;
  width: 32px;
  border-radius: 99px;
  background-color: var(--color-primary);
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__hamburger .line:nth-of-type(1) {
  top: 16%;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__hamburger .line:nth-of-type(2) {
  top: 34%;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__hamburger .line:nth-of-type(3) {
  top: 52%;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__hamburger .text {
  position: absolute;
  bottom: 12px;
  left: 50%;
  transform: translate(-50%, 50%);
  font-family: var(--typography-EN-title-md-m-font-family);
  font-weight: var(--typography-EN-title-md-m-font-weight);
  font-size: var(--typography-EN-title-md-m-font-size);
  line-height: var(--typography-EN-title-md-m-line-height);
  --letter-spacing: var(--typography-EN-title-md-m-letter-spacing);
  color: var(--color-primary);
  font-size: 12px;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__hamburger .text._close {
  display: none;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__hamburger.is-open .line:nth-of-type(1) {
  transform: translate(-50%, 50%) rotate(27deg);
  top: 33%;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__hamburger.is-open .line:nth-of-type(2) {
  display: none;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__hamburger.is-open .line:nth-of-type(3) {
  transform: translate(-50%, 50%) rotate(-27deg);
  top: 33%;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__hamburger.is-open .text._open {
  display: none;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__hamburger.is-open .text._close {
  display: block;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav {
  position: absolute;
  z-index: 9999;
  top: 70px;
  left: 0;
  opacity: 0;
  min-width: 100%;
  transition: all var(--sec);
  display: none;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav.panelactive {
  opacity: 1;
  display: block;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list-wrap {
  position: absolute;
  z-index: 9999;
  width: 100%;
  background: var(--color-light);
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  height: calc(100svh - var(--scroll-adjust));
  overflow-y: scroll;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .sg-summary {
  padding-inline-end: var(--space-block-sm);
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .sg-details {
  overflow: hidden;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list {
  margin-block-end: 20px;
  padding-block-end: 50px;
}
@media (width <= 768px) {
  .g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list {
    margin-block-end: 0;
  }
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item {
  border-bottom: 1px solid var(--color-border);
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item .menu {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  padding: 15px var(--space-block-sm);
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item .menu .u-svg {
  color: var(--color-primary);
  stroke-width: 2;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item details {
  display: block;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item details.is-open summary .plus::after {
  display: none;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item summary .plus {
  position: relative;
  right: 0;
  border: 2px solid var(--color-primary);
  width: 22px;
  aspect-ratio: 1/1;
  border-radius: 99px;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item summary .plus::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 10px;
  height: 2px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: var(--color-primary);
  transition: background-color var(--sec);
}
@media (width <= 768px) {
  .g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item summary .plus::before {
    width: 8px;
  }
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item summary .plus::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 2px;
  height: 10px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: var(--color-primary);
  transition: background-color var(--sec);
}
@media (width <= 768px) {
  .g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item summary .plus::after {
    height: 8px;
  }
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item [data-details-panel] {
  margin-inline: calc(50% - calc(var(--vw) * 50));
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item .nav-child {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2px;
}
.g-header .header__content .content__menu .menu__wrap-sp .menu__nav .nav-list .list-item .nav-child .list-child {
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  background-color: var(--color-bg-primary2);
  padding: var(--space-block-xs) var(--space-block-sm);
}
.g-header .header__content .content__menu .menu__cta a {
  background-color: var(--color-base);
  color: var(--color-light);
  font-weight: 700;
  padding: 14px 30px;
  border-radius: 100px;
  transition: background-color var(--sec);
}
@media (width <= 920px) {
  .g-header .header__content .content__menu .menu__cta a {
    padding: 16px 15px 18px 15px;
  }
}
@media (width <= 768px) {
  .g-header .header__content .content__menu .menu__cta a {
    padding: 5px 15px;
  }
}
.g-header .header__content .content__menu .menu__cta a:focus-visible {
  background-color: var(--color-primary);
}
@media (hover: hover) and (pointer: fine) {
  .g-header .header__content .content__menu .menu__cta a:hover {
    background-color: var(--color-primary);
  }
}
.g-header.fixed {
  top: 0;
  position: fixed;
}

.g-fixed-menu_popup {
  position: fixed;
  top: var(--scroll-adjust);
  left: 0;
  width: 100%;
  height: calc(100svh - 50px);
  background-color: color-mix(in srgb, var(--color-base) 70%, transparent);
  z-index: 999;
  display: none;
  overflow: auto;
}
.g-fixed-menu_popup .popup {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-block: 90px 140px;
  min-height: fit-content;
  height: calc(100svh - var(--scroll-adjust) - 50px);
}
.g-fixed-menu_popup .popup__title {
  color: var(--color-light);
  font-family: var(--typography-title-xxlg-b-font-family);
  font-weight: var(--typography-title-xxlg-b-font-weight);
  font-size: var(--typography-title-xxlg-b-font-size);
  line-height: var(--typography-title-xxlg-b-line-height);
  --letter-spacing: var(--typography-title-xxlg-b-letter-spacing);
  text-align: center;
  margin-block-end: var(--space-block-md);
}
.g-fixed-menu_popup .popup__item {
  background-color: color-mix(in srgb, var(--color-light) 95%, transparent);
  border-radius: 0 20px;
  padding: 12px;
  display: flex;
  flex-direction: column;
  margin-block-end: var(--space-block-xs);
  width: 100%;
}
.g-fixed-menu_popup .popup__item._line {
  flex-direction: row;
  gap: var(--space-block-xs);
  min-height: 60px;
  padding-inline: var(--space-block-sm) var(--space-block-xs);
  align-items: start;
}
.g-fixed-menu_popup .popup__item._line .u-svg {
  color: var(--color-primary);
  margin-block-start: 0.9em;
}
.g-fixed-menu_popup .popup__item:last-child {
  margin-block-end: 0;
}
.g-fixed-menu_popup .popup__item .icon {
  width: 36px;
}
.g-fixed-menu_popup .popup__item .text {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  text-align: center;
}
.g-fixed-menu_popup .popup__item .column {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0 10px;
}
.g-fixed-menu_popup .popup__item .place {
  color: var(--color-light);
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  background-color: var(--color-secondary);
  border-radius: 4px;
  padding: 2px 6px;
  display: inline-block;
  min-width: 50px;
  text-align: center;
}
.g-fixed-menu_popup .popup__item .place._pink {
  background-color: var(--color-tertiary);
}
.g-fixed-menu_popup .popup__item .place._blue {
  background-color: var(--color-primary3);
}
.g-fixed-menu_popup .popup__item .tel {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-block-xs);
  color: var(--color-primary);
}
.g-fixed-menu_popup .popup__item .number {
  font-family: var(--typography-title-xxlg-b-font-family);
  font-weight: var(--typography-title-xxlg-b-font-weight);
  font-size: var(--typography-title-xxlg-b-font-size);
  line-height: var(--typography-title-xxlg-b-line-height);
  --letter-spacing: var(--typography-title-xxlg-b-letter-spacing);
}

.g-fixed-menu {
  position: fixed;
  z-index: 9999;
  top: 50%;
  translate: 0 -50%;
  right: var(--space-block-sm);
  display: flex;
  flex-direction: column;
  gap: var(--space-block-xs);
}
@media (width <= 768px) {
  .g-fixed-menu {
    right: 0;
    top: auto;
    bottom: 0;
    translate: 0;
    width: 100%;
    background-color: var(--color-light);
    box-shadow: 0 3px 10px color-mix(in srgb, var(--color-base) 16%, transparent);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    padding: 4px 0 0 0;
  }
}
.g-fixed-menu .fixed-menu {
  background-color: var(--color-light);
  border-radius: 12px;
  box-shadow: 0 0 10px color-mix(in srgb, var(--color-base) 5%, transparent);
  padding: 10px;
  transition: var(--sec);
  min-width: 110px;
  min-height: 80px;
}
@media (width <= 768px) {
  .g-fixed-menu .fixed-menu {
    border-radius: 6px 6px 0 0;
    background-color: var(--color-primary);
    display: grid;
    grid-template-columns: 1fr;
    align-items: center;
    color: var(--color-light);
    gap: 0;
    padding: 6px 10px;
    min-width: auto;
    min-height: auto;
  }
}
.g-fixed-menu .fixed-menu._line {
  background-color: var(--color-line);
}
.g-fixed-menu .fixed-menu._line:focus-visible {
  background-color: var(--color-line);
}
@media (hover: hover) and (pointer: fine) {
  .g-fixed-menu .fixed-menu._line:hover {
    background-color: var(--color-line);
  }
}
.g-fixed-menu .fixed-menu:focus-visible {
  background-color: var(--color-primary);
  color: var(--color-light);
}
.g-fixed-menu .fixed-menu:focus-visible .fixed-menu__icon {
  color: var(--color-light);
}
.g-fixed-menu .fixed-menu:focus-visible .fixed-menu__text .emphasis {
  color: var(--color-light);
}
@media (hover: hover) and (pointer: fine) {
  .g-fixed-menu .fixed-menu:hover {
    background-color: var(--color-primary);
    color: var(--color-light);
  }
  .g-fixed-menu .fixed-menu:hover .fixed-menu__icon {
    color: var(--color-light);
  }
  .g-fixed-menu .fixed-menu:hover .fixed-menu__text .emphasis {
    color: var(--color-light);
  }
}
.g-fixed-menu .fixed-menu__icon {
  margin-inline: auto;
  margin-block-end: 6px;
  color: var(--color-primary);
  display: flex;
  justify-content: center;
  transition: color var(--sec);
}
@media (width <= 768px) {
  .g-fixed-menu .fixed-menu__icon {
    color: var(--color-light);
    margin-block-end: 0;
  }
}
.g-fixed-menu .fixed-menu__text {
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  text-align: center;
}
@media (width <= 768px) {
  .g-fixed-menu .fixed-menu__text {
    text-align: center;
    font-family: var(--typography-text-xmd-b-font-family);
    font-weight: var(--typography-text-xmd-b-font-weight);
    font-size: var(--typography-text-xmd-b-font-size);
    line-height: var(--typography-text-xmd-b-line-height);
    --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
    font-size: 0.75rem;
    white-space: nowrap;
  }
}
.g-fixed-menu .fixed-menu__text .emphasis {
  color: var(--color-primary);
  transition: color var(--sec);
}
@media (width <= 768px) {
  .g-fixed-menu .fixed-menu__text .emphasis {
    color: var(--color-light);
  }
}

.g-contact {
  background: linear-gradient(100deg, var(--color-primary), var(--color-primary2));
}
.g-contact .contact {
  display: grid;
  grid-template-columns: 1fr 50%;
  justify-content: space-between;
}
@media (width <= 768px) {
  .g-contact .contact {
    display: flex;
    flex-direction: column-reverse;
  }
}
.g-contact .contact__head {
  padding-block: var(--space-block-xl);
  max-width: 500px;
}
@media (width <= 768px) {
  .g-contact .contact__head {
    padding-block: 0;
    max-width: none;
    margin-block-end: var(--space-block-md);
  }
}
.g-contact .contact__head .c-text {
  margin-block-end: var(--space-block-sm);
  color: var(--color-light);
}
.g-contact .contact__head .c-heading {
  margin-block-end: var(--space-block-sm);
}
.g-contact .contact__button {
  display: flex;
  flex-direction: column;
  gap: var(--space-block-sm);
}
.g-contact .contact__button .button {
  background-color: var(--color-light);
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: var(--space-block-sm);
  border-radius: 0 20px;
  min-height: 80px;
  padding: 10px var(--space-block-sm) 10px var(--space-block-md);
  color: var(--color-primary);
  transition: background-color var(--sec);
}
@media (width <= 768px) {
  .g-contact .contact__button .button {
    gap: var(--space-block-xs);
    padding-inline-start: var(--space-block-sm);
  }
}
.g-contact .contact__button .button:focus-visible {
  background-color: var(--color-bg-primary2);
}
@media (hover: hover) and (pointer: fine) {
  .g-contact .contact__button .button:hover {
    background-color: var(--color-bg-primary2);
  }
}
.g-contact .contact__button .button .icon {
  display: flex;
  width: 44px;
}
.g-contact .contact__button .button .icon .u-svg {
  width: 100%;
}
.g-contact .contact__button .button .arrow {
  display: flex;
}
@media (width <= 768px) {
  .g-contact .contact__button .button .arrow {
    min-width: 22px;
  }
}
.g-contact .contact__button .button .text {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
}
.g-contact .contact__button .button .info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-block-xs);
}
.g-contact .contact__body .image {
  margin-block: -20px 56px;
  overflow: hidden;
  border-radius: 50%;
  aspect-ratio: 1/1;
}
@media (768px < width <= 920px) {
  .g-contact .contact__body .image {
    margin-inline-start: 40px;
  }
}
@media (width <= 768px) {
  .g-contact .contact__body .image {
    margin: -40px 40px 0;
  }
}
.g-contact .contact__body img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/*フッター*/
.g-footer {
  padding-block: var(--space-block-xl) 70px;
  background-color: var(--color-light);
}
@media (width <= 768px) {
  .g-footer {
    padding-block-start: 80px;
  }
}
@media (width <= 768px) {
.g-footer._lp{
  padding-block-end: 100px;
}
}
.g-footer .footer {
  display: grid;
  grid-template-columns: repeat(2, auto);
  align-items: flex-start;
  justify-content: space-between;
  column-gap: 30px;
}
@media (width <= 920px) {
  .g-footer .footer {
    grid-template-columns: 1fr;
  }
}
.g-footer .footer__head {
  grid-area: 1/1/2/2;
}
.g-footer .footer__logo {
  margin-block-end: var(--space-block-sm);
  display: block;
}
.g-footer .footer__address {
  margin-block-end: 50px;
}
@media (width <= 920px) {
  .g-footer .footer__address {
    margin-block-end: var(--space-block-md);
  }
}
.g-footer .footer__address .address {
  margin-block-end: 2px;
}
.g-footer .footer__address .address:last-child {
  margin-block-end: 0;
}
.g-footer .footer__address .address .tel {
  pointer-events: none;
}
@media (width <= 768px) {
  .g-footer .footer__address .address .tel {
    pointer-events: all;
  }
}
.g-footer .footer__policy {
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  margin-block-end: var(--space-block-md);
}
@media (width <= 768px) {
  .g-footer .footer__policy {
    margin-block-end: var(--space-block-sm);
  }
}
.g-footer .footer__policy a {
  text-decoration: underline;
  transition: color var(--sec);
}
.g-footer .footer__policy a:focus-visible {
  color: var(--color-primary);
}
@media (hover: hover) and (pointer: fine) {
  .g-footer .footer__policy a:hover {
    color: var(--color-primary);
  }
}
.g-footer .footer__copy {
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  display: block;
}
.g-footer .footer__body {
  display: grid;
  grid-template-columns: repeat(3, auto);
  align-items: flex-start;
  gap: 70px;
  grid-area: 1/2/4/3;
  margin-inline-end: var(--space-block-xs);
}
@media (width <= 1120px) {
  .g-footer .footer__body {
    gap: 30px;
  }
}
@media (width <= 920px) {
  .g-footer .footer__body {
    grid-area: 2/1/3/2;
    margin-block-end: var(--space-block-xl);
    margin-inline-end: 0;
  }
}
@media (width <= 768px) {
  .g-footer .footer__body {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}
.g-footer .footer__menu {
  border-inline-start: 1px solid var(--color-bg-primary2);
  padding-inline-start: var(--space-block-sm);
  display: flex;
  flex-direction: column;
  gap: 12px;
}
@media (width <= 768px) {
  .g-footer .footer__menu {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px 0;
    padding-inline-start: 0;
    border-inline-start: 0;
  }
}
@media (width <= 768px) {
  .g-footer .footer__menu:nth-child(1) {
    order: 1;
  }
}
@media (width <= 768px) {
  .g-footer .footer__menu:nth-child(2) {
    order: 3;
  }
}
@media (width <= 768px) {
  .g-footer .footer__menu:nth-child(3) {
    order: 2;
  }
}
.g-footer .footer__menu .menu {
  display: block;
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  transition: color var(--sec);
}
.g-footer .footer__menu .menu:focus-visible {
  color: var(--color-primary);
}
@media (hover: hover) and (pointer: fine) {
  .g-footer .footer__menu .menu:hover {
    color: var(--color-primary);
  }
}
.g-footer .footer__menu .menu_child {
  display: block;
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  transition: color var(--sec);
  display: flex;
  align-items: flex-start;
  gap: var(--space-block-xs);
  margin-block-end: 7px;
}
.g-footer .footer__menu .menu_child:last-child {
  margin-block-end: 0;
}
@media (width <= 768px) {
  .g-footer .footer__menu .menu_child:nth-last-child(2) {
    margin-block-end: 0;
  }
}
.g-footer .footer__menu .menu_child::before {
  content: "";
  display: inline-block;
  width: 10px;
  aspect-ratio: 1/1;
  background-color: var(--color-primary);
  border-radius: 50%;
  margin-block-start: 4px;
}
.g-footer .footer__menu .menu_child:focus-visible {
  color: var(--color-primary);
}
@media (hover: hover) and (pointer: fine) {
  .g-footer .footer__menu .menu_child:hover {
    color: var(--color-primary);
  }
}
.g-footer .footer__foot {
  grid-area: 2/1/3/2;
}
@media (width <= 920px) {
  .g-footer .footer__foot {
    grid-area: 3/1/4/2;
  }
}

/*メイン*/
.g-main {
  display: block;
}
.g-main:after {
  content: " ";
  display: block;
  clear: both;
}

.q-about-catch {
  padding-block-end: var(--space-block-section);
}
.q-about-catch .catch {
  display: grid;
  grid-template-columns: 1fr 38%;
  gap: var(--space-block-md);
  align-items: center;
  justify-content: space-between;
}
@media (width <= 768px) {
  .q-about-catch .catch {
    grid-template-columns: 1fr;
    gap: var(--space-block-sm);
  }
}
.q-about-catch .catch__head .title {
  margin-block-end: var(--space-block-md);
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
}
@media (width <= 768px) {
  .q-about-catch .catch__head .title {
    font-size: clamp(16px,3vw,30px);
    margin-block-end: var(--space-block-sm);
  }
}
.q-about-catch .catch__head .title p {
  padding: 5px var(--space-block-xs);
  background-color: var(--color-light);
  display: inline;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  line-height: 2.2;
}
@media (width <= 768px) {
  .q-about-catch .catch__head .title p {
    line-height: 2.4;
  }
}
.q-about-catch .catch__head .title p:not(:last-child) {
  margin-block-end: var(--space-block-xs);
}
.q-about-catch .catch__head .title p .emphasis {
  color: var(--color-primary);
}
@media (width <= 768px) {
  .q-about-catch .catch__head .title p .emphasis._pc {
    color: var(--color-base);
  }
}
.q-about-catch .catch__body {
  margin: -16px;
}
@media (width <= 768px) {
  .q-about-catch .catch__body {
    text-align: center;
  }
}
.q-about-catch .catch__body img {
  width: 100%;
}
@media (width <= 768px) {
  .q-about-catch .catch__body img {
    max-width: 500px;
  }
}

.q-about-reason {
  background-color: var(--color-bg-primary);
  padding-block: var(--space-block-section);
}
.q-about-reason .reason__column {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-block-lg);
  margin-block-end: var(--space-block-lg);
}
@media (width <= 920px) {
  .q-about-reason .reason__column {
    gap: var(--space-block-sm);
  }
}
@media (width <= 768px) {
  .q-about-reason .reason__column {
    grid-template-columns: 1fr;
  }
}
.q-about-reason .reason__item {
  background-color: var(--color-light);
  border-radius: 0 20px;
}
.q-about-reason .reason__item .c-text {
  margin: 0 var(--space-block-md) var(--space-block-md) var(--space-block-md);
}
@media (width <= 768px) {
  .q-about-reason .reason__item .c-text {
    margin-inline: var(--space-block-sm);
  }
}
.q-about-reason .reason__image {
  border-radius: 0 20px;
  margin-block-end: var(--space-block-sm);
  overflow: hidden;
}
.q-about-reason .reason__image img {
  width: 100%;
}
.q-about-reason .reason__title {
  margin-inline: var(--space-block-md);
}
.q-about-reason .reason__title .sub {
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  margin-block-end: var(--space-block-xs);
  text-align: center;
  color: var(--color-primary);
  text-box: trim-both;
}
.q-about-reason .reason__title .title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  margin-block-end: var(--space-block-xs);
  text-align: center;
  text-box: trim-both;
}
@media (width <= 768px) {
  .q-about-reason .reason__title .title {
    margin-block-end: 6px;
  }
}
.q-about-reason .reason__bnr {
  overflow: hidden;
  border-radius: 10px;
  box-shadow: 0 0 15px color-mix(in srgb, var(--color-dark) 16%, transparent);
  display: block;
  transition: opacity var(--sec);
}
.q-about-reason .reason__bnr:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-about-reason .reason__bnr:hover {
    opacity: var(--opacity);
  }
}
.q-about-reason .reason__bnr img {
  width: 100%;
}

.q-about-difference {
  padding-block: var(--space-block-section);
}
@media (width <= 768px) {
  .q-about-difference .simplebar-scrollbar::before {
    content: "";
    display: block;
    background-color: var(--color-primary);
    border-radius: 0;
    height: 8px !important;
    margin: 4px 6px 4px 4px;
    border-radius: 99px;
  }
}
@media (width <= 768px) {
  .q-about-difference .simplebar-scrollbar.simplebar-visible::before {
    content: "";
    opacity: 1;
  }
}
.q-about-difference .simplebar-placeholder {
  display: none;
}
@media (width <= 768px) {
  .q-about-difference .simplebar-track {
    background-color: var(--color-light);
    border: 1px solid var(--color-border2);
    border-radius: 99px;
    height: 18px !important;
    margin-block-start: 18px;
  }
}
.q-about-difference .simplebar-track.simplebar-vertical {
  display: none;
}
.q-about-difference .simplebar-content-wrapper {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
@media (width <= 768px) {
  .q-about-difference .simplebar-content-wrapper::-webkit-scrollbar {
    display: none;
  }
}
@media (width <= 768px) {
  .q-about-difference .difference {
    overflow: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
}
@media (width <= 768px) {
  .q-about-difference .difference::-webkit-scrollbar {
    display: none;
  }
}
.q-about-difference .difference .table {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  border: 1px solid var(--color-border);
}
@media (width <= 768px) {
  .q-about-difference .difference .table {
    font-family: var(--typography-text-sm-font-family);
    font-weight: var(--typography-text-sm-font-weight);
    font-size: var(--typography-text-sm-font-size);
    line-height: var(--typography-text-sm-line-height);
    --letter-spacing: var(--typography-text-sm-letter-spacing);
    min-width: 379px;
  }
}
.q-about-difference .difference .table__tr .tr {
  background-color: var(--color-bg-ash);
  text-align: center;
  padding-block: 5px;
  border-block: 1px solid var(--color-border);
}
.q-about-difference .difference .table__th {
  text-align: center;
  display: grid;
  grid-template-columns: 15% 50% 35%;
}
@media (width <= 768px) {
  .q-about-difference .difference .table__th {
    grid-template-columns: 16% 43% 1fr;
  }
}
.q-about-difference .difference .table__th .th {
  padding: 15px;
  text-box: trim-both;
  border-inline-end: 1px solid var(--color-border);
  border-block-end: 1px solid var(--color-border);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media (width <= 768px) {
  .q-about-difference .difference .table__th .th {
    padding-inline: 4px;
  }
}
.q-about-difference .difference .table__th .th:last-child {
  border-inline-end: 0;
}
.q-about-difference .difference .table__th .th._ash {
  background-color: var(--color-border);
}
.q-about-difference .difference .table__th .th._primary {
  background-color: var(--color-primary);
  color: var(--color-light);
}
.q-about-difference .difference .table__th .th._primary2 {
  background-color: var(--color-bg-primary);
}
.q-about-difference .difference .table__td {
  display: grid;
  grid-template-columns: 15% 50% 35%;
}
@media (width <= 768px) {
  .q-about-difference .difference .table__td {
    grid-template-columns: 16% 43% 1fr;
  }
}
.q-about-difference .difference .table__td .td {
  border-inline-end: 1px solid var(--color-border);
  border-block-end: 1px solid var(--color-border);
  padding: 21px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background-color: var(--color-light);
}
@media (width <= 768px) {
  .q-about-difference .difference .table__td .td {
    padding: 12px var(--space-block-xs);
  }
}
.q-about-difference .difference .table__td .td:first-child {
  align-items: center;
  text-align: center;
  background-color: var(--color-bg-ash);
  padding-inline: 10px;
}
@media (width <= 768px) {
  .q-about-difference .difference .table__td .td:first-child {
    padding-inline: 4px;
  }
}
.q-about-difference .difference .table__td .td:last-child {
  border-inline-end: 0;
  font-weight: 400;
}
@media (width <= 768px) {
  .q-about-difference .difference .table__td .td:last-child {
    justify-content: start;
  }
}

.q-about-step {
  background-color: var(--color-bg-primary);
  padding-block: var(--space-block-section);
}
.q-about-step .step__item {
  display: grid;
  grid-template-columns: 260px 1fr;
  align-items: flex-start;
  gap: var(--space-block-lg);
  background-color: var(--color-light);
  padding-block-end: var(--space-block-sm);
  padding-inline-end: var(--space-block-lg);
  position: relative;
}
@media (width <= 768px) {
  .q-about-step .step__item {
    grid-template-columns: 1fr;
    padding: 0;
    gap: var(--space-block-md);
  }
}
.q-about-step .step__item:not(:last-child) {
  margin-block-end: var(--space-block-lg);
}
.q-about-step .step__item:not(:last-child)::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 34px;
  height: 20px;
  bottom: -30px;
  left: 50%;
  translate: -50% 0;
  background-color: var(--color-secondary);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}
.q-about-step .step__image img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.q-about-step .step__body {
  margin-block: var(--space-block-md) var(--space-block-xs);
}
@media (width <= 768px) {
  .q-about-step .step__body {
    margin: 0 var(--space-block-sm) var(--space-block-md);
  }
}
.q-about-step .step__number {
  color: var(--color-primary);
  font-family: var(--typography-EN-title-md-m-font-family);
  font-weight: var(--typography-EN-title-md-m-font-weight);
  font-size: var(--typography-EN-title-md-m-font-size);
  line-height: var(--typography-EN-title-md-m-line-height);
  --letter-spacing: var(--typography-EN-title-md-m-letter-spacing);
  font-size: 1.25rem;
  margin-block-end: var(--space-block-xs);
  display: flex;
  align-items: center;
  gap: 8px;
  text-box: trim-both;
}
.q-about-step .step__number::before {
  content: "";
  display: inline-block;
  width: 16px;
  min-width: 16px;
  height: 2px;
  background-color: var(--color-primary);
}
.q-about-step .step__title {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  margin-block-end: 5px;
  text-box: trim-both;
}
.q-about-step .step__title .link {
  color: var(--color-primary);
  transition: opacity var(--sec);
}
.q-about-step .step__title .link:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-about-step .step__title .link:hover {
    opacity: var(--opacity);
  }
}

.q-about-faq {
  padding-block: var(--space-block-section);
}
.q-about-faq .faq__item {
  background-color: var(--color-light);
  border-radius: 0 20px;
  box-shadow: 0 0 14px color-mix(in srgb, var(--color-base) 10%, transparent);
  padding: 24px var(--space-block-sm);
}
@media (width <= 768px) {
  .q-about-faq .faq__item {
    padding: 14px var(--space-block-xs);
  }
}
.q-about-faq .faq__item:not(:last-child) {
  margin-block-end: var(--space-block-sm);
}
.q-about-faq .faq__question {
  display: grid;
  grid-template-columns: 1fr 22px;
  align-items: center;
  gap: 20px;
}
@media (width <= 768px) {
  .q-about-faq .faq__question {
    gap: 17px;
  }
}
.q-about-faq .faq__question .question {
  display: grid;
  grid-template-columns: 24px 1fr;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}
@media (width <= 768px) {
  .q-about-faq .faq__question .question {
    gap: 9px;
  }
}
.q-about-faq .faq__question .q {
  font-family: var(--typography-EN-title-md-m-font-family);
  font-weight: var(--typography-EN-title-md-m-font-weight);
  font-size: var(--typography-EN-title-md-m-font-size);
  line-height: var(--typography-EN-title-md-m-line-height);
  --letter-spacing: var(--typography-EN-title-md-m-letter-spacing);
  color: var(--color-primary);
  font-size: 30px;
  line-height: 1;
}
.q-about-faq .faq__question .title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
}
.q-about-faq .faq__answer-inner {
  margin: var(--space-block-sm) 40px 0;
}
@media (width <= 768px) {
  .q-about-faq .faq__answer-inner {
    margin: var(--space-block-xs) var(--space-block-xs) 0;
  }
}

.q-about-welcome {
  background-color: var(--color-bg-primary);
  padding-block: var(--space-block-section);
}
.q-about-welcome .welcome__image img {
  width: 100%;
}
.q-about-welcome .welcome__text {
  margin-block-start: -120px;
}
@media (width <= 768px) {
  .q-about-welcome .welcome__text {
    margin-block-start: -16px;
  }
}
.q-about-welcome .welcome__text p {
  background-color: var(--color-light);
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  padding: 5px var(--space-block-xs);
  display: inline;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  line-height: 2;
}
@media (width <= 768px) {
  .q-about-welcome .welcome__text p {
    padding-block: 6px;
    font-size: clamp(16px,3vw,30px);
    line-height: 2.4;
  }
}

.q-about-guide {
  padding-block: var(--space-block-section);
}

.q-cases-detail {
  margin-block-end: var(--space-block-xxl);
}
.q-cases-detail .cases-detail {
  display: grid;
  grid-template-columns: 28% 1fr;
  gap: var(--space-block-md);
}
@media (width <= 768px) {
  .q-cases-detail .cases-detail {
    grid-template-columns: 1fr;
  }
}
.q-cases-detail .cases-detail__menu {
  background-color: var(--color-light);
  padding: var(--space-block-sm) 26px var(--space-block-md);
  border-radius: 0 10px;
  position: sticky;
  top: calc(var(--scroll-adjust) + var(--space-block-sm));
}
@media (width <= 768px) {
  .q-cases-detail .cases-detail__menu {
    position: initial;
  }
}
.q-cases-detail .cases-detail__menu .title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  display: flex;
  align-items: center;
  gap: var(--space-block-xs);
  margin-inline-start: -26px;
  margin-block-end: var(--space-block-xs);
}
.q-cases-detail .cases-detail__menu .title::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 2px;
  background-color: var(--color-primary);
}
.q-cases-detail .cases-detail__menu .menu {
  display: flex;
  align-items: start;
  gap: var(--space-block-xs);
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  line-height: 1.5;
  transition: color var(--sec);
}
.q-cases-detail .cases-detail__menu .menu:not(:last-child) {
  margin-block-end: 15px;
}
@media (width <= 768px) {
  .q-cases-detail .cases-detail__menu .menu:not(:last-child) {
    margin-block-end: var(--space-block-xs);
  }
}
.q-cases-detail .cases-detail__menu .menu:focus-visible {
  color: var(--color-primary);
}
@media (hover: hover) and (pointer: fine) {
  .q-cases-detail .cases-detail__menu .menu:hover {
    color: var(--color-primary);
  }
}
.q-cases-detail .cases-detail__menu .menu::before {
  content: "";
  display: inline-block;
  width: 9px;
  min-width: 9px;
  height: 12px;
  margin-block-start: 0.6em;
  background-color: var(--color-secondary);
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
@media (width <= 768px) {
  .q-cases-detail .cases-detail__menu .menu::before {
    margin-block-start: 0.4em;
  }
}
@media (768px < width) {
  .q-cases-detail .cases-detail__menu .menu.active {
    color: var(--color-primary);
  }
}
.q-cases-detail .cases-detail .p-cases__column {
  display: grid;
  grid-template-columns: 40% 1fr;
  align-items: start;
  gap: var(--space-block-lg);
}
@media (width <= 920px) {
  .q-cases-detail .cases-detail .p-cases__column {
    gap: var(--space-block-sm);
    grid-template-columns: 37% 1fr;
  }
}
@media (width <= 768px) {
  .q-cases-detail .cases-detail .p-cases__column {
    grid-template-columns: 1fr;
  }
}
.q-cases-detail .cases-detail .p-cases__column:not(:last-child) {
  margin-block-end: var(--space-block-lg);
}
.q-cases-detail .cases-detail .p-cases__head {
  overflow: hidden;
  border-radius: 0 20px;
}
.q-cases-detail .cases-detail .p-cases__head img {
  width: 100%;
}
.q-cases-detail .cases-detail .p-cases__body .c-button {
  margin-block-start: var(--space-block-xs);
}
.q-cases-detail .cases-detail .p-cases__title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
}
.q-cases-detail .cases-detail .p-cases__box {
  background-color: var(--color-primary);
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  color: var(--color-light);
  padding: 0 10px;
  width: fit-content;
  margin-block-end: 5px;
}
.q-cases-detail .cases-detail .p-cases__sub {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  color: var(--color-primary);
  margin-block-end: var(--space-block-xs);
  line-height: 1.2;
}
.q-cases-detail .cases-detail .p-cases__list .list {
  display: flex;
  align-items: start;
  gap: 9px;
}
.q-cases-detail .cases-detail .p-cases__list .list::before {
  content: "";
  display: inline-block;
  width: 10px;
  min-width: 10px;
  aspect-ratio: 1/1;
  background-color: var(--color-secondary);
  margin-block-start: 0.8em;
}

.q-cases-detail-appeal {
  margin-block-end: var(--space-block-section);
}
@media (920px < width) {
  .q-cases-detail-appeal .appeal._small .appeal__catch .column {
    grid-template-columns: 28% 1fr;
  }
}
.q-cases-detail-appeal .appeal._small .appeal__catch .column__head {
  padding-inline: 35px;
}
@media (width <= 920px) {
  .q-cases-detail-appeal .appeal._small .appeal__catch .column__head .image {
    max-width: 200px;
    margin-inline: auto;
  }
}
@media (width <= 768px) {
  .q-cases-detail-appeal .appeal._small .appeal__catch .column__head .image {
    max-width: 300px;
  }
}
.q-cases-detail-appeal .appeal__catch {
  background-color: var(--color-light);
  padding: 1px var(--space-block-md) var(--space-block-md) var(--space-block-md);
  box-shadow: 0 3px 0 var(--color-bg-primary2);
  border-radius: 0 20px;
  margin-block-end: var(--space-block-lg);
  margin-block-start: 20px;
}
@media (width <= 768px) {
  .q-cases-detail-appeal .appeal__catch {
    padding-inline-start: var(--space-block-sm);
    margin-inline-end: calc(var(--l-section-space-inline) * -1);
  }
}
.q-cases-detail-appeal .appeal__catch .title {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  margin-block-start: -20px;
  margin-block-end: var(--space-block-lg);
}
@media (width <= 768px) {
  .q-cases-detail-appeal .appeal__catch .title {
    margin-inline: -20px;
  }
}
.q-cases-detail-appeal .appeal__catch .title .box {
  padding: 2px 10px;
  background-color: var(--color-light);
  border: 1px solid var(--color-primary);
  display: block;
  width: fit-content;
  line-height: 1.4;
}
.q-cases-detail-appeal .appeal__catch .title .box:not(:first-child) {
  margin-block-start: -1px;
}
@media (width <= 768px) {
  .q-cases-detail-appeal .appeal__catch .title .box {
    display: contents;
  }
}
@media (width <= 768px) {
  .q-cases-detail-appeal .appeal__catch .title .box-sp {
    padding: 2px 10px;
    background-color: var(--color-light);
    border: 1px solid var(--color-primary);
    display: block;
    width: fit-content;
    line-height: 1.4;
  }
  .q-cases-detail-appeal .appeal__catch .title .box-sp:not(:first-child) {
    margin-block-start: -1px;
  }
}
.q-cases-detail-appeal .appeal__catch .title .color {
  color: var(--color-primary);
}
.q-cases-detail-appeal .appeal__catch .column {
  display: grid;
  grid-template-columns: 44% 1fr;
  gap: var(--space-block-md);
  align-items: start;
}
@media (width <= 920px) {
  .q-cases-detail-appeal .appeal__catch .column {
    grid-template-columns: 1fr;
    gap: var(--space-block-xs);
  }
}
.q-cases-detail-appeal .appeal__catch .column__head {
  background-color: var(--color-bg-base);
  padding: 12px;
  border-radius: 10px;
}
.q-cases-detail-appeal .appeal__catch .column__head .image {
  margin-block-start: -32px;
}
.q-cases-detail-appeal .appeal__catch .column__head img {
  width: 100%;
}
.q-cases-detail-appeal .appeal__catch .column__body {
  margin-block-start: -22px;
}
@media (width <= 920px) {
  .q-cases-detail-appeal .appeal__catch .column__body {
    margin-block-start: 0;
  }
}
.q-cases-detail-appeal .appeal__catch .column__body .bubble {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  background-color: var(--color-bg-base);
  border-radius: 10px;
  filter: drop-shadow(0 1px 0 color-mix(in srgb, var(--color-base) 16%, transparent));
  padding: 5px 20px;
  width: fit-content;
  position: relative;
  margin-block-end: 17px;
}
@media (width <= 768px) {
  .q-cases-detail-appeal .appeal__catch .column__body .bubble {
    font-size: 1rem;
  }
}
.q-cases-detail-appeal .appeal__catch .column__body .bubble::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 7px;
  height: 8px;
  bottom: -7px;
  left: 50%;
  translate: -50% 0;
  background-color: var(--color-bg-base);
  clip-path: polygon(0 0, 0% 100%, 100% 0);
}
.q-cases-detail-appeal .appeal__catch .column__body .catch {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
}
.q-cases-detail-appeal .appeal__catch .column__body .catch .color {
  color: var(--color-primary);
}
.q-cases-detail-appeal .appeal__catch .column__body .sub {
  margin-block-start: 15px;
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  color: var(--color-ash);
  font-weight: 700;
}
@media (width <= 768px) {
  .q-cases-detail-appeal .appeal__catch .column__body .sub {
    font-size: 0.875rem;
  }
}
.q-cases-detail-appeal .appeal__skill .title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  text-align: center;
  margin-block-end: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-cases-detail-appeal .appeal__skill .title {
    text-align: left;
  }
}
.q-cases-detail-appeal .appeal__skill .title .line {
  border-block-end: 2px solid var(--color-secondary);
}
.q-cases-detail-appeal .appeal__skill .column {
  margin-block: var(--space-block-md);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  justify-content: space-between;
  gap: var(--space-block-md);
}
@media (width <= 768px) {
  .q-cases-detail-appeal .appeal__skill .column {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0 8px;
    margin-block: var(--space-block-md) var(--space-block-lg);
    max-width: 500px;
    margin-inline: auto;
  }
}
@media (width <= 768px) {
  .q-cases-detail-appeal .appeal__skill .column .image {
    width: calc(50% - 4px);
  }
}
.q-cases-detail-appeal .appeal__skill .column img {
  width: 100%;
}
@media (width <= 768px) {
  .q-cases-detail-appeal .appeal__skill .c-text {
    text-align: left;
  }
}
.q-cases-detail-appeal .appeal__button {
  display: block;
  width: fit-content;
  margin-inline: auto;
  transition: opacity var(--sec);
  overflow: hidden;
  border-radius: 0 20px;
  box-shadow: 0 0 14px color-mix(in srgb, var(--color-base) 10%, transparent);
  max-width: 580px;
  margin-inline: auto;
}
@media (width <= 768px) {
  .q-cases-detail-appeal .appeal__button {
    max-width: 400px;
  }
}
.q-cases-detail-appeal .appeal__button:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-cases-detail-appeal .appeal__button:hover {
    opacity: var(--opacity);
  }
}
.q-cases-detail-appeal .appeal__button img {
  width: 100%;
}

.q-cases-detail-check {
  margin-block-end: var(--space-block-section);
}
.q-cases-detail-check .check {
  background-color: var(--color-light);
  padding: 26px var(--space-block-md);
  margin-block: var(--space-block-lg);
  border-radius: 0 20px;
}
@media (width <= 768px) {
  .q-cases-detail-check .check {
    margin-block: var(--space-block-md);
    padding-inline: var(--space-block-sm);
  }
}
.q-cases-detail-check .check .check_list {
  display: flex;
  align-items: center;
  gap: 16px;
}
.q-cases-detail-check .check .check_list:not(:last-child) {
  margin-block-end: 15px;
}
.q-cases-detail-check .check .icon {
  min-width: 24px;
  width: 24px;
  display: flex;
}
.q-cases-detail-check .check .list {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
}
.q-cases-detail-check .check .list .color {
  color: var(--color-primary);
}
.q-cases-detail-check .bubble {
  display: grid;
  grid-template-columns: 120px 1fr;
  align-items: center;
  gap: 25px;
  margin-inline-end: 60px;
}
@media (width <= 1120px) {
  .q-cases-detail-check .bubble {
    margin-inline-end: 0;
  }
}
@media (width <= 768px) {
  .q-cases-detail-check .bubble {
    grid-template-columns: 60px 1fr;
    gap: 20px;
    align-items: start;
  }
}
.q-cases-detail-check .bubble_image img {
  width: 100%;
}
.q-cases-detail-check .bubble_text {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  background-color: var(--color-light);
  border-radius: 10px;
  filter: drop-shadow(0 2px 0 var(--color-bg-primary));
  padding: 26px 12px 26px 17px;
  min-height: 76px;
  position: relative;
  display: flex;
  align-items: center;
}
@media (width <= 768px) {
  .q-cases-detail-check .bubble_text {
    padding: 12px;
    line-height: 1.5714285714;
    min-height: auto;
  }
}
.q-cases-detail-check .bubble_text::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  height: 10px;
  top: 20px;
  left: -11px;
  background-color: var(--color-light);
  clip-path: polygon(0 0, 100% 100%, 100% 0);
}

.q-cases-detail-support {
  margin-block-end: var(--space-block-section);
}
.q-cases-detail-support .text {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  margin-block-end: var(--space-block-sm);
}
.q-cases-detail-support .column {
  display: grid;
  grid-template-columns: 51% 1fr;
  gap: var(--space-block-lg);
}
@media (width <= 920px) {
  .q-cases-detail-support .column {
    grid-template-columns: 1fr;
    gap: var(--space-block-sm);
  }
}
.q-cases-detail-support .column .image {
  overflow: hidden;
  border-radius: 0 20px;
}
.q-cases-detail-support .column .image img {
  width: 100%;
}
.q-cases-detail-support .column .list {
  margin-block-end: var(--space-block-xs);
}
.q-cases-detail-support .column .list .list-item {
  display: flex;
  gap: 12px;
  align-items: start;
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
}
.q-cases-detail-support .column .list .list-item::before {
  content: "";
  display: inline-block;
  width: 12px;
  aspect-ratio: 1/1;
  background-color: var(--color-secondary);
  margin-block-start: 0.6em;
}
.q-cases-detail-support .column .catch .box {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  padding: 2px 13px;
  background-color: var(--color-light);
  border: 1px solid var(--color-primary);
  display: block;
  width: fit-content;
  line-height: 1.4;
}
.q-cases-detail-support .column .catch .box:not(:last-child) {
  margin-block-end: 4px;
}
.q-cases-detail-support .column .catch .box .color {
  color: var(--color-primary);
}

.q-cases-detail-about {
  margin-block-end: var(--space-block-section);
}
.q-cases-detail-about .image {
  margin-block-end: var(--space-block-lg);
  overflow: hidden;
  border-radius: 0 20px;
}
@media (width <= 768px) {
  .q-cases-detail-about .image {
    margin-block-end: var(--space-block-md);
  }
}
.q-cases-detail-about .image img {
  width: 100%;
}
.q-cases-detail-about .title {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  margin-block-end: var(--space-block-xs);
}

.q-cases-detail-reason {
  margin-block-end: var(--space-block-section);
}

.q-cases-detail-commit {
  margin-block-end: var(--space-block-section);
}

.q-cases-detail-step {
  margin-block-end: var(--space-block-section);
}
.q-cases-detail-step .step__column {
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: var(--space-block-sm);
  align-items: start;
  position: relative;
}
@media (width <= 768px) {
  .q-cases-detail-step .step__column {
    grid-template-columns: 1fr;
  }
}
.q-cases-detail-step .step__column:not(:last-child) {
  margin-block-end: var(--space-block-lg);
}
.q-cases-detail-step .step__column:last-child::after {
  content: none;
}
.q-cases-detail-step .step__column::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 34px;
  aspect-ratio: 34/20;
  bottom: -30px;
  left: 80px;
  background-color: var(--color-secondary);
  clip-path: polygon(0 0, 50% 100%, 100% 0);
}
@media (width <= 768px) {
  .q-cases-detail-step .step__column::after {
    left: 50%;
    translate: -50% 0;
  }
}
.q-cases-detail-step .step__head img {
  width: 100%;
}
.q-cases-detail-step .step__number {
  font-family: var(--typography-EN-title-md-m-font-family);
  font-weight: var(--typography-EN-title-md-m-font-weight);
  font-size: var(--typography-EN-title-md-m-font-size);
  line-height: var(--typography-EN-title-md-m-line-height);
  --letter-spacing: var(--typography-EN-title-md-m-letter-spacing);
  font-size: 1.25rem;
  color: var(--color-primary);
  margin-block-end: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-cases-detail-step .step__number {
    margin-block-end: 0;
  }
}
.q-cases-detail-step .step__title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
}
.q-cases-detail-step .step__title .link {
  color: var(--color-primary);
  transition: opacity var(--sec);
}
.q-cases-detail-step .step__title .link:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-cases-detail-step .step__title .link:hover {
    opacity: var(--opacity);
  }
}
.q-cases-detail-step .bubble {
  display: grid;
  grid-template-columns: 1fr 120px;
  align-items: center;
  gap: 25px;
  margin-inline-end: 60px;
}
@media (width <= 1120px) {
  .q-cases-detail-step .bubble {
    margin-block-start: var(--space-block-lg);
    margin-inline-end: 0;
  }
}
@media (width <= 768px) {
  .q-cases-detail-step .bubble {
    grid-template-columns: 1fr 60px;
    align-items: start;
    gap: 20px;
  }
}
.q-cases-detail-step .bubble_image img {
  width: 100%;
}
.q-cases-detail-step .bubble_text {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  background-color: var(--color-light);
  border-radius: 10px;
  filter: drop-shadow(0 2px 0 var(--color-bg-primary));
  padding: 26px 12px 26px 17px;
  position: relative;
}
@media (width <= 768px) {
  .q-cases-detail-step .bubble_text {
    padding: 12px 16px;
    line-height: 1.5714285714;
  }
}
.q-cases-detail-step .bubble_text::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  height: 10px;
  top: 20px;
  right: -11px;
  background-color: var(--color-light);
  clip-path: polygon(0 0, 0 100%, 100% 0);
}

.q-cases-detail-voice {
  margin-block-end: var(--space-block-section);
}
.q-cases-detail-voice .voice__item {
  display: grid;
  grid-template-columns: 120px 1fr;
  align-items: start;
  gap: 25px;
}
@media (width <= 768px) {
  .q-cases-detail-voice .voice__item {
    grid-template-columns: 60px 1fr;
    gap: 20px;
  }
}
.q-cases-detail-voice .voice__item:not(:last-child) {
  margin-block-end: var(--space-block-sm);
}
.q-cases-detail-voice .voice__image {
  border-radius: 50%;
  overflow: hidden;
}
@media (width <= 768px) {
  .q-cases-detail-voice .voice__image {
    max-width: 100px;
  }
}
.q-cases-detail-voice .voice__image img {
  width: 100%;
}
.q-cases-detail-voice .voice__info {
  background-color: var(--color-light);
  border-radius: 10px;
  filter: drop-shadow(0 2px 0 var(--color-bg-primary));
  padding: var(--space-block-sm) 24px;
  position: relative;
}
@media (width <= 768px) {
  .q-cases-detail-voice .voice__info {
    padding: var(--space-block-xs) 14px;
  }
}
.q-cases-detail-voice .voice__info::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  height: 10px;
  top: 50px;
  left: -11px;
  background-color: var(--color-light);
  clip-path: polygon(0 0, 100% 100%, 100% 0);
}
@media (width <= 768px) {
  .q-cases-detail-voice .voice__info::before {
    top: 20px;
  }
}
.q-cases-detail-voice .voice__title {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
}
@media (width <= 768px) {
  .q-cases-detail-voice .voice__title {
    line-height: 1.5714285714;
    margin-block-end: var(--space-block-xs);
  }
}
.q-cases-detail-voice .voice__title .color {
  color: var(--color-primary);
}
@media (width <= 768px) {
  .q-cases-detail-voice .voice .c-text {
    line-height: 1.5714285714;
  }
}

.q-cases-detail-price {
  margin-block-end: var(--space-block-section);
}
.q-cases-detail-price .price {
  background-color: var(--color-light);
  border-radius: 10px;
  filter: drop-shadow(0 2px 0 var(--color-bg-primary));
  padding: 8px 26px 8px 26px;
  margin-block-end: var(--space-block-lg);
  width: fit-content;
  min-width: 430px;
  display: flex;
  align-items: center;
}
@media (width <= 768px) {
  .q-cases-detail-price .price {
    padding-inline: 15px;
    min-width: auto;
  }
}
.q-cases-detail-price .price .title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  min-width: 140px;
}
@media (width <= 768px) {
  .q-cases-detail-price .price .title {
    min-width: auto;
  }
}
.q-cases-detail-price .price .text {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  font-size: 2.25rem;
  padding-inline-start: 26px;
  margin-inline-start: 26px;
  border-inline-start: 1px solid var(--color-bg-primary2);
}
@media (width <= 768px) {
  .q-cases-detail-price .price .text {
    padding-inline-start: 16px;
    margin-inline-start: 16px;
  }
}
.q-cases-detail-price .price .text._fit {
  display: flex;
  padding-block: var(--space-block-xs);
}
.q-cases-detail-price .price .text .small {
  font-size: 1.625rem;
}
.q-cases-detail-price .bnr {
  display: block;
}
@media (width <= 768px) {
  .q-cases-detail-price .bnr {
    margin-inline: calc(50% - calc(var(--vw) * 50));
    width: calc(var(--vw) * 100);
  }
}
.q-cases-detail-price .bnr img {
  width: 100%;
}

.q-cases-detail-message .message {
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: var(--space-block-lg);
}
@media (width <= 768px) {
  .q-cases-detail-message .message {
    grid-template-columns: 1fr;
    gap: var(--space-block-sm);
  }
}
.q-cases-detail-message .message__head img {
  width: 100%;
}
.q-cases-detail-message .message .title {
  font-weight: 700;
}

.q-cases .cases__block {
  margin-block-end: var(--space-block-section);
}
.q-cases .cases__title {
  background-color: var(--color-light);
  padding: 8px var(--space-block-sm);
  margin-block-end: var(--space-block-md);
  border-radius: 0 10px;
  position: relative;
  font-family: var(--typography-title-xlg-b-font-family);
  font-weight: var(--typography-title-xlg-b-font-weight);
  font-size: var(--typography-title-xlg-b-font-size);
  line-height: var(--typography-title-xlg-b-line-height);
  --letter-spacing: var(--typography-title-xlg-b-letter-spacing);
  color: var(--color-primary);
  text-box: trim-both;
}
@media (width <= 768px) {
  .q-cases .cases__title {
    margin-block-end: var(--space-block-sm);
  }
}
.q-cases .cases__title::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 250px;
  height: 2px;
  top: 0;
  left: 0;
  background-color: var(--color-primary);
}
@media (width <= 768px) {
  .q-cases .cases__title::before {
    width: 140px;
  }
}
.q-cases .cases__column {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-block-md) var(--space-block-lg);
}
@media (width <= 768px) {
  .q-cases .cases__column {
    grid-template-columns: 1fr;
    gap: var(--space-block-xs);
  }
}
.q-cases .cases__item {
  background-color: var(--color-light);
  padding: var(--space-block-xs) var(--space-block-sm) var(--space-block-xs) var(--space-block-xs);
  display: grid;
  grid-template-columns: 41% 1fr;
  gap: var(--space-block-sm);
  border-radius: 0 20px;
  transition: all var(--sec);
}
@media (width <= 768px) {
  .q-cases .cases__item {
    grid-template-columns: 34% 1fr;
    gap: var(--space-block-xs);
    padding-inline-end: var(--space-block-xs);
  }
}
.q-cases .cases__item:focus-visible {
  box-shadow: 0 0 20px var(--color-primary);
  color: var(--color-primary);
}
.q-cases .cases__item:focus-visible .image img {
  scale: 1.1;
}
@media (hover: hover) and (pointer: fine) {
  .q-cases .cases__item:hover {
    box-shadow: 0 0 20px var(--color-primary);
    color: var(--color-primary);
  }
  .q-cases .cases__item:hover .image img {
    scale: 1.1;
  }
}
.q-cases .cases__item .image {
  overflow: hidden;
  border-radius: 0 10px;
}
@media (width <= 768px) {
  .q-cases .cases__item .image {
    max-height: 110px;
  }
}
.q-cases .cases__item .image img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: scale var(--sec);
}
.q-cases .cases__item .info {
  padding-block: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-cases .cases__item .info {
    padding-block: 0;
  }
}
.q-cases .cases__item .sub {
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  margin-block-end: var(--space-block-xs);
  color: var(--color-primary);
  line-height: 1.4285714286;
}
@media (width <= 768px) {
  .q-cases .cases__item .sub {
    margin-block-end: 5px;
    line-height: 1.6363636364;
  }
}
.q-cases .cases__item .title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  text-box: trim-both;
}
.q-cases .cases__item .button {
  display: flex;
  align-items: center;
  gap: var(--space-block-xs);
  justify-content: end;
  color: var(--color-primary);
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  margin-block-start: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-cases .cases__item .button {
    margin-block-start: 13px;
  }
}

.q-contact-catch .catch {
  margin-block-end: var(--space-block-sm);
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  text-align: center;
}
.q-contact-catch .catch p {
  background-color: var(--color-light);
  padding: 6px 10px;
  display: inline;
  box-decoration-break: clone;
  -webkit-box-decoration-break: clone;
  line-height: 2.2;
  text-box: trim-both;
}
.q-contact-catch .kome {
  text-align: center;
}

.q-contact-line {
  padding-block: var(--space-block-section);
}
.q-contact-line .recommend {
  display: grid;
  grid-template-columns: auto 73%;
  align-items: flex-start;
  justify-content: space-between;
  position: relative;
  margin-block-end: var(--space-block-sm);
  margin-inline-end: 10px;
  padding: var(--space-block-sm) 50px;
}
@media (width <= 1120px) {
  .q-contact-line .recommend {
    gap: var(--space-block-sm);
    grid-template-columns: 1fr;
    padding-inline: var(--space-block-xs);
    padding-block-start: var(--space-block-xs);
  }
}
.q-contact-line .recommend::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: var(--color-light);
  border: 1px solid var(--color-base);
  border-radius: 10px;
  z-index: 1;
}
.q-contact-line .recommend::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 10px;
  left: 10px;
  background-color: var(--color-bg-base);
  border: 1px solid var(--color-base);
  border-radius: 10px;
}
.q-contact-line .recommend__title {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  position: relative;
  z-index: 2;
}
@media (width <= 1120px) {
  .q-contact-line .recommend__title {
    text-align: center;
  }
}
.q-contact-line .recommend__title .deco {
  text-align: center;
  margin-block: -30px 10px;
}
.q-contact-line .recommend__list {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 0.75fr 1fr;
  gap: 7px;
}
@media (width <= 768px) {
  .q-contact-line .recommend__list {
    grid-template-columns: 1fr;
  }
}
.q-contact-line .recommend__list .list {
  background-color: var(--color-secondary);
  color: var(--color-light);
  text-align: center;
  padding: 4px var(--space-block-xs);
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (width <= 768px) {
  .q-contact-line .recommend__list .list {
    border-radius: 18px;
  }
}
.q-contact-line .button {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-block-sm);
}
@media (width <= 1120px) {
  .q-contact-line .button {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (width <= 768px) {
  .q-contact-line .button {
    grid-template-columns: 1fr;
  }
}
.q-contact-line .button__item {
  background-color: var(--color-line);
  border-radius: 0 20px;
  color: var(--color-light);
  padding: 25px;
  transition: opacity var(--sec);
}
.q-contact-line .button__item:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-contact-line .button__item:hover {
    opacity: var(--opacity);
  }
}
.q-contact-line .button__title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  margin-block-end: 6px;
}
.q-contact-line .button__sub {
  text-align: center;
}

.q-contact-tel {
  padding-block: var(--space-block-section);
  background-color: var(--color-bg-primary);
}
.q-contact-tel .p-guide {
  grid-template-columns: repeat(3, 1fr);
}
@media (width <= 768px) {
  .q-contact-tel .p-guide {
    grid-template-columns: 1fr;
  }
}
.q-contact-tel .p-guide__item:focus-visible {
  box-shadow: none;
  color: var(--color-base);
}
@media (hover: hover) and (pointer: fine) {
  .q-contact-tel .p-guide__item:hover {
    box-shadow: none;
    color: var(--color-base);
  }
}
.q-contact-tel .p-guide__head .title {
  margin-block-end: -3px;
}
.q-contact-tel .p-guide__head .title p {
  line-height: inherit;
}
.q-contact-tel .p-guide__body .tel {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  margin-block-end: var(--space-block-xs);
  pointer-events: none;
}
@media (width <= 768px) {
  .q-contact-tel .p-guide__body .tel {
    pointer-events: all;
  }
}

.q-contact-faq {
  padding-block-start: var(--space-block-section);
}

.q-contact-form {
  padding-block: var(--space-block-section);
}

.q-contact-thanks {
  margin-block-end: var(--space-block-xxl);
}
.q-contact-thanks .title {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  text-align: center;
  margin-block-end: var(--space-block-md);
}
@media (width <= 768px) {
  .q-contact-thanks .c-text {
    text-align: left;
  }
}
.q-contact-thanks .button {
  display: block;
  margin: var(--space-block-md) auto 0;
  width: fit-content;
  background-color: var(--color-primary);
  text-align: center;
  color: var(--color-light);
  padding: 13px;
  width: 290px;
  border: 1px solid var(--color-primary);
  border-radius: 99px;
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  transition: all var(--sec);
}
.q-contact-thanks .button:focus-visible {
  background-color: var(--color-light);
  color: var(--color-primary);
}
@media (hover: hover) and (pointer: fine) {
  .q-contact-thanks .button:hover {
    background-color: var(--color-light);
    color: var(--color-primary);
  }
}

.q-diagnosis-bnr {
  margin-block-end: var(--space-block-section);
}
.q-diagnosis-bnr .bnr {
  display: grid;
  grid-template-columns: 34% 1fr;
}
@media (width <= 920px) {
  .q-diagnosis-bnr .bnr {
    grid-template-columns: 45% 1fr;
  }
}
@media (width <= 768px) {
  .q-diagnosis-bnr .bnr {
    grid-template-columns: 1fr;
    width: calc((--vw) * 100);
    margin-inline: calc(50% - calc(var(--vw) * 50));
  }
}
.q-diagnosis-bnr .bnr__head {
  background-color: var(--color-light);
  padding: var(--space-block-md) 0 var(--space-block-lg) var(--space-block-md);
}
@media (width <= 768px) {
  .q-diagnosis-bnr .bnr__head {
    padding: var(--space-block-md) var(--space-block-sm) var(--space-block-lg);
  }
}
.q-diagnosis-bnr .bnr__head .title {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  margin-block-end: 7px;
  line-height: 2.2;
}
@media (width <= 768px) {
  .q-diagnosis-bnr .bnr__head .title {
    line-height: 2;
    margin-block-end: 0;
  }
}
.q-diagnosis-bnr .bnr__head .title .line {
  color: var(--color-primary);
  border-block-end: 3px solid var(--color-primary);
  padding-block-end: 4px;
}
.q-diagnosis-bnr .bnr__head .title .color {
  font-family: var(--typography-title-xlg-b-font-family);
  font-weight: var(--typography-title-xlg-b-font-weight);
  font-size: var(--typography-title-xlg-b-font-size);
  line-height: var(--typography-title-xlg-b-line-height);
  --letter-spacing: var(--typography-title-xlg-b-letter-spacing);
  color: var(--color-primary);
}
.q-diagnosis-bnr .bnr__head .c-text {
  margin-inline-end: var(--space-block-md);
}
@media (width <= 768px) {
  .q-diagnosis-bnr .bnr__head .c-text {
    margin-inline-end: 0;
  }
}
.q-diagnosis-bnr .bnr__head .c-text .bold {
  font-weight: 700;
}
.q-diagnosis-bnr .bnr__body img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top left;
}

.q-diagnosis-situation {
  margin-block-end: var(--space-block-section);
}
.q-diagnosis-situation .situation__title {
  margin-block-end: var(--space-block-xs);
}
.q-diagnosis-situation .situation__title .title {
  background-color: var(--color-light);
  border: 2px solid var(--color-primary);
  border-radius: 999px;
  font-family: var(--typography-title-xlg-b-font-family);
  font-weight: var(--typography-title-xlg-b-font-weight);
  font-size: var(--typography-title-xlg-b-font-size);
  line-height: var(--typography-title-xlg-b-line-height);
  --letter-spacing: var(--typography-title-xlg-b-letter-spacing);
  text-align: center;
  padding: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-diagnosis-situation .situation__title .title {
    padding: 14px var(--space-block-xs);
  }
}
.q-diagnosis-situation .situation__title .arrow {
  position: relative;
  width: 12px;
  margin: -10px auto 0;
  aspect-ratio: 12/31;
}
.q-diagnosis-situation .situation__title .arrow::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 2px;
  height: 30px;
  top: 0;
  left: 50%;
  translate: -50% 0;
  background-color: var(--color-primary);
}
.q-diagnosis-situation .situation__title .arrow::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  aspect-ratio: 1/1;
  border-radius: 99px;
  bottom: 0;
  left: 0;
  background-color: var(--color-primary);
}
.q-diagnosis-situation .situation__column {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: var(--space-block-xs);
}
@media (width <= 920px) {
  .q-diagnosis-situation .situation__column {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (width <= 768px) {
  .q-diagnosis-situation .situation__column {
    grid-template-columns: 1fr;
  }
}
.q-diagnosis-situation .situation__item {
  background-color: var(--color-light);
}
@media (width <= 768px) {
  .q-diagnosis-situation .situation__item {
    display: grid;
    grid-template-columns: 39% 1fr;
    gap: 16px;
    padding: var(--space-block-xs);
    align-items: center;
    justify-content: space-between;
  }
}
.q-diagnosis-situation .situation__item .number {
  display: inline-block;
}
@media (width <= 768px) {
  .q-diagnosis-situation .situation__item .number {
    margin-inline-start: -10px;
    margin-block-end: var(--space-block-xs);
    width: 82px;
    display: flex;
  }
  .q-diagnosis-situation .situation__item .number img {
    width: 100%;
  }
}
.q-diagnosis-situation .situation__item .title {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  margin-inline-start: 17px;
  margin-block: -4px;
}
@media (width <= 768px) {
  .q-diagnosis-situation .situation__item .title {
    margin-inline-start: 0;
    font-size: 1.125rem;
    margin-block: 0;
  }
}
.q-diagnosis-situation .situation__item .title .small {
  font-size: 1.25rem;
}
@media (width <= 768px) {
  .q-diagnosis-situation .situation__item .title .small {
    font-size: 1.125rem;
  }
}
.q-diagnosis-situation .situation__item .image {
  margin: 0 22px var(--space-block-xs);
}
@media (width <= 768px) {
  .q-diagnosis-situation .situation__item .image {
    margin: 0 var(--space-block-xs) 0 0;
  }
}
.q-diagnosis-situation .situation__item .image img {
  width: 100%;
}
.q-diagnosis-situation .situation__item .level {
  margin: 0 22px var(--space-block-xs);
}
@media (width <= 768px) {
  .q-diagnosis-situation .situation__item .level {
    margin: 0 var(--space-block-md) var(--space-block-xs) 0;
    max-width: 270px;
  }
}
.q-diagnosis-situation .situation__item .level img {
  width: 100%;
}
.q-diagnosis-situation .situation__item .text {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  line-height: 1.5;
  margin: 0 var(--space-block-sm) var(--space-block-sm) var(--space-block-sm);
}
@media (width <= 768px) {
  .q-diagnosis-situation .situation__item .text {
    margin: 0;
  }
}
.q-diagnosis-situation .situation__item .text .red {
  color: var(--color-tertiary2);
}
.q-diagnosis-situation .situation__item .text .primary {
  color: var(--color-primary);
}

.q-diagnosis-contact {
  padding-block: var(--space-block-section);
  position: relative;
}
.q-diagnosis-contact .contact {
  position: relative;
  z-index: 1;
}
.q-diagnosis-contact .contact__bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.q-diagnosis-contact .contact__bg img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
@media (width <= 768px) {
  .q-diagnosis-contact .contact__bg img {
    object-position: top center;
  }
}
.q-diagnosis-contact .contact__title {
  display: flex;
  flex-direction: column-reverse;
  text-align: center;
  margin-block-end: var(--space-block-lg);
}
.q-diagnosis-contact .contact__title .title {
  font-family: var(--typography-title-xxlg-b-font-family);
  font-weight: var(--typography-title-xxlg-b-font-weight);
  font-size: var(--typography-title-xxlg-b-font-size);
  line-height: var(--typography-title-xxlg-b-line-height);
  --letter-spacing: var(--typography-title-xxlg-b-letter-spacing);
  color: var(--color-light);
}
.q-diagnosis-contact .contact__title .sub {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  background-color: var(--color-light);
  padding: 3px 14px;
  position: relative;
  width: fit-content;
  margin: 0 auto 12px;
}
@media (width <= 768px) {
  .q-diagnosis-contact .contact__title .sub {
    padding-inline: var(--space-block-sm);
    margin-block-end: 17px;
  }
}
.q-diagnosis-contact .contact__title .sub::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 20px;
  aspect-ratio: 2/1;
  bottom: -14px;
  left: 50%;
  translate: -50% 0;
  background-color: var(--color-light);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}
.q-diagnosis-contact .contact__title .sub .red {
  color: var(--color-tertiary2);
}
.q-diagnosis-contact .contact__column {
  display: grid;
  grid-template-columns: 56% 1fr;
  align-items: flex-end;
}
@media (width <= 768px) {
  .q-diagnosis-contact .contact__column {
    grid-template-columns: 1fr;
  }
}
.q-diagnosis-contact .contact__head {
  height: 100%;
}
.q-diagnosis-contact .contact__head img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.q-diagnosis-contact .contact__body {
  background-color: var(--color-light);
  padding: 50px var(--space-block-lg) 60px;
  margin-block-start: 50px;
}
@media (width <= 768px) {
  .q-diagnosis-contact .contact__body {
    padding: 12px var(--space-block-sm) var(--space-block-md);
    margin-block-start: 0;
  }
}
.q-diagnosis-contact .contact__body .emphasis {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.6;
}
@media (width <= 768px) {
  .q-diagnosis-contact .contact__body .emphasis {
    font-size: 1.125rem;
  }
}
.q-diagnosis-contact .contact__body .primary {
  color: var(--color-primary);
}

.q-diagnosis-multifaceted {
  padding-block: var(--space-block-section);
}
.q-diagnosis-multifaceted .c-heading2 .big {
  font-size: 2.875rem;
}
.q-diagnosis-multifaceted .multifaceted__catch {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  text-align: center;
  margin-block-end: var(--space-block-sm);
}
.q-diagnosis-multifaceted .multifaceted__title {
  font-family: var(--typography-title-xlg-b-font-family);
  font-weight: var(--typography-title-xlg-b-font-weight);
  font-size: var(--typography-title-xlg-b-font-size);
  line-height: var(--typography-title-xlg-b-line-height);
  --letter-spacing: var(--typography-title-xlg-b-letter-spacing);
  margin-block: -6px -3px;
}
.q-diagnosis-multifaceted .multifaceted__title .big {
  font-size: 2.5rem;
}
.q-diagnosis-multifaceted .multifaceted__item {
  background-color: var(--color-light);
  border-block-start: 4px solid var(--color-primary);
}
.q-diagnosis-multifaceted .multifaceted__item:not(:last-child) {
  margin-block-end: 4px;
}
.q-diagnosis-multifaceted .multifaceted__item .heading {
  color: var(--color-light);
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  background-color: var(--color-primary);
  padding: 0 18px 0 11px;
  width: fit-content;
  position: relative;
  min-width: 133px;
  margin-block-start: -1px;
}
.q-diagnosis-multifaceted .multifaceted__item .heading::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 22px;
  height: calc(100% + 1px);
  top: -1px;
  right: -20px;
  background-color: var(--color-primary);
  clip-path: polygon(0 0, 100% 0, 9% 100%, 0% 100%);
}
.q-diagnosis-multifaceted .multifaceted__item .c-text {
  padding: 8px var(--space-block-sm) var(--space-block-xs) var(--space-block-sm);
}
.q-diagnosis-multifaceted .conditions {
  display: grid;
  grid-template-columns: 49% 1fr;
  gap: 60px;
  margin-block-end: var(--space-block-lg);
}
@media (width <= 920px) {
  .q-diagnosis-multifaceted .conditions {
    gap: var(--space-block-md);
  }
}
@media (width <= 768px) {
  .q-diagnosis-multifaceted .conditions {
    display: flex;
    flex-direction: column-reverse;
  }
}
.q-diagnosis-multifaceted .conditions__head {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-block-xs);
  background-color: var(--color-light);
  border-radius: 20px;
  padding: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-diagnosis-multifaceted .conditions__head {
    padding: 5px;
    gap: 5px;
  }
}
.q-diagnosis-multifaceted .conditions__image {
  overflow: hidden;
}
.q-diagnosis-multifaceted .conditions__image:nth-child(1) {
  border-radius: 20px 0 0 0;
  grid-area: 1/1/2/2;
}
.q-diagnosis-multifaceted .conditions__image:nth-child(2) {
  border-radius: 0 20px 0 0;
  grid-area: 1/2/2/3;
}
.q-diagnosis-multifaceted .conditions__image:nth-child(3) {
  border-radius: 0 0 20px 20px;
  grid-area: 2/1/3/3;
}
.q-diagnosis-multifaceted .conditions__image img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.q-diagnosis-multifaceted .habit {
  display: grid;
  grid-template-columns: 40% 1fr;
  gap: 50px;
  margin-block-end: 90px;
}
@media (width <= 920px) {
  .q-diagnosis-multifaceted .habit {
    gap: var(--space-block-md);
  }
}
@media (width <= 768px) {
  .q-diagnosis-multifaceted .habit {
    grid-template-columns: 1fr;
  }
}
.q-diagnosis-multifaceted .habit__head {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-block-xs);
  background-color: var(--color-light);
  border-radius: 20px;
  padding: var(--space-block-xs);
  margin-block-start: 20px;
}
@media (width <= 768px) {
  .q-diagnosis-multifaceted .habit__head {
    margin-block-start: 0;
    padding: 5px;
    gap: 5px;
  }
}
.q-diagnosis-multifaceted .habit__image {
  overflow: hidden;
}
.q-diagnosis-multifaceted .habit__image:nth-child(1) {
  border-radius: 20px 0 0 20px;
  grid-area: 1/1/3/2;
}
.q-diagnosis-multifaceted .habit__image:nth-child(2) {
  border-radius: 0 20px 0 0;
  grid-area: 1/2/2/3;
}
.q-diagnosis-multifaceted .habit__image:nth-child(3) {
  border-radius: 0 0 20px 0;
  grid-area: 2/2/3/3;
}
.q-diagnosis-multifaceted .habit__image img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.q-diagnosis-multifaceted .report {
  display: grid;
  grid-template-columns: 27% 1fr;
  gap: var(--space-block-md);
  align-items: center;
  background-color: var(--color-primary);
  border-radius: 20px;
  padding: 0 40px 24px 40px;
  position: relative;
}
@media (width <= 768px) {
  .q-diagnosis-multifaceted .report {
    grid-template-columns: 1fr;
    gap: var(--space-block-sm);
    padding: 0 var(--space-block-sm) 35px;
  }
}
.q-diagnosis-multifaceted .report::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  top: var(--space-block-xs);
  left: var(--space-block-xs);
  border: 1px solid var(--color-light);
  border-radius: 20px;
}
@media (width <= 768px) {
  .q-diagnosis-multifaceted .report::before {
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    left: 5px;
    top: 5px;
  }
}
.q-diagnosis-multifaceted .report__head {
  position: relative;
  z-index: 1;
  margin-block-start: -10px;
}
@media (width <= 768px) {
  .q-diagnosis-multifaceted .report__head {
    max-width: 300px;
    margin-inline: auto;
  }
}
.q-diagnosis-multifaceted .report__head img {
  width: 100%;
}
.q-diagnosis-multifaceted .report__body {
  position: relative;
  z-index: 1;
  margin-block: 33px 2px;
  color: var(--color-light);
}
@media (width <= 768px) {
  .q-diagnosis-multifaceted .report__body {
    margin-block: 0;
  }
}
.q-diagnosis-multifaceted .report__body .title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  margin-block-end: var(--space-block-xs);
}
.q-diagnosis-multifaceted .report__body .title .big {
  font-family: var(--typography-title-xlg-b-font-family);
  font-weight: var(--typography-title-xlg-b-font-weight);
  font-size: var(--typography-title-xlg-b-font-size);
  line-height: var(--typography-title-xlg-b-line-height);
  --letter-spacing: var(--typography-title-xlg-b-letter-spacing);
}
.q-diagnosis-multifaceted .report__body .text {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
}
@media (width <= 768px) {
  .q-diagnosis-multifaceted .report__body .text {
    line-height: 1.7142857143;
  }
}

.q-diagnosis-report {
  padding-block: var(--space-block-section);
  background-color: var(--color-bg-primary2);
}
.q-diagnosis-report .report__title {
  display: flex;
  flex-direction: column-reverse;
  text-align: center;
  margin-block-end: var(--space-block-lg);
}
@media (width <= 768px) {
  .q-diagnosis-report .report__title {
    margin-block-end: var(--space-block-sm);
  }
}
.q-diagnosis-report .report__title .title {
  font-family: var(--typography-title-xxlg-b-font-family);
  font-weight: var(--typography-title-xxlg-b-font-weight);
  font-size: var(--typography-title-xxlg-b-font-size);
  line-height: var(--typography-title-xxlg-b-line-height);
  --letter-spacing: var(--typography-title-xxlg-b-letter-spacing);
}
.q-diagnosis-report .report__title .title .primary {
  color: var(--color-primary);
}
.q-diagnosis-report .report__title .sub {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  background-color: var(--color-light);
  padding: 4px 14px;
  position: relative;
  width: fit-content;
  margin: 0 auto 18px;
}
.q-diagnosis-report .report__title .sub::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 20px;
  aspect-ratio: 2/1;
  bottom: -14px;
  left: 50%;
  translate: -50% 0;
  background-color: var(--color-light);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}
.q-diagnosis-report .report__title .sub .red {
  color: var(--color-tertiary2);
}
.q-diagnosis-report .report__step {
  display: grid;
  grid-template-columns: auto 29% auto 1fr;
  gap: var(--space-block-sm);
  margin-block-end: var(--space-block-lg);
  margin-inline-start: 60px;
}
@media (width <= 1120px) {
  .q-diagnosis-report .report__step {
    margin-inline-start: 0;
  }
}
@media (width <= 768px) {
  .q-diagnosis-report .report__step {
    grid-template-columns: 1fr;
    gap: 0;
    position: relative;
  }
}
.q-diagnosis-report .report__step .illust {
  margin-block-start: -73px;
}
@media (width <= 1120px) {
  .q-diagnosis-report .report__step .illust {
    margin-block-start: 0;
  }
}
@media (width <= 768px) {
  .q-diagnosis-report .report__step .illust {
    position: absolute;
    right: 10px;
    top: 5px;
  }
}
.q-diagnosis-report .report__step .arrow {
  position: relative;
  width: 26px;
  height: 41px;
  top: 62%;
  left: 0;
  translate: 0 -50%;
  background-color: var(--color-secondary);
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
@media (width <= 768px) {
  .q-diagnosis-report .report__step .arrow {
    rotate: 90deg;
    top: 0;
    left: 50%;
    translate: -50% 0;
  }
}
.q-diagnosis-report .report__step .step_title {
  font-family: var(--typography-EN-title-md-m-font-family);
  font-weight: var(--typography-EN-title-md-m-font-weight);
  font-size: var(--typography-EN-title-md-m-font-size);
  line-height: var(--typography-EN-title-md-m-line-height);
  --letter-spacing: var(--typography-EN-title-md-m-letter-spacing);
  font-size: 1.625rem;
  color: var(--color-light);
  background-color: var(--color-primary);
  padding: 2px 18px 2px 11px;
  width: fit-content;
  position: relative;
}
.q-diagnosis-report .report__step .step_title::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 22px;
  height: 100%;
  top: 0;
  right: -20px;
  background-color: var(--color-primary);
  clip-path: polygon(0 0, 10% 0, 100% 100%, 0% 100%);
}
.q-diagnosis-report .report__step .step_title .small {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  margin-inline-start: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-diagnosis-report .report__step .step_title .small {
    font-size: 1rem;
  }
}
.q-diagnosis-report .report__step .step_text {
  background-color: var(--color-light);
  display: flex;
  justify-content: center;
  padding: 12px var(--space-block-md) 20px var(--space-block-sm);
  height: calc(100% - 41px);
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
}
@media (width <= 768px) {
  .q-diagnosis-report .report__step .step_text {
    justify-content: start;
    line-height: 1.7142857143;
    padding-block: 18px;
  }
}
.q-diagnosis-report .report__treatment {
  background-color: var(--color-light);
  border-radius: 20px;
  padding: var(--space-block-lg) var(--space-block-lg) 0 var(--space-block-lg);
}
@media (width <= 768px) {
  .q-diagnosis-report .report__treatment {
    padding: var(--space-block-lg) var(--space-block-sm) 0 var(--space-block-sm);
  }
}
.q-diagnosis-report .report__treatment .treatment__title {
  font-family: var(--typography-title-xlg-b-font-family);
  font-weight: var(--typography-title-xlg-b-font-weight);
  font-size: var(--typography-title-xlg-b-font-size);
  line-height: var(--typography-title-xlg-b-line-height);
  --letter-spacing: var(--typography-title-xlg-b-letter-spacing);
  margin-block-end: var(--space-block-sm);
  text-align: center;
}
.q-diagnosis-report .report__treatment .treatment__column {
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr;
  gap: 0 35px;
  justify-content: center;
  margin-block-end: 15px;
  max-width: 920px;
  margin-inline: auto;
}
@media (width <= 920px) {
  .q-diagnosis-report .report__treatment .treatment__column {
    gap: 0 var(--space-block-xs);
  }
}
@media (width <= 768px) {
  .q-diagnosis-report .report__treatment .treatment__column {
    gap: 15px 40px;
    grid-template-columns: 29% 1fr;
    align-items: flex-start;
    margin-block-end: var(--space-block-md);
  }
}
@media (width <= 560px) {
  .q-diagnosis-report .report__treatment .treatment__column {
    gap: 15px 8px;
  }
}
.q-diagnosis-report .report__treatment .treatment__column .item:nth-child(1) {
  grid-area: 1/1/2/2;
}
@media (width <= 768px) {
  .q-diagnosis-report .report__treatment .treatment__column .item:nth-child(1) {
    grid-area: 1/1/2/2;
  }
}
.q-diagnosis-report .report__treatment .treatment__column .item:nth-child(2) {
  grid-area: 2/1/3/2;
}
@media (width <= 768px) {
  .q-diagnosis-report .report__treatment .treatment__column .item:nth-child(2) {
    grid-area: 1/2/2/3;
  }
}
.q-diagnosis-report .report__treatment .treatment__column .item:nth-child(3) {
  grid-area: 1/2/2/3;
}
@media (width <= 768px) {
  .q-diagnosis-report .report__treatment .treatment__column .item:nth-child(3) {
    grid-area: 2/1/3/3;
  }
}
.q-diagnosis-report .report__treatment .treatment__column .item:nth-child(4) {
  grid-area: 1/3/2/4;
}
@media (width <= 768px) {
  .q-diagnosis-report .report__treatment .treatment__column .item:nth-child(4) {
    grid-area: 3/1/4/2;
  }
}
.q-diagnosis-report .report__treatment .treatment__column .item:nth-child(5) {
  grid-area: 2/3/3/4;
}
@media (width <= 768px) {
  .q-diagnosis-report .report__treatment .treatment__column .item:nth-child(5) {
    grid-area: 3/2/4/3;
  }
}
.q-diagnosis-report .report__treatment .treatment__column .item:nth-child(6) {
  grid-area: 1/4/2/5;
}
@media (width <= 768px) {
  .q-diagnosis-report .report__treatment .treatment__column .item:nth-child(6) {
    grid-area: 4/1/5/3;
  }
}
.q-diagnosis-report .report__treatment .treatment__column .item:nth-child(7) {
  grid-area: 1/5/2/6;
}
@media (width <= 768px) {
  .q-diagnosis-report .report__treatment .treatment__column .item:nth-child(7) {
    grid-area: 5/1/5/2;
  }
}
.q-diagnosis-report .report__treatment .treatment__column .item:nth-child(8) {
  grid-area: 2/5/3/6;
}
@media (width <= 768px) {
  .q-diagnosis-report .report__treatment .treatment__column .item:nth-child(8) {
    grid-area: 5/2/5/3;
  }
}
@media (width <= 768px) {
  .q-diagnosis-report .report__treatment .treatment__column .c-text {
    text-align: left;
    line-height: 1.625;
  }
}
@media (width <= 768px) {
  .q-diagnosis-report .report__treatment .treatment__info {
    align-self: center;
  }
}
.q-diagnosis-report .report__treatment .treatment__image {
  overflow: hidden;
  border-radius: 50%;
  margin-block-end: 4px;
}
.q-diagnosis-report .report__treatment .treatment__image img {
  width: 100%;
}
.q-diagnosis-report .report__treatment .treatment__heading {
  margin-block-end: 6px;
}
.q-diagnosis-report .report__treatment .treatment__heading .heading {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0 var(--space-block-xs);
}
@media (width <= 768px) {
  .q-diagnosis-report .report__treatment .treatment__heading .heading {
    justify-content: start;
  }
}
.q-diagnosis-report .report__treatment .treatment__heading .sub {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  color: var(--color-light);
  padding: 0 6px;
  border-radius: 4px;
  background-color: var(--color-primary);
}
@media (width <= 768px) {
  .q-diagnosis-report .report__treatment .treatment__heading .sub {
    margin-inline-start: 4px;
  }
}
.q-diagnosis-report .report__treatment .treatment__plus {
  width: 30px;
  aspect-ratio: 1/1;
  position: relative;
  margin: auto;
}
.q-diagnosis-report .report__treatment .treatment__plus::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 100%;
  height: 6px;
  top: 50%;
  left: 0;
  translate: 0 -50%;
  background-color: var(--color-primary);
}
.q-diagnosis-report .report__treatment .treatment__plus::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 6px;
  height: 100%;
  top: 0;
  left: 50%;
  translate: -50% 0;
  background-color: var(--color-primary);
}
.q-diagnosis-report .report__goal {
  display: flex;
  align-items: end;
  justify-content: center;
  gap: 23px;
}
@media (width <= 768px) {
  .q-diagnosis-report .report__goal {
    flex-direction: column;
    align-items: center;
  }
}
.q-diagnosis-report .report__goal .goal__text {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  text-align: center;
  margin-block: var(--space-block-lg) 60px;
}
@media (width <= 768px) {
  .q-diagnosis-report .report__goal .goal__text {
    margin-block: 0;
  }
}
.q-diagnosis-report .report__goal .goal__text .sub {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-block-end: 6px;
}
.q-diagnosis-report .report__goal .goal__text .sub::before {
  content: "";
  display: inline-block;
  width: 23px;
  min-width: 23px;
  height: 30px;
  background-color: var(--color-secondary);
  clip-path: polygon(30% 0, 0 20%, 100% 100%);
}
.q-diagnosis-report .report__goal .goal__text .sub::after {
  content: "";
  display: inline-block;
  width: 23px;
  min-width: 23px;
  height: 30px;
  background-color: var(--color-secondary);
  clip-path: polygon(30% 0, 0 20%, 100% 100%);
  scale: -1 1;
}
.q-diagnosis-report .report__goal .goal__text .main .big {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  display: inline-block;
}
.q-diagnosis-report .report__goal .goal__text .main .line {
  border-block-end: 2px solid var(--color-secondary);
}
.q-diagnosis-report .report__goal .goal__text .box {
  color: var(--color-light);
  background-color: var(--color-secondary);
  border-radius: 4px;
  padding: 3px 13px;
  display: inline-block;
  margin-inline-end: 10px;
}
@media (width <= 768px) {
  .q-diagnosis-report .report__goal .goal__illust {
    width: fit-content;
    margin-inline: auto;
  }
}

.q-diagnosis-shop {
  padding-block-start: var(--space-block-section);
}
.q-diagnosis-shop .bnr {
  margin-block-end: var(--space-block-section);
}
.q-diagnosis-shop .heading {
  text-align: center;
  font-family: var(--typography-title-xlg-b-font-family);
  font-weight: var(--typography-title-xlg-b-font-weight);
  font-size: var(--typography-title-xlg-b-font-size);
  line-height: var(--typography-title-xlg-b-line-height);
  --letter-spacing: var(--typography-title-xlg-b-letter-spacing);
  margin-block-end: var(--space-block-lg);
}
.q-diagnosis-shop .heading .primary {
  color: var(--color-primary);
}

.q-faq {
  padding-block-end: var(--space-block-xxl);
}
.q-faq .faq__block {
  margin-block-end: var(--space-block-section);
}
.q-faq .faq__block:last-child {
  margin-block-end: 0;
}

.q-menu-campaign {
  padding-block-end: var(--space-block-section);
}
.q-menu-campaign .campaign {
  background-color: var(--color-light);
  border-radius: 20px;
  position: relative;
  padding: var(--space-block-xl) var(--space-block-md);
  text-align: center;
}
@media (width <= 768px) {
  .q-menu-campaign .campaign {
    padding: var(--space-block-lg) var(--space-block-sm);
  }
}
.q-menu-campaign .campaign::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: calc(100% - 120px);
  height: 4px;
  top: 0;
  left: 60px;
  background-color: var(--color-tertiary);
}
@media (width <= 768px) {
  .q-menu-campaign .campaign::after {
    width: calc(100% - 80px);
    left: 40px;
  }
}
.q-menu-campaign .campaign__title {
  margin-block-end: var(--space-block-xs);
  max-width: 618px;
  margin-inline: auto;
}
@media (width <= 768px) {
  .q-menu-campaign .campaign__title {
    margin-block-end: 5px;
    max-width: 500px;
  }
}
.q-menu-campaign .campaign__title img {
  width: 100%;
}
.q-menu-campaign .campaign .c-text {
  margin-block-end: 36px;
}
@media (width <= 768px) {
  .q-menu-campaign .campaign .c-text {
    text-align: left;
    margin-block-end: 14px;
  }
}
.q-menu-campaign .campaign__image {
  max-width: 766px;
  margin-inline: auto;
  margin-block-end: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-menu-campaign .campaign__image {
    margin-block-end: 0;
  }
}
.q-menu-campaign .campaign__image img {
  width: 100%;
  margin-inline-start: 5px;
}
@media (width <= 768px) {
  .q-menu-campaign .campaign__image img {
    margin-inline-start: 0;
  }
}
.q-menu-campaign .campaign__price {
  max-width: 742px;
  margin-inline: auto;
}
@media (width <= 768px) {
  .q-menu-campaign .campaign__price {
    max-width: 600px;
  }
}
.q-menu-campaign .campaign__price img {
  width: 100%;
}

.q-menu-recommend {
  position: relative;
  padding-block: var(--space-block-section);
}
.q-menu-recommend .recommend {
  position: relative;
  z-index: 1;
}
.q-menu-recommend .recommend__image {
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.q-menu-recommend .recommend__image::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: color-mix(in srgb, var(--color-base) 47%, transparent);
}
.q-menu-recommend .recommend__image img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}
.q-menu-recommend .recommend__column {
  max-width: 940px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-menu-recommend .recommend__column {
    grid-template-columns: 1fr;
    gap: var(--space-block-xs);
  }
}
.q-menu-recommend .recommend__item {
  background-color: color-mix(in srgb, var(--color-light) 90%, transparent);
  border-radius: 0 10px;
  display: grid;
  grid-template-columns: 30px 1fr;
  gap: 15px;
  align-items: center;
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  padding: 15px var(--space-block-sm);
}
@media (width <= 768px) {
  .q-menu-recommend .recommend__item {
    grid-template-columns: 15px 1fr;
    gap: 6px;
    padding: 8px 4px 8px var(--space-block-xs);
  }
}

.q-menu-flow {
  padding-block: var(--space-block-section);
}
.q-menu-flow .flow {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
}
@media (width <= 768px) {
  .q-menu-flow .flow {
    grid-template-columns: 1fr;
  }
}
.q-menu-flow .flow__item {
  background-color: var(--color-light);
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  justify-content: center;
  padding: var(--space-block-md) var(--space-block-xs);
  position: relative;
  align-content: start;
}
@media (width <= 768px) {
  .q-menu-flow .flow__item {
    grid-template-columns: 87px auto;
    gap: 0 12px;
    justify-content: left;
    align-items: center;
    padding-block: var(--space-block-sm);
    padding-inline-start: 44px;
  }
}
.q-menu-flow .flow__item:nth-child(even) {
  background-color: var(--color-bg-primary);
}
.q-menu-flow .flow__item:nth-child(even)::after {
  background-color: var(--color-bg-primary);
}
.q-menu-flow .flow__item::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 15px;
  height: 22px;
  top: 50%;
  right: -14px;
  background-color: var(--color-light);
  translate: 0 -50%;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  z-index: 1;
}
@media (width <= 768px) {
  .q-menu-flow .flow__item::after {
    top: auto;
    bottom: -14px;
    left: 50%;
    right: auto;
    width: 22px;
    height: 15px;
    clip-path: polygon(100% 0, 0 0, 50% 100%);
    translate: -50% 0;
  }
}
.q-menu-flow .flow__item:last-child::after {
  content: none;
}
.q-menu-flow .flow__number {
  text-align: center;
  font-family: var(--typography-EN-title-md-m-font-family);
  font-weight: var(--typography-EN-title-md-m-font-weight);
  font-size: var(--typography-EN-title-md-m-font-size);
  line-height: var(--typography-EN-title-md-m-line-height);
  --letter-spacing: var(--typography-EN-title-md-m-letter-spacing);
  color: var(--color-primary);
  font-size: 20px;
}
@media (width <= 768px) {
  .q-menu-flow .flow__number {
    grid-area: 1/2/2/3;
    text-align: left;
    align-self: flex-end;
  }
}
.q-menu-flow .flow__icon {
  text-align: center;
}
@media (width <= 768px) {
  .q-menu-flow .flow__icon {
    grid-area: 1/1/3/2;
    text-align: left;
  }
}
.q-menu-flow .flow__title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  text-align: center;
}
@media (width <= 768px) {
  .q-menu-flow .flow__title {
    grid-area: 2/2/3/3;
    text-align: left;
    align-self: flex-start;
  }
}

.q-menu-insurance {
  padding-block: var(--space-block-section);
  background-color: var(--color-bg-primary);
}
.q-menu-insurance .insurance__column {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-block-lg);
  margin-block-end: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-menu-insurance .insurance__column {
    grid-template-columns: 1fr;
    gap: var(--space-block-md);
  }
}
.q-menu-insurance .insurance__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
}
.q-menu-insurance .insurance__title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  background-color: var(--color-primary);
  color: var(--color-light);
  padding: 13px;
  border-radius: 0 20px 0 0;
  text-align: center;
}
.q-menu-insurance .insurance__list {
  background-color: var(--color-light);
  padding: 26px var(--space-block-lg) var(--space-block-lg);
  border-radius: 0 0 0 20px;
}
@media (width <= 768px) {
  .q-menu-insurance .insurance__list {
    padding: var(--space-block-sm);
  }
}
.q-menu-insurance .insurance__list .list {
  display: flex;
  align-items: start;
  gap: var(--space-block-xs);
}
.q-menu-insurance .insurance__list .list::before {
  content: "";
  display: inline-block;
  width: 10px;
  min-width: 10px;
  aspect-ratio: 1/1;
  margin-block-start: 0.7em;
  background-color: var(--color-secondary);
}
.q-menu-insurance .insurance__list .small {
  display: inline-block;
  font-size: 0.875rem;
}
.q-menu-insurance .insurance__shop {
  display: grid;
  grid-template-columns: 22% auto 22%;
  justify-content: space-between;
  align-items: flex-end;
}
@media (width <= 768px) {
  .q-menu-insurance .insurance__shop {
    grid-template-columns: 1fr;
  }
}
.q-menu-insurance .insurance__shop .title {
  margin-block-end: var(--space-block-md);
  text-align: center;
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  line-height: 1.9;
}
.q-menu-insurance .insurance__shop .title .line {
  border-block-end: 2px solid var(--color-secondary);
  font-size: 1.5rem;
  display: inline-block;
}
@media (width <= 768px) {
  .q-menu-insurance .insurance__shop .title .line {
    font-size: 1.25rem;
  }
}
@media (width <= 768px) {
  .q-menu-insurance .insurance__shop .image {
    text-align: center;
  }
}
.q-menu-insurance .p-line-button {
  margin-block-start: var(--space-block-lg);
}

.q-menu-faq {
  padding-block: var(--space-block-section);
}

.q-menu-price {
  padding-block: var(--space-block-section);
  background-color: var(--color-bg-primary);
}
.q-menu-price .guide {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-block-sm);
}
@media (width <= 1120px) {
  .q-menu-price .guide {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (width <= 768px) {
  .q-menu-price .guide {
    grid-template-columns: 1fr;
  }
}
.q-menu-price .guide__item {
  background-color: var(--color-light);
  border-radius: 0 20px;
  display: grid;
  grid-template-columns: 33% 1fr;
  gap: 26px;
  transition: all var(--sec);
}
@media (width <= 768px) {
  .q-menu-price .guide__item {
    grid-template-columns: 1fr;
    gap: var(--space-block-xs);
  }
}
.q-menu-price .guide__item:focus-visible {
  box-shadow: 0 0 20px var(--color-primary);
  color: var(--color-primary);
}
@media (hover: hover) and (pointer: fine) {
  .q-menu-price .guide__item:hover {
    box-shadow: 0 0 20px var(--color-primary);
    color: var(--color-primary);
  }
}
.q-menu-price .guide__item .image {
  border-radius: 0 20px;
  overflow: hidden;
}
@media (width <= 768px) {
  .q-menu-price .guide__item .image {
    aspect-ratio: 320/90;
  }
}
.q-menu-price .guide__item .image img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.q-menu-price .guide__item .info {
  margin: var(--space-block-sm) var(--space-block-md) var(--space-block-sm) 0;
}
@media (width <= 768px) {
  .q-menu-price .guide__item .info {
    margin: 0 var(--space-block-sm) 16px 13px;
  }
}
.q-menu-price .guide__item .sub {
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  margin-block-end: var(--space-block-xs);
  line-height: 1.4285714286;
  color: var(--color-primary);
  text-box: trim-both;
  min-height: 40px;
}
@media (width <= 768px) {
  .q-menu-price .guide__item .sub {
    min-height: auto;
  }
}
.q-menu-price .guide__item .u-svg {
  min-width: 22px;
}
@media (width <= 768px) {
  .q-menu-price .guide__item .u-svg {
    margin-bottom: -70px;
  }
}
.q-menu-price .guide__item .title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  margin-block-end: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-menu-price .guide__item .title {
    margin-block-end: var(--space-block-xs);
  }
}
.q-menu-price .guide__item .title .u-svg {
  color: var(--color-primary);
}
.q-menu-price .guide__item .title p {
  line-height: 1.2;
}
.q-menu-price .guide__item .title .small {
  display: inline-block;
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
}
.q-menu-price .guide__item .place {
  color: var(--color-light);
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  background-color: var(--color-secondary);
  border-radius: 4px;
  padding: 2px 6px;
  display: inline-block;
  min-width: 50px;
  text-align: center;
}
.q-menu-price .guide__item .place._pink {
  background-color: var(--color-tertiary);
}
.q-menu-price .guide__item .place._blue {
  background-color: var(--color-primary3);
}

.q-news {
  padding-block-end: var(--space-block-xxl);
}
.q-news .news {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: var(--space-block-lg);
}
@media (width <= 768px) {
  .q-news .news {
    grid-template-columns: 1fr;
  }
}
.q-news .news__category {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-block-xs);
  margin-block-end: var(--space-block-lg);
}
.q-news .news__category .category {
  padding: 2px var(--space-block-sm);
  color: var(--color-primary);
  background-color: var(--color-light);
  border: 1px solid var(--color-primary);
  display: inline-block;
  border-radius: 99px;
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  text-box: trim-both;
  transition: all var(--sec);
}
.q-news .news__category .category:focus-visible {
  color: var(--color-light);
  background-color: var(--color-primary);
}
@media (hover: hover) and (pointer: fine) {
  .q-news .news__category .category:hover {
    color: var(--color-light);
    background-color: var(--color-primary);
  }
}
.q-news .news__category .category._selected {
  background-color: var(--color-primary);
  color: var(--color-light);
  pointer-events: none;
}
@media (width <= 768px) {
  .q-news .news__item {
    display: grid;
    grid-template-columns: 40% 1fr;
    gap: var(--space-block-xs) var(--space-block-sm);
  }
}
.q-news .news__item:focus-visible .news__image img {
  scale: 1.1;
}
.q-news .news__item:focus-visible .news__title {
  color: var(--color-primary);
}
@media (hover: hover) and (pointer: fine) {
  .q-news .news__item:hover .news__image img {
    scale: 1.1;
  }
  .q-news .news__item:hover .news__title {
    color: var(--color-primary);
  }
}
.q-news .news__image {
  overflow: hidden;
  border-radius: 0 20px;
  margin-block-end: var(--space-block-sm);
  aspect-ratio: 346/230;
}
@media (width <= 768px) {
  .q-news .news__image {
    margin-block-end: 0;
  }
}
.q-news .news__image img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: scale var(--sec);
}
.q-news .news__title {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  margin-block-end: var(--space-block-xs);
  text-box: trim-both;
  transition: color var(--sec);
}
.q-news .news__date {
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  color: var(--color-primary);
}
.q-news .news__tag {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px var(--space-block-xs);
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  color: var(--color-primary);
}
.q-news .news__tag .tag::before {
  content: "#";
  display: inline-block;
}

.q-news-detail {
  padding-block: var(--space-block-xxl);
}
.q-news-detail .news-detail__info {
  margin-block-end: var(--space-block-lg);
}
.q-news-detail .news-detail__head {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-block-sm);
  margin-block-end: var(--space-block-md);
}
.q-news-detail .news-detail__category {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-block-xs);
}
.q-news-detail .news-detail__category .category {
  padding: 2px var(--space-block-sm);
  color: var(--color-primary);
  background-color: var(--color-light);
  border: 1px solid var(--color-primary);
  display: inline-block;
  border-radius: 99px;
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  text-box: trim-both;
}
.q-news-detail .news-detail__date {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  color: var(--color-primary);
  text-box: trim-both;
}
.q-news-detail .news-detail__title {
  font-family: var(--typography-title-xxlg-b-font-family);
  font-weight: var(--typography-title-xxlg-b-font-weight);
  font-size: var(--typography-title-xxlg-b-font-size);
  line-height: var(--typography-title-xxlg-b-line-height);
  --letter-spacing: var(--typography-title-xxlg-b-letter-spacing);
}
.q-news-detail .news-detail__tag {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px var(--space-block-xs);
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  color: var(--color-primary);
}
.q-news-detail .news-detail__tag .tag::before {
  content: "#";
  display: inline-block;
}
.q-news-detail .pager {
  margin-block-start: var(--space-block-lg);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  justify-content: space-between;
  align-items: center;
}
@media (width <= 768px) {
  .q-news-detail .pager {
    grid-template-columns: repeat(2, auto);
    gap: var(--space-block-sm);
  }
}
.q-news-detail .pager__item a {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  color: var(--color-primary);
  text-decoration: underline;
  display: flex;
  align-items: center;
  gap: 7px;
  transition: opacity var(--sec);
}
.q-news-detail .pager__item a:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-news-detail .pager__item a:hover {
    opacity: var(--opacity);
  }
}
@media (width <= 768px) {
  .q-news-detail .pager__item._prev {
    grid-area: 1/1/2/2;
  }
}
.q-news-detail .pager__item._prev .u-svg {
  rotate: 180deg;
}
.q-news-detail .pager__item._back a {
  background-color: var(--color-light);
  border: 2px solid var(--color-primary);
  border-radius: 99px;
  width: 290px;
  height: 60px;
  text-decoration: none;
  justify-content: center;
  justify-self: center;
}
@media (width <= 768px) {
  .q-news-detail .pager__item._back a {
    width: 100%;
  }
}
@media (width <= 768px) {
  .q-news-detail .pager__item._back {
    grid-area: 2/1/3/3;
  }
}
.q-news-detail .pager__item._next {
  justify-self: end;
}
@media (width <= 768px) {
  .q-news-detail .pager__item._next {
    grid-area: 1/2/2/3;
  }
}

.q-policy {
  padding-block-end: var(--space-block-xxl);
}
.q-policy .policy__item {
  margin-block-end: var(--space-block-lg);
}
.q-policy .policy__item:last-child {
  margin-block-end: 0;
}
.q-policy .policy__title {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  margin-block-end: var(--space-block-sm);
  text-box: trim-both;
}
.q-policy .policy__list .list {
  text-indent: -1em;
  padding-inline-start: 1em;
}
.q-policy .policy ._bold {
  font-weight: 700;
}

.q-shop-detail-mv {
  position: relative;
  overflow: hidden;
}
.q-shop-detail-mv .mv {
  padding-block: 82px 74px;
}
@media (width <= 768px) {
  .q-shop-detail-mv .mv {
    padding-block: 222px var(--space-block-lg);
  }
}
.q-shop-detail-mv .mv__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.q-shop-detail-mv .mv__bg img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 60% 10%;
}
.q-shop-detail-mv .mv__text {
  position: relative;
  z-index: 1;
  max-width: 670px;
  width: 60vw;
  margin-block-end: 12px;
}
@media (width <= 768px) {
  .q-shop-detail-mv .mv__text {
    margin-inline-start: calc(var(--l-section-space-inline) * -1);
    width: auto;
    max-width: 570px;
  }
}
.q-shop-detail-mv .mv__text img {
  width: 100%;
}
.q-shop-detail-mv .mv__button {
  position: relative;
  z-index: 1;
  margin-inline-start: 46px;
  display: inline-block;
  transition: opacity var(--sec);
  max-width: 544px;
  width: 48vw;
}
.q-shop-detail-mv .mv__button:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-mv .mv__button:hover {
    opacity: var(--opacity);
  }
}

.p-shop-detail-news {
  background-color: var(--color-lp-bg-secondary);
  margin-block-start: calc(110 / 1600 * 199vw);
  padding-block-end: var(--space-block-section);
  position: relative;
}
@media (width <= 768px) {
  .p-shop-detail-news {
    margin-block-start: calc(5 / 36 * 199vw);
  }
}
.p-shop-detail-news.q-news .news__item:focus-visible .news__title {
  color: var(--color-lp-primary);
}
@media (hover: hover) and (pointer: fine) {
  .p-shop-detail-news.q-news .news__item:hover .news__title {
    color: var(--color-lp-primary);
  }
}
.p-shop-detail-news.q-news .news__date {
  color: var(--color-lp-primary);
}
.p-shop-detail-news.q-news .news__tag {
  color: var(--color-lp-primary);
}
.p-shop-detail-news .c-button {
  border-color: var(--color-lp-primary);
  color: var(--color-lp-primary);
}
.p-shop-detail-news .c-button:focus-visible {
  color: var(--color-light);
  background-color: var(--color-lp-primary);
}
@media (hover: hover) and (pointer: fine) {
  .p-shop-detail-news .c-button:hover {
    color: var(--color-light);
    background-color: var(--color-lp-primary);
  }
}

.q-shop-detail-time .future {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin-block: -60px var(--space-block-lg);
  position: relative;
  z-index: 1;
}
@media (width <= 768px) {
  .q-shop-detail-time .future {
    grid-template-columns: repeat(2, 1fr);
    margin-block-start: -30px;
    gap: 4px 6px;
  }
}
.q-shop-detail-time .future__item {
  background-color: var(--color-light);
  border: 1px solid var(--color-lp-primary);
  border-radius: 10px;
  padding: var(--space-block-sm) 5px;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
}
@media (width <= 768px) {
  .q-shop-detail-time .future__item {
    padding-inline: 4px;
    gap: 8px;
  }
}
.q-shop-detail-time .future__item .icon {
  color: var(--color-lp-secondary);
  margin-inline: auto;
  display: grid;
  width: 110px;
}
@media (width <= 768px) {
  .q-shop-detail-time .future__item .icon {
    width: 70px;
  }
}
.q-shop-detail-time .future__item .icon .u-svg {
  width: 100%;
}
.q-shop-detail-time .future__item .text {
  font-family: var(--typography-lp-text-lg-b-font-family);
  font-weight: var(--typography-lp-text-lg-b-font-weight);
  font-size: var(--typography-lp-text-lg-b-font-size);
  line-height: var(--typography-lp-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp-text-lg-b-letter-spacing);
  text-align: center;
  color: var(--color-lp-primary);
  line-height: 1.4615384615;
  display: flex;
  align-items: center;
  justify-content: center;
}
.q-shop-detail-time .schedule {
  display: grid;
  grid-template-columns: auto 45%;
  gap: 13px;
  justify-content: center;
  align-items: center;
  margin-block-end: var(--space-block-section);
}
@media (width <= 768px) {
  .q-shop-detail-time .schedule {
    grid-template-columns: 1fr;
  }
}
.q-shop-detail-time .schedule__title {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 8px;
  margin-block-end: var(--space-block-sm);
}
@media (width <= 920px) {
  .q-shop-detail-time .schedule__title {
    grid-template-columns: 1fr;
  }
}
@media (width <= 768px) {
  .q-shop-detail-time .schedule__title {
    grid-template-columns: 1fr;
    margin-block-end: 0;
  }
}
.q-shop-detail-time .schedule__title .title {
  font-family: var(--typography-lp-title-md-b-font-family);
  font-weight: var(--typography-lp-title-md-b-font-weight);
  font-size: var(--typography-lp-title-md-b-font-size);
  line-height: var(--typography-lp-title-md-b-line-height);
  --letter-spacing: var(--typography-lp-title-md-b-letter-spacing);
  color: var(--color-lp-primary);
}
@media (width <= 768px) {
  .q-shop-detail-time .schedule__title .title {
    font-size: 2.625rem;
    text-align: center;
  }
}
.q-shop-detail-time .schedule__title .time {
  background-color: var(--color-bg-ash2);
  border-radius: 99px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0 var(--space-block-xs);
  width: 100%;
  padding: 4px 29px;
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
  color: var(--color-lp-primary);
}
@media (width <= 768px) {
  .q-shop-detail-time .schedule__title .time {
    font-size: 1.25rem;
    width: fit-content;
    margin-inline: auto;
  }
}
.q-shop-detail-time .schedule__title .time .sub {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
}
@media (width <= 768px) {
  .q-shop-detail-time .schedule__title .time .sub {
    font-size: 1rem;
  }
}
@media (width <= 768px) {
  .q-shop-detail-time .schedule__head {
    display: contents;
  }
}
.q-shop-detail-time .schedule__holiday {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  color: var(--color-lp-primary);
}
@media (width <= 768px) {
  .q-shop-detail-time .schedule__holiday {
    grid-area: 3/1/4/2;
    font-size: 1rem;
  }
}

.p-schedule__table {
  border: 1px solid var(--color-border3);
  width: 100%;
}
.p-schedule__table .tr {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
}
.p-schedule__table .th {
  background-color: color-mix(in srgb, var(--color-bg-ash2) 50%, transparent);
  color: var(--color-lp-primary);
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  text-align: center;
  border-inline-end: 1px solid var(--color-border3);
  padding: 14px var(--space-block-xs);
}
@media (width <= 768px) {
  .p-schedule__table .th {
    padding: 6px 5px;
  }
}
.p-schedule__table .th:last-child {
  border-inline-end: 0;
}
.p-schedule__table .td {
  padding: 14px var(--space-block-xs);
  border-inline-end: 1px solid var(--color-border3);
  text-align: center;
}
@media (width <= 768px) {
  .p-schedule__table .td {
    padding: 6px 5px;
  }
}
.p-schedule__table .td:last-child {
  border-inline-end: 0;
}
.p-schedule__table .td._maru::before {
  content: "●";
  display: inline-block;
  color: var(--color-lp-secondary);
}
.p-schedule__table .td._batsu::before {
  content: "×";
  display: inline-block;
  color: var(--color-lp-primary);
}
.p-schedule__table .td._star::before {
  content: "★";
  display: inline-block;
  color: var(--color-lp-primary);
}

.q-shop-detail-check {
  position: relative;
  padding-block: var(--space-block-section) calc(70px + calc(110 / 1600 * 99vw));
  overflow: hidden;
}
@media (width <= 768px) {
  .q-shop-detail-check {
    padding-block-end: calc(80px + (5 / 36 * 99vw));
  }
}
.q-shop-detail-check .check {
  color: var(--color-light);
  position: relative;
  z-index: 1;
  margin-block-end: 60px;
}
@media (width <= 768px) {
  .q-shop-detail-check .check {
    margin-block-end: 54px;
  }
}
.q-shop-detail-check .check__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.q-shop-detail-check .check__bg img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}
.q-shop-detail-check .check__title {
  margin-block-end: 35px;
  text-align: center;
}
.q-shop-detail-check .check__title .title {
  font-family: var(--typography-lp-title-md-b-font-family);
  font-weight: var(--typography-lp-title-md-b-font-weight);
  font-size: var(--typography-lp-title-md-b-font-size);
  line-height: var(--typography-lp-title-md-b-line-height);
  --letter-spacing: var(--typography-lp-title-md-b-letter-spacing);
  margin-block-end: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-shop-detail-check .check__title .title {
    font-size: 1.5rem;
  }
}
.q-shop-detail-check .check__title .sub {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
}
@media (width <= 768px) {
  .q-shop-detail-check .check__title .sub {
    font-size: 0.75rem;
  }
}
.q-shop-detail-check .check__list {
  margin-block-end: var(--space-block-lg);
  width: fit-content;
  margin-inline: auto;
}
.q-shop-detail-check .check__list .list {
  display: grid;
  grid-template-columns: 64px auto 1fr;
  align-items: center;
}
@media (width <= 920px) {
  .q-shop-detail-check .check__list .list {
    grid-template-columns: auto 1fr;
    gap: 4px 0;
  }
  .q-shop-detail-check .check__list .list:not(:last-child) {
    margin-block-end: var(--space-block-xs);
  }
}
.q-shop-detail-check .check__list .list .icon {
  display: flex;
}
@media (width <= 920px) {
  .q-shop-detail-check .check__list .list .icon {
    width: 32px;
  }
}
.q-shop-detail-check .check__list .list .sub {
  margin-inline-end: var(--space-block-xs);
  background-color: var(--color-lp-secondary);
  border-radius: 99px;
  padding: 6px;
  min-width: 210px;
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
  text-align: center;
}
@media (width <= 920px) {
  .q-shop-detail-check .check__list .list .sub {
    padding: 2px 26px 4px;
    min-width: 200px;
    width: fit-content;
  }
}
.q-shop-detail-check .check__list .list .text {
  font-family: var(--typography-lp-text-lg-b-font-family);
  font-weight: var(--typography-lp-text-lg-b-font-weight);
  font-size: var(--typography-lp-text-lg-b-font-size);
  line-height: var(--typography-lp-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp-text-lg-b-letter-spacing);
}
@media (width <= 920px) {
  .q-shop-detail-check .check__list .list .text {
    grid-area: 2/2/3/3;
  }
}

.q-shop-detail-reason {
  position: relative;
  padding-block-end: var(--space-block-section);
}
.q-shop-detail-reason .reason__column {
  display: flex;
  align-items: flex-start;
  gap: var(--space-block-lg);
  margin-inline-start: -100px;
}
@media (width <= 1360px) {
  .q-shop-detail-reason .reason__column {
    margin-inline-start: 0;
  }
}
@media (width <= 768px) {
  .q-shop-detail-reason .reason__column {
    flex-direction: column;
    gap: var(--space-block-sm);
  }
}
.q-shop-detail-reason .reason__column._reverse {
  flex-direction: row-reverse;
}
@media (width <= 768px) {
  .q-shop-detail-reason .reason__column._reverse {
    flex-direction: column;
  }
}
.q-shop-detail-reason .reason__column:not(:last-child) {
  margin-block-end: var(--space-block-lg);
}
.q-shop-detail-reason .reason__head {
  box-shadow: 0 0 10px color-mix(in srgb, var(--color-base) 30%, transparent);
  width: 56.5%;
}
@media (width <= 768px) {
  .q-shop-detail-reason .reason__head {
    width: 100%;
  }
}
.q-shop-detail-reason .reason__head img {
  width: 100%;
}
.q-shop-detail-reason .reason__title {
  border-block-end: 1px solid var(--color-lp-primary);
  padding-block-end: var(--space-block-sm);
  margin-block-end: var(--space-block-sm);
}
.q-shop-detail-reason .reason__title .en {
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
  color: var(--color-lp-secondary);
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 22px;
  align-items: center;
  margin-block-end: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-shop-detail-reason .reason__title .en {
    font-size: 1.25rem;
  }
}
.q-shop-detail-reason .reason__title .en::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color: var(--color-lp-primary);
}
.q-shop-detail-reason .reason__title .title {
  font-family: var(--typography-lp-text-lg-b-font-family);
  font-weight: var(--typography-lp-text-lg-b-font-weight);
  font-size: var(--typography-lp-text-lg-b-font-size);
  line-height: var(--typography-lp-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp-text-lg-b-letter-spacing);
  color: var(--color-lp-primary);
}
.q-shop-detail-reason .reason .c-text {
  text-box: trim-both;
}
@media (width <= 768px) {
  .q-shop-detail-reason .reason .c-text {
    font-size: 1rem;
  }
}
.q-shop-detail-reason .reason__body {
  width: calc(100% - (56.5% + var(--space-block-lg)));
}
@media (width <= 768px) {
  .q-shop-detail-reason .reason__body {
    width: 100%;
  }
}

.q-shop-detail-flow {
  background-color: var(--color-lp-bg-secondary);
  margin-block-start: calc(110 / 1600 * 99vw);
  padding-block-end: var(--space-block-section);
  position: relative;
}
@media (width <= 768px) {
  .q-shop-detail-flow {
    margin-block-start: calc(5 / 36 * 99vw);
  }
}
.q-shop-detail-flow .flow__item {
  background-color: var(--color-light);
  display: grid;
  grid-template-columns: 1fr 45%;
  align-items: flex-start;
  position: relative;
  border: 1px solid var(--color-lp-bg-secondary);
}
@media (width <= 768px) {
  .q-shop-detail-flow .flow__item {
    grid-template-columns: 1fr;
  }
}
.q-shop-detail-flow .flow__item:not(:last-child) {
  margin-block-end: var(--space-block-sm);
}
.q-shop-detail-flow .flow__item:not(:last-child)::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 10px;
  height: 29px;
  bottom: -30px;
  left: 106px;
  background-color: var(--color-light);
}
.q-shop-detail-flow .flow__item._line .flow__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-block-xs);
  align-self: center;
  margin-inline-end: 50px;
  transition: opacity var(--sec);
  height: auto;
}
@media (width <= 768px) {
  .q-shop-detail-flow .flow__item._line .flow__body {
    margin: 0 var(--space-block-sm) var(--space-block-lg) var(--space-block-sm);
    max-width: 440px;
  }
}
.q-shop-detail-flow .flow__item._line .flow__body:focus-visible {
  opacity: var(--sec);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-flow .flow__item._line .flow__body:hover {
    opacity: var(--sec);
  }
}
.q-shop-detail-flow .flow__head {
  padding: var(--space-block-lg);
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: var(--space-block-sm);
  align-items: start;
}
@media (width <= 920px) {
  .q-shop-detail-flow .flow__head {
    grid-template-columns: 80px 1fr;
    padding-inline: var(--space-block-sm);
  }
}
@media (width <= 768px) {
  .q-shop-detail-flow .flow__head {
    padding: var(--space-block-md) var(--space-block-sm) var(--space-block-sm);
    gap: var(--space-block-xs) var(--space-block-sm);
  }
}
.q-shop-detail-flow .flow__head .link {
  color: var(--color-lp-secondary);
  transition: opacity var(--sec);
}
.q-shop-detail-flow .flow__head .link:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-flow .flow__head .link:hover {
    opacity: var(--opacity);
  }
}
.q-shop-detail-flow .flow__head .link .text {
  text-decoration: underline;
}
.q-shop-detail-flow .flow__head .link .u-svg {
  vertical-align: sub;
}
.q-shop-detail-flow .flow__head .link._anchor .u-svg {
  rotate: 90deg;
}
.q-shop-detail-flow .flow__head .kakko {
  color: var(--color-lp-secondary);
  border-block: 1px solid var(--color-lp-secondary);
  padding-block: 7px;
  margin-block-start: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-shop-detail-flow .flow__head .kakko {
    grid-area: 3/1/4/3;
    margin-block-start: 0;
  }
}
.q-shop-detail-flow .flow__title {
  font-family: var(--typography-lp-text-lg-b-font-family);
  font-weight: var(--typography-lp-text-lg-b-font-weight);
  font-size: var(--typography-lp-text-lg-b-font-size);
  line-height: var(--typography-lp-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp-text-lg-b-letter-spacing);
  margin-block-end: 15px;
  color: var(--color-lp-primary);
}
@media (width <= 768px) {
  .q-shop-detail-flow .flow__title {
    margin-block-end: 0;
    align-self: center;
  }
}
@media (width <= 768px) {
  .q-shop-detail-flow .flow .c-text {
    grid-area: 2/1/3/3;
  }
}
@media (width <= 768px) {
  .q-shop-detail-flow .flow__text {
    display: contents;
  }
}
.q-shop-detail-flow .flow__body {
  height: 100%;
}
.q-shop-detail-flow .flow__body._button {
  margin-block: var(--space-block-lg);
}
.q-shop-detail-flow .flow__body img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.q-shop-detail-flow .flow__body .button {
  transition: opacity var(--sec);
}
.q-shop-detail-flow .flow__body .button:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-flow .flow__body .button:hover {
    opacity: var(--opacity);
  }
}

.q-shop-detail-voice {
  margin-block-start: calc(110 / 1600 * 99vw);
  padding-block-end: var(--space-block-section);
  position: relative;
}
@media (width <= 768px) {
  .q-shop-detail-voice {
    margin-block-start: calc(5 / 36 * 99vw);
  }
}
.q-shop-detail-voice .p-voice__title {
  color: var(--color-lp-secondary);
}
.q-shop-detail-voice .c-button {
  border-color: var(--color-lp-primary);
  color: var(--color-lp-primary);
}
.q-shop-detail-voice .c-button:focus-visible {
  color: var(--color-light);
  background-color: var(--color-lp-primary);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-voice .c-button:hover {
    color: var(--color-light);
    background-color: var(--color-lp-primary);
  }
}

.q-shop-detail-menu {
  position: relative;
  margin-block-start: calc(110 / 1600 * 99vw);
}
@media (width <= 768px) {
  .q-shop-detail-menu {
    margin-block-start: calc(5 / 36 * 99vw);
  }
}
.q-shop-detail-menu .menu {
  background-color: var(--color-lp-bg-secondary);
  padding-block-end: var(--space-block-lg);
}
.q-shop-detail-menu .menu__column {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-shop-detail-menu .menu__column {
    grid-template-columns: repeat(2, 1fr);
  }
}
.q-shop-detail-menu .menu__item {
  background-color: var(--color-light);
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: var(--space-block-md) var(--space-block-xs);
  color: var(--color-lp-primary);
  transition: box-shadow var(--sec);
}
@media (width <= 768px) {
  .q-shop-detail-menu .menu__item {
    padding: var(--space-block-sm);
  }
}
.q-shop-detail-menu .menu__item:focus-visible {
  box-shadow: 0 0 20px var(--color-lp-primary);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-menu .menu__item:hover {
    box-shadow: 0 0 20px var(--color-lp-primary);
  }
}
.q-shop-detail-menu .menu__item .icon {
  display: inline-block;
  margin-inline: auto;
}
.q-shop-detail-menu .menu__item .text {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
}
@media (768px < width <= 920px) {
  .q-shop-detail-menu .menu__item .text {
    font-size: 1rem;
  }
}
.q-shop-detail-menu .menu__item .text .u-svg {
  min-width: 22px;
}
.q-shop-detail-menu .concern__column {
  display: flex;
  align-items: start;
  justify-content: space-between;
}
@media (width <= 768px) {
  .q-shop-detail-menu .concern__column {
    flex-direction: column-reverse;
    gap: var(--space-block-sm);
  }
}
.q-shop-detail-menu .concern__image {
  margin-inline: -124px -100px;
  width: 64%;
}
@media (width <= 1120px) {
  .q-shop-detail-menu .concern__image {
    margin-inline-end: -200px;
    width: 90%;
  }
}
@media (width <= 768px) {
  .q-shop-detail-menu .concern__image {
    width: 100%;
    margin-inline: auto;
    max-width: 500px;
  }
}
.q-shop-detail-menu .concern__image img {
  width: 100%;
}
.q-shop-detail-menu .concern__info {
  width: 61%;
  margin-block-start: var(--space-block-lg);
  margin-block-end: var(--space-block-xl);
}
@media (width <= 768px) {
  .q-shop-detail-menu .concern__info {
    width: 100%;
    margin-block-end: 0;
  }
}
.q-shop-detail-menu .concern__title {
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
  padding-block: var(--space-block-sm);
  border-block: 1px solid var(--color-lp-primary);
  margin-block-end: var(--space-block-sm);
  color: var(--color-lp-primary);
  text-align: center;
}
.q-shop-detail-menu .concern__list {
  display: flex;
  gap: var(--space-block-xs);
  justify-content: center;
  flex-wrap: wrap;
}
.q-shop-detail-menu .concern__list .list {
  border: 1px solid var(--color-lp-primary);
  color: var(--color-lp-primary);
  padding: 14px 32px;
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
}
@media (width <= 920px) {
  .q-shop-detail-menu .concern__list .list {
    padding: var(--space-block-xs) var(--space-block-sm);
  }
}

.q-shop-detail-price {
  padding-block-end: var(--space-block-section);
  position: relative;
  background-color: var(--color-lp-bg-secondary);
}
.q-shop-detail-price .price .c-heading-lp1 {
  margin-block-end: 60px;
}
.q-shop-detail-price .price__plan {
  background-color: var(--color-light);
  border-radius: 10px;
  position: relative;
  padding-block-start: 1px;
}
.q-shop-detail-price .price__plan::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: calc(100% - 28px);
  height: calc(100% - 28px);
  top: 14px;
  left: 14px;
  border: 1px solid var(--color-border);
  border-radius: 10px;
}
.q-shop-detail-price .price__plan > * {
  position: relative;
  z-index: 1;
}
.q-shop-detail-price .price__plan .ribon {
  width: fit-content;
  margin: -30px auto var(--space-block-xs) auto;
}
@media (width <= 768px) {
  .q-shop-detail-price .price__plan .ribon {
    width: 80%;
    max-width: 300px;
    margin-block-start: -20px;
  }
}
.q-shop-detail-price .price__plan .title {
  font-family: var(--typography-lp-title-lg-b-font-family);
  font-weight: var(--typography-lp-title-lg-b-font-weight);
  font-size: var(--typography-lp-title-lg-b-font-size);
  line-height: var(--typography-lp-title-lg-b-line-height);
  --letter-spacing: var(--typography-lp-title-lg-b-letter-spacing);
  text-align: center;
  margin-block-end: var(--space-block-md);
}
@media (width <= 768px) {
  .q-shop-detail-price .price__plan .title {
    font-size: 1.875rem;
  }
}
.q-shop-detail-price .price__plan .table {
  padding-inline: var(--space-block-md);
  max-width: calc(960px + (var(--space-block-md) * 2));
  margin-inline: auto;
}
.q-shop-detail-price .price__plan .table .tr {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding-block-end: var(--space-block-sm);
  padding-inline-start: var(--space-block-sm);
  border-block-end: 1px solid var(--color-border);
  position: relative;
  margin-block-end: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-shop-detail-price .price__plan .table .tr {
    flex-direction: column;
    align-items: start;
  }
}
.q-shop-detail-price .price__plan .table .tr::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 6px;
  height: calc(100% - var(--space-block-sm));
  top: 0;
  left: 0;
  background-color: var(--color-lp-primary);
  border-radius: 99px;
}
.q-shop-detail-price .price__plan .table .th .main {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  line-height: 1.6;
}
@media (width <= 768px) {
  .q-shop-detail-price .price__plan .table .th .main {
    font-size: 1.125rem;
  }
}
.q-shop-detail-price .price__plan .table .td {
  display: flex;
  align-items: center;
  gap: var(--space-block-sm);
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
}
@media (width <= 768px) {
  .q-shop-detail-price .price__plan .table .td {
    gap: var(--space-block-xs);
  }
}
.q-shop-detail-price .price__plan .table .td .pre {
  text-decoration: line-through;
}
.q-shop-detail-price .price__plan .table .td .u-svg {
  color: var(--color-lp-secondary);
}
@media (width <= 768px) {
  .q-shop-detail-price .price__plan .table .td .u-svg {
    width: 30px;
  }
}
.q-shop-detail-price .price__plan .table .td .price {
  color: var(--color-lp-secondary);
}
.q-shop-detail-price .price__plan .table .td .price .big {
  font-size: 2.125rem;
  line-height: 1.2;
}
@media (width <= 768px) {
  .q-shop-detail-price .price__plan .table .td .price .big {
    font-size: 1.75rem;
  }
}
.q-shop-detail-price .price__plan .detail {
  padding-block-end: 60px;
  padding-inline: var(--space-block-md);
  max-width: calc(960px + (var(--space-block-md) * 2));
  margin-inline: auto;
}
.q-shop-detail-price .price__plan .detail .heading {
  font-family: var(--typography-lp-title-lg-b-font-family);
  font-weight: var(--typography-lp-title-lg-b-font-weight);
  font-size: var(--typography-lp-title-lg-b-font-size);
  line-height: var(--typography-lp-title-lg-b-line-height);
  --letter-spacing: var(--typography-lp-title-lg-b-letter-spacing);
  font-size: 2.125rem;
  text-align: center;
  display: flex;
  align-items: center;
  gap: var(--space-block-xs);
  justify-content: center;
  margin-block-end: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-shop-detail-price .price__plan .detail .heading {
    font-size: 1.75rem;
  }
}
.q-shop-detail-price .price__plan .detail .heading .big {
  font-size: 2.625rem;
}
@media (width <= 768px) {
  .q-shop-detail-price .price__plan .detail .heading .big {
    font-size: 1.875rem;
  }
}
.q-shop-detail-price .price__plan .detail .deco:last-child {
  scale: -1 1;
}
.q-shop-detail-price .price__plan .explain {
  text-align: center;
  font-size: 1.3125rem;
  font-weight: 700;
}
@media (width <= 768px) {
  .q-shop-detail-price .price__plan .explain {
    font-size: 1rem;
  }
}
.q-shop-detail-price .price__plan .explain .line {
  border-block-end: 2px solid var(--color-lp-primary);
}
.q-shop-detail-price .price .p-lp-bnr {
  margin-block-end: 76px;
}

.q-shop-detail-director {
  margin-block-start: calc(110 / 1600 * 99vw);
  padding-block-end: var(--space-block-section);
  position: relative;
}
@media (width <= 768px) {
  .q-shop-detail-director {
    margin-block-start: calc(5 / 36 * 99vw);
  }
}
.q-shop-detail-director .director__image {
  margin-block-end: var(--space-block-lg);
}
.q-shop-detail-director .director__image img {
  width: 100%;
}
.q-shop-detail-director .director__column {
  display: grid;
  grid-template-columns: 24% 1fr;
  gap: 50px;
}
@media (width <= 768px) {
  .q-shop-detail-director .director__column {
    grid-template-columns: 1fr;
    gap: var(--space-block-xs);
  }
}
.q-shop-detail-director .director__head .title {
  font-family: var(--typography-lp-text-lg-b-font-family);
  font-weight: var(--typography-lp-text-lg-b-font-weight);
  font-size: var(--typography-lp-text-lg-b-font-size);
  line-height: var(--typography-lp-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp-text-lg-b-letter-spacing);
  color: var(--color-lp-primary);
}
.q-shop-detail-director .director__body .c-text {
  margin-block-end: var(--space-block-sm);
}
.q-shop-detail-director .director__body .name {
  text-align: right;
  margin-block-start: var(--space-block-sm);
}
.q-shop-detail-director .director__body .history {
  margin-block-start: var(--space-block-lg);
  padding-block-start: var(--space-block-lg);
  border-block-start: 1px solid var(--color-border3);
}
.q-shop-detail-director .director__body .history_title {
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
  margin-block-end: var(--space-block-xs);
}
.q-shop-detail-director .director__body .history_table .tr {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: var(--space-block-sm);
  align-items: start;
}

.q-shop-detail-info {
  padding-block-end: var(--space-block-section);
  position: relative;
}
.q-shop-detail-info .info {
  position: relative;
}
.q-shop-detail-info .info__slider {
  position: relative;
  padding-block-end: calc(-110 / 1600 * 99vw);
}
@media (width <= 768px) {
  .q-shop-detail-info .info__slider {
    padding-block-end: calc(-5 / 36 * 99vw);
  }
}
@media (width <= 768px) {
  .q-shop-detail-info .info__slider .image img {
    width: 360px;
  }
}
.q-shop-detail-info .info__column {
  display: grid;
  grid-template-columns: 1fr 45%;
  gap: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-shop-detail-info .info__column {
    grid-template-columns: 1fr;
  }
}
.q-shop-detail-info .info__column .title {
  font-family: var(--typography-lp-text-lg-b-font-family);
  font-weight: var(--typography-lp-text-lg-b-font-weight);
  font-size: var(--typography-lp-text-lg-b-font-size);
  line-height: var(--typography-lp-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp-text-lg-b-letter-spacing);
  margin-block-end: var(--space-block-lg);
  color: var(--color-lp-primary);
}
.q-shop-detail-info .info__column .table .table_tr {
  display: grid;
  grid-template-columns: 73px 1fr;
  gap: 15px var(--space-block-sm);
  padding-block-end: 15px;
}
@media (width <= 768px) {
  .q-shop-detail-info .info__column .table .table_tr {
    grid-template-columns: 60px 1fr;
  }
}
.q-shop-detail-info .info__column .table .table_tr:not(:last-child) {
  border-block-end: 1px solid var(--color-border3);
  margin-block-end: 15px;
}
.q-shop-detail-info .info__column .table .table_th {
  color: var(--color-lp-secondary);
}
.q-shop-detail-info .info__column .p-schedule__table {
  margin-block-start: 15px;
}
.q-shop-detail-info .info__body iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 1/1;
}
@media (width <= 768px) {
  .q-shop-detail-info .info__body iframe {
    aspect-ratio: 10/7;
  }
}

.q-shop-detail-faq {
  margin-block-start: calc(110 / 1600 * 99vw);
  padding-block-end: 110px;
  position: relative;
  background-color: var(--color-lp-bg-secondary);
}
@media (width <= 768px) {
  .q-shop-detail-faq {
    margin-block-start: calc(5 / 36 * 99vw);
  }
}

.q-shop-detail-contact {
  padding-block-end: var(--space-block-section);
  border-block-end: 1px solid var(--color-border2);
}
.q-shop-detail-contact .contact__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-block: -24px -10px;
  position: relative;
  z-index: 1;
}
@media (width <= 768px) {
  .q-shop-detail-contact .contact__head {
    flex-direction: column;
    align-items: center;
    margin-block: -10vw var(--space-block-sm);
  }
}
@media (width <= 768px) {
  .q-shop-detail-contact .contact__image {
    margin-block-end: -54px;
  }
  .q-shop-detail-contact .contact__image img {
    width: 100%;
  }
}
.q-shop-detail-contact .contact__title {
  margin-block-end: 60px;
}
@media (width <= 768px) {
  .q-shop-detail-contact .contact__title {
    width: 100%;
    margin-block-end: 0;
  }
}
.q-shop-detail-contact .contact__title .sub {
  font-size: 1.9375rem;
  color: var(--color-light);
  background-color: var(--color-lp-secondary);
  text-align: center;
  padding: 2px 17px;
  position: relative;
  font-weight: 700;
  margin-block-end: 16px;
  border-block: 1px solid var(--color-light);
  width: fit-content;
  margin-inline: auto;
}
@media (width <= 768px) {
  .q-shop-detail-contact .contact__title .sub {
    font-size: 1.6875rem;
    width: calc(100% - 54px);
    padding-inline: 0;
  }
}
.q-shop-detail-contact .contact__title .sub .deco {
  position: absolute;
  top: -1px;
  left: -26px;
  width: auto;
  height: calc(100% + 2px);
  width: 27px;
}
.q-shop-detail-contact .contact__title .sub .deco img {
  width: 100%;
  height: 100%;
  vertical-align: inherit;
}
.q-shop-detail-contact .contact__title .sub .deco._2 {
  left: auto;
  right: -26px;
  rotate: -180deg;
}
.q-shop-detail-contact .contact__title .sub .text {
  letter-spacing: 0;
  line-height: 1.4;
}
.q-shop-detail-contact .contact__title .title {
  color: var(--color-lp-primary);
  font-size: 2.8125rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: -0.05em;
  line-height: 1.2;
}
@media (width <= 768px) {
  .q-shop-detail-contact .contact__title .title {
    font-size: 1.375rem;
    letter-spacing: -0.06em;
  }
}
.q-shop-detail-contact .contact__title .title .tight {
  margin-inline: -8px -16px;
}
@media (width <= 768px) {
  .q-shop-detail-contact .contact__title .title .tight {
    margin-inline: -5px -8px;
  }
}
.q-shop-detail-contact .contact__title .title span {
  letter-spacing: -0.05em;
}
.q-shop-detail-contact .contact__column {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-block-xs);
  position: relative;
  z-index: 1;
}
@media (width <= 1222px) {
  .q-shop-detail-contact .contact__column {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (width <= 920px) {
  .q-shop-detail-contact .contact__column {
    grid-template-columns: 1fr;
  }
}
.q-shop-detail-contact .contact__column .line {
  background-color: var(--color-line);
  border-radius: 10px;
  border: 2px solid var(--color-light);
  padding: var(--space-block-sm) 15px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (width <= 768px) {
  .q-shop-detail-contact .contact__column .line {
    padding-block: var(--space-block-xs);
  }
}
.q-shop-detail-contact .contact__column .line:focus-visible img {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-contact .contact__column .line:hover img {
    opacity: var(--opacity);
  }
}
.q-shop-detail-contact .contact__column .line img {
  max-width: 330px;
  transition: opacity var(--sec);
}
.q-shop-detail-contact .contact__column .beauty {
  border-radius: 10px;
  border: 1px solid var(--color-beauty);
  padding: var(--space-block-sm) 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-light);
}
@media (width <= 768px) {
  .q-shop-detail-contact .contact__column .beauty {
    padding-block: var(--space-block-xs);
  }
}
.q-shop-detail-contact .contact__column .beauty:focus-visible img {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-contact .contact__column .beauty:hover img {
    opacity: var(--opacity);
  }
}
.q-shop-detail-contact .contact__column .beauty img {
  max-width: 236px;
  transition: opacity var(--sec);
}
.q-shop-detail-contact .contact__column .online {
  border-radius: 10px;
  border: 1px solid var(--color-lp-primary);
  padding: var(--space-block-sm) 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-light);
  min-height: 120px;
}
@media (width <= 768px) {
  .q-shop-detail-contact .contact__column .online {
    padding-block: var(--space-block-xs);
  }
}
.q-shop-detail-contact .contact__column .online:focus-visible img {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-contact .contact__column .online:hover img {
    opacity: var(--opacity);
  }
}
.q-shop-detail-contact .contact__column .online img {
  max-width: 340px;
  width: 100%;
  transition: opacity var(--sec);
}
.q-shop-detail-contact .contact__column .tel {
  background-color: var(--color-light);
  border: 1px solid var(--color-lp-secondary);
  border-radius: 10px;
  padding: var(--space-block-xs) var(--space-block-sm);
}
@media (width <= 768px) {
  .q-shop-detail-contact .contact__column .tel {
    padding: var(--space-block-sm) var(--space-block-xs);
  }
}
.q-shop-detail-contact .contact__column .tel_content {
  margin-block-end: 5px;
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: center;
}
.q-shop-detail-contact .contact__column .tel_content .icon {
  width: 60px;
  aspect-ratio: 1/1;
  border: 2px solid var(--color-lp-secondary);
  color: var(--color-lp-secondary);
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.q-shop-detail-contact .contact__column .tel_content .icon .u-svg {
  width: 24px;
}
.q-shop-detail-contact .contact__column .tel_content .text {
  font-weight: 700;
}
.q-shop-detail-contact .contact__column .tel_content .text .tight {
  margin-inline: -2px -4px;
}
.q-shop-detail-contact .contact__column .tel_content .text .number {
  font-size: 2.25rem;
  line-height: 1;
  pointer-events: none;
}
@media (width <= 768px) {
  .q-shop-detail-contact .contact__column .tel_content .text .number {
    pointer-events: all;
    letter-spacing: -0.005em;
  }
}
.q-shop-detail-contact .contact__column .tel_button {
  background-color: var(--color-lp-secondary);
  border: 1px solid var(--color-lp-secondary);
  border-radius: 99px;
  color: var(--color-light);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-block-xs);
  width: 284px;
  height: 62px;
  font-size: 1.25rem;
  font-weight: 700;
  margin-inline: auto;
  transition: all var(--sec);
}
.q-shop-detail-contact .contact__column .tel_button:focus-visible {
  background-color: var(--color-light);
  color: var(--color-lp-secondary);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-contact .contact__column .tel_button:hover {
    background-color: var(--color-light);
    color: var(--color-lp-secondary);
  }
}
.q-shop-detail-contact .contact__column .tel_button .icon {
  display: flex;
}

.q-shop-detail-shinkyu-mv {
  position: relative;
  overflow: hidden;
}
.q-shop-detail-shinkyu-mv .mv {
  padding-block: 82px 74px;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-mv .mv {
    padding-block: 222px var(--space-block-lg);
  }
}
.q-shop-detail-shinkyu-mv .mv__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.q-shop-detail-shinkyu-mv .mv__bg img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 60% 10%;
}
.q-shop-detail-shinkyu-mv .mv__text {
  position: relative;
  z-index: 1;
  max-width: 670px;
  width: 60vw;
  margin-block-end: 12px;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-mv .mv__text {
    margin-inline-start: calc(var(--l-section-space-inline) * -1);
    width: auto;
    max-width: 570px;
  }
}
.q-shop-detail-shinkyu-mv .mv__text img {
  width: 100%;
}
.q-shop-detail-shinkyu-mv .mv__button {
  position: relative;
  z-index: 1;
  margin-inline-start: 46px;
  display: inline-block;
  transition: opacity var(--sec);
  max-width: 544px;
  width: 48vw;
}
.q-shop-detail-shinkyu-mv .mv__button:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-shinkyu-mv .mv__button:hover {
    opacity: var(--opacity);
  }
}

.q-shop-detail-shinkyu-time .future {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin-block: -60px var(--space-block-lg);
  position: relative;
  z-index: 1;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-time .future {
    grid-template-columns: repeat(2, 1fr);
    margin-block-start: -30px;
    gap: 4px 6px;
  }
}
.q-shop-detail-shinkyu-time .future__item {
  background-color: var(--color-light);
  border: 1px solid var(--color-lp-primary2);
  border-radius: 10px;
  padding: var(--space-block-sm) 5px;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-time .future__item {
    padding-inline: 4px;
    gap: 8px;
  }
}
.q-shop-detail-shinkyu-time .future__item .icon {
  color: var(--color-lp-primary2);
  margin-inline: auto;
  display: grid;
  width: 110px;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-time .future__item .icon {
    width: 70px;
  }
}
.q-shop-detail-shinkyu-time .future__item .icon .u-svg {
  width: 100%;
}
.q-shop-detail-shinkyu-time .future__item .text {
  font-family: var(--typography-lp3-text-lg-b-font-family);
  font-weight: var(--typography-lp3-text-lg-b-font-weight);
  font-size: var(--typography-lp3-text-lg-b-font-size);
  line-height: var(--typography-lp3-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp3-text-lg-b-letter-spacing);
  text-align: center;
  color: var(--color-lp-primary2);
  line-height: 1.4615384615;
  display: flex;
  align-items: center;
  justify-content: center;
}
.q-shop-detail-shinkyu-time .schedule {
  display: grid;
  grid-template-columns: auto 45%;
  gap: 13px 20px;
  justify-content: center;
  align-items: center;
  margin-block-end: var(--space-block-section);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-time .schedule {
    grid-template-columns: 1fr;
  }
}
.q-shop-detail-shinkyu-time .schedule__title {
  display: grid;
  grid-template-columns: auto auto;
  align-items: center;
  justify-content: start;
  gap: 8px;
  margin-block-end: var(--space-block-sm);
}
@media (width <= 920px) {
  .q-shop-detail-shinkyu-time .schedule__title {
    grid-template-columns: 1fr;
  }
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-time .schedule__title {
    grid-template-columns: 1fr;
    margin-block-end: 0;
  }
}
.q-shop-detail-shinkyu-time .schedule__title .title {
  font-family: var(--typography-lp3-title-md-b-font-family);
  font-weight: var(--typography-lp3-title-md-b-font-weight);
  font-size: var(--typography-lp3-title-md-b-font-size);
  line-height: var(--typography-lp3-title-md-b-line-height);
  --letter-spacing: var(--typography-lp3-title-md-b-letter-spacing);
  color: var(--color-lp-primary2);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-time .schedule__title .title {
    font-size: 2.625rem;
    text-align: center;
  }
}
.q-shop-detail-shinkyu-time .schedule__title .time {
  background-color: var(--color-bg-ash2);
  border-radius: 99px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0 var(--space-block-xs);
  width: 100%;
  padding: 4px 29px;
  font-family: var(--typography-lp3-text-md-b-font-family);
  font-weight: var(--typography-lp3-text-md-b-font-weight);
  font-size: var(--typography-lp3-text-md-b-font-size);
  line-height: var(--typography-lp3-text-md-b-line-height);
  --letter-spacing: var(--typography-lp3-text-md-b-letter-spacing);
  color: var(--color-lp-primary2);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-time .schedule__title .time {
    font-size: 1.25rem;
    width: fit-content;
    margin-inline: auto;
  }
}
.q-shop-detail-shinkyu-time .schedule__title .time .sub {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-time .schedule__title .time .sub {
    font-size: 1rem;
  }
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-time .schedule__head {
    display: contents;
  }
}
.q-shop-detail-shinkyu-time .schedule__holiday {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  color: var(--color-lp-primary2);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-time .schedule__holiday {
    grid-area: 3/1/4/2;
    font-size: 1rem;
  }
}

.p-shop-detail-shinkyu-news {
  background-color: var(--color-lp-primary2);
  margin-block-start: calc(110 / 1600 * 199vw);
  padding-block-end: var(--space-block-section);
  position: relative;
}
@media (width <= 768px) {
  .p-shop-detail-shinkyu-news {
    margin-block-start: calc(5 / 36 * 199vw);
  }
}
.p-shop-detail-shinkyu-news.q-news .news__item:focus-visible .news__title {
  color: var(--color-lp-bg-secondary2);
}
@media (hover: hover) and (pointer: fine) {
  .p-shop-detail-shinkyu-news.q-news .news__item:hover .news__title {
    color: var(--color-lp-bg-secondary2);
  }
}
.p-shop-detail-shinkyu-news.q-news .news__title {
  color: var(--color-light);
}
.p-shop-detail-shinkyu-news.q-news .news__date {
  color: var(--color-light);
}
.p-shop-detail-shinkyu-news.q-news .news__tag {
  color: var(--color-light);
}
.p-shop-detail-shinkyu-news .c-button {
  background-color: var(--color-lp-primary2);
  color: var(--color-light);
  border-color: var(--color-light);
}
.p-shop-detail-shinkyu-news .c-button:focus-visible {
  color: var(--color-lp-primary2);
  background-color: var(--color-light);
}
.p-shop-detail-shinkyu-news .c-button:focus-visible .c-button__arrow {
  color: var(--color-lp-primary2);
}
@media (hover: hover) and (pointer: fine) {
  .p-shop-detail-shinkyu-news .c-button:hover {
    color: var(--color-lp-primary2);
    background-color: var(--color-light);
  }
  .p-shop-detail-shinkyu-news .c-button:hover .c-button__arrow {
    color: var(--color-lp-primary2);
  }
}

.q-shop-detail-shinkyu-check {
  position: relative;
  padding-block: var(--space-block-section) calc(70px + calc(110 / 1600 * 99vw));
  overflow: hidden;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-check {
    padding-block-end: calc(80px + (5 / 36 * 99vw));
  }
}
.q-shop-detail-shinkyu-check .check {
  color: var(--color-light);
  position: relative;
  z-index: 1;
  margin-block-end: 60px;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-check .check {
    margin-block-end: 54px;
  }
}
.q-shop-detail-shinkyu-check .check__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.q-shop-detail-shinkyu-check .check__bg img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}
.q-shop-detail-shinkyu-check .check__title {
  margin-block-end: 35px;
  text-align: center;
}
.q-shop-detail-shinkyu-check .check__title .title {
  font-family: var(--typography-lp3-title-md-b-font-family);
  font-weight: var(--typography-lp3-title-md-b-font-weight);
  font-size: var(--typography-lp3-title-md-b-font-size);
  line-height: var(--typography-lp3-title-md-b-line-height);
  --letter-spacing: var(--typography-lp3-title-md-b-letter-spacing);
  margin-block-end: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-check .check__title .title {
    font-size: 1.5rem;
  }
}
.q-shop-detail-shinkyu-check .check__title .sub {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-check .check__title .sub {
    font-size: 0.75rem;
  }
}
.q-shop-detail-shinkyu-check .check__list {
  margin-block-end: var(--space-block-lg);
  width: fit-content;
  margin-inline: auto;
}
.q-shop-detail-shinkyu-check .check__list .list {
  display: grid;
  grid-template-columns: 64px auto 1fr;
  align-items: center;
}
@media (width <= 920px) {
  .q-shop-detail-shinkyu-check .check__list .list {
    grid-template-columns: auto 1fr;
    gap: 4px 0;
  }
  .q-shop-detail-shinkyu-check .check__list .list:not(:last-child) {
    margin-block-end: var(--space-block-xs);
  }
}
.q-shop-detail-shinkyu-check .check__list .list .icon {
  display: flex;
}
@media (width <= 920px) {
  .q-shop-detail-shinkyu-check .check__list .list .icon {
    width: 32px;
  }
}
.q-shop-detail-shinkyu-check .check__list .list .sub {
  margin-inline-end: var(--space-block-xs);
  background-color: var(--color-light);
  color: var(--color-lp-primary2);
  border-radius: 99px;
  padding: 6px;
  min-width: 210px;
  font-family: var(--typography-lp3-text-md-b-font-family);
  font-weight: var(--typography-lp3-text-md-b-font-weight);
  font-size: var(--typography-lp3-text-md-b-font-size);
  line-height: var(--typography-lp3-text-md-b-line-height);
  --letter-spacing: var(--typography-lp3-text-md-b-letter-spacing);
  text-align: center;
}
@media (width <= 920px) {
  .q-shop-detail-shinkyu-check .check__list .list .sub {
    padding: 2px 26px 4px;
    min-width: 200px;
    width: fit-content;
  }
}
.q-shop-detail-shinkyu-check .check__list .list .text {
  font-family: var(--typography-lp3-text-lg-b-font-family);
  font-weight: var(--typography-lp3-text-lg-b-font-weight);
  font-size: var(--typography-lp3-text-lg-b-font-size);
  line-height: var(--typography-lp3-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp3-text-lg-b-letter-spacing);
}
@media (width <= 920px) {
  .q-shop-detail-shinkyu-check .check__list .list .text {
    grid-area: 2/2/3/3;
  }
}

.q-shop-detail-shinkyu-reason {
  position: relative;
  padding-block-end: var(--space-block-section);
}
.q-shop-detail-shinkyu-reason .reason__column {
  display: flex;
  align-items: flex-start;
  gap: var(--space-block-lg);
  margin-inline-start: -100px;
}
@media (width <= 1360px) {
  .q-shop-detail-shinkyu-reason .reason__column {
    margin-inline-start: 0;
  }
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-reason .reason__column {
    flex-direction: column;
    gap: var(--space-block-sm);
  }
}
.q-shop-detail-shinkyu-reason .reason__column._reverse {
  flex-direction: row-reverse;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-reason .reason__column._reverse {
    flex-direction: column;
  }
}
.q-shop-detail-shinkyu-reason .reason__column:not(:last-child) {
  margin-block-end: var(--space-block-lg);
}
.q-shop-detail-shinkyu-reason .reason__head {
  box-shadow: 0 0 10px color-mix(in srgb, var(--color-base) 30%, transparent);
  width: 56.5%;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-reason .reason__head {
    width: 100%;
  }
}
.q-shop-detail-shinkyu-reason .reason__head img {
  width: 100%;
}
.q-shop-detail-shinkyu-reason .reason__title {
  border-block-end: 1px solid var(--color-lp-primary2);
  padding-block-end: var(--space-block-sm);
  margin-block-end: var(--space-block-sm);
}
.q-shop-detail-shinkyu-reason .reason__title .en {
  font-family: var(--typography-lp3-text-md-b-font-family);
  font-weight: var(--typography-lp3-text-md-b-font-weight);
  font-size: var(--typography-lp3-text-md-b-font-size);
  line-height: var(--typography-lp3-text-md-b-line-height);
  --letter-spacing: var(--typography-lp3-text-md-b-letter-spacing);
  color: var(--color-lp-primary2);
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 22px;
  align-items: center;
  margin-block-end: var(--space-block-sm);
}
.q-shop-detail-shinkyu-reason .reason__title .en::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color: var(--color-lp-primary2);
}
.q-shop-detail-shinkyu-reason .reason__title .title {
  font-family: var(--typography-lp3-text-lg-b-font-family);
  font-weight: var(--typography-lp3-text-lg-b-font-weight);
  font-size: var(--typography-lp3-text-lg-b-font-size);
  line-height: var(--typography-lp3-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp3-text-lg-b-letter-spacing);
  color: var(--color-lp-primary2);
}
.q-shop-detail-shinkyu-reason .reason .c-text {
  text-box: trim-both;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-reason .reason .c-text {
    font-size: 1rem;
  }
}
.q-shop-detail-shinkyu-reason .reason__body {
  width: calc(100% - (56.5% + var(--space-block-lg)));
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-reason .reason__body {
    width: 100%;
  }
}

.q-shop-detail-shinkyu-flow {
  background-color: var(--color-lp-primary2);
  margin-block-start: calc(110 / 1600 * 99vw);
  padding-block-end: var(--space-block-section);
  position: relative;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-flow {
    margin-block-start: calc(5 / 36 * 99vw);
  }
}
.q-shop-detail-shinkyu-flow .flow__item {
  background-color: var(--color-light);
  display: grid;
  grid-template-columns: 1fr 45%;
  align-items: flex-start;
  position: relative;
  border: 1px solid var(--color-lp-primary2);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-flow .flow__item {
    grid-template-columns: 1fr;
  }
}
.q-shop-detail-shinkyu-flow .flow__item:not(:last-child) {
  margin-block-end: var(--space-block-sm);
}
.q-shop-detail-shinkyu-flow .flow__item:not(:last-child)::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 10px;
  height: 29px;
  bottom: -30px;
  left: 106px;
  background-color: var(--color-light);
}
.q-shop-detail-shinkyu-flow .flow__item._line .flow__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-block-xs);
  align-self: center;
  margin-inline-end: 50px;
  transition: opacity var(--sec);
  height: auto;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-flow .flow__item._line .flow__body {
    margin: 0 var(--space-block-sm) var(--space-block-lg) var(--space-block-sm);
    max-width: 440px;
  }
}
.q-shop-detail-shinkyu-flow .flow__item._line .flow__body:focus-visible {
  opacity: var(--sec);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-shinkyu-flow .flow__item._line .flow__body:hover {
    opacity: var(--sec);
  }
}
.q-shop-detail-shinkyu-flow .flow__head {
  padding: var(--space-block-lg);
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: var(--space-block-sm);
  align-items: start;
}
@media (width <= 920px) {
  .q-shop-detail-shinkyu-flow .flow__head {
    grid-template-columns: 80px 1fr;
    padding-inline: var(--space-block-sm);
  }
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-flow .flow__head {
    padding: var(--space-block-md) var(--space-block-sm) var(--space-block-sm);
    gap: var(--space-block-xs) var(--space-block-sm);
  }
}
.q-shop-detail-shinkyu-flow .flow__head .link {
  color: var(--color-lp-secondary2);
  transition: opacity var(--sec);
}
.q-shop-detail-shinkyu-flow .flow__head .link:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-shinkyu-flow .flow__head .link:hover {
    opacity: var(--opacity);
  }
}
.q-shop-detail-shinkyu-flow .flow__head .link .text {
  text-decoration: underline;
}
.q-shop-detail-shinkyu-flow .flow__head .link .u-svg {
  vertical-align: sub;
}
.q-shop-detail-shinkyu-flow .flow__head .link._anchor .u-svg {
  rotate: 90deg;
}
.q-shop-detail-shinkyu-flow .flow__head .kakko {
  color: var(--color-lp-secondary2);
  border-block: 1px solid var(--color-lp-secondary2);
  padding-block: 7px;
  margin-block-start: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-flow .flow__head .kakko {
    grid-area: 3/1/4/3;
    margin-block-start: 0;
  }
}
.q-shop-detail-shinkyu-flow .flow__title {
  font-family: var(--typography-lp3-text-lg-b-font-family);
  font-weight: var(--typography-lp3-text-lg-b-font-weight);
  font-size: var(--typography-lp3-text-lg-b-font-size);
  line-height: var(--typography-lp3-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp3-text-lg-b-letter-spacing);
  margin-block-end: 15px;
  color: var(--color-lp-primary2);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-flow .flow__title {
    margin-block-end: 0;
    align-self: center;
  }
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-flow .flow .c-text {
    grid-area: 2/1/3/3;
  }
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-flow .flow__text {
    display: contents;
  }
}
.q-shop-detail-shinkyu-flow .flow__body {
  height: 100%;
}
.q-shop-detail-shinkyu-flow .flow__body img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.q-shop-detail-shinkyu-flow .flow__body .button {
  transition: opacity var(--sec);
}
.q-shop-detail-shinkyu-flow .flow__body .button:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-shinkyu-flow .flow__body .button:hover {
    opacity: var(--opacity);
  }
}

.q-shop-detail-shinkyu-voice {
  margin-block-start: calc(110 / 1600 * 99vw);
  padding-block-end: calc((110 / 1600 * 99vw) + var(--space-block-section));
  position: relative;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-voice {
    margin-block-start: calc(5 / 36 * 99vw);
    padding-block-end: calc((5 / 36 * 99vw) + var(--space-block-section));
  }
}
.q-shop-detail-shinkyu-voice .p-voice__title {
  color: var(--color-lp-secondary2);
}
.q-shop-detail-shinkyu-voice .c-button {
  border-color: var(--color-lp-primary2);
  color: var(--color-lp-primary2);
}
.q-shop-detail-shinkyu-voice .c-button:focus-visible {
  color: var(--color-light);
  background-color: var(--color-lp-primary2);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-shinkyu-voice .c-button:hover {
    color: var(--color-light);
    background-color: var(--color-lp-primary2);
  }
}

.q-shop-detail-shinkyu-menu {
  position: relative;
}
.q-shop-detail-shinkyu-menu .menu {
  background-color: var(--color-lp-primary2);
  padding-block-end: var(--space-block-lg);
}
.q-shop-detail-shinkyu-menu .menu__column {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-menu .menu__column {
    grid-template-columns: repeat(2, 1fr);
  }
}
.q-shop-detail-shinkyu-menu .menu__item {
  background-color: var(--color-lp-primary2);
  border: 1px solid var(--color-light);
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: var(--space-block-md) var(--space-block-xs);
  color: var(--color-light);
  transition: box-shadow var(--sec);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-menu .menu__item {
    padding: var(--space-block-sm);
  }
}
.q-shop-detail-shinkyu-menu .menu__item:focus-visible {
  box-shadow: 0 0 20px var(--color-light);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-shinkyu-menu .menu__item:hover {
    box-shadow: 0 0 20px var(--color-light);
  }
}
.q-shop-detail-shinkyu-menu .menu__item .icon {
  display: inline-block;
  margin-inline: auto;
}
.q-shop-detail-shinkyu-menu .menu__item .text {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  font-family: var(--typography-lp3-text-md-b-font-family);
  font-weight: var(--typography-lp3-text-md-b-font-weight);
  font-size: var(--typography-lp3-text-md-b-font-size);
  line-height: var(--typography-lp3-text-md-b-line-height);
  --letter-spacing: var(--typography-lp3-text-md-b-letter-spacing);
}
@media (768px < width <= 920px) {
  .q-shop-detail-shinkyu-menu .menu__item .text {
    font-size: 1rem;
  }
}
.q-shop-detail-shinkyu-menu .menu__item .text .u-svg {
  min-width: 22px;
}
.q-shop-detail-shinkyu-menu .concern__column {
  display: flex;
  align-items: start;
  justify-content: space-between;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-menu .concern__column {
    flex-direction: column-reverse;
    gap: var(--space-block-sm);
  }
}
.q-shop-detail-shinkyu-menu .concern__image {
  margin-inline: -124px -100px;
  width: 64%;
}
@media (width <= 1120px) {
  .q-shop-detail-shinkyu-menu .concern__image {
    margin-inline-end: -200px;
    width: 90%;
  }
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-menu .concern__image {
    width: 100%;
    margin-inline: auto;
    max-width: 500px;
  }
}
.q-shop-detail-shinkyu-menu .concern__image img {
  width: 100%;
}
.q-shop-detail-shinkyu-menu .concern__info {
  width: 61%;
  margin-block-start: var(--space-block-lg);
  margin-block-end: var(--space-block-xl);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-menu .concern__info {
    width: 100%;
    margin-block-end: 0;
  }
}
.q-shop-detail-shinkyu-menu .concern__title {
  font-family: var(--typography-lp3-text-md-b-font-family);
  font-weight: var(--typography-lp3-text-md-b-font-weight);
  font-size: var(--typography-lp3-text-md-b-font-size);
  line-height: var(--typography-lp3-text-md-b-line-height);
  --letter-spacing: var(--typography-lp3-text-md-b-letter-spacing);
  padding-block: var(--space-block-sm);
  border-block: 1px solid var(--color-lp-primary2);
  margin-block-end: var(--space-block-sm);
  color: var(--color-lp-primary2);
  text-align: center;
}
.q-shop-detail-shinkyu-menu .concern__list {
  display: flex;
  gap: var(--space-block-xs);
  justify-content: center;
  flex-wrap: wrap;
}
.q-shop-detail-shinkyu-menu .concern__list .list {
  border: 1px solid var(--color-lp-primary2);
  color: var(--color-lp-primary2);
  padding: 14px 32px;
  font-family: var(--typography-lp3-text-md-b-font-family);
  font-weight: var(--typography-lp3-text-md-b-font-weight);
  font-size: var(--typography-lp3-text-md-b-font-size);
  line-height: var(--typography-lp3-text-md-b-line-height);
  --letter-spacing: var(--typography-lp3-text-md-b-letter-spacing);
}
@media (width <= 920px) {
  .q-shop-detail-shinkyu-menu .concern__list .list {
    padding: var(--space-block-xs) var(--space-block-sm);
  }
}

.q-shop-detail-shinkyu-price {
  padding-block-end: var(--space-block-section);
  position: relative;
  background-color: var(--color-lp-primary2);
}
.q-shop-detail-shinkyu-price .price .c-heading-lp3 {
  margin-block-end: 60px;
}
.q-shop-detail-shinkyu-price .price__plan {
  background-color: var(--color-light);
  border-radius: 10px;
  position: relative;
  padding-block-start: 1px;
}
.q-shop-detail-shinkyu-price .price__plan::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: calc(100% - 28px);
  height: calc(100% - 28px);
  top: 14px;
  left: 14px;
  border: 1px solid var(--color-border);
  border-radius: 10px;
}
.q-shop-detail-shinkyu-price .price__plan > * {
  position: relative;
  z-index: 1;
}
.q-shop-detail-shinkyu-price .price__plan .ribon {
  width: fit-content;
  margin: -30px auto var(--space-block-xs) auto;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-price .price__plan .ribon {
    width: 80%;
    max-width: 300px;
    margin-block-start: -20px;
  }
}
.q-shop-detail-shinkyu-price .price__plan .title {
  font-family: var(--typography-lp3-title-lg-b-font-family);
  font-weight: var(--typography-lp3-title-lg-b-font-weight);
  font-size: var(--typography-lp3-title-lg-b-font-size);
  line-height: var(--typography-lp3-title-lg-b-line-height);
  --letter-spacing: var(--typography-lp3-title-lg-b-letter-spacing);
  font-size: 3.25rem;
  text-align: center;
  margin-block-end: var(--space-block-md);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-price .price__plan .title {
    font-size: 1.875rem;
  }
}
.q-shop-detail-shinkyu-price .price__plan .table {
  padding-inline: var(--space-block-md);
  max-width: calc(960px + (var(--space-block-md) * 2));
  margin-inline: auto;
}
.q-shop-detail-shinkyu-price .price__plan .table .tr {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding-block-end: var(--space-block-sm);
  padding-inline-start: var(--space-block-sm);
  border-block-end: 1px solid var(--color-border);
  position: relative;
  margin-block-end: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-price .price__plan .table .tr {
    flex-direction: column;
    align-items: start;
  }
}
.q-shop-detail-shinkyu-price .price__plan .table .tr::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 6px;
  height: calc(100% - var(--space-block-sm));
  top: 0;
  left: 0;
  background-color: var(--color-lp-primary2);
  border-radius: 99px;
}
.q-shop-detail-shinkyu-price .price__plan .table .th .main {
  font-family: var(--typography-lp3-text-lg-b-font-family);
  font-weight: var(--typography-lp3-text-lg-b-font-weight);
  font-size: var(--typography-lp3-text-lg-b-font-size);
  line-height: var(--typography-lp3-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp3-text-lg-b-letter-spacing);
  line-height: 1.6;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-price .price__plan .table .th .main {
    font-size: 1.125rem;
  }
}
.q-shop-detail-shinkyu-price .price__plan .table .th .sub {
  font-family: var(--typography-lp3-text-md-b-font-family);
  font-weight: var(--typography-lp3-text-md-b-font-weight);
  font-size: var(--typography-lp3-text-md-b-font-size);
  line-height: var(--typography-lp3-text-md-b-line-height);
  --letter-spacing: var(--typography-lp3-text-md-b-letter-spacing);
  font-size: 1rem;
  font-weight: 400;
}
.q-shop-detail-shinkyu-price .price__plan .table .td {
  display: flex;
  align-items: center;
  gap: var(--space-block-sm);
  font-family: var(--typography-lp3-text-lg-b-font-family);
  font-weight: var(--typography-lp3-text-lg-b-font-weight);
  font-size: var(--typography-lp3-text-lg-b-font-size);
  line-height: var(--typography-lp3-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp3-text-lg-b-letter-spacing);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-price .price__plan .table .td {
    gap: var(--space-block-xs);
  }
}
.q-shop-detail-shinkyu-price .price__plan .table .td .pre {
  text-decoration: line-through;
}
.q-shop-detail-shinkyu-price .price__plan .table .td .u-svg {
  color: var(--color-lp-secondary2);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-price .price__plan .table .td .u-svg {
    width: 30px;
  }
}
.q-shop-detail-shinkyu-price .price__plan .table .td .price {
  color: var(--color-lp-secondary2);
}
.q-shop-detail-shinkyu-price .price__plan .table .td .price .big {
  font-size: 2.125rem;
  line-height: 1.2;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-price .price__plan .table .td .price .big {
    font-size: 1.75rem;
  }
}
.q-shop-detail-shinkyu-price .price__plan .detail {
  padding-block-end: 60px;
  padding-inline: var(--space-block-md);
  max-width: calc(960px + (var(--space-block-md) * 2));
  margin-inline: auto;
}
.q-shop-detail-shinkyu-price .price__plan .detail .heading {
  font-family: var(--typography-lp3-title-lg-b-font-family);
  font-weight: var(--typography-lp3-title-lg-b-font-weight);
  font-size: var(--typography-lp3-title-lg-b-font-size);
  line-height: var(--typography-lp3-title-lg-b-line-height);
  --letter-spacing: var(--typography-lp3-title-lg-b-letter-spacing);
  font-size: 2.125rem;
  text-align: center;
  display: flex;
  align-items: center;
  gap: var(--space-block-xs);
  justify-content: center;
  margin-block-end: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-price .price__plan .detail .heading {
    font-size: 1.75rem;
  }
}
.q-shop-detail-shinkyu-price .price__plan .detail .heading .big {
  font-size: 2.625rem;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-price .price__plan .detail .heading .big {
    font-size: 1.875rem;
  }
}
.q-shop-detail-shinkyu-price .price__plan .detail .deco:last-child {
  scale: -1 1;
}
.q-shop-detail-shinkyu-price .price__plan .explain {
  text-align: center;
  font-family: var(--typography-lp3-text-lg-b-font-family);
  font-weight: var(--typography-lp3-text-lg-b-font-weight);
  font-size: var(--typography-lp3-text-lg-b-font-size);
  line-height: var(--typography-lp3-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp3-text-lg-b-letter-spacing);
  font-size: 1.3125rem;
  line-height: 1.9047619048;
  font-weight: 700;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-price .price__plan .explain {
    font-size: 1rem;
  }
}
.q-shop-detail-shinkyu-price .price__plan .explain .line {
  border-block-end: 2px solid var(--color-lp-primary2);
}
.q-shop-detail-shinkyu-price .price .p-lp-bnr {
  margin-block-end: 76px;
}

.q-shop-detail-shinkyu-director {
  margin-block-start: calc(110 / 1600 * 99vw);
  padding-block-end: var(--space-block-section);
  position: relative;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-director {
    margin-block-start: calc(5 / 36 * 99vw);
  }
}
.q-shop-detail-shinkyu-director .director__image {
  margin-block-end: var(--space-block-lg);
}
.q-shop-detail-shinkyu-director .director__image img {
  width: 100%;
}
.q-shop-detail-shinkyu-director .director__column {
  display: grid;
  grid-template-columns: 24% 1fr;
  gap: 50px;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-director .director__column {
    grid-template-columns: 1fr;
    gap: var(--space-block-xs);
  }
}
.q-shop-detail-shinkyu-director .director__head .title {
  font-family: var(--typography-lp3-text-lg-b-font-family);
  font-weight: var(--typography-lp3-text-lg-b-font-weight);
  font-size: var(--typography-lp3-text-lg-b-font-size);
  line-height: var(--typography-lp3-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp3-text-lg-b-letter-spacing);
  color: var(--color-lp-primary2);
}
.q-shop-detail-shinkyu-director .director__body .c-text {
  margin-block-end: var(--space-block-sm);
}
.q-shop-detail-shinkyu-director .director__body .name {
  text-align: right;
  margin-block-start: var(--space-block-sm);
}
.q-shop-detail-shinkyu-director .director__body .history {
  margin-block-start: var(--space-block-lg);
  padding-block-start: var(--space-block-lg);
  border-block-start: 1px solid var(--color-border3);
}
.q-shop-detail-shinkyu-director .director__body .history_title {
  font-family: var(--typography-lp3-text-md-b-font-family);
  font-weight: var(--typography-lp3-text-md-b-font-weight);
  font-size: var(--typography-lp3-text-md-b-font-size);
  line-height: var(--typography-lp3-text-md-b-line-height);
  --letter-spacing: var(--typography-lp3-text-md-b-letter-spacing);
  margin-block-end: var(--space-block-xs);
}
.q-shop-detail-shinkyu-director .director__body .history_table .tr {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: var(--space-block-sm);
  align-items: start;
}

.q-shop-detail-shinkyu-info {
  padding-block-end: var(--space-block-section);
  position: relative;
}
.q-shop-detail-shinkyu-info .info {
  position: relative;
}
.q-shop-detail-shinkyu-info .info__slider {
  position: relative;
  padding-block-end: calc(-110 / 1600 * 99vw);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-info .info__slider {
    padding-block-end: calc(-5 / 36 * 99vw);
  }
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-info .info__slider .image img {
    width: 360px;
  }
}
.q-shop-detail-shinkyu-info .info__column {
  display: grid;
  grid-template-columns: 1fr 45%;
  gap: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-info .info__column {
    grid-template-columns: 1fr;
  }
}
.q-shop-detail-shinkyu-info .info__column .title {
  font-family: var(--typography-lp3-text-lg-b-font-family);
  font-weight: var(--typography-lp3-text-lg-b-font-weight);
  font-size: var(--typography-lp3-text-lg-b-font-size);
  line-height: var(--typography-lp3-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp3-text-lg-b-letter-spacing);
  margin-block-end: var(--space-block-lg);
  color: var(--color-lp-primary2);
}
.q-shop-detail-shinkyu-info .info__column .table .table_tr {
  display: grid;
  grid-template-columns: 73px 1fr;
  gap: 15px var(--space-block-sm);
  padding-block-end: 15px;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-info .info__column .table .table_tr {
    grid-template-columns: 60px 1fr;
  }
}
.q-shop-detail-shinkyu-info .info__column .table .table_tr:not(:last-child) {
  border-block-end: 1px solid var(--color-border3);
  margin-block-end: 15px;
}
.q-shop-detail-shinkyu-info .info__column .table .table_th {
  color: var(--color-lp-primary2);
}
.q-shop-detail-shinkyu-info .info__column .p-schedule__table {
  margin-block-start: 15px;
}
.q-shop-detail-shinkyu-info .info__body iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 1/1;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-info .info__body iframe {
    aspect-ratio: 10/7;
  }
}

.q-shop-detail-shinkyu-faq {
  margin-block-start: calc(110 / 1600 * 99vw);
  padding-block-end: 110px;
  position: relative;
  background-color: var(--color-lp-primary2);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-faq {
    margin-block-start: calc(5 / 36 * 99vw);
  }
}

.q-shop-detail-shinkyu-contact {
  padding-block-end: var(--space-block-section);
  border-block-end: 1px solid var(--color-border2);
}
.q-shop-detail-shinkyu-contact .contact__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-block: -24px -10px;
  position: relative;
  z-index: 1;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-contact .contact__head {
    flex-direction: column;
    align-items: center;
    margin-block: -10vw var(--space-block-sm);
  }
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-contact .contact__image {
    margin-block-end: -54px;
  }
  .q-shop-detail-shinkyu-contact .contact__image img {
    width: 100%;
  }
}
.q-shop-detail-shinkyu-contact .contact__title {
  margin-block-end: 60px;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-contact .contact__title {
    width: 100%;
    margin-block-end: 0;
  }
}
.q-shop-detail-shinkyu-contact .contact__title .sub {
  font-size: 1.9375rem;
  color: var(--color-light);
  background-color: var(--color-lp-secondary2);
  text-align: center;
  padding: 2px 17px;
  position: relative;
  font-weight: 700;
  font-family: var(--ff-sans-serif2);
  margin-block-end: 16px;
  border-block: 1px solid var(--color-light);
  width: fit-content;
  margin-inline: auto;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-contact .contact__title .sub {
    font-size: 1.6875rem;
    width: calc(100% - 54px);
    padding-inline: 0;
  }
}
.q-shop-detail-shinkyu-contact .contact__title .sub .deco {
  position: absolute;
  top: -1px;
  left: -26px;
  width: auto;
  height: calc(100% + 2px);
  width: 27px;
}
.q-shop-detail-shinkyu-contact .contact__title .sub .deco img {
  width: 100%;
  height: 100%;
  vertical-align: inherit;
}
.q-shop-detail-shinkyu-contact .contact__title .sub .deco._2 {
  left: auto;
  right: -26px;
  rotate: -180deg;
}
.q-shop-detail-shinkyu-contact .contact__title .sub .text {
  letter-spacing: 0;
  line-height: 1.4;
}
.q-shop-detail-shinkyu-contact .contact__title .title {
  color: var(--color-lp-secondary2);
  font-family: var(--ff-sans-serif2);
  font-size: 2.8125rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: -0.05em;
  line-height: 1.2;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-contact .contact__title .title {
    font-size: 1.375rem;
    letter-spacing: -0.06em;
  }
}
.q-shop-detail-shinkyu-contact .contact__title .title .tight {
  margin-inline: -8px -16px;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-contact .contact__title .title .tight {
    margin-inline: -5px -8px;
  }
}
.q-shop-detail-shinkyu-contact .contact__title .title span {
  letter-spacing: -0.05em;
}
.q-shop-detail-shinkyu-contact .contact__column {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: var(--space-block-xs);
  position: relative;
  z-index: 1;
}
@media (width <= 920px) {
  .q-shop-detail-shinkyu-contact .contact__column {
    grid-template-columns: 1fr;
  }
}
.q-shop-detail-shinkyu-contact .contact__column .line {
  background-color: var(--color-line);
  border-radius: 10px;
  border: 2px solid var(--color-light);
  padding: var(--space-block-sm) 15px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-contact .contact__column .line {
    padding-block: var(--space-block-xs);
  }
}
.q-shop-detail-shinkyu-contact .contact__column .line:focus-visible img {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-shinkyu-contact .contact__column .line:hover img {
    opacity: var(--opacity);
  }
}
.q-shop-detail-shinkyu-contact .contact__column .line img {
  transition: opacity var(--sec);
}
.q-shop-detail-shinkyu-contact .contact__column .beauty {
  border-radius: 10px;
  border: 1px solid var(--color-beauty);
  padding: var(--space-block-sm) 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-light);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-contact .contact__column .beauty {
    padding-block: var(--space-block-xs);
  }
}
.q-shop-detail-shinkyu-contact .contact__column .beauty:focus-visible img {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-shinkyu-contact .contact__column .beauty:hover img {
    opacity: var(--opacity);
  }
}
.q-shop-detail-shinkyu-contact .contact__column .beauty img {
  max-width: 236px;
  transition: opacity var(--sec);
}
.q-shop-detail-shinkyu-contact .contact__column .tel {
  background-color: var(--color-light);
  border: 1px solid var(--color-lp-secondary2);
  border-radius: 10px;
  padding: var(--space-block-xs) var(--space-block-sm);
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-contact .contact__column .tel {
    padding: var(--space-block-sm) var(--space-block-xs);
  }
}
.q-shop-detail-shinkyu-contact .contact__column .tel_content {
  margin-block-end: 5px;
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: center;
}
.q-shop-detail-shinkyu-contact .contact__column .tel_content .icon {
  width: 60px;
  aspect-ratio: 1/1;
  border: 2px solid var(--color-lp-secondary2);
  color: var(--color-lp-secondary2);
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.q-shop-detail-shinkyu-contact .contact__column .tel_content .icon .u-svg {
  width: 24px;
}
.q-shop-detail-shinkyu-contact .contact__column .tel_content .text {
  font-weight: 700;
}
.q-shop-detail-shinkyu-contact .contact__column .tel_content .text .tight {
  margin-inline: -2px -4px;
}
.q-shop-detail-shinkyu-contact .contact__column .tel_content .text .number {
  font-size: 2.25rem;
  line-height: 1;
  pointer-events: none;
}
@media (width <= 768px) {
  .q-shop-detail-shinkyu-contact .contact__column .tel_content .text .number {
    pointer-events: all;
    letter-spacing: -0.005em;
  }
}
.q-shop-detail-shinkyu-contact .contact__column .tel_button {
  background-color: var(--color-lp-secondary2);
  border: 1px solid var(--color-lp-secondary2);
  border-radius: 99px;
  color: var(--color-light);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-block-xs);
  width: 284px;
  height: 62px;
  font-size: 1.25rem;
  font-weight: 700;
  margin-inline: auto;
  transition: all var(--sec);
}
.q-shop-detail-shinkyu-contact .contact__column .tel_button:focus-visible {
  background-color: var(--color-light);
  color: var(--color-lp-secondary2);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-shinkyu-contact .contact__column .tel_button:hover {
    background-color: var(--color-light);
    color: var(--color-lp-secondary2);
  }
}
.q-shop-detail-shinkyu-contact .contact__column .tel_button .icon {
  display: flex;
}

.q-shop-anchor {
  background-color: var(--color-bg-primary);
  padding-block: var(--space-block-section);
}
@media (width <= 768px) {
  .q-shop-anchor {
    padding-block: var(--space-block-lg);
  }
}
.q-shop-anchor .anchor__column {
  display: grid;
  grid-template-columns: auto 1fr auto 1fr auto 1fr auto;
  gap: var(--space-block-sm);
  justify-content: space-between;
}
@media (width <= 768px) {
  .q-shop-anchor .anchor__column {
    grid-template-columns: 1fr;
    gap: 7px;
  }
}
.q-shop-anchor .anchor__line {
  width: 1px;
  height: 100%;
  background-color: var(--color-base);
}
@media (768px < width) {
  .q-shop-anchor .anchor__line {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
  }
}
@media (width <= 768px) {
  .q-shop-anchor .anchor__line {
    width: 100%;
    height: 1px;
  }
}
.q-shop-anchor .anchor__item {
  transition: opacity var(--sec);
  position: relative;
}
@media (768px < width) {
  .q-shop-anchor .anchor__item {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 3;
    gap: 0;
  }
}
.q-shop-anchor .anchor__item:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-anchor .anchor__item:hover {
    opacity: var(--opacity);
  }
}
@media (width <= 768px) {
  .q-shop-anchor .anchor__info {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: var(--space-block-xs);
  }
}
.q-shop-anchor .anchor__sub {
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  background-color: var(--color-light);
  text-align: center;
  padding: 3px 10px;
  position: relative;
  border-radius: 10px;
  line-height: 1.4285714286;
  margin-block-end: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (width <= 768px) {
  .q-shop-anchor .anchor__sub {
    padding: var(--space-block-xs);
    border-radius: 99px;
    margin-block-end: 5px;
  }
}
.q-shop-anchor .anchor__sub::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 10px;
  aspect-ratio: 1/1;
  bottom: -9px;
  left: 50%;
  translate: -50% 0;
  background-color: var(--color-light);
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}
.q-shop-anchor .anchor__title {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  text-align: center;
}
.q-shop-anchor .anchor__place {
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  color: var(--color-light);
  background-color: var(--color-secondary);
  text-align: center;
  width: 49px;
  margin-inline: auto;
  border-radius: 4px;
  margin-block-end: 4px;
  padding-block-end: 2px;
}
@media (width <= 768px) {
  .q-shop-anchor .anchor__place {
    margin: 0;
    padding-block-start: 2px;
  }
}
.q-shop-anchor .anchor__place._pink {
  background-color: var(--color-tertiary);
}
.q-shop-anchor .anchor__place._blue {
  background-color: var(--color-primary3);
}
.q-shop-anchor .anchor__arrow {
  display: flex;
  justify-content: center;
}
@media (width <= 768px) {
  .q-shop-anchor .anchor__arrow {
    position: absolute;
    right: 0;
    bottom: 6px;
  }
}
.q-shop-anchor .anchor__arrow .u-svg {
  rotate: 90deg;
}

.q-shop-list {
  padding-block: var(--space-block-section) 140px;
}
@media (width <= 768px) {
  .q-shop-list {
    padding-block-end: var(--space-block-section);
  }
}
.q-shop-list .list {
  display: grid;
  grid-template-columns: 48% 1fr;
  gap: 35px;
}
@media (width <= 768px) {
  .q-shop-list .list {
    grid-template-columns: 1fr;
    gap: var(--space-block-sm);
  }
}
.q-shop-list .list:not(:last-child) {
  margin-block-end: 90px;
}
@media (width <= 768px) {
  .q-shop-list .list:not(:last-child) {
    margin-block-end: 60px;
  }
}
.q-shop-list .list__head .image {
  width: 100%;
}
.q-shop-list .list__head .image img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.q-shop-list .list__slider {
  margin-block-end: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-shop-list .list__slider {
    margin-block-end: 6px;
  }
}
.q-shop-list .list__thumbnail .slick-track {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
  width: 100% !important;
}
@media (width <= 768px) {
  .q-shop-list .list__thumbnail .slick-track {
    gap: 4px;
  }
}
.q-shop-list .list__thumbnail .slick-track:before, .q-shop-list .list__thumbnail .slick-track:after {
  content: none !important;
}
.q-shop-list .list__thumbnail .image {
  aspect-ratio: 129/102;
  width: 100% !important;
  cursor: pointer;
}
.q-shop-list .list__title .sub {
  font-family: var(--typography-text-xsm-font-family);
  font-weight: var(--typography-text-xsm-font-weight);
  font-size: var(--typography-text-xsm-font-size);
  line-height: var(--typography-text-xsm-line-height);
  --letter-spacing: var(--typography-text-xsm-letter-spacing);
  font-weight: 500;
}
.q-shop-list .list__title .title {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  margin-block-end: 15px;
  text-box: trim-both;
}
.q-shop-list .list__table {
  margin-block-end: var(--space-block-sm);
}
.q-shop-list .list__tr {
  padding-block: 7px;
  border-block-end: 1px solid var(--color-bg-primary2);
  display: grid;
  grid-template-columns: 70px 1fr;
  gap: 25px;
}
@media (width <= 768px) {
  .q-shop-list .list__tr {
    gap: var(--space-block-xs);
    padding-block: 5px;
  }
}
.q-shop-list .list__tr:first-child {
  border-block-start: 1px solid var(--color-bg-primary2);
}
@media (width <= 768px) {
  .q-shop-list .list__tr._future {
    grid-template-columns: 1fr;
    gap: 0;
  }
}
.q-shop-list .list__th {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
}
.q-shop-list .list__td li {
  text-indent: -1em;
  padding-inline-start: 1em;
}
.q-shop-list .list__contact {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--space-block-xs);
  margin-block-end: 26px;
}
@media (width <= 1120px) {
  .q-shop-list .list__contact {
    grid-template-columns: 1fr;
  }
}
@media (width <= 768px) {
  .q-shop-list .list__contact {
    margin-block-end: var(--space-block-xs);
  }
}
.q-shop-list .list__contact .contact {
  border-radius: 99px;
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity var(--sec);
  height: 60px;
}
@media (width <= 768px) {
  .q-shop-list .list__contact .contact {
    height: 50px;
  }
}
.q-shop-list .list__contact .contact:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-list .list__contact .contact:hover {
    opacity: var(--opacity);
  }
}
.q-shop-list .list__contact .contact._line {
  background-color: var(--color-line);
  color: var(--color-light);
}
@media (width <= 768px) {
  .q-shop-list .list__contact .contact._line .icon {
    width: 36px;
  }
}
.q-shop-list .list__contact .contact._tel {
  background-color: var(--color-light);
  border: 2px solid var(--color-primary);
  color: var(--color-primary);
  gap: var(--space-block-xs);
}
@media (768px < width) {
  .q-shop-list .list__contact .contact._tel {
    pointer-events: none;
  }
}
.q-shop-list .list__contact .contact._beauty {
  background-color: var(--color-light);
  border: 2px solid var(--color-beauty);
  color: var(--color-beauty);
  gap: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-shop-list .list__contact .contact._beauty .icon {
    width: 40px;
  }
}
.q-shop-list .list__contact .contact._online {
  background-color: var(--color-light);
  border: 2px solid var(--color-secondary);
  color: var(--color-secondary);
}
.q-shop-list .list__contact .contact .icon {
  display: flex;
}
.q-shop-list .list__button {
  display: flex;
  align-items: center;
  gap: 12px;
  border-block-end: 1px solid var(--color-primary);
  padding-block-end: 4px;
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  color: var(--color-primary);
  width: fit-content;
  transition: opacity var(--sec);
}
@media (width <= 768px) {
  .q-shop-list .list__button {
    gap: 8px;
    justify-content: space-between;
    padding-block-end: 0;
  }
}
.q-shop-list .list__button:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-list .list__button:hover {
    opacity: var(--opacity);
  }
}
@media (width <= 768px) {
  .q-shop-list .list__button .text {
    letter-spacing: 0.02em;
  }
}

.q-staff {
  padding-block-end: var(--space-block-xxl);
}
.q-staff .staff:not(:last-child) {
  margin-block-end: var(--space-block-xl);
}
.q-staff .staff__head {
  display: grid;
  grid-template-columns: 61% 1fr;
  gap: var(--space-block-lg);
  margin-block-end: var(--space-block-sm);
}
@media (width <= 920px) {
  .q-staff .staff__head {
    grid-template-columns: 50% 1fr;
  }
}
@media (width <= 768px) {
  .q-staff .staff__head {
    grid-template-columns: 1fr;
    gap: 25px;
  }
}
@media (width <= 768px) {
  .q-staff .staff__image {
    aspect-ratio: 320/193;
  }
}
.q-staff .staff__image img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.q-staff .staff__info {
  margin-block-end: 7px;
  align-self: end;
}
@media (width <= 768px) {
  .q-staff .staff__info {
    margin-block-end: 0;
  }
}
.q-staff .staff__info .job {
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  display: grid;
  grid-template-columns: 12px 1fr;
  gap: 6px;
  align-items: center;
  margin-block-end: var(--space-block-xs);
}
.q-staff .staff__info .job::before {
  content: "";
  display: inline-block;
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: var(--color-secondary);
}
.q-staff .staff__info .name {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  margin-block-end: var(--space-block-sm);
  text-box: trim-both;
  padding-block-end: var(--space-block-xs);
  border-block-end: 1px solid var(--color-base);
}
@media (width <= 768px) {
  .q-staff .staff__info .name {
    padding-block-end: var(--space-block-sm);
  }
}
.q-staff .staff__info .name .en {
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  color: var(--color-primary);
}
.q-staff .staff__info .license {
  border: 2px solid var(--color-primary);
  border-radius: 7px;
  position: relative;
  padding: var(--space-block-sm) var(--space-block-md);
  display: grid;
  grid-template-columns: auto 1fr;
  gap: var(--space-block-lg);
  align-items: flex-start;
}
@media (width <= 768px) {
  .q-staff .staff__info .license {
    padding: var(--space-block-sm) var(--space-block-xs) var(--space-block-sm) var(--space-block-sm);
    gap: 24px;
  }
}
.q-staff .staff__info .license::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: calc(100% - 20px);
  height: calc(100% + 6px);
  top: -3px;
  left: 10px;
  background-color: var(--color-bg-base);
}
.q-staff .staff__info .license .license_title {
  position: relative;
  z-index: 1;
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  text-box: trim-both;
}
.q-staff .staff__info .license .license_text {
  position: relative;
  z-index: 1;
  font-family: var(--typography-text-sm-font-family);
  font-weight: var(--typography-text-sm-font-weight);
  font-size: var(--typography-text-sm-font-size);
  line-height: var(--typography-text-sm-line-height);
  --letter-spacing: var(--typography-text-sm-letter-spacing);
  margin-block-start: 3px;
}
.q-staff .staff__body {
  display: grid;
  grid-template-columns: 32% 1fr;
  gap: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-staff .staff__body {
    grid-template-columns: 1fr;
  }
}
.q-staff .staff__card {
  background-color: var(--color-light);
  padding: var(--space-block-sm);
}
.q-staff .staff__card .card_title {
  display: flex;
  align-items: center;
  gap: var(--space-block-xs);
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  margin-block-end: 2px;
  color: var(--color-primary);
}
.q-staff .staff__card .card_title img {
  min-width: 30px;
}

.q-mv {
  display: grid;
  position: relative;
}
.q-mv .mv {
  grid-area: 1/1/2/2;
  position: relative;
}
.q-mv .mv__slide {
  overflow: hidden;
  grid-area: 1/1/2/2;
}
.q-mv .mv__slide .slide {
  width: 540px;
}
@media (width <= 768px) {
  .q-mv .mv__slide .slide {
    width: 364px;
  }
}
.q-mv .mv__slide .slide img {
  width: 100%;
}
.q-mv .mv__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: absolute;
  z-index: 1;
  bottom: 160px;
  left: 0;
  width: calc(100% - (var(--l-section-space-inline) * 2));
  margin-inline: var(--l-section-space-inline);
}
@media (width <= 920px) {
  .q-mv .mv__inner {
    flex-direction: column;
    gap: 16px;
    align-items: start;
    bottom: -10px;
  }
}
.q-mv .mv__text {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.q-mv .mv__text .text {
  position: relative;
  width: fit-content;
  padding: 0 12px;
}
.q-mv .mv__text .text::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  backdrop-filter: blur(10px);
  background-color: color-mix(in srgb, var(--color-light) 75%, transparent);
  filter: brightness(1.5);
}
.q-mv .mv__text .text-inner {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  font-weight: 500;
  position: relative;
  z-index: 1;
  margin-block-start: -6px;
  display: inline-block;
}
@media (width <= 768px) {
  .q-mv .mv__text .text-inner {
    font-size: 16px;
    margin-block-start: -4px;
  }
}
.q-mv .mv__text .emphasis {
  color: var(--color-primary);
  font-weight: 700;
}
.q-mv .mv__text .big {
  font-size: 32px;
}
@media (width <= 768px) {
  .q-mv .mv__text .big {
    font-size: 22px;
  }
}
@media (width <= 768px) {
  .q-mv .mv__sub {
    margin-inline: auto;
    max-width: 270px;
  }
}
@media (width <= 768px) {
  .q-mv .mv__sub img {
    width: 100%;
  }
}
.q-mv .mv__cover {
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 100%;
}
.q-mv .mv__cover img {
  width: 100%;
  height: 81px;
}

.q-top-button {
  margin-block-start: -130px;
  position: relative;
  z-index: 1;
}
@media (width <= 920px) {
  .q-top-button {
    margin-block-start: var(--space-block-md);
  }
}
.q-top-button .button {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-top-button .button {
    grid-template-columns: 1fr;
    gap: var(--space-block-xs);
  }
}
.q-top-button .button__item {
  background-color: color-mix(in srgb, var(--color-light) 95%, transparent);
  border-radius: 0 20px 0 20px;
  padding: var(--space-block-md) 4px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  transition: var(--sec);
  box-shadow: 0 0 14px color-mix(in srgb, var(--color-base) 10%, transparent);
}
@media (width <= 768px) {
  .q-top-button .button__item {
    flex-direction: row;
    padding: 25px var(--space-block-sm);
    display: grid;
    grid-template-columns: auto 1fr;
  }
}
.q-top-button .button__item:focus-visible {
  background-color: var(--color-primary);
}
.q-top-button .button__item:focus-visible .button__text .text .emphasis {
  color: var(--color-light);
}
.q-top-button .button__item:focus-visible .button__text .text .normal {
  color: var(--color-light);
}
.q-top-button .button__item:focus-visible .button__icon {
  color: var(--color-light);
}
@media (hover: hover) and (pointer: fine) {
  .q-top-button .button__item:hover {
    background-color: var(--color-primary);
  }
  .q-top-button .button__item:hover .button__text .text .emphasis {
    color: var(--color-light);
  }
  .q-top-button .button__item:hover .button__text .text .normal {
    color: var(--color-light);
  }
  .q-top-button .button__item:hover .button__icon {
    color: var(--color-light);
  }
}
.q-top-button .button__icon {
  color: var(--color-primary);
  transition: color var(--sec);
  display: flex;
}
@media (width <= 768px) {
  .q-top-button .button__icon {
    width: 50px;
  }
}
.q-top-button .button__text {
  display: flex;
  align-items: center;
  gap: 6px;
}
@media (width <= 768px) {
  .q-top-button .button__text {
    justify-content: space-between;
  }
}
.q-top-button .button__text .text {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  color: var(--color-base);
}
.q-top-button .button__text .text .emphasis {
  transition: color var(--sec);
  color: var(--color-primary);
}
.q-top-button .button__text .text .normal {
  transition: color var(--sec);
  display: inline-block;
}
.q-top-button .button__arrow {
  display: flex;
  min-width: 22px;
}

.q-top-worries {
  padding-block: var(--space-block-xxl);
}
.q-top-worries .worries__title {
  font-family: var(--typography-title-xxlg-b-font-family);
  font-weight: var(--typography-title-xxlg-b-font-weight);
  font-size: var(--typography-title-xxlg-b-font-size);
  line-height: var(--typography-title-xxlg-b-line-height);
  --letter-spacing: var(--typography-title-xxlg-b-letter-spacing);
  margin-block-end: var(--space-block-lg);
  text-align: center;
}
.q-top-worries .worries__title .emphasis {
  color: var(--color-primary);
}
.q-top-worries .worries__column {
  display: grid;
  grid-template-columns: 43% 1fr;
  align-items: center;
  gap: 60px;
}
@media (width <= 768px) {
  .q-top-worries .worries__column {
    display: flex;
    flex-direction: column-reverse;
    gap: var(--space-block-lg);
  }
}
.q-top-worries .worries__head {
  overflow: hidden;
  border-radius: 10px;
  height: 100%;
}
.q-top-worries .worries__head img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: left;
}
.q-top-worries .worries__list {
  display: flex;
  flex-direction: column;
  gap: var(--space-block-xs);
}
.q-top-worries .worries__list .list {
  display: flex;
  gap: 15px;
  align-items: flex-start;
  background-color: var(--color-light);
  border: 1px solid var(--color-bg-primary);
  border-radius: 8px;
  padding: var(--space-block-xs) var(--space-block-sm);
  width: fit-content;
  position: relative;
  margin-block-end: 12px;
}
@media (width <= 768px) {
  .q-top-worries .worries__list .list {
    gap: 10px;
    padding-inline: var(--space-block-xs) 12px;
  }
}
.q-top-worries .worries__list .list::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 12px;
  aspect-ratio: 1/1;
  bottom: -11px;
  left: 15px;
  background-color: var(--color-light);
  clip-path: polygon(0 0, 0% 100%, 100% 0);
  z-index: 1;
}
.q-top-worries .worries__list .list::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 14px;
  aspect-ratio: 1/1;
  bottom: -14px;
  left: 14px;
  background-color: var(--color-bg-primary);
  clip-path: polygon(0 0, 0% 100%, 100% 0);
}
@media (width <= 768px) {
  .q-top-worries .worries__list .check {
    min-width: 20px;
    width: 20px;
    display: flex;
    margin-top: 6px;
  }
}
.q-top-worries .worries__list .text {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
}

.q-top-features {
  background-color: var(--color-bg-primary);
  padding-block: var(--space-block-xxl);
  position: relative;
}
.q-top-features::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 100%;
  height: 187px;
  top: calc(var(--space-block-xxl) * -1);
  left: 0;
  background: linear-gradient(to bottom, var(--color-bg-base), var(--color-bg-primary));
}
.q-top-features .features__content {
  display: grid;
  grid-template-columns: 39% 1fr;
  gap: 90px;
  margin-block-end: calc((540px / 2) * -1);
}
@media (width <= 920px) {
  .q-top-features .features__content {
    gap: 60px;
  }
}
@media (width <= 768px) {
  .q-top-features .features__content {
    grid-template-columns: 1fr;
    margin-block-end: 0;
  }
}
.q-top-features .features__image {
  position: sticky;
  top: calc(50vh + var(--scroll-adjust)/2);
  translate: 0 -50%;
  height: 540px;
  margin-block-start: calc(540px / 2);
}
@media (width <= 768px) {
  .q-top-features .features__image {
    position: initial;
    height: auto;
    margin-block-start: 0;
    margin-block-end: var(--space-block-sm);
    translate: 0;
  }
}
.q-top-features .features__image .image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
}
@media (width <= 768px) {
  .q-top-features .features__image .image {
    position: inherit;
    clip-path: none;
  }
}
.q-top-features .features__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.q-top-features .features__item {
  padding-block: 0 220px;
}
@media (width <= 768px) {
  .q-top-features .features__item {
    padding-block: 0 80px;
    position: relative;
  }
}
.q-top-features .features__item:first-child {
  padding-block: 50px 220px;
}
@media (width <= 768px) {
  .q-top-features .features__item:first-child {
    padding-block: 0 80px;
  }
}
.q-top-features .features__item:last-child {
  padding-block-end: 400px;
}
@media (width <= 768px) {
  .q-top-features .features__item:last-child {
    padding-block-end: 0;
  }
}
.q-top-features .features__number {
  font-family: var(--typography-EN-title-xxlg-b-font-family);
  font-weight: var(--typography-EN-title-xxlg-b-font-weight);
  font-size: var(--typography-EN-title-xxlg-b-font-size);
  line-height: var(--typography-EN-title-xxlg-b-line-height);
  --letter-spacing: var(--typography-EN-title-xxlg-b-letter-spacing);
  color: var(--color-secondary);
  font-size: 12px;
  font-weight: 500;
  background-color: var(--color-light);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 9px 10px 6px;
  width: fit-content;
  margin-block-end: var(--space-block-md);
}
@media (width <= 768px) {
  .q-top-features .features__number {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
  }
}
.q-top-features .features__number .number {
  font-size: 36px;
}
.q-top-features .features__title {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  margin-block-end: var(--space-block-md);
  text-box: trim-both;
}
@media (width <= 768px) {
  .q-top-features .features__title {
    margin-block-end: var(--space-block-sm);
  }
}

.q-top-clinic {
  padding-block: var(--space-block-xxl);
}
.q-top-clinic .clinic {
  display: flex;
  flex-direction: column;
  gap: var(--space-block-lg);
}
.q-top-clinic .clinic__item {
  display: grid;
  grid-template-columns: 45% 1fr;
  background-color: var(--color-light);
}
@media (width <= 768px) {
  .q-top-clinic .clinic__item {
    grid-template-columns: 1fr;
  }
}
.q-top-clinic .clinic__image img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.q-top-clinic .clinic__body {
  padding: var(--space-block-lg) 50px;
}
@media (width <= 920px) {
  .q-top-clinic .clinic__body {
    padding-inline: 30px;
  }
}
@media (width <= 768px) {
  .q-top-clinic .clinic__body {
    padding: var(--space-block-sm) var(--space-block-sm) var(--space-block-lg);
  }
}
.q-top-clinic .clinic__title {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  margin-block-end: var(--space-block-md);
  text-box: trim-both;
}
@media (width <= 768px) {
  .q-top-clinic .clinic__title {
    margin-block-end: var(--space-block-xs);
  }
}
.q-top-clinic .clinic__list .list {
  display: grid;
  grid-template-columns: 104px 1fr;
  gap: var(--space-block-xs);
  margin-block-end: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-top-clinic .clinic__list .list {
    grid-template-columns: 1fr;
    justify-items: start;
  }
}
.q-top-clinic .clinic__list .list_title {
  background-color: var(--color-primary);
  color: var(--color-light);
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (width <= 768px) {
  .q-top-clinic .clinic__list .list_title {
    padding-inline: 15px;
    min-width: 104px;
  }
}
@media (width <= 768px) {
  .q-top-clinic .clinic .c-button {
    margin-block-start: var(--space-block-sm);
  }
}

.q-top-cases {
  background-color: var(--color-bg-primary);
}
.q-top-cases .cases {
  display: flex;
  gap: var(--space-block-xxl);
}
@media (width <= 1120px) {
  .q-top-cases .cases {
    gap: var(--space-block-md);
  }
}
@media (width <= 768px) {
  .q-top-cases .cases {
    flex-direction: column;
  }
}
.q-top-cases .cases__head {
  margin-inline-start: calc(50% - calc(var(--vw) * 50));
  width: 65%;
}
@media (width <= 920px) {
  .q-top-cases .cases__head {
    width: 40%;
  }
}
@media (width <= 768px) {
  .q-top-cases .cases__head {
    width: calc(var(--vw) * 100);
  }
}
.q-top-cases .cases__head img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 70% 0%;
}
.q-top-cases .cases__body {
  padding-block: var(--space-block-xl);
  width: 50%;
}
@media (width <= 920px) {
  .q-top-cases .cases__body {
    width: 60%;
  }
}
@media (width <= 768px) {
  .q-top-cases .cases__body {
    width: 100%;
    padding-block: 0 var(--space-block-xxl);
  }
}
.q-top-cases .cases__menu {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-top-cases .cases__menu {
    gap: var(--space-block-xs);
  }
}
.q-top-cases .cases__menu .menu {
  background-color: var(--color-light);
  border-radius: 0 10px;
  box-shadow: 0 0 10px color-mix(in srgb, var(--color-base) 10%, transparent);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 70px;
  transition: background-color var(--sec);
}
@media (width <= 1120px) {
  .q-top-cases .cases__menu .menu {
    padding-inline: 40px;
  }
}
@media (width <= 768px) {
  .q-top-cases .cases__menu .menu {
    justify-content: start;
    padding: var(--space-block-xs) 40px var(--space-block-xs) var(--space-block-sm);
    height: 70px;
  }
}
.q-top-cases .cases__menu .menu:focus-visible {
  background-color: var(--color-primary);
}
.q-top-cases .cases__menu .menu:focus-visible .text {
  color: var(--color-light);
}
@media (hover: hover) and (pointer: fine) {
  .q-top-cases .cases__menu .menu:hover {
    background-color: var(--color-primary);
  }
  .q-top-cases .cases__menu .menu:hover .text {
    color: var(--color-light);
  }
}
.q-top-cases .cases__menu .text {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
  color: var(--color-primary);
  transition: color var(--sec);
}
.q-top-cases .cases__menu .arrow {
  position: absolute;
  right: var(--space-block-sm);
  top: 50%;
  translate: 0 -50%;
  display: flex;
}
@media (width <= 1120px) {
  .q-top-cases .cases__menu .arrow {
    right: var(--space-block-xs);
  }
}
.q-top-cases .cases .c-button {
  margin-block-start: var(--space-block-lg);
}

.q-top-bnr .bnr {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media (width <= 768px) {
  .q-top-bnr .bnr {
    grid-template-columns: 1fr;
  }
}
.q-top-bnr .bnr__item {
  display: block;
  position: relative;
  min-height: 300px;
}
@media (width <= 768px) {
  .q-top-bnr .bnr__item {
    min-height: auto;
  }
}
.q-top-bnr .bnr__item:focus-visible::before {
  background-color: color-mix(in srgb, var(--color-base) 10%, transparent);
}
.q-top-bnr .bnr__item:focus-visible .bnr__image img {
  scale: 1.1;
}
@media (hover: hover) and (pointer: fine) {
  .q-top-bnr .bnr__item:hover::before {
    background-color: color-mix(in srgb, var(--color-base) 10%, transparent);
  }
  .q-top-bnr .bnr__item:hover .bnr__image img {
    scale: 1.1;
  }
}
.q-top-bnr .bnr__item::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: calc(100% - var(--space-block-sm) * 2);
  height: calc(100% - var(--space-block-sm) * 2);
  top: var(--space-block-sm);
  left: var(--space-block-sm);
  background-color: color-mix(in srgb, var(--color-base) 40%, transparent);
  border-radius: 20px;
  transition: background-color var(--sec);
  z-index: 1;
}
@media (width <= 768px) {
  .q-top-bnr .bnr__item::before {
    width: calc(100% - var(--space-block-xs) * 2);
    height: calc(100% - var(--space-block-xs) * 2);
    top: var(--space-block-xs);
    left: var(--space-block-xs);
  }
}
.q-top-bnr .bnr__image {
  overflow: hidden;
  height: 100%;
}
.q-top-bnr .bnr__image img {
  transition: scale var(--sec);
  scale: 1;
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.q-top-bnr .bnr__title {
  color: var(--color-light);
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  z-index: 2;
}
.q-top-bnr .bnr__title .en {
  font-family: var(--typography-EN-title-xxlg-b-font-family);
  font-weight: var(--typography-EN-title-xxlg-b-font-weight);
  font-size: var(--typography-EN-title-xxlg-b-font-size);
  line-height: var(--typography-EN-title-xxlg-b-line-height);
  --letter-spacing: var(--typography-EN-title-xxlg-b-letter-spacing);
  font-size: 50px;
  margin-block-end: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-top-bnr .bnr__title .en {
    font-size: 40px;
    margin-block-end: 0;
  }
}
.q-top-bnr .bnr__title .title {
  font-family: var(--typography-title-xlg-b-font-family);
  font-weight: var(--typography-title-xlg-b-font-weight);
  font-size: var(--typography-title-xlg-b-font-size);
  line-height: var(--typography-title-xlg-b-line-height);
  --letter-spacing: var(--typography-title-xlg-b-letter-spacing);
}
@media (width <= 768px) {
  .q-top-bnr .bnr__title .title {
    font-size: 24px;
  }
}

.q-top-voice {
  padding-block: var(--space-block-xxl);
}
.q-top-voice .c-button {
  margin-block-start: var(--space-block-lg);
}

.q-shop-detail-lab-mv {
  position: relative;
  overflow: hidden;
}
.q-shop-detail-lab-mv .mv {
  padding-block: 82px 74px;
}
@media (width <= 768px) {
  .q-shop-detail-lab-mv .mv {
    padding-block: 222px var(--space-block-lg);
  }
}
.q-shop-detail-lab-mv .mv__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.q-shop-detail-lab-mv .mv__bg img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 60% 10%;
}
.q-shop-detail-lab-mv .mv__text {
  position: relative;
  z-index: 1;
  max-width: 670px;
  width: 60vw;
  margin-block-end: 12px;
}
@media (width <= 768px) {
  .q-shop-detail-lab-mv .mv__text {
    margin-inline-start: calc(var(--l-section-space-inline) * -1);
    width: auto;
    max-width: 570px;
  }
}
.q-shop-detail-lab-mv .mv__text img {
  width: 100%;
}
.q-shop-detail-lab-mv .mv__button {
  position: relative;
  z-index: 1;
  margin-inline-start: 46px;
  display: inline-block;
  transition: opacity var(--sec);
  max-width: 544px;
  width: 48vw;
}
.q-shop-detail-lab-mv .mv__button:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-lab-mv .mv__button:hover {
    opacity: var(--opacity);
  }
}

.q-shop-detail-lab-time {
  padding-block-end: calc(var(--space-block-section) + 78px);
}
@media (width <= 768px) {
  .q-shop-detail-lab-time {
    padding-block-end: calc(var(--space-block-section) + 32px);
  }
}
.q-shop-detail-lab-time .future {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
  margin-block: -60px var(--space-block-lg);
  position: relative;
  z-index: 1;
}
@media (width <= 768px) {
  .q-shop-detail-lab-time .future {
    grid-template-columns: repeat(2, 1fr);
    margin-block-start: -30px;
    gap: 4px 6px;
  }
}
.q-shop-detail-lab-time .future__item {
  background-color: var(--color-light);
  border: 1px solid var(--color-lp-primary);
  border-radius: 10px;
  padding: var(--space-block-sm) 5px;
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: 0;
}
@media (width <= 768px) {
  .q-shop-detail-lab-time .future__item {
    padding-inline: 4px;
    gap: 8px;
  }
}
.q-shop-detail-lab-time .future__item .icon {
  color: var(--color-lp-secondary);
  margin-inline: auto;
  display: grid;
  width: 110px;
}
@media (width <= 768px) {
  .q-shop-detail-lab-time .future__item .icon {
    width: 70px;
  }
}
.q-shop-detail-lab-time .future__item .icon .u-svg {
  width: 100%;
}
.q-shop-detail-lab-time .future__item .text {
  font-family: var(--typography-lp-text-lg-b-font-family);
  font-weight: var(--typography-lp-text-lg-b-font-weight);
  font-size: var(--typography-lp-text-lg-b-font-size);
  line-height: var(--typography-lp-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp-text-lg-b-letter-spacing);
  text-align: center;
  color: var(--color-lp-primary);
  line-height: 1.4615384615;
  display: flex;
  align-items: center;
  justify-content: center;
}
.q-shop-detail-lab-time .schedule {
  display: grid;
  grid-template-columns: auto 45%;
  gap: 13px;
  justify-content: center;
  align-items: center;
  padding-block-end: var(--space-block-section);
}
@media (width <= 768px) {
  .q-shop-detail-lab-time .schedule {
    grid-template-columns: 1fr;
  }
}
.q-shop-detail-lab-time .schedule__title {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 8px;
  margin-block-end: var(--space-block-sm);
}
@media (width <= 920px) {
  .q-shop-detail-lab-time .schedule__title {
    grid-template-columns: 1fr;
  }
}
@media (width <= 768px) {
  .q-shop-detail-lab-time .schedule__title {
    grid-template-columns: 1fr;
    margin-block-end: 0;
  }
}
.q-shop-detail-lab-time .schedule__title .title {
  font-family: var(--typography-lp-title-md-b-font-family);
  font-weight: var(--typography-lp-title-md-b-font-weight);
  font-size: var(--typography-lp-title-md-b-font-size);
  line-height: var(--typography-lp-title-md-b-line-height);
  --letter-spacing: var(--typography-lp-title-md-b-letter-spacing);
  color: var(--color-lp-primary);
}
@media (width <= 768px) {
  .q-shop-detail-lab-time .schedule__title .title {
    font-size: 2.625rem;
    text-align: center;
  }
}
.q-shop-detail-lab-time .schedule__title .time {
  background-color: var(--color-bg-ash2);
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 0 var(--space-block-xs);
  width: 100%;
  padding: 4px 29px 6px;
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
  color: var(--color-lp-primary);
}
@media (width <= 768px) {
  .q-shop-detail-lab-time .schedule__title .time {
    font-size: 1.25rem;
    width: fit-content;
    margin-inline: auto;
  }
}
.q-shop-detail-lab-time .schedule__title .time .sub {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  line-height: 1.4;
}
@media (width <= 768px) {
  .q-shop-detail-lab-time .schedule__title .time .sub {
    font-size: 1rem;
  }
}
@media (width <= 768px) {
  .q-shop-detail-lab-time .schedule__head {
    display: contents;
  }
}
.q-shop-detail-lab-time .schedule__holiday {
  font-family: var(--typography-text-md-b-font-family);
  font-weight: var(--typography-text-md-b-font-weight);
  font-size: var(--typography-text-md-b-font-size);
  line-height: var(--typography-text-md-b-line-height);
  --letter-spacing: var(--typography-text-md-b-letter-spacing);
  color: var(--color-lp-primary);
}
@media (width <= 768px) {
  .q-shop-detail-lab-time .schedule__holiday {
    grid-area: 3/1/4/2;
    font-size: 1rem;
  }
}

.p-shop-detail-lab-news {
  position: relative;
  background-color: var(--color-lp-bg-secondary);
  border-radius: 120px 120px 0 0;
  padding-block-start: 1px;
  margin-block-start: -120px;
}
@media (width <= 768px) {
  .p-shop-detail-lab-news {
    border-radius: 60px 60px 0 0;
  }
}
.p-shop-detail-lab-news.q-news .news__item:focus-visible .news__title {
  color: var(--color-lp-primary);
}
@media (hover: hover) and (pointer: fine) {
  .p-shop-detail-lab-news.q-news .news__item:hover .news__title {
    color: var(--color-lp-primary);
  }
}
.p-shop-detail-lab-news.q-news .news__date {
  color: var(--color-lp-primary);
}
.p-shop-detail-lab-news.q-news .news__tag {
  color: var(--color-lp-primary);
}
.p-shop-detail-lab-news .c-button {
  border-color: var(--color-lp-primary);
  color: var(--color-lp-primary);
}
.p-shop-detail-lab-news .c-button:focus-visible {
  color: var(--color-light);
  background-color: var(--color-lp-primary);
}
@media (hover: hover) and (pointer: fine) {
  .p-shop-detail-lab-news .c-button:hover {
    color: var(--color-light);
    background-color: var(--color-lp-primary);
  }
}

.q-shop-detail-lab-check {
  position: relative;
  padding-block: var(--space-block-section) calc(210px + 68px);
  overflow: hidden;
}
@media (width <= 768px) {
  .q-shop-detail-lab-check {
    padding-block-end: calc(180px + 32px);
  }
}
.q-shop-detail-lab-check .check {
  color: var(--color-light);
  position: relative;
  z-index: 1;
  margin-block-end: 60px;
}
@media (width <= 768px) {
  .q-shop-detail-lab-check .check {
    margin-block-end: 54px;
  }
}
.q-shop-detail-lab-check .check__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.q-shop-detail-lab-check .check__bg img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}
.q-shop-detail-lab-check .check__title {
  margin-block-end: 35px;
  text-align: center;
}
.q-shop-detail-lab-check .check__title .title {
  font-family: var(--typography-lp-title-md-b-font-family);
  font-weight: var(--typography-lp-title-md-b-font-weight);
  font-size: var(--typography-lp-title-md-b-font-size);
  line-height: var(--typography-lp-title-md-b-line-height);
  --letter-spacing: var(--typography-lp-title-md-b-letter-spacing);
  margin-block-end: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-shop-detail-lab-check .check__title .title {
    font-size: 1.5rem;
  }
}
.q-shop-detail-lab-check .check__title .sub {
  font-family: var(--typography-text-xmd-b-font-family);
  font-weight: var(--typography-text-xmd-b-font-weight);
  font-size: var(--typography-text-xmd-b-font-size);
  line-height: var(--typography-text-xmd-b-line-height);
  --letter-spacing: var(--typography-text-xmd-b-letter-spacing);
}
@media (width <= 768px) {
  .q-shop-detail-lab-check .check__title .sub {
    font-size: 0.75rem;
  }
}
.q-shop-detail-lab-check .check__list {
  margin-block-end: var(--space-block-lg);
  width: fit-content;
  margin-inline: auto;
}
.q-shop-detail-lab-check .check__list .list {
  display: grid;
  grid-template-columns: 64px auto 1fr;
  align-items: center;
}
@media (width <= 920px) {
  .q-shop-detail-lab-check .check__list .list {
    grid-template-columns: auto 1fr;
    gap: 4px 0;
  }
  .q-shop-detail-lab-check .check__list .list:not(:last-child) {
    margin-block-end: var(--space-block-xs);
  }
}
.q-shop-detail-lab-check .check__list .list .icon {
  display: flex;
}
@media (width <= 920px) {
  .q-shop-detail-lab-check .check__list .list .icon {
    width: 32px;
  }
}
.q-shop-detail-lab-check .check__list .list .sub {
  margin-inline-end: var(--space-block-xs);
  background-color: var(--color-lp-secondary);
  border-radius: 99px;
  padding: 6px;
  min-width: 210px;
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
  text-align: center;
}
@media (width <= 920px) {
  .q-shop-detail-lab-check .check__list .list .sub {
    padding: 2px 26px 4px;
    min-width: 200px;
    width: fit-content;
  }
}
.q-shop-detail-lab-check .check__list .list .text {
  font-family: var(--typography-lp-text-lg-b-font-family);
  font-weight: var(--typography-lp-text-lg-b-font-weight);
  font-size: var(--typography-lp-text-lg-b-font-size);
  line-height: var(--typography-lp-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp-text-lg-b-letter-spacing);
}
@media (width <= 920px) {
  .q-shop-detail-lab-check .check__list .list .text {
    grid-area: 2/2/3/3;
  }
}

.q-shop-detail-lab-reason {
  position: relative;
  padding-block-end: calc(var(--space-block-section) + 78px);
  background-color: var(--color-light);
  border-radius: 120px 120px 0 0;
  padding-block-start: 1px;
  margin-block-start: -120px;
}
@media (width <= 768px) {
  .q-shop-detail-lab-reason {
    padding-block-end: calc(var(--space-block-section) + 32px);
    border-radius: 60px 60px 0 0;
  }
}
.q-shop-detail-lab-reason .reason__column {
  display: flex;
  align-items: flex-start;
  gap: var(--space-block-lg);
  margin-inline-start: -100px;
}
@media (width <= 1360px) {
  .q-shop-detail-lab-reason .reason__column {
    margin-inline-start: 0;
  }
}
@media (width <= 768px) {
  .q-shop-detail-lab-reason .reason__column {
    flex-direction: column;
    gap: var(--space-block-sm);
  }
}
.q-shop-detail-lab-reason .reason__column._reverse {
  flex-direction: row-reverse;
}
@media (width <= 768px) {
  .q-shop-detail-lab-reason .reason__column._reverse {
    flex-direction: column;
  }
}
.q-shop-detail-lab-reason .reason__column:not(:last-child) {
  margin-block-end: var(--space-block-lg);
}
.q-shop-detail-lab-reason .reason__head {
  box-shadow: 0 0 10px color-mix(in srgb, var(--color-base) 30%, transparent);
  width: 56.5%;
}
@media (width <= 768px) {
  .q-shop-detail-lab-reason .reason__head {
    width: 100%;
  }
}
.q-shop-detail-lab-reason .reason__head img {
  width: 100%;
}
.q-shop-detail-lab-reason .reason__title {
  border-block-end: 1px solid var(--color-lp-primary);
  padding-block-end: var(--space-block-sm);
  margin-block-end: var(--space-block-sm);
}
.q-shop-detail-lab-reason .reason__title .en {
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
  color: var(--color-lp-secondary);
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 22px;
  align-items: center;
  margin-block-end: var(--space-block-sm);
  text-transform: uppercase;
}
@media (width <= 768px) {
  .q-shop-detail-lab-reason .reason__title .en {
    font-size: 1.25rem;
  }
}
.q-shop-detail-lab-reason .reason__title .en::after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 1px;
  background-color: var(--color-lp-primary);
}
.q-shop-detail-lab-reason .reason__title .title {
  font-family: var(--typography-lp-text-lg-b-font-family);
  font-weight: var(--typography-lp-text-lg-b-font-weight);
  font-size: var(--typography-lp-text-lg-b-font-size);
  line-height: var(--typography-lp-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp-text-lg-b-letter-spacing);
  color: var(--color-lp-primary);
}
.q-shop-detail-lab-reason .reason .c-text {
  text-box: trim-both;
}
@media (width <= 768px) {
  .q-shop-detail-lab-reason .reason .c-text {
    font-size: 1rem;
  }
}
.q-shop-detail-lab-reason .reason__body {
  width: calc(100% - (56.5% + var(--space-block-lg)));
}
@media (width <= 768px) {
  .q-shop-detail-lab-reason .reason__body {
    width: 100%;
  }
}

.q-shop-detail-lab-flow {
  background-color: var(--color-lp-bg-secondary);
  padding-block-end: calc(var(--space-block-section) + 140px + 68px);
  padding-block-start: 1px;
  border-radius: 120px 120px 0 0;
  position: relative;
}
@media (width <= 768px) {
  .q-shop-detail-lab-flow {
    padding-block-end: calc(var(--space-block-section) + 120px + 32px);
    border-radius: 60px 60px 0 0;
  }
}
.q-shop-detail-lab-flow .flow__item {
  background-color: var(--color-light);
  display: grid;
  grid-template-columns: 1fr 45%;
  align-items: flex-start;
  position: relative;
  border: 1px solid var(--color-lp-bg-secondary);
}
@media (width <= 768px) {
  .q-shop-detail-lab-flow .flow__item {
    grid-template-columns: 1fr;
  }
}
.q-shop-detail-lab-flow .flow__item:not(:last-child) {
  margin-block-end: var(--space-block-sm);
}
.q-shop-detail-lab-flow .flow__item:not(:last-child)::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 10px;
  height: 29px;
  bottom: -30px;
  left: 106px;
  background-color: var(--color-light);
}
.q-shop-detail-lab-flow .flow__item._line .flow__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-block-xs);
  align-self: center;
  margin-inline-end: 50px;
  transition: opacity var(--sec);
  height: auto;
}
@media (width <= 768px) {
  .q-shop-detail-lab-flow .flow__item._line .flow__body {
    margin: 0 var(--space-block-sm) var(--space-block-lg) var(--space-block-sm);
    max-width: 440px;
  }
}
.q-shop-detail-lab-flow .flow__item._line .flow__body:focus-visible {
  opacity: var(--sec);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-lab-flow .flow__item._line .flow__body:hover {
    opacity: var(--sec);
  }
}
.q-shop-detail-lab-flow .flow__head {
  padding: var(--space-block-lg);
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: var(--space-block-sm);
  align-items: start;
}
@media (width <= 920px) {
  .q-shop-detail-lab-flow .flow__head {
    grid-template-columns: 80px 1fr;
    padding-inline: var(--space-block-sm);
  }
}
@media (width <= 768px) {
  .q-shop-detail-lab-flow .flow__head {
    padding: var(--space-block-md) var(--space-block-sm) var(--space-block-sm);
    gap: var(--space-block-xs) var(--space-block-sm);
  }
}
.q-shop-detail-lab-flow .flow__head .link {
  color: var(--color-lp-secondary);
  transition: opacity var(--sec);
}
.q-shop-detail-lab-flow .flow__head .link:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-lab-flow .flow__head .link:hover {
    opacity: var(--opacity);
  }
}
.q-shop-detail-lab-flow .flow__head .link .text {
  text-decoration: underline;
}
.q-shop-detail-lab-flow .flow__head .link .u-svg {
  vertical-align: sub;
}
.q-shop-detail-lab-flow .flow__head .link._anchor .u-svg {
  rotate: 90deg;
}
.q-shop-detail-lab-flow .flow__head .kakko {
  color: var(--color-lp-secondary);
  border-block: 1px solid var(--color-lp-secondary);
  padding-block: 7px;
  margin-block-start: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-shop-detail-lab-flow .flow__head .kakko {
    grid-area: 3/1/4/3;
    margin-block-start: 0;
  }
}
.q-shop-detail-lab-flow .flow__title {
  font-family: var(--typography-lp-text-lg-b-font-family);
  font-weight: var(--typography-lp-text-lg-b-font-weight);
  font-size: var(--typography-lp-text-lg-b-font-size);
  line-height: var(--typography-lp-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp-text-lg-b-letter-spacing);
  margin-block-end: 15px;
  color: var(--color-lp-primary);
}
@media (width <= 768px) {
  .q-shop-detail-lab-flow .flow__title {
    margin-block-end: 0;
    align-self: center;
  }
}
@media (width <= 768px) {
  .q-shop-detail-lab-flow .flow .c-text {
    grid-area: 2/1/3/3;
  }
}
@media (width <= 768px) {
  .q-shop-detail-lab-flow .flow__text {
    display: contents;
  }
}
.q-shop-detail-lab-flow .flow__body {
  height: 100%;
}
.q-shop-detail-lab-flow .flow__body._button {
  margin-block: var(--space-block-lg);
}
.q-shop-detail-lab-flow .flow__body img {
  display: inline-block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.q-shop-detail-lab-flow .flow__body .button {
  transition: opacity var(--sec);
}
.q-shop-detail-lab-flow .flow__body .button:focus-visible {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-lab-flow .flow__body .button:hover {
    opacity: var(--opacity);
  }
}

.q-shop-detail-lab-voice {
  padding-block-end: calc(var(--space-block-section) + 88px);
  position: relative;
  background-color: var(--color-light);
  border-radius: 120px 120px 0 0;
  padding-block-start: 1px;
  margin-block-start: -120px;
}
@media (width <= 768px) {
  .q-shop-detail-lab-voice {
    padding-block-end: calc(var(--space-block-section) + 32px);
    border-radius: 60px 60px 0 0;
  }
}
.q-shop-detail-lab-voice .p-voice__title {
  color: var(--color-lp-secondary);
}
.q-shop-detail-lab-voice .c-button {
  border-color: var(--color-lp-primary);
  color: var(--color-lp-primary);
}
.q-shop-detail-lab-voice .c-button:focus-visible {
  color: var(--color-light);
  background-color: var(--color-lp-primary);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-lab-voice .c-button:hover {
    color: var(--color-light);
    background-color: var(--color-lp-primary);
  }
}

.q-shop-detail-lab-menu {
  position: relative;
}
.q-shop-detail-lab-menu .menu {
  background-color: var(--color-lp-bg-secondary);
  padding-block-end: var(--space-block-lg);
  padding-block-start: 1px;
  border-radius: 120px 120px 0 0;
}
@media (width <= 768px) {
  .q-shop-detail-lab-menu .menu {
    border-radius: 60px 60px 0 0;
  }
}
.q-shop-detail-lab-menu .menu__column {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: var(--space-block-xs);
}
@media (width <= 768px) {
  .q-shop-detail-lab-menu .menu__column {
    grid-template-columns: repeat(2, 1fr);
  }
}
.q-shop-detail-lab-menu .menu__item {
  background-color: var(--color-light);
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: var(--space-block-md) var(--space-block-xs);
  color: var(--color-lp-primary);
  transition: box-shadow var(--sec);
}
@media (width <= 768px) {
  .q-shop-detail-lab-menu .menu__item {
    padding: var(--space-block-sm);
  }
}
.q-shop-detail-lab-menu .menu__item:focus-visible {
  box-shadow: 0 0 20px var(--color-lp-primary);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-lab-menu .menu__item:hover {
    box-shadow: 0 0 20px var(--color-lp-primary);
  }
}
.q-shop-detail-lab-menu .menu__item .icon {
  display: inline-block;
  margin-inline: auto;
}
.q-shop-detail-lab-menu .menu__item .text {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
}
.q-shop-detail-lab-menu .menu__item .text .u-svg {
  min-width: 22px;
}
.q-shop-detail-lab-menu .concern__column {
  display: flex;
  align-items: start;
  justify-content: space-between;
}
@media (width <= 768px) {
  .q-shop-detail-lab-menu .concern__column {
    flex-direction: column-reverse;
    gap: var(--space-block-sm);
  }
}
.q-shop-detail-lab-menu .concern__image {
  margin-inline: -164px -100px;
  width: 64%;
  margin-block-end: -50px;
}
@media (width <= 1120px) {
  .q-shop-detail-lab-menu .concern__image {
    margin-inline-end: -200px;
    width: 90%;
  }
}
@media (width <= 768px) {
  .q-shop-detail-lab-menu .concern__image {
    width: 100%;
    margin-inline: auto;
  }
}
.q-shop-detail-lab-menu .concern__image img {
  width: 100%;
}
.q-shop-detail-lab-menu .concern__info {
  width: 57%;
  margin-block-start: var(--space-block-lg);
  margin-block-end: var(--space-block-xl);
}
@media (width <= 768px) {
  .q-shop-detail-lab-menu .concern__info {
    width: 100%;
    margin-block-end: 0;
  }
}
.q-shop-detail-lab-menu .concern__title {
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
  padding-block: var(--space-block-sm);
  border-block: 1px solid var(--color-lp-primary);
  margin-block-end: var(--space-block-sm);
  color: var(--color-lp-primary);
  text-align: center;
}
.q-shop-detail-lab-menu .concern__list {
  display: flex;
  gap: var(--space-block-xs);
  justify-content: center;
  flex-wrap: wrap;
}
.q-shop-detail-lab-menu .concern__list .list {
  border: 1px solid var(--color-lp-primary);
  color: var(--color-lp-primary);
  padding: 14px 32px;
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
}
@media (width <= 920px) {
  .q-shop-detail-lab-menu .concern__list .list {
    padding: var(--space-block-xs) var(--space-block-sm);
  }
}

.q-shop-detail-lab-price {
  padding-block-end: calc(var(--space-block-section) + 120px + 68px);
  position: relative;
  background-color: var(--color-lp-bg-secondary);
  padding-block-start: 1px;
  border-radius: 120px 120px 0 0;
}
@media (width <= 768px) {
  .q-shop-detail-lab-price {
    border-radius: 60px 60px 0 0;
    padding-block-end: calc(var(--space-block-section) + 80px + 68px);
  }
}
.q-shop-detail-lab-price .price .c-heading-lp1 {
  margin-block-end: 60px;
}
.q-shop-detail-lab-price .price__plan {
  background-color: var(--color-light);
  border-radius: 10px;
  position: relative;
  padding-block-start: 1px;
}
.q-shop-detail-lab-price .price__plan::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: calc(100% - 28px);
  height: calc(100% - 28px);
  top: 14px;
  left: 14px;
  border: 1px solid var(--color-border);
  border-radius: 10px;
}
.q-shop-detail-lab-price .price__plan > * {
  position: relative;
  z-index: 1;
}
.q-shop-detail-lab-price .price__plan .ribon {
  width: fit-content;
  margin: -30px auto var(--space-block-xs) auto;
}
@media (width <= 768px) {
  .q-shop-detail-lab-price .price__plan .ribon {
    width: 80%;
    max-width: 300px;
    margin-block-start: -20px;
  }
}
.q-shop-detail-lab-price .price__plan .title {
  font-family: var(--typography-lp-title-lg-b-font-family);
  font-weight: var(--typography-lp-title-lg-b-font-weight);
  font-size: var(--typography-lp-title-lg-b-font-size);
  line-height: var(--typography-lp-title-lg-b-line-height);
  --letter-spacing: var(--typography-lp-title-lg-b-letter-spacing);
  text-align: center;
  margin-block-end: var(--space-block-md);
}
@media (width <= 768px) {
  .q-shop-detail-lab-price .price__plan .title {
    font-size: 1.875rem;
  }
}
.q-shop-detail-lab-price .price__plan .table {
  padding-inline: var(--space-block-md);
  max-width: calc(960px + (var(--space-block-md) * 2));
  margin-inline: auto;
}
.q-shop-detail-lab-price .price__plan .table .tr {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding-block-end: var(--space-block-sm);
  padding-inline-start: var(--space-block-sm);
  border-block-end: 1px solid var(--color-border);
  position: relative;
  margin-block-end: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-shop-detail-lab-price .price__plan .table .tr {
    flex-direction: column;
    align-items: start;
  }
}
.q-shop-detail-lab-price .price__plan .table .tr::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 6px;
  height: calc(100% - var(--space-block-sm));
  top: 0;
  left: 0;
  background-color: var(--color-lp-primary);
  border-radius: 99px;
}
.q-shop-detail-lab-price .price__plan .table .th .main {
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
  line-height: 1.6;
}
@media (width <= 768px) {
  .q-shop-detail-lab-price .price__plan .table .th .main {
    font-size: 1.125rem;
  }
}
.q-shop-detail-lab-price .price__plan .table .td {
  display: flex;
  align-items: center;
  gap: var(--space-block-sm);
  font-family: var(--typography-title-lg-b-font-family);
  font-weight: var(--typography-title-lg-b-font-weight);
  font-size: var(--typography-title-lg-b-font-size);
  line-height: var(--typography-title-lg-b-line-height);
  --letter-spacing: var(--typography-title-lg-b-letter-spacing);
}
@media (width <= 768px) {
  .q-shop-detail-lab-price .price__plan .table .td {
    gap: var(--space-block-xs);
  }
}
.q-shop-detail-lab-price .price__plan .table .td .pre {
  text-decoration: line-through;
}
.q-shop-detail-lab-price .price__plan .table .td .u-svg {
  color: var(--color-lp-secondary);
}
@media (width <= 768px) {
  .q-shop-detail-lab-price .price__plan .table .td .u-svg {
    width: 30px;
  }
}
.q-shop-detail-lab-price .price__plan .table .td .price {
  color: var(--color-lp-secondary);
}
.q-shop-detail-lab-price .price__plan .table .td .price .big {
  font-size: 2.125rem;
  line-height: 1.2;
}
@media (width <= 768px) {
  .q-shop-detail-lab-price .price__plan .table .td .price .big {
    font-size: 1.75rem;
  }
}
.q-shop-detail-lab-price .price__plan .detail {
  padding-block-end: 60px;
  padding-inline: var(--space-block-md);
  max-width: calc(960px + (var(--space-block-md) * 2));
  margin-inline: auto;
}
.q-shop-detail-lab-price .price__plan .detail .heading {
  font-family: var(--typography-lp-title-lg-b-font-family);
  font-weight: var(--typography-lp-title-lg-b-font-weight);
  font-size: var(--typography-lp-title-lg-b-font-size);
  line-height: var(--typography-lp-title-lg-b-line-height);
  --letter-spacing: var(--typography-lp-title-lg-b-letter-spacing);
  font-size: 2.125rem;
  text-align: center;
  display: flex;
  align-items: center;
  gap: var(--space-block-xs);
  justify-content: center;
  margin-block-end: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-shop-detail-lab-price .price__plan .detail .heading {
    font-size: 1.75rem;
  }
}
.q-shop-detail-lab-price .price__plan .detail .heading .big {
  font-size: 2.625rem;
}
@media (width <= 768px) {
  .q-shop-detail-lab-price .price__plan .detail .heading .big {
    font-size: 1.875rem;
  }
}
.q-shop-detail-lab-price .price__plan .detail .deco:last-child {
  scale: -1 1;
}
.q-shop-detail-lab-price .price__plan .explain {
  text-align: center;
  font-size: 1.3125rem;
  font-weight: 700;
}
@media (width <= 768px) {
  .q-shop-detail-lab-price .price__plan .explain {
    font-size: 1rem;
  }
}
.q-shop-detail-lab-price .price__plan .explain .line {
  border-block-end: 2px solid var(--color-lp-primary);
}
.q-shop-detail-lab-price .price .p-lp-bnr2 {
  margin-block-end: 76px;
}

.q-shop-detail-lab-director {
  padding-block-end: var(--space-block-section);
  position: relative;
  background-color: var(--color-light);
  border-radius: 120px 120px 0 0;
  padding-block-start: 1px;
  margin-block-start: -120px;
}
@media (width <= 768px) {
  .q-shop-detail-lab-director {
    border-radius: 60px 60px 0 0;
  }
}
.q-shop-detail-lab-director .director__image {
  margin-block-end: var(--space-block-lg);
}
.q-shop-detail-lab-director .director__image img {
  width: 100%;
}
.q-shop-detail-lab-director .director__column {
  display: grid;
  grid-template-columns: 24% 1fr;
  gap: 50px;
}
@media (width <= 768px) {
  .q-shop-detail-lab-director .director__column {
    grid-template-columns: 1fr;
    gap: var(--space-block-xs);
  }
}
.q-shop-detail-lab-director .director__head .title {
  font-family: var(--typography-lp-text-lg-b-font-family);
  font-weight: var(--typography-lp-text-lg-b-font-weight);
  font-size: var(--typography-lp-text-lg-b-font-size);
  line-height: var(--typography-lp-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp-text-lg-b-letter-spacing);
  color: var(--color-lp-primary);
}
.q-shop-detail-lab-director .director__body .c-text {
  margin-block-end: var(--space-block-sm);
}
.q-shop-detail-lab-director .director__body .name {
  text-align: right;
  margin-block-start: var(--space-block-sm);
}
.q-shop-detail-lab-director .director__body .history {
  margin-block-start: var(--space-block-lg);
  padding-block-start: var(--space-block-lg);
  border-block-start: 1px solid var(--color-border3);
}
.q-shop-detail-lab-director .director__body .history_title {
  font-family: var(--typography-lp-text-md-b-font-family);
  font-weight: var(--typography-lp-text-md-b-font-weight);
  font-size: var(--typography-lp-text-md-b-font-size);
  line-height: var(--typography-lp-text-md-b-line-height);
  --letter-spacing: var(--typography-lp-text-md-b-letter-spacing);
  margin-block-end: var(--space-block-xs);
}
.q-shop-detail-lab-director .director__body .history_table .tr {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: var(--space-block-sm);
  align-items: start;
}

.q-shop-detail-lab-info {
  padding-block-end: calc(var(--space-block-section) + 68px);
  position: relative;
}
@media (width <= 768px) {
  .q-shop-detail-lab-info {
    padding-block-end: calc(var(--space-block-section) + 32px);
  }
}
.q-shop-detail-lab-info .info {
  position: relative;
}
.q-shop-detail-lab-info .info::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 100%;
  height: 150px;
  top: 68px;
  left: 0;
  background-color: var(--color-light);
  border-radius: 120px 120px 0 0;
}
@media (width <= 768px) {
  .q-shop-detail-lab-info .info::before {
    border-radius: 60px 60px 0 0;
    top: 34px;
    height: 90px;
  }
}
.q-shop-detail-lab-info .info__slider {
  position: relative;
  margin-block-end: calc(-110px - 68px);
}
@media (width <= 768px) {
  .q-shop-detail-lab-info .info__slider {
    margin-block-end: calc(-50px - 68px);
  }
}
.q-shop-detail-lab-info .info__slider .image img {
  width: 560px;
}
@media (width <= 768px) {
  .q-shop-detail-lab-info .info__slider .image img {
    width: 360px;
  }
}
.q-shop-detail-lab-info .info__column {
  display: grid;
  grid-template-columns: 1fr 45%;
  gap: var(--space-block-sm);
}
@media (width <= 768px) {
  .q-shop-detail-lab-info .info__column {
    grid-template-columns: 1fr;
  }
}
.q-shop-detail-lab-info .info__column .title {
  font-family: var(--typography-lp-text-lg-b-font-family);
  font-weight: var(--typography-lp-text-lg-b-font-weight);
  font-size: var(--typography-lp-text-lg-b-font-size);
  line-height: var(--typography-lp-text-lg-b-line-height);
  --letter-spacing: var(--typography-lp-text-lg-b-letter-spacing);
  margin-block-end: var(--space-block-lg);
  color: var(--color-lp-primary);
}
.q-shop-detail-lab-info .info__column .table .table_tr {
  display: grid;
  grid-template-columns: 73px 1fr;
  gap: 15px var(--space-block-sm);
  padding-block-end: 15px;
}
@media (width <= 768px) {
  .q-shop-detail-lab-info .info__column .table .table_tr {
    grid-template-columns: 60px 1fr;
  }
}
.q-shop-detail-lab-info .info__column .table .table_tr:not(:last-child) {
  border-block-end: 1px solid var(--color-border3);
  margin-block-end: 15px;
}
.q-shop-detail-lab-info .info__column .table .table_th {
  color: var(--color-lp-secondary);
}
.q-shop-detail-lab-info .info__column .p-schedule__table {
  margin-block-start: 15px;
}
.q-shop-detail-lab-info .info__body iframe {
  width: 100%;
  height: 100%;
  aspect-ratio: 1/1;
}
@media (width <= 768px) {
  .q-shop-detail-lab-info .info__body iframe {
    aspect-ratio: 10/7;
  }
}

.q-shop-detail-lab-faq {
  padding-block-end: 110px;
  position: relative;
  background-color: var(--color-lp-bg-secondary);
  padding-block-start: 1px;
  border-radius: 120px 120px 0 0;
}
@media (width <= 768px) {
  .q-shop-detail-lab-faq {
    border-radius: 60px 60px 0 0;
  }
}

.q-shop-detail-lab-contact {
  padding-block-end: var(--space-block-section);
  border-block-end: 1px solid var(--color-border2);
}
.q-shop-detail-lab-contact .contact__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  margin-block: -24px -10px;
  position: relative;
  z-index: 1;
}
@media (width <= 768px) {
  .q-shop-detail-lab-contact .contact__head {
    flex-direction: column;
    align-items: center;
    margin-block: -10vw var(--space-block-sm);
  }
}
@media (width <= 768px) {
  .q-shop-detail-lab-contact .contact__image {
    margin-block-end: -54px;
  }
  .q-shop-detail-lab-contact .contact__image img {
    width: 100%;
  }
}
.q-shop-detail-lab-contact .contact__title {
  margin-block-end: 60px;
  margin-inline: -20px;
}
@media (width <= 768px) {
  .q-shop-detail-lab-contact .contact__title {
    width: 100%;
    margin-block-end: 0;
  }
}
.q-shop-detail-lab-contact .contact__title .sub {
  font-size: 1.9375rem;
  color: var(--color-light);
  background-color: var(--color-lp-secondary);
  text-align: center;
  padding: 2px 17px;
  position: relative;
  font-weight: 700;
  margin-block-end: 16px;
  border-block: 1px solid var(--color-light);
  width: fit-content;
  margin-inline: auto;
}
@media (width <= 768px) {
  .q-shop-detail-lab-contact .contact__title .sub {
    font-size: 1.6875rem;
    width: calc(100% - 54px);
    padding-inline: 0;
  }
}
.q-shop-detail-lab-contact .contact__title .sub .deco {
  position: absolute;
  top: -1px;
  left: -26px;
  width: auto;
  height: calc(100% + 2px);
  width: 27px;
}
.q-shop-detail-lab-contact .contact__title .sub .deco img {
  width: 100%;
  height: 100%;
  vertical-align: inherit;
}
.q-shop-detail-lab-contact .contact__title .sub .deco._2 {
  left: auto;
  right: -26px;
  rotate: -180deg;
}
.q-shop-detail-lab-contact .contact__title .sub .text {
  letter-spacing: 0;
  line-height: 1.4;
}
.q-shop-detail-lab-contact .contact__title .title {
  color: var(--color-lp-primary);
  font-size: 2.8125rem;
  font-weight: 700;
  text-align: center;
  letter-spacing: -0.05em;
  line-height: 1.2;
}
@media (width <= 768px) {
  .q-shop-detail-lab-contact .contact__title .title {
    font-size: 1.375rem;
    letter-spacing: -0.06em;
  }
}
.q-shop-detail-lab-contact .contact__title .title .tight {
  margin-inline: -8px -16px;
}
@media (width <= 768px) {
  .q-shop-detail-lab-contact .contact__title .title .tight {
    margin-inline: -5px -8px;
  }
}
.q-shop-detail-lab-contact .contact__title .title span {
  letter-spacing: -0.05em;
}
.q-shop-detail-lab-contact .contact__column {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--space-block-xs);
  position: relative;
  z-index: 1;
}
@media (width <= 920px) {
  .q-shop-detail-lab-contact .contact__column {
    grid-template-columns: 1fr;
  }
}
.q-shop-detail-lab-contact .contact__column .line {
  background-color: var(--color-line);
  border-radius: 10px;
  border: 2px solid var(--color-light);
  padding: var(--space-block-sm) 15px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (width <= 768px) {
  .q-shop-detail-lab-contact .contact__column .line {
    padding-block: var(--space-block-xs);
  }
}
.q-shop-detail-lab-contact .contact__column .line:focus-visible img {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-lab-contact .contact__column .line:hover img {
    opacity: var(--opacity);
  }
}
.q-shop-detail-lab-contact .contact__column .line img {
  max-width: 330px;
  transition: opacity var(--sec);
}
.q-shop-detail-lab-contact .contact__column .beauty {
  border-radius: 10px;
  border: 1px solid var(--color-beauty);
  padding: var(--space-block-sm) 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-light);
}
@media (width <= 768px) {
  .q-shop-detail-lab-contact .contact__column .beauty {
    padding-block: var(--space-block-xs);
  }
}
.q-shop-detail-lab-contact .contact__column .beauty:focus-visible img {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-lab-contact .contact__column .beauty:hover img {
    opacity: var(--opacity);
  }
}
.q-shop-detail-lab-contact .contact__column .beauty img {
  max-width: 236px;
  transition: opacity var(--sec);
}
.q-shop-detail-lab-contact .contact__column .online {
  border-radius: 10px;
  border: 1px solid var(--color-lp-primary);
  padding: var(--space-block-sm) 15px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--color-light);
  min-height: 120px;
}
@media (width <= 768px) {
  .q-shop-detail-lab-contact .contact__column .online {
    padding-block: var(--space-block-xs);
  }
}
.q-shop-detail-lab-contact .contact__column .online:focus-visible img {
  opacity: var(--opacity);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-lab-contact .contact__column .online:hover img {
    opacity: var(--opacity);
  }
}
.q-shop-detail-lab-contact .contact__column .online img {
  max-width: 340px;
  width: 100%;
  transition: opacity var(--sec);
}
.q-shop-detail-lab-contact .contact__column .tel {
  background-color: var(--color-light);
  border: 1px solid var(--color-lp-secondary);
  border-radius: 10px;
  padding: var(--space-block-xs) var(--space-block-sm);
}
@media (width <= 768px) {
  .q-shop-detail-lab-contact .contact__column .tel {
    padding: var(--space-block-sm) var(--space-block-xs);
  }
}
.q-shop-detail-lab-contact .contact__column .tel_content {
  margin-block-end: 5px;
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: center;
}
.q-shop-detail-lab-contact .contact__column .tel_content .icon {
  width: 60px;
  aspect-ratio: 1/1;
  border: 2px solid var(--color-lp-secondary);
  color: var(--color-lp-secondary);
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.q-shop-detail-lab-contact .contact__column .tel_content .icon .u-svg {
  width: 24px;
}
.q-shop-detail-lab-contact .contact__column .tel_content .text {
  font-weight: 700;
}
.q-shop-detail-lab-contact .contact__column .tel_content .text .tight {
  margin-inline: -2px -4px;
}
.q-shop-detail-lab-contact .contact__column .tel_content .text .number {
  font-size: 2.25rem;
  line-height: 1;
  pointer-events: none;
}
@media (width <= 768px) {
  .q-shop-detail-lab-contact .contact__column .tel_content .text .number {
    pointer-events: all;
    letter-spacing: -0.005em;
  }
}
.q-shop-detail-lab-contact .contact__column .tel_button {
  background-color: var(--color-lp-secondary);
  border: 1px solid var(--color-lp-secondary);
  border-radius: 99px;
  color: var(--color-light);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-block-xs);
  width: 284px;
  height: 62px;
  font-size: 1.25rem;
  font-weight: 700;
  margin-inline: auto;
  transition: all var(--sec);
}
.q-shop-detail-lab-contact .contact__column .tel_button:focus-visible {
  background-color: var(--color-light);
  color: var(--color-lp-secondary);
}
@media (hover: hover) and (pointer: fine) {
  .q-shop-detail-lab-contact .contact__column .tel_button:hover {
    background-color: var(--color-light);
    color: var(--color-lp-secondary);
  }
}
.q-shop-detail-lab-contact .contact__column .tel_button .icon {
  display: flex;
}

.q-voices {
  padding-block-end: var(--space-block-xxl);
}
.q-voices .p-voice__item {
  width: auto;
  margin-inline: 0;
}
.q-voices .p-voice__image {
  margin-block-end: var(--space-block-md);
}

/* 20260604追加_ダイエットページ_bfore/after */
.q-before-after{
  margin-block-end: var(--space-block-section);
}
.q-before-after .before-after .before-after_list{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.q-before-after .before-after .before-after_list li img{
  width: 100%;
}
@media (width <= 768px) {
.q-before-after .before-after .before-after_list{
  gap: 10px;
}
}
@media (width <= 345px) {
.q-before-after .before-after .before-after_list{
  grid-template-columns: 1fr;
}
}

/* 20260611_追加 */
@media (width <= 768px) {
.g-fixed-menu .fixed-menu._online{
  background-color: var(--color-lp-primary);
}
}
.q-contact-tel .p-guide__online-btn{
  width: fit-content;
  margin-top: 10px;
  display: block;
  padding: 13px 20px;
  font-size: 0.75rem;
  line-height: 20px;
  background-color: var(--color-light);
  border: 2px solid var(--color-primary);
  color: var(--color-primary);
  font-weight: 700;
  text-decoration: none;
  border-radius: 999px;
  transition: .5s;
}
.q-contact-tel .p-guide__online-btn:hover{
  background-color: var(--color-primary);
  color: var(--color-light);
}