@charset "UTF-8";

/* フォントサイズ: 用途名（h1/h2/min 等）。SP=:root、異なる場合は768px〜で上書き。px系は --font-size-{SP} / --font-size-{SP}-{PC} */
:root {
  /* フォントサイズ変数 */
  --font-size-h1: 18px; /* 記事タイトル */
  --font-size-h2: 16px; /* 大見出し h2 */
  --font-size-16-18: 16px; /* 監修者名・著者名・商品カード見出し */
  --font-size-16: 16px; /* h3・FAQ・NG BOX等（16px固定） */
  --font-size-14-16: 14px; /* h4-h6・商品カード補助・著者説明・目次タイトル（SP14px／PC16px） */
  --font-size-14: 14px; /* 段落・リスト・目次・商品名・リンク類（14px固定） */
  --font-size-min: 14px; /* キャプション・注釈（SP最小） */
  /* 余白変数 */
  --space-2: min(2%, 20px); /* ブロック間余白（SP〜PCで2%、上限20px） */
  --space-3: min(3%, 30px); /* ブロック間余白（SP〜PCで3%、上限30px） */
  --space-5: min(5%, 40px); /* ブロック間余白（SP〜PCで5%、上限40px） */
}

/* PC（768px〜）：フォント変数上書き */
@media screen and (min-width: 768px) {
  :root {
    --font-size-h1: 28px;
    --font-size-h2: 20px;
    --font-size-16-18: 18px;
    --font-size-14-16: 16px;
    --font-size-min: 13px;
  }
}

/* ============================================
   blog_single_parent（14–139行）専用　SP用スタイル
============================================ */

.youtube-box {
  margin-bottom: var(--space-5);
}

/* --- 記事ヘッダー --- */
.column .p-article-header {
  width: auto;
  margin: 30px 0;
}

.column .p-article-header__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-size: var(--font-size-min);
}

.column .p-article-header__category {
  position: relative;
  margin: 0;
  padding-left: 34px;
  font-feature-settings: "palt";
}

.column .p-article-header__category:before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 28px;
  height: 28px;
  background-size: 75% auto;
  background-position: center center;
  background-repeat: no-repeat;
  background-color: #fff9d7;
  transform: translateY(-50%);
  border-radius: 50%;
}

.column .p-article--health .p-article-header__category:before {
  background-image: url(/blog/common_assets/img/top/column_icon_health.png);
}

.column .p-article--maternity .p-article-header__category:before,
.column .p-article--mama .p-article-header__category:before {
  background-image: url(/blog/common_assets/s/img/top/column_icon_mama.png);
}

.column .p-article--movie .p-article-header__category:before {
  background-image: url(/blog/common_assets/s/img/top/column_icon_movie.png);
}

.column .p-article--baby .p-article-header__category:before {
  background-image: url(/blog/common_assets/s/img/top/column_icon_baby.png);
}

.column .p-article--kids .p-article-header__category:before {
  background-image: url(/blog/common_assets/s/img/top/column_icon_kids.png);
}

.column .p-article--offstage .p-article-header__category:before {
  background-image: url(/blog/common_assets/s/img/top/column_icon_offstage.png);
}

.column .p-article--beauty .p-article-header__category:before {
  background-image: url(/blog/common_assets/s/img/top/column_icon_beauty.png);
}

.column .p-article-header__updated {
  color: #888;
  margin: 0 0 0 auto;
}

.column .p-article-header__byline {
  flex: 1 1 100%;
  width: 100%;
  text-align: right;
  color: #888;
  font-size: var(--font-size-min);
  margin: 0;
}

/* 記事タイトル（ヘッダー内 h1） */
.column .p-article-header__title {
  font-size: var(--font-size-h1);
  font-weight: 600;
  line-height: 1.5;
  margin: 30px 0;
}

.column .p-article-header__title span {
  background: linear-gradient(transparent 90%, rgba(236, 106, 139, 0.3) 0);
}

.column .p-article-header__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.column .p-article-header__tags > li {
  margin: 0;
  padding: 5px 10px;
  font-size: 1.1rem;
  line-height: 1;
  border-radius: 2px;
  background-color: #eef8fb;
}

.column .p-article-header__tags > li + li {
  margin: 0;
}

.column .p-article-header__tags > li.bg_pink,
.column .p-article-header__tags > li.tag_list-free {
  background-color: #fdf2f6;
}

.column .p-article-header__tags > li.bg_green {
  background-color: #eefbf4;
}

.column .p-article-header__tag-item a {
  color: #1d1d1d;
  text-decoration: none;
  font-size: inherit;
  line-height: inherit;
}

.column .p-article-header__tag-item > a:before {
  content: "";
  display: inline-block;
  width: 12px;
  height: 11px;
  background-image: url(/blog/common_assets/img/top/column_icon_tag.png);
  margin-right: 3px;
}

.column .p-article-header figure {
  margin: var(--space-3) 0;
  text-align: center;
}

/* --- 記事ボディ --- */
.column .p-article-body {
  width: auto;
  margin: auto;
}

.column .p-article-lead {
  display: none;
  margin-top: var(--space-3);
  padding: 35px 30px;
  font-size: var(--font-size-14);
  background: #fafafa;
  color: #666;
}

/* 要約BOX */
.p-summary__box {
  margin: 0;
  font-size: var(--font-size-14);
  color: #1d1d1d;
  line-height: 1.7;
  padding: var(--space-2) 0 var(--space-3);
}

.c-summary__title {
  text-align: center;
  font-size: var(--font-size-14-16);
  font-weight: 700;
  margin: 0 0 16px;
  padding: 0;
}

.c-summary__list {
  margin: 0;
  padding-left: 1.5em;
  font-size: var(--font-size-14);
  font-weight: 400;
  margin-bottom: var(--space-5);
  list-style: disc;
  list-style-position: outside;
}

.c-summary__list li,
.column .p-article-body .c-summary__list > li,
.p-article-content .c-summary__list > li {
  margin-bottom: 10px;
  display: list-item;
  list-style: disc;
  list-style-position: outside;
  padding-left: 0;
  margin-left: 0;
  text-indent: 0;
}

.column .p-article-body .c-summary__list > li::before,
.column .p-article-body .c-summary__list > li:before,
.p-article-content .c-summary__list > li::before,
.p-article-content .c-summary__list > li:before {
  content: none;
  display: none;
}

.column .p-article-body .p-article-content {
  text-align: left;
  overflow-wrap: anywhere;
  word-break: normal;
  min-width: 0;
  max-width: 100%;
  padding: 0;
  padding-bottom: 30px;
}

.column
  .p-article-body
  .p-article-content
  .mt-be-column:not(.p-testimonial__profile):not(.p-testimonial__bubble):not(
    :is(
        .p-product-card-1,
        .p-product-card-2,
        .p-product-card-3,
        .p-product-card-4
      )
      .mt-be-column
  ) {
  text-align: left;
  padding: 8px;
}

.p-article-content p + p {
  margin-top: 1em;
}

.column .p-article-body figure + * {
  margin-top: 0;
}

.column .p-article-body figure {
  margin: var(--space-5) 0;
  display: inline-block;
}

.column .p-article-body figure figcaption {
  font-size: var(--font-size-min);
  color: #666;
  margin-top: 1em;
  text-align: left;
}

/* --- シェア --- */
.column .p-share {
  text-align: left;
}

.column .p-share li {
  display: inline-block;
}

.column .p-share li + li {
  margin-left: 6px;
}

.column .p-share .fb_iframe_widget span {
  vertical-align: baseline !important;
}

.column .p-share__copy {
  border: none;
  background: no-repeat;
  padding: 0;
  margin: 0;
  font-size: var(--font-size-min);
  display: inline-block;
  vertical-align: 6px;
  color: #666;
  text-decoration: underline;
  position: relative;
  cursor: pointer;
}

.column .p-share__copy:hover {
  text-decoration: none;
}

.column .p-share__copy:after {
  content: "コピーしました";
  background: #555;
  display: inline-block;
  color: #fff;
  border-radius: 0.4rem;
  position: absolute;
  left: 50%;
  bottom: -3em;
  transform: translate(-50%, 0);
  font-size: 0.75rem;
  padding: 2px 5px;
  width: 11em;
  opacity: 0;
  transition-duration: 1s;
}

.column .p-share__copy.tooltip::after {
  opacity: 1;
  transition-duration: 0.2s;
}

/* --- 記事本文（.p-article-content 内の CMS 出力用ベース） --- */

/* 汎用リスト（コンポーネント用リストは除外） */
.column
  .p-article-body
  ul:not(.p-share ul):not(.p-toc-box__list):not(.p-product-card__list):not(
    .c-summary__list
  ):not(.p-list-block__list):not(.list-circle),
.p-article-content
  ul:not(.p-share ul):not(.p-toc-box__list):not(.p-product-card__list):not(
    .c-summary__list
  ):not(.p-list-block__list):not(.list-circle),
.p-article-content ol:not(.p-share ol):not(.p-toc-box__list) {
  margin: 0;
  padding-left: 1.2em;
  font-size: var(--font-size-14);
  line-height: 1.7;
  color: #1d1d1d;
}

.column
  .p-article-body
  ul:not(.p-share ul):not(.p-toc-box__list):not(.p-product-card__list):not(
    .c-summary__list
  ):not(.p-list-block__list):not(.list-circle),
.p-article-content
  ul:not(.p-share ul):not(.p-toc-box__list):not(.p-product-card__list):not(
    .c-summary__list
  ):not(.p-list-block__list):not(.list-circle) {
  list-style: disc;
}

.column
  .p-article-body
  ul:not(.p-share ul):not(.p-toc-box__list):not(.p-product-card__list):not(
    .c-summary__list
  ):not(.p-list-block__list):not(.list-circle)
  > li,
.p-article-content
  ul:not(.p-share ul):not(.p-toc-box__list):not(.p-product-card__list):not(
    .c-summary__list
  ):not(.p-list-block__list):not(.list-circle)
  > li {
  display: list-item;
  list-style: disc;
  list-style-position: outside;
}

.p-article-content ol:not(.p-share ol):not(.p-toc-box__list) {
  list-style: decimal;
}

.p-article-content ol:not(.p-share ol):not(.p-toc-box__list) > li {
  display: list-item;
  list-style: decimal;
  list-style-position: outside;
}

/* 汎用リスト直後の段落との間隔 */
.column
  .p-article-body
  ul:not(.p-share ul):not(.p-toc-box__list):not(.p-product-card__list):not(
    .c-summary__list
  ):not(.p-list-block__list):not(.list-circle):has(+ p),
.p-article-content
  ul:not(.p-share ul):not(.p-toc-box__list):not(.p-product-card__list):not(
    .c-summary__list
  ):not(.p-list-block__list):not(.list-circle):has(+ p),
.p-article-content ol:not(.p-share ol):not(.p-toc-box__list):has(+ p) {
  padding-bottom: var(--space-3);
}

.p-article-content ol.num-list {
  padding-left: 1.5em;
  margin: 0 0 16px;
}

.p-article-content ol.num-list li {
  margin-bottom: 6px;
  line-height: 1.75;
  letter-spacing: 0.03em;
  list-style-type: decimal !important;
}

.column .p-share ul,
.p-article-content .p-share ul {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: inherit;
  line-height: inherit;
}

/* common.css の list 系（.list / .list-circle / .list-num01 / .list-num02）を本文内で無効化 */
.column .p-article-body .list > li,
.column .p-article-body .list-circle > li,
.column .p-article-body .list-num01 > li,
.column .p-article-body .list-num02 > li {
  padding-left: 0;
  margin-left: 0;
  text-indent: 0;
}

.column .p-article-body .list > li + li {
  margin-top: 0;
}

.column .p-article-body .list > li::before,
.column .p-article-body .list > li:before,
.column .p-article-body .list-circle > li::before,
.column .p-article-body .list-circle > li:before,
.column .p-article-body .list-num01 > li::before,
.column .p-article-body .list-num01 > li:before,
.column .p-article-body .list-num02 > li::before,
.column .p-article-body .list-num02 > li:before {
  content: none;
  display: none;
}

.column .p-article-body ul.list-circle {
  padding-left: 1.2em;
  list-style: disc;
  font-size: var(--font-size-14);
}

.column .p-article-body .list-circle > li {
  list-style: disc;
  padding-left: 0;
  margin-bottom: 2px;
  line-height: 1.7;
}

.column .p-article-body .list-circle > li::before,
.column .p-article-body .list-circle > li:before {
  content: none;
  display: none;
}

/* --- リストブロック（ul + 補足p） --- */
.p-article-content .p-list-block {
  --p-list-block-indent: 1em;
  margin: 0 0 var(--space-2);
  font-size: var(--font-size-14);
  line-height: 1.7;
}

.p-article-content .p-list-block__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.p-article-content .p-list-block__list > li {
  padding-left: var(--p-list-block-indent);
  text-indent: calc(-1 * var(--p-list-block-indent));
  margin: 0 0 var(--space-2);
}

.p-article-content .p-list-block__list > li::before {
  content: "・";
}

.p-article-content .p-list-block__list > li:last-child {
  margin-bottom: 0;
}

/* li 補足：リスト項目の字下げ位置に揃える（・は表示しない） */
.p-article-content .p-list-block__note {
  margin: 0;
  padding: 0;
  padding-left: var(--p-list-block-indent);
  font-size: var(--font-size-min);
  line-height: 1.6;
}

/* --- 本文ベースタイポグラフィ（h2〜h6）--- */

.p-article-content h2,
.p-article-content h3,
.p-article-content h4,
.p-article-content h5,
.p-article-content h6 {
  font-weight: 400;
  margin-bottom: 15px;
  line-height: 1.5;
}

.p-article-content h2 {
  margin-top: 50px;
  font-size: var(--font-size-h2);
  color: #5f5f5f;
  font-weight: 700;
}

/* h2＋罫線セット */
.p-article-content .p-section-heading hr {
  margin: var(--space-3) 0;
}

.p-article-content h3 {
  margin-top: 20px;
  font-size: var(--font-size-16-18);
  color: #5f5f5f;
  font-weight: 700;
}

.p-article-content h4 {
  margin-top: var(--space-2);
  font-size: var(--font-size-14-16);
  position: relative;
  display: block;
  border-bottom: 1px solid #ddd;
}

.p-article-content h5 {
  margin-top: var(--space-2);
  font-size: var(--font-size-14-16);
  color: #5ea8dd;
}

.p-article-content h6 {
  margin-top: var(--space-2);
  font-size: var(--font-size-14-16);
  color: #5ea8dd;
}

.p-article-content h4:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 50px;
  height: 1px;
  background-color: #1d1d1d;
}

.p-article-content figure + * {
  margin-top: 0;
}

.p-article-content p + div {
  margin-top: var(--space-2);
}

.p-article-content .bold {
  font-weight: 700;
}

.p-article-content > p {
  font-size: var(--font-size-14);
  line-height: 1.75;
  letter-spacing: 0.03em;
  padding-bottom: 0;
}

.p-article-content hr {
  margin: var(--space-5) 0;
}

.p-article-content hr + * {
  margin-top: 0;
}

.p-article-content section div > h2,
.p-article-content section div > h3,
.p-article-content section div > h4 {
  margin-top: 0;
  padding: 0;
  background: inherit;
  border: none;
}

.p-article-content section div > h4:before {
  content: none;
}

.p-article-content img {
  max-width: 100%;
  height: auto;
}

/* 画像入りp（.p-article-content直下）：単独または連続の最後のimg下に30px */
.column .p-article-body .p-article-content > p > img {
  display: block;
  margin-bottom: 30px;
}

.column .p-article-body .p-article-content > p:has(+ p > img) > img {
  margin-bottom: 0;
}

/* --- blogContentsDetail由来（実使用クラスのみ復元） --- */
.p-article-content .center {
  margin: 0 auto var(--space-3);
  display: block;
}

.p-article-content .emphasize {
  font-weight: 700;
}
.p-article-content .p-note-small {
  padding-bottom: 0;
}
.p-article-content .p-note-small p {
  font-size: var(--font-size-min);
  line-height: 1.6;
  margin: 0;
  padding: 0;
  color: #666;
}
.p-article-content .p-note-small p + p {
  margin-top: 0;
}

.p-article-content .black-frame03 {
  width: 80%;
  margin-left: 7%;
  border: #000 2px solid;
  padding: var(--space-2);
  font-size: var(--font-size-16);
  line-height: 1.7;
}

.p-article-content .black-frame03 p {
  margin-left: var(--space-2);
  padding-top: 10px;
  padding-bottom: 10px;
}

.p-article-content .two-column02 {
  width: 100%;
  overflow: hidden;
  background-color: #ecf7fb;
}

.p-article-content .two-column02 h3 {
  padding: 18px 0 8px var(--space-2);
  margin: 0;
}

.p-article-content .two-column02 .left-contents {
  float: left;
  width: 47%;
  padding: 1% 0;
  margin-left: 2%;
}

.p-article-content .two-column02 .right-contents {
  float: right;
  width: 47%;
  padding: 1% 0;
  margin-right: 2%;
}

.p-article-content .two-column02 .left-contents .left-contents,
.p-article-content .two-column02 .right-contents .left-contents {
  float: left;
  width: 46%;
  padding: 1% 0;
}

.p-article-content .two-column02 .left-contents .right-contents,
.p-article-content .two-column02 .right-contents .right-contents {
  float: right;
  width: 48%;
  padding: 1% 0;
  margin-right: 0;
  display: block;
}

.p-article-content .two-column02 .left-contents .right-contents a,
.p-article-content .two-column02 .right-contents .right-contents a {
  text-decoration: underline;
  color: #333;
}

.p-article-content .two-column02 .left-contents .right-contents h3,
.p-article-content .two-column02 .right-contents .right-contents h3 {
  margin: 0 auto 10px;
  padding: 2px;
  text-align: left;
  font-size: var(--font-size-14);
  color: #fff;
}

.p-article-content .two-column02 .left-contents .right-contents p,
.p-article-content .two-column02 .right-contents .right-contents p {
  padding-bottom: 10px;
}

.p-article-content .two-column02 .left-contents .right-contents p span,
.p-article-content .two-column02 .right-contents .right-contents p span {
  font-weight: 700;
  border-bottom: #ccc dashed 1px;
  padding-bottom: 6px;
  margin-bottom: 10px;
}

.p-article-content .two-column02 .left-contents .right-contents h3 span,
.p-article-content .two-column02 .right-contents .right-contents h3 span {
  padding: 5px 10px;
  background-color: #f3aa27;
  color: #fff;
}

.p-article-content .two-column02 .left-contents .right-contents h3 .green,
.p-article-content .two-column02 .right-contents .right-contents h3 .green {
  padding: 5px 10px;
  background-color: #690;
  color: #fff;
}

.p-article-content .two-column02 .left-contents .right-contents img,
.p-article-content .two-column02 .right-contents .right-contents img {
  margin: 0;
  padding: 0 0 0 6px;
  display: inline-block;
  vertical-align: middle;
  height: 14px;
  width: auto;
}

/* ============================================
   テーブル（blogContentsDetail由来）
============================================ */

/* テーブル横スクロール（SP・右端フェード） */
.p-article-content table {
  display: block;
  width: 0 !important;
  min-width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  box-sizing: border-box;
  margin: var(--space-2) 0;
  border-collapse: separate !important;
  border-spacing: 0;
  line-height: 1.72;
  text-align: center;
  border: 1px solid #f5f5f5 !important;
  border-radius: 10px;
  overflow-x: auto;
  overflow-y: visible;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
}

/* 3列以上のみ：右端フェード＋スクロール終端用余白 */
.p-article-content table:has(tbody tr td:nth-child(3)) {
  -webkit-mask-image: linear-gradient(to right, black 91%, transparent 100%);
  mask-image: linear-gradient(to right, black 91%, transparent 100%);
  padding-right: 9%;
}

.p-article-content table tbody {
  display: table;
  width: max-content;
  min-width: 100%;
  height: auto !important;
  border-collapse: separate;
  border-spacing: 0;
}

.p-article-content table tbody tr,
.p-article-content table tbody tr td {
  height: auto !important;
}

/* テーブル直後の段落との間隔 */
.p-article-content table:has(+ p) {
  margin-bottom: calc(var(--space-2) * 2);
}

.p-article-content table tbody tr:first-child > :first-child {
  border-top-left-radius: 9px;
}

.p-article-content table tbody tr:first-child > :last-child {
  border-top-right-radius: 9px;
}

.p-article-content table tbody tr:last-child > :first-child {
  border-bottom-left-radius: 9px;
}

.p-article-content table tbody tr:last-child > :last-child {
  border-bottom-right-radius: 9px;
}

.p-article-content table tbody tr td {
  box-sizing: border-box;
  width: auto !important;
  max-width: 130px;
  min-width: 0;
  border-top: none !important;
  border-left: none !important;
  border-right: 1px solid #f5f5f5 !important;
  border-bottom: 1px solid #f5f5f5 !important;
  padding: 9px !important;
  text-align: center !important;
  font-size: var(--font-size-min);
  color: #1d1d1d !important;
  background-color: #fff !important;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.p-article-content table tbody tr td:last-child {
  border-right: none !important;
}

.p-article-content table tbody tr:last-child td {
  border-bottom: none !important;
}

.p-article-content table tbody > tr ~ tr td:first-child {
  text-align: left !important;
  background-color: #f9fafc !important;
  font-weight: 700 !important;
}

.p-article-content table tbody > tr:first-child td {
  background-color: #eef6fb !important;
  padding: 9px !important;
  text-align: center !important;
  font-size: var(--font-size-min);
  font-weight: 700 !important;
  color: #1d1d1d !important;
}

.p-article-content table tbody > tr:first-child td:first-child {
  background-color: #fff !important;
  text-align: center !important;
  font-weight: 700 !important;
}

/* ============================================
   CMS本文コンポーネント（.p-article-body / .p-article-content 内）
============================================ */

/* --- ポイントボックス --- */
.p-article-content .p-point-box {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  column-gap: 0.35em;
  background-color: #fcf8ee;
  padding: 16px;
  margin-bottom: 16px;
}

/* 番号（pre・枠線なし・大きめ表示） */
.p-article-content .p-point-box > pre {
  margin: 0;
  padding: 0;
  font-family: inherit;
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 400;
  color: #1d1d1d;
  background: transparent;
  border: none;
  white-space: pre;
  flex: 0 0 auto;
  align-self: start;
}

.p-article-content .p-point-box > .p-point-box__title {
  flex: 1 1 0;
  min-width: 0;
  align-self: start;
  margin-top: max(0px, calc((2.4rem * 1.4 - var(--font-size-14-16) * 1.3) / 2));
  font-size: var(--font-size-14-16);
  font-weight: 700;
  line-height: 1.3;
  color: #1d1d1d;
  margin-bottom: 0;
  padding: 0;
}

.p-article-content .p-point-box > .p-point-box__body {
  flex: 1 1 100%;
  width: 100%;
  font-size: var(--font-size-14-16);
  font-weight: 400;
  line-height: 1.7;
  color: #1d1d1d;
  margin: 0 0 10px;
  padding: 0;
}

.p-article-content .p-point-box > .p-point-box__list {
  flex: 1 1 100%;
  width: 100%;
  margin: 0;
  font-size: var(--font-size-14-16);
}

.p-article-content .p-point-box > .p-point-box__list li {
  margin-bottom: 4px;
}

.p-article-content .p-point-box > .p-point-box__list .bold {
  font-weight: 700;
}

/* --- NGボックス（内囲み情報_NG） --- */
.p-article-content .p-ng-box {
  background-color: #fff5f5;
  border: 1px solid #f5c2c7;
  padding: var(--space-2) 24px;
  margin-bottom: 16px;
}

.p-article-content .p-ng-box > .p-ng-box__title {
  position: relative;
  padding-left: 28px;
  font-size: var(--font-size-16);
  font-weight: 700;
  line-height: 1.7;
  color: #c0392b;
  margin: 0 0 12px;
}

.p-article-content .p-ng-box > .p-ng-box__title::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.15em;
  width: 20px;
  height: 20px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23FFC107' d='M12 2 2 20h20L12 2z'/%3E%3Cpath fill='%231d1d1d' d='M11 9h2v5h-2V9zm0 6h2v2h-2v-2z'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.p-article-content .p-ng-box > .p-ng-box__list {
  margin: 0;
  padding-left: 1.2em;
  font-size: var(--font-size-16);
  line-height: 1.7;
  color: #1d1d1d;
  list-style: disc;
}

.p-article-content .p-ng-box > .p-ng-box__list li {
  margin-bottom: 4px;
  list-style: disc;
}

/* --- 口コミ紹介（testimonial） --- */
/* MT出力: mt-be-columns.p-testimonial > mt-be-column（profile / bubble） */
.p-article-content .mt-be-columns.p-testimonial {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: stretch;
  gap: 0;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin-bottom: var(--space-2);
  padding: 12px;
}

.p-article-content .mt-be-column.p-testimonial__profile {
  flex: none;
  align-self: center;
  width: 160px;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  padding: 0 0 4px;
  text-align: center;
}

.p-article-content .p-testimonial__avatar {
  display: block;
  width: 160px;
  height: 160px;
  margin: 0 auto var(--space-2);
  padding: 0;
  border-radius: 50%;
  overflow: hidden;
}

.p-article-content .p-testimonial__avatar img {
  width: 160px !important;
  height: 160px !important;
  max-width: 160px !important;
  object-fit: cover;
  display: block;
  margin: 0;
}

.p-article-content .p-testimonial__name {
  font-size: var(--font-size-min);
  font-weight: 400;
  line-height: 1.4;
  color: #1d1d1d;
  margin: 0 0 4px;
  padding: 0;
}

.p-article-content .p-testimonial__meta {
  font-size: var(--font-size-min);
  font-weight: 400;
  line-height: 1.4;
  color: #1d1d1d;
  margin: 0;
  padding: 0;
}

.p-article-content .mt-be-column.p-testimonial__bubble {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: auto;
  align-self: stretch;
  margin-top: 16px;
  position: relative;
  overflow: visible;
  padding: 16px var(--space-2);
  background-color: #fff;
  border: 2px solid #d3d3d3;
  border-radius: 18px;
  box-sizing: border-box;
  text-align: left;
  overflow-wrap: anywhere;
  word-break: normal;
}

.p-article-content .mt-be-column.p-testimonial__bubble::before {
  content: "";
  position: absolute;
  width: 12px;
  height: 15px;
  background: #fff;
  top: -13px;
  bottom: auto;
  left: 50%;
  clip-path: polygon(50% 0, 0 100%, 100% 100%);
  margin-top: 0;
  margin-left: -6px;
  border: none;
  z-index: 2;
}

.p-article-content .mt-be-column.p-testimonial__bubble::after {
  content: "";
  position: absolute;
  width: 14px;
  height: 17px;
  background: #d3d3d3;
  top: -17px;
  bottom: auto;
  left: 50%;
  clip-path: polygon(50% 0, 0 100%, 100% 100%);
  margin-top: 0;
  margin-left: -7px;
  border: none;
  z-index: 1;
}

.p-article-content .p-testimonial__text {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  font-size: var(--font-size-14);
  font-weight: 400;
  line-height: 1.7;
  color: #1d1d1d;
  margin: 0;
  padding: 0;
  overflow-wrap: anywhere;
  word-break: normal;
}

/* --- 商品カード --- */

/* 見出し */
.p-article-content .p-product-card__header,
.p-article-content .p-related-products__header {
  background-color: #d1ebf5;
  padding: 14px 16px;
  text-align: center;
  font-size: var(--font-size-16-18);
  font-weight: 700;
  color: #1d1d1d;
  max-width: 100%;
  margin: 0 auto var(--space-5);
  border: 2px solid #d1ebf5;
  border-bottom: none;
}

.p-article-content .p-product-card__header {
  margin-top: 30px;
}

/* 外枠（p-product-card-1〜3 共通・4は下で個別指定） */
.p-article-content
  :is(.p-product-card-1, .p-product-card-2, .p-product-card-3) {
  background-color: #eef8fc;
  border: 2px solid #d1ebf5;
  padding: 30px 30px;
  max-width: 100%;
  margin: 0 auto;
}

/* 要素（p-product-card-1〜4 共通） */
.p-article-content
  :is(
    .p-product-card-1,
    .p-product-card-2,
    .p-product-card-3,
    .p-product-card-4,
    .p-related-products-1,
    .p-related-products-2
  )
  .p-product-card__brand {
  display: inline-block;
  background-color: #f3aa27;
  padding: 4px 12px;
  border-radius: 6px;
  font-size: var(--font-size-14);
  font-weight: 700;
  color: #fff;
  margin-bottom: 8px;
}

.p-article-content
  :is(
    .p-product-card-1,
    .p-product-card-2,
    .p-product-card-3,
    .p-product-card-4,
    .p-related-products-1,
    .p-related-products-2
  )
  .p-product-card__name {
  font-size: var(--font-size-14);
  font-weight: 700;
  line-height: 1.7;
  color: #1d1d1d;
  margin: 0 0 6px;
  padding: 0;
}

.p-article-content
  :is(
    .p-product-card-1,
    .p-product-card-2,
    .p-product-card-3,
    .p-product-card-4
  )
  .p-product-card__shipping {
  display: inline-block;
  font-size: var(--font-size-14-16);
  font-weight: 700;
  color: #ff657f;
  margin-bottom: 8px;
  padding: 0;
}

.p-article-content
  :is(
    .p-product-card-1,
    .p-product-card-2,
    .p-product-card-3,
    .p-product-card-4
  )
  .p-product-card__desc {
  font-size: var(--font-size-14);
  font-weight: 400;
  line-height: 1.7;
  color: #1d1d1d;
  margin: 0 0 12px;
  padding: 0;
}

.p-article-content
  :is(
    .p-product-card-1,
    .p-product-card-2,
    .p-product-card-3,
    .p-product-card-4
  )
  .p-product-card__subtitle {
  font-size: var(--font-size-14-16);
  font-weight: 700;
  color: #1d1d1d;
  margin: 0 0 6px;
  padding: 0;
}

.p-article-content
  :is(
    .p-product-card-1,
    .p-product-card-2,
    .p-product-card-3,
    .p-product-card-4
  )
  .p-product-card__list {
  margin: 0 0 16px;
  padding-left: 1.2em;
  font-size: var(--font-size-14-16);
  line-height: 1.7;
  color: #1d1d1d;
  list-style: disc;
}

.p-article-content
  :is(
    .p-product-card-1,
    .p-product-card-2,
    .p-product-card-3,
    .p-product-card-4
  )
  .p-product-card__list
  li {
  margin-bottom: 2px;
  list-style: disc;
}

.p-article-content
  :is(
    .p-product-card-1,
    .p-product-card-2,
    .p-product-card-3,
    .p-product-card-4
  )
  hr {
  border: none;
  border-top: 2px solid #d3d3d3;
  margin: 0 0 16px;
}

.p-article-content
  :is(
    .p-product-card-1,
    .p-product-card-2,
    .p-product-card-3,
    .p-product-card-4
  )
  .p-product-card__btn {
  display: block;
  text-align: center;
  background-color: #fff;
  border: 4px solid #d1ebf5;
  border-radius: 100px;
  padding: 12px 16px;
  font-size: var(--font-size-14);
  font-weight: 700;
  color: #5ea8dd;
  text-decoration: none;
  line-height: 1.6;
}

.p-article-content
  :is(
    .p-product-card-1,
    .p-product-card-2,
    .p-product-card-3,
    .p-product-card-4
  )
  .p-product-card__link {
  display: block;
  width: fit-content;
  max-width: 100%;
  margin-left: auto;
  text-align: right;
  color: #5ea8dd;
  font-size: var(--font-size-14);
  font-weight: 400;
  line-height: 1.6;
  text-decoration: none;
  background-image: linear-gradient(#5ea8dd, #5ea8dd);
  background-size: calc(100% - 1.2em) 1px;
  background-position: left bottom;
  background-repeat: no-repeat;
}

.p-article-content
  :is(
    .p-product-card-1,
    .p-product-card-2,
    .p-product-card-3,
    .p-product-card-4
  )
  .p-product-card__link::after {
  content: "▶";
  color: #f3aa27;
  margin-left: 0.2em;
  text-decoration: none;
  display: inline-block;
}

/* パターン1：画像＋info 横並び */
.p-article-content .p-product-card-1 .p-product-card__body {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 12px;
}

.p-article-content .p-product-card-1 .p-product-card__img {
  width: 45%;
  flex: 0 0 45%;
  display: block;
  margin: 0;
  min-width: 0;
}

.p-article-content .p-product-card-1 .p-product-card__info {
  flex: 1;
  min-width: 0;
}

/* パターン2：縦積み（meta → 商品名 → 画像 → サブタイトル → 本文 → 罫線 → サブタイトル → リスト） */
.p-article-content .p-product-card-2 .p-product-card__body {
  display: block;
  margin-bottom: 0;
}

.p-article-content .p-product-card-2 .p-product-card__meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 8px;
}

.p-article-content
  .p-product-card-2
  .p-product-card__meta
  .p-product-card__brand {
  display: inline-block;
  background-color: #f3aa27;
  padding: 4px 12px;
  border-radius: 6px;
  font-size: var(--font-size-14);
  font-weight: 700;
  color: #fff;
  margin-bottom: 0;
}

.p-article-content
  .p-product-card-2
  .p-product-card__meta
  .p-product-card__shipping {
  display: inline-block;
  font-size: var(--font-size-14-16);
  font-weight: 700;
  color: #ff657f;
  margin-bottom: 0;
  padding: 0;
  text-align: right;
  flex-shrink: 0;
}

.p-article-content .p-product-card-2 .p-product-card__name {
  margin-bottom: 12px;
}

.p-article-content .p-product-card-2 .p-product-card__img {
  width: 100%;
  max-width: 350px;
  display: block;
  margin: 0 auto 12px;
}

/* パターン3 */
.p-article-content .p-product-card-3 .p-product-card__body {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 12px;
}

.p-article-content .p-product-card-3 .p-product-card__img {
  width: 45%;
  flex: 0 0 45%;
  display: block;
  margin: 0;
  min-width: 0;
}

.p-article-content .p-product-card-3 .p-product-card__info {
  flex: 1;
  min-width: 0;
}

/* パターン4：比較表（4列×5行・1行目のみ水色） */
.p-article-content .p-product-card-4 {
  background-color: #fff;
  border: 2px solid #d1ebf5;
  padding: 0;
  max-width: 100%;
  width: 100%;
  margin: 0 auto;
  line-height: 1.72;
  overflow-x: auto;
  overflow-y: visible;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  -webkit-mask-image: linear-gradient(to right, black 91%, transparent 100%);
  mask-image: linear-gradient(to right, black 91%, transparent 100%);
  padding-right: 9%;
  box-sizing: border-box;
}

/* 商品カード間隔（連続時30px・最後の下30px） */
.p-article-content
  :is(
    .p-product-card-1,
    .p-product-card-2,
    .p-product-card-3,
    .p-product-card-4
  )
  + :is(
    .p-product-card-1,
    .p-product-card-2,
    .p-product-card-3,
    .p-product-card-4
  ) {
  margin-top: 30px;
}

.p-article-content
  :is(
    .p-product-card-1,
    .p-product-card-2,
    .p-product-card-3,
    .p-product-card-4
  ):not(
    :has(
      + :is(
        .p-product-card-1,
        .p-product-card-2,
        .p-product-card-3,
        .p-product-card-4
      )
    )
  ) {
  margin-bottom: 30px;
}

.p-article-content
  .p-product-card-4
  .mt-be-columns:is(.p-product-card__row, .p-product-card__row--head) {
  display: flex;
  flex-wrap: nowrap;
  width: 100%;
  min-width: 600px;
}

.p-article-content
  .p-product-card-4
  .mt-be-columns:is(.p-product-card__row, .p-product-card__row--head)
  .mt-be-column {
  box-sizing: border-box;
  flex: 1 1 0;
  min-width: 0;
  padding: 9px;
  border: solid 1px #f5f5f5;
  text-align: left;
}

.p-article-content
  .p-product-card-4
  .mt-be-columns:is(.p-product-card__row, .p-product-card__row--head)
  .mt-be-column
  + .mt-be-column {
  border-left: none;
  margin-left: -1px;
}

.p-article-content
  .p-product-card-4
  .mt-be-columns:is(.p-product-card__row, .p-product-card__row--head)
  + .mt-be-columns:is(.p-product-card__row, .p-product-card__row--head)
  .mt-be-column {
  border-top: none;
  margin-top: -1px;
}

.p-article-content .p-product-card-4 .p-product-card__label {
  flex: 0 0 200px;
  width: 200px;
  max-width: 200px;
  background-color: #f5f5f5;
  font-weight: 700;
}

.p-article-content .p-product-card-4 .p-product-card__cell {
  background-color: #fff;
}

.p-article-content
  .p-product-card-4
  .mt-be-columns.p-product-card__row--head
  .mt-be-column {
  background-color: #eef8fc;
}

.p-article-content
  .p-product-card-4
  .mt-be-columns.p-product-card__row--head
  .p-product-card__img {
  margin: 0;
  padding: 10px;
}

.p-article-content .p-product-card-4 .p-product-card__name {
  text-align: center;
}

.p-article-content
  .p-product-card-4
  .p-product-card__cell
  .p-product-card__btn {
  width: 100%;
  box-sizing: border-box;
  font-size: var(--font-size-14);
  padding: 10px 12px;
  white-space: normal;
  word-break: break-word;
}

/* --- 関連おすすめ商品 --- */
.p-related-products {
  background-color: #eef8fc;
  border: 2px solid #d1ebf5;
  max-width: 100%;
  margin: 0 auto var(--space-2);
}

.p-related-products .p-related-products__header {
  font-size: var(--font-size-16-18);
  margin-bottom: 0;
}

.p-related-products .mt-be-columns {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-evenly;
  width: 100%;
  padding: var(--space-2);
  box-sizing: border-box;
  gap: var(--space-2);
}

.p-related-products .mt-be-column {
  box-sizing: border-box;
  flex: 0 0 calc(50% - var(--space-2) / 2);
  max-width: calc(50% - var(--space-2) / 2);
  min-width: 0;
  padding: 0;
  text-align: left;
  margin: 0;
}

.p-related-products-1 .mt-be-column:last-child:empty {
  display: block;
  visibility: hidden;
}

.p-related-products .p-product-card__img {
  margin: 0 auto;
  padding: 0;
}

.p-related-products .p-product-card__name {
  text-align: left;
}

/* --- MTブロック編集用（ボタン／リンク） --- */
.button-link,
.button-text {
  font-size: var(--font-size-14);
}

/* --- テキストリンク（汎用カスタムブロック） --- */
.p-article-content .p-text-link,
.p-text-link {
  display: block;
  width: fit-content;
  max-width: 100%;
  margin-left: auto;
  text-align: right;
  color: #5ea8dd;
  font-size: var(--font-size-14);
  font-weight: 400;
  line-height: 1.6;
  text-decoration: none;
  background-image: linear-gradient(#5ea8dd, #5ea8dd);
  background-size: calc(100% - 1.2em) 1px;
  background-position: left bottom;
  background-repeat: no-repeat;
}

.p-article-content .p-text-link::after,
.p-text-link::after {
  content: "▶";
  color: #f3aa27;
  margin-left: 0.2em;
  text-decoration: none;
  display: inline-block;
}

/* --- FAQ --- */
.p-article-content .p-faq__head {
  display: flex;
  align-items: flex-start;
  gap: 0;
  margin-bottom: 12px;
  font-size: var(--font-size-16);
}

.p-article-content .p-faq__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-sizing: border-box;
  width: 48px;
  height: 48px;
  min-width: 48px;
  min-height: 48px;
  border-radius: 50%;
  background-color: #9d9d9d;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
}

.p-article-content .p-faq__question {
  font-size: var(--font-size-16);
  font-weight: 700;
  line-height: 1.7;
  color: #1d1d1d;
  margin: 0;
  padding: 8px 0 0;
}

.p-article-content .p-faq__answer {
  font-size: var(--font-size-16);
  font-weight: 400;
  line-height: 1.7;
  color: #1d1d1d;
  margin: 0 0 24px;
  padding: 0;
}

.p-article-content .p-faq__box hr {
  border: none;
  border-top: 1px solid #d9d9d9;
  margin: 0 0 24px;
}

.p-article-content .p-faq__box .mt-be-column,
.p-article-content .p-faq .mt-be-column {
  padding: 8px;
}

/* 監修者BOX */
.p-supervisor-box {
  background-color: #fcfcfc;
  border: 1px solid #a4a4a4;
  padding: 16px;
  max-width: 100%;
}

.p-supervisor-box--intro {
  margin: 0 0 var(--space-5);
}

.p-supervisor-box--detail {
  margin: 30px 0 var(--space-5);
}

.p-supervisor-box__name {
  font-size: var(--font-size-14-16);
  font-weight: 700;
  line-height: 1.7;
  text-align: center;
  color: #1d1d1d;
  margin: 0 0 16px;
  padding: 0;
}

.p-supervisor-box__body {
  display: flex;
  align-items: flex-start;
  gap: var(--space-2);
}

.p-supervisor-box__photo {
  width: 40%;
  flex-shrink: 0;
  display: block;
  align-self: flex-start;
  margin: 6px 0 0;
}

.p-supervisor-box__text p {
  font-size: var(--font-size-14-16);
  font-weight: 400;
  line-height: 1.7;
  color: #1d1d1d;
  margin: 0 0 12px;
  padding: 0;
}

.p-supervisor-box__link {
  display: block;
  font-size: var(--font-size-14-16);
  font-weight: 400;
  color: #5ea8dd;
  text-decoration: underline;
  text-align: right;
}

.p-supervisor-box--detail .p-supervisor-box__photo {
  width: 240px;
  height: 240px;
  object-fit: cover;
  display: block;
  margin: 0 auto 16px;
}

.p-supervisor-box--detail .p-supervisor-box__text {
  font-size: var(--font-size-14-16);
  font-weight: 400;
  line-height: 1.7;
  color: #1d1d1d;
  text-align: left;
  margin: 0 0 8px;
  padding: 0;
}

/* 目次BOX（SP余白：旧 blogTableContents 踏襲） */
.p-toc-box {
  background-color: #fffcee;
  margin: 0 0 var(--space-5);
  padding: 16px;
}

.p-toc-box .p-toc-box__title {
  text-align: center;
  font-weight: 600;
  font-size: var(--font-size-14-16);
  line-height: 1.5;
  color: #1d1d1d;
  margin: 0 0 5px;
  padding: 0;
}

.p-toc-box .p-toc-box__list {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: var(--font-size-14-16);
}

.p-toc-box .p-toc-box__list li {
  margin-bottom: 10px;
  font-size: var(--font-size-14-16);
  font-weight: 400;
  line-height: 1.5;
}

.p-toc-box .p-toc-box__list li a {
  color: #5ea8dd;
  text-decoration: underline;
  font-size: var(--font-size-14-16);
  padding-left: 0;
  padding-top: 2px;
  padding-bottom: 2px;
}

.p-toc-box .p-toc-box__list li a::before {
  content: "› ";
  color: #1d1d1d;
  text-decoration: none;
  display: inline-block;
  padding-right: 1%;
  font-weight: bold;
  font-size: var(--font-size-14-16);
}

/* 著者BOX */
.p-article-content .p-author-box {
  background-color: #fcfcfc;
  border: 1px solid #a4a4a4;
  padding: var(--space-3);
  text-align: left;
  max-width: 100%;
  margin: 0 0 var(--space-5);
}

.p-article-content .p-author-box .p-author-box__name {
  font-size: var(--font-size-14-16);
  font-weight: 700;
  line-height: 1.7;
  color: #1d1d1d;
  margin: 0 0 16px;
  padding: 0;
}

.p-article-content .p-author-box .p-author-box__desc {
  font-size: var(--font-size-14-16);
  font-weight: 400;
  line-height: 1.7;
  color: #1d1d1d;
  text-align: left;
  margin: 0 0 12px;
  padding: 0;
}

.p-article-content .p-author-box .p-author-box__url {
  display: block;
  font-size: var(--font-size-16);
  font-weight: 400;
  color: #5ea8dd;
  text-decoration: underline;
  text-align: right;
}

/* ============================================
   PC（768px〜） 個別指定スタイル
============================================ */
@media screen and (min-width: 768px) {
  .column .p-article-header {
    width: 800px;
    margin: 35px auto 40px;
  }

  .column .p-article-header__meta {
    font-size: var(--font-size-16);
  }

  .column .p-article-header__category {
    padding-left: 45px;
    font-feature-settings: normal;
  }

  .column .p-article-header__category:before {
    width: 34px;
    height: 34px;
    background-size: 50% auto;
  }

  .column .p-article--maternity .p-article-header__category:before,
  .column .p-article--mama .p-article-header__category:before {
    background-image: url(/blog/common_assets/img/top/column_icon_mama.png);
  }

  .column .p-article--movie .p-article-header__category:before {
    background-image: url(/blog/common_assets/img/top/column_icon_movie.png);
  }

  .column .p-article--baby .p-article-header__category:before {
    background-image: url(/blog/common_assets/img/top/column_icon_baby.png);
  }

  .column .p-article--kids .p-article-header__category:before {
    background-image: url(/blog/common_assets/img/top/column_icon_kids.png);
  }

  .column .p-article--offstage .p-article-header__category:before {
    background-image: url(/blog/common_assets/img/top/column_icon_offstage.png);
  }

  .column .p-article--beauty .p-article-header__category:before {
    background-image: url(/blog/common_assets/img/top/column_icon_beauty.png);
  }

  .column .p-article-header__title {
    line-height: 1.42;
    margin: var(--space-2) 0 10px;
  }

  .column .p-article-header__tags {
    justify-content: flex-end;
  }

  .column .p-article-header__tag-item > a:before {
    margin-right: 5px;
  }

  .column .p-article-body {
    width: 840px;
  }

  .p-summary__box {
    padding: var(--space-2) var(--space-2) var(--space-3);
  }

  .column .p-article-body .p-article-content {
    padding: 0 var(--space-2) 0;
  }

  .p-supervisor-box {
    padding: 20px 24px;
  }

  .p-supervisor-box--intro {
    margin: 0 var(--space-2) var(--space-5);
  }

  .p-supervisor-box--detail {
    margin: 0 0 var(--space-5);
  }

  /* ポイントボックス（PC：padding・line-height は従来値） */
  .p-article-content .p-point-box {
    padding: var(--space-2) 24px;
  }

  .p-article-content .p-point-box > pre {
    margin: 5px 0 0;
    line-height: 1;
  }

  .p-article-content .p-point-box > .p-point-box__title {
    align-self: center;
    margin-top: 0;
    line-height: 2;
  }

  .column .p-article-lead,
  .p-summary__box,
  .p-article-content > p,
  .column
    .p-article-body
    ul:not(.p-share ul):not(.p-toc-box__list):not(.p-product-card__list):not(
      .c-summary__list
    ):not(.p-list-block__list):not(.list-circle),
  .p-article-content
    ul:not(.p-share ul):not(.p-toc-box__list):not(.p-product-card__list):not(
      .c-summary__list
    ):not(.p-list-block__list):not(.list-circle),
  .p-article-content ol:not(.p-share ol):not(.p-toc-box__list),
  .column .p-article-body ul.list-circle,
  .c-summary__list,
  .p-article-content .p-list-block {
    font-size: var(--font-size-16);
  }

  .p-article-content > p {
    padding-bottom: var(--space-3);
  }

  .p-article-content .p-note-small {
    padding-bottom: var(--space-3);
  }

  .p-article-content h2,
  .p-article-content h3,
  .p-article-content h4,
  .p-article-content h5,
  .p-article-content h6 {
    margin-bottom: 18px;
    line-height: inherit;
  }

  .column
    .p-article-body
    .p-article-content
    .mt-be-column:not(.p-testimonial__profile):not(.p-testimonial__bubble):not(
      :is(
          .p-product-card-1,
          .p-product-card-2,
          .p-product-card-3,
          .p-product-card-4
        )
        .mt-be-column
    ) {
    padding: 15px;
  }

  .p-article-content .mt-be-columns.p-testimonial {
    flex-direction: row;
    align-items: flex-start;
    gap: 16px;
    max-width: none;
    padding: var(--space-2);
  }

  .p-article-content .mt-be-column.p-testimonial__profile {
    flex: 0 0 160px;
    align-self: auto;
    max-width: 160px;
    padding: 0;
  }

  .p-article-content .mt-be-column.p-testimonial__bubble {
    flex: 1 1 0;
    width: auto;
    max-width: none;
    min-height: 160px;
    align-self: auto;
    margin-top: 0;
    overflow-wrap: normal;
    word-break: normal;
  }

  .p-article-content .mt-be-column.p-testimonial__bubble::before {
    top: 80px;
    left: -10px;
    clip-path: polygon(0 50%, 100% 0, 100% 100%);
    margin-top: -7.5px;
    margin-left: 0;
  }

  .p-article-content .mt-be-column.p-testimonial__bubble::after {
    top: 80px;
    left: -14px;
    clip-path: polygon(0 50%, 100% 0, 100% 100%);
    margin-top: -8.5px;
    margin-left: 0;
  }

  .column .p-article-body .p-article-content .p-product-card-4 {
    background-color: #eef8fc;
    overflow-x: visible;
    -webkit-mask-image: none;
    mask-image: none;
    padding-right: 0;
  }

  .column
    .p-article-body
    .p-article-content
    .p-product-card-4
    .mt-be-columns:is(.p-product-card__row, .p-product-card__row--head) {
    min-width: 0;
  }

  .column
    .p-article-body
    .p-article-content
    .p-product-card-4
    .mt-be-columns:is(.p-product-card__row, .p-product-card__row--head)
    .mt-be-column {
    padding: var(--space-2);
  }

  .p-article-content
    :is(.p-product-card-1, .p-product-card-2, .p-product-card-3) {
    padding: 16px;
  }

  .p-article-content .p-product-card-1 .p-product-card__img,
  .p-article-content .p-product-card-3 .p-product-card__img {
    width: auto;
    flex: 1;
  }

  .p-related-products .mt-be-column {
    flex: 1 1 0;
    max-width: 300px;
  }

  .p-article-content .p-author-box {
    padding: var(--space-2) 24px;
  }

  /* 目次BOX（PC余白：改修前の現行値を維持） */
  .p-toc-box {
    margin: 0 0 var(--space-5);
    padding: 24px 28px;
  }

  .p-toc-box .p-toc-box__title {
    margin: 0 0 16px;
  }

  .p-toc-box .p-toc-box__list {
    padding: 0 0 0 var(--space-2);
  }

  .p-toc-box .p-toc-box__list li a {
    padding-top: 0;
    padding-bottom: 0;
  }

  .p-article-content table {
    display: table;
    width: 100% !important;
    min-width: auto;
    height: auto !important;
    table-layout: fixed;
    overflow: hidden;
    padding-right: 0;
    -webkit-mask-image: none;
    mask-image: none;
  }

  .p-article-content table:has(tbody tr td:nth-child(3)) {
    padding-right: 0;
    -webkit-mask-image: none;
    mask-image: none;
  }

  .p-article-content table tbody {
    display: table-row-group;
    width: auto;
    min-width: 0;
    height: auto !important;
  }

  .p-article-content table tbody tr,
  .p-article-content table tbody tr td {
    height: auto !important;
  }

  .p-article-content table tbody > tr:first-child td {
    padding: 12px 16px !important;
  }

  .p-article-content table tbody tr td {
    min-width: 0;
    max-width: none;
    padding: 12px 16px !important;
  }

  .p-article-content .p-faq__box .mt-be-column,
  .p-article-content .p-faq .mt-be-column {
    padding: 15px;
  }
}
