@charset "utf-8";
/* =========================================
   カート内で商品名が長くて縦長になるのを防ぐ
========================================= */
.fs-c-listedProductName__name {
  transition: height 0.3s ease-out; /* ★ぬるっと動くアニメーション（0.3秒） */
  overflow: hidden;
  display: block;
  height: auto;
  line-height: 1.5;
}

/* =========================================
   スマホ向け（768px以下）のスタイル
========================================= */
@media screen and (max-width: 768px) {
  .fs-c-listedProductName__name.js-truncate {
    /* JSで具体的な高さを指定するため、ここでは行高に合わせて設定 */
    /* line-height: 1.5 * 2行 = 3em の高さをJSで設定します。 */
  }
  .fs-c-listedProductName__name.js-truncate.is-expanded {
    /* heightはJSで設定 */
  }
	.read-more-toggle-btn {
    display: inline-block;
    margin-top: 4px;
		padding: 12px 4px;
    font-size: 13px;
    color: #555;
    background: transparent;
    border: none;
    cursor: pointer;
    position: relative;
    vertical-align: middle;
    transition: color 0.2s, opacity 0.2s;
  }
  .read-more-toggle-btn:hover {
    color: #000;
    opacity: 0.8;
  }
  .read-more-toggle-btn::after {
    content: '';
    display: inline-block;
    margin-left: 6px;
    width: 7px;
    height: 7px;
    border-bottom: 2px solid #aaa;
    border-right: 2px solid #aaa;
    transform: translateY(-2px) rotate(45deg);
    transition: transform 0.3s ease-out;
    vertical-align: middle;
  }
	.fs-c-listedProductName__name.is-expanded + .read-more-toggle-btn::after {
    transform: translateY(2px) rotate(-135deg);
  }
}

/* =========================================
   PC向け（769px以上）のスタイル
========================================= */
@media screen and (min-width: 769px) {
  .read-more-toggle-btn {
    display: none !important;
  }
}