body{
  min-width: auto !important;
}
:root {
  --main-blue-bg: 0, 132, 185;
  --main-blue: #0084B9;
  --border:#DBDBDB;
}

.smartKey{
  padding-bottom: 70px;
}
@media screen and (max-width: 1024px) {
  .smartKey{
    padding-bottom: 35px;
  }
}
.smartKey__section{
  margin-bottom: 70px;
}
@media screen and (max-width: 1024px) {
  .smartKey__section{
    margin-bottom: 35px;
  }
}

/* アコーディオン */
.smartKey__h3{
  font-weight: 700 !important;
  font-size: 1.375rem;
  line-height: 1.4;
  margin-bottom: 15px;
}
@media screen and (max-width: 1024px) {
  .smartKey__section__block__box__ul__li a{
    font-size: 1.125rem;
  }
}
.smartKey__h3::before{
  content: "●";
  color: var(--main-blue);
  font-size: 0.875rem;
  padding-right: 5px;
  top: -2px;
  position: relative;
}

.smartKey__section__table__h4{
  border-top: 2px solid var(--main-blue);
  padding: 12px 20px;
  font-size: 1.125rem;
  font-weight: 500 !important;
  color: var(--main-blue);
  background: rgba(var(--main-blue-bg), 0.05);
  position: relative;
  cursor: pointer;
}
@media screen and (max-width: 1024px) {
  .smartKey__section__table__h4{
    font-size: 1rem;
  }
}
.smartKey__section__table__h4.active{
  border-bottom: 2px solid var(--main-blue);
}
.smartKey__section__table__h4:last-of-type{
  border-bottom: 2px solid var(--main-blue);
}
.smartKey__section__table__primary,
.smartKey__section__table__secondary{
  padding-left: 50px;
}
@media screen and (max-width: 1024px) {
  .smartKey__section__table__primary,
  .smartKey__section__table__secondary{
    padding-left: 20px;
  }
}
.smartKey__section__table__primary{
  display: none;
}


.smartKey__section__table__primary__li a{
  border-bottom: 1px solid var(--border);
  display: block;
  padding: 18px;
  font-size: 1.125rem;
  color: black;
}
@media screen and (max-width: 1024px) {
  .smartKey__section__table__primary__li a{
    font-size: 1rem;
    padding: 10px;
  }
}
.smartKey__section__table__primary:last-of-type 
.smartKey__section__table__primary__li:last-of-type > a {
   border-bottom: 1px solid var(--border);
}

/* 各種アイコン */
.smartKey__section__table a.-catalog{
  background: url(../image/icon_catalog_001.svg)right 20px center no-repeat;
}
.smartKey__section__table a.-movie{
  background: url(../image/icon_movie_001.svg)right 20px center no-repeat;
}
.smartKey__section__table a.-pdf{
  background: url(../image/icon_pdf_001.svg)right 20px center no-repeat;
}
.smartKey__section__table a.-website{
  background: url(../image/icon_website_001.svg)right 20px center no-repeat;
}
.smartKey__section__table a.-faq{
  background: url(../image/icon_faq_001.svg)right 20px center no-repeat;
}

.smartKey .-questionIcon{
  background: url(../image/icon_search_001.svg)left 20px center no-repeat;
}

/* 初期状態で非表示 */
.smartKey__section__table__secondary {
  display: none;
}
.smartKey__section__table__secondary__li a{
  padding-right: 70px;
}
.smartKey__section__table__secondary__li a span{
  font-size: 0.8125rem;
}
/* アコーディオンアイコンの親 */
.accordion-toggle {
  position: relative;
  padding-right: 20px; /* アイコンのスペース */
  display: inline-block;
}
.accordion-toggle.active{
  color: #0184B9;
}
/* アイコン本体 */
.accordion-icon {
  position: absolute;
  top: 50%;
  right: 20px;
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
}

/* 横棒 */
.accordion-icon::before,
.accordion-icon::after {
  content: "";
  position: absolute;
  background-color: var(--main-blue);
  transition: all 0.3s ease;
}

/* 横線（共通） */
.accordion-icon::before {
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  transform: translateY(-50%);
}

/* 縦線（＋のときのみ） */
.accordion-icon::after {
  top: 0;
  left: 50%;
  width: 2px;
  height: 100%;
  transform: translateX(-50%);
}

/* アクティブ状態では縦棒を消す（−になる） */
.accordion-toggle.active .accordion-icon::after {
  height: 0;
}

/* ▼ h4 用に追加（見た目統一） */
.smartKey__section__table__h4.accordion-toggle {
  padding-right: 50px; /* アイコン表示余白 */
}

.smartKey__section__table__h4 .accordion-icon {
  position: absolute;
  top: 50%;
  right: 20px;
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
}

/* 横棒・縦棒は共通CSSを流用 */
.smartKey__section__table__h4 .accordion-icon::before,
.smartKey__section__table__h4 .accordion-icon::after {
  content: "";
  position: absolute;
  background-color: var(--main-blue);
  transition: all 0.3s ease;
}

/* 横棒 */
.smartKey__section__table__h4 .accordion-icon::before {
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  transform: translateY(-50%);
}

/* 縦棒 */
.smartKey__section__table__h4 .accordion-icon::after {
  top: 0;
  left: 50%;
  width: 2px;
  height: 100%;
  transform: translateX(-50%);
}

/* アクティブ時に縦棒を消す（−表示） */
.smartKey__section__table__h4.active .accordion-icon::after {
  height: 0;
}