@charset "UTF-8";
/**
  * 💫MainテーマのCSSカスタマイズ
  * @file: assets/theme_customize.css
  * @並び: f, l, c, p, u
  * f: Foundation: ベースとなるCSSやリセットCSSなど
  * l: Layout: ヘッダーやフッター、共通で使用するレイアウト部分のCSS
  * c: Component: 共通で使用したいパーツ部分のCSS
  * p: Project: そのページのみで使用する部分のCSS
  * u: Utility: わずかなスタイル調整のCSS
  * @構造: BEM
  * B: Block: ブロック
  * E: Element: 要素
  * M: Modifier: 修飾子
  * BEMの書き方
  * Eの頭は__(アンダースコア2つ), Mの頭は--(ハイフン2つ)
  * 2単語以上の場合は-(ハイフン)でつなぐ
 */
/* デフォルト設定 */
.u-text--head {
  color: #494949;
  font-size: 24px;
  font-family: var(--font-family-main);
}

.u-color--head {
  color: #494949;
}

.u-text--subhead {
  color: #494949;
  font-size: 17px;
  font-family: var(--font-family-main);
}

.u-text--body {
  color: #9A9A9A;
  font-size: 13px;
  font-family: var(--font-family-main);
}

.u-color--body {
  color: #9A9A9A;
}

.u-text--strong {
  color: #494949;
  font-size: 13px;
  font-family: var(--font-family-main);
}

.u-text--link {
  color: #386F81;
  /* font-size: 13px; */
  font-family: var(--font-family-main);
}

.u-text--head--overlay {
  color: #FFFFFF;
  font-size: 24px;
  font-family: var(--font-family-main);
}

.u-text--subhead--overlay {
  color: #FFFFFF;
  font-size: 17px;
  font-family: var(--font-family-main);
}

.u-text--body--overlay {
  color: #FFFFFF;
  font-size: 13px;
  font-family: var(--font-family-main);
}

.u-text--color--overlay {
  color: #FFFFFF;
}

.u-color__btn--bg {
  background: #386F81;
}

.u-color__btn--bg--overlay {
  background: #386F81;
}

.u-color__btn--bg--reverse {
  background: #FFFFFF;
}

.u-color__btn--bg--overlay--reverse {
  background: #FFFFFF;
}

.u-color__btn {
  color: #386F81;
}

.u-text--btn {
  color: #FFFFFF;
  font-size: 13px;
  font-family: var(--font-family-main);
}

.u-text--btn--overlay {
  color: #FFFFFF;
  font-size: 13px;
  font-family: var(--font-family-main);
}

.u-text--btn--reverse {
  color: #386F81;
  font-size: 13px;
  font-family: var(--font-family-main);
  border: 1px solid #BDC1C2;
}

.u-text--btn--overlay--reverse {
  color: #386F81;
  font-size: 13px;
  font-family: var(--font-family-main);
  border: 1px solid #BDC1C2;
}

.u-color__btn--text {
  color: #FFFFFF;
}

.u-color__btn--text--bg {
  background: #FFFFFF;
}

.u-text--input {
  color: #9A9A9A;
  font-size: 13px;
  font-family: var(--font-family-main);
}

.u-color--input {
  color: #9A9A9A;
}

.u-color__input--bg {
  background: #FFFFFF;
}

.u-color__border--input {
  border-color: #BDC1C2;
}

.u-color__bg--base {
  background: #FFFFFF;
}

.u-color__bg--main {
  background: #FFFFFF;
}

.u-color__border--border {
  border-color: #D8DDDF;
}

.u-color__border--main {
  border-color: #D8DDDF;
}

.u-font--head {
  font-size: 24px;
  font-family: var(--font-family-main);
}

.u-font--subhead {
  font-size: 17px;
  font-family: var(--font-family-main);
}

.u-font--body {
  font-size: 13px;
  font-family: var(--font-family-main);
}

.u-font--bold {
  font-weight: bold;
}

.c-product_info__details__icon::before, .c-product_info__details__icon::after {
  background: #494949;
}

.c-product_item__actions .c-product_item__form--favorite {
  display: none;
}

.c-product_item__actions .c-product_item__form--cart {
  display: none;
}

.c-product_item .c-product_item__inner__content {
  margin-top: 0;
}

/*================ Fonts ================*/
/*================ Headings ================*/
h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: var(--font-family-main);
}

/*================ Variables ================*/
:root {
  --color-text-head: #494949;
  --color-text-body: #9A9A9A;
  --color-text-overlay: #FFFFFF;
  --color-text-link: #386F81;
  --color-btn-bg: #386F81;
  --color-btn-text: #FFFFFF;
  --color-input-text: #9A9A9A;
  --color-input-border: #BDC1C2;
  --color-page-bg: #FFFFFF;
  --color-page-border: #D8DDDF;
  --color-page-accent: #386F81;
  --color-_main: #92a8d1;
  --color-_main2: #f7cac9;
  --color-_main2_2: #f79492;
  --color-_second: #d8ebfa;
  --color-_accent: #ff6194;
  --color-_accent2: #f4ffa0;
  --color-_text-main: #323232;
  --color-_gray: #646464;
  --color-_gray2: #a2a2a2;
  --color-_gray_placeholder: #9b9b9b;
  --color-_gray-light: #f0f0f0;
  --color-_line: #06c755;
  --color-_striped1: #7ab1d7;
  --color-_striped2: #87b8d8;
  --font-family-main: "Zen Kaku Gothic New", sans-serif;
  --font-family-en: "Josefin Sans", sans-serif;
  --font-size-text-head: 25px;
  --font-size-text-subhead: 20px;
  --font-size-text-body: 15px;
  --font-size-text-link: 15px;
}

.c-steps_to_order--theme {
  --theme-color: var(--color-btn-bg);
  --text-color: var(--color-btn-text);
}

.p-movie--theme {
  --theme-color: var(--color-btn-bg);
}

/* デフォルト設定ここまで */
/**
 * ここから独自
 */
@keyframes headerScroll {
  from {
    top: 0;
    transform: translateY(0);
  }
  to {
    top: 100%;
    transform: translateY(-100%);
  }
}
@keyframes linkArrowSlide {
  from {
    left: 0;
  }
  to {
    left: 100%;
    transform: translateX(-100%);
  }
}
body {
  /* container-type: inline-size; */
}
body:has(.p-product) .l-header__right_item--product a::after, body:has(.p-what-is-nmn) .l-header__right_item--what-is-nmn a::after, body:has(.p-subscription) .l-header__right_item--subs a::after, body:has(.p-faq) .l-header__right_item--faq a::after, body:has(.p-contact) .l-header__right_item--contact a::after {
  opacity: 1;
  background-color: var(--color-_gray2);
}
body:has(.p-product) .l-header__right_item--product a:hover::after, body:has(.p-what-is-nmn) .l-header__right_item--what-is-nmn a:hover::after, body:has(.p-subscription) .l-header__right_item--subs a:hover::after, body:has(.p-faq) .l-header__right_item--faq a:hover::after, body:has(.p-contact) .l-header__right_item--contact a:hover::after {
  opacity: 1;
  background-color: var(--color-_gray2);
}

sup {
  font-size: 80%;
  line-height: 0;
}

/* .c-account_menu__container__block__title:after {
  content: "_";
} */
/* レイアウト */
.l-container {
  padding-top: 0 !important;
}
.l-container:has(.p-account), .l-container:has(.p-login) {
  padding-top: 80px !important;
}

.l-wrapper-none {
  letter-spacing: 0;
}

.l-header {
  position: -webkit-fixed;
  position: fixed;
  background: rgba(255, 255, 255, 0.6);
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.16);
  border: none;
}
.l-header .l-header__inner {
  padding-inline: clamp(20px, 2.415cqw, 33px);
  gap: clamp(10px, 2.928cqw, 40px);
}
.l-header .l-header__right_chunk {
  display: flex;
  align-items: center;
}
.l-header .l-header__right_chunk--pages {
  gap: clamp(10px, 2.928cqw, 40px);
  font-family: var(--font-family-en);
  letter-spacing: 0.04em;
}
.l-header .l-header__right_chunk--pages .l-header__right_item {
  height: 100%;
}
.l-header .l-header__right_chunk--pages a {
  position: relative;
  display: block;
  height: 100%;
  display: grid;
  place-items: center;
  font-size: clamp(12px, 1.549cqw, 15px);
  white-space: nowrap;
}
.l-header .l-header__right_chunk--pages a::after {
  position: absolute;
  left: 50%;
  bottom: 50%;
  content: "";
  width: 20px;
  height: 2px;
  background: var(--color-_gray2);
  border-radius: 10px;
  transform: translate(-50%, 14px);
  transition: 0.2s;
  opacity: 0;
}
.l-header .l-header__right_chunk--pages a:hover::after {
  opacity: 1;
}
.l-header .l-header__right_chunk--functions img, .l-header .l-header__right_chunk--line img {
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.16);
}
.l-header .l-header__right_chunk--functions {
  gap: clamp(10px, 1.464cqw, 20px);
  margin-left: clamp(10px, 2.928cqw, 40px);
}
.l-header .l-header__right_chunk--functions a {
  display: block;
  width: 2.635cqw;
  max-width: 36px;
  /* 要素のサイズ変更や個数の変更の際には書き換える */
}
.l-header .l-header__right_chunk--functions img {
  border-radius: 50px;
}
.l-header .l-header__right_chunk--line {
  margin-left: clamp(10px, 2.196cqw, 30px);
}
.l-header .l-header__right_chunk--line a {
  display: block;
  width: 9.59cqw;
  max-width: 131px;
  /* 要素のサイズ変更や個数の変更の際には書き換える */
}
.l-header .l-header__right_chunk--line img {
  border-radius: min(0.732cqw, 10px);
}
.l-header__inner__block__item {
  margin-right: 0;
}

.l-header__inner__block__item--menu {
  display: none;
}

.l-main__description {
  text-align: center;
}
.l-main__description .u-text--body {
  font-size: 18px;
  line-height: 1.66;
}
.l-main__description .u-text--large {
  font-size: 20px;
}

.c-gmenu {
  display: none;
}

.l-footer {
  display: block;
  padding: unset;
  background: var(--color-_gray2);
  border: none;
  color: #fff;
  font-family: var(--font-family-main);
}
.l-footer .l-footer__line { /* 右下の丸アイコン */
  display: none;
  /* ↑一時的非表示 */
  position: fixed;
  bottom: 1px;
  right: 10px;
  width: 100px;
  z-index: 1;
}
.l-footer .l-footer__line img {
  transform: scale(0.98);
}
.l-footer .l-footer__inner {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  max-width: 1406px;
  padding: 70px 20px 100px;
}
.l-footer .l-footer__info {
  max-width: unset;
  width: 50%;
}
.l-footer .l-footer__menu {
  width: 50%;
}
.l-footer .l-footer__info__store {
  padding-top: 30px;
}
.l-footer .l-footer__info__store__logo {
  margin-bottom: 15px;
}
.l-footer .l-footer__info__store__logo img {
  width: auto;
}
.l-footer .l-footer__info__store__sns {
  margin-bottom: 15px;
  display: flex;
  gap: 10px;
}
.l-footer .l-footer__info__store__sns__item {
  width: 30px;
}
.l-footer .l-footer__info__store__sns__item:not(:last-child) {
  margin-right: unset;
}
.l-footer .l-footer__info__store__copyright {
  font-size: 12px;
  font-family: var(--font-family-en);
  letter-spacing: 0.04em;
}

.c-footer-page-menu {
  margin-top: -15px;
  /* & .c-footer-page-menu__list {} */
}
.c-footer-page-menu .c-footer-page-menu__list-item:not(:last-child) {
  border-bottom: 0.5px solid var(--color-_gray-light);
}
.c-footer-page-menu .c-footer-page-menu__list-item-link {
  display: block;
  padding-right: 40px;
  line-height: 50px;
}
.c-footer-page-menu .c-footer-page-menu__list-item-link--label {
  font-size: 20px;
  font-family: var(--font-family-en);
}
.c-footer-page-menu .c-footer-page-menu__list-item-link--sub {
  display: inline;
  font-size: 10px;
  font-family: var(--font-family-main);
}

.c-form_table .u-color__text--alert {
  color: var(--color-_main2_2);
}

.c-form_table__subscription .c-account_table {
  margin-top: 0;
  margin-bottom: 20px;
}

/* ユーティリティ */
.u-text--subhead, .u-text--body, .u-text--strong, .u-text--btn, .u-text--link {
  font-family: var(--font-family-main);
}

.u-text--subhead, .u-text--body, .u-text--strong {
  color: var(--color-_text-main);
}

.u-text--en {
  font-family: var(--font-family-en);
}

.u-text--body {
  font-size: 15px;
  line-height: 1.66;
}

.u-text--strong {
  font-weight: 500;
}

.u-text--large {
  font-size: 120%;
}

.u-text--body_input {
  vertical-align: bottom !important;
}

.u-text--input {
  color: var(--color-_text-main);
}
.u-text--input::-moz-placeholder {
  color: var(--color-_gray_placeholder);
}
.u-text--input::placeholder {
  color: var(--color-_gray_placeholder);
}

.u-text--link {
  color: var(--color-_main);
}
.u-text--link:is(.u-text--body > *) {
  font-size: inherit;
  text-decoration: underline;
}

.u-text--link__arrow {
  color: var(--color-_text-main);
}

.u-color__btn--bg {
  background: var(--color-_main);
  box-shadow: 2px 5px 6px rgba(0, 0, 0, 0.2);
}

.u-color__btn--bg--overlay {
  background: var(--color-_main);
}

.u-color__bg--bg {
  background: var(--color-_second);
}

.u-color__border--input {
  border: 0.5px solid var(--color-_gray2);
}

.u-color__input--bg {
  background: var(--color-_gray-light);
}

.u-margin__bottom--200 {
  margin-bottom: 200px;
}

.u-margin-left--auto {
  margin-left: auto;
}

.u-padding__top--100 {
  padding-top: 100px;
}

.u-padding__top--120 {
  padding-top: 120px;
}

.u-padding__top--150 {
  padding-top: 150px;
}

.u-padding__bottom--90 {
  padding-bottom: 90px;
}

.u-padding__bottom--100 {
  padding-bottom: 100px;
}

.u-padding__bottom--150 {
  padding-bottom: 150px;
}

.u-set__btn--primary, .u-set__btn--secondary, .u-set__btn--alert {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 0 20px;
  width: auto;
  max-width: 240px;
  min-width: 80px;
  height: 36px;
  border: 1px solid transparent;
  border-radius: 50px;
  box-shadow: 2px 5px 6px rgba(0, 0, 0, 0.2);
  font-size: 13px;
  font-family: var(--font-family-main);
  transition: all 0.4s;
  cursor: pointer;
}
.u-set__btn--primary:hover, .u-set__btn--secondary:hover, .u-set__btn--alert:hover {
  opacity: 0.4;
}

.u-set__btn--primary {
  background: var(--color-_main);
  color: #fff;
}

.u-set__btn--secondary {
  background: var(--color-_gray2);
  color: #fff;
}

.u-set__btn--alert {
  background: #fff;
  border-color: #f00;
  color: #f00;
}

.u-set__btn__wrapper {
  display: flex;
  gap: 10px;
}

/* コンポーネント */
.c-shop_bottom_nav {
  margin-top: 120px;
  margin-inline: auto;
  padding-inline: 20px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 105px;
  max-width: 1406px;
}
.c-shop_bottom_nav .c-shop_bottom_nav__item {
  max-width: 487px;
  width: clamp(300px, 35.65cqw, 487px);
}
.c-shop_bottom_nav .c-shop_bottom_nav__img {
  margin-top: 40px;
  box-shadow: inset 10px 10px 10px rgba(0, 0, 0, 0.03), 5px 4px 4px rgba(0, 0, 0, 0.17);
  border-radius: 3px;
  overflow: hidden;
}
.c-shop_bottom_nav .c-shop_bottom_nav__body {
  margin-top: 20px;
}
.c-shop_bottom_nav .c-shop_bottom_nav__link {
  margin-top: 20px;
}

.c-shop_normal_link {
  position: relative;
}
.c-shop_normal_link a {
  position: relative;
  display: inline-block;
  width: 168px;
  height: 33px;
  font-size: 15px;
  font-family: var(--font-family-main);
  overflow: hidden;
}
.c-shop_normal_link a::before {
  content: "";
  position: absolute;
  display: block;
  width: 162px;
  height: 6px;
  left: 0;
  bottom: 7px;
  background: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/icon_arrowbtn_line.svg") no-repeat;
}
.c-shop_normal_link a::after {
  content: "";
  position: absolute;
  display: block;
  width: 18px;
  height: 18px;
  bottom: 0;
  left: -100%;
  background: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/icon_arrowbtn_circle.svg");
  pointer-events: none;
}
.c-shop_normal_link a:hover::after {
  animation: linkArrowSlide ease 1.2s forwards;
}

.c-subs_item {
  max-width: 900px;
  margin: 0 auto;
  padding-inline: 20px;
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  gap: 20px;
}
.c-subs_item .c-subs_item__body {
  width: 420px;
}
.c-subs_item .c-subs_item__title {
  position: relative;
  text-align: center;
  font-size: 18px;
  letter-spacing: 0.04em;
  font-family: var(--font-family-en);
}
.c-subs_item .c-subs_item__title span {
  font-family: var(--font-family-main);
  font-weight: 500;
}
.c-subs_item .c-subs_item__title::after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: calc(100% - 2px);
  display: block;
  width: 280px;
  height: 9px;
  background: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/img_subs_linearrow.svg");
}
.c-subs_item__price {
  margin-top: 20px;
  border: 1px solid #eaeaea;
  display: flex;
  font-family: var(--font-family-main);
}
.c-subs_item__price .c-subs_item__price_left {
  display: grid;
  place-items: center;
  width: 50%;
  background: var(--color-_gray-light);
}
.c-subs_item__price .c-subs_item__price_body {
  padding-block: 10px 16px;
  width: 50%;
}
.c-subs_item__price .c-subs_item__price_body_first {
  padding-left: 15px;
  display: flex;
}
.c-subs_item__price .c-subs_item__price_body_first .c-subs_item__price_body_first--discount {
  margin-top: 3px;
  font-size: 22px;
  font-weight: 700;
  color: var(--color-_main2_2);
}
.c-subs_item__price .c-subs_item__price_body_first .c-subs_item__price_body_first--number {
  margin-left: 8px;
  font-size: 25px;
  letter-spacing: 0.04em;
  font-weight: 700;
}
.c-subs_item__price .c-subs_item__price_body_first .c-subs_item__price_body_first--number_symbol {
  vertical-align: super;
  font-size: 12px;
}
.c-subs_item__price .c-subs_item__price_body_first .c-subs_item__price_body_first--number_tax {
  font-size: 12px;
  font-weight: 400;
}
.c-subs_item__price .c-subs_item__price_body_second {
  padding-left: 15px;
  font-size: 12px;
  text-align: left;
}
.c-subs_item__price .c-subs_item__price_body_second .c-subs_item__price_body_second--strike {
  text-decoration: line-through;
}

.c-subs_item__point {
  margin-top: 20px;
}
.c-subs_item__point .c-subs_item__point_list {
  margin-top: 10px;
  padding-left: 1.6em;
  text-indent: -1.6em;
  line-height: 1.4;
}
.c-subs_item__point .c-subs_item__point_list::before {
  content: "●";
  color: var(--color-_gray-light);
  font-size: 13px;
  margin-right: 10px;
}

.c-subs_feature {
  margin-top: 80px;
  margin-inline: auto;
  padding-inline: 20px;
  max-width: 1120px;
  display: grid;
  grid-template-columns: repeat(2, auto);
  gap: 20px;
  place-content: center;
}
.c-subs_feature .c-subs_feature__item {
  width: min(47.32cqw, 530px);
  min-height: 150px;
  background: white;
  padding-inline: 40px 20px;
  display: grid;
  grid-template-columns: 113px auto;
  gap: min(5.98cqw, 67px);
}
.c-subs_feature .c-subs_feature__icon {
  display: grid;
  place-items: center;
}
.c-subs_feature .c-subs_feature__icon .c-subs_feature__icon_frame {
  width: 113px;
  aspect-ratio: 1;
}
.c-subs_feature .c-subs_feature__text {
  padding-block: 18px;
}
.c-subs_feature .c-subs_feature__title {
  padding-bottom: 5px;
  border-bottom: 1px solid var(--color-_gray);
  font-size: 20px;
  font-weight: 500;
  line-height: 1.45;
}
.c-subs_feature .c-subs_feature__desc {
  margin-top: 20px;
  font-size: 15px;
  line-height: 1.4;
}

.c-cart_item {
  display: grid;
  grid-template-columns: 120px 1fr;
  grid-template-rows: 1fr auto;
  gap: 12px;
  grid-template-areas: "img info" "img management";
  align-items: start;
  padding: 16px 20px;
  background: #fff;
  border: 2px solid var(--color-_second);
  border-radius: 6px;
}
.c-cart_item + .c-cart_item {
  margin-top: 4px;
}
.c-cart_item .c-cart_item__img, .c-cart_item .c-cart_item__img__inner {
  grid-area: img;
}
.c-cart_item .c-cart_item__info {
  grid-area: info;
  padding-left: 0;
  border-color: var(--color-_gray);
}
.c-cart_item .c-cart_item__management {
  grid-area: management;
  margin-left: auto;
}
.c-cart_item:not(:has(+ .c-cart_item)) {
  border-bottom-width: unset;
}

.c-cart_item__info__category {
  margin-bottom: 0;
}

.c-cart_item__info__title {
  margin-top: 10px;
}

.c-billing_list {
  border-radius: 6px;
}

.c-billing_list__title {
  border-color: var(--color-_gray);
}

.c-billing_list__detail {
  border-color: var(--color-_gray);
}

.c-gmenu__container__inner__logout {
  width: 100%;
}
.c-gmenu__container__inner__logout i {
  font-size: 20px;
  position: absolute;
  left: 16px;
  top: calc(50% - 10px);
}

.c-account__survey_link {
  font-size: 14px;
}
.c-account__survey_link a {
  font-size: 16px;
  color: #ffaf1e;
  text-decoration: underline;
}
.c-account__survey_link p {
  margin-top: 10px;
  font-size: 14px;
  color: var(--color-_text-main);
  font-family: var(--font-family-main);
}

.c-account_menu .c-account_menu__container__block__logout {
  border-radius: 50px;
  background: var(--color-_gray2);
}

.c-line-login {
  font-family: var(--font-family-main);
}
.c-line-login .line_new_ec {
  max-width: 320px;
}

.c-line-login_details {
  margin: 30px 0;
  padding: 15px;
  background: #dff0d8;
  color: #468847;
  font-family: var(--font-family-main);
  line-height: 1.8;
}
.c-line-login_details p {
  margin-block: 1em 0;
}
.c-line-login_details p + p {
  margin-block: 2em 0;
}
.c-line-login_details summary {
  padding: 15px;
  margin: -15px;
  font-weight: 500;
  cursor: pointer;
}

/* 個別ページ */
.p-shop { /* ショップページ（表） */ }
.p-shop .u-text--head {
  position: relative;
  font-size: 25px;
  line-height: 1.2;
  letter-spacing: 0.04em;
  text-align: center;
  font-family: var(--font-family-en);
}
.p-shop .u-text--head .u-text--head__sub {
  margin-top: 3px;
  padding-bottom: 9px;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.41;
  font-family: var(--font-family-main);
}
.p-shop .u-text--head::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 84px;
  height: 4px;
  background: linear-gradient(to right, var(--color-_main) calc(50% - 10px), #BCB6CE 50%, var(--color-_main2) calc(50% + 10px));
}
.p-shop .u-text--head--ja {
  padding-bottom: 10px;
  font-size: 25px;
  line-height: 1.44;
  font-weight: 500;
  font-family: var(--font-family-main);
}
.p-shop .u-text--subhead {
  font-size: 20px;
  line-height: 1.5;
  font-weight: 500;
}
.p-shop .u-text--link {
  text-decoration: underline;
  transition: 0.4s;
}
.p-shop .p-shop_header {
  margin-bottom: 60px;
}
.p-shop .p-shop_header_with_img {
  position: relative;
  height: 46.85cqw;
  max-height: 640px;
}
.p-shop .p-shop_header_with_img img, .p-shop .p-shop_header_with_img video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-shop .p-shop_header_with_img .u-text--head {
  position: absolute;
  padding-bottom: 9px;
  top: 23.42cqw;
  left: 10.46cqw;
  text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
  color: #fff;
}
.p-shop .p-shop_header_with_img .u-text--head::after {
  left: 0;
  transform: none;
}
.p-shop .c-link__container {
  margin-top: 50px;
  margin-inline: auto;
  max-width: 420px;
}

.p-shop .u-set__btn--primary, .p-shop .u-set__btn--secondary, .c-gmenu .u-set__btn--primary, .c-gmenu .u-set__btn--secondary {
  position: relative;
  display: flex;
  width: 100%;
  max-width: 420px;
  height: 58px;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.p-shop .u-set__btn--primary::after, .p-shop .u-set__btn--secondary::after, .c-gmenu .u-set__btn--primary::after, .c-gmenu .u-set__btn--secondary::after {
  content: "";
  position: absolute;
  display: grid;
  place-items: center;
  background-image: none;
  background-repeat: no-repeat;
  background-position: center;
  width: 36px;
  aspect-ratio: 1;
  left: 65px;
  transform: translateX(50%);
}
.p-shop .u-set__btn--primary span, .p-shop .u-set__btn--primary::after, .p-shop .u-set__btn--secondary span, .p-shop .u-set__btn--secondary::after, .c-gmenu .u-set__btn--primary span, .c-gmenu .u-set__btn--primary::after, .c-gmenu .u-set__btn--secondary span, .c-gmenu .u-set__btn--secondary::after {
  transition: 0.3s;
}
.p-shop .u-set__btn--primary:hover, .p-shop .u-set__btn--secondary:hover, .c-gmenu .u-set__btn--primary:hover, .c-gmenu .u-set__btn--secondary:hover {
  opacity: 1;
}
.p-shop .u-set__btn--primary:hover span, .p-shop .u-set__btn--secondary:hover span, .c-gmenu .u-set__btn--primary:hover span, .c-gmenu .u-set__btn--secondary:hover span {
  transform: scale(1.15);
}
.p-shop .u-set__btn--primary:hover::after, .p-shop .u-set__btn--secondary:hover::after, .c-gmenu .u-set__btn--primary:hover::after, .c-gmenu .u-set__btn--secondary:hover::after {
  transform: scale(1.25) translateX(14px);
}
.p-shop .u-set__btn--secondary {
  border: 1px solid var(--color-_main);
  background: #fff;
  color: var(--color-_main);
}

.p-pages {
  /* & .p-pages_content {} */
}
.p-pages .p-pages_content__inner {
  margin: 0 auto;
  max-width: 1366px;
}
.p-pages .p-pages_content__inner:has(.p-pages_content__product__container) {
  padding: 0 20px;
}
.p-pages .p-pages__text-with-img {
  display: flex;
  gap: 60px;
  /* &:nth-child(even) {
  } */
}
.p-pages .p-pages__text-with-img:nth-child(odd) {
  flex-direction: row-reverse;
}
.p-pages .p-pages__text-with-img + .p-pages__text-with-img {
  margin-top: 155px;
}
.p-pages .p-pages__text-with-img dt {
  max-width: 600px;
  width: 43.92cqw;
}
.p-pages .p-pages__text-with-img dd {
  max-width: 562px;
}
.p-pages .p-pages__text-with-img .u-text--subhead {
  border-bottom: 2px solid var(--color-_main);
  margin-bottom: 22px;
}
.p-pages .p-pages_content__product__container {
  margin: 40px auto 0;
  display: grid;
  grid-template-columns: auto auto;
  max-width: 1300px;
  width: 100%;
}
.p-pages .p-pages_content__product__container .p-pages_content__product__img {
  max-width: 640px;
  width: 46.85cqw;
  height: 100%;
  overflow: hidden;
}
.p-pages .p-pages_content__product__container .p-pages_content__product__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-pages .p-pages_content__product__container .p-pages_content__product__main {
  padding: 40px 2.92cqw;
  margin: 0 auto;
  max-width: 420px;
  box-sizing: content-box;
}
.p-pages .p-pages_content__product__container .p-pages_content__product__main .p-pages_content__product__title {
  margin: 0;
  padding: 20px;
  border-top: 1px solid var(--color-_gray);
  border-bottom: 1px solid var(--color-_gray);
  font-size: 23px;
  text-align: center;
  line-height: 1.5;
  font-family: var(--font-family-en);
}
.p-pages .p-pages_content__product__container .p-pages_content__product__main .p-pages_content__product__title .p-pages_content__product__title__sub {
  font-size: 20px;
  font-family: var(--font-family-main);
  line-height: 1.5;
}
.p-pages .p-pages_content__product__container .p-pages_content__product__main .p-pages_content__product__descri {
  margin-top: 20px;
}
.p-pages .p-pages_content__product__container .u-set__btn--primary::after {
  background-image: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/icon_cart_white.svg");
}
.p-pages .p-pages_content__product__container .u-set__btn--secondary::after {
  background-image: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/icon_mushimegane_blue.svg");
}

.p-what-is-nmn .p-what-is-nmn_lead {
  padding-block: 100px;
}
.p-what-is-nmn .p-what-is-nmn_main-content {
  padding-block: 100px;
  background: var(--color-_gray-light);
}
.p-what-is-nmn .p-what-is-nmn_main-content .p-what-is-nmn_main-content__inner {
  max-width: 1260px;
  padding-inline: 20px;
}
.p-what-is-nmn .p-what-is-nmn_product {
  padding-top: 150px;
  padding-bottom: 0;
}

.p-subscription .p-subscription_description {
  padding-block: 100px;
}
.p-subscription .p-subscription_feature {
  padding-block: 100px;
  background: var(--color-_gray-light);
}
.p-subscription .p-subscription_feature .p-subscription_feature_link {
  margin-top: 100px;
}
.p-subscription .p-subscription_link--cv::after {
  background-image: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/icon_subs_white.svg");
}

.p-news {
  padding-top: 120px !important;
  padding-bottom: 100px;
}
.p-news .p-news_body {
  margin-inline: auto;
  max-width: 720px;
  font-size: 15px;
  line-height: 2;
  color: var(--color-_text-main);
  letter-spacing: 0.04em;
}
.p-news .p-news_body a {
  color: var(--color-_main);
  text-decoration: underline;
}

.p-refcp {
  max-width: 800px;
  margin-inline: auto;
  padding-inline: 30px;
  padding-block: 120px 100px;
  box-sizing: content-box;
  color: #323232;
}
.p-refcp a {
  color: #92a8d1;
  text-decoration: underline;
}
.p-refcp .strong {
  font-weight: bold;
}
.p-refcp .p-refcp_body {
  line-height: 2.2;
}
.p-refcp .p-refcp__h2 {
  margin-top: 40px;
  margin-bottom: 20px;
  color: #92a8d1;
  font-size: 24px;
  font-weight: bold;
  border-bottom: 1px solid #a2a2a2;
}
.p-refcp .p-refcp__h3 {
  font-size: 20px;
  font-weight: bold;
}
.p-refcp .p-refcp__text {
  margin-bottom: 20px;
}
.p-refcp .p-refcp__bnr {
  text-align: center;
}
.p-refcp .p-refcp__bnr img {
  max-width: 640px;
  display: inline;
}
.p-refcp .p-refcp__dl {
  display: grid;
  grid-template-columns: auto 1fr;
  -moz-column-gap: 0.5em;
       column-gap: 0.5em;
}
.p-refcp .p-refcp__dl dt {
  font-weight: bold;
}
.p-refcp .p-refcp_step {
  display: flex;
  flex-wrap: wrap;
  margin-top: 10px;
}
.p-refcp .p-refcp_step li {
  margin-bottom: 24px;
  margin-right: 44px;
  width: calc((100% - 132px) / 3);
}
.p-refcp .p-refcp_step li .p-refcp_step__img {
  border: 3px solid #92a8d1;
  position: relative;
}
.p-refcp .p-refcp_step li .p-refcp_step__img::after {
  position: absolute;
  content: url("https://reborna.jp/cdn/shop/t/6/assets/icon_arrow_simple_black.svg");
  display: block;
  top: 50%;
  transform: translateY(-50%);
  right: -42px;
  width: 32px;
  height: 32px;
}
.p-refcp .p-refcp_step li .p-refcp_step__text {
  padding: 4px 8px 0;
  font-size: 13px;
  line-height: 1.8;
}
.p-refcp .p-refcp_step li .p-refcp_step__step_label {
  display: inline-block;
  background: #92a8d1;
  color: white;
  padding: 4px 8px;
  line-height: 1;
}
.p-refcp .p-refcp_text_ul {
  margin-bottom: 20px;
  padding-left: 16px;
}
.p-refcp .p-refcp_text_ul li {
  padding-left: 4px;
  list-style: "・";
}
.p-refcp .p-refcp_terms_ul {
  padding-left: 30px;
  font-size: 13px;
}
.p-refcp .p-refcp_terms_ul li {
  list-style: disc;
}
.p-refcp .p-refcp_terms_ul > li > ul {
  padding-left: 10px;
}
.p-refcp .p-refcp_terms_ul > li > ul li {
  padding-left: 10px;
  list-style: "・";
}
.p-refcp .p-refcp_notes {
  margin-top: 60px;
  padding: 2px 8px;
  background: #eee;
  border: 1px solid #a2a2a2;
  font-size: 13px;
  color: #a2a2a2;
  line-height: 1.8;
}

.p-home {
  font-size: 15px;
  color: var(--color-_text-main);
}
.p-home .p-home_header {
  height: 56.07cqw;
  /* max-height: 766px; */
  max-height: 100vh;
}
.p-home .p-home_header .p-home_header__scroll_guide {
  position: absolute;
  right: 30px;
  bottom: 25px;
  display: grid;
  grid-template-rows: auto auto;
  place-items: end;
  gap: 10px;
  font-family: var(--font-family-en);
  color: #fff;
  font-size: 14px;
  letter-spacing: 0.04em;
  /* & img {
    width: auto;
  } */
}
.p-home .p-home_header .p-home_header__scroll_guide_bar {
  position: relative;
  width: 12px;
  height: 142px;
}
.p-home .p-home_header .p-home_header__scroll_guide_line {
  position: absolute;
  right: 4.5px;
  width: 3px;
  height: 142px;
  background: #fff;
  border-radius: 10px;
}
.p-home .p-home_header .p-home_header__scroll_guide_circle {
  position: absolute;
  top: 0;
  right: 0;
  width: 12px;
  aspect-ratio: 1;
  background: var(--color-_main2);
  border-radius: 10px;
  transform: translateY(0);
  animation: headerScroll 3s infinite;
}
.p-home .p-home_section--gray {
  background: var(--color-_gray-light);
}
.p-home .p-home_section__inner {
  margin-inline: auto;
  padding-block: 200px;
  padding-inline: 20px;
  max-width: 1120px;
}
.p-home .p-home_infomation .p-home_information__inner {
  padding-block: 60px 0;
  text-align: center;
}
.p-home .p-home_infomation .p-home_infomation_headline {
  margin-inline: auto;
  padding: 10px 40px;
  display: inline flex;
  justify-content: center;
  flex-direction: column;
  gap: 0;
  border: 1px solid;
}
.p-home .p-home_infomation .p-home_infomation_headline a {
  text-decoration: underline;
  color: var(--color-_main);
}
.p-home .p-home_concept {
  text-align: center;
}
.p-home .p-home_concept .p-home_concept__h2 {
  margin-top: 70px;
  font-size: 30px;
  font-family: var(--font-family-main);
  font-weight: 500;
  line-height: 1.66;
  letter-spacing: 0.04em;
}
.p-home .p-home_concept .p-home_concept__p {
  margin-top: 50px;
  font-size: 15px;
  font-family: var(--font-family-main);
  font-weight: normal;
  line-height: 50px;
  letter-spacing: 0.04em;
}
.p-home .p-home_concept .p-home_concept__p--strong {
  margin-top: 15px;
  font-size: 18px;
  font-family: var(--font-family-main);
  font-weight: normal;
  line-height: 50px;
  letter-spacing: 0.04em;
}
.p-home .p-home_product .p-home_product__wrapper {
  display: grid;
  grid-template-columns: auto auto;
  gap: clamp(0px, 11.6cqw, 130px);
  margin-top: 80px;
}
.p-home .p-home_product .p-home_product__text {
  max-width: 420px;
  width: clamp(0px, 37.5cqw, 420px);
  padding-inline: clamp(0px, 1.785cqw, 20px);
}
.p-home .p-home_product .p-home_product__text .p-home_product__text_title {
  padding-block: 30px;
  border-block: 1px solid var(--color-_gray);
  font-size: 20px;
}
.p-home .p-home_product .p-home_product__text .p-home_product__text_title .p-home_product__text_title--en {
  font-family: var(--font-family-en);
}
.p-home .p-home_product .p-home_product__text .p-home_product__text_body {
  padding-top: 30px;
  font-size: 15px;
}
.p-home .p-home_product .p-home_product__text .p-home_product__text_link {
  margin-top: 30px;
}
.p-home .p-home_product .p-home_product__img {
  max-width: 530px;
  width: clamp(0px, 47.32cqw, 530px);
  /* height: 100%;
  overflow: hidden; */
}
.p-home .p-home_product .p-home_product__img img {
  box-shadow: 5px 4px 4px rgba(0, 0, 0, 0.16);
  /* width: 100%;
  height: 100%;
  object-fit: cover; */
}
.p-home .p-home_what-is-nmn {
  min-height: 760px;
  background: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/_design_renewal_test_img_bg_p-home_what-is-nmn.png") no-repeat center bottom;
}
.p-home .p-home_what-is-nmn .p-home_what-is-nmn__wrapper {
  display: grid;
  grid-template-columns: auto auto;
  gap: clamp(0px, 5.35cqw, 60px);
  margin-top: 80px;
}
.p-home .p-home_what-is-nmn .p-home_what-is-nmn__img {
  width: min(33.92cqw, 380px);
  text-align: right;
}
.p-home .p-home_what-is-nmn .p-home_what-is-nmn__img img {
  display: inline;
  width: min(17.85cqw, 200px);
}
.p-home .p-home_what-is-nmn .p-home_what-is-nmn__text {
  max-width: clamp(0px, 57.14cqw, 640px);
}
.p-home .p-home_what-is-nmn .p-home_what-is-nmn__h2 {
  font-size: 23px;
  line-height: 25px;
}
.p-home .p-home_what-is-nmn .p-home_what-is-nmn__p {
  margin-top: 50px;
  font-size: 15px;
  line-height: 1.66;
}
.p-home .p-home_what-is-nmn .p-home_what-is-nmn__link {
  margin-top: 30px;
}

.p-product {
  font-size: 15px;
  font-family: var(--font-family-main);
  color: var(--color-_text-main);
}
.p-product .p-product_content_origin {
  display: none;
}
.p-product .p-product_content {
  padding-inline: 20px;
  padding-block: 100px;
  margin-inline: auto;
  max-width: 1120px;
}
.p-product .p-product_content .p-product_content__inner {
  display: grid;
  grid-template-columns: auto auto;
  grid-template-rows: auto auto auto;
  /* column-gap: clamp(0px, calc(11.60cqw - 18px), 130px); */
  grid-template-areas: "block1 block2" "block3 block2" "block3 block4";
}
.p-product .p-product_content .p-product_content__block-1 {
  grid-area: block1;
  width: clamp(0px, 37.5cqw, 420px);
}
.p-product .p-product_content .p-product_content__block-2 {
  grid-area: block2;
  width: clamp(0px, 47.32cqw, 530px);
}
.p-product .p-product_content .p-product_content__block-3 {
  grid-area: block3;
  width: clamp(0px, 37.5cqw, 420px);
}
.p-product .p-product_content .p-product_content__block-4 {
  grid-area: block4;
  width: clamp(0px, 47.32cqw, 530px);
}
.p-product .p-product_content .p-product_content__title {
  grid-area: title;
  font-size: 20px;
  font-family: var(--font-family-en);
  font-weight: normal;
  letter-spacing: 0.04em;
  line-height: 1.2;
}
.p-product .p-product_content .p-product_content__title--secondary {
  grid-area: title--secondary;
  font-size: 15px;
  font-family: var(--font-family-main);
  font-weight: 500;
  line-height: 1.66;
}
.p-product .p-product_content .p-product_content__free-text-1 {
  grid-area: free-text-1;
  margin-top: 30px;
  font-size: 15px;
  font-family: var(--font-family-main);
  font-weight: normal;
  line-height: 1.66;
}
.p-product .p-product_content .p-product_content__thumbnail {
  grid-area: thumbnail;
}
.p-product .p-product_content .p-product_content__subs {
  grid-area: subs;
  margin-top: 30px;
}
.p-product .p-product_content .p-product_content__conversion {
  grid-area: conversion;
  margin-top: 30px;
}
.p-product .p-product_content .p-product_content__conversion .u-set__btn--primary::after {
  left: 35px;
  background-image: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/icon_cart_white.svg");
}
.p-product .p-product_content .p-product_content__conversion .u-set__btn--secondary {
  margin-top: 30px;
}
.p-product .p-product_content .p-product_content__conversion .u-set__btn--secondary::after {
  left: 35px;
  background-image: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/icon_subs_blue.svg");
}
.p-product .p-product_content .p-product_content__warning-label {
  grid-area: warning-label;
  margin-top: 83px;
}
.p-product .p-product_content .p-product_content__warning-label .p-product_content__warning-label--head {
  padding-left: 1.6em;
  text-indent: -1.6em;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4;
}
.p-product .p-product_content .p-product_content__warning-label .p-product_content__warning-label--head::before {
  content: "●";
  color: var(--color-_gray-light);
  font-size: 13px;
  margin-right: 10px;
}
.p-product .p-product_content .p-product_content__warning-label .p-product_content__warning-label--body {
  margin-top: 5px;
  font-size: 15px;
  line-height: 1.66;
}
.p-product .p-product_content .p-product_content__warning-label .p-product_content__warning-label--body + .p-product_content__warning-label--head {
  margin-top: 30px;
}
.p-product .p-product_reason {
  padding-block: 100px;
  background: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/_design_renewal_test_img_bg_p-home_what-is-nmn.png") no-repeat center bottom/cover;
}
.p-product .p-product_reason .p-product_reason_items {
  margin-top: 90px;
  padding-inline: 20px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: auto auto;
  gap: 80px 20px;
  max-width: 1340px;
}
.p-product .p-product_reason .p-product_reason_items__item {
  display: grid;
  grid-template-columns: clamp(100px, 23.13cqw, 310px) auto;
  gap: 15px;
  max-width: 640px;
}
.p-product .p-product_reason .p-product_reason_items__item_text--title {
  font-size: 18px;
  line-height: 1.5;
  font-family: var(--font-family-main);
  font-weight: 500;
}
.p-product .p-product_reason .p-product_reason_items__item_text--body {
  margin-top: 10px;
  font-size: 15px;
  line-height: 1.66;
  font-family: var(--font-family-main);
  font-weight: normal;
}
.p-product .p-product_compensate {
  padding-block: 100px;
  background: var(--color-_gray-light);
}
.p-product .p-product_compensate .p-product_compensate__inner {
  margin-inline: auto;
  padding-inline: 20px;
  max-width: 1120px;
  display: grid;
  grid-template-columns: auto auto;
  gap: 60px;
}
.p-product .p-product_compensate .p-product_compensate__img {
  max-width: 490px;
}
.p-product .p-product_compensate .p-product_compensate__text {
  max-width: 530px;
  font-size: 15px;
  font-family: var(--font-family-main);
  line-height: 1.66;
}
.p-product .p-product_compensate .p-product_compensate__head {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.p-product .p-product_compensate .p-product_compensate__descri {
  margin-top: 30px;
  letter-spacing: 0.04em;
}
.p-product .p-product_compensate .p-product_compensate__effect {
  margin-top: 30px;
}
.p-product .p-product_compensate .p-product_compensate__effect--body {
  position: relative;
  margin-top: 30px;
  padding: 20px 15px 10px;
  border: 1px solid #707070;
}
.p-product .p-product_compensate .p-product_compensate__effect--body:first-child {
  margin-top: 50px;
}
.p-product .p-product_compensate .p-product_compensate__effect--head {
  position: absolute;
  top: -15px;
  left: 50%;
  transform: translateX(-50%);
  width: 200px;
  height: 30px;
  background: var(--color-_gray-light);
  font-size: 14px;
  font-weight: bold;
  line-height: 28px;
  text-align: center;
}
.p-product .p-product_review {
  padding-block: 150px;
  padding-bottom: 0;
}
.p-product .p-product_review .p-product_review__inner {
  margin-inline: auto;
  margin-top: 90px;
  padding-inline: 20px;
  max-width: 1120px;
  display: grid;
  grid-template-areas: "block1 block2" "block2-2 block2-2" "block3 block3" "all_btn all_btn";
}
.p-product .p-product_review .p-product_review__descri {
  grid-area: block1;
  line-height: 1.8;
}
.p-product .p-product_review .p-product_review__descri .p-product_review__descri_img {
  top: 5px;
  position: relative;
}
.p-product .p-product_review .p-product_review__descri .p-product_review__descri_img img {
  display: inline;
  width: auto;
}
.p-product .p-product_review .p-product_review__post_wrapper {
  margin-left: auto;
  grid-area: block2;
  width: 420px;
}
.p-product .p-product_review .p-product_review__entry_content {
  margin-top: 0;
  padding-bottom: 0;
  grid-area: block2-2;
}
.p-product .p-product_review .p-product_review__entry_content .p-review__inner__entry__content__title {
  font-size: 20px;
}
.p-product .p-product_review .p-product_review__entry_content .p-review__inner__entry__content__title::after {
  display: none;
}
.p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=text], .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=email], .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=tel], .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=number], .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=password], .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td textarea, .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=text], .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=email], .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=tel], .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=number], .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=password], .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td textarea {
  background: var(--color-_gray-light);
  border: 0.5px solid var(--color-_gray2);
  color: var(--color-_text-main);
}
.p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=text]::-moz-placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=email]::-moz-placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=tel]::-moz-placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=number]::-moz-placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=password]::-moz-placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td textarea::-moz-placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=text]::-moz-placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=email]::-moz-placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=tel]::-moz-placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=number]::-moz-placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=password]::-moz-placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td textarea::-moz-placeholder {
  color: var(--color-_gray_placeholder);
  opacity: 1;
}
.p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=text]::placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=email]::placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=tel]::placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=number]::placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td input[type=password]::placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table > tbody > tr > td textarea::placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=text]::placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=email]::placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=tel]::placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=number]::placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td input[type=password]::placeholder, .p-product .p-product_review .p-product_review__entry_content .c-form_table--confirm > tbody > tr > td textarea::placeholder {
  color: var(--color-_gray_placeholder);
  opacity: 1;
}
.p-product .p-product_review .p-product_review__entry_content .c-review_star__item__icon {
  color: var(--color-_main2);
}
.p-product .p-product_review .p-product_review__entry button::after {
  left: calc(-25px + 17%);
  background-image: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/icon_pen_white.svg");
}
.p-product .p-product_review .p-product_review__view {
  grid-area: block3;
  margin-top: 70px;
}
.p-product .p-product_review .p-product_review__view .p-review__inner__list__item:first-child {
  border-top: 0;
}
.p-product .p-product_review .p-review_item {
  padding-block: 40px;
  /* border-block: 1px solid #b9b9b9; */
  border-bottom: 1px solid #b9b9b9;
  /* & + .p-review_item {
    border-top: none;
  } */
}
.p-product .p-product_review .p-review_item:first-child {
  padding-top: 0;
}
.p-product .p-product_review .p-review_item .p-review_item__line2 {
  margin-top: 15px;
  display: flex;
}
.p-product .p-product_review .p-review_item .p-review_item__line3 {
  margin-top: 15px;
}
.p-product .p-product_review .p-review_item .p-review_item__name {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 12px;
  letter-spacing: 0.04em;
  line-height: 35px;
}
.p-product .p-product_review .p-review_item .p-review_item__name img {
  width: auto;
}
.p-product .p-product_review .p-review_item .p-review_item__star {
  color: var(--color-_main2);
}
.p-product .p-product_review .p-review_item .p-review_item__title {
  margin-left: 30px;
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0.04em;
  line-height: 1.4;
}
.p-product .p-product_review .p-review_item .p-review_item__date {
  margin-left: auto;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.416;
  letter-spacing: 0.04em;
}
.p-product .p-product_review .p-review_item .p-review_item__text {
  font-size: 15px;
  line-height: 1.66;
}
.p-product .p-product_review .p-review__inner__all__btn {
  grid-area: all_btn;
}
.p-product .p-product_review .u-color__text--alert {
  color: var(--color-_main2_2);
}

.p-faq {
  padding-top: 120px !important;
  padding-bottom: 100px;
}
.p-faq .u-text--subhead {
  font-size: 23px;
  font-family: var(--font-family-en);
}
.p-faq .p-faq__link {
  margin-top: 60px;
  text-align: center;
}
.p-faq .p-faq_content {
  margin-top: 60px;
}
.p-faq .p-faq__inner__list {
  border-top: none;
}
.p-faq .p-faq__inner__list__item {
  border-color: #707070;
}
.p-faq .p-faq__inner__list__item__question {
  padding-left: 60px;
}
.p-faq .p-faq__inner__list__item__question span {
  top: 18px;
}
.p-faq .p-faq__inner__list__item__answer {
  padding-left: 60px;
}
.p-faq .p-faq__inner__list__item__answer span {
  top: -2px;
}
.p-faq .p-faq__inner__list__item__answer a {
  text-decoration: underline;
  transition: 0.4s;
  color: var(--color-_main);
}
.p-faq .p-faq__inner__list__item__answer ol {
  padding: 12px 16px 12px 28px;
  border: 1px solid var(--color-_gray2);
  text-align: justify;
}
.p-faq .p-faq__inner__list__item__answer ol li {
  list-style: auto;
  padding-left: 4px;
}
.p-faq .p-faq__inner__list__item__answer ol li:nth-child(n+2) {
  margin-top: 12px;
}

.p-contact {
  padding-top: 120px !important;
}
.p-contact .u-text--subhead {
  font-weight: normal;
}
.p-contact .p-contact__head__notes {
  margin-top: 0;
}
.p-contact .u-color__text--alert {
  color: var(--color-_main2_2);
}
.p-contact .c-form_table > tbody > tr > td input[type=text], .p-contact .c-form_table > tbody > tr > td input[type=email], .p-contact .c-form_table > tbody > tr > td input[type=tel], .p-contact .c-form_table > tbody > tr > td input[type=number], .p-contact .c-form_table > tbody > tr > td input[type=password], .p-contact .c-form_table > tbody > tr > td textarea, .p-contact .c-form_table--confirm > tbody > tr > td input[type=text], .p-contact .c-form_table--confirm > tbody > tr > td input[type=email], .p-contact .c-form_table--confirm > tbody > tr > td input[type=tel], .p-contact .c-form_table--confirm > tbody > tr > td input[type=number], .p-contact .c-form_table--confirm > tbody > tr > td input[type=password], .p-contact .c-form_table--confirm > tbody > tr > td textarea {
  background: var(--color-_gray-light);
  border: 0.5px solid var(--color-_gray2);
  color: var(--color-_text-main);
}
.p-contact .c-form_table > tbody > tr > td input[type=text]::-moz-placeholder, .p-contact .c-form_table > tbody > tr > td input[type=email]::-moz-placeholder, .p-contact .c-form_table > tbody > tr > td input[type=tel]::-moz-placeholder, .p-contact .c-form_table > tbody > tr > td input[type=number]::-moz-placeholder, .p-contact .c-form_table > tbody > tr > td input[type=password]::-moz-placeholder, .p-contact .c-form_table > tbody > tr > td textarea::-moz-placeholder, .p-contact .c-form_table--confirm > tbody > tr > td input[type=text]::-moz-placeholder, .p-contact .c-form_table--confirm > tbody > tr > td input[type=email]::-moz-placeholder, .p-contact .c-form_table--confirm > tbody > tr > td input[type=tel]::-moz-placeholder, .p-contact .c-form_table--confirm > tbody > tr > td input[type=number]::-moz-placeholder, .p-contact .c-form_table--confirm > tbody > tr > td input[type=password]::-moz-placeholder, .p-contact .c-form_table--confirm > tbody > tr > td textarea::-moz-placeholder {
  color: var(--color-_gray_placeholder);
  opacity: 1;
}
.p-contact .c-form_table > tbody > tr > td input[type=text]::placeholder, .p-contact .c-form_table > tbody > tr > td input[type=email]::placeholder, .p-contact .c-form_table > tbody > tr > td input[type=tel]::placeholder, .p-contact .c-form_table > tbody > tr > td input[type=number]::placeholder, .p-contact .c-form_table > tbody > tr > td input[type=password]::placeholder, .p-contact .c-form_table > tbody > tr > td textarea::placeholder, .p-contact .c-form_table--confirm > tbody > tr > td input[type=text]::placeholder, .p-contact .c-form_table--confirm > tbody > tr > td input[type=email]::placeholder, .p-contact .c-form_table--confirm > tbody > tr > td input[type=tel]::placeholder, .p-contact .c-form_table--confirm > tbody > tr > td input[type=number]::placeholder, .p-contact .c-form_table--confirm > tbody > tr > td input[type=password]::placeholder, .p-contact .c-form_table--confirm > tbody > tr > td textarea::placeholder {
  color: var(--color-_gray_placeholder);
  opacity: 1;
}
.p-contact .c-form_table__checkbox input {
  background: var(--color-_gray-light);
  border: 1px solid var(--color-_gray);
}

.p-customer_term {
  padding-top: 120px !important;
}

.p-privacy {
  padding-top: 120px !important;
}

.p-law_info {
  padding-top: 120px !important;
}

.p-login .p-login__inner {
  justify-content: center;
}
.p-login .p-login__inner__login__bottom__submit {
  border-radius: 50px;
  font-size: 15px;
  box-shadow: 2px 5px 6px rgba(0, 0, 0, 0.2);
}
.p-login .c-form_table > tbody > tr, .p-login .c-form_table--confirm > tbody > tr {
  display: grid;
}
.p-login .c-form_table > tbody > tr > th, .p-login .c-form_table--confirm > tbody > tr > th {
  padding-block: 0;
}
.p-login .c-form_table > tbody > tr > td, .p-login .c-form_table--confirm > tbody > tr > td {
  padding-top: 0;
  width: 100%;
}
.p-login .line_new_ec {
  width: unset;
}

.page_mypage .p-account__inner__content__title {
  margin-top: 0;
}

.p-account .p-mypage__block__subscription {
  margin-top: 20px;
}
.p-account .p-mypage__block__subscription__item {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto 1fr auto;
  gap: 12px;
  grid-template-areas: "date status" "order status" "order action";
  align-items: start;
  background: var(--color-_second);
  border-radius: 6px;
}
.p-account .p-mypage__block__subscription__item__date {
  grid-area: date;
  margin-right: 0;
}
.p-account .p-mypage__block__subscription__item__order {
  grid-area: order;
  display: grid;
  gap: 20px;
}
.p-account .p-mypage__block__subscription__item__order .order_product {
  display: grid;
  grid-template-columns: 120px 1fr;
  grid-template-rows: 1fr auto;
  gap: 20px;
  grid-template-areas: "img info" "img total";
}
.p-account .p-mypage__block__subscription__item__order .order_product .order_product_img {
  grid-area: img;
  width: 120px;
  background: #fff;
  border-radius: 4px;
}
.p-account .p-mypage__block__subscription__item__order .order_product .order_product_info {
  grid-area: info;
}
.p-account .p-mypage__block__subscription__item__order .order_product .order_product_info_total {
  grid-area: total;
}
.p-account .p-mypage__block__subscription__item__status {
  grid-area: status;
}
.p-account .p-mypage__block__subscription__item__action {
  grid-area: action;
  justify-self: end;
}
.p-account .p-mypage__block__subscription__item__btn {
  padding: 0 24px;
  border-radius: 50px;
}
.p-account .p-mypage__block__history__item {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto 1fr auto;
  gap: 12px;
  grid-template-areas: "date status" "order status" "order action";
  align-items: start;
  padding: 20px;
  background: #fff;
  border: 2px solid var(--color-_second);
  border-radius: 6px;
}
.p-account .p-mypage__block__history__item:not(:first-child) {
  margin-top: 10px;
}
.p-account .p-mypage__block__history__item__date {
  grid-area: date;
  margin-right: 0;
}
.p-account .p-mypage__block__history__item__order {
  grid-area: order;
  display: grid;
  gap: 20px;
}
.p-account .p-mypage__block__history__item__order .order_product {
  display: grid;
  grid-template-columns: 120px 1fr;
  gap: 20px;
}
.p-account .p-mypage__block__history__item__order .order_product .order_product_img {
  width: 120px;
  background: #fff;
  border-radius: 4px;
}
.p-account .p-mypage__block__history__item__status {
  grid-area: status;
}
.p-account .p-mypage__block__history__item__action {
  grid-area: action;
  justify-self: end;
}
.p-account .p-mypage__block__history__item__btn {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 24px;
  width: 100%;
  max-width: 240px;
  height: 40px;
  border-radius: 50px;
  transition: 0.4s;
}
.p-account .p-mypage__block__history__item__btn:hover {
  opacity: 0.4;
}
.p-account .p-subscription_detail__block__wrapper {
  display: grid;
  grid-template-columns: auto auto;
  grid-template-rows: auto auto;
  gap: 20px;
  grid-template-areas: "products products" "detail billing";
}
.p-account .p-subscription_detail__block__wrapper .p-subscription_detail__block__products {
  grid-area: products;
  width: auto;
}
.p-account .p-subscription_detail__block__wrapper .c-billing_list {
  grid-area: billing;
}
.p-account .p-subscription_detail__block__wrapper .p-subscription_detail__block__info {
  grid-area: detail;
}
.p-account .p-subscription_detail__subinfo__block {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto 1fr;
  gap: 20px;
  grid-template-areas: "title navigation" "table table";
  align-items: start;
  margin-bottom: 40px;
}
.p-account .p-subscription_detail__subinfo__block__title {
  grid-area: title;
}
.p-account .p-subscription_detail__subinfo__block__navigation {
  grid-area: navigation;
  justify-self: end;
}
.p-account .p-subscription_detail__subinfo__block__btn {
  min-width: unset;
}
.p-account .p-subscription_detail__subinfo__block__table {
  grid-area: table;
}
.p-account .p-subscription_detail__subinfo__block_with_third_row {
  grid-template-rows: auto 1fr auto;
  grid-template-areas: "title navigation" "table table" "third_row third_row";
}
.p-account .p-subscription_detail__subinfo__block__third_row {
  grid-area: third_row;
  text-align: right;
}
.p-account .p-subscription_detail__management {
  display: flex;
  gap: 10px;
}
.p-account .p-subscription_edit__block {
  margin-bottom: 60px;
  padding: 0;
  border: none;
}
.p-account .p-subscription_edit__block .p-account__inner__content__form {
  margin-top: 10px;
}
.p-account .p-subscription_edit__block__products {
  margin-top: 10px;
}
.p-account .p-history_detail__block__wrapper {
  display: grid;
  grid-template-columns: auto auto;
  grid-template-rows: auto auto;
  gap: 20px;
  grid-template-areas: "products products" "detail billing";
}
.p-account .p-history_detail__block__wrapper .p-history_detail__block__products {
  grid-area: products;
  width: auto;
}
.p-account .p-history_detail__block__wrapper .c-billing_list {
  grid-area: billing;
}
.p-account .p-history_detail__block__wrapper .p-history_detail__block__info {
  grid-area: detail;
}
.p-account .p-history_detail__subinfo__block {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto 1fr;
  gap: 20px;
  grid-template-areas: "title navigation" "table table";
  align-items: start;
  margin-bottom: 40px;
}
.p-account .p-history_detail__subinfo__block__title {
  grid-area: title;
}
.p-account .p-history_detail__subinfo__block__navigation {
  grid-area: navigation;
  justify-self: end;
}
.p-account .p-history_detail__subinfo__block__btn {
  min-width: unset;
}
.p-account .p-history_detail__subinfo__block__table {
  grid-area: table;
}
.p-account .p-history_detail__management {
  display: flex;
  gap: 10px;
}
.p-account .p-history_edit__block {
  margin-bottom: 60px;
  padding: 0;
  border: none;
}
.p-account .p-history_edit__block .p-account__inner__content__form {
  margin-top: 10px;
}
.p-account .p-history_edit__block__products {
  margin-top: 10px;
}
.p-account .p-calendar__backlink {
  margin-right: 20px;
}

.p-account {
  /* & .u-text--head {
    font-family: var(--font-family-main);
    &::after {
      display: none;
    }
  } */
}
.p-account .p-payment_list__add__btn {
  border-radius: 50px;
}

.p-account__inner__content__form__bottom {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-areas: "alert back commit";
  justify-items: end;
  align-items: center;
  gap: 20px;
  margin-top: 20px;
}
.p-account__inner__content__form__bottom [name=commit], .p-account__inner__content__form__bottom .u-set__btn--primary, .p-account__inner__content__form__bottom .u-set__btn--secondary, .p-account__inner__content__form__bottom .u-set__btn--alert {
  grid-area: commit;
}
.p-account__inner__content__form__bottom .p-account__inner__content__form__bottom__link {
  grid-area: back;
  margin: 0;
}
.p-account__inner__content__form__bottom .p-account__inner__content__form__bottom__link--deletebtn {
  grid-area: alert;
  margin: 0;
}

.p-account__inner__content__form__bottom__btn {
  display: flex;
  max-width: 280px;
  width: 100%;
}
.p-account__inner__content__form__bottom__btn.u-set__btn--primary {
  grid-area: commit;
}
.p-account__inner__content__form__bottom__btn.u-set__btn--alert {
  grid-area: alert;
}

.u-table__border__gray {
  border-color: var(--color-_gray);
  border-radius: 6px;
  border-collapse: separate;
  overflow: hidden;
  border-width: 2px;
}
.u-table__border__gray tr th, .u-table__border__gray tr td {
  border-bottom: 1px solid var(--color-_gray);
}
.u-table__border__gray tr:last-child th, .u-table__border__gray tr:last-child td {
  border-bottom: none;
}

.u-table__border__gray__vertical > tbody > tr > th, .u-table__border__gray__vertical > tbody > tr > td {
  padding: 10px 14px;
}

.u-text--small {
  font-size: 12px;
}

@media screen and (min-width: 1024px) {
  .c-cart_item {
    padding-bottom: 20px;
  }
}
@media screen and (max-width: 719px) { /* スマホ */
  /* レイアウト */
  .l-container:has(.p-account), .l-container:has(.p-login) {
    padding-top: 80px !important;
  }
  .l-header .l-header__inner {
    padding-inline: 33px;
    height: 60px !important;
    min-height: unset !important;
  }
  .l-header .l-header__right_chunk {
    display: none;
  }
  .l-header .l-header__right_chunk--functions {
    display: none;
  }
  .l-header .l-header__right_chunk--line {
    display: none;
  }
  .l-header__inner__block__item {
    margin-right: 20px;
  }
  .l-header__inner__block__item--menu {
    display: block;
  }
  .l-main__description {
    padding-inline: 33px;
  }
  .l-main__description .u-text--body {
    font-size: 14px;
    line-height: 30px;
  }
  .l-main__description .u-text--large {
    font-size: 15px;
  }
  .c-gmenu {
    color: var(--color-_gray);
    display: block;
  }
  .c-gmenu .c-gmenu__container {
    width: 100%;
  }
  .c-gmenu .c-gmenu__container__logo {
    position: absolute;
    top: 10px;
    left: 33px;
  }
  .c-gmenu .c-gmenu__container__inner {
    padding-inline: 33px;
    padding-block: 100px;
  }
  .c-gmenu .c-gmenu_login_btn--login a::after {
    background-image: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/icon_mypage_notlogin_white.svg");
  }
  .c-gmenu .c-gmenu_login_btn--mypage a::after {
    background-image: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/icon_mypage_islogin_white.svg");
  }
  .c-gmenu .c-gmenu__container__close {
    position: absolute;
    top: 10px;
    right: 33px;
    display: block;
    width: 42px;
    height: 42px;
    background: var(--color-_gray2);
    border-radius: 50px;
  }
  .c-gmenu .c-gmenu__container__close span {
    position: absolute;
    top: 21px;
    left: 10px;
    display: block;
    width: 22px;
    height: 1px;
    background: #fff;
  }
  .c-gmenu .c-gmenu__container__close span:nth-child(1) {
    transform: rotate(-33deg);
  }
  .c-gmenu .c-gmenu__container__close span:nth-child(2) {
    display: none;
  }
  .c-gmenu .c-gmenu__container__close span:nth-child(3) {
    transform: rotate(33deg);
  }
  .c-gmenu .c-gmenu_shop_menu, .c-gmenu .c-gmenu_shop_menu_in_mypage {
    margin-top: 20px;
  }
  .c-gmenu .c-gmenu_shop_menu .c-gmenu_shop_menu__link, .c-gmenu .c-gmenu_shop_menu_in_mypage .c-gmenu_shop_menu__link {
    padding-block: 15px;
    display: block;
    border-bottom: 1px solid var(--color-_gray-light);
    font-size: 18px;
    font-family: var(--font-family-en);
    line-height: 1.2;
  }
  .c-gmenu .c-gmenu_shop_menu .c-gmenu_shop_menu__link span, .c-gmenu .c-gmenu_shop_menu_in_mypage .c-gmenu_shop_menu__link span {
    margin-left: 10px;
    font-size: 10px;
    font-family: var(--font-family-main);
  }
  .c-gmenu .c-gmenu_shop_menu_in_mypage {
    margin-top: 40px;
  }
  .c-gmenu .c-gmenu_mypage-menu .c-gmenu_mypage-menu__li_ul {
    padding-inline: 15px;
  }
  .c-gmenu .c-gmenu_mypage-menu .c-gmenu_mypage-menu__li_ul_li {
    font-size: 15px;
  }
  .c-gmenu .c-gmenu_mypage-menu .c-gmenu_mypage-menu__li_ul_li:not(:last-child) {
    margin-bottom: 15px;
  }
  .c-gmenu .c-gmenu_mypage-menu .c-gmenu_mypage-menu__li_ul_li_a {
    font-size: 15px;
  }
  .c-gmenu .c-gmenu_logout .c-gmenu_logout__btn {
    margin-block: 20px;
  }
  .c-gmenu .c-gmenu_logout .c-account__survey_link {
    margin-top: 20px;
  }
  .c-gmenu .c-gmenu_footer {
    margin-top: 40px;
  }
  .c-gmenu .c-gmenu_footer__line_link {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 50px;
    /* background: var(--color-_gray2); */
    background: var(--color-_line);
    border-radius: 50px;
    font-size: 14px;
    font-family: var(--font-family-main);
    font-weight: 500;
    letter-spacing: 0.04em;
    color: #fff;
  }
  .c-gmenu .c-gmenu_footer__line_link::after {
    content: "";
    position: absolute;
    display: grid;
    place-items: center;
    /* background-image: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/icon_gmenu_line_white.svg"); */
    background-image: url("https://d2w53g1q050m78.cloudfront.net/lpthreeninesjp/uploads/img/icon_gmenu_line_white_green.svg");
    background-repeat: no-repeat;
    background-position: center;
    width: 36px;
    aspect-ratio: 1;
    left: 20px;
    transform: translateX(50%);
  }
  .c-gmenu .c-gmenu_footer__misc_links {
    margin-top: 20px;
  }
  .c-gmenu .c-gmenu_footer__misc_links a {
    display: inline-block;
    margin-top: 20px;
    font-size: 12px;
    letter-spacing: 0.04em;
    text-decoration: none;
  }
  .c-gmenu .c-gmenu_footer__misc_links a:first-child {
    margin-top: 0;
  }
  .c-gmenu .c-gmenu_footer__sns_links {
    margin-top: 30px;
    display: flex;
    justify-content: center;
    gap: 16px;
  }
  .c-gmenu .c-gmenu_footer__copyright {
    margin-top: 20px;
    display: block;
    font-size: 12px;
    text-align: center;
    font-family: var(--font-family-en);
    letter-spacing: 0.04em;
  }
  .l-footer {
    text-align: left;
  }
  .l-footer .l-footer__inner {
    padding-block: 50px;
    padding-inline: 33px;
  }
  .l-footer .l-footer__menu {
    display: none;
  }
  .l-footer .l-footer__info__store {
    padding-top: 0;
  }
  .l-footer .l-footer__info__store__logo {
    margin-inline: unset;
    margin-bottom: 30px;
    max-width: unset;
    width: 58px;
  }
  .l-footer .l-footer__info__store__sns {
    margin-bottom: 20px;
    gap: 16px;
  }
  .l-footer .l-footer__info__store__sns__item {
    width: 41px;
    height: 41px;
  }
  .l-footer__info__store__logo {
    margin: 0 auto;
  }
  /* ユーティリティ */
  .control-alert, .alert, .alert-danger {
    margin: 20px 0;
  }
  /* コンポーネント */
  .c-account_menu__btn { /* スマホではアカウントメニューをハンバーガーで出すのでこれは非表示 */
    display: none;
  }
  .c-sp_menu_btn {
    position: relative;
    display: block;
    width: 42px;
    height: 42px;
    background: var(--color-_gray2);
    border-radius: 50px;
  }
  .c-sp_menu_btn span {
    position: absolute;
    left: 10px;
    display: block;
    width: 22px;
    height: 1px;
    background: #fff;
  }
  .c-sp_menu_btn span:nth-child(1) {
    top: 16px;
  }
  .c-sp_menu_btn span:nth-child(2) {
    top: 21px;
  }
  .c-sp_menu_btn span:nth-child(3) {
    top: 26px;
  }
  main.l-container > .l-container__row {
    margin-top: 20px;
  }
  .c-footer_menu {
    padding: 0 10px 32px;
    margin-bottom: 32px;
  }
  .c-shop_bottom_nav { /* shopページの下の方にありがちなリンクブロック */
    flex-direction: column;
    gap: 100px;
    margin-top: 0;
    padding-top: 150px;
    padding-bottom: 100px;
    padding-inline: 33px;
  }
  .c-shop_bottom_nav .c-shop_bottom_nav__img {
    margin-top: 30px;
  }
  .c-subs_item {
    flex-direction: column;
  }
  .c-subs_item .c-subs_item__title {
    padding-bottom: 4px;
    font-size: 14px;
  }
  .c-subs_item .c-subs_item__body {
    width: auto;
  }
  .c-subs_item__price {
    margin-top: 30px;
    flex-direction: column;
  }
  .c-subs_item__price .c-subs_item__price_left {
    padding-block: 11px;
    width: auto;
  }
  .c-subs_item__price .c-subs_item__price_body {
    width: auto;
    display: grid;
    place-content: center;
  }
  .c-subs_feature {
    margin-top: 50px;
    padding-inline: 0;
    display: block;
  }
  .c-subs_feature .c-subs_feature__item {
    padding-inline: 33px;
    grid-template-columns: auto auto;
    gap: 10px;
    width: auto;
  }
  .c-subs_feature .c-subs_feature__item:nth-child(odd) {
    background: var(--color-_gray-light);
  }
  .c-subs_feature .c-subs_feature__icon .c-subs_feature__icon_frame {
    width: 74px;
  }
  .c-subs_feature .c-subs_feature__text {
    padding-block: 20px 25px;
  }
  .c-subs_feature .c-subs_feature__title {
    font-size: 15px;
  }
  .c-subs_feature .c-subs_feature__desc {
    font-size: 14px;
  }
  .c-cart_item {
    grid-template-columns: 80px 1fr;
    grid-template-areas: "img info" "management management";
  }
  .c-account_table {
    font-weight: bold;
  }
  .c-account_table > tbody > tr > td:before {
    font-weight: normal;
    margin-right: 10px;
  }
  .c-account_table > tbody > tr > td:has(.c-form_table__checkbox):before {
    display: none;
  }
  .u-table__border__gray__vertical > tbody > tr {
    border: none;
  }
  .u-table__border__gray__vertical > tbody > tr:first-child {
    display: unset;
  }
  .u-table__border__gray__vertical > tbody > tr:first-child > td {
    padding-top: 15px !important;
  }
  .u-table__border__gray__vertical > tbody > tr:last-child > td {
    padding-bottom: 15px !important;
  }
  .u-table__border__gray__vertical > tbody > tr > th:first-child {
    display: none;
  }
  .u-table__border__gray__vertical > tbody > tr > td {
    border: none;
    padding: 6px 15px !important;
  }
  /* 個別ページ */
  .p-shop .u-set__btn--primary, .p-shop .u-set__btn--secondary, .c-gmenu .u-set__btn--primary, .c-gmenu .u-set__btn--secondary {
    display: flex;
    width: 100%;
    max-width: 420px;
    height: 50px;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.04em;
  }
  .p-shop .u-set__btn--primary::after, .p-shop .u-set__btn--secondary::after, .c-gmenu .u-set__btn--primary::after, .c-gmenu .u-set__btn--secondary::after {
    left: 20px;
    scale: 0.75;
  }
  .p-shop .u-text--head {
    font-size: 18px;
  }
  .p-shop .u-text--head .u-text--head__sub {
    margin-top: -3px;
    padding-bottom: 4px;
    font-size: 10px;
  }
  .p-shop .u-text--head::after {
    width: 60px;
    height: 2px;
  }
  .p-shop .u-text--head--ja {
    padding-bottom: 6px;
  }
  .p-shop .p-shop_header_with_img {
    height: 127.22cqw;
  }
  .p-shop .p-shop_header_with_img .u-text--head {
    top: unset;
    bottom: 10.94cqw;
    left: 8.39cqw;
    padding-bottom: 3px;
  }
  .p-pages .p-pages_content__inner:has(.p-pages_content__product__container) {
    padding-inline: 17px;
  }
  .p-pages .p-pages__text-with-img {
    gap: 10px;
  }
  .p-pages .p-pages__text-with-img:nth-child(n) {
    flex-direction: column-reverse;
    margin-inline: 0;
  }
  .p-pages .p-pages__text-with-img + .p-pages__text-with-img {
    margin-top: 100px;
  }
  .p-pages .p-pages__text-with-img dt {
    max-width: unset;
    width: 100%;
    padding-inline: 33px;
  }
  .p-pages .p-pages__text-with-img dd {
    max-width: unset;
    width: 100%;
  }
  .p-pages .p-pages__text-with-img .u-text--subhead {
    margin-bottom: 10px;
    font-size: 15px;
  }
  .p-pages .p-pages__text-with-img .u-text--body {
    font-size: 14px;
    line-height: 25px;
  }
  .p-pages .p-pages_content__product__container {
    margin-top: 50px;
    padding: 16px;
    padding-bottom: 0;
    display: block;
  }
  .p-pages .p-pages_content__product__container .p-pages_content__product__img {
    width: 100%;
  }
  .p-pages .p-pages_content__product__container .p-pages_content__product__main {
    padding-block: 20px 50px;
    padding-inline: 0;
  }
  .p-pages .p-pages_content__product__container .p-pages_content__product__main .p-pages_content__product__title {
    padding: 10px 0;
    text-align: left;
    font-size: 18px;
  }
  .p-pages .p-pages_content__product__container .p-pages_content__product__main .p-pages_content__product__title .p-pages_content__product__title__sub {
    font-size: 18px;
  }
  .p-pages .p-pages_content__product__container .p-pages_content__product__main .p-pages_content__product__descri {
    margin-top: 10px;
  }
  .p-pages .p-pages_content__product__container .u-set__btn--primary {
    margin-top: 50px;
  }
  .p-what-is-nmn .p-what-is-nmn_main-content .p-what-is-nmn_main-content__inner {
    padding-inline: 0;
  }
  .p-what-is-nmn .p-what-is-nmn_product {
    padding-top: 100px;
  }
  .p-subscription .p-subscription_description {
    padding: 74px 33px 100px;
  }
  .p-subscription .p-subscription_feature {
    padding-block: 0;
    background: #fff;
  }
  .p-subscription .p-subscription_feature .p-subscription_feature_link {
    margin-top: 50px;
    padding-inline: 33px;
  }
  .p-subscription .c-shop_bottom_nav {
    padding-top: 100px;
  }
  .p-refcp {
    font-size: 15px;
  }
  .p-refcp .p-refcp__h2 {
    font-size: 20px;
  }
  .p-refcp .p-refcp__h3 {
    font-size: 18px;
  }
  .p-refcp .p-refcp_step {
    justify-content: space-between;
  }
  .p-refcp .p-refcp_step li {
    position: relative;
    margin-right: 0;
    margin-bottom: 0;
    padding-bottom: 50px;
    display: flex;
    width: 100%;
  }
  .p-refcp .p-refcp_step li .p-refcp_step__img {
    width: 60%;
    flex-shrink: 0;
  }
  .p-refcp .p-refcp_step li .p-refcp_step__img::after {
    display: none;
  }
  .p-refcp .p-refcp_step li .p-refcp_step__text {
    padding-top: 0;
  }
  .p-refcp .p-refcp_step li::after {
    position: absolute;
    content: url("https://reborna.jp/cdn/shop/t/6/assets/icon_arrow_simple_black.svg");
    display: block;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
    width: 48px;
    height: 48px;
  }
  .p-home .p-home_header {
    height: 100vh;
    max-height: unset;
  }
  .p-home .p-home_header .p-home_header__scroll_guide {
    right: 0;
    bottom: 0;
    place-items: center;
    width: 100%;
    font-size: 12px;
  }
  .p-home .p-home_header .p-home_header__scroll_guide .p-home_header__scroll_guide_bar {
    order: 2;
    width: 8px;
    height: 128px;
  }
  .p-home .p-home_header .p-home_header__scroll_guide .p-home_header__scroll_guide_line {
    right: 3px;
    width: 2px;
    height: 128px;
  }
  .p-home .p-home_header .p-home_header__scroll_guide .p-home_header__scroll_guide_circle {
    width: 8px;
  }
  .p-home .p-home_header .p-home_header__scroll_guide span {
    order: 1;
  }
  .p-home .p-home_section__inner {
    padding-block: 100px;
    padding-inline: 33px;
  }
  .p-home .p-home_infomation .p-home_information__inner {
    padding-inline: 33px;
  }
  .p-home .p-home_concept .p-home_section__inner {
    padding-inline: 25px;
  }
  .p-home .p-home_concept .p-home_concept__h2 {
    font-size: 20px;
    line-height: 1.5;
  }
  .p-home .p-home_concept .p-home_concept__p {
    font-size: 14px;
    line-height: 1.66;
  }
  .p-home .p-home_concept .p-home_concept__p--strong {
    font-size: 15px;
    white-space: nowrap;
  }
  .p-home .p-home_product .p-home_product__wrapper {
    margin-top: 50px;
    display: block;
  }
  .p-home .p-home_product .p-home_product__text {
    width: auto;
  }
  .p-home .p-home_product .p-home_product__text .p-home_product__text_title {
    padding-block: 10px;
    font-size: 18px;
  }
  .p-home .p-home_product .p-home_product__text .p-home_product__text_body {
    padding-top: 10px;
    font-size: 14px;
  }
  .p-home .p-home_product .p-home_product__text .p-home_product__text_link a {
    font-size: 14px;
  }
  .p-home .p-home_product .p-home_product__img {
    margin-top: 40px;
    width: auto;
  }
  .p-home .p-home_what-is-nmn {
    background-size: cover;
    background-position-x: 33%;
  }
  .p-home .p-home_what-is-nmn .p-home_what-is-nmn__wrapper {
    margin-top: 50px;
    display: block;
  }
  .p-home .p-home_what-is-nmn .p-home_what-is-nmn__img {
    margin-inline: auto;
    width: 158px;
  }
  .p-home .p-home_what-is-nmn .p-home_what-is-nmn__img img {
    width: 100%;
  }
  .p-home .p-home_what-is-nmn .p-home_what-is-nmn__text {
    margin-top: 50px;
    max-width: unset;
  }
  .p-home .p-home_what-is-nmn .p-home_what-is-nmn__h2 {
    font-size: 18px;
  }
  .p-home .p-home_what-is-nmn .p-home_what-is-nmn__p {
    margin-top: 20px;
    font-size: 14px;
  }
  .p-home .p-home_what-is-nmn .p-home_what-is-nmn__link {
    margin-top: 40px;
  }
  .p-product .p-product_content {
    padding-inline: 33px;
  }
  .p-product .p-product_content .p-product_content__inner {
    display: block;
  }
  .p-product .p-product_content .p-product_content__block-1 {
    width: auto;
  }
  .p-product .p-product_content .p-product_content__block-2 {
    width: auto;
    margin-top: 30px;
  }
  .p-product .p-product_content .p-product_content__block-3 {
    width: auto;
  }
  .p-product .p-product_content .p-product_content__block-4 {
    width: auto;
  }
  .p-product .p-product_content .p-product_content__title {
    font-size: 18px;
  }
  .p-product .p-product_content .p-product_content__title--secondary {
    font-size: 14px;
  }
  .p-product .p-product_content .p-product_content__free-text-1 {
    font-size: 14px;
  }
  .p-product .p-product_content .p-product_content__conversion .u-set__btn--secondary::after {
    left: 20px;
  }
  .p-product .p-product_content .p-product_content__warning-label {
    margin-top: 40px;
  }
  .p-product .p-product_content .p-product_content__warning-label .p-product_content__warning-label--head {
    font-size: 14px;
  }
  .p-product .p-product_content .p-product_content__warning-label .p-product_content__warning-label--body {
    font-size: 14px;
  }
  .p-product .p-product_reason {
    background-position-x: 31%;
    background-size: cover;
  }
  .p-product .p-product_reason .p-product_reason_items {
    margin-top: 50px;
    padding-inline: 33px;
    display: block;
  }
  .p-product .p-product_reason .p-product_reason_items__item {
    display: block;
  }
  .p-product .p-product_reason .p-product_reason_items__item + .p-product_reason_items__item {
    margin-top: 50px;
  }
  .p-product .p-product_reason .p-product_reason_items__item_img img {
    width: 100%;
  }
  .p-product .p-product_reason .p-product_reason_items__item_text {
    margin-top: 10px;
  }
  .p-product .p-product_reason .p-product_reason_items__item_text--title {
    font-size: 15px;
  }
  .p-product .p-product_reason .p-product_reason_items__item_text--body {
    font-size: 14px;
  }
  .p-product .p-product_compensate .p-product_compensate__inner {
    padding-inline: 33px;
    display: block;
  }
  .p-product .p-product_compensate .p-product_compensate__img {
    width: 100%;
  }
  .p-product .p-product_compensate .p-product_compensate__text {
    font-size: 14px;
  }
  .p-product .p-product_compensate .p-product_compensate__head {
    margin-top: 20px;
    font-size: 15px;
  }
  .p-product .p-product_compensate .p-product_compensate__descri {
    margin-top: 10px;
  }
  .p-product .p-product_review {
    padding-top: 100px;
    padding-bottom: 0;
  }
  .p-product .p-product_review .p-product_review__inner {
    margin-top: 50px;
    padding-inline: 33px;
    display: block;
  }
  .p-product .p-product_review .p-product_review__descri {
    font-size: 12px;
    letter-spacing: 0.04em;
  }
  .p-product .p-product_review .p-product_review__entry_wrapper {
    margin-top: 50px;
  }
  .p-product .p-product_review .p-product_review__entry_content {
    padding-bottom: 0;
  }
  .p-product .p-product_review .p-product_review__view {
    margin-top: 50px;
  }
  .p-product .p-product_review .p-review_item .p-review_item__line2 {
    display: block;
  }
  .p-product .p-product_review .p-review_item .p-review_item__line3 {
    margin-top: 20px;
  }
  .p-product .p-product_review .p-review_item .p-review_item__name {
    font-size: 14px;
  }
  .p-product .p-product_review .p-review_item .p-review_item__title {
    margin-top: 10px;
    margin-left: unset;
    font-size: 15px;
  }
  .p-product .p-product_review .p-review_item .p-review_item__date {
    margin-top: 10px;
  }
  .p-product .p-product_review .p-review_item .p-review_item__text {
    font-size: 14px;
  }
  .p-product .c-shop_bottom_nav {
    padding-top: 100px;
  }
  .p-faq {
    padding-top: 100px !important;
  }
  .p-contact {
    padding-top: 100px !important;
  }
  .p-contact .p-account_form {
    padding-inline: 33px;
  }
  .p-account__inner__menu {
    display: none;
  }
  .p-concept__text {
    padding: 20px;
  }
  .p-account .p-mypage__block__subscription__item {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .p-account .p-mypage__block__subscription__item__date {
    margin-bottom: 0;
  }
  .p-account .p-mypage__block__subscription__item__order .order_product {
    grid-template-areas: "img info" "img info" "total total";
  }
  .p-account .p-mypage__block__subscription__item__action {
    margin-left: auto;
  }
  .p-account .p-mypage__block__subscription__item__btn {
    height: 36px;
  }
  .p-account .p-mypage__block__history__item {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }
  .p-account .p-mypage__block__history__item__action {
    margin-left: auto;
  }
  .p-account .p-mypage__block__history__item__btn {
    height: 36px;
  }
  .p-account .p-subscription_detail__block__wrapper {
    grid-template-areas: "products" "billing" "detail";
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
  }
  .p-account .p-subscription_detail__block__wrapper .c-billing_list {
    margin-top: 0;
  }
  .p-account .p-subscription_detail__subinfo__block {
    grid-template-areas: "title" "table" "navigation";
    grid-template-columns: none;
    grid-template-rows: auto 1fr auto;
  }
  .p-account .p-subscription_detail__subinfo__block_with_third_row {
    grid-template-areas: "title" "table" "navigation" "third_row";
    grid-template-rows: auto 1fr auto auto;
  }
  .p-account .p-history_detail__block__wrapper {
    grid-template-areas: "products" "billing" "detail";
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
  }
  .p-account .p-history_detail__block__wrapper .c-billing_list {
    margin-top: 0;
  }
  .p-account .p-history_detail__subinfo__block {
    grid-template-areas: "title" "table" "navigation";
    grid-template-columns: none;
    grid-template-rows: auto 1fr auto;
  }
}