/* ===== Accordion: Q&A ===== */

.qa > summary {
  display: block;
  cursor: pointer;
  outline: none;
}
/* ブラウザ既定の開閉マーカー（三角）を消す */
.qa > summary::-webkit-details-marker { display: none; }

.sec2{
    padding: 0 5px 0 30px;
}
.toptext{
    border-bottom: solid 1px #dbdbdb;
    font-size: 1.4em;
    line-height: 1.4;
    padding: 0 5px 0 10px;
    width: auto;
    margin: 0 0 0.5em;
    font-style: normal;
    font-weight: normal;
    padding-bottom: 10px;
}
.recommendCategoryName{
    display: inline-block;
    font-size: 0.8em;
    font-weight: normal;
}
.top5{
    width: 98%;
}
.top5 summary, .icon-an{
    color: #333;
    font-size: 1.0em;
    font-weight: normal;
    text-align: justify;
    text-justify: inter-ideograph;
}
.icon-qu{
    background: url(/contents/shop/sevenbeauty/img/freepage/contact/icon-qu.png) left 0px top 0px no-repeat;
    background-size: 30px;
    margin: 0 0;
    padding: 0 5px 20px 40px;
}
.icon-an{
    background: url(/contents/shop/sevenbeauty/img/freepage/contact/icon-an.png) left 0px top 0px no-repeat;
    background-size: 30px;
    margin: 0 0 20px;
    padding: 0 0 20px 40px;
    border-bottom: 1px solid #d2d2d2;
}
/* Q欄 右端の▼アイコン */
.qa > summary {
  position: relative;
  padding-right: 32px;
  cursor: pointer;
}
.qa > summary::-webkit-details-marker {
  display: none;
}
.qa > summary::after {
  content: "▼";
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%) rotate(0deg);
  font-size: 0.9em;
  line-height: 1;
  color: #4e9db1;
  transition: transform .2s ease;
}
/* 開いたときは反転 */
.qa[open] > summary::after {
  transform: translateY(-50%) rotate(180deg);
}
@media (prefers-reduced-motion: reduce) {
  .qa > summary::after {
    transition: none;
  }
}
.top5 .qa a.qa-link,
.top5 .qa a.qa-link:link,
.top5 .qa a.qa-link:visited {
  color: #0099ff;
  text-decoration: underline;
  transition: 0.7s;
}
.top5 .qa a.qa-link:hover,
.top5 .qa a.qa-link:focus,
.top5 .qa a.qa-link:active {
  color: #0099ff;
  text-decoration: underline;
}

/* 旧「続きを読む」UI未使用。 */
.grad-wrap, .grad-trigger, .grad-item { display: contents; }
.grad-item::before { display: none !important; }


/* responsive */
@media screen and (min-width: 960px){
    .toptext{
        margin: 0 0 15px;
    }
    .grad-item{
        padding: 0 40px;
    }
}
/* ===== Smartphone-first overrides ===== */
@media (max-width: 640px){
  .sec2{ padding: 0 14px; }
  .icon-qu,
  .icon-an{
    background-size: 24px;
    padding-left: 36px;
  .top5 summary, .icon-an{
    font-size: 1rem;
    line-height: 1.85;
    letter-spacing: .02em;
    text-align: start;
    text-justify: auto;
  }
  .qa > summary{
    min-height: 48px;
    padding: 12px 40px 12px 36px;
  }
  .qa > summary::after{
    right: 10px;
    font-size: 1.0rem;
  }
  .icon-an{
    padding-top: 6px;
    padding-bottom: 16px;
    margin-bottom: 8px;
    border-bottom: 1px solid #e8e8e8;
  }
  .icon-an a.qa-link{
    display: block;
    padding: 10px 12px;
    border: 1px solid #e6e6e6;
    border-radius: 12px;
    text-decoration: none;
    margin-top: 8px;
    line-height: 1.4;
    word-break: break-word;
  }
  .icon-an a.qa-link + a.qa-link{
    margin-top: 8px;
  }
  .icon-an{
  }
  .icon-an .qa-link{ width: 100%; }
  .icon-an .qa-link:nth-of-type(n){
  }
  @supports (display: grid){
    .icon-an{
    }
    .icon-an .qa-link{
      display: block;
    }
    .icon-an .qa-link:nth-of-type(2),
    .icon-an .qa-link:nth-of-type(3),
    .icon-an .qa-link:nth-of-type(4){
    }
  }
  .icon-an a.qa-link:focus-visible,
  .qa > summary:focus-visible{
    outline: 2px solid #9ccad4;
    outline-offset: 2px;
  }
  .toptext{
    font-size: 1.25rem;
    padding: 0 0 10px 0;
    margin: 0 0 12px;
  }
  .recommendCategoryName{ font-size: .9em; }
  .faq-list .qa:last-of-type .icon-an{
    border-bottom-color: #f2f2f2;
  }
}
}