@charset "UTF-8";
header {
  background: none; }

header #navi {
  background: none; }

/*=============================================
製品詳細個別ページ!
=============================================*/
#product-detail-page {
  width: 100%;
  max-width: 100%;
  margin: 40px auto 100px; }

/*=============================================
メインスライダー
=============================================*/
#main-visual {
  position: relative;
  top: -100px;
  /* headerの高さ分上に移動 */
  margin-bottom: -100px;
  /* 下の要素との間隔調整 */
  z-index: 1;
  /* headerより下に配置 */
  /* 既存の全幅スタイルは維持 */
  overflow: hidden;
  width: 100%;
  left: 50%;
  right: 50%;
  margin-left: auto;
  margin-right: auto;
  margin-left: -50vw;
  margin-right: -50vw;
  max-width: 100vw;
  box-sizing: border-box; }
  #main-visual .main-slider {
    width: 100%;
    height: calc(100vh - 100px);
    min-height: 600px;
    box-sizing: border-box; }
    #main-visual .main-slider .swiper-slide {
      width: 100%;
      height: 100%;
      position: relative;
      background-color: #f5f5f5; }
  #main-visual .main-slider img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    user-select: none; }
  #main-visual .main-visual-next,
  #main-visual .main-visual-prev {
    /* 前後の矢印 */
    width: 50px;
    height: 50px;
    border: 2px solid #fff;
    border-radius: 50%;
    color: #fff;
    background: transparent;
    display: flex; }
    #main-visual .main-visual-next:after,
    #main-visual .main-visual-prev:after {
      font-size: 20px; }
  #main-visual .main-visual-next {
    right: 30px; }
  #main-visual .main-visual-prev {
    left: 30px; }
  #main-visual .main-visual-pagination {
    /*ページネーションデザイン*/
    bottom: 20px; }
    #main-visual .main-visual-pagination .swiper-pagination-bullet {
      width: 12px;
      height: 12px;
      background-color: #BABABA; }
      #main-visual .main-visual-pagination .swiper-pagination-bullet-active {
        background-color: #40403E; }

/* レスポンシブ対応 */
@media screen and (max-width: 768px) {
  #main-visual {
    top: -64px;
    /* モバイル版headerの高さ */
    margin-bottom: -64px; }
    #main-visual .main-slider {
      height: 60vh;
      min-height: 300px; }
    #main-visual .main-visual-next,
    #main-visual .main-visual-prev {
      width: 30px;
      height: 30px; }
      #main-visual .main-visual-next:after,
      #main-visual .main-visual-prev:after {
        font-size: 15px;
        /* モバイル画面では矢印アイコンのサイズを調整 */ }
    #main-visual .main-visual-next {
      right: 10px; }
    #main-visual .main-visual-prev {
      left: 10px; }
    #main-visual .main-visual-pagination {
      /*ページネーションデザイン*/ }
      #main-visual .main-visual-pagination .swiper-pagination-bullet {
        width: 8px;
        height: 8px; } }
/* メインビジュアルテキストオーバーレイ */
.main-visual-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  top: 25%;
  z-index: 10;
  pointer-events: none;
  /* クリックイベントを下の要素に通す */ }

.overlay-text {
  text-align: center;
  color: #38B281; }

.overlay-title {
  font-size: 2.6rem;
  margin-bottom: 0.5rem;
  letter-spacing: 0.1em;
  line-height: 2.6rem; }

.overlay-subtitle {
  font-size: 11rem;
  font-weight: 300;
  margin: 0;
  letter-spacing: 0.1em;
  line-height: 10rem; }

/* レスポンシブ対応 */
@media screen and (max-width: 768px) {
  .overlay-title {
    font-size: 2rem;
    line-height: 2rem; }

  .overlay-subtitle {
    font-size: 8rem;
    line-height: 7rem; } }
/*==========================================
製品タイトル
==========================================*/
.product-title {
  width: 100%;
  margin: 0 auto;
  padding: 10px 0 70px;
  text-align: center; }
  .product-title p {
    font-size: 1.9rem;
    margin-bottom: 0.8rem; }
  .product-title .title-name {
    font-size: 4.3rem;
    font-weight: normal; }
  .product-title .model-num {
    /* 型番 */ }
    .product-title .model-num .price-type {
      margin-left: 10px; }

.product-tag {
  max-width: 960px;
  margin: 0 auto;
  padding: 20px 0 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: baseline;
  gap: 1rem; }
  .product-tag .tag-item {
    padding: 8px;
    background: #888888;
    color: #fff;
    min-width: 150px;
    border-radius: 4px; }

/*==========================================
タブナビゲーション
==========================================*/
.product-tab {
  width: 100%;
  background-color: #F0F0F0; }
  .product-tab .tab-list {
    display: flex;
    max-width: 960px;
    margin: 0 auto; }
  .product-tab li {
    position: relative;
    flex: 1;
    border-right: 1px solid #fff;
    border-left: 1px solid #fff; }
    .product-tab li :hover {
      background: #38B281;
      opacity: 1;
      color: #fff; }
    .product-tab li a {
      display: flex;
      align-items: center;
      justify-content: space-around;
      padding: 1.5rem 0;
      font-size: 1.7rem;
      font-weight: bold; }
    .product-tab li .tab-title {
      display: block; }
    .product-tab li .tab-arrow {
      position: absolute;
      right: 2rem;
      display: block;
      line-height: 1;
      width: 1rem;
      height: 1rem;
      border: 0.1em solid currentColor;
      border-left: 0;
      border-bottom: 0;
      box-sizing: border-box;
      transform: translateY(-25%) rotate(135deg); }

@media screen and (max-width: 768px) {
  .product-tab li a {
    flex-direction: column;
    font-size: 1.4rem; }
  .product-tab li .tab-arrow {
    position: static;
    right: 0;
    margin-left: 0;
    margin-top: 0.5rem; } }
/*==========================================
製品画詳細画像
==========================================*/
#product-detail {
  max-width: 1327px;
  width: 95%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 40px auto 80px; }
  #product-detail .product-note {
    width: 90%;
    max-width: 515px;
    margin: 2em 0; }
    #product-detail .product-note .kome {
      font-size: 1.4rem;
      margin-left: 1em;
      margin-bottom: 0.5em; }
      #product-detail .product-note .kome::before {
        content: "※";
        margin-left: -1.1em; }

#product-images {
  width: 57%;
  max-width: 730px;
  margin: 0;
  position: relative; }
  #product-images .slider {
    width: 100%;
    margin-bottom: 10px;
    overflow: hidden;
    position: relative; }
    #product-images .slider .swiper-slide {
      display: flex;
      justify-content: center;
      align-items: center;
      aspect-ratio: 1 / 1; }
      #product-images .slider .swiper-slide img {
        max-width: 100%;
        height: 100%;
        object-fit: contain;
        user-select: none; }
  #product-images .image-caption {
    /* キャプション */
    text-align: center;
    margin: 10px 0 20px;
    min-height: 24px;
    /*キャプションない場合の余白*/ }
    #product-images .image-caption p {
      font-size: 1.4rem; }
  #product-images .product-next,
  #product-images .product-prev {
    /* 前後ボタン */
    width: 30px;
    height: 30px;
    background-color: #CCCCCC;
    border-radius: 50%; }
    #product-images .product-next:after,
    #product-images .product-prev:after {
      font-size: 18px;
      color: #FFFFFF; }
  #product-images .slider-thumbnail {
    /* サムネイル */
    width: 100%;
    margin-top: 20px;
    box-sizing: border-box;
    overflow: hidden; }
    #product-images .slider-thumbnail .swiper-wrapper {
      display: flex;
      justify-content: flex-start;
      align-items: center;
      flex-wrap: wrap; }
    #product-images .slider-thumbnail .swiper-slide {
      width: auto !important;
      height: 70px;
      cursor: pointer;
      box-sizing: border-box;
      margin-right: 10px;
      margin-bottom: 10px;
      aspect-ratio: 1 / 1; }
      #product-images .slider-thumbnail .swiper-slide img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        user-select: none; }
      #product-images .slider-thumbnail .swiper-slide.swiper-slide-thumb-active {
        border: 1px solid #DDDDDD; }

@media screen and (max-width: 768px) {
  #product-detail .product-note {
    margin: 2em auto; }
    #product-detail .product-note .kome {
      font-size: 1.3rem;
      margin-left: 1em; }
      #product-detail .product-note .kome::before {
        content: "※";
        margin-left: -1em; } }
/*==========================================
キャッチコピー
==========================================*/
.catch-area {
  max-width: 90%;
  margin: 6rem auto; }
  .catch-area .catch-text {
    font-size: 2.2rem;
    text-align: center;
    color: #38B281; }

/*==========================================
製品情報
==========================================*/
.product-info {
  width: 40%;
  max-width: 430px; }
  .product-info .series {
    /* シリーズ */
    margin-bottom: 30px; }
    .product-info .series li {
      width: 240px;
      margin-bottom: 1rem; }
      .product-info .series li img {
        width: 100%;
        object-fit: contain;
        margin-bottom: 10px; }
  .product-info .clr-select {
    /* カラーチップ */
    margin-bottom: 20px; }
    .product-info .clr-select .chips {
      display: flex;
      gap: 12px;
      margin-bottom: 10px; }
    .product-info .clr-select .chip {
      position: relative;
      width: 30px;
      height: 30px;
      border-radius: 50%;
      cursor: pointer; }
      .product-info .clr-select .chip:hover {
        opacity: 0.7; }
    .product-info .clr-select .chip-check::after {
      display: block;
      content: "✓";
      position: absolute;
      top: -4px;
      left: -1px;
      width: 24px;
      height: 24px;
      transform: rotate(-5deg);
      font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
      font-size: 22px; }
    .product-info .clr-select .chip-check.white::after {
      color: #FFF; }
    .product-info .clr-select .color {
      display: block;
      width: 100%;
      height: 100%; }
    .product-info .clr-select .clr-name {
      font-size: 1.4rem;
      color: #000000; }
  .product-info .colorTip .single,
  .product-info .colorTip .double {
    display: inline-block;
    width: 22px;
    height: 22px;
    transform: rotate(-55deg);
    border-radius: 11px;
    border: 1px solid #C1C1C1;
    box-sizing: border-box; }
  .product-info .colorTip .single .one {
    display: block;
    width: 100%;
    height: 100%;
    background: #000;
    border-radius: 100%; }
  .product-info .colorTip .double .one,
  .product-info .colorTip .double .two {
    display: block;
    width: 100%;
    height: 50%;
    background: #000; }
  .product-info .colorTip .double .one {
    border-radius: 11px 11px 0 0; }
  .product-info .colorTip .double .two {
    border-radius: 0 0 11px 11px; }
  .product-info .colorTip .triple,
  .product-info .colorTip .quattro {
    display: inline-block;
    width: 22px;
    height: 22px;
    border-radius: 11px;
    border: 1px solid #C1C1C1;
    box-sizing: border-box;
    overflow: hidden; }
  .product-info .colorTip .triple .one,
  .product-info .colorTip .triple .two,
  .product-info .colorTip .triple .three {
    display: block;
    width: 100%;
    height: 50%;
    background: #000;
    transform: rotate(90deg);
    position: absolute; }
  .product-info .colorTip .triple .one {
    top: 5px;
    right: -5px; }
  .product-info .colorTip .triple .two {
    top: 5px;
    left: -5px; }
  .product-info .colorTip .triple .three {
    bottom: -12px;
    height: 100%;
    transform: rotate(45deg); }
  .product-info .colorTip .quattro .one,
  .product-info .colorTip .quattro .two,
  .product-info .colorTip .quattro .three,
  .product-info .colorTip .quattro .four {
    display: block;
    width: 100%;
    height: 50%;
    background: #000;
    transform: rotate(90deg);
    position: absolute; }
  .product-info .colorTip .quattro .one {
    top: 5px;
    right: -5px; }
  .product-info .colorTip .quattro .two {
    top: 5px;
    left: -5px; }
  .product-info .colorTip .quattro .three {
    top: 15px;
    right: -5px; }
  .product-info .colorTip .quattro .four {
    top: 15px;
    left: -5px; }
  .product-info .product-type {
    /* 生産タイプ */
    display: flex;
    align-items: center;
    margin-bottom: 15px; }
    .product-info .product-type .type-name {
      font-size: 1.4rem;
      border-right: 1px solid #000;
      padding: 0 1rem; }
    .product-info .product-type .type-name:first-child {
      border-left: 1px solid #000; }
  .product-info .size-select {
    /* サイズ選択 */
    position: relative;
    display: block;
    width: 80%;
    height: 46px;
    padding: 0;
    margin-bottom: 15px;
    z-index: 10;
    font-size: 1.5rem; }
    .product-info .size-select * {
      position: relative;
      margin: 0;
      padding: 0;
      box-sizing: border-box;
      border-color: inherit; }
    .product-info .size-select ul {
      list-style: none;
      padding: 0; }
    .product-info .size-select input {
      display: none;
      color: inherit;
      font: inherit;
      background: transparent;
      outline: none;
      border: none;
      appearance: none; }
    .product-info .size-select .expand {
      position: absolute;
      top: 0;
      right: 0;
      height: auto;
      min-height: 46px;
      width: 0; }
      .product-info .size-select .expand::after {
        position: absolute;
        top: 1.2em;
        right: 0.5em;
        content: '';
        border-top: 6px solid rgba(0, 0, 0, 0.3);
        border-right: 6px solid transparent;
        border-left: 6px solid transparent;
        transform: translate(-50%, -50%);
        z-index: 2;
        opacity: 0.6;
        pointer-events: none; }
    .product-info .size-select .expand-label {
      display: block;
      width: 100%;
      height: 46px;
      position: absolute;
      top: 0;
      left: 0;
      cursor: pointer; }
    .product-info .size-select .close {
      display: none; }
    .product-info .size-select .close-label {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      display: none; }
    .product-info .size-select .items {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      border: 1px solid #898989;
      padding-top: 46px; }
    .product-info .size-select .label {
      display: block;
      padding: 0 20px;
      height: 0;
      line-height: 46px;
      overflow: hidden;
      color: #3e3e3e;
      background-color: #ffffff;
      cursor: pointer;
      transition: height 280ms cubic-bezier(0.25, 0.46, 0.45, 0.94), padding 250ms cubic-bezier(0.25, 0.46, 0.45, 0.94); }
    .product-info .size-select .placeholder {
      position: absolute;
      top: 0;
      left: 0;
      height: 46px;
      vertical-align: middle;
      opacity: 0.6;
      background-color: transparent; }
    .product-info .size-select::before {
      position: absolute;
      top: 50%;
      right: 0.9em;
      content: '';
      border-left: 6px solid transparent;
      border-right: 6px solid transparent;
      border-top: 9px solid #000;
      transform: translateY(-50%);
      z-index: 10;
      pointer-events: none; }
    .product-info .size-select::after {
      position: absolute;
      top: 1px;
      right: 1px;
      width: 30px;
      height: calc(100% - 2px);
      content: '';
      background: #ffffff;
      z-index: 9;
      pointer-events: none; }
    .product-info .size-select .stock-none {
      white-space: nowrap;
      font-size: 1.2rem;
      color: #999; }
    .product-info .size-select .expand:checked + .close-label {
      display: block; }
    .product-info .size-select .items .expand:checked ~ .options li .label {
      height: auto;
      line-height: 29px;
      padding: 7px 20px;
      white-space: normal;
      word-wrap: break-word;
      overflow-wrap: break-word; }
    .product-info .size-select .items .expand:checked ~ .options li .label > span {
      right: 0;
      padding: 0 1em;
      font-size: 1.2rem; }
    .product-info .size-select .items .expand:checked ~ .options li .label:hover {
      background-color: #DEDEDE; }
    .product-info .size-select .items .expand:checked ~ .expand-label {
      display: none; }
    .product-info .size-select .input:checked + .label {
      height: 46px;
      margin-top: -46px; }
  .product-info .price-section {
    /* グレーボックス */
    background: #f7f7f7;
    padding: 28px;
    margin: 10px 0 15px;
    box-sizing: border-box;
    border-radius: 1rem; }
    .product-info .price-section .price-box {
      display: flex;
      flex-wrap: wrap; }
      .product-info .price-section .price-box .p-wrap {
        margin-right: 30px; }
      .product-info .price-section .price-box .price-text {
        font-size: 1.6rem;
        margin-bottom: 5px; }
      .product-info .price-section .price-box .amount {
        font-size: 2.8rem;
        margin-bottom: 18px; }
        .product-info .price-section .price-box .amount .tax {
          font-size: 1.6rem; }
      .product-info .price-section .price-box .wishlist-button {
        width: 130px;
        height: 65px;
        font-size: 1.6rem;
        margin-bottom: 10px;
        background-color: #fff;
        color: #38B281;
        border: 2px solid #38B281;
        border-radius: 1rem;
        font-weight: bold; }
    .product-info .price-section .stock {
      /* 在庫状況 */
      margin-bottom: 36px; }
    .product-info .price-section .cart-btn {
      width: 100%;
      max-width: 350px;
      margin-bottom: 20px; }
    .product-info .price-section .nis-btn {
      width: 100%;
      max-width: 350px;
      background-color: #D3D3D3;
      color: #555555;
      pointer-events: none;
      margin-bottom: 20px; }
    .product-info .price-section .rental {
      margin-bottom: 2rem;
      position: relative;
      padding-left: 30px; }
      .product-info .price-section .rental a {
        color: #38B281;
        font-weight: bold; }
        .product-info .price-section .rental a::before {
          content: '';
          position: absolute;
          left: -28px;
          top: 50%;
          transform: translateY(-50%);
          width: 24px;
          height: 24px;
          background-color: #38B281;
          border-radius: 50%; }
        .product-info .price-section .rental a::after {
          content: '';
          position: absolute;
          left: -21px;
          top: 50%;
          transform: translateY(-50%) rotate(45deg);
          width: 8px;
          height: 8px;
          border-top: 2px solid white;
          border-right: 2px solid white; }
    .product-info .price-section .delivery {
      margin-bottom: 30px; }
      .product-info .price-section .delivery p {
        font-size: 1.4rem;
        margin-bottom: 10px; }
    .product-info .price-section .coupon .coupon-title {
      font-size: 1.4rem;
      font-weight: bold; }

/*==========================================
モバイル用固定購入バー
==========================================*/
.mobile-bar {
  display: none;
  /* デフォルトで非表示 */ }

#purchase-modal {
  /* モバイル用固定購入 */
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 500;
  overflow: hidden; }
  #purchase-modal.active {
    display: block; }
  #purchase-modal .modal-content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 70vh;
    /* ビューポートの高さの70% */
    background-color: #f5f5f5;
    transform: translateY(100%);
    transition: transform 0.3s ease;
    margin-bottom: 0; }
  #purchase-modal.active .modal-content {
    transform: translateY(0); }
  #purchase-modal.closing .modal-content {
    transform: translateY(100%); }
  #purchase-modal .close-modal {
    position: absolute;
    top: 15px;
    right: 15px;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    z-index: 10; }
  #purchase-modal .modal-body {
    padding: 20px;
    height: 70vh;
    overflow-y: auto; }

@media screen and (max-width: 768px) {
  #product-detail {
    flex-direction: column; }

  #product-images {
    width: 100%; }
    #product-images .slider-thumbnail {
      /* SPではサムネイル非表示 */
      display: none; }

  .product-title p {
    font-size: 1.4rem; }
  .product-title .title-name {
    font-size: 3rem; }

  .catch {
    font-size: 1.6rem;
    margin-bottom: 30px; }

  .product-info {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center; }

  .info-main-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center; }

  .clr-select {
    /* カラーチップ */
    margin-bottom: 20px; }
    .clr-select .chips {
      justify-content: center; }

  .mobile-bar {
    /* モバイル用固定購入バー */
    display: block;
    position: fixed;
    opacity: 0.96;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 500px;
    z-index: 500; }
    .mobile-bar .mobile-coupon {
      background: #F2F301;
      text-align: center;
      font-size: 1.4rem;
      padding: 0.2rem; }
    .mobile-bar .mobile-wrap {
      display: flex;
      background: #585858;
      color: #fff;
      padding: 10px 15px;
      justify-content: space-between;
      align-items: center;
      height: 50px; }
    .mobile-bar .price-info .store-price {
      font-size: 1.1rem;
      margin: 0; }
    .mobile-bar .price-info .price-value {
      font-size: 2.4rem;
      line-height: 2rem;
      margin: 0; }
      .mobile-bar .price-info .price-value .tax {
        font-size: 1.2rem;
        font-weight: normal; }
    .mobile-bar .purchase-button {
      width: 50%;
      display: block;
      background-color: #fff;
      color: #000;
      padding: 8px;
      text-align: center;
      font-size: 1.5rem;
      font-weight: bold; }

  .sp-none {
    display: none; } }
/*==========================================
製品特長
==========================================*/
#features-section {
  margin-bottom: 100px; }

/* シール */
.seal-box {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: 100%;
  max-width: 800px;
  margin: 2em auto 1em; }
  .seal-box li {
    margin: 5px 20px 5px;
    width: calc(100% / 4 - 40px); }
    .seal-box li img {
      width: 100%;
      height: 55px;
      object-fit: contain;
      aspect-ratio: 3 / 1;
      vertical-align: middle; }

@media screen and (max-width: 768px) {
  .seal-box {
    margin: 1em auto; }
    .seal-box li {
      margin: 5px 7px 5px;
      width: calc(100% / 4 - 14px);
      max-width: 100px; }
      .seal-box li img {
        height: 25px; } }
/*==========================================*/
/*セクションタイトル*/
.mid-title {
  font-size: 2.2rem;
  text-align: center;
  margin-bottom: 15px;
  padding-bottom: 10px;
  color: #38B281;
  border-bottom: 1px solid #38B281; }

/*==========================================
仕様情報
==========================================*/
#spec-section {
  width: 100%;
  margin-bottom: 90px; }

.spec-date {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  font-size: 1.6rem; }
  .spec-date .date {
    margin: 0 auto;
    padding: 40px 76px 38px;
    box-sizing: border-box;
    border-bottom: 1px solid #DFDFDF;
    width: 100%;
    overflow: hidden;
    line-height: 1.8; }
    .spec-date .date .title {
      display: block;
      margin: 1em 0;
      width: 100%;
      position: relative;
      padding-left: 15px; }
    .spec-date .date .title:before {
      content: "";
      position: absolute;
      top: 0.5rem;
      left: 0;
      width: 12px;
      height: 12px;
      background-color: #000;
      border-radius: 50%; }
  .spec-date dt, .spec-date dd {
    margin-bottom: 0.5rem;
    float: left;
    /*横並び*/
    box-sizing: border-box; }
  .spec-date dt {
    width: 40%;
    margin-right: 10px;
    min-width: 220px; }
  .spec-date dd {
    width: calc(60% - 10px);
    margin-left: 0;
    white-space: normal;
    word-wrap: break-word;
    overflow-wrap: break-word; }
  .spec-date p {
    margin-bottom: 1rem; }

/* テーブルセル */
.tablecell {
  width: 90%;
  margin: 0 auto 40px;
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #DFDFDF; }
  .tablecell div {
    flex: 1;
    text-align: center;
    padding: 15px;
    border-right: 1px solid #DFDFDF; }
    .tablecell div:last-child {
      border-right: none; }
  .tablecell .title {
    font-weight: bold;
    margin-bottom: 10px; }

@media screen and (max-width: 768px) {
  .spec-date {
    margin: 0 auto;
    font-size: 1.6rem;
    letter-spacing: -0.22px;
    line-height: 1.7; }
    .spec-date .date {
      width: 90%;
      padding: 10px; }
    .spec-date dt {
      min-width: 175px; }
    .spec-date dd {
      max-width: calc(100% - 185px);
      white-space: normal;
      word-wrap: break-word;
      overflow-wrap: break-word; }

  .tablecell {
    display: block;
    border-bottom: none; }
    .tablecell div {
      border-bottom: 1px solid #DFDFDF;
      border-right: none; } }
/*==========================================
サポート
==========================================*/
.support-date {
  max-width: 1090px;
  width: 100%;
  margin: 50px auto; }

/* ダウンロード */
.manual {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  margin: 0 auto 84px;
  box-sizing: border-box;
  border-bottom: 1px solid #E2E2E2;
  width: 100%;
  max-width: 1090px;
  padding: 0 18px 60px;
  font-size: 1.6rem; }
  .manual .manual-left {
    width: 57%; }
    .manual .manual-left .ac-body {
      max-height: auto; }
  .manual .manual-right {
    width: 40%;
    padding: 10px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px; }
  .manual ._wrapper-update {
    width: 100%;
    max-width: 390px;
    text-align: center; }
  .manual .manual-title {
    font-size: 1.8rem;
    margin-bottom: 27px; }
  .manual .notice-container {
    margin-bottom: 20px; }
  .manual .notice {
    cursor: pointer;
    color: #333;
    display: flex;
    align-items: center;
    font-size: 1.6rem; }
  .manual .arrow-down {
    width: 1rem;
    height: 1rem;
    transition: all 0.35s;
    text-align: center;
    content: '';
    border: 2px solid;
    border-color: transparent transparent #565656 #565656;
    transform: rotate(-45deg);
    margin: 0 10px; }
  .manual .ac_title {
    cursor: pointer;
    position: relative; }
  .manual .ac_title.open .arrow-down {
    transform: rotate(135deg); }
  .manual .ac_body {
    margin-top: 10px; }
  .manual .notice-content {
    font-size: 1.5rem; }
  .manual .notice-content li {
    margin-bottom: 8px; }
  .manual .btn-green {
    min-width: 150px;
    max-width: 480px; }

/* 部品注文 */
.parts-section {
  margin: 0 auto 40px;
  padding: 0 18px;
  max-width: 1500px; }
  .parts-section .parts-title {
    font-size: 1.8rem; }
  .parts-section table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed; }
    .parts-section table tbody {
      border-bottom: 1px solid #e0e0e0; }
      .parts-section table tbody:last-child {
        border-bottom: none; }
      .parts-section table tbody td {
        padding: 25px 10px;
        vertical-align: middle;
        font-size: 1.4rem; }
      .parts-section table tbody .p-price {
        text-align: right; }
        .parts-section table tbody .p-price .tax {
          font-size: 1.2rem; }
      .parts-section table tbody .p-link a {
        font-size: 1.4rem;
        text-decoration: underline; }
      .parts-section table tbody .p-text {
        /* 説明文 */
        font-size: 1.4rem; }

@media screen and (max-width: 960px) {
  .manual {
    flex-direction: column;
    padding: 0 18px;
    font-size: 1.4rem;
    padding-bottom: 60px;
    margin: 0 auto 84px; }
    .manual .manual-left {
      width: 100%;
      display: flex;
      flex-direction: column;
      align-items: center; }
    .manual .manual-right {
      width: 100%;
      padding: 10px 0; }
    .manual .notice {
      justify-content: center; }
    .manual ._update-date {
      display: block;
      margin: 0.5em 0; }
    .manual .release_note {
      margin: 1em 0; }

  .parts-section .parts-title {
    text-align: center; }
  .parts-section table tbody tr {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin: 2rem 0; }
  .parts-section table tbody td {
    padding: 0.8rem; }
  .parts-section table tbody .p-btn {
    width: 220px; } }
/*==========================================
チェックした商品
==========================================*/
.check-products-title,
.related-products-title {
  width: 90%;
  max-width: 1200px;
  margin: 50px auto 60px;
  font-size: 2.1rem; }

.mini-products-title {
  font-size: 1.4rem;
  color: #38B281;
  margin-left: 1rem;
  white-space: nowrap; }

.checked-products-section,
.related-products-section {
  border-top: 1px solid #E1E1E1; }

#check-item,
#related-item {
  position: relative;
  max-width: 1500px;
  width: 95%;
  margin: 60px auto;
  padding: 0 50px;
  /* 前後ボタン */ }
  #check-item .check-next,
  #check-item .check-prev,
  #check-item .related-next,
  #check-item .related-prev,
  #related-item .check-next,
  #related-item .check-prev,
  #related-item .related-next,
  #related-item .related-prev {
    width: 50px;
    height: 50px;
    border: 2px solid #B5B5B5;
    border-radius: 50%;
    color: #B5B5B5;
    background: transparent;
    display: flex; }
    #check-item .check-next:after,
    #check-item .check-prev:after,
    #check-item .related-next:after,
    #check-item .related-prev:after,
    #related-item .check-next:after,
    #related-item .check-prev:after,
    #related-item .related-next:after,
    #related-item .related-prev:after {
      font-size: 20px; }
  #check-item .check-slider-container,
  #check-item .related-container,
  #related-item .check-slider-container,
  #related-item .related-container {
    width: 100%;
    overflow: hidden; }
  #check-item .check-slider,
  #check-item .related-slider,
  #related-item .check-slider,
  #related-item .related-slider {
    width: 100%; }
    #check-item .check-slider .swiper-wrapper,
    #check-item .related-slider .swiper-wrapper,
    #related-item .check-slider .swiper-wrapper,
    #related-item .related-slider .swiper-wrapper {
      display: flex;
      align-items: stretch; }
    #check-item .check-slider .swiper-slide,
    #check-item .related-slider .swiper-slide,
    #related-item .check-slider .swiper-slide,
    #related-item .related-slider .swiper-slide {
      height: auto;
      display: flex;
      justify-content: center; }
    #check-item .check-slider .product-card,
    #check-item .related-slider .product-card,
    #related-item .check-slider .product-card,
    #related-item .related-slider .product-card {
      width: 100%;
      max-width: 320px;
      padding: 10px;
      display: flex;
      flex-direction: column; }
      #check-item .check-slider .product-card .product-image,
      #check-item .related-slider .product-card .product-image,
      #related-item .check-slider .product-card .product-image,
      #related-item .related-slider .product-card .product-image {
        width: 100%;
        height: 200px;
        display: flex;
        justify-content: center;
        align-items: center;
        margin-bottom: 15px; }
        #check-item .check-slider .product-card .product-image img,
        #check-item .related-slider .product-card .product-image img,
        #related-item .check-slider .product-card .product-image img,
        #related-item .related-slider .product-card .product-image img {
          max-width: 100%;
          max-height: 100%;
          object-fit: contain;
          user-select: none; }
      #check-item .check-slider .product-card .check-info,
      #check-item .related-slider .product-card .check-info,
      #related-item .check-slider .product-card .check-info,
      #related-item .related-slider .product-card .check-info {
        text-align: center; }
        #check-item .check-slider .product-card .check-info .product-name,
        #check-item .related-slider .product-card .check-info .product-name,
        #related-item .check-slider .product-card .check-info .product-name,
        #related-item .related-slider .product-card .check-info .product-name {
          font-size: 1.2rem;
          margin-bottom: 2rem; }
        #check-item .check-slider .product-card .check-info .product-model,
        #check-item .related-slider .product-card .check-info .product-model,
        #related-item .check-slider .product-card .check-info .product-model,
        #related-item .related-slider .product-card .check-info .product-model {
          font-size: 1.4rem;
          margin-bottom: 10px; }
        #check-item .check-slider .product-card .check-info .product-price,
        #check-item .related-slider .product-card .check-info .product-price,
        #related-item .check-slider .product-card .check-info .product-price,
        #related-item .related-slider .product-card .check-info .product-price {
          font-size: 2rem; }
          #check-item .check-slider .product-card .check-info .product-price .tax,
          #check-item .related-slider .product-card .check-info .product-price .tax,
          #related-item .check-slider .product-card .check-info .product-price .tax,
          #related-item .related-slider .product-card .check-info .product-price .tax {
            font-size: 1.2rem;
            font-weight: normal; }

@media screen and (max-width: 768px) {
  .check-products-title
  .related-products-title {
    text-align: center;
    padding-left: 0; }

  #check-item,
  #related-item {
    padding: 0 30px; }
    #check-item .check-next,
    #check-item .check-prev,
    #check-item .related-next,
    #check-item .related-prev,
    #related-item .check-next,
    #related-item .check-prev,
    #related-item .related-next,
    #related-item .related-prev {
      width: 30px;
      height: 30px; }
      #check-item .check-next:after,
      #check-item .check-prev:after,
      #check-item .related-next:after,
      #check-item .related-prev:after,
      #related-item .check-next:after,
      #related-item .check-prev:after,
      #related-item .related-next:after,
      #related-item .related-prev:after {
        font-size: 15px; }
    #check-item .check-next,
    #check-item .related-next,
    #related-item .check-next,
    #related-item .related-next {
      right: 20px; }
    #check-item .check-prev,
    #check-item .related-prev,
    #related-item .check-prev,
    #related-item .related-prev {
      left: 20px; }

  .check-slider .swiper-slide {
    width: 100%; } }
