body.bc-page-companion #companion_archive {
  padding-block: 0.45rem 0.34rem;
}
@media (max-width: 767px) {
  body.bc-page-companion #companion_archive {
    padding-top: 0.6rem;
  }
}
body.bc-page-companion #companion_archive .container_big.flex_column_center {
  display: flex;
  flex-direction: column;
  align-items: center;
}
body.bc-page-companion #companion_archive .container_big > h2::before {
  display: none;
  content: none;
}
body.bc-page-companion .fx-companion-title {
  font-size: var(--fx-type-heading-lg);
  font-weight: 700;
  letter-spacing: 0.02em;
  margin: 0 0 0.3em;
}
body.bc-page-companion .ap-search {
  width: 84.2%;
  max-width: 100%;
  margin: var(--sp-xl) auto 0;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-search {
    width: 90%;
  }
}
body.bc-page-companion .ap-search__frame {
  position: relative;
  display: grid;
  background: var(--white);
}
body.bc-page-companion .ap-search__deco {
  display: none;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-search__frame-art {
    display: none;
  }
  body.bc-page-companion .ap-search__frame {
    border: max(1px, 0.01rem) solid var(--fx-accent);
  }
  body.bc-page-companion .ap-search__frame::before {
    content: "";
    position: absolute;
    z-index: 0;
    inset: 0.15rem;
    border: max(1px, 0.01rem) solid var(--fx-accent);
    pointer-events: none;
  }
  body.bc-page-companion .ap-search__frame::after {
    content: "";
    position: absolute;
    z-index: 1;
    left: 50%;
    top: 0;
    width: 2.4rem;
    height: 0.36rem;
    background: url("../images/aoyama/companion/intro-top-ornament.svg") center bottom/contain no-repeat;
    transform: translate(-50%, -94%);
    pointer-events: none;
  }
  body.bc-page-companion .ap-search__deco {
    position: absolute;
    z-index: 0;
    inset: 0.16rem;
    display: block;
    pointer-events: none;
  }
  body.bc-page-companion .ap-search__corner {
    position: absolute;
    width: 0.8rem;
    height: 0.84rem;
    background: url("../images/aoyama/companion/intro-corner.svg") left top/contain no-repeat;
  }
  body.bc-page-companion .ap-search__corner--tl {
    left: 0;
    top: 0;
  }
  body.bc-page-companion .ap-search__corner--tr {
    right: 0;
    top: 0;
    transform: scaleX(-1);
  }
  body.bc-page-companion .ap-search__corner--bl {
    left: 0;
    bottom: 0;
    transform: scaleY(-1);
  }
  body.bc-page-companion .ap-search__corner--br {
    right: 0;
    bottom: 0;
    transform: scale(-1);
  }
}
body.bc-page-companion .ap-search__frame-art,
body.bc-page-companion .ap-search__content {
  grid-area: 1/1;
}
body.bc-page-companion .ap-search__frame-art {
  align-self: start;
  pointer-events: none;
}
body.bc-page-companion .ap-search__frame-art img {
  display: block;
  width: 100%;
  height: auto;
}
body.bc-page-companion .ap-search__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-self: stretch;
  min-width: 0;
  padding: var(--sp-3xl) var(--sp-2xl) var(--sp-md);
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-search__content {
    padding: var(--sp-3xl) var(--sp-xl) var(--sp-md);
  }
}
body.bc-page-companion .ap-search__ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--sp-sm);
  margin: 0 0 var(--sp-md);
  color: var(--fx-primary);
  font-family: var(--fx-font-heading);
  font-weight: 700;
  font-size: 0.38rem;
  line-height: 1.1;
  letter-spacing: 0.02em;
  text-align: center;
}
body.bc-page-companion .ap-search__ttl::before, body.bc-page-companion .ap-search__ttl::after {
  content: "";
  flex: 0 0 auto;
  width: 0.34rem;
  height: 0.34rem;
  background: var(--fx-accent);
  -webkit-mask: url("../images/aoyama/svg/star.svg") center/contain no-repeat;
  mask: url("../images/aoyama/svg/star.svg") center/contain no-repeat;
}
body.bc-page-companion .ap-search__box {
  display: grid;
  min-width: 0;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-search__box {
    display: block;
  }
}
body.bc-page-companion .ap-search__box-art,
body.bc-page-companion .ap-search__box-content {
  grid-area: 1/1;
}
body.bc-page-companion .ap-search__box-art {
  display: block;
  align-self: start;
  width: 100%;
  height: auto;
  pointer-events: none;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-search__box-art {
    display: none;
  }
}
body.bc-page-companion .ap-search__box-content {
  position: relative;
  z-index: 1;
  align-self: stretch;
  min-width: 0;
  padding: var(--sp-md);
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-search__box-content {
    padding: 0;
  }
}
body.bc-page-companion .ap-search__label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.35em;
  width: max-content;
  max-width: calc(100% - var(--sp-xl));
  margin: 0 auto var(--sp-lg);
  padding-inline: 0.6em;
  background: transparent;
  color: var(--fx-accent);
  font-family: var(--fx-font-heading);
  font-weight: 700;
  font-size: var(--fx-type-heading-md);
  line-height: 1.1;
  letter-spacing: 0.02em;
}
body.bc-page-companion .ap-search__label::before, body.bc-page-companion .ap-search__label::after {
  content: "";
  flex: 0 0 auto;
  background: var(--fx-accent);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}
body.bc-page-companion .ap-search__label--crown::before, body.bc-page-companion .ap-search__label--crown::after {
  width: 0.34rem;
  height: 0.24rem;
  -webkit-mask-image: url("../images/aoyama/icon/icon-crown.svg");
  mask-image: url("../images/aoyama/icon/icon-crown.svg");
}
body.bc-page-companion .ap-search__label--star::before, body.bc-page-companion .ap-search__label--star::after {
  width: 0.18rem;
  height: 0.18rem;
  -webkit-mask-image: url("../images/aoyama/svg/star.svg");
  mask-image: url("../images/aoyama/svg/star.svg");
}
body.bc-page-companion .ap-search__pills {
  display: grid;
  gap: var(--sp-sm);
  margin: 0;
  padding: 0;
  list-style: none;
}
body.bc-page-companion .ap-search__pills li {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.35em;
  margin: 0;
  min-height: 0.46rem;
  padding: 0.32em 0.65em;
  border: max(1px, 0.01rem) solid var(--fx-accent);
  border-radius: 0.25em;
  background: linear-gradient(180deg, var(--white) 0%, var(--fx-surface-beige) 100%);
  color: var(--fx-accent);
  font-family: var(--fx-font-heading);
  font-weight: 700;
  font-size: var(--fx-type-caption);
  line-height: 1.2;
  text-align: center;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}
body.bc-page-companion .ap-search__pills li:hover {
  background: var(--fx-surface-warm);
}
body.bc-page-companion .ap-search__pills li.active {
  background: linear-gradient(180deg, var(--white) 0%, var(--fx-note-beige) 100%);
  color: var(--fx-accent-d);
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-search__pills li {
    padding: 0.45em 0.65em;
    font-size: var(--fx-type-body);
  }
}
body.bc-page-companion .ap-search__pills img {
  flex: 0 0 auto;
  width: 0.46rem;
  height: auto;
}
body.bc-page-companion .ap-search__pills--rank {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-search__pills--rank {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.bc-page-companion .ap-search__pills--rank .fx-rank-all,
  body.bc-page-companion .ap-search__pills--rank .fx-rank-pill--legend {
    grid-column: 1/-1;
    width: 50%;
    justify-self: center;
  }
  body.bc-page-companion .ap-search__pills--rank .fx-rank-all {
    order: 0;
  }
  body.bc-page-companion .ap-search__pills--rank .fx-rank-pill--pearl-plus {
    order: 1;
  }
  body.bc-page-companion .ap-search__pills--rank .fx-rank-pill--pearl {
    order: 2;
  }
  body.bc-page-companion .ap-search__pills--rank .fx-rank-pill--black-plus {
    order: 3;
  }
  body.bc-page-companion .ap-search__pills--rank .fx-rank-pill--black {
    order: 4;
  }
  body.bc-page-companion .ap-search__pills--rank .fx-rank-pill--diamond-plus {
    order: 5;
  }
  body.bc-page-companion .ap-search__pills--rank .fx-rank-pill--diamond {
    order: 6;
  }
  body.bc-page-companion .ap-search__pills--rank .fx-rank-pill--legend {
    order: 7;
  }
}
body.bc-page-companion .ap-search__box--feat .ap-search__pills,
body.bc-page-companion .ap-search__box--sort .ap-search__pills {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
body.bc-page-companion .ap-search__cols {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: var(--sp-lg);
  margin-top: var(--sp-lg);
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-search__cols {
    grid-template-columns: 1fr;
    gap: var(--sp-xl);
    margin-top: var(--sp-xl);
  }
}
body.bc-page-companion .ap-search__side {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
body.bc-page-companion .ap-search__dir {
  font-style: normal;
  font-size: 0.9em;
  line-height: 1;
}
body.bc-page-companion .ap-search__pills li.is-desc .ap-search__dir {
  transform: scaleY(-1);
}
body.bc-page-companion .ap-search__foot {
  display: flex;
  justify-content: flex-end;
  margin-top: var(--sp-sm);
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-search__foot {
    justify-content: center;
    margin-top: var(--sp-xl);
  }
}
body.bc-page-companion .ap-search__go {
  width: 65%;
  padding: 0.5em 1em;
  border: 0;
  border-radius: 0.45em;
  background: linear-gradient(180deg, var(--fx-rank-gold-soft), var(--fx-rank-gold));
  color: var(--white);
  font-family: var(--fx-font-heading);
  font-weight: 700;
  font-size: var(--fx-type-body);
  line-height: 1.2;
  letter-spacing: 0.04em;
  cursor: pointer;
}
body.bc-page-companion .ap-search__go:hover {
  background: var(--fx-accent-d);
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-search__go {
    width: 80%;
  }
}
body.bc-page-companion #companion_list {
  padding-block: 0.44rem 0.56rem;
}
@media (max-width: 767px) {
  body.bc-page-companion .fx-hero__cap {
    align-items: flex-end;
    padding-bottom: 1.25em;
  }
}
body.bc-page-companion .ap-listloader {
  display: none;
  margin: var(--sp-lg) 0;
  text-align: center;
  transition: opacity 0.3s ease-in-out;
}
body.bc-page-companion .ap-listloader__panel {
  position: relative;
  overflow: hidden;
  padding: var(--sp-xl) var(--sp-lg);
  border: 0.02rem solid var(--fx-accent);
  border-radius: var(--sp-sm);
  background: linear-gradient(135deg, var(--white), var(--fx-surface-1));
  box-shadow: 0 var(--sp-2xs) var(--sp-md) var(--fx-ink-shadow);
}
body.bc-page-companion .ap-listloader__glow {
  position: absolute;
  inset: -50%;
  background: conic-gradient(from 0deg, transparent, color-mix(in srgb, var(--fx-accent) 10%, transparent), transparent);
  animation: ap-listloader-rotate 3s linear infinite;
}
body.bc-page-companion .ap-listloader__content {
  position: relative;
  z-index: 1;
}
body.bc-page-companion .ap-listloader__spinner {
  display: inline-block;
  width: 0.6rem;
  aspect-ratio: 1;
  margin-bottom: var(--sp-md);
  border: 0.04rem solid var(--fx-neutral-200);
  border-top-color: var(--fx-accent);
  border-radius: 50%;
  animation: ap-listloader-spin 1.2s linear infinite;
}
body.bc-page-companion .ap-listloader__dots {
  display: flex;
  justify-content: center;
  gap: var(--sp-xs);
  margin-bottom: var(--sp-md);
}
body.bc-page-companion .ap-listloader__dots i {
  display: block;
  width: 0.12rem;
  aspect-ratio: 1;
  border-radius: 50%;
  background: var(--fx-accent);
  animation: ap-listloader-pulse 1.5s ease-in-out infinite;
}
body.bc-page-companion .ap-listloader__dots i:nth-child(2) {
  animation-delay: 0.3s;
}
body.bc-page-companion .ap-listloader__dots i:nth-child(3) {
  animation-delay: 0.6s;
}
body.bc-page-companion .ap-listloader__title {
  margin: 0 0 var(--sp-xs);
  color: var(--fx-ink-strong);
  font-size: var(--fx-type-body);
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
body.bc-page-companion .ap-listloader__text,
body.bc-page-companion .ap-list-count,
body.bc-page-companion .ap-list-count__text {
  color: var(--fx-ink-mid);
  font-size: var(--fx-type-small);
}
body.bc-page-companion .ap-list-sentinel {
  height: 0.01rem;
}
body.bc-page-companion .ap-list-count {
  margin-top: var(--sp-xs);
  text-align: center;
}
body.bc-page-companion .ap-list-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--sp-md);
  margin: var(--sp-lg) 0;
  padding: var(--sp-lg) var(--sp-md);
  border: max(1px, 0.01rem) solid var(--fx-neutral-300);
  border-radius: var(--sp-2xs);
  background: var(--fx-surface-1);
  box-shadow: 0 var(--sp-2xs) var(--sp-xs) var(--fx-ink-shadow);
}
body.bc-page-companion .ap-list-empty__title {
  color: var(--fx-ink-mid);
  font-size: var(--fx-type-body);
}
body.bc-page-companion .ap-list-empty__text {
  color: var(--fx-ink-faint);
  font-size: var(--fx-type-small);
  line-height: 1.6;
}
body.bc-page-companion .ap-list-empty__clear {
  padding: 0.65em 1.3em;
  border: max(1px, 0.01rem) solid var(--fx-neutral-300);
  border-radius: var(--sp-2xs);
  background: var(--white);
  color: var(--fx-ink-strong);
  font-size: var(--fx-type-small);
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
body.bc-page-companion .ap-list-empty__clear:hover {
  background: var(--fx-surface-1);
}
body.bc-page-companion .ap-list-error {
  padding: var(--sp-xl) var(--sp-md);
  border: 0.02rem solid var(--fx-error);
  background: var(--fx-error-soft);
  text-align: center;
}
body.bc-page-companion .ap-list-error--debug {
  margin: var(--sp-xs) 0;
  padding: var(--sp-xs);
  border-width: 0.01rem;
  font-size: var(--fx-type-small);
}
body.bc-page-companion .ap-list-error--plain {
  border: 0;
  background: transparent;
}

@keyframes ap-listloader-spin {
  to {
    transform: rotate(1turn);
  }
}
@keyframes ap-listloader-rotate {
  to {
    transform: rotate(1turn);
  }
}
@keyframes ap-listloader-pulse {
  0%, 80%, 100% {
    opacity: 0.6;
    transform: scale(0.8);
  }
  40% {
    opacity: 1;
    transform: scale(1.2);
  }
}
body.bc-page-companion #companion_post {
  padding-top: 0.45rem;
  padding-bottom: 0.41rem;
}
@media (max-width: 767px) {
  body.bc-page-companion #companion_post {
    padding-top: 0.6rem;
  }
}
body.bc-page-companion #companion_post .container_small {
  width: 10.1rem;
}
body.bc-page-companion #companion_post .subpage_subttl_txt {
  font-size: 0.475rem;
}
@media (max-width: 767px) {
  body.bc-page-companion #companion_post .subpage_subttl_txt {
    font-size: 0.586rem;
  }
}
body.bc-page-companion .ap-pf {
  display: grid;
  grid-template-columns: 52fr 44fr;
  gap: 4%;
  align-items: start;
  margin-top: var(--sp-xl);
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf {
    grid-template-columns: 1fr;
    grid-template-areas: "info" "photo";
    gap: var(--sp-sm);
    margin-top: var(--sp-sm);
  }
}
body.bc-page-companion .ap-pf__photo {
  margin: 0;
}
body.bc-page-companion .ap-pf__photo img {
  display: block;
  width: 100%;
  height: auto;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__photo {
    grid-area: photo;
  }
  body.bc-page-companion .ap-pf__photo img {
    width: 88%;
  }
}
body.bc-page-companion .ap-pf__info {
  min-width: 0;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__info {
    grid-area: info;
    text-align: center;
  }
}
body.bc-page-companion .ap-pf__rank {
  display: flex;
  align-items: center;
  gap: var(--sp-sm);
  margin: 0 0 var(--sp-sm);
  color: var(--fx-ink-strong);
  font-family: var(--fx-font-heading);
  font-size: var(--fx-type-heading-md);
  font-weight: 700;
  line-height: 1.1;
}
body.bc-page-companion .ap-pf__rank img {
  flex: 0 0 auto;
  width: auto;
  height: auto;
  max-height: 0.6rem;
  max-width: 0.93rem;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__rank {
    justify-content: center;
    gap: var(--sp-sm);
    margin-bottom: var(--sp-md);
    font-size: 1.4em;
  }
}
body.bc-page-companion .ap-pf__catch {
  margin: 0 0 var(--sp-md);
  color: var(--fx-primary);
  font-family: var(--fx-font-heading);
  font-size: var(--fx-type-heading-md);
  font-weight: 700;
  line-height: 1.45;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__catch {
    margin-bottom: var(--sp-lg);
    font-size: 1.25em;
  }
}
body.bc-page-companion .ap-pf__name {
  display: flex;
  align-items: baseline;
  gap: var(--sp-2xs);
  margin: 0 0 var(--sp-md);
  color: var(--fx-ink-strong);
  font-family: var(--fx-font-heading);
  font-size: var(--fx-type-heading-lg);
  font-weight: 700;
  line-height: 1.1;
}
body.bc-page-companion .ap-pf__name::before {
  content: "";
  flex: 0 0 auto;
  align-self: center;
  width: 0.3rem;
  aspect-ratio: 1;
  background: var(--fx-accent);
  -webkit-mask: url("../images/aoyama/svg/star.svg") center/contain no-repeat;
  mask: url("../images/aoyama/svg/star.svg") center/contain no-repeat;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__name {
    justify-content: center;
    margin-bottom: var(--sp-md);
    font-size: var(--fx-type-heading-lg);
  }
  body.bc-page-companion .ap-pf__name::before {
    width: 0.48rem;
  }
}
body.bc-page-companion .ap-pf__age {
  font-size: 0.55em;
  font-weight: 400;
}
body.bc-page-companion .ap-pf__spec {
  margin: 0;
}
body.bc-page-companion .ap-pf__spec > div {
  margin-bottom: var(--sp-xs);
}
body.bc-page-companion .ap-pf__spec dt {
  margin: 0;
  color: var(--fx-gold-ttl);
  font-family: var(--fx-font-heading);
  font-size: var(--fx-type-body);
  font-weight: 700;
  line-height: 1.2;
}
body.bc-page-companion .ap-pf__spec dd {
  margin: 0;
  color: var(--fx-ink-strong);
  font-family: var(--fx-font-body);
  font-size: var(--fx-type-small);
  line-height: 1.35;
}
body.bc-page-companion .ap-pf__spec--mobile {
  display: none;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__spec--desktop {
    display: none;
  }
  body.bc-page-companion .ap-pf__spec--mobile {
    display: block;
    margin-top: var(--sp-md);
  }
  body.bc-page-companion .ap-pf__spec > div {
    margin-bottom: var(--sp-2xs);
  }
  body.bc-page-companion .ap-pf__spec dt {
    font-size: 0.9em;
  }
  body.bc-page-companion .ap-pf__spec dd {
    font-size: 0.82em;
  }
}
body.bc-page-companion .photo_slide {
  position: relative;
  width: 74%;
  margin: var(--sp-lg) auto 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 767px) {
  body.bc-page-companion .photo_slide {
    width: 82%;
    margin-top: var(--sp-sm);
  }
}
body.bc-page-companion .photo_slide li {
  margin: 0;
  padding: 0 var(--sp-2xs);
  list-style: none;
}
body.bc-page-companion .photo_slide img {
  display: block;
  width: 100%;
  height: auto;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
body.bc-page-companion .photo_slide.slick-initialized li:not(.is-current) img {
  opacity: 0.62;
}
body.bc-page-companion .photo_slide li.is-current img {
  opacity: 1;
}
body.bc-page-companion .photo_slide li:hover img {
  opacity: 1;
}
body.bc-page-companion .photo_slide:not(.slick-initialized) li + li {
  display: none;
}
body.bc-page-companion .ap-pf__thumbwrap {
  margin-top: 0.49rem;
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.29rem;
}
body.bc-page-companion .ap-pf__thumbwrap .photo_slide {
  flex: 1 1 auto;
  min-width: 0;
}
body.bc-page-companion .ap-pf__thumbnav {
  flex: 0 0 auto;
  width: 0.33rem;
  height: 0.33rem;
  padding: 0;
  border: 0;
  background: var(--fx-primary-l);
  cursor: pointer;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='none'%20stroke='black'%20stroke-width='2.6'%20stroke-linecap='round'%20stroke-linejoin='round'%20d='M15%204l-8%208%208%208'/%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cpath%20fill='none'%20stroke='black'%20stroke-width='2.6'%20stroke-linecap='round'%20stroke-linejoin='round'%20d='M15%204l-8%208%208%208'/%3E%3C/svg%3E") center/contain no-repeat;
}
body.bc-page-companion .ap-pf__thumbnav--next {
  transform: scaleX(-1);
}
body.bc-page-companion .ap-pf__thumbnav:disabled {
  cursor: default;
  opacity: 0.45;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__thumbnav {
    width: 0.4rem;
    height: 0.4rem;
  }
}
body.bc-page-companion .photo_slide .slick-prev,
body.bc-page-companion .photo_slide .slick-next {
  position: absolute;
  top: 50%;
  z-index: 2;
  width: 0.5rem;
  aspect-ratio: 1;
  padding: 0;
  border: 0;
  background: none;
  font-size: 0;
  transform: translateY(-50%);
}
body.bc-page-companion .photo_slide .slick-prev {
  left: -0.72rem;
}
body.bc-page-companion .photo_slide .slick-next {
  right: -0.72rem;
}
body.bc-page-companion .photo_slide .slick-prev::before,
body.bc-page-companion .photo_slide .slick-next::before {
  content: "";
  position: absolute;
  inset: 0;
  width: 0.34rem;
  aspect-ratio: 1;
  margin: auto;
  background: var(--fx-primary-l);
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cg%20fill='none'%20stroke='black'%20stroke-width='3'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M13%205l-7%207%207%207'/%3E%3Cpath%20d='M20%205l-7%207%207%207'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%3E%3Cg%20fill='none'%20stroke='black'%20stroke-width='3'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M13%205l-7%207%207%207'/%3E%3Cpath%20d='M20%205l-7%207%207%207'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}
body.bc-page-companion .photo_slide .slick-next::before {
  transform: scaleX(-1);
}
@media (max-width: 767px) {
  body.bc-page-companion .photo_slide .slick-prev {
    left: -0.5rem;
  }
  body.bc-page-companion .photo_slide .slick-next {
    right: -0.5rem;
  }
}
body.bc-page-companion .ap-pf__h2 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--sp-xs);
  margin: var(--sp-2xl) 0 var(--sp-sm);
  color: var(--fx-primary);
  font-family: var(--fx-font-heading);
  font-size: var(--fx-type-heading-lg);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0;
  text-align: center;
}
body.bc-page-companion .ap-pf__h2::before, body.bc-page-companion .ap-pf__h2::after {
  content: "";
  flex: 0 0 auto;
  width: 0.22rem;
  aspect-ratio: 1;
  background: var(--fx-accent);
  -webkit-mask: url("../images/aoyama/svg/star.svg") center/contain no-repeat;
  mask: url("../images/aoyama/svg/star.svg") center/contain no-repeat;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__h2 {
    gap: 0.04rem;
    margin: var(--sp-xl) 0 var(--sp-lg);
    font-size: var(--fx-type-heading-lg);
    letter-spacing: 0.057em;
  }
}
body.bc-page-companion #profile-schedule {
  scroll-margin-top: 12vh;
}
body.bc-page-companion .fx-profile-video {
  width: 68%;
  margin: 0 auto;
}
@media (max-width: 767px) {
  body.bc-page-companion .fx-profile-video {
    width: 74%;
  }
}
body.bc-page-companion .fx-profile-video .movie_wrap {
  margin: 0;
}
body.bc-page-companion .fx-profile-video video,
body.bc-page-companion .fx-profile-video img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  object-fit: cover;
}
body.bc-page-companion .ap-sched {
  --fx-sched-cols:6.3333;
  --fx-sched-rule:var(--fx-neutral-500);
  container-type: inline-size;
  width: 100%;
  margin: 0 auto;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-color: var(--fx-primary) var(--fx-surface-1);
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-sched {
    overflow: visible;
  }
}
body.bc-page-companion .ap-sched__table {
  width: max-content;
  border-collapse: collapse;
  table-layout: fixed;
}
body.bc-page-companion .ap-sched__table th,
body.bc-page-companion .ap-sched__table td {
  width: calc(100cqw / var(--fx-sched-cols));
  padding: 0;
  border-inline: max(1px, 0.01rem) solid var(--fx-sched-rule);
  text-align: center;
  vertical-align: middle;
}
body.bc-page-companion .ap-sched__table th:first-child,
body.bc-page-companion .ap-sched__table td:first-child {
  border-inline-start: 0;
}
body.bc-page-companion .ap-sched__table th:last-child,
body.bc-page-companion .ap-sched__table td:last-child {
  border-inline-end: 0;
}
body.bc-page-companion .ap-sched__table th {
  height: 0.85rem;
  border-block-start: 0.01rem solid var(--fx-sched-rule);
  background: var(--fx-surface-1);
  color: var(--fx-ink-strong);
  font-family: var(--fx-font-heading);
  font-size: 0.26rem;
  font-weight: 700;
  line-height: 1.19;
}
body.bc-page-companion .ap-sched__table td {
  height: 1.68rem;
  border-block-end: 0.02rem solid var(--fx-sched-rule);
  background: var(--white);
}
body.bc-page-companion .ap-sched__cell {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.14rem;
}
body.bc-page-companion .ap-sched__dow,
body.bc-page-companion .ap-sched__day {
  display: block;
}
body.bc-page-companion .ap-sched__none {
  color: var(--fx-ink-strong);
  font-size: 0.26rem;
  line-height: 1;
}
body.bc-page-companion .ap-sched__time {
  display: block;
  color: var(--fx-primary);
  font-family: var(--fx-font-heading);
  font-size: 0.28rem;
  font-weight: 700;
  line-height: 0.82;
}
body.bc-page-companion .ap-sched__sep {
  display: block;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-sched__sep {
    display: inline;
    margin-inline: 0.12em;
  }
}
body.bc-page-companion .ap-sched__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 83.5%;
  height: 0.59rem;
  padding: 0;
  border: 0;
  border-radius: 0.02rem;
  background: var(--fx-primary);
  color: var(--white);
  font-family: var(--fx-font-heading);
  font-size: 0.21rem;
  font-weight: 700;
  line-height: 1.14;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
}
body.bc-page-companion .ap-sched__btn--phone,
body.bc-page-companion .ap-sched__btn--online {
  background: var(--fx-primary);
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-sched__table {
    display: grid;
    grid-template-columns: 28.9fr 71.1fr;
    width: 100%;
  }
  body.bc-page-companion .ap-sched__table thead,
  body.bc-page-companion .ap-sched__table tbody,
  body.bc-page-companion .ap-sched__table tr {
    display: contents;
  }
  body.bc-page-companion .ap-sched__table th,
  body.bc-page-companion .ap-sched__table td {
    width: auto;
    height: 1.24rem;
    border: 0;
    border-block-end: 0.01rem solid var(--fx-sched-rule);
  }
  body.bc-page-companion .ap-sched__table th {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-inline-start: 0.215rem;
    font-size: 0.366rem;
    line-height: 1.15;
    text-align: start;
  }
  body.bc-page-companion .ap-sched__table td {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  body.bc-page-companion .ap-sched__table th:first-child,
  body.bc-page-companion .ap-sched__table td:first-child {
    border-block-start: 0.01rem solid var(--fx-sched-rule);
  }
  body.bc-page-companion .ap-sched__table th:nth-child(1),
  body.bc-page-companion .ap-sched__table td:nth-child(1) {
    grid-row: 1;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(2),
  body.bc-page-companion .ap-sched__table td:nth-child(2) {
    grid-row: 2;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(3),
  body.bc-page-companion .ap-sched__table td:nth-child(3) {
    grid-row: 3;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(4),
  body.bc-page-companion .ap-sched__table td:nth-child(4) {
    grid-row: 4;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(5),
  body.bc-page-companion .ap-sched__table td:nth-child(5) {
    grid-row: 5;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(6),
  body.bc-page-companion .ap-sched__table td:nth-child(6) {
    grid-row: 6;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(7),
  body.bc-page-companion .ap-sched__table td:nth-child(7) {
    grid-row: 7;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(8),
  body.bc-page-companion .ap-sched__table td:nth-child(8) {
    grid-row: 8;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(9),
  body.bc-page-companion .ap-sched__table td:nth-child(9) {
    grid-row: 9;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(10),
  body.bc-page-companion .ap-sched__table td:nth-child(10) {
    grid-row: 10;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(11),
  body.bc-page-companion .ap-sched__table td:nth-child(11) {
    grid-row: 11;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(12),
  body.bc-page-companion .ap-sched__table td:nth-child(12) {
    grid-row: 12;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(13),
  body.bc-page-companion .ap-sched__table td:nth-child(13) {
    grid-row: 13;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(14),
  body.bc-page-companion .ap-sched__table td:nth-child(14) {
    grid-row: 14;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(15),
  body.bc-page-companion .ap-sched__table td:nth-child(15) {
    grid-row: 15;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(16),
  body.bc-page-companion .ap-sched__table td:nth-child(16) {
    grid-row: 16;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(17),
  body.bc-page-companion .ap-sched__table td:nth-child(17) {
    grid-row: 17;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(18),
  body.bc-page-companion .ap-sched__table td:nth-child(18) {
    grid-row: 18;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(19),
  body.bc-page-companion .ap-sched__table td:nth-child(19) {
    grid-row: 19;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(20),
  body.bc-page-companion .ap-sched__table td:nth-child(20) {
    grid-row: 20;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(21),
  body.bc-page-companion .ap-sched__table td:nth-child(21) {
    grid-row: 21;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(22),
  body.bc-page-companion .ap-sched__table td:nth-child(22) {
    grid-row: 22;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(23),
  body.bc-page-companion .ap-sched__table td:nth-child(23) {
    grid-row: 23;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(24),
  body.bc-page-companion .ap-sched__table td:nth-child(24) {
    grid-row: 24;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(25),
  body.bc-page-companion .ap-sched__table td:nth-child(25) {
    grid-row: 25;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(26),
  body.bc-page-companion .ap-sched__table td:nth-child(26) {
    grid-row: 26;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(27),
  body.bc-page-companion .ap-sched__table td:nth-child(27) {
    grid-row: 27;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(28),
  body.bc-page-companion .ap-sched__table td:nth-child(28) {
    grid-row: 28;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(29),
  body.bc-page-companion .ap-sched__table td:nth-child(29) {
    grid-row: 29;
  }
  body.bc-page-companion .ap-sched__table th:nth-child(30),
  body.bc-page-companion .ap-sched__table td:nth-child(30) {
    grid-row: 30;
  }
  body.bc-page-companion .ap-sched__cell {
    flex-direction: row;
    gap: 0;
    width: 100%;
    height: 100%;
  }
  body.bc-page-companion .ap-sched__time {
    flex: 1 1 auto;
    font-size: 0.46rem;
    line-height: 1;
  }
  body.bc-page-companion .ap-sched__none {
    font-size: 0.34rem;
  }
  body.bc-page-companion .ap-sched__btn {
    flex: 0 0 auto;
    width: 37%;
    height: 0.86rem;
    font-size: 0.28rem;
    line-height: 1.15;
  }
  body.bc-page-companion .ap-sched:not(.is-expanded) .ap-sched__table th:nth-child(n+7),
  body.bc-page-companion .ap-sched:not(.is-expanded) .ap-sched__table td:nth-child(n+7) {
    display: none;
  }
}
body.bc-page-companion .ap-pf__more {
  margin: var(--sp-lg) 0 0;
  text-align: center;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__more {
    margin-top: var(--sp-xl);
  }
}
body.bc-page-companion .ap-pf__more-btn {
  padding: 0;
  border: 0;
  background: none;
  color: var(--fx-primary);
  font-family: var(--fx-font-heading);
  font-size: 0.24rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.2;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__more-btn {
    font-size: 0.35rem;
    letter-spacing: 0.03em;
  }
}
body.bc-page-companion .ap-pf__intro {
  position: relative;
  display: grid;
  align-items: start;
  margin-top: var(--sp-2xl);
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__intro {
    margin-top: var(--sp-3xl);
  }
}
body.bc-page-companion .ap-pf__intro {
  border: max(1px, 0.01rem) solid var(--fx-accent);
}
body.bc-page-companion .ap-pf__intro::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0.17rem;
  border: max(1px, 0.01rem) solid var(--fx-accent);
  pointer-events: none;
}
body.bc-page-companion .ap-pf__intro::after {
  content: "";
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 0;
  width: 1.9rem;
  height: 0.28rem;
  background: url("../images/aoyama/companion/intro-top-ornament.svg") center bottom/contain no-repeat;
  transform: translate(-50%, -94%);
  pointer-events: none;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__intro::after {
    width: 2.4rem;
    height: 0.36rem;
  }
}
body.bc-page-companion .ap-pf__intro-frame {
  position: absolute;
  z-index: 0;
  inset: 0.18rem;
  display: block;
  pointer-events: none;
}
body.bc-page-companion .ap-pf__intro-corner {
  position: absolute;
  width: 0.64rem;
  height: 0.67rem;
  background: url("../images/aoyama/companion/intro-corner.svg") left top/contain no-repeat;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__intro-corner {
    width: 0.8rem;
    height: 0.84rem;
  }
}
body.bc-page-companion .ap-pf__intro-corner--tl {
  left: 0;
  top: 0;
}
body.bc-page-companion .ap-pf__intro-corner--tr {
  right: 0;
  top: 0;
  transform: scaleX(-1);
}
body.bc-page-companion .ap-pf__intro-corner--bl {
  left: 0;
  bottom: 0;
  transform: scaleY(-1);
}
body.bc-page-companion .ap-pf__intro-corner--br {
  right: 0;
  bottom: 0;
  transform: scale(-1);
}
body.bc-page-companion .ap-pf__intro-content {
  position: relative;
  z-index: 1;
  padding: 8% 7% 7%;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__intro-content {
    padding: 12% 9% 10%;
  }
}
body.bc-page-companion .ap-pf__intro-ttl {
  margin: 0 0 var(--sp-md);
  color: var(--fx-accent);
  font-family: var(--fx-font-heading);
  font-size: var(--fx-type-heading-lg);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.04em;
  text-align: center;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__intro-ttl {
    margin-bottom: var(--sp-sm);
    font-size: var(--fx-type-heading-md);
  }
}
body.bc-page-companion .ap-pf__intro-body p {
  margin: 0;
  color: var(--fx-ink-strong);
  font-family: var(--fx-font-body);
  font-size: 0.192rem;
  line-height: 1.42;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__intro-body p {
    font-size: 0.269rem;
    line-height: 1.35;
  }
}
body.bc-page-companion #pricing_dtl {
  padding-bottom: var(--sp-2xl);
}
body.bc-page-companion .ap-rankprice {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: var(--sp-xs) var(--sp-md);
  align-items: center;
  margin-top: var(--sp-2xl);
  padding: var(--sp-2xs) var(--sp-xs);
  border: 0.27rem solid transparent;
  border-image: url("../images/aoyama/companion/price-frame.svg") 9.22% 2.67% stretch;
}
body.bc-page-companion .ap-rankprice > :not(.ap-rank__frame) {
  position: relative;
  z-index: 1;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-rankprice {
    grid-template-columns: 1fr;
    justify-items: center;
    padding: var(--sp-2xs);
  }
}
body.bc-page-companion .ap-rankprice > .ap-rank__frame {
  display: none;
}
body.bc-page-companion .ap-rankprice__badge {
  grid-row: 1;
  margin: 0;
}
body.bc-page-companion .ap-rankprice__badge img {
  display: block;
  width: 1.7rem;
  height: auto;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-rankprice__badge {
    grid-row: auto;
    grid-column: 1;
  }
  body.bc-page-companion .ap-rankprice__badge img {
    width: 1.3rem;
  }
}
body.bc-page-companion .ap-rankprice__head {
  grid-row: 1;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-rankprice__head {
    grid-row: auto;
    grid-column: 1;
    text-align: center;
  }
}
body.bc-page-companion .ap-rankprice__name {
  margin: 0 0 var(--sp-2xs);
  color: var(--fx-ink-strong);
  font-family: var(--fx-font-heading);
  font-size: var(--fx-type-heading-lg);
  font-weight: 700;
  line-height: 1.2;
}
body.bc-page-companion .ap-rankprice__note {
  margin: 0;
  color: var(--fx-ink-mid);
  font-family: var(--fx-font-body);
  font-size: var(--fx-type-small);
  line-height: 1.4;
}
body.bc-page-companion .ap-rankprice__tables {
  grid-column: 1/-1;
  margin-top: var(--sp-md);
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-appcta__inner {
    padding: 0.42rem var(--sp-xl) 0;
  }
  body.bc-page-companion .ap-appcta__main {
    gap: var(--sp-md);
  }
  body.bc-page-companion .ap-appcta__body {
    padding: 0;
  }
  body.bc-page-companion .ap-appcta__crown {
    width: 2.75rem;
  }
  body.bc-page-companion .ap-appcta__title {
    margin-top: var(--sp-md);
    font-size: 2em;
  }
  body.bc-page-companion .ap-appcta__lead {
    margin-top: var(--sp-md);
    font-size: 1.1em;
  }
  body.bc-page-companion .ap-appcta__apps {
    gap: var(--sp-lg);
    width: 90%;
    margin-top: var(--sp-lg);
  }
  body.bc-page-companion .ap-appcta__btn {
    height: 1.65rem;
  }
  body.bc-page-companion .ap-appcta__btn-ic {
    width: 0.58rem;
  }
  body.bc-page-companion .ap-appcta__btn-txt {
    font-size: 1em;
  }
  body.bc-page-companion .ap-appcta__note {
    min-height: 0.9rem;
    margin: var(--sp-lg) calc(var(--sp-xl) * -1) 0;
    font-size: 0.9em;
  }
}

body.bc-page-companion #companion_post .fx-availability__ttl {
  display: none;
}

body.bc-page-companion .ap-pf {
  grid-template-columns: 6rem minmax(0, 1fr);
  gap: 0.34rem;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf {
    grid-template-columns: 1fr;
    gap: var(--sp-sm);
  }
}
body.bc-page-companion .ap-pf__rank {
  font-size: 0.39rem;
}
body.bc-page-companion .ap-pf__rank img {
  max-height: 0.6rem;
  max-width: 0.93rem;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__rank {
    font-size: 0.46rem;
  }
  body.bc-page-companion .ap-pf__rank img {
    max-height: 0.625rem;
    max-width: 0.95rem;
  }
}
body.bc-page-companion .ap-pf__catch {
  font-size: 0.39rem;
  line-height: 1.49;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__catch {
    font-size: 0.442rem;
  }
}
body.bc-page-companion .ap-pf__name {
  font-size: 0.62rem;
}
body.bc-page-companion .ap-pf__name::before {
  width: 0.44rem;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__name {
    font-size: 0.63rem;
  }
  body.bc-page-companion .ap-pf__name::before {
    width: 0.56rem;
  }
}
body.bc-page-companion .ap-pf__spec > div {
  margin-bottom: 0.14rem;
}
body.bc-page-companion .ap-pf__spec dt {
  font-size: 0.28rem;
  line-height: 1.2;
}
body.bc-page-companion .ap-pf__spec dd {
  margin-top: 0.05rem;
  font-size: 0.25rem;
  line-height: 1.35;
}
body.bc-page-companion .ap-pf__h2::before,
body.bc-page-companion .ap-pf__h2::after {
  width: 0.36rem;
  height: 0.36rem;
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__h2::before,
  body.bc-page-companion .ap-pf__h2::after {
    width: 0.5rem;
    height: 0.5rem;
  }
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__h2 {
    font-size: 0.576rem;
  }
}
@media (max-width: 767px) {
  body.bc-page-companion .ap-pf__spec--mobile {
    text-align: left;
  }
  body.bc-page-companion .ap-pf__spec--mobile > div {
    display: flex;
    align-items: baseline;
    gap: 0.14rem;
    margin-bottom: 0.13rem;
  }
  body.bc-page-companion .ap-pf__spec--mobile dt {
    flex: 0 0 auto;
    font-size: 0.355rem;
  }
  body.bc-page-companion .ap-pf__spec--mobile dd {
    margin-top: 0;
    font-size: 0.318rem;
  }
  body.bc-page-companion .ap-pf__photo img {
    width: 6.74rem;
    max-width: 100%;
  }
}

/*# sourceMappingURL=companion.css.map */
